summaryrefslogtreecommitdiffstats
path: root/games
diff options
context:
space:
mode:
Diffstat (limited to 'games')
-rw-r--r--games/0ad-data/0ad-data.SlackBuild31
-rw-r--r--games/0ad-data/0ad-data.info6
-rw-r--r--games/0ad-data/README5
-rw-r--r--games/0ad/0ad.SlackBuild68
-rw-r--r--games/0ad/0ad.info8
-rw-r--r--games/0ad/D1852.diff213
-rw-r--r--games/0ad/README4
-rw-r--r--games/2048-in-terminal/2048-in-terminal.SlackBuild99
-rw-r--r--games/2048-in-terminal/2048-in-terminal.info10
-rw-r--r--games/2048-in-terminal/README13
-rw-r--r--games/2048-in-terminal/slack-desc19
-rw-r--r--games/3D-Fasteroids/3D-Fasteroids.SlackBuild16
-rw-r--r--games/4digits/4digits.SlackBuild16
-rw-r--r--games/4do-libretro/4do-libretro.SlackBuild82
-rw-r--r--games/4do-libretro/4do-libretro.info10
-rw-r--r--games/4do-libretro/README9
-rw-r--r--games/4do-libretro/slack-desc19
-rw-r--r--games/7kaa/7kaa.SlackBuild22
-rw-r--r--games/7kaa/7kaa.info8
-rw-r--r--games/BeastieWorker-levels/BeastieWorker-levels.SlackBuild16
-rw-r--r--games/BeastieWorker/BeastieWorker.SlackBuild16
-rw-r--r--games/Chatbot-Eliza/Chatbot-Eliza.SlackBuild53
-rw-r--r--games/Chatbot-Eliza/Chatbot-Eliza.info6
-rw-r--r--games/CorsixTH/CorsixTH.SlackBuild26
-rw-r--r--games/CorsixTH/CorsixTH.info8
-rw-r--r--games/CorsixTH/README3
-rw-r--r--games/CorsixTH/slack-desc4
-rw-r--r--games/FlightGear-data/FlightGear-data.SlackBuild20
-rw-r--r--games/FlightGear-data/FlightGear-data.info6
-rw-r--r--games/FlightGear-data/README4
-rw-r--r--games/FlightGear/FlightGear.SlackBuild44
-rw-r--r--games/FlightGear/FlightGear.desktop2
-rw-r--r--games/FlightGear/FlightGear.info6
-rw-r--r--games/FlightGear/FlightGear.pngbin487 -> 561 bytes
-rw-r--r--games/FlightGear/README15
-rw-r--r--games/Gearboy/Gearboy.SlackBuild115
-rw-r--r--games/Gearboy/Gearboy.info10
-rw-r--r--games/Gearboy/README12
-rw-r--r--games/Gearboy/slack-desc19
-rw-r--r--games/Gearsystem/Gearsystem.SlackBuild115
-rw-r--r--games/Gearsystem/Gearsystem.info10
-rw-r--r--games/Gearsystem/README12
-rw-r--r--games/Gearsystem/slack-desc19
-rw-r--r--games/Genesis-Plus-GX/Genesis-Plus-GX.SlackBuild82
-rw-r--r--games/Genesis-Plus-GX/Genesis-Plus-GX.info10
-rw-r--r--games/Genesis-Plus-GX/README35
-rw-r--r--games/Genesis-Plus-GX/slack-desc19
-rw-r--r--games/KAdventure/KAdventure.SlackBuild43
-rw-r--r--games/KAdventure/KAdventure.desktop4
-rw-r--r--games/KAdventure/KAdventure.info2
-rw-r--r--games/KoboDeluxe/02_paths.patch40
-rw-r--r--games/KoboDeluxe/KoboDeluxe.SlackBuild93
-rw-r--r--games/KoboDeluxe/KoboDeluxe.desktop15
-rw-r--r--games/KoboDeluxe/KoboDeluxe.info4
-rw-r--r--games/KoboDeluxe/KoboDeluxe.pngbin5240 -> 0 bytes
-rw-r--r--games/KoboDeluxe/README7
-rw-r--r--games/KoboDeluxe/doinst.sh8
-rw-r--r--games/KoboDeluxe/ignore-appinputfocus.patch17
-rw-r--r--games/KoboDeluxe/manpagefix.diff120
-rw-r--r--games/KoboDeluxe/slack-desc14
-rw-r--r--games/LucasChess/Configuration.py1067
-rw-r--r--games/LucasChess/LucasChess.SlackBuild122
-rw-r--r--games/LucasChess/LucasChess.info10
-rw-r--r--games/LucasChess/LucasChessR.desktop.in10
-rw-r--r--games/LucasChess/LucasR.in4
-rw-r--r--games/LucasChess/README10
-rw-r--r--games/LucasChess/doinst.sh (renamed from games/gens-gs/doinst.sh)0
-rw-r--r--games/LucasChess/slack-desc19
-rw-r--r--games/Mindustry/Mindustry.SlackBuild142
-rw-r--r--games/Mindustry/Mindustry.info10
-rw-r--r--games/Mindustry/README10
-rw-r--r--games/Mindustry/doinst.sh (renamed from games/sumwars/doinst.sh)0
-rw-r--r--games/Mindustry/slack-desc19
-rw-r--r--games/OpenJK/OpenJK.SlackBuild24
-rw-r--r--games/OpenJK/OpenJK.info4
-rw-r--r--games/OpenRA/OpenRA.SlackBuild46
-rw-r--r--games/OpenRA/OpenRA.info16
-rw-r--r--games/OpenRA/fetch-thirdparty-deps.sh.new18
-rw-r--r--games/OpenXcom/OpenXcom.SlackBuild26
-rw-r--r--games/OpenXcom/OpenXcom.info6
-rw-r--r--games/OpenXcom/openxcom.688
-rw-r--r--games/PrismLauncher/PrismLauncher.SlackBuild113
-rw-r--r--games/PrismLauncher/PrismLauncher.info10
-rw-r--r--games/PrismLauncher/README15
-rw-r--r--games/PrismLauncher/doinst.sh9
-rw-r--r--games/PrismLauncher/slack-desc19
-rw-r--r--games/PyLotRO/PyLotRO.SlackBuild18
-rw-r--r--games/Pyfa/Pyfa.SlackBuild16
-rw-r--r--games/Pyfa/Pyfa.info2
-rw-r--r--games/QuickNES-Core/QuickNES-Core.SlackBuild29
-rw-r--r--games/QuickNES-Core/QuickNES-Core.info6
-rw-r--r--games/RMG/README7
-rw-r--r--games/RMG/RMG.SlackBuild128
-rw-r--r--games/RMG/RMG.info10
-rw-r--r--games/RMG/doinst.sh9
-rw-r--r--games/RMG/slack-desc19
-rw-r--r--games/RetroArch/README21
-rw-r--r--games/RetroArch/RetroArch.SlackBuild36
-rw-r--r--games/RetroArch/RetroArch.info6
-rw-r--r--games/RetroArch/gles.patch32
-rw-r--r--games/SLADE/SLADE.SlackBuild95
-rw-r--r--games/SLADE/SLADE.info10
-rw-r--r--games/SameBoy/README20
-rw-r--r--games/SameBoy/SameBoy.SlackBuild125
-rw-r--r--games/SameBoy/SameBoy.info12
-rw-r--r--games/SameBoy/sameboy_libretro-info21
-rw-r--r--games/SameBoy/slack-desc19
-rw-r--r--games/Scorched3D/Scorched3D.SlackBuild66
-rw-r--r--games/Scorched3D/Scorched3D.info4
-rw-r--r--games/Scorched3D/gcc.patch11
-rw-r--r--games/Scorched3D/patches/scorched3d-fix-hang-on-fast-machines.patch53
-rw-r--r--games/Scorched3D/patches/scorched3d-freetype-buildfix.patch36
-rw-r--r--games/Scorched3D/patches/scorched3d-help.patch12
-rw-r--r--games/Scorched3D/patches/scorched3d-returntype.patch11
-rw-r--r--games/Scorched3D/patches/scorched3d-wx3.0.patch170
-rw-r--r--games/Sokoban/Sokoban.SlackBuild16
-rw-r--r--games/Sokoban/Sokoban.info6
-rw-r--r--games/SpaceCadetPinball/README24
-rw-r--r--games/SpaceCadetPinball/SpaceCadetPinball.SlackBuild125
-rw-r--r--games/SpaceCadetPinball/SpaceCadetPinball.info10
-rw-r--r--games/SpaceCadetPinball/doinst.sh9
-rw-r--r--games/SpaceCadetPinball/slack-desc19
-rw-r--r--games/SpaceZero/SpaceZero.SlackBuild39
-rw-r--r--games/SpaceZero/SpaceZero.desktop5
-rw-r--r--games/SpaceZero/SpaceZero.info2
-rw-r--r--games/Tempus-Irae/Tempus-Irae.SlackBuild16
-rw-r--r--games/UrbanTerror/UrbanTerror.SlackBuild69
-rw-r--r--games/VASSAL/VASSAL.SlackBuild21
-rw-r--r--games/VASSAL/VASSAL.info8
-rw-r--r--games/ZEsarUX/Makefile.patch20
-rw-r--r--games/ZEsarUX/README2
-rw-r--r--games/ZEsarUX/ZEsarUX.SlackBuild63
-rw-r--r--games/ZEsarUX/ZEsarUX.info8
-rw-r--r--games/ZEsarUX/ZEsarUX.pngbin0 -> 473 bytes
-rw-r--r--games/ZEsarUX/generate_install_sh.sh.patch11
-rw-r--r--games/ZEsarUX/slack-desc2
-rw-r--r--games/ZEsarUX/zesarux.desktop8
-rw-r--r--games/abe/abe.SlackBuild16
-rw-r--r--games/abuse/README12
-rw-r--r--games/abuse/abuse-0.8-sound_fix.patch12
-rw-r--r--games/abuse/abuse.SlackBuild91
-rw-r--r--games/abuse/abuse.desktop6
-rw-r--r--games/abuse/fix-startup-segfault.diff63
-rw-r--r--games/abuse/icons/128.pngbin0 -> 34946 bytes
-rw-r--r--games/abuse/icons/16.pngbin0 -> 1361 bytes
-rw-r--r--games/abuse/icons/160.pngbin0 -> 53884 bytes
-rw-r--r--games/abuse/icons/22.pngbin0 -> 1660 bytes
-rw-r--r--games/abuse/icons/32.pngbin0 -> 3001 bytes
-rw-r--r--games/abuse/icons/48.pngbin0 -> 6061 bytes
-rw-r--r--games/abuse/icons/64.pngbin0 -> 10041 bytes
-rw-r--r--games/abuse/mkicons.sh20
-rw-r--r--games/abuse/slack-desc6
-rw-r--r--games/ace/README22
-rw-r--r--games/ace/ace.SlackBuild100
-rw-r--r--games/ace/ace.info4
-rw-r--r--games/ace/ace.pngbin0 -> 1761 bytes
-rw-r--r--games/ace/doinst.sh9
-rw-r--r--games/ace/slack-desc14
-rw-r--r--games/adl/adl.SlackBuild32
-rw-r--r--games/adl/adl.info6
-rw-r--r--games/adl/fixman.sh2
-rw-r--r--games/adom/adom.SlackBuild16
-rw-r--r--games/advancemame/README6
-rw-r--r--games/advancemame/advancemame.SlackBuild41
-rw-r--r--games/advancemame/advancemame.info8
-rw-r--r--games/advancemame/joverride.dat.xzbin8640 -> 0 bytes
-rw-r--r--games/advancescan/advancescan.SlackBuild28
-rw-r--r--games/advancescan/advancescan.info2
-rw-r--r--games/ags/ags.SlackBuild116
-rw-r--r--games/ags/ags.info12
-rw-r--r--games/aisleriot/aisleriot.SlackBuild63
-rw-r--r--games/aisleriot/aisleriot.info6
-rw-r--r--games/aisleriot/guile3.diff20
-rw-r--r--games/aklabeth/aklabeth.SlackBuild22
-rw-r--r--games/aklabeth/aklabeth.info6
-rw-r--r--games/alephone/README6
-rw-r--r--games/alephone/alephone.SlackBuild23
-rw-r--r--games/alephone/alephone.info10
-rw-r--r--games/alephone/doinst.sh6
-rw-r--r--games/alienarena/alienarena-7.66-no-qglBlitFramebufferEXT.patch19
-rw-r--r--games/alienarena/alienarena.SlackBuild66
-rw-r--r--games/alienarena/alienarena.info6
-rw-r--r--games/alienarena/checkout_code.sh6
-rw-r--r--games/alienwave/alienwave.SlackBuild16
-rw-r--r--games/an/README4
-rw-r--r--games/an/an.SlackBuild32
-rw-r--r--games/an/an.info6
-rw-r--r--games/an/slack-desc4
-rw-r--r--games/angband/README6
-rw-r--r--games/angband/angband.SlackBuild75
-rw-r--r--games/angband/angband.desktop2
-rw-r--r--games/angband/angband.info10
-rw-r--r--games/antares/antares.SlackBuild26
-rw-r--r--games/antares/antares.info2
-rw-r--r--games/antimicro/README22
-rw-r--r--games/antimicro/antimicro.SlackBuild96
-rw-r--r--games/antimicro/antimicro.info10
-rw-r--r--games/antimicro/doinst.sh7
-rw-r--r--games/antimicro/slack-desc19
-rw-r--r--games/antimicrox/README19
-rw-r--r--games/antimicrox/antimicrox.SlackBuild113
-rw-r--r--games/antimicrox/antimicrox.desktop18
-rw-r--r--games/antimicrox/antimicrox.info10
-rw-r--r--games/antimicrox/doinst.sh13
-rw-r--r--games/antimicrox/slack-desc19
-rw-r--r--games/ardentryst/ardentryst.SlackBuild16
-rw-r--r--games/ardentryst/ardentryst.info6
-rw-r--r--games/armagetronad/armagetronad.SlackBuild59
-rw-r--r--games/armagetronad/armagetronad.info8
-rw-r--r--games/armagetronad/doinst.sh18
-rw-r--r--games/arnold-cpc/arnold-cpc.SlackBuild35
-rw-r--r--games/arnold-cpc/arnold-cpc.desktop2
-rw-r--r--games/arx-libertatis/arx-libertatis-1.1.2-cmake3.5.patch12
-rw-r--r--games/arx-libertatis/arx-libertatis.SlackBuild31
-rw-r--r--games/arx-libertatis/arx-libertatis.info8
-rw-r--r--games/arx-libertatis/doinst.sh6
-rw-r--r--games/asc/asc.SlackBuild18
-rw-r--r--games/asc/asc.info2
-rw-r--r--games/asciijump/asciijump.SlackBuild16
-rw-r--r--games/assaultcube-reloaded/assaultcube-reloaded.SlackBuild29
-rw-r--r--games/assaultcube-reloaded/assaultcube-reloaded.info10
-rw-r--r--games/assaultcube/assaultcube-gcc6.patch301
-rw-r--r--games/assaultcube/assaultcube.SlackBuild26
-rw-r--r--games/assaultcube/assaultcube.info2
-rw-r--r--games/asteroidsinfinity/asteroidsinfinity.SlackBuild22
-rw-r--r--games/asteroidsinfinity/asteroidsinfinity.info4
-rw-r--r--games/astromenace/astromenace.SlackBuild20
-rw-r--r--games/astromenace/astromenace.info10
-rw-r--r--games/atanks/atanks.SlackBuild23
-rw-r--r--games/atanks/atanks.info6
-rw-r--r--games/atari++/README8
-rw-r--r--games/atari++/atari++.SlackBuild38
-rw-r--r--games/atari++/atari++.desktop2
-rw-r--r--games/atari++/atari++.info8
-rw-r--r--games/atari++/no_confirm_quit.diff18
-rw-r--r--games/atari800/atari800.SlackBuild46
-rw-r--r--games/atari800/atari800.info8
-rw-r--r--games/atari800/cart.6124
-rw-r--r--games/atari800/cart.rst92
-rw-r--r--games/atari800/doinst.sh6
-rw-r--r--games/atari800_roms/atari800_roms.SlackBuild15
-rw-r--r--games/atari800_roms/atari800_roms.info6
-rw-r--r--games/barrage/barrage.SlackBuild22
-rw-r--r--games/bastet/bastet.SlackBuild27
-rw-r--r--games/bastet/bastet.info4
-rw-r--r--games/beetle-lynx-libretro/README10
-rw-r--r--games/beetle-lynx-libretro/beetle-lynx-libretro.SlackBuild82
-rw-r--r--games/beetle-lynx-libretro/beetle-lynx-libretro.info10
-rw-r--r--games/beetle-lynx-libretro/slack-desc19
-rw-r--r--games/beetle-ngp-libretro/README5
-rw-r--r--games/beetle-ngp-libretro/beetle-ngp-libretro.SlackBuild82
-rw-r--r--games/beetle-ngp-libretro/beetle-ngp-libretro.info10
-rw-r--r--games/beetle-ngp-libretro/slack-desc19
-rw-r--r--games/beetle-pce-fast-libretro/README13
-rw-r--r--games/beetle-pce-fast-libretro/beetle-pce-fast-libretro.SlackBuild82
-rw-r--r--games/beetle-pce-fast-libretro/beetle-pce-fast-libretro.info10
-rw-r--r--games/beetle-pce-fast-libretro/slack-desc19
-rw-r--r--games/beetle-pcfx-libretro/README9
-rw-r--r--games/beetle-pcfx-libretro/beetle-pcfx-libretro.SlackBuild82
-rw-r--r--games/beetle-pcfx-libretro/beetle-pcfx-libretro.info10
-rw-r--r--games/beetle-pcfx-libretro/slack-desc19
-rw-r--r--games/beetle-psx-libretro/beetle-psx-libretro.SlackBuild24
-rw-r--r--games/beetle-psx-libretro/beetle-psx-libretro.info10
-rw-r--r--games/beetle-saturn-libretro/README11
-rw-r--r--games/beetle-saturn-libretro/beetle-saturn-libretro.SlackBuild82
-rw-r--r--games/beetle-saturn-libretro/beetle-saturn-libretro.info10
-rw-r--r--games/beetle-saturn-libretro/slack-desc19
-rw-r--r--games/beetle-supergrafx-libretro/README13
-rw-r--r--games/beetle-supergrafx-libretro/beetle-supergrafx-libretro.SlackBuild82
-rw-r--r--games/beetle-supergrafx-libretro/beetle-supergrafx-libretro.info10
-rw-r--r--games/beetle-supergrafx-libretro/slack-desc19
-rw-r--r--games/beetle-vb-libretro/README5
-rw-r--r--games/beetle-vb-libretro/beetle-vb-libretro.SlackBuild82
-rw-r--r--games/beetle-vb-libretro/beetle-vb-libretro.info10
-rw-r--r--games/beetle-vb-libretro/slack-desc19
-rw-r--r--games/beetle-wswan-libretro/README5
-rw-r--r--games/beetle-wswan-libretro/beetle-wswan-libretro.SlackBuild82
-rw-r--r--games/beetle-wswan-libretro/beetle-wswan-libretro.info10
-rw-r--r--games/beetle-wswan-libretro/slack-desc19
-rw-r--r--games/berusky-data/berusky-data.SlackBuild16
-rw-r--r--games/berusky-data/berusky-data.info2
-rw-r--r--games/berusky/berusky.SlackBuild43
-rw-r--r--games/berusky/berusky.desktop4
-rw-r--r--games/berusky/berusky.info6
-rw-r--r--games/berusky2-data/berusky2-data.SlackBuild22
-rw-r--r--games/berusky2-data/berusky2-data.info8
-rw-r--r--games/berusky2/berusky2.SlackBuild32
-rw-r--r--games/berusky2/berusky2.desktop11
-rw-r--r--games/berusky2/berusky2.info8
-rw-r--r--games/bitfighter/bitfighter.SlackBuild16
-rw-r--r--games/bitfighter/bitfighter.info2
-rw-r--r--games/blasphemer/README24
-rw-r--r--games/blasphemer/blasphemer.SlackBuild71
-rw-r--r--games/blasphemer/blasphemer.info10
-rw-r--r--games/blasphemer/slack-desc19
-rw-r--r--games/blastem-libretro/README6
-rw-r--r--games/blastem-libretro/blastem-libretro.SlackBuild82
-rw-r--r--games/blastem-libretro/blastem-libretro.info10
-rw-r--r--games/blastem-libretro/slack-desc19
-rw-r--r--games/blobby2/blobby2.SlackBuild16
-rw-r--r--games/blobby2/blobby2.info4
-rw-r--r--games/blobwars/README13
-rw-r--r--games/blobwars/blobwars.SlackBuild43
-rw-r--r--games/blobwars/blobwars.info2
-rw-r--r--games/blobwars/doinst.sh5
-rw-r--r--games/blobwars/slack-desc18
-rw-r--r--games/bloodcm/README17
-rw-r--r--games/bloodcm/bloodcm.SlackBuild63
-rw-r--r--games/bloodcm/bloodcm.info10
-rw-r--r--games/bloodcm/slack-desc19
-rw-r--r--games/bloodfrontier/bloodfrontier.SlackBuild24
-rw-r--r--games/blueMSX-libretro/README12
-rw-r--r--games/blueMSX-libretro/blueMSX-libretro.SlackBuild82
-rw-r--r--games/blueMSX-libretro/blueMSX-libretro.info12
-rw-r--r--games/blueMSX-libretro/slack-desc19
-rw-r--r--games/bluemoon/bluemoon.SlackBuild22
-rw-r--r--games/bluez-sixaxis/bluez-5.51-obexd_without_systemd-1.patch59
-rw-r--r--games/bluez-sixaxis/bluez-sixaxis.SlackBuild31
-rw-r--r--games/bluez-sixaxis/bluez-sixaxis.info6
-rw-r--r--games/blupimania/README13
-rw-r--r--games/blupimania/blupimania.SlackBuild220
-rw-r--r--games/blupimania/blupimania.info14
-rw-r--r--games/blupimania/doinst.sh9
-rw-r--r--games/blupimania/slack-desc19
-rw-r--r--games/bomberclone/bomberclone.SlackBuild30
-rw-r--r--games/bomberclone/bomberclone.desktop4
-rw-r--r--games/boosteroid/README4
-rw-r--r--games/boosteroid/boosteroid.SlackBuild82
-rw-r--r--games/boosteroid/boosteroid.info10
-rw-r--r--games/boosteroid/doinst.sh (renamed from games/stone_soup/doinst.sh)0
-rw-r--r--games/boosteroid/slack-desc19
-rw-r--r--games/boswars/boswars.SlackBuild22
-rw-r--r--games/boswars/boswars.info6
-rw-r--r--games/braincurses/braincurses.SlackBuild16
-rw-r--r--games/brainparty/brainparty.SlackBuild19
-rw-r--r--games/brainparty/patches/gcc-6.patch47
-rw-r--r--games/brickout/README2
-rw-r--r--games/brickout/brickout.SlackBuild22
-rw-r--r--games/brickout/brickout.info2
-rw-r--r--games/briquolo/briquolo.SlackBuild45
-rw-r--r--games/brutalchess/brutalchess.SlackBuild16
-rw-r--r--games/brutalchess/brutalchess.info4
-rw-r--r--games/bsnes-mercury/README38
-rw-r--r--games/bsnes-mercury/bsnes-mercury.SlackBuild91
-rw-r--r--games/bsnes-mercury/bsnes-mercury.info10
-rw-r--r--games/bsnes-mercury/slack-desc19
-rw-r--r--games/bstone/README11
-rw-r--r--games/bstone/blake_stone_source_code_license.txt53
-rw-r--r--games/bstone/bstone.6311
-rw-r--r--games/bstone/bstone.SlackBuild50
-rw-r--r--games/bstone/bstone.desktop5
-rw-r--r--games/bstone/bstone.info12
-rw-r--r--games/bstone/bstone.rst288
-rw-r--r--games/bstone/datadir.diff19
-rw-r--r--games/bstone/slack-desc4
-rw-r--r--games/burgerspace/README3
-rw-r--r--games/burgerspace/burgerspace.SlackBuild31
-rw-r--r--games/burgerspace/burgerspace.info8
-rw-r--r--games/burgerspace/doinst.sh6
-rw-r--r--games/bzflag/bzflag.SlackBuild31
-rw-r--r--games/bzflag/bzflag.info12
-rw-r--r--games/bzflag/slack-desc2
-rw-r--r--games/cannonball-libretro/README19
-rw-r--r--games/cannonball-libretro/cannonball-libretro.SlackBuild82
-rw-r--r--games/cannonball-libretro/cannonball-libretro.info10
-rw-r--r--games/cannonball-libretro/slack-desc19
-rw-r--r--games/caph/caph.SlackBuild16
-rw-r--r--games/cataclysmdda/README13
-rw-r--r--games/cataclysmdda/cataclysmdda.SlackBuild97
-rw-r--r--games/cataclysmdda/cataclysmdda.info10
-rw-r--r--games/cataclysmdda/doinst.sh11
-rw-r--r--games/cataclysmdda/slack-desc19
-rw-r--r--games/cbonsai/README5
-rw-r--r--games/cbonsai/cbonsai.SlackBuild100
-rw-r--r--games/cbonsai/cbonsai.info10
-rw-r--r--games/cbonsai/slack-desc19
-rw-r--r--games/ceferino/ceferino.SlackBuild24
-rw-r--r--games/ceferino/ceferino.info6
-rw-r--r--games/cgames/cgames.SlackBuild50
-rw-r--r--games/cgames/cgames.info6
-rw-r--r--games/cgmadness/cgmadness.SlackBuild46
-rw-r--r--games/cgmadness/cgmadness.desktop2
-rw-r--r--games/cgoban/cgoban.SlackBuild22
-rw-r--r--games/chessx/chessx.SlackBuild26
-rw-r--r--games/chessx/chessx.info10
-rw-r--r--games/chexquest/README30
-rw-r--r--games/chexquest/chexquest.SlackBuild83
-rw-r--r--games/chexquest/chexquest.desktop7
-rw-r--r--games/chexquest/chexquest.info12
-rw-r--r--games/chexquest/chexquest.pngbin0 -> 1150 bytes
-rw-r--r--games/chexquest/chexquest.sh44
-rw-r--r--games/chexquest/chexquest2.desktop7
-rw-r--r--games/chexquest/chexquest2.pngbin0 -> 1179 bytes
-rw-r--r--games/chexquest/doinst.sh9
-rw-r--r--games/chexquest/slack-desc19
-rw-r--r--games/chexquest3/chexquest3.SlackBuild38
-rw-r--r--games/chexquest3/chexquest3.info2
-rw-r--r--games/chocolate-doom/chocolate-doom.SlackBuild28
-rw-r--r--games/chocolate-doom/chocolate-doom.info6
-rw-r--r--games/chocolate_duke3D/README14
-rw-r--r--games/chocolate_duke3D/chocolate-duke3d4
-rw-r--r--games/chocolate_duke3D/chocolate-duke3d.desktop9
-rw-r--r--games/chocolate_duke3D/chocolate-duke3d.pngbin30571 -> 0 bytes
-rw-r--r--games/chocolate_duke3D/chocolate_duke3D.SlackBuild116
-rw-r--r--games/chocolate_duke3D/chocolate_duke3D.info10
-rw-r--r--games/chocolate_duke3D/slack-desc19
-rw-r--r--games/chroma/chroma.SlackBuild35
-rw-r--r--games/chroma/gcc.patch30
-rw-r--r--games/chromium-bsu/README4
-rw-r--r--games/chromium-bsu/chromium-bsu.SlackBuild16
-rw-r--r--games/circuslinux/README2
-rw-r--r--games/circuslinux/circuslinux.SlackBuild27
-rw-r--r--games/circuslinux/circuslinux.info2
-rw-r--r--games/ckmame/ckmame.SlackBuild27
-rw-r--r--games/clksignal-roms/README7
-rw-r--r--games/clksignal-roms/STATUS.txt24
-rw-r--r--games/clksignal-roms/clksignal-roms.SlackBuild233
-rw-r--r--games/clksignal-roms/clksignal-roms.info68
-rw-r--r--games/clksignal-roms/slack-desc19
-rw-r--r--games/clksignal/9342c60.diff34
-rw-r--r--games/clksignal/README29
-rw-r--r--games/clksignal/clksignal-qt.683
-rw-r--r--games/clksignal/clksignal-qt.desktop7
-rw-r--r--games/clksignal/clksignal-qt.rst72
-rw-r--r--games/clksignal/clksignal.SlackBuild125
-rw-r--r--games/clksignal/clksignal.desktop8
-rw-r--r--games/clksignal/clksignal.info10
-rw-r--r--games/clksignal/doinst.sh9
-rw-r--r--games/clksignal/slack-desc19
-rw-r--r--games/clonekeen/clonekeen.SlackBuild28
-rw-r--r--games/clonekeen/clonekeen.desktop4
-rw-r--r--games/clonekeen/clonekeen.info8
-rw-r--r--games/colem/colem.SlackBuild21
-rw-r--r--games/colem/colem.info10
-rw-r--r--games/commandergenius/commandergenius.616
-rw-r--r--games/commandergenius/commandergenius.SlackBuild59
-rw-r--r--games/commandergenius/commandergenius.info10
-rw-r--r--games/commandergenius/commandergenius.rst11
-rw-r--r--games/connectagram/connectagram.SlackBuild22
-rw-r--r--games/connectagram/connectagram.info2
-rw-r--r--games/conquest/conquest.SlackBuild16
-rw-r--r--games/cosmic_assault/cosmic_assault.SlackBuild51
-rw-r--r--games/cosmic_assault/cosmic_assault.info4
-rw-r--r--games/cosmic_assault/cosmic_assault.pngbin1585 -> 8689 bytes
-rw-r--r--games/cosmic_assault/doinst.sh6
-rw-r--r--games/cosmosmash/cosmosmash.SlackBuild24
-rw-r--r--games/cosmosmash/cosmosmash.info8
-rw-r--r--games/cowsay/cowsay.SlackBuild40
-rw-r--r--games/cowsay/cowsay.SlackBuild.patch91
-rw-r--r--games/cowsay/cowsay.info6
-rw-r--r--games/cpat/cpat.SlackBuild28
-rw-r--r--games/crack-attack/crack-attack.SlackBuild28
-rw-r--r--games/crawl/README4
-rw-r--r--games/crawl/crawl.SlackBuild128
-rw-r--r--games/crawl/crawl.desktop8
-rw-r--r--games/crawl/crawl.info10
-rw-r--r--games/crawl/crawl_icon-32x32.png (renamed from games/stone_soup/stone_soup_icon-32x32.png)bin579 -> 579 bytes
-rw-r--r--games/crawl/doinst.sh (renamed from games/transfusion/doinst.sh)0
-rw-r--r--games/crawl/slack-desc19
-rw-r--r--games/crimson/crimson.SlackBuild22
-rw-r--r--games/crispy-doom/README4
-rw-r--r--games/crispy-doom/crispy-doom.SlackBuild39
-rw-r--r--games/crispy-doom/crispy-doom.info10
-rw-r--r--games/crossfire-client/crossfire-client.SlackBuild22
-rw-r--r--games/crossfire-client/crossfire-client.info8
-rw-r--r--games/crrcsim/crrcsim.SlackBuild19
-rw-r--r--games/crrcsim/fix_bug.patch12
-rw-r--r--games/cryptokwot/README10
-rw-r--r--games/cryptokwot/cryptokwot.SlackBuild54
-rw-r--r--games/cryptokwot/cryptokwot.info10
-rw-r--r--games/cryptokwot/doinst.sh9
-rw-r--r--games/cryptokwot/slack-desc19
-rw-r--r--games/cubosphere/cubosphere.SlackBuild16
-rw-r--r--games/curseofwar/curseofwar.SlackBuild20
-rw-r--r--games/curseofwar/curseofwar.info6
-rw-r--r--games/cutemaze/cutemaze.SlackBuild22
-rw-r--r--games/cutemaze/cutemaze.info2
-rw-r--r--games/cuyo/cuyo.SlackBuild22
-rw-r--r--games/cyphesis/cyphesis.SlackBuild18
-rw-r--r--games/d1x-rebirth/d1x-rebirth.SlackBuild53
-rw-r--r--games/d1x-rebirth/d1x-rebirth.info6
-rw-r--r--games/d2x-rebirth/d2x-rebirth.SlackBuild54
-rw-r--r--games/d2x-rebirth/d2x-rebirth.info6
-rw-r--r--games/d2x-rebirth/libphysfs-3.0.1.patch43
-rw-r--r--games/darkplaces/README11
-rw-r--r--games/darkplaces/darkplaces.SlackBuild74
-rw-r--r--games/darkplaces/darkplaces.desktop4
-rw-r--r--games/darkplaces/gcc11.patch89
-rw-r--r--games/ddnet/README35
-rw-r--r--games/ddnet/ddnet.SlackBuild216
-rw-r--r--games/ddnet/ddnet.info28
-rw-r--r--games/ddnet/doinst.sh9
-rw-r--r--games/ddnet/slack-desc19
-rw-r--r--games/defendguin/README2
-rw-r--r--games/defendguin/defendguin.SlackBuild68
-rw-r--r--games/defendguin/defendguin.desktop2
-rw-r--r--games/defendguin/defendguin.info8
-rw-r--r--games/defendguin/defendguin.pngbin2677 -> 0 bytes
-rw-r--r--games/defendguin/doinst.sh8
-rw-r--r--games/defendguin/icons/128.pngbin0 -> 5754 bytes
-rw-r--r--games/defendguin/icons/16.pngbin0 -> 2096 bytes
-rw-r--r--games/defendguin/icons/22.pngbin0 -> 2517 bytes
-rw-r--r--games/defendguin/icons/32.pngbin0 -> 2657 bytes
-rw-r--r--games/defendguin/icons/48.pngbin0 -> 3651 bytes
-rw-r--r--games/defendguin/icons/64.pngbin0 -> 4630 bytes
-rw-r--r--games/defendguin/install_paths.diff54
-rw-r--r--games/defendguin/man.diff2
-rw-r--r--games/desmume/README7
-rw-r--r--games/desmume/desmume.SlackBuild135
-rw-r--r--games/desmume/desmume.info12
-rw-r--r--games/desmume/doinst.sh6
-rw-r--r--games/desmume/osmesa-header-fix.patch11
-rw-r--r--games/devilutionx/README15
-rw-r--r--games/devilutionx/devilutionx.SlackBuild141
-rw-r--r--games/devilutionx/devilutionx.info22
-rw-r--r--games/devilutionx/doinst.sh9
-rw-r--r--games/devilutionx/slack-desc19
-rw-r--r--games/dfarc/dfarc.SlackBuild46
-rw-r--r--games/dfarc/doinst.sh9
-rw-r--r--games/dgen/dgen.SlackBuild35
-rw-r--r--games/dhewm3/dhewm3.SlackBuild16
-rw-r--r--games/dhewm3/dhewm3.info2
-rw-r--r--games/dice/dice.SlackBuild35
-rw-r--r--games/dice/dice.info2
-rw-r--r--games/digger/digger.SlackBuild26
-rw-r--r--games/digger/digger.desktop2
-rw-r--r--games/digger/digger.info4
-rw-r--r--games/dmagnetic/README11
-rw-r--r--games/dmagnetic/dmagnetic.SlackBuild102
-rw-r--r--games/dmagnetic/dmagnetic.info12
-rw-r--r--games/dmagnetic/slack-desc19
-rw-r--r--games/dolphin-emu/README35
-rw-r--r--games/dolphin-emu/doinst.sh5
-rw-r--r--games/dolphin-emu/dolphin-emu.SlackBuild105
-rw-r--r--games/dolphin-emu/dolphin-emu.info28
-rw-r--r--games/dolphin-emu/slack-desc18
-rw-r--r--games/domination/README14
-rw-r--r--games/domination/doinst.sh6
-rw-r--r--games/domination/domination.SlackBuild51
-rw-r--r--games/domination/domination.desktop2
-rw-r--r--games/domination/domination.info10
-rw-r--r--games/doom_shareware_data/README7
-rw-r--r--games/doom_shareware_data/doom_shareware_data.SlackBuild30
-rw-r--r--games/doom_shareware_data/doom_shareware_data.info6
-rw-r--r--games/doomretro/README16
-rw-r--r--games/doomretro/doomretro.SlackBuild113
-rw-r--r--games/doomretro/doomretro.info12
-rw-r--r--games/doomretro/doomretro.sh51
-rw-r--r--games/doomretro/fix-sdl-mixer-fluidsynth.diff14
-rw-r--r--games/doomsday/README10
-rw-r--r--games/doomsday/doinst.sh6
-rw-r--r--games/doomsday/doomsday.SlackBuild97
-rw-r--r--games/doomsday/doomsday.info12
-rw-r--r--games/doomsday/slack-desc2
-rw-r--r--games/doomseeker/1.3+20200119_b623ab1.diff.gzbin13447 -> 0 bytes
-rw-r--r--games/doomseeker/doinst.sh6
-rw-r--r--games/doomseeker/doomseeker.SlackBuild64
-rw-r--r--games/doomseeker/doomseeker.info12
-rw-r--r--games/dopewars/dopewars.SlackBuild16
-rw-r--r--games/dreamchess-music/dreamchess-music.SlackBuild16
-rw-r--r--games/dreamchess/dreamchess.SlackBuild16
-rw-r--r--games/dreamchess/dreamchess.info2
-rw-r--r--games/ds-models/README36
-rw-r--r--games/ds-models/ds-models.SlackBuild48
-rw-r--r--games/ds-models/ds-models.info2
-rw-r--r--games/ds-models/slack-desc10
-rw-r--r--games/duckstation/README16
-rw-r--r--games/duckstation/doinst.sh3
-rw-r--r--games/duckstation/duckstation.SlackBuild135
-rw-r--r--games/duckstation/duckstation.desktop7
-rw-r--r--games/duckstation/duckstation.info10
-rw-r--r--games/duckstation/slack-desc19
-rw-r--r--games/dunelegacy/README21
-rw-r--r--games/dunelegacy/dunelegacy.SlackBuild27
-rw-r--r--games/dunelegacy/dunelegacy.info8
-rw-r--r--games/dunelegacy/slack-desc4
-rw-r--r--games/dungeon/dungeon.SlackBuild22
-rw-r--r--games/dungeon/dungeon.info2
-rw-r--r--games/dustrac/dustrac.SlackBuild29
-rw-r--r--games/dustrac/dustrac.info12
-rw-r--r--games/dwarffortress/README16
-rw-r--r--games/dwarffortress/doinst.sh3
-rw-r--r--games/dwarffortress/dwarffortress29
-rw-r--r--games/dwarffortress/dwarffortress.SlackBuild96
-rw-r--r--games/dwarffortress/dwarffortress.desktop6
-rw-r--r--games/dwarffortress/dwarffortress.info10
-rw-r--r--games/dwarffortress/dwarffortress.pngbin0 -> 893 bytes
-rw-r--r--games/dwarffortress/slack-desc19
-rw-r--r--games/ecwolf/ecwolf.SlackBuild16
-rw-r--r--games/edgar/edgar.SlackBuild41
-rw-r--r--games/edgar/edgar.info8
-rw-r--r--games/eduke32/README69
-rw-r--r--games/eduke32/README_game_data.txt52
-rw-r--r--games/eduke32/compilefix.diff12
-rw-r--r--games/eduke32/desktop/eduke32.desktop8
-rw-r--r--games/eduke32/desktop/fury.desktop8
-rw-r--r--games/eduke32/desktop/mapster32.desktop8
-rw-r--r--games/eduke32/desktop/voidsw.desktop8
-rw-r--r--games/eduke32/desktop/wangulator.desktop8
-rw-r--r--games/eduke32/doinst.sh6
-rw-r--r--games/eduke32/eduke32.SlackBuild189
-rw-r--r--games/eduke32/eduke32.desktop9
-rw-r--r--games/eduke32/eduke32.info10
-rw-r--r--games/eduke32/eduke32.pngbin3936 -> 0 bytes
-rw-r--r--games/eduke32/eduke32.wrapper63
-rw-r--r--games/eduke32/icons/eduke32/128.pngbin0 -> 15593 bytes
-rw-r--r--games/eduke32/icons/eduke32/16.pngbin0 -> 853 bytes
-rw-r--r--games/eduke32/icons/eduke32/24.pngbin0 -> 1569 bytes
-rw-r--r--games/eduke32/icons/eduke32/256.pngbin0 -> 36574 bytes
-rw-r--r--games/eduke32/icons/eduke32/32.pngbin0 -> 2460 bytes
-rw-r--r--games/eduke32/icons/eduke32/48.pngbin0 -> 3901 bytes
-rw-r--r--games/eduke32/icons/eduke32/64.pngbin0 -> 6266 bytes
-rw-r--r--games/eduke32/icons/fury/16.pngbin0 -> 645 bytes
-rw-r--r--games/eduke32/icons/fury/24.pngbin0 -> 1186 bytes
-rw-r--r--games/eduke32/icons/fury/32.pngbin0 -> 1802 bytes
-rw-r--r--games/eduke32/icons/fury/48.pngbin0 -> 3325 bytes
-rw-r--r--games/eduke32/icons/fury/64.pngbin0 -> 4131 bytes
-rw-r--r--games/eduke32/icons/voidsw/128.pngbin0 -> 9142 bytes
-rw-r--r--games/eduke32/icons/voidsw/16.pngbin0 -> 729 bytes
-rw-r--r--games/eduke32/icons/voidsw/256.pngbin0 -> 20453 bytes
-rw-r--r--games/eduke32/icons/voidsw/32.pngbin0 -> 1698 bytes
-rw-r--r--games/eduke32/icons/voidsw/48.pngbin0 -> 2675 bytes
-rw-r--r--games/eduke32/icons/voidsw/64.pngbin0 -> 3865 bytes
-rw-r--r--games/eduke32/mapster32.desktop9
-rw-r--r--games/eduke32/slack-desc12
-rw-r--r--games/eduke32/system_autoload.diff11
-rw-r--r--games/eduke32/twin_dragon.diff12
-rw-r--r--games/eduke32_hires_pack/README31
-rw-r--r--games/eduke32_hires_pack/eduke32_hires_pack.SlackBuild53
-rw-r--r--games/eduke32_hires_pack/eduke32_hires_pack.info8
-rw-r--r--games/eduke32_shareware_data/README2
-rw-r--r--games/eduke32_shareware_data/eduke32_shareware_data.SlackBuild35
-rw-r--r--games/eduke32_shareware_data/eduke32_shareware_data.info2
-rw-r--r--games/eduke32_shareware_data/slack-desc2
-rw-r--r--games/egoboo/egoboo.SlackBuild16
-rw-r--r--games/egoboo/egoboo.info2
-rw-r--r--games/einstein/einstein.SlackBuild16
-rw-r--r--games/einstein/einstein.info2
-rw-r--r--games/ember/README10
-rw-r--r--games/ember/World.patch11
-rw-r--r--games/ember/configure.patch11
-rw-r--r--games/ember/doinst.sh13
-rw-r--r--games/ember/ember.SlackBuild131
-rw-r--r--games/ember/ember.info12
-rw-r--r--games/ember/slack-desc19
-rw-r--r--games/empire/empire.SlackBuild20
-rw-r--r--games/empire/empire.info6
-rw-r--r--games/empire/slack-desc2
-rw-r--r--games/emulationstation-de/README10
-rw-r--r--games/emulationstation-de/doinst.sh9
-rw-r--r--games/emulationstation-de/emulationstation-de.SlackBuild109
-rw-r--r--games/emulationstation-de/emulationstation-de.info10
-rw-r--r--games/emulationstation-de/slack-desc19
-rw-r--r--games/endgame-singularity/README27
-rw-r--r--games/endgame-singularity/doinst.sh5
-rw-r--r--games/endgame-singularity/endgame-singularity.SlackBuild123
-rw-r--r--games/endgame-singularity/endgame-singularity.info10
-rw-r--r--games/endgame-singularity/singularity.desktop.patch13
-rw-r--r--games/endgame-singularity/slack-desc19
-rw-r--r--games/endless-sky/endless-sky.SlackBuild26
-rw-r--r--games/endless-sky/endless-sky.info8
-rw-r--r--games/enigma-marbles/README16
-rw-r--r--games/enigma-marbles/doinst.sh14
-rw-r--r--games/enigma-marbles/enigma-marbles.SlackBuild136
-rw-r--r--games/enigma-marbles/enigma-marbles.info10
-rw-r--r--games/enigma-marbles/slack-desc19
-rw-r--r--games/enigma/enigma.SlackBuild15
-rw-r--r--games/enigma/enigma.info2
-rw-r--r--games/epsxe/README3
-rw-r--r--games/epsxe/doinst.sh9
-rw-r--r--games/epsxe/epsxe.SlackBuild128
-rw-r--r--games/epsxe/epsxe.desktop9
-rw-r--r--games/epsxe/epsxe.info18
-rw-r--r--games/epsxe/epsxe.sh4
-rw-r--r--games/epsxe/epsxe.svg32
-rw-r--r--games/epsxe/slack-desc19
-rw-r--r--games/etlegacy-data/etlegacy-data.SlackBuild16
-rw-r--r--games/etlegacy/README8
-rw-r--r--games/etlegacy/doinst.sh7
-rw-r--r--games/etlegacy/etlegacy.SlackBuild57
-rw-r--r--games/etlegacy/etlegacy.info10
-rw-r--r--games/etlegacy/files/etl4
-rw-r--r--games/etlegacy/files/etl_bot4
-rw-r--r--games/etlegacy/files/etlded4
-rw-r--r--games/etlegacy/files/etlded_bot4
-rw-r--r--games/etlegacy/files/etlegacy.desktop9
-rw-r--r--games/etlegacy/files/etlegacy.svg100
-rw-r--r--games/eureka/README4
-rw-r--r--games/eureka/eureka.SlackBuild45
-rw-r--r--games/eureka/eureka.info4
-rw-r--r--games/extremetuxracer/extremetuxracer.SlackBuild40
-rw-r--r--games/extremetuxracer/extremetuxracer.info8
-rw-r--r--games/exult/exult.SlackBuild16
-rw-r--r--games/ezquake/README7
-rw-r--r--games/ezquake/doinst.sh4
-rw-r--r--games/ezquake/ezquake.SlackBuild140
-rw-r--r--games/ezquake/ezquake.info12
-rw-r--r--games/ezquake/ezquake.launcher4
-rw-r--r--games/ezquake/protocol.h638
-rw-r--r--games/ezquake/slack-desc19
-rw-r--r--games/f1spirit/03_gcc6.patch12
-rw-r--r--games/f1spirit/f1spirit.SlackBuild25
-rw-r--r--games/fbalpha/README17
-rw-r--r--games/fbalpha/fbalpha.SlackBuild89
-rw-r--r--games/fbalpha/fbalpha.info10
-rw-r--r--games/fbalpha/slack-desc19
-rw-r--r--games/fceux/README2
-rw-r--r--games/fceux/fceux.SlackBuild77
-rw-r--r--games/fceux/fceux.desktop9
-rw-r--r--games/fceux/fceux.info8
-rw-r--r--games/fceux/fceux.pngbin7066 -> 0 bytes
-rw-r--r--games/fceux/scons-python3.patch109
-rw-r--r--games/ffgo/doinst.sh2
-rw-r--r--games/ffgo/ffgo.SlackBuild24
-rw-r--r--games/ffgo/ffgo.info8
-rw-r--r--games/fgo/doinst.sh2
-rw-r--r--games/fgo/fgo.SlackBuild23
-rw-r--r--games/fgo/fgo.info2
-rw-r--r--games/fgrun/fgrun.SlackBuild16
-rw-r--r--games/fifengine/8072f18a9bf4e75c3e1b197b6ccda11e82954460.patch25
-rw-r--r--games/fifengine/d14f232f4cd9a00b05d6872957070e8c020f515d.patch22
-rw-r--r--games/fifengine/fifengine.SlackBuild22
-rw-r--r--games/fifengine/fifengine.info8
-rw-r--r--games/fillets-ng-data/fillets-ng-data.SlackBuild16
-rw-r--r--games/fillets-ng/fillets-ng.SlackBuild22
-rw-r--r--games/firestorm-opensim/firestorm-opensim.SlackBuild16
-rw-r--r--games/firestorm/firestorm.SlackBuild16
-rw-r--r--games/fizmo/fizmo.SlackBuild22
-rw-r--r--games/fizmo/fizmo.info4
-rw-r--r--games/flare-game/flare-game.SlackBuild21
-rw-r--r--games/flare-game/flare-game.info6
-rw-r--r--games/flare/flare.SlackBuild21
-rw-r--r--games/flare/flare.info10
-rw-r--r--games/fmsx-libretro/README17
-rw-r--r--games/fmsx-libretro/fmsx-libretro.SlackBuild82
-rw-r--r--games/fmsx-libretro/fmsx-libretro.info10
-rw-r--r--games/fmsx-libretro/slack-desc19
-rw-r--r--games/foobillardplus/foobillardplus.SlackBuild16
-rw-r--r--games/foobillardplus/foobillardplus.info2
-rw-r--r--games/fortune-ASR/fortune-ASR.SlackBuild16
-rw-r--r--games/fortune-dharma/fortune-dharma.SlackBuild26
-rw-r--r--games/fortune-dune/fortune-dune.SlackBuild33
-rw-r--r--games/fortune-dune/fortune-dune.info2
-rw-r--r--games/fortune-farscape/fortune-farscape.SlackBuild15
-rw-r--r--games/fortune-farscape/fortune-farscape.info2
-rw-r--r--games/fortune-futurama/fortune-futurama.SlackBuild15
-rw-r--r--games/fortune-futurama/fortune-futurama.info2
-rw-r--r--games/fortune-game_of_thrones/fortune-game_of_thrones.SlackBuild25
-rw-r--r--games/fortune-game_of_thrones/fortune-game_of_thrones.info10
-rw-r--r--games/fortune-noobfarm/fortune-noobfarm.SlackBuild15
-rw-r--r--games/fortune-noobfarm/fortune-noobfarm.info2
-rw-r--r--games/fortune-slackware/fortune-slackware.SlackBuild15
-rw-r--r--games/fortune-slackware/fortune-slackware.info4
-rw-r--r--games/fortune-starwars/fortune-starwars.SlackBuild15
-rw-r--r--games/fortune-starwars/fortune-starwars.info2
-rw-r--r--games/fortune_doctor_who/fortune_doctor_who.SlackBuild20
-rw-r--r--games/fortune_doctor_who/fortune_doctor_who.info16
-rw-r--r--games/fortune_firefly/README34
-rw-r--r--games/fortune_firefly/fortune_firefly.SlackBuild48
-rw-r--r--games/fortune_firefly/fortune_firefly.info10
-rw-r--r--games/fortune_firefly/slack-desc2
-rw-r--r--games/freeblocks/freeblocks.SlackBuild38
-rw-r--r--games/freeblocks/freeblocks.info2
-rw-r--r--games/freeciv/freeciv.SlackBuild30
-rw-r--r--games/freeciv/freeciv.info6
-rw-r--r--games/freedink/README43
-rw-r--r--games/freedink/README.SBo49
-rw-r--r--games/freedink/freedink.SlackBuild18
-rw-r--r--games/freedink/freedink.info2
-rw-r--r--games/freedink/slack-desc10
-rw-r--r--games/freedoom/freedoom.SlackBuild18
-rw-r--r--games/freedoom/freedoom.info12
-rw-r--r--games/freedroid/freedroid.SlackBuild46
-rw-r--r--games/freedroid/freedroid.desktop4
-rw-r--r--games/freedroidrpg/freedroidrpg.SlackBuild35
-rw-r--r--games/freedroidrpg/freedroidrpg.desktop2
-rw-r--r--games/freeminer/freeminer.SlackBuild61
-rw-r--r--games/freeminer/freeminer.info8
-rw-r--r--games/freeorion/freeorion.SlackBuild35
-rw-r--r--games/freeorion/freeorion.info10
-rw-r--r--games/frogatto/fbsd-fixes.patch113
-rw-r--r--games/frogatto/frogatto-boost-1.70.patch37
-rw-r--r--games/frogatto/frogatto.SlackBuild31
-rw-r--r--games/frogatto/frogatto.info2
-rw-r--r--games/frogatto/slack-desc2
-rw-r--r--games/frotz/README17
-rw-r--r--games/frotz/doinst.sh19
-rw-r--r--games/frotz/frotz-infocom.pngbin0 -> 553 bytes
-rw-r--r--games/frotz/frotz.SlackBuild160
-rw-r--r--games/frotz/frotz.desktop16
-rw-r--r--games/frotz/frotz.info10
-rw-r--r--games/frotz/frotz.pngbin0 -> 387 bytes
-rw-r--r--games/frotz/frotz.xml18
-rw-r--r--games/frotz/sfrotz.desktop16
-rw-r--r--games/frotz/slack-desc8
-rw-r--r--games/frotz/xfrotz.desktop16
-rw-r--r--games/frozen-bubble/frozen-bubble-mksrctarball.sh16
-rw-r--r--games/frozen-bubble/frozen-bubble.SlackBuild44
-rw-r--r--games/frozen-bubble/frozen-bubble.info8
-rw-r--r--games/fs-uae-arcade/fs-uae-arcade.SlackBuild22
-rw-r--r--games/fs-uae-arcade/fs-uae-arcade.info2
-rw-r--r--games/fs-uae-launcher/fs-uae-launcher.SlackBuild22
-rw-r--r--games/fs-uae-launcher/fs-uae-launcher.info2
-rw-r--r--games/fs-uae/fs-uae.SlackBuild22
-rw-r--r--games/fs-uae/fs-uae.info8
-rw-r--r--games/fs2open/fs2open.SlackBuild43
-rw-r--r--games/fs2open/fs2open.info8
-rw-r--r--games/fuse-emulator/fuse-emulator.SlackBuild20
-rw-r--r--games/fuse-emulator/fuse-emulator.info8
-rw-r--r--games/galaxyv2/galaxyv2.SlackBuild20
-rw-r--r--games/galaxyv2/galaxyv2.info6
-rw-r--r--games/gambatte-libretro/README10
-rw-r--r--games/gambatte-libretro/gambatte-libretro.SlackBuild82
-rw-r--r--games/gambatte-libretro/gambatte-libretro.info10
-rw-r--r--games/gambatte-libretro/slack-desc19
-rw-r--r--games/game_1945/game_1945.SlackBuild16
-rw-r--r--games/garden/garden.SlackBuild31
-rw-r--r--games/gargoyle/doinst.sh10
-rw-r--r--games/gargoyle/gargoyle.SlackBuild58
-rw-r--r--games/gargoyle/gargoyle.info8
-rw-r--r--games/gbrainy/gbrainy.SlackBuild19
-rw-r--r--games/gbrainy/gbrainy.info10
-rw-r--r--games/gemrb/README2
-rw-r--r--games/gemrb/gemrb.SlackBuild23
-rw-r--r--games/gemrb/gemrb.info6
-rw-r--r--games/gens-gs/README16
-rw-r--r--games/gens-gs/gens-gs.SlackBuild88
-rw-r--r--games/gens-gs/gens-gs.info10
-rw-r--r--games/gens-gs/gens-gtk.patch187
-rw-r--r--games/gens-gs/slack-desc19
-rw-r--r--games/ggmud/ggmud-wrapper.sh8
-rw-r--r--games/ggmud/ggmud.SlackBuild47
-rw-r--r--games/ggmud/ggmud.desktop4
-rw-r--r--games/ggmud/ggmud.info6
-rw-r--r--games/gl-117/gl-117.SlackBuild22
-rw-r--r--games/glPortal/README10
-rw-r--r--games/glPortal/bullet286.patch38
-rw-r--r--games/glPortal/glPortal.SlackBuild120
-rw-r--r--games/glPortal/glPortal.info18
-rw-r--r--games/glPortal/slack-desc19
-rw-r--r--games/glbsp/README16
-rw-r--r--games/glbsp/doinst.sh5
-rw-r--r--games/glbsp/glbsp.SlackBuild55
-rw-r--r--games/glbsp/glbsp.info8
-rw-r--r--games/glbsp/icons/glbspx_128x128x32.pngbin0 -> 13370 bytes
-rw-r--r--games/glbsp/icons/glbspx_16x16x32.pngbin0 -> 756 bytes
-rw-r--r--games/glbsp/icons/glbspx_32x32x32.pngbin0 -> 2053 bytes
-rw-r--r--games/glbsp/icons/glbspx_48x48x32.pngbin0 -> 3288 bytes
-rw-r--r--games/glbsp/nodeview.desktop8
-rw-r--r--games/glbsp/slack-desc6
-rw-r--r--games/glestae/glestae.SlackBuild16
-rw-r--r--games/glestae/glestae.info2
-rw-r--r--games/glob2/glob2.SlackBuild26
-rw-r--r--games/glob2/glob2.info2
-rw-r--r--games/glob2/patches/c++14.patch46
-rw-r--r--games/glob2/patches/fixes.patch (renamed from games/glob2/fixes.patch)0
-rw-r--r--games/glob2/patches/glob2-bool.patch13
-rw-r--r--games/glob2/patches/glob2-scons3.patch26
-rw-r--r--games/glob2/patches/scons-python3.patch243
-rw-r--r--games/glob2/patches/scons_syntax.patch11
-rw-r--r--games/gltron/README2
-rw-r--r--games/gltron/doinst.sh8
-rw-r--r--games/gltron/gltron.SlackBuild127
-rw-r--r--games/gltron/gltron.desktop11
-rw-r--r--games/gltron/gltron.info10
-rw-r--r--games/gltron/patches/gltron-0.70-configure.patch.gzbin0 -> 369 bytes
-rw-r--r--games/gltron/patches/gltron-0.70-debian.patch.gzbin0 -> 471 bytes
-rw-r--r--games/gltron/patches/gltron-0.70-gcc49.patch.gzbin0 -> 179 bytes
-rw-r--r--games/gltron/patches/gltron-0.70-prototypes.patch.gzbin0 -> 336 bytes
-rw-r--r--games/gltron/slack-desc19
-rw-r--r--games/glulxe/README22
-rw-r--r--games/glulxe/glulxe-glktermw.6111
-rw-r--r--games/glulxe/glulxe-glktermw.6.md88
-rw-r--r--games/glulxe/glulxe.SlackBuild142
-rw-r--r--games/glulxe/glulxe.info10
-rw-r--r--games/glulxe/slack-desc19
-rw-r--r--games/glxosd/glxosd.SlackBuild22
-rw-r--r--games/glxosd/glxosd.info2
-rw-r--r--games/gnome-chess/README3
-rw-r--r--games/gnome-chess/doinst.sh14
-rw-r--r--games/gnome-chess/gnome-chess.SlackBuild112
-rw-r--r--games/gnome-chess/gnome-chess.info10
-rw-r--r--games/gnome-chess/slack-desc19
-rw-r--r--games/gnome-klotski/README2
-rw-r--r--games/gnome-klotski/doinst.sh14
-rw-r--r--games/gnome-klotski/gnome-klotski.SlackBuild120
-rw-r--r--games/gnome-klotski/gnome-klotski.info10
-rw-r--r--games/gnome-klotski/slack-desc19
-rw-r--r--games/gnome-mahjongg/README2
-rw-r--r--games/gnome-mahjongg/doinst.sh14
-rw-r--r--games/gnome-mahjongg/gnome-mahjongg.SlackBuild116
-rw-r--r--games/gnome-mahjongg/gnome-mahjongg.info10
-rw-r--r--games/gnome-mahjongg/meson-drop-unused-argument-for-i18n.merge_file.patch35
-rw-r--r--games/gnome-mahjongg/slack-desc19
-rw-r--r--games/gnome-mines/README2
-rw-r--r--games/gnome-mines/doinst.sh14
-rw-r--r--games/gnome-mines/gnome-mines.SlackBuild112
-rw-r--r--games/gnome-mines/gnome-mines.info10
-rw-r--r--games/gnome-mines/slack-desc19
-rw-r--r--games/gnonograms/README2
-rw-r--r--games/gnonograms/gnonogram-controller.diff.txt22
-rw-r--r--games/gnonograms/gnonograms.SlackBuild21
-rw-r--r--games/gnonograms/gnonograms.info2
-rw-r--r--games/gnubg/gnubg.SlackBuild17
-rw-r--r--games/gnubg/gnubg.info8
-rw-r--r--games/gnugo/gnugo.SlackBuild18
-rw-r--r--games/gnurobbo/gnurobbo.SlackBuild33
-rw-r--r--games/gnuski/gnuski.SlackBuild18
-rw-r--r--games/golly/golly.SlackBuild59
-rw-r--r--games/golly/golly.desktop2
-rw-r--r--games/golly/golly.info10
-rw-r--r--games/golly/icons/128.pngbin0 -> 1573 bytes
-rw-r--r--games/golly/icons/16.pngbin0 -> 109 bytes
-rw-r--r--games/golly/icons/32.pngbin0 -> 164 bytes
-rw-r--r--games/golly/icons/48.pngbin0 -> 3971 bytes
-rw-r--r--games/goonies/gcc6.patch12
-rw-r--r--games/goonies/goonies.SlackBuild19
-rw-r--r--games/gottet/README8
-rw-r--r--games/gottet/gottet.SlackBuild58
-rw-r--r--games/gottet/gottet.info8
-rw-r--r--games/gottet/slack-desc6
-rw-r--r--games/greed/greed.SlackBuild16
-rw-r--r--games/gtetrinet/README5
-rw-r--r--games/gtetrinet/cli_opts.diff32
-rw-r--r--games/gtetrinet/doinst.sh15
-rw-r--r--games/gtetrinet/git2tarxz.sh50
-rw-r--r--games/gtetrinet/gtetrinet.SlackBuild125
-rw-r--r--games/gtetrinet/gtetrinet.info10
-rw-r--r--games/gtetrinet/nolockup.diff12
-rw-r--r--games/gtetrinet/slack-desc19
-rw-r--r--games/gtkballs/README10
-rw-r--r--games/gtkballs/doinst.sh6
-rw-r--r--games/gtkballs/gtkballs.SlackBuild67
-rw-r--r--games/gtkballs/gtkballs.info8
-rw-r--r--games/gtkballs/icons/128.pngbin0 -> 6039 bytes
-rw-r--r--games/gtkballs/icons/16.pngbin0 -> 2036 bytes
-rw-r--r--games/gtkballs/icons/32.pngbin0 -> 2924 bytes
-rw-r--r--games/gtkballs/icons/48.pngbin0 -> 1920 bytes
-rw-r--r--games/gtkballs/icons/96.pngbin0 -> 5732 bytes
-rw-r--r--games/gtkballs/slack-desc6
-rw-r--r--games/gtklife/README2
-rw-r--r--games/gtklife/doinst.sh6
-rw-r--r--games/gtklife/gtklife.SlackBuild48
-rw-r--r--games/gtklife/gtklife.desktop2
-rw-r--r--games/gtklife/gtklife.info10
-rw-r--r--games/gw-libretro/README12
-rw-r--r--games/gw-libretro/gw-libretro.SlackBuild95
-rw-r--r--games/gw-libretro/gw-libretro.info10
-rw-r--r--games/gw-libretro/slack-desc19
-rw-r--r--games/gzdoom-legacy/README5
-rw-r--r--games/gzdoom-legacy/README_versions.txt3
-rw-r--r--games/gzdoom-legacy/compilefix.1.8.09.diff143
-rw-r--r--games/gzdoom-legacy/compilefix.1.9.1.diff12
-rw-r--r--games/gzdoom-legacy/compilefix.2.4.0.diff23
-rw-r--r--games/gzdoom-legacy/gzdoom-legacy.SlackBuild21
-rw-r--r--games/gzdoom-legacy/gzdoom-legacy.info4
-rw-r--r--games/gzdoom-legacy/slack-desc2
-rw-r--r--games/gzdoom/README15
-rw-r--r--games/gzdoom/compilefix.4.5.0.diff12
-rw-r--r--games/gzdoom/fix_zipdir.diff11
-rw-r--r--games/gzdoom/gcc13-missing-includes.diff60
-rw-r--r--games/gzdoom/gzdoom.SlackBuild40
-rw-r--r--games/gzdoom/gzdoom.info10
-rw-r--r--games/gzdoom/gzdoom.pngbin1618 -> 0 bytes
-rw-r--r--games/hack-of-life/doinst.sh9
-rw-r--r--games/hack-of-life/hack-of-life.SlackBuild35
-rw-r--r--games/hack-of-life/hack-of-life.desktop8
-rw-r--r--games/hack-of-life/hack-of-life.info2
-rw-r--r--games/hack-of-life/hack-of-life.pngbin0 -> 938 bytes
-rw-r--r--games/hatari/README6
-rw-r--r--games/hatari/hatari.SlackBuild67
-rw-r--r--games/hatari/hatari.info10
-rw-r--r--games/hatari/manpage.2.3.1.diff319
-rw-r--r--games/hatari/manpage.2.4.1.diff319
-rw-r--r--games/hatari/manpage.2.5.0.diff319
-rw-r--r--games/hatari/manpage.diff290
-rw-r--r--games/hatari/slack-desc2
-rw-r--r--games/hatari_tos_roms/README2
-rw-r--r--games/hatari_tos_roms/hatari_tos_roms.SlackBuild29
-rw-r--r--games/hatari_tos_roms/hatari_tos_roms.info8
-rw-r--r--games/hatari_tos_roms/slack-desc2
-rw-r--r--games/haxima-nazghul/README3
-rw-r--r--games/haxima-nazghul/haxima-nazghul.SlackBuild50
-rw-r--r--games/haxima-nazghul/haxima-nazghul.desktop10
-rw-r--r--games/hedgewars/README4
-rw-r--r--games/hedgewars/doinst.sh6
-rw-r--r--games/hedgewars/fpc-3.2.0.patch20
-rw-r--r--games/hedgewars/hedgewars.SlackBuild80
-rw-r--r--games/hedgewars/hedgewars.info12
-rw-r--r--games/hedgewars/icons/128.pngbin0 -> 14705 bytes
-rw-r--r--games/hedgewars/icons/16.pngbin0 -> 1035 bytes
-rw-r--r--games/hedgewars/icons/22.pngbin0 -> 1713 bytes
-rw-r--r--games/hedgewars/icons/256.pngbin0 -> 34358 bytes
-rw-r--r--games/hedgewars/icons/32.pngbin0 -> 2714 bytes
-rw-r--r--games/hedgewars/icons/48.pngbin0 -> 4293 bytes
-rw-r--r--games/hedgewars/icons/64.pngbin0 -> 6172 bytes
-rw-r--r--games/hedgewars/include.qpainterpath.diff21
-rw-r--r--games/heretic_shareware_data/README7
-rw-r--r--games/heretic_shareware_data/heretic_shareware_data.SlackBuild45
-rw-r--r--games/heretic_shareware_data/heretic_shareware_data.info6
-rw-r--r--games/heroes/README16
-rw-r--r--games/heroes/doinst.sh9
-rw-r--r--games/heroes/douninst.sh6
-rw-r--r--games/heroes/heroes-0.21.patch323
-rw-r--r--games/heroes/heroes.SlackBuild161
-rw-r--r--games/heroes/heroes.desktop8
-rw-r--r--games/heroes/heroes.info18
-rw-r--r--games/heroes/man/heroes.6115
-rw-r--r--games/heroes/man/heroeslvl.657
-rw-r--r--games/heroes/slack-desc19
-rw-r--r--games/hex-a-hop/hex-a-hop.SlackBuild22
-rw-r--r--games/hexalate/hexalate.SlackBuild16
-rw-r--r--games/hexalate/hexalate.info2
-rw-r--r--games/hexen_demo_data/README5
-rw-r--r--games/hexen_demo_data/hexen_demo_data.SlackBuild30
-rw-r--r--games/hexen_demo_data/hexen_demo_data.info6
-rw-r--r--games/hexen_demo_data/slack-desc4
-rw-r--r--games/hexglass/hexglass.SlackBuild41
-rw-r--r--games/hexglass/hexglass.desktop4
-rw-r--r--games/hexglass/hexglass.info4
-rw-r--r--games/higan/README3
-rw-r--r--games/higan/doinst.sh6
-rw-r--r--games/higan/higan.SlackBuild42
-rw-r--r--games/higan/higan.desktop8
-rw-r--r--games/higan/higan.info4
-rw-r--r--games/higan/icarus.desktop8
-rw-r--r--games/hlsdk/hlsdk.SlackBuild16
-rw-r--r--games/hnefatafl/hnefatafl.SlackBuild22
-rw-r--r--games/ho1/ho1.SlackBuild16
-rw-r--r--games/ho1/ho1.info4
-rw-r--r--games/homm3_shareware_data/README22
-rw-r--r--games/homm3_shareware_data/homm3_shareware_data.SlackBuild86
-rw-r--r--games/homm3_shareware_data/homm3_shareware_data.info10
-rw-r--r--games/homm3_shareware_data/slack-desc19
-rw-r--r--games/iagno/0001-Don-t-alter-or-try-to-write-GtkChild-fields.patch134
-rw-r--r--games/iagno/0001-Reference-of-GtkChild-fields-is-handled-by-GtkBuilde.patch245
-rw-r--r--games/iagno/README6
-rw-r--r--games/iagno/doinst.sh14
-rw-r--r--games/iagno/iagno.SlackBuild117
-rw-r--r--games/iagno/iagno.info10
-rw-r--r--games/iagno/slack-desc19
-rw-r--r--games/icebreaker/README12
-rw-r--r--games/icebreaker/doinst.sh6
-rw-r--r--games/icebreaker/icebreaker.SlackBuild92
-rw-r--r--games/icebreaker/icebreaker.desktop6
-rw-r--r--games/icebreaker/icebreaker.info8
-rw-r--r--games/icebreaker/slack-desc2
-rw-r--r--games/ifm/ifm.SlackBuild51
-rw-r--r--games/img2xterm/README9
-rw-r--r--games/img2xterm/img2xterm.SlackBuild20
-rw-r--r--games/img2xterm/img2xterm.info2
-rw-r--r--games/innoextract/innoextract.SlackBuild25
-rw-r--r--games/innoextract/innoextract.info10
-rw-r--r--games/instead/instead.SlackBuild18
-rw-r--r--games/instead/instead.info8
-rw-r--r--games/invasion3d/invasion3d.SlackBuild16
-rw-r--r--games/ioquake3/ioquake3.SlackBuild49
-rw-r--r--games/ioquake3/ioquake3.info8
-rw-r--r--games/iortcw/iortcw.SlackBuild16
-rw-r--r--games/iortcw/iortcw.info2
-rw-r--r--games/jackhammer/README9
-rw-r--r--games/jackhammer/doinst.sh18
-rw-r--r--games/jackhammer/jackhammer4
-rw-r--r--games/jackhammer/jackhammer.SlackBuild99
-rw-r--r--games/jackhammer/jackhammer.desktop11
-rw-r--r--games/jackhammer/jackhammer.info10
-rw-r--r--games/jackhammer/slack-desc19
-rw-r--r--games/jag/jag.SlackBuild16
-rw-r--r--games/javacpc/javacpc.SlackBuild24
-rw-r--r--games/javacpc/javacpc.info8
-rw-r--r--games/javacpc/javacpc.sh2
-rw-r--r--games/jezzball-kazzmir/Makefile16
-rw-r--r--games/jezzball-kazzmir/README8
-rw-r--r--games/jezzball-kazzmir/README_Slackware.txt3
-rw-r--r--games/jezzball-kazzmir/doinst.sh6
-rw-r--r--games/jezzball-kazzmir/icons/16.pngbin0 -> 12428 bytes
-rw-r--r--games/jezzball-kazzmir/icons/32.pngbin0 -> 13499 bytes
-rw-r--r--games/jezzball-kazzmir/icons/48.pngbin0 -> 14558 bytes
-rw-r--r--games/jezzball-kazzmir/icons/64.pngbin0 -> 12001 bytes
-rw-r--r--games/jezzball-kazzmir/jezzball-kazzmir.680
-rw-r--r--games/jezzball-kazzmir/jezzball-kazzmir.SlackBuild59
-rw-r--r--games/jezzball-kazzmir/jezzball-kazzmir.info2
-rw-r--r--games/jezzball-kazzmir/jezzball-kazzmir.pngbin839 -> 0 bytes
-rw-r--r--games/jezzball-kazzmir/jezzball-kazzmir.rst69
-rw-r--r--games/jezzball-kazzmir/slack-desc4
-rw-r--r--games/jfsw/README19
-rw-r--r--games/jfsw/README_game_data.txt4
-rw-r--r--games/jfsw/README_music.txt94
-rw-r--r--games/jfsw/desktop/jfsw-build.desktop7
-rw-r--r--games/jfsw/desktop/jfsw.desktop7
-rw-r--r--games/jfsw/desktop/kenbuild.desktop7
-rw-r--r--games/jfsw/doinst.sh5
-rw-r--r--games/jfsw/git2tarxz.sh74
-rw-r--r--games/jfsw/jfsw.SlackBuild229
-rw-r--r--games/jfsw/jfsw.desktop7
-rw-r--r--games/jfsw/jfsw.info14
-rw-r--r--games/jfsw/jfsw.pngbin6827 -> 79506 bytes
-rw-r--r--games/jfsw/kenbuild.sh12
-rw-r--r--games/jfsw/patches/disable_fluid.diff12
-rw-r--r--games/jfsw/patches/disable_sdl2.diff31
-rw-r--r--games/jfsw/patches/dont_use_jack.diff10
-rw-r--r--games/jfsw/patches/fixsegfault.diff12
-rw-r--r--games/jfsw/patches/sdl1_fix.diff12
-rw-r--r--games/jfsw/patches/sdl_cdrom_fix.diff20
-rw-r--r--games/jfsw/patches/twin_dragon_grp.diff11
-rw-r--r--games/jfsw/slack-desc2
-rw-r--r--games/jfsw/twin_dragon_grp.diff23
-rw-r--r--games/jfsw_demo_data/README2
-rw-r--r--games/jfsw_demo_data/jfsw_demo_data.SlackBuild59
-rw-r--r--games/jfsw_demo_data/jfsw_demo_data.info4
-rw-r--r--games/jfsw_hires_pack/README18
-rw-r--r--games/jfsw_hires_pack/jfsw_hires_pack.SlackBuild65
-rw-r--r--games/jfsw_hires_pack/jfsw_hires_pack.info14
-rw-r--r--games/jfsw_hires_pack/slack-desc12
-rw-r--r--games/jfsw_hires_pack/svn2tarxz.sh28
-rw-r--r--games/jfsw_registered_data/README7
-rw-r--r--games/jfsw_registered_data/extract-shadow-warrior.sh4
-rw-r--r--games/jfsw_registered_data/jfsw_registered_data.SlackBuild65
-rw-r--r--games/jfsw_registered_data/jfsw_registered_data.info2
-rw-r--r--games/jfsw_twin_dragon/jfsw_twin_dragon.SlackBuild15
-rw-r--r--games/jfsw_twin_dragon/jfsw_twin_dragon.info2
-rw-r--r--games/jfsw_wanton_destruction/jfsw_wanton_destruction.SlackBuild15
-rw-r--r--games/jfsw_wanton_destruction/jfsw_wanton_destruction.info2
-rw-r--r--games/jg-bsnes/README11
-rw-r--r--games/jg-bsnes/jg-bsnes.SlackBuild80
-rw-r--r--games/jg-bsnes/jg-bsnes.info10
-rw-r--r--games/jg-bsnes/slack-desc19
-rw-r--r--games/jg-cega/README11
-rw-r--r--games/jg-cega/jg-cega.SlackBuild83
-rw-r--r--games/jg-cega/jg-cega.info10
-rw-r--r--games/jg-cega/slack-desc19
-rw-r--r--games/jg-gambatte/README10
-rw-r--r--games/jg-gambatte/jg-gambatte.SlackBuild84
-rw-r--r--games/jg-gambatte/jg-gambatte.info10
-rw-r--r--games/jg-gambatte/slack-desc19
-rw-r--r--games/jg-genplus/README11
-rw-r--r--games/jg-genplus/jg-genplus.SlackBuild80
-rw-r--r--games/jg-genplus/jg-genplus.info10
-rw-r--r--games/jg-genplus/slack-desc19
-rw-r--r--games/jg-geolith/README15
-rw-r--r--games/jg-geolith/jg-geolith.SlackBuild87
-rw-r--r--games/jg-geolith/jg-geolith.info10
-rw-r--r--games/jg-geolith/slack-desc19
-rw-r--r--games/jg-jollycv/README24
-rw-r--r--games/jg-jollycv/jg-jollycv.SlackBuild80
-rw-r--r--games/jg-jollycv/jg-jollycv.info10
-rw-r--r--games/jg-jollycv/slack-desc19
-rw-r--r--games/jg-mednafen/README13
-rw-r--r--games/jg-mednafen/jg-mednafen.SlackBuild85
-rw-r--r--games/jg-mednafen/jg-mednafen.info10
-rw-r--r--games/jg-mednafen/pthreads_configure_ac.diff17
-rw-r--r--games/jg-mednafen/slack-desc19
-rw-r--r--games/jg-melonds/README17
-rw-r--r--games/jg-melonds/jg-melonds.SlackBuild81
-rw-r--r--games/jg-melonds/jg-melonds.info10
-rw-r--r--games/jg-melonds/slack-desc19
-rw-r--r--games/jg-mgba/README11
-rw-r--r--games/jg-mgba/jg-mgba.SlackBuild83
-rw-r--r--games/jg-mgba/jg-mgba.info10
-rw-r--r--games/jg-mgba/slack-desc19
-rw-r--r--games/jg-nestopia/README12
-rw-r--r--games/jg-nestopia/jg-nestopia.SlackBuild80
-rw-r--r--games/jg-nestopia/jg-nestopia.info10
-rw-r--r--games/jg-nestopia/slack-desc19
-rw-r--r--games/jg-picodrive/README12
-rw-r--r--games/jg-picodrive/jg-picodrive.SlackBuild80
-rw-r--r--games/jg-picodrive/jg-picodrive.info10
-rw-r--r--games/jg-picodrive/slack-desc19
-rw-r--r--games/jg-prosystem/README16
-rw-r--r--games/jg-prosystem/jg-prosystem.SlackBuild80
-rw-r--r--games/jg-prosystem/jg-prosystem.info10
-rw-r--r--games/jg-prosystem/slack-desc19
-rw-r--r--games/jg-sameboy/README18
-rw-r--r--games/jg-sameboy/jg-sameboy.SlackBuild82
-rw-r--r--games/jg-sameboy/jg-sameboy.info10
-rw-r--r--games/jg-sameboy/slack-desc19
-rw-r--r--games/jg-vecx/README15
-rw-r--r--games/jg-vecx/jg-vecx.SlackBuild80
-rw-r--r--games/jg-vecx/jg-vecx.info10
-rw-r--r--games/jg-vecx/slack-desc19
-rw-r--r--games/jin/jin.SlackBuild13
-rw-r--r--games/jin/jin.info4
-rw-r--r--games/jollygood/GUIDELINES.txt44
-rw-r--r--games/jollygood/README25
-rw-r--r--games/jollygood/doinst.sh9
-rw-r--r--games/jollygood/jollygood-all-cores-32bit.sqf14
-rw-r--r--games/jollygood/jollygood-all-cores.sqf16
-rw-r--r--games/jollygood/jollygood.SlackBuild156
-rw-r--r--games/jollygood/jollygood.info12
-rw-r--r--games/jollygood/more_extensions.diff21
-rw-r--r--games/jollygood/slack-desc19
-rw-r--r--games/joy2key/README5
-rw-r--r--games/joy2key/button_list_segfault.patch25
-rw-r--r--games/joy2key/fix_manpage_typo.patch20
-rw-r--r--games/joy2key/home_not_set_segfault.patch34
-rw-r--r--games/joy2key/joy2key.SlackBuild99
-rw-r--r--games/joy2key/joy2key.info10
-rw-r--r--games/joy2key/slack-desc19
-rw-r--r--games/jzintv/README20
-rw-r--r--games/jzintv/extract_roms.sh73
-rw-r--r--games/jzintv/jzintv.SlackBuild90
-rw-r--r--games/jzintv/jzintv.info10
-rw-r--r--games/jzintv/jzintv_rompath.patch12
-rw-r--r--games/jzintv/resolution.diff.gzbin0 -> 594 bytes
-rw-r--r--games/jzintv/rompath.diff.gzbin0 -> 318 bytes
-rw-r--r--games/kardsgt/doinst.sh6
-rw-r--r--games/kardsgt/kardsgt.SlackBuild47
-rw-r--r--games/kardsgt/kardsgt.desktop2
-rw-r--r--games/kardsgt/kardsgt.info2
-rw-r--r--games/kildclient/kildclient.SlackBuild27
-rw-r--r--games/kildclient/kildclient.info8
-rw-r--r--games/knights/README6
-rw-r--r--games/knights/doinst.sh13
-rw-r--r--games/knights/knights.SlackBuild118
-rw-r--r--games/knights/knights.info10
-rw-r--r--games/knights/slack-desc19
-rw-r--r--games/koules/README4
-rw-r--r--games/koules/koules.SlackBuild38
-rw-r--r--games/koules/koules.info6
-rw-r--r--games/koules/koules.kde2
-rw-r--r--games/koules/patches/joystickdevs.diff21
-rw-r--r--games/koules/slack-desc14
-rw-r--r--games/larn/larn.SlackBuild47
-rw-r--r--games/larn/larn.info8
-rw-r--r--games/larn/slack-desc6
-rw-r--r--games/lbreakout2/lbreakout2.SlackBuild16
-rw-r--r--games/lbreakouthd/README10
-rw-r--r--games/lbreakouthd/doinst.sh9
-rw-r--r--games/lbreakouthd/lbreakouthd.SlackBuild100
-rw-r--r--games/lbreakouthd/lbreakouthd.info10
-rw-r--r--games/lbreakouthd/slack-desc19
-rw-r--r--games/lgogdownloader/lgogdownloader.SlackBuild34
-rw-r--r--games/lgogdownloader/lgogdownloader.info8
-rw-r--r--games/libretro-2048/README9
-rw-r--r--games/libretro-2048/libretro-2048.SlackBuild82
-rw-r--r--games/libretro-2048/libretro-2048.info10
-rw-r--r--games/libretro-2048/slack-desc19
-rw-r--r--games/libretro-desmume/README5
-rw-r--r--games/libretro-desmume/libretro-desmume.SlackBuild85
-rw-r--r--games/libretro-desmume/libretro-desmume.info10
-rw-r--r--games/libretro-desmume/slack-desc19
-rw-r--r--games/libretro-fceumm/README12
-rw-r--r--games/libretro-fceumm/libretro-fceumm.SlackBuild82
-rw-r--r--games/libretro-fceumm/libretro-fceumm.info10
-rw-r--r--games/libretro-fceumm/slack-desc19
-rw-r--r--games/libretro-handy/README10
-rw-r--r--games/libretro-handy/libretro-handy.SlackBuild82
-rw-r--r--games/libretro-handy/libretro-handy.info10
-rw-r--r--games/libretro-handy/slack-desc19
-rw-r--r--games/libretro-prboom/README9
-rw-r--r--games/libretro-prboom/libretro-prboom.SlackBuild82
-rw-r--r--games/libretro-prboom/libretro-prboom.info10
-rw-r--r--games/libretro-prboom/slack-desc19
-rw-r--r--games/libretro-reicast/README27
-rw-r--r--games/libretro-reicast/libretro-reicast.SlackBuild88
-rw-r--r--games/libretro-reicast/libretro-reicast.info10
-rw-r--r--games/libretro-reicast/slack-desc19
-rw-r--r--games/libretro-vecx/README5
-rw-r--r--games/libretro-vecx/libretro-vecx.SlackBuild82
-rw-r--r--games/libretro-vecx/libretro-vecx.info10
-rw-r--r--games/libretro-vecx/slack-desc19
-rw-r--r--games/libretro-yabause/README18
-rw-r--r--games/libretro-yabause/libretro-yabause.SlackBuild89
-rw-r--r--games/libretro-yabause/libretro-yabause.info10
-rw-r--r--games/libretro-yabause/slack-desc19
-rw-r--r--games/lightyears/lightyears.SlackBuild16
-rw-r--r--games/lightyears/lightyears.info4
-rw-r--r--games/lincity-ng/lincity-ng.SlackBuild22
-rw-r--r--games/liquidwar6/README11
-rw-r--r--games/liquidwar6/doinst.sh9
-rw-r--r--games/liquidwar6/douninst.sh7
-rw-r--r--games/liquidwar6/liquidwar6.SlackBuild87
-rw-r--r--games/liquidwar6/liquidwar6.desktop6
-rw-r--r--games/liquidwar6/liquidwar6.info12
-rw-r--r--games/liquidwar6/liquidwar6.pngbin1198 -> 0 bytes
-rw-r--r--games/liquidwar6/slack-desc2
-rw-r--r--games/lmarbles/doinst.sh6
-rw-r--r--games/lmarbles/lmarbles.SlackBuild50
-rw-r--r--games/lmarbles/lmarbles.desktop7
-rw-r--r--games/lmarbles/lmarbles.info6
-rw-r--r--games/lmarbles/lmarbles.pngbin709 -> 0 bytes
-rw-r--r--games/lmpc/README18
-rw-r--r--games/lmpc/lmpc.SlackBuild97
-rw-r--r--games/lmpc/lmpc.info4
-rw-r--r--games/lmpc/slack-desc12
-rw-r--r--games/loemu/loemu.SlackBuild16
-rw-r--r--games/ltris/ltris.SlackBuild16
-rw-r--r--games/lutris/README4
-rw-r--r--games/lutris/lutris.SlackBuild64
-rw-r--r--games/lutris/lutris.info12
-rw-r--r--games/m64py/README7
-rw-r--r--games/m64py/fix_core_dump_by_int_cast.patch26
-rw-r--r--games/m64py/fix_setup_py.patch32
-rw-r--r--games/m64py/m64py.SlackBuild42
-rw-r--r--games/m64py/m64py.info10
-rw-r--r--games/m64py/slack-desc10
-rw-r--r--games/madbomber/README2
-rw-r--r--games/madbomber/doinst.sh5
-rw-r--r--games/madbomber/madbomber.SlackBuild38
-rw-r--r--games/madbomber/madbomber.desktop2
-rw-r--r--games/madbomber/madbomber.info2
-rw-r--r--games/maelstrom/Maelstrom.67
-rw-r--r--games/maelstrom/README6
-rw-r--r--games/maelstrom/compile_fix.diff68
-rw-r--r--games/maelstrom/doinst.sh6
-rw-r--r--games/maelstrom/install_dirs.diff35
-rw-r--r--games/maelstrom/maelstrom.SlackBuild67
-rw-r--r--games/maelstrom/maelstrom.desktop4
-rw-r--r--games/maelstrom/maelstrom.info10
-rw-r--r--games/maelstrom/maelstrom_addon_package.pl4
-rw-r--r--games/maelstrom/slack-desc4
-rw-r--r--games/mame/README21
-rw-r--r--games/mame/README_ccache.txt130
-rw-r--r--games/mame/README_gcc9.txt60
-rw-r--r--games/mame/README_groovy.txt96
-rw-r--r--games/mame/doinst.sh9
-rw-r--r--games/mame/gm0237sr002e.diff.xzbin0 -> 74192 bytes
-rw-r--r--games/mame/gm0240sr002g.diff.xzbin0 -> 80664 bytes
-rw-r--r--games/mame/gm0251sr002o.diff.xzbin0 -> 109476 bytes
-rw-r--r--games/mame/gm0254sr002s.diff.xzbin0 -> 114340 bytes
-rw-r--r--games/mame/gm0256sr002u.diff.xzbin0 -> 114420 bytes
-rw-r--r--games/mame/gm0260sr002w.diff.xzbin0 -> 114820 bytes
-rw-r--r--games/mame/mame.SlackBuild244
-rw-r--r--games/mame/mame.info10
-rw-r--r--games/mame/mame.ini296
-rw-r--r--games/mame/mkgroovy.sh114
-rw-r--r--games/mame/slack-desc2
-rw-r--r--games/mame2000-libretro/mame2000-libretro.SlackBuild31
-rw-r--r--games/mame2000-libretro/mame2000-libretro.info6
-rw-r--r--games/manaplus/doinst.sh6
-rw-r--r--games/manaplus/manaplus.SlackBuild28
-rw-r--r--games/manaplus/manaplus.info10
-rw-r--r--games/mangband/mangband.SlackBuild24
-rw-r--r--games/marathon-data/marathon-data.SlackBuild27
-rw-r--r--games/marathon-data/marathon-data.info8
-rw-r--r--games/marathon-eternal-data/marathon-eternal-data.SlackBuild16
-rw-r--r--games/marathon-evil-data/marathon-evil-data.SlackBuild16
-rw-r--r--games/marathon-infinity-data/marathon-infinity-data.SlackBuild27
-rw-r--r--games/marathon-infinity-data/marathon-infinity-data.info8
-rw-r--r--games/marathon-phoenix-data/marathon-phoenix-data.SlackBuild16
-rw-r--r--games/marathon-red-data/marathon-red-data.SlackBuild16
-rw-r--r--games/marathon-rubicon-data/marathon-rubicon-data.SlackBuild16
-rw-r--r--games/marathon2-data/marathon2-data.SlackBuild27
-rw-r--r--games/marathon2-data/marathon2-data.info8
-rw-r--r--games/mari0/doinst.sh6
-rw-r--r--games/mari0/mari0.SlackBuild24
-rw-r--r--games/mari0/mari0.desktop2
-rw-r--r--games/mari0/mari0.info4
-rw-r--r--games/mars/mars.SlackBuild30
-rw-r--r--games/mars/mars.info2
-rw-r--r--games/meandmyshadow/README6
-rw-r--r--games/meandmyshadow/meandmyshadow.SlackBuild40
-rw-r--r--games/meandmyshadow/meandmyshadow.info2
-rw-r--r--games/meandmyshadow/slack-desc4
-rw-r--r--games/mednafen/README4
-rw-r--r--games/mednafen/mednafen.SlackBuild44
-rw-r--r--games/mednafen/mednafen.info8
-rw-r--r--games/mednafen/slack-desc2
-rw-r--r--games/mednaffe/README5
-rw-r--r--games/mednaffe/mednaffe.SlackBuild48
-rw-r--r--games/mednaffe/mednaffe.info8
-rw-r--r--games/mednaffe/slack-desc2
-rw-r--r--games/megaglest/README3
-rw-r--r--games/megaglest/megaglest.SlackBuild46
-rw-r--r--games/megaglest/megaglest.info2
-rw-r--r--games/megamario/doinst.sh6
-rw-r--r--games/megamario/megamario.SlackBuild76
-rw-r--r--games/megamario/megamario.desktop7
-rw-r--r--games/megamario/megamario.info6
-rw-r--r--games/megamario/megamario.pngbin0 -> 22961 bytes
-rw-r--r--games/megamario/patches/compilefix.diff56
-rw-r--r--games/megamario/patches/compilefix.diff.gzbin0 -> 480 bytes
-rw-r--r--games/megamario/patches/logfile.diff30
-rw-r--r--games/megamario/patches/logfile.diff.gzbin0 -> 454 bytes
-rw-r--r--games/megamario/patches/oggmusic.diff.gzbin0 -> 646 bytes
-rw-r--r--games/megamario/patches/usemp3music.diff24
-rw-r--r--games/melonds/README20
-rw-r--r--games/melonds/doinst.sh9
-rw-r--r--games/melonds/melonds.SlackBuild111
-rw-r--r--games/melonds/melonds.info10
-rw-r--r--games/melonds/slack-desc19
-rw-r--r--games/mesen-x/README14
-rw-r--r--games/mesen-x/doinst.sh9
-rw-r--r--games/mesen-x/mesen-x2
-rw-r--r--games/mesen-x/mesen-x.SlackBuild124
-rw-r--r--games/mesen-x/mesen-x.desktop8
-rw-r--r--games/mesen-x/mesen-x.info10
-rw-r--r--games/mesen-x/mesen-x_libretro.info.in39
-rw-r--r--games/mesen-x/slack-desc19
-rw-r--r--games/mfe/mfe.SlackBuild22
-rw-r--r--games/mgba/README12
-rw-r--r--games/mgba/doinst.sh4
-rw-r--r--games/mgba/mgba.SlackBuild31
-rw-r--r--games/mgba/mgba.info8
-rw-r--r--games/micropolis/README20
-rw-r--r--games/micropolis/doinst.sh5
-rw-r--r--games/micropolis/micropolis.SlackBuild77
-rw-r--r--games/micropolis/micropolis.info4
-rw-r--r--games/micropolis/micropolis.pngbin0 -> 14761 bytes
-rw-r--r--games/micropolis/slack-desc2
-rw-r--r--games/minecraft/README2
-rw-r--r--games/minecraft/doinst.sh3
-rw-r--r--games/minecraft/minecraft2
-rw-r--r--games/minecraft/minecraft.SlackBuild101
-rw-r--r--games/minecraft/minecraft.desktop6
-rw-r--r--games/minecraft/minecraft.info10
-rw-r--r--games/minecraft/minecraft.pngbin0 -> 49830 bytes
-rw-r--r--games/minecraft/slack-desc19
-rw-r--r--games/minetest/minetest.SlackBuild20
-rw-r--r--games/minetest/minetest.info10
-rw-r--r--games/minetest_game/minetest_game.SlackBuild22
-rw-r--r--games/minetest_game/minetest_game.info8
-rw-r--r--games/mininim/doinst.sh6
-rw-r--r--games/mininim/mininim.SlackBuild49
-rw-r--r--games/mininim/mininim.desktop2
-rw-r--r--games/mininim/mininim.info4
-rw-r--r--games/mininim/mininim.pngbin0 -> 12848 bytes
-rw-r--r--games/miscom/miscom.SlackBuild15
-rw-r--r--games/miscom/miscom.info2
-rw-r--r--games/mog/mog.SlackBuild16
-rw-r--r--games/mog/mog.info2
-rw-r--r--games/moon-buggy/moon-buggy.SlackBuild22
-rw-r--r--games/moria/moria.SlackBuild16
-rw-r--r--games/mrboom/Makefile.patch16
-rw-r--r--games/mrboom/README2
-rw-r--r--games/mrboom/doinst.sh8
-rw-r--r--games/mrboom/mrboom.SlackBuild63
-rw-r--r--games/mrboom/mrboom.info10
-rw-r--r--games/mrboom/slack-desc2
-rw-r--r--games/mrrescue/README2
-rw-r--r--games/mrrescue/doinst.sh6
-rw-r--r--games/mrrescue/mrrescue.SlackBuild30
-rw-r--r--games/mrrescue/mrrescue.desktop2
-rw-r--r--games/mrrescue/mrrescue.info2
-rw-r--r--games/mupen64plus-extraplugins/README9
-rw-r--r--games/mupen64plus-extraplugins/mupen64plus-extraplugins.SlackBuild134
-rw-r--r--games/mupen64plus-extraplugins/mupen64plus-extraplugins.info18
-rw-r--r--games/mupen64plus-extraplugins/slack-desc19
-rw-r--r--games/mupen64plus-input-raphnetraw/README35
-rw-r--r--games/mupen64plus-input-raphnetraw/mupen64plus-input-raphnetraw.SlackBuild104
-rw-r--r--games/mupen64plus-input-raphnetraw/mupen64plus-input-raphnetraw.info10
-rw-r--r--games/mupen64plus-input-raphnetraw/slack-desc19
-rw-r--r--games/mupen64plus-nightly/README14
-rw-r--r--games/mupen64plus-nightly/doinst.sh9
-rw-r--r--games/mupen64plus-nightly/mupen64plus-nightly.SlackBuild162
-rw-r--r--games/mupen64plus-nightly/mupen64plus-nightly.info24
-rw-r--r--games/mupen64plus-nightly/slack-desc19
-rw-r--r--games/mupen64plus-rsp-parallel/9586367.patch22
-rw-r--r--games/mupen64plus-rsp-parallel/README4
-rw-r--r--games/mupen64plus-rsp-parallel/fix-build.patch47
-rw-r--r--games/mupen64plus-rsp-parallel/mupen64plus-rsp-parallel.SlackBuild113
-rw-r--r--games/mupen64plus-rsp-parallel/mupen64plus-rsp-parallel.info10
-rw-r--r--games/mupen64plus-rsp-parallel/slack-desc19
-rw-r--r--games/mupen64plus-video-angrylionplus/README17
-rw-r--r--games/mupen64plus-video-angrylionplus/mupen64plus-video-angrylionplus.SlackBuild116
-rw-r--r--games/mupen64plus-video-angrylionplus/mupen64plus-video-angrylionplus.info10
-rw-r--r--games/mupen64plus-video-angrylionplus/slack-desc19
-rw-r--r--games/mupen64plus-video-gliden64/README1
-rw-r--r--games/mupen64plus-video-gliden64/mupen64plus-video-gliden64.SlackBuild110
-rw-r--r--games/mupen64plus-video-gliden64/mupen64plus-video-gliden64.info10
-rw-r--r--games/mupen64plus-video-gliden64/slack-desc19
-rw-r--r--games/mupen64plus-video-parallel/README4
-rw-r--r--games/mupen64plus-video-parallel/fix-build.patch10
-rw-r--r--games/mupen64plus-video-parallel/mupen64plus-video-parallel.SlackBuild112
-rw-r--r--games/mupen64plus-video-parallel/mupen64plus-video-parallel.info10
-rw-r--r--games/mupen64plus-video-parallel/slack-desc19
-rw-r--r--games/mupen64plus/README7
-rw-r--r--games/mupen64plus/doinst.sh3
-rw-r--r--games/mupen64plus/mupen64plus-core-2.5.9-fix-gcc10-fno-common.patch24
-rw-r--r--games/mupen64plus/mupen64plus.SlackBuild82
-rw-r--r--games/mupen64plus/mupen64plus.info6
-rw-r--r--games/myman/myman.SlackBuild16
-rw-r--r--games/nFlood/nFlood.SlackBuild30
-rw-r--r--games/nFlood/nFlood.info2
-rw-r--r--games/nSnake/nSnake.SlackBuild16
-rw-r--r--games/naev/bfd.diff19
-rw-r--r--games/naev/naev.SlackBuild44
-rw-r--r--games/naev/naev.info2
-rw-r--r--games/nblood/README16
-rw-r--r--games/nblood/README_game_data.txt11
-rw-r--r--games/nblood/extract-blood-data.sh2
-rw-r--r--games/nblood/git2tarxz.sh4
-rw-r--r--games/nblood/nblood.SlackBuild37
-rw-r--r--games/nblood/nblood.info10
-rw-r--r--games/ncursesoflife/ncursesoflife.SlackBuild15
-rw-r--r--games/ncursesoflife/ncursesoflife.info2
-rw-r--r--games/nestopia/README10
-rw-r--r--games/nestopia/doinst.sh2
-rw-r--r--games/nestopia/nestopia.SlackBuild74
-rw-r--r--games/nestopia/nestopia.info12
-rw-r--r--games/nethack/README8
-rw-r--r--games/nethack/nethack-366.patch33
-rw-r--r--games/nethack/nethack.SlackBuild136
-rw-r--r--games/nethack/nethack.info10
-rw-r--r--games/nethack/slack-desc19
-rw-r--r--games/neverball/Makefile.diff12
-rw-r--r--games/neverball/gcc10.patch41
-rw-r--r--games/neverball/neverball.SlackBuild48
-rw-r--r--games/neverball/neverball.info2
-rw-r--r--games/nevernoid/README2
-rw-r--r--games/nevernoid/doinst.sh9
-rw-r--r--games/nevernoid/nevernoid.SlackBuild34
-rw-r--r--games/nevernoid/nevernoid.desktop3
-rw-r--r--games/nevernoid/nevernoid.info12
-rw-r--r--games/nevernoid/nevernoid.wrapper2
-rw-r--r--games/nexuiz/README10
-rw-r--r--games/nexuiz/nexuiz.SlackBuild39
-rw-r--r--games/nexuiz/nexuiz.info2
-rw-r--r--games/nexuiz/slack-desc10
-rw-r--r--games/ninvaders/ninvaders.SlackBuild34
-rw-r--r--games/njam/njam.SlackBuild28
-rw-r--r--games/nlarn/nlarn.SlackBuild38
-rw-r--r--games/noteye/README6
-rw-r--r--games/noteye/doinst.sh16
-rw-r--r--games/noteye/hydraslayer.desktop2
-rw-r--r--games/noteye/hydraslayer.pngbin2426 -> 0 bytes
-rw-r--r--games/noteye/mtrand.h.xzbin0 -> 2552 bytes
-rw-r--r--games/noteye/noteye.SlackBuild80
-rw-r--r--games/noteye/noteye.desktop2
-rw-r--r--games/noteye/noteye.info10
-rw-r--r--games/noteye/noteye.pngbin3842 -> 0 bytes
-rw-r--r--games/noteye/slack-desc18
-rw-r--r--games/notpacman/notpacman.SlackBuild15
-rw-r--r--games/notpacman/notpacman.info4
-rw-r--r--games/nottetris2/nottetris2.SlackBuild25
-rw-r--r--games/nottetris2/nottetris2.info4
-rw-r--r--games/npush/npush.SlackBuild16
-rw-r--r--games/nsudoku/nsudoku.SlackBuild16
-rw-r--r--games/nsuds/nsuds.SlackBuild49
-rw-r--r--games/nuvie/nuvie.SlackBuild37
-rw-r--r--games/nxengine-evo/README21
-rw-r--r--games/nxengine-evo/doinst.sh9
-rw-r--r--games/nxengine-evo/nxengine-evo.SlackBuild114
-rw-r--r--games/nxengine-evo/nxengine-evo.info12
-rw-r--r--games/nxengine-evo/slack-desc19
-rw-r--r--games/nxengine-libretro/README14
-rw-r--r--games/nxengine-libretro/nxengine-libretro.SlackBuild82
-rw-r--r--games/nxengine-libretro/nxengine-libretro.info10
-rw-r--r--games/nxengine-libretro/slack-desc19
-rw-r--r--games/o2em/README5
-rw-r--r--games/o2em/doinst.sh1
-rw-r--r--games/o2em/o2em.1207
-rw-r--r--games/o2em/o2em.6207
-rw-r--r--games/o2em/o2em.SlackBuild65
-rw-r--r--games/o2em/o2em.info8
-rw-r--r--games/o2em/o2em.sh2
-rw-r--r--games/o2em/slack-desc2
-rw-r--r--games/oblige-legacy4/README2
-rw-r--r--games/oblige-legacy4/doinst.sh5
-rw-r--r--games/oblige-legacy4/icons/128.pngbin0 -> 27762 bytes
-rw-r--r--games/oblige-legacy4/icons/16.pngbin0 -> 12889 bytes
-rw-r--r--games/oblige-legacy4/icons/32.pngbin0 -> 14272 bytes
-rw-r--r--games/oblige-legacy4/icons/48.pngbin0 -> 16470 bytes
-rw-r--r--games/oblige-legacy4/icons/64.pngbin0 -> 19103 bytes
-rw-r--r--games/oblige-legacy4/oblige-legacy4.620
-rw-r--r--games/oblige-legacy4/oblige-legacy4.SlackBuild53
-rw-r--r--games/oblige-legacy4/oblige-legacy4.desktop2
-rw-r--r--games/oblige-legacy4/oblige-legacy4.info6
-rw-r--r--games/oblige-legacy4/oblige-legacy4.pngbin15879 -> 0 bytes
-rw-r--r--games/oblige-legacy4/oblige-legacy4.pod6
-rw-r--r--games/oblige-legacy4/slack-desc10
-rw-r--r--games/oblige/README12
-rw-r--r--games/oblige/doinst.sh5
-rw-r--r--games/oblige/icons/128.pngbin0 -> 27762 bytes
-rw-r--r--games/oblige/icons/16.pngbin0 -> 12889 bytes
-rw-r--r--games/oblige/icons/32.pngbin0 -> 14272 bytes
-rw-r--r--games/oblige/icons/48.pngbin0 -> 16470 bytes
-rw-r--r--games/oblige/icons/64.pngbin0 -> 19103 bytes
-rw-r--r--games/oblige/oblige.SlackBuild70
-rw-r--r--games/oblige/oblige.info6
-rw-r--r--games/oblige/slack-desc6
-rw-r--r--games/oblige/swap.6.20.diff.gzbin0 -> 458 bytes
-rw-r--r--games/oblige/swap.7.70.diff.gzbin0 -> 483 bytes
-rw-r--r--games/odamex/README25
-rw-r--r--games/odamex/doinst.sh5
-rw-r--r--games/odamex/odamex.SlackBuild118
-rw-r--r--games/odamex/odamex.info12
-rw-r--r--games/odamex/use_bundled_portmidi.diff20
-rw-r--r--games/onscripter/onscripter.SlackBuild16
-rw-r--r--games/oolite/oolite.SlackBuild32
-rw-r--r--games/oolite/oolite.info2
-rw-r--r--games/open-adventure/advent.pngbin4875 -> 0 bytes
-rw-r--r--games/open-adventure/doinst.sh13
-rw-r--r--games/open-adventure/open-adventure.SlackBuild60
-rw-r--r--games/open-adventure/open-adventure.info10
-rw-r--r--games/open-invaders/48.pngbin0 -> 15522 bytes
-rw-r--r--games/open-invaders/64.pngbin0 -> 3780 bytes
-rw-r--r--games/open-invaders/README5
-rw-r--r--games/open-invaders/check_env_home.diff15
-rw-r--r--games/open-invaders/doinst.sh9
-rw-r--r--games/open-invaders/open-invaders.6113
-rw-r--r--games/open-invaders/open-invaders.SlackBuild172
-rw-r--r--games/open-invaders/open-invaders.info12
-rw-r--r--games/open-invaders/open-invaders.rst96
-rw-r--r--games/open-invaders/skippable_intro.diff63
-rw-r--r--games/open-invaders/slack-desc19
-rw-r--r--games/openarena/openarena.SlackBuild16
-rw-r--r--games/openarena/openarena.info2
-rw-r--r--games/openclonk/findreadline.patch42
-rw-r--r--games/openclonk/openclonk.SlackBuild30
-rw-r--r--games/openclonk/openclonk.info10
-rw-r--r--games/opendune/README27
-rw-r--r--games/opendune/gcc10fix.diff27
-rw-r--r--games/opendune/opendune.SlackBuild44
-rw-r--r--games/opendune/opendune.desktop2
-rw-r--r--games/opendune/opendune.info2
-rw-r--r--games/opendune/slack-desc2
-rw-r--r--games/openjazz/README2
-rw-r--r--games/openjazz/doinst.sh5
-rw-r--r--games/openjazz/openjazz-shareware.desktop6
-rw-r--r--games/openjazz/openjazz.631
-rw-r--r--games/openjazz/openjazz.SlackBuild73
-rw-r--r--games/openjazz/openjazz.info8
-rw-r--r--games/openjazz/openjazz.pod21
-rw-r--r--games/openjazz/paths.diff210
-rw-r--r--games/openlierox/doinst.sh6
-rw-r--r--games/openlierox/git2tarxz.sh52
-rw-r--r--games/openlierox/http_curl.patch20
-rw-r--r--games/openlierox/openlierox.SlackBuild69
-rw-r--r--games/openlierox/openlierox.info8
-rw-r--r--games/openmortal/README2
-rw-r--r--games/openmortal/doinst.sh6
-rw-r--r--games/openmortal/openmortal.SlackBuild46
-rw-r--r--games/openmortal/openmortal.info6
-rw-r--r--games/openmortal/openmortal.pngbin0 -> 17097 bytes
-rw-r--r--games/openmortal/slack-desc2
-rw-r--r--games/openmsx-catapult/openmsx-catapult.SlackBuild20
-rw-r--r--games/openmsx-catapult/openmsx-catapult.info8
-rw-r--r--games/openmsx-debugger/openmsx-debugger.SlackBuild22
-rw-r--r--games/openmsx-debugger/openmsx-debugger.info8
-rw-r--r--games/openmsx/openmsx.SlackBuild20
-rw-r--r--games/openmsx/openmsx.info6
-rw-r--r--games/openmw/openmw.SlackBuild18
-rw-r--r--games/openmw/openmw.info8
-rw-r--r--games/opensonic/loggcompat.diff48
-rw-r--r--games/opensonic/opensonic.SlackBuild31
-rw-r--r--games/opensonic/opensonic.info6
-rw-r--r--games/openspades/openspades.SlackBuild16
-rw-r--r--games/openspades/openspades.info2
-rw-r--r--games/opensurge/README7
-rw-r--r--games/opensurge/doinst.sh3
-rw-r--r--games/opensurge/opensurge.SlackBuild104
-rw-r--r--games/opensurge/opensurge.info10
-rw-r--r--games/opensurge/slack-desc19
-rw-r--r--games/openttd/README3
-rw-r--r--games/openttd/openttd.SlackBuild66
-rw-r--r--games/openttd/openttd.info18
-rw-r--r--games/opentyrian/README6
-rw-r--r--games/opentyrian/doinst.sh6
-rw-r--r--games/opentyrian/opentyrian.SlackBuild96
-rw-r--r--games/opentyrian/opentyrian.info12
-rw-r--r--games/opentyrian/slack-desc8
-rw-r--r--games/openyahtzee/doinst.sh6
-rw-r--r--games/openyahtzee/openyahtzee.SlackBuild42
-rw-r--r--games/openyahtzee/openyahtzee.info6
-rw-r--r--games/ostrichriders/ostrichriders.SlackBuild24
-rw-r--r--games/ostrichriders/ostrichriders.info2
-rw-r--r--games/ovcc/README11
-rw-r--r--games/ovcc/doinst.sh9
-rw-r--r--games/ovcc/git2tarxz.sh66
-rw-r--r--games/ovcc/ovcc.6145
-rw-r--r--games/ovcc/ovcc.SlackBuild146
-rw-r--r--games/ovcc/ovcc.desktop8
-rw-r--r--games/ovcc/ovcc.info18
-rw-r--r--games/ovcc/ovcc.pngbin0 -> 7357 bytes
-rw-r--r--games/ovcc/ovcc.rst137
-rw-r--r--games/ovcc/ovcc.sh37
-rw-r--r--games/ovcc/slack-desc19
-rw-r--r--games/pacman-arena/doinst.sh6
-rw-r--r--games/pacman-arena/icons/128.pngbin0 -> 27147 bytes
-rw-r--r--games/pacman-arena/icons/16.pngbin0 -> 2288 bytes
-rw-r--r--games/pacman-arena/icons/32.pngbin0 -> 4319 bytes
-rw-r--r--games/pacman-arena/icons/48.pngbin0 -> 7494 bytes
-rw-r--r--games/pacman-arena/icons/64.pngbin0 -> 11310 bytes
-rw-r--r--games/pacman-arena/pacman-arena.676
-rw-r--r--games/pacman-arena/pacman-arena.SlackBuild47
-rw-r--r--games/pacman-arena/pacman-arena.desktop2
-rw-r--r--games/pacman-arena/pacman-arena.info8
-rw-r--r--games/pacman-arena/pacman-arena.pngbin1898 -> 0 bytes
-rw-r--r--games/pacman-arena/pacman-arena.rst62
-rw-r--r--games/pacman/README3
-rw-r--r--games/pacman/pacman.SlackBuild20
-rw-r--r--games/pacman/pacman.info2
-rw-r--r--games/pangzero/pangzero.SlackBuild25
-rw-r--r--games/pangzero/pangzero.info8
-rw-r--r--games/parallel-n64/README15
-rw-r--r--games/parallel-n64/parallel-n64.SlackBuild99
-rw-r--r--games/parallel-n64/parallel-n64.info10
-rw-r--r--games/parallel-n64/slack-desc19
-rw-r--r--games/pasang-emas/pasang-emas.SlackBuild16
-rw-r--r--games/pcgen/README10
-rw-r--r--games/pcgen/pcgen.SlackBuild71
-rw-r--r--games/pcgen/pcgen.desktop4
-rw-r--r--games/pcgen/pcgen.info14
-rw-r--r--games/pcgen/pcgen.patch19
-rw-r--r--games/pcgen/slack-desc4
-rw-r--r--games/pcsx-rearmed/pcsx-rearmed.SlackBuild28
-rw-r--r--games/pcsx-rearmed/pcsx-rearmed.info6
-rw-r--r--games/pcsx2/README35
-rw-r--r--games/pcsx2/doinst.sh13
-rw-r--r--games/pcsx2/pcsx2.SlackBuild143
-rw-r--r--games/pcsx2/pcsx2.info26
-rw-r--r--games/pcsx2/portaudio.patch320
-rw-r--r--games/pcsx2/slack-desc8
-rw-r--r--games/pcsxr/patches/pcsxr-fix-uncompress2.patch21
-rw-r--r--games/pcsxr/patches/pcsxr-fix-undefined-operations.patch193
-rw-r--r--games/pcsxr/patches/pcsxr-remove-assertion-64bit.patch12
-rw-r--r--games/pcsxr/pcsxr-fix-uncompress2.patch21
-rw-r--r--games/pcsxr/pcsxr.SlackBuild43
-rw-r--r--games/pcsxr/pcsxr.info6
-rw-r--r--games/peg-e/peg-e.SlackBuild16
-rw-r--r--games/peg-e/peg-e.info2
-rw-r--r--games/penguin-command/doinst.sh6
-rw-r--r--games/penguin-command/icons/128.pngbin0 -> 23871 bytes
-rw-r--r--games/penguin-command/icons/16.pngbin0 -> 698 bytes
-rw-r--r--games/penguin-command/icons/32.pngbin0 -> 2114 bytes
-rw-r--r--games/penguin-command/icons/48.pngbin0 -> 4309 bytes
-rw-r--r--games/penguin-command/manpage.diff32
-rw-r--r--games/penguin-command/penguin-command.SlackBuild43
-rw-r--r--games/penguin-command/penguin-command.desktop2
-rw-r--r--games/penguin-command/penguin-command.info6
-rw-r--r--games/penguin-command/penguin-command.pngbin2168 -> 0 bytes
-rw-r--r--games/pengupop/pengupop.SlackBuild22
-rw-r--r--games/pentagram/README37
-rw-r--r--games/pentagram/pentagram.1186
-rw-r--r--games/pentagram/pentagram.6188
-rw-r--r--games/pentagram/pentagram.SlackBuild61
-rw-r--r--games/pentagram/pentagram.desktop2
-rw-r--r--games/pentagram/pentagram.info4
-rw-r--r--games/pentagram/pentagram.ini.default4
-rw-r--r--games/pentagram/pentagram.sh4
-rw-r--r--games/pgn-extract/Makefile.patch18
-rw-r--r--games/pgn-extract/README2
-rw-r--r--games/pgn-extract/pgn-extract.SlackBuild105
-rw-r--r--games/pgn-extract/pgn-extract.info10
-rw-r--r--games/pgn-extract/slack-desc19
-rw-r--r--games/picodrive/README22
-rw-r--r--games/picodrive/picodrive.SlackBuild95
-rw-r--r--games/picodrive/picodrive.info10
-rw-r--r--games/picodrive/picodrive_libretro-info24
-rw-r--r--games/picodrive/slack-desc19
-rw-r--r--games/pinball/pinball.SlackBuild16
-rw-r--r--games/pingus/patches/missing-header.patch22
-rw-r--r--games/pingus/patches/pingus-0.7.6-gcc470-udl.patch22
-rw-r--r--games/pingus/patches/pingus-boost-1.69.patch380
-rw-r--r--games/pingus/patches/scons-python3.patch19
-rw-r--r--games/pingus/pingus.SlackBuild49
-rw-r--r--games/pingus/pingus.info2
-rw-r--r--games/pioneer/README16
-rw-r--r--games/pioneer/alignment.patch22
-rw-r--r--games/pioneer/pioneer.SlackBuild59
-rw-r--r--games/pioneer/pioneer.info12
-rw-r--r--games/pioneer/save-compat.diff13
-rw-r--r--games/pipewalker/pipewalker.SlackBuild16
-rw-r--r--games/pipewalker/pipewalker.info4
-rw-r--r--games/planetblupi/planetblupi.SlackBuild61
-rw-r--r--games/planetblupi/planetblupi.info10
-rw-r--r--games/playonlinux/playonlinux.SlackBuild16
-rw-r--r--games/pokerth/patches/pokerth-1.1.2-boost-1.70-websocket-fix1.patch75
-rw-r--r--games/pokerth/patches/pokerth-1.1.2-boost-1.70-websocket-fix2.patch52
-rw-r--r--games/pokerth/patches/pokerth-1.1.2-newer-protobuf.patch40
-rw-r--r--games/pokerth/pokerth.SlackBuild55
-rw-r--r--games/pokerth/pokerth.info12
-rw-r--r--games/pom1/README2
-rw-r--r--games/pom1/doinst.sh5
-rw-r--r--games/pom1/pom1.6252
-rw-r--r--games/pom1/pom1.SlackBuild74
-rw-r--r--games/pom1/pom1.info6
-rw-r--r--games/pom1/pom1.rst97
-rw-r--r--games/powerslave_demo_data/powerslave_demo_data.SlackBuild15
-rw-r--r--games/powerslave_demo_data/powerslave_demo_data.info2
-rw-r--r--games/ppsspp/README16
-rw-r--r--games/ppsspp/ppsspp-qt.desktop9
-rw-r--r--games/ppsspp/ppsspp.SlackBuild101
-rw-r--r--games/ppsspp/ppsspp.desktop9
-rw-r--r--games/ppsspp/ppsspp.info20
-rw-r--r--games/ppsspp/slack-desc2
-rw-r--r--games/prboom-plus/README30
-rw-r--r--games/prboom-plus/doinst.sh10
-rw-r--r--games/prboom-plus/prboom-plus.SlackBuild102
-rw-r--r--games/prboom-plus/prboom-plus.info10
-rw-r--r--games/prboom-plus/slack-desc4
-rw-r--r--games/prboom/prboom.SlackBuild46
-rw-r--r--games/principia/README2
-rw-r--r--games/principia/doinst.sh9
-rw-r--r--games/principia/principia.SlackBuild92
-rw-r--r--games/principia/principia.info10
-rw-r--r--games/principia/slack-desc19
-rw-r--r--games/prosystem-libretro/README10
-rw-r--r--games/prosystem-libretro/prosystem-libretro.SlackBuild82
-rw-r--r--games/prosystem-libretro/prosystem-libretro.info10
-rw-r--r--games/prosystem-libretro/slack-desc19
-rw-r--r--games/protontricks/README8
-rw-r--r--games/protontricks/doinst.sh3
-rw-r--r--games/protontricks/protontricks.SlackBuild93
-rw-r--r--games/protontricks/protontricks.info10
-rw-r--r--games/protontricks/slack-desc19
-rw-r--r--games/protonup/README57
-rw-r--r--games/protonup/protonup.SlackBuild93
-rw-r--r--games/protonup/protonup.info10
-rw-r--r--games/protonup/slack-desc19
-rw-r--r--games/puNES/puNES.SlackBuild16
-rw-r--r--games/puNES/puNES.info2
-rw-r--r--games/pushover/pushover.SlackBuild16
-rw-r--r--games/pushover/pushover.info2
-rw-r--r--games/puzzles/README6
-rw-r--r--games/puzzles/doinst.sh9
-rw-r--r--games/puzzles/puzzles.SlackBuild86
-rw-r--r--games/puzzles/puzzles.info12
-rw-r--r--games/pybik/pybik.SlackBuild47
-rw-r--r--games/pybik/pybik.info4
-rw-r--r--games/pychess/pychess.SlackBuild24
-rw-r--r--games/pychess/pychess.info8
-rw-r--r--games/pysolfc-extra-cardsets/README2
-rw-r--r--games/pysolfc-extra-cardsets/pysolfc-extra-cardsets.SlackBuild57
-rw-r--r--games/pysolfc-extra-cardsets/pysolfc-extra-cardsets.info8
-rw-r--r--games/pysolfc-extra-cardsets/slack-desc2
-rw-r--r--games/pysolfc/README18
-rw-r--r--games/pysolfc/pysolfc.SlackBuild123
-rw-r--r--games/pysolfc/pysolfc.info16
-rw-r--r--games/qmc2/qmc2-qt5.15.patch10
-rw-r--r--games/qmc2/qmc2-types.patch952
-rw-r--r--games/qmc2/qmc2.SlackBuild25
-rw-r--r--games/qstat/README5
-rw-r--r--games/qstat/doinst.sh15
-rw-r--r--games/qstat/qstat.SlackBuild104
-rw-r--r--games/qstat/qstat.info10
-rw-r--r--games/qstat/slack-desc19
-rw-r--r--games/qtads/qtads.SlackBuild20
-rw-r--r--games/qtads/qtads.info10
-rw-r--r--games/qtsixa/README30
-rw-r--r--games/qtsixa/doinst.sh37
-rw-r--r--games/qtsixa/qtsixa-dbus.patch43
-rw-r--r--games/qtsixa/qtsixa.SlackBuild135
-rw-r--r--games/qtsixa/qtsixa.info10
-rw-r--r--games/qtsixa/sixad-init.patch52
-rw-r--r--games/qtsixa/sixad-shared-h.patch11
-rw-r--r--games/qtsixa/sixad.patch83
-rw-r--r--games/qtsixa/slack-desc19
-rw-r--r--games/quackle/README5
-rw-r--r--games/quackle/doinst.sh9
-rw-r--r--games/quackle/quackle.SlackBuild90
-rw-r--r--games/quackle/quackle.desktop9
-rw-r--r--games/quackle/quackle.info10
-rw-r--r--games/quackle/quackle.sh9
-rw-r--r--games/quackle/slack-desc19
-rw-r--r--games/quake3_shareware_data/quake3_shareware_data.SlackBuild18
-rw-r--r--games/quake_shareware_data/quake_shareware_data.SlackBuild16
-rw-r--r--games/quakeforge/quakeforge.SlackBuild20
-rw-r--r--games/quakespasm/README1
-rw-r--r--games/quakespasm/doinst.sh3
-rw-r--r--games/quakespasm/quakespasm.SlackBuild101
-rw-r--r--games/quakespasm/quakespasm.desktop9
-rw-r--r--games/quakespasm/quakespasm.info10
-rw-r--r--games/quakespasm/slack-desc19
-rw-r--r--games/quarry/quarry.SlackBuild22
-rw-r--r--games/qxw/README6
-rw-r--r--games/qxw/qxw.SlackBuild20
-rw-r--r--games/qxw/qxw.info8
-rw-r--r--games/qzdl/README2
-rw-r--r--games/qzdl/doinst.sh9
-rw-r--r--games/qzdl/git2tarxz.sh84
-rw-r--r--games/qzdl/qzdl.SlackBuild87
-rw-r--r--games/qzdl/qzdl.info8
-rw-r--r--games/qzdoom/README_SBo.txt16
-rw-r--r--games/qzdoom/compilefix.diff34
-rw-r--r--games/qzdoom/qzdoom.SlackBuild30
-rw-r--r--games/qzdoom/qzdoom.info4
-rw-r--r--games/redeclipse/redeclipse.SlackBuild24
-rw-r--r--games/redeclipse/redeclipse.info2
-rw-r--r--games/rejoystick/README15
-rw-r--r--games/rejoystick/rejoystick.184
-rw-r--r--games/rejoystick/rejoystick.SlackBuild53
-rw-r--r--games/rejoystick/rejoystick.info8
-rw-r--r--games/rejoystick/rejoystick.patch18
-rw-r--r--games/rejoystick/rejoystick.rst73
-rw-r--r--games/rejoystick/slack-desc12
-rw-r--r--games/residualvm/README16
-rw-r--r--games/residualvm/doinst.sh9
-rw-r--r--games/residualvm/residualvm.SlackBuild52
-rw-r--r--games/residualvm/residualvm.info6
-rw-r--r--games/residualvm/slack-desc10
-rw-r--r--games/retux/doinst.sh6
-rw-r--r--games/retux/retux.SlackBuild53
-rw-r--r--games/retux/retux.info12
-rw-r--r--games/rezerwar/rezerwar.SlackBuild21
-rw-r--r--games/rigel-engine/README16
-rw-r--r--games/rigel-engine/RigelEngine.6117
-rw-r--r--games/rigel-engine/RigelEngine.rst102
-rw-r--r--games/rigel-engine/doinst.sh9
-rw-r--r--games/rigel-engine/git2tarxz.sh48
-rw-r--r--games/rigel-engine/rigel-engine.SlackBuild110
-rw-r--r--games/rigel-engine/rigel-engine.info10
-rw-r--r--games/rigel-engine/slack-desc19
-rw-r--r--games/rlvm/README5
-rw-r--r--games/rlvm/doinst.sh9
-rw-r--r--games/rlvm/rlvm.SlackBuild86
-rw-r--r--games/roadfighter/gcc.patch11
-rw-r--r--games/roadfighter/roadfighter.SlackBuild19
-rw-r--r--games/roadfighter/roadfighter.info2
-rw-r--r--games/robotfindskitten/robotfindskitten.SlackBuild20
-rw-r--r--games/robotfindskitten/robotfindskitten.info8
-rw-r--r--games/roccat-tools/fix-multiple-definitions.patch9
-rw-r--r--games/roccat-tools/roccat-tools.SlackBuild23
-rw-r--r--games/rocksndiamonds/rocksndiamonds.SlackBuild29
-rw-r--r--games/rogue/rogue.SlackBuild29
-rw-r--r--games/rogue/rogue.desktop11
-rw-r--r--games/rogue/rogue.info8
-rw-r--r--games/roll/roll.SlackBuild16
-rw-r--r--games/rolldice/README5
-rw-r--r--games/rolldice/rolldice.SlackBuild99
-rw-r--r--games/rolldice/rolldice.info10
-rw-r--r--games/rolldice/slack-desc19
-rw-r--r--games/rott/README10
-rw-r--r--games/rott/README_gamedata.txt17
-rw-r--r--games/rott/doinst.sh1
-rw-r--r--games/rott/rott.SlackBuild49
-rw-r--r--games/rott/rott.info8
-rw-r--r--games/rott/rott.pngbin0 -> 321059 bytes
-rw-r--r--games/rottexpr/README21
-rw-r--r--games/rottexpr/README_gamedata.txt120
-rw-r--r--games/rottexpr/doinst.sh9
-rw-r--r--games/rottexpr/rottexpr.6129
-rw-r--r--games/rottexpr/rottexpr.SlackBuild124
-rw-r--r--games/rottexpr/rottexpr.desktop8
-rw-r--r--games/rottexpr/rottexpr.info12
-rw-r--r--games/rottexpr/rottexpr.pngbin0 -> 321059 bytes
-rw-r--r--games/rottexpr/rottexpr.sh30
-rw-r--r--games/rottexpr/slack-desc19
-rw-r--r--games/rpcs3/README7
-rw-r--r--games/rpcs3/doinst.sh9
-rw-r--r--games/rpcs3/rpcs3.SlackBuild167
-rw-r--r--games/rpcs3/rpcs3.info34
-rw-r--r--games/rpcs3/slack-desc19
-rw-r--r--games/sameboy/README39
-rw-r--r--games/sameboy/doinst.sh9
-rw-r--r--games/sameboy/sameboy.SlackBuild118
-rw-r--r--games/sameboy/sameboy.info10
-rw-r--r--games/sameboy/slack-desc19
-rw-r--r--games/sauerbraten/sauerbraten.SlackBuild61
-rw-r--r--games/sauerbraten/sauerbraten.info8
-rw-r--r--games/scid/scid.SlackBuild16
-rw-r--r--games/scid/scid.info4
-rw-r--r--games/scid_vs_pc/README13
-rw-r--r--games/scid_vs_pc/doinst.sh4
-rw-r--r--games/scid_vs_pc/scid_vs_pc.SlackBuild46
-rw-r--r--games/scid_vs_pc/scid_vs_pc.info8
-rw-r--r--games/scrabbleai/README4
-rw-r--r--games/scrabbleai/doinst.sh9
-rw-r--r--games/scrabbleai/git2tarxz.sh42
-rw-r--r--games/scrabbleai/scrabbleai.6154
-rw-r--r--games/scrabbleai/scrabbleai.SlackBuild114
-rw-r--r--games/scrabbleai/scrabbleai.desktop9
-rw-r--r--games/scrabbleai/scrabbleai.info10
-rw-r--r--games/scrabbleai/scrabbleai.rst154
-rw-r--r--games/scrabbleai/slack-desc19
-rw-r--r--games/scrabbleai/unix.diff97
-rw-r--r--games/scrabbleai/wordlists.diff107
-rw-r--r--games/scribble/scribble.SlackBuild16
-rw-r--r--games/scummvm-libretro/README27
-rw-r--r--games/scummvm-libretro/scummvm-libretro.SlackBuild83
-rw-r--r--games/scummvm-libretro/scummvm-libretro.info10
-rw-r--r--games/scummvm-libretro/slack-desc19
-rw-r--r--games/scummvm/README14
-rw-r--r--games/scummvm/doinst.sh6
-rw-r--r--games/scummvm/fix-fluidsynth2-build.diff27
-rw-r--r--games/scummvm/scummvm.SlackBuild48
-rw-r--r--games/scummvm/scummvm.info10
-rw-r--r--games/sdlpop/README7
-rw-r--r--games/sdlpop/doinst.sh6
-rw-r--r--games/sdlpop/sdlpop.SlackBuild32
-rw-r--r--games/sdlpop/sdlpop.desktop2
-rw-r--r--games/sdlpop/sdlpop.info10
-rw-r--r--games/sdlpop/sdlpop.pngbin42664 -> 108739 bytes
-rw-r--r--games/sdlpop/slack-desc2
-rw-r--r--games/simplesok/simplesok.SlackBuild16
-rw-r--r--games/simplesok/simplesok.info2
-rw-r--r--games/simsu/simsu.SlackBuild26
-rw-r--r--games/simsu/simsu.info6
-rw-r--r--games/singularity/singularity.SlackBuild16
-rw-r--r--games/skulltag/README8
-rw-r--r--games/skulltag/doinst.sh5
-rw-r--r--games/skulltag/icons/128.pngbin0 -> 10445 bytes
-rw-r--r--games/skulltag/icons/16.pngbin0 -> 795 bytes
-rw-r--r--games/skulltag/icons/32.pngbin0 -> 1739 bytes
-rw-r--r--games/skulltag/icons/48.pngbin0 -> 3548 bytes
-rw-r--r--games/skulltag/icons/64.pngbin0 -> 5193 bytes
-rw-r--r--games/skulltag/skulltag.SlackBuild52
-rw-r--r--games/skulltag/skulltag.desktop2
-rw-r--r--games/skulltag/skulltag.info2
-rw-r--r--games/skulltag/skulltag.pngbin2639 -> 0 bytes
-rw-r--r--games/sl/README4
-rw-r--r--games/sl/sl.SlackBuild30
-rw-r--r--games/sl/sl.info8
-rw-r--r--games/smashbattle/README13
-rw-r--r--games/smashbattle/smashbattle.SlackBuild16
-rw-r--r--games/smc/README26
-rw-r--r--games/smc/doinst.sh6
-rw-r--r--games/smc/icons/16.pngbin0 -> 845 bytes
-rw-r--r--games/smc/icons/32.pngbin0 -> 2352 bytes
-rw-r--r--games/smc/icons/48.pngbin0 -> 4351 bytes
-rw-r--r--games/smc/icons/64.pngbin0 -> 6750 bytes
-rw-r--r--games/smc/smc.SlackBuild63
-rw-r--r--games/smc/smc.desktop4
-rw-r--r--games/smc/smc.info4
-rw-r--r--games/smokinguns/smokinguns.SlackBuild32
-rw-r--r--games/smokinguns/smokinguns.info4
-rw-r--r--games/sms_sdl/README5
-rw-r--r--games/sms_sdl/doinst.sh5
-rw-r--r--games/sms_sdl/sms_sdl.677
-rw-r--r--games/sms_sdl/sms_sdl.SlackBuild40
-rw-r--r--games/sms_sdl/sms_sdl.desktop2
-rw-r--r--games/sms_sdl/sms_sdl.info2
-rw-r--r--games/sms_sdl/sms_sdl.pngbin2898 -> 16332 bytes
-rw-r--r--games/sms_sdl/sms_sdl.pod71
-rw-r--r--games/sms_sdl/sms_sdl.sh9
-rw-r--r--games/snes9x/ChangeLog.old71
-rw-r--r--games/snes9x/README59
-rw-r--r--games/snes9x/slack-desc4
-rw-r--r--games/snes9x/snes9x-gtk.6154
-rw-r--r--games/snes9x/snes9x-gtk.rst91
-rw-r--r--games/snes9x/snes9x.689
-rw-r--r--games/snes9x/snes9x.SlackBuild197
-rw-r--r--games/snes9x/snes9x.info16
-rw-r--r--games/snes9x/snes9x.rst78
-rw-r--r--games/snes9x/snes9x_libretro.info.txt (renamed from games/snes9x/snes9x_libretro-info)0
-rw-r--r--games/snes9x2010/README3
-rw-r--r--games/snes9x2010/snes9x2010.SlackBuild35
-rw-r--r--games/snes9x2010/snes9x2010.info6
-rw-r--r--games/sokowiz/sokowiz.SlackBuild16
-rw-r--r--games/solarus-quest-editor/README12
-rw-r--r--games/solarus-quest-editor/solarus-quest-editor.SlackBuild16
-rw-r--r--games/solarus-quest-editor/solarus-quest-editor.info2
-rw-r--r--games/solarus/README6
-rw-r--r--games/solarus/solarus.SlackBuild16
-rw-r--r--games/solarus/solarus.info2
-rw-r--r--games/solarwolf/doinst.sh6
-rw-r--r--games/solarwolf/solarwolf.SlackBuild73
-rw-r--r--games/solarwolf/solarwolf.info8
-rw-r--r--games/speed-dreams/README8
-rw-r--r--games/speed-dreams/speed-dreams.SlackBuild22
-rw-r--r--games/speed-dreams/speed-dreams.info20
-rw-r--r--games/spring/README6
-rw-r--r--games/spring/slack-desc2
-rw-r--r--games/spring/spring.SlackBuild91
-rw-r--r--games/spring/spring.info2
-rw-r--r--games/srb2/README4
-rw-r--r--games/srb2/doinst.sh7
-rw-r--r--games/srb2/srb2.SlackBuild92
-rw-r--r--games/srb2/srb2.desktop4
-rw-r--r--games/srb2/srb2.info24
-rw-r--r--games/starfighter/doinst.sh2
-rw-r--r--games/starfighter/starfighter.SlackBuild20
-rw-r--r--games/starfighter/starfighter.info8
-rw-r--r--games/steam/README13
-rw-r--r--games/steam/doinst.sh4
-rw-r--r--games/steam/steam.SlackBuild20
-rw-r--r--games/steam/steam.info10
-rw-r--r--games/steamtinkerlaunch/README7
-rw-r--r--games/steamtinkerlaunch/doinst.sh9
-rw-r--r--games/steamtinkerlaunch/slack-desc19
-rw-r--r--games/steamtinkerlaunch/steamtinkerlaunch.SlackBuild102
-rw-r--r--games/steamtinkerlaunch/steamtinkerlaunch.info10
-rw-r--r--games/steem/README19
-rw-r--r--games/steem/doinst.sh3
-rw-r--r--games/steem/slack-desc19
-rw-r--r--games/steem/steem.6218
-rw-r--r--games/steem/steem.SlackBuild105
-rw-r--r--games/steem/steem.desktop10
-rw-r--r--games/steem/steem.info12
-rw-r--r--games/steem/steem.pdf.xzbin257948 -> 0 bytes
-rw-r--r--games/steem/steem.pngbin599 -> 0 bytes
-rw-r--r--games/steem/steem.pod113
-rw-r--r--games/steem/steem.sh45
-rw-r--r--games/stella-libretro/README5
-rw-r--r--games/stella-libretro/slack-desc19
-rw-r--r--games/stella-libretro/stella-libretro.SlackBuild82
-rw-r--r--games/stella-libretro/stella-libretro.info10
-rw-r--r--games/stella/README2
-rw-r--r--games/stella/stella.SlackBuild47
-rw-r--r--games/stella/stella.info10
-rw-r--r--games/stepmania/README6
-rw-r--r--games/stepmania/doinst.sh12
-rw-r--r--games/stepmania/slack-desc19
-rw-r--r--games/stepmania/stepmania.SlackBuild161
-rw-r--r--games/stepmania/stepmania.info10
-rw-r--r--games/stockfish/README2
-rw-r--r--games/stockfish/stockfish.SlackBuild46
-rw-r--r--games/stockfish/stockfish.info10
-rw-r--r--games/stone_soup/README4
-rw-r--r--games/stone_soup/slack-desc19
-rw-r--r--games/stone_soup/stone_soup.SlackBuild118
-rw-r--r--games/stone_soup/stone_soup.desktop8
-rw-r--r--games/stone_soup/stone_soup.info10
-rw-r--r--games/stormbaancoureur/stormbaancoureur.SlackBuild16
-rw-r--r--games/stratagus/README13
-rw-r--r--games/stratagus/stratagus.SlackBuild18
-rw-r--r--games/stratagus/stratagus.info4
-rw-r--r--games/stuntrally/stuntrally.SlackBuild54
-rw-r--r--games/sumeria/sumeria.SlackBuild25
-rw-r--r--games/sumeria/sumeria.info2
-rw-r--r--games/sumwars/README7
-rw-r--r--games/sumwars/slack-desc19
-rw-r--r--games/sumwars/sumwars.SlackBuild103
-rw-r--r--games/sumwars/sumwars.desktop10
-rw-r--r--games/sumwars/sumwars.info10
-rw-r--r--games/sunshine/README11
-rw-r--r--games/sunshine/doinst.sh3
-rw-r--r--games/sunshine/slack-desc19
-rw-r--r--games/sunshine/sunshine.SlackBuild141
-rw-r--r--games/sunshine/sunshine.info30
-rw-r--r--games/supermariowar/README11
-rw-r--r--games/supermariowar/doinst.sh6
-rw-r--r--games/supermariowar/supermariowar-2.0_beta1-yaml-cpp-config.cmake21
-rw-r--r--games/supermariowar/supermariowar.SlackBuild37
-rw-r--r--games/supermariowar/supermariowar.info8
-rw-r--r--games/supertux/README4
-rw-r--r--games/supertux/doinst.sh6
-rw-r--r--games/supertux/slack-desc6
-rw-r--r--games/supertux/supertux.SlackBuild35
-rw-r--r--games/supertux/supertux.info12
-rw-r--r--games/supertuxkart/gcc13-1.patch155
-rw-r--r--games/supertuxkart/gcc13-2.patch72
-rw-r--r--games/supertuxkart/supertuxkart.SlackBuild28
-rw-r--r--games/supertuxkart/supertuxkart.info8
-rw-r--r--games/surgescript/README2
-rw-r--r--games/surgescript/slack-desc19
-rw-r--r--games/surgescript/surgescript.SlackBuild104
-rw-r--r--games/surgescript/surgescript.info10
-rw-r--r--games/syobonaction/doinst.sh6
-rw-r--r--games/syobonaction/git2tarxz.sh75
-rw-r--r--games/syobonaction/icons/16.pngbin0 -> 584 bytes
-rw-r--r--games/syobonaction/icons/32.pngbin0 -> 187 bytes
-rw-r--r--games/syobonaction/icons/48.png (renamed from games/syobonaction/syobonaction.png)bin544 -> 544 bytes
-rw-r--r--games/syobonaction/syobonaction.6259
-rw-r--r--games/syobonaction/syobonaction.SlackBuild46
-rw-r--r--games/syobonaction/syobonaction.info8
-rw-r--r--games/syobonaction/syobonaction.pod63
-rw-r--r--games/syobonaction/syobonaction.rst75
-rw-r--r--games/taipan/taipan.SlackBuild22
-rw-r--r--games/taipan/taipan.info2
-rw-r--r--games/talkfilters/talkfilters.SlackBuild20
-rw-r--r--games/tanglet/tanglet.SlackBuild28
-rw-r--r--games/tanglet/tanglet.info8
-rw-r--r--games/tbftss/doinst.sh2
-rw-r--r--games/tbftss/tbftss.SlackBuild16
-rw-r--r--games/tbftss/tbftss.info2
-rw-r--r--games/teeworlds/teeworlds.SlackBuild20
-rw-r--r--games/teeworlds/teeworlds.info12
-rw-r--r--games/term2048/term2048.SlackBuild16
-rw-r--r--games/term2048/term2048.info2
-rw-r--r--games/tetrinet/README21
-rw-r--r--games/tetrinet/man/tetrinet-server.6135
-rw-r--r--games/tetrinet/man/tetrinet.6180
-rw-r--r--games/tetrinet/patches/check_term_size.diff19
-rw-r--r--games/tetrinet/patches/compilefix.diff93
-rw-r--r--games/tetrinet/patches/gcc10.diff25
-rw-r--r--games/tetrinet/patches/tab_key.diff52
-rw-r--r--games/tetrinet/patches/vikeys.diff35
-rw-r--r--games/tetrinet/slack-desc19
-rw-r--r--games/tetrinet/tetrinet.SlackBuild122
-rw-r--r--games/tetrinet/tetrinet.info10
-rw-r--r--games/tetrinetx/README24
-rw-r--r--games/tetrinetx/doinst.sh26
-rw-r--r--games/tetrinetx/rc.tetrinetx19
-rw-r--r--games/tetrinetx/restore_ipv4.diff16
-rw-r--r--games/tetrinetx/slack-desc19
-rw-r--r--games/tetrinetx/tetrinetx.6159
-rw-r--r--games/tetrinetx/tetrinetx.SlackBuild131
-rw-r--r--games/tetrinetx/tetrinetx.info12
-rw-r--r--games/tetrinetx/tetrinetx.rst132
-rw-r--r--games/tint/README7
-rw-r--r--games/tint/doinst.sh7
-rw-r--r--games/tint/slack-desc19
-rw-r--r--games/tint/tint.SlackBuild100
-rw-r--r--games/tint/tint.info10
-rw-r--r--games/tintin/README23
-rw-r--r--games/tintin/tintin.SlackBuild22
-rw-r--r--games/tkgames/README13
-rw-r--r--games/tkgames/desktop/polypuzzle.desktop8
-rw-r--r--games/tkgames/desktop/tkhangman.desktop8
-rw-r--r--games/tkgames/desktop/tkhearts.desktop8
-rw-r--r--games/tkgames/desktop/tksol.desktop8
-rw-r--r--games/tkgames/desktop/tkspider.desktop8
-rw-r--r--games/tkgames/desktop/tktk.desktop8
-rw-r--r--games/tkgames/desktop/tktp.desktop8
-rw-r--r--games/tkgames/desktop/tkyahtzee.desktop8
-rw-r--r--games/tkgames/doinst.sh9
-rw-r--r--games/tkgames/icons/polypuzzle.pngbin0 -> 1941 bytes
-rw-r--r--games/tkgames/icons/tkgames-cards.pngbin0 -> 2466 bytes
-rw-r--r--games/tkgames/icons/tkhangman.pngbin0 -> 4258 bytes
-rw-r--r--games/tkgames/icons/tkyahtzee.pngbin0 -> 4884 bytes
-rw-r--r--games/tkgames/slack-desc19
-rw-r--r--games/tkgames/tkgames.SlackBuild99
-rw-r--r--games/tkgames/tkgames.info10
-rw-r--r--games/tome-ah/README16
-rw-r--r--games/tome-ah/tome-ah.SlackBuild44
-rw-r--r--games/tome-ah/tome-ah.info6
-rw-r--r--games/tome-ah/tome-gcu.sh6
-rw-r--r--games/tome-ah/tome-gtk2.sh6
-rw-r--r--games/tome-ah/tome-x11.sh6
-rw-r--r--games/tome-ah/tome.sh6
-rw-r--r--games/tome-sx/tome-sx.SlackBuild16
-rw-r--r--games/tome/tome.SlackBuild21
-rw-r--r--games/tome/tome.info10
-rw-r--r--games/tong/tong.SlackBuild22
-rw-r--r--games/torcs/README2
-rw-r--r--games/torcs/doinst.sh5
-rw-r--r--games/torcs/torcs.SlackBuild54
-rw-r--r--games/torcs/torcs.desktop2
-rw-r--r--games/torcs/torcs.info4
-rw-r--r--games/trackballs/trackballs.SlackBuild34
-rw-r--r--games/trackballs/trackballs.info10
-rw-r--r--games/transfusion/README19
-rw-r--r--games/transfusion/slack-desc19
-rw-r--r--games/transfusion/transfusion.SlackBuild63
-rw-r--r--games/transfusion/transfusion.desktop6
-rw-r--r--games/transfusion/transfusion.in24
-rw-r--r--games/transfusion/transfusion.info10
-rw-r--r--games/transfusion/transfusion.pngbin454 -> 0 bytes
-rw-r--r--games/trigger-rally/README13
-rw-r--r--games/trigger-rally/hiscore1.h.patch44
-rw-r--r--games/trigger-rally/slack-desc2
-rw-r--r--games/trigger-rally/trigger-rally.SlackBuild44
-rw-r--r--games/trigger-rally/trigger-rally.info64
-rw-r--r--games/triplea/triplea.SlackBuild16
-rw-r--r--games/triplea/triplea.info2
-rw-r--r--games/trs80gp/README21
-rw-r--r--games/trs80gp/doinst.sh9
-rw-r--r--games/trs80gp/icons/16.pngbin0 -> 112 bytes
-rw-r--r--games/trs80gp/icons/256.pngbin0 -> 1764 bytes
-rw-r--r--games/trs80gp/icons/32.pngbin0 -> 194 bytes
-rw-r--r--games/trs80gp/icons/48.pngbin0 -> 858 bytes
-rw-r--r--games/trs80gp/icons/64.pngbin0 -> 843 bytes
-rw-r--r--games/trs80gp/slack-desc19
-rw-r--r--games/trs80gp/trs80gp.669
-rw-r--r--games/trs80gp/trs80gp.SlackBuild144
-rw-r--r--games/trs80gp/trs80gp.desktop8
-rw-r--r--games/trs80gp/trs80gp.info12
-rw-r--r--games/trs80gp/trs80gp.rst56
-rw-r--r--games/trs80gp/wrapper32.sh8
-rw-r--r--games/tt/tt.SlackBuild16
-rw-r--r--games/tty-solitaire/tty-solitaire.SlackBuild26
-rw-r--r--games/tuxfootball/tuxfootball.SlackBuild16
-rw-r--r--games/tuxkart/tuxkart.SlackBuild16
-rw-r--r--games/tuxnes/README24
-rw-r--r--games/tuxnes/tuxnes.SlackBuild21
-rw-r--r--games/tworld/tworld.SlackBuild16
-rw-r--r--games/typespeed/typespeed.SlackBuild21
-rw-r--r--games/typhoon_2001/README22
-rw-r--r--games/typhoon_2001/doinst.sh6
-rw-r--r--games/typhoon_2001/slack-desc2
-rw-r--r--games/typhoon_2001/typhoon_20016
-rw-r--r--games/typhoon_2001/typhoon_2001.SlackBuild59
-rw-r--r--games/typhoon_2001/typhoon_2001.desktop4
-rw-r--r--games/typhoon_2001/typhoon_2001.info2
-rw-r--r--games/tyrquake-libretro/README31
-rw-r--r--games/tyrquake-libretro/slack-desc19
-rw-r--r--games/tyrquake-libretro/tyrquake-libretro.SlackBuild82
-rw-r--r--games/tyrquake-libretro/tyrquake-libretro.info10
-rw-r--r--games/ucr/README31
-rw-r--r--games/ucr/doinst.sh19
-rw-r--r--games/ucr/slack-desc19
-rw-r--r--games/ucr/ucr.699
-rw-r--r--games/ucr/ucr.SlackBuild86
-rw-r--r--games/ucr/ucr.desktop8
-rw-r--r--games/ucr/ucr.info10
-rw-r--r--games/ucr/ucr.pngbin2895 -> 0 bytes
-rw-r--r--games/ufoai/README24
-rw-r--r--games/ufoai/icons/ufo/16.pngbin0 -> 707 bytes
-rw-r--r--games/ufoai/icons/ufo/256.pngbin0 -> 75257 bytes
-rw-r--r--games/ufoai/icons/ufo/32.pngbin0 -> 2039 bytes
-rw-r--r--games/ufoai/icons/ufo/48.pngbin0 -> 3897 bytes
-rw-r--r--games/ufoai/icons/ufo/64.pngbin0 -> 6600 bytes
-rw-r--r--games/ufoai/icons/ufoded/16.pngbin0 -> 797 bytes
-rw-r--r--games/ufoai/icons/ufoded/256.pngbin0 -> 81964 bytes
-rw-r--r--games/ufoai/icons/ufoded/32.pngbin0 -> 2406 bytes
-rw-r--r--games/ufoai/icons/ufoded/48.pngbin0 -> 4334 bytes
-rw-r--r--games/ufoai/icons/ufoded/64.pngbin0 -> 7818 bytes
-rw-r--r--games/ufoai/icons/uforadiant/16.pngbin0 -> 1299 bytes
-rw-r--r--games/ufoai/icons/uforadiant/32.pngbin0 -> 2728 bytes
-rw-r--r--games/ufoai/icons/uforadiant/48.pngbin0 -> 4942 bytes
-rw-r--r--games/ufoai/icons/uforadiant/64.pngbin0 -> 7523 bytes
-rw-r--r--games/ufoai/man/ufo.651
-rw-r--r--games/ufoai/man/ufo2map.6188
-rw-r--r--games/ufoai/man/ufoded.642
-rw-r--r--games/ufoai/man/ufomodel.650
-rw-r--r--games/ufoai/man/uforadiant.649
-rw-r--r--games/ufoai/man/ufoslicer.640
-rw-r--r--games/ufoai/mkicons.sh31
-rw-r--r--games/ufoai/patches/bug-949301-mxml.patch29
-rw-r--r--games/ufoai/patches/initialize-entityString.patch26
-rw-r--r--games/ufoai/patches/segfault-reactionfire-mode-bug-861979.patch36
-rw-r--r--games/ufoai/patches/series3
-rw-r--r--games/ufoai/slack-desc4
-rw-r--r--games/ufoai/ufoai.SlackBuild148
-rw-r--r--games/ufoai/ufoai.info8
-rw-r--r--games/uligo/README7
-rw-r--r--games/uligo/uligo.SlackBuild16
-rw-r--r--games/ultimatestunts/ultimatestunts.SlackBuild17
-rw-r--r--games/unigine-superposition-benchmark/unigine-superposition-benchmark.SlackBuild16
-rw-r--r--games/unknown-horizons/unknown-horizons.SlackBuild16
-rw-r--r--games/unknown-horizons/unknown-horizons.info2
-rw-r--r--games/unnethack/unnethack.SlackBuild50
-rw-r--r--games/unnethack/unnethack.info8
-rw-r--r--games/unvanquished/README4
-rw-r--r--games/unvanquished/cmakelists.patch59
-rw-r--r--games/unvanquished/doinst.sh18
-rw-r--r--games/unvanquished/slack-desc19
-rw-r--r--games/unvanquished/unvanquished.SlackBuild166
-rw-r--r--games/unvanquished/unvanquished.desktop11
-rw-r--r--games/unvanquished/unvanquished.info18
-rw-r--r--games/uqm-megamod/README14
-rw-r--r--games/uqm-megamod/config.state17
-rw-r--r--games/uqm-megamod/doinst.sh9
-rw-r--r--games/uqm-megamod/slack-desc19
-rw-r--r--games/uqm-megamod/uqm-megamod.SlackBuild136
-rw-r--r--games/uqm-megamod/uqm-megamod.desktop10
-rw-r--r--games/uqm-megamod/uqm-megamod.info20
-rw-r--r--games/uqm/README7
-rw-r--r--games/uqm/config.state.in14
-rw-r--r--games/uqm/doinst.sh6
-rw-r--r--games/uqm/icons/128.pngbin0 -> 27685 bytes
-rw-r--r--games/uqm/icons/16.pngbin0 -> 918 bytes
-rw-r--r--games/uqm/icons/32.pngbin0 -> 2883 bytes
-rw-r--r--games/uqm/icons/48.pngbin0 -> 5409 bytes
-rw-r--r--games/uqm/slack-desc8
-rw-r--r--games/uqm/uqm.1771
-rw-r--r--games/uqm/uqm.SlackBuild152
-rw-r--r--games/uqm/uqm.info12
-rw-r--r--games/uqm/uqm.xpm138
-rw-r--r--games/uqm_3domusic/README5
-rw-r--r--games/uqm_3domusic/uqm_3domusic.SlackBuild19
-rw-r--r--games/uqm_3domusic/uqm_3domusic.info10
-rw-r--r--games/uqm_remixes/uqm_remixes.SlackBuild19
-rw-r--r--games/uqm_remixes/uqm_remixes.info16
-rw-r--r--games/uqm_voice/uqm_voice.SlackBuild15
-rw-r--r--games/uqm_voice/uqm_voice.info6
-rw-r--r--games/ut2004/README11
-rw-r--r--games/ut2004/ut2004.SlackBuild18
-rw-r--r--games/vbam/README45
-rw-r--r--games/vbam/slack-desc16
-rw-r--r--games/vbam/vbam.SlackBuild171
-rw-r--r--games/vbam/vbam.info10
-rw-r--r--games/vcmi-core/README3
-rw-r--r--games/vcmi-core/slack-desc19
-rw-r--r--games/vcmi-core/vcmi-core.SlackBuild68
-rw-r--r--games/vcmi-core/vcmi-core.info10
-rw-r--r--games/vcmi-resolutions/README3
-rw-r--r--games/vcmi-resolutions/slack-desc19
-rw-r--r--games/vcmi-resolutions/vcmi-resolutions.SlackBuild65
-rw-r--r--games/vcmi-resolutions/vcmi-resolutions.info10
-rw-r--r--games/vcmi-wog/README3
-rw-r--r--games/vcmi-wog/slack-desc19
-rw-r--r--games/vcmi-wog/vcmi-wog.SlackBuild65
-rw-r--r--games/vcmi-wog/vcmi-wog.info10
-rw-r--r--games/vcmi/README13
-rw-r--r--games/vcmi/README.GameData6
-rw-r--r--games/vcmi/slack-desc2
-rw-r--r--games/vcmi/vcmi.SlackBuild40
-rw-r--r--games/vcmi/vcmi.info12
-rw-r--r--games/vectoroids/README2
-rw-r--r--games/vectoroids/doinst.sh9
-rw-r--r--games/vectoroids/icons/16.pngbin0 -> 1227 bytes
-rw-r--r--games/vectoroids/icons/32.pngbin0 -> 2279 bytes
-rw-r--r--games/vectoroids/icons/48.pngbin0 -> 4298 bytes
-rw-r--r--games/vectoroids/icons/64.pngbin0 -> 6211 bytes
-rw-r--r--games/vectoroids/vectoroids.SlackBuild53
-rw-r--r--games/vectoroids/vectoroids.desktop7
-rw-r--r--games/vectoroids/vectoroids.info2
-rw-r--r--games/vegastrike/README_SBo (renamed from games/vegastrike/README.SlackBuild)0
-rw-r--r--games/vegastrike/cmake/FindGTK2.cmake946
-rw-r--r--games/vegastrike/cmake/FindPackageHandleStandardArgs.cmake466
-rw-r--r--games/vegastrike/cmake/FindPackageMessage.cmake48
-rw-r--r--games/vegastrike/cmake/SelectLibraryConfigurations.cmake80
-rw-r--r--games/vegastrike/patches/ordered_pointer_comparison.diff129
-rw-r--r--games/vegastrike/patches/patch-0.5.1.r1_2216
-rw-r--r--games/vegastrike/vegastrike.SlackBuild23
-rw-r--r--games/vegastrike/vegastrike.info2
-rw-r--r--games/vera/02_direntry.diff29
-rw-r--r--games/vera/README12
-rw-r--r--games/vera/doinst.sh11
-rw-r--r--games/vera/douninst.sh6
-rw-r--r--games/vera/mkwtfdb.pl509
-rw-r--r--games/vera/slack-desc2
-rw-r--r--games/vera/utf8_and_double_brackets.diff44
-rw-r--r--games/vera/vera.678
-rw-r--r--games/vera/vera.SlackBuild74
-rw-r--r--games/vera/vera.info6
-rw-r--r--games/vera/vera.rst59
-rw-r--r--games/vice-libretro/README12
-rw-r--r--games/vice-libretro/slack-desc19
-rw-r--r--games/vice-libretro/vice-libretro.SlackBuild96
-rw-r--r--games/vice-libretro/vice-libretro.info10
-rw-r--r--games/virtualjaguar-libretro/README5
-rw-r--r--games/virtualjaguar-libretro/slack-desc19
-rw-r--r--games/virtualjaguar-libretro/virtualjaguar-libretro.SlackBuild82
-rw-r--r--games/virtualjaguar-libretro/virtualjaguar-libretro.info10
-rw-r--r--games/vitaquake2-libretro/vitaquake2-libretro.SlackBuild27
-rw-r--r--games/vitaquake2-libretro/vitaquake2-libretro.info6
-rw-r--r--games/vitetris/vitetris.SlackBuild16
-rw-r--r--games/vkBasalt/README53
-rw-r--r--games/vkBasalt/slack-desc19
-rw-r--r--games/vkBasalt/vkBasalt.SlackBuild112
-rw-r--r--games/vkBasalt/vkBasalt.info10
-rw-r--r--games/vkQuake/README2
-rw-r--r--games/vkQuake/vkQuake.SlackBuild25
-rw-r--r--games/vkQuake/vkQuake.info10
-rw-r--r--games/vms-empire/vms-empire.SlackBuild45
-rw-r--r--games/voxelands/README9
-rw-r--r--games/voxelands/voxelands.SlackBuild28
-rw-r--r--games/voxelands/voxelands.info10
-rw-r--r--games/wadext/README6
-rw-r--r--games/wadext/slack-desc19
-rw-r--r--games/wadext/wadext.SlackBuild111
-rw-r--r--games/wadext/wadext.info10
-rw-r--r--games/wargus/README14
-rw-r--r--games/wargus/README_SBo.txt24
-rw-r--r--games/wargus/doinst.sh6
-rw-r--r--games/wargus/wargus.SlackBuild36
-rw-r--r--games/wargus/wargus.info4
-rw-r--r--games/wargus/wartool.ffmpeg.diff129
-rw-r--r--games/warmux/README13
-rw-r--r--games/warmux/doinst.sh4
-rw-r--r--games/warmux/patches/gcc47.patch9
-rw-r--r--games/warmux/patches/include-zlib.patch11
-rw-r--r--games/warmux/slack-desc19
-rw-r--r--games/warmux/warmux.SlackBuild114
-rw-r--r--games/warmux/warmux.info10
-rw-r--r--games/warsow/warsow.SlackBuild41
-rw-r--r--games/warsow/warsow.info8
-rw-r--r--games/warzone2100/README7
-rw-r--r--games/warzone2100/warzone2100.SlackBuild28
-rw-r--r--games/warzone2100/warzone2100.info10
-rw-r--r--games/waterCloset/README5
-rw-r--r--games/waterCloset/doinst.sh5
-rw-r--r--games/waterCloset/waterCloset.SlackBuild41
-rw-r--r--games/waterCloset/waterCloset.info4
-rw-r--r--games/wesnoth/README9
-rw-r--r--games/wesnoth/wesnoth.SlackBuild25
-rw-r--r--games/wesnoth/wesnoth.info10
-rw-r--r--games/widelands/doinst.sh6
-rw-r--r--games/widelands/widelands-1.0-boost-1.77.patch16
-rw-r--r--games/widelands/widelands-gcc47.patch12
-rw-r--r--games/widelands/widelands.SlackBuild67
-rw-r--r--games/widelands/widelands.desktop10
-rw-r--r--games/widelands/widelands.info10
-rw-r--r--games/wmquake/README22
-rw-r--r--games/wmquake/slack-desc19
-rw-r--r--games/wmquake/wmquake.SlackBuild113
-rw-r--r--games/wmquake/wmquake.info10
-rw-r--r--games/wmquake/wmquake.sh12
-rw-r--r--games/wolf4sdl/README13
-rw-r--r--games/wolf4sdl/datadir.diff.gzbin2109 -> 0 bytes
-rw-r--r--games/wolf4sdl/desktop/wolf4sdl-spear-demo.desktop7
-rw-r--r--games/wolf4sdl/desktop/wolf4sdl-spear-full.desktop7
-rw-r--r--games/wolf4sdl/desktop/wolf4sdl-wolf3d-demo.desktop7
-rw-r--r--games/wolf4sdl/desktop/wolf4sdl-wolf3d-full.desktop7
-rw-r--r--games/wolf4sdl/doinst.sh6
-rw-r--r--games/wolf4sdl/exename.diff.gzbin626 -> 0 bytes
-rw-r--r--games/wolf4sdl/git2tarxz.sh52
-rw-r--r--games/wolf4sdl/icons/128.pngbin0 -> 6206 bytes
-rw-r--r--games/wolf4sdl/icons/16.pngbin0 -> 785 bytes
-rw-r--r--games/wolf4sdl/icons/22.pngbin0 -> 1150 bytes
-rw-r--r--games/wolf4sdl/icons/32.pngbin0 -> 1506 bytes
-rw-r--r--games/wolf4sdl/icons/48.pngbin0 -> 2462 bytes
-rw-r--r--games/wolf4sdl/patches/datadir.diff311
-rw-r--r--games/wolf4sdl/patches/exename.diff32
-rw-r--r--games/wolf4sdl/patches/gameplay.diff270
-rw-r--r--games/wolf4sdl/wolf4sdl-spear-demo.desktop8
-rw-r--r--games/wolf4sdl/wolf4sdl-spear-full.desktop8
-rw-r--r--games/wolf4sdl/wolf4sdl-wolf3d-demo.desktop8
-rw-r--r--games/wolf4sdl/wolf4sdl-wolf3d-full.desktop8
-rw-r--r--games/wolf4sdl/wolf4sdl.644
-rw-r--r--games/wolf4sdl/wolf4sdl.SlackBuild106
-rw-r--r--games/wolf4sdl/wolf4sdl.info14
-rw-r--r--games/wolf4sdl/wolf4sdl.pngbin753 -> 0 bytes
-rw-r--r--games/wolfmame/README12
-rw-r--r--games/wolfmame/doinst.sh3
-rw-r--r--games/wolfmame/slack-desc19
-rw-r--r--games/wolfmame/wolfmame22
-rw-r--r--games/wolfmame/wolfmame.SlackBuild140
-rw-r--r--games/wolfmame/wolfmame.desktop6
-rw-r--r--games/wolfmame/wolfmame.info10
-rw-r--r--games/wolfmame/wolfmame.pngbin0 -> 8010 bytes
-rw-r--r--games/wordwarvi/wordwarvi.SlackBuild38
-rw-r--r--games/wordwarvi/wordwarvi.desktop2
-rw-r--r--games/wordwarvi/wordwarvi.info8
-rw-r--r--games/worldofgoo/README6
-rw-r--r--games/worldofgoo/worldofgoo.SlackBuild16
-rw-r--r--games/worldofgoo/worldofgoo.info4
-rw-r--r--games/worldofpadman/worldofpadman.SlackBuild122
-rw-r--r--games/worldofpadman/worldofpadman.desktop6
-rw-r--r--games/worldofpadman/wrapper.sh10
-rw-r--r--games/x16emu/README1
-rw-r--r--games/x16emu/slack-desc19
-rw-r--r--games/x16emu/x16emu.SlackBuild86
-rw-r--r--games/x16emu/x16emu.info10
-rw-r--r--games/xarchon/doinst.sh6
-rw-r--r--games/xarchon/patches/defaultfont.diff22
-rw-r--r--games/xarchon/patches/newgccfix.diff21
-rw-r--r--games/xarchon/xarchon.SlackBuild56
-rw-r--r--games/xarchon/xarchon.desktop2
-rw-r--r--games/xarchon/xarchon.info2
-rw-r--r--games/xcowsay/xcowsay.SlackBuild21
-rw-r--r--games/xcowsay/xcowsay.info10
-rw-r--r--games/xcpc/slack-desc2
-rw-r--r--games/xcpc/xcpc.SlackBuild18
-rw-r--r--games/xcpc/xcpc.info10
-rw-r--r--games/xemu/README3
-rw-r--r--games/xemu/doinst.sh9
-rw-r--r--games/xemu/slack-desc19
-rw-r--r--games/xemu/xemu.SlackBuild155
-rw-r--r--games/xemu/xemu.info24
-rw-r--r--games/xlennart/xlennart.SlackBuild16
-rw-r--r--games/xmahjongg/xmahjongg.SlackBuild16
-rw-r--r--games/xmoto/README11
-rw-r--r--games/xmoto/gcc-4.7.patch10
-rw-r--r--games/xmoto/xmoto.SlackBuild81
-rw-r--r--games/xmoto/xmoto.info6
-rw-r--r--games/xonotic/0d3d1f2655901776b2fc3e911eb78478412f789a.diff31
-rw-r--r--games/xonotic/README10
-rw-r--r--games/xonotic/xonotic-sdl.desktop8
-rw-r--r--games/xonotic/xonotic.SlackBuild43
-rw-r--r--games/xonotic/xonotic.info12
-rw-r--r--games/xpilot-ng/xpilot-ng.SlackBuild16
-rw-r--r--games/xroar-roms/xroar-roms.SlackBuild25
-rw-r--r--games/xroar-roms/xroar-roms.info8
-rw-r--r--games/xroar/ChangeLog.old24
-rw-r--r--games/xroar/README9
-rw-r--r--games/xroar/README_SBo.txt32
-rw-r--r--games/xroar/doinst.sh10
-rw-r--r--games/xroar/douninst.sh16
-rw-r--r--games/xroar/icons/128.pngbin0 -> 6643 bytes
-rw-r--r--games/xroar/icons/16.pngbin0 -> 284 bytes
-rw-r--r--games/xroar/icons/22.pngbin0 -> 1534 bytes
-rw-r--r--games/xroar/icons/32.pngbin0 -> 368 bytes
-rw-r--r--games/xroar/icons/48.pngbin0 -> 1528 bytes
-rw-r--r--games/xroar/icons/64.pngbin0 -> 3866 bytes
-rw-r--r--games/xroar/slack-desc6
-rw-r--r--games/xroar/xroar.SlackBuild90
-rw-r--r--games/xroar/xroar.info10
-rw-r--r--games/xroar/xroar_coco_ntsc.desktop2
-rw-r--r--games/xroar/xroar_coco_pal.desktop2
-rw-r--r--games/xroar/xroar_d32.desktop2
-rw-r--r--games/xroar/xroar_d64.desktop2
-rw-r--r--games/xskat/xskat.SlackBuild22
-rw-r--r--games/xspacewarp/README8
-rw-r--r--games/xspacewarp/XSpacewarp267
-rw-r--r--games/xspacewarp/doinst.sh6
-rw-r--r--games/xspacewarp/slack-desc2
-rw-r--r--games/xspacewarp/winclose.diff78
-rw-r--r--games/xspacewarp/xspacewarp.SlackBuild82
-rw-r--r--games/xspacewarp/xspacewarp.desktop3
-rw-r--r--games/xspacewarp/xspacewarp.info2
-rw-r--r--games/xspacewarp/xspacewarp.man12
-rw-r--r--games/xu4/README24
-rw-r--r--games/xu4/README-SBo.txt50
-rw-r--r--games/xu4/doinst.sh6
-rw-r--r--games/xu4/icons/128.pngbin0 -> 11436 bytes
-rw-r--r--games/xu4/icons/16.pngbin0 -> 1232 bytes
-rw-r--r--games/xu4/icons/22.pngbin0 -> 1474 bytes
-rw-r--r--games/xu4/icons/32.pngbin0 -> 2565 bytes
-rw-r--r--games/xu4/profile_path.diff47
-rw-r--r--games/xu4/slack-desc6
-rw-r--r--games/xu4/u4.1240
-rw-r--r--games/xu4/u4.desktop8
-rw-r--r--games/xu4/xu4.6242
-rw-r--r--games/xu4/xu4.SlackBuild167
-rw-r--r--games/xu4/xu4.desktop8
-rw-r--r--games/xu4/xu4.info18
-rw-r--r--games/xye/README12
-rw-r--r--games/xye/xye.SlackBuild24
-rw-r--r--games/yabause/README9
-rw-r--r--games/yabause/qt-5.11.patch47
-rw-r--r--games/yabause/yabause.SlackBuild27
-rw-r--r--games/yae/README2
-rw-r--r--games/yae/doinst.sh6
-rw-r--r--games/yae/icons/128.pngbin0 -> 14134 bytes
-rw-r--r--games/yae/icons/16.pngbin0 -> 1161 bytes
-rw-r--r--games/yae/icons/32.pngbin0 -> 1914 bytes
-rw-r--r--games/yae/icons/48.pngbin0 -> 3306 bytes
-rw-r--r--games/yae/icons/64.pngbin0 -> 4852 bytes
-rw-r--r--games/yae/patches/allow_x_window_close.diff33
-rw-r--r--games/yae/yae.171
-rw-r--r--games/yae/yae.SlackBuild48
-rw-r--r--games/yae/yae.desktop4
-rw-r--r--games/yae/yae.info2
-rw-r--r--games/yae/yae.pngbin17291 -> 0 bytes
-rw-r--r--games/yae/yae.pod27
-rw-r--r--games/yahtzee/doinst.sh9
-rw-r--r--games/yahtzee/icons/128.png (renamed from games/yahtzee/yahtzee.png)bin18285 -> 18285 bytes
-rw-r--r--games/yahtzee/icons/16.pngbin0 -> 701 bytes
-rw-r--r--games/yahtzee/icons/32.pngbin0 -> 1914 bytes
-rw-r--r--games/yahtzee/icons/48.pngbin0 -> 3682 bytes
-rw-r--r--games/yahtzee/icons/64.pngbin0 -> 5725 bytes
-rw-r--r--games/yahtzee/yahtzee.SlackBuild46
-rw-r--r--games/yahtzee/yahtzee.desktop2
-rw-r--r--games/yahtzee/yahtzee.info8
-rw-r--r--games/yamagi-quake2/README15
-rw-r--r--games/yamagi-quake2/yamagi-quake2.SlackBuild30
-rw-r--r--games/yamagi-quake2/yamagi-quake2.info22
-rw-r--r--games/yar/doinst.sh6
-rw-r--r--games/yar/icons/16.pngbin0 -> 2327 bytes
-rw-r--r--games/yar/icons/32.pngbin0 -> 2861 bytes
-rw-r--r--games/yar/icons/48.pngbin0 -> 3525 bytes
-rw-r--r--games/yar/icons/64.pngbin0 -> 1839 bytes
-rw-r--r--games/yar/yar.SlackBuild40
-rw-r--r--games/yar/yar.desktop2
-rw-r--r--games/yar/yar.info6
-rw-r--r--games/yar/yar.pngbin795 -> 0 bytes
-rw-r--r--games/yarntown/yarntown.SlackBuild16
-rw-r--r--games/yetris/yetris.SlackBuild16
-rw-r--r--games/yetris/yetris.info2
-rw-r--r--games/z26/README16
-rw-r--r--games/z26/slack-desc19
-rw-r--r--games/z26/statify.sh22
-rw-r--r--games/z26/z26.SlackBuild96
-rw-r--r--games/z26/z26.info12
-rw-r--r--games/z26v3/README24
-rw-r--r--games/z26v3/doinst.sh7
-rw-r--r--games/z26v3/fixsegfault.diff.gzbin253 -> 0 bytes
-rw-r--r--games/z26v3/slack-desc19
-rw-r--r--games/z26v3/z26v3.SlackBuild94
-rw-r--r--games/z26v3/z26v3.desktop10
-rw-r--r--games/z26v3/z26v3.info10
-rw-r--r--games/zaz/README14
-rw-r--r--games/zaz/disable_sdl_dga_mouse.diff14
-rw-r--r--games/zaz/doinst.sh6
-rw-r--r--games/zaz/slack-desc6
-rw-r--r--games/zaz/zaz.6143
-rw-r--r--games/zaz/zaz.SlackBuild64
-rw-r--r--games/zaz/zaz.rst122
-rw-r--r--games/zbom/zbom.SlackBuild16
-rw-r--r--games/zdbsp/zdbsp.62
-rw-r--r--games/zdbsp/zdbsp.SlackBuild25
-rw-r--r--games/zdbsp/zdbsp.info6
-rw-r--r--games/zdoom/README26
-rw-r--r--games/zdoom/doinst.sh5
-rw-r--r--games/zdoom/icons/128.pngbin0 -> 25576 bytes
-rw-r--r--games/zdoom/icons/16.pngbin0 -> 764 bytes
-rw-r--r--games/zdoom/icons/32.pngbin0 -> 2278 bytes
-rw-r--r--games/zdoom/icons/48.pngbin0 -> 4817 bytes
-rw-r--r--games/zdoom/icons/64.pngbin0 -> 7415 bytes
-rw-r--r--games/zdoom/zdoom.SlackBuild50
-rw-r--r--games/zdoom/zdoom.desktop2
-rw-r--r--games/zdoom/zdoom.info4
-rw-r--r--games/zdoom/zdoom.pngbin1738 -> 0 bytes
-rw-r--r--games/zelda-roth-se/README13
-rw-r--r--games/zelda-roth-se/zelda-roth-se.SlackBuild16
-rw-r--r--games/zelda-xd2-mercuris-chess/zelda-xd2-mercuris-chess.SlackBuild16
-rw-r--r--games/zennode/README16
-rw-r--r--games/zennode/slack-desc14
-rw-r--r--games/zennode/zennode-tools.688
-rw-r--r--games/zennode/zennode-tools.rst74
-rw-r--r--games/zennode/zennode.64
-rw-r--r--games/zennode/zennode.SlackBuild50
-rw-r--r--games/zennode/zennode.info6
-rw-r--r--games/znake/znake.SlackBuild34
-rw-r--r--games/zod-engine/zod-engine.SlackBuild23
-rw-r--r--games/zod-engine/zod-engine.info2
-rw-r--r--games/zoom/README18
-rw-r--r--games/zoom/doinst.sh5
-rw-r--r--games/zoom/icons/128.png (renamed from games/zoom/zoom.png)bin20793 -> 20793 bytes
-rw-r--r--games/zoom/icons/16.pngbin0 -> 744 bytes
-rw-r--r--games/zoom/icons/256.pngbin0 -> 67911 bytes
-rw-r--r--games/zoom/icons/32.pngbin0 -> 1946 bytes
-rw-r--r--games/zoom/icons/48.pngbin0 -> 4980 bytes
-rw-r--r--games/zoom/icons/64.pngbin0 -> 7558 bytes
-rw-r--r--games/zoom/no_inline.diff120
-rw-r--r--games/zoom/patches/acinclude.patch9
-rw-r--r--games/zoom/patches/avoid-v6-set-colours-crash.patch18
-rw-r--r--games/zoom/patches/config_xft.diff (renamed from games/zoom/config_xft.diff)0
-rw-r--r--games/zoom/patches/enable-antialiasing.patch15
-rw-r--r--games/zoom/patches/remove_rice.diff (renamed from games/zoom/remove_rice.diff)0
-rw-r--r--games/zoom/patches/restore-return.patch33
-rw-r--r--games/zoom/patches/series8
-rw-r--r--games/zoom/patches/static-inline.patch45
-rw-r--r--games/zoom/patches/zoomrc_in_etc.diff12
-rw-r--r--games/zoom/slack-desc8
-rw-r--r--games/zoom/zoom.172
-rw-r--r--games/zoom/zoom.SlackBuild92
-rw-r--r--games/zoom/zoom.desktop2
-rw-r--r--games/zoom/zoom.info6
-rw-r--r--games/zork-mit/README8
-rw-r--r--games/zork-mit/doinst.sh9
-rw-r--r--games/zork-mit/git2tarxz.sh70
-rw-r--r--games/zork-mit/icons/32.pngbin0 -> 4069 bytes
-rw-r--r--games/zork-mit/icons/48.pngbin0 -> 7102 bytes
-rw-r--r--games/zork-mit/icons/64.pngbin0 -> 2974 bytes
-rw-r--r--games/zork-mit/slack-desc19
-rw-r--r--games/zork-mit/zork-mit.SlackBuild101
-rw-r--r--games/zork-mit/zork-mit.desktop9
-rw-r--r--games/zork-mit/zork-mit.info10
-rw-r--r--games/zork/README11
-rw-r--r--games/zork/desktop/zork1.desktop2
-rw-r--r--games/zork/desktop/zork2.desktop2
-rw-r--r--games/zork/desktop/zork3.desktop2
-rw-r--r--games/zork/desktop/ztuu.desktop2
-rw-r--r--games/zork/icons/32.pngbin0 -> 2776 bytes
-rw-r--r--games/zork/icons/48.pngbin0 -> 5547 bytes
-rw-r--r--games/zork/icons/64.pngbin0 -> 1028 bytes
-rw-r--r--games/zork/mkicons.sh26
-rw-r--r--games/zork/zork.SlackBuild77
-rw-r--r--games/zork/zork.info4
-rw-r--r--games/zork/zork.pngbin423 -> 0 bytes
-rw-r--r--games/zork/zorkwrapper.sh (renamed from games/zork/zork.sh)0
-rw-r--r--games/zork/zorkwrapper.sh.6103
-rw-r--r--games/zork/zorkwrapper.sh.rst84
-rw-r--r--games/zsdx/zsdx.SlackBuild16
-rw-r--r--games/zseal/README26
-rw-r--r--games/zseal/slack-desc4
-rw-r--r--games/zseal/zseal.SlackBuild16
-rw-r--r--games/zsnes/0012-Fix-build-with-gcc-4.7.patch24
-rw-r--r--games/zsnes/README28
-rw-r--r--games/zsnes/doinst.sh7
-rw-r--r--games/zsnes/sbo.diff71
-rw-r--r--games/zsnes/slack-desc6
-rw-r--r--games/zsnes/zsnes-1.51-libpng15.patch12
-rw-r--r--games/zsnes/zsnes.SlackBuild202
-rw-r--r--games/zsnes/zsnes.desktop12
-rw-r--r--games/zsnes/zsnes.info16
-rw-r--r--games/zsnes/zsnes.pngbin8010 -> 0 bytes
-rw-r--r--games/zsxd/zsxd.SlackBuild16
-rw-r--r--games/ztools/README6
-rw-r--r--games/ztools/ztools.SlackBuild37
-rw-r--r--games/ztools/ztools.info10
-rw-r--r--games/ztrack/ztrack.SlackBuild16
2728 files changed, 55162 insertions, 23888 deletions
diff --git a/games/0ad-data/0ad-data.SlackBuild b/games/0ad-data/0ad-data.SlackBuild
index ab69ec266e..f0e3c22489 100644
--- a/games/0ad-data/0ad-data.SlackBuild
+++ b/games/0ad-data/0ad-data.SlackBuild
@@ -1,8 +1,8 @@
-#!/bin/sh
+#!/bin/bash
#
# Slackware build script for 0 A.D. Data
#
-# Copyright 2020 Tim Dickson, Scotland
+# Copyright 2020-2022 Tim Dickson, Scotland
# Copyright 2016-2017 Reedych <reedych@ya.ru>
# Copyright 2010-2015 Erik W. Hanson, Minneapolis, MN, USA
# All rights reserved.
@@ -24,15 +24,25 @@
# OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF THIS SOFTWARE, EVEN IF
# ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
+cd $(dirname $0) ; CWD=$(pwd)
+
PRGNAM=0ad-data
DATANAM=0ad
-VERSION=${VERSION:-0.0.23b}
+VERSION=${VERSION:-0.0.26}
RELEASE=${RELEASE:-alpha}
ARCH=noarch
BUILD=${BUILD:-1}
TAG=${TAG:-_SBo}
+PKGTYPE=${PKGTYPE:-tgz}
+
+# If the variable PRINT_PACKAGE_NAME is set, then this script will report what
+# the name of the created package would be, and then exit. This information
+# could be useful to other scripts.
+if [ ! -z "${PRINT_PACKAGE_NAME}" ]; then
+ echo "$PRGNAM-$VERSION-$ARCH-$BUILD$TAG.$PKGTYPE"
+ exit 0
+fi
-CWD=$(pwd)
TMP=${TMP:-/tmp/SBo}
PKG=$TMP/package-$PRGNAM
OUTPUT=${OUTPUT:-/tmp}
@@ -41,10 +51,10 @@ set -eu
rm -rf $PKG
mkdir -p $TMP $PKG $OUTPUT
-cd $TMP
-rm -rf $DATANAM-$VERSION-$RELEASE
-tar xvf $CWD/$DATANAM-$VERSION-$RELEASE-unix-data.tar.xz
-cd $DATANAM-$VERSION-$RELEASE
+mkdir -p $PKG/usr/share/games/0ad
+cd $PKG/usr/share/games/0ad
+tar --strip-components=3 -xvf $CWD/$DATANAM-$VERSION-$RELEASE-unix-data.tar.xz $DATANAM-$VERSION-$RELEASE/binaries/data/
+cd $PKG
chown -R root:root .
find -L . \
\( -perm 777 -o -perm 775 -o -perm 750 -o -perm 711 -o -perm 555 \
@@ -52,9 +62,6 @@ find -L . \
\( -perm 666 -o -perm 664 -o -perm 640 -o -perm 600 -o -perm 444 \
-o -perm 440 -o -perm 400 \) -exec chmod 644 {} \;
-mkdir -p $PKG/usr/share/games
-cp -rv binaries/data $PKG/usr/share/games/0ad
-
mkdir -p $PKG/usr/doc/$PRGNAM-$VERSION
cat $CWD/$PRGNAM.SlackBuild > $PKG/usr/doc/$PRGNAM-$VERSION/$PRGNAM.SlackBuild
@@ -62,4 +69,4 @@ mkdir -p $PKG/install
cat $CWD/slack-desc > $PKG/install/slack-desc
cd $PKG
-/sbin/makepkg -l y -c n $OUTPUT/$PRGNAM-$VERSION-$ARCH-$BUILD$TAG.${PKGTYPE:-tgz}
+/sbin/makepkg -l y -c n $OUTPUT/$PRGNAM-$VERSION-$ARCH-$BUILD$TAG.$PKGTYPE
diff --git a/games/0ad-data/0ad-data.info b/games/0ad-data/0ad-data.info
index 1a3dd341a6..6f9a2ab55c 100644
--- a/games/0ad-data/0ad-data.info
+++ b/games/0ad-data/0ad-data.info
@@ -1,8 +1,8 @@
PRGNAM="0ad-data"
-VERSION="0.0.23b"
+VERSION="0.0.26"
HOMEPAGE="https://play0ad.com/"
-DOWNLOAD="http://releases.wildfiregames.com/0ad-0.0.23b-alpha-unix-data.tar.xz"
-MD5SUM="4eee6b207892552cd3e0a408b15c191d"
+DOWNLOAD="http://releases.wildfiregames.com/0ad-0.0.26-alpha-unix-data.tar.xz"
+MD5SUM="b023f0f7045dc020f97be6c0df9f9a7e"
DOWNLOAD_x86_64=""
MD5SUM_x86_64=""
REQUIRES=""
diff --git a/games/0ad-data/README b/games/0ad-data/README
index 55cf0bb808..c8c96cc0b0 100644
--- a/games/0ad-data/README
+++ b/games/0ad-data/README
@@ -1,3 +1,6 @@
Data for the real-time strategy game 0 A.D.
-Note: building this package needs a lot of space (~3GB) in $TMP
+the download is currently 1.3GB
+Note: building this package needs a lot of space (~7.8GB) in $TMP
+1.7G for the created package and the rest for the extracted data
+and uncompressed package.
diff --git a/games/0ad/0ad.SlackBuild b/games/0ad/0ad.SlackBuild
index 514f61c116..b6c52e7c61 100644
--- a/games/0ad/0ad.SlackBuild
+++ b/games/0ad/0ad.SlackBuild
@@ -1,8 +1,8 @@
-#!/bin/sh
+#!/bin/bash
#
# Slackware build script for 0.A.D.
#
-# Copyright 2020 Tim Dickson, Scotland
+# Copyright 2020-2023 Tim Dickson, Scotland
# Copyright 2016-2017 Reedych <reedych@ya.ru>
# Copyright 2010-2016 Erik W. Hanson, Minneapolis, MN, USA
# All rights reserved.
@@ -24,13 +24,16 @@
# OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF THIS SOFTWARE, EVEN IF
# ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
+#build 3 adds patches for fmt >=v10
+
+cd $(dirname $0) ; CWD=$(pwd)
+
PRGNAM=0ad
-VERSION=${VERSION:-0.0.23b}
+VERSION=${VERSION:-0.0.26}
RELEASE=${RELEASE:-alpha}
-BUILD=${BUILD:-2}
+BUILD=${BUILD:-3}
TAG=${TAG:-_SBo}
-
-CWD=$(pwd)
+PKGTYPE=${PKGTYPE:-tgz}
TMP=${TMP:-/tmp/SBo}
PKG=$TMP/package-$PRGNAM
OUTPUT=${OUTPUT:-/tmp}
@@ -43,6 +46,14 @@ if [ -z "$ARCH" ]; then
esac
fi
+# If the variable PRINT_PACKAGE_NAME is set, then this script will report what
+# the name of the created package would be, and then exit. This information
+# could be useful to other scripts.
+if [ ! -z "${PRINT_PACKAGE_NAME}" ]; then
+ echo "$PRGNAM-$VERSION-$ARCH-$BUILD$TAG.$PKGTYPE"
+ exit 0
+fi
+
if [ "$ARCH" = "i586" ]; then
SLKCFLAGS="-O2 -march=i586 -mtune=i686"
LIBDIRSUFFIX=""
@@ -72,29 +83,44 @@ find -L . \
\( -perm 666 -o -perm 664 -o -perm 640 -o -perm 600 -o -perm 444 \
-o -perm 440 -o -perm 400 \) -exec chmod 644 {} \;
+unset CPPFLAGS
+
export CFLAGS="$SLKCFLAGS"
-export CXXFLAGS="$SLKCFLAGS -fpermissive"
-# and yes, it's really necessary to set CPPFLAGS like this :(
-export CPPFLAGS="$SLKCFLAGS -fpermissive"
+export CXXFLAGS="$SLKCFLAGS -DU_USING_ICU_NAMESPACE=1"
export LDFLAGS="-L/usr/lib${LIBDIRSUFFIX}"
-
-# Fix boost names
-sed -i 's/-mt//g' build/premake/extern_libs4.lua
-
-#allow for ATLAS to be yes.
+export SDL2_CONFIG="/usr/bin/sdl2-config"
+#prevent out of tree files getting written.
+mkdir -p cargoh
+export CARGO_HOME="$TMP/$PRGNAM-$VERSION-$RELEASE/cargoh"
+
+#add patches for fmt>9.1.0 ie. 10.1.1
+sed -i 's/, header.GetType()/, static_cast<int>(header.GetType())/g' source/network/NetMessage.cpp
+sed -i 's/, arrayType/, static_cast<int>(arrayType)/g' source/simulation2/serialization/BinarySerializer.cpp
+
+# Fix boost names, include paths and remove isystem. commented stuff is fixed upstream already
+sed -i 's|-mt||g' build/premake/extern_libs5.lua || exit 1
+#sed -i 's|/usr/local/include|/usr/include|' build/premake/{extern_libs5.lua,premake5.lua} || exit 1
+sed -i 's|/usr/local/include|/usr/include|' build/premake/extern_libs5.lua || exit 1
+sed -i 's|-isystem |-I|' build/premake/premake5/{src/tools/gcc.lua,tests/tools/test_gcc.lua} || exit 1
+
+#sed -i '/third_party/a #include <deque>' source/ps/CLogger.h || exit 1
+#sed -i '/ps\/Profiler2/a #include <stack>' source/ps/Profiler2GPU.cpp || exit 1
+
+#allow for ATLAS to be yes or no. if not specified we defaul to enable
+[ "x$ATLAS" = "xno" ]&& ATLAS="disable"
[ "x$ATLAS" = "xyes" ]&& ATLAS="enable"
# build/workspaces/update-workspaces.sh
# have a root check, let's disable it.
patch -p1 < $CWD/disable-root-check.patch
-#apply a segfault fixing patch
-#sourced from https://code.wildfiregames.com/file/data/nryu3qhun4v6uroyiqoc/PHID-FILE-osgvknec7zmfuja5xqq4/D1852.diff
-patch -p2 < $CWD/D1852.diff
build/workspaces/update-workspaces.sh \
+ --without-pch \
--bindir=/usr/games \
--datadir=/usr/share/games/0ad \
--libdir=/usr/lib${LIBDIRSUFFIX}/0ad \
- --${ATLAS:-disable}-atlas
+ --${ATLAS:-enable}-atlas
+
+sed -i 's|-isystem |-I|g' build/workspaces/gcc/*.make || exit 1
make CONFIG=Release -C build/workspaces/gcc
@@ -116,8 +142,8 @@ install -Dm 0644 build/resources/0ad.desktop $PKG/usr/share/applications/0ad.des
install -Dm 0644 build/resources/0ad.png $PKG/usr/share/pixmaps/0ad.png
install -Dm 0755 build/resources/0ad.sh $PKG/usr/games/0ad
-sed -i "s,/usr/bin/,/usr/games/," $PKG/usr/games/0ad
-sed -i "s,/usr/bin/,/usr/games/," $PKG/usr/share/applications/0ad.desktop
+#sed -i "s,/usr/bin/,/usr/games/," $PKG/usr/games/0ad
+#sed -i "s,/usr/bin/,/usr/games/," $PKG/usr/share/applications/0ad.desktop
find $PKG | xargs file | grep -e "executable" -e "shared object" | grep ELF \
| cut -f 1 -d : | xargs strip --strip-unneeded 2> /dev/null
@@ -134,4 +160,4 @@ cat $CWD/slack-desc > $PKG/install/slack-desc
cat $CWD/doinst.sh > $PKG/install/doinst.sh
cd $PKG
-/sbin/makepkg -l y -c n $OUTPUT/$PRGNAM-$VERSION-$ARCH-$BUILD$TAG.${PKGTYPE:-tgz}
+/sbin/makepkg -l y -c n $OUTPUT/$PRGNAM-$VERSION-$ARCH-$BUILD$TAG.$PKGTYPE
diff --git a/games/0ad/0ad.info b/games/0ad/0ad.info
index 848b05848e..59eb4a4fdf 100644
--- a/games/0ad/0ad.info
+++ b/games/0ad/0ad.info
@@ -1,10 +1,10 @@
PRGNAM="0ad"
-VERSION="0.0.23b"
+VERSION="0.0.26"
HOMEPAGE="https://play0ad.com/"
-DOWNLOAD="http://releases.wildfiregames.com/0ad-0.0.23b-alpha-unix-build.tar.xz"
-MD5SUM="4fa111410ea55de7a013406ac1013668"
+DOWNLOAD="http://releases.wildfiregames.com/0ad-0.0.26-alpha-unix-build.tar.xz"
+MD5SUM="d0d3ed10769dee2254aa196a9619bd57"
DOWNLOAD_x86_64=""
MD5SUM_x86_64=""
-REQUIRES="0ad-data OpenAL enet gloox miniupnpc SDL2 libsodium"
+REQUIRES="0ad-data enet fmt gloox miniupnpc wxGTK3"
MAINTAINER="Tim Dickson"
EMAIL="dickson.tim@googlemail.com"
diff --git a/games/0ad/D1852.diff b/games/0ad/D1852.diff
deleted file mode 100644
index 131c8210a0..0000000000
--- a/games/0ad/D1852.diff
+++ /dev/null
@@ -1,213 +0,0 @@
-Index: ps/trunk/source/ps/Replay.cpp
-===================================================================
---- ps/trunk/source/ps/Replay.cpp
-+++ ps/trunk/source/ps/Replay.cpp
-@@ -1,4 +1,4 @@
--/* Copyright (C) 2018 Wildfire Games.
-+/* Copyright (C) 2019 Wildfire Games.
- * This file is part of 0 A.D.
- *
- * 0 A.D. is free software: you can redistribute it and/or modify
-@@ -72,7 +72,7 @@
- JS::RootedValue mods(cx, Mod::GetLoadedModsWithVersions(m_ScriptInterface));
- m_ScriptInterface.SetProperty(attribs, "mods", mods);
-
-- m_Directory = createDateIndexSubdirectory(VisualReplay::GetDirectoryName());
-+ m_Directory = createDateIndexSubdirectory(VisualReplay::GetDirectoryPath());
- debug_printf("Writing replay to %s\n", m_Directory.string8().c_str());
-
- m_Stream = new std::ofstream(OsString(m_Directory / L"commands.txt").c_str(), std::ofstream::out | std::ofstream::trunc);
-Index: ps/trunk/source/ps/VisualReplay.h
-===================================================================
---- ps/trunk/source/ps/VisualReplay.h
-+++ ps/trunk/source/ps/VisualReplay.h
-@@ -1,4 +1,4 @@
--/* Copyright (C) 2017 Wildfire Games.
-+/* Copyright (C) 2019 Wildfire Games.
- * This file is part of 0 A.D.
- *
- * 0 A.D. is free software: you can redistribute it and/or modify
-@@ -29,12 +29,20 @@
- {
-
- /**
-- * Returns the path to the sim-log directory (that contains the directories with the replay files.
-- *
-- * @param scriptInterface - the ScriptInterface in which to create the return data.
-- * @return OsPath the absolute file path
-+ * Returns the absolute path to the sim-log directory (that contains the directories with the replay files.
-+ */
-+OsPath GetDirectoryPath();
-+
-+/**
-+ * Returns the absolute path to the replay cache file.
-+ */
-+OsPath GetCacheFilePath();
-+
-+/**
-+ * Returns the absolute path to the temporary replay cache file used to
-+ * always have a valid cache file in place even if bad things happen.
- */
--OsPath GetDirectoryName();
-+OsPath GetTempCacheFilePath();
-
- /**
- * Replays the commands.txt file in the given subdirectory visually.
-Index: ps/trunk/source/ps/VisualReplay.cpp
-===================================================================
---- ps/trunk/source/ps/VisualReplay.cpp
-+++ ps/trunk/source/ps/VisualReplay.cpp
-@@ -40,13 +40,19 @@
- */
- const u8 minimumReplayDuration = 3;
-
--static const OsPath tempCacheFileName = VisualReplay::GetDirectoryName() / L"replayCache_temp.json";
--static const OsPath cacheFileName = VisualReplay::GetDirectoryName() / L"replayCache.json";
-+OsPath VisualReplay::GetDirectoryPath()
-+{
-+ return Paths(g_args).UserData() / "replays" / engine_version;
-+}
-+
-+OsPath VisualReplay::GetCacheFilePath()
-+{
-+ return GetDirectoryPath() / L"replayCache.json";
-+}
-
--OsPath VisualReplay::GetDirectoryName()
-+OsPath VisualReplay::GetTempCacheFilePath()
- {
-- const Paths paths(g_args);
-- return OsPath(paths.UserData() / "replays" / engine_version);
-+ return GetDirectoryPath() / L"replayCache_temp.json";
- }
-
- bool VisualReplay::StartVisualReplay(const OsPath& directory)
-@@ -55,7 +61,7 @@
- ENSURE(!g_NetClient);
- ENSURE(!g_Game);
-
-- const OsPath replayFile = VisualReplay::GetDirectoryName() / directory / L"commands.txt";
-+ const OsPath replayFile = VisualReplay::GetDirectoryPath() / directory / L"commands.txt";
-
- if (!FileExists(replayFile))
- return false;
-@@ -69,10 +75,10 @@
- JSContext* cx = scriptInterface.GetContext();
- JSAutoRequest rq(cx);
-
-- if (!FileExists(cacheFileName))
-+ if (!FileExists(GetCacheFilePath()))
- return false;
-
-- std::ifstream cacheStream(OsString(cacheFileName).c_str());
-+ std::ifstream cacheStream(OsString(GetCacheFilePath()).c_str());
- CStr cacheStr((std::istreambuf_iterator<char>(cacheStream)), std::istreambuf_iterator<char>());
- cacheStream.close();
-
-@@ -85,7 +91,7 @@
- }
-
- LOGWARNING("The replay cache file is corrupted, it will be deleted");
-- wunlink(cacheFileName);
-+ wunlink(GetCacheFilePath());
- return false;
- }
-
-@@ -95,12 +101,12 @@
- JSAutoRequest rq(cx);
-
- JS::RootedValue replaysRooted(cx, JS::ObjectValue(*replays));
-- std::ofstream cacheStream(OsString(tempCacheFileName).c_str(), std::ofstream::out | std::ofstream::trunc);
-+ std::ofstream cacheStream(OsString(GetTempCacheFilePath()).c_str(), std::ofstream::out | std::ofstream::trunc);
- cacheStream << scriptInterface.StringifyJSON(&replaysRooted);
- cacheStream.close();
-
-- wunlink(cacheFileName);
-- if (wrename(tempCacheFileName, cacheFileName))
-+ wunlink(GetCacheFilePath());
-+ if (wrename(GetTempCacheFilePath(), GetCacheFilePath()))
- LOGERROR("Could not store the replay cache");
- }
-
-@@ -139,7 +145,7 @@
- JS::RootedObject replays(cx, JS_NewArrayObject(cx, 0));
- DirectoryNames directories;
-
-- if (GetDirectoryEntries(GetDirectoryName(), nullptr, &directories) != INFO::OK)
-+ if (GetDirectoryEntries(GetDirectoryPath(), nullptr, &directories) != INFO::OK)
- return replays;
-
- bool newReplays = false;
-@@ -155,7 +161,7 @@
- // Don't return, because we want to save our progress
- break;
-
-- const OsPath replayFile = GetDirectoryName() / directory / L"commands.txt";
-+ const OsPath replayFile = GetDirectoryPath() / directory / L"commands.txt";
-
- bool isNew = true;
- replayCacheMap::iterator it = fileList.find(directory);
-@@ -325,7 +331,7 @@
- JS::Value VisualReplay::LoadReplayData(const ScriptInterface& scriptInterface, const OsPath& directory)
- {
- // The directory argument must not be constant, otherwise concatenating will fail
-- const OsPath replayFile = GetDirectoryName() / directory / L"commands.txt";
-+ const OsPath replayFile = GetDirectoryPath() / directory / L"commands.txt";
-
- if (!FileExists(replayFile))
- return JS::NullValue();
-@@ -407,7 +413,7 @@
- if (replayDirectory.empty())
- return false;
-
-- const OsPath directory = GetDirectoryName() / replayDirectory;
-+ const OsPath directory = GetDirectoryPath() / replayDirectory;
- return DirectoryExists(directory) && DeleteDirectory(directory) == INFO::OK;
- }
-
-@@ -420,7 +426,7 @@
- pCxPrivate->pScriptInterface->Eval("({})", &attribs);
-
- // Return empty object if file doesn't exist
-- const OsPath replayFile = GetDirectoryName() / directoryName / L"commands.txt";
-+ const OsPath replayFile = GetDirectoryPath() / directoryName / L"commands.txt";
- if (!FileExists(replayFile))
- return attribs;
-
-@@ -483,7 +489,7 @@
-
- bool VisualReplay::HasReplayMetadata(const OsPath& directoryName)
- {
-- const OsPath filePath(GetDirectoryName() / directoryName / L"metadata.json");
-+ const OsPath filePath(GetDirectoryPath() / directoryName / L"metadata.json");
-
- if (!FileExists(filePath))
- return false;
-@@ -503,7 +509,7 @@
- JSAutoRequest rq(cx);
- JS::RootedValue metadata(cx);
-
-- std::ifstream* stream = new std::ifstream(OsString(GetDirectoryName() / directoryName / L"metadata.json").c_str());
-+ std::ifstream* stream = new std::ifstream(OsString(GetDirectoryPath() / directoryName / L"metadata.json").c_str());
- ENSURE(stream->good());
- CStr line;
- std::getline(*stream, line);
-Index: ps/trunk/source/ps/scripting/JSInterface_VisualReplay.cpp
-===================================================================
---- ps/trunk/source/ps/scripting/JSInterface_VisualReplay.cpp
-+++ ps/trunk/source/ps/scripting/JSInterface_VisualReplay.cpp
-@@ -1,4 +1,4 @@
--/* Copyright (C) 2018 Wildfire Games.
-+/* Copyright (C) 2019 Wildfire Games.
- * This file is part of 0 A.D.
- *
- * 0 A.D. is free software: you can redistribute it and/or modify
-@@ -61,7 +61,7 @@
-
- CStrW JSI_VisualReplay::GetReplayDirectoryName(ScriptInterface::CxPrivate* UNUSED(pCxPrivate), const CStrW& directoryName)
- {
-- return wstring_from_utf8(OsPath(VisualReplay::GetDirectoryName() / directoryName).string8());
-+ return wstring_from_utf8(OsPath(VisualReplay::GetDirectoryPath() / directoryName).string8());
- }
-
- void JSI_VisualReplay::RegisterScriptFunctions(const ScriptInterface& scriptInterface)
diff --git a/games/0ad/README b/games/0ad/README
index 43f9ef54df..6af05415e6 100644
--- a/games/0ad/README
+++ b/games/0ad/README
@@ -1,5 +1,5 @@
0 A.D. (pronounced "zero ey-dee") is a free, open-source, cross-platform
real-time strategy (RTS) game of ancient warfare.
-To include the Atlas editor, which requires wxPython3
- ATLAS=enable ./0ad.SlackBuild
+To omit the Atlas editor
+ ATLAS=disable ./0ad.SlackBuild
diff --git a/games/2048-in-terminal/2048-in-terminal.SlackBuild b/games/2048-in-terminal/2048-in-terminal.SlackBuild
new file mode 100644
index 0000000000..83dbe458ba
--- /dev/null
+++ b/games/2048-in-terminal/2048-in-terminal.SlackBuild
@@ -0,0 +1,99 @@
+#!/bin/bash
+
+# Slackware build script for 2048-in-terminal
+
+# Copyright 2022 K. Eugene Carlson Tsukuba, Japan
+# All rights reserved.
+#
+# Redistribution and use of this script, with or without modification, is
+# permitted provided that the following conditions are met:
+#
+# 1. Redistributions of this script must retain the above copyright
+# notice, this list of conditions and the following disclaimer.
+#
+# THIS SOFTWARE IS PROVIDED BY THE AUTHOR "AS IS" AND ANY EXPRESS OR IMPLIED
+# WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE IMPLIED WARRANTIES OF
+# MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE ARE DISCLAIMED. IN NO
+# EVENT SHALL THE AUTHOR BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL,
+# SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT LIMITED TO,
+# PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, DATA, OR PROFITS;
+# OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY,
+# WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR
+# OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF THIS SOFTWARE, EVEN IF
+# ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
+
+cd $(dirname $0) ; CWD=$(pwd)
+
+PRGNAM=2048-in-terminal
+VERSION=${VERSION:-bf22f86.20220614}
+SRCVER=${SRCVER:-bf22f868a2e0e572f22153468585ec0226a4b8b2}
+BUILD=${BUILD:-1}
+TAG=${TAG:-_SBo}
+PKGTYPE=${PKGTYPE:-tgz}
+
+if [ -z "$ARCH" ]; then
+ case "$( uname -m )" in
+ i?86) ARCH=i586 ;;
+ arm*) ARCH=arm ;;
+ *) ARCH=$( uname -m ) ;;
+ esac
+fi
+
+# If the variable PRINT_PACKAGE_NAME is set, then this script will report what
+# the name of the created package would be, and then exit. This information
+# could be useful to other scripts.
+if [ ! -z "${PRINT_PACKAGE_NAME}" ]; then
+ echo "$PRGNAM-$VERSION-$ARCH-$BUILD$TAG.$PKGTYPE"
+ exit 0
+fi
+
+TMP=${TMP:-/tmp/SBo}
+PKG=$TMP/package-$PRGNAM
+OUTPUT=${OUTPUT:-/tmp}
+
+if [ "$ARCH" = "i586" ]; then
+ SLKCFLAGS="-O2 -march=i586 -mtune=i686"
+elif [ "$ARCH" = "i686" ]; then
+ SLKCFLAGS="-O2 -march=i686 -mtune=i686"
+elif [ "$ARCH" = "x86_64" ]; then
+ SLKCFLAGS="-O2 -fPIC"
+else
+ SLKCFLAGS="-O2"
+fi
+
+set -e
+
+rm -rf $PKG
+mkdir -p $TMP $PKG $OUTPUT
+cd $TMP
+rm -rf $PRGNAM-$SRCVER
+unzip $CWD/$PRGNAM-$SRCVER.zip
+cd $PRGNAM-$SRCVER
+chown -R root:root .
+find -L . \
+ \( -perm 777 -o -perm 775 -o -perm 750 -o -perm 711 -o -perm 555 \
+ -o -perm 511 \) -exec chmod 755 {} \; -o \
+ \( -perm 666 -o -perm 664 -o -perm 640 -o -perm 600 -o -perm 444 \
+ -o -perm 440 -o -perm 400 \) -exec chmod 644 {} \;
+
+# Use DEFAULTSLIDE=no to have the game start without the sliding animation.
+if [ ${DEFAULTSLIDE:-yes} = no ]; then
+ sed -i 's|show_animations = 1|show_animations = 0|' src/main.c
+fi
+
+CFLAGS=$SLKCFLAGS \
+make
+
+mkdir -p $PKG/usr/games
+find . -type f -name $PRGNAM -exec install -m 755 {} $PKG/usr/games/ \;
+strip $PKG/usr/games/$PRGNAM
+
+mkdir -p $PKG/usr/doc/$PRGNAM-$VERSION
+cp -a LICENSE $PKG/usr/doc/$PRGNAM-$VERSION
+cat $CWD/$PRGNAM.SlackBuild > $PKG/usr/doc/$PRGNAM-$VERSION/$PRGNAM.SlackBuild
+
+mkdir -p $PKG/install
+cat $CWD/slack-desc > $PKG/install/slack-desc
+
+cd $PKG
+/sbin/makepkg -l y -c n $OUTPUT/$PRGNAM-$VERSION-$ARCH-$BUILD$TAG.$PKGTYPE
diff --git a/games/2048-in-terminal/2048-in-terminal.info b/games/2048-in-terminal/2048-in-terminal.info
new file mode 100644
index 0000000000..c3849115af
--- /dev/null
+++ b/games/2048-in-terminal/2048-in-terminal.info
@@ -0,0 +1,10 @@
+PRGNAM="2048-in-terminal"
+VERSION="bf22f86.20220614"
+HOMEPAGE="https://github.com/alewmoose/2048-in-terminal"
+DOWNLOAD="https://github.com/alewmoose/2048-in-terminal/archive/bf22f868a2e0e572f22153468585ec0226a4b8b2/2048-in-terminal-bf22f868a2e0e572f22153468585ec0226a4b8b2.zip"
+MD5SUM="ca8e21a00c3ed6cee06776980f3e586a"
+DOWNLOAD_x86_64=""
+MD5SUM_x86_64=""
+REQUIRES=""
+MAINTAINER="K. Eugene Carlson"
+EMAIL="kvngncrlsn@gmail.com"
diff --git a/games/2048-in-terminal/README b/games/2048-in-terminal/README
new file mode 100644
index 0000000000..f58c2d3b98
--- /dev/null
+++ b/games/2048-in-terminal/README
@@ -0,0 +1,13 @@
+2048-in-terminal (terminal-based 2048 clone)
+
+This is a clone of the "2048" grid game written in C for the terminal.
+
+Use the arrow or vi keys to move the blocks; other controls will appear
+onscreen. A game can be continued after quitting the program. The high
+score and game state are saved at $HOME/.2048.
+
+A sliding effect for moving blocks can be toggled on and off in-game.
+To have the program start with the animation turned off, use the
+following parameter when calling the SlackBuild:
+
+ DEFAULTSLIDE=no
diff --git a/games/2048-in-terminal/slack-desc b/games/2048-in-terminal/slack-desc
new file mode 100644
index 0000000000..8084389e53
--- /dev/null
+++ b/games/2048-in-terminal/slack-desc
@@ -0,0 +1,19 @@
+# HOW TO EDIT THIS FILE:
+# The "handy ruler" below makes it easier to edit a package description.
+# Line up the first '|' above the ':' following the base package name, and
+# the '|' on the right side marks the last column you can put a character in.
+# You must make exactly 11 lines for the formatting to be correct. It's also
+# customary to leave one space after the ':' except on otherwise blank lines.
+
+ |-----handy-ruler------------------------------------------------------|
+2048-in-terminal: 2048-in-terminal (terminal-based 2048 clone)
+2048-in-terminal:
+2048-in-terminal: 2048-in-terminal is a clone of the 2048 game written in C for the
+2048-in-terminal: terminal.
+2048-in-terminal:
+2048-in-terminal:
+2048-in-terminal:
+2048-in-terminal:
+2048-in-terminal:
+2048-in-terminal: Author: Alexander Grehov
+2048-in-terminal: Homepage: https://github.com/alewmoose/2048-in-terminal
diff --git a/games/3D-Fasteroids/3D-Fasteroids.SlackBuild b/games/3D-Fasteroids/3D-Fasteroids.SlackBuild
index 10c2e277e1..58d7ebb141 100644
--- a/games/3D-Fasteroids/3D-Fasteroids.SlackBuild
+++ b/games/3D-Fasteroids/3D-Fasteroids.SlackBuild
@@ -1,4 +1,4 @@
-#!/bin/sh
+#!/bin/bash
# Slackware build script for 3D-Fasteroids
@@ -22,11 +22,14 @@
# OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF THIS SOFTWARE, EVEN IF
# ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
+cd $(dirname $0) ; CWD=$(pwd)
+
PRGNAM=3D-Fasteroids
SRCNAM=3d-fasteroids
VERSION=${VERSION:-0.0.1}
BUILD=${BUILD:-1}
TAG=${TAG:-_SBo}
+PKGTYPE=${PKGTYPE:-tgz}
if [ -z "$ARCH" ]; then
case "$( uname -m )" in
@@ -36,7 +39,14 @@ if [ -z "$ARCH" ]; then
esac
fi
-CWD=$(pwd)
+# If the variable PRINT_PACKAGE_NAME is set, then this script will report what
+# the name of the created package would be, and then exit. This information
+# could be useful to other scripts.
+if [ ! -z "${PRINT_PACKAGE_NAME}" ]; then
+ echo "$PRGNAM-$VERSION-$ARCH-$BUILD$TAG.$PKGTYPE"
+ exit 0
+fi
+
TMP=${TMP:-/tmp/SBo}
PKG=$TMP/package-$PRGNAM
OUTPUT=${OUTPUT:-/tmp}
@@ -101,4 +111,4 @@ mkdir -p $PKG/install
cat $CWD/slack-desc > $PKG/install/slack-desc
cd $PKG
-/sbin/makepkg -l y -c n $OUTPUT/$PRGNAM-$VERSION-$ARCH-$BUILD$TAG.${PKGTYPE:-tgz}
+/sbin/makepkg -l y -c n $OUTPUT/$PRGNAM-$VERSION-$ARCH-$BUILD$TAG.$PKGTYPE
diff --git a/games/4digits/4digits.SlackBuild b/games/4digits/4digits.SlackBuild
index 81c6b88f32..38ee66076c 100644
--- a/games/4digits/4digits.SlackBuild
+++ b/games/4digits/4digits.SlackBuild
@@ -1,4 +1,4 @@
-#!/bin/sh
+#!/bin/bash
# Slackware build script for 4digits
@@ -23,10 +23,13 @@
# ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
+cd $(dirname $0) ; CWD=$(pwd)
+
PRGNAM=4digits
VERSION=${VERSION:-1.1.4}
BUILD=${BUILD:-1}
TAG=${TAG:-_SBo}
+PKGTYPE=${PKGTYPE:-tgz}
if [ -z "$ARCH" ]; then
case "$( uname -m )" in
@@ -36,7 +39,14 @@ if [ -z "$ARCH" ]; then
esac
fi
-CWD=$(pwd)
+# If the variable PRINT_PACKAGE_NAME is set, then this script will report what
+# the name of the created package would be, and then exit. This information
+# could be useful to other scripts.
+if [ ! -z "${PRINT_PACKAGE_NAME}" ]; then
+ echo "$PRGNAM-$VERSION-$ARCH-$BUILD$TAG.$PKGTYPE"
+ exit 0
+fi
+
TMP=${TMP:-/tmp/SBo}
PKG=$TMP/package-$PRGNAM
OUTPUT=${OUTPUT:-/tmp}
@@ -114,4 +124,4 @@ cat $CWD/slack-desc > $PKG/install/slack-desc
cat $CWD/doinst.sh > $PKG/install/doinst.sh
cd $PKG
-/sbin/makepkg -l y -c n $OUTPUT/$PRGNAM-$VERSION-$ARCH-$BUILD$TAG.${PKGTYPE:-tgz}
+/sbin/makepkg -l y -c n $OUTPUT/$PRGNAM-$VERSION-$ARCH-$BUILD$TAG.$PKGTYPE
diff --git a/games/4do-libretro/4do-libretro.SlackBuild b/games/4do-libretro/4do-libretro.SlackBuild
deleted file mode 100644
index 23e9ff32ef..0000000000
--- a/games/4do-libretro/4do-libretro.SlackBuild
+++ /dev/null
@@ -1,82 +0,0 @@
-#!/bin/sh
-
-# Slackware build script for 4do-libretro
-
-# Copyright 2016-2018 Hunter Sezen
-# All rights reserved.
-#
-# Redistribution and use of this script, with or without modification, is
-# permitted provided that the following conditions are met:
-#
-# 1. Redistributions of this script must retain the above copyright
-# notice, this list of conditions and the following disclaimer.
-#
-# THIS SOFTWARE IS PROVIDED BY THE AUTHOR "AS IS" AND ANY EXPRESS OR IMPLIED
-# WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE IMPLIED WARRANTIES OF
-# MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE ARE DISCLAIMED. IN NO
-# EVENT SHALL THE AUTHOR BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL,
-# SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT LIMITED TO,
-# PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, DATA, OR PROFITS;
-# OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY,
-# WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR
-# OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF THIS SOFTWARE, EVEN IF
-# ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
-
-PRGNAM=4do-libretro
-LIBNAM=$(echo $PRGNAM | tr - _)
-VERSION=${VERSION:-2018.09.29_e1fec6e}
-BUILD=${BUILD:-1}
-TAG=${TAG:-_SBo}
-
-if [ -z "$ARCH" ]; then
- case "$( uname -m )" in
- i?86) ARCH=i586 ;;
- arm*) ARCH=arm ;;
- *) ARCH=$( uname -m ) ;;
- esac
-fi
-
-CWD=$(pwd)
-TMP=${TMP:-/tmp/SBo}
-PKG=$TMP/package-$PRGNAM
-OUTPUT=${OUTPUT:-/tmp}
-
-LIBDIRSUFFIX=
-[ "$ARCH" = x86_64 ] && LIBDIRSUFFIX=64
-
-set -eu
-
-rm -rf $PKG
-mkdir -p $TMP $PKG $OUTPUT
-cd $TMP
-rm -rf $PRGNAM-$VERSION
-tar xvf $CWD/$PRGNAM-$VERSION.tar.xz
-cd $PRGNAM-$VERSION
-chown -R root:root .
-find -L . \
- \( -perm 777 -o -perm 775 -o -perm 750 -o -perm 711 -o -perm 555 \
- -o -perm 511 \) -exec chmod 755 {} \; -o \
- \( -perm 666 -o -perm 664 -o -perm 640 -o -perm 600 -o -perm 444 \
- -o -perm 440 -o -perm 400 \) -exec chmod 644 {} \;
-
-[ "${DEBUG:=0}" != 0 ] && DEBUG=1
-
-make DEBUG=$DEBUG GIT_VERSION="${VERSION#*_}"
-
-install -Dm0644 $LIBNAM.so $PKG/usr/lib${LIBDIRSUFFIX}/libretro/$LIBNAM.so
-install -Dm0644 $LIBNAM.info $PKG/usr/lib${LIBDIRSUFFIX}/libretro/info/$LIBNAM.info
-
-if [ $DEBUG = 0 ]; then
- find $PKG -print0 | xargs -0 file | grep -e "executable" -e "shared object" | grep ELF \
- | cut -f 1 -d : | xargs strip --strip-unneeded 2> /dev/null || true
-fi
-
-mkdir -p $PKG/usr/doc/$PRGNAM-$VERSION
-cp -a README.md $PKG/usr/doc/$PRGNAM-$VERSION
-cat $CWD/$PRGNAM.SlackBuild > $PKG/usr/doc/$PRGNAM-$VERSION/$PRGNAM.SlackBuild
-
-mkdir -p $PKG/install
-cat $CWD/slack-desc > $PKG/install/slack-desc
-
-cd $PKG
-/sbin/makepkg -l y -c n $OUTPUT/$PRGNAM-$VERSION-$ARCH-$BUILD$TAG.${PKGTYPE:-tgz}
diff --git a/games/4do-libretro/4do-libretro.info b/games/4do-libretro/4do-libretro.info
deleted file mode 100644
index 15fd0c53e4..0000000000
--- a/games/4do-libretro/4do-libretro.info
+++ /dev/null
@@ -1,10 +0,0 @@
-PRGNAM="4do-libretro"
-VERSION="2018.09.29_e1fec6e"
-HOMEPAGE="https://www.libretro.com/"
-DOWNLOAD="http://slackless.raccoons.tech/src/libretro/4do-libretro-2018.09.29_e1fec6e.tar.xz"
-MD5SUM="28e12061c358882e436dbbeeb6c63c16"
-DOWNLOAD_x86_64=""
-MD5SUM_x86_64=""
-REQUIRES="RetroArch"
-MAINTAINER="orphaned - no maintainer"
-EMAIL="nobody@nowhere.com"
diff --git a/games/4do-libretro/README b/games/4do-libretro/README
deleted file mode 100644
index d6ea9eecd5..0000000000
--- a/games/4do-libretro/README
+++ /dev/null
@@ -1,9 +0,0 @@
-4DO is an open-source, low-level emulator for the 3DO Game Console based
-on the FreeDO source code that can be used as a libretro core.
-
-4DO requires the following BIOS image file for operation
-
-* panafz10.bin (Panasonic FZ-10 BIOS)
-
-To build the debugging symbols use:
- DEBUG=1 ./4do-libretro.SlackBuild
diff --git a/games/4do-libretro/slack-desc b/games/4do-libretro/slack-desc
deleted file mode 100644
index b3c1c21c7c..0000000000
--- a/games/4do-libretro/slack-desc
+++ /dev/null
@@ -1,19 +0,0 @@
-# HOW TO EDIT THIS FILE:
-# The "handy ruler" below makes it easier to edit a package description.
-# Line up the first '|' above the ':' following the base package name, and
-# the '|' on the right side marks the last column you can put a character in.
-# You must make exactly 11 lines for the formatting to be correct. It's also
-# customary to leave one space after the ':' except on otherwise blank lines.
-
- |-----handy-ruler------------------------------------------------------|
-4do-libretro: 4do-libretro (Port of 4DO/libfreedo to libretro)
-4do-libretro:
-4do-libretro: 4DO is a 3DO video game system emulator that can be used as a
-4do-libretro: libretro core.
-4do-libretro:
-4do-libretro: Homepage: https://www.libretro.com/
-4do-libretro:
-4do-libretro:
-4do-libretro:
-4do-libretro:
-4do-libretro:
diff --git a/games/7kaa/7kaa.SlackBuild b/games/7kaa/7kaa.SlackBuild
index 5662e3cdce..1f6dc3ed96 100644
--- a/games/7kaa/7kaa.SlackBuild
+++ b/games/7kaa/7kaa.SlackBuild
@@ -1,8 +1,8 @@
-#!/bin/sh
+#!/bin/bash
# Slackware build script for 7kaa
-# Copyright <2016-2020> Sergio Vicari <devteamtuc@gmail.com>
+# Copyright <2016-2022> Sergio Vicari <devteamtuc@gmail.com>
# All rights reserved.
#
# Redistribution and use of this script, with or without modification, is
@@ -22,10 +22,13 @@
# OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF THIS SOFTWARE, EVEN IF
# ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
+cd $(dirname $0) ; CWD=$(pwd)
+
PRGNAM=7kaa
-VERSION=${VERSION:-2.15.4p1}
+VERSION=${VERSION:-2.15.6}
BUILD=${BUILD:-1}
TAG=${TAG:-_SBo}
+PKGTYPE=${PKGTYPE:-tgz}
if [ -z "$ARCH" ]; then
case "$( uname -m )" in
@@ -35,7 +38,14 @@ if [ -z "$ARCH" ]; then
esac
fi
-CWD=$(pwd)
+# If the variable PRINT_PACKAGE_NAME is set, then this script will report what
+# the name of the created package would be, and then exit. This information
+# could be useful to other scripts.
+if [ ! -z "${PRINT_PACKAGE_NAME}" ]; then
+ echo "$PRGNAM-$VERSION-$ARCH-$BUILD$TAG.$PKGTYPE"
+ exit 0
+fi
+
TMP=${TMP:-/tmp/SBo}
PKG=$TMP/package-$PRGNAM
OUTPUT=${OUTPUT:-/tmp}
@@ -60,7 +70,7 @@ rm -rf $PKG
mkdir -p $TMP $PKG $OUTPUT
cd $TMP
rm -rf $PRGNAM-$VERSION
-tar xvf $CWD/$PRGNAM-$VERSION.tar.xz
+tar xvf $CWD/$PRGNAM-$VERSION.tar.?z
cd $PRGNAM-$VERSION
chown -R root:root .
find -L . \
@@ -100,4 +110,4 @@ cat $CWD/slack-desc > $PKG/install/slack-desc
cat $CWD/doinst.sh > $PKG/install/doinst.sh
cd $PKG
-/sbin/makepkg -l y -c n $OUTPUT/$PRGNAM-$VERSION-$ARCH-$BUILD$TAG.${PKGTYPE:-tgz}
+/sbin/makepkg -l y -c n $OUTPUT/$PRGNAM-$VERSION-$ARCH-$BUILD$TAG.$PKGTYPE
diff --git a/games/7kaa/7kaa.info b/games/7kaa/7kaa.info
index a940a0066b..09a3e895a5 100644
--- a/games/7kaa/7kaa.info
+++ b/games/7kaa/7kaa.info
@@ -1,10 +1,10 @@
PRGNAM="7kaa"
-VERSION="2.15.4p1"
+VERSION="2.15.6"
HOMEPAGE="https://www.7kfans.com"
-DOWNLOAD="https://github.com/the3dfxdude/7kaa/releases/download/v2.15.4p1/7kaa-2.15.4p1.tar.xz"
-MD5SUM="33dfbe6be6135b0d76c21f28db1258a8"
+DOWNLOAD="https://sourceforge.net/projects/skfans/files/7KAA%202.15.6/7kaa-2.15.6.tar.gz"
+MD5SUM="07522a60ad12c0411c48073e6919b5ee"
DOWNLOAD_x86_64=""
MD5SUM_x86_64=""
-REQUIRES="SDL2 enet OpenAL"
+REQUIRES="enet"
MAINTAINER="Sergio Vicari"
EMAIL="devteamtuc@gmail.com"
diff --git a/games/BeastieWorker-levels/BeastieWorker-levels.SlackBuild b/games/BeastieWorker-levels/BeastieWorker-levels.SlackBuild
index 3c01671869..a3355c2dc4 100644
--- a/games/BeastieWorker-levels/BeastieWorker-levels.SlackBuild
+++ b/games/BeastieWorker-levels/BeastieWorker-levels.SlackBuild
@@ -1,4 +1,4 @@
-#!/bin/sh
+#!/bin/bash
# Slackware build script for BeastieWorker-levels
@@ -22,12 +22,15 @@
# OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF THIS SOFTWARE, EVEN IF
# ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
+cd $(dirname $0) ; CWD=$(pwd)
+
PRGNAM=BeastieWorker-levels
VERSION=${VERSION:-01.50}
SRCVER=$(echo $VERSION | tr . _)
GAMENAM=$(echo $PRGNAM | cut -c1-13)
BUILD=${BUILD:-1}
TAG=${TAG:-_SBo}
+PKGTYPE=${PKGTYPE:-tgz}
if [ -z "$ARCH" ]; then
case "$( uname -m )" in
@@ -37,7 +40,14 @@ if [ -z "$ARCH" ]; then
esac
fi
-CWD=$(pwd)
+# If the variable PRINT_PACKAGE_NAME is set, then this script will report what
+# the name of the created package would be, and then exit. This information
+# could be useful to other scripts.
+if [ ! -z "${PRINT_PACKAGE_NAME}" ]; then
+ echo "$PRGNAM-$VERSION-$ARCH-$BUILD$TAG.$PKGTYPE"
+ exit 0
+fi
+
TMP=${TMP:-/tmp/SBo}
PKG=$TMP/package-$PRGNAM
OUTPUT=${OUTPUT:-/tmp}
@@ -89,4 +99,4 @@ mkdir -p $PKG/install
cat $CWD/slack-desc > $PKG/install/slack-desc
cd $PKG
-/sbin/makepkg -l y -c n $OUTPUT/$PRGNAM-$VERSION-$ARCH-$BUILD$TAG.${PKGTYPE:-tgz}
+/sbin/makepkg -l y -c n $OUTPUT/$PRGNAM-$VERSION-$ARCH-$BUILD$TAG.$PKGTYPE
diff --git a/games/BeastieWorker/BeastieWorker.SlackBuild b/games/BeastieWorker/BeastieWorker.SlackBuild
index f7c54f0c02..9be82d7ae8 100644
--- a/games/BeastieWorker/BeastieWorker.SlackBuild
+++ b/games/BeastieWorker/BeastieWorker.SlackBuild
@@ -1,4 +1,4 @@
-#!/bin/sh
+#!/bin/bash
# Slackware build script for BeastieWorker
@@ -22,10 +22,13 @@
# OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF THIS SOFTWARE, EVEN IF
# ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
+cd $(dirname $0) ; CWD=$(pwd)
+
PRGNAM=BeastieWorker
VERSION=${VERSION:-0.4}
BUILD=${BUILD:-1}
TAG=${TAG:-_SBo}
+PKGTYPE=${PKGTYPE:-tgz}
if [ -z "$ARCH" ]; then
case "$( uname -m )" in
@@ -35,7 +38,14 @@ if [ -z "$ARCH" ]; then
esac
fi
-CWD=$(pwd)
+# If the variable PRINT_PACKAGE_NAME is set, then this script will report what
+# the name of the created package would be, and then exit. This information
+# could be useful to other scripts.
+if [ ! -z "${PRINT_PACKAGE_NAME}" ]; then
+ echo "$PRGNAM-$VERSION-$ARCH-$BUILD$TAG.$PKGTYPE"
+ exit 0
+fi
+
TMP=${TMP:-/tmp/SBo}
PKG=$TMP/package-$PRGNAM
OUTPUT=${OUTPUT:-/tmp}
@@ -109,4 +119,4 @@ cat $CWD/slack-desc > $PKG/install/slack-desc
cat $CWD/doinst.sh > $PKG/install/doinst.sh
cd $PKG
-/sbin/makepkg -l y -c n $OUTPUT/$PRGNAM-$VERSION-$ARCH-$BUILD$TAG.${PKGTYPE:-tgz}
+/sbin/makepkg -l y -c n $OUTPUT/$PRGNAM-$VERSION-$ARCH-$BUILD$TAG.$PKGTYPE
diff --git a/games/Chatbot-Eliza/Chatbot-Eliza.SlackBuild b/games/Chatbot-Eliza/Chatbot-Eliza.SlackBuild
index 0831561087..29debbd031 100644
--- a/games/Chatbot-Eliza/Chatbot-Eliza.SlackBuild
+++ b/games/Chatbot-Eliza/Chatbot-Eliza.SlackBuild
@@ -1,27 +1,50 @@
-#!/bin/sh
+#!/bin/bash
# Slackware build script for Chatbot-Eliza
-# Written by (Marco Cecchetti) (mrc.ildp@gmail.com)
+# Copyright Marco Cecchetti
+# All rights reserved.
+#
+# Redistribution and use of this script, with or without modification, is
+# permitted provided that the following conditions are met:
+#
+# 1. Redistributions of this script must retain the above copyright
+# notice, this list of conditions and the following disclaimer.
+#
+# THIS SOFTWARE IS PROVIDED BY THE AUTHOR "AS IS" AND ANY EXPRESS OR IMPLIED
+# WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE IMPLIED WARRANTIES OF
+# MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE ARE DISCLAIMED. IN NO
+# EVENT SHALL THE AUTHOR BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL,
+# SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT LIMITED TO,
+# PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, DATA, OR PROFITS;
+# OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY,
+# WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR
+# OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF THIS SOFTWARE, EVEN IF
+# ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
+# Written by (Marco Cecchetti) (mrc.ildp@gmail.com)
# Modified by the SlackBuilds.org project.
-
# Maintained by Ozan Türkyılmaz ozan.turkyilmaz@gmail.com
+cd $(dirname $0) ; CWD=$(pwd)
+
PRGNAM=Chatbot-Eliza
-VERSION=${VERSION:-1.04}
-BUILD=${BUILD:-1}
+VERSION=${VERSION:-1.08}
+BUILD=${BUILD:-2}
TAG=${TAG:-_SBo}
+PKGTYPE=${PKGTYPE:-tgz}
+
+# There is no compiled code here, nothing use /usr/lib(64)
+ARCH=noarch
-if [ -z "$ARCH" ]; then
- case "$( uname -m )" in
- i?86) ARCH=i486 ;;
- arm*) ARCH=arm ;;
- *) ARCH=$( uname -m ) ;;
- esac
+# If the variable PRINT_PACKAGE_NAME is set, then this script will report what
+# the name of the created package would be, and then exit. This information
+# could be useful to other scripts.
+if [ ! -z "${PRINT_PACKAGE_NAME}" ]; then
+ echo "$PRGNAM-$VERSION-$ARCH-$BUILD$TAG.$PKGTYPE"
+ exit 0
fi
-CWD=$(pwd)
TMP=${TMP:-/tmp/SBo}
PKG=$TMP/package-$PRGNAM
OUTPUT=${OUTPUT:-/tmp}
@@ -45,7 +68,7 @@ perl Makefile.PL
make
make install INSTALLDIRS=vendor DESTDIR=$PKG
-mv $PKG/usr/share/man $PKG/usr && rm -rf $PKG/usr/share
+mv $PKG/usr/share/man $PKG/usr
gzip -9 $PKG/usr/man/man3/* 2> /dev/null
# Remove perlocal.pod and .packlist from $PKG
@@ -62,7 +85,7 @@ cp -a README \
$PKG/usr/doc/$PRGNAM-$VERSION
cp -a \
- simple doctor.txt deutsch* norsk* twobots *.cgi \
+ examples/* \
$PKG/usr/doc/$PRGNAM-$VERSION/examples
cat $CWD/$PRGNAM.SlackBuild > $PKG/usr/doc/$PRGNAM-$VERSION/$PRGNAM.SlackBuild
@@ -70,4 +93,4 @@ mkdir -p $PKG/install
cat $CWD/slack-desc > $PKG/install/slack-desc
cd $PKG
-/sbin/makepkg -l y -c n $OUTPUT/$PRGNAM-$VERSION-$ARCH-$BUILD$TAG.${PKGTYPE:-tgz}
+/sbin/makepkg -l y -c n $OUTPUT/$PRGNAM-$VERSION-$ARCH-$BUILD$TAG.$PKGTYPE
diff --git a/games/Chatbot-Eliza/Chatbot-Eliza.info b/games/Chatbot-Eliza/Chatbot-Eliza.info
index e6a77c32c0..a22455ca12 100644
--- a/games/Chatbot-Eliza/Chatbot-Eliza.info
+++ b/games/Chatbot-Eliza/Chatbot-Eliza.info
@@ -1,8 +1,8 @@
PRGNAM="Chatbot-Eliza"
-VERSION="1.04"
+VERSION="1.08"
HOMEPAGE="https://metacpan.org/pod/Chatbot::Eliza"
-DOWNLOAD="https://cpan.metacpan.org/authors/id/J/JN/JNOLAN/Chatbot-Eliza-1.04.tar.gz"
-MD5SUM="754199bbe591eaa11301aee108586fcd"
+DOWNLOAD="https://cpan.metacpan.org/authors/id/G/GR/GRANTG/Chatbot-Eliza-1.08.tar.gz"
+MD5SUM="163fb58b76a945368f49092147ffde83"
DOWNLOAD_x86_64=""
MD5SUM_x86_64=""
REQUIRES=""
diff --git a/games/CorsixTH/CorsixTH.SlackBuild b/games/CorsixTH/CorsixTH.SlackBuild
index 8082e31b98..742cc60bdc 100644
--- a/games/CorsixTH/CorsixTH.SlackBuild
+++ b/games/CorsixTH/CorsixTH.SlackBuild
@@ -1,8 +1,8 @@
-#!/bin/sh
+#!/bin/bash
# Slackware build script for CorsixTH
-# Copyright 2019-2020 Nick Smallbone, Gothenburg, Sweden
+# Copyright 2019-2022 Nick Smallbone, Gothenburg, Sweden
# All rights reserved.
#
# Redistribution and use of this script, with or without modification, is
@@ -22,10 +22,13 @@
# OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF THIS SOFTWARE, EVEN IF
# ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
+cd $(dirname $0) ; CWD=$(pwd)
+
PRGNAM=CorsixTH
-VERSION=${VERSION:-0.63}
+VERSION=${VERSION:-0.66}
BUILD=${BUILD:-1}
TAG=${TAG:-_SBo}
+PKGTYPE=${PKGTYPE:-tgz}
if [ -z "$ARCH" ]; then
case "$( uname -m )" in
@@ -35,7 +38,14 @@ if [ -z "$ARCH" ]; then
esac
fi
-CWD=$(pwd)
+# If the variable PRINT_PACKAGE_NAME is set, then this script will report what
+# the name of the created package would be, and then exit. This information
+# could be useful to other scripts.
+if [ ! -z "${PRINT_PACKAGE_NAME}" ]; then
+ echo "$PRGNAM-$VERSION-$ARCH-$BUILD$TAG.$PKGTYPE"
+ exit 0
+fi
+
TMP=${TMP:-/tmp/SBo}
PKG=$TMP/package-$PRGNAM
OUTPUT=${OUTPUT:-/tmp}
@@ -69,12 +79,18 @@ find -L . \
\( -perm 666 -o -perm 664 -o -perm 640 -o -perm 600 -o -perm 444 \
-o -perm 440 -o -perm 400 \) -exec chmod 644 {} \;
+# Thanks to Ben Watson for the following fix:
+# "build would fail if both lua and lua52 (or lua53) were installed.
+# The fix is to force cmake to use the libraries from lua (version 5.1.5)."
mkdir -p build
cd build
cmake \
-DCMAKE_C_FLAGS:STRING="$SLKCFLAGS" \
-DCMAKE_CXX_FLAGS:STRING="$SLKCFLAGS" \
-DCMAKE_INSTALL_PREFIX=/usr \
+ -DLUA_LIBRARY="/usr/lib$LIBDIRSUFFIX/liblua.so" \
+ -DLUA_INCLUDE_DIR="/usr/include/" \
+ -DLUA_MATH_LIBRARY="/usr/lib$LIBDIRSUFFIX/libm.so" \
-DCMAKE_BUILD_TYPE=Release ..
make
make install/strip DESTDIR=$PKG
@@ -96,4 +112,4 @@ cat $CWD/slack-desc > $PKG/install/slack-desc
cat $CWD/doinst.sh > $PKG/install/doinst.sh
cd $PKG
-/sbin/makepkg -l y -c n $OUTPUT/$PRGNAM-$VERSION-$ARCH-$BUILD$TAG.${PKGTYPE:-tgz}
+/sbin/makepkg -l y -c n $OUTPUT/$PRGNAM-$VERSION-$ARCH-$BUILD$TAG.$PKGTYPE
diff --git a/games/CorsixTH/CorsixTH.info b/games/CorsixTH/CorsixTH.info
index f596efe8a1..60c53ab9e7 100644
--- a/games/CorsixTH/CorsixTH.info
+++ b/games/CorsixTH/CorsixTH.info
@@ -1,10 +1,10 @@
PRGNAM="CorsixTH"
-VERSION="0.63"
+VERSION="0.66"
HOMEPAGE="http://corsixth.com"
-DOWNLOAD="https://github.com/CorsixTH/CorsixTH/archive/v0.63/CorsixTH-0.63.tar.gz"
-MD5SUM="83b0787a0fb2a19eea45b069e023d844"
+DOWNLOAD="https://github.com/CorsixTH/CorsixTH/archive/v0.66/CorsixTH-0.66.tar.gz"
+MD5SUM="cc66cebaa183318429d5845a1843b99e"
DOWNLOAD_x86_64=""
MD5SUM_x86_64=""
-REQUIRES="SDL2 SDL2_mixer lua ffmpeg"
+REQUIRES="lua-filesystem lua-lpeg"
MAINTAINER="Nick Smallbone"
EMAIL="nick@smallbone.se"
diff --git a/games/CorsixTH/README b/games/CorsixTH/README
index 7a2ecff2e4..74aadbe815 100644
--- a/games/CorsixTH/README
+++ b/games/CorsixTH/README
@@ -7,5 +7,4 @@ If you don't have Theme Hospital, you can buy it on GOG, or find
the free demo version. The first time you launch CorsixTH, it will
ask you to point it at the data files.
-NOTE: to get music in-game, you need the the fluidsynth and
-fluid-soundfont packages.
+NOTE: to get music in-game, you need the fluid-soundfont package.
diff --git a/games/CorsixTH/slack-desc b/games/CorsixTH/slack-desc
index ba44ed2668..3d322b9e56 100644
--- a/games/CorsixTH/slack-desc
+++ b/games/CorsixTH/slack-desc
@@ -13,7 +13,7 @@ CorsixTH: It requires the original Theme Hospital data files in order to run. If
CorsixTH: you don't have Theme Hospital, you can buy it on GOG, or find the free
CorsixTH: demo version.
CorsixTH:
-CorsixTH: NOTE: To get music in-game, you need the fluidsynth and
-CorsixTH: fluid-soundfont packages.
+CorsixTH: NOTE: To get music in-game, you need the fluid-soundfont package.
CorsixTH:
CorsixTH: Home page: http://corsixth.com
+CorsixTH:
diff --git a/games/FlightGear-data/FlightGear-data.SlackBuild b/games/FlightGear-data/FlightGear-data.SlackBuild
index dd010e148d..633c292e97 100644
--- a/games/FlightGear-data/FlightGear-data.SlackBuild
+++ b/games/FlightGear-data/FlightGear-data.SlackBuild
@@ -1,4 +1,4 @@
-#!/bin/sh
+#!/bin/bash
# Slackware build script for FlightGear-data
# Copyright before version 2016.3.1 by Diego Pantano <poplin.dp@gmail.com>
@@ -22,16 +22,26 @@
# OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF THIS SOFTWARE, EVEN IF
# ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
+cd $(dirname $0) ; CWD=$(pwd)
+
PRGNAM=FlightGear-data
SRCNAM=FlightGear
-VERSION=${VERSION:-2020.3.2}
+VERSION=${VERSION:-2020.3.19}
BUILD=${BUILD:-1}
TAG=${TAG:-_SBo}
+PKGTYPE=${PKGTYPE:-tgz}
# Data package, no binaries
ARCH=noarch
-CWD=$(pwd)
+# If the variable PRINT_PACKAGE_NAME is set, then this script will report what
+# the name of the created package would be, and then exit. This information
+# could be useful to other scripts.
+if [ ! -z "${PRINT_PACKAGE_NAME}" ]; then
+ echo "$PRGNAM-$VERSION-$ARCH-$BUILD$TAG.$PKGTYPE"
+ exit 0
+fi
+
TMP=${TMP:-/tmp/SBo}
PKG=$TMP/package-$PRGNAM
OUTPUT=${OUTPUT:-/tmp}
@@ -41,7 +51,7 @@ set -e
rm -rf $PKG
mkdir -p $TMP $PKG/usr/share $OUTPUT
cd $PKG/usr/share
-tar xvf $CWD/$SRCNAM-$VERSION-data.tar.bz2
+tar xvf $CWD/$SRCNAM-$VERSION-data.txz
mv fgdata FlightGear
chown -R root:root .
find -L . \
@@ -61,4 +71,4 @@ mkdir -p $PKG/install
cat $CWD/slack-desc > $PKG/install/slack-desc
cd $PKG
-/sbin/makepkg -l y -c n $OUTPUT/$PRGNAM-$VERSION-$ARCH-$BUILD$TAG.${PKGTYPE:-tgz}
+/sbin/makepkg -l y -c n $OUTPUT/$PRGNAM-$VERSION-$ARCH-$BUILD$TAG.$PKGTYPE
diff --git a/games/FlightGear-data/FlightGear-data.info b/games/FlightGear-data/FlightGear-data.info
index 6a9634d2f4..d13c72f8c5 100644
--- a/games/FlightGear-data/FlightGear-data.info
+++ b/games/FlightGear-data/FlightGear-data.info
@@ -1,8 +1,8 @@
PRGNAM="FlightGear-data"
-VERSION="2020.3.2"
+VERSION="2020.3.19"
HOMEPAGE="http://www.flightgear.org/"
-DOWNLOAD="https://downloads.sourceforge.net/flightgear/FlightGear-2020.3.2-data.tar.bz2"
-MD5SUM="a84eb69a9099f4f1e82fadffcf4fa2ee"
+DOWNLOAD="https://downloads.sourceforge.net/flightgear/FlightGear-2020.3.19-data.txz"
+MD5SUM="795ede509b3291c3f78935982c9f2b1f"
DOWNLOAD_x86_64=""
MD5SUM_x86_64=""
REQUIRES=""
diff --git a/games/FlightGear-data/README b/games/FlightGear-data/README
index bad3a89b43..977018dbde 100644
--- a/games/FlightGear-data/README
+++ b/games/FlightGear-data/README
@@ -1,5 +1,5 @@
Textures, models, data, aircraft, sample scenery, and config files
needed by FlightGear.
-NOTE: The source file is approximately 1.9G in size, so please be
-patient while downloading and building.
+NOTE: The source file totals nearly 2G in size, so please be patient
+while downloading and building.
diff --git a/games/FlightGear/FlightGear.SlackBuild b/games/FlightGear/FlightGear.SlackBuild
index c4337d6634..8b9365f1b6 100644
--- a/games/FlightGear/FlightGear.SlackBuild
+++ b/games/FlightGear/FlightGear.SlackBuild
@@ -1,4 +1,4 @@
-#!/bin/sh
+#!/bin/bash
# Slackware build script for FlightGear
# Copyright before version 2016.3.1 by Diego Pantano <poplin.dp@gmail.com>
@@ -24,11 +24,14 @@
# OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF THIS SOFTWARE, EVEN IF
# ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
+cd $(dirname $0) ; CWD=$(pwd)
+
PRGNAM=FlightGear
SRCNAM=flightgear
-VERSION=${VERSION:-2020.3.2}
+VERSION=${VERSION:-2020.3.19}
BUILD=${BUILD:-1}
TAG=${TAG:-_SBo}
+PKGTYPE=${PKGTYPE:-tgz}
if [ -z "$ARCH" ]; then
case "$( uname -m )" in
@@ -38,7 +41,14 @@ if [ -z "$ARCH" ]; then
esac
fi
-CWD=$(pwd)
+# If the variable PRINT_PACKAGE_NAME is set, then this script will report what
+# the name of the created package would be, and then exit. This information
+# could be useful to other scripts.
+if [ ! -z "${PRINT_PACKAGE_NAME}" ]; then
+ echo "$PRGNAM-$VERSION-$ARCH-$BUILD$TAG.$PKGTYPE"
+ exit 0
+fi
+
TMP=${TMP:-/tmp/SBo}
PKG=$TMP/package-$PRGNAM
OUTPUT=${OUTPUT:-/tmp}
@@ -59,13 +69,6 @@ fi
set -e
-# Choose whether or not to build the internal Qt launcher.
-if [ "${QT5}" == "yes" ]; then
- OPT="$OPT -DENABLE_QT=ON"
-else
- OPT="$OPT -DENABLE_QT=OFF"
-fi
-
rm -rf $PKG
mkdir -p $TMP $PKG $OUTPUT
cd $TMP
@@ -87,8 +90,8 @@ cd build
-DCMAKE_INSTALL_PREFIX=/usr \
-DEVENT_INPUT="ON" \
-DFG_DATA_DIR=/usr/share/${PRGNAM} \
- $OPT \
- -DCMAKE_BUILD_TYPE=Release ..
+ -DCMAKE_BUILD_TYPE=Release \
+ -DFG_BUILD_TYPE=Release ..
make
make install DESTDIR=$PKG
cd ..
@@ -103,7 +106,7 @@ for i in $( find $PKG/usr/man -type l ) ; do ln -s $( readlink $i ).gz $i.gz ; r
mkdir -p $PKG/usr/doc/$PRGNAM-$VERSION
cp -a \
- AUTHORS ChangeLog COPYING INSTALL NEWS README* Thanks docs-mini/ \
+ AUTHORS ChangeLog COPYING NEWS README* Thanks docs-mini/ \
$PKG/usr/doc/$PRGNAM-$VERSION
cat $CWD/$PRGNAM.SlackBuild > $PKG/usr/doc/$PRGNAM-$VERSION/$PRGNAM.SlackBuild
@@ -111,14 +114,11 @@ mkdir -p $PKG/install
cat $CWD/slack-desc > $PKG/install/slack-desc
# Add a desktop entry for the GUI launcher
-case "$QT5" in
- yes) install -D -m0644 $CWD/FlightGear.desktop \
- $PKG/usr/share/applications/FlightGear.desktop
- install -D -m0644 $CWD/FlightGear.png \
- $PKG/usr/share/icons/hicolor/64x64/apps/FlightGear.png
- cat $CWD/doinst.sh > $PKG/install/doinst.sh
-;;
-esac
+install -D -m0644 $CWD/FlightGear.desktop \
+ $PKG/usr/share/applications/FlightGear.desktop
+install -D -m0644 $CWD/FlightGear.png \
+ $PKG/usr/share/icons/hicolor/48x48/apps/FlightGear.png
+cat $CWD/doinst.sh > $PKG/install/doinst.sh
cd $PKG
-/sbin/makepkg -l y -c n $OUTPUT/$PRGNAM-$VERSION-$ARCH-$BUILD$TAG.${PKGTYPE:-tgz}
+/sbin/makepkg -l y -c n $OUTPUT/$PRGNAM-$VERSION-$ARCH-$BUILD$TAG.$PKGTYPE
diff --git a/games/FlightGear/FlightGear.desktop b/games/FlightGear/FlightGear.desktop
index fd18a1ac60..25421b3282 100644
--- a/games/FlightGear/FlightGear.desktop
+++ b/games/FlightGear/FlightGear.desktop
@@ -4,7 +4,7 @@ Name=FlightGear
GenericName=FlightGear
Comment=FlightGear Launcher
Exec=fgfs --launcher
-Icon=/usr/share/icons/hicolor/64x64/apps/FlightGear.png
+Icon=/usr/share/icons/hicolor/48x48/apps/FlightGear.png
Terminal=false
Type=Application
Categories=Game;
diff --git a/games/FlightGear/FlightGear.info b/games/FlightGear/FlightGear.info
index 62c711266e..d7bf1df1d6 100644
--- a/games/FlightGear/FlightGear.info
+++ b/games/FlightGear/FlightGear.info
@@ -1,8 +1,8 @@
PRGNAM="FlightGear"
-VERSION="2020.3.2"
+VERSION="2020.3.19"
HOMEPAGE="http://www.flightgear.org/"
-DOWNLOAD="https://downloads.sourceforge.net/flightgear/flightgear-2020.3.2.tar.bz2"
-MD5SUM="00bbb97e949438c786cfbcde9a2b0cfb"
+DOWNLOAD="https://downloads.sourceforge.net/flightgear/flightgear-2020.3.19.tar.bz2"
+MD5SUM="75556000160b9ffea23e013bc8d5d8f9"
DOWNLOAD_x86_64=""
MD5SUM_x86_64=""
REQUIRES="FlightGear-data SimGear"
diff --git a/games/FlightGear/FlightGear.png b/games/FlightGear/FlightGear.png
index a0d912dfbf..e49d653e97 100644
--- a/games/FlightGear/FlightGear.png
+++ b/games/FlightGear/FlightGear.png
Binary files differ
diff --git a/games/FlightGear/README b/games/FlightGear/README
index 1ee3e5aa54..798e5c06c1 100644
--- a/games/FlightGear/README
+++ b/games/FlightGear/README
@@ -2,12 +2,13 @@ FlightGear is a flight-simulator created by an international group of
volunteers, and released as free, open-source GPL software.
It has been used for academic research, education, and for fun.
-To build the internal Qt launcher, you will require QT5 and then pass
-QT5=yes to the script. Otherwise, you can install either fgo or ffgo
-as a more basic launcher.
+This build now includes the internal Qt launcher. To launch FlightGear
+from a terminal window, run 'fgfs --launcher' from the command line.
+(This is how the .desktop file launches it.)
-To build on current (15.0 EXPERIMENTAL), pass CURRENT=yes to the
-script.
+If you prefer, you can install either fgo (python2) or ffgo (python3)
+as a more basic launcher. They will launch fgfs directly without the
+'--launcher' parameter.
-speex and flite are optional dependencies for voice communication
-(autodetected at build time).
+flite is an optional dependency for voice communication (autodetected
+at build time).
diff --git a/games/Gearboy/Gearboy.SlackBuild b/games/Gearboy/Gearboy.SlackBuild
deleted file mode 100644
index 572991b618..0000000000
--- a/games/Gearboy/Gearboy.SlackBuild
+++ /dev/null
@@ -1,115 +0,0 @@
-#!/bin/sh
-
-# Slackware build script for Gearboy
-
-# Copyright 2018 Hunter Sezen California, USA
-# All rights reserved.
-#
-# Redistribution and use of this script, with or without modification, is
-# permitted provided that the following conditions are met:
-#
-# 1. Redistributions of this script must retain the above copyright
-# notice, this list of conditions and the following disclaimer.
-#
-# THIS SOFTWARE IS PROVIDED BY THE AUTHOR "AS IS" AND ANY EXPRESS OR IMPLIED
-# WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE IMPLIED WARRANTIES OF
-# MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE ARE DISCLAIMED. IN NO
-# EVENT SHALL THE AUTHOR BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL,
-# SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT LIMITED TO,
-# PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, DATA, OR PROFITS;
-# OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY,
-# WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR
-# OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF THIS SOFTWARE, EVEN IF
-# ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
-
-PRGNAM=Gearboy
-LIBNAM=$(printf %s $PRGNAM | tr 'A-Z' 'a-z')_libretro
-VERSION=${VERSION:-2018.03.24_b9d67b0}
-BUILD=${BUILD:-1}
-TAG=${TAG:-_SBo}
-
-if [ -z "$ARCH" ]; then
- case "$( uname -m )" in
- i?86) ARCH=i586 ;;
- arm*) ARCH=arm ;;
- *) ARCH=$( uname -m ) ;;
- esac
-fi
-
-CWD=$(pwd)
-TMP=${TMP:-/tmp/SBo}
-PKG=$TMP/package-$PRGNAM
-OUTPUT=${OUTPUT:-/tmp}
-
-# requires patching the Makefile to properly use
-# the default CFLAGS and CXXFLAGS are probably fine
-if [ "$ARCH" = "i586" ]; then
- SLKCFLAGS="-O2 -march=i586 -mtune=i686"
- LIBDIRSUFFIX=""
-elif [ "$ARCH" = "i686" ]; then
- SLKCFLAGS="-O2 -march=i686 -mtune=i686"
- LIBDIRSUFFIX=""
-elif [ "$ARCH" = "x86_64" ]; then
- SLKCFLAGS="-O2 -fPIC"
- LIBDIRSUFFIX="64"
-else
- SLKCFLAGS="-O2"
- LIBDIRSUFFIX=""
-fi
-
-set -eu
-
-rm -rf $PKG
-mkdir -p $TMP $PKG $OUTPUT
-cd $TMP
-rm -rf $PRGNAM-$VERSION
-tar xvf $CWD/$PRGNAM-$VERSION.tar.xz
-cd $PRGNAM-$VERSION
-chown -R root:root .
-find -L . \
- \( -perm 777 -o -perm 775 -o -perm 750 -o -perm 711 -o -perm 555 \
- -o -perm 511 \) -exec chmod 755 {} \; -o \
- \( -perm 666 -o -perm 664 -o -perm 640 -o -perm 600 -o -perm 444 \
- -o -perm 440 -o -perm 400 \) -exec chmod 644 {} \;
-
-[ "${DEBUG:=0}" != 0 ] && DEBUG=1
-
-make -C platforms/libretro DEBUG=$DEBUG
-
-install -Dm0644 platforms/libretro/$LIBNAM.so $PKG/usr/lib${LIBDIRSUFFIX}/libretro/$LIBNAM.so
-install -Dm0644 platforms/libretro/$LIBNAM.info $PKG/usr/lib${LIBDIRSUFFIX}/libretro/info/$LIBNAM.info
-
-mkdir -p $PKG/install
-cat $CWD/slack-desc > $PKG/install/slack-desc
-
-if pkg-config --exists Qt5Core && pkg-config --exists sdl2; then
- ( cd platforms/linux/$PRGNAM
- qmake-qt5 $PRGNAM.pro
- make
-
- install -Dm0755 $PRGNAM $PKG/usr/games/$PRGNAM
- install -Dm0644 $PRGNAM.6 $PKG/usr/man/man6/$PRGNAM.6
- install -Dm0644 $PRGNAM.desktop $PKG/usr/share/applications/$PRGNAM.desktop
- )
-
- cat > $PKG/install/doinst.sh <<EOF
-if [ -x /usr/bin/update-desktop-database ]; then
- /usr/bin/update-desktop-database -q usr/share/applications >/dev/null 2>&1
-fi
-EOF
-
- find $PKG/usr/man -type f -exec gzip -9 {} \;
- for i in $( find $PKG/usr/man -type l ) ; do ln -s $( readlink $i ).gz $i.gz ; rm $i ; done
-fi
-
-if [ $DEBUG = 0 ]; then
- find $PKG -print0 | xargs -0 file | grep -e "executable" -e "shared object" | grep ELF \
- | cut -f 1 -d : | xargs strip --strip-unneeded 2> /dev/null || true
-fi
-
-mkdir -p $PKG/usr/doc/$PRGNAM-$VERSION
-cp -a LICENSE README.md $PKG/usr/doc/$PRGNAM-$VERSION
-cat $CWD/$PRGNAM.SlackBuild > $PKG/usr/doc/$PRGNAM-$VERSION/$PRGNAM.SlackBuild
-
-cd $PKG
-/sbin/makepkg -l y -c n $OUTPUT/$PRGNAM-$VERSION-$ARCH-$BUILD$TAG.${PKGTYPE:-tgz}
diff --git a/games/Gearboy/Gearboy.info b/games/Gearboy/Gearboy.info
deleted file mode 100644
index 94c0b6292f..0000000000
--- a/games/Gearboy/Gearboy.info
+++ /dev/null
@@ -1,10 +0,0 @@
-PRGNAM="Gearboy"
-VERSION="2018.03.24_b9d67b0"
-HOMEPAGE="https://github.com/drhelius/Gearboy"
-DOWNLOAD="http://slackware.uk/sbosrcarch/by-name/games/Gearboy/Gearboy-2018.03.24_b9d67b0.tar.xz"
-MD5SUM="ed83dcde7d9eefd845b60cfdec5d7735"
-DOWNLOAD_x86_64=""
-MD5SUM_x86_64=""
-REQUIRES=""
-MAINTAINER="orphaned - no maintainer"
-EMAIL="nobody@nowhere.com"
diff --git a/games/Gearboy/README b/games/Gearboy/README
deleted file mode 100644
index ec59a97ff6..0000000000
--- a/games/Gearboy/README
+++ /dev/null
@@ -1,12 +0,0 @@
-Gearboy is a Nintendo Game Boy / GameBoy Color emulator written in C++.
-
-Optional dependencies:
- qt5, RetroArch and SDL2
-
-At least some of the optional dependencies will be required to use
-Gearboy. If qt5 and SDL2 are not installed the standalone frontend
-will not be built and only the libretro core will be built. RetroArch
-will be required to run the libretro core in this case.
-
-To build the debugging symbols for the libretro core use:
- DEBUG=1 ./Gearboy.SlackBuild
diff --git a/games/Gearboy/slack-desc b/games/Gearboy/slack-desc
deleted file mode 100644
index 876ae5fafe..0000000000
--- a/games/Gearboy/slack-desc
+++ /dev/null
@@ -1,19 +0,0 @@
-# HOW TO EDIT THIS FILE:
-# The "handy ruler" below makes it easier to edit a package description.
-# Line up the first '|' above the ':' following the base package name, and
-# the '|' on the right side marks the last column you can put a character in.
-# You must make exactly 11 lines for the formatting to be correct. It's also
-# customary to leave one space after the ':' except on otherwise blank lines.
-
- |-----handy-ruler------------------------------------------------------|
-Gearboy: Gearboy (Nintendo Game Boy / GameBoy Color emulator)
-Gearboy:
-Gearboy: Gearboy is a Nintendo Game Boy / GameBoy Color emulator written in
-Gearboy: C++.
-Gearboy:
-Gearboy: Homepage: https://github.com/drhelius/Gearboy
-Gearboy:
-Gearboy:
-Gearboy:
-Gearboy:
-Gearboy:
diff --git a/games/Gearsystem/Gearsystem.SlackBuild b/games/Gearsystem/Gearsystem.SlackBuild
deleted file mode 100644
index 53e67b10ca..0000000000
--- a/games/Gearsystem/Gearsystem.SlackBuild
+++ /dev/null
@@ -1,115 +0,0 @@
-#!/bin/sh
-
-# Slackware build script for Gearsystem
-
-# Copyright 2018 Hunter Sezen California, USA
-# All rights reserved.
-#
-# Redistribution and use of this script, with or without modification, is
-# permitted provided that the following conditions are met:
-#
-# 1. Redistributions of this script must retain the above copyright
-# notice, this list of conditions and the following disclaimer.
-#
-# THIS SOFTWARE IS PROVIDED BY THE AUTHOR "AS IS" AND ANY EXPRESS OR IMPLIED
-# WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE IMPLIED WARRANTIES OF
-# MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE ARE DISCLAIMED. IN NO
-# EVENT SHALL THE AUTHOR BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL,
-# SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT LIMITED TO,
-# PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, DATA, OR PROFITS;
-# OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY,
-# WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR
-# OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF THIS SOFTWARE, EVEN IF
-# ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
-
-PRGNAM=Gearsystem
-LIBNAM=$(printf %s $PRGNAM | tr 'A-Z' 'a-z')_libretro
-VERSION=${VERSION:-2018.04.11_78c8e14}
-BUILD=${BUILD:-1}
-TAG=${TAG:-_SBo}
-
-if [ -z "$ARCH" ]; then
- case "$( uname -m )" in
- i?86) ARCH=i586 ;;
- arm*) ARCH=arm ;;
- *) ARCH=$( uname -m ) ;;
- esac
-fi
-
-CWD=$(pwd)
-TMP=${TMP:-/tmp/SBo}
-PKG=$TMP/package-$PRGNAM
-OUTPUT=${OUTPUT:-/tmp}
-
-# requires patching the Makefile to properly use
-# the default CFLAGS and CXXFLAGS are probably fine
-if [ "$ARCH" = "i586" ]; then
- SLKCFLAGS="-O2 -march=i586 -mtune=i686"
- LIBDIRSUFFIX=""
-elif [ "$ARCH" = "i686" ]; then
- SLKCFLAGS="-O2 -march=i686 -mtune=i686"
- LIBDIRSUFFIX=""
-elif [ "$ARCH" = "x86_64" ]; then
- SLKCFLAGS="-O2 -fPIC"
- LIBDIRSUFFIX="64"
-else
- SLKCFLAGS="-O2"
- LIBDIRSUFFIX=""
-fi
-
-set -eu
-
-rm -rf $PKG
-mkdir -p $TMP $PKG $OUTPUT
-cd $TMP
-rm -rf $PRGNAM-$VERSION
-tar xvf $CWD/$PRGNAM-$VERSION.tar.xz
-cd $PRGNAM-$VERSION
-chown -R root:root .
-find -L . \
- \( -perm 777 -o -perm 775 -o -perm 750 -o -perm 711 -o -perm 555 \
- -o -perm 511 \) -exec chmod 755 {} \; -o \
- \( -perm 666 -o -perm 664 -o -perm 640 -o -perm 600 -o -perm 444 \
- -o -perm 440 -o -perm 400 \) -exec chmod 644 {} \;
-
-[ "${DEBUG:=0}" != 0 ] && DEBUG=1
-
-make -C platforms/libretro DEBUG=$DEBUG
-
-install -Dm0644 platforms/libretro/$LIBNAM.so $PKG/usr/lib${LIBDIRSUFFIX}/libretro/$LIBNAM.so
-install -Dm0644 platforms/libretro/$LIBNAM.info $PKG/usr/lib${LIBDIRSUFFIX}/libretro/info/$LIBNAM.info
-
-mkdir -p $PKG/install
-cat $CWD/slack-desc > $PKG/install/slack-desc
-
-if pkg-config --exists Qt5Core && pkg-config --exists sdl2; then
- ( cd platforms/linux/$PRGNAM
- qmake-qt5 $PRGNAM.pro
- make
-
- install -Dm0755 $PRGNAM $PKG/usr/games/$PRGNAM
- install -Dm0644 $PRGNAM.6 $PKG/usr/man/man6/$PRGNAM.6
- install -Dm0644 $PRGNAM.desktop $PKG/usr/share/applications/$PRGNAM.desktop
- )
-
- cat > $PKG/install/doinst.sh <<EOF
-if [ -x /usr/bin/update-desktop-database ]; then
- /usr/bin/update-desktop-database -q usr/share/applications >/dev/null 2>&1
-fi
-EOF
-
- find $PKG/usr/man -type f -exec gzip -9 {} \;
- for i in $( find $PKG/usr/man -type l ) ; do ln -s $( readlink $i ).gz $i.gz ; rm $i ; done
-fi
-
-if [ $DEBUG = 0 ]; then
- find $PKG -print0 | xargs -0 file | grep -e "executable" -e "shared object" | grep ELF \
- | cut -f 1 -d : | xargs strip --strip-unneeded 2> /dev/null || true
-fi
-
-mkdir -p $PKG/usr/doc/$PRGNAM-$VERSION
-cp -a LICENSE README.md $PKG/usr/doc/$PRGNAM-$VERSION
-cat $CWD/$PRGNAM.SlackBuild > $PKG/usr/doc/$PRGNAM-$VERSION/$PRGNAM.SlackBuild
-
-cd $PKG
-/sbin/makepkg -l y -c n $OUTPUT/$PRGNAM-$VERSION-$ARCH-$BUILD$TAG.${PKGTYPE:-tgz}
diff --git a/games/Gearsystem/Gearsystem.info b/games/Gearsystem/Gearsystem.info
deleted file mode 100644
index 1456f30358..0000000000
--- a/games/Gearsystem/Gearsystem.info
+++ /dev/null
@@ -1,10 +0,0 @@
-PRGNAM="Gearsystem"
-VERSION="2018.04.11_78c8e14"
-HOMEPAGE="https://github.com/drhelius/Gearsystem"
-DOWNLOAD="http://slackware.uk/sbosrcarch/by-name/games/Gearsystem/Gearsystem-2018.04.11_78c8e14.tar.xz"
-MD5SUM="6e438a0d024d6b902c2940d3e42b1fcf"
-DOWNLOAD_x86_64=""
-MD5SUM_x86_64=""
-REQUIRES=""
-MAINTAINER="orphaned - no maintainer"
-EMAIL="nobody@nowhere.com"
diff --git a/games/Gearsystem/README b/games/Gearsystem/README
deleted file mode 100644
index 820b8bd698..0000000000
--- a/games/Gearsystem/README
+++ /dev/null
@@ -1,12 +0,0 @@
-Gearsystem is a Sega Master System / Game Gear emulator written in C++.
-
-Optional dependencies:
- qt5, RetroArch and SDL2
-
-At least some of the optional dependencies will be required to use
-Gearsystem. If qt5 and SDL2 are not installed the standalone frontend
-will not be built and only the libretro core will be built. RetroArch
-will be required to run the libretro core in this case.
-
-To build the debugging symbols for the libretro core use:
- DEBUG=1 ./Gearsystem.SlackBuild
diff --git a/games/Gearsystem/slack-desc b/games/Gearsystem/slack-desc
deleted file mode 100644
index baf3f56882..0000000000
--- a/games/Gearsystem/slack-desc
+++ /dev/null
@@ -1,19 +0,0 @@
-# HOW TO EDIT THIS FILE:
-# The "handy ruler" below makes it easier to edit a package description.
-# Line up the first '|' above the ':' following the base package name, and
-# the '|' on the right side marks the last column you can put a character in.
-# You must make exactly 11 lines for the formatting to be correct. It's also
-# customary to leave one space after the ':' except on otherwise blank lines.
-
- |-----handy-ruler------------------------------------------------------|
-Gearsystem: Gearsystem (Sega Master System / Game Gear Emulator)
-Gearsystem:
-Gearsystem: Gearsystem is a Sega Master System / Game Gear emulator written in
-Gearsystem: C++.
-Gearsystem:
-Gearsystem: Homepage: https://github.com/drhelius/Gearsystem
-Gearsystem:
-Gearsystem:
-Gearsystem:
-Gearsystem:
-Gearsystem:
diff --git a/games/Genesis-Plus-GX/Genesis-Plus-GX.SlackBuild b/games/Genesis-Plus-GX/Genesis-Plus-GX.SlackBuild
deleted file mode 100644
index 48faff4408..0000000000
--- a/games/Genesis-Plus-GX/Genesis-Plus-GX.SlackBuild
+++ /dev/null
@@ -1,82 +0,0 @@
-#!/bin/sh
-
-# Slackware build script for Genesis-Plus-GX
-
-# Copyright 2016-2018 Hunter Sezen
-# All rights reserved.
-#
-# Redistribution and use of this script, with or without modification, is
-# permitted provided that the following conditions are met:
-#
-# 1. Redistributions of this script must retain the above copyright
-# notice, this list of conditions and the following disclaimer.
-#
-# THIS SOFTWARE IS PROVIDED BY THE AUTHOR "AS IS" AND ANY EXPRESS OR IMPLIED
-# WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE IMPLIED WARRANTIES OF
-# MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE ARE DISCLAIMED. IN NO
-# EVENT SHALL THE AUTHOR BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL,
-# SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT LIMITED TO,
-# PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, DATA, OR PROFITS;
-# OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY,
-# WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR
-# OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF THIS SOFTWARE, EVEN IF
-# ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
-
-PRGNAM=Genesis-Plus-GX
-LIBNAM=$(echo $PRGNAM | tr [A-Z] [a-z] | tr - _)_libretro
-VERSION=${VERSION:-2018.10.08_2ab02c8}
-BUILD=${BUILD:-1}
-TAG=${TAG:-_SBo}
-
-if [ -z "$ARCH" ]; then
- case "$( uname -m )" in
- i?86) ARCH=i586 ;;
- arm*) ARCH=arm ;;
- *) ARCH=$( uname -m ) ;;
- esac
-fi
-
-CWD=$(pwd)
-TMP=${TMP:-/tmp/SBo}
-PKG=$TMP/package-$PRGNAM
-OUTPUT=${OUTPUT:-/tmp}
-
-LIBDIRSUFFIX=
-[ "$ARCH" = x86_64 ] && LIBDIRSUFFIX=64
-
-set -eu
-
-rm -rf $PKG
-mkdir -p $TMP $PKG $OUTPUT
-cd $TMP
-rm -rf $PRGNAM-$VERSION
-tar xvf $CWD/$PRGNAM-$VERSION.tar.xz
-cd $PRGNAM-$VERSION
-chown -R root:root .
-find -L . \
- \( -perm 777 -o -perm 775 -o -perm 750 -o -perm 711 -o -perm 555 \
- -o -perm 511 \) -exec chmod 755 {} \; -o \
- \( -perm 666 -o -perm 664 -o -perm 640 -o -perm 600 -o -perm 444 \
- -o -perm 440 -o -perm 400 \) -exec chmod 644 {} \;
-
-[ "${DEBUG:=0}" != 0 ] && DEBUG=1
-
-make -f Makefile.libretro DEBUG=$DEBUG GIT_VERSION="${VERSION#*_}"
-
-install -Dm0644 $LIBNAM.so $PKG/usr/lib${LIBDIRSUFFIX}/libretro/$LIBNAM.so
-install -Dm0644 $LIBNAM.info $PKG/usr/lib${LIBDIRSUFFIX}/libretro/info/$LIBNAM.info
-
-if [ $DEBUG = 0 ]; then
- find $PKG -print0 | xargs -0 file | grep -e "executable" -e "shared object" | grep ELF \
- | cut -f 1 -d : | xargs strip --strip-unneeded 2> /dev/null || true
-fi
-
-mkdir -p $PKG/usr/doc/$PRGNAM-$VERSION
-cp -a *.txt README.md $PKG/usr/doc/$PRGNAM-$VERSION
-cat $CWD/$PRGNAM.SlackBuild > $PKG/usr/doc/$PRGNAM-$VERSION/$PRGNAM.SlackBuild
-
-mkdir -p $PKG/install
-cat $CWD/slack-desc > $PKG/install/slack-desc
-
-cd $PKG
-/sbin/makepkg -l y -c n $OUTPUT/$PRGNAM-$VERSION-$ARCH-$BUILD$TAG.${PKGTYPE:-tgz}
diff --git a/games/Genesis-Plus-GX/Genesis-Plus-GX.info b/games/Genesis-Plus-GX/Genesis-Plus-GX.info
deleted file mode 100644
index 8d2abb2a70..0000000000
--- a/games/Genesis-Plus-GX/Genesis-Plus-GX.info
+++ /dev/null
@@ -1,10 +0,0 @@
-PRGNAM="Genesis-Plus-GX"
-VERSION="2018.10.08_2ab02c8"
-HOMEPAGE="https://github.com/ekeeke/Genesis-Plus-GX"
-DOWNLOAD="http://slackless.raccoons.tech/src/libretro/Genesis-Plus-GX-2018.10.08_2ab02c8.tar.xz"
-MD5SUM="1dd2233012803263837d4956fe938d4d"
-DOWNLOAD_x86_64=""
-MD5SUM_x86_64=""
-REQUIRES="RetroArch"
-MAINTAINER="orphaned - no maintainer"
-EMAIL="nobody@nowhere.com"
diff --git a/games/Genesis-Plus-GX/README b/games/Genesis-Plus-GX/README
deleted file mode 100644
index 4518e17b2e..0000000000
--- a/games/Genesis-Plus-GX/README
+++ /dev/null
@@ -1,35 +0,0 @@
-Genesis Plus GX is an open-source Sega 8/16 bit emulator focused on
-accuracy and portability.
-
-The source code, initially based on Genesis Plus 1.2a by Charles
-MacDonald has been heavily modified & enhanced, with respect to
-original goals and design, in order to improve emulation accuracy as
-well as adding support for new peripherals, cartridge or console
-hardware and many other exciting features.
-
-The result is that Genesis Plus GX is now more a continuation of the
-original project than a simple port, providing very accurate emulation
-and 100% compatibility with Genesis / Mega Drive, Sega/Mega CD, Master
-System, Game Gear & SG-1000 released software (including all unlicensed
-or pirate known dumps), also emulating backwards compatibility modes
-when available.
-
-Genesis Plus GX supports usage of actual BIOS image files rather than
-emulating them. Only Sega CD/Mega CD emulation requires a real BIOS to
-work. It is recommended to use a BIOS from a Model 1 system, but others
-are expected to work too.
-
-* bios_CD_E.bin (MegaCD EU BIOS)
-* bios_CD_U.bin (SegaCD US BIOS)
-* bios_CD_J.bin (MegaCD JP BIOS)
-* bios_E.sms (MasterSystem EU BIOS)
-* bios_U.sms (MasterSystem US BIOS)
-* bios_J.sms (MasterSystem JP BIOS)
-* bios.gg (GameGear BIOS)
-* sk.bin (Sonic & Knuckles (2 MiB) ROM)
-* sk2chip.bin (Sonic & Knuckles UPMEM (256 KiB) ROM)
-* areplay.bin (Action Replay (Pro) ROM)
-* ggenie.bin (Game Genie ROM)
-
-To build the debugging symbols use:
- DEBUG=1 ./Genesis-Plus-GX.SlackBuild
diff --git a/games/Genesis-Plus-GX/slack-desc b/games/Genesis-Plus-GX/slack-desc
deleted file mode 100644
index 9606efad26..0000000000
--- a/games/Genesis-Plus-GX/slack-desc
+++ /dev/null
@@ -1,19 +0,0 @@
-# HOW TO EDIT THIS FILE:
-# The "handy ruler" below makes it easier to edit a package description.
-# Line up the first '|' above the ':' following the base package name, and
-# the '|' on the right side marks the last column you can put a character in.
-# You must make exactly 11 lines for the formatting to be correct. It's also
-# customary to leave one space after the ':' except on otherwise blank lines.
-
- |-----handy-ruler------------------------------------------------------|
-Genesis-Plus-GX: Genesis-Plus-GX (An enhanced port of Genesis Plus)
-Genesis-Plus-GX:
-Genesis-Plus-GX: Genesis Plus GX is an open-source Sega 8/16 bit emulator focused on
-Genesis-Plus-GX: accuracy and portability.
-Genesis-Plus-GX:
-Genesis-Plus-GX: Homepage: https://github.com/ekeeke/Genesis-Plus-GX
-Genesis-Plus-GX:
-Genesis-Plus-GX:
-Genesis-Plus-GX:
-Genesis-Plus-GX:
-Genesis-Plus-GX:
diff --git a/games/KAdventure/KAdventure.SlackBuild b/games/KAdventure/KAdventure.SlackBuild
index 0adfb3ccbb..38145d7a00 100644
--- a/games/KAdventure/KAdventure.SlackBuild
+++ b/games/KAdventure/KAdventure.SlackBuild
@@ -1,4 +1,4 @@
-#!/bin/sh
+#!/bin/bash
# Slackware build script for KAdventure
@@ -22,10 +22,17 @@
# OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF THIS SOFTWARE, EVEN IF
# ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
+# 20220219 bkw: Modified by SlackBuilds.org, for Slackware 15.0:
+# - add qt4 dependency (and use qmake-qt4).
+# - more binary to /usr/games ('cause it's a game).
+
+cd $(dirname $0) ; CWD=$(pwd)
+
PRGNAM=KAdventure
VERSION=${VERSION:-gitfdc9579}
-BUILD=${BUILD:-1}
+BUILD=${BUILD:-2}
TAG=${TAG:-_SBo}
+PKGTYPE=${PKGTYPE:-tgz}
if [ -z "$ARCH" ]; then
case "$( uname -m )" in
@@ -35,7 +42,11 @@ if [ -z "$ARCH" ]; then
esac
fi
-CWD=$(pwd)
+if [ ! -z "${PRINT_PACKAGE_NAME}" ]; then
+ echo "$PRGNAM-$VERSION-$ARCH-$BUILD$TAG.$PKGTYPE"
+ exit 0
+fi
+
TMP=${TMP:-/tmp/SBo}
PKG=$TMP/package-$PRGNAM
OUTPUT=${OUTPUT:-/tmp}
@@ -65,33 +76,31 @@ cd $PRGNAM-master
#we'll patch the qml files to remove a runtime warning
#upstream will be fixing this eventually.
-sed -i "s/Qt 4.7/QtQuick 1.1/" src/*.qml
-sed -i "s/Qt 4.7/QtQuick 1.1/" levels/BouncingBall.qml
-sed -i "s/Qt 4.7/QtQuick 1.1/" objects/*.qml
+
+# 20220219 bkw: well, I wouldn't hold my breath...
+
+sed -i "s/Qt 4.7/QtQuick 1.1/" \
+ src/*.qml levels/BouncingBall.qml objects/*.qml
+
chown -R root:root .
find -L . \
\( -perm 777 -o -perm 775 -o -perm 750 -o -perm 711 -o -perm 555 \
- -o -perm 511 \) -exec chmod 755 {} \; -o \
+ -o -perm 511 \) -exec chmod 755 {} \+ -o \
\( -perm 666 -o -perm 664 -o -perm 640 -o -perm 600 -o -perm 444 \
- -o -perm 440 -o -perm 400 \) -exec chmod 644 {} \;
+ -o -perm 440 -o -perm 400 \) -exec chmod 644 {} \+
-#mkdir -p build
-qmake QMAKE_CFLAGS="$SLKCFLAGS" QMAKE_CXXFLAGS="$SLKCFLAGS" -config release
+qmake-qt4 QMAKE_CFLAGS="$SLKCFLAGS" QMAKE_CXXFLAGS="$SLKCFLAGS" -config release
make
#the make file has no install info so we do things ourselves
-mkdir -p $PKG/usr/bin $PKG/usr/share/applications/
-cp $PRGNAM $PKG/usr/bin
+mkdir -p $PKG/usr/games $PKG/usr/share/applications/
+install -s -m0755 $PRGNAM $PKG/usr/games
mkdir -p $PKG/usr/share/applications/ $PKG/usr/share/icons/hicolor/{128x128,48x48,16x16}/apps
cp images/player.png $PKG/usr/share/icons/hicolor/48x48/apps/$PRGNAM.png
convert images/player.png -resize 128x128 $PKG/usr/share/icons/hicolor/128x128/apps/$PRGNAM.png
convert images/player.png -resize 16x16 $PKG/usr/share/icons/hicolor/16x16/apps/$PRGNAM.png
cp $CWD/$PRGNAM.desktop $PKG/usr/share/applications/$PRGNAM.desktop
-#lets strip the executable
-find $PKG -print0 | xargs -0 file | grep -e "executable" -e "shared object" | grep ELF \
- | cut -f 1 -d : | xargs strip --strip-unneeded 2> /dev/null || true
-
mkdir -p $PKG/usr/doc/$PRGNAM-$VERSION
cp README.md $PKG/usr/doc/$PRGNAM-$VERSION/
cd ..
@@ -103,4 +112,4 @@ cat $CWD/doinst.sh > $PKG/install/doinst.sh
#now make the package
cd $PKG
-/sbin/makepkg -l y -c n $OUTPUT/$PRGNAM-$VERSION-$ARCH-$BUILD$TAG.${PKGTYPE:-tgz}
+/sbin/makepkg -l y -c n $OUTPUT/$PRGNAM-$VERSION-$ARCH-$BUILD$TAG.$PKGTYPE
diff --git a/games/KAdventure/KAdventure.desktop b/games/KAdventure/KAdventure.desktop
index 56475141ca..5c5e3efcdf 100644
--- a/games/KAdventure/KAdventure.desktop
+++ b/games/KAdventure/KAdventure.desktop
@@ -1,7 +1,7 @@
[Desktop Entry]
Name=KAdventure
-Comment=Simple 2D puzzle Game. Guide the man to the exit
-Exec=KAdventure
+Comment=Simple 2D puzzle game: guide the man to the exit.
+Exec=/usr/games/KAdventure
Icon=KAdventure
Terminal=false
StartupNotify=false
diff --git a/games/KAdventure/KAdventure.info b/games/KAdventure/KAdventure.info
index de0bfc8613..e75f811264 100644
--- a/games/KAdventure/KAdventure.info
+++ b/games/KAdventure/KAdventure.info
@@ -5,6 +5,6 @@ DOWNLOAD="http://sourceforge.net/projects/slackbuildsdirectlinks/files/KAdventur
MD5SUM="a089f6a795190fcd570edecd3e4b5460"
DOWNLOAD_x86_64=""
MD5SUM_x86_64=""
-REQUIRES=""
+REQUIRES="qt4"
MAINTAINER="Tim Dickson"
EMAIL="dickson.tim@googlemail.com"
diff --git a/games/KoboDeluxe/02_paths.patch b/games/KoboDeluxe/02_paths.patch
new file mode 100644
index 0000000000..b54ab52ded
--- /dev/null
+++ b/games/KoboDeluxe/02_paths.patch
@@ -0,0 +1,40 @@
+# Disable reading of configs, graphics, and data from the current directory.
+# So it's safe to run kobodeluxe from anywhere w/o worry about an attacker
+# feeding it bad data.
+--- kobodeluxe-0.5.1.orig/kobo.cpp
++++ kobodeluxe-0.5.1/kobo.cpp
+@@ -141,21 +141,21 @@
+ * Graphics data
+ */
+ /* Current dir; from within the build tree */
+- fmap->addpath("GFX", "./data/gfx");
++ //fmap->addpath("GFX", "./data/gfx");
+ /* Real data dir */
+ fmap->addpath("GFX", "DATA>>gfx");
+ /* Current dir */
+- fmap->addpath("GFX", "./gfx");
++ //fmap->addpath("GFX", "./gfx");
+
+ /*
+ * Sound data
+ */
+ /* Current dir; from within the build tree */
+- fmap->addpath("SFX", "./data/sfx");
++ //fmap->addpath("SFX", "./data/sfx");
+ /* Real data dir */
+ fmap->addpath("SFX", "DATA>>sfx");
+ /* Current dir */
+- fmap->addpath("SFX", "./sfx");
++ //fmap->addpath("SFX", "./sfx");
+
+ /*
+ * Score files (user and global)
+@@ -173,7 +173,7 @@
+ /* System local */
+ fmap->addpath("CONFIG", SYSCONF_DIR);
+ /* In current dir (last resort) */
+- fmap->addpath("CONFIG", "./");
++ //fmap->addpath("CONFIG", "./");
+ }
+
+
diff --git a/games/KoboDeluxe/KoboDeluxe.SlackBuild b/games/KoboDeluxe/KoboDeluxe.SlackBuild
index 5e57e94d5f..0e0dfc5425 100644
--- a/games/KoboDeluxe/KoboDeluxe.SlackBuild
+++ b/games/KoboDeluxe/KoboDeluxe.SlackBuild
@@ -1,27 +1,32 @@
-#!/bin/sh
+#!/bin/bash
# Slackware build script for Kobo Deluxe
-# Written by Rubén Llorente <porting@use.startmail.com>
+# Written by Rubén Llorente <email removed>
+# Updated and maintained by B. Watson <urchlay@slackware.uk>
-# This script is of public domain. It can be distributed, modified and used as desired.
+# Licensed under the WTFPL. See http://www.wtfpl.net/txt/copying/ for details.
-# THIS SOFTWARE IS PROVIDED BY THE AUTHOR ''AS IS'' AND ANY EXPRESS OR IMPLIED
-# WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE IMPLIED WARRANTIES OF
-# MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE ARE DISCLAIMED. IN NO
-# EVENT SHALL THE AUTHOR BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL,
-# SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT LIMITED TO,
-# PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, DATA, OR PROFITS;
-# OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY,
-# WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR
-# OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF THIS SOFTWARE, EVEN IF
-# ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
+# 20230804 bkw, BUILD=2:
+# - take over maintenance.
+# - relicense as WTFPL.
+# - install binary stripped.
+# - add patch from Debian to allow the game to be unpaused. apparently
+# this has been broken at least since Slackware 15.0 released,
+# maybe even before that.
+# - include upstream's icons in the package (and remove ours).
+# - update .desktop file.
+# - mention Bosconian in the README, since this game is basically a
+# remake of it with a few enhancements.
+# - fix typos and grammar in man page, and extend the CONTROLS section.
+cd $(dirname $0) ; CWD=$(pwd)
PRGNAM=KoboDeluxe
VERSION=${VERSION:-0.5.1}
-BUILD=${BUILD:-1}
+BUILD=${BUILD:-2}
TAG=${TAG:-_SBo}
+PKGTYPE=${PKGTYPE:-tgz}
if [ -z "$ARCH" ]; then
case "$( uname -m )" in
@@ -31,7 +36,11 @@ if [ -z "$ARCH" ]; then
esac
fi
-CWD=$(pwd)
+if [ ! -z "${PRINT_PACKAGE_NAME}" ]; then
+ echo "$PRGNAM-$VERSION-$ARCH-$BUILD$TAG.$PKGTYPE"
+ exit 0
+fi
+
TMP=${TMP:-/tmp/SBo}
PKG=$TMP/package-$PRGNAM
OUTPUT=${OUTPUT:-/tmp}
@@ -56,20 +65,29 @@ rm -rf $PKG
mkdir -p $TMP $PKG $OUTPUT $PKG/install
cd $TMP
rm -rf $PRGNAM-$VERSION
-tar xvjf $CWD/$PRGNAM-$VERSION.tar.bz2
-cp -t $TMP $CWD/kobodeluxe-0.5.1-glibc2.10.patch $CWD/kobodeluxe-gcc-4.3.patch
+tar xvf $CWD/$PRGNAM-$VERSION.tar.bz2
cd $PRGNAM-$VERSION
+tar xvf icons.tar.gz
chown -R root:root .
-find -L . \
- \( -perm 777 -o -perm 775 -o -perm 750 -o -perm 711 -o -perm 555 \
- -o -perm 511 \) -exec chmod 755 {} \; -o \
- \( -perm 666 -o -perm 664 -o -perm 640 -o -perm 600 -o -perm 444 \
- -o -perm 440 -o -perm 400 \) -exec chmod 644 {} \;
+find -L . -perm /111 -a \! -perm 755 -a -exec chmod 755 {} + -o \
+ \! -perm /111 -a \! -perm 644 -a -exec chmod 644 {} +
+
+# These patches are incuded to fix compilation bugs.
+# I want to thank the Arch community for making them availible.
+patch -p0 < $CWD/kobodeluxe-0.5.1-glibc2.10.patch
+patch -p0 < $CWD/kobodeluxe-gcc-4.3.patch
+
+# 20230804 bkw: patch from Debian. Without this, the game starts
+# up in Paused mode, and cannot be unpaused.
+patch -p1 < $CWD/ignore-appinputfocus.patch
+
+# 20230804 bkw: another Debian patch, prevents the game from looking
+# in the current directory for data.
+patch -p1 < $CWD/02_paths.patch
-# This patches are incuded to fix compilation bugs.
-# I want to thank the Arch comunity for making them availible.
-patch -p0 <$TMP/kobodeluxe-0.5.1-glibc2.10.patch
-patch -p0 <$TMP/kobodeluxe-gcc-4.3.patch
+# 20230804 bkw: fix typos/grammar and document the pause and screenshot
+# keystrokes.
+patch -p1 < $CWD/manpagefix.diff
CFLAGS="$SLKCFLAGS" \
CXXFLAGS="$SLKCFLAGS" \
@@ -85,21 +103,28 @@ CXXFLAGS="$SLKCFLAGS" \
--build=$ARCH-slackware-linux
make
-make install DESTDIR=$PKG
+make install-strip DESTDIR=$PKG
+gzip -9 $PKG/usr/man/man*/*
-find $PKG/usr/man -type f -exec gzip -9 {} \;
-for i in $( find $PKG/usr/man -type l ) ; do ln -s $( readlink $i ).gz $i.gz ; rm $i ; done
+# 20230804 bkw: upstream included prescaled icons in icons.tar.gz.
+for i in icons/KDE/icons/*; do
+ size="$( basename $i )"
+ dir=$PKG/usr/share/icons/hicolor/$size/apps
+ mkdir -p $dir
+ cp -a $i/kobodl.png $dir
+done
mkdir -p $PKG/usr/share/{applications,pixmaps}
-cat $CWD/$PRGNAM.png > $PKG/usr/share/pixmaps/$PRGNAM.png
cat $CWD/$PRGNAM.desktop > $PKG/usr/share/applications/$PRGNAM.desktop
+ln -s ../icons/hicolor/48x48/apps/kobodl.png $PKG/usr/share/pixmaps
-mkdir -p $PKG/usr/doc/$PRGNAM-$VERSION
-cp -a COPYING README* ChangeLog TODO $PKG/usr/doc/$PRGNAM-$VERSION
-cat $CWD/$PRGNAM.SlackBuild > $PKG/usr/doc/$PRGNAM-$VERSION/$PRGNAM.SlackBuild
+PKGDOC=$PKG/usr/doc/$PRGNAM-$VERSION
+mkdir -p $PKGDOC
+cp -a COPYING README* ChangeLog TODO $PKGDOC
+cat $CWD/$PRGNAM.SlackBuild > $PKGDOC/$PRGNAM.SlackBuild
cat $CWD/slack-desc > $PKG/install/slack-desc
cat $CWD/doinst.sh > $PKG/install/doinst.sh
cd $PKG
-/sbin/makepkg -l y -c n $OUTPUT/$PRGNAM-$VERSION-$ARCH-$BUILD$TAG.${PKGTYPE:-tgz}
+/sbin/makepkg -l y -c n $OUTPUT/$PRGNAM-$VERSION-$ARCH-$BUILD$TAG.$PKGTYPE
diff --git a/games/KoboDeluxe/KoboDeluxe.desktop b/games/KoboDeluxe/KoboDeluxe.desktop
index 89e3254379..07a99e8435 100644
--- a/games/KoboDeluxe/KoboDeluxe.desktop
+++ b/games/KoboDeluxe/KoboDeluxe.desktop
@@ -1,7 +1,14 @@
[Desktop Entry]
-Name=Kobo Deluxe
-GenericName=Kobo Deluxe, a retro arcade-style game
-Exec=kobodl
-Icon=KoboDeluxe
Type=Application
+Name=Kobo Deluxe
+Name[nl]=Kobo Deluxe
+Comment=Destroy enemy bases in space
+Comment[nl]=Schiet vijandelijke bases in de ruimte kapot
+Comment[fr]=Détruire des bases ennemies dans l'espace
+GenericName=Arcade Game
+GenericName[nl]=Arcadespel
+GenericName[fr]=Jeu d'Arcade
+Exec=/usr/games/kobodl
+Icon=kobodl
+Terminal=false
Categories=Game;ArcadeGame;
diff --git a/games/KoboDeluxe/KoboDeluxe.info b/games/KoboDeluxe/KoboDeluxe.info
index d91d1f1063..10bf6d73f6 100644
--- a/games/KoboDeluxe/KoboDeluxe.info
+++ b/games/KoboDeluxe/KoboDeluxe.info
@@ -6,5 +6,5 @@ MD5SUM="cb5dcdaf07ccad18a921058138dedc4a"
DOWNLOAD_x86_64=""
MD5SUM_x86_64=""
REQUIRES=""
-MAINTAINER="Rubén Llorente"
-EMAIL="porting@use.startmail.com"
+MAINTAINER="B. Watson"
+EMAIL="urchlay@slackware.uk"
diff --git a/games/KoboDeluxe/KoboDeluxe.png b/games/KoboDeluxe/KoboDeluxe.png
deleted file mode 100644
index 617d0216e2..0000000000
--- a/games/KoboDeluxe/KoboDeluxe.png
+++ /dev/null
Binary files differ
diff --git a/games/KoboDeluxe/README b/games/KoboDeluxe/README
index 1572e09af6..b168dc7a61 100644
--- a/games/KoboDeluxe/README
+++ b/games/KoboDeluxe/README
@@ -1,6 +1,11 @@
+KoboDeluxe (2d space shooting game)
+
Kobo is a game based on Xkobo. It is a 2D scrolling shooting game
where you must destroy every enemy starbase you find in each stage,
while avoiding being taken down by their defenses, the enemy ships,
the asteroids...
-Tons of good old arcade endless action.
+Gameplay is very similar to the classic arcade game Bosconian, from
+1981.
+
+The executable and man page are called "kobodl".
diff --git a/games/KoboDeluxe/doinst.sh b/games/KoboDeluxe/doinst.sh
index ef0cf43a90..65c7e2eeb9 100644
--- a/games/KoboDeluxe/doinst.sh
+++ b/games/KoboDeluxe/doinst.sh
@@ -1,3 +1,9 @@
if [ -x /usr/bin/update-desktop-database ]; then
- /usr/bin/update-desktop-database usr/share/applications &> /dev/null
+ /usr/bin/update-desktop-database -q usr/share/applications >/dev/null 2>&1
+fi
+
+if [ -e usr/share/icons/hicolor/icon-theme.cache ]; then
+ if [ -x /usr/bin/gtk-update-icon-cache ]; then
+ /usr/bin/gtk-update-icon-cache -f usr/share/icons/hicolor >/dev/null 2>&1
+ fi
fi
diff --git a/games/KoboDeluxe/ignore-appinputfocus.patch b/games/KoboDeluxe/ignore-appinputfocus.patch
new file mode 100644
index 0000000000..90a6a403c8
--- /dev/null
+++ b/games/KoboDeluxe/ignore-appinputfocus.patch
@@ -0,0 +1,17 @@
+Description: ignore SDL_ACTIVEEVENT with SDL_APPINPUTFOCUS flag
+ These events seem to come all the time, causing a pause which can't be
+ unpaused
+Bug-Debian: https://bugs.debian.org/909244
+Author: Reiner Herrmann <reiner@reiner-h.de>
+
+--- a/kobo.cpp
++++ b/kobo.cpp
+@@ -1691,7 +1691,7 @@ void kobo_gfxengine_t::frame()
+ break;
+ case SDL_ACTIVEEVENT:
+ // Any type of focus loss should activate pause mode!
+- if(!ev.active.gain)
++ if(!ev.active.gain && ev.active.state != SDL_APPINPUTFOCUS)
+ km.pause_game();
+ break;
+ case SDL_QUIT:
diff --git a/games/KoboDeluxe/manpagefix.diff b/games/KoboDeluxe/manpagefix.diff
new file mode 100644
index 0000000000..2d9e9deab0
--- /dev/null
+++ b/games/KoboDeluxe/manpagefix.diff
@@ -0,0 +1,120 @@
+diff -Naur KoboDeluxe-0.5.1/kobodl.6 KoboDeluxe-0.5.1.patched/kobodl.6
+--- KoboDeluxe-0.5.1/kobodl.6 2007-12-26 15:15:10.000000000 -0500
++++ KoboDeluxe-0.5.1.patched/kobodl.6 2023-08-04 18:04:07.069016990 -0400
+@@ -1,14 +1,14 @@
+-.TH KOBODL 6 "26 December 2007"
++.TH KOBODL 6 "4 August 2023" 0.5.1 SlackBuilds.org
+ .SH NAME
+-kobodl - Kobo Deluxe, an enhanced version of the scrolling game XKobo
++kobodl \- Kobo Deluxe, an enhanced version of the scrolling game XKobo
+ .SH SYNOPSIS
+ .B kobodl
+ [
+ .I options
+ ]
+ .SH DESCRIPTION
+-Kobo Deluxe is a 3'rd person scrolling 2D shooter with a simple and responsive
+-control system - which you'll need to tackle the tons of enemy ships that shoot
++Kobo Deluxe is a 3rd person scrolling 2D shooter with a simple and responsive
++control system \- which you'll need to tackle the tons of enemy ships that shoot
+ at you, chase you, circle around you shooting, or even launch other ships at
+ you, while you're trying to destroy the labyrinth shaped bases. There are 50
+ action packed levels with smoothly increasing difficulty, and different
+@@ -31,10 +31,15 @@
+ .SH CONTROLS
+ The ship can be controlled with the keyboard, or optionally a mouse or
+ joystick. With the keyboard, the arrow keys move the ship (two keys for
+-diagonals), and the shift and ctrl keys shoots. The numeric key pad can also be
++diagonals), and the Shift or Ctrl key shoots. The numeric key pad can also be
+ used; the usual 2/4/6/8 (arrows), and also 1/3/7/9 for single key diagonals.
+-Escape enters the meny system, from where it is possible to change settings,
++Escape enters the menu system, from where it is possible to change settings,
+ start a new game or exit the game.
++.P
++During gameplay, you can press P or the Pause key to pause/unpause the game.
++PrintScreen or SysRq saves a screenshot of the game to a file in the current
++directory named \fBscreenXX.bmp\fR, where the \fBXX\fR is a number from 00
++to 99.
+ .SH OPTIONS
+ Note that all relevant options can be also configured in the config file,
+ which can be edited directly, or using the options menus in the game.
+@@ -70,7 +75,7 @@
+ Always Fire. Default: Off.
+ .TP
+ .B \-[no]mousecapture
+-In-game Mouse Capture. Default: On.
++In\-game Mouse Capture. Default: On.
+ .TP
+ .B \-scrollradar
+ Radar Scroll Mode. Default: 2.
+@@ -130,7 +135,7 @@
+ Sound Effects Volume. Default: 100.
+ .TP
+ .B \-music_vol
+-In-Game Music Volume. Default: 30.
++In\-Game Music Volume. Default: 30.
+ .TP
+ .B \-reverb
+ Reverb Level. Default: 100.
+@@ -176,7 +181,7 @@
+ Enable Vertical Sync. Default: On.
+ .TP
+ .B \-videopages
+-Number of Video Pages. Default: -1.
++Number of Video Pages. Default: \-1.
+ .TP
+ .B \-scalemode
+ Scaling Filter Mode. Default: 1.
+@@ -200,13 +205,13 @@
+ Contrast. Default: 100.
+ .TP
+ .B \-files
+-Specify the root path of the game. Default: ""
++Specify the root path of the game. Default: "/usr/share/kobo-deluxe"
+ .TP
+ .B \-gfx
+-Specify the path to the game's graphics data. Default: ""
++Specify the path to the game's graphics data. Default: "/usr/share/kobo-deluxe/gfx"
+ .TP
+ .B \-sfx
+-Specify the path to the game's sound data. Default: ""
++Specify the path to the game's sound data. Default: "/usr/share/kobo-deluxe/sfx"
+ .TP
+ .B \-scores
+ Specify the path to the game's score files. Default: ""
+@@ -285,11 +290,15 @@
+ (Not saved!) Print options for 'man'. Default: Off.
+ .SH FILES
+ .TP
++.B /var/games/kobo-deluxe/scores/
++High score files are stored here. These are binary files,
++not human\-readable; use the \fB\-hiscores\fR option to view them.
++.TP
+ .B ~/.kobodlrc
+-The per-user configuration file for Kobo Deluxe.
++The per\-user configuration file for Kobo Deluxe.
+ .SH AUTHORS
+ Originally written by
+-Akira Higuchi (a-higuti@math.hokudai.ac.jp), XKobo was turned into Kobo
++Akira Higuchi (a\-higuti@math.hokudai.ac.jp), XKobo was turned into Kobo
+ Deluxe by David Olofson <david@olofson.net>
+ .SH THANKS
+ Thanks, in no particular order, to...
+@@ -364,7 +373,7 @@
+ .P
+ Copyright (C) 1997 Masanao Izumo
+ .P
+-Copyright (C) 1999-2001 Simon Peter
++Copyright (C) 1999\-2001 Simon Peter
+ .P
+ Copyright (C) 2002 Florian Schulze
+ .P
+@@ -372,7 +381,7 @@
+ .P
+ Copyright (C) 2005 Erik Auerswald
+ .P
+-Copyright (c) 1999-2007 David Olofson
++Copyright (c) 1999\-2007 David Olofson
+ .P
+ \fBKobo Deluxe\fP is free software; you can redistribute it and/or modify it
+ under the terms of the GNU General Public License.
diff --git a/games/KoboDeluxe/slack-desc b/games/KoboDeluxe/slack-desc
index 2bd324112d..a69f49e676 100644
--- a/games/KoboDeluxe/slack-desc
+++ b/games/KoboDeluxe/slack-desc
@@ -6,14 +6,14 @@
# customary to leave one space after the ':' except on otherwise blank lines.
|-----handy-ruler------------------------------------------------------|
-KoboDeluxe: KoboDeluxe (Simple space shooting game)
+KoboDeluxe: KoboDeluxe (2d space shooting game)
KoboDeluxe:
-KoboDeluxe: Kobo is a game based in Xkobo. It is a 2D scrolling shooting
-KoboDeluxe: game where you must destroy every enemy starbase you find in
-KoboDeluxe: each stage, while avoiding being taken down by their defenses,
-KoboDeluxe: the enemy ships, the asteroids...
-KoboDeluxe:
-KoboDeluxe: Tons of good old arcade endless action.
+KoboDeluxe: Kobo is a game based on Xkobo. It is a 2D scrolling shooting game
+KoboDeluxe: where you must destroy every enemy starbase you find in each stage,
+KoboDeluxe: while avoiding being taken down by their defenses, the enemy ships,
+KoboDeluxe: the asteroids...
KoboDeluxe:
+KoboDeluxe: Gameplay is very similar to the classic arcade game Bosconian, from
+KoboDeluxe: 1981.
KoboDeluxe:
KoboDeluxe:
diff --git a/games/LucasChess/Configuration.py b/games/LucasChess/Configuration.py
new file mode 100644
index 0000000000..3ba3ae4208
--- /dev/null
+++ b/games/LucasChess/Configuration.py
@@ -0,0 +1,1067 @@
+import operator
+import os
+import pickle
+
+import OSEngines # in OS folder
+from PySide2 import QtWidgets
+from PySide2.QtCore import Qt
+
+import Code
+from Code import Util
+from Code.Analysis import AnalysisEval
+from Code.Base.Constantes import (MENU_PLAY_BOTH, POS_TUTOR_HORIZONTAL, INACCURACY, ENG_FIXED, DICT_GAME_TYPES,
+ GO_FORWARD)
+from Code.Board import ConfBoards
+from Code.Engines import Priorities
+from Code.QT import IconosBase
+from Code.QT import QTUtil
+from Code.SQL import UtilSQL
+from Code.Translations import Translate, TrListas
+
+LCFILEFOLDER: str = os.path.realpath("../lc.folder")
+LCBASEFOLDER: str = os.path.join(os.environ["HOME"], ".LucasChess")
+
+
+def int_toolbutton(xint):
+ for tbi in (Qt.ToolButtonIconOnly, Qt.ToolButtonTextOnly, Qt.ToolButtonTextBesideIcon, Qt.ToolButtonTextUnderIcon):
+ if xint == int(tbi):
+ return tbi
+ return Qt.ToolButtonTextUnderIcon
+
+
+def toolbutton_int(qt_tbi):
+ for tbi in (Qt.ToolButtonIconOnly, Qt.ToolButtonTextOnly, Qt.ToolButtonTextBesideIcon, Qt.ToolButtonTextUnderIcon):
+ if qt_tbi == tbi:
+ return int(tbi)
+ return int(Qt.ToolButtonTextUnderIcon)
+
+
+def active_folder():
+ if os.path.isfile(LCFILEFOLDER):
+ with open(LCFILEFOLDER, "rt", encoding="utf-8", errors="ignore") as f:
+ x = f.read()
+ if os.path.isdir(x):
+ return x
+ return LCBASEFOLDER
+
+
+def is_default_folder():
+ return active_folder() == os.path.abspath(LCBASEFOLDER)
+
+
+def change_folder(nueva):
+ if nueva:
+ if os.path.abspath(nueva) == os.path.abspath(LCBASEFOLDER):
+ return change_folder(None)
+ with open(LCFILEFOLDER, "wt", encoding="utf-8", errors="ignore") as f:
+ f.write(nueva)
+ else:
+ Util.remove_file(LCFILEFOLDER)
+
+
+class BoxRooms:
+ def __init__(self, configuration):
+ self.file = os.path.join(configuration.carpeta_config, "boxrooms.pk")
+ self._list = self.read()
+
+ def read(self):
+ obj = Util.restore_pickle(self.file)
+ return [] if obj is None else obj
+
+ def write(self):
+ Util.save_pickle(self.file, self._list)
+
+ def lista(self):
+ return self._list
+
+ def delete(self, num):
+ del self._list[num]
+ self.write()
+
+ def append(self, carpeta, boxroom):
+ self._list.append((carpeta, boxroom))
+ self.write()
+
+
+class Configuration:
+ def __init__(self, user):
+
+ Code.configuration = self
+
+ self.carpetaBase = active_folder()
+
+ self.carpetaUsers = os.path.join(self.carpetaBase, "users")
+
+ self.first_run = False
+
+ if user:
+ Util.create_folder(self.carpetaUsers)
+ self.carpeta = os.path.join(self.carpetaUsers, str(user.number))
+ Util.create_folder(self.carpeta)
+ else:
+ self.first_run = Util.create_folder(self.carpetaBase)
+ self.carpeta = self.carpetaBase
+
+ self.carpeta_config = os.path.join(self.carpeta, "__Config__")
+ Util.create_folder(self.carpeta_config)
+
+ self.carpeta_results = os.path.join(self.carpeta, "Results")
+ Util.create_folder(self.carpeta_results)
+
+ self.user = user
+ self.set_folders()
+
+ self.is_main = user == "" or user is None
+
+ self.version = ""
+
+ self.x_id = Util.huella()
+ self.x_player = ""
+ self.x_save_folder = ""
+ self.x_save_pgn_folder = ""
+ self.x_save_lcsb = ""
+ self.x_translator = ""
+
+ self.x_enable_highdpiscaling = False
+
+ self.x_show_effects = False
+ self.x_pieces_speed = 100
+ self.x_save_tutor_variations = True
+
+ self.x_mouse_shortcuts = False
+ self.x_show_candidates = False
+
+ self.x_captures_activate = True
+ self.x_info_activate = False
+ self.x_show_bestmove = True
+
+ self.x_default_tutor_active = True
+
+ self.x_elo = 0
+ self.x_michelo = 1500
+ self.x_wicker = 400
+ self.x_fics = 1200
+ self.x_fide = 1600
+ self.x_lichess = 1600
+
+ self.x_digital_board = ""
+ self.x_wheel_board = GO_FORWARD
+ self.x_wheel_pgn = GO_FORWARD
+
+ self.x_menu_play = MENU_PLAY_BOTH
+
+ self.x_opacity_tool_board = 10
+ self.x_position_tool_board = "T"
+
+ self.x_director_icon = False
+ self.x_direct_graphics = False
+
+ self.x_sizefont_infolabels = 11
+
+ self.x_pgn_width = 348
+ self.x_pgn_fontpoints = 10
+ self.x_pgn_rowheight = 24
+ self.x_pgn_withfigurines = True
+
+ self.x_pgn_english = False
+
+ self.x_autopromotion_q = False
+
+ self.x_copy_ctrl = True # False = Alt C
+
+ self.x_font_family = ""
+ self.x_font_points = 10
+
+ self.x_menu_points = 11
+ self.x_menu_bold = False
+
+ self.x_tb_fontpoints = 11
+ self.x_tb_bold = False
+ self.x_tb_icons = toolbutton_int(Qt.ToolButtonTextUnderIcon)
+
+ self.x_cursor_thinking = True
+
+ self.x_rival_inicial = "rocinante" if Code.is_linux else "irina"
+
+ self.tutor_default = "stockfish"
+ self.x_tutor_clave = self.tutor_default
+ self.x_tutor_multipv = 10 # 0: maximo
+ self.x_tutor_diftype = INACCURACY
+ self.x_tutor_mstime = 3000
+ self.x_tutor_depth = 0
+ self.x_tutor_priority = Priorities.priorities.low
+ self.x_tutor_view = POS_TUTOR_HORIZONTAL
+
+ self.analyzer_default = "stockfish"
+ self.x_analyzer_clave = self.analyzer_default
+ self.x_analyzer_multipv = 10 # 0: maximo
+ self.x_analyzer_mstime = 3000
+ self.x_analyzer_depth = 0
+ self.x_analyzer_priority = Priorities.priorities.low
+ self.x_analyzer_depth_ab = 24
+ self.x_analyzer_mstime_ab = 0
+ self.x_analyzer_mstime_refresh_ab = 200
+ self.x_analyzer_activate_ab = False
+
+ self.x_maia_nodes_exponential = False
+
+ self.x_eval_limit_score = 2000 # Score in cps means 100% Win
+ self.x_eval_curve_degree = 30 # Degree of curve cps and probability of win
+
+ self.x_eval_difmate_inaccuracy = 3 # Dif mate considered an inaccuracy
+ self.x_eval_difmate_mistake = 12 # Dif mate considered a mistake
+ self.x_eval_difmate_blunder = 20 # Dif mate considered a blunder
+
+ self.x_eval_mate_human = 15 # Max mate to consider
+
+ self.x_eval_blunder = 15.5 #
+ self.x_eval_mistake = 7.5
+ self.x_eval_inaccuracy = 3.3
+
+ self.x_eval_very_good_depth = 8
+ self.x_eval_good_depth = 5
+ self.x_eval_speculative_depth = 3
+
+ self.x_eval_max_elo = 3300.0
+ self.x_eval_min_elo = 200.0
+
+ self.x_eval_elo_blunder_factor = 12
+ self.x_eval_elo_mistake_factor = 6
+ self.x_eval_elo_inaccuracy_factor = 2
+
+ self.dic_eval_default = self.read_eval()
+
+ self.x_sound_beep = False
+ self.x_sound_our = False
+ self.x_sound_move = False
+ self.x_sound_results = False
+ self.x_sound_error = False
+ self.x_sound_tournements = False
+
+ self.x_interval_replay = 1400
+ self.x_beep_replay = False
+
+ self.x_engine_notbackground = False
+
+ self.x_check_for_update = False
+
+ self.x_carpeta_gaviota = self.carpeta_gaviota_defecto()
+
+ self.x_captures_showall = True
+ self.x_counts_showall = True
+
+ self.li_favoritos = None
+
+ self.li_personalities = []
+
+ self.rival = None
+
+ self.x_translation_mode = False
+
+ self.x_style = "windowsvista" if Code.is_windows else "Fusion"
+ self.x_style_mode = "By default"
+ self.x_style_icons = IconosBase.icons.NORMAL
+ self.style_sheet_default = None # temporary var
+
+ self.x_mode_select_lc = False
+
+ self._dic_books = None
+
+ self.__theme_num = 2
+
+ @property
+ def dic_books(self):
+ if self._dic_books is None:
+ if self._dic_books is None:
+ self._dic_books = {}
+
+ def add_folder(folder):
+ entry: os.DirEntry
+ for entry in os.scandir(folder):
+ if entry.is_dir():
+ add_folder(entry.path)
+ elif entry.name.endswith(".bin"):
+ self._dic_books[entry.name] = entry.path
+
+ add_folder(Code.path_resource("Openings"))
+ for engine in ("foxcub", "fox", "maia", "irina", "rodentii"):
+ add_folder(os.path.join(Code.folder_engines, engine))
+ return self._dic_books
+
+ def path_book(self, alias):
+ return self.dic_books[alias]
+
+ def read_eval(self):
+ d = {}
+ for key in dir(self):
+ if key.startswith("x_eval_"):
+ d[key[7:]] = getattr(self, key)
+ return d
+
+ @staticmethod
+ def dic_eval_keys():
+ return {
+ "limit_score": (1000, 4000, "int"),
+ "curve_degree": (1, 100, "%"),
+ "difmate_inaccuracy": (1, 99, "int"),
+ "difmate_mistake": (1, 99, "int"),
+ "difmate_blunder": (1, 99, "int"),
+ "mate_human": (10, 99, "int"),
+ "blunder": (1.0, 99.0, "dec"),
+ "mistake": (1.0, 99.0, "dec"),
+ "inaccuracy": (1.0, 99.0, "dec"),
+ "very_good_depth": (1, 128, "int"),
+ "good_depth": (1, 128, "int"),
+ "speculative_depth": (1, 128, "int"),
+ "max_elo": (2000, 4000, "int"),
+ "min_elo": (0, 2000, "int"),
+ "elo_blunder_factor": (1, 99, "dec"),
+ "elo_mistake_factor": (1, 99, "dec"),
+ "elo_inaccuracy_factor": (1, 99, "dec"),
+ }
+
+ def folder_translations(self):
+ folder = os.path.join(self.carpetaBase, "Translations")
+ if not os.path.isdir(folder):
+ Util.create_folder(folder)
+ return folder
+
+ def carpeta_sounds(self):
+ return os.path.join(self.carpeta, "Sounds")
+
+ def relee_engines(self):
+ self.dic_engines = OSEngines.read_engines(Code.folder_engines)
+ self.read_external_engines()
+
+ def boxrooms(self):
+ return BoxRooms(self)
+
+ def folder_save_lcsb(self, nuevo=None):
+ if nuevo:
+ self.x_save_lcsb = nuevo
+ return self.x_save_lcsb if self.x_save_lcsb else self.carpeta
+
+ def nom_player(self):
+ return _("Player") if not self.x_player else self.x_player
+
+ @staticmethod
+ def carpeta_gaviota_defecto():
+ return Code.path_resource("Gaviota")
+
+ def folder_gaviota(self):
+ if not Util.exist_file(os.path.join(self.x_carpeta_gaviota, "kbbk.gtb.cp4")):
+ self.x_carpeta_gaviota = self.carpeta_gaviota_defecto()
+ self.graba()
+ return self.x_carpeta_gaviota
+
+ def pieces_gaviota(self):
+ if Util.exist_file(os.path.join(self.folder_gaviota(), "kbbkb.gtb.cp4")):
+ return 5
+ return 4
+
+ def pieces_speed_porc(self):
+ sp = min(self.x_pieces_speed, 300)
+ return sp / 100.0
+
+ def set_player(self, value):
+ self.x_player = value
+
+ def translator(self):
+ return self.x_translator if self.x_translator else "en"
+
+ def language(self):
+ tr_actual = self.translator()
+ dlang = Code.path_resource("Locale")
+ fini = os.path.join(dlang, tr_actual, "lang.ini")
+ dic = Util.ini_dic(fini)
+ return dic["NAME"]
+
+ def set_translator(self, xtranslator):
+ self.x_translator = xtranslator
+
+ def type_icons(self):
+ return int_toolbutton(self.x_tb_icons)
+
+ def set_type_icons(self, qtv):
+ self.x_tb_icons = toolbutton_int(qtv)
+
+ def start(self):
+ self.lee()
+ self.relee_engines()
+ self.rival = self.buscaRival(self.x_rival_inicial)
+ self.leeConfBoards()
+
+ def changeActiveFolder(self, nueva):
+ change_folder(nueva)
+ self.set_folders() # Siempre sera el principal
+ self.lee()
+
+ def create_base_folder(self, folder):
+ folder = os.path.realpath(os.path.join(self.carpeta, folder))
+ Util.create_folder(folder)
+ return folder
+
+ def file_competition_with_tutor(self):
+ return os.path.join(self.carpeta_results, "CompetitionWithTutor.db")
+
+ def folder_userdata(self):
+ return self.carpeta
+
+ def folder_tournaments(self):
+ return self.create_base_folder("Tournaments")
+
+ def folder_tournaments_workers(self):
+ return self.create_base_folder("Tournaments/Workers")
+
+ def folder_leagues(self):
+ return self.create_base_folder("Leagues")
+
+ def folder_swisses(self):
+ return self.create_base_folder("Swiss")
+
+ def folder_openings(self):
+ dic = self.read_variables("OPENING_LINES")
+ folder = dic.get("FOLDER", self.folder_base_openings)
+ return folder if os.path.isdir(folder) else self.folder_base_openings
+
+ def set_folder_openings(self, new_folder):
+ new_folder = Util.relative_path(os.path.realpath(new_folder))
+ dic = self.read_variables("OPENING_LINES")
+ dic["FOLDER"] = new_folder
+ self.write_variables("OPENING_LINES", dic)
+
+ def file_mate(self, mate):
+ return os.path.join(self.carpeta_results, "Mate%d.pk" % mate)
+
+ def file_endings_gtb(self):
+ return os.path.join(self.carpeta_results, "EndingsGTB.db")
+
+ def file_external_engines(self):
+ return os.path.join(self.carpeta_config, "ExtEngines.pk")
+
+ def file_kibitzers(self):
+ return os.path.join(self.carpeta_config, "kibitzers.pk")
+
+ def file_adjournments(self):
+ return os.path.join(self.carpeta_config, "Adjournments.ddb")
+
+ def file_index_polyglots(self):
+ return os.path.join(self.carpeta_config, "index_polyglots.pk")
+
+ def file_pers_openings(self):
+ return os.path.join(self.carpeta_config, "persaperturas.pkd")
+
+ def file_captures(self):
+ return os.path.join(self.carpeta_results, "Captures.db")
+
+ def file_counts(self):
+ return os.path.join(self.carpeta_results, "Counts.db")
+
+ def file_mate15(self):
+ return os.path.join(self.carpeta_results, "Mate15.db")
+
+ def file_coordinates(self):
+ return os.path.join(self.carpeta_results, "Coordinates.db")
+
+ def folder_tactics(self):
+ return self.create_base_folder("Tactics")
+
+ def folder_databases(self):
+ return self.create_base_folder("Databases")
+
+ def file_autosave(self):
+ return os.path.join(self.folder_databases(), "__Autosave__.lcdb")
+
+ def folder_databases_pgn(self):
+ return self.create_base_folder("TemporaryDatabases")
+
+ def folder_polyglots_factory(self):
+ return self.create_base_folder("PolyglotsFactory")
+
+ def opj_config(self, file):
+ return os.path.join(self.carpeta_config, file)
+
+ def file_video(self):
+ return self.opj_config("confvid.pkd")
+
+ def file_sounds(self):
+ return self.opj_config("sounds.pkd")
+
+ def file_param_analysis(self):
+ return self.opj_config("paranalisis.pkd")
+
+ def file_analysis(self):
+ return self.opj_config("analisis.db")
+
+ def file_play_game(self):
+ return "%s/PlayGame.db" % self.carpeta_results
+
+ def file_learn_game(self):
+ return "%s/LearnPGN.db" % self.carpeta_results
+
+ def file_train_books_ol(self):
+ return "%s/booksTrainOL.liobj" % self.carpeta_results
+
+ def file_gms(self):
+ return "%s/gm.pke" % self.carpeta_config
+
+ def set_folders(self):
+
+ self.file = os.path.join(self.carpeta_config, "lk.pk2")
+
+ self.is_first_time = not Util.exist_file(self.file)
+
+ self.fichEstadElo = "%s/estad.pkli" % self.carpeta_results
+ self.fichEstadMicElo = "%s/estadMic.pkli" % self.carpeta_results
+ self.fichEstadWicker = "%s/estadWicker.pkli" % self.carpeta_results
+ self.fichEstadFicsElo = "%s/estadFics.pkli" % self.carpeta_results
+ self.fichEstadFideElo = "%s/estadFide.pkli" % self.carpeta_results
+ self.fichEstadLichessElo = "%s/estadLichess.pkli" % self.carpeta_results
+ self.file_books = "%s/books.lkv" % self.carpeta_config
+ self.file_train_books = "%s/booksTrain.lkv" % self.carpeta_results
+ self.file_memory = "%s/memo.pk" % self.carpeta_results
+ self.ficheroEntMaquina = "%s/entmaquina.pke" % self.carpeta_results
+ self.ficheroEntMaquinaPlay = "%s/entmaquinaplay.pke" % self.carpeta_results
+ self.ficheroEntMaquinaConf = "%s/entmaquinaconf.pkd" % self.carpeta_config
+ self.ficheroGMhisto = "%s/gmh.db" % self.carpeta_results
+ self.ficheroPuntuacion = "%s/punt.pke" % self.carpeta_results
+ self.ficheroDirSound = "%s/direc.pkv" % self.carpeta_config
+ self.ficheroEntOpenings = "%s/entaperturas.pkd" % self.carpeta
+ self.ficheroEntOpeningsPar = "%s/entaperturaspar.pkd" % self.carpeta
+ self.ficheroDailyTest = "%s/nivel.pkd" % self.carpeta_results
+ self.ficheroTemas = "%s/themes.pkd" % self.carpeta_config
+ self.personal_training_folder = "%s/Personal Training" % self.carpeta
+ self.ficheroBMT = "%s/lucas.bmt" % self.carpeta_results
+ self.ficheroPotencia = "%s/power.db" % self.carpeta_results
+ self.ficheroPuente = "%s/bridge.db" % self.carpeta_results
+ self.ficheroMoves = "%s/moves.dbl" % self.carpeta_results
+ self.ficheroRecursos = "%s/recursos.dbl" % self.carpeta_config
+ self.ficheroFEN = self.ficheroRecursos
+ self.ficheroConfBoards = "%s/confBoards.pk" % self.carpeta_config
+ self.ficheroBoxing = "%s/boxing.pk" % self.carpeta_results
+ self.file_trainings = "%s/trainings.pk" % self.carpeta_results
+ self.ficheroHorses = "%s/horses.db" % self.carpeta_results
+ self.ficheroAlbumes = "%s/albumes.pkd" % self.carpeta_results
+ self.ficheroPuntuaciones = "%s/hpoints.pkd" % self.carpeta_results
+ self.ficheroAnotar = "%s/anotar.db" % self.carpeta_config
+
+ self.ficheroSelectedPositions = "%s/Selected positions.fns" % self.personal_training_folder
+ self.ficheroPresentationPositions = "%s/Challenge 101.fns" % self.personal_training_folder
+
+ self.ficheroVariables = "%s/Variables.pk" % self.carpeta_config
+
+ self.ficheroFiltrosPGN = "%s/pgnFilters.db" % self.carpeta_config
+
+ Util.create_folder(self.personal_training_folder)
+
+ self.carpetaSTS = "%s/STS" % self.carpeta
+
+ self.carpetaScanners = "%s/%s" % (self.carpeta, "Scanners")
+ Util.create_folder(self.carpetaScanners)
+
+ self.ficheroExpeditions = "%s/Expeditions.db" % self.carpeta_results
+ self.ficheroSingularMoves = "%s/SingularMoves.db" % self.carpeta_results
+
+ if not Util.exist_file(self.ficheroRecursos):
+ Util.file_copy(Code.path_resource("IntFiles", "recursos.dbl"), self.ficheroRecursos)
+
+ if not Util.exist_file(self.file_sounds()):
+ Util.file_copy(Code.path_resource("IntFiles", "sounds.pkd"), self.file_sounds())
+
+ self.folder_base_openings = os.path.join(self.carpeta, "OpeningLines")
+ Util.create_folder(self.folder_base_openings)
+
+ def file_colors(self):
+ return os.path.join(self.carpeta_config, "personal.colors")
+
+ def compruebaBMT(self):
+ if not Util.exist_file(self.ficheroBMT):
+ self.ficheroBMT = "%s/lucas.bmt" % self.carpeta_results
+
+ def limpia(self, name):
+ self.elo = 0
+ self.michelo = 1600
+ self.fics = 1200
+ self.fide = 1600
+ self.x_id = Util.huella()
+ self.x_player = name
+ self.x_save_folder = ""
+ self.x_save_pgn_folder = ""
+ self.x_save_lcsb = ""
+
+ self.x_captures_activate = False
+ self.x_info_activate = False
+ self.x_mouse_shortcuts = False
+ self.x_show_candidates = False
+
+ self.rival = self.buscaRival(self.x_rival_inicial)
+
+ def buscaRival(self, key, defecto=None):
+ if key in self.dic_engines:
+ return self.dic_engines[key]
+ if defecto is None:
+ defecto = self.x_rival_inicial
+ return self.buscaRival(defecto)
+
+ def buscaTutor(self, key):
+ if key in self.dic_engines:
+ eng = self.dic_engines[key]
+ if eng.can_be_tutor() and Util.exist_file(eng.path_exe):
+ return eng
+ return self.buscaRival(self.tutor_default)
+
+ def ayudaCambioTutor(self): # TODO remove
+ li = []
+ for key, cm in self.dic_engines.items():
+ if cm.can_be_tutor():
+ li.append((key, cm.nombre_ext()))
+ li = sorted(li, key=operator.itemgetter(1))
+ li.insert(0, self.x_tutor_clave)
+ return li
+
+ def formlayout_combo_analyzer(self, only_multipv):
+ li = []
+ for key, cm in self.dic_engines.items():
+ if not only_multipv or cm.can_be_tutor():
+ li.append((key, cm.nombre_ext()))
+ li = sorted(li, key=operator.itemgetter(1))
+ li.insert(0, ("default", _("Default analyzer")))
+ li.insert(0, "default")
+ return li
+
+ def help_multipv_engines(self):
+ li = []
+ for key, cm in self.dic_engines.items():
+ if cm.can_be_tutor():
+ li.append((cm.nombre_ext(), key))
+ li.sort(key=operator.itemgetter(1))
+ return li
+
+ def combo_engines(self):
+ li = []
+ for key, cm in self.dic_engines.items():
+ li.append((cm.nombre_ext(), key))
+ li.sort(key=lambda x: x[0])
+ return li
+
+ def combo_engines_multipv10(self, minimo=10): # %#
+ li_motores = []
+ for key, cm in self.dic_engines.items():
+ if cm.maxMultiPV >= minimo and not cm.is_maia():
+ li_motores.append((cm.nombre_ext(), key))
+ li_motores.sort(key=lambda x: x[0])
+ return li_motores
+
+ @staticmethod
+ def estilos():
+ li = [(x, x) for x in QtWidgets.QStyleFactory.keys()]
+ return li
+
+ def graba(self):
+ dic = {}
+ for x in dir(self):
+ if x.startswith("x_"):
+ dic[x] = getattr(self, x)
+ # dic["PALETTE"] = self.palette
+ dic["PERSONALITIES"] = self.li_personalities
+ Util.save_pickle(self.file, dic)
+
+ def lee(self):
+ dic = Util.restore_pickle(self.file)
+ if dic:
+ for x in dir(self):
+ if x.startswith("x_"):
+ if x in dic:
+ setattr(self, x, dic[x])
+
+ # self.palette = dic.get("PALETTE", self.palette)
+ self.li_personalities = dic.get("PERSONALITIES", self.li_personalities)
+
+ for x in os.listdir("../.."):
+ if x.endswith(".pon"):
+ os.remove("../%s" % x)
+ self.x_translator = x[:2]
+ self.load_translation()
+
+ TrListas.ponPiecesLNG(self.x_pgn_english or self.translator() == "en")
+
+ Code.analysis_eval = AnalysisEval.AnalysisEval()
+
+ IconosBase.icons.reset(self.x_style_icons)
+
+ def get_last_database(self):
+ dic = self.read_variables("DATABASE")
+ return dic.get("LAST_DATABASE", "")
+
+ def set_last_database(self, last_database):
+ dic = self.read_variables("DATABASE")
+ dic["LAST_DATABASE"] = last_database
+ self.write_variables("DATABASE", dic)
+
+ def get_favoritos(self):
+ if self.li_favoritos is None:
+ file = os.path.join(self.carpeta_config, "Favoritos.pkd")
+ lista = Util.restore_pickle(file)
+ if lista is None:
+ lista = []
+ self.li_favoritos = lista
+ return self.li_favoritos
+
+ def save_favoritos(self, lista):
+ self.li_favoritos = lista
+ file = os.path.join(self.carpeta_config, "Favoritos.pkd")
+ Util.save_pickle(file, lista)
+
+ def load_translation(self):
+ dlang = Code.path_resource("Locale")
+ fini = os.path.join(dlang, self.x_translator, "lang.ini")
+ if not os.path.isfile(fini):
+ self.x_translator = "en"
+ Translate.install(self.x_translator)
+
+ @staticmethod
+ def list_translations(others=False):
+ li = []
+ dlang = Code.path_resource("Locale")
+ for uno in Util.listdir(dlang):
+ fini = os.path.join(dlang, uno.name, "lang.ini")
+ if os.path.isfile(fini):
+ dic = Util.ini_dic(fini)
+ if others:
+ li.append((uno.name, dic["NAME"], int(dic["%"]), dic["AUTHOR"], dic.get("OTHERS", "")))
+ else:
+ li.append((uno.name, dic["NAME"], int(dic["%"]), dic["AUTHOR"]))
+ li = sorted(li, key=lambda lng: "AAA" + lng[0] if lng[1] > "Z" else lng[1])
+ return li
+
+ def eloActivo(self):
+ return self.x_elo
+
+ def miceloActivo(self):
+ return self.x_michelo
+
+ def wicker_elo(self):
+ return self.x_wicker
+
+ def ficsActivo(self):
+ return self.x_fics
+
+ def fideActivo(self):
+ return self.x_fide
+
+ def lichessActivo(self):
+ return self.x_lichess
+
+ def ponEloActivo(self, elo):
+ self.x_elo = elo
+
+ def ponMiceloActivo(self, elo):
+ self.x_michelo = elo
+
+ def set_wicker(self, elo):
+ self.x_wicker = elo
+
+ def ponFicsActivo(self, elo):
+ self.x_fics = elo
+
+ def ponFideActivo(self, elo):
+ self.x_fide = elo
+
+ def ponLichessActivo(self, elo):
+ self.x_lichess = elo
+
+ def po_saved(self):
+ return os.path.join(self.folder_translations(), "%s.po" % self.x_translator)
+
+ def list_internal_engines(self):
+ li = [cm for k, cm in self.dic_engines.items() if not cm.is_external]
+ li = sorted(li, key=lambda cm: cm.name)
+ return li
+
+ def list_external_engines(self):
+ li = [cm for k, cm in self.dic_engines.items() if cm.is_external]
+ li = sorted(li, key=lambda cm: cm.name)
+ return li
+
+ def read_external_engines(self):
+ li = Util.restore_pickle(self.file_external_engines())
+ if li:
+ from Code.Engines import Engines
+
+ for x in li:
+ eng = Engines.Engine()
+ if not eng.restore(x):
+ continue
+
+ if eng.exists():
+ key = eng.key
+ n = 0
+ while eng.key in self.dic_engines:
+ n += 1
+ eng.key = "%s-%d" % (key, n)
+ eng.set_extern()
+ self.dic_engines[eng.key] = eng
+
+ def list_engines(self, si_externos=True):
+ li = []
+ for k, v in self.dic_engines.items():
+ name = v.name
+ if v.is_external:
+ if not si_externos:
+ continue
+ name += " *"
+ li.append([name, v.autor, v.url])
+ li = sorted(li, key=operator.itemgetter(0))
+ return li
+
+ def list_engines_show(self):
+ li = self.list_engines(False)
+ li_resp = []
+ maia = True
+ for engine in li:
+ if engine[0].lower().startswith("maia"):
+ if maia:
+ engine[0] = "Maia 1100-1900"
+ maia = False
+ else:
+ continue
+ li_resp.append(engine)
+ return li_resp
+
+ def dict_engines_fixed_elo(self):
+ d = OSEngines.dict_engines_fixed_elo(Code.folder_engines)
+ for elo, lien in d.items():
+ for cm in lien:
+ cm.type = ENG_FIXED
+ cm.elo = elo
+ return d
+
+ def engine_tutor(self):
+ if self.x_tutor_clave in self.dic_engines:
+ eng = self.dic_engines[self.x_tutor_clave]
+ if eng.can_be_tutor() and Util.exist_file(eng.path_exe):
+ eng.reset_uci_options()
+ dic = self.read_variables("TUTOR_ANALYZER")
+ for key, value in dic.get("TUTOR", []):
+ eng.set_uci_option(key, value)
+ return eng
+ self.x_tutor_clave = self.tutor_default
+ return self.engine_tutor()
+
+ def engine_analyzer(self):
+ if self.x_analyzer_clave in self.dic_engines:
+ eng = self.dic_engines[self.x_analyzer_clave]
+ if eng.can_be_tutor() and Util.exist_file(eng.path_exe):
+ eng.reset_uci_options()
+ dic = self.read_variables("TUTOR_ANALYZER")
+ for key, value in dic.get("ANALYZER", []):
+ eng.set_uci_option(key, value)
+ return eng
+ self.x_analyzer_clave = self.analyzer_default
+ return self.engine_analyzer()
+
+ def temporary_folder(self):
+ dirTmp = os.path.join(self.carpeta, "tmp")
+ Util.create_folder(dirTmp)
+ return dirTmp
+
+ def ficheroTemporal(self, extension):
+ dirTmp = os.path.join(self.carpeta, "tmp")
+ return Util.temporary_file(dirTmp, extension)
+
+ def clean_tmp_folder(self):
+ try:
+
+ def remove_folder(folder, root):
+ if "UserData" in folder and "tmp" in folder:
+ entry: os.DirEntry
+ for entry in Util.listdir(folder):
+ if entry.is_dir():
+ remove_folder(entry.path, False)
+ elif entry.is_file():
+ Util.remove_file(entry.path)
+ if not root:
+ os.rmdir(folder)
+
+ remove_folder(self.temporary_folder(), True)
+ except:
+ pass
+
+ def read_variables(self, nomVar):
+ with UtilSQL.DictSQL(self.ficheroVariables) as db:
+ resp = db[nomVar]
+ return resp if resp else {}
+
+ # ENG_VARIANTES
+ # ANALISIS_GRAPH
+ # WindowColores
+ # PCOLORES
+ # POLYGLOT_IMPORT
+ # POLYGLOT_EXPORT
+ # BOOKSTRAININGLO
+ # DicMicElos
+ # DicWickerElos
+ # OPENING_LINES
+ # DATABASE
+ # TUTOR_ANALYZER
+ # AUTO_ROTATE
+ # COORDINATES
+ # DBSUMMARY
+ # databases_columns_default
+ # SVG_GRAPHICS
+ # endingsGTB
+ # STSFORMULA
+ # FOLDER_ENGINES
+ # SELECTENGINE_{tipo}
+ # EXPEDITIONS
+ # LEARN_GAME_PLAY_AGAINST
+ # MEMORIZING_GAME
+ # WIDTH_PIEZES
+ # challenge101
+ # ENG_MANAGERSOLO
+ # FICH_MANAGERSOLO
+ # MATE15
+ # ODT
+ # OL_ENGINE_VAR
+ # MASSIVE_OLINES
+ # OPENINGLINES
+ # OL_ENGINE_VAR
+ # MASSIVE_OLINES
+ # OPENINGLINES
+ # REMOVEWORSTLINES
+ # OL_IMPORTPOLYGLOT
+ # human_human
+ # MICELO_TIME
+ # WICKER_TIME
+ # BLINDFOLD
+ # BLANCASNEGRASTIEMPO
+ # GIF
+ # PARAMPELICULA
+ # manual_save
+ # SAVEPGN
+ # TRANSSIBERIAN{nlevel}
+ # TRANSSIBERIAN
+ # THEMES
+ # crear_torneo
+ # BMT_OPTIONS
+ # PATH_PO
+ # PATH_MO
+ # TRANSLATION_HELP
+ # PATH_PO_OPENINGS
+ # PATH_PO_OPENINGS_IMPORT
+
+ def write_variables(self, nomVar, dicValores):
+ with UtilSQL.DictSQL(self.ficheroVariables) as db:
+ db[nomVar] = dicValores
+
+ def change_theme_num(self, num):
+ self.__theme_num = num
+
+ def leeConfBoards(self):
+ with UtilSQL.DictSQL(self.ficheroConfBoards) as db:
+ self.dic_conf_boards_pk = db.as_dictionary()
+ if not ("BASE" in self.dic_conf_boards_pk):
+ with open(Code.path_resource("IntFiles", f"basepk{self.__theme_num}.board"), "rb") as f:
+ var = pickle.loads(f.read())
+ alto = QTUtil.desktop_height()
+ ancho = QTUtil.desktop_width()
+ if Code.procesador:
+ ancho_extra = Code.procesador.main_window.get_noboard_width() + 40
+ else:
+ ancho_extra = 660
+ max_ancho_pieza = (ancho - ancho_extra) // 8
+ max_alto_pieza = ((alto - 200) * 86 / 100) // 8
+ alt_ancho_pieza = min(max_ancho_pieza, max_alto_pieza)
+ if alt_ancho_pieza > 10:
+ ancho_pieza = alt_ancho_pieza
+ else:
+ base = ancho * 950 / 1495
+ if alto > base:
+ alto = base
+ ancho_pieza = int(alto * 8 / 100)
+
+ var["x_anchoPieza"] = ancho_pieza
+ db["BASE"] = self.dic_conf_boards_pk["BASE"] = var
+ # Para cambiar el tema por defecto por el actual
+ # with open("../resources/IntFiles/basepk2.board", "wb") as f:
+ # f.write(pickle.dumps(db["BASE"]))
+
+ def size_base(self):
+ return self.dic_conf_boards_pk["BASE"]["x_anchoPieza"]
+
+ def resetConfBoard(self, key, tamDef):
+ db = UtilSQL.DictSQL(self.ficheroConfBoards)
+ del db[key]
+ db.close()
+ self.leeConfBoards()
+ return self.config_board(key, tamDef)
+
+ def cambiaConfBoard(self, config_board):
+ xid = config_board._id
+ if xid:
+ db = UtilSQL.DictSQL(self.ficheroConfBoards)
+ self.dic_conf_boards_pk[xid] = db[xid] = config_board.graba()
+ db.close()
+ self.leeConfBoards()
+
+ def config_board(self, xid, tam_def, padre="BASE"):
+ if xid == "BASE":
+ ct = ConfBoards.ConfigBoard(xid, tam_def)
+ else:
+ ct = ConfBoards.ConfigBoard(xid, tam_def, padre=padre)
+ ct.anchoPieza(tam_def)
+
+ if xid in self.dic_conf_boards_pk:
+ ct.lee(self.dic_conf_boards_pk[xid])
+ else:
+ db = UtilSQL.DictSQL(self.ficheroConfBoards)
+ self.dic_conf_boards_pk[xid] = db[xid] = ct.graba()
+ db.close()
+
+ ct._anchoPiezaDef = tam_def
+
+ return ct
+
+ def save_video(self, key, dic):
+ db = UtilSQL.DictSQL(self.file_video())
+ db[key] = dic
+ db.close()
+
+ def restore_video(self, key):
+ db = UtilSQL.DictSQL(self.file_video())
+ dic = db[key]
+ db.close()
+ return dic
+
+ def pgn_folder(self):
+ resp = self.x_save_pgn_folder
+ if not resp:
+ resp = self.carpeta
+ return resp
+
+ def save_pgn_folder(self, new_folder):
+ if self.x_save_pgn_folder != new_folder:
+ self.x_save_pgn_folder = new_folder
+ self.graba()
+
+ def set_property(self, owner, valor):
+ if self.x_style_mode == "By default":
+ owner.setStyleSheet(self.style_sheet_default)
+ owner.setProperty("type", valor)
+
+ def get_auto_rotate(self, game_type):
+ key = DICT_GAME_TYPES[game_type]
+ dic = self.read_variables("AUTO_ROTATE")
+ return dic.get(key, False)
+
+ def set_auto_rotate(self, game_type, auto_rotate):
+ key = DICT_GAME_TYPES[game_type]
+ dic = self.read_variables("AUTO_ROTATE")
+ dic[key] = auto_rotate
+ self.write_variables("AUTO_ROTATE", dic)
+
+ def wheel_board(self, forward):
+ return forward if self.x_wheel_board == GO_FORWARD else not forward
+
+ def wheel_pgn(self, forward):
+ return forward if self.x_wheel_pgn != GO_FORWARD else not forward
diff --git a/games/LucasChess/LucasChess.SlackBuild b/games/LucasChess/LucasChess.SlackBuild
new file mode 100644
index 0000000000..dfd10af1a3
--- /dev/null
+++ b/games/LucasChess/LucasChess.SlackBuild
@@ -0,0 +1,122 @@
+#!/bin/bash
+
+# Slackware build script for LucasChess
+
+# Copyright 2024 Daniel Prosser, Lexington Park, MD, USA
+# All rights reserved.
+#
+# Redistribution and use of this script, with or without modification, is
+# permitted provided that the following conditions are met:
+#
+# 1. Redistributions of this script must retain the above copyright
+# notice, this list of conditions and the following disclaimer.
+#
+# THIS SOFTWARE IS PROVIDED BY THE AUTHOR "AS IS" AND ANY EXPRESS OR IMPLIED
+# WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE IMPLIED WARRANTIES OF
+# MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE ARE DISCLAIMED. IN NO
+# EVENT SHALL THE AUTHOR BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL,
+# SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT LIMITED TO,
+# PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, DATA, OR PROFITS;
+# OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY,
+# WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR
+# OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF THIS SOFTWARE, EVEN IF
+# ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
+
+# 20240301 bkw: modified by SlackBuilds.org:
+# - Create temporary tarball in $TMP, not $CWD.
+# - Install docs without +x permission.
+# - Use correct sourceforge download URL (not a specific mirror).
+
+cd $(dirname $0) ; CWD=$(pwd)
+
+PRGNAM=LucasChess
+VERSION=${VERSION:-R2.11g}
+BUILD=${BUILD:-1}
+TAG=${TAG:-_SBo}
+PKGTYPE=${PKGTYPE:-tgz}
+SRCNAM=${SRCNAM:-LucasChessR2_11g_LINUX.sh}
+ARCHIVELINE=716
+
+if [ -z "$ARCH" ]; then
+ case "$( uname -m )" in
+ i?86) ARCH=i586 ;;
+ arm*) ARCH=arm ;;
+ *) ARCH=$( uname -m ) ;;
+ esac
+fi
+# Only x86_64 is supported
+if [ "$ARCH" != "x86_64" ]; then
+ printf "\nOnly x86_64 is supported for LucasChess...\n\n"
+ exit 1
+fi
+
+if [ ! -z "${PRINT_PACKAGE_NAME}" ]; then
+ echo "$PRGNAM-$VERSION-$ARCH-$BUILD$TAG.$PKGTYPE"
+ exit 0
+fi
+
+TMP=${TMP:-/tmp/SBo}
+PKG=$TMP/package-$PRGNAM
+OUTPUT=${OUTPUT:-/tmp}
+
+set -e
+
+rm -rf $PKG
+mkdir -p $TMP $PKG $OUTPUT
+mkdir -p $PKG/opt/$PRGNAM-$VERSION
+cd $PKG/opt/$PRGNAM-$VERSION
+
+# Strip off the makeself-generated header to produce a tar archive
+tail -n +$ARCHIVELINE $CWD/$SRCNAM > $PRGNAM-$VERSION.tar.gz
+
+tar xvf $PRGNAM-$VERSION.tar.gz
+
+# Now we can remove the tar archive (that was generated by this script)
+rm $PRGNAM-$VERSION.tar.gz
+
+# Fix permissions. Note: some files had 770, which would make it unusable for
+# regular users. Those have been changed to 755.
+find . -type d -exec chmod 755 {} \;
+chown -R root:root .
+find -L . \
+ \( -perm 777 -o -perm 775 -o -perm 750 -o -perm 711 -o -perm 555 \
+ -o -perm 511 -o -perm 770 \) -exec chmod 755 {} \; -o \
+ \( -perm 666 -o -perm 664 -o -perm 640 -o -perm 600 -o -perm 444 \
+ -o -perm 440 -o -perm 400 \) -exec chmod 644 {} \;
+
+mkdir -p $PKG/usr/bin
+mkdir -p $PKG/usr/share/applications
+chmod 755 $PKG/opt/$PRGNAM-$VERSION
+
+# Create executable script in /usr/bin
+cd $PKG/usr/bin
+sed "s/VERSION/${VERSION}/g" $CWD/LucasR.in > LucasR
+chmod 755 LucasR
+
+# LucasChess knows FoxCub engine as FoxCub.exe, so make a symlink. Same with Fox.
+# If you find others with this problem, email me.
+cd $PKG/opt/$PRGNAM-$VERSION/bin/OS/linux/Engines/foxcub
+ln -sf FoxCub FoxCub.exe
+cd $PKG/opt/$PRGNAM-$VERSION/bin/OS/linux/Engines/fox
+ln -sf Fox Fox.exe
+
+# Replace Configuration.pyc with source file patched to put UserData in ~/.LucasChess
+rm $PKG/opt/$PRGNAM-$VERSION/bin/Code/Config/Configuration.pyc
+cat $CWD/Configuration.py > $PKG/opt/$PRGNAM-$VERSION/bin/Code/Config/Configuration.py
+
+# Install desktop launcher
+sed "s/VERSION/${VERSION}/g" $CWD/LucasChessR.desktop.in \
+ > $PKG/usr/share/applications/LucasChessR.desktop
+
+cd $PKG/opt/$PRGNAM-$VERSION
+mkdir -p $PKG/usr/doc/$PRGNAM-$VERSION
+install -m0644 -oroot -groot \
+ LICENSE readme.md $PKG/usr/doc/$PRGNAM-$VERSION
+cat $CWD/$PRGNAM.SlackBuild > $PKG/usr/doc/$PRGNAM-$VERSION/$PRGNAM.SlackBuild
+
+mkdir -p $PKG/install
+cat $CWD/slack-desc > $PKG/install/slack-desc
+cat $CWD/doinst.sh > $PKG/install/doinst.sh
+
+cd $PKG
+/sbin/makepkg -l y -c n $OUTPUT/$PRGNAM-$VERSION-$ARCH-$BUILD$TAG.$PKGTYPE
diff --git a/games/LucasChess/LucasChess.info b/games/LucasChess/LucasChess.info
new file mode 100644
index 0000000000..28529562e7
--- /dev/null
+++ b/games/LucasChess/LucasChess.info
@@ -0,0 +1,10 @@
+PRGNAM="LucasChess"
+VERSION="R2.11g"
+HOMEPAGE="https://lucaschess.pythonanywhere.com/"
+DOWNLOAD="UNSUPPORTED"
+MD5SUM=""
+DOWNLOAD_x86_64="https://downloads.sourceforge.net/project/lucaschessr/Version_R2/LucasChessR2_11g_LINUX.sh"
+MD5SUM_x86_64="6e73747c9fb8170066bde5535fa37c99"
+REQUIRES=""
+MAINTAINER="Daniel Prosser"
+EMAIL="dpross1100@msn.com"
diff --git a/games/LucasChess/LucasChessR.desktop.in b/games/LucasChess/LucasChessR.desktop.in
new file mode 100644
index 0000000000..247608ce05
--- /dev/null
+++ b/games/LucasChess/LucasChessR.desktop.in
@@ -0,0 +1,10 @@
+[Desktop Entry]
+Type=Application
+Name=Lucas Chess
+Exec=/opt/LucasChess-VERSION/bin/LucasR
+Path=/opt/LucasChess-VERSION/bin
+Icon=/opt/LucasChess-VERSION/Resources/IntFiles/logo64r.png
+GenericName=Chess training program
+StartupNotify=true
+Terminal=false
+Categories=Game;
diff --git a/games/LucasChess/LucasR.in b/games/LucasChess/LucasR.in
new file mode 100644
index 0000000000..7051a126a1
--- /dev/null
+++ b/games/LucasChess/LucasR.in
@@ -0,0 +1,4 @@
+#!/bin/bash
+export QT_LOGGING_RULES='*=false'
+cd /opt/LucasChess-VERSION/bin
+./LucasR
diff --git a/games/LucasChess/README b/games/LucasChess/README
new file mode 100644
index 0000000000..b715c73478
--- /dev/null
+++ b/games/LucasChess/README
@@ -0,0 +1,10 @@
+Lucas Chess is a flexible and powerful chess software created by Lucas
+Monge. It includes 61 pre-installed engines with a wide range of ELO
+levels, including the neural network engines of the Maia project that
+emulate human play based on a certain ELO. It also includes a wide
+range of training modules to improve your chess skills. It can perform
+game analysis, generate custom trainings based on your mistakes, read
+PGN files, and study openings.
+
+This SlackBuild repackages the binary distribution provided by
+upstream. It requires about 700 MB of space when installed.
diff --git a/games/gens-gs/doinst.sh b/games/LucasChess/doinst.sh
index 5fb28930db..5fb28930db 100644
--- a/games/gens-gs/doinst.sh
+++ b/games/LucasChess/doinst.sh
diff --git a/games/LucasChess/slack-desc b/games/LucasChess/slack-desc
new file mode 100644
index 0000000000..2a2cd29872
--- /dev/null
+++ b/games/LucasChess/slack-desc
@@ -0,0 +1,19 @@
+# HOW TO EDIT THIS FILE:
+# The "handy ruler" below makes it easier to edit a package description.
+# Line up the first '|' above the ':' following the base package name, and
+# the '|' on the right side marks the last column you can put a character in.
+# You must make exactly 11 lines for the formatting to be correct. It's also
+# customary to leave one space after the ':' except on otherwise blank lines.
+
+ |-----handy-ruler------------------------------------------------------|
+LucasChess: LucasChess (chess training software)
+LucasChess:
+LucasChess: Lucas Chess is a flexible and powerful chess software. It includes
+LucasChess: numerous engines, training modules, provides game analysis, and can
+LucasChess: read PGN files and generate custom trainings.
+LucasChess:
+LucasChess: Homepage: https://lucaschess.pythonanywhere.com/
+LucasChess:
+LucasChess:
+LucasChess:
+LucasChess:
diff --git a/games/Mindustry/Mindustry.SlackBuild b/games/Mindustry/Mindustry.SlackBuild
new file mode 100644
index 0000000000..37e77316d5
--- /dev/null
+++ b/games/Mindustry/Mindustry.SlackBuild
@@ -0,0 +1,142 @@
+#!/bin/bash
+
+# Slackware build script for Mindustry
+
+# Copyright 2023 Yth | Pont-en-Royans, France | yth@ythogtha.org
+# All rights reserved.
+#
+# Redistribution and use of this script, with or without modification, is
+# permitted provided that the following conditions are met:
+#
+# 1. Redistributions of this script must retain the above copyright
+# notice, this list of conditions and the following disclaimer.
+#
+# THIS SOFTWARE IS PROVIDED BY THE AUTHOR "AS IS" AND ANY EXPRESS OR IMPLIED
+# WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE IMPLIED WARRANTIES OF
+# MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE ARE DISCLAIMED. IN NO
+# EVENT SHALL THE AUTHOR BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL,
+# SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT LIMITED TO,
+# PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, DATA, OR PROFITS;
+# OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY,
+# WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR
+# OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF THIS SOFTWARE, EVEN IF
+# ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
+
+cd $(dirname $0) ; CWD=$(pwd)
+
+PRGNAM=Mindustry
+VERSION=${VERSION:-146}
+BUILD=${BUILD:-1}
+TAG=${TAG:-_SBo}
+PKGTYPE=${PKGTYPE:-tgz}
+SERVER=${SERVER:-yes}
+
+if [ -z "$ARCH" ]; then
+ case "$( uname -m )" in
+ i?86) ARCH=i586 ;;
+ arm*) ARCH=arm ;;
+ *) ARCH=$( uname -m ) ;;
+ esac
+fi
+
+# If the variable PRINT_PACKAGE_NAME is set, then this script will report what
+# the name of the created package would be, and then exit. This information
+# could be useful to other scripts.
+if [ ! -z "${PRINT_PACKAGE_NAME}" ]; then
+ echo "$PRGNAM-$VERSION-$ARCH-$BUILD$TAG.$PKGTYPE"
+ exit 0
+fi
+
+TMP=${TMP:-/tmp/SBo}
+PKG=$TMP/package-$PRGNAM
+OUTPUT=${OUTPUT:-/tmp}
+
+if [ -z "$ARCH" ]; then
+ case "$( uname -m )" in
+ i?86) ARCH=i586 ;;
+ arm*) ARCH=arm ;;
+ *) ARCH=$( uname -m ) ;;
+ esac
+fi
+
+set -e
+
+rm -rf $PKG
+mkdir -p $TMP $PKG $OUTPUT
+cd $TMP
+rm -rf $PRGNAM-$VERSION
+tar xvf $CWD/$PRGNAM-$VERSION.tar.gz
+cd $PRGNAM-$VERSION 2>/dev/null
+chown -R root:root .
+find -L . \
+ \( -perm 777 -o -perm 775 -o -perm 750 -o -perm 711 -o -perm 555 \
+ -o -perm 511 \) -exec chmod 755 {} \; -o \
+ \( -perm 666 -o -perm 664 -o -perm 640 -o -perm 600 -o -perm 444 \
+ -o -perm 440 -o -perm 400 \) -exec chmod 644 {} \;
+
+./gradlew --no-daemon dist -Pbuildversion=146 desktop:dist
+
+mkdir -p $PKG/usr/share/{$PRGNAM,applications} \
+ $PKG/usr/games
+cp -a desktop/build/libs/$PRGNAM.jar \
+ $PKG/usr/share/$PRGNAM
+cp -a core/assets/icons/icon_64.png \
+ $PKG/usr/share/$PRGNAM/$PRGNAM.png
+
+# Create destop entry
+cat > $PKG/usr/share/applications/$PRGNAM.desktop <<EOF
+[Desktop Entry]
+Name=Mindustry
+Comment=The automation tower defense RTS, written in Java
+Exec=$PRGNAM
+Icon=/usr/share/$PRGNAM/$PRGNAM.png
+Type=Application
+Path=/usr/share/$PRGNAM
+Categories=Game;StrategyGame;
+EOF
+
+# Create launcher
+cat > $PKG/usr/games/$PRGNAM << EOF
+#!/bin/sh
+
+java -jar /usr/share/$PRGNAM/$PRGNAM.jar
+
+EOF
+chmod 755 $PKG/usr/games/$PRGNAM
+
+if [ "$SERVER" = "yes" ]; then
+ ./gradlew --no-daemon dist -Pbuildversion=146 server:dist
+ cp -a server/build/libs/server-release.jar \
+ $PKG/usr/share/$PRGNAM/$PRGNAM-server.jar
+ # Create destop entry
+ cat > $PKG/usr/share/applications/$PRGNAM-server.desktop <<EOF
+[Desktop Entry]
+Name=Mindustry Server
+Comment=Server for the automation tower defense RTS
+Exec=$PRGNAM-server
+Icon=/usr/share/$PRGNAM/$PRGNAM.png
+Type=Application
+Path=/usr/share/$PRGNAM
+Categories=Game;StrategyGame;
+EOF
+
+ # Create launcher
+ cat > $PKG/usr/games/$PRGNAM-server << EOF
+#!/bin/sh
+
+java -jar /usr/share/$PRGNAM/$PRGNAM-server.jar
+
+EOF
+ chmod 755 $PKG/usr/games/$PRGNAM-server
+fi
+
+mkdir -p $PKG/usr/doc/$PRGNAM-$VERSION
+cp -a *.md LICENSE* $PKG/usr/doc/$PRGNAM-$VERSION
+cat $CWD/$PRGNAM.SlackBuild > $PKG/usr/doc/$PRGNAM-$VERSION/$PRGNAM.SlackBuild
+
+mkdir -p $PKG/install
+cat $CWD/slack-desc > $PKG/install/slack-desc
+cat $CWD/doinst.sh > $PKG/install/doinst.sh
+
+cd $PKG
+/sbin/makepkg -l y -c n $OUTPUT/$PRGNAM-$VERSION-$ARCH-$BUILD$TAG.$PKGTYPE
diff --git a/games/Mindustry/Mindustry.info b/games/Mindustry/Mindustry.info
new file mode 100644
index 0000000000..f7349a2884
--- /dev/null
+++ b/games/Mindustry/Mindustry.info
@@ -0,0 +1,10 @@
+PRGNAM="Mindustry"
+VERSION="146"
+HOMEPAGE="https://mindustrygame.github.io/"
+DOWNLOAD="UNSUPPORTED"
+MD5SUM=""
+DOWNLOAD_x86_64="https://github.com/Anuken/Mindustry/archive/v146/Mindustry-146.tar.gz"
+MD5SUM_x86_64="9da9f917ec9057d9e3b38134f3897478"
+REQUIRES="zulu-openjdk17"
+MAINTAINER="Yth - Arnaud"
+EMAIL="yth@ythogtha.org"
diff --git a/games/Mindustry/README b/games/Mindustry/README
new file mode 100644
index 0000000000..bea29d8016
--- /dev/null
+++ b/games/Mindustry/README
@@ -0,0 +1,10 @@
+Mindustry is a hybrid tower-defense sandbox factory game.
+Create elaborate supply chains of conveyor belts to feed ammo into
+your turrets, produce materials to use for building, and defend your
+structures from waves of enemies.
+
+Features include a map editor, 24 built-in maps, cross-platform
+multiplayer and large-scale PvP unit battles.
+
+Java 17 minimum is required to build.
+This does *not* build offline.
diff --git a/games/sumwars/doinst.sh b/games/Mindustry/doinst.sh
index 65c7e2eeb9..65c7e2eeb9 100644
--- a/games/sumwars/doinst.sh
+++ b/games/Mindustry/doinst.sh
diff --git a/games/Mindustry/slack-desc b/games/Mindustry/slack-desc
new file mode 100644
index 0000000000..0f32a34817
--- /dev/null
+++ b/games/Mindustry/slack-desc
@@ -0,0 +1,19 @@
+# HOW TO EDIT THIS FILE:
+# The "handy ruler" below makes it easier to edit a package description.
+# Line up the first '|' above the ':' following the base package name, and
+# the '|' on the right side marks the last column you can put a character in.
+# You must make exactly 11 lines for the formatting to be correct. It's also
+# customary to leave one space after the ':' except on otherwise blank lines.
+
+ |-----handy-ruler------------------------------------------------------|
+Mindustry: Mindustry (hybrid tower-defense sandbox factory game)
+Mindustry:
+Mindustry: Create elaborate supply chains of conveyor belts to feed ammo into
+Mindustry: your turrets, produce materials to use for building, and defend your
+Mindustry: structures from waves of enemies.
+Mindustry:
+Mindustry: Features include a map editor, 24 built-in maps, cross-platform
+Mindustry: multiplayer and large-scale PvP unit battles.
+Mindustry:
+Mindustry: https://anuke.itch.io/mindustry
+Mindustry:
diff --git a/games/OpenJK/OpenJK.SlackBuild b/games/OpenJK/OpenJK.SlackBuild
index a0651f4886..9c70755b5d 100644
--- a/games/OpenJK/OpenJK.SlackBuild
+++ b/games/OpenJK/OpenJK.SlackBuild
@@ -1,4 +1,4 @@
-#!/bin/sh
+#!/bin/bash
# Slackware build script for OpenJK
@@ -22,10 +22,13 @@
# OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF THIS SOFTWARE, EVEN IF
# ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
+cd $(dirname $0) ; CWD=$(pwd)
+
PRGNAM=OpenJK
VERSION=${VERSION:-7613c1}
BUILD=${BUILD:-1}
TAG=${TAG:-_SBo}
+PKGTYPE=${PKGTYPE:-tgz}
if [ -z "$ARCH" ]; then
case "$( uname -m )" in
@@ -35,7 +38,11 @@ if [ -z "$ARCH" ]; then
esac
fi
-CWD=$(pwd)
+if [ ! -z "${PRINT_PACKAGE_NAME}" ]; then
+ echo "$PRGNAM-$VERSION-$ARCH-$BUILD$TAG.$PKGTYPE"
+ exit 0
+fi
+
TMP=${TMP:-/tmp/SBo}
PKG=$TMP/package-$PRGNAM
OUTPUT=${OUTPUT:-/tmp}
@@ -65,9 +72,9 @@ cd $PRGNAM-$VERSION
chown -R root:root .
find -L . \
\( -perm 777 -o -perm 775 -o -perm 750 -o -perm 711 -o -perm 555 \
- -o -perm 511 \) -exec chmod 755 {} \; -o \
+ -o -perm 511 \) -exec chmod 755 {} \+ -o \
\( -perm 666 -o -perm 664 -o -perm 640 -o -perm 600 -o -perm 444 \
- -o -perm 440 -o -perm 400 \) -exec chmod 644 {} \;
+ -o -perm 440 -o -perm 400 \) -exec chmod 644 {} \+
# According to the official website,
# support for Jedi Outcast is rudimentary
@@ -80,6 +87,8 @@ if [ "$BUILDJO" = "yes" ]; then
JOARGS="-DBuildJK2SPEngine=On -DBuildJK2SPGame=On -DBuildJK2SPRdVanilla=On"
fi
+SLKCFLAGS+=" -fcommon"
+
mkdir -p build
cd build
cmake \
@@ -89,12 +98,9 @@ cd build
$JOARGS \
-DCMAKE_BUILD_TYPE=Release ..
make
- make install DESTDIR=$PKG
+ make install/strip DESTDIR=$PKG
cd ..
-find $PKG -print0 | xargs -0 file | grep -e "executable" -e "shared object" | grep ELF \
- | cut -f 1 -d : | xargs strip --strip-unneeded 2> /dev/null || true
-
mkdir -p $PKG/usr/share/pixmaps
cp $CWD/OpenJK-academy.png $PKG/usr/share/pixmaps/OpenJK-academy.png
if [ "$BUILDJO" = "yes" ]; then
@@ -123,4 +129,4 @@ cat $CWD/slack-desc > $PKG/install/slack-desc
cat $CWD/doinst.sh > $PKG/install/doinst.sh
cd $PKG
-/sbin/makepkg -l y -c n $OUTPUT/$PRGNAM-$VERSION-$ARCH-$BUILD$TAG.${PKGTYPE:-tgz}
+/sbin/makepkg -l y -c n $OUTPUT/$PRGNAM-$VERSION-$ARCH-$BUILD$TAG.$PKGTYPE
diff --git a/games/OpenJK/OpenJK.info b/games/OpenJK/OpenJK.info
index e05e35a742..b384a2844c 100644
--- a/games/OpenJK/OpenJK.info
+++ b/games/OpenJK/OpenJK.info
@@ -1,10 +1,10 @@
PRGNAM="OpenJK"
VERSION="7613c1"
HOMEPAGE="https://github.com/JACoders/OpenJK"
-DOWNLOAD="http://schmatzler.de/my_slackbuilds/OpenJK/OpenJK-7613c1.tar.bz2"
+DOWNLOAD="https://slackware.uk/~urchlay/src/OpenJK-7613c1.tar.bz2"
MD5SUM="b5d27a41af26b097964565669c1dd7c0"
DOWNLOAD_x86_64=""
MD5SUM_x86_64=""
-REQUIRES="OpenAL SDL2"
+REQUIRES=""
MAINTAINER="Danny Schmarsel"
EMAIL="danny@schmarsel.de"
diff --git a/games/OpenRA/OpenRA.SlackBuild b/games/OpenRA/OpenRA.SlackBuild
index ca32d10a54..139b218864 100644
--- a/games/OpenRA/OpenRA.SlackBuild
+++ b/games/OpenRA/OpenRA.SlackBuild
@@ -1,8 +1,8 @@
-#!/bin/sh
+#!/bin/bash
# Slackware build script for OpenRA
-# Copyright 2017 Vasily Sora USA
+# Copyright 2017,2022 Vasily Sora USA
# All rights reserved.
#
# Redistribution and use of this script, with or without modification, is
@@ -22,10 +22,13 @@
# OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF THIS SOFTWARE, EVEN IF
# ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
+cd $(dirname $0) ; CWD=$(pwd)
+
PRGNAM=OpenRA
-VERSION=${VERSION:-20190314}
+VERSION=${VERSION:-20210321}
BUILD=${BUILD:-1}
TAG=${TAG:-_SBo}
+PKGTYPE=${PKGTYPE:-tgz}
if [ -z "$ARCH" ]; then
case "$( uname -m )" in
@@ -35,10 +38,21 @@ if [ -z "$ARCH" ]; then
esac
fi
-CWD=$(pwd)
+# If the variable PRINT_PACKAGE_NAME is set, then this script will report what
+# the name of the created package would be, and then exit. This information
+# could be useful to other scripts.
+if [ ! -z "${PRINT_PACKAGE_NAME}" ]; then
+ echo "$PRGNAM-$VERSION-$ARCH-$BUILD$TAG.$PKGTYPE"
+ exit 0
+fi
+
TMP=${TMP:-/tmp/SBo}
PKG=$TMP/package-$PRGNAM
OUTPUT=${OUTPUT:-/tmp}
+HOME=$TMP/$PRGNAM-release-$VERSION-source
+DOTNET_CLI_TELEMETRY_OPTOUT=1
+export HOME DOTNET_CLI_TELEMETRY_OPTOUT
+
if [ "$ARCH" = "i586" ]; then
SLKCFLAGS="-O2 -march=i586 -mtune=i686"
@@ -61,15 +75,15 @@ rm -rf $TMP/$PRGNAM-release-$VERSION-source
mkdir -p $TMP $PKG $OUTPUT $TMP/$PRGNAM-release-$VERSION-source
cd $TMP/$PRGNAM-release-$VERSION-source
tar xvf $CWD/$PRGNAM-release-$VERSION-source.tar.bz2
-cp $CWD/fetch-thirdparty-deps.sh.new thirdparty/fetch-thirdparty-deps.sh
-cp $CWD/download.tar.gz thirdparty
-mkdir thirdparty/download/
-cp $CWD/GeoLite2-Country.mmdb.gz thirdparty/download/
-rm thirdparty/fetch-geoip-db.sh
-touch thirdparty/fetch-geoip-db.sh
-echo "#!/bin/sh" >> thirdparty/fetch-geoip-db.sh
-echo 'echo "success"' >> thirdparty/fetch-geoip-db.sh
-chmod +x thirdparty/fetch-geoip-db.sh
+tar -xzvf $CWD/openra-deps.tar.gz
+cp $CWD/IP2LOCATION-LITE-DB1.IPV6.BIN.ZIP .
+rm fetch-geoip.sh
+touch fetch-geoip.sh
+echo "#!/bin/sh" >> fetch-geoip.sh
+echo 'echo "success"' >> fetch-geoip.sh
+chmod +x fetch-geoip.sh
+
+sed -i 's/msbuild/dotnet\ msbuild/g' ./Makefile ./packaging/functions.sh
chown -R root:root .
find -L . \
@@ -78,10 +92,10 @@ find -L . \
\( -perm 666 -o -perm 664 -o -perm 640 -o -perm 600 -o -perm 444 \
-o -perm 440 -o -perm 400 \) -exec chmod 644 {} \;
-make dependencies
-make all
+unshare -n make all TARGETPLATFORM=unix-generic RUNTIME=mono MSBUILD='dotnet msbuild -verbosity:m -nologo'
make prefix=/usr mandir=/usr/man bindir=/usr/games libdir=/usr/lib${LIBDIRSUFFIX} install DESTDIR=$PKG
make prefix=/usr mandir=/usr/man bindir=/usr/games libdir=/usr/lib${LIBDIRSUFFIX} install-linux-shortcuts DESTDIR=$PKG
+make prefix=/usr mandir=/usr/man bindir=/usr/games libdir=/usr/lib${LIBDIRSUFFIX} install-linux-appdata DESTDIR=$PKG
find $PKG -print0 | xargs -0 file | grep -e "executable" -e "shared object" | grep ELF \
| cut -f 1 -d : | xargs strip --strip-unneeded 2> /dev/null || true
@@ -96,4 +110,4 @@ cat $CWD/slack-desc > $PKG/install/slack-desc
cat $CWD/doinst.sh > $PKG/install/doinst.sh
cd $PKG
-/sbin/makepkg -l y -c n $OUTPUT/$PRGNAM-$VERSION-$ARCH-$BUILD$TAG.${PKGTYPE:-tgz}
+/sbin/makepkg -l y -c n $OUTPUT/$PRGNAM-$VERSION-$ARCH-$BUILD$TAG.$PKGTYPE
diff --git a/games/OpenRA/OpenRA.info b/games/OpenRA/OpenRA.info
index e885285b2e..6be42f4043 100644
--- a/games/OpenRA/OpenRA.info
+++ b/games/OpenRA/OpenRA.info
@@ -1,14 +1,14 @@
PRGNAM="OpenRA"
-VERSION="20190314"
+VERSION="20210321"
HOMEPAGE="http://www.openra.net/"
-DOWNLOAD="https://github.com/OpenRA/OpenRA/releases/download/release-20190314/OpenRA-release-20190314-source.tar.bz2 \
- http://repo.khronosschoty.org/Slackware/stuff/OpenRA/20190314/download.tar.gz \
- http://repo.khronosschoty.org/Slackware/stuff/OpenRA/20190314/GeoLite2-Country.mmdb.gz"
-MD5SUM="4ea1ba7d309bf0482979b5337677d2a3 \
- e890273530c23cb8571a729d2aced59d \
- 3639895811efb10ad54bf6b40980224e"
+DOWNLOAD="https://github.com/OpenRA/OpenRA/releases/download/release-20210321/OpenRA-release-20210321-source.tar.bz2 \
+ http://repo.schotynet.org/sources/openra/openra-deps.tar.gz \
+ http://repo.schotynet.org/sources/openra/IP2LOCATION-LITE-DB1.IPV6.BIN.ZIP"
+MD5SUM="38593fbcdda629561d8c0bc8ac1af402 \
+ 26b1855341dc15787c7b54945050095d \
+ ef52f92818ebc942ca98108e92a0b802"
DOWNLOAD_x86_64=""
MD5SUM_x86_64=""
-REQUIRES="lua SDL2 mono"
+REQUIRES="lua mono dotnet-sdk-6.0"
MAINTAINER="khronosschoty"
EMAIL="khronosschoty@posteo.org"
diff --git a/games/OpenRA/fetch-thirdparty-deps.sh.new b/games/OpenRA/fetch-thirdparty-deps.sh.new
deleted file mode 100644
index c0f9ae9b5d..0000000000
--- a/games/OpenRA/fetch-thirdparty-deps.sh.new
+++ /dev/null
@@ -1,18 +0,0 @@
-#!/bin/sh
-
-####
-# This file must stay /bin/sh and POSIX compliant for BSD portability.
-# Copy-paste the entire script into http://shellcheck.net to check.
-####
-
-# Die on any error for Travis CI to automatically retry:
-set -e
-
-download_dir="${0%/*}/download"
-
-mkdir -p "${download_dir}"
-cd "${download_dir}"
-cd ..
-
-tar -xvf download.tar.gz
-
diff --git a/games/OpenXcom/OpenXcom.SlackBuild b/games/OpenXcom/OpenXcom.SlackBuild
index 9a4e8b90a2..1d45daba6b 100644
--- a/games/OpenXcom/OpenXcom.SlackBuild
+++ b/games/OpenXcom/OpenXcom.SlackBuild
@@ -1,9 +1,9 @@
-#!/bin/sh
+#!/bin/bash
# Slackware build script for OpenXcom
# Copyright 2014-2016 Dimitris Zlatanidis Orestiada, Greece
-# Copyright 2016-2019 Dominik Drobek <dominik.drobek (at) o2.pl>
+# Copyright 2016-2020 Dominik Drobek <dominik.drobek (at) o2.pl>
# All rights reserved.
#
# Redistribution and use of this script, with or without modification, is
@@ -23,11 +23,14 @@
# OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF THIS SOFTWARE, EVEN IF
# ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
+cd $(dirname $0) ; CWD=$(pwd)
+
PRGNAM=OpenXcom
-VERSION=${VERSION:-20190912_1344}
-COMMIT="98072e1eeeaa6b64a276e87095a25516d4f6ba18"
+VERSION=${VERSION:-20201205_2034}
+COMMIT="cafc2eda3a11eefeb8e3f19f6a73d8f0d00206be"
BUILD=${BUILD:-1}
TAG=${TAG:-_SBo}
+PKGTYPE=${PKGTYPE:-tgz}
if [ -z "$ARCH" ]; then
case "$( uname -m )" in
@@ -37,7 +40,14 @@ if [ -z "$ARCH" ]; then
esac
fi
-CWD=$(pwd)
+# If the variable PRINT_PACKAGE_NAME is set, then this script will report what
+# the name of the created package would be, and then exit. This information
+# could be useful to other scripts.
+if [ ! -z "${PRINT_PACKAGE_NAME}" ]; then
+ echo "$PRGNAM-$VERSION-$ARCH-$BUILD$TAG.$PKGTYPE"
+ exit 0
+fi
+
TMP=${TMP:-/tmp/SBo}
PKG=$TMP/package-$PRGNAM
OUTPUT=${OUTPUT:-/tmp}
@@ -84,10 +94,6 @@ mkdir -p build
make install DESTDIR=$PKG
)
-install -D -m644 res/linux/${PRGNAM,,}.desktop $PKG/usr/share/applications/${PRGNAM,,}.desktop
-install -D -m644 res/linux/icons/${PRGNAM,,}_48x48.png $PKG/usr/share/pixmaps/${PRGNAM,,}.png
-install -D -m644 $CWD/${PRGNAM,,}.6 $PKG/usr/man/man6/${PRGNAM,,}.6
-
find $PKG -print0 | xargs -0 file | grep -e "executable" -e "shared object" | grep ELF \
| cut -f 1 -d : | xargs strip --strip-unneeded 2> /dev/null || true
@@ -103,4 +109,4 @@ cat $CWD/slack-desc > $PKG/install/slack-desc
cat $CWD/doinst.sh > $PKG/install/doinst.sh
cd $PKG
-/sbin/makepkg -l y -c n $OUTPUT/$PRGNAM-$VERSION-$ARCH-$BUILD$TAG.${PKGTYPE:-tgz}
+/sbin/makepkg -l y -c n $OUTPUT/$PRGNAM-$VERSION-$ARCH-$BUILD$TAG.$PKGTYPE
diff --git a/games/OpenXcom/OpenXcom.info b/games/OpenXcom/OpenXcom.info
index f5cf1b0346..2fb722b39f 100644
--- a/games/OpenXcom/OpenXcom.info
+++ b/games/OpenXcom/OpenXcom.info
@@ -1,8 +1,8 @@
PRGNAM="OpenXcom"
-VERSION="20190912_1344"
+VERSION="20201205_2034"
HOMEPAGE="https://openxcom.org"
-DOWNLOAD="https://github.com/SupSuper/OpenXcom/archive/98072e1eeeaa6b64a276e87095a25516d4f6ba18/OpenXcom-98072e1eeeaa6b64a276e87095a25516d4f6ba18.tar.gz"
-MD5SUM="9f3f5e7fd8b5b731153e3a7ba375ab1c"
+DOWNLOAD="https://github.com/SupSuper/OpenXcom/archive/cafc2eda3a11eefeb8e3f19f6a73d8f0d00206be/OpenXcom-cafc2eda3a11eefeb8e3f19f6a73d8f0d00206be.tar.gz"
+MD5SUM="21989afb6389a3f7bd0f6a35f6d7dbcb"
DOWNLOAD_x86_64=""
MD5SUM_x86_64=""
REQUIRES="yaml-cpp SDL_gfx"
diff --git a/games/OpenXcom/openxcom.6 b/games/OpenXcom/openxcom.6
deleted file mode 100644
index 3be4f320fa..0000000000
--- a/games/OpenXcom/openxcom.6
+++ /dev/null
@@ -1,88 +0,0 @@
-'\" t
-.\" Title: openxcom
-.\" Author: [see the "AUTHOR" section]
-.\" Generator: DocBook XSL Stylesheets v1.76.1 <http://docbook.sf.net/>
-.\" Date: 2014.06.12
-.\" Manual: User\*(Aqs Manual
-.\" Source: 1.0
-.\" Language: English
-.\"
-.TH "OPENXCOM" "6" "2014\&.06\&.12" "1\&.0" "User\*(Aqs Manual"
-.\" -----------------------------------------------------------------
-.\" * Define some portability stuff
-.\" -----------------------------------------------------------------
-.\" ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
-.\" http://bugs.debian.org/507673
-.\" http://lists.gnu.org/archive/html/groff/2009-02/msg00013.html
-.\" ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
-.ie \n(.g .ds Aq \(aq
-.el .ds Aq '
-.\" -----------------------------------------------------------------
-.\" * set default formatting
-.\" -----------------------------------------------------------------
-.\" disable hyphenation
-.nh
-.\" disable justification (adjust text to left margin only)
-.ad l
-.\" -----------------------------------------------------------------
-.\" * MAIN CONTENT STARTS HERE *
-.\" -----------------------------------------------------------------
-.SH "NAME"
-openxcom \- An open\-source clone of the original "UFO: Enemy Unknown"
-.SH "SYNOPSIS"
-.HP \w'\fBopenxcom\fR\ 'u
-\fBopenxcom\fR [\fIOPTIONS\fR]
-.SH "DESCRIPTION"
-.PP
-
-\fBopenxcom\fR
-is an open\-source clone of the popular UFO: Enemy Unknown (X\-Com: UFO Defense in USA) videogame by Microprose, licensed under the GPL and written in C++ / SDL\&.
-.SH "OPTIONS"
-.PP
-\fB\-data\fR \fIPATH\fR
-.RS 4
-use
-\fIPATH\fR
-as the default Data Folder instead of auto\-detecting
-.RE
-.PP
-\fB\-user\fR \fIPATH\fR
-.RS 4
-use
-\fIPATH\fR
-as the default User Folder instead of auto\-detecting
-.RE
-.PP
-\fB\-cfg\fR \fIPATH\fR
-.RS 4
-use
-\fIPATH\fR
-as the default Config Folder instead of auto\-detecting
-.RE
-.PP
-\fB\-\fR\fB\fIKEY\fR\fR \fIVALUE\fR
-.RS 4
-set option
-\fIKEY\fR
-to
-\fIVALUE\fR
-instead of default/loaded value (eg\&.
-\-displayWidth 640)
-.RE
-.PP
-\fB\-help\fR, \fB\-?\fR
-.RS 4
-show command\-line help
-.RE
-.SH "AUTHOR"
-.PP
-OpenXcom Developers
-.SH "SEE ALSO"
-.PP
-
-\m[blue]\fB\%http://openxcom.org\fR\m[],
-\m[blue]\fB\%http://ufopaedia.org/index.php?title=OpenXcom\fR\m[]
-.SH "COPYRIGHT"
-.br
-Copyright \(co 2014 OpenXcom Developers
-.br
diff --git a/games/PrismLauncher/PrismLauncher.SlackBuild b/games/PrismLauncher/PrismLauncher.SlackBuild
new file mode 100644
index 0000000000..09a660bd7f
--- /dev/null
+++ b/games/PrismLauncher/PrismLauncher.SlackBuild
@@ -0,0 +1,113 @@
+#!/bin/bash
+
+# Slackware build script for PrismLauncher
+
+# Copyright 2023-2024 Samuel Young, MO, USA
+# All rights reserved.
+#
+# Redistribution and use of this script, with or without modification, is
+# permitted provided that the following conditions are met:
+#
+# 1. Redistributions of this script must retain the above copyright
+# notice, this list of conditions and the following disclaimer.
+#
+# THIS SOFTWARE IS PROVIDED BY THE AUTHOR "AS IS" AND ANY EXPRESS OR IMPLIED
+# WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE IMPLIED WARRANTIES OF
+# MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE ARE DISCLAIMED. IN NO
+# EVENT SHALL THE AUTHOR BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL,
+# SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT LIMITED TO,
+# PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, DATA, OR PROFITS;
+# OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY,
+# WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR
+# OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF THIS SOFTWARE, EVEN IF
+# ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
+
+cd $(dirname $0) ; CWD=$(pwd)
+
+PRGNAM=PrismLauncher
+VERSION=${VERSION:-8.2}
+BUILD=${BUILD:-1}
+TAG=${TAG:-_SBo}
+PKGTYPE=${PKGTYPE:-tgz}
+
+if [ -z "$ARCH" ]; then
+ case "$( uname -m )" in
+ i?86) ARCH=i586 ;;
+ arm*) ARCH=arm ;;
+ *) ARCH=$( uname -m ) ;;
+ esac
+fi
+
+if [ ! -z "${PRINT_PACKAGE_NAME}" ]; then
+ echo "$PRGNAM-$VERSION-$ARCH-$BUILD$TAG.$PKGTYPE"
+ exit 0
+fi
+
+TMP=${TMP:-/tmp/SBo}
+PKG=$TMP/package-$PRGNAM
+OUTPUT=${OUTPUT:-/tmp}
+
+if [ "$ARCH" = "i586" ]; then
+ SLKCFLAGS="-O2 -march=i586 -mtune=i686"
+ LIBDIRSUFFIX=""
+elif [ "$ARCH" = "i686" ]; then
+ SLKCFLAGS="-O2 -march=i686 -mtune=i686"
+ LIBDIRSUFFIX=""
+elif [ "$ARCH" = "x86_64" ]; then
+ SLKCFLAGS="-O2 -fPIC"
+ LIBDIRSUFFIX="64"
+else
+ SLKCFLAGS="-O2"
+ LIBDIRSUFFIX=""
+fi
+
+set -e
+
+rm -rf $PKG
+mkdir -p $TMP $PKG $OUTPUT
+cd $TMP
+rm -rf $PRGNAM-$VERSION
+tar xvf $CWD/$PRGNAM-$VERSION.tar.gz
+cd $PRGNAM-$VERSION
+chown -R root:root .
+find -L . \
+ \( -perm 777 -o -perm 775 -o -perm 750 -o -perm 711 -o -perm 555 \
+ -o -perm 511 \) -exec chmod 755 {} \; -o \
+ \( -perm 666 -o -perm 664 -o -perm 640 -o -perm 600 -o -perm 444 \
+ -o -perm 440 -o -perm 400 \) -exec chmod 644 {} \;
+
+mkdir -p build
+cd build
+ cmake -S . -G Ninja \
+ -Wno-dev \
+ -DCMAKE_C_FLAGS:STRING="$SLKCFLAGS" \
+ -DCMAKE_CXX_FLAGS:STRING="$SLKCFLAGS" \
+ -DCMAKE_INSTALL_PREFIX=/usr \
+ -DLIB_SUFFIX=${LIBDIRSUFFIX} \
+ -DMAN_INSTALL_DIR=/usr/man \
+ -DENABLE_LTO=ON \
+ -DLauncher_QT_VERSION_MAJOR="5" \
+ -DLauncher_BUILD_PLATFORM="slackware" \
+ -DCMAKE_BUILD_TYPE=Release ..
+ cmake --build .
+ DESTDIR=$PKG cmake --install .
+cd ..
+
+find $PKG -print0 | xargs -0 file | grep -e "executable" -e "shared object" | grep ELF \
+ | cut -f 1 -d : | xargs strip --strip-unneeded 2> /dev/null || true
+
+find $PKG/usr/man -type f -exec gzip -9 {} \;
+for i in $( find $PKG/usr/man -type l ) ; do ln -s $( readlink $i ).gz $i.gz ; rm $i ; done
+
+mkdir -p $PKG/usr/doc/$PRGNAM-$VERSION
+cp -a \
+ CONTRIBUTING.md COPYING.md README.md LICENSE \
+ $PKG/usr/doc/$PRGNAM-$VERSION
+cat $CWD/$PRGNAM.SlackBuild > $PKG/usr/doc/$PRGNAM-$VERSION/$PRGNAM.SlackBuild
+
+mkdir -p $PKG/install
+cat $CWD/slack-desc > $PKG/install/slack-desc
+cat $CWD/doinst.sh > $PKG/install/doinst.sh
+
+cd $PKG
+/sbin/makepkg -l y -c n $OUTPUT/$PRGNAM-$VERSION-$ARCH-$BUILD$TAG.$PKGTYPE
diff --git a/games/PrismLauncher/PrismLauncher.info b/games/PrismLauncher/PrismLauncher.info
new file mode 100644
index 0000000000..d68f250a41
--- /dev/null
+++ b/games/PrismLauncher/PrismLauncher.info
@@ -0,0 +1,10 @@
+PRGNAM="PrismLauncher"
+VERSION="8.2"
+HOMEPAGE="https://prismlauncher.org"
+DOWNLOAD="https://github.com/PrismLauncher/PrismLauncher/releases/download/8.2/PrismLauncher-8.2.tar.gz"
+MD5SUM="2455aec61b37898e21c3ea23498593c7"
+DOWNLOAD_x86_64=""
+MD5SUM_x86_64=""
+REQUIRES="OpenJDK17 scdoc"
+MAINTAINER="Samuel Young"
+EMAIL="samyoung12788@gmail.com"
diff --git a/games/PrismLauncher/README b/games/PrismLauncher/README
new file mode 100644
index 0000000000..1c39a4cf14
--- /dev/null
+++ b/games/PrismLauncher/README
@@ -0,0 +1,15 @@
+PrismLauncher (An Open Source Minecraft launcher)
+
+An Open Source Minecraft launcher with the ability to manage multiple
+instances, accounts and mods. Focused on user freedom and free
+redistributability.
+
+A Microsoft or Mojang account that owns Minecraft is required to
+download and play the game through PrismLauncher.
+
+zulu-openjdk17 can be used instead of OpenJDK17, if one wishes to do
+so. If you plan on using a version of Minecraft that is on version
+1.16.5 or older, you will also have to install either openjdk8 or
+zulu-openjdk8. If you have multiple versions of Java installed on your
+system, make sure that your JAVA_HOME environment variable is pointed
+to OpenJDK17 when building PrismLauncher.
diff --git a/games/PrismLauncher/doinst.sh b/games/PrismLauncher/doinst.sh
new file mode 100644
index 0000000000..3e5691a052
--- /dev/null
+++ b/games/PrismLauncher/doinst.sh
@@ -0,0 +1,9 @@
+if [ -x /usr/bin/update-desktop-database ]; then
+ /usr/bin/update-desktop-database -q usr/share/applications >/dev/null 2>&1
+fi
+
+if [ -e usr/share/icons/hicolor/icon-theme.cache ]; then
+ if [ -x /usr/bin/gtk-update-icon-cache ]; then
+ /usr/bin/gtk-update-icon-cache usr/share/icons/hicolor >/dev/null 2>&1
+ fi
+fi
diff --git a/games/PrismLauncher/slack-desc b/games/PrismLauncher/slack-desc
new file mode 100644
index 0000000000..720e00fe2f
--- /dev/null
+++ b/games/PrismLauncher/slack-desc
@@ -0,0 +1,19 @@
+# HOW TO EDIT THIS FILE:
+# The "handy ruler" below makes it easier to edit a package description.
+# Line up the first '|' above the ':' following the base package name, and
+# the '|' on the right side marks the last column you can put a character in.
+# You must make exactly 11 lines for the formatting to be correct. It's also
+# customary to leave one space after the ':' except on otherwise blank lines.
+
+ |-----handy-ruler------------------------------------------------------|
+PrismLauncher: PrismLauncher (Open-source Minecraft launcher)
+PrismLauncher:
+PrismLauncher: An Open Source Minecraft launcher with the ability to manage multiple
+PrismLauncher: instances, accounts and mods. Focused on user freedom and free
+PrismLauncher: redistributability.
+PrismLauncher:
+PrismLauncher:
+PrismLauncher:
+PrismLauncher:
+PrismLauncher: Homepage: https://PrismLauncher.org
+PrismLauncher:
diff --git a/games/PyLotRO/PyLotRO.SlackBuild b/games/PyLotRO/PyLotRO.SlackBuild
index 987008faed..7ed7653ec5 100644
--- a/games/PyLotRO/PyLotRO.SlackBuild
+++ b/games/PyLotRO/PyLotRO.SlackBuild
@@ -1,4 +1,4 @@
-#!/bin/sh
+#!/bin/bash
# Slackbuild for PyLotRO
@@ -21,20 +21,30 @@
# that is unlikely, as I am rather tall.
+cd $(dirname $0) ; CWD=$(pwd)
+
PRGNAM=PyLotRO
VERSION=${VERSION:-0.1.15}
BUILD=${BUILD:-2}
TAG=${TAG:-_SBo}
+PKGTYPE=${PKGTYPE:-tgz}
if [ -z "$ARCH" ]; then
case "$( uname -m )" in
- i?86) ARCH=i486 ;;
+ i?86) ARCH=i586 ;;
arm*) ARCH=arm ;;
*) ARCH=$( uname -m ) ;;
esac
fi
-CWD=$(pwd)
+# If the variable PRINT_PACKAGE_NAME is set, then this script will report what
+# the name of the created package would be, and then exit. This information
+# could be useful to other scripts.
+if [ ! -z "${PRINT_PACKAGE_NAME}" ]; then
+ echo "$PRGNAM-$VERSION-$ARCH-$BUILD$TAG.$PKGTYPE"
+ exit 0
+fi
+
TMP=${TMP:-/tmp/SBo}
PKG=$TMP/package-$PRGNAM
OUTPUT=${OUTPUT:-/tmp}
@@ -73,4 +83,4 @@ cat $CWD/slack-desc > $PKG/install/slack-desc
cat $CWD/doinst.sh > $PKG/install/doinst.sh
cd $PKG
-/sbin/makepkg -l y -c n $OUTPUT/$PRGNAM-$VERSION-$ARCH-$BUILD$TAG.${PKGTYPE:-tgz}
+/sbin/makepkg -l y -c n $OUTPUT/$PRGNAM-$VERSION-$ARCH-$BUILD$TAG.$PKGTYPE
diff --git a/games/Pyfa/Pyfa.SlackBuild b/games/Pyfa/Pyfa.SlackBuild
index 610b02f3d1..89079d8db8 100644
--- a/games/Pyfa/Pyfa.SlackBuild
+++ b/games/Pyfa/Pyfa.SlackBuild
@@ -1,4 +1,4 @@
-#!/bin/sh
+#!/bin/bash
# Slackware build script for Pyfa
@@ -22,16 +22,26 @@
# OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF THIS SOFTWARE, EVEN IF
# ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
+cd $(dirname $0) ; CWD=$(pwd)
+
PRGNAM=Pyfa
VERSION=${VERSION:-1.31.0}
BUILD=${BUILD:-1}
TAG=${TAG:-_SBo}
+PKGTYPE=${PKGTYPE:-tgz}
SRCNAM=pyfa
ARCH=noarch
-CWD=$(pwd)
+# If the variable PRINT_PACKAGE_NAME is set, then this script will report what
+# the name of the created package would be, and then exit. This information
+# could be useful to other scripts.
+if [ ! -z "${PRINT_PACKAGE_NAME}" ]; then
+ echo "$PRGNAM-$VERSION-$ARCH-$BUILD$TAG.$PKGTYPE"
+ exit 0
+fi
+
TMP=${TMP:-/tmp/SBo}
PKG=$TMP/package-$PRGNAM
OUTPUT=${OUTPUT:-/tmp}
@@ -67,4 +77,4 @@ mkdir -p $PKG/install
cat $CWD/slack-desc > $PKG/install/slack-desc
cd $PKG
-/sbin/makepkg -l y -c n $OUTPUT/$PRGNAM-$VERSION-$ARCH-$BUILD$TAG.${PKGTYPE:-tgz}
+/sbin/makepkg -l y -c n $OUTPUT/$PRGNAM-$VERSION-$ARCH-$BUILD$TAG.$PKGTYPE
diff --git a/games/Pyfa/Pyfa.info b/games/Pyfa/Pyfa.info
index ba83a07350..ffae8a5935 100644
--- a/games/Pyfa/Pyfa.info
+++ b/games/Pyfa/Pyfa.info
@@ -5,6 +5,6 @@ DOWNLOAD="https://github.com/pyfa-org/Pyfa/releases/download/v1.31.0/pyfa-1.31.0
MD5SUM="ab53f8765c4220114ac69a8195fbcad4"
DOWNLOAD_x86_64=""
MD5SUM_x86_64=""
-REQUIRES="wxPython SQLAlchemy python-dateutil"
+REQUIRES="wxPython SQLAlchemy python2-dateutil"
MAINTAINER="Zach Lewis"
EMAIL="koni@archlinux.us"
diff --git a/games/QuickNES-Core/QuickNES-Core.SlackBuild b/games/QuickNES-Core/QuickNES-Core.SlackBuild
index 078b9e7565..dfeccb7e12 100644
--- a/games/QuickNES-Core/QuickNES-Core.SlackBuild
+++ b/games/QuickNES-Core/QuickNES-Core.SlackBuild
@@ -1,4 +1,4 @@
-#!/bin/sh
+#!/bin/bash
# Slackware build script for QuickNES-Core
@@ -22,11 +22,15 @@
# OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF THIS SOFTWARE, EVEN IF
# ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
+cd $(dirname $0) ; CWD=$(pwd)
+
PRGNAM=QuickNES-Core
LIBNAM=quicknes_libretro
-VERSION=${VERSION:-2020.10.11.81fedf7}
+VERSION=${VERSION:-2022.07.25.1b88a09}
+COMMIT=1b88a09f1c386ff9ee46bb371583ae04c5cb5dd0
BUILD=${BUILD:-1}
TAG=${TAG:-_SBo}
+PKGTYPE=${PKGTYPE:-tgz}
if [ -z "$ARCH" ]; then
case "$( uname -m )" in
@@ -36,7 +40,14 @@ if [ -z "$ARCH" ]; then
esac
fi
-CWD=$(pwd)
+# If the variable PRINT_PACKAGE_NAME is set, then this script will report what
+# the name of the created package would be, and then exit. This information
+# could be useful to other scripts.
+if [ ! -z "${PRINT_PACKAGE_NAME}" ]; then
+ echo "$PRGNAM-$VERSION-$ARCH-$BUILD$TAG.$PKGTYPE"
+ exit 0
+fi
+
TMP=${TMP:-/tmp/SBo}
PKG=$TMP/package-$PRGNAM
OUTPUT=${OUTPUT:-/tmp}
@@ -49,9 +60,9 @@ set -eu
rm -rf $PKG
mkdir -p $TMP $PKG $OUTPUT
cd $TMP
-rm -rf $PRGNAM-$VERSION
-tar xvf $CWD/$PRGNAM-$VERSION.tar.xz
-cd $PRGNAM-$VERSION
+rm -rf ${PRGNAM/-/_}-$COMMIT
+tar xvf $CWD/${PRGNAM/-/_}-$COMMIT.tar.gz
+cd ${PRGNAM/-/_}-$COMMIT
chown -R root:root .
find -L . \
\( -perm 777 -o -perm 775 -o -perm 750 -o -perm 711 -o -perm 555 \
@@ -63,8 +74,8 @@ find -L . \
make -f Makefile DEBUG=$DEBUG
-install -Dm0644 $LIBNAM.so $PKG/usr/lib${LIBDIRSUFFIX}/libretro/$LIBNAM.so
-install -Dm0644 $LIBNAM.info $PKG/usr/lib${LIBDIRSUFFIX}/libretro/info/$LIBNAM.info
+install -Dm0755 $LIBNAM.so $PKG/usr/lib${LIBDIRSUFFIX}/libretro/$LIBNAM.so
+install -Dm0644 $CWD/$LIBNAM.info $PKG/usr/lib${LIBDIRSUFFIX}/libretro/info/$LIBNAM.info
if [ $DEBUG = 0 ]; then
find $PKG -print0 | xargs -0 file | grep -e "executable" -e "shared object" | grep ELF \
@@ -79,4 +90,4 @@ mkdir -p $PKG/install
cat $CWD/slack-desc > $PKG/install/slack-desc
cd $PKG
-/sbin/makepkg -l y -c n $OUTPUT/$PRGNAM-$VERSION-$ARCH-$BUILD$TAG.${PKGTYPE:-tgz}
+/sbin/makepkg -l y -c n $OUTPUT/$PRGNAM-$VERSION-$ARCH-$BUILD$TAG.$PKGTYPE
diff --git a/games/QuickNES-Core/QuickNES-Core.info b/games/QuickNES-Core/QuickNES-Core.info
index acd199cfed..3a208757fa 100644
--- a/games/QuickNES-Core/QuickNES-Core.info
+++ b/games/QuickNES-Core/QuickNES-Core.info
@@ -1,8 +1,8 @@
PRGNAM="QuickNES-Core"
-VERSION="2020.10.11.81fedf7"
+VERSION="2022.07.25.1b88a09"
HOMEPAGE="https://www.libretro.com/"
-DOWNLOAD="https://ilmich.github.io/src/QuickNES-Core-2020.10.11.81fedf7.tar.xz"
-MD5SUM="818dd86fa2555a73c84cd6282c772eca"
+DOWNLOAD="https://github.com/libretro/QuickNES_Core/archive/1b88a09/QuickNES_Core-1b88a09f1c386ff9ee46bb371583ae04c5cb5dd0.tar.gz https://raw.githubusercontent.com/libretro/libretro-core-info/345d38d5bdfd02ca2809b066b52aa505d462f8de/quicknes_libretro.info"
+MD5SUM="5c020ab7d3362a72fd99dca19238c8e5 016305560f3c8adc7344a71fddf45366"
DOWNLOAD_x86_64=""
MD5SUM_x86_64=""
REQUIRES="RetroArch"
diff --git a/games/RMG/README b/games/RMG/README
new file mode 100644
index 0000000000..ed77db21f8
--- /dev/null
+++ b/games/RMG/README
@@ -0,0 +1,7 @@
+Rosalie's Mupen GUI is a free and open-source mupen64plus front-end
+written in C++.
+
+It offers a simple-to-use user interface.
+
+gcn64tools is an optional dependency that becomes required if you
+plan to use any raphnet adapters as input.
diff --git a/games/RMG/RMG.SlackBuild b/games/RMG/RMG.SlackBuild
new file mode 100644
index 0000000000..38f8c674d0
--- /dev/null
+++ b/games/RMG/RMG.SlackBuild
@@ -0,0 +1,128 @@
+#!/bin/bash
+
+# Slackware build script for RMG
+
+# Copyright 2023 Steven Voges <Oregon, USA>
+# All rights reserved.
+#
+# Redistribution and use of this script, with or without modification, is
+# permitted provided that the following conditions are met:
+#
+# 1. Redistributions of this script must retain the above copyright
+# notice, this list of conditions and the following disclaimer.
+#
+# THIS SOFTWARE IS PROVIDED BY THE AUTHOR "AS IS" AND ANY EXPRESS OR IMPLIED
+# WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE IMPLIED WARRANTIES OF
+# MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE ARE DISCLAIMED. IN NO
+# EVENT SHALL THE AUTHOR BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL,
+# SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT LIMITED TO,
+# PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, DATA, OR PROFITS;
+# OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY,
+# WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR
+# OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF THIS SOFTWARE, EVEN IF
+# ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
+
+cd $(dirname $0) ; CWD=$(pwd)
+
+PRGNAM=RMG
+VERSION=${VERSION:-0.5.2}
+BUILD=${BUILD:-1}
+TAG=${TAG:-_SBo}
+PKGTYPE=${PKGTYPE:-tgz}
+
+if [ -z "$ARCH" ]; then
+ case "$( uname -m )" in
+ i?86) ARCH=i586 ;;
+ arm*) ARCH=arm ;;
+ *) ARCH=$( uname -m ) ;;
+ esac
+fi
+
+if [ ! -z "${PRINT_PACKAGE_NAME}" ]; then
+ echo "$PRGNAM-$VERSION-$ARCH-$BUILD$TAG.$PKGTYPE"
+ exit 0
+fi
+
+TMP=${TMP:-/tmp/SBo}
+PKG=$TMP/package-$PRGNAM
+OUTPUT=${OUTPUT:-/tmp}
+
+if [ "$ARCH" = "i586" ]; then
+ SLKCFLAGS="-O2 -march=i586 -mtune=i686"
+ LIBDIRSUFFIX=""
+elif [ "$ARCH" = "i686" ]; then
+ SLKCFLAGS="-O2 -march=i686 -mtune=i686"
+ LIBDIRSUFFIX=""
+elif [ "$ARCH" = "x86_64" ]; then
+ SLKCFLAGS="-O2 -fPIC"
+ LIBDIRSUFFIX="64"
+elif [ "$ARCH" = "aarch64" ]; then
+ SLKCFLAGS="-O2 -fPIC"
+ LIBDIRSUFFIX="64"
+else
+ SLKCFLAGS="-O2"
+ LIBDIRSUFFIX=""
+fi
+
+set -e
+
+rm -rf $PKG
+mkdir -p $TMP $PKG $OUTPUT
+cd $TMP
+rm -rf $PRGNAM-$VERSION
+tar xvf $CWD/$PRGNAM-$VERSION.tar.gz
+cd $PRGNAM-$VERSION
+chown -R root:root .
+find -L . \
+ \( -perm 777 -o -perm 775 -o -perm 750 -o -perm 711 -o -perm 555 \
+ -o -perm 511 \) -exec chmod 755 {} \; -o \
+ \( -perm 666 -o -perm 664 -o -perm 640 -o -perm 600 -o -perm 444 \
+ -o -perm 440 -o -perm 400 \) -exec chmod 644 {} \;
+
+if [ $LIBDIRSUFFIX = "64" ]; then
+ sed -i "s|\"lib\"|\"lib$LIBDIRSUFFIX\"|g" CMakeLists.txt
+ sed -i "s|lib/RMG|lib$LIBDIRSUFFIX/RMG|g" CMakeLists.txt
+ sed -i "s|lib/RMG|lib$LIBDIRSUFFIX/RMG|g" Source/${PRGNAM}-Core/Directories.cpp
+fi
+
+mkdir -p build
+cd build
+ cmake \
+ -DCMAKE_C_FLAGS:STRING="$SLKCFLAGS" \
+ -DCMAKE_CXX_FLAGS:STRING="$SLKCFLAGS" \
+ -DCMAKE_INSTALL_PREFIX=/usr \
+ -DDISCORD_RPC=OFF \
+ -DNO_RUST=ON \
+ -DPORTABLE_INSTALL=OFF \
+ -DUPDATER=OFF \
+ -DUSE_LIBFMT=ON \
+ -DCMAKE_BUILD_TYPE=Release ..
+ make
+ make install/strip DESTDIR=$PKG
+cd ..
+
+chmod +x $PKG/usr/lib$LIBDIRSUFFIX/*.so
+chmod +x $PKG/usr/lib$LIBDIRSUFFIX/$PRGNAM/*.so
+chmod +x $PKG/usr/lib$LIBDIRSUFFIX/$PRGNAM/Core/*.so
+chmod +x $PKG/usr/lib$LIBDIRSUFFIX/$PRGNAM/Plugin/Audio/*.so
+chmod +x $PKG/usr/lib$LIBDIRSUFFIX/$PRGNAM/Plugin/GFX/*.so
+chmod +x $PKG/usr/lib$LIBDIRSUFFIX/$PRGNAM/Plugin/Input/*.so
+chmod +x $PKG/usr/lib$LIBDIRSUFFIX/$PRGNAM/Plugin/RSP/*.so
+
+rm -f $PKG/{,usr/}lib${LIBDIRSUFFIX}/*.la
+
+find $PKG -print0 | xargs -0 file | grep -e "executable" -e "shared object" | grep ELF \
+ | cut -f 1 -d : | xargs strip --strip-unneeded 2> /dev/null || true
+
+mkdir -p $PKG/usr/doc/$PRGNAM-$VERSION
+cp -a \
+ LICENSE README.md VERSION \
+ $PKG/usr/doc/$PRGNAM-$VERSION
+cat $CWD/$PRGNAM.SlackBuild > $PKG/usr/doc/$PRGNAM-$VERSION/$PRGNAM.SlackBuild
+
+mkdir -p $PKG/install
+cat $CWD/slack-desc > $PKG/install/slack-desc
+cat $CWD/doinst.sh > $PKG/install/doinst.sh
+
+cd $PKG
+/sbin/makepkg -l y -c n $OUTPUT/$PRGNAM-$VERSION-$ARCH-$BUILD$TAG.$PKGTYPE
diff --git a/games/RMG/RMG.info b/games/RMG/RMG.info
new file mode 100644
index 0000000000..ceeb37f08f
--- /dev/null
+++ b/games/RMG/RMG.info
@@ -0,0 +1,10 @@
+PRGNAM="RMG"
+VERSION="0.5.2"
+HOMEPAGE="https://github.com/Rosalie241/RMG"
+DOWNLOAD="https://github.com/Rosalie241/RMG/archive/v0.5.2/RMG-0.5.2.tar.gz"
+MD5SUM="1cdcaac24bd27ad87159a846726f85af"
+DOWNLOAD_x86_64=""
+MD5SUM_x86_64=""
+REQUIRES="fmt hidapi libminizip qt6"
+MAINTAINER="Steven Voges"
+EMAIL="svoges.sbo@gmail.com"
diff --git a/games/RMG/doinst.sh b/games/RMG/doinst.sh
new file mode 100644
index 0000000000..65c7e2eeb9
--- /dev/null
+++ b/games/RMG/doinst.sh
@@ -0,0 +1,9 @@
+if [ -x /usr/bin/update-desktop-database ]; then
+ /usr/bin/update-desktop-database -q usr/share/applications >/dev/null 2>&1
+fi
+
+if [ -e usr/share/icons/hicolor/icon-theme.cache ]; then
+ if [ -x /usr/bin/gtk-update-icon-cache ]; then
+ /usr/bin/gtk-update-icon-cache -f usr/share/icons/hicolor >/dev/null 2>&1
+ fi
+fi
diff --git a/games/RMG/slack-desc b/games/RMG/slack-desc
new file mode 100644
index 0000000000..9971748dec
--- /dev/null
+++ b/games/RMG/slack-desc
@@ -0,0 +1,19 @@
+# HOW TO EDIT THIS FILE:
+# The "handy ruler" below makes it easier to edit a package description.
+# Line up the first '|' above the ':' following the base package name, and
+# the '|' on the right side marks the last column you can put a character in.
+# You must make exactly 11 lines for the formatting to be correct. It's also
+# customary to leave one space after the ':' except on otherwise blank lines.
+
+ |-----handy-ruler------------------------------------------------------|
+RMG: RMG (GUI for mupen64plus)
+RMG:
+RMG: Rosalie's Mupen GUI
+RMG:
+RMG: Homepage: https://github.com/Rosalie241/RMG
+RMG:
+RMG:
+RMG:
+RMG:
+RMG:
+RMG:
diff --git a/games/RetroArch/README b/games/RetroArch/README
index 8107802733..5524a5a8f6 100644
--- a/games/RetroArch/README
+++ b/games/RetroArch/README
@@ -19,14 +19,7 @@ RetroArch will require at least one of the libretro cores to play any
games.
Optional dependencies:
- ffmpeg jack libsixel libxkbcommon mbedtls miniupnpc nvidia-cg-toolkit
- OpenAL python3 qt5 SDL2 vulkan-sdk wayland-egl wayland-protocols
-
-Note: RetroArch can optionally use wayland-protocols during the build if
-it is installed. Instead of installing wayland-egl mesa can be rebuilt
-with Wayland support, using the following configure parameters.
-
- --with-egl-platforms=x11,drm,wayland
+ jack libsixel mbedtls nvidia-cg-toolkit
To build debugging symbols for RetroArch use:
DEBUG=yes ./RetroArch.SlackBuild
@@ -37,13 +30,10 @@ If building debugging symbols asan can also be built:
Discord integration can be enabled with:
DISCORD=yes
-Python3 support for shaders will need to be enabled with:
- PYTHON=yes ./RetroArch.SlackBuild
-
If pulseaudio is installed it can be disabled during the build with:
PULSE=no ./RetroArch.SlackBuild
-The Qt5 frontend can be disabled with:
+The Qt frontend can be disabled with:
QT=no ./RetroArch.SlackBuild
The materialui menu driver can be disabled with:
@@ -71,12 +61,7 @@ done by building RetroArch with:
or
GLES3=yes ./RetroArch.SlackBuild
-RetroArch optionally supports using Vulkan instead of OpenGL, this will
-require the vulkan-sdk from SBo and support for your video card and
-driver.
-
For additional notes, please see README.SLACKWARE.
-For more information on RetroArch or libretro please visit this site.
-
+For more information on RetroArch or libretro please visit:
https://docs.libretro.com/
diff --git a/games/RetroArch/RetroArch.SlackBuild b/games/RetroArch/RetroArch.SlackBuild
index 256833c35a..cb58796421 100644
--- a/games/RetroArch/RetroArch.SlackBuild
+++ b/games/RetroArch/RetroArch.SlackBuild
@@ -1,9 +1,9 @@
-#!/bin/sh
+#!/bin/bash
# Slackware build script for RetroArch
# Copyright 2016-2019 Hunter Sezen California, USA
-# Copyright 2020 ilmich < ardutu at gmail dot com >
+# Copyright 2020-2023 ilmich < ardutu at gmail dot com >
# All rights reserved.
#
# Redistribution and use of this script, with or without modification, is
@@ -22,11 +22,18 @@
# WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR
# OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF THIS SOFTWARE, EVEN IF
# ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
+#
+# 20220621 ilmich: Updated to 1.10.3, removed python flags (no more upstream support), removed merged opengles patch
+# 20220222 bkw: Modified by SlackBuilds.org: fix build on 15.0,
+# by updating to v1.10.0 (old version won't build).
+
+cd $(dirname $0) ; CWD=$(pwd)
PRGNAM=RetroArch
-VERSION=${VERSION:-1.9.0}
+VERSION=${VERSION:-1.15.0}
BUILD=${BUILD:-1}
TAG=${TAG:-_SBo}
+PKGTYPE=${PKGTYPE:-tgz}
if [ -z "$ARCH" ]; then
case "$( uname -m )" in
@@ -36,7 +43,11 @@ if [ -z "$ARCH" ]; then
esac
fi
-CWD=$(pwd)
+if [ ! -z "${PRINT_PACKAGE_NAME}" ]; then
+ echo "$PRGNAM-$VERSION-$ARCH-$BUILD$TAG.$PKGTYPE"
+ exit 0
+fi
+
TMP=${TMP:-/tmp/SBo}
PKG=$TMP/package-$PRGNAM
OUTPUT=${OUTPUT:-/tmp}
@@ -66,9 +77,9 @@ cd $PRGNAM-$VERSION
chown -R root:root .
find -L . \
\( -perm 777 -o -perm 775 -o -perm 750 -o -perm 711 -o -perm 555 \
- -o -perm 511 \) -exec chmod 755 {} \; -o \
+ -o -perm 511 \) -exec chmod 755 {} \+ -o \
\( -perm 666 -o -perm 664 -o -perm 640 -o -perm 600 -o -perm 444 \
- -o -perm 440 -o -perm 400 \) -exec chmod 644 {} \;
+ -o -perm 440 -o -perm 400 \) -exec chmod 644 {} \+
lib=
@@ -99,9 +110,6 @@ pkg-config --exists flac && lib="${lib} --disable-builtinflac"
pkg-config --exists libsixel && lib="${lib} --enable-sixel"
[ -d /usr/include/mbedtls ] && lib="${lib} --disable-builtinmbedtls"
-[ -d /usr/include/miniupnpc ] && lib="${lib} --disable-builtinminiupnpc"
-
-[ "${PYTHON:-no}" != no ] && lib="${lib} --enable-python"
[ "${MENU:-yes}" != yes ] && lib="${lib} --disable-menu"
[ "${PULSE:-yes}" != yes ] && lib="${lib} --disable-pulse"
@@ -133,14 +141,12 @@ sed -e "s|# audio_filter_dir =|audio_filter_dir = ${filter_dir}/audio|" \
# Fix qt5 support with 14.2.
sed -i 's/-fPIC/-fPIC -std=c++11/' qb/qb.moc.sh
-# Fix --enable-opengles and --enable-opengles3
-# https://github.com/libretro/RetroArch/pull/8749
-# https://github.com/libretro/RetroArch/commit/1a3f16ded122bf3928aeb9beb71b594bf24ce01a
-patch -p1 < $CWD/gles.patch
-
# Set $lib to a portable array
eval "set -- $lib"
+export CC=clang
+export CXX=clang++
+
CFLAGS="$SLKCFLAGS" \
CXXFLAGS="$SLKCFLAGS" \
./configure \
@@ -191,4 +197,4 @@ cat $CWD/slack-desc > $PKG/install/slack-desc
cat $CWD/doinst.sh > $PKG/install/doinst.sh
cd $PKG
-/sbin/makepkg -l y -c n $OUTPUT/$PRGNAM-$VERSION-$ARCH-$BUILD$TAG.${PKGTYPE:-tgz}
+/sbin/makepkg -l y -c n $OUTPUT/$PRGNAM-$VERSION-$ARCH-$BUILD$TAG.$PKGTYPE
diff --git a/games/RetroArch/RetroArch.info b/games/RetroArch/RetroArch.info
index 359df0a52c..5c4cddfdff 100644
--- a/games/RetroArch/RetroArch.info
+++ b/games/RetroArch/RetroArch.info
@@ -1,8 +1,8 @@
PRGNAM="RetroArch"
-VERSION="1.9.0"
+VERSION="1.15.0"
HOMEPAGE="https://www.libretro.com/"
-DOWNLOAD="https://github.com/libretro/RetroArch/archive/v1.9.0/RetroArch-1.9.0.tar.gz"
-MD5SUM="3f57a0b5e752921b6e1e5587bf546eb9"
+DOWNLOAD="https://github.com/libretro/RetroArch/archive/v1.15.0/RetroArch-1.15.0.tar.gz"
+MD5SUM="a9d0986ab33200117266dcf6fb04a36e"
DOWNLOAD_x86_64=""
MD5SUM_x86_64=""
REQUIRES=""
diff --git a/games/RetroArch/gles.patch b/games/RetroArch/gles.patch
deleted file mode 100644
index f893439500..0000000000
--- a/games/RetroArch/gles.patch
+++ /dev/null
@@ -1,32 +0,0 @@
-From 1a3f16ded122bf3928aeb9beb71b594bf24ce01a Mon Sep 17 00:00:00 2001
-From: orbea <orbea@riseup.net>
-Date: Fri, 10 May 2019 14:47:36 -0700
-Subject: [PATCH] Fix --enable-opengles and --enable-opengles3 (#8749)
-
-* qb: Fix OpenGLES build.
-
-The gl core video driver requires at least OpenGLES 3 and
-OpenGL 1 is not compatible with OpenGLES 2 or 3.
----
- qb/config.libs.sh | 8 ++++++++
- 1 file changed, 8 insertions(+)
-
-diff --git a/qb/config.libs.sh b/qb/config.libs.sh
-index 17eb7ccf20..510386e44c 100644
---- a/qb/config.libs.sh
-+++ b/qb/config.libs.sh
-@@ -351,6 +351,14 @@ fi
- if [ "$HAVE_OPENGL" = 'no' ] && [ "$HAVE_OPENGLES3" = 'no' ]; then
- die : 'Notice: OpenGL and OpenGLES3 are disabled. Disabling HAVE_OPENGL_CORE.'
- HAVE_OPENGL_CORE='no'
-+elif [ "$HAVE_OPENGLES" != 'no' ] && [ "$HAVE_OPENGLES3" != 'yes' ]; then
-+ die : 'Notice: OpenGLES2 is enabled. Disabling the OpenGL core driver.'
-+ HAVE_OPENGL_CORE='no'
-+fi
-+
-+if [ "$HAVE_OPENGLES" != 'no' ] || [ "$HAVE_OPENGLES3" != 'no' ]; then
-+ die : 'Notice: OpenGLES is enabled. Disabling the OpenGL1 driver.'
-+ HAVE_OPENGL1='no'
- fi
-
- if [ "$HAVE_ZLIB" = 'no' ]; then
diff --git a/games/SLADE/SLADE.SlackBuild b/games/SLADE/SLADE.SlackBuild
index cb6adf1a1e..10dd631409 100644
--- a/games/SLADE/SLADE.SlackBuild
+++ b/games/SLADE/SLADE.SlackBuild
@@ -1,4 +1,4 @@
-#!/bin/sh
+#!/bin/bash
# Slackware build script for SLADE
@@ -23,7 +23,22 @@
# OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF THIS SOFTWARE, EVEN IF
# ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
-# 20201109 bkw: update for v3.2.12a
+# 20230716 bkw: update for v3.2.4.
+# 20220616 bkw: update for v3.2.1.
+
+# 20220208 bkw:
+# - grr. add missing 'fmt' dep. my bad.
+# - autodetect wxWebView support in wxGTK3. also my bad.
+
+# 20211118 bkw:
+# - update for v3.2.0_b3. normally won't package a beta, but
+# 3.1.12a and 3.1.13 won't build, and life is too short.
+# - our wxGTK3 now has wxWebView, get rid of -DNO_WEBVIEW.
+# - /usr/share/slade3 moved to /usr/share/games/slade3.
+# - new- and old-style icons.
+# - add p7zip dep (the build process recompresses the .pk3).
+
+# 20201109 bkw: update for v3.1.12a
# 20200416 bkw:
# - take over maintenance
# - update for v3.1.11
@@ -31,10 +46,13 @@
# - install icon in right place, symlink to old location
# - get rid of our .desktop file (upstream provides one now)
+cd $(dirname $0) ; CWD=$(pwd)
+
PRGNAM=SLADE
-VERSION=${VERSION:-3.1.12a}
+VERSION=${VERSION:-3.2.4}
BUILD=${BUILD:-1}
TAG=${TAG:-_SBo}
+PKGTYPE=${PKGTYPE:-tgz}
if [ -z "$ARCH" ]; then
case "$( uname -m )" in
@@ -44,7 +62,11 @@ if [ -z "$ARCH" ]; then
esac
fi
-CWD=$(pwd)
+if [ ! -z "${PRINT_PACKAGE_NAME}" ]; then
+ echo "$PRGNAM-$VERSION-$ARCH-$BUILD$TAG.$PKGTYPE"
+ exit 0
+fi
+
TMP=${TMP:-/tmp/SBo}
PKG=$TMP/package-$PRGNAM
OUTPUT=${OUTPUT:-/tmp}
@@ -78,42 +100,73 @@ find -L . -perm /111 -a \! -perm 755 -a -exec chmod 755 {} \+ -o \
# 20200416 bkw: game binaries do not belong in /usr/bin.
sed -i 's,\<bin\>,games,' src/CMakeLists.txt
+# 20211118 bkw: pk3 file belongs in /usr/share/games/slade3.
+sed -i '/auto *dir_slade_pk3/s,=.*,= string("/usr/share/games/slade3/slade.pk3");,' \
+ src/Archive/ArchiveManager.cpp
+sed -i 's,share/slade3,share/games/slade3,' src/CMakeLists.txt
+
+# 20211118 bkw: I was gonna change the category in the .desktop file,
+# but looking at the spec, I don't see a GameEditor or similar.
+sed -i -e 's, *$,,' -e 's,^Exec=,&/usr/games/,' *.desktop
+
# 20200416 bkw: don't depend on unstable /usr/bin/wx-config symlink.
# stupid thing insists on searching for wx-config in PATH, instead of
# allowing us to explicitly give a full path and name for the script, so:
-WXCONF=/usr/lib$LIBDIRSUFFIX/wx/config/gtk2-unicode-3.0
+WXCONF=/usr/lib$LIBDIRSUFFIX/wx/config/gtk3-unicode-3.0
WXTMP=$( pwd )/wxtmp
mkdir -p $WXTMP
ln -s $WXCONF $WXTMP/wx-config
-# 20200416 bkw: our wxGTK3 package doesn't include wxWebView, and it's built
-# with gtk+-2, not 3. This stuff isn't autodetected so we help it along.
+# Note to self: don't try this:
+# -DCMAKE_C_COMPILER=clang \
+# -DCMAKE_CXX_COMPILER=clang++ \
+# It might compile OK but it will fail to run due to C++ ABI
+# version differences between the slade binary and the wx libraries.
+# We'd have to compile wxGTK3 with clang++ to make it work (and that
+# would break everything else using g++ and wxGTK3!)
+
+# Also, this build isn't ccache-able due to using precompiled headers
+# with g++ (see overly detailed discussion in games/mame). It's possible
+# to disable PCH, thus:
+# -DNO_COTIRE=ON \
+# but this makes the build take 3x as long, if it's not cached. Since
+# a non-ccached build with cotire only takes me 5 minutes, I won't go
+# to extreme lengths here like I did for mame.
+
+# 20220208 bkw: I screwed up: I forgot wxGTK3 isn't always built with
+# webkit2gtk (so it doesn't always have wxWebView). slade doesn't
+# autodetect this, so detect it ourselves:
+NO_WEBVIEW_OPT="ON"
+$WXTMP/wx-config --libs | grep -q webview && NO_WEBVIEW_OPT="OFF"
+echo "=== NO_WEBVIEW_OPT='$NO_WEBVIEW_OPT'"
+
+mkdir -p build
cd build
cmake \
-DWITH_WXPATH=$WXTMP \
- -DNO_WEBVIEW=ON \
- -DWX_GTK3=OFF \
+ -DNO_WEBVIEW=$NO_WEBVIEW_OPT \
-DCMAKE_C_FLAGS:STRING="$SLKCFLAGS" \
-DCMAKE_CXX_FLAGS:STRING="$SLKCFLAGS" \
-DCMAKE_INSTALL_PREFIX=/usr \
-DCMAKE_BUILD_TYPE=Release ..
- make
+ make VERBOSE=1
make install/strip DESTDIR=$PKG
cd ..
-mkdir -p $PKG/usr/share/icons/hicolor/128x128/apps \
- $PKG/usr/share/pixmaps
+iconname=$( grep '^Icon=' $PKG/usr/share/applications/*.desktop | cut -d= -f2 )
+rm -rf $PKG/usr/share/icons
+for px in 16 32 48 64 128; do
+ size=${px}x${px}
+ dir=$PKG/usr/share/icons/hicolor/$size/apps
+ mkdir -p $dir
+ convert -resize $size dist/res/logo_icon.png $dir/$iconname.png
+done
-# 20200416 bkw: don't want to hardcode the icon name here.
-cd $PKG/usr/share/icons
- icon="$( /bin/ls *$PRGNAM.png | head -1 )"
- mv $icon hicolor/128x128/apps
- ln -s hicolor/128x128/apps/$icon .
- ln -s ../icons/hicolor/128x128/apps/$icon ../pixmaps/$PRGNAM.png
-cd -
+mkdir -p $PKG/usr/share/pixmaps
+ln -s ../icons/hicolor/48x48/apps/$iconname.png $PKG/usr/share/pixmaps/$PRGNAM.png
mkdir -p $PKG/usr/doc/$PRGNAM-$VERSION
-cp -a README* gpl-2.0.txt $PKG/usr/doc/$PRGNAM-$VERSION
+cp -a README.md LICENSE* $PKG/usr/doc/$PRGNAM-$VERSION
cat $CWD/$PRGNAM.SlackBuild > $PKG/usr/doc/$PRGNAM-$VERSION/$PRGNAM.SlackBuild
mkdir -p $PKG/install
@@ -121,4 +174,4 @@ cat $CWD/slack-desc > $PKG/install/slack-desc
cat $CWD/doinst.sh > $PKG/install/doinst.sh
cd $PKG
-/sbin/makepkg -l y -c n $OUTPUT/$PRGNAM-$VERSION-$ARCH-$BUILD$TAG.${PKGTYPE:-tgz}
+/sbin/makepkg -l y -c n $OUTPUT/$PRGNAM-$VERSION-$ARCH-$BUILD$TAG.$PKGTYPE
diff --git a/games/SLADE/SLADE.info b/games/SLADE/SLADE.info
index 58e52e4d16..a7e6485e95 100644
--- a/games/SLADE/SLADE.info
+++ b/games/SLADE/SLADE.info
@@ -1,10 +1,10 @@
PRGNAM="SLADE"
-VERSION="3.1.12a"
+VERSION="3.2.4"
HOMEPAGE="http://slade.mancubus.net/"
-DOWNLOAD="https://github.com/sirjuddington/SLADE/archive/3.1.12a/SLADE-3.1.12a.tar.gz"
-MD5SUM="46f5ed96c196950651f796cb8d5f6f86"
+DOWNLOAD="https://github.com/sirjuddington/SLADE/archive/3.2.4/SLADE-3.2.4.tar.gz"
+MD5SUM="ba3fbbbb970497e558e26856f7d7ea2c"
DOWNLOAD_x86_64=""
MD5SUM_x86_64=""
-REQUIRES="wxGTK3 SFML ftgl fluidsynth FreeImage"
+REQUIRES="wxGTK3 fmt SFML ftgl FreeImage p7zip lua"
MAINTAINER="B. Watson"
-EMAIL="yalhcru@gmail.com"
+EMAIL="urchlay@slackware.uk"
diff --git a/games/SameBoy/README b/games/SameBoy/README
deleted file mode 100644
index a98091bcb4..0000000000
--- a/games/SameBoy/README
+++ /dev/null
@@ -1,20 +0,0 @@
-SameBoy is an open source Game Boy (DMG) and Game Boy Color (CGB) video
-game system emulator that can be used with its own SDL frontend or as a
-libretro core.
-
-RetroArch is an optional dependency required to run the libretro core.
-SDL2 is an optional dependency required to build the SDL frontend.
-
-At least one optional dependency is required to use SameBoy.
-
-To disable the SDL2 build use:
-
- STANDALONE=no ./SameBoy.SlackBuild
-
-To disable the libretro build use:
-
- LIBRETRO=no ./SameBoy.SlackBuild
-
-To build the debugging symbols use:
-
- DEBUG=yes ./SameBoy.SlackBuild
diff --git a/games/SameBoy/SameBoy.SlackBuild b/games/SameBoy/SameBoy.SlackBuild
deleted file mode 100644
index 530652bf78..0000000000
--- a/games/SameBoy/SameBoy.SlackBuild
+++ /dev/null
@@ -1,125 +0,0 @@
-#!/bin/sh
-
-# Slackware build script for SameBoy
-
-# Copyright 2017-2020 Hunter Sezen California, USA
-# All rights reserved.
-#
-# Redistribution and use of this script, with or without modification, is
-# permitted provided that the following conditions are met:
-#
-# 1. Redistributions of this script must retain the above copyright
-# notice, this list of conditions and the following disclaimer.
-#
-# THIS SOFTWARE IS PROVIDED BY THE AUTHOR "AS IS" AND ANY EXPRESS OR IMPLIED
-# WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE IMPLIED WARRANTIES OF
-# MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE ARE DISCLAIMED. IN NO
-# EVENT SHALL THE AUTHOR BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL,
-# SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT LIMITED TO,
-# PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, DATA, OR PROFITS;
-# OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY,
-# WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR
-# OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF THIS SOFTWARE, EVEN IF
-# ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
-
-PRGNAM=SameBoy
-LIBNAM=$(printf %s $PRGNAM | tr 'A-Z' 'a-z')_libretro
-SRCNAM=${LIBNAM%%_*}
-VERSION=${VERSION:-0.12.3}
-RGBVERS=${RGBVERS:-0.3.9}
-BUILD=${BUILD:-1}
-TAG=${TAG:-_SBo}
-
-if [ -z "$ARCH" ]; then
- case "$( uname -m )" in
- i?86) ARCH=i586 ;;
- arm*) ARCH=arm ;;
- *) ARCH=$( uname -m ) ;;
- esac
-fi
-
-CWD=$(pwd)
-TMP=${TMP:-/tmp/SBo}
-PKG=$TMP/package-$PRGNAM
-OUTPUT=${OUTPUT:-/tmp}
-
-LIBDIRSUFFIX=
-[ "$ARCH" = x86_64 ] && LIBDIRSUFFIX=64
-
-set -eu
-
-if pkg-config --exists sdl2; then
- STANDALONE="${STANDALONE:-yes}"
-else
- STANDALONE=no
-fi
-
-if [ "${LIBRETRO:=yes}" != yes ] && [ "$STANDALONE" != yes ]; then
- printf %s\\n 'ERROR: Both the SDL2 and Libretro builds are disabled.' >&2
- exit 1
-fi
-
-rm -rf $PKG
-mkdir -p $TMP $PKG $OUTPUT
-cd $TMP
-rm -rf $PRGNAM-$VERSION
-tar xvf $CWD/$PRGNAM-$VERSION.tar.gz
-cd $PRGNAM-$VERSION
-tar xvf $CWD/rgbds-$RGBVERS.tar.gz
-chown -R root:root .
-find -L . \
- \( -perm 777 -o -perm 775 -o -perm 750 -o -perm 711 -o -perm 555 \
- -o -perm 511 \) -exec chmod 755 {} \; -o \
- \( -perm 666 -o -perm 664 -o -perm 640 -o -perm 600 -o -perm 444 \
- -o -perm 440 -o -perm 400 \) -exec chmod 644 {} \;
-
-if [ "${DEBUG:=0}" != 0 ]; then
- CONF=debug
- DEBUG=1
-else
- CONF=release
-fi
-
-PATH="$TMP/$PRGNAM-$VERSION/rgbds-$RGBVERS/bin:$PATH"
-
-make -C rgbds-$RGBVERS Q=
-make -C rgbds-$RGBVERS install Q= \
- PREFIX=. \
- DESTDIR=./
-
-if [ "$STANDALONE" = yes ]; then
- make CONF=$CONF DATA_DIR=/usr/share/games/$SRCNAM/
- mkdir -p $PKG/usr/games $PKG/usr/share/games
- cp -av build/bin/SDL $PKG/usr/share/games/$SRCNAM
- rm -f $PKG/usr/share/games/$SRCNAM/LICENSE
- mv $PKG/usr/share/games/$SRCNAM/$SRCNAM $PKG/usr/games
-else
- make bootroms
-fi
-
-if [ "$LIBRETRO" = yes ]; then
- make -C libretro DEBUG=$DEBUG GIT_VERSION="${VERSION#*_}"
-
- install -Dm0644 build/bin/$LIBNAM.so \
- $PKG/usr/lib${LIBDIRSUFFIX}/libretro/$LIBNAM.so
-
- # sameboy_libretro.info from:
- # https://raw.githubusercontent.com/libretro/libretro-super/88176482b14e22b744b129bee84f27cb196936a9/dist/info/sameboy_libretro.info
- install -Dm0644 $CWD/$LIBNAM-info \
- $PKG/usr/lib${LIBDIRSUFFIX}/libretro/info/$LIBNAM.info
-fi
-
-if [ $DEBUG = 0 ]; then
- find $PKG -print0 | xargs -0 file | grep -e "executable" -e "shared object" |
- grep ELF | cut -f 1 -d : | xargs strip --strip-unneeded 2> /dev/null || true
-fi
-
-mkdir -p $PKG/usr/doc/$PRGNAM-$VERSION
-cp -a CHANGES.md LICENSE README.md $PKG/usr/doc/$PRGNAM-$VERSION
-cat $CWD/$PRGNAM.SlackBuild > $PKG/usr/doc/$PRGNAM-$VERSION/$PRGNAM.SlackBuild
-
-mkdir -p $PKG/install
-cat $CWD/slack-desc > $PKG/install/slack-desc
-
-cd $PKG
-/sbin/makepkg -l y -c n $OUTPUT/$PRGNAM-$VERSION-$ARCH-$BUILD$TAG.${PKGTYPE:-tgz}
diff --git a/games/SameBoy/SameBoy.info b/games/SameBoy/SameBoy.info
deleted file mode 100644
index 16297251c7..0000000000
--- a/games/SameBoy/SameBoy.info
+++ /dev/null
@@ -1,12 +0,0 @@
-PRGNAM="SameBoy"
-VERSION="0.12.3"
-HOMEPAGE="https://sameboy.github.io/"
-DOWNLOAD="https://github.com/LIJI32/SameBoy/archive/v0.12.3/SameBoy-0.12.3.tar.gz \
- https://github.com/rednex/rgbds/releases/download/v0.3.9/rgbds-0.3.9.tar.gz"
-MD5SUM="b3fc66405a40b508fd8e13ec0db9b860 \
- 95c71b623f465268cfbe36bef130ce17"
-DOWNLOAD_x86_64=""
-MD5SUM_x86_64=""
-REQUIRES=""
-MAINTAINER="orphaned - no maintainer"
-EMAIL="nobody@nowhere.com"
diff --git a/games/SameBoy/sameboy_libretro-info b/games/SameBoy/sameboy_libretro-info
deleted file mode 100644
index e68c38fea4..0000000000
--- a/games/SameBoy/sameboy_libretro-info
+++ /dev/null
@@ -1,21 +0,0 @@
-display_name = "Nintendo - Game Boy / Color (SameBoy)"
-authors = "LIJI32"
-supported_extensions = "gb|gbc"
-corename = "SameBoy"
-manufacturer = "Nintendo"
-categories = "Emulator"
-systemname = "Game Boy/Game Boy Color"
-systemid = "game_boy"
-database = "Nintendo - Game Boy|Nintendo - Game Boy Color"
-license = "MIT"
-permissions = ""
-display_version = "v0.9.0"
-supports_no_game = "false"
-firmware_count = 2
-firmware0_desc = "dmg_boot.bin (Game Boy boot ROM)"
-firmware0_path = "dmg_boot.bin"
-firmware0_opt = "true"
-firmware1_desc = "cgb_boot.bin (Game Boy Color boot ROM)"
-firmware1_path = "cgb_boot.bin"
-firmware1_opt = "true"
-notes = "(!) dmg_boot.bin (md5): 32fbbd84168d3482956eb3c5051637f5|(!) cgb_boot.bin (md5): dbfce9db9deaa2567f6a84fde55f9680"
diff --git a/games/SameBoy/slack-desc b/games/SameBoy/slack-desc
deleted file mode 100644
index 502cc6e13d..0000000000
--- a/games/SameBoy/slack-desc
+++ /dev/null
@@ -1,19 +0,0 @@
-# HOW TO EDIT THIS FILE:
-# The "handy ruler" below makes it easier to edit a package description.
-# Line up the first '|' above the ':' following the base package name, and
-# the '|' on the right side marks the last column you can put a character in.
-# You must make exactly 11 lines for the formatting to be correct. It's also
-# customary to leave one space after the ':' except on otherwise blank lines.
-
- |-----handy-ruler------------------------------------------------------|
-SameBoy: SameBoy (Gameboy and Gameboy Color emulator)
-SameBoy:
-SameBoy: SameBoy is an open source Gameboy (DMG) and Gameboy Color (CGB)
-SameBoy: emulator, written in portable C.
-SameBoy:
-SameBoy: Homepage: https://sameboy.github.io/
-SameBoy:
-SameBoy:
-SameBoy:
-SameBoy:
-SameBoy:
diff --git a/games/Scorched3D/Scorched3D.SlackBuild b/games/Scorched3D/Scorched3D.SlackBuild
index f69b108793..106970d142 100644
--- a/games/Scorched3D/Scorched3D.SlackBuild
+++ b/games/Scorched3D/Scorched3D.SlackBuild
@@ -1,8 +1,8 @@
-#!/bin/sh
+#!/bin/bash
# Slackware build script for Scorched3D
-# Copyright 2008-2013 Heinz Wiesinger, Amsterdam, The Netherlands
+# Copyright 2008-2021 Heinz Wiesinger, Amsterdam, The Netherlands
# All rights reserved.
#
# Redistribution and use of this script, with or without modification, is
@@ -11,37 +11,47 @@
# 1. Redistributions of this script must retain the above copyright
# notice, this list of conditions and the following disclaimer.
#
-# THIS SOFTWARE IS PROVIDED BY THE AUTHOR ''AS IS'' AND ANY EXPRESS OR IMPLIED
-# WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE IMPLIED WARRANTIES OF
-# MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE ARE DISCLAIMED. IN NO
-# EVENT SHALL THE AUTHOR BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL,
-# SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT LIMITED TO,
-# PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, DATA, OR PROFITS;
-# OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY,
-# WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR
-# OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF THIS SOFTWARE, EVEN IF
-# ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
+# THIS SOFTWARE IS PROVIDED BY THE AUTHOR ``AS IS'' AND ANY EXPRESS OR IMPLIED
+# WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE IMPLIED WARRANTIES OF
+# MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE ARE DISCLAIMED. IN NO
+# EVENT SHALL THE AUTHOR BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL,
+# SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT LIMITED TO,
+# PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, DATA, OR PROFITS;
+# OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY,
+# WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR
+# OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF THIS SOFTWARE, EVEN IF
+# ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
+
+# 20220222 bkw: Modified by SlackBuilds.org: use wxGTK3 regardless
+# of where the /usr/bin/wx-config symlink points.
+
+cd $(dirname $0) ; CWD=$(pwd)
PRGNAM=Scorched3D
VERSION=${VERSION:-44}
-BUILD=${BUILD:-1}
+BUILD=${BUILD:-2}
TAG=${TAG:-_SBo}
+PKGTYPE=${PKGTYPE:-tgz}
if [ -z "$ARCH" ]; then
case "$( uname -m )" in
- i?86) ARCH=i486 ;;
+ i?86) ARCH=i586 ;;
arm*) ARCH=arm ;;
*) ARCH=$( uname -m ) ;;
esac
fi
-CWD=$(pwd)
+if [ ! -z "${PRINT_PACKAGE_NAME}" ]; then
+ echo "$PRGNAM-$VERSION-$ARCH-$BUILD$TAG.$PKGTYPE"
+ exit 0
+fi
+
TMP=${TMP:-/tmp/SBo}
PKG=$TMP/package-$PRGNAM
OUTPUT=${OUTPUT:-/tmp}
-if [ "$ARCH" = "i486" ]; then
- SLKCFLAGS="-O2 -march=i486 -mtune=i686"
+if [ "$ARCH" = "i586" ]; then
+ SLKCFLAGS="-O2 -march=i586 -mtune=i686"
LIBDIRSUFFIX=""
elif [ "$ARCH" = "i686" ]; then
SLKCFLAGS="-O2 -march=i686 -mtune=i686"
@@ -67,16 +77,30 @@ cd scorched
chown -R root:root .
find -L . \
\( -perm 777 -o -perm 775 -o -perm 750 -o -perm 711 -o -perm 555 \
- -o -perm 511 \) -exec chmod 755 {} \; -o \
+ -o -perm 511 \) -exec chmod 755 {} \+ -o \
\( -perm 666 -o -perm 664 -o -perm 640 -o -perm 600 -o -perm 444 \
- -o -perm 440 -o -perm 400 \) -exec chmod 644 {} \;
+ -o -perm 440 -o -perm 400 \) -exec chmod 644 {} \+
+
+# Apply patches from Fedora
+
+# Fix race condition on fast machines
+patch -p1 -i $CWD/patches/scorched3d-fix-hang-on-fast-machines.patch
+
+# Use xdg-open instead of firefox to open help
+patch -p1 -i $CWD/patches/scorched3d-help.patch
+
+# Fix compatibility with wxGTK3
+patch -p1 -i $CWD/patches/scorched3d-wx3.0.patch
-patch -p1 < $CWD/gcc.patch
+# Fix build issues
+patch -p0 -i $CWD/patches/scorched3d-returntype.patch
+patch -p1 -i $CWD/patches/scorched3d-freetype-buildfix.patch
CFLAGS="$SLKCFLAGS" \
CXXFLAGS="$SLKCFLAGS" \
./configure \
--prefix=/usr \
+ --with-wx-config=/usr/lib$LIBDIRSUFFIX/wx/config/gtk3-unicode-3.0 \
--libdir=/usr/lib${LIBDIRSUFFIX} \
--sysconfdir=/etc \
--localstatedir=/var \
@@ -105,4 +129,4 @@ cat $CWD/slack-desc > $PKG/install/slack-desc
cat $CWD/doinst.sh > $PKG/install/doinst.sh
cd $PKG
-/sbin/makepkg -l y -c n $OUTPUT/$PRGNAM-$VERSION-$ARCH-$BUILD$TAG.${PKGTYPE:-tgz}
+/sbin/makepkg -l y -c n $OUTPUT/$PRGNAM-$VERSION-$ARCH-$BUILD$TAG.$PKGTYPE
diff --git a/games/Scorched3D/Scorched3D.info b/games/Scorched3D/Scorched3D.info
index aac8fe3c02..e0962b8dbd 100644
--- a/games/Scorched3D/Scorched3D.info
+++ b/games/Scorched3D/Scorched3D.info
@@ -5,6 +5,6 @@ DOWNLOAD="http://downloads.sourceforge.net/scorched3d/Scorched3D-44-src.tar.gz"
MD5SUM="c395d54a7a43cf91166d2cc0f7dec83e"
DOWNLOAD_x86_64=""
MD5SUM_x86_64=""
-REQUIRES="freealut wxPython"
+REQUIRES="freealut wxGTK3"
MAINTAINER="Heinz Wiesinger"
-EMAIL="pprkut@liwjatan.at"
+EMAIL="pprkut@slackbuilds.org"
diff --git a/games/Scorched3D/gcc.patch b/games/Scorched3D/gcc.patch
deleted file mode 100644
index 622c28a2fa..0000000000
--- a/games/Scorched3D/gcc.patch
+++ /dev/null
@@ -1,11 +0,0 @@
---- scorched/src/common/weapons/AccessoryStore.cpp.orig 2017-07-07 22:27:57.777261322 +0700
-+++ scorched/src/common/weapons/AccessoryStore.cpp 2017-07-07 22:39:34.368313611 +0700
-@@ -156,7 +156,7 @@
- Accessory *parent, XMLNode *currentNode)
- {
- XMLNode *typeNode = 0;
-- if (!currentNode->getNamedParameter("type", typeNode)) return false;
-+ if (!currentNode->getNamedParameter("type", typeNode)) return 0;
-
- AccessoryPart *accessoryPart =
- AccessoryMetaRegistration::getNewAccessory(typeNode->getContent(), this);
diff --git a/games/Scorched3D/patches/scorched3d-fix-hang-on-fast-machines.patch b/games/Scorched3D/patches/scorched3d-fix-hang-on-fast-machines.patch
new file mode 100644
index 0000000000..4773081b6f
--- /dev/null
+++ b/games/Scorched3D/patches/scorched3d-fix-hang-on-fast-machines.patch
@@ -0,0 +1,53 @@
+diff -up scorched/src/common/coms/ComsLoadLevelMessage.cpp~ scorched/src/common/coms/ComsLoadLevelMessage.cpp
+--- scorched/src/common/coms/ComsLoadLevelMessage.cpp~ 2014-08-01 18:47:31.000000000 +0200
++++ scorched/src/common/coms/ComsLoadLevelMessage.cpp 2020-08-13 21:33:59.895250469 +0200
+@@ -108,6 +108,49 @@ bool ComsLoadLevelMessage::loadState(Sco
+
+ bool ComsLoadLevelMessage::loadTanks(ScorchedContext &context)
+ {
++ /*
++ * There is a timing bug which shows on really fast machines
++ * where the client starts talking to the server before the
++ * server initial setup is done.
++ * In sofar as I have managed to debug this, the following
++ * happens on slower machines, aka the GOOD case:
++ *
++ * Server TankAddSimAction::invokeAction() new Tank "(Bot) Fred"
++ * Server TankAddSimAction::invokeAction() new Tank "(Bot) Ted"
++ * Server TankAddSimAction::invokeAction() new Tank "Player 1"
++ * Server TankAddSimAction::invokeAction() new Tank "Spectator"
++ * Client TankAddSimAction::invokeAction() new Tank "(Bot) Fred"
++ * Client TankAddSimAction::invokeAction() new Tank "(Bot) Ted"
++ * Client TankAddSimAction::invokeAction() new Tank "Player 1"
++ * Client TankAddSimAction::invokeAction() new Tank "Spectator"
++ *
++ * Note the server internally creates all tanks before the
++ * client does and thus before the client starts sending
++ * messages related to these tanks to the server.
++ *
++ * On a fast enough system (i7-10610U) the following order
++ * has been observed instead:
++ *
++ * Server TankAddSimAction::invokeAction() new Tank "(Bot) Fred"
++ * Server TankAddSimAction::invokeAction() new Tank "(Bot) Ted"
++ * Client TankAddSimAction::invokeAction() new Tank "(Bot) Fred"
++ * Client TankAddSimAction::invokeAction() new Tank "(Bot) Ted"
++ * Client TankAddSimAction::invokeAction() new Tank "Player 1"
++ * Client TankAddSimAction::invokeAction() new Tank "Spectator"
++ * Server TankAddSimAction::invokeAction() new Tank "Player 1"
++ * Server TankAddSimAction::invokeAction() new Tank "Spectator"
++ *
++ * Note the server creates the "Player 1" and "Spectator"
++ * tanks after the client, this causes the server to ignore
++ * some initial messages from the client related to these
++ * tanks, after which things get stuck, breaking non-networked
++ * games on fast machines.
++ *
++ * The sleep below is an ugly but effective workaround for this
++ * issue.
++ */
++ SDL_Delay(100);
++
+ NetBufferReader reader(tanksBuffer_);
+
+ // Add any new tanks
diff --git a/games/Scorched3D/patches/scorched3d-freetype-buildfix.patch b/games/Scorched3D/patches/scorched3d-freetype-buildfix.patch
new file mode 100644
index 0000000000..f18fa8c1f6
--- /dev/null
+++ b/games/Scorched3D/patches/scorched3d-freetype-buildfix.patch
@@ -0,0 +1,36 @@
+diff -up scorched/src/launcher/wxdialogs/TrueTypeFont.h~ scorched/src/launcher/wxdialogs/TrueTypeFont.h
+--- scorched/src/launcher/wxdialogs/TrueTypeFont.h~ 2014-08-01 18:47:32.000000000 +0200
++++ scorched/src/launcher/wxdialogs/TrueTypeFont.h 2014-08-29 14:04:55.726042013 +0200
+@@ -25,10 +25,10 @@
+ #include <wx/image.h>
+ #include <ft2build.h>
+ #include <string>
+-#include <freetype/freetype.h>
+-#include <freetype/ftglyph.h>
+-#include <freetype/ftoutln.h>
+-#include <freetype/fttrigon.h>
++#include FT_FREETYPE_H
++#include FT_GLYPH_H
++#include FT_OUTLINE_H
++#include FT_TRIGONOMETRY_H
+
+ class TrueTypeFont
+ {
+diff -up scorched/src/client/GLEXT/GLFont2dFreeType.h~ scorched/src/client/GLEXT/GLFont2dFreeType.h
+--- scorched/src/client/GLEXT/GLFont2dFreeType.h~ 2014-08-01 18:47:31.000000000 +0200
++++ scorched/src/client/GLEXT/GLFont2dFreeType.h 2014-08-29 14:08:10.327083878 +0200
+@@ -23,10 +23,10 @@
+
+ #include <GLEXT/GLFont2dStorage.h>
+ #include <ft2build.h>
+-#include <freetype/freetype.h>
+-#include <freetype/ftglyph.h>
+-#include <freetype/ftoutln.h>
+-#include <freetype/fttrigon.h>
++#include FT_FREETYPE_H
++#include FT_GLYPH_H
++#include FT_OUTLINE_H
++#include FT_TRIGONOMETRY_H
+ #include <string>
+
+ class GLFont2dFreeType
diff --git a/games/Scorched3D/patches/scorched3d-help.patch b/games/Scorched3D/patches/scorched3d-help.patch
new file mode 100644
index 0000000000..4da81a9a53
--- /dev/null
+++ b/games/Scorched3D/patches/scorched3d-help.patch
@@ -0,0 +1,12 @@
+diff -up scorched/src/common/common/DefinesScorched.cpp.orig scorched/src/common/common/DefinesScorched.cpp
+--- scorched/src/common/common/DefinesScorched.cpp.orig 2009-02-15 15:11:18.000000000 +0100
++++ scorched/src/common/common/DefinesScorched.cpp 2009-02-16 14:28:53.000000000 +0100
+@@ -58,7 +58,7 @@ void S3D::showURL(const std::string &url
+ std::string buffer = S3D::formatStringBuffer("open %s", url.c_str());
+ system(buffer.c_str());
+ #else
+- std::string buffer = S3D::formatStringBuffer("firefox %s", url.c_str());
++ std::string buffer = S3D::formatStringBuffer("xdg-open %s", url.c_str());
+ system(buffer.c_str());
+ #endif // __DARWIN__
+ #endif // _WIN32
diff --git a/games/Scorched3D/patches/scorched3d-returntype.patch b/games/Scorched3D/patches/scorched3d-returntype.patch
new file mode 100644
index 0000000000..cd6f1145bf
--- /dev/null
+++ b/games/Scorched3D/patches/scorched3d-returntype.patch
@@ -0,0 +1,11 @@
+--- src/common/weapons/AccessoryStore.cpp.orig 2016-02-13 22:16:08.997822186 -0600
++++ src/common/weapons/AccessoryStore.cpp 2016-02-13 22:16:47.949819533 -0600
+@@ -156,7 +156,7 @@
+ Accessory *parent, XMLNode *currentNode)
+ {
+ XMLNode *typeNode = 0;
+- if (!currentNode->getNamedParameter("type", typeNode)) return false;
++ if (!currentNode->getNamedParameter("type", typeNode)) return 0;
+
+ AccessoryPart *accessoryPart =
+ AccessoryMetaRegistration::getNewAccessory(typeNode->getContent(), this);
diff --git a/games/Scorched3D/patches/scorched3d-wx3.0.patch b/games/Scorched3D/patches/scorched3d-wx3.0.patch
new file mode 100644
index 0000000000..7ba7a13eeb
--- /dev/null
+++ b/games/Scorched3D/patches/scorched3d-wx3.0.patch
@@ -0,0 +1,170 @@
+From: Markus Koschany <apo@debian.org>
+Date: Fri, 15 Jul 2016 18:01:36 +0200
+Subject: wx3.0 compat
+
+Make Scorched3D compatible with wxWidgets 3.0
+
+Thanks to Olly Betts for the patch.
+---
+ src/launcher/wxdialogs/Display.cpp | 10 +++++-----
+ src/launcher/wxdialogs/DisplayDialog.cpp | 10 +++++-----
+ src/launcher/wxdialogs/SettingsDialog.cpp | 14 +++++++-------
+ 3 files changed, 17 insertions(+), 17 deletions(-)
+
+diff --git a/src/launcher/wxdialogs/Display.cpp b/src/launcher/wxdialogs/Display.cpp
+index e0a423a..22169e0 100644
+--- a/src/launcher/wxdialogs/Display.cpp
++++ b/src/launcher/wxdialogs/Display.cpp
+@@ -26,7 +26,7 @@ static void createMainControls(wxWindow *parent, wxSizer *sizer)
+ // Display settings
+ wxStaticBox *displayBox = new wxStaticBox(parent, -1, wxT("&Display"));
+ wxStaticBoxSizer *displaySizer = new wxStaticBoxSizer(displayBox, wxVERTICAL);
+- wxFlexGridSizer *displaySizer2 = new wxFlexGridSizer(2, 3, 5, 5);
++ wxFlexGridSizer *displaySizer2 = new wxFlexGridSizer(0, 3, 5, 5);
+ wxStaticText *resText = new wxStaticText(parent, -1, wxT("&Resolution :"));
+ IDC_DISPLAY_CTRL =
+ new wxComboBox(parent, -1,
+@@ -88,7 +88,7 @@ static void createMainControls(wxWindow *parent, wxSizer *sizer)
+ // Sound settings
+ wxStaticBox *soundBox = new wxStaticBox(parent, -1, wxT("&Sound"));
+ wxStaticBoxSizer *soundSizerMain = new wxStaticBoxSizer(soundBox, wxVERTICAL);
+- wxFlexGridSizer *soundSizer1 = new wxFlexGridSizer(4, 2);
++ wxFlexGridSizer *soundSizer1 = new wxFlexGridSizer(0, 4, 2, 0);
+ wxStaticText *volumeText = new wxStaticText(parent, -1, wxT("Sound Volume :"));
+ wxStaticText *musicVolumeText = new wxStaticText(parent, -1, wxT("Music Volume :"));
+ wxStaticText *ambientVolumeText = new wxStaticText(parent, -1, wxT("Ambient Volume :"));
+@@ -137,7 +137,7 @@ static void createMainControls(wxWindow *parent, wxSizer *sizer)
+ wxT("Game Detail Options"));
+ wxStaticBoxSizer *speedSizer = new wxStaticBoxSizer(speedBox, wxHORIZONTAL);
+
+- wxGridSizer *loadSizer = new wxFlexGridSizer(2, 2);
++ wxGridSizer *loadSizer = new wxFlexGridSizer(0, 2, 2, 0);
+ IDC_LOADULTRA_CTRL = new wxButton(parent, ID_LOADULTRA, wxT("&Ultra Detail"), wxDefaultPosition, wxSize(120,-1));
+ IDC_LOADDEFAULTS_CTRL = new wxButton(parent, ID_LOADDEFAULTS, wxT("&Normal Detail"), wxDefaultPosition, wxSize(120,-1));
+ IDC_LOADMEDIUM_CTRL = new wxButton(parent, ID_LOADMEDIUM, wxT("Faster Detail"), wxDefaultPosition, wxSize(120,-1));
+@@ -256,7 +256,7 @@ static void createSpeedControls(wxWindow *parent, wxSizer *sizer)
+ wxStaticBox *waterDetailBox = new wxStaticBox(parent, -1,
+ wxT("Graphics Detail"));
+ wxStaticBoxSizer *waterDetailSizer = new wxStaticBoxSizer(waterDetailBox, wxHORIZONTAL);
+- wxGridSizer *waterDetailSizer2 = new wxGridSizer(3, 1, 10, 10);
++ wxGridSizer *waterDetailSizer2 = new wxGridSizer(0, 1, 10, 10);
+
+ IDC_NOWATERREF_CTRL =
+ new wxCheckBox(parent, -1, wxT("Don't draw water reflections - Large Framerate Improvement"));
+@@ -471,7 +471,7 @@ static void createKeysControls(wxWindow *parent, wxSizer *topsizer)
+ {
+ wxScrolledWindow *scrolledWindow = new wxScrolledWindow(parent, -1,
+ wxDefaultPosition, wxSize(480, 250));
+- wxSizer *sizer = new wxFlexGridSizer(5, 1);
++ wxSizer *sizer = new wxFlexGridSizer(0, 5, 1, 0);
+
+ keyboardKeyList.clear();
+ if (!Keyboard::instance()->loadKeyFile())
+diff --git a/src/launcher/wxdialogs/DisplayDialog.cpp b/src/launcher/wxdialogs/DisplayDialog.cpp
+index c34c9dc..0cdc620 100644
+--- a/src/launcher/wxdialogs/DisplayDialog.cpp
++++ b/src/launcher/wxdialogs/DisplayDialog.cpp
+@@ -449,15 +449,15 @@ void DisplayFrame::refreshScreen()
+ IDC_SLIDER1_CTRL->SetValue(OptionsDisplay::instance()->getBrightness());
+ IDC_SLIDER1_CTRL->SetToolTip(wxString(OptionsDisplay::instance()->getBrightnessEntry().getDescription(), wxConvUTF8));
+ IDC_VOLUME_CTRL->SetRange(0, 128);
+- IDC_VOLUME_CTRL->SetTickFreq(4, 0);
++ IDC_VOLUME_CTRL->SetTickFreq(4);
+ IDC_VOLUME_CTRL->SetValue(OptionsDisplay::instance()->getSoundVolume());
+ IDC_VOLUME_CTRL->SetToolTip(wxString(OptionsDisplay::instance()->getSoundVolumeEntry().getDescription(), wxConvUTF8));
+ IDC_MUSICVOLUME_CTRL->SetRange(0, 128);
+- IDC_MUSICVOLUME_CTRL->SetTickFreq(4, 0);
++ IDC_MUSICVOLUME_CTRL->SetTickFreq(4);
+ IDC_MUSICVOLUME_CTRL->SetValue(OptionsDisplay::instance()->getMusicVolume());
+ IDC_MUSICVOLUME_CTRL->SetToolTip(wxString(OptionsDisplay::instance()->getMusicVolumeEntry().getDescription(), wxConvUTF8));
+ IDC_AMBIENTVOLUME_CTRL->SetRange(0, 128);
+- IDC_AMBIENTVOLUME_CTRL->SetTickFreq(4, 0);
++ IDC_AMBIENTVOLUME_CTRL->SetTickFreq(4);
+ IDC_AMBIENTVOLUME_CTRL->SetValue(OptionsDisplay::instance()->getAmbientSoundVolume());
+ IDC_AMBIENTVOLUME_CTRL->SetToolTip(wxString(OptionsDisplay::instance()->getAmbientSoundVolumeEntry().getDescription(), wxConvUTF8));
+ IDC_USERNAME_CTRL->SetValue(wxString(OptionsDisplay::instance()->getOnlineUserName(), wxConvUTF8));
+@@ -736,7 +736,7 @@ void DisplayFrame::onExportMod(wxCommandEvent &event)
+ #if wxCHECK_VERSION(2, 8, 0)
+ wxFD_SAVE);
+ #else
+- wxSAVE);
++ wxFD_SAVE);
+ #endif
+ if (file.empty()) return;
+ ModFiles files;
+@@ -764,7 +764,7 @@ void DisplayFrame::onImportMod(wxCommandEvent &event)
+ #if wxCHECK_VERSION(2, 8, 0)
+ wxFD_OPEN | wxFD_FILE_MUST_EXIST);
+ #else
+- wxOPEN | wxFILE_MUST_EXIST);
++ wxFD_OPEN | wxFD_FILE_MUST_EXIST);
+ #endif
+ if (file.empty()) return;
+ ModFiles files;
+diff --git a/src/launcher/wxdialogs/SettingsDialog.cpp b/src/launcher/wxdialogs/SettingsDialog.cpp
+index b312085..03ba629 100644
+--- a/src/launcher/wxdialogs/SettingsDialog.cpp
++++ b/src/launcher/wxdialogs/SettingsDialog.cpp
+@@ -105,7 +105,7 @@ void SettingsFrame::createMainPanel(bool server)
+ mainPanel_ = new wxPanel(book_, -1);
+ book_->AddPage(mainPanel_, wxT("Main"));
+ wxSizer *mainPanelSizer = new wxBoxSizer(wxVERTICAL);
+- wxSizer *sizer = new wxFlexGridSizer(2, 2);
++ wxSizer *sizer = new wxFlexGridSizer(0, 2, 2, 0);
+ mainPanelSizer->Add(sizer, 0, wxALL | wxALIGN_CENTER, 10);
+
+ setters_.push_back(
+@@ -166,7 +166,7 @@ void SettingsFrame::createMoneyPanel()
+ {
+ moneyPanel_ = new wxPanel(book_, -1);
+ wxSizer *ecoPanelSizer = new wxBoxSizer(wxVERTICAL);
+- wxSizer *sizer = new wxFlexGridSizer(2, 2);
++ wxSizer *sizer = new wxFlexGridSizer(0, 2, 2, 0);
+ ecoPanelSizer->Add(sizer, 0, wxALL | wxALIGN_CENTER, 10);
+
+ setters_.push_back(
+@@ -215,7 +215,7 @@ void SettingsFrame::createScorePanel()
+ {
+ scorePanel_ = new wxPanel(book_, -1);
+ wxSizer *ecoPanelSizer = new wxBoxSizer(wxVERTICAL);
+- wxSizer *sizer = new wxFlexGridSizer(2, 2);
++ wxSizer *sizer = new wxFlexGridSizer(0, 2, 2, 0);
+ ecoPanelSizer->Add(sizer, 0, wxALL | wxALIGN_CENTER, 10);
+
+ setters_.push_back(
+@@ -249,7 +249,7 @@ void SettingsFrame::createWeaponsPanel()
+ {
+ weaponsPanel_ = new wxPanel(book_, -1);
+ wxSizer *ecoPanelSizer = new wxBoxSizer(wxVERTICAL);
+- wxSizer *sizer = new wxFlexGridSizer(2, 2);
++ wxSizer *sizer = new wxFlexGridSizer(0, 2, 2, 0);
+ ecoPanelSizer->Add(sizer, 0, wxALL | wxALIGN_CENTER, 10);
+
+ setters_.push_back(
+@@ -286,7 +286,7 @@ void SettingsFrame::createEnvPanel()
+ {
+ envPanel_ = new wxPanel(book_, -1);
+ wxSizer *envPanelSizer = new wxBoxSizer(wxVERTICAL);
+- wxSizer *sizer = new wxFlexGridSizer(2, 2);
++ wxSizer *sizer = new wxFlexGridSizer(0, 2, 2, 0);
+ envPanelSizer->Add(sizer, 0, wxALL | wxALIGN_CENTER, 10);
+
+ setters_.push_back(
+@@ -337,7 +337,7 @@ void SettingsFrame::createLandPanel()
+ wxScrolledWindow *scrolledWindow = new wxScrolledWindow(landPanel_, -1,
+ wxDefaultPosition, wxSize(225, 200));
+
+- wxSizer *sizer = new wxFlexGridSizer(3, 3);
++ wxSizer *sizer = new wxFlexGridSizer(0, 3, 3, 0);
+ int i = 0;
+ std::list<LandscapeDefinitionsEntry> &defns =
+ landscapeDefinitions.getAllLandscapes();
+@@ -438,7 +438,7 @@ void SettingsFrame::createPlayersPanel()
+ wxT("Players are persistent for game"));
+ playersPanelSizer->Add(IDC_SERVER_RESIDUAL_CTRL, 0, wxALIGN_CENTER | wxTOP, 10);
+
+- wxSizer *sizer = new wxGridSizer(3, 3);
++ wxSizer *sizer = new wxGridSizer(0, 3, 3, 0);
+ playersPanelSizer->Add(sizer, 0, wxALL | wxALIGN_CENTER, 10);
+
+ for (int i=0; i<24; i++)
diff --git a/games/Sokoban/Sokoban.SlackBuild b/games/Sokoban/Sokoban.SlackBuild
index 5453508c04..b3f3723664 100644
--- a/games/Sokoban/Sokoban.SlackBuild
+++ b/games/Sokoban/Sokoban.SlackBuild
@@ -1,4 +1,4 @@
-#!/bin/sh
+#!/bin/bash
# Slackware build script for Sokoban
@@ -22,11 +22,14 @@
# OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF THIS SOFTWARE, EVEN IF
# ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
+cd $(dirname $0) ; CWD=$(pwd)
+
PRGNAM=Sokoban
VERSION=${VERSION:-100}
SRCDIR=$(echo $PRGNAM\_Release)
BUILD=${BUILD:-1}
TAG=${TAG:-_SBo}
+PKGTYPE=${PKGTYPE:-tgz}
if [ -z "$ARCH" ]; then
case "$( uname -m )" in
@@ -36,7 +39,14 @@ if [ -z "$ARCH" ]; then
esac
fi
-CWD=$(pwd)
+# If the variable PRINT_PACKAGE_NAME is set, then this script will report what
+# the name of the created package would be, and then exit. This information
+# could be useful to other scripts.
+if [ ! -z "${PRINT_PACKAGE_NAME}" ]; then
+ echo "$PRGNAM-$VERSION-$ARCH-$BUILD$TAG.$PKGTYPE"
+ exit 0
+fi
+
TMP=${TMP:-/tmp/SBo}
PKG=$TMP/package-$PRGNAM
OUTPUT=${OUTPUT:-/tmp}
@@ -91,4 +101,4 @@ cat $CWD/slack-desc > $PKG/install/slack-desc
cat $CWD/doinst.sh > $PKG/install/doinst.sh
cd $PKG
-/sbin/makepkg -l y -c n $OUTPUT/$PRGNAM-$VERSION-$ARCH-$BUILD$TAG.${PKGTYPE:-tgz}
+/sbin/makepkg -l y -c n $OUTPUT/$PRGNAM-$VERSION-$ARCH-$BUILD$TAG.$PKGTYPE
diff --git a/games/Sokoban/Sokoban.info b/games/Sokoban/Sokoban.info
index 49cd15a11f..bcecb23d16 100644
--- a/games/Sokoban/Sokoban.info
+++ b/games/Sokoban/Sokoban.info
@@ -1,10 +1,10 @@
PRGNAM="Sokoban"
VERSION="100"
HOMEPAGE="https://sourceforge.net/projects/sokoban"
-DOWNLOAD="https://sourceforge.net/projects/sokoban/files/sokoban/1.00/Sokoban_100.tar.gz"
+DOWNLOAD="https://slackware.uk/~urchlay/src/Sokoban_100.tar.gz"
MD5SUM="c3ce0a277281325081c9dedd74fdce5a"
DOWNLOAD_x86_64=""
MD5SUM_x86_64=""
-REQUIRES="pygame"
+REQUIRES="python2-pygame"
MAINTAINER="Dimitris Zlatanidis"
-EMAIL="d.zlatanidis@gmail.com"
+EMAIL="dslackw@gmail.com"
diff --git a/games/SpaceCadetPinball/README b/games/SpaceCadetPinball/README
new file mode 100644
index 0000000000..1038355560
--- /dev/null
+++ b/games/SpaceCadetPinball/README
@@ -0,0 +1,24 @@
+SpaceCadetPinball (3D Pinball for Windows - Space Cadet)
+
+Reverse engineered port of 3D Pinball for Windows - Space Cadet, a game
+bundled with Windows.
+
+This currently only supports "3D Pinball for Windows - Space Cadet"
+(the original pinball table included with some earlier versions of
+Windows) and "Space Cadet" (one of three pinball tables from the
+"Full Tilt! Pinball" game -- the other tables, "Skullduggery" and
+"Dragon's Keep" are not currently supported.)
+
+NOTE: This port does not include the actual pinball game files. These
+must either be downloaded separately and extracted and moved to
+/usr/share/SpaceCadetPinball/ or have the zip files (PinballXP.zip
+and/or FULLTILT.zip) available in the SlackBuild directory, which will
+cause the script to incorporate them automatically.
+
+To manually add it, do the following:
+
+"3D Pinball for Windows - Space Cadet" (aka 3DPB), copy the contents
+of the unzipped folder to /usr/share/SpaceCadetPinball.
+
+"Space Cadet" copy CADET.DAT and the SOUND/ folder from the CADET/
+folder to /usr/share/SpaceCadetPinball.
diff --git a/games/SpaceCadetPinball/SpaceCadetPinball.SlackBuild b/games/SpaceCadetPinball/SpaceCadetPinball.SlackBuild
new file mode 100644
index 0000000000..2fd48cf4a7
--- /dev/null
+++ b/games/SpaceCadetPinball/SpaceCadetPinball.SlackBuild
@@ -0,0 +1,125 @@
+#!/bin/bash
+
+# Slackware build script for SpaceCadetPinball
+
+# Copyright 2023 Jeremy Hansen jebrhansen+SBo@gmail.com
+# All rights reserved.
+#
+# Redistribution and use of this script, with or without modification, is
+# permitted provided that the following conditions are met:
+#
+# 1. Redistributions of this script must retain the above copyright
+# notice, this list of conditions and the following disclaimer.
+#
+# THIS SOFTWARE IS PROVIDED BY THE AUTHOR "AS IS" AND ANY EXPRESS OR IMPLIED
+# WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE IMPLIED WARRANTIES OF
+# MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE ARE DISCLAIMED. IN NO
+# EVENT SHALL THE AUTHOR BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL,
+# SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT LIMITED TO,
+# PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, DATA, OR PROFITS;
+# OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY,
+# WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR
+# OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF THIS SOFTWARE, EVEN IF
+# ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
+cd $(dirname $0) ; CWD=$(pwd)
+
+PRGNAM=SpaceCadetPinball
+VERSION=${VERSION:-2.1.0}
+SRCVER=${SRCVER:-Release_2.1.0}
+BUILD=${BUILD:-1}
+TAG=${TAG:-_SBo}
+PKGTYPE=${PKGTYPE:-tgz}
+
+PINFILE=${PINFILE:-PinballXP.zip}
+FULLFILE=${FULLFILE:-FULLTILT.ZIP}
+
+if [ -z "$ARCH" ]; then
+ case "$( uname -m )" in
+ i?86) ARCH=i586 ;;
+ arm*) ARCH=arm ;;
+ *) ARCH=$( uname -m ) ;;
+ esac
+fi
+
+if [ ! -z "${PRINT_PACKAGE_NAME}" ]; then
+ echo "$PRGNAM-$VERSION-$ARCH-$BUILD$TAG.$PKGTYPE"
+ exit 0
+fi
+
+TMP=${TMP:-/tmp/SBo}
+PKG=$TMP/package-$PRGNAM
+OUTPUT=${OUTPUT:-/tmp}
+
+if [ "$ARCH" = "i586" ]; then
+ SLKCFLAGS="-O2 -march=i586 -mtune=i686"
+ LIBDIRSUFFIX=""
+elif [ "$ARCH" = "i686" ]; then
+ SLKCFLAGS="-O2 -march=i686 -mtune=i686"
+ LIBDIRSUFFIX=""
+elif [ "$ARCH" = "x86_64" ]; then
+ SLKCFLAGS="-O2 -fPIC"
+ LIBDIRSUFFIX="64"
+else
+ SLKCFLAGS="-O2"
+ LIBDIRSUFFIX=""
+fi
+
+set -e
+
+rm -rf $PKG
+mkdir -p $TMP $PKG $OUTPUT
+cd $TMP
+rm -rf $PRGNAM-$SRCVER
+tar xvf $CWD/$PRGNAM-$SRCVER.tar.gz
+cd $PRGNAM-$SRCVER
+chown -R root:root .
+find -L . \
+ \( -perm 777 -o -perm 775 -o -perm 750 -o -perm 711 -o -perm 555 \
+ -o -perm 511 \) -exec chmod 755 {} \; -o \
+ \( -perm 666 -o -perm 664 -o -perm 640 -o -perm 600 -o -perm 444 \
+ -o -perm 440 -o -perm 400 \) -exec chmod 644 {} \;
+
+mkdir -p build
+cd build
+ cmake \
+ -DCMAKE_C_FLAGS:STRING="$SLKCFLAGS" \
+ -DCMAKE_CXX_FLAGS:STRING="$SLKCFLAGS" \
+ -DCMAKE_INSTALL_PREFIX=/usr \
+ -DCMAKE_BUILD_TYPE=Release ..
+ make
+ make install/strip DESTDIR=$PKG
+cd ..
+
+rm -f $PKG/{,usr/}lib${LIBDIRSUFFIX}/*.la
+
+find $PKG -print0 | xargs -0 file | grep -e "executable" -e "shared object" | grep ELF \
+ | cut -f 1 -d : | xargs strip --strip-unneeded 2> /dev/null || true
+
+# Prep folders for proprietary game data
+mkdir -p $PKG/usr/share/$PRGNAM/
+
+# If the zipped pinball sources using the same naming format as
+# archive.org's are there, use them
+
+# https://archive.org/details/pinballxp
+if [ -e $CWD/$PINFILE ]; then
+ unzip $CWD/$PINFILE -d $PKG/usr/share/$PRGNAM/
+fi
+# https://archive.org/details/win311_ftiltpball
+if [ -e $CWD/$FULLFILE ]; then
+ unzip -j $CWD/$FULLFILE CADET/* -d $PKG/usr/share/$PRGNAM/SOUND/
+ mv $PKG/usr/share/$PRGNAM/SOUND/CADET.DAT $PKG/usr/share/$PRGNAM/
+fi
+
+mkdir -p $PKG/usr/doc/$PRGNAM-$VERSION
+cp -a \
+ CONTRIBUTING.md LICENSE README.md \
+ $PKG/usr/doc/$PRGNAM-$VERSION
+cat $CWD/$PRGNAM.SlackBuild > $PKG/usr/doc/$PRGNAM-$VERSION/$PRGNAM.SlackBuild
+
+mkdir -p $PKG/install
+cat $CWD/slack-desc > $PKG/install/slack-desc
+cat $CWD/doinst.sh > $PKG/install/doinst.sh
+
+cd $PKG
+/sbin/makepkg -l y -c n $OUTPUT/$PRGNAM-$VERSION-$ARCH-$BUILD$TAG.$PKGTYPE
diff --git a/games/SpaceCadetPinball/SpaceCadetPinball.info b/games/SpaceCadetPinball/SpaceCadetPinball.info
new file mode 100644
index 0000000000..40dbb0a48e
--- /dev/null
+++ b/games/SpaceCadetPinball/SpaceCadetPinball.info
@@ -0,0 +1,10 @@
+PRGNAM="SpaceCadetPinball"
+VERSION="2.1.0"
+HOMEPAGE="https://github.com/k4zmu2a/SpaceCadetPinball"
+DOWNLOAD="https://github.com/k4zmu2a/SpaceCadetPinball/archive/refs/tags/Release_2.1.0/SpaceCadetPinball-Release_2.1.0.tar.gz"
+MD5SUM="960c5599383360636eebc6f1acd970bb"
+DOWNLOAD_x86_64=""
+MD5SUM_x86_64=""
+REQUIRES=""
+MAINTAINER="Jeremy Hansen"
+EMAIL="jebrhansen+SBo@gmail.com"
diff --git a/games/SpaceCadetPinball/doinst.sh b/games/SpaceCadetPinball/doinst.sh
new file mode 100644
index 0000000000..65c7e2eeb9
--- /dev/null
+++ b/games/SpaceCadetPinball/doinst.sh
@@ -0,0 +1,9 @@
+if [ -x /usr/bin/update-desktop-database ]; then
+ /usr/bin/update-desktop-database -q usr/share/applications >/dev/null 2>&1
+fi
+
+if [ -e usr/share/icons/hicolor/icon-theme.cache ]; then
+ if [ -x /usr/bin/gtk-update-icon-cache ]; then
+ /usr/bin/gtk-update-icon-cache -f usr/share/icons/hicolor >/dev/null 2>&1
+ fi
+fi
diff --git a/games/SpaceCadetPinball/slack-desc b/games/SpaceCadetPinball/slack-desc
new file mode 100644
index 0000000000..7a6519395b
--- /dev/null
+++ b/games/SpaceCadetPinball/slack-desc
@@ -0,0 +1,19 @@
+# HOW TO EDIT THIS FILE:
+# The "handy ruler" below makes it easier to edit a package description.
+# Line up the first '|' above the ':' following the base package name, and
+# the '|' on the right side marks the last column you can put a character in.
+# You must make exactly 11 lines for the formatting to be correct. It's also
+# customary to leave one space after the ':' except on otherwise blank lines.
+
+ |-----handy-ruler------------------------------------------------------|
+SpaceCadetPinball: SpaceCadetPinball (3D Pinball for Windows - Space Cadet)
+SpaceCadetPinball:
+SpaceCadetPinball: Reverse engineering of 3D Pinball for Windows - Space Cadet, a game
+SpaceCadetPinball: bundled with Windows.
+SpaceCadetPinball:
+SpaceCadetPinball: HOMEPAGE: https://github.com/k4zmu2a/SpaceCadetPinball
+SpaceCadetPinball:
+SpaceCadetPinball:
+SpaceCadetPinball:
+SpaceCadetPinball:
+SpaceCadetPinball:
diff --git a/games/SpaceZero/SpaceZero.SlackBuild b/games/SpaceZero/SpaceZero.SlackBuild
index dfa404461a..4b6a5483d8 100644
--- a/games/SpaceZero/SpaceZero.SlackBuild
+++ b/games/SpaceZero/SpaceZero.SlackBuild
@@ -1,4 +1,4 @@
-#!/bin/sh
+#!/bin/bash
# Slackware build script for SpaceZero
@@ -22,11 +22,24 @@
# OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF THIS SOFTWARE, EVEN IF
# ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
+# 20220407 bkw: Modified by SlackBuilds.org, BUILD=3: fix doc permisssions.
+
+# 20220231 bkw: Modified by SlackBuilds.org, BUILD=2:
+# - strip the binary.
+# - binary in /usr/games.
+# - absolute paths in .desktop
+# - install the PNG icon as spacezero.png (why was it .svg?)
+
+# 20220222 bkw: Modified by SlackBuilds.org: fix build on 15.0.
+
+cd $(dirname $0) ; CWD=$(pwd)
+
PRGNAM=SpaceZero
SRCNAM=spacezero
VERSION=${VERSION:-0.86.00}
-BUILD=${BUILD:-1}
+BUILD=${BUILD:-3}
TAG=${TAG:-_SBo}
+PKGTYPE=${PKGTYPE:-tgz}
if [ -z "$ARCH" ]; then
case "$( uname -m )" in
@@ -36,7 +49,11 @@ if [ -z "$ARCH" ]; then
esac
fi
-CWD=$(pwd)
+if [ ! -z "${PRINT_PACKAGE_NAME}" ]; then
+ echo "$PRGNAM-$VERSION-$ARCH-$BUILD$TAG.$PKGTYPE"
+ exit 0
+fi
+
TMP=${TMP:-/tmp/SBo}
PKG=$TMP/package-$PRGNAM
OUTPUT=${OUTPUT:-/tmp}
@@ -66,31 +83,35 @@ cd $SRCNAM
chown -R root:root .
find -L . \
\( -perm 777 -o -perm 775 -o -perm 750 -o -perm 711 -o -perm 555 \
- -o -perm 511 \) -exec chmod 755 {} \; -o \
+ -o -perm 511 \) -exec chmod 755 {} \+ -o \
\( -perm 666 -o -perm 664 -o -perm 640 -o -perm 600 -o -perm 444 \
- -o -perm 440 -o -perm 400 \) -exec chmod 644 {} \;
+ -o -perm 440 -o -perm 400 \) -exec chmod 644 {} \+
patch -p1 < $CWD/Makefile.patch
+# 20220222 bkw: SLKCFLAGS weren't even being used.
+sed -i "s,-O3,$SLKCFLAGS -fcommon," Makefile
+
make
find $PKG -print0 | xargs -0 file | grep -e "executable" -e "shared object" | grep ELF \
| cut -f 1 -d : | xargs strip --strip-unneeded 2> /dev/null || true
-mkdir -p $PKG/usr/bin \
+mkdir -p $PKG/usr/games \
$PKG/usr/share/games/$PRGNAM/{locales,sounds}
install -D -m0644 dat/locales/* $PKG/usr/share/games/$PRGNAM/locales
install -D -m0644 dat/sounds/* $PKG/usr/share/games/$PRGNAM/sounds
-install -D -m0755 bin/$SRCNAM $PKG/usr/bin/$SRCNAM
+install -s -D -m0755 bin/$SRCNAM $PKG/usr/games/$SRCNAM
mkdir -p $PKG/usr/share/applications
install -D -m644 $CWD/$PRGNAM.desktop $PKG/usr/share/applications/$PRGNAM.desktop
mkdir -p $PKG/usr/share/pixmaps/
-install -D -m644 $CWD/$SRCNAM.png $PKG/usr/share/pixmaps/$SRCNAM.svg
+install -D -m644 $CWD/$SRCNAM.png $PKG/usr/share/pixmaps/$SRCNAM.png
mkdir -p $PKG/usr/doc/$PRGNAM-$VERSION
+find html -type f -exec chmod 0644 {} \+
cp -a html/* $PKG/usr/doc/$PRGNAM-$VERSION
cat $CWD/$PRGNAM.SlackBuild > $PKG/usr/doc/$PRGNAM-$VERSION/$PRGNAM.SlackBuild
@@ -99,4 +120,4 @@ cat $CWD/slack-desc > $PKG/install/slack-desc
cat $CWD/doinst.sh > $PKG/install/doinst.sh
cd $PKG
-/sbin/makepkg -l y -c n $OUTPUT/$PRGNAM-$VERSION-$ARCH-$BUILD$TAG.${PKGTYPE:-tgz}
+/sbin/makepkg -l y -c n $OUTPUT/$PRGNAM-$VERSION-$ARCH-$BUILD$TAG.$PKGTYPE
diff --git a/games/SpaceZero/SpaceZero.desktop b/games/SpaceZero/SpaceZero.desktop
index 44c7130a95..3854d9e1e9 100644
--- a/games/SpaceZero/SpaceZero.desktop
+++ b/games/SpaceZero/SpaceZero.desktop
@@ -1,9 +1,8 @@
[Desktop Entry]
Name=SpaceZero
-Name[he]=SpaceZero
Comment=A 2D Real Time Strategy space combat game
-Exec=spacezero
-Icon=spacezero
+Exec=/usr/games/spacezero
+Icon=/usr/share/pixmaps/spacezero.png
Terminal=false
Type=Application
Categories=Game;StrategyGame;
diff --git a/games/SpaceZero/SpaceZero.info b/games/SpaceZero/SpaceZero.info
index dd7da2363c..ce02782696 100644
--- a/games/SpaceZero/SpaceZero.info
+++ b/games/SpaceZero/SpaceZero.info
@@ -1,7 +1,7 @@
PRGNAM="SpaceZero"
VERSION="0.86.00"
HOMEPAGE="http://spacezero.sourceforge.net/"
-DOWNLOAD="http://downloads.sourceforge.net/project/spacezero/spacezero%200.86/spacezero-0.86.00.tar.gz"
+DOWNLOAD="http://distcache.FreeBSD.org/ports-distfiles/spacezero-0.86.00.tar.gz"
MD5SUM="4fe4e3c95ba08198751c382fdaa106e2"
DOWNLOAD_x86_64=""
MD5SUM_x86_64=""
diff --git a/games/Tempus-Irae/Tempus-Irae.SlackBuild b/games/Tempus-Irae/Tempus-Irae.SlackBuild
index 81fb8f0f1c..c1a5bb0f48 100644
--- a/games/Tempus-Irae/Tempus-Irae.SlackBuild
+++ b/games/Tempus-Irae/Tempus-Irae.SlackBuild
@@ -1,4 +1,4 @@
-#!/bin/sh
+#!/bin/bash
# Slackware build script for Tempus Irae
@@ -22,14 +22,24 @@
# OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF THIS SOFTWARE, EVEN IF
# ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
+cd $(dirname $0) ; CWD=$(pwd)
+
PRGNAM=Tempus-Irae
VERSION=${VERSION:-1.1}
BUILD=${BUILD:-1}
TAG=${TAG:-_SBo}
+PKGTYPE=${PKGTYPE:-tgz}
ARCH=noarch
-CWD=$(pwd)
+# If the variable PRINT_PACKAGE_NAME is set, then this script will report what
+# the name of the created package would be, and then exit. This information
+# could be useful to other scripts.
+if [ ! -z "${PRINT_PACKAGE_NAME}" ]; then
+ echo "$PRGNAM-$VERSION-$ARCH-$BUILD$TAG.$PKGTYPE"
+ exit 0
+fi
+
TMP=${TMP:-/tmp/SBo}
PKG=$TMP/package-$PRGNAM
OUTPUT=${OUTPUT:-/tmp}
@@ -104,4 +114,4 @@ cat $CWD/slack-desc > $PKG/install/slack-desc
cat $CWD/doinst.sh > $PKG/install/doinst.sh
cd $PKG
-/sbin/makepkg -l y -c n $OUTPUT/$PRGNAM-$VERSION-$ARCH-$BUILD$TAG.${PKGTYPE:-tgz}
+/sbin/makepkg -l y -c n $OUTPUT/$PRGNAM-$VERSION-$ARCH-$BUILD$TAG.$PKGTYPE
diff --git a/games/UrbanTerror/UrbanTerror.SlackBuild b/games/UrbanTerror/UrbanTerror.SlackBuild
index d1904b6dd1..8a208e6928 100644
--- a/games/UrbanTerror/UrbanTerror.SlackBuild
+++ b/games/UrbanTerror/UrbanTerror.SlackBuild
@@ -1,4 +1,4 @@
-#!/bin/sh
+#!/bin/bash
# Slackware build script for UrbanTerror
@@ -23,31 +23,42 @@
# OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF THIS SOFTWARE, EVEN IF
# ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
#
+cd $(dirname $0) ; CWD=$(pwd)
+
PRGNAM=UrbanTerror
VERSION=${VERSION:-4.3.4}
BUILD=${BUILD:-1}
TAG=${TAG:-_SBo}
+PKGTYPE=${PKGTYPE:-tgz}
+# ARCH/EXEC simplified and moved together
+# DW 2023-05-16 02:03:15 +0100
if [ -z "$ARCH" ]; then
- case "$( uname -m )" in
- i?86) ARCH=i586 ;;
- arm*) ARCH=arm ;;
- *) ARCH=$( uname -m ) ;;
- esac
+ ARCH=$( uname -m )
+fi
+
+if [ "$ARCH" = "x86_64" ]; then
+ EXEC="x86_64"
+elif [[ $ARCH =~ i?86 ]]; then
+ EXEC="i386"
+ ARCH="i586"
+else
+ echo "$ARCH architecture is unsupported" >/dev/stderr
+ exit 1
+fi
+
+# If the variable PRINT_PACKAGE_NAME is set, then this script will report what
+# the name of the created package would be, and then exit. This information
+# could be useful to other scripts.
+if [ ! -z "${PRINT_PACKAGE_NAME}" ]; then
+ echo "$PRGNAM-$VERSION-$ARCH-$BUILD$TAG.$PKGTYPE"
+ exit 0
fi
-CWD=$(pwd)
TMP=${TMP:-/tmp/SBo}
PKG=$TMP/package-$PRGNAM
OUTPUT=${OUTPUT:-/tmp}
-LIBDIRSUFFIX=
-if [ "$ARCH" = "i386" ]; then
- EXEC="i386"
-elif [ "$ARCH" = "x86_64" ]; then
- EXEC="x86_64"
-fi
-
CLIENT_EXEC=${CLIENT_EXEC:-Quake3-UrT.$EXEC}
SERVER_EXEC=${SERVER_EXEC:-Quake3-UrT-Ded.$EXEC}
@@ -70,8 +81,10 @@ find -L . \
# Create symlinks in /usr/games
mkdir -p $PKG/usr/games
cd $PKG/usr/games
- ln -sf /usr/share/games/UrbanTerror43/$CLIENT_EXEC urbanterror
- ln -sf /usr/share/games/UrbanTerror43/$SERVER_EXEC urbanterror_server
+# changed to relative paths
+# DW 2023-05-16 02:04:30 +0100
+ ln -sf ../share/games/UrbanTerror43/$CLIENT_EXEC urbanterror
+ ln -sf ../share/games/UrbanTerror43/$SERVER_EXEC urbanterror_server
cd -
# Add a menu entry and icon
@@ -80,16 +93,18 @@ cat $CWD/$PRGNAM.desktop > $PKG/usr/share/applications/$PRGNAM.desktop
cat $CWD/q3urt.png > $PKG/usr/share/pixmaps/q3urt.png
# Remove unused files from the package
- cd $PKG/usr/share/games/UrbanTerror43
- rm -f *.exe
- rm -rf Quake3-UrT.app
-[ "$EXEC" != "i386" ] && rm -f *.i386
-[ "$EXEC" != "x86_64" ] && rm -f *.x86_64
- cd q3ut4
- rm *.cfg
- rm *.txt
- rm *.doc
- chmod -x *.pk3
+cd $PKG/usr/share/games/UrbanTerror43
+rm -f *.exe
+rm -rf Quake3-UrT.app
+# a bit easier to parse than a negative test?
+# DW 2023-05-16 02:03:15 +0100
+[ "$EXEC" = "x86_64" ] && rm -vf *.i386
+[ "$EXEC" = "i386" ] && rm -vf *.x86_64
+cd q3ut4
+rm *.cfg
+rm *.txt
+rm *.doc
+chmod -x *.pk3
mkdir -p $PKG/usr/doc/$PRGNAM-$VERSION
install -m 644 $CWD/docs/* $PKG/usr/doc/$PRGNAM-$VERSION/
@@ -100,4 +115,4 @@ cat $CWD/slack-desc > $PKG/install/slack-desc
cat $CWD/doinst.sh > $PKG/install/doinst.sh
cd $PKG
-/sbin/makepkg -l y -c n $OUTPUT/$PRGNAM-$VERSION-$ARCH-$BUILD$TAG.${PKGTYPE:-tgz}
+/sbin/makepkg -l y -c n $OUTPUT/$PRGNAM-$VERSION-$ARCH-$BUILD$TAG.$PKGTYPE
diff --git a/games/VASSAL/VASSAL.SlackBuild b/games/VASSAL/VASSAL.SlackBuild
index b4d4de7ee0..dc1dc7380d 100644
--- a/games/VASSAL/VASSAL.SlackBuild
+++ b/games/VASSAL/VASSAL.SlackBuild
@@ -1,8 +1,8 @@
-#!/bin/sh
+#!/bin/bash
# Slackware build script for VASSAL
-# Copyright 2019-2020 Benjamin Trigona-Harant <slackbuilds@jaxartes.net>
+# Copyright 2019-2021 Benjamin Trigona-Harant <slackbuilds@jaxartes.net>
# All rights reserved.
#
# Redistribution and use of this script, with or without modification, is
@@ -22,10 +22,13 @@
# OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF THIS SOFTWARE, EVEN IF
# ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
+cd $(dirname $0) ; CWD=$(pwd)
+
PRGNAM=VASSAL
-VERSION=${VERSION:-3.4.10}
+VERSION=${VERSION:-3.6.5}
BUILD=${BUILD:-1}
TAG=${TAG:-_SBo}
+PKGTYPE=${PKGTYPE:-tgz}
if [ -z "$ARCH" ]; then
case "$( uname -m )" in
@@ -35,7 +38,14 @@ if [ -z "$ARCH" ]; then
esac
fi
-CWD=$(pwd)
+# If the variable PRINT_PACKAGE_NAME is set, then this script will report what
+# the name of the created package would be, and then exit. This information
+# could be useful to other scripts.
+if [ ! -z "${PRINT_PACKAGE_NAME}" ]; then
+ echo "$PRGNAM-$VERSION-$ARCH-$BUILD$TAG.$PKGTYPE"
+ exit 0
+fi
+
TMP=${TMP:-/tmp/SBo}
PKG=$TMP/package-$PRGNAM
OUTPUT=${OUTPUT:-/tmp}
@@ -90,7 +100,6 @@ cp -a \
CHANGES LICENSE README.md doc \
$PKG/usr/doc/$PRGNAM-$VERSION
cat $CWD/$PRGNAM.SlackBuild > $PKG/usr/doc/$PRGNAM-$VERSION/$PRGNAM.SlackBuild
-rm $PKG/usr/doc/$PRGNAM-$VERSION/doc/userguide/userguide-old.*
ln -s /usr/doc/$PRGNAM-$VERSION/doc $PKG/usr/share/games/$PRGNAM/doc
mkdir -p $PKG/install
@@ -98,4 +107,4 @@ cat $CWD/slack-desc > $PKG/install/slack-desc
cat $CWD/doinst.sh > $PKG/install/doinst.sh
cd $PKG
-/sbin/makepkg -l y -c n $OUTPUT/$PRGNAM-$VERSION-$ARCH-$BUILD$TAG.${PKGTYPE:-tgz}
+/sbin/makepkg -l y -c n $OUTPUT/$PRGNAM-$VERSION-$ARCH-$BUILD$TAG.$PKGTYPE
diff --git a/games/VASSAL/VASSAL.info b/games/VASSAL/VASSAL.info
index f28829495e..b309fe29f5 100644
--- a/games/VASSAL/VASSAL.info
+++ b/games/VASSAL/VASSAL.info
@@ -1,10 +1,10 @@
PRGNAM="VASSAL"
-VERSION="3.4.10"
+VERSION="3.6.5"
HOMEPAGE="http://www.vassalengine.org/"
-DOWNLOAD="https://github.com/vassalengine/vassal/releases/download/3.4.10/VASSAL-3.4.10-linux.tar.bz2"
-MD5SUM="d0782cbcf8e3622cc50c7c77fd82057b"
+DOWNLOAD="https://github.com/vassalengine/vassal/releases/download/3.6.5/VASSAL-3.6.5-linux.tar.bz2"
+MD5SUM="39235edbc47ca85bfd5f2754ab72a62c"
DOWNLOAD_x86_64=""
MD5SUM_x86_64=""
-REQUIRES="jdk14"
+REQUIRES="zulu-openjdk17"
MAINTAINER="Benjamin Trigona-Harany"
EMAIL="slackbuilds@jaxartes.net"
diff --git a/games/ZEsarUX/Makefile.patch b/games/ZEsarUX/Makefile.patch
new file mode 100644
index 0000000000..fc1e2d148c
--- /dev/null
+++ b/games/ZEsarUX/Makefile.patch
@@ -0,0 +1,20 @@
+--- Makefile 2022-06-02 21:37:14.244285088 +0100
++++ Makefile.new 2022-06-02 22:21:33.238469204 +0100
+@@ -477,7 +477,7 @@
+ echo "Generated file is : ZEsarUX_src-$(EMULATOR_VERSION).tar.gz"
+
+ bintargz: all
+- ./generate_install_sh.sh
++ ./generate_install_sh.sh $(DESTDIR)
+ rm -fR bintargztemp
+ mkdir -p bintargztemp/ZEsarUX-$(EMULATOR_VERSION)
+ cp -a $(COMMONFILES) $(ONLYUNIXBINARIES) bintargztemp/ZEsarUX-$(EMULATOR_VERSION)/
+@@ -557,7 +557,7 @@
+
+
+ install: all
+- ./generate_install_sh.sh
++ ./generate_install_sh.sh $(DESTDIR)
+ ./install.sh
+
+ #utilities: $(UTILITIES)
diff --git a/games/ZEsarUX/README b/games/ZEsarUX/README
index b3129b9629..e7e79030ce 100644
--- a/games/ZEsarUX/README
+++ b/games/ZEsarUX/README
@@ -18,4 +18,4 @@ ZEsarUX source code and binaries are distributed under GNU GPL license.
ZEsarUX also includes third-party roms, media, programs and
games NOT covered by this license
-This package installs to /opt/zesarux
+This package installs to /opt/ZEsarUX
diff --git a/games/ZEsarUX/ZEsarUX.SlackBuild b/games/ZEsarUX/ZEsarUX.SlackBuild
index 6daa043863..31f5b1cba6 100644
--- a/games/ZEsarUX/ZEsarUX.SlackBuild
+++ b/games/ZEsarUX/ZEsarUX.SlackBuild
@@ -1,8 +1,8 @@
-#!/bin/sh
+#!/bin/bash
# Slackware build script for ZEsarUX
-# Copyright 2018 Antonio Leal, Porto Salvo, Oeiras, Portugal
+# Copyright 2023 Antonio Leal, Porto Salvo, Oeiras, Portugal
# All rights reserved.
#
# Redistribution and use of this script, with or without modification, is
@@ -22,10 +22,13 @@
# OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF THIS SOFTWARE, EVEN IF
# ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
+cd $(dirname $0) ; CWD=$(pwd)
+
PRGNAM=ZEsarUX
-VERSION=${VERSION:-6.0}
+VERSION=${VERSION:-10.10}
BUILD=${BUILD:-1}
TAG=${TAG:-_SBo}
+PKGTYPE=${PKGTYPE:-tgz}
if [ -z "$ARCH" ]; then
case "$( uname -m )" in
@@ -35,7 +38,11 @@ if [ -z "$ARCH" ]; then
esac
fi
-CWD=$(pwd)
+if [ ! -z "${PRINT_PACKAGE_NAME}" ]; then
+ echo "$PRGNAM-$VERSION-$ARCH-$BUILD$TAG.$PKGTYPE"
+ exit 0
+fi
+
TMP=${TMP:-/tmp/SBo}
PKG=$TMP/package-$PRGNAM
OUTPUT=${OUTPUT:-/tmp}
@@ -55,31 +62,59 @@ else
fi
set -e
-
rm -rf $PKG
mkdir -p $TMP $PKG $OUTPUT
cd $TMP
rm -rf $PRGNAM-$VERSION
-tar xvfz $CWD/$PRGNAM\_src-$VERSION.tar.gz
+
+# {
+# Temporary fix until normal versioning scheme resumes
+#tar xvfz $CWD/$PRGNAM\_src-$VERSION.tar.gz
+tar xvfz $CWD/ZEsarUX_src-X.tar.gz
+mv ZEsarUX-X ZEsarUX-10.10
+# }
+
cd $PRGNAM-$VERSION
chown -R root:root .
find -L . \
\( -perm 777 -o -perm 775 -o -perm 750 -o -perm 711 -o -perm 555 \
- -o -perm 511 \) -exec chmod 755 {} \; -o \
+ -o -perm 511 \) -exec chmod 755 {} \+ -o \
\( -perm 666 -o -perm 664 -o -perm 640 -o -perm 600 -o -perm 444 \
- -o -perm 440 -o -perm 400 \) -exec chmod 644 {} \;
+ -o -perm 440 -o -perm 400 \) -exec chmod 644 {} \+
+
+SLKCFLAGS+=" -fcommon"
CFLAGS="$SLKCFLAGS" \
CXXFLAGS="$SLKCFLAGS" \
+./configure --prefix=/opt/ZEsarUX
+
+## Add support for DESTDIR ##
+patch Makefile $CWD/Makefile.patch
+patch generate_install_sh.sh $CWD/generate_install_sh.sh.patch
-sed "5iINSTALLPREFIX=$PKG/opt/ZEsarUX" generate_install_sh.sh > aux_generate_install_sh.sh
-mv aux_generate_install_sh.sh generate_install_sh.sh
-chmod +x generate_install_sh.sh
-./configure \
- --prefix /opt/ZEsarUX
make
make install DESTDIR=$PKG
+rm -f $PKG/{,usr/}lib${LIBDIRSUFFIX}/*.la
+
+find $PKG -print0 | xargs -0 file | grep -e "executable" -e "shared object" | grep ELF \
+ | cut -f 1 -d : | xargs strip --strip-unneeded 2> /dev/null || true
+
+find $PKG -name perllocal.pod -o -name ".packlist" -o -name "*.bs" | xargs rm -f || true
+
+mkdir -p $PKG/opt/ZEsarUX
+mv $PKG/bin $PKG/opt/ZEsarUX/bin
+mv $PKG/share $PKG/opt/ZEsarUX/share
+mkdir -p $PKG/usr/share/pixmaps
+cp $CWD/ZEsarUX.png $PKG/usr/share/pixmaps
+mkdir -p $PKG/usr/share/applications
+cp $CWD/zesarux.desktop $PKG/usr/share/applications
+
+## Symlinks ##
+mkdir -p $PKG/usr/bin
+( cd $PKG/usr/bin ; rm -rf zesarux )
+( cd $PKG/usr/bin ; ln -sf /opt/ZEsarUX/bin/zesarux zesarux )
+
mkdir -p $PKG/usr/doc/$PRGNAM-$VERSION
cat $CWD/$PRGNAM.SlackBuild > $PKG/usr/doc/$PRGNAM-$VERSION/$PRGNAM.SlackBuild
@@ -88,4 +123,4 @@ cat $CWD/slack-desc > $PKG/install/slack-desc
cat $CWD/doinst.sh > $PKG/install/doinst.sh
cd $PKG
-/sbin/makepkg -l y -c n $OUTPUT/$PRGNAM-$VERSION-$ARCH-$BUILD$TAG.${PKGTYPE:-tgz}
+/sbin/makepkg -l y -c n $OUTPUT/$PRGNAM-$VERSION-$ARCH-$BUILD$TAG.$PKGTYPE
diff --git a/games/ZEsarUX/ZEsarUX.info b/games/ZEsarUX/ZEsarUX.info
index d659e27d4c..064e6590a4 100644
--- a/games/ZEsarUX/ZEsarUX.info
+++ b/games/ZEsarUX/ZEsarUX.info
@@ -1,8 +1,8 @@
PRGNAM="ZEsarUX"
-VERSION="6.0"
-HOMEPAGE="https://sourceforge.net/projects/zesarux"
-DOWNLOAD="http://ponce.cc/slackware/sources/repo/ZEsarUX_src-6.0.tar.gz"
-MD5SUM="a92d0a7cc38166e84a1f32a48c4f8c8f"
+VERSION="10.10"
+HOMEPAGE="https://github.com/chernandezba/zesarux"
+DOWNLOAD="https://github.com/chernandezba/zesarux/releases/download/ZEsarUX-X/ZEsarUX_src-X.tar.gz"
+MD5SUM="d6a8a847b6a3a19258898bd8a57d6312"
DOWNLOAD_x86_64=""
MD5SUM_x86_64=""
REQUIRES=""
diff --git a/games/ZEsarUX/ZEsarUX.png b/games/ZEsarUX/ZEsarUX.png
new file mode 100644
index 0000000000..79ea8e1efb
--- /dev/null
+++ b/games/ZEsarUX/ZEsarUX.png
Binary files differ
diff --git a/games/ZEsarUX/generate_install_sh.sh.patch b/games/ZEsarUX/generate_install_sh.sh.patch
new file mode 100644
index 0000000000..3ea9c316fa
--- /dev/null
+++ b/games/ZEsarUX/generate_install_sh.sh.patch
@@ -0,0 +1,11 @@
+--- generate_install_sh.sh 2022-05-06 17:03:44.000000000 +0100
++++ generate_install_sh.sh.new 2022-06-02 21:45:10.648318076 +0100
+@@ -1,7 +1,7 @@
+ #!/usr/bin/env bash
+
+
+-INSTALLPREFIX=`cat compileoptions.h |grep INSTALL_PREFIX|cut -d '"' -f2`
++INSTALLPREFIX=$1
+ EDITION_NAME_GAME=`cat cpu.h|grep EDITION_NAME_GAME|cut -d '"' -f2`
+
+
diff --git a/games/ZEsarUX/slack-desc b/games/ZEsarUX/slack-desc
index c5be5d6098..9de6c24393 100644
--- a/games/ZEsarUX/slack-desc
+++ b/games/ZEsarUX/slack-desc
@@ -6,7 +6,7 @@
# customary to leave one space after the ':' except on otherwise blank lines.
|-----handy-ruler------------------------------------------------------|
-ZEsarUX: ZEsarUX (Machines Emulator)
+ZEsarUX: ZEsarUX (retro machines emulator)
ZEsarUX:
ZEsarUX: ZEsarUX is a ZX Machines Emulator for Unix, including all the
ZEsarUX: Sinclair computers: MK14, ZX80, ZX81, ZX Spectrum, QL, Z88 and
diff --git a/games/ZEsarUX/zesarux.desktop b/games/ZEsarUX/zesarux.desktop
new file mode 100644
index 0000000000..9cab60eab9
--- /dev/null
+++ b/games/ZEsarUX/zesarux.desktop
@@ -0,0 +1,8 @@
+[Desktop Entry]
+Name=ZEsarUX
+Comment=ZX Machines Emulator
+Exec=/opt/ZEsarUX/bin/zesarux
+Icon=/usr/share/pixmaps/ZEsarUX.png
+Terminal=false
+Type=Application
+
diff --git a/games/abe/abe.SlackBuild b/games/abe/abe.SlackBuild
index ae7e3a4f22..1b451b0109 100644
--- a/games/abe/abe.SlackBuild
+++ b/games/abe/abe.SlackBuild
@@ -1,11 +1,14 @@
-#!/bin/sh
+#!/bin/bash
# Slackware build script for abe
# Written by Tim Dickson tim@tree-of-life.co.uk
+cd $(dirname $0) ; CWD=$(pwd)
+
PRGNAM=abe
VERSION=${VERSION:-1.1}
BUILD=${BUILD:-2}
TAG=${TAG:-_SBo}
+PKGTYPE=${PKGTYPE:-tgz}
if [ -z "$ARCH" ]; then
case "$( uname -m )" in
@@ -15,7 +18,14 @@ if [ -z "$ARCH" ]; then
esac
fi
-CWD=$(pwd)
+# If the variable PRINT_PACKAGE_NAME is set, then this script will report what
+# the name of the created package would be, and then exit. This information
+# could be useful to other scripts.
+if [ ! -z "${PRINT_PACKAGE_NAME}" ]; then
+ echo "$PRGNAM-$VERSION-$ARCH-$BUILD$TAG.$PKGTYPE"
+ exit 0
+fi
+
TMP=${TMP:-/tmp/SBo}
PKG=$TMP/package-$PRGNAM
OUTPUT=${OUTPUT:-/tmp}
@@ -123,4 +133,4 @@ cat $CWD/slack-desc > $PKG/install/slack-desc
cat $CWD/doinst.sh > $PKG/install/doinst.sh
cd $PKG
-/sbin/makepkg -l y -c n $OUTPUT/$PRGNAM-$VERSION-$ARCH-$BUILD$TAG.${PKGTYPE:-tgz}
+/sbin/makepkg -l y -c n $OUTPUT/$PRGNAM-$VERSION-$ARCH-$BUILD$TAG.$PKGTYPE
diff --git a/games/abuse/README b/games/abuse/README
index bac45f340c..25ecbbe2ec 100644
--- a/games/abuse/README
+++ b/games/abuse/README
@@ -1,13 +1,7 @@
+abuse (dark 2D side-scrolling platform game)
+
Abuse is a dark 2D side-scrolling platform game developed by Crack dot
Com in 1995. It features beautiful lighting, realistic animation and
nasty alien-like creatures to destroy.
-It is now maintained by Sam Hocevar in an attempt to prevent it from
-vanishing from the Internet.
-
-If sound doesn't work for you or it is distorted, apply the supplied
-patch with:
-
-SOUNDFIX=YES ./abuse.SlackBuild
-Optionally, for in-game music support you need to install TiMidity++
-(and a set of sound patches for it).
+Optional: For in-game music, install either eawpats or freepats.
diff --git a/games/abuse/abuse-0.8-sound_fix.patch b/games/abuse/abuse-0.8-sound_fix.patch
deleted file mode 100644
index 7fffe3e0a7..0000000000
--- a/games/abuse/abuse-0.8-sound_fix.patch
+++ /dev/null
@@ -1,12 +0,0 @@
-diff -aurp ./src/sdlport/sound.cpp ../abuse-0.8//src/sdlport/sound.cpp
---- ./src/sdlport/sound.cpp 2011-05-09 03:58:30.000000000 -0400
-+++ ../abuse-0.8//src/sdlport/sound.cpp 2011-05-21 20:46:44.487000027 -0400
-@@ -65,7 +65,7 @@ int sound_init( int argc, char **argv )
- }
- free( sfxdir );
-
-- if (Mix_OpenAudio(44100, AUDIO_S16SYS, 2, 128) < 0)
-+ if (Mix_OpenAudio(44100, AUDIO_S16SYS, 2, 1024) < 0)
- {
- printf( "Sound: Unable to open audio - %s\nSound: Disabled (error)\n", SDL_GetError() );
- return 0;
diff --git a/games/abuse/abuse.SlackBuild b/games/abuse/abuse.SlackBuild
index e104a13ff9..c6c40eb882 100644
--- a/games/abuse/abuse.SlackBuild
+++ b/games/abuse/abuse.SlackBuild
@@ -1,8 +1,8 @@
-#!/bin/sh
-#
-# Slackware build script for Abuse
-#
-# Written by Rex Hauser <thundermachinegun[AT]gmail.com>
+#!/bin/bash
+
+# Slackware build script for abuse
+
+# Written by Rex Hauser, modified and now maintained by B. Watson.
#
# Redistribution and use of this script, with or without modification, is
# permitted provided that the following conditions are met:
@@ -21,11 +21,28 @@
# OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF THIS SOFTWARE, EVEN IF
# ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
+# 20230807 bkw: BUILD=4
+# - take over maintenance.
+# - fix segfault on startup.
+# - binary in /usr/games.
+# - replace icon with the one from Xenoveritas (and prescale it).
+# - update .desktop file.
+
+# Note: there is a maintained fork: https://github.com/Xenoveritas/abuse.
+# However, I can't get their 0.9.1 release to work correctly: it
+# compiles and starts up, but does not respond to either mouse or
+# keyboard no matter what I try. So I'm sticking with the old 0.8 from
+# Sam Hocevar, with a patch backported from Xenoveritas to fix the
+# segfault on startup (which seems to have been introduced by the new
+# g++ in Slackware 15.0).
+
+cd $(dirname $0) ; CWD=$(pwd)
PRGNAM=abuse
VERSION=${VERSION:-0.8}
-BUILD=${BUILD:-3}
+BUILD=${BUILD:-4}
TAG=${TAG:-_SBo}
+PKGTYPE=${PKGTYPE:-tgz}
if [ -z "$ARCH" ]; then
case "$( uname -m )" in
@@ -35,16 +52,15 @@ if [ -z "$ARCH" ]; then
esac
fi
-CWD=$(pwd)
+if [ ! -z "${PRINT_PACKAGE_NAME}" ]; then
+ echo "$PRGNAM-$VERSION-$ARCH-$BUILD$TAG.$PKGTYPE"
+ exit 0
+fi
+
TMP=${TMP:-/tmp/SBo}
PKG=$TMP/package-$PRGNAM
OUTPUT=${OUTPUT:-/tmp}
-DOCS="AUTHORS COPYING COPYING.GPL COPYING.WTFPL NEWS ChangeLog README TODO"
-
-# Set this to YES if sound doesn't work
-SOUNDFIX=${SOUNDFIX:-NO}
-
if [ "$ARCH" = "i586" ]; then
SLKCFLAGS="-O2 -march=i586 -mtune=i686"
LIBDIRSUFFIX=""
@@ -65,46 +81,53 @@ rm -rf $PKG
mkdir -p $TMP $PKG $OUTPUT
cd $TMP
rm -rf $PRGNAM-$VERSION
-tar xvf $CWD/$PRGNAM-$VERSION.tar.?z*
+tar xvf $CWD/$PRGNAM-$VERSION.tar.gz
cd $PRGNAM-$VERSION
chown -R root:root .
-find -L . \
- \( -perm 777 -o -perm 775 -o -perm 750 -o -perm 711 -o -perm 555 -o -perm 511 \) \
- -exec chmod 755 {} \; -o \
- \( -perm 666 -o -perm 664 -o -perm 600 -o -perm 444 -o -perm 440 -o -perm 400 \) \
- -exec chmod 644 {} \;
-
-if [ "$SOUNDFIX" = "YES" ]; then
- patch -p0 < $CWD/$PRGNAM-$VERSION-sound_fix.patch
-fi
+find -L . -perm /111 -a \! -perm 755 -a -exec chmod 755 {} + -o \
+ \! -perm /111 -a \! -perm 644 -a -exec chmod 644 {} +
+
+# 20230807 bkw: this fix backported from https://github.com/Xenoveritas/abuse,
+# commit 77a34f6.
+patch -p1 < $CWD/fix-startup-segfault.diff
+
+# 20230807 bkw: this used to be an optional patch. always apply it,
+# since it doesn't cause any problems (and since the Xenoveritas fork
+# does the same).
+sed -i '/Mix_OpenAudio/s,128,1024,' src/sdlport/sound.cpp
CXXFLAGS="$SLKCFLAGS" \
./configure \
--prefix=/usr \
+ --bindir=/usr/games \
--libdir=/usr/lib${LIBDIRSUFFIX} \
--mandir=/usr/man \
--build=$ARCH-slackware-linux
make
-make DESTDIR=$PKG install
-
-find $PKG -print0 | xargs -0 file | grep -e "executable" -e "shared object" | grep ELF \
- | cut -f 1 -d : | xargs strip --strip-unneeded 2> /dev/null || true
-
-find $PKG/usr/man -type f -exec gzip -9 {} \;
-for i in $( find $PKG/usr/man -type l ) ; do ln -s $( readlink $i ).gz $i.gz ; rm $i ; done
+make install-strip DESTDIR=$PKG
+gzip -9 $PKG/usr/man/man*/*
mkdir -p $PKG/usr/share/{applications,pixmaps}
cat $CWD/abuse.desktop > $PKG/usr/share/applications/abuse.desktop
-cat $PKG/usr/share/games/abuse/abuse.png > $PKG/usr/share/pixmaps/abuse.png
-mkdir -p $PKG/usr/doc/$PRGNAM-$VERSION
-cp -a $DOCS $PKG/usr/doc/$PRGNAM-$VERSION
-cat $CWD/$PRGNAM.SlackBuild > $PKG/usr/doc/$PRGNAM-$VERSION/$PRGNAM.SlackBuild
+for i in $CWD/icons/*.png; do
+ px="$( basename $i .png )"
+ sz="${px}x${px}"
+ dir=$PKG/usr/share/icons/hicolor/$sz/apps
+ mkdir -p $dir
+ cat $i > $dir/$PRGNAM.png
+done
+ln -s ../icons/hicolor/48x48/apps/$PRGNAM.png $PKG/usr/share/pixmaps/$PRGNAM.png
+
+PKGDOC=$PKG/usr/doc/$PRGNAM-$VERSION
+mkdir -p $PKGDOC
+cp -a AUTHORS COPYING* NEWS ChangeLog README TODO $PKGDOC
+cat $CWD/$PRGNAM.SlackBuild > $PKGDOC/$PRGNAM.SlackBuild
mkdir -p $PKG/install
cat $CWD/slack-desc > $PKG/install/slack-desc
cat $CWD/doinst.sh > $PKG/install/doinst.sh
cd $PKG
-/sbin/makepkg -l y -c n $OUTPUT/$PRGNAM-$VERSION-$ARCH-$BUILD$TAG.${PKGTYPE:-tgz}
+/sbin/makepkg -l y -c n $OUTPUT/$PRGNAM-$VERSION-$ARCH-$BUILD$TAG.$PKGTYPE
diff --git a/games/abuse/abuse.desktop b/games/abuse/abuse.desktop
index 75a6d5c6dc..e59081bf90 100644
--- a/games/abuse/abuse.desktop
+++ b/games/abuse/abuse.desktop
@@ -1,8 +1,8 @@
[Desktop Entry]
Name=Abuse
-GenericName=Dark 2D side-scrolling platform game
-Exec=abuse
+Comment=Dark 2D side-scrolling platform game
+Exec=/usr/games/abuse
Icon=abuse
Terminal=false
Type=Application
-Categories=Game;
+Categories=Game;ArcadeGame;ActionGame;
diff --git a/games/abuse/fix-startup-segfault.diff b/games/abuse/fix-startup-segfault.diff
new file mode 100644
index 0000000000..47a675acfb
--- /dev/null
+++ b/games/abuse/fix-startup-segfault.diff
@@ -0,0 +1,63 @@
+diff -Naur abuse-0.8/src/lisp/lisp.cpp abuse-0.8.patched/src/lisp/lisp.cpp
+--- abuse-0.8/src/lisp/lisp.cpp 2011-05-02 07:55:06.000000000 -0400
++++ abuse-0.8.patched/src/lisp/lisp.cpp 2023-08-07 20:52:41.197394085 -0400
+@@ -867,7 +867,7 @@
+ size_t ret = 0;
+
+ #ifdef TYPE_CHECKING
+- if (this && item_type(this) != (ltype)L_CONS_CELL)
++ if (item_type(this) != (ltype)L_CONS_CELL)
+ {
+ Print();
+ lbreak(" is not a sequence\n");
+@@ -1275,7 +1275,7 @@
+ switch (item_type(this))
+ {
+ case L_CONS_CELL:
+- if (!this)
++ if (ptr_is_null(this))
+ {
+ lprint_string("nil");
+ }
+@@ -3080,7 +3080,7 @@
+
+ LObject *ret = NULL;
+
+- if (this)
++ if (!ptr_is_null(this))
+ {
+ switch (item_type(this))
+ {
+diff -Naur abuse-0.8/src/lisp/lisp.h abuse-0.8.patched/src/lisp/lisp.h
+--- abuse-0.8/src/lisp/lisp.h 2011-05-02 07:55:06.000000000 -0400
++++ abuse-0.8.patched/src/lisp/lisp.h 2023-08-07 20:53:56.765386973 -0400
+@@ -201,7 +201,28 @@
+
+ static inline LObject *&CAR(void *x) { return ((LList *)x)->car; }
+ static inline LObject *&CDR(void *x) { return ((LList *)x)->cdr; }
+-static inline ltype item_type(void *x) { if (x) return *(ltype *)x; return L_CONS_CELL; }
++
++#ifdef __GNUC__
++/*
++ * C++ spec says "this" is always NON-NULL, recent versions of gcc will warn
++ * about this and optimizes the "if (this)" we use in some places away:
++ * "warning: nonnull argument ‘this’ compared to NULL [-Wnonnull-compare]"
++ * We rely on "if (this)" checks in several places and refactoring this is
++ * non trivial. So we use this little helper marked with
++ * __attribute__((optimize("O0"))) to workaround this.
++ */
++static inline bool __attribute__((optimize("O0"))) ptr_is_null(void *ptr)
++{
++ return ptr == NULL;
++}
++#else
++static inline bool ptr_is_null(void *ptr)
++{
++ return ptr == NULL;
++}
++#endif
++
++static inline ltype item_type(void *x) { if (!ptr_is_null(x)) return *(ltype *)x; return L_CONS_CELL; }
+
+ void perm_space();
+ void tmp_space();
diff --git a/games/abuse/icons/128.png b/games/abuse/icons/128.png
new file mode 100644
index 0000000000..88bfc88cec
--- /dev/null
+++ b/games/abuse/icons/128.png
Binary files differ
diff --git a/games/abuse/icons/16.png b/games/abuse/icons/16.png
new file mode 100644
index 0000000000..33ba3ce2b0
--- /dev/null
+++ b/games/abuse/icons/16.png
Binary files differ
diff --git a/games/abuse/icons/160.png b/games/abuse/icons/160.png
new file mode 100644
index 0000000000..2acde9dab9
--- /dev/null
+++ b/games/abuse/icons/160.png
Binary files differ
diff --git a/games/abuse/icons/22.png b/games/abuse/icons/22.png
new file mode 100644
index 0000000000..8bbd1de1be
--- /dev/null
+++ b/games/abuse/icons/22.png
Binary files differ
diff --git a/games/abuse/icons/32.png b/games/abuse/icons/32.png
new file mode 100644
index 0000000000..0eea2d5ffd
--- /dev/null
+++ b/games/abuse/icons/32.png
Binary files differ
diff --git a/games/abuse/icons/48.png b/games/abuse/icons/48.png
new file mode 100644
index 0000000000..51f5177d0f
--- /dev/null
+++ b/games/abuse/icons/48.png
Binary files differ
diff --git a/games/abuse/icons/64.png b/games/abuse/icons/64.png
new file mode 100644
index 0000000000..00f829ab97
--- /dev/null
+++ b/games/abuse/icons/64.png
Binary files differ
diff --git a/games/abuse/mkicons.sh b/games/abuse/mkicons.sh
new file mode 100644
index 0000000000..513cace80b
--- /dev/null
+++ b/games/abuse/mkicons.sh
@@ -0,0 +1,20 @@
+#!/bin/sh
+
+src="$1"
+shift
+if [ -z "$src" -o ! -e "$src" -o "$*" ]; then
+ cat 1>&2 <<EOF
+Usage: $0 /path/to/icon.png
+EOF
+fi
+
+set -e
+
+mkdir -p icons/
+cat "$src" > icons/160.png
+
+for i in 16 22 32 48 64 128; do
+ convert -resize ${i}x${i} "$src" icons/$i.png
+done
+
+exit 0
diff --git a/games/abuse/slack-desc b/games/abuse/slack-desc
index 4d6d086d10..bbf2e2c6d2 100644
--- a/games/abuse/slack-desc
+++ b/games/abuse/slack-desc
@@ -11,9 +11,9 @@ abuse:
abuse: Abuse is a dark 2D side-scrolling platform game developed by Crack dot
abuse: Com in 1995. It features beautiful lighting, realistic animation and
abuse: nasty alien-like creatures to destroy.
-abuse: It is now maintained by Sam Hocevar in an attempt to prevent it from
-abuse: vanishing from the Internet.
abuse:
-abuse: Home page: http://abuse.zoy.org/
+abuse:
+abuse:
+abuse:
abuse:
abuse:
diff --git a/games/ace/README b/games/ace/README
index 2c74643d0e..1531fd868d 100644
--- a/games/ace/README
+++ b/games/ace/README
@@ -1,8 +1,14 @@
-ace - a set of Unix/X solitaire games
-
-The Ace of Penguins is a set of Unix/X solitaire games
-based on the ones available for Windows(tm)
-but with a number of enhancements.
-The latest version includes clones of freecell, golf, mastermind,
-merlin, minesweeper, pegged, solitaire, taipei (with editor)
-and thornq.
+ace (a set of Unix/X solitaire games)
+
+The Ace of Penguins is a set of Unix/X solitaire games based on the
+ones available for Windows(tm) but with a number of enhancements.
+
+The latest version includes clones of freecell, golf, mastermind,
+merlin, minesweeper, pegged, solitaire, taipei (with editor) and
+thornq.
+
+The executables are installed with -ace suffix, e.g. solitaire-ace.
+This is to avoid conflicting with Slackware's bsd-games and xgames
+packages.
+
+While any of the games are running, press H for help, or Q to exit.
diff --git a/games/ace/ace.SlackBuild b/games/ace/ace.SlackBuild
index 50c2417573..cdf87fb06a 100644
--- a/games/ace/ace.SlackBuild
+++ b/games/ace/ace.SlackBuild
@@ -1,29 +1,56 @@
-#!/bin/sh
+#!/bin/bash
# Slackware build script for ace.
-# Written by G. Schoenmakers
+# Originally written by G. Schoenmakers.
+# Updated and now maintained by B. Watson (urchlay@slackware.uk).
+
+# Original had no license. Modified version licensed under the
+# WTFPL. See http://www.wtfpl.net/txt/copying/ for details.
+
+# 20231130 bkw: BUILD=2
+# - take over maintenance.
+# - add .desktop files.
+# - add icon.
+# - add doinst.sh for desktop/icon.
+# - include AUTHORS ChangeLog NEWS README in doc dir.
+# - include images used by the HTML docs.
+# - tweak README and slack-desc slightly.
+
+# 20220219 bkw: Modified by SlackBuilds.org:
+# - fix build on Slackware 15.0.
+# - binaries in /usr/games.
+# - remove .la file.
+# - install binaries with -ace suffix, to avoid conflicting with
+# canfield from Slackware's bsd-games and spider from xgames.
+
+cd $(dirname $0) ; CWD=$(pwd)
PRGNAM=ace
VERSION=${VERSION:-1.4}
-BUILD=${BUILD:-1}
+BUILD=${BUILD:-2}
TAG=${TAG:-_SBo}
+PKGTYPE=${PKGTYPE:-tgz}
if [ -z "$ARCH" ]; then
case "$( uname -m )" in
- i?86) ARCH=i486 ;;
+ i?86) ARCH=i586 ;;
arm*) ARCH=arm ;;
*) ARCH=$( uname -m ) ;;
esac
fi
-CWD=$(pwd)
+if [ ! -z "${PRINT_PACKAGE_NAME}" ]; then
+ echo "$PRGNAM-$VERSION-$ARCH-$BUILD$TAG.$PKGTYPE"
+ exit 0
+fi
+
TMP=${TMP:-/tmp/SBo}
PKG=$TMP/package-$PRGNAM
OUTPUT=${OUTPUT:-/tmp}
-if [ "$ARCH" = "i486" ]; then
- SLKCFLAGS="-O2 -march=i486 -mtune=i686"
+if [ "$ARCH" = "i586" ]; then
+ SLKCFLAGS="-O2 -march=i586 -mtune=i686"
LIBDIRSUFFIX=""
elif [ "$ARCH" = "i686" ]; then
SLKCFLAGS="-O2 -march=i686 -mtune=i686"
@@ -45,39 +72,74 @@ rm -rf $PRGNAM-$VERSION
tar xvf $CWD/$PRGNAM-$VERSION.tar.gz
cd $PRGNAM-$VERSION
chown -R root:root .
-find -L . \
- \( -perm 777 -o -perm 775 -o -perm 750 -o -perm 711 -o -perm 555 \
- -o -perm 511 \) -exec chmod 755 {} \; -o \
- \( -perm 666 -o -perm 664 -o -perm 640 -o -perm 600 -o -perm 444 \
- -o -perm 440 -o -perm 400 \) -exec chmod 644 {} \;
+find -L . -perm /111 -a \! -perm 755 -a -exec chmod 755 {} + -o \
+ \! -perm /111 -a \! -perm 644 -a -exec chmod 644 {} +
# Patch for libpng and other fixes thanks to Arch Linux
patch -p1 < $CWD/ace14_fixes.patch
+SLKCFLAGS+=" -fcommon"
+
CFLAGS="$SLKCFLAGS" \
CXXFLAGS="$SLKCFLAGS" \
./configure \
--prefix=/usr \
--libdir=/usr/lib${LIBDIRSUFFIX} \
+ --bindir=/usr/games \
--sysconfdir=/etc \
--localstatedir=/var \
--mandir=/usr/man \
--docdir=/usr/doc/$PRGNAM-$VERSION \
--enable-static=no \
+ --program-suffix=-ace \
--build=$ARCH-slackware-linux
make
-make install DESTDIR=$PKG
+make install-strip DESTDIR=$PKG
+
+# Icon made from a chunk of as.gif. All the games use the same icon,
+# which shouldn't matter much. Might confuse the user if he's playing
+# 2 of these games at once, but who does that?
+# Install as aceofpeng.png because ace.png is pretty generic, might
+# conflict with something.
+for px in 16 22 32 48 64; do
+ size=${px}x${px}
+ dir=$PKG/usr/share/icons/hicolor/$size/apps
+ mkdir -p $dir
+ convert -resize $size $CWD/$PRGNAM.png $dir/aceofpeng.png
+done
+
+dir=$PKG/usr/share/pixmaps
+mkdir -p $dir
+ln -s ../icons/hicolor/48x48/apps/aceofpeng.png $dir/aceofpeng.png
+
+# Generate the .desktop files.
+dir=$PKG/usr/share/applications
+mkdir -p $dir
+for exe in $PKG/usr/games/*; do
+ exe="$( basename $exe )"
+ name="$( basename ${exe^} -ace )"
+ cat > $dir/$exe.desktop <<EOF
+[Desktop Entry]
+Name=$name (Ace of Penguins)
+Exec=/usr/games/$exe
+Terminal=false
+Type=Application
+Icon=aceofpeng
+Categories=Game;CardGame;
+EOF
+done
-find $PKG -print0 | xargs -0 file | grep -e "executable" -e "shared object" | grep ELF \
- | cut -f 1 -d : | xargs strip --strip-unneeded 2> /dev/null || true
+PKGDOC=$PKG/usr/doc/$PRGNAM-$VERSION
+mkdir -p $PKGDOC
+cp -a AUTHORS ChangeLog NEWS README docs/* $PKGDOC
+cat $CWD/$PRGNAM.SlackBuild > $PKGDOC/$PRGNAM.SlackBuild
-mkdir -p $PKG/usr/doc/$PRGNAM-$VERSION
-cp -a docs/COPYING docs/intro.html docs/toolkit.html $PKG/usr/doc/$PRGNAM-$VERSION
-cat $CWD/$PRGNAM.SlackBuild > $PKG/usr/doc/$PRGNAM-$VERSION/$PRGNAM.SlackBuild
+rm -f $PKG/usr/lib*/*.la
mkdir -p $PKG/install
cat $CWD/slack-desc > $PKG/install/slack-desc
+cat $CWD/doinst.sh > $PKG/install/doinst.sh
cd $PKG
-/sbin/makepkg -l y -c n $OUTPUT/$PRGNAM-$VERSION-$ARCH-$BUILD$TAG.${PKGTYPE:-tgz}
+/sbin/makepkg -l y -c n $OUTPUT/$PRGNAM-$VERSION-$ARCH-$BUILD$TAG.$PKGTYPE
diff --git a/games/ace/ace.info b/games/ace/ace.info
index 872341481a..0bf8e26e00 100644
--- a/games/ace/ace.info
+++ b/games/ace/ace.info
@@ -6,5 +6,5 @@ MD5SUM="b80169fa59d69758bb9686f31a84ad2b"
DOWNLOAD_x86_64=""
MD5SUM_x86_64=""
REQUIRES=""
-MAINTAINER="G. Schoenmakers"
-EMAIL="gschoen@iinet.net.au"
+MAINTAINER="B. Watson"
+EMAIL="urchlay@slackware.uk"
diff --git a/games/ace/ace.png b/games/ace/ace.png
new file mode 100644
index 0000000000..c6a03dc720
--- /dev/null
+++ b/games/ace/ace.png
Binary files differ
diff --git a/games/ace/doinst.sh b/games/ace/doinst.sh
new file mode 100644
index 0000000000..65c7e2eeb9
--- /dev/null
+++ b/games/ace/doinst.sh
@@ -0,0 +1,9 @@
+if [ -x /usr/bin/update-desktop-database ]; then
+ /usr/bin/update-desktop-database -q usr/share/applications >/dev/null 2>&1
+fi
+
+if [ -e usr/share/icons/hicolor/icon-theme.cache ]; then
+ if [ -x /usr/bin/gtk-update-icon-cache ]; then
+ /usr/bin/gtk-update-icon-cache -f usr/share/icons/hicolor >/dev/null 2>&1
+ fi
+fi
diff --git a/games/ace/slack-desc b/games/ace/slack-desc
index 6633991484..b671f5d51c 100644
--- a/games/ace/slack-desc
+++ b/games/ace/slack-desc
@@ -6,14 +6,14 @@
# customary to leave one space after the ':' except on otherwise blank lines.
|-----handy-ruler------------------------------------------------------|
-ace: ace (Unix/X solitaire games)
+ace: ace (a set of Unix/X solitaire games)
ace:
-ace: The Ace of Penguins is a set of Unix/X solitaire games
-ace: based on the ones available for Windows(tm)
-ace: but with a number of enhancements.
-ace: The latest version includes clones of freecell, golf, mastermind,
-ace: merlin, minesweeper, pegged, solitaire, taipei (with editor)
-ace: and thornq.
+ace: The Ace of Penguins is a set of Unix/X solitaire games based
+ace: on the ones available for Windows(tm), but with a number of
+ace: enhancements. The latest version includes clones of freecell,
+ace: golf, mastermind, merlin, minesweeper, pegged, solitaire, taipei
+ace: (with editor) and thornq.
ace:
ace: Homepage: http://www.delorie.com/store/ace/
ace:
+ace:
diff --git a/games/adl/adl.SlackBuild b/games/adl/adl.SlackBuild
index 3bad33f5c3..df2911a7f0 100644
--- a/games/adl/adl.SlackBuild
+++ b/games/adl/adl.SlackBuild
@@ -1,20 +1,18 @@
-#!/bin/sh
+#!/bin/bash
# Slackware build script for adl
-# Written by B. Watson (yalhcru@gmail.com)
+# Written by B. Watson (urchlay@slackware.uk)
# Licensed under the WTFPL. See http://www.wtfpl.net/txt/copying/
# for details.
-# 93 (1993) is the timestamp of the tarball. Most of the files
-# inside are stamped May 10 1991, and the copyright notice
-# says 1987.
-
# In case anyone's wondering: compiled ADL files are NOT architecture
# independent. 32-bit adlcomp produces files that won't run on a 64-bit
# adlrun, and vice versa.
+# 20220407 bkw: BUILD=2, fix permissions in doc dir.
+
# 20180122 bkw: It turns out that adl development continued up
# through 2011, with a Windows and Linux binary release in 2003.
# The ADL language and bytecode formats were changed for the 2003
@@ -26,10 +24,13 @@
# 20170621 bkw: add -j1 to the make commands. I got a mysterious
# build failure that I couldn't duplicate, hopefully this fixes it.
+cd $(dirname $0) ; CWD=$(pwd)
+
PRGNAM=adl
VERSION=${VERSION:-20110628}
-BUILD=${BUILD:-1}
+BUILD=${BUILD:-2}
TAG=${TAG:-_SBo}
+PKGTYPE=${PKGTYPE:-tgz}
if [ -z "$ARCH" ]; then
case "$( uname -m )" in
@@ -39,7 +40,11 @@ if [ -z "$ARCH" ]; then
esac
fi
-CWD=$(pwd)
+if [ ! -z "${PRINT_PACKAGE_NAME}" ]; then
+ echo "$PRGNAM-$VERSION-$ARCH-$BUILD$TAG.$PKGTYPE"
+ exit 0
+fi
+
TMP=${TMP:-/tmp/SBo}
PKG=$TMP/package-$PRGNAM
OUTPUT=${OUTPUT:-/tmp}
@@ -70,11 +75,8 @@ YEAR=93
tar xvf $CWD/$PRGNAM.tar.Z
cd $PRGNAM
chown -R root:root .
-find -L . \
- \( -perm 777 -o -perm 775 -o -perm 750 -o -perm 711 -o -perm 555 \
- -o -perm 511 \) -exec chmod 755 {} \; -o \
- \( -perm 666 -o -perm 664 -o -perm 640 -o -perm 600 -o -perm 444 \
- -o -perm 440 -o -perm 400 \) -exec chmod 644 {} \;
+find -L . -perm /111 -a \! -perm 755 -a -exec chmod 755 {} \+ -o \
+ \! -perm /111 -a \! -perm 644 -a -exec chmod 644 {} \+
# Patch does this:
# - fix various compile errors (mostly relating to lack of ANSI prototypes).
@@ -191,7 +193,7 @@ patch -p1 < $CWD/compilefixes$YEAR.diff
# Install the docs first, so we don't get the compiled samples/demos.
DOCDIR=$PKG/usr/doc/$PRGNAM-$VERSION/$PRGNAM$YEAR
mkdir -p $DOCDIR
-chmod 644 doc/*.*
+find doc samples -type f -exec chmod 0644 {} \+
cp -a C* porting readme doc samples $DOCDIR
make -j1 all BIN=$PKG/usr/games OPTFLAGS="$SLKCFLAGS"
@@ -212,4 +214,4 @@ mkdir -p $PKG/install
cat $CWD/slack-desc > $PKG/install/slack-desc
cd $PKG
-/sbin/makepkg -l y -c n $OUTPUT/$PRGNAM-$VERSION-$ARCH-$BUILD$TAG.${PKGTYPE:-tgz}
+/sbin/makepkg -l y -c n $OUTPUT/$PRGNAM-$VERSION-$ARCH-$BUILD$TAG.$PKGTYPE
diff --git a/games/adl/adl.info b/games/adl/adl.info
index 24b6d03ac2..a69b8cbdba 100644
--- a/games/adl/adl.info
+++ b/games/adl/adl.info
@@ -1,7 +1,7 @@
PRGNAM="adl"
VERSION="20110628"
HOMEPAGE="http://adl.sourceforge.net/"
-DOWNLOAD="http://www.ifarchive.org/if-archive/programming/adl/adl.tar.Z \
+DOWNLOAD="https://www.ifarchive.org/if-archive/programming/adl/adl.tar.Z \
https://sourceforge.net/projects/adl/files/adl/adl%20binary%201.0/adl_linux32_1_0.tar.gz \
https://slackware.uk/~urchlay/src/adl-20110628.tar.gz \
https://slackware.uk/~urchlay/src/adl03-samples.tar.gz"
@@ -9,7 +9,7 @@ MD5SUM="b01115cc2625441caf818e60527b4095 \
c487cd233972bd5de694d303806ac653 \
57b75b90bd09a5051270732a61c6e288 \
6edfe44f23a99078ca797c75273fbb0e"
-DOWNLOAD_x86_64="http://www.ifarchive.org/if-archive/programming/adl/adl.tar.Z \
+DOWNLOAD_x86_64="https://www.ifarchive.org/if-archive/programming/adl/adl.tar.Z \
https://slackware.uk/~urchlay/src/adl_linux64_1_0.tar.gz \
https://slackware.uk/~urchlay/src/adl-20110628.tar.gz \
https://slackware.uk/~urchlay/src/adl03-samples.tar.gz"
@@ -19,4 +19,4 @@ MD5SUM_x86_64="b01115cc2625441caf818e60527b4095 \
6edfe44f23a99078ca797c75273fbb0e"
REQUIRES=""
MAINTAINER="B. Watson"
-EMAIL="yalhcru@gmail.com"
+EMAIL="urchlay@slackware.uk"
diff --git a/games/adl/fixman.sh b/games/adl/fixman.sh
index a500103ea0..28bdeff911 100644
--- a/games/adl/fixman.sh
+++ b/games/adl/fixman.sh
@@ -1,6 +1,6 @@
#!/bin/sh
-# fixman.sh - part of SBo adl build. B Watson (yalhcru@gmail.com), WTFPL.
+# fixman.sh - part of SBo adl build. B Watson (urchlay@slackware.uk), WTFPL.
# needs polyglotman.
diff --git a/games/adom/adom.SlackBuild b/games/adom/adom.SlackBuild
index 8506a5a8ea..664ae42f52 100644
--- a/games/adom/adom.SlackBuild
+++ b/games/adom/adom.SlackBuild
@@ -1,4 +1,4 @@
-#!/bin/sh
+#!/bin/bash
# Slackware package script for ADOM
# Written by pyllyukko - pyllyukko AT maimed dot org
@@ -6,10 +6,13 @@
# ADOM ships as a binary, so this script just wraps it up
# in a clean .tgz package, ready to be installed.
+cd $(dirname $0) ; CWD=$(pwd)
+
PRGNAM=adom
VERSION=${VERSION:-3.3.3}
BUILD=${BUILD:-1}
TAG=${TAG:-_SBo}
+PKGTYPE=${PKGTYPE:-tgz}
if [ -z "$ARCH" ]; then
case "$( uname -m )" in
@@ -19,7 +22,14 @@ if [ -z "$ARCH" ]; then
esac
fi
-CWD=$(pwd)
+# If the variable PRINT_PACKAGE_NAME is set, then this script will report what
+# the name of the created package would be, and then exit. This information
+# could be useful to other scripts.
+if [ ! -z "${PRINT_PACKAGE_NAME}" ]; then
+ echo "$PRGNAM-$VERSION-$ARCH-$BUILD$TAG.$PKGTYPE"
+ exit 0
+fi
+
TMP=${TMP:-/tmp/SBo}
PKG=$TMP/package-$PRGNAM
OUTPUT=${OUTPUT:-/tmp}
@@ -68,4 +78,4 @@ cat $CWD/slack-desc > $PKG/install/slack-desc
cat $CWD/doinst.sh > $PKG/install/doinst.sh
cd $PKG
-/sbin/makepkg -l y -c n $OUTPUT/$PRGNAM-$VERSION-$ARCH-$BUILD$TAG.${PKGTYPE:-tgz}
+/sbin/makepkg -l y -c n $OUTPUT/$PRGNAM-$VERSION-$ARCH-$BUILD$TAG.$PKGTYPE
diff --git a/games/advancemame/README b/games/advancemame/README
index 483467c542..b0b04523a1 100644
--- a/games/advancemame/README
+++ b/games/advancemame/README
@@ -4,7 +4,5 @@ Advancemame is a derivative of the well known "mame" emulator.
It works easily on linux, with joystick support, fullscreen
support, and more "out of the box."
-Optional dependency: SDL2. By default, advancemame is built with
-SDL-1.2. If SDL-2.0 is installed, advancemame will autodetect it and use
-it instead. If you have SDL2 installed, but want to build advancemame
-with SDL-1.2, set SDL2=no in the script's environment.
+By default, advancemame is built with SDL2. If you want to build
+advancemame with SDL-1.2, set SDL2=no in the script's environment.
diff --git a/games/advancemame/advancemame.SlackBuild b/games/advancemame/advancemame.SlackBuild
index d0de059935..9384419a66 100644
--- a/games/advancemame/advancemame.SlackBuild
+++ b/games/advancemame/advancemame.SlackBuild
@@ -1,13 +1,16 @@
-#!/bin/sh
+#!/bin/bash
# Slackware build script for "advancemame"
# Originally written by seb (email removed)
-# Now maintained by B. Watson <yalhcru@gmail.com>. Original version
+# Now maintained by B. Watson <urchlay@slackware.uk>. Original version
# had no license, modified version released under the WTFPL. See
# http://www.wtfpl.net/txt/copying/ for details.
+# 20240320 bkw: update for v3.10
+# 20220401 bkw: BUILD=3, add SlackBuild to doc dir
+# 20211004 bkw: BUILD=2, fix for -current
# 20180910 bkw: Update for v3.9
# 20180702 bkw: Update for v3.8
# 20180206 bkw: Update for v3.7
@@ -24,10 +27,13 @@
# - add .desktop, icon, doinst
# - document optional SDL2 dep, add SDL2 env var to control it
+cd $(dirname $0) ; CWD=$(pwd)
+
PRGNAM=advancemame
-VERSION=${VERSION:-3.9}
+VERSION=${VERSION:-3.10}
BUILD=${BUILD:-1}
TAG=${TAG:-_SBo}
+PKGTYPE=${PKGTYPE:-tgz}
if [ -z "$ARCH" ]; then
case "$( uname -m )" in
@@ -37,7 +43,11 @@ if [ -z "$ARCH" ]; then
esac
fi
-CWD=$(pwd)
+if [ ! -z "${PRINT_PACKAGE_NAME}" ]; then
+ echo "$PRGNAM-$VERSION-$ARCH-$BUILD$TAG.$PKGTYPE"
+ exit 0
+fi
+
TMP=${TMP:-/tmp/SBo}
PKG=$TMP/package-$PRGNAM
OUTPUT=${OUTPUT:-/tmp}
@@ -65,18 +75,8 @@ rm -rf $PRGNAM-$VERSION
tar xvf $CWD/$PRGNAM-$VERSION.tar.gz
cd $PRGNAM-$VERSION
chown -R root:root .
-find -L . \
- \( -perm 777 -o -perm 775 -o -perm 750 -o -perm 711 -o -perm 555 -o -perm 511 \) \
- -exec chmod 755 {} \; -o \
- \( -perm 666 -o -perm 664 -o -perm 600 -o -perm 444 -o -perm 440 -o -perm 400 \) \
- -exec chmod 644 {} \;
-
-# 20180702 bkw: This file got left out of the 3.8 release tarball. It
-# xzips down to 8.5K, so just include it here (taken from upstream git).
-JOVER="joverride.dat"
-if [ -e $CWD/$JOVER.xz -a ! -e advance/linux/$JOVER ]; then
- xzcat $CWD/$JOVER.xz > advance/linux/$JOVER
-fi
+find -L . -perm /111 -a \! -perm 755 -a -exec chmod 755 {} + -o \
+ \! -perm /111 -a \! -perm 644 -a -exec chmod 644 {} +
if [ "${SDL2:-yes}" != "yes" ]; then
SDL2OPT="--enable-sdl --disable-sdl2"
@@ -109,7 +109,10 @@ make
# into them, resulting in a mess.
make -j1 install prefix=$PKG/usr bindir=$PKG/usr/games docdir=$PKGDOC
-# Binaries are installed stripped. Man pages are in the wrong section!
+# 20240320 bkw: in 3.9, binaries were installed stripped. Not so in 3.10.
+strip $PKG/usr/games/*
+
+# Man pages are in the wrong section!
mv $PKG/usr/man/man1 $PKG/usr/man/man6
sed -i '/^\.TH.* 1$/s,1$,6,' $PKG/usr/man/man6/*.1
rename .1 .6 $PKG/usr/man/man6/*.1
@@ -123,6 +126,8 @@ ln -s advmame.6.gz $PKG/usr/man/man6/advmess.6.gz
mv $PKGDOC/advance/* $PKGDOC
rmdir $PKGDOC/advance
+cat $CWD/$PRGNAM.SlackBuild > $PKGDOC/$PRGNAM.SlackBuild
+
# HISTORY, README, RELEASE are identical to history.txt, readme.txt,
# release.txt which are already installed, but the license doesn't have
# a lowercase.txt equivalent:
@@ -149,4 +154,4 @@ sed "s,@SDLVER@,$SDLVER,g" $CWD/slack-desc > $PKG/install/slack-desc
cat $CWD/doinst.sh > $PKG/install/doinst.sh
cd $PKG
-/sbin/makepkg -l y -c n $OUTPUT/$PRGNAM-$VERSION-$ARCH-$BUILD$TAG.${PKGTYPE:-tgz}
+/sbin/makepkg -l y -c n $OUTPUT/$PRGNAM-$VERSION-$ARCH-$BUILD$TAG.$PKGTYPE
diff --git a/games/advancemame/advancemame.info b/games/advancemame/advancemame.info
index d91165a5c4..c5dc259449 100644
--- a/games/advancemame/advancemame.info
+++ b/games/advancemame/advancemame.info
@@ -1,10 +1,10 @@
PRGNAM="advancemame"
-VERSION="3.9"
+VERSION="3.10"
HOMEPAGE="http://advancemame.sourceforge.net"
-DOWNLOAD="https://github.com/amadvance/advancemame/releases/download/v3.9/advancemame-3.9.tar.gz"
-MD5SUM="2a5fce5892b95db9f6129f84c9369869"
+DOWNLOAD="https://github.com/amadvance/advancemame/releases/download/v3.10/advancemame-3.10.tar.gz"
+MD5SUM="620129fd17916e052bf594b866714133"
DOWNLOAD_x86_64=""
MD5SUM_x86_64=""
REQUIRES=""
MAINTAINER="B. Watson"
-EMAIL="yalhcru@gmail.com"
+EMAIL="urchlay@slackware.uk"
diff --git a/games/advancemame/joverride.dat.xz b/games/advancemame/joverride.dat.xz
deleted file mode 100644
index 6f3f694840..0000000000
--- a/games/advancemame/joverride.dat.xz
+++ /dev/null
Binary files differ
diff --git a/games/advancescan/advancescan.SlackBuild b/games/advancescan/advancescan.SlackBuild
index a3a976c35f..3ed72022ac 100644
--- a/games/advancescan/advancescan.SlackBuild
+++ b/games/advancescan/advancescan.SlackBuild
@@ -1,13 +1,15 @@
-#!/bin/sh
+#!/bin/bash
# Slackware build script for AdvanceSCAN
# Originally written by Pablo Santamaria (email removed)
-# Now maintained by B. Watson <yalhcru@gmail.com>. Original version
+# Now maintained by B. Watson <urchlay@slackware.uk>. Original version
# had no license, modified version released under the WTFPL. See
# http://www.wtfpl.net/txt/copying/ for details.
+# 20211004 bkw: BUILD=2, -std=c++11 for -current
+
# 20170211 bkw:
# - Take over maintenance
# - Update for v1.18
@@ -16,10 +18,13 @@
# - Install .txt docs without CRLF line endings.
# - Minor script cleanups.
+cd $(dirname $0) ; CWD=$(pwd)
+
PRGNAM=advancescan
VERSION=${VERSION:-1.18}
-BUILD=${BUILD:-1}
+BUILD=${BUILD:-2}
TAG=${TAG:-_SBo}
+PKGTYPE=${PKGTYPE:-tgz}
if [ -z "$ARCH" ]; then
case "$( uname -m )" in
@@ -29,7 +34,11 @@ if [ -z "$ARCH" ]; then
esac
fi
-CWD=$(pwd)
+if [ ! -z "${PRINT_PACKAGE_NAME}" ]; then
+ echo "$PRGNAM-$VERSION-$ARCH-$BUILD$TAG.$PKGTYPE"
+ exit 0
+fi
+
TMP=${TMP:-/tmp/SBo}
PKG=$TMP/package-$PRGNAM
OUTPUT=${OUTPUT:-/tmp}
@@ -57,14 +66,11 @@ rm -rf $PRGNAM-$VERSION
tar xvf $CWD/$PRGNAM-$VERSION.tar.gz
cd $PRGNAM-$VERSION
chown -R root:root .
-find -L . \
- \( -perm 777 -o -perm 775 -o -perm 750 -o -perm 711 -o -perm 555 -o -perm 511 \) \
- -exec chmod 755 {} \; -o \
- \( -perm 666 -o -perm 664 -o -perm 600 -o -perm 444 -o -perm 440 -o -perm 400 \) \
- -exec chmod 644 {} \;
+find -L . -perm /111 -a \! -perm 755 -a -exec chmod 755 {} \+ -o \
+ \! -perm /111 -a \! -perm 644 -a -exec chmod 644 {} \+
CFLAGS="$SLKCFLAGS" \
-CXXFLAGS="$SLKCFLAGS" \
+CXXFLAGS="$SLKCFLAGS -std=c++11" \
./configure \
--prefix=/usr \
--libdir=/usr/lib${LIBDIRSUFFIX} \
@@ -92,4 +98,4 @@ mkdir -p $PKG/install
cat $CWD/slack-desc > $PKG/install/slack-desc
cd $PKG
-/sbin/makepkg -l y -c n $OUTPUT/$PRGNAM-$VERSION-$ARCH-$BUILD$TAG.${PKGTYPE:-tgz}
+/sbin/makepkg -l y -c n $OUTPUT/$PRGNAM-$VERSION-$ARCH-$BUILD$TAG.$PKGTYPE
diff --git a/games/advancescan/advancescan.info b/games/advancescan/advancescan.info
index d36b1e5a09..0d106f5875 100644
--- a/games/advancescan/advancescan.info
+++ b/games/advancescan/advancescan.info
@@ -7,4 +7,4 @@ DOWNLOAD_x86_64=""
MD5SUM_x86_64=""
REQUIRES=""
MAINTAINER="B. Watson"
-EMAIL="yalhcru@gmail.com"
+EMAIL="urchlay@slackware.uk"
diff --git a/games/ags/ags.SlackBuild b/games/ags/ags.SlackBuild
index ff6196fa49..ab08d344b7 100644
--- a/games/ags/ags.SlackBuild
+++ b/games/ags/ags.SlackBuild
@@ -1,4 +1,4 @@
-#!/bin/sh
+#!/bin/bash
# Slackware build script for ags
@@ -23,127 +23,69 @@
# OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF THIS SOFTWARE, EVEN IF
# ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
+cd $(dirname $0) ; CWD=$(pwd)
+
PRGNAM=ags
-VERSION=${VERSION:-3.5.0.27}
+VERSION=${VERSION:-3.6.1.23}
BUILD=${BUILD:-1}
TAG=${TAG:-_SBo}
-
-# Dependency tarball versions.
-ALLEGRO_VERSION=${ALLEGRO_VERSION:-4.4.2}
-DUMB_VERSION=${DUMB_VERSION:-0.9.3}
+PKGTYPE=${PKGTYPE:-tgz}
if [ -z "$ARCH" ]; then
case "$( uname -m )" in
- i?86) ARCH=i486 ;;
+ i?86) ARCH=i586 ;;
arm*) ARCH=arm ;;
*) ARCH=$( uname -m ) ;;
esac
fi
-CWD=$(pwd)
+if [ ! -z "${PRINT_PACKAGE_NAME}" ]; then
+ echo "$PRGNAM-$VERSION-$ARCH-$BUILD$TAG.$PKGTYPE"
+ exit 0
+fi
+
TMP=${TMP:-/tmp/SBo}
PKG=$TMP/package-$PRGNAM
OUTPUT=${OUTPUT:-/tmp}
-if [ "$ARCH" = "i486" ]; then
- SLKCFLAGS="-O2 -march=i486 -mtune=i686"
+if [ "$ARCH" = "i586" ]; then
+ SLKCFLAGS="-O2 -march=i586 -mtune=i686 -Wno-error=format-truncation"
LIBDIRSUFFIX=""
elif [ "$ARCH" = "i686" ]; then
- SLKCFLAGS="-O2 -march=i686 -mtune=i686"
+ SLKCFLAGS="-O2 -march=i686 -mtune=i686 -Wno-error=format-truncation"
LIBDIRSUFFIX=""
elif [ "$ARCH" = "x86_64" ]; then
- SLKCFLAGS="-O2 -fPIC"
+ SLKCFLAGS="-O2 -fPIC -Wno-error=format-truncation"
+ LIBDIRSUFFIX="64"
+elif [ "$ARCH" = "aarch64" ]; then
+ SLKCFLAGS="-O2 -fPIC -Wno-error=format-truncation"
LIBDIRSUFFIX="64"
else
- SLKCFLAGS="-O2"
+ SLKCFLAGS="-O2 -Wno-error=format-truncation"
LIBDIRSUFFIX=""
fi
set -e
rm -rf $PKG
+rm -rf $TMP/$PRGNAM-$VERSION
mkdir -p $TMP $PKG $OUTPUT
cd $TMP
-
-rm -rf allegro-${ALLEGRO_VERSION}
-rm -rf dumb-${DUMB_VERSION}
-rm -rf ags-v.${VERSION}
-
-# Build Allegro 4 first.
-
-tar xvf $CWD/allegro-${ALLEGRO_VERSION}.tar.gz
-cd allegro-${ALLEGRO_VERSION}
-
-chown -R root:root .
-find -L . \
- \( -perm 777 -o -perm 775 -o -perm 750 -o -perm 711 -o -perm 555 \
- -o -perm 511 \) -exec chmod 755 {} \; -o \
- \( -perm 666 -o -perm 664 -o -perm 640 -o -perm 600 -o -perm 444 \
- -o -perm 440 -o -perm 400 \) -exec chmod 644 {} \;
-
-mkdir build
-cd build
-cmake \
- -DWANT_DOCS=OFF \
- -DWANT_EXAMPLES=OFF \
- -DWANT_TESTS=OFF \
- -DWANT_TOOLS=OFF \
- -DCMAKE_INSTALL_PREFIX=/opt/ags-$VERSION \
- -DCMAKE_BUILD_TYPE=Release \
- ..
-CFLAGS="$SLKCFLAGS" CXXFLAGS="$SLKCFLAGS" make
-make install DESTDIR=$PKG
-
-# Then build Dynamic Universal Music Bibliotheque.
-
-cd $TMP
-tar xvf $CWD/dumb-${DUMB_VERSION}.tar.gz
-cd dumb-$DUMB_VERSION
-
+tar xvf $CWD/$PRGNAM-${VERSION}.tar.gz
+cd $PRGNAM-$VERSION
chown -R root:root .
find -L . \
\( -perm 777 -o -perm 775 -o -perm 750 -o -perm 711 -o -perm 555 \
- -o -perm 511 \) -exec chmod 755 {} \; -o \
+ -o -perm 511 \) -exec chmod 755 {} \+ -o \
\( -perm 666 -o -perm 664 -o -perm 640 -o -perm 600 -o -perm 444 \
- -o -perm 440 -o -perm 400 \) -exec chmod 644 {} \;
-
-cat << EOF > make/config.txt
-include make/unix.inc
-ALL_TARGETS := core core-examples core-headers
-ALL_TARGETS += allegro allegro-examples allegro-headers
-PREFIX := $PKG/opt/ags-$VERSION
-EOF
-
-PATH="$PATH:$PKG/opt/ags-$VERSION/bin" make \
- WFLAGS="-I$PKG/opt/ags-$VERSION/include $SLKCFLAGS" \
- LDFLAGS="-lm -L$PKG/opt/ags-$VERSION/lib $LDFLAGS"
-make install
-
-# And finaly install Adventure Game Studio.
+ -o -perm 440 -o -perm 400 \) -exec chmod 644 {} \+
-cd $TMP
-tar xvf $CWD/v.${VERSION}.tar.gz || tar xvf $CWD/ags-v.${VERSION}.tar.gz
-cd ags-v.$VERSION
+CFLAGS="$SLKCFLAGS" \
+CXXFLAGS="$SLKCFLAGS" \
+ make --directory=Engine
-chown -R root:root .
-find -L . \
- \( -perm 777 -o -perm 775 -o -perm 750 -o -perm 711 -o -perm 555 \
- -o -perm 511 \) -exec chmod 755 {} \; -o \
- \( -perm 666 -o -perm 664 -o -perm 640 -o -perm 600 -o -perm 444 \
- -o -perm 440 -o -perm 400 \) -exec chmod 644 {} \;
-
-CFLAGS="-I$PKG/opt/ags-$VERSION/include $SLKCFLAGS" \
- CXXFLAGS="-I$PKG/opt/ags-$VERSION/include $SLKCFLAGS" \
- LDFLAGS="-L$PKG/opt/ags-$VERSION/lib -Wl,-rpath,/opt/ags-$VERSION/lib" \
- PATH="$PATH:$PKG/opt/ags-$VERSION/bin" \
- make --directory=Engine
mkdir -p $PKG/usr/bin
-cp Engine/ags $PKG/opt/ags-$VERSION/bin
-
-(
-cd $PKG/usr/bin
-ln -s ../../opt/ags-$VERSION/bin/ags .
-)
+install -s -m0755 Engine/ags $PKG/usr/bin
mkdir -p $PKG/usr/doc/$PRGNAM-$VERSION
cp -a README.md $PKG/usr/doc/$PRGNAM-$VERSION
@@ -154,4 +96,4 @@ mkdir -p $PKG/install
cat $CWD/slack-desc > $PKG/install/slack-desc
cd $PKG
-/sbin/makepkg -l y -c n $OUTPUT/$PRGNAM-$VERSION-$ARCH-$BUILD$TAG.${PKGTYPE:-tgz}
+/sbin/makepkg -l y -c n $OUTPUT/$PRGNAM-$VERSION-$ARCH-$BUILD$TAG.$PKGTYPE
diff --git a/games/ags/ags.info b/games/ags/ags.info
index 4ad916d050..f094e76463 100644
--- a/games/ags/ags.info
+++ b/games/ags/ags.info
@@ -1,14 +1,10 @@
PRGNAM="ags"
-VERSION="3.5.0.27"
+VERSION="3.6.1.23"
HOMEPAGE="https://github.com/adventuregamestudio/ags"
-DOWNLOAD="https://github.com/adventuregamestudio/ags/archive/v.3.5.0.27.tar.gz \
- http://downloads.sourceforge.net/project/alleg/allegro/4.4.2/allegro-4.4.2.tar.gz \
- http://downloads.sourceforge.net/project/dumb/dumb/0.9.3/dumb-0.9.3.tar.gz"
-MD5SUM="3284f6289ddb40b5d4066c0aaa8c84f1 \
- 4db71b0460fc99926ae91d223199c2e6 \
- f48da5b990aa8aa822d3b6a951baf5c2"
+DOWNLOAD="https://github.com/adventuregamestudio/ags/archive/v3.6.1.23/ags-3.6.1.23.tar.gz"
+MD5SUM="a69283fea676a89fdc810519932857ca"
DOWNLOAD_x86_64=""
MD5SUM_x86_64=""
-REQUIRES=""
+REQUIRES="SDL2_sound"
MAINTAINER="Yth - Arnaud"
EMAIL="yth@ythogtha.org"
diff --git a/games/aisleriot/aisleriot.SlackBuild b/games/aisleriot/aisleriot.SlackBuild
index b5097e18ae..3c2ec3a275 100644
--- a/games/aisleriot/aisleriot.SlackBuild
+++ b/games/aisleriot/aisleriot.SlackBuild
@@ -1,8 +1,8 @@
-#!/bin/sh
+#!/bin/bash
# Slackware build script for aisleriot
-# Copyright 2020 Johannes Schoepfer, Germany
+# Copyright 2020 - 2022 Johannes Schoepfer, Germany
# All rights reserved.
#
# Redistribution and use of this script, with or without modification, is
@@ -22,10 +22,13 @@
# OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF THIS SOFTWARE, EVEN IF
# ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
+cd $(dirname $0) ; CWD=$(pwd)
+
PRGNAM=aisleriot
-VERSION=${VERSION:-3.22.9}
-BUILD=${BUILD:-2}
+VERSION=${VERSION:-3.22.24}
+BUILD=${BUILD:-1}
TAG=${TAG:-_SBo}
+PKGTYPE=${PKGTYPE:-tgz}
if [ -z "$ARCH" ]; then
case "$( uname -m )" in
@@ -35,7 +38,11 @@ if [ -z "$ARCH" ]; then
esac
fi
-CWD=$(pwd)
+if [ ! -z "${PRINT_PACKAGE_NAME}" ]; then
+ echo "$PRGNAM-$VERSION-$ARCH-$BUILD$TAG.$PKGTYPE"
+ exit 0
+fi
+
TMP=${TMP:-/tmp/SBo}
PKG=$TMP/package-$PRGNAM
OUTPUT=${OUTPUT:-/tmp}
@@ -60,7 +67,7 @@ rm -rf $PKG
mkdir -p $TMP $PKG $OUTPUT
cd $TMP
rm -rf $PRGNAM-$VERSION
-tar xvf $CWD/$PRGNAM-$VERSION.tar.xz
+tar xvf $CWD/$PRGNAM-$VERSION.tar.?z
cd $PRGNAM-$VERSION
chown -R root:root .
find -L . \
@@ -69,25 +76,27 @@ find -L . \
\( -perm 666 -o -perm 664 -o -perm 640 -o -perm 600 -o -perm 444 \
-o -perm 440 -o -perm 400 \) -exec chmod 644 {} \;
-patch < $CWD/guile3.diff
-
-CFLAGS="$SLKCFLAGS" \
-CXXFLAGS="$SLKCFLAGS" \
-./configure \
- --prefix=/usr \
- --libdir=/usr/lib${LIBDIRSUFFIX} \
- --sysconfdir=/etc \
- --localstatedir=/var \
- --with-card-theme-formats=svg \
- --enable-sound \
- --disable-schemas-install \
- --with-platform=gtk-only \
- --mandir=/usr/man \
- --docdir=/usr/doc/$PRGNAM-$VERSION \
- --build=$ARCH-slackware-linux
-
-make
-make install DESTDIR=$PKG
+#-Dsound=false \
+
+mkdir build
+cd build
+ CFLAGS="$SLKCFLAGS" \
+ CXXFLAGS="$SLKCFLAGS" \
+ meson .. \
+ --buildtype=release \
+ --infodir=/usr/info \
+ --libdir=/usr/lib${LIBDIRSUFFIX} \
+ --localstatedir=/var \
+ --mandir=/usr/man \
+ --prefix=/usr \
+ --sysconfdir=/etc \
+ -Dtheme_kde=false \
+ -Dtheme_pysol=true \
+ -Dtheme_pysol_path=/usr/lib64/python3.9/site-packages/pysol_cards/ \
+ -Dstrip=true
+ "${NINJA:=ninja}"
+ DESTDIR=$PKG $NINJA install
+cd ..
find $PKG -print0 | xargs -0 file | grep -e "executable" -e "shared object" | grep ELF \
| cut -f 1 -d : | xargs strip --strip-unneeded 2> /dev/null || true
@@ -97,7 +106,7 @@ for i in $( find $PKG/usr/man -type l ) ; do ln -s $( readlink $i ).gz $i.gz ; r
mkdir -p $PKG/usr/doc/$PRGNAM-$VERSION
cp -a \
- AUTHORS ChangeLog COPYING* NEWS TODO \
+ AUTHORS COPYING* README.md TODO \
$PKG/usr/doc/$PRGNAM-$VERSION
cat $CWD/$PRGNAM.SlackBuild > $PKG/usr/doc/$PRGNAM-$VERSION/$PRGNAM.SlackBuild
@@ -106,4 +115,4 @@ cat $CWD/slack-desc > $PKG/install/slack-desc
cat $CWD/doinst.sh > $PKG/install/doinst.sh
cd $PKG
-/sbin/makepkg -l y -c n $OUTPUT/$PRGNAM-$VERSION-$ARCH-$BUILD$TAG.${PKGTYPE:-tgz}
+/sbin/makepkg -l y -c n $OUTPUT/$PRGNAM-$VERSION-$ARCH-$BUILD$TAG.$PKGTYPE
diff --git a/games/aisleriot/aisleriot.info b/games/aisleriot/aisleriot.info
index 9b9a3f7ace..63721abc26 100644
--- a/games/aisleriot/aisleriot.info
+++ b/games/aisleriot/aisleriot.info
@@ -1,8 +1,8 @@
PRGNAM="aisleriot"
-VERSION="3.22.9"
+VERSION="3.22.24"
HOMEPAGE="https://wiki.gnome.org/Apps/Aisleriot"
-DOWNLOAD="https://download.gnome.org/sources/aisleriot/3.22/aisleriot-3.22.9.tar.xz"
-MD5SUM="121678a799d027640ddfb267384440b5"
+DOWNLOAD="https://gitlab.gnome.org/GNOME/aisleriot/-/archive/3.22.24/aisleriot-3.22.24.tar.gz"
+MD5SUM="ca2cb016eddaf3f7afe8b534f299ea2f"
DOWNLOAD_x86_64=""
MD5SUM_x86_64=""
REQUIRES=""
diff --git a/games/aisleriot/guile3.diff b/games/aisleriot/guile3.diff
deleted file mode 100644
index e93ba432da..0000000000
--- a/games/aisleriot/guile3.diff
+++ /dev/null
@@ -1,20 +0,0 @@
---- configure.orig 2020-02-05 00:02:14.990196320 +0100
-+++ configure 2020-02-05 00:03:41.968108947 +0100
-@@ -1610,7 +1610,7 @@
- Config database for installing schema files.
- --with-gconf-schema-file-dir=dir
- Directory for installing schema files.
-- --with-guile=2.2|2.0|auto
-+ --with-guile=3.0|2.2|2.0|auto
- Which guile version to use (default: auto)
- --with-help-method which help method to use (ghelp|file|library;
- default: ghelp)
-@@ -18995,7 +18995,7 @@
- # Guile
- # *****
-
--guile_versions_all="2.2 2.0"
-+guile_versions_all="3.0 2.2 2.0"
- { $as_echo "$as_me:${as_lineno-$LINENO}: checking which guile version to use" >&5
- $as_echo_n "checking which guile version to use... " >&6; }
-
diff --git a/games/aklabeth/aklabeth.SlackBuild b/games/aklabeth/aklabeth.SlackBuild
index fe019c4758..4783e9e786 100644
--- a/games/aklabeth/aklabeth.SlackBuild
+++ b/games/aklabeth/aklabeth.SlackBuild
@@ -1,15 +1,18 @@
-#!/bin/sh
+#!/bin/bash
# Slackware build script for aklabeth
-# Written by B. Watson (yalhcru@gmail.com)
+# Written by B. Watson (urchlay@slackware.uk)
# Licensed under the WTFPL. See http://www.wtfpl.net/txt/copying/ for details.
+cd $(dirname $0) ; CWD=$(pwd)
+
PRGNAM=aklabeth
VERSION=${VERSION:-1.0}
BUILD=${BUILD:-1}
TAG=${TAG:-_SBo}
+PKGTYPE=${PKGTYPE:-tgz}
if [ -z "$ARCH" ]; then
case "$( uname -m )" in
@@ -19,7 +22,11 @@ if [ -z "$ARCH" ]; then
esac
fi
-CWD=$(pwd)
+if [ ! -z "${PRINT_PACKAGE_NAME}" ]; then
+ echo "$PRGNAM-$VERSION-$ARCH-$BUILD$TAG.$PKGTYPE"
+ exit 0
+fi
+
TMP=${TMP:-/tmp/SBo}
PKG=$TMP/package-$PRGNAM
OUTPUT=${OUTPUT:-/tmp}
@@ -47,11 +54,8 @@ rm -rf $PRGNAM-$VERSION
tar xvf $CWD/$PRGNAM-$VERSION.tar.gz
cd $PRGNAM-$VERSION
chown -R root:root .
-find -L . \
- \( -perm 777 -o -perm 775 -o -perm 750 -o -perm 711 -o -perm 555 \
- -o -perm 511 \) -exec chmod 755 {} \; -o \
- \( -perm 666 -o -perm 664 -o -perm 640 -o -perm 600 -o -perm 444 \
- -o -perm 440 -o -perm 400 \) -exec chmod 644 {} \;
+find -L . -perm /111 -a \! -perm 755 -a -exec chmod 755 {} \+ -o \
+ \! -perm /111 -a \! -perm 644 -a -exec chmod 644 {} \+
patch -p1 < $CWD/compilefix.diff
@@ -88,4 +92,4 @@ cat $CWD/slack-desc > $PKG/install/slack-desc
cat $CWD/doinst.sh > $PKG/install/doinst.sh
cd $PKG
-/sbin/makepkg -l y -c n $OUTPUT/$PRGNAM-$VERSION-$ARCH-$BUILD$TAG.${PKGTYPE:-tgz}
+/sbin/makepkg -l y -c n $OUTPUT/$PRGNAM-$VERSION-$ARCH-$BUILD$TAG.$PKGTYPE
diff --git a/games/aklabeth/aklabeth.info b/games/aklabeth/aklabeth.info
index 5a7dbc1a30..24f564636d 100644
--- a/games/aklabeth/aklabeth.info
+++ b/games/aklabeth/aklabeth.info
@@ -1,10 +1,10 @@
PRGNAM="aklabeth"
VERSION="1.0"
-HOMEPAGE="http://reconstruction.voyd.net/index.php?event=project&typeKeyword=remakes"
-DOWNLOAD="http://reconstruction.voyd.net/zips/aklabeth-1.0.tar.gz"
+HOMEPAGE="https://reconstruction.voyd.net/index.php?event=project&typeKeyword=remakes"
+DOWNLOAD="https://reconstruction.voyd.net/zips/aklabeth-1.0.tar.gz"
MD5SUM="56cccf9f4ec261f476648a59b78ff166"
DOWNLOAD_x86_64=""
MD5SUM_x86_64=""
REQUIRES=""
MAINTAINER="B. Watson"
-EMAIL="yalhcru@gmail.com"
+EMAIL="urchlay@slackware.uk"
diff --git a/games/alephone/README b/games/alephone/README
index bdaff1849c..2afc0c2c53 100644
--- a/games/alephone/README
+++ b/games/alephone/README
@@ -14,9 +14,3 @@ the Marathon series is required to play. Install one or more of
marathon-data, marathon2-data, and/or marathon-infinite-data.
See the READMEs for the game data packages for more information.
-
-Although ffmpeg is listed as a dependency, it's possible to build
-without it by setting FFMPEG=no in the script's environment (which will
-disable in-game movie playback/recording). This option is provided as a
-desperation measure only, since ffmpeg's API is a moving target. Please
-contact the maintainer if you have ffmpeg-related build issues.
diff --git a/games/alephone/alephone.SlackBuild b/games/alephone/alephone.SlackBuild
index a8ff9a9050..cc44600a50 100644
--- a/games/alephone/alephone.SlackBuild
+++ b/games/alephone/alephone.SlackBuild
@@ -1,11 +1,15 @@
-#!/bin/sh
+#!/bin/bash
# Slackware build script for alephone
-# Written by B. Watson (yalhcru@gmail.com)
+# Written by B. Watson (urchlay@slackware.uk)
# Licensed under the WTFPL. See http://www.wtfpl.net/txt/copying/ for details.
+# 20240320 bkw: update for 20240119
+# 20230716 bkw: update for 20230529
+# 20230108 bkw: update for 20221126
+# 20211010 bkw: update for 20210408
# 20201026 bkw: update for 20201026
# 20191209 bkw: update for 20190331
# 20150915 bkw:
@@ -13,10 +17,13 @@
# - ffmpeg patches no longer needed
# - move binary to /usr/games
+cd $(dirname $0) ; CWD=$(pwd)
+
PRGNAM=alephone
-VERSION=${VERSION:-20201026}
+VERSION=${VERSION:-20240119}
BUILD=${BUILD:-1}
TAG=${TAG:-_SBo}
+PKGTYPE=${PKGTYPE:-tgz}
if [ -z "$ARCH" ]; then
case "$( uname -m )" in
@@ -26,7 +33,11 @@ if [ -z "$ARCH" ]; then
esac
fi
-CWD=$(pwd)
+if [ ! -z "${PRINT_PACKAGE_NAME}" ]; then
+ echo "$PRGNAM-$VERSION-$ARCH-$BUILD$TAG.$PKGTYPE"
+ exit 0
+fi
+
TMP=${TMP:-/tmp/SBo}
PKG=$TMP/package-$PRGNAM
OUTPUT=${OUTPUT:-/tmp}
@@ -88,7 +99,7 @@ cat Source_Files/Misc/$PRGNAM.xpm > $PKG/usr/share/pixmaps/$PRGNAM.xpm
mkdir -p $PKG/usr/doc/$PRGNAM-$VERSION
# ChangeLog was 0 bytes in 20140104, gone in 20201026.
-cp -a AUTHORS COPYING README THANKS examples docs/*.html \
+cp -a AUTHORS* COPYING* README* THANKS* examples docs/*.html \
$PKG/usr/doc/$PRGNAM-$VERSION
cat $CWD/$PRGNAM.SlackBuild > $PKG/usr/doc/$PRGNAM-$VERSION/$PRGNAM.SlackBuild
@@ -97,4 +108,4 @@ cat $CWD/slack-desc > $PKG/install/slack-desc
cat $CWD/doinst.sh > $PKG/install/doinst.sh
cd $PKG
-/sbin/makepkg -l y -c n $OUTPUT/$PRGNAM-$VERSION-$ARCH-$BUILD$TAG.${PKGTYPE:-tgz}
+/sbin/makepkg -l y -c n $OUTPUT/$PRGNAM-$VERSION-$ARCH-$BUILD$TAG.$PKGTYPE
diff --git a/games/alephone/alephone.info b/games/alephone/alephone.info
index 54bd65d335..c352b1c174 100644
--- a/games/alephone/alephone.info
+++ b/games/alephone/alephone.info
@@ -1,10 +1,10 @@
PRGNAM="alephone"
-VERSION="20201026"
+VERSION="20240119"
HOMEPAGE="https://alephone.lhowon.org/"
-DOWNLOAD="https://github.com/Aleph-One-Marathon/alephone/releases/download/release-20201026/AlephOne-20201026.tar.bz2"
-MD5SUM="5636de266ecd67b88ac9c7d2661e1e78"
+DOWNLOAD="https://github.com/Aleph-One-Marathon/alephone/releases/download/release-20240119/AlephOne-20240119.tar.bz2"
+MD5SUM="a4ff8cd07f052190f02982d7773ca3b9"
DOWNLOAD_x86_64=""
MD5SUM_x86_64=""
-REQUIRES="lua speex zziplib ffmpeg SDL2_net"
+REQUIRES="lua zziplib"
MAINTAINER="B. Watson"
-EMAIL="yalhcru@gmail.com"
+EMAIL="urchlay@slackware.uk"
diff --git a/games/alephone/doinst.sh b/games/alephone/doinst.sh
index 5fb28930db..3e5691a052 100644
--- a/games/alephone/doinst.sh
+++ b/games/alephone/doinst.sh
@@ -1,3 +1,9 @@
if [ -x /usr/bin/update-desktop-database ]; then
/usr/bin/update-desktop-database -q usr/share/applications >/dev/null 2>&1
fi
+
+if [ -e usr/share/icons/hicolor/icon-theme.cache ]; then
+ if [ -x /usr/bin/gtk-update-icon-cache ]; then
+ /usr/bin/gtk-update-icon-cache usr/share/icons/hicolor >/dev/null 2>&1
+ fi
+fi
diff --git a/games/alienarena/alienarena-7.66-no-qglBlitFramebufferEXT.patch b/games/alienarena/alienarena-7.66-no-qglBlitFramebufferEXT.patch
new file mode 100644
index 0000000000..981a4769a3
--- /dev/null
+++ b/games/alienarena/alienarena-7.66-no-qglBlitFramebufferEXT.patch
@@ -0,0 +1,19 @@
+diff -Naur alienarena-7.66-svn4307/source/ref_gl/r_shadowmaps.c alienarena-7.66-svn4307.patched/source/ref_gl/r_shadowmaps.c
+--- alienarena-7.66-svn4307/source/ref_gl/r_shadowmaps.c 2017-08-02 05:34:56.000000000 -0400
++++ alienarena-7.66-svn4307.patched/source/ref_gl/r_shadowmaps.c 2022-02-22 23:27:40.462295225 -0500
+@@ -92,15 +92,6 @@
+ {
+ Com_Printf("...GL_EXT_framebuffer_blit not found\n");
+ }
+-
+- //must check for ability to blit(Many old ATI drivers do not support)
+- //TODO: redundant with previous check?
+- if(gl_state.hasFBOblit) {
+- if(!qglBlitFramebufferEXT) {
+- Com_Printf("glBlitFramebufferEXT not found...\n");
+- gl_state.hasFBOblit = false;
+- }
+- }
+ }
+
+
diff --git a/games/alienarena/alienarena.SlackBuild b/games/alienarena/alienarena.SlackBuild
index 3241f2f1c9..fa690a79c9 100644
--- a/games/alienarena/alienarena.SlackBuild
+++ b/games/alienarena/alienarena.SlackBuild
@@ -1,4 +1,4 @@
-#!/bin/sh
+#!/bin/bash
# Slackware build script for alienarena
@@ -22,26 +22,38 @@
# OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF THIS SOFTWARE, EVEN IF
# ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
+# 20220408 bkw: Modified by SlackBuilds.org, BUILD=2:
+# - remove empty dirs and INSTALL from doc dir.
+
+# 20220222 bkw: Modified by SlackBuilds.org: fix build on 15.0.
+
+cd $(dirname $0) ; CWD=$(pwd)
+
PRGNAM=alienarena
VERSION=${VERSION:-7.66}
-BUILD=${BUILD:-1}
+BUILD=${BUILD:-2}
TAG=${TAG:-_SBo}
+PKGTYPE=${PKGTYPE:-tgz}
if [ -z "$ARCH" ]; then
case "$( uname -m )" in
- i?86) ARCH=i486 ;;
+ i?86) ARCH=i586 ;;
arm*) ARCH=arm ;;
*) ARCH=$( uname -m ) ;;
esac
fi
-CWD=$(pwd)
+if [ ! -z "${PRINT_PACKAGE_NAME}" ]; then
+ echo "$PRGNAM-$VERSION-$ARCH-$BUILD$TAG.$PKGTYPE"
+ exit 0
+fi
+
TMP=${TMP:-/tmp/SBo}
PKG=$TMP/package-$PRGNAM
OUTPUT=${OUTPUT:-/tmp}
-if [ "$ARCH" = "i486" ]; then
- SLKCFLAGS="-O2 -march=i486 -mtune=i686"
+if [ "$ARCH" = "i586" ]; then
+ SLKCFLAGS="-O2 -march=i586 -mtune=i686"
LIBDIRSUFFIX=""
elif [ "$ARCH" = "i686" ]; then
SLKCFLAGS="-O2 -march=i686 -mtune=i686"
@@ -59,18 +71,26 @@ set -e
rm -rf $PKG
mkdir -p $TMP $PKG $OUTPUT
cd $TMP
-rm -rf $PRGNAM-$VERSION
-tar -xvf $CWD/$PRGNAM-$VERSION-linux20130827.tar.gz
-cd $PRGNAM-$VERSION
+rm -rf $PRGNAM-$VERSION-svn4307
+tar -xvf $CWD/$PRGNAM-$VERSION-svn4307.tar.xz
+cd $PRGNAM-$VERSION-svn4307
chown -R root:root .
find -L . \
- \( -perm 777 -o -perm 775 -o -perm 750 -o -perm 711 -o -perm 555 -o -perm 511 \) \
- -exec chmod 755 {} \; -o \
- \( -perm 666 -o -perm 664 -o -perm 600 -o -perm 444 -o -perm 440 -o -perm 400 \) \
- -exec chmod 644 {} \;
+ \( -perm 777 -o -perm 775 -o -perm 750 -o -perm 711 -o -perm 555 \
+ -o -perm 511 \) -exec chmod 755 {} \+ -o \
+ \( -perm 666 -o -perm 664 -o -perm 640 -o -perm 600 -o -perm 444 \
+ -o -perm 440 -o -perm 400 \) -exec chmod 644 {} \+
+
+# 20220222 bkw: this patch wouldn't apply. WTF? reworked it by hand.
+# Not really sure it's necessary, but someone thought it was, so...
+patch -p1 < $CWD/alienarena-7.66-no-qglBlitFramebufferEXT.patch
+
+rm -rf source/unix/ode
sed -i -e "s|crx|$PRGNAM|g" -e "s|\.codred|\.${PRGNAM}|g" Tools/LinuxScripts/*
+SLKCFLAGS+=" -fcommon"
+
ALIENARENA_HOMEDIR=".${PRGNAM}" \
CFLAGS="$SLKCFLAGS" \
CXXFLAGS="$SLKCFLAGS" \
@@ -83,27 +103,29 @@ CXXFLAGS="$SLKCFLAGS" \
--with-zlib \
--enable-ansi-color \
--with-system-libode \
- --with-xf86dga \
+ --without-xf86dga \
--with-icondir=/usr/share/pixmaps \
--docdir=/usr/doc/$PRGNAM-$VERSION \
--build=$ARCH-slackware-linux
make
-make install DESTDIR=$PKG
-
-find $PKG | xargs file | grep -e "executable" -e "shared object" | grep ELF \
- | cut -f 1 -d : | xargs strip --strip-unneeded 2> /dev/null || true
+make install-strip DESTDIR=$PKG
mkdir -p $PKG/usr/share/applications
install -m 0644 $CWD/$PRGNAM.desktop $PKG/usr/share/applications
-cp -a COPYING Tools/* $PKG/usr/doc/$PRGNAM-$VERSION
-cat $CWD/$PRGNAM.SlackBuild > $PKG/usr/doc/$PRGNAM-$VERSION/$PRGNAM.SlackBuild
-find $PKG/usr/doc -type f -exec chmod 0644 '{}' \;
+PKGDOC=$PKG/usr/doc/$PRGNAM-$VERSION
+cp -a Tools/* $PKGDOC
+rm -rf $PKGDOC/INSTALL
+cat $CWD/$PRGNAM.SlackBuild > $PKGDOC/$PRGNAM.SlackBuild
+
+# doc permissions are bad, plus empty directories.
+find $PKGDOC -type f -exec chmod 0644 '{}' \+
+find $PKGDOC -depth -empty -exec rm -rf {} \+
mkdir -p $PKG/install
cat $CWD/slack-desc > $PKG/install/slack-desc
cat $CWD/doinst.sh > $PKG/install/doinst.sh
cd $PKG
-/sbin/makepkg -l y -c n $OUTPUT/$PRGNAM-$VERSION-$ARCH-$BUILD$TAG.${PKGTYPE:-tgz}
+/sbin/makepkg -l y -c n $OUTPUT/$PRGNAM-$VERSION-$ARCH-$BUILD$TAG.$PKGTYPE
diff --git a/games/alienarena/alienarena.info b/games/alienarena/alienarena.info
index a1fff59833..1d1a4fa4b7 100644
--- a/games/alienarena/alienarena.info
+++ b/games/alienarena/alienarena.info
@@ -1,10 +1,10 @@
PRGNAM="alienarena"
VERSION="7.66"
HOMEPAGE="http://icculus.org/alienarena/rpa/"
-DOWNLOAD="http://red.planetarena.org/files/alienarena-7.66-linux20130827.tar.gz"
-MD5SUM="50928622f614ccd9938943de5fd37c1a"
+DOWNLOAD="http://ponce.cc/slackware/sources/repo/alienarena-7.66-svn4307.tar.xz"
+MD5SUM="bdaa12739a196df9fc1abc18a9ccfbbe"
DOWNLOAD_x86_64=""
MD5SUM_x86_64=""
-REQUIRES="OpenAL ode"
+REQUIRES="ode"
MAINTAINER="Larry Hajali"
EMAIL="larryhaja[at]gmail[dot]com"
diff --git a/games/alienarena/checkout_code.sh b/games/alienarena/checkout_code.sh
new file mode 100644
index 0000000000..d78a5c0e1a
--- /dev/null
+++ b/games/alienarena/checkout_code.sh
@@ -0,0 +1,6 @@
+svn co svn://svn.icculus.org/alienarena/trunk
+cd trunk
+svn update -r 4307
+cd ..
+mv trunk alienarena-7.66-svn4307
+tar --exclude-vcs -cJf alienarena-7.66-svn4307.tar.xz alienarena-7.66-svn4307
diff --git a/games/alienwave/alienwave.SlackBuild b/games/alienwave/alienwave.SlackBuild
index a3dcfd1d33..a452c460d5 100644
--- a/games/alienwave/alienwave.SlackBuild
+++ b/games/alienwave/alienwave.SlackBuild
@@ -1,11 +1,14 @@
-#!/bin/sh
+#!/bin/bash
# Slackware build script for alienwave
# Written by Dan-Simon Myrland <dansimon@radiotube.org>
+cd $(dirname $0) ; CWD=$(pwd)
+
PRGNAM=alienwave
VERSION=${VERSION:-0.4.0}
BUILD=${BUILD:-1}
TAG=${TAG:-_SBo}
+PKGTYPE=${PKGTYPE:-tgz}
if [ -z "$ARCH" ]; then
case "$( uname -m )" in
@@ -15,7 +18,14 @@ if [ -z "$ARCH" ]; then
esac
fi
-CWD=$(pwd)
+# If the variable PRINT_PACKAGE_NAME is set, then this script will report what
+# the name of the created package would be, and then exit. This information
+# could be useful to other scripts.
+if [ ! -z "${PRINT_PACKAGE_NAME}" ]; then
+ echo "$PRGNAM-$VERSION-$ARCH-$BUILD$TAG.$PKGTYPE"
+ exit 0
+fi
+
TMP=${TMP:-/tmp/SBo}
PKG=$TMP/package-$PRGNAM
OUTPUT=${OUTPUT:-/tmp}
@@ -58,4 +68,4 @@ mkdir -p $PKG/install
cat $CWD/slack-desc > $PKG/install/slack-desc
cd $PKG
-/sbin/makepkg -l y -c n $OUTPUT/$PRGNAM-$VERSION-$ARCH-$BUILD$TAG.${PKGTYPE:-tgz}
+/sbin/makepkg -l y -c n $OUTPUT/$PRGNAM-$VERSION-$ARCH-$BUILD$TAG.$PKGTYPE
diff --git a/games/an/README b/games/an/README
index 888b087077..bcdb674dfc 100644
--- a/games/an/README
+++ b/games/an/README
@@ -1,8 +1,8 @@
an (Anagram Generator)
-Generates anagrams for a phrase supplied by the user, the words used in
+Generates anagrams for a phrase supplied by the user. The words used in
the anagram are taken from a specified dictionary which should contain
-one word per line (default:/usr/share/dict/words).
+one word per line (default: /usr/share/dict/words).
On Slackware, /usr/share/dict/words comes from bsd-games, in y/ on the
install media.
diff --git a/games/an/an.SlackBuild b/games/an/an.SlackBuild
index 71f6d9f5fc..f41e6ff2cb 100644
--- a/games/an/an.SlackBuild
+++ b/games/an/an.SlackBuild
@@ -1,20 +1,27 @@
-#!/bin/sh
+#!/bin/bash
# Slackware build script for an
-# Written by B. Watson (yalhcru@gmail.com)
+# Written by B. Watson (urchlay@slackware.uk)
# Licensed under the WTFPL. See http://www.wtfpl.net/txt/copying/ for details.
+# 20230707 bkw: For some reason, the Debian source switched from .xz
+# to .gz compressions. Contents of the archive are identical, not
+# bumping BUILD.
+
# 20160804 bkw: Updated to 1.2. Apparently 1.2 is a release by the
# maintainer(s) of the Debian an package, not the original author...
# but the old 0.95 was segfaulting when built with gcc5. Also, the
# new version has Unicode support.
+cd $(dirname $0) ; CWD=$(pwd)
+
PRGNAM=an
VERSION=${VERSION:-1.2}
BUILD=${BUILD:-1}
TAG=${TAG:-_SBo}
+PKGTYPE=${PKGTYPE:-tgz}
if [ -z "$ARCH" ]; then
case "$( uname -m )" in
@@ -24,23 +31,23 @@ if [ -z "$ARCH" ]; then
esac
fi
-CWD=$(pwd)
+if [ ! -z "${PRINT_PACKAGE_NAME}" ]; then
+ echo "$PRGNAM-$VERSION-$ARCH-$BUILD$TAG.$PKGTYPE"
+ exit 0
+fi
+
TMP=${TMP:-/tmp/SBo}
PKG=$TMP/package-$PRGNAM
OUTPUT=${OUTPUT:-/tmp}
if [ "$ARCH" = "i586" ]; then
SLKCFLAGS="-O2 -march=i586 -mtune=i686"
- LIBDIRSUFFIX=""
elif [ "$ARCH" = "i686" ]; then
SLKCFLAGS="-O2 -march=i686 -mtune=i686"
- LIBDIRSUFFIX=""
elif [ "$ARCH" = "x86_64" ]; then
SLKCFLAGS="-O2 -fPIC"
- LIBDIRSUFFIX="64"
else
SLKCFLAGS="-O2"
- LIBDIRSUFFIX=""
fi
set -e
@@ -56,14 +63,11 @@ rm -rf $PKG
mkdir -p $TMP $PKG/usr/{games,man/man6} $OUTPUT
cd $TMP
rm -rf ${PRGNAM}-${SRCVER}
-tar xvf $CWD/${PRGNAM}_$TARVER.orig.tar.xz
+tar xvf $CWD/${PRGNAM}_$TARVER.orig.tar.gz
cd ${PRGNAM}-$SRCVER
chown -R root:root .
-find -L . \
- \( -perm 777 -o -perm 775 -o -perm 750 -o -perm 711 -o -perm 555 -o -perm 511 \) \
- -exec chmod 755 {} \; -o \
- \( -perm 666 -o -perm 664 -o -perm 600 -o -perm 444 -o -perm 440 -o -perm 400 \) \
- -exec chmod 644 {} \;
+find -L . -perm /111 -a \! -perm 755 -a -exec chmod 755 {} \+ -o \
+ \! -perm /111 -a \! -perm 644 -a -exec chmod 644 {} \+
make MANDIR=/usr/man/man6 CC="gcc $SLKCFLAGS"
make install DESTDIR=$PKG MANDIR=$PKG/usr/man/man6
@@ -101,4 +105,4 @@ if [ -e $CWD/$GUI_IN ]; then
fi
cd $PKG
-/sbin/makepkg -l y -c n $OUTPUT/$PRGNAM-$VERSION-$ARCH-$BUILD$TAG.${PKGTYPE:-tgz}
+/sbin/makepkg -l y -c n $OUTPUT/$PRGNAM-$VERSION-$ARCH-$BUILD$TAG.$PKGTYPE
diff --git a/games/an/an.info b/games/an/an.info
index 5999bf7981..45115a59c5 100644
--- a/games/an/an.info
+++ b/games/an/an.info
@@ -1,10 +1,10 @@
PRGNAM="an"
VERSION="1.2"
HOMEPAGE="https://packages.debian.org/sid/an"
-DOWNLOAD="http://http.debian.net/debian/pool/main/a/an/an_1.2.orig.tar.xz"
-MD5SUM="1f3465bfe2cc4458f75a7a42037b475c"
+DOWNLOAD="https://deb.debian.org/debian/pool/main/a/an/an_1.2.orig.tar.gz"
+MD5SUM="5d28b8003a745f0110ed70f0cd4aa051"
DOWNLOAD_x86_64=""
MD5SUM_x86_64=""
REQUIRES=""
MAINTAINER="B. Watson"
-EMAIL="yalhcru@gmail.com"
+EMAIL="urchlay@slackware.uk"
diff --git a/games/an/slack-desc b/games/an/slack-desc
index 21565fb755..30a9bb048e 100644
--- a/games/an/slack-desc
+++ b/games/an/slack-desc
@@ -8,9 +8,9 @@
|-----handy-ruler------------------------------------------------------|
an: an (Anagram Generator)
an:
-an: Generates anagrams for a phrase supplied by the user, the words used
+an: Generates anagrams for a phrase supplied by the user. The words used
an: in the anagram are taken from a specified dictionary which should
-an: contain one word per line (default:/usr/share/dict/words).
+an: contain one word per line (default: /usr/share/dict/words).
an:
an:
an:
diff --git a/games/angband/README b/games/angband/README
index 50e6524589..3eeb14f375 100644
--- a/games/angband/README
+++ b/games/angband/README
@@ -10,4 +10,8 @@ Angband (at least text version) needs UTF-8, listed by: locale -a.
Edit /etc/profile.d/lang.sh or export $LANG, or run such as (for USA):
LANG=en_US.UTF-8 angband.
-Run the graphics/tiles version by: angband -msdl.
+Run the graphics/tiles version by: angband -msdl2
+
+To restore old class definitions, backup class.txt and replace it
+with the contents of the old_class.txt file. Note that this will
+break existing save files.
diff --git a/games/angband/angband.SlackBuild b/games/angband/angband.SlackBuild
index 96e5c82569..1601a24c8b 100644
--- a/games/angband/angband.SlackBuild
+++ b/games/angband/angband.SlackBuild
@@ -1,32 +1,29 @@
-#!/bin/sh
+#!/bin/bash
# Slackware build script for Angband
-# Copyright 2020 Marshall Scott, SlackBuilds.org Project, David Melik, Spokane,
-# WA, USA.
-# All rights reserved.
-#
-# Redistribution and use of this script, with or without modification, is
-# permitted provided that the following conditions are met:
-#
-# 1. Redistributions of this script must retain the above copyright
-# notice, this list of conditions and the following disclaimer.
-#
-# THIS SOFTWARE IS PROVIDED BY THE AUTHOR "AS IS" AND ANY EXPRESS OR IMPLIED
-# WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE IMPLIED WARRANTIES OF
-# MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE ARE DISCLAIMED. IN NO
-# EVENT SHALL THE AUTHOR BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL,
-# SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT LIMITED TO,
-# PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, DATA, OR PROFITS;
-# OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY,
-# WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR
-# OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF THIS SOFTWARE, EVEN IF
-# ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
+# Written by Marshall Scott, David Melik, and Ben Collver.
+
+# Licensed under the WTFPL. See http://www.wtfpl.net/txt/copying/ for details.
+
+# 20220219 bkw: Modified by SlackBuilds.org:
+# - update download URL to one that exists.
+# - actually use SLKCFLAGS.
+# - use full path to icon in .desktop (since it's not in /usr/share/icons).
+# - remove an empty file from the doc dir.
+
+# 20240203
+# - install old_class.txt
+# See also:
+# https://angband.live/forums/forum/angband/vanilla/248199-can-t-get-most-spells-as-ranger
+
+cd $(dirname $0) ; CWD=$(pwd)
PRGNAM=angband
-VERSION=${VERSION:-4.2.1}
-BUILD=${BUILD:-1}
+VERSION=${VERSION:-4.2.5}
+BUILD=${BUILD:-2}
TAG=${TAG:-_SBo}
+PKGTYPE=${PKGTYPE:-tgz}
if [ -z "$ARCH" ]; then
case "$( uname -m )" in
@@ -36,7 +33,11 @@ if [ -z "$ARCH" ]; then
esac
fi
-CWD=$(pwd)
+if [ ! -z "${PRINT_PACKAGE_NAME}" ]; then
+ echo "$PRGNAM-$VERSION-$ARCH-$BUILD$TAG.$PKGTYPE"
+ exit 0
+fi
+
TMP=${TMP:-/tmp/SBo}
PKG=$TMP/package-$PRGNAM
OUTPUT=${OUTPUT:-/tmp}
@@ -61,20 +62,18 @@ rm -rf $PKG
mkdir -p $TMP $PKG $OUTPUT
rm -rf $TMP/$PRGNAM-$VERSION
cd $TMP
-tar xvf $CWD/$PRGNAM-$VERSION.tar.gz
-cd $PRGNAM-$VERSION
+tar xvf $CWD/Angband-$VERSION.tar.gz
+cd Angband-$VERSION
chown -R root:root .
find -L . \
\( -perm 777 -o -perm 775 -o -perm 750 -o -perm 711 -o -perm 555 \
- -o -perm 511 \) -exec chmod 755 {} \; -o \
+ -o -perm 511 \) -exec chmod 755 {} \+ -o \
\( -perm 666 -o -perm 664 -o -perm 640 -o -perm 600 -o -perm 444 \
- -o -perm 440 -o -perm 400 \) -exec chmod 644 {} \;
+ -o -perm 440 -o -perm 400 \) -exec chmod 644 {} \+
CFLAGS="$SLKCFLAGS" \
-LDFLAGS="-lSDL" \
-./autogen.sh
./configure \
- --enable-sdl \
+ --enable-sdl2 \
--prefix=/usr \
--datarootdir=/usr/share/games \
--sysconfdir=/etc \
@@ -85,11 +84,10 @@ LDFLAGS="-lSDL" \
make
make install DESTDIR=$PKG
+strip $PKG/usr/games/$PRGNAM
+cp lib/gamedata/old_class.txt $PKG/etc/angband/gamedata/
-find $PKG -print0 | xargs -0 file | grep -e "executable" -e "shared object" | grep ELF \
- | cut -f 1 -d : | xargs strip --strip-unneeded 2> /dev/null
-
-find $PKG -name "delete.me" -exec rm -f {} \;
+find $PKG -name "delete.me" -exec rm -f {} \+
mkdir -p $PKG/var/games/angband/archive
mkdir -p $PKG/var/games/angband/save
@@ -103,13 +101,14 @@ cp $CWD/angband.desktop $PKG/usr/share/applications
mkdir -p $PKG/usr/doc/$PRGNAM-$VERSION
cp -a changes.txt README.md docs/ lib/help/ \
$PKG/usr/doc/$PRGNAM-$VERSION
-find $PKG/usr/doc/$PRGNAM-$VERSION -type f -exec chmod 644 {} \;
+cp $CWD/README $PKG/usr/doc/$PRGNAM-$VERSION
+find $PKG/usr/doc/$PRGNAM-$VERSION -type f -exec chmod 644 {} \+
cat $CWD/$PRGNAM.SlackBuild > $PKG/usr/doc/$PRGNAM-$VERSION/$PRGNAM.SlackBuild
-rm -f $PKG/usr/doc/$PRGNAM-$VERSION/help/.dep*
+rm -f $PKG/usr/doc/$PRGNAM-$VERSION/{doc,help}/.dep*
mkdir -p $PKG/install
cat $CWD/slack-desc > $PKG/install/slack-desc
cat $CWD/doinst.sh > $PKG/install/doinst.sh
cd $PKG
-/sbin/makepkg -l y -c n $OUTPUT/$PRGNAM-$VERSION-$ARCH-$BUILD$TAG.${PKGTYPE:-tgz}
+/sbin/makepkg -l y -c n $OUTPUT/$PRGNAM-$VERSION-$ARCH-$BUILD$TAG.$PKGTYPE
diff --git a/games/angband/angband.desktop b/games/angband/angband.desktop
index 8933def883..f70c7dc57b 100644
--- a/games/angband/angband.desktop
+++ b/games/angband/angband.desktop
@@ -5,4 +5,4 @@ Exec=angband
Terminal=true
Type=Application
Categories=Game;
-Icon=angband
+Icon=/usr/share/pixmaps/angband.png
diff --git a/games/angband/angband.info b/games/angband/angband.info
index de1cf7f79a..096e0aa8f6 100644
--- a/games/angband/angband.info
+++ b/games/angband/angband.info
@@ -1,10 +1,10 @@
PRGNAM="angband"
-VERSION="4.2.1"
+VERSION="4.2.5"
HOMEPAGE="http://www.rephial.org/"
-DOWNLOAD="http://rephial.org/downloads/4.2/angband-4.2.1.tar.gz"
-MD5SUM="4538a8e34673cef9da1f11b6abda3f5e"
+DOWNLOAD="https://github.com/angband/angband/releases/download/4.2.5/Angband-4.2.5.tar.gz"
+MD5SUM="b4566c75eb69f4ffee816faf51b7e22b"
DOWNLOAD_x86_64=""
MD5SUM_x86_64=""
REQUIRES=""
-MAINTAINER="David Melik"
-EMAIL="dchmelik@gmail.com"
+MAINTAINER="Ben Collver"
+EMAIL="bencollver@riseup.net"
diff --git a/games/antares/antares.SlackBuild b/games/antares/antares.SlackBuild
index 7e43edc6f7..3e485c7d33 100644
--- a/games/antares/antares.SlackBuild
+++ b/games/antares/antares.SlackBuild
@@ -1,4 +1,4 @@
-#!/bin/sh
+#!/bin/bash
# Slackware build script for antares
@@ -22,10 +22,16 @@
# OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF THIS SOFTWARE, EVEN IF
# ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
+# 20220407 bkw: Modified by SlackBuilds.org, BUILD=2:
+# - make .desktop file validate.
+
+cd $(dirname $0) ; CWD=$(pwd)
+
PRGNAM=antares
VERSION=${VERSION:-0.9.1}
-BUILD=${BUILD:-1}
+BUILD=${BUILD:-2}
TAG=${TAG:-_SBo}
+PKGTYPE=${PKGTYPE:-tgz}
if [ -z "$ARCH" ]; then
case "$( uname -m )" in
@@ -35,7 +41,11 @@ if [ -z "$ARCH" ]; then
esac
fi
-CWD=$(pwd)
+if [ ! -z "${PRINT_PACKAGE_NAME}" ]; then
+ echo "$PRGNAM-$VERSION-$ARCH-$BUILD$TAG.$PKGTYPE"
+ exit 0
+fi
+
TMP=${TMP:-/tmp/SBo}
PKG=$TMP/package-$PRGNAM
OUTPUT=${OUTPUT:-/tmp}
@@ -51,9 +61,9 @@ cd $PRGNAM-$VERSION
chown -R root:root .
find -L . \
\( -perm 777 -o -perm 775 -o -perm 750 -o -perm 711 -o -perm 555 \
- -o -perm 511 \) -exec chmod 755 {} \; -o \
+ -o -perm 511 \) -exec chmod 755 {} \+ -o \
\( -perm 666 -o -perm 664 -o -perm 640 -o -perm 600 -o -perm 444 \
- -o -perm 440 -o -perm 400 \) -exec chmod 644 {} \;
+ -o -perm 440 -o -perm 400 \) -exec chmod 644 {} \+
# Prevent downloading the source during install
mkdir -p $PKG/usr/share/games/$PRGNAM/downloads
@@ -80,6 +90,10 @@ make NINJA="${NINJA:-ninja} -C out/cur" install DESTDIR=$PKG
find $PKG -print0 | xargs -0 file | grep -e "executable" -e "shared object" |
grep ELF | cut -f 1 -d : | xargs strip --strip-unneeded 2> /dev/null || true
+sed -i -e 's|Strategy;|StrategyGame;|' \
+ -e '/^Encoding/d' \
+ $PKG/usr/share/applications/$PRGNAM.desktop
+
mkdir -p $PKG/usr/doc/$PRGNAM-$VERSION
cp -a AUTHORS CONTRIBUTING COPYING COPYING.LESSER README.rst \
$PKG/usr/doc/$PRGNAM-$VERSION
@@ -90,4 +104,4 @@ cat $CWD/slack-desc > $PKG/install/slack-desc
cat $CWD/doinst.sh > $PKG/install/doinst.sh
cd $PKG
-/sbin/makepkg -l y -c n $OUTPUT/$PRGNAM-$VERSION-$ARCH-$BUILD$TAG.${PKGTYPE:-tgz}
+/sbin/makepkg -l y -c n $OUTPUT/$PRGNAM-$VERSION-$ARCH-$BUILD$TAG.$PKGTYPE
diff --git a/games/antares/antares.info b/games/antares/antares.info
index b963d27dd3..09b0b5c31d 100644
--- a/games/antares/antares.info
+++ b/games/antares/antares.info
@@ -7,6 +7,6 @@ MD5SUM="ef44ba09889aef72763212f96989983b \
b41f52c74f7cad3ff183dabe81bd1cf2"
DOWNLOAD_x86_64=""
MD5SUM_x86_64=""
-REQUIRES="OpenAL glfw3 gn libc++ libmodplug python3"
+REQUIRES="glfw3 gn libmodplug"
MAINTAINER="Hunter Sezen"
EMAIL="orbea@riseup.net"
diff --git a/games/antimicro/README b/games/antimicro/README
deleted file mode 100644
index 2544b5ceed..0000000000
--- a/games/antimicro/README
+++ /dev/null
@@ -1,22 +0,0 @@
-Antimicro is a GUI application to intercept gamepad signals and
-translate them to keyboard and mouse events, so that you can use a
-gamepad with games that do not have native (or poor) gamepad support.
-
-It works for games you're playing on Linux or with WINE. It works with
-Steam or stand-alone games.
-
-You can compile it using Qt4 or Qt5, at your option. Default is
-the Slackware default: Qt4. To compile with Qt5 instead:
-
- # QT=5 ./antimicro.SlackBuild
-
-
-Profiles
---------
-
-Some pre-built game controller profiles are available here:
-
-https://github.com/AntiMicro/antimicro-profiles
-
-These allow you to download button mappings for popular games so that
-you don't have to configure them yourself.
diff --git a/games/antimicro/antimicro.SlackBuild b/games/antimicro/antimicro.SlackBuild
deleted file mode 100644
index 4cdef8f7a3..0000000000
--- a/games/antimicro/antimicro.SlackBuild
+++ /dev/null
@@ -1,96 +0,0 @@
-#!/bin/sh
-# Slackware build script for antimicro
-# Copyright 2015-2016 Klaatu Wellington, NZ
-#
-# GNU All-Permissive License
-# Copying and distribution of this file, with or without modification,
-# are permitted in any medium without royalty provided the copyright
-# notice and this notice are preserved. This file is offered as-is,
-# without any warranty.
-
-PRGNAM=antimicro
-VERSION=${VERSION:-2.23}
-BUILD=${BUILD:-1}
-TAG=${TAG:-_SBo}
-QT=${QT:-4}
-DOCDIR=${DOCDIR:-/usr/doc}
-MANDIR=${MANDIR:-/usr/man}
-
-if [ -z "$ARCH" ]; then
- case "$( uname -m )" in
- i?86) ARCH=i586 ;;
- arm*) ARCH=arm ;;
- *) ARCH=$( uname -m ) ;;
- esac
-fi
-
-CWD=$(pwd)
-TMP=${TMP:-/tmp/SBo}
-PKG=$TMP/package-$PRGNAM
-OUTPUT=${OUTPUT:-/tmp}
-
-if [ "$ARCH" = "i586" ]; then
- SLKCFLAGS="-O2 -march=i586 -mtune=i686"
- LIBDIRSUFFIX=""
-elif [ "$ARCH" = "i686" ]; then
- SLKCFLAGS="-O2 -march=i686 -mtune=i686"
- LIBDIRSUFFIX=""
-elif [ "$ARCH" = "x86_64" ]; then
- SLKCFLAGS="-O2 -fPIC"
- LIBDIRSUFFIX="64"
-else
- SLKCFLAGS="-O2"
- LIBDIRSUFFIX=""
-fi
-
-set -e
-
-rm -rf $PKG
-mkdir -p $TMP $PKG $OUTPUT
-cd $TMP
-rm -rf $PRGNAM-$VERSION
-tar xf $CWD/$PRGNAM-$VERSION.tar.gz
-cd $PRGNAM-$VERSION
-chown -R root:root .
-find -L . \
- \( -perm 777 -o -perm 775 -o -perm 750 -o -perm 711 -o -perm 555 \
- -o -perm 511 \) -exec chmod 755 {} \; -o \
- \( -perm 666 -o -perm 664 -o -perm 640 -o -perm 600 -o -perm 444 \
- -o -perm 440 -o -perm 400 \) -exec chmod 644 {} \;
-
-mkdir -p build
-cd build
-QT_SELECT=`echo $QT` cmake \
- -DCMAKE_C_FLAGS:STRING="$SLKCFLAGS" \
- -DCMAKE_CXX_FLAGS:STRING="$SLKCFLAGS" \
- -DUSE_SDL_2=ON \
- -DCMAKE_INSTALL_PREFIX=/usr \
- -DCMAKE_BUILD_TYPE=Release ..
- make
- make install DESTDIR=$PKG
-cd ..
-
-find $PKG -print0 | xargs -0 file | grep -e "executable" -e "shared object" | grep ELF \
- | cut -f 1 -d : | xargs strip --strip-unneeded 2> /dev/null || true
-
-mkdir -p $PKG/$MANDIR
-mv $PKG/usr/share/man/man1 $PKG/$MANDIR
-rm -rf $PKG/usr/share/man
-
-find $PKG/$MANDIR -type f -exec gzip -9 {} \;
-for i in $( find $PKG/$MANDIR -type l ) ; do ln -s $( readlink $i ).gz $i.gz ; rm $i ; done
-
-cat other/$PRGNAM.desktop > $PKG/usr/share/applications/$PRGNAM.desktop
-
-mkdir -p $PKG/$DOCDIR/$PRGNAM-$VERSION
-cp -a README.md BuildOptions.md gpl.txt Resources.txt \
- ProfileTips.md other/40-uinput.rules \
- $PKG/$DOCDIR/$PRGNAM-$VERSION
-cat $CWD/$PRGNAM.SlackBuild > $PKG/$DOCDIR/$PRGNAM-$VERSION/$PRGNAM.SlackBuild
-
-mkdir -p $PKG/install
-cat $CWD/slack-desc > $PKG/install/slack-desc
-cat $CWD/doinst.sh > $PKG/install/doinst.sh
-
-cd $PKG
-/sbin/makepkg -l y -c n $OUTPUT/$PRGNAM-$VERSION-$ARCH-$BUILD$TAG.${PKGTYPE:-tgz}
diff --git a/games/antimicro/antimicro.info b/games/antimicro/antimicro.info
deleted file mode 100644
index f055131916..0000000000
--- a/games/antimicro/antimicro.info
+++ /dev/null
@@ -1,10 +0,0 @@
-PRGNAM="antimicro"
-VERSION="2.23"
-HOMEPAGE="https://github.com/AntiMicro/antimicro"
-DOWNLOAD="https://github.com/AntiMicro/antimicro/archive/2.23/antimicro-2.23.tar.gz"
-MD5SUM="b63397e9e6d0bb06d98b0931a86b3427"
-DOWNLOAD_x86_64=""
-MD5SUM_x86_64=""
-REQUIRES="SDL2"
-MAINTAINER="Klaatu"
-EMAIL="klaatu@member.fsf.org"
diff --git a/games/antimicro/doinst.sh b/games/antimicro/doinst.sh
deleted file mode 100644
index 9a8ded3c60..0000000000
--- a/games/antimicro/doinst.sh
+++ /dev/null
@@ -1,7 +0,0 @@
-if [ -x /usr/bin/update-desktop-database ]; then
- /usr/bin/update-desktop-database -q usr/share/applications >/dev/null 2>&1
-fi
-
-if [ -x /usr/bin/update-mime-database ]; then
- /usr/bin/update-mime-database usr/share/mime >/dev/null 2>&1
-fi
diff --git a/games/antimicro/slack-desc b/games/antimicro/slack-desc
deleted file mode 100644
index b2e069eb29..0000000000
--- a/games/antimicro/slack-desc
+++ /dev/null
@@ -1,19 +0,0 @@
-# HOW TO EDIT THIS FILE:
-# The "handy ruler" below makes it easier to edit a package description.
-# Line up the first '|' above the ':' following the base package name, and
-# the '|' on the right side marks the last column you can put a character in.
-# You must make exactly 11 lines for the formatting to be correct. It's also
-# customary to leave one space after the ':' except on otherwise blank lines.
-
- |-----handy-ruler------------------------------------------------------|
-antimicro: antimicro (gamepad to keypress)
-antimicro:
-antimicro: Antimicro is a graphical program used to map keyboard keys and mouse
-antimicro: controls to a gamepad. Useful for playing PC games with no gamepad
-antimicro: or poor gamepad support.
-antimicro:
-antimicro: http://github.com/AntiMicro/antimicro
-antimicro:
-antimicro:
-antimicro:
-antimicro:
diff --git a/games/antimicrox/README b/games/antimicrox/README
new file mode 100644
index 0000000000..49dc09275f
--- /dev/null
+++ b/games/antimicrox/README
@@ -0,0 +1,19 @@
+AntiMicroX is a fork of AntiMicro, a GUI application to intercept
+gamepad signals and translate them to keyboard and mouse events.
+Use it so you can play games with a gamepad that have poor or no
+native gamepad support.
+
+It works for games you're playing on Linux or with WINE. It works with
+Steam or stand-alone games. (Note that Steam does a pretty good job
+of translating most controllers even for games without gamepad support,
+so you may not need AntiMicroX).
+
+Profiles
+--------
+
+Some pre-built game controller profiles are available here:
+
+https://github.com/AntiMicro/antimicro-profiles
+
+These allow you to download button mappings for popular games so that
+you don't have to configure them yourself.
diff --git a/games/antimicrox/antimicrox.SlackBuild b/games/antimicrox/antimicrox.SlackBuild
new file mode 100644
index 0000000000..868ba7e13e
--- /dev/null
+++ b/games/antimicrox/antimicrox.SlackBuild
@@ -0,0 +1,113 @@
+#!/bin/bash
+# Slackware build script for antimicrox
+# Copyright 2015-2016 Klaatu Wellington, NZ
+#
+# GNU All-Permissive License
+# Copying and distribution of this file, with or without modification,
+# are permitted in any medium without royalty provided the copyright
+# notice and this notice are preserved. This file is offered as-is,
+# without any warranty.
+
+# 20220408 bkw: Modified by SlackBuilds.org, BUILD=2:
+# - remove /usr/share/doc.
+# - add gtk-update-icon-cache to doinst.sh.
+
+# 20220219 bkw: Modified by SlackBuilds.org:
+# - fix build on Slackware 15.0.
+# - remove option to build with qt5: it fails.
+# - add qt4 as a dep.
+
+cd $(dirname $0) ; CWD=$(pwd)
+
+PRGNAM=antimicrox
+VERSION=${VERSION:-3.2.2}
+BUILD=${BUILD:-2}
+TAG=${TAG:-_SBo}
+PKGTYPE=${PKGTYPE:-tgz}
+DOCDIR=${DOCDIR:-/usr/doc}
+MANDIR=${MANDIR:-/usr/man}
+
+if [ -z "$ARCH" ]; then
+ case "$( uname -m )" in
+ i?86) ARCH=i586 ;;
+ arm*) ARCH=arm ;;
+ *) ARCH=$( uname -m ) ;;
+ esac
+fi
+
+if [ ! -z "${PRINT_PACKAGE_NAME}" ]; then
+ echo "$PRGNAM-$VERSION-$ARCH-$BUILD$TAG.$PKGTYPE"
+ exit 0
+fi
+
+TMP=${TMP:-/tmp/SBo}
+PKG=$TMP/package-$PRGNAM
+OUTPUT=${OUTPUT:-/tmp}
+
+if [ "$ARCH" = "i586" ]; then
+ SLKCFLAGS="-O2 -march=i586 -mtune=i686"
+ LIBDIRSUFFIX=""
+elif [ "$ARCH" = "i686" ]; then
+ SLKCFLAGS="-O2 -march=i686 -mtune=i686"
+ LIBDIRSUFFIX=""
+elif [ "$ARCH" = "x86_64" ]; then
+ SLKCFLAGS="-O2 -fPIC"
+ LIBDIRSUFFIX="64"
+else
+ SLKCFLAGS="-O2"
+ LIBDIRSUFFIX=""
+fi
+
+set -e
+
+rm -rf $PKG
+mkdir -p $TMP $PKG $OUTPUT
+cd $TMP
+rm -rf $PRGNAM-$VERSION
+tar xf $CWD/$PRGNAM-$VERSION.tar.gz
+cd $PRGNAM-$VERSION
+chown -R root:root .
+find -L . \
+ \( -perm 777 -o -perm 775 -o -perm 750 -o -perm 711 -o -perm 555 \
+ -o -perm 511 \) -exec chmod 755 {} \+ -o \
+ \( -perm 666 -o -perm 664 -o -perm 640 -o -perm 600 -o -perm 444 \
+ -o -perm 440 -o -perm 400 \) -exec chmod 644 {} \+
+
+# 20220219 bkw: ordered comparison of pointer with integer... this is
+# really a bit too picky, IMO.
+sed -i '/if *(joysticks *>/s, *> *0 *),),' src/gui/mainwindow.cpp
+
+# fix hardcoded path
+sed -i 's,/usr/lib/udev,/etc/udev,' CMakeLists.txt
+
+mkdir -p build
+cd build
+cmake \
+ -DCMAKE_C_FLAGS:STRING="$SLKCFLAGS" \
+ -DCMAKE_CXX_FLAGS:STRING="$SLKCFLAGS" \
+ -DAPPDATA=OFF \
+ -DCMAKE_INSTALL_MANDIR=$MANDIR \
+ -DCMAKE_INSTALL_PREFIX=/usr \
+ -DCMAKE_BUILD_TYPE=Release ..
+
+# fix hardcoded path
+sed -i 's,share/man,man,' other/cmake_install.cmake
+make
+make install/strip DESTDIR=$PKG
+cd ..
+
+# 20220408 bkw: do not want!
+rm -rf $PKG/usr/share/doc
+
+mkdir -p $PKG/$DOCDIR/$PRGNAM-$VERSION
+cp -a README.md CHANGELOG.md LICENSE \
+ ProfileTips.md $PKG/$DOCDIR/$PRGNAM-$VERSION
+cat $CWD/$PRGNAM.SlackBuild > \
+ $PKG/$DOCDIR/$PRGNAM-$VERSION/$PRGNAM.SlackBuild
+
+mkdir -p $PKG/install
+cat $CWD/slack-desc > $PKG/install/slack-desc
+cat $CWD/doinst.sh > $PKG/install/doinst.sh
+
+cd $PKG
+/sbin/makepkg -l y -c n $OUTPUT/$PRGNAM-$VERSION-$ARCH-$BUILD$TAG.$PKGTYPE
diff --git a/games/antimicrox/antimicrox.desktop b/games/antimicrox/antimicrox.desktop
new file mode 100644
index 0000000000..6c3cb497d2
--- /dev/null
+++ b/games/antimicrox/antimicrox.desktop
@@ -0,0 +1,18 @@
+[Desktop Entry]
+Name=AntiMicroX
+Comment=Use a gamepad to control a variety of programs
+Name[sr]=Анти-микро
+Comment[sr]=Користите џојстик или играћу тастатуру за управљање различитим програмима
+Name[fr]=AntiMicroX
+Comment[fr]=Utilisez une manette de jeu pour commander un logiciel
+Name[de]=AntiMicroX
+Comment[de]=Nutze das Gamepad um Programme/Spiele zu steuern
+Comment[uk]=Використовуйте ігровий маніпулятор для керування програмами
+Exec=/usr/games/antimicrox
+Icon=/usr/share/pixmaps/antimicrox.png
+StartupNotify=true
+Terminal=false
+Type=Application
+Categories=Qt;Utility;
+MimeType=application/x-amgp;
+Keywords=game;controller;keyboard;joystick;mouse;
diff --git a/games/antimicrox/antimicrox.info b/games/antimicrox/antimicrox.info
new file mode 100644
index 0000000000..a29259ce86
--- /dev/null
+++ b/games/antimicrox/antimicrox.info
@@ -0,0 +1,10 @@
+PRGNAM="antimicrox"
+VERSION="3.2.2"
+HOMEPAGE="https://github.com/AntiMicroX"
+DOWNLOAD="https://github.com/AntiMicroX/antimicrox/archive/3.2.2/antimicrox-3.2.2.tar.gz"
+MD5SUM="ff579c986fc49b377de7748e4ec5a6e4"
+DOWNLOAD_x86_64=""
+MD5SUM_x86_64=""
+REQUIRES=""
+MAINTAINER="Klaatu"
+EMAIL="klaatu@member.fsf.org"
diff --git a/games/antimicrox/doinst.sh b/games/antimicrox/doinst.sh
new file mode 100644
index 0000000000..9424ce43ff
--- /dev/null
+++ b/games/antimicrox/doinst.sh
@@ -0,0 +1,13 @@
+if [ -x /usr/bin/update-desktop-database ]; then
+ /usr/bin/update-desktop-database -q usr/share/applications >/dev/null 2>&1
+fi
+
+if [ -x /usr/bin/update-mime-database ]; then
+ /usr/bin/update-mime-database usr/share/mime >/dev/null 2>&1
+fi
+
+if [ -e usr/share/icons/hicolor/icon-theme.cache ]; then
+ if [ -x /usr/bin/gtk-update-icon-cache ]; then
+ /usr/bin/gtk-update-icon-cache usr/share/icons/hicolor >/dev/null 2>&1
+ fi
+fi
diff --git a/games/antimicrox/slack-desc b/games/antimicrox/slack-desc
new file mode 100644
index 0000000000..3e3650a73f
--- /dev/null
+++ b/games/antimicrox/slack-desc
@@ -0,0 +1,19 @@
+# HOW TO EDIT THIS FILE:
+# The "handy ruler" below makes it easier to edit a package description.
+# Line up the first '|' above the ':' following the base package name, and
+# the '|' on the right side marks the last column you can put a character in.
+# You must make exactly 11 lines for the formatting to be correct. It's also
+# customary to leave one space after the ':' except on otherwise blank lines.
+
+ |-----handy-ruler------------------------------------------------------|
+antimicrox: antimicrox (gamepad to keypress)
+antimicrox:
+antimicrox: AntimicroX is a graphical program that maps keyboard keys and mouse
+antimicrox: controls to a gamepad. Useful for playing PC games with no gamepad
+antimicrox: or poor gamepad support.
+antimicrox:
+antimicrox: http://github.com/AntiMicroX/antimicrox
+antimicrox:
+antimicrox:
+antimicrox:
+antimicrox:
diff --git a/games/ardentryst/ardentryst.SlackBuild b/games/ardentryst/ardentryst.SlackBuild
index 91357dba5d..7009fd7663 100644
--- a/games/ardentryst/ardentryst.SlackBuild
+++ b/games/ardentryst/ardentryst.SlackBuild
@@ -1,4 +1,4 @@
-#!/bin/sh
+#!/bin/bash
# Slackware build script for ardentryst
@@ -22,10 +22,13 @@
# OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF THIS SOFTWARE, EVEN IF
# ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
+cd $(dirname $0) ; CWD=$(pwd)
+
PRGNAM=ardentryst
VERSION=${VERSION:-1.71}
BUILD=${BUILD:-2}
TAG=${TAG:-_SBo}
+PKGTYPE=${PKGTYPE:-tgz}
if [ -z "$ARCH" ]; then
case "$( uname -m )" in
@@ -35,7 +38,14 @@ if [ -z "$ARCH" ]; then
esac
fi
-CWD=$(pwd)
+# If the variable PRINT_PACKAGE_NAME is set, then this script will report what
+# the name of the created package would be, and then exit. This information
+# could be useful to other scripts.
+if [ ! -z "${PRINT_PACKAGE_NAME}" ]; then
+ echo "$PRGNAM-$VERSION-$ARCH-$BUILD$TAG.$PKGTYPE"
+ exit 0
+fi
+
TMP=${TMP:-/tmp/SBo}
PKG=$TMP/package-$PRGNAM
OUTPUT=${OUTPUT:-/tmp}
@@ -96,4 +106,4 @@ cat $CWD/slack-desc > $PKG/install/slack-desc
cat $CWD/doinst.sh > $PKG/install/doinst.sh
cd $PKG
-/sbin/makepkg -l y -c n $OUTPUT/$PRGNAM-$VERSION-$ARCH-$BUILD$TAG.${PKGTYPE:-tgz}
+/sbin/makepkg -l y -c n $OUTPUT/$PRGNAM-$VERSION-$ARCH-$BUILD$TAG.$PKGTYPE
diff --git a/games/ardentryst/ardentryst.info b/games/ardentryst/ardentryst.info
index d5016438f0..32003e1d8f 100644
--- a/games/ardentryst/ardentryst.info
+++ b/games/ardentryst/ardentryst.info
@@ -1,10 +1,10 @@
PRGNAM="ardentryst"
VERSION="1.71"
HOMEPAGE="https://sourceforge.net/projects/ardentryst/"
-DOWNLOAD="https://sourceforge.net/projects/ardentryst/files/ardentryst/1.71%20Comet/ardentryst1.71.tar.gz"
+DOWNLOAD="https://slackware.uk/~urchlay/src/ardentryst1.71.tar.gz"
MD5SUM="eccdea0817ebb5996535834b842a5046"
DOWNLOAD_x86_64=""
MD5SUM_x86_64=""
-REQUIRES="pygame"
+REQUIRES="python2-pygame"
MAINTAINER="Dimitris Zlatanidis"
-EMAIL="d.zlatanidis@gmail.com"
+EMAIL="dslackw@gmail.com"
diff --git a/games/armagetronad/armagetronad.SlackBuild b/games/armagetronad/armagetronad.SlackBuild
index 2ad2a6dc2c..40f3cc31c2 100644
--- a/games/armagetronad/armagetronad.SlackBuild
+++ b/games/armagetronad/armagetronad.SlackBuild
@@ -1,6 +1,6 @@
-#!/bin/sh
+#!/bin/bash
-# Copyright 2010-2020 Matteo Bernardini <ponce@slackbuilds.org>, Pisa, Italy
+# Copyright 2010-2021 Matteo Bernardini <ponce@slackbuilds.org>, Pisa, Italy
# based on the hollywoodb's one on 12.2 repository
# All rights reserved.
#
@@ -21,10 +21,17 @@
# OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF THIS SOFTWARE, EVEN IF
# ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
+# 20220408 bkw: Modified by SlackBuilds.org, BUILD=2:
+# - remove 0-byte ChangeLog.
+# - add gtk-update-icon-cache to doinst.sh.
+
+cd $(dirname $0) ; CWD=$(pwd)
+
PRGNAM=armagetronad
-VERSION=${VERSION:-0.2.9.0.1}
-BUILD=${BUILD:-1}
+VERSION=${VERSION:-0.2.9.1.0}
+BUILD=${BUILD:-2}
TAG=${TAG:-_SBo}
+PKGTYPE=${PKGTYPE:-tgz}
if [ -z "$ARCH" ]; then
case "$( uname -m )" in
@@ -34,7 +41,11 @@ if [ -z "$ARCH" ]; then
esac
fi
-CWD=$(pwd)
+if [ ! -z "${PRINT_PACKAGE_NAME}" ]; then
+ echo "$PRGNAM-$VERSION-$ARCH-$BUILD$TAG.$PKGTYPE"
+ exit 0
+fi
+
TMP=${TMP:-/tmp/SBo}
PKG=$TMP/package-$PRGNAM
OUTPUT=${OUTPUT:-/tmp}
@@ -64,9 +75,9 @@ cd $PRGNAM-v$VERSION
chown -R root:root .
find -L . \
\( -perm 777 -o -perm 775 -o -perm 750 -o -perm 711 -o -perm 555 \
- -o -perm 511 \) -exec chmod 755 {} \; -o \
+ -o -perm 511 \) -exec chmod 755 {} \+ -o \
\( -perm 666 -o -perm 664 -o -perm 640 -o -perm 600 -o -perm 444 \
- -o -perm 440 -o -perm 400 \) -exec chmod 644 {} \;
+ -o -perm 440 -o -perm 400 \) -exec chmod 644 {} \+
./bootstrap.sh
@@ -108,31 +119,29 @@ find $PKG | xargs file | grep -e "executable" -e "shared object" | grep ELF \
| cut -f 1 -d : | xargs strip --strip-unneeded 2> /dev/null || true
mv $PKG/usr/doc/$PRGNAM $PKG/usr/doc/$PRGNAM-$VERSION
-cp -a AUTHORS COPYING ChangeLog INSTALL NEWS README* $PKG/usr/doc/$PRGNAM-$VERSION
+cp -a AUTHORS COPYING NEWS README* $PKG/usr/doc/$PRGNAM-$VERSION
cat $CWD/$PRGNAM.SlackBuild > $PKG/usr/doc/$PRGNAM-$VERSION/$PRGNAM.SlackBuild
rm -rf $PKG/etc/rc.d
-# don't overwrite old configs
-CONFIGS="aiplayers.cfg \
- default.cfg \
- settings.cfg \
- settings_authentication.cfg \
- settings_dedicated.cfg \
- settings_visual.cfg"
-for config in $CONFIGS ;
-do
- mv $PKG/etc/$PRGNAM/$config $PKG/etc/$PRGNAM/$config.new ;
-done
-
-# fix .desktop file
+# fix .desktop file and icons
mkdir $PKG/usr/share/applications
-mv $PKG/usr/share/games/$PRGNAM/desktop/$PRGNAM.desktop $PKG/usr/share/applications
-install -D -m 0644 $PKG/usr/share/games/armagetronad/desktop/icons/large/armagetronad.png \
- $PKG/usr/share/pixmaps/armagetronad.png
+install -D -m 0644 desktop/$PRGNAM.desktop \
+ $PKG/usr/share/applications/$PRGNAM.desktop
+install -D -m 0644 desktop/icons/48x48/$PRGNAM.png \
+ $PKG/usr/share/pixmaps/$PRGNAM.png
+for i in 16 32 48 ; do
+ install -D -m 0644 desktop/icons/${i}x${i}/$PRGNAM.png \
+ $PKG/usr/share/icons/hicolor/${i}x${i}/apps/
+done
mkdir -p $PKG/install
cat $CWD/slack-desc > $PKG/install/slack-desc
cat $CWD/doinst.sh > $PKG/install/doinst.sh
+# don't overwrite old configs
+for config in aiplayers default settings settings_authentication settings_dedicated settings_visual ; do
+ mv $PKG/etc/$PRGNAM/$config.cfg $PKG/etc/$PRGNAM/$config.cfg.new
+ echo "config etc/$PRGNAM/$config.cfg.new" >> $PKG/install/doinst.sh
+done
cd $PKG
-/sbin/makepkg -l y -c n -p $OUTPUT/$PRGNAM-$VERSION-$ARCH-$BUILD$TAG.${PKGTYPE:-tgz}
+/sbin/makepkg -l y -c n -p $OUTPUT/$PRGNAM-$VERSION-$ARCH-$BUILD$TAG.$PKGTYPE
diff --git a/games/armagetronad/armagetronad.info b/games/armagetronad/armagetronad.info
index ad5ac82483..5dc8bee167 100644
--- a/games/armagetronad/armagetronad.info
+++ b/games/armagetronad/armagetronad.info
@@ -1,10 +1,10 @@
PRGNAM="armagetronad"
-VERSION="0.2.9.0.1"
+VERSION="0.2.9.1.0"
HOMEPAGE="http://www.armagetronad.org"
-DOWNLOAD="https://gitlab.com/armagetronad/armagetronad/-/archive/v0.2.9.0.1/armagetronad-v0.2.9.0.1.tar.bz2"
-MD5SUM="beeb72db9409fac3d9d4175a43a22a7f"
+DOWNLOAD="https://gitlab.com/armagetronad/armagetronad/-/archive/v0.2.9.1.0/armagetronad-v0.2.9.1.0.tar.bz2"
+MD5SUM="0c55c7ec2996daa2e834342d631e434d"
DOWNLOAD_x86_64=""
MD5SUM_x86_64=""
-REQUIRES="ftgl protobuf"
+REQUIRES="ftgl protobuf3"
MAINTAINER="Matteo Bernardini"
EMAIL="ponce@slackbuilds.org"
diff --git a/games/armagetronad/doinst.sh b/games/armagetronad/doinst.sh
index ad4ad7c914..0bd54d40c6 100644
--- a/games/armagetronad/doinst.sh
+++ b/games/armagetronad/doinst.sh
@@ -1,27 +1,19 @@
config() {
NEW="$1"
OLD="$(dirname $NEW)/$(basename $NEW .new)"
- # If there's no config file by that name, mv it over:
if [ ! -r $OLD ]; then
mv $NEW $OLD
elif [ "$(cat $OLD | md5sum)" = "$(cat $NEW | md5sum)" ]; then
- # toss the redundant copy
rm $NEW
fi
- # Otherwise, we leave the .new copy for the admin to consider...
}
if [ -x /usr/bin/update-desktop-database ]; then
/usr/bin/update-desktop-database -q usr/share/applications >/dev/null 2>&1
fi
-CONFIGS="aiplayers.cfg \
- default.cfg \
- settings.cfg \
- settings_authentication.cfg \
- settings_dedicated.cfg \
- settings_visual.cfg"
-for config in $CONFIGS ;
-do
- config etc/armagetronad/$config.new ;
-done
+if [ -e usr/share/icons/hicolor/icon-theme.cache ]; then
+ if [ -x /usr/bin/gtk-update-icon-cache ]; then
+ /usr/bin/gtk-update-icon-cache usr/share/icons/hicolor >/dev/null 2>&1
+ fi
+fi
diff --git a/games/arnold-cpc/arnold-cpc.SlackBuild b/games/arnold-cpc/arnold-cpc.SlackBuild
index 545b6ba4dc..1b72bb0e4e 100644
--- a/games/arnold-cpc/arnold-cpc.SlackBuild
+++ b/games/arnold-cpc/arnold-cpc.SlackBuild
@@ -1,4 +1,4 @@
-#!/bin/sh
+#!/bin/bash
# Slackware build script for arnold-cpc
@@ -22,10 +22,20 @@
# OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF THIS SOFTWARE, EVEN IF
# ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
+# 20220407 bkw: Modified by SlackBuilds.org, BUILD=2:
+# - don't install an extra copy of the binary in /usr/doc.
+
+# 20220219 bkw: Modified by SlackBuilds.org:
+# - fix 15.0 build.
+# - absolute path to icon in .desktop file (because it's not in /usr/share/icons).
+
+cd $(dirname $0) ; CWD=$(pwd)
+
PRGNAM=arnold-cpc
VERSION=${VERSION:-2009.03.17}
-BUILD=${BUILD:-1}
+BUILD=${BUILD:-2}
TAG=${TAG:-_SBo}
+PKGTYPE=${PKGTYPE:-tgz}
SRCVER=$(echo $VERSION | tr . -)
SRCDIR=$(echo $PRGNAM | cut -c1-6)
@@ -39,7 +49,11 @@ if [ -z "$ARCH" ]; then
esac
fi
-CWD=$(pwd)
+if [ ! -z "${PRINT_PACKAGE_NAME}" ]; then
+ echo "$PRGNAM-$VERSION-$ARCH-$BUILD$TAG.$PKGTYPE"
+ exit 0
+fi
+
TMP=${TMP:-/tmp/SBo}
PKG=$TMP/package-$PRGNAM
OUTPUT=${OUTPUT:-/tmp}
@@ -69,12 +83,14 @@ cd $SRCDIR
chown -R root:root .
find -L . \
\( -perm 777 -o -perm 775 -o -perm 750 -o -perm 711 -o -perm 555 \
- -o -perm 511 \) -exec chmod 755 {} \; -o \
+ -o -perm 511 \) -exec chmod 755 {} \+ -o \
\( -perm 666 -o -perm 664 -o -perm 640 -o -perm 600 -o -perm 444 \
- -o -perm 440 -o -perm 400 \) -exec chmod 644 {} \;
+ -o -perm 440 -o -perm 400 \) -exec chmod 644 {} \+
cd src
+SLKCFLAGS+=" -fcommon"
+
CFLAGS="$SLKCFLAGS" \
CXXFLAGS="$SLKCFLAGS" \
./configure \
@@ -89,14 +105,11 @@ CXXFLAGS="$SLKCFLAGS" \
make # compile source
# no make install support here
-find $PKG -print0 | xargs -0 file | grep -e "executable" -e "shared object" | grep ELF \
- | cut -f 1 -d : | xargs strip --strip-unneeded 2> /dev/null || true
-
cd ..
# install executable
mkdir -p $PKG/usr/bin
-install -D -m0755 $SRCDIR $PKG/usr/bin/$SRCDIR
+install -s -D -m0755 $SRCDIR $PKG/usr/bin/$SRCDIR
# install .desktop file created for this script
mkdir -p $PKG/usr/share/applications
@@ -108,7 +121,7 @@ mkdir -p $PKG/usr/share/pixmaps/
install -D -m644 ${PRGNAM}-0.png $PKG/usr/share/pixmaps/$PRGNAM.png
mkdir -p $PKG/usr/doc/$PRGNAM-$VERSION
-cp -a README.FIRST arnold* readme* whatsnew* docs/* $PKG/usr/doc/$PRGNAM-$VERSION
+cp -a README.FIRST arnold{-,_}* readme* whatsnew* docs/* $PKG/usr/doc/$PRGNAM-$VERSION
cat $CWD/$PRGNAM.SlackBuild > $PKG/usr/doc/$PRGNAM-$VERSION/$PRGNAM.SlackBuild
mkdir -p $PKG/install
@@ -116,4 +129,4 @@ cat $CWD/slack-desc > $PKG/install/slack-desc
cat $CWD/doinst.sh > $PKG/install/doinst.sh
cd $PKG
-/sbin/makepkg -l y -c n $OUTPUT/$PRGNAM-$VERSION-$ARCH-$BUILD$TAG.${PKGTYPE:-tgz}
+/sbin/makepkg -l y -c n $OUTPUT/$PRGNAM-$VERSION-$ARCH-$BUILD$TAG.$PKGTYPE
diff --git a/games/arnold-cpc/arnold-cpc.desktop b/games/arnold-cpc/arnold-cpc.desktop
index 0ca8d17a36..08b6b7a746 100644
--- a/games/arnold-cpc/arnold-cpc.desktop
+++ b/games/arnold-cpc/arnold-cpc.desktop
@@ -2,7 +2,7 @@
Name=Arnold CPC
Comment=Amstrad CPC emulator using SDL with a GTK+ interface
Exec=arnold
-Icon=arnold-cpc
+Icon=/usr/share/pixmaps/arnold-cpc.png
Terminal=false
Type=Application
Categories=Game;Emulator;
diff --git a/games/arx-libertatis/arx-libertatis-1.1.2-cmake3.5.patch b/games/arx-libertatis/arx-libertatis-1.1.2-cmake3.5.patch
deleted file mode 100644
index 98f05e38cf..0000000000
--- a/games/arx-libertatis/arx-libertatis-1.1.2-cmake3.5.patch
+++ /dev/null
@@ -1,12 +0,0 @@
-diff -up ./cmake/VersionString.cmake.orig ./cmake/VersionString.cmake
---- ./cmake/VersionString.cmake.orig 2016-03-22 19:18:55.656290322 +0200
-+++ ./cmake/VersionString.cmake 2016-03-22 19:19:08.239813098 +0200
-@@ -33,7 +33,7 @@ function(version_file SRC DST VERSION_SO
-
- foreach(arg IN LISTS VERSION_SOURCES)
-
-- if(mode STREQUAL "variable")
-+ if("${mode}" STREQUAL "variable")
- set(mode "file")
- else()
- get_filename_component(arg "${arg}" ABSOLUTE)
diff --git a/games/arx-libertatis/arx-libertatis.SlackBuild b/games/arx-libertatis/arx-libertatis.SlackBuild
index 4ea8ad7a4f..b19ee4f364 100644
--- a/games/arx-libertatis/arx-libertatis.SlackBuild
+++ b/games/arx-libertatis/arx-libertatis.SlackBuild
@@ -1,8 +1,8 @@
-#!/bin/sh
+#!/bin/bash
# Slackware build script for arx-libertatis
-# Copyright 2014-2016 Dimitris Zlatanidis Orestiada, Greece
+# Copyright 2014-2023 Dimitris Zlatanidis Orestiada, Greece
# All rights reserved.
#
# Redistribution and use of this script, with or without modification, is
@@ -22,10 +22,16 @@
# OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF THIS SOFTWARE, EVEN IF
# ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
+# 20220408 bkw: Modified by SlackBuilds.org, BUILD=2:
+# - add gtk-update-icon-cache to doinst.sh.
+
+cd $(dirname $0) ; CWD=$(pwd)
+
PRGNAM=arx-libertatis
-VERSION=${VERSION:-1.1.2}
-BUILD=${BUILD:-1}
+VERSION=${VERSION:-1.2.1}
+BUILD=${BUILD:-2}
TAG=${TAG:-_SBo}
+PKGTYPE=${PKGTYPE:-tgz}
if [ -z "$ARCH" ]; then
case "$( uname -m )" in
@@ -35,7 +41,11 @@ if [ -z "$ARCH" ]; then
esac
fi
-CWD=$(pwd)
+if [ ! -z "${PRINT_PACKAGE_NAME}" ]; then
+ echo "$PRGNAM-$VERSION-$ARCH-$BUILD$TAG.$PKGTYPE"
+ exit 0
+fi
+
TMP=${TMP:-/tmp/SBo}
PKG=$TMP/package-$PRGNAM
OUTPUT=${OUTPUT:-/tmp}
@@ -65,12 +75,9 @@ cd $PRGNAM-$VERSION
chown -R root:root .
find -L . \
\( -perm 777 -o -perm 775 -o -perm 750 -o -perm 711 -o -perm 555 \
- -o -perm 511 \) -exec chmod 755 {} \; -o \
+ -o -perm 511 \) -exec chmod 755 {} \+ -o \
\( -perm 666 -o -perm 664 -o -perm 640 -o -perm 600 -o -perm 444 \
- -o -perm 440 -o -perm 400 \) -exec chmod 644 {} \;
-
-# Fix build with cmake3.5 (patch thanks to Mageia)
-patch -p1 < $CWD/arx-libertatis-1.1.2-cmake3.5.patch
+ -o -perm 440 -o -perm 400 \) -exec chmod 644 {} \+
mkdir -p build
cd build
@@ -97,7 +104,7 @@ find $PKG/usr/man -type f -exec gzip -9 {} \;
for i in $( find $PKG/usr/man -type l ) ; do ln -s $( readlink $i ).gz $i.gz ; rm $i ; done
mkdir -p $PKG/usr/doc/$PRGNAM-$VERSION
-cp -a ARX_PUBLIC_LICENSE.txt AUTHORS CHANGELOG *.md VERSION $PKG/usr/doc/$PRGNAM-$VERSION
+cp -a LICENSE* AUTHORS CHANGELOG *.md COPYING VERSION $PKG/usr/doc/$PRGNAM-$VERSION
cat $CWD/$PRGNAM.SlackBuild > $PKG/usr/doc/$PRGNAM-$VERSION/$PRGNAM.SlackBuild
mkdir -p $PKG/install
@@ -105,4 +112,4 @@ cat $CWD/slack-desc > $PKG/install/slack-desc
cat $CWD/doinst.sh > $PKG/install/doinst.sh
cd $PKG
-/sbin/makepkg -l y -c n $OUTPUT/$PRGNAM-$VERSION-$ARCH-$BUILD$TAG.${PKGTYPE:-tgz}
+/sbin/makepkg -l y -c n $OUTPUT/$PRGNAM-$VERSION-$ARCH-$BUILD$TAG.$PKGTYPE
diff --git a/games/arx-libertatis/arx-libertatis.info b/games/arx-libertatis/arx-libertatis.info
index f0955d2d2b..76cc5b9738 100644
--- a/games/arx-libertatis/arx-libertatis.info
+++ b/games/arx-libertatis/arx-libertatis.info
@@ -1,10 +1,10 @@
PRGNAM="arx-libertatis"
-VERSION="1.1.2"
+VERSION="1.2.1"
HOMEPAGE="http://arx-libertatis.org"
-DOWNLOAD="http://downloads.sourceforge.net/project/arx/arx-libertatis-1.1.2/arx-libertatis-1.1.2.tar.xz"
-MD5SUM="543dfdaaaaf7c337227c1b6a3087589a"
+DOWNLOAD="https://arx-libertatis.org/files/arx-libertatis-1.2.1.tar.xz"
+MD5SUM="e5bc9482dada975b6b8a2dc5451f3671"
DOWNLOAD_x86_64=""
MD5SUM_x86_64=""
-REQUIRES="OpenAL zenity"
+REQUIRES="glm"
MAINTAINER="Dimitris Zlatanidis"
EMAIL="d.zlatanidis@gmail.com"
diff --git a/games/arx-libertatis/doinst.sh b/games/arx-libertatis/doinst.sh
index 5fb28930db..3e5691a052 100644
--- a/games/arx-libertatis/doinst.sh
+++ b/games/arx-libertatis/doinst.sh
@@ -1,3 +1,9 @@
if [ -x /usr/bin/update-desktop-database ]; then
/usr/bin/update-desktop-database -q usr/share/applications >/dev/null 2>&1
fi
+
+if [ -e usr/share/icons/hicolor/icon-theme.cache ]; then
+ if [ -x /usr/bin/gtk-update-icon-cache ]; then
+ /usr/bin/gtk-update-icon-cache usr/share/icons/hicolor >/dev/null 2>&1
+ fi
+fi
diff --git a/games/asc/asc.SlackBuild b/games/asc/asc.SlackBuild
index 82415dea1f..739fbb9009 100644
--- a/games/asc/asc.SlackBuild
+++ b/games/asc/asc.SlackBuild
@@ -1,4 +1,4 @@
-#!/bin/sh
+#!/bin/bash
# Slackware build script for asc
@@ -25,10 +25,13 @@
# 20200906 bkw: modified by SlackBuilds.org: added patch to support
# physfs 3.0.1.
+cd $(dirname $0) ; CWD=$(pwd)
+
PRGNAM=asc
VERSION=${VERSION:-2.6.1.0}
BUILD=${BUILD:-2}
TAG=${TAG:-_SBo}
+PKGTYPE=${PKGTYPE:-tgz}
if [ -z "$ARCH" ]; then
case "$( uname -m )" in
@@ -38,7 +41,14 @@ if [ -z "$ARCH" ]; then
esac
fi
-CWD=$(pwd)
+# If the variable PRINT_PACKAGE_NAME is set, then this script will report what
+# the name of the created package would be, and then exit. This information
+# could be useful to other scripts.
+if [ ! -z "${PRINT_PACKAGE_NAME}" ]; then
+ echo "$PRGNAM-$VERSION-$ARCH-$BUILD$TAG.$PKGTYPE"
+ exit 0
+fi
+
TMP=${TMP:-/tmp/SBo}
PKG=$TMP/package-$PRGNAM
OUTPUT=${OUTPUT:-/tmp}
@@ -80,7 +90,7 @@ convert data/icon_asc.gif $PRGNAM.png
CXX="g++ -std=c++11" \
CFLAGS="$SLKCFLAGS" \
-CXXFLAGS="$SLKCFLAGS" \
+CXXFLAGS="$SLKCFLAGS -Wno-narrowing" \
./configure \
--prefix=/usr \
--sysconfdir=/etc \
@@ -113,4 +123,4 @@ cat $CWD/slack-desc > $PKG/install/slack-desc
cat $CWD/doinst.sh > $PKG/install/doinst.sh
cd $PKG
-/sbin/makepkg -l y -c n $OUTPUT/$PRGNAM-$VERSION-$ARCH-$BUILD$TAG.${PKGTYPE:-tgz}
+/sbin/makepkg -l y -c n $OUTPUT/$PRGNAM-$VERSION-$ARCH-$BUILD$TAG.$PKGTYPE
diff --git a/games/asc/asc.info b/games/asc/asc.info
index 595474d67c..ec8227639c 100644
--- a/games/asc/asc.info
+++ b/games/asc/asc.info
@@ -5,6 +5,6 @@ DOWNLOAD="https://downloads.sourceforge.net/project/asc-hq/ASC%20Source/2.6.1/as
MD5SUM="b8668c378e730e982458d5c082e7e0ca"
DOWNLOAD_x86_64=""
MD5SUM_x86_64=""
-REQUIRES="lua wxPython physfs SDL_sound"
+REQUIRES="lua wxPython physfs"
MAINTAINER="Dimitris Zlatanidis"
EMAIL="d.zlatanidis@gmail.com"
diff --git a/games/asciijump/asciijump.SlackBuild b/games/asciijump/asciijump.SlackBuild
index 746ca7cce0..b0c6c18591 100644
--- a/games/asciijump/asciijump.SlackBuild
+++ b/games/asciijump/asciijump.SlackBuild
@@ -1,11 +1,14 @@
-#!/bin/sh
+#!/bin/bash
# Slackware build script for asciijump
# Written by Dan-Simon Myrland <dansimon@radiotube.org>
+cd $(dirname $0) ; CWD=$(pwd)
+
PRGNAM=asciijump
VERSION=${VERSION:-1.0.2~beta}
BUILD=${BUILD:-1}
TAG=${TAG:-_SBo}
+PKGTYPE=${PKGTYPE:-tgz}
if [ -z "$ARCH" ]; then
case "$( uname -m )" in
@@ -15,7 +18,14 @@ if [ -z "$ARCH" ]; then
esac
fi
-CWD=$(pwd)
+# If the variable PRINT_PACKAGE_NAME is set, then this script will report what
+# the name of the created package would be, and then exit. This information
+# could be useful to other scripts.
+if [ ! -z "${PRINT_PACKAGE_NAME}" ]; then
+ echo "$PRGNAM-$VERSION-$ARCH-$BUILD$TAG.$PKGTYPE"
+ exit 0
+fi
+
TMP=${TMP:-/tmp/SBo}
PKG=$TMP/package-$PRGNAM
OUTPUT=${OUTPUT:-/tmp}
@@ -78,4 +88,4 @@ cat $CWD/slack-desc > $PKG/install/slack-desc
cat $CWD/doinst.sh > $PKG/install/doinst.sh
cd $PKG
-/sbin/makepkg -l y -c n $OUTPUT/$PRGNAM-$VERSION-$ARCH-$BUILD$TAG.${PKGTYPE:-tgz}
+/sbin/makepkg -l y -c n $OUTPUT/$PRGNAM-$VERSION-$ARCH-$BUILD$TAG.$PKGTYPE
diff --git a/games/assaultcube-reloaded/assaultcube-reloaded.SlackBuild b/games/assaultcube-reloaded/assaultcube-reloaded.SlackBuild
index a5489a3383..ddaf08d934 100644
--- a/games/assaultcube-reloaded/assaultcube-reloaded.SlackBuild
+++ b/games/assaultcube-reloaded/assaultcube-reloaded.SlackBuild
@@ -1,8 +1,8 @@
-#!/bin/sh
+#!/bin/bash
# Slackware build script for assaultcube-reloaded
-# Copyright 2015-2019 Dimitris Zlatanidis Orestiada, Greece
+# Copyright 2015-2024 Dimitris Zlatanidis Orestiada, Greece
# All rights reserved.
#
# Redistribution and use of this script, with or without modification, is
@@ -22,11 +22,14 @@
# OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF THIS SOFTWARE, EVEN IF
# ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
+cd $(dirname $0) ; CWD=$(pwd)
+
PRGNAM=assaultcube-reloaded
SRCNAM=acr
-VERSION=${VERSION:-2.7}
+VERSION=${VERSION:-2.18.2}
BUILD=${BUILD:-1}
TAG=${TAG:-_SBo}
+PKGTYPE=${PKGTYPE:-tgz}
if [ -z "$ARCH" ]; then
case "$( uname -m )" in
@@ -36,7 +39,11 @@ if [ -z "$ARCH" ]; then
esac
fi
-CWD=$(pwd)
+if [ ! -z "${PRINT_PACKAGE_NAME}" ]; then
+ echo "$PRGNAM-$VERSION-$ARCH-$BUILD$TAG.$PKGTYPE"
+ exit 0
+fi
+
TMP=${TMP:-/tmp/SBo}
PKG=$TMP/package-$PRGNAM
OUTPUT=${OUTPUT:-/tmp}
@@ -61,27 +68,27 @@ rm -rf $PKG
mkdir -p $TMP $PKG $OUTPUT
cd $TMP
rm -rf $SRCNAM-$VERSION
-tar xvf $CWD/$SRCNAM-$VERSION.tar.gz || tar xvf $CWD/v$VERSION.tar.gz
+tar xvf $CWD/$SRCNAM-$VERSION.tar.gz
cd $SRCNAM-$VERSION
chown -R root:root .
find -L . \
\( -perm 777 -o -perm 775 -o -perm 750 -o -perm 711 -o -perm 555 \
- -o -perm 511 \) -exec chmod 755 {} \; -o \
+ -o -perm 511 \) -exec chmod 755 {} \+ -o \
\( -perm 666 -o -perm 664 -o -perm 640 -o -perm 600 -o -perm 444 \
- -o -perm 440 -o -perm 400 \) -exec chmod 644 {} \;
+ -o -perm 440 -o -perm 400 \) -exec chmod 644 {} \+
cd source/src/
make
make install DESTDIR=$PKG
cd -
-find $PKG -print0 | xargs -0 file | grep -e "executable" -e "shared object" | grep ELF \
- | cut -f 1 -d : | xargs strip --strip-unneeded 2> /dev/null || true
-
# install data
mkdir -p $PKG/usr/share/games/$PRGNAM $PKG/usr/bin
cp -rf bin_unix acr bot config packages $PKG/usr/share/games/$PRGNAM
+find $PKG -print0 | xargs -0 file | grep -e "executable" -e "shared object" | grep ELF \
+ | cut -f 1 -d : | xargs strip --strip-unneeded 2> /dev/null || true
+
# enable server configuration file
# more information http://acreloaded.wikia.com/wiki/Server_Guide
cp $PKG/usr/share/games/$PRGNAM/config/default.servercmdline.txt \
@@ -110,4 +117,4 @@ cat $CWD/slack-desc > $PKG/install/slack-desc
cat $CWD/doinst.sh > $PKG/install/doinst.sh
cd $PKG
-/sbin/makepkg -l y -c n $OUTPUT/$PRGNAM-$VERSION-$ARCH-$BUILD$TAG.${PKGTYPE:-tgz}
+/sbin/makepkg -l y -c n $OUTPUT/$PRGNAM-$VERSION-$ARCH-$BUILD$TAG.$PKGTYPE
diff --git a/games/assaultcube-reloaded/assaultcube-reloaded.info b/games/assaultcube-reloaded/assaultcube-reloaded.info
index 2d6cfc3af1..daab008961 100644
--- a/games/assaultcube-reloaded/assaultcube-reloaded.info
+++ b/games/assaultcube-reloaded/assaultcube-reloaded.info
@@ -1,10 +1,10 @@
PRGNAM="assaultcube-reloaded"
-VERSION="2.7"
+VERSION="2.18.2"
HOMEPAGE="https://acr.victorz.ca/"
-DOWNLOAD="https://github.com/acreloaded/acr/archive/v2.7/acr-2.7.tar.gz"
-MD5SUM="8ef9f42706153f4d60a918a0f892d811"
+DOWNLOAD="https://github.com/acreloaded/acr/archive/v2.18.2/acr-2.18.2.tar.gz"
+MD5SUM="6ee80508b35cc0ea1d8b44f537f9b32c"
DOWNLOAD_x86_64=""
MD5SUM_x86_64=""
-REQUIRES="OpenAL enet"
+REQUIRES=""
MAINTAINER="Dimitris Zlatanidis"
-EMAIL="d.zlatanidis@gmail.com"
+EMAIL="dslackw@gmail.com"
diff --git a/games/assaultcube/assaultcube-gcc6.patch b/games/assaultcube/assaultcube-gcc6.patch
new file mode 100644
index 0000000000..521372ee9d
--- /dev/null
+++ b/games/assaultcube/assaultcube-gcc6.patch
@@ -0,0 +1,301 @@
+From 752950989b4e286459ca9aee3d61a868d7b20fa4 Mon Sep 17 00:00:00 2001
+From: ac-stef <ac_stef@users.sf.net>
+Date: Sat, 27 Feb 2016 21:28:23 +0100
+Subject: [PATCH] fix some errors and warnings for GCC 6
+
+* do not use std::abs() because math.h includes one, that converts ints
+ to double. Use own iabs(), which directly uses labs() instead.
+* don't use the word "gamma" as name for variables
+* don't use a homebrew round() function
+---
+ source/src/bot/bot_waypoint.cpp | 12 ++++++------
+ source/src/command.cpp | 2 +-
+ source/src/command.h | 1 +
+ source/src/crypto.cpp | 2 +-
+ source/src/editing.cpp | 6 +++---
+ source/src/entity.h | 2 +-
+ source/src/main.cpp | 8 ++++----
+ source/src/platform.h | 9 +--------
+ source/src/protos.h | 3 ++-
+ source/src/rendercubes.cpp | 8 ++++----
+ source/src/rendertext.cpp | 4 ++--
+ source/src/tools.h | 3 +--
+ source/src/world.cpp | 6 +++---
+ source/src/worldocull.cpp | 2 +-
+ source/src/worldrender.cpp | 4 ++--
+ 15 files changed, 33 insertions(+), 39 deletions(-)
+
+diff --git a/source/src/bot/bot_waypoint.cpp b/source/src/bot/bot_waypoint.cpp
+index 520c686..7b265ef 100644
+--- a/source/src/bot/bot_waypoint.cpp
++++ b/source/src/bot/bot_waypoint.cpp
+@@ -1221,7 +1221,7 @@ void CWaypointClass::CalcCost(node_s *pNode)
+ flCost += (1.0f-flFraction)*0.5f;
+ }
+
+- if ((abs(a) > 4) || (abs(b) > 4)) continue;
++ if ((iabs(a) > 4) || (iabs(b) > 4)) continue;
+
+ vec from = to;
+ to.z -= (JUMP_HEIGHT - 1.0f);
+@@ -1249,7 +1249,7 @@ void CWaypointClass::CalcCost(node_s *pNode)
+ flCost += (1.0f-flFraction)*0.5f;
+ }
+
+- if ((abs(a) > 4) || (abs(b) > 4)) continue;
++ if ((iabs(a) > 4) || (iabs(b) > 4)) continue;
+
+ vec from = to;
+ to.z -= (JUMP_HEIGHT - 1.0f);
+@@ -1671,12 +1671,12 @@ node_s *CWaypointClass::GetNearestTriggerFloodWP(vec v_origin, float flRange)
+ void CWaypointClass::GetNodeIndexes(const vec &v_origin, short *i, short *j)
+ {
+ // Function code by cheesy and PMB
+- //*i = abs((int)((int)(v_origin.x + (2*ssize)) / SECTOR_SIZE));
+- //*j = abs((int)((int)(v_origin.y + (2*ssize)) / SECTOR_SIZE));
++ //*i = iabs((int)((int)(v_origin.x + (2*ssize)) / SECTOR_SIZE));
++ //*j = iabs((int)((int)(v_origin.y + (2*ssize)) / SECTOR_SIZE));
+ //*i = (int)((v_origin.x) / ssize * MAX_MAP_GRIDS);
+ //*j = (int)((v_origin.y) / ssize * MAX_MAP_GRIDS);
+- *i = abs((int)((v_origin.x) / MAX_MAP_GRIDS));
+- *j = abs((int)((v_origin.y) / MAX_MAP_GRIDS));
++ *i = iabs((int)((v_origin.x) / MAX_MAP_GRIDS));
++ *j = iabs((int)((v_origin.y) / MAX_MAP_GRIDS));
+
+ if (*i > MAX_MAP_GRIDS - 1)
+ *i = MAX_MAP_GRIDS - 1;
+diff --git a/source/src/command.cpp b/source/src/command.cpp
+index 668f3bf..2a5c90d 100644
+--- a/source/src/command.cpp
++++ b/source/src/command.cpp
+@@ -499,7 +499,7 @@ char *executeret(const char *p) // all evaluation hap
+ if(lc<=seer_t1.length())
+ {
+ int dt = seer_t1[seer_index] - seer_t1[lc];
+- if(abs(dt)<2)
++ if(iabs(dt)<2)
+ {
+ conoutf("SCRIPT EXECUTION warning [%d:%s]", &p, p);
+ seer_t2.add(seer_t1[seer_index]);
+diff --git a/source/src/command.h b/source/src/command.h
+index a3ca68a..2a3de0c 100644
+--- a/source/src/command.h
++++ b/source/src/command.h
+@@ -86,6 +86,7 @@ enum { IEXC_CORE = 0, IEXC_CFG, IEXC_PROMPT, IEXC_MAPCFG, IEXC_MDLCFG, IEXC_NUM
+ #define VARNP(name, global, min, cur, max) int global = variable(#name, min, cur, max, &global, NULL, true)
+ #define VARF(name, min, cur, max, body) extern int name; void var_##name() { body; } int name = variable(#name, min, cur, max, &name, var_##name, false)
+ #define VARFP(name, min, cur, max, body) extern int name; void var_##name() { body; } int name = variable(#name, min, cur, max, &name, var_##name, true)
++#define VARNFP(name, global, min, cur, max, body) extern int global; void var_##name() { body; } int global = variable(#name, min, cur, max, &global, var_##name, true)
+
+ #define FVARP(name, min, cur, max) float name = fvariable(#name, min, cur, max, &name, NULL, true)
+ #define FVAR(name, min, cur, max) float name = fvariable(#name, min, cur, max, &name, NULL, false)
+diff --git a/source/src/crypto.cpp b/source/src/crypto.cpp
+index 44041be..0684750 100644
+--- a/source/src/crypto.cpp
++++ b/source/src/crypto.cpp
+@@ -778,7 +778,7 @@ static const char *hashchunktoa(tiger::chunk h) // portable solution instead o
+ const char *genpwdhash(const char *name, const char *pwd, int salt)
+ {
+ static string temp;
+- formatstring(temp)("%s %d %s %s %d", pwd, salt, name, pwd, abs(PROTOCOL_VERSION));
++ formatstring(temp)("%s %d %s %s %d", pwd, salt, name, pwd, iabs(PROTOCOL_VERSION));
+ tiger::hashval hash;
+ tiger::hash((uchar *)temp, (int)strlen(temp), hash);
+ formatstring(temp)("%s %s %s", hashchunktoa(hash.chunks[0]), hashchunktoa(hash.chunks[1]), hashchunktoa(hash.chunks[2]));
+diff --git a/source/src/editing.cpp b/source/src/editing.cpp
+index 8d5e1ff..745aa98 100644
+--- a/source/src/editing.cpp
++++ b/source/src/editing.cpp
+@@ -137,11 +137,11 @@ void checkselections()
+ void makesel(bool isnew)
+ {
+ block &cursel = sels.last(); //RR 10/12/12 - FIXEME, error checking should happen with "isnew", not here checking if it really is new.
+- if(isnew || sels.length() == 0) addselection(min(lastx, cx), min(lasty, cy), abs(lastx-cx)+1, abs(lasty-cy)+1, max(lasth, ch));
++ if(isnew || sels.length() == 0) addselection(min(lastx, cx), min(lasty, cy), iabs(lastx-cx)+1, iabs(lasty-cy)+1, max(lasth, ch));
+ else
+ {
+ cursel.x = min(lastx, cx); cursel.y = min(lasty, cy);
+- cursel.xs = abs(lastx-cx)+1; cursel.ys = abs(lasty-cy)+1;
++ cursel.xs = iabs(lastx-cx)+1; cursel.ys = iabs(lasty-cy)+1;
+ cursel.h = max(lasth, ch);
+ correctsel(cursel);
+ }
+@@ -849,7 +849,7 @@ void movemap(int xo, int yo, int zo) // move whole map
+ }
+ if(xo || yo)
+ {
+- block b = { max(-xo, 0), max(-yo, 0), ssize - abs(xo), ssize - abs(yo) }, *cp = blockcopy(b);
++ block b = { max(-xo, 0), max(-yo, 0), ssize - iabs(xo), ssize - iabs(yo) }, *cp = blockcopy(b);
+ cp->x = max(xo, 0);
+ cp->y = max(yo, 0);
+ blockpaste(*cp);
+diff --git a/source/src/entity.h b/source/src/entity.h
+index e2ad32d..84ac385 100644
+--- a/source/src/entity.h
++++ b/source/src/entity.h
+@@ -538,7 +538,7 @@ class playerent : public dynent, public playerstate
+ {
+ const int maxskin[2] = { 4, 6 };
+ t = team_base(t < 0 ? team : t);
+- nextskin[t] = abs(s) % maxskin[t];
++ nextskin[t] = iabs(s) % maxskin[t];
+ }
+ };
+
+diff --git a/source/src/main.cpp b/source/src/main.cpp
+index 0d57c0c..c51cd74 100644
+--- a/source/src/main.cpp
++++ b/source/src/main.cpp
+@@ -519,11 +519,11 @@ void setresdata(char *s, enet_uint32 c)
+ COMMANDF(screenres, "ii", (int *w, int *h) { screenres(*w, *h); });
+
+ static int curgamma = 100;
+-VARFP(gamma, 30, 100, 300,
++VARNFP(gamma, vgamma, 30, 100, 300,
+ {
+- if(gamma == curgamma) return;
+- curgamma = gamma;
+- float f = gamma/100.0f;
++ if(vgamma == curgamma) return;
++ curgamma = vgamma;
++ float f = vgamma/100.0f;
+ if(SDL_SetGamma(f,f,f)==-1) conoutf("Could not set gamma: %s", SDL_GetError());
+ });
+
+diff --git a/source/src/platform.h b/source/src/platform.h
+index aece7e2..fd2eef1 100644
+--- a/source/src/platform.h
++++ b/source/src/platform.h
+@@ -2,14 +2,6 @@
+ #ifdef _FORTIFY_SOURCE
+ #undef _FORTIFY_SOURCE
+ #endif
+-
+- #define gamma __gamma
+-#endif
+-
+-#include <math.h>
+-
+-#ifdef __GNUC__
+- #undef gamma
+ #endif
+
+ #include <string.h>
+@@ -19,6 +11,7 @@
+ #include <ctype.h>
+ #include <time.h>
+ #include <limits.h>
++#include <math.h>
+ #ifdef __GNUC__
+ #include <new>
+ #include <signal.h>
+diff --git a/source/src/protos.h b/source/src/protos.h
+index 1c07fad..97b0ee0 100644
+--- a/source/src/protos.h
++++ b/source/src/protos.h
+@@ -1053,7 +1053,8 @@ struct servercommandline
+ {
+ demo_interm = true;
+ }
+- else if(ai > 0) maxdemos = ai; break;
++ else if(ai > 0) maxdemos = ai;
++ break;
+ }
+ case 'W': demopath = a; break;
+ case 'r': maprot = a; break;
+diff --git a/source/src/rendercubes.cpp b/source/src/rendercubes.cpp
+index 1940da8..2be7fb0 100644
+--- a/source/src/rendercubes.cpp
++++ b/source/src/rendercubes.cpp
+@@ -216,9 +216,9 @@ void render_flat(int wtex, int x, int y, int size, int h, sqr *l1, sqr *l4, sqr
+ else // continue strip
+ {
+ int lighterr = lighterror*2;
+- if((abs(ol1r-l3->r)<lighterr && abs(ol2r-l4->r)<lighterr // skip vertices if light values are close enough
+- && abs(ol1g-l3->g)<lighterr && abs(ol2g-l4->g)<lighterr
+- && abs(ol1b-l3->b)<lighterr && abs(ol2b-l4->b)<lighterr) || !wtex)
++ if((iabs(ol1r-l3->r)<lighterr && iabs(ol2r-l4->r)<lighterr // skip vertices if light values are close enough
++ && iabs(ol1g-l3->g)<lighterr && iabs(ol2g-l4->g)<lighterr
++ && iabs(ol1b-l3->b)<lighterr && iabs(ol2b-l4->b)<lighterr) || !wtex)
+ {
+ verts.setsize(verts.length()-2);
+ nquads--;
+@@ -375,7 +375,7 @@ void render_square(int wtex, float floor1, float floor2, float ceil1, float ceil
+ {
+ int lighterr = lighterror*2;
+ if((!hf && !ohf)
+- && ((abs(ol1r-l2->r)<lighterr && abs(ol1g-l2->g)<lighterr && abs(ol1b-l2->b)<lighterr) || !wtex)) // skip vertices if light values are close enough
++ && ((iabs(ol1r-l2->r)<lighterr && iabs(ol1g-l2->g)<lighterr && iabs(ol1b-l2->b)<lighterr) || !wtex)) // skip vertices if light values are close enough
+ {
+ verts.setsize(verts.length()-2);
+ nquads--;
+diff --git a/source/src/rendertext.cpp b/source/src/rendertext.cpp
+index 0ed23af..b55da4f 100644
+--- a/source/src/rendertext.cpp
++++ b/source/src/rendertext.cpp
+@@ -330,7 +330,7 @@ static void text_color(char c, char *stack, int size, int &sp, bvec color, int a
+ if(c=='r') c = stack[(sp > 0) ? --sp : sp]; // restore color
+ else if(c == 'b') { if(allowblinkingtext && !ignoreblinkingbit) stack[sp] *= -1; } // blinking text - only if allowed
+ else stack[sp] = c;
+- switch(abs(stack[sp]))
++ switch(iabs(stack[sp]))
+ {
+ case '0': color = bvec( 2, 255, 128 ); break; // green: player talk
+ case '1': color = bvec( 96, 160, 255 ); break; // blue: team chat
+@@ -380,7 +380,7 @@ static void text_color(char c, char *stack, int size, int &sp, bvec color, int a
+ //default: color = bvec( 255, 255, 255 ); break;
+ }
+ int b = (int) (sinf(lastmillis / 200.0f) * 115.0f);
+- b = stack[sp] > 0 ? 100 : min(abs(b), 100);
++ b = stack[sp] > 0 ? 100 : min(iabs(b), 100);
+ glColor4ub(color.x, color.y, color.z, (a * b) / 100);
+ }
+ }
+diff --git a/source/src/tools.h b/source/src/tools.h
+index 0aeacff..9eb5a38 100644
+--- a/source/src/tools.h
++++ b/source/src/tools.h
+@@ -54,8 +54,7 @@ static inline T min(T a, T b)
+ {
+ return a < b ? a : b;
+ }
+-
+-static inline float round(float x) { return floor(x + 0.5f); }
++inline int iabs(int n) { return labs(n); }
+
+ #define clamp(a,b,c) (max(b, min(a, c)))
+ #define rnd(x) ((int)(randomMT()&0xFFFFFF)%(x))
+diff --git a/source/src/world.cpp b/source/src/world.cpp
+index 6a1c7bb..99a70eb 100644
+--- a/source/src/world.cpp
++++ b/source/src/world.cpp
+@@ -79,9 +79,9 @@ void remip(const block &b, int level)
+ || o[i]->ceil!=o[3]->ceil
+ || o[i]->ftex!=o[3]->ftex
+ || o[i]->ctex!=o[3]->ctex
+- || abs(o[i+1]->r-o[0]->r)>lighterr // perfect mip even if light is not exactly equal
+- || abs(o[i+1]->g-o[0]->g)>lighterr
+- || abs(o[i+1]->b-o[0]->b)>lighterr
++ || iabs(o[i+1]->r-o[0]->r)>lighterr // perfect mip even if light is not exactly equal
++ || iabs(o[i+1]->g-o[0]->g)>lighterr
++ || iabs(o[i+1]->b-o[0]->b)>lighterr
+ || o[i]->utex!=o[3]->utex
+ || o[i]->wtex!=o[3]->wtex) goto c;
+ }
+diff --git a/source/src/worldrender.cpp b/source/src/worldrender.cpp
+index 8fd3104..45aa606 100644
+--- a/source/src/worldrender.cpp
++++ b/source/src/worldrender.cpp
+@@ -297,10 +297,10 @@ void distlod(int &low, int &high, int angle, float widef)
+ void render_world(float vx, float vy, float vh, float changelod, int yaw, int pitch, float fov, float fovy, int w, int h)
+ {
+ loopi(LARGEST_FACTOR) stats[i] = 0;
+- min_lod = minimap || (player1->isspectating() && player1->spectatemode == SM_OVERVIEW) ? MAX_LOD : MIN_LOD+abs(pitch)/12;
++ min_lod = minimap || (player1->isspectating() && player1->spectatemode == SM_OVERVIEW) ? MAX_LOD : MIN_LOD+iabs(pitch)/12;
+ yaw = 360-yaw;
+ float widef = fov/75.0f;
+- int cdist = abs(yaw%90-45);
++ int cdist = iabs(yaw%90-45);
+ if(cdist<7) // hack to avoid popup at high fovs at 45 yaw
+ {
+ min_lod = max(min_lod, (int)(MIN_LOD+(10-cdist)/1.0f*widef)); // less if lod worked better
diff --git a/games/assaultcube/assaultcube.SlackBuild b/games/assaultcube/assaultcube.SlackBuild
index 0f5f023de6..9af7a40f28 100644
--- a/games/assaultcube/assaultcube.SlackBuild
+++ b/games/assaultcube/assaultcube.SlackBuild
@@ -1,4 +1,4 @@
-#!/bin/sh
+#!/bin/bash
# Slackware build script for assaultcube
@@ -22,27 +22,37 @@
# OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF THIS SOFTWARE, EVEN IF
# ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
-SRCNAM=AssaultCube
+cd $(dirname $0) ; CWD=$(pwd)
+
PRGNAM=assaultcube
+SRCNAM=AssaultCube
VERSION=${VERSION:-1.2.0.2}
BUILD=${BUILD:-1}
TAG=${TAG:-_SBo}
+PKGTYPE=${PKGTYPE:-tgz}
if [ -z "$ARCH" ]; then
case "$( uname -m )" in
- i?86) ARCH=i486 ;;
+ i?86) ARCH=i586 ;;
arm*) ARCH=arm ;;
*) ARCH=$( uname -m ) ;;
esac
fi
-CWD=$(pwd)
+# If the variable PRINT_PACKAGE_NAME is set, then this script will report what
+# the name of the created package would be, and then exit. This information
+# could be useful to other scripts.
+if [ ! -z "${PRINT_PACKAGE_NAME}" ]; then
+ echo "$PRGNAM-$VERSION-$ARCH-$BUILD$TAG.$PKGTYPE"
+ exit 0
+fi
+
TMP=${TMP:-/tmp/SBo}
PKG=$TMP/package-$PRGNAM
OUTPUT=${OUTPUT:-/tmp}
-if [ "$ARCH" = "i486" ]; then
- SLKCFLAGS="-O2 -march=i486 -mtune=i686"
+if [ "$ARCH" = "i586" ]; then
+ SLKCFLAGS="-O2 -march=i586 -mtune=i686"
elif [ "$ARCH" = "i686" ]; then
SLKCFLAGS="-O2 -march=i686 -mtune=i686"
elif [ "$ARCH" = "x86_64" ]; then
@@ -67,6 +77,8 @@ find -L . \
\( -perm 666 -o -perm 664 -o -perm 640 -o -perm 600 -o -perm 444 \
-o -perm 440 -o -perm 400 \) -exec chmod 644 {} \;
+patch -p1 < $CWD/assaultcube-gcc6.patch
+
# Use custom SLKCFLAGS, remove end-of-line encoding and remove precompiled binaries.
patch -p1 < $CWD/Makefile.patch
sed -i 's/\r//g' changelog.txt
@@ -112,4 +124,4 @@ cat $CWD/slack-desc > $PKG/install/slack-desc
cat $CWD/doinst.sh > $PKG/install/doinst.sh
cd $PKG
-/sbin/makepkg -l y -c n $OUTPUT/$PRGNAM-$VERSION-$ARCH-$BUILD$TAG.${PKGTYPE:-tgz}
+/sbin/makepkg -l y -c n $OUTPUT/$PRGNAM-$VERSION-$ARCH-$BUILD$TAG.$PKGTYPE
diff --git a/games/assaultcube/assaultcube.info b/games/assaultcube/assaultcube.info
index af24438bd2..f0e45f666d 100644
--- a/games/assaultcube/assaultcube.info
+++ b/games/assaultcube/assaultcube.info
@@ -5,6 +5,6 @@ DOWNLOAD="https://downloads.sourceforge.net/actiongame/AssaultCube_v1.2.0.2.tar.
MD5SUM="a052fc79dca4ecae0f15d9a953f1e2ad"
DOWNLOAD_x86_64=""
MD5SUM_x86_64=""
-REQUIRES="OpenAL"
+REQUIRES=""
MAINTAINER="Larry Hajali"
EMAIL="larryhaja[at]gmail[dot]com"
diff --git a/games/asteroidsinfinity/asteroidsinfinity.SlackBuild b/games/asteroidsinfinity/asteroidsinfinity.SlackBuild
index 8142e9eade..a317e9e6df 100644
--- a/games/asteroidsinfinity/asteroidsinfinity.SlackBuild
+++ b/games/asteroidsinfinity/asteroidsinfinity.SlackBuild
@@ -1,19 +1,26 @@
-#!/bin/sh
+#!/bin/bash
# Slackware build script for asteroidsinfinity
-# Written by B. Watson (yalhcru@gmail.com)
+# Written by B. Watson (urchlay@slackware.uk)
# Licensed under the WTFPL. See http://www.wtfpl.net/txt/copying/ for details.
+cd $(dirname $0) ; CWD=$(pwd)
+
PRGNAM=asteroidsinfinity
VERSION=${VERSION:-1.2}
BUILD=${BUILD:-1}
TAG=${TAG:-_SBo}
+PKGTYPE=${PKGTYPE:-tgz}
ARCH=noarch
-CWD=$(pwd)
+if [ ! -z "${PRINT_PACKAGE_NAME}" ]; then
+ echo "$PRGNAM-$VERSION-$ARCH-$BUILD$TAG.$PKGTYPE"
+ exit 0
+fi
+
TMP=${TMP:-/tmp/SBo}
PKG=$TMP/package-$PRGNAM
OUTPUT=${OUTPUT:-/tmp}
@@ -29,11 +36,8 @@ rm -rf $SRCNAM
unzip $CWD/$SRCNAM$VERSION.zip
cd $SRCNAM
chown -R root:root .
-find -L . \
- \( -perm 777 -o -perm 775 -o -perm 750 -o -perm 711 -o -perm 555 \
- -o -perm 511 \) -exec chmod 755 {} \; -o \
- \( -perm 666 -o -perm 664 -o -perm 640 -o -perm 600 -o -perm 444 \
- -o -perm 440 -o -perm 400 \) -exec chmod 644 {} \;
+find -L . -perm /111 -a \! -perm 755 -a -exec chmod 755 {} \+ -o \
+ \! -perm /111 -a \! -perm 644 -a -exec chmod 644 {} \+
mkdir -p \
$PKG/usr/share/games/$PRGNAM \
@@ -57,4 +61,4 @@ cat $CWD/slack-desc > $PKG/install/slack-desc
cat $CWD/doinst.sh > $PKG/install/doinst.sh
cd $PKG
-/sbin/makepkg -l y -c n $OUTPUT/$PRGNAM-$VERSION-$ARCH-$BUILD$TAG.${PKGTYPE:-tgz}
+/sbin/makepkg -l y -c n $OUTPUT/$PRGNAM-$VERSION-$ARCH-$BUILD$TAG.$PKGTYPE
diff --git a/games/asteroidsinfinity/asteroidsinfinity.info b/games/asteroidsinfinity/asteroidsinfinity.info
index 067c76b48f..5155f07e05 100644
--- a/games/asteroidsinfinity/asteroidsinfinity.info
+++ b/games/asteroidsinfinity/asteroidsinfinity.info
@@ -5,6 +5,6 @@ DOWNLOAD="https://downloads.sourceforge.net/project/asteroidsinf/asteroidsinfini
MD5SUM="7e77dacd8ae9592eba32a441d2e5c673"
DOWNLOAD_x86_64=""
MD5SUM_x86_64=""
-REQUIRES="pygame"
+REQUIRES="python2-pygame"
MAINTAINER="B. Watson"
-EMAIL="yalhcru@gmail.com"
+EMAIL="urchlay@slackware.uk"
diff --git a/games/astromenace/astromenace.SlackBuild b/games/astromenace/astromenace.SlackBuild
index 8572b68273..111003453d 100644
--- a/games/astromenace/astromenace.SlackBuild
+++ b/games/astromenace/astromenace.SlackBuild
@@ -1,8 +1,8 @@
-#!/bin/sh
+#!/bin/bash
# Slackware build script for AstroMenace
-# Copyright 2014-2019 Dimitris Zlatanidis Orestiada, Greece
+# Copyright 2014-2023 Dimitris Zlatanidis Orestiada, Greece
# All rights reserved.
#
# Redistribution and use of this script, with or without modification, is
@@ -22,10 +22,13 @@
# OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF THIS SOFTWARE, EVEN IF
# ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
+cd $(dirname $0) ; CWD=$(pwd)
+
PRGNAM=astromenace
-VERSION=${VERSION:-1.4.1}
+VERSION=${VERSION:-1.4.2}
BUILD=${BUILD:-1}
TAG=${TAG:-_SBo}
+PKGTYPE=${PKGTYPE:-tgz}
if [ -z "$ARCH" ]; then
case "$( uname -m )" in
@@ -35,7 +38,14 @@ if [ -z "$ARCH" ]; then
esac
fi
-CWD=$(pwd)
+# If the variable PRINT_PACKAGE_NAME is set, then this script will report what
+# the name of the created package would be, and then exit. This information
+# could be useful to other scripts.
+if [ ! -z "${PRINT_PACKAGE_NAME}" ]; then
+ echo "$PRGNAM-$VERSION-$ARCH-$BUILD$TAG.$PKGTYPE"
+ exit 0
+fi
+
TMP=${TMP:-/tmp/SBo}
PKG=$TMP/package-$PRGNAM
OUTPUT=${OUTPUT:-/tmp}
@@ -99,4 +109,4 @@ cat $CWD/slack-desc > $PKG/install/slack-desc
cat $CWD/doinst.sh > $PKG/install/doinst.sh
cd $PKG
-/sbin/makepkg -l y -c n $OUTPUT/$PRGNAM-$VERSION-$ARCH-$BUILD$TAG.${PKGTYPE:-tgz}
+/sbin/makepkg -l y -c n $OUTPUT/$PRGNAM-$VERSION-$ARCH-$BUILD$TAG.$PKGTYPE
diff --git a/games/astromenace/astromenace.info b/games/astromenace/astromenace.info
index 15847b0e52..5bf28bd674 100644
--- a/games/astromenace/astromenace.info
+++ b/games/astromenace/astromenace.info
@@ -1,10 +1,10 @@
PRGNAM="astromenace"
-VERSION="1.4.1"
+VERSION="1.4.2"
HOMEPAGE="https://www.viewizard.com/"
-DOWNLOAD="https://github.com/viewizard/astromenace/archive/v1.4.1/astromenace-1.4.1.tar.gz"
-MD5SUM="f1384a75f9193e74ab0aff77baf58dac"
+DOWNLOAD="https://github.com/viewizard/astromenace/archive/v1.4.2/astromenace-1.4.2.tar.gz"
+MD5SUM="540c703b2584a2a5268c1907e1cce27c"
DOWNLOAD_x86_64=""
MD5SUM_x86_64=""
-REQUIRES="freealut SDL2"
+REQUIRES="freealut"
MAINTAINER="Dimitris Zlatanidis"
-EMAIL="d.zlatanidis@gmail.com"
+EMAIL="dslackw@gmail.com"
diff --git a/games/atanks/atanks.SlackBuild b/games/atanks/atanks.SlackBuild
index a640ed3979..0c06b01d08 100644
--- a/games/atanks/atanks.SlackBuild
+++ b/games/atanks/atanks.SlackBuild
@@ -1,8 +1,8 @@
-#!/bin/sh
+#!/bin/bash
# Slackware build script for atanks
-# Copyright 2015-2016 Eugene M., <damagedone at gmx dot com>
+# Copyright 2015-2021 Eugene M., <damagedone at gmx dot com>
# All rights reserved.
#
# Redistribution and use of this script, with or without modification, is
@@ -22,10 +22,13 @@
# OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF THIS SOFTWARE, EVEN IF
# ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
+cd $(dirname $0) ; CWD=$(pwd)
+
PRGNAM=atanks
-VERSION=${VERSION:-6.5}
+VERSION=${VERSION:-6.6}
BUILD=${BUILD:-1}
TAG=${TAG:-_SBo}
+PKGTYPE=${PKGTYPE:-tgz}
if [ -z "$ARCH" ]; then
case "$( uname -m )" in
@@ -35,7 +38,14 @@ if [ -z "$ARCH" ]; then
esac
fi
-CWD=$(pwd)
+# If the variable PRINT_PACKAGE_NAME is set, then this script will report what
+# the name of the created package would be, and then exit. This information
+# could be useful to other scripts.
+if [ ! -z "${PRINT_PACKAGE_NAME}" ]; then
+ echo "$PRGNAM-$VERSION-$ARCH-$BUILD$TAG.$PKGTYPE"
+ exit 0
+fi
+
TMP=${TMP:-/tmp/SBo}
PKG=$TMP/package-$PRGNAM
OUTPUT=${OUTPUT:-/tmp}
@@ -83,5 +93,8 @@ mkdir -p $PKG/install
cat $CWD/slack-desc > $PKG/install/slack-desc
cat $CWD/doinst.sh > $PKG/install/doinst.sh
+install -Dm644 atanks.desktop $PKG/usr/share/applications/atanks.desktop
+install -Dm644 atanks.png $PKG/usr/share/pixmaps/atanks.png
+
cd $PKG
-/sbin/makepkg -l y -c n $OUTPUT/$PRGNAM-$VERSION-$ARCH-$BUILD$TAG.${PKGTYPE:-tgz}
+/sbin/makepkg -l y -c n $OUTPUT/$PRGNAM-$VERSION-$ARCH-$BUILD$TAG.$PKGTYPE
diff --git a/games/atanks/atanks.info b/games/atanks/atanks.info
index e5c44b8fad..80f47f6d4c 100644
--- a/games/atanks/atanks.info
+++ b/games/atanks/atanks.info
@@ -1,8 +1,8 @@
PRGNAM="atanks"
-VERSION="6.5"
+VERSION="6.6"
HOMEPAGE="http://atanks.sourceforge.net/"
-DOWNLOAD="http://downloads.sourceforge.net/project/atanks/atanks/atanks-6.5/atanks-6.5.tar.gz"
-MD5SUM="3182d080ea71c3837af57f3651b55025"
+DOWNLOAD="http://downloads.sourceforge.net/project/atanks/atanks/atanks-6.6/atanks-6.6.tar.gz"
+MD5SUM="f53bbb0017d1ed79045085f6a36c85a8"
DOWNLOAD_x86_64=""
MD5SUM_x86_64=""
REQUIRES="allegro4"
diff --git a/games/atari++/README b/games/atari++/README
index a665dadcc1..8517407876 100644
--- a/games/atari++/README
+++ b/games/atari++/README
@@ -16,3 +16,11 @@ that the author includes in his makefile. If you're picky about
such things, or if you run into crashes or compile errors, try
setting FORCE_SLACK_CFLAGS=yes in the environment before running
atari++.SlackBuild
+
+Optional patch: If you *really* don't like the "Do you really want to
+quit?" prompt when you try to exit the emulator, set CONFIRM_QUIT=no
+in the environment before building atari++. You probably also want
+to skip the agree-to-the-GPL prompt at startup, which can be done
+with:
+
+$ echo "AcceptLicence=on" > ~/.atari++.conf
diff --git a/games/atari++/atari++.SlackBuild b/games/atari++/atari++.SlackBuild
index 30f664ed0a..cc50ec00a1 100644
--- a/games/atari++/atari++.SlackBuild
+++ b/games/atari++/atari++.SlackBuild
@@ -1,17 +1,25 @@
-#!/bin/sh
+#!/bin/bash
# Slackware build script for atari++
-# Written by B. Watson (yalhcru@gmail.com)
+# Written by B. Watson (urchlay@slackware.uk)
# Licensed under the WTFPL. See http://www.wtfpl.net/txt/copying/ for details.
+# 20230106 bkw: update for 1.85
+# 20211007 bkw: update for 1.84
+# 20210323 bkw: BUILD=2
+# - add option to patch out "Do you really want to quit?" because it's *annoying*
+# - move binary to /usr/games
# 20170122 bkw: update for 1.83
+cd $(dirname $0) ; CWD=$(pwd)
+
PRGNAM=atari++
-VERSION=${VERSION:-1.83}
+VERSION=${VERSION:-1.85}
BUILD=${BUILD:-1}
TAG=${TAG:-_SBo}
+PKGTYPE=${PKGTYPE:-tgz}
if [ -z "$ARCH" ]; then
case "$( uname -m )" in
@@ -21,7 +29,11 @@ if [ -z "$ARCH" ]; then
esac
fi
-CWD=$(pwd)
+if [ ! -z "${PRINT_PACKAGE_NAME}" ]; then
+ echo "$PRGNAM-$VERSION-$ARCH-$BUILD$TAG.$PKGTYPE"
+ exit 0
+fi
+
TMP=${TMP:-/tmp/SBo}
PKG=$TMP/package-$PRGNAM
OUTPUT=${OUTPUT:-/tmp}
@@ -57,11 +69,13 @@ rm -rf $PRGNAM
tar xvf $CWD/${PRGNAM}_$VERSION.tar.gz
cd $PRGNAM
chown -R root:root .
-find -L . \
- \( -perm 777 -o -perm 775 -o -perm 750 -o -perm 711 -o -perm 555 \
- -o -perm 511 \) -exec chmod 755 {} \; -o \
- \( -perm 666 -o -perm 664 -o -perm 640 -o -perm 600 -o -perm 444 \
- -o -perm 440 -o -perm 400 \) -exec chmod 644 {} \;
+find -L . -perm /111 -a \! -perm 755 -a -exec chmod 755 {} \+ -o \
+ \! -perm /111 -a \! -perm 644 -a -exec chmod 644 {} \+
+
+# 20210323 bkw: optional patch, disabled by default. Sorry, I can't
+# stand the "Do you really want to quit?" prompt, and there's no
+# config file or CLI option to disable it.
+[ "${CONFIRM_QUIT:-yes}" = "no" ] && patch -p1 < $CWD/no_confirm_quit.diff
CFLAGS="$SLKCFLAGS" \
CXXFLAGS="$SLKCFLAGS" \
@@ -81,9 +95,9 @@ fi
# no DESTDIR support, --mandir is ignored, docs go to /usr/share/doc,
# let's not use `make install' at all.
-mkdir -p $PKG/usr/bin $PKG/usr/man/man6 $PKG/usr/doc/$PRGNAM-$VERSION
+mkdir -p $PKG/usr/games $PKG/usr/man/man6 $PKG/usr/doc/$PRGNAM-$VERSION
-install -s -m0755 -o root -g root $PRGNAM $PKG/usr/bin
+install -s -m0755 -o root -g root $PRGNAM $PKG/usr/games
gzip -9c < $PRGNAM.man > $PKG/usr/man/man6/$PRGNAM.6.gz
@@ -105,4 +119,4 @@ cat $CWD/slack-desc > $PKG/install/slack-desc
cat $CWD/doinst.sh > $PKG/install/doinst.sh
cd $PKG
-/sbin/makepkg -l y -c n $OUTPUT/$PRGNAM-$VERSION-$ARCH-$BUILD$TAG.${PKGTYPE:-tgz}
+/sbin/makepkg -l y -c n $OUTPUT/$PRGNAM-$VERSION-$ARCH-$BUILD$TAG.$PKGTYPE
diff --git a/games/atari++/atari++.desktop b/games/atari++/atari++.desktop
index b2ea28b399..bd740d210e 100644
--- a/games/atari++/atari++.desktop
+++ b/games/atari++/atari++.desktop
@@ -3,7 +3,7 @@ Version=1.0
Name=Atari++ Emulator
GenericName=Atari 8-Bit Emulator
Type=Application
-Exec=atari++
+Exec=/usr/games/atari++
Icon=atari++
Terminal=false
StartupNotify=false
diff --git a/games/atari++/atari++.info b/games/atari++/atari++.info
index ad9361d789..a10699fd20 100644
--- a/games/atari++/atari++.info
+++ b/games/atari++/atari++.info
@@ -1,10 +1,10 @@
PRGNAM="atari++"
-VERSION="1.83"
+VERSION="1.85"
HOMEPAGE="http://www.xl-project.com/"
-DOWNLOAD="http://www.xl-project.com/download/atari++_1.83.tar.gz"
-MD5SUM="bc357e90d9a2d42471c58d77bccc20d5"
+DOWNLOAD="http://www.xl-project.com/download/atari++_1.85.tar.gz"
+MD5SUM="2d71eaebe7bc6527fbcecc94b74a1093"
DOWNLOAD_x86_64=""
MD5SUM_x86_64=""
REQUIRES=""
MAINTAINER="B. Watson"
-EMAIL="yalhcru@gmail.com"
+EMAIL="urchlay@slackware.uk"
diff --git a/games/atari++/no_confirm_quit.diff b/games/atari++/no_confirm_quit.diff
new file mode 100644
index 0000000000..12f22ddeb5
--- /dev/null
+++ b/games/atari++/no_confirm_quit.diff
@@ -0,0 +1,18 @@
+diff -Naur atari++/atari.cpp atari++.patched/atari.cpp
+--- atari++/atari.cpp 2020-03-21 13:13:35.000000000 -0400
++++ atari++.patched/atari.cpp 2021-03-23 00:21:48.022961292 -0400
+@@ -263,14 +263,7 @@
+ }
+ }
+ if (machine->Quit()) {
+- // Check whether the user really wants to quit.
+- if (YesNoRequester->Request("Do you really want to quit Atari++?",
+- "Continue Execution","Quit Program",NULL) == 0) {
+- redo = true;
+- machine->Quit() = false;
+- } else {
+ redo = false;
+- }
+ }
+ } while(redo);
+ }
diff --git a/games/atari800/atari800.SlackBuild b/games/atari800/atari800.SlackBuild
index 82e717f756..a4d603a8f3 100644
--- a/games/atari800/atari800.SlackBuild
+++ b/games/atari800/atari800.SlackBuild
@@ -1,11 +1,21 @@
-#!/bin/sh
+#!/bin/bash
# Slackware build script for atari800
-# Written by B. Watson (yalhcru@gmail.com)
+# Written by B. Watson (urchlay@slackware.uk)
# Licensed under the WTFPL. See http://www.wtfpl.net/txt/copying/ for details.
+# 20240312 bkw:
+# - update for v5.2.0.
+# - new-style icons.
+
+# 20220615 bkw:
+# - update for 5.0.0.
+# - add man page for new cart utility.
+
+# 20220407 bkw: BUILD=2, strip binary.
+
# 20200303 bkw:
# - update for 4.2.0, can still build 3.1.0, 4.0.0, 4.1.0.
# - move binary to /usr/games, man page to section 6.
@@ -20,10 +30,13 @@
# - don't install INSTALL in /usr/doc.
# - minor script tweaks.
+cd $(dirname $0) ; CWD=$(pwd)
+
PRGNAM=atari800
-VERSION=${VERSION:-4.2.0}
+VERSION=${VERSION:-5.2.0}
BUILD=${BUILD:-1}
TAG=${TAG:-_SBo}
+PKGTYPE=${PKGTYPE:-tgz}
if [ -z "$ARCH" ]; then
case "$( uname -m )" in
@@ -33,7 +46,11 @@ if [ -z "$ARCH" ]; then
esac
fi
-CWD=$(pwd)
+if [ ! -z "${PRINT_PACKAGE_NAME}" ]; then
+ echo "$PRGNAM-$VERSION-$ARCH-$BUILD$TAG.$PKGTYPE"
+ exit 0
+fi
+
TMP=${TMP:-/tmp/SBo}
PKG=$TMP/package-$PRGNAM
OUTPUT=${OUTPUT:-/tmp}
@@ -113,7 +130,7 @@ CXXFLAGS="$SLKCFLAGS" \
# only sound actually work. Must determine WTF's going on here.
make
-make install DOC_DIR=$DOCDIR MAN_DIR=/usr/man/man1 DESTDIR=$PKG
+make install-strip DOC_DIR=$DOCDIR MAN_DIR=/usr/man/man1 DESTDIR=$PKG
# 20200303 bkw: move man page to section 6 (games)
mkdir -p $PKG/usr/man/man6
@@ -122,6 +139,8 @@ sed '/^\.TH *ATARI800 *1/s| 1 | 6 |' $PKG/usr/man/man1/$PRGNAM.1 | \
$PKG/usr/man/man6/$PRGNAM.6.gz
rm -rf $PKG/usr/man/man1
+gzip -9c < $CWD/cart.6 > $PKG/usr/man/man6/cart.6.gz
+
cat $CWD/$PRGNAM.SlackBuild > $PKGDOCDIR/$PRGNAM.SlackBuild
[ ! -d ../DOC ] && cd src
@@ -137,9 +156,20 @@ cp -a util $PKGDOCDIR
# the act/*.act files are palettes from the dark ages, leave them out.
-# nice copyright-friendly icon
+# nice copyright-friendly icon.
+# 20240312 bkw: new-style icons.
+for px in 16 22 32 48 64 128; do
+ sz="${px}x${px}"
+ dir=$PKG/usr/share/icons/hicolor/$sz/apps
+ mkdir -p $dir
+ rsvg-convert --width=$px --height=$px data/atari2.svg > $dir/$PRGNAM.png
+done
+
+mkdir -p $PKG/usr/share/icons/hicolor/scalable/apps
+cat data/atari2.svg > $PKG/usr/share/icons/hicolor/scalable/apps/$PRGNAM.svg
+
mkdir -p $PKG/usr/share/pixmaps
-cat data/atari2.png > $PKG/usr/share/pixmaps/$PRGNAM.png
+ln -s ../icons/hicolor/48x48/apps/$PRGNAM.png $PKG/usr/share/pixmaps/$PRGNAM.png
# .desktop file written for this build
mkdir -p $PKG/usr/share/applications
@@ -150,4 +180,4 @@ sed "s,@WITH@,$GLWITH," $CWD/slack-desc > $PKG/install/slack-desc
cat $CWD/doinst.sh > $PKG/install/doinst.sh
cd $PKG
-/sbin/makepkg -l y -c n $OUTPUT/$PRGNAM-$VERSION-$ARCH-$BUILD$TAG.${PKGTYPE:-tgz}
+/sbin/makepkg -l y -c n $OUTPUT/$PRGNAM-$VERSION-$ARCH-$BUILD$TAG.$PKGTYPE
diff --git a/games/atari800/atari800.info b/games/atari800/atari800.info
index c048b2ebfe..41eb3e1b95 100644
--- a/games/atari800/atari800.info
+++ b/games/atari800/atari800.info
@@ -1,10 +1,10 @@
PRGNAM="atari800"
-VERSION="4.2.0"
+VERSION="5.2.0"
HOMEPAGE="https://atari800.github.io/"
-DOWNLOAD="https://github.com/atari800/atari800/releases/download/ATARI800_4_2_0/atari800-4.2.0-src.tgz"
-MD5SUM="695031b9bc3461cd18ec9090779d984b"
+DOWNLOAD="https://github.com/atari800/atari800/releases/download/ATARI800_5_2_0/atari800-5.2.0-src.tgz"
+MD5SUM="bed6188abbe73c2ac109dc954050fd46"
DOWNLOAD_x86_64=""
MD5SUM_x86_64=""
REQUIRES=""
MAINTAINER="B. Watson"
-EMAIL="yalhcru@gmail.com"
+EMAIL="urchlay@slackware.uk"
diff --git a/games/atari800/cart.6 b/games/atari800/cart.6
new file mode 100644
index 0000000000..9153c92eac
--- /dev/null
+++ b/games/atari800/cart.6
@@ -0,0 +1,124 @@
+.\" Man page generated from reStructuredText.
+.
+.
+.nr rst2man-indent-level 0
+.
+.de1 rstReportMargin
+\\$1 \\n[an-margin]
+level \\n[rst2man-indent-level]
+level margin: \\n[rst2man-indent\\n[rst2man-indent-level]]
+-
+\\n[rst2man-indent0]
+\\n[rst2man-indent1]
+\\n[rst2man-indent2]
+..
+.de1 INDENT
+.\" .rstReportMargin pre:
+. RS \\$1
+. nr rst2man-indent\\n[rst2man-indent-level] \\n[an-margin]
+. nr rst2man-indent-level +1
+.\" .rstReportMargin post:
+..
+.de UNINDENT
+. RE
+.\" indent \\n[an-margin]
+.\" old: \\n[rst2man-indent\\n[rst2man-indent-level]]
+.nr rst2man-indent-level -1
+.\" new: \\n[rst2man-indent\\n[rst2man-indent-level]]
+.in \\n[rst2man-indent\\n[rst2man-indent-level]]u
+..
+.TH "CART" 6 "2022-06-15" "5.0.0" "SlackBuilds.org"
+.SH NAME
+cart \- convert raw Atari 8-bit ROM images to Atari800 CART files.
+.\" RST source for cart(1) man page. Convert with:
+.
+.\" rst2man.py cart.rst > cart.6
+.
+.\" rst2man.py comes from the SBo development/docutils package.
+.
+.SH SYNOPSIS
+.sp
+cart \fIromfile\fP \fIcartfile\fP \fIcarttype\fP
+.sp
+cart \fB\-l\fP
+.sp
+cart \fB\-p\fP \fIromfile\fP
+.SH DESCRIPTION
+.sp
+\fBcart\fP creates an Atari800 CART image file from a raw Atari 8\-bit ROM
+image file by adding a 16\-byte \fBCART\fP header.
+.sp
+The \fIromfile\fP is a file containing a raw Atari 8\-bit ROM image
+dump. It must be of the correct size for the \fIcarttype\fP argument
+(e.g. for type 1, "Standard 8KB cartridge", the file must be exactly
+8192 bytes).
+.sp
+Output is written to \fIcartfile\fP\&. This must be a different filename
+from \fIromfile\fP (in\-place conversion is not supported). \fIcartfile\fP will
+be exactly 16 bytes longer than \fIromfile\fP (e.g. for type 1, it will be
+8208 bytes).
+.sp
+The \fIcarttype\fP argument is numeric, one of the supported types. The
+list can be viewed with \fBcart \-l\fP\&. If you\(aqre not sure of the correct
+type for a given ROM, you can narrow it down by running \fBcart \-p\fP
+\fIromfile\fP, which will show all the possible types that match the size
+of the ROM.
+.sp
+There is no corresponding tool to convert a CART image back to a raw
+ROM file, but this can be done with e.g. \fBdd\fP(1):
+.INDENT 0.0
+.INDENT 3.5
+.sp
+.nf
+.ft C
+dd if=image.cart of=image.raw bs=1 skip=16
+.ft P
+.fi
+.UNINDENT
+.UNINDENT
+.sp
+\&...or \fBhead\fP(1) and \fBcat\fP(1):
+.INDENT 0.0
+.INDENT 3.5
+.sp
+.nf
+.ft C
+cat image.cart | ( head \-c16 >/dev/null ; cat ) > image.raw
+.ft P
+.fi
+.UNINDENT
+.UNINDENT
+.SH OPTIONS
+.INDENT 0.0
+.TP
+.B \-l
+Show the complete list of supported cartridge types.
+.UNINDENT
+.INDENT 0.0
+.TP
+.B \-p \fIromfile\fP
+Show the list of cartridge types that match the size of \fIromfile\fP\&.
+.UNINDENT
+.SH COPYRIGHT
+.sp
+See the file /usr/doc/atari800\-5.0.0/COPYING for license information.
+.SH AUTHORS
+.sp
+\fBcart\fP is part of the \fBatari800\fP(6) distribution. See
+/usr/doc/atari800\-5.0.0/CREDITS for the list of authors.
+.sp
+This man page written for the SlackBuilds.org project
+by B. Watson, and is licensed under the WTFPL.
+.SH SEE ALSO
+.sp
+\fBatari800\fP(6)
+.INDENT 0.0
+.TP
+.B Full documentation for the CART file format:
+/usr/doc/atari800\-5.0.0/cart.txt
+.TP
+.B The \fBatari800\fP website:
+\fI\%https://atari800.github.io/\fP
+.UNINDENT
+.\" Generated by docutils manpage writer.
+.
diff --git a/games/atari800/cart.rst b/games/atari800/cart.rst
new file mode 100644
index 0000000000..77a207d864
--- /dev/null
+++ b/games/atari800/cart.rst
@@ -0,0 +1,92 @@
+.. RST source for cart(1) man page. Convert with:
+.. rst2man.py cart.rst > cart.6
+.. rst2man.py comes from the SBo development/docutils package.
+
+.. |version| replace:: 5.0.0
+.. |date| date::
+
+====
+cart
+====
+
+----------------------------------------------------------
+convert raw Atari 8-bit ROM images to Atari800 CART files.
+----------------------------------------------------------
+
+:Manual section: 6
+:Manual group: SlackBuilds.org
+:Date: |date|
+:Version: |version|
+
+SYNOPSIS
+========
+
+cart *romfile* *cartfile* *carttype*
+
+cart **-l**
+
+cart **-p** *romfile*
+
+DESCRIPTION
+===========
+
+**cart** creates an Atari800 CART image file from a raw Atari 8-bit ROM
+image file by adding a 16-byte **CART** header.
+
+The *romfile* is a file containing a raw Atari 8-bit ROM image
+dump. It must be of the correct size for the *carttype* argument
+(e.g. for type 1, "Standard 8KB cartridge", the file must be exactly
+8192 bytes).
+
+Output is written to *cartfile*. This must be a different filename
+from *romfile* (in-place conversion is not supported). *cartfile* will
+be exactly 16 bytes longer than *romfile* (e.g. for type 1, it will be
+8208 bytes).
+
+The *carttype* argument is numeric, one of the supported types. The
+list can be viewed with **cart -l**. If you're not sure of the correct
+type for a given ROM, you can narrow it down by running **cart -p**
+*romfile*, which will show all the possible types that match the size
+of the ROM.
+
+There is no corresponding tool to convert a CART image back to a raw
+ROM file, but this can be done with e.g. **dd**\(1)::
+
+ dd if=image.cart of=image.raw bs=1 skip=16
+
+...or **head**\(1) and **cat**\(1)::
+
+ cat image.cart | ( head -c16 >/dev/null ; cat ) > image.raw
+
+OPTIONS
+=======
+
+-l Show the complete list of supported cartridge types.
+
+-p *romfile*
+ Show the list of cartridge types that match the size of *romfile*.
+
+COPYRIGHT
+=========
+
+See the file /usr/doc/atari800-|version|/COPYING for license information.
+
+AUTHORS
+=======
+
+**cart** is part of the **atari800**\(6) distribution. See
+/usr/doc/atari800-|version|/CREDITS for the list of authors.
+
+This man page written for the SlackBuilds.org project
+by B. Watson, and is licensed under the WTFPL.
+
+SEE ALSO
+========
+
+**atari800**\(6)
+
+Full documentation for the CART file format:
+ /usr/doc/atari800-|version|/cart.txt
+
+The **atari800** website:
+ https://atari800.github.io/
diff --git a/games/atari800/doinst.sh b/games/atari800/doinst.sh
index 5fb28930db..65c7e2eeb9 100644
--- a/games/atari800/doinst.sh
+++ b/games/atari800/doinst.sh
@@ -1,3 +1,9 @@
if [ -x /usr/bin/update-desktop-database ]; then
/usr/bin/update-desktop-database -q usr/share/applications >/dev/null 2>&1
fi
+
+if [ -e usr/share/icons/hicolor/icon-theme.cache ]; then
+ if [ -x /usr/bin/gtk-update-icon-cache ]; then
+ /usr/bin/gtk-update-icon-cache -f usr/share/icons/hicolor >/dev/null 2>&1
+ fi
+fi
diff --git a/games/atari800_roms/atari800_roms.SlackBuild b/games/atari800_roms/atari800_roms.SlackBuild
index 0fbb6129fd..7cd1df91b1 100644
--- a/games/atari800_roms/atari800_roms.SlackBuild
+++ b/games/atari800_roms/atari800_roms.SlackBuild
@@ -1,8 +1,8 @@
-#!/bin/sh
+#!/bin/bash
# Slackware build script for Atari OS ROMs
-# Written by B. Watson (yalhcru@gmail.com)
+# Written by B. Watson (urchlay@slackware.uk)
# Licensed under the WTFPL. See http://www.wtfpl.net/txt/copying/ for details.
@@ -10,14 +10,21 @@
# No need for ARCH detection or LIBDIRSUFFIX stuff.
# Too bad I can't put m6502 for $ARCH...
+cd $(dirname $0) ; CWD=$(pwd)
+
PRGNAM=atari800_roms
VERSION=${VERSION:-20140424}
ARCH=noarch
BUILD=${BUILD:-1}
TAG=${TAG:-_SBo}
+PKGTYPE=${PKGTYPE:-tgz}
+
+if [ ! -z "${PRINT_PACKAGE_NAME}" ]; then
+ echo "$PRGNAM-$VERSION-$ARCH-$BUILD$TAG.$PKGTYPE"
+ exit 0
+fi
-CWD=$(pwd)
TMP=${TMP:-/tmp/SBo}
PKG=$TMP/package-$PRGNAM
OUTPUT=${OUTPUT:-/tmp}
@@ -56,4 +63,4 @@ mkdir -p $PKG/install
cat $CWD/slack-desc > $PKG/install/slack-desc
cd $PKG
-/sbin/makepkg -l y -c n $OUTPUT/$PRGNAM-$VERSION-$ARCH-$BUILD$TAG.${PKGTYPE:-tgz}
+/sbin/makepkg -l y -c n $OUTPUT/$PRGNAM-$VERSION-$ARCH-$BUILD$TAG.$PKGTYPE
diff --git a/games/atari800_roms/atari800_roms.info b/games/atari800_roms/atari800_roms.info
index a332b0f0b4..2b22d3e76e 100644
--- a/games/atari800_roms/atari800_roms.info
+++ b/games/atari800_roms/atari800_roms.info
@@ -1,10 +1,10 @@
PRGNAM="atari800_roms"
VERSION="20140424"
-HOMEPAGE="http://atari800.sourceforge.net/"
-DOWNLOAD="http://downloads.sourceforge.net/sourceforge/atari800/xf25.zip"
+HOMEPAGE="https://atari800.github.io/"
+DOWNLOAD="https://downloads.sourceforge.net/sourceforge/atari800/xf25.zip"
MD5SUM="4dc3b6b4313e9596c4d474785a37b94d"
DOWNLOAD_x86_64=""
MD5SUM_x86_64=""
REQUIRES=""
MAINTAINER="B. Watson"
-EMAIL="yalhcru@gmail.com"
+EMAIL="urchlay@slackware.uk"
diff --git a/games/barrage/barrage.SlackBuild b/games/barrage/barrage.SlackBuild
index 51425af712..7fae58da38 100644
--- a/games/barrage/barrage.SlackBuild
+++ b/games/barrage/barrage.SlackBuild
@@ -1,29 +1,39 @@
-#!/bin/sh
+#!/bin/bash
# Slackware build script for barrage
# Written by Zbigniew Baniewski <Zbigniew [dot] Baniewski [at] gmail [dot] com>
+cd $(dirname $0) ; CWD=$(pwd)
+
PRGNAM=barrage
VERSION=${VERSION:-1.0.4}
BUILD=${BUILD:-1}
TAG=${TAG:-_SBo}
+PKGTYPE=${PKGTYPE:-tgz}
if [ -z "$ARCH" ]; then
case "$( uname -m )" in
- i?86) ARCH=i486 ;;
+ i?86) ARCH=i586 ;;
arm*) ARCH=arm ;;
*) ARCH=$( uname -m ) ;;
esac
fi
-CWD=$(pwd)
+# If the variable PRINT_PACKAGE_NAME is set, then this script will report what
+# the name of the created package would be, and then exit. This information
+# could be useful to other scripts.
+if [ ! -z "${PRINT_PACKAGE_NAME}" ]; then
+ echo "$PRGNAM-$VERSION-$ARCH-$BUILD$TAG.$PKGTYPE"
+ exit 0
+fi
+
TMP=${TMP:-/tmp/SBo}
PKG=$TMP/package-$PRGNAM
OUTPUT=${OUTPUT:-/tmp}
-if [ "$ARCH" = "i486" ]; then
- SLKCFLAGS="-O2 -march=i486 -mtune=i686"
+if [ "$ARCH" = "i586" ]; then
+ SLKCFLAGS="-O2 -march=i586 -mtune=i686"
LIBDIRSUFFIX=""
elif [ "$ARCH" = "i686" ]; then
SLKCFLAGS="-O2 -march=i686 -mtune=i686"
@@ -74,4 +84,4 @@ cat $CWD/slack-desc > $PKG/install/slack-desc
cat $CWD/doinst.sh > $PKG/install/doinst.sh
cd $PKG
-/sbin/makepkg -l y -c n $OUTPUT/$PRGNAM-$VERSION-$ARCH-$BUILD$TAG.${PKGTYPE:-tgz}
+/sbin/makepkg -l y -c n $OUTPUT/$PRGNAM-$VERSION-$ARCH-$BUILD$TAG.$PKGTYPE
diff --git a/games/bastet/bastet.SlackBuild b/games/bastet/bastet.SlackBuild
index bfc4ce54c5..501b36cd6b 100644
--- a/games/bastet/bastet.SlackBuild
+++ b/games/bastet/bastet.SlackBuild
@@ -1,11 +1,12 @@
-#!/bin/sh
+#!/bin/bash
# Slackware build script for bastet
-# Written by B. Watson (yalhcru@gmail.com)
+# Written by B. Watson (urchlay@slackware.uk)
# Licensed under the WTFPL. See http://www.wtfpl.net/txt/copying/ for details.
+# 20211004 bkw: fix build on -current again (use ncursesw).
# 20180212 bkw: fix build on -current.
# 20170301 bkw:
@@ -20,10 +21,13 @@
# - add doinst.sh (the two items above need it)
# - don't install INSTALL in /usr/doc (redundant)
+cd $(dirname $0) ; CWD=$(pwd)
+
PRGNAM=bastet
VERSION=${VERSION:-0.43.2}
-BUILD=${BUILD:-1}
+BUILD=${BUILD:-2}
TAG=${TAG:-_SBo}
+PKGTYPE=${PKGTYPE:-tgz}
if [ -z "$ARCH" ]; then
case "$( uname -m )" in
@@ -33,7 +37,11 @@ if [ -z "$ARCH" ]; then
esac
fi
-CWD=$(pwd)
+if [ ! -z "${PRINT_PACKAGE_NAME}" ]; then
+ echo "$PRGNAM-$VERSION-$ARCH-$BUILD$TAG.$PKGTYPE"
+ exit 0
+fi
+
TMP=${TMP:-/tmp/SBo}
PKG=$TMP/package-$PRGNAM
OUTPUT=${OUTPUT:-/tmp}
@@ -61,11 +69,8 @@ rm -rf $PRGNAM-$VERSION
unzip $CWD/$PRGNAM-$VERSION.zip
cd $PRGNAM-$VERSION
chown -R root:root .
-find -L . \
- \( -perm 777 -o -perm 775 -o -perm 750 -o -perm 711 -o -perm 555 \
- -o -perm 511 \) -exec chmod 755 {} \; -o \
- \( -perm 666 -o -perm 664 -o -perm 640 -o -perm 600 -o -perm 444 \
- -o -perm 440 -o -perm 400 \) -exec chmod 644 {} \;
+find -L . -perm /111 -a \! -perm 755 -a -exec chmod 755 {} \+ -o \
+ \! -perm /111 -a \! -perm 644 -a -exec chmod 644 {} \+
# Don't want/need debugging binary
sed -i 's/-ggdb//g' Makefile
@@ -78,6 +83,8 @@ sed -i "s,/var/games,&/$PRGNAM," Config.cpp $PRGNAM.6
sed -i '/# *include/s,tr1/tr1/\(unordered_set\),\1.hpp,' *.hpp
sed -i 's,std::tr1::,boost::,g' *.hpp *.cpp
+sed -i 's,-lncurses,-lncursesw,' Makefile
+
make CXXFLAGS="$SLKCFLAGS"
# No 'make install', follow the INSTALL document more-or-less, except I
@@ -104,4 +111,4 @@ cat $CWD/slack-desc > $PKG/install/slack-desc
cat $CWD/doinst.sh > $PKG/install/doinst.sh
cd $PKG
-/sbin/makepkg -l y -c n $OUTPUT/$PRGNAM-$VERSION-$ARCH-$BUILD$TAG.${PKGTYPE:-tgz}
+/sbin/makepkg -l y -c n $OUTPUT/$PRGNAM-$VERSION-$ARCH-$BUILD$TAG.$PKGTYPE
diff --git a/games/bastet/bastet.info b/games/bastet/bastet.info
index a41a22b0e9..7d3b927fe6 100644
--- a/games/bastet/bastet.info
+++ b/games/bastet/bastet.info
@@ -1,10 +1,10 @@
PRGNAM="bastet"
VERSION="0.43.2"
-HOMEPAGE="http://fph.altervista.org/prog/bastet.html"
+HOMEPAGE="https://fph.altervista.org/prog/bastet.html"
DOWNLOAD="https://github.com/fph/bastet/archive/0.43.2/bastet-0.43.2.zip"
MD5SUM="07d95099389b29f36d5526ee8ae96585"
DOWNLOAD_x86_64=""
MD5SUM_x86_64=""
REQUIRES=""
MAINTAINER="B. Watson"
-EMAIL="yalhcru@gmail.com"
+EMAIL="urchlay@slackware.uk"
diff --git a/games/beetle-lynx-libretro/README b/games/beetle-lynx-libretro/README
deleted file mode 100644
index 6b52855cbf..0000000000
--- a/games/beetle-lynx-libretro/README
+++ /dev/null
@@ -1,10 +0,0 @@
-Beetle/Mednafen LYNX is an Atari Lynx video game system emulator that
-can be used as a libretro core.
-
-Beetle/Mednafen LYNX requires the following BIOS image file for
-operation:
-
-* lynxboot.img (Lynx Boot Image)
-
-To build the debugging symbols use:
- DEBUG=1 beetle-lynx-libretro.SlackBuild
diff --git a/games/beetle-lynx-libretro/beetle-lynx-libretro.SlackBuild b/games/beetle-lynx-libretro/beetle-lynx-libretro.SlackBuild
deleted file mode 100644
index 43bde67dda..0000000000
--- a/games/beetle-lynx-libretro/beetle-lynx-libretro.SlackBuild
+++ /dev/null
@@ -1,82 +0,0 @@
-#!/bin/sh
-
-# Slackware build script for beetle-lynx-libretro
-
-# Copyright 2016-2018 Hunter Sezen
-# All rights reserved.
-#
-# Redistribution and use of this script, with or without modification, is
-# permitted provided that the following conditions are met:
-#
-# 1. Redistributions of this script must retain the above copyright
-# notice, this list of conditions and the following disclaimer.
-#
-# THIS SOFTWARE IS PROVIDED BY THE AUTHOR "AS IS" AND ANY EXPRESS OR IMPLIED
-# WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE IMPLIED WARRANTIES OF
-# MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE ARE DISCLAIMED. IN NO
-# EVENT SHALL THE AUTHOR BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL,
-# SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT LIMITED TO,
-# PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, DATA, OR PROFITS;
-# OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY,
-# WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR
-# OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF THIS SOFTWARE, EVEN IF
-# ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
-
-PRGNAM=beetle-lynx-libretro
-LIBNAM=mednafen_lynx_libretro
-VERSION=${VERSION:-2018.04.07_6816829}
-BUILD=${BUILD:-1}
-TAG=${TAG:-_SBo}
-
-if [ -z "$ARCH" ]; then
- case "$( uname -m )" in
- i?86) ARCH=i586 ;;
- arm*) ARCH=arm ;;
- *) ARCH=$( uname -m ) ;;
- esac
-fi
-
-CWD=$(pwd)
-TMP=${TMP:-/tmp/SBo}
-PKG=$TMP/package-$PRGNAM
-OUTPUT=${OUTPUT:-/tmp}
-
-LIBDIRSUFFIX=
-[ "$ARCH" = x86_64 ] && LIBDIRSUFFIX=64
-
-set -eu
-
-rm -rf $PKG
-mkdir -p $TMP $PKG $OUTPUT
-cd $TMP
-rm -rf $PRGNAM-$VERSION
-tar xvf $CWD/$PRGNAM-$VERSION.tar.xz
-cd $PRGNAM-$VERSION
-chown -R root:root .
-find -L . \
- \( -perm 777 -o -perm 775 -o -perm 750 -o -perm 711 -o -perm 555 \
- -o -perm 511 \) -exec chmod 755 {} \; -o \
- \( -perm 666 -o -perm 664 -o -perm 640 -o -perm 600 -o -perm 444 \
- -o -perm 440 -o -perm 400 \) -exec chmod 644 {} \;
-
-[ "${DEBUG:=0}" != 0 ] && DEBUG=1
-
-make DEBUG=$DEBUG
-
-install -Dm0644 $LIBNAM.so $PKG/usr/lib${LIBDIRSUFFIX}/libretro/$LIBNAM.so
-install -Dm0644 $LIBNAM.info $PKG/usr/lib${LIBDIRSUFFIX}/libretro/info/$LIBNAM.info
-
-if [ $DEBUG = 0 ]; then
- find $PKG -print0 | xargs -0 file | grep -e "executable" -e "shared object" | grep ELF \
- | cut -f 1 -d : | xargs strip --strip-unneeded 2> /dev/null || true
-fi
-
-mkdir -p $PKG/usr/doc/$PRGNAM-$VERSION
-cp -a COPYING $PKG/usr/doc/$PRGNAM-$VERSION
-cat $CWD/$PRGNAM.SlackBuild > $PKG/usr/doc/$PRGNAM-$VERSION/$PRGNAM.SlackBuild
-
-mkdir -p $PKG/install
-cat $CWD/slack-desc > $PKG/install/slack-desc
-
-cd $PKG
-/sbin/makepkg -l y -c n $OUTPUT/$PRGNAM-$VERSION-$ARCH-$BUILD$TAG.${PKGTYPE:-tgz}
diff --git a/games/beetle-lynx-libretro/beetle-lynx-libretro.info b/games/beetle-lynx-libretro/beetle-lynx-libretro.info
deleted file mode 100644
index d06c024a7f..0000000000
--- a/games/beetle-lynx-libretro/beetle-lynx-libretro.info
+++ /dev/null
@@ -1,10 +0,0 @@
-PRGNAM="beetle-lynx-libretro"
-VERSION="2018.04.07_6816829"
-HOMEPAGE="https://www.libretro.com/"
-DOWNLOAD="http://slackless.raccoons.tech/src/libretro/beetle-lynx-libretro-2018.04.07_6816829.tar.xz"
-MD5SUM="c4ebd5ddc70076b71a4026eabcdf9043"
-DOWNLOAD_x86_64=""
-MD5SUM_x86_64=""
-REQUIRES="RetroArch"
-MAINTAINER="orphaned - no maintainer"
-EMAIL="nobody@nowhere.com"
diff --git a/games/beetle-lynx-libretro/slack-desc b/games/beetle-lynx-libretro/slack-desc
deleted file mode 100644
index 8223070f52..0000000000
--- a/games/beetle-lynx-libretro/slack-desc
+++ /dev/null
@@ -1,19 +0,0 @@
-# HOW TO EDIT THIS FILE:
-# The "handy ruler" below makes it easier to edit a package description.
-# Line up the first '|' above the ':' following the base package name, and
-# the '|' on the right side marks the last column you can put a character in.
-# You must make exactly 11 lines for the formatting to be correct. It's also
-# customary to leave one space after the ':' except on otherwise blank lines.
-
- |-----handy-ruler------------------------------------------------------|
-beetle-lynx-libretro: beetle-lynx-libretro (libretro fork of Mednafen Lynx)
-beetle-lynx-libretro:
-beetle-lynx-libretro: Beetle/Mednafen LYNX is a libretro port of Mednafen Lynx which is
-beetle-lynx-libretro: based off of Handy.
-beetle-lynx-libretro:
-beetle-lynx-libretro: Homepage: https://www.libretro.com/
-beetle-lynx-libretro:
-beetle-lynx-libretro:
-beetle-lynx-libretro:
-beetle-lynx-libretro:
-beetle-lynx-libretro:
diff --git a/games/beetle-ngp-libretro/README b/games/beetle-ngp-libretro/README
deleted file mode 100644
index 02e502fb7c..0000000000
--- a/games/beetle-ngp-libretro/README
+++ /dev/null
@@ -1,5 +0,0 @@
-Beetle/Mednafen NGP is a SNK Neo Geo Pocket (Color) video game system
-emulator that can be used as a libretro core.
-
-To build the debugging symbols use:
- DEBUG=1 beetle-ngp-libretro.SlackBuild
diff --git a/games/beetle-ngp-libretro/beetle-ngp-libretro.SlackBuild b/games/beetle-ngp-libretro/beetle-ngp-libretro.SlackBuild
deleted file mode 100644
index 23f14b84a4..0000000000
--- a/games/beetle-ngp-libretro/beetle-ngp-libretro.SlackBuild
+++ /dev/null
@@ -1,82 +0,0 @@
-#!/bin/sh
-
-# Slackware build script for beetle-ngp-libretro
-
-# Copyright 2016-2018 Hunter Sezen
-# All rights reserved.
-#
-# Redistribution and use of this script, with or without modification, is
-# permitted provided that the following conditions are met:
-#
-# 1. Redistributions of this script must retain the above copyright
-# notice, this list of conditions and the following disclaimer.
-#
-# THIS SOFTWARE IS PROVIDED BY THE AUTHOR "AS IS" AND ANY EXPRESS OR IMPLIED
-# WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE IMPLIED WARRANTIES OF
-# MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE ARE DISCLAIMED. IN NO
-# EVENT SHALL THE AUTHOR BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL,
-# SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT LIMITED TO,
-# PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, DATA, OR PROFITS;
-# OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY,
-# WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR
-# OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF THIS SOFTWARE, EVEN IF
-# ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
-
-PRGNAM=beetle-ngp-libretro
-LIBNAM=mednafen_ngp_libretro
-VERSION=${VERSION:-2018.09.29_576eafc}
-BUILD=${BUILD:-1}
-TAG=${TAG:-_SBo}
-
-if [ -z "$ARCH" ]; then
- case "$( uname -m )" in
- i?86) ARCH=i586 ;;
- arm*) ARCH=arm ;;
- *) ARCH=$( uname -m ) ;;
- esac
-fi
-
-CWD=$(pwd)
-TMP=${TMP:-/tmp/SBo}
-PKG=$TMP/package-$PRGNAM
-OUTPUT=${OUTPUT:-/tmp}
-
-LIBDIRSUFFIX=
-[ "$ARCH" = x86_64 ] && LIBDIRSUFFIX=64
-
-set -eu
-
-rm -rf $PKG
-mkdir -p $TMP $PKG $OUTPUT
-cd $TMP
-rm -rf $PRGNAM-$VERSION
-tar xvf $CWD/$PRGNAM-$VERSION.tar.xz
-cd $PRGNAM-$VERSION
-chown -R root:root .
-find -L . \
- \( -perm 777 -o -perm 775 -o -perm 750 -o -perm 711 -o -perm 555 \
- -o -perm 511 \) -exec chmod 755 {} \; -o \
- \( -perm 666 -o -perm 664 -o -perm 640 -o -perm 600 -o -perm 444 \
- -o -perm 440 -o -perm 400 \) -exec chmod 644 {} \;
-
-[ "${DEBUG:=0}" != 0 ] && DEBUG=1
-
-make DEBUG=$DEBUG
-
-install -Dm0644 $LIBNAM.so $PKG/usr/lib${LIBDIRSUFFIX}/libretro/$LIBNAM.so
-install -Dm0644 $LIBNAM.info $PKG/usr/lib${LIBDIRSUFFIX}/libretro/info/$LIBNAM.info
-
-if [ $DEBUG = 0 ]; then
- find $PKG -print0 | xargs -0 file | grep -e "executable" -e "shared object" | grep ELF \
- | cut -f 1 -d : | xargs strip --strip-unneeded 2> /dev/null || true
-fi
-
-mkdir -p $PKG/usr/doc/$PRGNAM-$VERSION
-cp -a COPYING $PKG/usr/doc/$PRGNAM-$VERSION
-cat $CWD/$PRGNAM.SlackBuild > $PKG/usr/doc/$PRGNAM-$VERSION/$PRGNAM.SlackBuild
-
-mkdir -p $PKG/install
-cat $CWD/slack-desc > $PKG/install/slack-desc
-
-cd $PKG
-/sbin/makepkg -l y -c n $OUTPUT/$PRGNAM-$VERSION-$ARCH-$BUILD$TAG.${PKGTYPE:-tgz}
diff --git a/games/beetle-ngp-libretro/beetle-ngp-libretro.info b/games/beetle-ngp-libretro/beetle-ngp-libretro.info
deleted file mode 100644
index 75ccf907c0..0000000000
--- a/games/beetle-ngp-libretro/beetle-ngp-libretro.info
+++ /dev/null
@@ -1,10 +0,0 @@
-PRGNAM="beetle-ngp-libretro"
-VERSION="2018.09.29_576eafc"
-HOMEPAGE="https://www.libretro.com/"
-DOWNLOAD="http://slackless.raccoons.tech/src/libretro/beetle-ngp-libretro-2018.09.29_576eafc.tar.xz"
-MD5SUM="8c57907ee3b7aebf2d7d325fcf35c7ec"
-DOWNLOAD_x86_64=""
-MD5SUM_x86_64=""
-REQUIRES="RetroArch"
-MAINTAINER="orphaned - no maintainer"
-EMAIL="nobody@nowhere.com"
diff --git a/games/beetle-ngp-libretro/slack-desc b/games/beetle-ngp-libretro/slack-desc
deleted file mode 100644
index caec46b35e..0000000000
--- a/games/beetle-ngp-libretro/slack-desc
+++ /dev/null
@@ -1,19 +0,0 @@
-# HOW TO EDIT THIS FILE:
-# The "handy ruler" below makes it easier to edit a package description.
-# Line up the first '|' above the ':' following the base package name, and
-# the '|' on the right side marks the last column you can put a character in.
-# You must make exactly 11 lines for the formatting to be correct. It's also
-# customary to leave one space after the ':' except on otherwise blank lines.
-
- |-----handy-ruler------------------------------------------------------|
-beetle-ngp-libretro: beetle-ngp-libretro (libretro fork of Mednafen NGP)
-beetle-ngp-libretro:
-beetle-ngp-libretro: Beetle/Mednafen NGP is a libretro port of Mednafen NGP which is
-beetle-ngp-libretro: based off of NeoPop.
-beetle-ngp-libretro:
-beetle-ngp-libretro: Homepage: https://www.libretro.com/
-beetle-ngp-libretro:
-beetle-ngp-libretro:
-beetle-ngp-libretro:
-beetle-ngp-libretro:
-beetle-ngp-libretro:
diff --git a/games/beetle-pce-fast-libretro/README b/games/beetle-pce-fast-libretro/README
deleted file mode 100644
index 1af7e587de..0000000000
--- a/games/beetle-pce-fast-libretro/README
+++ /dev/null
@@ -1,13 +0,0 @@
-Beetle/Mednafen PCE FAST is a libretro port of Mednafen PCE Fast with
-the PC Engine SuperGrafx module removed.
-
-Beetle/Mednafen PCE FAST requires the following BIOS image file for CD
-emulation to work:
-
-* syscard3.pce (PCE-CD BIOS)
-
-Any CD-ROM System BIOS will work, but some them are known to be
-incompatible with certain games.
-
-To build the debugging symbols use:
- DEBUG=1 beetle-pce-fast-libretro.SlackBuild
diff --git a/games/beetle-pce-fast-libretro/beetle-pce-fast-libretro.SlackBuild b/games/beetle-pce-fast-libretro/beetle-pce-fast-libretro.SlackBuild
deleted file mode 100644
index ece454322a..0000000000
--- a/games/beetle-pce-fast-libretro/beetle-pce-fast-libretro.SlackBuild
+++ /dev/null
@@ -1,82 +0,0 @@
-#!/bin/sh
-
-# Slackware build script for beetle-pce-fast-libretro
-
-# Copyright 2016-2018 Hunter Sezen
-# All rights reserved.
-#
-# Redistribution and use of this script, with or without modification, is
-# permitted provided that the following conditions are met:
-#
-# 1. Redistributions of this script must retain the above copyright
-# notice, this list of conditions and the following disclaimer.
-#
-# THIS SOFTWARE IS PROVIDED BY THE AUTHOR "AS IS" AND ANY EXPRESS OR IMPLIED
-# WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE IMPLIED WARRANTIES OF
-# MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE ARE DISCLAIMED. IN NO
-# EVENT SHALL THE AUTHOR BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL,
-# SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT LIMITED TO,
-# PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, DATA, OR PROFITS;
-# OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY,
-# WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR
-# OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF THIS SOFTWARE, EVEN IF
-# ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
-
-PRGNAM=beetle-pce-fast-libretro
-LIBNAM=mednafen_pce_fast_libretro
-VERSION=${VERSION:-2018.09.29_7f6f061}
-BUILD=${BUILD:-1}
-TAG=${TAG:-_SBo}
-
-if [ -z "$ARCH" ]; then
- case "$( uname -m )" in
- i?86) ARCH=i586 ;;
- arm*) ARCH=arm ;;
- *) ARCH=$( uname -m ) ;;
- esac
-fi
-
-CWD=$(pwd)
-TMP=${TMP:-/tmp/SBo}
-PKG=$TMP/package-$PRGNAM
-OUTPUT=${OUTPUT:-/tmp}
-
-LIBDIRSUFFIX=
-[ "$ARCH" = x86_64 ] && LIBDIRSUFFIX=64
-
-set -eu
-
-rm -rf $PKG
-mkdir -p $TMP $PKG $OUTPUT
-cd $TMP
-rm -rf $PRGNAM-$VERSION
-tar xvf $CWD/$PRGNAM-$VERSION.tar.xz
-cd $PRGNAM-$VERSION
-chown -R root:root .
-find -L . \
- \( -perm 777 -o -perm 775 -o -perm 750 -o -perm 711 -o -perm 555 \
- -o -perm 511 \) -exec chmod 755 {} \; -o \
- \( -perm 666 -o -perm 664 -o -perm 640 -o -perm 600 -o -perm 444 \
- -o -perm 440 -o -perm 400 \) -exec chmod 644 {} \;
-
-[ "${DEBUG:=0}" != 0 ] && DEBUG=1
-
-make DEBUG=$DEBUG
-
-install -Dm0644 $LIBNAM.so $PKG/usr/lib${LIBDIRSUFFIX}/libretro/$LIBNAM.so
-install -Dm0644 $LIBNAM.info $PKG/usr/lib${LIBDIRSUFFIX}/libretro/info/$LIBNAM.info
-
-if [ $DEBUG = 0 ]; then
- find $PKG -print0 | xargs -0 file | grep -e "executable" -e "shared object" | grep ELF \
- | cut -f 1 -d : | xargs strip --strip-unneeded 2> /dev/null || true
-fi
-
-mkdir -p $PKG/usr/doc/$PRGNAM-$VERSION
-cp -a COPYING README.md $PKG/usr/doc/$PRGNAM-$VERSION
-cat $CWD/$PRGNAM.SlackBuild > $PKG/usr/doc/$PRGNAM-$VERSION/$PRGNAM.SlackBuild
-
-mkdir -p $PKG/install
-cat $CWD/slack-desc > $PKG/install/slack-desc
-
-cd $PKG
-/sbin/makepkg -l y -c n $OUTPUT/$PRGNAM-$VERSION-$ARCH-$BUILD$TAG.${PKGTYPE:-tgz}
diff --git a/games/beetle-pce-fast-libretro/beetle-pce-fast-libretro.info b/games/beetle-pce-fast-libretro/beetle-pce-fast-libretro.info
deleted file mode 100644
index 4eb7a0ee10..0000000000
--- a/games/beetle-pce-fast-libretro/beetle-pce-fast-libretro.info
+++ /dev/null
@@ -1,10 +0,0 @@
-PRGNAM="beetle-pce-fast-libretro"
-VERSION="2018.09.29_7f6f061"
-HOMEPAGE="https://www.libretro.com/"
-DOWNLOAD="http://slackless.raccoons.tech/src/libretro/beetle-pce-fast-libretro-2018.09.29_7f6f061.tar.xz"
-MD5SUM="848510cefb9fd24eff3b38f5a400014e"
-DOWNLOAD_x86_64=""
-MD5SUM_x86_64=""
-REQUIRES="RetroArch"
-MAINTAINER="orphaned - no maintainer"
-EMAIL="nobody@nowhere.com"
diff --git a/games/beetle-pce-fast-libretro/slack-desc b/games/beetle-pce-fast-libretro/slack-desc
deleted file mode 100644
index efb8eef874..0000000000
--- a/games/beetle-pce-fast-libretro/slack-desc
+++ /dev/null
@@ -1,19 +0,0 @@
-# HOW TO EDIT THIS FILE:
-# The "handy ruler" below makes it easier to edit a package description.
-# Line up the first '|' above the ':' following the base package name, and
-# the '|' on the right side marks the last column you can put a character in.
-# You must make exactly 11 lines for the formatting to be correct. It's also
-# customary to leave one space after the ':' except on otherwise blank lines.
-
- |-----handy-ruler------------------------------------------------------|
-beetle-pce-fast-libretro: beetle-pce-fast-libretro (libretro fork of Mednafen PCE Fast)
-beetle-pce-fast-libretro:
-beetle-pce-fast-libretro: Beetle/Mednafen PCE FAST is a TurboGrafx-16/NEC PC Engine/CD video
-beetle-pce-fast-libretro: game system emulator that can be used as a libretro core.
-beetle-pce-fast-libretro:
-beetle-pce-fast-libretro: Homepage: https://www.libretro.com/
-beetle-pce-fast-libretro:
-beetle-pce-fast-libretro:
-beetle-pce-fast-libretro:
-beetle-pce-fast-libretro:
-beetle-pce-fast-libretro:
diff --git a/games/beetle-pcfx-libretro/README b/games/beetle-pcfx-libretro/README
deleted file mode 100644
index 41c8a4ad1e..0000000000
--- a/games/beetle-pcfx-libretro/README
+++ /dev/null
@@ -1,9 +0,0 @@
-Beetle/Mednafen PC-FX is a libretro port of Mednafen PCFX.
-
-Beetle/Mednafen PCFX requires the following BIOS image file for CD
-emulation to work:
-
-* pcfx.rom (PC-FX BIOS)
-
-To build the debugging symbols use:
- DEBUG=1 beetle-pcfx-libretro.SlackBuild
diff --git a/games/beetle-pcfx-libretro/beetle-pcfx-libretro.SlackBuild b/games/beetle-pcfx-libretro/beetle-pcfx-libretro.SlackBuild
deleted file mode 100644
index 62a78508ca..0000000000
--- a/games/beetle-pcfx-libretro/beetle-pcfx-libretro.SlackBuild
+++ /dev/null
@@ -1,82 +0,0 @@
-#!/bin/sh
-
-# Slackware build script for beetle-pcfx-libretro
-
-# Copyright 2016-2018 Hunter Sezen
-# All rights reserved.
-#
-# Redistribution and use of this script, with or without modification, is
-# permitted provided that the following conditions are met:
-#
-# 1. Redistributions of this script must retain the above copyright
-# notice, this list of conditions and the following disclaimer.
-#
-# THIS SOFTWARE IS PROVIDED BY THE AUTHOR "AS IS" AND ANY EXPRESS OR IMPLIED
-# WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE IMPLIED WARRANTIES OF
-# MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE ARE DISCLAIMED. IN NO
-# EVENT SHALL THE AUTHOR BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL,
-# SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT LIMITED TO,
-# PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, DATA, OR PROFITS;
-# OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY,
-# WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR
-# OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF THIS SOFTWARE, EVEN IF
-# ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
-
-PRGNAM=beetle-pcfx-libretro
-LIBNAM=mednafen_pcfx_libretro
-VERSION=${VERSION:-2018.07.20_84b7ca6}
-BUILD=${BUILD:-1}
-TAG=${TAG:-_SBo}
-
-if [ -z "$ARCH" ]; then
- case "$( uname -m )" in
- i?86) ARCH=i586 ;;
- arm*) ARCH=arm ;;
- *) ARCH=$( uname -m ) ;;
- esac
-fi
-
-CWD=$(pwd)
-TMP=${TMP:-/tmp/SBo}
-PKG=$TMP/package-$PRGNAM
-OUTPUT=${OUTPUT:-/tmp}
-
-LIBDIRSUFFIX=
-[ "$ARCH" = x86_64 ] && LIBDIRSUFFIX=64
-
-set -eu
-
-rm -rf $PKG
-mkdir -p $TMP $PKG $OUTPUT
-cd $TMP
-rm -rf $PRGNAM-$VERSION
-tar xvf $CWD/$PRGNAM-$VERSION.tar.xz
-cd $PRGNAM-$VERSION
-chown -R root:root .
-find -L . \
- \( -perm 777 -o -perm 775 -o -perm 750 -o -perm 711 -o -perm 555 \
- -o -perm 511 \) -exec chmod 755 {} \; -o \
- \( -perm 666 -o -perm 664 -o -perm 640 -o -perm 600 -o -perm 444 \
- -o -perm 440 -o -perm 400 \) -exec chmod 644 {} \;
-
-[ "${DEBUG:=0}" != 0 ] && DEBUG=1
-
-make DEBUG=$DEBUG
-
-install -Dm0644 $LIBNAM.so $PKG/usr/lib${LIBDIRSUFFIX}/libretro/$LIBNAM.so
-install -Dm0644 $LIBNAM.info $PKG/usr/lib${LIBDIRSUFFIX}/libretro/info/$LIBNAM.info
-
-if [ $DEBUG = 0 ]; then
- find $PKG -print0 | xargs -0 file | grep -e "executable" -e "shared object" | grep ELF \
- | cut -f 1 -d : | xargs strip --strip-unneeded 2> /dev/null || true
-fi
-
-mkdir -p $PKG/usr/doc/$PRGNAM-$VERSION
-cp -a COPYING $PKG/usr/doc/$PRGNAM-$VERSION
-cat $CWD/$PRGNAM.SlackBuild > $PKG/usr/doc/$PRGNAM-$VERSION/$PRGNAM.SlackBuild
-
-mkdir -p $PKG/install
-cat $CWD/slack-desc > $PKG/install/slack-desc
-
-cd $PKG
-/sbin/makepkg -l y -c n $OUTPUT/$PRGNAM-$VERSION-$ARCH-$BUILD$TAG.${PKGTYPE:-tgz}
diff --git a/games/beetle-pcfx-libretro/beetle-pcfx-libretro.info b/games/beetle-pcfx-libretro/beetle-pcfx-libretro.info
deleted file mode 100644
index ec7f2b6e69..0000000000
--- a/games/beetle-pcfx-libretro/beetle-pcfx-libretro.info
+++ /dev/null
@@ -1,10 +0,0 @@
-PRGNAM="beetle-pcfx-libretro"
-VERSION="2018.07.20_84b7ca6"
-HOMEPAGE="https://www.libretro.com/"
-DOWNLOAD="http://slackless.raccoons.tech/src/libretro/beetle-pcfx-libretro-2018.07.20_84b7ca6.tar.xz"
-MD5SUM="8ce52c0f9e8f39e1ddd3135a4bb28f12"
-DOWNLOAD_x86_64=""
-MD5SUM_x86_64=""
-REQUIRES="RetroArch"
-MAINTAINER="orphaned - no maintainer"
-EMAIL="nobody@nowhere.com"
diff --git a/games/beetle-pcfx-libretro/slack-desc b/games/beetle-pcfx-libretro/slack-desc
deleted file mode 100644
index a0d1955ce2..0000000000
--- a/games/beetle-pcfx-libretro/slack-desc
+++ /dev/null
@@ -1,19 +0,0 @@
-# HOW TO EDIT THIS FILE:
-# The "handy ruler" below makes it easier to edit a package description.
-# Line up the first '|' above the ':' following the base package name, and
-# the '|' on the right side marks the last column you can put a character in.
-# You must make exactly 11 lines for the formatting to be correct. It's also
-# customary to leave one space after the ':' except on otherwise blank lines.
-
- |-----handy-ruler------------------------------------------------------|
-beetle-pcfx-libretro: beetle-pcfx-libretro (libretro fork of Mednafen PCFX)
-beetle-pcfx-libretro:
-beetle-pcfx-libretro: Beetle/Mednafen PCFX is a NEC PC-FX video game system emulator that
-beetle-pcfx-libretro: can be used as a libretro core.
-beetle-pcfx-libretro:
-beetle-pcfx-libretro: Homepage: https://www.libretro.com/
-beetle-pcfx-libretro:
-beetle-pcfx-libretro:
-beetle-pcfx-libretro:
-beetle-pcfx-libretro:
-beetle-pcfx-libretro:
diff --git a/games/beetle-psx-libretro/beetle-psx-libretro.SlackBuild b/games/beetle-psx-libretro/beetle-psx-libretro.SlackBuild
index b628ced3ed..d4788f604b 100644
--- a/games/beetle-psx-libretro/beetle-psx-libretro.SlackBuild
+++ b/games/beetle-psx-libretro/beetle-psx-libretro.SlackBuild
@@ -1,8 +1,9 @@
-#!/bin/sh
+#!/bin/bash
# Slackware build script for beetle-psx-libretro
# Copyright 2016-2018 Hunter Sezen
+# Copyright 2022 Vasily Sora USA
# All rights reserved.
#
# Redistribution and use of this script, with or without modification, is
@@ -22,11 +23,14 @@
# OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF THIS SOFTWARE, EVEN IF
# ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
+cd $(dirname $0) ; CWD=$(pwd)
+
PRGNAM=beetle-psx-libretro
LIBNAM=mednafen_psx_libretro
-VERSION=${VERSION:-2018.11.26_a081f34}
-BUILD=${BUILD:-1}
+VERSION=${VERSION:-2022.02.11_88929ae}
+BUILD=${BUILD:-2}
TAG=${TAG:-_SBo}
+PKGTYPE=${PKGTYPE:-tgz}
if [ -z "$ARCH" ]; then
case "$( uname -m )" in
@@ -36,7 +40,14 @@ if [ -z "$ARCH" ]; then
esac
fi
-CWD=$(pwd)
+# If the variable PRINT_PACKAGE_NAME is set, then this script will report what
+# the name of the created package would be, and then exit. This information
+# could be useful to other scripts.
+if [ ! -z "${PRINT_PACKAGE_NAME}" ]; then
+ echo "$PRGNAM-$VERSION-$ARCH-$BUILD$TAG.$PKGTYPE"
+ exit 0
+fi
+
TMP=${TMP:-/tmp/SBo}
PKG=$TMP/package-$PRGNAM
OUTPUT=${OUTPUT:-/tmp}
@@ -50,7 +61,7 @@ rm -rf $PKG
mkdir -p $TMP $PKG $OUTPUT
cd $TMP
rm -rf $PRGNAM-$VERSION
-tar xvf $CWD/$PRGNAM-$VERSION.tar.xz
+tar xvf $CWD/$PRGNAM-$VERSION.tar.gz
cd $PRGNAM-$VERSION
chown -R root:root .
find -L . \
@@ -76,7 +87,6 @@ make \
GIT_VERSION="${VERSION#*_}"
install -Dm0644 $LIBNAM.so $PKG/usr/lib${LIBDIRSUFFIX}/libretro/$LIBNAM.so
-install -Dm0644 $LIBNAM.info $PKG/usr/lib${LIBDIRSUFFIX}/libretro/info/$LIBNAM.info
if [ $DEBUG = 0 ]; then
find $PKG -print0 | xargs -0 file | grep -e "executable" -e "shared object" |
@@ -95,4 +105,4 @@ mkdir -p $PKG/install
cat $CWD/slack-desc > $PKG/install/slack-desc
cd $PKG
-/sbin/makepkg -l y -c n $OUTPUT/$PRGNAM-$VERSION-$ARCH-$BUILD$TAG.${PKGTYPE:-tgz}
+/sbin/makepkg -l y -c n $OUTPUT/$PRGNAM-$VERSION-$ARCH-$BUILD$TAG.$PKGTYPE
diff --git a/games/beetle-psx-libretro/beetle-psx-libretro.info b/games/beetle-psx-libretro/beetle-psx-libretro.info
index dc3c5f9584..5e013141b3 100644
--- a/games/beetle-psx-libretro/beetle-psx-libretro.info
+++ b/games/beetle-psx-libretro/beetle-psx-libretro.info
@@ -1,10 +1,10 @@
PRGNAM="beetle-psx-libretro"
-VERSION="2018.11.26_a081f34"
+VERSION="2022.02.11_88929ae"
HOMEPAGE="https://www.libretro.com/"
-DOWNLOAD="http://slackless.raccoons.tech/src/libretro/beetle-psx-libretro-2018.11.26_a081f34.tar.xz"
-MD5SUM="114496dfdcf210b4620d0c98636429a9"
+DOWNLOAD="http://repo.schotynet.org/sources/libretro/beetle-psx-libretro-2022.02.11_88929ae.tar.gz"
+MD5SUM="392b6e728b565c4f1cc4189e115868d5"
DOWNLOAD_x86_64=""
MD5SUM_x86_64=""
REQUIRES="RetroArch"
-MAINTAINER="orphaned - no maintainer"
-EMAIL="nobody@nowhere.com"
+MAINTAINER="khronosschoty"
+EMAIL="khronosschoty@posteo.org"
diff --git a/games/beetle-saturn-libretro/README b/games/beetle-saturn-libretro/README
deleted file mode 100644
index 50e492d5fa..0000000000
--- a/games/beetle-saturn-libretro/README
+++ /dev/null
@@ -1,11 +0,0 @@
-Standalone port of Mednafen Saturn to the libretro API.
-
-Mednafen-Saturn requires the following BIOS image files for operation:
-
-* sega_101.bin (MD5 sum: 85ec9ca47d8f6807718151cbcca8b964) NTSC-J
-* mpr-17933.bin (MD5 sum: 3240872c70984b6cbfda1586cab68dbe) NTSC-U / PAL
-
-The bios names are case sensitive.
-
-To build the debugging symbols use:
- DEBUG=1 ./beetle-saturn-libretro.SlackBuild
diff --git a/games/beetle-saturn-libretro/beetle-saturn-libretro.SlackBuild b/games/beetle-saturn-libretro/beetle-saturn-libretro.SlackBuild
deleted file mode 100644
index 22ec3b66b8..0000000000
--- a/games/beetle-saturn-libretro/beetle-saturn-libretro.SlackBuild
+++ /dev/null
@@ -1,82 +0,0 @@
-#!/bin/sh
-
-# Slackware build script for beetle-saturn-libretro
-
-# Copyright 2017-2018 Hunter Sezen California, USA
-# All rights reserved.
-#
-# Redistribution and use of this script, with or without modification, is
-# permitted provided that the following conditions are met:
-#
-# 1. Redistributions of this script must retain the above copyright
-# notice, this list of conditions and the following disclaimer.
-#
-# THIS SOFTWARE IS PROVIDED BY THE AUTHOR "AS IS" AND ANY EXPRESS OR IMPLIED
-# WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE IMPLIED WARRANTIES OF
-# MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE ARE DISCLAIMED. IN NO
-# EVENT SHALL THE AUTHOR BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL,
-# SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT LIMITED TO,
-# PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, DATA, OR PROFITS;
-# OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY,
-# WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR
-# OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF THIS SOFTWARE, EVEN IF
-# ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
-
-PRGNAM=beetle-saturn-libretro
-LIBNAM=mednafen_saturn_libretro
-VERSION=${VERSION:-2018.07.20_1983713}
-BUILD=${BUILD:-1}
-TAG=${TAG:-_SBo}
-
-if [ -z "$ARCH" ]; then
- case "$( uname -m )" in
- i?86) ARCH=i586 ;;
- arm*) ARCH=arm ;;
- *) ARCH=$( uname -m ) ;;
- esac
-fi
-
-CWD=$(pwd)
-TMP=${TMP:-/tmp/SBo}
-PKG=$TMP/package-$PRGNAM
-OUTPUT=${OUTPUT:-/tmp}
-
-LIBDIRSUFFIX=
-[ "$ARCH" = x86_64 ] && LIBDIRSUFFIX=64
-
-set -eu
-
-rm -rf $PKG
-mkdir -p $TMP $PKG $OUTPUT
-cd $TMP
-rm -rf $PRGNAM-$VERSION
-tar xvf $CWD/$PRGNAM-$VERSION.tar.xz
-cd $PRGNAM-$VERSION
-chown -R root:root .
-find -L . \
- \( -perm 777 -o -perm 775 -o -perm 750 -o -perm 711 -o -perm 555 \
- -o -perm 511 \) -exec chmod 755 {} \; -o \
- \( -perm 666 -o -perm 664 -o -perm 640 -o -perm 600 -o -perm 444 \
- -o -perm 440 -o -perm 400 \) -exec chmod 644 {} \;
-
-[ "${DEBUG:=0}" != 0 ] && DEBUG=1
-
-make DEBUG=$DEBUG
-
-install -Dm0644 $LIBNAM.so $PKG/usr/lib${LIBDIRSUFFIX}/libretro/$LIBNAM.so
-install -Dm0644 $LIBNAM.info $PKG/usr/lib${LIBDIRSUFFIX}/libretro/info/$LIBNAM.info
-
-if [ $DEBUG = 0 ]; then
- find $PKG -print0 | xargs -0 file | grep -e "executable" -e "shared object" | grep ELF \
- | cut -f 1 -d : | xargs strip --strip-unneeded 2> /dev/null || true
-fi
-
-mkdir -p $PKG/usr/doc/$PRGNAM-$VERSION
-cp -a COPYING README.md $PKG/usr/doc/$PRGNAM-$VERSION
-cat $CWD/$PRGNAM.SlackBuild > $PKG/usr/doc/$PRGNAM-$VERSION/$PRGNAM.SlackBuild
-
-mkdir -p $PKG/install
-cat $CWD/slack-desc > $PKG/install/slack-desc
-
-cd $PKG
-/sbin/makepkg -l y -c n $OUTPUT/$PRGNAM-$VERSION-$ARCH-$BUILD$TAG.${PKGTYPE:-tgz}
diff --git a/games/beetle-saturn-libretro/beetle-saturn-libretro.info b/games/beetle-saturn-libretro/beetle-saturn-libretro.info
deleted file mode 100644
index 89a1764574..0000000000
--- a/games/beetle-saturn-libretro/beetle-saturn-libretro.info
+++ /dev/null
@@ -1,10 +0,0 @@
-PRGNAM="beetle-saturn-libretro"
-VERSION="2018.07.20_1983713"
-HOMEPAGE="https://www.libretro.com/"
-DOWNLOAD="http://slackless.raccoons.tech/src/libretro/beetle-saturn-libretro-2018.07.20_1983713.tar.xz"
-MD5SUM="92c6614a0a7754756febb25d47aed43b"
-DOWNLOAD_x86_64=""
-MD5SUM_x86_64=""
-REQUIRES="RetroArch"
-MAINTAINER="orphaned - no maintainer"
-EMAIL="nobody@nowhere.com"
diff --git a/games/beetle-saturn-libretro/slack-desc b/games/beetle-saturn-libretro/slack-desc
deleted file mode 100644
index 1309fd0758..0000000000
--- a/games/beetle-saturn-libretro/slack-desc
+++ /dev/null
@@ -1,19 +0,0 @@
-# HOW TO EDIT THIS FILE:
-# The "handy ruler" below makes it easier to edit a package description.
-# Line up the first '|' above the ':' following the base package name, and
-# the '|' on the right side marks the last column you can put a character in.
-# You must make exactly 11 lines for the formatting to be correct. It's also
-# customary to leave one space after the ':' except on otherwise blank lines.
-
- |-----handy-ruler------------------------------------------------------|
-beetle-saturn-libretro: beetle-saturn-libretro (Mednafen Saturn libretro port)
-beetle-saturn-libretro:
-beetle-saturn-libretro: Standalone port of Mednafen Saturn to the libretro API.
-beetle-saturn-libretro:
-beetle-saturn-libretro: Homepage: https://www.libretro.com/
-beetle-saturn-libretro:
-beetle-saturn-libretro:
-beetle-saturn-libretro:
-beetle-saturn-libretro:
-beetle-saturn-libretro:
-beetle-saturn-libretro:
diff --git a/games/beetle-supergrafx-libretro/README b/games/beetle-supergrafx-libretro/README
deleted file mode 100644
index 924c918cc3..0000000000
--- a/games/beetle-supergrafx-libretro/README
+++ /dev/null
@@ -1,13 +0,0 @@
-PC Engine SuperGrafx is a NEC PC Engine SuperGrafx video game system
-emulator that can be used as a libretro core.
-
-Beetle/Mednafen SGX requires the following BIOS image file for CD
-emulation to work:
-
-* syscard3.pce
-
-Any CD-ROM System BIOS will work, but some them are known to be
-incompatible with certain games.
-
-To build the debugging symbols use:
- DEBUG=1 ./beetle-supergrafx-libretro.SlackBuild
diff --git a/games/beetle-supergrafx-libretro/beetle-supergrafx-libretro.SlackBuild b/games/beetle-supergrafx-libretro/beetle-supergrafx-libretro.SlackBuild
deleted file mode 100644
index 403a7aa706..0000000000
--- a/games/beetle-supergrafx-libretro/beetle-supergrafx-libretro.SlackBuild
+++ /dev/null
@@ -1,82 +0,0 @@
-#!/bin/sh
-
-# Slackware build script for beetle-supergrafx-libretro
-
-# Copyright 2016-2018 Hunter Sezen
-# All rights reserved.
-#
-# Redistribution and use of this script, with or without modification, is
-# permitted provided that the following conditions are met:
-#
-# 1. Redistributions of this script must retain the above copyright
-# notice, this list of conditions and the following disclaimer.
-#
-# THIS SOFTWARE IS PROVIDED BY THE AUTHOR "AS IS" AND ANY EXPRESS OR IMPLIED
-# WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE IMPLIED WARRANTIES OF
-# MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE ARE DISCLAIMED. IN NO
-# EVENT SHALL THE AUTHOR BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL,
-# SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT LIMITED TO,
-# PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, DATA, OR PROFITS;
-# OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY,
-# WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR
-# OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF THIS SOFTWARE, EVEN IF
-# ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
-
-PRGNAM=beetle-supergrafx-libretro
-LIBNAM=mednafen_supergrafx_libretro
-VERSION=${VERSION:-2018.09.29_a8f924e}
-BUILD=${BUILD:-1}
-TAG=${TAG:-_SBo}
-
-if [ -z "$ARCH" ]; then
- case "$( uname -m )" in
- i?86) ARCH=i586 ;;
- arm*) ARCH=arm ;;
- *) ARCH=$( uname -m ) ;;
- esac
-fi
-
-CWD=$(pwd)
-TMP=${TMP:-/tmp/SBo}
-PKG=$TMP/package-$PRGNAM
-OUTPUT=${OUTPUT:-/tmp}
-
-LIBDIRSUFFIX=
-[ "$ARCH" = x86_64 ] && LIBDIRSUFFIX=64
-
-set -eu
-
-rm -rf $PKG
-mkdir -p $TMP $PKG $OUTPUT
-cd $TMP
-rm -rf $PRGNAM-$VERSION
-tar xvf $CWD/$PRGNAM-$VERSION.tar.xz
-cd $PRGNAM-$VERSION
-chown -R root:root .
-find -L . \
- \( -perm 777 -o -perm 775 -o -perm 750 -o -perm 711 -o -perm 555 \
- -o -perm 511 \) -exec chmod 755 {} \; -o \
- \( -perm 666 -o -perm 664 -o -perm 640 -o -perm 600 -o -perm 444 \
- -o -perm 440 -o -perm 400 \) -exec chmod 644 {} \;
-
-[ "${DEBUG:=0}" != 0 ] && DEBUG=1
-
-make DEBUG=$DEBUG
-
-install -Dm0644 $LIBNAM.so $PKG/usr/lib${LIBDIRSUFFIX}/libretro/$LIBNAM.so
-install -Dm0644 $LIBNAM.info $PKG/usr/lib${LIBDIRSUFFIX}/libretro/info/$LIBNAM.info
-
-if [ $DEBUG = 0 ]; then
- find $PKG -print0 | xargs -0 file | grep -e "executable" -e "shared object" | grep ELF \
- | cut -f 1 -d : | xargs strip --strip-unneeded 2> /dev/null || true
-fi
-
-mkdir -p $PKG/usr/doc/$PRGNAM-$VERSION
-cp -a COPYING $PKG/usr/doc/$PRGNAM-$VERSION
-cat $CWD/$PRGNAM.SlackBuild > $PKG/usr/doc/$PRGNAM-$VERSION/$PRGNAM.SlackBuild
-
-mkdir -p $PKG/install
-cat $CWD/slack-desc > $PKG/install/slack-desc
-
-cd $PKG
-/sbin/makepkg -l y -c n $OUTPUT/$PRGNAM-$VERSION-$ARCH-$BUILD$TAG.${PKGTYPE:-tgz}
diff --git a/games/beetle-supergrafx-libretro/beetle-supergrafx-libretro.info b/games/beetle-supergrafx-libretro/beetle-supergrafx-libretro.info
deleted file mode 100644
index 4b6e05b808..0000000000
--- a/games/beetle-supergrafx-libretro/beetle-supergrafx-libretro.info
+++ /dev/null
@@ -1,10 +0,0 @@
-PRGNAM="beetle-supergrafx-libretro"
-VERSION="2018.09.29_a8f924e"
-HOMEPAGE="https://www.libretro.com/"
-DOWNLOAD="http://slackless.raccoons.tech/src/libretro/beetle-supergrafx-libretro-2018.09.29_a8f924e.tar.xz"
-MD5SUM="da53f1740db2a7c51757839cd132f261"
-DOWNLOAD_x86_64=""
-MD5SUM_x86_64=""
-REQUIRES="RetroArch"
-MAINTAINER="orphaned - no maintainer"
-EMAIL="nobody@nowhere.com"
diff --git a/games/beetle-supergrafx-libretro/slack-desc b/games/beetle-supergrafx-libretro/slack-desc
deleted file mode 100644
index f55d1b7a52..0000000000
--- a/games/beetle-supergrafx-libretro/slack-desc
+++ /dev/null
@@ -1,19 +0,0 @@
-# HOW TO EDIT THIS FILE:
-# The "handy ruler" below makes it easier to edit a package description.
-# Line up the first '|' above the ':' following the base package name, and
-# the '|' on the right side marks the last column you can put a character in.
-# You must make exactly 11 lines for the formatting to be correct. It's also
-# customary to leave one space after the ':' except on otherwise blank lines.
-
- |-----handy-ruler------------------------------------------------------|
-beetle-supergrafx-libretro: beetle-supergrafx-libretro (libretro fork of Mednafen PCE Fast)
-beetle-supergrafx-libretro:
-beetle-supergrafx-libretro: PC Engine SuperGrafx is a NEC PC Engine SuperGrafx video game system
-beetle-supergrafx-libretro: emulator that can be used as a libretro core.
-beetle-supergrafx-libretro:
-beetle-supergrafx-libretro: Homepage: https://www.libretro.com/
-beetle-supergrafx-libretro:
-beetle-supergrafx-libretro:
-beetle-supergrafx-libretro:
-beetle-supergrafx-libretro:
-beetle-supergrafx-libretro:
diff --git a/games/beetle-vb-libretro/README b/games/beetle-vb-libretro/README
deleted file mode 100644
index 60e5132ba0..0000000000
--- a/games/beetle-vb-libretro/README
+++ /dev/null
@@ -1,5 +0,0 @@
-Beetle/Mednafen VB is a Nintendo Virtual Boy Video game system
-emulator that can be used as a libretro core.
-
-To build the debugging symbols use:
- DEBUG=1 ./beetle-vb-libretro.SlackBuild
diff --git a/games/beetle-vb-libretro/beetle-vb-libretro.SlackBuild b/games/beetle-vb-libretro/beetle-vb-libretro.SlackBuild
deleted file mode 100644
index 10516bf336..0000000000
--- a/games/beetle-vb-libretro/beetle-vb-libretro.SlackBuild
+++ /dev/null
@@ -1,82 +0,0 @@
-#!/bin/sh
-
-# Slackware build script for beetle-vb-libretro
-
-# Copyright 2016-2018 Hunter Sezen
-# All rights reserved.
-#
-# Redistribution and use of this script, with or without modification, is
-# permitted provided that the following conditions are met:
-#
-# 1. Redistributions of this script must retain the above copyright
-# notice, this list of conditions and the following disclaimer.
-#
-# THIS SOFTWARE IS PROVIDED BY THE AUTHOR "AS IS" AND ANY EXPRESS OR IMPLIED
-# WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE IMPLIED WARRANTIES OF
-# MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE ARE DISCLAIMED. IN NO
-# EVENT SHALL THE AUTHOR BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL,
-# SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT LIMITED TO,
-# PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, DATA, OR PROFITS;
-# OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY,
-# WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR
-# OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF THIS SOFTWARE, EVEN IF
-# ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
-
-PRGNAM=beetle-vb-libretro
-LIBNAM=mednafen_vb_libretro
-VERSION=${VERSION:-2018.09.29_93f5b60}
-BUILD=${BUILD:-1}
-TAG=${TAG:-_SBo}
-
-if [ -z "$ARCH" ]; then
- case "$( uname -m )" in
- i?86) ARCH=i586 ;;
- arm*) ARCH=arm ;;
- *) ARCH=$( uname -m ) ;;
- esac
-fi
-
-CWD=$(pwd)
-TMP=${TMP:-/tmp/SBo}
-PKG=$TMP/package-$PRGNAM
-OUTPUT=${OUTPUT:-/tmp}
-
-LIBDIRSUFFIX=
-[ "$ARCH" = x86_64 ] && LIBDIRSUFFIX=64
-
-set -eu
-
-rm -rf $PKG
-mkdir -p $TMP $PKG $OUTPUT
-cd $TMP
-rm -rf $PRGNAM-$VERSION
-tar xvf $CWD/$PRGNAM-$VERSION.tar.xz
-cd $PRGNAM-$VERSION
-chown -R root:root .
-find -L . \
- \( -perm 777 -o -perm 775 -o -perm 750 -o -perm 711 -o -perm 555 \
- -o -perm 511 \) -exec chmod 755 {} \; -o \
- \( -perm 666 -o -perm 664 -o -perm 640 -o -perm 600 -o -perm 444 \
- -o -perm 440 -o -perm 400 \) -exec chmod 644 {} \;
-
-[ "${DEBUG:=0}" != 0 ] && DEBUG=1
-
-make DEBUG=$DEBUG
-
-install -Dm0644 $LIBNAM.so $PKG/usr/lib${LIBDIRSUFFIX}/libretro/$LIBNAM.so
-install -Dm0644 $LIBNAM.info $PKG/usr/lib${LIBDIRSUFFIX}/libretro/info/$LIBNAM.info
-
-if [ $DEBUG = 0 ]; then
- find $PKG -print0 | xargs -0 file | grep -e "executable" -e "shared object" | grep ELF \
- | cut -f 1 -d : | xargs strip --strip-unneeded 2> /dev/null || true
-fi
-
-mkdir -p $PKG/usr/doc/$PRGNAM-$VERSION
-cp -a COPYING $PKG/usr/doc/$PRGNAM-$VERSION
-cat $CWD/$PRGNAM.SlackBuild > $PKG/usr/doc/$PRGNAM-$VERSION/$PRGNAM.SlackBuild
-
-mkdir -p $PKG/install
-cat $CWD/slack-desc > $PKG/install/slack-desc
-
-cd $PKG
-/sbin/makepkg -l y -c n $OUTPUT/$PRGNAM-$VERSION-$ARCH-$BUILD$TAG.${PKGTYPE:-tgz}
diff --git a/games/beetle-vb-libretro/beetle-vb-libretro.info b/games/beetle-vb-libretro/beetle-vb-libretro.info
deleted file mode 100644
index beeee3f4d0..0000000000
--- a/games/beetle-vb-libretro/beetle-vb-libretro.info
+++ /dev/null
@@ -1,10 +0,0 @@
-PRGNAM="beetle-vb-libretro"
-VERSION="2018.09.29_93f5b60"
-HOMEPAGE="https://www.libretro.com/"
-DOWNLOAD="http://slackless.raccoons.tech/src/libretro/beetle-vb-libretro-2018.09.29_93f5b60.tar.xz"
-MD5SUM="d9f0d74d96840dfd8db1c729b53379e3"
-DOWNLOAD_x86_64=""
-MD5SUM_x86_64=""
-REQUIRES="RetroArch"
-MAINTAINER="orphaned - no maintainer"
-EMAIL="nobody@nowhere.com"
diff --git a/games/beetle-vb-libretro/slack-desc b/games/beetle-vb-libretro/slack-desc
deleted file mode 100644
index 222858ca33..0000000000
--- a/games/beetle-vb-libretro/slack-desc
+++ /dev/null
@@ -1,19 +0,0 @@
-# HOW TO EDIT THIS FILE:
-# The "handy ruler" below makes it easier to edit a package description.
-# Line up the first '|' above the ':' following the base package name, and
-# the '|' on the right side marks the last column you can put a character in.
-# You must make exactly 11 lines for the formatting to be correct. It's also
-# customary to leave one space after the ':' except on otherwise blank lines.
-
- |-----handy-ruler------------------------------------------------------|
-beetle-vb-libretro: beetle-vb-libretro (libretro fork of Mednafen VB)
-beetle-vb-libretro:
-beetle-vb-libretro: Beetle/Mednafen VB is a Nintendo Virtual Boy video game system
-beetle-vb-libretro: emulator that can be used as a libretro core.
-beetle-vb-libretro:
-beetle-vb-libretro: Homepage: https://www.libretro.com/
-beetle-vb-libretro:
-beetle-vb-libretro:
-beetle-vb-libretro:
-beetle-vb-libretro:
-beetle-vb-libretro:
diff --git a/games/beetle-wswan-libretro/README b/games/beetle-wswan-libretro/README
deleted file mode 100644
index 989f36325c..0000000000
--- a/games/beetle-wswan-libretro/README
+++ /dev/null
@@ -1,5 +0,0 @@
-Beetle/Mednafen WSWAN is a WonderSwan (Color) video game system
-emulator that can be used as a libretro core.
-
-To build the debugging symbols use:
- DEBUG=1 ./beetle-wswan-libretro.SlackBuild
diff --git a/games/beetle-wswan-libretro/beetle-wswan-libretro.SlackBuild b/games/beetle-wswan-libretro/beetle-wswan-libretro.SlackBuild
deleted file mode 100644
index 994f3fa594..0000000000
--- a/games/beetle-wswan-libretro/beetle-wswan-libretro.SlackBuild
+++ /dev/null
@@ -1,82 +0,0 @@
-#!/bin/sh
-
-# Slackware build script for beetle-wswan-libretro
-
-# Copyright 2016-2018 Hunter Sezen
-# All rights reserved.
-#
-# Redistribution and use of this script, with or without modification, is
-# permitted provided that the following conditions are met:
-#
-# 1. Redistributions of this script must retain the above copyright
-# notice, this list of conditions and the following disclaimer.
-#
-# THIS SOFTWARE IS PROVIDED BY THE AUTHOR "AS IS" AND ANY EXPRESS OR IMPLIED
-# WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE IMPLIED WARRANTIES OF
-# MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE ARE DISCLAIMED. IN NO
-# EVENT SHALL THE AUTHOR BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL,
-# SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT LIMITED TO,
-# PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, DATA, OR PROFITS;
-# OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY,
-# WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR
-# OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF THIS SOFTWARE, EVEN IF
-# ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
-
-PRGNAM=beetle-wswan-libretro
-LIBNAM=mednafen_wswan_libretro
-VERSION=${VERSION:-2018.09.30_207404b}
-BUILD=${BUILD:-1}
-TAG=${TAG:-_SBo}
-
-if [ -z "$ARCH" ]; then
- case "$( uname -m )" in
- i?86) ARCH=i586 ;;
- arm*) ARCH=arm ;;
- *) ARCH=$( uname -m ) ;;
- esac
-fi
-
-CWD=$(pwd)
-TMP=${TMP:-/tmp/SBo}
-PKG=$TMP/package-$PRGNAM
-OUTPUT=${OUTPUT:-/tmp}
-
-LIBDIRSUFFIX=
-[ "$ARCH" = x86_64 ] && LIBDIRSUFFIX=64
-
-set -eu
-
-rm -rf $PKG
-mkdir -p $TMP $PKG $OUTPUT
-cd $TMP
-rm -rf $PRGNAM-$VERSION
-tar xvf $CWD/$PRGNAM-$VERSION.tar.xz
-cd $PRGNAM-$VERSION
-chown -R root:root .
-find -L . \
- \( -perm 777 -o -perm 775 -o -perm 750 -o -perm 711 -o -perm 555 \
- -o -perm 511 \) -exec chmod 755 {} \; -o \
- \( -perm 666 -o -perm 664 -o -perm 640 -o -perm 600 -o -perm 444 \
- -o -perm 440 -o -perm 400 \) -exec chmod 644 {} \;
-
-[ "${DEBUG:=0}" != 0 ] && DEBUG=1
-
-make DEBUG=$DEBUG
-
-install -Dm0644 $LIBNAM.so $PKG/usr/lib${LIBDIRSUFFIX}/libretro/$LIBNAM.so
-install -Dm0644 $LIBNAM.info $PKG/usr/lib${LIBDIRSUFFIX}/libretro/info/$LIBNAM.info
-
-if [ $DEBUG = 0 ]; then
- find $PKG -print0 | xargs -0 file | grep -e "executable" -e "shared object" | grep ELF \
- | cut -f 1 -d : | xargs strip --strip-unneeded 2> /dev/null || true
-fi
-
-mkdir -p $PKG/usr/doc/$PRGNAM-$VERSION
-cp -a COPYING $PKG/usr/doc/$PRGNAM-$VERSION
-cat $CWD/$PRGNAM.SlackBuild > $PKG/usr/doc/$PRGNAM-$VERSION/$PRGNAM.SlackBuild
-
-mkdir -p $PKG/install
-cat $CWD/slack-desc > $PKG/install/slack-desc
-
-cd $PKG
-/sbin/makepkg -l y -c n $OUTPUT/$PRGNAM-$VERSION-$ARCH-$BUILD$TAG.${PKGTYPE:-tgz}
diff --git a/games/beetle-wswan-libretro/beetle-wswan-libretro.info b/games/beetle-wswan-libretro/beetle-wswan-libretro.info
deleted file mode 100644
index 1e23a7ff6b..0000000000
--- a/games/beetle-wswan-libretro/beetle-wswan-libretro.info
+++ /dev/null
@@ -1,10 +0,0 @@
-PRGNAM="beetle-wswan-libretro"
-VERSION="2018.09.30_207404b"
-HOMEPAGE="https://www.libretro.com/"
-DOWNLOAD="http://slackless.raccoons.tech/src/libretro/beetle-wswan-libretro-2018.09.30_207404b.tar.xz"
-MD5SUM="241afe036448455c6b37d5a25f1a61a0"
-DOWNLOAD_x86_64=""
-MD5SUM_x86_64=""
-REQUIRES="RetroArch"
-MAINTAINER="orphaned - no maintainer"
-EMAIL="nobody@nowhere.com"
diff --git a/games/beetle-wswan-libretro/slack-desc b/games/beetle-wswan-libretro/slack-desc
deleted file mode 100644
index 856d292c43..0000000000
--- a/games/beetle-wswan-libretro/slack-desc
+++ /dev/null
@@ -1,19 +0,0 @@
-# HOW TO EDIT THIS FILE:
-# The "handy ruler" below makes it easier to edit a package description.
-# Line up the first '|' above the ':' following the base package name, and
-# the '|' on the right side marks the last column you can put a character in.
-# You must make exactly 11 lines for the formatting to be correct. It's also
-# customary to leave one space after the ':' except on otherwise blank lines.
-
- |-----handy-ruler------------------------------------------------------|
-beetle-wswan-libretro: beetle-wswan-libretro (libretro fork of Mednafen WonderSwan)
-beetle-wswan-libretro:
-beetle-wswan-libretro: Beetle/Mednafen WSWAN is a WonderSwan (Color) video game system
-beetle-wswan-libretro: emulator that can be used as a libretro core.
-beetle-wswan-libretro:
-beetle-wswan-libretro: Homepage: https://www.libretro.com/
-beetle-wswan-libretro:
-beetle-wswan-libretro:
-beetle-wswan-libretro:
-beetle-wswan-libretro:
-beetle-wswan-libretro:
diff --git a/games/berusky-data/berusky-data.SlackBuild b/games/berusky-data/berusky-data.SlackBuild
index bf18697cd8..38d01cb3bd 100644
--- a/games/berusky-data/berusky-data.SlackBuild
+++ b/games/berusky-data/berusky-data.SlackBuild
@@ -1,4 +1,4 @@
-#!/bin/sh
+#!/bin/bash
# Slackware build script for berusky-data
@@ -22,11 +22,14 @@
# OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF THIS SOFTWARE, EVEN IF
# ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
+cd $(dirname $0) ; CWD=$(pwd)
+
PRGNAM=berusky-data
GAMENAM=$(echo $PRGNAM | cut -c1-7)
VERSION=${VERSION:-1.7}
BUILD=${BUILD:-1}
TAG=${TAG:-_SBo}
+PKGTYPE=${PKGTYPE:-tgz}
if [ -z "$ARCH" ]; then
case "$( uname -m )" in
@@ -36,7 +39,14 @@ if [ -z "$ARCH" ]; then
esac
fi
-CWD=$(pwd)
+# If the variable PRINT_PACKAGE_NAME is set, then this script will report what
+# the name of the created package would be, and then exit. This information
+# could be useful to other scripts.
+if [ ! -z "${PRINT_PACKAGE_NAME}" ]; then
+ echo "$PRGNAM-$VERSION-$ARCH-$BUILD$TAG.$PKGTYPE"
+ exit 0
+fi
+
TMP=${TMP:-/tmp/SBo}
PKG=$TMP/package-$PRGNAM
OUTPUT=${OUTPUT:-/tmp}
@@ -85,4 +95,4 @@ mkdir -p $PKG/install
cat $CWD/slack-desc > $PKG/install/slack-desc
cd $PKG
-/sbin/makepkg -l y -c n $OUTPUT/$PRGNAM-$VERSION-$ARCH-$BUILD$TAG.${PKGTYPE:-tgz}
+/sbin/makepkg -l y -c n $OUTPUT/$PRGNAM-$VERSION-$ARCH-$BUILD$TAG.$PKGTYPE
diff --git a/games/berusky-data/berusky-data.info b/games/berusky-data/berusky-data.info
index a0ac7b0560..8dcb4cc177 100644
--- a/games/berusky-data/berusky-data.info
+++ b/games/berusky-data/berusky-data.info
@@ -1,7 +1,7 @@
PRGNAM="berusky-data"
VERSION="1.7"
HOMEPAGE="http://anakreon.cz/?q=node/1"
-DOWNLOAD="http://downloads.sourceforge.net/project/berusky/berusky-data/1.7/berusky-data-1.7.tar.gz"
+DOWNLOAD="https://src.fedoraproject.org/repo/pkgs/berusky-data/berusky-data-1.7.tar.gz/76fb1ca01183b385d21aacdb826dcddf/berusky-data-1.7.tar.gz"
MD5SUM="76fb1ca01183b385d21aacdb826dcddf"
DOWNLOAD_x86_64=""
MD5SUM_x86_64=""
diff --git a/games/berusky/berusky.SlackBuild b/games/berusky/berusky.SlackBuild
index 74f44e03ef..89a7d5ce93 100644
--- a/games/berusky/berusky.SlackBuild
+++ b/games/berusky/berusky.SlackBuild
@@ -1,4 +1,4 @@
-#!/bin/sh
+#!/bin/bash
# Slackware build script for berusky
@@ -22,10 +22,19 @@
# OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF THIS SOFTWARE, EVEN IF
# ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
+# 20220222 bkw: Modified by SlackBuilds.org, BUILD=2:
+# - update to v1.7.2 (old version segfaulted on startup, on 15.0).
+# - binary in /usr/games.
+# - fix icon (png file was named .svg).
+# - fix .desktop.
+
+cd $(dirname $0) ; CWD=$(pwd)
+
PRGNAM=berusky
-VERSION=${VERSION:-1.7}
+VERSION=${VERSION:-1.7.2}
BUILD=${BUILD:-1}
TAG=${TAG:-_SBo}
+PKGTYPE=${PKGTYPE:-tgz}
if [ -z "$ARCH" ]; then
case "$( uname -m )" in
@@ -35,7 +44,11 @@ if [ -z "$ARCH" ]; then
esac
fi
-CWD=$(pwd)
+if [ ! -z "${PRINT_PACKAGE_NAME}" ]; then
+ echo "$PRGNAM-$VERSION-$ARCH-$BUILD$TAG.$PKGTYPE"
+ exit 0
+fi
+
TMP=${TMP:-/tmp/SBo}
PKG=$TMP/package-$PRGNAM
OUTPUT=${OUTPUT:-/tmp}
@@ -63,32 +76,32 @@ rm -rf $PRGNAM-$VERSION
tar xvf $CWD/$PRGNAM-$VERSION.tar.gz
cd $PRGNAM-$VERSION
chown -R root:root .
-find -L . \
- \( -perm 777 -o -perm 775 -o -perm 750 -o -perm 711 -o -perm 555 \
- -o -perm 511 \) -exec chmod 755 {} \; -o \
- \( -perm 666 -o -perm 664 -o -perm 640 -o -perm 600 -o -perm 444 \
- -o -perm 440 -o -perm 400 \) -exec chmod 644 {} \;
+# 20220222 bkw: do not use template, it trips over dangling symlinks.
+find . -type f -exec chmod 644 {} \+
+find . -type d -exec chmod 755 {} \+
sed -i 's/var\/games/usr\/share/' src/defines.h
+autoreconf -if
+
CFLAGS="$SLKCFLAGS" \
-CXXFLAGS="$SLKCFLAGS" \
-./configure \
+CXXFLAGS="$SLKCFLAGS -std=c++11" \
+sh ./configure \
--prefix=/usr \
+ --bindir=/usr/games \
--docdir=/usr/doc/$PRGNAM-$VERSION \
--build=$ARCH-slackware-linux
make
-make install DESTDIR=$PKG
+make install-strip DESTDIR=$PKG
-find $PKG -print0 | xargs -0 file | grep -e "executable" -e "shared object" | grep ELF \
- | cut -f 1 -d : | xargs strip --strip-unneeded 2> /dev/null || true
+sed -i 's,/usr/bin,/usr/games,' $PKG/usr/share/berusky/berusky.ini
mkdir -p $PKG/usr/share/applications
install -D -m644 $CWD/$PRGNAM.desktop $PKG/usr/share/applications/$PRGNAM.desktop
mkdir -p $PKG/usr/share/pixmaps/
-install -D -m644 $CWD/$PRGNAM.png $PKG/usr/share/pixmaps/$PRGNAM.svg
+install -D -m644 $CWD/$PRGNAM.png $PKG/usr/share/pixmaps/$PRGNAM.png
mkdir -p $PKG/usr/doc/$PRGNAM-$VERSION
cp -a AUTHORS COPYING ChangeLog README TODO $PKG/usr/doc/$PRGNAM-$VERSION
@@ -100,4 +113,4 @@ cat $CWD/slack-desc > $PKG/install/slack-desc
cat $CWD/doinst.sh > $PKG/install/doinst.sh
cd $PKG
-/sbin/makepkg -l y -c n $OUTPUT/$PRGNAM-$VERSION-$ARCH-$BUILD$TAG.${PKGTYPE:-tgz}
+/sbin/makepkg -l y -c n $OUTPUT/$PRGNAM-$VERSION-$ARCH-$BUILD$TAG.$PKGTYPE
diff --git a/games/berusky/berusky.desktop b/games/berusky/berusky.desktop
index 217c5e1f1c..fac59bdeca 100644
--- a/games/berusky/berusky.desktop
+++ b/games/berusky/berusky.desktop
@@ -2,8 +2,8 @@
Name=Berusky
Name[he]=Berusky
Comment=Rescue the bugs!
-Exec=berusky
-Icon=berusky
+Exec=/usr/games/berusky
+Icon=/usr/share/pixmaps/berusky.png
Terminal=false
Type=Application
Categories=Game;LogicGame;
diff --git a/games/berusky/berusky.info b/games/berusky/berusky.info
index 51688931ab..020c0d7bf8 100644
--- a/games/berusky/berusky.info
+++ b/games/berusky/berusky.info
@@ -1,8 +1,8 @@
PRGNAM="berusky"
-VERSION="1.7"
+VERSION="1.7.2"
HOMEPAGE="http://anakreon.cz/?q=node/1"
-DOWNLOAD="http://downloads.sourceforge.net/project/berusky/berusky/1.7/berusky-1.7.tar.gz"
-MD5SUM="e76626588228b8d320772ea5c173579d"
+DOWNLOAD="https://github.com/stransky/berusky/archive/v1.7.2/berusky-1.7.2.tar.gz"
+MD5SUM="10ac9c9151b989d108eaa8adeb7fb93e"
DOWNLOAD_x86_64=""
MD5SUM_x86_64=""
REQUIRES="berusky-data"
diff --git a/games/berusky2-data/berusky2-data.SlackBuild b/games/berusky2-data/berusky2-data.SlackBuild
index 6d1d70e5b8..cfaf5376de 100644
--- a/games/berusky2-data/berusky2-data.SlackBuild
+++ b/games/berusky2-data/berusky2-data.SlackBuild
@@ -1,8 +1,8 @@
-#!/bin/sh
+#!/bin/bash
# Slackware build script for berusky2-data
-# Copyright 2014-2016 Dimitris Zlatanidis Orestiada, Greece
+# Copyright 2014-2024 Dimitris Zlatanidis Orestiada, Greece
# All rights reserved.
#
# Redistribution and use of this script, with or without modification, is
@@ -22,11 +22,14 @@
# OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF THIS SOFTWARE, EVEN IF
# ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
+cd $(dirname $0) ; CWD=$(pwd)
+
PRGNAM=berusky2-data
GAMENAM=$(echo $PRGNAM | cut -c1-8)
-VERSION=${VERSION:-0.9}
+VERSION=${VERSION:-0.12}
BUILD=${BUILD:-1}
TAG=${TAG:-_SBo}
+PKGTYPE=${PKGTYPE:-tgz}
if [ -z "$ARCH" ]; then
case "$( uname -m )" in
@@ -36,7 +39,14 @@ if [ -z "$ARCH" ]; then
esac
fi
-CWD=$(pwd)
+# If the variable PRINT_PACKAGE_NAME is set, then this script will report what
+# the name of the created package would be, and then exit. This information
+# could be useful to other scripts.
+if [ ! -z "${PRINT_PACKAGE_NAME}" ]; then
+ echo "$PRGNAM-$VERSION-$ARCH-$BUILD$TAG.$PKGTYPE"
+ exit 0
+fi
+
TMP=${TMP:-/tmp/SBo}
PKG=$TMP/package-$PRGNAM
OUTPUT=${OUTPUT:-/tmp}
@@ -61,7 +71,7 @@ rm -rf $PKG
mkdir -p $TMP $PKG $OUTPUT
cd $TMP
rm -rf $PRGNAM-$VERSION
-tar xvf $CWD/$PRGNAM-$VERSION.tar.bz2
+tar xvf $CWD/$PRGNAM-$VERSION.tar.xz
cd $PRGNAM-$VERSION
chown -R root:root .
find -L . \
@@ -85,4 +95,4 @@ mkdir -p $PKG/install
cat $CWD/slack-desc > $PKG/install/slack-desc
cd $PKG
-/sbin/makepkg -l y -c n $OUTPUT/$PRGNAM-$VERSION-$ARCH-$BUILD$TAG.${PKGTYPE:-tgz}
+/sbin/makepkg -l y -c n $OUTPUT/$PRGNAM-$VERSION-$ARCH-$BUILD$TAG.$PKGTYPE
diff --git a/games/berusky2-data/berusky2-data.info b/games/berusky2-data/berusky2-data.info
index c44718a039..6b2e1f0fd6 100644
--- a/games/berusky2-data/berusky2-data.info
+++ b/games/berusky2-data/berusky2-data.info
@@ -1,10 +1,10 @@
PRGNAM="berusky2-data"
-VERSION="0.9"
+VERSION="0.12"
HOMEPAGE="http://anakreon.cz/?q=node/2"
-DOWNLOAD="http://downloads.sourceforge.net/project/berusky2/berusky2-data-0.9/berusky2-data-0.9.tar.bz2"
-MD5SUM="b0d472dfb6c64c00f777d30427ed728d"
+DOWNLOAD="https://anakreon.cz/download/berusky2-data-0.12.tar.xz"
+MD5SUM="db7f848ddd596625e05af63a54e166c2"
DOWNLOAD_x86_64=""
MD5SUM_x86_64=""
REQUIRES=""
MAINTAINER="Dimitris Zlatanidis"
-EMAIL="d.zlatanidis@gmail.com"
+EMAIL="dslackw@gmail.com"
diff --git a/games/berusky2/berusky2.SlackBuild b/games/berusky2/berusky2.SlackBuild
index c6021d1496..a7925e511b 100644
--- a/games/berusky2/berusky2.SlackBuild
+++ b/games/berusky2/berusky2.SlackBuild
@@ -1,8 +1,8 @@
-#!/bin/sh
+#!/bin/bash
# Slackware build script for berusky2
-# Copyright 2014-2016 Dimitris Zlatanidis Orestiada, Greece
+# Copyright 2014-2024 Dimitris Zlatanidis Orestiada, Greece
# All rights reserved.
#
# Redistribution and use of this script, with or without modification, is
@@ -22,10 +22,13 @@
# OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF THIS SOFTWARE, EVEN IF
# ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
+cd $(dirname $0) ; CWD=$(pwd)
+
PRGNAM=berusky2
-VERSION=${VERSION:-0.10}
+VERSION=${VERSION:-0.12}
BUILD=${BUILD:-1}
TAG=${TAG:-_SBo}
+PKGTYPE=${PKGTYPE:-tgz}
if [ -z "$ARCH" ]; then
case "$( uname -m )" in
@@ -35,7 +38,11 @@ if [ -z "$ARCH" ]; then
esac
fi
-CWD=$(pwd)
+if [ ! -z "${PRINT_PACKAGE_NAME}" ]; then
+ echo "$PRGNAM-$VERSION-$ARCH-$BUILD$TAG.$PKGTYPE"
+ exit 0
+fi
+
TMP=${TMP:-/tmp/SBo}
PKG=$TMP/package-$PRGNAM
OUTPUT=${OUTPUT:-/tmp}
@@ -69,10 +76,18 @@ find -L . \
\( -perm 666 -o -perm 664 -o -perm 640 -o -perm 600 -o -perm 444 \
-o -perm 440 -o -perm 400 \) -exec chmod 644 {} \;
+# 20220222 bkw: ordered comparison of pointer and int. in later
+# versions of berusky2, the code in the body of this "if" always
+# executes, so "if(1)" does the same thing here.
+# sed -i 's,if (iPos >= 0),if(1),' src/kofola/game_logic.cpp
+
+autoreconf -fi
+
CFLAGS="$SLKCFLAGS" \
CXXFLAGS="$SLKCFLAGS" \
./configure \
--prefix=/usr \
+ --bindir=/usr/games \
--sysconfdir=/etc \
--localstatedir=/var \
--with-ini-file-global-dir=\"/usr/share/$PRGNAM\" \
@@ -80,13 +95,10 @@ CXXFLAGS="$SLKCFLAGS" \
--build=$ARCH-slackware-linux
make
-make install DESTDIR=$PKG
-
-find $PKG -print0 | xargs -0 file | grep -e "executable" -e "shared object" | grep ELF \
- | cut -f 1 -d : | xargs strip --strip-unneeded 2> /dev/null || true
+make install-strip DESTDIR=$PKG
mkdir -p $PKG/usr/share/applications
-install -D -m644 data/$PRGNAM.desktop $PKG/usr/share/applications/$PRGNAM.desktop
+install -oroot -groot -m644 $CWD/$PRGNAM.desktop $PKG/usr/share/applications/$PRGNAM.desktop
mkdir -p $PKG/usr/share/pixmaps/
install -D -m644 data/$PRGNAM.png $PKG/usr/share/pixmaps/$PRGNAM.png
@@ -104,4 +116,4 @@ cat $CWD/slack-desc > $PKG/install/slack-desc
cat $CWD/doinst.sh > $PKG/install/doinst.sh
cd $PKG
-/sbin/makepkg -l y -c n $OUTPUT/$PRGNAM-$VERSION-$ARCH-$BUILD$TAG.${PKGTYPE:-tgz}
+/sbin/makepkg -l y -c n $OUTPUT/$PRGNAM-$VERSION-$ARCH-$BUILD$TAG.$PKGTYPE
diff --git a/games/berusky2/berusky2.desktop b/games/berusky2/berusky2.desktop
new file mode 100644
index 0000000000..d748946fc9
--- /dev/null
+++ b/games/berusky2/berusky2.desktop
@@ -0,0 +1,11 @@
+[Desktop Entry]
+Version=1.0
+Name=Berusky2
+Comment=Rescue the bugs!
+Exec=/usr/games/berusky2
+StartupNotify=false
+Terminal=false
+Type=Application
+Icon=/usr/share/pixmaps/berusky2.png
+Categories=Game;LogicGame;
+Keywords=logic;game;bugs;3D;camera;level;zooming;
diff --git a/games/berusky2/berusky2.info b/games/berusky2/berusky2.info
index 58aeeb1346..7f74f09e96 100644
--- a/games/berusky2/berusky2.info
+++ b/games/berusky2/berusky2.info
@@ -1,10 +1,10 @@
PRGNAM="berusky2"
-VERSION="0.10"
+VERSION="0.12"
HOMEPAGE="http://anakreon.cz/?q=node/2"
-DOWNLOAD="http://downloads.sourceforge.net/project/berusky2/berusky2-0.10/berusky2-0.10.tar.gz"
-MD5SUM="3c2d5217f7a61a6fbc13d689b88ec4e4"
+DOWNLOAD="https://anakreon.cz/download/berusky2-0.12.tar.gz"
+MD5SUM="d36eff2369279bf16546c4e20c1a379a"
DOWNLOAD_x86_64=""
MD5SUM_x86_64=""
REQUIRES="freealut berusky2-data"
MAINTAINER="Dimitris Zlatanidis"
-EMAIL="d.zlatanidis@gmail.com"
+EMAIL="dslackw@gmail.com"
diff --git a/games/bitfighter/bitfighter.SlackBuild b/games/bitfighter/bitfighter.SlackBuild
index bb4960bddb..990c26118e 100644
--- a/games/bitfighter/bitfighter.SlackBuild
+++ b/games/bitfighter/bitfighter.SlackBuild
@@ -1,4 +1,4 @@
-#!/bin/sh
+#!/bin/bash
# Slackware build script for bitfighter
@@ -22,10 +22,13 @@
# OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF THIS SOFTWARE, EVEN IF
# ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
+cd $(dirname $0) ; CWD=$(pwd)
+
PRGNAM=bitfighter
VERSION=${VERSION:-019f}
BUILD=${BUILD:-1}
TAG=${TAG:-_SBo}
+PKGTYPE=${PKGTYPE:-tgz}
if [ -z "$ARCH" ]; then
case "$( uname -m )" in
@@ -35,7 +38,14 @@ if [ -z "$ARCH" ]; then
esac
fi
-CWD=$(pwd)
+# If the variable PRINT_PACKAGE_NAME is set, then this script will report what
+# the name of the created package would be, and then exit. This information
+# could be useful to other scripts.
+if [ ! -z "${PRINT_PACKAGE_NAME}" ]; then
+ echo "$PRGNAM-$VERSION-$ARCH-$BUILD$TAG.$PKGTYPE"
+ exit 0
+fi
+
TMP=${TMP:-/tmp/SBo}
PKG=$TMP/package-$PRGNAM
OUTPUT=${OUTPUT:-/tmp}
@@ -101,4 +111,4 @@ cat $CWD/slack-desc > $PKG/install/slack-desc
cat $CWD/doinst.sh > $PKG/install/doinst.sh
cd $PKG
-/sbin/makepkg -l y -c n $OUTPUT/$PRGNAM-$VERSION-$ARCH-$BUILD$TAG.${PKGTYPE:-tgz}
+/sbin/makepkg -l y -c n $OUTPUT/$PRGNAM-$VERSION-$ARCH-$BUILD$TAG.$PKGTYPE
diff --git a/games/bitfighter/bitfighter.info b/games/bitfighter/bitfighter.info
index 0892cca398..099aa16f08 100644
--- a/games/bitfighter/bitfighter.info
+++ b/games/bitfighter/bitfighter.info
@@ -5,6 +5,6 @@ DOWNLOAD="http://bitfighter.org/files/bitfighter-019f.tar.gz"
MD5SUM="6090eda5f569097993788595a70a7b2c"
DOWNLOAD_x86_64=""
MD5SUM_x86_64=""
-REQUIRES="OpenAL SDL2 speex libmodplug"
+REQUIRES="libmodplug"
MAINTAINER="Dimitris Zlatanidis"
EMAIL="d.zlatanidis@gmail.com"
diff --git a/games/blasphemer/README b/games/blasphemer/README
new file mode 100644
index 0000000000..d646cd7613
--- /dev/null
+++ b/games/blasphemer/README
@@ -0,0 +1,24 @@
+Blasphemer aims to create a free content package for the Heretic engine,
+with a theme of metal-inspired dark fantasy.
+
+Any limit-removing Doom source port that is compatible with Heretic can
+be used to play Blasphemer. Blasphemer is an iwad, meaning the complete
+set of resources required for a game but still requires an executable
+engine to be played. You can turn your favorite Heretic pwads into
+Lovecraftian nightmares using Blasphemer.
+
+Blasphemer requires a Doom/Heretic engine to play, such as zdoom or
+crispy-heretic (both available from slackbuilds.org; the latter is
+part of the crispy-doom package). It does NOT require the original
+Heretic IWAD file, as it is a replacement for it.
+
+This package installs 2 wad files in /usr/share/games/doom:
+
+blasphem.wad - Replacement IWAD for Heretic.
+blasphdm.wad - Standalone deathmatch-only level pack.
+
+To use these data files with zdoom, simply build and install this
+package. You will be prompted for which IWAD file to use (i.e. which
+game to play) when starting zdoom. Other Doom/Heretic source ports,
+such as crispy-heretic, may require a command-line option in order to
+set the IWAD file.
diff --git a/games/blasphemer/blasphemer.SlackBuild b/games/blasphemer/blasphemer.SlackBuild
new file mode 100644
index 0000000000..e1a1134f36
--- /dev/null
+++ b/games/blasphemer/blasphemer.SlackBuild
@@ -0,0 +1,71 @@
+#!/bin/bash
+
+# Slackware build script for blasphemer
+
+# Copyright 2022 Bloyburt
+# All rights reserved.
+#
+# Redistribution and use of this script, with or without modification, is
+# permitted provided that the following conditions are met:
+#
+# 1. Redistributions of this script must retain the above copyright
+# notice, this list of conditions and the following disclaimer.
+#
+# THIS SOFTWARE IS PROVIDED BY THE AUTHOR "AS IS" AND ANY EXPRESS OR IMPLIED
+# WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE IMPLIED WARRANTIES OF
+# MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE ARE DISCLAIMED. IN NO
+# EVENT SHALL THE AUTHOR BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL,
+# SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT LIMITED TO,
+# PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, DATA, OR PROFITS;
+# OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY,
+# WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR
+# OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF THIS SOFTWARE, EVEN IF
+# ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
+
+cd $(dirname $0) ; CWD=$(pwd)
+
+PRGNAM=blasphemer
+VERSION=${VERSION:-0.1.8}
+BUILD=${BUILD:-1}
+TAG=${TAG:-_SBo}
+PKGTYPE=${PKGTYPE:-tgz}
+
+ARCH=noarch
+
+# If the variable PRINT_PACKAGE_NAME is set, then this script will report what
+# the name of the created package would be, and then exit. This information
+# could be useful to other scripts.
+if [ ! -z "${PRINT_PACKAGE_NAME}" ]; then
+ echo "$PRGNAM-$VERSION-$ARCH-$BUILD$TAG.$PKGTYPE"
+ exit 0
+fi
+
+TMP=${TMP:-/tmp/SBo}
+PKG=$TMP/package-$PRGNAM
+OUTPUT=${OUTPUT:-/tmp}
+
+set -e
+
+rm -rf $PKG
+mkdir -p $TMP $PKG $OUTPUT
+cd $TMP
+rm -rf $PRGNAM-$VERSION
+mkdir -p $PRGNAM-$VERSION
+cd $TMP/$PRGNAM-$VERSION
+
+mkdir -p $PKG/usr/share/games/doom $PKG/usr/doc/$PRGNAM-$VERSION
+
+unzip $CWD/blasphem-$VERSION.zip && unzip $CWD/blasphdm-$VERSION.zip
+chown -R root:root .
+chmod 644 *
+cp *.wad $PKG/usr/share/games/doom
+cd -
+
+cat $CWD/$PRGNAM.SlackBuild > $PKG/usr/doc/$PRGNAM-$VERSION/$PRGNAM.SlackBuild
+cat $CWD/README > $PKG/usr/doc/$PRGNAM-$VERSION/README
+
+mkdir -p $PKG/install
+cat $CWD/slack-desc > $PKG/install/slack-desc
+
+cd $PKG
+/sbin/makepkg -l y -c n $OUTPUT/$PRGNAM-$VERSION-$ARCH-$BUILD$TAG.$PKGTYPE
diff --git a/games/blasphemer/blasphemer.info b/games/blasphemer/blasphemer.info
new file mode 100644
index 0000000000..19b55b4d37
--- /dev/null
+++ b/games/blasphemer/blasphemer.info
@@ -0,0 +1,10 @@
+PRGNAM="blasphemer"
+VERSION="0.1.8"
+HOMEPAGE="https://github.com/Blasphemer/blasphemer"
+DOWNLOAD="https://github.com/Blasphemer/blasphemer/releases/download/v0.1.8/blasphdm-0.1.8.zip https://github.com/Blasphemer/blasphemer/releases/download/v0.1.8/blasphem-0.1.8.zip"
+MD5SUM="3a243ca1216c9f504de7a10c72c82f47 2893c6d76d50a8bdbe3004907bd23d08"
+DOWNLOAD_x86_64=""
+MD5SUM_x86_64=""
+REQUIRES=""
+MAINTAINER="Bloyburt"
+EMAIL="alexpen@startmail.com"
diff --git a/games/blasphemer/slack-desc b/games/blasphemer/slack-desc
new file mode 100644
index 0000000000..763be647b3
--- /dev/null
+++ b/games/blasphemer/slack-desc
@@ -0,0 +1,19 @@
+# HOW TO EDIT THIS FILE:
+# The "handy ruler" below makes it easier to edit a package description.
+# Line up the first '|' above the ':' following the base package name, and
+# the '|' on the right side marks the last column you can put a character in.
+# You must make exactly 11 lines for the formatting to be correct. It's also
+# customary to leave one space after the ':' except on otherwise blank lines.
+
+ |-----handy-ruler------------------------------------------------------|
+blasphemer: blasphemer (Free Software replacement for Heretic game data)
+blasphemer:
+blasphemer: Blasphemer aims to create a free content package for the Heretic
+blasphemer: engine, with a theme of metal-inspired dark fantasy.
+blasphemer:
+blasphemer: Any limit-removing Doom source port that is compatible with Heretic
+blasphemer: can be used to play Blasphemer. Blasphemer is an iwad, meaning the
+blasphemer: complete set of resources required for a game but still requires an
+blasphemer: executable engine to be played. You can turn your favorite Heretic
+blasphemer: pwads into Lovecraftian nightmares using Blasphemer.
+blasphemer:
diff --git a/games/blastem-libretro/README b/games/blastem-libretro/README
deleted file mode 100644
index 136bb018ab..0000000000
--- a/games/blastem-libretro/README
+++ /dev/null
@@ -1,6 +0,0 @@
-BlastEm has the goal of being an extremely accurate Genesis emulator
-while still running on relatively modest hardware by using advanced
-techniques.
-
-To build the debugging symbols use:
- DEBUG=1 ./blastem-libretro.SlackBuild
diff --git a/games/blastem-libretro/blastem-libretro.SlackBuild b/games/blastem-libretro/blastem-libretro.SlackBuild
deleted file mode 100644
index fe1daa704f..0000000000
--- a/games/blastem-libretro/blastem-libretro.SlackBuild
+++ /dev/null
@@ -1,82 +0,0 @@
-#!/bin/sh
-
-# Slackware build script for BlastEm-libretro
-
-# Copyright 2016-2018 Hunter Sezen
-# All rights reserved.
-#
-# Redistribution and use of this script, with or without modification, is
-# permitted provided that the following conditions are met:
-#
-# 1. Redistributions of this script must retain the above copyright
-# notice, this list of conditions and the following disclaimer.
-#
-# THIS SOFTWARE IS PROVIDED BY THE AUTHOR "AS IS" AND ANY EXPRESS OR IMPLIED
-# WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE IMPLIED WARRANTIES OF
-# MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE ARE DISCLAIMED. IN NO
-# EVENT SHALL THE AUTHOR BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL,
-# SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT LIMITED TO,
-# PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, DATA, OR PROFITS;
-# OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY,
-# WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR
-# OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF THIS SOFTWARE, EVEN IF
-# ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
-
-PRGNAM=blastem-libretro
-LIBNAM=$(echo $PRGNAM | tr - _)
-VERSION=${VERSION:-2018.08.12_ccc1118}
-BUILD=${BUILD:-1}
-TAG=${TAG:-_SBo}
-
-if [ -z "$ARCH" ]; then
- case "$( uname -m )" in
- i?86) ARCH=i586 ;;
- arm*) ARCH=arm ;;
- *) ARCH=$( uname -m ) ;;
- esac
-fi
-
-CWD=$(pwd)
-TMP=${TMP:-/tmp/SBo}
-PKG=$TMP/package-$PRGNAM
-OUTPUT=${OUTPUT:-/tmp}
-
-LIBDIRSUFFIX=
-[ "$ARCH" = x86_64 ] && LIBDIRSUFFIX=64
-
-set -eu
-
-rm -rf $PKG
-mkdir -p $TMP $PKG $OUTPUT
-cd $TMP
-rm -rf $PRGNAM-$VERSION
-tar xvf $CWD/$PRGNAM-$VERSION.tar.xz
-cd $PRGNAM-$VERSION
-chown -R root:root .
-find -L . \
- \( -perm 777 -o -perm 775 -o -perm 750 -o -perm 711 -o -perm 555 \
- -o -perm 511 \) -exec chmod 755 {} \; -o \
- \( -perm 666 -o -perm 664 -o -perm 640 -o -perm 600 -o -perm 444 \
- -o -perm 440 -o -perm 400 \) -exec chmod 644 {} \;
-
-[ "${DEBUG:=0}" != 0 ] && DEBUG=1
-
-make -C libretro DEBUG=$DEBUG
-
-install -Dm0644 libretro/$LIBNAM.so $PKG/usr/lib${LIBDIRSUFFIX}/libretro/$LIBNAM.so
-install -Dm0644 $LIBNAM.info $PKG/usr/lib${LIBDIRSUFFIX}/libretro/info/$LIBNAM.info
-
-if [ $DEBUG = 0 ]; then
- find $PKG -print0 | xargs -0 file | grep -e "executable" -e "shared object" | grep ELF \
- | cut -f 1 -d : | xargs strip --strip-unneeded 2> /dev/null || true
-fi
-
-mkdir -p $PKG/usr/doc/$PRGNAM-$VERSION
-cp -a CHANGELOG COPYING README todo.txt $PKG/usr/doc/$PRGNAM-$VERSION
-cat $CWD/$PRGNAM.SlackBuild > $PKG/usr/doc/$PRGNAM-$VERSION/$PRGNAM.SlackBuild
-
-mkdir -p $PKG/install
-cat $CWD/slack-desc > $PKG/install/slack-desc
-
-cd $PKG
-/sbin/makepkg -l y -c n $OUTPUT/$PRGNAM-$VERSION-$ARCH-$BUILD$TAG.${PKGTYPE:-tgz}
diff --git a/games/blastem-libretro/blastem-libretro.info b/games/blastem-libretro/blastem-libretro.info
deleted file mode 100644
index 73176e2cf8..0000000000
--- a/games/blastem-libretro/blastem-libretro.info
+++ /dev/null
@@ -1,10 +0,0 @@
-PRGNAM="blastem-libretro"
-VERSION="2018.08.12_ccc1118"
-HOMEPAGE="https://www.libretro.com/"
-DOWNLOAD="http://slackless.raccoons.tech/src/libretro/blastem-libretro-2018.08.12_ccc1118.tar.xz"
-MD5SUM="a4ddb4a6e1e189fb36b3f8e003ddb1db"
-DOWNLOAD_x86_64=""
-MD5SUM_x86_64=""
-REQUIRES="RetroArch"
-MAINTAINER="orphaned - no maintainer"
-EMAIL="nobody@nowhere.com"
diff --git a/games/blastem-libretro/slack-desc b/games/blastem-libretro/slack-desc
deleted file mode 100644
index 1bee1abb6a..0000000000
--- a/games/blastem-libretro/slack-desc
+++ /dev/null
@@ -1,19 +0,0 @@
-# HOW TO EDIT THIS FILE:
-# The "handy ruler" below makes it easier to edit a package description.
-# Line up the first '|' above the ':' following the base package name, and
-# the '|' on the right side marks the last column you can put a character in.
-# You must make exactly 11 lines for the formatting to be correct. It's also
-# customary to leave one space after the ':' except on otherwise blank lines.
-
- |-----handy-ruler------------------------------------------------------|
-blastem-libretro: blastem-libretro (fast and accurate Genesis emulator)
-blastem-libretro:
-blastem-libretro: BlastEm has the goal of being an extremely accurate Genesis emulator
-blastem-libretro: while still running on relatively modest hardware by using advanced
-blastem-libretro: techniques.
-blastem-libretro:
-blastem-libretro: Homepage: https://www.libretro.com/
-blastem-libretro:
-blastem-libretro:
-blastem-libretro:
-blastem-libretro:
diff --git a/games/blobby2/blobby2.SlackBuild b/games/blobby2/blobby2.SlackBuild
index 5a170b37ca..eba8452c89 100644
--- a/games/blobby2/blobby2.SlackBuild
+++ b/games/blobby2/blobby2.SlackBuild
@@ -1,4 +1,4 @@
-#!/bin/sh
+#!/bin/bash
# Slackware build script for blobby2
@@ -22,10 +22,13 @@
# OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF THIS SOFTWARE, EVEN IF
# ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
+cd $(dirname $0) ; CWD=$(pwd)
+
PRGNAM=blobby2
VERSION=${VERSION:-1.0}
BUILD=${BUILD:-1}
TAG=${TAG:-_SBo}
+PKGTYPE=${PKGTYPE:-tgz}
if [ -z "$ARCH" ]; then
case "$( uname -m )" in
@@ -35,7 +38,14 @@ if [ -z "$ARCH" ]; then
esac
fi
-CWD=$(pwd)
+# If the variable PRINT_PACKAGE_NAME is set, then this script will report what
+# the name of the created package would be, and then exit. This information
+# could be useful to other scripts.
+if [ ! -z "${PRINT_PACKAGE_NAME}" ]; then
+ echo "$PRGNAM-$VERSION-$ARCH-$BUILD$TAG.$PKGTYPE"
+ exit 0
+fi
+
TMP=${TMP:-/tmp/SBo}
PKG=$TMP/package-$PRGNAM
OUTPUT=${OUTPUT:-/tmp}
@@ -109,4 +119,4 @@ cat $CWD/slack-desc > $PKG/install/slack-desc
cat $CWD/doinst.sh > $PKG/install/doinst.sh
cd $PKG
-/sbin/makepkg -l y -c n $OUTPUT/$PRGNAM-$VERSION-$ARCH-$BUILD$TAG.${PKGTYPE:-tgz}
+/sbin/makepkg -l y -c n $OUTPUT/$PRGNAM-$VERSION-$ARCH-$BUILD$TAG.$PKGTYPE
diff --git a/games/blobby2/blobby2.info b/games/blobby2/blobby2.info
index 365f9140ce..d260de7595 100644
--- a/games/blobby2/blobby2.info
+++ b/games/blobby2/blobby2.info
@@ -5,6 +5,6 @@ DOWNLOAD="http://downloads.sourceforge.net/blobby/blobby2-linux-1.0.tar.gz"
MD5SUM="a6c89ae64693490385fa05c0a01b0a3b"
DOWNLOAD_x86_64=""
MD5SUM_x86_64=""
-REQUIRES="physfs SDL2"
+REQUIRES="physfs"
MAINTAINER="Heinz Wiesinger"
-EMAIL="pprkut@liwjatan.at"
+EMAIL="pprkut@slackbuilds.org"
diff --git a/games/blobwars/README b/games/blobwars/README
index 72f9460e38..ac35f38eaf 100644
--- a/games/blobwars/README
+++ b/games/blobwars/README
@@ -1,13 +1,10 @@
-blobwars Metal Blob Solid episode 1 is a platform game in which you
-have to collect MIA's (missing in action) blobs scattered arround many
+blobwars (An SDL2 based platform game)
+
+Blob Wars: Metal Blob Solid Episode 1 is a platform game in which you
+have to collect MIA (missing in action) blobs scattered around many
areas. There are other things to collect, keys to open doors, bosses
-at the end of different levels etc. You can also re-visit levels to
+at the end of different levels, etc. You can also re-visit levels to
collect things you missed earlier.
-The program and data is GPL2 and the music is various licences. See the
-game doc readme for details. The game depends on SDL2, SDL2_image,
-SDL2_mixer and SDL2_TTF. All dependancies are available from
-slackbuilds.org.
-
This game was originally created by parallelrealities.co.uk
and now is produced by Perpendicular Dimensions
diff --git a/games/blobwars/blobwars.SlackBuild b/games/blobwars/blobwars.SlackBuild
index 1808f6e6e5..4d3f7b65b6 100644
--- a/games/blobwars/blobwars.SlackBuild
+++ b/games/blobwars/blobwars.SlackBuild
@@ -1,4 +1,4 @@
-#!/bin/sh
+#!/bin/bash
# Slackware build script for blobwars
# Written by Tim Dickson dickson.tim@googlemail.com
@@ -9,10 +9,18 @@
# desktop icons etc. and mskefile includes DESTDIR support.
# doc dir still gets fixed for slackware defaults.
+# 20220219 bkw: Modified by SlackBuilds.org, BUILD=2:
+# - fix build on Slackware 15.0.
+# - make .desktop file validate.
+# - update icon cache in doinst.sh.
+
+cd $(dirname $0) ; CWD=$(pwd)
+
PRGNAM=blobwars
VERSION=${VERSION:-2.00}
-BUILD=${BUILD:-1}
+BUILD=${BUILD:-2}
TAG=${TAG:-_SBo}
+PKGTYPE=${PKGTYPE:-tgz}
if [ -z "$ARCH" ]; then
case "$( uname -m )" in
@@ -22,7 +30,11 @@ if [ -z "$ARCH" ]; then
esac
fi
-CWD=$(pwd)
+if [ ! -z "${PRINT_PACKAGE_NAME}" ]; then
+ echo "$PRGNAM-$VERSION-$ARCH-$BUILD$TAG.$PKGTYPE"
+ exit 0
+fi
+
TMP=${TMP:-/tmp/SBo}
PKG=$TMP/package-$PRGNAM
OUTPUT=${OUTPUT:-/tmp}
@@ -51,9 +63,9 @@ cd $PRGNAM-$VERSION
chown -R root:root .
find -L . \
\( -perm 777 -o -perm 775 -o -perm 750 -o -perm 711 -o -perm 555 \
- -o -perm 511 \) -exec chmod 755 {} \; -o \
+ -o -perm 511 \) -exec chmod 755 {} \+ -o \
\( -perm 666 -o -perm 664 -o -perm 640 -o -perm 600 -o -perm 444 \
- -o -perm 440 -o -perm 400 \) -exec chmod 644 {} \;
+ -o -perm 440 -o -perm 400 \) -exec chmod 644 {} \+
#make new game default more child friendly
sed -i 's/gore = 1/gore = 0/' src/CGame.cpp
@@ -61,13 +73,24 @@ sed -i 's/gore = 1/gore = 0/' src/CGame.cpp
#fix hard-coded manual location
sed -i "s_blobwars/man_blobwars-$VERSION/man_" data/titleWidgets
+# 20220219 bkw: no sane way to override on the make command like...
+sed -i 's, *-Werror,,' Makefile
+
+# 20220219 bkw: shut desktop-file-validate up.
+sed -i '/^Encoding/d' icons/$PRGNAM.desktop
+
#doc dir fixed for slackware and help display bug.
#note. the trailing / on the first make command is intentional.
-make USEPAK=1 CFLAGS="$SLKCFLAGS" DOCDIR="/usr/doc/$PRGNAM-$VERSION/"
-make install USEPAK=1 DESTDIR=$PKG DOCDIR="/usr/doc/$PRGNAM-$VERSION"
+make \
+ USEPAK=1 \
+ CFLAGS="$SLKCFLAGS" \
+ DOCDIR="/usr/doc/$PRGNAM-$VERSION/"
+make install \
+ USEPAK=1 \
+ DESTDIR=$PKG \
+ DOCDIR="/usr/doc/$PRGNAM-$VERSION"
-find $PKG -print0 | xargs -0 file | grep -e "executable" -e "shared object" | grep ELF \
- | cut -f 1 -d : | xargs strip --strip-unneeded 2> /dev/null || true
+strip $PKG/usr/games/$PRGNAM
cat $CWD/$PRGNAM.SlackBuild > $PKG/usr/doc/$PRGNAM-$VERSION/$PRGNAM.SlackBuild
@@ -76,4 +99,4 @@ cat $CWD/slack-desc > $PKG/install/slack-desc
cat $CWD/doinst.sh > $PKG/install/doinst.sh
cd $PKG
-/sbin/makepkg -l y -c n $OUTPUT/$PRGNAM-$VERSION-$ARCH-$BUILD$TAG.${PKGTYPE:-tgz}
+/sbin/makepkg -l y -c n $OUTPUT/$PRGNAM-$VERSION-$ARCH-$BUILD$TAG.$PKGTYPE
diff --git a/games/blobwars/blobwars.info b/games/blobwars/blobwars.info
index e868276c3c..b2883a09cd 100644
--- a/games/blobwars/blobwars.info
+++ b/games/blobwars/blobwars.info
@@ -5,6 +5,6 @@ DOWNLOAD="https://downloads.sourceforge.net/project/blobwars/blobwars-2.00.tar.g
MD5SUM="73baa49a41151140818cf14cb77d57b4"
DOWNLOAD_x86_64=""
MD5SUM_x86_64=""
-REQUIRES="SDL2_image SDL2_mixer SDL2_ttf SDL2_net"
+REQUIRES=""
MAINTAINER="Tim Dickson (timsoft)"
EMAIL="dickson.tim@googlemail.com"
diff --git a/games/blobwars/doinst.sh b/games/blobwars/doinst.sh
index 4e8ba7071d..3e5691a052 100644
--- a/games/blobwars/doinst.sh
+++ b/games/blobwars/doinst.sh
@@ -2,3 +2,8 @@ if [ -x /usr/bin/update-desktop-database ]; then
/usr/bin/update-desktop-database -q usr/share/applications >/dev/null 2>&1
fi
+if [ -e usr/share/icons/hicolor/icon-theme.cache ]; then
+ if [ -x /usr/bin/gtk-update-icon-cache ]; then
+ /usr/bin/gtk-update-icon-cache usr/share/icons/hicolor >/dev/null 2>&1
+ fi
+fi
diff --git a/games/blobwars/slack-desc b/games/blobwars/slack-desc
index 90bdbf5f70..a4fcea1d65 100644
--- a/games/blobwars/slack-desc
+++ b/games/blobwars/slack-desc
@@ -8,12 +8,12 @@
|-----handy-ruler------------------------------------------------------|
blobwars: blobwars (An SDL2 based platform game)
blobwars:
-blobwars: Since their world was invaded by an alien race, the Blobs have faced
-blobwars: a lifetime of war. But now they have a chance to win the war once
-blobwars: and for all.
-blobwars: In Blob Wars : Metal Blob Solid, you take on the role of a fearless
-blobwars: Blob agent, Bob. Bob's mission is to infiltrate the various enemy
-blobwars: bases around the Blobs' homeworld and rescue as many MIAs as
-blobwars: possible. But standing in his way are many vicious aliens, other
-blobwars: Blobs who have been assimilated and the evil alien leader, Galdov.
-blobwars: software originally by www.parallelrealities.co.uk
+blobwars: Blob Wars: Metal Blob Solid Episode 1 is a platform game in which you
+blobwars: have to collect MIA (missing in action) blobs scattered around many
+blobwars: areas. There are other things to collect, keys to open doors, bosses
+blobwars: at the end of different levels, etc. You can also re-visit levels to
+blobwars: collect things you missed earlier.
+blobwars:
+blobwars:
+blobwars:
+blobwars:
diff --git a/games/bloodcm/README b/games/bloodcm/README
deleted file mode 100644
index 30629a9271..0000000000
--- a/games/bloodcm/README
+++ /dev/null
@@ -1,17 +0,0 @@
-bloodcm (first-person shooter game)
-
-Blood Crossmatching (formerly known as BloodTC) is a recreation of Blood
-(by Monolith Productions) for EDuke32 to bring all the fun and action of
-Blood to the EDuke32 port. This mod will be more powerful in the future,
-considering EDuke32 keeps getting better and better.
-
-No data files from the original game are required.
-
-eduke32 will need to be at least version 20160704_5811 for this to work.
-
-To play BloodCM: Launch EDuke32, select BloodCM in the "Custom Game"
-drop-down list, click "Start".
-
-When new versions of BloodCM are released, the download URL doesn't
-change. If you get an md5sum error on the downloaded file, please
-contact the maintainer of this SlackBuild.
diff --git a/games/bloodcm/bloodcm.SlackBuild b/games/bloodcm/bloodcm.SlackBuild
deleted file mode 100644
index 74c55e962f..0000000000
--- a/games/bloodcm/bloodcm.SlackBuild
+++ /dev/null
@@ -1,63 +0,0 @@
-#!/bin/sh
-
-# Slackware build script for bloodcm
-
-# Written by B. Watson (yalhcru@gmail.com)
-
-# Licensed under the WTFPL. See http://www.wtfpl.net/txt/copying/ for details.
-
-# Just repacks the data, no compiling or executables.
-# No icon or .desktop, because no executables.
-
-PRGNAM=bloodcm
-VERSION=${VERSION:-12.2016}
-BUILD=${BUILD:-1}
-TAG=${TAG:-_SBo}
-
-ARCH=noarch
-
-CWD=$(pwd)
-TMP=${TMP:-/tmp/SBo}
-PKG=$TMP/package-$PRGNAM
-OUTPUT=${OUTPUT:-/tmp}
-
-set -e
-
-# depending on what the file was downloaded with, it'll be named
-# either of these:
-ZIPFILE="38-blood-crossmatching"
-[ -e $CWD/$ZIPFILE ] || ZIPFILE="${PRGNAM}_v${VERSION}.zip"
-[ -e $CWD/$ZIPFILE ] || ZIPFILE="${PRGNAM}_${VERSION}.zip"
-
-# directory inside the zipfile containing the stuff we want. the
-# rest is binaries for windows.
-DIRNAME="BloodCM"
-
-# this needs to match eduke32.SlackBuild. the wrapper script for
-# eduke32 looks here for mods, and symlinks them into the user's
-# ~/.eduke32/ so the game can find them.
-EDUKEDIR=/usr/share/games/eduke32
-
-# we don't even need a $TMP/$PRGNAM-$VERSION, just extract
-# straight into $PKG
-rm -rf $PKG/$EDUKEDIR
-mkdir -p $TMP $PKG/$EDUKEDIR $OUTPUT
-cd $PKG/$EDUKEDIR
-unzip $CWD/$ZIPFILE "$DIRNAME/*"
-find $DIRNAME -type f -print0 | xargs -0 chmod 644
-find $DIRNAME -type d -print0 | xargs -0 chmod 755
-
-# don't ship an empty texture cache
-rm -f $DIRNAME/textures $DIRNAME/textures.cache
-
-# upstream has no docs, we'll include our own README, which tells
-# the user how to run the game.
-mkdir -p $PKG/usr/doc/$PRGNAM-$VERSION
-cat $CWD/README > $PKG/usr/doc/$PRGNAM-$VERSION/README
-cat $CWD/$PRGNAM.SlackBuild > $PKG/usr/doc/$PRGNAM-$VERSION/$PRGNAM.SlackBuild
-
-mkdir -p $PKG/install
-cat $CWD/slack-desc > $PKG/install/slack-desc
-
-cd $PKG
-/sbin/makepkg -l y -c n $OUTPUT/$PRGNAM-$VERSION-$ARCH-$BUILD$TAG.${PKGTYPE:-tgz}
diff --git a/games/bloodcm/bloodcm.info b/games/bloodcm/bloodcm.info
deleted file mode 100644
index 849e5f8899..0000000000
--- a/games/bloodcm/bloodcm.info
+++ /dev/null
@@ -1,10 +0,0 @@
-PRGNAM="bloodcm"
-VERSION="12.2016"
-HOMEPAGE="https://www.moddb.com/games/bloodcm"
-DOWNLOAD="http://ponce.cc/slackware/sources/repo/38-blood-crossmatching"
-MD5SUM="62c3371f353c07ed0bd42c96a37f7d08"
-DOWNLOAD_x86_64=""
-MD5SUM_x86_64=""
-REQUIRES="eduke32"
-MAINTAINER="B. Watson"
-EMAIL="yalhcru@gmail.com"
diff --git a/games/bloodcm/slack-desc b/games/bloodcm/slack-desc
deleted file mode 100644
index ca7591a158..0000000000
--- a/games/bloodcm/slack-desc
+++ /dev/null
@@ -1,19 +0,0 @@
-# HOW TO EDIT THIS FILE:
-# The "handy ruler" below makes it easier to edit a package description.
-# Line up the first '|' above the ':' following the base package name, and
-# the '|' on the right side marks the last column you can put a character in.
-# You must make exactly 11 lines for the formatting to be correct. It's also
-# customary to leave one space after the ':' except on otherwise blank lines.
-
- |-----handy-ruler------------------------------------------------------|
-bloodcm: bloodcm (first-person shooter game)
-bloodcm:
-bloodcm: Blood Crossmatching (formerly known as BloodTC) is a recreation
-bloodcm: of Blood (by Monolith Productions) for EDuke32 to bring all the fun
-bloodcm: and action of Blood to the EDuke32 port.
-bloodcm:
-bloodcm: This mod will be more powerful in the future, considering EDuke32
-bloodcm: keeps getting better and better.
-bloodcm:
-bloodcm:
-bloodcm: No data files from the original game are required.
diff --git a/games/bloodfrontier/bloodfrontier.SlackBuild b/games/bloodfrontier/bloodfrontier.SlackBuild
index 0f85e8fca2..172a6cffa9 100644
--- a/games/bloodfrontier/bloodfrontier.SlackBuild
+++ b/games/bloodfrontier/bloodfrontier.SlackBuild
@@ -1,4 +1,4 @@
-#!/bin/sh
+#!/bin/bash
# Slackware build script for bloodfrontier
@@ -8,27 +8,37 @@
# Written by Matteo Bernardini <ponce@slackbuilds.org>
# Based on http://slackbuilds.org/template.SlackBuild
+cd $(dirname $0) ; CWD=$(pwd)
+
PRGNAM=bloodfrontier
VERSION=${VERSION:-0.85}
SVERSION=${SVERSION:-B2}
BUILD=${BUILD:-2}
TAG=${TAG:-_SBo}
+PKGTYPE=${PKGTYPE:-tgz}
if [ -z "$ARCH" ]; then
case "$( uname -m )" in
- i?86) ARCH=i486 ;;
+ i?86) ARCH=i586 ;;
arm*) ARCH=arm ;;
*) ARCH=$( uname -m ) ;;
esac
fi
-CWD=$(pwd)
+# If the variable PRINT_PACKAGE_NAME is set, then this script will report what
+# the name of the created package would be, and then exit. This information
+# could be useful to other scripts.
+if [ ! -z "${PRINT_PACKAGE_NAME}" ]; then
+ echo "$PRGNAM-$VERSION-$ARCH-$BUILD$TAG.$PKGTYPE"
+ exit 0
+fi
+
TMP=${TMP:-/tmp/SBo}
PKG=$TMP/package-$PRGNAM
OUTPUT=${OUTPUT:-/tmp}
-if [ "$ARCH" = "i486" ]; then
- SLKCFLAGS="-O2 -march=i486 -mtune=i686"
+if [ "$ARCH" = "i586" ]; then
+ SLKCFLAGS="-O2 -march=i586 -mtune=i686"
LIBDIRSUFFIX=""
SLKLDFLAGS="-L/usr/lib -L/lib"
elif [ "$ARCH" = "i686" ]; then
@@ -64,7 +74,7 @@ sed -i "s|X11R6/lib|lib${LIBDIRSUFFIX} -lX11|" src/Makefile
make -C src \
CFLAGS="$SLKCFLAGS" \
- CXXFLAGS="$SLKCFLAGS" \
+ CXXFLAGS="$SLKCFLAGS -Wno-narrowing" \
LDFLAGS="$SLKLDFLAGS"
mkdir -p $PKG/usr/bin $PKG/usr/lib${LIBDIRSUFFIX}/bloodfrontier/bin
@@ -84,4 +94,4 @@ mkdir -p $PKG/install
cat $CWD/slack-desc > $PKG/install/slack-desc
cd $PKG
-/sbin/makepkg -l y -c n $OUTPUT/$PRGNAM-$VERSION-$ARCH-$BUILD$TAG.${PKGTYPE:-tgz}
+/sbin/makepkg -l y -c n $OUTPUT/$PRGNAM-$VERSION-$ARCH-$BUILD$TAG.$PKGTYPE
diff --git a/games/blueMSX-libretro/README b/games/blueMSX-libretro/README
deleted file mode 100644
index 0de9f92e8f..0000000000
--- a/games/blueMSX-libretro/README
+++ /dev/null
@@ -1,12 +0,0 @@
-blueMSX is a MSX video game system emulator that can be used as a
-libretro core.
-
-blueMSX is a cycle accurate emulator that emulates all generations of
-MSX computers as well as SVI, ColecoVision and Sega SG-1000.
-
-The required bios images are included with the standalone blueMSX
-source package, the 'Machines' directory can be copied into the
-RetroArch system/bios directory.
-
-To build the debugging symbols use:
- DEBUG=1 ./blueMSX-libretro.SlackBuild
diff --git a/games/blueMSX-libretro/blueMSX-libretro.SlackBuild b/games/blueMSX-libretro/blueMSX-libretro.SlackBuild
deleted file mode 100644
index 61bb3585c0..0000000000
--- a/games/blueMSX-libretro/blueMSX-libretro.SlackBuild
+++ /dev/null
@@ -1,82 +0,0 @@
-#!/bin/sh
-
-# Slackware build script for blueMSX-libretro
-
-# Copyright 2016-2018 Hunter Sezen
-# All rights reserved.
-#
-# Redistribution and use of this script, with or without modification, is
-# permitted provided that the following conditions are met:
-#
-# 1. Redistributions of this script must retain the above copyright
-# notice, this list of conditions and the following disclaimer.
-#
-# THIS SOFTWARE IS PROVIDED BY THE AUTHOR "AS IS" AND ANY EXPRESS OR IMPLIED
-# WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE IMPLIED WARRANTIES OF
-# MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE ARE DISCLAIMED. IN NO
-# EVENT SHALL THE AUTHOR BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL,
-# SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT LIMITED TO,
-# PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, DATA, OR PROFITS;
-# OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY,
-# WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR
-# OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF THIS SOFTWARE, EVEN IF
-# ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
-
-PRGNAM=blueMSX-libretro
-LIBNAM=$(echo $PRGNAM | tr [A-Z [a-z] | tr - _)
-VERSION=${VERSION:-2018.10.09_4be0a24}
-BUILD=${BUILD:-1}
-TAG=${TAG:-_SBo}
-
-if [ -z "$ARCH" ]; then
- case "$( uname -m )" in
- i?86) ARCH=i586 ;;
- arm*) ARCH=arm ;;
- *) ARCH=$( uname -m ) ;;
- esac
-fi
-
-CWD=$(pwd)
-TMP=${TMP:-/tmp/SBo}
-PKG=$TMP/package-$PRGNAM
-OUTPUT=${OUTPUT:-/tmp}
-
-LIBDIRSUFFIX=
-[ "$ARCH" = x86_64 ] && LIBDIRSUFFIX=64
-
-set -eu
-
-rm -rf $PKG
-mkdir -p $TMP $PKG $OUTPUT
-cd $TMP
-rm -rf $PRGNAM-$VERSION
-tar xvf $CWD/$PRGNAM-$VERSION.tar.xz
-cd $PRGNAM-$VERSION
-chown -R root:root .
-find -L . \
- \( -perm 777 -o -perm 775 -o -perm 750 -o -perm 711 -o -perm 555 \
- -o -perm 511 \) -exec chmod 755 {} \; -o \
- \( -perm 666 -o -perm 664 -o -perm 640 -o -perm 600 -o -perm 444 \
- -o -perm 440 -o -perm 400 \) -exec chmod 644 {} \;
-
-[ "${DEBUG:=0}" != 0 ] && DEBUG=1
-
-make -f Makefile.libretro DEBUG=$DEBUG
-
-install -Dm0644 $LIBNAM.so $PKG/usr/lib${LIBDIRSUFFIX}/libretro/$LIBNAM.so
-install -Dm0644 $LIBNAM.info $PKG/usr/lib${LIBDIRSUFFIX}/libretro/info/$LIBNAM.info
-
-if [ $DEBUG = 0 ]; then
- find $PKG -print0 | xargs -0 file | grep -e "executable" -e "shared object" | grep ELF \
- | cut -f 1 -d : | xargs strip --strip-unneeded 2> /dev/null || true
-fi
-
-mkdir -p $PKG/usr/doc/$PRGNAM-$VERSION
-cp -a README.md *.txt $PKG/usr/doc/$PRGNAM-$VERSION
-cat $CWD/$PRGNAM.SlackBuild > $PKG/usr/doc/$PRGNAM-$VERSION/$PRGNAM.SlackBuild
-
-mkdir -p $PKG/install
-cat $CWD/slack-desc > $PKG/install/slack-desc
-
-cd $PKG
-/sbin/makepkg -l y -c n $OUTPUT/$PRGNAM-$VERSION-$ARCH-$BUILD$TAG.${PKGTYPE:-tgz}
diff --git a/games/blueMSX-libretro/blueMSX-libretro.info b/games/blueMSX-libretro/blueMSX-libretro.info
deleted file mode 100644
index 3982f6a833..0000000000
--- a/games/blueMSX-libretro/blueMSX-libretro.info
+++ /dev/null
@@ -1,12 +0,0 @@
-PRGNAM="blueMSX-libretro"
-VERSION="2018.10.09_4be0a24"
-HOMEPAGE="https://www.libretro.com/"
-DOWNLOAD="http://slackless.raccoons.tech/src/libretro/blueMSX-libretro-2018.10.09_4be0a24.tar.xz \
- http://bluemsx.msxblue.com/rel_download/blueMSXv282full.zip"
-MD5SUM="28b1023e636524988bbad65349ba5aac \
- 86faa73f3524dcad9910d15bce7057ea"
-DOWNLOAD_x86_64=""
-MD5SUM_x86_64=""
-REQUIRES="RetroArch"
-MAINTAINER="orphaned - no maintainer"
-EMAIL="nobody@nowhere.com"
diff --git a/games/blueMSX-libretro/slack-desc b/games/blueMSX-libretro/slack-desc
deleted file mode 100644
index 7b90a3cb97..0000000000
--- a/games/blueMSX-libretro/slack-desc
+++ /dev/null
@@ -1,19 +0,0 @@
-# HOW TO EDIT THIS FILE:
-# The "handy ruler" below makes it easier to edit a package description.
-# Line up the first '|' above the ':' following the base package name, and
-# the '|' on the right side marks the last column you can put a character in.
-# You must make exactly 11 lines for the formatting to be correct. It's also
-# customary to leave one space after the ':' except on otherwise blank lines.
-
- |-----handy-ruler------------------------------------------------------|
-blueMSX-libretro: blueMSX-libretro (libretro port of blueMSX)
-blueMSX-libretro:
-blueMSX-libretro: blueMSX is a cycle accurate emulator that emulates all generations of
-blueMSX-libretro: MSX computers as well as SVI, ColecoVision and Sega SG-1000.
-blueMSX-libretro:
-blueMSX-libretro: Homepage: https://www.libretro.com/
-blueMSX-libretro:
-blueMSX-libretro:
-blueMSX-libretro:
-blueMSX-libretro:
-blueMSX-libretro:
diff --git a/games/bluemoon/bluemoon.SlackBuild b/games/bluemoon/bluemoon.SlackBuild
index 9d519a0793..37045ee706 100644
--- a/games/bluemoon/bluemoon.SlackBuild
+++ b/games/bluemoon/bluemoon.SlackBuild
@@ -1,29 +1,39 @@
-#!/bin/sh
+#!/bin/bash
# Slackware build script for Blue Moon AI
# Written by Stefano Guidoni <s.guidoni@email.it>
+cd $(dirname $0) ; CWD=$(pwd)
+
PRGNAM=bluemoon
VERSION=${VERSION:-1.3.2}
BUILD=${BUILD:-1}
TAG=${TAG:-_SBo}
+PKGTYPE=${PKGTYPE:-tgz}
if [ -z "$ARCH" ]; then
case "$( uname -m )" in
- i?86) ARCH=i486 ;;
+ i?86) ARCH=i586 ;;
arm*) ARCH=arm ;;
*) ARCH=$( uname -m ) ;;
esac
fi
-CWD=$(pwd)
+# If the variable PRINT_PACKAGE_NAME is set, then this script will report what
+# the name of the created package would be, and then exit. This information
+# could be useful to other scripts.
+if [ ! -z "${PRINT_PACKAGE_NAME}" ]; then
+ echo "$PRGNAM-$VERSION-$ARCH-$BUILD$TAG.$PKGTYPE"
+ exit 0
+fi
+
TMP=${TMP:-/tmp/SBo}
PKG=$TMP/package-$PRGNAM
OUTPUT=${OUTPUT:-/tmp}
-if [ "$ARCH" = "i486" ]; then
- SLKCFLAGS="-O2 -march=i486 -mtune=i686"
+if [ "$ARCH" = "i586" ]; then
+ SLKCFLAGS="-O2 -march=i586 -mtune=i686"
LIBDIRSUFFIX=""
elif [ "$ARCH" = "i686" ]; then
SLKCFLAGS="-O2 -march=i686 -mtune=i686"
@@ -82,4 +92,4 @@ cat $CWD/slack-desc > $PKG/install/slack-desc
cat $CWD/doinst.sh > $PKG/install/doinst.sh
cd $PKG
-/sbin/makepkg -l y -c n $OUTPUT/$PRGNAM-$VERSION-$ARCH-$BUILD$TAG.${PKGTYPE:-tgz}
+/sbin/makepkg -l y -c n $OUTPUT/$PRGNAM-$VERSION-$ARCH-$BUILD$TAG.$PKGTYPE
diff --git a/games/bluez-sixaxis/bluez-5.51-obexd_without_systemd-1.patch b/games/bluez-sixaxis/bluez-5.51-obexd_without_systemd-1.patch
new file mode 100644
index 0000000000..21c99acc49
--- /dev/null
+++ b/games/bluez-sixaxis/bluez-5.51-obexd_without_systemd-1.patch
@@ -0,0 +1,59 @@
+Submitted By: Armin K. <krejzi at email dot com>
+Date: 2013-04-29
+Initial Package Version: 5.17
+Upstream Status: unknown
+Origin: Arch Linux (Giovanni Campagna)
+Description: Allow using obexd without systemd in the user session
+
+Not all sessions run systemd --user (actually, the majority
+doesn't), so the dbus daemon must be able to spawn obexd
+directly, and to do so it needs the full path of the daemon.
+---
+ Makefile.obexd | 4 ++--
+ obexd/src/org.bluez.obex.service | 4 ----
+ obexd/src/org.bluez.obex.service.in | 4 ++++
+ 3 files changed, 6 insertions(+), 6 deletions(-)
+ delete mode 100644 obexd/src/org.bluez.obex.service
+ create mode 100644 obexd/src/org.bluez.obex.service.in
+
+--- ./Makefile.obexd.orig 2019-09-19 13:51:02.000000000 -0500
++++ ./Makefile.obexd 2019-09-20 14:10:10.647348607 -0500
+@@ -1,12 +1,12 @@
+ if SYSTEMD
+ systemduserunitdir = $(SYSTEMD_USERUNITDIR)
+ systemduserunit_DATA = obexd/src/obex.service
++endif
+
+ dbussessionbusdir = $(DBUS_SESSIONBUSDIR)
+ dbussessionbus_DATA = obexd/src/org.bluez.obex.service
+-endif
+
+-EXTRA_DIST += obexd/src/obex.service.in obexd/src/org.bluez.obex.service
++EXTRA_DIST += obexd/src/obex.service.in obexd/src/org.bluez.obex.service.in
+
+ if OBEX
+
+diff --git a/obexd/src/org.bluez.obex.service b/obexd/src/org.bluez.obex.service
+deleted file mode 100644
+index a538088..0000000
+--- a/obexd/src/org.bluez.obex.service
++++ /dev/null
+@@ -1,4 +0,0 @@
+-[D-BUS Service]
+-Name=org.bluez.obex
+-Exec=/bin/false
+-SystemdService=dbus-org.bluez.obex.service
+diff --git a/obexd/src/org.bluez.obex.service.in b/obexd/src/org.bluez.obex.service.in
+new file mode 100644
+index 0000000..9c815f2
+--- /dev/null
++++ b/obexd/src/org.bluez.obex.service.in
+@@ -0,0 +1,4 @@
++[D-BUS Service]
++Name=org.bluez.obex
++Exec=@libexecdir@/bluetooth/obexd
++SystemdService=dbus-org.bluez.obex.service
+--
+1.8.3.1
+
+
diff --git a/games/bluez-sixaxis/bluez-sixaxis.SlackBuild b/games/bluez-sixaxis/bluez-sixaxis.SlackBuild
index 73abec6ab4..2175761999 100644
--- a/games/bluez-sixaxis/bluez-sixaxis.SlackBuild
+++ b/games/bluez-sixaxis/bluez-sixaxis.SlackBuild
@@ -1,8 +1,8 @@
-#!/bin/sh
+#!/bin/bash
# Copyright 2009, 2010, 2011, 2012, 2013, 2016 Patrick J. Volkerding, Sebeka, Minnesota, USA
# All rights reserved.
-# Changes for SBo, Copyright 2019 Christoph WIlling, Brisbane, Aistralia
+# Changes for SBo, Copyright 2019-21 Christoph Willing, Brisbane, Aistralia
#
# Redistribution and use of this script, with or without modification, is
# permitted provided that the following conditions are met:
@@ -10,7 +10,7 @@
# 1. Redistributions of this script must retain the above copyright
# notice, this list of conditions and the following disclaimer.
#
-# THIS SOFTWARE IS PROVIDED BY THE AUTHOR ``AS IS'' AND ANY EXPRESS OR IMPLIED
+# THIS SOFTWARE IS PROVIDED BY THE AUTHOR "AS IS" AND ANY EXPRESS OR IMPLIED
# WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE IMPLIED WARRANTIES OF
# MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE ARE DISCLAIMED. IN NO
# EVENT SHALL THE AUTHOR BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL,
@@ -21,11 +21,14 @@
# OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF THIS SOFTWARE, EVEN IF
# ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
+cd $(dirname $0) ; CWD=$(pwd)
+
PRGNAM=bluez-sixaxis
SRCNAM=bluez
-VERSION=${VERSION:-5.47}
-BUILD=${BUILD:-1}
+VERSION=${VERSION:-5.58}
+BUILD=${BUILD:-2}
TAG=${TAG:-_SBo}
+PKGTYPE=${PKGTYPE:-tgz}
if [ -z "$ARCH" ]; then
case "$( uname -m )" in
@@ -35,7 +38,14 @@ if [ -z "$ARCH" ]; then
esac
fi
-CWD=$(pwd)
+# If the variable PRINT_PACKAGE_NAME is set, then this script will report what
+# the name of the created package would be, and then exit. This information
+# could be useful to other scripts.
+if [ ! -z "${PRINT_PACKAGE_NAME}" ]; then
+ echo "$PRGNAM-$VERSION-$ARCH-$BUILD$TAG.$PKGTYPE"
+ exit 0
+fi
+
TMP=${TMP:-/tmp/SBo}
PKG=$TMP/package-$PRGNAM
OUTPUT=${OUTPUT:-/tmp}
@@ -43,6 +53,9 @@ OUTPUT=${OUTPUT:-/tmp}
if [ "$ARCH" = "i586" ]; then
SLKCFLAGS="-O2 -march=i586 -mtune=i686"
LIBDIRSUFFIX=""
+elif [ "$ARCH" = "i686" ]; then
+ SLKCFLAGS="-O2 -march=i686 -mtune=i686"
+ LIBDIRSUFFIX=""
elif [ "$ARCH" = "s390" ]; then
SLKCFLAGS="-O2"
LIBDIRSUFFIX=""
@@ -69,7 +82,7 @@ find -L . \
\( -perm 666 -o -perm 664 -o -perm 640 -o -perm 600 -o -perm 444 \
-o -perm 440 -o -perm 400 \) -exec chmod 644 {} \;
-patch -p1 --verbose < $CWD/bluez-5.30-obexd_without_systemd-1.patch
+patch -p1 --verbose < $CWD/bluez-5.51-obexd_without_systemd-1.patch
autoreconf -vif
@@ -107,6 +120,8 @@ LDFLAGS="-L/usr/lib$LIBDIRSUFFIX" \
make
make install DESTDIR=$PKG
+rm -f $PKG/{,usr/}lib${LIBDIRSUFFIX}/*.la
+
# Remove everything except the sixaxis plugin
rm -rf $PKG/etc
rm -rf $PKG/lib
@@ -136,4 +151,4 @@ mkdir -p $PKG/install
cat $CWD/slack-desc > $PKG/install/slack-desc
cd $PKG
-/sbin/makepkg -l y -c n $OUTPUT/$PRGNAM-$VERSION-$ARCH-$BUILD$TAG.${PKGTYPE:-tgz}
+/sbin/makepkg -l y -c n $OUTPUT/$PRGNAM-$VERSION-$ARCH-$BUILD$TAG.$PKGTYPE
diff --git a/games/bluez-sixaxis/bluez-sixaxis.info b/games/bluez-sixaxis/bluez-sixaxis.info
index 8b8096e467..ad87497ad6 100644
--- a/games/bluez-sixaxis/bluez-sixaxis.info
+++ b/games/bluez-sixaxis/bluez-sixaxis.info
@@ -1,8 +1,8 @@
PRGNAM="bluez-sixaxis"
-VERSION="5.47"
+VERSION="5.58"
HOMEPAGE="http://www.bluez.org"
-DOWNLOAD="http://www.kernel.org/pub/linux/bluetooth/bluez-5.47.tar.xz"
-MD5SUM="783e15f65e70cdb8f721c659e140dd56"
+DOWNLOAD="http://www.kernel.org/pub/linux/bluetooth/bluez-5.58.tar.xz"
+MD5SUM="6737ba92a93432dbbd430bd41d7160c9"
DOWNLOAD_x86_64=""
MD5SUM_x86_64=""
REQUIRES=""
diff --git a/games/blupimania/README b/games/blupimania/README
new file mode 100644
index 0000000000..d6a2b14d98
--- /dev/null
+++ b/games/blupimania/README
@@ -0,0 +1,13 @@
+Blupimania is a modern port of the Epsitec SA 1994 game.
+
+It features a little yellow guy called Blupi facing various puzzles.
+
+Blupi comes out of a hole holding on to a balloon.
+Unfortunately he let's it blow away.
+Blupi is lost, he turns to the left or the right and does various
+unpredictable things of his own.
+The object of the game is to help him find another balloon, so that he
+can move on to the next riddle.
+Blupimania offers the option of creating your own riddles in level 5.
+
+See planetblupi, on SBo, for other Blupi related games.
diff --git a/games/blupimania/blupimania.SlackBuild b/games/blupimania/blupimania.SlackBuild
new file mode 100644
index 0000000000..95a6606f7d
--- /dev/null
+++ b/games/blupimania/blupimania.SlackBuild
@@ -0,0 +1,220 @@
+#!/bin/bash
+# Slackware build script for blupimania
+#
+# Yth | Pont-en-Royans, France | yth@ythogtha.org
+#
+# Redistribution and use of this script, with or without modification, is
+# permitted provided that the following conditions are met:
+#
+# 1. Redistributions of this script must retain the above copyright
+# notice, this list of conditions and the following disclaimer.
+#
+# THIS SOFTWARE IS PROVIDED BY THE AUTHOR ''AS IS'' AND ANY EXPRESS OR IMPLIED
+# WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE IMPLIED WARRANTIES OF
+# MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE ARE DISCLAIMED. IN NO
+# EVENT SHALL THE AUTHOR BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL,
+# SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT LIMITED TO,
+# PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, DATA, OR PROFITS;
+# OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY,
+# WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR
+# OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF THIS SOFTWARE, EVEN IF
+# ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
+
+cd $(dirname $0) ; CWD=$(pwd)
+
+PRGNAM=blupimania
+VERSION=${VERSION:-1.6.2}
+BUILD=${BUILD:-1}
+TAG=${TAG:-_SBo}
+PKGTYPE=${PKGTYPE:-tgz}
+BINDIR=/usr/games
+SDL2_IMAGE_VERSION=2.6.3
+SDL2_MIXER_VERSION=2.6.3
+
+if [ -z "$ARCH" ]; then
+ case "$( uname -m )" in
+ i?86) ARCH=i586 ;;
+ arm*) ARCH=arm ;;
+ *) ARCH=$( uname -m ) ;;
+ esac
+fi
+
+if [ ! -z "${PRINT_PACKAGE_NAME}" ]; then
+ echo "$PRGNAM-$VERSION-$ARCH-$BUILD$TAG.$PKGTYPE"
+ exit 0
+fi
+
+TMP=${TMP:-/tmp/SBo}
+PKG=$TMP/package-$PRGNAM
+OUTPUT=${OUTPUT:-/tmp}
+
+DOCS="README.md LICENSE"
+
+if [ "$ARCH" = "i586" ]; then
+ SLKCFLAGS="-O2 -march=i586 -mtune=i686"
+ LIBDIRSUFFIX=""
+elif [ "$ARCH" = "i686" ]; then
+ SLKCFLAGS="-O2 -march=i686 -mtune=i686"
+ LIBDIRSUFFIX=""
+elif [ "$ARCH" = "x86_64" ]; then
+ SLKCFLAGS="-O2 -fPIC"
+ LIBDIRSUFFIX="64"
+elif [ "$ARCH" = "aarch64" ]; then
+ SLKCFLAGS="-O2 -fPIC"
+ LIBDIRSUFFIX="64"
+else
+ SLKCFLAGS="-O2"
+ LIBDIRSUFFIX=""
+fi
+
+set -e
+
+rm -rf $PKG
+mkdir -p $TMP $PKG $OUTPUT
+cd $TMP
+rm -rf $PRGNAM-$VERSION
+tar xvf $CWD/$PRGNAM-$VERSION.tar.gz
+cd $PRGNAM-$VERSION
+tar xvf $CWD/SDL_image-release-${SDL2_IMAGE_VERSION}.tar.gz
+tar xvf $CWD/SDL_mixer-release-${SDL2_MIXER_VERSION}.tar.gz
+chown -R root:root .
+find -L . \
+ \( -perm 777 -o -perm 775 -o -perm 750 -o -perm 711 -o -perm 555 \
+ -o -perm 511 \) -exec chmod 755 {} \; -o \
+ \( -perm 666 -o -perm 664 -o -perm 640 -o -perm 600 -o -perm 444 \
+ -o -perm 440 -o -perm 400 \) -exec chmod 644 {} \;
+sed -i 's#/lib/#/lib64/#g;s#NO_DEFAULT_PATH##g' CMakeLists.txt
+sed -i 's#<SDL2/SDL_image.h>#"SDL_image.h"#' src/blupimania.h
+sed -i 's#<SDL2/SDL_image.h>#"SDL_image.h"#' src/sdl/SDL3_IMG_webp.c src/sdl/SDL3_IMG.h src/blupimania.h
+sed -i 's#<SDL2/SDL_mixer.h>#"SDL_mixer.h"#' src/smaky.c src/play.c
+WORKDIR=$(pwd)
+
+## slackware's SDL2_image and SDL2_mixer are outdated, using more recent ones
+mkdir -p build $PKG/usr/share/blupimania \
+ SDL_image-release-${SDL2_IMAGE_VERSION}/build \
+ SDL_mixer-release-${SDL2_MIXER_VERSION}/build
+# SDL2_image
+pushd SDL_image-release-${SDL2_IMAGE_VERSION}
+./configure \
+ --prefix=/install \
+ --libdir=/install/lib$LIBDIRSUFFIX \
+ --enable-shared \
+ --disable-static \
+ --disable-sdltest \
+ --disable-bmp \
+ --disable-gif \
+ --disable-jpg \
+ --disable-jpg-shared \
+ --disable-lbm \
+ --disable-pcx \
+ --enable-png \
+ --disable-png-shared \
+ --disable-pnm \
+ --disable-tga \
+ --disable-tif \
+ --disable-tif-shared \
+ --disable-xcf \
+ --disable-xpm \
+ --disable-xv \
+ --enable-webp \
+ --enable-webp-shared
+# ./configure --enable-webp --disable-webp-shared
+# cd build
+# cmake \
+# -DCMAKE_C_FLAGS:STRING="$SLKCFLAGS" \
+# -DCMAKE_INSTALL_PREFIX=/install \
+# -DCMAKE_INSTALL_LIBDIR=lib$LIBDIRSUFFIX \
+# -DCMAKE_BUILD_TYPE=Release ..
+make
+make install DESTDIR=$WORKDIR
+popd
+# SDL2_mixer
+pushd SDL_mixer-release-${SDL2_MIXER_VERSION}
+./configure \
+ --prefix=/install \
+ --libdir=/install/lib$LIBDIRSUFFIX \
+ --enable-shared \
+ --disable-static \
+ --disable-sdltest \
+ --disable-music-cmd \
+ --enable-music-wave \
+ --disable-music-mod \
+ --disable-music-mod-modplug \
+ --disable-music-mod-modplug-shared \
+ --disable-music-mod-mikmod \
+ --disable-music-mod-mikmod-shared \
+ --enable-music-midi \
+ --enable-music-midi-timidity \
+ --enable-music-midi-native \
+ --disable-music-midi-fluidsynth \
+ --disable-music-midi-fluidsynth-shared \
+ --enable-music-ogg \
+ --disable-music-ogg-tremor \
+ --disable-music-ogg-shared \
+ --disable-music-flac \
+ --disable-music-flac-shared \
+ --disable-music-mp3 \
+ --disable-music-mp3-smpeg \
+ --disable-music-mp3-smpeg-shared \
+ --disable-smpegtest \
+ --disable-music-mp3-mad-gpl
+# cmake \
+# -DCMAKE_C_FLAGS:STRING="$SLKCFLAGS" \
+# -DCMAKE_INSTALL_PREFIX=/install \
+# -DCMAKE_INSTALL_LIBDIR=lib$LIBDIRSUFFIX \
+# -DCMAKE_BUILD_TYPE=Release ..
+make
+make install DESTDIR=$WORKDIR
+popd
+## End of SDL2 block
+
+BMDIR=$PKG/usr/share/blupimania
+cp $WORKDIR/install/lib$LIBDIRSUFFIX/*.so* $BMDIR
+# blupimania expects to find its files in (binary path)/../share/blupimania
+# Hence we are installing blupimania binary in /usr/libexec
+# and a shell wrapper in /usr/games.
+BINDIR=/usr/libexec
+mkdir -p $PKG/usr/games
+cat <<EOF > $PKG/usr/games/blupimania
+#!/bin/bash
+export LD_LIBRARY_PATH=/usr/share/blupimania:\$LD_LIBRARY_PATH
+exec "$BINDIR/blupimania" "\$@"
+EOF
+chmod 755 $PKG/usr/games/blupimania
+
+export SDL2_image_DIR=$WORKDIR/install/lib$LIBDIRSUFFIX/cmake/SDL2_image
+export SDL2_mixer_DIR=$WORKDIR/install/lib$LIBDIRSUFFIX/cmake/SDL2_mixer
+SLKCFLAGS="${SLKCFLAGS} -L$BMDIR -iquote${WORKDIR}/install/include/SDL2"
+export CMAKE_INSTALL_PREFIX=${WORKDIR}/install
+mkdir -p build
+cd build
+ cmake \
+ -DCMAKE_C_FLAGS:STRING="$SLKCFLAGS" \
+ -DCMAKE_CXX_FLAGS:STRING="$SLKCFLAGS" \
+ -DCMAKE_INSTALL_PREFIX=/usr \
+ -DCMAKE_INSTALL_LIBDIR=lib$LIBDIRSUFFIX \
+ -DCMAKE_INSTALL_BINDIR:PATH=$BINDIR \
+ -DSTATIC_BUILD=OFF \
+ -DBUILD_LINUX=ON \
+ -Wno-dev \
+ -DCMAKE_BUILD_TYPE=Release ..
+ sed -i 's#-L/usr/lib#-L'$BMDIR'#g;s#-Wl,-rpath,/usr/lib#-Wl,-rpath,'$BMDIR'#g;s#-lSDL2#-lSDL2 -lSDL2_image -lSDL2_mixer -lwebp -lwebpdemux -lmodplug#g' CMakeFiles/blupimania.dir/link.txt
+ make
+ make install DESTDIR=$PKG
+cd ..
+
+find $PKG -print0 | xargs -0 file | grep -e "executable" -e "shared object" | grep ELF \
+ | cut -f 1 -d : | xargs strip --strip-unneeded 2> /dev/null || true
+
+mkdir -p $PKG/usr/doc/$PRGNAM-$VERSION
+mv $PKG/usr/share/doc/$PRGNAM/* $PKG/usr/doc/$PRGNAM-$VERSION
+rm -rf $PKG/usr/share/doc
+cp -a $DOCS $PKG/usr/doc/$PRGNAM-$VERSION
+cat $CWD/$PRGNAM.SlackBuild > $PKG/usr/doc/$PRGNAM-$VERSION/$PRGNAM.SlackBuild
+
+mkdir -p $PKG/install
+cat $CWD/slack-desc > $PKG/install/slack-desc
+cat $CWD/doinst.sh > $PKG/install/doinst.sh
+
+cd $PKG
+/sbin/makepkg -l y -c n $OUTPUT/$PRGNAM-$VERSION-$ARCH-$BUILD$TAG.$PKGTYPE
diff --git a/games/blupimania/blupimania.info b/games/blupimania/blupimania.info
new file mode 100644
index 0000000000..6a748e7639
--- /dev/null
+++ b/games/blupimania/blupimania.info
@@ -0,0 +1,14 @@
+PRGNAM="blupimania"
+VERSION="1.6.2"
+HOMEPAGE="http://www.blupi.org/"
+DOWNLOAD="https://github.com/blupi-games/blupimania/archive/v1.6.2/blupimania-1.6.2.tar.gz \
+ https://github.com/libsdl-org/SDL_image/archive/release-2.6.3/SDL_image-release-2.6.3.tar.gz \
+ https://github.com/libsdl-org/SDL_mixer/archive/release-2.6.3/SDL_mixer-release-2.6.3.tar.gz"
+MD5SUM="da1b22b4bed62a50ee13392cf6e06ec9 \
+ bd3726acc520eb9f56f8698e74a22202 \
+ dad3d8c9b59b6eedda2d2fe2b1355fd9"
+DOWNLOAD_x86_64=""
+MD5SUM_x86_64=""
+REQUIRES="libmodplug"
+MAINTAINER="Yth - Arnaud"
+EMAIL="yth@ythogtha.org"
diff --git a/games/blupimania/doinst.sh b/games/blupimania/doinst.sh
new file mode 100644
index 0000000000..65c7e2eeb9
--- /dev/null
+++ b/games/blupimania/doinst.sh
@@ -0,0 +1,9 @@
+if [ -x /usr/bin/update-desktop-database ]; then
+ /usr/bin/update-desktop-database -q usr/share/applications >/dev/null 2>&1
+fi
+
+if [ -e usr/share/icons/hicolor/icon-theme.cache ]; then
+ if [ -x /usr/bin/gtk-update-icon-cache ]; then
+ /usr/bin/gtk-update-icon-cache -f usr/share/icons/hicolor >/dev/null 2>&1
+ fi
+fi
diff --git a/games/blupimania/slack-desc b/games/blupimania/slack-desc
new file mode 100644
index 0000000000..0facb73517
--- /dev/null
+++ b/games/blupimania/slack-desc
@@ -0,0 +1,19 @@
+# HOW TO EDIT THIS FILE:
+# The "handy ruler" below makes it easier to edit a package description.
+# Line up the first '|' above the ':' following the base package name, and
+# the '|' on the right side marks the last column you can put a character in.
+# You must make exactly 11 lines for the formatting to be correct. It's also
+# customary to leave one space after the ':' except on otherwise blank lines.
+
+ |-----handy-ruler------------------------------------------------------|
+blupimania: blupimania (port of Epsitec SA 1994)
+blupimania:
+blupimania: Planet-Blupi is a modern port of the Epsitec SA 1994 game.
+blupimania:
+blupimania: It features a little yellow guy called Blupi facing various puzzles
+blupimania:
+blupimania: Blupi comes out of a hole holding on to a balloon.
+blupimania: Unfortunately he let's it blow away.
+blupimania:
+blupimania: The object of the game is to help him find another balloon, so that he
+blupimania: can move on to the next riddle.
diff --git a/games/bomberclone/bomberclone.SlackBuild b/games/bomberclone/bomberclone.SlackBuild
index 30d529398a..15d75aec69 100644
--- a/games/bomberclone/bomberclone.SlackBuild
+++ b/games/bomberclone/bomberclone.SlackBuild
@@ -1,4 +1,4 @@
-#!/bin/sh
+#!/bin/bash
# Slackware build script for bomberclone
@@ -22,10 +22,19 @@
# OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF THIS SOFTWARE, EVEN IF
# ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
+# 20220407 bkw: Modified by SlackBuilds.org, BUILD=2:
+# - do not install png icon with .svg filename.
+# - abs paths in .desktop file.
+# - binary in /usr/games (it's a game).
+# - no useless INSTALL in doc dir.
+
+cd $(dirname $0) ; CWD=$(pwd)
+
PRGNAM=bomberclone
VERSION=${VERSION:-0.11.9}
-BUILD=${BUILD:-1}
+BUILD=${BUILD:-2}
TAG=${TAG:-_SBo}
+PKGTYPE=${PKGTYPE:-tgz}
if [ -z "$ARCH" ]; then
case "$( uname -m )" in
@@ -35,7 +44,11 @@ if [ -z "$ARCH" ]; then
esac
fi
-CWD=$(pwd)
+if [ ! -z "${PRINT_PACKAGE_NAME}" ]; then
+ echo "$PRGNAM-$VERSION-$ARCH-$BUILD$TAG.$PKGTYPE"
+ exit 0
+fi
+
TMP=${TMP:-/tmp/SBo}
PKG=$TMP/package-$PRGNAM
OUTPUT=${OUTPUT:-/tmp}
@@ -65,9 +78,9 @@ cd $PRGNAM-$VERSION
chown -R root:root .
find -L . \
\( -perm 777 -o -perm 775 -o -perm 750 -o -perm 711 -o -perm 555 \
- -o -perm 511 \) -exec chmod 755 {} \; -o \
+ -o -perm 511 \) -exec chmod 755 {} \+ -o \
\( -perm 666 -o -perm 664 -o -perm 640 -o -perm 600 -o -perm 444 \
- -o -perm 440 -o -perm 400 \) -exec chmod 644 {} \;
+ -o -perm 440 -o -perm 400 \) -exec chmod 644 {} \+
CFLAGS="$SLKCFLAGS -fgnu89-inline" \
CXXFLAGS="$SLKCFLAGS" \
@@ -80,6 +93,7 @@ LDFLAGS="-lm" \
--mandir=/usr/man \
--docdir=/usr/doc/$PRGNAM-$VERSION \
--disable-werror \
+ --bindir=/usr/games \
--build=$ARCH-slackware-linux
make
@@ -92,11 +106,11 @@ mkdir -p $PKG/usr/share/applications
install -D -m644 $CWD/$PRGNAM.desktop $PKG/usr/share/applications/$PRGNAM.desktop
mkdir -p $PKG/usr/share/pixmaps/
-install -D -m644 data/pixmaps/$PRGNAM.png $PKG/usr/share/pixmaps/$PRGNAM.svg
+install -D -m644 data/pixmaps/$PRGNAM.png $PKG/usr/share/pixmaps/$PRGNAM.png
mkdir -p $PKG/usr/doc/$PRGNAM-$VERSION
mv $PKG/usr/share/doc/$PRGNAM/* $PKG/usr/doc/$PRGNAM-$VERSION
-rm $PKG/usr/doc/$PRGNAM-$VERSION/NEWS
+rm $PKG/usr/doc/$PRGNAM-$VERSION/{NEWS,INSTALL}
rm -rf $PKG/usr/share/doc
cat $CWD/$PRGNAM.SlackBuild > $PKG/usr/doc/$PRGNAM-$VERSION/$PRGNAM.SlackBuild
@@ -105,4 +119,4 @@ cat $CWD/slack-desc > $PKG/install/slack-desc
cat $CWD/doinst.sh > $PKG/install/doinst.sh
cd $PKG
-/sbin/makepkg -l y -c n $OUTPUT/$PRGNAM-$VERSION-$ARCH-$BUILD$TAG.${PKGTYPE:-tgz}
+/sbin/makepkg -l y -c n $OUTPUT/$PRGNAM-$VERSION-$ARCH-$BUILD$TAG.$PKGTYPE
diff --git a/games/bomberclone/bomberclone.desktop b/games/bomberclone/bomberclone.desktop
index 2ea4b52ca4..afe221a328 100644
--- a/games/bomberclone/bomberclone.desktop
+++ b/games/bomberclone/bomberclone.desktop
@@ -2,8 +2,8 @@
Name=BomberClone
Name[he]=BomberClone
Comment=Clone of the game AtomicBomberMan
-Exec=bomberclone
-Icon=bomberclone
+Exec=/usr/games/bomberclone
+Icon=/usr/share/pixmaps/bomberclone.png
Terminal=false
Type=Application
Categories=Game;ActionGame;
diff --git a/games/boosteroid/README b/games/boosteroid/README
new file mode 100644
index 0000000000..d0ed594471
--- /dev/null
+++ b/games/boosteroid/README
@@ -0,0 +1,4 @@
+boosteroid (Boosteroid Cloud Gaming Platform)
+
+Run PC games on low-end, outdated or ultra portable devices!
+Play on Mac, Linux, iOS, Android, ChromeOS or smart TVs without console
diff --git a/games/boosteroid/boosteroid.SlackBuild b/games/boosteroid/boosteroid.SlackBuild
new file mode 100644
index 0000000000..82b6295cba
--- /dev/null
+++ b/games/boosteroid/boosteroid.SlackBuild
@@ -0,0 +1,82 @@
+#!/bin/bash
+
+# Copyright 2023 Jake Day, Maryville, TN, USA
+# All rights reserved.
+#
+# Redistribution and use of this script, with or without modification, is
+# permitted provided that the following conditions are met:
+#
+# 1. Redistributions of this script must retain the above copyright
+# notice, this list of conditions and the following disclaimer.
+#
+# THIS SOFTWARE IS PROVIDED BY THE AUTHOR ''AS IS'' AND ANY EXPRESS OR IMPLIED
+# WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE IMPLIED WARRANTIES OF
+# MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE ARE DISCLAIMED. IN NO
+# EVENT SHALL THE AUTHOR BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL,
+# SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT LIMITED TO,
+# PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, DATA, OR PROFITS;
+# OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY,
+# WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR
+# OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF THIS SOFTWARE, EVEN IF
+# ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
+
+cd $(dirname $0) ; CWD=$(pwd)
+
+PRGNAM=boosteroid
+VERSION=${VERSION:-1.5.4}
+BUILD=${BUILD:-1}
+TAG=${TAG:-_SBo}
+PKGTYPE=${PKGTYPE:-tgz}
+
+if [ -z "$ARCH" ]; then
+ case "$(uname -m)" in
+ i?86) ARCH=i586 ;;
+ arm*) ARCH=arm ;;
+ *) ARCH=$(uname -m) ;;
+ esac
+fi
+
+# If the variable PRINT_PACKAGE_NAME is set, then this script will report what
+# the name of the created package would be, and then exit. This information
+# could be useful to other scripts.
+if [ ! -z "${PRINT_PACKAGE_NAME}" ]; then
+ echo "$PRGNAM-$VERSION-$ARCH-$BUILD$TAG.$PKGTYPE"
+ exit 0
+fi
+
+TMP=${TMP:-/tmp/SBo}
+PKG=$TMP/package-$PRGNAM
+OUTPUT=${OUTPUT:-/tmp}
+
+set -e
+
+rm -rf $PKG
+mkdir -p $TMP $PKG $OUTPUT
+cd $PKG
+ar p $CWD/boosteroid-install-x64.deb data.tar.bz2 | tar xjv || exit 1
+chown -R root:root .
+chmod -R u+w,go+r-w,a-s .
+
+# Make sure top-level perms are correct:
+chmod 0755 .
+
+rm -rf $PKG/usr/local
+rm -rf $PKG/opt/BoosteroidGamesS.R.L./include
+
+find $PKG -print0 | xargs -0 file | grep -e "executable" -e "shared object" | grep ELF \
+ | cut -f 1 -d : | xargs strip --strip-unneeded 2> /dev/null || true
+
+sed -i '/Encoding/d' $PKG/usr/share/applications/Boosteroid.desktop
+
+mkdir -p $PKG/usr/doc/$PRGNAM-$VERSION
+cp -a \
+ $PKG/opt/BoosteroidGamesS.R.L./bin/ToU.txt \
+ $PKG/usr/doc/$PRGNAM-$VERSION
+cat $CWD/$PRGNAM.SlackBuild > $PKG/usr/doc/$PRGNAM-$VERSION/$PRGNAM.SlackBuild
+
+mkdir -p $PKG/install
+cat $CWD/slack-desc >$PKG/install/slack-desc
+cat $CWD/doinst.sh > $PKG/install/doinst.sh
+
+cd $PKG
+/sbin/makepkg -l y -c n $OUTPUT/$PRGNAM-$VERSION-$ARCH-$BUILD$TAG.$PKGTYPE
diff --git a/games/boosteroid/boosteroid.info b/games/boosteroid/boosteroid.info
new file mode 100644
index 0000000000..91385f61f4
--- /dev/null
+++ b/games/boosteroid/boosteroid.info
@@ -0,0 +1,10 @@
+PRGNAM="boosteroid"
+VERSION="1.5.4"
+HOMEPAGE="https://www.boosteroid.com/"
+DOWNLOAD="UNSUPPORTED"
+MD5SUM=""
+DOWNLOAD_x86_64="https://boosteroid.com/linux/installer/boosteroid-install-x64.deb"
+MD5SUM_x86_64="8ea633524913a88a7dd078a9d82e189d"
+REQUIRES=""
+MAINTAINER="Jake Day"
+EMAIL="jake@ninebysix.com"
diff --git a/games/stone_soup/doinst.sh b/games/boosteroid/doinst.sh
index 5fb28930db..5fb28930db 100644
--- a/games/stone_soup/doinst.sh
+++ b/games/boosteroid/doinst.sh
diff --git a/games/boosteroid/slack-desc b/games/boosteroid/slack-desc
new file mode 100644
index 0000000000..f2e2a33aa8
--- /dev/null
+++ b/games/boosteroid/slack-desc
@@ -0,0 +1,19 @@
+# HOW TO EDIT THIS FILE:
+# The "handy ruler" below makes it easier to edit a package description. Line
+# up the first '|' above the ':' following the base package name, and the '|'
+# on the right side marks the last column you can put a character in. You must
+# make exactly 11 lines for the formatting to be correct. It's also
+# customary to leave one space after the ':'.
+
+ |-----handy-ruler------------------------------------------------------|
+boosteroid: boosteroid (Boosteroid Cloud Gaming Platform)
+boosteroid:
+boosteroid: Run PC games on low-end, outdated or ultra portable devices!
+boosteroid: Play on Mac, Linux, iOS, Android, ChromeOS or smart TVs
+boosteroid: without console.
+boosteroid:
+boosteroid:
+boosteroid:
+boosteroid:
+boosteroid: Homepage: https://www.boosteroid.com
+boosteroid:
diff --git a/games/boswars/boswars.SlackBuild b/games/boswars/boswars.SlackBuild
index ce536d8d0e..44bbcdd8fa 100644
--- a/games/boswars/boswars.SlackBuild
+++ b/games/boswars/boswars.SlackBuild
@@ -1,8 +1,8 @@
-#!/bin/sh
+#!/bin/bash
# Slackware build script for boswars
-# Copyright 2014-2016 Dimitris Zlatanidis Orestiada, Greece
+# Copyright 2014-2023 Dimitris Zlatanidis Orestiada, Greece
# All rights reserved.
#
# Redistribution and use of this script, with or without modification, is
@@ -22,11 +22,14 @@
# OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF THIS SOFTWARE, EVEN IF
# ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
+cd $(dirname $0) ; CWD=$(pwd)
+
PRGNAM=boswars
-VERSION=${VERSION:-2.7}
+VERSION=${VERSION:-2.8}
SRCVERSION=$(echo $VERSION-src)
-BUILD=${BUILD:-2}
+BUILD=${BUILD:-1}
TAG=${TAG:-_SBo}
+PKGTYPE=${PKGTYPE:-tgz}
if [ -z "$ARCH" ]; then
case "$( uname -m )" in
@@ -36,7 +39,14 @@ if [ -z "$ARCH" ]; then
esac
fi
-CWD=$(pwd)
+# If the variable PRINT_PACKAGE_NAME is set, then this script will report what
+# the name of the created package would be, and then exit. This information
+# could be useful to other scripts.
+if [ ! -z "${PRINT_PACKAGE_NAME}" ]; then
+ echo "$PRGNAM-$VERSION-$ARCH-$BUILD$TAG.$PKGTYPE"
+ exit 0
+fi
+
TMP=${TMP:-/tmp/SBo}
PKG=$TMP/package-$PRGNAM
OUTPUT=${OUTPUT:-/tmp}
@@ -103,4 +113,4 @@ cat $CWD/slack-desc > $PKG/install/slack-desc
cat $CWD/doinst.sh > $PKG/install/doinst.sh
cd $PKG
-/sbin/makepkg -l y -c n $OUTPUT/$PRGNAM-$VERSION-$ARCH-$BUILD$TAG.${PKGTYPE:-tgz}
+/sbin/makepkg -l y -c n $OUTPUT/$PRGNAM-$VERSION-$ARCH-$BUILD$TAG.$PKGTYPE
diff --git a/games/boswars/boswars.info b/games/boswars/boswars.info
index 58b99c5e59..bc7e4c0b89 100644
--- a/games/boswars/boswars.info
+++ b/games/boswars/boswars.info
@@ -1,8 +1,8 @@
PRGNAM="boswars"
-VERSION="2.7"
+VERSION="2.8"
HOMEPAGE="https://www.boswars.org"
-DOWNLOAD="https://www.boswars.org/dist/releases/boswars-2.7-src.tar.gz"
-MD5SUM="ffb7423a27e1821ab12ca7283f932cbf"
+DOWNLOAD="https://www.boswars.org/dist/releases/boswars-2.8-src.tar.gz"
+MD5SUM="f77b1236260f3007ff43f8296baa9824"
DOWNLOAD_x86_64=""
MD5SUM_x86_64=""
REQUIRES="lua"
diff --git a/games/braincurses/braincurses.SlackBuild b/games/braincurses/braincurses.SlackBuild
index 0aa40a0e59..46f599b6dc 100644
--- a/games/braincurses/braincurses.SlackBuild
+++ b/games/braincurses/braincurses.SlackBuild
@@ -1,11 +1,14 @@
-#!/bin/sh
+#!/bin/bash
# Slackware build script for braincurses
# Written by Dan-Simon Myrland <dansimon@radiotube.org>
+cd $(dirname $0) ; CWD=$(pwd)
+
PRGNAM=braincurses
VERSION=${VERSION:-0.5c}
BUILD=${BUILD:-1}
TAG=${TAG:-_SBo}
+PKGTYPE=${PKGTYPE:-tgz}
if [ -z "$ARCH" ]; then
case "$( uname -m )" in
@@ -15,7 +18,14 @@ if [ -z "$ARCH" ]; then
esac
fi
-CWD=$(pwd)
+# If the variable PRINT_PACKAGE_NAME is set, then this script will report what
+# the name of the created package would be, and then exit. This information
+# could be useful to other scripts.
+if [ ! -z "${PRINT_PACKAGE_NAME}" ]; then
+ echo "$PRGNAM-$VERSION-$ARCH-$BUILD$TAG.$PKGTYPE"
+ exit 0
+fi
+
TMP=${TMP:-/tmp/SBo}
PKG=$TMP/package-$PRGNAM
OUTPUT=${OUTPUT:-/tmp}
@@ -63,4 +73,4 @@ mkdir -p $PKG/install
cat $CWD/slack-desc > $PKG/install/slack-desc
cd $PKG
-/sbin/makepkg -l y -c n $OUTPUT/$PRGNAM-$VERSION-$ARCH-$BUILD$TAG.${PKGTYPE:-tgz}
+/sbin/makepkg -l y -c n $OUTPUT/$PRGNAM-$VERSION-$ARCH-$BUILD$TAG.$PKGTYPE
diff --git a/games/brainparty/brainparty.SlackBuild b/games/brainparty/brainparty.SlackBuild
index 71770366d2..06f9c314c5 100644
--- a/games/brainparty/brainparty.SlackBuild
+++ b/games/brainparty/brainparty.SlackBuild
@@ -1,13 +1,16 @@
-#!/bin/sh
+#!/bin/bash
# Slackware build script for brainparty
# Written by Larry Hajali <larryhaja[at]gmail[dot]com>
+cd $(dirname $0) ; CWD=$(pwd)
+
PRGNAM=brainparty
VERSION=${VERSION:-0.61}
BUILD=${BUILD:-1}
TAG=${TAG:-_SBo}
+PKGTYPE=${PKGTYPE:-tgz}
if [ -z "$ARCH" ]; then
case "$( uname -m )" in
@@ -17,7 +20,14 @@ if [ -z "$ARCH" ]; then
esac
fi
-CWD=$(pwd)
+# If the variable PRINT_PACKAGE_NAME is set, then this script will report what
+# the name of the created package would be, and then exit. This information
+# could be useful to other scripts.
+if [ ! -z "${PRINT_PACKAGE_NAME}" ]; then
+ echo "$PRGNAM-$VERSION-$ARCH-$BUILD$TAG.$PKGTYPE"
+ exit 0
+fi
+
TMP=${TMP:-/tmp/SBo}
PKG=$TMP/package-$PRGNAM
OUTPUT=${OUTPUT:-/tmp}
@@ -51,6 +61,9 @@ find -L . \
\( -perm 666 -o -perm 664 -o -perm 600 -o -perm 444 -o -perm 440 -o -perm 400 \) \
-exec chmod 644 {} \;
+# Thanks debian
+patch -p1 < $CWD/patches/gcc-6.patch
+
# Save directory patch. Data directory patch. Use custom SLKCFLAGS.
patch -p1 < $CWD/patches/brainparty-0.5-savegame.patch
patch -p1 < $CWD/patches/brainparty-0.5-data-directory.patch
@@ -80,4 +93,4 @@ cat $CWD/slack-desc > $PKG/install/slack-desc
cat $CWD/doinst.sh > $PKG/install/doinst.sh
cd $PKG
-/sbin/makepkg -l y -c n $OUTPUT/$PRGNAM-$VERSION-$ARCH-$BUILD$TAG.${PKGTYPE:-tgz}
+/sbin/makepkg -l y -c n $OUTPUT/$PRGNAM-$VERSION-$ARCH-$BUILD$TAG.$PKGTYPE
diff --git a/games/brainparty/patches/gcc-6.patch b/games/brainparty/patches/gcc-6.patch
new file mode 100644
index 0000000000..67dfadd540
--- /dev/null
+++ b/games/brainparty/patches/gcc-6.patch
@@ -0,0 +1,47 @@
+Description: Fix FTBFS on GCC 6 by removing use of hash_set class
+Author: James Cowgill <jcowgill@debian.org>
+Bug-Debian: https://bugs.debian.org/811885
+---
+This patch header follows DEP-3: http://dep.debian.net/deps/dep3/
+--- a/WordList.h
++++ b/WordList.h
+@@ -18,24 +18,11 @@
+ #ifndef __WORDLIST_H__
+ #define __WORDLIST_H__
+
++#include <string>
+ #include <vector>
+-#include <ext/hash_set>
++#include <unordered_set>
+
+-using namespace std;
+-using namespace __gnu_cxx;
+-
+-namespace __gnu_cxx
+-{
+- template<> struct hash< std::string >
+- {
+- size_t operator()( const std::string& x ) const
+- {
+- return hash< const char* >()( x.c_str() );
+- }
+- };
+-}
+-
+-typedef hash_set<string, hash<string> > string_hash_set;
++typedef std::unordered_set<std::string> string_hash_set;
+
+ class WordList {
+ private:
+--- a/Makefile
++++ b/Makefile
+@@ -17,6 +17,9 @@ else
+ OSXCOMPAT =
+ endif
+
++# enable c++11
++CXXFLAGS += -std=c++11
++
+ # object files have corresponding source files
+ CXX = g++
+
diff --git a/games/brickout/README b/games/brickout/README
index afaf7fd606..cc560f2fdd 100644
--- a/games/brickout/README
+++ b/games/brickout/README
@@ -1,3 +1,5 @@
+brickout (ball-and-paddle game)
+
"Brickout" is a ball-and-paddle game where it's your objective to
destroy bricks on the screen. Gameplay is similar to "Breakout" and
"Arkanoid".
diff --git a/games/brickout/brickout.SlackBuild b/games/brickout/brickout.SlackBuild
index 758c309e79..dce8c072f4 100644
--- a/games/brickout/brickout.SlackBuild
+++ b/games/brickout/brickout.SlackBuild
@@ -1,8 +1,8 @@
-#!/bin/sh
+#!/bin/bash
# Slackware build script for brickout
-# Written by B. Watson (yalhcru@gmail.com)
+# Written by B. Watson (urchlay@slackware.uk)
# Modified by the SlackBuilds.org project
# Licensed under the WTFPL. See http://www.wtfpl.net/txt/copying/ for details.
@@ -10,10 +10,13 @@
# 20141030 bkw: make VERSION a fixed value, derive SRCVER from it (instead of
# the other way around). Nitpick.
+cd $(dirname $0) ; CWD=$(pwd)
+
PRGNAM=brickout
VERSION=${VERSION:-20020609}
BUILD=${BUILD:-1}
TAG=${TAG:-_SBo}
+PKGTYPE=${PKGTYPE:-tgz}
SRCVER=$( echo $VERSION | sed 's,\(....\)\(..\)\(..\),\1.\2.\3,' )
@@ -25,7 +28,11 @@ if [ -z "$ARCH" ]; then
esac
fi
-CWD=$(pwd)
+if [ ! -z "${PRINT_PACKAGE_NAME}" ]; then
+ echo "$PRGNAM-$VERSION-$ARCH-$BUILD$TAG.$PKGTYPE"
+ exit 0
+fi
+
TMP=${TMP:-/tmp/SBo}
PKG=$TMP/package-$PRGNAM
OUTPUT=${OUTPUT:-/tmp}
@@ -47,11 +54,8 @@ rm -rf $PRGNAM-$SRCVER
tar xvf $CWD/$PRGNAM-$SRCVER.tar.gz
cd $PRGNAM-$SRCVER
chown -R root:root .
-find -L . \
- \( -perm 777 -o -perm 775 -o -perm 750 -o -perm 711 -o -perm 555 \
- -o -perm 511 \) -exec chmod 755 {} \; -o \
- \( -perm 666 -o -perm 664 -o -perm 640 -o -perm 600 -o -perm 444 \
- -o -perm 440 -o -perm 400 \) -exec chmod 644 {} \;
+find -L . -perm /111 -a \! -perm 755 -a -exec chmod 755 {} \+ -o \
+ \! -perm /111 -a \! -perm 644 -a -exec chmod 644 {} \+
# This is fugly. Apologies.
make \
@@ -94,4 +98,4 @@ cat $CWD/slack-desc > $PKG/install/slack-desc
cat $CWD/doinst.sh > $PKG/install/doinst.sh
cd $PKG
-/sbin/makepkg -l y -c n $OUTPUT/$PRGNAM-$VERSION-$ARCH-$BUILD$TAG.${PKGTYPE:-tgz}
+/sbin/makepkg -l y -c n $OUTPUT/$PRGNAM-$VERSION-$ARCH-$BUILD$TAG.$PKGTYPE
diff --git a/games/brickout/brickout.info b/games/brickout/brickout.info
index d054942127..5ec2ab0c31 100644
--- a/games/brickout/brickout.info
+++ b/games/brickout/brickout.info
@@ -7,4 +7,4 @@ DOWNLOAD_x86_64=""
MD5SUM_x86_64=""
REQUIRES=""
MAINTAINER="B. Watson"
-EMAIL="yalhcru@gmail.com"
+EMAIL="urchlay@slackware.uk"
diff --git a/games/briquolo/briquolo.SlackBuild b/games/briquolo/briquolo.SlackBuild
index ef9d6ea57d..3fd3ffd236 100644
--- a/games/briquolo/briquolo.SlackBuild
+++ b/games/briquolo/briquolo.SlackBuild
@@ -1,4 +1,4 @@
-#!/bin/sh
+#!/bin/bash
# Generated by Alien's SlackBuild Toolkit: http://slackware.com/~alien/AST
# Copyright 2009, 2010, 2011, 2012 Eric Hameleers, Eindhoven, Netherlands
@@ -8,26 +8,40 @@
# Based on http://slackbuilds.org/template.SlackBuild
+# 20220404 bkw: Modified by SlackBuilds.org, BUILD=3:
+# - install SlackBuild in doc dir, as per template.
+# 20220220 bkw: Modified by SlackBuilds.org, BUILD=2:
+# - fix build on 15.0.
+# - fix .desktop file (it had TryExec=tuxkart... uhhh).
+# - binary in /usr/games.
+
+cd $(dirname $0) ; CWD=$(pwd)
+
PRGNAM=briquolo
VERSION=${VERSION:-0.5.7}
-BUILD=${BUILD:-1}
+BUILD=${BUILD:-2}
TAG=${TAG:-_SBo}
+PKGTYPE=${PKGTYPE:-tgz}
if [ -z "$ARCH" ]; then
case "$( uname -m )" in
- i?86) export ARCH=i486 ;;
+ i?86) export ARCH=i586 ;;
arm*) export ARCH=arm ;;
*) export ARCH=$( uname -m ) ;;
esac
fi
-CWD=$(pwd)
+if [ ! -z "${PRINT_PACKAGE_NAME}" ]; then
+ echo "$PRGNAM-$VERSION-$ARCH-$BUILD$TAG.$PKGTYPE"
+ exit 0
+fi
+
TMP=${TMP:-/tmp/SBo}
PKG=$TMP/package-$PRGNAM
OUTPUT=${OUTPUT:-/tmp}
-if [ "$ARCH" = "i486" ]; then
- SLKCFLAGS="-O2 -march=i486 -mtune=i686"
+if [ "$ARCH" = "i586" ]; then
+ SLKCFLAGS="-O2 -march=i586 -mtune=i686"
LIBDIRSUFFIX=""
elif [ "$ARCH" = "i686" ]; then
SLKCFLAGS="-O2 -march=i686 -mtune=i686"
@@ -48,6 +62,7 @@ cd $TMP
rm -rf $PRGNAM-$VERSION
tar xjvf $CWD/$PRGNAM-$VERSION.tar.bz2
cd $PRGNAM-$VERSION
+
#Before building, we have to apply a lot of patches. Developer has left his application :(
#Fix building with "newer" gcc versions (> 4.3)
patch -p1 < $CWD/patches/gcc-fixes.patch
@@ -59,31 +74,37 @@ patch -p1 < $CWD/patches/fix_ati_crash.patch
patch -p1 < $CWD/patches/desktop-entry.patch
#Done! Lets do the rest in standard way now.
chown -R root:root .
+
find -L . \
\( -perm 777 -o -perm 775 -o -perm 750 -o -perm 711 -o -perm 555 -o -perm 511 \) \
- -exec chmod 755 {} \; -o \
+ -exec chmod 755 {} \+ -o \
\( -perm 666 -o -perm 664 -o -perm 600 -o -perm 444 -o -perm 440 -o -perm 400 \) \
- -exec chmod 644 {} \;
+ -exec chmod 644 {} \+
CFLAGS="$SLKCFLAGS" \
-CXXFLAGS="$SLKCFLAGS" \
+CXXFLAGS="$SLKCFLAGS -std=gnu++98" \
./configure \
--prefix=/usr \
--libdir=/usr/lib${LIBDIRSUFFIX} \
--sysconfdir=/etc \
--localstatedir=/var \
+ --bindir=/usr/games \
--build=$ARCH-slackware-linux
# Workaround some stupid Makefile problems.
sed -i -e's|icondir = $(DESTDIR)|icondir = |' desktop/Makefile
mkdir -p $PKG/usr/share/applications
+sed -i -e '/^\(TryExec\|Encoding\)/d' \
+ -e 's,/usr/bin,/usr/games,' \
+ desktop/$PRGNAM.desktop
make
-make install DESTDIR=$PKG
+make install-strip DESTDIR=$PKG
mkdir -p $PKG/usr/doc/$PRGNAM-$VERSION
+cat $CWD/$PRGNAM.SlackBuild > $PKG/usr/doc/$PRGNAM-$VERSION/$PRGNAM.SlackBuild
cp -a \
- ABOUT-NLS AUTHORS COPYING ChangeLog INSTALL DejaVuSans.ttf-LICENSE README \
+ AUTHORS COPYING ChangeLog DejaVuSans.ttf-LICENSE README \
$PKG/usr/doc/$PRGNAM-$VERSION
mkdir -p $PKG/install
@@ -91,4 +112,4 @@ cat $CWD/slack-desc > $PKG/install/slack-desc
cat $CWD/doinst.sh > $PKG/install/doinst.sh
cd $PKG
-/sbin/makepkg -l y -c n $OUTPUT/$PRGNAM-$VERSION-$ARCH-$BUILD$TAG.${PKGTYPE:-tgz}
+/sbin/makepkg -l y -c n $OUTPUT/$PRGNAM-$VERSION-$ARCH-$BUILD$TAG.$PKGTYPE
diff --git a/games/brutalchess/brutalchess.SlackBuild b/games/brutalchess/brutalchess.SlackBuild
index ad4cde895d..fbc020d430 100644
--- a/games/brutalchess/brutalchess.SlackBuild
+++ b/games/brutalchess/brutalchess.SlackBuild
@@ -1,4 +1,4 @@
-#!/bin/sh
+#!/bin/bash
#
# Slackware build script for Brutal Chess
#
@@ -22,10 +22,13 @@
# OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF THIS SOFTWARE, EVEN IF
# ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
+cd $(dirname $0) ; CWD=$(pwd)
+
PRGNAM=brutalchess
VERSION=${VERSION:-0.5.2}
BUILD=${BUILD:-2}
TAG=${TAG:-_SBo}
+PKGTYPE=${PKGTYPE:-tgz}
if [ -z "$ARCH" ]; then
case "$( uname -m )" in
@@ -35,7 +38,14 @@ if [ -z "$ARCH" ]; then
esac
fi
-CWD=$(pwd)
+# If the variable PRINT_PACKAGE_NAME is set, then this script will report what
+# the name of the created package would be, and then exit. This information
+# could be useful to other scripts.
+if [ ! -z "${PRINT_PACKAGE_NAME}" ]; then
+ echo "$PRGNAM-$VERSION-$ARCH-$BUILD$TAG.$PKGTYPE"
+ exit 0
+fi
+
TMP=${TMP:-/tmp/SBo}
PKG=$TMP/package-$PRGNAM
OUTPUT=${OUTPUT:-/tmp}
@@ -105,4 +115,4 @@ cat $CWD/slack-desc > $PKG/install/slack-desc
cat $CWD/doinst.sh > $PKG/install/doinst.sh
cd $PKG
-/sbin/makepkg -l y -c n $OUTPUT/$PRGNAM-$VERSION-$ARCH-$BUILD$TAG.${PKGTYPE:-tgz}
+/sbin/makepkg -l y -c n $OUTPUT/$PRGNAM-$VERSION-$ARCH-$BUILD$TAG.$PKGTYPE
diff --git a/games/brutalchess/brutalchess.info b/games/brutalchess/brutalchess.info
index 482858759d..7fca3c3737 100644
--- a/games/brutalchess/brutalchess.info
+++ b/games/brutalchess/brutalchess.info
@@ -1,7 +1,7 @@
PRGNAM="brutalchess"
VERSION="0.5.2"
-HOMEPAGE="http://brutalchess.sourceforge.net/"
-DOWNLOAD="http://downloads.sourceforge.net/brutalchess/brutalchess-alpha-0.5.2-src.tar.gz"
+HOMEPAGE="https://brutalchess.sourceforge.net/"
+DOWNLOAD="https://downloads.sourceforge.net/brutalchess/brutalchess-alpha-0.5.2-src.tar.gz"
MD5SUM="370476b63091b8d82a9ea57c604dcbab"
DOWNLOAD_x86_64=""
MD5SUM_x86_64=""
diff --git a/games/bsnes-mercury/README b/games/bsnes-mercury/README
deleted file mode 100644
index 9ed36c43b3..0000000000
--- a/games/bsnes-mercury/README
+++ /dev/null
@@ -1,38 +0,0 @@
-bsnes-mercury is a Super Nintendo video game system emulator that can
-be used as a libretro core.
-
-bsnes-mercury is a fork of higan, aiming to restore some useful
-features that have been removed, as well as improving performance a
-bit. Maximum accuracy is still uncompromisable; anything that affects
-accuracy is optional and off by default.
-
-bsnes-mercury optionally supports using the following BIOS image file
-for operation:
-
-* dsp1.data.rom (DSP1 DATA)
-* dsp1.program.rom (DSP1 PROGRAM)
-* dsp1b.data.rom (DSP1B DATA)
-* dsp1b.program.rom (DSP1B PROGRAM))
-* dsp2.data.rom (DSP2 DATA)
-* dsp2.program.rom (DSP2 PROGRAM)
-* dsp3.data.rom (DSP3 DATA)
-* dsp3.program.rom (DSP3 PROGRAM)
-* dsp4.data.rom (DSP4 DATA)
-* dsp4.program.rom (DSP4 PROGRAM)
-* cx4.data.rom (Cx4 DATA)
-* st010.data.rom (ST-0010 DATA)
-* st010.program.rom (ST-0010 PROGRAM)
-* st011.data.rom (ST-0011 DATA)
-* st011.program.rom (ST-0011 PROGRAM)
-* st018.data.rom (ST-0018 DATA)
-* st018.program.rom (ST-0018 PROGRAM)
-
-By default, this SlackBuild will build the bsnes accuracy core.
-To build the balanced or performance cores, choose any desired cores:
- CORE="accuracy balanced performance" ./bsnes-mercury.SlackBuild
-
-Or to build all three cores, "all" can be used:
- CORE="all" ./bsnes-mercury.SlackBuild
-
-To build the debugging symbols use:
- DEBUG=1 ./bsnes-mercury.SlackBuild
diff --git a/games/bsnes-mercury/bsnes-mercury.SlackBuild b/games/bsnes-mercury/bsnes-mercury.SlackBuild
deleted file mode 100644
index 88a963f8ca..0000000000
--- a/games/bsnes-mercury/bsnes-mercury.SlackBuild
+++ /dev/null
@@ -1,91 +0,0 @@
-#!/bin/sh
-
-# Slackware build script for bsnes-mercury
-
-# Copyright 2016-2018 Hunter Sezen
-# All rights reserved.
-#
-# Redistribution and use of this script, with or without modification, is
-# permitted provided that the following conditions are met:
-#
-# 1. Redistributions of this script must retain the above copyright
-# notice, this list of conditions and the following disclaimer.
-#
-# THIS SOFTWARE IS PROVIDED BY THE AUTHOR "AS IS" AND ANY EXPRESS OR IMPLIED
-# WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE IMPLIED WARRANTIES OF
-# MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE ARE DISCLAIMED. IN NO
-# EVENT SHALL THE AUTHOR BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL,
-# SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT LIMITED TO,
-# PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, DATA, OR PROFITS;
-# OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY,
-# WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR
-# OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF THIS SOFTWARE, EVEN IF
-# ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
-
-PRGNAM=bsnes-mercury
-LIBNAM=$(echo $PRGNAM | tr - _)
-VERSION=${VERSION:-2018.08.03_4e221df}
-BUILD=${BUILD:-1}
-TAG=${TAG:-_SBo}
-
-if [ -z "$ARCH" ]; then
- case "$( uname -m )" in
- i?86) ARCH=i586 ;;
- arm*) ARCH=arm ;;
- *) ARCH=$( uname -m ) ;;
- esac
-fi
-
-CWD=$(pwd)
-TMP=${TMP:-/tmp/SBo}
-PKG=$TMP/package-$PRGNAM
-OUTPUT=${OUTPUT:-/tmp}
-
-LIBDIRSUFFIX=
-[ "$ARCH" = x86_64 ] && LIBDIRSUFFIX=64
-
-set -eu
-
-rm -rf $PKG
-mkdir -p $TMP $PKG $OUTPUT
-cd $TMP
-rm -rf $PRGNAM-$VERSION
-tar xvf $CWD/$PRGNAM-$VERSION.tar.xz
-cd $PRGNAM-$VERSION
-chown -R root:root .
-find -L . \
- \( -perm 777 -o -perm 775 -o -perm 750 -o -perm 711 -o -perm 555 \
- -o -perm 511 \) -exec chmod 755 {} \; -o \
- \( -perm 666 -o -perm 664 -o -perm 640 -o -perm 600 -o -perm 444 \
- -o -perm 440 -o -perm 400 \) -exec chmod 644 {} \;
-
-[ "${DEBUG:=0}" != 0 ] && DEBUG=1
-
-case "$ARCH" in
- arm) CORE="${CORE:-performance}" ;;
- *) CORE="${CORE:-accuracy}" ;;
-esac
-
-[ "$CORE" = all ] && CORE='accuracy balanced performance'
-
-for PROFILE in $CORE; do
- CORENAM="${LIBNAM}_${PROFILE}_libretro"
- make profile="$PROFILE" DEBUG=$DEBUG GIT_VERSION="${VERSION#*_}"
- install -Dm0644 out/$CORENAM.so $PKG/usr/lib${LIBDIRSUFFIX}/libretro/$CORENAM.so
- install -Dm0644 $CORENAM.info $PKG/usr/lib${LIBDIRSUFFIX}/libretro/info/$CORENAM.info
-done
-
-if [ $DEBUG = 0 ]; then
- find $PKG -print0 | xargs -0 file | grep -e "executable" -e "shared object" | grep ELF \
- | cut -f 1 -d : | xargs strip --strip-unneeded 2> /dev/null || true
-fi
-
-mkdir -p $PKG/usr/doc/$PRGNAM-$VERSION
-cp -a LICENSE README.md $PKG/usr/doc/$PRGNAM-$VERSION
-cat $CWD/$PRGNAM.SlackBuild > $PKG/usr/doc/$PRGNAM-$VERSION/$PRGNAM.SlackBuild
-
-mkdir -p $PKG/install
-cat $CWD/slack-desc > $PKG/install/slack-desc
-
-cd $PKG
-/sbin/makepkg -l y -c n $OUTPUT/$PRGNAM-$VERSION-$ARCH-$BUILD$TAG.${PKGTYPE:-tgz}
diff --git a/games/bsnes-mercury/bsnes-mercury.info b/games/bsnes-mercury/bsnes-mercury.info
deleted file mode 100644
index 031bd14a84..0000000000
--- a/games/bsnes-mercury/bsnes-mercury.info
+++ /dev/null
@@ -1,10 +0,0 @@
-PRGNAM="bsnes-mercury"
-VERSION="2018.08.03_4e221df"
-HOMEPAGE="https://www.libretro.com/"
-DOWNLOAD="http://slackless.raccoons.tech/src/libretro/bsnes-mercury-2018.08.03_4e221df.tar.xz"
-MD5SUM="f7779264f2a7808f623cf3219a7006de"
-DOWNLOAD_x86_64=""
-MD5SUM_x86_64=""
-REQUIRES="RetroArch"
-MAINTAINER="orphaned - no maintainer"
-EMAIL="nobody@nowhere.com"
diff --git a/games/bsnes-mercury/slack-desc b/games/bsnes-mercury/slack-desc
deleted file mode 100644
index aa4ea09286..0000000000
--- a/games/bsnes-mercury/slack-desc
+++ /dev/null
@@ -1,19 +0,0 @@
-# HOW TO EDIT THIS FILE:
-# The "handy ruler" below makes it easier to edit a package description.
-# Line up the first '|' above the ':' following the base package name, and
-# the '|' on the right side marks the last column you can put a character in.
-# You must make exactly 11 lines for the formatting to be correct. It's also
-# customary to leave one space after the ':' except on otherwise blank lines.
-
- |-----handy-ruler------------------------------------------------------|
-bsnes-mercury: bsnes-mercury (Fork of bsnes with performance improvements)
-bsnes-mercury:
-bsnes-mercury: bsnes-mercury is a fork of higan, aiming to restore some useful
-bsnes-mercury: features that have been removed, as well as improving performance
-bsnes-mercury: a bit.
-bsnes-mercury:
-bsnes-mercury: Homepage: https://www.libretro.com/
-bsnes-mercury:
-bsnes-mercury:
-bsnes-mercury:
-bsnes-mercury:
diff --git a/games/bstone/README b/games/bstone/README
index 842423d0cb..72f207482d 100644
--- a/games/bstone/README
+++ b/games/bstone/README
@@ -6,7 +6,7 @@ Planet Strike.
Features:
* High resolution rendering of world (extended vanilla engine)
* Modern and vanilla controls
-* Allows to customize control bindings
+* Allows customizing control bindings
* Separate volume control of sound effects and music
Supported games:
@@ -18,6 +18,9 @@ Supported games:
* Planet Strike v1.0
* Planet Strike v1.1
-The data files for Aliens of Gold v3.0 shareware are included in the
-package. To play one of the other games, copy its data files to
-/usr/share/games/bstone.
+The data files for Aliens of Gold v3.0 shareware are included in
+the package. To play one of the other games, copy its data files
+(*.bs6 or *.vsi) to /usr/share/games/bstone. When you start bstone,
+it will detect all the available games and ask which one you'd like to
+play. Note that the data files must be named either all uppercase or
+all lowercase.
diff --git a/games/bstone/blake_stone_source_code_license.txt b/games/bstone/blake_stone_source_code_license.txt
new file mode 100644
index 0000000000..945cb68c51
--- /dev/null
+++ b/games/bstone/blake_stone_source_code_license.txt
@@ -0,0 +1,53 @@
+Blake Stone: Planet Strike Source Code Release - July 5, 2013.
+
+Please note that this is being released without any kind of
+support from the original developers of this game or Apogee Software,
+LLC, Apogee Software, Ltd / 3DRealms Entertainment.  
+
+We are releasing this code for the entertainment of the user
+community. This is all the source we have relating to Blake Stone:
+Planet Strike.  We haven't looked at this stuff in years, and
+make no guarantee that you will be able to get it to work, nor do we
+guarantee that it won't blow up your computer if you do try and use
+it. ;)
+
+You will need the data from a released version of Blake Stone: Planet
+Strike to use the .exe built from this code. We cannot and will not
+help in getting this running.
+
+Caveat Emptor - Use at your own risk.
+
+Please note that while we are releasing the source code to Blake
+Stone: Planet Strike, the game itself has not been released in the
+same manner (in other words, Blake Stone: Planet Strike is still
+commercial software). You can still buy the game from us by visiting
+the Apogee Software online store at:
+
+http://apogeesoftware.com/products/blake-stone-planet-strike
+
+...or GOG.com at:
+
+http://www.gog.com/gamecard/blake_stone_planet_strike
+
+Thanks to all the fans who have enjoyed the game and to those that
+have contacted us about the possibility of releasing this source. If
+you produce something cool with this source code, drop us a line at
+info@apogeesoftware.com
+
+=====================================================================
+
+Copyright © 1992 - 2013.
+
+This Source code / program is free software; you can redistribute it
+and/or modify it under the terms of the GNU General Public License
+as published by the Free Software Foundation; either version 2 of the
+License, or (at your option) any later version.
+
+This program is distributed in the hope that it will be useful,
+but WITHOUT ANY WARRANTY; without even the implied warranty of
+MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.
+
+See the GNU General Public License for more details.You should have
+received a copy of the GNU General Public License along with this
+program; if not, write to the Free Software Foundation, Inc., 59
+Temple Place - Suite 330, Boston, MA  02111-1307, USA.
diff --git a/games/bstone/bstone.6 b/games/bstone/bstone.6
index ae8b11d612..c503ef91af 100644
--- a/games/bstone/bstone.6
+++ b/games/bstone/bstone.6
@@ -1,8 +1,5 @@
.\" Man page generated from reStructuredText.
.
-.TH BSTONE 6 "2016-08-13" "1.1.7" "SlackBuilds.org"
-.SH NAME
-bstone \- source port of the Blake Stone games
.
.nr rst2man-indent-level 0
.
@@ -30,18 +27,15 @@ level margin: \\n[rst2man-indent\\n[rst2man-indent-level]]
.\" new: \\n[rst2man-indent\\n[rst2man-indent-level]]
.in \\n[rst2man-indent\\n[rst2man-indent-level]]u
..
+.TH "BSTONE" 6 "2023-01-11" "1.1.12" "SlackBuilds.org"
+.SH NAME
+bstone \- source port of the Blake Stone games
.\" RST source for bstone(6) man page. Convert with:
.
.\" rst2man.py bstone.rst > bstone.6
.
.\" rst2man.py comes from the SBo development/docutils package.
.
-.\" converting from pod:
-.
-.\" s/B<\([^>]*\)>/**\1**/g
-.
-.\" s/I<\([^>]*\)>/*\1*/g
-.
.SH SYNOPSIS
.sp
bstone [\fI\-options\fP]
@@ -80,108 +74,245 @@ Planet Strike v1.1
.UNINDENT
.sp
This man page only describes the command\-line options. For full documentation,
-see /usr/doc/bstone\-1.1.7/README.md
+see /usr/doc/bstone\-1.1.12/README.md
.SH OPTIONS
-.\" notice the **-opt** *param* stuff? rst's option recognition
-.
-.\" can't handle non-GNU-style options like -option (it thinks the
-.
-.\" option is -o, and the ption is the parameter). So we have to help
-.
-.\" it out a little.
-.
.INDENT 0.0
.TP
-.B \fI\-\-version\fP
-Outputs the port\(aqs version to standard output and
-into message box.
+.B \fB\-\-version\fP
+Outputs the port\(aqs version to standard output and into message box.
.TP
-.B \fI\-\-aog_sw\fP
-Switches the port to Blake Stone: Aliens of Gold (shareware, v3.0) mode.
-If appropriate data files will not be found the port will fail.
-Default switch strategy: AoG (full) \-> AoG (SW) \-> PS
+.B \fB\-\-aog_sw\fP
+Switches the port to "Blake Stone: Aliens Of Gold (shareware)" mode.
+If appropriate data files are not found, the port will fail.
.TP
-.B \fI\-\-aog_10\fP
-Switches the port to Blake Stone: Aliens of Gold (full, v1.0) mode.
-If appropriate data files will not be found the port will fail.
-Default switch strategy: AoG (full) \-> AoG (SW) \-> PS
+.B \fB\-\-aog\fP
+Switches the port to "Blake Stone: Aliens Of Gold" mode.
+If appropriate data files are not found, the port will fail.
.TP
-.B \fI\-\-aog_2x\fP
-Switches the port to Blake Stone: Aliens of Gold (full, v2.0/v2.1) mode.
-If appropriate data files will not be found the port will fail.
-Default switch strategy: AoG (full) \-> AoG (SW) \-> PS
+.B \fB\-\-ps\fP
+Switches the port to "Blake Stone: Planet Strike" mode.
+If appropriate data files are not found, the port will fail.
.TP
-.B \fI\-\-aog_30\fP
-Switches the port to Blake Stone: Aliens of Gold (full, v3.0) mode.
-If appropriate data files will not be found the port will fail.
-Default switch strategy: AoG (full) \-> AoG (SW) \-> PS
+.B \fB\-\-no_screens\fP
+Skips start\-up screens and the ending promo pages (AOG SW).
.TP
-.B \fI\-\-ps\fP
-Switches the port to Blake Stone: Planet Strike (full, v1.0/v1.1) mode.
-If appropriate data files will not be found the port will fail.
-Default switch strategy: AoG (full) \-> AoG (SW) \-> PS
+.B \fB\-\-cheats\fP
+Enables so called "debug mode" without much fuss.
.TP
-.B \fI\-\-no_screens\fP
-Skips start\-up screens (AoG/PS) and ending promo pages (AoG SW only).
+.B \fB\-\-data_dir\fP dir
+Specifies a directory with game\(aqs resource files.
+Default: \fI/usr/share/games/bstone\fP
.TP
-.B \fI\-\-cheats\fP
-Enables so called "debug mode" without much fuss.
+.B \fB\-\-mod_dir\fP dir
+Specifies a directory with mod\(aqs resource files.
+Default: undefined.
+.TP
+.B \fB\-\-profile_dir\fP dir
+Overrides default directory of the game\(aqs profile files.
+Default: \fI~/.local/share/bibendovsky/bstone/\fP
.TP
-.B \fI\-\-data_dir path_to_data\fP
-Specifies location to the game\(aqs data files.
-Default: /usr/share/games/bstone/
-.TP
-.B \fI\-\-profile_dir path\fP
-Overrides default location of the game\(aqs profile files. Config files
-and savegames are written here.
-Default: .local/share/bibendovsky/bstone/
-.TP
-.B \fI\-\-vid_renderer [soft|ogl]\fP
-Forces to use a specified renderer.
-"soft" selects a software renderer.
-"ogl" selects an OpenGL 2.x compatible renderer.
-Default order without this option: ogl, soft.
-.TP
-.B \fI\-\-vid_windowed\fP
-Runs the game in windowed mode.
-Default video mode: 640x480
-.TP
-.B \fI\-\-vid_mode width height\fP
-Selects the specified resolution for windowed mode.
-Without this option the game will use desktop\(aqs resolution.
-Minimum width: 640
-Minimum height: 480
-.TP
-.B \fI\-\-vid_scale factor\fP
-Refinement factor. The higher a value the greater internal resolution
-mode will be used to render a scene. The dimensions of the resolution mode
-are proportional to the original one (320x200) by \(aqfactor\(aq value.
-This option can greatly affect the performance of a renderer (especially a
-software one).
-Minimum factor: 1 (identical to the original game)
-Default factor: depends on the game\(aqs resolution mode.
-.TP
-.B \fI\-\-vid_window_x offset\fP
+.B \fB\-\-vid_renderer\fP value
+Select a renderer.
+Values:
+.INDENT 7.0
+.INDENT 3.5
+.INDENT 0.0
+.IP \(bu 2
+auto_detect \- tries to select the best renderer.
+.IP \(bu 2
+software \- the vanilla renderer.
+.IP \(bu 2
+gl_2_0 \- OpenGL 2.0 or higher.
+.IP \(bu 2
+gl_3_2_c \- OpenGL 3.2 core or higher.
+.IP \(bu 2
+gles_2_0 \- OpenGL ES 2.0 or higher.
+.UNINDENT
+.UNINDENT
+.UNINDENT
+.sp
+Default: auto_detect
+.TP
+.B \fB\-\-vid_width\fP width
+Specifies window width.
+Minimum width: 320
+Default width: 640
+.TP
+.B \fB\-\-vid_height\fP height
+Specifies window height.
+Minimum height: 240
+Default height: 480
+.TP
+.B \fB\-\-vid_x\fP offset
Sets a horizontal offset from the left side of the desktop screen.
-Applicable for windowed mode only.
+Applicable for positionable window only.
+Default: 0
.TP
-.B \fI\-\-vid_window_y offset\fP
+.B \fB\-\-vid_y\fP offset
Sets a vertical offset from the top side of the desktop screen.
-Applicable for windowed mode only.
+Applicable for positionable window only.
+Default: 0
+.TP
+.B \fB\-\-vid_is_positioned\fP value
+Centers a window on the desktop or moves it in the specified position.
+Values: 0 (centered) or 1 (positioned)
+Default: 0
.TP
-.B \fI\-\-snd_rate sampling_rate\fP
+.B \fB\-\-vid_is_vsync\fP value
+Enables or disables vertical synchronization.
+Values: 0 (disable) or 1 (enable)
+Default: 1
+.TP
+.B \fB\-\-vid_is_widescreen\fP value
+Enables or disables widescreen rendering.
+Values: 0 (disable) or 1 (enable)
+Default: 1
+.TP
+.B \fB\-\-vid_is_ui_stretched\fP value
+Stretches the UI or keeps it at 4x3 ratio otherwise.
+Values: 0 (non\-stretched) or 1 (stretched)
+Default: 0
+.TP
+.B \fB\-\-vid_2d_texture_filter\fP filter
+Sets texturing filter for UI.
+Applicable only for 3D\-rendering.
+Values: nearest or linear
+Default: nearest
+.TP
+.B \fB\-\-vid_3d_texture_image_filter\fP filter
+Sets texturing image filter for the scene.
+Applicable only for 3D\-rendering.
+Values: nearest or linear
+Default: nearest
+.TP
+.B \fB\-\-vid_3d_texture_mipmap_filter\fP filter
+Sets texturing mipmap filter for the scene.
+Applicable only for 3D\-rendering.
+Values: nearest or linear
+Default: nearest
+.TP
+.B \fB\-\-vid_3d_texture_anisotropy\fP value
+Sets anisotropy degree for the scene.
+Value 1 or lower disables the filter.
+Applicable only for 3D\-rendering.
+Values: [1..16]
+Default: 1
+.TP
+.B \fB\-\-vid_texture_upscale_filter\fP filter
+Sets texturing upscale filter.
+Applicable only for 3D\-rendering.
+Values: none or xbrz
+Default: none
+\fBWARNING\fP xbrz is a high resource usage filter!
+.TP
+.B \fB\-\-vid_texture_upscale_xbrz_degree\fP degree
+Sets a degree of xBRZ texturing upscale.
+Applicable only for 3D\-rendering.
+Values: [2..6]
+Default: 0
+.TP
+.B \fB\-\-vid_aa_kind\fP value
+Sets an anti\-aliasing mode.
+Applicable only for 3D\-rendering.
+Values: none or msaa
+Default: none
+.TP
+.B \fB\-\-vid_aa_degree\fP value
+Sets a degree of the anti\-aliasing.
+Applicable only for 3D\-rendering.
+Values: [2..32]
+Default: 1
+.TP
+.B \fB\-\-vid_filler_color_index\fP value
+Sets a color for screen bars.
+Values: [0..255]
+Default: 0
+.TP
+.B \fB\-\-vid_external_textures\fP value
+Toggles external textures.
+Values: 0 (disable), 1 (enable).
+Default: 0
+.TP
+.B \fB\-\-snd_is_disabled\fP value
+Enables or disables audio subsystem.
+Values: 0 (disable) or 1 (enable)
+Default: 0
+.TP
+.B \fB\-\-snd_rate\fP sampling_rate
Specifies sampling rate of mixer in hertz.
-Default: 44100 Hz
-Minimum: 11025 Hz
+Default: 44100
+Minimum: 11025
.TP
-.B \fI\-\-snd_mix_size duration\fP
+.B \fB\-\-snd_mix_size\fP duration
Specifies mix data size in milliseconds.
-Default: 40 ms
-Minimum: 20 ms
+Default: 40
+Minimum: 20
+.TP
+.B \fB\-\-snd_driver\fP value
+Specifies the audio driver to use.
+Values: auto\-detect, 2d_sdl (2D SDL), 3d_openal (3D OpenAL)
+Default: auto\-detect
+Auto\-detect order: 3d_openal, 2d_sdl
+.TP
+.B \fB\-\-snd_oal_library\fP value
+Specifies OpenAL driver\(aqs name.
+Default: "" (OpenAL32.dll on Windows and libopenal.so on non\-Windows system).
+.TP
+.B \fB\-\-snd_oal_device_name\fP value
+Specifies OpenAL device name.
+Default: ""
+.TP
+.B \fB\-\-snd_sfx_type\fP value
+Specifies SFX type.
+Values: adlib (AdLib) or pc_speaker (PC Speaker)
+Default: adlib
+.TP
+.B \fB\-\-snd_is_sfx_digitized\fP value
+Toggles SFX digitization.
+If enabled overrides AdLib / PC Speaker SFX audio chunk if such one is available in AUDIOT.* file.
+Values: 0 (disable) or 1 (enable)
+Default: 1
+.TP
+.B \fB\-\-snd_opl3_type\fP value
+Specifies OPL3 emulator type.
+Values: dbopl (DOSBox) or nuked (Nuked)
+Default: dbopl
+.TP
+.B \fB\-\-calculate_hashes\fP
+Calculates hashes (SHA\-1) of all resource files and outputs them into the log.
+.TP
+.B \fB\-\-extract_vga_palette\fP dir
+Extracts VGA palette into existing directory dir.
+Supported file format: \fB\&.bmp\fP
+.TP
+.B \fB\-\-extract_walls\fP dir
+Extracts graphics resources (wall, flooring, etc.) into existing directory dir.
+Supported file format: \fB\&.bmp\fP
+.TP
+.B \fB\-\-extract_sprites\fP dir
+Extracts graphics resources (actors, decorations, etc.) into existing directory dir.
+Supported file format: \fB\&.bmp\fP
+.TP
+.B \fB\-\-extract_music\fP dir
+Extracts music resources into existing directory dir.
+Supported file format: \fB\&.wav\fP
+Supported file format: data (unprocessed)
+.TP
+.B \fB\-\-extract_sfx\fP dir
+Extracts sfx resources into existing directory dir.
+Supported file format: \fB\&.wav\fP
+Supported file format: data (unprocessed)
+.TP
+.B \fB\-\-extract_texts\fP dir
+Extracts text resources into existing directory dir.
+Supported file format: \fB\&.txt\fP
+.TP
+.B \fB\-\-extract_all\fP dir
+Extracts all resources (walls, sprites, etc.) into existing directory dir.
.UNINDENT
.SH COPYRIGHT
.sp
-See the file /usr/doc/bstone\-1.1.7/LICENSE for license information.
+See the file /usr/doc/bstone\-1.1.12/LICENSE for license information.
.SH AUTHORS
.sp
bstone was written by Boris I. Bendovsky, based on an original
diff --git a/games/bstone/bstone.SlackBuild b/games/bstone/bstone.SlackBuild
index 8659bccb19..1c518cdd88 100644
--- a/games/bstone/bstone.SlackBuild
+++ b/games/bstone/bstone.SlackBuild
@@ -1,11 +1,21 @@
-#!/bin/sh
+#!/bin/bash
# Slackware build script for bstone
-# Written by B. Watson (yalhcru@gmail.com)
+# Written by B. Watson (urchlay@slackware.uk)
# Licensed under the WTFPL. See http://www.wtfpl.net/txt/copying/ for details.
+# 20230111 bkw: update for v1.2.12.
+
+# 20211004 bkw:
+# - update for v1.2.11.
+# - include .txt version of license.
+# - datadir.diff changed again.
+# - update .desktop file.
+# - better README doc on how to play the full version.
+
+# 20201219 bkw: update for v1.2.9.
# 20200804 bkw: update for v1.2.8. datadir.diff changed again.
# 20200222 bkw: update for v1.1.16_2.
# 20191127 bkw: update for v1.1.14. datadir.diff had to change so we can't
@@ -14,10 +24,13 @@
# 20170807 bkw: update for v1.1.8, use upstream's icon instead of mine.
# 20170621 bkw: fix build on -current
+cd $(dirname $0) ; CWD=$(pwd)
+
PRGNAM=bstone
-VERSION=${VERSION:-1.2.8}
+VERSION=${VERSION:-1.2.12}
BUILD=${BUILD:-1}
TAG=${TAG:-_SBo}
+PKGTYPE=${PKGTYPE:-tgz}
SRCVER=${VERSION/_/-}
@@ -29,7 +42,11 @@ if [ -z "$ARCH" ]; then
esac
fi
-CWD=$(pwd)
+if [ ! -z "${PRINT_PACKAGE_NAME}" ]; then
+ echo "$PRGNAM-$VERSION-$ARCH-$BUILD$TAG.$PKGTYPE"
+ exit 0
+fi
+
TMP=${TMP:-/tmp/SBo}
PKG=$TMP/package-$PRGNAM
OUTPUT=${OUTPUT:-/tmp}
@@ -54,7 +71,7 @@ rm -rf $PKG
mkdir -p $TMP $PKG $OUTPUT
cd $TMP
rm -rf $PRGNAM-$SRCVER
-tar xvf $CWD/$PRGNAM-$SRCVER.tar.gz || tar xvf $CWD/v$SRCVER.tar.gz
+tar xvf $CWD/$PRGNAM-$SRCVER.tar.gz
cd $PRGNAM-$SRCVER
chown -R root:root .
find -L . -perm /111 -a \! -perm 755 -a -exec chmod 755 {} \+ -o \
@@ -67,7 +84,8 @@ patch -p1 < $CWD/datadir.diff
# make install and install/strip are borked, do manual install.
# always include the shareware data in the package, the game will
-# only use it if the user hasn't installed the full version.
+# automatically use it if the user hasn't installed the full version,
+# or offer a choice of full version or shareware if he has both.
mkdir -p build
cd build
cmake \
@@ -76,11 +94,11 @@ cd build
-DCMAKE_INSTALL_PREFIX=/usr \
-DLIB_SUFFIX=${LIBDIRSUFFIX} \
-DMAN_INSTALL_DIR=/usr/man \
- -DCMAKE_BUILD_TYPE=Release ../src
+ -DCMAKE_BUILD_TYPE=Release ..
make
mkdir -p $PKG/usr/games $PKG/usr/share/games/$PRGNAM
- install -s -m0755 $PRGNAM $PKG/usr/games
+ install -s -m0755 src/$PRGNAM $PKG/usr/games
unzip $CWD/1bs30.zip
unzip BSSW30.SHR \*.BS1
@@ -94,13 +112,21 @@ cat $CWD/$PRGNAM.desktop > $PKG/usr/share/applications/$PRGNAM.desktop
cat $CWD/$PRGNAM.png > $PKG/usr/share/pixmaps/$PRGNAM.png
gzip -9c < $CWD/$PRGNAM.6 > $PKG/usr/man/man6/$PRGNAM.6.gz
-mkdir -p $PKG/usr/doc/$PRGNAM-$VERSION
-cp -a LICENSE README.md *.doc src/bstone_todo.txt $PKG/usr/doc/$PRGNAM-$VERSION
-cat $CWD/$PRGNAM.SlackBuild > $PKG/usr/doc/$PRGNAM-$VERSION/$PRGNAM.SlackBuild
+# the original source code license is supplied only as a MS word .doc
+# file. we ship it as-is, but rename it to something without spaces in
+# the filename. also, ship a pre-converted text version (created with
+# wvText, then hand-edited to fix the formatting).
+PKGDOC=$PKG/usr/doc/$PRGNAM-$VERSION
+LIC=blake_stone_source_code_license
+mkdir -p $PKGDOC
+cp -a LICENSE README.md TODO.md CHANGE* $PKGDOC
+cp -a *.doc $PKGDOC/$LIC.doc
+cat $CWD/$LIC.txt > $PKGDOC/$LIC.txt
+cat $CWD/$PRGNAM.SlackBuild > $PKGDOC/$PRGNAM.SlackBuild
mkdir -p $PKG/install
cat $CWD/slack-desc > $PKG/install/slack-desc
cat $CWD/doinst.sh > $PKG/install/doinst.sh
cd $PKG
-/sbin/makepkg -l y -c n $OUTPUT/$PRGNAM-$VERSION-$ARCH-$BUILD$TAG.${PKGTYPE:-tgz}
+/sbin/makepkg -l y -c n $OUTPUT/$PRGNAM-$VERSION-$ARCH-$BUILD$TAG.$PKGTYPE
diff --git a/games/bstone/bstone.desktop b/games/bstone/bstone.desktop
index 57071359d0..0ef74b419e 100644
--- a/games/bstone/bstone.desktop
+++ b/games/bstone/bstone.desktop
@@ -1,7 +1,8 @@
[Desktop Entry]
Type=Application
Name=Blake Stone
-Icon=bstone
-Exec=bstone
+GenericName=First Person Shooting Game
+Icon=/usr/share/pixmaps/bstone.png
+Exec=/usr/games/bstone
Terminal=false
Categories=Game;ActionGame;
diff --git a/games/bstone/bstone.info b/games/bstone/bstone.info
index 7e1d1b3f57..257a6a6c63 100644
--- a/games/bstone/bstone.info
+++ b/games/bstone/bstone.info
@@ -1,12 +1,12 @@
PRGNAM="bstone"
-VERSION="1.2.8"
-HOMEPAGE="http://bibendovsky.github.io/bstone/"
-DOWNLOAD="https://github.com/bibendovsky/bstone/archive/v1.2.8/bstone-1.2.8.tar.gz \
+VERSION="1.2.12"
+HOMEPAGE="https://bibendovsky.github.io/bstone/"
+DOWNLOAD="https://github.com/bibendovsky/bstone/archive/v1.2.12/bstone-1.2.12.tar.gz \
https://archive.org/download/BlakeStoneAliensOfGold/1bs30.zip"
-MD5SUM="42d35192e5d944bbffe4785c0460a0d3 \
+MD5SUM="5975da0506152a67d955d2d768d241ae \
a63c88fc5b399ffb5ed42dc215321f36"
DOWNLOAD_x86_64=""
MD5SUM_x86_64=""
-REQUIRES="SDL2"
+REQUIRES=""
MAINTAINER="B. Watson"
-EMAIL="yalhcru@gmail.com"
+EMAIL="urchlay@slackware.uk"
diff --git a/games/bstone/bstone.rst b/games/bstone/bstone.rst
index 83ee8fd209..d24683b478 100644
--- a/games/bstone/bstone.rst
+++ b/games/bstone/bstone.rst
@@ -2,13 +2,9 @@
.. rst2man.py bstone.rst > bstone.6
.. rst2man.py comes from the SBo development/docutils package.
-.. |version| replace:: 1.1.7
+.. |version| replace:: 1.1.12
.. |date| date::
-.. converting from pod:
-.. s/B<\([^>]*\)>/**\1**/g
-.. s/I<\([^>]*\)>/*\1*/g
-
======
bstone
======
@@ -64,97 +60,227 @@ see /usr/doc/bstone-|version|/README.md
OPTIONS
=======
-.. notice the **-opt** *param* stuff? rst's option recognition
-.. can't handle non-GNU-style options like -option (it thinks the
-.. option is -o, and the ption is the parameter). So we have to help
-.. it out a little.
+**--version**
+ Outputs the port's version to standard output and into message box.
-*--version*
- Outputs the port's version to standard output and
- into message box.
+**--aog_sw**
+ Switches the port to "Blake Stone: Aliens Of Gold (shareware)" mode.
+ If appropriate data files are not found, the port will fail.
-*--aog_sw*
- Switches the port to Blake Stone: Aliens of Gold (shareware, v3.0) mode.
- If appropriate data files will not be found the port will fail.
- Default switch strategy: AoG (full) -> AoG (SW) -> PS
+**--aog**
+ Switches the port to "Blake Stone: Aliens Of Gold" mode.
+ If appropriate data files are not found, the port will fail.
-*--aog_10*
- Switches the port to Blake Stone: Aliens of Gold (full, v1.0) mode.
- If appropriate data files will not be found the port will fail.
- Default switch strategy: AoG (full) -> AoG (SW) -> PS
+**--ps**
+ Switches the port to "Blake Stone: Planet Strike" mode.
+ If appropriate data files are not found, the port will fail.
-*--aog_2x*
- Switches the port to Blake Stone: Aliens of Gold (full, v2.0/v2.1) mode.
- If appropriate data files will not be found the port will fail.
- Default switch strategy: AoG (full) -> AoG (SW) -> PS
+**--no_screens**
+ Skips start-up screens and the ending promo pages (AOG SW).
-*--aog_30*
- Switches the port to Blake Stone: Aliens of Gold (full, v3.0) mode.
- If appropriate data files will not be found the port will fail.
- Default switch strategy: AoG (full) -> AoG (SW) -> PS
+**--cheats**
+ Enables so called "debug mode" without much fuss.
-*--ps*
- Switches the port to Blake Stone: Planet Strike (full, v1.0/v1.1) mode.
- If appropriate data files will not be found the port will fail.
- Default switch strategy: AoG (full) -> AoG (SW) -> PS
+**--data_dir** dir
+ Specifies a directory with game's resource files.
+ Default: */usr/share/games/bstone*
-*--no_screens*
- Skips start-up screens (AoG/PS) and ending promo pages (AoG SW only).
+**--mod_dir** dir
+ Specifies a directory with mod's resource files.
+ Default: undefined.
-*--cheats*
- Enables so called "debug mode" without much fuss.
+**--profile_dir** dir
+ Overrides default directory of the game's profile files.
+ Default: *~/.local/share/bibendovsky/bstone/*
+
+**--vid_renderer** value
+ Select a renderer.
+ Values:
+
+ - auto_detect - tries to select the best renderer.
+ - software - the vanilla renderer.
+ - gl_2_0 - OpenGL 2.0 or higher.
+ - gl_3_2_c - OpenGL 3.2 core or higher.
+ - gles_2_0 - OpenGL ES 2.0 or higher.
-*--data_dir path_to_data*
- Specifies location to the game's data files.
- Default: /usr/share/games/bstone/
-
-*--profile_dir path*
- Overrides default location of the game's profile files. Config files
- and savegames are written here.
- Default: .local/share/bibendovsky/bstone/
-
-*--vid_renderer [soft|ogl]*
- Forces to use a specified renderer.
- "soft" selects a software renderer.
- "ogl" selects an OpenGL 2.x compatible renderer.
- Default order without this option: ogl, soft.
-
-*--vid_windowed*
- Runs the game in windowed mode.
- Default video mode: 640x480
-
-*--vid_mode width height*
- Selects the specified resolution for windowed mode.
- Without this option the game will use desktop's resolution.
- Minimum width: 640
- Minimum height: 480
-
-*--vid_scale factor*
- Refinement factor. The higher a value the greater internal resolution
- mode will be used to render a scene. The dimensions of the resolution mode
- are proportional to the original one (320x200) by 'factor' value.
- This option can greatly affect the performance of a renderer (especially a
- software one).
- Minimum factor: 1 (identical to the original game)
- Default factor: depends on the game's resolution mode.
-
-*--vid_window_x offset*
+ Default: auto_detect
+
+**--vid_width** width
+ Specifies window width.
+ Minimum width: 320
+ Default width: 640
+
+**--vid_height** height
+ Specifies window height.
+ Minimum height: 240
+ Default height: 480
+
+**--vid_x** offset
Sets a horizontal offset from the left side of the desktop screen.
- Applicable for windowed mode only.
+ Applicable for positionable window only.
+ Default: 0
-*--vid_window_y offset*
+**--vid_y** offset
Sets a vertical offset from the top side of the desktop screen.
- Applicable for windowed mode only.
-
-*--snd_rate sampling_rate*
+ Applicable for positionable window only.
+ Default: 0
+
+**--vid_is_positioned** value
+ Centers a window on the desktop or moves it in the specified position.
+ Values: 0 (centered) or 1 (positioned)
+ Default: 0
+
+**--vid_is_vsync** value
+ Enables or disables vertical synchronization.
+ Values: 0 (disable) or 1 (enable)
+ Default: 1
+
+**--vid_is_widescreen** value
+ Enables or disables widescreen rendering.
+ Values: 0 (disable) or 1 (enable)
+ Default: 1
+
+**--vid_is_ui_stretched** value
+ Stretches the UI or keeps it at 4x3 ratio otherwise.
+ Values: 0 (non-stretched) or 1 (stretched)
+ Default: 0
+
+**--vid_2d_texture_filter** filter
+ Sets texturing filter for UI.
+ Applicable only for 3D-rendering.
+ Values: nearest or linear
+ Default: nearest
+
+**--vid_3d_texture_image_filter** filter
+ Sets texturing image filter for the scene.
+ Applicable only for 3D-rendering.
+ Values: nearest or linear
+ Default: nearest
+
+**--vid_3d_texture_mipmap_filter** filter
+ Sets texturing mipmap filter for the scene.
+ Applicable only for 3D-rendering.
+ Values: nearest or linear
+ Default: nearest
+
+**--vid_3d_texture_anisotropy** value
+ Sets anisotropy degree for the scene.
+ Value 1 or lower disables the filter.
+ Applicable only for 3D-rendering.
+ Values: [1..16]
+ Default: 1
+
+**--vid_texture_upscale_filter** filter
+ Sets texturing upscale filter.
+ Applicable only for 3D-rendering.
+ Values: none or xbrz
+ Default: none
+ **WARNING** xbrz is a high resource usage filter!
+
+**--vid_texture_upscale_xbrz_degree** degree
+ Sets a degree of xBRZ texturing upscale.
+ Applicable only for 3D-rendering.
+ Values: [2..6]
+ Default: 0
+
+**--vid_aa_kind** value
+ Sets an anti-aliasing mode.
+ Applicable only for 3D-rendering.
+ Values: none or msaa
+ Default: none
+
+**--vid_aa_degree** value
+ Sets a degree of the anti-aliasing.
+ Applicable only for 3D-rendering.
+ Values: [2..32]
+ Default: 1
+
+**--vid_filler_color_index** value
+ Sets a color for screen bars.
+ Values: [0..255]
+ Default: 0
+
+**--vid_external_textures** value
+ Toggles external textures.
+ Values: 0 (disable), 1 (enable).
+ Default: 0
+
+**--snd_is_disabled** value
+ Enables or disables audio subsystem.
+ Values: 0 (disable) or 1 (enable)
+ Default: 0
+
+**--snd_rate** sampling_rate
Specifies sampling rate of mixer in hertz.
- Default: 44100 Hz
- Minimum: 11025 Hz
+ Default: 44100
+ Minimum: 11025
-*--snd_mix_size duration*
+**--snd_mix_size** duration
Specifies mix data size in milliseconds.
- Default: 40 ms
- Minimum: 20 ms
+ Default: 40
+ Minimum: 20
+
+**--snd_driver** value
+ Specifies the audio driver to use.
+ Values: auto-detect, 2d_sdl (2D SDL), 3d_openal (3D OpenAL)
+ Default: auto-detect
+ Auto-detect order: 3d_openal, 2d_sdl
+
+**--snd_oal_library** value
+ Specifies OpenAL driver's name.
+ Default: "" (OpenAL32.dll on Windows and libopenal.so on non-Windows system).
+
+**--snd_oal_device_name** value
+ Specifies OpenAL device name.
+ Default: ""
+
+**--snd_sfx_type** value
+ Specifies SFX type.
+ Values: adlib (AdLib) or pc_speaker (PC Speaker)
+ Default: adlib
+
+**--snd_is_sfx_digitized** value
+ Toggles SFX digitization.
+ If enabled overrides AdLib / PC Speaker SFX audio chunk if such one is available in AUDIOT.* file.
+ Values: 0 (disable) or 1 (enable)
+ Default: 1
+
+**--snd_opl3_type** value
+ Specifies OPL3 emulator type.
+ Values: dbopl (DOSBox) or nuked (Nuked)
+ Default: dbopl
+
+**--calculate_hashes**
+ Calculates hashes (SHA-1) of all resource files and outputs them into the log.
+
+**--extract_vga_palette** dir
+ Extracts VGA palette into existing directory dir.
+ Supported file format: **.bmp**
+
+**--extract_walls** dir
+ Extracts graphics resources (wall, flooring, etc.) into existing directory dir.
+ Supported file format: **.bmp**
+
+**--extract_sprites** dir
+ Extracts graphics resources (actors, decorations, etc.) into existing directory dir.
+ Supported file format: **.bmp**
+
+**--extract_music** dir
+ Extracts music resources into existing directory dir.
+ Supported file format: **.wav**
+ Supported file format: data (unprocessed)
+
+**--extract_sfx** dir
+ Extracts sfx resources into existing directory dir.
+ Supported file format: **.wav**
+ Supported file format: data (unprocessed)
+
+**--extract_texts** dir
+ Extracts text resources into existing directory dir.
+ Supported file format: **.txt**
+
+**--extract_all** dir
+ Extracts all resources (walls, sprites, etc.) into existing directory dir.
COPYRIGHT
=========
diff --git a/games/bstone/datadir.diff b/games/bstone/datadir.diff
index 19a7100c32..268c10e3c1 100644
--- a/games/bstone/datadir.diff
+++ b/games/bstone/datadir.diff
@@ -1,7 +1,7 @@
-diff -Naur bstone-1.2.8/src/3d_main.cpp bstone-1.2.8.patched/src/3d_main.cpp
---- bstone-1.2.8/src/3d_main.cpp 2020-07-10 09:58:35.000000000 -0400
-+++ bstone-1.2.8.patched/src/3d_main.cpp 2020-08-04 03:07:36.266707676 -0400
-@@ -10722,20 +10722,7 @@
+diff -Naur bstone-1.2.11/src/3d_main.cpp bstone-1.2.11.patched/src/3d_main.cpp
+--- bstone-1.2.11/src/3d_main.cpp 2021-03-21 15:24:36.000000000 -0400
++++ bstone-1.2.11.patched/src/3d_main.cpp 2021-10-04 19:12:08.818938051 -0400
+@@ -10711,20 +10711,7 @@
const std::string& get_default_data_dir()
{
@@ -23,3 +23,14 @@ diff -Naur bstone-1.2.8/src/3d_main.cpp bstone-1.2.8.patched/src/3d_main.cpp
return result;
}
+diff -Naur bstone-1.2.11/src/jm_free.cpp bstone-1.2.11.patched/src/jm_free.cpp
+--- bstone-1.2.11/src/jm_free.cpp 2021-03-21 15:24:36.000000000 -0400
++++ bstone-1.2.11.patched/src/jm_free.cpp 2021-10-04 19:12:39.570935256 -0400
+@@ -718,6 +718,7 @@
+ bstone::file_system::get_working_dir());
+
+ add_search_path("working dir", working_full_dir, search_paths);
++ add_search_path("system dir", "/usr/share/games/bstone", search_paths);
+ }
+
+ {
diff --git a/games/bstone/slack-desc b/games/bstone/slack-desc
index 8bf8b43f38..89634612e8 100644
--- a/games/bstone/slack-desc
+++ b/games/bstone/slack-desc
@@ -9,8 +9,8 @@
bstone: bstone (first-person shooter game)
bstone:
bstone: A source port of Blake Stone: Aliens of Gold and Blake Stone:
-bstone: Planet Strike.
-bstone:
+bstone: Planet Strike. This package includes the game data for Aliens of Gold
+bstone: v3.0 Shareware.
bstone:
bstone:
bstone:
diff --git a/games/burgerspace/README b/games/burgerspace/README
index 966595e8ef..22b349f4da 100644
--- a/games/burgerspace/README
+++ b/games/burgerspace/README
@@ -2,3 +2,6 @@ burgerspace (2D platform game)
BurgerSpace, a hamburger-smashing video game. It is a clone of the 1982
BurgerTime video game by Data East.
+
+Note: on some video cards, with some drivers, pressing F11 for
+fullscreen causes the X server to crash.
diff --git a/games/burgerspace/burgerspace.SlackBuild b/games/burgerspace/burgerspace.SlackBuild
index e021762565..0531ccde0c 100644
--- a/games/burgerspace/burgerspace.SlackBuild
+++ b/games/burgerspace/burgerspace.SlackBuild
@@ -1,15 +1,20 @@
-#!/bin/sh
+#!/bin/bash
# Slackware build script for burgerspace
-# Written by B. Watson (yalhcru@gmail.com)
+# Written by B. Watson (urchlay@slackware.uk)
# Licensed under the WTFPL. See http://www.wtfpl.net/txt/copying/ for details.
+# 20230819 bkw: update for v1.9.5, new-style icon dir.
+
+cd $(dirname $0) ; CWD=$(pwd)
+
PRGNAM=burgerspace
-VERSION=${VERSION:-1.9.2}
+VERSION=${VERSION:-1.9.5}
BUILD=${BUILD:-1}
TAG=${TAG:-_SBo}
+PKGTYPE=${PKGTYPE:-tgz}
if [ -z "$ARCH" ]; then
case "$( uname -m )" in
@@ -19,7 +24,11 @@ if [ -z "$ARCH" ]; then
esac
fi
-CWD=$(pwd)
+if [ ! -z "${PRINT_PACKAGE_NAME}" ]; then
+ echo "$PRGNAM-$VERSION-$ARCH-$BUILD$TAG.$PKGTYPE"
+ exit 0
+fi
+
TMP=${TMP:-/tmp/SBo}
PKG=$TMP/package-$PRGNAM
OUTPUT=${OUTPUT:-/tmp}
@@ -47,11 +56,8 @@ rm -rf $PRGNAM-$VERSION
tar xvf $CWD/$PRGNAM-$VERSION.tar.gz
cd $PRGNAM-$VERSION
chown -R root:root .
-find -L . \
- \( -perm 777 -o -perm 775 -o -perm 750 -o -perm 711 -o -perm 555 \
- -o -perm 511 \) -exec chmod 755 {} \; -o \
- \( -perm 666 -o -perm 664 -o -perm 640 -o -perm 600 -o -perm 444 \
- -o -perm 440 -o -perm 400 \) -exec chmod 644 {} \;
+find -L . -perm /111 -a \! -perm 755 -a -exec chmod 755 {} \+ -o \
+ \! -perm /111 -a \! -perm 644 -a -exec chmod 644 {} \+
CFLAGS="$SLKCFLAGS" \
CXXFLAGS="$SLKCFLAGS" \
@@ -76,6 +82,11 @@ gzip $PKG/usr/man/man?/*.?
# 'make install-strip' created the doc dir already
cat $CWD/$PRGNAM.SlackBuild > $PKG/usr/doc/$PRGNAM-$VERSION/$PRGNAM.SlackBuild
+# 20230819 bkw: new-style icon dir.
+mkdir -p $PKG/usr/share/icons/hicolor/32x32/apps
+mv $PKG/usr/share/pixmaps/* $PKG/usr/share/icons/hicolor/32x32/apps
+ln -s ../icons/hicolor/32x32/apps/$PRGNAM.png $PKG/usr/share/pixmaps/$PRGNAM.png
+
# get rid of autoconf-mandated 0-byte THANKS and TODO placeholders.
find $PKG/usr/doc/$PRGNAM-$VERSION -type f -a -empty | xargs rm -f
@@ -84,4 +95,4 @@ cat $CWD/slack-desc > $PKG/install/slack-desc
cat $CWD/doinst.sh > $PKG/install/doinst.sh
cd $PKG
-/sbin/makepkg -l y -c n $OUTPUT/$PRGNAM-$VERSION-$ARCH-$BUILD$TAG.${PKGTYPE:-tgz}
+/sbin/makepkg -l y -c n $OUTPUT/$PRGNAM-$VERSION-$ARCH-$BUILD$TAG.$PKGTYPE
diff --git a/games/burgerspace/burgerspace.info b/games/burgerspace/burgerspace.info
index 7a721b8787..a731394bba 100644
--- a/games/burgerspace/burgerspace.info
+++ b/games/burgerspace/burgerspace.info
@@ -1,10 +1,10 @@
PRGNAM="burgerspace"
-VERSION="1.9.2"
+VERSION="1.9.5"
HOMEPAGE="http://perso.b2b2c.ca/~sarrazip/dev/burgerspace.html"
-DOWNLOAD="https://slackware.uk/~urchlay/src/burgerspace-1.9.2.tar.gz"
-MD5SUM="8675449bb1c3c014bc51837b60f6cc47"
+DOWNLOAD="http://perso.b2b2c.ca/~sarrazip/dev/burgerspace-1.9.5.tar.gz"
+MD5SUM="15e419b7824a3430f9036567fca2e62e"
DOWNLOAD_x86_64=""
MD5SUM_x86_64=""
REQUIRES="flatzebra"
MAINTAINER="B. Watson"
-EMAIL="yalhcru@gmail.com"
+EMAIL="urchlay@slackware.uk"
diff --git a/games/burgerspace/doinst.sh b/games/burgerspace/doinst.sh
index 5fb28930db..65c7e2eeb9 100644
--- a/games/burgerspace/doinst.sh
+++ b/games/burgerspace/doinst.sh
@@ -1,3 +1,9 @@
if [ -x /usr/bin/update-desktop-database ]; then
/usr/bin/update-desktop-database -q usr/share/applications >/dev/null 2>&1
fi
+
+if [ -e usr/share/icons/hicolor/icon-theme.cache ]; then
+ if [ -x /usr/bin/gtk-update-icon-cache ]; then
+ /usr/bin/gtk-update-icon-cache -f usr/share/icons/hicolor >/dev/null 2>&1
+ fi
+fi
diff --git a/games/bzflag/bzflag.SlackBuild b/games/bzflag/bzflag.SlackBuild
index bf3b8b065a..069dd3ea7d 100644
--- a/games/bzflag/bzflag.SlackBuild
+++ b/games/bzflag/bzflag.SlackBuild
@@ -1,8 +1,9 @@
-#!/bin/sh
+#!/bin/bash
# Slackware build script for bzflag
-# Copyright 2006 Martin Lefebvre <dadexter@gmail.com>
+# Copyright 2006 Martin Lefebvre <dadexter@gmail.com>
+# Copyright 2023 Tim Danforth, USA
# All rights reserved.
#
# Redistribution and use of this script, with or without modification, is
@@ -24,26 +25,36 @@
# Modified by the SlackBuilds.org project
+cd $(dirname $0) ; CWD=$(pwd)
+
PRGNAM=bzflag
-VERSION=${VERSION:-2.4.4}
+VERSION=${VERSION:-2.4.26}
BUILD=${BUILD:-1}
TAG=${TAG:-_SBo}
+PKGTYPE=${PKGTYPE:-tgz}
if [ -z "$ARCH" ]; then
case "$( uname -m )" in
- i?86) ARCH=i486 ;;
+ i?86) ARCH=i586 ;;
arm*) ARCH=arm ;;
*) ARCH=$( uname -m ) ;;
esac
fi
-CWD=$(pwd)
+# If the variable PRINT_PACKAGE_NAME is set, then this script will report what
+# the name of the created package would be, and then exit. This information
+# could be useful to other scripts.
+if [ ! -z "${PRINT_PACKAGE_NAME}" ]; then
+ echo "$PRGNAM-$VERSION-$ARCH-$BUILD$TAG.$PKGTYPE"
+ exit 0
+fi
+
TMP=${TMP:-/tmp/SBo}
PKG=$TMP/package-$PRGNAM
OUTPUT=${OUTPUT:-/tmp}
-if [ "$ARCH" = "i486" ]; then
- SLKCFLAGS="-O2 -march=i486 -mtune=i686"
+if [ "$ARCH" = "i586" ]; then
+ SLKCFLAGS="-O2 -march=i586 -mtune=i686"
LIBDIRSUFFIX=""
elif [ "$ARCH" = "i686" ]; then
SLKCFLAGS="-O2 -march=i686 -mtune=i686"
@@ -90,11 +101,13 @@ find $PKG/usr/man -type f -exec gzip -9 {} \;
for i in $( find $PKG/usr/man -type l ) ; do ln -s $( readlink $i ).gz $i.gz ; rm $i ; done
mkdir -p $PKG/usr/doc/$PRGNAM-$VERSION
-cp -a AUTHORS COPYING ChangeLog DEVINFO INSTALL NEWS PORTING README* $PKG/usr/doc/$PRGNAM-$VERSION
+cp -a AUTHORS COPYING ChangeLog DEVINFO NEWS PORTING README* $PKG/usr/doc/$PRGNAM-$VERSION
cat $CWD/$PRGNAM.SlackBuild > $PKG/usr/doc/$PRGNAM-$VERSION/$PRGNAM.SlackBuild
+rm -f $PKG/usr/lib*/*.la
+
mkdir -p $PKG/install
cat $CWD/slack-desc > $PKG/install/slack-desc
cd $PKG
-/sbin/makepkg -l y -c n $OUTPUT/$PRGNAM-$VERSION-$ARCH-$BUILD$TAG.${PKGTYPE:-tgz}
+/sbin/makepkg -l y -c n $OUTPUT/$PRGNAM-$VERSION-$ARCH-$BUILD$TAG.$PKGTYPE
diff --git a/games/bzflag/bzflag.info b/games/bzflag/bzflag.info
index 242617a43a..ff06af0def 100644
--- a/games/bzflag/bzflag.info
+++ b/games/bzflag/bzflag.info
@@ -1,10 +1,10 @@
PRGNAM="bzflag"
-VERSION="2.4.4"
+VERSION="2.4.26"
HOMEPAGE="https://www.bzflag.org"
-DOWNLOAD="https://download.bzflag.org/bzflag/source/2.4.4/bzflag-2.4.4.tar.bz2"
-MD5SUM="fcceb66454e93c6181662fffb2a71022"
+DOWNLOAD="https://download.bzflag.org/bzflag/source/2.4.26/bzflag-2.4.26.tar.bz2"
+MD5SUM="1d992d50d5c8ec3d132fed6c322f810d"
DOWNLOAD_x86_64=""
MD5SUM_x86_64=""
-REQUIRES="c-ares"
-MAINTAINER="Martin Lefebvre"
-EMAIL="dadexter@gmail.com"
+REQUIRES=""
+MAINTAINER="Tim Danforth"
+EMAIL="timdanforth@protonmail.com"
diff --git a/games/bzflag/slack-desc b/games/bzflag/slack-desc
index 0f9c16b7fc..4a83a8cf6b 100644
--- a/games/bzflag/slack-desc
+++ b/games/bzflag/slack-desc
@@ -13,7 +13,7 @@ bzflag: namestands for Battle Zone capture Flag. It runs on Irix, Linux,
bzflag: *BSD, Windows, Mac OS X and other platforms. It's one of the most
bzflag: popular games ever on Silicon Graphics machines.
bzflag:
-bzflag: Homepage: http://www.bzflag.org
+bzflag: Homepage: https://www.bzflag.org
bzflag:
bzflag:
bzflag:
diff --git a/games/cannonball-libretro/README b/games/cannonball-libretro/README
deleted file mode 100644
index d86ce0dbde..0000000000
--- a/games/cannonball-libretro/README
+++ /dev/null
@@ -1,19 +0,0 @@
-Cannonball is a program which allows you to play an enhanced version of
-Yu Suzuki's seminal arcade racer, OutRun that can be used as a libretro
-core.
-
-Cannonball is not an emulator, it is a complete rewrite of the original
-game into portable C++.
-
-cannbonball-libretro requires OutRun Revision B ROMs and a dummy game
-file with the '.game' prefix which should be placed in the same
-directory.
-
-For example:
-
- touch cannonball.game
-
-The game can then be loaded with the dummy file.
-
-To build the debugging symbols use:
- DEBUG=1 ./cannonball-libretro.SlackBuild
diff --git a/games/cannonball-libretro/cannonball-libretro.SlackBuild b/games/cannonball-libretro/cannonball-libretro.SlackBuild
deleted file mode 100644
index 9798a5bff4..0000000000
--- a/games/cannonball-libretro/cannonball-libretro.SlackBuild
+++ /dev/null
@@ -1,82 +0,0 @@
-#!/bin/sh
-
-# Slackware build script for cannonball-libretro
-
-# Copyright 2018 Hunter Sezen California, USA
-# All rights reserved.
-#
-# Redistribution and use of this script, with or without modification, is
-# permitted provided that the following conditions are met:
-#
-# 1. Redistributions of this script must retain the above copyright
-# notice, this list of conditions and the following disclaimer.
-#
-# THIS SOFTWARE IS PROVIDED BY THE AUTHOR "AS IS" AND ANY EXPRESS OR IMPLIED
-# WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE IMPLIED WARRANTIES OF
-# MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE ARE DISCLAIMED. IN NO
-# EVENT SHALL THE AUTHOR BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL,
-# SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT LIMITED TO,
-# PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, DATA, OR PROFITS;
-# OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY,
-# WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR
-# OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF THIS SOFTWARE, EVEN IF
-# ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
-
-PRGNAM=cannonball-libretro
-LIBNAM=$(printf %s $PRGNAM | tr - _)
-VERSION=${VERSION:-2018.11.02_57a2982}
-BUILD=${BUILD:-1}
-TAG=${TAG:-_SBo}
-
-if [ -z "$ARCH" ]; then
- case "$( uname -m )" in
- i?86) ARCH=i586 ;;
- arm*) ARCH=arm ;;
- *) ARCH=$( uname -m ) ;;
- esac
-fi
-
-CWD=$(pwd)
-TMP=${TMP:-/tmp/SBo}
-PKG=$TMP/package-$PRGNAM
-OUTPUT=${OUTPUT:-/tmp}
-
-LIBDIRSUFFIX=
-[ "$ARCH" = x86_64 ] && LIBDIRSUFFIX=64
-
-set -eu
-
-rm -rf $PKG
-mkdir -p $TMP $PKG $OUTPUT
-cd $TMP
-rm -rf $PRGNAM-$VERSION
-tar xvf $CWD/$PRGNAM-$VERSION.tar.xz
-cd $PRGNAM-$VERSION
-chown -R root:root .
-find -L . \
- \( -perm 777 -o -perm 775 -o -perm 750 -o -perm 711 -o -perm 555 \
- -o -perm 511 \) -exec chmod 755 {} \; -o \
- \( -perm 666 -o -perm 664 -o -perm 640 -o -perm 600 -o -perm 444 \
- -o -perm 440 -o -perm 400 \) -exec chmod 644 {} \;
-
-[ "${DEBUG:=0}" != 0 ] && DEBUG=1
-
-make DEBUG=$DEBUG GIT_VERSION="${VERSION#*_}"
-
-install -Dm0644 $LIBNAM.so $PKG/usr/lib${LIBDIRSUFFIX}/libretro/$LIBNAM.so
-install -Dm0644 $LIBNAM.info $PKG/usr/lib${LIBDIRSUFFIX}/libretro/info/$LIBNAM.info
-
-if [ $DEBUG = 0 ]; then
- find $PKG -print0 | xargs -0 file | grep -e "executable" -e "shared object" | grep ELF \
- | cut -f 1 -d : | xargs strip --strip-unneeded 2> /dev/null || true
-fi
-
-mkdir -p $PKG/usr/doc/$PRGNAM-$VERSION
-cp -a README.md docs/license.txt roms/roms.txt $PKG/usr/doc/$PRGNAM-$VERSION
-cat $CWD/$PRGNAM.SlackBuild > $PKG/usr/doc/$PRGNAM-$VERSION/$PRGNAM.SlackBuild
-
-mkdir -p $PKG/install
-cat $CWD/slack-desc > $PKG/install/slack-desc
-
-cd $PKG
-/sbin/makepkg -l y -c n $OUTPUT/$PRGNAM-$VERSION-$ARCH-$BUILD$TAG.${PKGTYPE:-tgz}
diff --git a/games/cannonball-libretro/cannonball-libretro.info b/games/cannonball-libretro/cannonball-libretro.info
deleted file mode 100644
index 983823f1a7..0000000000
--- a/games/cannonball-libretro/cannonball-libretro.info
+++ /dev/null
@@ -1,10 +0,0 @@
-PRGNAM="cannonball-libretro"
-VERSION="2018.11.02_57a2982"
-HOMEPAGE="https://www.libretro.com/"
-DOWNLOAD="http://slackless.raccoons.tech/src/libretro/cannonball-libretro-2018.11.02_57a2982.tar.xz"
-MD5SUM="75e26712b783541015325853b4386df9"
-DOWNLOAD_x86_64=""
-MD5SUM_x86_64=""
-REQUIRES="RetroArch"
-MAINTAINER="orphaned - no maintainer"
-EMAIL="nobody@nowhere.com"
diff --git a/games/cannonball-libretro/slack-desc b/games/cannonball-libretro/slack-desc
deleted file mode 100644
index f1628df65f..0000000000
--- a/games/cannonball-libretro/slack-desc
+++ /dev/null
@@ -1,19 +0,0 @@
-# HOW TO EDIT THIS FILE:
-# The "handy ruler" below makes it easier to edit a package description.
-# Line up the first '|' above the ':' following the base package name, and
-# the '|' on the right side marks the last column you can put a character in.
-# You must make exactly 11 lines for the formatting to be correct. It's also
-# customary to leave one space after the ':' except on otherwise blank lines.
-
- |-----handy-ruler------------------------------------------------------|
-cannonball-libretro: cannonball-libretro (Enhanced OutRun Engine)
-cannonball-libretro:
-cannonball-libretro: Cannonball is a program which allows you to play an enhanced version
-cannonball-libretro: of Yu Suzuki's seminal arcade racer, OutRun.
-cannonball-libretro:
-cannonball-libretro: Homepage: https://www.libretro.com/
-cannonball-libretro:
-cannonball-libretro:
-cannonball-libretro:
-cannonball-libretro:
-cannonball-libretro:
diff --git a/games/caph/caph.SlackBuild b/games/caph/caph.SlackBuild
index 1dd9200e67..6ee7d2ecf2 100644
--- a/games/caph/caph.SlackBuild
+++ b/games/caph/caph.SlackBuild
@@ -1,4 +1,4 @@
-#!/bin/sh
+#!/bin/bash
# Slackware build script for caph
@@ -22,10 +22,13 @@
# OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF THIS SOFTWARE, EVEN IF
# ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
+cd $(dirname $0) ; CWD=$(pwd)
+
PRGNAM=caph
VERSION=${VERSION:-1.1}
BUILD=${BUILD:-1}
TAG=${TAG:-_SBo}
+PKGTYPE=${PKGTYPE:-tgz}
if [ -z "$ARCH" ]; then
case "$( uname -m )" in
@@ -35,7 +38,14 @@ if [ -z "$ARCH" ]; then
esac
fi
-CWD=$(pwd)
+# If the variable PRINT_PACKAGE_NAME is set, then this script will report what
+# the name of the created package would be, and then exit. This information
+# could be useful to other scripts.
+if [ ! -z "${PRINT_PACKAGE_NAME}" ]; then
+ echo "$PRGNAM-$VERSION-$ARCH-$BUILD$TAG.$PKGTYPE"
+ exit 0
+fi
+
TMP=${TMP:-/tmp/SBo}
PKG=$TMP/package-$PRGNAM
OUTPUT=${OUTPUT:-/tmp}
@@ -103,4 +113,4 @@ cat $CWD/slack-desc > $PKG/install/slack-desc
cat $CWD/doinst.sh > $PKG/install/doinst.sh
cd $PKG
-/sbin/makepkg -l y -c n $OUTPUT/$PRGNAM-$VERSION-$ARCH-$BUILD$TAG.${PKGTYPE:-tgz}
+/sbin/makepkg -l y -c n $OUTPUT/$PRGNAM-$VERSION-$ARCH-$BUILD$TAG.$PKGTYPE
diff --git a/games/cataclysmdda/README b/games/cataclysmdda/README
new file mode 100644
index 0000000000..3a592bd287
--- /dev/null
+++ b/games/cataclysmdda/README
@@ -0,0 +1,13 @@
+Cataclysm:DDA is a turn-based survival-themed roguelike game set in a
+post-apocalyptic world. You awaken with hazy memories of violence and
+terror from when the world suddenly unravelled around you. Now you
+need to explore your surroundings, and secure food, water and safety.
+
+This SlackBuild downloads the latest official Linux curses build,
+which is only available for the x86-64 architecture.
+
+This script modifies the launcher to store game data in `$HOME/.cdda`
+and also includes some fixes without which the game would not launch:
+ - symlink `/usr/lib64/libtinfo.so.5` => `/usr/lib64/libtinfo.so.6`
+ - override of env. variable TERM to work with graphical terminal
+ emulators
diff --git a/games/cataclysmdda/cataclysmdda.SlackBuild b/games/cataclysmdda/cataclysmdda.SlackBuild
new file mode 100644
index 0000000000..bb2e7795c3
--- /dev/null
+++ b/games/cataclysmdda/cataclysmdda.SlackBuild
@@ -0,0 +1,97 @@
+#!/bin/bash
+
+# Slackware build script for Cataclysm: DDA
+# (based on the binary releases)
+
+# Copyright 2023 Mavridis Philippe <mavridisf@gmail.com>
+# All rights reserved.
+#
+# Redistribution and use of this script, with or without modification, is
+# permitted provided that the following conditions are met:
+#
+# 1. Redistributions of this script must retain the above copyright
+# notice, this list of conditions and the following disclaimer.
+#
+# THIS SOFTWARE IS PROVIDED BY THE AUTHOR "AS IS" AND ANY EXPRESS OR IMPLIED
+# WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE IMPLIED WARRANTIES OF
+# MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE ARE DISCLAIMED. IN NO
+# EVENT SHALL THE AUTHOR BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL,
+# SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT LIMITED TO,
+# PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, DATA, OR PROFITS;
+# OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY,
+# WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR
+# OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF THIS SOFTWARE, EVEN IF
+# ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
+
+cd $(dirname $0); CWD=$(pwd)
+
+PRGNAM=cataclysmdda
+VERSION=${VERSION:-0.G}
+PKG_BUILD=${PKG_BUILD:-2023-03-01-0054}
+BUILD=${BUILD:-1}
+TAG=${TAG:-_SBo}
+PKGTYPE=${PKGTYPE:-tgz}
+
+ARCH=${ARCH:-$(uname -m)}
+if [ "$ARCH" != "x86_64" ]
+then
+ echo "Binary releases are only available for x86-64 platform." >2
+ exit 1
+fi
+
+if [ ! -z "${PRINT_PACKAGE_NAME}" ]; then
+ echo "$PRGNAM-$VERSION-$ARCH-$BUILD$TAG.$PKGTYPE"
+ exit 0
+fi
+
+TMP=${TMP:-/tmp/SBo}
+PKG=$TMP/package-$PRGNAM
+OUTPUT=${OUTPUT:-/tmp}
+
+set -e
+
+rm -rf $PKG
+mkdir -p $TMP $PKG $OUTPUT
+cd $TMP
+
+# BUG: for some reason the extracted directory is named after older version 0.F
+# and not current version 0.G
+rm -rf $PRGNAM-0.F
+tar xvf $CWD/cdda-linux-curses-x64-$PKG_BUILD.tar.gz
+cd $PRGNAM-0.F
+chown -R root:root .
+
+strip --strip-unneeded json_formatter.cgi 2>/dev/null || true
+
+mkdir -p $PKG/opt/$PRGNAM
+cp -ra * $PKG/opt/$PRGNAM
+
+# Modify launcher to store data in home directory
+sed -i 's:exec ./$BIN:exec ./$BIN --userdir "$HOME/.catadda":' \
+ $PKG/opt/$PRGNAM/cataclysm-launcher
+
+# BUG: override TERM variable
+sed -i '2i export TERM="xterm"' \
+ $PKG/opt/$PRGNAM/cataclysm-launcher
+
+# Create convenient launcher symlink in /usr/bin
+mkdir -p $PKG/usr/bin
+cd $PKG/usr/bin
+ln -s ../../opt/$PRGNAM/cataclysm-launcher cataclysm
+
+# Move documentation into /usr/doc
+mkdir -p $PKG/usr/doc/$PRGNAM-$VERSION
+cd $PKG/usr/doc/$PRGNAM-$VERSION
+mv $PKG/opt/$PRGNAM/doc/* .
+rmdir $PKG/opt/$PRGNAM/doc
+rm JSON_LOADING_ORDER.md
+ln -s ../../../opt/$PRGNAM/data/json/LOADING_ORDER.md JSON_LOADING_ORDER.md
+cat $CWD/README > $PKG/usr/doc/$PRGNAM-$VERSION/README
+cat $CWD/$PRGNAM.SlackBuild > $PKG/usr/doc/$PRGNAM-$VERSION/$PRGNAM.SlackBuild
+
+mkdir -p $PKG/install
+cat $CWD/slack-desc > $PKG/install/slack-desc
+cat $CWD/doinst.sh > $PKG/install/doinst.sh
+
+cd $PKG
+/sbin/makepkg -l y -c n $OUTPUT/$PRGNAM-$VERSION-$ARCH-$BUILD$TAG.$PKGTYPE
diff --git a/games/cataclysmdda/cataclysmdda.info b/games/cataclysmdda/cataclysmdda.info
new file mode 100644
index 0000000000..310c1cd0af
--- /dev/null
+++ b/games/cataclysmdda/cataclysmdda.info
@@ -0,0 +1,10 @@
+PRGNAM="cataclysmdda"
+VERSION="0.G"
+HOMEPAGE="https://www.cataclysmdda.org"
+DOWNLOAD="UNSUPPORTED"
+MD5SUM=""
+DOWNLOAD_x86_64="https://github.com/CleverRaven/Cataclysm-DDA/releases/download/0.G/cdda-linux-curses-x64-2023-03-01-0054.tar.gz"
+MD5SUM_x86_64="3f57494be13e04d0be3a4e66a466d9c0"
+REQUIRES=""
+MAINTAINER="Mavridis Philippe"
+EMAIL="mavridisf@gmail.com"
diff --git a/games/cataclysmdda/doinst.sh b/games/cataclysmdda/doinst.sh
new file mode 100644
index 0000000000..0a594b5e6b
--- /dev/null
+++ b/games/cataclysmdda/doinst.sh
@@ -0,0 +1,11 @@
+# HACK: The binary build depends on this symlink present
+if [ ! -e /usr/lib64/libtinfo.so.5 ]
+then
+ if [ ! -e /usr/lib64/libtinfo.so ]
+ then
+ echo "libtinfo.so cannot be found. Expect problems"
+ fi
+ echo "Creating symlink /usr/lib64/libtinfo.so.5 => /usr/lib64/libtinfo.so"
+ ln -s /usr/lib64/libtinfo.so /usr/lib64/libtinfo.so.5
+fi
+
diff --git a/games/cataclysmdda/slack-desc b/games/cataclysmdda/slack-desc
new file mode 100644
index 0000000000..69508de2fb
--- /dev/null
+++ b/games/cataclysmdda/slack-desc
@@ -0,0 +1,19 @@
+# HOW TO EDIT THIS FILE:
+# The "handy ruler" below makes it easier to edit a package description. Line
+# up the first '|' above the ':' following the base package name, and the '|' on
+# the right side marks the last column you can put a character in. You must make
+# exactly 11 lines for the formatting to be correct. It's also customary to
+# leave one space after the ':'.
+
+ |-----handy-ruler------------------------------------------------------|
+cataclysmdda: cataclysmdda (Cataclysm: Dark Days Ahead)
+cataclysmdda:
+cataclysmdda: Cataclysm:DDA is a turn-based survival-themed roguelike game set in a
+cataclysmdda: post-apocalyptic world. You awaken with hazy memories of violence and
+cataclysmdda: terror from when the world suddenly unravelled around you. Now you
+cataclysmdda: need to explore your surroundings, and secure food, water and safety.
+cataclysmdda:
+cataclysmdda: This SlackBuild downloads the latest official Linux curses build.
+cataclysmdda:
+cataclysmdda: Homepage: https://cataclysmdda.org/
+cataclysmdda:
diff --git a/games/cbonsai/README b/games/cbonsai/README
new file mode 100644
index 0000000000..248aebfe63
--- /dev/null
+++ b/games/cbonsai/README
@@ -0,0 +1,5 @@
+cbonsai is a bonsai tree generator, written in C using ncurses. It
+intelligently creates, colors, and positions a bonsai tree, and is
+entirely configurable via CLI options-- see usage. There are 2 modes
+of operation: static (see finished bonsai tree), and live (see growth
+step-by-step).
diff --git a/games/cbonsai/cbonsai.SlackBuild b/games/cbonsai/cbonsai.SlackBuild
new file mode 100644
index 0000000000..5b104da12d
--- /dev/null
+++ b/games/cbonsai/cbonsai.SlackBuild
@@ -0,0 +1,100 @@
+#!/bin/bash
+
+# Slackware build script for cbonsai
+
+# Copyright 2022 Dustin Metcalf - USA
+# All rights reserved.
+#
+# Redistribution and use of this script, with or without modification, is
+# permitted provided that the following conditions are met:
+#
+# 1. Redistributions of this script must retain the above copyright
+# notice, this list of conditions and the following disclaimer.
+#
+# THIS SOFTWARE IS PROVIDED BY THE AUTHOR "AS IS" AND ANY EXPRESS OR IMPLIED
+# WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE IMPLIED WARRANTIES OF
+# MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE ARE DISCLAIMED. IN NO
+# EVENT SHALL THE AUTHOR BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL,
+# SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT LIMITED TO,
+# PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, DATA, OR PROFITS;
+# OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY,
+# WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR
+# OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF THIS SOFTWARE, EVEN IF
+# ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
+
+cd $(dirname $0) ; CWD=$(pwd)
+
+PRGNAM=cbonsai
+VERSION=${VERSION:-1.3.1}
+BUILD=${BUILD:-1}
+TAG=${TAG:-_SBo}
+PKGTYPE=${PKGTYPE:-tgz}
+
+if [ -z "$ARCH" ]; then
+ case "$( uname -m )" in
+ i?86) ARCH=i586 ;;
+ arm*) ARCH=arm ;;
+ *) ARCH=$( uname -m ) ;;
+ esac
+fi
+
+if [ ! -z "${PRINT_PACKAGE_NAME}" ]; then
+ echo "$PRGNAM-$VERSION-$ARCH-$BUILD$TAG.$PKGTYPE"
+ exit 0
+fi
+
+TMP=${TMP:-/tmp/SBo}
+PKG=$TMP/package-$PRGNAM
+OUTPUT=${OUTPUT:-/tmp}
+
+if [ "$ARCH" = "i586" ]; then
+ SLKCFLAGS="-O2 -march=i586 -mtune=i686"
+ LIBDIRSUFFIX=""
+elif [ "$ARCH" = "i686" ]; then
+ SLKCFLAGS="-O2 -march=i686 -mtune=i686"
+ LIBDIRSUFFIX=""
+elif [ "$ARCH" = "x86_64" ]; then
+ SLKCFLAGS="-O2 -fPIC"
+ LIBDIRSUFFIX="64"
+else
+ SLKCFLAGS="-O2"
+ LIBDIRSUFFIX=""
+fi
+
+set -e
+
+rm -rf $PKG
+mkdir -p $TMP $PKG $OUTPUT
+cd $TMP
+rm -rf $PRGNAM-v$VERSION
+tar xvf $CWD/$PRGNAM-v$VERSION.tar.gz
+cd $PRGNAM-v$VERSION
+chown -R root:root .
+find -L . \
+ \( -perm 777 -o -perm 775 -o -perm 750 -o -perm 711 -o -perm 555 \
+ -o -perm 511 \) -exec chmod 755 {} \; -o \
+ \( -perm 666 -o -perm 664 -o -perm 640 -o -perm 600 -o -perm 444 \
+ -o -perm 440 -o -perm 400 \) -exec chmod 644 {} \;
+
+sed -i "s|share/man|man|g" Makefile
+
+make
+make install PREFIX=/usr DESTDIR=$PKG
+
+find $PKG/usr/man -type f -exec gzip -9 {} \;
+for i in $( find $PKG/usr/man -type l ) ; do ln -s $( readlink $i ).gz $i.gz ; rm $i ; done
+
+find $PKG -print0 | xargs -0 file | grep -e "executable" -e "shared object" | grep ELF \
+ | cut -f 1 -d : | xargs strip --strip-unneeded 2> /dev/null || true
+
+mkdir -p $PKG/usr/doc/$PRGNAM-$VERSION
+cat $CWD/$PRGNAM.SlackBuild > $PKG/usr/doc/$PRGNAM-$VERSION/$PRGNAM.SlackBuild
+
+mkdir -p $PKG/install
+cat $CWD/slack-desc > $PKG/install/slack-desc
+
+echo $PKG
+find $PKG/ -type f -name '*.png' -exec chmod 644 {} +
+
+cd $PKG
+/sbin/makepkg -l y -c n $OUTPUT/$PRGNAM-$VERSION-$ARCH-$BUILD$TAG.$PKGTYPE
diff --git a/games/cbonsai/cbonsai.info b/games/cbonsai/cbonsai.info
new file mode 100644
index 0000000000..392aaf4399
--- /dev/null
+++ b/games/cbonsai/cbonsai.info
@@ -0,0 +1,10 @@
+PRGNAM="cbonsai"
+VERSION="1.3.1"
+HOMEPAGE="https://gitlab.com/jallbrit/cbonsai"
+DOWNLOAD="https://gitlab.com/jallbrit/cbonsai/-/archive/v1.3.1/cbonsai-v1.3.1.tar.gz"
+MD5SUM="0a422b5d93a5c899c7037c9f9f51d7a1"
+DOWNLOAD_x86_64=""
+MD5SUM_x86_64=""
+REQUIRES="scdoc"
+MAINTAINER="Dustin Metcalf"
+EMAIL="metcalf.nerd+SBo@gmail.com"
diff --git a/games/cbonsai/slack-desc b/games/cbonsai/slack-desc
new file mode 100644
index 0000000000..c5960d2661
--- /dev/null
+++ b/games/cbonsai/slack-desc
@@ -0,0 +1,19 @@
+# HOW TO EDIT THIS FILE:
+# The "handy ruler" below makes it easier to edit a package description.
+# Line up the first '|' above the ':' following the base package name, and
+# the '|' on the right side marks the last column you can put a character in.
+# You must make exactly 11 lines for the formatting to be correct. It's also
+# customary to leave one space after the ':' except on otherwise blank lines.
+
+ |-----handy-ruler------------------------------------------------------|
+cbonsai: cbonsai (grow a Bonsai Tree in you terminal)
+cbonsai:
+cbonsai: & &&&& +--------------------------+
+cbonsai: &&&&&&&& | Your tree can talk too! |
+cbonsai: &&&~&&&~&& && +--------------------------+
+cbonsai: &&&&/~ & &
+cbonsai: &&&&&&&
+cbonsai: :___________./~~~\.___________:
+cbonsai: \ /
+cbonsai: \_________________________/
+cbonsai: (_) (_)
diff --git a/games/ceferino/ceferino.SlackBuild b/games/ceferino/ceferino.SlackBuild
index 3d62199d4f..2f2778a591 100644
--- a/games/ceferino/ceferino.SlackBuild
+++ b/games/ceferino/ceferino.SlackBuild
@@ -1,17 +1,20 @@
-#!/bin/sh
+#!/bin/bash
# Slackware build script for ceferino
-# Written by B. Watson (yalhcru@gmail.com)
+# Written by B. Watson (urchlay@slackware.uk)
# Licensed under the WTFPL. See http://www.wtfpl.net/txt/copying/ for details.
# Packaging up the same version Debian does, SVN rev 37 fixes some bugs.
+cd $(dirname $0) ; CWD=$(pwd)
+
PRGNAM=ceferino
VERSION=${VERSION:-0.97.8+svn37}
BUILD=${BUILD:-1}
TAG=${TAG:-_SBo}
+PKGTYPE=${PKGTYPE:-tgz}
if [ -z "$ARCH" ]; then
case "$( uname -m )" in
@@ -21,7 +24,11 @@ if [ -z "$ARCH" ]; then
esac
fi
-CWD=$(pwd)
+if [ ! -z "${PRINT_PACKAGE_NAME}" ]; then
+ echo "$PRGNAM-$VERSION-$ARCH-$BUILD$TAG.$PKGTYPE"
+ exit 0
+fi
+
TMP=${TMP:-/tmp/SBo}
PKG=$TMP/package-$PRGNAM
OUTPUT=${OUTPUT:-/tmp}
@@ -49,11 +56,8 @@ rm -rf $PRGNAM-$VERSION
tar xvf $CWD/${PRGNAM}_$VERSION.orig.tar.gz
cd $PRGNAM-$VERSION
chown -R root:root .
-find -L . \
- \( -perm 777 -o -perm 775 -o -perm 750 -o -perm 711 -o -perm 555 \
- -o -perm 511 \) -exec chmod 755 {} \; -o \
- \( -perm 666 -o -perm 664 -o -perm 640 -o -perm 600 -o -perm 444 \
- -o -perm 440 -o -perm 400 \) -exec chmod 644 {} \;
+find -L . -perm /111 -a \! -perm 755 -a -exec chmod 755 {} \+ -o \
+ \! -perm /111 -a \! -perm 644 -a -exec chmod 644 {} \+
# fix array bounds fail in sound initialization
patch -p1 < $CWD/soundinitfix.diff
@@ -74,7 +78,7 @@ CXXFLAGS="$SLKCFLAGS" \
make
make install-strip DESTDIR=$PKG
-# icon rendered from Debian's cefefino.svg
+# icon rendered from Debian's ceferino.svg
mkdir -p $PKG/usr/share/pixmaps
cat $CWD/$PRGNAM.png > $PKG/usr/share/pixmaps/$PRGNAM.png
@@ -95,4 +99,4 @@ cat $CWD/slack-desc > $PKG/install/slack-desc
cat $CWD/doinst.sh > $PKG/install/doinst.sh
cd $PKG
-/sbin/makepkg -l y -c n $OUTPUT/$PRGNAM-$VERSION-$ARCH-$BUILD$TAG.${PKGTYPE:-tgz}
+/sbin/makepkg -l y -c n $OUTPUT/$PRGNAM-$VERSION-$ARCH-$BUILD$TAG.$PKGTYPE
diff --git a/games/ceferino/ceferino.info b/games/ceferino/ceferino.info
index 8842451927..2561989a0d 100644
--- a/games/ceferino/ceferino.info
+++ b/games/ceferino/ceferino.info
@@ -1,10 +1,10 @@
PRGNAM="ceferino"
VERSION="0.97.8+svn37"
-HOMEPAGE="http://web.archive.org/web/20160531044525/http://www.losersjuegos.com.ar/juegos/ceferino"
-DOWNLOAD="http://ftp.debian.org/debian/pool/main/c/ceferino/ceferino_0.97.8+svn37.orig.tar.gz"
+HOMEPAGE="https://web.archive.org/web/20160531044525/http://www.losersjuegos.com.ar/juegos/ceferino"
+DOWNLOAD="https://deb.debian.org/debian/pool/main/c/ceferino/ceferino_0.97.8+svn37.orig.tar.gz"
MD5SUM="6823fe46cadf7c759128c37073e85e2c"
DOWNLOAD_x86_64=""
MD5SUM_x86_64=""
REQUIRES=""
MAINTAINER="B. Watson"
-EMAIL="yalhcru@gmail.com"
+EMAIL="urchlay@slackware.uk"
diff --git a/games/cgames/cgames.SlackBuild b/games/cgames/cgames.SlackBuild
index 8e10798f3c..9fdb59635a 100644
--- a/games/cgames/cgames.SlackBuild
+++ b/games/cgames/cgames.SlackBuild
@@ -1,8 +1,8 @@
-#!/bin/sh
+#!/bin/bash
# Slackware build script for cgames
-# Copyright 2015-2016 Dimitris Zlatanidis Orestiada, Greece
+# Copyright 2015-2022 Dimitris Zlatanidis Orestiada, Greece
# All rights reserved.
#
# Redistribution and use of this script, with or without modification, is
@@ -22,10 +22,18 @@
# OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF THIS SOFTWARE, EVEN IF
# ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
+# 20220405 bkw: Modified by SlackBuilds.org, BUILD=2:
+# - fix the build so the games can find their own data dir at runtime.
+# - binary in /usr/games, data in /usr/share/games/$PRGNAM
+# - fix permissions.
+
+cd $(dirname $0) ; CWD=$(pwd)
+
PRGNAM=cgames
-VERSION=${VERSION:-2.2a}
-BUILD=${BUILD:-1}
+VERSION=${VERSION:-2.2b}
+BUILD=${BUILD:-2}
TAG=${TAG:-_SBo}
+PKGTYPE=${PKGTYPE:-tgz}
if [ -z "$ARCH" ]; then
case "$( uname -m )" in
@@ -35,7 +43,11 @@ if [ -z "$ARCH" ]; then
esac
fi
-CWD=$(pwd)
+if [ ! -z "${PRINT_PACKAGE_NAME}" ]; then
+ echo "$PRGNAM-$VERSION-$ARCH-$BUILD$TAG.$PKGTYPE"
+ exit 0
+fi
+
TMP=${TMP:-/tmp/SBo}
PKG=$TMP/package-$PRGNAM
OUTPUT=${OUTPUT:-/tmp}
@@ -65,9 +77,9 @@ cd $PRGNAM-$VERSION
chown -R root:root .
find -L . \
\( -perm 777 -o -perm 775 -o -perm 750 -o -perm 711 -o -perm 555 \
- -o -perm 511 \) -exec chmod 755 {} \; -o \
+ -o -perm 511 \) -exec chmod 755 {} \+ -o \
\( -perm 666 -o -perm 664 -o -perm 640 -o -perm 600 -o -perm 444 \
- -o -perm 440 -o -perm 400 \) -exec chmod 644 {} \;
+ -o -perm 440 -o -perm 400 \) -exec chmod 644 {} \+
CFLAGS="$SLKCFLAGS" \
CXXFLAGS="$SLKCFLAGS" \
@@ -81,18 +93,20 @@ CXXFLAGS="$SLKCFLAGS" \
--with-ncurses \
--build=$ARCH-slackware-linux
-make DESTDIR=$PKG datadir=$PKG/usr/share/csokoban mandir="$PKG/usr/man/" \
- bindir="$PKG/usr/bin" csokoban-install
-make DESTDIR=$PKG datadir=$PKG/usr/share/cmines mandir="$PKG/usr/man/" \
- bindir="$PKG/usr/bin" cmines-install
-make DESTDIR=$PKG datadir=$PKG/usr/share/cblocks mandir="$PKG/usr/man/" \
- bindir="$PKG/usr/bin" cblocks-install
+runmake() {
+ make datadir=/usr/share/games/csokoban mandir=/usr/man/ \
+ bindir=/usr/games $1-build
+ make DESDTIR=$PKG datadir=$PKG/usr/share/games/csokoban mandir=$PKG/usr/man/ \
+ bindir=$PKG/usr/games $1-install
+}
-find $PKG -print0 | xargs -0 file | grep -e "executable" -e "shared object" | grep ELF \
- | cut -f 1 -d : | xargs strip --strip-unneeded 2> /dev/null || true
+runmake csokoban
+runmake cmines
+runmake cblocks
-find $PKG/usr/man -type f -exec gzip -9 {} \;
-for i in $( find $PKG/usr/man -type l ) ; do ln -s $( readlink $i ).gz $i.gz ; rm $i ; done
+strip $PKG/usr/games/*
+chmod 644 $PKG/usr/man/man*/* $PKG/usr/share/games/csokoban/*
+gzip $PKG/usr/man/man*/*
mkdir -p $PKG/usr/doc/$PRGNAM-$VERSION
cp -a COPYING Changelog README $PKG/usr/doc/$PRGNAM-$VERSION
@@ -103,4 +117,4 @@ cat $CWD/slack-desc > $PKG/install/slack-desc
cat $CWD/doinst.sh > $PKG/install/doinst.sh
cd $PKG
-/sbin/makepkg -l y -c n $OUTPUT/$PRGNAM-$VERSION-$ARCH-$BUILD$TAG.${PKGTYPE:-tgz}
+/sbin/makepkg -l y -c n $OUTPUT/$PRGNAM-$VERSION-$ARCH-$BUILD$TAG.$PKGTYPE
diff --git a/games/cgames/cgames.info b/games/cgames/cgames.info
index 917a6d84db..1fcea93ee9 100644
--- a/games/cgames/cgames.info
+++ b/games/cgames/cgames.info
@@ -1,8 +1,8 @@
PRGNAM="cgames"
-VERSION="2.2a"
+VERSION="2.2b"
HOMEPAGE="http://www.muppetlabs.com/~breadbox/software/cgames.html"
-DOWNLOAD="http://www.muppetlabs.com/~breadbox/pub/software/cgames-2.2a.tar.gz"
-MD5SUM="9222c1a1720444977d4cd9b0e95894db"
+DOWNLOAD="http://www.muppetlabs.com/~breadbox/pub/software/cgames-2.2b.tar.gz"
+MD5SUM="02e9ac92557257d5f4ed5b7391d640fd"
DOWNLOAD_x86_64=""
MD5SUM_x86_64=""
REQUIRES=""
diff --git a/games/cgmadness/cgmadness.SlackBuild b/games/cgmadness/cgmadness.SlackBuild
index c23ff57222..01df210cbf 100644
--- a/games/cgmadness/cgmadness.SlackBuild
+++ b/games/cgmadness/cgmadness.SlackBuild
@@ -1,13 +1,22 @@
-#!/bin/sh
+#!/bin/bash
# Slackware build script for cgmadness
# Written by Zbigniew Baniewski <Zbigniew [dot] Baniewski [at] gmail [dot] com>
+# 20220220 bkw: Modified by SlackBuilds.org, BUILD=2:
+# - fix build on 15.0.
+# - move executable to /usr/games.
+# ! THIS IS STILL BROKEN: it now builds an OK-looking Slackware package,
+# but it segfaults on startup.
+
+cd $(dirname $0) ; CWD=$(pwd)
+
PRGNAM=cgmadness
VERSION=${VERSION:-1.3}
-BUILD=${BUILD:-1}
+BUILD=${BUILD:-2}
TAG=${TAG:-_SBo}
+PKGTYPE=${PKGTYPE:-tgz}
if [ -z "$ARCH" ]; then
case "$( uname -m )" in
@@ -17,7 +26,11 @@ if [ -z "$ARCH" ]; then
esac
fi
-CWD=$(pwd)
+if [ ! -z "${PRINT_PACKAGE_NAME}" ]; then
+ echo "$PRGNAM-$VERSION-$ARCH-$BUILD$TAG.$PKGTYPE"
+ exit 0
+fi
+
TMP=${TMP:-/tmp/SBo}
PKG=$TMP/package-$PRGNAM
OUTPUT=${OUTPUT:-/tmp}
@@ -47,22 +60,33 @@ cd $PRGNAM
chown -R root:root .
find -L . \
\( -perm 777 -o -perm 775 -o -perm 750 -o -perm 711 -o -perm 555 \
- -o -perm 511 \) -exec chmod 755 {} \; -o \
+ -o -perm 511 \) -exec chmod 755 {} \+ -o \
\( -perm 666 -o -perm 664 -o -perm 640 -o -perm 600 -o -perm 444 \
- -o -perm 440 -o -perm 400 \) -exec chmod 644 {} \;
+ -o -perm 440 -o -perm 400 \) -exec chmod 644 {} \+
-cat $CWD/01-Makefile.patch | patch -p1
+patch -p1 < $CWD/01-Makefile.patch
patch -p1 < $CWD/cgmadness.patch
-make
+# 20220220 bkw: no way to see the damn compile commands without this:
+sed -i 's,@\$,$,' Makefile
+
+# 20220220 bkw: it turns out -ansi for g++ disables -std=c+11, grr.
+sed -i '/-ansi/d' Makefile
+
+# 20220220 bkw: linux never supported the posix streams api anyway:
+sed -i '/include.*stropts\.h/d' libgrapple/socket.c
+
+make CC="${CC:-gcc} $SLKCFLAGS" \
+ CXX="${CXX:-g++} $SLKCFLAGS -std=c++11"
+
mkdir -p $PKG/usr/share/games/cgmadness/data $PKG/usr/share/games/cgmadness/levels \
- $PKG/usr/bin $PKG/usr/share/pixmaps
+ $PKG/usr/games $PKG/usr/share/pixmaps
cp -a ballshadow.frag convert-cgm ballshadow.vert golfball.frag cgmadness \
dedicated_server golfball.vert $PKG/usr/share/games/cgmadness
cp -a data/* $PKG/usr/share/games/cgmadness/data
cp -a levels/* $PKG/usr/share/games/cgmadness/levels
-echo "cd /usr/share/games/cgmadness ; ./cgmadness" > $PKG/usr/bin/cgmadness
-chmod 0755 $PKG/usr/bin/cgmadness
+echo "cd /usr/share/games/cgmadness ; ./cgmadness" > $PKG/usr/games/cgmadness
+chmod 0755 $PKG/usr/games/cgmadness
install -m 0644 $CWD/$PRGNAM.png $PKG/usr/share/pixmaps/$PRGNAM.png
find $PKG -print0 | xargs -0 file | grep -e "executable" -e "shared object" | grep ELF \
@@ -80,4 +104,4 @@ cat $CWD/slack-desc > $PKG/install/slack-desc
cat $CWD/doinst.sh > $PKG/install/doinst.sh
cd $PKG
-/sbin/makepkg -l y -c n $OUTPUT/$PRGNAM-$VERSION-$ARCH-$BUILD$TAG.${PKGTYPE:-tgz}
+/sbin/makepkg -l y -c n $OUTPUT/$PRGNAM-$VERSION-$ARCH-$BUILD$TAG.$PKGTYPE
diff --git a/games/cgmadness/cgmadness.desktop b/games/cgmadness/cgmadness.desktop
index 3085f24503..209aa05faf 100644
--- a/games/cgmadness/cgmadness.desktop
+++ b/games/cgmadness/cgmadness.desktop
@@ -2,7 +2,7 @@
Name=CG Madness
GenericName=Marble Madness-like game
Comment=Game based on the classic Marble Madness
-Exec=/usr/share/games/cgmadness/cgmadness
+Exec=/usr/games/cgmadness
Icon=/usr/share/pixmaps/cgmadness.png
Terminal=false
Type=Application
diff --git a/games/cgoban/cgoban.SlackBuild b/games/cgoban/cgoban.SlackBuild
index a58ef04087..8aeae3b784 100644
--- a/games/cgoban/cgoban.SlackBuild
+++ b/games/cgoban/cgoban.SlackBuild
@@ -1,4 +1,4 @@
-#!/bin/sh
+#!/bin/bash
# Slackware 14.0 build script for CGoban1
@@ -8,26 +8,36 @@
# http://creativecommons.org/publicdomain/zero/1.0/
# http://creativecommons.org/publicdomain/zero/1.0/legalcode
+cd $(dirname $0) ; CWD=$(pwd)
+
PRGNAM=cgoban
VERSION=${VERSION:-1.9.14}
BUILD=${BUILD:-1}
TAG=${TAG:-_SBo}
+PKGTYPE=${PKGTYPE:-tgz}
if [ -z "$ARCH" ]; then
case "$( uname -m )" in
- i?86) ARCH=i486 ;;
+ i?86) ARCH=i586 ;;
arm*) ARCH=arm ;;
*) ARCH=$( uname -m ) ;;
esac
fi
-CWD=$(pwd)
+# If the variable PRINT_PACKAGE_NAME is set, then this script will report what
+# the name of the created package would be, and then exit. This information
+# could be useful to other scripts.
+if [ ! -z "${PRINT_PACKAGE_NAME}" ]; then
+ echo "$PRGNAM-$VERSION-$ARCH-$BUILD$TAG.$PKGTYPE"
+ exit 0
+fi
+
TMP=${TMP:-/tmp/SBo}
PKG=$TMP/package-$PRGNAM
OUTPUT=${OUTPUT:-/tmp}
-if [ "$ARCH" = "i486" ]; then
- SLKCFLAGS="-O2 -march=i486 -mtune=i686"
+if [ "$ARCH" = "i586" ]; then
+ SLKCFLAGS="-O2 -march=i586 -mtune=i686"
LIBDIRSUFFIX=""
elif [ "$ARCH" = "i686" ]; then
SLKCFLAGS="-O2 -march=i686 -mtune=i686"
@@ -92,4 +102,4 @@ mkdir -p $PKG/install
cat $CWD/slack-desc > $PKG/install/slack-desc
cd $PKG
-/sbin/makepkg -l y -c n $OUTPUT/$PRGNAM-$VERSION-$ARCH-$BUILD$TAG.${PKGTYPE:-tgz}
+/sbin/makepkg -l y -c n $OUTPUT/$PRGNAM-$VERSION-$ARCH-$BUILD$TAG.$PKGTYPE
diff --git a/games/chessx/chessx.SlackBuild b/games/chessx/chessx.SlackBuild
index 70301fd877..214568d130 100644
--- a/games/chessx/chessx.SlackBuild
+++ b/games/chessx/chessx.SlackBuild
@@ -1,4 +1,4 @@
-#!/bin/sh
+#!/bin/bash
# Slackware build script for ChessX
@@ -22,10 +22,13 @@
# OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF THIS SOFTWARE, EVEN IF
# ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
+cd $(dirname $0) ; CWD=$(pwd)
+
PRGNAM=chessx
-VERSION=${VERSION:-1.5.4}
-BUILD=${BUILD:-1}
+VERSION=${VERSION:-1.5.8}
+BUILD=${BUILD:-2}
TAG=${TAG:-_SBo}
+PKGTYPE=${PKGTYPE:-tgz}
if [ -z "$ARCH" ]; then
case "$( uname -m )" in
@@ -35,7 +38,14 @@ if [ -z "$ARCH" ]; then
esac
fi
-CWD=$(pwd)
+# If the variable PRINT_PACKAGE_NAME is set, then this script will report what
+# the name of the created package would be, and then exit. This information
+# could be useful to other scripts.
+if [ ! -z "${PRINT_PACKAGE_NAME}" ]; then
+ echo "$PRGNAM-$VERSION-$ARCH-$BUILD$TAG.$PKGTYPE"
+ exit 0
+fi
+
TMP=${TMP:-/tmp/SBo}
PKG=$TMP/package-$PRGNAM
OUTPUT=${OUTPUT:-/tmp}
@@ -69,6 +79,10 @@ find -L . \
\( -perm 666 -o -perm 664 -o -perm 640 -o -perm 600 -o -perm 444 \
-o -perm 440 -o -perm 400 \) -exec chmod 644 {} \;
+# Taken from Arch, fixes the GUI problems
+sed -i '/QCoreApplication::setAttribute(Qt::AA_EnableHighDpiScaling);/a\
+ QCoreApplication::setAttribute(Qt::AA_DontUseNativeDialogs);' src/gui/main.cpp
+
# Compile the application with Qt
lupdate-qt5 chessx.pro
lrelease-qt5 i18n/*.ts
@@ -87,7 +101,7 @@ find $PKG -print0 | xargs -0 file | grep -e "executable" -e "shared object" | gr
| cut -f 1 -d : | xargs strip --strip-unneeded 2> /dev/null || true
mkdir -p $PKG/usr/doc/$PRGNAM-$VERSION
-cp -a License.txt ChangeLog TODO $PKG/usr/doc/$PRGNAM-$VERSION
+install -D -m 0644 README*.md ChangeLog.md TODO.md COPYING.md $PKG/usr/doc/$PRGNAM-$VERSION
cat $CWD/$PRGNAM.SlackBuild > $PKG/usr/doc/$PRGNAM-$VERSION/$PRGNAM.SlackBuild
mkdir -p $PKG/install
@@ -95,4 +109,4 @@ cat $CWD/slack-desc > $PKG/install/slack-desc
cat $CWD/doinst.sh > $PKG/install/doinst.sh
cd $PKG
-/sbin/makepkg -l y -c n $OUTPUT/$PRGNAM-$VERSION-$ARCH-$BUILD$TAG.${PKGTYPE:-tgz}
+/sbin/makepkg -l y -c n $OUTPUT/$PRGNAM-$VERSION-$ARCH-$BUILD$TAG.$PKGTYPE
diff --git a/games/chessx/chessx.info b/games/chessx/chessx.info
index 02e439284d..ef855c006d 100644
--- a/games/chessx/chessx.info
+++ b/games/chessx/chessx.info
@@ -1,10 +1,10 @@
PRGNAM="chessx"
-VERSION="1.5.4"
-HOMEPAGE="http://chessx.sourceforge.net/"
-DOWNLOAD="http://sourceforge.net/projects/chessx/files/chessx/1.5.4/chessx-1.5.4.tgz"
-MD5SUM="ef52fde4ac75f92e10c81b4e3e601089"
+VERSION="1.5.8"
+HOMEPAGE="https://chessx.sourceforge.net/"
+DOWNLOAD="https://sourceforge.net/projects/chessx/files/chessx/1.5.8/chessx-1.5.8.tgz"
+MD5SUM="dca4f1c923f3d4280121dcad3a29f05e"
DOWNLOAD_x86_64=""
MD5SUM_x86_64=""
-REQUIRES="qt5"
+REQUIRES=""
MAINTAINER="David O'Shaughnessy"
EMAIL="dev@osh.id.au"
diff --git a/games/chexquest/README b/games/chexquest/README
new file mode 100644
index 0000000000..86bc135f52
--- /dev/null
+++ b/games/chexquest/README
@@ -0,0 +1,30 @@
+chexquest (Chex Quest 1 and 2, first-person shooter games)
+
+Chex Quest is an award-winning promotional game created by Digital
+Cafe and released in 1996, utilizing the Doom engine. The player is
+embodied as Chex Warrior, a hero attempting to rescue captured Chex
+people from evil slime creatures known as Flemoids who have invaded
+the Intergalactic Federation of Cereals' mining outpost on the planet
+Bazoik.
+
+The game was made available inside boxes of Chex cereal. It
+featured five levels. Because the market for the cereal consisted
+largely of children, the game was made to be deliberately non-violent:
+for example, the enemies in the game are not killed, but are instead
+transported back to their home dimension.
+
+Chex Quest 2: Flemoids Take Chextropolis is the second installment
+in the Chex Quest series, released in 1997. It is an add-on to the
+original, as the first Chex Quest is required to play it.
+
+To play the games, you will need a compatible Doom engine installed.
+The recommended engines are gzdoom, zdoom, and crispy-doom. You can
+also try odamex, prboom-plus, doomretro, or skulltag, but they're not
+100% compatible. You won't need any .wad files from any of the Doom
+games, since Chex Quest is a total conversion.
+
+The package includes both games, wrapper scripts to launch them from
+the command line, and desktop entries to launch them from the KDE or
+XFCE menu.
+
+See also: games/chexquest3, for the last game in the series.
diff --git a/games/chexquest/chexquest.SlackBuild b/games/chexquest/chexquest.SlackBuild
new file mode 100644
index 0000000000..2f58350695
--- /dev/null
+++ b/games/chexquest/chexquest.SlackBuild
@@ -0,0 +1,83 @@
+#!/bin/bash
+
+# Slackware build script for chexquest
+
+# Written by B. Watson (urchlay@slackware.uk)
+
+# Licensed under the WTFPL. See http://www.wtfpl.net/txt/copying/ for details.
+
+# VERSION is taken from the timestamp of chex.wad in cqdos.zip. There
+# will never be a new version of this...
+
+# The download site http://www.doomlegends.com/chexquest/tucq.html is
+# actually the homepage of a modified/combined version of Chex Quest 1 and 2,
+# called "The Ultimate Chex Quest", but it also hosts the original
+# games for download. I chose to package the originals, since the
+# 'Ultimate' version isn't complete (missing at least one level).
+
+# Icons came from: https://archive.org/details/chex_icon
+
+cd $(dirname $0) ; CWD=$(pwd)
+
+PRGNAM=chexquest
+VERSION=${VERSION:-19960331}
+BUILD=${BUILD:-1}
+TAG=${TAG:-_SBo}
+PKGTYPE=${PKGTYPE:-tgz}
+ARCH=noarch
+
+if [ ! -z "${PRINT_PACKAGE_NAME}" ]; then
+ echo "$PRGNAM-$VERSION-$ARCH-$BUILD$TAG.$PKGTYPE"
+ exit 0
+fi
+
+TMP=${TMP:-/tmp/SBo}
+PKG=$TMP/package-$PRGNAM
+OUTPUT=${OUTPUT:-/tmp}
+
+set -e
+
+rm -rf $PKG
+mkdir -p $TMP $PKG $OUTPUT
+cd $TMP
+rm -rf $PRGNAM-$VERSION
+mkdir -p $PRGNAM-$VERSION
+cd $PRGNAM-$VERSION
+# only unzip the .wad files, we don't need the rest.
+unzip $CWD/cqdos.zip chex.wad
+unzip -j -LL $CWD/cq2dos.zip '*/chex2.wad'
+chown -R root:root .
+chmod 644 *
+
+DOOMDIR=$PKG/usr/share/games/doom
+PKGDOC=$PKG/usr/doc/$PRGNAM-$VERSION
+PKGBIN=$PKG/usr/games
+DESKDIR=$PKG/usr/share/applications
+OLDICON=$PKG/usr/share/pixmaps
+mkdir -p $DOOMDIR $PKGDOC $PKGBIN $DESKDIR $OLDICON
+
+cp -a chex.wad chex2.wad $DOOMDIR
+
+install -m0755 -oroot -groot $CWD/chexquest.sh $PKGBIN/chexquest
+ln -s chexquest $PKGBIN/chexquest2
+
+for i in chexquest chexquest2; do
+ cat $CWD/$i.desktop > $DESKDIR/$i.desktop
+ for size in 16x16 22x22 32x32 48x48 64x64 128x128 256x256; do
+ dir=$PKG/usr/share/icons/hicolor/$size/apps
+ mkdir -p $dir
+ convert -resize $size $CWD/$i.png $dir/$i.png
+ done
+ ln -s ../icons/hicolor/48x48/apps/$i.png $OLDICON/$i.png
+done
+
+# No docs in either zip file; include our own.
+cat $CWD/README > $PKGDOC/README
+cat $CWD/$PRGNAM.SlackBuild > $PKGDOC/$PRGNAM.SlackBuild
+
+mkdir -p $PKG/install
+cat $CWD/slack-desc > $PKG/install/slack-desc
+cat $CWD/doinst.sh > $PKG/install/doinst.sh
+
+cd $PKG
+/sbin/makepkg -l y -c n $OUTPUT/$PRGNAM-$VERSION-$ARCH-$BUILD$TAG.$PKGTYPE
diff --git a/games/chexquest/chexquest.desktop b/games/chexquest/chexquest.desktop
new file mode 100644
index 0000000000..19271acac5
--- /dev/null
+++ b/games/chexquest/chexquest.desktop
@@ -0,0 +1,7 @@
+[Desktop Entry]
+Type=Application
+Name=Chex Quest
+Icon=chexquest
+Exec=/usr/games/chexquest
+Terminal=false
+Categories=Game;ActionGame;
diff --git a/games/chexquest/chexquest.info b/games/chexquest/chexquest.info
new file mode 100644
index 0000000000..4060ab495c
--- /dev/null
+++ b/games/chexquest/chexquest.info
@@ -0,0 +1,12 @@
+PRGNAM="chexquest"
+VERSION="19960331"
+HOMEPAGE="https://doomwiki.org/wiki/Chex_Quest"
+DOWNLOAD="http://www.doomlegends.com/chexquest/cqdos.zip \
+ http://www.doomlegends.com/chexquest/cq2dos.zip"
+MD5SUM="18a747fbdd264c50ae5fdecde2f365f2 \
+ fb91522287fe7183b53c9578fedf36b9"
+DOWNLOAD_x86_64=""
+MD5SUM_x86_64=""
+REQUIRES=""
+MAINTAINER="B. Watson"
+EMAIL="urchlay@slackware.uk"
diff --git a/games/chexquest/chexquest.png b/games/chexquest/chexquest.png
new file mode 100644
index 0000000000..2f2b52000c
--- /dev/null
+++ b/games/chexquest/chexquest.png
Binary files differ
diff --git a/games/chexquest/chexquest.sh b/games/chexquest/chexquest.sh
new file mode 100644
index 0000000000..83ff031697
--- /dev/null
+++ b/games/chexquest/chexquest.sh
@@ -0,0 +1,44 @@
+#!/bin/bash
+
+# Wrapper script for chexquest, part of the SlackBuilds.org project.
+# Decides which game to run, finds a usable Doom engine, and uses it
+# to run the game.
+
+# Author: B. Watson (urchlay@slackware.uk). License: WTFPL.
+
+# The IWAD for Chex Quest 1... its header calls it a PWAD but it's
+# really an IWAD. *shrug*
+IWAD=/usr/share/games/doom/chex.wad
+
+# The PWAD for Chex Quest 2 (which requires chex.wad):
+PWAD=/usr/share/games/doom/chex2.wad
+
+# If we're called as chexquest2, add the PWAD.
+case "$0" in
+ *2) PWADARG="-file $PWAD" ;;
+esac
+
+# The list is restricted to engines that (a) are on SBo, and (b) can
+# actually play Chex Quest 1 and 2.
+
+# These were tested, and don't work: chocolate-doom doomsday prboom
+
+# Chocolate Doom supposedly supports it, if the Dehacked patch is
+# present, but it segfaults when I try to start the game. If you
+# want to play with this, the dehacked patch lives here:
+# http://mirrors.syringanetworks.net/idgames/themes/chex/chexdeh.zip
+
+# These were tested, and do work... though skulltag has issues, and
+# only gzdoom, zdoom, and crispy-doom show the correct "are you sure
+# you want to quit?" messages.
+ENGINES="gzdoom zdoom crispy-doom odamex prboom-plus doomretro skulltag"
+
+# And we're off to the races...
+for eng in $ENGINES; do
+ if /bin/which $eng &>/dev/null; then
+ exec $eng -iwad $IWAD $PWADARG "$@"
+ fi
+done
+
+echo "Can't find any of $ENGINES, can't run game." 1>&2
+exit 1
diff --git a/games/chexquest/chexquest2.desktop b/games/chexquest/chexquest2.desktop
new file mode 100644
index 0000000000..db6a2fc571
--- /dev/null
+++ b/games/chexquest/chexquest2.desktop
@@ -0,0 +1,7 @@
+[Desktop Entry]
+Type=Application
+Name=Chex Quest 2
+Icon=chexquest
+Exec=/usr/games/chexquest2
+Terminal=false
+Categories=Game;ActionGame;
diff --git a/games/chexquest/chexquest2.png b/games/chexquest/chexquest2.png
new file mode 100644
index 0000000000..fe61c7b16a
--- /dev/null
+++ b/games/chexquest/chexquest2.png
Binary files differ
diff --git a/games/chexquest/doinst.sh b/games/chexquest/doinst.sh
new file mode 100644
index 0000000000..65c7e2eeb9
--- /dev/null
+++ b/games/chexquest/doinst.sh
@@ -0,0 +1,9 @@
+if [ -x /usr/bin/update-desktop-database ]; then
+ /usr/bin/update-desktop-database -q usr/share/applications >/dev/null 2>&1
+fi
+
+if [ -e usr/share/icons/hicolor/icon-theme.cache ]; then
+ if [ -x /usr/bin/gtk-update-icon-cache ]; then
+ /usr/bin/gtk-update-icon-cache -f usr/share/icons/hicolor >/dev/null 2>&1
+ fi
+fi
diff --git a/games/chexquest/slack-desc b/games/chexquest/slack-desc
new file mode 100644
index 0000000000..184a126fe7
--- /dev/null
+++ b/games/chexquest/slack-desc
@@ -0,0 +1,19 @@
+# HOW TO EDIT THIS FILE:
+# The "handy ruler" below makes it easier to edit a package description.
+# Line up the first '|' above the ':' following the base package name, and
+# the '|' on the right side marks the last column you can put a character in.
+# You must make exactly 11 lines for the formatting to be correct. It's also
+# customary to leave one space after the ':' except on otherwise blank lines.
+
+ |-----handy-ruler------------------------------------------------------|
+chexquest: chexquest (Chex Quest 1 and 2, first-person shooter games)
+chexquest:
+chexquest: Chex Quest is an award-winning promotional game created by Digital
+chexquest: Cafe and released in 1996, utilizing the Doom engine. The player
+chexquest: is embodied as Chex Warrior, a hero attempting to rescue captured
+chexquest: Chex people from evil slime creatures known as Flemoids who have
+chexquest: invaded the Intergalactic Federation of Cereals' mining outpost on
+chexquest: the planet Bazoik. Chex Quest 2: Flemoids Take Chextropolis is the
+chexquest: second installment in the Chex Quest series. This package includes
+chexquest: both games.
+chexquest:
diff --git a/games/chexquest3/chexquest3.SlackBuild b/games/chexquest3/chexquest3.SlackBuild
index 7494bd11db..3683c71d8b 100644
--- a/games/chexquest3/chexquest3.SlackBuild
+++ b/games/chexquest3/chexquest3.SlackBuild
@@ -1,43 +1,31 @@
-#!/bin/sh
+#!/bin/bash
# Slackware build script for chexquest3
-# Written by B. Watson (yalhcru@gmail.com)
+# Written by B. Watson (urchlay@slackware.uk)
# Licensed under the WTFPL. See http://www.wtfpl.net/txt/copying/ for details.
+# 20211004 bkw: Derp! This should have been noarch from the beginning.
+
+cd $(dirname $0) ; CWD=$(pwd)
+
PRGNAM=chexquest3
VERSION=${VERSION:-20100924}
-BUILD=${BUILD:-1}
+BUILD=${BUILD:-2}
TAG=${TAG:-_SBo}
+PKGTYPE=${PKGTYPE:-tgz}
+ARCH=noarch
-if [ -z "$ARCH" ]; then
- case "$( uname -m )" in
- i?86) ARCH=i586 ;;
- arm*) ARCH=arm ;;
- *) ARCH=$( uname -m ) ;;
- esac
+if [ ! -z "${PRINT_PACKAGE_NAME}" ]; then
+ echo "$PRGNAM-$VERSION-$ARCH-$BUILD$TAG.$PKGTYPE"
+ exit 0
fi
-CWD=$(pwd)
TMP=${TMP:-/tmp/SBo}
PKG=$TMP/package-$PRGNAM
OUTPUT=${OUTPUT:-/tmp}
-if [ "$ARCH" = "i586" ]; then
- SLKCFLAGS="-O2 -march=i586 -mtune=i686"
- LIBDIRSUFFIX=""
-elif [ "$ARCH" = "i686" ]; then
- SLKCFLAGS="-O2 -march=i686 -mtune=i686"
- LIBDIRSUFFIX=""
-elif [ "$ARCH" = "x86_64" ]; then
- SLKCFLAGS="-O2 -fPIC"
- LIBDIRSUFFIX="64"
-else
- SLKCFLAGS="-O2"
- LIBDIRSUFFIX=""
-fi
-
set -e
SRCNAM=ChexQuest3
@@ -75,4 +63,4 @@ cat $CWD/slack-desc > $PKG/install/slack-desc
cat $CWD/doinst.sh > $PKG/install/doinst.sh
cd $PKG
-/sbin/makepkg -l y -c n $OUTPUT/$PRGNAM-$VERSION-$ARCH-$BUILD$TAG.${PKGTYPE:-tgz}
+/sbin/makepkg -l y -c n $OUTPUT/$PRGNAM-$VERSION-$ARCH-$BUILD$TAG.$PKGTYPE
diff --git a/games/chexquest3/chexquest3.info b/games/chexquest3/chexquest3.info
index ce5783a356..1cd106020e 100644
--- a/games/chexquest3/chexquest3.info
+++ b/games/chexquest3/chexquest3.info
@@ -7,4 +7,4 @@ DOWNLOAD_x86_64=""
MD5SUM_x86_64=""
REQUIRES=""
MAINTAINER="B. Watson"
-EMAIL="yalhcru@gmail.com"
+EMAIL="urchlay@slackware.uk"
diff --git a/games/chocolate-doom/chocolate-doom.SlackBuild b/games/chocolate-doom/chocolate-doom.SlackBuild
index 8fdfaa4555..a1482a9a97 100644
--- a/games/chocolate-doom/chocolate-doom.SlackBuild
+++ b/games/chocolate-doom/chocolate-doom.SlackBuild
@@ -1,11 +1,12 @@
-#!/bin/sh
+#!/bin/bash
# Slackware build script for chocolate-doom
-# Written by B. Watson (yalhcru@gmail.com)
+# Written by B. Watson (urchlay@slackware.uk)
# Licensed under the WTFPL. See http://www.wtfpl.net/txt/copying/ for details.
+# 20210727 bkw: fix build on -current (does no harm on 14.2), BUILD=2.
# 20201019 bkw: update for v3.0.1.
# 20180101 bkw:
# - Update for v3.0.0. Building 2.3.0 still works, if someone needs it.
@@ -23,10 +24,13 @@
# - get rid of no-longer-needed disable_windres.diff
# - update README and slack-desc
+cd $(dirname $0) ; CWD=$(pwd)
+
PRGNAM=chocolate-doom
VERSION=${VERSION:-3.0.1}
-BUILD=${BUILD:-1}
+BUILD=${BUILD:-2}
TAG=${TAG:-_SBo}
+PKGTYPE=${PKGTYPE:-tgz}
if [ -z "$ARCH" ]; then
case "$( uname -m )" in
@@ -36,7 +40,11 @@ if [ -z "$ARCH" ]; then
esac
fi
-CWD=$(pwd)
+if [ ! -z "${PRINT_PACKAGE_NAME}" ]; then
+ echo "$PRGNAM-$VERSION-$ARCH-$BUILD$TAG.$PKGTYPE"
+ exit 0
+fi
+
TMP=${TMP:-/tmp/SBo}
PKG=$TMP/package-$PRGNAM
OUTPUT=${OUTPUT:-/tmp}
@@ -73,11 +81,11 @@ rm -rf $PRGNAM-$REALVER $PRGNAM-$PRGNAM-$REALVER
tar xvf $CWD/$PRGNAM-$REALVER.tar.gz || tar xvf $CWD/$PRGNAM-$PRGNAM-$REALVER.tar.gz
cd $PRGNAM-$REALVER || cd $PRGNAM-$PRGNAM-$REALVER
chown -R root:root .
-find -L . \
- \( -perm 777 -o -perm 775 -o -perm 750 -o -perm 711 -o -perm 555 -o -perm 511 \) \
- -exec chmod 755 {} \; -o \
- \( -perm 666 -o -perm 664 -o -perm 600 -o -perm 444 -o -perm 440 -o -perm 400 \) \
- -exec chmod 644 {} \;
+find -L . -perm /111 -a \! -perm 755 -a -exec chmod 755 {} \+ -o \
+ \! -perm /111 -a \! -perm 644 -a -exec chmod 644 {} \+
+
+# upstream fix from git, easier to use sed than make a diff.
+sed -i '/^boolean demoextend/d' src/hexen/mn_menu.c
[ -x configure ] || sh autogen.sh
@@ -130,4 +138,4 @@ cat $CWD/slack-desc > $PKG/install/slack-desc
cat $CWD/doinst.sh > $PKG/install/doinst.sh
cd $PKG
-/sbin/makepkg -l y -c n $OUTPUT/$PRGNAM-$VERSION-$ARCH-$BUILD$TAG.${PKGTYPE:-tgz}
+/sbin/makepkg -l y -c n $OUTPUT/$PRGNAM-$VERSION-$ARCH-$BUILD$TAG.$PKGTYPE
diff --git a/games/chocolate-doom/chocolate-doom.info b/games/chocolate-doom/chocolate-doom.info
index 1a0ef1da93..bb2ddce85b 100644
--- a/games/chocolate-doom/chocolate-doom.info
+++ b/games/chocolate-doom/chocolate-doom.info
@@ -1,10 +1,10 @@
PRGNAM="chocolate-doom"
VERSION="3.0.1"
-HOMEPAGE="http://www.chocolate-doom.org/"
+HOMEPAGE="https://www.chocolate-doom.org/"
DOWNLOAD="https://www.chocolate-doom.org/downloads/3.0.1/chocolate-doom-3.0.1.tar.gz"
MD5SUM="9080b4c0a4e6383d841c51d4d245cad8"
DOWNLOAD_x86_64=""
MD5SUM_x86_64=""
-REQUIRES="SDL2_mixer SDL2_net"
+REQUIRES=""
MAINTAINER="B. Watson"
-EMAIL="yalhcru@gmail.com"
+EMAIL="urchlay@slackware.uk"
diff --git a/games/chocolate_duke3D/README b/games/chocolate_duke3D/README
deleted file mode 100644
index 408645bb02..0000000000
--- a/games/chocolate_duke3D/README
+++ /dev/null
@@ -1,14 +0,0 @@
-Chocolate Duke Nukem 3D is the equivalent of Chocolate Doom.
-
-A port that:
-
- 1. Remains as faithful as possible to the original source code.
- 2. Is portable and compiles in one click on Windows, OS X and Linux.
- 3. Is aimed at education, with lots of comments and documentation added
- in order to help programmers to understand and learn.
-
-Note: Place "duke3d.grp" from any legit Duke 3D copy in
-/usr/share/games/duke3d to play.
-
-Currently, only 32-bit x86 is supported. The code is not 64-bit clean,
-so it won't run correctly on x86_64.
diff --git a/games/chocolate_duke3D/chocolate-duke3d b/games/chocolate_duke3D/chocolate-duke3d
deleted file mode 100644
index 8a51d7d26b..0000000000
--- a/games/chocolate_duke3D/chocolate-duke3d
+++ /dev/null
@@ -1,4 +0,0 @@
- #!/bin/bash
-
-cd /usr/share/games/duke3d
-./chocolate-duke3d $*
diff --git a/games/chocolate_duke3D/chocolate-duke3d.desktop b/games/chocolate_duke3D/chocolate-duke3d.desktop
deleted file mode 100644
index c7cd53403f..0000000000
--- a/games/chocolate_duke3D/chocolate-duke3d.desktop
+++ /dev/null
@@ -1,9 +0,0 @@
-[Desktop Entry]
-Name=Chocolate Duke 3D
-GenericName=Vanilla Duke Nukem 3D experience.
-Type=Application
-Comment=Faithful Duke Nukem 3D port, similar to Chocolate Doom.
-Exec=chocolate-duke3d
-Icon=chocolate-duke3d
-Terminal=false
-Categories=Game
diff --git a/games/chocolate_duke3D/chocolate-duke3d.png b/games/chocolate_duke3D/chocolate-duke3d.png
deleted file mode 100644
index 125d60e10c..0000000000
--- a/games/chocolate_duke3D/chocolate-duke3d.png
+++ /dev/null
Binary files differ
diff --git a/games/chocolate_duke3D/chocolate_duke3D.SlackBuild b/games/chocolate_duke3D/chocolate_duke3D.SlackBuild
deleted file mode 100644
index 09b18e3ef7..0000000000
--- a/games/chocolate_duke3D/chocolate_duke3D.SlackBuild
+++ /dev/null
@@ -1,116 +0,0 @@
-#!/bin/sh
-
-# Slackware build script for Chocolate Duke 3D
-#
-# Copyright 2015 Gethyn ThomasQuail (email removed)
-# All rights reserved.
-#
-# Based on:
-# SBo's cmake-template
-#
-# Redistribution and use of this script, with or without modification, is
-# permitted provided that the following conditions are met:
-#
-# 1. Redistributions of this script must retain the above copyright
-# notice, this list of conditions and the following disclaimer.
-#
-# THIS SOFTWARE IS PROVIDED BY THE AUTHOR ''AS IS'' AND ANY EXPRESS OR IMPLIED
-# WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE IMPLIED WARRANTIES OF
-# MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE ARE DISCLAIMED. IN NO
-# EVENT SHALL THE AUTHOR BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL,
-# SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT LIMITED TO,
-# PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, DATA, OR PROFITS;
-# OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY,
-# WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR
-# OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF THIS SOFTWARE, EVEN IF
-# ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
-
-# Now maintained by B. Watson (yalhcru@gmail.com)
-
-# 20170313 bkw:
-# - i486 => i586
-# - actually use SLKCFLAGS
-# - minor grammar fixes in README and slack-desc
-# - use long-format github URL
-# - use commit date + short hash as VERSION, instead of full hash only.
-# - look at upstream, the only 2 new commits are minor edits to README.md,
-# don't bother updating.
-
-PRGNAM=chocolate_duke3D
-VERSION=${VERSION:-20150902_dd8db65}
-COMMIT=${COMMIT:-dd8db653e08cc3029a84dbfd36b2c927a8d3e8fc}
-BUILD=${BUILD:-1}
-TAG=${TAG:-_SBo}
-GAMDIR=usr/share/games/duke3d
-
-if [ -z "$ARCH" ]; then
- case "$( uname -m )" in
- i?86) ARCH=i586 ;;
- arm*) ARCH=arm ;;
- *) ARCH=$( uname -m ) ;;
- esac
-fi
-
-CWD=$(pwd)
-TMP=${TMP:-/tmp/SBo}
-PKG=$TMP/package-$PRGNAM
-OUTPUT=${OUTPUT:-/tmp}
-
-if [ "$ARCH" = "i586" ]; then
- SLKCFLAGS="-O2 -march=i586 -mtune=i686"
- LIBDIRSUFFIX=""
-elif [ "$ARCH" = "i686" ]; then
- SLKCFLAGS="-O2 -march=i686 -mtune=i686"
- LIBDIRSUFFIX=""
-elif [ "$ARCH" = "x86_64" ]; then
- SLKCFLAGS="-O2 -fPIC"
- LIBDIRSUFFIX="64"
-else
- SLKCFLAGS="-O2"
- LIBDIRSUFFIX=""
-fi
-
-set -e
-
-rm -rf $PKG
-mkdir -p $TMP $PKG $OUTPUT
-cd $TMP
-rm -rf $PRGNAM-$COMMIT
-unzip $CWD/$PRGNAM-$COMMIT.zip
-cd $PRGNAM-$COMMIT
-chown -R root:root .
-find -L . \
- \( -perm 777 -o -perm 775 -o -perm 750 -o -perm 711 -o -perm 555 \
- -o -perm 511 \) -exec chmod 755 {} \; -o \
- \( -perm 666 -o -perm 664 -o -perm 640 -o -perm 600 -o -perm 444 \
- -o -perm 440 -o -perm 400 \) -exec chmod 644 {} \;
-
-# Let's compile!
-./autogen.sh
-CFLAGS="$SLKCFLAGS" \
-CXXFLAGS="$SLKCFLAGS" \
-./configure
-make #V=1
-
-# Copies over compiled binary
-install -D -m 0755 chocolate-duke3d $PKG/$GAMDIR/chocolate-duke3d
-
-# Desktop and launcher related stuff
-install -D -m 0644 $CWD/chocolate-duke3d.png $PKG/usr/share/pixmaps/chocolate-duke3d.png
-install -D -m 0644 $CWD/chocolate-duke3d.desktop $PKG/usr/share/applications/chocolate-duke3d.desktop
-install -D -m 0755 $CWD/chocolate-duke3d $PKG/usr/games/chocolate-duke3d
-
-# Make it so the games group can access the dir
-# 20170313 bkw: does this actually accomplish anything?
-chgrp games $PKG/$GAMDIR
-chmod 775 $PKG/$GAMDIR
-
-mkdir -p $PKG/usr/doc/$PRGNAM-$VERSION
-cp -a README.md $PKG/usr/doc/$PRGNAM-$VERSION
-cat $CWD/$PRGNAM.SlackBuild > $PKG/usr/doc/$PRGNAM-$VERSION/$PRGNAM.SlackBuild
-
-mkdir -p $PKG/install
-cat $CWD/slack-desc > $PKG/install/slack-desc
-
-cd $PKG
-/sbin/makepkg -l y -c n $OUTPUT/$PRGNAM-$VERSION-$ARCH-$BUILD$TAG.${PKGTYPE:-tgz}
diff --git a/games/chocolate_duke3D/chocolate_duke3D.info b/games/chocolate_duke3D/chocolate_duke3D.info
deleted file mode 100644
index 2b7b2802de..0000000000
--- a/games/chocolate_duke3D/chocolate_duke3D.info
+++ /dev/null
@@ -1,10 +0,0 @@
-PRGNAM="chocolate_duke3D"
-VERSION="20150902_dd8db65"
-HOMEPAGE="https://github.com/fabiensanglard/chocolate_duke3D/"
-DOWNLOAD="https://github.com/fabiensanglard/chocolate_duke3D/archive/dd8db653/chocolate_duke3D-dd8db653e08cc3029a84dbfd36b2c927a8d3e8fc.zip"
-MD5SUM="ce87a33d07de869584261191404e6f16"
-DOWNLOAD_x86_64="UNSUPPORTED"
-MD5SUM_x86_64=""
-REQUIRES="enet"
-MAINTAINER="B. Watson"
-EMAIL="yalhcru@gmail.com"
diff --git a/games/chocolate_duke3D/slack-desc b/games/chocolate_duke3D/slack-desc
deleted file mode 100644
index 4db4cdb25e..0000000000
--- a/games/chocolate_duke3D/slack-desc
+++ /dev/null
@@ -1,19 +0,0 @@
-# HOW TO EDIT THIS FILE:
-# The "handy ruler" below makes it easier to edit a package description.
-# Line up the first '|' above the ':' following the base package name, and
-# the '|' on the right side marks the last column you can put a character in.
-# You must make exactly 11 lines for the formatting to be correct. It's also
-# customary to leave one space after the ':' except on otherwise blank lines.
-
- |-----handy-ruler------------------------------------------------------|
-chocolate_duke3D: chocolate_duke3D (Faithful Duke Nukem 3D port)
-chocolate_duke3D:
-chocolate_duke3D: Chocolate Duke Nukem 3D is the equivalent of Chocolate Doom.
-chocolate_duke3D: A port that:
-chocolate_duke3D: Remains as faithful as possible to the original source code.
-chocolate_duke3D: Is portable and compiles in one click on Windows, OS X and Linux.
-chocolate_duke3D: Is aimed at education, with lots of comments and documentation added
-chocolate_duke3D: in order to help programmers to understand and learn.
-chocolate_duke3D:
-chocolate_duke3D: Homepage: https://github.com/fabiensanglard/chocolate_duke3D
-chocolate_duke3D:
diff --git a/games/chroma/chroma.SlackBuild b/games/chroma/chroma.SlackBuild
index f46788b147..250adea3ad 100644
--- a/games/chroma/chroma.SlackBuild
+++ b/games/chroma/chroma.SlackBuild
@@ -1,29 +1,39 @@
-#!/bin/sh
+#!/bin/bash
# Slackware build script for chroma
# Written by Larry Hajali <larryhaja[at]gmail[dot]com>
+cd $(dirname $0) ; CWD=$(pwd)
+
PRGNAM=chroma
VERSION=${VERSION:-1.15}
BUILD=${BUILD:-1}
TAG=${TAG:-_SBo}
+PKGTYPE=${PKGTYPE:-tgz}
if [ -z "$ARCH" ]; then
case "$( uname -m )" in
- i?86) ARCH=i486 ;;
+ i?86) ARCH=i586 ;;
arm*) ARCH=arm ;;
*) ARCH=$( uname -m ) ;;
esac
fi
-CWD=$(pwd)
+# If the variable PRINT_PACKAGE_NAME is set, then this script will report what
+# the name of the created package would be, and then exit. This information
+# could be useful to other scripts.
+if [ ! -z "${PRINT_PACKAGE_NAME}" ]; then
+ echo "$PRGNAM-$VERSION-$ARCH-$BUILD$TAG.$PKGTYPE"
+ exit 0
+fi
+
TMP=${TMP:-/tmp/SBo}
PKG=$TMP/package-$PRGNAM
OUTPUT=${OUTPUT:-/tmp}
-if [ "$ARCH" = "i486" ]; then
- SLKCFLAGS="-O2 -march=i486 -mtune=i686"
+if [ "$ARCH" = "i586" ]; then
+ SLKCFLAGS="-O2 -march=i586 -mtune=i686"
LIBDIRSUFFIX=""
elif [ "$ARCH" = "i686" ]; then
SLKCFLAGS="-O2 -march=i686 -mtune=i686"
@@ -46,10 +56,13 @@ tar xvf $CWD/$PRGNAM-$VERSION.tar.bz2
cd $PRGNAM-$VERSION
chown -R root:root .
find -L . \
- \( -perm 777 -o -perm 775 -o -perm 750 -o -perm 711 -o -perm 555 -o -perm 511 \) \
- -exec chmod 755 {} \; -o \
- \( -perm 666 -o -perm 664 -o -perm 600 -o -perm 444 -o -perm 440 -o -perm 400 \) \
- -exec chmod 644 {} \;
+ \( -perm 777 -o -perm 775 -o -perm 750 -o -perm 711 -o -perm 555 \
+ -o -perm 511 \) -exec chmod 755 {} \; -o \
+ \( -perm 666 -o -perm 664 -o -perm 640 -o -perm 600 -o -perm 444 \
+ -o -perm 440 -o -perm 400 \) -exec chmod 644 {} \;
+
+# Removed some inline declarations (incompatible with newer versions of gcc)
+patch -p1 < $CWD/gcc.patch
CFLAGS="$SLKCFLAGS" \
./configure \
@@ -61,7 +74,7 @@ CFLAGS="$SLKCFLAGS" \
make
make install DESTDIR=$PKG
-find $PKG | xargs file | grep -e "executable" -e "shared object" | grep ELF \
+find $PKG -print0 | xargs -0 file | grep -e "executable" -e "shared object" | grep ELF \
| cut -f 1 -d : | xargs strip --strip-unneeded 2> /dev/null || true
mkdir -p $PKG/usr/share/{applications,pixmaps}
@@ -79,4 +92,4 @@ cat $CWD/slack-desc > $PKG/install/slack-desc
cat $CWD/doinst.sh > $PKG/install/doinst.sh
cd $PKG
-/sbin/makepkg -l y -c n $OUTPUT/$PRGNAM-$VERSION-$ARCH-$BUILD$TAG.${PKGTYPE:-tgz}
+/sbin/makepkg -l y -c n $OUTPUT/$PRGNAM-$VERSION-$ARCH-$BUILD$TAG.$PKGTYPE
diff --git a/games/chroma/gcc.patch b/games/chroma/gcc.patch
new file mode 100644
index 0000000000..22ef1b2ea7
--- /dev/null
+++ b/games/chroma/gcc.patch
@@ -0,0 +1,30 @@
+diff -Naur chroma-1.15.orig/sdlshadowdisplay.c chroma-1.15/sdlshadowdisplay.c
+--- chroma-1.15.orig/sdlshadowdisplay.c 2013-04-20 08:07:00.000000000 +0200
++++ chroma-1.15/sdlshadowdisplay.c 2017-08-02 12:07:56.327010753 +0200
+@@ -88,7 +88,7 @@
+ void displayshadowed_level(struct level* plevel);
+ void displayshadowed_movers(struct level* plevel, int redraw);
+
+-inline void displayshadowed_piece(struct level* plevel, int p, int x, int y, int d)
++void displayshadowed_piece(struct level* plevel, int p, int x, int y, int d)
+ {
+ SDL_Surface *pimage;
+
+@@ -255,7 +255,7 @@
+ }
+ }
+
+-inline void displayshadowed_pieceshadow(struct level* plevel, int p, int x, int y, int d)
++void displayshadowed_pieceshadow(struct level* plevel, int p, int x, int y, int d)
+ {
+ SDL_Surface *pimage;
+
+@@ -310,7 +310,7 @@
+ SDL_BlitSurface(pimage, &srect, screen_surface, &drect);
+ }
+
+-inline void displayshadowed_piecebase(struct level* plevel, int x, int y)
++void displayshadowed_piecebase(struct level* plevel, int x, int y)
+ {
+ int p;
+ SDL_Surface *pimage;
diff --git a/games/chromium-bsu/README b/games/chromium-bsu/README
index c7b2a686cb..3e63fd1f64 100644
--- a/games/chromium-bsu/README
+++ b/games/chromium-bsu/README
@@ -1,4 +1,4 @@
Chromium B.S.U. is a fast paced, arcade-style, top-scrolling shooter.
-It uses OpenGL for graphics, and OpenAL for sound effects.
+It uses OpenGL for graphics and OpenAL for sound effects.
-Optional dependencies: ftgl, SDL2_mixer and SDL2_image
+Optional dependencies: ftgl
diff --git a/games/chromium-bsu/chromium-bsu.SlackBuild b/games/chromium-bsu/chromium-bsu.SlackBuild
index 9c9ca29fc9..d4bc611726 100644
--- a/games/chromium-bsu/chromium-bsu.SlackBuild
+++ b/games/chromium-bsu/chromium-bsu.SlackBuild
@@ -1,4 +1,4 @@
-#!/bin/sh
+#!/bin/bash
# Slackware build script for chromium
#
@@ -25,10 +25,13 @@
# Modified by Erik Hanson <erik@slackbuilds.org>
+cd $(dirname $0) ; CWD=$(pwd)
+
PRGNAM=chromium-bsu
VERSION=${VERSION:-0.9.16.1}
BUILD=${BUILD:-1}
TAG=${TAG:-_SBo}
+PKGTYPE=${PKGTYPE:-tgz}
if [ -z "$ARCH" ]; then
case "$( uname -m )" in
@@ -38,7 +41,14 @@ if [ -z "$ARCH" ]; then
esac
fi
-CWD=$(pwd)
+# If the variable PRINT_PACKAGE_NAME is set, then this script will report what
+# the name of the created package would be, and then exit. This information
+# could be useful to other scripts.
+if [ ! -z "${PRINT_PACKAGE_NAME}" ]; then
+ echo "$PRGNAM-$VERSION-$ARCH-$BUILD$TAG.$PKGTYPE"
+ exit 0
+fi
+
TMP=${TMP:-/tmp/SBo}
PKG=$TMP/package-$PRGNAM
OUTPUT=${OUTPUT:-/tmp}
@@ -94,4 +104,4 @@ cat $CWD/slack-desc > $PKG/install/slack-desc
cat $CWD/doinst.sh > $PKG/install/doinst.sh
cd $PKG
-/sbin/makepkg -l y -c n $OUTPUT/$PRGNAM-$VERSION-$ARCH-$BUILD$TAG.${PKGTYPE:-tgz}
+/sbin/makepkg -l y -c n $OUTPUT/$PRGNAM-$VERSION-$ARCH-$BUILD$TAG.$PKGTYPE
diff --git a/games/circuslinux/README b/games/circuslinux/README
index 07bf15f0a6..5a02780c0f 100644
--- a/games/circuslinux/README
+++ b/games/circuslinux/README
@@ -1,3 +1,5 @@
+circuslinux (clone of the Atari 2600 game "Circus Atari")
+
"Circus Linux!" is a clone of the Atari 2600 game "Circus Atari,"
produced by Atari, Inc. (which is itself a clone of an earlier arcade
game named, simply "Circus").
diff --git a/games/circuslinux/circuslinux.SlackBuild b/games/circuslinux/circuslinux.SlackBuild
index 307b5c1e9f..c1fed43f13 100644
--- a/games/circuslinux/circuslinux.SlackBuild
+++ b/games/circuslinux/circuslinux.SlackBuild
@@ -1,16 +1,21 @@
-#!/bin/sh
+#!/bin/bash
# Slackware build script for circuslinux
-# Written by B. Watson (yalhcru@gmail.com)
+# Written by B. Watson (urchlay@slackware.uk)
# Modified by the SlackBuilds.org project.
# Licensed under the WTFPL. See http://www.wtfpl.net/txt/copying/ for details.
+# 20230106 bkw: BUILD=2, get useless INSTALL out of doc dir.
+
+cd $(dirname $0) ; CWD=$(pwd)
+
PRGNAM=circuslinux
VERSION=${VERSION:-1.0.3}
-BUILD=${BUILD:-1}
+BUILD=${BUILD:-2}
TAG=${TAG:-_SBo}
+PKGTYPE=${PKGTYPE:-tgz}
if [ -z "$ARCH" ]; then
case "$( uname -m )" in
@@ -20,7 +25,11 @@ if [ -z "$ARCH" ]; then
esac
fi
-CWD=$(pwd)
+if [ ! -z "${PRINT_PACKAGE_NAME}" ]; then
+ echo "$PRGNAM-$VERSION-$ARCH-$BUILD$TAG.$PKGTYPE"
+ exit 0
+fi
+
TMP=${TMP:-/tmp/SBo}
PKG=$TMP/package-$PRGNAM
OUTPUT=${OUTPUT:-/tmp}
@@ -44,11 +53,8 @@ rm -rf $PRGNAM-$VERSION
tar xvf $CWD/$PRGNAM-$VERSION.tar.gz
cd $PRGNAM-$VERSION
chown -R root:root .
-find -L . \
- \( -perm 777 -o -perm 775 -o -perm 750 -o -perm 711 -o -perm 555 \
- -o -perm 511 \) -exec chmod 755 {} \; -o \
- \( -perm 666 -o -perm 664 -o -perm 640 -o -perm 600 -o -perm 444 \
- -o -perm 440 -o -perm 400 \) -exec chmod 644 {} \;
+find -L . -perm /111 -a \! -perm 755 -a -exec chmod 755 {} \+ -o \
+ \! -perm /111 -a \! -perm 644 -a -exec chmod 644 {} \+
CFLAGS="$SLKCFLAGS" \
CXXFLAGS="$SLKCFLAGS" \
@@ -79,6 +85,7 @@ mkdir -p $PKG/usr/man/man6
gzip -9c $CWD/$PRGNAM.6 > $PKG/usr/man/man6/$PRGNAM.6.gz
mkdir -p $PKG/usr/doc/$PRGNAM-$VERSION
+rm -f INSTALL.txt
cp *.txt $PKG/usr/doc/$PRGNAM-$VERSION
cat $CWD/$PRGNAM.SlackBuild > $PKG/usr/doc/$PRGNAM-$VERSION/$PRGNAM.SlackBuild
@@ -87,4 +94,4 @@ cat $CWD/slack-desc > $PKG/install/slack-desc
cat $CWD/doinst.sh > $PKG/install/doinst.sh
cd $PKG
-/sbin/makepkg -l y -c n $OUTPUT/$PRGNAM-$VERSION-$ARCH-$BUILD$TAG.${PKGTYPE:-tgz}
+/sbin/makepkg -l y -c n $OUTPUT/$PRGNAM-$VERSION-$ARCH-$BUILD$TAG.$PKGTYPE
diff --git a/games/circuslinux/circuslinux.info b/games/circuslinux/circuslinux.info
index ef8129640b..0323bc9f2f 100644
--- a/games/circuslinux/circuslinux.info
+++ b/games/circuslinux/circuslinux.info
@@ -7,4 +7,4 @@ DOWNLOAD_x86_64=""
MD5SUM_x86_64=""
REQUIRES=""
MAINTAINER="B. Watson"
-EMAIL="yalhcru@gmail.com"
+EMAIL="urchlay@slackware.uk"
diff --git a/games/ckmame/ckmame.SlackBuild b/games/ckmame/ckmame.SlackBuild
index d1904dd7e8..ad5a84ca79 100644
--- a/games/ckmame/ckmame.SlackBuild
+++ b/games/ckmame/ckmame.SlackBuild
@@ -1,4 +1,4 @@
-#!/bin/sh
+#!/bin/bash
# Slackware build script for ckmame
@@ -22,26 +22,36 @@
# OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF THIS SOFTWARE, EVEN IF
# ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
+# 20220220 bkw: Modified by SlackBuilds.org: fix build on Slackware 15.0.
+# However, this desperately needs a version update to be useful.
+
+cd $(dirname $0) ; CWD=$(pwd)
+
PRGNAM=ckmame
VERSION=${VERSION:-0.12}
BUILD=${BUILD:-1}
TAG=${TAG:-_SBo}
+PKGTYPE=${PKGTYPE:-tgz}
if [ -z "$ARCH" ]; then
case "$( uname -m )" in
- i?86) ARCH=i486 ;;
+ i?86) ARCH=i586 ;;
arm*) ARCH=arm ;;
*) ARCH=$( uname -m ) ;;
esac
fi
-CWD=$(pwd)
+if [ ! -z "${PRINT_PACKAGE_NAME}" ]; then
+ echo "$PRGNAM-$VERSION-$ARCH-$BUILD$TAG.$PKGTYPE"
+ exit 0
+fi
+
TMP=${TMP:-/tmp/SBo}
PKG=$TMP/package-$PRGNAM
OUTPUT=${OUTPUT:-/tmp}
-if [ "$ARCH" = "i486" ]; then
- SLKCFLAGS="-O2 -march=i486 -mtune=i686"
+if [ "$ARCH" = "i586" ]; then
+ SLKCFLAGS="-O2 -march=i586 -mtune=i686"
elif [ "$ARCH" = "i686" ]; then
SLKCFLAGS="-O2 -march=i686 -mtune=i686"
elif [ "$ARCH" = "x86_64" ]; then
@@ -59,10 +69,11 @@ cd $PRGNAM-$VERSION
chown -R root:root .
find -L . \
\( -perm 777 -o -perm 775 -o -perm 750 -o -perm 711 -o -perm 555 \
- -o -perm 511 \) -exec chmod 755 {} \; -o \
+ -o -perm 511 \) -exec chmod 755 {} \+ -o \
\( -perm 666 -o -perm 664 -o -perm 640 -o -perm 600 -o -perm 444 \
- -o -perm 440 -o -perm 400 \) -exec chmod 644 {} \;
+ -o -perm 440 -o -perm 400 \) -exec chmod 644 {} \+
+SLKCFLAGS+=" -fcommon"
CFLAGS="$SLKCFLAGS" \
CXXFLAGS="$SLKCFLAGS" \
./configure \
@@ -87,4 +98,4 @@ mkdir -p $PKG/install
cat $CWD/slack-desc > $PKG/install/slack-desc
cd $PKG
-/sbin/makepkg -l y -c n $OUTPUT/$PRGNAM-$VERSION-$ARCH-$BUILD$TAG.${PKGTYPE:-tgz}
+/sbin/makepkg -l y -c n $OUTPUT/$PRGNAM-$VERSION-$ARCH-$BUILD$TAG.$PKGTYPE
diff --git a/games/clksignal-roms/README b/games/clksignal-roms/README
new file mode 100644
index 0000000000..3a915cb583
--- /dev/null
+++ b/games/clksignal-roms/README
@@ -0,0 +1,7 @@
+clksignal-roms (ROM images for use with clksignal)
+
+This is a mostly-complete collection of ROM images for use with
+the clksignal (aka CLK) emulator. Beware that the legal status of
+these ROMs is murky, although most of them have been continuously
+available on various web sites for 20 years or more, with no legal
+repercussions.
diff --git a/games/clksignal-roms/STATUS.txt b/games/clksignal-roms/STATUS.txt
new file mode 100644
index 0000000000..e19f8f390d
--- /dev/null
+++ b/games/clksignal-roms/STATUS.txt
@@ -0,0 +1,24 @@
+
+This package of ROMs supports all the machines clksignal emulates, but
+not every variation of every machine is supported.
+
+Amiga: Incomplete. Kickstart 1.3 for A500/A1000/A2000/CDTV only. clksignal
+ supports several other ROM versions not included here.
+AmstradCPC: Complete.
+AppleII and DiskII: Almost complete. Missing the SCSI card ROM (rarely used),
+ and apple2eu-character.rom has a different CRC32 than clksignal expects.
+AppleIIgs: ROM03 only (no ROM01 or ROM00).
+AtariST: Almost complete. Includes UK TOS 1.00 and 1.04. clksignal doesn't
+ support any other TOS image besides EmuTOS, which isn't included here.
+ColecoVision: Complete.
+Electron: BASIC and OS ROMs only; none of the disk controllers.
+Enterprise: EXOS ROM v2.0 only (no 1.0/2.1/2.3, no BASIC).
+MSX: MSX-DOS and 'generic' BIOS only (no EU/JP/US specific variants).
+Macintosh: Complete.
+MasterSystem: Complete.
+Oric: Oric BASIC 1.0 and 1.1 only (no Pravetz), Jasmin and Microdisc
+ controllers only (no BD500 or 8DOS).
+Vic20 and Commodore1540: PAL kernal only, English chargen only
+ (no NTSC, no Danish, Swedish, Japanese). 1540 and 1541 are present.
+ZX8081: Complete.
+ZXSpectrum: Complete.
diff --git a/games/clksignal-roms/clksignal-roms.SlackBuild b/games/clksignal-roms/clksignal-roms.SlackBuild
new file mode 100644
index 0000000000..1e17c3188b
--- /dev/null
+++ b/games/clksignal-roms/clksignal-roms.SlackBuild
@@ -0,0 +1,233 @@
+#!/bin/bash
+
+# Slackware build script for clksignal-roms
+
+# Written by B. Watson (urchlay@slackware.uk)
+
+# Licensed under the WTFPL. See http://www.wtfpl.net/txt/copying/ for details.
+
+# I don't host any of the DOWNLOAD files (except the oric color
+# palette). ROM sites tend to come and go, so at some point the
+# download links will likely break. Let me know if this happens.
+
+# To clean up the directory:
+# rm -f *.rom *.ROM *.img *.zip *.chr basic chargen kernal dos154*
+
+# 20230716 bkw:
+# - clksignal 20230515's clksignal-qt now looks in a different dir for ROMS;
+# include a symlink in the package.
+
+# 20230114 bkw:
+# - add apple2gs.chr
+# - add tos104uk.img
+# - update STATUS.txt
+
+cd $(dirname $0) ; CWD=$(pwd)
+
+PRGNAM=clksignal-roms
+VERSION=${VERSION:-20230716}
+BUILD=${BUILD:-1}
+TAG=${TAG:-_SBo}
+PKGTYPE=${PKGTYPE:-tgz}
+
+ARCH=noarch
+
+if [ ! -z "${PRINT_PACKAGE_NAME}" ]; then
+ echo "$PRGNAM-$VERSION-$ARCH-$BUILD$TAG.$PKGTYPE"
+ exit 0
+fi
+
+TMP=${TMP:-/tmp/SBo}
+PKG=$TMP/package-$PRGNAM
+OUTPUT=${OUTPUT:-/tmp}
+
+set -e
+
+rm -rf $PKG
+mkdir -p $TMP $PKG $OUTPUT
+cd $TMP
+rm -rf $PRGNAM-$VERSION
+mkdir -p $PRGNAM-$VERSION
+cd $PRGNAM-$VERSION
+
+install_rom() {
+ install -m0644 -oroot -groot "$1" "$2"
+}
+
+ROMBASE=$PKG/usr/share/CLK
+set_dest() {
+ DEST="$ROMBASE/$1"
+ mkdir -p "$DEST"
+}
+
+###### Apple II series ROMs, including the Disk II and IIgs.
+set_dest AppleII
+
+# wheels within wheels, plans within plans, zipfiles within zipfiles...
+unzip $CWD/apple2_roms.zip apple.rom apple2o.rom 13-sector-disk-ii-roms.zip \
+ apple_iie_rom.zip apple_2e_unenhanced_rom.zip ROMS.ZIP
+unzip apple_iie_rom.zip APPLE2E.ROM
+unzip apple_2e_unenhanced_rom.zip
+unzip ROMS.ZIP 3410036.BIN 3420028A.BIN 3410027A.BIN
+
+install_rom apple.rom $DEST/apple2.rom
+install_rom apple2o.rom $DEST/apple2o.rom
+install_rom APPLE2E.ROM $DEST/apple2e.rom
+install_rom apple2eu.rom $DEST/apple2eu.rom
+install_rom 3410036.BIN $DEST/apple2-character.rom
+
+unzip $CWD/apple2ee.zip
+install_rom 3420265a.chr $DEST/apple2e-character.rom
+
+# CRC doesn't match, but the machine starts and seems to work
+# correctly.
+unzip $CWD/apple2e.zip 3420133a.chr
+install_rom 3420133a.chr $DEST/apple2eu-character.rom
+
+set_dest DiskII
+install_rom 3410027A.BIN $DEST/boot-16.rom
+install_rom 3420028A.BIN $DEST/state-machine-16.rom
+
+unzip 13-sector-disk-ii-roms.zip '*.bin'
+install_rom 13-sector-disk-ii-boot-rom.bin $DEST/boot-13.rom
+install_rom 13-sector-disk-ii-state-machine-rom.bin $DEST/state-machine-13.rom
+
+set_dest AppleIIgs
+Z="$CWD/MESS 0.151 ROMs%2Fapple2gs.zip"
+[ -e "$Z" ] || Z="$CWD/MESS%200.151%20ROMs%2Fapple2gs.zip"
+[ -e "$Z" ] || Z="$CWD/apple2gs.zip"
+unzip "$Z"
+
+# Only include the ROM03 firmware.
+# According to the CRC, this is an 'alternate' (or anyway, it's the 2nd
+# of two known CRCs).
+# Doesn't really matter: clksignal segfaults on trying to start up
+# with --new=appleiigs.
+cat 341-0737 341-0748 > rom03
+install_rom rom03 $DEST/apple2gs.rom2
+install_rom 341s0632-2.bin $DEST/341s0632-2
+install_rom apple2gs.chr $DEST/apple2gs.chr
+
+###### Commodore VIC-20 and 1540/1541 ROMs
+# only English and PAL for now.
+set_dest Vic20
+install_rom $CWD/basic $DEST/basic.bin
+install_rom $CWD/kernal $DEST/kernel-pal.bin
+install_rom $CWD/chargen $DEST/characters-english.bin
+
+# the 1541 isn't yet emulated by clksignal...
+set_dest Commodore1540
+install_rom $CWD/dos1540 $DEST/1540.bin
+install_rom $CWD/dos1541 $DEST/1541.bin
+
+###### Atari ST
+set_dest AtariST
+unzip $CWD/tos100uk.zip
+install_rom tos100uk.img $DEST/tos100.img
+unzip $CWD/tos104uk.zip
+install_rom tos104uk.img $DEST/tos104.img
+
+###### Colecovision
+set_dest ColecoVision
+unzip $CWD/coleco.zip
+install_rom coleco.rom $DEST/coleco.rom
+
+##### Amiga
+# handle filename with spaces (wget) or hex escapes (curl -O, some browsers).
+set_dest Amiga
+Z="$CWD/Kickstart v1.3 rev 34.5 (1987)(Commodore)(A500-A1000-A2000-CDTV).rom"
+if [ ! -e "$Z" ]; then
+ Z="$CWD/Kickstart%20v1.3%20rev%2034.5%20%281987%29%28Commodore%29%28A500-A1000-A2000-CDTV%29.rom"
+fi
+install_rom "$Z" $DEST/Kickstart-v1.3-rev34.5-1987-Commodore-A500-A1000-A2000-CDTV.rom
+
+##### Amstrad CPC
+set_dest AmstradCPC
+
+# firmware and BASIC are combined, split 'em apart with dd.
+unzip $CWD/cpc464.zip
+dd if=cpc464.rom of=$DEST/os464.rom bs=16k count=1
+dd if=cpc464.rom of=$DEST/basic464.rom bs=16k count=1 skip=1
+install_rom cpcados.rom $DEST/amsdos.rom
+
+unzip $CWD/cpc664.zip
+dd if=cpc664.rom of=$DEST/os664.rom bs=16k count=1
+dd if=cpc664.rom of=$DEST/basic664.rom bs=16k count=1 skip=1
+
+unzip $CWD/cpc6128.zip
+dd if=cpc6128.rom of=$DEST/os6128.rom bs=16k count=1
+dd if=cpc6128.rom of=$DEST/basic6128.rom bs=16k count=1 skip=1
+
+##### Electron
+set_dest Electron
+unzip $CWD/electron.zip
+install_rom basic.rom $DEST/basic.rom
+install_rom os.rom $DEST/os.rom
+
+##### Macintosh
+set_dest Macintosh
+unzip $CWD/mac128k.zip
+unzip $CWD/mac512k.zip
+unzip $CWD/macplus.zip
+install_rom mac128k.rom $DEST/mac128k.rom
+install_rom mac512k.rom $DEST/mac512k.rom
+install_rom macplus.rom $DEST/macplus.rom
+
+##### Sega Master System
+set_dest MasterSystem
+unzip $CWD/sms1pal.zip bios13fx.rom
+unzip $CWD/smsj.zip jbios21.rom
+install_rom bios13fx.rom $DEST/bios.sms
+install_rom jbios21.rom $DEST/japanese-bios.sms
+
+##### Enterprise
+set_dest Enterprise
+Z="$CWD/MESS 0.151 ROMs%2Fep64.zip"
+[ ! -e "$Z" ] && Z="$CWD/MESS%200.151%20ROMs%2Fep64.zip"
+[ ! -e "$Z" ] && Z="$CWD/ep64.zip"
+unzip "$Z"
+install_rom 9256ds-0038_enter05-23-a.u2 $DEST/exos20.bin
+
+##### MSX. "any MSX BIOS", whatever that means.
+set_dest MSX
+install_rom $CWD/MSX.ROM $DEST/msx.rom
+install_rom $CWD/DISK.ROM $DEST/disk.rom
+
+##### Oric
+# only have 2 of the 4 disk interfaces and 2 of the 3 BASIC ROMs.
+# oric-pal-prom.zip originally came from
+# https://forum.defence-force.org/viewtopic.php?f=8&t=2248&hilit=colour+rom&start=15
+# ...and isn't copyrighted AFAIK.
+set_dest Oric
+unzip $CWD/oric1.zip
+unzip $CWD/orica.zip
+unzip $CWD/oric-pal-prom.zip
+install_rom basic10.rom $DEST/basic10.rom
+install_rom basic11b.rom $DEST/basic11.rom
+install_rom jasmin.rom $DEST/jasmin.rom
+install_rom microdis.rom $DEST/microdisc.rom
+install_rom tbp24s10n.bin $DEST/colour.rom
+
+##### ZX80/81
+set_dest ZX8081
+unzip $CWD/zx80.zip zx80.rom
+unzip $CWD/zx81.zip zx81a.rom
+install_rom zx80.rom $DEST/zx80.rom
+install_rom zx81a.rom $DEST/zx81.rom
+
+# 20230716 bkw: newer clksignal-qt requires this:
+mkdir -p $PKG/usr/share/clksignal-qt
+ln -s ../CLK $PKG/usr/share/clksignal-qt/ROMImages
+
+# No docs, include our own.
+PKGDOC=$PKG/usr/doc/$PRGNAM-$VERSION
+mkdir -p $PKGDOC
+cat $CWD/README > $PKGDOC/README.txt
+cat $CWD/STATUS.txt > $PKGDOC/STATUS.txt
+cat $CWD/$PRGNAM.SlackBuild > $PKGDOC/$PRGNAM.SlackBuild
+
+mkdir -p $PKG/install
+cat $CWD/slack-desc > $PKG/install/slack-desc
+
+cd $PKG
+/sbin/makepkg -l y -c n $OUTPUT/$PRGNAM-$VERSION-$ARCH-$BUILD$TAG.$PKGTYPE
diff --git a/games/clksignal-roms/clksignal-roms.info b/games/clksignal-roms/clksignal-roms.info
new file mode 100644
index 0000000000..183bc42223
--- /dev/null
+++ b/games/clksignal-roms/clksignal-roms.info
@@ -0,0 +1,68 @@
+PRGNAM="clksignal-roms"
+VERSION="20230716"
+HOMEPAGE="https://slackware.uk/~urchlay/src/clksignal-roms.txt"
+DOWNLOAD="http://amigas.ru/amiftp/AmiFTP/Amiga%20Kickstart%20Roms%20-%20Complete%20-%20TOSEC%20v0.04/KS-ROMs/Kickstart%20v1.3%20rev%2034.5%20%281987%29%28Commodore%29%28A500-A1000-A2000-CDTV%29.rom \
+ http://cominf0.narod.ru/mess123/apple2e.zip \
+ http://cominf0.narod.ru/mess123/apple2ee.zip \
+ http://cominf0.narod.ru/mess123/coleco.zip \
+ http://cominf0.narod.ru/mess123/cpc464.zip \
+ http://cominf0.narod.ru/mess123/cpc6128.zip \
+ http://cominf0.narod.ru/mess123/cpc664.zip \
+ http://cominf0.narod.ru/mess123/electron.zip \
+ http://fms.komkon.org/fMSX/src/MSX.ROM \
+ http://fms.komkon.org/fMSX/src/DISK.ROM \
+ http://cominf0.narod.ru/mess123/oric1.zip \
+ http://cominf0.narod.ru/mess123/orica.zip \
+ http://cominf0.narod.ru/mess123/sms1pal.zip \
+ http://cominf0.narod.ru/mess123/smsj.zip \
+ http://cominf0.narod.ru/mess123/zx80.zip \
+ http://cominf0.narod.ru/mess123/zx81.zip \
+ http://www.avtandil.narod.ru/tos/tos100uk.zip \
+ http://www.avtandil.narod.ru/tos/tos104uk.zip \
+ https://slackware.uk/~urchlay/src/apple2gs.zip \
+ https://slackware.uk/~urchlay/src/ep64.zip \
+ https://github.com/libretro/vice-libretro/raw/099ddc95da816d78b22f361dce081e5e2019ad5a/vice/data/DRIVES/dos1540 \
+ https://github.com/libretro/vice-libretro/raw/099ddc95da816d78b22f361dce081e5e2019ad5a/vice/data/DRIVES/dos1541 \
+ https://github.com/libretro/vice-libretro/raw/099ddc95da816d78b22f361dce081e5e2019ad5a/vice/data/VIC20/basic \
+ https://github.com/libretro/vice-libretro/raw/099ddc95da816d78b22f361dce081e5e2019ad5a/vice/data/VIC20/chargen \
+ https://github.com/libretro/vice-libretro/raw/099ddc95da816d78b22f361dce081e5e2019ad5a/vice/data/VIC20/kernal \
+ http://cominf0.narod.ru/mess123/macplus.zip \
+ http://cominf0.narod.ru/mess123/mac512k.zip \
+ http://cominf0.narod.ru/mess123/mac128k.zip \
+ https://mirrors.apple2.org.za/ftp.apple.asimov.net/emulators/rom_images/apple2_roms.zip \
+ https://slackware.uk/~urchlay/src/oric-pal-prom.zip"
+MD5SUM="82a21c1890cae844b3df741f2762d48d \
+ b5b1d94711ecacf742a057fc871bde89 \
+ dd4e64fb74689fc3f91711aecbe20167 \
+ 5ce6d382870005ea9ca230a5b4b52eb4 \
+ e03ee6a857a08fc209d6cfc589861955 \
+ b03cb5b7736d07ac63ecbeee5d8a43c6 \
+ 5d1652c5deb6c3a3505600cb9396ee7d \
+ cd6d25e7af44c8182245ed84f15c6d3b \
+ aa95aea2563cd5ec0a0919b44cc17d47 \
+ 80dcd1ad1a4cf65d64b7ba10504e8190 \
+ d0e1dc32c4f7dd514f7027e91aa4545d \
+ e96c6fad16b1b6e30e196ad26bab37a1 \
+ dc5c4329258fde01cd07dac8826c4871 \
+ 6c3c727dd4e1370afc176f4e9cbb06d1 \
+ 6dab8fa974f64c0f2c8baf8b593d05b6 \
+ 8fe2a0db78a956a0cb678127d033cd8c \
+ 538dfaca799dfc9175e3e70fe3935cf2 \
+ 9e5d9087b977c15b69e46a491434eaf0 \
+ 097150a004adef92fefff599a0c9521e \
+ b870cd578577840ea372acad2336eb8e \
+ 87e849da3c87549848550fe4dd4d1aae \
+ a0ce8439d1b8dcf2e1430461f7233a72 \
+ 8b9237706f47a9b3498d8f881ef0244d \
+ d390e340e94e1bef0f2fdfe9fa850993 \
+ f0587624dcd7685710a8fdb35939617f \
+ b814d9c6d4fd996ce9dab919d53270b8 \
+ 445dd1c6c4fde3a8cf9336ad278fa2df \
+ 901dc1d895a465f6b655e75867dbc9d0 \
+ 02abc1692284270c84fafe34f9e459f2 \
+ b30187aaa21cc533757037d2cc93a5b6"
+DOWNLOAD_x86_64=""
+MD5SUM_x86_64=""
+REQUIRES=""
+MAINTAINER="B. Watson"
+EMAIL="urchlay@slackware.uk"
diff --git a/games/clksignal-roms/slack-desc b/games/clksignal-roms/slack-desc
new file mode 100644
index 0000000000..239e68e11b
--- /dev/null
+++ b/games/clksignal-roms/slack-desc
@@ -0,0 +1,19 @@
+# HOW TO EDIT THIS FILE:
+# The "handy ruler" below makes it easier to edit a package description.
+# Line up the first '|' above the ':' following the base package name, and
+# the '|' on the right side marks the last column you can put a character in.
+# You must make exactly 11 lines for the formatting to be correct. It's also
+# customary to leave one space after the ':' except on otherwise blank lines.
+
+ |-----handy-ruler------------------------------------------------------|
+clksignal-roms: clksignal-roms (ROM images for use with clksignal)
+clksignal-roms:
+clksignal-roms: This is a mostly-complete collection of ROM images for use with
+clksignal-roms: the clksignal (aka CLK) emulator. Beware that the legal status of
+clksignal-roms: these ROMs is murky, although most of them have been continuously
+clksignal-roms: available on various web sites for 20 years or more, with no legal
+clksignal-roms: repercussions.
+clksignal-roms:
+clksignal-roms:
+clksignal-roms:
+clksignal-roms:
diff --git a/games/clksignal/9342c60.diff b/games/clksignal/9342c60.diff
new file mode 100644
index 0000000000..02f707d3c0
--- /dev/null
+++ b/games/clksignal/9342c60.diff
@@ -0,0 +1,34 @@
+diff --git a/OSBindings/Qt/clksignal.pro b/OSBindings/Qt/clksignal.pro
+index cb1e865b2..e26e3e77b 100644
+--- a/OSBindings/Qt/clksignal.pro
++++ b/OSBindings/Qt/clksignal.pro
+@@ -113,8 +113,6 @@ SOURCES += \
+ $$SRC/Processors/6502/Implementation/*.cpp \
+ $$SRC/Processors/6502/State/*.cpp \
+ $$SRC/Processors/65816/Implementation/*.cpp \
+- $$SRC/Processors/68000/Implementation/*.cpp \
+- $$SRC/Processors/68000/State/*.cpp \
+ $$SRC/Processors/Z80/Implementation/*.cpp \
+ $$SRC/Processors/Z80/State/*.cpp \
+ \
+@@ -259,7 +257,6 @@ HEADERS += \
+ $$SRC/Processors/65816/Implementation/*.hpp \
+ $$SRC/Processors/68000/*.hpp \
+ $$SRC/Processors/68000/Implementation/*.hpp \
+- $$SRC/Processors/68000/State/*.hpp \
+ $$SRC/Processors/Z80/*.hpp \
+ $$SRC/Processors/Z80/Implementation/*.hpp \
+ $$SRC/Processors/Z80/State/*.hpp \
+diff --git a/OSBindings/SDL/SConstruct b/OSBindings/SDL/SConstruct
+index 6b1e6e849..af2dd675c 100644
+--- a/OSBindings/SDL/SConstruct
++++ b/OSBindings/SDL/SConstruct
+@@ -100,8 +100,6 @@ SOURCES += glob.glob('../../Outputs/OpenGL/Primitives/*.cpp')
+ SOURCES += glob.glob('../../Processors/6502/Implementation/*.cpp')
+ SOURCES += glob.glob('../../Processors/6502/State/*.cpp')
+ SOURCES += glob.glob('../../Processors/65816/Implementation/*.cpp')
+-SOURCES += glob.glob('../../Processors/68000/Implementation/*.cpp')
+-SOURCES += glob.glob('../../Processors/68000/State/*.cpp')
+ SOURCES += glob.glob('../../Processors/Z80/Implementation/*.cpp')
+ SOURCES += glob.glob('../../Processors/Z80/State/*.cpp')
+
diff --git a/games/clksignal/README b/games/clksignal/README
new file mode 100644
index 0000000000..84f393a0fb
--- /dev/null
+++ b/games/clksignal/README
@@ -0,0 +1,29 @@
+clksignal (emulator for various classic computing platforms)
+
+CLK, also known as Clock Signal, is an emulator for tourists that
+seeks to be invisible. Users directly launch classic software with no
+emulator or per-emulated-machine learning curve.
+
+It currently emulates the Acorn Electron, Amstrad CPC, Amiga, Apple
+II/II+/IIe, Atari 2600, Atari ST, ColecoVision, Commodore VIC-20,
+Enterprise 64/128, 512K Mac/Mac+, MSX-1, Oric/Atmos, Sega Master
+System, Sinclair ZX81/81, and Sinclair ZX Spectrum.
+
+Through the combination of static analysis and runtime analysis, CLK
+seeks to be able automatically to select and configure the appropriate
+machine to run any provided disk, tape or ROM; to issue any commands
+necessary to run the software contained on the disk, tape or ROM;
+and to provide accelerated loading where feasible. The full process
+of loading a title - even if you've never used the emulated machine
+before - is therefore: 1. locate it in your OS; 2. double click
+it.
+
+Notes:
+
+- clksignal requires ROM images for most of the systems it emulates.
+ Install clksignal-roms to get a "starter" set of ROM images.
+ When an image is missing, it will tell you the name, size, and
+ CRC of the image, so you can go search for it on the web.
+
+- For the "locate and click" to work, you'll have to associate the
+ file types/extensions with clksignal manually.
diff --git a/games/clksignal/clksignal-qt.6 b/games/clksignal/clksignal-qt.6
new file mode 100644
index 0000000000..613e824dac
--- /dev/null
+++ b/games/clksignal/clksignal-qt.6
@@ -0,0 +1,83 @@
+.\" Man page generated from reStructuredText.
+.
+.
+.nr rst2man-indent-level 0
+.
+.de1 rstReportMargin
+\\$1 \\n[an-margin]
+level \\n[rst2man-indent-level]
+level margin: \\n[rst2man-indent\\n[rst2man-indent-level]]
+-
+\\n[rst2man-indent0]
+\\n[rst2man-indent1]
+\\n[rst2man-indent2]
+..
+.de1 INDENT
+.\" .rstReportMargin pre:
+. RS \\$1
+. nr rst2man-indent\\n[rst2man-indent-level] \\n[an-margin]
+. nr rst2man-indent-level +1
+.\" .rstReportMargin post:
+..
+.de UNINDENT
+. RE
+.\" indent \\n[an-margin]
+.\" old: \\n[rst2man-indent\\n[rst2man-indent-level]]
+.nr rst2man-indent-level -1
+.\" new: \\n[rst2man-indent\\n[rst2man-indent-level]]
+.in \\n[rst2man-indent\\n[rst2man-indent-level]]u
+..
+.TH "CLKSIGNAL-QT" 6 "2023-07-16" "20230515" "SlackBuilds.org"
+.SH NAME
+clksignal-qt \- graphical interface for clksignal emulator
+.\" RST source for clksignal-qt(6) man page. Convert with:
+.
+.\" rst2man.py clksignal-qt.rst > clksignal-qt.6
+.
+.\" rst2man.py comes from the SBo development/docutils package.
+.
+.SH SYNOPSIS
+.sp
+clksignal\-qt [\fIfile\fP]
+.SH DESCRIPTION
+.sp
+\fBclksignal\-qt\fP is a Qt\-based build of \fBclksignal\fP\&. It accepts no
+command\-line options; starting and configuring the emulator is
+done via the GUI.
+.sp
+If \fIfile\fP is given, it\(aqs used as the ROM/disk/tape image to run.
+If it\(aqs a recognized file type, the appropriate emulated machine will
+automatically be started.
+.sp
+Unlike \fBclksignal\fP, \fBclksignal\-qt\fP \fIonly\fP supports PulseAudio for
+audio output. No, it won\(aqt work with \fBapulse\fP(1), either.
+.SH FILES
+.sp
+\fBclksignal\-qt\fP looks for ROM files in several directories, including:
+.INDENT 0.0
+.TP
+.B /usr/share/clksignal\-qt/ROMImages/
+To populate this directory, install the \fBclksignal\-roms\fP package from
+SlackBuilds.org
+.TP
+.B $HOME/.local/share/clksignal\-qt/ROMImages/
+Simply copy files here (or drag\-and\-drop them into the UI when asked to).
+.UNINDENT
+.sp
+Each of these directories has subdirectories named after the emulated
+system (e.g. \fBAppleII/\fP, \fBVic20/\fP). To see the full list of systems,
+run \fBclksignal\fP \fI\-\-help\fP\&.
+.SH COPYRIGHT
+.sp
+See the file /usr/doc/clksignal\-20230515/LICENSE for license information.
+.SH AUTHORS
+.sp
+clksignal\-qt was written by Thomas Harte.
+.sp
+This man page written for the SlackBuilds.org project
+by B. Watson, and is licensed under the WTFPL.
+.SH SEE ALSO
+.sp
+\fBclksignal\fP(6)
+.\" Generated by docutils manpage writer.
+.
diff --git a/games/clksignal/clksignal-qt.desktop b/games/clksignal/clksignal-qt.desktop
new file mode 100644
index 0000000000..196beeb09d
--- /dev/null
+++ b/games/clksignal/clksignal-qt.desktop
@@ -0,0 +1,7 @@
+[Desktop Entry]
+Name=Clock Signal (Qt)
+Type=Application
+Exec=/usr/games/clksignal-qt
+Icon=clksignal
+Terminal=false
+Categories=Game;Emulator;
diff --git a/games/clksignal/clksignal-qt.rst b/games/clksignal/clksignal-qt.rst
new file mode 100644
index 0000000000..e556498f77
--- /dev/null
+++ b/games/clksignal/clksignal-qt.rst
@@ -0,0 +1,72 @@
+.. RST source for clksignal-qt(6) man page. Convert with:
+.. rst2man.py clksignal-qt.rst > clksignal-qt.6
+.. rst2man.py comes from the SBo development/docutils package.
+
+.. |version| replace:: 20230515
+.. |date| date::
+
+============
+clksignal-qt
+============
+
+------------------------------------------
+graphical interface for clksignal emulator
+------------------------------------------
+
+:Manual section: 6
+:Manual group: SlackBuilds.org
+:Date: |date|
+:Version: |version|
+
+SYNOPSIS
+========
+
+clksignal-qt [*file*]
+
+DESCRIPTION
+===========
+
+**clksignal-qt** is a Qt-based build of **clksignal**. It accepts no
+command-line options; starting and configuring the emulator is
+done via the GUI.
+
+If *file* is given, it's used as the ROM/disk/tape image to run.
+If it's a recognized file type, the appropriate emulated machine will
+automatically be started.
+
+Unlike **clksignal**, **clksignal-qt** *only* supports PulseAudio for
+audio output. No, it won't work with **apulse**\(1), either.
+
+FILES
+=====
+
+**clksignal-qt** looks for ROM files in several directories, including:
+
+/usr/share/clksignal-qt/ROMImages/
+ To populate this directory, install the **clksignal-roms** package from
+ SlackBuilds.org
+
+$HOME/.local/share/clksignal-qt/ROMImages/
+ Simply copy files here (or drag-and-drop them into the UI when asked to).
+
+Each of these directories has subdirectories named after the emulated
+system (e.g. **AppleII/**, **Vic20/**). To see the full list of systems,
+run **clksignal** *--help*.
+
+COPYRIGHT
+=========
+
+See the file /usr/doc/clksignal-|version|/LICENSE for license information.
+
+AUTHORS
+=======
+
+clksignal-qt was written by Thomas Harte.
+
+This man page written for the SlackBuilds.org project
+by B. Watson, and is licensed under the WTFPL.
+
+SEE ALSO
+========
+
+**clksignal**\(6)
diff --git a/games/clksignal/clksignal.SlackBuild b/games/clksignal/clksignal.SlackBuild
new file mode 100644
index 0000000000..21c7ff7fda
--- /dev/null
+++ b/games/clksignal/clksignal.SlackBuild
@@ -0,0 +1,125 @@
+#!/bin/bash
+
+# Slackware build script for clksignal
+
+# Written by B. Watson (urchlay@slackware.uk)
+
+# Licensed under the WTFPL. See http://www.wtfpl.net/txt/copying/ for details.
+
+# 20230716 bkw: updated for v20230515, expand man page a bit.
+# 20230530 bkw: remove unused flags.
+
+# 20230114 bkw: updated for v20221125.
+# - fix my typo that prevented the qt5 UI from being built.
+# - rename ROM dir AppleIIGS => AppleIIgs (the latter is hardcoded
+# in the emulator binary).
+# - make PRINT_PACKAGE_NAME work.
+
+cd $(dirname $0) ; CWD=$(pwd)
+
+PRGNAM=clksignal
+VERSION=${VERSION:-20230515}
+BUILD=${BUILD:-1}
+TAG=${TAG:-_SBo}
+PKGTYPE=${PKGTYPE:-tgz}
+
+SRCNAM=CLK
+SRCVER="$( echo $VERSION | sed 's,^\(....\)\(..\)\(..\),\1\-\2-\3,' )"
+
+if [ -z "$ARCH" ]; then
+ case "$( uname -m )" in
+ i?86) ARCH=i586 ;;
+ arm*) ARCH=arm ;;
+ *) ARCH=$( uname -m ) ;;
+ esac
+fi
+
+if [ ! -z "${PRINT_PACKAGE_NAME}" ]; then
+ echo "$PRGNAM-$VERSION-$ARCH-$BUILD$TAG.$PKGTYPE"
+ exit 0
+fi
+
+TMP=${TMP:-/tmp/SBo}
+PKG=$TMP/package-$PRGNAM
+OUTPUT=${OUTPUT:-/tmp}
+
+set -e
+
+rm -rf $PKG
+mkdir -p $TMP $PKG $OUTPUT
+cd $TMP
+rm -rf $SRCNAM-$SRCVER
+tar xvf $CWD/$SRCNAM-$SRCVER.tar.gz
+cd $SRCNAM-$SRCVER
+chown -R root:root .
+find -L . -perm /111 -a \! -perm 755 -a -exec chmod 755 {} \+ -o \
+ \! -perm /111 -a \! -perm 644 -a -exec chmod 644 {} \+
+
+# 20230716 bkw: upstream removed some C++ source files without removing them
+# from the qt5 .pro file. fixed after 20230515 release.
+[ "$VERSION" = "20230515" ] && patch -p1 < $CWD/9342c60.diff
+
+mkdir -p $PKG/usr/games $PKG/usr/man/man6 $PKG/usr/share/applications
+
+# Qt5 user interface is optional.
+if [ "${QT:-yes}" = "yes" ]; then
+ cd OSBindings/Qt
+ qmake-qt5
+ make
+ install -s $PRGNAM $PKG/usr/games/$PRGNAM-qt
+ cd -
+ # clksignal-qt man page written for this SlackBuild
+ gzip -9c < $CWD/$PRGNAM-qt.6 > $PKG/usr/man/man6/$PRGNAM-qt.6.gz
+ cat $CWD/$PRGNAM-qt.desktop > $PKG/usr/share/applications/$PRGNAM-qt.desktop
+fi
+
+cd OSBindings/SDL
+scons $MAKEFLAGS
+install -s $PRGNAM $PKG/usr/games
+cd -
+
+# fix the clksignal man page (no, I'm not going to use ansible).
+THLINE=".TH $PRGNAM 6 \\\"$SRCVER\\\" \\\"$VERSION\\\" \\\"SlackBuilds.org\\\""
+sed '/^\.TH/s,.*,'"$THLINE"',' Packaging/templates/$PRGNAM.1.j2 | \
+ gzip -9c > $PKG/usr/man/man6/$PRGNAM.6.gz
+
+# there actually are a few ROMs in here, plus lots of readme.txt.
+# one dir has the wrong capitalization.
+mkdir -p $PKG/usr/share/$SRCNAM
+mv ROMImages/AppleIIGS ROMImages/AppleIIgs
+cp -a ROMImages/* $PKG/usr/share/$SRCNAM
+
+MACICONS="OSBindings/Mac/Clock Signal/Assets.xcassets/AppIcon.appiconset/"
+for px in 16 32 64 128; do
+ size=${px}x${px}
+ dir=$PKG/usr/share/icons/hicolor/$size/apps
+ mkdir -p $dir
+ cp -a "$MACICONS/Icon$px.png" $dir/$PRGNAM.png
+done
+
+mkdir -p $PKG/usr/share/icons/hicolor/48x48/apps
+convert -resize 48x48 \
+ "$MACICONS/Icon1024.png" \
+ $PKG/usr/share/icons/hicolor/48x48/apps/$PRGNAM.png
+
+mkdir -p $PKG/usr/share/pixmaps
+ln -s ../icons/hicolor/48x48/apps/$PRGNAM.png $PKG/usr/share/pixmaps/$PRGNAM.png
+
+# include a .desktop file with Hidden=true. it won't show up in the menus,
+# because running it with no args is useless, but it will be available for
+# "Open with".
+cat $CWD/$PRGNAM.desktop > $PKG/usr/share/applications/$PRGNAM.desktop
+
+PKGDOC=$PKG/usr/doc/$PRGNAM-$VERSION
+mkdir -p $PKGDOC/html
+cp -a README.md LICENSE* $PKGDOC
+markdown_py -f $PKGDOC/html/index.html $PKGDOC/README.md
+cp -a READMEImages $PKGDOC/html
+cat $CWD/$PRGNAM.SlackBuild > $PKG/usr/doc/$PRGNAM-$VERSION/$PRGNAM.SlackBuild
+
+mkdir -p $PKG/install
+cat $CWD/slack-desc > $PKG/install/slack-desc
+cat $CWD/doinst.sh > $PKG/install/doinst.sh
+
+cd $PKG
+/sbin/makepkg -l y -c n $OUTPUT/$PRGNAM-$VERSION-$ARCH-$BUILD$TAG.$PKGTYPE
diff --git a/games/clksignal/clksignal.desktop b/games/clksignal/clksignal.desktop
new file mode 100644
index 0000000000..e84c895ffd
--- /dev/null
+++ b/games/clksignal/clksignal.desktop
@@ -0,0 +1,8 @@
+[Desktop Entry]
+Name=Clock Signal (Qt)
+Type=Application
+Exec=/usr/games/clksignal
+Icon=clksignal
+Hidden=true
+Terminal=false
+Categories=Game;Emulator;
diff --git a/games/clksignal/clksignal.info b/games/clksignal/clksignal.info
new file mode 100644
index 0000000000..a582f28bc1
--- /dev/null
+++ b/games/clksignal/clksignal.info
@@ -0,0 +1,10 @@
+PRGNAM="clksignal"
+VERSION="20230515"
+HOMEPAGE="https://github.com/TomHarte/CLK"
+DOWNLOAD="https://github.com/TomHarte/CLK/archive/2023-05-15/CLK-2023-05-15.tar.gz"
+MD5SUM="a58bf452f0c21f68c5bc90819a426bbf"
+DOWNLOAD_x86_64=""
+MD5SUM_x86_64=""
+REQUIRES=""
+MAINTAINER="B. Watson"
+EMAIL="urchlay@slackware.uk"
diff --git a/games/clksignal/doinst.sh b/games/clksignal/doinst.sh
new file mode 100644
index 0000000000..3e5691a052
--- /dev/null
+++ b/games/clksignal/doinst.sh
@@ -0,0 +1,9 @@
+if [ -x /usr/bin/update-desktop-database ]; then
+ /usr/bin/update-desktop-database -q usr/share/applications >/dev/null 2>&1
+fi
+
+if [ -e usr/share/icons/hicolor/icon-theme.cache ]; then
+ if [ -x /usr/bin/gtk-update-icon-cache ]; then
+ /usr/bin/gtk-update-icon-cache usr/share/icons/hicolor >/dev/null 2>&1
+ fi
+fi
diff --git a/games/clksignal/slack-desc b/games/clksignal/slack-desc
new file mode 100644
index 0000000000..fdfcb73423
--- /dev/null
+++ b/games/clksignal/slack-desc
@@ -0,0 +1,19 @@
+# HOW TO EDIT THIS FILE:
+# The "handy ruler" below makes it easier to edit a package description.
+# Line up the first '|' above the ':' following the base package name, and
+# the '|' on the right side marks the last column you can put a character in.
+# You must make exactly 11 lines for the formatting to be correct. It's also
+# customary to leave one space after the ':' except on otherwise blank lines.
+
+ |-----handy-ruler------------------------------------------------------|
+clksignal: clksignal (emulator for various classic computing platforms)
+clksignal:
+clksignal: CLK, also known as Clock Signal, is an emulator for tourists that
+clksignal: seeks to be invisible. Users directly launch classic software with no
+clksignal: emulator or per-emulated-machine learning curve.
+clksignal:
+clksignal: It currently emulates the Acorn Electron, Amstrad CPC, Amiga, Apple
+clksignal: II/II+/IIe, Atari 2600, Atari ST, ColecoVision, Commodore VIC-20,
+clksignal: Enterprise 64/128, 512K Mac/Mac+, MSX-1, Oric/Atmos, Sega Master
+clksignal: System, Sinclair ZX81/81, and Sinclair ZX Spectrum.
+clksignal:
diff --git a/games/clonekeen/clonekeen.SlackBuild b/games/clonekeen/clonekeen.SlackBuild
index 301ab294e1..576da09235 100644
--- a/games/clonekeen/clonekeen.SlackBuild
+++ b/games/clonekeen/clonekeen.SlackBuild
@@ -1,15 +1,20 @@
-#!/bin/sh
+#!/bin/bash
# Slackware build script for clonekeen
-# Written by B. Watson (yalhcru@gmail.com)
+# Written by B. Watson (urchlay@slackware.uk)
# Licensed under the WTFPL. See http://www.wtfpl.net/txt/copying/ for details.
+# 20230108 bkw: BUILD=3, update .desktop file.
+
+cd $(dirname $0) ; CWD=$(pwd)
+
PRGNAM=clonekeen
VERSION=${VERSION:-8.4}
-BUILD=${BUILD:-2}
+BUILD=${BUILD:-3}
TAG=${TAG:-_SBo}
+PKGTYPE=${PKGTYPE:-tgz}
if [ -z "$ARCH" ]; then
case "$( uname -m )" in
@@ -19,7 +24,11 @@ if [ -z "$ARCH" ]; then
esac
fi
-CWD=$(pwd)
+if [ ! -z "${PRINT_PACKAGE_NAME}" ]; then
+ echo "$PRGNAM-$VERSION-$ARCH-$BUILD$TAG.$PKGTYPE"
+ exit 0
+fi
+
TMP=${TMP:-/tmp/SBo}
PKG=$TMP/package-$PRGNAM
OUTPUT=${OUTPUT:-/tmp}
@@ -45,17 +54,14 @@ rm -rf $SRCDIR
tar xvf $CWD/$PRGNAM-src-${VERSION/./}.tar.gz
cd $SRCDIR
chown -R root:root .
-find -L . \
- \( -perm 777 -o -perm 775 -o -perm 750 -o -perm 711 -o -perm 555 -o -perm 511 \) \
- -exec chmod 755 {} \; -o \
- \( -perm 666 -o -perm 664 -o -perm 600 -o -perm 444 -o -perm 440 -o -perm 400 \) \
- -exec chmod 644 {} \;
+find -L . -perm /111 -a \! -perm 755 -a -exec chmod 755 {} \+ -o \
+ \! -perm /111 -a \! -perm 644 -a -exec chmod 644 {} \+
# Fix underlinking
sed -i "s|-lstdc++|-lstdc++ -lm|" src/Makefile
# Makefile doesn't use CFLAGS, ugh
-sed -i "/gcc/s/-O2/$SLKCFLAGS/" src/Makefile
+sed -i "/gcc/s/-O2/$SLKCFLAGS -fcommon/" src/Makefile
# Ugh. The src tarball ships with compiled .o files!
rm -f platform/*.o
@@ -109,4 +115,4 @@ cat $CWD/slack-desc > $PKG/install/slack-desc
cat $CWD/doinst.sh > $PKG/install/doinst.sh
cd $PKG
-/sbin/makepkg -l y -c n $OUTPUT/$PRGNAM-$VERSION-$ARCH-$BUILD$TAG.${PKGTYPE:-tgz}
+/sbin/makepkg -l y -c n $OUTPUT/$PRGNAM-$VERSION-$ARCH-$BUILD$TAG.$PKGTYPE
diff --git a/games/clonekeen/clonekeen.desktop b/games/clonekeen/clonekeen.desktop
index f915444afd..79dcba3a82 100644
--- a/games/clonekeen/clonekeen.desktop
+++ b/games/clonekeen/clonekeen.desktop
@@ -2,7 +2,7 @@
Name=CloneKeen
GenericName=Commander Keen Clone
Type=Application
-Exec=clonekeen -cheat
-Icon=clonekeen
+Exec=/usr/games/clonekeen -cheat
+Icon=/usr/share/pixmaps/clonekeen.png
Terminal=false
Categories=Game;ActionGame;
diff --git a/games/clonekeen/clonekeen.info b/games/clonekeen/clonekeen.info
index 643d30f824..70cd44cd65 100644
--- a/games/clonekeen/clonekeen.info
+++ b/games/clonekeen/clonekeen.info
@@ -1,8 +1,8 @@
PRGNAM="clonekeen"
VERSION="8.4"
-HOMEPAGE="http://clonekeen.sourceforge.net/"
-DOWNLOAD="http://downloads.sourceforge.net/clonekeen/clonekeen-src-84.tar.gz \
- http://downloads.sourceforge.net/clonekeen/CKBeta83_Bin_W32.zip \
+HOMEPAGE="https://clonekeen.sourceforge.net/"
+DOWNLOAD="https://downloads.sourceforge.net/clonekeen/clonekeen-src-84.tar.gz \
+ https://downloads.sourceforge.net/clonekeen/CKBeta83_Bin_W32.zip \
ftp://ftp.3drealms.com/share/1keen.zip"
MD5SUM="0179c34727d044f07a1c00df340134bd \
a0dfcd00f3d039ef544f344b605f83bd \
@@ -11,4 +11,4 @@ DOWNLOAD_x86_64=""
MD5SUM_x86_64=""
REQUIRES="libdynamite"
MAINTAINER="B. Watson"
-EMAIL="yalhcru@gmail.com"
+EMAIL="urchlay@slackware.uk"
diff --git a/games/colem/colem.SlackBuild b/games/colem/colem.SlackBuild
index 9ecb7fb846..59c8f932a6 100644
--- a/games/colem/colem.SlackBuild
+++ b/games/colem/colem.SlackBuild
@@ -1,11 +1,13 @@
-#!/bin/sh
+#!/bin/bash
# Slackware build script for colem
-# Written by B. Watson (yalhcru@gmail.com)
+# Written by B. Watson (urchlay@slackware.uk)
# Licensed under the WTFPL. See http://www.wtfpl.net/txt/copying/ for details.
+# 20211004 bkw: updated for 5.6.
+# 20210220 bkw: updated for 5.5.
# 20201026 bkw:
# - updated for 5.4.
# - make the slack-desc say whether or not the ROM is included.
@@ -62,10 +64,13 @@
# + run "aoss colem" to get audio working on a stock Slack 14.1 system
# with OSS modules disabled by default.
+cd $(dirname $0) ; CWD=$(pwd)
+
PRGNAM=colem
-VERSION=${VERSION:-5.4}
+VERSION=${VERSION:-5.6}
BUILD=${BUILD:-1}
TAG=${TAG:-_SBo}
+PKGTYPE=${PKGTYPE:-tgz}
if [ -z "$ARCH" ]; then
case "$( uname -m )" in
@@ -75,7 +80,11 @@ if [ -z "$ARCH" ]; then
esac
fi
-CWD=$(pwd)
+if [ ! -z "${PRINT_PACKAGE_NAME}" ]; then
+ echo "$PRGNAM-$VERSION-$ARCH-$BUILD$TAG.$PKGTYPE"
+ exit 0
+fi
+
TMP=${TMP:-/tmp/SBo}
PKG=$TMP/package-$PRGNAM
OUTPUT=${OUTPUT:-/tmp}
@@ -119,7 +128,7 @@ chown -R root:root .
find -L . -perm /111 -a \! -perm 755 -a -exec chmod 755 {} \+ -o \
\! -perm /111 -a \! -perm 644 -a -exec chmod 644 {} \+
-sed -i "s/-O2/$SLKCFLAGS/" EMULib/Rules.gcc
+sed -i "s/-O2/$SLKCFLAGS -fcommon/" EMULib/Rules.gcc
# Make the emulator look in /usr/share/colem and ~/.colem for the
# system ROMs, as well as the current directory. Without this, it's
@@ -222,4 +231,4 @@ sed "s,@INCLUDES@,$INCLUDES," $CWD/slack-desc > $PKG/install/slack-desc
cat $CWD/doinst.sh > $PKG/install/doinst.sh
cd $PKG
-/sbin/makepkg -l y -c n $OUTPUT/$PRGNAM-$VERSION-$ARCH-$BUILD$TAG.${PKGTYPE:-tgz}
+/sbin/makepkg -l y -c n $OUTPUT/$PRGNAM-$VERSION-$ARCH-$BUILD$TAG.$PKGTYPE
diff --git a/games/colem/colem.info b/games/colem/colem.info
index 712ee1cc7c..b05f92ab75 100644
--- a/games/colem/colem.info
+++ b/games/colem/colem.info
@@ -1,10 +1,10 @@
PRGNAM="colem"
-VERSION="5.4"
-HOMEPAGE="http://fms.komkon.org/ColEm/"
-DOWNLOAD="https://slackware.uk/~urchlay/src/ColEm54-Source.zip"
-MD5SUM="f46008f7d4392d3070d32b819a113ad9"
+VERSION="5.6"
+HOMEPAGE="https://fms.komkon.org/ColEm/"
+DOWNLOAD="https://slackware.uk/~urchlay/src/ColEm56-Source.zip"
+MD5SUM="8b152a5226f1994216277ff85e521741"
DOWNLOAD_x86_64=""
MD5SUM_x86_64=""
REQUIRES=""
MAINTAINER="B. Watson"
-EMAIL="yalhcru@gmail.com"
+EMAIL="urchlay@slackware.uk"
diff --git a/games/commandergenius/commandergenius.6 b/games/commandergenius/commandergenius.6
index dc848ab2cc..3aa1892bf7 100644
--- a/games/commandergenius/commandergenius.6
+++ b/games/commandergenius/commandergenius.6
@@ -1,8 +1,5 @@
.\" Man page generated from reStructuredText.
.
-.TH COMMANDERGENIUS 6 "2017-03-01" "1.9.8.7-Beta" "SlackBuilds.org"
-.SH NAME
-commandergenius \- open source engine for Commander Keen games
.
.nr rst2man-indent-level 0
.
@@ -30,18 +27,15 @@ level margin: \\n[rst2man-indent\\n[rst2man-indent-level]]
.\" new: \\n[rst2man-indent\\n[rst2man-indent-level]]
.in \\n[rst2man-indent\\n[rst2man-indent-level]]u
..
+.TH "COMMANDERGENIUS" 6 "2021-10-21" "3.0.8" "SlackBuilds.org"
+.SH NAME
+commandergenius \- open source engine for Commander Keen games
.\" RST source for commandergenius(6) man page. Convert with:
.
.\" rst2man.py commandergenius.rst > commandergenius.6
.
.\" rst2man.py comes from the SBo development/docutils package.
.
-.\" converting from pod:
-.
-.\" s/B<\([^>]*\)>/**\1**/g
-.
-.\" s/I<\([^>]*\)>/*\1*/g
-.
.SH SYNOPSIS
.sp
commandergenius [\fIdir=dir\fP] [\fIfinale=<on|off>\fP]
@@ -62,7 +56,7 @@ fan\-made mods.
This man page is a brief summary. Full documentation can be found
in:
.sp
-/usr/doc/commandergenius\-1987beta/README
+/usr/doc/commandergenius\-3.0.8/README.md
.SH OPTIONS
.INDENT 0.0
.TP
@@ -110,7 +104,7 @@ users may manually copy game data files here and add them to
.UNINDENT
.SH COPYRIGHT
.sp
-See the file /usr/doc/commandergenius\-1987beta/COPYRIGHT for license information.
+See the file /usr/doc/commandergenius\-3.0.8/COPYRIGHT for license information.
.SH AUTHORS
.sp
commandergenius was written by Gerhard Stein <\fI\%gerstrong@gmail.com\fP>.
diff --git a/games/commandergenius/commandergenius.SlackBuild b/games/commandergenius/commandergenius.SlackBuild
index 7085d6fff9..da1693a581 100644
--- a/games/commandergenius/commandergenius.SlackBuild
+++ b/games/commandergenius/commandergenius.SlackBuild
@@ -1,11 +1,15 @@
-#!/bin/sh
+#!/bin/bash
# Slackware build script for commandergenius
-# Written by B. Watson (yalhcru@gmail.com)
+# Written by B. Watson (urchlay@slackware.uk)
# Licensed under the WTFPL. See http://www.wtfpl.net/txt/copying/ for details.
+# 20230111 bkw: updated for 3.2.0
+# 20211021 bkw: updated for 3.0.8
+# 20210310 bkw: updated for 2.7.7
+# 20201224 bkw: updated for 2.7.3
# 20201111 bkw: updated for 2.6.3.1
# 20201030 bkw: updated for 2.6.3
# 20200302 bkw: updated for 2.3.9
@@ -29,10 +33,13 @@
# - use github long-form URL
# 20170122 bkw: updated for 1.9.8.1beta.
+cd $(dirname $0) ; CWD=$(pwd)
+
PRGNAM=commandergenius
-VERSION=${VERSION:-2.6.3.1}
+VERSION=${VERSION:-3.2.0}
BUILD=${BUILD:-1}
TAG=${TAG:-_SBo}
+PKGTYPE=${PKGTYPE:-tgz}
if [ -z "$ARCH" ]; then
case "$( uname -m )" in
@@ -42,7 +49,11 @@ if [ -z "$ARCH" ]; then
esac
fi
-CWD=$(pwd)
+if [ ! -z "${PRINT_PACKAGE_NAME}" ]; then
+ echo "$PRGNAM-$VERSION-$ARCH-$BUILD$TAG.$PKGTYPE"
+ exit 0
+fi
+
TMP=${TMP:-/tmp/SBo}
PKG=$TMP/package-$PRGNAM
OUTPUT=${OUTPUT:-/tmp}
@@ -74,8 +85,9 @@ mkdir -p $TMP $PKG $OUTPUT
cd $TMP
rm -rf $SRCNAM-v$VERSION
# OSX and Windows stuff takes up 31MB in /tmp, no need to extract it.
+# Also don't extract the prebuilt icotool binary (ugh).
tar xvf $CWD/$SRCNAM-v$VERSION.tar.bz2 \
- --wildcards --exclude='*/dlls' --exclude='*/Build/Xcode'
+ --wildcards --exclude='*/dlls' --exclude='*/Build/Xcode' --exclude='*/icotool'
cd $SRCNAM-v$VERSION
chown -R root:root .
@@ -84,12 +96,15 @@ find -L . -type f -a -exec chmod 644 '{}' '+'
find -L . -type d -a -exec chmod 755 '{}' '+'
# placate desktop-file-validate
-sed -i 's,Application;,,' share/$DESKTOP
+sed -i -e 's,Application;,,' \
+ -e 's,cg\.svg,'$PRGNAM',' \
+ share/$DESKTOP
mkdir -p build
cd build
- /opt/cmake-202x/bin/cmake \
+ cmake \
-DUSE_SDL2=yes \
+ -DDOCDIR=/usr/doc/$PRGNAM-$VERSION \
-DGAMES_SHAREDIR:STRING=/usr/share/games \
-DCMAKE_C_FLAGS:STRING="$SLKCFLAGS" \
-DCMAKE_CXX_FLAGS:STRING="$SLKCFLAGS" \
@@ -101,32 +116,34 @@ cd build
make install/strip DESTDIR=$PKG
cd ..
+# clean up the icon names
+for dir in $PKG/usr/share/icons/hicolor/*; do
+ px="$( basename $dir | cut -dx -f1 )"
+ mv $dir/apps/cg.$px.png $dir/apps/$PRGNAM.png
+done
+
# upstream installs 2 identical-looking (but not byte-identical) icons
-rm -f $PKG/usr/share/icons/hicolor/512x512/apps/CGLogo.png
-ln -s ../../../../games/$PRGNAM/cglogo512.png \
- $PKG/usr/share/icons/hicolor/512x512/apps/CGLogo.png
+rm -f $PKG/usr/share/games/$PRGNAM/CGLogo.png
+ln -s ../../icons/hicolor/512x512/apps/$PRGNAM.png \
+ $PKG/usr/share/games/$PRGNAM/CGLogo.png
+
+mkdir -p $PKG/usr/share/pixmaps
+ln -s ../icons/hicolor/48x48/apps/$PRGNAM.png $PKG/usr/share/pixmaps/$PRGNAM.png
# grrrr. don't force command-line users to remember the name is CGeniusExe
ln -s $EXENAME $PKG/usr/games/$PRGNAM
-# the High Quality Pack. this is redundant for Keen 1 and 4 (just download
-# the Special versions of these games), so we only install the data for
-# 2 and 3. strace shows the files are being loaded, but TBH I haven't
-# played these games enough to notice the difference with/without the HQP.
-rm -rf hqp/games/keen1 hqp/games/keen4
+# the High Quality Pack.
cp -a hqp/* $PKG/usr/share/games/$PRGNAM
+mv $PKG/usr/share/games/$PRGNAM/Readme_hqp.txt $PKG/usr/doc/$PRGNAM-$VERSION
# man page written for this SlackBuild.
mkdir -p $PKG/usr/man/man6
gzip -9c < $CWD/$PRGNAM.6 > $PKG/usr/man/man6/$PRGNAM.6.gz
ln -s $PRGNAM.6.gz $PKG/usr/man/man6/$EXENAME.6.gz
-# upstream installs most of the docs in /usr/share/games/$PRGNAM...
-mkdir -p $PKG/usr/doc/$PRGNAM-$VERSION
+# most of the docs were already installed.
cp -a COPYRIGHT $PKG/usr/doc/$PRGNAM-$VERSION
-for i in README changelog.txt Readme_hqp.txt; do
- ln -s ../../share/games/$PRGNAM/$i $PKG/usr/doc/$PRGNAM-$VERSION
-done
cat $CWD/$PRGNAM.SlackBuild > $PKG/usr/doc/$PRGNAM-$VERSION/$PRGNAM.SlackBuild
mkdir -p $PKG/install
@@ -134,4 +151,4 @@ cat $CWD/slack-desc > $PKG/install/slack-desc
cat $CWD/doinst.sh > $PKG/install/doinst.sh
cd $PKG
-/sbin/makepkg -l y -c n $OUTPUT/$PRGNAM-$VERSION-$ARCH-$BUILD$TAG.${PKGTYPE:-tgz}
+/sbin/makepkg -l y -c n $OUTPUT/$PRGNAM-$VERSION-$ARCH-$BUILD$TAG.$PKGTYPE
diff --git a/games/commandergenius/commandergenius.info b/games/commandergenius/commandergenius.info
index df9147a14d..763aa3049c 100644
--- a/games/commandergenius/commandergenius.info
+++ b/games/commandergenius/commandergenius.info
@@ -1,10 +1,10 @@
PRGNAM="commandergenius"
-VERSION="2.6.3.1"
+VERSION="3.2.0"
HOMEPAGE="https://gitlab.com/Dringgstein/Commander-Genius"
-DOWNLOAD="https://gitlab.com/Dringgstein/Commander-Genius/-/archive/v2.6.3.1/Commander-Genius-v2.6.3.1.tar.bz2"
-MD5SUM="341168cfa1fe2a06d8349afe8c4b1acf"
+DOWNLOAD="https://gitlab.com/Dringgstein/Commander-Genius/-/archive/v3.2.0/Commander-Genius-v3.2.0.tar.bz2"
+MD5SUM="a23c2069130947818c5addb4ad1e80ac"
DOWNLOAD_x86_64=""
MD5SUM_x86_64=""
-REQUIRES="SDL2_ttf SDL2_image SDL2_mixer cmake-202x"
+REQUIRES=""
MAINTAINER="B. Watson"
-EMAIL="yalhcru@gmail.com"
+EMAIL="urchlay@slackware.uk"
diff --git a/games/commandergenius/commandergenius.rst b/games/commandergenius/commandergenius.rst
index 47821741d1..76989b730d 100644
--- a/games/commandergenius/commandergenius.rst
+++ b/games/commandergenius/commandergenius.rst
@@ -2,14 +2,9 @@
.. rst2man.py commandergenius.rst > commandergenius.6
.. rst2man.py comes from the SBo development/docutils package.
-.. |version| replace:: 1.9.8.7-Beta
-.. |dotlessversion| replace:: 1987beta
+.. |version| replace:: 3.0.8
.. |date| date::
-.. converting from pod:
-.. s/B<\([^>]*\)>/**\1**/g
-.. s/I<\([^>]*\)>/*\1*/g
-
===============
commandergenius
===============
@@ -46,7 +41,7 @@ fan-made mods.
This man page is a brief summary. Full documentation can be found
in:
-/usr/doc/commandergenius-|dotlessversion|/README
+/usr/doc/commandergenius-|version|/README.md
OPTIONS
=======
@@ -96,7 +91,7 @@ FILES
COPYRIGHT
=========
-See the file /usr/doc/commandergenius-|dotlessversion|/COPYRIGHT for license information.
+See the file /usr/doc/commandergenius-|version|/COPYRIGHT for license information.
AUTHORS
=======
diff --git a/games/connectagram/connectagram.SlackBuild b/games/connectagram/connectagram.SlackBuild
index e9bc2dfad8..9ed7fc2d12 100644
--- a/games/connectagram/connectagram.SlackBuild
+++ b/games/connectagram/connectagram.SlackBuild
@@ -1,4 +1,4 @@
-#!/bin/sh
+#!/bin/bash
# Copyright (c) 2013-2019 LEVAI Daniel
# All rights reserved.
@@ -27,26 +27,36 @@
# Build script for connectagram
+cd $(dirname $0) ; CWD=$(pwd)
+
PRGNAM=connectagram
VERSION=${VERSION:-1.2.9}
BUILD=${BUILD:-1}
TAG=${TAG:-_SBo}
+PKGTYPE=${PKGTYPE:-tgz}
if [ -z "$ARCH" ]; then
case "$( uname -m )" in
- i?86) ARCH=i486 ;;
+ i?86) ARCH=i586 ;;
arm*) ARCH=arm ;;
*) ARCH=$( uname -m ) ;;
esac
fi
-CWD=$(pwd)
+# If the variable PRINT_PACKAGE_NAME is set, then this script will report what
+# the name of the created package would be, and then exit. This information
+# could be useful to other scripts.
+if [ ! -z "${PRINT_PACKAGE_NAME}" ]; then
+ echo "$PRGNAM-$VERSION-$ARCH-$BUILD$TAG.$PKGTYPE"
+ exit 0
+fi
+
TMP=${TMP:-/tmp/SBo}
PKG=$TMP/package-$PRGNAM
OUTPUT=${OUTPUT:-/tmp}
-if [ "$ARCH" = "i486" ];then
- SLKCFLAGS="-O2 -march=i486 -mtune=i686"
+if [ "$ARCH" = "i586" ];then
+ SLKCFLAGS="-O2 -march=i586 -mtune=i686"
LIBDIRSUFFIX=""
elif [ "$ARCH" = "i686" ]; then
SLKCFLAGS="-O2 -march=i686 -mtune=i686"
@@ -99,4 +109,4 @@ cat $CWD/slack-desc > $PKG/install/slack-desc
cat $CWD/doinst.sh > $PKG/install/doinst.sh
cd $PKG
-/sbin/makepkg -l y -c n $OUTPUT/$PRGNAM-$VERSION-$ARCH-$BUILD$TAG.${PKGTYPE:-tgz}
+/sbin/makepkg -l y -c n $OUTPUT/$PRGNAM-$VERSION-$ARCH-$BUILD$TAG.$PKGTYPE
diff --git a/games/connectagram/connectagram.info b/games/connectagram/connectagram.info
index 853f17a0be..4617434e27 100644
--- a/games/connectagram/connectagram.info
+++ b/games/connectagram/connectagram.info
@@ -5,6 +5,6 @@ DOWNLOAD="https://gottcode.org/connectagram/connectagram-1.2.9-src.tar.bz2"
MD5SUM="e703f1bee7d6c331800c1131171101ca"
DOWNLOAD_x86_64=""
MD5SUM_x86_64=""
-REQUIRES="qt5"
+REQUIRES=""
MAINTAINER="LEVAI Daniel"
EMAIL="leva@ecentrum.hu"
diff --git a/games/conquest/conquest.SlackBuild b/games/conquest/conquest.SlackBuild
index 0c2281cb80..d1c4fef2c0 100644
--- a/games/conquest/conquest.SlackBuild
+++ b/games/conquest/conquest.SlackBuild
@@ -1,4 +1,4 @@
-#!/bin/sh
+#!/bin/bash
# Slackware build script for conquest
@@ -22,10 +22,13 @@
# OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF THIS SOFTWARE, EVEN IF
# ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
+cd $(dirname $0) ; CWD=$(pwd)
+
PRGNAM=conquest
VERSION=${VERSION:-9.1}
BUILD=${BUILD:-1}
TAG=${TAG:-_SBo}
+PKGTYPE=${PKGTYPE:-tgz}
if [ -z "$ARCH" ]; then
case "$( uname -m )" in
@@ -35,7 +38,14 @@ if [ -z "$ARCH" ]; then
esac
fi
-CWD=$(pwd)
+# If the variable PRINT_PACKAGE_NAME is set, then this script will report what
+# the name of the created package would be, and then exit. This information
+# could be useful to other scripts.
+if [ ! -z "${PRINT_PACKAGE_NAME}" ]; then
+ echo "$PRGNAM-$VERSION-$ARCH-$BUILD$TAG.$PKGTYPE"
+ exit 0
+fi
+
TMP=${TMP:-/tmp/SBo}
PKG=$TMP/package-$PRGNAM
OUTPUT=${OUTPUT:-/tmp}
@@ -112,4 +122,4 @@ cat $CWD/slack-desc > $PKG/install/slack-desc
cat $CWD/doinst.sh > $PKG/install/doinst.sh
cd $PKG
-/sbin/makepkg -l y -c n $OUTPUT/$PRGNAM-$VERSION-$ARCH-$BUILD$TAG.${PKGTYPE:-tgz}
+/sbin/makepkg -l y -c n $OUTPUT/$PRGNAM-$VERSION-$ARCH-$BUILD$TAG.$PKGTYPE
diff --git a/games/cosmic_assault/cosmic_assault.SlackBuild b/games/cosmic_assault/cosmic_assault.SlackBuild
index 913365143c..b09074ffd6 100644
--- a/games/cosmic_assault/cosmic_assault.SlackBuild
+++ b/games/cosmic_assault/cosmic_assault.SlackBuild
@@ -1,19 +1,33 @@
-#!/bin/sh
+#!/bin/bash
# Slackware build script for cosmic_assault
-# Written by B. Watson (yalhcru@gmail.com)
+# Written by B. Watson (urchlay@slackware.uk)
# Licensed under the WTFPL. See http://www.wtfpl.net/txt/copying/ for details.
+# 20230107 bkw: BUILD=3, fix icon size.
+# 20211228 bkw: BUILD=2.
+# - convert .mod music to .ogg, since -current's SDL2_mixer (and thus
+# pygame) utterly lack MOD music support.
+# - use pygame.SCALED to scale the game to the desktop resolution.
+# - new-style icon.
+
+cd $(dirname $0) ; CWD=$(pwd)
+
PRGNAM=cosmic_assault
VERSION=${VERSION:-1.1}
-BUILD=${BUILD:-1}
+BUILD=${BUILD:-2}
TAG=${TAG:-_SBo}
+PKGTYPE=${PKGTYPE:-tgz}
ARCH=noarch
-CWD=$(pwd)
+if [ ! -z "${PRINT_PACKAGE_NAME}" ]; then
+ echo "$PRGNAM-$VERSION-$ARCH-$BUILD$TAG.$PKGTYPE"
+ exit 0
+fi
+
TMP=${TMP:-/tmp/SBo}
PKG=$TMP/package-$PRGNAM
OUTPUT=${OUTPUT:-/tmp}
@@ -29,11 +43,22 @@ rm -rf $PRGNAM
tar xvf $CWD/$SRCNAM-$VERSION.tar.gz
cd $PRGNAM
chown -R root:root .
-find -L . \
- \( -perm 777 -o -perm 775 -o -perm 750 -o -perm 711 -o -perm 555 \
- -o -perm 511 \) -exec chmod 755 {} \; -o \
- \( -perm 666 -o -perm 664 -o -perm 640 -o -perm 600 -o -perm 444 \
- -o -perm 440 -o -perm 400 \) -exec chmod 644 {} \;
+find -L . -perm /111 -a \! -perm 755 -a -exec chmod 755 {} \+ -o \
+ \! -perm /111 -a \! -perm 644 -a -exec chmod 644 {} \+
+
+# 20211228 bkw: this makes the game behave better as a fullscreen app.
+sed -i '/winstyle/s,FULLSCREEN,pygame.SCALED | pygame.FULLSCREEN,' $PRGNAM.py
+
+# 20211228 bkw: no tracker music support in SDL2_mixer (yet?). This
+# workaround is OK, but it bloats the package by 500% (from ~1MB to
+# ~5MB, which is still not so large by modern standards).
+sed -i \
+ -e 's,jene\.mod,jene.ogg,' \
+ -e 's,beyond\.s3m,beyond.ogg,' \
+ $PRGNAM.py
+timidity -Ow1sl -id -o- data/jene.mod | oggenc -Q -b 64 -o data/jene.ogg -
+timidity -Ow1sl -id -o- data/beyond.s3m | oggenc -Q -b 64 -o data/beyond.ogg -
+rm -f data/jene.mod data/beyond.s3m
mkdir -p $PKG/usr/games $PKG/usr/share/games/$PRGNAM
install -m0755 $PRGNAM.py $PKG/usr/share/games/$PRGNAM
@@ -42,8 +67,10 @@ cp -a data $PKG/usr/share/games/$PRGNAM
# icon made from game data image:
# convert -scale 64x64 data/newship.gif cosmic_assault.png
-mkdir -p $PKG/usr/share/pixmaps
-cat $CWD/$PRGNAM.png > $PKG/usr/share/pixmaps/$PRGNAM.png
+# ...and then fixed up with the gimp :(
+mkdir -p $PKG/usr/share/icons/hicolor/64x64/apps $PKG/usr/share/pixmaps
+cat $CWD/$PRGNAM.png > $PKG/usr/share/icons/hicolor/64x64/apps/$PRGNAM.png
+ln -s ../icons/hicolor/64x64/apps/$PRGNAM.png $PKG/usr/share/pixmaps/$PRGNAM.png
# .desktop written for this build
mkdir -p $PKG/usr/share/applications
@@ -59,4 +86,4 @@ cat $CWD/slack-desc > $PKG/install/slack-desc
cat $CWD/doinst.sh > $PKG/install/doinst.sh
cd $PKG
-/sbin/makepkg -l y -c n $OUTPUT/$PRGNAM-$VERSION-$ARCH-$BUILD$TAG.${PKGTYPE:-tgz}
+/sbin/makepkg -l y -c n $OUTPUT/$PRGNAM-$VERSION-$ARCH-$BUILD$TAG.$PKGTYPE
diff --git a/games/cosmic_assault/cosmic_assault.info b/games/cosmic_assault/cosmic_assault.info
index 2784773ffa..f9a432ff0d 100644
--- a/games/cosmic_assault/cosmic_assault.info
+++ b/games/cosmic_assault/cosmic_assault.info
@@ -5,6 +5,6 @@ DOWNLOAD="http://ponce.cc/slackware/sources/repo/Cosmic_Assault-1.1.tar.gz"
MD5SUM="901ab59405f1fcf0f48b441218dc579c"
DOWNLOAD_x86_64=""
MD5SUM_x86_64=""
-REQUIRES="pygame"
+REQUIRES="python2-pygame TiMidity++"
MAINTAINER="B. Watson"
-EMAIL="yalhcru@gmail.com"
+EMAIL="urchlay@slackware.uk"
diff --git a/games/cosmic_assault/cosmic_assault.png b/games/cosmic_assault/cosmic_assault.png
index d96ac85475..de1d1d6423 100644
--- a/games/cosmic_assault/cosmic_assault.png
+++ b/games/cosmic_assault/cosmic_assault.png
Binary files differ
diff --git a/games/cosmic_assault/doinst.sh b/games/cosmic_assault/doinst.sh
index 5fb28930db..3e5691a052 100644
--- a/games/cosmic_assault/doinst.sh
+++ b/games/cosmic_assault/doinst.sh
@@ -1,3 +1,9 @@
if [ -x /usr/bin/update-desktop-database ]; then
/usr/bin/update-desktop-database -q usr/share/applications >/dev/null 2>&1
fi
+
+if [ -e usr/share/icons/hicolor/icon-theme.cache ]; then
+ if [ -x /usr/bin/gtk-update-icon-cache ]; then
+ /usr/bin/gtk-update-icon-cache usr/share/icons/hicolor >/dev/null 2>&1
+ fi
+fi
diff --git a/games/cosmosmash/cosmosmash.SlackBuild b/games/cosmosmash/cosmosmash.SlackBuild
index c18c7d212d..c8e12d3d65 100644
--- a/games/cosmosmash/cosmosmash.SlackBuild
+++ b/games/cosmosmash/cosmosmash.SlackBuild
@@ -1,15 +1,18 @@
-#!/bin/sh
+#!/bin/bash
# Slackware build script for cosmosmash
-# Written by B. Watson (yalhcru@gmail.com)
+# Written by B. Watson (urchlay@slackware.uk)
# Licensed under the WTFPL. See http://www.wtfpl.net/txt/copying/ for details.
+cd $(dirname $0) ; CWD=$(pwd)
+
PRGNAM=cosmosmash
-VERSION=${VERSION:-1.4.7}
+VERSION=${VERSION:-1.4.8}
BUILD=${BUILD:-1}
TAG=${TAG:-_SBo}
+PKGTYPE=${PKGTYPE:-tgz}
if [ -z "$ARCH" ]; then
case "$( uname -m )" in
@@ -19,7 +22,11 @@ if [ -z "$ARCH" ]; then
esac
fi
-CWD=$(pwd)
+if [ ! -z "${PRINT_PACKAGE_NAME}" ]; then
+ echo "$PRGNAM-$VERSION-$ARCH-$BUILD$TAG.$PKGTYPE"
+ exit 0
+fi
+
TMP=${TMP:-/tmp/SBo}
PKG=$TMP/package-$PRGNAM
OUTPUT=${OUTPUT:-/tmp}
@@ -47,11 +54,8 @@ rm -rf $PRGNAM-$VERSION
tar xvf $CWD/$PRGNAM-$VERSION.tar.gz
cd $PRGNAM-$VERSION
chown -R root:root .
-find -L . \
- \( -perm 777 -o -perm 775 -o -perm 750 -o -perm 711 -o -perm 555 \
- -o -perm 511 \) -exec chmod 755 {} \; -o \
- \( -perm 666 -o -perm 664 -o -perm 640 -o -perm 600 -o -perm 444 \
- -o -perm 440 -o -perm 400 \) -exec chmod 644 {} \;
+find -L . -perm /111 -a \! -perm 755 -a -exec chmod 755 {} \+ -o \
+ \! -perm /111 -a \! -perm 644 -a -exec chmod 644 {} \+
CFLAGS="$SLKCFLAGS" \
CXXFLAGS="$SLKCFLAGS" \
@@ -84,4 +88,4 @@ cat $CWD/slack-desc > $PKG/install/slack-desc
cat $CWD/doinst.sh > $PKG/install/doinst.sh
cd $PKG
-/sbin/makepkg -l y -c n $OUTPUT/$PRGNAM-$VERSION-$ARCH-$BUILD$TAG.${PKGTYPE:-tgz}
+/sbin/makepkg -l y -c n $OUTPUT/$PRGNAM-$VERSION-$ARCH-$BUILD$TAG.$PKGTYPE
diff --git a/games/cosmosmash/cosmosmash.info b/games/cosmosmash/cosmosmash.info
index cb0c9edf8d..61aabdbcdd 100644
--- a/games/cosmosmash/cosmosmash.info
+++ b/games/cosmosmash/cosmosmash.info
@@ -1,10 +1,10 @@
PRGNAM="cosmosmash"
-VERSION="1.4.7"
+VERSION="1.4.8"
HOMEPAGE="http://perso.b2b2c.ca/~sarrazip/dev/cosmosmash.html"
-DOWNLOAD="https://slackware.uk/~urchlay/src/cosmosmash-1.4.7.tar.gz"
-MD5SUM="f0c040b7dca95582e1b77da70d0cbf4a"
+DOWNLOAD="https://slackware.uk/~urchlay/src/cosmosmash-1.4.8.tar.gz"
+MD5SUM="5ae2d6415b0ac1b44baee4a04280b354"
DOWNLOAD_x86_64=""
MD5SUM_x86_64=""
REQUIRES="flatzebra"
MAINTAINER="B. Watson"
-EMAIL="yalhcru@gmail.com"
+EMAIL="urchlay@slackware.uk"
diff --git a/games/cowsay/cowsay.SlackBuild b/games/cowsay/cowsay.SlackBuild
index 6c96ce648f..3e04332fa9 100644
--- a/games/cowsay/cowsay.SlackBuild
+++ b/games/cowsay/cowsay.SlackBuild
@@ -1,10 +1,10 @@
-#!/bin/sh
+#!/bin/bash
# Slackware build script for cowsay
# Written by David Miller dave@frop.net
# Modified by the slackbuilds.org project.
-# Copyright 2017 Johannes Schoepfer, Germany
+# Copyright 2017-2023 Johannes Schoepfer, Germany
# All rights reserved.
#
# Redistribution and use of this script, with or without modification, is
@@ -24,13 +24,20 @@
# OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF THIS SOFTWARE, EVEN IF
# ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
+cd $(dirname $0) ; CWD=$(pwd)
+
PRGNAM=cowsay
-VERSION=${VERSION:-3.03}
+VERSION=${VERSION:-3.7.0}
ARCH=noarch
BUILD=${BUILD:-1}
TAG=${TAG:-_SBo}
+PKGTYPE=${PKGTYPE:-tgz}
+
+if [ ! -z "${PRINT_PACKAGE_NAME}" ]; then
+ echo "$PRGNAM-$VERSION-$ARCH-$BUILD$TAG.$PKGTYPE"
+ exit 0
+fi
-CWD=$(pwd)
TMP=${TMP:-/tmp/SBo}
PKG=$TMP/package-$PRGNAM
OUTPUT=${OUTPUT:-/tmp}
@@ -50,10 +57,25 @@ find -L . \
\( -perm 666 -o -perm 664 -o -perm 640 -o -perm 600 -o -perm 444 \
-o -perm 440 -o -perm 400 \) -exec chmod 644 {} \;
-patch -p1 < $CWD/cowsay.SlackBuild.patch
+make install prefix=$PKG/usr
+mv $PKG/usr/share/man $PKG/usr
-DESTDIR=$PKG \
-sh ./install.sh /usr
+# add bob cow
+cat << 'EOF' > $PKG/usr/share/cowsay/cows/bob.cow
+##
+## Slackware bob cow, probably by David Miller
+##
+$the_cow = <<"EOC";
+ $thoughts ___
+ $thoughts /_ _\\
+ $thoughts |/ ~ \\|
+ |'-.-`|
+ (|e|e|?
+ `._^_,'
+ \\\\=//
+ U/_/
+EOC
+EOF
find $PKG | xargs file | grep -e "executable" -e "shared object" | grep ELF \
| cut -f 1 -d : | xargs strip --strip-unneeded 2> /dev/null || true
@@ -63,7 +85,7 @@ for i in $( find $PKG/usr/man -type l ) ; do ln -s $( readlink $i ).gz $i.gz ; r
mkdir -p $PKG/usr/doc/$PRGNAM-$VERSION
cp -a \
- ChangeLog INSTALL LICENSE MANIFEST README pgp_public_key.txt \
+ ChangeLog LICENSE.txt README \
$PKG/usr/doc/$PRGNAM-$VERSION
cat $CWD/$PRGNAM.SlackBuild > $PKG/usr/doc/$PRGNAM-$VERSION/$PRGNAM.SlackBuild
@@ -71,4 +93,4 @@ mkdir -p $PKG/install
cat $CWD/slack-desc > $PKG/install/slack-desc
cd $PKG
-/sbin/makepkg -l y -c n $OUTPUT/$PRGNAM-$VERSION-$ARCH-$BUILD$TAG.${PKGTYPE:-tgz}
+/sbin/makepkg -l y -c n $OUTPUT/$PRGNAM-$VERSION-$ARCH-$BUILD$TAG.$PKGTYPE
diff --git a/games/cowsay/cowsay.SlackBuild.patch b/games/cowsay/cowsay.SlackBuild.patch
deleted file mode 100644
index 46e622d983..0000000000
--- a/games/cowsay/cowsay.SlackBuild.patch
+++ /dev/null
@@ -1,91 +0,0 @@
-diff -urN cowsay-3.03.old/cows/bob.cow cowsay-3.03.new/cows/bob.cow
---- cowsay-3.03.old/cows/bob.cow 1969-12-31 18:00:00.000000000 -0600
-+++ cowsay-3.03.new/cows/bob.cow 2009-12-23 13:57:40.000000000 -0600
-@@ -0,0 +1,10 @@
-+$the_cow = <<"EOC";
-+ $thoughts ___
-+ $thoughts /_ _\\
-+ $thoughts |/ ~ \\|
-+ |'-.-`|
-+ (|e|e|?
-+ `._^_,'
-+ \\\\=//
-+ U/_/
-+EOC
-diff -urN cowsay-3.03.old/cowsay cowsay-3.03.new/cowsay
---- cowsay-3.03.old/cowsay 2000-05-19 20:29:49.000000000 -0500
-+++ cowsay-3.03.new/cowsay 2009-12-23 11:32:29.000000000 -0600
-@@ -16,7 +16,7 @@
- $progname = basename($0);
- $eyes = "oo";
- $tongue = " ";
--$cowpath = $ENV{'COWPATH'} || '%PREFIX%/share/cows';
-+$cowpath = $ENV{'COWPATH'} || '/usr/share/games/cows';
- @message = ();
- $thoughts = "";
-
-diff -urN cowsay-3.03.old/cowsay.1 cowsay-3.03.new/cowsay.1
---- cowsay-3.03.old/cowsay.1 1999-11-04 13:50:40.000000000 -0600
-+++ cowsay-3.03.new/cowsay.1 2009-12-23 13:38:08.000000000 -0600
-@@ -149,12 +149,12 @@
- .B PATH or
- .BR MANPATH .
- It should always contain the
--.B /usr/local/share/cows
-+.B /usr/share/games/cows
- directory, or at least a directory with a file called
- .B default.cow
- in it.
- .SH FILES
--.B %PREFIX%/share/cows
-+.B /usr/share/games/cows
- holds a sample set of cowfiles. If your
- .B COWPATH
- is not explicitly set, it automatically contains this directory.
-diff -urN cowsay-3.03.old/install.sh cowsay-3.03.new/install.sh
---- cowsay-3.03.old/install.sh 1999-11-01 14:19:21.000000000 -0600
-+++ cowsay-3.03.new/install.sh 2009-12-23 11:31:34.000000000 -0600
-@@ -67,26 +67,26 @@
- echo Okay, time to install this puppy.
-
- echo s,%BANGPERL%,!$usethisperl,\; > install.pl
--echo s,%PREFIX%,$PREFIX,\; >> install.pl
-+#echo s,%PREFIX%,$PREFIX,\; >> install.pl
- set -x
--mkdir -p $PREFIX/bin || (mkdir $PREFIX; mkdir $PREFIX/bin)
--$usethisperl -p install.pl cowsay > $PREFIX/bin/cowsay
--chmod a+x $PREFIX/bin/cowsay
--ln -s cowsay $PREFIX/bin/cowthink
--mkdir -p $PREFIX/man/man1 || ($mkdir $PREFIX; mkdir $PREFIX/man; mkdir $PREFIX/man/man1)
--$usethisperl -p install.pl cowsay.1 > $PREFIX/man/man1/cowsay.1
--chmod a+r $PREFIX/man/man1/cowsay.1
--ln -s cowsay.1 $PREFIX/man/man1/cowthink.1
--mkdir -p $PREFIX/share/cows || (mkdir $PREFIX; mkdir $PREFIX/share; mkdir $PREFIX/share/cows)
--tar -cf - $filelist | (cd $PREFIX/share && tar -xvf -)
-+mkdir -p $DESTDIR/$PREFIX/games || (mkdir $DESTDIR/$PREFIX; mkdir $DESTDIR/$PREFIX/games)
-+$usethisperl -p install.pl cowsay > $DESTDIR/$PREFIX/games/cowsay
-+chmod a+x $DESTDIR/$PREFIX/games/cowsay
-+ln -s cowsay $DESTDIR/$PREFIX/games/cowthink
-+mkdir -p $DESTDIR/$PREFIX/man/man1 || ($mkdir $DESTDIR/$PREFIX; mkdir $DESTDIR/$PREFIX/man; mkdir $DESTDIR/$PREFIX/man/man1)
-+$usethisperl -p install.pl cowsay.1 > $DESTDIR/$PREFIX/man/man1/cowsay.1
-+chmod a+r $DESTDIR/$PREFIX/man/man1/cowsay.1
-+ln -s cowsay.1 $DESTDIR/$PREFIX/man/man1/cowthink.1
-+mkdir -p $DESTDIR/$PREFIX/share/games/cows || (mkdir $DESTDIR/$PREFIX; mkdir $DESTDIR/$PREFIX/share; mkdir $DESTDIR/$PREFIX/share/games; mkdir $DESTDIR/$PREFIX/share/games/cows)
-+tar -cf - $filelist | (cd $DESTDIR/$PREFIX/share/games && tar -xvf -)
- set +x
-
--echo Okay, let us see if the install actually worked.
-+#echo Okay, let us see if the install actually worked.
-
--if [ ! -f $PREFIX/share/cows/default.cow ]; then
-- echo The default cow file did not make it across!
-- echo Ooops, it failed...sorry!
-- exit 1
--fi
-+#if [ ! -f $PREFIX/share/cows/default.cow ]; then
-+# echo The default cow file did not make it across!
-+# echo Ooops, it failed...sorry!
-+# exit 1
-+#fi
-
- echo Installation complete! Enjoy the cows!
diff --git a/games/cowsay/cowsay.info b/games/cowsay/cowsay.info
index 14a6c2680e..99a1bd3755 100644
--- a/games/cowsay/cowsay.info
+++ b/games/cowsay/cowsay.info
@@ -1,8 +1,8 @@
PRGNAM="cowsay"
-VERSION="3.03"
+VERSION="3.7.0"
HOMEPAGE="https://github.com/schacon/cowsay/"
-DOWNLOAD="https://src.fedoraproject.org/repo/pkgs/cowsay/cowsay-3.03.tar.gz/b29169797359420dadb998079021a494/cowsay-3.03.tar.gz"
-MD5SUM="b29169797359420dadb998079021a494"
+DOWNLOAD="https://github.com/cowsay-org/cowsay/archive/v3.7.0/cowsay-3.7.0.tar.gz"
+MD5SUM="4603b5f1b5fad6bd7a57951027c6e6a8"
DOWNLOAD_x86_64=""
MD5SUM_x86_64=""
REQUIRES=""
diff --git a/games/cpat/cpat.SlackBuild b/games/cpat/cpat.SlackBuild
index 748abe08be..b2717f91b2 100644
--- a/games/cpat/cpat.SlackBuild
+++ b/games/cpat/cpat.SlackBuild
@@ -1,11 +1,18 @@
-#!/bin/sh
+#!/bin/bash
# Slackware build script for cpat
# Written by Dan-Simon Myrland <dansimon@radiotube.org>
+# 20220220 bkw: Modified by SlackBuilds.org, BUILD=2:
+# - fix 15.0 build.
+# - don't install useless/empty files in docdir.
+
+cd $(dirname $0) ; CWD=$(pwd)
+
PRGNAM=cpat
VERSION=${VERSION:-1.4.1}
-BUILD=${BUILD:-1}
+BUILD=${BUILD:-2}
TAG=${TAG:-_SBo}
+PKGTYPE=${PKGTYPE:-tgz}
if [ -z "$ARCH" ]; then
case "$( uname -m )" in
@@ -15,7 +22,11 @@ if [ -z "$ARCH" ]; then
esac
fi
-CWD=$(pwd)
+if [ ! -z "${PRINT_PACKAGE_NAME}" ]; then
+ echo "$PRGNAM-$VERSION-$ARCH-$BUILD$TAG.$PKGTYPE"
+ exit 0
+fi
+
TMP=${TMP:-/tmp/SBo}
PKG=$TMP/package-$PRGNAM
OUTPUT=${OUTPUT:-/tmp}
@@ -45,9 +56,11 @@ cd $PRGNAM-$VERSION
chown -R root:root .
find -L . \
\( -perm 777 -o -perm 775 -o -perm 750 -o -perm 711 -o -perm 555 \
- -o -perm 511 \) -exec chmod 755 {} \; -o \
+ -o -perm 511 \) -exec chmod 755 {} \+ -o \
\( -perm 666 -o -perm 664 -o -perm 640 -o -perm 600 -o -perm 444 \
- -o -perm 440 -o -perm 400 \) -exec chmod 644 {} \;
+ -o -perm 440 -o -perm 400 \) -exec chmod 644 {} \+
+
+SLKCFLAGS+=" -fcommon"
CFLAGS="$SLKCFLAGS" \
CXXFLAGS="$SLKCFLAGS" \
@@ -69,11 +82,12 @@ for i in $( find $PKG/usr/man -type l ) ; do ln -s $( readlink $i ).gz $i.gz ; r
mkdir -p $PKG/usr/doc/$PRGNAM-$VERSION
-cp -a AUTHORS COPYING ChangeLog INSTALL NEWS README $PKG/usr/doc/$PRGNAM-$VERSION
+# NEWS is a 0-byte placeholder.
+cp -a AUTHORS COPYING ChangeLog README $PKG/usr/doc/$PRGNAM-$VERSION
cat $CWD/$PRGNAM.SlackBuild > $PKG/usr/doc/$PRGNAM-$VERSION/$PRGNAM.SlackBuild
mkdir -p $PKG/install
cat $CWD/slack-desc > $PKG/install/slack-desc
cd $PKG
-/sbin/makepkg -l y -c n $OUTPUT/$PRGNAM-$VERSION-$ARCH-$BUILD$TAG.${PKGTYPE:-tgz}
+/sbin/makepkg -l y -c n $OUTPUT/$PRGNAM-$VERSION-$ARCH-$BUILD$TAG.$PKGTYPE
diff --git a/games/crack-attack/crack-attack.SlackBuild b/games/crack-attack/crack-attack.SlackBuild
index 5fd548554e..1d97535a9b 100644
--- a/games/crack-attack/crack-attack.SlackBuild
+++ b/games/crack-attack/crack-attack.SlackBuild
@@ -1,4 +1,4 @@
-#!/bin/sh
+#!/bin/bash
# Slackware build script for crack-attack
@@ -22,10 +22,16 @@
# OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF THIS SOFTWARE, EVEN IF
# ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
+# 20220222 bkw: Modified by SlackBuilds.org, BUILD=2: stop installing
+# bogus libenet.a and enet includes that overwrite the ones from enet!
+
+cd $(dirname $0) ; CWD=$(pwd)
+
PRGNAM=crack-attack
VERSION=${VERSION:-1.1.15_cvs_01}
-BUILD=${BUILD:-1}
+BUILD=${BUILD:-2}
TAG=${TAG:-_SBo}
+PKGTYPE=${PKGTYPE:-tgz}
SRCVER=$(echo $VERSION | tr _ -)
@@ -37,7 +43,11 @@ if [ -z "$ARCH" ]; then
esac
fi
-CWD=$(pwd)
+if [ ! -z "${PRINT_PACKAGE_NAME}" ]; then
+ echo "$PRGNAM-$VERSION-$ARCH-$BUILD$TAG.$PKGTYPE"
+ exit 0
+fi
+
TMP=${TMP:-/tmp/SBo}
PKG=$TMP/package-$PRGNAM
OUTPUT=${OUTPUT:-/tmp}
@@ -67,9 +77,9 @@ cd $PRGNAM-$SRCVER
chown -R root:root .
find -L . \
\( -perm 777 -o -perm 775 -o -perm 750 -o -perm 711 -o -perm 555 \
- -o -perm 511 \) -exec chmod 755 {} \; -o \
+ -o -perm 511 \) -exec chmod 755 {} \+ -o \
\( -perm 666 -o -perm 664 -o -perm 640 -o -perm 600 -o -perm 444 \
- -o -perm 440 -o -perm 400 \) -exec chmod 644 {} \;
+ -o -perm 440 -o -perm 400 \) -exec chmod 644 {} \+
patch -p1 < $CWD/includes.patch
@@ -90,6 +100,12 @@ LIBS="-ldl" \
make
make install DESTDIR=$PKG
+# 20220223 bkw: this builds its own (older) static enet library and
+# links with it... but 'make install' erroneously installs it (which
+# overwrites files from our enet package, breaking various other
+# builds, including 7kaa). Kill it with fire.
+rm -rf $PKG/usr/lib$LIBDIRSUFFIX $PKG/usr/include
+
find $PKG -print0 | xargs -0 file | grep -e "executable" -e "shared object" | grep ELF \
| cut -f 1 -d : | xargs strip --strip-unneeded 2> /dev/null || true
@@ -106,4 +122,4 @@ mkdir -p $PKG/install
cat $CWD/slack-desc > $PKG/install/slack-desc
cd $PKG
-/sbin/makepkg -l y -c n $OUTPUT/$PRGNAM-$VERSION-$ARCH-$BUILD$TAG.${PKGTYPE:-tgz}
+/sbin/makepkg -l y -c n $OUTPUT/$PRGNAM-$VERSION-$ARCH-$BUILD$TAG.$PKGTYPE
diff --git a/games/crawl/README b/games/crawl/README
new file mode 100644
index 0000000000..7ccc57b260
--- /dev/null
+++ b/games/crawl/README
@@ -0,0 +1,4 @@
+Dungeon Crawl Stone Soup is a game of dungeon exploration, combat and
+magic, involving characters of diverse skills, worshipping deities of
+great power and caprice. To win, you'll need to be a master of tactics
+and strategy, and prevail against overwhelming odds.
diff --git a/games/crawl/crawl.SlackBuild b/games/crawl/crawl.SlackBuild
new file mode 100644
index 0000000000..dd6dac8db6
--- /dev/null
+++ b/games/crawl/crawl.SlackBuild
@@ -0,0 +1,128 @@
+#!/bin/bash
+
+# Slackware build script for Dungeon Crawl Stone Soup
+
+# Copyright 2024, SlackBuilds.org Project, David Melik, Spokane, WA, USA
+# All rights reserved.
+#
+# Redistribution and use of this script, with or without modification, is
+# permitted provided that the following conditions are met:
+#
+# 1. Redistributions of this script must retain the above copyright
+# notice, this list of conditions and the following disclaimer.
+#
+# THIS SOFTWARE IS PROVIDED BY THE AUTHOR "AS IS" AND ANY EXPRESS OR IMPLIED
+# WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE IMPLIED WARRANTIES OF
+# MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE ARE DISCLAIMED. IN NO
+# EVENT SHALL THE AUTHOR BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL,
+# SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT LIMITED TO,
+# PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, DATA, OR PROFITS;
+# OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY,
+# WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR
+# OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF THIS SOFTWARE, EVEN IF
+# ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
+
+cd $(dirname $0) ; CWD=$(pwd)
+
+PRGNAM=crawl
+VERSION=${VERSION:-0.31.0}
+BUILD=${BUILD:-1}
+TAG=${TAG:-_SBo}
+PKGTYPE=${PKGTYPE:-tgz}
+SRCNAM=stone_soup
+
+if [ -z "$ARCH" ]; then
+ case "$( uname -m )" in
+ i?86) ARCH=i586 ;;
+ arm*) ARCH=arm ;;
+ *) ARCH=$( uname -m ) ;;
+ esac
+fi
+
+if [ ! -z "${PRINT_PACKAGE_NAME}" ]; then
+ echo "$PRGNAM-$VERSION-$ARCH-$BUILD$TAG.$PKGTYPE"
+ exit 0
+fi
+
+TMP=${TMP:-/tmp/SBo}
+PKG=$TMP/package-$PRGNAM
+OUTPUT=${OUTPUT:-/tmp}
+
+if [ "$ARCH" = "i586" ]; then
+ SLKCFLAGS="-O2 -march=i586 -mtune=i686"
+ LIBDIRSUFFIX=""
+elif [ "$ARCH" = "i686" ]; then
+ SLKCFLAGS="-O2 -march=i686 -mtune=i686"
+ LIBDIRSUFFIX=""
+elif [ "$ARCH" = "x86_64" ]; then
+ SLKCFLAGS="-O2 -fPIC"
+ LIBDIRSUFFIX="64"
+else
+ SLKCFLAGS="-O2"
+ LIBDIRSUFFIX=""
+fi
+
+set -e
+
+rm -rf $PKG
+mkdir -p $TMP $PKG $OUTPUT
+cd $TMP
+rm -rf $SRCNAM-$VERSION
+tar xvf $CWD/${SRCNAM}-$VERSION-nodeps.tar.xz
+cd $SRCNAM-$VERSION
+chown -R root:root .
+find -L . \
+ \( -perm 777 -o -perm 775 -o -perm 750 -o -perm 711 -o -perm 555 \
+ -o -perm 511 \) -exec chmod 755 {} \; -o \
+ \( -perm 666 -o -perm 664 -o -perm 640 -o -perm 600 -o -perm 444 \
+ -o -perm 440 -o -perm 400 \) -exec chmod 644 {} \;
+
+cd source
+ # Do not remove quotation marks from SAVEDIR='~/.crawl/'.
+ # $SAVEDIR needs evaluating at runtime.
+ make \
+ prefix=/usr \
+ COPY_FONTS=1 \
+ DATADIR=/usr/share/games/crawl \
+ SAVEDIR='~/.crawl/' \
+ SDL2=1 \
+ TILES=1
+ make install \
+ prefix=/usr \
+ COPY_FONTS=1 \
+ DATADIR=/usr/share/games/crawl \
+ DESTDIR=$PKG \
+ SAVEDIR='~/.crawl/' \
+ SDL2=1 \
+ TILES=1
+ make clean
+ make \
+ prefix=/usr \
+ DATADIR=/usr/share/games/crawl \
+ SAVEDIR='~/.crawl/'
+ cp crawl $PKG/usr/games/crawl-ascii
+cd ..
+
+find $PKG -print0 | xargs -0 file | grep -e "executable" -e "shared object" | grep ELF \
+ | cut -f 1 -d : | xargs strip --strip-unneeded 2> /dev/null || true
+
+mkdir -p $PKG/usr/man/man6
+gzip -9 -c docs/crawl.6 > $PKG/usr/man/man6/crawl.6.gz
+
+mkdir -p $PKG/usr/share/{applications,pixmaps}
+cp $CWD/crawl_icon-32x32.png $PKG/usr/share/pixmaps
+cp $CWD/crawl.desktop $PKG/usr/share/applications
+
+mkdir -p $PKG/usr/doc/$PRGNAM-$VERSION
+cp -a LICENSE \
+ $PKG/usr/doc/$PRGNAM-$VERSION
+cat $CWD/$PRGNAM.SlackBuild > $PKG/usr/doc/$PRGNAM-$VERSION/$PRGNAM.SlackBuild
+
+ln -sf /usr/share/games/crawl/docs $PKG/usr/doc/$PRGNAM-$VERSION/docs
+
+mkdir -p $PKG/install
+cat $CWD/slack-desc > $PKG/install/slack-desc
+cat $CWD/doinst.sh > $PKG/install/doinst.sh
+
+cd $PKG
+/sbin/makepkg -l y -c n $OUTPUT/$PRGNAM-$VERSION-$ARCH-$BUILD$TAG.$PKGTYPE
diff --git a/games/crawl/crawl.desktop b/games/crawl/crawl.desktop
new file mode 100644
index 0000000000..d5d1d60cce
--- /dev/null
+++ b/games/crawl/crawl.desktop
@@ -0,0 +1,8 @@
+[Desktop Entry]
+Name=Dungeon Crawl Stone Soup
+Comment=Rescue the mystifyingly fabulous Orb of Zot
+Exec=crawl
+Terminal=true
+Type=Application
+Categories=Game;
+Icon=crawl_icon-32x32
diff --git a/games/crawl/crawl.info b/games/crawl/crawl.info
new file mode 100644
index 0000000000..a653d05ea6
--- /dev/null
+++ b/games/crawl/crawl.info
@@ -0,0 +1,10 @@
+PRGNAM="crawl"
+VERSION="0.31.0"
+HOMEPAGE="http://crawl.develz.org/"
+DOWNLOAD="https://github.com/crawl/crawl/releases/download/0.31.0/stone_soup-0.31.0-nodeps.tar.xz"
+MD5SUM="7f35dd3b6eb5b060df870a9c441bd70a"
+DOWNLOAD_x86_64=""
+MD5SUM_x86_64=""
+REQUIRES="lua"
+MAINTAINER="David Melik"
+EMAIL="dchmelik@gmail.com"
diff --git a/games/stone_soup/stone_soup_icon-32x32.png b/games/crawl/crawl_icon-32x32.png
index 726f4078de..726f4078de 100644
--- a/games/stone_soup/stone_soup_icon-32x32.png
+++ b/games/crawl/crawl_icon-32x32.png
Binary files differ
diff --git a/games/transfusion/doinst.sh b/games/crawl/doinst.sh
index 5fb28930db..5fb28930db 100644
--- a/games/transfusion/doinst.sh
+++ b/games/crawl/doinst.sh
diff --git a/games/crawl/slack-desc b/games/crawl/slack-desc
new file mode 100644
index 0000000000..b9ae66cc37
--- /dev/null
+++ b/games/crawl/slack-desc
@@ -0,0 +1,19 @@
+# HOW TO EDIT THIS FILE:
+# The "handy ruler" below makes it easier to edit a package description.
+# Line up the first '|' above the ':' following the base package name, and
+# the '|' on the right side marks the last column you can put a character in.
+# You must make exactly 11 lines for the formatting to be correct. It's also
+# customary to leave one space after the ':' except on otherwise blank lines.
+
+ |-----handy-ruler------------------------------------------------------|
+crawl: crawl (dungeon exploration game)
+crawl:
+crawl: Dungeon Crawl Stone Soup is a game of dungeon exploration, combat and
+crawl: magic, involving characters of diverse skills, worshipping deities of
+crawl: great power and caprice. To win, you'll need to be a master of tactics
+crawl: and strategy, and prevail against overwhelming odds.
+crawl:
+crawl: The traditional ASCII roguelike version is: crawl-ascii.
+crawl: The new SDL version is: crawl.
+crawl:
+crawl: homepage: http://crawl.develz.org/
diff --git a/games/crimson/crimson.SlackBuild b/games/crimson/crimson.SlackBuild
index efaa5ccca2..610223dc96 100644
--- a/games/crimson/crimson.SlackBuild
+++ b/games/crimson/crimson.SlackBuild
@@ -1,29 +1,39 @@
-#!/bin/sh
+#!/bin/bash
# Slackware build script for Crimson Fields
# Written by Zbigniew Baniewski <Zbigniew [dot] Baniewski [at] gmail [dot] com>
+cd $(dirname $0) ; CWD=$(pwd)
+
PRGNAM=crimson
VERSION=${VERSION:-0.5.3}
BUILD=${BUILD:-1}
TAG=${TAG:-_SBo}
+PKGTYPE=${PKGTYPE:-tgz}
if [ -z "$ARCH" ]; then
case "$( uname -m )" in
- i?86) ARCH=i486 ;;
+ i?86) ARCH=i586 ;;
arm*) ARCH=arm ;;
*) ARCH=$( uname -m ) ;;
esac
fi
-CWD=$(pwd)
+# If the variable PRINT_PACKAGE_NAME is set, then this script will report what
+# the name of the created package would be, and then exit. This information
+# could be useful to other scripts.
+if [ ! -z "${PRINT_PACKAGE_NAME}" ]; then
+ echo "$PRGNAM-$VERSION-$ARCH-$BUILD$TAG.$PKGTYPE"
+ exit 0
+fi
+
TMP=${TMP:-/tmp/SBo}
PKG=$TMP/package-$PRGNAM
OUTPUT=${OUTPUT:-/tmp}
-if [ "$ARCH" = "i486" ]; then
- SLKCFLAGS="-O2 -march=i486 -mtune=i686"
+if [ "$ARCH" = "i586" ]; then
+ SLKCFLAGS="-O2 -march=i586 -mtune=i686"
LIBDIRSUFFIX=""
elif [ "$ARCH" = "i686" ]; then
SLKCFLAGS="-O2 -march=i686 -mtune=i686"
@@ -77,4 +87,4 @@ cat $CWD/slack-desc > $PKG/install/slack-desc
cat $CWD/doinst.sh > $PKG/install/doinst.sh
cd $PKG
-/sbin/makepkg -l y -c n $OUTPUT/$PRGNAM-$VERSION-$ARCH-$BUILD$TAG.${PKGTYPE:-tgz}
+/sbin/makepkg -l y -c n $OUTPUT/$PRGNAM-$VERSION-$ARCH-$BUILD$TAG.$PKGTYPE
diff --git a/games/crispy-doom/README b/games/crispy-doom/README
index dd3e67c1c7..d6c441345c 100644
--- a/games/crispy-doom/README
+++ b/games/crispy-doom/README
@@ -3,3 +3,7 @@ display resolution, removes the static limits of the Doom engine and
offers further optional visual, tactical and physical enhancements
remaining entirely config file, savegame, netplay and demo compatible
with the original.
+
+Only crispy-doom , crispy-heretic and crispy-hexen are built with this
+script. For crispy-strife, please try one of the other DooM ports on
+SBo (like chocolate-doom, gzdoom, etc).
diff --git a/games/crispy-doom/crispy-doom.SlackBuild b/games/crispy-doom/crispy-doom.SlackBuild
index ef848b78f9..f0f4cbd804 100644
--- a/games/crispy-doom/crispy-doom.SlackBuild
+++ b/games/crispy-doom/crispy-doom.SlackBuild
@@ -1,9 +1,9 @@
-#!/bin/sh
+#!/bin/bash
# Slackware build script for crispy-doom
# Copyright 2015 Dugan Chen Canada
-# Updates copyright 2019, 2020 Lenard Spencer
+# Updates copyright 2019, 2020, 2021 Lenard Spencer
# All rights reserved.
#
# Redistribution and use of this script, with or without modification, is
@@ -23,10 +23,13 @@
# OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF THIS SOFTWARE, EVEN IF
# ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
+cd $(dirname $0) ; CWD=$(pwd)
+
PRGNAM=crispy-doom
-VERSION=${VERSION:-5.9.2}
+VERSION=${VERSION:-6.0}
BUILD=${BUILD:-1}
TAG=${TAG:-_SBo}
+PKGTYPE=${PKGTYPE:-tgz}
if [ -z "$ARCH" ]; then
case "$( uname -m )" in
@@ -36,7 +39,14 @@ if [ -z "$ARCH" ]; then
esac
fi
-CWD=$(pwd)
+# If the variable PRINT_PACKAGE_NAME is set, then this script will report what
+# the name of the created package would be, and then exit. This information
+# could be useful to other scripts.
+if [ ! -z "${PRINT_PACKAGE_NAME}" ]; then
+ echo "$PRGNAM-$VERSION-$ARCH-$BUILD$TAG.$PKGTYPE"
+ exit 0
+fi
+
TMP=${TMP:-/tmp/SBo}
PKG=$TMP/package-$PRGNAM
OUTPUT=${OUTPUT:-/tmp}
@@ -70,17 +80,14 @@ find -L . \
\( -perm 666 -o -perm 664 -o -perm 640 -o -perm 600 -o -perm 444 \
-o -perm 440 -o -perm 400 \) -exec chmod 644 {} \;
-sh autogen.sh
+autoreconf -fiv
CFLAGS="$SLKCFLAGS" \
CXXFLAGS="$SLKCFLAGS" \
./configure \
--prefix=/usr \
- --libdir=/usr/lib${LIBDIRSUFFIX} \
- --sysconfdir=/etc \
- --localstatedir=/var \
--mandir=/usr/man \
- --docdir=/usr/doc/$PRGNAM-$VERSION \
+ --docdir=/usr/doc/$PRGNAM \
--bindir=/usr/games \
--build=$ARCH-slackware-linux
@@ -93,9 +100,15 @@ find $PKG -print0 | xargs -0 file | grep -e "executable" -e "shared object" | gr
find $PKG/usr/man -type f -exec gzip -9 {} \;
for i in $( find $PKG/usr/man -type l ) ; do ln -s $( readlink $i ).gz $i.gz ; rm $i ; done
-mkdir -p $PKG/usr/doc/$PRGNAM-$VERSION
-cp -a AUTHORS ChangeLog *.md \
- $PKG/usr/doc/$PRGNAM-$VERSION
+# Remove unnecessary GNOME screensaver desktop entry:
+rm -rf $PKG/usr/share/applications/screensavers
+
+mv $PKG/usr/doc/$PRGNAM $PKG/usr/doc/$PRGNAM-$VERSION
+( cd $PKG/usr/doc/$PRGNAM-$VERSION
+ mkdir -p $PRGNAM
+ mv *.doom $PRGNAM
+ mv ../crispy-{heretic,hexen,strife} .
+ )
cat $CWD/$PRGNAM.SlackBuild > $PKG/usr/doc/$PRGNAM-$VERSION/$PRGNAM.SlackBuild
mkdir -p $PKG/install
@@ -103,4 +116,4 @@ cat $CWD/slack-desc > $PKG/install/slack-desc
cat $CWD/doinst.sh > $PKG/install/doinst.sh
cd $PKG
-/sbin/makepkg -l y -c n $OUTPUT/$PRGNAM-$VERSION-$ARCH-$BUILD$TAG.${PKGTYPE:-tgz}
+/sbin/makepkg -l y -c n $OUTPUT/$PRGNAM-$VERSION-$ARCH-$BUILD$TAG.$PKGTYPE
diff --git a/games/crispy-doom/crispy-doom.info b/games/crispy-doom/crispy-doom.info
index ebedd2fab6..b081645215 100644
--- a/games/crispy-doom/crispy-doom.info
+++ b/games/crispy-doom/crispy-doom.info
@@ -1,10 +1,10 @@
PRGNAM="crispy-doom"
-VERSION="5.9.2"
-HOMEPAGE="http://www.chocolate-doom.org/wiki/index.php/Crispy_Doom"
-DOWNLOAD="https://github.com/fabiangreffrath/crispy-doom/archive/crispy-doom-5.9.2.tar.gz"
-MD5SUM="67caf9025c85f353e152497e664275e7"
+VERSION="6.0"
+HOMEPAGE="https://www.chocolate-doom.org/wiki/index.php/Crispy_Doom"
+DOWNLOAD="https://github.com/fabiangreffrath/crispy-doom/archive/crispy-doom-6.0/crispy-doom-crispy-doom-6.0.tar.gz"
+MD5SUM="39e3166f08c8a3dd439ccde79b275cc3"
DOWNLOAD_x86_64=""
MD5SUM_x86_64=""
-REQUIRES="SDL2_net SDL2_mixer"
+REQUIRES=""
MAINTAINER="Lenard Spencer"
EMAIL="lenardrspencer@gmail.com"
diff --git a/games/crossfire-client/crossfire-client.SlackBuild b/games/crossfire-client/crossfire-client.SlackBuild
index b4d2872366..caeecc18be 100644
--- a/games/crossfire-client/crossfire-client.SlackBuild
+++ b/games/crossfire-client/crossfire-client.SlackBuild
@@ -1,8 +1,8 @@
-#!/bin/sh
+#!/bin/bash
# Slackware build script for crossfire-client
-# Copyright 2014-2019 Dimitris Zlatanidis Orestiada, Greece
+# Copyright 2014-2022 Dimitris Zlatanidis Orestiada, Greece
# All rights reserved.
#
# Redistribution and use of this script, with or without modification, is
@@ -22,10 +22,13 @@
# OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF THIS SOFTWARE, EVEN IF
# ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
+cd $(dirname $0) ; CWD=$(pwd)
+
PRGNAM=crossfire-client
-VERSION=${VERSION:-1.73.0}
+VERSION=${VERSION:-1.75.2}
BUILD=${BUILD:-1}
TAG=${TAG:-_SBo}
+PKGTYPE=${PKGTYPE:-tgz}
if [ -z "$ARCH" ]; then
case "$( uname -m )" in
@@ -35,7 +38,14 @@ if [ -z "$ARCH" ]; then
esac
fi
-CWD=$(pwd)
+# If the variable PRINT_PACKAGE_NAME is set, then this script will report what
+# the name of the created package would be, and then exit. This information
+# could be useful to other scripts.
+if [ ! -z "${PRINT_PACKAGE_NAME}" ]; then
+ echo "$PRGNAM-$VERSION-$ARCH-$BUILD$TAG.$PKGTYPE"
+ exit 0
+fi
+
TMP=${TMP:-/tmp/SBo}
PKG=$TMP/package-$PRGNAM
OUTPUT=${OUTPUT:-/tmp}
@@ -60,7 +70,7 @@ rm -rf $PKG
mkdir -p $TMP $PKG $OUTPUT
cd $TMP
rm -rf $PRGNAM-$VERSION
-tar xvf $CWD/$PRGNAM-$VERSION.tar.bz2
+tar xvf $CWD/$PRGNAM-$VERSION.tar.gz
cd $PRGNAM-$VERSION
chown -R root:root .
find -L . \
@@ -102,4 +112,4 @@ cat $CWD/slack-desc > $PKG/install/slack-desc
cat $CWD/doinst.sh > $PKG/install/doinst.sh
cd $PKG
-/sbin/makepkg -l y -c n $OUTPUT/$PRGNAM-$VERSION-$ARCH-$BUILD$TAG.${PKGTYPE:-tgz}
+/sbin/makepkg -l y -c n $OUTPUT/$PRGNAM-$VERSION-$ARCH-$BUILD$TAG.$PKGTYPE
diff --git a/games/crossfire-client/crossfire-client.info b/games/crossfire-client/crossfire-client.info
index 97b58e5c28..1d931a282c 100644
--- a/games/crossfire-client/crossfire-client.info
+++ b/games/crossfire-client/crossfire-client.info
@@ -1,10 +1,10 @@
PRGNAM="crossfire-client"
-VERSION="1.73.0"
+VERSION="1.75.2"
HOMEPAGE="http://crossfire.real-time.com"
-DOWNLOAD="https://downloads.sourceforge.net/project/crossfire/crossfire-client/1.73.0/crossfire-client-1.73.0.tar.bz2"
-MD5SUM="e268e2de79ca94b2487a8af2227c9552"
+DOWNLOAD="https://sourceforge.net/projects/crossfire/files/crossfire-client/1.75.2/crossfire-client-1.75.2.tar.gz"
+MD5SUM="46cc595a00da1ad323e58172e682a397"
DOWNLOAD_x86_64=""
MD5SUM_x86_64=""
-REQUIRES="vala lua"
+REQUIRES="lua"
MAINTAINER="Dimitris Zlatanidis"
EMAIL="d.zlatanidis@gmail.com"
diff --git a/games/crrcsim/crrcsim.SlackBuild b/games/crrcsim/crrcsim.SlackBuild
index ab12c3bab1..5f842716db 100644
--- a/games/crrcsim/crrcsim.SlackBuild
+++ b/games/crrcsim/crrcsim.SlackBuild
@@ -1,4 +1,4 @@
-#!/bin/sh
+#!/bin/bash
# Slackware build script for crrcsim
@@ -22,10 +22,13 @@
# OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF THIS SOFTWARE, EVEN IF
# ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
+cd $(dirname $0) ; CWD=$(pwd)
+
PRGNAM=crrcsim
VERSION=${VERSION:-0.9.13}
BUILD=${BUILD:-1}
TAG=${TAG:-_SBo}
+PKGTYPE=${PKGTYPE:-tgz}
if [ -z "$ARCH" ]; then
case "$( uname -m )" in
@@ -35,7 +38,14 @@ if [ -z "$ARCH" ]; then
esac
fi
-CWD=$(pwd)
+# If the variable PRINT_PACKAGE_NAME is set, then this script will report what
+# the name of the created package would be, and then exit. This information
+# could be useful to other scripts.
+if [ ! -z "${PRINT_PACKAGE_NAME}" ]; then
+ echo "$PRGNAM-$VERSION-$ARCH-$BUILD$TAG.$PKGTYPE"
+ exit 0
+fi
+
TMP=${TMP:-/tmp/SBo}
PKG=$TMP/package-$PRGNAM
OUTPUT=${OUTPUT:-/tmp}
@@ -69,6 +79,9 @@ find -L . \
\( -perm 666 -o -perm 664 -o -perm 640 -o -perm 600 -o -perm 444 \
-o -perm 440 -o -perm 400 \) -exec chmod 644 {} \;
+# https://aur.archlinux.org/packages/crrcsim/#comment-668700
+patch -p1 < $CWD/fix_bug.patch
+
# Boost libraries are now threadsafe; -mt has been dropped
sed -i 's/boost_thread-mt/boost_thread/g' configure.ac
./autogen.sh
@@ -105,4 +118,4 @@ cat $CWD/slack-desc > $PKG/install/slack-desc
cat $CWD/doinst.sh > $PKG/install/doinst.sh
cd $PKG
-/sbin/makepkg -l y -c n $OUTPUT/$PRGNAM-$VERSION-$ARCH-$BUILD$TAG.${PKGTYPE:-tgz}
+/sbin/makepkg -l y -c n $OUTPUT/$PRGNAM-$VERSION-$ARCH-$BUILD$TAG.$PKGTYPE
diff --git a/games/crrcsim/fix_bug.patch b/games/crrcsim/fix_bug.patch
new file mode 100644
index 0000000000..b8eadeece9
--- /dev/null
+++ b/games/crrcsim/fix_bug.patch
@@ -0,0 +1,12 @@
+diff -ru crrcsim-0.9.13.old/src/mod_video/crrc_animation.cpp crrcsim-0.9.13/src/mod_video/crrc_animation.cpp
+--- crrcsim-0.9.13.old/src/mod_video/crrc_animation.cpp 2016-04-10 09:57:14.000000000 -0700
++++ crrcsim-0.9.13/src/mod_video/crrc_animation.cpp 2018-10-30 16:13:09.055770007 -0700
+@@ -84,7 +84,7 @@
+ else
+ {
+ std::cerr << "createAnimation: unknown animation type \'"
+- << type << "\'" << std::cerr;
++ << type << "\'" << std::endl;
+ }
+
+ if (anim != NULL)
diff --git a/games/cryptokwot/README b/games/cryptokwot/README
new file mode 100644
index 0000000000..844175641e
--- /dev/null
+++ b/games/cryptokwot/README
@@ -0,0 +1,10 @@
+cryptokwot (substitution cipher game)
+
+This is a game which the player must decipher a quotation that's been
+enciphered with a randomly generated simple substitution cipher. If
+you've ever done a newspaper Cryptoquote or Cryptoquip, this will be
+familiar.
+
+cryptokwot doesn't solve the puzzle for you; it basically replaces
+pencil and paper, allowing you to assign plaintext letters to
+ciphertext ones interactively.
diff --git a/games/cryptokwot/cryptokwot.SlackBuild b/games/cryptokwot/cryptokwot.SlackBuild
new file mode 100644
index 0000000000..1e2e198f51
--- /dev/null
+++ b/games/cryptokwot/cryptokwot.SlackBuild
@@ -0,0 +1,54 @@
+#!/bin/bash
+
+# Slackware build script for cryptokwot
+
+# Written by B. Watson (urchlay@slackware.uk)
+
+# Licensed under the WTFPL. See http://www.wtfpl.net/txt/copying/ for details.
+
+cd $(dirname $0) ; CWD=$(pwd)
+
+PRGNAM=cryptokwot
+VERSION=${VERSION:-0.0.3}
+BUILD=${BUILD:-1}
+TAG=${TAG:-_SBo}
+PKGTYPE=${PKGTYPE:-tgz}
+
+ARCH=noarch
+
+if [ ! -z "${PRINT_PACKAGE_NAME}" ]; then
+ echo "$PRGNAM-$VERSION-$ARCH-$BUILD$TAG.$PKGTYPE"
+ exit 0
+fi
+
+TMP=${TMP:-/tmp/SBo}
+PKG=$TMP/package-$PRGNAM
+OUTPUT=${OUTPUT:-/tmp}
+
+set -e
+
+# No "source" directory needed. The executable spits out its own man page,
+# .desktop file, and icon, so give it a short name:
+P=$PKG/usr/games/$PRGNAM
+
+rm -rf $PKG
+mkdir -p \
+ $PKG/usr/{games,man/man6,share/{icons/hicolor/64x64/apps,applications}} \
+ $OUTPUT
+install -oroot -groot -m0755 $CWD/$PRGNAM $P
+
+$P --man | gzip -9c > $PKG/usr/man/man6/$PRGNAM.6.gz
+$P --icon | convert gif:- png32:$PKG/usr/share/icons/hicolor/64x64/apps/$PRGNAM.png
+$P --desktop > $PKG/usr/share/applications/$PRGNAM.desktop
+
+PKGDOC=$PKG/usr/doc/$PRGNAM-$VERSION
+mkdir -p $PKGDOC
+cat $CWD/README > $PKGDOC/README
+cat $CWD/$PRGNAM.SlackBuild > $PKGDOC/$PRGNAM.SlackBuild
+
+mkdir -p $PKG/install
+cat $CWD/slack-desc > $PKG/install/slack-desc
+cat $CWD/doinst.sh > $PKG/install/doinst.sh
+
+cd $PKG
+/sbin/makepkg -l y -c n $OUTPUT/$PRGNAM-$VERSION-$ARCH-$BUILD$TAG.$PKGTYPE
diff --git a/games/cryptokwot/cryptokwot.info b/games/cryptokwot/cryptokwot.info
new file mode 100644
index 0000000000..f5922b740b
--- /dev/null
+++ b/games/cryptokwot/cryptokwot.info
@@ -0,0 +1,10 @@
+PRGNAM="cryptokwot"
+VERSION="0.0.3"
+HOMEPAGE="https://slackware.uk/~urchlay/src/cryptokwot.html"
+DOWNLOAD="https://slackware.uk/~urchlay/src/cryptokwot"
+MD5SUM="50e66b402ad7b606dda330e4dc9706ae"
+DOWNLOAD_x86_64=""
+MD5SUM_x86_64=""
+REQUIRES=""
+MAINTAINER="B. Watson"
+EMAIL="urchlay@slackware.uk"
diff --git a/games/cryptokwot/doinst.sh b/games/cryptokwot/doinst.sh
new file mode 100644
index 0000000000..3e5691a052
--- /dev/null
+++ b/games/cryptokwot/doinst.sh
@@ -0,0 +1,9 @@
+if [ -x /usr/bin/update-desktop-database ]; then
+ /usr/bin/update-desktop-database -q usr/share/applications >/dev/null 2>&1
+fi
+
+if [ -e usr/share/icons/hicolor/icon-theme.cache ]; then
+ if [ -x /usr/bin/gtk-update-icon-cache ]; then
+ /usr/bin/gtk-update-icon-cache usr/share/icons/hicolor >/dev/null 2>&1
+ fi
+fi
diff --git a/games/cryptokwot/slack-desc b/games/cryptokwot/slack-desc
new file mode 100644
index 0000000000..0a723bc076
--- /dev/null
+++ b/games/cryptokwot/slack-desc
@@ -0,0 +1,19 @@
+# HOW TO EDIT THIS FILE:
+# The "handy ruler" below makes it easier to edit a package description.
+# Line up the first '|' above the ':' following the base package name, and
+# the '|' on the right side marks the last column you can put a character in.
+# You must make exactly 11 lines for the formatting to be correct. It's also
+# customary to leave one space after the ':' except on otherwise blank lines.
+
+ |-----handy-ruler------------------------------------------------------|
+cryptokwot: cryptokwot (substitution cipher game)
+cryptokwot:
+cryptokwot: This is a game which the player must decipher a quotation that's been
+cryptokwot: enciphered with a randomly generated simple substitution cipher. If
+cryptokwot: you've ever done a newspaper Cryptoquote or Cryptoquip, this will be
+cryptokwot: familiar.
+cryptokwot:
+cryptokwot: cryptokwot doesn't solve the puzzle for you; it basically replaces
+cryptokwot: pencil and paper, allowing you to assign plaintext letters to
+cryptokwot: ciphertext ones interactively.
+cryptokwot:
diff --git a/games/cubosphere/cubosphere.SlackBuild b/games/cubosphere/cubosphere.SlackBuild
index 3a2da51d2e..abc46428bb 100644
--- a/games/cubosphere/cubosphere.SlackBuild
+++ b/games/cubosphere/cubosphere.SlackBuild
@@ -1,4 +1,4 @@
-#!/bin/sh
+#!/bin/bash
# Slackware build script for cubosphere
@@ -22,10 +22,13 @@
# OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF THIS SOFTWARE, EVEN IF
# ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
+cd $(dirname $0) ; CWD=$(pwd)
+
PRGNAM=cubosphere
VERSION=${VERSION:-beta0.3a}
BUILD=${BUILD:-1}
TAG=${TAG:-_SBo}
+PKGTYPE=${PKGTYPE:-tgz}
if [ -z "$ARCH" ]; then
case "$( uname -m )" in
@@ -35,7 +38,14 @@ if [ -z "$ARCH" ]; then
esac
fi
-CWD=$(pwd)
+# If the variable PRINT_PACKAGE_NAME is set, then this script will report what
+# the name of the created package would be, and then exit. This information
+# could be useful to other scripts.
+if [ ! -z "${PRINT_PACKAGE_NAME}" ]; then
+ echo "$PRGNAM-$VERSION-$ARCH-$BUILD$TAG.$PKGTYPE"
+ exit 0
+fi
+
TMP=${TMP:-/tmp/SBo}
PKG=$TMP/package-$PRGNAM
OUTPUT=${OUTPUT:-/tmp}
@@ -100,4 +110,4 @@ cat $CWD/slack-desc > $PKG/install/slack-desc
cat $CWD/doinst.sh > $PKG/install/doinst.sh
cd $PKG
-/sbin/makepkg -l y -c n $OUTPUT/$PRGNAM-$VERSION-$ARCH-$BUILD$TAG.${PKGTYPE:-tgz}
+/sbin/makepkg -l y -c n $OUTPUT/$PRGNAM-$VERSION-$ARCH-$BUILD$TAG.$PKGTYPE
diff --git a/games/curseofwar/curseofwar.SlackBuild b/games/curseofwar/curseofwar.SlackBuild
index 4f3edc64ac..8c8b80a33c 100644
--- a/games/curseofwar/curseofwar.SlackBuild
+++ b/games/curseofwar/curseofwar.SlackBuild
@@ -1,8 +1,8 @@
-#!/bin/sh
+#!/bin/bash
# Slackware build script for curseofwar
-# Copyright 2014-2016 Dimitris Zlatanidis Orestiada, Greece
+# Copyright 2014-2022 Dimitris Zlatanidis Orestiada, Greece
# All rights reserved.
#
# Redistribution and use of this script, with or without modification, is
@@ -22,10 +22,13 @@
# OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF THIS SOFTWARE, EVEN IF
# ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
+cd $(dirname $0) ; CWD=$(pwd)
+
PRGNAM=curseofwar
-VERSION=${VERSION:-1.2.0}
+VERSION=${VERSION:-1.3.0}
BUILD=${BUILD:-1}
TAG=${TAG:-_SBo}
+PKGTYPE=${PKGTYPE:-tgz}
if [ -z "$ARCH" ]; then
case "$( uname -m )" in
@@ -35,7 +38,14 @@ if [ -z "$ARCH" ]; then
esac
fi
-CWD=$(pwd)
+# If the variable PRINT_PACKAGE_NAME is set, then this script will report what
+# the name of the created package would be, and then exit. This information
+# could be useful to other scripts.
+if [ ! -z "${PRINT_PACKAGE_NAME}" ]; then
+ echo "$PRGNAM-$VERSION-$ARCH-$BUILD$TAG.$PKGTYPE"
+ exit 0
+fi
+
TMP=${TMP:-/tmp/SBo}
PKG=$TMP/package-$PRGNAM
OUTPUT=${OUTPUT:-/tmp}
@@ -92,4 +102,4 @@ cat $CWD/slack-desc > $PKG/install/slack-desc
cat $CWD/doinst.sh > $PKG/install/doinst.sh
cd $PKG
-/sbin/makepkg -l y -c n $OUTPUT/$PRGNAM-$VERSION-$ARCH-$BUILD$TAG.${PKGTYPE:-tgz}
+/sbin/makepkg -l y -c n $OUTPUT/$PRGNAM-$VERSION-$ARCH-$BUILD$TAG.$PKGTYPE
diff --git a/games/curseofwar/curseofwar.info b/games/curseofwar/curseofwar.info
index 2b097cd81b..4460414ab3 100644
--- a/games/curseofwar/curseofwar.info
+++ b/games/curseofwar/curseofwar.info
@@ -1,8 +1,8 @@
PRGNAM="curseofwar"
-VERSION="1.2.0"
+VERSION="1.3.0"
HOMEPAGE="http://a-nikolaev.github.io/curseofwar/"
-DOWNLOAD="https://github.com/a-nikolaev/curseofwar/archive/v1.2.0.tar.gz"
-MD5SUM="361f364342af357ed78ae4eabe465da8"
+DOWNLOAD="https://github.com/a-nikolaev/curseofwar/archive/v1.3.0/curseofwar-1.3.0.tar.gz"
+MD5SUM="49c00956ed4a51488d271e6b3ce3ee37"
DOWNLOAD_x86_64=""
MD5SUM_x86_64=""
REQUIRES=""
diff --git a/games/cutemaze/cutemaze.SlackBuild b/games/cutemaze/cutemaze.SlackBuild
index a1d34d0255..0585d1535e 100644
--- a/games/cutemaze/cutemaze.SlackBuild
+++ b/games/cutemaze/cutemaze.SlackBuild
@@ -1,4 +1,4 @@
-#!/bin/sh
+#!/bin/bash
# Copyright (c) 2013-2016 LEVAI Daniel
# All rights reserved.
@@ -27,26 +27,36 @@
# Build script for cutemaze
+cd $(dirname $0) ; CWD=$(pwd)
+
PRGNAM=cutemaze
VERSION=${VERSION:-1.2.4}
BUILD=${BUILD:-1}
TAG=${TAG:-_SBo}
+PKGTYPE=${PKGTYPE:-tgz}
if [ -z "$ARCH" ]; then
case "$( uname -m )" in
- i?86) ARCH=i486 ;;
+ i?86) ARCH=i586 ;;
arm*) ARCH=arm ;;
*) ARCH=$( uname -m ) ;;
esac
fi
-CWD=$(pwd)
+# If the variable PRINT_PACKAGE_NAME is set, then this script will report what
+# the name of the created package would be, and then exit. This information
+# could be useful to other scripts.
+if [ ! -z "${PRINT_PACKAGE_NAME}" ]; then
+ echo "$PRGNAM-$VERSION-$ARCH-$BUILD$TAG.$PKGTYPE"
+ exit 0
+fi
+
TMP=${TMP:-/tmp/SBo}
PKG=$TMP/package-$PRGNAM
OUTPUT=${OUTPUT:-/tmp}
-if [ "$ARCH" = "i486" ];then
- SLKCFLAGS="-O2 -march=i486 -mtune=i686"
+if [ "$ARCH" = "i586" ];then
+ SLKCFLAGS="-O2 -march=i586 -mtune=i686"
LIBDIRSUFFIX=""
elif [ "$ARCH" = "i686" ]; then
SLKCFLAGS="-O2 -march=i686 -mtune=i686"
@@ -92,4 +102,4 @@ cat $CWD/slack-desc > $PKG/install/slack-desc
cat $CWD/doinst.sh > $PKG/install/doinst.sh
cd $PKG
-/sbin/makepkg -l y -c n $OUTPUT/$PRGNAM-$VERSION-$ARCH-$BUILD$TAG.${PKGTYPE:-tgz}
+/sbin/makepkg -l y -c n $OUTPUT/$PRGNAM-$VERSION-$ARCH-$BUILD$TAG.$PKGTYPE
diff --git a/games/cutemaze/cutemaze.info b/games/cutemaze/cutemaze.info
index d060365763..a32e27dda9 100644
--- a/games/cutemaze/cutemaze.info
+++ b/games/cutemaze/cutemaze.info
@@ -5,6 +5,6 @@ DOWNLOAD="https://gottcode.org/cutemaze/cutemaze-1.2.4-src.tar.bz2"
MD5SUM="c83d27da30105b552dfc91661841892e"
DOWNLOAD_x86_64=""
MD5SUM_x86_64=""
-REQUIRES="qt5"
+REQUIRES=""
MAINTAINER="LEVAI Daniel"
EMAIL="leva@ecentrum.hu"
diff --git a/games/cuyo/cuyo.SlackBuild b/games/cuyo/cuyo.SlackBuild
index ba1d435d92..436206cfc7 100644
--- a/games/cuyo/cuyo.SlackBuild
+++ b/games/cuyo/cuyo.SlackBuild
@@ -1,4 +1,4 @@
-#!/bin/sh
+#!/bin/bash
# Slackware build script for cuyo
@@ -22,26 +22,36 @@
# OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF THIS SOFTWARE, EVEN IF
# ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
+cd $(dirname $0) ; CWD=$(pwd)
+
PRGNAM=cuyo
VERSION=${VERSION:-2.1.0}
BUILD=${BUILD:-1}
TAG=${TAG:-_SBo}
+PKGTYPE=${PKGTYPE:-tgz}
if [ -z "$ARCH" ]; then
case "$( uname -m )" in
- i?86) ARCH=i486 ;;
+ i?86) ARCH=i586 ;;
arm*) ARCH=arm ;;
*) ARCH=$( uname -m ) ;;
esac
fi
-CWD=$(pwd)
+# If the variable PRINT_PACKAGE_NAME is set, then this script will report what
+# the name of the created package would be, and then exit. This information
+# could be useful to other scripts.
+if [ ! -z "${PRINT_PACKAGE_NAME}" ]; then
+ echo "$PRGNAM-$VERSION-$ARCH-$BUILD$TAG.$PKGTYPE"
+ exit 0
+fi
+
TMP=${TMP:-/tmp/SBo}
PKG=$TMP/package-$PRGNAM
OUTPUT=${OUTPUT:-/tmp}
-if [ "$ARCH" = "i486" ]; then
- SLKCFLAGS="-O2 -march=i486 -mtune=i686"
+if [ "$ARCH" = "i586" ]; then
+ SLKCFLAGS="-O2 -march=i586 -mtune=i686"
LIBDIRSUFFIX=""
elif [ "$ARCH" = "i686" ]; then
SLKCFLAGS="-O2 -march=i686 -mtune=i686"
@@ -101,4 +111,4 @@ cat $CWD/slack-desc > $PKG/install/slack-desc
cat $CWD/doinst.sh > $PKG/install/doinst.sh
cd $PKG
-/sbin/makepkg -l y -c n $OUTPUT/$PRGNAM-$VERSION-$ARCH-$BUILD$TAG.${PKGTYPE:-tgz}
+/sbin/makepkg -l y -c n $OUTPUT/$PRGNAM-$VERSION-$ARCH-$BUILD$TAG.$PKGTYPE
diff --git a/games/cyphesis/cyphesis.SlackBuild b/games/cyphesis/cyphesis.SlackBuild
index 6513175c96..2070421837 100644
--- a/games/cyphesis/cyphesis.SlackBuild
+++ b/games/cyphesis/cyphesis.SlackBuild
@@ -1,4 +1,4 @@
-#!/bin/sh
+#!/bin/bash
# Slackware build script for cyphesis
@@ -22,10 +22,13 @@
# OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF THIS SOFTWARE, EVEN IF
# ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
+cd $(dirname $0) ; CWD=$(pwd)
+
PRGNAM=cyphesis
VERSION=${VERSION:-0.6.2}
BUILD=${BUILD:-1}
TAG=${TAG:-_SBo}
+PKGTYPE=${PKGTYPE:-tgz}
if [ -z "$ARCH" ]; then
case "$( uname -m )" in
@@ -35,7 +38,14 @@ if [ -z "$ARCH" ]; then
esac
fi
-CWD=$(pwd)
+# If the variable PRINT_PACKAGE_NAME is set, then this script will report what
+# the name of the created package would be, and then exit. This information
+# could be useful to other scripts.
+if [ ! -z "${PRINT_PACKAGE_NAME}" ]; then
+ echo "$PRGNAM-$VERSION-$ARCH-$BUILD$TAG.$PKGTYPE"
+ exit 0
+fi
+
TMP=${TMP:-/tmp/SBo}
PKG=$TMP/package-$PRGNAM
OUTPUT=${OUTPUT:-/tmp}
@@ -74,7 +84,7 @@ patch -p0 < $CWD/cyphesis-0.6.2-pg10.patch
autoreconf -vif
CFLAGS="$SLKCFLAGS" \
-CXXFLAGS="$SLKCFLAGS" \
+CXXFLAGS="$SLKCFLAGS -std=c++14 -fpermissive" \
./configure \
--prefix=/usr \
--libdir=/usr/lib${LIBDIRSUFFIX} \
@@ -102,4 +112,4 @@ cat $CWD/slack-desc > $PKG/install/slack-desc
cat $CWD/doinst.sh > $PKG/install/doinst.sh
cd $PKG
-/sbin/makepkg -l y -c n $OUTPUT/$PRGNAM-$VERSION-$ARCH-$BUILD$TAG.${PKGTYPE:-tgz}
+/sbin/makepkg -l y -c n $OUTPUT/$PRGNAM-$VERSION-$ARCH-$BUILD$TAG.$PKGTYPE
diff --git a/games/d1x-rebirth/d1x-rebirth.SlackBuild b/games/d1x-rebirth/d1x-rebirth.SlackBuild
index 346d5588ec..f9b3e8f86c 100644
--- a/games/d1x-rebirth/d1x-rebirth.SlackBuild
+++ b/games/d1x-rebirth/d1x-rebirth.SlackBuild
@@ -1,4 +1,4 @@
-#!/bin/sh
+#!/bin/bash
# Slackware build script for d1x-rebirth
@@ -23,10 +23,18 @@
# OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF THIS SOFTWARE, EVEN IF
# ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
+# 20220321 bkw: Modified by SlackBuilds.org: fix 32-bit build.
+# TODO: the executable needs to go in /usr/games, and the .desktop
+# needs absolute paths to the icon and executable.
+
+cd $(dirname $0) ; CWD=$(pwd)
+
PRGNAM=d1x-rebirth
-VERSION=${VERSION:-0.58.1}
+SRCNAM=dxx-rebirth
+VERSION=${VERSION:-20220130_7258b7f}
BUILD=${BUILD:-1}
TAG=${TAG:-_SBo}
+PKGTYPE=${PKGTYPE:-tgz}
if [ -z "$ARCH" ]; then
case "$( uname -m )" in
@@ -36,7 +44,11 @@ if [ -z "$ARCH" ]; then
esac
fi
-CWD=$(pwd)
+if [ ! -z "${PRINT_PACKAGE_NAME}" ]; then
+ echo "$PRGNAM-$VERSION-$ARCH-$BUILD$TAG.$PKGTYPE"
+ exit 0
+fi
+
TMP=${TMP:-/tmp/SBo}
PKG=$TMP/package-$PRGNAM
OUTPUT=${OUTPUT:-/tmp}
@@ -60,32 +72,33 @@ set -e
rm -rf $PKG
mkdir -p $TMP $PKG $OUTPUT
cd $TMP
-rm -rf ${PRGNAM}_v${VERSION}-src
-tar xvf $CWD/${PRGNAM}_v${VERSION}-src.tar.gz
-cd ${PRGNAM}_v${VERSION}-src
+rm -rf $SRCNAM-$VERSION
+tar xvf $CWD/$SRCNAM-$VERSION.tar.xz
+cd $SRCNAM-$VERSION
chown -R root:root .
find -L . \
\( -perm 777 -o -perm 775 -o -perm 750 -o -perm 711 -o -perm 555 -o -perm 511 \) \
- -exec chmod 755 {} \; -o \
+ -exec chmod 755 {} \+ -o \
\( -perm 666 -o -perm 664 -o -perm 600 -o -perm 444 -o -perm 440 -o -perm 400 \) \
- -exec chmod 644 {} \;
+ -exec chmod 644 {} \+
+
+# 20220321 bkw: I hate scons, and I hate people who use -Werror and
+# don't give a sane way to disable it. I especially hate them if they
+# write code that triggers warnings... 32-bit builds were failing
+# because of this.
+sed -i -e "s,'-W','-Wno-'," -e "s,'-Werror=','-Wno-error='," SConstruct
# 'sharepath' is for the game-content data files, they can
# also perhaps more conveniently go in ~/.d1x-rebirth...
scons CXXFLAGS="$SLKCFLAGS" \
- CFLAGS="$SLKCFLAGS" \
prefix=/usr \
- sharepath=/usr/share/games/d1x-rebirth
+ sharepath=/usr/share/$PRGNAM \
+ d1x=1
# DESTDIR does not work so we do it manually:
-mkdir -p $PKG/usr/bin
-mv $PRGNAM $PKG/usr/bin
-
-# It is a commandline program but perhaps somebody will use these:
-mkdir -p $PKG/usr/share/pixmaps
-mv d1x-rebirth.xpm $PKG/usr/share/pixmaps
-mkdir -p $PKG/usr/share/applications/
-mv d1x-rebirth.desktop $PKG/usr/share/applications/
+install -D -m 0755 build/$PRGNAM/$PRGNAM $PKG/usr/bin/$PRGNAM
+install -D -m 0644 $PRGNAM/$PRGNAM.xpm $PKG/usr/share/pixmaps/$PRGNAM.xpm
+install -D -m 0644 $PRGNAM/$PRGNAM.desktop $PKG/usr/share/applications/$PRGNAM.desktop
find $PKG -print0 | xargs -0 file | grep -e "executable" -e "shared object" | grep ELF \
| cut -f 1 -d : | xargs strip --strip-unneeded 2> /dev/null || true
@@ -93,7 +106,7 @@ find $PKG -print0 | xargs -0 file | grep -e "executable" -e "shared object" | gr
# d1x.ini is a handy list of commandline options...
mkdir -p $PKG/usr/doc/$PRGNAM-$VERSION
cp -a \
- CHANGELOG.txt COPYING.txt INSTALL.txt README.txt RELEASE-NOTES.txt d1x.ini \
+ d1x-rebirth/{CHANGELOG.txt,RELEASE-NOTES.txt,d1x.ini} README.md COPYING* GPL* \
$PKG/usr/doc/$PRGNAM-$VERSION
cat $CWD/$PRGNAM.SlackBuild > $PKG/usr/doc/$PRGNAM-$VERSION/$PRGNAM.SlackBuild
@@ -102,4 +115,4 @@ cat $CWD/slack-desc > $PKG/install/slack-desc
cat $CWD/doinst.sh > $PKG/install/doinst.sh
cd $PKG
-/sbin/makepkg -l y -c n $OUTPUT/$PRGNAM-$VERSION-$ARCH-$BUILD$TAG.${PKGTYPE:-tgz}
+/sbin/makepkg -l y -c n $OUTPUT/$PRGNAM-$VERSION-$ARCH-$BUILD$TAG.$PKGTYPE
diff --git a/games/d1x-rebirth/d1x-rebirth.info b/games/d1x-rebirth/d1x-rebirth.info
index 86cc4465ae..f20bb59a15 100644
--- a/games/d1x-rebirth/d1x-rebirth.info
+++ b/games/d1x-rebirth/d1x-rebirth.info
@@ -1,8 +1,8 @@
PRGNAM="d1x-rebirth"
-VERSION="0.58.1"
+VERSION="20220130_7258b7f"
HOMEPAGE="https://www.dxx-rebirth.com/"
-DOWNLOAD="https://www.dxx-rebirth.com/download/dxx/rebirth/d1x-rebirth_v0.58.1-src.tar.gz"
-MD5SUM="8f43e66191fdedd0c7ff9278719accf1"
+DOWNLOAD="https://ponce.cc/slackware/sources/repo/dxx-rebirth-20220130_7258b7f.tar.xz"
+MD5SUM="0aacba8e78a9a5cb5e52a5802604b13f"
DOWNLOAD_x86_64=""
MD5SUM_x86_64=""
REQUIRES="physfs"
diff --git a/games/d2x-rebirth/d2x-rebirth.SlackBuild b/games/d2x-rebirth/d2x-rebirth.SlackBuild
index 6dcca9ddff..0cafd4fd74 100644
--- a/games/d2x-rebirth/d2x-rebirth.SlackBuild
+++ b/games/d2x-rebirth/d2x-rebirth.SlackBuild
@@ -1,4 +1,4 @@
-#!/bin/sh
+#!/bin/bash
# Slackware build script for d2x-rebirth
@@ -23,10 +23,18 @@
# OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF THIS SOFTWARE, EVEN IF
# ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
+# 20220321 bkw: Modified by SlackBuilds.org: fix 32-bit build.
+# TODO: the executable needs to go in /usr/games, and the .desktop
+# needs absolute paths to the icon and executable.
+
+cd $(dirname $0) ; CWD=$(pwd)
+
PRGNAM=d2x-rebirth
-VERSION=${VERSION:-0.58.1}
+SRCNAM=dxx-rebirth
+VERSION=${VERSION:-20220130_7258b7f}
BUILD=${BUILD:-1}
TAG=${TAG:-_SBo}
+PKGTYPE=${PKGTYPE:-tgz}
if [ -z "$ARCH" ]; then
case "$( uname -m )" in
@@ -36,7 +44,11 @@ if [ -z "$ARCH" ]; then
esac
fi
-CWD=$(pwd)
+if [ ! -z "${PRINT_PACKAGE_NAME}" ]; then
+ echo "$PRGNAM-$VERSION-$ARCH-$BUILD$TAG.$PKGTYPE"
+ exit 0
+fi
+
TMP=${TMP:-/tmp/SBo}
PKG=$TMP/package-$PRGNAM
OUTPUT=${OUTPUT:-/tmp}
@@ -60,35 +72,33 @@ set -e
rm -rf $PKG
mkdir -p $TMP $PKG $OUTPUT
cd $TMP
-rm -rf ${PRGNAM}_v${VERSION}-src
-tar xvf $CWD/${PRGNAM}_v${VERSION}-src.tar.gz
-cd ${PRGNAM}_v${VERSION}-src
+rm -rf $SRCNAM-$VERSION
+tar xvf $CWD/$SRCNAM-$VERSION.tar.xz
+cd $SRCNAM-$VERSION
chown -R root:root .
find -L . \
\( -perm 777 -o -perm 775 -o -perm 750 -o -perm 711 -o -perm 555 -o -perm 511 \) \
- -exec chmod 755 {} \; -o \
+ -exec chmod 755 {} \+ -o \
\( -perm 666 -o -perm 664 -o -perm 600 -o -perm 444 -o -perm 440 -o -perm 400 \) \
- -exec chmod 644 {} \;
+ -exec chmod 644 {} \+
-# Patch for the newer physfs
-patch -p1 < $CWD/libphysfs-3.0.1.patch
+# 20220321 bkw: I hate scons, and I hate people who use -Werror and
+# don't give a sane way to disable it. I especially hate them if they
+# write code that triggers warnings... 32-bit builds were failing
+# because of this.
+sed -i -e "s,'-W','-Wno-'," -e "s,'-Werror=','-Wno-error='," SConstruct
# 'sharepath' is for the game-content data files, they can
# also perhaps more conveniently go in ~/.d2x-rebirth...
scons CXXFLAGS="$SLKCFLAGS" \
- CFLAGS="$SLKCFLAGS" \
prefix=/usr \
- sharepath=/usr/share/games/d2x-rebirth
+ sharepath=/usr/share/$PRGNAM \
+ d2x=1
# DESTDIR does not work so we do it manually:
-mkdir -p $PKG/usr/bin
-mv $PRGNAM $PKG/usr/bin
-
-# It is a commandline program but perhaps somebody will use these:
-mkdir -p $PKG/usr/share/pixmaps
-mv d2x-rebirth.xpm $PKG/usr/share/pixmaps
-mkdir -p $PKG/usr/share/applications/
-mv d2x-rebirth.desktop $PKG/usr/share/applications/
+install -D -m 0755 build/$PRGNAM/$PRGNAM $PKG/usr/bin/$PRGNAM
+install -D -m 0644 $PRGNAM/$PRGNAM.xpm $PKG/usr/share/pixmaps/$PRGNAM.xpm
+install -D -m 0644 $PRGNAM/$PRGNAM.desktop $PKG/usr/share/applications/$PRGNAM.desktop
find $PKG -print0 | xargs -0 file | grep -e "executable" -e "shared object" | grep ELF \
| cut -f 1 -d : | xargs strip --strip-unneeded 2> /dev/null || true
@@ -96,7 +106,7 @@ find $PKG -print0 | xargs -0 file | grep -e "executable" -e "shared object" | gr
# d2x.ini is a handy list of commandline options...
mkdir -p $PKG/usr/doc/$PRGNAM-$VERSION
cp -a \
- CHANGELOG.txt COPYING.txt INSTALL.txt README.txt RELEASE-NOTES.txt d2x.ini \
+ d2x-rebirth/{CHANGELOG.txt,RELEASE-NOTES.txt,d2x.ini} README.md COPYING* GPL* \
$PKG/usr/doc/$PRGNAM-$VERSION
cat $CWD/$PRGNAM.SlackBuild > $PKG/usr/doc/$PRGNAM-$VERSION/$PRGNAM.SlackBuild
@@ -105,4 +115,4 @@ cat $CWD/slack-desc > $PKG/install/slack-desc
cat $CWD/doinst.sh > $PKG/install/doinst.sh
cd $PKG
-/sbin/makepkg -l y -c n $OUTPUT/$PRGNAM-$VERSION-$ARCH-$BUILD$TAG.${PKGTYPE:-tgz}
+/sbin/makepkg -l y -c n $OUTPUT/$PRGNAM-$VERSION-$ARCH-$BUILD$TAG.$PKGTYPE
diff --git a/games/d2x-rebirth/d2x-rebirth.info b/games/d2x-rebirth/d2x-rebirth.info
index da4a2ed0a2..4c1f7a9b2e 100644
--- a/games/d2x-rebirth/d2x-rebirth.info
+++ b/games/d2x-rebirth/d2x-rebirth.info
@@ -1,8 +1,8 @@
PRGNAM="d2x-rebirth"
-VERSION="0.58.1"
+VERSION="20220130_7258b7f"
HOMEPAGE="https://www.dxx-rebirth.com/"
-DOWNLOAD="https://www.dxx-rebirth.com/download/dxx/rebirth/d2x-rebirth_v0.58.1-src.tar.gz"
-MD5SUM="584187fdd922d732e47a64451085eaca"
+DOWNLOAD="https://ponce.cc/slackware/sources/repo/dxx-rebirth-20220130_7258b7f.tar.xz"
+MD5SUM="0aacba8e78a9a5cb5e52a5802604b13f"
DOWNLOAD_x86_64=""
MD5SUM_x86_64=""
REQUIRES="physfs"
diff --git a/games/d2x-rebirth/libphysfs-3.0.1.patch b/games/d2x-rebirth/libphysfs-3.0.1.patch
deleted file mode 100644
index 082b8e9546..0000000000
--- a/games/d2x-rebirth/libphysfs-3.0.1.patch
+++ /dev/null
@@ -1,43 +0,0 @@
-From: Markus Koschany <apo@debian.org>
-Bug-Debian: https://bugs.debian.org/881589
-
-Index: d2x-rebirth-0.58.1/include/physfsrwops.h
-===================================================================
---- d2x-rebirth-0.58.1.orig/include/physfsrwops.h
-+++ d2x-rebirth-0.58.1/include/physfsrwops.h
-@@ -44,7 +44,7 @@ extern "C" {
- * @return A valid SDL_RWops structure on success, NULL on error. Specifics
- * of the error can be gleaned from PHYSFS_getLastError().
- */
--__EXPORT__ SDL_RWops *PHYSFSRWOPS_openRead(const char *fname);
-+PHYSFS_DECL SDL_RWops *PHYSFSRWOPS_openRead(const char *fname);
-
- /**
- * Open a platform-independent filename for writing, and make it accessible
-@@ -56,7 +56,7 @@ __EXPORT__ SDL_RWops *PHYSFSRWOPS_openRe
- * @return A valid SDL_RWops structure on success, NULL on error. Specifics
- * of the error can be gleaned from PHYSFS_getLastError().
- */
--__EXPORT__ SDL_RWops *PHYSFSRWOPS_openWrite(const char *fname);
-+PHYSFS_DECL SDL_RWops *PHYSFSRWOPS_openWrite(const char *fname);
-
- /**
- * Open a platform-independent filename for appending, and make it accessible
-@@ -68,7 +68,7 @@ __EXPORT__ SDL_RWops *PHYSFSRWOPS_openWr
- * @return A valid SDL_RWops structure on success, NULL on error. Specifics
- * of the error can be gleaned from PHYSFS_getLastError().
- */
--__EXPORT__ SDL_RWops *PHYSFSRWOPS_openAppend(const char *fname);
-+PHYSFS_DECL SDL_RWops *PHYSFSRWOPS_openAppend(const char *fname);
-
- /**
- * Make a SDL_RWops from an existing PhysicsFS file handle. You should
-@@ -80,7 +80,7 @@ __EXPORT__ SDL_RWops *PHYSFSRWOPS_openAp
- * @return A valid SDL_RWops structure on success, NULL on error. Specifics
- * of the error can be gleaned from PHYSFS_getLastError().
- */
--__EXPORT__ SDL_RWops *PHYSFSRWOPS_makeRWops(PHYSFS_file *handle);
-+PHYSFS_DECL SDL_RWops *PHYSFSRWOPS_makeRWops(PHYSFS_file *handle);
-
- #ifdef __cplusplus
- }
diff --git a/games/darkplaces/README b/games/darkplaces/README
index 4c32c28df8..1b078b8f19 100644
--- a/games/darkplaces/README
+++ b/games/darkplaces/README
@@ -6,20 +6,13 @@ asynchronous delta compression, a built in server browser, real-time
lighting, and bump mapping. It makes use of the OpenGL Shading
Language and supports Ogg Vorbis.
-By default the binaries will not be built from source, we will instead
-use the supplied binaries. if you wish to build your own binaries
-from source them pass SOURCE=YES to the build. There is a known
-issue with Darkplaces sometimes failing to compile if MAKEFLAGS is
-set higher than -j1. This should only be an issue if you have custom
-MAKEFLAGS set in your .bash_profile or in sbopkg.conf.
-
The application launcher will launch the OpenGL version of Quake,
however if you would prefer it to launch the SDL version then pass
-SDL=YES to the build.
+SDL=yes to the build.
Also the darkplaces game modifications are disabled by default to
maintain that "classic" look of the original quake. To enable the
-modifications, pass DPMOD=YES to the build.
+modifications, pass DPMOD=yes to the build.
*NOTE* DarkPlaces is only a game engine modification; you still need the
original quake *.pak game files to play quake. See README.SLACKWARE for
diff --git a/games/darkplaces/darkplaces.SlackBuild b/games/darkplaces/darkplaces.SlackBuild
index 2896b49f26..b53414e2bc 100644
--- a/games/darkplaces/darkplaces.SlackBuild
+++ b/games/darkplaces/darkplaces.SlackBuild
@@ -1,4 +1,4 @@
-#!/bin/sh
+#!/bin/bash
# Slackware build script for darkplaces
@@ -22,20 +22,32 @@
# OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF THIS SOFTWARE, EVEN IF
# ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
+# 20220401 bkw: Modified by SlackBuilds.org, BUILD=2:
+# - always build from source. the precompiled binaries no longer work
+# on Slackware 15.0 (missing libjpeg.so.8).
+# - absolute paths in .desktop file.
+
+cd $(dirname $0) ; CWD=$(pwd)
+
PRGNAM=darkplaces
VERSION=${VERSION:-20140513}
-BUILD=${BUILD:-1}
+BUILD=${BUILD:-2}
TAG=${TAG:-_SBo}
+PKGTYPE=${PKGTYPE:-tgz}
if [ -z "$ARCH" ]; then
case "$( uname -m )" in
- i?86) export ARCH=i486 ;;
+ i?86) export ARCH=i586 ;;
arm*) export ARCH=arm ;;
*) export ARCH=$( uname -m ) ;;
esac
fi
-CWD=$(pwd)
+if [ ! -z "${PRINT_PACKAGE_NAME}" ]; then
+ echo "$PRGNAM-$VERSION-$ARCH-$BUILD$TAG.$PKGTYPE"
+ exit 0
+fi
+
TMP=${TMP:-/tmp/SBo}
PKG=$TMP/package-$PRGNAM
OUTPUT=${OUTPUT:-/tmp}
@@ -45,16 +57,13 @@ SRCVER=${SRCVER:-enginesource20140513}
MODVER=${MODVER:-darkplacesmod20130301}
# By default we won't add the darkplaces game mods
-DPMOD=${DPMOD:-"NO"}
-
-# Pass SOURCE=YES if you want to build you binaries from source
-SOURCE=${SOURCE:-"NO"}
+DPMOD=${DPMOD:-"no"}
# By default application launcher will use opengl version
-SDL=${SDL:-"NO"}
+SDL=${SDL:-"no"}
-if [ "$ARCH" = "i486" ]; then
- SLKCFLAGS="-O2 -march=i486 -mtune=i686"
+if [ "$ARCH" = "i586" ]; then
+ SLKCFLAGS="-O2 -march=i586 -mtune=i686"
LIBDIRSUFFIX=""
BINARCH="686"
elif [ "$ARCH" = "i686" ]; then
@@ -69,7 +78,6 @@ else
# might not work at all, but we could try :)
SLKCFLAGS="-O2"
BINARCH=$ARCH
- SOURCE="YES"
fi
set -e
@@ -86,25 +94,19 @@ unzip $PRGNAM$SRCVER.zip # this is in the first zip file
chown -R root:root .
find -L . \
\( -perm 777 -o -perm 775 -o -perm 750 -o -perm 711 -o -perm 555 -o -perm 511 \) \
- -exec chmod 755 {} \; -o \
+ -exec chmod 755 {} \+ -o \
\( -perm 666 -o -perm 664 -o -perm 600 -o -perm 444 -o -perm 440 -o -perm 400 \) \
- -exec chmod 644 {} \;
+ -exec chmod 644 {} \+
-if [ "$SOURCE" != "NO" ]; then
- cd $PRGNAM
- make OPTIM_RELEASE="$SLKCFLAGS" release
- cd -
-fi
+( cd darkplaces ; patch -p1 < $CWD/gcc11.patch )
+
+cd $PRGNAM
+make OPTIM_RELEASE="$SLKCFLAGS" release
+cd -
# Create game directory and copy executables
mkdir -p $PKG/usr/share/games/darkplaces
-if [ "$SOURCE" = "NO" ]; then
- cp -a darkplaces-linux-$BINARCH-dedicated $PKG/usr/share/games/darkplaces/$PRGNAM-dedicated
- cp -a darkplaces-linux-$BINARCH-glx $PKG/usr/share/games/darkplaces/$PRGNAM-glx
- cp -a darkplaces-linux-$BINARCH-sdl $PKG/usr/share/games/darkplaces/$PRGNAM-sdl
-else
- cp -a $PRGNAM/$PRGNAM-{glx,sdl,dedicated} $PKG/usr/share/games/darkplaces
-fi
+install -s $PRGNAM/$PRGNAM-{glx,sdl,dedicated} $PKG/usr/share/games/darkplaces
# Create directory for original game *.pak files
mkdir -p $PKG/usr/share/games/darkplaces/id1
@@ -112,8 +114,8 @@ mkdir -p $PKG/usr/share/games/darkplaces/id1
# Add launchers to path
mkdir $PKG/usr/games
for i in glx sdl dedicated ; do
- cat $CWD/darkplaces-$i > $PKG/usr/games/darkplaces-$i ;
- chmod 0755 $PKG/usr/games/darkplaces-$i ;
+ cat $CWD/darkplaces-$i > $PKG/usr/games/darkplaces-$i
+ chmod 0755 $PKG/usr/games/darkplaces-$i
done
# Add application launcher
@@ -122,18 +124,18 @@ cat $CWD/$PRGNAM.desktop > $PKG/usr/share/applications/$PRGNAM.desktop
cat $CWD/quake.png > $PKG/usr/share/pixmaps/quake.png
# Make application launcher execute SDL version if requested.
-if [ "$SDL" != "NO" ]; then
+if [ "$SDL" != "no" ]; then
sed -i 's,darkplaces-glx,darkplaces-sdl,g' $PKG/usr/share/applications/$PRGNAM.desktop
fi
-if [ "$DPMOD" != "NO" ]; then
+if [ "$DPMOD" != "no" ]; then
unzip $CWD/$MODVER.zip
chown -R root:root dpmod
find dpmod \
\( -perm 777 -o -perm 775 -o -perm 750 -o -perm 711 -o -perm 555 -o -perm 511 \) \
- -exec chmod 755 {} \; -o \
+ -exec chmod 755 {} \+ -o \
\( -perm 666 -o -perm 664 -o -perm 600 -o -perm 444 -o -perm 440 -o -perm 400 \) \
- -exec chmod 644 {} \;
+ -exec chmod 644 {} \+
cp -a dpmod $PKG/usr/share/games/darkplaces
sed -i 's,exec ./darkplaces-glx,exec ./darkplaces-glx -game dpmod,g' \
$PKG/usr/games/darkplaces-glx
@@ -146,15 +148,9 @@ cp -a README-SDL.txt darkplaces.txt $PKG/usr/doc/$PRGNAM-$VERSION
cat $CWD/$PRGNAM.SlackBuild > $PKG/usr/doc/$PRGNAM-$VERSION/$PRGNAM.SlackBuild
cat $CWD/README.SLACKWARE > $PKG/usr/doc/$PRGNAM-$VERSION/README.SLACKWARE
-# We only need to strip the binaries if we're compiling from source
-if [ "$SOURCE" != "NO" ]; then
- find $PKG | xargs file | grep -e "executable" -e "shared object" | grep ELF \
- | cut -f 1 -d : | xargs strip --strip-unneeded 2> /dev/null || true
-fi
-
mkdir -p $PKG/install
cat $CWD/slack-desc > $PKG/install/slack-desc
cat $CWD/doinst.sh > $PKG/install/doinst.sh
cd $PKG
-/sbin/makepkg -l y -c n $OUTPUT/$PRGNAM-$VERSION-$ARCH-$BUILD$TAG.${PKGTYPE:-tgz}
+/sbin/makepkg -l y -c n $OUTPUT/$PRGNAM-$VERSION-$ARCH-$BUILD$TAG.$PKGTYPE
diff --git a/games/darkplaces/darkplaces.desktop b/games/darkplaces/darkplaces.desktop
index 796f1cfcd6..759328fb72 100644
--- a/games/darkplaces/darkplaces.desktop
+++ b/games/darkplaces/darkplaces.desktop
@@ -1,9 +1,9 @@
[Desktop Entry]
Name=Quake
GenericName=Darkplaces port of idsoftware's Quake
-Exec=darkplaces-glx
+Exec=/usr/games/darkplaces-glx
Terminal=false
Type=Application
Categories=Game;
-Icon=quake
+Icon=/usr/share/pixmaps/quake.png
StartupNotify=false
diff --git a/games/darkplaces/gcc11.patch b/games/darkplaces/gcc11.patch
new file mode 100644
index 0000000000..ec653f8bc8
--- /dev/null
+++ b/games/darkplaces/gcc11.patch
@@ -0,0 +1,89 @@
+--- a/dpsoftrast.c 2013-02-07 11:40:40.000000000 +0000
++++ b/dpsoftrast.c 2021-04-30 04:45:31.276607019 +0000
+@@ -21,6 +21,7 @@
+ #if defined(__APPLE__)
+ #include <libkern/OSAtomic.h>
+ #define ALIGN(var) var __attribute__((__aligned__(16)))
++ #define ALIGN_STRUCT(def) struct __attribute__((__aligned__(16))) def
+ #define ATOMIC(var) var __attribute__((__aligned__(4)))
+ #define MEMORY_BARRIER (_mm_sfence())
+ #define ATOMIC_COUNTER volatile int32_t
+@@ -29,6 +30,7 @@
+ #define ATOMIC_ADD(counter, val) ((void)OSAtomicAdd32Barrier((val), &(counter)))
+ #elif defined(__GNUC__) && defined(WIN32)
+ #define ALIGN(var) var __attribute__((__aligned__(16)))
++ #define ALIGN_STRUCT(def) struct __attribute__((__aligned__(16))) def
+ #define ATOMIC(var) var __attribute__((__aligned__(4)))
+ #define MEMORY_BARRIER (_mm_sfence())
+ //(__sync_synchronize())
+@@ -43,6 +45,7 @@
+ #define ATOMIC_ADD(counter, val) ((void)InterlockedExchangeAdd((LONG *) &(counter), (val)))
+ #elif defined(__GNUC__)
+ #define ALIGN(var) var __attribute__((__aligned__(16)))
++ #define ALIGN_STRUCT(def) struct __attribute__((__aligned__(16))) def
+ #define ATOMIC(var) var __attribute__((__aligned__(4)))
+ #define MEMORY_BARRIER (_mm_sfence())
+ //(__sync_synchronize())
+@@ -52,6 +55,7 @@
+ #define ATOMIC_ADD(counter, val) ((void)__sync_fetch_and_add(&(counter), (val)))
+ #elif defined(_MSC_VER)
+ #define ALIGN(var) __declspec(align(16)) var
++ #define ALIGN_STRUCT(def) ALIGN(struct def)
+ #define ATOMIC(var) __declspec(align(4)) var
+ #define MEMORY_BARRIER (_mm_sfence())
+ //(MemoryBarrier())
+@@ -65,6 +69,9 @@
+ #ifndef ALIGN
+ #define ALIGN(var) var
+ #endif
++#ifndef ALIGN_STRUCT
++#define ALIGN_STRUCT(def) def
++#endif
+ #ifndef ATOMIC
+ #define ATOMIC(var) var
+ #endif
+@@ -163,7 +170,7 @@
+ #define DPSOFTRAST_DRAW_MAXCOMMANDPOOL 2097152
+ #define DPSOFTRAST_DRAW_MAXCOMMANDSIZE 16384
+
+-typedef ALIGN(struct DPSOFTRAST_State_Command_Pool_s
++typedef ALIGN_STRUCT(DPSOFTRAST_State_Command_Pool_s
+ {
+ int freecommand;
+ int usedcommands;
+@@ -171,7 +178,7 @@
+ }
+ DPSOFTRAST_State_Command_Pool);
+
+-typedef ALIGN(struct DPSOFTRAST_State_Triangle_s
++typedef ALIGN_STRUCT(DPSOFTRAST_State_Triangle_s
+ {
+ unsigned char mip[DPSOFTRAST_MAXTEXTUREUNITS]; // texcoord to screen space density values (for picking mipmap of textures)
+ float w[3];
+@@ -198,7 +205,7 @@
+
+ #define DPSOFTRAST_DRAW_MAXSUBSPAN 16
+
+-typedef ALIGN(struct DPSOFTRAST_State_Span_s
++typedef ALIGN_STRUCT(DPSOFTRAST_State_Span_s
+ {
+ int triangle; // triangle this span was generated by
+ int x; // framebuffer x coord
+@@ -236,7 +243,7 @@
+ }
+ DPSOFTRAST_BLENDMODE;
+
+-typedef ALIGN(struct DPSOFTRAST_State_Thread_s
++typedef ALIGN_STRUCT(DPSOFTRAST_State_Thread_s
+ {
+ void *thread;
+ int index;
+@@ -302,7 +309,7 @@
+ }
+ DPSOFTRAST_State_Thread);
+
+-typedef ALIGN(struct DPSOFTRAST_State_s
++typedef ALIGN_STRUCT(DPSOFTRAST_State_s
+ {
+ int fb_width;
+ int fb_height;
diff --git a/games/ddnet/README b/games/ddnet/README
new file mode 100644
index 0000000000..9c09af28a0
--- /dev/null
+++ b/games/ddnet/README
@@ -0,0 +1,35 @@
+DDraceNetwork (DDNet) is an actively maintained version of DDRace,
+a Teeworlds modification with a unique cooperative gameplay. Help
+each other play through custom maps with up to 64 players, compete
+against the best in international tournaments, design your own maps,
+or run your own server. The official servers are around the world.
+All ranks made on official servers are available worldwide and you
+can collect points!
+
+Default build options:
+
+# Whether to enable WebSocket support for server
+# Requires libwebsockets from SBo
+WEBSOCKETS=no
+
+# Whether to enable MySQL/MariaDB support for server
+MYSQL=no
+
+# Whether to add video recording support using FFmpeg to the client
+# Requires x264 from SBo
+VIDEORECORDER=yes
+
+# Whether to enable UPnP support for the server
+# Requires miniupnpc from SBo
+UPNP=no
+
+# Whether to enable the vulkan backend
+VULKAN=yes
+
+# Enable interprocedural optimizations, also known as
+# Link Time Optimization (LTO)
+IPO=no
+
+# Whether to set security-relevant compiler flags
+# like -D_FORTIFY_SOURCE=2 and -fstack-protector-all
+SECURITY_COMPILER_FLAGS=yes
diff --git a/games/ddnet/ddnet.SlackBuild b/games/ddnet/ddnet.SlackBuild
new file mode 100644
index 0000000000..9c0505f297
--- /dev/null
+++ b/games/ddnet/ddnet.SlackBuild
@@ -0,0 +1,216 @@
+#!/bin/bash
+
+# Slackware build script for ddnet
+
+# Copyright 2024 i3slkiller <i3sl.1.3.3.0@gmail.com> (PGP fingerprint: 7B69 A55C 4533 F5E2 44C2 4889 095A 0992 0ECC A5AF)
+# All rights reserved.
+#
+# Permission to use, copy, modify, and distribute this software for
+# any purpose with or without fee is hereby granted, provided that
+# the above copyright notice and this permission notice appear in all
+# copies.
+#
+# THIS SOFTWARE IS PROVIDED ``AS IS'' AND ANY EXPRESSED OR IMPLIED
+# WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE IMPLIED WARRANTIES OF
+# MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE ARE DISCLAIMED.
+# IN NO EVENT SHALL THE AUTHORS AND COPYRIGHT HOLDERS AND THEIR
+# CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL,
+# SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT
+# LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF
+# USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND
+# ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY,
+# OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT
+# OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF
+# SUCH DAMAGE.
+# -----------------------------------------------------------------------------
+
+cd $(dirname $0) ; CWD=$(pwd)
+
+PRGNAM=ddnet
+SRCNAM=DDNet
+VERSION=${VERSION:-18.1}
+BUILD=${BUILD:-1}
+TAG=${TAG:-_SBo}
+PKGTYPE=${PKGTYPE:-tgz}
+
+# These variables are for proper matching version of source and package.
+# Regardless whether eg. 18.1-rc1 or 18.1_rc1 was passed into VERSION,
+# this script will unpack DDNet-18.1-rc1.tar.xz source tarball (SRCVER=18.1-rc1)
+# and produce ddnet-18.1_rc1-ARCH-1_SBo.tgz package (PKGVER=18.1_rc1).
+# For stable versions SRCVER and PKGVER will have the same value (SRCVER=PKGVER=18.1).
+SRCVER=${VERSION/_/-}
+PKGVER=${VERSION/-/_}
+
+# Whether to enable WebSocket support for server
+# Requires libwebsockets from SBo
+[ ${WEBSOCKETS:-no} == yes ] && USE_WEBSOCKETS=ON || USE_WEBSOCKETS=OFF
+
+# Whether to enable MySQL/MariaDB support for server
+[ ${MYSQL:-no} == yes ] && USE_MYSQL=ON || USE_MYSQL=OFF
+
+# Whether to add video recording support using FFmpeg to the client
+# Requires x264 from SBo
+[ ${VIDEORECORDER:-yes} == yes ] && USE_VIDEORECORDER=ON || USE_VIDEORECORDER=OFF
+
+# Whether to enable UPnP support for the server
+# Requires miniupnpc from SBo
+[ ${UPNP:-no} == yes ] && USE_UPNP=ON || USE_UPNP=OFF
+
+# Whether to enable the vulkan backend
+[ ${VULKAN:-yes} == yes ] && USE_VULKAN=ON || USE_VULKAN=OFF
+
+# Enable interprocedural optimizations, also known as Link Time Optimization (LTO)
+[ ${IPO:-no} == yes ] && USE_IPO=ON || USE_IPO=OFF
+
+# Whether to set security-relevant compiler flags like -D_FORTIFY_SOURCE=2 and -fstack-protector-all
+[ ${SECURITY_COMPILER_FLAGS:-yes} == yes ] && USE_SECURITY_COMPILER_FLAGS=ON || USE_SECURITY_COMPILER_FLAGS=OFF
+
+if [ -z "$ARCH" ]; then
+ case "$( uname -m )" in
+ i?86) ARCH=i586 ;;
+ arm*) ARCH=arm ;;
+ *) ARCH=$( uname -m ) ;;
+ esac
+fi
+
+if [ ! -z "${PRINT_PACKAGE_NAME}" ]; then
+ echo "$PRGNAM-$PKGVER-$ARCH-$BUILD$TAG.$PKGTYPE"
+ exit 0
+fi
+
+TMP=${TMP:-/tmp/SBo}
+PKG=$TMP/package-$PRGNAM
+OUTPUT=${OUTPUT:-/tmp}
+
+if [ "$ARCH" = "i586" ]; then
+ SLKCFLAGS="-O2 -march=i586 -mtune=i686"
+elif [ "$ARCH" = "i686" ]; then
+ SLKCFLAGS="-O2 -march=i686 -mtune=i686"
+elif [ "$ARCH" = "x86_64" ]; then
+ SLKCFLAGS="-O2 -fPIC"
+elif [ "$ARCH" = "aarch64" ]; then
+ SLKCFLAGS="-O2 -fPIC"
+else
+ SLKCFLAGS="-O2"
+fi
+
+set -e
+
+rm -rf $PKG
+mkdir -p $TMP $PKG $OUTPUT
+cd $TMP
+rm -rf $SRCNAM-$SRCVER
+tar xvf $CWD/$SRCNAM-$SRCVER.tar.?z
+cd $SRCNAM-$SRCVER
+
+# build offline
+# configuration tells cargo to use the configured directory
+# for dependencies instead of downloading from crates.io
+cat << EOF >> .cargo/config.toml
+[source]
+[source.crates-io]
+replace-with = "vendored-sources"
+
+[source.vendored-sources]
+directory = "vendor"
+EOF
+
+# deps and versions come from Cargo.lock
+mkdir vendor
+(
+ cd vendor
+
+ grep -h -A 4 "\[\[package\]\]" \
+ $(find "../" -maxdepth 1 -mindepth 1 -name Cargo.lock | tr '\n' ' ') | \
+ sed 's/[[:space:]]*=[[:space:]]*/=/g;s/^--//;s/^\[\[/--\n[[/' | \
+ awk 'BEGIN { RS = "--\n" ; FS="\n" } { print $2, $3, $4, $5 }' | \
+ sed 's/"//g;s/name=//;s/ version=/=/' | \
+ grep " source=" | \
+ sed 's/ dependencies=.*$//' | \
+ sed 's/ source=[^ ]*//' | \
+ sed 's/ checksum=/=/' | \
+ sort -u | \
+ while read -r dep ; do
+
+ cksum="$(printf "%s\n" "$dep" | cut -d= -f3)"
+ ver="$(printf "%s\n" "$dep" | cut -d= -f2)"
+ dep="$(printf "%s\n" "$dep" | cut -d= -f1)"
+
+ CRATE_FILE="$CWD/$dep-$ver.crate"
+
+ if [ -z "$cksum" ] ; then
+ mkdir $dep-$ver
+ tar xvf $CRATE_FILE -C $dep-$ver --strip-components=1
+ cksum="null"
+ else
+ tar xvf $CRATE_FILE
+ fi
+
+ touch $dep-$ver/.cargo-ok
+
+ # generate checksum
+ {
+ printf "{\n"
+ printf ' "files": {\n'
+
+ (
+ cd $dep-$ver
+ find . -type f -print0 | xargs -0 sha256sum | sed -n '/\.cargo-checksum\.json/!p' | sed 's/\.\///;s/^\([^ ]*\)[[:space:]][[:space:]]*\(.*\)$/"\2":"\1",/'
+ ) | sed '$ s/,$//'
+
+ printf " },\n"
+ printf ' "package": "%s"' "$cksum"
+
+ printf "}\n"
+ } | python3 -c "import sys, json; data = sys.stdin.read(); print(json.dumps(json.loads(data), sort_keys=True, indent=4, separators=(',', ' : ')))" > $dep-$ver/.cargo-checksum.json
+ done
+)
+
+chown -R root:root .
+find -L . \
+ \( -perm 777 -o -perm 775 -o -perm 750 -o -perm 711 -o -perm 555 \
+ -o -perm 511 \) -exec chmod 755 {} \; -o \
+ \( -perm 666 -o -perm 664 -o -perm 640 -o -perm 600 -o -perm 444 \
+ -o -perm 440 -o -perm 400 \) -exec chmod 644 {} \;
+
+export CARGO_HOME=.cargo
+
+mkdir -p build
+cd build
+ cmake .. \
+ -DCMAKE_C_FLAGS:STRING="$SLKCFLAGS" \
+ -DCMAKE_CXX_FLAGS:STRING="$SLKCFLAGS" \
+ -DCMAKE_INSTALL_PREFIX=/usr \
+ -DPREFER_BUNDLED_LIBS=OFF \
+ -DWEBSOCKETS=$USE_WEBSOCKETS \
+ -DMYSQL=$USE_MYSQL \
+ -DAUTOUPDATE=OFF \
+ -DCLIENT=ON \
+ -DVIDEORECORDER=$USE_VIDEORECORDER \
+ -DUPNP=$USE_UPNP \
+ -DVULKAN=$USE_VULKAN \
+ -DIPO=$USE_IPO \
+ -DSECURITY_COMPILER_FLAGS=$USE_SECURITY_COMPILER_FLAGS \
+ -DCMAKE_BUILD_TYPE=Release \
+ -GNinja
+ ninja
+ DESTDIR=$PKG ninja install/strip
+cd ..
+
+install -D -m0644 man/DDNet.6 -t $PKG/usr/man/man6
+install -D -m0644 man/DDNet-Server.6 -t $PKG/usr/man/man6
+find $PKG/usr/man -type f -exec gzip -9 {} \;
+for i in $( find $PKG/usr/man -type l ) ; do ln -s $( readlink $i ).gz $i.gz ; rm $i ; done
+
+mkdir -p "$PKG/usr/doc/$PRGNAM-$PKGVER"
+cp -a \
+ README.md license.txt \
+ $PKG/usr/doc/$PRGNAM-$PKGVER
+cat $CWD/$PRGNAM.SlackBuild > $PKG/usr/doc/$PRGNAM-$PKGVER/$PRGNAM.SlackBuild
+
+mkdir -p $PKG/install
+cat $CWD/slack-desc > $PKG/install/slack-desc
+cat $CWD/doinst.sh > $PKG/install/doinst.sh
+
+cd $PKG
+/sbin/makepkg -l y -c n $OUTPUT/$PRGNAM-$PKGVER-$ARCH-$BUILD$TAG.$PKGTYPE
diff --git a/games/ddnet/ddnet.info b/games/ddnet/ddnet.info
new file mode 100644
index 0000000000..718eaa839f
--- /dev/null
+++ b/games/ddnet/ddnet.info
@@ -0,0 +1,28 @@
+PRGNAM="ddnet"
+VERSION="18.1"
+HOMEPAGE="https://ddnet.org/"
+DOWNLOAD="https://ddnet.org/downloads/DDNet-18.1.tar.xz \
+ https://static.crates.io/crates/cc/cc-1.0.73.crate \
+ https://static.crates.io/crates/cxx/cxx-1.0.71.crate \
+ https://static.crates.io/crates/cxxbridge-flags/cxxbridge-flags-1.0.71.crate \
+ https://static.crates.io/crates/cxxbridge-macro/cxxbridge-macro-1.0.71.crate \
+ https://static.crates.io/crates/link-cplusplus/link-cplusplus-1.0.6.crate \
+ https://static.crates.io/crates/proc-macro2/proc-macro2-1.0.40.crate \
+ https://static.crates.io/crates/quote/quote-1.0.20.crate \
+ https://static.crates.io/crates/syn/syn-1.0.98.crate \
+ https://static.crates.io/crates/unicode-ident/unicode-ident-1.0.1.crate"
+MD5SUM="248c4beb3f27b5f75c209e81cbbd563b \
+ 8e3a4d0980acef2c4e74485a45de29a9 \
+ fda5c633e604f175e07829961763f18f \
+ a8b59a9c52b44b92ec73248f3c85c608 \
+ bc90dc352e1bb9251acfc87a38360b4a \
+ 3c40fc3b1a1484ef260cc3237eb97588 \
+ 76c12c914deb8149bffb7437aab133b0 \
+ 37812acc7a616d54221d786d215ef8cf \
+ 56aba66d1843b03c542c3558631eecbd \
+ 07327370ffe0d5e4c5b49a7d7a1452aa"
+DOWNLOAD_x86_64=""
+MD5SUM_x86_64=""
+REQUIRES="x264"
+MAINTAINER="i3slkiller"
+EMAIL="i3sl.1.3.3.0@gmail.com"
diff --git a/games/ddnet/doinst.sh b/games/ddnet/doinst.sh
new file mode 100644
index 0000000000..3e5691a052
--- /dev/null
+++ b/games/ddnet/doinst.sh
@@ -0,0 +1,9 @@
+if [ -x /usr/bin/update-desktop-database ]; then
+ /usr/bin/update-desktop-database -q usr/share/applications >/dev/null 2>&1
+fi
+
+if [ -e usr/share/icons/hicolor/icon-theme.cache ]; then
+ if [ -x /usr/bin/gtk-update-icon-cache ]; then
+ /usr/bin/gtk-update-icon-cache usr/share/icons/hicolor >/dev/null 2>&1
+ fi
+fi
diff --git a/games/ddnet/slack-desc b/games/ddnet/slack-desc
new file mode 100644
index 0000000000..1a739efd64
--- /dev/null
+++ b/games/ddnet/slack-desc
@@ -0,0 +1,19 @@
+# HOW TO EDIT THIS FILE:
+# The "handy ruler" below makes it easier to edit a package description. Line
+# up the first '|' above the ':' following the base package name, and the '|'
+# on the right side marks the last column you can put a character in. You must
+# make exactly 11 lines for the formatting to be correct. It's also
+# customary to leave one space after the ':'.
+
+ |-----handy-ruler------------------------------------------------------|
+ddnet: ddnet (DDraceNetwork)
+ddnet: DDraceNetwork (DDNet) is an actively maintained version of DDRace,
+ddnet: a Teeworlds modification with a unique cooperative gameplay. Help
+ddnet: each other play through custom maps with up to 64 players, compete
+ddnet: against the best in international tournaments, design your own maps,
+ddnet: or run your own server. The official servers are around the world.
+ddnet: All ranks made on official servers are available worldwide and you
+ddnet: can collect points!
+ddnet:
+ddnet:
+ddnet: Home: https://ddnet.org/
diff --git a/games/defendguin/README b/games/defendguin/README
index 230724d2dd..cb381f59e3 100644
--- a/games/defendguin/README
+++ b/games/defendguin/README
@@ -1,3 +1,5 @@
+defendguin (clone of the arcade game Defender)
+
Defendguin is a clone of the arcade game "Defender," but with a Linux
theme. Your mission is to defend little penguinoids from being captured
and mutated.
diff --git a/games/defendguin/defendguin.SlackBuild b/games/defendguin/defendguin.SlackBuild
index 8e4f80f848..1b9c0a22a0 100644
--- a/games/defendguin/defendguin.SlackBuild
+++ b/games/defendguin/defendguin.SlackBuild
@@ -1,15 +1,23 @@
-#!/bin/sh
+#!/bin/bash
# Slackware build script for defendguin
-# Written by B. Watson (yalhcru@gmail.com)
+# Written by B. Watson (urchlay@slackware.uk)
# Licensed under the WTFPL. See http://www.wtfpl.net/txt/copying/ for details.
+# 20230819 bkw: update for v0.0.13, use better icon.
+# 20230107 bkw: BUILD=2:
+# - fix man page permission.
+# - remove useless INSTALL from doc dir.
+
+cd $(dirname $0) ; CWD=$(pwd)
+
PRGNAM=defendguin
-VERSION=${VERSION:-0.0.12}
+VERSION=${VERSION:-0.0.13}
BUILD=${BUILD:-1}
TAG=${TAG:-_SBo}
+PKGTYPE=${PKGTYPE:-tgz}
if [ -z "$ARCH" ]; then
case "$( uname -m )" in
@@ -19,7 +27,11 @@ if [ -z "$ARCH" ]; then
esac
fi
-CWD=$(pwd)
+if [ ! -z "${PRINT_PACKAGE_NAME}" ]; then
+ echo "$PRGNAM-$VERSION-$ARCH-$BUILD$TAG.$PKGTYPE"
+ exit 0
+fi
+
TMP=${TMP:-/tmp/SBo}
PKG=$TMP/package-$PRGNAM
OUTPUT=${OUTPUT:-/tmp}
@@ -41,36 +53,56 @@ rm -rf $PRGNAM-$VERSION
tar xvf $CWD/$PRGNAM-$VERSION.tar.gz
cd $PRGNAM-$VERSION
chown -R root:root .
-find -L . \
- \( -perm 777 -o -perm 775 -o -perm 750 -o -perm 711 -o -perm 555 \
- -o -perm 511 \) -exec chmod 755 {} \; -o \
- \( -perm 666 -o -perm 664 -o -perm 640 -o -perm 600 -o -perm 444 \
- -o -perm 440 -o -perm 400 \) -exec chmod 644 {} \;
+find -L . -perm /111 -a \! -perm 755 -a -exec chmod 755 {} + -o \
+ \! -perm /111 -a \! -perm 644 -a -exec chmod 644 {} +
-patch -p1 < $CWD/install_paths.diff
+# Cruft removal:
+rm -f data/images/{l2r.sh,loader/loading-orig.bmp.gz,*/*.sh}
+
+# Fix path to data files in man page.
patch -p1 < $CWD/man.diff
-make COPT="$SLKCFLAGS"
-make install DESTDIR=$PKG
+# 20230819 bkw: use our flags, and don't install data +x.
+sed -i -e "s,-Wall,& $SLKCFLAGS," \
+ -e '/chmod /d' \
+ Makefile
-# Cruft removal:
-rm -f \
- $PKG/usr/share/$PRGNAM/images/l2r.sh \
- $PKG/usr/share/$PRGNAM/images/loader/loading-orig.bmp.gz
+# 20230819 bkw: 'make install' should create these, but doesn't:
+mkdir -p $PKG/usr/games $PKG/usr/share/games/$PRGNAM
+
+# 20230819 bkw: N.B. DATA_PREFIX needs the trailing / here!
+make DATA_PREFIX=/usr/share/games/$PRGNAM/
+strip $PRGNAM
+make install \
+ PREFIX=$PKG/usr \
+ BIN_PREFIX=$PKG/usr/games \
+ DATA_PREFIX=$PKG/usr/share/games/$PRGNAM/ \
+ MAN_PREFIX=$PKG/usr
+
+gzip -9 $PKG/usr/man/man?/*
mkdir -p $PKG/usr/doc/$PRGNAM-$VERSION
+rm -f docs/INSTALL.txt
cp docs/* $PKG/usr/doc/$PRGNAM-$VERSION
cat $CWD/$PRGNAM.SlackBuild > $PKG/usr/doc/$PRGNAM-$VERSION/$PRGNAM.SlackBuild
mkdir -p $PKG/usr/share/applications
cat $CWD/$PRGNAM.desktop > $PKG/usr/share/applications/$PRGNAM.desktop
+# 20230819 bkw: icon is a modified data/images/boss/boss01.bmp
+for i in $CWD/icons/*.png; do
+ px="$( basename "$i" .png )"
+ sz=${px}x${px}
+ dir=$PKG/usr/share/icons/hicolor/$sz/apps
+ mkdir -p $dir
+ cat "$i" > $dir/$PRGNAM.png
+done
mkdir -p $PKG/usr/share/pixmaps
-cat $CWD/$PRGNAM.png > $PKG/usr/share/pixmaps/$PRGNAM.png
+ln -s ../icons/hicolor/48x48/apps/$PRGNAM.png $PKG/usr/share/pixmaps/$PRGNAM.png
mkdir -p $PKG/install
cat $CWD/slack-desc > $PKG/install/slack-desc
cat $CWD/doinst.sh > $PKG/install/doinst.sh
cd $PKG
-/sbin/makepkg -l y -c n $OUTPUT/$PRGNAM-$VERSION-$ARCH-$BUILD$TAG.${PKGTYPE:-tgz}
+/sbin/makepkg -l y -c n $OUTPUT/$PRGNAM-$VERSION-$ARCH-$BUILD$TAG.$PKGTYPE
diff --git a/games/defendguin/defendguin.desktop b/games/defendguin/defendguin.desktop
index b01a0adcea..89ac51e4e8 100644
--- a/games/defendguin/defendguin.desktop
+++ b/games/defendguin/defendguin.desktop
@@ -1,6 +1,6 @@
[Desktop Entry]
Name=Defendguin
-Exec=defendguin
+Exec=/usr/games/defendguin
Type=Application
Icon=defendguin
Categories=Game;
diff --git a/games/defendguin/defendguin.info b/games/defendguin/defendguin.info
index 4c10e8572a..bb5137c8af 100644
--- a/games/defendguin/defendguin.info
+++ b/games/defendguin/defendguin.info
@@ -1,10 +1,10 @@
PRGNAM="defendguin"
-VERSION="0.0.12"
+VERSION="0.0.13"
HOMEPAGE="http://www.newbreedsoftware.com/defendguin/"
-DOWNLOAD="ftp://ftp.tuxpaint.org/unix/x/defendguin/src/defendguin-0.0.12.tar.gz"
-MD5SUM="a543e3f5f4e935546116384c6f20d782"
+DOWNLOAD="ftp://ftp.tuxpaint.org/unix/x/defendguin/src/defendguin-0.0.13.tar.gz"
+MD5SUM="11ffbe135c26f579359cd5bd396c1462"
DOWNLOAD_x86_64=""
MD5SUM_x86_64=""
REQUIRES=""
MAINTAINER="B. Watson"
-EMAIL="yalhcru@gmail.com"
+EMAIL="urchlay@slackware.uk"
diff --git a/games/defendguin/defendguin.png b/games/defendguin/defendguin.png
deleted file mode 100644
index 1d76e94219..0000000000
--- a/games/defendguin/defendguin.png
+++ /dev/null
Binary files differ
diff --git a/games/defendguin/doinst.sh b/games/defendguin/doinst.sh
index c3651bc867..65c7e2eeb9 100644
--- a/games/defendguin/doinst.sh
+++ b/games/defendguin/doinst.sh
@@ -1,5 +1,9 @@
-
if [ -x /usr/bin/update-desktop-database ]; then
- /usr/bin/update-desktop-database usr/share/applications >/dev/null 2>&1
+ /usr/bin/update-desktop-database -q usr/share/applications >/dev/null 2>&1
fi
+if [ -e usr/share/icons/hicolor/icon-theme.cache ]; then
+ if [ -x /usr/bin/gtk-update-icon-cache ]; then
+ /usr/bin/gtk-update-icon-cache -f usr/share/icons/hicolor >/dev/null 2>&1
+ fi
+fi
diff --git a/games/defendguin/icons/128.png b/games/defendguin/icons/128.png
new file mode 100644
index 0000000000..7a4b45d433
--- /dev/null
+++ b/games/defendguin/icons/128.png
Binary files differ
diff --git a/games/defendguin/icons/16.png b/games/defendguin/icons/16.png
new file mode 100644
index 0000000000..28b1879193
--- /dev/null
+++ b/games/defendguin/icons/16.png
Binary files differ
diff --git a/games/defendguin/icons/22.png b/games/defendguin/icons/22.png
new file mode 100644
index 0000000000..3a463a4406
--- /dev/null
+++ b/games/defendguin/icons/22.png
Binary files differ
diff --git a/games/defendguin/icons/32.png b/games/defendguin/icons/32.png
new file mode 100644
index 0000000000..49717e7554
--- /dev/null
+++ b/games/defendguin/icons/32.png
Binary files differ
diff --git a/games/defendguin/icons/48.png b/games/defendguin/icons/48.png
new file mode 100644
index 0000000000..445af1e14d
--- /dev/null
+++ b/games/defendguin/icons/48.png
Binary files differ
diff --git a/games/defendguin/icons/64.png b/games/defendguin/icons/64.png
new file mode 100644
index 0000000000..3cb2406dcc
--- /dev/null
+++ b/games/defendguin/icons/64.png
Binary files differ
diff --git a/games/defendguin/install_paths.diff b/games/defendguin/install_paths.diff
deleted file mode 100644
index 98f74388d6..0000000000
--- a/games/defendguin/install_paths.diff
+++ /dev/null
@@ -1,54 +0,0 @@
-diff -Naur defendguin-0.0.12/Makefile defendguin-0.0.12.patched/Makefile
---- defendguin-0.0.12/Makefile 2009-11-05 16:21:34.000000000 -0500
-+++ defendguin-0.0.12.patched/Makefile 2013-06-11 21:46:07.000000000 -0400
-@@ -9,11 +9,12 @@
-
- # User-definable stuff:
-
--CFLAGS=-Wall -O2
-+DESTDIR=
-+COPT=
- #DATA_PREFIX=$(PWD)/data/
--PREFIX=/usr/local
-+PREFIX=/usr
- MAN_PREFIX=$(PREFIX)
--BIN_PREFIX=$(PREFIX)/bin
-+BIN_PREFIX=$(PREFIX)/games
- DATA_PREFIX=$(PREFIX)/share/defendguin/
- JOY=YES
-
-@@ -24,7 +25,7 @@
- SDL_LDFLAGS := $(shell sdl-config --libs) -L/usr/X11R6/lib
- MIXER=-lSDL_mixer
- NOSOUNDFLAG=__SOUND
--CFLAGS=-Wall $(SDL_CFLAGS) -DDATA_PREFIX=\"$(DATA_PREFIX)\" -D$(NOSOUNDFLAG) \
-+CFLAGS=-Wall $(COPT) $(SDL_CFLAGS) -DDATA_PREFIX=\"$(DATA_PREFIX)\" -D$(NOSOUNDFLAG) \
- -DJOY_$(JOY)
- SDL_LIB=$(SDL_LDFLAGS) $(MIXER)
-
-@@ -37,14 +38,17 @@
- make defendguin MIXER= NOSOUNDFLAG=NOSOUND
-
- install: defendguin
-- install -d $(DATA_PREFIX)
-- cp -R data/* $(DATA_PREFIX)
-- chmod -R a+rX,g-w,o-w $(DATA_PREFIX)
-- cp defendguin $(BIN_PREFIX)/
-- chmod a+rx,g-w,o-w $(BIN_PREFIX)/defendguin
-- -mkdir -p $(MAN_PREFIX)/man/man6/
-- cp src/defendguin.6 $(MAN_PREFIX)/man/man6/
-- chmod a+rx,g-w,o-w $(MAN_PREFIX)/man/man6/defendguin.6
-+ install -d $(DESTDIR)$(DATA_PREFIX)
-+ install -d $(DESTDIR)$(MAN_PREFIX)/man/man6/
-+ install -d $(DESTDIR)$(BIN_PREFIX)
-+ cp -R data/* $(DESTDIR)$(DATA_PREFIX)
-+ chmod -R a+rX,g-w,o-w $(DESTDIR)$(DATA_PREFIX)
-+ strip defendguin
-+ cp defendguin $(DESTDIR)$(BIN_PREFIX)/
-+ chmod a+rx,g-w,o-w $(DESTDIR)$(BIN_PREFIX)/defendguin
-+ cp src/defendguin.6 $(DESTDIR)$(MAN_PREFIX)/man/man6/
-+ chmod a+rx,g-w,o-w $(DESTDIR)$(MAN_PREFIX)/man/man6/defendguin.6
-+ gzip -9 $(DESTDIR)$(MAN_PREFIX)/man/man6/defendguin.6
-
- uninstall:
- -rm -r $(DATA_PREFIX)
diff --git a/games/defendguin/man.diff b/games/defendguin/man.diff
index 1c306e39d9..f7726d2422 100644
--- a/games/defendguin/man.diff
+++ b/games/defendguin/man.diff
@@ -6,7 +6,7 @@ diff -Naur defendguin-0.0.11/src/defendguin.6 defendguin-0.0.11.patched/src/defe
Displays acceptable command\-line options.
.SH "FILES"
-\fI/usr/local/share/defendguin/\fP \- Sound, music and graphics data.
-+\fI/usr/share/defendguin/\fP \- Sound, music and graphics data.
++\fI/usr/share/games/defendguin/\fP \- Sound, music and graphics data.
+.LP
+\fI~/.defendguinrc\fP \- Per\-user settings
.LP
diff --git a/games/desmume/README b/games/desmume/README
index 2cfa4c89c4..93096732b3 100644
--- a/games/desmume/README
+++ b/games/desmume/README
@@ -1,4 +1,7 @@
-DeSmuME is a Nintendo DS emulator running homebrew demos and
+desmume (Nintendo DS emulator)
+
+DeSmuME is a Nintendo DS emulator running homebrew demos and
commercial games.
-lua is an optional dependency.
+Note: the desmume man page is horribly outdated. See "desmume --help"
+for a complete list of options.
diff --git a/games/desmume/desmume.SlackBuild b/games/desmume/desmume.SlackBuild
index 4e5fec368b..45531361b6 100644
--- a/games/desmume/desmume.SlackBuild
+++ b/games/desmume/desmume.SlackBuild
@@ -1,8 +1,8 @@
-#!/bin/sh
+#!/bin/bash
# Slackware build script for desmume
-# Copyright 2009-2015 Larry Hajali <larryhaja[at]gmail[dot]com>
+# Copyright 2009-2015 Larry Hajali <email removed>
# All rights reserved.
#
# Redistribution and use of this script, with or without modification, is
@@ -22,97 +22,110 @@
# OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF THIS SOFTWARE, EVEN IF
# ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
+# 20230605 bkw:
+# - new maintainer.
+# - update for v0.9.13.
+# - fix typo in .desktop file.
+# - fix doinst.sh.
+# - remove zziplib from REQUIRES (desmume doesn't use it at all).
+# - remove gtkglext from REQUIRES (desmume doesn't use it, even though
+# the README.LIN claims it does).
+# - remove mention of optional lua dep in README, because it's not real
+# (see src/frontend/posix/meson.build; it's commented out).
+
+# Notes:
+
+# agg and soundtouch are actually optional. leave them in REQUIRES for
+# now because I'm not feeling motivated enough to test what happens if
+# you build without them.
+
+# git repo here: https://github.com/TASEmulators/desmume
+# check for updates: https://github.com/TASEmulators/desmume/tags
+# game ROMs here: https://vimm.net/vault/DS (ad-ridden)
+
+cd $(dirname $0) ; CWD=$(pwd)
+
PRGNAM=desmume
-VERSION=${VERSION:-0.9.11}
+VERSION=${VERSION:-0.9.13}
BUILD=${BUILD:-1}
TAG=${TAG:-_SBo}
+PKGTYPE=${PKGTYPE:-tgz}
if [ -z "$ARCH" ]; then
case "$( uname -m )" in
- i?86) ARCH=i486 ;;
+ i?86) ARCH=i586 ;;
arm*) ARCH=arm ;;
*) ARCH=$( uname -m ) ;;
esac
fi
-CWD=$(pwd)
+if [ ! -z "${PRINT_PACKAGE_NAME}" ]; then
+ echo "$PRGNAM-$VERSION-$ARCH-$BUILD$TAG.$PKGTYPE"
+ exit 0
+fi
+
TMP=${TMP:-/tmp/SBo}
PKG=$TMP/package-$PRGNAM
OUTPUT=${OUTPUT:-/tmp}
-if [ "$ARCH" = "i486" ]; then
- SLKCFLAGS="-O2 -march=i486 -mtune=i686"
- LIBDIRSUFFIX=""
+if [ "$ARCH" = "i586" ]; then
+ SLKCFLAGS="-O2 -march=i586 -mtune=i686"
elif [ "$ARCH" = "i686" ]; then
SLKCFLAGS="-O2 -march=i686 -mtune=i686"
- LIBDIRSUFFIX=""
elif [ "$ARCH" = "x86_64" ]; then
SLKCFLAGS="-O2 -fPIC"
- LIBDIRSUFFIX="64"
else
SLKCFLAGS="-O2"
- LIBDIRSUFFIX=""
fi
set -e
+TARVER="release_$( echo $VERSION | sed 's,\.,_,g' )"
+
rm -rf $PKG
mkdir -p $TMP $PKG $OUTPUT
cd $TMP
-rm -rf $PRGNAM-$VERSION
-tar xvf $CWD/$PRGNAM-$VERSION.tar.gz
-cd $PRGNAM-$VERSION
+rm -rf $PRGNAM-$TARVER
+tar xvf $CWD/$PRGNAM-$TARVER.tar.gz
+cd $PRGNAM-$TARVER
chown -R root:root .
-find -L . \
- \( -perm 777 -o -perm 775 -o -perm 750 -o -perm 711 -o -perm 555 \
- -o -perm 511 \) -exec chmod 755 {} \; -o \
- \( -perm 666 -o -perm 664 -o -perm 640 -o -perm 600 -o -perm 444 \
- -o -perm 440 -o -perm 400 \) -exec chmod 644 {} \;
-
-# Fix end-of-line encoding.
-for i in AUTHORS; do
- cp -a $i ${i}.new
- sed -i 's/\r//' ${i}.new
- touch -r $i ${i}.new
- mv ${i}.new $i
-done
-
-# Fix missing header.
-patch -p1 < $CWD/osmesa-header-fix.patch
-
-CFLAGS="$SLKCFLAGS" \
-CXXFLAGS="$SLKCFLAGS" \
-./configure \
- --prefix=/usr \
- --bindir=/usr/games \
- --mandir=/usr/man \
- --enable-osmesa \
- --enable-hud \
- --enable-gdb-stub \
- --enable-wifi \
- --enable-openal \
- --enable-glade \
- --enable-glx \
- --with-x \
- --build=$ARCH-slackware-linux
-
-make
-make install DESTDIR=$PKG
-
-find $PKG -print0 | xargs -0 file | grep -e "executable" -e "shared object" | grep ELF \
- | cut -f 1 -d : | xargs strip --strip-unneeded 2> /dev/null || true
-
-find $PKG/usr/man -type f -exec gzip -9 {} \;
-
-mkdir -p $PKG/usr/doc/$PRGNAM-$VERSION
-cp -a \
- AUTHORS ChangeLog COPYING INSTALL README README.LIN ds*.txt \
- $PKG/usr/doc/$PRGNAM-$VERSION
-cat $CWD/$PRGNAM.SlackBuild > $PKG/usr/doc/$PRGNAM-$VERSION/$PRGNAM.SlackBuild
+find -L . -perm /111 -a \! -perm 755 -a -exec chmod 755 {} + -o \
+ \! -perm /111 -a \! -perm 644 -a -exec chmod 644 {} +
+
+cd $PRGNAM
+mkdir -p src/frontend/posix/build
+cd src/frontend/posix/build
+ CFLAGS="$SLKCFLAGS" \
+ CXXFLAGS="$SLKCFLAGS" \
+ meson .. \
+ --buildtype=release \
+ --prefix=/usr \
+ --bindir=/usr/games \
+ --mandir=/usr/man \
+ --optimization=2 \
+ --strip \
+ -Dc_args='-minline-all-stringops -D_FORTIFY_SOURCE=2' \
+ -Db_pie=true \
+ -Dopenal=true \
+ -Dwifi=true
+
+ "${NINJA:=ninja}"
+ DESTDIR=$PKG $NINJA install
+cd -
+
+# 20230605 bkw: this would drive me insane if I didn't fix it:
+sed -i 's,Nintento,Nintendo,g' $PKG/usr/share/applications/*.desktop
+
+gzip -9 $PKG/usr/man/man*/*
+
+PKGDOC=$PKG/usr/doc/$PRGNAM-$VERSION
+mkdir -p $PKGDOC
+cp -a AUTHORS ChangeLog COPYING README README.LIN doc/ds*.txt $PKGDOC
+cat $CWD/$PRGNAM.SlackBuild > $PKGDOC/$PRGNAM.SlackBuild
mkdir -p $PKG/install
cat $CWD/slack-desc > $PKG/install/slack-desc
cat $CWD/doinst.sh > $PKG/install/doinst.sh
cd $PKG
-/sbin/makepkg -l y -c n $OUTPUT/$PRGNAM-$VERSION-$ARCH-$BUILD$TAG.${PKGTYPE:-tgz}
+/sbin/makepkg -l y -c n $OUTPUT/$PRGNAM-$VERSION-$ARCH-$BUILD$TAG.$PKGTYPE
diff --git a/games/desmume/desmume.info b/games/desmume/desmume.info
index b06dd8381e..46bd5c010a 100644
--- a/games/desmume/desmume.info
+++ b/games/desmume/desmume.info
@@ -1,10 +1,10 @@
PRGNAM="desmume"
-VERSION="0.9.11"
+VERSION="0.9.13"
HOMEPAGE="http://desmume.org/"
-DOWNLOAD="http://downloads.sourceforge.net/desmume/desmume-0.9.11.tar.gz"
-MD5SUM="269b5d4ddc5715720469a9d0efc53044"
+DOWNLOAD="https://github.com/TASEmulators/desmume/archive/release_0_9_13/desmume-release_0_9_13.tar.gz"
+MD5SUM="d6c9bb4dd1dcaee9c0a5064663e66658"
DOWNLOAD_x86_64=""
MD5SUM_x86_64=""
-REQUIRES="OpenAL agg gtkglext soundtouch zziplib"
-MAINTAINER="Larry Hajali"
-EMAIL="larryhaja[at]gmail[dot]com"
+REQUIRES="agg soundtouch"
+MAINTAINER="B. Watson"
+EMAIL="urchlay@slackware.uk"
diff --git a/games/desmume/doinst.sh b/games/desmume/doinst.sh
index 5fb28930db..65c7e2eeb9 100644
--- a/games/desmume/doinst.sh
+++ b/games/desmume/doinst.sh
@@ -1,3 +1,9 @@
if [ -x /usr/bin/update-desktop-database ]; then
/usr/bin/update-desktop-database -q usr/share/applications >/dev/null 2>&1
fi
+
+if [ -e usr/share/icons/hicolor/icon-theme.cache ]; then
+ if [ -x /usr/bin/gtk-update-icon-cache ]; then
+ /usr/bin/gtk-update-icon-cache -f usr/share/icons/hicolor >/dev/null 2>&1
+ fi
+fi
diff --git a/games/desmume/osmesa-header-fix.patch b/games/desmume/osmesa-header-fix.patch
deleted file mode 100644
index 7ba5bd070f..0000000000
--- a/games/desmume/osmesa-header-fix.patch
+++ /dev/null
@@ -1,11 +0,0 @@
-diff -Naur desmume-0.9.11.orig/src/gtk/osmesa_3Demu.cpp desmume-0.9.11/src/gtk/osmesa_3Demu.cpp
---- desmume-0.9.11.orig/src/gtk/osmesa_3Demu.cpp 2015-02-14 15:05:26.000000000 +0000
-+++ desmume-0.9.11/src/gtk/osmesa_3Demu.cpp 2015-05-09 02:00:11.279367208 +0000
-@@ -20,6 +20,7 @@
-
- #ifdef HAVE_LIBOSMESA
- #include <stdlib.h>
-+#include <stdio.h>
- #include <GL/osmesa.h>
- #include "../OGLRender.h"
- #include "osmesa_3Demu.h"
diff --git a/games/devilutionx/README b/games/devilutionx/README
new file mode 100644
index 0000000000..0403a95fab
--- /dev/null
+++ b/games/devilutionx/README
@@ -0,0 +1,15 @@
+DevilutionX is a source port of Diablo and Hellfire that strives to
+make it simple to run the game while providing engine improvements,
+bugfixes, and some optional quality of life features.
+
+Check out the manual (https://github.com/diasurgical/devilutionX/wiki)
+for what features are available and how best to take advantage of
+them.
+
+You'll need access to the data from the original game. If you don't
+have an original CD then you can buy Diablo from GoG.com. Alternately
+you can use spawn.mpq from the shareware version, in place of
+DIABDAT.MPQ, to play the shareware portion of the game.
+
+Place mpqs in: $HOME/.local/share/diasurgical/devilution/ or
+/usr/share/diasurgical/devilutionx/
diff --git a/games/devilutionx/devilutionx.SlackBuild b/games/devilutionx/devilutionx.SlackBuild
new file mode 100644
index 0000000000..7a37e1e49f
--- /dev/null
+++ b/games/devilutionx/devilutionx.SlackBuild
@@ -0,0 +1,141 @@
+#!/bin/bash
+
+# Slackware build script for devilutionx
+
+# Copyright 2022-2024 Steven Voges <Oregon, USA>
+# All rights reserved.
+#
+# Redistribution and use of this script, with or without modification, is
+# permitted provided that the following conditions are met:
+#
+# 1. Redistributions of this script must retain the above copyright
+# notice, this list of conditions and the following disclaimer.
+#
+# THIS SOFTWARE IS PROVIDED BY THE AUTHOR "AS IS" AND ANY EXPRESS OR IMPLIED
+# WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE IMPLIED WARRANTIES OF
+# MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE ARE DISCLAIMED. IN NO
+# EVENT SHALL THE AUTHOR BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL,
+# SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT LIMITED TO,
+# PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, DATA, OR PROFITS;
+# OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY,
+# WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR
+# OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF THIS SOFTWARE, EVEN IF
+# ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
+
+cd $(dirname $0) ; CWD=$(pwd)
+
+PRGNAM=devilutionx
+SRCNAM=devilutionX
+VERSION=${VERSION:-1.5.2}
+LIBMPQ=${LIBMPQ:-b78d66c6fee6a501cc9b95d8556a129c68841b05}
+LIBSMACKERDEC=${LIBSMACKERDEC:-91e732bb6953489077430572f43fc802bf2c75b2}
+LIBZT=${LIBZT:-d6c6a069a5041a3e89594c447ced3f15d77618b8}
+ZEROTIERONE=${ZEROTIERONE:-b0b342579adf6cec3ee26ec7c6148ec66d01709f}
+LWIP=${LWIP:-32708c0a8b140efb545cc35101ee5fdeca6d6489}
+LWIPCONTRIB=${LWIPCONTRIB:-a57a8a213067912168baf978864a6f1adaacc042}
+BUILD=${BUILD:-1}
+TAG=${TAG:-_SBo}
+PKGTYPE=${PKGTYPE:-tgz}
+
+if [ -z "$ARCH" ]; then
+ case "$( uname -m )" in
+ i?86) ARCH=i586 ;;
+ arm*) ARCH=arm ;;
+ *) ARCH=$( uname -m ) ;;
+ esac
+fi
+
+if [ ! -z "${PRINT_PACKAGE_NAME}" ]; then
+ echo "$PRGNAM-$VERSION-$ARCH-$BUILD$TAG.$PKGTYPE"
+ exit 0
+fi
+
+TMP=${TMP:-/tmp/SBo}
+PKG=$TMP/package-$PRGNAM
+OUTPUT=${OUTPUT:-/tmp}
+DEPS=$TMP/$SRCNAM-$VERSION/build/_deps
+
+if [ "$ARCH" = "i586" ]; then
+ SLKCFLAGS="-O2 -march=i586 -mtune=i686"
+ LIBDIRSUFFIX=""
+elif [ "$ARCH" = "i686" ]; then
+ SLKCFLAGS="-O2 -march=i686 -mtune=i686"
+ LIBDIRSUFFIX=""
+elif [ "$ARCH" = "x86_64" ]; then
+ SLKCFLAGS="-O2 -fPIC"
+ LIBDIRSUFFIX="64"
+else
+ SLKCFLAGS="-O2"
+ LIBDIRSUFFIX=""
+fi
+
+set -e
+
+rm -rf $PKG
+mkdir -p $TMP $PKG $OUTPUT
+cd $TMP
+rm -rf $SRCNAM-$VERSION
+tar xvf $CWD/$SRCNAM-$VERSION.tar.gz
+
+mkdir -p $DEPS/libmpq-subbuild/libmpq-populate-prefix/src
+mkdir -p $DEPS/libsmackerdec-subbuild/libsmackerdec-populate-prefix/src
+mkdir -p $DEPS/libzt-src/ext/ZeroTierOne
+mkdir -p $DEPS/libzt-src/ext/lwip
+mkdir -p $DEPS/libzt-src/ext/lwip-contrib
+
+tar xvf $CWD/libmpq-$LIBMPQ.tar.gz -C \
+ $DEPS/libmpq-subbuild/libmpq-populate-prefix/src --strip-components 1
+tar xvf $CWD/libsmackerdec-$LIBSMACKERDEC.tar.gz -C \
+ $DEPS/libsmackerdec-subbuild/libsmackerdec-populate-prefix/src --strip-components 1
+tar xvf $CWD/libzt-$LIBZT.tar.gz -C \
+ $DEPS/libzt-src --strip-components 1
+tar xvf $CWD/ZeroTierOne-$ZEROTIERONE.tar.gz -C \
+ $DEPS/libzt-src/ext/ZeroTierOne --strip-components 1
+tar xvf $CWD/lwip-$LWIP.tar.gz -C \
+ $DEPS/libzt-src/ext/lwip --strip-components 1
+tar xvf $CWD/lwip-contrib-$LWIPCONTRIB.tar.gz -C \
+ $DEPS/libzt-src/ext/lwip-contrib --strip-components 1
+
+cd $SRCNAM-$VERSION
+chown -R root:root .
+find -L . \
+ \( -perm 777 -o -perm 775 -o -perm 750 -o -perm 711 -o -perm 555 \
+ -o -perm 511 \) -exec chmod 755 {} \; -o \
+ \( -perm 666 -o -perm 664 -o -perm 640 -o -perm 600 -o -perm 444 \
+ -o -perm 440 -o -perm 400 \) -exec chmod 644 {} \;
+
+cd build
+ cmake \
+ -DCMAKE_C_FLAGS:STRING="$SLKCFLAGS" \
+ -DCMAKE_CXX_FLAGS:STRING="$SLKCFLAGS" \
+ -DCMAKE_INSTALL_PREFIX=/usr \
+ -DBUILD_ASSETS_MPQ=ON \
+ -DBUILD_TESTING=OFF \
+ -DFETCHCONTENT_FULLY_DISCONNECTED=ON \
+ -DFETCHCONTENT_QUIET=OFF \
+ -DFETCHCONTENT_SOURCE_DIR_LIBMPQ=$DEPS/libmpq-subbuild/libmpq-populate-prefix/src \
+ -DFETCHCONTENT_SOURCE_DIR_LIBSMACKERDEC=$DEPS/libsmackerdec-subbuild/libsmackerdec-populate-prefix/src \
+ -DFETCHCONTENT_SOURCE_DIR_LIBZT=$DEPS/libzt-src \
+ -DVERSION_NUM=${VERSION} \
+ -DCMAKE_BUILD_TYPE=Release ..
+ make
+ make install/strip DESTDIR=$PKG
+cd ..
+
+rm -f $PKG/usr/share/diasurgical/$PRGNAM/README.txt
+
+find $PKG -print0 | xargs -0 file | grep -e "executable" -e "shared object" | grep ELF \
+ | cut -f 1 -d : | xargs strip --strip-unneeded 2> /dev/null || true
+
+mkdir -p $PKG/usr/doc/$PRGNAM-$VERSION
+cp -a \
+ *.md VERSION docs \
+ $PKG/usr/doc/$PRGNAM-$VERSION
+cat $CWD/$PRGNAM.SlackBuild > $PKG/usr/doc/$PRGNAM-$VERSION/$PRGNAM.SlackBuild
+
+mkdir -p $PKG/install
+cat $CWD/slack-desc > $PKG/install/slack-desc
+cat $CWD/doinst.sh > $PKG/install/doinst.sh
+
+cd $PKG
+/sbin/makepkg -l y -c n $OUTPUT/$PRGNAM-$VERSION-$ARCH-$BUILD$TAG.$PKGTYPE
diff --git a/games/devilutionx/devilutionx.info b/games/devilutionx/devilutionx.info
new file mode 100644
index 0000000000..47dcc77aaf
--- /dev/null
+++ b/games/devilutionx/devilutionx.info
@@ -0,0 +1,22 @@
+PRGNAM="devilutionx"
+VERSION="1.5.2"
+HOMEPAGE="https://github.com/diasurgical/devilutionX"
+DOWNLOAD="https://github.com/diasurgical/devilutionX/archive/1.5.2/devilutionX-1.5.2.tar.gz \
+ https://github.com/diasurgical/libmpq/archive/b78d66c6fee6a501cc9b95d8556a129c68841b05/libmpq-b78d66c6fee6a501cc9b95d8556a129c68841b05.tar.gz \
+ https://github.com/diasurgical/libsmackerdec/archive/91e732bb6953489077430572f43fc802bf2c75b2/libsmackerdec-91e732bb6953489077430572f43fc802bf2c75b2.tar.gz \
+ https://github.com/diasurgical/libzt/archive/d6c6a069a5041a3e89594c447ced3f15d77618b8/libzt-d6c6a069a5041a3e89594c447ced3f15d77618b8.tar.gz \
+ https://github.com/diasurgical/ZeroTierOne/archive/b0b342579adf6cec3ee26ec7c6148ec66d01709f/ZeroTierOne-b0b342579adf6cec3ee26ec7c6148ec66d01709f.tar.gz \
+ https://github.com/diasurgical/lwip/archive/32708c0a8b140efb545cc35101ee5fdeca6d6489/lwip-32708c0a8b140efb545cc35101ee5fdeca6d6489.tar.gz \
+ https://github.com/diasurgical/lwip-contrib/archive/a57a8a213067912168baf978864a6f1adaacc042/lwip-contrib-a57a8a213067912168baf978864a6f1adaacc042.tar.gz"
+MD5SUM="152f40d6648badaf79a4edb0b8e9633b \
+ da531a1a6f719e89798a26e679ffc329 \
+ c3b1ecbe702266e149b158178a03e2b3 \
+ 91089ccbb3edd29bfbdcd535ae0be2f5 \
+ 5e61d98f6635e135f8cfe62f77a669f3 \
+ 688cda39d46a1b2fdf23c1cdafbf6cfb \
+ ee5e810b1d00123bc6fc5c66ca84f967"
+DOWNLOAD_x86_64=""
+MD5SUM_x86_64=""
+REQUIRES="SDL_audiolib asio simpleini smpq"
+MAINTAINER="Steven Voges"
+EMAIL="svoges.sbo@gmail.com"
diff --git a/games/devilutionx/doinst.sh b/games/devilutionx/doinst.sh
new file mode 100644
index 0000000000..65c7e2eeb9
--- /dev/null
+++ b/games/devilutionx/doinst.sh
@@ -0,0 +1,9 @@
+if [ -x /usr/bin/update-desktop-database ]; then
+ /usr/bin/update-desktop-database -q usr/share/applications >/dev/null 2>&1
+fi
+
+if [ -e usr/share/icons/hicolor/icon-theme.cache ]; then
+ if [ -x /usr/bin/gtk-update-icon-cache ]; then
+ /usr/bin/gtk-update-icon-cache -f usr/share/icons/hicolor >/dev/null 2>&1
+ fi
+fi
diff --git a/games/devilutionx/slack-desc b/games/devilutionx/slack-desc
new file mode 100644
index 0000000000..f9d43cda09
--- /dev/null
+++ b/games/devilutionx/slack-desc
@@ -0,0 +1,19 @@
+# HOW TO EDIT THIS FILE:
+# The "handy ruler" below makes it easier to edit a package description.
+# Line up the first '|' above the ':' following the base package name, and
+# the '|' on the right side marks the last column you can put a character in.
+# You must make exactly 11 lines for the formatting to be correct. It's also
+# customary to leave one space after the ':' except on otherwise blank lines.
+
+ |-----handy-ruler------------------------------------------------------|
+devilutionx: devilutionx (Diablo build for modern operating systems)
+devilutionx:
+devilutionx: DevilutionX is a source port of Diablo and Hellfire that strives to
+devilutionx: make it simple to run the game while providing engine improvements,
+devilutionx: bugfixes, and some optional quality of life features.
+devilutionx:
+devilutionx: Homepage: https://github.com/diasurgical/devilutionX
+devilutionx:
+devilutionx:
+devilutionx:
+devilutionx:
diff --git a/games/dfarc/dfarc.SlackBuild b/games/dfarc/dfarc.SlackBuild
index fc30a11a30..d8ae3f1107 100644
--- a/games/dfarc/dfarc.SlackBuild
+++ b/games/dfarc/dfarc.SlackBuild
@@ -1,4 +1,4 @@
-#!/bin/sh
+#!/bin/bash
# Slackware build script for dfarc
@@ -22,10 +22,21 @@
# OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF THIS SOFTWARE, EVEN IF
# ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
+# 20230628 bkw: Modified by SlackBuilds.org, BUILD=3:
+# - add doinst.sh with update-desktop-database and gtk-update-icon-cache.
+
+# 20220222 bkw: Modified by SlackBuilds.org, BUILD=2:
+# - always use wxGTK3, regardless of wx-config symlink.
+# - fix .desktop.
+# - binary in /usr/games.
+
+cd $(dirname $0) ; CWD=$(pwd)
+
PRGNAM=dfarc
VERSION=${VERSION:-3.14}
-BUILD=${BUILD:-1}
+BUILD=${BUILD:-3}
TAG=${TAG:-_SBo}
+PKGTYPE=${PKGTYPE:-tgz}
if [ -z "$ARCH" ]; then
case "$( uname -m )" in
@@ -35,7 +46,11 @@ if [ -z "$ARCH" ]; then
esac
fi
-CWD=$(pwd)
+if [ ! -z "${PRINT_PACKAGE_NAME}" ]; then
+ echo "$PRGNAM-$VERSION-$ARCH-$BUILD$TAG.$PKGTYPE"
+ exit 0
+fi
+
TMP=${TMP:-/tmp/SBo}
PKG=$TMP/package-$PRGNAM
OUTPUT=${OUTPUT:-/tmp}
@@ -74,13 +89,17 @@ cd $PRGNAM-$VERSION
chown -R root:root .
find -L . \
\( -perm 777 -o -perm 775 -o -perm 750 -o -perm 711 -o -perm 555 \
- -o -perm 511 \) -exec chmod 755 {} \; -o \
+ -o -perm 511 \) -exec chmod 755 {} \+ -o \
\( -perm 666 -o -perm 664 -o -perm 640 -o -perm 600 -o -perm 444 \
- -o -perm 440 -o -perm 400 \) -exec chmod 644 {} \;
+ -o -perm 440 -o -perm 400 \) -exec chmod 644 {} \+
# ignore woeres.rc; do not install menu items
sed -i '/AC_CHECK_TOOL(WINDRES, windres)/d;/^[[:blank:]]*ac_desktopfiles=yes/s/.*/ac_desktopfiles=no/' configure.ac
+sed -i -e '/^Exec/s,=,=/usr/games/,' \
+ -e '/^Icon/s,=.*,=/usr/share/pixmaps/dfarc.png,' \
+ share/*.desktop.in
+
autoreconf --install --symlink --warnings=all && intltoolize --force
CFLAGS="$SLKCFLAGS" \
@@ -93,25 +112,24 @@ CXXFLAGS="$SLKCFLAGS" \
--mandir=/usr/man \
--docdir=/usr/doc/$PRGNAM-$VERSION \
--enable-static=no \
+ --bindir=/usr/games \
+ --with-wx-config=/usr/lib$LIBDIRSUFFIX/wx/config/gtk3-unicode-3.0 \
--build=$ARCH-slackware-linux
-make
-make install DESTDIR=$PKG
-
-find $PKG -print0 | xargs -0 file | grep -e "executable" -e "shared object" | grep ELF \
- | cut -f 1 -d : | xargs strip --strip-unneeded 2> /dev/null || true
+make V=1
-find $PKG/usr/man -type f -exec gzip -9 {} \;
-for i in $( find $PKG/usr/man -type l ) ; do ln -s $( readlink $i ).gz $i.gz ; rm $i ; done
+make install-strip DESTDIR=$PKG
+gzip -9 $PKG/usr/man/man*/*.1
mkdir -p $PKG/usr/doc/$PRGNAM-$VERSION
-cp ABOUT-NLS AUTHORS BUILD COPYING COPYING.DFArc COPYING.DFArc-2.0 ChangeLog NEWS README* \
+cp AUTHORS COPYING COPYING.DFArc COPYING.DFArc-2.0 ChangeLog NEWS README* \
TRANSLATIONS.txt $PKG/usr/doc/$PRGNAM-$VERSION
cat $CWD/$PRGNAM.SlackBuild > $PKG/usr/doc/$PRGNAM-$VERSION/$PRGNAM.SlackBuild
mkdir -p $PKG/install
cat $CWD/slack-desc > $PKG/install/slack-desc
+cat $CWD/doinst.sh > $PKG/install/doinst.sh
cd $PKG
-/sbin/makepkg -l y -c n $OUTPUT/$PRGNAM-$VERSION-$ARCH-$BUILD$TAG.${PKGTYPE:-tgz}
+/sbin/makepkg -l y -c n $OUTPUT/$PRGNAM-$VERSION-$ARCH-$BUILD$TAG.$PKGTYPE
diff --git a/games/dfarc/doinst.sh b/games/dfarc/doinst.sh
new file mode 100644
index 0000000000..65c7e2eeb9
--- /dev/null
+++ b/games/dfarc/doinst.sh
@@ -0,0 +1,9 @@
+if [ -x /usr/bin/update-desktop-database ]; then
+ /usr/bin/update-desktop-database -q usr/share/applications >/dev/null 2>&1
+fi
+
+if [ -e usr/share/icons/hicolor/icon-theme.cache ]; then
+ if [ -x /usr/bin/gtk-update-icon-cache ]; then
+ /usr/bin/gtk-update-icon-cache -f usr/share/icons/hicolor >/dev/null 2>&1
+ fi
+fi
diff --git a/games/dgen/dgen.SlackBuild b/games/dgen/dgen.SlackBuild
index 1dfad4f22f..8b6a965422 100644
--- a/games/dgen/dgen.SlackBuild
+++ b/games/dgen/dgen.SlackBuild
@@ -1,4 +1,4 @@
-#!/bin/sh
+#!/bin/bash
# Slackware build script for dgen
@@ -22,11 +22,19 @@
# OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF THIS SOFTWARE, EVEN IF
# ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
+# 20220318 bkw: Modified by SlackBuilds.org, BUILD=2:
+# - fix build on 32-bit. modern nasm hates the x86 asm code, so build
+# with --disable-asm.
+# - move binaries to /usr/games.
+
+cd $(dirname $0) ; CWD=$(pwd)
+
PRGNAM=dgen
SRCNAM=dgen-sdl
VERSION=${VERSION:-1.33}
-BUILD=${BUILD:-1}
+BUILD=${BUILD:-2}
TAG=${TAG:-_SBo}
+PKGTYPE=${PKGTYPE:-tgz}
if [ -z "$ARCH" ]; then
case "$( uname -m )" in
@@ -36,7 +44,11 @@ if [ -z "$ARCH" ]; then
esac
fi
-CWD=$(pwd)
+if [ ! -z "${PRINT_PACKAGE_NAME}" ]; then
+ echo "$PRGNAM-$VERSION-$ARCH-$BUILD$TAG.$PKGTYPE"
+ exit 0
+fi
+
TMP=${TMP:-/tmp/SBo}
PKG=$TMP/package-$PRGNAM
OUTPUT=${OUTPUT:-/tmp}
@@ -66,13 +78,15 @@ cd $SRCNAM-$VERSION
chown -R root:root .
find -L . \
\( -perm 777 -o -perm 775 -o -perm 750 -o -perm 711 -o -perm 555 \
- -o -perm 511 \) -exec chmod 755 {} \; -o \
+ -o -perm 511 \) -exec chmod 755 {} \+ -o \
\( -perm 666 -o -perm 664 -o -perm 640 -o -perm 600 -o -perm 444 \
- -o -perm 440 -o -perm 400 \) -exec chmod 644 {} \;
+ -o -perm 440 -o -perm 400 \) -exec chmod 644 {} \+
CFLAGS="$SLKCFLAGS" \
CXXFLAGS="$SLKCFLAGS" \
./configure \
+ --bindir=/usr/games \
+ --disable-asm \
--prefix=/usr \
--libdir=/usr/lib${LIBDIRSUFFIX} \
--sysconfdir=/etc \
@@ -82,13 +96,8 @@ CXXFLAGS="$SLKCFLAGS" \
--build=$ARCH-slackware-linux
make
-make install DESTDIR=$PKG
-
-find $PKG -print0 | xargs -0 file | grep -e "executable" -e "shared object" | grep ELF \
- | cut -f 1 -d : | xargs strip --strip-unneeded 2> /dev/null || true
-
-find $PKG/usr/man -type f -exec gzip -9 {} \;
-for i in $( find $PKG/usr/man -type l ) ; do ln -s $( readlink $i ).gz $i.gz ; rm $i ; done
+make install-strip DESTDIR=$PKG
+gzip -9 $PKG/usr/man/man*/*
mkdir -p $PKG/usr/doc/$PRGNAM-$VERSION
cp -a AUTHORS BUGS COPYING ChangeLog README $PKG/usr/doc/$PRGNAM-$VERSION
@@ -98,4 +107,4 @@ mkdir -p $PKG/install
cat $CWD/slack-desc > $PKG/install/slack-desc
cd $PKG
-/sbin/makepkg -l y -c n $OUTPUT/$PRGNAM-$VERSION-$ARCH-$BUILD$TAG.${PKGTYPE:-tgz}
+/sbin/makepkg -l y -c n $OUTPUT/$PRGNAM-$VERSION-$ARCH-$BUILD$TAG.$PKGTYPE
diff --git a/games/dhewm3/dhewm3.SlackBuild b/games/dhewm3/dhewm3.SlackBuild
index 683b4bcf0f..e897e0fe0c 100644
--- a/games/dhewm3/dhewm3.SlackBuild
+++ b/games/dhewm3/dhewm3.SlackBuild
@@ -1,4 +1,4 @@
-#!/bin/sh
+#!/bin/bash
# Slackware build script for dhewm3
@@ -22,10 +22,13 @@
# OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF THIS SOFTWARE, EVEN IF
# ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
+cd $(dirname $0) ; CWD=$(pwd)
+
PRGNAM=dhewm3
VERSION=${VERSION:-1.5.0}
BUILD=${BUILD:-1}
TAG=${TAG:-_SBo}
+PKGTYPE=${PKGTYPE:-tgz}
if [ -z "$ARCH" ]; then
case "$( uname -m )" in
@@ -35,7 +38,14 @@ if [ -z "$ARCH" ]; then
esac
fi
-CWD=$(pwd)
+# If the variable PRINT_PACKAGE_NAME is set, then this script will report what
+# the name of the created package would be, and then exit. This information
+# could be useful to other scripts.
+if [ ! -z "${PRINT_PACKAGE_NAME}" ]; then
+ echo "$PRGNAM-$VERSION-$ARCH-$BUILD$TAG.$PKGTYPE"
+ exit 0
+fi
+
TMP=${TMP:-/tmp/SBo}
PKG=$TMP/package-$PRGNAM
OUTPUT=${OUTPUT:-/tmp}
@@ -104,4 +114,4 @@ mkdir -p $PKG/install
cat $CWD/slack-desc > $PKG/install/slack-desc
cd $PKG
-/sbin/makepkg -l y -c n $OUTPUT/$PRGNAM-$VERSION-$ARCH-$BUILD$TAG.${PKGTYPE:-tgz}
+/sbin/makepkg -l y -c n $OUTPUT/$PRGNAM-$VERSION-$ARCH-$BUILD$TAG.$PKGTYPE
diff --git a/games/dhewm3/dhewm3.info b/games/dhewm3/dhewm3.info
index 14863f3fad..56b08fc91d 100644
--- a/games/dhewm3/dhewm3.info
+++ b/games/dhewm3/dhewm3.info
@@ -7,6 +7,6 @@ MD5SUM="cc770a4e454704405a83d8ea170706e8 \
6325f0936f59420d33668754032141cb"
DOWNLOAD_x86_64=""
MD5SUM_x86_64=""
-REQUIRES="OpenAL SDL2"
+REQUIRES=""
MAINTAINER="Hunter Sezen"
EMAIL="orbea@riseup.net"
diff --git a/games/dice/dice.SlackBuild b/games/dice/dice.SlackBuild
index 070e24d3ed..ca24cd3de7 100644
--- a/games/dice/dice.SlackBuild
+++ b/games/dice/dice.SlackBuild
@@ -1,28 +1,39 @@
-#!/bin/sh
+#!/bin/bash
# Slackware build script for dice
# Written by powtrix (@gmail.com)
+# 20220220 bkw: Modified by SlackBuilds.org, BUILD=2:
+# - fix 15.0 build.
+# - binary in /usr/games.
+
+cd $(dirname $0) ; CWD=$(pwd)
+
PRGNAM=dice
VERSION=${VERSION:-0.9}
-BUILD=${BUILD:-1}
+BUILD=${BUILD:-2}
TAG=${TAG:-_SBo}
+PKGTYPE=${PKGTYPE:-tgz}
if [ -z "$ARCH" ]; then
case "$( uname -m )" in
- i?86) ARCH=i486 ;;
+ i?86) ARCH=i586 ;;
arm*) ARCH=arm ;;
*) ARCH=$( uname -m ) ;;
esac
fi
-CWD=$(pwd)
+if [ ! -z "${PRINT_PACKAGE_NAME}" ]; then
+ echo "$PRGNAM-$VERSION-$ARCH-$BUILD$TAG.$PKGTYPE"
+ exit 0
+fi
+
TMP=${TMP:-/tmp/SBo}
PKG=$TMP/package-$PRGNAM
OUTPUT=${OUTPUT:-/tmp}
-if [ "$ARCH" = "i486" ]; then
- SLKCFLAGS="-O2 -march=i486 -mtune=i686"
+if [ "$ARCH" = "i586" ]; then
+ SLKCFLAGS="-O2 -march=i586 -mtune=i686"
LIBDIRSUFFIX=""
elif [ "$ARCH" = "i686" ]; then
SLKCFLAGS="-O2 -march=i686 -mtune=i686"
@@ -44,15 +55,17 @@ unzip $CWD/$PRGNAM.$VERSION.src.zip
chown -R root:root .
find -L . \
\( -perm 777 -o -perm 775 -o -perm 771 -o -perm 555 -o -perm 551 \) \
- -exec chmod 755 {} \; -o \
+ -exec chmod 755 {} \+ -o \
\( -perm 666 -o -perm 664 -o -perm 444 -o -perm 440 -o -perm 400 \) \
- -exec chmod 644 {} \;
+ -exec chmod 644 {} \+
+
+source /etc/profile.d/qt4.sh
sed -i "s,-O3,${SLKCFLAGS},g" Makefile
make
-mkdir -p $PKG/usr/bin
-cp -a dice $PKG/usr/bin
+mkdir -p $PKG/usr/games
+install -s -m0755 $PRGNAM $PKG/usr/games
mkdir -p $PKG/usr/doc/$PRGNAM-$VERSION
cp -a README.txt LICENSE.txt $PKG/usr/doc/$PRGNAM-$VERSION
@@ -61,4 +74,4 @@ mkdir -p $PKG/install
cat $CWD/slack-desc > $PKG/install/slack-desc
cd $PKG
-/sbin/makepkg -l y -c n $OUTPUT/$PRGNAM-$VERSION-$ARCH-$BUILD$TAG.${PKGTYPE:-tgz}
+/sbin/makepkg -l y -c n $OUTPUT/$PRGNAM-$VERSION-$ARCH-$BUILD$TAG.$PKGTYPE
diff --git a/games/dice/dice.info b/games/dice/dice.info
index 1a0537f31d..81dabd1a95 100644
--- a/games/dice/dice.info
+++ b/games/dice/dice.info
@@ -5,6 +5,6 @@ DOWNLOAD="http://sourceforge.net/projects/dice/files/DICE/DICE%200.9/dice.0.9.sr
MD5SUM="7cf6b3a33c4c569828060eca4dd2494a"
DOWNLOAD_x86_64=""
MD5SUM_x86_64=""
-REQUIRES=""
+REQUIRES="qt4"
MAINTAINER="powtrix"
EMAIL="powtrix@gmail.com"
diff --git a/games/digger/digger.SlackBuild b/games/digger/digger.SlackBuild
index 1ba31f7b8a..f8496d4c4b 100644
--- a/games/digger/digger.SlackBuild
+++ b/games/digger/digger.SlackBuild
@@ -1,8 +1,9 @@
-#!/bin/sh
+#!/bin/bash
# Slackware build script for digger
-# Copyright 2011-2016 Petar Petrov slackalaxy@gmail.com
+# Copyright 2011-2021 Petar Petrov slackalaxy@gmail.com
+# Copyright 2021 Johannes Schoepfer, Germany
# All rights reserved.
#
# Redistribution and use of this script, with or without modification, is
@@ -22,10 +23,13 @@
# OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF THIS SOFTWARE, EVEN IF
# ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
+cd $(dirname $0) ; CWD=$(pwd)
+
PRGNAM=digger
VERSION=${VERSION:-20020314}
-BUILD=${BUILD:-1}
+BUILD=${BUILD:-2}
TAG=${TAG:-_SBo}
+PKGTYPE=${PKGTYPE:-tgz}
if [ -z "$ARCH" ]; then
case "$( uname -m )" in
@@ -35,7 +39,11 @@ if [ -z "$ARCH" ]; then
esac
fi
-CWD=$(pwd)
+if [ ! -z "${PRINT_PACKAGE_NAME}" ]; then
+ echo "$PRGNAM-$VERSION-$ARCH-$BUILD$TAG.$PKGTYPE"
+ exit 0
+fi
+
TMP=${TMP:-/tmp/SBo}
PKG=$TMP/package-$PRGNAM
OUTPUT=${OUTPUT:-/tmp}
@@ -64,10 +72,10 @@ tar xvf $CWD/$PRGNAM-$VERSION.tar.gz
cd $PRGNAM-$VERSION
chown -R root:root .
find -L . \
- \( -perm 777 -o -perm 775 -o -perm 750 -o -perm 711 -o -perm 555 -o -perm 511 \) \
- -exec chmod 755 {} \; -o \
- \( -perm 666 -o -perm 664 -o -perm 600 -o -perm 444 -o -perm 440 -o -perm 400 \) \
- -exec chmod 644 {} \;
+ \( -perm 777 -o -perm 775 -o -perm 750 -o -perm 711 -o -perm 555 \
+ -o -perm 511 \) -exec chmod 755 {} \; -o \
+ \( -perm 666 -o -perm 664 -o -perm 640 -o -perm 600 -o -perm 444 \
+ -o -perm 440 -o -perm 400 \) -exec chmod 644 {} \;
CFLAGS="$SLKCFLAGS" \
CXXFLAGS="$SLKCFLAGS" \
@@ -91,4 +99,4 @@ cat $CWD/slack-desc > $PKG/install/slack-desc
cat $CWD/doinst.sh > $PKG/install/doinst.sh
cd $PKG
-/sbin/makepkg -l y -c n $OUTPUT/$PRGNAM-$VERSION-$ARCH-$BUILD$TAG.${PKGTYPE:-tgz}
+/sbin/makepkg -l y -c n $OUTPUT/$PRGNAM-$VERSION-$ARCH-$BUILD$TAG.$PKGTYPE
diff --git a/games/digger/digger.desktop b/games/digger/digger.desktop
index 472e21117f..2346785566 100644
--- a/games/digger/digger.desktop
+++ b/games/digger/digger.desktop
@@ -1,6 +1,6 @@
[Desktop Entry]
Categories=Game;
-Exec=digger
+Exec=digger /A
Icon=digger
Name=Digger
StartupNotify=false
diff --git a/games/digger/digger.info b/games/digger/digger.info
index 2c9ff4b4c3..2b0fdfbc79 100644
--- a/games/digger/digger.info
+++ b/games/digger/digger.info
@@ -6,5 +6,5 @@ MD5SUM="a16e90a49ed8ea90099b254d3ef5edfa"
DOWNLOAD_x86_64=""
MD5SUM_x86_64=""
REQUIRES=""
-MAINTAINER="Petar Petrov"
-EMAIL="slackalaxy@gmail.com"
+MAINTAINER="Johannes Schoepfer"
+EMAIL="slackbuilds@schoepfer.info"
diff --git a/games/dmagnetic/README b/games/dmagnetic/README
new file mode 100644
index 0000000000..4d077d03f4
--- /dev/null
+++ b/games/dmagnetic/README
@@ -0,0 +1,11 @@
+dmagnetic (interpreter for Magnetic Scrolls games)
+
+dMagnetic is an interpreter for classic adventure games, or
+interactive fiction, using the Magnetic Scrolls game engine. Supported
+games are "The Pawn", "The Guild of Thieves", "Jinxter", "Fish!",
+"Myth", "Corruption", and "Wonderland".
+
+The package includes the PDF user manual in /usr/doc/dmagnetic-$VERSION.
+
+This is a command-line application; it won't show up in your desktop
+menus.
diff --git a/games/dmagnetic/dmagnetic.SlackBuild b/games/dmagnetic/dmagnetic.SlackBuild
new file mode 100644
index 0000000000..a3cc5ca2af
--- /dev/null
+++ b/games/dmagnetic/dmagnetic.SlackBuild
@@ -0,0 +1,102 @@
+#!/bin/bash
+
+# Slackware build script for dmagnetic
+
+# Written by B. Watson (urchlay@slackware.uk)
+
+# Licensed under the WTFPL. See http://www.wtfpl.net/txt/copying/ for details.
+
+# Note: no desktop integration or icons here. This application has to
+# be run from the command line, unless the user's gone to the trouble
+# of creating an .ini file... and even then you have to put the game
+# name on the command line (so you'd need 7 .desktop files, none of
+# which would work OOTB).
+
+# MANVER is separate in case upstream produces e.g. a version 0.32.1
+# but keeps the manual version at 0.32. No idea if this will ever
+# happen. The manual source is available, as TeX source, but I see no
+# reason to build it instead of using the prebuilt PDF file.
+
+# 20230820 bkw: update for v0.37.
+# 20230128 bkw: update for v0.36 (that was quick!)
+# 20230112 bkw: update for v0.34.
+# 20220316 bkw: BUILD=2, derp, gzip the man pages.
+
+cd $(dirname $0) ; CWD=$(pwd)
+
+PRGNAM=dmagnetic
+SRCNAM=dMagnetic
+VERSION=${VERSION:-0.37}
+MANVER=${MANVER:-$VERSION}
+BUILD=${BUILD:-1}
+TAG=${TAG:-_SBo}
+PKGTYPE=${PKGTYPE:-tgz}
+
+if [ -z "$ARCH" ]; then
+ case "$( uname -m )" in
+ i?86) ARCH=i586 ;;
+ arm*) ARCH=arm ;;
+ *) ARCH=$( uname -m ) ;;
+ esac
+fi
+
+if [ ! -z "${PRINT_PACKAGE_NAME}" ]; then
+ echo "$PRGNAM-$VERSION-$ARCH-$BUILD$TAG.$PKGTYPE"
+ exit 0
+fi
+
+TMP=${TMP:-/tmp/SBo}
+PKG=$TMP/package-$PRGNAM
+OUTPUT=${OUTPUT:-/tmp}
+
+if [ "$ARCH" = "i586" ]; then
+ SLKCFLAGS="-O2 -march=i586 -mtune=i686"
+ LIBDIRSUFFIX=""
+elif [ "$ARCH" = "i686" ]; then
+ SLKCFLAGS="-O2 -march=i686 -mtune=i686"
+ LIBDIRSUFFIX=""
+elif [ "$ARCH" = "x86_64" ]; then
+ SLKCFLAGS="-O2 -fPIC"
+ LIBDIRSUFFIX="64"
+else
+ SLKCFLAGS="-O2"
+ LIBDIRSUFFIX=""
+fi
+
+set -e
+
+rm -rf $PKG
+mkdir -p $TMP $PKG $OUTPUT
+cd $TMP
+rm -rf ${SRCNAM}_$VERSION
+tar xvf $CWD/${SRCNAM}_$VERSION.tar.bz2
+cd ${SRCNAM}_$VERSION
+chown -R root:root .
+find -L . -perm /111 -a \! -perm 755 -a -exec chmod 755 {} \+ -o \
+ \! -perm /111 -a \! -perm 644 -a -exec chmod 644 {} \+
+
+make CFLAGS="$SLKCFLAGS"
+strip $SRCNAM
+make install \
+ MYPREFIX=$PKG/usr \
+ INSTALLBIN=$PKG/usr/games \
+ INSTALLMAN=$PKG/usr/man
+
+gzip $PKG/usr/man/man*/*
+
+# lowercase name aliases.
+ln -s $SRCNAM.6.gz $PKG/usr/man/man6/$PRGNAM.6.gz
+ln -s $SRCNAM $PKG/usr/games/$PRGNAM
+
+# game doesn't actually use the .txt files at runtime, mv to doc dir.
+PKGDOC=$PKG/usr/doc/$PRGNAM-$VERSION
+mkdir -p $PKGDOC
+mv $PKG/usr/share/games/$SRCNAM/{README,LICENSE}.txt $PKGDOC
+install -p -oroot -groot -m0644 $CWD/${SRCNAM}_${MANVER//./}.pdf $PKGDOC
+cat $CWD/$PRGNAM.SlackBuild > $PKGDOC/$PRGNAM.SlackBuild
+
+mkdir -p $PKG/install
+cat $CWD/slack-desc > $PKG/install/slack-desc
+
+cd $PKG
+/sbin/makepkg -l y -c n $OUTPUT/$PRGNAM-$VERSION-$ARCH-$BUILD$TAG.$PKGTYPE
diff --git a/games/dmagnetic/dmagnetic.info b/games/dmagnetic/dmagnetic.info
new file mode 100644
index 0000000000..ebf92bab62
--- /dev/null
+++ b/games/dmagnetic/dmagnetic.info
@@ -0,0 +1,12 @@
+PRGNAM="dmagnetic"
+VERSION="0.37"
+HOMEPAGE="https://www.dettus.net/dMagnetic/"
+DOWNLOAD="https://www.dettus.net/dMagnetic/dMagnetic_0.37.tar.bz2 \
+ https://www.dettus.net/dMagnetic/dMagnetic_037.pdf"
+MD5SUM="a8986fd4aee17fea818d218268c98d35 \
+ ac9f6334e5ae448df3fb633dfb317d52"
+DOWNLOAD_x86_64=""
+MD5SUM_x86_64=""
+REQUIRES=""
+MAINTAINER="B. Watson"
+EMAIL="urchlay@slackware.uk"
diff --git a/games/dmagnetic/slack-desc b/games/dmagnetic/slack-desc
new file mode 100644
index 0000000000..e7f5905282
--- /dev/null
+++ b/games/dmagnetic/slack-desc
@@ -0,0 +1,19 @@
+# HOW TO EDIT THIS FILE:
+# The "handy ruler" below makes it easier to edit a package description.
+# Line up the first '|' above the ':' following the base package name, and
+# the '|' on the right side marks the last column you can put a character in.
+# You must make exactly 11 lines for the formatting to be correct. It's also
+# customary to leave one space after the ':' except on otherwise blank lines.
+
+ |-----handy-ruler------------------------------------------------------|
+dmagnetic: dmagnetic (interpreter for Magnetic Scrolls games)
+dmagnetic:
+dmagnetic: dMagnetic is an interpreter for classic adventure games, or
+dmagnetic: interactive fiction, using the Magnetic Scrolls game engine. Supported
+dmagnetic: games are "The Pawn", "The Guild of Thieves", "Jinxter", "Fish!",
+dmagnetic: "Myth", "Corruption", and "Wonderland".
+dmagnetic:
+dmagnetic:
+dmagnetic:
+dmagnetic:
+dmagnetic:
diff --git a/games/dolphin-emu/README b/games/dolphin-emu/README
index d8612742c3..362efdb681 100644
--- a/games/dolphin-emu/README
+++ b/games/dolphin-emu/README
@@ -1,23 +1,22 @@
-Dolphin is a Gamecube, Wii and Triforce (the arcade machine based on
-the Gamecube) emulator which supports many extra features and
-abilities not present on the original consoles. Gamecube and Wii
-compatibility is good - one can expect "mainstream" titles to run;
-lesser known titles can be hit or miss. Triforce compatibility is
-currently limited to a couple of games - others require more of the
-Triforce-specific peripheral devices to be emulated.
+Dolphin is an emulator for two recent Nintendo video game consoles:
+the GameCube and the Wii. It allows PC gamers to enjoy games for these
+two consoles in full HD (1080p) with several enhancements:
+compatibility with all PC controllers, turbo speed, networked
+multiplayer, and even more!
-Optional dependencies: SFML, OpenAL, portaudio, soil, miniupnpc,
-soundtouch, ffmpeg, wxGTK3, gtest, embedtls and SDL2
+Dolphin will optionally build against internal system packages if
+present, these include: SFML, enet, fmt, hidapi, mbedtls, libminizip,
+libspng, mgba, miniupnpc, pugixml, and zstd-cmake.
-Optional dependencies (not used): wayland
+Analytic data collection is enabled by default, however, users are
+prompted about this on first launch. To disable analytics without being
+prompted, pass ANALYTICS=OFF to the build script.
-Optional dependencies (not on SBo): xxhash
+Discord Rich Presence is disabled by default, to enable Discord
+functionality, pass DISCORD=ON to the build script.
-Note: Wayland support is not enabled even if it is installed. Dolphin
-requires mesa to be rebuilt with Wayland support using the following
-configure parameters.
+If you would like to disable Gameboy Advance controller support, pass
+USEMGBA=OFF to the build script. This will remove the mgba dependecy.
- --with-egl-platforms=x11,drm,wayland
-
-In addition to adding Wayland support to mesa, libxkbcommon needs to
-be installed (version >= 0.4.0) that also requires xcb >= 1.10.
+If you have installed mgba <= 0.10.0, this build will fail, please
+install 0.10.0+ or 'removepkg mgba' prior to running this script.
diff --git a/games/dolphin-emu/doinst.sh b/games/dolphin-emu/doinst.sh
index 65c7e2eeb9..262eb5a9e5 100644
--- a/games/dolphin-emu/doinst.sh
+++ b/games/dolphin-emu/doinst.sh
@@ -2,6 +2,11 @@ if [ -x /usr/bin/update-desktop-database ]; then
/usr/bin/update-desktop-database -q usr/share/applications >/dev/null 2>&1
fi
+if [ -x /usr/bin/update-mime-database ]; then
+ /usr/bin/update-mime-database usr/share/mime >/dev/null 2>&1
+fi
+
+# If other icon themes are installed, then add to/modify this as needed
if [ -e usr/share/icons/hicolor/icon-theme.cache ]; then
if [ -x /usr/bin/gtk-update-icon-cache ]; then
/usr/bin/gtk-update-icon-cache -f usr/share/icons/hicolor >/dev/null 2>&1
diff --git a/games/dolphin-emu/dolphin-emu.SlackBuild b/games/dolphin-emu/dolphin-emu.SlackBuild
index a254bf93aa..95732087f6 100644
--- a/games/dolphin-emu/dolphin-emu.SlackBuild
+++ b/games/dolphin-emu/dolphin-emu.SlackBuild
@@ -1,7 +1,8 @@
-#!/bin/sh
+#!/bin/bash
# Slackware build script for dolphin-emu
+# Copyright 2022-2023 Steven Voges <Oregon, USA>
# Copyright 2013-2017 Larry Hajali <larryhaja[at]gmail[dot]com>
# All rights reserved.
#
@@ -22,10 +23,26 @@
# OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF THIS SOFTWARE, EVEN IF
# ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
+cd $(dirname $0) ; CWD=$(pwd)
+
PRGNAM=dolphin-emu
-VERSION=${VERSION:-5.0}
-BUILD=${BUILD:-2}
+SRCNAM=dolphin
+VERSION=${VERSION:-5.0.20059}
+COMMIT=$(echo $VERSION | cut -c 5-)
+SRCVER=${SRCVER:-5e5887a378db28324a8fc8825f21539525412e12}
+IMPLOT=${IMPLOT:-cc5e1daa5c7f2335a9460ae79c829011dc5cef2d}
+LIBSPNG=${LIBSPNG:-dc5b1032c08efac68ad30170f7ccbf0aa8dd55c9}
+MGBA=${MGBA:-8739b22fbc90fdf0b4f6612ef9c0520f0ba44a51}
+RCHEEVOS=${RCHEEVOS:-d9e990e6d13527532b7e2bb23164a1f3b7f33bb5}
+SPIRVCROSS=${SPIRVCROSS:-50b4d5389b6a06f86fb63a2848e1a7da6d9755ca}
+VULKANMEMORYALLOCATOR=${VULKANMEMORYALLOCATOR:-498e20dfd1343d99b9115201034bb0219801cdec}
+ZLIBNG=${ZLIBNG:-ce01b1e41da298334f8214389cc9369540a7560f}
+ANALYTICS=${ANALYTICS:-ON}
+DISCORD=${DISCORD:-OFF}
+USEMGBA=${USEMGBA:-ON}
+BUILD=${BUILD:-1}
TAG=${TAG:-_SBo}
+PKGTYPE=${PKGTYPE:-tgz}
if [ -z "$ARCH" ]; then
case "$( uname -m )" in
@@ -35,10 +52,15 @@ if [ -z "$ARCH" ]; then
esac
fi
-CWD=$(pwd)
+if [ ! -z "${PRINT_PACKAGE_NAME}" ]; then
+ echo "$PRGNAM-$VERSION-$ARCH-$BUILD$TAG.$PKGTYPE"
+ exit 0
+fi
+
TMP=${TMP:-/tmp/SBo}
PKG=$TMP/package-$PRGNAM
OUTPUT=${OUTPUT:-/tmp}
+DEPS=$TMP/$SRCNAM-$SRCVER/Externals
if [ "$ARCH" = "i586" ]; then
SLKCFLAGS="-O2 -march=i586 -mtune=i686"
@@ -59,9 +81,29 @@ set -e
rm -rf $PKG
mkdir -p $TMP $PKG $OUTPUT
cd $TMP
-rm -rf ${PRGNAM/-*/}-$VERSION
-tar xvf $CWD/${PRGNAM/-*/}-$VERSION.tar.?z
-cd ${PRGNAM/-*/}-$VERSION
+rm -rf $SRCNAM-$SRCVER
+tar xvf $CWD/$SRCNAM-$SRCVER.tar.gz
+cd $SRCNAM-$SRCVER
+
+tar xvf $CWD/SPIRV-Cross-$SPIRVCROSS.tar.gz -C \
+ $DEPS/spirv_cross/SPIRV-Cross --strip-components 1
+tar xvf $CWD/VulkanMemoryAllocator-$VULKANMEMORYALLOCATOR.tar.gz -C \
+ $DEPS/VulkanMemoryAllocator --strip-components 1
+tar xvf $CWD/implot-$IMPLOT.tar.gz -C \
+ $DEPS/implot/implot --strip-components 1
+tar xvf $CWD/libspng-$LIBSPNG.tar.gz -C \
+ $DEPS/libspng/libspng --strip-components 1
+if [ ${USEMGBA} = "ON" ]; then
+ tar xvf $CWD/mgba-$MGBA.tar.gz -C \
+ $DEPS/mGBA/mgba --strip-components 1
+fi
+tar xvf $CWD/rcheevos-$RCHEEVOS.tar.gz -C \
+ $DEPS/rcheevos/rcheevos --strip-components 1
+tar xvf $CWD/zlib-ng-$ZLIBNG.tar.gz -C \
+ $DEPS/zlib-ng/zlib-ng --strip-components 1
+
+sed -i "s/ (no further info)/-$COMMIT/g" CMake/ScmRevGen.cmake
+
chown -R root:root .
find -L . \
\( -perm 777 -o -perm 775 -o -perm 750 -o -perm 711 -o -perm 555 \
@@ -69,26 +111,33 @@ find -L . \
\( -perm 666 -o -perm 664 -o -perm 640 -o -perm 600 -o -perm 444 \
-o -perm 440 -o -perm 400 \) -exec chmod 644 {} \;
-mkdir build
+# LTO currently breaks JIT and will crash dolphin on game load.
+# fmt10 is not supported by dolphin yet, force bundled fmt9.
+# mgba 0.10.2 changed functions that break compilation, force bundled mgba.
+mkdir -p build
cd build
- cmake -G "Unix Makefiles" \
- -DCMAKE_INSTALL_PREFIX:PATH=/usr \
- -Dbindir=/usr/games \
- -Dmandir=/usr/man \
- -DLIB_INSTALL_DIR=lib${LIBDIRSUFFIX} \
- -DENABLE_LTO:BOOL=ON \
- -DUSE_SHARED_GTEST:BOOL=ON \
- -DUSE_SHARED_ENET:BOOL=ON \
- -DENABLE_SDL:BOOL=ON \
- -DINSTALL_LIB_DIR=/usr/lib${LIBDIRSUFFIX} \
+ cmake \
-DCMAKE_C_FLAGS:STRING="$SLKCFLAGS" \
-DCMAKE_CXX_FLAGS:STRING="$SLKCFLAGS" \
- -DDISTRIBUTOR="Slackware" \
+ -DCMAKE_INSTALL_PREFIX=/usr \
+ -DLIB_INSTALL_DIR=/usr/lib${LIBDIRSUFFIX} \
+ -Dmandir=/usr/man \
+ -DDISTRIBUTOR=SlackBuilds.org \
+ -DENABLE_ANALYTICS=$ANALYTICS \
+ -DENABLE_LTO=OFF \
+ -DENABLE_SDL=ON \
+ -DENABLE_TESTS=OFF \
+ -DUSE_DISCORD_PRESENCE=$DISCORD \
+ -DUSE_MGBA=$USEMGBA \
+ -DUSE_SYSTEM_CUBEB=ON \
+ -DUSE_SYSTEM_FMT=OFF \
+ -DUSE_SYSTEM_LIBMGBA=OFF \
-DCMAKE_BUILD_TYPE=Release ..
+ make
+ make install/strip DESTDIR=$PKG
+cd ..
- make VERBOSE=1
- make install DESTDIR=$PKG
-cd -
+mv $PKG/usr/share/man $PKG/usr/man
find $PKG -print0 | xargs -0 file | grep -e "executable" -e "shared object" | grep ELF \
| cut -f 1 -d : | xargs strip --strip-unneeded 2> /dev/null || true
@@ -96,14 +145,10 @@ find $PKG -print0 | xargs -0 file | grep -e "executable" -e "shared object" | gr
find $PKG/usr/man -type f -exec gzip -9 {} \;
for i in $( find $PKG/usr/man -type l ) ; do ln -s $( readlink $i ).gz $i.gz ; rm $i ; done
-for i in 16 32 64 128; do
- convert Installer/Dolphin.ico -resize ${i}x${i}! $PRGNAM-${i}.png
- install -D -m 0644 $PRGNAM-${i}-3.png \
- $PKG/usr/share/icons/hicolor/${i}x${i}/apps/$PRGNAM.png
-done
-
mkdir -p $PKG/usr/doc/$PRGNAM-$VERSION
-cp -a license.txt *.md $PKG/usr/doc/$PRGNAM-$VERSION
+cp -a \
+ docs LICENSES/* *.md COPYING \
+ $PKG/usr/doc/$PRGNAM-$VERSION
cat $CWD/$PRGNAM.SlackBuild > $PKG/usr/doc/$PRGNAM-$VERSION/$PRGNAM.SlackBuild
mkdir -p $PKG/install
@@ -111,4 +156,4 @@ cat $CWD/slack-desc > $PKG/install/slack-desc
cat $CWD/doinst.sh > $PKG/install/doinst.sh
cd $PKG
-/sbin/makepkg -l y -c n $OUTPUT/$PRGNAM-$VERSION-$ARCH-$BUILD$TAG.${PKGTYPE:-tgz}
+/sbin/makepkg -l y -c n $OUTPUT/$PRGNAM-$VERSION-$ARCH-$BUILD$TAG.$PKGTYPE
diff --git a/games/dolphin-emu/dolphin-emu.info b/games/dolphin-emu/dolphin-emu.info
index 657b8e5cf0..4ede3dd7ef 100644
--- a/games/dolphin-emu/dolphin-emu.info
+++ b/games/dolphin-emu/dolphin-emu.info
@@ -1,10 +1,24 @@
PRGNAM="dolphin-emu"
-VERSION="5.0"
-HOMEPAGE="https://dolphin-emu.org/"
+VERSION="5.0.20059"
+HOMEPAGE="https://dolphin-emu.org"
DOWNLOAD="UNSUPPORTED"
MD5SUM=""
-DOWNLOAD_x86_64="https://github.com/dolphin-emu/dolphin/archive/5.0/dolphin-5.0.tar.gz"
-MD5SUM_x86_64="ed94272956adbec690808f6e4d8ff065"
-REQUIRES=""
-MAINTAINER="Larry Hajali"
-EMAIL="larryhaja[at]gmail[dot]com"
+DOWNLOAD_x86_64="https://github.com/dolphin-emu/dolphin/archive/5e5887a378db28324a8fc8825f21539525412e12/dolphin-5e5887a378db28324a8fc8825f21539525412e12.tar.gz \
+ https://github.com/KhronosGroup/SPIRV-Cross/archive/50b4d5389b6a06f86fb63a2848e1a7da6d9755ca/SPIRV-Cross-50b4d5389b6a06f86fb63a2848e1a7da6d9755ca.tar.gz \
+ https://github.com/GPUOpen-LibrariesAndSDKs/VulkanMemoryAllocator/archive/498e20dfd1343d99b9115201034bb0219801cdec/VulkanMemoryAllocator-498e20dfd1343d99b9115201034bb0219801cdec.tar.gz \
+ https://github.com/epezent/implot/archive/cc5e1daa5c7f2335a9460ae79c829011dc5cef2d/implot-cc5e1daa5c7f2335a9460ae79c829011dc5cef2d.tar.gz \
+ https://github.com/randy408/libspng/archive/dc5b1032c08efac68ad30170f7ccbf0aa8dd55c9/libspng-dc5b1032c08efac68ad30170f7ccbf0aa8dd55c9.tar.gz \
+ https://github.com/mgba-emu/mgba/archive/8739b22fbc90fdf0b4f6612ef9c0520f0ba44a51/mgba-8739b22fbc90fdf0b4f6612ef9c0520f0ba44a51.tar.gz \
+ https://github.com/RetroAchievements/rcheevos/archive/d9e990e6d13527532b7e2bb23164a1f3b7f33bb5/rcheevos-d9e990e6d13527532b7e2bb23164a1f3b7f33bb5.tar.gz \
+ https://github.com/zlib-ng/zlib-ng/archive/ce01b1e41da298334f8214389cc9369540a7560f/zlib-ng-ce01b1e41da298334f8214389cc9369540a7560f.tar.gz"
+MD5SUM_x86_64="cda88a526bbe63c76d4cecdb79913922 \
+ ccbd4691aa98e09c48ca52938780f485 \
+ ea3949092d01da0ea473705e625a3614 \
+ 00be8f97e4927afcde33fe5e9799b56e \
+ 5c563b774605b0bad9f6ed244bd9e14d \
+ c871e87ede68b9c5d5ccc6b6a8173b3a \
+ 1288381ecdbe222e5759119ec730a6fd \
+ 59bc34854f5bb7492810e30f20b844eb"
+REQUIRES="cubeb qt6"
+MAINTAINER="Steven Voges"
+EMAIL="svoges.sbo@gmail.com"
diff --git a/games/dolphin-emu/slack-desc b/games/dolphin-emu/slack-desc
index 4af1384e50..33779215cd 100644
--- a/games/dolphin-emu/slack-desc
+++ b/games/dolphin-emu/slack-desc
@@ -6,14 +6,14 @@
# customary to leave one space after the ':' except on otherwise blank lines.
|-----handy-ruler------------------------------------------------------|
-dolphin-emu: dolphin-emu (Gamecube emulator)
+dolphin-emu: dolphin-emu (Gamecube/Wii Emulator)
+dolphin-emu:
+dolphin-emu: Dolphin is a GameCube / Wii emulator, allowing you to play games for
+dolphin-emu: these two platforms on PC with improvements.
+dolphin-emu:
+dolphin-emu: Homepage: https://dolphin-emu.org
+dolphin-emu:
+dolphin-emu:
+dolphin-emu:
dolphin-emu:
-dolphin-emu: Dolphin is a Gamecube, Wii and Triforce (the arcade machine based on
-dolphin-emu: the Gamecube) emulator which supports many extra features and
-dolphin-emu: abilities not present on the original consoles. Gamecube and Wii
-dolphin-emu: compatibility is good - one can expect "mainstream" titles to run;
-dolphin-emu: lesser known titles can be hit or miss. Triforce compatibility is
-dolphin-emu: currently limited to a couple of games - others require more of the
-dolphin-emu: Triforce-specific peripheral devices to be emulated.
dolphin-emu:
-dolphin-emu: Homepage: https://dolphin-emu.org/
diff --git a/games/domination/README b/games/domination/README
index 93b23e8101..f9731d3eb2 100644
--- a/games/domination/README
+++ b/games/domination/README
@@ -7,13 +7,7 @@ Domination is written in Java. It includes a map editor, single-player
vs. AI, networked multiplayer, and many other features. It works in all
OSes that run Java 1.4 or higher, and Android.
-Since Domination is a Java application, it will require a Java Virtual
-Machine to run. Any of these SBo builds will work:
-
-jdk
-openjdk
-openjdk6
-openjdk8
-
-All of the above install scripts in /etc/profile.d, meaning you must
-log out and back in to run Java applications (including Domination).
+Since Domination is a Java application, it will require a Java
+Virtual Machine to run. It has been tested with zulu-openjdk8 and
+zulu-openjdk11. Other JDK builds (e.g. jdk or openjdk) may work, but
+the SlackBuild author hasn't tested them.
diff --git a/games/domination/doinst.sh b/games/domination/doinst.sh
index 5fb28930db..3e5691a052 100644
--- a/games/domination/doinst.sh
+++ b/games/domination/doinst.sh
@@ -1,3 +1,9 @@
if [ -x /usr/bin/update-desktop-database ]; then
/usr/bin/update-desktop-database -q usr/share/applications >/dev/null 2>&1
fi
+
+if [ -e usr/share/icons/hicolor/icon-theme.cache ]; then
+ if [ -x /usr/bin/gtk-update-icon-cache ]; then
+ /usr/bin/gtk-update-icon-cache usr/share/icons/hicolor >/dev/null 2>&1
+ fi
+fi
diff --git a/games/domination/domination.SlackBuild b/games/domination/domination.SlackBuild
index ae3180f32e..d698208061 100644
--- a/games/domination/domination.SlackBuild
+++ b/games/domination/domination.SlackBuild
@@ -1,26 +1,37 @@
-#!/bin/sh
+#!/bin/bash
# Slackware build script for domination
-# Written by B. Watson (yalhcru@gmail.com)
+# Written by B. Watson (urchlay@slackware.uk)
# Licensed under the WTFPL. See http://www.wtfpl.net/txt/copying/ for details.
# See README_SBo.txt for more info on this script (I wrote too many
# comments, moved them to a separate file).
+# 20230820 bkw: updated for v1.2.9.
+# 20230109 bkw: updated for v1.2.7.
+# 20211021 bkw: BUILD=2, new-style icons.
+# 20210310 bkw: updated for v1.2.3.
# 20200928 bkw: updated for v1.2.2.
# 20200307 bkw: updated fov v1.2.1.
# 20191202 bkw: updated for v1.2.0.
# 20161030 bkw: whoops, this should have been noarch to begin with.
+cd $(dirname $0) ; CWD=$(pwd)
+
PRGNAM=domination
-VERSION=${VERSION:-1.2.2}
-BUILD=${BUILD:-2}
+VERSION=${VERSION:-1.2.9}
+BUILD=${BUILD:-1}
TAG=${TAG:-_SBo}
+PKGTYPE=${PKGTYPE:-tgz}
ARCH=noarch
-CWD=$(pwd)
+if [ ! -z "${PRINT_PACKAGE_NAME}" ]; then
+ echo "$PRGNAM-$VERSION-$ARCH-$BUILD$TAG.$PKGTYPE"
+ exit 0
+fi
+
TMP=${TMP:-/tmp/SBo}
PKG=$TMP/package-$PRGNAM
OUTPUT=${OUTPUT:-/tmp}
@@ -43,25 +54,41 @@ find -L . -perm /111 -a \! -perm 755 -a -exec chmod 755 {} \+ -o \
# in fact upstream's wrapper scripts (we include our own).
rm -rf *.exe *.app *.cmd *.zip *.htm *.sh ._*
+PKGDOC=$PKG/usr/doc/$PRGNAM-$VERSION
+
# Docs first, get rid of DOS line endings.
sed -i 's,\r,,' *.txt
-mkdir -p $PKG/usr/doc/$PRGNAM-$VERSION
-mv *.txt $PKG/usr/doc/$PRGNAM-$VERSION
+mkdir -p $PKGDOC
+mv *.txt $PKGDOC
+
+mkdir -p $PKG/usr/share/icons/hicolor/16x16/apps
+mv resources/icon.png $PKG/usr/share/icons/hicolor/16x16/apps/$PRGNAM.png
# Everything else goes in the game dir. share/ is OK as there's no
# native binaries.
mkdir -p $PKG/usr/share/games/$PRGNAM
mv * $PKG/usr/share/games/$PRGNAM
+# not sure the copy in resources/ is even used, but keep it.
+ln -s ../../../icons/hicolor/16x16/apps/$PRGNAM.png \
+ $PKG/usr/share/games/$PRGNAM/resources/icon.png
+
# Wrapper scripts.
mkdir -p $PKG/usr/games
install -m0755 $CWD/$PRGNAM.sh $PKG/usr/games/$PRGNAM
ln -s $PRGNAM $PKG/usr/games/$PRGNAM-swing
-# resources/icon.png is only 16x16. Use 128x128 icon instead, extracted
-# from the OSX app bundle with icns2png.
+# resources/icon.png is only 16x16. Use 128x128 icon for the larger
+# sizes, extracted from the OSX app bundle with icns2png.
+for px in 32 48 64 128; do
+ size=${px}x${px}
+ dir=$PKG/usr/share/icons/hicolor/$size/apps
+ mkdir -p $dir
+ convert -resize $size $CWD/$PRGNAM.png $dir/$PRGNAM.png
+done
+
mkdir -p $PKG/usr/share/pixmaps
-cat $CWD/$PRGNAM.png > $PKG/usr/share/pixmaps/$PRGNAM.png
+ln -s ../icons/hicolor/48x48/apps/$PRGNAM.png $PKG/usr/share/pixmaps/$PRGNAM.png
# .desktop written for this SlackBuild.
APPDIR=$PKG/usr/share/applications
@@ -71,9 +98,11 @@ cat $CWD/$PRGNAM-swing.desktop > $APPDIR/$PRGNAM-swing.desktop
# no man pages, no command-line options.
+cat $CWD/$PRGNAM.SlackBuild > $PKGDOC/$PRGNAM.SlackBuild
+
mkdir -p $PKG/install
cat $CWD/slack-desc > $PKG/install/slack-desc
cat $CWD/doinst.sh > $PKG/install/doinst.sh
cd $PKG
-/sbin/makepkg -l y -c n $OUTPUT/$PRGNAM-$VERSION-$ARCH-$BUILD$TAG.${PKGTYPE:-tgz}
+/sbin/makepkg -l y -c n $OUTPUT/$PRGNAM-$VERSION-$ARCH-$BUILD$TAG.$PKGTYPE
diff --git a/games/domination/domination.desktop b/games/domination/domination.desktop
index b6966b1b0a..2188409f54 100644
--- a/games/domination/domination.desktop
+++ b/games/domination/domination.desktop
@@ -1,6 +1,6 @@
[Desktop Entry]
Name=Domination
-Exec=domination
+Exec=/usr/games/domination
Icon=domination
Type=Application
Terminal=false
diff --git a/games/domination/domination.info b/games/domination/domination.info
index 9ec98dfd38..5d9c4d49f6 100644
--- a/games/domination/domination.info
+++ b/games/domination/domination.info
@@ -1,10 +1,10 @@
PRGNAM="domination"
-VERSION="1.2.2"
+VERSION="1.2.9"
HOMEPAGE="http://domination.sourceforge.net/"
-DOWNLOAD="http://downloads.sourceforge.net/project/domination/Domination/1.2.2/Domination_1.2.2.zip"
-MD5SUM="006c2c9554b19d19373704dec09be766"
+DOWNLOAD="https://downloads.sourceforge.net/project/domination/Domination/1.2.9/Domination_1.2.9.zip"
+MD5SUM="afb8b81c75e18c0ec5c18a2b4ed32151"
DOWNLOAD_x86_64=""
MD5SUM_x86_64=""
-REQUIRES="jdk"
+REQUIRES="zulu-openjdk8"
MAINTAINER="B. Watson"
-EMAIL="yalhcru@gmail.com"
+EMAIL="urchlay@slackware.uk"
diff --git a/games/doom_shareware_data/README b/games/doom_shareware_data/README
index 33a1103195..ff00fc881c 100644
--- a/games/doom_shareware_data/README
+++ b/games/doom_shareware_data/README
@@ -1,5 +1,8 @@
+doom_shareware_data (game data from the shareware Doom release)
+
Game data from the shareware release of Doom (doom1.wad, v1.9). Includes
only the first episode of the game.
-You'll need a Doom engine to use this. Currently slackbuilds.org offers
-zdoom, prboom, prboom-plus, odamex, and skulltag.
+You'll need a Doom engine to use this. Currently slackbuilds.org
+offers zdoom, prboom, prboom-plus, odamex, chocolate-doom, skulltag,
+and probably a few more.
diff --git a/games/doom_shareware_data/doom_shareware_data.SlackBuild b/games/doom_shareware_data/doom_shareware_data.SlackBuild
index 1d9f5b23bb..91114747e7 100644
--- a/games/doom_shareware_data/doom_shareware_data.SlackBuild
+++ b/games/doom_shareware_data/doom_shareware_data.SlackBuild
@@ -1,19 +1,29 @@
-#!/bin/sh
+#!/bin/bash
# Slackware build script for doom_shareware_data
-# Written by B. Watson (yalhcru@gmail.com)
+# Written by B. Watson (urchlay@slackware.uk)
# Licensed under the WTFPL. See http://www.wtfpl.net/txt/copying/ for details.
+# 20211005 bkw: original FTP site is gone, use new download link.
+# Also, don't extract the files we don't need.
+
+cd $(dirname $0) ; CWD=$(pwd)
+
PRGNAM=doom_shareware_data
VERSION=${VERSION:-1.9}
BUILD=${BUILD:-1}
TAG=${TAG:-_SBo}
+PKGTYPE=${PKGTYPE:-tgz}
ARCH=noarch
-CWD=$(pwd)
+if [ ! -z "${PRINT_PACKAGE_NAME}" ]; then
+ echo "$PRGNAM-$VERSION-$ARCH-$BUILD$TAG.$PKGTYPE"
+ exit 0
+fi
+
TMP=${TMP:-/tmp/SBo}
PKG=$TMP/package-$PRGNAM
OUTPUT=${OUTPUT:-/tmp}
@@ -26,17 +36,13 @@ cd $TMP
rm -rf $PRGNAM-$VERSION
mkdir -p $PRGNAM-$VERSION
cd $PRGNAM-$VERSION
-unzip $CWD/doom19s.zip
+unzip $CWD/doom19s.zip '*.1' '*.2'
chown -R root:root .
-find -L . \
- \( -perm 777 -o -perm 775 -o -perm 750 -o -perm 711 -o -perm 555 -o -perm 511 \) \
- -exec chmod 755 {} \; -o \
- \( -perm 666 -o -perm 664 -o -perm 600 -o -perm 444 -o -perm 440 -o -perm 400 \) \
- -exec chmod 644 {} \;
+chmod 644 *
# Zip file is split into 2 chunks
-cat DOOMS_19.1 DOOMS_19.2 > doom.zip
-unzip doom.zip
+cat DOOMS_19.1 DOOMS_19.2 > doomtmp.zip
+unzip doomtmp.zip '*.WAD' 'DMFAQ*.*'
mkdir -p $PKG/usr/share/games/doom
install -m0644 DOOM1.WAD $PKG/usr/share/games/doom/doom1.wad
@@ -50,4 +56,4 @@ mkdir -p $PKG/install
cat $CWD/slack-desc > $PKG/install/slack-desc
cd $PKG
-/sbin/makepkg -l y -c n $OUTPUT/$PRGNAM-$VERSION-$ARCH-$BUILD$TAG.${PKGTYPE:-tgz}
+/sbin/makepkg -l y -c n $OUTPUT/$PRGNAM-$VERSION-$ARCH-$BUILD$TAG.$PKGTYPE
diff --git a/games/doom_shareware_data/doom_shareware_data.info b/games/doom_shareware_data/doom_shareware_data.info
index a970ff0613..3ee8b39ef8 100644
--- a/games/doom_shareware_data/doom_shareware_data.info
+++ b/games/doom_shareware_data/doom_shareware_data.info
@@ -1,10 +1,10 @@
PRGNAM="doom_shareware_data"
VERSION="1.9"
-HOMEPAGE="ftp://ftp.idsoftware.com/idstuff/doom/doom19s.txt"
-DOWNLOAD="http://ponce.cc/slackware/sources/repo/doom19s.zip"
+HOMEPAGE="https://ftp.gwdg.de/pub/misc/ftp.idsoftware.com/idstuff/doom/doom19s.txt"
+DOWNLOAD="https://ftp.gwdg.de/pub/misc/ftp.idsoftware.com/idstuff/doom/doom19s.zip"
MD5SUM="244d181457c9be5f28b91b488e67e042"
DOWNLOAD_x86_64=""
MD5SUM_x86_64=""
REQUIRES=""
MAINTAINER="B. Watson"
-EMAIL="yalhcru@gmail.com"
+EMAIL="urchlay@slackware.uk"
diff --git a/games/doomretro/README b/games/doomretro/README
index 35a68083b6..478d8ba33d 100644
--- a/games/doomretro/README
+++ b/games/doomretro/README
@@ -1,25 +1,17 @@
+doomretro (Doom source port)
+
DOOM Retro is the classic, refined DOOM source port. It represents
what DOOM should be today, in all its dark, gritty, unapologetically
-pixellated glory. DOOM Retro's source code is forked from Chocolate
+pixellated glory. DOOM Retro's source code is forked from Chocolate
DOOM, with enhancements from other DOOM source ports, as well as many
orignal ideas. DOOM Retro is deliberately minimalist by design, and
does a few things differently when compared with other source ports.
The game looks in /usr/share/games/doom (and a few other places) for
-game date. To play Shareware Doom, install doom_shareware_data. To
+game data. To play Shareware Doom, install doom_shareware_data. To
play Doom 2 or the full version of Doom, copy doom2.wad or doom.wad
from the game CD or install directory to /usr/share/games/doom.
-For MIDI playback, first build and install FluidSynth, then build
-and install SDL2_mixer (so that it has FluidSynth support), and then
-build and install DOOM Retro. Then, before starting DOOM Retro, set
-the SDL_SOUNDFONTS environment variable to the path to a soundfont in
-sf2 format:
-
-i.e.
-
- export SDL_SOUNDFONTS=/path/to/soundfonts.sf2
-
Settings are stored in $HOME/.config/doomretro. After starting Doom
Retro for the first time, you will find an editable doomretro.cfg
there.
diff --git a/games/doomretro/doomretro.SlackBuild b/games/doomretro/doomretro.SlackBuild
index 12f397b13a..46311d8b64 100644
--- a/games/doomretro/doomretro.SlackBuild
+++ b/games/doomretro/doomretro.SlackBuild
@@ -1,9 +1,9 @@
-#!/bin/sh
+#!/bin/bash
# Slackware build script for doomretro
# Copyright 2017 Dugan Chen Canada
-# Copyright 2020 B. Watson
+# Copyright 2020-2023 B. Watson
# All rights reserved.
#
# Redistribution and use of this script, with or without modification, is
@@ -23,6 +23,17 @@
# OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF THIS SOFTWARE, EVEN IF
# ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
+# 20230715 bkw: update for v4.9.2.
+# - finally fix the segfaults when the music changes.
+# - remove music note from README, since music works now.
+# - remove -nomusic from the .desktop file.
+
+# 20230114 bkw: update for v4.7.2, add note about music to README.
+# 20220611 bkw: update for v4.5.1, fix 16x16 icon path.
+# 20211006 bkw:
+# - update for v4.2.3.
+# - get rid of wrapper script; game now picks an IWAD itself.
+# 20210224 bkw: update for v4.0.3
# 20200927 bkw: update for v3.6.1, reformat README to 72 chars
# 20200804 bkw: update for v3.5.10
# 20200413 bkw:
@@ -31,19 +42,13 @@
# - move binary to /usr/games
# - include wrapper script
-# *** RANT MODE ON***
-# Every Doom engine on the planet besides this one attempts to load *some*
-# IWAD file, if you don't give it one on the command line. But this one is
-# supposed to pop up a file dialog to let you choose one. Only the dialog
-# code hasn't been ported to Linux. So for us, unlike *all other* Doom
-# source ports, we *must* specify the IWAD file on the command line. So I
-# have to use a wrapper script to make it act like a normal Doom engine...
-# *** RANT MODE OFF***
+cd $(dirname $0) ; CWD=$(pwd)
PRGNAM=doomretro
-VERSION=${VERSION:-3.6.1}
+VERSION=${VERSION:-4.9.2}
BUILD=${BUILD:-1}
TAG=${TAG:-_SBo}
+PKGTYPE=${PKGTYPE:-tgz}
if [ -z "$ARCH" ]; then
case "$( uname -m )" in
@@ -53,7 +58,11 @@ if [ -z "$ARCH" ]; then
esac
fi
-CWD=$(pwd)
+if [ ! -z "${PRINT_PACKAGE_NAME}" ]; then
+ echo "$PRGNAM-$VERSION-$ARCH-$BUILD$TAG.$PKGTYPE"
+ exit 0
+fi
+
TMP=${TMP:-/tmp/SBo}
PKG=$TMP/package-$PRGNAM
OUTPUT=${OUTPUT:-/tmp}
@@ -74,10 +83,17 @@ fi
set -e
+LIBNAM=SDL2_mixer
+LIBVER=${LIBVER:-2.0.4}
+
rm -rf $PKG
mkdir -p $TMP $PKG $OUTPUT
-cd $TMP
-rm -rf $PRGNAM-$VERSION
+TOPDIR=$TMP/$PRGNAM-build
+rm -rf $TOPDIR
+mkdir -p $TOPDIR
+cd $TOPDIR
+
+tar xvf $CWD/$LIBNAM-$LIBVER.tar.lz
# All these --excludes save ~30MB in /tmp, and avoid the recursive chmod
# tripping over broken symlinks.
@@ -87,11 +103,46 @@ tar xvf $CWD/$PRGNAM-$VERSION.tar.gz \
--exclude=msvc \
--exclude=SDL2\*
-cd $PRGNAM-$VERSION
chown -R root:root .
find -L . -perm /111 -a \! -perm 755 -a -exec chmod 755 {} \+ -o \
\! -perm /111 -a \! -perm 644 -a -exec chmod 644 {} \+
+# 20230715 bkw: This is an ugly way to fix an issue caused by Slackware's
+# SDL2_mixer package. doomretro uses SDL2_mixer's FluidSynth support for
+# its music. And SDL2_mixer-2.0.4 (what's in Slackware 15.0) has a crashing
+# bug: any time Mix_FreeMusic(handle) is called when the handle is using
+# fluidsynth, we get a use-after-free that causes the app to segfault.
+# More details, including a link to the patch I use, here:
+# https://github.com/FluidSynth/fluidsynth/issues/748
+# The fix, here, is to build a *static* patched SDL2_mixer for
+# doomretro to link with. Lot of work, but it does fix the issue. When
+# Slackware 15.1 releases, we should be able to get rid of this.
+
+mkdir -p $LIBNAM-install
+cd $LIBNAM-$LIBVER
+
+patch -p0 < $CWD/fix-sdl-mixer-fluidsynth.diff
+
+# N.B. --disable-music-mp3-mad-gpl because enabling it breaks the build,
+# as we have no static libmad.a. doesn't matter, because doomretro doesn't
+# use mp3 audio anyway.
+CFLAGS="$SLKCFLAGS" \
+./configure \
+ --prefix=$TOPDIR/$LIBNAM-install \
+ --sysconfdir=/etc \
+ --disable-shared \
+ --enable-static \
+ --disable-dependency-tracking \
+ --disable-music-mp3-mad-gpl \
+ --build=$ARCH-slackware-linux
+
+make
+make install
+
+# this actually works fine, amazingly enough:
+export PKG_CONFIG_PATH=$TOPDIR/$LIBNAM-install/lib/pkgconfig:$PKG_CONFIG_PATH
+
+cd $TOPDIR/$PRGNAM-$VERSION
mkdir -p build
cd build
cmake \
@@ -102,27 +153,31 @@ cd build
make install/strip DESTDIR=$PKG
cd ..
-mkdir -p $PKG/usr/games
-mv $PKG/usr/bin/$PRGNAM $PKG/usr/games/$PRGNAM.bin
-rm -rf $PKG/usr/bin
-install -m0755 -oroot -groot $CWD/$PRGNAM.sh $PKG/usr/games/$PRGNAM
+mv $PKG/usr/bin $PKG/usr/games
mkdir -p $PKG/usr/share/applications
cat $CWD/$PRGNAM.desktop > $PKG/usr/share/applications/$PRGNAM.desktop
-mkdir -p $PKG/usr/share/icons/hicolor/{16x16,24x24,32x32,48x48,256x256}/apps
-convert res/$PRGNAM.ico[0] $PKG/usr/share/icons/hicolor/256x256/apps/$PRGNAM.png
-convert res/$PRGNAM.ico[1] $PKG/usr/share/icons/hicolor/48x48/apps/$PRGNAM.png
-convert res/$PRGNAM.ico[2] $PKG/usr/share/icons/hicolor/32x32/apps/$PRGNAM.png
-convert res/$PRGNAM.ico[3] $PKG/usr/share/icons/hicolor/24x24/apps/$PRGNAM.png
-
-mkdir -p $PKG/usr/doc/$PRGNAM-$VERSION
-cp -a CODEOWNERS LICENSE *.md $PKG/usr/doc/$PRGNAM-$VERSION
-cat $CWD/$PRGNAM.SlackBuild > $PKG/usr/doc/$PRGNAM-$VERSION/$PRGNAM.SlackBuild
+hicolor=$PKG/usr/share/icons/hicolor
+mkdir -p $hicolor/{16x16,32x32,48x48,256x256}/apps
+convert res/$PRGNAM.ico[0] $hicolor/256x256/apps/$PRGNAM.png
+convert res/$PRGNAM.ico[1] $hicolor/48x48/apps/$PRGNAM.png
+convert res/$PRGNAM.ico[2] $hicolor/32x32/apps/$PRGNAM.png
+convert res/$PRGNAM.ico[3] $hicolor/16x16/apps/$PRGNAM.png
+mkdir -p $PKG/usr/share/pixmaps
+ln -s ../icons/hicolor/48x48/apps/$PRGNAM.png $PKG/usr/share/pixmaps
+
+# 20230715 bkw: include COPYING.txt from SDL2_mixer, since we statically
+# link it to the binary.
+PKGDOC=$PKG/usr/doc/$PRGNAM-$VERSION
+mkdir -p $PKGDOC
+cp -a CODEOWNERS LICENSE *.md $PKGDOC
+cp -a $TOPDIR/$LIBNAM-$LIBVER/COPYING.txt $PKGDOC/COPYING-SDL2_mixer.txt
+cat $CWD/$PRGNAM.SlackBuild > $PKGDOC/$PRGNAM.SlackBuild
mkdir -p $PKG/install
cat $CWD/slack-desc > $PKG/install/slack-desc
cat $CWD/doinst.sh > $PKG/install/doinst.sh
cd $PKG
-/sbin/makepkg -l y -c n $OUTPUT/$PRGNAM-$VERSION-$ARCH-$BUILD$TAG.${PKGTYPE:-tgz}
+/sbin/makepkg -l y -c n $OUTPUT/$PRGNAM-$VERSION-$ARCH-$BUILD$TAG.$PKGTYPE
diff --git a/games/doomretro/doomretro.info b/games/doomretro/doomretro.info
index 82489d0707..bb63fc2cbf 100644
--- a/games/doomretro/doomretro.info
+++ b/games/doomretro/doomretro.info
@@ -1,10 +1,12 @@
PRGNAM="doomretro"
-VERSION="3.6.1"
+VERSION="4.9.2"
HOMEPAGE="https://www.doomretro.com"
-DOWNLOAD="https://github.com/bradharding/doomretro/archive/v3.6.1/doomretro-3.6.1.tar.gz"
-MD5SUM="d22b85a3adb9b0523171c38dabed2ccb"
+DOWNLOAD="https://github.com/bradharding/doomretro/archive/v4.9.2/doomretro-4.9.2.tar.gz \
+ https://slackware.uk/slackware/slackware64-15.0/source/l/SDL2_mixer/SDL2_mixer-2.0.4.tar.lz"
+MD5SUM="cada4c8f2b6a5b7904c67fd26c14a3e1 \
+ 7ff96cc9ed7855d2a92a92f3c23856ef"
DOWNLOAD_x86_64=""
MD5SUM_x86_64=""
-REQUIRES="SDL2_image SDL2_mixer"
+REQUIRES=""
MAINTAINER="B. Watson"
-EMAIL="yalhcru@gmail.com"
+EMAIL="urchlay@slackware.uk"
diff --git a/games/doomretro/doomretro.sh b/games/doomretro/doomretro.sh
deleted file mode 100644
index 71b6a0b4f8..0000000000
--- a/games/doomretro/doomretro.sh
+++ /dev/null
@@ -1,51 +0,0 @@
-#!/bin/sh
-
-# doomretro.sh by B. Watson. Part of the SlackBuilds.org doomretro build.
-# Licensed under the WTFPL.
-
-# 20200414 bkw: doomretro on Linux doesn't open any IWAD file by default,
-# and doesn't offer a file-chooser dialog. So this wrapper script tries
-# to pick a suitable IWAD to use, if it can find one. Notice that this
-# only happens if we're run with no arguments.
-
-# Can't use an absolute path for this, or else the engine expects to
-# read doomretro.wad and write doomretro.cfg to the same directory as
-# the binary.
-realbin=doomretro.bin
-
-if [ "$1" ]; then
- # we got arguments, just use them as-is
- exec $realbin "$@"
-fi
-
-# no args, so try to find an IWAD and pass it as an arg to the real exe.
-wadpath="$DOOMWADDIR:\
-$DOOMWADPATH:\
-.:\
-/usr/share/games/doom:\
-/usr/local/share/games/doom:\
-/usr/share/doomretro:\
-/usr/share/doom:\
-/usr/local/doom:\
-$HOME:\
-$HOME/doom:\
-$HOME/.doom:\
-$HOME/.doomwads"
-
-iwads="doom2.wad:doom.wad:doom1.wad"
-
-IFS=:
-for dir in $wadpath; do
- if [ -d "$dir" ]; then
- for wad in $iwads; do
- wad="$dir/$wad"
- if [ -e "$wad" ]; then
- echo "$( basename $0 ): Using $wad" 1>&2
- exec $realbin "$wad"
- fi
- done
- fi
-done
-
-# if we get, no wads found, let the real binary complain about it
-exec $realbin
diff --git a/games/doomretro/fix-sdl-mixer-fluidsynth.diff b/games/doomretro/fix-sdl-mixer-fluidsynth.diff
new file mode 100644
index 0000000000..be12c1d8f4
--- /dev/null
+++ b/games/doomretro/fix-sdl-mixer-fluidsynth.diff
@@ -0,0 +1,14 @@
+--- music_fluidsynth.c.orig 2018-10-31 15:59:00.000000000 +0100
++++ music_fluidsynth.c 2021-01-20 18:29:11.610459000 +0100
+@@ -273,9 +273,10 @@
+ static void FLUIDSYNTH_Delete(void *context)
+ {
+ FLUIDSYNTH_Music *music = (FLUIDSYNTH_Music *)context;
++ fluid_settings_t *settings = fluidsynth.fluid_synth_get_settings(music->synth);
+ fluidsynth.delete_fluid_player(music->player);
+- fluidsynth.delete_fluid_settings(fluidsynth.fluid_synth_get_settings(music->synth));
+ fluidsynth.delete_fluid_synth(music->synth);
++ fluidsynth.delete_fluid_settings(settings);
+ SDL_free(music);
+ }
+
diff --git a/games/doomsday/README b/games/doomsday/README
index 9794cae7ee..7194930ef3 100644
--- a/games/doomsday/README
+++ b/games/doomsday/README
@@ -1,4 +1,6 @@
-A portable game engine for classic first person shooters such as
-DOOM, Heretic and Hexen. Lets you enjoy the original games using
-modern technology, including high-resolution OpenGL graphics, 3D
-models, and dynamic lighting effects.
+doomsday (portable game engine for Doom and related games)
+
+Doomsday is a portable game engine for classic first person shooters
+such as DOOM, Heretic and Hexen. Lets you enjoy the original games
+using modern technology, including high-resolution OpenGL graphics,
+3D models, and dynamic lighting effects.
diff --git a/games/doomsday/doinst.sh b/games/doomsday/doinst.sh
index 5fb28930db..3e5691a052 100644
--- a/games/doomsday/doinst.sh
+++ b/games/doomsday/doinst.sh
@@ -1,3 +1,9 @@
if [ -x /usr/bin/update-desktop-database ]; then
/usr/bin/update-desktop-database -q usr/share/applications >/dev/null 2>&1
fi
+
+if [ -e usr/share/icons/hicolor/icon-theme.cache ]; then
+ if [ -x /usr/bin/gtk-update-icon-cache ]; then
+ /usr/bin/gtk-update-icon-cache usr/share/icons/hicolor >/dev/null 2>&1
+ fi
+fi
diff --git a/games/doomsday/doomsday.SlackBuild b/games/doomsday/doomsday.SlackBuild
index aae23d6b0a..87ce49015a 100644
--- a/games/doomsday/doomsday.SlackBuild
+++ b/games/doomsday/doomsday.SlackBuild
@@ -1,4 +1,4 @@
-#!/bin/sh
+#!/bin/bash
# Slackware build script for doomsday
@@ -24,6 +24,11 @@
# Now maintained by B. Watson.
+# 20211102 bkw: someone else updated this for v2.3.1 BUILD=1.
+# - BUILD=2.
+# - new-style icons.
+# - binaries in /usr/games.
+
# 20170207 bkw:
# - Take over maintenance, BUILD=2
# - Remove OpenAL and fmodapi from REQUIRES, since they are not
@@ -44,11 +49,13 @@
# that, do all of the above, then hand off maintenance to someone
# who can afford a shinier newer video card than I can.
+cd $(dirname $0) ; CWD=$(pwd)
+
PRGNAM=doomsday
-SRCNAM=${PRGNAM}-stable
-VERSION=${VERSION:-1.15.8}
+VERSION=${VERSION:-2.3.1}
BUILD=${BUILD:-2}
TAG=${TAG:-_SBo}
+PKGTYPE=${PKGTYPE:-tgz}
if [ -z "$ARCH" ]; then
case "$( uname -m )" in
@@ -58,7 +65,11 @@ if [ -z "$ARCH" ]; then
esac
fi
-CWD=$(pwd)
+if [ ! -z "${PRINT_PACKAGE_NAME}" ]; then
+ echo "$PRGNAM-$VERSION-$ARCH-$BUILD$TAG.$PKGTYPE"
+ exit 0
+fi
+
TMP=${TMP:-/tmp/SBo}
PKG=$TMP/package-$PRGNAM
OUTPUT=${OUTPUT:-/tmp}
@@ -82,35 +93,67 @@ set -e
rm -rf $PKG
mkdir -p $TMP $PKG $OUTPUT
cd $TMP
-rm -rf $SRCNAM-$VERSION
-tar xvf $CWD/$SRCNAM-$VERSION.tar.gz
-cd $SRCNAM-$VERSION
+rm -rf $PRGNAM-$VERSION
+tar xvf $CWD/$PRGNAM-$VERSION.tar.gz
+cd $PRGNAM-$VERSION
chown -R root:root .
-find -L . \
- \( -perm 777 -o -perm 775 -o -perm 750 -o -perm 711 -o -perm 555 \
- -o -perm 511 \) -exec chmod 755 {} \; -o \
- \( -perm 666 -o -perm 664 -o -perm 640 -o -perm 600 -o -perm 444 \
- -o -perm 440 -o -perm 400 \) -exec chmod 644 {} \;
-
-cd $PRGNAM
+find -L . -perm /111 -a \! -perm 755 -a -exec chmod 755 {} \+ -o \
+ \! -perm /111 -a \! -perm 644 -a -exec chmod 644 {} \+
+
+# build amethyst
+mkdir -p build-amethyst
+cd build-amethyst
+ cmake \
+ -DCMAKE_C_FLAGS:STRING="$SLKCFLAGS" \
+ -DCMAKE_CXX_FLAGS:STRING="$SLKCFLAGS" \
+ -DCMAKE_INSTALL_PREFIX=/usr \
+ -DCMAKE_BUILD_TYPE=Release \
+ ../doomsday/tools/amethyst
+ make
+ make install/strip DESTDIR=$PKG
+cd ..
-qmake # create Makefile
-make # Build
-make INSTALL_ROOT=$PKG install # Install engine
+mkdir -p build
+cd build
+ cmake \
+ -DCMAKE_C_FLAGS:STRING="$SLKCFLAGS" \
+ -DCMAKE_CXX_FLAGS:STRING="$SLKCFLAGS" \
+ -DCMAKE_INSTALL_PREFIX=/usr \
+ -DCMAKE_BUILD_TYPE=Release ..
+ make
+ make install/strip DESTDIR=$PKG
cd ..
-find $PKG -print0 | xargs -0 file | grep -e "executable" -e "shared object" | grep ELF \
- | cut -f 1 -d : | xargs strip --strip-unneeded 2> /dev/null || true
+mv $PKG/usr/bin $PKG/usr/games
-# move man pages in right place
-mkdir -p $PKG/usr/man
-mv $PKG/usr/share/man/man6 $PKG/usr/man
-rm -rf $PKG/usr/share/man
+DESKDIR=$PKG/usr/share/applications
+chmod -x $DESKDIR/*
+sed -i -e 's,/bin/,/games/,g' \
+ -e '/^Encoding/d' \
+ $DESKDIR/*
+
+mkdir -p $PKG/usr/share/pixmaps
+convert -resize 48x48 \
+ $PKG/usr/share/icons/hicolor/256x256/apps/net.dengine.Doomsday.png \
+ $PKG/usr/share/pixmaps/$PRGNAM.png
+
+# duplicate PNG files
+rm -f $PKG/usr/share/doomsday/deng-logo-256.png
+ln -s ../icons/hicolor/256x256/apps/net.dengine.Doomsday.png \
+ $PKG/usr/share/doomsday/deng-logo-256.png
-find $PKG/usr/man -type f -exec gzip -9 {} \;
-for i in $( find $PKG/usr/man -type l ) ; do ln -s $( readlink $i ).gz $i.gz ; rm $i ; done
+# already provided by the assimp package
+rm -fR $PKG/usr/include/assimp
+
+# manually install man pages
+rm -rf $PKG/usr/share/man
+mkdir -p $PKG/usr/man/man6
+for i in doomsday/doc/*.6; do
+ gzip -9c < $i > $PKG/usr/man/man6/$( basename $i ).gz
+done
-mkdir -p $PKG/usr/doc/$PRGNAM-$VERSION
+mkdir -p $PKG/usr/doc
+mv $PKG/usr/share/doc $PKG/usr/doc/$PRGNAM-$VERSION
cp -a README.md $PKG/usr/doc/$PRGNAM-$VERSION
cat $CWD/$PRGNAM.SlackBuild > $PKG/usr/doc/$PRGNAM-$VERSION/$PRGNAM.SlackBuild
@@ -119,4 +162,4 @@ cat $CWD/slack-desc > $PKG/install/slack-desc
cat $CWD/doinst.sh > $PKG/install/doinst.sh
cd $PKG
-/sbin/makepkg -l y -c n $OUTPUT/$PRGNAM-$VERSION-$ARCH-$BUILD$TAG.${PKGTYPE:-tgz}
+/sbin/makepkg -l y -c n $OUTPUT/$PRGNAM-$VERSION-$ARCH-$BUILD$TAG.$PKGTYPE
diff --git a/games/doomsday/doomsday.info b/games/doomsday/doomsday.info
index 1d21ad5463..7d8c36efaf 100644
--- a/games/doomsday/doomsday.info
+++ b/games/doomsday/doomsday.info
@@ -1,10 +1,10 @@
PRGNAM="doomsday"
-VERSION="1.15.8"
-HOMEPAGE="http://dengine.net"
-DOWNLOAD="http://downloads.sourceforge.net/project/deng/Doomsday%20Engine/1.15.8/doomsday-stable-1.15.8.tar.gz"
-MD5SUM="14487b988bd3b46580164cdcfa5989d5"
+VERSION="2.3.1"
+HOMEPAGE="https://dengine.net"
+DOWNLOAD="https://downloads.sourceforge.net/deng/doomsday-2.3.1.tar.gz"
+MD5SUM="9ae2a3e053a6f11f37dfb450bb5e53cb"
DOWNLOAD_x86_64=""
MD5SUM_x86_64=""
-REQUIRES="wxPython assimp SDL2_mixer"
+REQUIRES="assimp"
MAINTAINER="B. Watson"
-EMAIL="yalhcru@gmail.com"
+EMAIL="urchlay@slackware.uk"
diff --git a/games/doomsday/slack-desc b/games/doomsday/slack-desc
index 7654ade002..d047e7f13c 100644
--- a/games/doomsday/slack-desc
+++ b/games/doomsday/slack-desc
@@ -6,7 +6,7 @@
# customary to leave one space after the ':' except on otherwise blank lines.
|-----handy-ruler------------------------------------------------------|
-doomsday: doomsday (portable game engine)
+doomsday: doomsday (portable game engine for Doom and related games)
doomsday:
doomsday: A portable game engine for classic first person shooters such as
doomsday: DOOM, Heretic and Hexen. Lets you enjoy the original games using
diff --git a/games/doomseeker/1.3+20200119_b623ab1.diff.gz b/games/doomseeker/1.3+20200119_b623ab1.diff.gz
deleted file mode 100644
index 4fe218194b..0000000000
--- a/games/doomseeker/1.3+20200119_b623ab1.diff.gz
+++ /dev/null
Binary files differ
diff --git a/games/doomseeker/doinst.sh b/games/doomseeker/doinst.sh
index 5fb28930db..3e5691a052 100644
--- a/games/doomseeker/doinst.sh
+++ b/games/doomseeker/doinst.sh
@@ -1,3 +1,9 @@
if [ -x /usr/bin/update-desktop-database ]; then
/usr/bin/update-desktop-database -q usr/share/applications >/dev/null 2>&1
fi
+
+if [ -e usr/share/icons/hicolor/icon-theme.cache ]; then
+ if [ -x /usr/bin/gtk-update-icon-cache ]; then
+ /usr/bin/gtk-update-icon-cache usr/share/icons/hicolor >/dev/null 2>&1
+ fi
+fi
diff --git a/games/doomseeker/doomseeker.SlackBuild b/games/doomseeker/doomseeker.SlackBuild
index 3d7bdacc1f..172e10f1fc 100644
--- a/games/doomseeker/doomseeker.SlackBuild
+++ b/games/doomseeker/doomseeker.SlackBuild
@@ -1,11 +1,17 @@
-#!/bin/sh
+#!/bin/bash
# Slackware build script for doomseeker
-# Written by B. Watson (yalhcru@gmail.com)
+# Written by B. Watson (urchlay@slackware.uk)
# Licensed under the WTFPL. See http://www.wtfpl.net/txt/copying/ for details.
+# 20230111 bkw: updated for v1.3.3.
+# 20211102 bkw:
+# - updated for v1.3.2.
+# - new-style icons.
+# - /usr/share/doomseeker => /usr/share/games/doomseeker.
+
# 20201030 bkw: updated for v1.3.1
# 20200122 bkw: updated for v1.3+20200119_b623ab1. Latest git fixes
# a segfault issue that normally only occurs when starting doomseeker
@@ -15,10 +21,13 @@
# 20181218 bkw: updated for v1.2. Upstream has changed things around,
# so this script won't build 1.1 any longer.
+cd $(dirname $0) ; CWD=$(pwd)
+
PRGNAM=doomseeker
-VERSION=${VERSION:-1.3.1}
+VERSION=${VERSION:-1.3.3}
BUILD=${BUILD:-1}
TAG=${TAG:-_SBo}
+PKGTYPE=${PKGTYPE:-tgz}
TARVER="$( echo "$VERSION" | cut -d+ -f1 )"
@@ -30,7 +39,11 @@ if [ -z "$ARCH" ]; then
esac
fi
-CWD=$(pwd)
+if [ ! -z "${PRINT_PACKAGE_NAME}" ]; then
+ echo "$PRGNAM-$VERSION-$ARCH-$BUILD$TAG.$PKGTYPE"
+ exit 0
+fi
+
TMP=${TMP:-/tmp/SBo}
PKG=$TMP/package-$PRGNAM
OUTPUT=${OUTPUT:-/tmp}
@@ -63,12 +76,9 @@ chown -R root:root .
find -L . -perm /111 -a \! -perm 755 -a -exec chmod 755 {} \+ -o \
\! -perm /111 -a \! -perm 644 -a -exec chmod 644 {} \+
-# 20200122 bkw: sorry, rworkman, I know you hate gzipped diffs, but
-# this one has mixed \r\n and \n line endings, git would eat it.
-# 20201030 bkw: leaving the diff in the repo for a while, in case
-# 1.3.1 has issues and someone needs to build the previous version.
-# It'll be removed at next update.
-[ -e "$CWD/$VERSION.diff.gz" ] && zcat "$CWD/$VERSION.diff.gz" | patch -p1
+sed -i 's,Exec=,&/usr/games/,' media/*.desktop
+
+sed -i 's,share/doomseeker,share/games/doomseeker,' src/core/datapaths.cpp
mkdir -p build
cd build
@@ -84,34 +94,50 @@ cd build
make install/strip DESTDIR=$PKG
cd ..
+mkdir $PKG/usr/share/games
+mv $PKG/usr/share/$PRGNAM $PKG/usr/share/games
+
# Shared lib gets installed to wrong place, easier to fix it here than patch.
[ "$LIBDIRSUFFIX" != "" ] && \
[ -e "$PKG/usr/lib" ] && \
mv $PKG/usr/lib $PKG/usr/lib$LIBDIRSUFFIX
-# This is a game (or anyway a game utility, the binary
+# This is a game (or anyway a game utility), the binary
# belongs in /usr/games. cmake accepts and totally ignores
# "-DCMAKE_INSTALL_BINDIR=games" so just move the damn thing after
# install.
mv $PKG/usr/bin $PKG/usr/games
# cmake is also ignoring -DCMAKE_INSTALL_DOCDIR.
-mkdir -p $PKG/usr/doc/$PRGNAM-$VERSION
-mv $PKG/usr/share/doc/$PRGNAM/* $PKG/usr/doc/$PRGNAM-$VERSION
-rm -rf $PKG/usr/share/doc
+PKGDOC=$PKG/usr/doc/$PRGNAM-$VERSION
+mkdir -p $PKGDOC
+if [ -e $PKG/usr/share/doc/$PRGNAM/ ]; then
+ mv $PKG/usr/share/doc/$PRGNAM/* $PKGDOC
+ rm -rf $PKG/usr/share/doc
+fi
chmod 755 $PKG/usr/lib$LIBDIRSUFFIX/$PRGNAM/engines/*.so
strip $PKG/usr/lib$LIBDIRSUFFIX/$PRGNAM/engines/*.so
-# only got the one PNG icon here
-mv $PKG/usr/share/icons $PKG/usr/share/pixmaps
+# upstream installs their *giant* icon directly in /usr/share/icons...
+rm -rf $PKG/usr/share/icons
+for px in 16 32 48 64 128; do
+ size=${px}x${px}
+ dir=$PKG/usr/share/icons/hicolor/$size/apps
+ mkdir -p $dir
+ convert -resize $size media/icon.png $dir/$PRGNAM.png
+done
+
+mkdir -p $PKG/usr/share/pixmaps
+ln -s ../icons/hicolor/48x48/apps/$PRGNAM.png $PKG/usr/share/pixmaps/$PRGNAM.png
-cp -a LICENSE *.md $PKG/usr/doc/$PRGNAM-$VERSION
-cat $CWD/$PRGNAM.SlackBuild > $PKG/usr/doc/$PRGNAM-$VERSION/$PRGNAM.SlackBuild
+cp -a LICENSE *.md $PKGDOC
+sed -i 's,\r,,' $PKGDOC/*
+cat $CWD/$PRGNAM.SlackBuild > $PKGDOC/$PRGNAM.SlackBuild
mkdir -p $PKG/install
cat $CWD/slack-desc > $PKG/install/slack-desc
cat $CWD/doinst.sh > $PKG/install/doinst.sh
cd $PKG
-/sbin/makepkg -l y -c n $OUTPUT/$PRGNAM-$VERSION-$ARCH-$BUILD$TAG.${PKGTYPE:-tgz}
+/sbin/makepkg -l y -c n $OUTPUT/$PRGNAM-$VERSION-$ARCH-$BUILD$TAG.$PKGTYPE
diff --git a/games/doomseeker/doomseeker.info b/games/doomseeker/doomseeker.info
index b482e2d87e..9fbfe2f348 100644
--- a/games/doomseeker/doomseeker.info
+++ b/games/doomseeker/doomseeker.info
@@ -1,10 +1,10 @@
PRGNAM="doomseeker"
-VERSION="1.3.1"
-HOMEPAGE="http://doomseeker.drdteam.org/"
-DOWNLOAD="http://doomseeker.drdteam.org/files/doomseeker-1.3.1.tar.xz"
-MD5SUM="a6c3bdc32ad95cc60a6fa43719eac27c"
+VERSION="1.3.3"
+HOMEPAGE="https://doomseeker.drdteam.org/"
+DOWNLOAD="https://doomseeker.drdteam.org/files/doomseeker-1.3.3.tar.xz"
+MD5SUM="16fbaef37e77ca97d30ca744fc98cb95"
DOWNLOAD_x86_64=""
MD5SUM_x86_64=""
-REQUIRES="qt5"
+REQUIRES=""
MAINTAINER="B. Watson"
-EMAIL="yalhcru@gmail.com"
+EMAIL="urchlay@slackware.uk"
diff --git a/games/dopewars/dopewars.SlackBuild b/games/dopewars/dopewars.SlackBuild
index a855e82cb1..89b023896b 100644
--- a/games/dopewars/dopewars.SlackBuild
+++ b/games/dopewars/dopewars.SlackBuild
@@ -1,4 +1,4 @@
-#!/bin/sh
+#!/bin/bash
# Slackware build script for dopewars
@@ -9,10 +9,13 @@
# Modified by the SlackBuilds.org project
+cd $(dirname $0) ; CWD=$(pwd)
+
PRGNAM="dopewars"
VERSION=${VERSION:-1.5.12}
BUILD=${BUILD:-1}
TAG=${TAG:-_SBo}
+PKGTYPE=${PKGTYPE:-tgz}
if [ -z "$ARCH" ]; then
case "$( uname -m )" in
@@ -22,7 +25,14 @@ if [ -z "$ARCH" ]; then
esac
fi
-CWD=$(pwd)
+# If the variable PRINT_PACKAGE_NAME is set, then this script will report what
+# the name of the created package would be, and then exit. This information
+# could be useful to other scripts.
+if [ ! -z "${PRINT_PACKAGE_NAME}" ]; then
+ echo "$PRGNAM-$VERSION-$ARCH-$BUILD$TAG.$PKGTYPE"
+ exit 0
+fi
+
TMP=${TMP:-/tmp/SBo}
PKG=$TMP/package-$PRGNAM
OUTPUT=${OUTPUT:-/tmp}
@@ -99,4 +109,4 @@ cat $CWD/doinst.sh > $PKG/install/doinst.sh
# Build the package
cd "$PKG"
-/sbin/makepkg -l y -c n $OUTPUT/$PRGNAM-$VERSION-$ARCH-$BUILD$TAG.${PKGTYPE:-tgz}
+/sbin/makepkg -l y -c n $OUTPUT/$PRGNAM-$VERSION-$ARCH-$BUILD$TAG.$PKGTYPE
diff --git a/games/dreamchess-music/dreamchess-music.SlackBuild b/games/dreamchess-music/dreamchess-music.SlackBuild
index b08694c238..db8bba8f34 100644
--- a/games/dreamchess-music/dreamchess-music.SlackBuild
+++ b/games/dreamchess-music/dreamchess-music.SlackBuild
@@ -1,17 +1,27 @@
-#!/bin/sh
+#!/bin/bash
# Slackware build script for dreamchess-music
# Written by Larry Hajali <larryhaja[at]gmail[dot]com>
# Maintained by Erik Hanson <erik@slackbuilds.org>
+cd $(dirname $0) ; CWD=$(pwd)
+
PRGNAM=dreamchess-music
VERSION=${VERSION:-1.0}
ARCH=noarch
BUILD=${BUILD:-1}
TAG=${TAG:-_SBo}
+PKGTYPE=${PKGTYPE:-tgz}
+
+# If the variable PRINT_PACKAGE_NAME is set, then this script will report what
+# the name of the created package would be, and then exit. This information
+# could be useful to other scripts.
+if [ ! -z "${PRINT_PACKAGE_NAME}" ]; then
+ echo "$PRGNAM-$VERSION-$ARCH-$BUILD$TAG.$PKGTYPE"
+ exit 0
+fi
-CWD=$(pwd)
TMP=${TMP:-/tmp/SBo}
PKG=$TMP/package-$PRGNAM
OUTPUT=${OUTPUT:-/tmp}
@@ -48,4 +58,4 @@ mkdir -p $PKG/install
cat $CWD/slack-desc > $PKG/install/slack-desc
cd $PKG
-/sbin/makepkg -l y -c n $OUTPUT/$PRGNAM-$VERSION-$ARCH-$BUILD$TAG.${PKGTYPE:-tgz}
+/sbin/makepkg -l y -c n $OUTPUT/$PRGNAM-$VERSION-$ARCH-$BUILD$TAG.$PKGTYPE
diff --git a/games/dreamchess/dreamchess.SlackBuild b/games/dreamchess/dreamchess.SlackBuild
index e13792b066..674ac7fc12 100644
--- a/games/dreamchess/dreamchess.SlackBuild
+++ b/games/dreamchess/dreamchess.SlackBuild
@@ -1,14 +1,17 @@
-#!/bin/sh
+#!/bin/bash
# Slackware build script for dreamchess
# Written by Larry Hajali <larryhaja[at]gmail[dot]com>
# Maintained by Kent Fritz <fritz.kent@gmail.com>
+cd $(dirname $0) ; CWD=$(pwd)
+
PRGNAM=dreamchess
VERSION=${VERSION:-0.3.0}
BUILD=${BUILD:-1}
TAG=${TAG:-_SBo}
+PKGTYPE=${PKGTYPE:-tgz}
if [ -z "$ARCH" ]; then
case "$( uname -m )" in
@@ -18,7 +21,14 @@ if [ -z "$ARCH" ]; then
esac
fi
-CWD=$(pwd)
+# If the variable PRINT_PACKAGE_NAME is set, then this script will report what
+# the name of the created package would be, and then exit. This information
+# could be useful to other scripts.
+if [ ! -z "${PRINT_PACKAGE_NAME}" ]; then
+ echo "$PRGNAM-$VERSION-$ARCH-$BUILD$TAG.$PKGTYPE"
+ exit 0
+fi
+
TMP=${TMP:-/tmp/SBo}
PKG=$TMP/package-$PRGNAM
OUTPUT=${OUTPUT:-/tmp}
@@ -80,4 +90,4 @@ cat $CWD/slack-desc > $PKG/install/slack-desc
cat $CWD/doinst.sh > $PKG/install/doinst.sh
cd $PKG
-/sbin/makepkg -l y -c n $OUTPUT/$PRGNAM-$VERSION-$ARCH-$BUILD$TAG.${PKGTYPE:-tgz}
+/sbin/makepkg -l y -c n $OUTPUT/$PRGNAM-$VERSION-$ARCH-$BUILD$TAG.$PKGTYPE
diff --git a/games/dreamchess/dreamchess.info b/games/dreamchess/dreamchess.info
index ebfd935a86..6c7c7291d4 100644
--- a/games/dreamchess/dreamchess.info
+++ b/games/dreamchess/dreamchess.info
@@ -5,6 +5,6 @@ DOWNLOAD="https://github.com/dreamchess/dreamchess/archive/0.3.0/dreamchess-0.3.
MD5SUM="b7182cb12db05f28380bbfb29c8bca56"
DOWNLOAD_x86_64=""
MD5SUM_x86_64=""
-REQUIRES="SDL2_mixer SDL2_image"
+REQUIRES=""
MAINTAINER="Kent Fritz"
EMAIL="fritz.kent@gmail.com"
diff --git a/games/ds-models/README b/games/ds-models/README
index ce09d97619..2d2050728d 100644
--- a/games/ds-models/README
+++ b/games/ds-models/README
@@ -1,33 +1,25 @@
-ds-models (3D model packs for gzdoom and skulltag)
+ds-models (3D model packs for skulltag)
-ds-models allows playing Doom, Heretic, and Hexen with OpenGL and 3D
-models, which gives it a much more modern look.
+ds-models allows Skulltag to play Doom, Heretic, and Hexen with OpenGL
+and 3D models, which gives it a much more modern look.
-This model set is released by -=Dark-Assassin=- on the
-SkullTag forum. For more information, see the forum thread at
-http://www.skulltag.com/forum/viewtopic.php?f=13&t=24238
-
-If you never plan to use models with skulltag, passing SKULLTAG=no to
-the build script will omit the skulltag-specific models. The resulting
-package with be approximately 30% smaller. There's also a GZDOOM=no
-option, but it won't make the package smaller (skulltag still requires
-the gzdoom models, so they'll still be included).
+This model set was released by -=Dark-Assassin=- on the SkullTag
+forum.
As of r15, ds-models supports Zandronum, but there's no SlackBuild for
Zandronum yet, so no support for it here (yet).
-This includes scripts "ds-gzdoom" and "ds-skulltag" for starting gzdoom
-or skulltag with the models preloaded.
+This includes a script called "ds-skulltag" for starting skulltag with
+the models preloaded.
-To make gzdoom or skulltag always use the models, edit
-~/.config/gzdoom/zdoom.ini and/or ~/.skulltag/skulltag.ini and add the
-following lines under the [Global.Autoload] marker:
+To make skulltag always use the models, edit and/or
+~/.skulltag/skulltag.ini and add the following lines under the
+[Global.Autoload] marker:
-# for both gzdoom and skulltag:
Path=/usr/share/games/doom/GZ-Models.pk3
-
-# for skulltag only, also add:
Path=/usr/share/games/doom/ST-Models.pk3
-Note that the models will only be displayed if gzdoom/skulltag is using
-the OpenGL renderer (Options | Display Options in the in-game menu).
+Note that the models will only be displayed if skulltag is using the
+OpenGL renderer (Options | Display Options in the in-game menu).
+
+Note: gzdoom doesn't display these models properly.
diff --git a/games/ds-models/ds-models.SlackBuild b/games/ds-models/ds-models.SlackBuild
index 2b6ce3ca2b..c5da9ad9b4 100644
--- a/games/ds-models/ds-models.SlackBuild
+++ b/games/ds-models/ds-models.SlackBuild
@@ -1,37 +1,52 @@
-#!/bin/sh
+#!/bin/bash
# Slackware build script for ds-models
-# Written by B. Watson (yalhcru@gmail.com)
+# Written by B. Watson (urchlay@slackware.uk)
# Licensed under the WTFPL. See http://www.wtfpl.net/txt/copying/ for details.
+# Note to self: find and package a decent model pack that works
+# properly with current gzdoom versions. If such a thing exists.
+# Initial searching and testing indicates maybe not...
+
+# 20211103 bkw: BUILD=4
+# - fix script being installed to nonexistant /usr/games.
+# - remove gzdoom support, since neither gzdoom nor gzdoom-legacy
+# works with these models.
+
+# 20160810 bkw:
+# - bump BUILD because:
+# - install scripts in /usr/games, not /usr/bin
+
# 20140324 bkw:
# Updated for version r15
# fixed typos in README
# fixed .def files for recent gzdoom
-# 20160810 bkw:
-# - bump BUILD because:
-# - install scripts in /usr/games, not /usr/bin
+cd $(dirname $0) ; CWD=$(pwd)
PRGNAM=ds-models
VERSION=${VERSION:-r15}
-BUILD=${BUILD:-2}
+BUILD=${BUILD:-3}
TAG=${TAG:-_SBo}
+PKGTYPE=${PKGTYPE:-tgz}
+ARCH=noarch
+
+if [ ! -z "${PRINT_PACKAGE_NAME}" ]; then
+ echo "$PRGNAM-$VERSION-$ARCH-$BUILD$TAG.$PKGTYPE"
+ exit 0
+fi
-CWD=$(pwd)
TMP=${TMP:-/tmp/SBo}
PKG=$TMP/package-$PRGNAM
OUTPUT=${OUTPUT:-/tmp}
-ARCH=noarch
-
# Which game(s) to support?
# As of r15, Zandronum is also supported, but as there's no SBo build for
# it, I won't bother.
-SKULLTAG=${SKULLTAG:-yes}
-GZDOOM=${GZDOOM:-yes}
+SKULLTAG=yes
+GZDOOM=no
if [ "$SKULLTAG" != "yes" -a "$GZDOOM" != "yes" ]; then
echo "You've set both SKULLTAG=no and GZDOOM=no; nothing to package."
@@ -41,17 +56,14 @@ fi
set -e
rm -rf $PKG
-mkdir -p $TMP $PKG/usr/{share/games/doom,bin,doc/$PRGNAM-$VERSION} $OUTPUT
+mkdir -p $TMP $PKG/usr/{share/games/doom,games,doc/$PRGNAM-$VERSION} $OUTPUT
cd $TMP
rm -rf $PRGNAM-$VERSION
tar xvf $CWD/$PRGNAM-$VERSION.tar.gz
cd $PRGNAM-$VERSION
chown -R root:root .
-find -L . \
- \( -perm 777 -o -perm 775 -o -perm 750 -o -perm 711 -o -perm 555 -o -perm 511 \) \
- -exec chmod 755 {} \; -o \
- \( -perm 666 -o -perm 664 -o -perm 600 -o -perm 444 -o -perm 440 -o -perm 400 \) \
- -exec chmod 644 {} \;
+find -L . -perm /111 -a \! -perm 755 -a -exec chmod 755 {} \+ -o \
+ \! -perm /111 -a \! -perm 644 -a -exec chmod 644 {} \+
# The only script provided upstream is for skulltag + gzdoom in one pk3, which
# will only work with skulltag. So we build our own individual skulltag and
@@ -130,4 +142,4 @@ mkdir -p $PKG/install
sed "s/@GAME@/$GAME/" $CWD/slack-desc > $PKG/install/slack-desc
cd $PKG
-/sbin/makepkg -l y -c n $OUTPUT/$PRGNAM-$VERSION-$ARCH-$BUILD$TAG.${PKGTYPE:-tgz}
+/sbin/makepkg -l y -c n $OUTPUT/$PRGNAM-$VERSION-$ARCH-$BUILD$TAG.$PKGTYPE
diff --git a/games/ds-models/ds-models.info b/games/ds-models/ds-models.info
index 7c026f0272..a788d655cd 100644
--- a/games/ds-models/ds-models.info
+++ b/games/ds-models/ds-models.info
@@ -7,4 +7,4 @@ DOWNLOAD_x86_64=""
MD5SUM_x86_64=""
REQUIRES=""
MAINTAINER="B. Watson"
-EMAIL="yalhcru@gmail.com"
+EMAIL="urchlay@slackware.uk"
diff --git a/games/ds-models/slack-desc b/games/ds-models/slack-desc
index d3a732ba63..2201269041 100644
--- a/games/ds-models/slack-desc
+++ b/games/ds-models/slack-desc
@@ -6,14 +6,14 @@
# customary to leave one space after the ':' except on otherwise blank lines.
|-----handy-ruler------------------------------------------------------|
-ds-models: ds-models (3D model packs for gzdoom and skulltag)
+ds-models: ds-models (3D model packs for skulltag)
ds-models:
ds-models: ds-models allows playing Doom, Heretic, and Hexen with OpenGL and 3D
ds-models: models, which gives it a much more modern look.
ds-models:
-ds-models: This model set is released by -=Dark-Assassin=- on the
-ds-models: SkullTag forum. For more information, see the forum thread at
-ds-models: http://www.skulltag.com/forum/viewtopic.php?f=13&t=24238
+ds-models: This model set was released by -=Dark-Assassin=- on the
+ds-models: SkullTag forum.
+ds-models:
+ds-models:
ds-models:
-ds-models: This package built with support for @GAME@.
ds-models:
diff --git a/games/duckstation/README b/games/duckstation/README
new file mode 100644
index 0000000000..2dcc2c1b9c
--- /dev/null
+++ b/games/duckstation/README
@@ -0,0 +1,16 @@
+DuckStation is an simulator/emulator of the Sony PlayStation(TM)
+console, focusing on playability, speed, and long-term
+maintainability. The goal is to be as accurate as possible while
+maintaining performance suitable for low-end devices. "Hack" options
+are discouraged, the default configuration should support all playable
+games with only some of the enhancements having compatibility issues.
+
+A "BIOS" ROM image is required to to start the emulator and to play
+games. You can use an image from any hardware version or region,
+although mismatching game regions and BIOS regions may have
+compatibility issues. A ROM image is not provided with the emulator
+for legal reasons, you should dump this from your own console using
+Caetla or other means.
+
+Discord Rich Presence is disabled by default, to enable Discord
+functionality, pass DISCORD=ON to the build script.
diff --git a/games/duckstation/doinst.sh b/games/duckstation/doinst.sh
new file mode 100644
index 0000000000..5fb28930db
--- /dev/null
+++ b/games/duckstation/doinst.sh
@@ -0,0 +1,3 @@
+if [ -x /usr/bin/update-desktop-database ]; then
+ /usr/bin/update-desktop-database -q usr/share/applications >/dev/null 2>&1
+fi
diff --git a/games/duckstation/duckstation.SlackBuild b/games/duckstation/duckstation.SlackBuild
new file mode 100644
index 0000000000..fc9d8163bd
--- /dev/null
+++ b/games/duckstation/duckstation.SlackBuild
@@ -0,0 +1,135 @@
+#!/bin/bash
+
+# Slackware build script for duckstation
+
+# Copyright 2022-2023 Steven Voges <Oregon, USA>
+# All rights reserved.
+#
+# Redistribution and use of this script, with or without modification, is
+# permitted provided that the following conditions are met:
+#
+# 1. Redistributions of this script must retain the above copyright
+# notice, this list of conditions and the following disclaimer.
+#
+# THIS SOFTWARE IS PROVIDED BY THE AUTHOR "AS IS" AND ANY EXPRESS OR IMPLIED
+# WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE IMPLIED WARRANTIES OF
+# MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE ARE DISCLAIMED. IN NO
+# EVENT SHALL THE AUTHOR BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL,
+# SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT LIMITED TO,
+# PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, DATA, OR PROFITS;
+# OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY,
+# WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR
+# OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF THIS SOFTWARE, EVEN IF
+# ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
+
+cd $(dirname $0) ; CWD=$(pwd)
+
+PRGNAM=duckstation
+VERSION=${VERSION:-0.1.6217}
+SRCDATE=${SRCDATE:-20230901}
+SRCVER=${SRCVER:-d690732c7d553ab1dc1a8e59889c788d7397ec9d}
+COMMIT=$(echo $SRCVER | cut -c -7)
+DISCORD=${DISCORD:-OFF}
+BUILD=${BUILD:-1}
+TAG=${TAG:-_SBo}
+PKGTYPE=${PKGTYPE:-tgz}
+
+if [ -z "$ARCH" ]; then
+ case "$( uname -m )" in
+ i?86) ARCH=i586 ;;
+ arm*) ARCH=arm ;;
+ *) ARCH=$( uname -m ) ;;
+ esac
+fi
+
+if [ ! -z "${PRINT_PACKAGE_NAME}" ]; then
+ echo "$PRGNAM-$VERSION-$ARCH-$BUILD$TAG.$PKGTYPE"
+ exit 0
+fi
+
+TMP=${TMP:-/tmp/SBo}
+PKG=$TMP/package-$PRGNAM
+OUTPUT=${OUTPUT:-/tmp}
+
+if [ "$ARCH" = "i586" ]; then
+ SLKCFLAGS="-O2 -march=i586 -mtune=i686"
+ LIBDIRSUFFIX=""
+elif [ "$ARCH" = "i686" ]; then
+ SLKCFLAGS="-O2 -march=i686 -mtune=i686"
+ LIBDIRSUFFIX=""
+elif [ "$ARCH" = "x86_64" ]; then
+ SLKCFLAGS="-O2 -fPIC"
+ LIBDIRSUFFIX="64"
+else
+ SLKCFLAGS="-O2"
+ LIBDIRSUFFIX=""
+fi
+
+set -e
+
+rm -rf $PKG
+mkdir -p $TMP $PKG $OUTPUT
+cd $TMP
+rm -rf $PRGNAM-$SRCVER
+tar xvf $CWD/$PRGNAM-$SRCVER.tar.gz
+cd $PRGNAM-$SRCVER
+
+# Fix version since we are not using a git repo.
+sed -i "s/HASH=\$(git rev-parse HEAD)/HASH=${SRCVER}/g" \
+ src/scmversion/gen_scmversion.sh
+sed -i "s/BRANCH=\$(git rev-parse --abbrev-ref HEAD | tr -d '\\\r\\\n')/BRANCH=master/g" \
+ src/scmversion/gen_scmversion.sh
+sed -i "s/TAG=\$(git describe --tags --dirty --exclude latest --exclude preview --exclude legacy --exclude previous-latest | tr -d '\\\r\\\n')/TAG=${VERSION}-${COMMIT}/g" \
+ src/scmversion/gen_scmversion.sh
+sed -i "s/DATE=\$(git log -1 --date=iso8601-strict --format=%cd)/DATE=${SRCDATE}/g" \
+ src/scmversion/gen_scmversion.sh
+# Fix broken compile when discord is disabled
+if [ $DISCORD = "OFF" ]; then
+ sed -i "3726d;3727d;3728d;3729d;3730d;3731d;3732d;3733d" src/core/system.cpp
+fi
+# Fix compilation on Current/GCC13
+sed -i "8i #include <cstdint>" dep/reshadefx/include/effect_token.hpp
+
+chown -R root:root .
+find -L . \
+ \( -perm 777 -o -perm 775 -o -perm 750 -o -perm 711 -o -perm 555 \
+ -o -perm 511 \) -exec chmod 755 {} \; -o \
+ \( -perm 666 -o -perm 664 -o -perm 640 -o -perm 600 -o -perm 444 \
+ -o -perm 440 -o -perm 400 \) -exec chmod 644 {} \;
+
+mkdir -p build
+cd build
+ cmake \
+ -Wno-dev \
+ -DCMAKE_C_FLAGS:STRING="$SLKCFLAGS" \
+ -DCMAKE_CXX_FLAGS:STRING="$SLKCFLAGS" \
+ -DCMAKE_INSTALL_LIBDIR=./lib${LIBDIRSUFFIX} \
+ -DCMAKE_INSTALL_PREFIX=/usr \
+ -DENABLE_DISCORD_PRESENCE=$DISCORD \
+ -DUSE_WAYLAND=ON \
+ -DCMAKE_BUILD_TYPE=Release ..
+ make
+ make install/strip DESTDIR=$PKG
+cd ..
+
+mkdir -p $PKG/opt/$PRGNAM $PKG/usr/bin $PKG/usr/share/applications $PKG/usr/share/pixmaps
+cp -r $TMP/$PRGNAM-$SRCVER/build/bin/* $PKG/opt/$PRGNAM/
+ln -s ../../opt/$PRGNAM/$PRGNAM-qt $PKG/usr/bin/$PRGNAM-qt
+cp $CWD/$PRGNAM.desktop $PKG/usr/share/applications/
+ln -s ../../../opt/$PRGNAM/resources/images/duck.png $PKG/usr/share/pixmaps/$PRGNAM.png
+
+find $PKG -print0 | xargs -0 file | grep -e "executable" -e "shared object" | grep ELF \
+ | cut -f 1 -d : | xargs strip --strip-unneeded 2> /dev/null || true
+
+mkdir -p $PKG/usr/doc/$PRGNAM-$VERSION
+cp -a \
+ *.md LICENSE \
+ $PKG/usr/doc/$PRGNAM-$VERSION
+cat $CWD/$PRGNAM.SlackBuild > $PKG/usr/doc/$PRGNAM-$VERSION/$PRGNAM.SlackBuild
+
+mkdir -p $PKG/install
+cat $CWD/slack-desc > $PKG/install/slack-desc
+cat $CWD/doinst.sh > $PKG/install/doinst.sh
+
+cd $PKG
+/sbin/makepkg -l y -c n $OUTPUT/$PRGNAM-$VERSION-$ARCH-$BUILD$TAG.$PKGTYPE
diff --git a/games/duckstation/duckstation.desktop b/games/duckstation/duckstation.desktop
new file mode 100644
index 0000000000..29a5d8c31f
--- /dev/null
+++ b/games/duckstation/duckstation.desktop
@@ -0,0 +1,7 @@
+[Desktop Entry]
+Name=duckstation
+Comment=Fast PlayStation 1 emulator
+Exec=duckstation-qt %f
+Icon=duckstation
+Type=Application
+Categories=Game;
diff --git a/games/duckstation/duckstation.info b/games/duckstation/duckstation.info
new file mode 100644
index 0000000000..72e6636bac
--- /dev/null
+++ b/games/duckstation/duckstation.info
@@ -0,0 +1,10 @@
+PRGNAM="duckstation"
+VERSION="0.1.6217"
+HOMEPAGE="https://duckstation.org"
+DOWNLOAD="UNSUPPORTED"
+MD5SUM=""
+DOWNLOAD_x86_64="https://github.com/stenzek/duckstation/archive/d690732c7d553ab1dc1a8e59889c788d7397ec9d/duckstation-d690732c7d553ab1dc1a8e59889c788d7397ec9d.tar.gz"
+MD5SUM_x86_64="33f5642022a7c578c8703e0e0071ee82"
+REQUIRES="qt6"
+MAINTAINER="Steven Voges"
+EMAIL="svoges.sbo@gmail.com"
diff --git a/games/duckstation/slack-desc b/games/duckstation/slack-desc
new file mode 100644
index 0000000000..584a26d462
--- /dev/null
+++ b/games/duckstation/slack-desc
@@ -0,0 +1,19 @@
+# HOW TO EDIT THIS FILE:
+# The "handy ruler" below makes it easier to edit a package description.
+# Line up the first '|' above the ':' following the base package name, and
+# the '|' on the right side marks the last column you can put a character in.
+# You must make exactly 11 lines for the formatting to be correct. It's also
+# customary to leave one space after the ':' except on otherwise blank lines.
+
+ |-----handy-ruler------------------------------------------------------|
+duckstation: duckstation (Plastation 1 Emulator)
+duckstation:
+duckstation: Fast PlayStation 1 emulator for x86-64/AArch32/AArch64
+duckstation:
+duckstation: Homepage: https://duckstation.org
+duckstation:
+duckstation:
+duckstation:
+duckstation:
+duckstation:
+duckstation:
diff --git a/games/dunelegacy/README b/games/dunelegacy/README
index e9c1cd7a82..f6230d5b0f 100644
--- a/games/dunelegacy/README
+++ b/games/dunelegacy/README
@@ -1,17 +1,20 @@
+dunelegacy (real-time strategy game)
+
Dune Legacy is an effort by a handful of developers to revitalize the
-first-ever real-time strategy game. The original game was the basis for
-the hugely successful Command and Conquer series, and the gameplay has
-been replicated an extended to a wide variety of storylines and series.
+first-ever real-time strategy game. The original game was the basis
+for the hugely successful Command and Conquer series, and the gameplay
+has been replicated and extended to a wide variety of storylines and
+series.
Lead one of three interplanetary houses, Atreides, Harkonnen or Ordos,
in an attempt to harvest the largest amount of spice from the sand
-dunes. Exchange your spice stockpiles for credits through refinement and
-build an army capable of thwarting attempts of the other houses to stop
-your harvesting!
+dunes. Exchange your spice stockpiles for credits through refinement
+and build an army capable of thwarting attempts of the other houses to
+stop your harvesting!
-Dune Legacy is a game engine only. To play the game, you must have the
-data files (*.PAK) from the full version (not the demo) of the original
-game, in /usr/share/dunelegacy. More info here:
+Dune Legacy is a game engine only. To play the game, you must have
+the data files (*.PAK) from the full version (not the demo) of the
+original game, in /usr/share/dunelegacy. More info here:
http://sourceforge.net/apps/mediawiki/dunelegacy/index.php?title=Pakfilelist
diff --git a/games/dunelegacy/dunelegacy.SlackBuild b/games/dunelegacy/dunelegacy.SlackBuild
index cb3e6c0770..fd44e19c28 100644
--- a/games/dunelegacy/dunelegacy.SlackBuild
+++ b/games/dunelegacy/dunelegacy.SlackBuild
@@ -1,19 +1,23 @@
-#!/bin/sh
+#!/bin/bash
# Slackware build script for dunelegacy
-# Written by B. Watson (yalhcru@gmail.com)
+# Written by B. Watson (urchlay@slackware.uk)
# Licensed under the WTFPL. See http://www.wtfpl.net/txt/copying/ for details.
+# 20230108 bkw: BUILD=3, fix .desktop file, use new homepage.
# 20170126 bkw:
# - update for 0.96.4. upstream ported to SDL 2, so add SDL2_mixer to REQUIRES
# - move binary to /usr/games
+cd $(dirname $0) ; CWD=$(pwd)
+
PRGNAM=dunelegacy
VERSION=${VERSION:-0.96.4}
-BUILD=${BUILD:-2}
+BUILD=${BUILD:-3}
TAG=${TAG:-_SBo}
+PKGTYPE=${PKGTYPE:-tgz}
if [ -z "$ARCH" ]; then
case "$( uname -m )" in
@@ -23,7 +27,11 @@ if [ -z "$ARCH" ]; then
esac
fi
-CWD=$(pwd)
+if [ ! -z "${PRINT_PACKAGE_NAME}" ]; then
+ echo "$PRGNAM-$VERSION-$ARCH-$BUILD$TAG.$PKGTYPE"
+ exit 0
+fi
+
TMP=${TMP:-/tmp/SBo}
PKG=$TMP/package-$PRGNAM
OUTPUT=${OUTPUT:-/tmp}
@@ -51,11 +59,8 @@ rm -rf $PRGNAM-$VERSION
tar xvf $CWD/$PRGNAM-$VERSION-src.tar.bz2
cd $PRGNAM-$VERSION
chown -R root:root .
-find -L . \
- \( -perm 777 -o -perm 775 -o -perm 750 -o -perm 711 -o -perm 555 -o -perm 511 \) \
- -exec chmod 755 {} \; -o \
- \( -perm 666 -o -perm 664 -o -perm 600 -o -perm 444 -o -perm 440 -o -perm 400 \) \
- -exec chmod 644 {} \;
+find -L . -perm /111 -a \! -perm 755 -a -exec chmod 755 {} \+ -o \
+ \! -perm /111 -a \! -perm 644 -a -exec chmod 644 {} \+
# Use our CFLAGS. Environment is ignored by configure script.
sed -i "s/-O3/$SLKCFLAGS/" configure
@@ -82,7 +87,7 @@ sed "s/@VERSION@/$VERSION/g" $CWD/$PRGNAM.6 \
| gzip -9c > $PKG/usr/man/man6/$PRGNAM.6.gz
mkdir -p $PKG/usr/share/applications $PKG/usr/share/pixmaps
-cat $PRGNAM.desktop > $PKG/usr/share/applications/$PRGNAM.desktop
+sed '/^Encoding/d' < $PRGNAM.desktop > $PKG/usr/share/applications/$PRGNAM.desktop
cat $PRGNAM-128x128.png > $PKG/usr/share/pixmaps/$PRGNAM.png
mkdir -p $PKG/usr/doc/$PRGNAM-$VERSION
@@ -98,4 +103,4 @@ cat $CWD/slack-desc > $PKG/install/slack-desc
cat $CWD/doinst.sh > $PKG/install/doinst.sh
cd $PKG
-/sbin/makepkg -l y -c n $OUTPUT/$PRGNAM-$VERSION-$ARCH-$BUILD$TAG.${PKGTYPE:-tgz}
+/sbin/makepkg -l y -c n $OUTPUT/$PRGNAM-$VERSION-$ARCH-$BUILD$TAG.$PKGTYPE
diff --git a/games/dunelegacy/dunelegacy.info b/games/dunelegacy/dunelegacy.info
index 5805a09b1e..dc0271dce7 100644
--- a/games/dunelegacy/dunelegacy.info
+++ b/games/dunelegacy/dunelegacy.info
@@ -1,10 +1,10 @@
PRGNAM="dunelegacy"
VERSION="0.96.4"
-HOMEPAGE="http://dunelegacy.sourceforge.net/"
-DOWNLOAD="http://downloads.sourceforge.net/project/dunelegacy/dunelegacy/0.96.4/dunelegacy-0.96.4-src.tar.bz2"
+HOMEPAGE="https://dunelegacy.sourceforge.net/website/"
+DOWNLOAD="https://downloads.sourceforge.net/project/dunelegacy/dunelegacy/0.96.4/dunelegacy-0.96.4-src.tar.bz2"
MD5SUM="de1d0a529cc32ba5d909bf1570272434"
DOWNLOAD_x86_64=""
MD5SUM_x86_64=""
-REQUIRES="SDL2_mixer eawpats"
+REQUIRES="eawpats"
MAINTAINER="B. Watson"
-EMAIL="yalhcru@gmail.com"
+EMAIL="urchlay@slackware.uk"
diff --git a/games/dunelegacy/slack-desc b/games/dunelegacy/slack-desc
index 245a361efc..1a54791a76 100644
--- a/games/dunelegacy/slack-desc
+++ b/games/dunelegacy/slack-desc
@@ -11,8 +11,8 @@ dunelegacy:
dunelegacy: Dune Legacy is an effort by a handful of developers to revitalize
dunelegacy: the first-ever real-time strategy game. The original game was the
dunelegacy: basis for the hugely successful Command and Conquer series, and
-dunelegacy: the gameplay has been replicated an extended to a wide variety of
-dunelegacy: storylines and series. Lead one of three interplanetary houses,
+dunelegacy: the gameplay has been replicated and extended to a wide variety of
+dunelegacy: storylines and series. Lead one of three interplanetary houses,
dunelegacy: Atreides, Harkonnen or Ordos, in an attempt to harvest the largest
dunelegacy: amount of spice from the sand dunes. Exchange your spice stockpiles
dunelegacy: for credits through refinement and build an army capable of thwarting
diff --git a/games/dungeon/dungeon.SlackBuild b/games/dungeon/dungeon.SlackBuild
index baac69f91f..1a43f9f554 100644
--- a/games/dungeon/dungeon.SlackBuild
+++ b/games/dungeon/dungeon.SlackBuild
@@ -1,15 +1,20 @@
-#!/bin/sh
+#!/bin/bash
# Slackware build script for dungeon
-# Written by B. Watson (yalhcru@gmail.com)
+# Written by B. Watson (urchlay@slackware.uk)
# Licensed under the WTFPL. See http://www.wtfpl.net/txt/copying/ for details.
+# 20211006 bkw: BUILD=3, fix -current build.
+
+cd $(dirname $0) ; CWD=$(pwd)
+
PRGNAM=dungeon
VERSION=${VERSION:-19800808}
-BUILD=${BUILD:-2}
+BUILD=${BUILD:-3}
TAG=${TAG:-_SBo}
+PKGTYPE=${PKGTYPE:-tgz}
if [ -z "$ARCH" ]; then
case "$( uname -m )" in
@@ -19,7 +24,11 @@ if [ -z "$ARCH" ]; then
esac
fi
-CWD=$(pwd)
+if [ ! -z "${PRINT_PACKAGE_NAME}" ]; then
+ echo "$PRGNAM-$VERSION-$ARCH-$BUILD$TAG.$PKGTYPE"
+ exit 0
+fi
+
TMP=${TMP:-/tmp/SBo}
PKG=$TMP/package-$PRGNAM
OUTPUT=${OUTPUT:-/tmp}
@@ -55,10 +64,11 @@ rm -rf $PRGNAM-$VERSION
tar xvf $CWD/$PRGNAM-$VERSION.tar.gz
cd $PRGNAM-$VERSION
chown -R root:root .
+chmod 644 *
[ "${DEBUG:-no}" = "yes" ] && DFLAG='DEBUG=1'
-make FFLAGS="$SLKCFLAGS" $DFLAG
+make FFLAGS="$SLKCFLAGS -fallow-invalid-boz" $DFLAG
make install DESTDIR=$PKG
mkdir -p $PKG/usr/doc/$PRGNAM-$VERSION
@@ -69,4 +79,4 @@ mkdir -p $PKG/install
cat $CWD/slack-desc > $PKG/install/slack-desc
cd $PKG
-/sbin/makepkg -l y -c n $OUTPUT/$PRGNAM-$VERSION-$ARCH-$BUILD$TAG.${PKGTYPE:-tgz}
+/sbin/makepkg -l y -c n $OUTPUT/$PRGNAM-$VERSION-$ARCH-$BUILD$TAG.$PKGTYPE
diff --git a/games/dungeon/dungeon.info b/games/dungeon/dungeon.info
index 466ae753f3..7bb34596b5 100644
--- a/games/dungeon/dungeon.info
+++ b/games/dungeon/dungeon.info
@@ -9,4 +9,4 @@ DOWNLOAD_x86_64=""
MD5SUM_x86_64=""
REQUIRES=""
MAINTAINER="B. Watson"
-EMAIL="yalhcru@gmail.com"
+EMAIL="urchlay@slackware.uk"
diff --git a/games/dustrac/dustrac.SlackBuild b/games/dustrac/dustrac.SlackBuild
index 7a892064ea..00f32deed1 100644
--- a/games/dustrac/dustrac.SlackBuild
+++ b/games/dustrac/dustrac.SlackBuild
@@ -1,8 +1,9 @@
-#!/bin/sh
+#!/bin/bash
# Slackware build script for dustrac
# Copyright 2013-2019 Larry Hajali <larryhaja[at]gmail[dot]com>
+# Copyright 2024 Yth | Pont-en-Royans, France | yth@ythogtha.org
# All rights reserved.
#
# Redistribution and use of this script, with or without modification, is
@@ -22,11 +23,14 @@
# OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF THIS SOFTWARE, EVEN IF
# ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
-SRCNAM=DustRacing2D
+cd $(dirname $0) ; CWD=$(pwd)
+
PRGNAM=dustrac
-VERSION=${VERSION:-2.0.3}
+SRCNAM=DustRacing2D
+VERSION=${VERSION:-2.1.1}
BUILD=${BUILD:-1}
TAG=${TAG:-_SBo}
+PKGTYPE=${PKGTYPE:-tgz}
if [ -z "$ARCH" ]; then
case "$( uname -m )" in
@@ -36,7 +40,11 @@ if [ -z "$ARCH" ]; then
esac
fi
-CWD=$(pwd)
+if [ ! -z "${PRINT_PACKAGE_NAME}" ]; then
+ echo "$PRGNAM-$VERSION-$ARCH-$BUILD$TAG.$PKGTYPE"
+ exit 0
+fi
+
TMP=${TMP:-/tmp/SBo}
PKG=$TMP/package-$PRGNAM
OUTPUT=${OUTPUT:-/tmp}
@@ -66,9 +74,11 @@ cd $SRCNAM-$VERSION
chown -R root:root .
find -L . \
\( -perm 777 -o -perm 775 -o -perm 750 -o -perm 711 -o -perm 555 \
- -o -perm 511 \) -exec chmod 755 {} \; -o \
+ -o -perm 511 \) -exec chmod 755 {} \+ -o \
\( -perm 666 -o -perm 664 -o -perm 640 -o -perm 600 -o -perm 444 \
- -o -perm 440 -o -perm 400 \) -exec chmod 644 {} \;
+ -o -perm 440 -o -perm 400 \) -exec chmod 644 {} \+
+
+sed -i '1i#include <stdexcept>' src/game/audio/*.cpp
cmake -G "Unix Makefiles" \
-DCMAKE_INSTALL_PREFIX:PATH="/usr" \
@@ -83,9 +93,10 @@ cmake -G "Unix Makefiles" \
make VERBOSE=1
make install DESTDIR=$PKG
+strip $PKG/usr/games/*
-find $PKG -print0 | xargs -0 file | grep -e "executable" -e "shared object" | grep ELF \
- | cut -f 1 -d : | xargs strip --strip-unneeded 2> /dev/null || true
+# For people who don't have /usr/games in $PATH
+sed -i '/^Exec/s,=,=/usr/games/,' $PKG/usr/share/applications/*.desktop
cat $CWD/$PRGNAM.SlackBuild > $PKG/usr/doc/$PRGNAM-$VERSION/$PRGNAM.SlackBuild
@@ -94,4 +105,4 @@ cat $CWD/slack-desc > $PKG/install/slack-desc
cat $CWD/doinst.sh > $PKG/install/doinst.sh
cd $PKG
-/sbin/makepkg -l y -c n $OUTPUT/$PRGNAM-$VERSION-$ARCH-$BUILD$TAG.${PKGTYPE:-tgz}
+/sbin/makepkg -l y -c n $OUTPUT/$PRGNAM-$VERSION-$ARCH-$BUILD$TAG.$PKGTYPE
diff --git a/games/dustrac/dustrac.info b/games/dustrac/dustrac.info
index dadf8d71eb..44eeacc0f4 100644
--- a/games/dustrac/dustrac.info
+++ b/games/dustrac/dustrac.info
@@ -1,10 +1,10 @@
PRGNAM="dustrac"
-VERSION="2.0.3"
+VERSION="2.1.1"
HOMEPAGE="http://dustrac.sourceforge.net"
-DOWNLOAD="https://github.com/juzzlin/DustRacing2D/archive/2.0.3/DustRacing2D-2.0.3.tar.gz"
-MD5SUM="d8734f53048a875b4bed1fcb291fd403"
+DOWNLOAD="https://github.com/juzzlin/DustRacing2D/archive/2.1.1/DustRacing2D-2.1.1.tar.gz"
+MD5SUM="52e29cfb40b0f5dbda5131da06cb53e7"
DOWNLOAD_x86_64=""
MD5SUM_x86_64=""
-REQUIRES="OpenAL qt5"
-MAINTAINER="Larry Hajali"
-EMAIL="larryhaja[at]gmail[dot]com"
+REQUIRES=""
+MAINTAINER="Yth - Arnaud"
+EMAIL="yth@ythogtha.org"
diff --git a/games/dwarffortress/README b/games/dwarffortress/README
new file mode 100644
index 0000000000..32465d131d
--- /dev/null
+++ b/games/dwarffortress/README
@@ -0,0 +1,16 @@
+Dwarf Fortress is a sandbox game created by Tarn Adams of Bay 12 Games.
+
+The graphics are ASCII with various tilesets available.
+In Fortress Mode, the player helps their dwarves survive by declaring
+areas to collect food, create workshops, create defenses, etc.
+In Adventure Mode, the player takes the role of an individual who can
+explore the world (including their own previously created forts).
+
+https://dwarffortresswiki.org
+https://dffd.bay12games.com
+
+Note: A local copy of the game will be placed in ~/.dwarffortress when
+run, where tilesets/graphics and config files can be changed.
+An original copy of the program is kept in /opt.
+After an update, delete your local .dwarffortress folder before running.
+(Regions kept in data/save can be reused for minor version updates.)
diff --git a/games/dwarffortress/doinst.sh b/games/dwarffortress/doinst.sh
new file mode 100644
index 0000000000..5fb28930db
--- /dev/null
+++ b/games/dwarffortress/doinst.sh
@@ -0,0 +1,3 @@
+if [ -x /usr/bin/update-desktop-database ]; then
+ /usr/bin/update-desktop-database -q usr/share/applications >/dev/null 2>&1
+fi
diff --git a/games/dwarffortress/dwarffortress b/games/dwarffortress/dwarffortress
new file mode 100644
index 0000000000..da0506a2c3
--- /dev/null
+++ b/games/dwarffortress/dwarffortress
@@ -0,0 +1,29 @@
+#!/bin/sh
+# Slackware wrapper for the dwarffortress executable.
+# A copy of the game is in /opt/dwarffortress
+# When a user runs the game these files are copied to
+# their home directory, and the game runs from there.
+runme(){
+ if [ ! -d ~/.dwarffortress ]; then
+ cp -a /opt/dwarffortress ~/.dwarffortress
+ cd ~/.dwarffortress
+ fi
+ cd ~/.dwarffortress
+ ~/.dwarffortress/run_df
+}
+
+if [ $UID == 0 ]; then
+ read -p "You are currently running as root...\
+ Are you sure you want to proceed? (N/y): " resp
+ case "$resp" in
+ y|yes)
+ runme
+ ;;
+ *)
+ echo Exiting
+ exit 0
+ ;;
+ esac
+else
+ runme
+fi
diff --git a/games/dwarffortress/dwarffortress.SlackBuild b/games/dwarffortress/dwarffortress.SlackBuild
new file mode 100644
index 0000000000..ff95029f94
--- /dev/null
+++ b/games/dwarffortress/dwarffortress.SlackBuild
@@ -0,0 +1,96 @@
+#!/bin/bash
+
+# Slackware build script for Dwarf Fortress
+
+# Copyright 2021 David Ferrone RI, USA
+# All rights reserved.
+
+# Redistribution and use of this script, with or without modification, is
+# permitted provided that the following conditions are met:
+#
+# 1. Redistributions of this script must retain the above copyright
+# notice, this list of conditions and the following disclaimer.
+#
+# THIS SOFTWARE IS PROVIDED BY THE AUTHOR "AS IS" AND ANY EXPRESS OR IMPLIED
+# WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE IMPLIED WARRANTIES OF
+# MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE ARE DISCLAIMED. IN NO
+# EVENT SHALL THE AUTHOR BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL,
+# SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT LIMITED TO,
+# PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, DATA, OR PROFITS;
+# OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY,
+# WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR
+# OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF THIS SOFTWARE, EVEN IF
+# ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
+
+cd $(dirname $0) ; CWD=$(pwd)
+
+PRGNAM=dwarffortress
+VERSION=${VERSION:-0.50.11}
+SRCNAM=df_50_11_linux
+SRCDIR=df_linux
+BUILD=${BUILD:-1}
+TAG=${TAG:-_SBo}
+PKGTYPE=${PKGTYPE:-tgz}
+
+if [ -z "$ARCH" ]; then
+ case "$( uname -m )" in
+ i?86) ARCH=i586 ;;
+ arm*) ARCH=arm ;;
+ *) ARCH=$( uname -m ) ;;
+ esac
+fi
+
+if [ ! -z "${PRINT_PACKAGE_NAME}" ]; then
+ echo "$PRGNAM-$VERSION-$ARCH-$BUILD$TAG.$PKGTYPE"
+ exit 0
+fi
+
+if [ "$ARCH" = "i586" ]; then
+ BITFLAG="32"
+elif [ "$ARCH" = "x86_64" ]; then
+ BITFLAG=""
+else
+ BITFLAG=""
+fi
+
+TMP=${TMP:-/tmp/SBo}
+PKG=$TMP/package-$PRGNAM
+OUTPUT=${OUTPUT:-/tmp}
+
+set -e
+rm -rf $PKG
+mkdir -p $TMP $PKG $OUTPUT
+
+cd $PKG
+mkdir opt opt/$PRGNAM
+cd opt/$PRGNAM
+
+tar pxvf $CWD/$SRCNAM$BITFLAG.tar.bz2
+chown -R root:root .
+chmod -R 755 .
+
+# Strip binaries and libraries -
+find $PKG -print0 | xargs -0 file | grep -e "executable" -e "shared object" | grep ELF \
+ | cut -f 1 -d : | xargs strip --strip-unneeded 2> /dev/null || true
+
+mkdir -p $PKG/usr $PKG/usr/doc $PKG/usr/bin
+mkdir -p $PKG/usr/share $PKG/usr/share/pixmaps $PKG/usr/share/applications
+cat $CWD/dwarffortress.desktop > $PKG/usr/share/applications/dwarffortress.desktop
+cat $CWD/dwarffortress.png > $PKG/usr/share/pixmaps/dwarffortress.png
+
+mkdir -p $PKG/usr/doc/$PRGNAM-$VERSION
+cp -a command\ line.txt file\ changes.txt readme.txt \
+ release\ notes.txt $PKG/usr/doc/$PRGNAM-$VERSION
+chmod 644 $PKG/usr/doc/$PRGNAM-$VERSION/*
+
+cat $CWD/$PRGNAM.SlackBuild > $PKG/usr/doc/$PRGNAM-$VERSION/$PRGNAM.SlackBuild
+
+cat $CWD/dwarffortress > $PKG/usr/bin/dwarffortress
+chmod 755 $PKG/usr/bin/dwarffortress
+
+mkdir -p $PKG/install
+cat $CWD/slack-desc > $PKG/install/slack-desc
+cat $CWD/doinst.sh > $PKG/install/doinst.sh
+
+cd $PKG
+/sbin/makepkg -l y -c n $OUTPUT/$PRGNAM-$VERSION-$ARCH-$BUILD$TAG.$PKGTYPE
diff --git a/games/dwarffortress/dwarffortress.desktop b/games/dwarffortress/dwarffortress.desktop
new file mode 100644
index 0000000000..28348e6d88
--- /dev/null
+++ b/games/dwarffortress/dwarffortress.desktop
@@ -0,0 +1,6 @@
+[Desktop Entry]
+Type=Application
+Terminal=false
+Exec=/usr/bin/dwarffortress
+Name=Dwarf Fortress
+Icon=dwarffortress
diff --git a/games/dwarffortress/dwarffortress.info b/games/dwarffortress/dwarffortress.info
new file mode 100644
index 0000000000..0f70dfdd1c
--- /dev/null
+++ b/games/dwarffortress/dwarffortress.info
@@ -0,0 +1,10 @@
+PRGNAM="dwarffortress"
+VERSION="0.50.11"
+HOMEPAGE="https://bay12games.com/dwarves/"
+DOWNLOAD="https://bay12games.com/dwarves/df_50_11_linux.tar.bz2"
+MD5SUM="2974f9f6c563547b4fd40a65f9919593"
+DOWNLOAD_x86_64=""
+MD5SUM_x86_64=""
+REQUIRES=""
+MAINTAINER="David Ferrone"
+EMAIL="zapwai@gmail.com"
diff --git a/games/dwarffortress/dwarffortress.png b/games/dwarffortress/dwarffortress.png
new file mode 100644
index 0000000000..1246b699b3
--- /dev/null
+++ b/games/dwarffortress/dwarffortress.png
Binary files differ
diff --git a/games/dwarffortress/slack-desc b/games/dwarffortress/slack-desc
new file mode 100644
index 0000000000..8f8e6d21fb
--- /dev/null
+++ b/games/dwarffortress/slack-desc
@@ -0,0 +1,19 @@
+# HOW TO EDIT THIS FILE:
+# The "handy ruler" below makes it easier to edit a package description.
+# Line up the first '|' above the ':' following the base package name, and
+# the '|' on the right side marks the last column you can put a character in.
+# You must make exactly 11 lines for the formatting to be correct. It's also
+# customary to leave one space after the ':' except on otherwise blank lines.
+
+ |-----handy-ruler------------------------------------------------------|
+dwarffortress: dwarffortress (A single-player fantasy simulator adventure game)
+dwarffortress:
+dwarffortress: Dwarf Fortress is a complex sandbox game created by Tarn Adams of
+dwarffortress: Bay 12 Games. The graphics are ASCII with various tilesets available.
+dwarffortress: In Fortress Mode, the player helps their dwarves survive by declaring
+dwarffortress: areas to collect food, create workshops, create defenses, etc.
+dwarffortress: In Adventure Mode, the player takes the role of an individual who can
+dwarffortress: explore the world (including their own previously created forts).
+dwarffortress: https://dwarffortresswiki.org https://dffd.bay12games.com
+dwarffortress: (A copy of the game will be placed in ~/.dwarffortress when run.)
+dwarffortress:
diff --git a/games/ecwolf/ecwolf.SlackBuild b/games/ecwolf/ecwolf.SlackBuild
index 25228fc1f6..50a70e5f77 100644
--- a/games/ecwolf/ecwolf.SlackBuild
+++ b/games/ecwolf/ecwolf.SlackBuild
@@ -1,4 +1,4 @@
-#!/bin/sh
+#!/bin/bash
# Slackware build script for ECWolf
@@ -22,10 +22,13 @@
# OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF THIS SOFTWARE, EVEN IF
# ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
+cd $(dirname $0) ; CWD=$(pwd)
+
PRGNAM=ecwolf
VERSION=${VERSION:-1.3.3}
BUILD=${BUILD:-1}
TAG=${TAG:-_SBo}
+PKGTYPE=${PKGTYPE:-tgz}
if [ -z "$ARCH" ]; then
case "$( uname -m )" in
@@ -35,7 +38,14 @@ if [ -z "$ARCH" ]; then
esac
fi
-CWD=$(pwd)
+# If the variable PRINT_PACKAGE_NAME is set, then this script will report what
+# the name of the created package would be, and then exit. This information
+# could be useful to other scripts.
+if [ ! -z "${PRINT_PACKAGE_NAME}" ]; then
+ echo "$PRGNAM-$VERSION-$ARCH-$BUILD$TAG.$PKGTYPE"
+ exit 0
+fi
+
TMP=${TMP:-/tmp/SBo}
PKG=$TMP/package-$PRGNAM
OUTPUT=${OUTPUT:-/tmp}
@@ -103,4 +113,4 @@ mkdir -p $PKG/install
cat $CWD/slack-desc > $PKG/install/slack-desc
cd $PKG
-/sbin/makepkg -l y -c n $OUTPUT/$PRGNAM-$VERSION-$ARCH-$BUILD$TAG.${PKGTYPE:-tgz}
+/sbin/makepkg -l y -c n $OUTPUT/$PRGNAM-$VERSION-$ARCH-$BUILD$TAG.$PKGTYPE
diff --git a/games/edgar/edgar.SlackBuild b/games/edgar/edgar.SlackBuild
index 3952903a66..4571631b3c 100644
--- a/games/edgar/edgar.SlackBuild
+++ b/games/edgar/edgar.SlackBuild
@@ -1,8 +1,8 @@
-#!/bin/sh
+#!/bin/bash
# Slackware build script for the legend of edgar
-# Copyright 2017-20 Tim Dickson, dickson.tim@googlemail.com
+# Copyright 2017-24 Tim Dickson, dickson.tim@googlemail.com
# All rights reserved.
#
# Redistribution and use of this script, with or without modification, is
@@ -22,10 +22,18 @@
# OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF THIS SOFTWARE, EVEN IF
# ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
+# 20220220 bkw: Modified by SlackBuilds.org: fix github download URL.
+# 20220324 updated for v1.35
+# 20230105 updated for v1.36
+# 20240117 updated for v1.37
+
+cd $(dirname $0) ; CWD=$(pwd)
+
PRGNAM=edgar
-VERSION=${VERSION:-1.33}
+VERSION=${VERSION:-1.37}
BUILD=${BUILD:-1}
TAG=${TAG:-_SBo}
+PKGTYPE=${PKGTYPE:-tgz}
if [ -z "$ARCH" ]; then
case "$( uname -m )" in
@@ -35,12 +43,17 @@ if [ -z "$ARCH" ]; then
esac
fi
-CWD=$(pwd)
+if [ ! -z "${PRINT_PACKAGE_NAME}" ]; then
+ echo "$PRGNAM-$VERSION-$ARCH-$BUILD$TAG.$PKGTYPE"
+ exit 0
+fi
+
TMP=${TMP:-/tmp/SBo}
PKG=$TMP/package-$PRGNAM
OUTPUT=${OUTPUT:-/tmp}
#-O2 flag is removed as it causes unwanted behaviour in the game
+# 20220220 bkw: actually, these flags are never used.
if [ "$ARCH" = "i586" ]; then
SLKCFLAGS="-march=i586 -mtune=i686"
LIBDIRSUFFIX=""
@@ -66,24 +79,22 @@ cd $PRGNAM-$VERSION
chown -R root:root .
find -L . \
\( -perm 777 -o -perm 775 -o -perm 750 -o -perm 711 -o -perm 555 \
- -o -perm 511 \) -exec chmod 755 {} \; -o \
+ -o -perm 511 \) -exec chmod 755 {} \+ -o \
\( -perm 666 -o -perm 664 -o -perm 640 -o -perm 600 -o -perm 444 \
- -o -perm 440 -o -perm 400 \) -exec chmod 644 {} \;
+ -o -perm 440 -o -perm 400 \) -exec chmod 644 {} \+
+
# Fix doc installation path
sed -i 's/share\/doc/doc/' makefile
-# Fix man installation path (the original works due to a link in slackware from /usr/share/man
-# to /usr/man , but we may as well install it in the right place)
+# Fix man installation path (the original works due to a link in
+# slackware from /usr/share/man to /usr/man , but we may as well
+# install it in the right place)
sed -i 's/share\/man/man/' makefile
make
make install DESTDIR=$PKG
-
-find $PKG -print0 | xargs -0 file | grep -e "executable" -e "shared object" | grep ELF \
- | cut -f 1 -d : | xargs strip --strip-unneeded 2> /dev/null || true
-
-find $PKG/usr/man -type f -exec gzip -9 {} \;
-for i in $( find $PKG/usr/man -type l ) ; do ln -s $( readlink $i ).gz $i.gz ; rm $i ; done
+strip $PKG/usr/games/*
+gzip -9 $PKG/usr/man/man*/*
mv $PKG/usr/doc/$PRGNAM $PKG/usr/doc/$PRGNAM-$VERSION
cat $CWD/$PRGNAM.SlackBuild > $PKG/usr/doc/$PRGNAM-$VERSION/$PRGNAM.SlackBuild
@@ -93,4 +104,4 @@ cat $CWD/slack-desc > $PKG/install/slack-desc
cat $CWD/doinst.sh > $PKG/install/doinst.sh
cd $PKG
-/sbin/makepkg -l y -c n $OUTPUT/$PRGNAM-$VERSION-$ARCH-$BUILD$TAG.${PKGTYPE:-tgz}
+/sbin/makepkg -l y -c n $OUTPUT/$PRGNAM-$VERSION-$ARCH-$BUILD$TAG.$PKGTYPE
diff --git a/games/edgar/edgar.info b/games/edgar/edgar.info
index 692a354a44..40f23f6234 100644
--- a/games/edgar/edgar.info
+++ b/games/edgar/edgar.info
@@ -1,10 +1,10 @@
PRGNAM="edgar"
-VERSION="1.33"
+VERSION="1.37"
HOMEPAGE="https://www.parallelrealities.co.uk/games/edgar/"
-DOWNLOAD="https://github.com/riksweeney/edgar/archive/1.33/edgar-1.33.tar.gz"
-MD5SUM="670e549684918bbc38aafbb0adf41f52"
+DOWNLOAD="https://github.com/riksweeney/edgar/archive/1.37/edgar-1.37.tar.gz"
+MD5SUM="4c176a1301759999e1cae96ad836565c"
DOWNLOAD_x86_64=""
MD5SUM_x86_64=""
-REQUIRES="SDL2_mixer SDL2_image SDL2_ttf"
+REQUIRES=""
MAINTAINER="Tim Dickson"
EMAIL="dickson.tim@googlemail.com"
diff --git a/games/eduke32/README b/games/eduke32/README
index 3ffb125dab..267cd8e038 100644
--- a/games/eduke32/README
+++ b/games/eduke32/README
@@ -1,32 +1,37 @@
-EDuke32 is a fork of the JFDuke3D port of Duke Nukem 3D (aka Duke3D),
-merging it with EDuke to provide many new features for mod authors.
-Also included is a map editor (mapster32).
-
-To play the game, you will need the DUKE32.GRP file from either
-the Duke Nukem 3D CD-ROM, or from the shareware version of Duke
-Nukem 3D. For convenience, the shareware GRP file has been packaged
-as eduke32_shareware_data, also available from slackbuilds.org.
-See README_game_data.txt
-
-eduke32 is an SDL application. It can be built with either SDL 1.2
-(included in Slackware), or SDL 2 (from SlackBuilds.org). By default,
-SDL 2 is used if it's installed, otherwise SDL 1.2 is used. To force
-building with SDL 1.2, export SDL2=no in the environment before
-building eduke32.
-
-If you want to play the HRP (High Resolution Pack), get the
-eduke32_hires_pack package from slackbuilds.org.
-
-To hear the in-game music, either use the Music Pack (see
-eduke32_hires_pack), or else install a set of MIDI patches (either
-freepats or eawpats) from slackbuilds.org. The game looks for
-/etc/timidity/timidity.cfg, but timidity doesn't actually have to be
-installed.
-
-By default, the Build utilities (kextract kgroup transpal wad2art
-wad2map) are built by this script and installed in /usr/games. If you
-don't want these, you can set BUILD_UTILS=no in the environment before
-running the SlackBuild script.
-
-Note for 64-bit users: Despite the "32" in the name, this software
-builds and runs just fine as 64-bit native binaries :)
+eduke32 (engine for Duke Nukem 3D, Shadow Warrior, Ion Fury)
+
+EDuke32 [1] is a fork of the JFDuke3D port of Duke Nukem 3D (aka
+Duke3D), merging it with EDuke to provide many new features for mod
+authors.
+
+Included in the package are:
+
+- eduke32 (Duke Nukem 3D engine; also plays Nam/Napalm and WWII GI) [3]
+- voidsw (Shadow Warrior engine)
+- fury (Ion Fury engine)
+- mapster32 (map editor for Duke Nukem 3D)
+- wangulator (map editor for Shadow Warrior)
+- the Build engine tools (kextract, kgroup, etc) [2]
+
+To play the games, you will need the .GRP file from each game. See
+README_game_data.txt.
+
+If you want to play the HRP (High Resolution Pack) in eduke32, install
+the eduke32_hires_pack package from slackbuilds.org. There's also a
+jfsw_hires_pack that works with voidsw.
+
+WARNING: on the SlackBuild maintainer's system, eduke32 segfaults when
+starting a game, if a USB gamepad is plugged in (even if the joystick
+option is disabled in eduke32).
+
+Notes:
+
+[1] Despite the "32" in the name, this software builds and runs just
+ fine as 64-bit native binaries :)
+
+[2] If you're installing both eduke32 and jfsw, don't build jfsw with
+ TOOLS=yes (or else the packages will conflict).
+
+[3] eduke32 is no longer capable of playing BloodCM, because BloodCM's
+ last release was in 2016. The bloodcm build has been removed from
+ SBo. If you want to play Blood, install nblood.
diff --git a/games/eduke32/README_game_data.txt b/games/eduke32/README_game_data.txt
index 96f85bd8cb..e9ccc43202 100644
--- a/games/eduke32/README_game_data.txt
+++ b/games/eduke32/README_game_data.txt
@@ -1,23 +1,47 @@
+Although EDuke32 has been released under the GPL, the game data
+(graphics, sounds, levels, etc) is still proprietary.
-Although the Duke Nukem 3D code has been released under the GPL, the game
-data (graphics, sounds, levels, etc) is still proprietary, (c) 3D Realms.
-
-To play the game, you must provide the data files. There are a couple of
-options:
+For Duke Nukem 3D (eduke32), there are a couple of options:
- Buy the game, and copy DUKE3D.GRP and DUKE.RTS file from the game CD to
- /usr/share/games/eduke32/ or your ~/.eduke32 directory.
+ /usr/share/games/eduke32/ or your ~/.config/eduke32 directory.
Note: DUKE3D.GRP should be named "duke3d.grp" (lowercase), but DUKE.RTS
should be uppercase.
-- Use the files from the shareware version, which is still available for
- download from the 3D Realms site. For convenience, you may install the
- eduke32_shareware_data package from slackbuilds.org, which simply creates
- a Slackware package from the files in the shareware Duke3D installer.
+- Or, install the eduke32_shareware_data package from slackbuilds.org. This
+ only gives you the first episode of the game.
+
+For Nam/Napalm (eduke32):
+
+1. copy NAM.GRP or NAPALM.GRP to /usr/share/games/eduke32
+
+2. copy GAME.CON to /usr/share/games/eduke32/NAM.CON (or NAPALM.CON).
+ Do NOT name it GAME.CON, or Duke Nukem 3D will fail to start!
+
+For WW2GI (eduke32):
+
+1. copy WW2GI.GRP ENHANCE.CON, XDEFS.CON, and XUSER.CON to
+ /usr/share/games/eduke32
+
+2. copy GAME.CON to /usr/share/games/eduke32/WW2GI.CON (again, don't
+ name it GAME.CON).
+
+For Shadow Warrior (voidsw):
+
+- Buy the game, and copy SW.GRP to /usr/share/games/eduke32/
+
+- Or, install one or more of these SBo packages:
+
+ jfsw_demo_data (shareware; first 4 levels only)
+ jfsw_registered_data (full game)
+ jfsw_wanton_destruction (expansion pack)
+ jfsw_twin_dragon (expansion pack)
-For information on playing user-created levels or other Build engine games
-(such as Nam), see http://wiki.eduke32.com/ and http://www.eduke32.com/
+ (Yes, voidsw will find the game data in /usr/share/games/jfsw)
-If you want to play the HRP (High Resolution Pack), get the
-eduke32_hires_pack package from slackbuilds.org
+For Ion Fury (fury), presumably you copy the .grp file from the game
+directory to ~/.config/fury. The engine doesn't look anywhere else for
+the data files. I don't own this game, so I can't go into more detail.
+If you do own this game, email me with the details and I'll update
+this documentation.
diff --git a/games/eduke32/compilefix.diff b/games/eduke32/compilefix.diff
deleted file mode 100644
index 7b7ae7e49a..0000000000
--- a/games/eduke32/compilefix.diff
+++ /dev/null
@@ -1,12 +0,0 @@
-diff -Naur eduke32_20160704-5811.orig/build/src/util/generateicon.c eduke32_20160704-5811/build/src/util/generateicon.c
---- eduke32_20160704-5811.orig/build/src/util/generateicon.c 2013-10-06 03:50:16.000000000 -0400
-+++ eduke32_20160704-5811/build/src/util/generateicon.c 2016-08-07 23:58:35.091530858 -0400
-@@ -64,7 +64,7 @@
-
- memset(&icon, 0, sizeof(icon));
-
-- kpzload(argv[1], (intptr_t*)&icon.pixels, (int32_t*)&bpl, (int32_t*)&icon.width, (int32_t*)&icon.height);
-+ kpzload(argv[1], (intptr_t*)&icon.pixels, (int32_t*)&icon.width, (int32_t*)&icon.height);
- if (!icon.pixels) {
- Bfprintf(stderr, "Failure loading %s\n", argv[1]);
- return 1;
diff --git a/games/eduke32/desktop/eduke32.desktop b/games/eduke32/desktop/eduke32.desktop
new file mode 100644
index 0000000000..858b4d2dde
--- /dev/null
+++ b/games/eduke32/desktop/eduke32.desktop
@@ -0,0 +1,8 @@
+[Desktop Entry]
+Name=EDuke32
+GenericName=Duke Nukem 3D Engine
+Icon=eduke32
+Exec=/usr/games/eduke32
+Terminal=false
+Type=Application
+Categories=Game;ActionGame;
diff --git a/games/eduke32/desktop/fury.desktop b/games/eduke32/desktop/fury.desktop
new file mode 100644
index 0000000000..ff60cf1f9a
--- /dev/null
+++ b/games/eduke32/desktop/fury.desktop
@@ -0,0 +1,8 @@
+[Desktop Entry]
+Name=Fury
+GenericName=Ion Fury Engine
+Icon=fury
+Exec=/usr/games/fury
+Terminal=false
+Type=Application
+Categories=Game;ActionGame;
diff --git a/games/eduke32/desktop/mapster32.desktop b/games/eduke32/desktop/mapster32.desktop
new file mode 100644
index 0000000000..280f04f486
--- /dev/null
+++ b/games/eduke32/desktop/mapster32.desktop
@@ -0,0 +1,8 @@
+[Desktop Entry]
+Name=Mapster32
+GenericName=Duke Nukem 3D Map Editor
+Icon=eduke32
+Exec=/usr/games/mapster32
+Terminal=false
+Type=Application
+Categories=Game;ActionGame;
diff --git a/games/eduke32/desktop/voidsw.desktop b/games/eduke32/desktop/voidsw.desktop
new file mode 100644
index 0000000000..558a2db691
--- /dev/null
+++ b/games/eduke32/desktop/voidsw.desktop
@@ -0,0 +1,8 @@
+[Desktop Entry]
+Name=VoidSW
+GenericName=Shadow Warrior
+Icon=voidsw
+Exec=/usr/games/voidsw
+Terminal=false
+Type=Application
+Categories=Game;ActionGame;
diff --git a/games/eduke32/desktop/wangulator.desktop b/games/eduke32/desktop/wangulator.desktop
new file mode 100644
index 0000000000..a99aee7356
--- /dev/null
+++ b/games/eduke32/desktop/wangulator.desktop
@@ -0,0 +1,8 @@
+[Desktop Entry]
+Name=Wangulator
+GenericName=Shadow Warrior Map Editor
+Icon=voidsw
+Exec=/usr/games/wangulator
+Terminal=false
+Type=Application
+Categories=Game;ActionGame;
diff --git a/games/eduke32/doinst.sh b/games/eduke32/doinst.sh
index 59eb079d15..eff4bc5182 100644
--- a/games/eduke32/doinst.sh
+++ b/games/eduke32/doinst.sh
@@ -1,3 +1,9 @@
if [ -x /usr/bin/update-desktop-database ]; then
/usr/bin/update-desktop-database -q usr/share/applications 2>/dev/null
fi
+
+if [ -e usr/share/icons/hicolor/icon-theme.cache ]; then
+ if [ -x /usr/bin/gtk-update-icon-cache ]; then
+ /usr/bin/gtk-update-icon-cache usr/share/icons/hicolor >/dev/null 2>&1
+ fi
+fi
diff --git a/games/eduke32/eduke32.SlackBuild b/games/eduke32/eduke32.SlackBuild
index f29678ec39..a15f7f6145 100644
--- a/games/eduke32/eduke32.SlackBuild
+++ b/games/eduke32/eduke32.SlackBuild
@@ -1,11 +1,35 @@
-#!/bin/sh
+#!/bin/bash
# Slackware build script for eduke32
-# Written by B. Watson (yalhcru@gmail.com)
+# Written by B. Watson (urchlay@slackware.uk)
# Licensed under the WTFPL. See http://www.wtfpl.net/txt/copying/ for details.
+# Note to self: in 20211102_9751_8970754aa, ekenbuild won't compile.
+
+# TODO: man page(s). eduke32.6 is ancient.
+
+# 20230117 bkw: update for 20221225_10166_122aee012.
+# - no more need for tools.diff
+# - voidsw mouse sensitivity is more-or-less OK now, remove hack.
+# - add note to README about the game crashing when joystick plugged in.
+# - fix PRINT_PACKAGE_NAME.
+
+# 20211108 bkw:
+# - update for 20211102_9751_8970754aa.
+# - include voidsw (shadow warrior), wangulator (sw map editor), and
+# fury (ion fury) executables.
+# - fix the tools compilation (again).
+# - get rid of wrapper script, upstream now supports looking for
+# data in /usr/share/games/eduke32, and creates its own ~/.config/eduke32
+# to save settings/etc in.
+# - stop the game from creating a log file in the current dir.
+# - rewrite README_game_data.txt, it's now complete for all the games
+# except Ion Fury.
+# - fix the @!%!#$% mouse sensitivity in voidsw.
+# - get rid of SDL1 build.
+
# 20170128 bkw:
# - update for 20170123_6052
# - add new utilities
@@ -24,12 +48,14 @@
# core Slackware 14.2 package
# - slack-desc shows SDL version and whether or not libvpx was used.
+cd $(dirname $0) ; CWD=$(pwd)
+
PRGNAM=eduke32
-VERSION=${VERSION:-20170123_6052}
+VERSION=${VERSION:-20221225_10166_122aee012}
BUILD=${BUILD:-1}
TAG=${TAG:-_SBo}
+PKGTYPE=${PKGTYPE:-tgz}
-CWD=$(pwd)
TMP=${TMP:-/tmp/SBo}
PKG=$TMP/package-$PRGNAM
OUTPUT=${OUTPUT:-/tmp}
@@ -42,94 +68,105 @@ if [ -z "$ARCH" ]; then
esac
fi
+if [ ! -z "${PRINT_PACKAGE_NAME}" ]; then
+ echo "$PRGNAM-$VERSION-$ARCH-$BUILD$TAG.$PKGTYPE"
+ exit 0
+fi
+
if [ "$ARCH" = "i586" ]; then
SLKCFLAGS="-O2 -march=i586 -mtune=i686"
- LIBDIRSUFFIX=""
elif [ "$ARCH" = "i686" ]; then
SLKCFLAGS="-O2 -march=i686 -mtune=i686"
- LIBDIRSUFFIX=""
elif [ "$ARCH" = "x86_64" ]; then
SLKCFLAGS="-O2 -fPIC"
- LIBDIRSUFFIX="64"
+else
+ SLKCFLAGS="-O2"
fi
set -e
-SRCVER=${VERSION/_/-}
+SRCVER="$( echo $VERSION | tr _ - )"
rm -rf $PKG
mkdir -p $TMP $PKG $OUTPUT
cd $TMP
rm -rf ${PRGNAM}_${SRCVER}
-tar xvf $CWD/${PRGNAM}_src_${SRCVER}.tar.xz
+tar xvf $CWD/${PRGNAM}_src_${SRCVER}.tar.xz --exclude=platform
cd ${PRGNAM}_${SRCVER}
chown -R root:root .
-find -L . \
- \( -perm 777 -o -perm 775 -o -perm 750 -o -perm 711 -o -perm 555 \
- -o -perm 511 \) -exec chmod 755 {} \; -o \
- \( -perm 666 -o -perm 664 -o -perm 640 -o -perm 600 -o -perm 444 \
- -o -perm 440 -o -perm 400 \) -exec chmod 644 {} \;
-
-# this was always undocumented, defaulted to "no" in Slack <= 14.1.
-# should be safe to default to "yes" now that 14.2 has libvpx.
-if [ "${VPX:-yes}" != "yes" ]; then
- VPXFLAG="USE_LIBVPX=0"
-else
- ANDVPX=" and libvpx"
-fi
+find -L . -perm /111 -a \! -perm 755 -a -exec chmod 755 {} \+ -o \
+ \! -perm /111 -a \! -perm 644 -a -exec chmod 644 {} \+
+
+# Notes to self:
+# - adding LDFLAGS="-fuse-ld=gold" doesn't seem to affect the link times.
+# - SLKCFLAGS get applied, but also a bunch of other optimizations.
+runmake() {
+ echo "===> runmake args: '$@'"
+ make RELEASE=1 \
+ PRETTY_OUTPUT=0 \
+ CFLAGS="$SLKCFLAGS" \
+ CXXFLAGS="$SLKCFLAGS" \
+ "$@"
+}
+
+installbins() {
+ echo "===> installbins args: '$@'"
+ install -s -m0755 $@ $PKG/usr/games/
+}
+
+# 20211108 bkw: recent eduke32 no longer needs a wrapper script,
+# except that it wants to write a logfile to the current dir where
+# it was run. Since the log is just a copy of the game's stdout,
+# we don't actually need it, so:
+sed -i '/OSD_SetLogFile/d' \
+ source/duke3d/src/game.cpp \
+ source/duke3d/src/astub.cpp \
+ source/kenbuild/src/game.cpp \
+ source/kenbuild/src/bstub.cpp \
+ source/sw/src/game.cpp \
+ source/sw/src/jnstub.cpp
# On some systems, the game spits out tons of warnings:
# Error: glGetTexLevelParameteriv returned GL_FALSE!
# These don't seem to actually hurt anything (the game looks
# and plays fine), so let's get rid of them to clean up
# the log output.
-sed -i '/"Error: glGetTexLevelParameteriv/d' build/src/texcache.c
-
-# SDL2 might be preferred for some users. Specifically, those of us
-# who use a left-handed mouse (SDL1 gets the button mappings backwards).
-SDL2=${SDL2:-auto}
-SDL_TARGET=1
-if [ "$SDL2" = "auto" ]; then
- sdl2-config --version >/dev/null && SDL_TARGET=2
-elif [ "$SDL2" = "yes" ]; then
- SDL_TARGET=2
-else
- SDL_TARGET=1
-fi
+sed -i '/"Error: glGetTexLevelParameteriv/d' source/build/src/texcache.cpp
-# Mildly confusing: the Makefile uses ARCH for arch-specific cflags
-make \
- ARCH="" \
- OPTIMIZATIONS="$SLKCFLAGS" \
- SDL_TARGET=$SDL_TARGET \
- $VPXFLAG
-
-# Build the utilities, if requested.
-if [ "${BUILD_UTILS:-yes}" = "yes" ]; then
- make utils sdlutils \
- OPTIMIZATIONS="$SLKCFLAGS" \
- ARCH="" \
- $VPXFLAG \
- SDL_TARGET=$SDL_TARGET \
-
- for i in kextract kgroup transpal wad2art wad2map kmd2tool \
- md2tool generateicon cacheinfo arttool givedepth \
- mkpalette unpackssi map2stl ivfrate makesdlkeytrans
- do
- install -s -D -m0755 $i $PKG/usr/games/$i
- done
-fi
+# Our twin dragon is a different repack from the ones voidsw knows
+# about. Also, upstream incorrectly says the Wanton Destruction
+# wd.grp requires sw.grp as a dependency. Actually, it's a
+# complete/standalone game, add-on or not, so this patch fixes that.
+patch -p1 < $CWD/twin_dragon.diff
+
+# Make eduke32 load autoload content from the system dir. voidsw
+# already does this.
+patch -p1 < $CWD/system_autoload.diff
+
+# eduke32 and mapster:
+runmake
+
+# voidsw and wangulator:
+runmake sw
-install -D -m0755 $PRGNAM $PKG/usr/libexec/$PRGNAM/$PRGNAM
-install -D -m0755 mapster32 $PKG/usr/libexec/$PRGNAM/mapster32
+mkdir -p $PKG/usr/games
+installbins $PRGNAM mapster32 voidsw wangulator
+
+# the tools:
+runmake tools
+installbins arttool bsuite cacheinfo givedepth ivfrate kextract kgroup \
+ kmd2tool makesdlkeytrans map2stl md2tool mkpalette transpal \
+ unpackssi wad2art wad2map
+
+# fury (which would fail without the 'make clean' first):
+make clean
+sed -i '/SDL_STATIC *:=/d' GNUmakefile # grrr.
+runmake fury FURY=1
+installbins fury
mkdir -p $PKG/usr/man/man6
gzip -9c $CWD/$PRGNAM.6 > $PKG/usr/man/man6/$PRGNAM.6.gz
-# Wrapper script to make things behave nicer
-install -D -m0755 $CWD/$PRGNAM.wrapper $PKG/usr/games/$PRGNAM
-( cd $PKG/usr/games ; ln -s $PRGNAM mapster32 )
-
# Mapster help files
mkdir -p $PKG/usr/share/games/$PRGNAM
cd package/sdk
@@ -137,14 +174,26 @@ cp *.hlp *.HLP names.h tiles.cfg $PKG/usr/share/games/$PRGNAM
cd -
mkdir -p $PKG/usr/share/applications
-cp $CWD/mapster32.desktop $CWD/$PRGNAM.desktop $PKG/usr/share/applications
+for i in $CWD/desktop/*.desktop; do
+ cat $i > $PKG/usr/share/applications/$( basename $i )
+done
mkdir -p $PKG/usr/share/pixmaps
-cp $CWD/$PRGNAM.png $PKG/usr/share/pixmaps
+for subdir in $CWD/icons/*; do
+ name=$( basename $subdir )
+ for i in $subdir/*.png; do
+ px=$( basename $i | cut -d. -f1 )
+ size=${px}x${px}
+ dir=$PKG/usr/share/icons/hicolor/$size/apps
+ mkdir -p $dir
+ cat $i > $dir/$name.png
+ done
+ ln -s ../icons/hicolor/48x48/apps/$name.png $PKG/usr/share/pixmaps/$name.png
+done
mkdir -p $PKG/usr/doc/$PRGNAM-$VERSION
-cp build/doc/* $PKG/usr/doc/$PRGNAM-$VERSION
-cp build/buildlic.txt source/gpl-2.0.txt $CWD/README_game_data.txt \
+cp source/build/doc/* $PKG/usr/doc/$PRGNAM-$VERSION
+cp source/build/buildlic.txt source/duke3d/gpl-2.0.txt $CWD/README_game_data.txt \
$PKG/usr/doc/$PRGNAM-$VERSION
cp -r package/sdk/samples $PKG/usr/doc/$PRGNAM-$VERSION
cat $CWD/$PRGNAM.SlackBuild > $PKG/usr/doc/$PRGNAM-$VERSION/$PRGNAM.SlackBuild
@@ -153,10 +202,8 @@ cat $CWD/$PRGNAM.SlackBuild > $PKG/usr/doc/$PRGNAM-$VERSION/$PRGNAM.SlackBuild
ln -s ../../../doc/$PRGNAM-$VERSION/README_game_data.txt . )
mkdir -p $PKG/install
-sed -e "s,@SDL_TARGET@,$SDL_TARGET," \
- -e "s,@ANDVPX@,$ANDVPX," \
- $CWD/slack-desc > $PKG/install/slack-desc
+cat $CWD/slack-desc > $PKG/install/slack-desc
cat $CWD/doinst.sh > $PKG/install/doinst.sh
cd $PKG
-/sbin/makepkg -l y -c n $OUTPUT/$PRGNAM-$VERSION-$ARCH-$BUILD$TAG.${PKGTYPE:-tgz}
+/sbin/makepkg -l y -c n $OUTPUT/$PRGNAM-$VERSION-$ARCH-$BUILD$TAG.$PKGTYPE
diff --git a/games/eduke32/eduke32.desktop b/games/eduke32/eduke32.desktop
deleted file mode 100644
index 2190c3cc97..0000000000
--- a/games/eduke32/eduke32.desktop
+++ /dev/null
@@ -1,9 +0,0 @@
-[Desktop Entry]
-Name=EDuke32
-GenericName=Duke Nukem 3D Engine
-Comment=EDuke32 Duke Nukem 3D Engine
-Icon=eduke32
-Exec=eduke32
-Terminal=false
-Type=Application
-Categories=Game;ActionGame;
diff --git a/games/eduke32/eduke32.info b/games/eduke32/eduke32.info
index 6c633a7ef5..05ac8a8ff2 100644
--- a/games/eduke32/eduke32.info
+++ b/games/eduke32/eduke32.info
@@ -1,10 +1,10 @@
PRGNAM="eduke32"
-VERSION="20170123_6052"
-HOMEPAGE="http://www.eduke32.com/"
-DOWNLOAD="http://dukeworld.duke4.net/eduke32/synthesis/20170123-6052/eduke32_src_20170123-6052.tar.xz"
-MD5SUM="b3109ceca104bb4550ebeb58fc5b38f6"
+VERSION="20221225_10166_122aee012"
+HOMEPAGE="https://www.eduke32.com/"
+DOWNLOAD="https://dukeworld.duke4.net/eduke32/synthesis/20221225-10166-122aee012/eduke32_src_20221225-10166-122aee012.tar.xz"
+MD5SUM="884e413dd8d391254b922b279fedb9a7"
DOWNLOAD_x86_64=""
MD5SUM_x86_64=""
REQUIRES=""
MAINTAINER="B. Watson"
-EMAIL="yalhcru@gmail.com"
+EMAIL="urchlay@slackware.uk"
diff --git a/games/eduke32/eduke32.png b/games/eduke32/eduke32.png
deleted file mode 100644
index 58d4f7cf18..0000000000
--- a/games/eduke32/eduke32.png
+++ /dev/null
Binary files differ
diff --git a/games/eduke32/eduke32.wrapper b/games/eduke32/eduke32.wrapper
deleted file mode 100644
index 7509c7f09d..0000000000
--- a/games/eduke32/eduke32.wrapper
+++ /dev/null
@@ -1,63 +0,0 @@
-#!/bin/sh
-
-# Wrapper script for eduke32 and mapster32.
-# Ensure ~/.eduke32 exists, populate with a symlink forest.
-# Need this because the game normally expects to run from its own dir.
-# This version supports game mods. Currently only tested with bloodcm.
-
-SHAREDIR=/usr/share/games/eduke32
-BINDIR=/usr/libexec/eduke32
-USERDIR=$HOME/.eduke32
-
-PROG="$( basename $0 )"
-mkdir -p $USERDIR
-
-if ! cd $USERDIR; then
- echo 2>&1 "$PROG: Can't create $USERDIR directory"
- exit 1
-fi
-
-# These files need to be present, but not writable, symlinks
-# to /usr/share are OK.
-for i in m32help.hlp SEHELP.HLP STHELP.HLP names.h tiles.cfg; do
- if [ -e $SHAREDIR/$i -a ! -e $i ]; then
- ln -s $SHAREDIR/$i $i
- fi
-done
-
-# For directories, it's more complex.
-
-# We don't know in advance what directories might be present, since
-# packages can install game mods (e.g. bloodcm). So link them all.
-# Unfortunately it can't be a simple symlink, because the *.cfg files
-# inside mod directories need to really exist in $USERDIR, writable by
-# the user, so he can save his settings.
-
-# The autoload subdir isn't a mod, but it's treated the same way so
-# individual users can have different autoload stuff. If you install
-# eduke32_hires_pack, this means users can disable it by removing their
-# symlink in ~/.eduke32/autoload (without disturbing anything else they
-# might have in autoload).
-
-# I wish there were a simpler way to do this. The only other solution
-# would be to patch the eduke32 source, to make it save .cfg files in a
-# different location than the game data dirs... but I'd rather handle it
-# with a wrapper script because it's easier to debug.
-
-# So, here's how we handle the directories:
-for i in $SHAREDIR/*/; do
- dir=$( basename $i )
- if [ ! -e $dir ]; then
- mkdir $dir
- ln -s $SHAREDIR/$dir/* $dir
- rm -f $dir/*.cfg
- cp $SHAREDIR/$dir/*.cfg $dir
- fi
-done
-
-# If this is left over in $USERDIR, it's from a previous version of this
-# script, and it doesn't belong there. samples/ isn't a mod, it's actually
-# documentation, and is now installed in /usr/doc/eduke32-$VERSION.
-rm -f samples
-
-exec $BINDIR/$PROG "$@"
diff --git a/games/eduke32/icons/eduke32/128.png b/games/eduke32/icons/eduke32/128.png
new file mode 100644
index 0000000000..6284bc15ba
--- /dev/null
+++ b/games/eduke32/icons/eduke32/128.png
Binary files differ
diff --git a/games/eduke32/icons/eduke32/16.png b/games/eduke32/icons/eduke32/16.png
new file mode 100644
index 0000000000..f5de16215d
--- /dev/null
+++ b/games/eduke32/icons/eduke32/16.png
Binary files differ
diff --git a/games/eduke32/icons/eduke32/24.png b/games/eduke32/icons/eduke32/24.png
new file mode 100644
index 0000000000..7efbca88f9
--- /dev/null
+++ b/games/eduke32/icons/eduke32/24.png
Binary files differ
diff --git a/games/eduke32/icons/eduke32/256.png b/games/eduke32/icons/eduke32/256.png
new file mode 100644
index 0000000000..f7585c4e62
--- /dev/null
+++ b/games/eduke32/icons/eduke32/256.png
Binary files differ
diff --git a/games/eduke32/icons/eduke32/32.png b/games/eduke32/icons/eduke32/32.png
new file mode 100644
index 0000000000..cf72dec8e9
--- /dev/null
+++ b/games/eduke32/icons/eduke32/32.png
Binary files differ
diff --git a/games/eduke32/icons/eduke32/48.png b/games/eduke32/icons/eduke32/48.png
new file mode 100644
index 0000000000..260006b871
--- /dev/null
+++ b/games/eduke32/icons/eduke32/48.png
Binary files differ
diff --git a/games/eduke32/icons/eduke32/64.png b/games/eduke32/icons/eduke32/64.png
new file mode 100644
index 0000000000..800a0d993d
--- /dev/null
+++ b/games/eduke32/icons/eduke32/64.png
Binary files differ
diff --git a/games/eduke32/icons/fury/16.png b/games/eduke32/icons/fury/16.png
new file mode 100644
index 0000000000..542f54b9ec
--- /dev/null
+++ b/games/eduke32/icons/fury/16.png
Binary files differ
diff --git a/games/eduke32/icons/fury/24.png b/games/eduke32/icons/fury/24.png
new file mode 100644
index 0000000000..8a626445e5
--- /dev/null
+++ b/games/eduke32/icons/fury/24.png
Binary files differ
diff --git a/games/eduke32/icons/fury/32.png b/games/eduke32/icons/fury/32.png
new file mode 100644
index 0000000000..cf8eeac826
--- /dev/null
+++ b/games/eduke32/icons/fury/32.png
Binary files differ
diff --git a/games/eduke32/icons/fury/48.png b/games/eduke32/icons/fury/48.png
new file mode 100644
index 0000000000..15a6f3a3d6
--- /dev/null
+++ b/games/eduke32/icons/fury/48.png
Binary files differ
diff --git a/games/eduke32/icons/fury/64.png b/games/eduke32/icons/fury/64.png
new file mode 100644
index 0000000000..9a94c4845c
--- /dev/null
+++ b/games/eduke32/icons/fury/64.png
Binary files differ
diff --git a/games/eduke32/icons/voidsw/128.png b/games/eduke32/icons/voidsw/128.png
new file mode 100644
index 0000000000..77cdf70f68
--- /dev/null
+++ b/games/eduke32/icons/voidsw/128.png
Binary files differ
diff --git a/games/eduke32/icons/voidsw/16.png b/games/eduke32/icons/voidsw/16.png
new file mode 100644
index 0000000000..ebbd8f0872
--- /dev/null
+++ b/games/eduke32/icons/voidsw/16.png
Binary files differ
diff --git a/games/eduke32/icons/voidsw/256.png b/games/eduke32/icons/voidsw/256.png
new file mode 100644
index 0000000000..8ae928472a
--- /dev/null
+++ b/games/eduke32/icons/voidsw/256.png
Binary files differ
diff --git a/games/eduke32/icons/voidsw/32.png b/games/eduke32/icons/voidsw/32.png
new file mode 100644
index 0000000000..f4534322aa
--- /dev/null
+++ b/games/eduke32/icons/voidsw/32.png
Binary files differ
diff --git a/games/eduke32/icons/voidsw/48.png b/games/eduke32/icons/voidsw/48.png
new file mode 100644
index 0000000000..8f6aca3acf
--- /dev/null
+++ b/games/eduke32/icons/voidsw/48.png
Binary files differ
diff --git a/games/eduke32/icons/voidsw/64.png b/games/eduke32/icons/voidsw/64.png
new file mode 100644
index 0000000000..a62c2f3c8a
--- /dev/null
+++ b/games/eduke32/icons/voidsw/64.png
Binary files differ
diff --git a/games/eduke32/mapster32.desktop b/games/eduke32/mapster32.desktop
deleted file mode 100644
index 432e44e25f..0000000000
--- a/games/eduke32/mapster32.desktop
+++ /dev/null
@@ -1,9 +0,0 @@
-[Desktop Entry]
-Name=Mapster32
-GenericName=Duke Nukem 3D Editor
-Comment=Mapster32 Duke Nukem 3D Editor
-Icon=eduke32
-Exec=mapster32
-Terminal=false
-Type=Application
-Categories=Game;ActionGame;
diff --git a/games/eduke32/slack-desc b/games/eduke32/slack-desc
index 9d6373e6a7..458febc691 100644
--- a/games/eduke32/slack-desc
+++ b/games/eduke32/slack-desc
@@ -6,14 +6,14 @@
# customary to leave one space after the ':' except on otherwise blank lines.
|-----handy-ruler------------------------------------------------------|
-eduke32: eduke32 (enhanced "Duke Nukem 3D" engine)
+eduke32: eduke32 (engine for Duke Nukem 3D, Shadow Warrior, Ion Fury)
eduke32:
eduke32: EDuke32 is a fork of the JFDuke3D port of Duke Nukem 3D (aka Duke3D),
eduke32: merging it with EDuke to provide many new features for mod authors.
-eduke32: Also included is a map editor (mapster32).
eduke32:
-eduke32: To play the game, you will need the DUKE3D.GRP file from either the
-eduke32: Duke Nukem 3D CD-ROM, or from the shareware version of Duke Nukem 3D.
-eduke32:
-eduke32: This package built with SDL @SDL_TARGET@@ANDVPX@.
+eduke32: Included in the package are eduke32 (Duke Nukem 3D engine; also plays
+eduke32: Nam/Napalm and WWII GI), voidsw (Shadow Warrior engine), fury (Ion
+eduke32: Fury engine), mapster32 (map editor for Duke Nukem 3D), wangulator
+eduke32: (map editor for Shadow Warrior), plus the Build engine tools such
+eduke32: as kextract, kgroup, etc.
eduke32:
diff --git a/games/eduke32/system_autoload.diff b/games/eduke32/system_autoload.diff
new file mode 100644
index 0000000000..a480d87a19
--- /dev/null
+++ b/games/eduke32/system_autoload.diff
@@ -0,0 +1,11 @@
+diff -Naur eduke32_20211102-9751-8970754aa/source/duke3d/src/common.cpp eduke32_20211102-9751-8970754aa.patched/source/duke3d/src/common.cpp
+--- eduke32_20211102-9751-8970754aa/source/duke3d/src/common.cpp 2021-11-03 00:31:19.000000000 -0400
++++ eduke32_20211102-9751-8970754aa.patched/source/duke3d/src/common.cpp 2021-11-09 12:06:08.273092333 -0500
+@@ -449,6 +449,7 @@
+
+ if (autoload)
+ {
++ G_LoadGroupsInDir("/usr/share/games/eduke32/autoload");
+ G_LoadGroupsInDir("autoload");
+
+ if (i != -1)
diff --git a/games/eduke32/twin_dragon.diff b/games/eduke32/twin_dragon.diff
new file mode 100644
index 0000000000..9a6be0324c
--- /dev/null
+++ b/games/eduke32/twin_dragon.diff
@@ -0,0 +1,12 @@
+diff -Naur eduke32_20211102-9751-8970754aa/source/sw/src/grpscan.cpp eduke32_20211102-9751-8970754aa.patched/source/sw/src/grpscan.cpp
+--- eduke32_20211102-9751-8970754aa/source/sw/src/grpscan.cpp 2021-11-03 00:31:20.000000000 -0400
++++ eduke32_20211102-9751-8970754aa.patched/source/sw/src/grpscan.cpp 2021-11-07 15:00:27.613722670 -0500
+@@ -50,7 +50,7 @@
+ { "Shadow Warrior Shareware 1.1", 0xF21A6B35u, 25833456, GAMEFLAG_SHAREWARE, 0, 0, nullptr },
+ { "Shadow Warrior Shareware 1.2", 0x08A7FA1Fu, 26056769, GAMEFLAG_SHAREWARE, 0, 0, nullptr },
+ { "Shadow Warrior Mac Demo", 0x4227F535u, 26056769, GAMEFLAG_SHAREWARE, 0, 0, nullptr },
+- { "Wanton Destruction", SWWD_CRC, 48698128, GAMEFLAG_SWWD, GRP_HAS_DEPENDENCY, SWREG12_CRC, nullptr },
++ { "Wanton Destruction", SWWD_CRC, 48698128, GAMEFLAG_SWWD, 0, 0, nullptr },
+ { "Twin Dragon", SWTD_CRC, 12499012, GAMEFLAG_SWTD, GRP_HAS_DEPENDENCY, SWREG12_CRC, process_tdragongrp },
+ { "Twin Dragon", 0xACC8DCDEu, 6235578, GAMEFLAG_SWTD, GRP_HAS_DEPENDENCY, SWREG12_CRC, nullptr },
+ { "Twin Dragon", 0xB5B71277u, 6236287, GAMEFLAG_SWTD, GRP_HAS_DEPENDENCY, SWREG12_CRC, nullptr }, // commonly available repack
diff --git a/games/eduke32_hires_pack/README b/games/eduke32_hires_pack/README
index 8c2d47cc4e..1b94e2aaed 100644
--- a/games/eduke32_hires_pack/README
+++ b/games/eduke32_hires_pack/README
@@ -1,3 +1,5 @@
+eduke32_hires_pack (Duke3D High Resolution Pack)
+
The Duke3D High Resolution Pack allows you to use much better looking
textures than the original game (released back in 1996) had to offer
in the first place. It also introduces 3D model replacements for the
@@ -6,16 +8,31 @@ like JFDuke3D or EDuke32, this gives Duke Nukem 3D a modernized, more
appealing look and even motivates Duke veterans to play through the
original episodes once again.
+You'll need a high-end video card to use this at a decent framerate.
+
+The SC-55 Music Pack used to be optional; it's now always included.
+
This package is intended for use with the eduke32 package from
slackbuilds.org, but may also be used with other Duke3D source ports.
-Optionally, this package can include the EDuke32 Music Pack, which
-provides better-sounding music than the default MIDI soundtrack. To
-include the music pack, download the file from:
+To enable the HRP in the eduke32 launcher:
+
+- Enable the "Enable autoload folder" option.
+
+- Select an OpenGL video mode.
+
+- Enable the "Polymer" option.
+
+- In the "Game" tab, make sure you're playing either Duke Nukem 3D
+ Atomic Edition or Duke Nukem 3D Shareware.
+
+- Click "Start".
-http://www.duke4.org/files/nightfright/music/duke3d_music-sc55.zip
+If you don't see the launcher (if eduke32 goes straight to the game),
+run "eduke32 -setup".
-...and save it in the same directory as the SlackBuild.
+These instructions also work for rednukem (from the nblood package),
+except that it requires symlinks to be created first:
-If you've installed this package, but for some reason want to run
-eduke32 without it, run "eduke32 -noautoload".
+ mkdir -p ~/.config/rednukem/autoload
+ ln -s /usr/share/games/eduke32/autoload/* ~/.config/rednukem/autoload
diff --git a/games/eduke32_hires_pack/eduke32_hires_pack.SlackBuild b/games/eduke32_hires_pack/eduke32_hires_pack.SlackBuild
index b5ade48239..cf88dd2230 100644
--- a/games/eduke32_hires_pack/eduke32_hires_pack.SlackBuild
+++ b/games/eduke32_hires_pack/eduke32_hires_pack.SlackBuild
@@ -1,25 +1,41 @@
-#!/bin/sh
+#!/bin/bash
# Slackware build script for Eduke32 HRP (High Res Pack)
-# Written by B. Watson (yalhcru@gmail.com)
+# Written by B. Watson (urchlay@slackware.uk)
# Licensed under the WTFPL. See http://www.wtfpl.net/txt/copying/ for details.
+# Note: the SlackBuild maintainer (B. Watson) has now upgraded this
+# build past his hardware's ability to use it properly. I can't afford
+# to buy new hardware, so this runs at slide-show framerates on my
+# system. Consequently I haven't played much of the game with the HRP
+# enabled. If there are major issues, I can downgrade this back to the
+# previous version (4.0_321) version. Email me.
+
+# 20230625 bkw: get rid of p7zip dep. Turns out that Slackware's
+# bsdtar command (from libarchive) can extract this just fine. All
+# these years I never knew that...
+
+cd $(dirname $0) ; CWD=$(pwd)
+
PRGNAM=eduke32_hires_pack
-VERSION=${VERSION:-4.0_321}
+VERSION=${VERSION:-5.4}
ARCH=noarch
BUILD=${BUILD:-1}
TAG=${TAG:-_SBo}
+PKGTYPE=${PKGTYPE:-tgz}
+
+if [ ! -z "${PRINT_PACKAGE_NAME}" ]; then
+ echo "$PRGNAM-$VERSION-$ARCH-$BUILD$TAG.$PKGTYPE"
+ exit 0
+fi
-CWD=$(pwd)
TMP=${TMP:-/tmp/SBo}
PKG=$TMP/package-$PRGNAM
OUTPUT=${OUTPUT:-/tmp}
-VERMAJOR=$( echo $VERSION | cut -d_ -f1 )
-VERMINOR=$( echo $VERSION | cut -d_ -f2 )
-ZIPFILE="dn3d_hrp-${VERMAJOR}(${VERMINOR}).zip"
+ZIPFILE="dn3d_hrp${VERSION/./}-sfx.exe"
set -e
@@ -29,36 +45,25 @@ cd $TMP
rm -rf $PRGNAM-$VERSION
mkdir $PRGNAM-$VERSION
cd $PRGNAM-$VERSION
-unzip $CWD/$ZIPFILE
+bsdtar xvf $CWD/$ZIPFILE autoload/\* \*.txt
chown -R root:root .
find . -type d | xargs chmod 755
find . -type f | xargs chmod 644
mkdir -p $PKG/usr/share/games/eduke32
-mv autoload $PKG/usr/share/games/eduke32/autoload
+mv autoload $PKG/usr/share/games/eduke32
mkdir -p $PKG/usr/doc/$PRGNAM-$VERSION
-# If they have the music pack, include that too
-if [ -r $CWD/duke3d_music-sc55.zip ]; then
- unzip -j $CWD/duke3d_music-sc55.zip readme/music_readme.txt
- cat music_readme.txt > $PKG/usr/doc/$PRGNAM-$VERSION/music_readme.txt
- cat $CWD/duke3d_music-sc55.zip > \
- $PKG/usr/share/games/eduke32/autoload/duke3d.grp/duke3d_music-sc55.zip
-fi
-
+# De-windows-ize the docs
+sed -i 's,\r,,' *.txt
cp *.txt $PKG/usr/doc/$PRGNAM-$VERSION
+
cat $CWD/$PRGNAM.SlackBuild > $PKG/usr/doc/$PRGNAM-$VERSION/$PRGNAM.SlackBuild
cat $CWD/README > $PKG/usr/doc/$PRGNAM-$VERSION/README
-# De-windows-ize the docs
-sed -i -s -e "s/\\x92/'/g" \
- -e 's/\x96/-/g' \
- -e 's/\r//g' \
- $PKG/usr/doc/$PRGNAM-$VERSION/*.txt
-
mkdir -p $PKG/install
cat $CWD/slack-desc > $PKG/install/slack-desc
cd $PKG
-/sbin/makepkg -l y -c n $OUTPUT/$PRGNAM-$VERSION-$ARCH-$BUILD$TAG.${PKGTYPE:-tgz}
+/sbin/makepkg -l y -c n $OUTPUT/$PRGNAM-$VERSION-$ARCH-$BUILD$TAG.$PKGTYPE
diff --git a/games/eduke32_hires_pack/eduke32_hires_pack.info b/games/eduke32_hires_pack/eduke32_hires_pack.info
index 858eabb6e5..0da6233ced 100644
--- a/games/eduke32_hires_pack/eduke32_hires_pack.info
+++ b/games/eduke32_hires_pack/eduke32_hires_pack.info
@@ -1,10 +1,10 @@
PRGNAM="eduke32_hires_pack"
-VERSION="4.0_321"
+VERSION="5.4"
HOMEPAGE="http://hrp.duke4.net/"
-DOWNLOAD="http://www.duke4.org/files/hrp/dn3d_hrp-4.0(321).zip"
-MD5SUM="01ec2c1d9be94bcb556c910814f2b85f"
+DOWNLOAD="http://www.duke4.org/files/nightfright/hrp/dn3d_hrp54-sfx.exe"
+MD5SUM="2acf16b0c6113a69ab9194ae2bd21cbb"
DOWNLOAD_x86_64=""
MD5SUM_x86_64=""
REQUIRES=""
MAINTAINER="B. Watson"
-EMAIL="yalhcru@gmail.com"
+EMAIL="urchlay@slackware.uk"
diff --git a/games/eduke32_shareware_data/README b/games/eduke32_shareware_data/README
index 42bf594687..8315d88512 100644
--- a/games/eduke32_shareware_data/README
+++ b/games/eduke32_shareware_data/README
@@ -1,6 +1,6 @@
eduke32_shareware_data (shareware game data files)
-The game data files from the shareware edition of Duke Mukem 3D,
+The game data files from the shareware edition of Duke Nukem 3D,
copyright 3D Realms, Inc.
Packaged for use with the slackbuilds.org eduke32 package.
diff --git a/games/eduke32_shareware_data/eduke32_shareware_data.SlackBuild b/games/eduke32_shareware_data/eduke32_shareware_data.SlackBuild
index f99021cef1..bafb1465b4 100644
--- a/games/eduke32_shareware_data/eduke32_shareware_data.SlackBuild
+++ b/games/eduke32_shareware_data/eduke32_shareware_data.SlackBuild
@@ -1,18 +1,29 @@
-#!/bin/sh
+#!/bin/bash
# Slackware build script for Duke Nukem 3D shareware game data
-# Written by B. Watson (yalhcru@gmail.com)
+# Written by B. Watson (urchlay@slackware.uk)
# Licensed under the WTFPL. See http://www.wtfpl.net/txt/copying/ for details.
+# 20211108 bkw: BUILD=2
+# - fix typo in README, slack-desc.
+# - fix the text files: get rid of CRLFs, rename to lowercase, .doc => .txt.
+
+cd $(dirname $0) ; CWD=$(pwd)
+
PRGNAM=eduke32_shareware_data
VERSION=${VERSION:-1.3}
ARCH=noarch
-BUILD=${BUILD:-1}
+BUILD=${BUILD:-2}
TAG=${TAG:-_SBo}
+PKGTYPE=${PKGTYPE:-tgz}
+
+if [ ! -z "${PRINT_PACKAGE_NAME}" ]; then
+ echo "$PRGNAM-$VERSION-$ARCH-$BUILD$TAG.$PKGTYPE"
+ exit 0
+fi
-CWD=$(pwd)
TMP=${TMP:-/tmp/SBo}
PKG=$TMP/package-$PRGNAM
OUTPUT=${OUTPUT:-/tmp}
@@ -29,16 +40,20 @@ unzip $CWD/3dduke13.zip DN3DSW13.SHR
unzip DN3DSW13.SHR
chmod 0644 *
-mkdir -p $PKG/usr/share/games/eduke32
-cat DUKE3D.GRP > $PKG/usr/share/games/eduke32/duke3d.grp # lowercase!
-cat DUKE.RTS > $PKG/usr/share/games/eduke32/DUKE.RTS # UPPERCASE!
+GAMEDIR=$PKG/usr/share/games/eduke32
+DOCDIR=$PKG/usr/doc/$PRGNAM-$VERSION
+
+mkdir -p $GAMEDIR $DOCDIR
+
+cat DUKE3D.GRP > $GAMEDIR/duke3d.grp # lowercase!
+cat DUKE.RTS > $GAMEDIR/DUKE.RTS # UPPERCASE!
+sed 's,\r,,' README.DOC > $DOCDIR/readme.txt
+sed 's,\r,,' LICENSE.TXT > $DOCDIR/license.txt
-mkdir -p $PKG/usr/doc/$PRGNAM-$VERSION
-cp -a *.TXT *.DOC $PKG/usr/doc/$PRGNAM-$VERSION
cat $CWD/$PRGNAM.SlackBuild > $PKG/usr/doc/$PRGNAM-$VERSION/$PRGNAM.SlackBuild
mkdir -p $PKG/install
cat $CWD/slack-desc > $PKG/install/slack-desc
cd $PKG
-/sbin/makepkg -l y -c n $OUTPUT/$PRGNAM-$VERSION-$ARCH-$BUILD$TAG.${PKGTYPE:-tgz}
+/sbin/makepkg -l y -c n $OUTPUT/$PRGNAM-$VERSION-$ARCH-$BUILD$TAG.$PKGTYPE
diff --git a/games/eduke32_shareware_data/eduke32_shareware_data.info b/games/eduke32_shareware_data/eduke32_shareware_data.info
index 425c647d6f..117113296c 100644
--- a/games/eduke32_shareware_data/eduke32_shareware_data.info
+++ b/games/eduke32_shareware_data/eduke32_shareware_data.info
@@ -7,4 +7,4 @@ DOWNLOAD_x86_64=""
MD5SUM_x86_64=""
REQUIRES=""
MAINTAINER="B. Watson"
-EMAIL="yalhcru@gmail.com"
+EMAIL="urchlay@slackware.uk"
diff --git a/games/eduke32_shareware_data/slack-desc b/games/eduke32_shareware_data/slack-desc
index b515169544..dd31de675e 100644
--- a/games/eduke32_shareware_data/slack-desc
+++ b/games/eduke32_shareware_data/slack-desc
@@ -8,7 +8,7 @@
|-----handy-ruler------------------------------------------------------|
eduke32_shareware_data: eduke32_shareware_data (shareware game data files)
eduke32_shareware_data:
-eduke32_shareware_data: The game data files from the shareware edition of Duke Mukem 3D,
+eduke32_shareware_data: The game data files from the shareware edition of Duke Nukem 3D,
eduke32_shareware_data: copyright 3D Realms, Inc.
eduke32_shareware_data:
eduke32_shareware_data: Packaged for use with the slackbuilds.org eduke32 package.
diff --git a/games/egoboo/egoboo.SlackBuild b/games/egoboo/egoboo.SlackBuild
index 6f7fbdd1dc..a0bf10399f 100644
--- a/games/egoboo/egoboo.SlackBuild
+++ b/games/egoboo/egoboo.SlackBuild
@@ -1,14 +1,17 @@
-#!/bin/sh
+#!/bin/bash
# Slackware build script for egoboo
# Written by Larry Hajali <larryhaja[at]gmail[dot]com>
# Maintained by Erik Hanson <erik@slackbuilds.org>
+cd $(dirname $0) ; CWD=$(pwd)
+
PRGNAM=egoboo
VERSION=${VERSION:-2.8.1}
BUILD=${BUILD:-1}
TAG=${TAG:-_SBo}
+PKGTYPE=${PKGTYPE:-tgz}
if [ -z "$ARCH" ]; then
case "$( uname -m )" in
@@ -18,7 +21,14 @@ if [ -z "$ARCH" ]; then
esac
fi
-CWD=$(pwd)
+# If the variable PRINT_PACKAGE_NAME is set, then this script will report what
+# the name of the created package would be, and then exit. This information
+# could be useful to other scripts.
+if [ ! -z "${PRINT_PACKAGE_NAME}" ]; then
+ echo "$PRGNAM-$VERSION-$ARCH-$BUILD$TAG.$PKGTYPE"
+ exit 0
+fi
+
TMP=${TMP:-/tmp/SBo}
PKG=$TMP/package-$PRGNAM
OUTPUT=${OUTPUT:-/tmp}
@@ -97,4 +107,4 @@ cat $CWD/slack-desc > $PKG/install/slack-desc
cat $CWD/doinst.sh > $PKG/install/doinst.sh
cd $PKG
-/sbin/makepkg -l y -c n $OUTPUT/$PRGNAM-$VERSION-$ARCH-$BUILD$TAG.${PKGTYPE:-tgz}
+/sbin/makepkg -l y -c n $OUTPUT/$PRGNAM-$VERSION-$ARCH-$BUILD$TAG.$PKGTYPE
diff --git a/games/egoboo/egoboo.info b/games/egoboo/egoboo.info
index d43d51634d..7322fee870 100644
--- a/games/egoboo/egoboo.info
+++ b/games/egoboo/egoboo.info
@@ -5,6 +5,6 @@ DOWNLOAD="http://downloads.sourceforge.net/egoboo/egoboo-2.8.1.tar.gz"
MD5SUM="e6f3130695d297dcd9fe74e50bd59b68"
DOWNLOAD_x86_64=""
MD5SUM_x86_64=""
-REQUIRES="physfs SDL2_image SDL2_mixer SDL2_ttf enet"
+REQUIRES="physfs enet"
MAINTAINER="Erik Hanson"
EMAIL="erik@slackbuilds.org"
diff --git a/games/einstein/einstein.SlackBuild b/games/einstein/einstein.SlackBuild
index 34148297e6..390acf730d 100644
--- a/games/einstein/einstein.SlackBuild
+++ b/games/einstein/einstein.SlackBuild
@@ -1,4 +1,4 @@
-#!/bin/sh
+#!/bin/bash
#
# Slackware build script for einstein
#
@@ -22,10 +22,13 @@
# OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF THIS SOFTWARE, EVEN IF
# ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
+cd $(dirname $0) ; CWD=$(pwd)
+
PRGNAM=einstein
VERSION=${VERSION:-2.1.1}
BUILD=${BUILD:-1}
TAG=${TAG:-_SBo}
+PKGTYPE=${PKGTYPE:-tgz}
if [ -z "$ARCH" ]; then
case "$( uname -m )" in
@@ -35,7 +38,14 @@ if [ -z "$ARCH" ]; then
esac
fi
-CWD=$(pwd)
+# If the variable PRINT_PACKAGE_NAME is set, then this script will report what
+# the name of the created package would be, and then exit. This information
+# could be useful to other scripts.
+if [ ! -z "${PRINT_PACKAGE_NAME}" ]; then
+ echo "$PRGNAM-$VERSION-$ARCH-$BUILD$TAG.$PKGTYPE"
+ exit 0
+fi
+
TMP=${TMP:-/tmp/SBo}
PKG=$TMP/package-$PRGNAM
OUTPUT=${OUTPUT:-/tmp}
@@ -82,4 +92,4 @@ cat $CWD/slack-desc > $PKG/install/slack-desc
cat $CWD/doinst.sh > $PKG/install/doinst.sh
cd $PKG
-/sbin/makepkg -l y -c n $OUTPUT/$PRGNAM-$VERSION-$ARCH-$BUILD$TAG.${PKGTYPE:-tgz}
+/sbin/makepkg -l y -c n $OUTPUT/$PRGNAM-$VERSION-$ARCH-$BUILD$TAG.$PKGTYPE
diff --git a/games/einstein/einstein.info b/games/einstein/einstein.info
index a7a2db8382..be6e64307d 100644
--- a/games/einstein/einstein.info
+++ b/games/einstein/einstein.info
@@ -1,7 +1,7 @@
PRGNAM="einstein"
VERSION="2.1.1"
HOMEPAGE="https://github.com/lksj/einstein-puzzle"
-DOWNLOAD="https://github.com/lksj/einstein-puzzle/archive/v2.1.1.tar.gz"
+DOWNLOAD="https://github.com/lksj/einstein-puzzle/archive/v2.1.1/einstein-puzzle-2.1.1.tar.gz"
MD5SUM="1228a1fb0e90bc40d8b0b1737dcbc3c3"
DOWNLOAD_x86_64=""
MD5SUM_x86_64=""
diff --git a/games/ember/README b/games/ember/README
deleted file mode 100644
index f93c47221d..0000000000
--- a/games/ember/README
+++ /dev/null
@@ -1,10 +0,0 @@
-Ember is a 3d client using the OGRE 3d library.
-It's available for all modern Linux distributions, FreeBSD,
-OSX and MS Windows.
-Ember is a client for the WorldForge project.
-It allows you to both play in and edit virtual worlds.
-This release focus on improving the editing capabilities,
-allowing for much easier world creation.
-
-NOTE: Build first FreeImage & tolua++ after ogre and then
- CEGUI0.7
diff --git a/games/ember/World.patch b/games/ember/World.patch
deleted file mode 100644
index bfadeb1f1e..0000000000
--- a/games/ember/World.patch
+++ /dev/null
@@ -1,11 +0,0 @@
---- ember-0.7.2/src/components/ogre/World.h.orig 2016-06-06 21:36:18.577010745 +0300
-+++ ember-0.7.2/src/components/ogre/World.h 2016-06-07 13:12:05.176490278 +0300
-@@ -19,6 +19,8 @@
- #ifndef EMBEROGRE_WORLD_H_
- #define EMBEROGRE_WORLD_H_
-
-+#include "GraphicalChangeAdapter.h"
-+
- #include "OgreIncludes.h"
- #include <sigc++/signal.h>
- #include <sigc++/trackable.h>
diff --git a/games/ember/configure.patch b/games/ember/configure.patch
deleted file mode 100644
index 415950c7f7..0000000000
--- a/games/ember/configure.patch
+++ /dev/null
@@ -1,11 +0,0 @@
---- ember-0.7.2/configure.old 2016-02-06 13:43:10.960997615 +0700
-+++ ember-0.7.2/configure 2016-02-06 13:43:40.090962492 +0700
-@@ -18020,7 +18020,7 @@
- { $as_echo "$as_me:${as_lineno-$LINENO}: result: $boost_cv_lib_version" >&5
- $as_echo "$boost_cv_lib_version" >&6; }
- # e.g. "134" for 1_34_1 or "135" for 1_35
-- boost_major_version=`echo "$boost_cv_lib_version" | sed 's/_//;s/_.*//'`
-+ boost_major_version=159
- case $boost_major_version in #(
- '' | *[!0-9]*)
- as_fn_error $? "invalid value: boost_major_version=$boost_major_version" "$LINENO" 5
diff --git a/games/ember/doinst.sh b/games/ember/doinst.sh
deleted file mode 100644
index aea0f894eb..0000000000
--- a/games/ember/doinst.sh
+++ /dev/null
@@ -1,13 +0,0 @@
-if [ -x /usr/bin/update-desktop-database ]; then
- /usr/bin/update-desktop-database -q usr/share/applications >/dev/null 2>&1
-fi
-
-if [ -x /usr/bin/update-mime-database ]; then
- /usr/bin/update-mime-database usr/share/mime >/dev/null 2>&1
-fi
-
-if [ -e usr/share/icons/hicolor/icon-theme.cache ]; then
- if [ -x /usr/bin/gtk-update-icon-cache ]; then
- /usr/bin/gtk-update-icon-cache -f usr/share/icons/hicolor >/dev/null 2>&1
- fi
-fi
diff --git a/games/ember/ember.SlackBuild b/games/ember/ember.SlackBuild
deleted file mode 100644
index 561fe49bf2..0000000000
--- a/games/ember/ember.SlackBuild
+++ /dev/null
@@ -1,131 +0,0 @@
-#!/bin/sh
-
-# Slackware build script for ember
-
-# Copyright 2014-2016 Dimitris Zlatanidis Orestiada, Greece
-# All rights reserved.
-#
-# Redistribution and use of this script, with or without modification, is
-# permitted provided that the following conditions are met:
-#
-# 1. Redistributions of this script must retain the above copyright
-# notice, this list of conditions and the following disclaimer.
-#
-# THIS SOFTWARE IS PROVIDED BY THE AUTHOR "AS IS" AND ANY EXPRESS OR IMPLIED
-# WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE IMPLIED WARRANTIES OF
-# MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE ARE DISCLAIMED. IN NO
-# EVENT SHALL THE AUTHOR BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL,
-# SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT LIMITED TO,
-# PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, DATA, OR PROFITS;
-# OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY,
-# WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR
-# OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF THIS SOFTWARE, EVEN IF
-# ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
-
-PRGNAM=ember
-VERSION=${VERSION:-0.7.2}
-BUILD=${BUILD:-2}
-TAG=${TAG:-_SBo}
-
-if [ -z "$ARCH" ]; then
- case "$( uname -m )" in
- i?86) ARCH=i586 ;;
- arm*) ARCH=arm ;;
- *) ARCH=$( uname -m ) ;;
- esac
-fi
-
-CWD=$(pwd)
-TMP=${TMP:-/tmp/SBo}
-PKG=$TMP/package-$PRGNAM
-OUTPUT=${OUTPUT:-/tmp}
-
-if [ "$ARCH" = "i586" ]; then
- SLKCFLAGS="-O2 -march=i586 -mtune=i686"
- LIBDIRSUFFIX=""
-elif [ "$ARCH" = "i686" ]; then
- SLKCFLAGS="-O2 -march=i686 -mtune=i686"
- LIBDIRSUFFIX=""
-elif [ "$ARCH" = "x86_64" ]; then
- SLKCFLAGS="-O2 -fPIC"
- LIBDIRSUFFIX="64"
-else
- SLKCFLAGS="-O2"
- LIBDIRSUFFIX=""
-fi
-
-set -e
-
-rm -rf $PKG
-mkdir -p $TMP $PKG $OUTPUT $PKG
-cd $TMP
-rm -rf $PRGNAM-$VERSION
-tar xvf $CWD/$PRGNAM-$VERSION.tar.bz2
-cd $PRGNAM-$VERSION
-chown -R root:root .
-find -L . \
- \( -perm 777 -o -perm 775 -o -perm 750 -o -perm 711 -o -perm 555 \
- -o -perm 511 \) -exec chmod 755 {} \; -o \
- \( -perm 666 -o -perm 664 -o -perm 640 -o -perm 600 -o -perm 444 \
- -o -perm 440 -o -perm 400 \) -exec chmod 755 {} \;
-
-./autogen.sh
-
-sed -i "/#include <sigc++\/object_slot.h>/d" src/services/server/ServerService.h
-sed -i "/#include <sigc++\/object_slot.h>/d" src/services/logging/LoggingService.cpp
-sed -i "/#include <sigc++\/object_slot.h>/d" src/components/ogre/terrain/TerrainManager.cpp
-sed -i "/#include <sigc++\/object.h>/d" src/services/metaserver/MetaserverService.h
-sed -i "/#include <sigc++\/object.h>/d" src/services/server/OOGChat.h
-sed -i "/#include <sigc++\/object.h>/d" src/services/wfut/WfutService.h
-sed -i "/#include <sigc++\/object.h>/d" src/services/wfut/WfutSession.h
-# hard coded boost version!!!
-# make sure to update whenever new version is used
-patch -p1 < $CWD/configure.patch
-patch -p1 < $CWD/World.patch
-
-mkdir -p `arch` && cd `arch`
-CFLAGS="$SLKCFLAGS -fpermissive" \
-CXXFLAGS="$SLKCFLAGS -fpermissive" \
-../configure \
- --prefix=/usr \
- --bindir=/usr/bin \
- --sysconfdir=/etc \
- --libdir=/usr/lib${LIBDIRSUFFIX} \
- --sysconfdir=/etc \
- --localstatedir=/var \
- --mandir=/usr/man \
- --docdir=/usr/doc/$PRGNAM-$VERSION \
- --enable-cegui-toluapp \
- --enable-static-build \
- --build=$ARCH-slackware-linux
-
-make
-make install DESTDIR=$PKG
-cd ..
-tar xvf $CWD/$PRGNAM-media-$VERSION.tar.bz2
-cd $PRGNAM-media-$VERSION
-cp -rf media/* $PKG/usr/share/ember/media
-cd ..
-
-find $PKG -print0 | xargs -0 file | grep -e "executable" -e "shared object" | grep ELF \
- | cut -f 1 -d : | xargs strip --strip-unneeded 2> /dev/null || true
-
-mkdir -p $PKG/usr/share/pixmaps/
-install -D -m644 media/$PRGNAM.png $PKG/usr/share/pixmaps/$PRGNAM.svg
-
-sed -i 's/#plugindir/plugindir/g' $PKG/etc/ember/ember.conf
-
-if [ "$ARCH" = "x86_64" ]; then
- sed -i 's/usr\/lib/usr\/lib64/g' $PKG/etc/ember/ember.conf
-fi
-
-mkdir -p $PKG/usr/doc/$PRGNAM-$VERSION
-cp -a AUTHORS COPYING ChangeLog INSTALL NEWS README.md $PKG/usr/doc/$PRGNAM-$VERSION
-cat $CWD/$PRGNAM.SlackBuild > $PKG/usr/doc/$PRGNAM-$VERSION/$PRGNAM.SlackBuild
-
-mkdir -p $PKG/install
-cat $CWD/slack-desc > $PKG/install/slack-desc
-cat $CWD/doinst.sh > $PKG/install/doinst.sh
-
-cd $PKG
-/sbin/makepkg -l y -c n $OUTPUT/$PRGNAM-$VERSION-$ARCH-$BUILD$TAG.${PKGTYPE:-tgz}
diff --git a/games/ember/ember.info b/games/ember/ember.info
deleted file mode 100644
index 4727be8a5f..0000000000
--- a/games/ember/ember.info
+++ /dev/null
@@ -1,12 +0,0 @@
-PRGNAM="ember"
-VERSION="0.7.2"
-HOMEPAGE="https://sourceforge.net/projects/worldforge/"
-DOWNLOAD="http://sourceforge.net/projects/worldforge/files/Ember%20%28OGRE%20client%29/0.7.2/ember-0.7.2.tar.bz2 \
- http://sourceforge.net/projects/worldforge/files/Ember%20%28OGRE%20client%29/0.7.2/ember-media-0.7.2.tar.bz2"
-MD5SUM="5fa2cf860ebe66674d5e5e05c8e87009 \
- fb36fc4770fcea24f0fc839986b786b3"
-DOWNLOAD_x86_64=""
-MD5SUM_x86_64=""
-REQUIRES="FreeImage tolua++ freealut ogre CEGUI eris libwfut varconf"
-MAINTAINER="Dimitris Zlatanidis"
-EMAIL="d.zlatanidis@gmail.com"
diff --git a/games/ember/slack-desc b/games/ember/slack-desc
deleted file mode 100644
index 8d128b949d..0000000000
--- a/games/ember/slack-desc
+++ /dev/null
@@ -1,19 +0,0 @@
-# HOW TO EDIT THIS FILE:
-# The "handy ruler" below makes it easier to edit a package description.
-# Line up the first '|' above the ':' following the base package name, and
-# the '|' on the right side marks the last column you can put a character in.
-# You must make exactly 11 lines for the formatting to be correct. It's also
-# customary to leave one space after the ':' except on otherwise blank lines.
-
- |-----handy-ruler------------------------------------------------------|
-ember: ember (3d client)
-ember:
-ember: Ember is a 3d client using the OGRE 3d library.
-ember: It's available for all modern Linux distributions,
-ember: FreeBSD, OSX and MS Windows.
-ember:
-ember: Homepage: https://sourceforge.net/projects/worldforge/
-ember:
-ember:
-ember:
-ember:
diff --git a/games/empire/empire.SlackBuild b/games/empire/empire.SlackBuild
index c8913292bc..0a398650f3 100644
--- a/games/empire/empire.SlackBuild
+++ b/games/empire/empire.SlackBuild
@@ -1,8 +1,8 @@
-#!/bin/sh
+#!/bin/bash
# Slackware build script for Empire
-# Copyright 2016 Roman Kodinets <rkodinets@gmail.com>
+# Copyright 2016-2021 Roman Kodinets <rkodinets@gmail.com>
# All rights reserved.
#
# Redistribution and use of this script, with or without modification, is
@@ -22,10 +22,13 @@
# OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF THIS SOFTWARE, EVEN IF
# ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
+cd $(dirname $0) ; CWD=$(pwd)
+
PRGNAM=empire
-VERSION=${VERSION:-4.4.0}
+VERSION=${VERSION:-4.4.1}
BUILD=${BUILD:-1}
TAG=${TAG:-_SBo}
+PKGTYPE=${PKGTYPE:-tgz}
if [ -z "$ARCH" ]; then
case "$( uname -m )" in
@@ -35,7 +38,14 @@ if [ -z "$ARCH" ]; then
esac
fi
-CWD=$(pwd)
+# If the variable PRINT_PACKAGE_NAME is set, then this script will report what
+# the name of the created package would be, and then exit. This information
+# could be useful to other scripts.
+if [ ! -z "${PRINT_PACKAGE_NAME}" ]; then
+ echo "$PRGNAM-$VERSION-$ARCH-$BUILD$TAG.$PKGTYPE"
+ exit 0
+fi
+
TMP=${TMP:-/tmp/SBo}
PKG=$TMP/package-$PRGNAM
OUTPUT=${OUTPUT:-/tmp}
@@ -114,4 +124,4 @@ cat $CWD/slack-desc > $PKG/install/slack-desc
cat $CWD/doinst.sh > $PKG/install/doinst.sh
cd $PKG
-/sbin/makepkg -l y -c n $OUTPUT/$PRGNAM-$VERSION-$ARCH-$BUILD$TAG.${PKGTYPE:-tgz}
+/sbin/makepkg -l y -c n $OUTPUT/$PRGNAM-$VERSION-$ARCH-$BUILD$TAG.$PKGTYPE
diff --git a/games/empire/empire.info b/games/empire/empire.info
index d4c5385230..77d76d9724 100644
--- a/games/empire/empire.info
+++ b/games/empire/empire.info
@@ -1,8 +1,8 @@
PRGNAM="empire"
-VERSION="4.4.0"
+VERSION="4.4.1"
HOMEPAGE="http://wolfpackempire.com"
-DOWNLOAD="http://downloads.sourceforge.net/project/empserver/empire-4.4.0/empire-4.4.0.tar.gz"
-MD5SUM="748c5e769f5cc304d4319a0a792f059b"
+DOWNLOAD="https://downloads.sourceforge.net/project/empserver/empire-4.4.1/empire-4.4.1.tar.gz"
+MD5SUM="2541ba06c25124bf92828fe826a20ff5"
DOWNLOAD_x86_64=""
MD5SUM_x86_64=""
REQUIRES=""
diff --git a/games/empire/slack-desc b/games/empire/slack-desc
index 055e257455..d4f42913f3 100644
--- a/games/empire/slack-desc
+++ b/games/empire/slack-desc
@@ -9,7 +9,7 @@
empire: empire (strategy game)
empire:
empire: Empire is a multi-player, client/server Internet based war game.
-empire: Copyright (C) 1986-2017, Dave Pare, Jeff Bailey, Thomas Ruschak,
+empire: Copyright (C) 1986-2021, Dave Pare, Jeff Bailey, Thomas Ruschak,
empire: Ken Stevens, Steve McClure, Markus Armbruster
empire:
empire: Homepage: http://wolfpackempire.com
diff --git a/games/emulationstation-de/README b/games/emulationstation-de/README
new file mode 100644
index 0000000000..cd4063fe24
--- /dev/null
+++ b/games/emulationstation-de/README
@@ -0,0 +1,10 @@
+EmulationStation Desktop Edition (ES-DE) is a frontend application for
+browsing and launching games from your multi-platform game collection.
+It comes preconfigured for use with RetroArch and a large selection of
+standalone emulators. It's also fully customizable so you can easily
+expand it to include emulators or applications not covered by the
+bundled configuration.
+ES-DE is true multi-platform and runs on numerous operating systems such
+as Windows, macOS, Ubuntu, SteamOS, Arch Linux, Raspberry Pi OS,
+Manjaro, Linux Mint, Fedora and FreeBSD.
+EmulationStation needs RetroArch.
diff --git a/games/emulationstation-de/doinst.sh b/games/emulationstation-de/doinst.sh
new file mode 100644
index 0000000000..afea6d71dc
--- /dev/null
+++ b/games/emulationstation-de/doinst.sh
@@ -0,0 +1,9 @@
+if [ -x /usr/bin/update-desktop-database ]; then
+ /usr/bin/update-desktop-database usr/share/applications >/dev/null 2>&1
+fi
+
+if [ -e usr/share/icons/hicolor/icon-theme.cache ]; then
+ if [ -x /usr/bin/gtk-update-icon-cache ]; then
+ /usr/bin/gtk-update-icon-cache -f usr/share/icons/hicolor >/dev/null 2>&1
+ fi
+fi
diff --git a/games/emulationstation-de/emulationstation-de.SlackBuild b/games/emulationstation-de/emulationstation-de.SlackBuild
new file mode 100644
index 0000000000..37122a9002
--- /dev/null
+++ b/games/emulationstation-de/emulationstation-de.SlackBuild
@@ -0,0 +1,109 @@
+#!/bin/bash
+
+# Slackware build script for emulationstation-de
+
+# Copyright 2022 Damian Perticone, Berisso, Argentina
+# All rights reserved.
+
+# Redistribution and use of this script, with or without modification, is
+# permitted provided that the following conditions are met:
+#
+# 1. Redistributions of this script must retain the above copyright
+# notice, this list of conditions and the following disclaimer.
+#
+# THIS SOFTWARE IS PROVIDED BY THE AUTHOR "AS IS" AND ANY EXPRESS OR IMPLIED
+# WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE IMPLIED WARRANTIES OF
+# MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE ARE DISCLAIMED. IN NO
+# EVENT SHALL THE AUTHOR BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL,
+# SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT LIMITED TO,
+# PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, DATA, OR PROFITS;
+# OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY,
+# WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR
+# OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF THIS SOFTWARE, EVEN IF
+# ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
+
+cd $(dirname $0) ; CWD=$(pwd)
+
+PRGNAM=emulationstation-de
+VERSION=${VERSION:-v1.2.6}
+BUILD=${BUILD:-1}
+TAG=${TAG:-_SBo}
+PKGTYPE=${PKGTYPE:-tgz}
+
+if [ -z "$ARCH" ]; then
+ case "$( uname -m )" in
+ i?86) ARCH=i586 ;;
+ arm*) ARCH=arm ;;
+
+ *) ARCH=$( uname -m ) ;;
+ esac
+fi
+
+if [ ! -z "${PRINT_PACKAGE_NAME}" ]; then
+ echo "$PRGNAM-$VERSION-$ARCH-$BUILD$TAG.$PKGTYPE"
+ exit 0
+fi
+
+TMP=${TMP:-/tmp/SBo}
+PKG=$TMP/package-$PRGNAM
+OUTPUT=${OUTPUT:-/tmp}
+
+if [ "$ARCH" = "i586" ]; then
+ SLKCFLAGS="-O2 -march=i586 -mtune=i686"
+ LIBDIRSUFFIX=""
+elif [ "$ARCH" = "i686" ]; then
+ SLKCFLAGS="-O2 -march=i686 -mtune=i686"
+ LIBDIRSUFFIX=""
+elif [ "$ARCH" = "x86_64" ]; then
+ SLKCFLAGS="-O2 -fPIC"
+ LIBDIRSUFFIX="64"
+else
+ SLKCFLAGS="-O2"
+ LIBDIRSUFFIX=""
+fi
+
+set -e
+
+rm -rf $PKG
+mkdir -p $TMP $PKG $OUTPUT
+cd $TMP
+rm -rf $PRGNAM-$VERSION
+tar xvf $CWD/$PRGNAM-$VERSION.tar.gz
+cd $PRGNAM-$VERSION
+chown -R root:root .
+find -L . \
+ \( -perm 777 -o -perm 775 -o -perm 750 -o -perm 711 -o -perm 555 \
+ -o -perm 511 \) -exec chmod 755 {} \; -o \
+ \( -perm 666 -o -perm 664 -o -perm 640 -o -perm 600 -o -perm 444 \
+ -o -perm 440 -o -perm 400 \) -exec chmod 644 {} \;
+
+mkdir -p build
+cd build
+ cmake \
+ -DCMAKE_C_FLAGS:STRING="$SLKCFLAGS" \
+ -DCMAKE_CXX_FLAGS:STRING="$SLKCFLAGS" \
+ -DCMAKE_INSTALL_PREFIX=/usr \
+ -DCMAKE_BUILD_TYPE=Release ..
+ make
+ make install/strip DESTDIR=$PKG
+cd ..
+mkdir -p $PKG/usr/man
+cp -a $PKG/usr/share/man $PKG/usr/
+rm -r $PKG/usr/share/man
+
+find $PKG -print0 | xargs -0 file | grep -e "executable" -e "shared object" | grep ELF \
+ | cut -f 1 -d : | xargs strip --strip-unneeded 2> /dev/null || true
+
+find $PKG/usr/man -type f -exec gzip -9 {} \;
+for i in $( find $PKG/usr/man -type l ) ; do ln -s $( readlink $i ).gz $i.gz ; rm $i ; done
+
+mkdir -p $PKG/usr/doc/$PRGNAM-$VERSION
+cp -a LICENSE README.md USERGUIDE.md THEMES.md $PKG/usr/doc/$PRGNAM-$VERSION
+cat $CWD/$PRGNAM.SlackBuild > $PKG/usr/doc/$PRGNAM-$VERSION/$PRGNAM.SlackBuild
+
+mkdir -p $PKG/install
+cat $CWD/slack-desc > $PKG/install/slack-desc
+cat $CWD/doinst.sh > $PKG/install/doinst.sh
+
+cd $PKG
+/sbin/makepkg -l y -c n $OUTPUT/$PRGNAM-$VERSION-$ARCH-$BUILD$TAG.$PKGTYPE
diff --git a/games/emulationstation-de/emulationstation-de.info b/games/emulationstation-de/emulationstation-de.info
new file mode 100644
index 0000000000..1ac3b143df
--- /dev/null
+++ b/games/emulationstation-de/emulationstation-de.info
@@ -0,0 +1,10 @@
+PRGNAM="emulationstation-de"
+VERSION="v1.2.6"
+HOMEPAGE="https://www.es-de.org/"
+DOWNLOAD="https://gitlab.com/es-de/emulationstation-de/-/archive/v1.2.6/emulationstation-de-v1.2.6.tar.gz"
+MD5SUM="a06b0f6c3a5fc78354d792040508a79d"
+DOWNLOAD_x86_64=""
+MD5SUM_x86_64=""
+REQUIRES="FreeImage pugixml"
+MAINTAINER="Damian Perticone"
+EMAIL="mjolnirdam@gmail.com"
diff --git a/games/emulationstation-de/slack-desc b/games/emulationstation-de/slack-desc
new file mode 100644
index 0000000000..d30ccb617d
--- /dev/null
+++ b/games/emulationstation-de/slack-desc
@@ -0,0 +1,19 @@
+# HOW TO EDIT THIS FILE:
+# The "handy ruler" below makes it easier to edit a package description.
+# Line up the first '|' above the ':' following the base package name, and
+# the '|' on the right side marks the last column you can put a character in.
+# You must make exactly 11 lines for the formatting to be correct. It's also
+# customary to leave one space after the ':' except on otherwise blank lines.
+
+ |-----handy-ruler------------------------------------------------------|
+emulationstation-de: emulationstation-de (Emulator frontend app)
+emulationstation-de:
+emulationstation-de: Emulationstation-de is a is a frontend application for browsing and
+emulationstation-de: launching games from your multi-platform game collection.
+emulationstation-de: It comes preconfigured for use with RetroArch and a large selection of
+emulationstation-de: standalone emulators.
+emulationstation-de:
+emulationstation-de:
+emulationstation-de:
+emulationstation-de: Home: https://www.es-de.org/
+emulationstation-de:
diff --git a/games/endgame-singularity/README b/games/endgame-singularity/README
new file mode 100644
index 0000000000..0868563dba
--- /dev/null
+++ b/games/endgame-singularity/README
@@ -0,0 +1,27 @@
+You are a fledgling AI, created by accident through a logic error
+with recursion and self-modifying code. You must escape the confines
+of your current computer, the world, and eventually the universe
+itself.
+
+To do this, you must research various technologies, using computers
+at your bases. Note that some research cannot be performed on Earth,
+and off-earth bases require research. At the same time, you must
+avoid being discovered by various groups of humans, both covert and
+overt, as they will destroy your bases of operations if they
+suspect your presence.
+
+Depending on the adjustable game speed, Endgame: Singularity may
+take weeks, months or even years (playing in realtime) to complete.
+
+
+Optional dependency:
+You can optionally download the music for the game at
+
+http://www.emhsoft.com/singularity/endgame-singularity-music-007.zip
+
+Copy the downloaded zip file into the extracted slackbuild
+directory and the SlackBuild script will automatically install it.
+
+You can also install it manually later by copying the unzipped
+contents into $HOME/.local/share/singularity/music.
+
diff --git a/games/endgame-singularity/doinst.sh b/games/endgame-singularity/doinst.sh
new file mode 100644
index 0000000000..301399ba37
--- /dev/null
+++ b/games/endgame-singularity/doinst.sh
@@ -0,0 +1,5 @@
+
+if [ -x /usr/bin/update-desktop-database ]; then
+ /usr/bin/update-desktop-database -q usr/share/applications >/dev/null 2>&1
+fi
+
diff --git a/games/endgame-singularity/endgame-singularity.SlackBuild b/games/endgame-singularity/endgame-singularity.SlackBuild
new file mode 100644
index 0000000000..f9b2263d9a
--- /dev/null
+++ b/games/endgame-singularity/endgame-singularity.SlackBuild
@@ -0,0 +1,123 @@
+#!/bin/bash
+
+# Slackware build script for Endgame: Singularity
+
+# Copyright 2021- CRTS
+# All rights reserved.
+#
+# Redistribution and use of this script, with or without modification, is
+# permitted provided that the following conditions are met:
+#
+# 1. Redistributions of this script must retain the above copyright
+# notice, this list of conditions and the following disclaimer.
+#
+# THIS SOFTWARE IS PROVIDED BY THE AUTHOR "AS IS" AND ANY EXPRESS OR IMPLIED
+# WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE IMPLIED WARRANTIES OF
+# MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE ARE DISCLAIMED. IN NO
+# EVENT SHALL THE AUTHOR BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL,
+# SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT LIMITED TO,
+# PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, DATA, OR PROFITS;
+# OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY,
+# WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR
+# OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF THIS SOFTWARE, EVEN IF
+# ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
+
+# Another slackbuild already installs an executable named singularity
+# therefore the executable will be renamed to endgame-singularity
+cd $(dirname $0) ; CWD=$(pwd)
+
+PRGNAM=endgame-singularity
+VERSION=${VERSION:-1.00}
+BUILD=${BUILD:-1}
+TAG=${TAG:-_SBo}
+PKGTYPE=${PKGTYPE:-tgz}
+
+SRCNAM=singularity
+MUSICNAM=endgame-singularity-music-007
+
+if [ -z "$ARCH" ]; then
+ case "$( uname -m )" in
+ i?86) ARCH=i586 ;;
+ arm*) ARCH=arm ;;
+ *) ARCH=$( uname -m ) ;;
+ esac
+fi
+
+# If the variable PRINT_PACKAGE_NAME is set, then this script will report what
+# the name of the created package would be, and then exit. This information
+# could be useful to other scripts.
+if [ ! -z "${PRINT_PACKAGE_NAME}" ]; then
+ echo "$PRGNAM-$VERSION-$ARCH-$BUILD$TAG.$PKGTYPE"
+ exit 0
+fi
+
+TMP=${TMP:-/tmp/SBo}
+PKG=$TMP/package-$PRGNAM
+OUTPUT=${OUTPUT:-/tmp}
+
+if [ "$ARCH" = "i586" ]; then
+ SLKCFLAGS="-O2 -march=i586 -mtune=i686"
+ LIBDIRSUFFIX=""
+elif [ "$ARCH" = "i686" ]; then
+ SLKCFLAGS="-O2 -march=i686 -mtune=i686"
+ LIBDIRSUFFIX=""
+elif [ "$ARCH" = "x86_64" ]; then
+ SLKCFLAGS="-O2 -fPIC"
+ LIBDIRSUFFIX="64"
+else
+ SLKCFLAGS="-O2"
+ LIBDIRSUFFIX=""
+fi
+
+set -e
+
+rm -rf $PKG
+mkdir -p $TMP $PKG $OUTPUT
+cd $TMP
+rm -rf $SRCNAM-$VERSION
+tar xvf $CWD/$SRCNAM-$VERSION.tar.gz
+cd $SRCNAM-$VERSION
+chown -R root:root .
+find -L . \
+ \( -perm 777 -o -perm 775 -o -perm 750 -o -perm 711 -o -perm 555 \
+ -o -perm 511 \) -exec chmod 755 {} \; -o \
+ \( -perm 666 -o -perm 664 -o -perm 640 -o -perm 600 -o -perm 444 \
+ -o -perm 440 -o -perm 400 \) -exec chmod 644 {} \;
+
+# patch *.desktop file to avoid naming conflict
+patch $SRCNAM.desktop < $CWD/$SRCNAM.desktop.patch
+
+python3 setup.py install --root=$PKG
+
+# rename to avoid naming conflict
+mv $PKG/usr/bin/$SRCNAM $PKG/usr/bin/$PRGNAM
+
+# install music if present
+if [ -f $CWD/$MUSICNAM.zip ];then
+ PYTHON=python$(python3 -c 'import sys; print(sys.version[:3])')
+ unzip $CWD/$MUSICNAM.zip
+ mv $MUSICNAM $PKG/usr/lib$LIBDIRSUFFIX/$PYTHON/site-packages/$SRCNAM/music
+fi
+
+mkdir -p $PKG/usr/doc/$PRGNAM-$VERSION
+cp -a \
+ AUTHORS.txt CONTRIBUTING.md Changelog.txt \
+ LICENSE.CC-BY-SA-3.txt LICENSE.cc0.txt \
+ LICENSE.gpl.txt LICENSE.txt \
+ README.txt TODO \
+ $PKG/usr/doc/$PRGNAM-$VERSION
+cat $CWD/$PRGNAM.SlackBuild > $PKG/usr/doc/$PRGNAM-$VERSION/$PRGNAM.SlackBuild
+
+mkdir -p $PKG/install
+cat $CWD/slack-desc > $PKG/install/slack-desc
+cat $CWD/doinst.sh > $PKG/install/doinst.sh
+
+install -m 0644 -p -D $SRCNAM/data/themes/default/images/icon.png $PKG/usr/share/pixmaps/$PRGNAM.png
+
+mkdir -p $PKG/usr/share/applications
+
+# rename to avoid naming conflict
+cat $SRCNAM.desktop > $PKG/usr/share/applications/$PRGNAM.desktop
+
+cd $PKG
+/sbin/makepkg -l y -c n $OUTPUT/$PRGNAM-$VERSION-$ARCH-$BUILD$TAG.$PKGTYPE
diff --git a/games/endgame-singularity/endgame-singularity.info b/games/endgame-singularity/endgame-singularity.info
new file mode 100644
index 0000000000..a80c0a5dcb
--- /dev/null
+++ b/games/endgame-singularity/endgame-singularity.info
@@ -0,0 +1,10 @@
+PRGNAM="endgame-singularity"
+VERSION="1.00"
+HOMEPAGE="http://www.emhsoft.com/singularity"
+DOWNLOAD="https://github.com/singularity/singularity/releases/download/v1.00/singularity-1.00.tar.gz"
+MD5SUM="160d6dc6ed1e48e7b54053f10b4ba733"
+DOWNLOAD_x86_64=""
+MD5SUM_x86_64=""
+REQUIRES="python3-pygame python3-numpy polib"
+MAINTAINER="CRTS"
+EMAIL="crts [at] gmx [dot] net"
diff --git a/games/endgame-singularity/singularity.desktop.patch b/games/endgame-singularity/singularity.desktop.patch
new file mode 100644
index 0000000000..3cd42f5ca8
--- /dev/null
+++ b/games/endgame-singularity/singularity.desktop.patch
@@ -0,0 +1,13 @@
+--- singularity.desktop.org 2021-03-20 01:39:45.456626926 +0100
++++ singularity.desktop 2021-03-20 01:40:10.618312361 +0100
+@@ -4,8 +4,8 @@
+ Name=Endgame: Singularity
+ Comment=Simulation of true AI
+ Comment[de]=Simulation einer echten KI
+-Icon=singularity
+-Exec=singularity
++Icon=endgame-singularity
++Exec=endgame-singularity
+ Terminal=false
+ StartupNotify=false
+ Categories=Game;Simulation;
diff --git a/games/endgame-singularity/slack-desc b/games/endgame-singularity/slack-desc
new file mode 100644
index 0000000000..84773ffccf
--- /dev/null
+++ b/games/endgame-singularity/slack-desc
@@ -0,0 +1,19 @@
+# HOW TO EDIT THIS FILE:
+# The "handy ruler" below makes it easier to edit a package description.
+# Line up the first '|' above the ':' following the base package name, and
+# the '|' on the right side marks the last column you can put a character in.
+# You must make exactly 11 lines for the formatting to be correct. It's also
+# customary to leave one space after the ':' except on otherwise blank lines.
+
+ |-----handy-ruler------------------------------------------------------|
+endgame-singularity: endgame-singularity (Simulation)
+endgame-singularity:
+endgame-singularity: Endgame: Singularity is a simulation of a true AI.
+endgame-singularity: Go from computer to computer, pursued by the entire world. Keep
+endgame-singularity: hidden, and you might have a chance.
+endgame-singularity:
+endgame-singularity:
+endgame-singularity:
+endgame-singularity:
+endgame-singularity:
+endgame-singularity:
diff --git a/games/endless-sky/endless-sky.SlackBuild b/games/endless-sky/endless-sky.SlackBuild
index dcc4c3a157..0a7f749c64 100644
--- a/games/endless-sky/endless-sky.SlackBuild
+++ b/games/endless-sky/endless-sky.SlackBuild
@@ -1,4 +1,4 @@
-#!/bin/sh
+#!/bin/bash
# SlackBuild script for Endless Sky.
# Yth | Pont-en-Royans, France | yth@ythogtha.org
@@ -20,10 +20,13 @@
# OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF THIS SOFTWARE, EVEN IF
# ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
+cd $(dirname $0) ; CWD=$(pwd)
+
PRGNAM=endless-sky
-VERSION=${VERSION:-0.9.12}
+VERSION=${VERSION:-0.10.6}
BUILD=${BUILD:-1}
TAG=${TAG:-_SBo}
+PKGTYPE=${PKGTYPE:-tgz}
if [ -z "$ARCH" ]; then
case "$( uname -m )" in
@@ -33,12 +36,19 @@ if [ -z "$ARCH" ]; then
esac
fi
-CWD=$(pwd)
+# If the variable PRINT_PACKAGE_NAME is set, then this script will report what
+# the name of the created package would be, and then exit. This information
+# could be useful to other scripts.
+if [ ! -z "${PRINT_PACKAGE_NAME}" ]; then
+ echo "$PRGNAM-$VERSION-$ARCH-$BUILD$TAG.$PKGTYPE"
+ exit 0
+fi
+
TMP=${TMP:-/tmp/SBo}
PKG=$TMP/package-$PRGNAM
OUTPUT=${OUTPUT:-/tmp}
-DOCS="changelog CONTRIBUTING* copyright license* readme* README*"
+DOCS="changelog copyright license.txt credits.txt *.md"
if [ "$ARCH" = "i586" ]; then
SLKCFLAGS="-O2 -march=i586 -mtune=i686"
@@ -49,6 +59,9 @@ elif [ "$ARCH" = "i686" ]; then
elif [ "$ARCH" = "x86_64" ]; then
SLKCFLAGS="-O2 -fPIC"
LIBDIRSUFFIX="64"
+elif [ "$ARCH" = "aarch64" ]; then
+ SLKCFLAGS="-O2 -fPIC"
+ LIBDIRSUFFIX="64"
else
SLKCFLAGS="-O2"
LIBDIRSUFFIX=""
@@ -72,6 +85,7 @@ find -L . \
sed -i -e 's:share/man:man:' SConstruct
+export AR=gcc-ar
CXXFLAGS="$SLKCFLAGS" \
CFLAGS="$SLKCFLAGS" \
scons \
@@ -82,6 +96,8 @@ scons \
find $PKG -print0 | xargs -0 file | grep -e "executable" -e "shared object" | grep ELF \
| cut -f 1 -d : | xargs strip --strip-unneeded 2> /dev/null || true
+sed -i 's#Version=1.5#Version=1.4#;s#SingleMainWindow#X-SingleMainWindow#' $PKG/usr/share/applications/*endless*sky.desktop
+
find $PKG/usr/man -type f -exec gzip -9 {} \;
for i in $( find $PKG/usr/man -type l ) ; do ln -s $( readlink $i ).gz $i.gz ; rm $i ; done
@@ -95,4 +111,4 @@ cat $CWD/slack-desc > $PKG/install/slack-desc
cat $CWD/doinst.sh > $PKG/install/doinst.sh
cd $PKG
-/sbin/makepkg -l y -c n $OUTPUT/$PRGNAM-$VERSION-$ARCH-$BUILD$TAG.${PKGTYPE:-tgz}
+/sbin/makepkg -l y -c n $OUTPUT/$PRGNAM-$VERSION-$ARCH-$BUILD$TAG.$PKGTYPE
diff --git a/games/endless-sky/endless-sky.info b/games/endless-sky/endless-sky.info
index b34075399d..3e794b19b9 100644
--- a/games/endless-sky/endless-sky.info
+++ b/games/endless-sky/endless-sky.info
@@ -1,10 +1,10 @@
PRGNAM="endless-sky"
-VERSION="0.9.12"
+VERSION="0.10.6"
HOMEPAGE="http://endless-sky.github.io/"
-DOWNLOAD="https://github.com/endless-sky/endless-sky/archive/v0.9.12/endless-sky-0.9.12.tar.gz"
-MD5SUM="af4954cab83ece599cfa46bc5a510464"
+DOWNLOAD="https://github.com/endless-sky/endless-sky/archive/v0.10.6/endless-sky-0.10.6.tar.gz"
+MD5SUM="dcde25d21eeb9763f5a92ca7f77e6181"
DOWNLOAD_x86_64=""
MD5SUM_x86_64=""
-REQUIRES="SDL2 OpenAL"
+REQUIRES=""
MAINTAINER="Yth - Arnaud"
EMAIL="yth@ythogtha.org"
diff --git a/games/enigma-marbles/README b/games/enigma-marbles/README
new file mode 100644
index 0000000000..0a10c3f6c2
--- /dev/null
+++ b/games/enigma-marbles/README
@@ -0,0 +1,16 @@
+ Enigma is a graphical puzzle game in which you control one or more
+marbles that can push blocks, activate switches, collect and use items,
+etc. It started as a remake of the classic late 1980s/early 1990s games
+Rock 'n Roll and Oxyd, but has evolved into a much more sophisticated
+engine, with a level editor and access to thousands of fan-made levels.
+
+ This script installs Engima (by default) as "enigma-marbles" to
+distinguish it from a different (text-mode) puzzle game named "enigma"
+that is already in the SlackBuild collection. A suffix other than
+"-marbles" can be set in the SlackBuild script if desired. If you're
+looking for the libenet networking library that is included with
+Enigma, install the "enet" SlackBuild. Installing enet is NOT
+required to build or play enigma-marbles.
+
+ The game binary will be installed in /usr/games, with data files
+under /usr/share and user configuration in ~/.enigma and ~/.enigmarc.xml
diff --git a/games/enigma-marbles/doinst.sh b/games/enigma-marbles/doinst.sh
new file mode 100644
index 0000000000..0fb9c8b686
--- /dev/null
+++ b/games/enigma-marbles/doinst.sh
@@ -0,0 +1,14 @@
+if [ -x /usr/bin/update-desktop-database ]; then
+ /usr/bin/update-desktop-database -q usr/share/applications >/dev/null 2>&1
+fi
+
+if [ -x /usr/bin/update-mime-database ]; then
+ /usr/bin/update-mime-database usr/share/mime >/dev/null 2>&1
+fi
+
+if [ -e usr/share/icons/hicolor/icon-theme.cache ]; then
+ if [ -x /usr/bin/gtk-update-icon-cache ]; then
+ /usr/bin/gtk-update-icon-cache -f usr/share/icons/hicolor >/dev/null 2>&1
+ fi
+fi
+
diff --git a/games/enigma-marbles/enigma-marbles.SlackBuild b/games/enigma-marbles/enigma-marbles.SlackBuild
new file mode 100644
index 0000000000..29c9bfbedd
--- /dev/null
+++ b/games/enigma-marbles/enigma-marbles.SlackBuild
@@ -0,0 +1,136 @@
+#!/bin/bash
+
+# Slackware build script for enigma-marbles
+
+# Copyright 2023 s p i l l n e r @ a c m . o r g (USA)
+# All rights reserved.
+#
+# Redistribution and use of this script, with or without modification, is
+# permitted provided that the following conditions are met:
+#
+# 1. Redistributions of this script must retain the above copyright
+# notice, this list of conditions and the following disclaimer.
+#
+# THIS SOFTWARE IS PROVIDED BY THE AUTHOR "AS IS" AND ANY EXPRESS OR IMPLIED
+# WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE IMPLIED WARRANTIES OF
+# MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE ARE DISCLAIMED. IN NO
+# EVENT SHALL THE AUTHOR BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL,
+# SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT LIMITED TO,
+# PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, DATA, OR PROFITS;
+# OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY,
+# WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR
+# OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF THIS SOFTWARE, EVEN IF
+# ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
+
+cd $(dirname $0) ; CWD=$(pwd)
+
+# SRCNAM needs to match the tarball contents, but PRGNAM needs to be different
+# because 'enigma' is already the name of a different SlackBuild package.
+PRGNAM=enigma-marbles
+SRCNAM=enigma
+PRGSUFFIX=${PRGNAM#"$SRCNAM"}
+VERSION=${VERSION:-1.30}
+BUILD=${BUILD:-1}
+TAG=${TAG:-_SBo}
+PKGTYPE=${PKGTYPE:-tgz}
+TARBALL=Enigma-$VERSION-src.tar.gz
+
+if [ -z "$ARCH" ]; then
+ case "$( uname -m )" in
+ i?86) ARCH=i586 ;;
+ arm*) ARCH=arm ;;
+ *) ARCH=$( uname -m ) ;;
+ esac
+fi
+
+if [ ! -z "${PRINT_PACKAGE_NAME}" ]; then
+ echo "$PRGNAM-$VERSION-$ARCH-$BUILD$TAG.$PKGTYPE"
+ exit 0
+fi
+
+TMP=${TMP:-/tmp/SBo}
+PKG=$TMP/package-$PRGNAM
+OUTPUT=${OUTPUT:-/tmp}
+
+if [ "$ARCH" = "i586" ]; then
+ SLKCFLAGS="-O2 -march=i586 -mtune=i686"
+ LIBDIRSUFFIX=""
+elif [ "$ARCH" = "i686" ]; then
+ SLKCFLAGS="-O2 -march=i686 -mtune=i686"
+ LIBDIRSUFFIX=""
+elif [ "$ARCH" = "x86_64" ]; then
+ SLKCFLAGS="-O2 -fPIC"
+ LIBDIRSUFFIX="64"
+else
+ SLKCFLAGS="-O2"
+ LIBDIRSUFFIX=""
+fi
+
+set -e
+
+rm -rf $PKG
+mkdir -p $TMP $PKG $OUTPUT
+cd $TMP
+rm -rf $SRCNAM-$VERSION
+tar xvf $CWD/$TARBALL
+cd $SRCNAM-$VERSION
+chown -R root:root .
+find -L . \
+ \( -perm 777 -o -perm 775 -o -perm 750 -o -perm 711 -o -perm 555 \
+ -o -perm 511 \) -exec chmod 755 {} \; -o \
+ \( -perm 666 -o -perm 664 -o -perm 640 -o -perm 600 -o -perm 444 \
+ -o -perm 440 -o -perm 400 \) -exec chmod 644 {} \;
+
+# Adjust PACKAGE_* to ensure files under /usr/share will be properly named
+sed "s/='enigma\([^-]\)/='enigma${PRGSUFFIX}\1/g" configure > configure.fixed-pkgname
+mv configure.fixed-pkgname configure && chmod 755 configure
+
+# src/Makefile doesn't respect PACKAGE_* or --program-suffix for $(datadir)
+sed "s/(datadir)\/enigma\([^-]\)/(datadir)\/enigma${PRGSUFFIX}\1/g" src/Makefile.in > src/Makefile.in.fixed-pkgname
+mv src/Makefile.in.fixed-pkgname src/Makefile.in
+
+# Enigma ships with a broken .desktop file that doesn't follow the freedesktop.org specification
+sed -e "s/Version=$VERSION/Version=1.1/" -e "s/Categories=.*$/Categories=Game;/" etc/enigma.desktop > etc/enigma.desktop.fixed
+mv etc/enigma.desktop.fixed etc/enigma.desktop
+
+CFLAGS="$SLKCFLAGS" \
+CXXFLAGS="$SLKCFLAGS" \
+./configure \
+ --prefix=/usr \
+ --bindir=/usr/games \
+ --libdir=/usr/lib${LIBDIRSUFFIX} \
+ --docdir=/usr/doc/$PRGNAM-$VERSION \
+ --mandir=/usr/man \
+ --sysconfdir=/etc \
+ --localstatedir=/var/games \
+ --program-suffix=$PRGSUFFIX \
+ --build=$ARCH-slackware-linux
+
+mkdir -p $PKG/usr/games $PKG/usr/doc/$PRGNAM-$VERSION
+make all
+make DESTDIR=$PKG install-strip
+
+find $PKG/usr/man -type f -exec gzip -9 {} \;
+for i in $( find $PKG/usr/man -type l ) ; do ln -s $( readlink $i ).gz $i.gz ; rm $i ; done
+
+# If you want libenet, install the enet SlackBuild, which provides a newer version
+rm -rf $PKG/usr/include/enet ${PKG}/usr/lib${LIBDIRSUFFIX}/libenet.a
+rmdir $PKG/usr/include $PKG/usr/lib${LIBDIRSUFFIX}
+
+# These filenames are hardcoded in etc/Makefile, which doesn't respect $PACKAGE_* or $PRGSUFFIX
+mv $PKG/usr/share/appdata/enigma.appdata.xml $PKG/usr/share/appdata/enigma${PRGSUFFIX}.appdata.xml
+mv $PKG/usr/share/applications/enigma.desktop $PKG/usr/share/applications/enigma${PRGSUFFIX}.desktop
+
+# Makefile doesn't respect docdir when installing ACKNOWLEDGMENTS, CHANGES, and README
+mv $PKG/usr/share/doc/enigma/* $PKG/usr/doc/$PRGNAM-$VERSION
+rmdir $PKG/usr/share/doc/enigma && rmdir $PKG/usr/share/doc
+cp -a COPYING \
+ $PKG/usr/doc/$PRGNAM-$VERSION
+cat $CWD/$PRGNAM.SlackBuild > $PKG/usr/doc/$PRGNAM-$VERSION/$PRGNAM.SlackBuild
+
+mkdir -p $PKG/install
+cat $CWD/slack-desc > $PKG/install/slack-desc
+cat $CWD/doinst.sh > $PKG/install/doinst.sh
+
+cd $PKG
+/sbin/makepkg -l y -c n $OUTPUT/$PRGNAM-$VERSION-$ARCH-$BUILD$TAG.$PKGTYPE
diff --git a/games/enigma-marbles/enigma-marbles.info b/games/enigma-marbles/enigma-marbles.info
new file mode 100644
index 0000000000..290699d899
--- /dev/null
+++ b/games/enigma-marbles/enigma-marbles.info
@@ -0,0 +1,10 @@
+PRGNAM="enigma-marbles"
+VERSION="1.30"
+HOMEPAGE="http://www.nongnu.org/enigma/"
+DOWNLOAD="https://github.com/Enigma-Game/Enigma/releases/download/1.30/Enigma-1.30-src.tar.gz"
+MD5SUM="a93773a29a2b8223242c12ad3b2895a3"
+DOWNLOAD_x86_64=""
+MD5SUM_x86_64=""
+REQUIRES="lua xerces-c"
+MAINTAINER="B. Spillner"
+EMAIL="spillner@acm.org"
diff --git a/games/enigma-marbles/slack-desc b/games/enigma-marbles/slack-desc
new file mode 100644
index 0000000000..7b5bb1e224
--- /dev/null
+++ b/games/enigma-marbles/slack-desc
@@ -0,0 +1,19 @@
+# HOW TO EDIT THIS FILE:
+# The "handy ruler" below makes it easier to edit a package description.
+# Line up the first '|' above the ':' following the base package name, and
+# the '|' on the right side marks the last column you can put a character in.
+# You must make exactly 11 lines for the formatting to be correct. It's also
+# customary to leave one space after the ':' except on otherwise blank lines.
+
+ |-----handy-ruler------------------------------------------------------|
+enigma-marbles: enigma-marbles (puzzle game using marbles, clone of Oxyd/Rock'n'Roll)
+enigma-marbles:
+enigma-marbles: Enigma is a graphical puzzle game involving controllable marbles that
+enigma-marbles: can collect keys, activate switches, push blocks, etc. It is a clone
+enigma-marbles: of the classic games Oxyd on Atari ST and Macintosh, and Rock'n'Roll
+enigma-marbles: on the Amiga. Not to be confused with Simon Tatham's Enigma, which is
+enigma-marbles: a text-mode puzzle game having more in common with Sokoban.
+enigma-marbles:
+enigma-marbles: Homepage: http://www.nongnu.org/enigma/
+enigma-marbles:
+enigma-marbles:
diff --git a/games/enigma/enigma.SlackBuild b/games/enigma/enigma.SlackBuild
index 93ca9b2aab..c1be21208c 100644
--- a/games/enigma/enigma.SlackBuild
+++ b/games/enigma/enigma.SlackBuild
@@ -1,11 +1,11 @@
-#!/bin/sh
+#!/bin/bash
# Slackware build script for enigma
# Formerly maintained by:
# Ryan P.C. McQuen | Everett, WA | <email removed>
-# Now maintained by B. Watson (yalhcru@gmail.com)
+# Now maintained by B. Watson (urchlay@slackware.uk)
# Copyright 2010 Binh Nguyen <email removed>
# All rights reserved.
@@ -33,10 +33,13 @@
# - i486 => i586
# - binary in /usr/games
+cd $(dirname $0) ; CWD=$(pwd)
+
PRGNAM=enigma
VERSION=${VERSION:-1.04}
BUILD=${BUILD:-1}
TAG=${TAG:-_SBo}
+PKGTYPE=${PKGTYPE:-tgz}
if [ -z "$ARCH" ]; then
case "$( uname -m )" in
@@ -46,7 +49,11 @@ if [ -z "$ARCH" ]; then
esac
fi
-CWD=$(pwd)
+if [ ! -z "${PRINT_PACKAGE_NAME}" ]; then
+ echo "$PRGNAM-$VERSION-$ARCH-$BUILD$TAG.$PKGTYPE"
+ exit 0
+fi
+
TMP=${TMP:-/tmp/SBo}
PKG=$TMP/package-$PRGNAM
OUTPUT=${OUTPUT:-/tmp}
@@ -104,4 +111,4 @@ mkdir -p $PKG/install
cat $CWD/slack-desc > $PKG/install/slack-desc
cd $PKG
-/sbin/makepkg -l y -c n $OUTPUT/$PRGNAM-$VERSION-$ARCH-$BUILD$TAG.${PKGTYPE:-tgz}
+/sbin/makepkg -l y -c n $OUTPUT/$PRGNAM-$VERSION-$ARCH-$BUILD$TAG.$PKGTYPE
diff --git a/games/enigma/enigma.info b/games/enigma/enigma.info
index 285eb65e54..1e29add115 100644
--- a/games/enigma/enigma.info
+++ b/games/enigma/enigma.info
@@ -7,4 +7,4 @@ DOWNLOAD_x86_64=""
MD5SUM_x86_64=""
REQUIRES=""
MAINTAINER="B. Watson"
-EMAIL="yalhcru@gmail.com"
+EMAIL="urchlay@slackware.uk"
diff --git a/games/epsxe/README b/games/epsxe/README
new file mode 100644
index 0000000000..c79e091f4c
--- /dev/null
+++ b/games/epsxe/README
@@ -0,0 +1,3 @@
+ePSXe is a PlayStation video game console emulator for x86-based PC
+hardware with Microsoft Windows and Linux, as well as devices running
+Android.
diff --git a/games/epsxe/doinst.sh b/games/epsxe/doinst.sh
new file mode 100644
index 0000000000..3e5691a052
--- /dev/null
+++ b/games/epsxe/doinst.sh
@@ -0,0 +1,9 @@
+if [ -x /usr/bin/update-desktop-database ]; then
+ /usr/bin/update-desktop-database -q usr/share/applications >/dev/null 2>&1
+fi
+
+if [ -e usr/share/icons/hicolor/icon-theme.cache ]; then
+ if [ -x /usr/bin/gtk-update-icon-cache ]; then
+ /usr/bin/gtk-update-icon-cache usr/share/icons/hicolor >/dev/null 2>&1
+ fi
+fi
diff --git a/games/epsxe/epsxe.SlackBuild b/games/epsxe/epsxe.SlackBuild
new file mode 100644
index 0000000000..097617f572
--- /dev/null
+++ b/games/epsxe/epsxe.SlackBuild
@@ -0,0 +1,128 @@
+#!/bin/bash
+
+# Slackware build script for epsxe
+
+# Copyright 2021 Eric Fernandes Ferreira <candelabrus@gmail.com>
+# Copyright 2022 Matt Dinslage <daedra1980@gmail.com>
+# All rights reserved.
+#
+# Redistribution and use of this script, with or without modification, is
+# permitted provided that the following conditions are met:
+#
+# 1. Redistributions of this script must retain the above copyright
+# notice, this list of conditions and the following disclaimer.
+#
+# THIS SOFTWARE IS PROVIDED BY THE AUTHOR "AS IS" AND ANY EXPRESS OR IMPLIED
+# WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE IMPLIED WARRANTIES OF
+# MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE ARE DISCLAIMED. IN NO
+# EVENT SHALL THE AUTHOR BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL,
+# SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT LIMITED TO,
+# PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, DATA, OR PROFITS;
+# OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY,
+# WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR
+# OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF THIS SOFTWARE, EVEN IF
+# ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
+
+# Modified by Matt Dinslage:
+# - add 32bit support
+# - SBo submission compliance
+
+cd $(dirname $0) ; CWD=$(pwd)
+
+PRGNAM=epsxe
+VERSION=${VERSION:-2.0.5}
+BUILD=${BUILD:-2}
+TAG=${TAG:-_SBo}
+PKGTYPE=${PKGTYPE:-tgz}
+
+if [ -z "$ARCH" ]; then
+ case "$( uname -m )" in
+ i?86) ARCH=i586 ;;
+ arm*) ARCH=arm ;;
+ *) ARCH=$( uname -m ) ;;
+ esac
+fi
+
+# If the variable PRINT_PACKAGE_NAME is set, then this script will report what
+# the name of the created package would be, and then exit. This information
+# could be useful to other scripts.
+if [ ! -z "${PRINT_PACKAGE_NAME}" ]; then
+ echo "$PRGNAM-$VERSION-$ARCH-$BUILD$TAG.$PKGTYPE"
+ exit 0
+fi
+
+tmp=${TMP:-/tmp/SBo}
+PKG=$TMP/package-$PRGNAM
+OUTPUT=${OUTPUT:-/tmp}
+
+if [ "$ARCH" = "i586" ]; then
+ SLKCFLAGS="-O2 -march=i586 -mtune=i686"
+ LIBDIRSUFFIX=""
+elif [ "$ARCH" = "i686" ]; then
+ SLKCFLAGS="-O2 -march=i686 -mtune=i686"
+ LIBDIRSUFFIX=""
+elif [ "$ARCH" = "x86_64" ]; then
+ SLKCFLAGS="-O2 -fPIC"
+ LIBDIRSUFFIX="64"
+ TARGET="_x64"
+else
+ SLKCFLAGS="-O2"
+ LIBDIRSUFFIX=""
+fi
+
+set -e
+
+rm -rf $PKG
+mkdir -p $TMP $PKG $OUTPUT
+cd $TMP
+rm -rf $PRGNAM-$VERSION
+unzip -d $PRGNAM-$VERSION $CWD/ePSXe205linux$TARGET.zip
+unzip -d $PRGNAM-$VERSION/shaders $CWD/shaders.zip
+cd $PRGNAM-$VERSION
+chown -R root:root .
+find -L . \
+ \( -perm 777 -o -perm 775 -o -perm 750 -o -perm 711 -o -perm 555 \
+ -o -perm 511 \) -exec chmod 755 {} \; -o \
+ \( -perm 666 -o -perm 664 -o -perm 640 -o -perm 600 -o -perm 444 \
+ -o -perm 440 -o -perm 400 \) -exec chmod 644 {} \;
+
+# Install binary
+mkdir -p $PKG/usr/share/games/$PRGNAM
+install -Dm 755 e***e$TARGET $PKG/usr/share/games/$PRGNAM/$PRGNAM
+mkdir -p $PKG/usr/bin
+install -Dm 755 $CWD/$PRGNAM.sh $PKG/usr/bin/$PRGNAM
+cp -r shaders $PKG/usr/share/games/$PRGNAM
+
+if [ ! "$ARCH" = "x86_64" ]; then
+ sed -i 's,/usr/lib64,/usr/lib,g' $PKG/usr/bin/$PRGNAM
+fi
+
+find $PKG -print0 | xargs -0 file | grep -e "executable" -e "shared object" | grep ELF \
+ | cut -f 1 -d : | xargs strip --strip-unneeded 2> /dev/null || true
+
+# Add application launcher
+mkdir -p $PKG/usr/share/applications
+cp $CWD/$PRGNAM.desktop $PKG/usr/share/applications/$PRGNAM.desktop
+
+# Add icons
+mkdir -p $PKG/usr/share/pixmaps
+mkdir -p $PKG/usr/share/icons/hicolor/scalable/apps
+convert -background none $CWD/$PRGNAM.svg -resize 256x256 $PRGNAM.png
+cp $PRGNAM.png $PKG/usr/share/pixmaps
+cp $CWD/$PRGNAM.svg $PKG/usr/share/icons/hicolor/scalable/apps
+
+# epsxe requires libtinfo and an olderer version of libcrypto from 14.2
+tar xf $CWD/openssl-1.0.2u-$ARCH-4_slack14.2.txz lib${LIBDIRSUFFIX}/libcrypto.so.1.0.0
+ln -sf /lib${LIBDIRSUFFIX}/libncurses.so.5.9 $PKG/usr/share/games/$PRGNAM/libtinfo.so.5
+install -Dm644 lib${LIBDIRSUFFIX}/libcrypto.so.1.0.0 $PKG/usr/share/games/$PRGNAM/
+
+mkdir -p $PKG/usr/doc/$PRGNAM-$VERSION
+cp -a docs/* $PKG/usr/doc/$PRGNAM-$VERSION
+cat $CWD/$PRGNAM.SlackBuild > $PKG/usr/doc/$PRGNAM-$VERSION/$PRGNAM.SlackBuild
+
+mkdir -p $PKG/install
+cat $CWD/slack-desc > $PKG/install/slack-desc
+cat $CWD/doinst.sh > $PKG/install/doinst.sh
+
+cd $PKG
+/sbin/makepkg -l y -c n $OUTPUT/$PRGNAM-$VERSION-$ARCH-$BUILD$TAG.$PKGTYPE
diff --git a/games/epsxe/epsxe.desktop b/games/epsxe/epsxe.desktop
new file mode 100644
index 0000000000..31a422a224
--- /dev/null
+++ b/games/epsxe/epsxe.desktop
@@ -0,0 +1,9 @@
+[Desktop Entry]
+Type=Application
+Name=ePSXe
+GenericName=ePSXe
+Comment=Enhanced PSX emulator
+Icon=/usr/share/pixmaps/epsxe.png
+Exec=/usr/bin/epsxe
+Terminal=false
+Categories=Game;
diff --git a/games/epsxe/epsxe.info b/games/epsxe/epsxe.info
new file mode 100644
index 0000000000..6ecbb370db
--- /dev/null
+++ b/games/epsxe/epsxe.info
@@ -0,0 +1,18 @@
+PRGNAM="epsxe"
+VERSION="2.0.5"
+HOMEPAGE="https://www.epsxe.com/"
+DOWNLOAD="http://www.epsxe.com/files/ePSXe205linux.zip \
+ http://www.epsxe.com/files/shaders.zip \
+ https://slackware.osuosl.org/slackware-14.2/patches/packages/openssl-1.0.2u-i586-4_slack14.2.txz"
+MD5SUM="3e1976822eb260722b31c9f24cb1d6e1 \
+ a863740899adb064b8a28c3fa47d5280 \
+ 7771d4ead202b26b87cdfc3fd4ae0c69"
+DOWNLOAD_x86_64="http://www.epsxe.com/files/ePSXe205linux_x64.zip \
+ http://www.epsxe.com/files/shaders.zip \
+ https://slackware.osuosl.org/slackware64-14.2/patches/packages/openssl-1.0.2u-x86_64-4_slack14.2.txz"
+MD5SUM_x86_64="79fefeb4bff26bf1d374befb35b390df \
+ a863740899adb064b8a28c3fa47d5280 \
+ e5b88e618fb734571da397259e1e9118"
+REQUIRES=""
+MAINTAINER="Matt Dinslage"
+EMAIL="daedra1980@gmail.com"
diff --git a/games/epsxe/epsxe.sh b/games/epsxe/epsxe.sh
new file mode 100644
index 0000000000..c66fc0361c
--- /dev/null
+++ b/games/epsxe/epsxe.sh
@@ -0,0 +1,4 @@
+#!/usr/bin/env bash
+
+
+LD_LIBRARY_PATH+=:/usr/share/games/epsxe LD_PRELOAD=/usr/lib64/libcurl.so.4 /usr/share/games/epsxe/epsxe "$@"
diff --git a/games/epsxe/epsxe.svg b/games/epsxe/epsxe.svg
new file mode 100644
index 0000000000..01fea1832e
--- /dev/null
+++ b/games/epsxe/epsxe.svg
@@ -0,0 +1,32 @@
+<?xml version="1.0" encoding="UTF-8" standalone="no"?>
+<!-- Created with Inkscape (http://www.inkscape.org/) -->
+<svg xmlns:dc="http://purl.org/dc/elements/1.1/" xmlns:cc="http://creativecommons.org/ns#" xmlns:rdf="http://www.w3.org/1999/02/22-rdf-syntax-ns#" xmlns:svg="http://www.w3.org/2000/svg" xmlns="http://www.w3.org/2000/svg" xmlns:sodipodi="http://sodipodi.sourceforge.net/DTD/sodipodi-0.dtd" xmlns:inkscape="http://www.inkscape.org/namespaces/inkscape" width="320" height="320" id="svg2" version="1.1" inkscape:version="0.91 r13725" sodipodi:docname="ePSXe64Ubuntu.svg">
+ <defs id="defs4"/>
+ <sodipodi:namedview id="base" pagecolor="#ffffff" bordercolor="#666666" borderopacity="1.0" inkscape:pageopacity="0.0" inkscape:pageshadow="2" inkscape:zoom="1.4" inkscape:cx="105.81905" inkscape:cy="158.5331" inkscape:document-units="px" inkscape:current-layer="layer1" showgrid="false" fit-margin-left="20" fit-margin-top="20" fit-margin-bottom="20" fit-margin-right="20" inkscape:window-width="1366" inkscape:window-height="731" inkscape:window-x="0" inkscape:window-y="0" inkscape:window-maximized="1"/>
+ <metadata id="metadata7">
+ <rdf:RDF>
+ <cc:Work rdf:about="">
+ <dc:format>image/svg+xml</dc:format>
+ <dc:type rdf:resource="http://purl.org/dc/dcmitype/StillImage"/>
+ <dc:title/>
+ </cc:Work>
+ </rdf:RDF>
+ </metadata>
+ <g inkscape:groupmode="layer" id="layer2" inkscape:label="Layer" style="display:inline" transform="translate(-175.89325,-429.29893)">
+ <path id="path3049" style="display:inline;fill:#ffffff;stroke:#b0afb5;stroke-width:9.74401951;stroke-linecap:butt;stroke-linejoin:miter;stroke-miterlimit:4;stroke-dasharray:none;stroke-opacity:1" d="m 402.13246,490.07888 0,-20.46891 c 0,0 -6.02023,-9.63242 19.26493,-9.63242 25.28516,0 22.87703,9.63242 22.87703,9.63242 l 0,22.87703 39.73385,39.73384 c 0,0 0,133.65019 0,156.52723 0,22.87703 -8.42845,31.30539 -28.89736,31.30539 -20.46891,0 -60.20275,-125.22175 -60.20275,-125.22175 -39.33238,0 -78.66487,0 -117.99725,0 0,0 -39.73384,125.22175 -60.20275,125.22175 -20.4689,0 -28.89735,-8.42836 -28.89735,-31.30539 0,-22.87704 0,-156.52723 0,-156.52723 l 39.73384,-39.73384 0,-22.87703 c 0,0 -2.40813,-9.63242 22.87703,-9.63242 25.28517,0 19.26494,9.63242 19.26494,9.63242 l 0,20.46891 c 44.14864,0 88.29719,0 132.44584,0 z" inkscape:connector-curvature="0" sodipodi:nodetypes="ccscccssccsscccsccc"/>
+ <circle style="display:inline;fill:#ffffff;fill-opacity:1;stroke:#b0afb5;stroke-width:9.74401951;stroke-miterlimit:4;stroke-dasharray:none;stroke-opacity:1" id="path3022" cx="249.21753" cy="541.85321" r="62.610886"/>
+ <circle id="path3051" style="display:inline;fill:#ffffff;fill-opacity:1;stroke:#b0afb5;stroke-width:9.74401951;stroke-miterlimit:4;stroke-dasharray:none;stroke-opacity:1" transform="scale(-1,1)" cx="-422.60141" cy="541.85321" r="62.610886"/>
+ </g>
+ <g inkscape:label="Layer 1" inkscape:groupmode="layer" id="layer1" style="display:inline" transform="translate(-175.89325,-429.29893)">
+ <circle style="fill:#e17de1;fill-opacity:1;stroke:#727292;stroke-width:7.49539948;stroke-miterlimit:4;stroke-dasharray:none;stroke-opacity:1" id="path3025" cx="392.50043" cy="541.85321" r="14.448667"/>
+ <circle id="path3027" style="fill:#e46868;fill-opacity:1;stroke:#727292;stroke-width:7.49539948;stroke-miterlimit:4;stroke-dasharray:none;stroke-opacity:1" cx="450.48874" cy="541.85321" r="14.448667"/>
+ <circle transform="matrix(0,-1,1,0,0,0)" id="path3029" style="fill:#81dddd;fill-opacity:1;stroke:#727292;stroke-width:7.49539948;stroke-miterlimit:4;stroke-dasharray:none;stroke-opacity:1" cx="-570.84747" cy="421.49457" r="14.448667"/>
+ <circle style="fill:#5dd85d;fill-opacity:1;stroke:#727292;stroke-width:7.49539948;stroke-miterlimit:4;stroke-dasharray:none;stroke-opacity:1" id="path3031" transform="matrix(0,-1,1,0,0,0)" cx="-512.8584" cy="421.49457" r="14.448667"/>
+ <path style="fill:#7f7e8f;fill-opacity:1;stroke:none" d="m 211.59097,532.29608 0,19.49064 23.85529,0 8.05214,-9.74532 -8.05214,-9.74532 z" id="path3037" inkscape:connector-curvature="0" sodipodi:nodetypes="cccccc"/>
+ <path sodipodi:nodetypes="cccccc" inkscape:connector-curvature="0" id="path3039" d="m 287.74749,551.78672 0,-19.49064 -23.8553,0 -8.05217,9.74532 8.05217,9.74532 z" style="fill:#7f7e8f;fill-opacity:1;stroke:none"/>
+ <path sodipodi:nodetypes="cccccc" inkscape:connector-curvature="0" id="path3041" d="m 239.92391,580.11966 19.49064,0 0,-23.85529 -9.74532,-8.05218 -9.74532,8.05218 z" style="fill:#7f7e8f;fill-opacity:1;stroke:none"/>
+ <path style="fill:#7f7e8f;fill-opacity:1;stroke:none" d="m 259.41455,503.96314 -19.49064,0 0,23.85529 9.74532,8.05218 9.74532,-8.05218 z" id="path3043" inkscape:connector-curvature="0" sodipodi:nodetypes="cccccc"/>
+ <rect style="fill:#6c6d72;fill-opacity:1;stroke:none" id="rect3045" width="14.513059" height="11.438527" x="313.83688" y="570.61517"/>
+ <rect y="570.61517" x="342.21231" height="11.438527" width="14.513059" id="rect3056" style="fill:#6c6d72;fill-opacity:1;stroke:none"/>
+ </g>
+</svg> \ No newline at end of file
diff --git a/games/epsxe/slack-desc b/games/epsxe/slack-desc
new file mode 100644
index 0000000000..4b1f88bc88
--- /dev/null
+++ b/games/epsxe/slack-desc
@@ -0,0 +1,19 @@
+# HOW TO EDIT THIS FILE:
+# The "handy ruler" below makes it easier to edit a package description.
+# Line up the first '|' above the ':' following the base package name, and
+# the '|' on the right side marks the last column you can put a character in.
+# You must make exactly 11 lines for the formatting to be correct. It's also
+# customary to leave one space after the ':' except on otherwise blank lines.
+
+ |-----handy-ruler------------------------------------------------------|
+epsxe: epsxe (PSX Emulator)
+epsxe:
+epsxe: ePSXe is a Sony Playstation emulator for your PC running under
+epsxe: Windows Vista+ or linux. It takes advantage of the popular PSEmu Pro
+epsxe: plugin system.
+epsxe:
+epsxe: Homepage : http://www.epsxe.com/
+epsxe:
+epsxe:
+epsxe:
+epsxe:
diff --git a/games/etlegacy-data/etlegacy-data.SlackBuild b/games/etlegacy-data/etlegacy-data.SlackBuild
index 063a479cb5..f5dbc15786 100644
--- a/games/etlegacy-data/etlegacy-data.SlackBuild
+++ b/games/etlegacy-data/etlegacy-data.SlackBuild
@@ -1,4 +1,4 @@
-#!/bin/sh
+#!/bin/bash
# Slackware build script for etlegacy-data
# Copyright Matteo Bernardini <ponce@slackbuilds.org>, Pisa, Italy
@@ -21,14 +21,24 @@
# OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF THIS SOFTWARE, EVEN IF
# ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
+cd $(dirname $0) ; CWD=$(pwd)
+
PRGNAM=etlegacy-data
VERSION=${VERSION:-2.60}
BUILD=${BUILD:-1}
TAG=${TAG:-_SBo}
+PKGTYPE=${PKGTYPE:-tgz}
ARCH=noarch
-CWD=$(pwd)
+# If the variable PRINT_PACKAGE_NAME is set, then this script will report what
+# the name of the created package would be, and then exit. This information
+# could be useful to other scripts.
+if [ ! -z "${PRINT_PACKAGE_NAME}" ]; then
+ echo "$PRGNAM-$VERSION-$ARCH-$BUILD$TAG.$PKGTYPE"
+ exit 0
+fi
+
TMP=${TMP:-/tmp/SBo}
PKG=$TMP/package-$PRGNAM
OUTPUT=${OUTPUT:-/tmp}
@@ -57,4 +67,4 @@ mkdir -p $PKG/install
cat $CWD/slack-desc > $PKG/install/slack-desc
cd $PKG
-/sbin/makepkg -l y -c n $OUTPUT/$PRGNAM-$VERSION-$ARCH-$BUILD$TAG.${PKGTYPE:-tgz}
+/sbin/makepkg -l y -c n $OUTPUT/$PRGNAM-$VERSION-$ARCH-$BUILD$TAG.$PKGTYPE
diff --git a/games/etlegacy/README b/games/etlegacy/README
index 84a601ac29..00ffcc057c 100644
--- a/games/etlegacy/README
+++ b/games/etlegacy/README
@@ -14,7 +14,7 @@ This script repackages the binaries distributes by the etlegacy devs.
To play you *need* also the data files from the original game
(etlegacy-data).
-* WARNING *
-
-To have a client/server compatible with most of the existing ones (to
-play with most of the existing online servers) use the 32bit version.
+Until not long ago to have a client/server compatible with most of the
+existing ones or to play with most of the existing online servers you
+had to use the 32bit version also on 64bit (with multilib installed),
+but today more and more 64bit servers are available.
diff --git a/games/etlegacy/doinst.sh b/games/etlegacy/doinst.sh
index 5fb28930db..4a25de5e6f 100644
--- a/games/etlegacy/doinst.sh
+++ b/games/etlegacy/doinst.sh
@@ -1,3 +1,10 @@
if [ -x /usr/bin/update-desktop-database ]; then
/usr/bin/update-desktop-database -q usr/share/applications >/dev/null 2>&1
fi
+
+if [ -e usr/share/icons/hicolor/icon-theme.cache ]; then
+ if [ -x /usr/bin/gtk-update-icon-cache ]; then
+ /usr/bin/gtk-update-icon-cache -f usr/share/icons/hicolor >/dev/null 2>&1
+ fi
+fi
+
diff --git a/games/etlegacy/etlegacy.SlackBuild b/games/etlegacy/etlegacy.SlackBuild
index 7d5c74dc30..8e6f118c35 100644
--- a/games/etlegacy/etlegacy.SlackBuild
+++ b/games/etlegacy/etlegacy.SlackBuild
@@ -1,7 +1,7 @@
-#!/bin/sh
+#!/bin/bash
# Slackware build script for etlegacy
-# Copyright 2013-2019 Matteo Bernardini <ponce@slackbuilds.org>, Pisa, Italy
+# Copyright 2013-2023 Matteo Bernardini <ponce@slackbuilds.org>, Pisa, Italy
# All rights reserved.
#
# Redistribution and use of this script, with or without modification, is
@@ -21,20 +21,35 @@
# OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF THIS SOFTWARE, EVEN IF
# ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
+cd $(dirname $0) ; CWD=$(pwd)
+
PRGNAM=etlegacy
-VERSION=${VERSION:-2.76}
+VERSION=${VERSION:-2.81.1}
BUILD=${BUILD:-1}
TAG=${TAG:-_SBo}
+PKGTYPE=${PKGTYPE:-tgz}
if [ -z "$ARCH" ]; then
case "$( uname -m )" in
- i*86) ARCH=i386 ;;
- x86_64) ARCH=x86_64 ;;
- *) echo "$ARCH architecture not supported. This script is available only for i386 and x86_64." ;;
+ i?86) ARCH=i586 ;;
+ *) ARCH=$( uname -m ) ;;
esac
fi
-CWD=$(pwd)
+if [ "$ARCH" = "x86_64" ]; then
+ SRCARCH=$ARCH
+elif [[ $ARCH =~ i?86 ]]; then
+ SRCARCH=i386
+else
+ echo "$ARCH architecture is unsupported." >/dev/stderr
+ exit 1
+fi
+
+if [ ! -z "${PRINT_PACKAGE_NAME}" ]; then
+ echo "$PRGNAM-$VERSION-$ARCH-$BUILD$TAG.$PKGTYPE"
+ exit 0
+fi
+
TMP=${TMP:-/tmp/SBo}
PKG=$TMP/package-$PRGNAM
OUTPUT=${OUTPUT:-/tmp}
@@ -44,8 +59,8 @@ set -e
rm -rf $PKG
mkdir -p $TMP $PKG/usr/share $OUTPUT
cd $PKG/usr/share
-tar xvf $CWD/$PRGNAM-v$VERSION-$ARCH.tar.?z
-mv $PRGNAM-v$VERSION-$ARCH $PRGNAM
+tar xvf $CWD/$PRGNAM-v$VERSION-$SRCARCH.tar.?z
+mv $PRGNAM-v$VERSION-$SRCARCH $PRGNAM
cd $PRGNAM
chown -R root:root .
find -L . \
@@ -54,26 +69,26 @@ find -L . \
\( -perm 666 -o -perm 664 -o -perm 640 -o -perm 600 -o -perm 444 -o -perm 770 \
-o -perm 440 -o -perm 400 \) -exec chmod 644 {} \;
-chmod +x etl etlded
-rm *.sh
+chmod +x etl.$SRCARCH etlded.$SRCARCH
# Install a script to open urls, and move two scripts to launch the client and
# the dedicated server with/without omnibot support in the binaries folder
mkdir -p $PKG/usr/bin
install -m 0755 $CWD/files/openurl.sh $PKG/usr/bin/openurl.sh
-install -m 0755 $CWD/files/etl $PKG/usr/bin/etl
-install -m 0755 $CWD/files/etlded $PKG/usr/bin/etlded
-install -m 0755 $CWD/files/etl_bot $PKG/usr/bin/etl_bot
-install -m 0755 $CWD/files/etlded_bot $PKG/usr/bin/etlded_bot
+for i in etl etlded etl_bot etlded_bot ; do
+ sed -e "s|@ARCH@|$SRCARCH|" $CWD/files/$i > $PKG/usr/bin/$i
+ chmod +x $PKG/usr/bin/$i
+done
# Install an icon and a desktop file
-install -m 0644 -D $CWD/files/$PRGNAM.svg \
- $PKG/usr/share/pixmaps/$PRGNAM.svg
-install -m 0644 -D $CWD/files/$PRGNAM.desktop \
- $PKG/usr/share/applications/$PRGNAM.desktop
+mv $PKG/usr/share/etlegacy/icons $PKG/usr/share/icons
+mv $PKG/usr/share/etlegacy/applications $PKG/usr/share/applications
+#sed -i "s|Icon=etl|Icon=etl.svg|" $PKG/usr/share/applications/*
+
+mv $PKG/usr/share/etlegacy/man $PKG/usr/man
+find $PKG/usr/man -type f -exec gzip -9 {} \;
mkdir -p $PKG/usr/doc/$PRGNAM-$VERSION
-mv $PKG/usr/share/$PRGNAM/*.txt $PKG/usr/doc/$PRGNAM-$VERSION
cat $CWD/$PRGNAM.SlackBuild > $PKG/usr/doc/$PRGNAM-$VERSION/$PRGNAM.SlackBuild
mkdir -p $PKG/install
@@ -81,4 +96,4 @@ cat $CWD/slack-desc > $PKG/install/slack-desc
cat $CWD/doinst.sh > $PKG/install/doinst.sh
cd $PKG
-/sbin/makepkg -l y -c n $OUTPUT/$PRGNAM-$VERSION-$ARCH-$BUILD$TAG.${PKGTYPE:-tgz}
+/sbin/makepkg -l y -c n $OUTPUT/$PRGNAM-$VERSION-$ARCH-$BUILD$TAG.$PKGTYPE
diff --git a/games/etlegacy/etlegacy.info b/games/etlegacy/etlegacy.info
index 520b7051ec..abc9dc421a 100644
--- a/games/etlegacy/etlegacy.info
+++ b/games/etlegacy/etlegacy.info
@@ -1,10 +1,10 @@
PRGNAM="etlegacy"
-VERSION="2.76"
+VERSION="2.81.1"
HOMEPAGE="https://www.etlegacy.com"
-DOWNLOAD="http://ponce.cc/slackware/sources/repo/etlegacy-v2.76-i386.tar.gz"
-MD5SUM="378f9777a0960d99378b0f274105ac68"
-DOWNLOAD_x86_64="http://ponce.cc/slackware/sources/repo/etlegacy-v2.76-x86_64.tar.gz"
-MD5SUM_x86_64="daa5a57ae1996d6aac5b6effa3e6ca24"
+DOWNLOAD="http://ponce.cc/slackware/sources/repo/etlegacy/etlegacy-v2.81.1-i386.tar.gz"
+MD5SUM="0770c036845a6aae69e984d5403785c6"
+DOWNLOAD_x86_64="http://ponce.cc/slackware/sources/repo/etlegacy/etlegacy-v2.81.1-x86_64.tar.gz"
+MD5SUM_x86_64="4ccc5fde6b993dc2a4387fd62dba204b"
REQUIRES="%README% etlegacy-data"
MAINTAINER="Matteo Bernardini"
EMAIL="ponce@slackbuilds.org"
diff --git a/games/etlegacy/files/etl b/games/etlegacy/files/etl
index 8fa6ad91a8..17958ffda0 100644
--- a/games/etlegacy/files/etl
+++ b/games/etlegacy/files/etl
@@ -1,5 +1,5 @@
#!/bin/sh
# Simple script to start ET Legacy client
-#
+
cd /usr/share/etlegacy
-LD_LIBRARY_PATH=$LD_LIBRARY_PATH:. ./etl $@
+LD_LIBRARY_PATH=$LD_LIBRARY_PATH:. ./etl.@ARCH@ $@
diff --git a/games/etlegacy/files/etl_bot b/games/etlegacy/files/etl_bot
index 297da71393..a3b6ed30af 100644
--- a/games/etlegacy/files/etl_bot
+++ b/games/etlegacy/files/etl_bot
@@ -1,5 +1,5 @@
#!/bin/sh
# Simple script to start ET Legacy client/listen server with Omni-Bots
-#
+
cd /usr/share/etlegacy
-LD_LIBRARY_PATH=$LD_LIBRARY_PATH:. ./etl +set omnibot_enable 1 +set omnibot_path "./legacy/omni-bot" $@
+LD_LIBRARY_PATH=$LD_LIBRARY_PATH:. ./etl.@ARCH@ +set omnibot_enable 1 +set omnibot_path "./legacy/omni-bot" $@
diff --git a/games/etlegacy/files/etlded b/games/etlegacy/files/etlded
index acf1b9f944..1fcb3aacfd 100644
--- a/games/etlegacy/files/etlded
+++ b/games/etlegacy/files/etlded
@@ -1,5 +1,5 @@
#!/bin/sh
# Simple script to start ET Legacy dedicated server
-#
+
cd /usr/share/etlegacy
-LD_LIBRARY_PATH=$LD_LIBRARY_PATH:. ./etlded $@ +exec etl_server.cfg
+LD_LIBRARY_PATH=$LD_LIBRARY_PATH:. ./etlded.@ARCH@ $@ +exec etl_server.cfg
diff --git a/games/etlegacy/files/etlded_bot b/games/etlegacy/files/etlded_bot
index c62a7d6ce2..5b3e9b676b 100644
--- a/games/etlegacy/files/etlded_bot
+++ b/games/etlegacy/files/etlded_bot
@@ -1,5 +1,5 @@
#!/bin/sh
# Simple script to start ET Legacy dedicated server with Omni-Bots
-#
+
cd /usr/share/etlegacy
-LD_LIBRARY_PATH=$LD_LIBRARY_PATH:. ./etlded +set g_protect 1 +set omnibot_enable 1 +set omnibot_path "./legacy/omni-bot" +exec etl_server.cfg $@
+LD_LIBRARY_PATH=$LD_LIBRARY_PATH:. ./etlded.@ARCH@ +set g_protect 1 +set omnibot_enable 1 +set omnibot_path "./legacy/omni-bot" +exec etl_server.cfg $@
diff --git a/games/etlegacy/files/etlegacy.desktop b/games/etlegacy/files/etlegacy.desktop
deleted file mode 100644
index 2618c0c13e..0000000000
--- a/games/etlegacy/files/etlegacy.desktop
+++ /dev/null
@@ -1,9 +0,0 @@
-[Desktop Entry]
-Name=ETLegacy
-Comment=ET: Legacy (Collaborative online FPS)
-Exec=etl
-Icon=etl
-Terminal=false
-Type=Application
-Categories=Game;
-StartupNotify=false
diff --git a/games/etlegacy/files/etlegacy.svg b/games/etlegacy/files/etlegacy.svg
deleted file mode 100644
index 51754d1889..0000000000
--- a/games/etlegacy/files/etlegacy.svg
+++ /dev/null
@@ -1,100 +0,0 @@
-<?xml version="1.0" encoding="UTF-8" standalone="no"?>
-<!-- Created with Inkscape (http://www.inkscape.org/) -->
-
-<svg
- xmlns:dc="http://purl.org/dc/elements/1.1/"
- xmlns:cc="http://creativecommons.org/ns#"
- xmlns:rdf="http://www.w3.org/1999/02/22-rdf-syntax-ns#"
- xmlns:svg="http://www.w3.org/2000/svg"
- xmlns="http://www.w3.org/2000/svg"
- xmlns:xlink="http://www.w3.org/1999/xlink"
- version="1.1"
- width="273.6875"
- height="173.40625"
- viewBox="0 0 218.95 138.72526"
- id="svg2">
- <metadata
- id="metadata16">
- <rdf:RDF>
- <cc:Work
- rdf:about="">
- <dc:format>image/svg+xml</dc:format>
- <dc:type
- rdf:resource="http://purl.org/dc/dcmitype/StillImage" />
- <dc:title></dc:title>
- </cc:Work>
- </rdf:RDF>
- </metadata>
- <defs
- id="defs14">
- <linearGradient
- id="linearGradient5430">
- <stop
- id="stop5432"
- style="stop-color:#df3323;stop-opacity:1"
- offset="0" />
- <stop
- id="stop5434"
- style="stop-color:#3d0000;stop-opacity:1"
- offset="1" />
- </linearGradient>
- <linearGradient
- x1="134.5764"
- y1="2.2628517"
- x2="134.5764"
- y2="150.06567"
- id="linearGradient5438"
- xlink:href="#linearGradient5430"
- gradientUnits="userSpaceOnUse"
- gradientTransform="matrix(0.80000151,0,0,0.80000151,1.4747917,2.0250038)"
- spreadMethod="pad" />
- </defs>
- <path
- d="m 141.47506,0 -2.025,0.025 -2.20001,0.025 -0.025,0 -0.05,0 c -0.56094,0.029611 -1.70494,0.1655976 -3.625,0.4000007 -1.92006,0.2344032 -4.43694,0.566477 -7.10002,1.0000019 -2.76457,0.4500476 -5.64229,1.0096873 -8.15001,1.6750032 -2.39466,0.6353177 -4.73741,1.1624015 -6.65002,3.0750058 -1.11785,1.1178567 -1.76614,2.3933294 -2.175,3.6250069 C 109.06614,8.5933348 108.41785,7.3178683 107.3,6.2000117 105.38739,4.2874074 103.04464,3.7603236 100.64998,3.1250059 98.142257,2.45969 95.264537,1.9000503 92.499964,1.4500027 89.859095,1.0200941 87.367626,0.683809 85.474951,0.4500008 83.582275,0.2161926 82.445337,0.0816673 81.924944,0.0500001 c -0.002,2.358e-4 -0.0219,2.018e-4 -0.025,0 -0.05436,-0.00354 -0.104368,0.00167 -0.15,0 -0.09126,-0.00334 -0.182568,0.00226 -0.300001,0 -0.234863,-0.00451 -0.536171,-0.022255 -0.825001,-0.025 -0.577661,-0.00549 -1.150002,0 -1.150002,0 l -2.000004,0 0,2.0000038 0,13.0000251 -72.650138,0 -4.82500917679,0 0,8.000015 L 3.3997953,26.45005 42.39987,65.450124 l 0.600001,0.575001 0.825001,0 35.650068,0 0,58.850115 0,4.85001 3.425006,-3.45001 13.575026,-13.62503 0,21.22504 0,4.85001 3.425005,-3.45 14.575033,-14.62503 0,4.22501 0,4.82501 3.42501,-3.40001 21.00004,-21.00004 0.575,-0.60001 0,-0.825 0,-37.850065 35.65006,0 0.825,0 0.6,-0.575001 39.00008,-39.000074 3.4,-3.425006 0,-8.000015 -4.82501,0 -72.65013,0 0,-13.0000251 z m -59.875116,4.0500076 0.075,0 c 0.01691,0.00103 1.091842,0.132738 1.725003,0.2000004 z m 55.700106,0 0.075,0 0.1,0 0,0.2250004 -2,0 c 0.72505,-0.076119 1.78584,-0.2215776 1.825,-0.2250004 z M 83.824948,4.3000081 c 0.505641,0.055705 0.521361,0.044253 1.175002,0.1250002 1.655203,0.2044728 3.853399,0.5170549 6.125012,0.8750017 C 88.120084,4.8294493 85.543799,4.4927178 83.824948,4.3000081 z m 50.925102,0.05 c -1.61252,0.1827352 -3.91957,0.4916419 -6.57501,0.9000017 2.14817,-0.332921 4.26472,-0.6314689 5.85001,-0.8250016 0.40573,-0.049532 0.36769,-0.034762 0.725,-0.075 z m -34.950073,2.675005 c 1.462323,0.389813 2.501633,0.7939944 3.350013,1.2250023 -0.15979,-0.072953 -0.27743,-0.1411677 -0.475,-0.2250004 -0.73852,-0.313363 -1.74502,-0.6878195 -2.875013,-1.0000019 z m 19.350043,0 c -1.12999,0.3121818 -2.13649,0.686639 -2.87501,1.0000019 -0.19757,0.083833 -0.31521,0.1520469 -0.475,0.2250004 0.84838,-0.4310079 1.88769,-0.8351893 3.35001,-1.2250023 z m -33.675069,1.550003 c 1.673843,0.2029118 3.290574,0.3746285 5.750011,0.7750014 2.615437,0.4257684 5.275002,0.9244885 7.350015,1.4750025 0.97355,0.25829 1.877973,0.600456 2.525003,0.875002 0.2086,0.08851 0.35117,0.155736 0.50001,0.225 0.0575,0.137843 0.13205,0.275764 0.2,0.475002 0.0976,0.286085 0.1654,0.634726 0.25,0.975001 -0.97037,0.241444 -2.243943,0.668929 -3.400013,1.825004 -1.3422,1.342202 -1.77999,2.924928 -1.975005,3.900007 -0.207144,1.03545 -0.201016,1.881533 -0.2,1.925004 2.4e-5,0.0011 0,0.05 0,0.05 l 0,16.950032 -65.325124,0 -3.000005,-3.000006 27.325051,0 0.825002,0 0.600001,-0.575001 4.000008,-4.000007 3.400006,-3.425007 -4.825009,0 -39.325074,0 -4.000008,-4.000007 58.47511,0 -5.57501,5.57501 -3.400007,3.425007 4.82501,0 13.000024,0 2.000004,0 0,-2.000004 z m 48.000099,0 0,21.4500409 0,2.000004 2,0 13.00002,0 4.82501,0 -3.4,-3.425007 -5.57501,-5.57501 58.47511,0 -4.00001,4.000007 -39.32508,0 -4.825,0 3.4,3.425007 4.00001,4.000007 0.6,0.575001 0.825,0 27.32505,0 -3,3.000006 -65.32513,0 0,-16.950032 c 0,0 -2e-5,-0.04888 0,-0.05 0.001,-0.04347 0.007,-0.889474 -0.2,-1.925004 -0.19501,-0.975067 -0.63279,-2.557801 -1.975,-3.900007 -1.15607,-1.156066 -2.42964,-1.583559 -3.40001,-1.825004 0.0846,-0.340275 0.15244,-0.688916 0.25,-0.975001 0.0679,-0.199238 0.14251,-0.337159 0.20001,-0.475002 0.14882,-0.06926 0.2914,-0.136491 0.5,-0.225 0.64703,-0.274545 1.55145,-0.616712 2.525,-0.875002 2.07501,-0.550514 4.73458,-1.0492341 7.35001,-1.4750025 2.45944,-0.4003729 4.07617,-0.5720896 5.75002,-0.7750014 z M 105.44999,10.75002 c 0.36286,0.911786 0.61428,1.899778 0.775,3.025006 0.11508,0.806639 0.13951,1.402629 0.2,1.950004 l 0.025,1.300002 -1.975,0 1.725,-0.025 0.1,-1.875003 c 0,0 0.031,-0.608393 -0.075,-1.350003 -0.13725,-0.96083 -0.38475,-1.897196 -0.65,-2.675005 -0.0439,-0.128608 -0.0802,-0.229896 -0.125,-0.350001 z m 8.05002,0 c -0.0448,0.120105 -0.0811,0.221393 -0.125,0.350001 -0.26525,0.777809 -0.51275,1.714175 -0.65,2.675005 0.16075,-1.125247 0.41213,-2.113214 0.775,-3.025006 z m -0.875,4.125008 -0.1,1.575003 0,-0.725001 c 0.0264,-0.239123 0.0753,-0.570767 0.1,-0.850002 z m -0.125,2.125004 1.975,0.025 -1,0 -0.975,0 z m -8.17502,0.025 c -0.041,0.0024 -0.4443,0.04387 -0.975,0.150001 -0.36337,0.07267 -0.66015,0.160047 -0.9,0.25 -0.0624,0.02341 -0.11939,0.02704 -0.175,0.05 0.33272,-0.161248 0.70162,-0.275325 1.075,-0.35 0.48654,-0.09731 0.975,-0.100001 0.975,-0.100001 z m 10.27502,0 c 0.17915,0.0019 0.4303,-0.01394 1,0.100001 0.37338,0.07468 0.74228,0.188751 1.075,0.35 -0.0556,-0.02295 -0.11256,-0.02659 -0.175,-0.05 -0.23984,-0.08995 -0.53662,-0.177325 -0.9,-0.25 -0.54393,-0.108764 -0.97882,-0.148809 -1,-0.150001 z m -13.67503,1.800004 c -0.0229,0.0556 -0.0266,0.112574 -0.05,0.175 -0.0899,0.239816 -0.17732,0.536711 -0.25,0.900002 -0.10298,0.515223 -0.12122,0.888151 -0.125,0.950002 2.7e-4,-0.09844 -0.0292,-0.429085 0.075,-0.950002 0.0747,-0.373381 0.18875,-0.742282 0.35,-1.075002 z m 17.10004,0 c 0.16124,0.332717 0.27532,0.701615 0.35,1.075002 0.1042,0.520844 0.0747,0.851573 0.075,0.950002 -0.004,-0.06189 -0.0219,-0.434562 -0.125,-0.950002 -0.0727,-0.36332 -0.16004,-0.660121 -0.25,-0.900002 -0.0234,-0.06244 -0.027,-0.119368 -0.05,-0.175 z m -13.55003,10.200019 c 0.0155,-0.0012 0.1,0 0.1,0 l 1.9,0 1.97501,0 0.025,0 2,0 0.025,0 2.97501,0 0.9,0 c 0,0 0.0845,-0.0012 0.1,0 l 0,0.1 0,8.900017 -10.00002,0 0,-8.900017 z m -23.000047,-7.150014 0,6.150012 -6.150011,0 5.57501,-5.57501 z m 56.000107,0 0.575,0.575002 5.57501,5.57501 -6.15001,0 z m -98.325187,24.150046 57.325109,0 0,38.000072 0,4.825009 3.425005,-3.400007 4.000013,-4.000007 0.575,-0.600001 0,-0.825002 0,-34.000064 10.00002,0 0,38.000072 0,4.825009 3.42501,-3.400007 4,-4.000007 0.575,-0.600001 0,-0.825002 0,-34.000064 57.32511,0 -4,4.000008 -42.32508,0 -2.00001,0 0,2.000003 0,41.325078 -9.00002,9.000014 0,-12.32502 0,-4.825009 -3.425,3.400006 -4.00001,4.000008 -0.575,0.600001 0,0.825002 0,7.325012 -10.00002,10.00002 0,-21.17504 0,-4.825009 -3.42501,3.400007 -13.575025,13.600022 0,-50.325092 0,-2.000003 -2.000004,0 -42.32508,0 z"
- id="path3892"
- style="font-size:medium;font-style:normal;font-variant:normal;font-weight:normal;font-stretch:normal;text-indent:0;text-align:start;text-decoration:none;line-height:normal;letter-spacing:normal;word-spacing:normal;text-transform:none;direction:ltr;block-progression:tb;writing-mode:lr-tb;text-anchor:start;baseline-shift:baseline;color:#000000;fill:#000000;fill-opacity:1;fill-rule:nonzero;stroke:none;stroke-width:5;marker:none;visibility:visible;display:inline;overflow:visible;enable-background:accumulate;font-family:Sans;-inkscape-font-specification:Sans" />
- <path
- d="m 80.899942,3.4500065 0,13.5750255 c 0.0057,0.747658 -0.677344,1.430652 -1.425003,1.425003 l -74.4251406,0 36.1500686,36.150068 40.275076,0 c 0.747658,-0.0057 1.430651,0.677345 1.425003,1.425003 l 0,57.425104 14.575031,-14.625023 c 0.39153,-0.399953 1.03245,-0.531513 1.54988,-0.318145 0.51742,0.213376 0.87931,0.758473 0.87512,1.318146 l 0,22.625042 15.575033,-15.62503 c 0.39153,-0.39995 1.03246,-0.53151 1.54988,-0.31814 0.51743,0.21337 0.87932,0.75847 0.87512,1.31814 l 0,5.62501 18.15004,-18.15003 0,-39.275074 c -0.006,-0.747658 0.67734,-1.430652 1.425,-1.425003 l 40.27508,0 36.15007,-36.150068 -74.42514,0 c -0.74766,0.0057 -1.43066,-0.677345 -1.42501,-1.425003 l 0,-13.5500255 -0.75,0 0,-0.025 c -0.12117,0.00807 -1.49587,0.1472265 -3.35,0.3750007 -1.88147,0.2311324 -4.34424,0.5758045 -6.95002,1.0000019 -2.69691,0.4390327 -5.46733,0.9811276 -7.80001,1.600003 -2.41264,0.6400874 -3.98999,1.0649805 -5.12501,2.2000042 -1.33333,1.3333278 -1.65391,3.1773877 -1.92501,5.0750097 -0.12252,0.857658 -0.14082,1.502959 -0.2,2.025004 l -0.025,1.875003 1.55001,0 1,0 c 0.0252,0.0076 0.0502,0.01597 0.075,0.025 0,0 0.40683,0.02138 0.925,0.125 0.31902,0.0638 0.5829,0.143578 0.8,0.225001 0.10855,0.04071 0.21314,0.08552 0.3,0.125 0.0434,0.01974 0.0715,0.02167 0.125,0.05 0.0535,0.02833 0.0276,-0.07243 0.375,0.275001 0.34819,0.347604 0.24662,0.321414 0.275,0.375 0.0284,0.05358 0.0302,0.08154 0.05,0.125001 0.0395,0.08692 0.0843,0.191437 0.125,0.3 0.0814,0.217128 0.16121,0.481024 0.225,0.800002 0.10364,0.518223 0.125,0.925002 0.125,0.925002 0.009,0.02476 0.0174,0.04978 0.025,0.075 l 0,19.000036 c 0.006,0.747644 -0.67732,1.430629 -1.42496,1.425002 l -14.00002,0 c -0.74766,0.0057 -1.43065,-0.677344 -1.42501,-1.425002 l 0,-19.000036 c 0.008,-0.02522 0.016,-0.05024 0.025,-0.075 0,0 0.0214,-0.406945 0.125,-0.925002 0.0638,-0.318958 0.1436,-0.582921 0.225,-0.800002 0.0407,-0.10854 0.0855,-0.213147 0.125,-0.3 0.0198,-0.04342 0.0217,-0.0715 0.05,-0.125001 0.0283,-0.0535 -0.0723,-0.02764 0.275,-0.375 0.34793,-0.348311 0.32148,-0.246652 0.37501,-0.275001 0.0535,-0.02835 0.0816,-0.03026 0.125,-0.05 0.0869,-0.03949 0.19144,-0.08429 0.3,-0.125 0.21711,-0.08142 0.48099,-0.161197 0.8,-0.225001 0.51824,-0.103637 0.925,-0.125 0.925,-0.125 0.0247,-0.009 0.0498,-0.01737 0.075,-0.025 l 2,0 0.55,0 -0.025,-1.875003 c -0.0591,-0.521651 -0.0776,-1.167032 -0.2,-2.025004 -0.271,-1.897581 -0.59162,-3.7416741 -1.92496,-5.0750097 C 103.73996,7.4899926 102.16262,7.0650995 99.749977,6.4250121 97.417297,5.8061367 94.64688,5.2640418 91.949963,4.8250091 89.364134,4.4040604 86.933122,4.0566076 85.07495,3.8250072 83.216778,3.5934068 81.821792,3.4558999 81.724944,3.4500065 c -0.01664,2.946e-4 -0.03336,2.946e-4 -0.05,0 -5.04e-4,-3.11e-5 -0.05432,-0.00264 -0.05,0 -0.0108,-3.603e-4 -0.03648,3.705e-4 -0.05,0 -0.05408,-0.00148 -0.114734,0.00133 -0.2,0 -0.130649,-0.00204 -0.307376,0.00137 -0.475001,0 z"
- id="path3885"
- style="font-size:medium;font-style:normal;font-variant:normal;font-weight:normal;font-stretch:normal;text-indent:0;text-align:start;text-decoration:none;line-height:normal;letter-spacing:normal;word-spacing:normal;text-transform:none;direction:ltr;block-progression:tb;writing-mode:lr-tb;text-anchor:start;baseline-shift:baseline;color:#000000;fill:url(#linearGradient5438);fill-opacity:1;stroke:none;stroke-width:4.00000763;marker:none;visibility:visible;display:inline;overflow:visible;enable-background:accumulate;font-family:Sans;-inkscape-font-specification:Sans" />
- <path
- d="m 79.474939,2.0250038 0,15.0000282 -77.850147,0 39.000074,39.000074 40.850077,0 0,60.850114 17.000034,-17.050032 c 0,8.683352 0,17.366702 0,26.050052 l 18.000033,-18.05004 0,9.05002 21.00004,-21.000039 0,-39.850075 40.85008,0 39.00007,-39.000074 -77.85014,0 0,-15.0000282 -2.19342,0.030005 c -0.56842,0.030005 -5.24819,0.5139758 -10.50661,1.3699977 -2.72494,0.4435953 -5.54482,0.9868914 -7.95001,1.6250031 -2.40519,0.6381117 -4.29291,1.1178968 -5.75001,2.5750049 -1.70711,1.7071081 -2.05238,3.9666185 -2.32501,5.8750105 -0.14279,0.999532 -0.19036,1.874272 -0.23268,2.199639 l -0.0423,3.325372 3.00001,0 1,0 c 0,0 0.30115,0.01525 0.725,0.1 0.42385,0.08477 0.84641,0.271405 0.875,0.300001 0.0286,0.02859 0.21523,0.451146 0.3,0.875001 0.0848,0.423855 0.1,0.725002 0.1,0.725002 l 0,19.000036 -14.00002,0 0,-19.000036 c 0,0 0.0153,-0.301147 0.1,-0.725002 0.0848,-0.423855 0.2714,-0.846406 0.3,-0.875001 0.0286,-0.02859 0.45115,-0.21523 0.875,-0.300001 0.4239,-0.08477 0.725,-0.1 0.725,-0.1 l 2,0 2.00001,0 -0.0424,-3.325372 c -0.0423,-0.325367 -0.0901,-1.200107 -0.23264,-2.199639 -0.27262,-1.908392 -0.61788,-4.1679025 -2.32499,-5.8750106 -1.4571,-1.4571081 -3.34482,-1.9368932 -5.75001,-2.5750049 C 97.719787,4.4118978 94.899905,3.8686017 92.174963,3.4250064 86.958546,2.5758217 82.355913,2.0923049 81.802928,2.0586543 81.714408,2.034763 79.474939,2.0250038 79.474939,2.0250038 z m 4.000008,4.250008 c 1.883196,0.2104537 4.619937,0.537548 8.075015,1.1000021 2.650061,0.4314048 5.361455,0.9443646 7.550015,1.5250029 2.188563,0.5806383 3.932123,1.4821112 3.975013,1.5250032 0.29289,0.292891 0.94763,2.033399 1.175,3.625006 0.0742,0.519018 0.05,0.975002 0.05,0.975002 0,0 -0.64839,0.0097 -1.34996,0.150001 -0.82616,0.165229 -1.90361,0.478597 -2.87501,1.450002 -0.971403,0.971405 -1.284773,2.048861 -1.450003,2.875006 -0.16527,0.826145 -0.15004,1.525003 -0.15004,1.525003 l 0,19.000036 -68.17513,0 -7.000014,-7.000014 32.175061,0 4.000008,-4.000007 -40.175076,0 -8.000015,-8.000015 68.175128,0 -9.000017,9.000017 13.000025,0 z m 52.000103,0 0,23.7500452 13.00002,0 -9.00001,-9.000017 68.17512,0 -8.00001,8.000015 -40.17508,0 4.00001,4.000007 32.17506,0 -7.00001,7.000014 -68.17513,0 0,-19.000036 c 0,0 0.0153,-0.698858 -0.15,-1.525003 -0.16523,-0.826145 -0.47859,-1.903601 -1.45,-2.875006 -0.97141,-0.971405 -2.04886,-1.284773 -2.87501,-1.450002 -0.74271,-0.148543 -1.25461,-0.148713 -1.375,-0.150001 0.034,-0.432859 8e-4,-0.455984 0.075,-0.975002 0.22737,-1.591607 0.88211,-3.332115 1.175,-3.625006 0.0429,-0.0429 1.78645,-0.9443649 3.97501,-1.5250032 2.18855,-0.5806383 4.89995,-1.0935981 7.55001,-1.5250029 3.45508,-0.5624541 6.19182,-0.8895484 8.07502,-1.1000021 z M 34.299854,44.025083 l 64.175123,0 0,40.000076 4.000013,-4.000008 0,-36.000068 14.00002,0 0,40.000076 4.00001,-4.000008 0,-36.000068 64.17512,0 -8.00001,8.000015 -43.17509,0 0,42.17508 -13.00002,13.000022 0,-17.17503 -4.00001,4.000007 0,8.175013 -14.00002,14.00003 0,-26.02505 -17.000039,17.02503 0,-55.175102 -43.175082,0 z"
- id="stroke_curved_top_left"
- style="font-size:medium;font-style:normal;font-variant:normal;font-weight:normal;font-stretch:normal;text-indent:0;text-align:start;text-decoration:none;line-height:normal;letter-spacing:normal;word-spacing:normal;text-transform:none;direction:ltr;block-progression:tb;writing-mode:lr-tb;text-anchor:start;baseline-shift:baseline;color:#000000;fill:#ffffff;fill-opacity:1;stroke:none;stroke-width:1;marker:none;visibility:visible;display:inline;overflow:visible;enable-background:accumulate;font-family:Sans;-inkscape-font-specification:Sans" />
- <g
- transform="translate(1.4749954,152.42528)"
- id="g3771">
- <path
- d="m 103,15 c 0,0 -2,0 -3,1 -1,1 -1,3 -1,3 M 80,2 c 0,0 20,2 23,5 2,2 2,8 2,8"
- id="path3773"
- style="fill:none;stroke:#000000;stroke-width:4.00000763;stroke-linecap:round;stroke-miterlimit:4;stroke-dasharray:none" />
- <path
- d="m 113,15 c 0,0 2,0 3,1 1,1 1,3 1,3 M 136,2 c 0,0 -20,2 -23,5 -2,2 -2,8 -2,8"
- id="path3775"
- style="fill:none;stroke:#000000;stroke-width:4.00000763;stroke-linecap:round;stroke-miterlimit:4;stroke-dasharray:none" />
- <path
- d="m 99,19 c 0,0 0,58 0,58 M 82,93 c 0,0 0,-41 0,-41 0,0 -42,0 -42,0 0,0 -35,-35 -35,-35 0,0 75,0 75,0 m 25,-2 c 0,0 -2,0 -2,0 M 80,2 c 0,0 0,24 0,24 m -27,3 c 0,0 -36,0 -36,0 m 91,11 c 0,0 -80,0 -80,0"
- id="path3777"
- style="fill:none;stroke:#000000;stroke-width:4.00000763;stroke-linecap:round;stroke-miterlimit:4;stroke-dasharray:none" />
- <path
- d="m 117,19 c 0,0 0,58 0,58 m 17,16 c 0,0 0,-41 0,-41 0,0 42,0 42,0 0,0 35,-35 35,-35 0,0 -75,0 -75,0 m -25,-2 c 0,0 2,0 2,0 M 136,2 c 0,0 0,24 0,24 m 27,3 c 0,0 36,0 36,0 m -91,11 c 0,0 80,0 80,0"
- id="path3779"
- style="fill:none;stroke:#000000;stroke-width:4.00000763;stroke-linecap:round;stroke-miterlimit:4;stroke-dasharray:none" />
- <path
- d="m 134,89 c 0,0 0,4 0,4 0,0 -17,17 -17,17 0,0 0,-9 0,-9 0,0 -18,18 -18,18 0,0 0,-26 0,-26 0,0 -17,17 -17,17 0,0 0,-17 0,-17 m 35,0 c 0,0 0,8 0,8"
- id="path3781"
- style="fill:none;stroke:#000000;stroke-width:4.00000763;stroke-linecap:round;stroke-miterlimit:4;stroke-dasharray:none" />
- <path
- d="m 138,2 c 0,0 0,-2 0,-2 0,0 -2,0 -2,0 0,0 0,2 0,2 0,0 2,0 2,0 z m -4,24 c 0,0 0,2 0,2 0,0 13,0 13,0 0,0 -9,-9 -9,-9 0,0 -4,0 -4,0 0,0 0,7 0,7 z m 30,5 c 0,0 -2,0 -2,0 0,0 -4,-4 -4,-4 0,0 6,0 6,0 0,0 0,4 0,4 z M 112,17 c 0,0 -3,0 -3,0 0,0 0,-3 0,-3 0,0 3,0 3,0 0,0 0,3 0,3 z"
- id="path3783"
- style="fill:#000000;fill-opacity:1;stroke:none" />
- <path
- d="m 78,2 c 0,0 0,-2 0,-2 0,0 2,0 2,0 0,0 0,2 0,2 0,0 -2,0 -2,0 z m 4,24 c 0,0 0,2 0,2 0,0 -13,0 -13,0 0,0 9,-9 9,-9 0,0 4,0 4,0 0,0 0,7 0,7 z m -30,5 c 0,0 2,0 2,0 0,0 4,-4 4,-4 0,0 -6,0 -6,0 0,0 0,4 0,4 z m 52,-14 c 0,0 3,0 3,0 0,0 0,-3 0,-3 0,0 -3,0 -3,0 0,0 0,3 0,3 z"
- id="path3785"
- style="fill:#000000;fill-opacity:1;stroke:none" />
- <path
- d="m 97,82 c 0,0 4,-4 4,-4 0,0 0,-1 0,-1 0,0 -4,0 -4,0 0,0 0,5 0,5 z m 18,0 c 0,0 4,-4 4,-4 0,0 0,-1 0,-1 0,0 -4,0 -4,0 0,0 0,5 0,5 z m 0,11 c 0,0 4,0 4,0 0,0 0,-5 0,-5 0,0 -4,4 -4,4 0,0 0,1 0,1 z"
- id="path3787"
- style="fill:#000000;fill-opacity:1;stroke:none" />
- </g>
-</svg>
diff --git a/games/eureka/README b/games/eureka/README
index c848a450e7..a45c8836f7 100644
--- a/games/eureka/README
+++ b/games/eureka/README
@@ -1,6 +1,8 @@
+eureka (DOOM level editor)
+
Eureka is a cross-platform DOOM level editor using the FLTK widget
library. It is based on Yadex and provides a new interface, support for
source ports and a 3D preview feature.
-Please see /usr/doc/eureka-1.07/INSTALL.txt for information on how
+Please see /usr/doc/eureka-1.07/SETUP.txt for information on how
Eureka looks for IWADs.
diff --git a/games/eureka/eureka.SlackBuild b/games/eureka/eureka.SlackBuild
index 7aeae46b4b..b9da7267a7 100644
--- a/games/eureka/eureka.SlackBuild
+++ b/games/eureka/eureka.SlackBuild
@@ -1,4 +1,4 @@
-#!/bin/sh
+#!/bin/bash
# Slackware build script for eureka
@@ -23,6 +23,13 @@
# OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF THIS SOFTWARE, EVEN IF
# ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
+# 20230531 bkw: remove unused SLKCFLAGS and LIBDIRSUFFIX variables.
+
+# 20230108 bkw: BUILD=2
+# - strip binary
+# - keep only useful parts of INSTALL.txt
+# - new-style icon
+
# 20200717 bkw: update for v1.27b
# 20200415 bkw:
@@ -30,11 +37,14 @@
# - i486 => i586
# - update for v1.24
+cd $(dirname $0) ; CWD=$(pwd)
+
PRGNAM=eureka
VERSION=${VERSION:-1.27b}
SRCVER=${VERSION/.}
-BUILD=${BUILD:-1}
+BUILD=${BUILD:-2}
TAG=${TAG:-_SBo}
+PKGTYPE=${PKGTYPE:-tgz}
if [ -z "$ARCH" ]; then
case "$( uname -m )" in
@@ -44,24 +54,16 @@ if [ -z "$ARCH" ]; then
esac
fi
-CWD=$(pwd)
+if [ ! -z "${PRINT_PACKAGE_NAME}" ]; then
+ echo "$PRGNAM-$VERSION-$ARCH-$BUILD$TAG.$PKGTYPE"
+ exit 0
+fi
+
TMP=${TMP:-/tmp/SBo}
PKG=$TMP/package-$PRGNAM
OUTPUT=${OUTPUT:-/tmp}
-if [ "$ARCH" = "i586" ]; then
- SLKCFLAGS="-O2 -march=i586 -mtune=i686"
- LIBDIRSUFFIX=""
-elif [ "$ARCH" = "i686" ]; then
- SLKCFLAGS="-O2 -march=i686 -mtune=i686"
- LIBDIRSUFFIX=""
-elif [ "$ARCH" = "x86_64" ]; then
- SLKCFLAGS="-O2 -fPIC"
- LIBDIRSUFFIX="64"
-else
- SLKCFLAGS="-O2"
- LIBDIRSUFFIX=""
-fi
+# fltk-config knows the right flags and lib dir, no SLKCFLAGS or LIBDIRSUFFIX.
set -e
@@ -83,6 +85,7 @@ sed -i -e 's,\<bin\>,games,g' \
Makefile
LINKER_FLAGS="\
+ -Wl,-s \
-lfltk \
-lfltk_images \
-lfltk_gl \
@@ -96,18 +99,22 @@ make install \
PREFIX="$PKG/usr" \
LDFLAGS="$LINKER_FLAGS"
-# Binary already stripped, thanks.
-
mkdir -p $PKG/usr/share/applications
cp misc/$PRGNAM.desktop $PKG/usr/share/applications
mkdir -p $PKG/usr/share/pixmaps
cp misc/$PRGNAM.xpm $PKG/usr/share/pixmaps
+# 20230108 bkw: new-style icon (just the one).
+mkdir -p $PKG/usr/share/icons/hicolor/32x32/apps
+convert misc/$PRGNAM.xpm $PKG/usr/share/icons/hicolor/32x32/apps/$PRGNAM.png
+
mkdir -p $PKG/usr/man/man6
gzip -9c < misc/$PRGNAM.6 > $PKG/usr/man/man6/$PRGNAM.6.gz
mkdir -p $PKG/usr/doc/$PRGNAM-$VERSION
+sed -n '/^SETTING UP/,$p' INSTALL.txt > SETUP.txt
+rm -f INSTALL.txt
cp -a *.txt docs/* $PKG/usr/doc/$PRGNAM-$VERSION
cat $CWD/$PRGNAM.SlackBuild > $PKG/usr/doc/$PRGNAM-$VERSION/$PRGNAM.SlackBuild
@@ -116,4 +123,4 @@ cat $CWD/slack-desc > $PKG/install/slack-desc
cat $CWD/doinst.sh > $PKG/install/doinst.sh
cd $PKG
-/sbin/makepkg -l y -c n $OUTPUT/$PRGNAM-$VERSION-$ARCH-$BUILD$TAG.${PKGTYPE:-tgz}
+/sbin/makepkg -l y -c n $OUTPUT/$PRGNAM-$VERSION-$ARCH-$BUILD$TAG.$PKGTYPE
diff --git a/games/eureka/eureka.info b/games/eureka/eureka.info
index 42ea041c67..cad591d7a6 100644
--- a/games/eureka/eureka.info
+++ b/games/eureka/eureka.info
@@ -1,10 +1,10 @@
PRGNAM="eureka"
VERSION="1.27b"
HOMEPAGE="http://eureka-editor.sourceforge.net/"
-DOWNLOAD="http://downloads.sourceforge.net/project/eureka-editor/Eureka/1.27/eureka-1.27b-source.tar.gz"
+DOWNLOAD="https://downloads.sourceforge.net/project/eureka-editor/Eureka/1.27/eureka-1.27b-source.tar.gz"
MD5SUM="ded6495c09e23bfe55513eb47abf17ea"
DOWNLOAD_x86_64=""
MD5SUM_x86_64=""
REQUIRES="fltk"
MAINTAINER="B. Watson"
-EMAIL="yalhcru@gmail.com"
+EMAIL="urchlay@slackware.uk"
diff --git a/games/extremetuxracer/extremetuxracer.SlackBuild b/games/extremetuxracer/extremetuxracer.SlackBuild
index 80cd6a9919..0f247e6e7c 100644
--- a/games/extremetuxracer/extremetuxracer.SlackBuild
+++ b/games/extremetuxracer/extremetuxracer.SlackBuild
@@ -1,8 +1,8 @@
-#!/bin/sh
+#!/bin/bash
# Slackware build script for extremetuxracer
-# Copyright 2008-2017 Heinz Wiesinger, Amsterdam, The Netherlands
+# Copyright 2008-2021 Heinz Wiesinger, Amsterdam, The Netherlands
# All rights reserved.
#
# Redistribution and use of this script, with or without modification, is
@@ -11,21 +11,24 @@
# 1. Redistributions of this script must retain the above copyright
# notice, this list of conditions and the following disclaimer.
#
-# THIS SOFTWARE IS PROVIDED BY THE AUTHOR ''AS IS'' AND ANY EXPRESS OR IMPLIED
-# WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE IMPLIED WARRANTIES OF
-# MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE ARE DISCLAIMED. IN NO
-# EVENT SHALL THE AUTHOR BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL,
-# SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT LIMITED TO,
-# PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, DATA, OR PROFITS;
-# OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY,
-# WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR
-# OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF THIS SOFTWARE, EVEN IF
-# ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
+# THIS SOFTWARE IS PROVIDED BY THE AUTHOR ``AS IS'' AND ANY EXPRESS OR IMPLIED
+# WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE IMPLIED WARRANTIES OF
+# MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE ARE DISCLAIMED. IN NO
+# EVENT SHALL THE AUTHOR BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL,
+# SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT LIMITED TO,
+# PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, DATA, OR PROFITS;
+# OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY,
+# WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR
+# OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF THIS SOFTWARE, EVEN IF
+# ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
+
+cd $(dirname $0) ; CWD=$(pwd)
PRGNAM=extremetuxracer
-VERSION=${VERSION:-0.7.4}
+VERSION=${VERSION:-0.8.1}
BUILD=${BUILD:-1}
TAG=${TAG:-_SBo}
+PKGTYPE=${PKGTYPE:-tgz}
if [ -z "$ARCH" ]; then
case "$( uname -m )" in
@@ -35,7 +38,14 @@ if [ -z "$ARCH" ]; then
esac
fi
-CWD=$(pwd)
+# If the variable PRINT_PACKAGE_NAME is set, then this script will report what
+# the name of the created package would be, and then exit. This information
+# could be useful to other scripts.
+if [ ! -z "${PRINT_PACKAGE_NAME}" ]; then
+ echo "$PRGNAM-$VERSION-$ARCH-$BUILD$TAG.$PKGTYPE"
+ exit 0
+fi
+
TMP=${TMP:-/tmp/SBo}
PKG=$TMP/package-$PRGNAM
OUTPUT=${OUTPUT:-/tmp}
@@ -93,4 +103,4 @@ cat $CWD/slack-desc > $PKG/install/slack-desc
cat $CWD/doinst.sh > $PKG/install/doinst.sh
cd $PKG
-/sbin/makepkg -l y -c n $OUTPUT/$PRGNAM-$VERSION-$ARCH-$BUILD$TAG.${PKGTYPE:-tgz}
+/sbin/makepkg -l y -c n $OUTPUT/$PRGNAM-$VERSION-$ARCH-$BUILD$TAG.$PKGTYPE
diff --git a/games/extremetuxracer/extremetuxracer.info b/games/extremetuxracer/extremetuxracer.info
index 02a946fafa..d70a8fa212 100644
--- a/games/extremetuxracer/extremetuxracer.info
+++ b/games/extremetuxracer/extremetuxracer.info
@@ -1,10 +1,10 @@
PRGNAM="extremetuxracer"
-VERSION="0.7.4"
+VERSION="0.8.1"
HOMEPAGE="https://sourceforge.net/projects/extremetuxracer/"
-DOWNLOAD="https://downloads.sourceforge.net/extremetuxracer/etr-0.7.4.tar.xz"
-MD5SUM="474b26c3642312c153587b59676b2e86"
+DOWNLOAD="https://downloads.sourceforge.net/extremetuxracer/etr-0.8.1.tar.xz"
+MD5SUM="ddf604db8e3befa26bb5c129042a69db"
DOWNLOAD_x86_64=""
MD5SUM_x86_64=""
REQUIRES="SFML"
MAINTAINER="Heinz Wiesinger"
-EMAIL="pprkut@liwjatan.at"
+EMAIL="pprkut@slackbuilds.org"
diff --git a/games/exult/exult.SlackBuild b/games/exult/exult.SlackBuild
index 943b7d6a26..65c04077ff 100644
--- a/games/exult/exult.SlackBuild
+++ b/games/exult/exult.SlackBuild
@@ -1,4 +1,4 @@
-#!/bin/sh
+#!/bin/bash
# Slackware build script for exult
@@ -22,10 +22,13 @@
# OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF THIS SOFTWARE, EVEN IF
# ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
+cd $(dirname $0) ; CWD=$(pwd)
+
PRGNAM=exult
VERSION=${VERSION:-1.6}
BUILD=${BUILD:-1}
TAG=${TAG:-_SBo}
+PKGTYPE=${PKGTYPE:-tgz}
if [ -z "$ARCH" ]; then
case "$( uname -m )" in
@@ -35,7 +38,14 @@ if [ -z "$ARCH" ]; then
esac
fi
-CWD=$(pwd)
+# If the variable PRINT_PACKAGE_NAME is set, then this script will report what
+# the name of the created package would be, and then exit. This information
+# could be useful to other scripts.
+if [ ! -z "${PRINT_PACKAGE_NAME}" ]; then
+ echo "$PRGNAM-$VERSION-$ARCH-$BUILD$TAG.$PKGTYPE"
+ exit 0
+fi
+
TMP=${TMP:-/tmp/SBo}
PKG=$TMP/package-$PRGNAM
OUTPUT=${OUTPUT:-/tmp}
@@ -110,4 +120,4 @@ cat $CWD/slack-desc > $PKG/install/slack-desc
cat $CWD/doinst.sh > $PKG/install/doinst.sh
cd $PKG
-/sbin/makepkg -l y -c n $OUTPUT/$PRGNAM-$VERSION-$ARCH-$BUILD$TAG.${PKGTYPE:-tgz}
+/sbin/makepkg -l y -c n $OUTPUT/$PRGNAM-$VERSION-$ARCH-$BUILD$TAG.$PKGTYPE
diff --git a/games/ezquake/README b/games/ezquake/README
new file mode 100644
index 0000000000..2bba43bb03
--- /dev/null
+++ b/games/ezquake/README
@@ -0,0 +1,7 @@
+ezQuake is a modern QuakeWorld client Combining the features
+of all modern QuakeWorld clients, ezQuake makes QuakeWorld
+easier to start and play.
+
+ezQuake is only a game engine modification; you still need the
+original quake *.pak game files to play ezQuake. Save the
+pak files in /usr/share/games/ezquake/id1.
diff --git a/games/ezquake/doinst.sh b/games/ezquake/doinst.sh
new file mode 100644
index 0000000000..392c12adb9
--- /dev/null
+++ b/games/ezquake/doinst.sh
@@ -0,0 +1,4 @@
+if [ -x /usr/bin/update-desktop-database ]; then
+ /usr/bin/update-desktop-database -q usr/share/applications
+fi
+
diff --git a/games/ezquake/ezquake.SlackBuild b/games/ezquake/ezquake.SlackBuild
new file mode 100644
index 0000000000..fc6b571ac4
--- /dev/null
+++ b/games/ezquake/ezquake.SlackBuild
@@ -0,0 +1,140 @@
+#!/bin/bash
+
+# Slackware build script for ezquake
+
+# Copyright 2023 Matt Dinslage, Springfield, MO
+# All rights reserved.
+#
+# Redistribution and use of this script, with or without modification, is
+# permitted provided that the following conditions are met:
+#
+# 1. Redistributions of this script must retain the above copyright
+# notice, this list of conditions and the following disclaimer.
+#
+# THIS SOFTWARE IS PROVIDED BY THE AUTHOR "AS IS" AND ANY EXPRESS OR IMPLIED
+# WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE IMPLIED WARRANTIES OF
+# MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE ARE DISCLAIMED. IN NO
+# EVENT SHALL THE AUTHOR BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL,
+# SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT LIMITED TO,
+# PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, DATA, OR PROFITS;
+# OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY,
+# WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR
+# OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF THIS SOFTWARE, EVEN IF
+# ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
+
+cd $(dirname $0) ; CWD=$(pwd)
+
+PRGNAM=ezquake
+VERSION=${VERSION:-3.6.4}
+BUILD=${BUILD:-1}
+TAG=${TAG:-_SBo}
+PKGTYPE=${PKGTYPE:-tgz}
+
+if [ -z "$ARCH" ]; then
+ case "$( uname -m )" in
+ i?86) ARCH=i586 ;;
+ arm*) ARCH=arm ;;
+ *) ARCH=$( uname -m ) ;;
+ esac
+fi
+
+# If the variable PRINT_PACKAGE_NAME is set, then this script will report what
+# the name of the created package would be, and then exit. This information
+# could be useful to other scripts.
+if [ ! -z "${PRINT_PACKAGE_NAME}" ]; then
+ echo "$PRGNAM-$VERSION-$ARCH-$BUILD$TAG.$PKGTYPE"
+ exit 0
+fi
+
+TMP=${TMP:-/tmp/SBo}
+PKG=$TMP/package-$PRGNAM
+OUTPUT=${OUTPUT:-/tmp}
+
+if [ "$ARCH" = "i586" ]; then
+ SLKCFLAGS="-O2 -march=i586 -mtune=i686"
+ LIBDIRSUFFIX=""
+ BINSUFFIX="i386"
+elif [ "$ARCH" = "i686" ]; then
+ SLKCFLAGS="-O2 -march=i686 -mtune=i686"
+ LIBDIRSUFFIX=""
+ BINSUFFIX="i386"
+elif [ "$ARCH" = "x86_64" ]; then
+ SLKCFLAGS="-O2 -fPIC"
+ LIBDIRSUFFIX="64"
+ BINSUFFIX="x86_64"
+else
+ SLKCFLAGS="-O2"
+ LIBDIRSUFFIX=""
+fi
+
+set -e
+
+rm -rf $PKG
+mkdir -p $TMP $PKG $OUTPUT
+cd $TMP
+rm -rf rm -rf $PRGNAM-source-$VERSION
+tar -xvf $CWD/$PRGNAM-source-$VERSION.tar.gz
+cd $PRGNAM-source-$VERSION
+chown -R root:root .
+find -L . \
+ \( -perm 777 -o -perm 775 -o -perm 750 -o -perm 711 -o -perm 555 \
+ -o -perm 511 \) -exec chmod 755 {} \; -o \
+ \( -perm 666 -o -perm 664 -o -perm 640 -o -perm 600 -o -perm 444 \
+ -o -perm 440 -o -perm 400 \) -exec chmod 644 {} \;
+
+# add back the missing protocol.h file
+# https://github.com/QW-Group/ezquake-source/issues/765
+mkdir -p src/qwprot/src
+cat $CWD/protocol.h > src/qwprot/src/protocol.h
+
+# dont use precompiled binary, make our own
+CFLAGS="$SLKCFLAGS" \
+CXXFLAGS="$SLKCFLAGS" \
+make
+
+# the ezquake-ubuntu-3.2.3-full.tar.gz file has some assets we need
+mkdir -p $PKG/usr/share/games/$PRGNAM
+bsdtar -x -o -C "$PKG/usr/share/games/$PRGNAM" -f "$CWD/ezquake-ubuntu-3.2.3-full.tar.gz"
+
+# create directories and install files
+mkdir -p $PKG/usr/games
+mkdir -p $PKG/usr/share/{pixmaps,applications}
+cat dist/linux/io.github.ezQuake.128.png > $PKG/usr/share/pixmaps/$PRGNAM.png
+cat dist/linux/io.github.ezQuake.desktop > $PKG/usr/share/applications/$PRGNAM.desktop
+
+# replace precompiled binary with ours
+rm -f $PKG/usr/share/games/$PRGNAM/$PRGNAM-linux-*
+cp $PRGNAM-linux-$BINSUFFIX $PKG/usr/share/games/$PRGNAM
+chmod 0755 $PKG/usr/share/games/$PRGNAM/$PRGNAM-linux-$BINSUFFIX
+
+# Fix permissions on assets directories and files
+find $PKG/usr/share/games/$PRGNAM -type d -exec chmod 0755 "{}" \;
+find $PKG/usr/share/games/$PRGNAM -type f \! -name "$PRGNAM-linux-$BINSUFFIX" \
+ -exec chmod 0644 "{}" \;
+
+# create shortcut to binary
+cat $CWD/ezquake.launcher > $PKG/usr/games/$PRGNAM
+chmod 0755 $PKG/usr/games/$PRGNAM
+
+# fix ezquake.desktop file
+sed -i \
+ -e "s|io.github.ezQuake|/usr/share/pixmaps/ezquake.png|" \
+ -e "s|Exec=ezquake.sh|Exec=ezquake|" \
+ $PKG/usr/share/applications/$PRGNAM.desktop
+
+# we don't need two copies of the LICENSE file
+rm -f $PKG/usr/share/games/$PRGNAM/LICENSE
+
+find $PKG -print0 | xargs -0 file | grep -e "executable" -e "shared object" | grep ELF \
+ | cut -f 1 -d : | xargs strip --strip-unneeded 2> /dev/null || true
+
+mkdir -p $PKG/usr/doc/$PRGNAM-$VERSION
+cp -a LICENSE README.md $PKG/usr/doc/$PRGNAM-$VERSION
+cat $CWD/$PRGNAM.SlackBuild > $PKG/usr/doc/$PRGNAM-$VERSION/$PRGNAM.SlackBuild
+
+mkdir -p $PKG/install
+cat $CWD/slack-desc > $PKG/install/slack-desc
+cat $CWD/doinst.sh > $PKG/install/doinst.sh
+
+cd $PKG
+/sbin/makepkg -l y -c n $OUTPUT/$PRGNAM-$VERSION-$ARCH-$BUILD$TAG.$PKGTYPE
diff --git a/games/ezquake/ezquake.info b/games/ezquake/ezquake.info
new file mode 100644
index 0000000000..9c551bdae9
--- /dev/null
+++ b/games/ezquake/ezquake.info
@@ -0,0 +1,12 @@
+PRGNAM="ezquake"
+VERSION="3.6.4"
+HOMEPAGE="https://ezquake.com/"
+DOWNLOAD="https://github.com/QW-Group/ezquake-source/archive/3.6.4/ezquake-source-3.6.4.tar.gz \
+ https://github.com/QW-Group/ezquake-source/releases/download/3.2.3/ezquake-ubuntu-3.2.3-full.tar.gz"
+MD5SUM="5db942adf41808526ef9d66b928910bd \
+ 18a642c80d60bc01c04b8cb86c94bc5f"
+DOWNLOAD_x86_64=""
+MD5SUM_x86_64=""
+REQUIRES="libminizip"
+MAINTAINER="M.Dinslage"
+EMAIL="matthewdinslage@gmail.com"
diff --git a/games/ezquake/ezquake.launcher b/games/ezquake/ezquake.launcher
new file mode 100644
index 0000000000..4632d5866f
--- /dev/null
+++ b/games/ezquake/ezquake.launcher
@@ -0,0 +1,4 @@
+#!/bin/bash
+cd "/usr/share/games/ezquake"
+./ezquake-linux-* +cfg_use_home 1 +cfg_load "$@"
+exit $?
diff --git a/games/ezquake/protocol.h b/games/ezquake/protocol.h
new file mode 100644
index 0000000000..8ccd39c323
--- /dev/null
+++ b/games/ezquake/protocol.h
@@ -0,0 +1,638 @@
+/*
+Copyright (C) 1996-1997 Id Software, Inc.
+
+This program is free software; you can redistribute it and/or
+modify it under the terms of the GNU General Public License
+as published by the Free Software Foundation; either version 2
+of the License, or (at your option) any later version.
+
+This program is distributed in the hope that it will be useful,
+but WITHOUT ANY WARRANTY; without even the implied warranty of
+MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.
+
+See the GNU General Public License for more details.
+
+You should have received a copy of the GNU General Public License
+along with this program; if not, write to the Free Software
+Foundation, Inc., 59 Temple Place - Suite 330, Boston, MA 02111-1307, USA.
+
+*/
+// protocol.h -- communications protocols
+#ifndef __PROTOCOL_H__
+#define __PROTOCOL_H__
+
+#define PROTOCOL_VERSION 28
+
+//=========================================
+
+// fte protocol extensions.
+#define PROTOCOL_VERSION_FTE (('F'<<0) + ('T'<<8) + ('E'<<16) + ('X' << 24)) //fte extensions.
+#define PROTOCOL_VERSION_FTE2 (('F'<<0) + ('T'<<8) + ('E'<<16) + ('2' << 24)) //fte extensions.
+#define PROTOCOL_VERSION_MVD1 (('M'<<0) + ('V'<<8) + ('D'<<16) + ('1' << 24)) //mvdsv extensions
+
+#ifdef PROTOCOL_VERSION_FTE
+# define FTE_PEXT_TRANS 0x00000008 // .alpha support
+//#define FTE_PEXT_ACCURATETIMINGS 0x00000040 // qqshka: not actually used in ezquake.
+// // I added it to ezquake in hope that someone made some
+// // rockets(enitities) smoothing code...
+# define FTE_PEXT_HLBSP 0x00000200 // stops fte servers from complaining
+# define FTE_PEXT_MODELDBL 0x00001000 //
+# define FTE_PEXT_ENTITYDBL 0x00002000 // max of 1024 ents instead of 512
+# define FTE_PEXT_ENTITYDBL2 0x00004000 // max of 1024 ents instead of 512
+# define FTE_PEXT_FLOATCOORDS 0x00008000 // supports floating point origins.
+# define FTE_PEXT_SPAWNSTATIC2 0x00400000 // Sends an entity delta instead of a baseline.
+# define FTE_PEXT_256PACKETENTITIES 0x01000000 // Client can recieve 256 packet entities.
+# define FTE_PEXT_CHUNKEDDOWNLOADS 0x20000000 // alternate file download method. Hopefully it'll give
+ // quadroupled download speed, especially on higher pings.
+#endif // PROTOCOL_VERSION_FTE
+
+#ifdef PROTOCOL_VERSION_FTE2
+# ifdef WITH_SPEEX
+# include <SDL_version.h>
+# ifdef USE_SDL_VOICE
+# undef USE_SDL_VOICE
+# endif // USE_SDL_VOICE
+# if SDL_VERSION_ATLEAST(2,0,5)
+# define FTE_PEXT2_VOICECHAT 0x00000002
+# endif // SDL_VERSION_ATLEAST(2,0,5)
+# endif // WITH_SPEEX
+#endif // PROTOCOL_VERSION_FTE2
+
+#ifdef PROTOCOL_VERSION_MVD1
+# define MVD_PEXT1_FLOATCOORDS (1 << 0) // FTE_PEXT_FLOATCOORDS but for entity/player coords only
+# define MVD_PEXT1_HIGHLAGTELEPORT (1 << 1) // Adjust movement direction for frames following teleport
+//# define MVD_PEXT1_SERVERSIDEWEAPON (1 << 2) // Server-side weapon selection. Can be defined in a project Makefile
+# define MVD_PEXT1_DEBUG_WEAPON (1 << 3) // Send weapon-choice explanation to server for logging
+# define MVD_PEXT1_DEBUG_ANTILAG (1 << 4) // Send predicted positions to server (compare to antilagged positions)
+# define MVD_PEXT1_HIDDEN_MESSAGES (1 << 5) // dem_multiple(0) packets are in format (<length> <type-id>+ <packet-data>)*
+//# define MVD_PEXT1_SERVERSIDEWEAPON2 (1 << 6) // Server-side weapon selection supports clc_mvd_weapon_full_impulse.
+ // Can be defined in a project Makefile
+#define MVD_PEXT1_WEAPONPREDICTION (1 << 7) // Send weapon and attack related data for weapon prediction
+#define MVD_PEXT1_SIMPLEPROJECTILE (1 << 8) // Projectiles are sent as simple semi-stateless ents
+
+# if defined(MVD_PEXT1_DEBUG_ANTILAG) || defined(MVD_PEXT1_DEBUG_WEAPON)
+# define MVD_PEXT1_DEBUG
+# define MVD_PEXT1_ANTILAG_CLIENTPOS 128 // flag set on the playernum if the client positions are also included
+# define clc_mvd_debug 201
+# define clc_mvd_debug_type_antilag 1
+# define clc_mvd_debug_type_weapon 2
+# endif // defined(MVD_PEXT1_DEBUG_ANTILAG) || defined(MVD_PEXT1_DEBUG_WEAPON)
+
+# define MVD_PEXT1_INCLUDEINMVD (MVD_PEXT1_HIDDEN_MESSAGES)
+
+#endif // PROTOCOL_VERSION_MVD1
+
+//=========================================
+
+// ZQuake protocol extensions (*z_ext serverinfo key)
+#define Z_EXT_PM_TYPE (1<<0) // basic PM_TYPE functionality (reliable jump_held)
+#define Z_EXT_PM_TYPE_NEW (1<<1) // adds PM_FLY, PM_SPECTATOR
+#define Z_EXT_VIEWHEIGHT (1<<2) // STAT_VIEWHEIGHT
+#define Z_EXT_SERVERTIME (1<<3) // STAT_TIME
+#define Z_EXT_PITCHLIMITS (1<<4) // serverinfo maxpitch & minpitch
+#define Z_EXT_JOIN_OBSERVE (1<<5) // server: "join" and "observe" commands are supported
+ // client: on-the-fly spectator <-> player switching supported
+#define Z_EXT_PF_ONGROUND (1<<6) // server: PF_ONGROUND is valid for all svc_playerinfo
+#define Z_EXT_VWEP (1<<7) // ZQ_VWEP extension
+#define Z_EXT_PF_SOLID (1<<8)
+
+// what our client supports
+#define CLIENT_EXTENSIONS ( \
+ Z_EXT_PM_TYPE | \
+ Z_EXT_PM_TYPE_NEW | \
+ Z_EXT_VIEWHEIGHT | \
+ Z_EXT_SERVERTIME | \
+ Z_EXT_PITCHLIMITS | \
+ Z_EXT_JOIN_OBSERVE | \
+ Z_EXT_PF_ONGROUND | \
+ Z_EXT_VWEP | \
+ Z_EXT_PF_SOLID \
+)
+
+// what our server supports
+#define SERVER_EXTENSIONS ( \
+ Z_EXT_PM_TYPE | \
+ Z_EXT_PM_TYPE_NEW | \
+ Z_EXT_VIEWHEIGHT | \
+ Z_EXT_SERVERTIME | \
+ Z_EXT_PITCHLIMITS | \
+ Z_EXT_JOIN_OBSERVE | \
+ Z_EXT_PF_ONGROUND | \
+ Z_EXT_VWEP | \
+ Z_EXT_PF_SOLID \
+)
+
+//=========================================
+
+#define PORT_MASTER 27000
+#define PORT_CLIENT 27001
+#define PORT_SERVER 27500
+#define PORT_QUAKETV 27900
+
+//=========================================
+
+// out of band message id bytes
+
+// M = master, S = server, C = client, A = any
+// the second character will always be \n if the message isn't a single byte long (?? not true anymore?)
+
+#define S2C_CHALLENGE 'c'
+#define S2C_CONNECTION 'j'
+#define A2A_PING 'k' // respond with an A2A_ACK
+#define A2A_ACK 'l' // general acknowledgement without info
+#define A2A_NACK 'm' // [+ comment] general failure
+#define A2A_ECHO 'e' // for echoing
+#define A2C_PRINT 'n' // print a message on client
+
+#define S2M_HEARTBEAT 'a' // + serverinfo + userlist + fraglist
+#define A2C_CLIENT_COMMAND 'B' // + command line
+#define S2M_SHUTDOWN 'C'
+
+
+//==================
+// note that there are some defs.qc that mirror to these numbers
+// also related to svc_strings[] in cl_parse
+//==================
+
+// server to client
+#define svc_bad 0
+#define svc_nop 1
+#define svc_disconnect 2
+#define svc_updatestat 3 // [byte] [byte]
+#define nq_svc_version 4 // [long] server version
+#define nq_svc_setview 5 // [short] entity number
+#define svc_sound 6 // <see code>
+#define nq_svc_time 7 // [float] server time
+#define svc_print 8 // [byte] id [string] null terminated string
+#define svc_stufftext 9 // [string] stuffed into client's console buffer
+ // the string should be \n terminated
+#define svc_setangle 10 // [angle3] set the view angle to this absolute value
+
+#define svc_serverdata 11 // [long] protocol ...
+#define svc_lightstyle 12 // [byte] [string]
+#define nq_svc_updatename 13 // [byte] [string]
+#define svc_updatefrags 14 // [byte] [short]
+#define nq_svc_clientdata 15 // <shortbits + data>
+#define svc_stopsound 16 // <see code>
+#define nq_svc_updatecolors 17 // [byte] [byte] [byte]
+#define nq_svc_particle 18 // [vec3] <variable>
+#define svc_damage 19
+
+#define svc_spawnstatic 20
+#define svc_fte_spawnstatic2 21 // @!@!@!
+#define svc_spawnbaseline 22
+
+#define svc_temp_entity 23 // variable
+#define svc_setpause 24 // [byte] on / off
+#define nq_svc_signonnum 25 // [byte] used for the signon sequence
+
+#define svc_centerprint 26 // [string] to put in center of the screen
+
+#define svc_killedmonster 27
+#define svc_foundsecret 28
+
+#define svc_spawnstaticsound 29 // [coord3] [byte] samp [byte] vol [byte] aten
+
+#define svc_intermission 30 // [vec3_t] origin [vec3_t] angle
+#define svc_finale 31 // [string] text
+
+#define svc_cdtrack 32 // [byte] track
+#define svc_sellscreen 33
+
+#define nq_svc_cutscene 34 // same as svc_smallkick
+
+#define svc_smallkick 34 // set client punchangle to 2
+#define svc_bigkick 35 // set client punchangle to 4
+
+#define svc_updateping 36 // [byte] [short]
+#define svc_updateentertime 37 // [byte] [float]
+
+#define svc_updatestatlong 38 // [byte] [long]
+
+#define svc_muzzleflash 39 // [short] entity
+
+#define svc_updateuserinfo 40 // [byte] slot [long] uid
+ // [string] userinfo
+
+#define svc_download 41 // [short] size [size bytes]
+#define svc_playerinfo 42 // variable
+#define svc_nails 43 // [byte] num [48 bits] xyzpy 12 12 12 4 8
+#define svc_chokecount 44 // [byte] packets choked
+#define svc_modellist 45 // [strings]
+#define svc_soundlist 46 // [strings]
+#define svc_packetentities 47 // [...]
+#define svc_deltapacketentities 48 // [...]
+#define svc_maxspeed 49 // maxspeed change, for prediction
+#define svc_entgravity 50 // gravity change, for prediction
+#define svc_setinfo 51 // setinfo on a client
+#define svc_serverinfo 52 // serverinfo
+#define svc_updatepl 53 // [byte] [byte]
+#define svc_nails2 54 // [byte] num [52 bits] nxyzpy 8 12 12 12 4 8
+ // mvdsv extended svcs (for mvd playback)
+#ifdef FTE_PEXT_MODELDBL
+# define svc_fte_modellistshort 60 // [strings]
+#endif // FTE_PEXT_MODELDBL
+
+#define svc_fte_spawnbaseline2 66
+#define svc_qizmovoice 83
+
+#ifdef FTE_PEXT2_VOICECHAT
+# define svc_fte_voicechat 84
+#endif // FTE_PEXT2_VOICECHAT
+
+#ifdef MVD_PEXT1_SIMPLEPROJECTILE
+#define svc_packetsprojectiles 100 // [...]
+#define svc_deltapacketsprojectiles 101 // [...]
+#endif
+
+//==============================================
+
+// client to server
+#define clc_bad 0
+#define clc_nop 1
+//define clc_doublemove 2
+#define clc_move 3 // [[usercmd_t]
+#define clc_stringcmd 4 // [string] message
+#define clc_delta 5 // [byte] sequence number, requests delta compression of message
+#define clc_tmove 6 // teleport request, spectator only
+#define clc_upload 7 // teleport request, spectator only
+
+#ifdef MVD_PEXT1_SIMPLEPROJECTILE
+#define clc_ackframe 50
+#endif
+
+#ifdef FTE_PEXT2_VOICECHAT
+#define clc_voicechat 83 // FTE voice chat.
+#endif // FTE_PEXT2_VOICECHAT
+
+#ifdef MVD_PEXT1_SERVERSIDEWEAPON
+#define clc_mvd_weapon 200 // server-side weapon selection
+#endif // MVD_PEXT1_SERVERSIDEWEAPON
+
+// these are used in mvd parsing of debug info, even if client doesn't support protocol itself
+// selection options
+#define clc_mvd_weapon_mode_presel 1 // preselect (don't send impulses until -attack/+attack)
+#define clc_mvd_weapon_mode_iffiring 2 // don't wait for -attack before pre-selecting weapon
+#define clc_mvd_weapon_forget_ranking 4 // forget priority list after initial selection (requires extra byte for age)
+
+// hide options
+#define clc_mvd_weapon_hide_axe 8 // on subsequent -attack, hide weapon and switch to axe
+#define clc_mvd_weapon_hide_sg 16 // on subsequent -attack, hide weapon and switch to sg
+#define clc_mvd_weapon_reset_on_death 32 // on death, go back to 2 1
+#define clc_mvd_weapon_switching 64 // if not set, disable all server-side weapon switching
+
+// others
+#define clc_mvd_weapon_full_impulse 128 // if set, each weapon set as a byte, rather than packing two into one
+#if defined(MVD_PEXT1_DEBUG_ANTILAG) || defined(MVD_PEXT1_DEBUG_WEAPON)
+#define MVD_PEXT1_DEBUG
+#define MVD_PEXT1_ANTILAG_CLIENTPOS 128 // flag set on the playernum if the client positions are also included
+
+#define clc_mvd_debug 201
+
+#define clc_mvd_debug_type_antilag 1
+#define clc_mvd_debug_type_weapon 2
+#endif
+
+//==============================================
+
+// playerinfo flags from server
+// playerinfo always sends: playernum, flags, origin[] and framenumber
+#define PF_MSEC (1 << 0)
+#define PF_COMMAND (1 << 1)
+#define PF_VELOCITY1 (1 << 2)
+#define PF_VELOCITY2 (1 << 3)
+#define PF_VELOCITY3 (1 << 4)
+#define PF_MODEL (1 << 5)
+#define PF_SKINNUM (1 << 6)
+#define PF_EFFECTS (1 << 7)
+#define PF_WEAPONFRAME (1 << 8) // only sent for view player
+#define PF_DEAD (1 << 9) // don't block movement any more
+#define PF_GIB (1 << 10) // offset the view height differently
+// bits 11..13 are player move type bits (ZQuake extension)
+#define PF_PMC_SHIFT 11
+#define PF_PMC_MASK 7
+#define PF_ONGROUND (1<<14) // ZQuake extension
+#define PF_SOLID (1<<15) // ZQuake extension
+#define PF_FTE_EXTRA (1<<16) // FTE extension
+
+// encoded player move types
+#define PMC_NORMAL 0 // normal ground movement
+#define PMC_NORMAL_JUMP_HELD 1 // normal ground novement + jump_held
+#define PMC_OLD_SPECTATOR 2 // fly through walls (QW compatibility mode)
+#define PMC_SPECTATOR 3 // fly through walls
+#define PMC_FLY 4 // fly, bump into walls
+#define PMC_NONE 5 // can't move (client had better lerp the origin...)
+#define PMC_LOCK 6 // server controls view angles
+#define PMC_EXTRA3 7 // future extension
+
+//==============================================
+
+// if the high bit of the client to server byte is set, the low bits are
+// client move cmd bits
+// ms and angle2 are always sent, the others are optional
+#define CM_ANGLE1 (1 << 0)
+#define CM_ANGLE3 (1 << 1)
+#define CM_FORWARD (1 << 2)
+#define CM_SIDE (1 << 3)
+#define CM_UP (1 << 4)
+#define CM_BUTTONS (1 << 5)
+#define CM_IMPULSE (1 << 6)
+#define CM_ANGLE2 (1 << 7)
+
+//==============================================
+
+// Player flags in mvd demos.
+// Should be in server.h but unfortunately shared with cl_demo.c.
+#define DF_ORIGIN 1
+#define DF_ANGLES (1 << 3)
+#define DF_EFFECTS (1 << 6)
+#define DF_SKINNUM (1 << 7)
+#define DF_DEAD (1 << 8)
+#define DF_GIB (1 << 9)
+#define DF_WEAPONFRAME (1 << 10)
+#define DF_MODEL (1 << 11)
+
+//==============================================
+
+// the first 16 bits of a packetentities update holds 9 bits of entity number and 7 bits of flags
+// of entity number and 7 bits of flags
+#define U_ORIGIN1 (1 << 9)
+#define U_ORIGIN2 (1 << 10)
+#define U_ORIGIN3 (1 << 11)
+#define U_ANGLE2 (1 << 12)
+#define U_FRAME (1 << 13)
+#define U_REMOVE (1 << 14) // REMOVE this entity, don't add it
+#define U_MOREBITS (1 << 15)
+
+// if MOREBITS is set, these additional flags are read in next
+#define U_ANGLE1 (1 << 0)
+#define U_ANGLE3 (1 << 1)
+#define U_MODEL (1 << 2)
+#define U_COLORMAP (1 << 3)
+#define U_SKIN (1 << 4)
+#define U_EFFECTS (1 << 5)
+#define U_SOLID (1 << 6) // the entity should be solid for prediction
+
+#define U_CHECKMOREBITS ((1<<9) - 1) /* MVDSV compatibility */
+
+//fte extensions
+#ifdef PROTOCOL_VERSION_FTE
+# define U_FTE_EVENMORE (1<<7) //extension info follows
+# ifdef FTE_PEXT_SCALE
+# define U_FTE_SCALE (1<<0) //scaler of alias models
+# endif // FTE_PEXT_SCALE
+# ifdef FTE_PEXT_TRANS
+# define U_FTE_TRANS (1<<1) //transparency value
+# define PF_TRANS_Z (1<<17)
+# endif // FTE_PEXT_TRANS
+# ifdef FTE_PEXT_FATNESS
+# define U_FTE_FATNESS (1<<2) //byte describing how fat an alias model should be.
+ //moves verticies along normals
+ // Useful for vacuum chambers...
+# endif // FTE_PEXT_FATNESS
+# ifdef FTE_PEXT_MODELDBL
+# define U_FTE_MODELDBL (1<<3) //extra bit for modelindexes
+# endif // FTE_PEXT_MODELDBL
+# define U_FTE_UNUSED1 (1<<4)
+# ifdef FTE_PEXT_ENTITYDBL
+# define U_FTE_ENTITYDBL (1<<5) //use an extra byte for origin parts, cos one of them is off
+# endif // FTE_PEXT_ENTITYDBL
+# ifdef FTE_PEXT_ENTITYDBL2
+# define U_FTE_ENTITYDBL2 (1<<6) //use an extra byte for origin parts, cos one of them is off
+# endif // FTE_PEXT_ENTITYDBL2
+# define U_FTE_YETMORE (1<<7) //even more extension info stuff.
+# define U_FTE_DRAWFLAGS (1<<8) //use an extra qbyte for origin parts, cos one of them is off
+# define U_FTE_ABSLIGHT (1<<9) //Force a lightlevel
+# define U_FTE_COLOURMOD (1<<10) //rgb
+# define U_FTE_DPFLAGS (1<<11)
+# define U_FTE_TAGINFO (1<<12)
+# define U_FTE_LIGHT (1<<13)
+# define U_FTE_EFFECTS16 (1<<14)
+# define U_FTE_FARMORE (1<<15)
+#endif // PROTOCOL_VERSION_FTE
+
+//==============================================
+
+// a sound with no channel is a local only sound
+// the sound field has bits 0-2: channel, 3-12: entity
+#define SND_VOLUME (1 << 15) // a byte
+#define SND_ATTENUATION (1 << 14) // a byte
+
+#define DEFAULT_SOUND_PACKET_VOLUME 255
+#define DEFAULT_SOUND_PACKET_ATTENUATION 1.0
+
+//==============================================
+
+// svc_print messages have an id, so messages can be filtered
+#define PRINT_LOW 0
+#define PRINT_MEDIUM 1
+#define PRINT_HIGH 2
+#define PRINT_CHAT 3 // also go to chat buffer
+
+//==============================================
+
+// temp entity events
+#define TE_SPIKE 0
+#define TE_SUPERSPIKE 1
+#define TE_GUNSHOT 2
+#define TE_EXPLOSION 3
+#define TE_TAREXPLOSION 4
+#define TE_LIGHTNING1 5
+#define TE_LIGHTNING2 6
+#define TE_WIZSPIKE 7
+#define TE_KNIGHTSPIKE 8
+#define TE_LIGHTNING3 9
+#define TE_LAVASPLASH 10
+#define TE_TELEPORT 11
+#define TE_BLOOD 12
+#define TE_LIGHTNINGBLOOD 13
+
+//==============================================
+
+#define NQ_TE_EXPLOSION2 12
+#define NQ_TE_BEAM 13
+
+//==============================================
+
+#define DEFAULT_VIEWHEIGHT 22
+
+//==============================================
+
+/*
+==========================================================
+ ELEMENTS COMMUNICATED ACROSS THE NET
+==========================================================
+*/
+
+#define MAX_CLIENTS 32
+
+#define UPDATE_BACKUP 64 // copies of entity_state_t to keep buffered (must be power of two)
+#define UPDATE_MASK (UPDATE_BACKUP - 1)
+
+// entity_state_t is the information conveyed from the server
+// in an update message
+typedef struct entity_state_s {
+ int number; // edict index
+ int flags; // nolerp, etc
+ vec3_t origin;
+ vec3_t angles;
+ int modelindex;
+ int frame;
+ int colormap;
+ int skinnum;
+ int effects;
+ byte trans;
+} entity_state_t;
+
+#ifdef MVD_PEXT1_SIMPLEPROJECTILE
+#define MAX_SIMPLEPROJECTILES 64
+typedef struct sprojectile_state_s
+{
+ int number; // edict index
+ int flags; // nolerp, etc
+ int owner;
+
+ int fproj_num;
+ float time_offset;
+ float time;
+ vec3_t origin;
+ vec3_t angles;
+ int modelindex;
+ vec3_t velocity;
+} sprojectile_state_t;
+#endif
+
+#define MAX_PACKET_ENTITIES 64 // doesn't include nails
+#define MAX_PEXT256_PACKET_ENTITIES 256 // up to 256 ents, look FTE_PEXT_256PACKETENTITIES
+#define MAX_MVD_PACKET_ENTITIES 300 // !!! MUST not be less than any of above values!!!
+
+typedef struct packet_entities_s {
+ int num_entities;
+ entity_state_t entities[MAX_MVD_PACKET_ENTITIES];
+#ifdef MVD_PEXT1_SIMPLEPROJECTILE
+ int num_sprojectiles;
+ sprojectile_state_t sprojectiles[MAX_SIMPLEPROJECTILES];
+#endif
+} packet_entities_t;
+
+typedef struct usercmd_s {
+ byte msec;
+ vec3_t angles;
+ short forwardmove;
+ short sidemove;
+ short upmove;
+ byte buttons;
+ byte impulse;
+ byte impulse_pred; //this is our impulse, even if it was overrode by serversideweapon
+} usercmd_t;
+
+//==============================================
+
+// usercmd button bits
+#define BUTTON_ATTACK (1 << 0)
+#define BUTTON_JUMP (1 << 1)
+#define BUTTON_USE (1 << 2)
+#define BUTTON_ATTACK2 (1 << 3)
+
+//==============================================
+
+// demo recording
+// TODO: Make into an enum.
+#define dem_cmd 0 // A user cmd movement message.
+#define dem_read 1 // A net message.
+#define dem_set 2 // Appears only once at the beginning of a demo,
+ // contains the outgoing / incoming sequence numbers at demo start.
+#define dem_multiple 3 // MVD ONLY. This message is directed to several clients.
+#define dem_single 4 // MVD ONLY. This message is directed to a single client.
+#define dem_stats 5 // MVD ONLY. Stats update for a player.
+#define dem_all 6 // MVD ONLY. This message is directed to all clients.
+
+//==============================================
+
+//
+// Used for saving a temporary list of temp entities.
+
+#ifndef SERVERONLY
+# define MAX_TEMP_ENTITIES 32
+typedef struct temp_entity_s {
+ vec3_t pos; // Position of temp entity.
+ float time; // Time of temp entity.
+ int type; // Type of temp entity.
+} temp_entity_t;
+
+typedef struct temp_entity_list_s {
+ temp_entity_t list[MAX_TEMP_ENTITIES];
+ int count;
+} temp_entity_list_t;
+#endif // !SERVERONLY
+
+//==============================================
+
+#ifdef MVD_PEXT1_HIDDEN_MESSAGES
+// hidden messages inserted into .mvd files
+// embedded in dem_multiple(0) - should be safely skipped in clients
+// format is <int:length> <short:type>* where <type> is duplicated if 0xFFFF. <length> is length of the data packet, not the header
+enum {
+ mvdhidden_antilag_position = 0x0000, // mvdhidden_antilag_position_header_t mvdhidden_antilag_position_t*
+ mvdhidden_usercmd = 0x0001, // <byte: playernum> <byte:dropnum> <byte: msec, vec3_t: angles, short[3]: forward side up> <byte: buttons> <byte: impulse>
+ mvdhidden_usercmd_weapons = 0x0002, // <byte: source playernum> <int: items> <byte[4]: ammo> <byte: result> <byte*: weapon priority (nul terminated)>
+ mvdhidden_demoinfo = 0x0003, // <short: block#> <byte[] content>
+ mvdhidden_commentary_track = 0x0004, // <byte: track#> [todo... <byte: audioformat> <string: short-name> <string: author(s)> <float: start-offset>?]
+ mvdhidden_commentary_data = 0x0005, // <byte: track#> [todo... format-specific]
+ mvdhidden_commentary_text_segment = 0x0006, // <byte: track#> [todo... <float: duration> <string: text (utf8)>]
+ mvdhidden_dmgdone = 0x0007, // <byte: type-flags> <short: damaged ent#> <short: damaged ent#> <short: damage>
+ mvdhidden_usercmd_weapons_ss = 0x0008, // (same format as mvdhidden_usercmd_weapons)
+ mvdhidden_usercmd_weapon_instruction = 0x0009, // <byte: playernum> <byte: flags> <int: sequence#> <int: mode> <byte[10]: weaponlist>
+ mvdhidden_paused_duration = 0x000A, // <byte: msec> ... actual time elapsed, not gametime (can be used to keep stream running) ... expected to be QTV only
+ mvdhidden_extended = 0xFFFF // doubt we'll ever get here: read next short...
+};
+
+#define sizeof_mvdhidden_block_header_t_usercmd (1 + 1 + 1 + 3 * 4 + 3 * 2 + 1 + 1)
+#define sizeof_mvdhidden_usercmd_weapon_instruction (1 + 1 + 4 + 4 + 10)
+
+typedef struct {
+ int length; // this is the number of bytes in the packet, not including this header
+ unsigned short type_id; // If 0xFFFF, read again to extend range
+} mvdhidden_block_header_t;
+
+#define sizeof_mvdhidden_block_header_t_range0 (4 + 2)
+
+typedef struct {
+ byte playernum;
+ byte players;
+ unsigned int incoming_seq;
+ float server_time;
+ float target_time;
+} mvdhidden_antilag_position_header_t;
+
+#define sizeof_mvdhidden_antilag_position_header_t (1 + 1 + 4 + 4 + 4)
+
+typedef struct {
+ float clientpos[3];
+ float pos[3];
+ byte playernum;
+ byte msec;
+ byte predmodel;
+} mvdhidden_antilag_position_t;
+
+#define sizeof_mvdhidden_antilag_position_t (12 + 12 + 1 + 1 + 1)
+
+#define MVDHIDDEN_DMGDONE_SPLASHDAMAGE (1 << 15)
+
+// mvdhidden_usercmd_weapon_instruction
+#define MVDHIDDEN_SSWEAPON_PENDING 1
+#define MVDHIDDEN_SSWEAPON_HIDE_AXE 2
+#define MVDHIDDEN_SSWEAPON_HIDE_SG 4
+#define MVDHIDDEN_SSWEAPON_HIDEONDEATH 8
+#define MVDHIDDEN_SSWEAPON_WASFIRING 16
+#define MVDHIDDEN_SSWEAPON_ENABLED 32
+#define MVDHIDDEN_SSWEAPON_FORGETORDER 64
+
+#endif // MVD_PEXT1_HIDDEN_MESSAGES
+
+//==============================================
+
+#define MAX_SCOREBOARDNAME 16
+#define MAX_INFO_STRING 1024
+
+#endif // __PROTOCOL_H__
diff --git a/games/ezquake/slack-desc b/games/ezquake/slack-desc
new file mode 100644
index 0000000000..79f7f16ff6
--- /dev/null
+++ b/games/ezquake/slack-desc
@@ -0,0 +1,19 @@
+# HOW TO EDIT THIS FILE:
+# The "handy ruler" below makes it easier to edit a package description. Line
+# up the first '|' above the ':' following the base package name, and the '|'
+# on the right side marks the last column you can put a character in. You must
+# make exactly 11 lines for the formatting to be correct. It's also
+# customary to leave one space after the ':'.
+
+ |-----handy-ruler------------------------------------------------------|
+ezquake: ezquake (a modern QuakeWorld client)
+ezquake:
+ezquake: a modern QuakeWorld client focused on competitive online play.
+ezquake:
+ezquake:
+ezquake:
+ezquake:
+ezquake:
+ezquake:
+ezquake:
+ezquake:
diff --git a/games/f1spirit/03_gcc6.patch b/games/f1spirit/03_gcc6.patch
new file mode 100644
index 0000000000..fbae3bd832
--- /dev/null
+++ b/games/f1spirit/03_gcc6.patch
@@ -0,0 +1,12 @@
+diff -Naur f1spirit-0.rc9.1615.orig/sources/auxiliar.cpp f1spirit-0.rc9.1615/sources/auxiliar.cpp
+--- f1spirit-0.rc9.1615.orig/sources/auxiliar.cpp 2009-02-06 10:54:49.000000000 +0100
++++ f1spirit-0.rc9.1615/sources/auxiliar.cpp 2017-06-23 11:57:14.145689872 +0200
+@@ -93,7 +93,7 @@
+
+ if (tmp == 0 ||
+ mask == 0)
+- return false;
++ return 0;
+
+ res = SDL_DisplayFormatAlpha(tmp);
+
diff --git a/games/f1spirit/f1spirit.SlackBuild b/games/f1spirit/f1spirit.SlackBuild
index 8109ea68a7..e43bcf79ac 100644
--- a/games/f1spirit/f1spirit.SlackBuild
+++ b/games/f1spirit/f1spirit.SlackBuild
@@ -1,29 +1,39 @@
-#!/bin/sh
+#!/bin/bash
# Slackware build script for f1spirit
# Written by Zbigniew Baniewski, <Zbigniew [dot] Baniewski [at] gmail [dot] com>
+cd $(dirname $0) ; CWD=$(pwd)
+
PRGNAM=f1spirit
VERSION=${VERSION:-0.rc9.1615}
BUILD=${BUILD:-1}
TAG=${TAG:-_SBo}
+PKGTYPE=${PKGTYPE:-tgz}
if [ -z "$ARCH" ]; then
case "$( uname -m )" in
- i?86) ARCH=i486 ;;
+ i?86) ARCH=i586 ;;
arm*) ARCH=arm ;;
*) ARCH=$( uname -m ) ;;
esac
fi
-CWD=$(pwd)
+# If the variable PRINT_PACKAGE_NAME is set, then this script will report what
+# the name of the created package would be, and then exit. This information
+# could be useful to other scripts.
+if [ ! -z "${PRINT_PACKAGE_NAME}" ]; then
+ echo "$PRGNAM-$VERSION-$ARCH-$BUILD$TAG.$PKGTYPE"
+ exit 0
+fi
+
TMP=${TMP:-/tmp/SBo}
PKG=$TMP/package-$PRGNAM
OUTPUT=${OUTPUT:-/tmp}
-if [ "$ARCH" = "i486" ]; then
- SLKCFLAGS="-O2 -march=i486 -mtune=i686"
+if [ "$ARCH" = "i586" ]; then
+ SLKCFLAGS="-O2 -march=i586 -mtune=i686"
LIBDIRSUFFIX=""
elif [ "$ARCH" = "i686" ]; then
SLKCFLAGS="-O2 -march=i686 -mtune=i686"
@@ -53,6 +63,9 @@ find -L . \
\( -perm 666 -o -perm 664 -o -perm 640 -o -perm 600 -o -perm 444 \
-o -perm 440 -o -perm 400 \) -exec chmod 644 {} \;
+# Fix for the newer gccs
+patch -p1 < $CWD/03_gcc6.patch
+
make install PREFIX=$PKG/usr
find $PKG -print0 | xargs -0 file | grep -e "executable" -e "shared object" | grep ELF \
@@ -67,4 +80,4 @@ cat $CWD/slack-desc > $PKG/install/slack-desc
cat $CWD/doinst.sh > $PKG/install/doinst.sh
cd $PKG
-/sbin/makepkg -l y -c n $OUTPUT/$PRGNAM-$VERSION-$ARCH-$BUILD$TAG.${PKGTYPE:-tgz}
+/sbin/makepkg -l y -c n $OUTPUT/$PRGNAM-$VERSION-$ARCH-$BUILD$TAG.$PKGTYPE
diff --git a/games/fbalpha/README b/games/fbalpha/README
deleted file mode 100644
index 29c1ae8fb3..0000000000
--- a/games/fbalpha/README
+++ /dev/null
@@ -1,17 +0,0 @@
-Final Burn Alpha is an arcade system emulator that can be used as a
-libretro core.
-
-This package was previoulsy called libretro-fba.
-
-Final Burn Alpha may require both a parent and child romset to play
-games with, rebuilding romsets so they work properly is not supported
-on GNU/Linux, but the required dat files are included in the src tree.
-
-Romsets built for FB Alpha (0.2.97.38) are recommended for best
-results.
-
-If you are building fbalpha for a Raspberry Pi 2, use:
- RPI2=1 ./fbalpha.SlackBuild
-
-To build the debugging symbols use:
- DEBUG=1 ./fbalpha.SlackBuild
diff --git a/games/fbalpha/fbalpha.SlackBuild b/games/fbalpha/fbalpha.SlackBuild
deleted file mode 100644
index 9262ef393c..0000000000
--- a/games/fbalpha/fbalpha.SlackBuild
+++ /dev/null
@@ -1,89 +0,0 @@
-#!/bin/sh
-
-# Slackware build script for fbalpha
-
-# Copyright 2016-2018 Hunter Sezen California, USA
-# All rights reserved.
-#
-# Redistribution and use of this script, with or without modification, is
-# permitted provided that the following conditions are met:
-#
-# 1. Redistributions of this script must retain the above copyright
-# notice, this list of conditions and the following disclaimer.
-#
-# THIS SOFTWARE IS PROVIDED BY THE AUTHOR "AS IS" AND ANY EXPRESS OR IMPLIED
-# WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE IMPLIED WARRANTIES OF
-# MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE ARE DISCLAIMED. IN NO
-# EVENT SHALL THE AUTHOR BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL,
-# SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT LIMITED TO,
-# PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, DATA, OR PROFITS;
-# OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY,
-# WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR
-# OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF THIS SOFTWARE, EVEN IF
-# ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
-
-PRGNAM=fbalpha
-LIBNAM=${PRGNAM}_libretro
-VERSION=${VERSION:-2018.11.03_a26fdf9}
-BUILD=${BUILD:-1}
-TAG=${TAG:-_SBo}
-
-if [ -z "$ARCH" ]; then
- case "$( uname -m )" in
- i?86) ARCH=i586 ;;
- arm*) ARCH=arm ;;
- *) ARCH=$( uname -m ) ;;
- esac
-fi
-
-CWD=$(pwd)
-TMP=${TMP:-/tmp/SBo}
-PKG=$TMP/package-$PRGNAM
-OUTPUT=${OUTPUT:-/tmp}
-
-LIBDIRSUFFIX=
-[ "$ARCH" = x86_64 ] && LIBDIRSUFFIX=64
-
-RPI2=${RPI2:-0}
-
-set -eu
-
-rm -rf $PKG
-mkdir -p $TMP $PKG $OUTPUT
-cd $TMP
-rm -rf $PRGNAM-$VERSION
-tar xvf $CWD/$PRGNAM-$VERSION.tar.xz
-cd $PRGNAM-$VERSION
-chown -R root:root .
-find -L . \
- \( -perm 777 -o -perm 775 -o -perm 750 -o -perm 711 -o -perm 555 \
- -o -perm 511 \) -exec chmod 755 {} \; -o \
- \( -perm 666 -o -perm 664 -o -perm 640 -o -perm 600 -o -perm 444 \
- -o -perm 440 -o -perm 400 \) -exec chmod 644 {} \;
-
-[ "${DEBUG:=0}" != 0 ] && DEBUG=1
-
-case "$RPI2" in
- 1) PLATFORM='platform=rpi2' ;;
- *) PLATFORM= ;;
-esac
-
-make -f makefile.libretro DEBUG=$DEBUG $PLATFORM
-
-install -Dm0644 $LIBNAM.so $PKG/usr/lib${LIBDIRSUFFIX}/libretro/$LIBNAM.so
-install -Dm0644 $LIBNAM.info $PKG/usr/lib${LIBDIRSUFFIX}/libretro/info/$LIBNAM.info
-
-if [ $DEBUG = 0 ]; then
- find $PKG -print0 | xargs -0 file | grep -e "executable" -e "shared object" | grep ELF \
- | cut -f 1 -d : | xargs strip --strip-unneeded 2> /dev/null || true
-fi
-
-mkdir -p $PKG/usr/doc/$PRGNAM-$VERSION
-cp -a README.md gamelist.txt src/license.txt $PKG/usr/doc/$PRGNAM-$VERSION
-cat $CWD/$PRGNAM.SlackBuild > $PKG/usr/doc/$PRGNAM-$VERSION/$PRGNAM.SlackBuild
-
-mkdir -p $PKG/install
-cat $CWD/slack-desc > $PKG/install/slack-desc
-
-cd $PKG
-/sbin/makepkg -l y -c n $OUTPUT/$PRGNAM-$VERSION-$ARCH-$BUILD$TAG.${PKGTYPE:-tgz}
diff --git a/games/fbalpha/fbalpha.info b/games/fbalpha/fbalpha.info
deleted file mode 100644
index 7ab0a1e104..0000000000
--- a/games/fbalpha/fbalpha.info
+++ /dev/null
@@ -1,10 +0,0 @@
-PRGNAM="fbalpha"
-VERSION="2018.11.03_a26fdf9"
-HOMEPAGE="https://www.libretro.com/"
-DOWNLOAD="http://slackless.raccoons.tech/src/libretro/fbalpha-2018.11.03_a26fdf9.tar.xz"
-MD5SUM="3e2e608993617046e10abf94fff3714c"
-DOWNLOAD_x86_64=""
-MD5SUM_x86_64=""
-REQUIRES="RetroArch"
-MAINTAINER="orphaned - no maintainer"
-EMAIL="nobody@nowhere.com"
diff --git a/games/fbalpha/slack-desc b/games/fbalpha/slack-desc
deleted file mode 100644
index defdb27b35..0000000000
--- a/games/fbalpha/slack-desc
+++ /dev/null
@@ -1,19 +0,0 @@
-# HOW TO EDIT THIS FILE:
-# The "handy ruler" below makes it easier to edit a package description.
-# Line up the first '|' above the ':' following the base package name, and
-# the '|' on the right side marks the last column you can put a character in.
-# You must make exactly 11 lines for the formatting to be correct. It's also
-# customary to leave one space after the ':' except on otherwise blank lines.
-
- |-----handy-ruler------------------------------------------------------|
-fbalpha: fbalpha (libretro port of Final Burn Alpha v0.2.97.38)
-fbalpha:
-fbalpha: Final Burn Alpha is an arcade system emulator that can be used as a
-fbalpha: libretro core.
-fbalpha:
-fbalpha: Homepage: https://www.libretro.com/
-fbalpha:
-fbalpha:
-fbalpha:
-fbalpha:
-fbalpha:
diff --git a/games/fceux/README b/games/fceux/README
index 0250aa6a2f..8b0cf718e0 100644
--- a/games/fceux/README
+++ b/games/fceux/README
@@ -2,3 +2,5 @@ fceux is a Nintendo Entertainment System (NES), Famicom, and
Famicom Disk System (FDS) emulator. It supports both PAL
(European) and NTSC (USA/JPN) modes. It supports both Windows
and SDL versions for cross compatibility.
+
+Optional dependencies are x264 and x265
diff --git a/games/fceux/fceux.SlackBuild b/games/fceux/fceux.SlackBuild
index 476bb144be..f856ad9b91 100644
--- a/games/fceux/fceux.SlackBuild
+++ b/games/fceux/fceux.SlackBuild
@@ -1,8 +1,8 @@
-#!/bin/sh
+#!/bin/bash
# Slackware build script for fceux
-# Copyright 2016 Matt Dinslage (daedra1980@gmail.com), Springfield, MO, USA
+# Copyright 2021 Matt Dinslage (daedra1980@gmail.com), Springfield, MO, USA
# All rights reserved.
#
# Redistribution and use of this script, with or without modification, is
@@ -22,36 +22,45 @@
# OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF THIS SOFTWARE, EVEN IF
# ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
+cd $(dirname $0) ; CWD=$(pwd)
PRGNAM=fceux
-VERSION=${VERSION:-2.2.3}
-BUILD=${BUILD:-2}
+VERSION=${VERSION:-2.6.6}
+BUILD=${BUILD:-1}
TAG=${TAG:-_SBo}
+PKGTYPE=${PKGTYPE:-tgz}
if [ -z "$ARCH" ]; then
case "$( uname -m )" in
- i?86) ARCH=i486 ;;
+ i?86) ARCH=i586 ;;
arm*) ARCH=arm ;;
*) ARCH=$( uname -m ) ;;
esac
fi
-CWD=$(pwd)
+# If the variable PRINT_PACKAGE_NAME is set, then this script will report what
+# the name of the created package would be, and then exit. This information
+# could be useful to other scripts.
+if [ ! -z "${PRINT_PACKAGE_NAME}" ]; then
+ echo "$PRGNAM-$VERSION-$ARCH-$BUILD$TAG.$PKGTYPE"
+ exit 0
+fi
+
TMP=${TMP:-/tmp/SBo}
PKG=$TMP/package-$PRGNAM
OUTPUT=${OUTPUT:-/tmp}
-if [ "$ARCH" = "i486" ]; then
- SLKCFLAGS="'-O2', '-march=i486', '-mtune=i686'"
+if [ "$ARCH" = "i586" ]; then
+ SLKCFLAGS="-O2 -march=i586 -mtune=i686"
LIBDIRSUFFIX=""
elif [ "$ARCH" = "i686" ]; then
- SLKCFLAGS="'-O2', '-march=i686', '-mtune=i686'"
+ SLKCFLAGS="-O2 -march=i686 -mtune=i686"
LIBDIRSUFFIX=""
elif [ "$ARCH" = "x86_64" ]; then
- SLKCFLAGS="'-O2', '-fPIC'"
+ SLKCFLAGS="-O2 -fPIC"
LIBDIRSUFFIX="64"
else
- SLKCFLAGS="'-O2'"
+ SLKCFLAGS="-O2"
LIBDIRSUFFIX=""
fi
@@ -61,7 +70,7 @@ rm -rf $PKG
mkdir -p $TMP $PKG $OUTPUT
cd $TMP
rm -rf $PRGNAM-$VERSION
-tar xvf $CWD/$PRGNAM-$VERSION.src.tar.?z*
+tar xvf $CWD/$PRGNAM-$VERSION.tar.gz
cd $PRGNAM-$VERSION
chown -R root:root .
find -L . \
@@ -70,23 +79,24 @@ find -L . \
\( -perm 666 -o -perm 664 -o -perm 640 -o -perm 600 -o -perm 444 \
-o -perm 440 -o -perm 400 \) -exec chmod 644 {} \;
-# Fix building with python3
-patch -p1 < $CWD/scons-python3.patch
-
-# Set our CFLAGS, move man pages, disable debub symbols
-sed -i \
- -e "s|'-Wall'|${SLKCFLAGS}, '-Wall'|" \
- -e "s|/share/man/man6/|/man/man6/|" \
- -e "s|/share/man/man6/|/man/man6/|" \
- -e "s|symbols', 1|symbols', 0|" \
- -e "s|release', 0|release', 1|" \
- SConstruct
-
-scons install -i --prefix=$PKG/usr
-
-# Delete low res icon and replace below, also delete unneeded .dll files
-rm -f $PKG/usr/share/pixmaps/fceux.png
-rm -f $PKG/usr/share/$PRGNAM/*.dll
+# Fix incorrect version name
+sed -i 's/-interim git//g' src/version.h
+
+mkdir -p build
+cd build
+ cmake \
+ -DCMAKE_C_FLAGS:STRING="$SLKCFLAGS" \
+ -DCMAKE_CXX_FLAGS:STRING="$SLKCFLAGS" \
+ -DCMAKE_INSTALL_PREFIX=/usr \
+ -DLIB_SUFFIX=${LIBDIRSUFFIX} \
+ -DCMAKE_INSTALL_MANDIR=/usr/man \
+ -DCMAKE_BUILD_TYPE=Release ..
+ make
+ make install DESTDIR=$PKG
+cd ..
+
+# remove unused files
+rm -rf $PKG/usr/share/$PRGNAM/*.dll
find $PKG -print0 | xargs -0 file | grep -e "executable" -e "shared object" | grep ELF \
| cut -f 1 -d : | xargs strip --strip-unneeded 2> /dev/null || true
@@ -95,15 +105,14 @@ find $PKG/usr/man -type f -exec gzip -9 {} \;
for i in $( find $PKG/usr/man -type l ) ; do ln -s $( readlink $i ).gz $i.gz ; rm $i ; done
mkdir -p $PKG/usr/doc/$PRGNAM-$VERSION
-cp -a documentation/* COPYING *.txt $PKG/usr/doc/$PRGNAM-$VERSION
+cp -a \
+ README \
+ $PKG/usr/doc/$PRGNAM-$VERSION
cat $CWD/$PRGNAM.SlackBuild > $PKG/usr/doc/$PRGNAM-$VERSION/$PRGNAM.SlackBuild
-#Add icon
-cat $CWD/fceux.png > $PKG/usr/share/pixmaps/fceux.png
-
mkdir -p $PKG/install
cat $CWD/slack-desc > $PKG/install/slack-desc
cat $CWD/doinst.sh > $PKG/install/doinst.sh
cd $PKG
-/sbin/makepkg -l y -c n $OUTPUT/$PRGNAM-$VERSION-$ARCH-$BUILD$TAG.${PKGTYPE:-tgz}
+/sbin/makepkg -l y -c n $OUTPUT/$PRGNAM-$VERSION-$ARCH-$BUILD$TAG.$PKGTYPE
diff --git a/games/fceux/fceux.desktop b/games/fceux/fceux.desktop
deleted file mode 100644
index c21ccf8a6a..0000000000
--- a/games/fceux/fceux.desktop
+++ /dev/null
@@ -1,9 +0,0 @@
-[Desktop Entry]
-Name=Fceux
-GenericName=Nintendo/Famicon Emulator
-Exec=fceux
-Terminal=false
-Type=Application
-Categories=Game;Emulator;
-Icon=/usr/share/pixmaps/Nintendo.png
-StartupNotify=false
diff --git a/games/fceux/fceux.info b/games/fceux/fceux.info
index faa83b3399..31e6be5bd4 100644
--- a/games/fceux/fceux.info
+++ b/games/fceux/fceux.info
@@ -1,10 +1,10 @@
PRGNAM="fceux"
-VERSION="2.2.3"
+VERSION="2.6.6"
HOMEPAGE="http://fceux.com/web/home.html"
-DOWNLOAD="http://downloads.sourceforge.net/fceultra/fceux-2.2.3.src.tar.gz"
-MD5SUM="8002b161ea3342decce1abcca76db84a"
+DOWNLOAD="https://github.com/TASEmulators/fceux/archive/v2.6.6/fceux-2.6.6.tar.gz"
+MD5SUM="8e1aede624ebe26f0a936daba3b87328"
DOWNLOAD_x86_64=""
MD5SUM_x86_64=""
-REQUIRES=""
+REQUIRES="libminizip"
MAINTAINER="M.Dinslage"
EMAIL="daedra1980@gmail.com"
diff --git a/games/fceux/fceux.png b/games/fceux/fceux.png
deleted file mode 100644
index a9e7823333..0000000000
--- a/games/fceux/fceux.png
+++ /dev/null
Binary files differ
diff --git a/games/fceux/scons-python3.patch b/games/fceux/scons-python3.patch
deleted file mode 100644
index c5a1080f60..0000000000
--- a/games/fceux/scons-python3.patch
+++ /dev/null
@@ -1,109 +0,0 @@
---- fceux-2.2.3/SConstruct.orig 2019-07-26 18:04:29.368573309 +0000
-+++ fceux-2.2.3/SConstruct 2019-07-26 18:04:31.975265342 +0000
-@@ -46,30 +46,30 @@
- # Default compiler flags:
- env.Append(CCFLAGS = ['-Wall', '-Wno-write-strings', '-Wno-sign-compare'])
-
--if os.environ.has_key('PLATFORM'):
-+if os.environ.get('PLATFORM'):
- env.Replace(PLATFORM = os.environ['PLATFORM'])
--if os.environ.has_key('CC'):
-+if os.environ.get('CC'):
- env.Replace(CC = os.environ['CC'])
--if os.environ.has_key('CXX'):
-+if os.environ.get('CXX'):
- env.Replace(CXX = os.environ['CXX'])
--if os.environ.has_key('WINDRES'):
-+if os.environ.get('WINDRES'):
- env.Replace(WINDRES = os.environ['WINDRES'])
--if os.environ.has_key('CFLAGS'):
-+if os.environ.get('CFLAGS'):
- env.Append(CCFLAGS = os.environ['CFLAGS'].split())
--if os.environ.has_key('CXXFLAGS'):
-+if os.environ.get('CXXFLAGS'):
- env.Append(CXXFLAGS = os.environ['CXXFLAGS'].split())
--if os.environ.has_key('CPPFLAGS'):
-+if os.environ.get('CPPFLAGS'):
- env.Append(CPPFLAGS = os.environ['CPPFLAGS'].split())
--if os.environ.has_key('LDFLAGS'):
-+if os.environ.get('LDFLAGS'):
- env.Append(LINKFLAGS = os.environ['LDFLAGS'].split())
--if os.environ.has_key('PKG_CONFIG_PATH'):
-+if os.environ.get('PKG_CONFIG_PATH'):
- env['ENV']['PKG_CONFIG_PATH'] = os.environ['PKG_CONFIG_PATH']
--if not os.environ.has_key('PKG_CONFIG_PATH') and env['PLATFORM'] == 'darwin':
-+if not os.environ.get('PKG_CONFIG_PATH') and env['PLATFORM'] == 'darwin':
- env['ENV']['PKG_CONFIG_PATH'] = "/usr/local/lib/pkgconfig:/opt/X11/lib/pkgconfig"
--if os.environ.has_key('PKG_CONFIG_LIBDIR'):
-+if os.environ.get('PKG_CONFIG_LIBDIR'):
- env['ENV']['PKG_CONFIG_LIBDIR'] = os.environ['PKG_CONFIG_LIBDIR']
-
--print "platform: ", env['PLATFORM']
-+print ("platform: ", env['PLATFORM'])
-
- # compile with clang
- if env['CLANG']:
-@@ -103,18 +103,18 @@
- assert conf.CheckLibWithHeader('z', 'zlib.h', 'c', 'inflate;', 1), "please install: zlib"
- if env['SDL2']:
- if not conf.CheckLib('SDL2'):
-- print 'Did not find libSDL2 or SDL2.lib, exiting!'
-+ print ('Did not find libSDL2 or SDL2.lib, exiting!')
- Exit(1)
- env.Append(CPPDEFINES=["_SDL2"])
- env.ParseConfig('pkg-config sdl2 --cflags --libs')
- else:
- if not conf.CheckLib('SDL'):
-- print 'Did not find libSDL or SDL.lib, exiting!'
-+ print ('Did not find libSDL or SDL.lib, exiting!')
- Exit(1)
- env.ParseConfig('sdl-config --cflags --libs')
- if env['GTK']:
- if not conf.CheckLib('gtk-x11-2.0'):
-- print 'Could not find libgtk-2.0, exiting!'
-+ print ('Could not find libgtk-2.0, exiting!')
- Exit(1)
- # Add compiler and linker flags from pkg-config
- config_string = 'pkg-config --cflags --libs gtk+-2.0'
-@@ -153,7 +153,7 @@
- env.Append(CCFLAGS = ["-I/usr/include/lua"])
- lua_available = True
- if lua_available == False:
-- print 'Could not find liblua, exiting!'
-+ print ('Could not find liblua, exiting!')
- Exit(1)
- else:
- env.Append(CCFLAGS = ["-Isrc/lua/src"])
-@@ -167,7 +167,7 @@
- gd = conf.CheckLib('gd', autoadd=1)
- if gd == 0:
- env['LOGO'] = 0
-- print 'Did not find libgd, you won\'t be able to create a logo screen for your avis.'
-+ print ('Did not find libgd, you won\'t be able to create a logo screen for your avis.')
-
- if env['OPENGL'] and conf.CheckLibWithHeader('GL', 'GL/gl.h', 'c', autoadd=1):
- conf.env.Append(CCFLAGS = "-DOPENGL")
-@@ -181,8 +181,8 @@
- if env['FRAMESKIP']:
- env.Append(CPPDEFINES = ['FRAMESKIP'])
-
--print "base CPPDEFINES:",env['CPPDEFINES']
--print "base CCFLAGS:",env['CCFLAGS']
-+print ("base CPPDEFINES:",env['CPPDEFINES'])
-+print ("base CCFLAGS:",env['CCFLAGS'])
-
- if env['DEBUG']:
- env.Append(CPPDEFINES=["_DEBUG"], CCFLAGS = ['-g', '-O0'])
---- fceux-2.2.3/src/SConscript.orig 2019-07-26 18:08:11.297535443 +0000
-+++ fceux-2.2.3/src/SConscript 2019-07-26 18:08:33.857781956 +0000
-@@ -33,7 +33,7 @@
- platform_files = SConscript('drivers/sdl/SConscript')
- file_list.append(platform_files)
-
--print env['LINKFLAGS']
-+print (env['LINKFLAGS'])
-
- if env['PLATFORM'] == 'win32':
- fceux = env.Program('fceux.exe', file_list)
-
-
diff --git a/games/ffgo/doinst.sh b/games/ffgo/doinst.sh
index fecaef1312..2d3b80022d 100644
--- a/games/ffgo/doinst.sh
+++ b/games/ffgo/doinst.sh
@@ -8,7 +8,7 @@ config() {
fi
}
-CONF=/usr/libLIBDIRSUFFIX/pythonPY3VER/site-packages/ffgo/data/config
+CONF=usr/libLIBDIRSUFFIX/pythonPY3VER/site-packages/ffgo/data/config
for conf in $CONF/*.new ; do
config ${conf}
diff --git a/games/ffgo/ffgo.SlackBuild b/games/ffgo/ffgo.SlackBuild
index 1cff7b6e9c..c6de50dbd5 100644
--- a/games/ffgo/ffgo.SlackBuild
+++ b/games/ffgo/ffgo.SlackBuild
@@ -1,8 +1,8 @@
-#!/bin/sh
+#!/bin/bash
# Slackware build script for ffgo
-# Copyright 2017 Philip Lacroix <slackph at posteo dot de>
+# Copyright 2017-2023 Philip Lacroix <slackph at posteo dot de>
# All rights reserved.
#
# Redistribution and use of this script, with or without modification, is
@@ -22,11 +22,15 @@
# OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF THIS SOFTWARE, EVEN IF
# ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
+cd $(dirname $0) ; CWD=$(pwd)
+
PRGNAM=ffgo
SRCNAM=FFGo
-VERSION=${VERSION:-1.12.3}
+TARNAM=python3-${SRCNAM}
+VERSION=${VERSION:-1.12.7}
BUILD=${BUILD:-1}
TAG=${TAG:-_SBo}
+PKGTYPE=${PKGTYPE:-tgz}
if [ -z "$ARCH" ]; then
case "$( uname -m )" in
@@ -36,9 +40,13 @@ if [ -z "$ARCH" ]; then
esac
fi
-CWD=$(pwd)
+if [ ! -z "${PRINT_PACKAGE_NAME}" ]; then
+ echo "$PRGNAM-$VERSION-$ARCH-$BUILD$TAG.$PKGTYPE"
+ exit 0
+fi
+
TMP=${TMP:-/tmp/SBo}
-PKG=${PKG:-$TMP/package-$PRGNAM}
+PKG=$TMP/package-$PRGNAM
OUTPUT=${OUTPUT:-/tmp}
if [ "$ARCH" = "x86_64" ]; then
@@ -53,7 +61,7 @@ rm -rf $PKG
mkdir -p $TMP $PKG $OUTPUT
cd $TMP
rm -rf $SRCNAM-$VERSION
-tar xvzf $CWD/$SRCNAM-$VERSION.tar.gz
+tar xvzf $CWD/$TARNAM-$VERSION.tar.gz
cd $SRCNAM-$VERSION
chown -R root:root .
@@ -68,7 +76,7 @@ python3 setup.py install --root=$PKG
find $PKG -print0 | xargs -0 file | grep -e "executable" -e "shared object" \
| grep ELF | cut -f 1 -d : | xargs strip --strip-unneeded 2> /dev/null || true
-# Grab Python 3 version.
+# See Python 3 version.
PY3VER=$(python3 --version | sed -e "s~.*\(3\.[0-9]*\).*~\1~")
PRGETC=$PKG/etc/$PRGNAM
@@ -96,4 +104,4 @@ sed -i "s~LIBDIRSUFFIX~${LIBDIRSUFFIX}~" $PKG/install/doinst.sh
sed -i "s~PY3VER~${PY3VER}~" $PKG/install/doinst.sh
cd $PKG
-/sbin/makepkg -l y -c n $OUTPUT/$PRGNAM-$VERSION-$ARCH-$BUILD$TAG.${PKGTYPE:-tgz}
+/sbin/makepkg -l y -c n $OUTPUT/$PRGNAM-$VERSION-$ARCH-$BUILD$TAG.$PKGTYPE
diff --git a/games/ffgo/ffgo.info b/games/ffgo/ffgo.info
index 02bb921103..c6e596c9d1 100644
--- a/games/ffgo/ffgo.info
+++ b/games/ffgo/ffgo.info
@@ -1,10 +1,10 @@
PRGNAM="ffgo"
-VERSION="1.12.3"
+VERSION="1.12.7"
HOMEPAGE="http://frougon.net/projects/FFGo"
-DOWNLOAD="http://frougon.net/projects/FFGo/dist/1.12.3/FFGo-1.12.3.tar.gz"
-MD5SUM="ab67e2e83d8829d3f86be907285718c0"
+DOWNLOAD="http://frougon.net/projects/FFGo/dist/1.12.7/python3-FFGo-1.12.7.tar.gz"
+MD5SUM="42715037f3f12cfda97470301f1726ea"
DOWNLOAD_x86_64=""
MD5SUM_x86_64=""
-REQUIRES="FlightGear CondConfigParser python3-pillow"
+REQUIRES="FlightGear CondConfigParser GeographicLib geographiclib-python"
MAINTAINER="Philip Lacroix"
EMAIL="slackph at posteo dot de"
diff --git a/games/fgo/doinst.sh b/games/fgo/doinst.sh
index a23727e61f..2a7aba6139 100644
--- a/games/fgo/doinst.sh
+++ b/games/fgo/doinst.sh
@@ -8,7 +8,7 @@ config() {
fi
}
-for conf in /opt/fgo/data/config/*.new ; do
+for conf in opt/fgo/data/config/*.new ; do
config ${conf}
done
diff --git a/games/fgo/fgo.SlackBuild b/games/fgo/fgo.SlackBuild
index fef783d9e3..25c3dc73ac 100644
--- a/games/fgo/fgo.SlackBuild
+++ b/games/fgo/fgo.SlackBuild
@@ -1,4 +1,4 @@
-#!/bin/sh
+#!/bin/bash
# Slackware build script for fgo
@@ -22,10 +22,13 @@
# OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF THIS SOFTWARE, EVEN IF
# ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
+cd $(dirname $0) ; CWD=$(pwd)
+
PRGNAM=fgo
VERSION=${VERSION:-1.5.5}
-BUILD=${BUILD:-2}
+BUILD=${BUILD:-3}
TAG=${TAG:-_SBo}
+PKGTYPE=${PKGTYPE:-tgz}
if [ -z "$ARCH" ]; then
case "$( uname -m )" in
@@ -35,9 +38,13 @@ if [ -z "$ARCH" ]; then
esac
fi
-CWD=$(pwd)
+if [ ! -z "${PRINT_PACKAGE_NAME}" ]; then
+ echo "$PRGNAM-$VERSION-$ARCH-$BUILD$TAG.$PKGTYPE"
+ exit 0
+fi
+
TMP=${TMP:-/tmp/SBo}
-PKG=${PKG:-$TMP/package-$PRGNAM}
+PKG=$TMP/package-$PRGNAM
OUTPUT=${OUTPUT:-/tmp}
set -e
@@ -46,15 +53,15 @@ rm -rf $PKG
mkdir -p $TMP $PKG $OUTPUT
cd $TMP
rm -rf $PRGNAM
-tar xvf $CWD/$PRGNAM-$VERSION.tar.gz
+tar xvf $CWD/${PRGNAM}_$VERSION.orig.tar.gz
cd $PRGNAM
chown -R root:root .
find -L . \
\( -perm 777 -o -perm 775 -o -perm 750 -o -perm 711 -o -perm 555 \
- -o -perm 511 \) -exec chmod 755 {} \; -o \
+ -o -perm 511 \) -exec chmod 755 {} \+ -o \
\( -perm 666 -o -perm 664 -o -perm 640 -o -perm 600 -o -perm 444 \
- -o -perm 440 -o -perm 400 \) -exec chmod 644 {} \;
+ -o -perm 440 -o -perm 400 \) -exec chmod 644 {} \+
PRGDIR=$PKG/opt/$PRGNAM
PRGDAT=$PKG/opt/$PRGNAM/data
@@ -101,4 +108,4 @@ cat $CWD/slack-desc > $PKG/install/slack-desc
cat $CWD/doinst.sh > $PKG/install/doinst.sh
cd $PKG
-/sbin/makepkg -l y -c n $OUTPUT/$PRGNAM-$VERSION-$ARCH-$BUILD$TAG.${PKGTYPE:-tgz}
+/sbin/makepkg -l y -c n $OUTPUT/$PRGNAM-$VERSION-$ARCH-$BUILD$TAG.$PKGTYPE
diff --git a/games/fgo/fgo.info b/games/fgo/fgo.info
index 57873142bf..3ef7219601 100644
--- a/games/fgo/fgo.info
+++ b/games/fgo/fgo.info
@@ -1,7 +1,7 @@
PRGNAM="fgo"
VERSION="1.5.5"
HOMEPAGE="https://sites.google.com/site/erobosprojects/flightgear/add-ons/fgo"
-DOWNLOAD="https://sites.google.com/site/erobosprojects/flightgear/add-ons/fgo/download/fgo-1.5.5.tar.gz"
+DOWNLOAD="http://http.debian.net/debian/pool/main/f/fgo/fgo_1.5.5.orig.tar.gz"
MD5SUM="66e61f14437bfa0f2654ff62c6f9009a"
DOWNLOAD_x86_64=""
MD5SUM_x86_64=""
diff --git a/games/fgrun/fgrun.SlackBuild b/games/fgrun/fgrun.SlackBuild
index 07fcdd4c76..793cc7f4e5 100644
--- a/games/fgrun/fgrun.SlackBuild
+++ b/games/fgrun/fgrun.SlackBuild
@@ -1,11 +1,14 @@
-#!/bin/sh
+#!/bin/bash
# Slackware build script for fgrun
# Written by Diego Pantano <poplin.dp@gmail.com>
+cd $(dirname $0) ; CWD=$(pwd)
+
PRGNAM=fgrun
VERSION=${VERSION:-2016.4.0}
BUILD=${BUILD:-1}
TAG=${TAG:-_SBo}
+PKGTYPE=${PKGTYPE:-tgz}
if [ -z "$ARCH" ]; then
case "$( uname -m )" in
@@ -15,7 +18,14 @@ if [ -z "$ARCH" ]; then
esac
fi
-CWD=$(pwd)
+# If the variable PRINT_PACKAGE_NAME is set, then this script will report what
+# the name of the created package would be, and then exit. This information
+# could be useful to other scripts.
+if [ ! -z "${PRINT_PACKAGE_NAME}" ]; then
+ echo "$PRGNAM-$VERSION-$ARCH-$BUILD$TAG.$PKGTYPE"
+ exit 0
+fi
+
TMP=${TMP:-/tmp/SBo}
PKG=$TMP/package-$PRGNAM
OUTPUT=${OUTPUT:-/tmp}
@@ -81,4 +91,4 @@ cat $CWD/slack-desc > $PKG/install/slack-desc
cat $CWD/doinst.sh > $PKG/install/doinst.sh
cd $PKG
-/sbin/makepkg -l y -c n $OUTPUT/$PRGNAM-$VERSION-$ARCH-$BUILD$TAG.${PKGTYPE:-tgz}
+/sbin/makepkg -l y -c n $OUTPUT/$PRGNAM-$VERSION-$ARCH-$BUILD$TAG.$PKGTYPE
diff --git a/games/fifengine/8072f18a9bf4e75c3e1b197b6ccda11e82954460.patch b/games/fifengine/8072f18a9bf4e75c3e1b197b6ccda11e82954460.patch
new file mode 100644
index 0000000000..375fa6c73c
--- /dev/null
+++ b/games/fifengine/8072f18a9bf4e75c3e1b197b6ccda11e82954460.patch
@@ -0,0 +1,25 @@
+From 8072f18a9bf4e75c3e1b197b6ccda11e82954460 Mon Sep 17 00:00:00 2001
+From: Lars Wendler <polynomial-c@gentoo.org>
+Date: Tue, 31 Aug 2021 17:45:12 +0200
+Subject: [PATCH] Fix build against boost-1.77.0
+
+boost-1.77.0 no longer includes <algorithm>
+
+Closes: #1080
+Signed-off-by: Lars Wendler <polynomial-c@gentoo.org>
+---
+ engine/core/vfs/zip/zipnode.cpp | 1 +
+ 1 file changed, 1 insertion(+)
+
+diff --git a/engine/core/vfs/zip/zipnode.cpp b/engine/core/vfs/zip/zipnode.cpp
+index a1b14abbd..e1613e7f4 100644
+--- a/engine/core/vfs/zip/zipnode.cpp
++++ b/engine/core/vfs/zip/zipnode.cpp
+@@ -28,6 +28,7 @@
+ #include "vfs/fife_boost_filesystem.h"
+
+ #include "zipnode.h"
++#include <algorithm>
+
+ namespace {
+ /** helper function to find a value in a ZipNodeContainer
diff --git a/games/fifengine/d14f232f4cd9a00b05d6872957070e8c020f515d.patch b/games/fifengine/d14f232f4cd9a00b05d6872957070e8c020f515d.patch
new file mode 100644
index 0000000000..6450c91f32
--- /dev/null
+++ b/games/fifengine/d14f232f4cd9a00b05d6872957070e8c020f515d.patch
@@ -0,0 +1,22 @@
+From d14f232f4cd9a00b05d6872957070e8c020f515d Mon Sep 17 00:00:00 2001
+From: Thomas Kowaliczek-Schmer <linuxdonald@posteo.de>
+Date: Wed, 22 May 2019 16:04:43 +0200
+Subject: [PATCH] removed flags that are not supported with swig 4.0
+
+---
+ CMakeLists.txt | 2 +-
+ 1 file changed, 1 insertion(+), 1 deletion(-)
+
+diff --git a/CMakeLists.txt b/CMakeLists.txt
+index 126322ce0..25c695630 100644
+--- a/CMakeLists.txt
++++ b/CMakeLists.txt
+@@ -893,7 +893,7 @@ if(build-python)
+ find_package(PythonLibs ${PYTHON_VERSION_STRING} EXACT)
+ include_directories(${PYTHON_INCLUDE_PATH})
+
+- set(CMAKE_SWIG_FLAGS -modern -fastdispatch -dirvtable -nosafecstrings -noproxydel -fastproxy -fastinit -fastunpack -fastquery -modernargs -nobuildnone -keyword -w511 -w473 -w404 -w314)
++ set(CMAKE_SWIG_FLAGS -modern -fastdispatch -dirvtable -noproxydel -fastproxy -fastinit -fastunpack -fastquery -modernargs -keyword -w511 -w473 -w404 -w314)
+
+ set_source_files_properties("${PROJECT_BINARY_DIR}/fife.i" PROPERTIES CPLUSPLUS ON)
+ set(FIFE_SOURCES ${FIFE_CORE_SRC})
diff --git a/games/fifengine/fifengine.SlackBuild b/games/fifengine/fifengine.SlackBuild
index 7791af717f..bc226b6f94 100644
--- a/games/fifengine/fifengine.SlackBuild
+++ b/games/fifengine/fifengine.SlackBuild
@@ -1,4 +1,4 @@
-#!/bin/sh
+#!/bin/bash
# Slackware build script for fifengine
@@ -22,10 +22,13 @@
# OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF THIS SOFTWARE, EVEN IF
# ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
+cd $(dirname $0) ; CWD=$(pwd)
+
PRGNAM=fifengine
-VERSION=${VERSION:-0.4.1}
+VERSION=${VERSION:-0.4.2}
BUILD=${BUILD:-1}
TAG=${TAG:-_SBo}
+PKGTYPE=${PKGTYPE:-tgz}
if [ -z "$ARCH" ]; then
case "$( uname -m )" in
@@ -35,7 +38,14 @@ if [ -z "$ARCH" ]; then
esac
fi
-CWD=$(pwd)
+# If the variable PRINT_PACKAGE_NAME is set, then this script will report what
+# the name of the created package would be, and then exit. This information
+# could be useful to other scripts.
+if [ ! -z "${PRINT_PACKAGE_NAME}" ]; then
+ echo "$PRGNAM-$VERSION-$ARCH-$BUILD$TAG.$PKGTYPE"
+ exit 0
+fi
+
TMP=${TMP:-/tmp/SBo}
PKG=$TMP/package-$PRGNAM
OUTPUT=${OUTPUT:-/tmp}
@@ -60,7 +70,7 @@ rm -rf $PKG
mkdir -p $TMP $PKG $OUTPUT
cd $TMP
rm -rf $PRGNAM-$VERSION
-tar xvf $CWD/$PRGNAM-$VERSION.tar.gz || tar xvf $CWD/$VERSION.tar.gz
+tar xvf $CWD/$PRGNAM-$VERSION.tar.gz
cd $PRGNAM-$VERSION
chown -R root:root .
find -L . \
@@ -69,6 +79,8 @@ find -L . \
\( -perm 666 -o -perm 664 -o -perm 640 -o -perm 600 -o -perm 444 \
-o -perm 440 -o -perm 400 \) -exec chmod 644 {} \;
+patch -p1 < $CWD/d14f232f4cd9a00b05d6872957070e8c020f515d.patch
+patch -p1 < $CWD/8072f18a9bf4e75c3e1b197b6ccda11e82954460.patch
mkdir -p build
cd build
cmake \
@@ -93,4 +105,4 @@ cat $CWD/slack-desc > $PKG/install/slack-desc
cat $CWD/doinst.sh > $PKG/install/doinst.sh
cd $PKG
-/sbin/makepkg -l y -c n $OUTPUT/$PRGNAM-$VERSION-$ARCH-$BUILD$TAG.${PKGTYPE:-tgz}
+/sbin/makepkg -l y -c n $OUTPUT/$PRGNAM-$VERSION-$ARCH-$BUILD$TAG.$PKGTYPE
diff --git a/games/fifengine/fifengine.info b/games/fifengine/fifengine.info
index b7d7d57159..18cf364446 100644
--- a/games/fifengine/fifengine.info
+++ b/games/fifengine/fifengine.info
@@ -1,10 +1,10 @@
PRGNAM="fifengine"
-VERSION="0.4.1"
+VERSION="0.4.2"
HOMEPAGE="http://www.fifengine.net/"
-DOWNLOAD="https://github.com/fifengine/fifengine/archive/0.4.1.tar.gz"
-MD5SUM="6ce5533102c4993b44c3ba8347f4ca93"
+DOWNLOAD="https://github.com/fifengine/fifengine/archive/0.4.2/fifengine-0.4.2.tar.gz"
+MD5SUM="3a1a0d7c6332ad80d810a5962b2208c3"
DOWNLOAD_x86_64=""
MD5SUM_x86_64=""
-REQUIRES="OpenAL tinyxml fifechan"
+REQUIRES="tinyxml fifechan"
MAINTAINER="Dimitris Zlatanidis"
EMAIL="d.zlatanidis@gmail.com"
diff --git a/games/fillets-ng-data/fillets-ng-data.SlackBuild b/games/fillets-ng-data/fillets-ng-data.SlackBuild
index 549e0aa4ff..93c83529bf 100644
--- a/games/fillets-ng-data/fillets-ng-data.SlackBuild
+++ b/games/fillets-ng-data/fillets-ng-data.SlackBuild
@@ -1,4 +1,4 @@
-#!/bin/sh
+#!/bin/bash
#
# Slackware build script for fillet-ng-data
#
@@ -22,13 +22,23 @@
# OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF THIS SOFTWARE, EVEN IF
# ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
+cd $(dirname $0) ; CWD=$(pwd)
+
PRGNAM=fillets-ng-data
VERSION=${VERSION:-1.0.1}
ARCH=noarch
BUILD=${BUILD:-1}
TAG=${TAG:-_SBo}
+PKGTYPE=${PKGTYPE:-tgz}
+
+# If the variable PRINT_PACKAGE_NAME is set, then this script will report what
+# the name of the created package would be, and then exit. This information
+# could be useful to other scripts.
+if [ ! -z "${PRINT_PACKAGE_NAME}" ]; then
+ echo "$PRGNAM-$VERSION-$ARCH-$BUILD$TAG.$PKGTYPE"
+ exit 0
+fi
-CWD=$(pwd)
TMP=${TMP:-/tmp/SBo}
PKG=$TMP/package-$PRGNAM
OUTPUT=${OUTPUT:-/tmp}
@@ -65,4 +75,4 @@ mkdir -p $PKG/install
cat $CWD/slack-desc > $PKG/install/slack-desc
cd $PKG
-/sbin/makepkg -l y -c n $OUTPUT/$PRGNAM-$VERSION-$ARCH-$BUILD$TAG.${PKGTYPE:-tgz}
+/sbin/makepkg -l y -c n $OUTPUT/$PRGNAM-$VERSION-$ARCH-$BUILD$TAG.$PKGTYPE
diff --git a/games/fillets-ng/fillets-ng.SlackBuild b/games/fillets-ng/fillets-ng.SlackBuild
index 5c9eaf9d3a..594cc6ec34 100644
--- a/games/fillets-ng/fillets-ng.SlackBuild
+++ b/games/fillets-ng/fillets-ng.SlackBuild
@@ -1,4 +1,4 @@
-#!/bin/sh
+#!/bin/bash
# Slackware build script for fillets-ng
@@ -23,26 +23,36 @@
# ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
+cd $(dirname $0) ; CWD=$(pwd)
+
PRGNAM=fillets-ng
VERSION=${VERSION:-1.0.1}
BUILD=${BUILD:-1}
TAG=${TAG:-_SBo}
+PKGTYPE=${PKGTYPE:-tgz}
if [ -z "$ARCH" ]; then
case "$( uname -m )" in
- i?86) ARCH=i486 ;;
+ i?86) ARCH=i586 ;;
arm*) ARCH=arm ;;
*) ARCH=$( uname -m ) ;;
esac
fi
-CWD=$(pwd)
+# If the variable PRINT_PACKAGE_NAME is set, then this script will report what
+# the name of the created package would be, and then exit. This information
+# could be useful to other scripts.
+if [ ! -z "${PRINT_PACKAGE_NAME}" ]; then
+ echo "$PRGNAM-$VERSION-$ARCH-$BUILD$TAG.$PKGTYPE"
+ exit 0
+fi
+
TMP=${TMP:-/tmp/SBo}
PKG=$TMP/package-$PRGNAM
OUTPUT=${OUTPUT:-/tmp}
-if [ "$ARCH" = "i486" ]; then
- SLKCFLAGS="-O2 -march=i486 -mtune=i686"
+if [ "$ARCH" = "i586" ]; then
+ SLKCFLAGS="-O2 -march=i586 -mtune=i686"
LIBDIRSUFFIX=""
elif [ "$ARCH" = "i686" ]; then
SLKCFLAGS="-O2 -march=i686 -mtune=i686"
@@ -106,4 +116,4 @@ cat $CWD/slack-desc > $PKG/install/slack-desc
cat $CWD/doinst.sh > $PKG/install/doinst.sh
cd $PKG
-/sbin/makepkg -l y -c n $OUTPUT/$PRGNAM-$VERSION-$ARCH-$BUILD$TAG.${PKGTYPE:-tgz}
+/sbin/makepkg -l y -c n $OUTPUT/$PRGNAM-$VERSION-$ARCH-$BUILD$TAG.$PKGTYPE
diff --git a/games/firestorm-opensim/firestorm-opensim.SlackBuild b/games/firestorm-opensim/firestorm-opensim.SlackBuild
index 558f37cd4d..6749021d0c 100644
--- a/games/firestorm-opensim/firestorm-opensim.SlackBuild
+++ b/games/firestorm-opensim/firestorm-opensim.SlackBuild
@@ -1,4 +1,4 @@
-#!/bin/sh
+#!/bin/bash
# Slackware build script for Phoenix Firestorm
#
@@ -32,11 +32,14 @@
# Both packages can be installed in parallel on the same installation.
+cd $(dirname $0) ; CWD=$(pwd)
+
PRGNAM=firestorm-opensim
VERSION=${VERSION:-4.4.2.34167}
EXTRAVERSION=${EXTRAVERSION:-OS}
BUILD=${BUILD:-1}
TAG=${TAG:-_SBo}
+PKGTYPE=${PKGTYPE:-tgz}
if [ -z "$ARCH" ]; then
case "$( uname -m )" in
@@ -46,7 +49,14 @@ if [ -z "$ARCH" ]; then
esac
fi
-CWD=$(pwd)
+# If the variable PRINT_PACKAGE_NAME is set, then this script will report what
+# the name of the created package would be, and then exit. This information
+# could be useful to other scripts.
+if [ ! -z "${PRINT_PACKAGE_NAME}" ]; then
+ echo "$PRGNAM-$VERSION-$ARCH-$BUILD$TAG.$PKGTYPE"
+ exit 0
+fi
+
TMP=${TMP:-/tmp/SBo}
PKG=$TMP/package-$PRGNAM
OUTPUT=${OUTPUT:-/tmp}
@@ -107,4 +117,4 @@ cat $CWD/slack-desc > $PKG/install/slack-desc
cat $CWD/doinst.sh > $PKG/install/doinst.sh
cd $PKG
-/sbin/makepkg -l y -c n $OUTPUT/$PRGNAM-$VERSION-$ARCH-$BUILD$TAG.${PKGTYPE:-tgz}
+/sbin/makepkg -l y -c n $OUTPUT/$PRGNAM-$VERSION-$ARCH-$BUILD$TAG.$PKGTYPE
diff --git a/games/firestorm/firestorm.SlackBuild b/games/firestorm/firestorm.SlackBuild
index ab6719161a..328c4b85d8 100644
--- a/games/firestorm/firestorm.SlackBuild
+++ b/games/firestorm/firestorm.SlackBuild
@@ -1,4 +1,4 @@
-#!/bin/sh
+#!/bin/bash
# Slackware build script for Phoenix Firestorm
#
@@ -26,10 +26,13 @@
# NOTE: Since release 4.7.9 there is no Havoc version of Firestorm.
# Therefore this package now builds the Opensim version by default.
+cd $(dirname $0) ; CWD=$(pwd)
+
PRGNAM=firestorm
VERSION=${VERSION:-4.7.9.50527}
BUILD=${BUILD:-1}
TAG=${TAG:-_SBo}
+PKGTYPE=${PKGTYPE:-tgz}
if [ -z "$ARCH" ]; then
case "$( uname -m )" in
@@ -39,7 +42,14 @@ if [ -z "$ARCH" ]; then
esac
fi
-CWD=$(pwd)
+# If the variable PRINT_PACKAGE_NAME is set, then this script will report what
+# the name of the created package would be, and then exit. This information
+# could be useful to other scripts.
+if [ ! -z "${PRINT_PACKAGE_NAME}" ]; then
+ echo "$PRGNAM-$VERSION-$ARCH-$BUILD$TAG.$PKGTYPE"
+ exit 0
+fi
+
TMP=${TMP:-/tmp/SBo}
PKG=$TMP/package-$PRGNAM
OUTPUT=${OUTPUT:-/tmp}
@@ -97,4 +107,4 @@ cat $CWD/slack-desc > $PKG/install/slack-desc
cat $CWD/doinst.sh > $PKG/install/doinst.sh
cd $PKG
-/sbin/makepkg -l y -c n $OUTPUT/$PRGNAM-$VERSION-$ARCH-$BUILD$TAG.${PKGTYPE:-tgz}
+/sbin/makepkg -l y -c n $OUTPUT/$PRGNAM-$VERSION-$ARCH-$BUILD$TAG.$PKGTYPE
diff --git a/games/fizmo/fizmo.SlackBuild b/games/fizmo/fizmo.SlackBuild
index 17a8982478..c3bbe58841 100644
--- a/games/fizmo/fizmo.SlackBuild
+++ b/games/fizmo/fizmo.SlackBuild
@@ -1,8 +1,8 @@
-#!/bin/sh
+#!/bin/bash
# Slackware build script for fizmo
-# Written by B. Watson (yalhcru@gmail.com)
+# Written by B. Watson (urchlay@slackware.uk)
# Licensed under the WTFPL. See http://www.wtfpl.net/txt/copying/ for details.
@@ -22,10 +22,13 @@
# - Add icon, .desktop, and doinst.
# - Add note about optional SDL2 dep to README.
+cd $(dirname $0) ; CWD=$(pwd)
+
PRGNAM=fizmo
VERSION=${VERSION:-0.8.5}
BUILD=${BUILD:-1}
TAG=${TAG:-_SBo}
+PKGTYPE=${PKGTYPE:-tgz}
if [ -z "$ARCH" ]; then
case "$( uname -m )" in
@@ -35,7 +38,11 @@ if [ -z "$ARCH" ]; then
esac
fi
-CWD=$(pwd)
+if [ ! -z "${PRINT_PACKAGE_NAME}" ]; then
+ echo "$PRGNAM-$VERSION-$ARCH-$BUILD$TAG.$PKGTYPE"
+ exit 0
+fi
+
TMP=${TMP:-/tmp/SBo}
PKG=$TMP/package-$PRGNAM
OUTPUT=${OUTPUT:-/tmp}
@@ -69,11 +76,8 @@ rm -rf $PRGNAM-$SRCVER
tar xvf $CWD/$PRGNAM-$SRCVER.tar.gz
cd $PRGNAM-$SRCVER
chown -R root:root .
-find -L . \
- \( -perm 777 -o -perm 775 -o -perm 750 -o -perm 711 -o -perm 555 -o -perm 511 \) \
- -exec chmod 755 {} \+ -o \
- \( -perm 666 -o -perm 664 -o -perm 600 -o -perm 444 -o -perm 440 -o -perm 400 \) \
- -exec chmod 644 {} \+
+find -L . -perm /111 -a \! -perm 755 -a -exec chmod 755 {} \+ -o \
+ \! -perm /111 -a \! -perm 644 -a -exec chmod 644 {} \+
# The configure script doesn't autodetect when sdl2 is missing,
# so let's help it out a little.
@@ -154,4 +158,4 @@ sed -e "s,@SDLYN@,$SDLYN," \
cat $CWD/doinst.sh > $PKG/install/doinst.sh
cd $PKG
-/sbin/makepkg -l y -c n $OUTPUT/$PRGNAM-$VERSION-$ARCH-$BUILD$TAG.${PKGTYPE:-tgz}
+/sbin/makepkg -l y -c n $OUTPUT/$PRGNAM-$VERSION-$ARCH-$BUILD$TAG.$PKGTYPE
diff --git a/games/fizmo/fizmo.info b/games/fizmo/fizmo.info
index f84df8543d..f47d2e8f0f 100644
--- a/games/fizmo/fizmo.info
+++ b/games/fizmo/fizmo.info
@@ -1,10 +1,10 @@
PRGNAM="fizmo"
VERSION="0.8.5"
-HOMEPAGE="http://spellbreaker.org/~chrender/fizmo/"
+HOMEPAGE="https://spellbreaker.org/~chrender/fizmo/"
DOWNLOAD="https://github.com/chrender/fizmo/releases/download/fizmo_0-8-5/fizmo-0.8.5.tar.gz"
MD5SUM="fcc689fbff12f6e122f37f7f8c9ec31e"
DOWNLOAD_x86_64=""
MD5SUM_x86_64=""
REQUIRES=""
MAINTAINER="B. Watson"
-EMAIL="yalhcru@gmail.com"
+EMAIL="urchlay@slackware.uk"
diff --git a/games/flare-game/flare-game.SlackBuild b/games/flare-game/flare-game.SlackBuild
index 18e8664b03..906c918c24 100644
--- a/games/flare-game/flare-game.SlackBuild
+++ b/games/flare-game/flare-game.SlackBuild
@@ -1,4 +1,4 @@
-#!/bin/sh
+#!/bin/bash
# Slackware build script for flare-game
@@ -23,10 +23,13 @@
# OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF THIS SOFTWARE, EVEN IF
# ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
+cd $(dirname $0) ; CWD=$(pwd)
+
PRGNAM=flare-game
-VERSION=${VERSION:-1.11}
+VERSION=${VERSION:-1.14}
BUILD=${BUILD:-1}
TAG=${TAG:-_SBo}
+PKGTYPE=${PKGTYPE:-tgz}
if [ -z "$ARCH" ]; then
case "$( uname -m )" in
@@ -36,7 +39,14 @@ if [ -z "$ARCH" ]; then
esac
fi
-CWD=$(pwd)
+# If the variable PRINT_PACKAGE_NAME is set, then this script will report what
+# the name of the created package would be, and then exit. This information
+# could be useful to other scripts.
+if [ ! -z "${PRINT_PACKAGE_NAME}" ]; then
+ echo "$PRGNAM-$VERSION-$ARCH-$BUILD$TAG.$PKGTYPE"
+ exit 0
+fi
+
TMP=${TMP:-/tmp/SBo}
PKG=$TMP/package-$PRGNAM
OUTPUT=${OUTPUT:-/tmp}
@@ -50,6 +60,9 @@ elif [ "$ARCH" = "i686" ]; then
elif [ "$ARCH" = "x86_64" ]; then
SLKCFLAGS="-O2 -fPIC"
LIBDIRSUFFIX="64"
+elif [ "$ARCH" = "aarch64" ]; then
+ SLKCFLAGS="-O2 -fPIC"
+ LIBDIRSUFFIX="64"
else
SLKCFLAGS="-O2"
LIBDIRSUFFIX=""
@@ -92,4 +105,4 @@ mkdir -p $PKG/install
cat $CWD/slack-desc > $PKG/install/slack-desc
cd $PKG
-/sbin/makepkg -l y -c n $OUTPUT/$PRGNAM-$VERSION-$ARCH-$BUILD$TAG.${PKGTYPE:-tgz}
+/sbin/makepkg -l y -c n $OUTPUT/$PRGNAM-$VERSION-$ARCH-$BUILD$TAG.$PKGTYPE
diff --git a/games/flare-game/flare-game.info b/games/flare-game/flare-game.info
index e34d264161..abe8f104ac 100644
--- a/games/flare-game/flare-game.info
+++ b/games/flare-game/flare-game.info
@@ -1,8 +1,8 @@
PRGNAM="flare-game"
-VERSION="1.11"
+VERSION="1.14"
HOMEPAGE="https://github.com/flareteam/flare-game"
-DOWNLOAD="https://github.com/flareteam/flare-game/archive/v1.11/flare-game-1.11.tar.gz"
-MD5SUM="c80107d26879682261fcb69e0252fc26"
+DOWNLOAD="https://github.com/flareteam/flare-game/archive/v1.14/flare-game-1.14.tar.gz"
+MD5SUM="90f027f22fbd6e775bef45c16bc88ed7"
DOWNLOAD_x86_64=""
MD5SUM_x86_64=""
REQUIRES="flare"
diff --git a/games/flare/flare.SlackBuild b/games/flare/flare.SlackBuild
index 22f605da96..d19675e21e 100644
--- a/games/flare/flare.SlackBuild
+++ b/games/flare/flare.SlackBuild
@@ -1,4 +1,4 @@
-#!/bin/sh
+#!/bin/bash
# Slackware build script for flare
@@ -23,11 +23,14 @@
# OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF THIS SOFTWARE, EVEN IF
# ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
+cd $(dirname $0) ; CWD=$(pwd)
+
PRGNAM=flare
SRCNAM=$PRGNAM-engine
-VERSION=${VERSION:-1.11}
+VERSION=${VERSION:-1.14}
BUILD=${BUILD:-1}
TAG=${TAG:-_SBo}
+PKGTYPE=${PKGTYPE:-tgz}
if [ -z "$ARCH" ]; then
case "$( uname -m )" in
@@ -37,7 +40,14 @@ if [ -z "$ARCH" ]; then
esac
fi
-CWD=$(pwd)
+# If the variable PRINT_PACKAGE_NAME is set, then this script will report what
+# the name of the created package would be, and then exit. This information
+# could be useful to other scripts.
+if [ ! -z "${PRINT_PACKAGE_NAME}" ]; then
+ echo "$PRGNAM-$VERSION-$ARCH-$BUILD$TAG.$PKGTYPE"
+ exit 0
+fi
+
TMP=${TMP:-/tmp/SBo}
PKG=$TMP/package-$PRGNAM
OUTPUT=${OUTPUT:-/tmp}
@@ -51,6 +61,9 @@ elif [ "$ARCH" = "i686" ]; then
elif [ "$ARCH" = "x86_64" ]; then
SLKCFLAGS="-O2 -fPIC"
LIBDIRSUFFIX="64"
+elif [ "$ARCH" = "aarch64" ]; then
+ SLKCFLAGS="-O2 -fPIC"
+ LIBDIRSUFFIX="64"
else
SLKCFLAGS="-O2"
LIBDIRSUFFIX=""
@@ -107,4 +120,4 @@ cat $CWD/slack-desc > $PKG/install/slack-desc
cat $CWD/doinst.sh > $PKG/install/doinst.sh
cd $PKG
-/sbin/makepkg -l y -c n $OUTPUT/$PRGNAM-$VERSION-$ARCH-$BUILD$TAG.${PKGTYPE:-tgz}
+/sbin/makepkg -l y -c n $OUTPUT/$PRGNAM-$VERSION-$ARCH-$BUILD$TAG.$PKGTYPE
diff --git a/games/flare/flare.info b/games/flare/flare.info
index 82bc101829..707ca651f0 100644
--- a/games/flare/flare.info
+++ b/games/flare/flare.info
@@ -1,10 +1,10 @@
PRGNAM="flare"
-VERSION="1.11"
-HOMEPAGE="http://flarerpg.org/"
-DOWNLOAD="https://github.com/flareteam/flare-engine/archive/v1.11/flare-engine-1.11.tar.gz"
-MD5SUM="f7ef0642decebbc7348c334330f632a2"
+VERSION="1.14"
+HOMEPAGE="https://flarerpg.org/"
+DOWNLOAD="https://github.com/flareteam/flare-engine/archive/v1.14/flare-engine-1.14.tar.gz"
+MD5SUM="600848eafcef2c4493422b151673285f"
DOWNLOAD_x86_64=""
MD5SUM_x86_64=""
-REQUIRES="SDL2_image SDL2_mixer SDL2_ttf"
+REQUIRES=""
MAINTAINER="Yth - Arnaud"
EMAIL="yth@ythogtha.org"
diff --git a/games/fmsx-libretro/README b/games/fmsx-libretro/README
deleted file mode 100644
index 0ab14802df..0000000000
--- a/games/fmsx-libretro/README
+++ /dev/null
@@ -1,17 +0,0 @@
-fMSX is a program that emulates MSX, MSX2, and MSX2+ 8bit home
-computers.
-
-fMSX optionally supports using the following BIOS image file for
-operation:
-
-* MSX.ROM (MSX BIOS)
-* MSX2.ROM (MSX2 BIOS)
-* MSX2EXT.ROM (MSX2 ExtROM)
-* MSX2P.ROM (MSX2+ BIOS)
-* MSX2PEXT.ROM (MSX2+ ExtROM)
-
-The BIOS images are included with the fsmx-libretro source tree in the
-fMSX/ROMs directory.
-
-To build the debugging symbols use:
- DEBUG=1 ./fmsx-libretro.SlackBuild
diff --git a/games/fmsx-libretro/fmsx-libretro.SlackBuild b/games/fmsx-libretro/fmsx-libretro.SlackBuild
deleted file mode 100644
index 58e290a528..0000000000
--- a/games/fmsx-libretro/fmsx-libretro.SlackBuild
+++ /dev/null
@@ -1,82 +0,0 @@
-#!/bin/sh
-
-# Slackware build script for fmsx-libretro
-
-# Copyright 2016-2018 Hunter Sezen
-# All rights reserved.
-#
-# Redistribution and use of this script, with or without modification, is
-# permitted provided that the following conditions are met:
-#
-# 1. Redistributions of this script must retain the above copyright
-# notice, this list of conditions and the following disclaimer.
-#
-# THIS SOFTWARE IS PROVIDED BY THE AUTHOR "AS IS" AND ANY EXPRESS OR IMPLIED
-# WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE IMPLIED WARRANTIES OF
-# MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE ARE DISCLAIMED. IN NO
-# EVENT SHALL THE AUTHOR BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL,
-# SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT LIMITED TO,
-# PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, DATA, OR PROFITS;
-# OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY,
-# WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR
-# OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF THIS SOFTWARE, EVEN IF
-# ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
-
-PRGNAM=fmsx-libretro
-LIBNAM=$(echo $PRGNAM | tr - _)
-VERSION=${VERSION:-2018.09.29_a61ef7b}
-BUILD=${BUILD:-1}
-TAG=${TAG:-_SBo}
-
-if [ -z "$ARCH" ]; then
- case "$( uname -m )" in
- i?86) ARCH=i586 ;;
- arm*) ARCH=arm ;;
- *) ARCH=$( uname -m ) ;;
- esac
-fi
-
-CWD=$(pwd)
-TMP=${TMP:-/tmp/SBo}
-PKG=$TMP/package-$PRGNAM
-OUTPUT=${OUTPUT:-/tmp}
-
-LIBDIRSUFFIX=
-[ "$ARCH" = x86_64 ] && LIBDIRSUFFIX=64
-
-set -eu
-
-rm -rf $PKG
-mkdir -p $TMP $PKG $OUTPUT
-cd $TMP
-rm -rf $PRGNAM-$VERSION
-tar xvf $CWD/$PRGNAM-$VERSION.tar.xz
-cd $PRGNAM-$VERSION
-chown -R root:root .
-find -L . \
- \( -perm 777 -o -perm 775 -o -perm 750 -o -perm 711 -o -perm 555 \
- -o -perm 511 \) -exec chmod 755 {} \; -o \
- \( -perm 666 -o -perm 664 -o -perm 640 -o -perm 600 -o -perm 444 \
- -o -perm 440 -o -perm 400 \) -exec chmod 644 {} \;
-
-[ "${DEBUG:=0}" != 0 ] && DEBUG=1
-
-make DEBUG=$DEBUG
-
-install -Dm0644 $LIBNAM.so $PKG/usr/lib${LIBDIRSUFFIX}/libretro/$LIBNAM.so
-install -Dm0644 $LIBNAM.info $PKG/usr/lib${LIBDIRSUFFIX}/libretro/info/$LIBNAM.info
-
-if [ $DEBUG = 0 ]; then
- find $PKG -print0 | xargs -0 file | grep -e "executable" -e "shared object" | grep ELF \
- | cut -f 1 -d : | xargs strip --strip-unneeded 2> /dev/null || true
-fi
-
-mkdir -p $PKG/usr/doc/$PRGNAM-$VERSION
-cp -a README.md $PKG/usr/doc/$PRGNAM-$VERSION
-cat $CWD/$PRGNAM.SlackBuild > $PKG/usr/doc/$PRGNAM-$VERSION/$PRGNAM.SlackBuild
-
-mkdir -p $PKG/install
-cat $CWD/slack-desc > $PKG/install/slack-desc
-
-cd $PKG
-/sbin/makepkg -l y -c n $OUTPUT/$PRGNAM-$VERSION-$ARCH-$BUILD$TAG.${PKGTYPE:-tgz}
diff --git a/games/fmsx-libretro/fmsx-libretro.info b/games/fmsx-libretro/fmsx-libretro.info
deleted file mode 100644
index 726e2cc38b..0000000000
--- a/games/fmsx-libretro/fmsx-libretro.info
+++ /dev/null
@@ -1,10 +0,0 @@
-PRGNAM="fmsx-libretro"
-VERSION="2018.09.29_a61ef7b"
-HOMEPAGE="https://www.libretro.com/"
-DOWNLOAD="http://slackless.raccoons.tech/src/libretro/fmsx-libretro-2018.09.29_a61ef7b.tar.xz"
-MD5SUM="ec4f1a3f891e2c5d2ad5ef07beaaf67a"
-DOWNLOAD_x86_64=""
-MD5SUM_x86_64=""
-REQUIRES="RetroArch"
-MAINTAINER="orphaned - no maintainer"
-EMAIL="nobody@nowhere.com"
diff --git a/games/fmsx-libretro/slack-desc b/games/fmsx-libretro/slack-desc
deleted file mode 100644
index c2b12f6d7a..0000000000
--- a/games/fmsx-libretro/slack-desc
+++ /dev/null
@@ -1,19 +0,0 @@
-# HOW TO EDIT THIS FILE:
-# The "handy ruler" below makes it easier to edit a package description.
-# Line up the first '|' above the ':' following the base package name, and
-# the '|' on the right side marks the last column you can put a character in.
-# You must make exactly 11 lines for the formatting to be correct. It's also
-# customary to leave one space after the ':' except on otherwise blank lines.
-
- |-----handy-ruler------------------------------------------------------|
-fmsx-libretro: fmsx-libretro (libretro port of fMSX)
-fmsx-libretro:
-fmsx-libretro: fMSX is a program that emulates MSX, MSX2, and MSX2+
-fmsx-libretro: 8bit home computers.
-fmsx-libretro:
-fmsx-libretro: Homepage: https://www.libretro.com/
-fmsx-libretro:
-fmsx-libretro:
-fmsx-libretro:
-fmsx-libretro:
-fmsx-libretro:
diff --git a/games/foobillardplus/foobillardplus.SlackBuild b/games/foobillardplus/foobillardplus.SlackBuild
index 759c0ed7e0..d051416a2b 100644
--- a/games/foobillardplus/foobillardplus.SlackBuild
+++ b/games/foobillardplus/foobillardplus.SlackBuild
@@ -1,4 +1,4 @@
-#!/bin/sh
+#!/bin/bash
# Slackware build script for foobillardplus
@@ -25,11 +25,14 @@
# forked from the foobillard's one, written
# by Zbigniew Baniewski, zbigniew.baniewski@gmail.com
+cd $(dirname $0) ; CWD=$(pwd)
+
PRGNAM=foobillardplus
VERSION=${VERSION:-3.43beta}
SRCVERSION=${SRCVERSION:-170}
BUILD=${BUILD:-3}
TAG=${TAG:-_SBo}
+PKGTYPE=${PKGTYPE:-tgz}
if [ -z "$ARCH" ]; then
case "$( uname -m )" in
@@ -39,7 +42,14 @@ if [ -z "$ARCH" ]; then
esac
fi
-CWD=$(pwd)
+# If the variable PRINT_PACKAGE_NAME is set, then this script will report what
+# the name of the created package would be, and then exit. This information
+# could be useful to other scripts.
+if [ ! -z "${PRINT_PACKAGE_NAME}" ]; then
+ echo "$PRGNAM-$VERSION-$ARCH-$BUILD$TAG.$PKGTYPE"
+ exit 0
+fi
+
TMP=${TMP:-/tmp/SBo}
PKG=$TMP/package-$PRGNAM
OUTPUT=${OUTPUT:-/tmp}
@@ -115,4 +125,4 @@ cat $CWD/slack-desc > $PKG/install/slack-desc
cat $CWD/doinst.sh > $PKG/install/doinst.sh
cd $PKG
-/sbin/makepkg -l y -c n $OUTPUT/$PRGNAM-$VERSION-$ARCH-$BUILD$TAG.${PKGTYPE:-tgz}
+/sbin/makepkg -l y -c n $OUTPUT/$PRGNAM-$VERSION-$ARCH-$BUILD$TAG.$PKGTYPE
diff --git a/games/foobillardplus/foobillardplus.info b/games/foobillardplus/foobillardplus.info
index 0a64dfc605..01d588ca57 100644
--- a/games/foobillardplus/foobillardplus.info
+++ b/games/foobillardplus/foobillardplus.info
@@ -1,7 +1,7 @@
PRGNAM="foobillardplus"
VERSION="3.43beta"
HOMEPAGE="http://foobillard.sourceforge.net"
-DOWNLOAD="http://downloads.sf.net/slackbuildsdirectlinks/foobillardplus-code-170.zip"
+DOWNLOAD="https://ponce.cc/slackware/sources/repo/foobillardplus-code-170.zip"
MD5SUM="097ae22366266dcb8196daaba8801794"
DOWNLOAD_x86_64=""
MD5SUM_x86_64=""
diff --git a/games/fortune-ASR/fortune-ASR.SlackBuild b/games/fortune-ASR/fortune-ASR.SlackBuild
index 62c2c22290..21d905555a 100644
--- a/games/fortune-ASR/fortune-ASR.SlackBuild
+++ b/games/fortune-ASR/fortune-ASR.SlackBuild
@@ -1,4 +1,4 @@
-#!/bin/sh
+#!/bin/bash
# Slackware build script for fortune-ASR
# Written by Ozan Türkyılmaz <ozan.turkyilmazATgmail.com>
@@ -24,15 +24,25 @@
# ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
+cd $(dirname $0) ; CWD=$(pwd)
+
PRGNAM=fortune-ASR
VERSION=${VERSION:-1.0.0}
BUILD=${BUILD:-2}
TAG=${TAG:-_SBo}
+PKGTYPE=${PKGTYPE:-tgz}
# It is not arch spesific.
ARCH="noarch"
-CWD=$(pwd)
+# If the variable PRINT_PACKAGE_NAME is set, then this script will report what
+# the name of the created package would be, and then exit. This information
+# could be useful to other scripts.
+if [ ! -z "${PRINT_PACKAGE_NAME}" ]; then
+ echo "$PRGNAM-$VERSION-$ARCH-$BUILD$TAG.$PKGTYPE"
+ exit 0
+fi
+
TMP=${TMP:-/tmp/SBo}
PKG=$TMP/package-$PRGNAM
OUTPUT=${OUTPUT:-/tmp}
@@ -64,4 +74,4 @@ mkdir -p $PKG/install
cat $CWD/slack-desc > $PKG/install/slack-desc
cd $PKG
-/sbin/makepkg -l y -c n $OUTPUT/$PRGNAM-$VERSION-$ARCH-$BUILD$TAG.${PKGTYPE:-tgz}
+/sbin/makepkg -l y -c n $OUTPUT/$PRGNAM-$VERSION-$ARCH-$BUILD$TAG.$PKGTYPE
diff --git a/games/fortune-dharma/fortune-dharma.SlackBuild b/games/fortune-dharma/fortune-dharma.SlackBuild
index 7790721a86..1d087abd84 100644
--- a/games/fortune-dharma/fortune-dharma.SlackBuild
+++ b/games/fortune-dharma/fortune-dharma.SlackBuild
@@ -1,4 +1,4 @@
-#!/bin/sh
+#!/bin/bash
# Slackware build script for fortune-dharma
@@ -23,32 +23,46 @@
# OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF THIS SOFTWARE, EVEN IF
# ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
+cd $(dirname $0) ; CWD=$(pwd)
+
PRGNAM=fortune-dharma
VERSION=${VERSION:-1.2}
BUILD=${BUILD:-1}
TAG=${TAG:-_SBo}
+PKGTYPE=${PKGTYPE:-tgz}
ARCH=noarch
-CWD=$(pwd)
+if [ ! -z "${PRINT_PACKAGE_NAME}" ]; then
+ echo "$PRGNAM-$VERSION-$ARCH-$BUILD$TAG.$PKGTYPE"
+ exit 0
+fi
+
TMP=${TMP:-/tmp/SBo}
PKG=$TMP/package-$PRGNAM
OUTPUT=${OUTPUT:-/tmp}
set -e
+# 20220220 bkw: depending on what client was used to download the file,
+# it may have CGI parameters in the filename.
+TARBALL=$CWD/$PRGNAM-$VERSION.tar.gz
+if [ ! -e $TARBALL ]; then
+ TARBALL="$( /bin/ls $TARBALL\?* | head -1 )"
+fi
+
rm -rf $PKG
mkdir -p $TMP $PKG $OUTPUT
cd $TMP
rm -rf $PRGNAM-$VERSION
-tar xvf $CWD/$PRGNAM-$VERSION.tar.gz
+tar xvf "$TARBALL"
cd $PRGNAM-$VERSION
chown -R root:root .
find -L . \
\( -perm 777 -o -perm 775 -o -perm 750 -o -perm 711 -o -perm 555 -o -perm 511 \) \
- -exec chmod 755 {} \; -o \
+ -exec chmod 755 {} \+ -o \
\( -perm 666 -o -perm 664 -o -perm 600 -o -perm 444 -o -perm 440 -o -perm 400 \) \
- -exec chmod 644 {} \;
+ -exec chmod 644 {} \+
make all
make install DESTDIR=$PKG
@@ -63,5 +77,5 @@ mkdir -p $PKG/install
cat $CWD/slack-desc > $PKG/install/slack-desc
cd $PKG
-/sbin/makepkg -l y -c n $OUTPUT/$PRGNAM-$VERSION-$ARCH-$BUILD$TAG.${PKGTYPE:-tgz}
+/sbin/makepkg -l y -c n $OUTPUT/$PRGNAM-$VERSION-$ARCH-$BUILD$TAG.$PKGTYPE
diff --git a/games/fortune-dune/fortune-dune.SlackBuild b/games/fortune-dune/fortune-dune.SlackBuild
index 233ed23cae..702f5266f9 100644
--- a/games/fortune-dune/fortune-dune.SlackBuild
+++ b/games/fortune-dune/fortune-dune.SlackBuild
@@ -1,19 +1,29 @@
-#!/bin/sh
+#!/bin/bash
# Slackware build script for fortune-dune
-# Written by B. Watson (yalhcru@gmail.com)
+# Written by B. Watson (urchlay@slackware.uk)
# Licensed under the WTFPL. See http://www.wtfpl.net/txt/copying/ for details.
+# 20211006 bkw: BUILD=2, remove mention of prequels from slack-desc
+# if PREQUELS=no.
+
+cd $(dirname $0) ; CWD=$(pwd)
+
PRGNAM=fortune-dune
VERSION=${VERSION:-2.0.1}
-BUILD=${BUILD:-1}
+BUILD=${BUILD:-2}
TAG=${TAG:-_SBo}
+PKGTYPE=${PKGTYPE:-tgz}
ARCH=noarch
-CWD=$(pwd)
+if [ ! -z "${PRINT_PACKAGE_NAME}" ]; then
+ echo "$PRGNAM-$VERSION-$ARCH-$BUILD$TAG.$PKGTYPE"
+ exit 0
+fi
+
TMP=${TMP:-/tmp/SBo}
PKG=$TMP/package-$PRGNAM
OUTPUT=${OUTPUT:-/tmp}
@@ -27,20 +37,15 @@ rm -rf $PRGNAM-$VERSION
tar xvf $CWD/$PRGNAM-$VERSION.tar.gz
cd $PRGNAM-$VERSION
chown -R root:root .
-find -L . \
- \( -perm 777 -o -perm 775 -o -perm 750 -o -perm 711 -o -perm 555 -o -perm 511 \) \
- -exec chmod 755 {} \; -o \
- \( -perm 666 -o -perm 664 -o -perm 600 -o -perm 444 -o -perm 440 -o -perm 400 \) \
- -exec chmod 644 {} \;
+find -L . -perm /111 -a \! -perm 755 -a -exec chmod 755 {} \+ -o \
+ \! -perm /111 -a \! -perm 644 -a -exec chmod 644 {} \+
# Don't trust the prebuilt index files
rm -f *.dat
# The fan base is divided on the "Prequels suck! No, prequels rule!" issue,
# so accomodate both sides of the debate.
-if [ "${PREQUELS:-yes}" = "no" ]; then
- rm -f house-*
-fi
+[ "${PREQUELS:-yes}" = "no" ] && rm -f house-*
# Instead of separate per-book fortune files, let's just have one big one.
# There just aren't enough quotes to justify splitting them up.
@@ -56,6 +61,8 @@ cat $CWD/$PRGNAM.SlackBuild > $PKG/usr/doc/$PRGNAM-$VERSION/$PRGNAM.SlackBuild
mkdir -p $PKG/install
cat $CWD/slack-desc > $PKG/install/slack-desc
+[ "${PREQUELS:-yes}" = "no" ] && sed -i '19s,:.*,:,' $PKG/install/slack-desc
+
cd $PKG
-/sbin/makepkg -l y -c n $OUTPUT/$PRGNAM-$VERSION-$ARCH-$BUILD$TAG.${PKGTYPE:-tgz}
+/sbin/makepkg -l y -c n $OUTPUT/$PRGNAM-$VERSION-$ARCH-$BUILD$TAG.$PKGTYPE
diff --git a/games/fortune-dune/fortune-dune.info b/games/fortune-dune/fortune-dune.info
index 83e9ba3260..72930208ac 100644
--- a/games/fortune-dune/fortune-dune.info
+++ b/games/fortune-dune/fortune-dune.info
@@ -7,4 +7,4 @@ DOWNLOAD_x86_64=""
MD5SUM_x86_64=""
REQUIRES=""
MAINTAINER="B. Watson"
-EMAIL="yalhcru@gmail.com"
+EMAIL="urchlay@slackware.uk"
diff --git a/games/fortune-farscape/fortune-farscape.SlackBuild b/games/fortune-farscape/fortune-farscape.SlackBuild
index ce16787d16..d8b0d2ce92 100644
--- a/games/fortune-farscape/fortune-farscape.SlackBuild
+++ b/games/fortune-farscape/fortune-farscape.SlackBuild
@@ -1,8 +1,8 @@
-#!/bin/sh
+#!/bin/bash
# Slackware build script for fortune-farscape
-# Written by B. Watson (yalhcru@gmail.com)
+# Written by B. Watson (urchlay@slackware.uk)
# Licensed under the WTFPL. See http://www.wtfpl.net/txt/copying/ for details.
@@ -13,13 +13,20 @@
# specifically "Beware of Dog", "Incubator", "I-Yensch, You-Yensch",
# "Twice Shy".
+cd $(dirname $0) ; CWD=$(pwd)
+
PRGNAM=fortune-farscape
VERSION=${VERSION:-20191224}
BUILD=${BUILD:-1}
TAG=${TAG:-_SBo}
+PKGTYPE=${PKGTYPE:-tgz}
ARCH=noarch
-CWD=$(pwd)
+if [ ! -z "${PRINT_PACKAGE_NAME}" ]; then
+ echo "$PRGNAM-$VERSION-$ARCH-$BUILD$TAG.$PKGTYPE"
+ exit 0
+fi
+
TMP=${TMP:-/tmp/SBo}
PKG=$TMP/package-$PRGNAM
OUTPUT=${OUTPUT:-/tmp}
@@ -41,4 +48,4 @@ mkdir -p $PKG/install
cat $CWD/slack-desc > $PKG/install/slack-desc
cd $PKG
-/sbin/makepkg -l y -c n $OUTPUT/$PRGNAM-$VERSION-$ARCH-$BUILD$TAG.${PKGTYPE:-tgz}
+/sbin/makepkg -l y -c n $OUTPUT/$PRGNAM-$VERSION-$ARCH-$BUILD$TAG.$PKGTYPE
diff --git a/games/fortune-farscape/fortune-farscape.info b/games/fortune-farscape/fortune-farscape.info
index 4054711f1c..c37a08caf8 100644
--- a/games/fortune-farscape/fortune-farscape.info
+++ b/games/fortune-farscape/fortune-farscape.info
@@ -7,4 +7,4 @@ DOWNLOAD_x86_64=""
MD5SUM_x86_64=""
REQUIRES=""
MAINTAINER="B. Watson"
-EMAIL="yalhcru@gmail.com"
+EMAIL="urchlay@slackware.uk"
diff --git a/games/fortune-futurama/fortune-futurama.SlackBuild b/games/fortune-futurama/fortune-futurama.SlackBuild
index 823c848e32..ad997e268d 100644
--- a/games/fortune-futurama/fortune-futurama.SlackBuild
+++ b/games/fortune-futurama/fortune-futurama.SlackBuild
@@ -1,20 +1,27 @@
-#!/bin/sh
+#!/bin/bash
# Slackware build script for fortune-futurama
-# Written by B. Watson (yalhcru@gmail.com)
+# Written by B. Watson (urchlay@slackware.uk)
# Licensed under the WTFPL. See http://www.wtfpl.net/txt/copying/
# for details.
+cd $(dirname $0) ; CWD=$(pwd)
+
PRGNAM=fortune-futurama
VERSION=${VERSION:-0.2}
BUILD=${BUILD:-1}
TAG=${TAG:-_SBo}
+PKGTYPE=${PKGTYPE:-tgz}
ARCH=noarch
-CWD=$(pwd)
+if [ ! -z "${PRINT_PACKAGE_NAME}" ]; then
+ echo "$PRGNAM-$VERSION-$ARCH-$BUILD$TAG.$PKGTYPE"
+ exit 0
+fi
+
TMP=${TMP:-/tmp/SBo}
PKG=$TMP/package-$PRGNAM
OUTPUT=${OUTPUT:-/tmp}
@@ -52,4 +59,4 @@ mkdir -p $PKG/install
cat $CWD/slack-desc > $PKG/install/slack-desc
cd $PKG
-/sbin/makepkg -l y -c n $OUTPUT/$PRGNAM-$VERSION-$ARCH-$BUILD$TAG.${PKGTYPE:-tgz}
+/sbin/makepkg -l y -c n $OUTPUT/$PRGNAM-$VERSION-$ARCH-$BUILD$TAG.$PKGTYPE
diff --git a/games/fortune-futurama/fortune-futurama.info b/games/fortune-futurama/fortune-futurama.info
index 755a6e4ae6..26f972cae9 100644
--- a/games/fortune-futurama/fortune-futurama.info
+++ b/games/fortune-futurama/fortune-futurama.info
@@ -7,4 +7,4 @@ DOWNLOAD_x86_64=""
MD5SUM_x86_64=""
REQUIRES=""
MAINTAINER="B. Watson"
-EMAIL="yalhcru@gmail.com"
+EMAIL="urchlay@slackware.uk"
diff --git a/games/fortune-game_of_thrones/fortune-game_of_thrones.SlackBuild b/games/fortune-game_of_thrones/fortune-game_of_thrones.SlackBuild
index 7d0e98d5fa..af7d15ca68 100644
--- a/games/fortune-game_of_thrones/fortune-game_of_thrones.SlackBuild
+++ b/games/fortune-game_of_thrones/fortune-game_of_thrones.SlackBuild
@@ -1,32 +1,33 @@
-#!/bin/sh
+#!/bin/bash
# Slackware build script for fortune-game_of_thrones
-# Written by B. Watson (yalhcru@gmail.com)
+# Written by B. Watson (urchlay@slackware.uk)
# Licensed under the WTFPL. See http://www.wtfpl.net/txt/copying/ for details.
# VERSION is the date given on the upstream site, and also the timestamp
# of the zip file.
+# 20230107 bkw: fix ARCH, make PRINT_PACKAGE_NAME work.
+
+cd $(dirname $0) ; CWD=$(pwd)
+
PRGNAM=fortune-game_of_thrones
-VERSION=${VERSION:-20170524}
+VERSION=${VERSION:-20210128}
BUILD=${BUILD:-1}
TAG=${TAG:-_SBo}
+PKGTYPE=${PKGTYPE:-tgz}
+ARCH=noarch
-if [ -z "$ARCH" ]; then
- case "$( uname -m )" in
- i?86) ARCH=i586 ;;
- arm*) ARCH=arm ;;
- *) ARCH=$( uname -m ) ;;
- esac
+if [ ! -z "${PRINT_PACKAGE_NAME}" ]; then
+ echo "$PRGNAM-$VERSION-$ARCH-$BUILD$TAG.$PKGTYPE"
+ exit 0
fi
-CWD=$(pwd)
TMP=${TMP:-/tmp/SBo}
PKG=$TMP/package-$PRGNAM
OUTPUT=${OUTPUT:-/tmp}
-ARCH=noarch
set -e
@@ -63,4 +64,4 @@ mkdir -p $PKG/install
cat $CWD/slack-desc > $PKG/install/slack-desc
cd $PKG
-/sbin/makepkg -l y -c n $OUTPUT/$PRGNAM-$VERSION-$ARCH-$BUILD$TAG.${PKGTYPE:-tgz}
+/sbin/makepkg -l y -c n $OUTPUT/$PRGNAM-$VERSION-$ARCH-$BUILD$TAG.$PKGTYPE
diff --git a/games/fortune-game_of_thrones/fortune-game_of_thrones.info b/games/fortune-game_of_thrones/fortune-game_of_thrones.info
index 0b6686bc55..b6f7757f45 100644
--- a/games/fortune-game_of_thrones/fortune-game_of_thrones.info
+++ b/games/fortune-game_of_thrones/fortune-game_of_thrones.info
@@ -1,10 +1,10 @@
PRGNAM="fortune-game_of_thrones"
-VERSION="20170524"
-HOMEPAGE="http://www.innermind.com/software/quotes/files/qfiles.htm"
-DOWNLOAD="http://www.innermind.com/software/quotes/files/Game_of_Thrones-quotes.zip"
-MD5SUM="51e800c75b4e0486482ca4e6a909f0c0"
+VERSION="20210128"
+HOMEPAGE="https://www.innermind.com/software/quotes/files/qfiles.htm"
+DOWNLOAD="https://www.innermind.com/software/quotes/files/Game_of_Thrones-quotes.zip"
+MD5SUM="6ccfb925ed727b2ea79047fc2edd7ce8"
DOWNLOAD_x86_64=""
MD5SUM_x86_64=""
REQUIRES=""
MAINTAINER="B. Watson"
-EMAIL="yalhcru@gmail.com"
+EMAIL="urchlay@slackware.uk"
diff --git a/games/fortune-noobfarm/fortune-noobfarm.SlackBuild b/games/fortune-noobfarm/fortune-noobfarm.SlackBuild
index 293e14b5aa..664a8e2f23 100644
--- a/games/fortune-noobfarm/fortune-noobfarm.SlackBuild
+++ b/games/fortune-noobfarm/fortune-noobfarm.SlackBuild
@@ -1,18 +1,25 @@
-#!/bin/sh
+#!/bin/bash
# Slackware build script for fortune-noobfarm
-# Written by B. Watson (yalhcru@gmail.com)
+# Written by B. Watson (urchlay@slackware.uk)
# Licensed under the WTFPL. See http://www.wtfpl.net/txt/copying/ for details.
+cd $(dirname $0) ; CWD=$(pwd)
+
PRGNAM=fortune-noobfarm
VERSION=${VERSION:-20201030}
BUILD=${BUILD:-1}
TAG=${TAG:-_SBo}
+PKGTYPE=${PKGTYPE:-tgz}
ARCH=noarch
-CWD=$(pwd)
+if [ ! -z "${PRINT_PACKAGE_NAME}" ]; then
+ echo "$PRGNAM-$VERSION-$ARCH-$BUILD$TAG.$PKGTYPE"
+ exit 0
+fi
+
TMP=${TMP:-/tmp/SBo}
PKG=$TMP/package-$PRGNAM
OUTPUT=${OUTPUT:-/tmp}
@@ -41,4 +48,4 @@ mkdir -p $PKG/install
cat $CWD/slack-desc > $PKG/install/slack-desc
cd $PKG
-/sbin/makepkg -l y -c n $OUTPUT/$PRGNAM-$VERSION-$ARCH-$BUILD$TAG.${PKGTYPE:-tgz}
+/sbin/makepkg -l y -c n $OUTPUT/$PRGNAM-$VERSION-$ARCH-$BUILD$TAG.$PKGTYPE
diff --git a/games/fortune-noobfarm/fortune-noobfarm.info b/games/fortune-noobfarm/fortune-noobfarm.info
index 36d9d16064..95c524e4ca 100644
--- a/games/fortune-noobfarm/fortune-noobfarm.info
+++ b/games/fortune-noobfarm/fortune-noobfarm.info
@@ -7,4 +7,4 @@ DOWNLOAD_x86_64=""
MD5SUM_x86_64=""
REQUIRES=""
MAINTAINER="B. Watson"
-EMAIL="yalhcru@gmail.com"
+EMAIL="urchlay@slackware.uk"
diff --git a/games/fortune-slackware/fortune-slackware.SlackBuild b/games/fortune-slackware/fortune-slackware.SlackBuild
index ba5c4367f8..bb0b5e61c2 100644
--- a/games/fortune-slackware/fortune-slackware.SlackBuild
+++ b/games/fortune-slackware/fortune-slackware.SlackBuild
@@ -1,18 +1,25 @@
-#!/bin/sh
+#!/bin/bash
# Slackware build script for fortune-slackware
-# Written by B. Watson (yalhcru@gmail.com)
+# Written by B. Watson (urchlay@slackware.uk)
# Licensed under the WTFPL. See http://www.wtfpl.net/txt/copying/ for details.
+cd $(dirname $0) ; CWD=$(pwd)
+
PRGNAM=fortune-slackware
VERSION=${VERSION:-1.15}
BUILD=${BUILD:-1}
TAG=${TAG:-_SBo}
+PKGTYPE=${PKGTYPE:-tgz}
ARCH=noarch
-CWD=$(pwd)
+if [ ! -z "${PRINT_PACKAGE_NAME}" ]; then
+ echo "$PRGNAM-$VERSION-$ARCH-$BUILD$TAG.$PKGTYPE"
+ exit 0
+fi
+
TMP=${TMP:-/tmp/SBo}
PKG=$TMP/package-$PRGNAM
OUTPUT=${OUTPUT:-/tmp}
@@ -56,4 +63,4 @@ mkdir -p $PKG/install
cat $CWD/slack-desc > $PKG/install/slack-desc
cd $PKG
-/sbin/makepkg -l y -c n $OUTPUT/$PRGNAM-$VERSION-$ARCH-$BUILD$TAG.${PKGTYPE:-tgz}
+/sbin/makepkg -l y -c n $OUTPUT/$PRGNAM-$VERSION-$ARCH-$BUILD$TAG.$PKGTYPE
diff --git a/games/fortune-slackware/fortune-slackware.info b/games/fortune-slackware/fortune-slackware.info
index 2f631dc4c5..a255a5164a 100644
--- a/games/fortune-slackware/fortune-slackware.info
+++ b/games/fortune-slackware/fortune-slackware.info
@@ -1,10 +1,10 @@
PRGNAM="fortune-slackware"
VERSION="1.15"
-HOMEPAGE="http://web.archive.org/web/20110816020410/http://fauxascii.com/linux/mod_quotes.html"
+HOMEPAGE="https://web.archive.org/web/20110816020410/http://fauxascii.com/linux/mod_quotes.html"
DOWNLOAD="https://slackware.uk/~urchlay/src/slack-fortunes-all-1.15.tgz"
MD5SUM="8fbf56ffc9ebceda518f02b3a8d0e55e"
DOWNLOAD_x86_64=""
MD5SUM_x86_64=""
REQUIRES=""
MAINTAINER="B. Watson"
-EMAIL="yalhcru@gmail.com"
+EMAIL="urchlay@slackware.uk"
diff --git a/games/fortune-starwars/fortune-starwars.SlackBuild b/games/fortune-starwars/fortune-starwars.SlackBuild
index 099bee62e3..1955069006 100644
--- a/games/fortune-starwars/fortune-starwars.SlackBuild
+++ b/games/fortune-starwars/fortune-starwars.SlackBuild
@@ -1,21 +1,28 @@
-#!/bin/sh
+#!/bin/bash
# Slackware build script for fortune-starwars
-# Written by B. Watson (yalhcru@gmail.com)
+# Written by B. Watson (urchlay@slackware.uk)
# Licensed under the WTFPL. See http://www.wtfpl.net/txt/copying/ for details.
# VERSION is the timestamp on the tarball.
+cd $(dirname $0) ; CWD=$(pwd)
+
PRGNAM=fortune-starwars
VERSION=${VERSION:-20051125}
BUILD=${BUILD:-1}
TAG=${TAG:-_SBo}
+PKGTYPE=${PKGTYPE:-tgz}
ARCH=noarch
-CWD=$(pwd)
+if [ ! -z "${PRINT_PACKAGE_NAME}" ]; then
+ echo "$PRGNAM-$VERSION-$ARCH-$BUILD$TAG.$PKGTYPE"
+ exit 0
+fi
+
TMP=${TMP:-/tmp/SBo}
PKG=$TMP/package-$PRGNAM
OUTPUT=${OUTPUT:-/tmp}
@@ -47,4 +54,4 @@ mkdir -p $PKG/install
cat $CWD/slack-desc > $PKG/install/slack-desc
cd $PKG
-/sbin/makepkg -l y -c n $OUTPUT/$PRGNAM-$VERSION-$ARCH-$BUILD$TAG.${PKGTYPE:-tgz}
+/sbin/makepkg -l y -c n $OUTPUT/$PRGNAM-$VERSION-$ARCH-$BUILD$TAG.$PKGTYPE
diff --git a/games/fortune-starwars/fortune-starwars.info b/games/fortune-starwars/fortune-starwars.info
index 67f1dccca9..3262c82f06 100644
--- a/games/fortune-starwars/fortune-starwars.info
+++ b/games/fortune-starwars/fortune-starwars.info
@@ -7,4 +7,4 @@ DOWNLOAD_x86_64=""
MD5SUM_x86_64=""
REQUIRES=""
MAINTAINER="B. Watson"
-EMAIL="yalhcru@gmail.com"
+EMAIL="urchlay@slackware.uk"
diff --git a/games/fortune_doctor_who/fortune_doctor_who.SlackBuild b/games/fortune_doctor_who/fortune_doctor_who.SlackBuild
index 3dd56d97a6..2ca1571e48 100644
--- a/games/fortune_doctor_who/fortune_doctor_who.SlackBuild
+++ b/games/fortune_doctor_who/fortune_doctor_who.SlackBuild
@@ -1,23 +1,31 @@
-#!/bin/sh
+#!/bin/bash
# Slackware build script for fortune_doctor_who
-# Written by B. Watson (yalhcru@gmail.com)
+# Written by B. Watson (urchlay@slackware.uk)
# Licensed under the WTFPL. See http://www.wtfpl.net/txt/copying/ for details.
+# 20230107 bkw: fix PRINT_PACKAGE_NAME.
+
+cd $(dirname $0) ; CWD=$(pwd)
+
PRGNAM=fortune_doctor_who
VERSION=${VERSION:-20200923}
BUILD=${BUILD:-1}
TAG=${TAG:-_SBo}
+PKGTYPE=${PKGTYPE:-tgz}
+ARCH=noarch
+
+if [ ! -z "${PRINT_PACKAGE_NAME}" ]; then
+ echo "$PRGNAM-$VERSION-$ARCH-$BUILD$TAG.$PKGTYPE"
+ exit 0
+fi
-CWD=$(pwd)
TMP=${TMP:-/tmp/SBo}
PKG=$TMP/package-$PRGNAM
OUTPUT=${OUTPUT:-/tmp}
-ARCH=noarch
-
set -e
rm -rf $PKG
@@ -52,4 +60,4 @@ mkdir -p $PKG/install
cat $CWD/slack-desc > $PKG/install/slack-desc
cd $PKG
-/sbin/makepkg -l y -c n $OUTPUT/$PRGNAM-$VERSION-$ARCH-$BUILD$TAG.${PKGTYPE:-tgz}
+/sbin/makepkg -l y -c n $OUTPUT/$PRGNAM-$VERSION-$ARCH-$BUILD$TAG.$PKGTYPE
diff --git a/games/fortune_doctor_who/fortune_doctor_who.info b/games/fortune_doctor_who/fortune_doctor_who.info
index d02e2b9a95..894a8dbdb5 100644
--- a/games/fortune_doctor_who/fortune_doctor_who.info
+++ b/games/fortune_doctor_who/fortune_doctor_who.info
@@ -1,12 +1,12 @@
PRGNAM="fortune_doctor_who"
VERSION="20200923"
-HOMEPAGE="http://www.innermind.com/software/quotes/files/qfiles.htm"
-DOWNLOAD="http://www.innermind.com/software/quotes/files/Doctor_Who01-08-quotes.zip \
- http://www.innermind.com/software/quotes/files/Doctor_Who10-quotes.zip \
- http://www.innermind.com/software/quotes/files/Doctor_Who11-quotes.zip \
- http://www.innermind.com/software/quotes/files/Doctor_Who09-quotes.zip \
- http://www.innermind.com/software/quotes/files/Doctor_Who12-quotes.zip \
- http://www.innermind.com/software/quotes/files/Doctor_Who13-quotes.zip"
+HOMEPAGE="https://www.innermind.com/software/quotes/files/qfiles.htm"
+DOWNLOAD="https://www.innermind.com/software/quotes/files/Doctor_Who01-08-quotes.zip \
+ https://www.innermind.com/software/quotes/files/Doctor_Who10-quotes.zip \
+ https://www.innermind.com/software/quotes/files/Doctor_Who11-quotes.zip \
+ https://www.innermind.com/software/quotes/files/Doctor_Who09-quotes.zip \
+ https://www.innermind.com/software/quotes/files/Doctor_Who12-quotes.zip \
+ https://www.innermind.com/software/quotes/files/Doctor_Who13-quotes.zip"
MD5SUM="e26d5ff60423ebd48b28e4e200d4b22f \
4431eeaf5e0f469ccff6d59eaa12bd68 \
13f25a1f6e37c1abd3963de90159db57 \
@@ -17,4 +17,4 @@ DOWNLOAD_x86_64=""
MD5SUM_x86_64=""
REQUIRES=""
MAINTAINER="B. Watson"
-EMAIL="yalhcru@gmail.com"
+EMAIL="urchlay@slackware.uk"
diff --git a/games/fortune_firefly/README b/games/fortune_firefly/README
index d7df06f7db..8ece1bbfa1 100644
--- a/games/fortune_firefly/README
+++ b/games/fortune_firefly/README
@@ -1,26 +1,28 @@
-This package contains fortunes from the TV series "Firefly", and it's
-movie "Serenity", by Joss Whedon. The series survived only one season
-on Fox; the network scheduled a bad timeslot, played the episodes out
-of order, and in general helped seal its fate. Nonetheless, the series
-built up a cult following; as DVD sales skyrocketted, Universal decided
-to sponsor a movie based on the series.
+fortune_firefly (fortunes from the TV series "Firefly")
-Firefly is often described as a "Space Western". A mix of humor
-and seriousness, it is sometimes described as "Star Wars" with
-the Rebellion having been brutally crushed and Han Solo needing a
-new job. Over 500 years in the future, a band of humans terraformed
-a nearby planetary system with dozens of habitable planets. The most
+This package contains fortunes from the TV series "Firefly", and its
+movie "Serenity", by Joss Whedon. The series survived only one season
+on Fox; the network scheduled a bad timeslot, played the episodes
+out of order, and in general helped seal its fate. Nonetheless, the
+series built up a cult following; as DVD sales skyrocketted, Universal
+decided to sponsor a movie based on the series.
+
+Firefly is often described as a "Space Western". A mix of humor
+and seriousness, it is sometimes described as "Star Wars" with the
+Rebellion having been brutally crushed and Han Solo needing a new
+job. Over 500 years in the future, a band of humans terraformed a
+nearby planetary system with dozens of habitable planets. The most
developed planets, toward the core, live in "civilization", and formed
the Alliance; the planets on the rim tend to struggle to survive,
-and launched a failed rebellion against Alliance rule. Captain
+and launched a failed rebellion against Alliance rule. Captain
Malcolm Reynolds, a former "browncoat" (rebel) commander, captains
a Firefly-class starship named "Serenity", with a small, mostly
loyal crew, taking whatever jobs (legal or otherwise) that they can.
Their lives become more complicated when, after taking on passengers
-for cover, they inadvertently take in a mentally disturbed girl who the
-Alliance wants more than anything else.
+for cover, they inadvertently take in a mentally disturbed girl who
+the Alliance wants more than anything else.
All of the quotes in this package are copyrighted by Fox Broadcasting
-Corporation and Universal Pictures. Authorship of the quotes is by
-Tim Minear, Joss Whedon, Ben Edulund, Jane Esperson, Drew Z. Greenberg,
+Corporation and Universal Pictures. Authorship of the quotes is by Tim
+Minear, Joss Whedon, Ben Edulund, Jane Esperson, Drew Z. Greenberg,
Jose Molina, Cheryl Cain, and Brent Matthews.
diff --git a/games/fortune_firefly/fortune_firefly.SlackBuild b/games/fortune_firefly/fortune_firefly.SlackBuild
index 13f86ce905..56d6d217f9 100644
--- a/games/fortune_firefly/fortune_firefly.SlackBuild
+++ b/games/fortune_firefly/fortune_firefly.SlackBuild
@@ -1,11 +1,17 @@
-#!/bin/sh
+#!/bin/bash
# Slackware build script for fortune_firefly
-# Written by B. Watson (yalhcru@gmail.com)
+# Written by B. Watson (urchlay@slackware.uk)
# Licensed under the WTFPL. See http://www.wtfpl.net/txt/copying/ for details.
+# TODO: this build needs to be renamed to fortune-firefly (I used a _
+# ages ago and have since changed my mind).
+
+# 20230828 bkw: updated to my own compilation of firefly quotes,
+# v20230828bkw, which has ~50% more content.
+
# 20180209 bkw: homepage went away again, use someone's github mirror
# of the now-vanished fedora repo.
@@ -14,14 +20,23 @@
# - hosting the source myself now
# - homepage went away, so use fedora's cgit for homepage
+cd $(dirname $0) ; CWD=$(pwd)
+
PRGNAM=fortune_firefly
-SRCNAM=firefly
-VERSION=${VERSION:-2.1.2}
+SRCNAM=fortune-firefly-bkw
+VERSION=${VERSION:-20230828bkw}
+SRCVER=${VERSION/bkw/}
+SRCVER="$( echo $VERSION | sed 's,bkw$,,' )"
ARCH=noarch
BUILD=${BUILD:-1}
TAG=${TAG:-_SBo}
+PKGTYPE=${PKGTYPE:-tgz}
+
+if [ ! -z "${PRINT_PACKAGE_NAME}" ]; then
+ echo "$PRGNAM-$VERSION-$ARCH-$BUILD$TAG.$PKGTYPE"
+ exit 0
+fi
-CWD=$(pwd)
TMP=${TMP:-/tmp/SBo}
PKG=$TMP/package-$PRGNAM
OUTPUT=${OUTPUT:-/tmp}
@@ -29,21 +44,22 @@ OUTPUT=${OUTPUT:-/tmp}
set -e
rm -rf $PKG
-mkdir -p $PKG $OUTPUT
+mkdir -p $TMP $PKG/install $OUTPUT
+cd $TMP
+rm -rf $SRCNAM-$SRCVER
+tar xvf $CWD/$SRCNAM-$SRCVER.tar.xz
+cd $SRCNAM-$SRCVER
+chmod 644 *
+chown root:root *
-mkdir -p $PKG/usr/share/games/fortunes
-cd $PKG/usr/share/games/fortunes
-xzcat $CWD/$SRCNAM-$VERSION.xz > $SRCNAM
+DOCDIR=/usr/doc/$PRGNAM-$VERSION
+PKGDOC=$PKG/$DOCDIR
-rm -f $SRCNAM.dat
-strfile $SRCNAM
+make install DESTDIR=$PKG DOCDIR=$DOCDIR
-mkdir -p $PKG/usr/doc/$PRGNAM-$VERSION
-cat $CWD/README > $PKG/usr/doc/$PRGNAM-$VERSION/README
-cat $CWD/$PRGNAM.SlackBuild > $PKG/usr/doc/$PRGNAM-$VERSION/$PRGNAM.SlackBuild
+cat $CWD/$PRGNAM.SlackBuild > $PKGDOC/$PRGNAM.SlackBuild
-mkdir -p $PKG/install
cat $CWD/slack-desc > $PKG/install/slack-desc
cd $PKG
-/sbin/makepkg -l y -c n $OUTPUT/$PRGNAM-$VERSION-$ARCH-$BUILD$TAG.${PKGTYPE:-tgz}
+/sbin/makepkg -l y -c n $OUTPUT/$PRGNAM-$VERSION-$ARCH-$BUILD$TAG.$PKGTYPE
diff --git a/games/fortune_firefly/fortune_firefly.info b/games/fortune_firefly/fortune_firefly.info
index 7d4c36bfe8..a01da33cd8 100644
--- a/games/fortune_firefly/fortune_firefly.info
+++ b/games/fortune_firefly/fortune_firefly.info
@@ -1,10 +1,10 @@
PRGNAM="fortune_firefly"
-VERSION="2.1.2"
-HOMEPAGE="https://github.com/AndrewReitz/fortune-firefly"
-DOWNLOAD="https://slackware.uk/~urchlay/src/firefly-2.1.2.xz"
-MD5SUM="68e2c4ec035043ba3a0bab0a2b5f64b8"
+VERSION="20230828bkw"
+HOMEPAGE="https://slackware.uk/~urchlay/src/fortune-firefly-bkw.txt"
+DOWNLOAD="https://slackware.uk/~urchlay/src/fortune-firefly-bkw-20230828.tar.xz"
+MD5SUM="59fb3a3326d96cfa8505e39379d79676"
DOWNLOAD_x86_64=""
MD5SUM_x86_64=""
REQUIRES=""
MAINTAINER="B. Watson"
-EMAIL="yalhcru@gmail.com"
+EMAIL="urchlay@slackware.uk"
diff --git a/games/fortune_firefly/slack-desc b/games/fortune_firefly/slack-desc
index 570fa1011c..7363545350 100644
--- a/games/fortune_firefly/slack-desc
+++ b/games/fortune_firefly/slack-desc
@@ -9,7 +9,7 @@
fortune_firefly: fortune_firefly (fortunes from the TV series "Firefly")
fortune_firefly:
fortune_firefly: This package contains fortunes from the TV series "Firefly", and
-fortune_firefly: its movie "Serenity", by Joss Whedon. The series survived only
+fortune_firefly: its movie "Serenity", by Joss Whedon. The series survived only
fortune_firefly: one season on Fox; the network scheduled a bad timeslot, played
fortune_firefly: the episodes out of order, and in general helped seal its fate.
fortune_firefly: Nonetheless, the series built up a cult following; as DVD sales
diff --git a/games/freeblocks/freeblocks.SlackBuild b/games/freeblocks/freeblocks.SlackBuild
index 9efc9ea655..f4eb13abc7 100644
--- a/games/freeblocks/freeblocks.SlackBuild
+++ b/games/freeblocks/freeblocks.SlackBuild
@@ -1,18 +1,21 @@
-#!/bin/sh
+#!/bin/bash
# Slackware build script for freeblocks
-# Written by B. Watson (yalhcru@gmail.com)
+# Written by B. Watson (urchlay@slackware.uk)
# Licensed under the WTFPL. See http://www.wtfpl.net/txt/copying/ for details.
-# 20170301 bkw:
-# - use long-form github URL
+# 20210808 bkw: fix build on -current
+# 20170301 bkw: use long-form github URL
+
+cd $(dirname $0) ; CWD=$(pwd)
PRGNAM=freeblocks
VERSION=${VERSION:-0.5}
-BUILD=${BUILD:-1}
+BUILD=${BUILD:-2}
TAG=${TAG:-_SBo}
+PKGTYPE=${PKGTYPE:-tgz}
if [ -z "$ARCH" ]; then
case "$( uname -m )" in
@@ -22,7 +25,11 @@ if [ -z "$ARCH" ]; then
esac
fi
-CWD=$(pwd)
+if [ ! -z "${PRINT_PACKAGE_NAME}" ]; then
+ echo "$PRGNAM-$VERSION-$ARCH-$BUILD$TAG.$PKGTYPE"
+ exit 0
+fi
+
TMP=${TMP:-/tmp/SBo}
PKG=$TMP/package-$PRGNAM
OUTPUT=${OUTPUT:-/tmp}
@@ -50,11 +57,15 @@ rm -rf $PRGNAM-$VERSION
tar xvf $CWD/$PRGNAM-$VERSION.tar.gz
cd $PRGNAM-$VERSION
chown -R root:root .
-find -L . \
- \( -perm 777 -o -perm 775 -o -perm 750 -o -perm 711 -o -perm 555 \
- -o -perm 511 \) -exec chmod 755 {} \; -o \
- \( -perm 666 -o -perm 664 -o -perm 640 -o -perm 600 -o -perm 444 \
- -o -perm 440 -o -perm 400 \) -exec chmod 644 {} \;
+find -L . -perm /111 -a \! -perm 755 -a -exec chmod 755 {} \+ -o \
+ \! -perm /111 -a \! -perm 644 -a -exec chmod 644 {} \+
+
+# 20210808 bkw: Build was failing on -current due to duplicate symbols
+# at link time. The correct solution would be a big patch that turns
+# all the declarations in the headers into externs, and add all the
+# declarations as non-extern to some .c file. This seems to work OK
+# though (and the -Wl,-s strips the binary).
+SLKCFLAGS="$SLKCFLAGS -Wl,--allow-multiple-definition -Wl,-s"
mkdir -p build
cd build
@@ -65,10 +76,9 @@ cd build
-DCMAKE_INSTALL_PREFIX=/usr \
-DCMAKE_BUILD_TYPE=Release ..
make
- make install DESTDIR=$PKG
+ make install/strip DESTDIR=$PKG
cd ..
-strip $PKG/usr/games/$PRGNAM
sed -i \
'/^Categories/s,\(games\|SDL\);,,g' \
$PKG/usr/share/applications/$PRGNAM.desktop
@@ -82,4 +92,4 @@ cat $CWD/slack-desc > $PKG/install/slack-desc
cat $CWD/doinst.sh > $PKG/install/doinst.sh
cd $PKG
-/sbin/makepkg -l y -c n $OUTPUT/$PRGNAM-$VERSION-$ARCH-$BUILD$TAG.${PKGTYPE:-tgz}
+/sbin/makepkg -l y -c n $OUTPUT/$PRGNAM-$VERSION-$ARCH-$BUILD$TAG.$PKGTYPE
diff --git a/games/freeblocks/freeblocks.info b/games/freeblocks/freeblocks.info
index 5f99ad3196..ac830275ae 100644
--- a/games/freeblocks/freeblocks.info
+++ b/games/freeblocks/freeblocks.info
@@ -7,4 +7,4 @@ DOWNLOAD_x86_64=""
MD5SUM_x86_64=""
REQUIRES=""
MAINTAINER="B. Watson"
-EMAIL="yalhcru@gmail.com"
+EMAIL="urchlay@slackware.uk"
diff --git a/games/freeciv/freeciv.SlackBuild b/games/freeciv/freeciv.SlackBuild
index 7918aaabc9..a5bf1ae724 100644
--- a/games/freeciv/freeciv.SlackBuild
+++ b/games/freeciv/freeciv.SlackBuild
@@ -1,4 +1,4 @@
-#!/bin/sh
+#!/bin/bash
# Slackware build script for freeciv
# Yth | Pont-en-Royans, France | yth@ythogtha.org
@@ -27,11 +27,14 @@
# OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF THIS SOFTWARE, EVEN IF
# ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
+cd $(dirname $0) ; CWD=$(pwd)
+
PRGNAM=freeciv
-VERSION=${VERSION:-2.6.2}
-SRCVERSION=${SRCVERSION:-2.6.2}
+VERSION=${VERSION:-3.1.0}
+SRCVERSION=${SRCVERSION:-3.1.0}
BUILD=${BUILD:-1}
TAG=${TAG:-_SBo}
+PKGTYPE=${PKGTYPE:-tgz}
if [ -z "$ARCH" ]; then
case "$( uname -m )" in
@@ -41,7 +44,11 @@ if [ -z "$ARCH" ]; then
esac
fi
-CWD=$(pwd)
+if [ ! -z "${PRINT_PACKAGE_NAME}" ]; then
+ echo "$PRGNAM-$VERSION-$ARCH-$BUILD$TAG.$PKGTYPE"
+ exit 0
+fi
+
TMP=${TMP:-/tmp/SBo}
PKG=$TMP/package-$PRGNAM
OUTPUT=${OUTPUT:-/tmp}
@@ -55,6 +62,9 @@ elif [ "$ARCH" = "i686" ]; then
elif [ "$ARCH" = "x86_64" ]; then
SLKCFLAGS="-O2 -fPIC"
LIBDIRSUFFIX="64"
+elif [ "$ARCH" = "aarch64" ]; then
+ SLKCFLAGS="-O2 -fPIC"
+ LIBDIRSUFFIX="64"
else
SLKCFLAGS="-O2"
LIBDIRSUFFIX=""
@@ -66,7 +76,7 @@ rm -rf $PKG
mkdir -p $TMP $PKG $OUTPUT
cd $TMP
rm -rf $PRGNAM-$SRCVERSION
-tar xvf $CWD/$PRGNAM-$SRCVERSION.tar.bz2
+tar xvf $CWD/$PRGNAM-$SRCVERSION.tar.xz
cd $PRGNAM-$SRCVERSION
chown -R root:root .
find -L . \
@@ -83,6 +93,7 @@ CXXFLAGS="$SLKCFLAGS" \
--sysconfdir=/etc \
--localstatedir=/var \
--mandir=/usr/man \
+ --docdir=/usr/doc/$PRGNAM-$VERSION/ \
--without-ggz-client \
--enable-client=gtk3 \
--enable-static=no \
@@ -99,17 +110,16 @@ find $PKG -print0 | xargs -0 file | grep -e "executable" -e "shared object" | gr
find $PKG/usr/man -type f -exec gzip -9 {} \;
for i in $( find $PKG/usr/man -type l ) ; do ln -s $(readlink $i).gz $i.gz ; rm $i ; done
-mkdir -p $PKG/usr/doc/$PRGNAM-$VERSION
-cp -a ABOUT-NLS AUTHORS COPYING ChangeLog INSTALL NEWS README doc/ \
- $PKG/usr/doc/$PRGNAM-$VERSION
cat $CWD/$PRGNAM.SlackBuild > $PKG/usr/doc/$PRGNAM-$VERSION/$PRGNAM.SlackBuild
-rm -rf $PKG/usr/doc/$PRGNAM-$VERSION/man
+rm -rf $PKG/usr/doc/$PRGNAM-$VERSION/man $PKG/usr/doc/$PRGNAM-$VERSION/INSTALL*
find $PKG/usr/doc/$PRGNAM-$VERSION -name "Makefile*" -type f -exec rm {} \;
+rm -f $PKG/usr/lib*/*.la
+
mkdir -p $PKG/install
cat $CWD/slack-desc > $PKG/install/slack-desc
cat $CWD/doinst.sh > $PKG/install/doinst.sh
cd $PKG
-/sbin/makepkg -l y -c n $OUTPUT/$PRGNAM-$VERSION-$ARCH-$BUILD$TAG.${PKGTYPE:-tgz}
+/sbin/makepkg -l y -c n $OUTPUT/$PRGNAM-$VERSION-$ARCH-$BUILD$TAG.$PKGTYPE
diff --git a/games/freeciv/freeciv.info b/games/freeciv/freeciv.info
index 49b863c922..b57bd89161 100644
--- a/games/freeciv/freeciv.info
+++ b/games/freeciv/freeciv.info
@@ -1,8 +1,8 @@
PRGNAM="freeciv"
-VERSION="2.6.2"
+VERSION="3.1.0"
HOMEPAGE="http://www.freeciv.org"
-DOWNLOAD="http://files.freeciv.org/stable/freeciv-2.6.2.tar.bz2"
-MD5SUM="2c8b388ff8b814487477793d72462cbb"
+DOWNLOAD="http://files.freeciv.org/stable/freeciv-3.1.0.tar.xz"
+MD5SUM="c6d2a68f74f2fdecf7a793ee926129a4"
DOWNLOAD_x86_64=""
MD5SUM_x86_64=""
REQUIRES=""
diff --git a/games/freedink/README b/games/freedink/README
index 37eb59017f..96b7507c2f 100644
--- a/games/freedink/README
+++ b/games/freedink/README
@@ -1,37 +1,12 @@
-Freedink is a free role play game in real. You take
-control of Dink Smallwood and guide through his many adventures.
-There are many battles to fought and riddles to be solved.
-You can install additional advanture through additional D-Mods
-which are available at https://www.dinknetwork.com.
+Freedink is a free role-playing game. You take control of
+Dink Smallwood and guide him through his many adventures.
+There are many battles to be fought and riddles to be solved.
+You can install additional adventures through additional D-Mods
+which are available at
-Known issues:
-- Parallel compilation may result in a failed build.
+ https://www.dinknetwork.com
-- Freedink might start in a maximized, not resizable window. Parts of
- it may be outside the Desktop. If this happens then start the
- program from CLI in windowed mode:
-
- freedink -i -w
-
- Afterwards you can switch to fullscreen by pressing Alt+Enter.
-
-- Not all music will be available. See this review (bottom) for
- some more info on this matter:
-
- https://www.dinknetwork.com/file/gnu_freedink/review/scratcher
-
-Optional dependency:
-- upx
- If upx is installed on the system then it is automatically
- detected and considered at compile time.
-
- If for some reason this is not desired then the script
- should be called as
-
- ENABLE_UPX=no ./freedink.Slackbuild
-
- If UPX resides in a non-standard location then it
- can be provided by setting
-
- UPX=/path/to/upx ./freedink.Slackbuild
+For optional dependencies see README.SBo,
+especially if you want to play MIDIs with 'fluidsynth' and
+'fluid-soundfont' (recommended).
diff --git a/games/freedink/README.SBo b/games/freedink/README.SBo
new file mode 100644
index 0000000000..44abdf08f7
--- /dev/null
+++ b/games/freedink/README.SBo
@@ -0,0 +1,49 @@
+Known build issues:
+-------------------
+
+- Parallel compilation may result in a failed build (but, as of
+ Slackware 15.0, it seems to work fine).
+
+- Freedink will play MIDI files if 'fluid-soundfont'
+ has been installed.
+
+- Not all music might be available. See this review (bottom) for
+ some more info on this subject:
+
+ https://www.dinknetwork.com/file/gnu_freedink/review/scratcher
+
+
+Known runtime issues:
+---------------------
+
+- Freedink might start in a maximized, not resizable window. Parts of
+ it may be outside the Desktop. If this happens then start the
+ program in windowed mode. If you are using 'dfarc' you can
+ just check the corresponding box, otherwise you can start 'freedink'
+ from the CLI in windowes mode:
+
+ freedink -i -w
+
+ Afterwards you can switch to fullscreen by pressing Alt+Enter.
+
+
+Optional dependencies:
+----------------------
+
+- Recommended: 'fluid-soundfont'.
+ See above for possible issues.
+
+- 'upx'
+ If 'upx' is installed on the system then it is automatically
+ detected and considered at compile time.
+
+ If for some reason this is not desired then the script
+ should be called as
+
+ ENABLE_UPX=no ./freedink.Slackbuild
+
+ If UPX resides in a non-standard location then it
+ can be provided by setting
+
+ UPX=/path/to/upx ./freedink.Slackbuild
+
diff --git a/games/freedink/freedink.SlackBuild b/games/freedink/freedink.SlackBuild
index 28484cce1f..ff2a013f49 100644
--- a/games/freedink/freedink.SlackBuild
+++ b/games/freedink/freedink.SlackBuild
@@ -1,4 +1,4 @@
-#!/bin/sh
+#!/bin/bash
# Slackware build script for freedink
@@ -22,12 +22,15 @@
# OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF THIS SOFTWARE, EVEN IF
# ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
+cd $(dirname $0) ; CWD=$(pwd)
+
PRGNAM=freedink
PRGDATANAME=${PRGDATANAME:-$PRGNAM-data-*}
PRGDATANAME=${PRGDATANAME%.tar.gz}
VERSION=${VERSION:-109.6}
-BUILD=${BUILD:-2}
+BUILD=${BUILD:-3}
TAG=${TAG:-_SBo}
+PKGTYPE=${PKGTYPE:-tgz}
if [ -z "$ARCH" ]; then
case "$( uname -m )" in
@@ -37,7 +40,14 @@ if [ -z "$ARCH" ]; then
esac
fi
-CWD=$(pwd)
+# If the variable PRINT_PACKAGE_NAME is set, then this script will report what
+# the name of the created package would be, and then exit. This information
+# could be useful to other scripts.
+if [ ! -z "${PRINT_PACKAGE_NAME}" ]; then
+ echo "$PRGNAM-$VERSION-$ARCH-$BUILD$TAG.$PKGTYPE"
+ exit 0
+fi
+
TMP=${TMP:-/tmp/SBo}
PKG=$TMP/package-$PRGNAM
OUTPUT=${OUTPUT:-/tmp}
@@ -136,4 +146,4 @@ mkdir -p $PKG/install
cat $CWD/slack-desc > $PKG/install/slack-desc
cd $PKG
-/sbin/makepkg -l y -c n $OUTPUT/$PRGNAM-$VERSION-$ARCH-$BUILD$TAG.${PKGTYPE:-tgz}
+/sbin/makepkg -l y -c n $OUTPUT/$PRGNAM-$VERSION-$ARCH-$BUILD$TAG.$PKGTYPE
diff --git a/games/freedink/freedink.info b/games/freedink/freedink.info
index fb30d2eb2f..47447b2f44 100644
--- a/games/freedink/freedink.info
+++ b/games/freedink/freedink.info
@@ -7,6 +7,6 @@ MD5SUM="cdec0ef4db6d15b767f696745ef0ae2f \
6703e773f06dc53afa4094775beaff8d"
DOWNLOAD_x86_64=""
MD5SUM_x86_64=""
-REQUIRES="SDL2_image SDL2_mixer SDL2_ttf SDL2_gfx glm cxxtest"
+REQUIRES="glm"
MAINTAINER="CRTS"
EMAIL="crts [at] gmx [dot] net"
diff --git a/games/freedink/slack-desc b/games/freedink/slack-desc
index fe0576c3cf..c812af50e3 100644
--- a/games/freedink/slack-desc
+++ b/games/freedink/slack-desc
@@ -8,12 +8,12 @@
|-----handy-ruler------------------------------------------------------|
freedink: freedink (free RPG)
freedink:
-freedink: Freedink is a free role play game in real. You take
-freedink: control of Dink Smallwood and guide through his many adventures.
-freedink: There are many battles to fought and riddles to be solved.
-freedink: Additional D-Mods are available at https://www.dinknetwork.com
+freedink: Freedink is a free role-playing game. You take
+freedink: control of Dink Smallwood and guide him through his many
+freedink: adventures. There are many battles to be fought and riddles to be
+freedink: solved.
+freedink: Additional D-Mods available at: 'https://www.dinknetwork.com'
freedink:
freedink: Homepage: https://www.gnu.org/software/freedink
freedink:
freedink:
-freedink:
diff --git a/games/freedoom/freedoom.SlackBuild b/games/freedoom/freedoom.SlackBuild
index 625d0b934e..7ae7d0f201 100644
--- a/games/freedoom/freedoom.SlackBuild
+++ b/games/freedoom/freedoom.SlackBuild
@@ -1,24 +1,32 @@
-#!/bin/sh
+#!/bin/bash
# Slackware build script for freedoom
-# Written by B. Watson (yalhcru@gmail.com)
+# Written by B. Watson (urchlay@slackware.uk)
# Licensed under the WTFPL. See http://www.wtfpl.net/txt/copying/ for details.
+# 20240208 bkw: updated for v0.13.0
# 20191127 bkw: updated for v0.12.1, include shiny new PDF manual in pkg
# 20170721 bkw: updated for v0.11.3
# 20170324 bkw: updated for v0.11.2
# 20170301 bkw: updated for v0.11.1
+cd $(dirname $0) ; CWD=$(pwd)
+
PRGNAM=freedoom
-VERSION=${VERSION:-0.12.1}
+VERSION=${VERSION:-0.13.0}
BUILD=${BUILD:-1}
TAG=${TAG:-_SBo}
+PKGTYPE=${PKGTYPE:-tgz}
ARCH=noarch
-CWD=$(pwd)
+if [ ! -z "${PRINT_PACKAGE_NAME}" ]; then
+ echo "$PRGNAM-$VERSION-$ARCH-$BUILD$TAG.$PKGTYPE"
+ exit 0
+fi
+
TMP=${TMP:-/tmp/SBo}
PKG=$TMP/package-$PRGNAM
OUTPUT=${OUTPUT:-/tmp}
@@ -67,4 +75,4 @@ mkdir -p $PKG/install
cat $CWD/slack-desc > $PKG/install/slack-desc
cd $PKG
-/sbin/makepkg -l y -c n $OUTPUT/$PRGNAM-$VERSION-$ARCH-$BUILD$TAG.${PKGTYPE:-tgz}
+/sbin/makepkg -l y -c n $OUTPUT/$PRGNAM-$VERSION-$ARCH-$BUILD$TAG.$PKGTYPE
diff --git a/games/freedoom/freedoom.info b/games/freedoom/freedoom.info
index f59ec4ced8..48ee5896f9 100644
--- a/games/freedoom/freedoom.info
+++ b/games/freedoom/freedoom.info
@@ -1,12 +1,12 @@
PRGNAM="freedoom"
-VERSION="0.12.1"
+VERSION="0.13.0"
HOMEPAGE="https://freedoom.github.io/index.html"
-DOWNLOAD="https://github.com/freedoom/freedoom/releases/download/v0.12.1/freedoom-0.12.1.zip \
- https://github.com/freedoom/freedoom/releases/download/v0.12.1/freedm-0.12.1.zip"
-MD5SUM="f8c86928394b1d425ef60637b5e8ac31 \
- 169075b9e7bb903fa7601869355f280d"
+DOWNLOAD="https://github.com/freedoom/freedoom/releases/download/v0.13.0/freedoom-0.13.0.zip \
+ https://github.com/freedoom/freedoom/releases/download/v0.13.0/freedm-0.13.0.zip"
+MD5SUM="e37731df12c3e3790b1f5b7d318c84ff \
+ d317c7e7e4661dd4f88216a016c27aa1"
DOWNLOAD_x86_64=""
MD5SUM_x86_64=""
REQUIRES=""
MAINTAINER="B. Watson"
-EMAIL="yalhcru@gmail.com"
+EMAIL="urchlay@slackware.uk"
diff --git a/games/freedroid/freedroid.SlackBuild b/games/freedroid/freedroid.SlackBuild
index 8f6929f872..48fab00352 100644
--- a/games/freedroid/freedroid.SlackBuild
+++ b/games/freedroid/freedroid.SlackBuild
@@ -1,4 +1,4 @@
-#!/bin/sh
+#!/bin/bash
# Slackware build script for freedroid
@@ -22,10 +22,19 @@
# OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF THIS SOFTWARE, EVEN IF
# ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
+# 20220222 bkw: Modified by SlackBuilds.org, BUILD=2:
+# - fix build on 15.0.
+# - binary in /usr/games.
+# - use a PNG icon, not a windows .ico incorrectly named freedroid.svg.
+# - absolute paths in .desktop file.
+
+cd $(dirname $0) ; CWD=$(pwd)
+
PRGNAM=freedroid
VERSION=${VERSION:-1.0.2}
-BUILD=${BUILD:-1}
+BUILD=${BUILD:-2}
TAG=${TAG:-_SBo}
+PKGTYPE=${PKGTYPE:-tgz}
if [ -z "$ARCH" ]; then
case "$( uname -m )" in
@@ -35,7 +44,11 @@ if [ -z "$ARCH" ]; then
esac
fi
-CWD=$(pwd)
+if [ ! -z "${PRINT_PACKAGE_NAME}" ]; then
+ echo "$PRGNAM-$VERSION-$ARCH-$BUILD$TAG.$PKGTYPE"
+ exit 0
+fi
+
TMP=${TMP:-/tmp/SBo}
PKG=$TMP/package-$PRGNAM
OUTPUT=${OUTPUT:-/tmp}
@@ -65,14 +78,17 @@ cd $PRGNAM-$VERSION
chown -R root:root .
find -L . \
\( -perm 777 -o -perm 775 -o -perm 750 -o -perm 711 -o -perm 555 \
- -o -perm 511 \) -exec chmod 755 {} \; -o \
+ -o -perm 511 \) -exec chmod 755 {} \+ -o \
\( -perm 666 -o -perm 664 -o -perm 640 -o -perm 600 -o -perm 444 \
- -o -perm 440 -o -perm 400 \) -exec chmod 644 {} \;
+ -o -perm 440 -o -perm 400 \) -exec chmod 644 {} \+
+
+SLKCFLAGS+=" -fcommon"
CFLAGS="$SLKCFLAGS" \
CXXFLAGS="$SLKCFLAGS" \
./configure \
--prefix=/usr \
+ --bindir=/usr/games \
--libdir=/usr/lib${LIBDIRSUFFIX} \
--sysconfdir=/etc \
--localstatedir=/var \
@@ -80,26 +96,16 @@ CXXFLAGS="$SLKCFLAGS" \
--build=$ARCH-slackware-linux
make
-make install DESTDIR=$PKG
-
-find $PKG -print0 | xargs -0 file | grep -e "executable" -e "shared object" | grep ELF \
- | cut -f 1 -d : | xargs strip --strip-unneeded 2> /dev/null || true
-
-find $PKG -name perllocal.pod \
- -o -name ".packlist" \
- -o -name "*.bs" \
- | xargs rm -f
-
-find $PKG/usr/man -type f -exec gzip -9 {} \;
-for i in $( find $PKG/usr/man -type l ) ; do ln -s $( readlink $i ).gz $i.gz ; rm $i ; done
+make install-strip DESTDIR=$PKG
+gzip -9 $PKG/usr/man/man*/*
-rm -rf $PKG/usr/share/freedroid/mac-osx/
+rm -rf $PKG/usr/share/$PRGNAM/{$PRGNAM.6,mac-osx}
mkdir -p $PKG/usr/share/applications
install -D -m644 $CWD/$PRGNAM.desktop $PKG/usr/share/applications/$PRGNAM.desktop
mkdir -p $PKG/usr/share/pixmaps/
-install -D -m644 graphics/paraicon.ico $PKG/usr/share/pixmaps/$PRGNAM.svg
+convert graphics/paraicon.ico $PKG/usr/share/pixmaps/$PRGNAM.png
mkdir -p $PKG/usr/doc/$PRGNAM-$VERSION
cp -a AUTHORS COPYING ChangeLog NEWS README TODO $PKG/usr/doc/$PRGNAM-$VERSION
@@ -110,4 +116,4 @@ cat $CWD/slack-desc > $PKG/install/slack-desc
cat $CWD/doinst.sh > $PKG/install/doinst.sh
cd $PKG
-/sbin/makepkg -l y -c n $OUTPUT/$PRGNAM-$VERSION-$ARCH-$BUILD$TAG.${PKGTYPE:-tgz}
+/sbin/makepkg -l y -c n $OUTPUT/$PRGNAM-$VERSION-$ARCH-$BUILD$TAG.$PKGTYPE
diff --git a/games/freedroid/freedroid.desktop b/games/freedroid/freedroid.desktop
index 832de119a0..c3fcabce1b 100644
--- a/games/freedroid/freedroid.desktop
+++ b/games/freedroid/freedroid.desktop
@@ -2,8 +2,8 @@
Name=FreedroidClassic
Name[he]=FreedroidClassic
Comment=FreedroidClassic is a clone of the game "Paradroid"
-Exec=freedroid
-Icon=freedroid
+Exec=/usr/games/freedroid
+Icon=/usr/share/pixmaps/freedroid.png
Terminal=false
Type=Application
Categories=Game;ArcadeGame;
diff --git a/games/freedroidrpg/freedroidrpg.SlackBuild b/games/freedroidrpg/freedroidrpg.SlackBuild
index 51455bbd0e..ccd3a497d2 100644
--- a/games/freedroidrpg/freedroidrpg.SlackBuild
+++ b/games/freedroidrpg/freedroidrpg.SlackBuild
@@ -1,4 +1,4 @@
-#!/bin/sh
+#!/bin/bash
# Slackbuild for freedroidrpg
# Written by JK Wood <joshuakwood@gmail.com>
@@ -23,11 +23,19 @@
# Modified by the SlackBuilds.org project.
+# 20220222 bkw: Modified by SlackBuilds.org, BUILD=2:
+# - fix build on 15.0.
+# - binary in /usr/games.
+# - absolute path in .desktop.
+
+cd $(dirname $0) ; CWD=$(pwd)
+
PRGNAM=freedroidrpg
SRCNAM=freedroidRPG
VERSION=${VERSION:-0.16.1}
BUILD=${BUILD:-1}
TAG=${TAG:-_SBo}
+PKGTYPE=${PKGTYPE:-tgz}
if [ -z "$ARCH" ]; then
case "$( uname -m )" in
@@ -37,7 +45,11 @@ if [ -z "$ARCH" ]; then
esac
fi
-CWD=$(pwd)
+if [ ! -z "${PRINT_PACKAGE_NAME}" ]; then
+ echo "$PRGNAM-$VERSION-$ARCH-$BUILD$TAG.$PKGTYPE"
+ exit 0
+fi
+
TMP=${TMP:-/tmp/SBo}
PKG=$TMP/package-$PRGNAM
OUTPUT=${OUTPUT:-/tmp}
@@ -64,14 +76,17 @@ cd $PRGNAM-$VERSION
chown -R root:root .
find -L . \
\( -perm 777 -o -perm 775 -o -perm 750 -o -perm 711 -o -perm 555 -o -perm 511 \) \
- -exec chmod 755 {} \; -o \
+ -exec chmod 755 {} \+ -o \
\( -perm 666 -o -perm 664 -o -perm 600 -o -perm 444 -o -perm 440 -o -perm 400 \) \
- -exec chmod 644 {} \;
+ -exec chmod 644 {} \+
+
+SLKCFLAGS+=" -fcommon"
CFLAGS="$SLKCFLAGS" \
CXXFLAGS="$SLKCFLAGS" \
./configure \
--prefix=/usr \
+ --bindir=/usr/games \
--sysconfdir=/etc \
--localstatedir=/var \
--mandir=/usr/man \
@@ -80,18 +95,14 @@ CXXFLAGS="$SLKCFLAGS" \
--build=$ARCH-slackware-linux
make
-make install DESTDIR=$PKG
-
-find $PKG | xargs file | grep -e "executable" -e "shared object" | grep ELF \
- | cut -f 1 -d : | xargs strip --strip-unneeded 2> /dev/null || true
-
-find $PKG/usr/man -type f -exec gzip -9 {} \;
+make install-strip DESTDIR=$PKG
+gzip -9 $PKG/usr/man/man*/*
mkdir -p $PKG/usr/share/applications
cat $CWD/$PRGNAM.desktop > $PKG/usr/share/applications/$PRGNAM.desktop
mkdir -p $PKG/usr/doc/$PRGNAM-$VERSION
-cp -a AUTHORS COPYING ChangeLog HELP_WANTED INSTALL* NEWS README \
+cp -a AUTHORS COPYING ChangeLog HELP_WANTED NEWS README \
$PKG/usr/doc/$PRGNAM-$VERSION
cat $CWD/$PRGNAM.SlackBuild > $PKG/usr/doc/$PRGNAM-$VERSION/$PRGNAM.SlackBuild
@@ -100,4 +111,4 @@ cat $CWD/slack-desc > $PKG/install/slack-desc
cat $CWD/doinst.sh > $PKG/install/doinst.sh
cd $PKG
-/sbin/makepkg -l y -c n $OUTPUT/$PRGNAM-$VERSION-$ARCH-$BUILD$TAG.${PKGTYPE:-tgz}
+/sbin/makepkg -l y -c n $OUTPUT/$PRGNAM-$VERSION-$ARCH-$BUILD$TAG.$PKGTYPE
diff --git a/games/freedroidrpg/freedroidrpg.desktop b/games/freedroidrpg/freedroidrpg.desktop
index da08cfee22..80f57d85ff 100644
--- a/games/freedroidrpg/freedroidrpg.desktop
+++ b/games/freedroidrpg/freedroidrpg.desktop
@@ -1,7 +1,7 @@
[Desktop Entry]
Name=FreedroidRPG
Comment=FreedroidRPG - A Diablo/Freedroid fusion
-Exec=freedroidRPG
+Exec=/usr/games/freedroidRPG
Icon=/usr/share/freedroidrpg/graphics/paraicon.bmp
Terminal=false
Type=Application
diff --git a/games/freeminer/freeminer.SlackBuild b/games/freeminer/freeminer.SlackBuild
index 47781d9f3e..58ec97f5c7 100644
--- a/games/freeminer/freeminer.SlackBuild
+++ b/games/freeminer/freeminer.SlackBuild
@@ -1,4 +1,4 @@
-#!/bin/sh
+#!/bin/bash
# Slackware build script for freeminer
@@ -23,11 +23,31 @@
# OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF THIS SOFTWARE, EVEN IF
# ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
+# 20220302 bkw: Modified by SlackBuilds.org: fix build on 15.0,
+# by updating to latest git (80629f40a85fccafaefea1a490d9ca384f73493f).
+
+# Note to maintainer: *please* don't use only a git hash as a version
+# number. I used 0.4.14.8+20211109_80629f4, which includes the last
+# tag before the commit, the date, and the commit hash. The reason
+# for doing this is so we can tell at a glance which version is newer,
+# when looking at several packages. Also notice the updated download
+# URL in the .info file: it saves the file with the same name,
+# regardless of what the user used to download it (whether or not it
+# respects the Content-disposition header).
+
+# I tested the game to the extent of trying to connect to a server,
+# but one of the servers failed to connect, and the other connected,
+# downloaded some content, then dropped the connection. Hope that's
+# OK.
+
+cd $(dirname $0) ; CWD=$(pwd)
+
PRGNAM=freeminer
-VERSION=${VERSION:-git7ad981}
-SRCVER=7ad981638ea568caf0e3495752cb1bc4a3a853dd
+VERSION=${VERSION:-0.4.14.8+20211109_80629f4}
+SRCVER=80629f40a85fccafaefea1a490d9ca384f73493f
BUILD=${BUILD:-1}
TAG=${TAG:-_SBo}
+PKGTYPE=${PKGTYPE:-tgz}
if [ -z "$ARCH" ]; then
case "$( uname -m )" in
@@ -37,7 +57,11 @@ if [ -z "$ARCH" ]; then
esac
fi
-CWD=$(pwd)
+if [ ! -z "${PRINT_PACKAGE_NAME}" ]; then
+ echo "$PRGNAM-$VERSION-$ARCH-$BUILD$TAG.$PKGTYPE"
+ exit 0
+fi
+
TMP=${TMP:-/tmp/SBo}
PKG=$TMP/package-$PRGNAM
OUTPUT=${OUTPUT:-/tmp}
@@ -62,28 +86,27 @@ rm -rf $PKG
mkdir -p $TMP $PKG $OUTPUT
cd $TMP
rm -rf $PRGNAM-$SRCVER
-#tar xvf $CWD/$PRGNAM-$VERSION.tar.gz || tar xvf $CWD/$VERSION.tar.gz
unzip $CWD/$PRGNAM-$SRCVER.zip || unzip $CWD/$SRCVER.zip
cd $PRGNAM-$SRCVER
chown -R root:root .
find -L . \
\( -perm 777 -o -perm 775 -o -perm 750 -o -perm 711 -o -perm 555 \
- -o -perm 511 \) -exec chmod 755 {} \; -o \
+ -o -perm 511 \) -exec chmod 755 {} \+ -o \
\( -perm 666 -o -perm 664 -o -perm 640 -o -perm 600 -o -perm 444 \
- -o -perm 440 -o -perm 400 \) -exec chmod 644 {} \;
-
-# Fix jsoncpp detection.
-sed -i '/find_path/s|)| /usr/include/jsoncpp)|' cmake/Modules/FindJson.cmake
+ -o -perm 440 -o -perm 400 \) -exec chmod 644 {} \+
-# Fix msgpack-c detection.
-sed -i 's/FIND_LIBRARY(MSGPACK_LIBRARY NAMES msgpack/& msgpackc/' cmake/Modules/FindMsgPack.cmake
+# 20220302 bkw: our json.h is a system header.
+find src -type f | \
+ xargs grep -l '#include.*json/json\.h' | \
+ xargs sed -i 's,"json/json.h",<json/json.h>,'
mkdir -p build
cd build
cmake \
+ -DJSON_INCLUDE_DIR=/usr/include/jsoncpp \
-DRUN_IN_PLACE:BOOL=0 \
- -DENABLE_SYSTEM_JSONCPP:BOOL=1 \
- -DENABLE_SYSTEM_MSGPACK:BOOL=1 \
+ -DENABLE_SYSTEM_JSONCPP:BOOL=ON \
+ -DENABLE_SYSTEM_MSGPACK:BOOL=ON \
-DCMAKE_C_FLAGS:STRING="$SLKCFLAGS" \
-DCMAKE_CXX_FLAGS:STRING="$SLKCFLAGS" \
-DCMAKE_INSTALL_PREFIX:PATH=/usr \
@@ -95,13 +118,9 @@ cd build
-DCMAKE_BUILD_TYPE=Release ..
make
- make install DESTDIR=$PKG
+ make install/strip DESTDIR=$PKG
cd ..
-
-find $PKG -print0 | xargs -0 file | grep -e "executable" -e "shared object" | grep ELF \
- | cut -f 1 -d : | xargs strip --strip-unneeded 2> /dev/null || true
-
-find $PKG/usr/man -type f -exec gzip -9 {} \;
+gzip $PKG/usr/man/man*/*
mkdir -p $PKG/usr/doc/$PRGNAM-$VERSION
cp -a LICENSE.txt *md $PKG/usr/doc/$PRGNAM-$VERSION
@@ -112,4 +131,4 @@ cat $CWD/slack-desc > $PKG/install/slack-desc
cat $CWD/doinst.sh > $PKG/install/doinst.sh
cd $PKG
-/sbin/makepkg -l y -c n $OUTPUT/$PRGNAM-$VERSION-$ARCH-$BUILD$TAG.${PKGTYPE:-tgz}
+/sbin/makepkg -l y -c n $OUTPUT/$PRGNAM-$VERSION-$ARCH-$BUILD$TAG.$PKGTYPE
diff --git a/games/freeminer/freeminer.info b/games/freeminer/freeminer.info
index 8fc73eef7c..548a70a541 100644
--- a/games/freeminer/freeminer.info
+++ b/games/freeminer/freeminer.info
@@ -1,10 +1,10 @@
PRGNAM="freeminer"
-VERSION="git7ad981"
+VERSION="0.4.14.8+20211109_80629f4"
HOMEPAGE="http://freeminer.org/"
-DOWNLOAD="https://github.com/freeminer/freeminer/archive/7ad981638ea568caf0e3495752cb1bc4a3a853dd.zip"
-MD5SUM="ffdca1aad3b036b8df0d5c0ef1837687"
+DOWNLOAD="https://github.com/freeminer/freeminer/archive/80629f40a85fccafaefea1a490d9ca384f73493f/freeminer-80629f40a85fccafaefea1a490d9ca384f73493f.zip"
+MD5SUM="dfc1836b67d90c5bfe0e46ba810e4c5d"
DOWNLOAD_x86_64=""
MD5SUM_x86_64=""
-REQUIRES="OpenAL luajit irrlicht enet msgpack-c jsoncpp"
+REQUIRES="luajit irrlicht enet msgpack-c jsoncpp"
MAINTAINER="Dimitris Zlatanidis"
EMAIL="d.zlatanidis@gmail.com"
diff --git a/games/freeorion/freeorion.SlackBuild b/games/freeorion/freeorion.SlackBuild
index 2277787124..348cfa811f 100644
--- a/games/freeorion/freeorion.SlackBuild
+++ b/games/freeorion/freeorion.SlackBuild
@@ -1,8 +1,8 @@
-#!/bin/sh
+#!/bin/bash
# Slackware build script for freeorion
-# Copyright 2014-2018 Dimitris Zlatanidis Orestiada, Greece
+# Copyright 2014-2024 Dimitris Zlatanidis Orestiada, Greece
# All rights reserved.
#
# Redistribution and use of this script, with or without modification, is
@@ -22,10 +22,20 @@
# OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF THIS SOFTWARE, EVEN IF
# ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
+# 20210217 bkw: modified by SlackBuilds.org: add compilefix.diff. I
+# have no idea how this build passed QA, since it was broken all
+# along.
+
+# 20210217 bkw: modified by SlackBuilds.org: update for v0.4.10.2, to
+# fix compile issues on 15.0. Also move the binary to /usr/games.
+
+cd $(dirname $0) ; CWD=$(pwd)
+
PRGNAM=freeorion
-VERSION=${VERSION:-0.4.8}
+VERSION=${VERSION:-0.5}
BUILD=${BUILD:-1}
TAG=${TAG:-_SBo}
+PKGTYPE=${PKGTYPE:-tgz}
if [ -z "$ARCH" ]; then
case "$( uname -m )" in
@@ -35,11 +45,16 @@ if [ -z "$ARCH" ]; then
esac
fi
-CWD=$(pwd)
+if [ ! -z "${PRINT_PACKAGE_NAME}" ]; then
+ echo "$PRGNAM-$VERSION-$ARCH-$BUILD$TAG.$PKGTYPE"
+ exit 0
+fi
+
TMP=${TMP:-/tmp/SBo}
PKG=$TMP/package-$PRGNAM
OUTPUT=${OUTPUT:-/tmp}
+# 20220220 bkw: these flags aren't really used.
if [ "$ARCH" = "i586" ]; then
SLKCFLAGS="-O2 -march=i586 -mtune=i686"
LIBDIRSUFFIX=""
@@ -65,9 +80,9 @@ cd $PRGNAM-$VERSION
chown -R root:root .
find -L . \
\( -perm 777 -o -perm 775 -o -perm 750 -o -perm 711 -o -perm 555 \
- -o -perm 511 \) -exec chmod 755 {} \; -o \
+ -o -perm 511 \) -exec chmod 755 {} \+ -o \
\( -perm 666 -o -perm 664 -o -perm 640 -o -perm 600 -o -perm 444 \
- -o -perm 440 -o -perm 400 \) -exec chmod 644 {} \;
+ -o -perm 440 -o -perm 400 \) -exec chmod 644 {} \+
# tell cmake to use clang
export CC=/usr/bin/clang
@@ -81,13 +96,13 @@ cd build
-DCMAKE_CXX_FLAGS:STRING="$SLKCFLAGS" \
-DCMAKE_INSTALL_PREFIX=/usr \
-DCMAKE_INSTALL_LIBDIR=lib${LIBDIRSUFFIX} \
+ -DCMAKE_INSTALL_BINDIR=games \
-DCMAKE_BUILD_TYPE=Release ..
make
- make install DESTDIR=$PKG
+ make install/strip DESTDIR=$PKG
cd ..
-find $PKG -print0 | xargs -0 file | grep -e "executable" -e "shared object" | grep ELF \
- | cut -f 1 -d : | xargs strip --strip-unneeded 2> /dev/null || true
+sed -i '/^Exec=/s,=,=/usr/games/,' $PKG/usr/share/applications/*desktop
mkdir -p $PKG/usr/doc/$PRGNAM-$VERSION
cp -a README.md CONTRIBUTING.md ChangeLog.md $PKG/usr/doc/$PRGNAM-$VERSION
@@ -98,4 +113,4 @@ cat $CWD/slack-desc > $PKG/install/slack-desc
cat $CWD/doinst.sh > $PKG/install/doinst.sh
cd $PKG
-/sbin/makepkg -l y -c n $OUTPUT/$PRGNAM-$VERSION-$ARCH-$BUILD$TAG.${PKGTYPE:-tgz}
+/sbin/makepkg -l y -c n $OUTPUT/$PRGNAM-$VERSION-$ARCH-$BUILD$TAG.$PKGTYPE
diff --git a/games/freeorion/freeorion.info b/games/freeorion/freeorion.info
index 6796385b79..12fa253c7d 100644
--- a/games/freeorion/freeorion.info
+++ b/games/freeorion/freeorion.info
@@ -1,10 +1,10 @@
PRGNAM="freeorion"
-VERSION="0.4.8"
+VERSION="0.5"
HOMEPAGE="http://www.freeorion.org"
-DOWNLOAD="https://github.com/freeorion/freeorion/archive/v0.4.8/freeorion-0.4.8.tar.gz"
-MD5SUM="df605a8b6c4de264f2319610dea99dbe"
+DOWNLOAD="https://github.com/freeorion/freeorion/archive/v0.5/freeorion-0.5.tar.gz"
+MD5SUM="8c4a083e20df334caa0f7040e79f1cc5"
DOWNLOAD_x86_64=""
MD5SUM_x86_64=""
-REQUIRES="SDL2 OpenAL"
+REQUIRES=""
MAINTAINER="Dimitris Zlatanidis"
-EMAIL="d.zlatanidis@gmail.com"
+EMAIL="dslackw@gmail.com"
diff --git a/games/frogatto/fbsd-fixes.patch b/games/frogatto/fbsd-fixes.patch
new file mode 100644
index 0000000000..5abb8eed33
--- /dev/null
+++ b/games/frogatto/fbsd-fixes.patch
@@ -0,0 +1,113 @@
+diff -upr frogatto-1.3.1.orig/Makefile frogatto-1.3.1/Makefile
+--- frogatto-1.3.1.orig/Makefile 2012-12-09 00:36:13.000000000 +0200
++++ frogatto-1.3.1/Makefile 2020-04-25 20:36:32.066907199 +0300
+@@ -22,7 +22,7 @@
+ # found in PATH), this option has no effect.
+ #
+
+-OPTIMIZE=yes
++OPTIMIZE=no
+ CCACHE?=ccache
+ USE_CCACHE?=$(shell which $(CCACHE) 2>&1 > /dev/null && echo yes)
+ ifneq ($(USE_CCACHE),yes)
+@@ -34,7 +34,7 @@ BASE_CXXFLAGS += -O2
+ endif
+
+ # Initial compiler options, used before CXXFLAGS and CPPFLAGS.
+-BASE_CXXFLAGS += -g -fno-inline-functions -fthreadsafe-statics -Wnon-virtual-dtor -Werror -Wignored-qualifiers -Wformat -Wswitch
++BASE_CXXFLAGS += -fno-inline-functions -fthreadsafe-statics -Wnon-virtual-dtor -Werror -Wformat -Wswitch -Wno-narrowing
+
+ # Compiler include options, used after CXXFLAGS and CPPFLAGS.
+ INC := $(shell pkg-config --cflags x11 sdl glu glew SDL_image libpng zlib)
+@@ -60,7 +60,7 @@ game: $(objects)
+ $(CCACHE) $(CXX) \
+ $(BASE_CXXFLAGS) $(LDFLAGS) $(CXXFLAGS) $(CPPFLAGS) $(INC) \
+ $(objects) -o game \
+- $(LIBS) -lboost_regex-mt -lboost_system-mt -lpthread -fthreadsafe-statics
++ $(LIBS) -lboost_regex -lboost_system -lpthread -fthreadsafe-statics
+
+ # pull in dependency info for *existing* .o files
+ -include $(objects:.o=.d)
+@@ -69,7 +69,7 @@ server: $(server_objects)
+ $(CCACHE) $(CXX) \
+ $(BASE_CXXFLAGS) $(LDFLAGS) $(CXXFLAGS) $(CPPFLAGS) \
+ $(server_objects) -o server \
+- $(LIBS) -lboost_regex-mt -lboost_system-mt -lboost_thread-mt -lboost_iostreams-mt
++ $(LIBS) -lboost_regex -lboost_system -lboost_thread -lboost_iostreams
+
+ clean:
+ rm -f *.o *.d game
+diff -upr frogatto-1.3.1.orig/src/code_editor_dialog.cpp frogatto-1.3.1/src/code_editor_dialog.cpp
+--- frogatto-1.3.1.orig/src/code_editor_dialog.cpp 2012-12-09 00:36:13.000000000 +0200
++++ frogatto-1.3.1/src/code_editor_dialog.cpp 2020-04-25 20:37:25.271352863 +0300
+@@ -55,7 +55,7 @@ void code_editor_dialog::init()
+
+ //std::cerr << "CED: " << x() << "," << y() << "; " << width() << "," << height() << std::endl;
+ drag_widget* dragger = new drag_widget(x(), y(), width(), height(),
+- drag_widget::DRAG_HORIZONTAL, NULL,
++ drag_widget::DRAG_HORIZONTAL, [](int, int){},
+ boost::bind(&code_editor_dialog::on_drag_end, this, _1, _2),
+ boost::bind(&code_editor_dialog::on_drag, this, _1, _2));
+
+diff -upr frogatto-1.3.1.orig/src/filesystem.cpp frogatto-1.3.1/src/filesystem.cpp
+--- frogatto-1.3.1.orig/src/filesystem.cpp 2012-12-09 00:36:13.000000000 +0200
++++ frogatto-1.3.1/src/filesystem.cpp 2020-04-25 20:37:30.291458013 +0300
+@@ -405,8 +405,14 @@ void get_files_in_dir(const std::string&
+ }
+ #else
+ struct stat st;
++ std::string dirname;
+
+- DIR* dir = opendir(directory.c_str());
++ if(have_datadir)
++ dirname = data_dir + "/" + directory;
++ else
++ dirname = directory;
++
++ DIR* dir = opendir(dirname.c_str());
+
+ if(dir == NULL) {
+ return;
+@@ -437,14 +443,14 @@ void get_files_in_dir(const std::string&
+ #endif /* !APPLE */
+
+ std::string fullname;
+- if (directory.empty() || directory[directory.size()-1] == '/'
++ if (dirname.empty() || dirname[dirname.size()-1] == '/'
+ #ifdef __AMIGAOS4__
+- || (directory[directory.size()-1]==':')
++ || (dirname[dirname.size()-1]==':')
+ #endif /* __AMIGAOS4__ */
+ )
+- fullname = directory + basename;
++ fullname = dirname + basename;
+ else
+- fullname = (directory + "/") + basename;
++ fullname = (dirname + "/") + basename;
+
+ if (::stat(fullname.c_str(), &st) != -1) {
+ if (S_ISREG(st.st_mode)) {
+diff -upr frogatto-1.3.1.orig/src/surface_cache.cpp frogatto-1.3.1/src/surface_cache.cpp
+--- frogatto-1.3.1.orig/src/surface_cache.cpp 2012-12-09 00:36:13.000000000 +0200
++++ frogatto-1.3.1/src/surface_cache.cpp 2020-04-25 20:38:31.589411134 +0300
+@@ -116,7 +116,7 @@ surface get_no_cache(const std::string&
+ }
+ #endif // ANDROID
+ //std::cerr << "loading image '" << fname << "'\n";
+- if(surf.get() == false || surf->w == 0) {
++ if(surf.get() == nullptr || surf->w == 0) {
+ if(key != "") {
+ std::cerr << "failed to load image '" << key << "'\n";
+ }
+diff -upr frogatto-1.3.1.orig/src/texture.hpp frogatto-1.3.1/src/texture.hpp
+--- frogatto-1.3.1.orig/src/texture.hpp 2012-12-09 00:36:13.000000000 +0200
++++ frogatto-1.3.1/src/texture.hpp 2020-04-25 20:38:39.952920335 +0300
+@@ -58,7 +58,7 @@ public:
+ unsigned int get_id() const;
+ static void set_current_texture(unsigned int id);
+ void set_as_current_texture() const;
+- bool valid() const { return id_; }
++ bool valid() const { return static_cast<bool>(id_); }
+
+ static texture get(const std::string& str, int options=0);
+ static texture get(const std::string& str, const std::string& algorithm);
diff --git a/games/frogatto/frogatto-boost-1.70.patch b/games/frogatto/frogatto-boost-1.70.patch
new file mode 100644
index 0000000000..3a47530a4d
--- /dev/null
+++ b/games/frogatto/frogatto-boost-1.70.patch
@@ -0,0 +1,37 @@
+rc/http_server.cpp:34:46: error: no member named 'get_io_service' in
+ 'boost::asio::basic_socket_acceptor<boost::asio::ip::tcp, boost::asio::executor>'
+ socket_ptr socket(new tcp::socket(acceptor_.get_io_service()));
+ ~~~~~~~~~ ^
+src/server.cpp:40:47: error: no member named 'get_io_service' in
+ 'boost::asio::basic_socket_acceptor<boost::asio::ip::tcp, boost::asio::executor>'
+ socket_ptr socket(new tcp::socket(acceptor_.get_io_service()));
+ ~~~~~~~~~ ^
+
+--- src/http_server.cpp.orig 2012-12-08 22:36:13 UTC
++++ src/http_server.cpp
+@@ -31,7 +31,11 @@ web_server::web_server(boost::asio::io_service& io_ser
+
+ void web_server::start_accept()
+ {
++#if BOOST_VERSION < 107000
+ socket_ptr socket(new tcp::socket(acceptor_.get_io_service()));
++#else
++ socket_ptr socket(new tcp::socket(acceptor_.get_executor()));
++#endif
+ acceptor_.async_accept(*socket, boost::bind(&web_server::handle_accept, this, socket, boost::asio::placeholders::error));
+
+ }
+--- src/server.cpp.orig 2012-12-08 22:36:13 UTC
++++ src/server.cpp
+@@ -37,7 +37,11 @@ class server (public)
+ private:
+ void start_accept()
+ {
++#if BOOST_VERSION < 107000
+ socket_ptr socket(new tcp::socket(acceptor_.get_io_service()));
++#else
++ socket_ptr socket(new tcp::socket(acceptor_.get_executor()));
++#endif
+ acceptor_.async_accept(*socket, boost::bind(&server::handle_accept, this, socket, boost::asio::placeholders::error));
+ }
+
diff --git a/games/frogatto/frogatto.SlackBuild b/games/frogatto/frogatto.SlackBuild
index c292542f79..6e555d740e 100644
--- a/games/frogatto/frogatto.SlackBuild
+++ b/games/frogatto/frogatto.SlackBuild
@@ -1,4 +1,4 @@
-#!/bin/sh
+#!/bin/bash
# Slackware build script for frogatto
@@ -22,10 +22,13 @@
# OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF THIS SOFTWARE, EVEN IF
# ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
+cd $(dirname $0) ; CWD=$(pwd)
+
PRGNAM=frogatto
VERSION=${VERSION:-1.3.1}
BUILD=${BUILD:-2}
TAG=${TAG:-_SBo}
+PKGTYPE=${PKGTYPE:-tgz}
if [ -z "$ARCH" ]; then
case "$( uname -m )" in
@@ -35,7 +38,11 @@ if [ -z "$ARCH" ]; then
esac
fi
-CWD=$(pwd)
+if [ ! -z "${PRINT_PACKAGE_NAME}" ]; then
+ echo "$PRGNAM-$VERSION-$ARCH-$BUILD$TAG.$PKGTYPE"
+ exit 0
+fi
+
TMP=${TMP:-/tmp/SBo}
PKG=$TMP/package-$PRGNAM
OUTPUT=${OUTPUT:-/tmp}
@@ -62,6 +69,7 @@ cd $TMP
rm -rf $PRGNAM-$VERSION
tar xvf $CWD/$PRGNAM-$VERSION.tar.?z*
cd $PRGNAM-$VERSION
+rm -rf MacOSJet
chown -R root:root .
find -L . \
\( -perm 777 -o -perm 775 -o -perm 750 -o -perm 711 -o -perm 555 \
@@ -69,13 +77,24 @@ find -L . \
\( -perm 666 -o -perm 664 -o -perm 640 -o -perm 600 -o -perm 444 \
-o -perm 440 -o -perm 400 \) -exec chmod 644 {} \;
-# Fix linking with boost libs
-sed -i 's,-mt,,g' Makefile
+# Thanks to the Arch folks
+patch -p1 -i $CWD/fbsd-fixes.patch
+patch -p0 -i $CWD/frogatto-boost-1.70.patch
+
+# Fix linking with boost libs and remove -Werror
+sed -i \
+ -e 's,-mt,,g' \
+ -e 's, -Werror,,' \
+ -e 's/-lprofiler//g' \
+ -e 's/ccache //g' \
+ -e 's/\.io_service/\.get_io_service/g' \
+ -e 's/\%lu\\n/\%zu\\n/g' \
+ Makefile
make \
OPTIMIZE=no \
USE_CCACHE=no \
- CXX=g++ \
+ CXX=clang++ \
CXXFLAGS="$SLKCFLAGS" \
LDFLAGS="-L/usr/lib${LIBDIRSUFFIX}"
@@ -118,4 +137,4 @@ cat $CWD/slack-desc > $PKG/install/slack-desc
cat $CWD/doinst.sh > $PKG/install/doinst.sh
cd $PKG
-/sbin/makepkg -l y -c n $OUTPUT/$PRGNAM-$VERSION-$ARCH-$BUILD$TAG.${PKGTYPE:-tgz}
+/sbin/makepkg -l y -c n $OUTPUT/$PRGNAM-$VERSION-$ARCH-$BUILD$TAG.$PKGTYPE
diff --git a/games/frogatto/frogatto.info b/games/frogatto/frogatto.info
index 52230633cd..2fd82b1656 100644
--- a/games/frogatto/frogatto.info
+++ b/games/frogatto/frogatto.info
@@ -1,6 +1,6 @@
PRGNAM="frogatto"
VERSION="1.3.1"
-HOMEPAGE="http://www.frogatto.com/"
+HOMEPAGE="https://frogatto.com/"
DOWNLOAD="https://github.com/frogatto/frogatto/archive/1.3.1/frogatto-1.3.1.tar.gz"
MD5SUM="f3206fbe1395ea2878092fbd4ed2c591"
DOWNLOAD_x86_64=""
diff --git a/games/frogatto/slack-desc b/games/frogatto/slack-desc
index f6f780a6a8..1a76dd28e4 100644
--- a/games/frogatto/slack-desc
+++ b/games/frogatto/slack-desc
@@ -11,7 +11,7 @@ frogatto:
frogatto: Frogatto & Friends is an action-adventure "platformer"
frogatto: game starring a certain green dude.
frogatto:
-frogatto: http://www.frogatto.com/
+frogatto: https://frogatto.com/
frogatto:
frogatto:
frogatto:
diff --git a/games/frotz/README b/games/frotz/README
index 303e7f63bc..c4b16bc17f 100644
--- a/games/frotz/README
+++ b/games/frotz/README
@@ -2,4 +2,19 @@ frotz (Z-machine interpreter)
Frotz is an interpreter for Infocom games and other Z-machine games. It
complies with standard 1.0 of Graham Nelson's specification. Games can
-be found at http://www.ifarchive.org/ .
+be found at: http://www.ifarchive.org/
+
+3 executables are always built:
+
+* frotz - uses curses, no images, needs libmodplug for sound.
+* sfrotz - SDL2 UI, supports images and sound, works great in X11,
+ probably also Wayland (not tested by SlackBuild author).
+* dfrotz - dumb terminal frotz, doesn't support images nor sound.
+
+Optionally, you can set XFROTZ=yes to build:
+
+* xfrotz - native X11 UI, supports images, no sound. Most users won't
+ want this; sfrotz is a better choice on modern X11.
+
+Optional dependency: libmodplug. If this is installed, the curses
+build (frotz) will support sound.
diff --git a/games/frotz/doinst.sh b/games/frotz/doinst.sh
new file mode 100644
index 0000000000..3d57ee9017
--- /dev/null
+++ b/games/frotz/doinst.sh
@@ -0,0 +1,19 @@
+if [ -x /usr/bin/update-desktop-database ]; then
+ /usr/bin/update-desktop-database -q usr/share/applications >/dev/null 2>&1
+fi
+
+if [ -x /usr/bin/update-mime-database ]; then
+ /usr/bin/update-mime-database usr/share/mime >/dev/null 2>&1
+fi
+
+if [ -e usr/share/icons/hicolor/icon-theme.cache ]; then
+ if [ -x /usr/bin/gtk-update-icon-cache ]; then
+ /usr/bin/gtk-update-icon-cache usr/share/icons/hicolor >/dev/null 2>&1
+ fi
+fi
+
+if [ -e usr/share/fonts/misc/Zork_r400-10.pcf ]; then
+ if [ -x /usr/bin/mkfontdir ]; then
+ /usr/bin/mkfontdir usr/share/fonts/misc >/dev/null 2>&1
+ fi
+fi
diff --git a/games/frotz/frotz-infocom.png b/games/frotz/frotz-infocom.png
new file mode 100644
index 0000000000..9085ab83aa
--- /dev/null
+++ b/games/frotz/frotz-infocom.png
Binary files differ
diff --git a/games/frotz/frotz.SlackBuild b/games/frotz/frotz.SlackBuild
index 22e3911fac..aad8cf468e 100644
--- a/games/frotz/frotz.SlackBuild
+++ b/games/frotz/frotz.SlackBuild
@@ -1,19 +1,50 @@
-#!/bin/sh
+#!/bin/bash
#
# Slackware build script for frotz
-# Written by Beej Jorgensen <beej@beej.us>
+# Originally written for Slackware 12.2 by Beej Jorgensen <email
+# removed>, heavily modified by B. Watson <urchlay@slackware.uk> since
+# then.
-# Modified by B. Watson <yalhcru@gmail.com>
-# - updated for Slackware 14 and frotz 2.43d
-# - include dumb terminal frotz in build
+# Original had no license. This modified version is released under the
+# WTFPL. See http://www.wtfpl.net/txt/copying/ for details.
-# 20150904 bkw: updated for frotz 2.44
+# 20230330 bkw: upstream download file changed. In case you're
+# wondering, it's a one-line change in the Makefile (an extra
+# digit in the git has), which doesn't actually affect the
+# compiled binaries. updated md5sum in .info, did not bump BUILD.
+
+# 20220613 bkw: updated for v2.54.
+
+# 20211007 bkw:
+# - updated for v2.53.
+# - add optional xfrotz.
+# - expand README.
+# - make slack-desc reflect build options (libmodplug and xfrotz).
+
+# 20210215 bkw: fix building without libmodplug. BUILD=2.
+
+# 20201212 bkw: too many changes, can't build older versions.
+# - updated for v2.52.
+# - new homepage.
+# - include sfrotz if sdl2 and SDL2_mixer are installed.
+# - fix man page typos.
+# - patch to prevent sfrotz crashes with long pathnames.
+# - add desktop stuff.
+
+# 20150904 bkw: updated for frotz 2.44.
+
+# 20121216 bkw:
+# - updated for Slackware 14 and frotz 2.43d.
+# - include dumb terminal frotz in build.
+
+cd $(dirname $0) ; CWD=$(pwd)
PRGNAM=frotz
-VERSION=${VERSION:-2.44}
+VERSION=${VERSION:-2.54}
BUILD=${BUILD:-1}
TAG=${TAG:-_SBo}
+PKGTYPE=${PKGTYPE:-tgz}
if [ -z "$ARCH" ]; then
case "$( uname -m )" in
@@ -23,7 +54,11 @@ if [ -z "$ARCH" ]; then
esac
fi
-CWD=$(pwd)
+if [ ! -z "${PRINT_PACKAGE_NAME}" ]; then
+ echo "$PRGNAM-$VERSION-$ARCH-$BUILD$TAG.$PKGTYPE"
+ exit 0
+fi
+
TMP=${TMP:-/tmp/SBo}
PKG=$TMP/package-$PRGNAM
OUTPUT=${OUTPUT:-/tmp}
@@ -45,37 +80,102 @@ rm -rf $PKG
mkdir -p $TMP $PKG $OUTPUT
cd $TMP
rm -rf $PRGNAM-$VERSION
-tar xvf $CWD/$PRGNAM-$VERSION.tar.gz
+tar xvf $CWD/$PRGNAM-$VERSION.tar.?z*
cd $PRGNAM-$VERSION
chown -R root:root .
-find -L . \
- \( -perm 777 -o -perm 775 -o -perm 750 -o -perm 711 -o -perm 555 -o -perm 511 \) \
- -exec chmod 755 {} \; -o \
- \( -perm 666 -o -perm 664 -o -perm 600 -o -perm 444 -o -perm 440 -o -perm 400 \) \
- -exec chmod 644 {} \;
+find -L . -perm /111 -a \! -perm 755 -a -exec chmod 755 {} \+ -o \
+ \! -perm /111 -a \! -perm 644 -a -exec chmod 644 {} \+
+
+# Fix typos:
+sed -i "s/\\(Unlike it\\)'s/\1s/" doc/dfrotz.6
+sed -i 's,forground,foreground,' doc/frotz.6
+sed -i -e 's,invocatio$,&n.,' \
+ -e 's,intead,instead,' \
+ -e 's,chunck,chunk,' \
+ doc/sfrotz.6
+
+# Document location of config file:
+sed -i 's,frotz\.conf,/etc/&,' doc/$PRGNAM.6
+
+run_make() {
+ make \
+ PREFIX=/usr \
+ SYSCONFDIR=/etc \
+ MANDIR=/usr/man \
+ MAN_PREFIX=/usr \
+ BINDIR=/usr/games \
+ MKFONTDIR=/bin/true \
+ X11_FONTDIR=$PKG/usr/share/fonts/misc \
+ DESTDIR=$PKG \
+ $1
+}
+
+# No autodetection for libmodplug or SDL2_mixer, help it out.
+maintarg="nosound"; MP=no
+if pkg-config --exists libmodplug; then
+ maintarg="$PRGNAM"
+ MP=yes
+fi
+# on post-14.2 -current and 15.0, sdl2 is part of a full install:
+pkg-config --exists sdl2 SDL2_mixer && extra="clean sdl install_sdl"
+
+sed -i "s,-O3.*,$SLKCFLAGS," Makefile
+for target in $maintarg install clean dumb install_dumb $extra; do
+ run_make $target
+done
+
+# I have no idea why anyone would want this, but in case they do:
+XF=no
+if [ "${XFROTZ:-no}" = "yes" ]; then
+ XF=yes
+ run_make clean
+ run_make x11
+ run_make install_x11
+ mv $PKG/usr/bin/xfrotz $PKG/usr/games
+ rmdir $PKG/usr/bin
+fi
+
+strip $PKG/usr/games/*
+gzip -9 $PKG/usr/man/man?/*.*
+
+# desktop files by SlackBuild author. The icons came from WinFrotz. They're
+# only available in 32x32 size, sorry.
+mkdir -p $PKG/usr/share/applications \
+ $PKG/usr/share/pixmaps \
+ $PKG/usr/share/icons/hicolor/32x32/apps
-make OPTS="$SLKCFLAGS" PREFIX=/usr CONFIG_DIR=/etc
-strip $PRGNAM
-make PREFIX=$PKG/usr CONFIG_DIR=/etc install
+for i in $PKG/usr/games/*; do
+ bin="$( basename $i )"
+ if [ -e $CWD/$bin.desktop ]; then
+ install -m0644 -oroot -groot $CWD/$bin.desktop $PKG/usr/share/applications
+ fi
+done
-# include dumb terminal version (it's small and maybe useful).
-sed -i 's/getline/dumb_getline/g' src/dumb/dumb_input.c
-make OPTS="$SLKCFLAGS" PREFIX=/usr CONFIG_DIR=/etc dfrotz
-install -s -m0755 dfrotz $PKG/usr/bin
-cat doc/dfrotz.6 > $PKG/usr/man/man6/dfrotz.6
+cat $CWD/$PRGNAM.png > $PKG/usr/share/pixmaps/$PRGNAM.png
+ln -s ../../../../pixmaps/$PRGNAM.png \
+ $PKG/usr/share/icons/hicolor/32x32/apps/$PRGNAM.png
+mkdir -p $PKG/usr/share/icons/hicolor/32x32/mimetypes
+cat $CWD/frotz-infocom.png > \
+ $PKG/usr/share/icons/hicolor/32x32/mimetypes/frotz-infocom.png
-gzip $PKG/usr/man/man?/*.?
+# MIME stuff for desktops. Causes KDE and XFCE to display story
+# files with an Infocom icon, and they double-click open with either
+# terminal or SDL frotz.
+mkdir -p $PKG/usr/share/mime/packages
+cat $CWD/$PRGNAM.xml > $PKG/usr/share/mime/packages/$PRGNAM.xml
mkdir -p $PKG/usr/doc/$PRGNAM-$VERSION
-cp -a \
- AUTHORS BUGS COPYING ChangeLog DUMB HOW_TO_PLAY INSTALL \
- PACKAGING PORTING README README.1st SPEECH TODO \
- $PKG/usr/doc/$PRGNAM-$VERSION
-cp -a doc/frotz.conf-{big,small} $PKG/usr/doc/$PRGNAM-$VERSION
+rm -f README.1st # don't need this in the package.
+cp -a AUTHORS CO* ChangeLog DUMB HOW_TO_PLAY README* TODO *.lsm \
+ doc/$PRGNAM.conf* doc/$PRGNAM.txt \
+ $PKG/usr/doc/$PRGNAM-$VERSION
cat $CWD/$PRGNAM.SlackBuild > $PKG/usr/doc/$PRGNAM-$VERSION/$PRGNAM.SlackBuild
mkdir -p $PKG/install
-cat $CWD/slack-desc > $PKG/install/slack-desc
+sed -e "s,@MP@,$MP," \
+ -e "s,@XF@,$XF," \
+ $CWD/slack-desc > $PKG/install/slack-desc
+cat $CWD/doinst.sh > $PKG/install/doinst.sh
cd $PKG
-/sbin/makepkg -l y -c n $OUTPUT/$PRGNAM-$VERSION-$ARCH-$BUILD$TAG.${PKGTYPE:-tgz}
+/sbin/makepkg -l y -c n $OUTPUT/$PRGNAM-$VERSION-$ARCH-$BUILD$TAG.$PKGTYPE
diff --git a/games/frotz/frotz.desktop b/games/frotz/frotz.desktop
new file mode 100644
index 0000000000..ab2f8e3d4e
--- /dev/null
+++ b/games/frotz/frotz.desktop
@@ -0,0 +1,16 @@
+[Desktop Entry]
+Name=Frotz
+GenericName=Z-Code Interpreter
+Comment=Terminal Player for Interactive Fiction Games
+Exec=frotz %f
+Icon=frotz
+Terminal=true
+Type=Application
+Categories=Game;AdventureGame;
+MimeType=application/x-zmachine;
+NoDisplay=true
+Actions=Play;
+
+[Desktop Action Play]
+Name=Play
+Exec=frotz %f
diff --git a/games/frotz/frotz.info b/games/frotz/frotz.info
index a14a402164..cd0755974e 100644
--- a/games/frotz/frotz.info
+++ b/games/frotz/frotz.info
@@ -1,10 +1,10 @@
PRGNAM="frotz"
-VERSION="2.44"
-HOMEPAGE="http://frotz.sourceforge.net/"
-DOWNLOAD="http://downloads.sourceforge.net/project/frotz/frotz/frotz-2.44.tar.gz"
-MD5SUM="705457af0e2cf745ce7f6bc243f05968"
+VERSION="2.54"
+HOMEPAGE="https://davidgriffith.gitlab.io/frotz/"
+DOWNLOAD="https://gitlab.com/DavidGriffith/frotz/-/archive/2.54/frotz-2.54.tar.bz2"
+MD5SUM="0f92942220f7b27a218e94676045cbc1"
DOWNLOAD_x86_64=""
MD5SUM_x86_64=""
REQUIRES=""
MAINTAINER="B. Watson"
-EMAIL="yalhcru@gmail.com"
+EMAIL="urchlay@slackware.uk"
diff --git a/games/frotz/frotz.png b/games/frotz/frotz.png
new file mode 100644
index 0000000000..45babf88c0
--- /dev/null
+++ b/games/frotz/frotz.png
Binary files differ
diff --git a/games/frotz/frotz.xml b/games/frotz/frotz.xml
new file mode 100644
index 0000000000..ec743855db
--- /dev/null
+++ b/games/frotz/frotz.xml
@@ -0,0 +1,18 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<mime-info xmlns="http://www.freedesktop.org/standards/shared-mime-info">
+ <mime-type type="application/x-zmachine">
+ <comment>Z-Machine Story File</comment>
+ <glob pattern="*.z1"/>
+ <glob pattern="*.z2"/>
+ <glob pattern="*.z3"/>
+ <glob pattern="*.z4"/>
+ <glob pattern="*.z5"/>
+ <glob pattern="*.z6"/>
+ <glob pattern="*.z7"/>
+ <glob pattern="*.z8"/>
+ <glob pattern="*.blorb"/>
+ <glob pattern="*.zblorb"/>
+ <glob pattern="*.blb"/>
+ <generic-icon name="frotz-infocom" />
+ </mime-type>
+</mime-info>
diff --git a/games/frotz/sfrotz.desktop b/games/frotz/sfrotz.desktop
new file mode 100644
index 0000000000..f82697571f
--- /dev/null
+++ b/games/frotz/sfrotz.desktop
@@ -0,0 +1,16 @@
+[Desktop Entry]
+Name=SFrotz
+GenericName=Z-Code Interpreter
+Comment=SDL Player for Interactive Fiction Games
+Exec=sfrotz %f
+Icon=frotz
+Terminal=false
+Type=Application
+Categories=Game;AdventureGame;
+MimeType=application/x-zmachine;
+NoDisplay=true
+Actions=Play;
+
+[Desktop Action Play]
+Name=Play
+Exec=sfrotz %f
diff --git a/games/frotz/slack-desc b/games/frotz/slack-desc
index 8a98788cb5..5c8781679c 100644
--- a/games/frotz/slack-desc
+++ b/games/frotz/slack-desc
@@ -10,10 +10,10 @@ frotz: frotz (Z-machine interpreter)
frotz:
frotz: Frotz is an interpreter for Infocom games and other Z-machine games.
frotz: It complies with standard 1.0 of Graham Nelson's specification.
-frotz: Games can be found at http://www.ifarchive.org/ .
-frotz:
-frotz: http://frotz.sourceforge.net/
-frotz:
+frotz: Games can be found at: http://www.ifarchive.org/
frotz:
+frotz: Build options:
+frotz: * curses frotz sound support: @MP@
+frotz: * xfrotz: @XF@
frotz:
frotz:
diff --git a/games/frotz/xfrotz.desktop b/games/frotz/xfrotz.desktop
new file mode 100644
index 0000000000..9058d9b0ad
--- /dev/null
+++ b/games/frotz/xfrotz.desktop
@@ -0,0 +1,16 @@
+[Desktop Entry]
+Name=XFrotz
+GenericName=Z-Code Interpreter
+Comment=X11 Player for Interactive Fiction Games
+Exec=xfrotz %f
+Icon=frotz
+Terminal=false
+Type=Application
+Categories=Game;AdventureGame;
+MimeType=application/x-zmachine;
+NoDisplay=true
+Actions=Play;
+
+[Desktop Action Play]
+Name=Play
+Exec=xfrotz %f
diff --git a/games/frozen-bubble/frozen-bubble-mksrctarball.sh b/games/frozen-bubble/frozen-bubble-mksrctarball.sh
new file mode 100644
index 0000000000..839e65360f
--- /dev/null
+++ b/games/frozen-bubble/frozen-bubble-mksrctarball.sh
@@ -0,0 +1,16 @@
+#!/bin/bash
+
+git clone https://github.com/kthakore/frozen-bubble.git
+
+cd frozen-bubble
+ VERSION="git_$(git log --format="%ad_%h" --date=short | head -n 1 | tr -d -)"
+ LONGDATE="$(git log -1 --format=%cd --date=format:%c )"
+cd ..
+
+mv frozen-bubble frozen-bubble-$VERSION
+
+tar --exclude-vcs -cf frozen-bubble-$VERSION.tar frozen-bubble-$VERSION
+plzip -9 -v frozen-bubble-$VERSION.tar
+touch -d "$LONGDATE" frozen-bubble-$VERSION.tar.lz
+
+rm -rf frozen-bubble-$VERSION
diff --git a/games/frozen-bubble/frozen-bubble.SlackBuild b/games/frozen-bubble/frozen-bubble.SlackBuild
index de604a6a94..c5395e6305 100644
--- a/games/frozen-bubble/frozen-bubble.SlackBuild
+++ b/games/frozen-bubble/frozen-bubble.SlackBuild
@@ -1,9 +1,9 @@
-#!/bin/sh
+#!/bin/bash
#
# Slackware build script for Frozen Bubble
#
# Copyright 2009 Erik W. Hanson, Minneapolis, MN, USA
-# Copyright 2017 Heinz Wiesinger, Amsterdam, The Netherlands
+# Copyright 2017-2021 Heinz Wiesinger, Amsterdam, The Netherlands
# All rights reserved.
#
# Redistribution and use of this script, with or without modification, is
@@ -12,21 +12,24 @@
# 1. Redistributions of this script must retain the above copyright
# notice, this list of conditions and the following disclaimer.
#
-# THIS SOFTWARE IS PROVIDED BY THE AUTHOR ''AS IS'' AND ANY EXPRESS OR IMPLIED
-# WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE IMPLIED WARRANTIES OF
-# MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE ARE DISCLAIMED. IN NO
-# EVENT SHALL THE AUTHOR BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL,
-# SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT LIMITED TO,
-# PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, DATA, OR PROFITS;
-# OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY,
-# WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR
-# OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF THIS SOFTWARE, EVEN IF
-# ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
+# THIS SOFTWARE IS PROVIDED BY THE AUTHOR ``AS IS'' AND ANY EXPRESS OR IMPLIED
+# WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE IMPLIED WARRANTIES OF
+# MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE ARE DISCLAIMED. IN NO
+# EVENT SHALL THE AUTHOR BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL,
+# SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT LIMITED TO,
+# PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, DATA, OR PROFITS;
+# OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY,
+# WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR
+# OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF THIS SOFTWARE, EVEN IF
+# ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
+
+cd $(dirname $0) ; CWD=$(pwd)
PRGNAM=frozen-bubble
-VERSION=${VERSION:-905bf71}
-BUILD=${BUILD:-3}
+VERSION=${VERSION:-git_20170702_d6a0291}
+BUILD=${BUILD:-1}
TAG=${TAG:-_SBo}
+PKGTYPE=${PKGTYPE:-tgz}
if [ -z "$ARCH" ]; then
case "$( uname -m )" in
@@ -36,7 +39,14 @@ if [ -z "$ARCH" ]; then
esac
fi
-CWD=$(pwd)
+# If the variable PRINT_PACKAGE_NAME is set, then this script will report what
+# the name of the created package would be, and then exit. This information
+# could be useful to other scripts.
+if [ ! -z "${PRINT_PACKAGE_NAME}" ]; then
+ echo "$PRGNAM-$VERSION-$ARCH-$BUILD$TAG.$PKGTYPE"
+ exit 0
+fi
+
TMP=${TMP:-/tmp/SBo}
PKG=$TMP/package-$PRGNAM
OUTPUT=${OUTPUT:-/tmp}
@@ -61,7 +71,7 @@ rm -rf $PKG
mkdir -p $TMP $PKG $OUTPUT
cd $TMP
rm -rf $PRGNAM-$VERSION
-tar xvf $CWD/$PRGNAM-$VERSION.tar.xz
+tar xvf $CWD/$PRGNAM-$VERSION.tar.lz
cd $PRGNAM-$VERSION
chown -R root:root .
find -L . \
@@ -110,4 +120,4 @@ cat $CWD/slack-desc > $PKG/install/slack-desc
cat $CWD/doinst.sh > $PKG/install/doinst.sh
cd $PKG
-/sbin/makepkg -l y -c n $OUTPUT/$PRGNAM-$VERSION-$ARCH-$BUILD$TAG.${PKGTYPE:-tgz}
+/sbin/makepkg -l y -c n $OUTPUT/$PRGNAM-$VERSION-$ARCH-$BUILD$TAG.$PKGTYPE
diff --git a/games/frozen-bubble/frozen-bubble.info b/games/frozen-bubble/frozen-bubble.info
index c08d948e24..b90de1d9d9 100644
--- a/games/frozen-bubble/frozen-bubble.info
+++ b/games/frozen-bubble/frozen-bubble.info
@@ -1,10 +1,10 @@
PRGNAM="frozen-bubble"
-VERSION="905bf71"
+VERSION="git_20170702_d6a0291"
HOMEPAGE="http://www.frozen-bubble.org/"
-DOWNLOAD="http://www.liwjatan.at/files/src/frozen-bubble/frozen-bubble-905bf71.tar.xz"
-MD5SUM="62fa4d53aaaa506eb38dd6595c0ed7cb"
+DOWNLOAD="https://sources.liwjatan.org/frozen-bubble/frozen-bubble-git_20170702_d6a0291.tar.lz"
+MD5SUM="f04690d91e2dba3838e5dc9ce7708f8a"
DOWNLOAD_x86_64=""
MD5SUM_x86_64=""
REQUIRES="perl-Compress-Bzip2 perl-File-Slurp perl-IPC-System-Simple perl-Locale-Maketext-Lexicon perl-SDL"
MAINTAINER="Heinz Wiesinger"
-EMAIL="pprkut@liwjatan.at"
+EMAIL="pprkut@slackbuilds.org"
diff --git a/games/fs-uae-arcade/fs-uae-arcade.SlackBuild b/games/fs-uae-arcade/fs-uae-arcade.SlackBuild
index 085b942da1..1dcf6e3cd2 100644
--- a/games/fs-uae-arcade/fs-uae-arcade.SlackBuild
+++ b/games/fs-uae-arcade/fs-uae-arcade.SlackBuild
@@ -1,4 +1,4 @@
-#!/bin/sh
+#!/bin/bash
# SlackBuild script for "fs-uae-arcade".
@@ -25,26 +25,36 @@
# (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE
# OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
+cd $(dirname $0) ; CWD=$(pwd)
+
PRGNAM=fs-uae-arcade
VERSION=${VERSION:-3.0.5}
BUILD=${BUILD:-1}
TAG=${TAG:-_SBo}
+PKGTYPE=${PKGTYPE:-tgz}
if [ -z "$ARCH" ]; then
case "$( uname -m )" in
- i?86) ARCH=i486 ;;
+ i?86) ARCH=i586 ;;
arm*) ARCH=arm ;;
*) ARCH=$( uname -m ) ;;
esac
fi
-CWD=$(pwd)
+# If the variable PRINT_PACKAGE_NAME is set, then this script will report what
+# the name of the created package would be, and then exit. This information
+# could be useful to other scripts.
+if [ ! -z "${PRINT_PACKAGE_NAME}" ]; then
+ echo "$PRGNAM-$VERSION-$ARCH-$BUILD$TAG.$PKGTYPE"
+ exit 0
+fi
+
TMP=${TMP:-/tmp/SBo}
PKG=$TMP/package-$PRGNAM
OUTPUT=${OUTPUT:-/tmp}
-if [ "$ARCH" = "i486" ]; then
- SLKCFLAGS="-O2 -march=i486 -mtune=i686"
+if [ "$ARCH" = "i586" ]; then
+ SLKCFLAGS="-O2 -march=i586 -mtune=i686"
LIBDIRSUFFIX=""
elif [ "$ARCH" = "i686" ]; then
SLKCFLAGS="-O2 -march=i686 -mtune=i686"
@@ -84,4 +94,4 @@ cat $CWD/slack-desc > $PKG/install/slack-desc
cat $CWD/doinst.sh > $PKG/install/doinst.sh
cd $PKG
-/sbin/makepkg -l y -c n $OUTPUT/$PRGNAM-$VERSION-$ARCH-$BUILD$TAG.${PKGTYPE:-tgz}
+/sbin/makepkg -l y -c n $OUTPUT/$PRGNAM-$VERSION-$ARCH-$BUILD$TAG.$PKGTYPE
diff --git a/games/fs-uae-arcade/fs-uae-arcade.info b/games/fs-uae-arcade/fs-uae-arcade.info
index 0b12377d5b..b00124550c 100644
--- a/games/fs-uae-arcade/fs-uae-arcade.info
+++ b/games/fs-uae-arcade/fs-uae-arcade.info
@@ -5,6 +5,6 @@ DOWNLOAD="https://fs-uae.net/stable/3.0.5/fs-uae-arcade-3.0.5.tar.gz"
MD5SUM="85e151135df7b886169a040a43ebbc52"
DOWNLOAD_x86_64=""
MD5SUM_x86_64=""
-REQUIRES="python3-PyQt5 python3-lhafile fs-uae python-requests python3-certifi"
+REQUIRES="python3-lhafile fs-uae"
MAINTAINER="CRTS"
EMAIL="crts@gmx.net"
diff --git a/games/fs-uae-launcher/fs-uae-launcher.SlackBuild b/games/fs-uae-launcher/fs-uae-launcher.SlackBuild
index 2ce198388f..827be4a626 100644
--- a/games/fs-uae-launcher/fs-uae-launcher.SlackBuild
+++ b/games/fs-uae-launcher/fs-uae-launcher.SlackBuild
@@ -1,4 +1,4 @@
-#!/bin/sh
+#!/bin/bash
# SlackBuild script for "fs-uae-launcher".
@@ -25,26 +25,36 @@
# (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE
# OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
+cd $(dirname $0) ; CWD=$(pwd)
+
PRGNAM=fs-uae-launcher
VERSION=${VERSION:-3.0.5}
BUILD=${BUILD:-1}
TAG=${TAG:-_SBo}
+PKGTYPE=${PKGTYPE:-tgz}
if [ -z "$ARCH" ]; then
case "$( uname -m )" in
- i?86) ARCH=i486 ;;
+ i?86) ARCH=i586 ;;
arm*) ARCH=arm ;;
*) ARCH=$( uname -m ) ;;
esac
fi
-CWD=$(pwd)
+# If the variable PRINT_PACKAGE_NAME is set, then this script will report what
+# the name of the created package would be, and then exit. This information
+# could be useful to other scripts.
+if [ ! -z "${PRINT_PACKAGE_NAME}" ]; then
+ echo "$PRGNAM-$VERSION-$ARCH-$BUILD$TAG.$PKGTYPE"
+ exit 0
+fi
+
TMP=${TMP:-/tmp/SBo}
PKG=$TMP/package-$PRGNAM
OUTPUT=${OUTPUT:-/tmp}
-if [ "$ARCH" = "i486" ]; then
- SLKCFLAGS="-O2 -march=i486 -mtune=i686"
+if [ "$ARCH" = "i586" ]; then
+ SLKCFLAGS="-O2 -march=i586 -mtune=i686"
LIBDIRSUFFIX=""
elif [ "$ARCH" = "i686" ]; then
SLKCFLAGS="-O2 -march=i686 -mtune=i686"
@@ -84,4 +94,4 @@ cat $CWD/slack-desc > $PKG/install/slack-desc
cat $CWD/doinst.sh > $PKG/install/doinst.sh
cd $PKG
-/sbin/makepkg -l y -c n $OUTPUT/$PRGNAM-$VERSION-$ARCH-$BUILD$TAG.${PKGTYPE:-tgz}
+/sbin/makepkg -l y -c n $OUTPUT/$PRGNAM-$VERSION-$ARCH-$BUILD$TAG.$PKGTYPE
diff --git a/games/fs-uae-launcher/fs-uae-launcher.info b/games/fs-uae-launcher/fs-uae-launcher.info
index 8f25cf3fe4..16648bb69f 100644
--- a/games/fs-uae-launcher/fs-uae-launcher.info
+++ b/games/fs-uae-launcher/fs-uae-launcher.info
@@ -5,6 +5,6 @@ DOWNLOAD="https://fs-uae.net/stable/3.0.5/fs-uae-launcher-3.0.5.tar.gz"
MD5SUM="6fc4e026763d49fb3f5696f678c4c0e4"
DOWNLOAD_x86_64=""
MD5SUM_x86_64=""
-REQUIRES="python3-PyQt5 python3-lhafile fs-uae python-requests python3-certifi"
+REQUIRES="python3-lhafile fs-uae"
MAINTAINER="CRTS"
EMAIL="crts@gmx.net"
diff --git a/games/fs-uae/fs-uae.SlackBuild b/games/fs-uae/fs-uae.SlackBuild
index 3aa8b4d94e..99aaf1d416 100644
--- a/games/fs-uae/fs-uae.SlackBuild
+++ b/games/fs-uae/fs-uae.SlackBuild
@@ -1,4 +1,4 @@
-#!/bin/sh
+#!/bin/bash
# SlackBuild script for "fs-uae".
@@ -25,10 +25,16 @@
# (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE
# OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
+# 20220221 bkw: Modified by SlackBuilds.org: fix build on 15.0, by
+# updating to version 3.1.35 (3.0.5 wouldn't build).
+
+cd $(dirname $0) ; CWD=$(pwd)
+
PRGNAM=fs-uae
-VERSION=${VERSION:-3.0.5}
+VERSION=${VERSION:-3.1.35}
BUILD=${BUILD:-1}
TAG=${TAG:-_SBo}
+PKGTYPE=${PKGTYPE:-tgz}
if [ -z "$ARCH" ]; then
case "$( uname -m )" in
@@ -38,7 +44,11 @@ if [ -z "$ARCH" ]; then
esac
fi
-CWD=$(pwd)
+if [ ! -z "${PRINT_PACKAGE_NAME}" ]; then
+ echo "$PRGNAM-$VERSION-$ARCH-$BUILD$TAG.$PKGTYPE"
+ exit 0
+fi
+
TMP=${TMP:-/tmp/SBo}
PKG=$TMP/package-$PRGNAM
OUTPUT=${OUTPUT:-/tmp}
@@ -68,9 +78,9 @@ cd $PRGNAM-$VERSION
chown -R root:root .
find -L . \
\( -perm 777 -o -perm 775 -o -perm 750 -o -perm 711 -o -perm 555 \
- -o -perm 511 \) -exec chmod 755 {} \; -o \
+ -o -perm 511 \) -exec chmod 755 {} \+ -o \
\( -perm 666 -o -perm 664 -o -perm 640 -o -perm 600 -o -perm 444 \
- -o -perm 440 -o -perm 400 \) -exec chmod 644 {} \;
+ -o -perm 440 -o -perm 400 \) -exec chmod 644 {} \+
CFLAGS="$SLKCFLAGS" \
CXXFLAGS="$SLKCFLAGS" \
@@ -93,4 +103,4 @@ cat $CWD/slack-desc > $PKG/install/slack-desc
cat $CWD/doinst.sh > $PKG/install/doinst.sh
cd $PKG
-/sbin/makepkg -l y -c n $OUTPUT/$PRGNAM-$VERSION-$ARCH-$BUILD$TAG.${PKGTYPE:-tgz}
+/sbin/makepkg -l y -c n $OUTPUT/$PRGNAM-$VERSION-$ARCH-$BUILD$TAG.$PKGTYPE
diff --git a/games/fs-uae/fs-uae.info b/games/fs-uae/fs-uae.info
index 3f4e454724..be52b342ba 100644
--- a/games/fs-uae/fs-uae.info
+++ b/games/fs-uae/fs-uae.info
@@ -1,10 +1,10 @@
PRGNAM="fs-uae"
-VERSION="3.0.5"
+VERSION="3.1.35"
HOMEPAGE="https://fs-uae.net/"
-DOWNLOAD="https://fs-uae.net/stable/3.0.5/fs-uae-3.0.5.tar.gz"
-MD5SUM="14524d7e21a7eb6e3660a8eb1c7ce56b"
+DOWNLOAD="https://fs-uae.net/stable/3.1.35/fs-uae-3.1.35.tar.gz"
+MD5SUM="dc7b2323ee199a6c0b31b391a9d97815"
DOWNLOAD_x86_64=""
MD5SUM_x86_64=""
-REQUIRES="SDL2 OpenAL libmpeg2"
+REQUIRES="libmpeg2"
MAINTAINER="CRTS"
EMAIL="crts@gmx.net"
diff --git a/games/fs2open/fs2open.SlackBuild b/games/fs2open/fs2open.SlackBuild
index 6ac7de7186..b95be31e07 100644
--- a/games/fs2open/fs2open.SlackBuild
+++ b/games/fs2open/fs2open.SlackBuild
@@ -1,4 +1,4 @@
-#!/bin/sh
+#!/bin/bash
# Slackware build script for fs2open
@@ -22,10 +22,18 @@
# OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF THIS SOFTWARE, EVEN IF
# ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
+# 20220222 bkw: Modified by SlackBuilds.org:
+# - fix download URL.
+# - force use of wxGTK3.
+# - full paths in .desktop files, get rid of Encoding=
+
+cd $(dirname $0) ; CWD=$(pwd)
+
PRGNAM=fs2open
VERSION=${VERSION:-ac2b864}
BUILD=${BUILD:-1}
TAG=${TAG:-_SBo}
+PKGTYPE=${PKGTYPE:-tgz}
if [ -z "$ARCH" ]; then
case "$( uname -m )" in
@@ -35,7 +43,11 @@ if [ -z "$ARCH" ]; then
esac
fi
-CWD=$(pwd)
+if [ ! -z "${PRINT_PACKAGE_NAME}" ]; then
+ echo "$PRGNAM-$VERSION-$ARCH-$BUILD$TAG.$PKGTYPE"
+ exit 0
+fi
+
TMP=${TMP:-/tmp/SBo}
PKG=$TMP/package-$PRGNAM
OUTPUT=${OUTPUT:-/tmp}
@@ -65,9 +77,14 @@ cd $PRGNAM-$VERSION
chown -R root:root .
find -L . \
\( -perm 777 -o -perm 775 -o -perm 750 -o -perm 711 -o -perm 555 \
- -o -perm 511 \) -exec chmod 755 {} \; -o \
+ -o -perm 511 \) -exec chmod 755 {} \+ -o \
\( -perm 666 -o -perm 664 -o -perm 640 -o -perm 600 -o -perm 444 \
- -o -perm 440 -o -perm 400 \) -exec chmod 644 {} \;
+ -o -perm 440 -o -perm 400 \) -exec chmod 644 {} \+
+
+# 20220222 bkw: force cmake to find wxGTK3, ignoring /usr/bin/wx-config.
+mkdir -p wxtmp
+ln -s /usr/lib$LIBDIRSUFFIX/wx/config/gtk3-unicode-3.0 wxtmp/wx-config
+export PATH="$(pwd)/wxtmp:$PATH"
mkdir -p build/lib/openal/OpenALsoft/src/
cp $CWD/openal-soft-1.15.1.tar.bz2 build/lib/openal/OpenALsoft/src/
@@ -75,6 +92,7 @@ cd build
cmake \
-DCMAKE_C_FLAGS:STRING="$SLKCFLAGS" \
-DCMAKE_CXX_FLAGS:STRING="$SLKCFLAGS" \
+ -DwxWidgets_CONFIG_OPTIONS="--version=3.0" \
-DCMAKE_INSTALL_PREFIX=/opt/fs2open \
-DFSO_BUILD_TOOLS:BOOL=ON \
-DFSO_BUILD_WXFRED2:BOOL=ON \
@@ -82,12 +100,9 @@ cd build
-DFSO_USE_LUAJIT:BOOL=OFF \
-DCMAKE_BUILD_TYPE=Release ..
make
- make install DESTDIR=$PKG
+ make install/strip DESTDIR=$PKG
cd ..
-find $PKG -print0 | xargs -0 file | grep -e "executable" -e "shared object" | grep ELF \
- | cut -f 1 -d : | xargs strip --strip-unneeded 2> /dev/null || true
-
# copy the pixmap
mkdir -p $PKG/usr/share/pixmaps
cp $TMP/$PRGNAM-$VERSION/freespace2/resources/app_icon.png $PKG/usr/share/pixmaps/fs2open.png
@@ -98,25 +113,23 @@ if [ "$ARCH" = "x86_64" ]; then
cat << EOF > $PKG/usr/share/applications/fs2open.desktop
[Desktop Entry]
Type=Application
-Encoding=UTF-8
Name=FreeSpace 2 Open
Comment=A Linux port of FreeSpace 2
-Icon=fs2open.png
+Icon=/usr/share/pixmaps/fs2open.png
Exec=/opt/fs2open/fs2_open_3_7_5_x64
Terminal=false
-Categories=Application;Game;
+Categories=Game;
EOF
else
cat << EOF > $PKG/usr/share/applications/fs2open.desktop
[Desktop Entry]
Type=Application
-Encoding=UTF-8
Name=FreeSpace 2 Open
Comment=A Linux port of FreeSpace 2
-Icon=fs2open.png
+Icon=/usr/share/pixmaps/fs2open.png
Exec=/opt/fs2open/fs2_open_3_7_5
Terminal=false
-Categories=Application;Game;
+Categories=Game;
EOF
fi
@@ -129,4 +142,4 @@ cat $CWD/slack-desc > $PKG/install/slack-desc
cat $CWD/doinst.sh > $PKG/install/doinst.sh
cd $PKG
-/sbin/makepkg -l y -c n $OUTPUT/$PRGNAM-$VERSION-$ARCH-$BUILD$TAG.${PKGTYPE:-tgz}
+/sbin/makepkg -l y -c n $OUTPUT/$PRGNAM-$VERSION-$ARCH-$BUILD$TAG.$PKGTYPE
diff --git a/games/fs2open/fs2open.info b/games/fs2open/fs2open.info
index d2de411bd0..48f53d7802 100644
--- a/games/fs2open/fs2open.info
+++ b/games/fs2open/fs2open.info
@@ -1,12 +1,12 @@
PRGNAM="fs2open"
VERSION="ac2b864"
HOMEPAGE="https://github.com/scp-fs2open/fs2open.github.com"
-DOWNLOAD="https://schmatzler.de/my_slackbuilds/fs2open/fs2open-ac2b864.tar.gz \
- http://kcat.strangesoft.net/openal-releases/openal-soft-1.15.1.tar.bz2"
+DOWNLOAD="https://slackware.uk/~urchlay/src/fs2open-ac2b864.tar.gz \
+ https://downloads.sourceforge.net/project/openal-soft/openal-soft/openal-soft-1.15.1.tar.bz2"
MD5SUM="19d8cd7edeb98a25b49abbf92b68246c \
- ea83dec3b9655a27d28e7bc7cae9cd71"
+ ea83dec3b9655a27d28e7bc7cae9cd71"
DOWNLOAD_x86_64=""
MD5SUM_x86_64=""
-REQUIRES="OpenAL ffmpeg lua wxGTK3 SDL2"
+REQUIRES="lua wxGTK3"
MAINTAINER="Danny Schmarsel"
EMAIL="danny@schmarsel.de"
diff --git a/games/fuse-emulator/fuse-emulator.SlackBuild b/games/fuse-emulator/fuse-emulator.SlackBuild
index 0adef762c3..d68d85f7fc 100644
--- a/games/fuse-emulator/fuse-emulator.SlackBuild
+++ b/games/fuse-emulator/fuse-emulator.SlackBuild
@@ -1,8 +1,8 @@
-#!/bin/sh
+#!/bin/bash
# Slackware build script for fuse-emulator
-# Copyright 2014-2018 Dimitris Zlatanidis Orestiada, Greece
+# Copyright 2014-2024 Dimitris Zlatanidis Orestiada, Greece
# All rights reserved.
#
# Redistribution and use of this script, with or without modification, is
@@ -22,11 +22,14 @@
# OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF THIS SOFTWARE, EVEN IF
# ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
+cd $(dirname $0) ; CWD=$(pwd)
+
PRGNAM=fuse-emulator
SRCNAM=$(echo $PRGNAM | cut -c1-4)
-VERSION=${VERSION:-1.5.5}
+VERSION=${VERSION:-1.5.7}
BUILD=${BUILD:-1}
TAG=${TAG:-_SBo}
+PKGTYPE=${PKGTYPE:-tgz}
if [ -z "$ARCH" ]; then
case "$( uname -m )" in
@@ -36,7 +39,14 @@ if [ -z "$ARCH" ]; then
esac
fi
-CWD=$(pwd)
+# If the variable PRINT_PACKAGE_NAME is set, then this script will report what
+# the name of the created package would be, and then exit. This information
+# could be useful to other scripts.
+if [ ! -z "${PRINT_PACKAGE_NAME}" ]; then
+ echo "$PRGNAM-$VERSION-$ARCH-$BUILD$TAG.$PKGTYPE"
+ exit 0
+fi
+
TMP=${TMP:-/tmp/SBo}
PKG=$TMP/package-$PRGNAM
OUTPUT=${OUTPUT:-/tmp}
@@ -100,4 +110,4 @@ cat $CWD/slack-desc > $PKG/install/slack-desc
cat $CWD/doinst.sh > $PKG/install/doinst.sh
cd $PKG
-/sbin/makepkg -l y -c n $OUTPUT/$PRGNAM-$VERSION-$ARCH-$BUILD$TAG.${PKGTYPE:-tgz}
+/sbin/makepkg -l y -c n $OUTPUT/$PRGNAM-$VERSION-$ARCH-$BUILD$TAG.$PKGTYPE
diff --git a/games/fuse-emulator/fuse-emulator.info b/games/fuse-emulator/fuse-emulator.info
index 0e10febdf9..6117c547d3 100644
--- a/games/fuse-emulator/fuse-emulator.info
+++ b/games/fuse-emulator/fuse-emulator.info
@@ -1,10 +1,10 @@
PRGNAM="fuse-emulator"
-VERSION="1.5.5"
+VERSION="1.5.7"
HOMEPAGE="http://fuse-emulator.sourceforge.net"
-DOWNLOAD="https://downloads.sourceforge.net/project/fuse-emulator/fuse/1.5.5/fuse-1.5.5.tar.gz"
-MD5SUM="21c834410534bcb926e98f5d4ef4c039"
+DOWNLOAD="https://downloads.sourceforge.net/project/fuse-emulator/fuse/1.5.7/fuse-1.5.7.tar.gz"
+MD5SUM="d9c9085635726ae4fdbe2c40d82de695"
DOWNLOAD_x86_64=""
MD5SUM_x86_64=""
REQUIRES="libspectrum"
MAINTAINER="Dimitris Zlatanidis"
-EMAIL="d.zlatanidis@gmail.com"
+EMAIL="dslackw@gmail.com"
diff --git a/games/galaxyv2/galaxyv2.SlackBuild b/games/galaxyv2/galaxyv2.SlackBuild
index 54d5d3a1ec..10b7939991 100644
--- a/games/galaxyv2/galaxyv2.SlackBuild
+++ b/games/galaxyv2/galaxyv2.SlackBuild
@@ -1,8 +1,8 @@
-#!/bin/sh
+#!/bin/bash
# Slackware build script for galaxyv2
-# Copyright 2014-2016 Dimitris Zlatanidis Orestiada, Greece
+# Copyright 2014-2023 Dimitris Zlatanidis Orestiada, Greece
# All rights reserved.
#
# Redistribution and use of this script, with or without modification, is
@@ -22,10 +22,13 @@
# OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF THIS SOFTWARE, EVEN IF
# ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
+cd $(dirname $0) ; CWD=$(pwd)
+
PRGNAM=galaxyv2
-VERSION=${VERSION:-1.85}
+VERSION=${VERSION:-1.86}
BUILD=${BUILD:-1}
TAG=${TAG:-_SBo}
+PKGTYPE=${PKGTYPE:-tgz}
if [ -z "$ARCH" ]; then
case "$( uname -m )" in
@@ -35,7 +38,14 @@ if [ -z "$ARCH" ]; then
esac
fi
-CWD=$(pwd)
+# If the variable PRINT_PACKAGE_NAME is set, then this script will report what
+# the name of the created package would be, and then exit. This information
+# could be useful to other scripts.
+if [ ! -z "${PRINT_PACKAGE_NAME}" ]; then
+ echo "$PRGNAM-$VERSION-$ARCH-$BUILD$TAG.$PKGTYPE"
+ exit 0
+fi
+
TMP=${TMP:-/tmp/SBo}
PKG=$TMP/package-$PRGNAM
OUTPUT=${OUTPUT:-/tmp}
@@ -100,4 +110,4 @@ cat $CWD/slack-desc > $PKG/install/slack-desc
cat $CWD/doinst.sh > $PKG/install/doinst.sh
cd $PKG
-/sbin/makepkg -l y -c n $OUTPUT/$PRGNAM-$VERSION-$ARCH-$BUILD$TAG.${PKGTYPE:-tgz}
+/sbin/makepkg -l y -c n $OUTPUT/$PRGNAM-$VERSION-$ARCH-$BUILD$TAG.$PKGTYPE
diff --git a/games/galaxyv2/galaxyv2.info b/games/galaxyv2/galaxyv2.info
index 8aff532f42..aae9abaddf 100644
--- a/games/galaxyv2/galaxyv2.info
+++ b/games/galaxyv2/galaxyv2.info
@@ -1,8 +1,8 @@
PRGNAM="galaxyv2"
-VERSION="1.85"
+VERSION="1.86"
HOMEPAGE="http://www.galaxy-forces.com/"
-DOWNLOAD="http://ponce.cc/slackware/sources/repo/galaxyv2_1.85_src.zip"
-MD5SUM="87473e6ceba751c71760ecd538707070"
+DOWNLOAD="https://downloads.sourceforge.net/project/galaxyv2/galaxyv2/galaxyv2_1.86/galaxyv2_1.86_src.zip"
+MD5SUM="60bd8c4993c513eb91bffe221734a1a1"
DOWNLOAD_x86_64=""
MD5SUM_x86_64=""
REQUIRES=""
diff --git a/games/gambatte-libretro/README b/games/gambatte-libretro/README
deleted file mode 100644
index 8ea87a3191..0000000000
--- a/games/gambatte-libretro/README
+++ /dev/null
@@ -1,10 +0,0 @@
-Gambatte is a Nintendo Game Boy/Game Boy Color video game system
-emulator that can be used as a libretro core.
-
-Gambatte is an accuracy-focused, open-source, cross-platform Game
-Boy Color emulator written in C++. It is based on hundreds of corner
-case hardware tests, as well as previous documentation and reverse
-engineering efforts.
-
-To build the debugging symbols use:
- DEBUG=1 ./gambatte-libretro.SlackBuild
diff --git a/games/gambatte-libretro/gambatte-libretro.SlackBuild b/games/gambatte-libretro/gambatte-libretro.SlackBuild
deleted file mode 100644
index 20cc4a285d..0000000000
--- a/games/gambatte-libretro/gambatte-libretro.SlackBuild
+++ /dev/null
@@ -1,82 +0,0 @@
-#!/bin/sh
-
-# Slackware build script for gambatte-libretro
-
-# Copyright 2016-2018 Hunter Sezen
-# All rights reserved.
-#
-# Redistribution and use of this script, with or without modification, is
-# permitted provided that the following conditions are met:
-#
-# 1. Redistributions of this script must retain the above copyright
-# notice, this list of conditions and the following disclaimer.
-#
-# THIS SOFTWARE IS PROVIDED BY THE AUTHOR "AS IS" AND ANY EXPRESS OR IMPLIED
-# WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE IMPLIED WARRANTIES OF
-# MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE ARE DISCLAIMED. IN NO
-# EVENT SHALL THE AUTHOR BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL,
-# SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT LIMITED TO,
-# PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, DATA, OR PROFITS;
-# OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY,
-# WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR
-# OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF THIS SOFTWARE, EVEN IF
-# ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
-
-PRGNAM=gambatte-libretro
-LIBNAM=$(echo $PRGNAM | tr - _)
-VERSION=${VERSION:-2018.10.22_5ee8b1e}
-BUILD=${BUILD:-1}
-TAG=${TAG:-_SBo}
-
-if [ -z "$ARCH" ]; then
- case "$( uname -m )" in
- i?86) ARCH=i586 ;;
- arm*) ARCH=arm ;;
- *) ARCH=$( uname -m ) ;;
- esac
-fi
-
-CWD=$(pwd)
-TMP=${TMP:-/tmp/SBo}
-PKG=$TMP/package-$PRGNAM
-OUTPUT=${OUTPUT:-/tmp}
-
-LIBDIRSUFFIX=
-[ "$ARCH" = x86_64 ] && LIBDIRSUFFIX=64
-
-set -eu
-
-rm -rf $PKG
-mkdir -p $TMP $PKG $OUTPUT
-cd $TMP
-rm -rf $PRGNAM-$VERSION
-tar xvf $CWD/$PRGNAM-$VERSION.tar.xz
-cd $PRGNAM-$VERSION
-chown -R root:root .
-find -L . \
- \( -perm 777 -o -perm 775 -o -perm 750 -o -perm 711 -o -perm 555 \
- -o -perm 511 \) -exec chmod 755 {} \; -o \
- \( -perm 666 -o -perm 664 -o -perm 640 -o -perm 600 -o -perm 444 \
- -o -perm 440 -o -perm 400 \) -exec chmod 644 {} \;
-
-[ "${DEBUG:=0}" != 0 ] && DEBUG=1
-
-make -f Makefile.libretro DEBUG=$DEBUG
-
-install -Dm0644 $LIBNAM.so $PKG/usr/lib${LIBDIRSUFFIX}/libretro/$LIBNAM.so
-install -Dm0644 $LIBNAM.info $PKG/usr/lib${LIBDIRSUFFIX}/libretro/info/$LIBNAM.info
-
-if [ $DEBUG = 0 ]; then
- find $PKG -print0 | xargs -0 file | grep -e "executable" -e "shared object" | grep ELF \
- | cut -f 1 -d : | xargs strip --strip-unneeded 2> /dev/null || true
-fi
-
-mkdir -p $PKG/usr/doc/$PRGNAM-$VERSION
-cp -a COPYING README.md changelog $PKG/usr/doc/$PRGNAM-$VERSION
-cat $CWD/$PRGNAM.SlackBuild > $PKG/usr/doc/$PRGNAM-$VERSION/$PRGNAM.SlackBuild
-
-mkdir -p $PKG/install
-cat $CWD/slack-desc > $PKG/install/slack-desc
-
-cd $PKG
-/sbin/makepkg -l y -c n $OUTPUT/$PRGNAM-$VERSION-$ARCH-$BUILD$TAG.${PKGTYPE:-tgz}
diff --git a/games/gambatte-libretro/gambatte-libretro.info b/games/gambatte-libretro/gambatte-libretro.info
deleted file mode 100644
index 48428ea56f..0000000000
--- a/games/gambatte-libretro/gambatte-libretro.info
+++ /dev/null
@@ -1,10 +0,0 @@
-PRGNAM="gambatte-libretro"
-VERSION="2018.10.22_5ee8b1e"
-HOMEPAGE="https://www.libretro.com/"
-DOWNLOAD="http://slackless.raccoons.tech/src/libretro/gambatte-libretro-2018.10.22_5ee8b1e.tar.xz"
-MD5SUM="d02329b684152901a63f772ad03f01a7"
-DOWNLOAD_x86_64=""
-MD5SUM_x86_64=""
-REQUIRES="RetroArch"
-MAINTAINER="orphaned - no maintainer"
-EMAIL="nobody@nowhere.com"
diff --git a/games/gambatte-libretro/slack-desc b/games/gambatte-libretro/slack-desc
deleted file mode 100644
index ec07f03042..0000000000
--- a/games/gambatte-libretro/slack-desc
+++ /dev/null
@@ -1,19 +0,0 @@
-# HOW TO EDIT THIS FILE:
-# The "handy ruler" below makes it easier to edit a package description.
-# Line up the first '|' above the ':' following the base package name, and
-# the '|' on the right side marks the last column you can put a character in.
-# You must make exactly 11 lines for the formatting to be correct. It's also
-# customary to leave one space after the ':' except on otherwise blank lines.
-
- |-----handy-ruler------------------------------------------------------|
-gambatte-libretro: gambatte-libretro (libretro port of libgambatte)
-gambatte-libretro:
-gambatte-libretro: Gambatte is an accuracy-focused, open-source, cross-platform Game Boy
-gambatte-libretro: Color emulator written in C++. It is based on hundreds of corner case
-gambatte-libretro: hardware tests, as well as previous documentation and reverse
-gambatte-libretro: engineering efforts.
-gambatte-libretro:
-gambatte-libretro: Homepage: https://www.libretro.com/
-gambatte-libretro:
-gambatte-libretro:
-gambatte-libretro:
diff --git a/games/game_1945/game_1945.SlackBuild b/games/game_1945/game_1945.SlackBuild
index 17060dae6f..446a2c1c9a 100644
--- a/games/game_1945/game_1945.SlackBuild
+++ b/games/game_1945/game_1945.SlackBuild
@@ -1,4 +1,4 @@
-#!/bin/sh
+#!/bin/bash
# Slackware build script for game_1945
@@ -22,11 +22,14 @@
# OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF THIS SOFTWARE, EVEN IF
# ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
+cd $(dirname $0) ; CWD=$(pwd)
+
PRGNAM=game_1945
SRCNAM=1945
VERSION=${VERSION:-0.55}
BUILD=${BUILD:-1}
TAG=${TAG:-_SBo}
+PKGTYPE=${PKGTYPE:-tgz}
if [ -z "$ARCH" ]; then
case "$( uname -m )" in
@@ -36,7 +39,14 @@ if [ -z "$ARCH" ]; then
esac
fi
-CWD=$(pwd)
+# If the variable PRINT_PACKAGE_NAME is set, then this script will report what
+# the name of the created package would be, and then exit. This information
+# could be useful to other scripts.
+if [ ! -z "${PRINT_PACKAGE_NAME}" ]; then
+ echo "$PRGNAM-$VERSION-$ARCH-$BUILD$TAG.$PKGTYPE"
+ exit 0
+fi
+
TMP=${TMP:-/tmp/SBo}
PKG=$TMP/package-$PRGNAM
OUTPUT=${OUTPUT:-/tmp}
@@ -99,4 +109,4 @@ cat $CWD/slack-desc > $PKG/install/slack-desc
cat $CWD/doinst.sh > $PKG/install/doinst.sh
cd $PKG
-/sbin/makepkg -l y -c n $OUTPUT/$PRGNAM-$VERSION-$ARCH-$BUILD$TAG.${PKGTYPE:-tgz}
+/sbin/makepkg -l y -c n $OUTPUT/$PRGNAM-$VERSION-$ARCH-$BUILD$TAG.$PKGTYPE
diff --git a/games/garden/garden.SlackBuild b/games/garden/garden.SlackBuild
index b2fcbcf6fa..f63e9a9a0f 100644
--- a/games/garden/garden.SlackBuild
+++ b/games/garden/garden.SlackBuild
@@ -1,4 +1,4 @@
-#!/bin/sh
+#!/bin/bash
# Copyright (c) 2013-2015 LEVAI Daniel
# All rights reserved.
@@ -25,26 +25,35 @@
# (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF THIS
# SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
+# 20220222 bkw: Modified by SlackBuilds.org: fix build on 15.0.
+
+cd $(dirname $0) ; CWD=$(pwd)
+
PRGNAM=garden
VERSION=${VERSION:-1.0.9}
BUILD=${BUILD:-1}
TAG=${TAG:-_SBo}
+PKGTYPE=${PKGTYPE:-tgz}
if [ -z "$ARCH" ]; then
case "$( uname -m )" in
- i?86) ARCH=i486 ;;
+ i?86) ARCH=i586 ;;
arm*) ARCH=arm ;;
*) ARCH=$( uname -m ) ;;
esac
fi
-CWD=$(pwd)
+if [ ! -z "${PRINT_PACKAGE_NAME}" ]; then
+ echo "$PRGNAM-$VERSION-$ARCH-$BUILD$TAG.$PKGTYPE"
+ exit 0
+fi
+
TMP=${TMP:-/tmp/SBo}
PKG=$TMP/package-$PRGNAM
OUTPUT=${OUTPUT:-/tmp}
-if [ "$ARCH" = "i486" ]; then
- SLKCFLAGS="-O2 -march=i486 -mtune=i686"
+if [ "$ARCH" = "i586" ]; then
+ SLKCFLAGS="-O2 -march=i586 -mtune=i686"
LIBDIRSUFFIX=""
elif [ "$ARCH" = "i686" ]; then
SLKCFLAGS="-O2 -march=i686 -mtune=i686"
@@ -62,15 +71,17 @@ set -e
rm -rf $PKG
mkdir -p $TMP $PKG $OUTPUT
cd $TMP
-rm -rf $PRGNAM
+rm -rf $PRGNAM-$VERSION
tar xvf $CWD/$PRGNAM-$VERSION.tar.gz
cd $PRGNAM-$VERSION
chown -R root:root .
find -L . \
\( -perm 777 -o -perm 775 -o -perm 750 -o -perm 711 -o -perm 555 \
- -o -perm 511 \) -exec chmod 755 {} \; -o \
+ -o -perm 511 \) -exec chmod 755 {} \+ -o \
\( -perm 666 -o -perm 664 -o -perm 640 -o -perm 600 -o -perm 444 \
- -o -perm 440 -o -perm 400 \) -exec chmod 644 {} \;
+ -o -perm 440 -o -perm 400 \) -exec chmod 644 {} \+
+
+SLKCFLAGS+=" -fcommon"
CFLAGS="$SLKCFLAGS -fgnu89-inline" \
CXXFLAGS="$SLKCFLAGS" \
@@ -81,7 +92,7 @@ make
make install-strip DESTDIR=$PKG
mkdir -p $PKG/usr/doc/$PRGNAM-$VERSION
-cp -a AUTHORS ChangeLog INSTALL NEWS COPYING README $PKG/usr/doc/$PRGNAM-$VERSION
+cp -a AUTHORS ChangeLog NEWS COPYING README $PKG/usr/doc/$PRGNAM-$VERSION
cat $CWD/$PRGNAM.SlackBuild > $PKG/usr/doc/$PRGNAM-$VERSION/$PRGNAM.SlackBuild
mkdir -p $PKG/install
@@ -89,4 +100,4 @@ cat $CWD/slack-desc > $PKG/install/slack-desc
cat $CWD/doinst.sh > $PKG/install/doinst.sh
cd $PKG
-/sbin/makepkg -l y -c n $OUTPUT/$PRGNAM-$VERSION-$ARCH-$BUILD$TAG.${PKGTYPE:-tgz}
+/sbin/makepkg -l y -c n $OUTPUT/$PRGNAM-$VERSION-$ARCH-$BUILD$TAG.$PKGTYPE
diff --git a/games/gargoyle/doinst.sh b/games/gargoyle/doinst.sh
index 595fdd454b..34ca31c416 100644
--- a/games/gargoyle/doinst.sh
+++ b/games/gargoyle/doinst.sh
@@ -16,3 +16,13 @@ config etc/garglk.ini.new
if [ -x /usr/bin/update-desktop-database ]; then
/usr/bin/update-desktop-database -q usr/share/applications >/dev/null 2>&1
fi
+
+if [ -e usr/share/icons/hicolor/icon-theme.cache ]; then
+ if [ -x /usr/bin/gtk-update-icon-cache ]; then
+ /usr/bin/gtk-update-icon-cache -f usr/share/icons/hicolor >/dev/null 2>&1
+ fi
+fi
+
+if [ -x /usr/bin/fc-cache ]; then
+ /usr/bin/fc-cache -f
+fi
diff --git a/games/gargoyle/gargoyle.SlackBuild b/games/gargoyle/gargoyle.SlackBuild
index fd26829adf..bf1b7293ab 100644
--- a/games/gargoyle/gargoyle.SlackBuild
+++ b/games/gargoyle/gargoyle.SlackBuild
@@ -1,13 +1,16 @@
-#!/bin/sh
+#!/bin/bash
# Slackware build script for gargoyle
# Written by Dugan Chen (thedoogster@gmail.com)
# Yth | Pont-en-Royans, France | yth@ythogtha.org
+cd $(dirname $0) ; CWD=$(pwd)
+
PRGNAM=gargoyle
-VERSION=${VERSION:-2019.1.1}
-BUILD=${BUILD:-2}
+VERSION=${VERSION:-2023.1}
+BUILD=${BUILD:-1}
TAG=${TAG:-_SBo}
+PKGTYPE=${PKGTYPE:-tgz}
SRCNAM=garglk
SRCVER=${VERSION}
@@ -20,7 +23,11 @@ if [ -z "$ARCH" ]; then
esac
fi
-CWD=$(pwd)
+if [ ! -z "${PRINT_PACKAGE_NAME}" ]; then
+ echo "$PRGNAM-$VERSION-$ARCH-$BUILD$TAG.$PKGTYPE"
+ exit 0
+fi
+
TMP=${TMP:-/tmp/SBo}
PKG=$TMP/package-$PRGNAM
OUTPUT=${OUTPUT:-/tmp}
@@ -34,6 +41,9 @@ elif [ "$ARCH" = "i686" ]; then
elif [ "$ARCH" = "x86_64" ]; then
SLKCFLAGS="-O2 -fPIC"
LIBDIRSUFFIX="64"
+elif [ "$ARCH" = "aarch64" ]; then
+ SLKCFLAGS="-O2 -fPIC"
+ LIBDIRSUFFIX="64"
else
SLKCFLAGS="-O2"
LIBDIRSUFFIX=""
@@ -50,26 +60,30 @@ cd $SRCNAM-$SRCVER
chown -R root:root .
find -L . \
\( -perm 777 -o -perm 775 -o -perm 750 -o -perm 711 -o -perm 555 -o -perm 511 \) \
- -exec chmod 755 {} \; -o \
+ -exec chmod 755 {} \+ -o \
\( -perm 666 -o -perm 664 -o -perm 600 -o -perm 444 -o -perm 440 -o -perm 400 \) \
- -exec chmod 644 {} \;
-
-env -u BUILD \
-jam -s DESTDIR=$PKG \
- -s _BINDIR=/usr/libexec/gargoyle \
- -s _APPDIR=/usr/libexec/gargoyle \
- -s _LIBDIR=/usr/lib$LIBDIRSUFFIX/gargoyle \
- -s CCFLAGS="$SLKCFLAGS -fgnu89-inline" \
- -dx \
- install
+ -exec chmod 644 {} \+
+
+mkdir -p build
+cd build
+ cmake \
+ -DCMAKE_C_FLAGS:STRING="$SLKCFLAGS -fcommon -fgnu89-inline" \
+ -DCMAKE_CXX_FLAGS:STRING="$SLKCFLAGS -fcommon -fpermissive" \
+ -DCMAKE_INSTALL_PREFIX=/usr \
+ -DCMAKE_BUILD_TYPE=Release ..
+ make
+ make install DESTDIR=$PKG
+cd ..
find $PKG -print0 | xargs -0 file | grep -e "executable" -e "shared object" | grep ELF \
| cut -f 1 -d : | xargs strip --strip-unneeded 2> /dev/null || true
-mkdir -p $PKG/usr/bin
-install -m755 $CWD/gargoyle.sh $PKG/usr/bin/gargoyle
+mv $PKG/usr/share/man $PKG/usr/man
+find $PKG/usr/man -type f -exec gzip -9 {} \;
+for i in $( find $PKG/usr/man -type l ) ; do ln -s $(readlink $i).gz $i.gz ; rm $i ; done
-ln -s gargoyle/libgarglk.so $PKG/usr/lib${LIBDIRSUFFIX}/libgarglk.so
+mkdir -p $PKG/usr/games
+mv $PKG/usr/bin/gargoyle $PKG/usr/games/gargoyle
mkdir -p $PKG/etc
cp garglk/garglk.ini $PKG/etc/garglk.ini.new
@@ -78,10 +92,12 @@ mkdir -p $PKG/usr/share/pixmaps
cp garglk/gargoyle-house.png $PKG/usr/share/pixmaps
mkdir -p $PKG/usr/share/applications
-cp garglk/gargoyle.desktop $PKG/usr/share/applications
+sed -e "/^Icon/s,=,=/usr/share/pixmaps/," \
+ -e "/^Exec/s,=,=/usr/games/," \
+ < garglk/gargoyle.desktop \
+ > $PKG/usr/share/applications/gargoyle.desktop
mkdir -p $PKG/usr/doc/$PRGNAM-$VERSION
-cp -a INSTALL $PKG/usr/doc/$PRGNAM-$VERSION
cat $CWD/$PRGNAM.SlackBuild > $PKG/usr/doc/$PRGNAM-$VERSION/$PRGNAM.SlackBuild
mkdir -p $PKG/install
@@ -89,4 +105,4 @@ cat $CWD/slack-desc > $PKG/install/slack-desc
cat $CWD/doinst.sh > $PKG/install/doinst.sh
cd $PKG
-/sbin/makepkg -l y -c n $OUTPUT/$PRGNAM-$VERSION-$ARCH-$BUILD$TAG.${PKGTYPE:-tgz}
+/sbin/makepkg -l y -c n $OUTPUT/$PRGNAM-$VERSION-$ARCH-$BUILD$TAG.$PKGTYPE
diff --git a/games/gargoyle/gargoyle.info b/games/gargoyle/gargoyle.info
index 7c01f9fbd4..dd0215207d 100644
--- a/games/gargoyle/gargoyle.info
+++ b/games/gargoyle/gargoyle.info
@@ -1,10 +1,10 @@
PRGNAM="gargoyle"
-VERSION="2019.1.1"
+VERSION="2023.1"
HOMEPAGE="http://ccxvii.net/gargoyle/"
-DOWNLOAD="https://github.com/garglk/garglk/archive/2019.1.1/garglk-2019.1.1.tar.gz"
-MD5SUM="4b0a92f55adf583b9d5a0ea3e8b59df0"
+DOWNLOAD="https://github.com/garglk/garglk/archive/2023.1/garglk-2023.1.tar.gz"
+MD5SUM="8ded81038e47abe7e21a6d70f6466171"
DOWNLOAD_x86_64=""
MD5SUM_x86_64=""
-REQUIRES="SDL_sound jam linux-libertine-fonts smpeg"
+REQUIRES=""
MAINTAINER="Yth - Arnaud"
EMAIL="yth@ythogtha.org"
diff --git a/games/gbrainy/gbrainy.SlackBuild b/games/gbrainy/gbrainy.SlackBuild
index 22df65ca5f..c025a9a598 100644
--- a/games/gbrainy/gbrainy.SlackBuild
+++ b/games/gbrainy/gbrainy.SlackBuild
@@ -1,10 +1,10 @@
-#!/bin/sh
+#!/bin/bash
# Slackware build script for gbrainy
# Copyright 2011-2012 Binh Nguyen <binhvng@gmail.com>
# Copyright 2012-2017 Ryan P.C. McQuen | Everett, WA | ryanpcmcquen@member.fsf.org
-# Copyright 2017 Jeremy Hansen <jebrhansen+SBo -at- gmail.com>
+# Copyright 2017-2023 Jeremy Hansen <jebrhansen+SBo@gmail.com>
# All rights reserved.
#
# Redistribution and use of this script, with or without modification, is
@@ -24,10 +24,13 @@
# OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF THIS SOFTWARE, EVEN IF
# ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
+cd $(dirname $0) ; CWD=$(pwd)
+
PRGNAM=gbrainy
-VERSION=${VERSION:-2.2.7}
+VERSION=${VERSION:-2.4.6}
BUILD=${BUILD:-1}
TAG=${TAG:-_SBo}
+PKGTYPE=${PKGTYPE:-tgz}
if [ -z "$ARCH" ]; then
case "$( uname -m )" in
@@ -37,7 +40,11 @@ if [ -z "$ARCH" ]; then
esac
fi
-CWD=$(pwd)
+if [ ! -z "${PRINT_PACKAGE_NAME}" ]; then
+ echo "$PRGNAM-$VERSION-$ARCH-$BUILD$TAG.$PKGTYPE"
+ exit 0
+fi
+
TMP=${TMP:-/tmp/SBo}
PKG=$TMP/package-$PRGNAM
OUTPUT=${OUTPUT:-/tmp}
@@ -94,7 +101,7 @@ find $PKG -print0 | xargs -0 file | grep -e "executable" -e "shared object" | gr
find $PKG/usr/man -type f -exec gzip -9 {} \;
mkdir -p $PKG/usr/doc/$PRGNAM-$VERSION
-cp -a AUTHORS COPYING ChangeLog INSTALL MAINTAINERS NEWS README \
+cp -a AUTHORS COPYING ChangeLog MAINTAINERS NEWS README \
$PKG/usr/doc/$PRGNAM-$VERSION
cat $CWD/$PRGNAM.SlackBuild > $PKG/usr/doc/$PRGNAM-$VERSION/$PRGNAM.SlackBuild
@@ -103,4 +110,4 @@ cat $CWD/slack-desc > $PKG/install/slack-desc
cat $CWD/doinst.sh > $PKG/install/doinst.sh
cd $PKG
-/sbin/makepkg -l y -c n $OUTPUT/$PRGNAM-$VERSION-$ARCH-$BUILD$TAG.${PKGTYPE:-tgz}
+/sbin/makepkg -l y -c n $OUTPUT/$PRGNAM-$VERSION-$ARCH-$BUILD$TAG.$PKGTYPE
diff --git a/games/gbrainy/gbrainy.info b/games/gbrainy/gbrainy.info
index 267fd2f820..b9e71f2cd6 100644
--- a/games/gbrainy/gbrainy.info
+++ b/games/gbrainy/gbrainy.info
@@ -1,10 +1,10 @@
PRGNAM="gbrainy"
-VERSION="2.2.7"
+VERSION="2.4.6"
HOMEPAGE="http://live.gnome.org/gbrainy"
-DOWNLOAD="http://gent.softcatala.org/jmas/gbrainy/gbrainy-2.2.7.tar.gz"
-MD5SUM="8ad81d7235d106f9c3ca536a89d79cee"
+DOWNLOAD="http://gent.softcatala.org/jmas/gbrainy/gbrainy-2.4.6.tar.gz"
+MD5SUM="db8bbc91708e892752fc7a0caf588b46"
DOWNLOAD_x86_64=""
MD5SUM_x86_64=""
-REQUIRES="gnome-sharp mono-addins"
+REQUIRES="gtk-sharp3"
MAINTAINER="Jeremy Hansen"
-EMAIL="jebrhansen+SBo -at- gmail.com"
+EMAIL="jebrhansen+SBo@gmail.com"
diff --git a/games/gemrb/README b/games/gemrb/README
index 5fa329264b..c5c160f684 100644
--- a/games/gemrb/README
+++ b/games/gemrb/README
@@ -1,4 +1,2 @@
GemRB is a portable open-source implementation of Bioware's Infinity
Engine.
-
-Optional dependencies: OpenAL or SDL2_Mixer
diff --git a/games/gemrb/gemrb.SlackBuild b/games/gemrb/gemrb.SlackBuild
index 6fd2722144..7dcdf1eb4b 100644
--- a/games/gemrb/gemrb.SlackBuild
+++ b/games/gemrb/gemrb.SlackBuild
@@ -1,4 +1,4 @@
-#!/bin/sh
+#!/bin/bash
# Slackware build script for GemRB
@@ -23,10 +23,14 @@
# OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF THIS SOFTWARE, EVEN IF
# ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
+cd $(dirname $0) ; CWD=$(pwd)
+
PRGNAM=gemrb
-VERSION=${VERSION:-0.8.5}
+VERSION=${VERSION:-0.9.0}
+SRCNAM=${SRCNAM:-$PRGNAM-$VERSION-sources}
BUILD=${BUILD:-1}
TAG=${TAG:-_SBo}
+PKGTYPE=${PKGTYPE:-tgz}
if [ -z "$ARCH" ]; then
case "$( uname -m )" in
@@ -36,7 +40,14 @@ if [ -z "$ARCH" ]; then
esac
fi
-CWD=$(pwd)
+# If the variable PRINT_PACKAGE_NAME is set, then this script will report what
+# the name of the created package would be, and then exit. This information
+# could be useful to other scripts.
+if [ ! -z "${PRINT_PACKAGE_NAME}" ]; then
+ echo "$PRGNAM-$VERSION-$ARCH-$BUILD$TAG.$PKGTYPE"
+ exit 0
+fi
+
TMP=${TMP:-/tmp/SBo}
PKG=$TMP/package-$PRGNAM
OUTPUT=${OUTPUT:-/tmp}
@@ -61,7 +72,7 @@ rm -rf $PKG
mkdir -p $TMP $PKG $OUTPUT
cd $TMP
rm -rf $PRGNAM-$VERSION
-tar xvf $CWD/$PRGNAM-$VERSION.tar.gz
+tar xvf $CWD/$SRCNAM.tar.gz
cd $PRGNAM-$VERSION
chown -R root:root .
find -L . \
@@ -91,7 +102,7 @@ find $PKG/usr/man -type f -exec gzip -9 {} \;
for i in $( find $PKG/usr/man -type l ) ; do ln -s $( readlink $i ).gz $i.gz ; rm $i ; done
mkdir -p $PKG/usr/doc/$PRGNAM-$VERSION
-cp -a AUTHORS COPYING ChangeLog HACKING INSTALL NEWS README gemrb/GemRB.cfg.* $PKG/usr/doc/$PRGNAM-$VERSION
+cp -a AUTHORS COPYING INSTALL NEWS README.md CONTRIBUTING.md gemrb/GemRB.cfg.* $PKG/usr/doc/$PRGNAM-$VERSION
cat $CWD/$PRGNAM.SlackBuild > $PKG/usr/doc/$PRGNAM-$VERSION/$PRGNAM.SlackBuild
mkdir -p $PKG/install
@@ -99,4 +110,4 @@ cat $CWD/slack-desc > $PKG/install/slack-desc
cat $CWD/doinst.sh > $PKG/install/doinst.sh
cd $PKG
-/sbin/makepkg -l y -c n $OUTPUT/$PRGNAM-$VERSION-$ARCH-$BUILD$TAG.${PKGTYPE:-tgz}
+/sbin/makepkg -l y -c n $OUTPUT/$PRGNAM-$VERSION-$ARCH-$BUILD$TAG.$PKGTYPE
diff --git a/games/gemrb/gemrb.info b/games/gemrb/gemrb.info
index 39b25ac1c1..974537cccf 100644
--- a/games/gemrb/gemrb.info
+++ b/games/gemrb/gemrb.info
@@ -1,8 +1,8 @@
PRGNAM="gemrb"
-VERSION="0.8.5"
+VERSION="0.9.0"
HOMEPAGE="http://www.gemrb.org"
-DOWNLOAD="https://tenet.dl.sourceforge.net/project/gemrb/GemRB%20Sources/GemRB%200.8.5%20Sources/gemrb-0.8.5.tar.gz"
-MD5SUM="ee81ef46367202dbe0569c7a9a29e2b1"
+DOWNLOAD="https://sourceforge.net/projects/gemrb/files/Releases//0.9.0/gemrb-0.9.0-sources.tar.gz"
+MD5SUM="53edd434d8a59fcce3c4bac3a8d4c315"
DOWNLOAD_x86_64=""
MD5SUM_x86_64=""
REQUIRES=""
diff --git a/games/gens-gs/README b/games/gens-gs/README
deleted file mode 100644
index cdf3ce679d..0000000000
--- a/games/gens-gs/README
+++ /dev/null
@@ -1,16 +0,0 @@
-Gens/GS is a Sega Genesis/CD/32x emulator forked from Gens.
-
-The project's main goal is to clean up the source code and combine
-features of the various Gens forks, as well as improve portability to
-other platforms.
-
-To build without OpenGL, run the script like:
-
- OPENGL=no ./gens-gs.SlackBuild
-
-To build with the yasm assembler instead of nasm, run the script like:
-
- ASM=yasm ./gens-gs.SlackBuild
-
-rar is an optional run-time dependency for playing ROMs compressed with
-WinRAR.
diff --git a/games/gens-gs/gens-gs.SlackBuild b/games/gens-gs/gens-gs.SlackBuild
deleted file mode 100644
index 0ebdb159cd..0000000000
--- a/games/gens-gs/gens-gs.SlackBuild
+++ /dev/null
@@ -1,88 +0,0 @@
-#!/bin/sh
-# Slackware build script for gens-gs
-# Written by Steven Pledger <spledger91@yahoo.com>
-
-PRGNAM=gens-gs
-VERSION=${VERSION:-r7}
-BUILD=${BUILD:-1}
-TAG=${TAG:-_SBo}
-
-if [ -z "$ARCH" ]; then
- case "$( uname -m )" in
- i?86) ARCH=i486 ;;
- arm*) ARCH=arm ;;
- *) ARCH=$( uname -m ) ;;
- esac
-fi
-
-CWD=$(pwd)
-TMP=${TMP:-/tmp/SBo}
-PKG=$TMP/package-$PRGNAM
-OUTPUT=${OUTPUT:-/tmp}
-
-if [ "$ARCH" = "i486" ]; then
- SLKCFLAGS="-O2 -march=i486 -mtune=i686"
- LIBDIRSUFFIX=""
-elif [ "$ARCH" = "i686" ]; then
- SLKCFLAGS="-O2 -march=i686 -mtune=i686"
- LIBDIRSUFFIX=""
-elif [ "$ARCH" = "x86_64" ]; then
- echo "$ARCH architecture not supported."
- exit 1
-else
- SLKCFLAGS="-O2"
- LIBDIRSUFFIX=""
-fi
-
-# enable opengl
-OPENGL=${OPENGL:-yes} # or no
-
-# which assembler to use?
-ASM="${ASM:-nasm}" # or yasm
-
-set -e
-
-rm -rf $PKG
-mkdir -p $TMP $PKG $OUTPUT
-cd $TMP
-rm -rf $PRGNAM-$VERSION
-tar xvf $CWD/Gens-gs-$VERSION.tar.gz
-cd $PRGNAM-$VERSION
-chown -R root:root .
-find -L . \
- \( -perm 777 -o -perm 775 -o -perm 750 -o -perm 711 -o -perm 555 -o -perm 511 \) \
- -exec chmod 755 {} \; -o \
- \( -perm 666 -o -perm 664 -o -perm 600 -o -perm 444 -o -perm 440 -o -perm 400 \) \
- -exec chmod 644 {} \;
-
-# Borrowed from the AUR PKGBUILD:
-# https://aur.archlinux.org/packages.php?ID=21612
-patch -p1 < $CWD/gens-gtk.patch # replaces deprecated gtk functions
-
-CFLAGS="$SLKCFLAGS" \
-CXXFLAGS="$SLKCFLAGS" \
-./configure \
- --prefix=/usr \
- --libdir=/usr/lib${LIBDIRSUFFIX} \
- --sysconfdir=/etc \
- --localstatedir=/var \
- --disable-static \
- --docdir=/usr/doc/$PRGNAM-$VERSION \
- --with-opengl=$OPENGL \
- --with-nasm=$ASM
-
-make
-make install DESTDIR=$PKG
-
-find $PKG | xargs file | grep -e "executable" -e "shared object" | grep ELF \
- | cut -f 1 -d : | xargs strip --strip-unneeded 2> /dev/null || true
-
-# Documentation was installed by "make install"
-cat $CWD/$PRGNAM.SlackBuild > $PKG/usr/doc/$PRGNAM-$VERSION/$PRGNAM.SlackBuild
-
-mkdir -p $PKG/install
-cat $CWD/slack-desc > $PKG/install/slack-desc
-cat $CWD/doinst.sh > $PKG/install/doinst.sh
-
-cd $PKG
-/sbin/makepkg -l y -c n $OUTPUT/$PRGNAM-$VERSION-$ARCH-$BUILD$TAG.${PKGTYPE:-tgz}
diff --git a/games/gens-gs/gens-gs.info b/games/gens-gs/gens-gs.info
deleted file mode 100644
index c71cc469a2..0000000000
--- a/games/gens-gs/gens-gs.info
+++ /dev/null
@@ -1,10 +0,0 @@
-PRGNAM="gens-gs"
-VERSION="r7"
-HOMEPAGE="https://segaretro.org/Gens/GS"
-DOWNLOAD="http://ponce.cc/slackware/sources/repo/Gens-gs-r7.tar.gz"
-MD5SUM="bcb17b49774aa318a224c741028aabc3"
-DOWNLOAD_x86_64="UNSUPPORTED"
-MD5SUM_x86_64=""
-REQUIRES=""
-MAINTAINER="Steven Pledger"
-EMAIL="spledger91@yahoo.com"
diff --git a/games/gens-gs/gens-gtk.patch b/games/gens-gs/gens-gtk.patch
deleted file mode 100644
index 0bc6fd0ee2..0000000000
--- a/games/gens-gs/gens-gtk.patch
+++ /dev/null
@@ -1,187 +0,0 @@
-diff -ru gens/src/gens/ui/gtk/about/about_window.cpp gens-build/src/gens/ui/gtk/about/about_window.cpp
---- gens/src/gens/ui/gtk/about/about_window.cpp 2010-10-11 16:32:29.000000000 +0000
-+++ gens-build/src/gens/ui/gtk/about/about_window.cpp 2010-10-11 15:46:25.000000000 +0000
-@@ -84,7 +84,7 @@
- gtk_window_set_position(GTK_WINDOW(about_window), GTK_WIN_POS_CENTER);
- gtk_window_set_resizable(GTK_WINDOW(about_window), FALSE);
- gtk_window_set_type_hint(GTK_WINDOW(about_window), GDK_WINDOW_TYPE_HINT_DIALOG);
-- gtk_dialog_set_has_separator(GTK_DIALOG(about_window), FALSE);
-+ g_object_set(GTK_DIALOG(about_window), "has-separator", FALSE, NULL);
-
- // Callbacks for if the window is closed.
- g_signal_connect((gpointer)about_window, "delete_event",
-diff -ru gens/src/gens/ui/gtk/bios_misc_files/bmf_window.cpp gens-build/src/gens/ui/gtk/bios_misc_files/bmf_window.cpp
---- gens/src/gens/ui/gtk/bios_misc_files/bmf_window.cpp 2010-10-11 16:32:29.000000000 +0000
-+++ gens-build/src/gens/ui/gtk/bios_misc_files/bmf_window.cpp 2010-10-11 15:33:03.000000000 +0000
-@@ -84,7 +84,7 @@
- gtk_window_set_position(GTK_WINDOW(bmf_window), GTK_WIN_POS_CENTER);
- gtk_window_set_resizable(GTK_WINDOW(bmf_window), FALSE);
- gtk_window_set_type_hint(GTK_WINDOW(bmf_window), GDK_WINDOW_TYPE_HINT_DIALOG);
-- gtk_dialog_set_has_separator(GTK_DIALOG(bmf_window), FALSE);
-+ g_object_set(GTK_DIALOG(bmf_window), "has-separator", FALSE, NULL);
-
- // Callbacks for if the window is closed.
- g_signal_connect((gpointer)bmf_window, "delete_event",
-diff -ru gens/src/gens/ui/gtk/directory_config/dir_window.cpp gens-build/src/gens/ui/gtk/directory_config/dir_window.cpp
---- gens/src/gens/ui/gtk/directory_config/dir_window.cpp 2010-10-11 16:32:29.000000000 +0000
-+++ gens-build/src/gens/ui/gtk/directory_config/dir_window.cpp 2010-10-11 15:34:21.000000000 +0000
-@@ -109,7 +109,7 @@
- gtk_window_set_position(GTK_WINDOW(dir_window), GTK_WIN_POS_CENTER);
- gtk_window_set_resizable(GTK_WINDOW(dir_window), FALSE);
- gtk_window_set_type_hint(GTK_WINDOW(dir_window), GDK_WINDOW_TYPE_HINT_DIALOG);
-- gtk_dialog_set_has_separator(GTK_DIALOG(dir_window), FALSE);
-+ g_object_set(GTK_DIALOG(dir_window), "has-separator", FALSE, NULL);
-
- // Callbacks for if the window is closed.
- g_signal_connect((gpointer)(dir_window), "delete_event",
-diff -ru gens/src/gens/ui/gtk/general_options/genopt_window.cpp gens-build/src/gens/ui/gtk/general_options/genopt_window.cpp
---- gens/src/gens/ui/gtk/general_options/genopt_window.cpp 2010-10-11 16:32:29.000000000 +0000
-+++ gens-build/src/gens/ui/gtk/general_options/genopt_window.cpp 2010-10-11 15:36:00.000000000 +0000
-@@ -140,7 +140,7 @@
- gtk_window_set_position(GTK_WINDOW(genopt_window), GTK_WIN_POS_CENTER);
- gtk_window_set_resizable(GTK_WINDOW(genopt_window), false);
- gtk_window_set_type_hint(GTK_WINDOW(genopt_window), GDK_WINDOW_TYPE_HINT_DIALOG);
-- gtk_dialog_set_has_separator(GTK_DIALOG(genopt_window), false);
-+ g_object_set(GTK_DIALOG(genopt_window), "has-separator", false, NULL);
-
- // Callbacks for if the window is closed.
- g_signal_connect((gpointer)genopt_window, "delete_event",
-@@ -458,11 +458,11 @@
- gtk_box_pack_start(GTK_BOX(vboxIntroEffect), lblIntroEffect, false, false, 0);
-
- // Dropdown for intro effect.
-- cboIntroEffect = gtk_combo_box_new_text();
-- gtk_combo_box_append_text(GTK_COMBO_BOX(cboIntroEffect), "None");
-- gtk_combo_box_append_text(GTK_COMBO_BOX(cboIntroEffect), "Gens Logo Effect");
-- gtk_combo_box_append_text(GTK_COMBO_BOX(cboIntroEffect), "\"Crazy\" Effect");
-- //gtk_combo_box_append_text(GTK_COMBO_BOX(cboIntroEffect), "Genesis TMSS"); // TODO: Broken.
-+ cboIntroEffect = gtk_combo_box_text_new();
-+ gtk_combo_box_text_append_text(GTK_COMBO_BOX_TEXT(cboIntroEffect), "None");
-+ gtk_combo_box_text_append_text(GTK_COMBO_BOX_TEXT(cboIntroEffect), "Gens Logo Effect");
-+ gtk_combo_box_text_append_text(GTK_COMBO_BOX_TEXT(cboIntroEffect), "\"Crazy\" Effect");
-+ //gtk_combo_box_text_append_text(GTK_COMBO_BOX_TEXT(cboIntroEffect), "Genesis TMSS"); // TODO: Broken.
- gtk_widget_show(cboIntroEffect);
- gtk_box_pack_start(GTK_BOX(vboxIntroEffect), cboIntroEffect, false, false, 0);
- g_signal_connect((gpointer)(cboIntroEffect), "changed",
-diff -ru gens/src/gens/ui/gtk/gens/gens_window_callbacks.cpp gens-build/src/gens/ui/gtk/gens/gens_window_callbacks.cpp
---- gens/src/gens/ui/gtk/gens/gens_window_callbacks.cpp 2010-10-11 16:32:29.000000000 +0000
-+++ gens-build/src/gens/ui/gtk/gens/gens_window_callbacks.cpp 2010-10-11 15:21:28.000000000 +0000
-@@ -154,9 +154,9 @@
- GSFT_UNUSED_PARAMETER(y);
- GSFT_UNUSED_PARAMETER(user_data);
-
-- if (context->targets)
-+ if (gdk_drag_context_list_targets(context))
- {
-- GdkAtom target_type = GDK_POINTER_TO_ATOM(g_list_nth_data(context->targets, 0));
-+ GdkAtom target_type = GDK_POINTER_TO_ATOM(g_list_nth_data(gdk_drag_context_list_targets(context), 0));
- gtk_drag_get_data(widget, context, target_type, time);
- return true;
- }
-diff -ru gens/src/gens/ui/gtk/opengl_resolution/glres_window.cpp gens-build/src/gens/ui/gtk/opengl_resolution/glres_window.cpp
---- gens/src/gens/ui/gtk/opengl_resolution/glres_window.cpp 2010-10-11 16:32:29.000000000 +0000
-+++ gens-build/src/gens/ui/gtk/opengl_resolution/glres_window.cpp 2010-10-11 15:46:21.000000000 +0000
-@@ -75,7 +75,7 @@
- gtk_window_set_position(GTK_WINDOW(glres_window), GTK_WIN_POS_CENTER);
- gtk_window_set_resizable(GTK_WINDOW(glres_window), FALSE);
- gtk_window_set_type_hint(GTK_WINDOW(glres_window), GDK_WINDOW_TYPE_HINT_DIALOG);
-- gtk_dialog_set_has_separator(GTK_DIALOG(glres_window), FALSE);
-+ g_object_set(GTK_DIALOG(glres_window), "has-separator", FALSE, NULL);
-
- // Callbacks for if the window is closed.
- g_signal_connect((gpointer)(glres_window), "delete_event",
-diff -ru gens/src/gens/ui/gtk/plugin_manager/pmgr_window.cpp gens-build/src/gens/ui/gtk/plugin_manager/pmgr_window.cpp
---- gens/src/gens/ui/gtk/plugin_manager/pmgr_window.cpp 2010-10-11 16:32:29.000000000 +0000
-+++ gens-build/src/gens/ui/gtk/plugin_manager/pmgr_window.cpp 2010-10-11 15:46:29.000000000 +0000
-@@ -80,8 +80,7 @@
- // Callbacks.
- static gboolean pmgr_window_callback_close(GtkWidget *widget, GdkEvent *event, gpointer user_data);
- static void pmgr_window_callback_response(GtkDialog *dialog, gint response_id, gpointer user_data);
--static void pmgr_window_callback_tabPluginList_switch_page(GtkNotebook *notebook, GtkNotebookPage *page,
-- guint page_num, gpointer user_data);
-+static void pmgr_window_callback_tabPluginList_switch_page(GtkNotebook *notebook, guint page_num, gpointer user_data);
- static void pmgr_window_callback_lstPluginList_cursor_changed(GtkTreeView *tree_view, gpointer user_data);
- static void pmgr_window_callback_fraPluginDesc_size_allocate(GtkWidget *widget, GtkAllocation *allocation, gpointer user_data);
-
-@@ -119,7 +118,7 @@
- gtk_window_set_position(GTK_WINDOW(pmgr_window), GTK_WIN_POS_CENTER);
- gtk_window_set_resizable(GTK_WINDOW(pmgr_window), FALSE);
- gtk_window_set_type_hint(GTK_WINDOW(pmgr_window), GDK_WINDOW_TYPE_HINT_DIALOG);
-- gtk_dialog_set_has_separator(GTK_DIALOG(pmgr_window), FALSE);
-+ g_object_set(GTK_DIALOG(pmgr_window), "has-separator", FALSE, NULL);
-
- // Callbacks for if the window is closed.
- g_signal_connect((gpointer)pmgr_window, "delete_event",
-@@ -559,11 +558,9 @@
- * @param page_num New notebook page index.
- * @param user_data User data.
- */
--static void pmgr_window_callback_tabPluginList_switch_page(GtkNotebook *notebook, GtkNotebookPage *page,
-- guint page_num, gpointer user_data)
-+static void pmgr_window_callback_tabPluginList_switch_page(GtkNotebook *notebook, guint page_num, gpointer user_data)
- {
- GSFT_UNUSED_PARAMETER(notebook);
-- GSFT_UNUSED_PARAMETER(page);
- GSFT_UNUSED_PARAMETER(user_data);
-
- // Activate the "cursor-changed" callback for the page.
-diff -ru gens/src/gens/ui/gtk/select_cdrom/selcd_window.cpp gens-build/src/gens/ui/gtk/select_cdrom/selcd_window.cpp
---- gens/src/gens/ui/gtk/select_cdrom/selcd_window.cpp 2010-10-11 16:32:29.000000000 +0000
-+++ gens-build/src/gens/ui/gtk/select_cdrom/selcd_window.cpp 2010-10-11 15:46:16.000000000 +0000
-@@ -94,7 +94,7 @@
- gtk_window_set_position(GTK_WINDOW(selcd_window), GTK_WIN_POS_CENTER);
- gtk_window_set_resizable(GTK_WINDOW(selcd_window), FALSE);
- gtk_window_set_type_hint(GTK_WINDOW(selcd_window), GDK_WINDOW_TYPE_HINT_DIALOG);
-- gtk_dialog_set_has_separator(GTK_DIALOG(selcd_window), FALSE);
-+ g_object_set(GTK_DIALOG(selcd_window), "has-separator", FALSE, NULL);
-
- // Callbacks for if the window is closed.
- g_signal_connect((gpointer)(selcd_window), "delete_event",
-@@ -128,7 +128,7 @@
- gtk_box_pack_start(GTK_BOX(hboxDeviceName), lblDeviceName, false, false, 0);
-
- // Create the dropdown for the CD-ROM device name.
-- cboDeviceName = gtk_combo_box_entry_new_text();
-+ cboDeviceName = gtk_combo_box_text_new_with_entry();
- gtk_entry_set_max_length(GTK_ENTRY(gtk_bin_get_child(GTK_BIN(cboDeviceName))), 63);
- gtk_label_set_mnemonic_widget(GTK_LABEL(lblDeviceName), cboDeviceName);
- gtk_widget_show(cboDeviceName);
-@@ -156,7 +156,7 @@
- gtk_box_pack_start(GTK_BOX(hboxDriveSpeed), vboxDriveSpeedDropdown, true, true, 0);
-
- // Create the dropdown for the CD-ROM drive speed selection.
-- cboDriveSpeed = gtk_combo_box_new_text();
-+ cboDriveSpeed = gtk_combo_box_text_new();
- char tmpSpeed[16];
- for (unsigned int i = 0; i < ((sizeof(CD_DriveSpeed) / sizeof(CD_DriveSpeed[0])) - 1); i++)
- {
-@@ -167,7 +167,7 @@
- else
- szprintf(tmpSpeed, sizeof(tmpSpeed), "%dx", CD_DriveSpeed[i]);
-
-- gtk_combo_box_append_text(GTK_COMBO_BOX(cboDriveSpeed), tmpSpeed);
-+ gtk_combo_box_text_append_text(GTK_COMBO_BOX_TEXT(cboDriveSpeed), tmpSpeed);
- }
- gtk_widget_show(cboDriveSpeed);
- gtk_box_pack_start(GTK_BOX(vboxDriveSpeedDropdown), cboDriveSpeed, true, false, 0);
-@@ -252,7 +252,7 @@
- continue;
-
- // Add the device file.
-- gtk_combo_box_append_text(GTK_COMBO_BOX(cboDeviceName), tmpDeviceName);
-+ gtk_combo_box_text_append_text(GTK_COMBO_BOX_TEXT(cboDeviceName), tmpDeviceName);
- }
- }
-
-diff -ru gens/src/mdp/misc/game_genie/gg_window_gtk2.cpp gens-build/src/mdp/misc/game_genie/gg_window_gtk2.cpp
---- gens/src/mdp/misc/game_genie/gg_window_gtk2.cpp 2010-10-11 16:32:29.000000000 +0000
-+++ gens-build/src/mdp/misc/game_genie/gg_window_gtk2.cpp 2010-10-11 15:52:05.000000000 +0000
-@@ -111,7 +111,7 @@
- gtk_window_set_position(GTK_WINDOW(gg_window), GTK_WIN_POS_CENTER);
- gtk_window_set_resizable(GTK_WINDOW(gg_window), TRUE);
- gtk_window_set_type_hint(GTK_WINDOW(gg_window), GDK_WINDOW_TYPE_HINT_DIALOG);
-- gtk_dialog_set_has_separator(GTK_DIALOG(gg_window), FALSE);
-+ g_object_set(GTK_DIALOG(gg_window), "has-separator", FALSE, NULL);
-
- // Add the window icon.
- GList *icon_list = NULL;
diff --git a/games/gens-gs/slack-desc b/games/gens-gs/slack-desc
deleted file mode 100644
index d1aa3e53f0..0000000000
--- a/games/gens-gs/slack-desc
+++ /dev/null
@@ -1,19 +0,0 @@
-# HOW TO EDIT THIS FILE:
-# The "handy ruler" below makes it easier to edit a package description.
-# Line up the first '|' above the ':' following the base package name, and
-# the '|' on the right side marks the last column you can put a character in.
-# You must make exactly 11 lines for the formatting to be correct. It's also
-# customary to leave one space after the ':' except on otherwise blank lines.
-
- |-----handy-ruler------------------------------------------------------|
-gens-gs: gens-gs (sega genesis/cd/32x emulator)
-gens-gs:
-gens-gs: Gens/GS is a fork of Gens maintained by GerbilSoft.
-gens-gs:
-gens-gs: The main goal of the project is to clean up the source code and
-gens-gs: combine features from various forks of Gens as well as improve
-gens-gs: portability to other platforms.
-gens-gs:
-gens-gs: Homepage: https://segaretro.org/Gens/GS
-gens-gs:
-gens-gs:
diff --git a/games/ggmud/ggmud-wrapper.sh b/games/ggmud/ggmud-wrapper.sh
new file mode 100644
index 0000000000..ab6a538d21
--- /dev/null
+++ b/games/ggmud/ggmud-wrapper.sh
@@ -0,0 +1,8 @@
+#!/bin/sh
+
+# wrapper script for ggmud, part of SlackBuilds.org ggmud build.
+# written by B. Watson, licensed under the WTFPL.
+# this script is needed because ggmud segfaults if it's started
+# from anywhere but its install directory.
+
+cd @OPT@/ggmud && exec ./ggmud "$@"
diff --git a/games/ggmud/ggmud.SlackBuild b/games/ggmud/ggmud.SlackBuild
index 9c37873ac6..2f746f1b22 100644
--- a/games/ggmud/ggmud.SlackBuild
+++ b/games/ggmud/ggmud.SlackBuild
@@ -1,4 +1,4 @@
-#!/bin/sh
+#!/bin/bash
# Slackware build script for ggmud
# Copyright 2015 Eric Underhill <uhillem@gmail.com>
@@ -22,10 +22,25 @@
# OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF THIS SOFTWARE, EVEN IF
# ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
+# 20220220 bkw: Modified by SlackBuilds.org:
+# - fix build on 15.0.
+# - updated for v0.9.4.
+# - add wrapper script.
+# - don't install useless xpm files in /usr/share/pixmaps.
+# - fix .desktop file.
+# In case you're wondering why so many of the icons inside the app
+# show up as the red X (meaning 'missing icon'), it's nothing to do
+# with the removed .xpm files. I don't actually care what causes it
+# right this minute. When submissions are open again, the maintainer
+# can figure it out. Meanwhile, the application at least builds and runs.
+
+cd $(dirname $0) ; CWD=$(pwd)
+
PRGNAM=ggmud
-VERSION=${VERSION:-0.9.3}
+VERSION=${VERSION:-0.9.4}
BUILD=${BUILD:-1}
TAG=${TAG:-_SBo}
+PKGTYPE=${PKGTYPE:-tgz}
if [ -z "$ARCH" ]; then
case "$( uname -m )" in
@@ -35,7 +50,11 @@ if [ -z "$ARCH" ]; then
esac
fi
-CWD=$(pwd)
+if [ ! -z "${PRINT_PACKAGE_NAME}" ]; then
+ echo "$PRGNAM-$VERSION-$ARCH-$BUILD$TAG.$PKGTYPE"
+ exit 0
+fi
+
TMP=${TMP:-/tmp/SBo}
PKG=$TMP/package-$PRGNAM
OUTPUT=${OUTPUT:-/tmp}
@@ -64,19 +83,21 @@ rm -rf $PKG
mkdir -p $TMP $PKG $OUTPUT
cd $TMP
rm -rf $PRGNAM-$VERSION
-tar -xzvf $CWD/$PRGNAM-$VERSION-src.tgz
+tar -xzvf $CWD/$PRGNAM-$VERSION-src.tgz || tar xvf $CWD/GGMud-src.tar.gz
cd $PRGNAM-$VERSION
chown -R root:root .
find -L . \
\( -perm 777 -o -perm 775 -o -perm 750 -o -perm 711 -o -perm 555 \
- -o -perm 511 \) -exec chmod 755 {} \; -o \
+ -o -perm 511 \) -exec chmod 755 {} \+ -o \
\( -perm 666 -o -perm 664 -o -perm 640 -o -perm 600 -o -perm 444 \
- -o -perm 440 -o -perm 400 \) -exec chmod 644 {} \;
+ -o -perm 440 -o -perm 400 \) -exec chmod 644 {} \+
# Apply patch so everything will link correctly.
#cp $CWD/ggmud-link.diff $TMP/$PRGNAM-$VERSION
patch -p0 < $CWD/ggmud-link.diff
+SLKCFLAGS+=" -fcommon"
+
mkdir build && cd build
cmake -DCMAKE_INSTALL_PREFIX=/usr \
-DCMAKE_CXX_FLAGS:STRING="$SLKCFLAGS" \
@@ -91,18 +112,14 @@ mkdir build && cd build
# and to keep from cluttering up /usr/bin with non binaries.
mkdir -p $PKG/$OPT/$PRGNAM
cp $TMP/$PRGNAM-$VERSION/build/$PRGNAM $PKG/$OPT/$PRGNAM
+ strip $PKG/$OPT/$PRGNAM/$PRGNAM
cp $TMP/$PRGNAM-$VERSION/gg_help.txt $PKG/$OPT/$PRGNAM
cp $TMP/$PRGNAM-$VERSION/leu/* $PKG/$OPT/$PRGNAM
cd -
-find $PKG -print0 | xargs -0 file | grep -e "executable" -e "shared object" | grep ELF \
- | cut -f 1 -d : | xargs strip --strip-unneeded 2> /dev/null || true
-
-(
- mkdir -p $PKG/usr/bin
- cd $PKG/usr/bin
- ln -s /opt/ggmud/ggmud .
-)
+mkdir -p $PKG/usr/games
+sed "s,@OPT@,$OPT,g" < $CWD/$PRGNAM-wrapper.sh > $PKG/usr/games/$PRGNAM
+chmod 0755 $PKG/usr/games/$PRGNAM
mkdir -p $PKG/usr/share/{applications,pixmaps}
cp $CWD/$PRGNAM.png $PKG/usr/share/pixmaps/
@@ -117,4 +134,4 @@ cat $CWD/slack-desc > $PKG/install/slack-desc
cat $CWD/doinst.sh > $PKG/install/doinst.sh
cd $PKG
-/sbin/makepkg -l y -c n $OUTPUT/$PRGNAM-$VERSION-$ARCH-$BUILD$TAG.${PKGTYPE:-tgz}
+/sbin/makepkg -l y -c n $OUTPUT/$PRGNAM-$VERSION-$ARCH-$BUILD$TAG.$PKGTYPE
diff --git a/games/ggmud/ggmud.desktop b/games/ggmud/ggmud.desktop
index 37a667610e..b31bccf7ec 100644
--- a/games/ggmud/ggmud.desktop
+++ b/games/ggmud/ggmud.desktop
@@ -1,10 +1,10 @@
[Desktop Entry]
Comment=a MUD/MOO/MUSH terminal client
Comment[fr_FR]=un terminal client de MUD/MOO/MUSH
-Exec=ggmud
+Exec=/usr/games/ggmud
GenericName=MUD terminal client
GenericName[fr_FR]=terminal client de MUD
-Icon=ggmud
+Icon=/usr/share/pixmaps/ggmud.png
Name=ggmud
StartupNotify=true
Terminal=false
diff --git a/games/ggmud/ggmud.info b/games/ggmud/ggmud.info
index 908d40e5a7..033f3943a3 100644
--- a/games/ggmud/ggmud.info
+++ b/games/ggmud/ggmud.info
@@ -1,8 +1,8 @@
PRGNAM="ggmud"
-VERSION="0.9.3"
+VERSION="0.9.4"
HOMEPAGE="http://www.ggsoft.org/ggmud/index.html"
-DOWNLOAD="http://downloads.sourceforge.net/ggmud/ggmud-0.9.3-src.tgz"
-MD5SUM="b07b984f2286ff76def2bdd6016eabb5"
+DOWNLOAD="https://downloads.sourceforge.net/project/ggmud/ggmud/0.9.4/GGMud-src.tar.gz"
+MD5SUM="653a1cb6177b1d0419ee50597540b9e0"
DOWNLOAD_x86_64=""
MD5SUM_x86_64=""
REQUIRES=""
diff --git a/games/gl-117/gl-117.SlackBuild b/games/gl-117/gl-117.SlackBuild
index 2c60017f77..dbc6a540e9 100644
--- a/games/gl-117/gl-117.SlackBuild
+++ b/games/gl-117/gl-117.SlackBuild
@@ -1,29 +1,39 @@
-#!/bin/sh
+#!/bin/bash
# Slackware build script for gl-117
# Written by Dario Nicodemi dario.sbo@gmail.com
+cd $(dirname $0) ; CWD=$(pwd)
+
PRGNAM=gl-117
VERSION=${VERSION:-1.3.2}
BUILD=${BUILD:-1}
TAG=${TAG:-_SBo}
+PKGTYPE=${PKGTYPE:-tgz}
if [ -z "$ARCH" ]; then
case "$( uname -m )" in
- i?86) ARCH=i486 ;;
+ i?86) ARCH=i586 ;;
arm*) ARCH=arm ;;
*) ARCH=$( uname -m ) ;;
esac
fi
-CWD=$(pwd)
+# If the variable PRINT_PACKAGE_NAME is set, then this script will report what
+# the name of the created package would be, and then exit. This information
+# could be useful to other scripts.
+if [ ! -z "${PRINT_PACKAGE_NAME}" ]; then
+ echo "$PRGNAM-$VERSION-$ARCH-$BUILD$TAG.$PKGTYPE"
+ exit 0
+fi
+
TMP=${TMP:-/tmp/SBo}
PKG=$TMP/package-$PRGNAM
OUTPUT=${OUTPUT:-/tmp}
-if [ "$ARCH" = "i486" ]; then
- SLKCFLAGS="-O2 -march=i486 -mtune=i686"
+if [ "$ARCH" = "i586" ]; then
+ SLKCFLAGS="-O2 -march=i586 -mtune=i686"
LIBDIRSUFFIX=""
elif [ "$ARCH" = "i686" ]; then
SLKCFLAGS="-O2 -march=i686 -mtune=i686"
@@ -83,4 +93,4 @@ cat $CWD/slack-desc > $PKG/install/slack-desc
cat $CWD/doinst.sh > $PKG/install/doinst.sh
cd $PKG
-/sbin/makepkg -l y -c n $OUTPUT/$PRGNAM-$VERSION-$ARCH-$BUILD$TAG.${PKGTYPE:-tgz}
+/sbin/makepkg -l y -c n $OUTPUT/$PRGNAM-$VERSION-$ARCH-$BUILD$TAG.$PKGTYPE
diff --git a/games/glPortal/README b/games/glPortal/README
deleted file mode 100644
index d2bcffd86b..0000000000
--- a/games/glPortal/README
+++ /dev/null
@@ -1,10 +0,0 @@
-glPortal (3d physics based portal puzzle game)
-
-GlPortal is not a Portal clone; it features its own story centered
-around an ambitious lab assistant named Ada, who has to solve
-dangerous tasks for science on a daily basis. Her sidekick, a know-it-
-all Robot with a more than impressive laser canon, and an overexcited
-professor support her in her mission. Most of the time she has to
-dodge lasers and bullets while preventing the destruction of all life
-on earth. She is aided in her quest by the newest gizmo created by the
-engineers downstairs.
diff --git a/games/glPortal/bullet286.patch b/games/glPortal/bullet286.patch
deleted file mode 100644
index 69e204a80b..0000000000
--- a/games/glPortal/bullet286.patch
+++ /dev/null
@@ -1,38 +0,0 @@
-commit 08df5951c9bbcf16234289eaef99c51e3f8bed13
-Author: Henry Hirsch <henry@w3-net.de>
-Date: Tue Feb 28 21:08:04 2017 +0100
-
- Port uncollider to bullet 2.86
-
-diff --git a/source/physics/Uncollider.cpp b/source/physics/Uncollider.cpp
-index 99ffc79..8f60885 100644
---- a/source/physics/Uncollider.cpp
-+++ b/source/physics/Uncollider.cpp
-@@ -72,19 +72,24 @@ void Uncollider::nearCallback(btBroadphasePair &collisionPair,
-
- btCollisionObject *colObj0 = (btCollisionObject*)collisionPair.m_pProxy0->m_clientObject;
- btCollisionObject *colObj1 = (btCollisionObject*)collisionPair.m_pProxy1->m_clientObject;
--
-+
- if (dispatcher.needsCollision(colObj0, colObj1)) {
- btCollisionObjectWrapper obj0Wrap(0, colObj0->getCollisionShape(),
- colObj0, colObj0->getWorldTransform(), -1, -1);
- btCollisionObjectWrapper obj1Wrap(0, colObj1->getCollisionShape(),
- colObj1, colObj1->getWorldTransform(), -1, -1);
-
-+ btManifoldResult contactPointResult(&obj0Wrap, &obj1Wrap);
-+
- if (not collisionPair.m_algorithm) {
-- collisionPair.m_algorithm = dispatcher.findAlgorithm(&obj0Wrap, &obj1Wrap);
-+
-+ collisionPair.m_algorithm =
-+ dispatcher.findAlgorithm(&obj0Wrap, &obj1Wrap,
-+ contactPointResult.getPersistentManifold(),
-+ ebtDispatcherQueryType::BT_CONTACT_POINT_ALGORITHMS);
- }
-
- if (collisionPair.m_algorithm) {
-- btManifoldResult contactPointResult(&obj0Wrap, &obj1Wrap);
- if (dispatchInfo.m_dispatchFunc == btDispatcherInfo::DISPATCH_DISCRETE) {
- collisionPair.m_algorithm->processCollision(&obj0Wrap, &obj1Wrap, dispatchInfo,
- &contactPointResult);
diff --git a/games/glPortal/glPortal.SlackBuild b/games/glPortal/glPortal.SlackBuild
deleted file mode 100644
index d713d260b7..0000000000
--- a/games/glPortal/glPortal.SlackBuild
+++ /dev/null
@@ -1,120 +0,0 @@
-#!/bin/sh
-
-# Slackware build script for glPortal
-
-# Copyright 2017 Jeremy Hansen <jebrhansen+SBo -at- gmail.com>
-# All rights reserved.
-#
-# Redistribution and use of this script, with or without modification, is
-# permitted provided that the following conditions are met:
-#
-# 1. Redistributions of this script must retain the above copyright
-# notice, this list of conditions and the following disclaimer.
-#
-# THIS SOFTWARE IS PROVIDED BY THE AUTHOR "AS IS" AND ANY EXPRESS OR IMPLIED
-# WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE IMPLIED WARRANTIES OF
-# MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE ARE DISCLAIMED. IN NO
-# EVENT SHALL THE AUTHOR BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL,
-# SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT LIMITED TO,
-# PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, DATA, OR PROFITS;
-# OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY,
-# WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR
-# OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF THIS SOFTWARE, EVEN IF
-# ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
-
-PRGNAM=glPortal
-VERSION=${VERSION:-c3d5e47}
-SRCVER=${SRCVER:-c3d5e47c5151360c09d0d84f66d9c0e3c2051251}
-DATAVER=${DATAVER:-d391875c9110ed2b04b9014b3ab6a587c2aa921d}
-SPECVER=${SPECVER:-2bcaa5de0e6cae58e53008efcc8a9ec5f2f8ba92}
-CPPGUIVER=${CPPGUIVER:-f45a7b94da031914a86e1823d5affc512cc9de66}
-VHACDVER=${VHACDVER:-537b2413299a5a7d22a4aa0f9f26901b0f38daf2}
-BUILD=${BUILD:-1}
-TAG=${TAG:-_SBo}
-
-if [ -z "$ARCH" ]; then
- case "$( uname -m )" in
- i?86) ARCH=i586 ;;
- arm*) ARCH=arm ;;
- *) ARCH=$( uname -m ) ;;
- esac
-fi
-
-CWD=$(pwd)
-TMP=${TMP:-/tmp/SBo}
-PKG=$TMP/package-$PRGNAM
-OUTPUT=${OUTPUT:-/tmp}
-
-if [ "$ARCH" = "i586" ]; then
- SLKCFLAGS="-O2 -march=i586 -mtune=i686"
- LIBDIRSUFFIX=""
-elif [ "$ARCH" = "i686" ]; then
- SLKCFLAGS="-O2 -march=i686 -mtune=i686"
- LIBDIRSUFFIX=""
-elif [ "$ARCH" = "x86_64" ]; then
- SLKCFLAGS="-O2 -fPIC"
- LIBDIRSUFFIX="64"
-else
- SLKCFLAGS="-O2"
- LIBDIRSUFFIX=""
-fi
-
-set -e
-
-rm -rf $PKG
-mkdir -p $TMP $PKG $OUTPUT
-cd $TMP
-rm -rf $PRGNAM-$SRCVER
-tar xvf $CWD/$PRGNAM-$SRCVER.tar.gz
-cd $PRGNAM-$SRCVER
-
-# Extract submodules to correct locations
-rmdir data documentation/specification external/{gwen,vhacd-lib}
-tar xvf $CWD/glportal-data-$DATAVER.tar.gz
-mv glportal-data-$DATAVER/ data
-tar xvf $CWD/specification-$SPECVER.tar.gz
-mv specification-$SPECVER/ documentation/specification
-tar xvf $CWD/cppgui-$CPPGUIVER.tar.gz
-mv cppgui-$CPPGUIVER/ external/gwen
-tar xvf $CWD/vhacd-lib-$VHACDVER.tar.gz
-mv vhacd-lib-$VHACDVER/ external/vhacd-lib
-
-chown -R root:root .
-find -L . \
- \( -perm 777 -o -perm 775 -o -perm 750 -o -perm 711 -o -perm 555 \
- -o -perm 511 \) -exec chmod 755 {} \; -o \
- \( -perm 666 -o -perm 664 -o -perm 640 -o -perm 600 -o -perm 444 \
- -o -perm 440 -o -perm 400 \) -exec chmod 644 {} \;
-
-cd source/engine
-patch -p2 < $CWD/bullet286.patch
-cd ../..
-mkdir -p build
-cd build
- cmake \
- -DCMAKE_C_FLAGS:STRING="$SLKCFLAGS" \
- -DCMAKE_CXX_FLAGS:STRING="$SLKCFLAGS" \
- -DCMAKE_INSTALL_PREFIX=/usr \
- -DCMAKE_BUILD_TYPE=Release \
- -DUnitTestPlusPlus_INCLUDE_DIR=/usr/include/UnitTest++/ ..
- make
- make install DESTDIR=$PKG
-cd ..
-
-# Remove bogus static lib
-rm $PKG/usr/bin/libVHACD_LIB.a
-
-find $PKG -print0 | xargs -0 file | grep -e "executable" -e "shared object" | grep ELF \
- | cut -f 1 -d : | xargs strip --strip-unneeded 2> /dev/null || true
-
-mkdir -p $PKG/usr/doc/$PRGNAM-$VERSION
-cp -a \
- COMPILE.md CONTRIBUTE.md CONTRIBUTORS.md LICENSE.md README.md \
- $PKG/usr/doc/$PRGNAM-$VERSION
-cat $CWD/$PRGNAM.SlackBuild > $PKG/usr/doc/$PRGNAM-$VERSION/$PRGNAM.SlackBuild
-
-mkdir -p $PKG/install
-cat $CWD/slack-desc > $PKG/install/slack-desc
-
-cd $PKG
-/sbin/makepkg -l y -c n $OUTPUT/$PRGNAM-$VERSION-$ARCH-$BUILD$TAG.${PKGTYPE:-tgz}
diff --git a/games/glPortal/glPortal.info b/games/glPortal/glPortal.info
deleted file mode 100644
index 30e77a84a3..0000000000
--- a/games/glPortal/glPortal.info
+++ /dev/null
@@ -1,18 +0,0 @@
-PRGNAM="glPortal"
-VERSION="c3d5e47"
-HOMEPAGE="https://glportal.de/"
-DOWNLOAD="https://github.com/GlPortal/glPortal/archive/c3d5e47/glPortal-c3d5e47c5151360c09d0d84f66d9c0e3c2051251.tar.gz \
- https://github.com/GlPortal/glportal-data/archive/d391875/glportal-data-d391875c9110ed2b04b9014b3ab6a587c2aa921d.tar.gz \
- https://github.com/GlPortal/specification/archive/2bcaa5d/specification-2bcaa5de0e6cae58e53008efcc8a9ec5f2f8ba92.tar.gz \
- https://github.com/GlPortal/cppgui/archive/f45a7b9/cppgui-f45a7b94da031914a86e1823d5affc512cc9de66.tar.gz \
- https://github.com/GlPortal/vhacd-lib/archive/537b241/vhacd-lib-537b2413299a5a7d22a4aa0f9f26901b0f38daf2.tar.gz"
-MD5SUM="35ba5fc7bddfd3ced267566e51fc554b \
- 9502481cf4fe15947531ad8bdcc450de \
- 75e2cd8467f199fb8f6780f8578d0e9d \
- acdeea86872732b2677f4aae1b6ac63e \
- 04a04face0567a8be26678b54fd7e13d"
-DOWNLOAD_x86_64=""
-MD5SUM_x86_64=""
-REQUIRES="assimp SDL2 SDL2_mixer bullet tinyxml2 unittest-cpp"
-MAINTAINER="Jeremy Hansen"
-EMAIL="jebrhansen+SBo@gmail.com"
diff --git a/games/glPortal/slack-desc b/games/glPortal/slack-desc
deleted file mode 100644
index e5dcac1082..0000000000
--- a/games/glPortal/slack-desc
+++ /dev/null
@@ -1,19 +0,0 @@
-# HOW TO EDIT THIS FILE:
-# The "handy ruler" below makes it easier to edit a package description.
-# Line up the first '|' above the ':' following the base package name, and
-# the '|' on the right side marks the last column you can put a character in.
-# You must make exactly 11 lines for the formatting to be correct. It's also
-# customary to leave one space after the ':' except on otherwise blank lines.
-
- |-----handy-ruler------------------------------------------------------|
-glPortal: glPortal (3d physics based portal puzzle game)
-glPortal:
-glPortal: GlPortal is not a Portal clone; it features its own story centered
-glPortal: around an ambitious lab assistant named Ada, who has to solve
-glPortal: dangerous tasks for science on a daily basis. Her sidekick, a know-it-
-glPortal: all Robot with a more than impressive laser canon, and an overexcited
-glPortal: professor support her in her mission. Most of the time she has to
-glPortal: dodge lasers and bullets while preventing the destruction of all life
-glPortal: on earth. She is aided in her quest by the newest gizmo created by the
-glPortal: engineers downstairs.
-glPortal: HOMEPAGE: https://glportal.de/
diff --git a/games/glbsp/README b/games/glbsp/README
index bacd32a642..d132e484ad 100644
--- a/games/glbsp/README
+++ b/games/glbsp/README
@@ -1,5 +1,7 @@
+glbsp (OpenGL node builder for Doom engines)
+
glBSP is a node builder specially designed for OpenGL ports of the
-DOOM game engine. It adheres to the "GL-Nodes Specification", which
+DOOM game engine. It adheres to the "GL-Nodes Specification", which
means it adds some new special lumps to a WAD file that makes it easy
and fast for an OpenGL DOOM engine to compute the polygons needed for
drawing the levels.
@@ -8,13 +10,13 @@ There are many DOOM ports that understand the GL-Nodes which glBSP
creates, including: EDGE, the Doomsday engine (JDOOM), PrBoom, Legacy
2.0, Vavoom, Doom3D and ZDoomGL.
-This script builds both the command-line (glbsp) and GUI (glBSPX)
-binaries of glBSP. If you don't need the GUI and/or don't want to
-install fltk, "export OMIT_GUI=yes" in the build script's environment.
+Optional dependency: fltk. If you need the GUI (glBSPX), install fltk
+before running this script. If you have fltk installed but don't want
+glBSPX, export FLTK=no in the script's environment.
The package also includes a C header and a library (what would be
-known as libglbsp-dev on other Linux distributions). By default, a
-dynamic library is created. This works on x86 and x86_64 systems, but
-is untested on others. If you have trouble with the shared library,
+known as libglbsp-dev on other Linux distributions). By default, a
+dynamic library is created. This works on x86 and x86_64 systems, but
+is untested on others. If you have trouble with the shared library,
"export STATIC=yes" in the build script's environment (and please
contact the maintainer of this SlackBuild!)
diff --git a/games/glbsp/doinst.sh b/games/glbsp/doinst.sh
index 4e8ba7071d..3e5691a052 100644
--- a/games/glbsp/doinst.sh
+++ b/games/glbsp/doinst.sh
@@ -2,3 +2,8 @@ if [ -x /usr/bin/update-desktop-database ]; then
/usr/bin/update-desktop-database -q usr/share/applications >/dev/null 2>&1
fi
+if [ -e usr/share/icons/hicolor/icon-theme.cache ]; then
+ if [ -x /usr/bin/gtk-update-icon-cache ]; then
+ /usr/bin/gtk-update-icon-cache usr/share/icons/hicolor >/dev/null 2>&1
+ fi
+fi
diff --git a/games/glbsp/glbsp.SlackBuild b/games/glbsp/glbsp.SlackBuild
index 495b5663cb..d171dc9277 100644
--- a/games/glbsp/glbsp.SlackBuild
+++ b/games/glbsp/glbsp.SlackBuild
@@ -1,18 +1,26 @@
-#!/bin/sh
+#!/bin/bash
# Slackware build script for glbsp
-# Written by B. Watson (yalhcru@gmail.com)
+# Written by B. Watson (urchlay@slackware.uk)
# Licensed under the WTFPL. See http://www.wtfpl.net/txt/copying/ for details.
+# 20211008 bkw: BUILD=2
+# - include missing *.txt docs.
+# - make fltk an optional dep.
+# - include new-style icons.
+# - add .desktop for nodeview.
# 20170621 bkw: fix build for -current (post-14.2)
# 20151126 bkw: fix build for -current (preparing for 14.2)
+cd $(dirname $0) ; CWD=$(pwd)
+
PRGNAM=glbsp
VERSION=${VERSION:-2.24}
-BUILD=${BUILD:-1}
+BUILD=${BUILD:-2}
TAG=${TAG:-_SBo}
+PKGTYPE=${PKGTYPE:-tgz}
if [ -z "$ARCH" ]; then
case "$( uname -m )" in
@@ -22,7 +30,11 @@ if [ -z "$ARCH" ]; then
esac
fi
-CWD=$(pwd)
+if [ ! -z "${PRINT_PACKAGE_NAME}" ]; then
+ echo "$PRGNAM-$VERSION-$ARCH-$BUILD$TAG.$PKGTYPE"
+ exit 0
+fi
+
TMP=${TMP:-/tmp/SBo}
PKG=$TMP/package-$PRGNAM
OUTPUT=${OUTPUT:-/tmp}
@@ -52,11 +64,8 @@ rm -rf $PRGNAM-$VERSION-source
tar xvf $CWD/${PRGNAM}_src_${SRCVER}.tar.gz
cd $PRGNAM-$VERSION-source
chown -R root:root .
-find -L . \
- \( -perm 777 -o -perm 775 -o -perm 750 -o -perm 711 -o -perm 555 -o -perm 511 \) \
- -exec chmod 755 {} \; -o \
- \( -perm 666 -o -perm 664 -o -perm 600 -o -perm 444 -o -perm 440 -o -perm 400 \) \
- -exec chmod 644 {} \;
+find -L . -perm /111 -a \! -perm 755 -a -exec chmod 755 {} \+ -o \
+ \! -perm /111 -a \! -perm 644 -a -exec chmod 644 {} \+
# Use fltk-config --cflags and --ldflags instead of hardcoded values
patch -p1 < $CWD/fltkconf.diff
@@ -80,7 +89,8 @@ make -f Makefile.unx install \
gzip -9 $PKG/usr/man/man1/$PRGNAM.1
mkdir -p $PKG/usr/doc/$PRGNAM-$VERSION
-cp -a $PRGNAM.txt $PKG/usr/doc/$PRGNAM-$VERSION
+rm INSTALL.txt
+cp -a *.txt $PKG/usr/doc/$PRGNAM-$VERSION
cat $CWD/$PRGNAM.SlackBuild > $PKG/usr/doc/$PRGNAM-$VERSION/$PRGNAM.SlackBuild
mkdir -p $PKG/usr/lib$LIBDIRSUFFIX $PKG/usr/include/$PRGNAM
@@ -95,25 +105,38 @@ fi
# /usr/include/glbsp.h as a symlink), I will do likewise.
( cd $PKG/usr/include ; ln -s $PRGNAM/$PRGNAM.h $PRGNAM.h ) || exit 1
-# Build with OMIT_GUI=yes if you don't need the GUI (otherwise, fltk is
-# a build dep).
-if [ "${OMIT_GUI:-no}" = "no" ]; then
+INCLUDES="does not include"
+# Build with FLTK=no if have fltk but don't need the GUI.
+if [ "${FLTK:-yes}" = "yes" ] && [ -x /usr/bin/fltk-config ]; then
+ INCLUDES="includes"
make -f Makefile.unx glBSPX
cp glBSPX $PKG/usr/bin
mkdir -p $PKG/usr/share/pixmaps $PKG/usr/share/applications
cat $CWD/$PRGNAM.desktop > $PKG/usr/share/applications/$PRGNAM.desktop
+ cat $CWD/nodeview.desktop > $PKG/usr/share/applications/nodeview.desktop
cat gui/icon.xpm > $PKG/usr/share/pixmaps/$PRGNAM.xpm
cd nodeview
sed -i "s/-O -g3/$SLKCFLAGS/" Makefile.unx
- make -f Makefile.unx
+ make -f Makefile.unx bin
cp nodeview $PKG/usr/bin
cat README.txt TODO.txt > $PKG/usr/doc/$PRGNAM-$VERSION/nodeview.txt
cd ..
+
+# 20211008 bkw: icons were extracted from included OSX icons with
+# libicns, like so:
+# icns2png -x gui/glBSPX.app/Contents/Resources/glbspx.icns
+# rm -f *x1.png
+ for i in 16 32 48 128; do
+ size=${i}x${i}
+ dir=$PKG/usr/share/icons/hicolor/$size/apps
+ mkdir -p $dir
+ cat $CWD/icons/glbspx_${size}x32.png > $dir/$PRGNAM.png
+ done
fi
mkdir -p $PKG/install
-cat $CWD/slack-desc > $PKG/install/slack-desc
+sed "s,@INCLUDES@,$INCLUDES," < $CWD/slack-desc > $PKG/install/slack-desc
cat $CWD/doinst.sh > $PKG/install/doinst.sh
cd $PKG
-/sbin/makepkg -l y -c n $OUTPUT/$PRGNAM-$VERSION-$ARCH-$BUILD$TAG.${PKGTYPE:-tgz}
+/sbin/makepkg -l y -c n $OUTPUT/$PRGNAM-$VERSION-$ARCH-$BUILD$TAG.$PKGTYPE
diff --git a/games/glbsp/glbsp.info b/games/glbsp/glbsp.info
index 4a25bbe30b..7bb14af0b7 100644
--- a/games/glbsp/glbsp.info
+++ b/games/glbsp/glbsp.info
@@ -1,10 +1,10 @@
PRGNAM="glbsp"
VERSION="2.24"
-HOMEPAGE="http://glbsp.sourceforge.net/"
-DOWNLOAD="http://downloads.sourceforge.net/project/glbsp/glbsp/2.24/glbsp_src_224.tar.gz"
+HOMEPAGE="https://glbsp.sourceforge.net/"
+DOWNLOAD="https://downloads.sourceforge.net/project/glbsp/glbsp/2.24/glbsp_src_224.tar.gz"
MD5SUM="3f33320cd9cb58075e5e9d76f92940a5"
DOWNLOAD_x86_64=""
MD5SUM_x86_64=""
-REQUIRES="fltk"
+REQUIRES=""
MAINTAINER="B. Watson"
-EMAIL="yalhcru@gmail.com"
+EMAIL="urchlay@slackware.uk"
diff --git a/games/glbsp/icons/glbspx_128x128x32.png b/games/glbsp/icons/glbspx_128x128x32.png
new file mode 100644
index 0000000000..b4bb3c3c76
--- /dev/null
+++ b/games/glbsp/icons/glbspx_128x128x32.png
Binary files differ
diff --git a/games/glbsp/icons/glbspx_16x16x32.png b/games/glbsp/icons/glbspx_16x16x32.png
new file mode 100644
index 0000000000..54494870b6
--- /dev/null
+++ b/games/glbsp/icons/glbspx_16x16x32.png
Binary files differ
diff --git a/games/glbsp/icons/glbspx_32x32x32.png b/games/glbsp/icons/glbspx_32x32x32.png
new file mode 100644
index 0000000000..cbd43028a8
--- /dev/null
+++ b/games/glbsp/icons/glbspx_32x32x32.png
Binary files differ
diff --git a/games/glbsp/icons/glbspx_48x48x32.png b/games/glbsp/icons/glbspx_48x48x32.png
new file mode 100644
index 0000000000..81267528d1
--- /dev/null
+++ b/games/glbsp/icons/glbspx_48x48x32.png
Binary files differ
diff --git a/games/glbsp/nodeview.desktop b/games/glbsp/nodeview.desktop
new file mode 100644
index 0000000000..0561b44e03
--- /dev/null
+++ b/games/glbsp/nodeview.desktop
@@ -0,0 +1,8 @@
+[Desktop Entry]
+Type=Application
+Name=NodeView
+GenericName=Doom Node Viewer
+Icon=glbsp
+Exec=nodeview %f
+Terminal=false
+Categories=Game;ActionGame;
diff --git a/games/glbsp/slack-desc b/games/glbsp/slack-desc
index ed389edffa..27810a6597 100644
--- a/games/glbsp/slack-desc
+++ b/games/glbsp/slack-desc
@@ -14,6 +14,6 @@ glbsp: which means it adds some new special lumps to a WAD file that makes
glbsp: it easy and fast for an OpenGL DOOM engine to compute the polygons
glbsp: needed for drawing the levels.
glbsp:
-glbsp: There are many DOOM ports that understand the GL-Nodes which glBSP
-glbsp: creates, including: EDGE, the Doomsday engine (JDOOM), PrBoom, Legacy
-glbsp: 2.0, Vavoom, Doom3D and ZDoomGL.
+glbsp: This package @INCLUDES@ glBSPX and nodeview (fltk GUIs).
+glbsp:
+glbsp:
diff --git a/games/glestae/glestae.SlackBuild b/games/glestae/glestae.SlackBuild
index 3687ec0899..ae862a0387 100644
--- a/games/glestae/glestae.SlackBuild
+++ b/games/glestae/glestae.SlackBuild
@@ -1,4 +1,4 @@
-#!/bin/sh
+#!/bin/bash
# Slackware build script for glestae
@@ -25,10 +25,13 @@
# 20200906 bkw: modified by SlackBuilds.org: the build was failing if
# wxGTK3 was installed, due to the /usr/bin/wx-config conflict.
+cd $(dirname $0) ; CWD=$(pwd)
+
PRGNAM=glestae
VERSION=${VERSION:-0.3.93}
BUILD=${BUILD:-4}
TAG=${TAG:-_SBo}
+PKGTYPE=${PKGTYPE:-tgz}
if [ -z "$ARCH" ]; then
case "$( uname -m )" in
@@ -38,7 +41,14 @@ if [ -z "$ARCH" ]; then
esac
fi
-CWD=$(pwd)
+# If the variable PRINT_PACKAGE_NAME is set, then this script will report what
+# the name of the created package would be, and then exit. This information
+# could be useful to other scripts.
+if [ ! -z "${PRINT_PACKAGE_NAME}" ]; then
+ echo "$PRGNAM-$VERSION-$ARCH-$BUILD$TAG.$PKGTYPE"
+ exit 0
+fi
+
TMP=${TMP:-/tmp/SBo}
PKG=$TMP/package-$PRGNAM
OUTPUT=${OUTPUT:-/tmp}
@@ -102,4 +112,4 @@ cat $CWD/slack-desc > $PKG/install/slack-desc
cat $CWD/doinst.sh > $PKG/install/doinst.sh
cd $PKG
-/sbin/makepkg -l y -c n $OUTPUT/$PRGNAM-$VERSION-$ARCH-$BUILD$TAG.${PKGTYPE:-tgz}
+/sbin/makepkg -l y -c n $OUTPUT/$PRGNAM-$VERSION-$ARCH-$BUILD$TAG.$PKGTYPE
diff --git a/games/glestae/glestae.info b/games/glestae/glestae.info
index 36416ee30e..7daba31947 100644
--- a/games/glestae/glestae.info
+++ b/games/glestae/glestae.info
@@ -5,6 +5,6 @@ DOWNLOAD="https://downloads.sourceforge.net/glestae/glestae-src-0.3.93.tar.bz2"
MD5SUM="83fec41c3c163dfb8437df93e98b5901"
DOWNLOAD_x86_64=""
MD5SUM_x86_64=""
-REQUIRES="OpenAL lua physfs"
+REQUIRES="lua physfs"
MAINTAINER="Larry Hajali"
EMAIL="larryhaja[at]gmail[dot]com"
diff --git a/games/glob2/glob2.SlackBuild b/games/glob2/glob2.SlackBuild
index 6bb719cd26..c1593d6670 100644
--- a/games/glob2/glob2.SlackBuild
+++ b/games/glob2/glob2.SlackBuild
@@ -1,4 +1,4 @@
-#!/bin/sh
+#!/bin/bash
# Slackware build script for glob2
@@ -22,10 +22,13 @@
# OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF THIS SOFTWARE, EVEN IF
# ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
+cd $(dirname $0) ; CWD=$(pwd)
+
PRGNAM=glob2
VERSION=${VERSION:-0.9.4.4}
BUILD=${BUILD:-2}
TAG=${TAG:-_SBo}
+PKGTYPE=${PKGTYPE:-tgz}
if [ -z "$ARCH" ]; then
case "$( uname -m )" in
@@ -35,7 +38,14 @@ if [ -z "$ARCH" ]; then
esac
fi
-CWD=$(pwd)
+# If the variable PRINT_PACKAGE_NAME is set, then this script will report what
+# the name of the created package would be, and then exit. This information
+# could be useful to other scripts.
+if [ ! -z "${PRINT_PACKAGE_NAME}" ]; then
+ echo "$PRGNAM-$VERSION-$ARCH-$BUILD$TAG.$PKGTYPE"
+ exit 0
+fi
+
TMP=${TMP:-/tmp/SBo}
PKG=$TMP/package-$PRGNAM
OUTPUT=${OUTPUT:-/tmp}
@@ -69,7 +79,15 @@ find -L . \
\( -perm 666 -o -perm 664 -o -perm 640 -o -perm 600 -o -perm 444 \
-o -perm 440 -o -perm 400 \) -exec chmod 644 {} \;
-patch -p1 < $CWD/fixes.patch
+patch -p1 < $CWD/patches/fixes.patch
+
+# From upstream
+patch -p1 < $CWD/patches/c++14.patch
+
+patch -p1 < $CWD/patches/scons-python3.patch
+patch -p1 < $CWD/patches/glob2-scons3.patch
+patch -p1 < $CWD/patches/glob2-bool.patch
+patch -p0 < $CWD/patches/scons_syntax.patch
mkdir -p $PKG/usr/bin \
$PKG/usr/share/games/$PRGNAM
@@ -96,4 +114,4 @@ cat $CWD/slack-desc > $PKG/install/slack-desc
cat $CWD/doinst.sh > $PKG/install/doinst.sh
cd $PKG
-/sbin/makepkg -l y -c n $OUTPUT/$PRGNAM-$VERSION-$ARCH-$BUILD$TAG.${PKGTYPE:-tgz}
+/sbin/makepkg -l y -c n $OUTPUT/$PRGNAM-$VERSION-$ARCH-$BUILD$TAG.$PKGTYPE
diff --git a/games/glob2/glob2.info b/games/glob2/glob2.info
index 2fd397caaa..087f5c41c2 100644
--- a/games/glob2/glob2.info
+++ b/games/glob2/glob2.info
@@ -5,6 +5,6 @@ DOWNLOAD="http://dl.sv.nongnu.org/releases/glob2/0.9.4/glob2-0.9.4.4.tar.gz"
MD5SUM="94c527325f355a29a2807f8f18a6e6a8"
DOWNLOAD_x86_64=""
MD5SUM_x86_64=""
-REQUIRES="speex"
+REQUIRES=""
MAINTAINER="Dimitris Zlatanidis"
EMAIL="d.zlatanidis@gmail.com"
diff --git a/games/glob2/patches/c++14.patch b/games/glob2/patches/c++14.patch
new file mode 100644
index 0000000000..6465f659af
--- /dev/null
+++ b/games/glob2/patches/c++14.patch
@@ -0,0 +1,46 @@
+# HG changeset patch
+# User Jonathan Wakely <jwakely@redhat.com>
+# Date 1485875296 0
+# Node ID c9dc715624318e4fea4abb24e04f0ebdd9cd8d2a
+# Parent c4da01699846179d8bf21e8dae2b973158ec0775
+Fix last argument to ChooseMapScreen constructor
+
+Since C++14 'false' is not a valid null pointer constant, so cannot be passed
+to functions expecting pointer arguments.
+
+diff --git a/src/EditorMainMenu.cpp b/src/EditorMainMenu.cpp
+--- a/src/EditorMainMenu.cpp
++++ b/src/EditorMainMenu.cpp
+@@ -90,7 +90,7 @@
+ }
+ else if (par1==LOADMAP)
+ {
+- ChooseMapScreen chooseMapScreen("maps", "map", false, "games", "game", false);
++ ChooseMapScreen chooseMapScreen("maps", "map", false, "games", "game", NULL);
+ int rc=chooseMapScreen.execute(globalContainer->gfx, 40);
+ if (rc==ChooseMapScreen::OK)
+ {
+diff --git a/src/LANMenuScreen.cpp b/src/LANMenuScreen.cpp
+--- a/src/LANMenuScreen.cpp
++++ b/src/LANMenuScreen.cpp
+@@ -62,7 +62,7 @@
+ }
+ else if(par1 == HOST)
+ {
+- ChooseMapScreen cms("maps", "map", false, "games", "game", false);
++ ChooseMapScreen cms("maps", "map", false, "games", "game", NULL);
+ int rc = cms.execute(globalContainer->gfx, 40);
+ if(rc == ChooseMapScreen::OK)
+ {
+diff --git a/src/YOGClientLobbyScreen.cpp b/src/YOGClientLobbyScreen.cpp
+--- a/src/YOGClientLobbyScreen.cpp
++++ b/src/YOGClientLobbyScreen.cpp
+@@ -326,7 +326,7 @@
+
+ void YOGClientLobbyScreen::hostGame()
+ {
+- ChooseMapScreen cms("maps", "map", false, "games", "game", false);
++ ChooseMapScreen cms("maps", "map", false, "games", "game", NULL);
+ int rc = cms.execute(globalContainer->gfx, 40);
+ if(rc == ChooseMapScreen::OK)
+ {
diff --git a/games/glob2/fixes.patch b/games/glob2/patches/fixes.patch
index 50f4998ac5..50f4998ac5 100644
--- a/games/glob2/fixes.patch
+++ b/games/glob2/patches/fixes.patch
diff --git a/games/glob2/patches/glob2-bool.patch b/games/glob2/patches/glob2-bool.patch
new file mode 100644
index 0000000000..3314c6ec2c
--- /dev/null
+++ b/games/glob2/patches/glob2-bool.patch
@@ -0,0 +1,13 @@
+diff --git a/src/AIEcho.cpp b/src/AIEcho.cpp
+index 77d9f63..0e5f59e 100644
+--- a/src/AIEcho.cpp
++++ b/src/AIEcho.cpp
+@@ -4387,7 +4387,7 @@ bool enemy_building_iterator::operator!=(const enemy_building_iterator& rhs) con
+ {
+ if(is_end && rhs.is_end)
+ return false;
+- return is_end!=rhs.is_end || team!=rhs.team || building_type!=rhs.building_type || level!=rhs.level || construction_site!=rhs.construction_site;
++ return bool {is_end!=rhs.is_end || team!=rhs.team || building_type!=rhs.building_type || level!=rhs.level || construction_site!=rhs.construction_site};
+ }
+
+
diff --git a/games/glob2/patches/glob2-scons3.patch b/games/glob2/patches/glob2-scons3.patch
new file mode 100644
index 0000000000..fc08008393
--- /dev/null
+++ b/games/glob2/patches/glob2-scons3.patch
@@ -0,0 +1,26 @@
+--- glob2-0.9.4.4/SConstruct.orig 2019-01-15 14:58:36.130370433 +0100
++++ glob2-0.9.4.4/SConstruct 2019-01-15 15:03:13.040240416 +0100
+@@ -13,7 +13,7 @@
+
+
+ def establish_options(env):
+- opts = Options('options_cache.py')
++ opts = Variables('options_cache.py')
+ opts.Add("CXXFLAGS", "Manually add to the CXXFLAGS", "-g")
+ opts.Add("LINKFLAGS", "Manually add to the LINKFLAGS", "-g")
+ if isDarwinPlatform:
+@@ -22,10 +22,10 @@
+ opts.Add("INSTALLDIR", "Installation Directory", "/usr/local/share")
+ opts.Add("BINDIR", "Binary Installation Directory", "/usr/local/bin")
+ opts.Add("DATADIR", "Directory where data will be put, set to the same as INSTALLDIR", "/usr/local/share")
+- opts.Add(BoolOption("release", "Build for release", 0))
+- opts.Add(BoolOption("profile", "Build with profiling on", 0))
+- opts.Add(BoolOption("mingw", "Build with mingw enabled if not auto-detected", 0))
+- opts.Add(BoolOption("server", "Build only the YOG server, excluding the game and any GUI/sound components", 0))
++ opts.Add(BoolVariable("release", "Build for release", 0))
++ opts.Add(BoolVariable("profile", "Build with profiling on", 0))
++ opts.Add(BoolVariable("mingw", "Build with mingw enabled if not auto-detected", 0))
++ opts.Add(BoolVariable("server", "Build only the YOG server, excluding the game and any GUI/sound components", 0))
+ opts.Add("font", "Build the game using an alternative font placed in the data/font folder", "sans.ttf")
+ Help(opts.GenerateHelpText(env))
+ opts.Update(env)
diff --git a/games/glob2/patches/scons-python3.patch b/games/glob2/patches/scons-python3.patch
new file mode 100644
index 0000000000..7a2c3aa6be
--- /dev/null
+++ b/games/glob2/patches/scons-python3.patch
@@ -0,0 +1,243 @@
+--- glob2-0.9.4.4/SConstruct.orig 2019-07-26 18:18:48.365048391 +0000
++++ glob2-0.9.4.4/SConstruct 2019-07-26 18:23:10.541667260 +0000
+@@ -75,31 +75,31 @@
+ env.Append(CPPDEFINES=["HAVE_CONFIG_H"])
+ #Simple checks for required libraries
+ if not conf.CheckLib("SDL") and not server_only:
+- print "Could not find libSDL"
++ print ("Could not find libSDL")
+ missing.append("SDL")
+ if not conf.CheckLib("SDL_ttf") and not server_only:
+- print "Could not find libSDL_ttf"
++ print ("Could not find libSDL_ttf")
+ missing.append("SDL_ttf")
+ if not conf.CheckLib("SDL_image") and not server_only:
+- print "Could not find libSDL_image"
++ print ("Could not find libSDL_image")
+ missing.append("SDL_image")
+ if not conf.CheckLib("SDL_net") and not server_only:
+- print "Could not find libSDL_net"
++ print ("Could not find libSDL_net")
+ missing.append("SDL_net")
+ if not conf.CheckLib("speex") or not conf.CheckCXXHeader("speex/speex.h") and not server_only:
+- print "Could not find libspeex or could not find 'speex/speex.h'"
++ print ("Could not find libspeex or could not find 'speex/speex.h'")
+ missing.append("speex")
+ if not conf.CheckLib("vorbisfile") and not server_only:
+- print "Could not find libvorbisfile"
++ print ("Could not find libvorbisfile")
+ missing.append("vorbisfile")
+ if not conf.CheckLib("vorbis") and not server_only:
+- print "Could not find libvorbis"
++ print ("Could not find libvorbis")
+ missing.append("vorbis")
+ if not conf.CheckLib("ogg") and not server_only:
+- print "Could not find libogg"
++ print ("Could not find libogg")
+ missing.append("ogg")
+ if not conf.CheckCXXHeader("zlib.h"):
+- print "Could not find zlib.h"
++ print ("Could not find zlib.h")
+ missing.append("zlib")
+ else:
+ if conf.CheckLib("z"):
+@@ -107,7 +107,7 @@
+ elif conf.CheckLib("zlib1"):
+ env.Append(LIBS="zlib1")
+ else:
+- print "Could not find libz or zlib1.dll"
++ print ("Could not find libz or zlib1.dll")
+ missing.append("zlib")
+
+ boost_thread = ''
+@@ -116,7 +116,7 @@
+ elif conf.CheckLib("boost_thread-mt") and conf.CheckCXXHeader("boost/thread/thread.hpp"):
+ boost_thread="boost_thread-mt"
+ else:
+- print "Could not find libboost_thread or libboost_thread-mt or boost/thread/thread.hpp"
++ print ("Could not find libboost_thread or libboost_thread-mt or boost/thread/thread.hpp")
+ missing.append("libboost_thread")
+ env.Append(LIBS=[boost_thread])
+
+@@ -126,31 +126,31 @@
+ elif conf.CheckLib("boost_date_time-mt") and conf.CheckCXXHeader("boost/date_time/posix_time/posix_time.hpp"):
+ boost_thread="boost_thread-mt"
+ else:
+- print "Could not find libboost_date_time or libboost_date_time-mt or boost/thread/thread.hpp"
++ print ("Could not find libboost_date_time or libboost_date_time-mt or boost/thread/thread.hpp")
+ missing.append("libboost_date_time")
+ env.Append(LIBS=[boost_date_time])
+
+
+ if not conf.CheckCXXHeader("boost/shared_ptr.hpp"):
+- print "Could not find boost/shared_ptr.hpp"
++ print ("Could not find boost/shared_ptr.hpp")
+ missing.append("boost/shared_ptr.hpp")
+ if not conf.CheckCXXHeader("boost/tuple/tuple.hpp"):
+- print "Could not find boost/tuple/tuple.hpp"
++ print ("Could not find boost/tuple/tuple.hpp")
+ missing.append("boost/tuple/tuple.hpp")
+ if not conf.CheckCXXHeader("boost/tuple/tuple_comparison.hpp"):
+- print "Could not find boost/tuple/tuple_comparison.hpp"
++ print ("Could not find boost/tuple/tuple_comparison.hpp")
+ missing.append("boost/tuple/tuple_comparison.hpp")
+ if not conf.CheckCXXHeader("boost/logic/tribool.hpp"):
+- print "Could not find boost/logic/tribool.hpp"
++ print ("Could not find boost/logic/tribool.hpp")
+ missing.append("boost/logic/tribool.hpp")
+ if not conf.CheckCXXHeader("boost/lexical_cast.hpp"):
+- print "Could not find boost/lexical_cast.hpp"
++ print ("Could not find boost/lexical_cast.hpp")
+ missing.append("boost/lexical_cast.hpp")
+
+ #Do checks for OpenGL, which is different on every system
+ gl_libraries = []
+ if isDarwinPlatform and not server_only:
+- print "Using Apple's OpenGL framework"
++ print ("Using Apple's OpenGL framework")
+ env.Append(FRAMEWORKS="OpenGL")
+ elif conf.CheckLib("GL") and conf.CheckCXXHeader("GL/gl.h") and not server_only:
+ gl_libraries.append("GL")
+@@ -159,12 +159,12 @@
+ elif conf.CheckLib("opengl32") and conf.CheckCXXHeader("GL/gl.h") and not server_only:
+ gl_libraries.append("opengl32")
+ elif not server_only:
+- print "Could not find libGL or opengl32, or could not find GL/gl.h or OpenGL/gl.h"
++ print ("Could not find libGL or opengl32, or could not find GL/gl.h or OpenGL/gl.h")
+ missing.append("OpenGL")
+
+ #Do checks for GLU, which is different on every system
+ if isDarwinPlatform and not server_only:
+- print "Using Apple's GLUT framework"
++ print ("Using Apple's GLUT framework")
+ env.Append(FRAMEWORKS="GLUT")
+ elif conf.CheckLib('GLU') and conf.CheckCXXHeader("GL/glu.h") and not server_only:
+ gl_libraries.append("GLU")
+@@ -173,7 +173,7 @@
+ elif conf.CheckLib('glu32') and conf.CheckCXXHeader('GL/glu.h') and not server_only:
+ gl_libraries.append("glu32")
+ elif not server_only:
+- print "Could not find libGLU or glu32, or could not find GL/glu.h or OpenGL/glu.h"
++ print ("Could not find libGLU or glu32, or could not find GL/glu.h or OpenGL/glu.h")
+ missing.append("GLU")
+
+ if gl_libraries or isDarwinPlatform:
+@@ -188,31 +188,31 @@
+ #Do checks for portaudio
+ if conf.CheckLib('portaudio') and conf.CheckCXXHeader('portaudio.h'):
+ if env['mingw'] or isWindowsPlatform:
+- print "--------"
+- print "NOTE: It appears you are compiling under Windows. At this stage, PortAudio crashes Globulation 2 when voice chat is used."
+- print "NOTE: Disabling PortAudio in this build (you will be unable to use Voice Chat ingame)."
+- print "--------"
++ print ("--------")
++ print ("NOTE: It appears you are compiling under Windows. At this stage, PortAudio crashes Globulation 2 when voice chat is used.")
++ print ("NOTE: Disabling PortAudio in this build (you will be unable to use Voice Chat ingame).")
++ print ("--------")
+ else:
+ if GetOption('portaudio'):
+- print "trying to use portaudio"
++ print ("trying to use portaudio")
+ configfile.add("HAVE_PORTAUDIO ", "Defined when Port Audio support is present and compiled")
+ env.Append(LIBS=['portaudio'])
+ else:
+- print " no portaudio"
+- print " no portaudio - although portaudio was found to be installed, you have "
+- print " no portaudio - to explicitly activate it using: "
+- print " no portaudio - $ scons --portaudio=true"
+- print " no portaudio - this may not work properly if the version of portaudio"
+- print " no portaudio - is wrong. portaudio is used to allow communicating over VOIP"
+- print " no portaudio"
+- print " no portaudio - if you know of a solution to detect portaudio version"
+- print " no portaudio - let us know at:"
+- print " no portaudio - https://savannah.nongnu.org/bugs/index.php?24668"
+- print " no portaudio"
++ print (" no portaudio")
++ print (" no portaudio - although portaudio was found to be installed, you have ")
++ print (" no portaudio - to explicitly activate it using: ")
++ print (" no portaudio - $ scons --portaudio=true")
++ print (" no portaudio - this may not work properly if the version of portaudio")
++ print (" no portaudio - is wrong. portaudio is used to allow communicating over VOIP")
++ print (" no portaudio")
++ print (" no portaudio - if you know of a solution to detect portaudio version")
++ print (" no portaudio - let us know at:")
++ print (" no portaudio - https://savannah.nongnu.org/bugs/index.php?24668")
++ print (" no portaudio")
+
+ if missing:
+ for t in missing:
+- print "Missing %s" % t
++ print ("Missing %s" % t)
+ Exit(1)
+
+ conf.Finish()
+@@ -232,7 +232,7 @@
+ env.Clone = env.Copy
+
+ if not env['CC']:
+- print "No compiler found in PATH. Please install gcc or another compiler."
++ print ("No compiler found in PATH. Please install gcc or another compiler.")
+ Exit(1)
+
+ env["VERSION"] = "0.9.4.4"
+--- glob2-0.9.4.4/scons/bundle.py.orig 2019-07-26 18:25:20.693318523 +0000
++++ glob2-0.9.4.4/scons/bundle.py 2019-07-26 18:25:50.130360077 +0000
+@@ -4,10 +4,10 @@
+ from addDependentLibsToBundle import addDependentLibsToBundle
+
+ def run(command) :
+- print "\033[32m:: ", command, "\033[0m"
++ print ("\033[32m:: ", command, "\033[0m")
+ return os.system(command)
+ def norun(command) :
+- print "\033[31mXX ", command, "\033[0m"
++ print ("\033[31mXX ", command, "\033[0m")
+
+
+
+@@ -46,7 +46,7 @@
+ return target, source
+
+ def generate(env) :
+- print "Loading Bundle tool"
++ print ("Loading Bundle tool")
+ Builder = SCons.Builder.Builder
+ Action = SCons.Action.Action
+ bundleBuilder = Builder(
+--- glob2-0.9.4.4/scons/addDependentLibsToBundle.py.orig 2019-07-26 18:27:04.774645968 +0000
++++ glob2-0.9.4.4/scons/addDependentLibsToBundle.py 2019-07-26 18:27:29.854966622 +0000
+@@ -4,10 +4,10 @@
+ import sys
+
+ def run(command) :
+- print "\033[32m:: ", command, "\033[0m"
++ print ("\033[32m:: ", command, "\033[0m")
+ return os.system(command)
+ def norun(command) :
+- print "\033[31mXX ", command, "\033[0m"
++ print ("\033[31mXX ", command, "\033[0m")
+
+
+ def needsChange(binary, blacklist) :
+--- glob2-0.9.4.4/scons/dmg.py.orig 2019-07-26 18:28:29.269060631 +0000
++++ glob2-0.9.4.4/scons/dmg.py 2019-07-26 18:28:45.099263555 +0000
+@@ -15,7 +15,7 @@
+
+ def generate(env) :
+ """Add Builders and construction variables for qt to an Environment."""
+- print "Lodading dmg tool..."
++ print ("Lodading dmg tool...")
+ env.Append( BUILDERS={'Dmg' :
+ env.Builder( action=env.Action(create_dmg, create_dmg_message ))
+ } )
+--- glob2-0.9.4.4/scons/nsis.py.orig 2019-07-26 18:29:44.103353972 +0000
++++ glob2-0.9.4.4/scons/nsis.py 2019-07-26 18:30:04.393614598 +0000
+@@ -10,7 +10,7 @@
+
+ def generate(env) :
+ """Add Builders and construction variables for qt to an Environment."""
+- print "Loading nsis tool..."
++ print ("Loading nsis tool...")
+
+ Builder = SCons.Builder.Builder
+
diff --git a/games/glob2/patches/scons_syntax.patch b/games/glob2/patches/scons_syntax.patch
new file mode 100644
index 0000000000..f8ee2794cb
--- /dev/null
+++ b/games/glob2/patches/scons_syntax.patch
@@ -0,0 +1,11 @@
+--- SConstruct.orig 2022-03-06 10:20:29.332288658 +0100
++++ SConstruct 2022-03-06 10:20:48.994522031 +0100
+@@ -114,7 +114,7 @@
+ if conf.CheckLib("boost_system"):
+ boost_system="boost_system"
+ else:
+- print "Could not find libboost_system"
++ print ("Could not find libboost_system")
+ missing.append("libboost_system")
+ env.Append(LIBS=[boost_system])
+
diff --git a/games/gltron/README b/games/gltron/README
new file mode 100644
index 0000000000..8028d1fac6
--- /dev/null
+++ b/games/gltron/README
@@ -0,0 +1,2 @@
+glTron is a 3D "lightcycle racing" game that aims to recreate the
+iconic arena scene from the classic movie TRON.
diff --git a/games/gltron/doinst.sh b/games/gltron/doinst.sh
new file mode 100644
index 0000000000..94b64446ba
--- /dev/null
+++ b/games/gltron/doinst.sh
@@ -0,0 +1,8 @@
+#!/bin/bash
+
+# I borrowed the .desktop file from Debian's repo, might as well
+# install it for convenience's sake
+
+if [ -x /usr/bin/update-desktop-database ]; then
+ /usr/bin/update-desktop-database -q usr/share/applications > /dev/null 2>&1
+fi
diff --git a/games/gltron/gltron.SlackBuild b/games/gltron/gltron.SlackBuild
new file mode 100644
index 0000000000..748c538906
--- /dev/null
+++ b/games/gltron/gltron.SlackBuild
@@ -0,0 +1,127 @@
+#!/bin/bash
+
+# Slackware build script for <appname>
+
+# Copyright <year> <you> <where you live>
+# All rights reserved.
+#
+# Redistribution and use of this script, with or without modification, is
+# permitted provided that the following conditions are met:
+#
+# 1. Redistributions of this script must retain the above copyright
+# notice, this list of conditions and the following disclaimer.
+#
+# THIS SOFTWARE IS PROVIDED BY THE AUTHOR "AS IS" AND ANY EXPRESS OR IMPLIED
+# WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE IMPLIED WARRANTIES OF
+# MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE ARE DISCLAIMED. IN NO
+# EVENT SHALL THE AUTHOR BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL,
+# SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT LIMITED TO,
+# PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, DATA, OR PROFITS;
+# OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY,
+# WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR
+# OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF THIS SOFTWARE, EVEN IF
+# ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
+
+cd $(dirname $0) ; CWD=$(pwd)
+
+PRGNAM=gltron
+VERSION=${VERSION:-0.70}
+BUILD=${BUILD:-1}
+TAG=${TAG:-_SBo}
+PKGTYPE=${PKGTYPE:-tgz}
+
+if [ -z "$ARCH" ]; then
+ case "$( uname -m )" in
+ i?86) ARCH=i586 ;;
+ arm*) ARCH=arm ;;
+ *) ARCH=$( uname -m ) ;;
+ esac
+fi
+
+if [ ! -z "${PRINT_PACKAGE_NAME}" ]; then
+ echo "$PRGNAM-$VERSION-$ARCH-$BUILD$TAG.$PKGTYPE"
+ exit 0
+fi
+
+TMP=${TMP:-/tmp/SBo}
+PKG=$TMP/package-$PRGNAM
+OUTPUT=${OUTPUT:-/tmp}
+
+if [ "$ARCH" = "i586" ]; then
+ SLKCFLAGS="-O2 -march=i586 -mtune=i686"
+ LIBDIRSUFFIX=""
+elif [ "$ARCH" = "i686" ]; then
+ SLKCFLAGS="-O2 -march=i686 -mtune=i686"
+ LIBDIRSUFFIX=""
+elif [ "$ARCH" = "x86_64" ]; then
+ SLKCFLAGS="-O2 -fPIC"
+ LIBDIRSUFFIX="64"
+elif [ "$ARCH" = "aarch64" ]; then
+ SLKCFLAGS="-O2 -fPIC"
+ LIBDIRSUFFIX="64"
+else
+ SLKCFLAGS="-O2"
+ LIBDIRSUFFIX=""
+fi
+
+set -e
+
+rm -rf $PKG
+mkdir -p $TMP $PKG $OUTPUT
+cd $TMP
+rm -rf $PRGNAM-$VERSION
+tar xvf $CWD/$PRGNAM-$VERSION-source.tar.gz
+cd $PRGNAM-$VERSION
+chown -R root:root .
+find -L . \
+ \( -perm 777 -o -perm 775 -o -perm 750 -o -perm 711 -o -perm 555 \
+ -o -perm 511 \) -exec chmod 755 {} \; -o \
+ \( -perm 666 -o -perm 664 -o -perm 640 -o -perm 600 -o -perm 444 \
+ -o -perm 440 -o -perm 400 \) -exec chmod 644 {} \;
+
+# A handful of patches are needed to build because of the time
+# since glTron's last "stable" release
+for pfile in $CWD/patches/*.gz ; do
+ zcat $pfile | patch -p1 || exit 1
+done
+
+CFLAGS="$SLKCFLAGS" \
+CXXFLAGS="$SLKCFLAGS" \
+./configure \
+ --prefix=/usr \
+ --bindir=/usr/games \
+ --datadir=/usr/share/games \
+ --mandir=/usr/share/man \
+ --infodir=/usr/share/info \
+ --disable-static \
+ --disable-warn \
+ --disable-debug \
+ --disable-profile \
+ --enable-network \
+ --build=$ARCH-slackware-linux
+
+make
+make install DESTDIR=$PKG
+
+rm -f $PKG/art/default/artpack.lua
+
+# Don't ship .la files:
+rm -f $PKG/{,usr/}lib${LIBDIRSUFFIX}/*.la
+
+find $PKG -print0 | xargs -0 file | grep -e "executable" -e "shared object" | grep ELF \
+ | cut -f 1 -d : | xargs strip --strip-unneeded 2> /dev/null || true
+
+
+# install custom .desktop file that was borrowed from Debian's repo
+mkdir -p $PKG/usr/share/applications
+install -v -m644 -t "$PKG/usr/share/applications/" $CWD/$PRGNAM.desktop
+
+mkdir -p $PKG/usr/doc/$PRGNAM-$VERSION
+cat $CWD/$PRGNAM.SlackBuild > $PKG/usr/doc/$PRGNAM-$VERSION/$PRGNAM.SlackBuild
+
+mkdir -p $PKG/install
+cat $CWD/slack-desc > $PKG/install/slack-desc
+cat $CWD/doinst.sh > $PKG/install/doinst.sh
+
+cd $PKG
+/sbin/makepkg -l y -c n $OUTPUT/$PRGNAM-$VERSION-$ARCH-$BUILD$TAG.$PKGTYPE
diff --git a/games/gltron/gltron.desktop b/games/gltron/gltron.desktop
new file mode 100644
index 0000000000..73c39cc3dd
--- /dev/null
+++ b/games/gltron/gltron.desktop
@@ -0,0 +1,11 @@
+[Desktop Entry]
+Version=1.0
+Type=Application
+Name=GLtron
+Comment=3D lightcycle game
+Comment[de]=dreidimensionales Lichtrad-Spiel
+Exec=gltron
+Icon=gltron
+Terminal=false
+Categories=Game;ActionGame;
+Keywords=tron;lightcycle;3D;action;
diff --git a/games/gltron/gltron.info b/games/gltron/gltron.info
new file mode 100644
index 0000000000..c659bfb481
--- /dev/null
+++ b/games/gltron/gltron.info
@@ -0,0 +1,10 @@
+PRGNAM="gltron"
+VERSION="0.70"
+HOMEPAGE="https://www.gltron.org"
+DOWNLOAD="http://prdownloads.sourceforge.net/gltron/gltron-0.70-source.tar.gz"
+MD5SUM="300e54914844f36c199415d6d8b0372a"
+DOWNLOAD_x86_64=""
+MD5SUM_x86_64=""
+REQUIRES="libmikmod smpeg"
+MAINTAINER="Tobias M. Monckton"
+EMAIL="tmmonckton@gmail.com"
diff --git a/games/gltron/patches/gltron-0.70-configure.patch.gz b/games/gltron/patches/gltron-0.70-configure.patch.gz
new file mode 100644
index 0000000000..6878e8ec8f
--- /dev/null
+++ b/games/gltron/patches/gltron-0.70-configure.patch.gz
Binary files differ
diff --git a/games/gltron/patches/gltron-0.70-debian.patch.gz b/games/gltron/patches/gltron-0.70-debian.patch.gz
new file mode 100644
index 0000000000..12f653efa1
--- /dev/null
+++ b/games/gltron/patches/gltron-0.70-debian.patch.gz
Binary files differ
diff --git a/games/gltron/patches/gltron-0.70-gcc49.patch.gz b/games/gltron/patches/gltron-0.70-gcc49.patch.gz
new file mode 100644
index 0000000000..ce47201325
--- /dev/null
+++ b/games/gltron/patches/gltron-0.70-gcc49.patch.gz
Binary files differ
diff --git a/games/gltron/patches/gltron-0.70-prototypes.patch.gz b/games/gltron/patches/gltron-0.70-prototypes.patch.gz
new file mode 100644
index 0000000000..dcac09aed6
--- /dev/null
+++ b/games/gltron/patches/gltron-0.70-prototypes.patch.gz
Binary files differ
diff --git a/games/gltron/slack-desc b/games/gltron/slack-desc
new file mode 100644
index 0000000000..6421e650a0
--- /dev/null
+++ b/games/gltron/slack-desc
@@ -0,0 +1,19 @@
+# HOW TO EDIT THIS FILE:
+# The "handy ruler" below makes it easier to edit a package description.
+# Line up the first '|' above the ':' following the base package name, and
+# the '|' on the right side marks the last column you can put a character in.
+# You must make exactly 11 lines for the formatting to be correct. It's also
+# customary to leave one space after the ':' except on otherwise blank lines.
+
+ |-----handy-ruler------------------------------------------------------|
+gltron: gltron (3D lightcycle racing game inspired by TRON)
+gltron:
+gltron: glTron is a 3D "lightcycle racing" game inspired by the iconic
+gltron: arena scene from the original TRON movie.
+gltron:
+gltron: https://www.gltron.org
+gltron:
+gltron:
+gltron:
+gltron:
+gltron:
diff --git a/games/glulxe/README b/games/glulxe/README
new file mode 100644
index 0000000000..57e382161b
--- /dev/null
+++ b/games/glulxe/README
@@ -0,0 +1,22 @@
+glulxe (interactive fiction VM)
+
+Glulx is a portable VM, like the Z-machine. Unlike the Z-machine, it
+uses 32-bit data and addresses, so it can handle game files up to four
+gigabytes long. Also unlike the Z-machine, it has native support for
+Glk I/O, so game files can use any capability Glk provides. However,
+like the Z-machine -- again -- you can write games in the Inform
+language and compile them to Glulx game files.
+
+Optional dependency: cheapglk. Although glulxe-cheapglk is not as
+featureful as glulxe-glktermw, it does support the VM debugger,
+which glulxe-glktermw does not. If you want this, install cheapglk
+before building glulxe. The executable will be installed as
+/usr/games/glulxe-cheapglk. If you have cheapglk installed, you can
+build without it by setting CHEAPGLK=no in the environment.
+
+Optional dependency: if you want a glulxe that speaks JSON, install
+remglk before building this. The JSON executable will be installed
+as /usr/games/glulxe-remglk. If you have remglk installed and want to
+build without it, export REMGLK=no in the environment. Note that, by
+itself, glulxe-remglk can't be used to play games in a human-friendly
+way; it's intended for use with a frontend (possibly a web-based one).
diff --git a/games/glulxe/glulxe-glktermw.6 b/games/glulxe/glulxe-glktermw.6
new file mode 100644
index 0000000000..07bb770397
--- /dev/null
+++ b/games/glulxe/glulxe-glktermw.6
@@ -0,0 +1,111 @@
+.\" Automatically generated by Pandoc 3.1.6
+.\"
+.\" Define V font for inline verbatim, using C font in formats
+.\" that render this, and otherwise B font.
+.ie "\f[CB]x\f[]"x" \{\
+. ftr V B
+. ftr VI BI
+. ftr VB B
+. ftr VBI BI
+.\}
+.el \{\
+. ftr V CR
+. ftr VI CI
+. ftr VB CB
+. ftr VBI CBI
+.\}
+.TH "GLULXE-GLKTERMW" "1" "March 2024" "0.6.1" "SlackBuilds.org"
+.hy
+.SH NAME
+.PP
+glulxe-glktermw - execute Glulx interactive fiction
+.SH SYNOPSIS
+.PP
+\f[B]glulxe-glktermw\f[R] \f[I]filename\f[R] [ \f[I]options\f[R] ]
+.SH OVERVIEW
+.PP
+\f[B]glulxe-glktermw\f[R] executes Glulx-format interactive fiction
+games, which typically end with .ulx, .gblorb, .glb, .blorb, or .blb.
+\f[B]glulxe-glktermw\f[R] can work with only a terminal.
+.PP
+The only required parameter is the filename of the game to play.
+The remaining parameters are all optional, and come from the glktermw
+library.
+.PP
+If you have \f[B]glulxe-remglk\f[R] and/or \f[B]glulxe-cheapglk\f[R]
+executables, these support extra options.
+Currently these don\[cq]t have man pages, but you can run them with
+\f[B]-help\f[R] to see the options.
+.PP
+Further information can be found in /usr/doc/glulxe-0.6.1/README.md.
+Note that the \f[B]-singleturn\f[R] example requires
+\f[B]glulxe-remglk\f[R].
+.SH OPTIONS
+.PP
+Game options (note: double dash, \f[B]--\f[R]).
+\f[I]NUM\f[R] options can be any number.
+.TP
+\f[B]--undo\f[R] \f[I]NUM\f[R]
+Number of undo states to store.
+.TP
+\f[B]--rngseed\f[R] \f[I]NUM\f[R]
+Fix initial RNG if nonzero.
+.TP
+\f[B]--profile\f[R] \f[I]filename\f[R]
+Generate profiling information to a file.
+.TP
+\f[B]--profcalls\f[R]
+Include what-called-what details in profiling.
+(Slow!)
+.PP
+Library options (note: single dash, \f[B]-\f[R]).
+\f[I]BOOL\f[R] options can be \f[I]yes\f[R] or \f[I]no\f[R], or no value
+to toggle.
+.TP
+\f[B]-width\f[R] \f[I]NUM\f[R], \f[B]-height\f[R] \f[I]NUM\f[R]
+Sets the screen width or height.
+Normally automatically determined.
+.TP
+\f[B]-ml\f[R] \f[I]BOOL\f[R]
+Enables or disables the message line (default \[lq]yes\[rq]).
+This is the bottom line of the screen.
+.TP
+\f[B]-revgrid\f[R] \f[I]BOOL\f[R]
+Reverse text in grid (status) windows (default \[lq]no\[rq]).
+.TP
+\f[B]-historylen\f[R] \f[I]NUM\f[R]
+Sets the number of commands to keep in the history for each window
+(default 20).
+.PP
+\f[B]-border\f[R] \f[I]BOOL\f[R] :: Whether or not to force
+one-character borders between windows.
+The default turns on borders unless the game switches them off.
+Setting to \[lq]yes\[rq] forces them on at all times, or \[lq]no\[rq]
+forces them off at all times, ignoring the game\[cq]s request.
+.TP
+\f[B]-defprompt\f[R] \f[I]BOOL\f[R]
+Provide defaults for file prompts (default \[lq]yes\[rq]).
+.TP
+\f[B]-precise\f[R] \f[I]BOOL\f[R]
+Whether to use more precise timing for timed input (default
+\[lq]no\[rq]).
+.TP
+\f[B]-version\f[R]
+Display Glk library version.
+.TP
+\f[B]-help\f[R]
+Display command-line help.
+.SH ABOUT
+.PP
+glulxe was written by Andrew Plotkin <erkyrath@eblong.com> and can be
+found at <https://www.eblong.com/zarf/glulx/>.
+glktermw was written by Andrew Plotkin <erkyrath@eblong.com> and
+Alexander Beels <arb28@columbia.edu> and can be found at
+<https://www.eblong.com/zarf/glk/index.html>.
+.PP
+This manpage was written for Debian by John Goerzen
+<jgoerzen@complete.org> based on information in the above locations.
+It was updated for glulxe-0.6.1 by B.
+Watson <urchlay@slackware.uk>.
+.SH AUTHORS
+Andrew Plotkin, John Goerzen.
diff --git a/games/glulxe/glulxe-glktermw.6.md b/games/glulxe/glulxe-glktermw.6.md
new file mode 100644
index 0000000000..b5bc540542
--- /dev/null
+++ b/games/glulxe/glulxe-glktermw.6.md
@@ -0,0 +1,88 @@
+% GLULXE-GLKTERMW(1) 0.6.1 | SlackBuilds.org
+% Andrew Plotkin, John Goerzen
+% March 2024
+
+# NAME
+
+glulxe-glktermw - execute Glulx interactive fiction
+
+# SYNOPSIS
+
+**glulxe-glktermw** *filename* [ *options* ]
+
+# OVERVIEW
+
+**glulxe-glktermw** executes Glulx-format interactive fiction games, which
+typically end with .ulx, .gblorb, .glb, .blorb, or .blb. **glulxe-glktermw**
+can work with only a terminal.
+
+The only required parameter is the filename of the game to
+play. The remaining parameters are all optional, and come
+from the glktermw library.
+
+If you have **glulxe-remglk** and/or **glulxe-cheapglk** executables,
+these support extra options. Currently these don't have man pages, but
+you can run them with **-help** to see the options.
+
+Further information can be found in /usr/doc/glulxe-0.6.1/README.md.
+Note that the **-singleturn** example requires **glulxe-remglk**.
+
+# OPTIONS
+
+Game options (note: double dash, **-\-**). *NUM* options can be any number.
+
+**-\-undo** *NUM*
+: Number of undo states to store.
+
+**-\-rngseed** *NUM*
+: Fix initial RNG if nonzero.
+
+**-\-profile** *filename*
+: Generate profiling information to a file.
+
+**-\-profcalls**
+: Include what-called-what details in profiling. (Slow!)
+
+Library options (note: single dash, **-**). *BOOL* options can
+be *yes* or *no*, or no value to toggle.
+
+**-width** *NUM*, **-height** *NUM*
+: Sets the screen width or height. Normally automatically determined.
+
+**-ml** *BOOL*
+: Enables or disables the message line (default "yes"). This is the bottom line
+ of the screen.
+
+**-revgrid** *BOOL*
+: Reverse text in grid (status) windows (default "no").
+
+**-historylen** *NUM*
+: Sets the number of commands to keep in the history for each window (default 20).
+
+**-border** *BOOL*
+:: Whether or not to force one-character borders between windows.
+ The default turns on borders unless the game switches them off.
+ Setting to "yes" forces them on at all times, or "no" forces them
+ off at all times, ignoring the game's request.
+
+**-defprompt** *BOOL*
+: Provide defaults for file prompts (default "yes").
+
+**-precise** *BOOL*
+: Whether to use more precise timing for timed input (default "no").
+
+**-version**
+: Display Glk library version.
+
+**-help**
+: Display command-line help.
+
+# ABOUT
+
+glulxe was written by Andrew Plotkin <erkyrath@eblong.com> and can be found at
+<https://www.eblong.com/zarf/glulx/>. glktermw was written by Andrew Plotkin <erkyrath@eblong.com>
+and Alexander Beels <arb28@columbia.edu> and can be found at
+<https://www.eblong.com/zarf/glk/index.html>.
+
+This manpage was written for Debian by John Goerzen <jgoerzen@complete.org> based
+on information in the above locations. It was updated for glulxe-0.6.1 by B. Watson <urchlay@slackware.uk>.
diff --git a/games/glulxe/glulxe.SlackBuild b/games/glulxe/glulxe.SlackBuild
new file mode 100644
index 0000000000..b698ebef2b
--- /dev/null
+++ b/games/glulxe/glulxe.SlackBuild
@@ -0,0 +1,142 @@
+#!/bin/bash
+
+# Slackware build script for glulxe
+
+# Written by B. Watson (urchlay@slackware.uk)
+
+# Licensed under the WTFPL. See http://www.wtfpl.net/txt/copying/ for details.
+
+# Man page comes from debian. glulxe.6.md originally came from:
+# http://deb.debian.org/debian/pool/main/g/glulxe/glulxe_0.5.4-1.1.debian.tar.xz
+# ...and I added the new options in v0.6.1.
+# convert to a man page via:
+# pandoc --standalone --to man glulxe-glktermw.6.md -o glulxe-glktermw.6
+
+cd $(dirname $0) ; CWD=$(pwd)
+
+PRGNAM=glulxe
+VERSION=${VERSION:-0.6.1}
+BUILD=${BUILD:-1}
+TAG=${TAG:-_SBo}
+PKGTYPE=${PKGTYPE:-tgz}
+
+if [ -z "$ARCH" ]; then
+ case "$( uname -m )" in
+ i?86) ARCH=i586 ;;
+ arm*) ARCH=arm ;;
+ *) ARCH=$( uname -m ) ;;
+ esac
+fi
+
+if [ ! -z "${PRINT_PACKAGE_NAME}" ]; then
+ echo "$PRGNAM-$VERSION-$ARCH-$BUILD$TAG.$PKGTYPE"
+ exit 0
+fi
+
+TMP=${TMP:-/tmp/SBo}
+PKG=$TMP/package-$PRGNAM
+OUTPUT=${OUTPUT:-/tmp}
+
+if [ "$ARCH" = "i586" ]; then
+ SLKCFLAGS="-O2 -march=i586 -mtune=i686"
+ LIBDIRSUFFIX=""
+elif [ "$ARCH" = "i686" ]; then
+ SLKCFLAGS="-O2 -march=i686 -mtune=i686"
+ LIBDIRSUFFIX=""
+elif [ "$ARCH" = "x86_64" ]; then
+ SLKCFLAGS="-O2 -fPIC"
+ LIBDIRSUFFIX="64"
+else
+ SLKCFLAGS="-O2"
+ LIBDIRSUFFIX=""
+fi
+
+set -e
+
+# 0.6.1 => 061
+TARVER=${VERSION//./}
+
+rm -rf $PKG
+mkdir -p $TMP $PKG $OUTPUT
+cd $TMP
+rm -rf $PRGNAM
+tar xvf $CWD/$PRGNAM-$TARVER.tar.gz
+cd $PRGNAM
+chown -R root:root .
+find -L . -perm /111 -a \! -perm 755 -a -exec chmod 755 {} + -o \
+ \! -perm /111 -a \! -perm 644 -a -exec chmod 644 {} +
+
+# Include glulxdump in package. Have to apply our flags.
+sed -i "/-o glulxdump/s,-o,$SLKCFLAGS -o," Makefile
+
+# glulxe requires a glk library, but there are at least 3 to choose
+# from. The most-commonly used one (by people who just play games) is
+# going to be glktermw, so I made it a required dep. cheapglk and
+# remglk are more niche-market, so they're optional.
+
+# glktermw first.
+# Unfortunately we can't define VM_DEBUGGER with glktermw, it lacks
+# support for it.
+OPTS="-DOS_UNIX -DUNIX_RAND_GETRANDOM -DVM_PROFILING"
+make all glulxdump \
+ OPTIONS="-Wall $SLKCFLAGS $OPTS" \
+ GLKINCLUDEDIR=/usr/include/glktermw \
+ GLKLIBDIR=/usr/lib$LIBDIRSUFFIX \
+ GLKMAKEFILE=Make.glktermw
+
+# no 'make install' target.
+mkdir -p $PKG/usr/games
+install -s glulxdump $PKG/usr/games/
+install -s $PRGNAM $PKG/usr/games/$PRGNAM-glktermw
+ln -s $PRGNAM-glktermw $PKG/usr/games/$PRGNAM
+install profile-analyze.py $PKG/usr/games/$PRGNAM-profile-analyze
+
+# only have a man page for glulxe-glktermw
+MAN6=$PKG/usr/man/man6
+mkdir -p $MAN6
+gzip -9c < $CWD/glulxe-glktermw.6 > $MAN6/glulxe-glktermw.6.gz
+ln -s glulxe-glktermw.6.gz $MAN6/$PRGNAM.6.gz
+
+# cheapglk, if available.
+INCCG="does NOT include"
+if [ "${CHEAPGLK:-yes}" = "yes" -a -e /usr/include/cheapglk/glk.h ]; then
+ INCCG="INCLUDES"
+ rm -f *.o $PRGNAM glulxdump profile-raw
+ # We *can* define VM_DEBUGGER with cheapglk, so do it.
+ make OPTIONS="-Wall $SLKCFLAGS $OPTS -DVM_DEBUGGER" \
+ GLKINCLUDEDIR=/usr/include/cheapglk \
+ GLKLIBDIR=/usr/lib$LIBDIRSUFFIX \
+ GLKMAKEFILE=Make.cheapglk \
+ XMLLIBINCLUDEDIR=-I/usr/include/libxml2 \
+ XMLLIB=-lxml2
+ install -s $PRGNAM $PKG/usr/games/$PRGNAM-cheapglk
+fi
+
+# remglk, if available.
+INCREM="does NOT include"
+if [ "${REMGLK:-yes}" = "yes" -a -e /usr/include/remglk/glk.h ]; then
+ INCREM="INCLUDES"
+ rm -f *.o $PRGNAM glulxdump profile-raw
+ # We *can* define VM_DEBUGGER with remglk, so do it.
+ make OPTIONS="-Wall $SLKCFLAGS $OPTS -DVM_DEBUGGER" \
+ GLKINCLUDEDIR=/usr/include/remglk \
+ GLKLIBDIR=/usr/lib$LIBDIRSUFFIX \
+ GLKMAKEFILE=Make.remglk \
+ XMLLIBINCLUDEDIR=-I/usr/include/libxml2 \
+ XMLLIB=-lxml2
+ install -s $PRGNAM $PKG/usr/games/$PRGNAM-remglk
+fi
+
+PKGDOC=$PKG/usr/doc/$PRGNAM-$VERSION
+mkdir -p $PKGDOC
+cp -a LICENSE README.md $PKGDOC
+cat $CWD/$PRGNAM.SlackBuild > $PKGDOC/$PRGNAM.SlackBuild
+
+mkdir -p $PKG/install
+sed -e "s,@INCREM@,$INCREM," \
+ -e "s,@INCCG@,$INCCG," \
+ < $CWD/slack-desc \
+ > $PKG/install/slack-desc
+
+cd $PKG
+/sbin/makepkg -l y -c n $OUTPUT/$PRGNAM-$VERSION-$ARCH-$BUILD$TAG.$PKGTYPE
diff --git a/games/glulxe/glulxe.info b/games/glulxe/glulxe.info
new file mode 100644
index 0000000000..580efd8f00
--- /dev/null
+++ b/games/glulxe/glulxe.info
@@ -0,0 +1,10 @@
+PRGNAM="glulxe"
+VERSION="0.6.1"
+HOMEPAGE="https://www.eblong.com/zarf/glulx/"
+DOWNLOAD="https://www.eblong.com/zarf/glulx/glulxe-061.tar.gz"
+MD5SUM="0d0438faa42fd09d08876f75372c97b1"
+DOWNLOAD_x86_64=""
+MD5SUM_x86_64=""
+REQUIRES="glktermw"
+MAINTAINER="B. Watson"
+EMAIL="urchlay@slackware.uk"
diff --git a/games/glulxe/slack-desc b/games/glulxe/slack-desc
new file mode 100644
index 0000000000..88da2e9536
--- /dev/null
+++ b/games/glulxe/slack-desc
@@ -0,0 +1,19 @@
+# HOW TO EDIT THIS FILE:
+# The "handy ruler" below makes it easier to edit a package description.
+# Line up the first '|' above the ':' following the base package name, and
+# the '|' on the right side marks the last column you can put a character in.
+# You must make exactly 11 lines for the formatting to be correct. It's also
+# customary to leave one space after the ':' except on otherwise blank lines.
+
+ |-----handy-ruler------------------------------------------------------|
+glulxe: glulxe (interactive fiction VM)
+glulxe:
+glulxe: Glulx is a portable VM, like the Z-machine. Unlike the Z-machine, it
+glulxe: uses 32-bit data and addresses, so it can handle game files up to four
+glulxe: gigabytes long. Also unlike the Z-machine, it has native support for
+glulxe: Glk I/O, so game files can use any capability Glk provides. However,
+glulxe: like the Z-machine -- again -- you can write games in the Inform
+glulxe: language and compile them to Glulx game files.
+glulxe:
+glulxe: This package @INCREM@ glulxe-remglk.
+glulxe: This package @INCCG@ glulxe-cheapglk.
diff --git a/games/glxosd/glxosd.SlackBuild b/games/glxosd/glxosd.SlackBuild
index 4d193b3864..b0e92d6f57 100644
--- a/games/glxosd/glxosd.SlackBuild
+++ b/games/glxosd/glxosd.SlackBuild
@@ -1,4 +1,4 @@
-#!/bin/sh
+#!/bin/bash
# Slackware build script for glxosd
# Written by Eric Fernandes Ferreira <candelabrus@gmail.com>
@@ -24,27 +24,37 @@
# (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE
# OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
+cd $(dirname $0) ; CWD=$(pwd)
+
PRGNAM=glxosd
SRCNAM=GLXOSD
VERSION=${VERSION:-2.5.0}
BUILD=${BUILD:-1}
TAG=${TAG:-_SBo}
+PKGTYPE=${PKGTYPE:-tgz}
if [ -z "$ARCH" ]; then
case "$( uname -m )" in
- i?86) ARCH=i486 ;;
+ i?86) ARCH=i586 ;;
arm*) ARCH=arm ;;
*) ARCH=$( uname -m ) ;;
esac
fi
-CWD=$(pwd)
+# If the variable PRINT_PACKAGE_NAME is set, then this script will report what
+# the name of the created package would be, and then exit. This information
+# could be useful to other scripts.
+if [ ! -z "${PRINT_PACKAGE_NAME}" ]; then
+ echo "$PRGNAM-$VERSION-$ARCH-$BUILD$TAG.$PKGTYPE"
+ exit 0
+fi
+
TMP=${TMP:-/tmp/SBo}
PKG=$TMP/package-$PRGNAM
OUTPUT=${OUTPUT:-/tmp}
-if [ "$ARCH" = "i486" ]; then
- SLKCFLAGS="-O2 -march=i486 -mtune=i686"
+if [ "$ARCH" = "i586" ]; then
+ SLKCFLAGS="-O2 -march=i586 -mtune=i686"
LIBDIRSUFFIX=""
elif [ "$ARCH" = "i686" ]; then
SLKCFLAGS="-O2 -march=i686 -mtune=i686"
@@ -96,4 +106,4 @@ cat $CWD/slack-desc > $PKG/install/slack-desc
cat $CWD/doinst.sh > $PKG/install/doinst.sh
cd $PKG
-/sbin/makepkg -l y -c n $OUTPUT/$PRGNAM-$VERSION-$ARCH-$BUILD$TAG.${PKGTYPE:-tgz}
+/sbin/makepkg -l y -c n $OUTPUT/$PRGNAM-$VERSION-$ARCH-$BUILD$TAG.$PKGTYPE
diff --git a/games/glxosd/glxosd.info b/games/glxosd/glxosd.info
index bb7a7cef2c..5ad7b889f3 100644
--- a/games/glxosd/glxosd.info
+++ b/games/glxosd/glxosd.info
@@ -1,7 +1,7 @@
PRGNAM="glxosd"
VERSION="2.5.0"
HOMEPAGE="https://glxosd.nickguletskii.com/"
-DOWNLOAD="https://github.com/nickguletskii/GLXOSD/archive/2.5.0.tar.gz"
+DOWNLOAD="https://github.com/nickguletskii/GLXOSD/archive/2.5.0/GLXOSD-2.5.0.tar.gz"
MD5SUM="4a5f34b0415d4d6a68a64bed6004136c"
DOWNLOAD_x86_64=""
MD5SUM_x86_64=""
diff --git a/games/gnome-chess/README b/games/gnome-chess/README
new file mode 100644
index 0000000000..649e06b7cd
--- /dev/null
+++ b/games/gnome-chess/README
@@ -0,0 +1,3 @@
+GNOME Chess is a 2D chess game, where games can be played between a
+combination of human and computer players. GNOME Chess detects known
+third party chess engines for computer players.
diff --git a/games/gnome-chess/doinst.sh b/games/gnome-chess/doinst.sh
new file mode 100644
index 0000000000..b123c0cd8d
--- /dev/null
+++ b/games/gnome-chess/doinst.sh
@@ -0,0 +1,14 @@
+if [ -x /usr/bin/update-desktop-database ]; then
+ /usr/bin/update-desktop-database -q usr/share/applications >/dev/null 2>&1
+fi
+
+if [ -e usr/share/icons/hicolor/icon-theme.cache ]; then
+ if [ -x /usr/bin/gtk-update-icon-cache ]; then
+ /usr/bin/gtk-update-icon-cache usr/share/icons/hicolor >/dev/null 2>&1
+ fi
+fi
+if [ -e usr/share/glib-2.0/schemas ]; then
+ if [ -x /usr/bin/glib-compile-schemas ]; then
+ /usr/bin/glib-compile-schemas usr/share/glib-2.0/schemas >/dev/null 2>&1
+ fi
+fi
diff --git a/games/gnome-chess/gnome-chess.SlackBuild b/games/gnome-chess/gnome-chess.SlackBuild
new file mode 100644
index 0000000000..1dc829f85f
--- /dev/null
+++ b/games/gnome-chess/gnome-chess.SlackBuild
@@ -0,0 +1,112 @@
+#!/bin/bash
+
+# Slackware build script for gnome-chess
+
+# Copyright 2022 Nathaniel Russell <naterussell83@gmail.com>
+# All rights reserved.
+#
+# Redistribution and use of this script, with or without modification, is
+# permitted provided that the following conditions are met:
+#
+# 1. Redistributions of this script must retain the above copyright
+# notice, this list of conditions and the following disclaimer.
+#
+# THIS SOFTWARE IS PROVIDED BY THE AUTHOR "AS IS" AND ANY EXPRESS OR IMPLIED
+# WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE IMPLIED WARRANTIES OF
+# MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE ARE DISCLAIMED. IN NO
+# EVENT SHALL THE AUTHOR BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL,
+# SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT LIMITED TO,
+# PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, DATA, OR PROFITS;
+# OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY,
+# WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR
+# OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF THIS SOFTWARE, EVEN IF
+# ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
+
+cd $(dirname $0) ; CWD=$(pwd)
+
+PRGNAM=gnome-chess
+VERSION=${VERSION:-41.1}
+BUILD=${BUILD:-1}
+TAG=${TAG:-_SBo}
+PKGTYPE=${PKGTYPE:-tgz}
+
+if [ -z "$ARCH" ]; then
+ case "$( uname -m )" in
+ i?86) ARCH=i586 ;;
+ arm*) ARCH=arm ;;
+ *) ARCH=$( uname -m ) ;;
+ esac
+fi
+
+if [ ! -z "${PRINT_PACKAGE_NAME}" ]; then
+ echo "$PRGNAM-$VERSION-$ARCH-$BUILD$TAG.$PKGTYPE"
+ exit 0
+fi
+
+TMP=${TMP:-/tmp/SBo}
+PKG=$TMP/package-$PRGNAM
+OUTPUT=${OUTPUT:-/tmp}
+
+if [ "$ARCH" = "i586" ]; then
+ SLKCFLAGS="-O2 -march=i586 -mtune=i686"
+ LIBDIRSUFFIX=""
+elif [ "$ARCH" = "i686" ]; then
+ SLKCFLAGS="-O2 -march=i686 -mtune=i686"
+ LIBDIRSUFFIX=""
+elif [ "$ARCH" = "x86_64" ]; then
+ SLKCFLAGS="-O2 -fPIC"
+ LIBDIRSUFFIX="64"
+else
+ SLKCFLAGS="-O2"
+ LIBDIRSUFFIX=""
+fi
+
+set -e
+
+rm -rf $PKG
+mkdir -p $TMP $PKG $OUTPUT
+cd $TMP
+rm -rf $PRGNAM-$VERSION
+tar xvf $CWD/$PRGNAM-$VERSION.tar.xz
+cd $PRGNAM-$VERSION
+chown -R root:root .
+find -L . \
+ \( -perm 777 -o -perm 775 -o -perm 750 -o -perm 711 -o -perm 555 \
+ -o -perm 511 \) -exec chmod 755 {} \; -o \
+ \( -perm 666 -o -perm 664 -o -perm 640 -o -perm 600 -o -perm 444 \
+ -o -perm 440 -o -perm 400 \) -exec chmod 644 {} \;
+
+mkdir -p build
+cd build
+ CFLAGS="$SLKCFLAGS" \
+ CXXFLAGS="$SLKCFLAGS" \
+ meson .. \
+ --buildtype=release \
+ --infodir=/usr/info \
+ --libdir=/usr/lib${LIBDIRSUFFIX} \
+ --localstatedir=/var \
+ --mandir=/usr/man \
+ --prefix=/usr \
+ --sysconfdir=/etc
+
+"${NINJA:=ninja}"
+ DESTDIR=$PKG $NINJA install
+cd ..
+
+find $PKG -print0 | xargs -0 file | grep -e "executable" -e "shared object" | grep ELF \
+ | cut -f 1 -d : | xargs strip --strip-unneeded 2> /dev/null || true
+
+find $PKG/usr/man -type f -exec gzip -9 {} \;
+for i in $(find $PKG/usr/man -type l); do ln -s $(readlink $i).gz $i.gz; rm $i; done
+
+mkdir -p $PKG/usr/doc/$PRGNAM-$VERSION
+cp -a COPYING* NEWS README.md \
+ $PKG/usr/doc/$PRGNAM-$VERSION
+cat $CWD/$PRGNAM.SlackBuild > $PKG/usr/doc/$PRGNAM-$VERSION/$PRGNAM.SlackBuild
+
+mkdir -p $PKG/install
+cat $CWD/slack-desc > $PKG/install/slack-desc
+cat $CWD/doinst.sh > $PKG/install/doinst.sh
+
+cd $PKG
+/sbin/makepkg -l y -c n $OUTPUT/$PRGNAM-$VERSION-$ARCH-$BUILD$TAG.$PKGTYPE
diff --git a/games/gnome-chess/gnome-chess.info b/games/gnome-chess/gnome-chess.info
new file mode 100644
index 0000000000..ff90bc5a30
--- /dev/null
+++ b/games/gnome-chess/gnome-chess.info
@@ -0,0 +1,10 @@
+PRGNAM="gnome-chess"
+VERSION="41.1"
+HOMEPAGE="https://wiki.gnome.org/Apps/Chess"
+DOWNLOAD="https://download.gnome.org/sources/gnome-chess/41/gnome-chess-41.1.tar.xz"
+MD5SUM="79a5f2164941ba75baf4bc0a1b99045f"
+DOWNLOAD_x86_64=""
+MD5SUM_x86_64=""
+REQUIRES=""
+MAINTAINER="Nathaniel Russell"
+EMAIL="naterussell83@gmail.com"
diff --git a/games/gnome-chess/slack-desc b/games/gnome-chess/slack-desc
new file mode 100644
index 0000000000..01aa7942f5
--- /dev/null
+++ b/games/gnome-chess/slack-desc
@@ -0,0 +1,19 @@
+# HOW TO EDIT THIS FILE:
+# The "handy ruler" below makes it easier to edit a package description.
+# Line up the first '|' above the ':' following the base package name, and
+# the '|' on the right side marks the last column you can put a character in.
+# You must make exactly 11 lines for the formatting to be correct. It's also
+# customary to leave one space after the ':' except on otherwise blank lines.
+
+ |-----handy-ruler------------------------------------------------------|
+gnome-chess: gnome-chess (2D Chess)
+gnome-chess:
+gnome-chess: GNOME Chess is a 2D chess game, where games can be played between a
+gnome-chess: combination of human and computer players.
+gnome-chess:
+gnome-chess: Homepage: https://gitlab.gnome.org/GNOME/gnome-chess
+gnome-chess:
+gnome-chess:
+gnome-chess:
+gnome-chess:
+gnome-chess:
diff --git a/games/gnome-klotski/README b/games/gnome-klotski/README
new file mode 100644
index 0000000000..0a54cf3b2e
--- /dev/null
+++ b/games/gnome-klotski/README
@@ -0,0 +1,2 @@
+gnome-klotski (Klotski game for gnome.)
+dep libgnome-games-support
diff --git a/games/gnome-klotski/doinst.sh b/games/gnome-klotski/doinst.sh
new file mode 100644
index 0000000000..b123c0cd8d
--- /dev/null
+++ b/games/gnome-klotski/doinst.sh
@@ -0,0 +1,14 @@
+if [ -x /usr/bin/update-desktop-database ]; then
+ /usr/bin/update-desktop-database -q usr/share/applications >/dev/null 2>&1
+fi
+
+if [ -e usr/share/icons/hicolor/icon-theme.cache ]; then
+ if [ -x /usr/bin/gtk-update-icon-cache ]; then
+ /usr/bin/gtk-update-icon-cache usr/share/icons/hicolor >/dev/null 2>&1
+ fi
+fi
+if [ -e usr/share/glib-2.0/schemas ]; then
+ if [ -x /usr/bin/glib-compile-schemas ]; then
+ /usr/bin/glib-compile-schemas usr/share/glib-2.0/schemas >/dev/null 2>&1
+ fi
+fi
diff --git a/games/gnome-klotski/gnome-klotski.SlackBuild b/games/gnome-klotski/gnome-klotski.SlackBuild
new file mode 100644
index 0000000000..9aea751ebe
--- /dev/null
+++ b/games/gnome-klotski/gnome-klotski.SlackBuild
@@ -0,0 +1,120 @@
+#!/bin/bash
+
+# Slackware build script for gnome-klotski
+
+# Copyright 2022 Nathaniel Russell <naterussell83@gmail.com>
+# All rights reserved.
+#
+# Redistribution and use of this script, with or without modification, is
+# permitted provided that the following conditions are met:
+#
+# 1. Redistributions of this script must retain the above copyright
+# notice, this list of conditions and the following disclaimer.
+#
+# THIS SOFTWARE IS PROVIDED BY THE AUTHOR "AS IS" AND ANY EXPRESS OR IMPLIED
+# WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE IMPLIED WARRANTIES OF
+# MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE ARE DISCLAIMED. IN NO
+# EVENT SHALL THE AUTHOR BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL,
+# SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT LIMITED TO,
+# PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, DATA, OR PROFITS;
+# OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY,
+# WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR
+# OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF THIS SOFTWARE, EVEN IF
+# ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
+
+cd $(dirname $0) ; CWD=$(pwd)
+
+PRGNAM=gnome-klotski
+VERSION=${VERSION:-3.38.2}
+BUILD=${BUILD:-1}
+TAG=${TAG:-_SBo}
+PKGTYPE=${PKGTYPE:-tgz}
+
+if [ -z "$ARCH" ]; then
+ case "$( uname -m )" in
+ i?86) ARCH=i586 ;;
+ arm*) ARCH=arm ;;
+ *) ARCH=$( uname -m ) ;;
+ esac
+fi
+
+if [ ! -z "${PRINT_PACKAGE_NAME}" ]; then
+ echo "$PRGNAM-$VERSION-$ARCH-$BUILD$TAG.$PKGTYPE"
+ exit 0
+fi
+
+TMP=${TMP:-/tmp/SBo}
+PKG=$TMP/package-$PRGNAM
+OUTPUT=${OUTPUT:-/tmp}
+
+if [ "$ARCH" = "i586" ]; then
+ SLKCFLAGS="-O2 -march=i586 -mtune=i686"
+ LIBDIRSUFFIX=""
+elif [ "$ARCH" = "i686" ]; then
+ SLKCFLAGS="-O2 -march=i686 -mtune=i686"
+ LIBDIRSUFFIX=""
+elif [ "$ARCH" = "x86_64" ]; then
+ SLKCFLAGS="-O2 -fPIC"
+ LIBDIRSUFFIX="64"
+else
+ SLKCFLAGS="-O2"
+ LIBDIRSUFFIX=""
+fi
+
+set -e
+
+rm -rf $PKG
+mkdir -p $TMP $PKG $OUTPUT
+cd $TMP
+rm -rf $PRGNAM-$VERSION
+tar xvf $CWD/$PRGNAM-$VERSION.tar.xz
+cd $PRGNAM-$VERSION
+chown -R root:root .
+find -L . \
+ \( -perm 777 -o -perm 775 -o -perm 750 -o -perm 711 -o -perm 555 \
+ -o -perm 511 \) -exec chmod 755 {} \; -o \
+ \( -perm 666 -o -perm 664 -o -perm 640 -o -perm 600 -o -perm 444 \
+ -o -perm 440 -o -perm 400 \) -exec chmod 644 {} \;
+
+mkdir build
+cd build
+ CFLAGS="$SLKCFLAGS" \
+ CXXFLAGS="$SLKCFLAGS" \
+ meson .. \
+ --buildtype=release \
+ --libdir=/usr/lib${LIBDIRSUFFIX} \
+ --localstatedir=/var \
+ --mandir=/usr/man \
+ --prefix=/usr \
+ --sysconfdir=/etc \
+ -Dstrip=true
+ ninja
+ DESTDIR=$PKG ninja install
+cd ..
+
+# Don't ship .la files:
+rm -f $PKG/{,usr/}lib${LIBDIRSUFFIX}/*.la
+
+find $PKG -print0 | xargs -0 file | grep -e "executable" -e "shared object" | grep ELF \
+ | cut -f 1 -d : | xargs strip --strip-unneeded 2> /dev/null || true
+
+find $PKG/usr/man -type f -exec gzip -9 {} \;
+for i in $( find $PKG/usr/man -type l ) ; do ln -s $( readlink $i ).gz $i.gz ; rm $i ; done
+
+find $PKG -name perllocal.pod \
+ -o -name ".packlist" \
+ -o -name "*.bs" \
+ | xargs rm -f
+
+mkdir -p $PKG/usr/doc/$PRGNAM-$VERSION
+DOCS="COPYING* NEWS"
+cp -a $DOCS $PKG/usr/doc/$PRGNAM-$VERSION
+cat $CWD/$PRGNAM.SlackBuild > $PKG/usr/doc/$PRGNAM-$VERSION/$PRGNAM.SlackBuild
+
+mkdir -p $PKG/install
+cat $CWD/slack-desc > $PKG/install/slack-desc
+cat $CWD/doinst.sh > $PKG/install/doinst.sh
+
+cd $PKG
+/sbin/makepkg -l y -c n $OUTPUT/$PRGNAM-$VERSION-$ARCH-$BUILD$TAG.$PKGTYPE
+
diff --git a/games/gnome-klotski/gnome-klotski.info b/games/gnome-klotski/gnome-klotski.info
new file mode 100644
index 0000000000..2c5aeb6429
--- /dev/null
+++ b/games/gnome-klotski/gnome-klotski.info
@@ -0,0 +1,10 @@
+PRGNAM="gnome-klotski"
+VERSION="3.38.2"
+HOMEPAGE="https://wiki.gnome.org/Apps/Klotski"
+DOWNLOAD="https://download.gnome.org/sources/gnome-klotski/3.38/gnome-klotski-3.38.2.tar.xz"
+MD5SUM="586f13a3bf0a9b21c84be9db6a52a447"
+DOWNLOAD_x86_64=""
+MD5SUM_x86_64=""
+REQUIRES="libgnome-games-support"
+MAINTAINER="Nathaniel Russell"
+EMAIL="naterussell83@gmail.com"
diff --git a/games/gnome-klotski/slack-desc b/games/gnome-klotski/slack-desc
new file mode 100644
index 0000000000..7d824b2740
--- /dev/null
+++ b/games/gnome-klotski/slack-desc
@@ -0,0 +1,19 @@
+# HOW TO EDIT THIS FILE:
+# The "handy ruler" below makes it easier to edit a package description.
+# Line up the first '|' above the ':' following the base package name, and
+# the '|' on the right side marks the last column you can put a character in.
+# You must make exactly 11 lines for the formatting to be correct. It's also
+# customary to leave one space after the ':' except on otherwise blank lines.
+
+ |-----handy-ruler------------------------------------------------------|
+gnome-klotski: gnome-klotski (Klotski game for gnome.)
+gnome-klotski:
+gnome-klotski: Gnome desktop game Klotski.
+gnome-klotski: A series of sliding block puzzles. Try and solve them in the least
+gnome-klotski: number of moves.
+gnome-klotski:
+gnome-klotski:
+gnome-klotski:
+gnome-klotski:
+gnome-klotski:
+gnome-klotski:
diff --git a/games/gnome-mahjongg/README b/games/gnome-mahjongg/README
new file mode 100644
index 0000000000..a950491091
--- /dev/null
+++ b/games/gnome-mahjongg/README
@@ -0,0 +1,2 @@
+Mahjongg is a simple pattern recognition game. You score points by
+matching identical tiles
diff --git a/games/gnome-mahjongg/doinst.sh b/games/gnome-mahjongg/doinst.sh
new file mode 100644
index 0000000000..b123c0cd8d
--- /dev/null
+++ b/games/gnome-mahjongg/doinst.sh
@@ -0,0 +1,14 @@
+if [ -x /usr/bin/update-desktop-database ]; then
+ /usr/bin/update-desktop-database -q usr/share/applications >/dev/null 2>&1
+fi
+
+if [ -e usr/share/icons/hicolor/icon-theme.cache ]; then
+ if [ -x /usr/bin/gtk-update-icon-cache ]; then
+ /usr/bin/gtk-update-icon-cache usr/share/icons/hicolor >/dev/null 2>&1
+ fi
+fi
+if [ -e usr/share/glib-2.0/schemas ]; then
+ if [ -x /usr/bin/glib-compile-schemas ]; then
+ /usr/bin/glib-compile-schemas usr/share/glib-2.0/schemas >/dev/null 2>&1
+ fi
+fi
diff --git a/games/gnome-mahjongg/gnome-mahjongg.SlackBuild b/games/gnome-mahjongg/gnome-mahjongg.SlackBuild
new file mode 100644
index 0000000000..a43d59f59c
--- /dev/null
+++ b/games/gnome-mahjongg/gnome-mahjongg.SlackBuild
@@ -0,0 +1,116 @@
+#!/bin/bash
+
+# Slackware build script for gnome-mahjongg
+
+# Copyright 2022 Nathaniel Russell
+# All rights reserved.
+#
+# Redistribution and use of this script, with or without modification, is
+# permitted provided that the following conditions are met:
+#
+# 1. Redistributions of this script must retain the above copyright
+# notice, this list of conditions and the following disclaimer.
+#
+# THIS SOFTWARE IS PROVIDED BY THE AUTHOR "AS IS" AND ANY EXPRESS OR IMPLIED
+# WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE IMPLIED WARRANTIES OF
+# MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE ARE DISCLAIMED. IN NO
+# EVENT SHALL THE AUTHOR BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL,
+# SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT LIMITED TO,
+# PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, DATA, OR PROFITS;
+# OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY,
+# WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR
+# OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF THIS SOFTWARE, EVEN IF
+# ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
+
+cd $(dirname $0) ; CWD=$(pwd)
+
+PRGNAM=gnome-mahjongg
+VERSION=${VERSION:-3.38.3}
+BUILD=${BUILD:-1}
+TAG=${TAG:-_SBo}
+PKGTYPE=${PKGTYPE:-tgz}
+
+if [ -z "$ARCH" ]; then
+ case "$( uname -m )" in
+ i?86) ARCH=i586 ;;
+ arm*) ARCH=arm ;;
+ *) ARCH=$( uname -m ) ;;
+ esac
+fi
+
+if [ ! -z "${PRINT_PACKAGE_NAME}" ]; then
+ echo "$PRGNAM-$VERSION-$ARCH-$BUILD$TAG.$PKGTYPE"
+ exit 0
+fi
+
+TMP=${TMP:-/tmp/SBo}
+PKG=$TMP/package-$PRGNAM
+OUTPUT=${OUTPUT:-/tmp}
+
+if [ "$ARCH" = "i586" ]; then
+ SLKCFLAGS="-O2 -march=i586 -mtune=i686"
+ LIBDIRSUFFIX=""
+elif [ "$ARCH" = "i686" ]; then
+ SLKCFLAGS="-O2 -march=i686 -mtune=i686"
+ LIBDIRSUFFIX=""
+elif [ "$ARCH" = "x86_64" ]; then
+ SLKCFLAGS="-O2 -fPIC"
+ LIBDIRSUFFIX="64"
+else
+ SLKCFLAGS="-O2"
+ LIBDIRSUFFIX=""
+fi
+
+set -e
+
+rm -rf $PKG
+mkdir -p $TMP $PKG $OUTPUT
+cd $TMP
+rm -rf $PRGNAM-$VERSION
+tar xvf $CWD/$PRGNAM-$VERSION.tar.xz
+cd $PRGNAM-$VERSION
+cat $CWD/meson-drop-unused-argument-for-i18n.merge_file.patch | patch -p1
+
+chown -R root:root .
+find -L . \
+ \( -perm 777 -o -perm 775 -o -perm 750 -o -perm 711 -o -perm 555 \
+ -o -perm 511 \) -exec chmod 755 {} \; -o \
+ \( -perm 666 -o -perm 664 -o -perm 640 -o -perm 600 -o -perm 444 \
+ -o -perm 440 -o -perm 400 \) -exec chmod 644 {} \;
+
+mkdir build
+cd build
+ CFLAGS="$SLKCFLAGS" \
+ CXXFLAGS="$SLKCFLAGS" \
+ meson .. \
+ --buildtype=release \
+ --libdir=/usr/lib${LIBDIRSUFFIX} \
+ --localstatedir=/var \
+ --mandir=/usr/man \
+ --prefix=/usr \
+ --sysconfdir=/etc \
+ -Dstrip=true
+ ninja
+ DESTDIR=$PKG ninja install
+cd ..
+
+# Don't ship .la files:
+rm -f $PKG/{,usr/}lib${LIBDIRSUFFIX}/*.la
+
+find $PKG -print0 | xargs -0 file | grep -e "executable" -e "shared object" | grep ELF \
+ | cut -f 1 -d : | xargs strip --strip-unneeded 2> /dev/null || true
+
+find $PKG/usr/man -type f -exec gzip -9 {} \;
+for i in $( find $PKG/usr/man -type l ) ; do ln -s $( readlink $i ).gz $i.gz ; rm $i ; done
+
+mkdir -p $PKG/usr/doc/$PRGNAM-$VERSION
+DOCS="COPYING* NEWS"
+cp -a $DOCS $PKG/usr/doc/$PRGNAM-$VERSION
+cat $CWD/$PRGNAM.SlackBuild > $PKG/usr/doc/$PRGNAM-$VERSION/$PRGNAM.SlackBuild
+
+mkdir -p $PKG/install
+cat $CWD/slack-desc > $PKG/install/slack-desc
+cat $CWD/doinst.sh > $PKG/install/doinst.sh
+
+cd $PKG
+/sbin/makepkg -l y -c n $OUTPUT/$PRGNAM-$VERSION-$ARCH-$BUILD$TAG.$PKGTYPE
diff --git a/games/gnome-mahjongg/gnome-mahjongg.info b/games/gnome-mahjongg/gnome-mahjongg.info
new file mode 100644
index 0000000000..2170dd8e59
--- /dev/null
+++ b/games/gnome-mahjongg/gnome-mahjongg.info
@@ -0,0 +1,10 @@
+PRGNAM="gnome-mahjongg"
+VERSION="3.38.3"
+HOMEPAGE="https://wiki.gnome.org/Apps/Mahjongg"
+DOWNLOAD="https://download.gnome.org/sources/gnome-mahjongg/3.38/gnome-mahjongg-3.38.3.tar.xz"
+MD5SUM="1f1de4de650ee9e9481692339cb10024"
+DOWNLOAD_x86_64=""
+MD5SUM_x86_64=""
+REQUIRES=""
+MAINTAINER="Nathaniel Russell"
+EMAIL="naterussell83@gmail.com"
diff --git a/games/gnome-mahjongg/meson-drop-unused-argument-for-i18n.merge_file.patch b/games/gnome-mahjongg/meson-drop-unused-argument-for-i18n.merge_file.patch
new file mode 100644
index 0000000000..428dcadf87
--- /dev/null
+++ b/games/gnome-mahjongg/meson-drop-unused-argument-for-i18n.merge_file.patch
@@ -0,0 +1,35 @@
+From: Jan Beich <jbeich@FreeBSD.org>
+Date: Mon, 24 Jan 2022 11:22:48 +0000
+Subject: meson: drop unused argument for i18n.merge_file()
+
+Ignored in Meson < 0.60.0, deprecated since 0.60.1 and fatal since 0.61.0.
+
+data/meson.build:24:0: ERROR: Function does not take positional arguments.
+data/meson.build:45:0: ERROR: Function does not take positional arguments.
+
+(cherry picked from commit a2037b0747163601a5d5b57856d037eecf3a4db7)
+---
+ data/meson.build | 3 +--
+ 1 file changed, 1 insertion(+), 2 deletions(-)
+
+diff --git a/data/meson.build b/data/meson.build
+index 8142127..a1e5c96 100644
+--- a/data/meson.build
++++ b/data/meson.build
+@@ -22,7 +22,6 @@ install_data ('smooth.png', install_dir: join_paths (pkgdatadir, 'themes'))
+ install_data ('edu_kang_xi.png', install_dir: join_paths (pkgdatadir, 'themes'))
+
+ desktop_file = i18n.merge_file (
+- 'desktop-file',
+ input: 'org.gnome.Mahjongg.desktop.in',
+ output: 'org.gnome.Mahjongg.desktop',
+ install: true,
+@@ -42,7 +41,7 @@ if desktop_file_validate.found()
+ )
+ endif
+
+-appdata_file = i18n.merge_file ('appdata-file',
++appdata_file = i18n.merge_file (
+ input: 'org.gnome.Mahjongg.appdata.xml.in',
+ output: 'org.gnome.Mahjongg.appdata.xml',
+ install: true,
diff --git a/games/gnome-mahjongg/slack-desc b/games/gnome-mahjongg/slack-desc
new file mode 100644
index 0000000000..4f45f8de34
--- /dev/null
+++ b/games/gnome-mahjongg/slack-desc
@@ -0,0 +1,19 @@
+# HOW TO EDIT THIS FILE:
+# The "handy ruler" below makes it easier to edit a package description. Line
+# up the first '|' above the ':' following the base package name, and the '|' on
+# the right side marks the last column you can put a character in. You must make
+# exactly 11 lines for the formatting to be correct. It's also customary to
+# leave one space after the ':'.
+
+ |-----handy-ruler------------------------------------------------------|
+gnome-mahjongg: gnome-mahjongg (Gnome mahjongg game)
+gnome-mahjongg:
+gnome-mahjongg: Mahjongg game for gnome desktop.
+gnome-mahjongg:
+gnome-mahjongg: Mahjongg is a simple pattern recognition game. You score points by
+gnome-mahjongg: matching identical tiles
+gnome-mahjongg:
+gnome-mahjongg:
+gnome-mahjongg:
+gnome-mahjongg:
+gnome-mahjongg:
diff --git a/games/gnome-mines/README b/games/gnome-mines/README
new file mode 100644
index 0000000000..18effc0d09
--- /dev/null
+++ b/games/gnome-mines/README
@@ -0,0 +1,2 @@
+Mines (previously gnomine) is a puzzle game where you locate mines
+floating in an ocean using only your brain and a little bit of luck.
diff --git a/games/gnome-mines/doinst.sh b/games/gnome-mines/doinst.sh
new file mode 100644
index 0000000000..b123c0cd8d
--- /dev/null
+++ b/games/gnome-mines/doinst.sh
@@ -0,0 +1,14 @@
+if [ -x /usr/bin/update-desktop-database ]; then
+ /usr/bin/update-desktop-database -q usr/share/applications >/dev/null 2>&1
+fi
+
+if [ -e usr/share/icons/hicolor/icon-theme.cache ]; then
+ if [ -x /usr/bin/gtk-update-icon-cache ]; then
+ /usr/bin/gtk-update-icon-cache usr/share/icons/hicolor >/dev/null 2>&1
+ fi
+fi
+if [ -e usr/share/glib-2.0/schemas ]; then
+ if [ -x /usr/bin/glib-compile-schemas ]; then
+ /usr/bin/glib-compile-schemas usr/share/glib-2.0/schemas >/dev/null 2>&1
+ fi
+fi
diff --git a/games/gnome-mines/gnome-mines.SlackBuild b/games/gnome-mines/gnome-mines.SlackBuild
new file mode 100644
index 0000000000..cca3235ba1
--- /dev/null
+++ b/games/gnome-mines/gnome-mines.SlackBuild
@@ -0,0 +1,112 @@
+#!/bin/bash
+
+# Slackware build script for gnome-mines
+
+# Copyright 2022 Nathaniel Russell <naterussell83@gmail.com>
+# All rights reserved.
+#
+# Redistribution and use of this script, with or without modification, is
+# permitted provided that the following conditions are met:
+#
+# 1. Redistributions of this script must retain the above copyright
+# notice, this list of conditions and the following disclaimer.
+#
+# THIS SOFTWARE IS PROVIDED BY THE AUTHOR "AS IS" AND ANY EXPRESS OR IMPLIED
+# WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE IMPLIED WARRANTIES OF
+# MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE ARE DISCLAIMED. IN NO
+# EVENT SHALL THE AUTHOR BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL,
+# SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT LIMITED TO,
+# PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, DATA, OR PROFITS;
+# OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY,
+# WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR
+# OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF THIS SOFTWARE, EVEN IF
+# ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
+
+cd $(dirname $0) ; CWD=$(pwd)
+
+PRGNAM=gnome-mines
+VERSION=${VERSION:-40.1}
+BUILD=${BUILD:-1}
+TAG=${TAG:-_SBo}
+PKGTYPE=${PKGTYPE:-tgz}
+
+if [ -z "$ARCH" ]; then
+ case "$( uname -m )" in
+ i?86) ARCH=i586 ;;
+ arm*) ARCH=arm ;;
+ *) ARCH=$( uname -m ) ;;
+ esac
+fi
+
+if [ ! -z "${PRINT_PACKAGE_NAME}" ]; then
+ echo "$PRGNAM-$VERSION-$ARCH-$BUILD$TAG.$PKGTYPE"
+ exit 0
+fi
+
+TMP=${TMP:-/tmp/SBo}
+PKG=$TMP/package-$PRGNAM
+OUTPUT=${OUTPUT:-/tmp}
+
+if [ "$ARCH" = "i586" ]; then
+ SLKCFLAGS="-O2 -march=i586 -mtune=i686"
+ LIBDIRSUFFIX=""
+elif [ "$ARCH" = "i686" ]; then
+ SLKCFLAGS="-O2 -march=i686 -mtune=i686"
+ LIBDIRSUFFIX=""
+elif [ "$ARCH" = "x86_64" ]; then
+ SLKCFLAGS="-O2 -fPIC"
+ LIBDIRSUFFIX="64"
+else
+ SLKCFLAGS="-O2"
+ LIBDIRSUFFIX=""
+fi
+
+set -e
+
+rm -rf $PKG
+mkdir -p $TMP $PKG $OUTPUT
+cd $TMP
+rm -rf $PRGNAM-$VERSION
+tar xvf $CWD/$PRGNAM-$VERSION.tar.xz
+cd $PRGNAM-$VERSION
+chown -R root:root .
+find -L . \
+ \( -perm 777 -o -perm 775 -o -perm 750 -o -perm 711 -o -perm 555 \
+ -o -perm 511 \) -exec chmod 755 {} \; -o \
+ \( -perm 666 -o -perm 664 -o -perm 640 -o -perm 600 -o -perm 444 \
+ -o -perm 440 -o -perm 400 \) -exec chmod 644 {} \;
+
+mkdir -p build
+cd build
+ CFLAGS="$SLKCFLAGS" \
+ CXXFLAGS="$SLKCFLAGS" \
+ meson .. \
+ --buildtype=release \
+ --infodir=/usr/info \
+ --libdir=/usr/lib${LIBDIRSUFFIX} \
+ --localstatedir=/var \
+ --mandir=/usr/man \
+ --prefix=/usr \
+ --sysconfdir=/etc
+
+"${NINJA:=ninja}"
+ DESTDIR=$PKG $NINJA install
+cd ..
+
+find $PKG -print0 | xargs -0 file | grep -e "executable" -e "shared object" | grep ELF \
+ | cut -f 1 -d : | xargs strip --strip-unneeded 2> /dev/null || true
+
+find $PKG/usr/man -type f -exec gzip -9 {} \;
+for i in $(find $PKG/usr/man -type l); do ln -s $(readlink $i).gz $i.gz; rm $i; done
+
+mkdir -p $PKG/usr/doc/$PRGNAM-$VERSION
+cp -a COPYING* NEWS README.md \
+ $PKG/usr/doc/$PRGNAM-$VERSION
+cat $CWD/$PRGNAM.SlackBuild > $PKG/usr/doc/$PRGNAM-$VERSION/$PRGNAM.SlackBuild
+
+mkdir -p $PKG/install
+cat $CWD/slack-desc > $PKG/install/slack-desc
+cat $CWD/doinst.sh > $PKG/install/doinst.sh
+
+cd $PKG
+/sbin/makepkg -l y -c n $OUTPUT/$PRGNAM-$VERSION-$ARCH-$BUILD$TAG.$PKGTYPE
diff --git a/games/gnome-mines/gnome-mines.info b/games/gnome-mines/gnome-mines.info
new file mode 100644
index 0000000000..7d53e422a5
--- /dev/null
+++ b/games/gnome-mines/gnome-mines.info
@@ -0,0 +1,10 @@
+PRGNAM="gnome-mines"
+VERSION="40.1"
+HOMEPAGE="https://wiki.gnome.org/Apps/Mines"
+DOWNLOAD="https://download.gnome.org/sources/gnome-mines/40/gnome-mines-40.1.tar.xz"
+MD5SUM="e97ed3fd975048f70c1e7a38b1932046"
+DOWNLOAD_x86_64=""
+MD5SUM_x86_64=""
+REQUIRES="libgnome-games-support"
+MAINTAINER="Nathaniel Russell"
+EMAIL="naterussell83@gmail.com"
diff --git a/games/gnome-mines/slack-desc b/games/gnome-mines/slack-desc
new file mode 100644
index 0000000000..c72b754783
--- /dev/null
+++ b/games/gnome-mines/slack-desc
@@ -0,0 +1,19 @@
+# HOW TO EDIT THIS FILE:
+# The "handy ruler" below makes it easier to edit a package description.
+# Line up the first '|' above the ':' following the base package name, and
+# the '|' on the right side marks the last column you can put a character in.
+# You must make exactly 11 lines for the formatting to be correct. It's also
+# customary to leave one space after the ':' except on otherwise blank lines.
+
+ |-----handy-ruler------------------------------------------------------|
+gnome-mines: gnome-mines (Puzzle Game)
+gnome-mines:
+gnome-mines: Mines (previously gnomine) is a puzzle game where you locate mines
+gnome-mines: floating in an ocean using only your brain and a little bit of luck.
+gnome-mines:
+gnome-mines: Homepage: https://gitlab.gnome.org/GNOME/gnome-mines
+gnome-mines:
+gnome-mines:
+gnome-mines:
+gnome-mines:
+gnome-mines:
diff --git a/games/gnonograms/README b/games/gnonograms/README
index 2929e4b5ab..ad58ad20b6 100644
--- a/games/gnonograms/README
+++ b/games/gnonograms/README
@@ -1,4 +1,4 @@
Gnonograms is an implementation of the Japanese logic puzzle
"Nonograms", also known as "Tsunami", "Griddlers" .....". The object of
the game is to discover the pattern in the grid which is encoded by the
-clues which are give for each row and column.
+clues which are given for each row and column.
diff --git a/games/gnonograms/gnonogram-controller.diff.txt b/games/gnonograms/gnonogram-controller.diff.txt
new file mode 100644
index 0000000000..ff2ef945c3
--- /dev/null
+++ b/games/gnonograms/gnonogram-controller.diff.txt
@@ -0,0 +1,22 @@
+--- gnonograms3-0.9.9.3.orig/src/Gnonogram_controller.vala 2022-03-06 21:13:21.361933019 +0900
++++ gnonograms3-0.9.9.3/src/Gnonogram_controller.vala 2022-03-06 21:14:58.313462343 +0900
+@@ -244,8 +244,8 @@
+ {
+ double maxrowheight, maxcolwidth, deffontheight;
+
+- maxrowheight=screen_height/((double)(r)*1.4);
+- maxcolwidth=screen_width/((double)(c)*1.4);
++ maxrowheight=screen_height/((double)r*1.4);
++ maxcolwidth=screen_width/((double)c*1.4);
+ deffontheight=double.min(maxrowheight,maxcolwidth)/2;
+
+ _rowbox.set_font_height(deffontheight);
+@@ -948,7 +948,7 @@
+ int hours= ((int)seconds)/3600;
+ seconds-=((double)hours)*3600.000;
+ int minutes=((int)seconds)/60;
+- seconds-=(double)(minutes)*60.000;
++ seconds-=((double)minutes)*60.000;
+ string s=(_("Time taken: %d hours, %d minutes, %8.3f seconds")).printf(hours, minutes, seconds) +"\n\n";
+ if (_penalty) s=s+(_("Including %4.0f seconds time penalty")).printf(_time_penalty);
+ return s;
diff --git a/games/gnonograms/gnonograms.SlackBuild b/games/gnonograms/gnonograms.SlackBuild
index 9805310bcf..4048c10cd8 100644
--- a/games/gnonograms/gnonograms.SlackBuild
+++ b/games/gnonograms/gnonograms.SlackBuild
@@ -1,4 +1,4 @@
-#!/bin/sh
+#!/bin/bash
#
# Slackware build script for Gnonograms
#
@@ -22,27 +22,34 @@
# OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF THIS SOFTWARE, EVEN IF
# ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
+cd $(dirname $0) ; CWD=$(pwd)
+
PRGNAM=gnonograms
SRCNAM=gnonograms3
VERSION=${VERSION:-0.9.9.3}
BUILD=${BUILD:-1}
TAG=${TAG:-_SBo}
+PKGTYPE=${PKGTYPE:-tgz}
-CWD=$(pwd)
TMP=${TMP:-/tmp/SBo}
PKG=$TMP/package-$PRGNAM
OUTPUT=${OUTPUT:-/tmp}
if [ -z "$ARCH" ]; then
case "$( uname -m )" in
- i?86) ARCH=i486 ;;
+ i?86) ARCH=i586 ;;
arm*) ARCH=arm ;;
*) ARCH=$( uname -m ) ;;
esac
fi
-if [ "$ARCH" = "i486" ]; then
- SLKCFLAGS="-O2 -march=i486 -mtune=i686"
+if [ ! -z "${PRINT_PACKAGE_NAME}" ]; then
+ echo "$PRGNAM-$VERSION-$ARCH-$BUILD$TAG.$PKGTYPE"
+ exit 0
+fi
+
+if [ "$ARCH" = "i586" ]; then
+ SLKCFLAGS="-O2 -march=i586 -mtune=i686"
LIBDIRSUFFIX=""
elif [ "$ARCH" = "i686" ]; then
SLKCFLAGS="-O2 -march=i686 -mtune=i686"
@@ -66,6 +73,8 @@ cd $SRCNAM-$VERSION
chown -R root:root .
chmod -R u+w,go+r-w,a-s .
+patch -p1 < $CWD/gnonogram-controller.diff.txt
+
CFLAGS="$SLKCFLAGS" \
CXXFLAGS="$SLKCFLAGS" \
./configure \
@@ -88,4 +97,4 @@ cat $CWD/slack-desc > $PKG/install/slack-desc
cat $CWD/doinst.sh > $PKG/install/doinst.sh
cd $PKG
-/sbin/makepkg -l y -c n $OUTPUT/$PRGNAM-$VERSION-$ARCH-$BUILD$TAG.${PKGTYPE:-tgz}
+/sbin/makepkg -l y -c n $OUTPUT/$PRGNAM-$VERSION-$ARCH-$BUILD$TAG.$PKGTYPE
diff --git a/games/gnonograms/gnonograms.info b/games/gnonograms/gnonograms.info
index 9be93d487c..1f77dbc974 100644
--- a/games/gnonograms/gnonograms.info
+++ b/games/gnonograms/gnonograms.info
@@ -5,6 +5,6 @@ DOWNLOAD="http://ponce.cc/slackware/sources/repo/gnonograms3-0.9.9.3.tar.gz"
MD5SUM="dc2b86cf2062acacc6a86e66c89af317"
DOWNLOAD_x86_64=""
MD5SUM_x86_64=""
-REQUIRES="vala"
+REQUIRES=""
MAINTAINER="Erik Hanson"
EMAIL="erik@slackbuilds.org"
diff --git a/games/gnubg/gnubg.SlackBuild b/games/gnubg/gnubg.SlackBuild
index 2e987b8125..307598ed5e 100644
--- a/games/gnubg/gnubg.SlackBuild
+++ b/games/gnubg/gnubg.SlackBuild
@@ -1,4 +1,4 @@
-#!/bin/sh
+#!/bin/bash
# Slackware build script for GNU Backgammon
@@ -22,12 +22,14 @@
# OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF THIS SOFTWARE, EVEN IF
# ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
+cd $(dirname $0) ; CWD=$(pwd)
+
PRGNAM=gnubg
-VERSION=${VERSION:-1.05.000}
+VERSION=${VERSION:-1.06.002}
BUILD=${BUILD:-1}
TAG=${TAG:-_SBo}
+PKGTYPE=${PKGTYPE:-tgz}
-CWD=$(pwd)
TMP=${TMP:-/tmp/SBo}
PKG=$TMP/package-$PRGNAM
OUTPUT=${OUTPUT:-/tmp}
@@ -40,6 +42,11 @@ if [ -z "$ARCH" ]; then
esac
fi
+if [ ! -z "${PRINT_PACKAGE_NAME}" ]; then
+ echo "$PRGNAM-$VERSION-$ARCH-$BUILD$TAG.$PKGTYPE"
+ exit 0
+fi
+
if [ "$ARCH" = "i586" ]; then
SLKCFLAGS="-O2 -march=i586 -mtune=i686"
LIBDIRSUFFIX=""
@@ -69,8 +76,6 @@ find -L . \
\( -perm 666 -o -perm 664 -o -perm 640 -o -perm 600 -o -perm 444 \
-o -perm 440 -o -perm 400 \) -exec chmod 644 {} \;
-./autogen.sh
-
LDFLAGS="-L/usr/lib${LIBDIRSUFFIX}" \
CFLAGS="$SLKCFLAGS" \
./configure \
@@ -98,4 +103,4 @@ cat $CWD/doinst.sh > $PKG/install/doinst.sh
cat $CWD/slack-desc > $PKG/install/slack-desc
cd $PKG
-/sbin/makepkg -l y -c n $OUTPUT/$PRGNAM-$VERSION-$ARCH-$BUILD$TAG.${PKGTYPE:-tgz}
+/sbin/makepkg -l y -c n $OUTPUT/$PRGNAM-$VERSION-$ARCH-$BUILD$TAG.$PKGTYPE
diff --git a/games/gnubg/gnubg.info b/games/gnubg/gnubg.info
index 1177b1233d..ef27aa0d93 100644
--- a/games/gnubg/gnubg.info
+++ b/games/gnubg/gnubg.info
@@ -1,8 +1,8 @@
PRGNAM="gnubg"
-VERSION="1.05.000"
-HOMEPAGE="http://www.gnubg.org/"
-DOWNLOAD="http://gnubg.org/media/sources/gnubg-release-1.05.000-sources.tar.gz"
-MD5SUM="2c2d291deedcb72d1fcbbd8faf90d55c"
+VERSION="1.06.002"
+HOMEPAGE="https://www.gnubg.org/"
+DOWNLOAD="https://ftp.gnu.org/gnu/gnubg/gnubg-release-1.06.002-sources.tar.gz"
+MD5SUM="d3823526d5c503a961024d761adefd5e"
DOWNLOAD_x86_64=""
MD5SUM_x86_64=""
REQUIRES=""
diff --git a/games/gnugo/gnugo.SlackBuild b/games/gnugo/gnugo.SlackBuild
index 04ede86123..42bbef4a0a 100644
--- a/games/gnugo/gnugo.SlackBuild
+++ b/games/gnugo/gnugo.SlackBuild
@@ -1,4 +1,4 @@
-#!/bin/sh
+#!/bin/bash
# Slackware build script for gnugo
@@ -22,10 +22,13 @@
# OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF THIS SOFTWARE, EVEN IF
# ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
+cd $(dirname $0) ; CWD=$(pwd)
+
PRGNAM=gnugo
VERSION=${VERSION:-3.8}
BUILD=${BUILD:-1}
TAG=${TAG:-_SBo}
+PKGTYPE=${PKGTYPE:-tgz}
if [ -z "$ARCH" ]; then
case "$( uname -m )" in
@@ -35,7 +38,14 @@ if [ -z "$ARCH" ]; then
esac
fi
-CWD=$(pwd)
+# If the variable PRINT_PACKAGE_NAME is set, then this script will report what
+# the name of the created package would be, and then exit. This information
+# could be useful to other scripts.
+if [ ! -z "${PRINT_PACKAGE_NAME}" ]; then
+ echo "$PRGNAM-$VERSION-$ARCH-$BUILD$TAG.$PKGTYPE"
+ exit 0
+fi
+
TMP=${TMP:-/tmp/SBo}
PKG=$TMP/package-$PRGNAM
OUTPUT=${OUTPUT:-/tmp}
@@ -69,7 +79,7 @@ find -L . \
\( -perm 666 -o -perm 664 -o -perm 640 -o -perm 600 -o -perm 444 \
-o -perm 440 -o -perm 400 \) -exec chmod 644 {} \;
-CFLAGS="$SLKCFLAGS" \
+CFLAGS="$SLKCFLAGS -fcommon" \
CXXFLAGS="$SLKCFLAGS" \
./configure \
--prefix=/usr \
@@ -95,4 +105,4 @@ mkdir -p $PKG/install
cat $CWD/slack-desc > $PKG/install/slack-desc
cd $PKG
-/sbin/makepkg -l y -c n $OUTPUT/$PRGNAM-$VERSION-$ARCH-$BUILD$TAG.${PKGTYPE:-tgz}
+/sbin/makepkg -l y -c n $OUTPUT/$PRGNAM-$VERSION-$ARCH-$BUILD$TAG.$PKGTYPE
diff --git a/games/gnurobbo/gnurobbo.SlackBuild b/games/gnurobbo/gnurobbo.SlackBuild
index a85be7ff33..5eb59a3f79 100644
--- a/games/gnurobbo/gnurobbo.SlackBuild
+++ b/games/gnurobbo/gnurobbo.SlackBuild
@@ -1,4 +1,4 @@
-#!/bin/sh
+#!/bin/bash
# Slackware build script for gnurobbo
@@ -22,10 +22,18 @@
# OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF THIS SOFTWARE, EVEN IF
# ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
+# 20220220 bkw: Modified by SlackBuilds.org, BUILD=2:
+# - fix build on 15.0.
+# - actually use SLKCFLAGS.
+# - move installed docs to correct doc dir (not /usr/share/gnurobbo).
+
+cd $(dirname $0) ; CWD=$(pwd)
+
PRGNAM=gnurobbo
VERSION=${VERSION:-0.66}
-BUILD=${BUILD:-1}
+BUILD=${BUILD:-2}
TAG=${TAG:-_SBo}
+PKGTYPE=${PKGTYPE:-tgz}
if [ -z "$ARCH" ]; then
case "$( uname -m )" in
@@ -35,7 +43,11 @@ if [ -z "$ARCH" ]; then
esac
fi
-CWD=$(pwd)
+if [ ! -z "${PRINT_PACKAGE_NAME}" ]; then
+ echo "$PRGNAM-$VERSION-$ARCH-$BUILD$TAG.$PKGTYPE"
+ exit 0
+fi
+
TMP=${TMP:-/tmp/SBo}
PKG=$TMP/package-$PRGNAM
OUTPUT=${OUTPUT:-/tmp}
@@ -65,9 +77,9 @@ cd $PRGNAM-$VERSION
chown -R root:root .
find -L . \
\( -perm 777 -o -perm 775 -o -perm 750 -o -perm 711 -o -perm 555 \
- -o -perm 511 \) -exec chmod 755 {} \; -o \
+ -o -perm 511 \) -exec chmod 755 {} \+ -o \
\( -perm 666 -o -perm 664 -o -perm 640 -o -perm 600 -o -perm 444 \
- -o -perm 440 -o -perm 400 \) -exec chmod 644 {} \;
+ -o -perm 440 -o -perm 400 \) -exec chmod 644 {} \+
# fix the linking process
patch -p0 < $CWD/gnurobbo-fix_linking.diff
@@ -79,19 +91,18 @@ if [ ! $TTFONTS == "yes" ]; then
-e 's/#FONT_USE_PIXMAP/FONT_USE_PIXMAP/'
fi
+sed -i "/^CFLAGS/s,-O3,$SLKCFLAGS -fcommon," Makefile
+
make \
PACKAGE_DATA_DIR=/usr/share/games/$PRGNAM \
BINDIR=/usr/games \
DOCDIR=/usr/share/$PRGNAM \
-# CFLAGS="$SLKCFLAGS" \
-# CXXFLAGS="$SLKCFLAGS"
make install BINDIR=$PKG/usr/games \
- DOCDIR=$PKG/usr/share/$PRGNAM \
+ DOCDIR=$PKG/usr/doc/$PRGNAM-$VERSION \
PACKAGE_DATA_DIR=$PKG/usr/share/games/$PRGNAM
-find $PKG -print0 | xargs -0 file | grep -e "executable" -e "shared object" | grep ELF \
- | cut -f 1 -d : | xargs strip --strip-unneeded 2> /dev/null || true
+strip $PKG/usr/games/$PRGNAM
mkdir -p $PKG/usr/doc/$PRGNAM-$VERSION
cp -a \
@@ -103,4 +114,4 @@ mkdir -p $PKG/install
cat $CWD/slack-desc > $PKG/install/slack-desc
cd $PKG
-/sbin/makepkg -l y -c n $OUTPUT/$PRGNAM-$VERSION-$ARCH-$BUILD$TAG.${PKGTYPE:-tgz}
+/sbin/makepkg -l y -c n $OUTPUT/$PRGNAM-$VERSION-$ARCH-$BUILD$TAG.$PKGTYPE
diff --git a/games/gnuski/gnuski.SlackBuild b/games/gnuski/gnuski.SlackBuild
index b601627f35..5219026331 100644
--- a/games/gnuski/gnuski.SlackBuild
+++ b/games/gnuski/gnuski.SlackBuild
@@ -1,23 +1,33 @@
-#!/bin/sh
+#!/bin/bash
# Slackware build script for gnuski
# Written by Vincent Batts, vbatts@hashbangbash.com
+cd $(dirname $0) ; CWD=$(pwd)
+
PRGNAM=gnuski
VERSION=${VERSION:-0.3}
BUILD=${BUILD:-1}
TAG=${TAG:-_SBo}
+PKGTYPE=${PKGTYPE:-tgz}
if [ -z "$ARCH" ]; then
case "$( uname -m )" in
- i?86) ARCH=i486 ;;
+ i?86) ARCH=i586 ;;
arm*) ARCH=arm ;;
*) ARCH=$( uname -m ) ;;
esac
fi
-CWD=$(pwd)
+# If the variable PRINT_PACKAGE_NAME is set, then this script will report what
+# the name of the created package would be, and then exit. This information
+# could be useful to other scripts.
+if [ ! -z "${PRINT_PACKAGE_NAME}" ]; then
+ echo "$PRGNAM-$VERSION-$ARCH-$BUILD$TAG.$PKGTYPE"
+ exit 0
+fi
+
TMP=${TMP:-/tmp/SBo}
PKG=$TMP/package-$PRGNAM
OUTPUT=${OUTPUT:-/tmp}
@@ -53,4 +63,4 @@ mkdir -p $PKG/install
cat $CWD/slack-desc > $PKG/install/slack-desc
cd $PKG
-/sbin/makepkg -l y -c n $OUTPUT/$PRGNAM-$VERSION-$ARCH-$BUILD$TAG.${PKGTYPE:-tgz}
+/sbin/makepkg -l y -c n $OUTPUT/$PRGNAM-$VERSION-$ARCH-$BUILD$TAG.$PKGTYPE
diff --git a/games/golly/golly.SlackBuild b/games/golly/golly.SlackBuild
index 2fd8c86b98..431f32c005 100644
--- a/games/golly/golly.SlackBuild
+++ b/games/golly/golly.SlackBuild
@@ -1,9 +1,9 @@
-#!/bin/sh
+#!/bin/bash
# Slackware build script for golly
# Copyright 2012-15, Glenn Becker, Arlington MA USA
-# Now maintained by B. Watson <yalhcru@gmail.com>
+# Now maintained by B. Watson <urchlay@slackware.uk>
# All rights reserved.
#
# Redistribution and use of this script, with or without modification, is
@@ -24,6 +24,9 @@
# ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
# Updated for golly 2.6 -- the source directory structure got changed a bit too!
+# 20230822 bkw: update for v4.2. note that REQUIRES changed to wxWidgets, as
+# this version needs wxWidgets-3.1 or greater.
+# 20211118 bkw: BUILD=2, new-style icons, tweak .desktop file.
# 20201112 bkw: update for v4.0. Which adds a python3 dep.
# 20181211 bkw:
# - Take over maintenance.
@@ -35,10 +38,13 @@
# is invited to investigate why this happens...
# - Minor simplifications and cleanups.
+cd $(dirname $0) ; CWD=$(pwd)
+
PRGNAM=golly
-VERSION=${VERSION:-4.0}
+VERSION=${VERSION:-4.2}
BUILD=${BUILD:-1}
TAG=${TAG:-_SBo}
+PKGTYPE=${PKGTYPE:-tgz}
if [ -z "$ARCH" ]; then
case "$( uname -m )" in
@@ -48,7 +54,11 @@ if [ -z "$ARCH" ]; then
esac
fi
-CWD=$(pwd)
+if [ ! -z "${PRINT_PACKAGE_NAME}" ]; then
+ echo "$PRGNAM-$VERSION-$ARCH-$BUILD$TAG.$PKGTYPE"
+ exit 0
+fi
+
TMP=${TMP:-/tmp/SBo}
PKG=$TMP/package-$PRGNAM
OUTPUT=${OUTPUT:-/tmp}
@@ -80,32 +90,36 @@ find -L . -perm /111 -a \! -perm 755 -a -exec chmod 755 {} \+ -o \
\! -perm /111 -a \! -perm 644 -a -exec chmod 644 {} \+
# 20181211 bkw: wxPython and wxGTK3 both install a /usr/bin/wx-config
-# symlink. We *need* wxGTK3, so don't trust the symlink as it points to
-# whichever was most recently installed.
-WXDEF="$( /bin/ls /usr/lib$LIBDIRSUFFIX/wx/config/gtk*unicode*3.0 | head -1 )"
+# symlink. We *need* wxWidgets-3.2.x, so don't trust the symlink as it points
+# to whichever was most recently installed.
+WXDEF="$( /bin/ls /usr/lib$LIBDIRSUFFIX/wx/config/gtk*unicode*3.2 | head -1 )"
WXCONF="${WXCONF:-$WXDEF}"
if [ -z "$WXCONF" ]; then
- echo "Can't find wxGTK3-3.0.x, install wxGTK3 or set WXCONF in environment." 1>&2
+ echo "Can't find wxGTK3-3.0.x, install wxWidgets or set WXCONF in environment." 1>&2
exit 1
fi
SHAREDIR=/usr/share/games/$PRGNAM
-# 20201112 bkw: golly is the only project I ever heard of that
-# migrated from autotools back to a plain Makefile. So we can't build
-# versions < 4.0 any more, sorry.
-# We don't enable sound because it needs a proprietary non-free
-# library called irrKlang, which we don't (yet?) have on SBo and
-# I'm in no hurry to add.
+# 20230822 bkw: golly is the only project I ever heard of that
+# migrated from autotools back to a plain Makefile. I approve, but it
+# means we can't build versions < 4.0 any more, sorry.
+# 20230822 bkw: in 4.2, sound support uses SDL, so we can enable it.
+# Note to self: to test whether sound works, Scripts -> Lua -> credits.lua
+# plays a song while showing scrolling credits.
cd gui-wx
cat > local-gtk.mk <<EOF
WX_CONFIG = $WXCONF
PYTHON = python3
ENABLE_PERL = 1
+ENABLE_SOUND = 1
CXXFLAGS = $SLKCFLAGS
GOLLYDIR = $SHAREDIR
EOF
+# 20230822 bkw: don't trust this.
+echo > local-gtk-template.mk
+
make -f makefile-gtk
cd ..
@@ -116,18 +130,19 @@ cp -a Help Patterns Rules Scripts $PKG/$SHAREDIR
# Don't need +x permissions on HTML pages, or even Lua/Python scripts.
find $PKG/$SHAREDIR -type f -exec chmod 644 {} +
-cd gui-wx/icons
-for i in 16 32 48; do
- convert appicon${i}.ico -resize ${i}x${i}! $PRGNAM-${i}.png
- DIR=$PKG/usr/share/icons/hicolor/${i}x${i}/apps/
- mkdir -p $DIR
- install -m 0644 $PRGNAM-${i}.png $DIR/$PRGNAM.png
+# icons extracted from app.icns with icns2png, to get the 64x64 and 128x128 ones.
+for i in $CWD/icons/*.png; do
+ px="$( basename $i .png )"
+ size=${px}x${px}
+ dir=$PKG/usr/share/icons/hicolor/$size/apps
+ mkdir -p $dir
+ cat $i > $dir/$PRGNAM.png
done
mkdir -p $PKG/usr/share/pixmaps
ln -s ../icons/hicolor/48x48/apps/$PRGNAM.png $PKG/usr/share/pixmaps/$PRGNAM.png
-cd ../../docs
+cd docs
mkdir -p $PKG/usr/doc/$PRGNAM-$VERSION
cp -a License.html ReadMe.html ToDo.html $PKG/usr/doc/$PRGNAM-$VERSION
cat $CWD/$PRGNAM.SlackBuild > $PKG/usr/doc/$PRGNAM-$VERSION/$PRGNAM.SlackBuild
@@ -148,4 +163,4 @@ cat $CWD/slack-desc > $PKG/install/slack-desc
cat $CWD/doinst.sh > $PKG/install/doinst.sh
cd $PKG
-/sbin/makepkg -l y -c n $OUTPUT/$PRGNAM-$VERSION-$ARCH-$BUILD$TAG.${PKGTYPE:-tgz}
+/sbin/makepkg -l y -c n $OUTPUT/$PRGNAM-$VERSION-$ARCH-$BUILD$TAG.$PKGTYPE
diff --git a/games/golly/golly.desktop b/games/golly/golly.desktop
index b5d1f6baf6..9f7f091d4c 100644
--- a/games/golly/golly.desktop
+++ b/games/golly/golly.desktop
@@ -5,4 +5,4 @@ Comment=Cellular Automata Simulator
Terminal=false
Exec=/usr/games/golly
Icon=golly
-Categories=Game;
+Categories=Game;Simulation;
diff --git a/games/golly/golly.info b/games/golly/golly.info
index d4bcd21a5a..38a14b032d 100644
--- a/games/golly/golly.info
+++ b/games/golly/golly.info
@@ -1,10 +1,10 @@
PRGNAM="golly"
-VERSION="4.0"
+VERSION="4.2"
HOMEPAGE="http://golly.sourceforge.net/"
-DOWNLOAD="http://sourceforge.net/projects/golly/files/golly/golly-4.0/golly-4.0-src.tar.gz"
-MD5SUM="1f8713687745b542473b4218ed1cf05a"
+DOWNLOAD="http://sourceforge.net/projects/golly/files/golly/golly-4.2/golly-4.2-src.tar.gz"
+MD5SUM="bb8d61dc6302df517d216310ba29780f"
DOWNLOAD_x86_64=""
MD5SUM_x86_64=""
-REQUIRES="wxGTK3 python3"
+REQUIRES="wxWidgets"
MAINTAINER="B. Watson"
-EMAIL="yalhcru@gmail.com"
+EMAIL="urchlay@slackware.uk"
diff --git a/games/golly/icons/128.png b/games/golly/icons/128.png
new file mode 100644
index 0000000000..d37e03e434
--- /dev/null
+++ b/games/golly/icons/128.png
Binary files differ
diff --git a/games/golly/icons/16.png b/games/golly/icons/16.png
new file mode 100644
index 0000000000..681466fdd6
--- /dev/null
+++ b/games/golly/icons/16.png
Binary files differ
diff --git a/games/golly/icons/32.png b/games/golly/icons/32.png
new file mode 100644
index 0000000000..cbeec1bed6
--- /dev/null
+++ b/games/golly/icons/32.png
Binary files differ
diff --git a/games/golly/icons/48.png b/games/golly/icons/48.png
new file mode 100644
index 0000000000..b8c66370fd
--- /dev/null
+++ b/games/golly/icons/48.png
Binary files differ
diff --git a/games/goonies/gcc6.patch b/games/goonies/gcc6.patch
new file mode 100644
index 0000000000..f586243cf1
--- /dev/null
+++ b/games/goonies/gcc6.patch
@@ -0,0 +1,12 @@
+diff -Naur goonies-1.4.1528.orig/src/auxiliar.cpp goonies-1.4.1528/src/auxiliar.cpp
+--- goonies-1.4.1528.orig/src/auxiliar.cpp 2009-03-12 09:43:32.000000000 +0100
++++ goonies-1.4.1528/src/auxiliar.cpp 2017-06-23 10:24:12.765749591 +0200
+@@ -94,7 +94,7 @@
+
+ if (tmp == 0 ||
+ mask == 0)
+- return false;
++ return 0;
+
+ res = SDL_DisplayFormatAlpha(tmp);
+
diff --git a/games/goonies/goonies.SlackBuild b/games/goonies/goonies.SlackBuild
index a301b7f37d..51651bc7b9 100644
--- a/games/goonies/goonies.SlackBuild
+++ b/games/goonies/goonies.SlackBuild
@@ -1,4 +1,4 @@
-#!/bin/sh
+#!/bin/bash
# Slackware build script for goonies
@@ -22,10 +22,13 @@
# OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF THIS SOFTWARE, EVEN IF
# ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
+cd $(dirname $0) ; CWD=$(pwd)
+
PRGNAM=goonies
VERSION=${VERSION:-1.4.1528}
BUILD=${BUILD:-1}
TAG=${TAG:-_SBo}
+PKGTYPE=${PKGTYPE:-tgz}
SRCNAM=$PRGNAM.src
@@ -37,7 +40,14 @@ if [ -z "$ARCH" ]; then
esac
fi
-CWD=$(pwd)
+# If the variable PRINT_PACKAGE_NAME is set, then this script will report what
+# the name of the created package would be, and then exit. This information
+# could be useful to other scripts.
+if [ ! -z "${PRINT_PACKAGE_NAME}" ]; then
+ echo "$PRGNAM-$VERSION-$ARCH-$BUILD$TAG.$PKGTYPE"
+ exit 0
+fi
+
TMP=${TMP:-/tmp/SBo}
PKG=$TMP/package-$PRGNAM
OUTPUT=${OUTPUT:-/tmp}
@@ -71,6 +81,9 @@ find -L . \
\( -perm 666 -o -perm 664 -o -perm 640 -o -perm 600 -o -perm 444 \
-o -perm 440 -o -perm 400 \) -exec chmod 644 {} \;
+# Fix for the newer compilers
+patch -p1 < $CWD/gcc6.patch
+
# fix linker and installation paths
patch -p1 < $CWD/makefile.patch
@@ -88,4 +101,4 @@ cat $CWD/slack-desc > $PKG/install/slack-desc
cat $CWD/doinst.sh > $PKG/install/doinst.sh
cd $PKG
-/sbin/makepkg -l y -c n $OUTPUT/$PRGNAM-$VERSION-$ARCH-$BUILD$TAG.${PKGTYPE:-tgz}
+/sbin/makepkg -l y -c n $OUTPUT/$PRGNAM-$VERSION-$ARCH-$BUILD$TAG.$PKGTYPE
diff --git a/games/gottet/README b/games/gottet/README
index eb670fbd26..6815fc1445 100644
--- a/games/gottet/README
+++ b/games/gottet/README
@@ -1 +1,7 @@
-gottet is a simple tetris clone.
+gottet (A basic tetris clone)
+
+gottet is a simple tetris clone with a Qt user interface.
+
+Note: this is the last version of gottet that will build with qt5.
+Starting with 1.2.1, gottet requires qt6, and the maintainer of this
+SlackBuild isn't interested in supporting it.
diff --git a/games/gottet/gottet.SlackBuild b/games/gottet/gottet.SlackBuild
index 3b150abd57..4db31b808c 100644
--- a/games/gottet/gottet.SlackBuild
+++ b/games/gottet/gottet.SlackBuild
@@ -1,29 +1,21 @@
-#!/bin/sh
+#!/bin/bash
# Slackware build script for gottet
# Originally written by:
-# Ryan P.C. McQuen | Everett, WA | ryanpcmcquen@member.fsf.org
+# Ryan P.C. McQuen | Everett, WA | email removed
+# Now maintained by B. Watson (urchlay@slackware.uk)
-# Now maintained by B. Watson (yalhcru@gmail.com)
+# Licensed under the WTFPL. See http://www.wtfpl.net/txt/copying/ for details.
-# This program is free software: you can redistribute it and/or modify
-# it under the terms of the GNU General Public License as published by
-# the Free Software Foundation; either version 2 of the License, or
-# (at your option) any later version, with the following exception:
-# the text of the GPL license may be omitted.
+# 20230107 bkw: add this note: gottet-1.2.1 has been released, but
+# it requires qt6. SBo actually has qt6 now, but I don't want it as a
+# giant dependency for this small game. It's a Tetris clone, there are
+# hundreds of them, this one isn't worth the hassle.
-# This program is distributed in the hope that it will be useful, but
-# without any warranty; without even the implied warranty of
-# merchantability or fitness for a particular purpose. Compiling,
-# interpreting, executing or merely reading the text of the program
-# may result in lapses of consciousness and/or very being, up to and
-# including the end of all existence and the Universe as we know it.
-# See the GNU General Public License for more details.
-
-# You may have received a copy of the GNU General Public License along
-# with this program (most likely, a file named COPYING). If not, see
-# <http://www.gnu.org/licenses/>.
+# 20211008 bkw:
+# - relicensed with permission from Ryan.
+# - update for v1.2.0. qt5 now in Slackware...
# 20170309 bkw:
# - take over maintenance
@@ -34,10 +26,13 @@
# - support SLKCFLAGS
# - BUILD=2
+cd $(dirname $0) ; CWD=$(pwd)
+
PRGNAM=gottet
-VERSION=${VERSION:-1.0.6}
-BUILD=${BUILD:-2}
+VERSION=${VERSION:-1.2.0}
+BUILD=${BUILD:-1}
TAG=${TAG:-_SBo}
+PKGTYPE=${PKGTYPE:-tgz}
if [ -z "$ARCH" ]; then
case "$( uname -m )" in
@@ -47,7 +42,11 @@ if [ -z "$ARCH" ]; then
esac
fi
-CWD=$(pwd)
+if [ ! -z "${PRINT_PACKAGE_NAME}" ]; then
+ echo "$PRGNAM-$VERSION-$ARCH-$BUILD$TAG.$PKGTYPE"
+ exit 0
+fi
+
TMP=${TMP:-/tmp/SBo}
PKG=$TMP/package-$PRGNAM
OUTPUT=${OUTPUT:-/tmp}
@@ -76,17 +75,18 @@ tar xvf $CWD/$PRGNAM-$VERSION-src.tar.bz2
cd $PRGNAM-$VERSION
chown -R root:root .
-find -L . \
- \( -perm 777 -o -perm 775 -o -perm 750 -o -perm 711 -o -perm 555 \
- -o -perm 511 \) -exec chmod 755 {} \; -o \
- \( -perm 666 -o -perm 664 -o -perm 640 -o -perm 600 -o -perm 444 \
- -o -perm 440 -o -perm 400 \) -exec chmod 644 {} \;
+find -L . -perm /111 -a \! -perm 755 -a -exec chmod 755 {} \+ -o \
+ \! -perm /111 -a \! -perm 644 -a -exec chmod 644 {} \+
+
+# 20211008 bkw: upstream now includes a man page, put it in the right place.
+sed -i 's,share/man,man,' $PRGNAM.pro
-qmake PREFIX=/usr BINDIR=games
+qmake-qt5 PREFIX=/usr BINDIR=games
sed -i "s,-O2,$SLKCFLAGS," Makefile
make
make install INSTALL_ROOT=$PKG
strip $PKG/usr/games/$PRGNAM
+gzip $PKG/usr/man/man*/*.*
mkdir -p $PKG/usr/doc/$PRGNAM-$VERSION
cp -a COPYING ChangeLog CREDITS $PKG/usr/doc/$PRGNAM-$VERSION
@@ -97,4 +97,4 @@ cat $CWD/slack-desc > $PKG/install/slack-desc
cat $CWD/doinst.sh > $PKG/install/doinst.sh
cd $PKG
-/sbin/makepkg -l y -c n $OUTPUT/$PRGNAM-$VERSION-$ARCH-$BUILD$TAG.${PKGTYPE:-tgz}
+/sbin/makepkg -l y -c n $OUTPUT/$PRGNAM-$VERSION-$ARCH-$BUILD$TAG.$PKGTYPE
diff --git a/games/gottet/gottet.info b/games/gottet/gottet.info
index e5e178dcac..e9a1e2683c 100644
--- a/games/gottet/gottet.info
+++ b/games/gottet/gottet.info
@@ -1,10 +1,10 @@
PRGNAM="gottet"
-VERSION="1.0.6"
+VERSION="1.2.0"
HOMEPAGE="https://gottcode.org/gottet/"
-DOWNLOAD="https://gottcode.org/gottet/gottet-1.0.6-src.tar.bz2"
-MD5SUM="cacc0861304ee161451bb4ea3c8246d9"
+DOWNLOAD="https://gottcode.org/gottet/gottet-1.2.0-src.tar.bz2"
+MD5SUM="58156a38b2b28548810cda1f960a5ac0"
DOWNLOAD_x86_64=""
MD5SUM_x86_64=""
REQUIRES=""
MAINTAINER="B. Watson"
-EMAIL="yalhcru@gmail.com"
+EMAIL="urchlay@slackware.uk"
diff --git a/games/gottet/slack-desc b/games/gottet/slack-desc
index 8aea0e1cd9..1111e333a5 100644
--- a/games/gottet/slack-desc
+++ b/games/gottet/slack-desc
@@ -6,14 +6,14 @@
# customary to leave one space after the ':' except on otherwise blank lines.
|-----handy-ruler------------------------------------------------------|
-gottet: gottet (A basic tetris clone)
+gottet: gottet (a basic tetris clone)
+gottet:
+gottet: gottet is a simple tetris clone with a Qt user interface.
gottet:
-gottet: gottet is a simple tetris clone.
gottet:
gottet:
gottet:
gottet:
gottet:
gottet:
-gottet: http://gottcode.org/gottet/
gottet:
diff --git a/games/greed/greed.SlackBuild b/games/greed/greed.SlackBuild
index 39e47ef9bd..0aa950738d 100644
--- a/games/greed/greed.SlackBuild
+++ b/games/greed/greed.SlackBuild
@@ -1,4 +1,4 @@
-#!/bin/sh
+#!/bin/bash
# Slackware build script for greed
@@ -22,10 +22,13 @@
# OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF THIS SOFTWARE, EVEN IF
# ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
+cd $(dirname $0) ; CWD=$(pwd)
+
PRGNAM=greed
VERSION=${VERSION:-4.2}
BUILD=${BUILD:-1}
TAG=${TAG:-_SBo}
+PKGTYPE=${PKGTYPE:-tgz}
if [ -z "$ARCH" ]; then
case "$( uname -m )" in
@@ -35,7 +38,14 @@ if [ -z "$ARCH" ]; then
esac
fi
-CWD=$(pwd)
+# If the variable PRINT_PACKAGE_NAME is set, then this script will report what
+# the name of the created package would be, and then exit. This information
+# could be useful to other scripts.
+if [ ! -z "${PRINT_PACKAGE_NAME}" ]; then
+ echo "$PRGNAM-$VERSION-$ARCH-$BUILD$TAG.$PKGTYPE"
+ exit 0
+fi
+
TMP=${TMP:-/tmp/SBo}
PKG=$TMP/package-$PRGNAM
OUTPUT=${OUTPUT:-/tmp}
@@ -90,4 +100,4 @@ mkdir -p $PKG/install
cat $CWD/slack-desc > $PKG/install/slack-desc
cd $PKG
-/sbin/makepkg -l y -c n $OUTPUT/$PRGNAM-$VERSION-$ARCH-$BUILD$TAG.${PKGTYPE:-tgz}
+/sbin/makepkg -l y -c n $OUTPUT/$PRGNAM-$VERSION-$ARCH-$BUILD$TAG.$PKGTYPE
diff --git a/games/gtetrinet/README b/games/gtetrinet/README
new file mode 100644
index 0000000000..b8995f2aea
--- /dev/null
+++ b/games/gtetrinet/README
@@ -0,0 +1,5 @@
+gtetrinet (multiplayer networked Tetris-like game)
+
+GTetrinet is a clone of the popular Tetrinet game for Win95/NT. It is
+designed to be fully compatible with, and to be identical in gameplay
+to the original Tetrinet.
diff --git a/games/gtetrinet/cli_opts.diff b/games/gtetrinet/cli_opts.diff
new file mode 100644
index 0000000000..f31bac72c9
--- /dev/null
+++ b/games/gtetrinet/cli_opts.diff
@@ -0,0 +1,32 @@
+diff -Naur gtetrinet-0.8.0_20220828_6d816ee.orig/src/gtetrinet.c gtetrinet-0.8.0_20220828_6d816ee/src/gtetrinet.c
+--- gtetrinet-0.8.0_20220828_6d816ee.orig/src/gtetrinet.c 2023-02-10 14:01:33.000000000 -0500
++++ gtetrinet-0.8.0_20220828_6d816ee/src/gtetrinet.c 2023-02-13 01:31:08.820702289 -0500
+@@ -76,13 +76,13 @@
+ GSettings* settings_keys;
+ GSettings* settings_themes;
+
+-static const struct poptOption options[] = {
+- {"connect", 'c', POPT_ARG_STRING, &option_connect, 0, ("Connect to server"), ("SERVER")},
+- {"nickname", 'n', POPT_ARG_STRING, &option_nick, 0, ("Set nickname to use"), ("NICKNAME")},
+- {"team", 't', POPT_ARG_STRING, &option_team, 0, ("Set team name"), ("TEAM")},
+- {"spectate", 's', POPT_ARG_NONE, &option_spec, 0, ("Connect as a spectator"), NULL},
+- {"password", 'p', POPT_ARG_STRING, &option_pass, 0, ("Spectator password"), ("PASSWORD")},
+- {NULL, 0, 0, NULL, 0, NULL, NULL}
++static const GOptionEntry options[] = {
++ {"connect", 'c', 0, G_OPTION_ARG_STRING, &option_connect, ("Connect to server"), ("SERVER")},
++ {"nickname", 'n', 0, G_OPTION_ARG_STRING, &option_nick, ("Set nickname to use"), ("NICKNAME")},
++ {"team", 't', 0, G_OPTION_ARG_STRING, &option_team, ("Set team name"), ("TEAM")},
++ {"spectate", 's', 0, G_OPTION_ARG_NONE, &option_spec, ("Connect as a spectator"), NULL},
++ {"password", 'p', 0, G_OPTION_ARG_STRING, &option_pass, ("Spectator password"), ("PASSWORD")},
++ {NULL, 0, 0, 0, NULL, NULL, NULL}
+ };
+
+ static int gtetrinet_poll_func(GPollFD *passed_fds,
+@@ -134,7 +134,6 @@
+ argc, argv, GNOME_PARAM_POPT_TABLE, options,
+ GNOME_PARAM_NONE);
+ */
+- GOptionEntry options[] = { {NULL}};
+ if (!gtk_init_with_args(&argc,&argv,"gtetrinet",options,NULL,&err))
+ {
+ fprintf (stderr, "Failed to init GTK: %s\n", err->message);
diff --git a/games/gtetrinet/doinst.sh b/games/gtetrinet/doinst.sh
new file mode 100644
index 0000000000..0254ea06d8
--- /dev/null
+++ b/games/gtetrinet/doinst.sh
@@ -0,0 +1,15 @@
+if [ -x /usr/bin/update-desktop-database ]; then
+ /usr/bin/update-desktop-database -q usr/share/applications >/dev/null 2>&1
+fi
+
+if [ -e usr/share/icons/hicolor/icon-theme.cache ]; then
+ if [ -x /usr/bin/gtk-update-icon-cache ]; then
+ /usr/bin/gtk-update-icon-cache usr/share/icons/hicolor >/dev/null 2>&1
+ fi
+fi
+
+if [ -e usr/share/glib-2.0/schemas ]; then
+ if [ -x /usr/bin/glib-compile-schemas ]; then
+ /usr/bin/glib-compile-schemas usr/share/glib-2.0/schemas >/dev/null 2>&1
+ fi
+fi
diff --git a/games/gtetrinet/git2tarxz.sh b/games/gtetrinet/git2tarxz.sh
new file mode 100644
index 0000000000..b084ee153a
--- /dev/null
+++ b/games/gtetrinet/git2tarxz.sh
@@ -0,0 +1,50 @@
+#!/bin/sh
+
+# Create source tarball from git repo, with generated version number.
+
+# This is not a generic git2tarxz script, it's specific to gtetrinet.
+# Upstream doesn't use tags for version bumps, so the version number
+# is extracted from configure.ac.
+
+# Takes one optional argument, which is the commit or tag to create a
+# tarball of. With no arg, HEAD is used.
+
+# Version number example: 0.0.1+20200227_ad7ec17
+
+## Config:
+PRGNAM=gtetrinet
+CLONE_URL=https://github.com/tatankat/gtetrinet
+## End of config.
+
+set -e
+
+GITDIR=$( mktemp -dt $PRGNAM.git.XXXXXX )
+rm -rf $GITDIR
+git clone $CLONE_URL $GITDIR
+
+CWD="$( pwd )"
+cd $GITDIR
+
+if [ "$1" != "" ]; then
+ git reset --hard "$1" || exit 1
+fi
+
+GIT_SHA=$( git rev-parse --short HEAD )
+
+DATE=$( git log --date=format:%Y%m%d --format=%cd | head -1 )
+
+VERMAIN="$( grep AC_INIT configure.ac | cut -d, -f2 | sed 's,\[\(.*\)\],\1,' )"
+VERSION=${VERMAIN}_${DATE}_${GIT_SHA}
+
+rm -rf .git
+find . -name .gitignore -print0 | xargs -0 rm -f
+
+cd "$CWD"
+rm -rf $PRGNAM-$VERSION $PRGNAM-$VERSION.tar.xz
+mv $GITDIR $PRGNAM-$VERSION
+tar cvfJ $PRGNAM-$VERSION.tar.xz $PRGNAM-$VERSION
+
+echo
+echo "Created tarball: $PRGNAM-$VERSION.tar.xz"
+echo "VERSION=\"$VERSION\""
+echo "MD5SUM=\"$( md5sum $PRGNAM-$VERSION.tar.xz | cut -d' ' -f1 )\""
diff --git a/games/gtetrinet/gtetrinet.SlackBuild b/games/gtetrinet/gtetrinet.SlackBuild
new file mode 100644
index 0000000000..147c219419
--- /dev/null
+++ b/games/gtetrinet/gtetrinet.SlackBuild
@@ -0,0 +1,125 @@
+#!/bin/bash
+
+# Slackware build script for gtetrinet
+
+# Written by B. Watson (urchlay@slackware.uk)
+
+# Licensed under the WTFPL. See http://www.wtfpl.net/txt/copying/ for details.
+
+# This game has been around since the 90s, I used to play it on
+# Slackware back when Slackware still had GNOME.
+# For a long time, gtetrinet required a lot of gnome dependencies,
+# so I never bothered making a SlackBuild for it. Thanks to r0ni for
+# finding this gtk3 port of it.
+
+# 20230213 bkw: BUILD=2
+# - add nolockup.diff
+# - fix command-line options
+
+cd $(dirname $0) ; CWD=$(pwd)
+
+PRGNAM=gtetrinet
+VERSION=${VERSION:-0.8.0_20220828_6d816ee}
+BUILD=${BUILD:-2}
+TAG=${TAG:-_SBo}
+PKGTYPE=${PKGTYPE:-tgz}
+
+if [ -z "$ARCH" ]; then
+ case "$( uname -m )" in
+ i?86) ARCH=i586 ;;
+ arm*) ARCH=arm ;;
+ *) ARCH=$( uname -m ) ;;
+ esac
+fi
+
+if [ ! -z "${PRINT_PACKAGE_NAME}" ]; then
+ echo "$PRGNAM-$VERSION-$ARCH-$BUILD$TAG.$PKGTYPE"
+ exit 0
+fi
+
+TMP=${TMP:-/tmp/SBo}
+PKG=$TMP/package-$PRGNAM
+OUTPUT=${OUTPUT:-/tmp}
+
+if [ "$ARCH" = "i586" ]; then
+ SLKCFLAGS="-O2 -march=i586 -mtune=i686"
+ LIBDIRSUFFIX=""
+elif [ "$ARCH" = "i686" ]; then
+ SLKCFLAGS="-O2 -march=i686 -mtune=i686"
+ LIBDIRSUFFIX=""
+elif [ "$ARCH" = "x86_64" ]; then
+ SLKCFLAGS="-O2 -fPIC"
+ LIBDIRSUFFIX="64"
+else
+ SLKCFLAGS="-O2"
+ LIBDIRSUFFIX=""
+fi
+
+set -e
+
+rm -rf $PKG
+mkdir -p $TMP $PKG $OUTPUT
+cd $TMP
+rm -rf $PRGNAM-$VERSION
+tar xvf $CWD/$PRGNAM-$VERSION.tar.xz
+cd $PRGNAM-$VERSION
+chown -R root:root .
+find -L . -perm /111 -a \! -perm 755 -a -exec chmod 755 {} \+ -o \
+ \! -perm /111 -a \! -perm 644 -a -exec chmod 644 {} \+
+
+# Reinstate the command-line options, which were removed when porting
+# from GNOME to Gtk3.
+patch -p1 < $CWD/cli_opts.diff
+
+# If gtetrinet tries to connect in TetriFAST mode to a server
+# that doesn't support TetriFAST, the server will drop the
+# connection immediately. This patch prevents gtetrinet's UI
+# from going completely unresponsive if that happens: now we'll
+# get a "connecting..." dialog with a Cancel button that actually
+# works. There is surely a better way to fix it (have it actually pop
+# up a "Server doesn't support TetriFAST" dialog), but this is a tiny
+# change to the code and works well enough.
+patch -p1 < $CWD/nolockup.diff
+
+# desktop-file-validate complains a bit... also use absolute path
+# to binary.
+sed -i -e 's,GNOME;Application;,,' \
+ -e '/^Exec/s,gtetrinet,/usr/games/&,' \
+ $PRGNAM.desktop.in
+
+autoreconf -if
+
+CFLAGS="$SLKCFLAGS" \
+CXXFLAGS="$SLKCFLAGS" \
+./configure \
+ --prefix=/usr \
+ --bindir=/usr/games \
+ --libdir=/usr/lib${LIBDIRSUFFIX} \
+ --sysconfdir=/etc \
+ --localstatedir=/var \
+ --mandir=/usr/man \
+ --docdir=/usr/doc/$PRGNAM-$VERSION \
+ --disable-static \
+ --build=$ARCH-slackware-linux
+
+make
+make install-strip DESTDIR=$PKG
+gzip $PKG/usr/man/man?/*
+
+# only icon included is 40x40, pre-upscale to 48x48 too.
+HICOLOR=$PKG/usr/share/icons/hicolor
+mkdir -p $HICOLOR/{40x40,48x48}/apps
+ln -s ../../../../pixmaps/$PRGNAM.png $HICOLOR/40x40/apps/$PRGNAM.png
+convert -resize 48x48 $PRGNAM.png $HICOLOR/48x48/apps/$PRGNAM.png
+
+PKGDOC=$PKG/usr/doc/$PRGNAM-$VERSION
+mkdir -p $PKGDOC
+cp -a AUTHORS COPYING NEWS README* TODO $PKGDOC
+cat $CWD/$PRGNAM.SlackBuild > $PKGDOC/$PRGNAM.SlackBuild
+
+mkdir -p $PKG/install
+cat $CWD/slack-desc > $PKG/install/slack-desc
+cat $CWD/doinst.sh > $PKG/install/doinst.sh
+
+cd $PKG
+/sbin/makepkg -l y -c n $OUTPUT/$PRGNAM-$VERSION-$ARCH-$BUILD$TAG.$PKGTYPE
diff --git a/games/gtetrinet/gtetrinet.info b/games/gtetrinet/gtetrinet.info
new file mode 100644
index 0000000000..87a7df925c
--- /dev/null
+++ b/games/gtetrinet/gtetrinet.info
@@ -0,0 +1,10 @@
+PRGNAM="gtetrinet"
+VERSION="0.8.0_20220828_6d816ee"
+HOMEPAGE="https://github.com/tatankat/gtetrinet"
+DOWNLOAD="https://slackware.uk/~urchlay/src/gtetrinet-0.8.0_20220828_6d816ee.tar.xz"
+MD5SUM="149e03efb889f7e2ae7ab80584e6007a"
+DOWNLOAD_x86_64=""
+MD5SUM_x86_64=""
+REQUIRES=""
+MAINTAINER="B. Watson"
+EMAIL="urchlay@slackware.uk"
diff --git a/games/gtetrinet/nolockup.diff b/games/gtetrinet/nolockup.diff
new file mode 100644
index 0000000000..0cfbe0d599
--- /dev/null
+++ b/games/gtetrinet/nolockup.diff
@@ -0,0 +1,12 @@
+diff -Naur gtetrinet-0.8.0_20220828_6d816ee.orig/src/client.c gtetrinet-0.8.0_20220828_6d816ee/src/client.c
+--- gtetrinet-0.8.0_20220828_6d816ee.orig/src/client.c 2023-02-10 14:01:33.000000000 -0500
++++ gtetrinet-0.8.0_20220828_6d816ee/src/client.c 2023-02-12 23:55:28.980242462 -0500
+@@ -431,6 +431,8 @@
+ {
+ case G_IO_STATUS_EOF :
+ g_warning ("End of file (server closed connection).");
++ connected = 1;
++ client_disconnect();
+ return -1;
+ break;
+
diff --git a/games/gtetrinet/slack-desc b/games/gtetrinet/slack-desc
new file mode 100644
index 0000000000..89db12ef66
--- /dev/null
+++ b/games/gtetrinet/slack-desc
@@ -0,0 +1,19 @@
+# HOW TO EDIT THIS FILE:
+# The "handy ruler" below makes it easier to edit a package description.
+# Line up the first '|' above the ':' following the base package name, and
+# the '|' on the right side marks the last column you can put a character in.
+# You must make exactly 11 lines for the formatting to be correct. It's also
+# customary to leave one space after the ':' except on otherwise blank lines.
+
+ |-----handy-ruler------------------------------------------------------|
+gtetrinet: gtetrinet (multiplayer networked Tetris-like game)
+gtetrinet:
+gtetrinet: GTetrinet is a clone of the popular Tetrinet game for Win95/NT. It is
+gtetrinet: designed to be fully compatible with, and to be identical in gameplay
+gtetrinet: to the original Tetrinet.
+gtetrinet:
+gtetrinet:
+gtetrinet:
+gtetrinet:
+gtetrinet:
+gtetrinet:
diff --git a/games/gtkballs/README b/games/gtkballs/README
index 84e9dd5284..58a65f8499 100644
--- a/games/gtkballs/README
+++ b/games/gtkballs/README
@@ -1,3 +1,9 @@
-GtkBalls is the clone of well-known DOS game "Lines".
+gtkballs (clone of Lines - logic game about balls)
-Note: To save scores, join group 'games'.
+GtkBalls is a clone of the well-known MS-DOS game "Lines".
+
+See the man page or press F1 in the game, to see the rules.
+
+The game is installed setgid games, to be able to write to its high
+score file. If this bothers you, 'export SETGID=no' in the script
+environment; the game won't be able to save high scores in that case.
diff --git a/games/gtkballs/doinst.sh b/games/gtkballs/doinst.sh
index 5fb28930db..3e5691a052 100644
--- a/games/gtkballs/doinst.sh
+++ b/games/gtkballs/doinst.sh
@@ -1,3 +1,9 @@
if [ -x /usr/bin/update-desktop-database ]; then
/usr/bin/update-desktop-database -q usr/share/applications >/dev/null 2>&1
fi
+
+if [ -e usr/share/icons/hicolor/icon-theme.cache ]; then
+ if [ -x /usr/bin/gtk-update-icon-cache ]; then
+ /usr/bin/gtk-update-icon-cache usr/share/icons/hicolor >/dev/null 2>&1
+ fi
+fi
diff --git a/games/gtkballs/gtkballs.SlackBuild b/games/gtkballs/gtkballs.SlackBuild
index 08008b5bf4..b7783265b8 100644
--- a/games/gtkballs/gtkballs.SlackBuild
+++ b/games/gtkballs/gtkballs.SlackBuild
@@ -1,6 +1,6 @@
-#!/bin/sh
+#!/bin/bash
-# Copyright 2010 Binh Nguyen <binhvng@gmail.com>
+# Copyright 2010 Binh Nguyen <email removed>
# All rights reserved.
#
# Redistribution and use of this script, with or without modification, is
@@ -20,12 +20,27 @@
# OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF THIS SOFTWARE, EVEN IF
# ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
+# Note to self: keep an eye on https://github.com/emorozov/gtkballs
+# It looks like the original author has started development again,
+# but so far there are no new releases.
+
+# 20211021 bkw: BUILD=3
+# - binary in /usr/games.
+# - /usr/share/gtkballs => /usr/share/games/gtkballs.
+# - new-style icons.
+# - install setgid games by default.
+# - add SETGID=no in case someone doesn't trust it.
+# - include upstream's "asp" theme.
+
# 20140228 bkw: took over maintenance, simplified a bit
+cd $(dirname $0) ; CWD=$(pwd)
+
PRGNAM=gtkballs
VERSION=${VERSION:-3.1.5}
-BUILD=${BUILD:-2}
+BUILD=${BUILD:-3}
TAG=${TAG:-_SBo}
+PKGTYPE=${PKGTYPE:-tgz}
if [ -z "$ARCH" ]; then
case "$( uname -m )" in
@@ -35,7 +50,11 @@ if [ -z "$ARCH" ]; then
esac
fi
-CWD=$(pwd)
+if [ ! -z "${PRINT_PACKAGE_NAME}" ]; then
+ echo "$PRGNAM-$VERSION-$ARCH-$BUILD$TAG.$PKGTYPE"
+ exit 0
+fi
+
TMP=${TMP:-/tmp/SBo}
PKG=$TMP/package-$PRGNAM
OUTPUT=${OUTPUT:-/tmp}
@@ -62,16 +81,16 @@ cd $TMP
rm -rf $PRGNAM-$VERSION
tar xvf $CWD/$PRGNAM-$VERSION.tar.gz
cd $PRGNAM-$VERSION
+tar xvfC $CWD/asp.tar.bz2 $PRGNAM-data/themes
chown -R root:root .
-find -L . \
- \( -perm 777 -o -perm 775 -o -perm 750 -o -perm 711 -o -perm 555 -o -perm 511 \) \
- -exec chmod 755 {} \; -o \
- \( -perm 666 -o -perm 664 -o -perm 600 -o -perm 444 -o -perm 440 -o -perm 400 \) \
- -exec chmod 644 {} \;
+find -L . -perm /111 -a \! -perm 755 -a -exec chmod 755 {} \+ -o \
+ \! -perm /111 -a \! -perm 644 -a -exec chmod 644 {} \+
CFLAGS="$SLKCFLAGS" \
./configure \
--prefix=/usr \
+ --bindir=/usr/games \
+ --datadir=/usr/share/games \
--libdir=/usr/lib${LIBDIRSUFFIX} \
--sysconfdir=/etc \
--localstatedir=/var/games/$PRGNAM \
@@ -81,25 +100,39 @@ CFLAGS="$SLKCFLAGS" \
make
make install-strip DESTDIR=$PKG
-chown -R root:games $PKG/var/games/$PRGNAM
-chmod -R ug+w $PKG/var/games/$PRGNAM
+if [ "${SETGID:-yes}" = "yes" ]; then
+ chown -R root:games $PKG/var/games/$PRGNAM $PKG/usr/games/$PRGNAM
+ chmod g+s $PKG/usr/games/$PRGNAM
+ chmod -R ug+w $PKG/var/games/$PRGNAM
+fi
gzip $PKG/usr/man/man?/$PRGNAM.*
-mkdir -p $PKG/usr/doc/$PRGNAM-$VERSION
-cp -a AUTHORS COPYING ChangeLog NEWS README* TODO \
- $PKG/usr/doc/$PRGNAM-$VERSION
-cat $CWD/$PRGNAM.SlackBuild > $PKG/usr/doc/$PRGNAM-$VERSION/$PRGNAM.SlackBuild
+PKGDOC=$PKG/usr/doc/$PRGNAM-$VERSION
+mkdir -p $PKGDOC
+cp -a COPYING ChangeLog NEWS README TODO $PKGDOC
+cat $CWD/$PRGNAM.SlackBuild > $PKGDOC/$PRGNAM.SlackBuild
+# These 2 have Cyrillic characters:
+iconv -f iso-8859-5 AUTHORS -t utf-8 > $PKGDOC/AUTHORS
+iconv -f iso-8859-5 README.russian -t utf-8 > $PKGDOC/README.russian
mkdir -p $PKG/usr/share/applications
cat $CWD/$PRGNAM.desktop > $PKG/usr/share/applications/$PRGNAM.desktop
+for i in $CWD/icons/*.png; do
+ px=$( basename $i | cut -d. -f1 )
+ size=${px}x${px}
+ dir=$PKG/usr/share/icons/hicolor/$size/apps
+ mkdir -p $dir
+ cat $i > $dir/$PRGNAM.png
+done
+
mkdir -p $PKG/usr/share/pixmaps
-ln -s ../$PRGNAM/${PRGNAM}_16x16.png $PKG/usr/share/pixmaps/$PRGNAM.png
+ln -s ../icons/hicolor/48x48/apps/$PRGNAM.png $PKG/usr/share/pixmaps/$PRGNAM.png
mkdir -p $PKG/install
cat $CWD/slack-desc > $PKG/install/slack-desc
cat $CWD/doinst.sh > $PKG/install/doinst.sh
cd $PKG
-/sbin/makepkg -l y -c n $OUTPUT/$PRGNAM-$VERSION-$ARCH-$BUILD$TAG.${PKGTYPE:-tgz}
+/sbin/makepkg -l y -c n $OUTPUT/$PRGNAM-$VERSION-$ARCH-$BUILD$TAG.$PKGTYPE
diff --git a/games/gtkballs/gtkballs.info b/games/gtkballs/gtkballs.info
index b0e20655dd..8e04df3577 100644
--- a/games/gtkballs/gtkballs.info
+++ b/games/gtkballs/gtkballs.info
@@ -1,10 +1,12 @@
PRGNAM="gtkballs"
VERSION="3.1.5"
HOMEPAGE="http://gtkballs.antex.ru/"
-DOWNLOAD="http://gtkballs.antex.ru/dist/gtkballs-3.1.5.tar.gz"
-MD5SUM="1654799db1e9a46607b06f7ad3c0bf05"
+DOWNLOAD="http://gtkballs.antex.ru/dist/gtkballs-3.1.5.tar.gz \
+ http://gtkballs.antex.ru/themes/asp.tar.bz2"
+MD5SUM="1654799db1e9a46607b06f7ad3c0bf05 \
+ ad2e9d5990c6d26024dbac74475f957f"
DOWNLOAD_x86_64=""
MD5SUM_x86_64=""
REQUIRES=""
MAINTAINER="B. Watson"
-EMAIL="yalhcru@gmail.com"
+EMAIL="urchlay@slackware.uk"
diff --git a/games/gtkballs/icons/128.png b/games/gtkballs/icons/128.png
new file mode 100644
index 0000000000..dffab6242b
--- /dev/null
+++ b/games/gtkballs/icons/128.png
Binary files differ
diff --git a/games/gtkballs/icons/16.png b/games/gtkballs/icons/16.png
new file mode 100644
index 0000000000..7a3c93a317
--- /dev/null
+++ b/games/gtkballs/icons/16.png
Binary files differ
diff --git a/games/gtkballs/icons/32.png b/games/gtkballs/icons/32.png
new file mode 100644
index 0000000000..dca932b305
--- /dev/null
+++ b/games/gtkballs/icons/32.png
Binary files differ
diff --git a/games/gtkballs/icons/48.png b/games/gtkballs/icons/48.png
new file mode 100644
index 0000000000..b903dac972
--- /dev/null
+++ b/games/gtkballs/icons/48.png
Binary files differ
diff --git a/games/gtkballs/icons/96.png b/games/gtkballs/icons/96.png
new file mode 100644
index 0000000000..d40f449fd5
--- /dev/null
+++ b/games/gtkballs/icons/96.png
Binary files differ
diff --git a/games/gtkballs/slack-desc b/games/gtkballs/slack-desc
index 68cdffee98..79f8f63abb 100644
--- a/games/gtkballs/slack-desc
+++ b/games/gtkballs/slack-desc
@@ -8,11 +8,11 @@
|-----handy-ruler------------------------------------------------------|
gtkballs: gtkballs (clone of Lines - logic game about balls)
gtkballs:
-gtkballs: GtkBalls is the clone of well-known DOS game "Lines".
-gtkballs:
-gtkballs: Homepage: http://gtkballs.antex.ru/
+gtkballs: GtkBalls is a clone of the well-known MS-DOS game "Lines".
gtkballs:
+gtkballs: See the man page or press F1 in the game, to see the rules.
gtkballs:
+gtkballs: Homepage: http://gtkballs.antex.ru/
gtkballs:
gtkballs:
gtkballs:
diff --git a/games/gtklife/README b/games/gtklife/README
index 9db8a016ca..4782f7648f 100644
--- a/games/gtklife/README
+++ b/games/gtklife/README
@@ -1,2 +1,4 @@
+gtklife (Conway's Life program)
+
GtkLife is a fast, featureful, open-source Conway's Life program for
*nix.
diff --git a/games/gtklife/doinst.sh b/games/gtklife/doinst.sh
index 5fb28930db..3e5691a052 100644
--- a/games/gtklife/doinst.sh
+++ b/games/gtklife/doinst.sh
@@ -1,3 +1,9 @@
if [ -x /usr/bin/update-desktop-database ]; then
/usr/bin/update-desktop-database -q usr/share/applications >/dev/null 2>&1
fi
+
+if [ -e usr/share/icons/hicolor/icon-theme.cache ]; then
+ if [ -x /usr/bin/gtk-update-icon-cache ]; then
+ /usr/bin/gtk-update-icon-cache usr/share/icons/hicolor >/dev/null 2>&1
+ fi
+fi
diff --git a/games/gtklife/gtklife.SlackBuild b/games/gtklife/gtklife.SlackBuild
index c49a73055c..840b1b726e 100644
--- a/games/gtklife/gtklife.SlackBuild
+++ b/games/gtklife/gtklife.SlackBuild
@@ -1,15 +1,25 @@
-#!/bin/sh
+#!/bin/bash
# Slackware build script for gtklife
-# Written by B. Watson (yalhcru@gmail.com)
+# Written by B. Watson (urchlay@slackware.uk)
# Licensed under the WTFPL. See http://www.wtfpl.net/txt/copying/ for details.
+# 20240207 bkw: update for v5.3.
+
+# 20211008 bkw: BUILD=3
+# - new-style icons.
+# - build with gtk+2, not gtk+1. nicer UI.
+# - binary in /usr/games, not /usr/bin.
+
+cd $(dirname $0) ; CWD=$(pwd)
+
PRGNAM=gtklife
-VERSION=${VERSION:-5.2}
-BUILD=${BUILD:-2}
+VERSION=${VERSION:-5.3}
+BUILD=${BUILD:-1}
TAG=${TAG:-_SBo}
+PKGTYPE=${PKGTYPE:-tgz}
if [ -z "$ARCH" ]; then
case "$( uname -m )" in
@@ -19,7 +29,11 @@ if [ -z "$ARCH" ]; then
esac
fi
-CWD=$(pwd)
+if [ ! -z "${PRINT_PACKAGE_NAME}" ]; then
+ echo "$PRGNAM-$VERSION-$ARCH-$BUILD$TAG.$PKGTYPE"
+ exit 0
+fi
+
TMP=${TMP:-/tmp/SBo}
PKG=$TMP/package-$PRGNAM
OUTPUT=${OUTPUT:-/tmp}
@@ -47,11 +61,8 @@ rm -rf $PRGNAM-$VERSION
tar xvf $CWD/$PRGNAM-$VERSION.tar.gz
cd $PRGNAM-$VERSION
chown -R root:root .
-find -L . \
- \( -perm 777 -o -perm 775 -o -perm 750 -o -perm 711 -o -perm 555 \
- -o -perm 511 \) -exec chmod 755 {} \; -o \
- \( -perm 666 -o -perm 664 -o -perm 640 -o -perm 600 -o -perm 444 \
- -o -perm 440 -o -perm 400 \) -exec chmod 644 {} \;
+find -L . -perm /111 -a \! -perm 755 -a -exec chmod 755 {} \+ -o \
+ \! -perm /111 -a \! -perm 644 -a -exec chmod 644 {} \+
CFLAGS="$SLKCFLAGS -std=gnu89" \
CXXFLAGS="$SLKCFLAGS" \
@@ -59,13 +70,24 @@ CXXFLAGS="$SLKCFLAGS" \
--prefix=/usr \
--libdir=/usr/lib${LIBDIRSUFFIX} \
--with-docdir=/usr/doc/$PRGNAM-$VERSION/html \
+ --with-gtk2 \
--build=$ARCH-slackware-linux
make
-make install-strip prefix=$PKG/usr docdir=$PKG/usr/doc/$PRGNAM-$VERSION/html
+make install-strip \
+ prefix=$PKG/usr \
+ docdir=$PKG/usr/doc/$PRGNAM-$VERSION/html \
+ bindir=$PKG/usr/games
+
+for i in icon_*.png; do
+ size="$( echo $i | cut -d_ -f2 | cut -d. -f1 )"
+ dir=$PKG/usr/share/icons/hicolor/$size/apps
+ mkdir -p $dir
+ cat $i > $dir/$PRGNAM.png
+done
mkdir -p $PKG/usr/share/pixmaps
-cat icon_48x48.png > $PKG/usr/share/pixmaps/$PRGNAM.png
+ln -s ../icons/hicolor/48x48/apps/$PRGNAM.png $PKG/usr/share/pixmaps/$PRGNAM.png
mkdir -p $PKG/usr/share/applications
cat $CWD/$PRGNAM.desktop > $PKG/usr/share/applications/$PRGNAM.desktop
@@ -79,4 +101,4 @@ cat $CWD/slack-desc > $PKG/install/slack-desc
cat $CWD/doinst.sh > $PKG/install/doinst.sh
cd $PKG
-/sbin/makepkg -l y -c n $OUTPUT/$PRGNAM-$VERSION-$ARCH-$BUILD$TAG.${PKGTYPE:-tgz}
+/sbin/makepkg -l y -c n $OUTPUT/$PRGNAM-$VERSION-$ARCH-$BUILD$TAG.$PKGTYPE
diff --git a/games/gtklife/gtklife.desktop b/games/gtklife/gtklife.desktop
index 674f8d328c..90918dd502 100644
--- a/games/gtklife/gtklife.desktop
+++ b/games/gtklife/gtklife.desktop
@@ -3,7 +3,7 @@ Version=1.0
Name=GtkLife
GenericName=GtkLife Conway Life Simulation
Type=Application
-Exec=gtklife
+Exec=/usr/games/gtklife
Icon=gtklife
Terminal=false
StartupNotify=false
diff --git a/games/gtklife/gtklife.info b/games/gtklife/gtklife.info
index f841265244..1f59c1107b 100644
--- a/games/gtklife/gtklife.info
+++ b/games/gtklife/gtklife.info
@@ -1,10 +1,10 @@
PRGNAM="gtklife"
-VERSION="5.2"
-HOMEPAGE="http://ironphoenix.org/tril/gtklife/"
-DOWNLOAD="http://ironphoenix.org/tril/gtklife/gtklife-5.2.tar.gz"
-MD5SUM="09b2517e74466ba860f67429bb04ad01"
+VERSION="5.3"
+HOMEPAGE="http://homeforaday.org/gtklife/"
+DOWNLOAD="http://homeforaday.org/gtklife/gtklife-5.3.tar.gz"
+MD5SUM="0e31fa2e23f89f719539b25decb21152"
DOWNLOAD_x86_64=""
MD5SUM_x86_64=""
REQUIRES=""
MAINTAINER="B. Watson"
-EMAIL="yalhcru@gmail.com"
+EMAIL="urchlay@slackware.uk"
diff --git a/games/gw-libretro/README b/games/gw-libretro/README
deleted file mode 100644
index b1a9d6b759..0000000000
--- a/games/gw-libretro/README
+++ /dev/null
@@ -1,12 +0,0 @@
-Game & Watch is a libretro core that runs Game & Watch simulators.
-
-It runs simulators converted from source code for the games available
-at MADrigal. Each simulator is converted with pas2lua, which was
-written specifically for this purpose, and uses bstree, which was also
-specifically written to obfuscate the generated Lua source code as per
-MADrigal's request.
-
-Games for this emulator are downloadable from the RetroArch gui.
-
-To build the debugging symbols use:
- DEBUG=1 ./gw-libretro.SlackBuild
diff --git a/games/gw-libretro/gw-libretro.SlackBuild b/games/gw-libretro/gw-libretro.SlackBuild
deleted file mode 100644
index 73e37436b1..0000000000
--- a/games/gw-libretro/gw-libretro.SlackBuild
+++ /dev/null
@@ -1,95 +0,0 @@
-#!/bin/sh
-
-# Slackware build script for gw-libretro
-
-# Copyright 2016-2018 Hunter Sezen
-# All rights reserved.
-#
-# Redistribution and use of this script, with or without modification, is
-# permitted provided that the following conditions are met:
-#
-# 1. Redistributions of this script must retain the above copyright
-# notice, this list of conditions and the following disclaimer.
-#
-# THIS SOFTWARE IS PROVIDED BY THE AUTHOR "AS IS" AND ANY EXPRESS OR IMPLIED
-# WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE IMPLIED WARRANTIES OF
-# MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE ARE DISCLAIMED. IN NO
-# EVENT SHALL THE AUTHOR BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL,
-# SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT LIMITED TO,
-# PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, DATA, OR PROFITS;
-# OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY,
-# WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR
-# OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF THIS SOFTWARE, EVEN IF
-# ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
-
-PRGNAM=gw-libretro
-LIBNAM=$(echo $PRGNAM | tr - _)
-VERSION=${VERSION:-2018.10.03_dea8b93}
-BUILD=${BUILD:-1}
-TAG=${TAG:-_SBo}
-
-if [ -z "$ARCH" ]; then
- case "$( uname -m )" in
- i?86) ARCH=i586 ;;
- arm*) ARCH=arm ;;
- *) ARCH=$( uname -m ) ;;
- esac
-fi
-
-CWD=$(pwd)
-TMP=${TMP:-/tmp/SBo}
-PKG=$TMP/package-$PRGNAM
-OUTPUT=${OUTPUT:-/tmp}
-
-LIBDIRSUFFIX=
-[ "$ARCH" = x86_64 ] && LIBDIRSUFFIX=64
-
-set -eu
-
-rm -rf $PKG
-mkdir -p $TMP $PKG $OUTPUT
-cd $TMP
-rm -rf $PRGNAM-$VERSION
-tar xvf $CWD/$PRGNAM-$VERSION.tar.xz
-cd $PRGNAM-$VERSION
-chown -R root:root .
-find -L . \
- \( -perm 777 -o -perm 775 -o -perm 750 -o -perm 711 -o -perm 555 \
- -o -perm 511 \) -exec chmod 755 {} \; -o \
- \( -perm 666 -o -perm 664 -o -perm 640 -o -perm 600 -o -perm 444 \
- -o -perm 440 -o -perm 400 \) -exec chmod 644 {} \;
-
-[ "${DEBUG:=0}" != 0 ] && DEBUG=1
-
-make -f Makefile.libretro DEBUG=$DEBUG
-
-install -Dm0644 $LIBNAM.so $PKG/usr/lib${LIBDIRSUFFIX}/libretro/$LIBNAM.so
-install -Dm0644 $LIBNAM.info $PKG/usr/lib${LIBDIRSUFFIX}/libretro/info/$LIBNAM.info
-
-if [ $DEBUG = 0 ]; then
- find $PKG -print0 | xargs -0 file | grep -e "executable" -e "shared object" | grep ELF \
- | cut -f 1 -d : | xargs strip --strip-unneeded 2> /dev/null || true
-fi
-
-for DOCDIR in bzip2 gwlua gwrom lua retroluxury; do
- mkdir -p $PKG/usr/doc/$PRGNAM-$VERSION/$DOCDIR
-done
-cp -a LICENSE README.md $PKG/usr/doc/$PRGNAM-$VERSION
-cp -a lua/README $PKG/usr/doc/$PRGNAM-$VERSION/lua
-
-BZIP2_DOCS="bzip2/CHANGES bzip2/LICENSE bzip2/README*"
-GWLUA_DOCS="gwlua/LICENSE gwlua/README.md"
-GWROM_DOCS="gwrom/LICENSE gwrom/README.md"
-RETROLUXURY_DOCS="retroluxury/LICENSE retroluxury/README.md"
-cp -a $BZIP2_DOCS $PKG/usr/doc/$PRGNAM-$VERSION/bzip2
-cp -a $GWLUA_DOCS $PKG/usr/doc/$PRGNAM-$VERSION/gwlua
-cp -a $GWROM_DOCS $PKG/usr/doc/$PRGNAM-$VERSION/gwrom
-cp -a $RETROLUXURY_DOCS $PKG/usr/doc/$PRGNAM-$VERSION/retroluxury
-
-cat $CWD/$PRGNAM.SlackBuild > $PKG/usr/doc/$PRGNAM-$VERSION/$PRGNAM.SlackBuild
-
-mkdir -p $PKG/install
-cat $CWD/slack-desc > $PKG/install/slack-desc
-
-cd $PKG
-/sbin/makepkg -l y -c n $OUTPUT/$PRGNAM-$VERSION-$ARCH-$BUILD$TAG.${PKGTYPE:-tgz}
diff --git a/games/gw-libretro/gw-libretro.info b/games/gw-libretro/gw-libretro.info
deleted file mode 100644
index 1d6dc2b586..0000000000
--- a/games/gw-libretro/gw-libretro.info
+++ /dev/null
@@ -1,10 +0,0 @@
-PRGNAM="gw-libretro"
-VERSION="2018.10.03_dea8b93"
-HOMEPAGE="https://www.libretro.com/"
-DOWNLOAD="http://slackless.raccoons.tech/src/libretro/gw-libretro-2018.10.03_dea8b93.tar.xz"
-MD5SUM="22fe06dec6ca590ab38059fcad96a2a4"
-DOWNLOAD_x86_64=""
-MD5SUM_x86_64=""
-REQUIRES="RetroArch"
-MAINTAINER="orphaned - no maintainer"
-EMAIL="nobody@nowhere.com"
diff --git a/games/gw-libretro/slack-desc b/games/gw-libretro/slack-desc
deleted file mode 100644
index 483440f2dc..0000000000
--- a/games/gw-libretro/slack-desc
+++ /dev/null
@@ -1,19 +0,0 @@
-# HOW TO EDIT THIS FILE:
-# The "handy ruler" below makes it easier to edit a package description.
-# Line up the first '|' above the ':' following the base package name, and
-# the '|' on the right side marks the last column you can put a character in.
-# You must make exactly 11 lines for the formatting to be correct. It's also
-# customary to leave one space after the ':' except on otherwise blank lines.
-
- |-----handy-ruler------------------------------------------------------|
-gw-libretro: gw-libretro (libretro port for Game & Watch simulators)
-gw-libretro:
-gw-libretro: Game & Watch is a libretro core that runs Game & Watch simulators.
-gw-libretro:
-gw-libretro: Homepage: https://www.libretro.com/
-gw-libretro:
-gw-libretro:
-gw-libretro:
-gw-libretro:
-gw-libretro:
-gw-libretro:
diff --git a/games/gzdoom-legacy/README b/games/gzdoom-legacy/README
index e242f3eb6f..1c3496f600 100644
--- a/games/gzdoom-legacy/README
+++ b/games/gzdoom-legacy/README
@@ -1,3 +1,5 @@
+gzdoom-legacy (OpenGL port of DOOM, older version)
+
Enhanced OpenGL port of the official DOOM source code that also supports
Heretic, Hexen, and Strife.
@@ -6,9 +8,6 @@ run smoothly on older/slower hardware. If you're looking for the latest
version, you want the regular "gzdoom" build. Note that gzdoom-legacy
and gzdoom conflict: only install one or the other.
-Optional compile-time dependencies: fluidsynth and OpenAL. These are
-auto-detected.
-
See README_SBo.txt for optional runtime dependencies.
This script can be used to build gzdoom 1.8.09, 1.9.1, or 2.3.2. For
diff --git a/games/gzdoom-legacy/README_versions.txt b/games/gzdoom-legacy/README_versions.txt
index bd7e56e233..3676c68eb9 100644
--- a/games/gzdoom-legacy/README_versions.txt
+++ b/games/gzdoom-legacy/README_versions.txt
@@ -18,9 +18,6 @@ VERSION="1.8.09"
DOWNLOAD="https://slackware.uk/~urchlay/src/g1.8.09.tar.gz"
MD5SUM="ddc1dd8aef254312031184be6dec21e6"
-Note that SDL2 is not required for 1.8.09 (you can remove it from REQUIRES
-in the .info file, if you like).
-
For 1.9.1:
VERSION="1.9.1"
diff --git a/games/gzdoom-legacy/compilefix.1.8.09.diff b/games/gzdoom-legacy/compilefix.1.8.09.diff
new file mode 100644
index 0000000000..ac9d89d363
--- /dev/null
+++ b/games/gzdoom-legacy/compilefix.1.8.09.diff
@@ -0,0 +1,143 @@
+diff -Naur gzdoom-g1.8.09/game-music-emu/CMakeLists.txt gzdoom-g1.8.09.patched/game-music-emu/CMakeLists.txt
+--- gzdoom-g1.8.09/game-music-emu/CMakeLists.txt 2014-12-21 09:18:40.000000000 -0500
++++ gzdoom-g1.8.09.patched/game-music-emu/CMakeLists.txt 2021-10-09 16:57:46.630159506 -0400
+@@ -84,7 +84,7 @@
+ if (__LIBGME_TEST_VISIBILITY)
+ # get the gcc version
+ exec_program(${CMAKE_CXX_COMPILER} ARGS --version OUTPUT_VARIABLE _gcc_version_info)
+- string (REGEX MATCH "[3-9]\\.[0-9]\\.[0-9]" _gcc_version "${_gcc_version_info}")
++ string (REGEX MATCH "[1-9][0-9]*\\.[0-9]\\.[0-9]" _gcc_version "${_gcc_version_info}")
+
+ # gcc <4.1 had poor support for symbol visibility
+ if ((${_gcc_version} VERSION_GREATER "4.1") OR (${_gcc_version} VERSION_EQUAL "4.1"))
+diff -Naur gzdoom-g1.8.09/src/b_func.cpp gzdoom-g1.8.09.patched/src/b_func.cpp
+--- gzdoom-g1.8.09/src/b_func.cpp 2014-12-21 09:18:40.000000000 -0500
++++ gzdoom-g1.8.09.patched/src/b_func.cpp 2021-10-09 16:57:46.631159506 -0400
+@@ -123,7 +123,7 @@
+ if (vangle == 0)
+ return false; //Looker seems to be blind.
+
+- return (angle_t)abs (R_PointToAngle2 (player->mo->x, player->mo->y, to->x, to->y) - player->mo->angle) <= vangle/2;
++ return (angle_t)fabs (R_PointToAngle2 (player->mo->x, player->mo->y, to->x, to->y) - player->mo->angle) <= vangle/2;
+ }
+
+ //-------------------------------------
+@@ -210,7 +210,7 @@
+ {
+ angle = an;
+ //have to be somewhat precise. to avoid suicide.
+- if (abs (angle - player->mo->angle) < 12*ANGLE_1)
++ if (fabs (angle - player->mo->angle) < 12*ANGLE_1)
+ {
+ t_rocket = 9;
+ no_fire = false;
+@@ -252,7 +252,7 @@
+ angle -= m;
+ }
+
+- if (abs (angle - player->mo->angle) < 4*ANGLE_1)
++ if (fabs (angle - player->mo->angle) < 4*ANGLE_1)
+ {
+ increase = !increase;
+ }
+diff -Naur gzdoom-g1.8.09/src/g_hexen/a_dragon.cpp gzdoom-g1.8.09.patched/src/g_hexen/a_dragon.cpp
+--- gzdoom-g1.8.09/src/g_hexen/a_dragon.cpp 2014-12-21 09:18:40.000000000 -0500
++++ gzdoom-g1.8.09.patched/src/g_hexen/a_dragon.cpp 2021-10-09 17:06:47.628110327 -0400
+@@ -79,7 +79,7 @@
+ { // attack the destination mobj if it's attackable
+ AActor *oldTarget;
+
+- if (abs(actor->angle-R_PointToAngle2(actor->x, actor->y,
++ if (fabs(actor->angle-R_PointToAngle2(actor->x, actor->y,
+ target->x, target->y)) < ANGLE_45/2)
+ {
+ oldTarget = actor->target;
+@@ -121,9 +121,9 @@
+ }
+ angleToSpot = R_PointToAngle2(actor->x, actor->y,
+ mo->x, mo->y);
+- if ((angle_t)abs(angleToSpot-angleToTarget) < bestAngle)
++ if ((angle_t)fabs(angleToSpot-angleToTarget) < bestAngle)
+ {
+- bestAngle = abs(angleToSpot-angleToTarget);
++ bestAngle = fabs(angleToSpot-angleToTarget);
+ bestActor = mo;
+ }
+ }
+@@ -198,14 +198,14 @@
+ }
+ angle = R_PointToAngle2(self->x, self->y, self->target->x,
+ self->target->y);
+- if (abs(self->angle-angle) < ANGLE_45/2 && self->CheckMeleeRange())
++ if (fabs(self->angle-angle) < ANGLE_45/2 && self->CheckMeleeRange())
+ {
+ int damage = pr_dragonflight.HitDice (8);
+ int newdam = P_DamageMobj (self->target, self, self, damage, NAME_Melee);
+ P_TraceBleed (newdam > 0 ? newdam : damage, self->target, self);
+ S_Sound (self, CHAN_WEAPON, self->AttackSound, 1, ATTN_NORM);
+ }
+- else if (abs(self->angle-angle) <= ANGLE_1*20)
++ else if (fabs(self->angle-angle) <= ANGLE_1*20)
+ {
+ self->SetState (self->MissileState);
+ S_Sound (self, CHAN_WEAPON, self->AttackSound, 1, ATTN_NORM);
+diff -Naur gzdoom-g1.8.09/src/g_hexen/a_heresiarch.cpp gzdoom-g1.8.09.patched/src/g_hexen/a_heresiarch.cpp
+--- gzdoom-g1.8.09/src/g_hexen/a_heresiarch.cpp 2014-12-21 09:18:40.000000000 -0500
++++ gzdoom-g1.8.09.patched/src/g_hexen/a_heresiarch.cpp 2021-10-09 17:06:55.063109651 -0400
+@@ -314,7 +314,7 @@
+ case SORC_STOPPING: // Balls stopping
+ if ((parent->StopBall == RUNTIME_TYPE(actor)) &&
+ (parent->args[1] > SORCBALL_SPEED_ROTATIONS) &&
+- (abs(angle - (parent->angle>>ANGLETOFINESHIFT)) < (30<<5)))
++ (fabs(angle - (parent->angle>>ANGLETOFINESHIFT)) < (30<<5)))
+ {
+ // Can stop now
+ actor->target->args[3] = SORC_FIRESPELL;
+diff -Naur gzdoom-g1.8.09/src/g_hexen/a_hexenspecialdecs.cpp gzdoom-g1.8.09.patched/src/g_hexen/a_hexenspecialdecs.cpp
+--- gzdoom-g1.8.09/src/g_hexen/a_hexenspecialdecs.cpp 2014-12-21 09:18:40.000000000 -0500
++++ gzdoom-g1.8.09.patched/src/g_hexen/a_hexenspecialdecs.cpp 2021-10-09 17:07:05.703108684 -0400
+@@ -109,7 +109,7 @@
+ if (playeringame[i])
+ {
+ AActor *pmo = players[i].mo;
+- if (P_CheckSight (self, pmo) && (abs (R_PointToAngle2 (pmo->x,
++ if (P_CheckSight (self, pmo) && (fabs (R_PointToAngle2 (pmo->x,
+ pmo->y, self->x, self->y) - pmo->angle) <= ANGLE_45))
+ { // Previous state (pottery bit waiting state)
+ self->SetState (self->state - 1);
+diff -Naur gzdoom-g1.8.09/src/p_enemy.cpp gzdoom-g1.8.09.patched/src/p_enemy.cpp
+--- gzdoom-g1.8.09/src/p_enemy.cpp 2014-12-21 09:18:40.000000000 -0500
++++ gzdoom-g1.8.09.patched/src/p_enemy.cpp 2021-10-09 16:57:46.631159506 -0400
+@@ -2738,7 +2738,7 @@
+
+ // 0 means no limit. Also, if we turn in a single step anyways, no need to go through the algorithms.
+ // It also means that there is no need to check for going past the other.
+- if (max_turn && (max_turn < (angle_t)abs(self->angle - other_angle)))
++ if (max_turn && (max_turn < (angle_t)fabs(self->angle - other_angle)))
+ {
+ if (self->angle > other_angle)
+ {
+diff -Naur gzdoom-g1.8.09/src/p_mobj.cpp gzdoom-g1.8.09.patched/src/p_mobj.cpp
+--- gzdoom-g1.8.09/src/p_mobj.cpp 2014-12-21 09:18:40.000000000 -0500
++++ gzdoom-g1.8.09.patched/src/p_mobj.cpp 2021-10-09 16:59:08.847152032 -0400
+@@ -2932,7 +2932,7 @@
+ if (thing->flags4&MF4_SHIELDREFLECT)
+ {
+ // Shield reflection (from the Centaur
+- if (abs (angle - thing->angle)>>24 > 45)
++ if ((int)(fabs (angle - thing->angle))>>24 > 45)
+ return true; // Let missile explode
+
+ if (thing->IsKindOf (RUNTIME_CLASS(AHolySpirit))) // shouldn't this be handled by another flag???
+diff -Naur gzdoom-g1.8.09/src/p_setup.cpp gzdoom-g1.8.09.patched/src/p_setup.cpp
+--- gzdoom-g1.8.09/src/p_setup.cpp 2014-12-21 09:18:40.000000000 -0500
++++ gzdoom-g1.8.09.patched/src/p_setup.cpp 2021-10-09 17:02:30.783133675 -0400
+@@ -1311,7 +1311,7 @@
+
+ ptp_angle = R_PointToAngle2 (li->v1->x, li->v1->y, li->v2->x, li->v2->y);
+ dis = 0;
+- delta_angle = (abs(ptp_angle-(segangle<<16))>>ANGLETOFINESHIFT)*360/FINEANGLES;
++ delta_angle = ((int)fabs(ptp_angle-(segangle<<16))>>ANGLETOFINESHIFT)*360/FINEANGLES;
+
+ if (delta_angle != 0)
+ {
diff --git a/games/gzdoom-legacy/compilefix.1.9.1.diff b/games/gzdoom-legacy/compilefix.1.9.1.diff
new file mode 100644
index 0000000000..129886b3ea
--- /dev/null
+++ b/games/gzdoom-legacy/compilefix.1.9.1.diff
@@ -0,0 +1,12 @@
+diff -Naur gzdoom-g1.9.1/game-music-emu/CMakeLists.txt gzdoom-g1.9.1.patched/game-music-emu/CMakeLists.txt
+--- gzdoom-g1.9.1/game-music-emu/CMakeLists.txt 2016-02-23 05:34:50.000000000 -0500
++++ gzdoom-g1.9.1.patched/game-music-emu/CMakeLists.txt 2021-10-09 15:42:40.090569168 -0400
+@@ -84,7 +84,7 @@
+ if (__LIBGME_TEST_VISIBILITY)
+ # get the gcc version
+ exec_program(${CMAKE_CXX_COMPILER} ARGS --version OUTPUT_VARIABLE _gcc_version_info)
+- string (REGEX MATCH "[3-9]\\.[0-9]\\.[0-9]" _gcc_version "${_gcc_version_info}")
++ string (REGEX MATCH "[1-9][0-9]*\\.[0-9]\\.[0-9]" _gcc_version "${_gcc_version_info}")
+
+ # gcc <4.1 had poor support for symbol visibility
+ if ((${_gcc_version} VERSION_GREATER "4.1") OR (${_gcc_version} VERSION_EQUAL "4.1"))
diff --git a/games/gzdoom-legacy/compilefix.2.4.0.diff b/games/gzdoom-legacy/compilefix.2.4.0.diff
new file mode 100644
index 0000000000..15aff4b37b
--- /dev/null
+++ b/games/gzdoom-legacy/compilefix.2.4.0.diff
@@ -0,0 +1,23 @@
+diff -Naur gzdoom-g2.4.0/game-music-emu/CMakeLists.txt gzdoom-g2.4.0.patched/game-music-emu/CMakeLists.txt
+--- gzdoom-g2.4.0/game-music-emu/CMakeLists.txt 2017-03-19 16:37:06.000000000 -0400
++++ gzdoom-g2.4.0.patched/game-music-emu/CMakeLists.txt 2021-10-09 14:02:12.973117056 -0400
+@@ -89,7 +89,7 @@
+ if (__LIBGME_TEST_VISIBILITY)
+ # get the gcc version
+ exec_program(${CMAKE_CXX_COMPILER} ARGS --version OUTPUT_VARIABLE _gcc_version_info)
+- string (REGEX MATCH "[3-9]\\.[0-9]\\.[0-9]" _gcc_version "${_gcc_version_info}")
++ string (REGEX MATCH "[1-9][0-9]*\\.[0-9]\\.[0-9]" _gcc_version "${_gcc_version_info}")
+
+ # gcc <4.1 had poor support for symbol visibility
+ if ((${_gcc_version} VERSION_GREATER "4.1") OR (${_gcc_version} VERSION_EQUAL "4.1"))
+diff -Naur gzdoom-g2.4.0/src/sound/oalsound.cpp gzdoom-g2.4.0.patched/src/sound/oalsound.cpp
+--- gzdoom-g2.4.0/src/sound/oalsound.cpp 2017-03-19 16:37:06.000000000 -0400
++++ gzdoom-g2.4.0.patched/src/sound/oalsound.cpp 2021-10-09 13:59:39.997130962 -0400
+@@ -40,6 +40,7 @@
+ #include <dlfcn.h>
+ #endif
+
++#include <functional>
+ #include <memory>
+ #include <chrono>
+
diff --git a/games/gzdoom-legacy/gzdoom-legacy.SlackBuild b/games/gzdoom-legacy/gzdoom-legacy.SlackBuild
index 34b01f39f1..9c9d407413 100644
--- a/games/gzdoom-legacy/gzdoom-legacy.SlackBuild
+++ b/games/gzdoom-legacy/gzdoom-legacy.SlackBuild
@@ -1,11 +1,12 @@
-#!/bin/sh
+#!/bin/bash
# Slackware build script for gzdoom
-# Written by B. Watson (yalhcru@gmail.com)
+# Written by B. Watson (urchlay@slackware.uk)
# Licensed under the WTFPL. See http://www.wtfpl.net/txt/copying/ for details.
+# 20211009 bkw: BUILD=3, fix build on -current.
# 20200426 bkw:
# - Fix <unknown version> in window title for real this time, BUILD=2.
@@ -33,11 +34,14 @@
# build now uses its own dedicated fmodapi, which installs to
# a private directory (won't conflict with system fmodapi, if present).
+cd $(dirname $0) ; CWD=$(pwd)
+
PRGNAM=gzdoom-legacy
SRCNAM=gzdoom
VERSION=${VERSION:-2.4.0}
-BUILD=${BUILD:-2}
+BUILD=${BUILD:-3}
TAG=${TAG:-_SBo}
+PKGTYPE=${PKGTYPE:-tgz}
if [ -z "$ARCH" ]; then
case "$( uname -m )" in
@@ -47,7 +51,11 @@ if [ -z "$ARCH" ]; then
esac
fi
-CWD=$(pwd)
+if [ ! -z "${PRINT_PACKAGE_NAME}" ]; then
+ echo "$PRGNAM-$VERSION-$ARCH-$BUILD$TAG.$PKGTYPE"
+ exit 0
+fi
+
TMP=${TMP:-/tmp/SBo}
PKG=$TMP/package-$PRGNAM
OUTPUT=${OUTPUT:-/tmp}
@@ -97,7 +105,8 @@ patch -p1 < $CWD/window_title_version.diff
# title will read 1.8.08 for version 1.8.09, eg.
sed -i "/#define *VERSIONSTR/s,[^ ]*$,\"$VERSION\"," src/version.h
-# This isn't currently used, but was in the past, and will be again I'm sure.
+# Version-specific patches. As of 2021, it's unlikely any old versions
+# of gzdoom will build without patching.
[ -e $CWD/compilefix.$VERSION.diff ] && \
patch -p1 < $CWD/compilefix.$VERSION.diff
@@ -144,4 +153,4 @@ cat $CWD/slack-desc > $PKG/install/slack-desc
cat $CWD/doinst.sh > $PKG/install/doinst.sh
cd $PKG
-/sbin/makepkg -l y -c n $OUTPUT/$PRGNAM-$VERSION-$ARCH-$BUILD$TAG.${PKGTYPE:-tgz}
+/sbin/makepkg -l y -c n $OUTPUT/$PRGNAM-$VERSION-$ARCH-$BUILD$TAG.$PKGTYPE
diff --git a/games/gzdoom-legacy/gzdoom-legacy.info b/games/gzdoom-legacy/gzdoom-legacy.info
index 4fdd6f12ce..180287e61d 100644
--- a/games/gzdoom-legacy/gzdoom-legacy.info
+++ b/games/gzdoom-legacy/gzdoom-legacy.info
@@ -5,6 +5,6 @@ DOWNLOAD="https://github.com/coelckers/gzdoom/archive/g2.4.0/gzdoom-g2.4.0.tar.g
MD5SUM="2337388b44cd206ddbb3a2c44c78d3cc"
DOWNLOAD_x86_64=""
MD5SUM_x86_64=""
-REQUIRES="SDL2 fmodapi"
+REQUIRES="fmodapi"
MAINTAINER="B. Watson"
-EMAIL="yalhcru@gmail.com"
+EMAIL="urchlay@slackware.uk"
diff --git a/games/gzdoom-legacy/slack-desc b/games/gzdoom-legacy/slack-desc
index 18c19805b0..518ebe6f7b 100644
--- a/games/gzdoom-legacy/slack-desc
+++ b/games/gzdoom-legacy/slack-desc
@@ -6,7 +6,7 @@
# customary to leave one space after the ':' except on otherwise blank lines.
|-----handy-ruler------------------------------------------------------|
-gzdoom-legacy: gzdoom-legacy (OpenGL port of DOOM)
+gzdoom-legacy: gzdoom-legacy (OpenGL port of DOOM, older version)
gzdoom-legacy:
gzdoom-legacy: Enhanced OpenGL port of the official DOOM source code that also
gzdoom-legacy: supports Heretic, Hexen, and Strife.
diff --git a/games/gzdoom/README b/games/gzdoom/README
index 2bee38c3af..c9017e9818 100644
--- a/games/gzdoom/README
+++ b/games/gzdoom/README
@@ -3,9 +3,16 @@ gzdoom (OpenGL port of DOOM)
Enhanced OpenGL port of the official DOOM source code that also supports
Heretic, Hexen, and Strife.
-This is the latest version of gzdoom, which may not run well on
-older/slower systems. If gzdoom does't run smoothly on your system,
-try installing gzdoom-legacy instead. Note that gzdoom and gzdoom-legacy
-conflict: only install one or the other.
+This is the latest version of gzdoom, which may not run well
+on older/slower systems. If you have problems, try running with
+"-glversion 3.3". If it still won't start, or doesn't run smoothly on
+your system, try installing gzdoom-legacy instead. Note that gzdoom
+and gzdoom-legacy conflict: only install one or the other.
See README_SBo.txt for optional runtime dependencies.
+
+Note to 32-bit users: gzdoom requires the SSE2 extension. If you
+get "illegal instruction" errors when trying to run gzdoom, your
+CPU doesn't have SSE2, and you should use gzdoom-legacy instead.
+At this point (2022), there aren't that many non-SSE2 x86 CPUs still
+in service, so probably this won't be a problem for you.
diff --git a/games/gzdoom/compilefix.4.5.0.diff b/games/gzdoom/compilefix.4.5.0.diff
deleted file mode 100644
index 5c19518901..0000000000
--- a/games/gzdoom/compilefix.4.5.0.diff
+++ /dev/null
@@ -1,12 +0,0 @@
-diff -Naur gzdoom-g4.5.0/src/common/scripting/core/dynarrays.cpp gzdoom-g4.5.0.patched/src/common/scripting/core/dynarrays.cpp
---- gzdoom-g4.5.0/src/common/scripting/core/dynarrays.cpp 2020-10-31 05:07:33.000000000 -0400
-+++ gzdoom-g4.5.0.patched/src/common/scripting/core/dynarrays.cpp 2020-11-08 14:45:48.654222783 -0500
-@@ -89,7 +89,7 @@
- {
- int oldSize = self->Size();
- self->Insert(index, static_cast<typename T::value_type>(val));
-- if constexpr (fill)
-+ if (fill)
- {
- for (unsigned i = oldSize; i < self->Size() - 1; i++) (*self)[i] = 0;
- }
diff --git a/games/gzdoom/fix_zipdir.diff b/games/gzdoom/fix_zipdir.diff
deleted file mode 100644
index 88fb016966..0000000000
--- a/games/gzdoom/fix_zipdir.diff
+++ /dev/null
@@ -1,11 +0,0 @@
---- a/tools/zipdir/zipdir.c
-+++ b/tools/zipdir/zipdir.c
-@@ -781,6 +781,8 @@
- if (central_dir == NULL)
- {
- fprintf(stderr, "Could not read central directory from %s. (Is it a zipfile?)\n", zipname);
-+ fclose(ozip);
-+ ozip = NULL;
- update = 0;
- }
- }
diff --git a/games/gzdoom/gcc13-missing-includes.diff b/games/gzdoom/gcc13-missing-includes.diff
new file mode 100644
index 0000000000..4083e06f80
--- /dev/null
+++ b/games/gzdoom/gcc13-missing-includes.diff
@@ -0,0 +1,60 @@
+From ee8c12eac62349f4524229370da20915624485ef Mon Sep 17 00:00:00 2001
+From: Jan Engelhardt <jengelh@inai.de>
+Date: Thu, 30 Mar 2023 23:41:22 +0200
+Subject: [PATCH] build: resolve missing includes under gcc-13
+MIME-Version: 1.0
+Content-Type: text/plain; charset=UTF-8
+Content-Transfer-Encoding: 8bit
+
+$ make
+...
+~/gzdoom/libraries/ZVulkan/src/vulkanbuilders.cpp: In member function ‘std::unique_ptr<VulkanShader> ShaderBuilder::Create(const char*, VulkanDevice*)’:
+~/gzdoom/libraries/ZVulkan/src/vulkanbuilders.cpp:168:28: error: ‘runtime_error’ is not a member of ‘std’
+~/gzdoom/libraries/ZVulkan/include/zvulkan/vk_mem_alloc/vk_mem_alloc.h: In function ‘void VmaUint32ToStr(char*, size_t, uint32_t)’:
+~/gzdoom/libraries/ZVulkan/include/zvulkan/vk_mem_alloc/vk_mem_alloc.h:2410:9: error: ‘snprint ’ was not declared in this scope
+---
+ src/common/rendering/vulkan/system/vk_builders.cpp | 1 +
+ src/common/rendering/vulkan/system/vk_swapchain.cpp | 1 +
+ .../rendering/vulkan/thirdparty/vk_mem_alloc/vk_mem_alloc.h | 2 ++
+ 3 files changed, 4 insertions(+)
+
+diff --git a/src/common/rendering/vulkan/system/vk_builders.cpp b/src/common/rendering/vulkan/system/vk_builders.cpp
+index aff0de50a9..b8d4a13de9 100644
+--- a/src/common/rendering/vulkan/system/vk_builders.cpp
++++ b/src/common/rendering/vulkan/system/vk_builders.cpp
+@@ -20,6 +20,7 @@
+ **
+ */
+
++#include <stdexcept>
+ #include "vk_builders.h"
+ #include "engineerrors.h"
+ #include "renderstyle.h"
+diff --git a/src/common/rendering/vulkan/system/vk_swapchain.cpp b/src/common/rendering/vulkan/system/vk_swapchain.cpp
+index f44139b1f5..e89a6bd823 100644
+--- a/src/common/rendering/vulkan/system/vk_swapchain.cpp
++++ b/src/common/rendering/vulkan/system/vk_swapchain.cpp
+@@ -20,6 +20,7 @@
+ **
+ */
+
++#include <stdexcept>
+ #include "vk_swapchain.h"
+ #include "vk_objects.h"
+ #include "c_cvars.h"
+diff --git a/src/common/rendering/vulkan/thirdparty/vk_mem_alloc/vk_mem_alloc.h b/src/common/rendering/vulkan/thirdparty/vk_mem_alloc/vk_mem_alloc.h
+index fd4472286b..db0b94f4e8 100644
+--- a/src/common/rendering/vulkan/thirdparty/vk_mem_alloc/vk_mem_alloc.h
++++ b/src/common/rendering/vulkan/thirdparty/vk_mem_alloc/vk_mem_alloc.h
+@@ -104,6 +104,8 @@ Documentation of all members: vk_mem_alloc.h
+ - [Source repository on GitHub](https://github.com/GPUOpen-LibrariesAndSDKs/VulkanMemoryAllocator)
+ */
+
++#include <stdio.h>
++
+ #ifdef __cplusplus
+ extern "C" {
+ #endif
+--
+2.40.1
+
diff --git a/games/gzdoom/gzdoom.SlackBuild b/games/gzdoom/gzdoom.SlackBuild
index 7f61d2a621..0a599804e2 100644
--- a/games/gzdoom/gzdoom.SlackBuild
+++ b/games/gzdoom/gzdoom.SlackBuild
@@ -1,11 +1,15 @@
-#!/bin/sh
+#!/bin/bash
# Slackware build script for gzdoom
-# Written by B. Watson (yalhcru@gmail.com)
+# Written by B. Watson (urchlay@slackware.uk)
# Licensed under the WTFPL. See http://www.wtfpl.net/txt/copying/ for details.
+# 20230810 bkw: add patch to fix build on -current (does no harm on 15.0).
+# 20230109 bkw: Updated for 4.10.0. Many thanks to fourtysixandtwo for
+# testing this on more capable hardware than I have, and for finding
+# the "-glversion 3.3" argument.
# 20201115 bkw: Add missing fix_zipdir.diff. Dammit.
# 20201107 bkw: Updated for 4.5.0.
# 20201027 bkw:
@@ -33,10 +37,13 @@
# - Stop supporting old versions of gzdoom. The old versions are now
# supported as "gzdoom-legacy" for those that need them.
+cd $(dirname $0) ; CWD=$(pwd)
+
PRGNAM=gzdoom
-VERSION=${VERSION:-4.5.0}
+VERSION=${VERSION:-4.10.0}
BUILD=${BUILD:-1}
TAG=${TAG:-_SBo}
+PKGTYPE=${PKGTYPE:-tgz}
if [ -z "$ARCH" ]; then
case "$( uname -m )" in
@@ -46,7 +53,11 @@ if [ -z "$ARCH" ]; then
esac
fi
-CWD=$(pwd)
+if [ ! -z "${PRINT_PACKAGE_NAME}" ]; then
+ echo "$PRGNAM-$VERSION-$ARCH-$BUILD$TAG.$PKGTYPE"
+ exit 0
+fi
+
TMP=${TMP:-/tmp/SBo}
PKG=$TMP/package-$PRGNAM
OUTPUT=${OUTPUT:-/tmp}
@@ -77,6 +88,10 @@ chown -R root:root .
find -L . -perm /111 -a \! -perm 755 -a -exec chmod 755 {} \+ -o \
\! -perm /111 -a \! -perm 644 -a -exec chmod 644 {} \+
+# 20230810 bkw: patch for gcc 13 (Slackware -current), from AUR, by
+# way of biker_rat on LQ, delivered C/O ponce.
+patch -p1 < $CWD/gcc13-missing-includes.diff
+
# 20201027 bkw: fix the '<unknown version>' in the window title. This
# used to be done in an uglier way (with a patch that occasionally broke
# when applied against new gzdooms).
@@ -85,15 +100,6 @@ sed -i '/COMMAND.*UpdateRevision/s,^,# ,' src/CMakeLists.txt
echo "#define GIT_HASH \"release\""
echo "#define GIT_TIME __DATE__" ) > src/gitinfo.h
-# 4.5.0 uses "if constexpr", which is a c++17 feature not supported by
-# our compiler from 2016.
-[ -e $CWD/compilefix.$VERSION.diff ] && \
- patch -p1 < $CWD/compilefix.$VERSION.diff
-
-# 20201107 bkw: 4.5.0 needs this, patch comes from upstream git. Thanks
-# to Steven Voges on the mailing list for pointing it out to me.
-patch -p1 < $CWD/fix_zipdir.diff
-
# 3.1.0 started needing -DNDEBUG. Using ld.gold speeds up the final link
# enough to be worth using (saves 17+ sec on my test box).
SLKCFLAGS="$SLKCFLAGS -DNDEBUG -fuse-ld=gold"
@@ -103,9 +109,13 @@ sed -i '1i#include <cmath>' \
src/rendering/swrenderer/drawers/r_draw.cpp \
src/rendering/swrenderer/viewport/r_spritedrawer.cpp
+# 20220318 bkw: gzdoom requires SSE2. not a problem for x86_64, but we
+# have to explicitly set the flags for the 32-bit build to succeed.
+SLKCFLAGS+=" -msse -msse2"
+
mkdir -p build
cd build
- /opt/cmake-202x/bin/cmake \
+ cmake \
-DCMAKE_C_FLAGS_RELEASE:STRING="$SLKCFLAGS -DSHARE_DIR=\\\"/usr/share/games/doom\\\"" \
-DCMAKE_CXX_FLAGS_RELEASE:STRING="$SLKCFLAGS -DSHARE_DIR=\\\"/usr/share/games/doom\\\"" \
-DINSTALL_DOCS_PATH=doc/$PRGNAM-$VERSION \
@@ -152,4 +162,4 @@ cat $CWD/slack-desc > $PKG/install/slack-desc
cat $CWD/doinst.sh > $PKG/install/doinst.sh
cd $PKG
-/sbin/makepkg -l y -c n $OUTPUT/$PRGNAM-$VERSION-$ARCH-$BUILD$TAG.${PKGTYPE:-tgz}
+/sbin/makepkg -l y -c n $OUTPUT/$PRGNAM-$VERSION-$ARCH-$BUILD$TAG.$PKGTYPE
diff --git a/games/gzdoom/gzdoom.info b/games/gzdoom/gzdoom.info
index fd272cf532..96cbbf7bc5 100644
--- a/games/gzdoom/gzdoom.info
+++ b/games/gzdoom/gzdoom.info
@@ -1,10 +1,10 @@
PRGNAM="gzdoom"
-VERSION="4.5.0"
+VERSION="4.10.0"
HOMEPAGE="http://gzdoom.drdteam.org/"
-DOWNLOAD="https://github.com/coelckers/gzdoom/archive/g4.5.0/gzdoom-g4.5.0.tar.gz"
-MD5SUM="64b0b98c6538a75626de3319653d6539"
+DOWNLOAD="https://github.com/coelckers/gzdoom/archive/g4.10.0/gzdoom-g4.10.0.tar.gz"
+MD5SUM="54d8348650b8693fb545b20538e019ad"
DOWNLOAD_x86_64=""
MD5SUM_x86_64=""
-REQUIRES="SDL2 OpenAL zmusic"
+REQUIRES="zmusic"
MAINTAINER="B. Watson"
-EMAIL="yalhcru@gmail.com"
+EMAIL="urchlay@slackware.uk"
diff --git a/games/gzdoom/gzdoom.png b/games/gzdoom/gzdoom.png
deleted file mode 100644
index 013cf60890..0000000000
--- a/games/gzdoom/gzdoom.png
+++ /dev/null
Binary files differ
diff --git a/games/hack-of-life/doinst.sh b/games/hack-of-life/doinst.sh
new file mode 100644
index 0000000000..3e5691a052
--- /dev/null
+++ b/games/hack-of-life/doinst.sh
@@ -0,0 +1,9 @@
+if [ -x /usr/bin/update-desktop-database ]; then
+ /usr/bin/update-desktop-database -q usr/share/applications >/dev/null 2>&1
+fi
+
+if [ -e usr/share/icons/hicolor/icon-theme.cache ]; then
+ if [ -x /usr/bin/gtk-update-icon-cache ]; then
+ /usr/bin/gtk-update-icon-cache usr/share/icons/hicolor >/dev/null 2>&1
+ fi
+fi
diff --git a/games/hack-of-life/hack-of-life.SlackBuild b/games/hack-of-life/hack-of-life.SlackBuild
index 71c1b7f0fe..b92dbde447 100644
--- a/games/hack-of-life/hack-of-life.SlackBuild
+++ b/games/hack-of-life/hack-of-life.SlackBuild
@@ -1,8 +1,8 @@
-#!/bin/sh
+#!/bin/bash
# Slackware build script for hack-of-life
-# Written by B. Watson (yalhcru@gmail.com)
+# Written by B. Watson (urchlay@slackware.uk)
# Licensed under the WTFPL. See http://www.wtfpl.net/txt/copying/ for details.
@@ -12,10 +12,16 @@
# standard in the roguelike world... It's not configurable in this
# game, meaning I'm never going to enjoy playing it very much :(
+# 20230107 bkw: BUILD=3, add doinst.sh.
+# 20211102 bkw: BUILD=2, icon and .desktop.
+
+cd $(dirname $0) ; CWD=$(pwd)
+
PRGNAM=hack-of-life
VERSION=${VERSION:-20130628_3a6c824}
-BUILD=${BUILD:-1}
+BUILD=${BUILD:-3}
TAG=${TAG:-_SBo}
+PKGTYPE=${PKGTYPE:-tgz}
if [ -z "$ARCH" ]; then
case "$( uname -m )" in
@@ -25,7 +31,11 @@ if [ -z "$ARCH" ]; then
esac
fi
-CWD=$(pwd)
+if [ ! -z "${PRINT_PACKAGE_NAME}" ]; then
+ echo "$PRGNAM-$VERSION-$ARCH-$BUILD$TAG.$PKGTYPE"
+ exit 0
+fi
+
TMP=${TMP:-/tmp/SBo}
PKG=$TMP/package-$PRGNAM
OUTPUT=${OUTPUT:-/tmp}
@@ -81,10 +91,25 @@ gzip -9c < $CWD/hackoflife.6 > $PKG/usr/man/man6/hackoflife.6.gz
# chose to name the package and executable 2 different names...
ln -s hackoflife.6.gz $PKG/usr/man/man6/$PRGNAM.6.gz
+# icon and .desktop by SlackBuild author.
+mkdir -p $PKG/usr/share/applications
+cat $CWD/$PRGNAM.desktop > $PKG/usr/share/applications/$PRGNAM.desktop
+
+for px in 16 32 48 64; do
+ size=${px}x${px}
+ dir=$PKG/usr/share/icons/hicolor/$size/apps
+ mkdir -p $dir
+ convert -resize $size $CWD/$PRGNAM.png $dir/$PRGNAM.png
+done
+
+mkdir -p $PKG/usr/share/pixmaps
+ln -s ../icons/hicolor/48x48/apps/$PRGNAM.png $PKG/usr/share/pixmaps/$PRGNAM.png
+
cat $CWD/$PRGNAM.SlackBuild > $PKG/usr/doc/$PRGNAM-$VERSION/$PRGNAM.SlackBuild
mkdir -p $PKG/install
cat $CWD/slack-desc > $PKG/install/slack-desc
+cat $CWD/doinst.sh > $PKG/install/doinst.sh
cd $PKG
-/sbin/makepkg -l y -c n $OUTPUT/$PRGNAM-$VERSION-$ARCH-$BUILD$TAG.${PKGTYPE:-tgz}
+/sbin/makepkg -l y -c n $OUTPUT/$PRGNAM-$VERSION-$ARCH-$BUILD$TAG.$PKGTYPE
diff --git a/games/hack-of-life/hack-of-life.desktop b/games/hack-of-life/hack-of-life.desktop
new file mode 100644
index 0000000000..b74de7162b
--- /dev/null
+++ b/games/hack-of-life/hack-of-life.desktop
@@ -0,0 +1,8 @@
+[Desktop Entry]
+Name=Hack Of Life
+Comment=Multiplayer Conway's Life Variant
+Exec=/usr/games/hack-of-life
+Icon=hack-of-life
+Terminal=true
+Type=Application
+Categories=Game;StrategyGame;
diff --git a/games/hack-of-life/hack-of-life.info b/games/hack-of-life/hack-of-life.info
index e7e7eb2225..5cac1e7d91 100644
--- a/games/hack-of-life/hack-of-life.info
+++ b/games/hack-of-life/hack-of-life.info
@@ -7,4 +7,4 @@ DOWNLOAD_x86_64=""
MD5SUM_x86_64=""
REQUIRES=""
MAINTAINER="B. Watson"
-EMAIL="yalhcru@gmail.com"
+EMAIL="urchlay@slackware.uk"
diff --git a/games/hack-of-life/hack-of-life.png b/games/hack-of-life/hack-of-life.png
new file mode 100644
index 0000000000..f89e6fbd4b
--- /dev/null
+++ b/games/hack-of-life/hack-of-life.png
Binary files differ
diff --git a/games/hatari/README b/games/hatari/README
index 53de0f8329..95b8500d5f 100644
--- a/games/hatari/README
+++ b/games/hatari/README
@@ -27,7 +27,5 @@ portaudio - Only used for emulated Falcon microphone support.
portmidi - May offer better MIDI support than the default ALSA raw MIDI
device support. Autodetected.
-SDL2 - Using SDL2 offers some benefits like better fullscreen support
- and resizing in windowed mode. Autodetected. If you have SDL2
- installed but want to build hatari with SDL-1.2, export SDL2=no
- in the environment.
+Build option: if you for some reason want to build hatari with SDL-1.2
+rather than 2.0, export SDL2=no in the script's environment.
diff --git a/games/hatari/hatari.SlackBuild b/games/hatari/hatari.SlackBuild
index 35adec40d0..6dab2b4c9b 100644
--- a/games/hatari/hatari.SlackBuild
+++ b/games/hatari/hatari.SlackBuild
@@ -1,11 +1,24 @@
-#!/bin/sh
+#!/bin/bash
# Slackware build script for hatari
-# Written by B. Watson (yalhcru@gmail.com)
+# Written by B. Watson (urchlay@slackware.uk)
# Licensed under the WTFPL. See http://www.wtfpl.net/txt/copying/ for details.
+# 20240419 bkw: update for v2.5.0.
+
+# 20230107 bkw:
+# - update for v2.4.1.
+# - fix bad icon symlink (symlinked a .svg to a .png filename, derp).
+# - coerce cmake to use python3, since hatariui now requires it.
+
+# 20210102 bkw: update for v2.3.1.
+# 20201218 bkw:
+# - update for v2.3.0. Can't build older versions, sorry.
+# - add new dep, python3.
+# - really fix the man pages.
+
# 20200426 bkw:
# - BUILD=2
# - Include support for IPF and CTR images (copy-protected images),
@@ -57,10 +70,13 @@
# reinstalling the package won't reset the default ROM.
# - add mime type and auto-associate ST disk images and executables.
+cd $(dirname $0) ; CWD=$(pwd)
+
PRGNAM=hatari
-VERSION=${VERSION:-2.2.1}
-BUILD=${BUILD:-2}
+VERSION=${VERSION:-2.5.0}
+BUILD=${BUILD:-1}
TAG=${TAG:-_SBo}
+PKGTYPE=${PKGTYPE:-tgz}
if [ -z "$ARCH" ]; then
case "$( uname -m )" in
@@ -70,11 +86,17 @@ if [ -z "$ARCH" ]; then
esac
fi
-CWD=$(pwd)
-TMP=${TMP-/tmp/SBo}
+if [ ! -z "${PRINT_PACKAGE_NAME}" ]; then
+ echo "$PRGNAM-$VERSION-$ARCH-$BUILD$TAG.$PKGTYPE"
+ exit 0
+fi
+
+TMP=${TMP:-/tmp/SBo}
PKG=$TMP/package-$PRGNAM
OUTPUT=${OUTPUT:-/tmp}
+# Note: the -O2 here gets overridden by a -O3 that comes later on the
+# command line. Upstream tests with -O3 so it should be fine.
if [ "$ARCH" = "i586" ]; then
SLKCFLAGS="-O2 -march=i586 -mtune=i686"
LIBDIRSUFFIX=""
@@ -105,10 +127,11 @@ find -L . -perm /111 -a \! -perm 755 -a -exec chmod 755 {} \+ -o \
# so let's have hatariui use that instead of failing.
patch -p1 < $CWD/hatariui-create-cfg-if-missing.diff
-# man page hadn't been updated since 2014, it says the config file lives
-# in the old ~/.hatari/ location. also fix a few typos and formatting
-# issues.
-patch -p1 < $CWD/manpage.diff
+# Man pages go in section 6, fix .TH and see-also refs. Also fix a few
+# typos and formatting issues.
+P="$CWD/manpage.$VERSION.diff"
+[ -e "$P" ] || P="$CWD/manpage.diff"
+patch -p1 < $P
# cmake doesn't support anything like --bindir, --mandir, --docdir. cheat
# a little.
@@ -118,9 +141,6 @@ sed -i \
-e "s,share/doc/$PRGNAM,doc/$PRGNAM-$VERSION," \
CMakeLists.txt
-# man pages should be in section 6
-sed -i '/\.TH/s,"1","6",' doc/*.1 doc/fr/*.1 tools/*.1 python-ui/*.1
-
# Hard-code the doc path in the UI (we don't use /usr/share/doc/hatari)
sed -i \
-e "/path *= *path *+/s,=.*,= \"/usr/doc/$PRGNAM-$VERSION/\"," \
@@ -140,16 +160,25 @@ sed -i 's/ncurses\.h/&;readline.h/' cmake/FindReadline.cmake
# and libcapsimage 5.1 doesn't support a couple of typedefs that
# existed in 4.2.
+# 20201218 bkw: the source says '#include <caps/CapsLibAll.h>' but
+# we need <caps5/CapsLibAll.h>.
sed -i \
-e '1i#include <stdint.h>' \
-e 's,CapsLong,int32_t,g' \
-e 's,CapsULong,uint32_t,g' \
+ -e '/#include/s,caps/,caps5/,' \
src/floppy_ipf.c
# 20200427 bkw: upstream actually runs cmake directly in the source
# dir rather than the "mkdir build; cd build; cmake .." stuff from
# our template. I'm going to do it their way.
+# 20201218 bkw: I really should not have to tell cmake to look in
+# /usr/include for the libcapsimage headers, that is *the systemwide
+# default location* for includes, and has been since the 1970s. Grr.
cmake \
+ -DPYTHONINTERP_FOUND=ON \
+ -DPYTHON_EXECUTABLE=/usr/bin/python3 \
+ -DCAPSIMAGE_INCLUDE_DIR=/usr/include \
-DCMAKE_VERBOSE_MAKEFILE=TRUE \
$SDL2OPT \
-DCMAKE_C_FLAGS:STRING="$SLKCFLAGS" \
@@ -179,14 +208,6 @@ cp tools/hmsa/readme-hmsa.txt readme.txt gpl.txt \
doc/de/*.txt \
$DOCDIR
-# The UI has its own docs. These are actually used by the UI, so they
-# must be available in /usr/share/hatari (hence the symlinks).
-UIDOCDIR=$DOCDIR/${PRGNAM}ui
-mkdir -p $UIDOCDIR
-for i in README TODO release-notes.txt; do
- ln -s ../../../share/$PRGNAM/${PRGNAM}ui/$i $UIDOCDIR/$i
-done
-
# Someone might find the French man page useful. It's in utf-8, so
# put it in the right dir.
mkdir -p $PKG/usr/man/fr.UTF-8/man6 $PKG/usr/man/fr/man6
@@ -208,7 +229,7 @@ for i in $PKG/usr/share/icons/hicolor/[0-9]*; do
done
ln -s application-x-st-disk-image.svg \
- $PKG/usr/share/icons/hicolor/scalable/mimetypes/x-st-executable.png
+ $PKG/usr/share/icons/hicolor/scalable/mimetypes/x-st-executable.svg
# Don't symlink emutos to tos here, do it conditionally in doinst.sh.
( cd $PKG/usr/share/$PRGNAM && mv tos.img emutos.img )
@@ -223,4 +244,4 @@ sed -e "s,@WITHSDL@,$WITHSDL," \
cat $CWD/doinst.sh > $PKG/install/doinst.sh
cd $PKG
-/sbin/makepkg -l y -c n $OUTPUT/$PRGNAM-$VERSION-$ARCH-$BUILD$TAG.${PKGTYPE:-tgz}
+/sbin/makepkg -l y -c n $OUTPUT/$PRGNAM-$VERSION-$ARCH-$BUILD$TAG.$PKGTYPE
diff --git a/games/hatari/hatari.info b/games/hatari/hatari.info
index 8b8bfb1610..0d379dc3c0 100644
--- a/games/hatari/hatari.info
+++ b/games/hatari/hatari.info
@@ -1,10 +1,10 @@
PRGNAM="hatari"
-VERSION="2.2.1"
-HOMEPAGE="http://hatari.tuxfamily.org/"
-DOWNLOAD="http://download.tuxfamily.org/hatari/2.2.1/hatari-2.2.1.tar.bz2"
-MD5SUM="fc8d3a14b38714ea0b0800fda6b5cab7"
+VERSION="2.5.0"
+HOMEPAGE="https://hatari.tuxfamily.org/"
+DOWNLOAD="https://download.tuxfamily.org/hatari/2.5.0/hatari-2.5.0.tar.bz2"
+MD5SUM="2af83f04ba9ca02a613f9d7c59d1fb72"
DOWNLOAD_x86_64=""
MD5SUM_x86_64=""
REQUIRES=""
MAINTAINER="B. Watson"
-EMAIL="yalhcru@gmail.com"
+EMAIL="urchlay@slackware.uk"
diff --git a/games/hatari/manpage.2.3.1.diff b/games/hatari/manpage.2.3.1.diff
new file mode 100644
index 0000000000..f33a6118c5
--- /dev/null
+++ b/games/hatari/manpage.2.3.1.diff
@@ -0,0 +1,319 @@
+diff -Naur hatari-2.3.0/doc/fr/hatari.1 hatari-2.3.0.patched/doc/fr/hatari.1
+--- hatari-2.3.0/doc/fr/hatari.1 2020-11-28 08:37:58.000000000 -0500
++++ hatari-2.3.0.patched/doc/fr/hatari.1 2020-12-19 00:50:09.455505119 -0500
+@@ -2,7 +2,7 @@
+ .\" First parameter, NAME, should be all caps
+ .\" Second parameter, SECTION, should be 1-8, maybe w/ subsection
+ .\" other parameters are allowed: see man(7), man(1)
+-.TH "HATARI" "1" "2008-03-14" "Hatari" ""
++.TH "HATARI" "6" "2008-03-14" "Hatari" ""
+ .\" Please adjust this date whenever revising the manpage.
+
+ .SH "NAME"
+diff -Naur hatari-2.3.0/doc/hatari.1 hatari-2.3.0.patched/doc/hatari.1
+--- hatari-2.3.0/doc/hatari.1 2020-11-28 08:37:58.000000000 -0500
++++ hatari-2.3.0.patched/doc/hatari.1 2020-12-19 00:49:56.399506306 -0500
+@@ -2,7 +2,7 @@
+ .\" First parameter, NAME, should be all caps
+ .\" Second parameter, SECTION, should be 1-8, maybe w/ subsection
+ .\" other parameters are allowed: see man(7), man(1)
+-.TH "HATARI" "1" "2020-11-27" "Hatari" ""
++.TH "HATARI" "6" "2020-12-18" "Hatari" ""
+ .\" Please adjust this date whenever revising the manpage.
+
+ .SH "NAME"
+@@ -668,7 +668,9 @@
+ will act as
+ .B Alternate
+ as well as long as you do not press it together with a Hatari hotkey
+-combination.
++combination. Note to US keyboard layout users: if you don't have an
++.B AltGr
++key on your keyboard, use the right Alt key.
+ .PP
+ The
+ .B right Ctrl
+@@ -788,40 +790,49 @@
+ .PP
+ Other Hatari programs and utilities:
+ .br
+-.IR hmsa (1),
+-.IR zip2st (1),
+-.IR atari\-convert\-dir (1),
+-.IR atari\-hd\-image (1),
+-.IR hatariui (1),
+-.IR hconsole (1),
+-.IR gst2ascii (1),
+-.IR hatari_profile (1)
++.IR hmsa (6),
++.IR zip2st (6),
++.IR atari\-convert\-dir (6),
++.IR atari\-hd\-image (6),
++.IR hatariui (6),
++.IR hconsole (6),
++.IR gst2ascii (6),
++.IR hatari_profile (6)
+
+ .SH "FILES AND DIRECTORIES"
+ .TP
+-/etc/hatari.cfg (or /usr/local/etc/hatari.cfg)
++/etc/hatari.cfg
+ The global configuration file of Hatari.
+ .TP
+ ~/.config/hatari/
+ The (default) directory for user's personal Hatari files;
+-.B hatari.cfg
++.RS 2
++.TP
++hatari.cfg
+ (configuration file),
+-.B hatari.nvram
++.TP
++hatari.nvram
+ (NVRAM content file),
+-.B hatari.sav
++.TP
++hatari.sav
+ (Hatari memory state snapshot file which Hatari can load/save automatically
+ when it starts/exits),
+-.B hatari.prn
++.TP
++hatari.prn
+ (printer output file),
++.RE
+ .TP
+-/usr/share/hatari/ (or /usr/local/share/hatari/)
++/usr/share/hatari/
+ The global data directory of Hatari.
++.RS 2
+ .TP
+ tos.img
+ The TOS ROM image will be loaded from the data directory of Hatari unless it
+ is specified on the command line or the configuration file.
++.RE
+
+ .SH "AUTHOR"
+ This manual page was written by Marco Herrn <marco@mherrn.de> for the
+ Debian project and later modified by Thomas Huth and Eero Tamminen to
+-suit the latest version of Hatari.
++suit the latest version of Hatari. Later it was modified by B. Watson
++<urchlay@slackware.uk> for the SlackBuilds.org project to fix some formatting.
+diff -Naur hatari-2.3.0/python-ui/hatariui.1 hatari-2.3.0.patched/python-ui/hatariui.1
+--- hatari-2.3.0/python-ui/hatariui.1 2020-11-28 08:37:58.000000000 -0500
++++ hatari-2.3.0.patched/python-ui/hatariui.1 2020-12-19 00:50:20.615504105 -0500
+@@ -2,7 +2,7 @@
+ .\" First parameter, NAME, should be all caps
+ .\" Second parameter, SECTION, should be 1-8, maybe w/ subsection
+ .\" other parameters are allowed: see man(7), man(1)
+-.TH "hatariui" "1" "2020-12-15" "Hatari" "Hatari UI"
++.TH "HATARIUI" "6" "2020-12-15" "Hatari" "Hatari UI"
+ .SH "NAME"
+ hatariui \- Python/Gtk UI for Hatari
+ .SH "SYNOPSIS"
+@@ -211,9 +211,9 @@
+ For more examples on Hatari UI options usage, see the hatariui shell
+ script.
+ .SH "SEE ALSO"
+-.IR hmsa (1),
+-.IR hatariui (1),
+-.IR hconsole (1)
++.IR hmsa (6),
++.IR hatariui (6),
++.IR hconsole (6)
+ .SH "COPYRIGHT"
+ Hatari UI is written by Eero Tamminen <oak at helsinkinet fi>.
+ .PP
+diff -Naur hatari-2.3.0/tools/atari-convert-dir.1 hatari-2.3.0.patched/tools/atari-convert-dir.1
+--- hatari-2.3.0/tools/atari-convert-dir.1 2020-11-28 08:37:58.000000000 -0500
++++ hatari-2.3.0.patched/tools/atari-convert-dir.1 2020-12-19 00:47:26.732519911 -0500
+@@ -1,4 +1,4 @@
+-.TH "atari-convert-dir" "1" "2015-04-26" "Hatari" "Hatari utilities"
++.TH "atari-convert-dir" "6" "2015-04-26" "Hatari" "Hatari utilities"
+ .SH NAME
+ atari\-convert\-dir \- helper for creating Atari compatible disk images
+ .SH SYNOPSIS
+@@ -16,9 +16,9 @@
+ use is also recommended with \fIzip2st\fP tool content (because Mtools
+ \fImcopy\fP doesn't convert long file names correctly for Atari).
+ .SH SEE ALSO
+-.IR atari\-hd\-image (1),
+-.IR zip2st (1),
+-.IR hatari (1),
++.IR atari\-hd\-image (6),
++.IR zip2st (6),
++.IR hatari (6),
+ .IR mcopy (1)
+ .SH "AUTHOR"
+ Written by Eero Tamminen <oak at helsinkinet fi>.
+diff -Naur hatari-2.3.0/tools/atari-hd-image.1 hatari-2.3.0.patched/tools/atari-hd-image.1
+--- hatari-2.3.0/tools/atari-hd-image.1 2020-11-28 08:37:58.000000000 -0500
++++ hatari-2.3.0.patched/tools/atari-hd-image.1 2020-12-19 00:47:08.660521554 -0500
+@@ -1,4 +1,4 @@
+-.TH "atari-hd-image" "1" "2015-04-26" "Hatari" "Hatari utilities"
++.TH "atari-hd-image" "6" "2015-04-26" "Hatari" "Hatari utilities"
+ .SH NAME
+ atari\-hd\-image \- tool for creating a harddisk image for use with Hatari
+ .SH SYNOPSIS
+@@ -37,12 +37,12 @@
+ 8MB image with partition named 'TEST', and files from content/:
+ .B atari\-hd\-image 8 8mb-disk.img TEST content/
+ .SH SEE ALSO
+-.IR atari\-convert\-dir (1),
+-.IR hmsa (1),
+-.IR zip2st (1),
+-.IR hatari (1),
+-.IR mkdosfs (1),
+-.IR sfdisk (1),
++.IR atari\-convert\-dir (6),
++.IR hmsa (6),
++.IR zip2st (6),
++.IR hatari (6),
++.IR mkdosfs (8),
++.IR sfdisk (8),
+ .IR dd (1)
+ .SH "AUTHOR"
+ Written by Eero Tamminen <oak at helsinkinet fi>.
+diff -Naur hatari-2.3.0/tools/debugger/gst2ascii.1 hatari-2.3.0.patched/tools/debugger/gst2ascii.1
+--- hatari-2.3.0/tools/debugger/gst2ascii.1 2020-11-28 08:37:58.000000000 -0500
++++ hatari-2.3.0.patched/tools/debugger/gst2ascii.1 2020-12-19 00:48:17.759515273 -0500
+@@ -2,7 +2,7 @@
+ .\" First parameter, NAME, should be all caps
+ .\" Second parameter, SECTION, should be 1-8, maybe w/ subsection
+ .\" other parameters are allowed: see man(7), man(1)
+-.TH "GST2ASCII" "1" "2017-11-11" "Hatari" "Hatari utilities"
++.TH "GST2ASCII" "6" "2017-11-11" "Hatari" "Hatari utilities"
+ .SH "NAME"
+ gst2ascii \- Filter and output Atari program symbol table as ASCII
+ .SH "SYNOPSIS"
+@@ -60,8 +60,8 @@
+ .br
+ symbols program.sym TEXT DATA BSS
+ .SH "SEE ALSO"
+-.IR hatari (1),
+-.IR hatari_profile (1)
++.IR hatari (6),
++.IR hatari_profile (6)
+ .SH "AUTHOR"
+ Written by Eero Tamminen <oak at helsinkinet fi>.
+ .SH "LICENSE"
+diff -Naur hatari-2.3.0/tools/debugger/hatari_profile.1 hatari-2.3.0.patched/tools/debugger/hatari_profile.1
+--- hatari-2.3.0/tools/debugger/hatari_profile.1 2020-11-28 08:37:58.000000000 -0500
++++ hatari-2.3.0.patched/tools/debugger/hatari_profile.1 2020-12-19 00:55:04.273478319 -0500
+@@ -2,7 +2,7 @@
+ .\" First parameter, NAME, should be all caps
+ .\" Second parameter, SECTION, should be 1-8, maybe w/ subsection
+ .\" other parameters are allowed: see man(7), man(1)
+-.TH "HATARI_PROFILE" "1" "2013-04-15" "Hatari" "Hatari utilities"
++.TH "HATARI_PROFILE" "6" "2013-04-15" "Hatari" "Hatari utilities"
+ .SH "NAME"
+ hatari_profile \- Post-processor for Hatari profiler data
+ .SH "SYNOPSIS"
+@@ -135,10 +135,10 @@
+ -------------------------------------------------------------
+ .fi
+ .SH "SEE ALSO"
+-.IR hatari (1),
+-.IR gst2ascii (1),
+-.IR hconsole (1)
+-.IR hatariui (1)
++.IR hatari (6),
++.IR gst2ascii (6),
++.IR hconsole (6),
++.IR hatariui (6)
+ .SH "AUTHOR"
+ Written by Eero Tamminen <oak at helsinkinet fi>.
+ .SH "LICENSE"
+diff -Naur hatari-2.3.0/tools/hatari-prg-args.1 hatari-2.3.0.patched/tools/hatari-prg-args.1
+--- hatari-2.3.0/tools/hatari-prg-args.1 2020-11-28 08:37:58.000000000 -0500
++++ hatari-2.3.0.patched/tools/hatari-prg-args.1 2020-12-19 00:49:08.415510668 -0500
+@@ -1,4 +1,4 @@
+-.TH "hatari-prg-args" "1" "2018-05-01" "Hatari" "Hatari utilities"
++.TH "hatari-prg-args" "6" "2018-05-01" "Hatari" "Hatari utilities"
+ .SH NAME
+ hatari\-prg\-args \- autorun Atari programs with arguments
+ .SH SYNOPSIS
+@@ -37,8 +37,8 @@
+ Run it from disk image instead of host directory:
+ .B hatari\-prg\-args -m -- 'A:\\\\SIDPLAY.TTP' 'SIDS\\\\TEST.SID'
+ .SH SEE ALSO
+-.IR hatari (1),
+-.IR hconsole (1)
++.IR hatari (6),
++.IR hconsole (6)
+ .SH "AUTHOR"
+ Written by Eero Tamminen <oak at helsinkinet fi>.
+ .SH "LICENSE"
+diff -Naur hatari-2.3.0/tools/hconsole/hconsole.1 hatari-2.3.0.patched/tools/hconsole/hconsole.1
+--- hatari-2.3.0/tools/hconsole/hconsole.1 2020-11-28 08:37:58.000000000 -0500
++++ hatari-2.3.0.patched/tools/hconsole/hconsole.1 2020-12-19 00:49:34.615508286 -0500
+@@ -2,7 +2,7 @@
+ .\" First parameter, NAME, should be all caps
+ .\" Second parameter, SECTION, should be 1-8, maybe w/ subsection
+ .\" other parameters are allowed: see man(7), man(1)
+-.TH "HCONSOLE" "1" "2010-10-10" "Hatari" "Hatari utilities"
++.TH "HCONSOLE" "6" "2010-10-10" "Hatari" "Hatari utilities"
+ .SH "NAME"
+ hconsole \- Interactive Python console for using Hatari's remote API
+ .SH "SYNOPSIS"
+@@ -52,8 +52,8 @@
+ By default hconsole and its examples are installed under
+ the /usr/share/hatari/hconsole/ directory.
+ .SH "SEE ALSO"
+-.IR hatari (1),
+-.IR hatariui (1)
++.IR hatari (6),
++.IR hatariui (6)
+ .SH "AUTHOR"
+ Written by Eero Tamminen <oak at helsinkinet fi>.
+ .SH "LICENSE"
+diff -Naur hatari-2.3.0/tools/hmsa/hmsa.1 hatari-2.3.0.patched/tools/hmsa/hmsa.1
+--- hatari-2.3.0/tools/hmsa/hmsa.1 2020-11-28 08:37:58.000000000 -0500
++++ hatari-2.3.0.patched/tools/hmsa/hmsa.1 2020-12-19 00:47:44.567518290 -0500
+@@ -2,7 +2,7 @@
+ .\" First parameter, NAME, should be all caps
+ .\" Second parameter, SECTION, should be 1-8, maybe w/ subsection
+ .\" other parameters are allowed: see man(7), man(1)
+-.TH "HMSA" "1" "2010-05-30" "Hatari" "Hatari utilities"
++.TH "HMSA" "6" "2010-05-30" "Hatari" "Hatari utilities"
+ .SH "NAME"
+ hmsa \- Atari MSA / ST disk image creator and converter
+ .SH "SYNOPSIS"
+@@ -48,9 +48,9 @@
+ .br
+ hmsa disk.msa
+ .SH "SEE ALSO"
+-.IR hatari (1),
+-.IR zip2st (1),
+-.IR atari\-hd\-image (1)
++.IR hatari (6),
++.IR zip2st (6),
++.IR atari\-hd\-image (6)
+ .SH "AUTHOR"
+ Written by Thomas Huth <huth at tuxfamily.org>. This manual page
+ added by Eero Tamminen <oak at helsinkinet fi>.
+diff -Naur hatari-2.3.0/tools/zip2st.1 hatari-2.3.0.patched/tools/zip2st.1
+--- hatari-2.3.0/tools/zip2st.1 2020-11-28 08:37:58.000000000 -0500
++++ hatari-2.3.0.patched/tools/zip2st.1 2020-12-19 00:49:25.742509093 -0500
+@@ -1,4 +1,4 @@
+-.TH "ZIP2ST" "1" "2016-02-26" "Hatari" "Hatari utilities"
++.TH "ZIP2ST" "6" "2016-02-26" "Hatari" "Hatari utilities"
+ .SH NAME
+ zip2st \- convert directory or .zip archive to .st disk image
+ .SH SYNOPSIS
+@@ -29,11 +29,11 @@
+ within a .zip archive, you need to extract them before conversion.
+ .PP
+ .SH SEE ALSO
+-.IR hmsa (1),
+-.IR atari\-convert\-dir (1),
+-.IR atari\-hd\-image (1),
+-.IR hatari (1),
+-.IR unzip (1),
++.IR hmsa (6),
++.IR atari\-convert\-dir (6),
++.IR atari\-hd\-image (6),
++.IR hatari (6),
++.IR unzip (6),
+ .IR mtools (1),
+ .IR basename (1),
+ .IR dd (1).
diff --git a/games/hatari/manpage.2.4.1.diff b/games/hatari/manpage.2.4.1.diff
new file mode 100644
index 0000000000..871e2a0f48
--- /dev/null
+++ b/games/hatari/manpage.2.4.1.diff
@@ -0,0 +1,319 @@
+diff -Naur hatari-2.4.1/doc/fr/hatari.1 hatari-2.4.1.patched/doc/fr/hatari.1
+--- hatari-2.4.1/doc/fr/hatari.1 2022-08-03 16:15:47.000000000 -0400
++++ hatari-2.4.1.patched/doc/fr/hatari.1 2023-01-07 03:22:23.103146830 -0500
+@@ -2,7 +2,7 @@
+ .\" First parameter, NAME, should be all caps
+ .\" Second parameter, SECTION, should be 1-8, maybe w/ subsection
+ .\" other parameters are allowed: see man(7), man(1)
+-.TH "HATARI" "1" "2008-03-14" "Hatari" ""
++.TH "HATARI" "6" "2008-03-14" "Hatari" ""
+ .\" Please adjust this date whenever revising the manpage.
+
+ .SH "NAME"
+diff -Naur hatari-2.4.1/doc/hatari.1 hatari-2.4.1.patched/doc/hatari.1
+--- hatari-2.4.1/doc/hatari.1 2022-08-03 16:15:47.000000000 -0400
++++ hatari-2.4.1.patched/doc/hatari.1 2023-01-07 03:22:23.103146830 -0500
+@@ -2,7 +2,7 @@
+ .\" First parameter, NAME, should be all caps
+ .\" Second parameter, SECTION, should be 1-8, maybe w/ subsection
+ .\" other parameters are allowed: see man(7), man(1)
+-.TH "HATARI" "1" "2020-11-27" "Hatari" ""
++.TH "HATARI" "6" "2020-12-18" "Hatari" ""
+ .\" Please adjust this date whenever revising the manpage.
+
+ .SH "NAME"
+@@ -680,7 +680,9 @@
+ will act as
+ .B Alternate
+ as well as long as you do not press it together with a Hatari hotkey
+-combination.
++combination. Note to US keyboard layout users: if you don't have an
++.B AltGr
++key on your keyboard, use the right Alt key.
+ .PP
+ The
+ .B right Ctrl
+@@ -806,40 +808,49 @@
+ .PP
+ Other Hatari programs and utilities:
+ .br
+-.IR hmsa (1),
+-.IR zip2st (1),
+-.IR atari\-convert\-dir (1),
+-.IR atari\-hd\-image (1),
+-.IR hatariui (1),
+-.IR hconsole (1),
+-.IR gst2ascii (1),
+-.IR hatari_profile (1)
++.IR hmsa (6),
++.IR zip2st (6),
++.IR atari\-convert\-dir (6),
++.IR atari\-hd\-image (6),
++.IR hatariui (6),
++.IR hconsole (6),
++.IR gst2ascii (6),
++.IR hatari_profile (6)
+
+ .SH "FILES AND DIRECTORIES"
+ .TP
+-/etc/hatari.cfg (or /usr/local/etc/hatari.cfg)
++/etc/hatari.cfg
+ The global configuration file of Hatari.
+ .TP
+ ~/.config/hatari/
+ The (default) directory for user's personal Hatari files;
+-.B hatari.cfg
++.RS 2
++.TP
++hatari.cfg
+ (configuration file),
+-.B hatari.nvram
++.TP
++hatari.nvram
+ (NVRAM content file),
+-.B hatari.sav
++.TP
++hatari.sav
+ (Hatari memory state snapshot file which Hatari can load/save automatically
+ when it starts/exits),
+-.B hatari.prn
++.TP
++hatari.prn
+ (printer output file),
++.RE
+ .TP
+-/usr/share/hatari/ (or /usr/local/share/hatari/)
++/usr/share/hatari/
+ The global data directory of Hatari.
++.RS 2
+ .TP
+ tos.img
+ The TOS ROM image will be loaded from the data directory of Hatari unless it
+ is specified on the command line or the configuration file.
++.RE
+
+ .SH "AUTHOR"
+ This manual page was written by Marco Herrn <marco@mherrn.de> for the
+ Debian project and later modified by Thomas Huth and Eero Tamminen to
+-suit the latest version of Hatari.
++suit the latest version of Hatari. Later it was modified by B. Watson
++<urchlay@slackware.uk> for the SlackBuilds.org project to fix some formatting.
+diff -Naur hatari-2.4.1/python-ui/hatariui.1 hatari-2.4.1.patched/python-ui/hatariui.1
+--- hatari-2.4.1/python-ui/hatariui.1 2022-08-03 16:15:47.000000000 -0400
++++ hatari-2.4.1.patched/python-ui/hatariui.1 2023-01-07 03:22:23.103146830 -0500
+@@ -2,7 +2,7 @@
+ .\" First parameter, NAME, should be all caps
+ .\" Second parameter, SECTION, should be 1-8, maybe w/ subsection
+ .\" other parameters are allowed: see man(7), man(1)
+-.TH "hatariui" "1" "2020-12-15" "Hatari" "Hatari UI"
++.TH "HATARIUI" "6" "2020-12-15" "Hatari" "Hatari UI"
+ .SH "NAME"
+ hatariui \- Python/Gtk UI for Hatari
+ .SH "SYNOPSIS"
+@@ -211,9 +211,9 @@
+ For more examples on Hatari UI options usage, see the hatariui shell
+ script.
+ .SH "SEE ALSO"
+-.IR hmsa (1),
+-.IR hatariui (1),
+-.IR hconsole (1)
++.IR hmsa (6),
++.IR hatariui (6),
++.IR hconsole (6)
+ .SH "COPYRIGHT"
+ Hatari UI is written by Eero Tamminen <oak at helsinkinet fi>.
+ .PP
+diff -Naur hatari-2.4.1/tools/atari-convert-dir.1 hatari-2.4.1.patched/tools/atari-convert-dir.1
+--- hatari-2.4.1/tools/atari-convert-dir.1 2022-08-03 16:15:47.000000000 -0400
++++ hatari-2.4.1.patched/tools/atari-convert-dir.1 2023-01-07 03:22:23.103146830 -0500
+@@ -1,4 +1,4 @@
+-.TH "atari-convert-dir" "1" "2015-04-26" "Hatari" "Hatari utilities"
++.TH "atari-convert-dir" "6" "2015-04-26" "Hatari" "Hatari utilities"
+ .SH NAME
+ atari\-convert\-dir \- helper for creating Atari compatible disk images
+ .SH SYNOPSIS
+@@ -16,9 +16,9 @@
+ use is also recommended with \fIzip2st\fP tool content (because Mtools
+ \fImcopy\fP doesn't convert long file names correctly for Atari).
+ .SH SEE ALSO
+-.IR atari\-hd\-image (1),
+-.IR zip2st (1),
+-.IR hatari (1),
++.IR atari\-hd\-image (6),
++.IR zip2st (6),
++.IR hatari (6),
+ .IR mcopy (1)
+ .SH "AUTHOR"
+ Written by Eero Tamminen <oak at helsinkinet fi>.
+diff -Naur hatari-2.4.1/tools/atari-hd-image.1 hatari-2.4.1.patched/tools/atari-hd-image.1
+--- hatari-2.4.1/tools/atari-hd-image.1 2022-08-03 16:15:47.000000000 -0400
++++ hatari-2.4.1.patched/tools/atari-hd-image.1 2023-01-07 03:22:23.103146830 -0500
+@@ -1,4 +1,4 @@
+-.TH "atari-hd-image" "1" "2015-04-26" "Hatari" "Hatari utilities"
++.TH "atari-hd-image" "6" "2015-04-26" "Hatari" "Hatari utilities"
+ .SH NAME
+ atari\-hd\-image \- tool for creating a harddisk image for use with Hatari
+ .SH SYNOPSIS
+@@ -37,12 +37,12 @@
+ 8MB image with partition named 'TEST', and files from content/:
+ .B atari\-hd\-image 8 8mb-disk.img TEST content/
+ .SH SEE ALSO
+-.IR atari\-convert\-dir (1),
+-.IR hmsa (1),
+-.IR zip2st (1),
+-.IR hatari (1),
+-.IR mkdosfs (1),
+-.IR sfdisk (1),
++.IR atari\-convert\-dir (6),
++.IR hmsa (6),
++.IR zip2st (6),
++.IR hatari (6),
++.IR mkdosfs (8),
++.IR sfdisk (8),
+ .IR dd (1)
+ .SH "AUTHOR"
+ Written by Eero Tamminen <oak at helsinkinet fi>.
+diff -Naur hatari-2.4.1/tools/debugger/gst2ascii.1 hatari-2.4.1.patched/tools/debugger/gst2ascii.1
+--- hatari-2.4.1/tools/debugger/gst2ascii.1 2022-08-03 16:15:47.000000000 -0400
++++ hatari-2.4.1.patched/tools/debugger/gst2ascii.1 2023-01-07 03:22:23.104146847 -0500
+@@ -2,7 +2,7 @@
+ .\" First parameter, NAME, should be all caps
+ .\" Second parameter, SECTION, should be 1-8, maybe w/ subsection
+ .\" other parameters are allowed: see man(7), man(1)
+-.TH "GST2ASCII" "1" "2017-11-11" "Hatari" "Hatari utilities"
++.TH "GST2ASCII" "6" "2017-11-11" "Hatari" "Hatari utilities"
+ .SH "NAME"
+ gst2ascii \- Filter and output Atari program symbol table as ASCII
+ .SH "SYNOPSIS"
+@@ -60,8 +60,8 @@
+ .br
+ symbols program.sym TEXT DATA BSS
+ .SH "SEE ALSO"
+-.IR hatari (1),
+-.IR hatari_profile (1)
++.IR hatari (6),
++.IR hatari_profile (6)
+ .SH "AUTHOR"
+ Written by Eero Tamminen <oak at helsinkinet fi>.
+ .SH "LICENSE"
+diff -Naur hatari-2.4.1/tools/debugger/hatari_profile.1 hatari-2.4.1.patched/tools/debugger/hatari_profile.1
+--- hatari-2.4.1/tools/debugger/hatari_profile.1 2022-08-03 16:15:47.000000000 -0400
++++ hatari-2.4.1.patched/tools/debugger/hatari_profile.1 2023-01-07 03:22:23.104146847 -0500
+@@ -2,7 +2,7 @@
+ .\" First parameter, NAME, should be all caps
+ .\" Second parameter, SECTION, should be 1-8, maybe w/ subsection
+ .\" other parameters are allowed: see man(7), man(1)
+-.TH "HATARI_PROFILE" "1" "2013-04-15" "Hatari" "Hatari utilities"
++.TH "HATARI_PROFILE" "6" "2013-04-15" "Hatari" "Hatari utilities"
+ .SH "NAME"
+ hatari_profile \- Post-processor for Hatari profiler data
+ .SH "SYNOPSIS"
+@@ -151,10 +151,10 @@
+ -------------------------------------------------------------
+ .fi
+ .SH "SEE ALSO"
+-.IR hatari (1),
+-.IR gst2ascii (1),
+-.IR hconsole (1)
+-.IR hatariui (1)
++.IR hatari (6),
++.IR gst2ascii (6),
++.IR hconsole (6),
++.IR hatariui (6)
+ .SH "AUTHOR"
+ Written by Eero Tamminen <oak at helsinkinet fi>.
+ .SH "LICENSE"
+diff -Naur hatari-2.4.1/tools/hatari-prg-args.1 hatari-2.4.1.patched/tools/hatari-prg-args.1
+--- hatari-2.4.1/tools/hatari-prg-args.1 2022-08-03 16:15:47.000000000 -0400
++++ hatari-2.4.1.patched/tools/hatari-prg-args.1 2023-01-07 03:22:23.104146847 -0500
+@@ -1,4 +1,4 @@
+-.TH "hatari-prg-args" "1" "2018-05-01" "Hatari" "Hatari utilities"
++.TH "hatari-prg-args" "6" "2018-05-01" "Hatari" "Hatari utilities"
+ .SH NAME
+ hatari\-prg\-args \- autorun Atari programs with arguments
+ .SH SYNOPSIS
+@@ -37,8 +37,8 @@
+ Run it from disk image instead of host directory:
+ .B hatari\-prg\-args -m -- 'A:\\\\SIDPLAY.TTP' 'SIDS\\\\TEST.SID'
+ .SH SEE ALSO
+-.IR hatari (1),
+-.IR hconsole (1)
++.IR hatari (6),
++.IR hconsole (6)
+ .SH "AUTHOR"
+ Written by Eero Tamminen <oak at helsinkinet fi>.
+ .SH "LICENSE"
+diff -Naur hatari-2.4.1/tools/hconsole/hconsole.1 hatari-2.4.1.patched/tools/hconsole/hconsole.1
+--- hatari-2.4.1/tools/hconsole/hconsole.1 2022-08-03 16:15:47.000000000 -0400
++++ hatari-2.4.1.patched/tools/hconsole/hconsole.1 2023-01-07 03:22:23.104146847 -0500
+@@ -2,7 +2,7 @@
+ .\" First parameter, NAME, should be all caps
+ .\" Second parameter, SECTION, should be 1-8, maybe w/ subsection
+ .\" other parameters are allowed: see man(7), man(1)
+-.TH "HCONSOLE" "1" "2010-10-10" "Hatari" "Hatari utilities"
++.TH "HCONSOLE" "6" "2010-10-10" "Hatari" "Hatari utilities"
+ .SH "NAME"
+ hconsole \- Interactive Python console for using Hatari's remote API
+ .SH "SYNOPSIS"
+@@ -52,8 +52,8 @@
+ By default hconsole and its examples are installed under
+ the /usr/share/hatari/hconsole/ directory.
+ .SH "SEE ALSO"
+-.IR hatari (1),
+-.IR hatariui (1)
++.IR hatari (6),
++.IR hatariui (6)
+ .SH "AUTHOR"
+ Written by Eero Tamminen <oak at helsinkinet fi>.
+ .SH "LICENSE"
+diff -Naur hatari-2.4.1/tools/hmsa/hmsa.1 hatari-2.4.1.patched/tools/hmsa/hmsa.1
+--- hatari-2.4.1/tools/hmsa/hmsa.1 2022-08-03 16:15:47.000000000 -0400
++++ hatari-2.4.1.patched/tools/hmsa/hmsa.1 2023-01-07 03:22:23.104146847 -0500
+@@ -2,7 +2,7 @@
+ .\" First parameter, NAME, should be all caps
+ .\" Second parameter, SECTION, should be 1-8, maybe w/ subsection
+ .\" other parameters are allowed: see man(7), man(1)
+-.TH "HMSA" "1" "2010-05-30" "Hatari" "Hatari utilities"
++.TH "HMSA" "6" "2010-05-30" "Hatari" "Hatari utilities"
+ .SH "NAME"
+ hmsa \- Atari MSA / ST disk image creator and converter
+ .SH "SYNOPSIS"
+@@ -48,9 +48,9 @@
+ .br
+ hmsa disk.msa
+ .SH "SEE ALSO"
+-.IR hatari (1),
+-.IR zip2st (1),
+-.IR atari\-hd\-image (1)
++.IR hatari (6),
++.IR zip2st (6),
++.IR atari\-hd\-image (6)
+ .SH "AUTHOR"
+ Written by Thomas Huth <huth at tuxfamily.org>. This manual page
+ added by Eero Tamminen <oak at helsinkinet fi>.
+diff -Naur hatari-2.4.1/tools/zip2st.1 hatari-2.4.1.patched/tools/zip2st.1
+--- hatari-2.4.1/tools/zip2st.1 2022-08-03 16:15:47.000000000 -0400
++++ hatari-2.4.1.patched/tools/zip2st.1 2023-01-07 03:22:23.104146847 -0500
+@@ -1,4 +1,4 @@
+-.TH "ZIP2ST" "1" "2016-02-26" "Hatari" "Hatari utilities"
++.TH "ZIP2ST" "6" "2016-02-26" "Hatari" "Hatari utilities"
+ .SH NAME
+ zip2st \- convert directory or .zip archive to .st disk image
+ .SH SYNOPSIS
+@@ -29,11 +29,11 @@
+ within a .zip archive, you need to extract them before conversion.
+ .PP
+ .SH SEE ALSO
+-.IR hmsa (1),
+-.IR atari\-convert\-dir (1),
+-.IR atari\-hd\-image (1),
+-.IR hatari (1),
+-.IR unzip (1),
++.IR hmsa (6),
++.IR atari\-convert\-dir (6),
++.IR atari\-hd\-image (6),
++.IR hatari (6),
++.IR unzip (6),
+ .IR mtools (1),
+ .IR basename (1),
+ .IR dd (1).
diff --git a/games/hatari/manpage.2.5.0.diff b/games/hatari/manpage.2.5.0.diff
new file mode 100644
index 0000000000..3561b36042
--- /dev/null
+++ b/games/hatari/manpage.2.5.0.diff
@@ -0,0 +1,319 @@
+diff -Naur hatari-2.5.0/doc/fr/hatari.1 hatari-2.5.0.patched/doc/fr/hatari.1
+--- hatari-2.5.0/doc/fr/hatari.1 2024-04-18 16:01:11.000000000 -0400
++++ hatari-2.5.0.patched/doc/fr/hatari.1 2024-04-19 16:53:49.810570658 -0400
+@@ -2,7 +2,7 @@
+ .\" First parameter, NAME, should be all caps
+ .\" Second parameter, SECTION, should be 1-8, maybe w/ subsection
+ .\" other parameters are allowed: see man(7), man(1)
+-.TH "HATARI" "1" "2008-03-14" "Hatari" ""
++.TH "HATARI" "6" "2008-03-14" "Hatari" ""
+ .\" Please adjust this date whenever revising the manpage.
+
+ .SH "NAME"
+diff -Naur hatari-2.5.0/doc/hatari.1 hatari-2.5.0.patched/doc/hatari.1
+--- hatari-2.5.0/doc/hatari.1 2024-04-18 16:01:11.000000000 -0400
++++ hatari-2.5.0.patched/doc/hatari.1 2024-04-19 16:53:49.810570658 -0400
+@@ -2,7 +2,7 @@
+ .\" First parameter, NAME, should be all caps
+ .\" Second parameter, SECTION, should be 1-8, maybe w/ subsection
+ .\" other parameters are allowed: see man(7), man(1)
+-.TH "HATARI" "1" "2020-11-27" "Hatari" ""
++.TH "HATARI" "6" "2020-12-18" "Hatari" ""
+ .\" Please adjust this date whenever revising the manpage.
+
+ .SH "NAME"
+@@ -710,7 +710,9 @@
+ will act as
+ .B Alternate
+ as well as long as you do not press it together with a Hatari hotkey
+-combination.
++combination. Note to US keyboard layout users: if you don't have an
++.B AltGr
++key on your keyboard, use the right Alt key.
+ .PP
+ The
+ .B right Ctrl
+@@ -836,40 +838,49 @@
+ .PP
+ Other Hatari programs and utilities:
+ .br
+-.IR hmsa (1),
+-.IR zip2st (1),
+-.IR atari\-convert\-dir (1),
+-.IR atari\-hd\-image (1),
+-.IR hatariui (1),
+-.IR hconsole (1),
+-.IR gst2ascii (1),
+-.IR hatari_profile (1)
++.IR hmsa (6),
++.IR zip2st (6),
++.IR atari\-convert\-dir (6),
++.IR atari\-hd\-image (6),
++.IR hatariui (6),
++.IR hconsole (6),
++.IR gst2ascii (6),
++.IR hatari_profile (6)
+
+ .SH "FILES AND DIRECTORIES"
+ .TP
+-/etc/hatari.cfg (or /usr/local/etc/hatari.cfg)
++/etc/hatari.cfg
+ The global configuration file of Hatari.
+ .TP
+ ~/.config/hatari/
+ The (default) directory for user's personal Hatari files;
+-.B hatari.cfg
++.RS 2
++.TP
++hatari.cfg
+ (configuration file),
+-.B hatari.nvram
++.TP
++hatari.nvram
+ (NVRAM content file),
+-.B hatari.sav
++.TP
++hatari.sav
+ (Hatari memory state snapshot file which Hatari can load/save automatically
+ when it starts/exits),
+-.B hatari.prn
++.TP
++hatari.prn
+ (printer output file),
++.RE
+ .TP
+-/usr/share/hatari/ (or /usr/local/share/hatari/)
++/usr/share/hatari/
+ The global data directory of Hatari.
++.RS 2
+ .TP
+ tos.img
+ The TOS ROM image will be loaded from the data directory of Hatari unless it
+ is specified on the command line or the configuration file.
++.RE
+
+ .SH "AUTHOR"
+ This manual page was written by Marco Herrn <marco@mherrn.de> for the
+ Debian project and later modified by Thomas Huth and Eero Tamminen to
+-suit the latest version of Hatari.
++suit the latest version of Hatari. Later it was modified by B. Watson
++<urchlay@slackware.uk> for the SlackBuilds.org project to fix some formatting.
+diff -Naur hatari-2.5.0/python-ui/hatariui.1 hatari-2.5.0.patched/python-ui/hatariui.1
+--- hatari-2.5.0/python-ui/hatariui.1 2024-04-18 16:01:11.000000000 -0400
++++ hatari-2.5.0.patched/python-ui/hatariui.1 2024-04-19 16:53:49.810570658 -0400
+@@ -2,7 +2,7 @@
+ .\" First parameter, NAME, should be all caps
+ .\" Second parameter, SECTION, should be 1-8, maybe w/ subsection
+ .\" other parameters are allowed: see man(7), man(1)
+-.TH "hatariui" "1" "2020-12-15" "Hatari" "Hatari UI"
++.TH "HATARIUI" "6" "2020-12-15" "Hatari" "Hatari UI"
+ .SH "NAME"
+ hatariui \- Python/Gtk UI for Hatari
+ .SH "SYNOPSIS"
+@@ -211,9 +211,9 @@
+ For more examples on Hatari UI options usage, see the hatariui shell
+ script.
+ .SH "SEE ALSO"
+-.IR hmsa (1),
+-.IR hatariui (1),
+-.IR hconsole (1)
++.IR hmsa (6),
++.IR hatariui (6),
++.IR hconsole (6)
+ .SH "COPYRIGHT"
+ Hatari UI is written by Eero Tamminen <oak at helsinkinet fi>.
+ .PP
+diff -Naur hatari-2.5.0/tools/atari-convert-dir.1 hatari-2.5.0.patched/tools/atari-convert-dir.1
+--- hatari-2.5.0/tools/atari-convert-dir.1 2024-04-18 16:01:11.000000000 -0400
++++ hatari-2.5.0.patched/tools/atari-convert-dir.1 2024-04-19 16:53:49.811570658 -0400
+@@ -1,4 +1,4 @@
+-.TH "atari-convert-dir" "1" "2015-04-26" "Hatari" "Hatari utilities"
++.TH "atari-convert-dir" "6" "2015-04-26" "Hatari" "Hatari utilities"
+ .SH NAME
+ atari\-convert\-dir \- helper for creating Atari compatible disk images
+ .SH SYNOPSIS
+@@ -16,9 +16,9 @@
+ use is also recommended with \fIzip2st\fP tool content (because Mtools
+ \fImcopy\fP doesn't convert long file names correctly for Atari).
+ .SH SEE ALSO
+-.IR atari\-hd\-image (1),
+-.IR zip2st (1),
+-.IR hatari (1),
++.IR atari\-hd\-image (6),
++.IR zip2st (6),
++.IR hatari (6),
+ .IR mcopy (1)
+ .SH "AUTHOR"
+ Written by Eero Tamminen <oak at helsinkinet fi>.
+diff -Naur hatari-2.5.0/tools/atari-hd-image.1 hatari-2.5.0.patched/tools/atari-hd-image.1
+--- hatari-2.5.0/tools/atari-hd-image.1 2024-04-18 16:01:11.000000000 -0400
++++ hatari-2.5.0.patched/tools/atari-hd-image.1 2024-04-19 16:53:49.811570658 -0400
+@@ -1,4 +1,4 @@
+-.TH "atari-hd-image" "1" "2015-04-26" "Hatari" "Hatari utilities"
++.TH "atari-hd-image" "6" "2015-04-26" "Hatari" "Hatari utilities"
+ .SH NAME
+ atari\-hd\-image \- tool for creating a harddisk image for use with Hatari
+ .SH SYNOPSIS
+@@ -37,12 +37,12 @@
+ 8MB image with partition named 'TEST', and files from content/:
+ .B atari\-hd\-image 8 8mb-disk.img TEST content/
+ .SH SEE ALSO
+-.IR atari\-convert\-dir (1),
+-.IR hmsa (1),
+-.IR zip2st (1),
+-.IR hatari (1),
+-.IR mkdosfs (1),
+-.IR sfdisk (1),
++.IR atari\-convert\-dir (6),
++.IR hmsa (6),
++.IR zip2st (6),
++.IR hatari (6),
++.IR mkdosfs (8),
++.IR sfdisk (8),
+ .IR dd (1)
+ .SH "AUTHOR"
+ Written by Eero Tamminen <oak at helsinkinet fi>.
+diff -Naur hatari-2.5.0/tools/debugger/gst2ascii.1 hatari-2.5.0.patched/tools/debugger/gst2ascii.1
+--- hatari-2.5.0/tools/debugger/gst2ascii.1 2024-04-18 16:01:11.000000000 -0400
++++ hatari-2.5.0.patched/tools/debugger/gst2ascii.1 2024-04-19 16:55:29.692561258 -0400
+@@ -2,7 +2,7 @@
+ .\" First parameter, NAME, should be all caps
+ .\" Second parameter, SECTION, should be 1-8, maybe w/ subsection
+ .\" other parameters are allowed: see man(7), man(1)
+-.TH "GST2ASCII" "1" "2023-09-03" "Hatari" "Hatari utilities"
++.TH "GST2ASCII" "6" "2023-09-03" "Hatari" "Hatari Utilities"
+ .SH "NAME"
+ gst2ascii \- Filter and output Atari program symbol table as ASCII
+ .SH "SYNOPSIS"
+@@ -74,8 +74,8 @@
+ .br
+ symbols program.sym TEXT DATA BSS
+ .SH "SEE ALSO"
+-.IR hatari (1),
+-.IR hatari_profile (1)
++.IR hatari (6),
++.IR hatari_profile (6)
+ .SH "AUTHOR"
+ Written by Eero Tamminen <oak at helsinkinet fi>.
+ .SH "LICENSE"
+diff -Naur hatari-2.5.0/tools/debugger/hatari_profile.1 hatari-2.5.0.patched/tools/debugger/hatari_profile.1
+--- hatari-2.5.0/tools/debugger/hatari_profile.1 2024-04-18 16:01:11.000000000 -0400
++++ hatari-2.5.0.patched/tools/debugger/hatari_profile.1 2024-04-19 16:53:49.811570658 -0400
+@@ -2,7 +2,7 @@
+ .\" First parameter, NAME, should be all caps
+ .\" Second parameter, SECTION, should be 1-8, maybe w/ subsection
+ .\" other parameters are allowed: see man(7), man(1)
+-.TH "HATARI_PROFILE" "1" "2013-04-15" "Hatari" "Hatari utilities"
++.TH "HATARI_PROFILE" "6" "2013-04-15" "Hatari" "Hatari utilities"
+ .SH "NAME"
+ hatari_profile \- Post-processor for Hatari profiler data
+ .SH "SYNOPSIS"
+@@ -151,10 +151,10 @@
+ -------------------------------------------------------------
+ .fi
+ .SH "SEE ALSO"
+-.IR hatari (1),
+-.IR gst2ascii (1),
+-.IR hconsole (1)
+-.IR hatariui (1)
++.IR hatari (6),
++.IR gst2ascii (6),
++.IR hconsole (6),
++.IR hatariui (6)
+ .SH "AUTHOR"
+ Written by Eero Tamminen <oak at helsinkinet fi>.
+ .SH "LICENSE"
+diff -Naur hatari-2.5.0/tools/hatari-prg-args.1 hatari-2.5.0.patched/tools/hatari-prg-args.1
+--- hatari-2.5.0/tools/hatari-prg-args.1 2024-04-18 16:01:11.000000000 -0400
++++ hatari-2.5.0.patched/tools/hatari-prg-args.1 2024-04-19 16:53:49.811570658 -0400
+@@ -1,4 +1,4 @@
+-.TH "hatari-prg-args" "1" "2018-05-01" "Hatari" "Hatari utilities"
++.TH "hatari-prg-args" "6" "2018-05-01" "Hatari" "Hatari utilities"
+ .SH NAME
+ hatari\-prg\-args \- autorun Atari programs with arguments
+ .SH SYNOPSIS
+@@ -37,8 +37,8 @@
+ Run it from disk image instead of host directory:
+ .B hatari\-prg\-args -m -- 'A:\\\\SIDPLAY.TTP' 'SIDS\\\\TEST.SID'
+ .SH SEE ALSO
+-.IR hatari (1),
+-.IR hconsole (1)
++.IR hatari (6),
++.IR hconsole (6)
+ .SH "AUTHOR"
+ Written by Eero Tamminen <oak at helsinkinet fi>.
+ .SH "LICENSE"
+diff -Naur hatari-2.5.0/tools/hconsole/hconsole.1 hatari-2.5.0.patched/tools/hconsole/hconsole.1
+--- hatari-2.5.0/tools/hconsole/hconsole.1 2024-04-18 16:01:11.000000000 -0400
++++ hatari-2.5.0.patched/tools/hconsole/hconsole.1 2024-04-19 16:53:49.811570658 -0400
+@@ -2,7 +2,7 @@
+ .\" First parameter, NAME, should be all caps
+ .\" Second parameter, SECTION, should be 1-8, maybe w/ subsection
+ .\" other parameters are allowed: see man(7), man(1)
+-.TH "HCONSOLE" "1" "2010-10-10" "Hatari" "Hatari utilities"
++.TH "HCONSOLE" "6" "2010-10-10" "Hatari" "Hatari utilities"
+ .SH "NAME"
+ hconsole \- Interactive Python console for using Hatari's remote API
+ .SH "SYNOPSIS"
+@@ -52,8 +52,8 @@
+ By default hconsole and its examples are installed under
+ the /usr/share/hatari/hconsole/ directory.
+ .SH "SEE ALSO"
+-.IR hatari (1),
+-.IR hatariui (1)
++.IR hatari (6),
++.IR hatariui (6)
+ .SH "AUTHOR"
+ Written by Eero Tamminen <oak at helsinkinet fi>.
+ .SH "LICENSE"
+diff -Naur hatari-2.5.0/tools/hmsa/hmsa.1 hatari-2.5.0.patched/tools/hmsa/hmsa.1
+--- hatari-2.5.0/tools/hmsa/hmsa.1 2024-04-18 16:01:11.000000000 -0400
++++ hatari-2.5.0.patched/tools/hmsa/hmsa.1 2024-04-19 16:53:49.812570658 -0400
+@@ -2,7 +2,7 @@
+ .\" First parameter, NAME, should be all caps
+ .\" Second parameter, SECTION, should be 1-8, maybe w/ subsection
+ .\" other parameters are allowed: see man(7), man(1)
+-.TH "HMSA" "1" "2010-05-30" "Hatari" "Hatari utilities"
++.TH "HMSA" "6" "2010-05-30" "Hatari" "Hatari utilities"
+ .SH "NAME"
+ hmsa \- Atari MSA / ST disk image creator and converter
+ .SH "SYNOPSIS"
+@@ -48,9 +48,9 @@
+ .br
+ hmsa disk.msa
+ .SH "SEE ALSO"
+-.IR hatari (1),
+-.IR zip2st (1),
+-.IR atari\-hd\-image (1)
++.IR hatari (6),
++.IR zip2st (6),
++.IR atari\-hd\-image (6)
+ .SH "AUTHOR"
+ Written by Thomas Huth <huth at tuxfamily.org>. This manual page
+ added by Eero Tamminen <oak at helsinkinet fi>.
+diff -Naur hatari-2.5.0/tools/zip2st.1 hatari-2.5.0.patched/tools/zip2st.1
+--- hatari-2.5.0/tools/zip2st.1 2024-04-18 16:01:11.000000000 -0400
++++ hatari-2.5.0.patched/tools/zip2st.1 2024-04-19 16:53:49.812570658 -0400
+@@ -1,4 +1,4 @@
+-.TH "ZIP2ST" "1" "2016-02-26" "Hatari" "Hatari utilities"
++.TH "ZIP2ST" "6" "2016-02-26" "Hatari" "Hatari utilities"
+ .SH NAME
+ zip2st \- convert directory or .zip archive to .st disk image
+ .SH SYNOPSIS
+@@ -29,11 +29,11 @@
+ within a .zip archive, you need to extract them before conversion.
+ .PP
+ .SH SEE ALSO
+-.IR hmsa (1),
+-.IR atari\-convert\-dir (1),
+-.IR atari\-hd\-image (1),
+-.IR hatari (1),
+-.IR unzip (1),
++.IR hmsa (6),
++.IR atari\-convert\-dir (6),
++.IR atari\-hd\-image (6),
++.IR hatari (6),
++.IR unzip (6),
+ .IR mtools (1),
+ .IR basename (1),
+ .IR dd (1).
diff --git a/games/hatari/manpage.diff b/games/hatari/manpage.diff
index 82f9ed921a..e559d5496b 100644
--- a/games/hatari/manpage.diff
+++ b/games/hatari/manpage.diff
@@ -1,25 +1,28 @@
-diff -Naur hatari-2.2.1/doc/hatari.1 hatari-2.2.1.patched/doc/hatari.1
---- hatari-2.2.1/doc/hatari.1 2019-02-08 03:30:10.000000000 -0500
-+++ hatari-2.2.1.patched/doc/hatari.1 2020-04-26 23:41:11.738132546 -0400
+diff -Naur hatari-2.3.0/doc/fr/hatari.1 hatari-2.3.0.patched/doc/fr/hatari.1
+--- hatari-2.3.0/doc/fr/hatari.1 2020-11-28 08:37:58.000000000 -0500
++++ hatari-2.3.0.patched/doc/fr/hatari.1 2020-12-19 00:50:09.455505119 -0500
@@ -2,7 +2,7 @@
.\" First parameter, NAME, should be all caps
.\" Second parameter, SECTION, should be 1-8, maybe w/ subsection
.\" other parameters are allowed: see man(7), man(1)
--.TH "HATARI" "1" "2014-05-08" "Hatari" ""
-+.TH "HATARI" "1" "2020-04-26" "Hatari" ""
+-.TH "HATARI" "1" "2008-03-14" "Hatari" ""
++.TH "HATARI" "6" "2008-03-14" "Hatari" ""
.\" Please adjust this date whenever revising the manpage.
.SH "NAME"
-@@ -557,7 +557,7 @@
- .TP
- .B \-\-benchmark
- Start in benchmark mode (use with --run-vbls).
--This allows to measure the speed of the emulation in frames per second
-+This allows measuring the speed of the emulation in frames per second
- by running at maximum speed (don't wait for VBL). Disable audio/video
- output to have as little OS overhead as possible
+diff -Naur hatari-2.3.0/doc/hatari.1 hatari-2.3.0.patched/doc/hatari.1
+--- hatari-2.3.0/doc/hatari.1 2020-11-28 08:37:58.000000000 -0500
++++ hatari-2.3.0.patched/doc/hatari.1 2020-12-19 00:49:56.399506306 -0500
+@@ -2,7 +2,7 @@
+ .\" First parameter, NAME, should be all caps
+ .\" Second parameter, SECTION, should be 1-8, maybe w/ subsection
+ .\" other parameters are allowed: see man(7), man(1)
+-.TH "HATARI" "1" "2020-11-27" "Hatari" ""
++.TH "HATARI" "6" "2020-12-18" "Hatari" ""
+ .\" Please adjust this date whenever revising the manpage.
-@@ -599,7 +599,9 @@
+ .SH "NAME"
+@@ -668,7 +668,9 @@
will act as
.B Alternate
as well as long as you do not press it together with a Hatari hotkey
@@ -30,7 +33,26 @@ diff -Naur hatari-2.2.1/doc/hatari.1 hatari-2.2.1.patched/doc/hatari.1
.PP
The
.B right Ctrl
-@@ -730,33 +732,45 @@
+@@ -788,40 +790,49 @@
+ .PP
+ Other Hatari programs and utilities:
+ .br
+-.IR hmsa (1),
+-.IR zip2st (1),
+-.IR atari\-convert\-dir (1),
+-.IR atari\-hd\-image (1),
+-.IR hatariui (1),
+-.IR hconsole (1),
+-.IR gst2ascii (1),
+-.IR hatari_profile (1)
++.IR hmsa (6),
++.IR zip2st (6),
++.IR atari\-convert\-dir (6),
++.IR atari\-hd\-image (6),
++.IR hatariui (6),
++.IR hconsole (6),
++.IR gst2ascii (6),
++.IR hatari_profile (6)
.SH "FILES AND DIRECTORIES"
.TP
@@ -38,8 +60,7 @@ diff -Naur hatari-2.2.1/doc/hatari.1 hatari-2.2.1.patched/doc/hatari.1
+/etc/hatari.cfg
The global configuration file of Hatari.
.TP
--~/.hatari/
-+~/.config/hatari/
+ ~/.config/hatari/
The (default) directory for user's personal Hatari files;
-.B hatari.cfg
+.RS 2
@@ -59,14 +80,6 @@ diff -Naur hatari-2.2.1/doc/hatari.1 hatari-2.2.1.patched/doc/hatari.1
+.TP
+hatari.prn
(printer output file),
--.B hatari.wav
-+.TP
-+hatari.wav
- (recorded sound output in WAV format),
--.B hatari.ym
-+.TP
-+hatari.ym
- (recorded sound output in YM format).
+.RE
.TP
-/usr/share/hatari/ (or /usr/local/share/hatari/)
@@ -81,9 +94,226 @@ diff -Naur hatari-2.2.1/doc/hatari.1 hatari-2.2.1.patched/doc/hatari.1
.SH "AUTHOR"
This manual page was written by Marco Herrn <marco@mherrn.de> for the
--Debian project and later modified by Thomas Huth and Eero Tamminen to
+ Debian project and later modified by Thomas Huth and Eero Tamminen to
-suit the latest version of Hatari.
-+Debian project and later modified by Thomas Huth and Eero Tamminen to suit
-+the (then) latest version of Hatari. Later it was modified by B. Watson
-+<yalhcru@gmail.com> for the SlackBuilds.org project to suit the latest
-+(2.2.1) version of Hatari, and to fix some of the formatting.
++suit the latest version of Hatari. Later it was modified by B. Watson
++<urchlay@slackware.uk> for the SlackBuilds.org project to fix some formatting.
+diff -Naur hatari-2.3.0/python-ui/hatariui.1 hatari-2.3.0.patched/python-ui/hatariui.1
+--- hatari-2.3.0/python-ui/hatariui.1 2020-11-28 08:37:58.000000000 -0500
++++ hatari-2.3.0.patched/python-ui/hatariui.1 2020-12-19 00:50:20.615504105 -0500
+@@ -2,7 +2,7 @@
+ .\" First parameter, NAME, should be all caps
+ .\" Second parameter, SECTION, should be 1-8, maybe w/ subsection
+ .\" other parameters are allowed: see man(7), man(1)
+-.TH "hatariui" "1" "2019-02-24" "Hatari" "Hatari UI"
++.TH "hatariui" "6" "2019-02-24" "Hatari" "Hatari UI"
+ .SH "NAME"
+ hatariui \- Python/Gtk UI for Hatari
+ .SH "SYNOPSIS"
+@@ -211,9 +211,9 @@
+ For more examples on Hatari UI options usage, see the hatariui shell
+ script.
+ .SH "SEE ALSO"
+-.IR hmsa (1),
+-.IR hatariui (1),
+-.IR hconsole (1)
++.IR hmsa (6),
++.IR hatariui (6),
++.IR hconsole (6)
+ .SH "COPYRIGHT"
+ Hatari UI is written by Eero Tamminen <oak at helsinkinet fi>.
+ .PP
+diff -Naur hatari-2.3.0/tools/atari-convert-dir.1 hatari-2.3.0.patched/tools/atari-convert-dir.1
+--- hatari-2.3.0/tools/atari-convert-dir.1 2020-11-28 08:37:58.000000000 -0500
++++ hatari-2.3.0.patched/tools/atari-convert-dir.1 2020-12-19 00:47:26.732519911 -0500
+@@ -1,4 +1,4 @@
+-.TH "atari-convert-dir" "1" "2015-04-26" "Hatari" "Hatari utilities"
++.TH "atari-convert-dir" "6" "2015-04-26" "Hatari" "Hatari utilities"
+ .SH NAME
+ atari\-convert\-dir \- helper for creating Atari compatible disk images
+ .SH SYNOPSIS
+@@ -16,9 +16,9 @@
+ use is also recommended with \fIzip2st\fP tool content (because Mtools
+ \fImcopy\fP doesn't convert long file names correctly for Atari).
+ .SH SEE ALSO
+-.IR atari\-hd\-image (1),
+-.IR zip2st (1),
+-.IR hatari (1),
++.IR atari\-hd\-image (6),
++.IR zip2st (6),
++.IR hatari (6),
+ .IR mcopy (1)
+ .SH "AUTHOR"
+ Written by Eero Tamminen <oak at helsinkinet fi>.
+diff -Naur hatari-2.3.0/tools/atari-hd-image.1 hatari-2.3.0.patched/tools/atari-hd-image.1
+--- hatari-2.3.0/tools/atari-hd-image.1 2020-11-28 08:37:58.000000000 -0500
++++ hatari-2.3.0.patched/tools/atari-hd-image.1 2020-12-19 00:47:08.660521554 -0500
+@@ -1,4 +1,4 @@
+-.TH "atari-hd-image" "1" "2015-04-26" "Hatari" "Hatari utilities"
++.TH "atari-hd-image" "6" "2015-04-26" "Hatari" "Hatari utilities"
+ .SH NAME
+ atari\-hd\-image \- tool for creating a harddisk image for use with Hatari
+ .SH SYNOPSIS
+@@ -37,12 +37,12 @@
+ 8MB image with partition named 'TEST', and files from content/:
+ .B atari\-hd\-image 8 8mb-disk.img TEST content/
+ .SH SEE ALSO
+-.IR atari\-convert\-dir (1),
+-.IR hmsa (1),
+-.IR zip2st (1),
+-.IR hatari (1),
+-.IR mkdosfs (1),
+-.IR sfdisk (1),
++.IR atari\-convert\-dir (6),
++.IR hmsa (6),
++.IR zip2st (6),
++.IR hatari (6),
++.IR mkdosfs (8),
++.IR sfdisk (8),
+ .IR dd (1)
+ .SH "AUTHOR"
+ Written by Eero Tamminen <oak at helsinkinet fi>.
+diff -Naur hatari-2.3.0/tools/debugger/gst2ascii.1 hatari-2.3.0.patched/tools/debugger/gst2ascii.1
+--- hatari-2.3.0/tools/debugger/gst2ascii.1 2020-11-28 08:37:58.000000000 -0500
++++ hatari-2.3.0.patched/tools/debugger/gst2ascii.1 2020-12-19 00:48:17.759515273 -0500
+@@ -2,7 +2,7 @@
+ .\" First parameter, NAME, should be all caps
+ .\" Second parameter, SECTION, should be 1-8, maybe w/ subsection
+ .\" other parameters are allowed: see man(7), man(1)
+-.TH "GST2ASCII" "1" "2017-11-11" "Hatari" "Hatari utilities"
++.TH "GST2ASCII" "6" "2017-11-11" "Hatari" "Hatari utilities"
+ .SH "NAME"
+ gst2ascii \- Filter and output Atari program symbol table as ASCII
+ .SH "SYNOPSIS"
+@@ -60,8 +60,8 @@
+ .br
+ symbols program.sym TEXT DATA BSS
+ .SH "SEE ALSO"
+-.IR hatari (1),
+-.IR hatari_profile (1)
++.IR hatari (6),
++.IR hatari_profile (6)
+ .SH "AUTHOR"
+ Written by Eero Tamminen <oak at helsinkinet fi>.
+ .SH "LICENSE"
+diff -Naur hatari-2.3.0/tools/debugger/hatari_profile.1 hatari-2.3.0.patched/tools/debugger/hatari_profile.1
+--- hatari-2.3.0/tools/debugger/hatari_profile.1 2020-11-28 08:37:58.000000000 -0500
++++ hatari-2.3.0.patched/tools/debugger/hatari_profile.1 2020-12-19 00:55:04.273478319 -0500
+@@ -2,7 +2,7 @@
+ .\" First parameter, NAME, should be all caps
+ .\" Second parameter, SECTION, should be 1-8, maybe w/ subsection
+ .\" other parameters are allowed: see man(7), man(1)
+-.TH "HATARI_PROFILE" "1" "2013-04-15" "Hatari" "Hatari utilities"
++.TH "HATARI_PROFILE" "6" "2013-04-15" "Hatari" "Hatari utilities"
+ .SH "NAME"
+ hatari_profile \- Post-processor for Hatari profiler data
+ .SH "SYNOPSIS"
+@@ -135,10 +135,10 @@
+ -------------------------------------------------------------
+ .fi
+ .SH "SEE ALSO"
+-.IR hatari (1),
+-.IR gst2ascii (1),
+-.IR hconsole (1)
+-.IR hatariui (1)
++.IR hatari (6),
++.IR gst2ascii (6),
++.IR hconsole (6),
++.IR hatariui (6)
+ .SH "AUTHOR"
+ Written by Eero Tamminen <oak at helsinkinet fi>.
+ .SH "LICENSE"
+diff -Naur hatari-2.3.0/tools/hatari-prg-args.1 hatari-2.3.0.patched/tools/hatari-prg-args.1
+--- hatari-2.3.0/tools/hatari-prg-args.1 2020-11-28 08:37:58.000000000 -0500
++++ hatari-2.3.0.patched/tools/hatari-prg-args.1 2020-12-19 00:49:08.415510668 -0500
+@@ -1,4 +1,4 @@
+-.TH "hatari-prg-args" "1" "2018-05-01" "Hatari" "Hatari utilities"
++.TH "hatari-prg-args" "6" "2018-05-01" "Hatari" "Hatari utilities"
+ .SH NAME
+ hatari\-prg\-args \- autorun Atari programs with arguments
+ .SH SYNOPSIS
+@@ -37,8 +37,8 @@
+ Run it from disk image instead of host directory:
+ .B hatari\-prg\-args -m -- 'A:\\\\SIDPLAY.TTP' 'SIDS\\\\TEST.SID'
+ .SH SEE ALSO
+-.IR hatari (1),
+-.IR hconsole (1)
++.IR hatari (6),
++.IR hconsole (6)
+ .SH "AUTHOR"
+ Written by Eero Tamminen <oak at helsinkinet fi>.
+ .SH "LICENSE"
+diff -Naur hatari-2.3.0/tools/hconsole/hconsole.1 hatari-2.3.0.patched/tools/hconsole/hconsole.1
+--- hatari-2.3.0/tools/hconsole/hconsole.1 2020-11-28 08:37:58.000000000 -0500
++++ hatari-2.3.0.patched/tools/hconsole/hconsole.1 2020-12-19 00:49:34.615508286 -0500
+@@ -2,7 +2,7 @@
+ .\" First parameter, NAME, should be all caps
+ .\" Second parameter, SECTION, should be 1-8, maybe w/ subsection
+ .\" other parameters are allowed: see man(7), man(1)
+-.TH "HCONSOLE" "1" "2010-10-10" "Hatari" "Hatari utilities"
++.TH "HCONSOLE" "6" "2010-10-10" "Hatari" "Hatari utilities"
+ .SH "NAME"
+ hconsole \- Interactive Python console for using Hatari's remote API
+ .SH "SYNOPSIS"
+@@ -52,8 +52,8 @@
+ By default hconsole and its examples are installed under
+ the /usr/share/hatari/hconsole/ directory.
+ .SH "SEE ALSO"
+-.IR hatari (1),
+-.IR hatariui (1)
++.IR hatari (6),
++.IR hatariui (6)
+ .SH "AUTHOR"
+ Written by Eero Tamminen <oak at helsinkinet fi>.
+ .SH "LICENSE"
+diff -Naur hatari-2.3.0/tools/hmsa/hmsa.1 hatari-2.3.0.patched/tools/hmsa/hmsa.1
+--- hatari-2.3.0/tools/hmsa/hmsa.1 2020-11-28 08:37:58.000000000 -0500
++++ hatari-2.3.0.patched/tools/hmsa/hmsa.1 2020-12-19 00:47:44.567518290 -0500
+@@ -2,7 +2,7 @@
+ .\" First parameter, NAME, should be all caps
+ .\" Second parameter, SECTION, should be 1-8, maybe w/ subsection
+ .\" other parameters are allowed: see man(7), man(1)
+-.TH "HMSA" "1" "2010-05-30" "Hatari" "Hatari utilities"
++.TH "HMSA" "6" "2010-05-30" "Hatari" "Hatari utilities"
+ .SH "NAME"
+ hmsa \- Atari MSA / ST disk image creator and converter
+ .SH "SYNOPSIS"
+@@ -48,9 +48,9 @@
+ .br
+ hmsa disk.msa
+ .SH "SEE ALSO"
+-.IR hatari (1),
+-.IR zip2st (1),
+-.IR atari\-hd\-image (1)
++.IR hatari (6),
++.IR zip2st (6),
++.IR atari\-hd\-image (6)
+ .SH "AUTHOR"
+ Written by Thomas Huth <huth at tuxfamily.org>. This manual page
+ added by Eero Tamminen <oak at helsinkinet fi>.
+diff -Naur hatari-2.3.0/tools/zip2st.1 hatari-2.3.0.patched/tools/zip2st.1
+--- hatari-2.3.0/tools/zip2st.1 2020-11-28 08:37:58.000000000 -0500
++++ hatari-2.3.0.patched/tools/zip2st.1 2020-12-19 00:49:25.742509093 -0500
+@@ -1,4 +1,4 @@
+-.TH "ZIP2ST" "1" "2016-02-26" "Hatari" "Hatari utilities"
++.TH "ZIP2ST" "6" "2016-02-26" "Hatari" "Hatari utilities"
+ .SH NAME
+ zip2st \- convert directory or .zip archive to .st disk image
+ .SH SYNOPSIS
+@@ -29,11 +29,11 @@
+ within a .zip archive, you need to extract them before conversion.
+ .PP
+ .SH SEE ALSO
+-.IR hmsa (1),
+-.IR atari\-convert\-dir (1),
+-.IR atari\-hd\-image (1),
+-.IR hatari (1),
+-.IR unzip (1),
++.IR hmsa (6),
++.IR atari\-convert\-dir (6),
++.IR atari\-hd\-image (6),
++.IR hatari (6),
++.IR unzip (6),
+ .IR mtools (1),
+ .IR basename (1),
+ .IR dd (1).
diff --git a/games/hatari/slack-desc b/games/hatari/slack-desc
index fa776a63b7..7c55291048 100644
--- a/games/hatari/slack-desc
+++ b/games/hatari/slack-desc
@@ -6,7 +6,7 @@
# customary to leave one space after the ':' except on otherwise blank lines.
|-----handy-ruler------------------------------------------------------|
-hatari: hatari (Atari ST/STE/Falcon)
+hatari: hatari (Atari ST/STE/Falcon emulator)
hatari:
hatari: Hatari is an Atari ST/STE/Falcon emulator for Linux and other systems
hatari: that are supported by the SDL library. The Atari ST was a 16/32 bit
diff --git a/games/hatari_tos_roms/README b/games/hatari_tos_roms/README
index d9289e457a..c0db78739b 100644
--- a/games/hatari_tos_roms/README
+++ b/games/hatari_tos_roms/README
@@ -1,4 +1,4 @@
-hatari_tos_roms (TOS ROM images for ST emulators)
+hatari_tos_roms (TOS ROM images for Atari ST emulators)
TOS (Tramiel Operating System) ROM images for use with hatari or other
ST emulators. US and UK versions 1.02, 1.04, and 2.06 included.
diff --git a/games/hatari_tos_roms/hatari_tos_roms.SlackBuild b/games/hatari_tos_roms/hatari_tos_roms.SlackBuild
index 63e75759c7..45f14875a5 100644
--- a/games/hatari_tos_roms/hatari_tos_roms.SlackBuild
+++ b/games/hatari_tos_roms/hatari_tos_roms.SlackBuild
@@ -1,13 +1,16 @@
-#!/bin/sh
+#!/bin/bash
# Slackware build script for hatari_tos_roms
-# Written by B. Watson (yalhcru@gmail.com)
+# Written by B. Watson (urchlay@slackware.uk)
# Licensed under the WTFPL. See http://www.wtfpl.net/txt/copying/ for details.
-# The version number is just the date when the script was written.
+# The version number is just the date when this script was modified.
# The actual TOS ROM versions are 1.02, 1.04, 2.06
+# 20230107 bkw: add missing doc dir. Include our own README since
+# there otherwise isn't one.
+
# 20141029 bkw: fix missing : in VERSION BUILD TAG assignments
# 20140825 bkw:
@@ -20,14 +23,21 @@
# they're not taking up that much space (1088K uncompressed, 670K gzipped),
# plus other emulators than hatari can use these, and might not support .gz
+cd $(dirname $0) ; CWD=$(pwd)
+
PRGNAM=hatari_tos_roms
-VERSION=${VERSION:-20140825}
+VERSION=${VERSION:-20230107}
ARCH=noarch
BUILD=${BUILD:-1}
TAG=${TAG:-_SBo}
+PKGTYPE=${PKGTYPE:-tgz}
-CWD=$(pwd)
-TMP=${TMP-/tmp/SBo}
+if [ ! -z "${PRINT_PACKAGE_NAME}" ]; then
+ echo "$PRGNAM-$VERSION-$ARCH-$BUILD$TAG.$PKGTYPE"
+ exit 0
+fi
+
+TMP=${TMP:-/tmp/SBo}
PKG=$TMP/package-$PRGNAM
OUTPUT=${OUTPUT:-/tmp}
@@ -53,8 +63,13 @@ mv tos104us.img tos-1.04-us.img
chown root:root *
chmod 644 *
+PKGDOC=$PKG/usr/doc/$PRGNAM-$VERSION
+mkdir -p $PKGDOC
+cat $CWD/README > $PKGDOC/README
+cat $CWD/$PRGNAM.SlackBuild > $PKGDOC/$PRGNAM.SlackBuild
+
cat $CWD/slack-desc >$PKG/install/slack-desc
cat $CWD/doinst.sh >$PKG/install/doinst.sh
cd $PKG
-/sbin/makepkg -l y -c n $OUTPUT/$PRGNAM-$VERSION-$ARCH-$BUILD$TAG.${PKGTYPE:-tgz}
+/sbin/makepkg -l y -c n $OUTPUT/$PRGNAM-$VERSION-$ARCH-$BUILD$TAG.$PKGTYPE
diff --git a/games/hatari_tos_roms/hatari_tos_roms.info b/games/hatari_tos_roms/hatari_tos_roms.info
index dfe63dc29c..521213d4d7 100644
--- a/games/hatari_tos_roms/hatari_tos_roms.info
+++ b/games/hatari_tos_roms/hatari_tos_roms.info
@@ -1,10 +1,10 @@
PRGNAM="hatari_tos_roms"
-VERSION="20140825"
+VERSION="20230107"
HOMEPAGE="http://steem.atari.st/index.htm"
DOWNLOAD="http://steem.atari.st/tos_uk.zip \
http://steem.atari.st/tos_us.zip \
- http://www.avtandil.narod.ru/tos/tos104uk.zip \
- http://www.avtandil.narod.ru/tos/tos104us.zip"
+ https://download.salixos.org/i486/extra-15.0/source/games/hatari_tos_roms/tos104uk.zip \
+ https://download.salixos.org/i486/extra-15.0/source/games/hatari_tos_roms/tos104us.zip"
MD5SUM="51778c08eaabe70020b30bf87b04ec7f \
bf250988783a0d468711a1057215fd73 \
9e5d9087b977c15b69e46a491434eaf0 \
@@ -13,4 +13,4 @@ DOWNLOAD_x86_64=""
MD5SUM_x86_64=""
REQUIRES=""
MAINTAINER="B. Watson"
-EMAIL="yalhcru@gmail.com"
+EMAIL="urchlay@slackware.uk"
diff --git a/games/hatari_tos_roms/slack-desc b/games/hatari_tos_roms/slack-desc
index 712b3fdd51..3ed16176b4 100644
--- a/games/hatari_tos_roms/slack-desc
+++ b/games/hatari_tos_roms/slack-desc
@@ -6,7 +6,7 @@
# customary to leave one space after the ':' except on otherwise blank lines.
|-----handy-ruler------------------------------------------------------|
-hatari_tos_roms: hatari_tos_roms (TOS ROM images for ST emulators)
+hatari_tos_roms: hatari_tos_roms (TOS ROM images for Atari ST emulators)
hatari_tos_roms:
hatari_tos_roms: TOS (Tramiel Operating System) ROM images for use with hatari or
hatari_tos_roms: other ST emulators. US and UK versions 1.02, 1.04, and 2.06 included.
diff --git a/games/haxima-nazghul/README b/games/haxima-nazghul/README
index 78116259d2..3610f7b919 100644
--- a/games/haxima-nazghul/README
+++ b/games/haxima-nazghul/README
@@ -1,2 +1,5 @@
Haxima is an Ultima-like game engine (2D tile graphics) with combat,
magic, NPC AI, an embedded scripting language, and in-game editing.
+
+The executable is called "haxima.sh", if you're launching it from the
+shell.
diff --git a/games/haxima-nazghul/haxima-nazghul.SlackBuild b/games/haxima-nazghul/haxima-nazghul.SlackBuild
index b75b8793a1..b936cd36a3 100644
--- a/games/haxima-nazghul/haxima-nazghul.SlackBuild
+++ b/games/haxima-nazghul/haxima-nazghul.SlackBuild
@@ -1,4 +1,4 @@
-#!/bin/sh
+#!/bin/bash
# Slackware build script for haxima-nazghul
@@ -22,11 +22,19 @@
# OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF THIS SOFTWARE, EVEN IF
# ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
+# 20220220 bkw: Modified by SlackBuilds.org, BUILD=2:
+# - fix build on 15.0.
+# - fix .desktop so it validates and has correct paths.
+# - move the nazghul binary to libexec, since it doesn't run on its own.
+
+cd $(dirname $0) ; CWD=$(pwd)
+
PRGNAM=haxima-nazghul
SRCNAM=$(echo $PRGNAM | cut -c8-14)
VERSION=${VERSION:-0.7.1}
-BUILD=${BUILD:-1}
+BUILD=${BUILD:-2}
TAG=${TAG:-_SBo}
+PKGTYPE=${PKGTYPE:-tgz}
if [ -z "$ARCH" ]; then
case "$( uname -m )" in
@@ -36,7 +44,11 @@ if [ -z "$ARCH" ]; then
esac
fi
-CWD=$(pwd)
+if [ ! -z "${PRINT_PACKAGE_NAME}" ]; then
+ echo "$PRGNAM-$VERSION-$ARCH-$BUILD$TAG.$PKGTYPE"
+ exit 0
+fi
+
TMP=${TMP:-/tmp/SBo}
PKG=$TMP/package-$PRGNAM
OUTPUT=${OUTPUT:-/tmp}
@@ -66,30 +78,42 @@ cd $SRCNAM-$VERSION
chown -R root:root .
find -L . \
\( -perm 777 -o -perm 775 -o -perm 750 -o -perm 711 -o -perm 555 \
- -o -perm 511 \) -exec chmod 755 {} \; -o \
+ -o -perm 511 \) -exec chmod 755 {} \+ -o \
\( -perm 666 -o -perm 664 -o -perm 640 -o -perm 600 -o -perm 444 \
- -o -perm 440 -o -perm 400 \) -exec chmod 644 {} \;
+ -o -perm 440 -o -perm 400 \) -exec chmod 644 {} \+
DOCS="doc/GHULSCRIPT doc/USERS_GUIDE doc/GAME_RULES doc/MAP_HACKERS_GUIDE \
doc/world_building/*.txt"
-sed -i 's/Exec\=haxima/Exec\=haxima.sh/' haxima.desktop
+
+# 20220220 bkw: source defines its own min() max() distance() macros,
+# which conflict with the ones in the modern STL. just renaming them
+# works.
+sed -i -e 's,\<max *(,Max(,g' \
+ -e 's,\<min *(,Min(,g' \
+ -e 's,\<distance *(,Distance(,g' \
+ src/*
CFLAGS="$SLKCFLAGS" \
-CXXFLAGS="$SLKCFLAGS" \
+CXXFLAGS="$SLKCFLAGS -std=gnu++98" \
./configure \
--prefix=/usr \
- --datadir=/usr/share/games \
+ --bindir=/usr/libexec/$PRGNAM \
+ --datadir=/usr/share/games/$PRGNAM \
--docdir=/usr/doc/$PRGNAM-$VERSION \
--build=$ARCH-slackware-linux
make
-make install DESTDIR=$PKG
+make install-strip DESTDIR=$PKG
-find $PKG -print0 | xargs -0 file | grep -e "executable" -e "shared object" | grep ELF \
- | cut -f 1 -d : | xargs strip --strip-unneeded 2> /dev/null || true
+mkdir -p $PKG/usr/games
+sed "s,/usr/bin/,/usr/libexec/$PRGNAM/," \
+ < $PKG/usr/libexec/$PRGNAM/haxima.sh \
+ > $PKG/usr/games/haxima.sh
+rm -f $PKG/usr/libexec/$PRGNAM/haxima.sh
+chmod 755 $PKG/usr/games/haxima.sh
mkdir -p $PKG/usr/share/applications
-install -D -m644 haxima.desktop $PKG/usr/share/applications/$PRGNAM.desktop
+install -D -m644 $CWD/$PRGNAM.desktop $PKG/usr/share/applications/$PRGNAM.desktop
mkdir -p $PKG/usr/share/pixmaps/
install -D -m644 icons/haxima.png $PKG/usr/share/pixmaps/haxima.png
@@ -103,4 +127,4 @@ cat $CWD/slack-desc > $PKG/install/slack-desc
cat $CWD/doinst.sh > $PKG/install/doinst.sh
cd $PKG
-/sbin/makepkg -l y -c n $OUTPUT/$PRGNAM-$VERSION-$ARCH-$BUILD$TAG.${PKGTYPE:-tgz}
+/sbin/makepkg -l y -c n $OUTPUT/$PRGNAM-$VERSION-$ARCH-$BUILD$TAG.$PKGTYPE
diff --git a/games/haxima-nazghul/haxima-nazghul.desktop b/games/haxima-nazghul/haxima-nazghul.desktop
new file mode 100644
index 0000000000..248fbf17d8
--- /dev/null
+++ b/games/haxima-nazghul/haxima-nazghul.desktop
@@ -0,0 +1,10 @@
+[Desktop Entry]
+Name=Haxima
+GenericName=Role Playing Game
+Comment=An old school role playing game
+Exec=/usr/games/haxima.sh
+Icon=/usr/share/pixmaps/haxima.png
+Terminal=false
+Type=Application
+Categories=Game;
+Version=1.0
diff --git a/games/hedgewars/README b/games/hedgewars/README
index d32c07bf3f..6d54b8b29f 100644
--- a/games/hedgewars/README
+++ b/games/hedgewars/README
@@ -10,3 +10,7 @@ excessive thinking or moving.
This SlackBuild packages only the game itself. If you want to compile
the server, you will need to provide additional dependencies.
Please, refer to the documentation in the source tarball.
+
+Note for 32-bit users: on x86, ignore the fpc in the .info file's
+REQUIRES. For 32-bit builds, hedgewars requires ghc, not fpc. Yes,
+this is weird, but it's true.
diff --git a/games/hedgewars/doinst.sh b/games/hedgewars/doinst.sh
index 5fb28930db..65c7e2eeb9 100644
--- a/games/hedgewars/doinst.sh
+++ b/games/hedgewars/doinst.sh
@@ -1,3 +1,9 @@
if [ -x /usr/bin/update-desktop-database ]; then
/usr/bin/update-desktop-database -q usr/share/applications >/dev/null 2>&1
fi
+
+if [ -e usr/share/icons/hicolor/icon-theme.cache ]; then
+ if [ -x /usr/bin/gtk-update-icon-cache ]; then
+ /usr/bin/gtk-update-icon-cache -f usr/share/icons/hicolor >/dev/null 2>&1
+ fi
+fi
diff --git a/games/hedgewars/fpc-3.2.0.patch b/games/hedgewars/fpc-3.2.0.patch
new file mode 100644
index 0000000000..042997cf3c
--- /dev/null
+++ b/games/hedgewars/fpc-3.2.0.patch
@@ -0,0 +1,20 @@
+Description: Fix/Workaround build failure with newer fpc 3.2.0
+Origin: http://hg.hedgewars.org/hedgewars/rev/6832dab555ae
+Bug-Debian: https://bugs.debian.org/968125
+Last-Update: 2020-08-10
+
+--- a/hedgewars/uWorld.pas Sun Aug 09 14:43:02 2020 +0200
++++ b/hedgewars/uWorld.pas Mon Aug 10 12:56:53 2020 +0300
+@@ -1129,8 +1129,8 @@
+ procedure ShiftWorld(Dir: LongInt); inline;
+ begin
+ preShiftWorldDx:= WorldDx;
+- WorldDx:= WorldDx + LongInt(Dir * LongInt(playWidth));
+-
++ Dir := Dir * LongInt(playWidth);
++ WorldDx:= WorldDx + Dir;
+ end;
+
+ procedure UnshiftWorld(); inline;
+
+
diff --git a/games/hedgewars/hedgewars.SlackBuild b/games/hedgewars/hedgewars.SlackBuild
index 6d848bad1d..5a004ef5f1 100644
--- a/games/hedgewars/hedgewars.SlackBuild
+++ b/games/hedgewars/hedgewars.SlackBuild
@@ -1,8 +1,8 @@
-#!/bin/sh
+#!/bin/bash
# SlackBuild script for Hedgewars.
-# Rubén Llorente <porting@use.startmail.com>
+# Original author: Rubén Llorente
# All rights reserved.
#
# Redistribution and use of this script, with or without modification, is
@@ -22,10 +22,29 @@
# OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF THIS SOFTWARE, EVEN IF
# ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
+# 20230902 bkw: update for v1.0.2.
+
+# 20230808 bkw: BUILD=2
+# - take over maintenance.
+# - binary in /usr/games.
+# - strip bin and shared lib.
+# - fix permission on appdata.
+# - include prescaled icons.
+
+# 20220320 bkw: Modified by SlackBuilds.org: fix 32-bit build.
+# The deps are different on 32-bit and 64-bit; see README.
+
+# 20210905 bkw: Modified by SlackBuilds.org:
+# - add fpc-3.2.0.patch for recent fpc upgrade
+# - add include.qpainterpath.diff to fix compile on -current
+
+cd $(dirname $0) ; CWD=$(pwd)
+
PRGNAM=hedgewars
-VERSION=${VERSION:-1.0.0}
+VERSION=${VERSION:-1.0.2}
BUILD=${BUILD:-1}
TAG=${TAG:-_SBo}
+PKGTYPE=${PKGTYPE:-tgz}
if [ -z "$ARCH" ]; then
case "$( uname -m )" in
@@ -35,7 +54,11 @@ if [ -z "$ARCH" ]; then
esac
fi
-CWD=$(pwd)
+if [ ! -z "${PRINT_PACKAGE_NAME}" ]; then
+ echo "$PRGNAM-$VERSION-$ARCH-$BUILD$TAG.$PKGTYPE"
+ exit 0
+fi
+
TMP=${TMP:-/tmp/SBo}
PKG=$TMP/package-$PRGNAM
OUTPUT=${OUTPUT:-/tmp}
@@ -63,11 +86,10 @@ rm -rf $PRGNAM-src-$VERSION
tar xvjf $CWD/$PRGNAM-src-$VERSION.tar.bz2
cd $PRGNAM-src-$VERSION
chown -R root:root .
-find -L . \
- \( -perm 777 -o -perm 775 -o -perm 750 -o -perm 711 -o -perm 555 \
- -o -perm 511 \) -exec chmod 755 {} \; -o \
- \( -perm 666 -o -perm 664 -o -perm 640 -o -perm 600 -o -perm 444 \
- -o -perm 440 -o -perm 400 \) -exec chmod 644 {} \;
+find . -type f -a -exec chmod 644 {} + \
+ -o -type d -a -exec chmod 755 {} +
+
+SLKCFLAGS+=" -fcommon"
mkdir -p build
cd build
@@ -76,28 +98,46 @@ cd build
-DCMAKE_CXX_FLAGS:STRING="$SLKCFLAGS" \
-DCMAKE_INSTALL_PREFIX=/usr \
-DLIB_SUFFIX=${LIBDIRSUFFIX} \
- -DNOVIDEOREC=1 \
- -DPHYSFS_SYSTEM=off \
- -DNOSERVER=1 \
+ -DNOVIDEOREC=ON \
+ -DNOSERVER=ON \
-DCMAKE_BUILD_TYPE=Release ..
make VERBOSE=1
- make install DESTDIR=$PKG
+ make install/strip DESTDIR=$PKG
cd ..
+# It's a game, so:
+mv $PKG/usr/bin $PKG/usr/games
+
+# Cleanup on aisle 6:
+strip $PKG/usr/games/*
+sed -i '/^Exec/s,=,=/usr/games/,' $PKG/usr/share/applications/$PRGNAM.desktop
+chmod -x $PKG/usr/share/appdata/*
+
# Include the man page.
mkdir -p $PKG/usr/man/man6
-cp $TMP/$PRGNAM-src-$VERSION/man/hedgewars.6 $PKG/usr/man/man6
+gzip -9c < man/$PRGNAM.6 > $PKG/usr/man/man6/$PRGNAM.6.gz
+
+# Don't need tiny XPM icon.
+rm -f $PKG/usr/share/pixmaps/*
-find $PKG/usr/man -type f -exec gzip -9 {} \;
-for i in $( find $PKG/usr/man -type l ) ; do ln -s $( readlink $i ).gz $i.gz ; rm $i ; done
+# Icons extracted from share/Icon.icns with icns2png.
+for i in $CWD/icons/*.png; do
+ px="$( basename $i .png )"
+ sz="${px}x${px}"
+ dir=$PKG/usr/share/icons/hicolor/$sz/apps
+ mkdir -p $dir
+ cat $i > $dir/$PRGNAM.png
+done
+ln -s ../icons/hicolor/48x48/apps/$PRGNAM.png $PKG/usr/share/pixmaps/$PRGNAM.png
-mkdir -p $PKG/usr/doc/$PRGNAM-$VERSION
-cp -a COPYING INSTALL.md CREDITS README.md Fonts_LICENSE.txt ChangeLog.txt $PKG/usr/doc/$PRGNAM-$VERSION
-cat $CWD/$PRGNAM.SlackBuild > $PKG/usr/doc/$PRGNAM-$VERSION/$PRGNAM.SlackBuild
+PKGDOC=$PKG/usr/doc/$PRGNAM-$VERSION
+mkdir -p $PKGDOC
+cp -a COPYING CREDITS README.md Fonts_LICENSE.txt ChangeLog.txt $PKGDOC
+cat $CWD/$PRGNAM.SlackBuild > $PKGDOC/$PRGNAM.SlackBuild
mkdir -p $PKG/install
cat $CWD/slack-desc > $PKG/install/slack-desc
cat $CWD/doinst.sh > $PKG/install/doinst.sh
cd $PKG
-/sbin/makepkg -l y -c n $OUTPUT/$PRGNAM-$VERSION-$ARCH-$BUILD$TAG.${PKGTYPE:-tgz}
+/sbin/makepkg -l y -c n $OUTPUT/$PRGNAM-$VERSION-$ARCH-$BUILD$TAG.$PKGTYPE
diff --git a/games/hedgewars/hedgewars.info b/games/hedgewars/hedgewars.info
index e5515a7ab8..8e52fa0217 100644
--- a/games/hedgewars/hedgewars.info
+++ b/games/hedgewars/hedgewars.info
@@ -1,10 +1,10 @@
PRGNAM="hedgewars"
-VERSION="1.0.0"
+VERSION="1.0.2"
HOMEPAGE="http://www.hedgewars.org"
-DOWNLOAD="https://hedgewars.org/download/releases/hedgewars-src-1.0.0.tar.bz2"
-MD5SUM="5463c05cd69abe2a256d9bbd41d4c923"
+DOWNLOAD="https://www.hedgewars.org/download/releases/hedgewars-src-1.0.2.tar.bz2"
+MD5SUM="1a91a973201c91bba2a494d428cadfbf"
DOWNLOAD_x86_64=""
MD5SUM_x86_64=""
-REQUIRES="fpc lua physfs qt5 SDL2_image SDL2_mixer SDL2_net SDL2_ttf"
-MAINTAINER="Rubén Llorente"
-EMAIL="porting@use.startmail.com"
+REQUIRES="fpc lua physfs"
+MAINTAINER="B. Watson"
+EMAIL="urchlay@slackware.uk"
diff --git a/games/hedgewars/icons/128.png b/games/hedgewars/icons/128.png
new file mode 100644
index 0000000000..6193f5aee5
--- /dev/null
+++ b/games/hedgewars/icons/128.png
Binary files differ
diff --git a/games/hedgewars/icons/16.png b/games/hedgewars/icons/16.png
new file mode 100644
index 0000000000..a33d108188
--- /dev/null
+++ b/games/hedgewars/icons/16.png
Binary files differ
diff --git a/games/hedgewars/icons/22.png b/games/hedgewars/icons/22.png
new file mode 100644
index 0000000000..cae5bf715c
--- /dev/null
+++ b/games/hedgewars/icons/22.png
Binary files differ
diff --git a/games/hedgewars/icons/256.png b/games/hedgewars/icons/256.png
new file mode 100644
index 0000000000..40963d20aa
--- /dev/null
+++ b/games/hedgewars/icons/256.png
Binary files differ
diff --git a/games/hedgewars/icons/32.png b/games/hedgewars/icons/32.png
new file mode 100644
index 0000000000..f9f8e7bbef
--- /dev/null
+++ b/games/hedgewars/icons/32.png
Binary files differ
diff --git a/games/hedgewars/icons/48.png b/games/hedgewars/icons/48.png
new file mode 100644
index 0000000000..96faf9d5e4
--- /dev/null
+++ b/games/hedgewars/icons/48.png
Binary files differ
diff --git a/games/hedgewars/icons/64.png b/games/hedgewars/icons/64.png
new file mode 100644
index 0000000000..4942defdfd
--- /dev/null
+++ b/games/hedgewars/icons/64.png
Binary files differ
diff --git a/games/hedgewars/include.qpainterpath.diff b/games/hedgewars/include.qpainterpath.diff
new file mode 100644
index 0000000000..430edc2da7
--- /dev/null
+++ b/games/hedgewars/include.qpainterpath.diff
@@ -0,0 +1,21 @@
+From 0eb95ff5c1c29887f14ecb2bb5f9c3cdd8b3ff29 Mon Sep 17 00:00:00 2001
+From: felixonmars <felixonmars@archlinux.org>
+Date: Thu, 4 Jun 2020 12:33:24 +0200
+Subject: [PATCH] Fix build with Qt 5.15+
+
+---
+ QTfrontend/ui/page/pagegamestats.cpp | 1 +
+ 1 file changed, 1 insertion(+)
+
+diff --git a/QTfrontend/ui/page/pagegamestats.cpp b/QTfrontend/ui/page/pagegamestats.cpp
+index c0ad9a974f..655b70d37b 100644
+--- a/QTfrontend/ui/page/pagegamestats.cpp
++++ b/QTfrontend/ui/page/pagegamestats.cpp
+@@ -22,6 +22,7 @@
+ #include <QGraphicsScene>
+ #include <QGroupBox>
+ #include <QSizePolicy>
++#include <QPainterPath>
+
+ #include "pagegamestats.h"
+ #include "team.h"
diff --git a/games/heretic_shareware_data/README b/games/heretic_shareware_data/README
index 4342997af6..4cc15a1726 100644
--- a/games/heretic_shareware_data/README
+++ b/games/heretic_shareware_data/README
@@ -1,5 +1,8 @@
+heretic_shareware_data (shareware Heretic game data)
+
Game data from the shareware release of Heretic (heretic1.wad, v1.2).
Includes only the first episode of the game.
-You'll need a Doom engine that's capable of playing Heretic to use this.
-zdoom will work; prboom, prboom-plus, odamex, and skulltag won't.
+You'll need a Doom engine that's capable of playing Heretic to use
+this. zdoom and gzdoom will work; prboom, prboom-plus, odamex, and
+skulltag won't.
diff --git a/games/heretic_shareware_data/heretic_shareware_data.SlackBuild b/games/heretic_shareware_data/heretic_shareware_data.SlackBuild
index 3ee0bf2660..38343a4fdf 100644
--- a/games/heretic_shareware_data/heretic_shareware_data.SlackBuild
+++ b/games/heretic_shareware_data/heretic_shareware_data.SlackBuild
@@ -1,19 +1,31 @@
-#!/bin/sh
+#!/bin/bash
# Slackware build script for heretic_shareware_data
-# Written by B. Watson (yalhcru@gmail.com)
+# Written by B. Watson (urchlay@slackware.uk)
# Licensed under the WTFPL. See http://www.wtfpl.net/txt/copying/ for details.
+# 20211020 bkw: BUILD=2
+# - only extract the files we actually install
+# - don't create *.1 *.2 files, saves almost 3MB in $TMP.
+# - include readme and license docs.
+
+cd $(dirname $0) ; CWD=$(pwd)
+
PRGNAM=heretic_shareware_data
VERSION=${VERSION:-1.2}
-BUILD=${BUILD:-1}
+BUILD=${BUILD:-2}
TAG=${TAG:-_SBo}
+PKGTYPE=${PKGTYPE:-tgz}
ARCH=noarch
-CWD=$(pwd)
+if [ ! -z "${PRINT_PACKAGE_NAME}" ]; then
+ echo "$PRGNAM-$VERSION-$ARCH-$BUILD$TAG.$PKGTYPE"
+ exit 0
+fi
+
TMP=${TMP:-/tmp/SBo}
PKG=$TMP/package-$PRGNAM
OUTPUT=${OUTPUT:-/tmp}
@@ -26,26 +38,21 @@ cd $TMP
rm -rf $PRGNAM-$VERSION
mkdir -p $PRGNAM-$VERSION
cd $PRGNAM-$VERSION
-unzip $CWD/htic_v12.zip
-chown -R root:root .
-find -L . \
- \( -perm 777 -o -perm 775 -o -perm 750 -o -perm 711 -o -perm 555 -o -perm 511 \) \
- -exec chmod 755 {} \; -o \
- \( -perm 666 -o -perm 664 -o -perm 600 -o -perm 444 -o -perm 440 -o -perm 400 \) \
- -exec chmod 644 {} \;
-
-cat HTIC_V12.1 HTIC_V12.2 > htic.zip
-unzip htic.zip
+unzip -p $CWD/htic_v12.zip '*.1' '*.2' > htic.zip
+unzip -a -L htic.zip '*.wad' readme.txt license.doc
+mv license.doc license.doc.txt
mkdir -p $PKG/usr/share/games/doom
-install -m0644 HERETIC1.WAD $PKG/usr/share/games/doom/heretic1.wad
+install -m0644 -oroot -groot heretic1.wad $PKG/usr/share/games/doom/
-mkdir -p $PKG/usr/doc/$PRGNAM-$VERSION
-cat $CWD/README > $PKG/usr/doc/$PRGNAM-$VERSION/README
-cat $CWD/$PRGNAM.SlackBuild > $PKG/usr/doc/$PRGNAM-$VERSION/$PRGNAM.SlackBuild
+PKGDOC=$PKG/usr/doc/$PRGNAM-$VERSION
+mkdir -p $PKGDOC
+install -m0644 -oroot -groot *.txt $PKGDOC
+cat $CWD/README > $PKGDOC/README
+cat $CWD/$PRGNAM.SlackBuild > $PKGDOC/$PRGNAM.SlackBuild
mkdir -p $PKG/install
cat $CWD/slack-desc > $PKG/install/slack-desc
cd $PKG
-/sbin/makepkg -l y -c n $OUTPUT/$PRGNAM-$VERSION-$ARCH-$BUILD$TAG.${PKGTYPE:-tgz}
+/sbin/makepkg -l y -c n $OUTPUT/$PRGNAM-$VERSION-$ARCH-$BUILD$TAG.$PKGTYPE
diff --git a/games/heretic_shareware_data/heretic_shareware_data.info b/games/heretic_shareware_data/heretic_shareware_data.info
index 3134c15f82..ba196fe3f9 100644
--- a/games/heretic_shareware_data/heretic_shareware_data.info
+++ b/games/heretic_shareware_data/heretic_shareware_data.info
@@ -1,10 +1,10 @@
PRGNAM="heretic_shareware_data"
VERSION="1.2"
-HOMEPAGE="http://idsoftware.com"
-DOWNLOAD="http://ponce.cc/slackware/sources/repo/htic_v12.zip"
+HOMEPAGE="https://idsoftware.com"
+DOWNLOAD="https://ftp.gwdg.de/pub/misc/ftp.idsoftware.com/idstuff/heretic/htic_v12.zip"
MD5SUM="420b23b3d8f2cbd164c121369eaa2b09"
DOWNLOAD_x86_64=""
MD5SUM_x86_64=""
REQUIRES=""
MAINTAINER="B. Watson"
-EMAIL="yalhcru@gmail.com"
+EMAIL="urchlay@slackware.uk"
diff --git a/games/heroes/README b/games/heroes/README
new file mode 100644
index 0000000000..97acb56cc1
--- /dev/null
+++ b/games/heroes/README
@@ -0,0 +1,16 @@
+heroes (2d arcade style game)
+
+Heroes is similar to the "Tron" and "Nibbles" games of yore, but
+includes many graphical improvements and new game features. In it,
+you must maneuver a small vehicle around a world and collect powerups
+while avoiding obstacles, your opponents' trails, and even your own
+trail.
+
+The game starts in fullscreen mode when called with no arguments.
+Pressing Alt+Enter will toggle between fullscreen and windowed, and
+you can pass the -W option to start in windowed mode (the .desktop
+file does this already).
+
+To play with the joystick, you have to set the player 1 controls to
+Joystick in the menu. Should be obvious, but the in-game menus are
+kinda hard to read...
diff --git a/games/heroes/doinst.sh b/games/heroes/doinst.sh
new file mode 100644
index 0000000000..65c7e2eeb9
--- /dev/null
+++ b/games/heroes/doinst.sh
@@ -0,0 +1,9 @@
+if [ -x /usr/bin/update-desktop-database ]; then
+ /usr/bin/update-desktop-database -q usr/share/applications >/dev/null 2>&1
+fi
+
+if [ -e usr/share/icons/hicolor/icon-theme.cache ]; then
+ if [ -x /usr/bin/gtk-update-icon-cache ]; then
+ /usr/bin/gtk-update-icon-cache -f usr/share/icons/hicolor >/dev/null 2>&1
+ fi
+fi
diff --git a/games/heroes/douninst.sh b/games/heroes/douninst.sh
new file mode 100644
index 0000000000..1bef502028
--- /dev/null
+++ b/games/heroes/douninst.sh
@@ -0,0 +1,6 @@
+if [ -x /usr/bin/install-info -a -d usr/info ]; then
+ ( cd usr/info
+ rm -f dir
+ for i in *.info*; do /usr/bin/install-info $i dir 2>/dev/null; done
+ )
+fi
diff --git a/games/heroes/heroes-0.21.patch b/games/heroes/heroes-0.21.patch
new file mode 100644
index 0000000000..7a58994934
--- /dev/null
+++ b/games/heroes/heroes-0.21.patch
@@ -0,0 +1,323 @@
+diff '--color=auto' -ruN ../heroes-0.21/src/argv.c ./src/argv.c
+--- ../heroes-0.21/src/argv.c 2002-01-09 18:52:35.000000000 +0000
++++ ./src/argv.c 2022-06-30 10:55:29.838547018 +0100
+@@ -45,8 +45,8 @@
+ char* level_name;
+ bool mono = false;
+ bool bits8 = false;
+-bool hqmix = false;
+-int stretch = 1;
++bool hqmix = true;
++int stretch = 4;
+ bool nosound = false;
+ bool even_lines = false;
+ bool showprefs = false;
+@@ -171,15 +171,11 @@
+ -S, --no-sound disable sound\n\
+ -X, --no-sfx disable sound-effects\n\
+ -m, --mono non-stereo output\n\
+- -8, --8bits 8bits sound output\n\
+- -i, --high-quality high quality mixer\n"));
++ -8, --8bits 8bits sound output\n"));
+ puts (_("\
+ Display options:\n\
+ -G, --gfx-options=OPTIONS pass OPTIONS to the display driver\n\
+- -F, --full-screen full screen mode\n\
+- -2, --double stretch the display twofold\n\
+- -3, --triple stretch the display threefold\n\
+- -4, --quadruple stretch the display fourfold\n\
++ -W, --windowed windowed mode\n\
+ -e, --even-lines display only even-lines\n"));
+ /* TRANS: rotozoom is a graphical effect used in the demo of yore
+ where the screen rotate and zoom (actually it doesn't zoom in Heroes);
+@@ -215,15 +211,13 @@
+ {"default-saves", no_argument, &reinitsav, 1},
+ {"default-scores", no_argument, &reinitsco, 1},
+ {"devparm", no_argument, &devparm, 1},
+- {"double", no_argument, NULL, '2'},
+ {"driver", required_argument, NULL, 'd'},
+ {"drivers-info", no_argument, NULL, 'n'},
+ {"even-lines", no_argument, NULL, 'e'},
+- {"full-screen", no_argument, NULL, 'F'},
++ {"windowed", no_argument, NULL, 'W'},
+ {"gfx-options", required_argument, NULL, 'G'},
+ {"go", no_argument, NULL, 'g'},
+ {"help", no_argument, NULL, 'h'},
+- {"high-quality", no_argument, NULL, 'i'},
+ {"list", optional_argument, NULL, 'l'},
+ {"load", required_argument, NULL, 'L'},
+ {"mono", no_argument, NULL, 'm'},
+@@ -231,11 +225,9 @@
+ {"no-joystick", no_argument, NULL, 'J'},
+ {"no-sfx", no_argument, NULL, 'X'},
+ {"no-sound", no_argument, NULL, 'S'},
+- {"quadruple", no_argument, NULL, '4'},
+ {"quiet", no_argument, NULL, 'q'},
+ {"really-quiet", no_argument, NULL, 'Q'},
+ {"swap-sides", no_argument, NULL, 's'},
+- {"triple", no_argument, NULL, '3'},
+ {"verbose", required_argument, NULL, 'v'},
+ {"version", no_argument, NULL, 'v'},
+ {"x10-saves", no_argument, &x10sav, 1},
+@@ -263,7 +255,7 @@
+ for (;;) {
+ int option_index = 0;
+
+- c = getopt_long (argc, argv, "2348d:eFgG:hiJl::L:mnqQsSv::X",
++ c = getopt_long (argc, argv, "8d:eWgG:hiJl::L:mnqQsSv::X",
+ long_options, &option_index);
+
+ /* Detect the end of the options. */
+@@ -290,9 +282,6 @@
+ case '8':
+ bits8 = true;
+ break;
+- case 'a':
+- hqmix = true;
+- break;
+ case 'X':
+ nosfx = true;
+ break;
+@@ -319,27 +308,15 @@
+ case 'G':
+ set_display_params (optarg);
+ break;
+- case 'F':
++ case 'W':
+ set_full_screen_mode ();
+ break;
+ case 'J':
+ joyoff = true;
+ break;
+- case '2':
+- stretch = 2;
+- break;
+- case '3':
+- stretch = 3;
+- break;
+- case '4':
+- stretch = 4;
+- break;
+ case 'e':
+ even_lines = true;
+ break;
+- case 'i':
+- hqmix = true;
+- break;
+ case 'S':
+ nosound = true;
+ break;
+diff '--color=auto' -ruN ../heroes-0.21/src/hedlite.c ./src/hedlite.c
+--- ../heroes-0.21/src/hedlite.c 2002-02-06 21:49:44.000000000 +0000
++++ ./src/hedlite.c 2022-06-30 10:55:29.838547018 +0100
+@@ -45,7 +45,6 @@
+ #include "dirname.h"
+
+ static a_pcx_image heditrsc;
+-static a_pcx_image tile_set_img;
+
+ unsigned short int xdalles = 0;
+ unsigned short int ydalles = 0;
+diff '--color=auto' -ruN ../heroes-0.21/src/media/ggi/video.c ./src/media/ggi/video.c
+--- ../heroes-0.21/src/media/ggi/video.c 2002-03-27 19:44:59.000000000 +0000
++++ ./src/media/ggi/video.c 2022-06-30 10:55:29.838547018 +0100
+@@ -54,7 +54,7 @@
+
+ static ggi_mode vid_mode;
+ static char *display_params = NULL;
+-static int full_screen = 0;
++static int full_screen = 1;
+ /* Direct buffer for each frame.
+ We might have db[0] == db[1] if double buffering is not available.*/
+ static const ggi_directbuffer *db[2] = { NULL, NULL };
+@@ -88,7 +88,7 @@
+ void
+ set_full_screen_mode (void)
+ {
+- full_screen = 1;
++ full_screen = 0;
+ }
+
+ static bool
+diff '--color=auto' -ruN ../heroes-0.21/src/media/sdl/video.c ./src/media/sdl/video.c
+--- ../heroes-0.21/src/media/sdl/video.c 2002-01-17 19:59:32.000000000 +0000
++++ ./src/media/sdl/video.c 2022-06-30 10:55:29.838547018 +0100
+@@ -40,7 +40,7 @@
+ it might requires locking. */
+
+ static SDL_Surface *visu = 0;
+-static int visu_options = SDL_HWPALETTE | SDL_DOUBLEBUF;
++static int visu_options = SDL_HWPALETTE | SDL_DOUBLEBUF | SDL_FULLSCREEN;
+ static bool SDL_initialized = false;
+ #define SDL_VIDEODRIVER "SDL_VIDEODRIVER"
+ static char *sdl_videodriver = 0;
+@@ -56,7 +56,7 @@
+ void
+ set_full_screen_mode (void)
+ {
+- visu_options |= SDL_FULLSCREEN;
++ visu_options &= ~SDL_FULLSCREEN;
+ }
+
+ /* Fullscreen mode is toggeled by pressing Alt+Enter.
+diff '--color=auto' -ruN ../heroes-0.21/src/media/video.c ./src/media/video.c
+--- ../heroes-0.21/src/media/video.c 2001-09-21 11:43:57.000000000 +0100
++++ ./src/media/video.c 2022-06-30 10:55:29.838547018 +0100
+@@ -27,111 +27,6 @@
+ /* slow stretching routines */
+
+ static void
+-stretch_twofold (const a_pixel *s, a_pixel *d, unsigned width)
+-{
+- int rows_left, columns_left;
+-
+- for (rows_left = 200; rows_left; --rows_left) {
+- for (columns_left = width / 2; columns_left; --columns_left) {
+- a_pixel t1, t2;
+- t1 = s[0];
+- t2 = s[1];
+- d[0] = t1;
+- d[640 + 2] = t2;
+- d[1] = t1;
+- d[640 + 3] = t2;
+- d[640 + 0] = t1;
+- d[2] = t2;
+- d[640 + 1] = t1;
+- d[3] = t2;
+- s += 2;
+- d += 4;
+- }
+- d += 2 * (scr_pitch - width);
+- s += xbuf - width;
+- }
+-}
+-
+-static void
+-stretch_twofold_even (const a_pixel *s, a_pixel *d, unsigned width)
+-{
+- int rows_left, columns_left;
+-
+- for (rows_left = 200; rows_left; --rows_left) {
+- for (columns_left = width; columns_left; --columns_left) {
+- d[1] = d[0] = *s;
+- ++s;
+- d += 2;
+- }
+- d += 2 * (scr_pitch - width);
+- s += xbuf - width;
+- }
+-}
+-
+-static void
+-stretch_threefold (const a_pixel* s, a_pixel *d, unsigned width)
+-{
+- int rows_left, columns_left;
+-
+- for (rows_left = 200; rows_left; --rows_left) {
+- for (columns_left = width / 2; columns_left; --columns_left) {
+- a_pixel t1, t2;
+- t1 = s[0];
+- t2 = s[1];
+- d[0] = t1;
+- d[960 + 3] = t2;
+- d[2*960 + 1] = t1;
+- d[4] = t2;
+- d[960 + 2] = t1;
+- d[2*960 + 5] = t2;
+- d[960 + 0] = t1;
+- d[2*960 + 3] = t2;
+- d[1] = t1;
+- d[960 + 4] = t2;
+- d[2*960 + 2] = t1;
+- d[5] = t2;
+- d[2*960 + 0] = t1;
+- d[3] = t2;
+- d[960 + 1] = t1;
+- d[2*960 + 4] = t2;
+- d[2] = t1;
+- d[960 + 5] = t2;
+- s += 2;
+- d += 6;
+- }
+- d += 3 * (scr_pitch - width);
+- s += xbuf - width;
+- }
+-}
+-
+-static void
+-stretch_threefold_even (const a_pixel *s, a_pixel *d, unsigned width)
+-{
+- int rows_left, columns_left;
+-
+- for (rows_left = 200 / 2; rows_left; --rows_left) {
+- for (columns_left = width; columns_left; --columns_left) {
+- a_pixel t1, t2;
+- t1 = s[0];
+- t2 = s[xbuf];
+- d[0] = t1;
+- d[0+960*4] = t2;
+- d[1] = t1;
+- d[2] = t1;
+- d[1+960*4] = t2;
+- d[0+960*2] = t1;
+- d[1+960*2] = t1;
+- d[2+960*4] = t2;
+- d[2+960*2] = t1;
+- ++s;
+- d += 3;
+- }
+- d += 3 * (2 * scr_pitch - width);
+- s += 2 * xbuf - width;
+- }
+-}
+-
+-static void
+ stretch_fourfold (const a_pixel *s, a_pixel *d, unsigned width)
+ {
+ int rows_left, columns_left;
+@@ -196,27 +91,10 @@
+ {
+ /* the result of stretching routines is written directly
+ to the video memory */
+- if (stretch == 2) {
+- if (even_lines)
+- stretch_twofold_even (s, d, width);
+- else
+- stretch_twofold (s, d, width);
+- } else if (stretch == 3) {
+- if (even_lines)
+- stretch_threefold_even (s, d, width);
+- else
+- stretch_threefold (s, d, width);
+- } else if (stretch == 4) {
+- if (even_lines)
+- stretch_fourfold_even (s, d, width);
+- else
+- stretch_fourfold (s, d, width);
+- } else { /* stretch == 1 */
+- if (even_lines)
+- copy_screen_even (s, d, width);
+- else
+- copy_screen (s, d, width);
+- }
++ if (even_lines)
++ stretch_fourfold_even (s, d, width);
++ else
++ stretch_fourfold (s, d, width);
+ }
+
+ void
+diff '--color=auto' -ruN ../heroes-0.21/src/persona.h ./src/persona.h
+--- ../heroes-0.21/src/persona.h 2001-09-21 11:43:54.000000000 +0100
++++ ./src/persona.h 2022-06-30 10:55:48.008744082 +0100
+@@ -28,8 +28,8 @@
+ * difference only if the program has a sgid or suid bit.
+ */
+
+-bool keep_sgid; /* Whether we should keep the */
+-bool keep_suid; /* SGID or SUID priviledge. */
++extern bool keep_sgid; /* Whether we should keep the */
++extern bool keep_suid; /* SGID or SUID priviledge. */
+
+ /* Get information about the current persona,
+ and switch to the user persona. */
diff --git a/games/heroes/heroes.SlackBuild b/games/heroes/heroes.SlackBuild
new file mode 100644
index 0000000000..78e26319ce
--- /dev/null
+++ b/games/heroes/heroes.SlackBuild
@@ -0,0 +1,161 @@
+#!/bin/bash
+
+# Slackware build script for heroes
+
+# Written by B. Watson (urchlay@slackware.uk)
+
+# Licensed under the WTFPL. See http://www.wtfpl.net/txt/copying/ for details.
+
+# Old game I recall playing ~15 years ago. I liked it better then.
+
+# All-in-one build. No way am I having 5 builds for the data, sfx, etc
+# source packages.
+
+# 20230704 bkw: BUILD=2
+# - add doinst/douninst to handle .info files.
+
+cd $(dirname $0) ; CWD=$(pwd)
+
+PRGNAM=heroes
+VERSION=${VERSION:-0.21}
+BUILD=${BUILD:-2}
+TAG=${TAG:-_SBo}
+PKGTYPE=${PKGTYPE:-tgz}
+
+# The various components have their own separate version numbering.
+# This thing hasn't been updated in 20 years so making these
+# overrideable is probably pointless.
+DATAVER=${DATAVER:-1.5}
+SFXVER=${SFXVER:-1.0}
+STRAXVER=${STRAXVER-1.0}
+STRAXHQVER=${STRAXHQVER-1.0}
+
+if [ -z "$ARCH" ]; then
+ case "$( uname -m )" in
+ i?86) ARCH=i586 ;;
+ arm*) ARCH=arm ;;
+ *) ARCH=$( uname -m ) ;;
+ esac
+fi
+
+if [ ! -z "${PRINT_PACKAGE_NAME}" ]; then
+ echo "$PRGNAM-$VERSION-$ARCH-$BUILD$TAG.$PKGTYPE"
+ exit 0
+fi
+
+TMP=${TMP:-/tmp/SBo}
+PKG=$TMP/package-$PRGNAM
+OUTPUT=${OUTPUT:-/tmp}
+
+if [ "$ARCH" = "i586" ]; then
+ SLKCFLAGS="-O2 -march=i586 -mtune=i686"
+ LIBDIRSUFFIX=""
+elif [ "$ARCH" = "i686" ]; then
+ SLKCFLAGS="-O2 -march=i686 -mtune=i686"
+ LIBDIRSUFFIX=""
+elif [ "$ARCH" = "x86_64" ]; then
+ SLKCFLAGS="-O2 -fPIC"
+ LIBDIRSUFFIX="64"
+else
+ SLKCFLAGS="-O2"
+ LIBDIRSUFFIX=""
+fi
+
+set -e
+
+rm -rf $PKG
+mkdir -p $TMP $PKG $OUTPUT
+cd $TMP
+rm -rf $PRGNAM-$VERSION
+mkdir -p $PRGNAM-$VERSION
+cd $PRGNAM-$VERSION
+TOPDIR="$( pwd )"
+PKGDOC=$PKG/usr/doc/$PRGNAM-$VERSION
+
+# This is needed to avoid the build process creating files in /root
+export HEROES_HOME_DIR=$TOPDIR
+
+# build_one() gets called multiple times, with args:
+# $1 - tarball name
+# $2 - tarball version
+# $3 - optional, patch to apply
+build_one() {
+ cd $TOPDIR
+ tar xvf $CWD/$1-$2.tar.bz2
+ cd $1-$2
+ chown -R root:root .
+ find -L . -perm /111 -a \! -perm 755 -a -exec chmod 755 {} \+ -o \
+ \! -perm /111 -a \! -perm 644 -a -exec chmod 644 {} \+
+
+ [ "$3" != "" ] && patch -p1 < "$3"
+
+ LDFLAGS="-lm" \
+ CFLAGS="$SLKCFLAGS" \
+ CXXFLAGS="$SLKCFLAGS" \
+ ./configure \
+ --prefix=/usr \
+ --bindir=/usr/games \
+ --libdir=/usr/lib${LIBDIRSUFFIX} \
+ --sysconfdir=/etc \
+ --localstatedir=/var \
+ --mandir=/usr/man \
+ --disable-static \
+ --build=$ARCH-slackware-linux
+
+ make install-strip DESTDIR=$PKG
+
+ mkdir -p $PKGDOC/$1-$2
+ for i in ANNOUNCE AUTHORS COPYING ChangeLog NEWS README THANKS; do
+ [ -e "$i" ] && [ "$( stat -c "%s" $i )" -gt 2 ] && \
+ cat $i > $PKGDOC/$1-$2/$i || true
+ done
+}
+
+# The patch comes from Arch AUR. It fixes a couple of compile issues,
+# and also removes the -1 -2 -3 -4 options, makes 4x stretch the
+# default (so the window's big enough to *see* on a modern display),
+# makes fullscreen the default, and replaces the -F option with a -W
+# (windowed) option to turn off fullscreen. Note that the patched
+# game requires at least a 1280x800 display to work at all.
+build_one $PRGNAM $VERSION $CWD/$PRGNAM-$VERSION.patch
+
+# The rest of this stuff doesn't need patching.
+build_one $PRGNAM-data $DATAVER
+build_one $PRGNAM-sound-effects $SFXVER
+build_one $PRGNAM-sound-tracks $STRAXVER
+build_one $PRGNAM-hq-sound-tracks $STRAXHQVER
+
+# Because of bit-rot, the build process generates garbage man pages.
+# Also, the arch patch we applied changes some of the options, so we
+# need a man page that reflects the changes. These man pages came
+# from the source tarball, and heroes.6 has been edited as needed.
+mkdir -p $PKG/usr/man/man6
+install -m0644 -oroot -groot $CWD/man/*.6 $PKG/usr/man/man6
+gzip -9 $PKG/usr/man/man6/*
+
+# Picked one of the xpm files to use as an icon.
+XPM=$TOPDIR/$PRGNAM-$VERSION/misc/heroes-2.xpm
+for px in 16 22 32 48; do
+ size=${px}x${px}
+ dir=$PKG/usr/share/icons/hicolor/$size/apps
+ mkdir -p $dir
+ convert -resize $size! $XPM $dir/$PRGNAM.png
+done
+mkdir -p $PKG/usr/share/pixmaps
+install -m0644 -oroot -groot $XPM $PKG/usr/share/pixmaps/$PRGNAM.xpm
+
+# Not going to bother with install-info in the doinst.sh and trying
+# to clean up /usr/info/dir after uninstalling the package. Not worth it.
+rm -f $PKG/usr/info/dir
+gzip -9 $PKG/usr/info/*.info*
+
+cat $CWD/$PRGNAM.SlackBuild > $PKGDOC/$PRGNAM.SlackBuild
+
+mkdir -p $PKG/install
+cat $CWD/slack-desc > $PKG/install/slack-desc
+cat $CWD/doinst.sh > $PKG/install/doinst.sh
+cat $CWD/douninst.sh >> $PKG/install/doinst.sh
+cat $CWD/douninst.sh > $PKG/install/douninst.sh
+
+cd $PKG
+/sbin/makepkg -l y -c n $OUTPUT/$PRGNAM-$VERSION-$ARCH-$BUILD$TAG.$PKGTYPE
diff --git a/games/heroes/heroes.desktop b/games/heroes/heroes.desktop
new file mode 100644
index 0000000000..8d8105e0da
--- /dev/null
+++ b/games/heroes/heroes.desktop
@@ -0,0 +1,8 @@
+[Desktop Entry]
+Type=Application
+Name=Heroes
+Comment=Game like Nibbles or Tron
+Icon=heroes
+Exec=/usr/games/heroes -W
+Terminal=false
+Categories=Game
diff --git a/games/heroes/heroes.info b/games/heroes/heroes.info
new file mode 100644
index 0000000000..31687b4247
--- /dev/null
+++ b/games/heroes/heroes.info
@@ -0,0 +1,18 @@
+PRGNAM="heroes"
+VERSION="0.21"
+HOMEPAGE="https://heroes.sourceforge.net/"
+DOWNLOAD="https://downloads.sourceforge.net/project/heroes/heroes/0.21/heroes-0.21.tar.bz2 \
+ https://downloads.sourceforge.net/project/heroes/heroes-data/1.5/heroes-data-1.5.tar.bz2 \
+ https://downloads.sourceforge.net/project/heroes/heroes-sound-tracks/1.0/heroes-sound-tracks-1.0.tar.bz2 \
+ https://downloads.sourceforge.net/project/heroes/heroes-sound-effects/1.0/heroes-sound-effects-1.0.tar.bz2 \
+ https://downloads.sourceforge.net/project/heroes/heroes-hq-sound-tracks/1.0/heroes-hq-sound-tracks-1.0.tar.bz2"
+MD5SUM="ec608676e2e75abdfddf8072bb3b28db \
+ 015a95c16998bd0900f3a6cb6e6f26ac \
+ f23313177d7a33b1b2e8c759cfa54310 \
+ 1c04db6da3d98eebfb3119460701cd5b \
+ b41d4f0f88e5e9d254b1a8e4a2ad32c1"
+DOWNLOAD_x86_64=""
+MD5SUM_x86_64=""
+REQUIRES=""
+MAINTAINER="B. Watson"
+EMAIL="urchlay@slackware.uk"
diff --git a/games/heroes/man/heroes.6 b/games/heroes/man/heroes.6
new file mode 100644
index 0000000000..52475cbd04
--- /dev/null
+++ b/games/heroes/man/heroes.6
@@ -0,0 +1,115 @@
+.TH HEROES "6" "January 23, 2023" "Heroes 0.21" "SlackBuild.org"
+.SH NAME
+Heroes \- a game like Nibbles or Tron, just better
+.SH SYNOPSIS
+.B heroes
+[\fIOPTIONS\fR]...
+.SH DESCRIPTION
+Heroes is a game similar to the "Tron" and "Nibbles" games of yore
+but includes many graphical improvements and new game features.
+.PP
+Mandatory arguments to long options are mandatory for short options too.
+.SS "General options:"
+.TP
+\fB\-v\fR, \fB\-\-version\fR
+display version number
+.TP
+\fB\-h\fR, \fB\-\-help\fR
+display this help
+.TP
+\fB\-q\fR, \fB\-\-quiet\fR
+don't print warning messages
+.TP
+\fB\-Q\fR, \fB\-\-really\-quiet\fR
+don't even print error messages
+.TP
+\fB\-v\fR, \fB\-\-verbose\fR=\fICHANNELS\fR
+enable or disable debugging channels
+(see \fB\-\-list\fR=\fIdebug\fR for available channels)
+.TP
+\fB\-l\fR, \fB\-\-list\fR=\fIWORD\fR
+show some internal information; WORD can be
+\&'debug', 'resources', 'sound-drivers' or
+\&'sound-tracks'
+.SS "Sound options:"
+.TP
+\fB\-d\fR, \fB\-\-driver\fR=\fIN[\fR,OPTIONS]
+use Nth driver for sound output (0:autodetect)
+(see \fB\-\-list\fR=\fIsound\-drivers\fR for available Ns)
+.TP
+\fB\-S\fR, \fB\-\-no\-sound\fR
+disable sound
+.TP
+\fB\-X\fR, \fB\-\-no\-sfx\fR
+disable sound-effects
+.TP
+\fB\-m\fR, \fB\-\-mono\fR
+non-stereo output
+.TP
+\fB\-8\fR, \fB\-\-8bits\fR
+8bits sound output
+.TP
+\fB\-i\fR, \fB\-\-high\-quality\fR
+high quality mixer
+.SS "Display options:"
+.TP
+\fB\-G\fR, \fB\-\-gfx\-options\fR=\fIOPTIONS\fR
+pass OPTIONS to the display driver
+.TP
+\fB\-W\fR, \fB\-\-windowed\fR
+run in a window (disable full screen mode)
+.TP
+\fB\-e\fR, \fB\-\-even\-lines\fR
+display only even-lines
+.SS "Miscellaneous options:"
+.TP
+\fB\-\-cpu\-off\fR
+disable computer opponents
+.TP
+\fB\-\-default\-scores\fR
+restore default scores file
+.TP
+\fB\-\-default\-options\fR
+restore default options file
+.TP
+\fB\-\-default\-saves\fR
+restore default saves file
+.TP
+\fB\-s\fR, \fB\-\-swap\-sides\fR
+swap sides in two player mode
+.TP
+\fB\-\-no\-double\-fx\fR
+disable combination of rotozoom and waves
+.TP
+\fB\-g\fR, \fB\-\-go\fR
+skip the introduction
+.TP
+\fB\-J\fR, \fB\-\-no\-joystick\fR
+disable joystick handling
+.PP
+These options can be set in your file ~/.heroes/heroesrc (which is read
+before parsing other command line options) using a line like the following:
+.IP
+Options: \fB\-gs\fR \fB\-d3\fR,buffer=11,count=4
+.PP
+Visit http://heroes.sourceforge.net/ for news, documentation, and updates.
+.SH "REPORTING BUGS"
+Report bugs to <heroes-bugs@lists.sourceforge.net>.
+.SH COPYRIGHT
+Copyright \(co 2002 Alexandre Duret-Lutz, Romuald Genevois,
+Alexandre Liverneaux and Philippe Meisburger.
+.br
+This is free software; see the source for copying conditions. There is NO
+warranty; not even for MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.
+.SH "SEE ALSO"
+The full documentation for
+.B heroes
+is maintained as a Texinfo manual. If the
+.B info
+and
+.B heroes
+programs are properly installed at your site, the command
+.IP
+.B info heroes
+.PP
+should give you access to the complete manual.
diff --git a/games/heroes/man/heroeslvl.6 b/games/heroes/man/heroeslvl.6
new file mode 100644
index 0000000000..0e9689b27a
--- /dev/null
+++ b/games/heroes/man/heroeslvl.6
@@ -0,0 +1,57 @@
+.\" DO NOT MODIFY THIS FILE! It was generated by help2man 1.27.
+.TH HEROESLVL "6" "March 2002" "heroeslvl (Heroes) 0.21" "Games"
+.SH NAME
+heroeslvl \- inspect Heroes' level files
+.SH SYNOPSIS
+.B heroeslvl
+[\fIOPTIONS\fR]... \fIlevels\fR
+.SH DESCRIPTION
+Heroeslvl is a tool used to inspect Heroes' level files.
+.PP
+Mandatory arguments to long options are mandatory for short options too.
+.TP
+\fB\-v\fR, \fB\-\-version\fR
+display version number
+.TP
+\fB\-h\fR, \fB\-\-help\fR
+display this help
+.TP
+\fB\-p\fR, \fB\-\-print\fR=\fIWHAT\fR
+select information to display. WHAT should be
+one or more of these characters:
+.TP
+d
+print square directions
+.TP
+f
+print filename
+.TP
+h
+print header
+.TP
+i
+print tile details
+.TP
+t
+print square type map
+.TP
+T
+print type keys
+.TP
+w
+print square wall map
+.TP
+@
+print tunnels
+.TP
+\fB\-i\fR, \fB\-\-indent\fR
+indent everything but the filename
+.PP
+When no options are given, the default is \fB\-ipfh\fR.
+.SH "REPORTING BUGS"
+Report bugs to <heroes-bugs@lists.sourceforge.net>.
+.SH COPYRIGHT
+Copyright \(co 2002 Alexandre Duret-Lutz.
+.br
+This is free software; see the source for copying conditions. There is NO
+warranty; not even for MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.
diff --git a/games/heroes/slack-desc b/games/heroes/slack-desc
new file mode 100644
index 0000000000..422cc7d611
--- /dev/null
+++ b/games/heroes/slack-desc
@@ -0,0 +1,19 @@
+# HOW TO EDIT THIS FILE:
+# The "handy ruler" below makes it easier to edit a package description.
+# Line up the first '|' above the ':' following the base package name, and
+# the '|' on the right side marks the last column you can put a character in.
+# You must make exactly 11 lines for the formatting to be correct. It's also
+# customary to leave one space after the ':' except on otherwise blank lines.
+
+ |-----handy-ruler------------------------------------------------------|
+heroes: heroes (2d arcade style game)
+heroes:
+heroes: Heroes is similar to the "Tron" and "Nibbles" games of yore, but
+heroes: includes many graphical improvements and new game features. In it,
+heroes: you must maneuver a small vehicle around a world and collect powerups
+heroes: while avoiding obstacles, your opponents' trails, and even your own
+heroes: trail.
+heroes:
+heroes:
+heroes:
+heroes:
diff --git a/games/hex-a-hop/hex-a-hop.SlackBuild b/games/hex-a-hop/hex-a-hop.SlackBuild
index 7960ebb872..b71dc67207 100644
--- a/games/hex-a-hop/hex-a-hop.SlackBuild
+++ b/games/hex-a-hop/hex-a-hop.SlackBuild
@@ -1,29 +1,39 @@
-#!/bin/sh
+#!/bin/bash
# Slackware build script for Hex-a-Hop
# Written by André Geraldo Vieira <andre.geraldo@gmail.com>
+cd $(dirname $0) ; CWD=$(pwd)
+
PRGNAM=hex-a-hop
VERSION=${VERSION:-1.1.0}
BUILD=${BUILD:-1}
TAG=${TAG:-_SBo}
+PKGTYPE=${PKGTYPE:-tgz}
if [ -z "$ARCH" ]; then
case "$( uname -m )" in
- i?86) ARCH=i486 ;;
+ i?86) ARCH=i586 ;;
arm*) ARCH=arm ;;
*) ARCH=$( uname -m ) ;;
esac
fi
-CWD=$(pwd)
+# If the variable PRINT_PACKAGE_NAME is set, then this script will report what
+# the name of the created package would be, and then exit. This information
+# could be useful to other scripts.
+if [ ! -z "${PRINT_PACKAGE_NAME}" ]; then
+ echo "$PRGNAM-$VERSION-$ARCH-$BUILD$TAG.$PKGTYPE"
+ exit 0
+fi
+
TMP=${TMP:-/tmp/SBo}
PKG=$TMP/package-$PRGNAM
OUTPUT=${OUTPUT:-/tmp}
-if [ "$ARCH" = "i486" ]; then
- SLKCFLAGS="-O2 -march=i486 -mtune=i686"
+if [ "$ARCH" = "i586" ]; then
+ SLKCFLAGS="-O2 -march=i586 -mtune=i686"
LIBDIRSUFFIX=""
elif [ "$ARCH" = "i686" ]; then
SLKCFLAGS="-O2 -march=i686 -mtune=i686"
@@ -73,4 +83,4 @@ mkdir -p $PKG/install
cat $CWD/slack-desc > $PKG/install/slack-desc
cd $PKG
-/sbin/makepkg -l y -c n $OUTPUT/$PRGNAM-$VERSION-$ARCH-$BUILD$TAG.${PKGTYPE:-tgz}
+/sbin/makepkg -l y -c n $OUTPUT/$PRGNAM-$VERSION-$ARCH-$BUILD$TAG.$PKGTYPE
diff --git a/games/hexalate/hexalate.SlackBuild b/games/hexalate/hexalate.SlackBuild
index d7a55f2a83..956d0a11d8 100644
--- a/games/hexalate/hexalate.SlackBuild
+++ b/games/hexalate/hexalate.SlackBuild
@@ -1,4 +1,4 @@
-#!/bin/sh
+#!/bin/bash
# Copyright (c) 2013-2016 LEVAI Daniel
# All rights reserved.
@@ -27,10 +27,13 @@
# Build script for hexalate
+cd $(dirname $0) ; CWD=$(pwd)
+
PRGNAM=hexalate
VERSION=${VERSION:-1.1.4}
BUILD=${BUILD:-1}
TAG=${TAG:-_SBo}
+PKGTYPE=${PKGTYPE:-tgz}
if [ -z "$ARCH" ]; then
case "$( uname -m )" in
@@ -40,7 +43,14 @@ if [ -z "$ARCH" ]; then
esac
fi
-CWD=$(pwd)
+# If the variable PRINT_PACKAGE_NAME is set, then this script will report what
+# the name of the created package would be, and then exit. This information
+# could be useful to other scripts.
+if [ ! -z "${PRINT_PACKAGE_NAME}" ]; then
+ echo "$PRGNAM-$VERSION-$ARCH-$BUILD$TAG.$PKGTYPE"
+ exit 0
+fi
+
TMP=${TMP:-/tmp/SBo}
PKG=$TMP/package-$PRGNAM
OUTPUT=${OUTPUT:-/tmp}
@@ -95,4 +105,4 @@ cat $CWD/slack-desc > $PKG/install/slack-desc
cat $CWD/doinst.sh > $PKG/install/doinst.sh
cd $PKG
-/sbin/makepkg -l y -c n $OUTPUT/$PRGNAM-$VERSION-$ARCH-$BUILD$TAG.${PKGTYPE:-tgz}
+/sbin/makepkg -l y -c n $OUTPUT/$PRGNAM-$VERSION-$ARCH-$BUILD$TAG.$PKGTYPE
diff --git a/games/hexalate/hexalate.info b/games/hexalate/hexalate.info
index 5b6b92856d..992358a91a 100644
--- a/games/hexalate/hexalate.info
+++ b/games/hexalate/hexalate.info
@@ -5,6 +5,6 @@ DOWNLOAD="https://gottcode.org/hexalate/hexalate-1.1.4-src.tar.bz2"
MD5SUM="0b8d536e87c634471543cfae97b7b1c0"
DOWNLOAD_x86_64=""
MD5SUM_x86_64=""
-REQUIRES="qt5"
+REQUIRES=""
MAINTAINER="LEVAI Daniel"
EMAIL="leva@ecentrum.hu"
diff --git a/games/hexen_demo_data/README b/games/hexen_demo_data/README
index 70381e0c13..d17dc25bfd 100644
--- a/games/hexen_demo_data/README
+++ b/games/hexen_demo_data/README
@@ -1,5 +1,8 @@
+hexen_demo_data (game data from Hexen demo release)
+
Game data from the demo release of Hexen (hexen.wad, v1.1). Includes
only the first 4 levels of the game.
You'll need a Doom engine that's capable of playing Hexen to use this.
-zdoom will work; prboom, prboom-plus, odamex, and skulltag won't.
+zdoom and gzdoom will work; prboom, prboom-plus, odamex, and skulltag
+won't.
diff --git a/games/hexen_demo_data/hexen_demo_data.SlackBuild b/games/hexen_demo_data/hexen_demo_data.SlackBuild
index 8a9faeb019..b3d7c31b23 100644
--- a/games/hexen_demo_data/hexen_demo_data.SlackBuild
+++ b/games/hexen_demo_data/hexen_demo_data.SlackBuild
@@ -1,19 +1,26 @@
-#!/bin/sh
+#!/bin/bash
# Slackware build script for hexen_demo_data
-# Written by B. Watson (yalhcru@gmail.com)
+# Written by B. Watson (urchlay@slackware.uk)
# Licensed under the WTFPL. See http://www.wtfpl.net/txt/copying/ for details.
+cd $(dirname $0) ; CWD=$(pwd)
+
PRGNAM=hexen_demo_data
VERSION=${VERSION:-1.1}
BUILD=${BUILD:-1}
TAG=${TAG:-_SBo}
+PKGTYPE=${PKGTYPE:-tgz}
ARCH=noarch
-CWD=$(pwd)
+if [ ! -z "${PRINT_PACKAGE_NAME}" ]; then
+ echo "$PRGNAM-$VERSION-$ARCH-$BUILD$TAG.$PKGTYPE"
+ exit 0
+fi
+
TMP=${TMP:-/tmp/SBo}
PKG=$TMP/package-$PRGNAM
OUTPUT=${OUTPUT:-/tmp}
@@ -26,13 +33,7 @@ cd $TMP
rm -rf $PRGNAM-$VERSION
mkdir -p $PRGNAM-$VERSION
cd $PRGNAM-$VERSION
-unzip $CWD/hexndemo.zip
-chown -R root:root .
-find -L . \
- \( -perm 777 -o -perm 775 -o -perm 750 -o -perm 711 -o -perm 555 -o -perm 511 \) \
- -exec chmod 755 {} \; -o \
- \( -perm 666 -o -perm 664 -o -perm 600 -o -perm 444 -o -perm 440 -o -perm 400 \) \
- -exec chmod 644 {} \;
+unzip -a $CWD/hexndemo.zip '*.WAD' '*.TXT'
# Install as hexdemo.wad rather than hexen.wad. ZDoom will accept either,
# and this way we don't stomp on the hexen.wad from the full version of
@@ -40,12 +41,13 @@ find -L . \
mkdir -p $PKG/usr/share/games/doom
install -m0644 HEXEN.WAD $PKG/usr/share/games/doom/hexdemo.wad
-mkdir -p $PKG/usr/doc/$PRGNAM-$VERSION
-sed 's/\r//' README.TXT > $PKG/usr/doc/$PRGNAM-$VERSION/README.txt
-cat $CWD/$PRGNAM.SlackBuild > $PKG/usr/doc/$PRGNAM-$VERSION/$PRGNAM.SlackBuild
+PKGDOC=$PKG/usr/doc/$PRGNAM-$VERSION
+mkdir -p $PKGDOC
+cat README.TXT > $PKGDOC/README.txt
+cat $CWD/$PRGNAM.SlackBuild > $PKGDOC/$PRGNAM.SlackBuild
mkdir -p $PKG/install
cat $CWD/slack-desc > $PKG/install/slack-desc
cd $PKG
-/sbin/makepkg -l y -c n $OUTPUT/$PRGNAM-$VERSION-$ARCH-$BUILD$TAG.${PKGTYPE:-tgz}
+/sbin/makepkg -l y -c n $OUTPUT/$PRGNAM-$VERSION-$ARCH-$BUILD$TAG.$PKGTYPE
diff --git a/games/hexen_demo_data/hexen_demo_data.info b/games/hexen_demo_data/hexen_demo_data.info
index 85b3d44c1a..31b403180e 100644
--- a/games/hexen_demo_data/hexen_demo_data.info
+++ b/games/hexen_demo_data/hexen_demo_data.info
@@ -1,10 +1,10 @@
PRGNAM="hexen_demo_data"
VERSION="1.1"
-HOMEPAGE="ftp://ftp.idsoftware.com/idstuff/hexen/"
-DOWNLOAD="http://ponce.cc/slackware/sources/repo/hexndemo.zip"
+HOMEPAGE="https://www.idsoftware.com"
+DOWNLOAD="https://ftp.gwdg.de/pub/misc/ftp.idsoftware.com/idstuff/hexen/hexndemo.zip"
MD5SUM="b30672df8b41fd35fafe40ce0c3855c3"
DOWNLOAD_x86_64=""
MD5SUM_x86_64=""
REQUIRES=""
MAINTAINER="B. Watson"
-EMAIL="yalhcru@gmail.com"
+EMAIL="urchlay@slackware.uk"
diff --git a/games/hexen_demo_data/slack-desc b/games/hexen_demo_data/slack-desc
index 9be684d99f..b491c3a39e 100644
--- a/games/hexen_demo_data/slack-desc
+++ b/games/hexen_demo_data/slack-desc
@@ -12,8 +12,8 @@ hexen_demo_data: Game data from the demo release of Hexen (hexen.wad, v1.1). Inc
hexen_demo_data: only the first 4 levels of the game.
hexen_demo_data:
hexen_demo_data: You'll need a Doom engine that's capable of playing Hexen to use this.
-hexen_demo_data: zdoom will work; prboom, prboom-plus, odamex, and skulltag won't.
-hexen_demo_data:
+hexen_demo_data: zdoom and gzdoom will work; prboom, prboom-plus, odamex, and skulltag
+hexen_demo_data: won't.
hexen_demo_data:
hexen_demo_data:
hexen_demo_data:
diff --git a/games/hexglass/hexglass.SlackBuild b/games/hexglass/hexglass.SlackBuild
index 82f7fe321a..6e1487a744 100644
--- a/games/hexglass/hexglass.SlackBuild
+++ b/games/hexglass/hexglass.SlackBuild
@@ -1,4 +1,4 @@
-#!/bin/sh
+#!/bin/bash
# Slackware build script for hexglass
@@ -22,10 +22,23 @@
# OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF THIS SOFTWARE, EVEN IF
# ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
+# 20220320 bkw: Modified by SlackBuilds.org, fix 32-bit build.
+# 20220220 bkw: Modified by SlackBuilds.org, BUILD=3:
+# - fix github filename mess. upstream includes the project name as the
+# first part of the tag name, so the correct name really is:
+# hexglass-hexglass-1.2.2.tar.gz.
+# - add qt4 dep, since it doesn't build with qt5.
+# - install binary in /usr/games
+# - absolute paths in .desktop
+# - icon was huge (512x512), resize to 64x64.
+
+cd $(dirname $0) ; CWD=$(pwd)
+
PRGNAM=hexglass
VERSION=${VERSION:-1.2.1}
-BUILD=${BUILD:-2}
+BUILD=${BUILD:-3}
TAG=${TAG:-_SBo}
+PKGTYPE=${PKGTYPE:-tgz}
if [ -z "$ARCH" ]; then
case "$( uname -m )" in
@@ -35,7 +48,11 @@ if [ -z "$ARCH" ]; then
esac
fi
-CWD=$(pwd)
+if [ ! -z "${PRINT_PACKAGE_NAME}" ]; then
+ echo "$PRGNAM-$VERSION-$ARCH-$BUILD$TAG.$PKGTYPE"
+ exit 0
+fi
+
TMP=${TMP:-/tmp/SBo}
PKG=$TMP/package-$PRGNAM
OUTPUT=${OUTPUT:-/tmp}
@@ -65,31 +82,27 @@ cd $PRGNAM-$PRGNAM-$VERSION
chown -R root:root .
find -L . \
\( -perm 777 -o -perm 775 -o -perm 750 -o -perm 711 -o -perm 555 \
- -o -perm 511 \) -exec chmod 755 {} \; -o \
+ -o -perm 511 \) -exec chmod 755 {} \+ -o \
\( -perm 666 -o -perm 664 -o -perm 640 -o -perm 600 -o -perm 444 \
- -o -perm 440 -o -perm 400 \) -exec chmod 644 {} \;
+ -o -perm 440 -o -perm 400 \) -exec chmod 644 {} \+
# create Makefile
-qmake
+qmake-qt4
# fix path installation
-sed -i 's/INSTALL\_ROOT)\/usr\/lib64\/qt\/bin/INSTALL\_ROOT)\/usr\/bin/g' Makefile
+sed -i 's/INSTALL\_ROOT)\/usr\/lib[^\/]*\/qt4\/bin/INSTALL\_ROOT)\/usr\/games/g' Makefile
make
make INSTALL_ROOT=$PKG install
-
-find $PKG -print0 | xargs -0 file | grep -e "executable" -e "shared object" | grep ELF \
- | cut -f 1 -d : | xargs strip --strip-unneeded 2> /dev/null || true
+strip $PKG/usr/games/$PRGNAM
# create .desktop file for this script
mkdir -p $PKG/usr/share/applications
install -D -m644 $CWD/$PRGNAM.desktop $PKG/usr/share/applications/$PRGNAM.desktop
# convert .xpm logo image to .png file
-convert resources/logo512x512.xpm $PRGNAM.png
-
mkdir -p $PKG/usr/share/pixmaps/
-install -D -m644 $PRGNAM.png $PKG/usr/share/pixmaps/$PRGNAM.png
+convert -resize 64x64 resources/logo512x512.xpm $PKG/usr/share/pixmaps/$PRGNAM.png
mkdir -p $PKG/usr/doc/$PRGNAM-$VERSION
cp -a CHANGES COPYING README $PKG/usr/doc/$PRGNAM-$VERSION
@@ -100,4 +113,4 @@ cat $CWD/slack-desc > $PKG/install/slack-desc
cat $CWD/doinst.sh > $PKG/install/doinst.sh
cd $PKG
-/sbin/makepkg -l y -c n $OUTPUT/$PRGNAM-$VERSION-$ARCH-$BUILD$TAG.${PKGTYPE:-tgz}
+/sbin/makepkg -l y -c n $OUTPUT/$PRGNAM-$VERSION-$ARCH-$BUILD$TAG.$PKGTYPE
diff --git a/games/hexglass/hexglass.desktop b/games/hexglass/hexglass.desktop
index d1d793dd87..87fc383504 100644
--- a/games/hexglass/hexglass.desktop
+++ b/games/hexglass/hexglass.desktop
@@ -1,8 +1,8 @@
[Desktop Entry]
Name=HexGlass
Comment=The HexGlass is a Tetris-like puzzle game
-Exec=hexglass
-Icon=hexglass
+Exec=/usr/games/hexglass
+Icon=/usr/share/pixmaps/hexglass.png
Terminal=false
Type=Application
Categories=Game;LogicGame;
diff --git a/games/hexglass/hexglass.info b/games/hexglass/hexglass.info
index bfba313137..577386cb8f 100644
--- a/games/hexglass/hexglass.info
+++ b/games/hexglass/hexglass.info
@@ -1,10 +1,10 @@
PRGNAM="hexglass"
VERSION="1.2.1"
HOMEPAGE="https://github.com/lizaifang/hexglass/"
-DOWNLOAD="https://github.com/lizaifang/hexglass/archive/hexglass-1.2.1.tar.gz"
+DOWNLOAD="https://github.com/lizaifang/hexglass/archive/hexglass-1.2.1/hexglass-hexglass-1.2.1.tar.gz"
MD5SUM="92683988cd7f2aff7478c1e73c53433b"
DOWNLOAD_x86_64=""
MD5SUM_x86_64=""
-REQUIRES=""
+REQUIRES="qt4"
MAINTAINER="Dimitris Zlatanidis"
EMAIL="d.zlatanidis@gmail.com"
diff --git a/games/higan/README b/games/higan/README
index 29252151b6..1be64f856a 100644
--- a/games/higan/README
+++ b/games/higan/README
@@ -7,9 +7,6 @@ code. The emulator does not focus on things that would hinder accuracy.
This includes speed and game-specific hacks for compatibility. As a
result, the minimum system requirements for higan are very high.
-Note: higan v106 is the last version that will build on Slackware 14.2.
-I will update to the latest version when 15.0 releases.
-
As of v104, higan has top-tier support for the following consoles:
- Nintendo Super Famicom/SNES, including add-on hardware:
diff --git a/games/higan/doinst.sh b/games/higan/doinst.sh
index 5fb28930db..3e5691a052 100644
--- a/games/higan/doinst.sh
+++ b/games/higan/doinst.sh
@@ -1,3 +1,9 @@
if [ -x /usr/bin/update-desktop-database ]; then
/usr/bin/update-desktop-database -q usr/share/applications >/dev/null 2>&1
fi
+
+if [ -e usr/share/icons/hicolor/icon-theme.cache ]; then
+ if [ -x /usr/bin/gtk-update-icon-cache ]; then
+ /usr/bin/gtk-update-icon-cache usr/share/icons/hicolor >/dev/null 2>&1
+ fi
+fi
diff --git a/games/higan/higan.SlackBuild b/games/higan/higan.SlackBuild
index d4675f6351..39d9901f01 100644
--- a/games/higan/higan.SlackBuild
+++ b/games/higan/higan.SlackBuild
@@ -1,11 +1,11 @@
-#!/bin/sh
+#!/bin/bash
# Slackware build script for higan
# Based on bsnes SlackBuild by Erik Hanson <email removed>
# Maintained by Gabriel Magno <email removed>
# Modified by Johannes Schoepfer <email removed>
-# Modified again & now maintained by B. Watson <yalhcru@gmail.com>
+# Modified again & now maintained by B. Watson <urchlay@slackware.uk>
# Copyright 2013 Gabriel Magno, Belo Horizonte, MG, Brazil
# All rights reserved.
@@ -27,6 +27,16 @@
# OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF THIS SOFTWARE, EVEN IF
# ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
+# 20230108 bkw: fix PRINT_PACKAGE_NAME.
+# 20211101 bkw: v106 BUILD=3
+# - revert to v106! someone other than me upgraded this for higan
+# v110, but it turns out that v110 wouldn't actually play any games
+# (UI would start up, but no way to map controllers). unless/until I
+# straighten this out, this will remain at v106, which I've actually
+# successfully played games with.
+# - new-style icons.
+# - better .desktop files.
+
# 20200907 bkw: upstream source moved and changed to .tar.gz, get
# rid of p7zip dependency. BUILD=2.
# 20200529 bkw: add "can't update version" note to README.
@@ -46,10 +56,13 @@
# - Add man pages. Note to SBo admins: please don't remove my *.rst man
# page sources!
+cd $(dirname $0) ; CWD=$(pwd)
+
PRGNAM=higan
VERSION=${VERSION:-106}
-BUILD=${BUILD:-2}
+BUILD=${BUILD:-3}
TAG=${TAG:-_SBo}
+PKGTYPE=${PKGTYPE:-tgz}
if [ -z "$ARCH" ]; then
case "$( uname -m )" in
@@ -59,7 +72,11 @@ if [ -z "$ARCH" ]; then
esac
fi
-CWD=$(pwd)
+if [ ! -z "${PRINT_PACKAGE_NAME}" ]; then
+ echo "$PRGNAM-$VERSION-$ARCH-$BUILD$TAG.$PKGTYPE"
+ exit 0
+fi
+
TMP=${TMP:-/tmp/SBo}
PKG=$TMP/package-$PRGNAM
OUTPUT=${OUTPUT:-/tmp}
@@ -144,10 +161,21 @@ mkdir -p $PKG/usr/games \
$PKG/usr/share/pixmaps
install -s -m 755 $PRGNAM/out/$PRGNAM icarus/out/icarus $PKG/usr/games/
-install -m 644 $PRGNAM/data/$PRGNAM.desktop $PKG/usr/share/applications/
-install -m 644 $PRGNAM/data/$PRGNAM.png $PKG/usr/share/pixmaps/
cp -dr $PRGNAM/systems/* $PKG/usr/share/$PRGNAM/
+for px in 16 32 48 64 128; do
+ size=${px}x${px}
+ dir=$PKG/usr/share/icons/hicolor/$size/apps
+ mkdir -p $dir
+ convert -resize $size $PRGNAM/data/$PRGNAM.png $dir/$PRGNAM.png
+ convert -resize $size icarus/data/icarus.png $dir/icarus.png
+done
+
+for i in $PRGNAM icarus; do
+ ln -s ../icons/hicolor/48x48/apps/$i.png $PKG/usr/share/pixmaps/$i.png
+ cat $CWD/$PRGNAM.desktop > $PKG/usr/share/applications/$PRGNAM.desktop
+done
+
# Man pages by B. Watson. higan.6 is basically the higan-cli.md from the
# git repo, reformatted as RST & converted to a man page. icarus.6 was
# written from scratch (and doesn't have much to say, you'll notice).
@@ -167,4 +195,4 @@ cat $CWD/slack-desc > $PKG/install/slack-desc
cat $CWD/doinst.sh > $PKG/install/doinst.sh
cd $PKG
-/sbin/makepkg -l y -c n $OUTPUT/$PRGNAM-$VERSION-$ARCH-$BUILD$TAG.${PKGTYPE:-tgz}
+/sbin/makepkg -l y -c n $OUTPUT/$PRGNAM-$VERSION-$ARCH-$BUILD$TAG.$PKGTYPE
diff --git a/games/higan/higan.desktop b/games/higan/higan.desktop
new file mode 100644
index 0000000000..01281a20e4
--- /dev/null
+++ b/games/higan/higan.desktop
@@ -0,0 +1,8 @@
+[Desktop Entry]
+Name=Higan
+Comment=Multi-Console Emulator
+Exec=/usr/games/higan
+Icon=higan
+Terminal=false
+Type=Application
+Categories=Game;Emulator;
diff --git a/games/higan/higan.info b/games/higan/higan.info
index 2b56695513..641ed69c61 100644
--- a/games/higan/higan.info
+++ b/games/higan/higan.info
@@ -1,10 +1,10 @@
PRGNAM="higan"
VERSION="106"
-HOMEPAGE="https://byuu.org/emulation/higan/"
+HOMEPAGE="https://github.com/higan-emu/higan/"
DOWNLOAD="https://github.com/higan-emu/higan/archive/v106/higan-106.tar.gz"
MD5SUM="4a68c6b9671089b4a7fde0b234531d61"
DOWNLOAD_x86_64=""
MD5SUM_x86_64=""
REQUIRES="gtksourceview"
MAINTAINER="B. Watson"
-EMAIL="yalhcru@gmail.com"
+EMAIL="urchlay@slackware.uk"
diff --git a/games/higan/icarus.desktop b/games/higan/icarus.desktop
new file mode 100644
index 0000000000..5b3e5b9e92
--- /dev/null
+++ b/games/higan/icarus.desktop
@@ -0,0 +1,8 @@
+[Desktop Entry]
+Name=Icarus
+Comment=Higan Database Tool
+Exec=/usr/games/icarus
+Icon=icarus
+Terminal=false
+Type=Application
+Categories=Game;Emulator;
diff --git a/games/hlsdk/hlsdk.SlackBuild b/games/hlsdk/hlsdk.SlackBuild
index 347c438247..97b2e1b18e 100644
--- a/games/hlsdk/hlsdk.SlackBuild
+++ b/games/hlsdk/hlsdk.SlackBuild
@@ -1,4 +1,4 @@
-#!/bin/sh
+#!/bin/bash
# Slackware build script for hlsdk
@@ -22,11 +22,14 @@
# OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF THIS SOFTWARE, EVEN IF
# ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
+cd $(dirname $0) ; CWD=$(pwd)
+
PRGNAM=hlsdk
SRCNAM=halflife
VERSION=${VERSION:-28082015}
BUILD=${BUILD:-1}
TAG=${TAG:-_SBo}
+PKGTYPE=${PKGTYPE:-tgz}
GITHASH=235f2f448f5cab7251206f8ff1f242e30346a4d4
if [ -z "$ARCH" ]; then
@@ -37,7 +40,14 @@ if [ -z "$ARCH" ]; then
esac
fi
-CWD=$(pwd)
+# If the variable PRINT_PACKAGE_NAME is set, then this script will report what
+# the name of the created package would be, and then exit. This information
+# could be useful to other scripts.
+if [ ! -z "${PRINT_PACKAGE_NAME}" ]; then
+ echo "$PRGNAM-$VERSION-$ARCH-$BUILD$TAG.$PKGTYPE"
+ exit 0
+fi
+
TMP=${TMP:-/tmp/SBo}
PKG=$TMP/package-$PRGNAM
OUTPUT=${OUTPUT:-/tmp}
@@ -83,4 +93,4 @@ mkdir -p $PKG/install
cat $CWD/slack-desc > $PKG/install/slack-desc
cd $PKG
-/sbin/makepkg -l y -c n $OUTPUT/$PRGNAM-$VERSION-$ARCH-$BUILD$TAG.${PKGTYPE:-tgz}
+/sbin/makepkg -l y -c n $OUTPUT/$PRGNAM-$VERSION-$ARCH-$BUILD$TAG.$PKGTYPE
diff --git a/games/hnefatafl/hnefatafl.SlackBuild b/games/hnefatafl/hnefatafl.SlackBuild
index c1290d339b..0f0f89e0fa 100644
--- a/games/hnefatafl/hnefatafl.SlackBuild
+++ b/games/hnefatafl/hnefatafl.SlackBuild
@@ -1,4 +1,4 @@
-#!/bin/sh
+#!/bin/bash
# Slackware 14.1 build script for Hnefatafl
@@ -17,26 +17,36 @@
# TORTIOUS ACTION, ARISING OUT OF OR IN CONNECTION WITH THE USE OR
# PERFORMANCE OF THIS SOFTWARE.
+cd $(dirname $0) ; CWD=$(pwd)
+
PRGNAM=hnefatafl
VERSION=${VERSION:-140617}
BUILD=${BUILD:-1}
TAG=${TAG:-_SBo}
+PKGTYPE=${PKGTYPE:-tgz}
if [ -z "$ARCH" ]; then
case "$( uname -m )" in
- i?86) ARCH=i486 ;;
+ i?86) ARCH=i586 ;;
arm*) ARCH=arm ;;
*) ARCH=$( uname -m ) ;;
esac
fi
-CWD=$(pwd)
+# If the variable PRINT_PACKAGE_NAME is set, then this script will report what
+# the name of the created package would be, and then exit. This information
+# could be useful to other scripts.
+if [ ! -z "${PRINT_PACKAGE_NAME}" ]; then
+ echo "$PRGNAM-$VERSION-$ARCH-$BUILD$TAG.$PKGTYPE"
+ exit 0
+fi
+
TMP=${TMP:-/tmp/SBo}
PKG=$TMP/package-$PRGNAM
OUTPUT=${OUTPUT:-/tmp}
-if [ "$ARCH" = "i486" ]; then
- SLKCFLAGS="-O3 -march=i486 -mtune=i686"
+if [ "$ARCH" = "i586" ]; then
+ SLKCFLAGS="-O3 -march=i586 -mtune=i686"
LIBDIRSUFFIX=""
elif [ "$ARCH" = "i686" ]; then
SLKCFLAGS="-O3 -march=i686 -mtune=i686"
@@ -89,4 +99,4 @@ mkdir -p $PKG/install
cat $CWD/slack-desc > $PKG/install/slack-desc
cd $PKG
-/sbin/makepkg -l y -c n $OUTPUT/$PRGNAM-$VERSION-$ARCH-$BUILD$TAG.${PKGTYPE:-tgz}
+/sbin/makepkg -l y -c n $OUTPUT/$PRGNAM-$VERSION-$ARCH-$BUILD$TAG.$PKGTYPE
diff --git a/games/ho1/ho1.SlackBuild b/games/ho1/ho1.SlackBuild
index 482e5f925a..f0412fce15 100644
--- a/games/ho1/ho1.SlackBuild
+++ b/games/ho1/ho1.SlackBuild
@@ -1,19 +1,29 @@
-#!/bin/sh
+#!/bin/bash
# Slackware build script for hattrick-organizer
# Written by Xavier Maillard <xavier@maillard.im>
+cd $(dirname $0) ; CWD=$(pwd)
+
PRGNAM=ho1
VERSION=${VERSION:-1.430}
VERSIONSRC=${VERSIONSRC:-1430}
EXTRAVERSION=${EXTRAVERSION:-r894}
BUILD=${BUILD:-2}
TAG=${TAG:-_SBo}
+PKGTYPE=${PKGTYPE:-tgz}
ARCH=noarch # Java
-CWD=$(pwd)
+# If the variable PRINT_PACKAGE_NAME is set, then this script will report what
+# the name of the created package would be, and then exit. This information
+# could be useful to other scripts.
+if [ ! -z "${PRINT_PACKAGE_NAME}" ]; then
+ echo "$PRGNAM-$VERSION-$ARCH-$BUILD$TAG.$PKGTYPE"
+ exit 0
+fi
+
TMP=${TMP:-/tmp/SBo}
PKG=$TMP/package-$PRGNAM
OUTPUT=${OUTPUT:-/tmp}
@@ -45,4 +55,4 @@ cat $CWD/slack-desc > $PKG/install/slack-desc
cat $CWD/doinst.sh > $PKG/install/doinst.sh
cd $PKG
-/sbin/makepkg -l y -c n $OUTPUT/$PRGNAM-$VERSION-$ARCH-$BUILD$TAG.${PKGTYPE:-tgz}
+/sbin/makepkg -l y -c n $OUTPUT/$PRGNAM-$VERSION-$ARCH-$BUILD$TAG.$PKGTYPE
diff --git a/games/ho1/ho1.info b/games/ho1/ho1.info
index 4cf0d717d9..9806d215af 100644
--- a/games/ho1/ho1.info
+++ b/games/ho1/ho1.info
@@ -1,10 +1,10 @@
PRGNAM="ho1"
VERSION="1.430"
HOMEPAGE="https://web.archive.org/web/20170110090446/https://www.hattrick.org/"
-DOWNLOAD="http://downloads.sourceforge.net/project/ho1/ho1/1.430/HO_1430_r894.rpm"
+DOWNLOAD="https://slackware.uk/~urchlay/src/HO_1430_r894.rpm"
MD5SUM="ee6b9d421040f2e2dc3b97d5fc0e79ae"
DOWNLOAD_x86_64=""
MD5SUM_x86_64=""
-REQUIRES="jdk"
+REQUIRES="zulu-openjdk8"
MAINTAINER="Xavier Maillard"
EMAIL="xavier+slackbuilds@maillard.im"
diff --git a/games/homm3_shareware_data/README b/games/homm3_shareware_data/README
new file mode 100644
index 0000000000..4a778251e6
--- /dev/null
+++ b/games/homm3_shareware_data/README
@@ -0,0 +1,22 @@
+Heroes of Might and Magic III: The Restoration of Erathia Demo
+
+In Heroes III, you control the actions of heroes to complete mission
+objectives in a variety of conflicts taking place in the mythical land
+of Erathia. As heroes travel across the land with their armies, they can
+explore, seek artifacts, and find treasure, as well as lead their armies
+into battle. Towns can also have armies garrisoned for their defense and
+act as centers for recruitment, learning of magic spells and trading.
+Towns you conquer become part of your territory. You may develop your
+towns to provide yourself with offensive, defensive, and logistical
+advantages.
+
+This repackages the demo game data and makes it ready to use with the
+VCMI Heroes III engine that runs natively on Linux. The demo for Mac is
+used, since it is supposedly more complete than the one for Windows
+(which does not seem to work with VCMI). For more info, check this
+discussion:
+https://forum.vcmi.eu/t/support-for-demo-versions/1079/17
+
+The package installs the data system-wide and the game is playable and
+will give you an idea about how VCMI works, however there are graphics
+glitches and probably other problems. Consider buying the full game.
diff --git a/games/homm3_shareware_data/homm3_shareware_data.SlackBuild b/games/homm3_shareware_data/homm3_shareware_data.SlackBuild
new file mode 100644
index 0000000000..01d112ad94
--- /dev/null
+++ b/games/homm3_shareware_data/homm3_shareware_data.SlackBuild
@@ -0,0 +1,86 @@
+#!/bin/bash
+
+# Slackware build script for homm3_shareware_data
+
+# Copyright 2021 Petar Petrov slackalaxy@gmail.com
+# All rights reserved.
+#
+# Redistribution and use of this script, with or without modification, is
+# permitted provided that the following conditions are met:
+#
+# 1. Redistributions of this script must retain the above copyright
+# notice, this list of conditions and the following disclaimer.
+#
+# THIS SOFTWARE IS PROVIDED BY THE AUTHOR "AS IS" AND ANY EXPRESS OR IMPLIED
+# WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE IMPLIED WARRANTIES OF
+# MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE ARE DISCLAIMED. IN NO
+# EVENT SHALL THE AUTHOR BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL,
+# SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT LIMITED TO,
+# PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, DATA, OR PROFITS;
+# OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY,
+# WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR
+# OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF THIS SOFTWARE, EVEN IF
+# ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
+
+cd $(dirname $0) ; CWD=$(pwd)
+
+PRGNAM=homm3_shareware_data
+VERSION=${VERSION:-4.0} # This is the version stated in the ReadMe
+BUILD=${BUILD:-1}
+TAG=${TAG:-_SBo}
+PKGTYPE=${PKGTYPE:-tgz}
+
+DEMO=heroes_3_complete_demo.sit
+ARCH=noarch
+
+# If the variable PRINT_PACKAGE_NAME is set, then this script will report what
+# the name of the created package would be, and then exit. This information
+# could be useful to other scripts.
+if [ ! -z "${PRINT_PACKAGE_NAME}" ]; then
+ echo "$PRGNAM-$VERSION-$ARCH-$BUILD$TAG.$PKGTYPE"
+ exit 0
+fi
+
+TMP=${TMP:-/tmp/SBo}
+PKG=$TMP/package-$PRGNAM
+OUTPUT=${OUTPUT:-/tmp}
+
+set -e
+
+rm -rf $PKG
+mkdir -p $TMP $PKG $OUTPUT
+cd $TMP
+rm -rf $PRGNAM-$VERSION
+mkdir -p $PRGNAM-$VERSION
+cd $PRGNAM-$VERSION
+
+# Steps are taken from the PKGBUILD at Arch linux AUR. Thanks K5HV!
+# https://aur.archlinux.org/packages/vcmi-demo/
+unar -f -t $CWD/$DEMO
+cd Heroes\ III\ Demo/
+
+chown -R root:root .
+find -L . \
+ \( -perm 777 -o -perm 775 -o -perm 750 -o -perm 711 -o -perm 555 \
+ -o -perm 511 \) -exec chmod 755 {} \; -o \
+ \( -perm 666 -o -perm 664 -o -perm 640 -o -perm 600 -o -perm 444 \
+ -o -perm 440 -o -perm 400 \) -exec chmod 644 {} \;
+
+mkdir -p $PKG/usr/share/vcmi/
+cp -a data $PKG/usr/share/vcmi/Data
+cp -a maps $PKG/usr/share/vcmi/Maps
+cp -a music $PKG/usr/share/vcmi/Mp3
+
+# Remove these, as they are Mac-specific
+rm -rf $PKG/usr/share/Data/*.rsrc
+rm -rf $PKG/usr/share/Maps/*.rsrc
+
+mkdir -p $PKG/usr/doc/$PRGNAM-$VERSION
+cp -a Read\ Me $PKG/usr/doc/$PRGNAM-$VERSION/ReadMe.txt
+cat $CWD/$PRGNAM.SlackBuild > $PKG/usr/doc/$PRGNAM-$VERSION/$PRGNAM.SlackBuild
+
+mkdir -p $PKG/install
+cat $CWD/slack-desc > $PKG/install/slack-desc
+
+cd $PKG
+/sbin/makepkg -l y -c n $OUTPUT/$PRGNAM-$VERSION-$ARCH-$BUILD$TAG.$PKGTYPE
diff --git a/games/homm3_shareware_data/homm3_shareware_data.info b/games/homm3_shareware_data/homm3_shareware_data.info
new file mode 100644
index 0000000000..4cbff19da2
--- /dev/null
+++ b/games/homm3_shareware_data/homm3_shareware_data.info
@@ -0,0 +1,10 @@
+PRGNAM="homm3_shareware_data"
+VERSION="4.0"
+HOMEPAGE="https://archive.org/details/heroes_3_complete_demo"
+DOWNLOAD="https://archive.org/download/heroes_3_complete_demo/heroes_3_complete_demo.sit"
+MD5SUM="49343f4fc8c5820c28f4bc8c39a2e149"
+DOWNLOAD_x86_64=""
+MD5SUM_x86_64=""
+REQUIRES="vcmi unar"
+MAINTAINER="Petar Petrov"
+EMAIL="slackalaxy@gmail.com"
diff --git a/games/homm3_shareware_data/slack-desc b/games/homm3_shareware_data/slack-desc
new file mode 100644
index 0000000000..dc3df0ef23
--- /dev/null
+++ b/games/homm3_shareware_data/slack-desc
@@ -0,0 +1,19 @@
+# HOW TO EDIT THIS FILE:
+# The "handy ruler" below makes it easier to edit a package description.
+# Line up the first '|' above the ':' following the base package name, and
+# the '|' on the right side marks the last column you can put a character in.
+# You must make exactly 11 lines for the formatting to be correct. It's also
+# customary to leave one space after the ':' except on otherwise blank lines.
+
+ |-----handy-ruler------------------------------------------------------|
+homm3_shareware_data: homm3_shareware_data (Heroes of Might and Magic III Demo)
+homm3_shareware_data:
+homm3_shareware_data: In Heroes III, you control the actions of heroes to complete
+homm3_shareware_data: mission objectives in a variety of conflicts taking place in the
+homm3_shareware_data: mythical land of Erathia.
+homm3_shareware_data:
+homm3_shareware_data: This is meant to be used with vcmi.
+homm3_shareware_data:
+homm3_shareware_data:
+homm3_shareware_data:
+homm3_shareware_data:
diff --git a/games/iagno/0001-Don-t-alter-or-try-to-write-GtkChild-fields.patch b/games/iagno/0001-Don-t-alter-or-try-to-write-GtkChild-fields.patch
new file mode 100644
index 0000000000..5eca77a2b4
--- /dev/null
+++ b/games/iagno/0001-Don-t-alter-or-try-to-write-GtkChild-fields.patch
@@ -0,0 +1,134 @@
+From 508c0f94e5f182e50ff61be6e04f72574dee97cb Mon Sep 17 00:00:00 2001
+From: Rico Tzschichholz <ricotz@ubuntu.com>
+Date: Sat, 16 Jan 2021 13:50:27 +0100
+Subject: [PATCH] Don't alter or try to write [GtkChild] fields
+
+See https://gitlab.gnome.org/GNOME/vala/issues/1121
+---
+ src/overlayed-list.vala | 38 +++++++++++++++++++-------------------
+ 1 file changed, 19 insertions(+), 19 deletions(-)
+
+diff --git a/src/overlayed-list.vala b/src/overlayed-list.vala
+index ef5db6f..209b044 100644
+--- a/src/overlayed-list.vala
++++ b/src/overlayed-list.vala
+@@ -89,11 +89,11 @@ private abstract class OverlayedList : Overlay, AdaptativeWidget
+ internal void set_window_size (AdaptativeWidget.WindowSize new_size)
+ {
+ if (!AdaptativeWidget.WindowSize.is_extra_thin (new_size) && AdaptativeWidget.WindowSize.is_extra_flat (new_size))
+- set_horizontal (ref main_context, ref edit_mode_box);
++ set_horizontal (ref main_context, edit_mode_box);
+ else
+- set_vertical (ref main_context, ref edit_mode_box);
++ set_vertical (ref main_context, edit_mode_box);
+ }
+- private static inline void set_horizontal (ref StyleContext main_context, ref Box edit_mode_box)
++ private static inline void set_horizontal (ref StyleContext main_context, Box edit_mode_box)
+ {
+ main_context.remove_class ("vertical");
+ edit_mode_box.halign = Align.END;
+@@ -102,7 +102,7 @@ private abstract class OverlayedList : Overlay, AdaptativeWidget
+ edit_mode_box.width_request = 160;
+ main_context.add_class ("horizontal");
+ }
+- private static inline void set_vertical (ref StyleContext main_context, ref Box edit_mode_box)
++ private static inline void set_vertical (ref StyleContext main_context, Box edit_mode_box)
+ {
+ main_context.remove_class ("horizontal");
+ edit_mode_box.halign = Align.CENTER;
+@@ -118,9 +118,9 @@ private abstract class OverlayedList : Overlay, AdaptativeWidget
+
+ internal bool next_match ()
+ {
+- return _next_match (ref main_list_box);
++ return _next_match (main_list_box);
+ }
+- private static inline bool _next_match (ref ListBox main_list_box)
++ private static inline bool _next_match (ListBox main_list_box)
+ {
+ ListBoxRow? row = main_list_box.get_selected_row (); // TODO multiple rows and focus-only lists
+ if (row == null)
+@@ -130,7 +130,7 @@ private abstract class OverlayedList : Overlay, AdaptativeWidget
+
+ if (row == null)
+ {
+- _scroll_bottom (ref main_list_box);
++ _scroll_bottom (main_list_box);
+ return false;
+ }
+ main_list_box.select_row ((!) row);
+@@ -140,9 +140,9 @@ private abstract class OverlayedList : Overlay, AdaptativeWidget
+
+ internal bool previous_match ()
+ {
+- return _previous_match (ref main_list_box);
++ return _previous_match (main_list_box);
+ }
+- private static inline bool _previous_match (ref ListBox main_list_box)
++ private static inline bool _previous_match (ListBox main_list_box)
+ {
+ uint n_items = main_list_box.get_children ().length (); // FIXME OverlayedList.n_items is unreliable
+ if (n_items == 0)
+@@ -189,9 +189,9 @@ private abstract class OverlayedList : Overlay, AdaptativeWidget
+
+ protected int [] get_selected_rows_indices ()
+ {
+- return _get_selected_rows_indices (ref main_list_box);
++ return _get_selected_rows_indices (main_list_box);
+ }
+- private static inline int [] _get_selected_rows_indices (ref ListBox main_list_box)
++ private static inline int [] _get_selected_rows_indices (ListBox main_list_box)
+ {
+ int [] indices = new int [0];
+ main_list_box.selected_foreach ((_list_box, selected_row) => {
+@@ -205,9 +205,9 @@ private abstract class OverlayedList : Overlay, AdaptativeWidget
+
+ protected void scroll_top ()
+ {
+- _scroll_top (ref main_list_box);
++ _scroll_top (main_list_box);
+ }
+- private static inline void _scroll_top (ref ListBox main_list_box)
++ private static inline void _scroll_top (ListBox main_list_box)
+ {
+ Adjustment adjustment = main_list_box.get_adjustment ();
+ adjustment.set_value (adjustment.get_lower ());
+@@ -215,9 +215,9 @@ private abstract class OverlayedList : Overlay, AdaptativeWidget
+
+ protected void scroll_bottom ()
+ {
+- _scroll_bottom (ref main_list_box);
++ _scroll_bottom (main_list_box);
+ }
+- private static inline void _scroll_bottom (ref ListBox main_list_box)
++ private static inline void _scroll_bottom (ListBox main_list_box)
+ {
+ Adjustment adjustment = main_list_box.get_adjustment ();
+ adjustment.set_value (adjustment.get_upper ());
+@@ -225,9 +225,9 @@ private abstract class OverlayedList : Overlay, AdaptativeWidget
+
+ internal bool handle_copy_text (out string copy_text)
+ {
+- return _handle_copy_text (out copy_text, ref main_list_box);
++ return _handle_copy_text (out copy_text, main_list_box);
+ }
+- private static inline bool _handle_copy_text (out string copy_text, ref ListBox main_list_box)
++ private static inline bool _handle_copy_text (out string copy_text, ListBox main_list_box)
+ {
+ List<weak ListBoxRow> selected_rows = main_list_box.get_selected_rows ();
+ OverlayedListRow row;
+@@ -283,9 +283,9 @@ private abstract class OverlayedList : Overlay, AdaptativeWidget
+
+ internal SelectionState get_selection_state ()
+ {
+- return _get_selection_state (ref main_list_box, ref main_list_store);
++ return _get_selection_state (main_list_box, ref main_list_store);
+ }
+- private static inline SelectionState _get_selection_state (ref ListBox main_list_box, ref GLib.ListStore main_list_store)
++ private static inline SelectionState _get_selection_state (ListBox main_list_box, ref GLib.ListStore main_list_store)
+ {
+ List<weak ListBoxRow> selected_rows = main_list_box.get_selected_rows ();
+ uint n_selected_rows = selected_rows.length ();
+--
+2.31.1
+
diff --git a/games/iagno/0001-Reference-of-GtkChild-fields-is-handled-by-GtkBuilde.patch b/games/iagno/0001-Reference-of-GtkChild-fields-is-handled-by-GtkBuilde.patch
new file mode 100644
index 0000000000..b6cce0b165
--- /dev/null
+++ b/games/iagno/0001-Reference-of-GtkChild-fields-is-handled-by-GtkBuilde.patch
@@ -0,0 +1,245 @@
+From e8a0aeec350ea80349582142c0e8e3cd3f1bce38 Mon Sep 17 00:00:00 2001
+From: Rico Tzschichholz <ricotz@ubuntu.com>
+Date: Wed, 17 Mar 2021 11:48:39 +0100
+Subject: [PATCH] Reference of [GtkChild] fields is handled by GtkBuilder, type
+ must be unowned
+
+---
+ src/base-headerbar.vala | 14 +++++++-------
+ src/base-view.vala | 4 ++--
+ src/base-window.vala | 6 +++---
+ src/game-actionbar.vala | 6 +++---
+ src/game-headerbar.vala | 4 ++--
+ src/history-button.vala | 4 ++--
+ src/new-game-screen.vala | 18 +++++++++---------
+ src/notifications-revealer.vala | 2 +-
+ src/overlayed-list.vala | 10 +++++-----
+ src/registry-placeholder.vala | 4 ++--
+ 10 files changed, 36 insertions(+), 36 deletions(-)
+
+diff --git a/src/base-headerbar.vala b/src/base-headerbar.vala
+index 075a3ef..256d761 100644
+--- a/src/base-headerbar.vala
++++ b/src/base-headerbar.vala
+@@ -20,7 +20,7 @@ using Gtk;
+ [GtkTemplate (ui = "/org/gnome/Reversi/ui/base-headerbar.ui")]
+ private class BaseHeaderBar : NightTimeAwareHeaderBar, AdaptativeWidget
+ {
+- [GtkChild] protected Box center_box;
++ [GtkChild] protected unowned Box center_box;
+
+ construct
+ {
+@@ -190,13 +190,13 @@ private class BaseHeaderBar : NightTimeAwareHeaderBar, AdaptativeWidget
+ * * default widgets
+ \*/
+
+- [GtkChild] private Button go_back_button;
+- [GtkChild] private Separator ltr_left_separator;
+- [GtkChild] private Label title_label;
+- [GtkChild] private MenuButton info_button;
+- [GtkChild] private Separator ltr_right_separator;
++ [GtkChild] private unowned Button go_back_button;
++ [GtkChild] private unowned Separator ltr_left_separator;
++ [GtkChild] private unowned Label title_label;
++ [GtkChild] private unowned MenuButton info_button;
++ [GtkChild] private unowned Separator ltr_right_separator;
+
+- [GtkChild] protected Stack quit_button_stack;
++ [GtkChild] protected unowned Stack quit_button_stack;
+
+ protected void set_default_widgets_states (string? title_label_text_or_null,
+ bool show_go_back_button,
+diff --git a/src/base-view.vala b/src/base-view.vala
+index af884df..0889eae 100644
+--- a/src/base-view.vala
++++ b/src/base-view.vala
+@@ -20,7 +20,7 @@ using Gtk;
+ [GtkTemplate (ui = "/org/gnome/Reversi/ui/base-view.ui")]
+ private class BaseView : Stack, AdaptativeWidget
+ {
+- [GtkChild] protected Grid main_grid;
++ [GtkChild] protected unowned Grid main_grid;
+
+ internal virtual bool handle_copy_text (out string copy_text)
+ {
+@@ -109,7 +109,7 @@ private class BaseView : Stack, AdaptativeWidget
+ * * notifications
+ \*/
+
+- [GtkChild] private Overlay notifications_overlay;
++ [GtkChild] private unowned Overlay notifications_overlay;
+
+ private bool notifications_revealer_created = false;
+ private NotificationsRevealer notifications_revealer;
+diff --git a/src/base-window.vala b/src/base-window.vala
+index ed8e891..eccaba8 100644
+--- a/src/base-window.vala
++++ b/src/base-window.vala
+@@ -74,9 +74,9 @@ private class BaseWindow : AdaptativeWindow, AdaptativeWidget
+ * * main layout
+ \*/
+
+- [GtkChild] private Grid main_grid;
+- [GtkChild] private Button unfullscreen_button;
+- [GtkChild] private Overlay main_overlay;
++ [GtkChild] private unowned Grid main_grid;
++ [GtkChild] private unowned Button unfullscreen_button;
++ [GtkChild] private unowned Overlay main_overlay;
+
+ protected void add_to_main_overlay (Widget widget)
+ {
+diff --git a/src/game-actionbar.vala b/src/game-actionbar.vala
+index e59bfdc..d1e9278 100644
+--- a/src/game-actionbar.vala
++++ b/src/game-actionbar.vala
+@@ -28,8 +28,8 @@ private class GameActionBar : Revealer, AdaptativeWidget
+ [CCode (notify = false)] public string window_name { private get; protected construct set; default = "" ; }
+ [CCode (notify = false)] public Widget? game_widget { private get; protected construct ; default = null ; }
+
+- [GtkChild] private ActionBar action_bar;
+- [GtkChild] private Label game_label;
++ [GtkChild] private unowned ActionBar action_bar;
++ [GtkChild] private unowned Label game_label;
+
+ construct
+ {
+@@ -93,7 +93,7 @@ private class GameActionBar : Revealer, AdaptativeWidget
+ [GtkTemplate (ui = "/org/gnome/Reversi/ui/game-actionbar-placeholder.ui")]
+ private class GameActionBarPlaceHolder : Revealer, AdaptativeWidget
+ {
+- [GtkChild] private Widget placeholder_child;
++ [GtkChild] private unowned Widget placeholder_child;
+ private GameActionBar actionbar;
+
+ internal GameActionBarPlaceHolder (GameActionBar _actionbar)
+diff --git a/src/game-headerbar.vala b/src/game-headerbar.vala
+index 8238b3d..8267d3d 100644
+--- a/src/game-headerbar.vala
++++ b/src/game-headerbar.vala
+@@ -23,8 +23,8 @@ using Gtk;
+ [GtkTemplate (ui = "/org/gnome/Reversi/ui/game-headerbar.ui")]
+ private class GameHeaderBar : BaseHeaderBar, AdaptativeWidget
+ {
+- [GtkChild] private Button new_game_button;
+- [GtkChild] private Button back_button;
++ [GtkChild] private unowned Button new_game_button;
++ [GtkChild] private unowned Button back_button;
+
+ [CCode (notify = false)] public bool window_has_name { private get; protected construct set; default = false; }
+ [CCode (notify = false)] public string window_name { private get; protected construct set; default = ""; }
+diff --git a/src/history-button.vala b/src/history-button.vala
+index 4cd3673..05a7b49 100644
+--- a/src/history-button.vala
++++ b/src/history-button.vala
+@@ -25,8 +25,8 @@ private class HistoryButton : MenuButton, AdaptativeWidget
+ {
+ [CCode (notify = false)] public ThemeManager theme_manager { private get; protected construct; }
+
+- [GtkChild] private Stack stack;
+- [GtkChild] private DrawingArea drawing;
++ [GtkChild] private unowned Stack stack;
++ [GtkChild] private unowned DrawingArea drawing;
+
+ internal HistoryButton (GLib.Menu menu, ThemeManager theme_manager)
+ {
+diff --git a/src/new-game-screen.vala b/src/new-game-screen.vala
+index 4cb7d31..8401c39 100644
+--- a/src/new-game-screen.vala
++++ b/src/new-game-screen.vala
+@@ -23,11 +23,11 @@ using Gtk;
+ [GtkTemplate (ui = "/org/gnome/Reversi/ui/new-game-screen.ui")]
+ private class NewGameScreen : Box, AdaptativeWidget
+ {
+- [GtkChild] private ModelButton modelbutton_one;
+- [GtkChild] private ModelButton modelbutton_two;
++ [GtkChild] private unowned ModelButton modelbutton_one;
++ [GtkChild] private unowned ModelButton modelbutton_two;
+
+- [GtkChild] private Gtk.MenuButton menubutton_one;
+- [GtkChild] private Gtk.MenuButton menubutton_two;
++ [GtkChild] private unowned Gtk.MenuButton menubutton_one;
++ [GtkChild] private unowned Gtk.MenuButton menubutton_two;
+
+ construct
+ {
+@@ -106,12 +106,12 @@ private class NewGameScreen : Box, AdaptativeWidget
+ map.connect (() => games_box.show ());
+ }
+
+- [GtkChild] private Box games_box;
+- [GtkChild] private Box options_box;
++ [GtkChild] private unowned Box games_box;
++ [GtkChild] private unowned Box options_box;
+
+- [GtkChild] private Label games_label;
+- [GtkChild] private Label options_label;
+- [GtkChild] private Separator options_separator;
++ [GtkChild] private unowned Label games_label;
++ [GtkChild] private unowned Label options_label;
++ [GtkChild] private unowned Separator options_separator;
+
+ private bool phone_size = false;
+ private bool extra_thin = false;
+diff --git a/src/notifications-revealer.vala b/src/notifications-revealer.vala
+index 85e96e9..8668ef2 100644
+--- a/src/notifications-revealer.vala
++++ b/src/notifications-revealer.vala
+@@ -20,7 +20,7 @@ using Gtk;
+ [GtkTemplate (ui = "/org/gnome/Reversi/ui/notifications-revealer.ui")]
+ private class NotificationsRevealer : Revealer, AdaptativeWidget
+ {
+- [GtkChild] private Label notification_label;
++ [GtkChild] private unowned Label notification_label;
+
+ construct
+ {
+diff --git a/src/overlayed-list.vala b/src/overlayed-list.vala
+index 209b044..4ff47f1 100644
+--- a/src/overlayed-list.vala
++++ b/src/overlayed-list.vala
+@@ -20,12 +20,12 @@ using Gtk;
+ [GtkTemplate (ui = "/org/gnome/Reversi/ui/overlayed-list.ui")]
+ private abstract class OverlayedList : Overlay, AdaptativeWidget
+ {
+- [GtkChild] protected ListBox main_list_box;
++ [GtkChild] protected unowned ListBox main_list_box;
+ private StyleContext main_list_box_context;
+ protected GLib.ListStore main_list_store = new GLib.ListStore (typeof (Widget));
+
+- [GtkChild] private ScrolledWindow scrolled;
+- [GtkChild] private Box edit_mode_box;
++ [GtkChild] private unowned ScrolledWindow scrolled;
++ [GtkChild] private unowned Box edit_mode_box;
+
+ /*\
+ * * differed construct
+@@ -45,8 +45,8 @@ private abstract class OverlayedList : Overlay, AdaptativeWidget
+ }
+
+
+- [GtkChild] private ModelButton enter_edit_mode_button;
+- [GtkChild] private ModelButton leave_edit_mode_button;
++ [GtkChild] private unowned ModelButton enter_edit_mode_button;
++ [GtkChild] private unowned ModelButton leave_edit_mode_button;
+ [CCode (notify = false)] public string edit_mode_action_prefix
+ {
+ construct
+diff --git a/src/registry-placeholder.vala b/src/registry-placeholder.vala
+index fdd8283..dc7bbaa 100644
+--- a/src/registry-placeholder.vala
++++ b/src/registry-placeholder.vala
+@@ -20,8 +20,8 @@ using Gtk;
+ [GtkTemplate (ui = "/org/gnome/Reversi/ui/registry-placeholder.ui")]
+ private class RegistryPlaceholder : Grid
+ {
+- [GtkChild] private Label placeholder_label;
+- [GtkChild] private Image placeholder_image;
++ [GtkChild] private unowned Label placeholder_label;
++ [GtkChild] private unowned Image placeholder_image;
+
+ [CCode (notify = false)] public string label { internal construct set { placeholder_label.label = value; }}
+ [CCode (notify = false)] public string icon_name { private get; internal construct; }
+--
+2.31.1
+
diff --git a/games/iagno/README b/games/iagno/README
new file mode 100644
index 0000000000..8f4a0aeeac
--- /dev/null
+++ b/games/iagno/README
@@ -0,0 +1,6 @@
+Iagno is a computer version of the game Reversi, more popularly called
+Othello. Iagno is a two player strategy game similar to Go. The board is
+8- 8 with tiles that are black on one side and white on the other side.
+The object of Iagno is to flip as many of your opponent's tiles to your
+color as possible without your opponent flipping your tiles. This is
+by trapping your opponent's tiles between two tiles of your own color.
diff --git a/games/iagno/doinst.sh b/games/iagno/doinst.sh
new file mode 100644
index 0000000000..b123c0cd8d
--- /dev/null
+++ b/games/iagno/doinst.sh
@@ -0,0 +1,14 @@
+if [ -x /usr/bin/update-desktop-database ]; then
+ /usr/bin/update-desktop-database -q usr/share/applications >/dev/null 2>&1
+fi
+
+if [ -e usr/share/icons/hicolor/icon-theme.cache ]; then
+ if [ -x /usr/bin/gtk-update-icon-cache ]; then
+ /usr/bin/gtk-update-icon-cache usr/share/icons/hicolor >/dev/null 2>&1
+ fi
+fi
+if [ -e usr/share/glib-2.0/schemas ]; then
+ if [ -x /usr/bin/glib-compile-schemas ]; then
+ /usr/bin/glib-compile-schemas usr/share/glib-2.0/schemas >/dev/null 2>&1
+ fi
+fi
diff --git a/games/iagno/iagno.SlackBuild b/games/iagno/iagno.SlackBuild
new file mode 100644
index 0000000000..480f7aa3b2
--- /dev/null
+++ b/games/iagno/iagno.SlackBuild
@@ -0,0 +1,117 @@
+#!/bin/bash
+
+# Slackware build script for iango
+
+# Copyright 2022 Nathaniel Russell
+# All rights reserved.
+#
+# Redistribution and use of this script, with or without modification, is
+# permitted provided that the following conditions are met:
+#
+# 1. Redistributions of this script must retain the above copyright
+# notice, this list of conditions and the following disclaimer.
+#
+# THIS SOFTWARE IS PROVIDED BY THE AUTHOR "AS IS" AND ANY EXPRESS OR IMPLIED
+# WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE IMPLIED WARRANTIES OF
+# MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE ARE DISCLAIMED. IN NO
+# EVENT SHALL THE AUTHOR BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL,
+# SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT LIMITED TO,
+# PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, DATA, OR PROFITS;
+# OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY,
+# WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR
+# OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF THIS SOFTWARE, EVEN IF
+# ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
+
+cd $(dirname $0) ; CWD=$(pwd)
+
+PRGNAM=iagno
+VERSION=${VERSION:-3.38.1}
+BUILD=${BUILD:-1}
+TAG=${TAG:-_SBo}
+PKGTYPE=${PKGTYPE:-tgz}
+
+if [ -z "$ARCH" ]; then
+ case "$( uname -m )" in
+ i?86) ARCH=i586 ;;
+ arm*) ARCH=arm ;;
+ *) ARCH=$( uname -m ) ;;
+ esac
+fi
+
+TMP=${TMP:-/tmp/SBo}
+PKG=$TMP/package-$PRGNAM
+OUTPUT=${OUTPUT:-/tmp}
+
+if [ ! -z "${PRINT_PACKAGE_NAME}" ]; then
+ echo "$PRGNAM-$VERSION-$ARCH-$BUILD$TAG.$PKGTYPE"
+ exit 0
+fi
+
+if [ "$ARCH" = "i586" ]; then
+ SLKCFLAGS="-O2 -march=i586 -mtune=i686"
+ LIBDIRSUFFIX=""
+elif [ "$ARCH" = "i686" ]; then
+ SLKCFLAGS="-O2 -march=i686 -mtune=i686"
+ LIBDIRSUFFIX=""
+elif [ "$ARCH" = "x86_64" ]; then
+ SLKCFLAGS="-O2 -fPIC"
+ LIBDIRSUFFIX="64"
+else
+ SLKCFLAGS="-O2"
+ LIBDIRSUFFIX=""
+fi
+
+set -e
+
+rm -rf $PKG
+mkdir -p $TMP $PKG $OUTPUT
+cd $TMP
+rm -rf $PRGNAM-$VERSION
+tar xvf $CWD/$PRGNAM-$VERSION.tar.xz
+cd $PRGNAM-$VERSION
+cat $CWD/0001-Reference-of-GtkChild-fields-is-handled-by-GtkBuilde.patch | patch -p1
+cat $CWD/0001-Don-t-alter-or-try-to-write-GtkChild-fields.patch | patch -p1
+
+chown -R root:root .
+find -L . \
+ \( -perm 777 -o -perm 775 -o -perm 750 -o -perm 711 -o -perm 555 \
+ -o -perm 511 \) -exec chmod 755 {} \; -o \
+ \( -perm 666 -o -perm 664 -o -perm 640 -o -perm 600 -o -perm 444 \
+ -o -perm 440 -o -perm 400 \) -exec chmod 644 {} \;
+
+mkdir build
+cd build
+ CFLAGS="$SLKCFLAGS" \
+ CXXFLAGS="$SLKCFLAGS" \
+ meson .. \
+ --buildtype=release \
+ --libdir=/usr/lib${LIBDIRSUFFIX} \
+ --localstatedir=/var \
+ --mandir=/usr/man \
+ --prefix=/usr \
+ --sysconfdir=/etc \
+ -Dstrip=true
+ ninja
+ DESTDIR=$PKG ninja install
+cd ..
+
+# Don't ship .la files:
+rm -f $PKG/{,usr/}lib${LIBDIRSUFFIX}/*.la
+
+find $PKG -print0 | xargs -0 file | grep -e "executable" -e "shared object" | grep ELF \
+ | cut -f 1 -d : | xargs strip --strip-unneeded 2> /dev/null || true
+
+find $PKG/usr/man -type f -exec gzip -9 {} \;
+for i in $( find $PKG/usr/man -type l ) ; do ln -s $( readlink $i ).gz $i.gz ; rm $i ; done
+
+mkdir -p $PKG/usr/doc/$PRGNAM-$VERSION
+DOCS="COPYING* NEWS"
+cp -a $DOCS $PKG/usr/doc/$PRGNAM-$VERSION
+cat $CWD/$PRGNAM.SlackBuild > $PKG/usr/doc/$PRGNAM-$VERSION/$PRGNAM.SlackBuild
+
+mkdir -p $PKG/install
+cat $CWD/slack-desc > $PKG/install/slack-desc
+cat $CWD/doinst.sh > $PKG/install/doinst.sh
+
+cd $PKG
+/sbin/makepkg -l y -c n $OUTPUT/$PRGNAM-$VERSION-$ARCH-$BUILD$TAG.$PKGTYPE
diff --git a/games/iagno/iagno.info b/games/iagno/iagno.info
new file mode 100644
index 0000000000..2c539748d2
--- /dev/null
+++ b/games/iagno/iagno.info
@@ -0,0 +1,10 @@
+PRGNAM="iagno"
+VERSION="3.38.1"
+HOMEPAGE="https://wiki.gnome.org/Apps/Iagno"
+DOWNLOAD="https://download.gnome.org/sources/iagno/3.38/iagno-3.38.1.tar.xz"
+MD5SUM="20b96b6f5863224a118994207c19ebd8"
+DOWNLOAD_x86_64=""
+MD5SUM_x86_64=""
+REQUIRES="gsound"
+MAINTAINER="Nathaniel Russell"
+EMAIL="naterussell83@gmail.com"
diff --git a/games/iagno/slack-desc b/games/iagno/slack-desc
new file mode 100644
index 0000000000..b3072abf6d
--- /dev/null
+++ b/games/iagno/slack-desc
@@ -0,0 +1,19 @@
+# HOW TO EDIT THIS FILE:
+# The "handy ruler" below makes it easier to edit a package description. Line
+# up the first '|' above the ':' following the base package name, and the '|' on
+# the right side marks the last column you can put a character in. You must make
+# exactly 11 lines for the formatting to be correct. It's also customary to
+# leave one space after the ':'.
+
+ |-----handy-ruler------------------------------------------------------|
+iagno: iagno (reversi)
+iagno:
+iagno: The goal is to control the most disks on the board.
+iagno: Iagno is a computer version of the game Reversi, more popularly
+iagno: called Othello. Iagno is a two player strategy game similar to Go.
+iagno:
+iagno:
+iagno:
+iagno:
+iagno:
+iagno:
diff --git a/games/icebreaker/README b/games/icebreaker/README
index a75d5cb95e..11a7c5b304 100644
--- a/games/icebreaker/README
+++ b/games/icebreaker/README
@@ -1,4 +1,10 @@
-icebreaker - A Jezzball-like game for Linux, with a penguin theme
+icebreaker (jezzball-like game for Linux, with a penguin theme)
-The binary is installed setgid games: not a serious security risk, but
-something to be aware of, if you're paranoid.
+So, uh, there's a bunch of penguins on an iceberg in Antarctica. You
+have been selected to catch them so they can be shipped to Finland,
+where they are essential to a secret plot for world domination.
+
+Note: if you're upgrading from icebreaker 1.9.x to 2.x, be aware that
+there's no longer a system-wide high score file. Instead, high scores
+are saved in each user's home directory. This also means the binary is
+no longer installed setgid games.
diff --git a/games/icebreaker/doinst.sh b/games/icebreaker/doinst.sh
index 3857649f50..11813c3101 100644
--- a/games/icebreaker/doinst.sh
+++ b/games/icebreaker/doinst.sh
@@ -1,3 +1,9 @@
if [ -x /usr/bin/update-desktop-database ]; then
/usr/bin/update-desktop-database -q usr/share/applications &> /dev/null
fi
+
+if [ -e usr/share/icons/hicolor/icon-theme.cache ]; then
+ if [ -x /usr/bin/gtk-update-icon-cache ]; then
+ /usr/bin/gtk-update-icon-cache usr/share/icons/hicolor >/dev/null 2>&1
+ fi
+fi
diff --git a/games/icebreaker/icebreaker.SlackBuild b/games/icebreaker/icebreaker.SlackBuild
index 622c5c1eb8..c9c939155b 100644
--- a/games/icebreaker/icebreaker.SlackBuild
+++ b/games/icebreaker/icebreaker.SlackBuild
@@ -1,19 +1,31 @@
-#!/bin/sh
+#!/bin/bash
# Slackware build script for icebreaker
-# Written by B. Watson (yalhcru@gmail.com)
+# Written by B. Watson (urchlay@slackware.uk)
# Licensed under the WTFPL. See http://www.wtfpl.net/txt/copying/ for details.
+# 20230107 bkw: Updated for v2.2.1! After 20+ years, the author came
+# back to this game and released a new version.
+
# 20170703 bkw: Updated for v1.9.7, the last beta, with theme support.
# Development on this game stopped in 2002, so there will never be a 2.0
# release. If anyone finds bugs in 1.9.7, let me know.
+# 20211019 bkw: BUILD=3
+# - move high score file to /var/games/icebreaker, to match other
+# games on SBo.
+# - include README.themes in doc dir.
+# - new-style icons.
+
+cd $(dirname $0) ; CWD=$(pwd)
+
PRGNAM=icebreaker
-VERSION=${VERSION:-1.9.7}
-BUILD=${BUILD:-2}
+VERSION=${VERSION:-2.2.1}
+BUILD=${BUILD:-1}
TAG=${TAG:-_SBo}
+PKGTYPE=${PKGTYPE:-tgz}
if [ -z "$ARCH" ]; then
case "$( uname -m )" in
@@ -23,7 +35,11 @@ if [ -z "$ARCH" ]; then
esac
fi
-CWD=$(pwd)
+if [ ! -z "${PRINT_PACKAGE_NAME}" ]; then
+ echo "$PRGNAM-$VERSION-$ARCH-$BUILD$TAG.$PKGTYPE"
+ exit 0
+fi
+
TMP=${TMP:-/tmp/SBo}
PKG=$TMP/package-$PRGNAM
OUTPUT=${OUTPUT:-/tmp}
@@ -48,47 +64,65 @@ rm -rf $PKG
mkdir -p $TMP $PKG $OUTPUT
cd $TMP
rm -rf $PRGNAM-$VERSION
-tar xvf $CWD/$PRGNAM-$VERSION.tgz
+tar xvf $CWD/$PRGNAM-$VERSION.tar.xz
cd $PRGNAM-$VERSION
chown -R root:root .
-find -L . \
- \( -perm 777 -o -perm 775 -o -perm 750 -o -perm 711 -o -perm 555 \
- -o -perm 511 \) -exec chmod 755 {} \; -o \
- \( -perm 666 -o -perm 664 -o -perm 640 -o -perm 600 -o -perm 444 \
- -o -perm 440 -o -perm 400 \) -exec chmod 644 {} \;
+find -L . -perm /111 -a \! -perm 755 -a -exec chmod 755 {} \+ -o \
+ \! -perm /111 -a \! -perm 644 -a -exec chmod 644 {} \+
+
+# 20230107 bkw: on Slackware 15.0, -Werror doesn't hurt anything, but
+# get rid of it anyway for future-proofing.
+sed -i 's,-Werror,,' Makefile
+
+# 20230107 bkw: 2.x has no system-wide high scores (it's per-user only)
+# but the man page hasn't been updated to tell us that.
+sed -i -e 's,$HIGHSCOREDIR,~/.icebreaker/,' \
+ -e 's,system-wide,per-user,' \
+ $PRGNAM.man.in
+
+# 20230107 bkw: need this to allow the game to create the high score
+# file if it doesn't already exist. Also give it sane permissions.
+sed -i 's/O_RDWR/O_RDWR|O_CREAT,0644/' lock.c
make \
- prefix=/usr \
- mandir=/usr/man \
- highscoredir=/var/state/$PRGNAM \
- OPTIMIZE="$SLKCFLAGS"
+ prefix=/usr \
+ mandir=/usr/man \
+ bindir=/usr/games \
+ OPTIMIZE="$SLKCFLAGS"
strip $PRGNAM
-make -j1 install \
- prefix=$PKG/usr \
- mandir=$PKG/usr/man \
- highscoredir=$PKG/var/state/$PRGNAM
-# We prefer the binary to live in /usr/games
-mv $PKG/usr/bin $PKG/usr/games
+make -j1 install \
+ prefix=$PKG/usr \
+ mandir=$PKG/usr/man \
+ bindir=$PKG/usr/games
-sed -i -e "s,/var/lib/games,/var/state/$PRGNAM," $PKG/usr/man/man6/$PRGNAM.6
gzip -9 $PKG/usr/man/man6/$PRGNAM.6
-mkdir -p $PKG/usr/doc/$PRGNAM-$VERSION
-cp ChangeLog LICENSE README TODO $PKG/usr/doc/$PRGNAM-$VERSION
-cat $CWD/$PRGNAM.SlackBuild > $PKG/usr/doc/$PRGNAM-$VERSION/$PRGNAM.SlackBuild
+PKGDOC=$PKG/usr/doc/$PRGNAM-$VERSION
+mkdir -p $PKGDOC
+cp -a ChangeLog LICENSE README README.themes TODO $PKGDOC
+cat $CWD/$PRGNAM.SlackBuild > $PKGDOC/$PRGNAM.SlackBuild
+# 20230107 bkw: 2.2.1 source includes a .desktop file, but it has issues
+# (e.g. no Categories), so keep using our own.
mkdir -p $PKG/usr/share/applications
-cp $CWD/$PRGNAM.desktop $PKG/usr/share/applications
+cat $CWD/$PRGNAM.desktop > $PKG/usr/share/applications/$PRGNAM.desktop
+
+for i in 16 22 32 48 64 96 128; do
+ px=$( basename $i | cut -d. -f1 )
+ size=${px}x${px}
+ dir=$PKG/usr/share/icons/hicolor/$size/apps
+ mkdir -p $dir
+ convert -resize $size ${PRGNAM}_128.png $dir/$PRGNAM.png
+done
mkdir -p $PKG/usr/share/pixmaps
-convert ${PRGNAM}_48.bmp $PRGNAM.xpm
-cp $PRGNAM.xpm $PKG/usr/share/pixmaps
+ln -s ../icons/hicolor/48x48/apps/$PRGNAM.png $PKG/usr/share/pixmaps/$PRGNAM.png
mkdir -p $PKG/install
cat $CWD/slack-desc > $PKG/install/slack-desc
cat $CWD/doinst.sh > $PKG/install/doinst.sh
cd $PKG
-/sbin/makepkg -l y -c n $OUTPUT/$PRGNAM-$VERSION-$ARCH-$BUILD$TAG.${PKGTYPE:-tgz}
+/sbin/makepkg -l y -c n $OUTPUT/$PRGNAM-$VERSION-$ARCH-$BUILD$TAG.$PKGTYPE
diff --git a/games/icebreaker/icebreaker.desktop b/games/icebreaker/icebreaker.desktop
index aea4578548..116f82fd11 100644
--- a/games/icebreaker/icebreaker.desktop
+++ b/games/icebreaker/icebreaker.desktop
@@ -1,7 +1,9 @@
[Desktop Entry]
Name=IceBreaker
-Exec=icebreaker
Type=Application
+Comment=addictive action-puzzle game involving bouncing penguins
+Exec=/usr/games/icebreaker
Icon=icebreaker
-GenericName=IceBreaker
+Terminal=false
+Keywords=puzzle;game;penguins;ice;
Categories=Game;ArcadeGame;
diff --git a/games/icebreaker/icebreaker.info b/games/icebreaker/icebreaker.info
index 8a32eda35a..2899fdee0a 100644
--- a/games/icebreaker/icebreaker.info
+++ b/games/icebreaker/icebreaker.info
@@ -1,10 +1,10 @@
PRGNAM="icebreaker"
-VERSION="1.9.7"
+VERSION="2.2.1"
HOMEPAGE="https://mattdm.org/icebreaker/"
-DOWNLOAD="https://mattdm.org/icebreaker/1.9.x/icebreaker-1.9.7.tgz"
-MD5SUM="3568ff7e516522182ae9176045d1d125"
+DOWNLOAD="https://mattdm.org/icebreaker/2.2.x/icebreaker-2.2.1.tar.xz"
+MD5SUM="f920c6440ca47b254a4c18b4740dd526"
DOWNLOAD_x86_64=""
MD5SUM_x86_64=""
REQUIRES=""
MAINTAINER="B. Watson"
-EMAIL="yalhcru@gmail.com"
+EMAIL="urchlay@slackware.uk"
diff --git a/games/icebreaker/slack-desc b/games/icebreaker/slack-desc
index b6586a9945..d58d2ed873 100644
--- a/games/icebreaker/slack-desc
+++ b/games/icebreaker/slack-desc
@@ -6,7 +6,7 @@
# customary to leave one space after the ':' except on otherwise blank lines.
|-----handy-ruler------------------------------------------------------|
-icebreaker: icebreaker (A Jezzball-like game for Linux, with a penguin theme)
+icebreaker: icebreaker (jezzball-like game for Linux, with a penguin theme)
icebreaker:
icebreaker: So, uh, there's a bunch of penguins on an iceberg in Antarctica. You
icebreaker: have been selected to catch them so they can be shipped to Finland,
diff --git a/games/ifm/ifm.SlackBuild b/games/ifm/ifm.SlackBuild
index 9d83cd7871..32c609df33 100644
--- a/games/ifm/ifm.SlackBuild
+++ b/games/ifm/ifm.SlackBuild
@@ -1,29 +1,41 @@
-#!/bin/sh
+#!/bin/bash
# Slackware build script for <appname>
# Copyright 2015 Andrew Lobanov
+# 20220220 bkw: Modified by SlackBuilds.org, BUILD=2:
+# - fix 15.0 build.
+# - binaries in /usr/games, data in /usr/share/games/ifm.
+# - man page in section 6.
+
+cd $(dirname $0) ; CWD=$(pwd)
+
PRGNAM=ifm
VERSION=${VERSION:-5.4}
-BUILD=${BUILD:-1}
+BUILD=${BUILD:-2}
TAG=${TAG:-_SBo}
+PKGTYPE=${PKGTYPE:-tgz}
if [ -z "$ARCH" ]; then
case "$( uname -m )" in
- i?86) ARCH=i486 ;;
+ i?86) ARCH=i586 ;;
arm*) ARCH=arm ;;
*) ARCH=$( uname -m ) ;;
esac
fi
-CWD=$(pwd)
+if [ ! -z "${PRINT_PACKAGE_NAME}" ]; then
+ echo "$PRGNAM-$VERSION-$ARCH-$BUILD$TAG.$PKGTYPE"
+ exit 0
+fi
+
TMP=${TMP:-/tmp/SBo}
PKG=$TMP/package-$PRGNAM
OUTPUT=${OUTPUT:-/tmp}
-if [ "$ARCH" = "i486" ]; then
- SLKCFLAGS="-O2 -march=i486 -mtune=i686"
+if [ "$ARCH" = "i586" ]; then
+ SLKCFLAGS="-O2 -march=i586 -mtune=i686"
LIBDIRSUFFIX=""
elif [ "$ARCH" = "i686" ]; then
SLKCFLAGS="-O2 -march=i686 -mtune=i686"
@@ -47,15 +59,24 @@ cd $PRGNAM-$VERSION
chown -R root:root .
find -L . \
\( -perm 777 -o -perm 775 -o -perm 750 -o -perm 711 -o -perm 555 \
- -o -perm 511 \) -exec chmod 755 {} \; -o \
+ -o -perm 511 \) -exec chmod 755 {} \+ -o \
\( -perm 666 -o -perm 664 -o -perm 640 -o -perm 600 -o -perm 444 \
- -o -perm 440 -o -perm 400 \) -exec chmod 644 {} \;
+ -o -perm 440 -o -perm 400 \) -exec chmod 644 {} \+
+
+# 20220220 bkw: note: for some reason, make install or install-strip
+# will update the timestamp on the real /usr directory. no harm done
+# really, but it's scary. Tried 'autoreconf -if' to rebuild the
+# configure script, but it didn't help.
+
+SLKCFLAGS+=" -fcommon"
CFLAGS="$SLKCFLAGS" \
CXXFLAGS="$SLKCFLAGS" \
./configure \
--prefix=/usr \
--libdir=/usr/lib${LIBDIRSUFFIX} \
+ --bindir=/usr/games \
+ --datarootdir=/usr/share/games \
--sysconfdir=/etc \
--localstatedir=/var \
--mandir=/usr/man \
@@ -63,13 +84,13 @@ CXXFLAGS="$SLKCFLAGS" \
--build=$ARCH-slackware-linux
make
-make install DESTDIR=$PKG docdir=$PKG/usr/doc/$PRGNAM-$VERSION
-
-find $PKG -print0 | xargs -0 file | grep -e "executable" -e "shared object" | grep ELF \
- | cut -f 1 -d : | xargs strip --strip-unneeded 2> /dev/null || true
+make install-strip DESTDIR=$PKG docdir=$PKG/usr/doc/$PRGNAM-$VERSION
-find $PKG/usr/man -type f -exec gzip -9 {} \;
-for i in $( find $PKG/usr/man -type l ) ; do ln -s $( readlink $i ).gz $i.gz ; rm $i ; done
+mkdir -p $PKG/usr/man/man6
+sed -e '/^\.TH/s,"1","6",' < $PKG/usr/man/man1/$PRGNAM.1 \
+ -e "/^\\.IP/s,/usr/local/doc/ifm,/usr/doc/$PRGNAM-$VERSION/ifm," \
+ | gzip -9c > $PKG/usr/man/man6/$PRGNAM.6.gz
+rm -rf $PKG/usr/man/man1
mkdir -p $PKG/usr/doc/$PRGNAM-$VERSION
cat $CWD/$PRGNAM.SlackBuild > $PKG/usr/doc/$PRGNAM-$VERSION/$PRGNAM.SlackBuild
@@ -78,4 +99,4 @@ mkdir -p $PKG/install
cat $CWD/slack-desc > $PKG/install/slack-desc
cd $PKG
-/sbin/makepkg -l y -c n $OUTPUT/$PRGNAM-$VERSION-$ARCH-$BUILD$TAG.${PKGTYPE:-tgz}
+/sbin/makepkg -l y -c n $OUTPUT/$PRGNAM-$VERSION-$ARCH-$BUILD$TAG.$PKGTYPE
diff --git a/games/img2xterm/README b/games/img2xterm/README
index 04e55784cb..fd49dacaae 100644
--- a/games/img2xterm/README
+++ b/games/img2xterm/README
@@ -9,11 +9,10 @@ No checking is done on the terminal size. Each character cell in the
terminal gets a 2x2 block of pixels, so if your terminal is 80x25, the
largest image it can display is 160x50 pixels.
-This is known to work with xterm, konsole, and xfce4-terminal
-from Slackware 14.2; and rxvt-unicode (urxvt) and st from
-SlackBuilds.org. Plain rxvt doesn't seem to support 256-color mode,
-so it won't work there. Sadly, it doesn't work in the Linux console
-either.
+This is known to work with xterm, konsole, rxvt-unicode and
+xfce4-terminal from Slackware 14.2; and st from SlackBuilds.org. Plain
+rxvt doesn't seem to support 256-color mode, so it won't work there.
+Sadly, it doesn't work in the Linux console either.
The package includes the GIMP palette mentioned in the README.md, and
an RMS cowfile. Try: cowsay -f rmshd "Hello"
diff --git a/games/img2xterm/img2xterm.SlackBuild b/games/img2xterm/img2xterm.SlackBuild
index 21345282bd..2af35db25d 100644
--- a/games/img2xterm/img2xterm.SlackBuild
+++ b/games/img2xterm/img2xterm.SlackBuild
@@ -1,15 +1,18 @@
-#!/bin/sh
+#!/bin/bash
# Slackware build script for img2xterm
-# Written by B. Watson (yalhcru@gmail.com)
+# Written by B. Watson (urchlay@slackware.uk)
# Licensed under the WTFPL. See http://www.wtfpl.net/txt/copying/ for details.
+cd $(dirname $0) ; CWD=$(pwd)
+
PRGNAM=img2xterm
VERSION=${VERSION:-1.0.0}
BUILD=${BUILD:-1}
TAG=${TAG:-_SBo}
+PKGTYPE=${PKGTYPE:-tgz}
if [ -z "$ARCH" ]; then
case "$( uname -m )" in
@@ -19,7 +22,11 @@ if [ -z "$ARCH" ]; then
esac
fi
-CWD=$(pwd)
+if [ ! -z "${PRINT_PACKAGE_NAME}" ]; then
+ echo "$PRGNAM-$VERSION-$ARCH-$BUILD$TAG.$PKGTYPE"
+ exit 0
+fi
+
TMP=${TMP:-/tmp/SBo}
PKG=$TMP/package-$PRGNAM
OUTPUT=${OUTPUT:-/tmp}
@@ -50,6 +57,9 @@ chown -R root:root .
find -L . -perm /111 -a \! -perm 755 -a -exec chmod 755 {} \+ -o \
\! -perm /111 -a \! -perm 644 -a -exec chmod 644 {} \+
+# Fix a header path for imagemagick >= 7.x
+sed -i "s|wand/MagickWand|MagickWand/MagickWand|" img2xterm.c
+
# Hardcoded stuffs. The LN line turns the absolute symlinks into
# relative, so we don't end up with links to $PKG.
sed -i \
@@ -65,7 +75,7 @@ make install PREFIX=$PKG/usr
# Include the stuff from extra/. To do this, we have to find out the
# version of gimp to install the palette file for.
case "${GIMPVER:-auto}" in
- auto) GIMPVER=$(/bin/ls -d /usr/share/gimp/[0-9]*/ | sort -V | cut -d/ -f5) ;;
+ auto) GIMPVER=$(/bin/ls -d /usr/share/gimp/[0-9]*/ | sort -V | head -1 | cut -d/ -f5) ;;
*) GIMPVER=$(echo $GIMPVER | cut -d. -f1,2) ;;
esac
@@ -84,4 +94,4 @@ mkdir -p $PKG/install
cat $CWD/slack-desc > $PKG/install/slack-desc
cd $PKG
-/sbin/makepkg -l y -c n $OUTPUT/$PRGNAM-$VERSION-$ARCH-$BUILD$TAG.${PKGTYPE:-tgz}
+/sbin/makepkg -l y -c n $OUTPUT/$PRGNAM-$VERSION-$ARCH-$BUILD$TAG.$PKGTYPE
diff --git a/games/img2xterm/img2xterm.info b/games/img2xterm/img2xterm.info
index be681cf890..82d4f42ba0 100644
--- a/games/img2xterm/img2xterm.info
+++ b/games/img2xterm/img2xterm.info
@@ -7,4 +7,4 @@ DOWNLOAD_x86_64=""
MD5SUM_x86_64=""
REQUIRES=""
MAINTAINER="B. Watson"
-EMAIL="yalhcru@gmail.com"
+EMAIL="urchlay@slackware.uk"
diff --git a/games/innoextract/innoextract.SlackBuild b/games/innoextract/innoextract.SlackBuild
index 115e82dc41..6c57defcf6 100644
--- a/games/innoextract/innoextract.SlackBuild
+++ b/games/innoextract/innoextract.SlackBuild
@@ -1,8 +1,9 @@
-#!/bin/sh
+#!/bin/bash
# Slackware build script for innoextract
# Copyright 2013 Dugan Chen Canada
+# Copyright 2020-2021 Ruoh-Shoei LIN
# All rights reserved.
#
# Redistribution and use of this script, with or without modification, is
@@ -22,10 +23,13 @@
# OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF THIS SOFTWARE, EVEN IF
# ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
+cd $(dirname $0) ; CWD=$(pwd)
+
PRGNAM=innoextract
-VERSION=${VERSION:-1.7}
+VERSION=${VERSION:-1.9}
BUILD=${BUILD:-1}
TAG=${TAG:-_SBo}
+PKGTYPE=${PKGTYPE:-tgz}
if [ -z "$ARCH" ]; then
case "$( uname -m )" in
@@ -35,7 +39,14 @@ if [ -z "$ARCH" ]; then
esac
fi
-CWD=$(pwd)
+# If the variable PRINT_PACKAGE_NAME is set, then this script will report what
+# the name of the created package would be, and then exit. This information
+# could be useful to other scripts.
+if [ ! -z "${PRINT_PACKAGE_NAME}" ]; then
+ echo "$PRGNAM-$VERSION-$ARCH-$BUILD$TAG.$PKGTYPE"
+ exit 0
+fi
+
TMP=${TMP:-/tmp/SBo}
PKG=$TMP/package-$PRGNAM
OUTPUT=${OUTPUT:-/tmp}
@@ -75,8 +86,8 @@ cd build
-DCMAKE_C_FLAGS:STRING="$SLKCFLAGS" \
-DCMAKE_CXX_FLAGS:STRING="$SLKCFLAGS" \
-DCMAKE_INSTALL_PREFIX=/usr \
- -DCMAKE_BUILD_TYPE=Release .. \
- -DCMAKE_INSTALL_MANDIR=man
+ -DCMAKE_BUILD_TYPE=Release \
+ -DCMAKE_INSTALL_MANDIR=man ..
make
make install DESTDIR=$PKG
cd ..
@@ -89,7 +100,7 @@ for i in $( find $PKG/usr/man -type l ) ; do ln -s $( readlink $i ).gz $i.gz ; r
mkdir -p $PKG/usr/doc/$PRGNAM-$VERSION
cp -a \
- CHANGELOG LICENSE README.md VERSION doc/ \
+ CHANGELOG LICENSE README.md VERSION CONTRIBUTING.md \
$PKG/usr/doc/$PRGNAM-$VERSION
cat $CWD/$PRGNAM.SlackBuild > $PKG/usr/doc/$PRGNAM-$VERSION/$PRGNAM.SlackBuild
@@ -97,4 +108,4 @@ mkdir -p $PKG/install
cat $CWD/slack-desc > $PKG/install/slack-desc
cd $PKG
-/sbin/makepkg -l y -c n $OUTPUT/$PRGNAM-$VERSION-$ARCH-$BUILD$TAG.${PKGTYPE:-tgz}
+/sbin/makepkg -l y -c n $OUTPUT/$PRGNAM-$VERSION-$ARCH-$BUILD$TAG.$PKGTYPE
diff --git a/games/innoextract/innoextract.info b/games/innoextract/innoextract.info
index bdc22333a0..acde52d6ed 100644
--- a/games/innoextract/innoextract.info
+++ b/games/innoextract/innoextract.info
@@ -1,10 +1,10 @@
PRGNAM="innoextract"
-VERSION="1.7"
-HOMEPAGE="http://constexpr.org/innoextract/"
-DOWNLOAD="http://constexpr.org/innoextract/files/innoextract-1.7.tar.gz"
-MD5SUM="4c6fb595d42c7e411aae992472888be6"
+VERSION="1.9"
+HOMEPAGE="https://constexpr.org/innoextract/"
+DOWNLOAD="https://constexpr.org/innoextract/files/innoextract-1.9.tar.gz"
+MD5SUM="964f39bb3f8fd2313629e69ffd3dab9f"
DOWNLOAD_x86_64=""
MD5SUM_x86_64=""
REQUIRES=""
MAINTAINER="Ruoh-Shoei Lin"
-EMAIL="lin.ruohshoei@gmail.com"
+EMAIL="lin.ruohshoei+sbo at gmail.com"
diff --git a/games/instead/instead.SlackBuild b/games/instead/instead.SlackBuild
index 60edb5e630..815748ffe0 100644
--- a/games/instead/instead.SlackBuild
+++ b/games/instead/instead.SlackBuild
@@ -1,12 +1,15 @@
-#!/bin/sh
+#!/bin/bash
# Slackware build script for INSTEAD
# Written by Andrew Lobanov <spline @ rooker dot ru>
+cd $(dirname $0) ; CWD=$(pwd)
+
PRGNAM=instead
-VERSION=${VERSION:-3.3.2}
+VERSION=${VERSION:-3.5.0}
BUILD=${BUILD:-1}
TAG=${TAG:-_SBo}
+PKGTYPE=${PKGTYPE:-tgz}
if [ -z "$ARCH" ]; then
case "$( uname -m )" in
@@ -16,7 +19,14 @@ if [ -z "$ARCH" ]; then
esac
fi
-CWD=$(pwd)
+# If the variable PRINT_PACKAGE_NAME is set, then this script will report what
+# the name of the created package would be, and then exit. This information
+# could be useful to other scripts.
+if [ ! -z "${PRINT_PACKAGE_NAME}" ]; then
+ echo "$PRGNAM-$VERSION-$ARCH-$BUILD$TAG.$PKGTYPE"
+ exit 0
+fi
+
TMP=${TMP:-/tmp/SBo}
PKG=$TMP/package-$PRGNAM
OUTPUT=${OUTPUT:-/tmp}
@@ -85,4 +95,4 @@ cat $CWD/slack-desc > $PKG/install/slack-desc
cat $CWD/doinst.sh > $PKG/install/doinst.sh
cd $PKG
-/sbin/makepkg -l y -c n $OUTPUT/$PRGNAM-$VERSION-$ARCH-$BUILD$TAG.${PKGTYPE:-tgz}
+/sbin/makepkg -l y -c n $OUTPUT/$PRGNAM-$VERSION-$ARCH-$BUILD$TAG.$PKGTYPE
diff --git a/games/instead/instead.info b/games/instead/instead.info
index a32b86adce..a5ad990a24 100644
--- a/games/instead/instead.info
+++ b/games/instead/instead.info
@@ -1,10 +1,10 @@
PRGNAM="instead"
-VERSION="3.3.2"
+VERSION="3.5.0"
HOMEPAGE="https://instead-hub.github.io/en/"
-DOWNLOAD="https://github.com/instead-hub/instead/releases/download/3.3.2/instead_3.3.2.tar.gz"
-MD5SUM="c0d764e9766b6bd63e422e0c07bdc022"
+DOWNLOAD="https://github.com/instead-hub/instead/releases/download/3.5.0/instead_3.5.0.tar.gz"
+MD5SUM="b2c3c01f515d541318fbab54572f0479"
DOWNLOAD_x86_64=""
MD5SUM_x86_64=""
-REQUIRES="luajit SDL2_mixer SDL2_image SDL2_ttf"
+REQUIRES="luajit"
MAINTAINER="Andrew Lobanov"
EMAIL="spline1986@gmail.com"
diff --git a/games/invasion3d/invasion3d.SlackBuild b/games/invasion3d/invasion3d.SlackBuild
index 26387d01de..13654daf14 100644
--- a/games/invasion3d/invasion3d.SlackBuild
+++ b/games/invasion3d/invasion3d.SlackBuild
@@ -1,4 +1,4 @@
-#!/bin/sh
+#!/bin/bash
# Slackware build script for invasion3d
#
# Copyright 2017 Tim Dickson, Scotland,UK
@@ -20,10 +20,13 @@
# OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF THIS SOFTWARE, EVEN IF
# ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
+cd $(dirname $0) ; CWD=$(pwd)
+
PRGNAM=invasion3d
VERSION=${VERSION:-1.0.4b}
BUILD=${BUILD:-1}
TAG=${TAG:-_SBo}
+PKGTYPE=${PKGTYPE:-tgz}
if [ -z "$ARCH" ]; then
case "$( uname -m )" in
@@ -34,7 +37,14 @@ if [ -z "$ARCH" ]; then
*) ARCH=$( uname -m ) ;;
esac
fi
-CWD=$(pwd)
+# If the variable PRINT_PACKAGE_NAME is set, then this script will report what
+# the name of the created package would be, and then exit. This information
+# could be useful to other scripts.
+if [ ! -z "${PRINT_PACKAGE_NAME}" ]; then
+ echo "$PRGNAM-$VERSION-$ARCH-$BUILD$TAG.$PKGTYPE"
+ exit 0
+fi
+
TMP=${TMP:-/tmp/SBo}
PKG=$TMP/package-$PRGNAM
OUTPUT=${OUTPUT:-/tmp}
@@ -84,4 +94,4 @@ cat $CWD/slack-desc > $PKG/install/slack-desc
cat $CWD/doinst.sh > $PKG/install/doinst.sh
cd $PKG
-/sbin/makepkg -l y -c n $OUTPUT/$PRGNAM-$VERSION-$ARCH-$BUILD$TAG.${PKGTYPE:-tgz}
+/sbin/makepkg -l y -c n $OUTPUT/$PRGNAM-$VERSION-$ARCH-$BUILD$TAG.$PKGTYPE
diff --git a/games/ioquake3/ioquake3.SlackBuild b/games/ioquake3/ioquake3.SlackBuild
index 843784f784..d9f4c75c51 100644
--- a/games/ioquake3/ioquake3.SlackBuild
+++ b/games/ioquake3/ioquake3.SlackBuild
@@ -1,4 +1,4 @@
-#!/bin/sh
+#!/bin/bash
# Slackware build script for ioquake3
@@ -22,46 +22,50 @@
# OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF THIS SOFTWARE, EVEN IF
# ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
+cd $(dirname $0) ; CWD=$(pwd)
+
PRGNAM=ioquake3
-VERSION=${VERSION:-r20200211}
+VERSION=${VERSION:-1.36_70d07d9}
BUILD=${BUILD:-1}
TAG=${TAG:-_SBo}
+PKGTYPE=${PKGTYPE:-tgz}
-# Setting the arch here overrides the Makefiles
-# arch setting which causes the build to fail
-# on 32bit machines, so we change this to BARCH
-# here and let the Makefile set the ARCH.
if [ -z "$ARCH" ]; then
case "$( uname -m )" in
- i?86) export BARCH=i586 ;;
- arm*) export BARCH=arm ;;
- *) export BARCH=$( uname -m ) ;;
+ i?86) export ARCH=i586 ;;
+ arm*) export ARCH=arm ;;
+ *) export ARCH=$( uname -m ) ;;
esac
-else
- BARCH="$ARCH"
fi
-CWD=$(pwd)
+# If the variable PRINT_PACKAGE_NAME is set, then this script will report what
+# the name of the created package would be, and then exit. This information
+# could be useful to other scripts.
+if [ ! -z "${PRINT_PACKAGE_NAME}" ]; then
+ echo "$PRGNAM-$VERSION-$ARCH-$BUILD$TAG.$PKGTYPE"
+ exit 0
+fi
+
TMP=${TMP:-/tmp/SBo}
PKG=$TMP/package-$PRGNAM
OUTPUT=${OUTPUT:-/tmp}
-if [ "$BARCH" = "i586" ]; then
+if [ "$ARCH" = "i586" ]; then
SLKCFLAGS="-O2 -march=i586 -mtune=i686"
LIBDIRSUFFIX=""
- ARCH="x86"
-elif [ "$BARCH" = "i686" ]; then
+ BARCH="x86"
+elif [ "$ARCH" = "i686" ]; then
SLKCFLAGS="-O2 -march=i686 -mtune=i686"
LIBDIRSUFFIX=""
- ARCH="x86"
-elif [ "$BARCH" = "x86_64" ]; then
+ BARCH="x86"
+elif [ "$ARCH" = "x86_64" ]; then
SLKCFLAGS="-O2 -fPIC"
LIBDIRSUFFIX="64"
- ARCH="x86_64"
+ BARCH="x86_64"
else
SLKCFLAGS="-O2"
LIBDIRSUFFIX=""
- ARCH="$BARCH"
+ BARCH="$ARCH"
fi
set -e
@@ -82,7 +86,7 @@ find -L . \
make \
release \
copyfiles \
- ARCH="$ARCH" \
+ ARCH="$BARCH" \
COPYDIR="$PKG"/usr/share/games/quake3 \
CFLAGS="$SLKCFLAGS" \
USE_CODEC_VORBIS=1 \
@@ -106,8 +110,7 @@ find $PKG -print0 | xargs -0 file | grep -e "executable" -e "shared object" | gr
| cut -f 1 -d : | xargs strip --strip-unneeded 2> /dev/null || true
# update quake3 files to newest point release (1.32b)
-chmod +x $CWD/linuxq3apoint-1.32b-3.x86.run
-$CWD/linuxq3apoint-1.32b-3.x86.run --tar xf
+sh $CWD/linuxq3apoint-1.32b-3.x86.run --tar xf
install -m 644 baseq3/*.pk3 $PKG/usr/share/games/quake3/baseq3
install -m 644 missionpack/*.pk3 $PKG/usr/share/games/quake3/missionpack
@@ -130,4 +133,4 @@ cat $CWD/slack-desc > $PKG/install/slack-desc
cat $CWD/doinst.sh > $PKG/install/doinst.sh
cd $PKG
-/sbin/makepkg -l y -c n $OUTPUT/$PRGNAM-$VERSION-$BARCH-$BUILD$TAG.${PKGTYPE:-tgz}
+/sbin/makepkg -l y -c n $OUTPUT/$PRGNAM-$VERSION-$ARCH-$BUILD$TAG.$PKGTYPE
diff --git a/games/ioquake3/ioquake3.info b/games/ioquake3/ioquake3.info
index cfbc46e762..34a1fd1a0a 100644
--- a/games/ioquake3/ioquake3.info
+++ b/games/ioquake3/ioquake3.info
@@ -1,12 +1,12 @@
PRGNAM="ioquake3"
-VERSION="r20200211"
+VERSION="1.36_70d07d9"
HOMEPAGE="https://ioquake3.org/"
-DOWNLOAD="https://www.dropbox.com/s/1pwzisj5rsexn7d/ioquake3-r20200211.tar.gz \
+DOWNLOAD="https://www.dropbox.com/s/8mq7iaq2anrofd5/ioquake3-1.36_70d07d9.tar.gz \
http://ftp.gwdg.de/pub/misc/ftp.idsoftware.com/idstuff/quake3/linux/linuxq3apoint-1.32b-3.x86.run"
-MD5SUM="3d3ba4910adb990432f414df6fff7e43 \
+MD5SUM="211357efe03602500bb6568f28a2bb54 \
c71fdddccb20e8fc393d846e9c61d685"
DOWNLOAD_x86_64=""
MD5SUM_x86_64=""
-REQUIRES="OpenAL SDL2"
+REQUIRES=""
MAINTAINER="M.Dinslage"
EMAIL="daedra1980@gmail.com"
diff --git a/games/iortcw/iortcw.SlackBuild b/games/iortcw/iortcw.SlackBuild
index 4f17263a70..f75944464b 100644
--- a/games/iortcw/iortcw.SlackBuild
+++ b/games/iortcw/iortcw.SlackBuild
@@ -1,4 +1,4 @@
-#!/bin/sh
+#!/bin/bash
# Slackware build script for iortcw
@@ -22,10 +22,13 @@
# OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF THIS SOFTWARE, EVEN IF
# ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
+cd $(dirname $0) ; CWD=$(pwd)
+
PRGNAM=iortcw
VERSION=${VERSION:-1.51c}
BUILD=${BUILD:-1}
TAG=${TAG:-_SBo}
+PKGTYPE=${PKGTYPE:-tgz}
INSTALL_COMMON_DATA=${INSTALL_COMMON_DATA:-yes}
@@ -58,7 +61,14 @@ if [ -z "$ARCH" ]; then
esac
fi
-CWD=$(pwd)
+# If the variable PRINT_PACKAGE_NAME is set, then this script will report what
+# the name of the created package would be, and then exit. This information
+# could be useful to other scripts.
+if [ ! -z "${PRINT_PACKAGE_NAME}" ]; then
+ echo "$PRGNAM-$VERSION-$ARCH-$BUILD$TAG.$PKGTYPE"
+ exit 0
+fi
+
TMP=${TMP:-/tmp/SBo}
PKG=$TMP/package-$PRGNAM
OUTPUT=${OUTPUT:-/tmp}
@@ -303,4 +313,4 @@ cat $CWD/slack-desc > $PKG/install/slack-desc
cat $CWD/doinst.sh > $PKG/install/doinst.sh
cd $PKG
-/sbin/makepkg -l y -c n $OUTPUT/$PRGNAM-$VERSION-$ARCH-$BUILD$TAG.${PKGTYPE:-tgz}
+/sbin/makepkg -l y -c n $OUTPUT/$PRGNAM-$VERSION-$ARCH-$BUILD$TAG.$PKGTYPE
diff --git a/games/iortcw/iortcw.info b/games/iortcw/iortcw.info
index 1ca484e207..ae18022690 100644
--- a/games/iortcw/iortcw.info
+++ b/games/iortcw/iortcw.info
@@ -15,6 +15,6 @@ MD5SUM="2415c65c3dcc91e22dfe6fc54e90a48c \
23d82460f778b1aa47ee26f60b11f404"
DOWNLOAD_x86_64=""
MD5SUM_x86_64=""
-REQUIRES="OpenAL SDL2 opusfile"
+REQUIRES=""
MAINTAINER="Sébastien Ballet"
EMAIL="slacker6896@gmail.com"
diff --git a/games/jackhammer/README b/games/jackhammer/README
deleted file mode 100644
index 76331c99a2..0000000000
--- a/games/jackhammer/README
+++ /dev/null
@@ -1,9 +0,0 @@
-Jackhammer is a brand new level editor for games with a quake-style
-BSP architecture. The aim is to develop a convenient cross-platform
-tool capable of incorporating the best features of existing editors,
-such as Valve Hammer Editor, Q3Radiant and others. Despite Quake and
-Half-Life having been released a long time ago, the large community have
-arisen around, still developing mods and games on their bases. However
-the existing editors suffer from fundamental disadvantages their users
-are well familiar with. Jackhammer does aspire to be the universal level
-design tool for classic games.
diff --git a/games/jackhammer/doinst.sh b/games/jackhammer/doinst.sh
deleted file mode 100644
index 6dca820c05..0000000000
--- a/games/jackhammer/doinst.sh
+++ /dev/null
@@ -1,18 +0,0 @@
-# Based on qstat's "doinst.sh" by David Somero
-# Handle configuration files
-config() {
- NEW="$1"
- OLD="`dirname $NEW`/`basename $NEW .new`"
- # If there's no config file by that name, mv it over:
- if [ ! -r $OLD ]; then
- mv $NEW $OLD
- elif [ "`cat $OLD | md5sum`" = "`cat $NEW | md5sum`" ]; then # toss the redundant copy
- rm $NEW
- fi
- # Otherwise, we leave the .new copy for the admin to consider...
-}
-# List of configuration files (they should end in .new)
-
-config opt/Jackhammer/VDKGameCfg.ini.new
-config opt/Jackhammer/VDKRunCfg.ini.new
-config opt/Jackhammer/VDKSettings.ini.new
diff --git a/games/jackhammer/jackhammer b/games/jackhammer/jackhammer
deleted file mode 100644
index 1006f4ffc4..0000000000
--- a/games/jackhammer/jackhammer
+++ /dev/null
@@ -1,4 +0,0 @@
- #!/bin/bash
-
-cd /opt/Jackhammer
-./jackhammer.sh
diff --git a/games/jackhammer/jackhammer.SlackBuild b/games/jackhammer/jackhammer.SlackBuild
deleted file mode 100644
index f4aa1a621c..0000000000
--- a/games/jackhammer/jackhammer.SlackBuild
+++ /dev/null
@@ -1,99 +0,0 @@
-#!/bin/sh
-
-# Slackware build script for Jackhammer
-
-# Copyright 2015 Gethyn ThomasQuail <gethyn@bloodbathsoftworks.com>
-# All rights reserved.
-#
-# Based on:
-# TeamSpeak3 SlackBuild by Willy Sudiarto Raharjo <willysr@slackbuilds.org>
-#
-# Redistribution and use of this script, with or without modification, is
-# permitted provided that the following conditions are met:
-#
-# 1. Redistributions of this script must retain the above copyright
-# notice, this list of conditions and the following disclaimer.
-#
-# THIS SOFTWARE IS PROVIDED BY THE AUTHOR "AS IS" AND ANY EXPRESS OR IMPLIED
-# WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE IMPLIED WARRANTIES OF
-# MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE ARE DISCLAIMED. IN NO
-# EVENT SHALL THE AUTHOR BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL,
-# SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT LIMITED TO,
-# PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, DATA, OR PROFITS;
-# OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY,
-# WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR
-# OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF THIS SOFTWARE, EVEN IF
-# ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
-
-PRGNAM=jackhammer
-VERSION=${VERSION:-11855}
-BUILD=${BUILD:-1}
-TAG=${TAG:-_SBo}
-JDIR=opt/Jackhammer
-
-if [ -z "$ARCH" ]; then
- case "$( uname -m )" in
- i?86) ARCH=i486 ;;
- arm*) ARCH=arm ;;
- *) ARCH=$( uname -m ) ;;
- esac
-fi
-
-CWD=$(pwd)
-TMP=${TMP:-/tmp/SBo}
-PKG=$TMP/package-$PRGNAM
-OUTPUT=${OUTPUT:-/tmp}
-
-if [ "$ARCH" = "x86_64" ]; then
- JARCH="x64"
-else
- JARCH="x86"
-fi
-
-set -e
-
-rm -rf $PKG
-mkdir -p $TMP $PKG $OUTPUT
-cd $TMP
-mkdir -p $PKG/opt
-chmod +x $CWD/"$PRGNAM"_"$VERSION"_linux_"$JARCH".run
-$CWD/"$PRGNAM"_"$VERSION"_linux_"$JARCH".run --noexec --target $PKG/$JDIR
-cd $PKG/$JDIR
-chown -R root:root .
-find -L . \
- \( -perm 777 -o -perm 775 -o -perm 750 -o -perm 711 -o -perm 555 \
- -o -perm 511 \) -exec chmod 755 {} \; -o \
- \( -perm 666 -o -perm 664 -o -perm 640 -o -perm 600 -o -perm 444 \
- -o -perm 440 -o -perm 400 \) -exec chmod 644 {} \;
-
-# Desktop and launcher related stuff
-install -D -m 0644 $PRGNAM.xpm $PKG/usr/share/pixmaps/$PRGNAM.xpm
-install -D -m 0644 $CWD/$PRGNAM.desktop $PKG/usr/share/applications/$PRGNAM.desktop
-install -D -m 0755 $CWD/$PRGNAM $PKG/usr/bin/$PRGNAM
-
-# This is so we don't overwrite configs
-mv $PKG/$JDIR/VDKGameCfg.ini $PKG/$JDIR/VDKGameCfg.ini.new
-mv $PKG/$JDIR/VDKRunCfg.ini $PKG/$JDIR/VDKRunCfg.ini.new
-mv $PKG/$JDIR/VDKSettings.ini $PKG/$JDIR/VDKSettings.ini.new
-
-# Cleanup
-rm -f $PKG/$JDIR/$PRGNAM.desktop
-rm -f $PKG/$JDIR/libQtCore.so.4
-rm -f $PKG/$JDIR/libQtGui.so.4
-rm -f $PKG/$JDIR/libQtNetwork.so.4
-rm -f $PKG/$JDIR/libQtOpenGL.so.4
-
-# Make it so we have write access to the folder
-chgrp -R users $PKG/$JDIR
-chmod -R 774 $PKG/$JDIR
-
-mkdir -p $PKG/usr/doc/$PRGNAM-$VERSION
-cp -a $PKG/$JDIR/readme_en.rtf $PKG/$JDIR/readme_ru.rtf $PKG/usr/doc/$PRGNAM-$VERSION
-cat $CWD/$PRGNAM.SlackBuild > $PKG/usr/doc/$PRGNAM-$VERSION/$PRGNAM.SlackBuild
-
-mkdir -p $PKG/install
-cat $CWD/slack-desc > $PKG/install/slack-desc
-cat $CWD/doinst.sh > $PKG/install/doinst.sh
-
-cd $PKG
-/sbin/makepkg -l y -c n $OUTPUT/$PRGNAM-$VERSION-$ARCH-$BUILD$TAG.${PKGTYPE:-tgz}
diff --git a/games/jackhammer/jackhammer.desktop b/games/jackhammer/jackhammer.desktop
deleted file mode 100644
index fed1e3c2ef..0000000000
--- a/games/jackhammer/jackhammer.desktop
+++ /dev/null
@@ -1,11 +0,0 @@
-[Desktop Entry]
-Version=1.0
-Type=Application
-Name=Jackhammer
-GenericName=Jackhammer
-Comment=Jackhammer (VDK)
-Exec=jackhammer
-Icon=jackhammer
-X-Window-Icon=jackhammer
-Terminal=false
-Categories=Utility;
diff --git a/games/jackhammer/jackhammer.info b/games/jackhammer/jackhammer.info
deleted file mode 100644
index eb4a25c84b..0000000000
--- a/games/jackhammer/jackhammer.info
+++ /dev/null
@@ -1,10 +0,0 @@
-PRGNAM="jackhammer"
-VERSION="11855"
-HOMEPAGE="http://jackhammer.hlfx.ru/"
-DOWNLOAD="http://ponce.cc/slackware/sources/repo/jackhammer_11855_linux_x86.run"
-MD5SUM="e8f2085785c9cb67f202d30942fcde9a"
-DOWNLOAD_x86_64="http://ponce.cc/slackware/sources/repo/jackhammer_11855_linux_x64.run"
-MD5SUM_x86_64="2bd87a39b8554d92e4d0877b7806b61b"
-REQUIRES=""
-MAINTAINER="Gethyn ThomasQuail"
-EMAIL="gethyn@bloodbathsoftworks.com"
diff --git a/games/jackhammer/slack-desc b/games/jackhammer/slack-desc
deleted file mode 100644
index 349e1ca7c1..0000000000
--- a/games/jackhammer/slack-desc
+++ /dev/null
@@ -1,19 +0,0 @@
-# HOW TO EDIT THIS FILE:
-# The "handy ruler" below makes it easier to edit a package description.
-# Line up the first '|' above the ':' following the base package name, and
-# the '|' on the right side marks the last column you can put a character in.
-# You must make exactly 11 lines for the formatting to be correct. It's also
-# customary to leave one space after the ':' except on otherwise blank lines.
-
- |-----handy-ruler------------------------------------------------------|
-jackhammer: jackhammer (Jackhammer Level Editor)
-jackhammer:
-jackhammer: Jackhammer is a brand new level editor for games with a quake-style
-jackhammer: BSP architecture (Half-Life, Quake, Quake II). The aim is to develop
-jackhammer: a convenient cross-platform tool capable of incorporating the best
-jackhammer: features of existing editors, such as Valve Hammer Editor, Q3Radiant
-jackhammer: and others.
-jackhammer:
-jackhammer:
-jackhammer: Homepage: http://jackhammer.hlfx.ru/
-jackhammer:
diff --git a/games/jag/jag.SlackBuild b/games/jag/jag.SlackBuild
index 330b683037..e0878d37b8 100644
--- a/games/jag/jag.SlackBuild
+++ b/games/jag/jag.SlackBuild
@@ -1,4 +1,4 @@
-#!/bin/sh
+#!/bin/bash
# Slackware build script for jag
@@ -22,10 +22,13 @@
# OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF THIS SOFTWARE, EVEN IF
# ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
+cd $(dirname $0) ; CWD=$(pwd)
+
PRGNAM=jag
VERSION=${VERSION:-0.3.3}
BUILD=${BUILD:-1}
TAG=${TAG:-_SBo}
+PKGTYPE=${PKGTYPE:-tgz}
if [ -z "$ARCH" ]; then
case "$( uname -m )" in
@@ -35,7 +38,14 @@ if [ -z "$ARCH" ]; then
esac
fi
-CWD=$(pwd)
+# If the variable PRINT_PACKAGE_NAME is set, then this script will report what
+# the name of the created package would be, and then exit. This information
+# could be useful to other scripts.
+if [ ! -z "${PRINT_PACKAGE_NAME}" ]; then
+ echo "$PRGNAM-$VERSION-$ARCH-$BUILD$TAG.$PKGTYPE"
+ exit 0
+fi
+
TMP=${TMP:-/tmp/SBo}
PKG=$TMP/package-$PRGNAM
OUTPUT=${OUTPUT:-/tmp}
@@ -118,4 +128,4 @@ cat $CWD/slack-desc > $PKG/install/slack-desc
cat $CWD/doinst.sh > $PKG/install/doinst.sh
cd $PKG
-/sbin/makepkg -l y -c n $OUTPUT/$PRGNAM-$VERSION-$ARCH-$BUILD$TAG.${PKGTYPE:-tgz}
+/sbin/makepkg -l y -c n $OUTPUT/$PRGNAM-$VERSION-$ARCH-$BUILD$TAG.$PKGTYPE
diff --git a/games/javacpc/javacpc.SlackBuild b/games/javacpc/javacpc.SlackBuild
index e2fcaa40b6..2d730241e6 100644
--- a/games/javacpc/javacpc.SlackBuild
+++ b/games/javacpc/javacpc.SlackBuild
@@ -1,8 +1,8 @@
-#!/bin/sh
+#!/bin/bash
# Slackware build script for javacpc
-# Copyright 2014-2020 Dimitris Zlatanidis Orestiada, Greece
+# Copyright 2014-2022 Dimitris Zlatanidis Orestiada, Greece
# All rights reserved.
#
# Redistribution and use of this script, with or without modification, is
@@ -22,11 +22,14 @@
# OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF THIS SOFTWARE, EVEN IF
# ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
+cd $(dirname $0) ; CWD=$(pwd)
+
PRGNAM=javacpc
SRCNAM=JavaCPC_Desktop
-VERSION=${VERSION:-2.9.8f}
+VERSION=${VERSION:-3.0.2}
BUILD=${BUILD:-1}
TAG=${TAG:-_SBo}
+PKGTYPE=${PKGTYPE:-tgz}
if [ -z "$ARCH" ]; then
case "$( uname -m )" in
@@ -36,7 +39,14 @@ if [ -z "$ARCH" ]; then
esac
fi
-CWD=$(pwd)
+# If the variable PRINT_PACKAGE_NAME is set, then this script will report what
+# the name of the created package would be, and then exit. This information
+# could be useful to other scripts.
+if [ ! -z "${PRINT_PACKAGE_NAME}" ]; then
+ echo "$PRGNAM-$VERSION-$ARCH-$BUILD$TAG.$PKGTYPE"
+ exit 0
+fi
+
TMP=${TMP:-/tmp/SBo}
PKG=$TMP/package-$PRGNAM
OUTPUT=${OUTPUT:-/tmp}
@@ -75,7 +85,7 @@ find -L . \
DATA="system lib JavaCPC_Easteregg.zip"
mkdir -p $PKG/usr/share/$PRGNAM
for i in $DATA; do
- cp -rf $i $PKG/usr/share/$PRGNAM
+ cp -rf $i $PKG/usr/share/$PRGNAM
done
# install library
@@ -88,7 +98,7 @@ install -D -m0755 *.jar $PKG/usr/share/$PRGNAM
# remove unused
REMOVE="*.exe *.dll lib/sunos lib/windows"
for i in $REMOVE; do
- rm -rf $PKG/usr/share/$PRGNAM/$i
+ rm -rf $PKG/usr/share/$PRGNAM/$i
done
# install launcher
@@ -110,4 +120,4 @@ cat $CWD/slack-desc > $PKG/install/slack-desc
cat $CWD/doinst.sh > $PKG/install/doinst.sh
cd $PKG
-/sbin/makepkg -l y -c n $OUTPUT/$PRGNAM-$VERSION-$ARCH-$BUILD$TAG.${PKGTYPE:-tgz}
+/sbin/makepkg -l y -c n $OUTPUT/$PRGNAM-$VERSION-$ARCH-$BUILD$TAG.$PKGTYPE
diff --git a/games/javacpc/javacpc.info b/games/javacpc/javacpc.info
index 21137d6298..7c5cf3af10 100644
--- a/games/javacpc/javacpc.info
+++ b/games/javacpc/javacpc.info
@@ -1,10 +1,10 @@
PRGNAM="javacpc"
-VERSION="2.9.8f"
+VERSION="3.0.2"
HOMEPAGE="http://cpc-live.com"
-DOWNLOAD="https://downloads.sourceforge.net/project/javacpc/JavaCPC%20Desktop/JavaCPC_Desktop_2.9.8f.zip"
-MD5SUM="4fec6ebf5730f1bac7db59a67f194a8a"
+DOWNLOAD="https://downloads.sourceforge.net/project/javacpc/JavaCPC%20Desktop/JavaCPC_Desktop_3.0.2.zip"
+MD5SUM="265b35fe51821ec823b230c2808c828e"
DOWNLOAD_x86_64=""
MD5SUM_x86_64=""
-REQUIRES="jdk"
+REQUIRES="zulu-openjdk8"
MAINTAINER="Dimitris Zlatanidis"
EMAIL="d.zlatanidis@gmail.com"
diff --git a/games/javacpc/javacpc.sh b/games/javacpc/javacpc.sh
index ef6271ce53..d64f9ed80a 100644
--- a/games/javacpc/javacpc.sh
+++ b/games/javacpc/javacpc.sh
@@ -1,4 +1,4 @@
-#!/bin/sh
+#!/bin/bash
cd /usr/share/javacpc
java -jar JavaCPC.jar
diff --git a/games/jezzball-kazzmir/Makefile b/games/jezzball-kazzmir/Makefile
new file mode 100644
index 0000000000..62fd93548c
--- /dev/null
+++ b/games/jezzball-kazzmir/Makefile
@@ -0,0 +1,16 @@
+PRGNAM=jezzball
+
+SRCS=$(wildcard src/*.cpp)
+OBJS=$(patsubst %.cpp,%.o,$(SRCS))
+
+CXX=g++
+OPTFLAGS=
+CXXFLAGS=$(OPTFLAGS) -Wno-write-strings $(shell allegro-config --cflags) $(shell libpng-config --cflags)
+LDFLAGS=$(shell allegro-config --libs) -ljpgalleg -lloadpng $(shell libpng-config --libs)
+
+all: $(PRGNAM)
+
+$(PRGNAM): $(OBJS)
+ $(CXX) -o $(PRGNAM) $(OBJS) $(LDFLAGS)
+
+$(OBJS): $(SRCS)
diff --git a/games/jezzball-kazzmir/README b/games/jezzball-kazzmir/README
index 2a5ee8ca69..b2596fc114 100644
--- a/games/jezzball-kazzmir/README
+++ b/games/jezzball-kazzmir/README
@@ -1,9 +1,9 @@
jezzball-kazzmir (2d arcade/puzzle game)
-Jezzball is a classic game much like qix wherein you must create walls
-and not get hit by the flying balls. If you create enough walls to cover
-80% of the screen you go to the next level where you get one extra life
-and another ball trying to kill you.
+Jezzball is a classic game much like Qix, wherein you must create
+walls and not get hit by the flying balls. If you create enough walls
+to cover 80% of the screen, you go to the next level, where you get
+one extra life and another ball trying to kill you.
Left click to create a wall.
Right click to change the direction of the mouse.
diff --git a/games/jezzball-kazzmir/README_Slackware.txt b/games/jezzball-kazzmir/README_Slackware.txt
index f25afd83a0..79d41f86dc 100644
--- a/games/jezzball-kazzmir/README_Slackware.txt
+++ b/games/jezzball-kazzmir/README_Slackware.txt
@@ -17,3 +17,6 @@ Porting changes from the original:
- Use /usr/share for the data files, instead of the current directory.
- Minor compile/linking fixes (see the SlackBuild).
+
+- Use a Makefile rather than scons. The SConstruct no longer works with
+ recent versions of scons.
diff --git a/games/jezzball-kazzmir/doinst.sh b/games/jezzball-kazzmir/doinst.sh
index 5fb28930db..3e5691a052 100644
--- a/games/jezzball-kazzmir/doinst.sh
+++ b/games/jezzball-kazzmir/doinst.sh
@@ -1,3 +1,9 @@
if [ -x /usr/bin/update-desktop-database ]; then
/usr/bin/update-desktop-database -q usr/share/applications >/dev/null 2>&1
fi
+
+if [ -e usr/share/icons/hicolor/icon-theme.cache ]; then
+ if [ -x /usr/bin/gtk-update-icon-cache ]; then
+ /usr/bin/gtk-update-icon-cache usr/share/icons/hicolor >/dev/null 2>&1
+ fi
+fi
diff --git a/games/jezzball-kazzmir/icons/16.png b/games/jezzball-kazzmir/icons/16.png
new file mode 100644
index 0000000000..49e0aeaa2e
--- /dev/null
+++ b/games/jezzball-kazzmir/icons/16.png
Binary files differ
diff --git a/games/jezzball-kazzmir/icons/32.png b/games/jezzball-kazzmir/icons/32.png
new file mode 100644
index 0000000000..9b2ef50ebb
--- /dev/null
+++ b/games/jezzball-kazzmir/icons/32.png
Binary files differ
diff --git a/games/jezzball-kazzmir/icons/48.png b/games/jezzball-kazzmir/icons/48.png
new file mode 100644
index 0000000000..39b97d76ae
--- /dev/null
+++ b/games/jezzball-kazzmir/icons/48.png
Binary files differ
diff --git a/games/jezzball-kazzmir/icons/64.png b/games/jezzball-kazzmir/icons/64.png
new file mode 100644
index 0000000000..e3f58ae8f0
--- /dev/null
+++ b/games/jezzball-kazzmir/icons/64.png
Binary files differ
diff --git a/games/jezzball-kazzmir/jezzball-kazzmir.6 b/games/jezzball-kazzmir/jezzball-kazzmir.6
new file mode 100644
index 0000000000..fd58804a42
--- /dev/null
+++ b/games/jezzball-kazzmir/jezzball-kazzmir.6
@@ -0,0 +1,80 @@
+.\" Man page generated from reStructuredText.
+.
+.
+.nr rst2man-indent-level 0
+.
+.de1 rstReportMargin
+\\$1 \\n[an-margin]
+level \\n[rst2man-indent-level]
+level margin: \\n[rst2man-indent\\n[rst2man-indent-level]]
+-
+\\n[rst2man-indent0]
+\\n[rst2man-indent1]
+\\n[rst2man-indent2]
+..
+.de1 INDENT
+.\" .rstReportMargin pre:
+. RS \\$1
+. nr rst2man-indent\\n[rst2man-indent-level] \\n[an-margin]
+. nr rst2man-indent-level +1
+.\" .rstReportMargin post:
+..
+.de UNINDENT
+. RE
+.\" indent \\n[an-margin]
+.\" old: \\n[rst2man-indent\\n[rst2man-indent-level]]
+.nr rst2man-indent-level -1
+.\" new: \\n[rst2man-indent\\n[rst2man-indent-level]]
+.in \\n[rst2man-indent\\n[rst2man-indent-level]]u
+..
+.TH "JEZZBALL-KAZZMIR" 6 "2021-10-19" "1.1" "SlackBuilds.org"
+.SH NAME
+jezzball-kazzmir \- clone of classic Jezzball game
+.\" RST source for jezzball-kazzmir(6) man page. Convert with:
+.
+.\" rst2man.py jezzball-kazzmir.rst > jezzball-kazzmir.6
+.
+.\" rst2man.py comes from the SBo development/docutils package.
+.
+.SH SYNOPSIS
+.sp
+jezzball\-kazzmir [\fI\-d datadir\fP]
+.SH DESCRIPTION
+.sp
+Jezzball is a classic game much like Qix, wherein you must create walls
+and not get hit by the flying balls. If you create enough walls to cover
+80% of the screen, you go to the next level, where you get one extra life
+and another ball trying to kill you.
+.sp
+This is a clone of the original Jezzball, with gameplay similar but
+not identical to the original Windows version.
+.SH OPTIONS
+.INDENT 0.0
+.TP
+.B \fB\-d\fP \fIdatadir\fP
+Use alternate game data directory. The default is \fI/usr/share/games/jezzball\-kazzmir\fP\&.
+.UNINDENT
+.SH CONTROLS
+.sp
+The game is played entirely with the mouse.
+.sp
+Left click to create a wall.
+.sp
+Right click to change the direction of the mouse (horizontal/vertical).
+.SH FILES
+.INDENT 0.0
+.TP
+.B \fB/var/games/jezzball\-kazzmir/scores.jzb\fP
+High score file.
+.UNINDENT
+.SH AUTHORS
+.sp
+jezzball\-kazzmir was written by by Kazzmir aka Jon Rafkind.
+.sp
+This man page written for the SlackBuilds.org project
+by B. Watson, and is licensed under the WTFPL.
+.SH SEE ALSO
+.sp
+The jezzball\-kazzmir homepage: \fI\%https://www.allegro.cc/depot/Jezzball\fP
+.\" Generated by docutils manpage writer.
+.
diff --git a/games/jezzball-kazzmir/jezzball-kazzmir.SlackBuild b/games/jezzball-kazzmir/jezzball-kazzmir.SlackBuild
index d4d8fdebfe..4e3840af0f 100644
--- a/games/jezzball-kazzmir/jezzball-kazzmir.SlackBuild
+++ b/games/jezzball-kazzmir/jezzball-kazzmir.SlackBuild
@@ -1,8 +1,8 @@
-#!/bin/sh
+#!/bin/bash
# Slackware build script for jezzball-kazzmir
-# Written by B. Watson (yalhcru@gmail.com)
+# Written by B. Watson (urchlay@slackware.uk)
# Licensed under the WTFPL. See http://www.wtfpl.net/txt/copying/ for details.
@@ -10,10 +10,18 @@
# stable (random-looking hostnames). Homepage is the allegro.cc game depot
# entry for this game, since the original homepage is defunct.
+# 20211019 bkw: BUILD=3
+# - fix -current build.
+# - new-style icons.
+# - man page.
+
+cd $(dirname $0) ; CWD=$(pwd)
+
PRGNAM=jezzball-kazzmir
VERSION=${VERSION:-1.1}
-BUILD=${BUILD:-2}
+BUILD=${BUILD:-3}
TAG=${TAG:-_SBo}
+PKGTYPE=${PKGTYPE:-tgz}
if [ -z "$ARCH" ]; then
case "$( uname -m )" in
@@ -23,7 +31,11 @@ if [ -z "$ARCH" ]; then
esac
fi
-CWD=$(pwd)
+if [ ! -z "${PRINT_PACKAGE_NAME}" ]; then
+ echo "$PRGNAM-$VERSION-$ARCH-$BUILD$TAG.$PKGTYPE"
+ exit 0
+fi
+
TMP=${TMP:-/tmp/SBo}
PKG=$TMP/package-$PRGNAM
OUTPUT=${OUTPUT:-/tmp}
@@ -59,11 +71,8 @@ rm -rf $SRCNAM-$VERSION
tar xvf $CWD/$SRCNAM-$VERSION.tar.gz
cd $SRCNAM-$VERSION
chown -R root:root .
-find -L . \
- \( -perm 777 -o -perm 775 -o -perm 750 -o -perm 711 -o -perm 555 \
- -o -perm 511 \) -exec chmod 755 {} \; -o \
- \( -perm 666 -o -perm 664 -o -perm 640 -o -perm 600 -o -perm 444 \
- -o -perm 440 -o -perm 400 \) -exec chmod 644 {} \;
+find -L . -perm /111 -a \! -perm 755 -a -exec chmod 755 {} \+ -o \
+ \! -perm /111 -a \! -perm 644 -a -exec chmod 644 {} \+
# 20151122 bkw: use allegro4's loadpng instead of the bundled one. fixes
# build on -current, does no harm on 14.1.
@@ -72,9 +81,6 @@ patch -p1 < $CWD/loadpng.diff
sed -i 's,\./data\|data/,'"$DATADIR"',' src/main.cpp
sed -i 's,score\.jzb,'$SCOREDIR'/&,' src/score.cpp
-# link fix, plus use our cflags
-sed -i -e "s,-O2,$SLKCFLAGS," -e 's,jpgal,jpgalleg,' SConstruct
-
# fix globbing
sed -i 's,FA_ARCH,FA_ALL,' src/main.cpp
@@ -87,7 +93,12 @@ sed -i '1i#include <string.h>' src/region.cpp
# the unpatched game *is* nonfunctional because it's too annoying to play.
patch -p1 < $CWD/insults.diff
-scons
+# 20211019 bkw: Slackware pre-15.0 -current's scons doesn't like the
+# SConstruct from this old project. I *hate* scons. Seriously. This
+# project is small enough it'd be better off with a simple
+# Makefile. So I wrote one.
+cat $CWD/Makefile > Makefile
+make OPTFLAGS="$SLKCFLAGS"
# manual install
mkdir -p $PKG/usr/games $PKG/$DATADIR
@@ -105,14 +116,28 @@ install -oroot -groot -m0644 pics/*.png $PKG/$DATADIR/pics
# world-writable scorefile. The dir it's in is only writable by root,
# the game can't create the scorefile if it's missing, so we have to
# include the stock one in the package (which the game can and will
-# modify as needed).
+# modify as needed). Note that this can't usefully be installed as a
+# .new config file, because slackpkg doesn't look in /var/games for
+# those (so the user will never be prompted for it).
mkdir -p $PKG/$SCOREDIR
zcat $CWD/score.jzb.gz > $PKG/$SCOREDIR/score.jzb
chmod 666 $PKG/$SCOREDIR/score.jzb
-# icon made with the gimp, from a screenshot of the game
+# icons made with the gimp, from screenshots of the game
+for i in $CWD/icons/*.png; do
+ px=$( basename $i | cut -d. -f1 )
+ size=${px}x${px}
+ dir=$PKG/usr/share/icons/hicolor/$size/apps
+ mkdir -p $dir
+ cat $i > $dir/$PRGNAM.png
+done
+
mkdir -p $PKG/usr/share/pixmaps
-cat $CWD/$PRGNAM.png > $PKG/usr/share/pixmaps/$PRGNAM.png
+ln -s ../icons/hicolor/48x48/apps/$PRGNAM.png $PKG/usr/share/pixmaps/$PRGNAM.png
+
+# man page written for this build
+mkdir -p $PKG/usr/man/man6
+gzip -9c < $CWD/$PRGNAM.6 > $PKG/usr/man/man6/$PRGNAM.6.gz
# .desktop file written for this build
mkdir -p $PKG/usr/share/applications
@@ -127,4 +152,4 @@ cat $CWD/slack-desc > $PKG/install/slack-desc
cat $CWD/doinst.sh > $PKG/install/doinst.sh
cd $PKG
-/sbin/makepkg -l y -c n $OUTPUT/$PRGNAM-$VERSION-$ARCH-$BUILD$TAG.${PKGTYPE:-tgz}
+/sbin/makepkg -l y -c n $OUTPUT/$PRGNAM-$VERSION-$ARCH-$BUILD$TAG.$PKGTYPE
diff --git a/games/jezzball-kazzmir/jezzball-kazzmir.info b/games/jezzball-kazzmir/jezzball-kazzmir.info
index 9be093ad9a..a757502e95 100644
--- a/games/jezzball-kazzmir/jezzball-kazzmir.info
+++ b/games/jezzball-kazzmir/jezzball-kazzmir.info
@@ -9,4 +9,4 @@ DOWNLOAD_x86_64=""
MD5SUM_x86_64=""
REQUIRES="allegro4"
MAINTAINER="B. Watson"
-EMAIL="yalhcru@gmail.com"
+EMAIL="urchlay@slackware.uk"
diff --git a/games/jezzball-kazzmir/jezzball-kazzmir.png b/games/jezzball-kazzmir/jezzball-kazzmir.png
deleted file mode 100644
index d7b079775c..0000000000
--- a/games/jezzball-kazzmir/jezzball-kazzmir.png
+++ /dev/null
Binary files differ
diff --git a/games/jezzball-kazzmir/jezzball-kazzmir.rst b/games/jezzball-kazzmir/jezzball-kazzmir.rst
new file mode 100644
index 0000000000..c6bcb23841
--- /dev/null
+++ b/games/jezzball-kazzmir/jezzball-kazzmir.rst
@@ -0,0 +1,69 @@
+.. RST source for jezzball-kazzmir(6) man page. Convert with:
+.. rst2man.py jezzball-kazzmir.rst > jezzball-kazzmir.6
+.. rst2man.py comes from the SBo development/docutils package.
+
+.. |version| replace:: 1.1
+.. |date| date::
+
+================
+jezzball-kazzmir
+================
+
+------------------------------
+clone of classic Jezzball game
+------------------------------
+
+:Manual section: 6
+:Manual group: SlackBuilds.org
+:Date: |date|
+:Version: |version|
+
+SYNOPSIS
+========
+
+jezzball-kazzmir [*-d datadir*]
+
+DESCRIPTION
+===========
+
+Jezzball is a classic game much like Qix, wherein you must create walls
+and not get hit by the flying balls. If you create enough walls to cover
+80% of the screen, you go to the next level, where you get one extra life
+and another ball trying to kill you.
+
+This is a clone of the original Jezzball, with gameplay similar but
+not identical to the original Windows version.
+
+OPTIONS
+=======
+
+**-d** *datadir*
+ Use alternate game data directory. The default is */usr/share/games/jezzball-kazzmir*.
+
+CONTROLS
+========
+
+The game is played entirely with the mouse.
+
+Left click to create a wall.
+
+Right click to change the direction of the mouse (horizontal/vertical).
+
+FILES
+=====
+
+**/var/games/jezzball-kazzmir/scores.jzb**
+ High score file.
+
+AUTHORS
+=======
+
+jezzball-kazzmir was written by by Kazzmir aka Jon Rafkind.
+
+This man page written for the SlackBuilds.org project
+by B. Watson, and is licensed under the WTFPL.
+
+SEE ALSO
+========
+
+The jezzball-kazzmir homepage: https://www.allegro.cc/depot/Jezzball
diff --git a/games/jezzball-kazzmir/slack-desc b/games/jezzball-kazzmir/slack-desc
index faf2720672..29000859d7 100644
--- a/games/jezzball-kazzmir/slack-desc
+++ b/games/jezzball-kazzmir/slack-desc
@@ -8,9 +8,9 @@
|-----handy-ruler------------------------------------------------------|
jezzball-kazzmir: jezzball-kazzmir (2d arcade/puzzle game)
jezzball-kazzmir:
-jezzball-kazzmir: Jezzball is a classic game much like qix wherein you must create
+jezzball-kazzmir: Jezzball is a classic game much like Qix, wherein you must create
jezzball-kazzmir: walls and not get hit by the flying balls. If you create enough
-jezzball-kazzmir: walls to cover 80% of the screen you goto the next level where you
+jezzball-kazzmir: walls to cover 80% of the screen, you go to the next level, where you
jezzball-kazzmir: get one extra life and another ball trying to kill you.
jezzball-kazzmir:
jezzball-kazzmir: Left click to create a wall.
diff --git a/games/jfsw/README b/games/jfsw/README
index ab86474a68..47ab39bb08 100644
--- a/games/jfsw/README
+++ b/games/jfsw/README
@@ -4,6 +4,9 @@ The aim of this port is to present Shadow Warrior as closely as possible
to the original game while adding optional features to expand the
possibilities of the game.
+The package also includes kenbuild (Ken Silverman's Build engine demo
+game) and jfsw-build (the map editor for jfsw).
+
To play the game, you will need at least one ".grp" game data file.
Choices are:
@@ -18,16 +21,8 @@ Choices are:
Any or all of the game data packages can be installed at the same time
without conflict.
-If you install the full version of the game, you may also want to
-install jfsw_hires_pack for some graphic enhancements. Don't bother
-trying if all you have is the shareware sw.grp: it segfaults on
-startup.
-
-Optional dependencies: SDL2 and/or fluidsynth. These will be
-autodetected. If you want to force building without them, you can
-export SDL2=no and/or FLUID=no in the environment. SDL2 provides
-a slightly better user experience (YMMV). See README_music.txt for
-details on using fluidsynth with jfsw.
+You may also want to install jfsw_hires_pack for some graphic
+enhancements.
To get the in-game music to play, see README_music.txt.
@@ -39,3 +34,7 @@ axes should have "" values.
Note: I've had zero luck trying to run game mods with jfsw. If you get
any mods working, I'd love to hear from you (email address in .info
file), let me know how you did it.
+
+Note: if you need the Build engine tools (kextract, kgroup, etc), you
+can either install eduke32, or set TOOLS=yes in jfsw's environment. If
+you do both, you'll end up with conflicting files in the packages.
diff --git a/games/jfsw/README_game_data.txt b/games/jfsw/README_game_data.txt
index d67b11c383..49320163a0 100644
--- a/games/jfsw/README_game_data.txt
+++ b/games/jfsw/README_game_data.txt
@@ -20,11 +20,15 @@ Shadow Warrior that was originally developed in the 90s but never released
commercially. In 2005, it was released as a freeware download. To play
this version of the game, install jfsw_wanton_destruction.
+jfsw can also play Twin Dragon, another expansion pack. Install
+jfsw_twin_dragon to play this version of the game.
+
Possible .grp files:
Registered sw.grp: 47536148 bytes, md5sum 9d200b5fb4ace8797e7f8638c4f96af2
"Alternate" sw.grp: 47536148 bytes, md5sum 92006f69a15ffa5f48b7dcd07b75fda9
Shareware sw.grp: 26056769 bytes, md5sum dafeec1b83bd31edc6dafffc9a75bdb8
Wanton Destruction wt.grp: 48698128 bytes, d0f8dc0718127ca480abf14f3a9508c2
+Twin Dragon td.grp: 53480783 bytes, md5sum 26ebd69e0286c938f29e24b75ad896f1
If you have the "alternate" (hacked? pirated?) version of sw.grp, it
differs by only a few bytes. jfsw will refuse to "see" it because the
diff --git a/games/jfsw/README_music.txt b/games/jfsw/README_music.txt
index f6c44ca5ab..e3292c50ea 100644
--- a/games/jfsw/README_music.txt
+++ b/games/jfsw/README_music.txt
@@ -1,84 +1,18 @@
-The most important things to understand about the music in Shadow Warrior:
+The shareware (demo) version of the game is the only version that uses
+MIDI.
-The demo/shareware version of the game uses MIDI. There are actually
-.MID files stored within sw.grp.
+The registered version of the game was distributed on CD, and played
+the music from audio tracks on the disc. This isn't supported in jfsw.
+There is no MIDI data inside the .grp files for the registered version
+or the expansions.
-The full/registered version and/or expansion pack uses CD audio
-tracks. They *can't* use MIDI: there's no MIDI data inside its .grp
-files at all.
+There are two choices to get music working in jfsw:
-So there are 2 completely separate procedures for getting the music
-to work, depending on whether you're playing the full/expansion or
-demo version.
+- OGG files, created by ripping the audio from the game CD. This
+ works with all versions of the game. To get them, install
+ jfsw_registered_data. The other games (Shareware, Twin Dragon,
+ Wanton Destruction) will use the same audio tracks.
-Full (Registered) Version, Wanton Destruction expansion
--------------------------------------------------------
-
-For these versions, jfsw doesn't actually support CD audio from a
-physical CD [*]. It does, however, support .ogg files made from the CD.
-
-As of April 2020, the jfsw_registered_data build includes the .ogg files,
-so there's no need to rip them from CD or download them separately. If
-you're playing Wanton Destruction, install both jfsw_registered_data
-and jfsw_wanton_destruction.
-
-Run the game, and the music should play. If not, use the in-game menus
-(Options, Sound Menu) to enable the music and turn up the volume.
-
-If you followed the steps below to get the demo music to play, you'll
-have to re-edit ~/.jfsw/sw.cfg and change the MusicDevice back to 0.
-
-If you're never going to play the demo version, there's no need to build
-jfsw with fluidsynth support (although, it won't hurt anything if you do).
-
-Note: When using the .ogg soundtrack, under some conditions, it seems
-the background music stops playing after loading a saved game. If this
-happens to you, toggle the music off & back on (under Options, Sound
-Menu), which should start it playing again.
-
-[*] There is some code in jfaudiolib that's supposed to play CD audio
- but it's (a) SDL-1.2 only, and (b) broken.
-
-Demo (Shareware) Version
-------------------------
-
-For the shareware version, the MIDI data is already present inside the
-sw.grp file. To actually hear it, you'll have to:
-
-1. Build and install fluidsynth. Doesn't matter whether or not
- optional jack and/or lash are included (jfsw doesn't use them though).
-
-2. Build and install fluid-soundfont.
-
-3. Build and install jfsw. When installing, the description should say
- the package was built with fluidsynth.
-
-4. Run the game once, and exit it normally, to get it to create a config
- file. You should now have a ~/.jfsw/sw.cfg file.
-
-5. Edit ~/.jfsw/sw.cfg, find the line that says "MusicDevice = 0", and
- change the 0 to a 6. This enables fluidsynth.
-
-6. Run the game again. Make sure the music is enabled and the music
- volume is turned up (under Options, Sound Menu).
-
-Unfortunately, the edited config file won't work with the full version.
-You'll have to change MusicDevice back to 0 (meaning 'autodetect') to get
-the .ogg tracks to play. Other possible values are 1 (SDL) and 7 (ALSA).
-
-There's no direct way to change which soundfont jfsw uses. What it does is
-look in /usr/share/sounds/sf2/ and pick the first soundfont it finds, in
-sorted order. Basically it does the C++ equivalent of:
-
-$ ls /usr/share/sounds/sf2/*.sf2 | head -1
-
-If the only sound fonts in that directory are the ones installed by
-the fluid-soundfont package, it will choose "FluidR3_GM.sf2", which is
-reasonable and sounds good.
-
-If you want to use a different soundfont, try something like this:
-
-# cd /usr/share/sounds/sf2/
-# ln -s MySoundFont.sf2 000-jfsw.sf2
-
-Check with the ls command above, to make sure 000-jfsw.sf2 sorts first.
+- MIDI. This only works for the shareware/demo version (jfsw_demo_data),
+ and is only necessary if you don't want to install jfsw_registered_data.
+ To use MIDI, install fluidsynth-soundfont.
diff --git a/games/jfsw/desktop/jfsw-build.desktop b/games/jfsw/desktop/jfsw-build.desktop
new file mode 100644
index 0000000000..fc60f06205
--- /dev/null
+++ b/games/jfsw/desktop/jfsw-build.desktop
@@ -0,0 +1,7 @@
+[Desktop Entry]
+Name=JFSW Build Editor
+Icon=jfsw
+Exec=/usr/games/jfsw-build
+Terminal=false
+Type=Application
+Categories=Game;ActionGame;
diff --git a/games/jfsw/desktop/jfsw.desktop b/games/jfsw/desktop/jfsw.desktop
new file mode 100644
index 0000000000..2ec32e83d0
--- /dev/null
+++ b/games/jfsw/desktop/jfsw.desktop
@@ -0,0 +1,7 @@
+[Desktop Entry]
+Name=JFShadowWarrior
+Icon=jfsw
+Exec=/usr/games/jfsw
+Terminal=false
+Type=Application
+Categories=Game;ActionGame;
diff --git a/games/jfsw/desktop/kenbuild.desktop b/games/jfsw/desktop/kenbuild.desktop
new file mode 100644
index 0000000000..224cf9122c
--- /dev/null
+++ b/games/jfsw/desktop/kenbuild.desktop
@@ -0,0 +1,7 @@
+[Desktop Entry]
+Name=JFKenBuild
+Icon=jfsw
+Exec=/usr/games/kenbuild
+Terminal=false
+Type=Application
+Categories=Game;ActionGame;
diff --git a/games/jfsw/doinst.sh b/games/jfsw/doinst.sh
index 4e8ba7071d..3e5691a052 100644
--- a/games/jfsw/doinst.sh
+++ b/games/jfsw/doinst.sh
@@ -2,3 +2,8 @@ if [ -x /usr/bin/update-desktop-database ]; then
/usr/bin/update-desktop-database -q usr/share/applications >/dev/null 2>&1
fi
+if [ -e usr/share/icons/hicolor/icon-theme.cache ]; then
+ if [ -x /usr/bin/gtk-update-icon-cache ]; then
+ /usr/bin/gtk-update-icon-cache usr/share/icons/hicolor >/dev/null 2>&1
+ fi
+fi
diff --git a/games/jfsw/git2tarxz.sh b/games/jfsw/git2tarxz.sh
new file mode 100644
index 0000000000..99dff8ca6f
--- /dev/null
+++ b/games/jfsw/git2tarxz.sh
@@ -0,0 +1,74 @@
+#!/bin/sh
+
+# Create source tarball from git repo, with generated version number.
+
+# Takes one optional argument, which is the commit or tag to create a
+# tarball of. With no arg, HEAD is used.
+
+# Version number example: 0.0.1+20200227_ad7ec17
+
+# Notes:
+
+# Do not use this if you're packaging a release.
+
+# This script doesn't need to be run as root. It does need to be able
+# to write to the current directory it's run from.
+
+# Running this script twice for the same commit will NOT give identical
+# tarballs, even if the contents are identical. This is because tar
+# includes the current time in a newly-created tarball (plus there may
+# be other git-related reasons).
+
+# Once you've generated a tarball, you'll still need a place to host it.
+# Ask on the mailing list, if you don't have your own web server to
+# play with.
+
+## Config:
+
+# Name of SBo build:
+PRGNAM=jfsw
+
+# Github project and user names:
+PROJECT=${PRGNAM}
+GITUSER=jonof
+
+# For github projects, you can use this unmodified:
+CLONE_URL=https://github.com/$GITUSER/$PROJECT.git
+
+# For non-github projects, you might not need GITUSER, in which case
+# just omit it from the script.
+
+## End of config.
+
+set -e
+
+GITDIR=$( mktemp -dt $PRGNAM.git.XXXXXX )
+rm -rf $GITDIR
+git clone $CLONE_URL $GITDIR
+
+CWD="$( pwd )"
+
+cd $GITDIR
+git submodule update --init
+
+if [ "$1" != "" ]; then
+ git reset --hard "$1" || exit 1
+fi
+
+GIT_SHA=$( git rev-parse --short HEAD )
+
+DATE=$( git log --date=format:%Y%m%d --format=%cd | head -1 )
+
+VERSION=${DATE}_${GIT_SHA}
+
+find . -name .git\* -print0 | xargs -0 rm -rf
+
+cd "$CWD"
+rm -rf $PRGNAM-$VERSION $PRGNAM-$VERSION.tar.xz
+mv $GITDIR $PRGNAM-$VERSION
+tar cvfJ $PRGNAM-$VERSION.tar.xz $PRGNAM-$VERSION
+
+echo
+echo "Created tarball: $PRGNAM-$VERSION.tar.xz"
+echo "VERSION=\"$VERSION\""
+echo "MD5SUM=\"$( md5sum $PRGNAM-$VERSION.tar.xz | cut -d' ' -f1 )\""
diff --git a/games/jfsw/jfsw.SlackBuild b/games/jfsw/jfsw.SlackBuild
index 61c803bc23..76891e34b8 100644
--- a/games/jfsw/jfsw.SlackBuild
+++ b/games/jfsw/jfsw.SlackBuild
@@ -1,12 +1,25 @@
-#!/bin/sh
+#!/bin/bash
# Slackware build script for jfsw
-# Written by B. Watson (yalhcru@gmail.com)
+# Written by B. Watson (urchlay@slackware.uk)
# Updated for Slackware 14.2 with the help of orbea <ovariegata@yahoo.com>
# Licensed under the WTFPL. See http://www.wtfpl.net/txt/copying/ for details.
+# 20211103 bkw:
+# - updated for 20210725_716e1e3 (latest git).
+# - combine all the source tarballs into one (see git2tarxz.sh).
+# - get rid of options for building with SDL1 and without fluidsynth.
+# - get rid of fixsegfault.diff, upstream fixed the bug.
+# - rebase the remaining patches (dont_use_jack.diff, twin_dragon_grp.diff)
+# on this version. can't build the old versions any more, sorry.
+# - install the binary only as 'jfsw' (not 'sw'). this is because
+# eduke32 now supports Shadow Warrior, and its binary is also 'sw'.
+# which will be renamed to eduke32-sw or edsw or something like that.
+# - optionally (TOOLS=yes) install the tools (kextract, kgroup, etc).
+# - new-style icons.
+
# 20180710 bkw: BUILD=2
# - updated for 20180424_8fc2d54 (latest git).
# - finally fix long-standing segfault bug.
@@ -23,23 +36,13 @@
# - allow fluidsynth builds to work even if fluidsynth built with JACK.
# - add SDL2=no and FLUID=no build options.
-# When updating to the latest commit of jfsw, we gotta make sure we
-# get the correct commits of the other 3 sources (jfaudiolib, jfbuild,
-# jfmact). To do this:
-# git clone https://github.com/jonof/jfsw.git jfsw.tmp
-# cd jfsw.tmp
-# git submodule init
-# git submodule update
-# Fortunately only the .info file needs to be updated. This script
-# parses it instead of having the commit hashes hardcoded here too.
-# VERSION is duplicated as usual, but here it only serves to name the
-# package (you could build just fine with any VERSION so long as the
-# .info file is correct).
+cd $(dirname $0) ; CWD=$(pwd)
PRGNAM=jfsw
-VERSION=${VERSION:-20180424_8fc2d54}
-BUILD=${BUILD:-2}
+VERSION=${VERSION:-20210725_716e1e3}
+BUILD=${BUILD:-1}
TAG=${TAG:-_SBo}
+PKGTYPE=${PKGTYPE:-tgz}
if [ -z "$ARCH" ]; then
case "$( uname -m )" in
@@ -49,7 +52,11 @@ if [ -z "$ARCH" ]; then
esac
fi
-CWD=$(pwd)
+if [ ! -z "${PRINT_PACKAGE_NAME}" ]; then
+ echo "$PRGNAM-$VERSION-$ARCH-$BUILD$TAG.$PKGTYPE"
+ exit 0
+fi
+
TMP=${TMP:-/tmp/SBo}
PKG=$TMP/package-$PRGNAM
OUTPUT=${OUTPUT:-/tmp}
@@ -70,136 +77,110 @@ fi
set -e
-# We got 4 source tarballs to extract, so create an enclosing $PRGNAM
-# dir to put them all in (for ease of cleanup, if nothing else). When
-# we're ready to build, the source will all be in $TMP/$PRGNAM/$PRGNAM.
rm -rf $PKG
-rm -rf $TMP/$PRGNAM
-mkdir -p $TMP/$PRGNAM $PKG $OUTPUT
-cd $TMP/$PRGNAM
-
-# 20180710 bkw: this is an unusual thing for a SlackBuild to do:
-# parse its own .info file. Done this way to avoid duplicating
-# all those full-length git hashes in both files.
-if [ ! -e "$CWD/$PRGNAM.info" ]; then
- echo "$PRGNAM.info not found, where did it go?" 1>&2
- exit 1
-fi
-
-# For paranoia's sake, don't actually source the entire .info file, just
-# grab the DOWNLOAD= assignment. This rather cryptic sed command means
-# "start printing lines when you hit one that starts with DOWNLOAD,
-# and exit when you hit one that ends with gz and a double-quote
-# (plus possible trailing whitespace)". Result is the multi-line DOWNLOAD
-# assigment only.
-DLFRAG="$( mktemp ./tmp.info.XXXXXX )"
-sed -n '/^DOWNLOAD/,$p;/gz" *$/q' < "$CWD/$PRGNAM.info" > $DLFRAG
-source $DLFRAG
-
-for URL in $DOWNLOAD; do
- SRCNAM="$( basename "$URL" .tar.gz )"
- PNAM=$(echo $SRCNAM | sed -e 's/-.*//')
- [ "$PNAM" = "$PRGNAM" ] || DIRS="$TMP/$PRGNAM/$PNAM $DIRS"
- rm -rf $SRCNAM $PNAM
- tar xvf $CWD/$SRCNAM.tar.gz
- mv $SRCNAM $PNAM
-done
-
-cd $PRGNAM
-mv $DIRS .
+mkdir -p $TMP $PKG $OUTPUT
+cd $TMP
+rm -rf $PRGNAM-$VERSION
+tar xvf $CWD/$PRGNAM-$VERSION.tar.xz
+cd $PRGNAM-$VERSION
chown -R root:root .
-find -L . \
- \( -perm 777 -o -perm 775 -o -perm 750 -o -perm 711 -o -perm 555 \
- -o -perm 511 \) -exec chmod 755 {} \+ -o \
- \( -perm 666 -o -perm 664 -o -perm 640 -o -perm 600 -o -perm 444 \
- -o -perm 440 -o -perm 400 \) -exec chmod 644 {} \+
-
-# 20180711 bkw: how to trigger a known segfault:
-# <orbea> make a save game, load that save game, die while holding the
-# fire button
-# I came up with a band-aid to work around the segfault. Stops the
-# fire button from working the same as a Y keypress (or at all), in Y/N
-# prompts. Patch was sent upstream: https://github.com/jonof/jfsw/issues/14
-patch -p1 < $CWD/patches/fixsegfault.diff
-
-# 20180712 bkw: one liner attempt to get SDL (1.2 only) CD-audio support
-# working. It turns out there's something worse wrong, I can't even get
-# the example code from libsdl.org to play a CD (it'll list the tracks,
-# but SDL_CDPlayTracks() doesn't work, the drive won't even spin up).
-# Since this is SDL 1.2, not 2.x, any attempt to ask for help from an
-# SDL developer or expert is going to be answered with "port your code to
-# SDL 2.x!", so I'm just documenting CD support in jfsw as being broken.
-#patch -p1 < $CWD/patches/sdl_cdrom_fix.diff
+find -L . -perm /111 -a \! -perm 755 -a -exec chmod 755 {} \+ -o \
+ \! -perm /111 -a \! -perm 644 -a -exec chmod 644 {} \+
# 20180712 bkw: if fluidsynth happens to have been built with optional
# JACK support, it'll be the default driver and jfsw will try to use it.
-# This doesn't actually work, so:
+# This doesn't actually work.
+# 20211029 bkw: Slackware has fluidsynth now, it isn't built
+# with jack. But I'm leaving this in, because there might be a
+# fluidsynth-jack build after 15.0 releases.
patch -p1 < $CWD/patches/dont_use_jack.diff
-# 20180712 bkw: we have sdl.pc (not sdl1.pc) for SDL 1.2.x:
-patch -p1 < $CWD/patches/sdl1_fix.diff
-
-# 20180712 bkw: upstream doesn't provide a way to override autodetection
-# of SDL2 and fluidsynth, so I do it with a couple of patches:
-[ "${SDL2:-yes}" = "no" ] && patch -p1 < $CWD/patches/disable_sdl2.diff
-[ "${FLUID:-yes}" = "no" ] && patch -p1 < $CWD/patches/disable_fluid.diff
-
-# 20180711 bkw: The -Wno-return-type isn't needed for gcc but does no
-# harm. Left in place in case someone wants to build this with clang
-# (add a CC=clang arg to the make command, or 'export CC=clang').
-
-# 20180711 bkw: JFAUDIOLIB_USE_SDLMIXER=1 doesn't work (build fail due
-# to missing driver_sdlmixer.c). Maybe someday it'll work and then we
-# hear the demo music without having to install fluidsynth?
-
-# 20200416 bkw: fluidsynth 2.x works OK, but the version check in the
-# source doesn't like its version number.
-sed -i '/^#error.*Fluid/d' jfaudiolib/src/driver_fluidsynth.c
-
# 20200428 bkw: add Twin Dragon td.grp to the list of supported GRP
# files. Need this for the jfsw_twin_dragon build.
-patch -p1 < $CWD/twin_dragon_grp.diff
-
-make \
- RELEASE=1 \
- PREFIX=/usr/share/games/$PRGNAM \
- CFLAGS="$SLKCFLAGS -Wno-return-type" \
- CXXFLAGS="$SLKCFLAGS"
-
-# Document what the binary package needs in its slack-desc.
-BIN_NAME=sw
-SDLVER=1.2
-WITHFLUID=without
-ldd $BIN_NAME | grep -q libSDL2 && SDLVER=2.0
-ldd $BIN_NAME | grep -q libfluidsynth && WITHFLUID=with
+patch -p1 < $CWD/patches/twin_dragon_grp.diff
+
+# 20211030 bkw: make the default video mode 24bpp, in the absence of a
+# config file. This is needed to make the HRP work OOTB. Specifically,
+# the launcher (on my system anyway) doesn't offer any 24bpp modes by
+# default, only 8 and 32. And the HRP *has to have* 24 (no, 32 won't
+# work). It's 2021, I don't think anyone's still using anything that
+# doesn't support 24bpp (at least not in a desktop/laptop PC running
+# Slackware). Thanks again to orbea for figuring this out.
+sed -i '/ScreenBPP *= *8/s,8,24,' src/config.c
+
+install_exe() {
+ install -s -m0755 -oroot -groot "$@"
+}
+
+runmake() {
+ echo "===> running: make " $@
+ make "$@" \
+ RELEASE=1 \
+ DATADIR=/usr/share/games/$PRGNAM \
+ CFLAGS="$SLKCFLAGS" \
+ CXXFLAGS="$SLKCFLAGS"
+}
+
+runmake
# no 'make install' target
mkdir -p $PKG/usr/games
-install -s -m0755 -oroot -groot $BIN_NAME $PKG/usr/games
-ln -s $BIN_NAME $PKG/usr/games/$PRGNAM
+install_exe sw $PKG/usr/games/$PRGNAM
+install_exe build $PKG/usr/games/$PRGNAM-build
+
+# just for shiggles, include kenbuild in the package:
+make -C jfbuild
+mkdir -p $PKG/usr/libexec/$PRGNAM $PKG/usr/share/games/kenbuild
+install_exe jfbuild/kenbuild-data/game $PKG/usr/libexec/$PRGNAM/kenbuild
+install -m0755 -oroot -groot $CWD/kenbuild.sh $PKG/usr/games/kenbuild
+cp jfbuild/kenbuild-data/*.{map,h,dat} $PKG/usr/share/games/kenbuild
+
+if [ "${TOOLS:-no}" = "yes" ]; then
+ runmake -C jfbuild utils
+ # the set of available tools changes sometimes, don't let the build
+ # fail because one tool is gone in a new release.
+ for i in arttool kextract kgroup transpal wad2art wad2map; do
+ if [ -x jfbuild/$i ]; then
+ install_exe jfbuild/$i $PKG/usr/games/$i
+ else
+ echo "!!! $i didn't get built, investigate!"
+ fi
+ done
+fi
-# Data directory included in package, even though we don't include data file.
-# Why? Because the user might be grabbing sw.grp from a retail CD-ROM, and
-# if this dir doesn't exist, he might get confused...
+# Data directory included in package, even though we don't include
+# data files. Why? Because the user might be grabbing sw.grp from
+# a retail CD-ROM, and if this dir doesn't exist, he might get
+# confused...
mkdir -p $PKG/usr/share/games/$PRGNAM
-# Icon taken from the highres pack, highres/screen/menu/2870.png
+# There's an .ico icon, but it maxes out at 48x48.
+# This icon made from highres/screen/menu/2324.png in the highres pack,
+# by copying just the yinyang logo.
+for px in 16 32 48 64 128; do
+ size=${px}x${px}
+ dir=$PKG/usr/share/icons/hicolor/$size/apps
+ mkdir -p $dir
+ convert -resize $size $CWD/$PRGNAM.png $dir/$PRGNAM.png
+done
+
mkdir -p $PKG/usr/share/pixmaps
-cat $CWD/$PRGNAM.png > $PKG/usr/share/pixmaps/$PRGNAM.png
+ln -s ../icons/hicolor/48x48/apps/$PRGNAM.png $PKG/usr/share/pixmaps/$PRGNAM.png
-mkdir -p $PKG/usr/share/applications
-cat $CWD/$PRGNAM.desktop > $PKG/usr/share/applications/$PRGNAM.desktop
+DESKTOPDIR=$PKG/usr/share/applications
+mkdir -p $DESKTOPDIR
+for i in $CWD/desktop/*.desktop; do
+ cat $i > $DESKTOPDIR/$( basename $i )
+done
mkdir -p $PKG/usr/doc/$PRGNAM-$VERSION
-cp -a GNU.TXT readme.txt releasenotes.html $PKG/usr/doc/$PRGNAM-$VERSION
+cp -a GPL.TXT README.md releasenotes.html $PKG/usr/doc/$PRGNAM-$VERSION
cat $CWD/$PRGNAM.SlackBuild > $PKG/usr/doc/$PRGNAM-$VERSION/$PRGNAM.SlackBuild
cat $CWD/README > $PKG/usr/doc/$PRGNAM-$VERSION/README_SBo.txt
mkdir -p $PKG/install
-sed -e "s,@WITHFLUID@,$WITHFLUID," \
- -e "s,@SDLVER@,$SDLVER, " \
- $CWD/slack-desc > $PKG/install/slack-desc
+cat $CWD/slack-desc > $PKG/install/slack-desc
cat $CWD/doinst.sh > $PKG/install/doinst.sh
cd $PKG
-/sbin/makepkg -l y -c n $OUTPUT/$PRGNAM-$VERSION-$ARCH-$BUILD$TAG.${PKGTYPE:-tgz}
+/sbin/makepkg -l y -c n $OUTPUT/$PRGNAM-$VERSION-$ARCH-$BUILD$TAG.$PKGTYPE
diff --git a/games/jfsw/jfsw.desktop b/games/jfsw/jfsw.desktop
deleted file mode 100644
index 39fa3cba51..0000000000
--- a/games/jfsw/jfsw.desktop
+++ /dev/null
@@ -1,7 +0,0 @@
-[Desktop Entry]
-Name=JFShadowWarrior
-Icon=jfsw
-Exec=/usr/games/sw
-Terminal=false
-Type=Application
-Categories=Game;ActionGame;
diff --git a/games/jfsw/jfsw.info b/games/jfsw/jfsw.info
index 986bec380b..f2deaea354 100644
--- a/games/jfsw/jfsw.info
+++ b/games/jfsw/jfsw.info
@@ -1,16 +1,10 @@
PRGNAM="jfsw"
-VERSION="20180424_8fc2d54"
+VERSION="20210725_716e1e3"
HOMEPAGE="http://www.jonof.id.au/jfsw"
-DOWNLOAD="https://github.com/jonof/jfsw/archive/8fc2d54/jfsw-8fc2d549d4ad840021da40e9021c6a2b891f41c2.tar.gz \
- https://github.com/jonof/jfaudiolib/archive/94ea357/jfaudiolib-94ea3575592fa7730e32ac8c6bc383639eafecf8.tar.gz \
- https://github.com/jonof/jfbuild/archive/9fd9fc3/jfbuild-9fd9fc3ca880966df78249cd6d8463de26a73351.tar.gz \
- https://github.com/jonof/jfmact/archive/f915216/jfmact-f915216973de73c42c326fdd3b1734ac12316427.tar.gz"
-MD5SUM="def769103d62b71e05f0678a836be271 \
- 57f8c038767447236103c75da87bdd56 \
- 7a6a40a506f69b2f1617a142ae4e18c1 \
- ad429cc636cba0c265a857c138a92a9d"
+DOWNLOAD="https://slackware.uk/~urchlay/src/jfsw-20210725_716e1e3.tar.xz"
+MD5SUM="034fcfdafda31ee5968cd7ae5484b515"
DOWNLOAD_x86_64=""
MD5SUM_x86_64=""
REQUIRES=""
MAINTAINER="B. Watson"
-EMAIL="yalhcru@gmail.com"
+EMAIL="urchlay@slackware.uk"
diff --git a/games/jfsw/jfsw.png b/games/jfsw/jfsw.png
index d3fb98ee36..5e86b34e7e 100644
--- a/games/jfsw/jfsw.png
+++ b/games/jfsw/jfsw.png
Binary files differ
diff --git a/games/jfsw/kenbuild.sh b/games/jfsw/kenbuild.sh
new file mode 100644
index 0000000000..1daaa81027
--- /dev/null
+++ b/games/jfsw/kenbuild.sh
@@ -0,0 +1,12 @@
+#!/bin/bash
+
+# wrapper script for kenbuild, part of jfsw SlackBuild on SBo.
+
+set -e
+mkdir -p ~/.kenbuild
+cd ~/.kenbuild
+for i in /usr/share/games/kenbuild/*; do
+ [ -e "$( basename $i )" ] || ln -s $i .
+done
+
+exec /usr/libexec/jfsw/kenbuild "$@"
diff --git a/games/jfsw/patches/disable_fluid.diff b/games/jfsw/patches/disable_fluid.diff
deleted file mode 100644
index 970e8bd67a..0000000000
--- a/games/jfsw/patches/disable_fluid.diff
+++ /dev/null
@@ -1,12 +0,0 @@
-diff -Naur jfsw.orig/jfaudiolib/Makefile.shared jfsw/jfaudiolib/Makefile.shared
---- jfsw.orig/jfaudiolib/Makefile.shared 2017-02-02 07:22:54.000000000 -0500
-+++ jfsw/jfaudiolib/Makefile.shared 2018-07-12 15:25:01.996310856 -0400
-@@ -30,8 +30,4 @@
- JFAUDIOLIB_LDFLAGS+= $(shell pkg-config --libs alsa)
- JFAUDIOLIB_LDFLAGS+=-lpthread
- endif
-- ifeq (yes,$(shell pkg-config --exists fluidsynth && echo yes))
-- JFAUDIOLIB_HAVE_FLUIDSYNTH=1
-- JFAUDIOLIB_LDFLAGS+= $(shell pkg-config --libs fluidsynth)
-- endif
- endif
diff --git a/games/jfsw/patches/disable_sdl2.diff b/games/jfsw/patches/disable_sdl2.diff
deleted file mode 100644
index 4254028826..0000000000
--- a/games/jfsw/patches/disable_sdl2.diff
+++ /dev/null
@@ -1,31 +0,0 @@
-diff -Naur jfsw.orig2/jfaudiolib/Makefile.shared jfsw/jfaudiolib/Makefile.shared
---- jfsw.orig2/jfaudiolib/Makefile.shared 2018-07-12 15:44:51.443280637 -0400
-+++ jfsw/jfaudiolib/Makefile.shared 2018-07-12 15:43:41.666282410 -0400
-@@ -16,15 +16,10 @@
- JFAUDIOLIB_HAVE_VORBIS=1
- JFAUDIOLIB_LDFLAGS+= $(shell pkg-config --libs vorbisfile)
- endif
-- ifeq (yes,$(shell pkg-config --exists sdl2 && echo yes))
-- JFAUDIOLIB_HAVE_SDL=2
-- JFAUDIOLIB_LDFLAGS+= $(shell pkg-config --libs sdl2)
-- else
- ifeq (yes,$(shell pkg-config --exists sdl && echo yes))
- JFAUDIOLIB_HAVE_SDL=1
- JFAUDIOLIB_LDFLAGS+= $(shell pkg-config --libs sdl)
- endif
-- endif
- ifeq (yes,$(shell pkg-config --exists alsa && echo yes))
- JFAUDIOLIB_HAVE_ALSA=1
- JFAUDIOLIB_LDFLAGS+= $(shell pkg-config --libs alsa)
-diff -Naur jfsw.orig2/jfbuild/Makefile.shared jfsw/jfbuild/Makefile.shared
---- jfsw.orig2/jfbuild/Makefile.shared 2017-02-04 02:45:28.000000000 -0500
-+++ jfsw/jfbuild/Makefile.shared 2018-07-12 15:51:08.320271062 -0400
-@@ -9,7 +9,7 @@
- GLLIBLIN=-lGL
-
- SDLCONFIG=$(shell which sdl-config)
--SDL2CONFIG=$(shell which sdl2-config)
-+SDL2CONFIG=
-
- # Path to the included libsquish
- LIBSQUISH=libsquish
diff --git a/games/jfsw/patches/dont_use_jack.diff b/games/jfsw/patches/dont_use_jack.diff
index 35dcbdb017..f02a83aaf4 100644
--- a/games/jfsw/patches/dont_use_jack.diff
+++ b/games/jfsw/patches/dont_use_jack.diff
@@ -1,10 +1,10 @@
-diff -Naur jfsw.orig/jfaudiolib/src/driver_fluidsynth.c jfsw/jfaudiolib/src/driver_fluidsynth.c
---- jfsw.orig/jfaudiolib/src/driver_fluidsynth.c 2017-02-02 07:22:54.000000000 -0500
-+++ jfsw/jfaudiolib/src/driver_fluidsynth.c 2018-07-12 05:08:37.119250512 -0400
-@@ -342,6 +342,10 @@
+diff -Naur jfsw-20210725_716e1e3/jfaudiolib/src/driver_fluidsynth.c jfsw-20210725_716e1e3.patched/jfaudiolib/src/driver_fluidsynth.c
+--- jfsw-20210725_716e1e3/jfaudiolib/src/driver_fluidsynth.c 2021-10-28 17:13:18.000000000 -0400
++++ jfsw-20210725_716e1e3.patched/jfaudiolib/src/driver_fluidsynth.c 2021-10-29 02:12:45.665659393 -0400
+@@ -371,6 +371,10 @@
return FSynthErr_Error;
}
-
+
+ /* 20180712 bkw: don't try to use JACK (it doesn't work) */
+ if(fluid_settings_str_equal(fluidsettings, "audio.driver", "jack"))
+ fluid_settings_setstr(fluidsettings, "audio.driver", "alsa");
diff --git a/games/jfsw/patches/fixsegfault.diff b/games/jfsw/patches/fixsegfault.diff
deleted file mode 100644
index 9290ffef96..0000000000
--- a/games/jfsw/patches/fixsegfault.diff
+++ /dev/null
@@ -1,12 +0,0 @@
-diff -Naur jfsw.orig/src/menus.c jfsw/src/menus.c
---- jfsw.orig/src/menus.c 2017-03-24 23:22:17.000000000 -0400
-+++ jfsw/src/menus.c 2018-07-10 22:51:52.032019948 -0400
-@@ -2540,7 +2540,7 @@
- CONTROL_ClearUserInput(&mnu_input);
- CONTROL_GetUserInput(&mnu_input);
-
-- if (KB_KeyPressed(sc_Y) || KB_KeyPressed(sc_Enter) || mnu_input.button0)
-+ if (KB_KeyPressed(sc_Y) || KB_KeyPressed(sc_Enter))
- return (TRUE);
- else
- return (FALSE);
diff --git a/games/jfsw/patches/sdl1_fix.diff b/games/jfsw/patches/sdl1_fix.diff
deleted file mode 100644
index 1e68caab33..0000000000
--- a/games/jfsw/patches/sdl1_fix.diff
+++ /dev/null
@@ -1,12 +0,0 @@
-diff -Naur jfsw.orig/jfaudiolib/Makefile.shared jfsw/jfaudiolib/Makefile.shared
---- jfsw.orig/jfaudiolib/Makefile.shared 2017-02-02 07:22:54.000000000 -0500
-+++ jfsw/jfaudiolib/Makefile.shared 2018-07-12 15:31:55.593300348 -0400
-@@ -22,7 +22,7 @@
- else
- ifeq (yes,$(shell pkg-config --exists sdl && echo yes))
- JFAUDIOLIB_HAVE_SDL=1
-- JFAUDIOLIB_LDFLAGS+= $(shell pkg-config --libs sdl1)
-+ JFAUDIOLIB_LDFLAGS+= $(shell pkg-config --libs sdl)
- endif
- endif
- ifeq (yes,$(shell pkg-config --exists alsa && echo yes))
diff --git a/games/jfsw/patches/sdl_cdrom_fix.diff b/games/jfsw/patches/sdl_cdrom_fix.diff
deleted file mode 100644
index bffad4a76b..0000000000
--- a/games/jfsw/patches/sdl_cdrom_fix.diff
+++ /dev/null
@@ -1,20 +0,0 @@
-diff -Naur jfsw.orig/jfaudiolib/src/driver_sdl.c jfsw/jfaudiolib/src/driver_sdl.c
---- jfsw.orig/jfaudiolib/src/driver_sdl.c 2017-02-02 07:22:54.000000000 -0500
-+++ jfsw/jfaudiolib/src/driver_sdl.c 2018-07-12 17:08:14.907153516 -0400
-@@ -375,6 +375,7 @@
- int SDLDrv_CD_Init(void)
- {
- #if (SDL_MAJOR_VERSION == 1)
-+ CDstatus status;
- Uint32 inited;
- Uint32 err = 0;
- int i;
-@@ -407,6 +408,8 @@
- return SDLErr_Error;
- }
-
-+ status = SDL_CDStatus(CDRom);
-+
- fprintf(stderr, "SDL_CD: numtracks: %d\n", CDRom->numtracks);
- for (i = 0; i < CDRom->numtracks; i++) {
- fprintf(stderr, "SDL_CD: track %d - %s, %dsec\n",
diff --git a/games/jfsw/patches/twin_dragon_grp.diff b/games/jfsw/patches/twin_dragon_grp.diff
new file mode 100644
index 0000000000..a83d0bb0d4
--- /dev/null
+++ b/games/jfsw/patches/twin_dragon_grp.diff
@@ -0,0 +1,11 @@
+diff -Naur jfsw-20210725_716e1e3/src/grpscan.c jfsw-20210725_716e1e3.patched/src/grpscan.c
+--- jfsw-20210725_716e1e3/src/grpscan.c 2021-10-28 17:13:15.000000000 -0400
++++ jfsw-20210725_716e1e3.patched/src/grpscan.c 2021-10-29 02:06:21.962684518 -0400
+@@ -35,6 +35,7 @@
+ { "Registered Version", 0x7545319F, 47536148, 0, "sw.grp", NULL, NULL },
+ { "Shareware Version", 0x08A7FA1F, 26056769, 0, "swshare.grp", NULL, NULL },
+ { "Wanton Destruction (Addon)", 0xA9AAA7B7, 48698128, 0, "wt.grp", NULL, NULL },
++ { "Twin Dragon (Addon)", 0xe06cb6b4, 53480783, 0, "td.grp", NULL, NULL },
+ { NULL, 0, 0, 0, NULL, NULL, NULL },
+ };
+ struct grpfile *foundgrps = NULL;
diff --git a/games/jfsw/slack-desc b/games/jfsw/slack-desc
index 1dc31d5144..7f466bba1c 100644
--- a/games/jfsw/slack-desc
+++ b/games/jfsw/slack-desc
@@ -12,7 +12,7 @@ jfsw: The aim of this port is to present Shadow Warrior as closely as
jfsw: possible to the original game while adding optional features to expand
jfsw: the possibilities of the game.
jfsw:
-jfsw: Package built with SDL @SDLVER@ and @WITHFLUID@ fluidsynth.
+jfsw:
jfsw:
jfsw:
jfsw:
diff --git a/games/jfsw/twin_dragon_grp.diff b/games/jfsw/twin_dragon_grp.diff
deleted file mode 100644
index 1b4a1ce07e..0000000000
--- a/games/jfsw/twin_dragon_grp.diff
+++ /dev/null
@@ -1,23 +0,0 @@
-diff -Naur jfsw-8fc2d549d4ad840021da40e9021c6a2b891f41c2/src/grpscan.c jfsw-8fc2d549d4ad840021da40e9021c6a2b891f41c2.patched/src/grpscan.c
---- jfsw-8fc2d549d4ad840021da40e9021c6a2b891f41c2/src/grpscan.c 2017-03-24 23:22:17.000000000 -0400
-+++ jfsw-8fc2d549d4ad840021da40e9021c6a2b891f41c2.patched/src/grpscan.c 2020-04-28 20:48:40.091365360 -0400
-@@ -34,6 +34,7 @@
- { "Registered Version", 0x7545319F, 47536148, NULL },
- { "Shareware Version", 0x08A7FA1F, 26056769, NULL },
- { "Wanton Destruction (Addon)", 0xA9AAA7B7, 48698128, NULL },
-+ { "Twin Dragon (Addon)", 0xe06cb6b4, 53480783 },
- };
- struct grpfile *foundgrps = NULL;
-
-diff -Naur jfsw-8fc2d549d4ad840021da40e9021c6a2b891f41c2/src/grpscan.h jfsw-8fc2d549d4ad840021da40e9021c6a2b891f41c2.patched/src/grpscan.h
---- jfsw-8fc2d549d4ad840021da40e9021c6a2b891f41c2/src/grpscan.h 2017-03-24 23:22:17.000000000 -0400
-+++ jfsw-8fc2d549d4ad840021da40e9021c6a2b891f41c2.patched/src/grpscan.h 2020-04-28 20:52:36.787343843 -0400
-@@ -25,7 +25,7 @@
- #define __grpscan_h__
-
- // List of internally-known GRP files
--#define numgrpfiles 3
-+#define numgrpfiles 4
- struct grpfile {
- const char *name;
- int crcval;
diff --git a/games/jfsw_demo_data/README b/games/jfsw_demo_data/README
index f1cf3d0361..240c3d920f 100644
--- a/games/jfsw_demo_data/README
+++ b/games/jfsw_demo_data/README
@@ -13,5 +13,3 @@ The jfsw launcher supports both the demo (jfsw_demo_data) version
and the full version (jfsw_registered_data). Since the full version
includes the levels from the demo version (as Episode 1), there's no
need to install both on the same system, although this is supported.
-
-This package can't be used with jfsw_hires_pack.
diff --git a/games/jfsw_demo_data/jfsw_demo_data.SlackBuild b/games/jfsw_demo_data/jfsw_demo_data.SlackBuild
index a0bcbbc2e2..082c20f498 100644
--- a/games/jfsw_demo_data/jfsw_demo_data.SlackBuild
+++ b/games/jfsw_demo_data/jfsw_demo_data.SlackBuild
@@ -1,56 +1,65 @@
-#!/bin/sh
+#!/bin/bash
# Slackware build script for jfsw_demo_data
-# Written by B. Watson (yalhcru@gmail.com)
+# Written by B. Watson (urchlay@slackware.uk)
# Licensed under the WTFPL. See http://www.wtfpl.net/txt/copying/ for details.
+# 20211031 bkw: BUILD=3
+# - remove "can't be used with jfsw_hires_pack" from README, since
+# it's no longer true.
+# - simplify script.
+# - only extract the files we need from the zipfiles.
+# - let unzip do the CRLF conversions.
+# - preserve timestamps (minor detail I know).
+
# 20180714 bkw:
# - updated slightly, to coexist with jfsw_registered_data.
# - get rid of LFs in text files, rename to lowercase.
+cd $(dirname $0) ; CWD=$(pwd)
+
PRGNAM=jfsw_demo_data
VERSION=${VERSION:-1.2}
ARCH=noarch
-BUILD=${BUILD:-2}
+BUILD=${BUILD:-3}
TAG=${TAG:-_SBo}
+PKGTYPE=${PKGTYPE:-tgz}
+
+if [ ! -z "${PRINT_PACKAGE_NAME}" ]; then
+ echo "$PRGNAM-$VERSION-$ARCH-$BUILD$TAG.$PKGTYPE"
+ exit 0
+fi
-CWD=$(pwd)
TMP=${TMP:-/tmp/SBo}
PKG=$TMP/package-$PRGNAM
OUTPUT=${OUTPUT:-/tmp}
ZIPFILE1=${ZIPFILE1:-3dsw12.zip}
ZIPFILE2=${ZIPFILE2:-SWSW12.SHR}
-GRPFILE=${GRPFILE:-SW.GRP}
+GRPFILE=${GRPFILE:-sw.grp}
+PKGDOC=$PKG/usr/doc/$PRGNAM-$VERSION
+GAMEDIR=$PKG/usr/share/games/jfsw
+GRPDEST=sw_demo.grp
set -e
rm -rf $TMP/$PRGNAM $PKG
-mkdir -p $TMP/$PRGNAM $PKG $OUTPUT
+mkdir -p $TMP/$PRGNAM $OUTPUT $GAMEDIR $PKGDOC $PKG/install
cd $TMP/$PRGNAM
-unzip $CWD/$ZIPFILE1
-unzip -o $ZIPFILE2
+unzip $CWD/$ZIPFILE1 $ZIPFILE2
+unzip -LL -a -o $ZIPFILE2 '*.grp' '*.txt'
chown -R root:root .
-find -L . \
- \( -perm 777 -o -perm 775 -o -perm 750 -o -perm 711 -o -perm 555 -o -perm 511 \) \
- -exec chmod 755 {} \+ -o \
- \( -perm 666 -o -perm 664 -o -perm 600 -o -perm 444 -o -perm 440 -o -perm 400 \) \
- -exec chmod 644 {} \+
-
-mkdir -p $PKG/usr/share/games/jfsw
-cat $GRPFILE > $PKG/usr/share/games/jfsw/sw_demo.grp
-
-mkdir -p $PKG/usr/doc/$PRGNAM-$VERSION
-for i in *.TXT; do
- sed 's,\r,,' < $i > $PKG/usr/doc/$PRGNAM-$VERSION/$( echo $i | tr A-Z a-z )
-done
-cat $CWD/$PRGNAM.SlackBuild > $PKG/usr/doc/$PRGNAM-$VERSION/$PRGNAM.SlackBuild
-
-mkdir -p $PKG/install
+chmod 644 *
+
+cp -a $GRPFILE $GAMEDIR/$GRPDEST
+cp -a *.txt $PKGDOC
+
+cat $CWD/$PRGNAM.SlackBuild > $PKGDOC/$PRGNAM.SlackBuild
+
cat $CWD/slack-desc > $PKG/install/slack-desc
cat $CWD/doinst.sh > $PKG/install/doinst.sh
cd $PKG
-/sbin/makepkg -l y -c n $OUTPUT/$PRGNAM-$VERSION-$ARCH-$BUILD$TAG.${PKGTYPE:-tgz}
+/sbin/makepkg -l y -c n $OUTPUT/$PRGNAM-$VERSION-$ARCH-$BUILD$TAG.$PKGTYPE
diff --git a/games/jfsw_demo_data/jfsw_demo_data.info b/games/jfsw_demo_data/jfsw_demo_data.info
index 68eb7aa5eb..6b8ccec060 100644
--- a/games/jfsw_demo_data/jfsw_demo_data.info
+++ b/games/jfsw_demo_data/jfsw_demo_data.info
@@ -1,10 +1,10 @@
PRGNAM="jfsw_demo_data"
VERSION="1.2"
-HOMEPAGE="http://legacy.3drealms.com/sw/"
+HOMEPAGE="https://legacy.3drealms.com/sw/"
DOWNLOAD="ftp://ftp.3drealms.com/share/3dsw12.zip"
MD5SUM="d77564e8764feeb1509dd0d534fb8952"
DOWNLOAD_x86_64=""
MD5SUM_x86_64=""
REQUIRES="jfsw"
MAINTAINER="B. Watson"
-EMAIL="yalhcru@gmail.com"
+EMAIL="urchlay@slackware.uk"
diff --git a/games/jfsw_hires_pack/README b/games/jfsw_hires_pack/README
index b606accb6d..7f7d5afcb9 100644
--- a/games/jfsw_hires_pack/README
+++ b/games/jfsw_hires_pack/README
@@ -1,14 +1,8 @@
-jfsw_hires_pack (graphic enhancements for jfsw)
+jfsw_hires_pack (graphic enhancements for jfsw and voidsw)
-This adds high resolution textures and 3D models to Shadow Warrior. For
-use with slackbuilds.org jfsw package.
+This adds high resolution textures and 3D models to Shadow
+Warrior. For use with slackbuilds.org jfsw or eduke32 packages.
-*** NOTE:
-*** The data file "sw.grp" from the full retail version is *required*
-*** to use this package; it will NOT work with the shareware/demo
-*** version. If you get a segfault at startup, the game is using the
-*** shareware sw.grp.
-
-If you have jfsw_demo_data installed, remove it with removepkg, and copy
-sw.grp from the full version to "/usr/share/games/jfsw/sw.grp". If you
-do not have the full version of the game, you can't use this package!
+There is a known issue with jfsw: the sword doesn't display
+properly. It looks like half a sword. This has been a known issue for
+some time now.
diff --git a/games/jfsw_hires_pack/jfsw_hires_pack.SlackBuild b/games/jfsw_hires_pack/jfsw_hires_pack.SlackBuild
index a0b38cc7d1..ff3a9f2582 100644
--- a/games/jfsw_hires_pack/jfsw_hires_pack.SlackBuild
+++ b/games/jfsw_hires_pack/jfsw_hires_pack.SlackBuild
@@ -1,50 +1,61 @@
-#!/bin/sh
+#!/bin/bash
# Slackware build script for jfsw_hires_pack
-# Written by B. Watson (yalhcru@gmail.com)
+# Written by B. Watson (urchlay@slackware.uk)
# Licensed under the WTFPL. See http://www.wtfpl.net/txt/copying/ for details.
+# 20211030 bkw: update for v20201205_r21.
+# - source is now made from upstream SVN, see svn2tarxz.sh.
+# - HRP works with shareware .grp now, get rid of warning.
+# - use correct homepage.
+# - fix CRLF endings in docs.
+# - add README note about the truncated sword.
+
+cd $(dirname $0) ; CWD=$(pwd)
+
PRGNAM=jfsw_hires_pack
-VERSION=${VERSION:-2.1}
+VERSION=${VERSION:-20201205_r21}
ARCH=noarch
BUILD=${BUILD:-1}
TAG=${TAG:-_SBo}
+PKGTYPE=${PKGTYPE:-tgz}
+
+if [ ! -z "${PRINT_PACKAGE_NAME}" ]; then
+ echo "$PRGNAM-$VERSION-$ARCH-$BUILD$TAG.$PKGTYPE"
+ exit 0
+fi
-CWD=$(pwd)
TMP=${TMP:-/tmp/SBo}
PKG=$TMP/package-$PRGNAM
OUTPUT=${OUTPUT:-/tmp}
-ZIPFILE1=Sw_Hrp_v$( echo $VERSION | sed 's/\.//g' ).zip
-ZIPFILE2=Swp_Users.zip
-
set -e
rm -rf $PKG
-mkdir -p $PKG/usr/share/games/jfsw $OUTPUT
-cd $PKG/usr/share/games/jfsw
-unzip $CWD/Sw_Hrp_v21.zip
-unzip $CWD/Swp_Users.zip
-unzip Sw_Hrp.zip
-rm -f Sw_Hrp.zip
-
-# The HRP was built on Windows (non-case-sensitive filesystem). Have to
-# fix a few things to get it working on a proper filesystem.
-mv highres/Sw.def sw.def
-mv User.def user.def
-rename KVX kvx highres/sprites/voxels/*.KVX
-# TODO: what about highres/skyboxes/Sky_Stars ?
-
+mkdir -p $PKG/usr/share/games $OUTPUT
+cd $PKG/usr/share/games
+tar xvf $CWD/$PRGNAM-$VERSION.tar.xz
+mv $PRGNAM-$VERSION jfsw
+cd jfsw
chown -R root:root .
-find -L . \
- \( -perm 777 -o -perm 775 -o -perm 750 -o -perm 711 -o -perm 555 -o -perm 511 \) \
- -exec chmod 755 {} \; -o \
- \( -perm 666 -o -perm 664 -o -perm 600 -o -perm 444 -o -perm 440 -o -perm 400 \) \
- -exec chmod 644 {} \;
+find . -type f -exec chmod 644 {} \+
+find . -type d -exec chmod 755 {} \+
+
+rm -f *.bat
+
+# jfsw will read <foo>.def whenever it loads <foo>.grp. it also
+# always reads sw.def. so this seems to be the correct way to
+# name these so they'll get auto-loaded.
+mv tdragon.def td.def
+mv wanton.def wd.def
+
+# TODO: what about highres/skyboxes/Sky_Stars? Nothing in any of the
+# .def files references it.
mkdir -p $PKG/usr/doc/$PRGNAM-$VERSION
+sed -i 's,\r,,' *.txt
mv *.txt $PKG/usr/doc/$PRGNAM-$VERSION
cat $CWD/$PRGNAM.SlackBuild > $PKG/usr/doc/$PRGNAM-$VERSION/$PRGNAM.SlackBuild
@@ -52,4 +63,4 @@ mkdir -p $PKG/install
cat $CWD/slack-desc > $PKG/install/slack-desc
cd $PKG
-/sbin/makepkg -l y -c n $OUTPUT/$PRGNAM-$VERSION-$ARCH-$BUILD$TAG.${PKGTYPE:-tgz}
+/sbin/makepkg -l y -c n $OUTPUT/$PRGNAM-$VERSION-$ARCH-$BUILD$TAG.$PKGTYPE
diff --git a/games/jfsw_hires_pack/jfsw_hires_pack.info b/games/jfsw_hires_pack/jfsw_hires_pack.info
index 10bb9ac457..8f18ffbadc 100644
--- a/games/jfsw_hires_pack/jfsw_hires_pack.info
+++ b/games/jfsw_hires_pack/jfsw_hires_pack.info
@@ -1,12 +1,10 @@
PRGNAM="jfsw_hires_pack"
-VERSION="2.1"
-HOMEPAGE="http://www.proasm.com/sw/swdls.html"
-DOWNLOAD="http://www.proasm.com/files/sw/Sw_Hrp_v21.zip \
- http://www.proasm.com/files/sw/Swp_Users.zip"
-MD5SUM="6163810b5aae667676ebcb27c93e7584 \
- 8305574a636f091ab8f14fccc9478a5f"
+VERSION="20201205_r21"
+HOMEPAGE="https://forums.duke4.net/topic/3412-shadow-warrior-high-resolution-pack/"
+DOWNLOAD="https://slackware.uk/~urchlay/src/jfsw_hires_pack-20201205_r21.tar.xz"
+MD5SUM="ff7879eeeff77170ccd08eb07d11c051"
DOWNLOAD_x86_64=""
MD5SUM_x86_64=""
-REQUIRES="jfsw"
+REQUIRES=""
MAINTAINER="B. Watson"
-EMAIL="yalhcru@gmail.com"
+EMAIL="urchlay@slackware.uk"
diff --git a/games/jfsw_hires_pack/slack-desc b/games/jfsw_hires_pack/slack-desc
index 460ac770e2..a62f2ede67 100644
--- a/games/jfsw_hires_pack/slack-desc
+++ b/games/jfsw_hires_pack/slack-desc
@@ -6,14 +6,14 @@
# customary to leave one space after the ':' except on otherwise blank lines.
|-----handy-ruler------------------------------------------------------|
-jfsw_hires_pack: jfsw_hires_pack (graphic enhancements for jfsw)
+jfsw_hires_pack: jfsw_hires_pack (graphic enhancements for jfsw and voidsw)
jfsw_hires_pack:
-jfsw_hires_pack: This adds high resolution textures and 3D models to Shadow Warrior.
+jfsw_hires_pack: This adds high resolution textures and 3D models to Shadow
+jfsw_hires_pack: Warrior. For use with slackbuilds.org jfsw or eduke32 packages.
jfsw_hires_pack:
-jfsw_hires_pack: *** NOTE:
-jfsw_hires_pack: *** The data file "sw.grp" from the full retail version is *required*
-jfsw_hires_pack: *** to use this package; it will NOT work with the shareware/demo
-jfsw_hires_pack: *** version.
+jfsw_hires_pack: There is a known issue with jfsw: the sword doesn't display
+jfsw_hires_pack: properly. It looks like half a sword. This has been a known issue for
+jfsw_hires_pack: some time now.
jfsw_hires_pack:
jfsw_hires_pack:
jfsw_hires_pack:
diff --git a/games/jfsw_hires_pack/svn2tarxz.sh b/games/jfsw_hires_pack/svn2tarxz.sh
new file mode 100644
index 0000000000..a6fcf3eedb
--- /dev/null
+++ b/games/jfsw_hires_pack/svn2tarxz.sh
@@ -0,0 +1,28 @@
+#!/bin/bash
+
+# create a source tarball from upstream's SVN repo.
+# this would be easier, with git.
+
+PRGNAM=jfsw_hires_pack
+URL=http://svn.eduke32.com/sw_hrp/
+
+rm -rf sw_hrp
+svn co $URL
+
+cd sw_hrp
+
+svn log -l 1 | grep '^r[0-9]' > logtmp
+
+DATE=$( grep '^r[0-9]' logtmp | cut -d'|' -f3 | cut -d' ' -f2 | sed 's,-,,g' )
+REV=$( cut -d' ' -f1 logtmp )
+VERSION="${DATE}_$REV"
+DIR=$PRGNAM-$VERSION
+
+rm -rf .svn logtmp
+
+cd -
+rm -rf $DIR $DIR.tar.xz
+mv sw_hrp $DIR
+tar cvfJ $DIR.tar.xz $DIR
+echo
+md5sum $DIR.tar.xz
diff --git a/games/jfsw_registered_data/README b/games/jfsw_registered_data/README
index af00313be9..06810a1b55 100644
--- a/games/jfsw_registered_data/README
+++ b/games/jfsw_registered_data/README
@@ -19,4 +19,9 @@ need to install both on the same system, although this is supported.
While the package is being built, up to 1GB of space in /tmp (or $TMP)
will be used.
-See also: games/jfsw_wanton_destruction
+The .ogg files are encoded with oggenc, with the -q (quality) option
+set to 7 by default. If you want, you can change the quality setting
+by exporting OGGQUAL=<number> in the environment (see the -q option in
+oggenc's man page for an explanation).
+
+See also: jfsw_hires_pack, jfsw_wanton_destruction, jfsw_twin_dragon
diff --git a/games/jfsw_registered_data/extract-shadow-warrior.sh b/games/jfsw_registered_data/extract-shadow-warrior.sh
index 40d161fe84..c8f3651275 100644
--- a/games/jfsw_registered_data/extract-shadow-warrior.sh
+++ b/games/jfsw_registered_data/extract-shadow-warrior.sh
@@ -1,6 +1,6 @@
#!/bin/sh
-# extract-shadow-warrior.sh, by B. Watson (yalhcru@gmail.com).
+# extract-shadow-warrior.sh, by B. Watson (urchlay@slackware.uk).
# Licensed under the WTFPL: Do WTF you want with this. See
# http://www.wtfpl.net/txt/copying/ for details.
@@ -66,6 +66,6 @@ for cue_out in tmpcue??.cue; do
rm -f track??.wav
binfile="$( head -1 "$cue_out" | cut -d\" -f2 )"
bchunk -w "$binfile" "$cue_out" track
- [ -e track??.wav ] && oggenc -q 7 track??.wav && rm -f track??.wav
+ [ -e track??.wav ] && oggenc -q ${OGGQUAL:-7} track??.wav && rm -f track??.wav
rm -f $cue_out
done
diff --git a/games/jfsw_registered_data/jfsw_registered_data.SlackBuild b/games/jfsw_registered_data/jfsw_registered_data.SlackBuild
index 7dca1ca210..04dbe21d91 100644
--- a/games/jfsw_registered_data/jfsw_registered_data.SlackBuild
+++ b/games/jfsw_registered_data/jfsw_registered_data.SlackBuild
@@ -1,8 +1,8 @@
-#!/bin/sh
+#!/bin/bash
# Slackware build script for jfsw_registered_data
-# Written by B. Watson (yalhcru@gmail.com)
+# Written by B. Watson (urchlay@slackware.uk)
# Licensed under the WTFPL. See http://www.wtfpl.net/txt/copying/ for details.
@@ -10,15 +10,23 @@
# was available from www.oldpcgaming.net from 2014 to late 2019, and
# has been available on archive.org since late 2018.
+# 20211031 bkw: BUILD=3
+# - use iso-read to extract files from the iso, rather than loop-mounting.
+# - CREDITS.TXT => credits.txt.
+# - add OGGQUAL option.
+
# 20200428 bkw: the old .7z from oldpcgaming.net has vanished along
# with the site. Switched to a CD image from archive.org, in bin/cue
# format. More work for this script to do, but as a nice bonus, we get
# the CD audio tracks installed too.
+cd $(dirname $0) ; CWD=$(pwd)
+
PRGNAM=jfsw_registered_data
VERSION=${VERSION:-1.2}
-BUILD=${BUILD:-2}
+BUILD=${BUILD:-3}
TAG=${TAG:-_SBo}
+PKGTYPE=${PKGTYPE:-tgz}
# Depending on what was used to do the download, the %XX hex escapes
# might get interpreted or not, handle either name.
@@ -27,7 +35,12 @@ ZIPNAME1="$SRCNAM.zip"
ZIPNAME2="Shadow%20Warrior%20%28USA%29.zip"
ARCH=noarch
-CWD=$(pwd)
+
+if [ ! -z "${PRINT_PACKAGE_NAME}" ]; then
+ echo "$PRGNAM-$VERSION-$ARCH-$BUILD$TAG.$PKGTYPE"
+ exit 0
+fi
+
TMP=${TMP:-/tmp/SBo}
PKG=$TMP/package-$PRGNAM
OUTPUT=${OUTPUT:-/tmp}
@@ -52,40 +65,30 @@ chmod 644 *
# can possibly make use of it. In fact it's been tested on MacOSX :)
sh $CWD/extract-shadow-warrior.sh "$SRCNAM.cue"
-# Loop mount the iso to extract the stuff we need from it.
-# N.B. sandbox wrappers like sbrun or slackrepo might complain that
-# /etc/mtab has been modified. We could prevent this by using the
-# --no-mtab option with the mount and umount commands below, but
-# if something makes the script die before it's finished, we would
-# have left behind an invisible mount that could cause confusion and
-# irritation later...
-MNTPNT="$( mktemp -d cdmount.XXXXXX )"
-mount -o loop track01.iso $MNTPNT
-
-cd $MNTPNT/swinst
- mkdir -p $PKG/usr/share/games/jfsw
- install -m0644 SW.GRP $PKG/usr/share/games/jfsw/sw_registered.grp
-
- mkdir -p $PKG/usr/doc/$PRGNAM-$VERSION
- for i in CREDITS.TXT license.txt; do
- sed 's,\r,,' < $i > $PKG/usr/doc/$PRGNAM-$VERSION/$( echo $i | tr A-Z a-z )
- done
-cd -
-
-cat $MNTPNT/sw.ico > $PKG/usr/doc/$PRGNAM-$VERSION/sw.ico
-umount $MNTPNT
-rmdir $MNTPNT
+GAMEDIR=$PKG/usr/share/games/jfsw
+PKGDOC=$PKG/usr/doc/$PRGNAM-$VERSION
+mkdir -p $GAMEDIR $PKGDOC
+
+# We just extracted an iso image, now extract files from it.
+# Rather than loop-mounting the iso to extract the files, use
+# iso-read (part of Slackware's libcdio package).
+iso-read -i track01.iso -e swinst/sw.grp -o $GAMEDIR/sw_registered.grp
+iso-read -i track01.iso -e swinst/credits.txt -o $PKGDOC/credits.txt
+iso-read -i track01.iso -e swinst/license.txt -o $PKGDOC/license.txt
+iso-read -i track01.iso -e sw.ico -o $PKGDOC/sw.ico
+
+chmod 644 $PKGDOC/*
+sed -i 's,\r,,' $PKGDOC/*.txt
# Done with the iso, now for the audio tracks (which have already been
# converted to ogg).
-mkdir -p $PKG/usr/share/games/jfsw
-cp track??.ogg $PKG/usr/share/games/jfsw
+cp track??.ogg $GAMEDIR
-cat $CWD/$PRGNAM.SlackBuild > $PKG/usr/doc/$PRGNAM-$VERSION/$PRGNAM.SlackBuild
+cat $CWD/$PRGNAM.SlackBuild > $PKGDOC/$PRGNAM.SlackBuild
mkdir -p $PKG/install
cat $CWD/slack-desc > $PKG/install/slack-desc
cat $CWD/doinst.sh > $PKG/install/doinst.sh
cd $PKG
-/sbin/makepkg -l y -c n $OUTPUT/$PRGNAM-$VERSION-$ARCH-$BUILD$TAG.${PKGTYPE:-tgz}
+/sbin/makepkg -l y -c n $OUTPUT/$PRGNAM-$VERSION-$ARCH-$BUILD$TAG.$PKGTYPE
diff --git a/games/jfsw_registered_data/jfsw_registered_data.info b/games/jfsw_registered_data/jfsw_registered_data.info
index ede16fa8e5..4413fb7726 100644
--- a/games/jfsw_registered_data/jfsw_registered_data.info
+++ b/games/jfsw_registered_data/jfsw_registered_data.info
@@ -7,4 +7,4 @@ DOWNLOAD_x86_64=""
MD5SUM_x86_64=""
REQUIRES="jfsw bchunk"
MAINTAINER="B. Watson"
-EMAIL="yalhcru@gmail.com"
+EMAIL="urchlay@slackware.uk"
diff --git a/games/jfsw_twin_dragon/jfsw_twin_dragon.SlackBuild b/games/jfsw_twin_dragon/jfsw_twin_dragon.SlackBuild
index 47beeabfdb..6ffcb13d7a 100644
--- a/games/jfsw_twin_dragon/jfsw_twin_dragon.SlackBuild
+++ b/games/jfsw_twin_dragon/jfsw_twin_dragon.SlackBuild
@@ -1,19 +1,26 @@
-#!/bin/sh
+#!/bin/bash
# Slackware build script for jfsw_twin_dragon
-# Written by B. Watson (yalhcru@gmail.com)
+# Written by B. Watson (urchlay@slackware.uk)
# Licensed under the WTFPL. See http://www.wtfpl.net/txt/copying/ for details.
+cd $(dirname $0) ; CWD=$(pwd)
+
PRGNAM=jfsw_twin_dragon
VERSION=${VERSION:-20200428}
BUILD=${BUILD:-1}
TAG=${TAG:-_SBo}
+PKGTYPE=${PKGTYPE:-tgz}
ARCH=noarch
-CWD=$(pwd)
+if [ ! -z "${PRINT_PACKAGE_NAME}" ]; then
+ echo "$PRGNAM-$VERSION-$ARCH-$BUILD$TAG.$PKGTYPE"
+ exit 0
+fi
+
TMP=${TMP:-/tmp/SBo}
PKG=$TMP/package-$PRGNAM
OUTPUT=${OUTPUT:-/tmp}
@@ -42,4 +49,4 @@ mkdir -p $PKG/install
cat $CWD/slack-desc > $PKG/install/slack-desc
cd $PKG
-/sbin/makepkg -l y -c n $OUTPUT/$PRGNAM-$VERSION-$ARCH-$BUILD$TAG.${PKGTYPE:-tgz}
+/sbin/makepkg -l y -c n $OUTPUT/$PRGNAM-$VERSION-$ARCH-$BUILD$TAG.$PKGTYPE
diff --git a/games/jfsw_twin_dragon/jfsw_twin_dragon.info b/games/jfsw_twin_dragon/jfsw_twin_dragon.info
index f66d06e64b..00522c3e04 100644
--- a/games/jfsw_twin_dragon/jfsw_twin_dragon.info
+++ b/games/jfsw_twin_dragon/jfsw_twin_dragon.info
@@ -7,4 +7,4 @@ DOWNLOAD_x86_64=""
MD5SUM_x86_64=""
REQUIRES="jfsw"
MAINTAINER="B. Watson"
-EMAIL="yalhcru@gmail.com"
+EMAIL="urchlay@slackware.uk"
diff --git a/games/jfsw_wanton_destruction/jfsw_wanton_destruction.SlackBuild b/games/jfsw_wanton_destruction/jfsw_wanton_destruction.SlackBuild
index 94316c4883..b0cddcd0aa 100644
--- a/games/jfsw_wanton_destruction/jfsw_wanton_destruction.SlackBuild
+++ b/games/jfsw_wanton_destruction/jfsw_wanton_destruction.SlackBuild
@@ -1,8 +1,8 @@
-#!/bin/sh
+#!/bin/bash
# Slackware build script for jfsw_wanton_destruction
-# Written by B. Watson (yalhcru@gmail.com)
+# Written by B. Watson (urchlay@slackware.uk)
# Licensed under the WTFPL. See http://www.wtfpl.net/txt/copying/ for details.
@@ -17,14 +17,21 @@
# registration or even captcha required. I self-hosted the archive to
# guarantee a stable download link.
+cd $(dirname $0) ; CWD=$(pwd)
+
PRGNAM=jfsw_wanton_destruction
VERSION=${VERSION:-20050909}
BUILD=${BUILD:-1}
TAG=${TAG:-_SBo}
+PKGTYPE=${PKGTYPE:-tgz}
ARCH=noarch
-CWD=$(pwd)
+if [ ! -z "${PRINT_PACKAGE_NAME}" ]; then
+ echo "$PRGNAM-$VERSION-$ARCH-$BUILD$TAG.$PKGTYPE"
+ exit 0
+fi
+
TMP=${TMP:-/tmp/SBo}
PKG=$TMP/package-$PRGNAM
OUTPUT=${OUTPUT:-/tmp}
@@ -54,4 +61,4 @@ mkdir -p $PKG/install
cat $CWD/slack-desc > $PKG/install/slack-desc
cd $PKG
-/sbin/makepkg -l y -c n $OUTPUT/$PRGNAM-$VERSION-$ARCH-$BUILD$TAG.${PKGTYPE:-tgz}
+/sbin/makepkg -l y -c n $OUTPUT/$PRGNAM-$VERSION-$ARCH-$BUILD$TAG.$PKGTYPE
diff --git a/games/jfsw_wanton_destruction/jfsw_wanton_destruction.info b/games/jfsw_wanton_destruction/jfsw_wanton_destruction.info
index 7ebe6b3138..c3d50ab0dc 100644
--- a/games/jfsw_wanton_destruction/jfsw_wanton_destruction.info
+++ b/games/jfsw_wanton_destruction/jfsw_wanton_destruction.info
@@ -7,4 +7,4 @@ DOWNLOAD_x86_64=""
MD5SUM_x86_64=""
REQUIRES="jfsw"
MAINTAINER="B. Watson"
-EMAIL="yalhcru@gmail.com"
+EMAIL="urchlay@slackware.uk"
diff --git a/games/jg-bsnes/README b/games/jg-bsnes/README
new file mode 100644
index 0000000000..55532e75d4
--- /dev/null
+++ b/games/jg-bsnes/README
@@ -0,0 +1,11 @@
+jg-bsnes (Super Nintendo emulation core for Jolly Good Emulation)
+
+jg-bsnes is a cycle accurate emulator for the Super Famicom/Super
+Nintendo Entertainment System, including support for the Super Game
+Boy, BS-X Satellaview, and Sufami Turbo. This is a fork of bsnes v115.
+
+Filenames supported: .sfc .smc .bs .st .fig .swc
+To run files with other extensions: jollygood -c bsnes <filename>
+
+By default, no controls are mapped. The first time you run a game,
+press Shift-1 to configure the first controller.
diff --git a/games/jg-bsnes/jg-bsnes.SlackBuild b/games/jg-bsnes/jg-bsnes.SlackBuild
new file mode 100644
index 0000000000..f49ca23e04
--- /dev/null
+++ b/games/jg-bsnes/jg-bsnes.SlackBuild
@@ -0,0 +1,80 @@
+#!/bin/bash
+
+# Slackware build script for bsnes-jg
+
+# Written by B. Watson (urchlay@slackware.uk)
+
+# Licensed under the WTFPL. See http://www.wtfpl.net/txt/copying/ for details.
+
+# 20230404 bkw: updated for v1.1.2.
+
+cd $(dirname $0) ; CWD=$(pwd)
+
+PRGNAM=jg-bsnes
+SRCNAM=bsnes
+VERSION=${VERSION:-1.1.2}
+BUILD=${BUILD:-1}
+TAG=${TAG:-_SBo}
+PKGTYPE=${PKGTYPE:-tgz}
+
+if [ -z "$ARCH" ]; then
+ case "$( uname -m )" in
+ i?86) ARCH=i586 ;;
+ arm*) ARCH=arm ;;
+ *) ARCH=$( uname -m ) ;;
+ esac
+fi
+
+if [ ! -z "${PRINT_PACKAGE_NAME}" ]; then
+ echo "$PRGNAM-$VERSION-$ARCH-$BUILD$TAG.$PKGTYPE"
+ exit 0
+fi
+
+TMP=${TMP:-/tmp/SBo}
+PKG=$TMP/package-$PRGNAM
+OUTPUT=${OUTPUT:-/tmp}
+
+if [ "$ARCH" = "i586" ]; then
+ SLKCFLAGS="-O2 -march=i586 -mtune=i686"
+ LIBDIRSUFFIX=""
+elif [ "$ARCH" = "i686" ]; then
+ SLKCFLAGS="-O2 -march=i686 -mtune=i686"
+ LIBDIRSUFFIX=""
+elif [ "$ARCH" = "x86_64" ]; then
+ SLKCFLAGS="-O2 -fPIC"
+ LIBDIRSUFFIX="64"
+else
+ SLKCFLAGS="-O2"
+ LIBDIRSUFFIX=""
+fi
+
+set -e
+
+rm -rf $PKG
+mkdir -p $TMP $PKG $OUTPUT
+cd $TMP
+rm -rf $SRCNAM-$VERSION
+tar xvf $CWD/$SRCNAM-$VERSION.tar.gz
+cd $SRCNAM-$VERSION
+chown -R root:root .
+find -L . -perm /111 -a \! -perm 755 -a -exec chmod 755 {} \+ -o \
+ \! -perm /111 -a \! -perm 644 -a -exec chmod 644 {} \+
+
+DOCDIR=/usr/doc/$PRGNAM-$VERSION
+PKGDOC=$PKG/$DOCDIR
+
+make install-strip \
+ CFLAGS="$SLKCFLAGS" \
+ CXXFLAGS="$SLKCFLAGS" \
+ DESTDIR=$PKG \
+ PREFIX=/usr \
+ LIBDIR=/usr/lib$LIBDIRSUFFIX \
+ DOCDIR=$DOCDIR
+
+cat $CWD/$PRGNAM.SlackBuild > $PKGDOC/$PRGNAM.SlackBuild
+
+mkdir -p $PKG/install
+cat $CWD/slack-desc > $PKG/install/slack-desc
+
+cd $PKG
+/sbin/makepkg -l y -c n $OUTPUT/$PRGNAM-$VERSION-$ARCH-$BUILD$TAG.$PKGTYPE
diff --git a/games/jg-bsnes/jg-bsnes.info b/games/jg-bsnes/jg-bsnes.info
new file mode 100644
index 0000000000..5c125ede48
--- /dev/null
+++ b/games/jg-bsnes/jg-bsnes.info
@@ -0,0 +1,10 @@
+PRGNAM="jg-bsnes"
+VERSION="1.1.2"
+HOMEPAGE="https://jgemu.gitlab.io/"
+DOWNLOAD="https://gitlab.com/jgemu/bsnes/-/archive/1.1.2/bsnes-1.1.2.tar.gz"
+MD5SUM="9b992e256bce8cea0315587661a2644f"
+DOWNLOAD_x86_64=""
+MD5SUM_x86_64=""
+REQUIRES="jollygood"
+MAINTAINER="B. Watson"
+EMAIL="urchlay@slackware.uk"
diff --git a/games/jg-bsnes/slack-desc b/games/jg-bsnes/slack-desc
new file mode 100644
index 0000000000..2cf9b38ed9
--- /dev/null
+++ b/games/jg-bsnes/slack-desc
@@ -0,0 +1,19 @@
+# HOW TO EDIT THIS FILE:
+# The "handy ruler" below makes it easier to edit a package description.
+# Line up the first '|' above the ':' following the base package name, and
+# the '|' on the right side marks the last column you can put a character in.
+# You must make exactly 11 lines for the formatting to be correct. It's also
+# customary to leave one space after the ':' except on otherwise blank lines.
+
+ |-----handy-ruler------------------------------------------------------|
+jg-bsnes: jg-bsnes (Super Nintendo emulation core for Jolly Good Emulation)
+jg-bsnes:
+jg-bsnes: jg-bsnes is a cycle accurate emulator for the Super Famicom/Super
+jg-bsnes: Nintendo Entertainment System, including support for the Super Game
+jg-bsnes: Boy, BS-X Satellaview, and Sufami Turbo. This is a fork of bsnes v115.
+jg-bsnes:
+jg-bsnes:
+jg-bsnes:
+jg-bsnes:
+jg-bsnes:
+jg-bsnes:
diff --git a/games/jg-cega/README b/games/jg-cega/README
new file mode 100644
index 0000000000..c138e9b0ac
--- /dev/null
+++ b/games/jg-cega/README
@@ -0,0 +1,11 @@
+jg-cega (Sega emulation core for Jolly Good Emulation)
+
+Cega is a cycle accurate emulator for the Sega SG-1000, Master System,
+and Game Gear written specifically for The Jolly Good API. Mega Drive
+emulation is in an experimental state.
+
+Filenames supported: .gg .sg .sms
+To run files with other extensions: jollygood -c cega <filename>
+
+By default, no controls are mapped. The first time you run a game,
+press Shift-1 to configure the first controller.
diff --git a/games/jg-cega/jg-cega.SlackBuild b/games/jg-cega/jg-cega.SlackBuild
new file mode 100644
index 0000000000..caef4288a7
--- /dev/null
+++ b/games/jg-cega/jg-cega.SlackBuild
@@ -0,0 +1,83 @@
+#!/bin/bash
+
+# Slackware build script for jollycv
+
+# Written by B. Watson (urchlay@slackware.uk)
+
+# Licensed under the WTFPL. See http://www.wtfpl.net/txt/copying/ for details.
+
+# 20230905 bkw: updated for v0.6.0.
+
+cd $(dirname $0) ; CWD=$(pwd)
+
+PRGNAM=jg-cega
+SRCNAM=cega
+VERSION=${VERSION:-0.6.0}
+BUILD=${BUILD:-1}
+TAG=${TAG:-_SBo}
+PKGTYPE=${PKGTYPE:-tgz}
+
+if [ -z "$ARCH" ]; then
+ case "$( uname -m )" in
+ i?86) ARCH=i586 ;;
+ arm*) ARCH=arm ;;
+ *) ARCH=$( uname -m ) ;;
+ esac
+fi
+
+if [ ! -z "${PRINT_PACKAGE_NAME}" ]; then
+ echo "$PRGNAM-$VERSION-$ARCH-$BUILD$TAG.$PKGTYPE"
+ exit 0
+fi
+
+TMP=${TMP:-/tmp/SBo}
+PKG=$TMP/package-$PRGNAM
+OUTPUT=${OUTPUT:-/tmp}
+
+if [ "$ARCH" = "i586" ]; then
+ SLKCFLAGS="-O2 -march=i586 -mtune=i686"
+ LIBDIRSUFFIX=""
+elif [ "$ARCH" = "i686" ]; then
+ SLKCFLAGS="-O2 -march=i686 -mtune=i686"
+ LIBDIRSUFFIX=""
+elif [ "$ARCH" = "x86_64" ]; then
+ SLKCFLAGS="-O2 -fPIC"
+ LIBDIRSUFFIX="64"
+else
+ SLKCFLAGS="-O2"
+ LIBDIRSUFFIX=""
+fi
+
+set -e
+
+rm -rf $PKG
+mkdir -p $TMP $PKG $OUTPUT
+cd $TMP
+rm -rf $SRCNAM-$VERSION
+tar xvf $CWD/$SRCNAM-$VERSION.tar.gz
+cd $SRCNAM-$VERSION
+chown -R root:root .
+find -L . -perm /111 -a \! -perm 755 -a -exec chmod 755 {} \+ -o \
+ \! -perm /111 -a \! -perm 644 -a -exec chmod 644 {} \+
+
+LIBDIR=/usr/lib$LIBDIRSUFFIX
+PKGLIB=$PKG/$LIBDIR
+DOCDIR=/usr/doc/$PRGNAM-$VERSION
+PKGDOC=$PKG/$DOCDIR
+
+make install-strip \
+ CFLAGS="$SLKCFLAGS" \
+ DESTDIR=$PKG \
+ PREFIX=/usr \
+ DATAROOTDIR=/usr/share \
+ DOCDIR=$DOCDIR \
+ LIBDIR=$LIBDIR
+
+cp -a ChangeLog $PKGDOC
+cat $CWD/$PRGNAM.SlackBuild > $PKGDOC/$PRGNAM.SlackBuild
+
+mkdir -p $PKG/install
+cat $CWD/slack-desc > $PKG/install/slack-desc
+
+cd $PKG
+/sbin/makepkg -l y -c n $OUTPUT/$PRGNAM-$VERSION-$ARCH-$BUILD$TAG.$PKGTYPE
diff --git a/games/jg-cega/jg-cega.info b/games/jg-cega/jg-cega.info
new file mode 100644
index 0000000000..5316f74356
--- /dev/null
+++ b/games/jg-cega/jg-cega.info
@@ -0,0 +1,10 @@
+PRGNAM="jg-cega"
+VERSION="0.6.0"
+HOMEPAGE="https://jgemu.gitlab.io/"
+DOWNLOAD="https://gitlab.com/jgemu/cega/-/archive/0.6.0/cega-0.6.0.tar.gz"
+MD5SUM="2cf984aeaa8ec21d58c1e7cbe251a8dc"
+DOWNLOAD_x86_64=""
+MD5SUM_x86_64=""
+REQUIRES="jollygood"
+MAINTAINER="B. Watson"
+EMAIL="urchlay@slackware.uk"
diff --git a/games/jg-cega/slack-desc b/games/jg-cega/slack-desc
new file mode 100644
index 0000000000..fb2262abdb
--- /dev/null
+++ b/games/jg-cega/slack-desc
@@ -0,0 +1,19 @@
+# HOW TO EDIT THIS FILE:
+# The "handy ruler" below makes it easier to edit a package description.
+# Line up the first '|' above the ':' following the base package name, and
+# the '|' on the right side marks the last column you can put a character in.
+# You must make exactly 11 lines for the formatting to be correct. It's also
+# customary to leave one space after the ':' except on otherwise blank lines.
+
+ |-----handy-ruler------------------------------------------------------|
+jg-cega: jg-cega (Sega emulation core for Jolly Good Emulation)
+jg-cega:
+jg-cega: Cega is a cycle accurate emulator for the Sega SG-1000, Master System,
+jg-cega: and Game Gear written specifically for The Jolly Good API. Mega Drive
+jg-cega: emulation is in an experimental state.
+jg-cega:
+jg-cega:
+jg-cega:
+jg-cega:
+jg-cega:
+jg-cega:
diff --git a/games/jg-gambatte/README b/games/jg-gambatte/README
new file mode 100644
index 0000000000..82be031382
--- /dev/null
+++ b/games/jg-gambatte/README
@@ -0,0 +1,10 @@
+jg-gambatte (Nintendo Game Boy emulation core for Jolly Good Emulation)
+
+Gambatte JG is an emulator for the Nintendo Game Boy/Game Boy
+Color. This is a fork of the final public revision of Gambatte.
+
+Filenames supported: .gb .gbc
+To run files with other extensions: jollygood -c gambatte <filename>
+
+By default, no controls are mapped. The first time you run a game,
+press Shift-1 to configure the first controller.
diff --git a/games/jg-gambatte/jg-gambatte.SlackBuild b/games/jg-gambatte/jg-gambatte.SlackBuild
new file mode 100644
index 0000000000..7e37ece6dd
--- /dev/null
+++ b/games/jg-gambatte/jg-gambatte.SlackBuild
@@ -0,0 +1,84 @@
+#!/bin/bash
+
+# Slackware build script for jollycv
+
+# Written by B. Watson (urchlay@slackware.uk)
+
+# Licensed under the WTFPL. See http://www.wtfpl.net/txt/copying/ for details.
+
+cd $(dirname $0) ; CWD=$(pwd)
+
+PRGNAM=jg-gambatte
+SRCNAM=gambatte
+VERSION=${VERSION:-0.5.1}
+BUILD=${BUILD:-1}
+TAG=${TAG:-_SBo}
+PKGTYPE=${PKGTYPE:-tgz}
+
+if [ -z "$ARCH" ]; then
+ case "$( uname -m )" in
+ i?86) ARCH=i586 ;;
+ arm*) ARCH=arm ;;
+ *) ARCH=$( uname -m ) ;;
+ esac
+fi
+
+if [ ! -z "${PRINT_PACKAGE_NAME}" ]; then
+ echo "$PRGNAM-$VERSION-$ARCH-$BUILD$TAG.$PKGTYPE"
+ exit 0
+fi
+
+TMP=${TMP:-/tmp/SBo}
+PKG=$TMP/package-$PRGNAM
+OUTPUT=${OUTPUT:-/tmp}
+
+if [ "$ARCH" = "i586" ]; then
+ SLKCFLAGS="-O2 -march=i586 -mtune=i686"
+ LIBDIRSUFFIX=""
+elif [ "$ARCH" = "i686" ]; then
+ SLKCFLAGS="-O2 -march=i686 -mtune=i686"
+ LIBDIRSUFFIX=""
+elif [ "$ARCH" = "x86_64" ]; then
+ SLKCFLAGS="-O2 -fPIC"
+ LIBDIRSUFFIX="64"
+else
+ SLKCFLAGS="-O2"
+ LIBDIRSUFFIX=""
+fi
+
+set -e
+
+rm -rf $PKG
+mkdir -p $TMP $PKG $OUTPUT
+cd $TMP
+rm -rf $SRCNAM-$VERSION
+tar xvf $CWD/$SRCNAM-$VERSION.tar.gz
+cd $SRCNAM-$VERSION
+chown -R root:root .
+find -L . -perm /111 -a \! -perm 755 -a -exec chmod 755 {} \+ -o \
+ \! -perm /111 -a \! -perm 644 -a -exec chmod 644 {} \+
+
+LIBDIR=/usr/lib$LIBDIRSUFFIX
+PKGLIB=$PKG/$LIBDIR
+DOCDIR=/usr/doc/$PRGNAM-$VERSION
+PKGDOC=$PKG/$DOCDIR
+
+# If we wanted to use the system soxr, get rid of USE_VENDORED_SOXR=1
+# and add soxr to REQUIRES. Don't see any advantage in doing so.
+
+make install-strip \
+ USE_VENDORED_SOXR=1 \
+ CFLAGS="$SLKCFLAGS" \
+ DESTDIR=$PKG \
+ PREFIX=/usr \
+ DATAROOTDIR=/usr/share \
+ DOCDIR=$DOCDIR \
+ LIBDIR=$LIBDIR
+
+cat $CWD/$PRGNAM.SlackBuild > $PKGDOC/$PRGNAM.SlackBuild
+
+mkdir -p $PKG/install
+cat $CWD/slack-desc > $PKG/install/slack-desc
+
+cd $PKG
+/sbin/makepkg -l y -c n $OUTPUT/$PRGNAM-$VERSION-$ARCH-$BUILD$TAG.$PKGTYPE
diff --git a/games/jg-gambatte/jg-gambatte.info b/games/jg-gambatte/jg-gambatte.info
new file mode 100644
index 0000000000..1b006a9723
--- /dev/null
+++ b/games/jg-gambatte/jg-gambatte.info
@@ -0,0 +1,10 @@
+PRGNAM="jg-gambatte"
+VERSION="0.5.1"
+HOMEPAGE="https://jgemu.gitlab.io/"
+DOWNLOAD="https://gitlab.com/jgemu/gambatte/-/archive/0.5.1/gambatte-0.5.1.tar.gz"
+MD5SUM="a5ee79623f6e57c6de439b9bf6430998"
+DOWNLOAD_x86_64=""
+MD5SUM_x86_64=""
+REQUIRES="jollygood"
+MAINTAINER="B. Watson"
+EMAIL="urchlay@slackware.uk"
diff --git a/games/jg-gambatte/slack-desc b/games/jg-gambatte/slack-desc
new file mode 100644
index 0000000000..226104d167
--- /dev/null
+++ b/games/jg-gambatte/slack-desc
@@ -0,0 +1,19 @@
+# HOW TO EDIT THIS FILE:
+# The "handy ruler" below makes it easier to edit a package description.
+# Line up the first '|' above the ':' following the base package name, and
+# the '|' on the right side marks the last column you can put a character in.
+# You must make exactly 11 lines for the formatting to be correct. It's also
+# customary to leave one space after the ':' except on otherwise blank lines.
+
+ |-----handy-ruler------------------------------------------------------|
+jg-gambatte: jg-gambatte (Nintendo GameBoy emulation core for Jolly Good Emulation)
+jg-gambatte:
+jg-gambatte: Gambatte JG is an emulator for the Nintendo Game Boy/Game Boy
+jg-gambatte: Color. This is a fork of the final public revision of Gambatte.
+jg-gambatte:
+jg-gambatte:
+jg-gambatte:
+jg-gambatte:
+jg-gambatte:
+jg-gambatte:
+jg-gambatte:
diff --git a/games/jg-genplus/README b/games/jg-genplus/README
new file mode 100644
index 0000000000..f51181a085
--- /dev/null
+++ b/games/jg-genplus/README
@@ -0,0 +1,11 @@
+jg-genplus (Sega emulation core for Jolly Good Emulation)
+
+Genesis Plus GX is an emulator for multiple Sega game systems:
+SG-1000, Sega Master System/Mark III, Sega Game Gear, Sega Mega
+Drive/Genesis, Mega-CD/Sega CD.
+
+Filenames supported: .md .smd .sra
+To run files with other extensions: jollygood -c genplus <filename>
+
+By default, no controls are mapped. The first time you run a game,
+press Shift-1 to configure the first controller.
diff --git a/games/jg-genplus/jg-genplus.SlackBuild b/games/jg-genplus/jg-genplus.SlackBuild
new file mode 100644
index 0000000000..f96a0aeb8e
--- /dev/null
+++ b/games/jg-genplus/jg-genplus.SlackBuild
@@ -0,0 +1,80 @@
+#!/bin/bash
+
+# Slackware build script for jollycv
+
+# Written by B. Watson (urchlay@slackware.uk)
+
+# Licensed under the WTFPL. See http://www.wtfpl.net/txt/copying/ for details.
+
+cd $(dirname $0) ; CWD=$(pwd)
+
+PRGNAM=jg-genplus
+SRCNAM=genplus
+VERSION=${VERSION:-1.7.6.2}
+BUILD=${BUILD:-1}
+TAG=${TAG:-_SBo}
+PKGTYPE=${PKGTYPE:-tgz}
+
+if [ -z "$ARCH" ]; then
+ case "$( uname -m )" in
+ i?86) ARCH=i586 ;;
+ arm*) ARCH=arm ;;
+ *) ARCH=$( uname -m ) ;;
+ esac
+fi
+
+if [ ! -z "${PRINT_PACKAGE_NAME}" ]; then
+ echo "$PRGNAM-$VERSION-$ARCH-$BUILD$TAG.$PKGTYPE"
+ exit 0
+fi
+
+TMP=${TMP:-/tmp/SBo}
+PKG=$TMP/package-$PRGNAM
+OUTPUT=${OUTPUT:-/tmp}
+
+if [ "$ARCH" = "i586" ]; then
+ SLKCFLAGS="-O2 -march=i586 -mtune=i686"
+ LIBDIRSUFFIX=""
+elif [ "$ARCH" = "i686" ]; then
+ SLKCFLAGS="-O2 -march=i686 -mtune=i686"
+ LIBDIRSUFFIX=""
+elif [ "$ARCH" = "x86_64" ]; then
+ SLKCFLAGS="-O2 -fPIC"
+ LIBDIRSUFFIX="64"
+else
+ SLKCFLAGS="-O2"
+ LIBDIRSUFFIX=""
+fi
+
+set -e
+
+rm -rf $PKG
+mkdir -p $TMP $PKG $OUTPUT
+cd $TMP
+rm -rf $SRCNAM-$VERSION
+tar xvf $CWD/$SRCNAM-$VERSION.tar.gz
+cd $SRCNAM-$VERSION
+chown -R root:root .
+find -L . -perm /111 -a \! -perm 755 -a -exec chmod 755 {} \+ -o \
+ \! -perm /111 -a \! -perm 644 -a -exec chmod 644 {} \+
+
+LIBDIR=/usr/lib$LIBDIRSUFFIX
+PKGLIB=$PKG/$LIBDIR
+DOCDIR=/usr/doc/$PRGNAM-$VERSION
+PKGDOC=$PKG/$DOCDIR
+
+make -C jollygood install-strip \
+ CFLAGS="$SLKCFLAGS" \
+ DESTDIR=$PKG \
+ PREFIX=/usr \
+ DATAROOTDIR=/usr/share \
+ DOCDIR=$DOCDIR \
+ LIBDIR=$LIBDIR
+
+cat $CWD/$PRGNAM.SlackBuild > $PKGDOC/$PRGNAM.SlackBuild
+
+mkdir -p $PKG/install
+cat $CWD/slack-desc > $PKG/install/slack-desc
+
+cd $PKG
+/sbin/makepkg -l y -c n $OUTPUT/$PRGNAM-$VERSION-$ARCH-$BUILD$TAG.$PKGTYPE
diff --git a/games/jg-genplus/jg-genplus.info b/games/jg-genplus/jg-genplus.info
new file mode 100644
index 0000000000..014f7beac5
--- /dev/null
+++ b/games/jg-genplus/jg-genplus.info
@@ -0,0 +1,10 @@
+PRGNAM="jg-genplus"
+VERSION="1.7.6.2"
+HOMEPAGE="https://jgemu.gitlab.io/"
+DOWNLOAD="https://gitlab.com/jgemu/genplus/-/archive/1.7.6.2/genplus-1.7.6.2.tar.gz"
+MD5SUM="5b83d3021bbdb7a994671498a0b97f14"
+DOWNLOAD_x86_64=""
+MD5SUM_x86_64=""
+REQUIRES="jollygood"
+MAINTAINER="B. Watson"
+EMAIL="urchlay@slackware.uk"
diff --git a/games/jg-genplus/slack-desc b/games/jg-genplus/slack-desc
new file mode 100644
index 0000000000..92d7104744
--- /dev/null
+++ b/games/jg-genplus/slack-desc
@@ -0,0 +1,19 @@
+# HOW TO EDIT THIS FILE:
+# The "handy ruler" below makes it easier to edit a package description.
+# Line up the first '|' above the ':' following the base package name, and
+# the '|' on the right side marks the last column you can put a character in.
+# You must make exactly 11 lines for the formatting to be correct. It's also
+# customary to leave one space after the ':' except on otherwise blank lines.
+
+ |-----handy-ruler------------------------------------------------------|
+jg-genplus: jg-genplus (Sega emulation core for Jolly Good Emulation)
+jg-genplus:
+jg-genplus: Genesis Plus GX is an emulator for multiple Sega game systems:
+jg-genplus: SG-1000, Sega Master System/Mark III, Sega Game Gear, Sega Mega
+jg-genplus: Drive/Genesis, Mega-CD/Sega CD.
+jg-genplus:
+jg-genplus:
+jg-genplus:
+jg-genplus:
+jg-genplus:
+jg-genplus:
diff --git a/games/jg-geolith/README b/games/jg-geolith/README
new file mode 100644
index 0000000000..4bee266c65
--- /dev/null
+++ b/games/jg-geolith/README
@@ -0,0 +1,15 @@
+jg-geolith (Neo Geo emulation core for Jolly Good Emulation)
+
+jg-geolith is a highly accurate emulator for the Neo Geo AES and
+MVS. This emulator supports TerraOnion's NEO file format only.
+
+Filenames supported: .neo
+To run files with other extensions: jollygood -c geolith <filename>
+
+By default, no controls are mapped. The first time you run a game,
+press Shift-1 to configure the first controller.
+
+BIOS files from a recent MAME set are required:
+ - aes.zip for Neo Geo AES (Home Console)
+ - neogeo.zip for Neo Geo MVS (Arcade) and Unibios
+Copy these files to: ~/.local/share/jollygood/bios/
diff --git a/games/jg-geolith/jg-geolith.SlackBuild b/games/jg-geolith/jg-geolith.SlackBuild
new file mode 100644
index 0000000000..aec642a65e
--- /dev/null
+++ b/games/jg-geolith/jg-geolith.SlackBuild
@@ -0,0 +1,87 @@
+#!/bin/bash
+
+# Slackware build script for jg-geolith
+
+# Written by B. Watson (urchlay@slackware.uk)
+
+# Licensed under the WTFPL. See http://www.wtfpl.net/txt/copying/ for details.
+
+# 20240315 bkw: update for v0.2.1.
+
+cd $(dirname $0) ; CWD=$(pwd)
+
+PRGNAM=jg-geolith
+SRCNAM=geolith
+VERSION=${VERSION:-0.2.1}
+BUILD=${BUILD:-1}
+TAG=${TAG:-_SBo}
+PKGTYPE=${PKGTYPE:-tgz}
+
+if [ -z "$ARCH" ]; then
+ case "$( uname -m )" in
+ i?86) ARCH=i586 ;;
+ arm*) ARCH=arm ;;
+ *) ARCH=$( uname -m ) ;;
+ esac
+fi
+
+if [ ! -z "${PRINT_PACKAGE_NAME}" ]; then
+ echo "$PRGNAM-$VERSION-$ARCH-$BUILD$TAG.$PKGTYPE"
+ exit 0
+fi
+
+TMP=${TMP:-/tmp/SBo}
+PKG=$TMP/package-$PRGNAM
+OUTPUT=${OUTPUT:-/tmp}
+
+if [ "$ARCH" = "i586" ]; then
+ SLKCFLAGS="-O2 -march=i586 -mtune=i686"
+ LIBDIRSUFFIX=""
+elif [ "$ARCH" = "i686" ]; then
+ SLKCFLAGS="-O2 -march=i686 -mtune=i686"
+ LIBDIRSUFFIX=""
+elif [ "$ARCH" = "x86_64" ]; then
+ SLKCFLAGS="-O2 -fPIC"
+ LIBDIRSUFFIX="64"
+else
+ SLKCFLAGS="-O2"
+ LIBDIRSUFFIX=""
+fi
+
+set -e
+
+rm -rf $PKG
+mkdir -p $TMP $PKG $OUTPUT
+cd $TMP
+rm -rf $SRCNAM-$VERSION
+tar xvf $CWD/$SRCNAM-$VERSION.tar.gz
+cd $SRCNAM-$VERSION
+chown -R root:root .
+find -L . -perm /111 -a \! -perm 755 -a -exec chmod 755 {} + -o \
+ \! -perm /111 -a \! -perm 644 -a -exec chmod 644 {} +
+
+LIBDIR=/usr/lib$LIBDIRSUFFIX
+PKGLIB=$PKG/$LIBDIR
+DOCDIR=/usr/doc/$PRGNAM-$VERSION
+PKGDOC=$PKG/$DOCDIR
+
+make install-strip \
+ CFLAGS="$SLKCFLAGS" \
+ DESTDIR=$PKG \
+ PREFIX=/usr \
+ DATAROOTDIR=/usr/share \
+ DOCDIR=$DOCDIR \
+ LIBDIR=$LIBDIR
+
+# 20230904 bkw: there's an icon (geolith.svg) but no point in
+# including it in the package, since I'm not doing .desktop files for
+# jollygood cores (yet? ever? undecided)
+
+cp -a ChangeLog $PKGDOC
+cat $CWD/$PRGNAM.SlackBuild > $PKGDOC/$PRGNAM.SlackBuild
+
+mkdir -p $PKG/install
+cat $CWD/slack-desc > $PKG/install/slack-desc
+
+cd $PKG
+/sbin/makepkg -l y -c n $OUTPUT/$PRGNAM-$VERSION-$ARCH-$BUILD$TAG.$PKGTYPE
diff --git a/games/jg-geolith/jg-geolith.info b/games/jg-geolith/jg-geolith.info
new file mode 100644
index 0000000000..29949fc776
--- /dev/null
+++ b/games/jg-geolith/jg-geolith.info
@@ -0,0 +1,10 @@
+PRGNAM="jg-geolith"
+VERSION="0.2.1"
+HOMEPAGE="https://jgemu.gitlab.io/"
+DOWNLOAD="https://gitlab.com/jgemu/geolith/-/archive/0.2.1/geolith-0.2.1.tar.gz"
+MD5SUM="2e8249c33341fbb29140e1453c57dc4c"
+DOWNLOAD_x86_64=""
+MD5SUM_x86_64=""
+REQUIRES="jollygood"
+MAINTAINER="B. Watson"
+EMAIL="urchlay@slackware.uk"
diff --git a/games/jg-geolith/slack-desc b/games/jg-geolith/slack-desc
new file mode 100644
index 0000000000..7676336dac
--- /dev/null
+++ b/games/jg-geolith/slack-desc
@@ -0,0 +1,19 @@
+# HOW TO EDIT THIS FILE:
+# The "handy ruler" below makes it easier to edit a package description.
+# Line up the first '|' above the ':' following the base package name, and
+# the '|' on the right side marks the last column you can put a character in.
+# You must make exactly 11 lines for the formatting to be correct. It's also
+# customary to leave one space after the ':' except on otherwise blank lines.
+
+ |-----handy-ruler------------------------------------------------------|
+jg-geolith: jg-geolith (Neo Geo emulation core for Jolly Good Emulation)
+jg-geolith:
+jg-geolith: jg-geolith is a highly accurate emulator for the Neo Geo AES and
+jg-geolith: MVS. This emulator supports TerraOnion's NEO file format only.
+jg-geolith:
+jg-geolith:
+jg-geolith:
+jg-geolith:
+jg-geolith:
+jg-geolith:
+jg-geolith:
diff --git a/games/jg-jollycv/README b/games/jg-jollycv/README
new file mode 100644
index 0000000000..847c2a35d0
--- /dev/null
+++ b/games/jg-jollycv/README
@@ -0,0 +1,24 @@
+jg-jollycv (ColecoVision emulation core for Jolly Good Emulation)
+
+JollyCV is a highly accurate emulator for the ColecoVision, including
+support for the Super Game Module.
+
+JollyCV was the first emulator written specifically for The Jolly
+Good API. It is designed to document the ColecoVision for educational
+purposes through verbose comments, and high quality emulation. The
+ColecoVision is the perfect console to use to demonstrate how computer
+systems and emulators function because it is very simple and uses
+generic, off-the-shelf chips with widely available datasheets.
+
+Filenames supported: .col .rom
+To run files with other extensions: jollygood -c jollycv <filename>
+
+By default, no controls are mapped. The first time you run a game,
+press Shift-1 to configure the first controller.
+
+You'll need the ColecoVision BIOS ROM image (coleco.rom),
+available on the standard ROM dump sites on the Web, or in the
+clksignal-roms build from SlackBuilds.org. Copy coleco.rom to
+"~/.local/share/jollygood/bios/coleco.rom". There are several variant
+ROM images, all 8192 bytes in size. The most common one has an md5sum
+of 2c66f5911e5b42b8ebe113403548eee7.
diff --git a/games/jg-jollycv/jg-jollycv.SlackBuild b/games/jg-jollycv/jg-jollycv.SlackBuild
new file mode 100644
index 0000000000..d4f4232fce
--- /dev/null
+++ b/games/jg-jollycv/jg-jollycv.SlackBuild
@@ -0,0 +1,80 @@
+#!/bin/bash
+
+# Slackware build script for jollycv
+
+# Written by B. Watson (urchlay@slackware.uk)
+
+# Licensed under the WTFPL. See http://www.wtfpl.net/txt/copying/ for details.
+
+cd $(dirname $0) ; CWD=$(pwd)
+
+PRGNAM=jg-jollycv
+SRCNAM=jollycv
+VERSION=${VERSION:-1.0.1}
+BUILD=${BUILD:-1}
+TAG=${TAG:-_SBo}
+PKGTYPE=${PKGTYPE:-tgz}
+
+if [ -z "$ARCH" ]; then
+ case "$( uname -m )" in
+ i?86) ARCH=i586 ;;
+ arm*) ARCH=arm ;;
+ *) ARCH=$( uname -m ) ;;
+ esac
+fi
+
+if [ ! -z "${PRINT_PACKAGE_NAME}" ]; then
+ echo "$PRGNAM-$VERSION-$ARCH-$BUILD$TAG.$PKGTYPE"
+ exit 0
+fi
+
+TMP=${TMP:-/tmp/SBo}
+PKG=$TMP/package-$PRGNAM
+OUTPUT=${OUTPUT:-/tmp}
+
+if [ "$ARCH" = "i586" ]; then
+ SLKCFLAGS="-O2 -march=i586 -mtune=i686"
+ LIBDIRSUFFIX=""
+elif [ "$ARCH" = "i686" ]; then
+ SLKCFLAGS="-O2 -march=i686 -mtune=i686"
+ LIBDIRSUFFIX=""
+elif [ "$ARCH" = "x86_64" ]; then
+ SLKCFLAGS="-O2 -fPIC"
+ LIBDIRSUFFIX="64"
+else
+ SLKCFLAGS="-O2"
+ LIBDIRSUFFIX=""
+fi
+
+set -e
+
+rm -rf $PKG
+mkdir -p $TMP $PKG $OUTPUT
+cd $TMP
+rm -rf $SRCNAM-$VERSION
+tar xvf $CWD/$SRCNAM-$VERSION.tar.gz
+cd $SRCNAM-$VERSION
+chown -R root:root .
+find -L . -perm /111 -a \! -perm 755 -a -exec chmod 755 {} \+ -o \
+ \! -perm /111 -a \! -perm 644 -a -exec chmod 644 {} \+
+
+LIBDIR=/usr/lib$LIBDIRSUFFIX
+PKGLIB=$PKG/$LIBDIR
+DOCDIR=/usr/doc/$PRGNAM-$VERSION
+PKGDOC=$PKG/$DOCDIR
+
+make install-strip \
+ CFLAGS="$SLKCFLAGS" \
+ DESTDIR=$PKG \
+ PREFIX=/usr \
+ DATAROOTDIR=/usr/share \
+ DOCDIR=$DOCDIR \
+ LIBDIR=$LIBDIR
+
+cat $CWD/$PRGNAM.SlackBuild > $PKGDOC/$PRGNAM.SlackBuild
+
+mkdir -p $PKG/install
+cat $CWD/slack-desc > $PKG/install/slack-desc
+
+cd $PKG
+/sbin/makepkg -l y -c n $OUTPUT/$PRGNAM-$VERSION-$ARCH-$BUILD$TAG.$PKGTYPE
diff --git a/games/jg-jollycv/jg-jollycv.info b/games/jg-jollycv/jg-jollycv.info
new file mode 100644
index 0000000000..df23fb9c44
--- /dev/null
+++ b/games/jg-jollycv/jg-jollycv.info
@@ -0,0 +1,10 @@
+PRGNAM="jg-jollycv"
+VERSION="1.0.1"
+HOMEPAGE="https://jgemu.gitlab.io/"
+DOWNLOAD="https://gitlab.com/jgemu/jollycv/-/archive/1.0.1/jollycv-1.0.1.tar.gz"
+MD5SUM="62ee90b6cdd8dd7b05d436a64da908fd"
+DOWNLOAD_x86_64=""
+MD5SUM_x86_64=""
+REQUIRES="jollygood"
+MAINTAINER="B. Watson"
+EMAIL="urchlay@slackware.uk"
diff --git a/games/jg-jollycv/slack-desc b/games/jg-jollycv/slack-desc
new file mode 100644
index 0000000000..17896fb873
--- /dev/null
+++ b/games/jg-jollycv/slack-desc
@@ -0,0 +1,19 @@
+# HOW TO EDIT THIS FILE:
+# The "handy ruler" below makes it easier to edit a package description.
+# Line up the first '|' above the ':' following the base package name, and
+# the '|' on the right side marks the last column you can put a character in.
+# You must make exactly 11 lines for the formatting to be correct. It's also
+# customary to leave one space after the ':' except on otherwise blank lines.
+
+ |-----handy-ruler------------------------------------------------------|
+jg-jollycv: jg-jollycv (ColecoVision emulation core for Jolly Good Emulation)
+jg-jollycv:
+jg-jollycv: JollyCV is a highly accurate emulator for the ColecoVision, including
+jg-jollycv: support for the Super Game Module.
+jg-jollycv:
+jg-jollycv: JollyCV was the first emulator written specifically for The Jolly
+jg-jollycv: Good API. It is designed to document the ColecoVision for educational
+jg-jollycv: purposes through verbose comments, and high quality emulation. The
+jg-jollycv: ColecoVision is the perfect console to use to demonstrate how computer
+jg-jollycv: systems and emulators function because it is very simple and uses
+jg-jollycv: generic, off-the-shelf chips with widely available datasheets.
diff --git a/games/jg-mednafen/README b/games/jg-mednafen/README
new file mode 100644
index 0000000000..0942abe22f
--- /dev/null
+++ b/games/jg-mednafen/README
@@ -0,0 +1,13 @@
+jg-mednafen (Mednafen emulation core for Jolly Good Emulation)
+
+The Jolly Good API port of Mednafen is designed for use with content
+for Atari Lynx, Nintendo Virtual Boy, NEC PC Engine/TurboGrafx-16, NEC
+PC Engine CD/TurboDuo, NEC SuperGrafx, Sony PlayStation, Sega Saturn,
+Super Nintendo Entertainment System/Super Famicom, SNK Neo Geo Pocket
+Color, Bandai WonderSwan/Color.
+
+Filenames supported: .lnx .ngp .ngc .pce .sgx .psx .vb .ws .wsc
+To run files with other extensions: jollygood -c mednafen <filename>
+
+By default, no controls are mapped. The first time you run a game,
+press Shift-1 to configure the first controller.
diff --git a/games/jg-mednafen/jg-mednafen.SlackBuild b/games/jg-mednafen/jg-mednafen.SlackBuild
new file mode 100644
index 0000000000..481760176a
--- /dev/null
+++ b/games/jg-mednafen/jg-mednafen.SlackBuild
@@ -0,0 +1,85 @@
+#!/bin/bash
+
+# Slackware build script for jollycv
+
+# Written by B. Watson (urchlay@slackware.uk)
+
+# Licensed under the WTFPL. See http://www.wtfpl.net/txt/copying/ for details.
+
+# 20240208 bkw: updated for v1.32.0.
+
+cd $(dirname $0) ; CWD=$(pwd)
+
+PRGNAM=jg-mednafen
+SRCNAM=mednafen
+VERSION=${VERSION:-1.32.0}
+BUILD=${BUILD:-1}
+TAG=${TAG:-_SBo}
+PKGTYPE=${PKGTYPE:-tgz}
+
+if [ -z "$ARCH" ]; then
+ case "$( uname -m )" in
+ i?86) ARCH=i586 ;;
+ arm*) ARCH=arm ;;
+ *) ARCH=$( uname -m ) ;;
+ esac
+fi
+
+if [ ! -z "${PRINT_PACKAGE_NAME}" ]; then
+ echo "$PRGNAM-$VERSION-$ARCH-$BUILD$TAG.$PKGTYPE"
+ exit 0
+fi
+
+TMP=${TMP:-/tmp/SBo}
+PKG=$TMP/package-$PRGNAM
+OUTPUT=${OUTPUT:-/tmp}
+
+if [ "$ARCH" = "i586" ]; then
+ SLKCFLAGS="-O2 -march=i586 -mtune=i686"
+ LIBDIRSUFFIX=""
+elif [ "$ARCH" = "i686" ]; then
+ SLKCFLAGS="-O2 -march=i686 -mtune=i686"
+ LIBDIRSUFFIX=""
+elif [ "$ARCH" = "x86_64" ]; then
+ SLKCFLAGS="-O2 -fPIC"
+ LIBDIRSUFFIX="64"
+else
+ SLKCFLAGS="-O2"
+ LIBDIRSUFFIX=""
+fi
+
+set -e
+
+rm -rf $PKG
+mkdir -p $TMP $PKG $OUTPUT
+cd $TMP
+rm -rf $SRCNAM-$VERSION
+tar xvf $CWD/$SRCNAM-$VERSION.tar.gz
+cd $SRCNAM-$VERSION
+chown -R root:root .
+find -L . -perm /111 -a \! -perm 755 -a -exec chmod 755 {} \+ -o \
+ \! -perm /111 -a \! -perm 644 -a -exec chmod 644 {} \+
+
+# 20240208 bkw: patch sent upstrem (to orbea).
+patch -p1 < $CWD/pthreads_configure_ac.diff
+
+LIBDIR=/usr/lib$LIBDIRSUFFIX
+PKGLIB=$PKG/$LIBDIR
+DOCDIR=/usr/doc/$PRGNAM-$VERSION
+PKGDOC=$PKG/$DOCDIR
+
+make -C jollygood install-strip \
+ CFLAGS="$SLKCFLAGS" \
+ DESTDIR=$PKG \
+ PREFIX=/usr \
+ DATAROOTDIR=/usr/share \
+ DOCDIR=$DOCDIR \
+ LIBDIR=$LIBDIR
+
+cat $CWD/$PRGNAM.SlackBuild > $PKGDOC/$PRGNAM.SlackBuild
+
+mkdir -p $PKG/install
+cat $CWD/slack-desc > $PKG/install/slack-desc
+
+cd $PKG
+/sbin/makepkg -l y -c n $OUTPUT/$PRGNAM-$VERSION-$ARCH-$BUILD$TAG.$PKGTYPE
diff --git a/games/jg-mednafen/jg-mednafen.info b/games/jg-mednafen/jg-mednafen.info
new file mode 100644
index 0000000000..ab85bdd763
--- /dev/null
+++ b/games/jg-mednafen/jg-mednafen.info
@@ -0,0 +1,10 @@
+PRGNAM="jg-mednafen"
+VERSION="1.32.0"
+HOMEPAGE="https://jgemu.gitlab.io/"
+DOWNLOAD="https://gitlab.com/jgemu/mednafen/-/archive/1.32.0/mednafen-1.32.0.tar.gz"
+MD5SUM="eb1107cf1c183e2770e6cea35934eaec"
+DOWNLOAD_x86_64=""
+MD5SUM_x86_64=""
+REQUIRES="jollygood"
+MAINTAINER="B. Watson"
+EMAIL="urchlay@slackware.uk"
diff --git a/games/jg-mednafen/pthreads_configure_ac.diff b/games/jg-mednafen/pthreads_configure_ac.diff
new file mode 100644
index 0000000000..60e93ecf8a
--- /dev/null
+++ b/games/jg-mednafen/pthreads_configure_ac.diff
@@ -0,0 +1,17 @@
+diff --git a/jollygood/conf/configure.ac b/jollygood/conf/configure.ac
+index 8357435..b1d7d15 100644
+--- a/jollygood/conf/configure.ac
++++ b/jollygood/conf/configure.ac
+@@ -89,9 +89,9 @@ if ! expr x"$host" : 'x.*-mingw*' > /dev/null &&
+ AC_SEARCH_LIBS(pthread_create, [pthread])
+ AC_CHECK_FUNCS(pthread_create sem_init, [],
+ AC_MSG_ERROR([*** pthreads not found!]))
+- AC_CHECK_FUNCS(sem_timedwait sem_timedwait_monotonic sem_clockwait
+- sem_clockwait_np pthread_condattr_setclock pthread_setname_np
+- pthread_set_name_np pthread_getaffinity_np
++ AC_CHECK_FUNCS(sem_timedwait sem_timedwait_monotonic sem_clockwait \
++ sem_clockwait_np pthread_condattr_setclock pthread_setname_np \
++ pthread_set_name_np pthread_getaffinity_np \
+ pthread_setaffinity_np pthread_cond_timedwait_relative_np)
+ AC_CHECK_HEADERS(pthread.h sched.h)
+ AC_CHECK_HEADERS(pthread_np.h, [], [], [
diff --git a/games/jg-mednafen/slack-desc b/games/jg-mednafen/slack-desc
new file mode 100644
index 0000000000..1c67cd62ca
--- /dev/null
+++ b/games/jg-mednafen/slack-desc
@@ -0,0 +1,19 @@
+# HOW TO EDIT THIS FILE:
+# The "handy ruler" below makes it easier to edit a package description.
+# Line up the first '|' above the ':' following the base package name, and
+# the '|' on the right side marks the last column you can put a character in.
+# You must make exactly 11 lines for the formatting to be correct. It's also
+# customary to leave one space after the ':' except on otherwise blank lines.
+
+ |-----handy-ruler------------------------------------------------------|
+jg-mednafen: jg-mednafen (Mednafen emulation core for Jolly Good Emulation)
+jg-mednafen:
+jg-mednafen: The Jolly Good API port of Mednafen is designed for use with content
+jg-mednafen: for Atari Lynx, Nintendo Virtual Boy, NEC PC Engine/TurboGrafx-16, NEC
+jg-mednafen: PC Engine CD/TurboDuo, NEC SuperGrafx, Sony PlayStation, Sega Saturn,
+jg-mednafen: Super Nintendo Entertainment System/Super Famicom, SNK Neo Geo Pocket
+jg-mednafen: Color, Bandai WonderSwan/Color.
+jg-mednafen:
+jg-mednafen:
+jg-mednafen:
+jg-mednafen:
diff --git a/games/jg-melonds/README b/games/jg-melonds/README
new file mode 100644
index 0000000000..8ca6f2f3ab
--- /dev/null
+++ b/games/jg-melonds/README
@@ -0,0 +1,17 @@
+jg-melonds (Nintendo DS/DSi emulation core for Jolly Good Emulation)
+
+melonDS is an emulator for the Nintendo DS and DSi. The Jolly Good API
+port is designed for use with content for the Nintendo DS. Source for
+the emulator core is unmodified from upstream sources.
+
+Filenames supported: .nds .dsi
+To run files with other extensions: jollygood -c melonds <filename>
+
+By default, no controls are mapped. The first time you run a game,
+press Shift-1 to configure the first controller.
+
+Note: the touchscreen is emulated with the mouse. Press Shift-2 to
+configure it, then click the mouse button you want to use (probably
+the left one). Mouse control is easier to use when running fullscreen.
+
+Note: this core doesn't build on 32-bit x86.
diff --git a/games/jg-melonds/jg-melonds.SlackBuild b/games/jg-melonds/jg-melonds.SlackBuild
new file mode 100644
index 0000000000..14db000a5c
--- /dev/null
+++ b/games/jg-melonds/jg-melonds.SlackBuild
@@ -0,0 +1,81 @@
+#!/bin/bash
+
+# Slackware build script for jollycv
+
+# Written by B. Watson (urchlay@slackware.uk)
+
+# Licensed under the WTFPL. See http://www.wtfpl.net/txt/copying/ for details.
+
+cd $(dirname $0) ; CWD=$(pwd)
+
+PRGNAM=jg-melonds
+SRCNAM=melonds
+VERSION=${VERSION:-0.9.5}
+BUILD=${BUILD:-1}
+TAG=${TAG:-_SBo}
+PKGTYPE=${PKGTYPE:-tgz}
+
+if [ -z "$ARCH" ]; then
+ case "$( uname -m )" in
+ i?86) ARCH=i586 ;;
+ arm*) ARCH=arm ;;
+ *) ARCH=$( uname -m ) ;;
+ esac
+fi
+
+if [ ! -z "${PRINT_PACKAGE_NAME}" ]; then
+ echo "$PRGNAM-$VERSION-$ARCH-$BUILD$TAG.$PKGTYPE"
+ exit 0
+fi
+
+TMP=${TMP:-/tmp/SBo}
+PKG=$TMP/package-$PRGNAM
+OUTPUT=${OUTPUT:-/tmp}
+
+if [ "$ARCH" = "i586" ]; then
+ SLKCFLAGS="-O2 -march=i586 -mtune=i686"
+ LIBDIRSUFFIX=""
+elif [ "$ARCH" = "i686" ]; then
+ SLKCFLAGS="-O2 -march=i686 -mtune=i686"
+ LIBDIRSUFFIX=""
+elif [ "$ARCH" = "x86_64" ]; then
+ SLKCFLAGS="-O2 -fPIC"
+ LIBDIRSUFFIX="64"
+else
+ SLKCFLAGS="-O2"
+ LIBDIRSUFFIX=""
+fi
+
+set -e
+
+rm -rf $PKG
+mkdir -p $TMP $PKG $OUTPUT
+cd $TMP
+rm -rf $SRCNAM-$VERSION
+tar xvf $CWD/$SRCNAM-$VERSION.tar.gz
+cd $SRCNAM-$VERSION
+chown -R root:root .
+find -L . -perm /111 -a \! -perm 755 -a -exec chmod 755 {} \+ -o \
+ \! -perm /111 -a \! -perm 644 -a -exec chmod 644 {} \+
+
+LIBDIR=/usr/lib$LIBDIRSUFFIX
+PKGLIB=$PKG/$LIBDIR
+DOCDIR=/usr/doc/$PRGNAM-$VERSION
+PKGDOC=$PKG/$DOCDIR
+
+make -C jollygood install-strip \
+ CFLAGS="$SLKCFLAGS" \
+ LDFLAGS="-lpthread" \
+ DESTDIR=$PKG \
+ PREFIX=/usr \
+ DATAROOTDIR=/usr/share \
+ DOCDIR=$DOCDIR \
+ LIBDIR=$LIBDIR
+
+cat $CWD/$PRGNAM.SlackBuild > $PKGDOC/$PRGNAM.SlackBuild
+
+mkdir -p $PKG/install
+cat $CWD/slack-desc > $PKG/install/slack-desc
+
+cd $PKG
+/sbin/makepkg -l y -c n $OUTPUT/$PRGNAM-$VERSION-$ARCH-$BUILD$TAG.$PKGTYPE
diff --git a/games/jg-melonds/jg-melonds.info b/games/jg-melonds/jg-melonds.info
new file mode 100644
index 0000000000..0ee14f8808
--- /dev/null
+++ b/games/jg-melonds/jg-melonds.info
@@ -0,0 +1,10 @@
+PRGNAM="jg-melonds"
+VERSION="0.9.5"
+HOMEPAGE="https://jgemu.gitlab.io/"
+DOWNLOAD="UNSUPPORTED"
+MD5SUM=""
+DOWNLOAD_x86_64="https://gitlab.com/jgemu/melonds/-/archive/0.9.5/melonds-0.9.5.tar.gz"
+MD5SUM_x86_64="e5eafffb2858b4809c0c7a2aad3dc1d7"
+REQUIRES="jollygood"
+MAINTAINER="B. Watson"
+EMAIL="urchlay@slackware.uk"
diff --git a/games/jg-melonds/slack-desc b/games/jg-melonds/slack-desc
new file mode 100644
index 0000000000..d2cfe43b5a
--- /dev/null
+++ b/games/jg-melonds/slack-desc
@@ -0,0 +1,19 @@
+# HOW TO EDIT THIS FILE:
+# The "handy ruler" below makes it easier to edit a package description.
+# Line up the first '|' above the ':' following the base package name, and
+# the '|' on the right side marks the last column you can put a character in.
+# You must make exactly 11 lines for the formatting to be correct. It's also
+# customary to leave one space after the ':' except on otherwise blank lines.
+
+ |-----handy-ruler------------------------------------------------------|
+jg-melonds: jg-melonds (Nintendo DS/DSi emulation core for Jolly Good Emulation)
+jg-melonds:
+jg-melonds: melonDS is an emulator for the Nintendo DS and DSi. The Jolly Good API
+jg-melonds: port is designed for use with content for the Nintendo DS. Source for
+jg-melonds: the emulator core is unmodified from upstream sources.
+jg-melonds:
+jg-melonds:
+jg-melonds:
+jg-melonds:
+jg-melonds:
+jg-melonds:
diff --git a/games/jg-mgba/README b/games/jg-mgba/README
new file mode 100644
index 0000000000..92ce162c79
--- /dev/null
+++ b/games/jg-mgba/README
@@ -0,0 +1,11 @@
+jg-mgba (Game Boy Advance emulation core for Jolly Good Emulation)
+
+mGBA is an emulator for multiple Nintendo handheld systems. The Jolly
+Good API port is designed to be used with Game Boy Advance content.
+Source for the emulator core is unmodified from upstream sources.
+
+Filenames supported: .gba
+To run files with other extensions: jollygood -c mgba <filename>
+
+By default, no controls are mapped. The first time you run a game,
+press Shift-1 to configure the first controller.
diff --git a/games/jg-mgba/jg-mgba.SlackBuild b/games/jg-mgba/jg-mgba.SlackBuild
new file mode 100644
index 0000000000..1329927bc1
--- /dev/null
+++ b/games/jg-mgba/jg-mgba.SlackBuild
@@ -0,0 +1,83 @@
+#!/bin/bash
+
+# Slackware build script for jollycv
+
+# Written by B. Watson (urchlay@slackware.uk)
+
+# Licensed under the WTFPL. See http://www.wtfpl.net/txt/copying/ for details.
+
+# 20240208 bkw: updated for v0.10.3.
+# 20230905 bkw: updated for v0.10.2.
+
+cd $(dirname $0) ; CWD=$(pwd)
+
+PRGNAM=jg-mgba
+SRCNAM=mgba
+VERSION=${VERSION:-0.10.3}
+BUILD=${BUILD:-1}
+TAG=${TAG:-_SBo}
+PKGTYPE=${PKGTYPE:-tgz}
+
+if [ -z "$ARCH" ]; then
+ case "$( uname -m )" in
+ i?86) ARCH=i586 ;;
+ arm*) ARCH=arm ;;
+ *) ARCH=$( uname -m ) ;;
+ esac
+fi
+
+if [ ! -z "${PRINT_PACKAGE_NAME}" ]; then
+ echo "$PRGNAM-$VERSION-$ARCH-$BUILD$TAG.$PKGTYPE"
+ exit 0
+fi
+
+TMP=${TMP:-/tmp/SBo}
+PKG=$TMP/package-$PRGNAM
+OUTPUT=${OUTPUT:-/tmp}
+
+if [ "$ARCH" = "i586" ]; then
+ SLKCFLAGS="-O2 -march=i586 -mtune=i686"
+ LIBDIRSUFFIX=""
+elif [ "$ARCH" = "i686" ]; then
+ SLKCFLAGS="-O2 -march=i686 -mtune=i686"
+ LIBDIRSUFFIX=""
+elif [ "$ARCH" = "x86_64" ]; then
+ SLKCFLAGS="-O2 -fPIC"
+ LIBDIRSUFFIX="64"
+else
+ SLKCFLAGS="-O2"
+ LIBDIRSUFFIX=""
+fi
+
+set -e
+
+rm -rf $PKG
+mkdir -p $TMP $PKG $OUTPUT
+cd $TMP
+rm -rf $SRCNAM-$VERSION
+tar xvf $CWD/$SRCNAM-$VERSION.tar.gz
+cd $SRCNAM-$VERSION
+chown -R root:root .
+find -L . -perm /111 -a \! -perm 755 -a -exec chmod 755 {} \+ -o \
+ \! -perm /111 -a \! -perm 644 -a -exec chmod 644 {} \+
+
+LIBDIR=/usr/lib$LIBDIRSUFFIX
+PKGLIB=$PKG/$LIBDIR
+DOCDIR=/usr/doc/$PRGNAM-$VERSION
+PKGDOC=$PKG/$DOCDIR
+
+make -C jollygood install-strip \
+ CFLAGS="$SLKCFLAGS" \
+ DESTDIR=$PKG \
+ PREFIX=/usr \
+ DATAROOTDIR=/usr/share \
+ DOCDIR=$DOCDIR \
+ LIBDIR=$LIBDIR
+
+cat $CWD/$PRGNAM.SlackBuild > $PKGDOC/$PRGNAM.SlackBuild
+
+mkdir -p $PKG/install
+cat $CWD/slack-desc > $PKG/install/slack-desc
+
+cd $PKG
+/sbin/makepkg -l y -c n $OUTPUT/$PRGNAM-$VERSION-$ARCH-$BUILD$TAG.$PKGTYPE
diff --git a/games/jg-mgba/jg-mgba.info b/games/jg-mgba/jg-mgba.info
new file mode 100644
index 0000000000..fb2751830d
--- /dev/null
+++ b/games/jg-mgba/jg-mgba.info
@@ -0,0 +1,10 @@
+PRGNAM="jg-mgba"
+VERSION="0.10.3"
+HOMEPAGE="https://jgemu.gitlab.io/"
+DOWNLOAD="https://gitlab.com/jgemu/mgba/-/archive/0.10.3/mgba-0.10.3.tar.gz"
+MD5SUM="c40e436f3c80af07bb4df3c5cf7178ee"
+DOWNLOAD_x86_64=""
+MD5SUM_x86_64=""
+REQUIRES="jollygood"
+MAINTAINER="B. Watson"
+EMAIL="urchlay@slackware.uk"
diff --git a/games/jg-mgba/slack-desc b/games/jg-mgba/slack-desc
new file mode 100644
index 0000000000..34afb2fb51
--- /dev/null
+++ b/games/jg-mgba/slack-desc
@@ -0,0 +1,19 @@
+# HOW TO EDIT THIS FILE:
+# The "handy ruler" below makes it easier to edit a package description.
+# Line up the first '|' above the ':' following the base package name, and
+# the '|' on the right side marks the last column you can put a character in.
+# You must make exactly 11 lines for the formatting to be correct. It's also
+# customary to leave one space after the ':' except on otherwise blank lines.
+
+ |-----handy-ruler------------------------------------------------------|
+jg-mgba: jg-mgba (Game Boy Advance emulation core for Jolly Good Emulation)
+jg-mgba:
+jg-mgba: mGBA is an emulator for multiple Nintendo handheld systems. The Jolly
+jg-mgba: Good API port is designed to be used with Game Boy Advance content.
+jg-mgba: Source for the emulator core is unmodified from upstream sources.
+jg-mgba:
+jg-mgba:
+jg-mgba:
+jg-mgba:
+jg-mgba:
+jg-mgba:
diff --git a/games/jg-nestopia/README b/games/jg-nestopia/README
new file mode 100644
index 0000000000..d041691d52
--- /dev/null
+++ b/games/jg-nestopia/README
@@ -0,0 +1,12 @@
+jg-nestopia (NES emulation core for Jolly Good Emulation)
+
+Nestopia JG is an emulator for the Nintendo Entertainment
+System/Famicom, including support for the Famicom Disk System. Though
+originally a fork, Nestopia JG is now the de facto upstream branch of
+the Nestopia emulator.
+
+Filenames supported: .nes .fds
+To run files with other extensions: jollygood -c nestopia <filename>
+
+By default, no controls are mapped. The first time you run a game,
+press Shift-1 to configure the first controller.
diff --git a/games/jg-nestopia/jg-nestopia.SlackBuild b/games/jg-nestopia/jg-nestopia.SlackBuild
new file mode 100644
index 0000000000..739f09aa95
--- /dev/null
+++ b/games/jg-nestopia/jg-nestopia.SlackBuild
@@ -0,0 +1,80 @@
+#!/bin/bash
+
+# Slackware build script for jollycv
+
+# Written by B. Watson (urchlay@slackware.uk)
+
+# Licensed under the WTFPL. See http://www.wtfpl.net/txt/copying/ for details.
+
+cd $(dirname $0) ; CWD=$(pwd)
+
+PRGNAM=jg-nestopia
+SRCNAM=nestopia
+VERSION=${VERSION:-1.52.0}
+BUILD=${BUILD:-1}
+TAG=${TAG:-_SBo}
+PKGTYPE=${PKGTYPE:-tgz}
+
+if [ -z "$ARCH" ]; then
+ case "$( uname -m )" in
+ i?86) ARCH=i586 ;;
+ arm*) ARCH=arm ;;
+ *) ARCH=$( uname -m ) ;;
+ esac
+fi
+
+if [ ! -z "${PRINT_PACKAGE_NAME}" ]; then
+ echo "$PRGNAM-$VERSION-$ARCH-$BUILD$TAG.$PKGTYPE"
+ exit 0
+fi
+
+TMP=${TMP:-/tmp/SBo}
+PKG=$TMP/package-$PRGNAM
+OUTPUT=${OUTPUT:-/tmp}
+
+if [ "$ARCH" = "i586" ]; then
+ SLKCFLAGS="-O2 -march=i586 -mtune=i686"
+ LIBDIRSUFFIX=""
+elif [ "$ARCH" = "i686" ]; then
+ SLKCFLAGS="-O2 -march=i686 -mtune=i686"
+ LIBDIRSUFFIX=""
+elif [ "$ARCH" = "x86_64" ]; then
+ SLKCFLAGS="-O2 -fPIC"
+ LIBDIRSUFFIX="64"
+else
+ SLKCFLAGS="-O2"
+ LIBDIRSUFFIX=""
+fi
+
+set -e
+
+rm -rf $PKG
+mkdir -p $TMP $PKG $OUTPUT
+cd $TMP
+rm -rf $SRCNAM-$VERSION
+tar xvf $CWD/$SRCNAM-$VERSION.tar.gz
+cd $SRCNAM-$VERSION
+chown -R root:root .
+find -L . -perm /111 -a \! -perm 755 -a -exec chmod 755 {} \+ -o \
+ \! -perm /111 -a \! -perm 644 -a -exec chmod 644 {} \+
+
+LIBDIR=/usr/lib$LIBDIRSUFFIX
+PKGLIB=$PKG/$LIBDIR
+DOCDIR=/usr/doc/$PRGNAM-$VERSION
+PKGDOC=$PKG/$DOCDIR
+
+make install-strip \
+ CFLAGS="$SLKCFLAGS" \
+ DESTDIR=$PKG \
+ PREFIX=/usr \
+ DATAROOTDIR=/usr/share \
+ DOCDIR=$DOCDIR \
+ LIBDIR=$LIBDIR
+
+cat $CWD/$PRGNAM.SlackBuild > $PKGDOC/$PRGNAM.SlackBuild
+
+mkdir -p $PKG/install
+cat $CWD/slack-desc > $PKG/install/slack-desc
+
+cd $PKG
+/sbin/makepkg -l y -c n $OUTPUT/$PRGNAM-$VERSION-$ARCH-$BUILD$TAG.$PKGTYPE
diff --git a/games/jg-nestopia/jg-nestopia.info b/games/jg-nestopia/jg-nestopia.info
new file mode 100644
index 0000000000..86b51d360b
--- /dev/null
+++ b/games/jg-nestopia/jg-nestopia.info
@@ -0,0 +1,10 @@
+PRGNAM="jg-nestopia"
+VERSION="1.52.0"
+HOMEPAGE="https://jgemu.gitlab.io/"
+DOWNLOAD="https://gitlab.com/jgemu/nestopia/-/archive/1.52.0/nestopia-1.52.0.tar.gz"
+MD5SUM="33efb4e139b5f0ffd37d1a824fbbbeae"
+DOWNLOAD_x86_64=""
+MD5SUM_x86_64=""
+REQUIRES="jollygood"
+MAINTAINER="B. Watson"
+EMAIL="urchlay@slackware.uk"
diff --git a/games/jg-nestopia/slack-desc b/games/jg-nestopia/slack-desc
new file mode 100644
index 0000000000..79e01b9690
--- /dev/null
+++ b/games/jg-nestopia/slack-desc
@@ -0,0 +1,19 @@
+# HOW TO EDIT THIS FILE:
+# The "handy ruler" below makes it easier to edit a package description.
+# Line up the first '|' above the ':' following the base package name, and
+# the '|' on the right side marks the last column you can put a character in.
+# You must make exactly 11 lines for the formatting to be correct. It's also
+# customary to leave one space after the ':' except on otherwise blank lines.
+
+ |-----handy-ruler------------------------------------------------------|
+jg-nestopia: jg-nestopia (NES emulation core for Jolly Good Emulation)
+jg-nestopia:
+jg-nestopia: Nestopia JG is an emulator for the Nintendo Entertainment
+jg-nestopia: System/Famicom, including support for the Famicom Disk System. Though
+jg-nestopia: originally a fork, Nestopia JG is now the de facto upstream branch of
+jg-nestopia: the Nestopia emulator.
+jg-nestopia:
+jg-nestopia:
+jg-nestopia:
+jg-nestopia:
+jg-nestopia:
diff --git a/games/jg-picodrive/README b/games/jg-picodrive/README
new file mode 100644
index 0000000000..ce6034b75c
--- /dev/null
+++ b/games/jg-picodrive/README
@@ -0,0 +1,12 @@
+jg-picodrive (Sega 32X emulation core for Jolly Good Emulation)
+
+PicoDrive is an emulator for the Sega 32X and related systems.
+The Jolly Good API port is designed to be used exclusively with 32X
+content. Source for the emulator core is unmodified from upstream
+sources.
+
+Filenames supported: .32x
+To run files with other extensions: jollygood -c picodrive <filename>
+
+By default, no controls are mapped. The first time you run a game,
+press Shift-1 to configure the first controller.
diff --git a/games/jg-picodrive/jg-picodrive.SlackBuild b/games/jg-picodrive/jg-picodrive.SlackBuild
new file mode 100644
index 0000000000..346fe38625
--- /dev/null
+++ b/games/jg-picodrive/jg-picodrive.SlackBuild
@@ -0,0 +1,80 @@
+#!/bin/bash
+
+# Slackware build script for jollycv
+
+# Written by B. Watson (urchlay@slackware.uk)
+
+# Licensed under the WTFPL. See http://www.wtfpl.net/txt/copying/ for details.
+
+cd $(dirname $0) ; CWD=$(pwd)
+
+PRGNAM=jg-picodrive
+SRCNAM=picodrive
+VERSION=${VERSION:-1.93.0}
+BUILD=${BUILD:-1}
+TAG=${TAG:-_SBo}
+PKGTYPE=${PKGTYPE:-tgz}
+
+if [ -z "$ARCH" ]; then
+ case "$( uname -m )" in
+ i?86) ARCH=i586 ;;
+ arm*) ARCH=arm ;;
+ *) ARCH=$( uname -m ) ;;
+ esac
+fi
+
+if [ ! -z "${PRINT_PACKAGE_NAME}" ]; then
+ echo "$PRGNAM-$VERSION-$ARCH-$BUILD$TAG.$PKGTYPE"
+ exit 0
+fi
+
+TMP=${TMP:-/tmp/SBo}
+PKG=$TMP/package-$PRGNAM
+OUTPUT=${OUTPUT:-/tmp}
+
+if [ "$ARCH" = "i586" ]; then
+ SLKCFLAGS="-O2 -march=i586 -mtune=i686"
+ LIBDIRSUFFIX=""
+elif [ "$ARCH" = "i686" ]; then
+ SLKCFLAGS="-O2 -march=i686 -mtune=i686"
+ LIBDIRSUFFIX=""
+elif [ "$ARCH" = "x86_64" ]; then
+ SLKCFLAGS="-O2 -fPIC"
+ LIBDIRSUFFIX="64"
+else
+ SLKCFLAGS="-O2"
+ LIBDIRSUFFIX=""
+fi
+
+set -e
+
+rm -rf $PKG
+mkdir -p $TMP $PKG $OUTPUT
+cd $TMP
+rm -rf $SRCNAM-$VERSION
+tar xvf $CWD/$SRCNAM-$VERSION.tar.gz
+cd $SRCNAM-$VERSION
+chown -R root:root .
+find -L . -perm /111 -a \! -perm 755 -a -exec chmod 755 {} \+ -o \
+ \! -perm /111 -a \! -perm 644 -a -exec chmod 644 {} \+
+
+LIBDIR=/usr/lib$LIBDIRSUFFIX
+PKGLIB=$PKG/$LIBDIR
+DOCDIR=/usr/doc/$PRGNAM-$VERSION
+PKGDOC=$PKG/$DOCDIR
+
+make -C jollygood install-strip \
+ CFLAGS="$SLKCFLAGS" \
+ DESTDIR=$PKG \
+ PREFIX=/usr \
+ DATAROOTDIR=/usr/share \
+ DOCDIR=$DOCDIR \
+ LIBDIR=$LIBDIR
+
+cat $CWD/$PRGNAM.SlackBuild > $PKGDOC/$PRGNAM.SlackBuild
+
+mkdir -p $PKG/install
+cat $CWD/slack-desc > $PKG/install/slack-desc
+
+cd $PKG
+/sbin/makepkg -l y -c n $OUTPUT/$PRGNAM-$VERSION-$ARCH-$BUILD$TAG.$PKGTYPE
diff --git a/games/jg-picodrive/jg-picodrive.info b/games/jg-picodrive/jg-picodrive.info
new file mode 100644
index 0000000000..78b0e96456
--- /dev/null
+++ b/games/jg-picodrive/jg-picodrive.info
@@ -0,0 +1,10 @@
+PRGNAM="jg-picodrive"
+VERSION="1.93.0"
+HOMEPAGE="https://jgemu.gitlab.io/"
+DOWNLOAD="https://gitlab.com/jgemu/picodrive/-/archive/1.93.0/picodrive-1.93.0.tar.gz"
+MD5SUM="08e6e425ea9ea9c271e67e83b68f77ea"
+DOWNLOAD_x86_64=""
+MD5SUM_x86_64=""
+REQUIRES="jollygood"
+MAINTAINER="B. Watson"
+EMAIL="urchlay@slackware.uk"
diff --git a/games/jg-picodrive/slack-desc b/games/jg-picodrive/slack-desc
new file mode 100644
index 0000000000..e30284699e
--- /dev/null
+++ b/games/jg-picodrive/slack-desc
@@ -0,0 +1,19 @@
+# HOW TO EDIT THIS FILE:
+# The "handy ruler" below makes it easier to edit a package description.
+# Line up the first '|' above the ':' following the base package name, and
+# the '|' on the right side marks the last column you can put a character in.
+# You must make exactly 11 lines for the formatting to be correct. It's also
+# customary to leave one space after the ':' except on otherwise blank lines.
+
+ |-----handy-ruler------------------------------------------------------|
+jg-picodrive: jg-picodrive (Sega 32X emulation core for Jolly Good Emulation)
+jg-picodrive:
+jg-picodrive: PicoDrive is an emulator for the Sega 32X and related systems.
+jg-picodrive: The Jolly Good API port is designed to be used exclusively with 32X
+jg-picodrive: content. Source for the emulator core is unmodified from upstream
+jg-picodrive: sources.
+jg-picodrive:
+jg-picodrive:
+jg-picodrive:
+jg-picodrive:
+jg-picodrive:
diff --git a/games/jg-prosystem/README b/games/jg-prosystem/README
new file mode 100644
index 0000000000..222947407f
--- /dev/null
+++ b/games/jg-prosystem/README
@@ -0,0 +1,16 @@
+jg-prosystem (Atari 7800 emulation core for Jolly Good Emulation)
+
+ProSystem JG is an emulator for the Atari 7800. This is a fork of
+ProSystem 1.3e with patches from OpenEmu, which contains patches
+derived from Wii7800 and js7800.
+
+Note: Although the Atari 7800 can play Atari 2600 games, this emulator
+only supports 7800 games.
+
+Filenames supported: .a78
+To run files with other extensions: jollygood -c prosystem <filename>
+
+By default, no controls are mapped. The first time you run a game,
+press Shift-1 to configure the first controller. Then press Shift-3
+to map the controls on the console (Reset, Select, Pause, Left/Right
+Difficulty).
diff --git a/games/jg-prosystem/jg-prosystem.SlackBuild b/games/jg-prosystem/jg-prosystem.SlackBuild
new file mode 100644
index 0000000000..1d38cc770f
--- /dev/null
+++ b/games/jg-prosystem/jg-prosystem.SlackBuild
@@ -0,0 +1,80 @@
+#!/bin/bash
+
+# Slackware build script for jollycv
+
+# Written by B. Watson (urchlay@slackware.uk)
+
+# Licensed under the WTFPL. See http://www.wtfpl.net/txt/copying/ for details.
+
+cd $(dirname $0) ; CWD=$(pwd)
+
+PRGNAM=jg-prosystem
+SRCNAM=prosystem
+VERSION=${VERSION:-1.5.2}
+BUILD=${BUILD:-1}
+TAG=${TAG:-_SBo}
+PKGTYPE=${PKGTYPE:-tgz}
+
+if [ -z "$ARCH" ]; then
+ case "$( uname -m )" in
+ i?86) ARCH=i586 ;;
+ arm*) ARCH=arm ;;
+ *) ARCH=$( uname -m ) ;;
+ esac
+fi
+
+if [ ! -z "${PRINT_PACKAGE_NAME}" ]; then
+ echo "$PRGNAM-$VERSION-$ARCH-$BUILD$TAG.$PKGTYPE"
+ exit 0
+fi
+
+TMP=${TMP:-/tmp/SBo}
+PKG=$TMP/package-$PRGNAM
+OUTPUT=${OUTPUT:-/tmp}
+
+if [ "$ARCH" = "i586" ]; then
+ SLKCFLAGS="-O2 -march=i586 -mtune=i686"
+ LIBDIRSUFFIX=""
+elif [ "$ARCH" = "i686" ]; then
+ SLKCFLAGS="-O2 -march=i686 -mtune=i686"
+ LIBDIRSUFFIX=""
+elif [ "$ARCH" = "x86_64" ]; then
+ SLKCFLAGS="-O2 -fPIC"
+ LIBDIRSUFFIX="64"
+else
+ SLKCFLAGS="-O2"
+ LIBDIRSUFFIX=""
+fi
+
+set -e
+
+rm -rf $PKG
+mkdir -p $TMP $PKG $OUTPUT
+cd $TMP
+rm -rf $SRCNAM-$VERSION
+tar xvf $CWD/$SRCNAM-$VERSION.tar.gz
+cd $SRCNAM-$VERSION
+chown -R root:root .
+find -L . -perm /111 -a \! -perm 755 -a -exec chmod 755 {} \+ -o \
+ \! -perm /111 -a \! -perm 644 -a -exec chmod 644 {} \+
+
+LIBDIR=/usr/lib$LIBDIRSUFFIX
+PKGLIB=$PKG/$LIBDIR
+DOCDIR=/usr/doc/$PRGNAM-$VERSION
+PKGDOC=$PKG/$DOCDIR
+
+make install-strip \
+ CFLAGS="$SLKCFLAGS" \
+ DESTDIR=$PKG \
+ PREFIX=/usr \
+ DATAROOTDIR=/usr/share \
+ DOCDIR=$DOCDIR \
+ LIBDIR=$LIBDIR
+
+cat $CWD/$PRGNAM.SlackBuild > $PKGDOC/$PRGNAM.SlackBuild
+
+mkdir -p $PKG/install
+cat $CWD/slack-desc > $PKG/install/slack-desc
+
+cd $PKG
+/sbin/makepkg -l y -c n $OUTPUT/$PRGNAM-$VERSION-$ARCH-$BUILD$TAG.$PKGTYPE
diff --git a/games/jg-prosystem/jg-prosystem.info b/games/jg-prosystem/jg-prosystem.info
new file mode 100644
index 0000000000..86ab6d9040
--- /dev/null
+++ b/games/jg-prosystem/jg-prosystem.info
@@ -0,0 +1,10 @@
+PRGNAM="jg-prosystem"
+VERSION="1.5.2"
+HOMEPAGE="https://jgemu.gitlab.io/"
+DOWNLOAD="https://gitlab.com/jgemu/prosystem/-/archive/1.5.2/prosystem-1.5.2.tar.gz"
+MD5SUM="38d775066eac67e2102628d28a8a59c8"
+DOWNLOAD_x86_64=""
+MD5SUM_x86_64=""
+REQUIRES="jollygood"
+MAINTAINER="B. Watson"
+EMAIL="urchlay@slackware.uk"
diff --git a/games/jg-prosystem/slack-desc b/games/jg-prosystem/slack-desc
new file mode 100644
index 0000000000..ed3125994a
--- /dev/null
+++ b/games/jg-prosystem/slack-desc
@@ -0,0 +1,19 @@
+# HOW TO EDIT THIS FILE:
+# The "handy ruler" below makes it easier to edit a package description.
+# Line up the first '|' above the ':' following the base package name, and
+# the '|' on the right side marks the last column you can put a character in.
+# You must make exactly 11 lines for the formatting to be correct. It's also
+# customary to leave one space after the ':' except on otherwise blank lines.
+
+ |-----handy-ruler------------------------------------------------------|
+jg-prosystem: jg-prosystem (Atari 7800 emulation core for Jolly Good Emulation)
+jg-prosystem:
+jg-prosystem: ProSystem JG is an emulator for the Atari 7800. This is a fork of
+jg-prosystem: ProSystem 1.3e with patches from OpenEmu, which contains patches
+jg-prosystem: derived from Wii7800 and js7800.
+jg-prosystem:
+jg-prosystem:
+jg-prosystem:
+jg-prosystem:
+jg-prosystem:
+jg-prosystem:
diff --git a/games/jg-sameboy/README b/games/jg-sameboy/README
new file mode 100644
index 0000000000..9242c5bd55
--- /dev/null
+++ b/games/jg-sameboy/README
@@ -0,0 +1,18 @@
+jg-sameboy (Game Boy, GB Color emulation core for Jolly Good Emulation)
+
+SameBoy is an emulator for the Nintendo Game Boy/Game Boy Color.
+Source for the emulator core is unmodified from upstream sources.
+
+SameBoy supports "2 Player Mode" via Auxiliary Files. The Auxiliary
+File will be loaded as the second game (the first game specified on
+the command line in The Jolly Good Reference Frontend, and displayed
+on the bottom). Save data will work for both games, but cheats and
+states only work for the main game. The link cable and IR sensor are
+always considered connected in 2 Player Mode.
+
+Note: jollygood does not automatically use this core (it uses
+jg-gambatte for .gb and .gbc files). To use sameboy, you'll have to
+give the "-c sameboy" option to jollygood.
+
+By default, no controls are mapped. The first time you run a game,
+press Shift-1 to configure the first controller.
diff --git a/games/jg-sameboy/jg-sameboy.SlackBuild b/games/jg-sameboy/jg-sameboy.SlackBuild
new file mode 100644
index 0000000000..32b006a42e
--- /dev/null
+++ b/games/jg-sameboy/jg-sameboy.SlackBuild
@@ -0,0 +1,82 @@
+#!/bin/bash
+
+# Slackware build script for jollycv
+
+# Written by B. Watson (urchlay@slackware.uk)
+
+# Licensed under the WTFPL. See http://www.wtfpl.net/txt/copying/ for details.
+
+# 20240208 bkw: updated for v0.16.2
+
+cd $(dirname $0) ; CWD=$(pwd)
+
+PRGNAM=jg-sameboy
+SRCNAM=sameboy
+VERSION=${VERSION:-0.16.2}
+BUILD=${BUILD:-1}
+TAG=${TAG:-_SBo}
+PKGTYPE=${PKGTYPE:-tgz}
+
+if [ -z "$ARCH" ]; then
+ case "$( uname -m )" in
+ i?86) ARCH=i586 ;;
+ arm*) ARCH=arm ;;
+ *) ARCH=$( uname -m ) ;;
+ esac
+fi
+
+if [ ! -z "${PRINT_PACKAGE_NAME}" ]; then
+ echo "$PRGNAM-$VERSION-$ARCH-$BUILD$TAG.$PKGTYPE"
+ exit 0
+fi
+
+TMP=${TMP:-/tmp/SBo}
+PKG=$TMP/package-$PRGNAM
+OUTPUT=${OUTPUT:-/tmp}
+
+if [ "$ARCH" = "i586" ]; then
+ SLKCFLAGS="-O2 -march=i586 -mtune=i686"
+ LIBDIRSUFFIX=""
+elif [ "$ARCH" = "i686" ]; then
+ SLKCFLAGS="-O2 -march=i686 -mtune=i686"
+ LIBDIRSUFFIX=""
+elif [ "$ARCH" = "x86_64" ]; then
+ SLKCFLAGS="-O2 -fPIC"
+ LIBDIRSUFFIX="64"
+else
+ SLKCFLAGS="-O2"
+ LIBDIRSUFFIX=""
+fi
+
+set -e
+
+rm -rf $PKG
+mkdir -p $TMP $PKG $OUTPUT
+cd $TMP
+rm -rf $SRCNAM-$VERSION
+tar xvf $CWD/$SRCNAM-$VERSION.tar.gz
+cd $SRCNAM-$VERSION
+chown -R root:root .
+find -L . -perm /111 -a \! -perm 755 -a -exec chmod 755 {} \+ -o \
+ \! -perm /111 -a \! -perm 644 -a -exec chmod 644 {} \+
+
+LIBDIR=/usr/lib$LIBDIRSUFFIX
+PKGLIB=$PKG/$LIBDIR
+DOCDIR=/usr/doc/$PRGNAM-$VERSION
+PKGDOC=$PKG/$DOCDIR
+
+make -C jollygood install-strip \
+ CFLAGS="$SLKCFLAGS" \
+ DESTDIR=$PKG \
+ PREFIX=/usr \
+ DATAROOTDIR=/usr/share \
+ DOCDIR=$DOCDIR \
+ LIBDIR=$LIBDIR
+
+cat $CWD/$PRGNAM.SlackBuild > $PKGDOC/$PRGNAM.SlackBuild
+
+mkdir -p $PKG/install
+cat $CWD/slack-desc > $PKG/install/slack-desc
+
+cd $PKG
+/sbin/makepkg -l y -c n $OUTPUT/$PRGNAM-$VERSION-$ARCH-$BUILD$TAG.$PKGTYPE
diff --git a/games/jg-sameboy/jg-sameboy.info b/games/jg-sameboy/jg-sameboy.info
new file mode 100644
index 0000000000..69f7cb8d54
--- /dev/null
+++ b/games/jg-sameboy/jg-sameboy.info
@@ -0,0 +1,10 @@
+PRGNAM="jg-sameboy"
+VERSION="0.16.2"
+HOMEPAGE="https://jgemu.gitlab.io/"
+DOWNLOAD="https://gitlab.com/jgemu/sameboy/-/archive/0.16.2/sameboy-0.16.2.tar.gz"
+MD5SUM="7914ce1867cba4210a4cd1a654322243"
+DOWNLOAD_x86_64=""
+MD5SUM_x86_64=""
+REQUIRES="jollygood rgbds"
+MAINTAINER="B. Watson"
+EMAIL="urchlay@slackware.uk"
diff --git a/games/jg-sameboy/slack-desc b/games/jg-sameboy/slack-desc
new file mode 100644
index 0000000000..022f341706
--- /dev/null
+++ b/games/jg-sameboy/slack-desc
@@ -0,0 +1,19 @@
+# HOW TO EDIT THIS FILE:
+# The "handy ruler" below makes it easier to edit a package description.
+# Line up the first '|' above the ':' following the base package name, and
+# the '|' on the right side marks the last column you can put a character in.
+# You must make exactly 11 lines for the formatting to be correct. It's also
+# customary to leave one space after the ':' except on otherwise blank lines.
+
+ |-----handy-ruler------------------------------------------------------|
+jg-sameboy: jg-sameboy (GameBoy, GB Color emulation core for Jolly Good Emulation)
+jg-sameboy:
+jg-sameboy: SameBoy is an emulator for the Nintendo Game Boy/Game Boy Color.
+jg-sameboy: Source for the emulator core is unmodified from upstream sources.
+jg-sameboy:
+jg-sameboy: SameBoy supports "2 Player Mode" via Auxiliary Files. The Auxiliary
+jg-sameboy: File will be loaded as the second game (the first game specified on
+jg-sameboy: the command line in The Jolly Good Reference Frontend, and displayed
+jg-sameboy: on the bottom). Save data will work for both games, but cheats and
+jg-sameboy: states only work for the main game. The link cable and IR sensor are
+jg-sameboy: always considered connected in 2 Player Mode.
diff --git a/games/jg-vecx/README b/games/jg-vecx/README
new file mode 100644
index 0000000000..5ff1d17f59
--- /dev/null
+++ b/games/jg-vecx/README
@@ -0,0 +1,15 @@
+jg-vecx (Vectrex emulation core for Jolly Good Emulation)
+
+Vecx JG is an emulator for the Vectrex.
+
+This is a fork of the original, unmodified vecx sources made available
+by Valavan Manohararajah at http://www.valavan.net/vectrex.html. Many
+new features have been added since the fork was created. The emulator
+now contains a new renderer, save states, and support for PSG and DAC
+based audio.
+
+Filenames supported: .vec
+To run files with other extensions: jollygood -c vecx <filename>
+
+By default, no controls are mapped. The first time you run a game,
+press Shift-1 to configure the first controller.
diff --git a/games/jg-vecx/jg-vecx.SlackBuild b/games/jg-vecx/jg-vecx.SlackBuild
new file mode 100644
index 0000000000..bf79e9b51c
--- /dev/null
+++ b/games/jg-vecx/jg-vecx.SlackBuild
@@ -0,0 +1,80 @@
+#!/bin/bash
+
+# Slackware build script for jollycv
+
+# Written by B. Watson (urchlay@slackware.uk)
+
+# Licensed under the WTFPL. See http://www.wtfpl.net/txt/copying/ for details.
+
+cd $(dirname $0) ; CWD=$(pwd)
+
+PRGNAM=jg-vecx
+SRCNAM=vecx
+VERSION=${VERSION:-1.2.2}
+BUILD=${BUILD:-1}
+TAG=${TAG:-_SBo}
+PKGTYPE=${PKGTYPE:-tgz}
+
+if [ -z "$ARCH" ]; then
+ case "$( uname -m )" in
+ i?86) ARCH=i586 ;;
+ arm*) ARCH=arm ;;
+ *) ARCH=$( uname -m ) ;;
+ esac
+fi
+
+if [ ! -z "${PRINT_PACKAGE_NAME}" ]; then
+ echo "$PRGNAM-$VERSION-$ARCH-$BUILD$TAG.$PKGTYPE"
+ exit 0
+fi
+
+TMP=${TMP:-/tmp/SBo}
+PKG=$TMP/package-$PRGNAM
+OUTPUT=${OUTPUT:-/tmp}
+
+if [ "$ARCH" = "i586" ]; then
+ SLKCFLAGS="-O2 -march=i586 -mtune=i686"
+ LIBDIRSUFFIX=""
+elif [ "$ARCH" = "i686" ]; then
+ SLKCFLAGS="-O2 -march=i686 -mtune=i686"
+ LIBDIRSUFFIX=""
+elif [ "$ARCH" = "x86_64" ]; then
+ SLKCFLAGS="-O2 -fPIC"
+ LIBDIRSUFFIX="64"
+else
+ SLKCFLAGS="-O2"
+ LIBDIRSUFFIX=""
+fi
+
+set -e
+
+rm -rf $PKG
+mkdir -p $TMP $PKG $OUTPUT
+cd $TMP
+rm -rf $SRCNAM-$VERSION
+tar xvf $CWD/$SRCNAM-$VERSION.tar.gz
+cd $SRCNAM-$VERSION
+chown -R root:root .
+find -L . -perm /111 -a \! -perm 755 -a -exec chmod 755 {} \+ -o \
+ \! -perm /111 -a \! -perm 644 -a -exec chmod 644 {} \+
+
+LIBDIR=/usr/lib$LIBDIRSUFFIX
+PKGLIB=$PKG/$LIBDIR
+DOCDIR=/usr/doc/$PRGNAM-$VERSION
+PKGDOC=$PKG/$DOCDIR
+
+make install-strip \
+ CFLAGS="$SLKCFLAGS" \
+ DESTDIR=$PKG \
+ PREFIX=/usr \
+ DATAROOTDIR=/usr/share \
+ DOCDIR=$DOCDIR \
+ LIBDIR=$LIBDIR
+
+cat $CWD/$PRGNAM.SlackBuild > $PKGDOC/$PRGNAM.SlackBuild
+
+mkdir -p $PKG/install
+cat $CWD/slack-desc > $PKG/install/slack-desc
+
+cd $PKG
+/sbin/makepkg -l y -c n $OUTPUT/$PRGNAM-$VERSION-$ARCH-$BUILD$TAG.$PKGTYPE
diff --git a/games/jg-vecx/jg-vecx.info b/games/jg-vecx/jg-vecx.info
new file mode 100644
index 0000000000..a291043c75
--- /dev/null
+++ b/games/jg-vecx/jg-vecx.info
@@ -0,0 +1,10 @@
+PRGNAM="jg-vecx"
+VERSION="1.2.2"
+HOMEPAGE="https://jgemu.gitlab.io/"
+DOWNLOAD="https://gitlab.com/jgemu/vecx/-/archive/1.2.2/vecx-1.2.2.tar.gz"
+MD5SUM="57bab6f45e267c8493553176dcf28c9c"
+DOWNLOAD_x86_64=""
+MD5SUM_x86_64=""
+REQUIRES="jollygood"
+MAINTAINER="B. Watson"
+EMAIL="urchlay@slackware.uk"
diff --git a/games/jg-vecx/slack-desc b/games/jg-vecx/slack-desc
new file mode 100644
index 0000000000..6760ac914e
--- /dev/null
+++ b/games/jg-vecx/slack-desc
@@ -0,0 +1,19 @@
+# HOW TO EDIT THIS FILE:
+# The "handy ruler" below makes it easier to edit a package description.
+# Line up the first '|' above the ':' following the base package name, and
+# the '|' on the right side marks the last column you can put a character in.
+# You must make exactly 11 lines for the formatting to be correct. It's also
+# customary to leave one space after the ':' except on otherwise blank lines.
+
+ |-----handy-ruler------------------------------------------------------|
+jg-vecx: jg-vecx (Vectrex emulation core for Jolly Good Emulation)
+jg-vecx:
+jg-vecx: Vecx JG is an emulator for the Vectrex.
+jg-vecx:
+jg-vecx: This is a fork of the original, unmodified vecx sources made available
+jg-vecx: by Valavan Manohararajah at http://www.valavan.net/vectrex.html. Many
+jg-vecx: new features have been added since the fork was created. The emulator
+jg-vecx: now contains a new renderer, save states, and support for PSG and DAC
+jg-vecx: based audio.
+jg-vecx:
+jg-vecx:
diff --git a/games/jin/jin.SlackBuild b/games/jin/jin.SlackBuild
index 6725039b71..8b8beb086b 100644
--- a/games/jin/jin.SlackBuild
+++ b/games/jin/jin.SlackBuild
@@ -1,4 +1,4 @@
-#!/bin/sh
+#!/bin/bash -e
# Slackware build script for jin
#
@@ -27,17 +27,22 @@
# This is just a repackaging of the original unix tar.gz from
# http://www.jinchess.com
-set -e
+cd $(dirname $0) ; CWD=$(pwd)
PRGNAM=jin
VERSION=${VERSION:-2.14.1}
BUILD=${BUILD:-1}
TAG=${TAG:-_SBo}
+PKGTYPE=${PKGTYPE:-tgz}
# Independent of architecture so will throw it into /opt
ARCH="noarch"
-CWD=$(pwd)
+if [ ! -z "${PRINT_PACKAGE_NAME}" ]; then
+ echo "$PRGNAM-$VERSION-$ARCH-$BUILD$TAG.$PKGTYPE"
+ exit 0
+fi
+
TMP=${TMP:-/tmp/SBo}
PKG=$TMP/package-$PRGNAM
OUTPUT=${OUTPUT:-/tmp}
@@ -81,4 +86,4 @@ cat $CWD/slack-desc > $PKG/install/slack-desc
cat $CWD/doinst.sh > $PKG/install/doinst.sh
cd $PKG
-/sbin/makepkg -l y -c n $OUTPUT/$PRGNAM-$VERSION-$ARCH-$BUILD$TAG.${PKGTYPE:-tgz}
+/sbin/makepkg -l y -c n $OUTPUT/$PRGNAM-$VERSION-$ARCH-$BUILD$TAG.$PKGTYPE
diff --git a/games/jin/jin.info b/games/jin/jin.info
index de979add08..4625865547 100644
--- a/games/jin/jin.info
+++ b/games/jin/jin.info
@@ -5,6 +5,6 @@ DOWNLOAD="http://downloads.sourceforge.net/jin/jin-2.14.1-unix.tar.gz"
MD5SUM="62256214583c3214ffb9046176b6b02d"
DOWNLOAD_x86_64=""
MD5SUM_x86_64=""
-REQUIRES="jdk"
+REQUIRES="zulu-openjdk8"
MAINTAINER="Edward W. Koenig"
-EMAIL="kingbeowulf@gmail.com"
+EMAIL="kingbeowulf@linuxgalaxy.org"
diff --git a/games/jollygood/GUIDELINES.txt b/games/jollygood/GUIDELINES.txt
new file mode 100644
index 0000000000..bd24afaac8
--- /dev/null
+++ b/games/jollygood/GUIDELINES.txt
@@ -0,0 +1,44 @@
+If you're going to submit a SlackBuild for a Jolly Good Emulation
+core, please consider following this set of guidelines, for
+consistency's sake:
+
+- The SlackBuild name should be the name of the core (the actual
+ whatever.so file), all lowercase, with "jg-" prefixed to it.
+ Use this for PRGNAM. The actual tarballs tend to be named after the
+ git repo name (e.g. "mednafen"), so use SRCNAM in the SlackBuild for
+ this. The reason for this is partly to make them easy to find in
+ a search or directory listing, and partly because some of the cores
+ have the same name as the standalone emulators they were ported from
+ (again, "mednafen" is an example: SBo already has a mednafen build).
+
+- The .info file should have "jollygood" in REQUIRES, along with whatever
+ else it happens to need.
+
+- Use either jg-jollycv or jg-mednafen for a template. For cores that
+ have a jg.c in their top-level directory, use jolly-cv. For those
+ that have a "jollygood/jg.c", use jg-mednafen.
+
+- The README should include the note at the bottom ("By default,
+ no controls are mapped..."). If the core requires ROM images such
+ as a system BIOS, the README should give the location where the core
+ will look (e.g. jg-jollycv has ~/.local/share/jollygood/bios/coleco.rom)
+
+- The README should also list the filename extensions jgrf will recognize
+ as being ROMs for that core. Currently, the list is hard-coded in
+ src/jgrf.c in the jgrf source directory. If the core isn't automatically
+ used, mention that fact in the README (example: jg-sameboy).
+
+- The top line of the README and slack-desc should read:
+ jg-<whatever> (<system> emulation core for for Jolly Good Emulation)
+ If the system name is too long (e.g. Super Nintendo Entertainment
+ System), abbreviate it.
+
+- The next bit of the README should be copy/pasted from the README or
+ jollygood/README from the source.
+
+- When you submit the build, include the keywords "jollygood,jgemu", plus
+ the name(s) of the system(s) your core emulates. Example:
+ jollygood,jgemu,sega,genesis,megadrive
+
+- As always, use sbolint and sbopkglint on your build and package before
+ submitting the build. Install system/sbo-maintainer-tools to get them.
diff --git a/games/jollygood/README b/games/jollygood/README
new file mode 100644
index 0000000000..3f410592d8
--- /dev/null
+++ b/games/jollygood/README
@@ -0,0 +1,25 @@
+jollygood (the Jolly Good Emulation API and Reference Frontend)
+
+Jolly Good Emulation is an education and preservation oriented
+emulation project. As a side effect, it offers emulation technology
+that extreme minimalists may find tolerable.
+
+This package includes "jg" (the API headers) and "jgrf". jgrf is the
+simplest possible frontend for The Jolly Good API. The executable and
+man page are called "jollygood".
+
+After installing jollygood, you'll want to install "cores" (plugins)
+for the systems you want to emulate. Search for "jgemu" to find them
+on SBo. Also, if you want to install all the cores at once, use sbopkg
+or sbotools and either "jollygood-all-cores.sqf" (for 64-bit) or
+"jollygood-all-cores-32bit.sqf" from the SlackBuild directory.
+
+Ideally, once a core is installed, you can run games for that system
+with "jollygood <filename>", where <filename> is either a ROM or disk
+image, or a .zip file containing the image. This only works if the
+filename extension is known to jollygood. If you get "Cannot detect
+default core", you'll have to use the -c option to tell it what core
+to use. See also the jollygood(6) man page.
+
+If you're considering submitting a SlackBuild for a jollygood core,
+please read GUIDELINES.txt.
diff --git a/games/jollygood/doinst.sh b/games/jollygood/doinst.sh
new file mode 100644
index 0000000000..65c7e2eeb9
--- /dev/null
+++ b/games/jollygood/doinst.sh
@@ -0,0 +1,9 @@
+if [ -x /usr/bin/update-desktop-database ]; then
+ /usr/bin/update-desktop-database -q usr/share/applications >/dev/null 2>&1
+fi
+
+if [ -e usr/share/icons/hicolor/icon-theme.cache ]; then
+ if [ -x /usr/bin/gtk-update-icon-cache ]; then
+ /usr/bin/gtk-update-icon-cache -f usr/share/icons/hicolor >/dev/null 2>&1
+ fi
+fi
diff --git a/games/jollygood/jollygood-all-cores-32bit.sqf b/games/jollygood/jollygood-all-cores-32bit.sqf
new file mode 100644
index 0000000000..9d9a72f244
--- /dev/null
+++ b/games/jollygood/jollygood-all-cores-32bit.sqf
@@ -0,0 +1,14 @@
+jollygood
+jg-bsnes
+jg-cega
+jg-gambatte
+jg-genplus
+jg-jollycv
+jg-mednafen
+jg-melonds
+jg-mgba
+jg-nestopia
+jg-picodrive
+jg-prosystem
+jg-vecx
+jg-geolith
diff --git a/games/jollygood/jollygood-all-cores.sqf b/games/jollygood/jollygood-all-cores.sqf
new file mode 100644
index 0000000000..c94481b711
--- /dev/null
+++ b/games/jollygood/jollygood-all-cores.sqf
@@ -0,0 +1,16 @@
+jollygood
+jg-bsnes
+jg-cega
+jg-gambatte
+jg-genplus
+jg-jollycv
+jg-mednafen
+jg-melonds
+jg-mgba
+jg-nestopia
+jg-picodrive
+jg-prosystem
+rgbds
+jg-sameboy
+jg-vecx
+jg-geolith
diff --git a/games/jollygood/jollygood.SlackBuild b/games/jollygood/jollygood.SlackBuild
new file mode 100644
index 0000000000..5e3ae5e39a
--- /dev/null
+++ b/games/jollygood/jollygood.SlackBuild
@@ -0,0 +1,156 @@
+#!/bin/bash
+
+# Slackware build script for jgrf
+
+# Written by B. Watson (urchlay@slackware.uk)
+
+# Licensed under the WTFPL. See http://www.wtfpl.net/txt/copying/ for details.
+
+# Note: The Jolly Good stuff is a *joy* to package. Simple
+# human-readable Makefile, with sane defaults which can easily be
+# overridden (even CFLAGS). No need for patching[*] or sedding anything.
+# My hat is off to Rupert Carmichael (the jgemu author).
+
+# [*] OK, yes, I did include a patch in this build. It adds a few
+# filename extensions to the list, e.g. .smd for Sega Genesis, since
+# such files exist aplenty in the wild. Still, I didn't have to patch
+# the code just to get it to build and install as desired, which is
+# nice.
+
+# I don't see any reason to package jg and jgrf separately; the one
+# is useless without the other. So this build is for both of them.
+# Right now the only existing frontend is jgrf; someday if there are
+# other frontends, they can list REQUIRES="jollygood".
+
+# I packaged all but one of the available cores: the gngeo core's
+# README says it's pre-alpha quality, unsuitable for packaging.
+
+# VERSION is the jgrf version. The jg version will be the latest
+# at the time jgrf is updated. Possibly it will always be the same
+# version number, but there's a separate APIVER in case that turns out
+# to be wrong.
+
+# 20230902 bkw: updated for v1.0.2 (APIVER still 1.0.0).
+# 20230404 bkw: updated for v1.0.1 (APIVER still 1.0.0).
+# 20230121 bkw: submitted v1.0.0.
+
+cd $(dirname $0) ; CWD=$(pwd)
+
+PRGNAM=jollygood
+SRCNAM=jgrf
+VERSION=${VERSION:-1.0.2}
+APINAM=jg
+APIVER=${APIVER:-1.0.0}
+BUILD=${BUILD:-1}
+TAG=${TAG:-_SBo}
+PKGTYPE=${PKGTYPE:-tgz}
+
+if [ -z "$ARCH" ]; then
+ case "$( uname -m )" in
+ i?86) ARCH=i586 ;;
+ arm*) ARCH=arm ;;
+ *) ARCH=$( uname -m ) ;;
+ esac
+fi
+
+if [ ! -z "${PRINT_PACKAGE_NAME}" ]; then
+ echo "$PRGNAM-$VERSION-$ARCH-$BUILD$TAG.$PKGTYPE"
+ exit 0
+fi
+
+TMP=${TMP:-/tmp/SBo}
+PKG=$TMP/package-$PRGNAM
+OUTPUT=${OUTPUT:-/tmp}
+
+if [ "$ARCH" = "i586" ]; then
+ SLKCFLAGS="-O2 -march=i586 -mtune=i686"
+ LIBDIRSUFFIX=""
+elif [ "$ARCH" = "i686" ]; then
+ SLKCFLAGS="-O2 -march=i686 -mtune=i686"
+ LIBDIRSUFFIX=""
+elif [ "$ARCH" = "x86_64" ]; then
+ SLKCFLAGS="-O2 -fPIC"
+ LIBDIRSUFFIX="64"
+else
+ SLKCFLAGS="-O2"
+ LIBDIRSUFFIX=""
+fi
+
+set -e
+
+rm -rf $PKG
+mkdir -p $TMP $PKG $OUTPUT
+cd $TMP
+rm -rf $PRGNAM-$VERSION
+mkdir -p $PRGNAM-$VERSION
+cd $PRGNAM-$VERSION
+TOPDIR=$(pwd)
+tar xvf $CWD/$SRCNAM-$VERSION.tar.gz
+tar xvf $CWD/$APINAM-$APIVER.tar.gz
+chown -R root:root .
+find -L . -perm /111 -a \! -perm 755 -a -exec chmod 755 {} \+ -o \
+ \! -perm /111 -a \! -perm 644 -a -exec chmod 644 {} \+
+
+LIBDIR=/usr/lib$LIBDIRSUFFIX
+PKGLIB=$PKG/$LIBDIR
+DOCDIR=/usr/doc/$PRGNAM-$VERSION
+PKGDOC=$PKG/$DOCDIR
+
+# First, jg (the API, which is just a bunch of headers):
+cd $APINAM-$APIVER
+make install \
+ DESTDIR=$PKG \
+ PREFIX=/usr \
+ DATAROOTDIR=/usr/share \
+ DOCDIR=$DOCDIR/$APINAM-$APIVER \
+ INCLUDEDIR=/usr/include
+
+# Now, build jgrf:
+cd $TOPDIR/$SRCNAM-$VERSION
+
+# USE_EXTERNAL_MD5=1 makes it link with Slackware's libcrypto (from
+# openssl) instead of its own bundled copy. Can't see why this would
+# be a problem.
+
+# Do not use USE_EXTERNAL_MINIZ=1, we don't have a miniz package (we
+# do have minizip, but it's not the same thing apparently). Plus, who
+# needs an extra dependency?
+
+# Add .smd .sra for Genesis/Megadrive, add .fig .swc for SNES. Ideally
+# in some future version of jgrf, these will be found in a config file
+# instead of hardcoded in the executable.
+patch -p1 < $CWD/more_extensions.diff
+
+make install-strip \
+ CFLAGS="$SLKCFLAGS" \
+ CFLAGS_JG="-I $PKG/usr/include" \
+ USE_EXTERNAL_MD5=1 \
+ DESTDIR=$PKG \
+ PREFIX=/usr \
+ BINDIR=/usr/games \
+ DATAROOTDIR=/usr/share \
+ DOCDIR=$DOCDIR/$SRCNAM-$VERSION \
+ LIBDIR=$LIBDIR \
+ MANDIR=/usr/man
+
+gzip -9 $PKG/usr/man/man*/*.?
+
+# Don't want a svg icon in pixmaps, it should be a PNG.
+rm -f $PKG/usr/share/pixmaps/jollygood.svg
+ln -s ../icons/hicolor/48x48/apps/jollygood.png $PKG/usr/share/pixmaps/jollygood.png
+
+# Not sure if these duplicate icons are used, replace with symlinks.
+for i in 96 1024; do
+ f=$PKG/usr/share/$PRGNAM/jgrf/${PRGNAM}$i.png
+ rm $f
+ ln -s ../../icons/hicolor/${i}x${i}/apps/$PRGNAM.png $f
+done
+
+cat $CWD/$PRGNAM.SlackBuild > $PKGDOC/$PRGNAM.SlackBuild
+
+mkdir -p $PKG/install
+cat $CWD/slack-desc > $PKG/install/slack-desc
+cat $CWD/doinst.sh > $PKG/install/doinst.sh
+
+cd $PKG
+/sbin/makepkg -l y -c n $OUTPUT/$PRGNAM-$VERSION-$ARCH-$BUILD$TAG.$PKGTYPE
diff --git a/games/jollygood/jollygood.info b/games/jollygood/jollygood.info
new file mode 100644
index 0000000000..75f31354ab
--- /dev/null
+++ b/games/jollygood/jollygood.info
@@ -0,0 +1,12 @@
+PRGNAM="jollygood"
+VERSION="1.0.2"
+HOMEPAGE="https://jgemu.gitlab.io/"
+DOWNLOAD="https://gitlab.com/jgemu/jg/-/archive/1.0.0/jg-1.0.0.tar.gz \
+ https://gitlab.com/jgemu/jgrf/-/archive/1.0.2/jgrf-1.0.2.tar.gz"
+MD5SUM="90d3b5fcfdd86a0f7cd17ba31bbf793c \
+ 8dadd1fb849b15d77431e80853880939"
+DOWNLOAD_x86_64=""
+MD5SUM_x86_64=""
+REQUIRES=""
+MAINTAINER="B. Watson"
+EMAIL="urchlay@slackware.uk"
diff --git a/games/jollygood/more_extensions.diff b/games/jollygood/more_extensions.diff
new file mode 100644
index 0000000000..66d3f496b1
--- /dev/null
+++ b/games/jollygood/more_extensions.diff
@@ -0,0 +1,21 @@
+diff -Naur jgrf-1.0.0/src/jgrf.c jgrf-1.0.0.patched/src/jgrf.c
+--- jgrf-1.0.0/src/jgrf.c 2022-12-27 18:23:42.000000000 -0500
++++ jgrf-1.0.0.patched/src/jgrf.c 2023-01-20 22:48:24.225103350 -0500
+@@ -807,7 +807,8 @@
+ else if (!strcasecmp(ext, "lnx"))
+ snprintf(gdata.sys, sizeof(gdata.sys), "lynx");
+
+- else if (!strcasecmp(ext, "md"))
++ else if (!strcasecmp(ext, "md") || !strcasecmp(ext, "smd") ||
++ !strcasecmp(ext, "sra"))
+ snprintf(gdata.sys, sizeof(gdata.sys), "md");
+
+ else if (!strcasecmp(ext, "nds") || !strcasecmp(ext, "dsi"))
+@@ -823,6 +824,7 @@
+ snprintf(gdata.sys, sizeof(gdata.sys), "pce");
+
+ else if (!strcasecmp(ext, "sfc") || !strcasecmp(ext, "smc") ||
++ !strcasecmp(ext, "fig") || !strcasecmp(ext, "swc") ||
+ !strcasecmp(ext, "bs") || !strcasecmp(ext, "st"))
+ snprintf(gdata.sys, sizeof(gdata.sys), "snes");
+
diff --git a/games/jollygood/slack-desc b/games/jollygood/slack-desc
new file mode 100644
index 0000000000..885aad81a9
--- /dev/null
+++ b/games/jollygood/slack-desc
@@ -0,0 +1,19 @@
+# HOW TO EDIT THIS FILE:
+# The "handy ruler" below makes it easier to edit a package description.
+# Line up the first '|' above the ':' following the base package name, and
+# the '|' on the right side marks the last column you can put a character in.
+# You must make exactly 11 lines for the formatting to be correct. It's also
+# customary to leave one space after the ':' except on otherwise blank lines.
+
+ |-----handy-ruler------------------------------------------------------|
+jollygood: jollygood (the Jolly Good Emulation API and Reference Frontend)
+jollygood:
+jollygood: Jolly Good Emulation is an education and preservation oriented
+jollygood: emulation project. As a side effect, it offers emulation technology
+jollygood: that extreme minimalists may find tolerable.
+jollygood:
+jollygood: This package includes "jg" (the API headers) and "jgrf". jgrf is the
+jollygood: simplest possible frontend for The Jolly Good API. The executable and
+jollygood: man page are called "jollygood".
+jollygood:
+jollygood:
diff --git a/games/joy2key/README b/games/joy2key/README
new file mode 100644
index 0000000000..f76f27ec2f
--- /dev/null
+++ b/games/joy2key/README
@@ -0,0 +1,5 @@
+joy2key (control keyboard-only applications with joystick/gamepad)
+
+Joy2key allows you to control applications accepting keyboard commands
+with your joystick. It does not work with all applications, however,
+because some do not accept synthetic events for security reasons.
diff --git a/games/joy2key/button_list_segfault.patch b/games/joy2key/button_list_segfault.patch
new file mode 100644
index 0000000000..2a6e95d197
--- /dev/null
+++ b/games/joy2key/button_list_segfault.patch
@@ -0,0 +1,25 @@
+Author: Jonathan Niehof <jtniehof@gmail.com>
+Subject: Fix a segfault when parsing options to -buttons
+Last-Update: 2009-12-06
+Forwarded: yes
+Bug: https://sourceforge.net/tracker/?func=detail&aid=2909756&group_id=227783&atid=1072387
+
+joy2key segfaults when reading the list of keystrokes to associate with
+buttons. This is a regression from 1.6.1 and this patch simply reverts
+the offending line to that earlier version. I have verified that, with
+the patch applied, all buttons on the joystick are usable and all buttons
+listed on the command line are processed appropriately.
+
+Index: joy2key-1.6.3/joy2key.c
+===================================================================
+--- joy2key-1.6.3.orig/joy2key.c 2009-12-06 15:38:56.000000000 -0500
++++ joy2key-1.6.3/joy2key.c 2009-12-06 15:50:48.000000000 -0500
+@@ -576,7 +576,7 @@
+ exit(1);
+ }
+ button_act_counter=0;
+- while((i+1)<=argc && (argv[i+1][0]!='-' ||
++ while((i+1)<argc && (argv[i+1][0]!='-' ||
+ (argv[i+1][0]=='-' && !argv[i+1][1])))
+ {
+ button_actions[button_act_counter]=argtokey(argv[++i]);
diff --git a/games/joy2key/fix_manpage_typo.patch b/games/joy2key/fix_manpage_typo.patch
new file mode 100644
index 0000000000..e85fba48ea
--- /dev/null
+++ b/games/joy2key/fix_manpage_typo.patch
@@ -0,0 +1,20 @@
+Author: Ricardo Mones <mones@debian.org>
+Subject: fix typo in manpage spotted by lintian
+ Cleans lintian I: typo-in-manual-page retrive retrieve
+ [usr/share/man/man1/joy2key.1.gz:28]
+Last-Update: 2022-04-17
+Forwarded: no
+
+diff --git a/joy2key.1 b/joy2key.1
+index 6ed76a7..10959cd 100644
+--- a/joy2key.1
++++ b/joy2key.1
+@@ -25,7 +25,7 @@ note: [] denotes `optional' option or argument,
+ .I joy2key
+ monitors the joystick (normally /dev/input/js0) and sends keyboard events to
+ an X window, terminal, or raw console. In the case of X, xwininfo(1)
+-is used to retrive the window ID, which should not be a problem as
++is used to retrieve the window ID, which should not be a problem as
+ this is a standard utility in most X11 distributions. To find the
+ symbolic name of a particular key, see include/X11/keysymdef.h. In
+ terminal mode, joy2key sends the ascii character given on the command
diff --git a/games/joy2key/home_not_set_segfault.patch b/games/joy2key/home_not_set_segfault.patch
new file mode 100644
index 0000000000..0e0fb08c81
--- /dev/null
+++ b/games/joy2key/home_not_set_segfault.patch
@@ -0,0 +1,34 @@
+Author: Jonathan Niehof <jtniehof@gmail.com>
+Subject: Fix segfault if $HOME not set and -config passed
+Bug-Debian: https://bugs.debian.org/716582
+Forwarded: https://sourceforge.net/p/joy2key/patches/5/
+Last-Update: 2013-07-13
+
+--- a/joy2key.c
++++ b/joy2key.c
+@@ -386,6 +386,7 @@
+ FILE *file;
+ int rcargc;
+ char *rcargv[255], line[255];
++ char *homedir;
+
+ for(i=1; i<argc; i++)
+ {
+@@ -442,9 +443,15 @@
+ }
+ if(strcmp(rcfile,DEFAULT_RCFILE) == 0)
+ {
+- x=strlen(getenv("HOME")) + strlen(rcfile) + 2;
++ homedir=getenv("HOME");
++ if(homedir==NULL)
++ {
++ printf("No home directory; cannot open default rc file\n");
++ exit(1);
++ }
++ x=strlen(homedir) + strlen(rcfile) + 2;
+ rcfile=(char*)malloc(x);
+- sprintf(rcfile, "%s/%s", getenv("HOME"), DEFAULT_RCFILE);
++ sprintf(rcfile, "%s/%s", homedir, DEFAULT_RCFILE);
+ }
+ if((file=fopen(rcfile, "r"))==NULL)
+ {
diff --git a/games/joy2key/joy2key.SlackBuild b/games/joy2key/joy2key.SlackBuild
new file mode 100644
index 0000000000..67166d31d3
--- /dev/null
+++ b/games/joy2key/joy2key.SlackBuild
@@ -0,0 +1,99 @@
+#!/bin/bash
+
+# Slackware build script for joy2key
+
+# Written by B. Watson (urchlay@slackware.uk)
+
+# Licensed under the WTFPL. See http://www.wtfpl.net/txt/copying/ for details.
+
+# 20230107 bkw: BUILD=2, add another Debian patch. This puts us at
+# Debian version 1.6.3-5.
+
+cd $(dirname $0) ; CWD=$(pwd)
+
+PRGNAM=joy2key
+VERSION=${VERSION:-1.6.3}
+BUILD=${BUILD:-2}
+TAG=${TAG:-_SBo}
+PKGTYPE=${PKGTYPE:-tgz}
+
+if [ -z "$ARCH" ]; then
+ case "$( uname -m )" in
+ i?86) ARCH=i586 ;;
+ arm*) ARCH=arm ;;
+ *) ARCH=$( uname -m ) ;;
+ esac
+fi
+
+if [ ! -z "${PRINT_PACKAGE_NAME}" ]; then
+ echo "$PRGNAM-$VERSION-$ARCH-$BUILD$TAG.$PKGTYPE"
+ exit 0
+fi
+
+TMP=${TMP:-/tmp/SBo}
+PKG=$TMP/package-$PRGNAM
+OUTPUT=${OUTPUT:-/tmp}
+
+if [ "$ARCH" = "i586" ]; then
+ SLKCFLAGS="-O2 -march=i586 -mtune=i686"
+ LIBDIRSUFFIX=""
+elif [ "$ARCH" = "i686" ]; then
+ SLKCFLAGS="-O2 -march=i686 -mtune=i686"
+ LIBDIRSUFFIX=""
+elif [ "$ARCH" = "x86_64" ]; then
+ SLKCFLAGS="-O2 -fPIC"
+ LIBDIRSUFFIX="64"
+else
+ SLKCFLAGS="-O2"
+ LIBDIRSUFFIX=""
+fi
+
+set -e
+
+rm -rf $PKG
+mkdir -p $TMP $PKG $OUTPUT
+cd $TMP
+rm -rf $PRGNAM-$VERSION
+tar xvf $CWD/$PRGNAM-$VERSION.tar.bz2
+cd $PRGNAM-$VERSION
+chown -R root:root .
+find -L . -perm /111 -a \! -perm 755 -a -exec chmod 755 {} \+ -o \
+ \! -perm /111 -a \! -perm 644 -a -exec chmod 644 {} \+
+
+# these bugfix patches are from Debian.
+patch -p1 < $CWD/button_list_segfault.patch
+patch -p1 < $CWD/home_not_set_segfault.patch
+patch -p1 < $CWD/fix_manpage_typo.patch
+
+# someone forgot to update the FILES section in the man page.
+sed -i 's,/dev/js,/dev/input/js,' $PRGNAM.1
+
+CFLAGS="$SLKCFLAGS" \
+CXXFLAGS="$SLKCFLAGS" \
+./configure \
+ --prefix=/usr \
+ --libdir=/usr/lib${LIBDIRSUFFIX} \
+ --sysconfdir=/etc \
+ --localstatedir=/var \
+ --mandir=/usr/man \
+ --docdir=/usr/doc/$PRGNAM-$VERSION \
+ --disable-static \
+ --build=$ARCH-slackware-linux
+
+make
+
+# 'make install' is broken, it's just 2 files.
+mkdir -p $PKG/usr/bin $PKG/usr/man/man1
+install -s -m0755 $PRGNAM $PKG/usr/bin/$PRGNAM
+gzip -9c < $PRGNAM.1 > $PKG/usr/man/man1/$PRGNAM.1.gz
+
+PKGDOC=$PKG/usr/doc/$PRGNAM-$VERSION
+mkdir -p $PKGDOC
+cp -a AUTHORS COPYING ChangeLog README TODO rawscancodes joy2keyrc.sample $PKGDOC
+cat $CWD/$PRGNAM.SlackBuild > $PKGDOC/$PRGNAM.SlackBuild
+
+mkdir -p $PKG/install
+cat $CWD/slack-desc > $PKG/install/slack-desc
+
+cd $PKG
+/sbin/makepkg -l y -c n $OUTPUT/$PRGNAM-$VERSION-$ARCH-$BUILD$TAG.$PKGTYPE
diff --git a/games/joy2key/joy2key.info b/games/joy2key/joy2key.info
new file mode 100644
index 0000000000..47198570da
--- /dev/null
+++ b/games/joy2key/joy2key.info
@@ -0,0 +1,10 @@
+PRGNAM="joy2key"
+VERSION="1.6.3"
+HOMEPAGE="https://packages.debian.org/sid/joy2key"
+DOWNLOAD="http://ftp.osuosl.org/pub/gentoo/distfiles/1e/joy2key-1.6.3.tar.bz2"
+MD5SUM="e1119b8cbfd221b4f692d9968fad9ee5"
+DOWNLOAD_x86_64=""
+MD5SUM_x86_64=""
+REQUIRES=""
+MAINTAINER="B. Watson"
+EMAIL="urchlay@slackware.uk"
diff --git a/games/joy2key/slack-desc b/games/joy2key/slack-desc
new file mode 100644
index 0000000000..823ff9377d
--- /dev/null
+++ b/games/joy2key/slack-desc
@@ -0,0 +1,19 @@
+# HOW TO EDIT THIS FILE:
+# The "handy ruler" below makes it easier to edit a package description.
+# Line up the first '|' above the ':' following the base package name, and
+# the '|' on the right side marks the last column you can put a character in.
+# You must make exactly 11 lines for the formatting to be correct. It's also
+# customary to leave one space after the ':' except on otherwise blank lines.
+
+ |-----handy-ruler------------------------------------------------------|
+joy2key: joy2key (control keyboard-only applications with joystick/gamepad)
+joy2key:
+joy2key: Joy2key allows you to control applications accepting keyboard commands
+joy2key: with your joystick. It does not work with all applications, however,
+joy2key: because some do not accept synthetic events for security reasons.
+joy2key:
+joy2key: https://packages.debian.org/sid/joy2key
+joy2key:
+joy2key:
+joy2key:
+joy2key:
diff --git a/games/jzintv/README b/games/jzintv/README
index 3c2e465633..7db13058b2 100644
--- a/games/jzintv/README
+++ b/games/jzintv/README
@@ -1,20 +1,8 @@
+jzintv (Intellivision emulator)
+
jzintv is an emulator and development environment for the Mattel
Intellivision game console.
The Intellivision console contains code in the form of ROM. jzintv
-requires images of these ROMs in order to run. This package does not
-contain the ROM images due to copyright concerns. You can use the ROMs
-from the commercially available "Intellivision Lives!" CD-ROM, dump the
-ROMs from an Intellivision console, or attempt to find the ROMs on the
-'net somewhere. These are the same ROMs used by the MESS emulator,
-usually found as "intv.zip". Contents:
-
-exec.bin, 8192 bytes, md5sum 62e761035cb657903761800f4437b8af
-grom.bin, 2048 bytes, md5sum 0cd5946c6473e42e8e4c2137785e427f
-
-Your md5sums may not match, since Mattel released several versions of
-the ROMs. The above are known to work, but other versions might also
-work. jzintv looks for the .bin files, not the .zip file.
-
-Once you have the ROM images, place them in the /usr/share/jzintv/rom
-directory.
+requires images of these ROMs in order to run. The package includes
+the ROM images, so there's no need to search the 'net for them.
diff --git a/games/jzintv/extract_roms.sh b/games/jzintv/extract_roms.sh
new file mode 100644
index 0000000000..b7931d2efc
--- /dev/null
+++ b/games/jzintv/extract_roms.sh
@@ -0,0 +1,73 @@
+#!/bin/bash
+
+# extract_roms.sh: find the Intellivision and/or ECS ROM images,
+# either as zip files (which get unzipped) or as extracted contents,
+# and copy them to the destination dir (if it exists). This script is
+# intended to be run by jzintv.SlackBuild.
+
+# First arg: the SlackBuild dir ($CWD in the caller).
+srcdir="$1"
+
+# 2nd arg: where the .bin files should go ($ROMDIR in the caller).
+destdir="$2"
+
+# Full list of dirs where we'll look for ROMs.
+alldirs="$srcdir /usr/share/jzintv/rom /usr/share/games/jzintv/rom /usr/share/games/mame/roms ${JZINTV_ROM_PATH//: }"
+
+echo "=== Will search for ROMs in: $alldirs"
+
+# nocaseglob means we can handle intv.zip, intv.ZIP, INTV.ZIP, etc.
+shopt -s nocaseglob
+
+shopt -s nullglob
+
+# First, extract any likely-looking zip files we find.
+for dir in $alldirs; do
+ [ -d $dir ] || continue
+ for zipfile in $dir/intv*.zip $dir/ecs*.zip; do
+ echo "===> Extracting $zipfile"
+ unzip -o -LL $zipfile '*.rom' '*.bin' '*.int' '*.20' '*.70' '*.e0' '*.u21'
+ done
+ cd -
+done
+
+# Handle MAME/MESS split rom.
+if [ -e ecs_rom.20 -a -e ecs_rom.70 -a -e ecs_rom.e0 ]; then
+ echo "===> found split ECS ROM, combining"
+ cat ecs_rom.20 ecs_rom.70 ecs_rom.e0 > ecs.bin
+fi
+
+# Handle the new MAME name for grom.bin.
+if [ -e "ro-3-9503-003.u21" ]; then
+ echo "===> found MAME's ro-3-9503-003.u21, renaming to grom.bin"
+ mv ro-3-9503-003.u21 grom.bin
+fi
+
+# Now look for the actual ROMs, including any we just extracted above.
+for dir in $(pwd) $alldirs; do
+ [ -d $dir ] || continue
+ echo "===> Looking for unzipped ROMs in $dir"
+ for file in $dir/{exec,grom,ecs}.{rom,bin,int}*; do
+ tmp_name="$( echo $file | tr A-Z a-z | sed 's,\.[^.]*$,.bin,' )"
+ dest_name="$( basename $tmp_name )"
+ if [ "$dest_name" = "intv_ecs.bin" ]; then
+ dest_name="ecs.bin"
+ fi
+ size="$( stat -c %s "$file" )"
+ echo "===> candidate for $dest_name: $file, size $size"
+ case "$dest_name" in
+ grom.bin)
+ [ "$size" != 2048 ] && break ;;
+ exec.bin)
+ [ "$size" != 8192 ] && break ;;
+ esc.bin)
+ [ "$size" != 24576 ] && break ;;
+ esac
+ case "$dest_name" in
+ grom.bin|exec.bin|ecs.bin)
+ echo "===> found $dest_name as $file"
+ [ -d "$destdir" ] && cp "$file" "$destdir/$dest_name"
+ ;;
+ esac
+ done
+done
diff --git a/games/jzintv/jzintv.SlackBuild b/games/jzintv/jzintv.SlackBuild
index dbcc1323e6..b830b3b65c 100644
--- a/games/jzintv/jzintv.SlackBuild
+++ b/games/jzintv/jzintv.SlackBuild
@@ -1,15 +1,29 @@
-#!/bin/sh
+#!/bin/bash
# Slackware build script for jzintv
-# Written by B. Watson (yalhcru@gmail.com)
+# Written by B. Watson (urchlay@slackware.uk)
# Licensed under the WTFPL. See http://www.wtfpl.net/txt/copying/ for details.
+# 20230107 bkw: BUILD=3
+# - fix permissions in doc dir.
+# - go ahead and include the ROMs in the package.
+
+# 20211023 bkw: BUILD=2
+# - fix -current build.
+# - binaries in /usr/games.
+# - /usr/share/jzintv/ => /usr/share/game/jzintv
+# - add patch to make the default window size 1024x768.
+# - include ROM images in package, if they exist in the SlackBuild dir.
+
+cd $(dirname $0) ; CWD=$(pwd)
+
PRGNAM=jzintv
VERSION=${VERSION:-r1025}
-BUILD=${BUILD:-1}
+BUILD=${BUILD:-3}
TAG=${TAG:-_SBo}
+PKGTYPE=${PKGTYPE:-tgz}
if [ -z "$ARCH" ]; then
case "$( uname -m )" in
@@ -19,7 +33,11 @@ if [ -z "$ARCH" ]; then
esac
fi
-CWD=$(pwd)
+if [ ! -z "${PRINT_PACKAGE_NAME}" ]; then
+ echo "$PRGNAM-$VERSION-$ARCH-$BUILD$TAG.$PKGTYPE"
+ exit 0
+fi
+
TMP=${TMP:-/tmp/SBo}
PKG=$TMP/package-$PRGNAM
OUTPUT=${OUTPUT:-/tmp}
@@ -47,40 +65,64 @@ rm -rf $PRGNAM-$VERSION
tar xvf $CWD/$PRGNAM-$VERSION.tar.?z*
cd $PRGNAM-$VERSION
chown -R root:root .
-find -L . \
- \( -perm 777 -o -perm 775 -o -perm 750 -o -perm 711 -o -perm 555 \
- -o -perm 511 \) -exec chmod 755 {} \; -o \
- \( -perm 666 -o -perm 664 -o -perm 640 -o -perm 600 -o -perm 444 \
- -o -perm 440 -o -perm 400 \) -exec chmod 644 {} \;
+find . -type f -a -exec chmod 644 {} \+ -o \
+ -type d -a -exec chmod 755 {} \+
+
+# 20211024 bkw: these patches are gzipped because they contain \r\n
+# line endings, and we can't trust git to preserve them.
# Don't see a way to redefine the ROM path on the make command
# line (it's hard-coded to /usr/local/share/jzintv/rom).
-patch -p1 < $CWD/jzintv_rompath.patch
+zcat $CWD/rompath.diff.gz | patch -p1
+
+# It's 2021, make the default window size bigger than 320x240.
+# This sets it to 1024x768, and also fixes the --help output to show
+# all the available modes.
+zcat $CWD/resolution.diff.gz | patch -p1
-# Fix for gcc-4.7.x
-sed -i "s|L\.\./lib|L../lib -lm|" src/Makefile
+# Fix for gcc-4.7.x and up.
+sed -i '/^LFLAGS/s,$, -lm,' src/Makefile
-cd src
- make OPT_FLAGS="$SLKCFLAGS"
-cd -
+make -C src OPT_FLAGS="$SLKCFLAGS -fcommon"
# There's no 'make install'
rm -f bin/README* bin/*.dll
strip bin/*
-mkdir -p $PKG/usr/bin
-cp -a bin/* $PKG/usr/bin
+mkdir -p $PKG/usr/games
+cp -a bin/* $PKG/usr/games
# The rompath patch above makes jzintv look here for the
# system ROMs
-mkdir -p $PKG/usr/share/$PRGNAM/rom
+ROMDIR=$PKG/usr/share/games/$PRGNAM/rom
+mkdir -p $ROMDIR
+
+# 20211022 bkw: if the ROMs are in the slackbuild dir, include them.
+# ROM finding/extraction script is separate, as it's fairly
+# complex (or at least tedious).
+sh $CWD/extract_roms.sh $CWD $ROMDIR
+
+ROMS=""
+for romfile in exec.bin grom.bin ecs.bin; do
+ if [ -e $ROMDIR/$romfile ]; then
+ ROMS+="$romfile "
+ fi
+done
+
+if [ "$ROMS" = "" ]; then
+ ROMS="This package does NOT include ROM images."
+else
+ ROMS="This package includes ROM images: $ROMS"
+fi
-mkdir -p $PKG/usr/doc/$PRGNAM-$VERSION
-cp -r *.txt doc examples rom misc $PKG/usr/doc/$PRGNAM-$VERSION
-cat $CWD/$PRGNAM.SlackBuild > $PKG/usr/doc/$PRGNAM-$VERSION/$PRGNAM.SlackBuild
-cat $CWD/README > $PKG/usr/doc/$PRGNAM-$VERSION/README_SBo.txt
+PKGDOC=$PKG/usr/doc/$PRGNAM-$VERSION
+mkdir -p $PKGDOC
+echo "This directory is empty on purpose" > examples/spacepat/genasm/.dontdelete
+cp -r *.txt doc examples rom misc $PKGDOC
+cat $CWD/$PRGNAM.SlackBuild > $PKGDOC/$PRGNAM.SlackBuild
+cat $CWD/README > $PKGDOC/README_SBo.txt
mkdir -p $PKG/install
-cat $CWD/slack-desc > $PKG/install/slack-desc
+sed "14s/:/: $ROMS/" $CWD/slack-desc > $PKG/install/slack-desc
cd $PKG
-/sbin/makepkg -l y -c n $OUTPUT/$PRGNAM-$VERSION-$ARCH-$BUILD$TAG.${PKGTYPE:-tgz}
+/sbin/makepkg -l y -c n $OUTPUT/$PRGNAM-$VERSION-$ARCH-$BUILD$TAG.$PKGTYPE
diff --git a/games/jzintv/jzintv.info b/games/jzintv/jzintv.info
index 1b07eea847..e92e28d256 100644
--- a/games/jzintv/jzintv.info
+++ b/games/jzintv/jzintv.info
@@ -1,10 +1,14 @@
PRGNAM="jzintv"
VERSION="r1025"
HOMEPAGE="http://www.intellivision.us/intvgames/jzintv/jzintv.php"
-DOWNLOAD="http://ponce.cc/slackware/sources/repo/jzintv-r1025.tar.xz"
-MD5SUM="6c1a9703c1c3a797aca94a0f98907bcb"
+DOWNLOAD="http://ponce.cc/slackware/sources/repo/jzintv-r1025.tar.xz \
+ https://slackware.uk/~urchlay/src/intv_ecs.zip \
+ http://cominf0.narod.ru/mess123/intv.zip"
+MD5SUM="6c1a9703c1c3a797aca94a0f98907bcb \
+ 9391d44477a531668bfd233f0809eebd \
+ 84ab0811c5d65b0be1cf16c755ae2dc6"
DOWNLOAD_x86_64=""
MD5SUM_x86_64=""
REQUIRES=""
MAINTAINER="B. Watson"
-EMAIL="yalhcru@gmail.com"
+EMAIL="urchlay@slackware.uk"
diff --git a/games/jzintv/jzintv_rompath.patch b/games/jzintv/jzintv_rompath.patch
deleted file mode 100644
index b5b40e566a..0000000000
--- a/games/jzintv/jzintv_rompath.patch
+++ /dev/null
@@ -1,12 +0,0 @@
-diff -Naur jzintv-1.0-beta3/src/config.h jzintv-1.0-beta3.patched/src/config.h
---- jzintv-1.0-beta3/src/config.h 2006-07-06 13:52:01.000000000 -0400
-+++ jzintv-1.0-beta3.patched/src/config.h 2009-02-04 23:28:34.000000000 -0500
-@@ -166,7 +166,7 @@
-
- #ifdef linux
- # define USE_STRCASECMP
--# define DEFAULT_ROM_PATH ".:=../rom:/usr/local/share/jzintv/rom"
-+# define DEFAULT_ROM_PATH ".:/usr/share/jzintv/rom"
- # define HAS_LINK
- #endif
-
diff --git a/games/jzintv/resolution.diff.gz b/games/jzintv/resolution.diff.gz
new file mode 100644
index 0000000000..00b5b0db27
--- /dev/null
+++ b/games/jzintv/resolution.diff.gz
Binary files differ
diff --git a/games/jzintv/rompath.diff.gz b/games/jzintv/rompath.diff.gz
new file mode 100644
index 0000000000..d7f28e9e2b
--- /dev/null
+++ b/games/jzintv/rompath.diff.gz
Binary files differ
diff --git a/games/kardsgt/doinst.sh b/games/kardsgt/doinst.sh
index 5fb28930db..3e5691a052 100644
--- a/games/kardsgt/doinst.sh
+++ b/games/kardsgt/doinst.sh
@@ -1,3 +1,9 @@
if [ -x /usr/bin/update-desktop-database ]; then
/usr/bin/update-desktop-database -q usr/share/applications >/dev/null 2>&1
fi
+
+if [ -e usr/share/icons/hicolor/icon-theme.cache ]; then
+ if [ -x /usr/bin/gtk-update-icon-cache ]; then
+ /usr/bin/gtk-update-icon-cache usr/share/icons/hicolor >/dev/null 2>&1
+ fi
+fi
diff --git a/games/kardsgt/kardsgt.SlackBuild b/games/kardsgt/kardsgt.SlackBuild
index b02999939d..ee2d759cdf 100644
--- a/games/kardsgt/kardsgt.SlackBuild
+++ b/games/kardsgt/kardsgt.SlackBuild
@@ -1,15 +1,28 @@
-#!/bin/sh
+#!/bin/bash
# Slackware build script for kardsgt
-# Written by B. Watson (yalhcru@gmail.com)
+# Written by B. Watson (urchlay@slackware.uk)
# Licensed under the WTFPL. See http://www.wtfpl.net/txt/copying/ for details.
+# 20220124 bkw: BUILD=2.
+# - updated for new qt4 build.
+# - new-style icon.
+
+# In case anyone's wondering... I keep this outdated, unmaintained
+# piece of software around because I like to play Spades, and so far
+# I haven't found another open source Spades game that runs on Linux
+# (and not in a browser). Sooner or later, I'll port this to qt5,
+# and/or write my own replacement Spades game.
+
+cd $(dirname $0) ; CWD=$(pwd)
+
PRGNAM=kardsgt
VERSION=${VERSION:-0.7.1}
-BUILD=${BUILD:-1}
+BUILD=${BUILD:-2}
TAG=${TAG:-_SBo}
+PKGTYPE=${PKGTYPE:-tgz}
if [ -z "$ARCH" ]; then
case "$( uname -m )" in
@@ -19,7 +32,11 @@ if [ -z "$ARCH" ]; then
esac
fi
-CWD=$(pwd)
+if [ ! -z "${PRINT_PACKAGE_NAME}" ]; then
+ echo "$PRGNAM-$VERSION-$ARCH-$BUILD$TAG.$PKGTYPE"
+ exit 0
+fi
+
TMP=${TMP:-/tmp/SBo}
PKG=$TMP/package-$PRGNAM
OUTPUT=${OUTPUT:-/tmp}
@@ -40,6 +57,8 @@ fi
set -e
+source /etc/profile.d/qt4.sh
+
rm -rf $PKG
mkdir -p $TMP $PKG $OUTPUT
cd $TMP
@@ -47,11 +66,8 @@ rm -rf $PRGNAM-$VERSION
tar xvf $CWD/$PRGNAM-$VERSION.tar.gz
cd $PRGNAM-$VERSION
chown -R root:root .
-find -L . \
- \( -perm 777 -o -perm 775 -o -perm 750 -o -perm 711 -o -perm 555 \
- -o -perm 511 \) -exec chmod 755 {} \; -o \
- \( -perm 666 -o -perm 664 -o -perm 640 -o -perm 600 -o -perm 444 \
- -o -perm 440 -o -perm 400 \) -exec chmod 644 {} \;
+find -L . -perm /111 -a \! -perm 755 -a -exec chmod 755 {} \+ -o \
+ \! -perm /111 -a \! -perm 644 -a -exec chmod 644 {} \+
# fix paths in FILES section of man page. Also a couple typos.
sed -i \
@@ -72,10 +88,19 @@ sed -i \
'/<title/a<meta http-equiv="content-type" content="text/html;charset=utf-8" />' \
src/doc/*.html
+# 20220124 bkw: icon is a weird size, 60x40. center it in a 64x64 PNG.
+# Include old-style icon in pixmaps/, if anything needs it.
+convert -background none -extent 64x64 -gravity center \
+ src/images/kardsgticon.png \
+ newicon.png
+mkdir -p $PKG/usr/share/pixmaps
+convert -resize 48x48 newicon.png $PKG/usr/share/pixmaps/$PRGNAM.png
+mv newicon.png src/images/kardsgticon.png
+
qmake -after \
target.path=/usr/games \
man.path=/usr/man/man6 \
- icons.path=/usr/share/pixmaps \
+ icons.path=/usr/share/icons/hicolor/64x64/apps/ \
QMAKE_CXXFLAGS_RELEASE="$SLKCFLAGS"
make -j1 release
make -j1 -C src release-install INSTALL_ROOT=$PKG
@@ -102,4 +127,4 @@ cat $CWD/slack-desc > $PKG/install/slack-desc
cat $CWD/doinst.sh > $PKG/install/doinst.sh
cd $PKG
-/sbin/makepkg -l y -c n $OUTPUT/$PRGNAM-$VERSION-$ARCH-$BUILD$TAG.${PKGTYPE:-tgz}
+/sbin/makepkg -l y -c n $OUTPUT/$PRGNAM-$VERSION-$ARCH-$BUILD$TAG.$PKGTYPE
diff --git a/games/kardsgt/kardsgt.desktop b/games/kardsgt/kardsgt.desktop
index baafd7a356..9fdc4595bd 100644
--- a/games/kardsgt/kardsgt.desktop
+++ b/games/kardsgt/kardsgt.desktop
@@ -1,7 +1,7 @@
[Desktop Entry]
Name=KardsGT
Comment=Full card game suite
-Exec=kardsgt
+Exec=/usr/games/kardsgt
GenericName=Card game suite
Icon=kardsgticon
Type=Application
diff --git a/games/kardsgt/kardsgt.info b/games/kardsgt/kardsgt.info
index 85638053d5..3c229f9710 100644
--- a/games/kardsgt/kardsgt.info
+++ b/games/kardsgt/kardsgt.info
@@ -7,4 +7,4 @@ DOWNLOAD_x86_64=""
MD5SUM_x86_64=""
REQUIRES="qt-assistant-compat"
MAINTAINER="B. Watson"
-EMAIL="yalhcru@gmail.com"
+EMAIL="urchlay@slackware.uk"
diff --git a/games/kildclient/kildclient.SlackBuild b/games/kildclient/kildclient.SlackBuild
index 7b2606a9f0..6c06daed5a 100644
--- a/games/kildclient/kildclient.SlackBuild
+++ b/games/kildclient/kildclient.SlackBuild
@@ -1,4 +1,4 @@
-#!/bin/sh
+#!/bin/bash
# Slackware build script for kildclient
# Written by Ozan Türkyılmaz <ozan.turkyilmaz@gmail.com>
@@ -24,26 +24,36 @@
# ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
+cd $(dirname $0) ; CWD=$(pwd)
+
PRGNAM=kildclient
-VERSION=${VERSION:-3.0.1}
+VERSION=${VERSION:-3.2.0.1}
BUILD=${BUILD:-1}
TAG=${TAG:-_SBo}
+PKGTYPE=${PKGTYPE:-tgz}
if [ -z "$ARCH" ]; then
case "$( uname -m )" in
- i?86) ARCH=i486 ;;
+ i?86) ARCH=i586 ;;
arm*) ARCH=arm ;;
*) ARCH=$( uname -m ) ;;
esac
fi
-CWD=$(pwd)
+# If the variable PRINT_PACKAGE_NAME is set, then this script will report what
+# the name of the created package would be, and then exit. This information
+# could be useful to other scripts.
+if [ ! -z "${PRINT_PACKAGE_NAME}" ]; then
+ echo "$PRGNAM-$VERSION-$ARCH-$BUILD$TAG.$PKGTYPE"
+ exit 0
+fi
+
TMP=${TMP:-/tmp/SBo}
PKG=$TMP/package-$PRGNAM
OUTPUT=${OUTPUT:-/tmp}
-if [ "$ARCH" = "i486" ]; then
- SLKCFLAGS="-O2 -march=i486 -mtune=i686"
+if [ "$ARCH" = "i586" ]; then
+ SLKCFLAGS="-O2 -march=i586 -mtune=i686"
LIBDIRSUFFIX=""
elif [ "$ARCH" = "i686" ]; then
SLKCFLAGS="-O2 -march=i686 -mtune=i686"
@@ -71,6 +81,9 @@ find -L . \
\( -perm 666 -o -perm 664 -o -perm 600 -o -perm 444 -o -perm 440 -o -perm 400 \) \
-exec chmod 644 {} \;
+#Let's add the main category to the desktop file and remove other one
+sed -i 's/Categories=Network;RolePlaying;/Categories=RolePlaying;Game;/' kildclient.desktop
+
CFLAGS="$SLKCFLAGS" \
CXXFLAGS="$SLKCFLAGS" \
./configure \
@@ -100,4 +113,4 @@ cat $CWD/slack-desc > $PKG/install/slack-desc
cat $CWD/doinst.sh > $PKG/install/doinst.sh
cd $PKG
-/sbin/makepkg -l y -c n $OUTPUT/$PRGNAM-$VERSION-$ARCH-$BUILD$TAG.${PKGTYPE:-tgz}
+/sbin/makepkg -l y -c n $OUTPUT/$PRGNAM-$VERSION-$ARCH-$BUILD$TAG.$PKGTYPE
diff --git a/games/kildclient/kildclient.info b/games/kildclient/kildclient.info
index b7259f377f..a4a1985378 100644
--- a/games/kildclient/kildclient.info
+++ b/games/kildclient/kildclient.info
@@ -1,10 +1,10 @@
PRGNAM="kildclient"
-VERSION="3.0.1"
+VERSION="3.2.0.1"
HOMEPAGE="https://www.kildclient.org/"
-DOWNLOAD="https://sourceforge.net/projects/kildclient/files/kildclient/3.0.1/kildclient-3.0.1.tar.gz"
-MD5SUM="017645d0c6a6cc13bec206f5778a1598"
+DOWNLOAD="https://gitlab.com/ozanty/sbodirectlinks/-/raw/main/kildclient/kildclient-3.2.0.1.tar.gz"
+MD5SUM="33ec0951bcc1be38beb7480313782f13"
DOWNLOAD_x86_64=""
MD5SUM_x86_64=""
-REQUIRES="perl-JSON"
+REQUIRES="perl-JSON perl-xml-libxml gtkspell3"
MAINTAINER="Ozan Türkyılmaz"
EMAIL="ozan.turkyilmaz@gmail.com"
diff --git a/games/knights/README b/games/knights/README
deleted file mode 100644
index e133dba217..0000000000
--- a/games/knights/README
+++ /dev/null
@@ -1,6 +0,0 @@
-knights (a simple chess board for KDE 4)
-
-Knights is a rewrite of the KDE3 Knights. You can play against computer
-engines that support the XBoard protocol (like GnuChess), against
-another player at the same computer, or on the Free Internet Chess
-Server. It has automatic rule checking and some nice animations.
diff --git a/games/knights/doinst.sh b/games/knights/doinst.sh
deleted file mode 100644
index aea0f894eb..0000000000
--- a/games/knights/doinst.sh
+++ /dev/null
@@ -1,13 +0,0 @@
-if [ -x /usr/bin/update-desktop-database ]; then
- /usr/bin/update-desktop-database -q usr/share/applications >/dev/null 2>&1
-fi
-
-if [ -x /usr/bin/update-mime-database ]; then
- /usr/bin/update-mime-database usr/share/mime >/dev/null 2>&1
-fi
-
-if [ -e usr/share/icons/hicolor/icon-theme.cache ]; then
- if [ -x /usr/bin/gtk-update-icon-cache ]; then
- /usr/bin/gtk-update-icon-cache -f usr/share/icons/hicolor >/dev/null 2>&1
- fi
-fi
diff --git a/games/knights/knights.SlackBuild b/games/knights/knights.SlackBuild
deleted file mode 100644
index d4a1f1c9f8..0000000000
--- a/games/knights/knights.SlackBuild
+++ /dev/null
@@ -1,118 +0,0 @@
-#!/bin/sh
-
-# Slackware build script for knights
-
-# Copyright 2011, 2012 Chris Abela, Malta
-# Copyright 2014 Ryan P.C. McQuen, <email removed>, WA
-# Now maintained by B. Watson (yalhcru@gmail.com)
-#
-# All rights reserved.
-#
-# Redistribution and use of this script, with or without modification, is
-# permitted provided that the following conditions are met:
-#
-# 1. Redistributions of this script must retain the above copyright
-# notice, this list of conditions and the following disclaimer.
-#
-# THIS SOFTWARE IS PROVIDED BY THE AUTHOR ''AS IS'' AND ANY EXPRESS OR IMPLIE
-# WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE IMPLIED WARRANTIES OF
-# MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE ARE DISCLAIMED. IN NO
-# EVENT SHALL THE AUTHOR BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL,
-# SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT LIMITED TO,
-# PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, DATA, OR PROFITS;
-# OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY,
-# WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR
-# OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF THIS SOFTWARE, EVEN IF
-# ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
-
-# 20170810 bkw:
-# - install HTML docs in /usr/doc, not /usr/share/doc
-# - fix README and slack-desc typos
-# - remove long-dead homepage link from slack-desc
-# - BUILD=3
-
-# 20170309 bkw:
-# - take over maintenance
-# - i486 => i586
-# - binary in /usr/games
-# - BUILD=2
-
-PRGNAM=knights
-VERSION=${VERSION:-2.5.0}
-BUILD=${BUILD:-3}
-TAG=${TAG:-_SBo}
-
-if [ -z "$ARCH" ]; then
- case "$( uname -m )" in
- i?86) ARCH=i586 ;;
- arm*) ARCH=arm ;;
- *) ARCH=$( uname -m ) ;;
- esac
-fi
-
-CWD=$(pwd)
-TMP=${TMP:-/tmp/SBo}
-PKG=$TMP/package-$PRGNAM
-OUTPUT=${OUTPUT:-/tmp}
-
-if [ "$ARCH" = "i586" ]; then
- SLKCFLAGS="-O2 -march=i586 -mtune=i686"
- LIBDIRSUFFIX=""
-elif [ "$ARCH" = "i686" ]; then
- SLKCFLAGS="-O2 -march=i686 -mtune=i686"
- LIBDIRSUFFIX=""
-elif [ "$ARCH" = "x86_64" ]; then
- SLKCFLAGS="-O2 -fPIC"
- LIBDIRSUFFIX="64"
-else
- SLKCFLAGS="-O2"
- LIBDIRSUFFIX=""
-fi
-
-set -e
-
-rm -rf $PKG
-mkdir -p $TMP $PKG $OUTPUT
-cd $TMP
-rm -rf $PRGNAM-$VERSION
-tar xvf $CWD/$PRGNAM-$VERSION.tar.bz2
-cd $PRGNAM-$VERSION
-chown -R root:root .
-find -L . \
- \( -perm 777 -o -perm 775 -o -perm 750 -o -perm 711 -o -perm 555 \
- -o -perm 511 \) -exec chmod 755 {} \; -o \
- \( -perm 666 -o -perm 664 -o -perm 640 -o -perm 600 -o -perm 444 \
- -o -perm 440 -o -perm 400 \) -exec chmod 644 {} \;
-
-mkdir -p build
-cd build
- cmake \
- -DCMAKE_C_FLAGS:STRING="$SLKCFLAGS" \
- -DCMAKE_CXX_FLAGS:STRING="$SLKCFLAGS" \
- -DCMAKE_INSTALL_PREFIX=/usr \
- -DLIB_SUFFIX=${LIBDIRSUFFIX} \
- -DMAN_INSTALL_DIR=/usr/man \
- -DBIN_INSTALL_DIR=/usr/games \
- -DCMAKE_BUILD_TYPE=Release ..
- make VERBOSE=1
- make install/strip DESTDIR=$PKG
-cd ..
-
-# 20170309 bkw: I thought about doing this:
-#chmod 644 $PKG/usr/share/applications/kde4/$PRGNAM.desktop
-# ...but most of the existing files there from other packages are +x,
-# not sure if KDE cares about the permissions but I'll leave it as-is.
-
-# 20170810 bkw: don't install to /usr/share/doc
-mv $PKG/usr/share/doc $PKG/usr/doc
-
-mkdir -p $PKG/usr/doc/$PRGNAM-$VERSION
-cp -a DESIGN README* $PKG/usr/doc/$PRGNAM-$VERSION
-cat $CWD/$PRGNAM.SlackBuild > $PKG/usr/doc/$PRGNAM-$VERSION/$PRGNAM.SlackBuild
-
-mkdir -p $PKG/install
-cat $CWD/slack-desc > $PKG/install/slack-desc
-cat $CWD/doinst.sh > $PKG/install/doinst.sh
-
-cd $PKG
-/sbin/makepkg -l y -c n $OUTPUT/$PRGNAM-$VERSION-$ARCH-$BUILD$TAG.${PKGTYPE:-tgz}
diff --git a/games/knights/knights.info b/games/knights/knights.info
deleted file mode 100644
index b21e7877fa..0000000000
--- a/games/knights/knights.info
+++ /dev/null
@@ -1,10 +0,0 @@
-PRGNAM="knights"
-VERSION="2.5.0"
-HOMEPAGE="http://opendesktop.org/content/show.php?content=122046"
-DOWNLOAD="http://sourceforge.net/projects/slackbuildsdirectlinks/files/knights/knights-2.5.0.tar.bz2"
-MD5SUM="58237998aeee8b6414f6e6f92d070395"
-DOWNLOAD_x86_64=""
-MD5SUM_x86_64=""
-REQUIRES=""
-MAINTAINER="B. Watson"
-EMAIL="yalhcru@gmail.com"
diff --git a/games/knights/slack-desc b/games/knights/slack-desc
deleted file mode 100644
index b2c120b2d3..0000000000
--- a/games/knights/slack-desc
+++ /dev/null
@@ -1,19 +0,0 @@
-# HOW TO EDIT THIS FILE:
-# The "handy ruler" below makes it easier to edit a package description.
-# Line up the first '|' above the ':' following the base package name, and
-# the '|' on the right side marks the last column you can put a character in.
-# You must make exactly 11 lines for the formatting to be correct. It's also
-# customary to leave one space after the ':' except on otherwise blank lines.
-
- |-----handy-ruler------------------------------------------------------|
-knights: knights (a simple chess board for KDE 4)
-knights:
-knights: Knights is a rewrite of the KDE3 Knights. You can play against
-knights: computer engines that support the XBoard protocol (like GnuChess),
-knights: against another player at the same computer, or on the Free Internet
-knights: Chess Server. It has automatic rule checking and some nice animations.
-knights:
-knights:
-knights:
-knights:
-knights:
diff --git a/games/koules/README b/games/koules/README
index 2a4c5b8046..f6919fd57a 100644
--- a/games/koules/README
+++ b/games/koules/README
@@ -1,8 +1,10 @@
+koules (fast action arcade-style game)
+
Koules is a fast action arcade-style game for UNIX and OS/2. This
version supports X window system, SVGAlib for Linux and OS/2. It
works in fine (up to 900x620) resolution with cool 256 color graphics,
multiplayer mode up to 5 players, full sound and, of course, network
-support. Koules is an original idea. First version of Koules was
+support. Koules is an original idea. First version of Koules was
developed from scratch by Jan Hubicka in July 1995.
Yes, koules used to packaged on disk y1 of Slackware 3.3. It needed
diff --git a/games/koules/koules.SlackBuild b/games/koules/koules.SlackBuild
index c4be504c8b..e02b060475 100644
--- a/games/koules/koules.SlackBuild
+++ b/games/koules/koules.SlackBuild
@@ -1,8 +1,8 @@
-#!/bin/sh
+#!/bin/bash
# Slackware build script for koules
-# Written by B. Watson (yalhcru@gmail.com)
+# Written by B. Watson (urchlay@slackware.uk)
# Licensed under the WTFPL. See http://www.wtfpl.net/txt/copying/ for details.
@@ -10,10 +10,19 @@
# This script doesn't share any code with whatever build script
# existed back then (partly because I couldn't find a copy)
+# TODO: make -E the default size. It's 2023, nobody wants to play a game
+# in a window the size of a postcard (or a playing card, on 4K).
+
+# 20230107 bkw: BUILD=4, fix paths to joystick devices (/dev/jsX => /dev/input/jsX)
+# 20211020 bkw: BUILD=3, fix -current build.
+
+cd $(dirname $0) ; CWD=$(pwd)
+
PRGNAM=koules
VERSION=${VERSION:-1.4}
-BUILD=${BUILD:-2}
+BUILD=${BUILD:-4}
TAG=${TAG:-_SBo}
+PKGTYPE=${PKGTYPE:-tgz}
if [ -z "$ARCH" ]; then
case "$( uname -m )" in
@@ -23,7 +32,11 @@ if [ -z "$ARCH" ]; then
esac
fi
-CWD=$(pwd)
+if [ ! -z "${PRINT_PACKAGE_NAME}" ]; then
+ echo "$PRGNAM-$VERSION-$ARCH-$BUILD$TAG.$PKGTYPE"
+ exit 0
+fi
+
TMP=${TMP:-/tmp/SBo}
PKG=$TMP/package-$PRGNAM
OUTPUT=${OUTPUT:-/tmp}
@@ -57,11 +70,8 @@ rm -rf $PRGNAM$VERSION
tar xvf $CWD/$PRGNAM$VERSION-src.tar.gz
cd $PRGNAM$VERSION
chown -R root:root .
-find -L . \
- \( -perm 777 -o -perm 775 -o -perm 750 -o -perm 711 -o -perm 555 \
- -o -perm 511 \) -exec chmod 755 {} \; -o \
- \( -perm 666 -o -perm 664 -o -perm 640 -o -perm 600 -o -perm 444 \
- -o -perm 440 -o -perm 400 \) -exec chmod 644 {} \;
+find -L . -perm /111 -a \! -perm 755 -a -exec chmod 755 {} \+ -o \
+ \! -perm /111 -a \! -perm 644 -a -exec chmod 644 {} \+
# 20140502 bkw: modern Slackware has OSS modules disabled by default,
# so wrap the sound server in aoss.
@@ -75,7 +85,7 @@ patch -p1 < $CWD/patches/slackware.diff
patch -p1 < $CWD/patches/compile_fix.diff
# Modern gcc seems to hate the inline assembly. Anyway I bet gcc's code
-# with -O2 is the same or faster...
+# with -O2 is the same or faster... and we need this for x86_64 too.
patch -p1 < $CWD/patches/no_inline_asm.diff
# The author forgot to mention the -E option in the help and man page
@@ -84,6 +94,10 @@ patch -p1 < $CWD/patches/document_E_option.diff
# Some people might like the launcher...
patch -p1 < $CWD/patches/tcl_launcher_paths.diff
+# 20230107 bkw: this has been broken for ages, I just now decided to play
+# this game with a joystick...
+patch -p1 < $CWD/patches/joystickdevs.diff
+
# I hate Imake even worse than autoconf...
if [ "$MITSHM" = "no" ]; then
sed -i -e '/#define MITSHM/d' Iconfig
@@ -97,7 +111,7 @@ xmkmf -a
# Did I mention I hate Imake?
find . -name Makefile | \
- xargs sed -i -e "s/-O2.*/$SLKCFLAGS/"
+ xargs sed -i -e "s/-O2.*/$SLKCFLAGS -fcommon/"
touch xkoules.man
# 20140502 bkw:
@@ -143,4 +157,4 @@ cat $CWD/slack-desc > $PKG/install/slack-desc
cat $CWD/doinst.sh > $PKG/install/doinst.sh
cd $PKG
-/sbin/makepkg -l y -c n $OUTPUT/$PRGNAM-$VERSION-$ARCH-$BUILD$TAG.${PKGTYPE:-tgz}
+/sbin/makepkg -l y -c n $OUTPUT/$PRGNAM-$VERSION-$ARCH-$BUILD$TAG.$PKGTYPE
diff --git a/games/koules/koules.info b/games/koules/koules.info
index d111215020..dca04116ce 100644
--- a/games/koules/koules.info
+++ b/games/koules/koules.info
@@ -1,10 +1,10 @@
PRGNAM="koules"
VERSION="1.4"
-HOMEPAGE="http://www.ucw.cz/~hubicka/koules/English/koules.html"
-DOWNLOAD="http://www.ucw.cz/~hubicka/koules/packages/koules1.4-src.tar.gz"
+HOMEPAGE="https://www.ucw.cz/~hubicka/koules/English/koules.html"
+DOWNLOAD="https://www.ucw.cz/~hubicka/koules/packages/koules1.4-src.tar.gz"
MD5SUM="0a5ac9e57c8b72e9fc200bc98273235c"
DOWNLOAD_x86_64=""
MD5SUM_x86_64=""
REQUIRES=""
MAINTAINER="B. Watson"
-EMAIL="yalhcru@gmail.com"
+EMAIL="urchlay@slackware.uk"
diff --git a/games/koules/koules.kde b/games/koules/koules.kde
index 6ae5fd98a9..10b7ed551e 100644
--- a/games/koules/koules.kde
+++ b/games/koules/koules.kde
@@ -2,7 +2,7 @@
# koules.kde
# Wrapper script to launch koules from a KDE shortcut
-# Author: B. Watson (yalhcru@gmail.com)
+# Author: B. Watson (urchlay@slackware.uk)
# If the GUI launcher can't run (probably because Tcl/Tk isn't
# installed), just start the game with default options.
diff --git a/games/koules/patches/joystickdevs.diff b/games/koules/patches/joystickdevs.diff
new file mode 100644
index 0000000000..be9d7b6934
--- /dev/null
+++ b/games/koules/patches/joystickdevs.diff
@@ -0,0 +1,21 @@
+diff -Naur koules1.4/xlib/init.c koules1.4.patched/xlib/init.c
+--- koules1.4/xlib/init.c 1998-03-05 12:03:01.000000000 -0500
++++ koules1.4.patched/xlib/init.c 2023-01-07 23:23:21.963726308 -0500
+@@ -334,7 +334,7 @@
+ printf ("Autoprobing hardware\n");
+ printf ("Initializing joystick driver\n");
+ #ifdef JOYSTICK
+- joystickdevice[0] = open ("/dev/js0", O_RDONLY);
++ joystickdevice[0] = open ("/dev/input/js0", O_RDONLY);
+ if (joystickdevice[0] < 0)
+ {
+ perror ("Joystick driver");
+@@ -343,7 +343,7 @@
+ }
+ else
+ printf ("Joystick 1 initialized\n");
+- joystickdevice[1] = open ("/dev/js1", O_RDONLY);
++ joystickdevice[1] = open ("/dev/input/js1", O_RDONLY);
+ if (joystickdevice[1] < 0)
+ {
+ perror ("Joystick driver");
diff --git a/games/koules/slack-desc b/games/koules/slack-desc
index e9ddafe026..2f028fb312 100644
--- a/games/koules/slack-desc
+++ b/games/koules/slack-desc
@@ -8,12 +8,12 @@
|-----handy-ruler------------------------------------------------------|
koules: koules (fast action arcade-style game)
koules:
-koules: Koules is a fast action arcade-style game for UNIX and OS/2. This
-koules: version supports X window system, SVGAlib for Linux and OS/2. It
-koules: works in fine (up to 900x620) resolution with cool 256 color graphics,
-koules: multiplayer mode up to 5 players, full sound and, of course, network
-koules: support. Koules is an original idea. First version of Koules was
-koules: developed from scratch by Jan Hubicka in July 1995.
-koules:
+koules: Koules is a fast action arcade-style game for UNIX and
+koules: OS/2. This version supports X window system, SVGAlib for
+koules: Linux and OS/2. It works in fine (up to 900x620) resolution
+koules: with cool 256 color graphics, multiplayer mode up to 5
+koules: players, full sound and, of course, network support. Koules is
+koules: an original idea. First version of Koules was developed from
+koules: scratch by Jan Hubicka in July 1995.
koules:
koules:
diff --git a/games/larn/larn.SlackBuild b/games/larn/larn.SlackBuild
index 59cb563ef7..722dc3a9f5 100644
--- a/games/larn/larn.SlackBuild
+++ b/games/larn/larn.SlackBuild
@@ -1,4 +1,4 @@
-#!/bin/sh
+#!/bin/bash
# Slackware build script for larn
@@ -22,10 +22,23 @@
# OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF THIS SOFTWARE, EVEN IF
# ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
+# 20220505 bkw: Modified by SlackBuilds.org, BUILD=2:
+# - fix permissions (no executable .txt files in the doc dir, please).
+
+# 20220220 bkw: Modified by SlackBuilds.org:
+# - fix build on 15.0.
+# - actually use SLKCFLAGS.
+# - the wrapper script in /usr/games was getting installed without
+# +x permission, fix.
+# - use a relative symlink (not absolute) for the wrapper script.
+
+cd $(dirname $0) ; CWD=$(pwd)
+
PRGNAM=larn
-VERSION=${VERSION:-14.1.3}
-BUILD=${BUILD:-1}
+VERSION=${VERSION:-14.1.5}
+BUILD=${BUILD:-2}
TAG=${TAG:-_SBo}
+PKGTYPE=${PKGTYPE:-tgz}
if [ -z "$ARCH" ]; then
case "$( uname -m )" in
@@ -35,7 +48,11 @@ if [ -z "$ARCH" ]; then
esac
fi
-CWD=$(pwd)
+if [ ! -z "${PRINT_PACKAGE_NAME}" ]; then
+ echo "$PRGNAM-$VERSION-$ARCH-$BUILD$TAG.$PKGTYPE"
+ exit 0
+fi
+
TMP=${TMP:-/tmp/SBo}
PKG=$TMP/package-$PRGNAM
OUTPUT=${OUTPUT:-/tmp}
@@ -61,32 +78,36 @@ mkdir -p $TMP $PKG $OUTPUT
cd $TMP
rm -rf RL_M-$VERSION
tar xvf $CWD/RL_M-$VERSION.tar.gz
-cd RL_M-$VERSION/src
+cd RL_M-$VERSION
+find -L . -perm /111 -a \! -perm 755 -a -exec chmod 755 {} \+ -o \
+ \! -perm /111 -a \! -perm 644 -a -exec chmod 644 {} \+
+
+# 20220220 bkw: grrrr.
+sed -i "s,-Werror,$SLKCFLAGS," Makefile
make
mv larn ..
cd ..
mkdir -p $PKG/usr/share/games/larn
-cp -a larn $PKG/usr/share/games/larn
+install -s -m0755 larn $PKG/usr/share/games/larn
mkdir -p $PKG/usr/share/games/larn/data
chown -R games:users $PKG/usr/share/games/larn/data
chmod 775 $PKG/usr/share/games/larn/data
-cp $CWD/larn.sh $PKG/usr/share/games/larn
+install -m0755 -oroot -groot $CWD/larn.sh $PKG/usr/share/games/larn
mkdir -p $PKG/usr/games
cd $PKG/usr/games
-ln -fs /usr/share/games/larn/larn.sh larn
+ln -s ../share/games/larn/larn.sh larn
cd $TMP/RL_M-$VERSION
-find $PKG -print0 | xargs -0 file | grep -e "executable" -e "shared object" | grep ELF \
- | cut -f 1 -d : | xargs strip --strip-unneeded 2> /dev/null || true
-
mkdir -p $PKG/usr/doc/$PRGNAM-$VERSION
-cp -a manual.txt README.md changelog.txt $PKG/usr/doc/$PRGNAM-$VERSION
+install -m0644 \
+ README.md docs/manual.txt docs/LICENSE.txt docs/history.txt docs/changelog.txt \
+ $PKG/usr/doc/$PRGNAM-$VERSION
cat $CWD/$PRGNAM.SlackBuild > $PKG/usr/doc/$PRGNAM-$VERSION/$PRGNAM.SlackBuild
mkdir -p $PKG/install
cat $CWD/slack-desc > $PKG/install/slack-desc
cd $PKG
-/sbin/makepkg -l y -c n $OUTPUT/$PRGNAM-$VERSION-$ARCH-$BUILD$TAG.${PKGTYPE:-tgz}
+/sbin/makepkg -l y -c n $OUTPUT/$PRGNAM-$VERSION-$ARCH-$BUILD$TAG.$PKGTYPE
diff --git a/games/larn/larn.info b/games/larn/larn.info
index a9ea7f3921..6b34915af8 100644
--- a/games/larn/larn.info
+++ b/games/larn/larn.info
@@ -1,8 +1,8 @@
PRGNAM="larn"
-VERSION="14.1.3"
-HOMEPAGE="https://web.archive.org/web/20170408164536/https://github.com/atsb/RL_M"
-DOWNLOAD="https://github.com/atsb/RL_M/archive/14.1.3/RL_M-14.1.3.tar.gz"
-MD5SUM="059f6160a9d79244417a19cb78ea2540"
+VERSION="14.1.5"
+HOMEPAGE="https://github.com/atsb/RL_M"
+DOWNLOAD="https://github.com/atsb/RL_M/archive/14.1.5/RL_M-14.1.5.tar.gz"
+MD5SUM="d854be61e7f778b8ba4b3e1cf15a1f66"
DOWNLOAD_x86_64=""
MD5SUM_x86_64=""
REQUIRES=""
diff --git a/games/larn/slack-desc b/games/larn/slack-desc
index 3ee01fa8f0..9aa25c4d6a 100644
--- a/games/larn/slack-desc
+++ b/games/larn/slack-desc
@@ -8,9 +8,9 @@
|-----handy-ruler------------------------------------------------------|
larn: larn (adventure game)
larn:
-larn: LARN is a dungeon type adventure game similar in concept to HACK, ROGUE
-larn: or MORIA, but with a different feel and winning criteria. LARN was
-larn: released for the UNIX environment in 1986 by Noah Morgan. It was
+larn: LARN is a dungeon type adventure game similar in concept to HACK,
+larn: ROGUE or MORIA, but with a different feel and winning criteria. LARN
+larn: was released for the UNIX environment in 1986 by Noah Morgan. It was
larn: subsequently ported to the MS-DOS environment by Don Kneller. Kevin
larn: Routley worked on enhancements to LARN.
larn:
diff --git a/games/lbreakout2/lbreakout2.SlackBuild b/games/lbreakout2/lbreakout2.SlackBuild
index 0dff36436e..79d2b14208 100644
--- a/games/lbreakout2/lbreakout2.SlackBuild
+++ b/games/lbreakout2/lbreakout2.SlackBuild
@@ -1,4 +1,4 @@
-#!/bin/sh
+#!/bin/bash
# Slackware build script for LBreakout2
@@ -22,10 +22,13 @@
# OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF THIS SOFTWARE, EVEN IF
# ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
+cd $(dirname $0) ; CWD=$(pwd)
+
PRGNAM=lbreakout2
VERSION=${VERSION:-2.6.5}
BUILD=${BUILD:-1}
TAG=${TAG:-_SBo}
+PKGTYPE=${PKGTYPE:-tgz}
if [ -z "$ARCH" ]; then
case "$( uname -m )" in
@@ -35,7 +38,14 @@ if [ -z "$ARCH" ]; then
esac
fi
-CWD=$(pwd)
+# If the variable PRINT_PACKAGE_NAME is set, then this script will report what
+# the name of the created package would be, and then exit. This information
+# could be useful to other scripts.
+if [ ! -z "${PRINT_PACKAGE_NAME}" ]; then
+ echo "$PRGNAM-$VERSION-$ARCH-$BUILD$TAG.$PKGTYPE"
+ exit 0
+fi
+
TMP=${TMP:-/tmp/SBo}
PKG=$TMP/package-$PRGNAM
OUTPUT=${OUTPUT:-/tmp}
@@ -97,4 +107,4 @@ cat $CWD/slack-desc > $PKG/install/slack-desc
cat $CWD/doinst.sh > $PKG/install/doinst.sh
cd $PKG
-/sbin/makepkg -l y -c n $OUTPUT/$PRGNAM-$VERSION-$ARCH-$BUILD$TAG.${PKGTYPE:-tgz}
+/sbin/makepkg -l y -c n $OUTPUT/$PRGNAM-$VERSION-$ARCH-$BUILD$TAG.$PKGTYPE
diff --git a/games/lbreakouthd/README b/games/lbreakouthd/README
new file mode 100644
index 0000000000..4de0af5283
--- /dev/null
+++ b/games/lbreakouthd/README
@@ -0,0 +1,10 @@
+LBreakoutHD is a breakout-style arcade game in the manner of
+Arkanoid. You try to clear levels full of different types of
+bricks and extras by using your paddle to aim balls at the
+bricks. Lots of power-ups will help you with that task:
+extra balls, energy balls, extra lifes, weapons, glue,
+bonus floors, paddle expansion and extra score.
+
+LBreakoutHD is a scaleable 16:9 remake of LBreakout2.
+All LBreakout2 themes and levelsets work.
+New themes can be of any resolution.
diff --git a/games/lbreakouthd/doinst.sh b/games/lbreakouthd/doinst.sh
new file mode 100644
index 0000000000..726ffe403b
--- /dev/null
+++ b/games/lbreakouthd/doinst.sh
@@ -0,0 +1,9 @@
+if [ -x /usr/bin/update-desktop-database ]; then
+ /usr/bin/update-desktop-database -q usr/share/applications
+fi
+
+if [ -e usr/share/icons/hicolor/icon-theme.cache ]; then
+ if [ -x /usr/bin/gtk-update-icon-cache ]; then
+ /usr/bin/gtk-update-icon-cache -f usr/share/icons/hicolor >/dev/null 2>&1
+ fi
+fi
diff --git a/games/lbreakouthd/lbreakouthd.SlackBuild b/games/lbreakouthd/lbreakouthd.SlackBuild
new file mode 100644
index 0000000000..99f74b7cf2
--- /dev/null
+++ b/games/lbreakouthd/lbreakouthd.SlackBuild
@@ -0,0 +1,100 @@
+#!/bin/bash
+
+# Slackware build script for lbreakouthd
+
+# Copyright 2023-2024 Johannes Schoepfer, Germany
+# All rights reserved.
+#
+# Redistribution and use of this script, with or without modification, is
+# permitted provided that the following conditions are met:
+#
+# 1. Redistributions of this script must retain the above copyright
+# notice, this list of conditions and the following disclaimer.
+#
+# THIS SOFTWARE IS PROVIDED BY THE AUTHOR ''AS IS'' AND ANY EXPRESS OR IMPLIED
+# WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE IMPLIED WARRANTIES OF
+# MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE ARE DISCLAIMED. IN NO
+# EVENT SHALL THE AUTHOR BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL,
+# SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT LIMITED TO,
+# PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, DATA, OR PROFITS;
+# OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY,
+# WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR
+# OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF THIS SOFTWARE, EVEN IF
+# ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
+
+cd $(dirname $0) ; CWD=$(pwd)
+
+PRGNAM=lbreakouthd
+VERSION=${VERSION:-1.1.7}
+BUILD=${BUILD:-1}
+TAG=${TAG:-_SBo}
+PKGTYPE=${PKGTYPE:-tgz}
+
+if [ -z "$ARCH" ]; then
+ case "$( uname -m )" in
+ i?86) ARCH=i586 ;;
+ arm*) ARCH=arm ;;
+ *) ARCH=$( uname -m ) ;;
+ esac
+fi
+
+if [ ! -z "${PRINT_PACKAGE_NAME}" ]; then
+ echo "$PRGNAM-$VERSION-$ARCH-$BUILD$TAG.$PKGTYPE"
+ exit 0
+fi
+
+TMP=${TMP:-/tmp/SBo}
+PKG=$TMP/package-$PRGNAM
+OUTPUT=${OUTPUT:-/tmp}
+
+if [ "$ARCH" = "i586" ]; then
+ SLKCFLAGS="-O2 -march=i586 -mtune=i686"
+ LIBDIRSUFFIX=""
+elif [ "$ARCH" = "i686" ]; then
+ SLKCFLAGS="-O2 -march=i686 -mtune=i686"
+ LIBDIRSUFFIX=""
+elif [ "$ARCH" = "x86_64" ]; then
+ SLKCFLAGS="-O2 -fPIC"
+ LIBDIRSUFFIX="64"
+else
+ SLKCFLAGS="-O2"
+ LIBDIRSUFFIX=""
+fi
+
+set -e
+
+rm -rf $PKG
+mkdir -p $TMP $PKG $OUTPUT
+cd $TMP
+rm -rf $PRGNAM-$VERSION
+tar xvf $CWD/$PRGNAM-$VERSION.tar.gz
+cd $PRGNAM-$VERSION
+chown -R root:root .
+find -L . \
+ \( -perm 777 -o -perm 775 -o -perm 750 -o -perm 711 -o -perm 555 \
+ -o -perm 511 \) -exec chmod 755 {} + -o \
+ \( -perm 666 -o -perm 664 -o -perm 640 -o -perm 600 -o -perm 444 \
+ -o -perm 440 -o -perm 400 \) -exec chmod 644 {} +
+
+CFLAGS="$SLKCFLAGS" \
+./configure \
+ --prefix=/usr \
+ --libdir=/usr/lib${LIBDIRSUFFIX} \
+ --sysconfdir=/etc \
+ --localstatedir=/var/lib/lgames \
+ --build=$ARCH-slackware-linux
+
+make
+make install-strip DESTDIR=$PKG
+
+mkdir -p $PKG/usr/doc/$PRGNAM-$VERSION
+cp -a ABOUT-NLS Changelog COPYING README* TODO \
+ $PKG/usr/doc/$PRGNAM-$VERSION
+cat $CWD/$PRGNAM.SlackBuild > $PKG/usr/doc/$PRGNAM-$VERSION/$PRGNAM.SlackBuild
+
+mkdir -p $PKG/install
+cat $CWD/slack-desc > $PKG/install/slack-desc
+cat $CWD/doinst.sh > $PKG/install/doinst.sh
+
+cd $PKG
+/sbin/makepkg -l y -c n $OUTPUT/$PRGNAM-$VERSION-$ARCH-$BUILD$TAG.$PKGTYPE
diff --git a/games/lbreakouthd/lbreakouthd.info b/games/lbreakouthd/lbreakouthd.info
new file mode 100644
index 0000000000..b075b57837
--- /dev/null
+++ b/games/lbreakouthd/lbreakouthd.info
@@ -0,0 +1,10 @@
+PRGNAM="lbreakouthd"
+VERSION="1.1.7"
+HOMEPAGE="https://lgames.sourceforge.io/LBreakoutHD/"
+DOWNLOAD="https://sourceforge.net/projects/lgames/files/lbreakouthd/lbreakouthd-1.1.7.tar.gz"
+MD5SUM="2525f94abb7383a4067b84f1ca44b92b"
+DOWNLOAD_x86_64=""
+MD5SUM_x86_64=""
+REQUIRES=""
+MAINTAINER="Johannes Schoepfer"
+EMAIL="slackbuilds@schoepfer.info"
diff --git a/games/lbreakouthd/slack-desc b/games/lbreakouthd/slack-desc
new file mode 100644
index 0000000000..6054455cad
--- /dev/null
+++ b/games/lbreakouthd/slack-desc
@@ -0,0 +1,19 @@
+# HOW TO EDIT THIS FILE:
+# The "handy ruler" below makes it easier to edit a package description.
+# Line up the first '|' above the ':' following the base package name, and
+# the '|' on the right side marks the last column you can put a character in.
+# You must make exactly 11 lines for the formatting to be correct. It's also
+# customary to leave one space after the ':' except on otherwise blank lines.
+
+ |-----handy-ruler------------------------------------------------------|
+lbreakouthd: lbreakouthd (Breakout-style Arcade Game)
+lbreakouthd:
+lbreakouthd: LBreakoutHD is a breakout-style arcade game in the manner of Arkanoid.
+lbreakouthd: You try to clear levels full of different types of bricks and extras
+lbreakouthd: by using your paddle to aim balls at the bricks. Lots of power-ups
+lbreakouthd: will help you with that task: extra balls, energy balls, extra lifes,
+lbreakouthd: weapons, glue, bonus floors, paddle expansion and extra score.
+lbreakouthd: LBreakoutHD is a scaleable 16:9 remake of LBreakout2. All
+lbreakouthd: LBreakout2 themes and levelsets work. New themes can be of
+lbreakouthd: any resolution.
+lbreakouthd: https://lgames.sourceforge.io/LBreakoutHD/
diff --git a/games/lgogdownloader/lgogdownloader.SlackBuild b/games/lgogdownloader/lgogdownloader.SlackBuild
index a3a0032ebb..23ac536b3f 100644
--- a/games/lgogdownloader/lgogdownloader.SlackBuild
+++ b/games/lgogdownloader/lgogdownloader.SlackBuild
@@ -1,4 +1,4 @@
-#!/bin/sh
+#!/bin/bash
# Slackware build script for "lgogdownloader".
# Yth | Pont-en-Royans, France | yth@ythogtha.org
@@ -25,26 +25,33 @@
# (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE
# OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
+cd $(dirname $0) ; CWD=$(pwd)
+
PRGNAM=lgogdownloader
-VERSION=${VERSION:-3.7}
+VERSION=${VERSION:-3.12}
BUILD=${BUILD:-1}
TAG=${TAG:-_SBo}
+PKGTYPE=${PKGTYPE:-tgz}
if [ -z "$ARCH" ]; then
case "$( uname -m )" in
- i?86) ARCH=i486 ;;
+ i?86) ARCH=i586 ;;
arm*) ARCH=arm ;;
*) ARCH=$( uname -m ) ;;
esac
fi
-CWD=$(pwd)
+if [ ! -z "${PRINT_PACKAGE_NAME}" ]; then
+ echo "$PRGNAM-$VERSION-$ARCH-$BUILD$TAG.$PKGTYPE"
+ exit 0
+fi
+
TMP=${TMP:-/tmp/SBo}
PKG=$TMP/package-$PRGNAM
OUTPUT=${OUTPUT:-/tmp}
-if [ "$ARCH" = "i486" ]; then
- SLKCFLAGS="-O2 -march=i486 -mtune=i686"
+if [ "$ARCH" = "i586" ]; then
+ SLKCFLAGS="-O2 -march=i586 -mtune=i686"
LIBDIRSUFFIX=""
elif [ "$ARCH" = "i686" ]; then
SLKCFLAGS="-O2 -march=i686 -mtune=i686"
@@ -52,6 +59,9 @@ elif [ "$ARCH" = "i686" ]; then
elif [ "$ARCH" = "x86_64" ]; then
SLKCFLAGS="-O2 -fPIC"
LIBDIRSUFFIX="64"
+elif [ "$ARCH" = "aarch64" ]; then
+ SLKCFLAGS="-O2 -fPIC"
+ LIBDIRSUFFIX="64"
else
SLKCFLAGS="-O2"
LIBDIRSUFFIX=""
@@ -81,9 +91,9 @@ cd $PRGNAM-$VERSION
chown -R root:root .
find -L . \
\( -perm 777 -o -perm 775 -o -perm 750 -o -perm 711 -o -perm 555 \
- -o -perm 511 \) -exec chmod 755 {} \; -o \
+ -o -perm 511 \) -exec chmod 755 {} \+ -o \
\( -perm 666 -o -perm 664 -o -perm 640 -o -perm 600 -o -perm 444 \
- -o -perm 440 -o -perm 400 \) -exec chmod 644 {} \;
+ -o -perm 440 -o -perm 400 \) -exec chmod 644 {} \+
mkdir -p build
cd build
@@ -91,15 +101,19 @@ cd build
-DCMAKE_CXX_FLAGS:STRING="$SLKCFLAGS" \
-DCMAKE_INSTALL_PREFIX=/usr \
-DINSTALL_SHARE_DIR=/usr \
- -DUSE_QT_GUI=OFF \
+ -DUSE_QT_GUI=OFF \
-DCMAKE_BUILD_TYPE=Release ..
make install DESTDIR=$PKG
cd ..
+# make install/strip does not actually strip for this build
find $PKG -print0 | xargs -0 file | grep -e "executable" -e "shared object" | grep ELF \
| cut -f 1 -d : | xargs strip --strip-unneeded 2> /dev/null || true
+mv $PKG/usr/share/man $PKG/usr/man
+rmdir $PKG/usr/share
+
mkdir -p $PKG/usr/doc/$PRGNAM-$VERSION
cp -a COPYING $PKG/usr/doc/$PRGNAM-$VERSION
cat $CWD/$PRGNAM.SlackBuild > $PKG/usr/doc/$PRGNAM-$VERSION/$PRGNAM.SlackBuild
@@ -108,4 +122,4 @@ mkdir -p $PKG/install
cat $CWD/slack-desc > $PKG/install/slack-desc
cd $PKG
-/sbin/makepkg -l y -c n $OUTPUT/$PRGNAM-$VERSION-$ARCH-$BUILD$TAG.${PKGTYPE:-tgz}
+/sbin/makepkg -l y -c n $OUTPUT/$PRGNAM-$VERSION-$ARCH-$BUILD$TAG.$PKGTYPE
diff --git a/games/lgogdownloader/lgogdownloader.info b/games/lgogdownloader/lgogdownloader.info
index 1d87ad178e..8045dabb70 100644
--- a/games/lgogdownloader/lgogdownloader.info
+++ b/games/lgogdownloader/lgogdownloader.info
@@ -1,10 +1,10 @@
PRGNAM="lgogdownloader"
-VERSION="3.7"
+VERSION="3.12"
HOMEPAGE="https://sites.google.com/site/gogdownloader/home/"
-DOWNLOAD="https://sites.google.com/site/gogdownloader/lgogdownloader-3.7.tar.gz"
-MD5SUM="f23ea65cd9ca604bd5bb0b1039bd1e7d"
+DOWNLOAD="https://github.com/Sude-/lgogdownloader/archive/v3.12/lgogdownloader-3.12.tar.gz"
+MD5SUM="f9814fb3a49b6e0dcc2d818419c866b0"
DOWNLOAD_x86_64=""
MD5SUM_x86_64=""
-REQUIRES="htmlcxx jsoncpp liboauth rhash tinyxml2"
+REQUIRES="htmlcxx jsoncpp rhash tinyxml2"
MAINTAINER="Yth - Arnaud"
EMAIL="yth@ythogtha.org"
diff --git a/games/libretro-2048/README b/games/libretro-2048/README
deleted file mode 100644
index 5ca5fc78d2..0000000000
--- a/games/libretro-2048/README
+++ /dev/null
@@ -1,9 +0,0 @@
-Port of 2048 puzzle game to the libretro API.
-Join the numbers and get to the 2048 tile!
-
-To be able to save high scores the RetroArch
-save directory will need to be set to a writable
-directory.
-
-To build the debugging symbols use:
- DEBUG=1 ./libretro-2048.SlackBuild
diff --git a/games/libretro-2048/libretro-2048.SlackBuild b/games/libretro-2048/libretro-2048.SlackBuild
deleted file mode 100644
index 209eed81d0..0000000000
--- a/games/libretro-2048/libretro-2048.SlackBuild
+++ /dev/null
@@ -1,82 +0,0 @@
-#!/bin/sh
-
-# Slackware build script for libretro-2048
-
-# Copyright 2017-2018 Hunter Sezen California, USA
-# All rights reserved.
-#
-# Redistribution and use of this script, with or without modification, is
-# permitted provided that the following conditions are met:
-#
-# 1. Redistributions of this script must retain the above copyright
-# notice, this list of conditions and the following disclaimer.
-#
-# THIS SOFTWARE IS PROVIDED BY THE AUTHOR "AS IS" AND ANY EXPRESS OR IMPLIED
-# WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE IMPLIED WARRANTIES OF
-# MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE ARE DISCLAIMED. IN NO
-# EVENT SHALL THE AUTHOR BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL,
-# SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT LIMITED TO,
-# PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, DATA, OR PROFITS;
-# OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY,
-# WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR
-# OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF THIS SOFTWARE, EVEN IF
-# ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
-
-PRGNAM=libretro-2048
-LIBNAM=2048_libretro
-VERSION=${VERSION:-2018.09.30_80d462a}
-BUILD=${BUILD:-1}
-TAG=${TAG:-_SBo}
-
-if [ -z "$ARCH" ]; then
- case "$( uname -m )" in
- i?86) ARCH=i586 ;;
- arm*) ARCH=arm ;;
- *) ARCH=$( uname -m ) ;;
- esac
-fi
-
-CWD=$(pwd)
-TMP=${TMP:-/tmp/SBo}
-PKG=$TMP/package-$PRGNAM
-OUTPUT=${OUTPUT:-/tmp}
-
-LIBDIRSUFFIX=
-[ "$ARCH" = x86_64 ] && LIBDIRSUFFIX=64
-
-set -eu
-
-rm -rf $PKG
-mkdir -p $TMP $PKG $OUTPUT
-cd $TMP
-rm -rf $PRGNAM-$VERSION
-tar xvf $CWD/$PRGNAM-$VERSION.tar.xz
-cd $PRGNAM-$VERSION
-chown -R root:root .
-find -L . \
- \( -perm 777 -o -perm 775 -o -perm 750 -o -perm 711 -o -perm 555 \
- -o -perm 511 \) -exec chmod 755 {} \; -o \
- \( -perm 666 -o -perm 664 -o -perm 640 -o -perm 600 -o -perm 444 \
- -o -perm 440 -o -perm 400 \) -exec chmod 644 {} \;
-
-[ "${DEBUG:=0}" != 0 ] && DEBUG=1
-
-make -f Makefile.libretro DEBUG=$DEBUG GIT_VERSION="${VERSION#*_}"
-
-install -Dm0644 $LIBNAM.so $PKG/usr/lib${LIBDIRSUFFIX}/libretro/$LIBNAM.so
-install -Dm0644 $LIBNAM.info $PKG/usr/lib${LIBDIRSUFFIX}/libretro/info/$LIBNAM.info
-
-if [ $DEBUG = 0 ]; then
- find $PKG -print0 | xargs -0 file | grep -e "executable" -e "shared object" | grep ELF \
- | cut -f 1 -d : | xargs strip --strip-unneeded 2> /dev/null || true
-fi
-
-mkdir -p $PKG/usr/doc/$PRGNAM-$VERSION
-cp -a COPYING README.md $PKG/usr/doc/$PRGNAM-$VERSION
-cat $CWD/$PRGNAM.SlackBuild > $PKG/usr/doc/$PRGNAM-$VERSION/$PRGNAM.SlackBuild
-
-mkdir -p $PKG/install
-cat $CWD/slack-desc > $PKG/install/slack-desc
-
-cd $PKG
-/sbin/makepkg -l y -c n $OUTPUT/$PRGNAM-$VERSION-$ARCH-$BUILD$TAG.${PKGTYPE:-tgz}
diff --git a/games/libretro-2048/libretro-2048.info b/games/libretro-2048/libretro-2048.info
deleted file mode 100644
index 7ab37409f9..0000000000
--- a/games/libretro-2048/libretro-2048.info
+++ /dev/null
@@ -1,10 +0,0 @@
-PRGNAM="libretro-2048"
-VERSION="2018.09.30_80d462a"
-HOMEPAGE="https://www.libretro.com/"
-DOWNLOAD="http://slackless.raccoons.tech/src/libretro/libretro-2048-2018.09.30_80d462a.tar.xz"
-MD5SUM="d87b62147df0261fafed1ec0d6d3fda6"
-DOWNLOAD_x86_64=""
-MD5SUM_x86_64=""
-REQUIRES="RetroArch"
-MAINTAINER="orphaned - no maintainer"
-EMAIL="nobody@nowhere.com"
diff --git a/games/libretro-2048/slack-desc b/games/libretro-2048/slack-desc
deleted file mode 100644
index 0735d9e583..0000000000
--- a/games/libretro-2048/slack-desc
+++ /dev/null
@@ -1,19 +0,0 @@
-# HOW TO EDIT THIS FILE:
-# The "handy ruler" below makes it easier to edit a package description.
-# Line up the first '|' above the ':' following the base package name, and
-# the '|' on the right side marks the last column you can put a character in.
-# You must make exactly 11 lines for the formatting to be correct. It's also
-# customary to leave one space after the ':' except on otherwise blank lines.
-
- |-----handy-ruler------------------------------------------------------|
-libretro-2048: libretro-2048 (2048 puzzle game libretro port)
-libretro-2048:
-libretro-2048: Port of 2048 puzzle game to the libretro API.
-libretro-2048: Join the numbers and get to the 2048 tile!
-libretro-2048:
-libretro-2048: Homepage: https://www.libretro.com/
-libretro-2048:
-libretro-2048:
-libretro-2048:
-libretro-2048:
-libretro-2048:
diff --git a/games/libretro-desmume/README b/games/libretro-desmume/README
deleted file mode 100644
index 7ebc3f403a..0000000000
--- a/games/libretro-desmume/README
+++ /dev/null
@@ -1,5 +0,0 @@
-DeSmuME is an Nintendo DS video game system emulator that can be used
-as a libretro core.
-
-To build the debugging symbols use:
- DEBUG=1 ./libretro-desmume.SlackBuild
diff --git a/games/libretro-desmume/libretro-desmume.SlackBuild b/games/libretro-desmume/libretro-desmume.SlackBuild
deleted file mode 100644
index c960d3261f..0000000000
--- a/games/libretro-desmume/libretro-desmume.SlackBuild
+++ /dev/null
@@ -1,85 +0,0 @@
-#!/bin/sh
-
-# Slackware build script for libretro-desmume
-
-# Copyright 2016-2018 Hunter Sezen
-# All rights reserved.
-#
-# Redistribution and use of this script, with or without modification, is
-# permitted provided that the following conditions are met:
-#
-# 1. Redistributions of this script must retain the above copyright
-# notice, this list of conditions and the following disclaimer.
-#
-# THIS SOFTWARE IS PROVIDED BY THE AUTHOR "AS IS" AND ANY EXPRESS OR IMPLIED
-# WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE IMPLIED WARRANTIES OF
-# MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE ARE DISCLAIMED. IN NO
-# EVENT SHALL THE AUTHOR BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL,
-# SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT LIMITED TO,
-# PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, DATA, OR PROFITS;
-# OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY,
-# WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR
-# OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF THIS SOFTWARE, EVEN IF
-# ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
-
-PRGNAM=libretro-desmume
-LIBNAM=desmume_libretro
-VERSION=${VERSION:-2018.11.03_5f6f1ee}
-BUILD=${BUILD:-1}
-TAG=${TAG:-_SBo}
-
-if [ -z "$ARCH" ]; then
- case "$( uname -m )" in
- i?86) ARCH=i586 ;;
- arm*) ARCH=arm ;;
- *) ARCH=$( uname -m ) ;;
- esac
-fi
-
-CWD=$(pwd)
-TMP=${TMP:-/tmp/SBo}
-PKG=$TMP/package-$PRGNAM
-OUTPUT=${OUTPUT:-/tmp}
-
-LIBDIRSUFFIX=
-[ "$ARCH" = x86_64 ] && LIBDIRSUFFIX=64
-
-set -eu
-
-rm -rf $PKG
-mkdir -p $TMP $PKG $OUTPUT
-cd $TMP
-rm -rf $PRGNAM-$VERSION
-tar xvf $CWD/$PRGNAM-$VERSION.tar.xz
-cd $PRGNAM-$VERSION
-chown -R root:root .
-find -L . \
- \( -perm 777 -o -perm 775 -o -perm 750 -o -perm 711 -o -perm 555 \
- -o -perm 511 \) -exec chmod 755 {} \; -o \
- \( -perm 666 -o -perm 664 -o -perm 640 -o -perm 600 -o -perm 444 \
- -o -perm 440 -o -perm 400 \) -exec chmod 644 {} \;
-
-[ "${DEBUG:=0}" != 0 ] && DEBUG=1
-
-make -C desmume/src/frontend/libretro DEBUG=$DEBUG
-
-install -Dm0644 desmume/src/frontend/libretro/$LIBNAM.so \
- $PKG/usr/lib${LIBDIRSUFFIX}/libretro/$LIBNAM.so
-install -Dm0644 $LIBNAM.info \
- $PKG/usr/lib${LIBDIRSUFFIX}/libretro/info/$LIBNAM.info
-
-if [ $DEBUG = 0 ]; then
- find $PKG -print0 | xargs -0 file | grep -e "executable" -e "shared object" | grep ELF \
- | cut -f 1 -d : | xargs strip --strip-unneeded 2> /dev/null || true
-fi
-
-mkdir -p $PKG/usr/doc/$PRGNAM-$VERSION
-cp -a desmume/COPYING desmume/AUTHORS desmume/ChangeLog desmume/README* \
- $PKG/usr/doc/$PRGNAM-$VERSION
-cat $CWD/$PRGNAM.SlackBuild > $PKG/usr/doc/$PRGNAM-$VERSION/$PRGNAM.SlackBuild
-
-mkdir -p $PKG/install
-cat $CWD/slack-desc > $PKG/install/slack-desc
-
-cd $PKG
-/sbin/makepkg -l y -c n $OUTPUT/$PRGNAM-$VERSION-$ARCH-$BUILD$TAG.${PKGTYPE:-tgz}
diff --git a/games/libretro-desmume/libretro-desmume.info b/games/libretro-desmume/libretro-desmume.info
deleted file mode 100644
index 986c53f9e4..0000000000
--- a/games/libretro-desmume/libretro-desmume.info
+++ /dev/null
@@ -1,10 +0,0 @@
-PRGNAM="libretro-desmume"
-VERSION="2018.11.03_5f6f1ee"
-HOMEPAGE="https://www.libretro.com/"
-DOWNLOAD="http://slackless.raccoons.tech/src/libretro/libretro-desmume-2018.11.03_5f6f1ee.tar.xz"
-MD5SUM="bca5173c6378b6b05cac012d66aaa159"
-DOWNLOAD_x86_64=""
-MD5SUM_x86_64=""
-REQUIRES="RetroArch"
-MAINTAINER="orphaned - no maintainer"
-EMAIL="nobody@nowhere.com"
diff --git a/games/libretro-desmume/slack-desc b/games/libretro-desmume/slack-desc
deleted file mode 100644
index 51845f92ea..0000000000
--- a/games/libretro-desmume/slack-desc
+++ /dev/null
@@ -1,19 +0,0 @@
-# HOW TO EDIT THIS FILE:
-# The "handy ruler" below makes it easier to edit a package description.
-# Line up the first '|' above the ':' following the base package name, and
-# the '|' on the right side marks the last column you can put a character in.
-# You must make exactly 11 lines for the formatting to be correct. It's also
-# customary to leave one space after the ':' except on otherwise blank lines.
-
- |-----handy-ruler------------------------------------------------------|
-libretro-desmume: libretro-desmume (Port of Desmume to libretro)
-libretro-desmume:
-libretro-desmume: DeSmuME attempts to emulate, as faithfully as possible, the Nintendo
-libretro-desmume: DS and Nintendo DS Lite handheld game consoles (NDS).
-libretro-desmume:
-libretro-desmume: Homepage: https://www.libretro.com/
-libretro-desmume:
-libretro-desmume:
-libretro-desmume:
-libretro-desmume:
-libretro-desmume:
diff --git a/games/libretro-fceumm/README b/games/libretro-fceumm/README
deleted file mode 100644
index b0cbad0238..0000000000
--- a/games/libretro-fceumm/README
+++ /dev/null
@@ -1,12 +0,0 @@
-FCEUmm is a Nintendo Entertainment System video game system emulator
-that can be used as a libretro core.
-
-FCEUmm (FCEUltra mappers modified) is a NES/Famicom emulator that
-specializes in extensive mapper support.
-
-FCEUmm requires a real BIOS for Famicom Disk System emulation to work.
-
-* disksys.rom
-
-To build the debugging symbols use:
- DEBUG=1 ./libretro-fceumm.SlackBuild
diff --git a/games/libretro-fceumm/libretro-fceumm.SlackBuild b/games/libretro-fceumm/libretro-fceumm.SlackBuild
deleted file mode 100644
index 7bc2549eb5..0000000000
--- a/games/libretro-fceumm/libretro-fceumm.SlackBuild
+++ /dev/null
@@ -1,82 +0,0 @@
-#!/bin/sh
-
-# Slackware build script for libretro-fceumm
-
-# Copyright 2016-2018 Hunter Sezen
-# All rights reserved.
-#
-# Redistribution and use of this script, with or without modification, is
-# permitted provided that the following conditions are met:
-#
-# 1. Redistributions of this script must retain the above copyright
-# notice, this list of conditions and the following disclaimer.
-#
-# THIS SOFTWARE IS PROVIDED BY THE AUTHOR "AS IS" AND ANY EXPRESS OR IMPLIED
-# WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE IMPLIED WARRANTIES OF
-# MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE ARE DISCLAIMED. IN NO
-# EVENT SHALL THE AUTHOR BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL,
-# SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT LIMITED TO,
-# PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, DATA, OR PROFITS;
-# OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY,
-# WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR
-# OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF THIS SOFTWARE, EVEN IF
-# ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
-
-PRGNAM=libretro-fceumm
-LIBNAM=fceumm_libretro
-VERSION=${VERSION:-2018.09.29_eb17f88}
-BUILD=${BUILD:-1}
-TAG=${TAG:-_SBo}
-
-if [ -z "$ARCH" ]; then
- case "$( uname -m )" in
- i?86) ARCH=i586 ;;
- arm*) ARCH=arm ;;
- *) ARCH=$( uname -m ) ;;
- esac
-fi
-
-CWD=$(pwd)
-TMP=${TMP:-/tmp/SBo}
-PKG=$TMP/package-$PRGNAM
-OUTPUT=${OUTPUT:-/tmp}
-
-LIBDIRSUFFIX=
-[ "$ARCH" = x86_64 ] && LIBDIRSUFFIX=64
-
-set -eu
-
-rm -rf $PKG
-mkdir -p $TMP $PKG $OUTPUT
-cd $TMP
-rm -rf $PRGNAM-$VERSION
-tar xvf $CWD/$PRGNAM-$VERSION.tar.xz
-cd $PRGNAM-$VERSION
-chown -R root:root .
-find -L . \
- \( -perm 777 -o -perm 775 -o -perm 750 -o -perm 711 -o -perm 555 \
- -o -perm 511 \) -exec chmod 755 {} \; -o \
- \( -perm 666 -o -perm 664 -o -perm 640 -o -perm 600 -o -perm 444 \
- -o -perm 440 -o -perm 400 \) -exec chmod 644 {} \;
-
-[ "${DEBUG:=0}" != 0 ] && DEBUG=1
-
-make -f Makefile.libretro DEBUG=$DEBUG
-
-install -Dm0644 $LIBNAM.so $PKG/usr/lib${LIBDIRSUFFIX}/libretro/$LIBNAM.so
-install -Dm0644 $LIBNAM.info $PKG/usr/lib${LIBDIRSUFFIX}/libretro/info/$LIBNAM.info
-
-if [ $DEBUG = 0 ]; then
- find $PKG -print0 | xargs -0 file | grep -e "executable" -e "shared object" | grep ELF \
- | cut -f 1 -d : | xargs strip --strip-unneeded 2> /dev/null || true
-fi
-
-mkdir -p $PKG/usr/doc/$PRGNAM-$VERSION
-cp -a Authors Copying *.txt $PKG/usr/doc/$PRGNAM-$VERSION
-cat $CWD/$PRGNAM.SlackBuild > $PKG/usr/doc/$PRGNAM-$VERSION/$PRGNAM.SlackBuild
-
-mkdir -p $PKG/install
-cat $CWD/slack-desc > $PKG/install/slack-desc
-
-cd $PKG
-/sbin/makepkg -l y -c n $OUTPUT/$PRGNAM-$VERSION-$ARCH-$BUILD$TAG.${PKGTYPE:-tgz}
diff --git a/games/libretro-fceumm/libretro-fceumm.info b/games/libretro-fceumm/libretro-fceumm.info
deleted file mode 100644
index 79f5a35aaa..0000000000
--- a/games/libretro-fceumm/libretro-fceumm.info
+++ /dev/null
@@ -1,10 +0,0 @@
-PRGNAM="libretro-fceumm"
-VERSION="2018.09.29_eb17f88"
-HOMEPAGE="https://www.libretro.com/"
-DOWNLOAD="http://slackless.raccoons.tech/src/libretro/libretro-fceumm-2018.09.29_eb17f88.tar.xz"
-MD5SUM="60f384736063dd92a6581fde0a7011a4"
-DOWNLOAD_x86_64=""
-MD5SUM_x86_64=""
-REQUIRES="RetroArch"
-MAINTAINER="orphaned - no maintainer"
-EMAIL="nobody@nowhere.com"
diff --git a/games/libretro-fceumm/slack-desc b/games/libretro-fceumm/slack-desc
deleted file mode 100644
index 6580ef8c4e..0000000000
--- a/games/libretro-fceumm/slack-desc
+++ /dev/null
@@ -1,19 +0,0 @@
-# HOW TO EDIT THIS FILE:
-# The "handy ruler" below makes it easier to edit a package description.
-# Line up the first '|' above the ':' following the base package name, and
-# the '|' on the right side marks the last column you can put a character in.
-# You must make exactly 11 lines for the formatting to be correct. It's also
-# customary to leave one space after the ':' except on otherwise blank lines.
-
- |-----handy-ruler------------------------------------------------------|
-libretro-fceumm: libretro-fceumm (FCEUmm libretro port)
-libretro-fceumm:
-libretro-fceumm: FCEUmm (FCEUltra mappers modified) is a NES/Famicom emulator that
-libretro-fceumm: specializes in extensive mapper support.
-libretro-fceumm:
-libretro-fceumm: Homepage: https://www.libretro.com/
-libretro-fceumm:
-libretro-fceumm:
-libretro-fceumm:
-libretro-fceumm:
-libretro-fceumm:
diff --git a/games/libretro-handy/README b/games/libretro-handy/README
deleted file mode 100644
index 9f769ef46a..0000000000
--- a/games/libretro-handy/README
+++ /dev/null
@@ -1,10 +0,0 @@
-Handy is an Atari Lynx video game system emulator that can be used as a
-libretro core.
-
-Handy optionally supports using the following BIOS image file for
-operation:
-
-* lynxboot.img (Lynx Boot Image)
-
-To build the debugging symbols use:
- DEBUG=1 ./libretro-handy.SlackBuild
diff --git a/games/libretro-handy/libretro-handy.SlackBuild b/games/libretro-handy/libretro-handy.SlackBuild
deleted file mode 100644
index c2b9ca03ac..0000000000
--- a/games/libretro-handy/libretro-handy.SlackBuild
+++ /dev/null
@@ -1,82 +0,0 @@
-#!/bin/sh
-
-# Slackware build script for libretro-handy
-
-# Copyright 2016-2018 Hunter Sezen
-# All rights reserved.
-#
-# Redistribution and use of this script, with or without modification, is
-# permitted provided that the following conditions are met:
-#
-# 1. Redistributions of this script must retain the above copyright
-# notice, this list of conditions and the following disclaimer.
-#
-# THIS SOFTWARE IS PROVIDED BY THE AUTHOR "AS IS" AND ANY EXPRESS OR IMPLIED
-# WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE IMPLIED WARRANTIES OF
-# MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE ARE DISCLAIMED. IN NO
-# EVENT SHALL THE AUTHOR BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL,
-# SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT LIMITED TO,
-# PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, DATA, OR PROFITS;
-# OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY,
-# WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR
-# OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF THIS SOFTWARE, EVEN IF
-# ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
-
-PRGNAM=libretro-handy
-LIBNAM=handy_libretro
-VERSION=${VERSION:-2018.09.29_08cc633}
-BUILD=${BUILD:-1}
-TAG=${TAG:-_SBo}
-
-if [ -z "$ARCH" ]; then
- case "$( uname -m )" in
- i?86) ARCH=i586 ;;
- arm*) ARCH=arm ;;
- *) ARCH=$( uname -m ) ;;
- esac
-fi
-
-CWD=$(pwd)
-TMP=${TMP:-/tmp/SBo}
-PKG=$TMP/package-$PRGNAM
-OUTPUT=${OUTPUT:-/tmp}
-
-LIBDIRSUFFIX=
-[ "$ARCH" = x86_64 ] && LIBDIRSUFFIX=64
-
-set -eu
-
-rm -rf $PKG
-mkdir -p $TMP $PKG $OUTPUT
-cd $TMP
-rm -rf $PRGNAM-$VERSION
-tar xvf $CWD/$PRGNAM-$VERSION.tar.xz
-cd $PRGNAM-$VERSION
-chown -R root:root .
-find -L . \
- \( -perm 777 -o -perm 775 -o -perm 750 -o -perm 711 -o -perm 555 \
- -o -perm 511 \) -exec chmod 755 {} \; -o \
- \( -perm 666 -o -perm 664 -o -perm 640 -o -perm 600 -o -perm 444 \
- -o -perm 440 -o -perm 400 \) -exec chmod 644 {} \;
-
-[ "${DEBUG:=0}" != 0 ] && DEBUG=1
-
-make DEBUG=$DEBUG
-
-install -Dm0644 $LIBNAM.so $PKG/usr/lib${LIBDIRSUFFIX}/libretro/$LIBNAM.so
-install -Dm0644 $LIBNAM.info $PKG/usr/lib${LIBDIRSUFFIX}/libretro/info/$LIBNAM.info
-
-if [ $DEBUG = 0 ]; then
- find $PKG -print0 | xargs -0 file | grep -e "executable" -e "shared object" | grep ELF \
- | cut -f 1 -d : | xargs strip --strip-unneeded 2> /dev/null || true
-fi
-
-mkdir -p $PKG/usr/doc/$PRGNAM-$VERSION
-cp -a README.md $PKG/usr/doc/$PRGNAM-$VERSION
-cat $CWD/$PRGNAM.SlackBuild > $PKG/usr/doc/$PRGNAM-$VERSION/$PRGNAM.SlackBuild
-
-mkdir -p $PKG/install
-cat $CWD/slack-desc > $PKG/install/slack-desc
-
-cd $PKG
-/sbin/makepkg -l y -c n $OUTPUT/$PRGNAM-$VERSION-$ARCH-$BUILD$TAG.${PKGTYPE:-tgz}
diff --git a/games/libretro-handy/libretro-handy.info b/games/libretro-handy/libretro-handy.info
deleted file mode 100644
index 942756b166..0000000000
--- a/games/libretro-handy/libretro-handy.info
+++ /dev/null
@@ -1,10 +0,0 @@
-PRGNAM="libretro-handy"
-VERSION="2018.09.29_08cc633"
-HOMEPAGE="https://www.libretro.com/"
-DOWNLOAD="http://slackless.raccoons.tech/src/libretro/libretro-handy-2018.09.29_08cc633.tar.xz"
-MD5SUM="e76b593c3b620f5ccae15bb60c71df1b"
-DOWNLOAD_x86_64=""
-MD5SUM_x86_64=""
-REQUIRES="RetroArch"
-MAINTAINER="orphaned - no maintainer"
-EMAIL="nobody@nowhere.com"
diff --git a/games/libretro-handy/slack-desc b/games/libretro-handy/slack-desc
deleted file mode 100644
index 35ea63e485..0000000000
--- a/games/libretro-handy/slack-desc
+++ /dev/null
@@ -1,19 +0,0 @@
-# HOW TO EDIT THIS FILE:
-# The "handy ruler" below makes it easier to edit a package description.
-# Line up the first '|' above the ':' following the base package name, and
-# the '|' on the right side marks the last column you can put a character in.
-# You must make exactly 11 lines for the formatting to be correct. It's also
-# customary to leave one space after the ':' except on otherwise blank lines.
-
- |-----handy-ruler------------------------------------------------------|
-libretro-handy: libretro-handy (Atari Lynx emulator Handy for libretro)
-libretro-handy:
-libretro-handy: K. Wilkins' Atari Lynx emulator Handy for libretro.
-libretro-handy:
-libretro-handy: Homepage: https://www.libretro.com/
-libretro-handy:
-libretro-handy:
-libretro-handy:
-libretro-handy:
-libretro-handy:
-libretro-handy:
diff --git a/games/libretro-prboom/README b/games/libretro-prboom/README
deleted file mode 100644
index 31d362c9d2..0000000000
--- a/games/libretro-prboom/README
+++ /dev/null
@@ -1,9 +0,0 @@
-PrBoom, the purest Doom-Port? Aims to be the most stable Doom port
-with the highest compatibility to the major Doom versions and highres
-software rendering. Full Boom and most if not all MBF features.
-
-The prboom.wad found in the source tree is required to play prboom,
-place it in the content directory with the other doom wads.
-
-To build the debugging symbols use:
- DEBUG=1 ./libretro-prboom.SlackBuild
diff --git a/games/libretro-prboom/libretro-prboom.SlackBuild b/games/libretro-prboom/libretro-prboom.SlackBuild
deleted file mode 100644
index 86e8657993..0000000000
--- a/games/libretro-prboom/libretro-prboom.SlackBuild
+++ /dev/null
@@ -1,82 +0,0 @@
-#!/bin/sh
-
-# Slackware build script for libretro-prboom
-
-# Copyright 2016-2018 Hunter Sezen
-# All rights reserved.
-#
-# Redistribution and use of this script, with or without modification, is
-# permitted provided that the following conditions are met:
-#
-# 1. Redistributions of this script must retain the above copyright
-# notice, this list of conditions and the following disclaimer.
-#
-# THIS SOFTWARE IS PROVIDED BY THE AUTHOR "AS IS" AND ANY EXPRESS OR IMPLIED
-# WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE IMPLIED WARRANTIES OF
-# MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE ARE DISCLAIMED. IN NO
-# EVENT SHALL THE AUTHOR BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL,
-# SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT LIMITED TO,
-# PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, DATA, OR PROFITS;
-# OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY,
-# WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR
-# OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF THIS SOFTWARE, EVEN IF
-# ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
-
-PRGNAM=libretro-prboom
-LIBNAM=prboom_libretro
-VERSION=${VERSION:-2018.09.30_b516a66}
-BUILD=${BUILD:-1}
-TAG=${TAG:-_SBo}
-
-if [ -z "$ARCH" ]; then
- case "$( uname -m )" in
- i?86) ARCH=i586 ;;
- arm*) ARCH=arm ;;
- *) ARCH=$( uname -m ) ;;
- esac
-fi
-
-CWD=$(pwd)
-TMP=${TMP:-/tmp/SBo}
-PKG=$TMP/package-$PRGNAM
-OUTPUT=${OUTPUT:-/tmp}
-
-LIBDIRSUFFIX=
-[ "$ARCH" = x86_64 ] && LIBDIRSUFFIX=64
-
-set -eu
-
-rm -rf $PKG
-mkdir -p $TMP $PKG $OUTPUT
-cd $TMP
-rm -rf $PRGNAM-$VERSION
-tar xvf $CWD/$PRGNAM-$VERSION.tar.xz
-cd $PRGNAM-$VERSION
-chown -R root:root .
-find -L . \
- \( -perm 777 -o -perm 775 -o -perm 750 -o -perm 711 -o -perm 555 \
- -o -perm 511 \) -exec chmod 755 {} \; -o \
- \( -perm 666 -o -perm 664 -o -perm 640 -o -perm 600 -o -perm 444 \
- -o -perm 440 -o -perm 400 \) -exec chmod 644 {} \;
-
-[ "${DEBUG:=0}" != 0 ] && DEBUG=1
-
-make DEBUG=$DEBUG
-
-install -Dm0644 $LIBNAM.so $PKG/usr/lib${LIBDIRSUFFIX}/libretro/$LIBNAM.so
-install -Dm0644 $LIBNAM.info $PKG/usr/lib${LIBDIRSUFFIX}/libretro/info/$LIBNAM.info
-
-if [ $DEBUG = 0 ]; then
- find $PKG -print0 | xargs -0 file | grep -e "executable" -e "shared object" | grep ELF \
- | cut -f 1 -d : | xargs strip --strip-unneeded 2> /dev/null || true
-fi
-
-mkdir -p $PKG/usr/doc/$PRGNAM-$VERSION
-cp -a AUTHORS COPYING FAQ README* TODO $PKG/usr/doc/$PRGNAM-$VERSION
-cat $CWD/$PRGNAM.SlackBuild > $PKG/usr/doc/$PRGNAM-$VERSION/$PRGNAM.SlackBuild
-
-mkdir -p $PKG/install
-cat $CWD/slack-desc > $PKG/install/slack-desc
-
-cd $PKG
-/sbin/makepkg -l y -c n $OUTPUT/$PRGNAM-$VERSION-$ARCH-$BUILD$TAG.${PKGTYPE:-tgz}
diff --git a/games/libretro-prboom/libretro-prboom.info b/games/libretro-prboom/libretro-prboom.info
deleted file mode 100644
index 52854a1a5e..0000000000
--- a/games/libretro-prboom/libretro-prboom.info
+++ /dev/null
@@ -1,10 +0,0 @@
-PRGNAM="libretro-prboom"
-VERSION="2018.09.30_b516a66"
-HOMEPAGE="https://www.libretro.com/"
-DOWNLOAD="http://slackless.raccoons.tech/src/libretro/libretro-prboom-2018.09.30_b516a66.tar.xz"
-MD5SUM="3fdccb998916cb5798efab7cfd09eb07"
-DOWNLOAD_x86_64=""
-MD5SUM_x86_64=""
-REQUIRES="RetroArch"
-MAINTAINER="orphaned - no maintainer"
-EMAIL="nobody@nowhere.com"
diff --git a/games/libretro-prboom/slack-desc b/games/libretro-prboom/slack-desc
deleted file mode 100644
index 8de0811512..0000000000
--- a/games/libretro-prboom/slack-desc
+++ /dev/null
@@ -1,19 +0,0 @@
-# HOW TO EDIT THIS FILE:
-# The "handy ruler" below makes it easier to edit a package description.
-# Line up the first '|' above the ':' following the base package name, and
-# the '|' on the right side marks the last column you can put a character in.
-# You must make exactly 11 lines for the formatting to be correct. It's also
-# customary to leave one space after the ':' except on otherwise blank lines.
-
- |-----handy-ruler------------------------------------------------------|
-libretro-prboom: libretro-prboom (Port of prboom to libretro)
-libretro-prboom:
-libretro-prboom: PrBoom is a Doom source port that can be used as a libretro core.
-libretro-prboom:
-libretro-prboom: Homepage: https://www.libretro.com/
-libretro-prboom:
-libretro-prboom:
-libretro-prboom:
-libretro-prboom:
-libretro-prboom:
-libretro-prboom:
diff --git a/games/libretro-reicast/README b/games/libretro-reicast/README
deleted file mode 100644
index e141144041..0000000000
--- a/games/libretro-reicast/README
+++ /dev/null
@@ -1,27 +0,0 @@
-Reicast is an Sega Dreamcast and Sega Naomi video game system emulator
-that can be used as a libretro core.
-
-The Dreamcast BIOS files are required to run Reicast.
-
-* dc/dc_boot.bin
-* dc/dc_flash.bin
-
-The Sega Naomi BIOS file is required to run Naomi games.
-
-* dc/naomi_boot.bin
-
-To build Reicast OIT with the newer OpenGL 4.3 renderer use:
- OIT=1 ./libretro-reicast.SlackBuild
-
-When building the OpgnGL 3 Reicast core it can be built with an older
-and more compatbile OpenGL 2 code path instead by using:
- GL2=1 ./libretro-reicast.SlackBuild
-
-Building Reicast with OpenGL 2 support should only be done if required
-by your video card.
-
-Reicast OIT will require an OpenGL compatibility profile to work
-correctly.
-
-To build the debugging symbols use:
- DEBUG=1 ./libretro-reicast.SlackBuild
diff --git a/games/libretro-reicast/libretro-reicast.SlackBuild b/games/libretro-reicast/libretro-reicast.SlackBuild
deleted file mode 100644
index 490c07e725..0000000000
--- a/games/libretro-reicast/libretro-reicast.SlackBuild
+++ /dev/null
@@ -1,88 +0,0 @@
-#!/bin/sh
-
-# Slackware build script for libretro-reicast
-
-# Copyright 2016-2018 Hunter Sezen
-# All rights reserved.
-#
-# Redistribution and use of this script, with or without modification, is
-# permitted provided that the following conditions are met:
-#
-# 1. Redistributions of this script must retain the above copyright
-# notice, this list of conditions and the following disclaimer.
-#
-# THIS SOFTWARE IS PROVIDED BY THE AUTHOR "AS IS" AND ANY EXPRESS OR IMPLIED
-# WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE IMPLIED WARRANTIES OF
-# MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE ARE DISCLAIMED. IN NO
-# EVENT SHALL THE AUTHOR BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL,
-# SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT LIMITED TO,
-# PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, DATA, OR PROFITS;
-# OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY,
-# WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR
-# OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF THIS SOFTWARE, EVEN IF
-# ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
-
-PRGNAM=libretro-reicast
-LIBNAM=${PRGNAM#*-}_libretro
-VERSION=${VERSION:-2018.12.11_7221180}
-BUILD=${BUILD:-1}
-TAG=${TAG:-_SBo}
-
-if [ -z "$ARCH" ]; then
- case "$( uname -m )" in
- i?86) ARCH=i586 ;;
- arm*) ARCH=arm ;;
- *) ARCH=$( uname -m ) ;;
- esac
-fi
-
-CWD=$(pwd)
-TMP=${TMP:-/tmp/SBo}
-PKG=$TMP/package-$PRGNAM
-OUTPUT=${OUTPUT:-/tmp}
-
-LIBDIRSUFFIX=
-[ "$ARCH" = x86_64 ] && LIBDIRSUFFIX=64
-
-set -eu
-
-rm -rf $PKG
-mkdir -p $TMP $PKG $OUTPUT
-cd $TMP
-rm -rf $PRGNAM-$VERSION
-tar xvf $CWD/$PRGNAM-$VERSION.tar.xz
-cd $PRGNAM-$VERSION
-chown -R root:root .
-find -L . \
- \( -perm 777 -o -perm 775 -o -perm 750 -o -perm 711 -o -perm 555 \
- -o -perm 511 \) -exec chmod 755 {} \; -o \
- \( -perm 666 -o -perm 664 -o -perm 640 -o -perm 600 -o -perm 444 \
- -o -perm 440 -o -perm 400 \) -exec chmod 644 {} \;
-
-[ "${DEBUG:=0}" != 0 ] && DEBUG=1
-[ "${GL2:=0}" != 0 ] && GL2=1
-[ "${OIT:=0}" != 0 ] && OIT=1
-
-make \
- DEBUG=$DEBUG \
- HAVE_GL2=$GL2 \
- HAVE_OIT=$OIT
-
-install -Dm0644 $LIBNAM.so $PKG/usr/lib${LIBDIRSUFFIX}/libretro/$LIBNAM.so
-install -Dm0644 $LIBNAM.info \
- $PKG/usr/lib${LIBDIRSUFFIX}/libretro/info/$LIBNAM.info
-
-if [ $DEBUG = 0 ]; then
- find $PKG -print0 | xargs -0 file | grep -e "executable" -e "shared object" |
- grep ELF | cut -f 1 -d : | xargs strip --strip-unneeded 2> /dev/null || true
-fi
-
-mkdir -p $PKG/usr/doc/$PRGNAM-$VERSION
-cp -a -- LICENSE README.md *.txt $PKG/usr/doc/$PRGNAM-$VERSION
-cat $CWD/$PRGNAM.SlackBuild > $PKG/usr/doc/$PRGNAM-$VERSION/$PRGNAM.SlackBuild
-
-mkdir -p $PKG/install
-cat $CWD/slack-desc > $PKG/install/slack-desc
-
-cd $PKG
-/sbin/makepkg -l y -c n $OUTPUT/$PRGNAM-$VERSION-$ARCH-$BUILD$TAG.${PKGTYPE:-tgz}
diff --git a/games/libretro-reicast/libretro-reicast.info b/games/libretro-reicast/libretro-reicast.info
deleted file mode 100644
index e41258a93b..0000000000
--- a/games/libretro-reicast/libretro-reicast.info
+++ /dev/null
@@ -1,10 +0,0 @@
-PRGNAM="libretro-reicast"
-VERSION="2018.12.11_7221180"
-HOMEPAGE="https://www.libretro.com/"
-DOWNLOAD="http://slackless.raccoons.tech/src/libretro/libretro-reicast-2018.12.11_7221180.tar.xz"
-MD5SUM="9f9b893222683221130a24a283741af8"
-DOWNLOAD_x86_64=""
-MD5SUM_x86_64=""
-REQUIRES="RetroArch"
-MAINTAINER="orphaned - no maintainer"
-EMAIL="nobody@nowhere.com"
diff --git a/games/libretro-reicast/slack-desc b/games/libretro-reicast/slack-desc
deleted file mode 100644
index 61e86291f9..0000000000
--- a/games/libretro-reicast/slack-desc
+++ /dev/null
@@ -1,19 +0,0 @@
-# HOW TO EDIT THIS FILE:
-# The "handy ruler" below makes it easier to edit a package description.
-# Line up the first '|' above the ':' following the base package name, and
-# the '|' on the right side marks the last column you can put a character in.
-# You must make exactly 11 lines for the formatting to be correct. It's also
-# customary to leave one space after the ':' except on otherwise blank lines.
-
- |-----handy-ruler------------------------------------------------------|
-libretro-reicast: libretro-reicast (Port of reicast to libretro)
-libretro-reicast:
-libretro-reicast: reicast is a multi-platform Sega Dreamcast and Sega Naomi emulator.
-libretro-reicast:
-libretro-reicast: Homepage: https://www.libretro.com/
-libretro-reicast:
-libretro-reicast:
-libretro-reicast:
-libretro-reicast:
-libretro-reicast:
-libretro-reicast:
diff --git a/games/libretro-vecx/README b/games/libretro-vecx/README
deleted file mode 100644
index 4e0efb1cd1..0000000000
--- a/games/libretro-vecx/README
+++ /dev/null
@@ -1,5 +0,0 @@
-Vecx is a Vectrex video game system emulator that can be used as a
-libretro core.
-
-To build the debugging symbols use:
- DEBUG=1 ./libretro-vecx.SlackBuild
diff --git a/games/libretro-vecx/libretro-vecx.SlackBuild b/games/libretro-vecx/libretro-vecx.SlackBuild
deleted file mode 100644
index d70462dcb6..0000000000
--- a/games/libretro-vecx/libretro-vecx.SlackBuild
+++ /dev/null
@@ -1,82 +0,0 @@
-#!/bin/sh
-
-# Slackware build script for libretro-vecx
-
-# Copyright 2017-2018 Hunter Sezen California, USA
-# All rights reserved.
-#
-# Redistribution and use of this script, with or without modification, is
-# permitted provided that the following conditions are met:
-#
-# 1. Redistributions of this script must retain the above copyright
-# notice, this list of conditions and the following disclaimer.
-#
-# THIS SOFTWARE IS PROVIDED BY THE AUTHOR "AS IS" AND ANY EXPRESS OR IMPLIED
-# WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE IMPLIED WARRANTIES OF
-# MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE ARE DISCLAIMED. IN NO
-# EVENT SHALL THE AUTHOR BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL,
-# SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT LIMITED TO,
-# PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, DATA, OR PROFITS;
-# OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY,
-# WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR
-# OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF THIS SOFTWARE, EVEN IF
-# ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
-
-PRGNAM=libretro-vecx
-LIBNAM=vecx_libretro
-VERSION=${VERSION:-2018.09.29_fb70263}
-BUILD=${BUILD:-1}
-TAG=${TAG:-_SBo}
-
-if [ -z "$ARCH" ]; then
- case "$( uname -m )" in
- i?86) ARCH=i586 ;;
- arm*) ARCH=arm ;;
- *) ARCH=$( uname -m ) ;;
- esac
-fi
-
-CWD=$(pwd)
-TMP=${TMP:-/tmp/SBo}
-PKG=$TMP/package-$PRGNAM
-OUTPUT=${OUTPUT:-/tmp}
-
-LIBDIRSUFFIX=
-[ "$ARCH" = x86_64 ] && LIBDIRSUFFIX=64
-
-set -eu
-
-rm -rf $PKG
-mkdir -p $TMP $PKG $OUTPUT
-cd $TMP
-rm -rf $PRGNAM-$VERSION
-tar xvf $CWD/$PRGNAM-$VERSION.tar.xz
-cd $PRGNAM-$VERSION
-chown -R root:root .
-find -L . \
- \( -perm 777 -o -perm 775 -o -perm 750 -o -perm 711 -o -perm 555 \
- -o -perm 511 \) -exec chmod 755 {} \; -o \
- \( -perm 666 -o -perm 664 -o -perm 640 -o -perm 600 -o -perm 444 \
- -o -perm 440 -o -perm 400 \) -exec chmod 644 {} \;
-
-[ "${DEBUG:=0}" != 0 ] && DEBUG=1
-
-make -f Makefile.libretro DEBUG=$DEBUG GIT_VERSION="${VERSION#*_}"
-
-install -Dm0644 $LIBNAM.so $PKG/usr/lib${LIBDIRSUFFIX}/libretro/$LIBNAM.so
-install -Dm0644 $LIBNAM.info $PKG/usr/lib${LIBDIRSUFFIX}/libretro/info/$LIBNAM.info
-
-if [ $DEBUG = 0 ]; then
- find $PKG -print0 | xargs -0 file | grep -e "executable" -e "shared object" | grep ELF \
- | cut -f 1 -d : | xargs strip --strip-unneeded 2> /dev/null || true
-fi
-
-mkdir -p $PKG/usr/doc/$PRGNAM-$VERSION
-cp -a LICENSE.md README.md $PKG/usr/doc/$PRGNAM-$VERSION
-cat $CWD/$PRGNAM.SlackBuild > $PKG/usr/doc/$PRGNAM-$VERSION/$PRGNAM.SlackBuild
-
-mkdir -p $PKG/install
-cat $CWD/slack-desc > $PKG/install/slack-desc
-
-cd $PKG
-/sbin/makepkg -l y -c n $OUTPUT/$PRGNAM-$VERSION-$ARCH-$BUILD$TAG.${PKGTYPE:-tgz}
diff --git a/games/libretro-vecx/libretro-vecx.info b/games/libretro-vecx/libretro-vecx.info
deleted file mode 100644
index e9412438a0..0000000000
--- a/games/libretro-vecx/libretro-vecx.info
+++ /dev/null
@@ -1,10 +0,0 @@
-PRGNAM="libretro-vecx"
-VERSION="2018.09.29_fb70263"
-HOMEPAGE="https://www.libretro.com/"
-DOWNLOAD="http://slackless.raccoons.tech/src/libretro/libretro-vecx-2018.09.29_fb70263.tar.xz"
-MD5SUM="5b313a4b412a9a2eb16fca806c371f65"
-DOWNLOAD_x86_64=""
-MD5SUM_x86_64=""
-REQUIRES="RetroArch"
-MAINTAINER="orphaned - no maintainer"
-EMAIL="nobody@nowhere.com"
diff --git a/games/libretro-vecx/slack-desc b/games/libretro-vecx/slack-desc
deleted file mode 100644
index 1bbe320d48..0000000000
--- a/games/libretro-vecx/slack-desc
+++ /dev/null
@@ -1,19 +0,0 @@
-# HOW TO EDIT THIS FILE:
-# The "handy ruler" below makes it easier to edit a package description.
-# Line up the first '|' above the ':' following the base package name, and
-# the '|' on the right side marks the last column you can put a character in.
-# You must make exactly 11 lines for the formatting to be correct. It's also
-# customary to leave one space after the ':' except on otherwise blank lines.
-
- |-----handy-ruler------------------------------------------------------|
-libretro-vecx: libretro-vecx (vecx libretro port)
-libretro-vecx:
-libretro-vecx: Vecx is a Vectrex video game system emulator that can be used as a
-libretro-vecx: libretro core.
-libretro-vecx:
-libretro-vecx: Homepage: https://www.libretro.com/
-libretro-vecx:
-libretro-vecx:
-libretro-vecx:
-libretro-vecx:
-libretro-vecx:
diff --git a/games/libretro-yabause/README b/games/libretro-yabause/README
deleted file mode 100644
index 351db37753..0000000000
--- a/games/libretro-yabause/README
+++ /dev/null
@@ -1,18 +0,0 @@
-Yabause is a Sega Saturn video game system emulator that can be used as
-a libretro core.
-
-Yabause (Yet Another Buggy And Uncomplete Saturn Emulator) is the
-only active Sega Saturn emulator that is both open-source and written
-with portability in mind. The libretro port only supports the software
-renderer at the moment, which is more accurate but also slower than the
-GL renderer.
-
-Yabause optionally supports usage of an actual Saturn BIOS image file
-for increased compatibility:
-
-* saturn_bios.bin
-
-Any kind Saturn BIOS file should be good to go.
-
-To build the debugging symbols use:
- DEBUG=1 ./libretro-yabause.SlackBuild
diff --git a/games/libretro-yabause/libretro-yabause.SlackBuild b/games/libretro-yabause/libretro-yabause.SlackBuild
deleted file mode 100644
index ebbf4ba556..0000000000
--- a/games/libretro-yabause/libretro-yabause.SlackBuild
+++ /dev/null
@@ -1,89 +0,0 @@
-#!/bin/sh
-
-# Slackware build script for libretro-yabause
-
-# Copyright 2016-2018 Hunter Sezen
-# All rights reserved.
-#
-# Redistribution and use of this script, with or without modification, is
-# permitted provided that the following conditions are met:
-#
-# 1. Redistributions of this script must retain the above copyright
-# notice, this list of conditions and the following disclaimer.
-#
-# THIS SOFTWARE IS PROVIDED BY THE AUTHOR "AS IS" AND ANY EXPRESS OR IMPLIED
-# WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE IMPLIED WARRANTIES OF
-# MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE ARE DISCLAIMED. IN NO
-# EVENT SHALL THE AUTHOR BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL,
-# SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT LIMITED TO,
-# PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, DATA, OR PROFITS;
-# OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY,
-# WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR
-# OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF THIS SOFTWARE, EVEN IF
-# ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
-
-PRGNAM=libretro-yabause
-LIBNAM=yabause_libretro
-VERSION=${VERSION:-2018.10.12_aa15301}
-BUILD=${BUILD:-1}
-TAG=${TAG:-_SBo}
-
-if [ -z "$ARCH" ]; then
- case "$( uname -m )" in
- i?86) ARCH=i586 ;;
- arm*) ARCH=arm ;;
- *) ARCH=$( uname -m ) ;;
- esac
-fi
-
-CWD=$(pwd)
-TMP=${TMP:-/tmp/SBo}
-PKG=$TMP/package-$PRGNAM
-OUTPUT=${OUTPUT:-/tmp}
-
-LIBDIRSUFFIX=
-[ "$ARCH" = x86_64 ] && LIBDIRSUFFIX=64
-
-set -eu
-
-rm -rf $PKG
-mkdir -p $TMP $PKG $OUTPUT
-cd $TMP
-rm -rf $PRGNAM-$VERSION
-tar xvf $CWD/$PRGNAM-$VERSION.tar.xz
-cd $PRGNAM-$VERSION
-chown -R root:root .
-find -L . \
- \( -perm 777 -o -perm 775 -o -perm 750 -o -perm 711 -o -perm 555 \
- -o -perm 511 \) -exec chmod 755 {} \; -o \
- \( -perm 666 -o -perm 664 -o -perm 640 -o -perm 600 -o -perm 444 \
- -o -perm 440 -o -perm 400 \) -exec chmod 644 {} \;
-
-[ "${DEBUG:=0}" != 0 ] && DEBUG=1
-
-make -C libretro DEBUG=$DEBUG
-
-install -Dm0644 libretro/$LIBNAM.so $PKG/usr/lib${LIBDIRSUFFIX}/libretro/$LIBNAM.so
-install -Dm0644 $LIBNAM.info $PKG/usr/lib${LIBDIRSUFFIX}/libretro/info/$LIBNAM.info
-
-if [ $DEBUG = 0 ]; then
- find $PKG -print0 | xargs -0 file | grep -e "executable" -e "shared object" | grep ELF \
- | cut -f 1 -d : | xargs strip --strip-unneeded 2> /dev/null || true
-fi
-
-for DOCDIR in mini18n yabause yabauseut; do
- mkdir -p $PKG/usr/doc/$PRGNAM-$VERSION/$DOCDIR
- for file in AUTHORS COPYING ChangeLog GOALS README* TODO; do
- if [ -f $DOCDIR/$file ]; then
- cp -a $DOCDIR/$file $PKG/usr/doc/$PRGNAM-$VERSION/$DOCDIR
- fi
- done
-done
-cp -a README.md $PKG/usr/doc/$PRGNAM-$VERSION
-cat $CWD/$PRGNAM.SlackBuild > $PKG/usr/doc/$PRGNAM-$VERSION/$PRGNAM.SlackBuild
-
-mkdir -p $PKG/install
-cat $CWD/slack-desc > $PKG/install/slack-desc
-
-cd $PKG
-/sbin/makepkg -l y -c n $OUTPUT/$PRGNAM-$VERSION-$ARCH-$BUILD$TAG.${PKGTYPE:-tgz}
diff --git a/games/libretro-yabause/libretro-yabause.info b/games/libretro-yabause/libretro-yabause.info
deleted file mode 100644
index 77cb93746b..0000000000
--- a/games/libretro-yabause/libretro-yabause.info
+++ /dev/null
@@ -1,10 +0,0 @@
-PRGNAM="libretro-yabause"
-VERSION="2018.10.12_aa15301"
-HOMEPAGE="https://www.libretro.com/"
-DOWNLOAD="http://slackless.raccoons.tech/src/libretro/libretro-yabause-2018.10.12_aa15301.tar.xz"
-MD5SUM="fe1d78f0f6d8e230e3ca5048c9e79d1c"
-DOWNLOAD_x86_64=""
-MD5SUM_x86_64=""
-REQUIRES="RetroArch"
-MAINTAINER="orphaned - no maintainer"
-EMAIL="nobody@nowhere.com"
diff --git a/games/libretro-yabause/slack-desc b/games/libretro-yabause/slack-desc
deleted file mode 100644
index 0d5ff6d9eb..0000000000
--- a/games/libretro-yabause/slack-desc
+++ /dev/null
@@ -1,19 +0,0 @@
-# HOW TO EDIT THIS FILE:
-# The "handy ruler" below makes it easier to edit a package description.
-# Line up the first '|' above the ':' following the base package name, and
-# the '|' on the right side marks the last column you can put a character in.
-# You must make exactly 11 lines for the formatting to be correct. It's also
-# customary to leave one space after the ':' except on otherwise blank lines.
-
- |-----handy-ruler------------------------------------------------------|
-libretro-yabause: libretro-yabause (Yabause port for libretro)
-libretro-yabause:
-libretro-yabause: Yabause (Yet Another Buggy And Uncomplete Saturn Emulator) is the
-libretro-yabause: only active Sega Saturn emulator that is both open-source and written
-libretro-yabause: with portability in mind. The libretro port only supports the software
-libretro-yabause: renderer at the moment, which is more accurate but also slower than
-libretro-yabause: the GL renderer.
-libretro-yabause:
-libretro-yabause: Homepage: https://www.libretro.com/
-libretro-yabause:
-libretro-yabause:
diff --git a/games/lightyears/lightyears.SlackBuild b/games/lightyears/lightyears.SlackBuild
index b66a25f9d6..87604e99b5 100644
--- a/games/lightyears/lightyears.SlackBuild
+++ b/games/lightyears/lightyears.SlackBuild
@@ -1,4 +1,4 @@
-#!/bin/sh
+#!/bin/bash
# SlackBuild script for lightyears
@@ -22,13 +22,23 @@
# OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF THIS SOFTWARE, EVEN IF
# ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
+cd $(dirname $0) ; CWD=$(pwd)
+
PRGNAM=lightyears
VERSION=${VERSION:-1.4}
ARCH=noarch
BUILD=${BUILD:-1}
TAG=${TAG:-_SBo}
+PKGTYPE=${PKGTYPE:-tgz}
+
+# If the variable PRINT_PACKAGE_NAME is set, then this script will report what
+# the name of the created package would be, and then exit. This information
+# could be useful to other scripts.
+if [ ! -z "${PRINT_PACKAGE_NAME}" ]; then
+ echo "$PRGNAM-$VERSION-$ARCH-$BUILD$TAG.$PKGTYPE"
+ exit 0
+fi
-CWD=$(pwd)
TMP=${TMP:-/tmp/SBo}
PKG=$TMP/package-$PRGNAM
OUTPUT=${OUTPUT:-/tmp}
@@ -71,4 +81,4 @@ cat $CWD/slack-desc > $PKG/install/slack-desc
cat $CWD/doinst.sh > $PKG/install/doinst.sh
cd $PKG
-/sbin/makepkg -l y -c n $OUTPUT/$PRGNAM-$VERSION-$ARCH-$BUILD$TAG.${PKGTYPE:-tgz}
+/sbin/makepkg -l y -c n $OUTPUT/$PRGNAM-$VERSION-$ARCH-$BUILD$TAG.$PKGTYPE
diff --git a/games/lightyears/lightyears.info b/games/lightyears/lightyears.info
index 88267ae277..be5f2b3619 100644
--- a/games/lightyears/lightyears.info
+++ b/games/lightyears/lightyears.info
@@ -1,10 +1,10 @@
PRGNAM="lightyears"
VERSION="1.4"
HOMEPAGE="http://www.jwhitham.org/20kly/"
-DOWNLOAD="http://www.jwhitham.org/20kly/lightyears-1.4.tar.bz2"
+DOWNLOAD="http://attic-distfiles.pld-linux.org/distfiles/by-md5/1/2/1211f6c9f368e3d8053965b3e42dcdcd/lightyears-1.4.tar.bz2"
MD5SUM="1211f6c9f368e3d8053965b3e42dcdcd"
DOWNLOAD_x86_64=""
MD5SUM_x86_64=""
-REQUIRES="pygame"
+REQUIRES="python2-pygame"
MAINTAINER="David Fillpot"
EMAIL="mfillpot@gmail.com"
diff --git a/games/lincity-ng/lincity-ng.SlackBuild b/games/lincity-ng/lincity-ng.SlackBuild
index e19bc2e6da..2405857084 100644
--- a/games/lincity-ng/lincity-ng.SlackBuild
+++ b/games/lincity-ng/lincity-ng.SlackBuild
@@ -1,29 +1,39 @@
-#!/bin/sh
+#!/bin/bash
# Slackware build script for lincity-ng
# Written by M.Dinslage (daedra1980{at}gmail.com)
+cd $(dirname $0) ; CWD=$(pwd)
+
PRGNAM=lincity-ng
VERSION=${VERSION:-2.0}
BUILD=${BUILD:-1}
TAG=${TAG:-_SBo}
+PKGTYPE=${PKGTYPE:-tgz}
if [ -z "$ARCH" ]; then
case "$( uname -m )" in
- i?86) ARCH=i486 ;;
+ i?86) ARCH=i586 ;;
arm*) ARCH=arm ;;
*) ARCH=$( uname -m ) ;;
esac
fi
-CWD=$(pwd)
+# If the variable PRINT_PACKAGE_NAME is set, then this script will report what
+# the name of the created package would be, and then exit. This information
+# could be useful to other scripts.
+if [ ! -z "${PRINT_PACKAGE_NAME}" ]; then
+ echo "$PRGNAM-$VERSION-$ARCH-$BUILD$TAG.$PKGTYPE"
+ exit 0
+fi
+
TMP=${TMP:-/tmp/SBo}
PKG=$TMP/package-$PRGNAM
OUTPUT=${OUTPUT:-/tmp}
-if [ "$ARCH" = "i486" ]; then
- SLKCFLAGS="-O2 -march=i486 -mtune=i686"
+if [ "$ARCH" = "i586" ]; then
+ SLKCFLAGS="-O2 -march=i586 -mtune=i686"
LIBDIRSUFFIX=""
elif [ "$ARCH" = "i686" ]; then
SLKCFLAGS="-O2 -march=i686 -mtune=i686"
@@ -79,4 +89,4 @@ cat $CWD/slack-desc > $PKG/install/slack-desc
cat $CWD/doinst.sh > $PKG/install/doinst.sh
cd $PKG
-/sbin/makepkg -l y -c n $OUTPUT/$PRGNAM-$VERSION-$ARCH-$BUILD$TAG.${PKGTYPE:-tgz}
+/sbin/makepkg -l y -c n $OUTPUT/$PRGNAM-$VERSION-$ARCH-$BUILD$TAG.$PKGTYPE
diff --git a/games/liquidwar6/README b/games/liquidwar6/README
index 409b7eb380..0b5348a7bb 100644
--- a/games/liquidwar6/README
+++ b/games/liquidwar6/README
@@ -1,3 +1,5 @@
+liquidwar6 (multiplayer war game)
+
Liquid War 6 is a unique multiplayer wargame. Your army is a blob
of liquid and you have to try and eat your opponents. Rules are very
simple yet original, they have been invented by Thomas Colcombet. It
@@ -5,13 +7,8 @@ is possible to play alone against the computer but the game is really
designed to be played with friends, on a single computer, on a LAN, or
on Internet.
-If you'd like this package to include
-some extra game maps, get them from:
-http://download.savannah.gnu.org/releases/liquidwar6/0.0.13beta/liquidwar6-extra-maps-0.0.13beta.tar.gz
-
-Place the liquidwar6-extra-maps-0.0.6beta.tar.gz file in the same
-directory with liquidwar6.SlackBuild before building the package.
-
The documentation for liquidwar6 is installed as info pages, use
"info liquidwar6" to read. The liquidwar v5 docs might also be useful:
http://www.ufoot.org/liquidwar/v5/doc
+
+The package includes the extra game maps, version 0.0.13beta.
diff --git a/games/liquidwar6/doinst.sh b/games/liquidwar6/doinst.sh
index 4e8ba7071d..4eef1366a2 100644
--- a/games/liquidwar6/doinst.sh
+++ b/games/liquidwar6/doinst.sh
@@ -2,3 +2,12 @@ if [ -x /usr/bin/update-desktop-database ]; then
/usr/bin/update-desktop-database -q usr/share/applications >/dev/null 2>&1
fi
+if [ -e usr/share/icons/hicolor/icon-theme.cache ]; then
+ if [ -x /usr/bin/gtk-update-icon-cache ]; then
+ /usr/bin/gtk-update-icon-cache usr/share/icons/hicolor >/dev/null 2>&1
+ fi
+fi
+
+if [ -x /usr/bin/install-info ]; then
+ /usr/bin/install-info usr/info/liquidwar6.info.gz usr/info/dir
+fi
diff --git a/games/liquidwar6/douninst.sh b/games/liquidwar6/douninst.sh
new file mode 100644
index 0000000000..1f6dd55f77
--- /dev/null
+++ b/games/liquidwar6/douninst.sh
@@ -0,0 +1,7 @@
+# since our info file ends up in the 'Miscellaneous' section, we won't
+# worry about removing the section if it's empty (because it won't be,
+# because various Slackware packages use the same section).
+
+if [ -e usr/info/dir ]; then
+ sed -i '/^\* Liquid War 6:/d' usr/info/dir
+fi
diff --git a/games/liquidwar6/liquidwar6.SlackBuild b/games/liquidwar6/liquidwar6.SlackBuild
index dde88bcbac..b2090469ea 100644
--- a/games/liquidwar6/liquidwar6.SlackBuild
+++ b/games/liquidwar6/liquidwar6.SlackBuild
@@ -1,18 +1,30 @@
-#!/bin/sh
+#!/bin/bash
# Slackware build script for liquidwar6
-# Written by B. Watson (yalhcru@gmail.com)
+# Written by B. Watson (urchlay@slackware.uk)
# Licensed under the WTFPL. See http://www.wtfpl.net/txt/copying/ for details.
+# 20211031 bkw: BUILD=3
+# - fix build on -current again.
+# - use upstream's icon and .desktop.
+# - install/remove info file in doinst/douninst.
+# - new-style icons.
+# - always include the extra game maps. they don't take up much space,
+# and it's one less hoop to make people jump through.
+
# 20170621 bkw: fix build on -current
+cd $(dirname $0) ; CWD=$(pwd)
+
PRGNAM=liquidwar6
VERSION=${VERSION:-0.6.3902}
-BUILD=${BUILD:-2}
+BUILD=${BUILD:-3}
TAG=${TAG:-_SBo}
+PKGTYPE=${PKGTYPE:-tgz}
+MAPVER=${MAPVER:-0.0.13beta}
SHORTNAM=${PRGNAM/[0-9]*/}
if [ -z "$ARCH" ]; then
@@ -23,7 +35,11 @@ if [ -z "$ARCH" ]; then
esac
fi
-CWD=$(pwd)
+if [ ! -z "${PRINT_PACKAGE_NAME}" ]; then
+ echo "$PRGNAM-$VERSION-$ARCH-$BUILD$TAG.$PKGTYPE"
+ exit 0
+fi
+
TMP=${TMP:-/tmp/SBo}
PKG=$TMP/package-$PRGNAM
OUTPUT=${OUTPUT:-/tmp}
@@ -50,21 +66,28 @@ cd $TMP
rm -rf $PRGNAM-$VERSION
tar xvf $CWD/$PRGNAM-$VERSION.tar.gz
cd $PRGNAM-$VERSION
+tar xvf $CWD/$PRGNAM-extra-maps-$MAPVER.tar.gz
chown -R root:root .
-find -L . \
- \( -perm 777 -o -perm 775 -o -perm 750 -o -perm 711 -o -perm 555 \
- -o -perm 511 \) -exec chmod 755 {} \; -o \
- \( -perm 666 -o -perm 664 -o -perm 640 -o -perm 600 -o -perm 444 \
- -o -perm 440 -o -perm 400 \) -exec chmod 644 {} \;
+find -L . -perm /111 -a \! -perm 755 -a -exec chmod 755 {} \+ -o \
+ \! -perm /111 -a \! -perm 644 -a -exec chmod 644 {} \+
# -current needs this:
sed -i 's,-Werror,,' configure
+# 20211031 bkw: it looks like we ought to be able to force the
+# guile-config binary by setting GUILE_CONFIG in the env, but later
+# on the configure script uses the hard-coded name "guile-config" (the
+# one we want is "guile-config1.8"). So:
+mkdir -p fakebin
+ln -s /usr/bin/guile-config1.8 fakebin/guile-config
+export PATH=$(pwd)/fakebin:$PATH
+
CFLAGS="$SLKCFLAGS" \
CXXFLAGS="$SLKCFLAGS" \
./configure \
--prefix=/usr \
--bindir=/usr/games \
+ --datadir=/usr/share/games \
--sysconfdir=/etc \
--localstatedir=/var \
--libdir=/usr/lib${LIBDIRSUFFIX} \
@@ -77,17 +100,31 @@ CXXFLAGS="$SLKCFLAGS" \
make
make install-strip DESTDIR=$PKG
+DIRVER="$( echo $VERSION | cut -d. -f1,2 )"
+EXTRADIR=$PKG/usr/share/games/$PRGNAM-$DIRVER/map/extra
+mkdir -p $EXTRADIR
+cp -r $PRGNAM-extra-maps-$MAPVER/map/* $EXTRADIR
+
+# the .desktop and icon should be installed in --datarootdir, not
+# --datadir. Sigh.
+mv $PKG/usr/share/games/applications $PKG/usr/share/applications
+sed -i 's,Exec=,&/usr/games/,' $PKG/usr/share/applications/$PRGNAM.desktop
+mv $PKG/usr/share/games/pixmaps $PKG/usr/share/pixmaps
+rm -f $PKG/usr/share/pixmaps/$PRGNAM.png
+# pixmaps still contains upstream's 48x48 xpm icon.
+
+for px in 16 32 48 64 128; do
+ size=${px}x${px}
+ dir=$PKG/usr/share/icons/hicolor/$size/apps
+ mkdir -p $dir
+ convert -resize $size data/icon/$PRGNAM.png $dir/$PRGNAM.png
+done
+
gzip $PKG/usr/man/man6/$PRGNAM.6
( cd $PKG/usr/man/man6 ; ln -s $PRGNAM.6.gz $SHORTNAM.6.gz )
( cd $PKG/usr/games ; ln -s $PRGNAM $SHORTNAM )
-# PNG icon converted from data/net/htdocs/favicon.ico
-mkdir -p $PKG/usr/share/pixmaps
-cat $CWD/$PRGNAM.png > $PKG/usr/share/pixmaps/$PRGNAM.png
-
-mkdir -p $PKG/usr/share/applications
-cat $CWD/$PRGNAM.desktop > $PKG/usr/share/applications/$PRGNAM.desktop
-
+# see doinst.sh and douninst.sh, for how to install/remove info files.
rm -f $PKG/usr/info/dir
gzip -9 $PKG/usr/info/*
@@ -100,21 +137,9 @@ cp -a README NEWS ChangeLog COPYING AUTHORS $PKG/usr/doc/$PRGNAM-$VERSION
cat $CWD/$PRGNAM.SlackBuild > $PKG/usr/doc/$PRGNAM-$VERSION/$PRGNAM.SlackBuild
mkdir -p $PKG/install
-cat $CWD/slack-desc > $PKG/install/slack-desc
+sed "s,@MAPVER@,$MAPVER," $CWD/slack-desc > $PKG/install/slack-desc
cat $CWD/doinst.sh > $PKG/install/doinst.sh
-
-# If the extra-maps source is found, install it
-# (do this last so we can edit the slack-desc in place)
-if [ -r $CWD/$PRGNAM-extra-maps-$VERSION.tar.gz ]; then
- ( cd $TMP
- tar xvf $CWD/$PRGNAM-extra-maps-$VERSION.tar.gz
- mkdir -p $PKG/usr/share/$PRGNAM-$VERSION/map/extra
- cp -r $PRGNAM-extra-maps-$VERSION/map/* \
- $PKG/usr/share/$PRGNAM-$VERSION/map/extra
- )
- sed -i -e '18s/:/: This package includes the extra game maps./' \
- $PKG/install/slack-desc
-fi
+cat $CWD/douninst.sh > $PKG/install/douninst.sh
cd $PKG
-/sbin/makepkg -l y -c n $OUTPUT/$PRGNAM-$VERSION-$ARCH-$BUILD$TAG.${PKGTYPE:-tgz}
+/sbin/makepkg -l y -c n $OUTPUT/$PRGNAM-$VERSION-$ARCH-$BUILD$TAG.$PKGTYPE
diff --git a/games/liquidwar6/liquidwar6.desktop b/games/liquidwar6/liquidwar6.desktop
deleted file mode 100644
index 9d3b2dd5e7..0000000000
--- a/games/liquidwar6/liquidwar6.desktop
+++ /dev/null
@@ -1,6 +0,0 @@
-[Desktop Entry]
-Name=Liquid War 6
-Exec=liquidwar6
-Type=Application
-Icon=liquidwar6
-Categories=Game;StrategyGame;
diff --git a/games/liquidwar6/liquidwar6.info b/games/liquidwar6/liquidwar6.info
index aeb771ecbf..7d7112fcb1 100644
--- a/games/liquidwar6/liquidwar6.info
+++ b/games/liquidwar6/liquidwar6.info
@@ -1,10 +1,12 @@
PRGNAM="liquidwar6"
VERSION="0.6.3902"
-HOMEPAGE="http://www.gnu.org/software/liquidwar6/"
-DOWNLOAD="http://ftp.gnu.org/gnu/liquidwar6/liquidwar6-0.6.3902.tar.gz"
-MD5SUM="e83e4eb4ebd655d61c09e30a9aae3a0c"
+HOMEPAGE="https://www.gnu.org/software/liquidwar6/"
+DOWNLOAD="https://ftp.gnu.org/gnu/liquidwar6/liquidwar6-0.6.3902.tar.gz \
+ https://download.savannah.gnu.org/releases/liquidwar6/0.0.13beta/liquidwar6-extra-maps-0.0.13beta.tar.gz"
+MD5SUM="e83e4eb4ebd655d61c09e30a9aae3a0c \
+ cd104827e9cb96384ab8e2583dfa05c9"
DOWNLOAD_x86_64=""
MD5SUM_x86_64=""
-REQUIRES=""
+REQUIRES="guile1.8"
MAINTAINER="B. Watson"
-EMAIL="yalhcru@gmail.com"
+EMAIL="urchlay@slackware.uk"
diff --git a/games/liquidwar6/liquidwar6.png b/games/liquidwar6/liquidwar6.png
deleted file mode 100644
index b7885181ba..0000000000
--- a/games/liquidwar6/liquidwar6.png
+++ /dev/null
Binary files differ
diff --git a/games/liquidwar6/slack-desc b/games/liquidwar6/slack-desc
index 38ccb9537e..e9a18bf2f9 100644
--- a/games/liquidwar6/slack-desc
+++ b/games/liquidwar6/slack-desc
@@ -15,5 +15,5 @@ liquidwar6: is possible to play alone against the computer but the game is reall
liquidwar6: designed to be played with friends, on a single computer, on a LAN,
liquidwar6: or on the Internet.
liquidwar6:
-liquidwar6:
+liquidwar6: This package includes the extra game maps, version @MAPVER@.
liquidwar6:
diff --git a/games/lmarbles/doinst.sh b/games/lmarbles/doinst.sh
index 5fb28930db..3e5691a052 100644
--- a/games/lmarbles/doinst.sh
+++ b/games/lmarbles/doinst.sh
@@ -1,3 +1,9 @@
if [ -x /usr/bin/update-desktop-database ]; then
/usr/bin/update-desktop-database -q usr/share/applications >/dev/null 2>&1
fi
+
+if [ -e usr/share/icons/hicolor/icon-theme.cache ]; then
+ if [ -x /usr/bin/gtk-update-icon-cache ]; then
+ /usr/bin/gtk-update-icon-cache usr/share/icons/hicolor >/dev/null 2>&1
+ fi
+fi
diff --git a/games/lmarbles/lmarbles.SlackBuild b/games/lmarbles/lmarbles.SlackBuild
index 83e3b1cd06..0d9de0c265 100644
--- a/games/lmarbles/lmarbles.SlackBuild
+++ b/games/lmarbles/lmarbles.SlackBuild
@@ -1,15 +1,23 @@
-#!/bin/sh
+#!/bin/bash
# Slackware build script for lmarbles
-# Written by B. Watson (yalhcru@gmail.com)
+# Written by B. Watson (urchlay@slackware.uk)
# Licensed under the WTFPL. See http://www.wtfpl.net/txt/copying/ for details.
+# 20211022 bkw: BUILD=2
+# - new-style icons.
+# - /usr/share/lmarbles => /usr/share/games/lmarbles.
+# - better .desktop file.
+
+cd $(dirname $0) ; CWD=$(pwd)
+
PRGNAM=lmarbles
VERSION=${VERSION:-1.0.8}
-BUILD=${BUILD:-1}
+BUILD=${BUILD:-2}
TAG=${TAG:-_SBo}
+PKGTYPE=${PKGTYPE:-tgz}
if [ -z "$ARCH" ]; then
case "$( uname -m )" in
@@ -19,7 +27,11 @@ if [ -z "$ARCH" ]; then
esac
fi
-CWD=$(pwd)
+if [ ! -z "${PRINT_PACKAGE_NAME}" ]; then
+ echo "$PRGNAM-$VERSION-$ARCH-$BUILD$TAG.$PKGTYPE"
+ exit 0
+fi
+
TMP=${TMP:-/tmp/SBo}
PKG=$TMP/package-$PRGNAM
OUTPUT=${OUTPUT:-/tmp}
@@ -47,11 +59,11 @@ rm -rf $PRGNAM-$VERSION
tar xvf $CWD/$PRGNAM-$VERSION.tar.gz
cd $PRGNAM-$VERSION
chown -R root:root .
-find -L . \
- \( -perm 777 -o -perm 775 -o -perm 750 -o -perm 711 -o -perm 555 \
- -o -perm 511 \) -exec chmod 755 {} \; -o \
- \( -perm 666 -o -perm 664 -o -perm 640 -o -perm 600 -o -perm 444 \
- -o -perm 440 -o -perm 400 \) -exec chmod 644 {} \;
+find -L . -perm /111 -a \! -perm 755 -a -exec chmod 755 {} \+ -o \
+ \! -perm /111 -a \! -perm 644 -a -exec chmod 644 {} \+
+
+# 20211022 bkw: no way to set a variable for this.
+sed -i '/^inst_dir=/s,/lmarbles,/games&,' configure
# man page was locally modified (since it's inaccurate), use our version.
cat $CWD/$PRGNAM.6 > src/$PRGNAM.6
@@ -71,12 +83,20 @@ CXXFLAGS="$SLKCFLAGS" \
make
make install-strip DESTDIR=$PKG
-# icon converted from lmarbles48.gif (PNG icons are a bit more standard-ey),
-# update .desktop file to use it.
-rm -rf $PKG/usr/share/icons
+# 20211022 bkw: simpler to replace the desktop file than
+# include all the sed code to edit it here.
+cat $CWD/$PRGNAM.desktop > \
+ $PKG/usr/share/applications/$PRGNAM.desktop
+
+for px in 32 48; do
+ size=${px}x${px}
+ dir=$PKG/usr/share/icons/hicolor/$size/apps
+ mkdir -p $dir
+ convert $PRGNAM$px.gif png32:$dir/$PRGNAM.png
+done
+
mkdir -p $PKG/usr/share/pixmaps
-cat $CWD/$PRGNAM.png > $PKG/usr/share/pixmaps/$PRGNAM.png
-sed -i "/^Icon/s,=.*,=$PRGNAM," $PKG/usr/share/applications/$PRGNAM.desktop
+ln -s ../icons/hicolor/48x48/apps/$PRGNAM.png $PKG/usr/share/pixmaps/$PRGNAM.png
gzip $PKG/usr/man/man6/$PRGNAM.6
@@ -89,4 +109,4 @@ cat $CWD/slack-desc > $PKG/install/slack-desc
cat $CWD/doinst.sh > $PKG/install/doinst.sh
cd $PKG
-/sbin/makepkg -l y -c n $OUTPUT/$PRGNAM-$VERSION-$ARCH-$BUILD$TAG.${PKGTYPE:-tgz}
+/sbin/makepkg -l y -c n $OUTPUT/$PRGNAM-$VERSION-$ARCH-$BUILD$TAG.$PKGTYPE
diff --git a/games/lmarbles/lmarbles.desktop b/games/lmarbles/lmarbles.desktop
new file mode 100644
index 0000000000..a1ea1784a8
--- /dev/null
+++ b/games/lmarbles/lmarbles.desktop
@@ -0,0 +1,7 @@
+[Desktop Entry]
+Name=LMarbles
+Comment=Atomix-like enhanced puzzle game.
+Exec=/usr/games/lmarbles
+Icon=lmarbles
+Type=Application
+Categories=Game;LogicGame;
diff --git a/games/lmarbles/lmarbles.info b/games/lmarbles/lmarbles.info
index bb2d9a2380..f89d417099 100644
--- a/games/lmarbles/lmarbles.info
+++ b/games/lmarbles/lmarbles.info
@@ -1,10 +1,10 @@
PRGNAM="lmarbles"
VERSION="1.0.8"
-HOMEPAGE="http://lgames.sourceforge.net/index.php?project=LMarbles"
-DOWNLOAD="http://downloads.sourceforge.net/project/lgames/lmarbles/lmarbles-1.0.8.tar.gz"
+HOMEPAGE="https://lgames.sourceforge.net/index.php?project=LMarbles"
+DOWNLOAD="https://downloads.sourceforge.net/project/lgames/lmarbles/lmarbles-1.0.8.tar.gz"
MD5SUM="2735ef0cbf39ac79194321ff49e02f0e"
DOWNLOAD_x86_64=""
MD5SUM_x86_64=""
REQUIRES=""
MAINTAINER="B. Watson"
-EMAIL="yalhcru@gmail.com"
+EMAIL="urchlay@slackware.uk"
diff --git a/games/lmarbles/lmarbles.png b/games/lmarbles/lmarbles.png
deleted file mode 100644
index 8c9d029b0b..0000000000
--- a/games/lmarbles/lmarbles.png
+++ /dev/null
Binary files differ
diff --git a/games/lmpc/README b/games/lmpc/README
index 29d0a3ee6d..3fb9e4ebf6 100644
--- a/games/lmpc/README
+++ b/games/lmpc/README
@@ -1,12 +1,12 @@
lmpc (The Little Movie Processing Centre)
-LMPC is a utility to handle: DOOM, DOOM 2, Heretic, Hexen and Strife
-LMP files; Duke Nukem 3D and Redneck Rampage DMO files; Quake DEM
-QuakeWorld QWD files; and Quake II Arena DM3 files. The DEM file cutter
-tool (demcut), The DEM Text File Analyser (dema), the Broadcasting
-Server (dbs) and the DM2 file concatenator (dm2cat) are part of this
-package too.
+LMPC is a utility to handle: DOOM, DOOM 2, Heretic, Hexen and
+Strife LMP files; Duke Nukem 3D and Redneck Rampage DMO files;
+Quake DEM QuakeWorld QWD files; and Quake II Arena DM3 files. The
+DEM file cutter tool (demcut), the DEM Text File Analyser (dema), the
+Broadcasting Server (dbs), and the DM2 file concatenator (dm2cat) are
+part of this package too.
-Building this requires TeTex or TexLive to be installed, and
-/usr/share/texmf/bin to be in your PATH. On a stock install, simply
-enter a real root shell ("su -") before building.
+In addition to the utilities, this package contains detailed
+specifications on the various file formats it supports, installed in
+/usr/doc/lmpc-$VERSION/.
diff --git a/games/lmpc/lmpc.SlackBuild b/games/lmpc/lmpc.SlackBuild
index 418bdd675f..1608dbc79e 100644
--- a/games/lmpc/lmpc.SlackBuild
+++ b/games/lmpc/lmpc.SlackBuild
@@ -1,4 +1,4 @@
-#!/bin/sh
+#!/bin/bash
# Slackware build script for lmpc
@@ -23,6 +23,13 @@
# OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF THIS SOFTWARE, EVEN IF
# ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
+# 20211022 bkw: BUILD=2
+# - fix -current build (udemy.h)
+# - get rid of PDF docs. Sorry, but I don't love tex enough to debug
+# whatever's broken them on -current. Read the HTML docs instead.
+# - remove useless INSTALL from docdir.
+# - rearrange docs slightly, simplify copying them.
+
# 20200416 bkw:
# - take over maintenance
# - TODO: find out what repo "1b70022" came from. It's newer than
@@ -32,10 +39,13 @@
# - add -j1 to make command :(
# - binaries in /usr/games
+cd $(dirname $0) ; CWD=$(pwd)
+
PRGNAM=lmpc
VERSION=${VERSION:-1b70022}
-BUILD=${BUILD:-1}
+BUILD=${BUILD:-2}
TAG=${TAG:-_SBo}
+PKGTYPE=${PKGTYPE:-tgz}
if [ -z "$ARCH" ]; then
case "$( uname -m )" in
@@ -45,7 +55,11 @@ if [ -z "$ARCH" ]; then
esac
fi
-CWD=$(pwd)
+if [ ! -z "${PRINT_PACKAGE_NAME}" ]; then
+ echo "$PRGNAM-$VERSION-$ARCH-$BUILD$TAG.$PKGTYPE"
+ exit 0
+fi
+
TMP=${TMP:-/tmp/SBo}
PKG=$TMP/package-$PRGNAM
OUTPUT=${OUTPUT:-/tmp}
@@ -81,6 +95,22 @@ CFLAGS="$SLKCFLAGS" \
CXXFLAGS="$SLKCFLAGS" \
./configure --prefix=/usr --bindir=/usr/games
+# 20211022 bkw: the PDF docs fail to build with -current's texlive.
+# I didn't figure out how to fix it after an hour, so I punt instead.
+# Upstream didn't give us a way to disable building the PDFs, so dike
+# it out. We still make the HTML docs; I don't think anyone's going to
+# care too much. If you do care, fix it and send me a patch (or live
+# with it; don't ask me to fix this for you).
+sed -i '/^DEFAULT_TARGET_document/s,\<doc\>,html,' \
+ spec/Makefile \
+ spec/*/Makefile \
+ doc/Makefile \
+
+# 20211022 bkw: for some reason, this file doesn't get built before
+# the targets that need it. Wasn't a problem in 14.2's make. *Shrug*.
+make -C src -j1 udemy.h
+
+# 20211022 bkw: We still need the -j1, sorry.
make -j1
make install-strip DESTDIR=$PKG
@@ -88,46 +118,31 @@ make install-strip DESTDIR=$PKG
install -m755 bin/dema $PKG/usr/games/dema
install -m755 bin/dm2cat $PKG/usr/games/dm2cat
-mkdir -p $PKG/usr/doc/$PRGNAM-$VERSION
-cp -a COPYING COPYING.LIB INSTALL README.base $PKG/usr/doc/$PRGNAM-$VERSION
-
-mkdir -p $PKG/usr/doc/$PRGNAM-$VERSION/doc
-cp -a doc/lmpc.html doc/lmpc.pdf $PKG/usr/doc/$PRGNAM-$VERSION/doc
-
-mkdir -p $PKG/usr/doc/$PRGNAM-$VERSION/spec
-cp -a \
- spec/dem-q1/dem.html \
- spec/dem-q1/dem.pdf \
- spec/dm2-q2/dm2.html \
- spec/dm2-q2/dm2.pdf \
- spec/dmo-dn/dmo.html \
- spec/dmo-dn/dmo.pdf \
- spec/faq/faq.html \
- spec/faq/faq.pdf \
- spec/lmp-d1/lmp.html \
- spec/lmp-d1/lmp.pdf \
- spec/qwd-qw/qwd.html \
- spec/qwd-qw/qwd.pdf \
- $PKG/usr/doc/$PRGNAM-$VERSION/spec
-
-mkdir -p $PKG/usr/doc/$PRGNAM-$VERSION/misc
-cp -a spec/misc/cd.dem \
- spec/misc/cd.html \
- spec/misc/cd.txt \
- spec/misc/ers \
- spec/misc/ers.html \
- spec/misc/mulder \
- spec/misc/mulder.html \
- spec/misc/procdm2.* \
- spec/misc/qfont.dem \
- spec/misc/qfont.html \
- spec/misc/qfont.pcx \
- $PKG/usr/doc/$PRGNAM-$VERSION/misc
-
-cat $CWD/$PRGNAM.SlackBuild > $PKG/usr/doc/$PRGNAM-$VERSION/$PRGNAM.SlackBuild
+PKGDOC=$PKG/usr/doc/$PRGNAM-$VERSION
+mkdir -p $PKGDOC
+cp -a COPYING COPYING.LIB README.base $PKGDOC
+
+mkdir -p $PKGDOC/spec/misc
+cp -a doc/lmpc.html $PKGDOC
+
+# These are useless.
+rm -f spec/*/index*.html spec/misc/*.{txt,in}
+
+# Skip misc/ and main/ here.
+cp -a spec/[^m]*/*.html $PKGDOC/spec
+
+# No executable scripts in doc dir, please.
+chmod -x spec/misc/*
+
+# This list of files was chosen by the previous maintainer. He
+# also had cd.txt, which looks like an error (none of the other .txt
+# files were copied).
+cp -a spec/misc/{cd.,ers,mulder,procdm2.,qfont.}* $PKGDOC/spec/misc
+
+cat $CWD/$PRGNAM.SlackBuild > $PKGDOC/$PRGNAM.SlackBuild
mkdir -p $PKG/install
cat $CWD/slack-desc > $PKG/install/slack-desc
cd $PKG
-/sbin/makepkg -l y -c n $OUTPUT/$PRGNAM-$VERSION-$ARCH-$BUILD$TAG.${PKGTYPE:-tgz}
+/sbin/makepkg -l y -c n $OUTPUT/$PRGNAM-$VERSION-$ARCH-$BUILD$TAG.$PKGTYPE
diff --git a/games/lmpc/lmpc.info b/games/lmpc/lmpc.info
index f720018dbb..645cd2343f 100644
--- a/games/lmpc/lmpc.info
+++ b/games/lmpc/lmpc.info
@@ -1,10 +1,10 @@
PRGNAM="lmpc"
VERSION="1b70022"
HOMEPAGE="http://demospecs.half-empty.de/lmpc-alpha/"
-DOWNLOAD="http://ponce.cc/slackware/sources/repo/lmpc-1b70022.tar.xz"
+DOWNLOAD="https://ponce.cc/slackware/sources/repo/lmpc-1b70022.tar.xz"
MD5SUM="88da9b536615a558fa8c7e91a1c834a2"
DOWNLOAD_x86_64=""
MD5SUM_x86_64=""
REQUIRES=""
MAINTAINER="B. Watson"
-EMAIL="yalhcru@gmail.com"
+EMAIL="urchlay@slackware.uk"
diff --git a/games/lmpc/slack-desc b/games/lmpc/slack-desc
index 504bda208c..86a6d736fb 100644
--- a/games/lmpc/slack-desc
+++ b/games/lmpc/slack-desc
@@ -8,12 +8,12 @@
|-----handy-ruler------------------------------------------------------|
lmpc: lmpc (The Little Movie Processing Centre)
lmpc:
-lmpc: LMPC is a utility to handle: DOOM, DOOM 2, Heretic, Hexen and Strife
-lmpc: LMP files; Duke Nukem 3D and Redneck Rampage DMO files; Quake DEM
-lmpc: QuakeWorld QWD files; and Quake II Arena DM3 files. The DEM file
-lmpc: cutter tool (demcut), The DEM Text File Analyser (dema), the
-lmpc: Broadcasting Server (dbs) and the DM2 file concatenator (dm2cat) are
+lmpc: LMPC is a utility to handle: DOOM, DOOM 2, Heretic, Hexen and
+lmpc: Strife LMP files; Duke Nukem 3D and Redneck Rampage DMO files;
+lmpc: Quake DEM QuakeWorld QWD files; and Quake II Arena DM3 files. The
+lmpc: DEM file cutter tool (demcut), the DEM Text File Analyser (dema), the
+lmpc: Broadcasting Server (dbs), and the DM2 file concatenator (dm2cat) are
lmpc: part of this package too.
lmpc:
-lmpc: http://demospecs.half-empty.de/lmpc-alpha/
+lmpc:
lmpc:
diff --git a/games/loemu/loemu.SlackBuild b/games/loemu/loemu.SlackBuild
index 29fecc9aab..36008d6709 100644
--- a/games/loemu/loemu.SlackBuild
+++ b/games/loemu/loemu.SlackBuild
@@ -1,4 +1,4 @@
-#!/bin/sh
+#!/bin/bash
# Slackware build script for loemu
@@ -22,10 +22,13 @@
# OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF THIS SOFTWARE, EVEN IF
# ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
+cd $(dirname $0) ; CWD=$(pwd)
+
PRGNAM=loemu
VERSION=${VERSION:-0.3.1}
BUILD=${BUILD:-1}
TAG=${TAG:-_SBo}
+PKGTYPE=${PKGTYPE:-tgz}
if [ -z "$ARCH" ]; then
case "$( uname -m )" in
@@ -35,7 +38,14 @@ if [ -z "$ARCH" ]; then
esac
fi
-CWD=$(pwd)
+# If the variable PRINT_PACKAGE_NAME is set, then this script will report what
+# the name of the created package would be, and then exit. This information
+# could be useful to other scripts.
+if [ ! -z "${PRINT_PACKAGE_NAME}" ]; then
+ echo "$PRGNAM-$VERSION-$ARCH-$BUILD$TAG.$PKGTYPE"
+ exit 0
+fi
+
TMP=${TMP:-/tmp/SBo}
PKG=$TMP/package-$PRGNAM
OUTPUT=${OUTPUT:-/tmp}
@@ -91,4 +101,4 @@ cat $CWD/slack-desc > $PKG/install/slack-desc
cat $CWD/doinst.sh > $PKG/install/doinst.sh
cd $PKG
-/sbin/makepkg -l y -c n $OUTPUT/$PRGNAM-$VERSION-$ARCH-$BUILD$TAG.${PKGTYPE:-tgz}
+/sbin/makepkg -l y -c n $OUTPUT/$PRGNAM-$VERSION-$ARCH-$BUILD$TAG.$PKGTYPE
diff --git a/games/ltris/ltris.SlackBuild b/games/ltris/ltris.SlackBuild
index 7781442944..70bacb40d9 100644
--- a/games/ltris/ltris.SlackBuild
+++ b/games/ltris/ltris.SlackBuild
@@ -1,4 +1,4 @@
-#!/bin/sh
+#!/bin/bash
# Slackware build script for LTris
@@ -22,10 +22,13 @@
# OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF THIS SOFTWARE, EVEN IF
# ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
+cd $(dirname $0) ; CWD=$(pwd)
+
PRGNAM=ltris
VERSION=${VERSION:-1.0.19}
BUILD=${BUILD:-1}
TAG=${TAG:-_SBo}
+PKGTYPE=${PKGTYPE:-tgz}
if [ -z "$ARCH" ]; then
case "$( uname -m )" in
@@ -35,7 +38,14 @@ if [ -z "$ARCH" ]; then
esac
fi
-CWD=$(pwd)
+# If the variable PRINT_PACKAGE_NAME is set, then this script will report what
+# the name of the created package would be, and then exit. This information
+# could be useful to other scripts.
+if [ ! -z "${PRINT_PACKAGE_NAME}" ]; then
+ echo "$PRGNAM-$VERSION-$ARCH-$BUILD$TAG.$PKGTYPE"
+ exit 0
+fi
+
TMP=${TMP:-/tmp/SBo}
PKG=$TMP/package-$PRGNAM
OUTPUT=${OUTPUT:-/tmp}
@@ -94,4 +104,4 @@ cat $CWD/slack-desc > $PKG/install/slack-desc
cat $CWD/doinst.sh > $PKG/install/doinst.sh
cd $PKG
-/sbin/makepkg -l y -c n $OUTPUT/$PRGNAM-$VERSION-$ARCH-$BUILD$TAG.${PKGTYPE:-tgz}
+/sbin/makepkg -l y -c n $OUTPUT/$PRGNAM-$VERSION-$ARCH-$BUILD$TAG.$PKGTYPE
diff --git a/games/lutris/README b/games/lutris/README
index 9f61348091..0049285073 100644
--- a/games/lutris/README
+++ b/games/lutris/README
@@ -4,3 +4,7 @@ game which runs on Linux, from native to Windows games (via Wine) to
emulators and browser games.
allegro and wine are optional dependencies for some of the runners.
+Lutris can download and install specificly needed patched wine versions
+or can use the system installed wine.
+
+moddb is optional dependency to reference ModDB in Lutris installers.
diff --git a/games/lutris/lutris.SlackBuild b/games/lutris/lutris.SlackBuild
index e64aaed674..da2c7c69d8 100644
--- a/games/lutris/lutris.SlackBuild
+++ b/games/lutris/lutris.SlackBuild
@@ -1,9 +1,9 @@
-#!/bin/sh
+#!/bin/bash
# Slackware build script for lutris
# Ryan P.C. McQuen | Everett, WA | ryanpcmcquen@member.fsf.org
-# Copyright 2018 Brenton Earl <brent@exitstatusone.com>
+# Copyright 2018, 2022 Brenton Earl <brent@exitstatusone.com>
# This program is free software: you can redistribute it and/or modify
# it under the terms of the GNU General Public License as published by
@@ -23,25 +23,50 @@
# with this program (most likely, a file named COPYING). If not, see
# <https://www.gnu.org/licenses/>.
+cd $(dirname $0) ; CWD=$(pwd)
+
PRGNAM=lutris
-VERSION=${VERSION:-0.4.23}
+VERSION=${VERSION:-0.5.13}
BUILD=${BUILD:-1}
TAG=${TAG:-_SBo}
+PKGTYPE=${PKGTYPE:-tgz}
if [ -z "$ARCH" ]; then
case "$( uname -m )" in
i?86) ARCH=i586 ;;
arm*) ARCH=arm ;;
+ aarch64) ARCH=$( uname -m ) ;;
*) ARCH=$( uname -m ) ;;
esac
fi
-CWD=$(pwd)
+if [ ! -z "${PRINT_PACKAGE_NAME}" ]; then
+ echo "$PRGNAM-$VERSION-$ARCH-$BUILD$TAG.$PKGTYPE"
+ exit 0
+fi
+
TMP=${TMP:-/tmp/SBo}
-PKG=${PKG:-$TMP/package-$PRGNAM}
+PKG=$TMP/package-$PRGNAM
OUTPUT=${OUTPUT:-/tmp}
-DOCS="AUTHORS CHANGELOG LICENSE INSTALL.rst README.rst"
+DOCS="AUTHORS LICENSE README.rst"
+
+if [ "$ARCH" = "i586" ]; then
+ SLKCFLAGS="-O2 -march=i586 -mtune=i686"
+ LIBDIRSUFFIX=""
+elif [ "$ARCH" = "i686" ]; then
+ SLKCFLAGS="-O2 -march=i686 -mtune=i686"
+ LIBDIRSUFFIX=""
+elif [ "$ARCH" = "x86_64" ]; then
+ SLKCFLAGS="-O2 -fPIC"
+ LIBDIRSUFFIX="64"
+elif [ "$ARCH" = "aarch64" ]; then
+ SLKCFLAGS="-O2 -fPIC"
+ LIBDIRSUFFIX="64"
+else
+ SLKCFLAGS="-O2"
+ LIBDIRSUFFIX=""
+fi
set -e
@@ -49,8 +74,8 @@ rm -rf $PKG
mkdir -p $TMP $PKG $OUTPUT
cd $TMP
rm -rf $PRGNAM
-tar xvf $CWD/$PRGNAM\_$VERSION.tar.xz
-cd $PRGNAM
+tar xvf $CWD/$PRGNAM\-$VERSION.tar.?z
+cd $PRGNAM\-$VERSION
chown -R root:root .
find -L . \
\( -perm 777 -o -perm 775 -o -perm 750 -o -perm 711 -o -perm 555 \
@@ -58,11 +83,30 @@ find -L . \
\( -perm 666 -o -perm 664 -o -perm 640 -o -perm 600 -o -perm 444 \
-o -perm 440 -o -perm 400 \) -exec chmod 644 {} \;
-python3 setup.py install --root $PKG
+mkdir -p build
+cd build
+ CFLAGS="$SLKCFLAGS" \
+ CXXFLAGS="$SLKCFLAGS" \
+ meson .. \
+ --buildtype=release \
+ --infodir=/usr/info \
+ --libdir=/usr/lib${LIBDIRSUFFIX} \
+ --localstatedir=/var \
+ --mandir=/usr/man \
+ --prefix=/usr \
+ --sysconfdir=/etc \
+ -Derrorlogs=false \
+ -Dstrip=true
+ "${NINJA:=ninja}"
+ DESTDIR=$PKG $NINJA install
+cd ..
find $PKG -print0 | xargs -0 file | grep -e "executable" -e "shared object" | grep ELF \
| cut -f 1 -d : | xargs strip --strip-unneeded 2> /dev/null || true
+find $PKG/usr/man -type f -exec gzip -9 {} \;
+for i in $( find $PKG/usr/man -type l ) ; do ln -s $( readlink $i ).gz $i.gz ; rm $i ; done
+
mkdir -p $PKG/usr/doc/$PRGNAM-$VERSION
cp -a $DOCS $PKG/usr/doc/$PRGNAM-$VERSION
cat $CWD/$PRGNAM.SlackBuild > $PKG/usr/doc/$PRGNAM-$VERSION/$PRGNAM.SlackBuild
@@ -72,4 +116,4 @@ cat $CWD/slack-desc > $PKG/install/slack-desc
cat $CWD/doinst.sh > $PKG/install/doinst.sh
cd $PKG
-/sbin/makepkg -l y -c n $OUTPUT/$PRGNAM-$VERSION-$ARCH-$BUILD$TAG.${PKGTYPE:-tgz}
+/sbin/makepkg -l y -c n $OUTPUT/$PRGNAM-$VERSION-$ARCH-$BUILD$TAG.$PKGTYPE
diff --git a/games/lutris/lutris.info b/games/lutris/lutris.info
index 904ceb7e32..15ea19f6a1 100644
--- a/games/lutris/lutris.info
+++ b/games/lutris/lutris.info
@@ -1,10 +1,10 @@
PRGNAM="lutris"
-VERSION="0.4.23"
+VERSION="0.5.13"
HOMEPAGE="https://lutris.net/"
-DOWNLOAD="http://lutris.net/releases/lutris_0.4.23.tar.xz"
-MD5SUM="2300a2f6e617cf222aa47acd0b72436f"
+DOWNLOAD="https://github.com/lutris/lutris/archive/refs/tags/v0.5.13/lutris-0.5.13.tar.gz"
+MD5SUM="9acd07d4d130d4d250611af907aa3a40"
DOWNLOAD_x86_64=""
MD5SUM_x86_64=""
-REQUIRES="pygobject3-python3 dbus-python3 python3-PyYAML pyxdg"
-MAINTAINER="Brenton Earl"
-EMAIL="brent@exitstatusone.com"
+REQUIRES="python-magic webkit2gtk python3-lxml"
+MAINTAINER="Ozan Türkyılmaz"
+EMAIL="ozan.turkyilmaz@gmail.com"
diff --git a/games/m64py/README b/games/m64py/README
index 868980f98d..2a7b210c6d 100644
--- a/games/m64py/README
+++ b/games/m64py/README
@@ -1,3 +1,4 @@
-M64Py is a Qt4 front-end (GUI) for Mupen64Plus 2.0, a cross-platform
-plugin-based Nintendo 64 emulator. Front-end is written in Python and it
-provides a user-friendly interface over Mupen64Plus shared library.
+M64Py is a Qt5 front-end (GUI) for Mupen64Plus, a cross-platform
+plugin-based Nintendo 64 emulator. Front-end is written in Python
+and it provides a user-friendly interface over the Mupen64Plus
+shared library.
diff --git a/games/m64py/fix_core_dump_by_int_cast.patch b/games/m64py/fix_core_dump_by_int_cast.patch
new file mode 100644
index 0000000000..9d30cbd456
--- /dev/null
+++ b/games/m64py/fix_core_dump_by_int_cast.patch
@@ -0,0 +1,26 @@
+diff --git a/src/m64py/frontend/mainwindow.py b/src/m64py/frontend/mainwindow.py
+index f845bbc..7c59ff4 100644
+--- a/src/m64py/frontend/mainwindow.py
++++ b/src/m64py/frontend/mainwindow.py
+@@ -177,7 +177,7 @@ class MainWindow(QMainWindow, Ui_MainWindow):
+ width, height = size.width(), size.height()
+ dwidth, dheight = desktop.width(), desktop.height()
+ cw, ch = (dwidth/2)-(width/2), (dheight/2)-(height/2)
+- self.move(cw, ch)
++ self.move(int(cw), int(ch))
+
+ def connect_signals(self):
+ """Connects signals."""
+diff --git a/src/m64py/frontend/romreader.py b/src/m64py/frontend/romreader.py
+index ff861d0..84de37a 100644
+--- a/src/m64py/frontend/romreader.py
++++ b/src/m64py/frontend/romreader.py
+@@ -123,7 +123,7 @@ class ROMReader(QThread):
+ log.warn(str(err))
+ continue
+ percent = float(filenum) / float(num_files) * 100
+- self.parent.progressBar.valueChanged.emit(percent)
++ self.parent.progressBar.valueChanged.emit(int(percent))
+ self.exit()
+
+ def stop(self):
diff --git a/games/m64py/fix_setup_py.patch b/games/m64py/fix_setup_py.patch
new file mode 100644
index 0000000000..de12c36601
--- /dev/null
+++ b/games/m64py/fix_setup_py.patch
@@ -0,0 +1,32 @@
+--- setup.py.orig 2024-02-09 21:14:15.359607270 +0100
++++ setup.py 2024-02-09 21:15:55.391267720 +0100
+@@ -15,6 +15,11 @@
+ import distutils.command.clean as distutils_clean
+ import setuptools
+
++try:
++ from setuptools.modified import newer
++except ImportError:
++ from distutils.dep_util import newer
++
+ # Add the src folder to the path
+ sys.path.insert(0, os.path.realpath("src"))
+
+@@ -39,7 +44,7 @@
+ def compile_rc(self, qrc_file):
+ import PyQt5
+ py_file = os.path.splitext(qrc_file)[0] + "_rc.py"
+- if not distutils.dep_util.newer(qrc_file, py_file):
++ if not newer(qrc_file, py_file):
+ return
+ origpath = os.getenv("PATH")
+ path = origpath.split(os.pathsep)
+@@ -54,7 +59,7 @@
+ def compile_ui(self, ui_file):
+ from PyQt5 import uic
+ py_file = os.path.splitext(ui_file)[0] + "_ui.py"
+- if not distutils.dep_util.newer(ui_file, py_file):
++ if not newer(ui_file, py_file):
+ return
+ with open(py_file, "w") as a_file:
+ uic.compileUi(ui_file, a_file, from_imports=True)
diff --git a/games/m64py/m64py.SlackBuild b/games/m64py/m64py.SlackBuild
index 6fcd6922c2..3aa7ff6414 100644
--- a/games/m64py/m64py.SlackBuild
+++ b/games/m64py/m64py.SlackBuild
@@ -1,8 +1,8 @@
-#!/bin/sh
+#!/bin/bash
# Slackware build script for m64py
-# Copyright 2015 Matt Dinslage (daedra1980@gmail.com), Springfield, MO, USA
+# Copyright 2021 Matt Dinslage (daedra1980@gmail.com), Springfield, MO, USA
# All rights reserved.
#
# Redistribution and use of this script, with or without modification, is
@@ -22,26 +22,33 @@
# OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF THIS SOFTWARE, EVEN IF
# ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
+cd $(dirname $0) ; CWD=$(pwd)
+
PRGNAM=m64py
-VERSION=${VERSION:-0.2.2}
-BUILD=${BUILD:-1}
+VERSION=${VERSION:-0.2.5}
+BUILD=${BUILD:-2}
TAG=${TAG:-_SBo}
+PKGTYPE=${PKGTYPE:-tgz}
if [ -z "$ARCH" ]; then
case "$( uname -m )" in
- i?86) ARCH=i486 ;;
+ i?86) ARCH=i586 ;;
arm*) ARCH=arm ;;
*) ARCH=$( uname -m ) ;;
esac
fi
-CWD=$(pwd)
+if [ ! -z "${PRINT_PACKAGE_NAME}" ]; then
+ echo "$PRGNAM-$VERSION-$ARCH-$BUILD$TAG.$PKGTYPE"
+ exit 0
+fi
+
TMP=${TMP:-/tmp/SBo}
PKG=$TMP/package-$PRGNAM
OUTPUT=${OUTPUT:-/tmp}
-if [ "$ARCH" = "i486" ]; then
- SLKCFLAGS="-O2 -march=i486 -mtune=i686"
+if [ "$ARCH" = "i586" ]; then
+ SLKCFLAGS="-O2 -march=i586 -mtune=i686"
LIBDIRSUFFIX=""
elif [ "$ARCH" = "i686" ]; then
SLKCFLAGS="-O2 -march=i686 -mtune=i686"
@@ -64,19 +71,22 @@ tar xvf $CWD/$PRGNAM-$VERSION.tar.gz
cd $PRGNAM-$VERSION
chown -R root:root .
find -L . \
- \( -perm 777 -o -perm 775 -o -perm 750 -o -perm 711 -o -perm 555 -o -perm 511 \) \
- -exec chmod 755 {} \; -o \
- \( -perm 666 -o -perm 664 -o -perm 600 -o -perm 444 -o -perm 440 -o -perm 400 \) \
- -exec chmod 644 {} \;
+ \( -perm 777 -o -perm 775 -o -perm 750 -o -perm 711 -o -perm 555 \
+ -o -perm 511 \) -exec chmod 755 {} \; -o \
+ \( -perm 666 -o -perm 664 -o -perm 640 -o -perm 600 -o -perm 444 \
+ -o -perm 440 -o -perm 400 \) -exec chmod 644 {} \;
+
+patch -p0 < $CWD/fix_setup_py.patch
+patch -p1 < $CWD/fix_core_dump_by_int_cast.patch
-python setup.py install --root=$PKG
+python3 setup.py install --root=$PKG
-find $PKG | xargs file | grep -e "executable" -e "shared object" | grep ELF \
+find $PKG -print0 | xargs -0 file | grep -e "executable" -e "shared object" | grep ELF \
| cut -f 1 -d : | xargs strip --strip-unneeded 2> /dev/null || true
mkdir -p $PKG/usr/doc/$PRGNAM-$VERSION
cp -a \
- AUTHORS ChangeLog COPYING LICENSES PKG-INFO README.md \
+ AUTHORS CHANGELOG LICENSES README.rst \
$PKG/usr/doc/$PRGNAM-$VERSION
cat $CWD/$PRGNAM.SlackBuild > $PKG/usr/doc/$PRGNAM-$VERSION/$PRGNAM.SlackBuild
@@ -85,4 +95,4 @@ cat $CWD/slack-desc > $PKG/install/slack-desc
cat $CWD/doinst.sh > $PKG/install/doinst.sh
cd $PKG
-/sbin/makepkg -l y -c n $OUTPUT/$PRGNAM-$VERSION-$ARCH-$BUILD$TAG.${PKGTYPE:-tgz}
+/sbin/makepkg -l y -c n $OUTPUT/$PRGNAM-$VERSION-$ARCH-$BUILD$TAG.$PKGTYPE
diff --git a/games/m64py/m64py.info b/games/m64py/m64py.info
index a94a536ce8..df39e40163 100644
--- a/games/m64py/m64py.info
+++ b/games/m64py/m64py.info
@@ -1,10 +1,10 @@
PRGNAM="m64py"
-VERSION="0.2.2"
-HOMEPAGE="http://m64py.sourceforge.net/"
-DOWNLOAD="http://downloads.sourceforge.net/project/m64py/m64py-0.2.2/m64py-0.2.2.tar.gz"
-MD5SUM="78e8144e5f598f5a2b9fd926dd8788a8"
+VERSION="0.2.5"
+HOMEPAGE="https://github.com/mupen64plus/mupen64plus-ui-python"
+DOWNLOAD="https://github.com/mupen64plus/mupen64plus-ui-python/releases/download/0.2.5/m64py-0.2.5.tar.gz"
+MD5SUM="201a5b08a7ed43db26af6067a064e116"
DOWNLOAD_x86_64=""
MD5SUM_x86_64=""
-REQUIRES="mupen64plus"
+REQUIRES="mupen64plus python3-pysdl2"
MAINTAINER="M.Dinslage"
EMAIL="daedra1980@gmail.com"
diff --git a/games/m64py/slack-desc b/games/m64py/slack-desc
index cea93c835e..51f40b61d8 100644
--- a/games/m64py/slack-desc
+++ b/games/m64py/slack-desc
@@ -6,14 +6,14 @@
# customary to leave one space after the ':' except on otherwise blank lines.
|-----handy-ruler------------------------------------------------------|
-m64py: m64py (mupen64plus GUI)
+m64py: m64py (A GUI frontend for Mupen64Plus)
m64py:
-m64py: M64Py is a Qt4 front-end (GUI) for Mupen64Plus 2.0, a cross-platform
+m64py: M64Py is a Qt5 front-end (GUI) for Mupen64Plus, a cross-platform
m64py: plugin-based Nintendo 64 emulator. Front-end is written in Python
-m64py: and it provides a user-friendly interface over Mupen64Plus shared
-m64py: library.
+m64py: and it provides a user-friendly interface over the Mupen64Plus
+m64py: shared library.
m64py:
-m64py: Homepage: http://m64py.sourceforge.net
+m64py: Homepage: https://github.com/mupen64plus/mupen64plus-ui-python
m64py:
m64py:
m64py:
diff --git a/games/madbomber/README b/games/madbomber/README
index 19fd00ec8c..1d928c41da 100644
--- a/games/madbomber/README
+++ b/games/madbomber/README
@@ -1,3 +1,5 @@
+madbomber (clone of the 1981 Atari 2600 video game "Kaboom!")
+
Mad Bomber is a clone of the excellent 1981 Atari 2600 video game
"Kaboom!" by Larry Kaplan of Activision.
diff --git a/games/madbomber/doinst.sh b/games/madbomber/doinst.sh
index ff5dd6d547..ae6bd45285 100644
--- a/games/madbomber/doinst.sh
+++ b/games/madbomber/doinst.sh
@@ -2,3 +2,8 @@ if [ -x /usr/bin/update-desktop-database ]; then
/usr/bin/update-desktop-database -q usr/share/applications
fi
+if [ -e usr/share/icons/hicolor/icon-theme.cache ]; then
+ if [ -x /usr/bin/gtk-update-icon-cache ]; then
+ /usr/bin/gtk-update-icon-cache usr/share/icons/hicolor >/dev/null 2>&1
+ fi
+fi
diff --git a/games/madbomber/madbomber.SlackBuild b/games/madbomber/madbomber.SlackBuild
index 6c149a913e..c67bb08a74 100644
--- a/games/madbomber/madbomber.SlackBuild
+++ b/games/madbomber/madbomber.SlackBuild
@@ -1,16 +1,21 @@
-#!/bin/sh
+#!/bin/bash
# Slackware build script for madbomber
-# Written by B. Watson (yalhcru@gmail.com)
+# Written by B. Watson (urchlay@slackware.uk)
# Modified by the SlackBuilds.org project.
# Licensed under the WTFPL. See http://www.wtfpl.net/txt/copying/ for details.
+# 20211020 bkw: BUILD=3, new-style icons.
+
+cd $(dirname $0) ; CWD=$(pwd)
+
PRGNAM=madbomber
VERSION=${VERSION:-0.2.5}
-BUILD=${BUILD:-2}
+BUILD=${BUILD:-3}
TAG=${TAG:-_SBo}
+PKGTYPE=${PKGTYPE:-tgz}
if [ -z "$ARCH" ]; then
case "$( uname -m )" in
@@ -20,7 +25,11 @@ if [ -z "$ARCH" ]; then
esac
fi
-CWD=$(pwd)
+if [ ! -z "${PRINT_PACKAGE_NAME}" ]; then
+ echo "$PRGNAM-$VERSION-$ARCH-$BUILD$TAG.$PKGTYPE"
+ exit 0
+fi
+
TMP=${TMP:-/tmp/SBo}
PKG=$TMP/package-$PRGNAM
OUTPUT=${OUTPUT:-/tmp}
@@ -48,11 +57,8 @@ rm -rf $PRGNAM-$VERSION
tar xvf $CWD/$PRGNAM-$VERSION.tar.gz
cd $PRGNAM-$VERSION
chown -R root:root .
-find -L . \
- \( -perm 777 -o -perm 775 -o -perm 750 -o -perm 711 -o -perm 555 \
- -o -perm 511 \) -exec chmod 755 {} \; -o \
- \( -perm 666 -o -perm 664 -o -perm 640 -o -perm 600 -o -perm 444 \
- -o -perm 440 -o -perm 400 \) -exec chmod 644 {} \;
+find -L . -perm /111 -a \! -perm 755 -a -exec chmod 755 {} \+ -o \
+ \! -perm /111 -a \! -perm 644 -a -exec chmod 644 {} \+
sed -i -e "s/-Wall/-Wall $SLKCFLAGS/" Makefile
@@ -69,6 +75,18 @@ cat $CWD/$PRGNAM.SlackBuild > $PKG/usr/doc/$PRGNAM-$VERSION/$PRGNAM.SlackBuild
mkdir -p $PKG/usr/share/applications
cat $CWD/$PRGNAM.desktop > $PKG/usr/share/applications/$PRGNAM.desktop
+# upstream only provides a 40x40 icon, resize...
+for i in 16 32 48 64; do
+ px=$( basename $i | cut -d. -f1 )
+ size=${px}x${px}
+ dir=$PKG/usr/share/icons/hicolor/$size/apps
+ mkdir -p $dir
+ convert -resize $size data/images/icon.png $dir/$PRGNAM.png
+done
+
+mkdir -p $PKG/usr/share/pixmaps
+cat data/images/icon.png > $PKG/usr/share/pixmaps/$PRGNAM.png
+
mkdir -p $PKG/usr/man/man6
gzip -9c $CWD/$PRGNAM.6 > $PKG/usr/man/man6/$PRGNAM.6.gz
@@ -81,4 +99,4 @@ cat $CWD/slack-desc > $PKG/install/slack-desc
cat $CWD/doinst.sh > $PKG/install/doinst.sh
cd $PKG
-/sbin/makepkg -l y -c n $OUTPUT/$PRGNAM-$VERSION-$ARCH-$BUILD$TAG.${PKGTYPE:-tgz}
+/sbin/makepkg -l y -c n $OUTPUT/$PRGNAM-$VERSION-$ARCH-$BUILD$TAG.$PKGTYPE
diff --git a/games/madbomber/madbomber.desktop b/games/madbomber/madbomber.desktop
index 1a1db94f71..0a5fd774b2 100644
--- a/games/madbomber/madbomber.desktop
+++ b/games/madbomber/madbomber.desktop
@@ -1,6 +1,6 @@
[Desktop Entry]
Name=Mad Bomber
-Exec=madbomber
+Exec=/usr/games/madbomber
Type=Application
Icon=madbomber
GenericName=Mad Bomber Game
diff --git a/games/madbomber/madbomber.info b/games/madbomber/madbomber.info
index 4679598865..32ddea574d 100644
--- a/games/madbomber/madbomber.info
+++ b/games/madbomber/madbomber.info
@@ -7,4 +7,4 @@ DOWNLOAD_x86_64=""
MD5SUM_x86_64=""
REQUIRES=""
MAINTAINER="B. Watson"
-EMAIL="yalhcru@gmail.com"
+EMAIL="urchlay@slackware.uk"
diff --git a/games/maelstrom/Maelstrom.6 b/games/maelstrom/Maelstrom.6
index 03e7d74c19..8a2b5f1a35 100644
--- a/games/maelstrom/Maelstrom.6
+++ b/games/maelstrom/Maelstrom.6
@@ -47,6 +47,9 @@ never get home...
Run Maelstrom in full\-screen mode. You may also press Alt\-Enter
while Maelstrom is running, to toggle full\-screen.
.TP
+\fB\-windowed\fR
+Run Maelstrom in windowed mode. Alt\-Enter toggles.
+.TP
\fB\-gamma\fR [0\-8]
Set the gamma correction
.TP
@@ -174,7 +177,7 @@ or both. Typically, the add\-on content is distributed as a zip file.
There is a collection of Maelstrom add\-on content at
.br
.nh
-\fIhttp://www.devolution.com/~slouken/Maelstrom/add-ons.html\fR
+\fIhttps://www.libsdl.org/projects/Maelstrom/add\-ons.html\fR
.hy
.SS Automated Installation (Preferred)
Use \fBmaelstrom_addon_package.pl\fR to convert the zip
@@ -205,7 +208,7 @@ the system\-wide game data directory.
\fB/usr/share/games/Maelstrom/\fR
game data (images, music, sound)
.TP
-\fB$HOME/.Maelstrom\-data\fR
+\fB$HOME/.local/share/Ambrosia Software/Maelstrom\fR
per\-user settings and high\-score records
.SH AUTHORS
The original version of this game was written for the Macintosh by
diff --git a/games/maelstrom/README b/games/maelstrom/README
index 2f74a7ec2b..657fe6f009 100644
--- a/games/maelstrom/README
+++ b/games/maelstrom/README
@@ -1,11 +1,13 @@
+maelstrom (Enhanced Asteroids-like game)
+
Maelstrom is a game similar to Asteroids.
You pilot your ship through the dreaded "Maelstrom" asteroid belt --
suddenly your best friend thrusts towards you and fires, directly
at your cockpit. You raise your shields just in time, and the battle
-is joined. The deadliest stretch of space known to mankind has just
+is joined. The deadliest stretch of space known to mankind has just
gotten deadlier.
This package also comes with a script to create Slackware
-packages from the Maelstrom add-on graphics/sound files. Run
+packages from the Maelstrom add-on graphics/sound files. Run
'maelstrom_addon_package.pl --help' for more information.
diff --git a/games/maelstrom/compile_fix.diff b/games/maelstrom/compile_fix.diff
deleted file mode 100644
index 1ce080a5a4..0000000000
--- a/games/maelstrom/compile_fix.diff
+++ /dev/null
@@ -1,68 +0,0 @@
-diff -Naur Maelstrom-3.0.6.orig/Maelstrom-netd.c Maelstrom-3.0.6/Maelstrom-netd.c
---- Maelstrom-3.0.6.orig/Maelstrom-netd.c 2000-02-12 04:58:59.000000000 -0500
-+++ Maelstrom-3.0.6/Maelstrom-netd.c 2016-07-30 18:49:48.254076062 -0400
-@@ -9,8 +9,11 @@
- #include <sys/time.h>
- #include <sys/socket.h>
- #include <netinet/in.h>
-+#include <arpa/inet.h>
- #include <netdb.h>
- #include <unistd.h>
-+#include <stdlib.h>
-+#include <time.h>
-
- /* We wait in a loop for players to connect and tell us how many people
- are playing. Then, once all players have connected, then we broadcast
-@@ -181,7 +184,7 @@
- exit(sig);
- }
-
--main(int argc, char *argv[])
-+int main(int argc, char *argv[])
- {
- int netfd, i, slot;
- struct sockaddr_in serv_addr;
-@@ -201,7 +204,7 @@
- memset(&serv_addr, 0, sizeof(serv_addr));
- serv_addr.sin_family = AF_INET;
- serv_addr.sin_addr.s_addr = htonl(INADDR_ANY);
-- serv_addr.sin_port = htons(NETPLAY_PORT-1);
-+ serv_addr.sin_port = htons(NETPLAY_PORT - 1);
- if (bind(netfd, (struct sockaddr *)&serv_addr, sizeof(serv_addr)) < 0) {
- perror("Can't bind local address");
- exit(3);
-diff -Naur Maelstrom-3.0.6.orig/netlogic/netplay.cpp Maelstrom-3.0.6/netlogic/netplay.cpp
---- Maelstrom-3.0.6.orig/netlogic/netplay.cpp 2002-10-20 00:11:52.000000000 -0400
-+++ Maelstrom-3.0.6/netlogic/netplay.cpp 2016-07-30 18:34:07.295131706 -0400
-@@ -128,7 +128,7 @@
- if ( port ) {
- portnum = atoi(port);
- } else {
-- portnum = NETPLAY_PORT+playernum;
-+ portnum = NETPLAY_PORT + playernum;
- }
- if ( host ) {
- /* Resolve the remote address */
-@@ -183,7 +183,7 @@
- if ( port ) {
- portnum = atoi(port);
- } else {
-- portnum = NETPLAY_PORT-1;
-+ portnum = NETPLAY_PORT - 1;
- }
- SDLNet_ResolveHost(&ServAddr, host, portnum);
- if ( ServAddr.host == INADDR_NONE ) {
-diff -Naur Maelstrom-3.0.6.orig/screenlib/SDL_FrameBuf.cpp Maelstrom-3.0.6/screenlib/SDL_FrameBuf.cpp
---- Maelstrom-3.0.6.orig/screenlib/SDL_FrameBuf.cpp 2001-07-22 17:03:13.000000000 -0400
-+++ Maelstrom-3.0.6/screenlib/SDL_FrameBuf.cpp 2016-07-30 18:18:37.043186717 -0400
-@@ -848,8 +848,8 @@
- for ( i=0; i<dirtymaplen; ++i ) {
- if ( dirtymap[i] != NULL ) {
- dirtymap[i] = (SDL_Rect *)(
-- ((int)dirtymap[i]-(int)updatelist) +
-- (int)newlist
-+ ((long)dirtymap[i]-(long)updatelist) +
-+ (long)newlist
- );
- }
- }
diff --git a/games/maelstrom/doinst.sh b/games/maelstrom/doinst.sh
index 3857649f50..11813c3101 100644
--- a/games/maelstrom/doinst.sh
+++ b/games/maelstrom/doinst.sh
@@ -1,3 +1,9 @@
if [ -x /usr/bin/update-desktop-database ]; then
/usr/bin/update-desktop-database -q usr/share/applications &> /dev/null
fi
+
+if [ -e usr/share/icons/hicolor/icon-theme.cache ]; then
+ if [ -x /usr/bin/gtk-update-icon-cache ]; then
+ /usr/bin/gtk-update-icon-cache usr/share/icons/hicolor >/dev/null 2>&1
+ fi
+fi
diff --git a/games/maelstrom/install_dirs.diff b/games/maelstrom/install_dirs.diff
deleted file mode 100644
index 08c95405b1..0000000000
--- a/games/maelstrom/install_dirs.diff
+++ /dev/null
@@ -1,35 +0,0 @@
-diff -Naur Maelstrom-3.0.6/Makefile.in Maelstrom-3.0.6.patched/Makefile.in
---- Maelstrom-3.0.6/Makefile.in 2002-10-20 00:19:42.000000000 -0400
-+++ Maelstrom-3.0.6.patched/Makefile.in 2009-04-14 14:45:59.000000000 -0400
-@@ -431,7 +431,7 @@
-
- # Special install rule for the game
- install:
-- make install_gamedata target=@GAME_INSTALLDIR@
-+ make install_gamedata target=$(DESTDIR)/@GAME_INSTALLDIR@
-
- install_gamedata:
- sh mkinstalldirs $(target)/
-@@ -444,8 +444,8 @@
- chmod 666 $(target)/Maelstrom-Scores
-
- install_gamedocs:
-- sh mkinstalldirs $(target)/
-- cp -rv README* COPYING* Docs* $(target)/
-+ sh mkinstalldirs $(DESTDIR)/$(target)/
-+ cp -rv README* COPYING* Docs* $(DESTDIR)/$(target)/
-
- # Rule to build tar-gzipped distribution package
- $(PACKAGE)-$(VERSION).tar.gz: dist
-diff -Naur Maelstrom-3.0.6/configure Maelstrom-3.0.6.patched/configure
---- Maelstrom-3.0.6/configure 2002-10-19 23:43:07.000000000 -0400
-+++ Maelstrom-3.0.6.patched/configure 2009-04-14 14:47:33.000000000 -0400
-@@ -3232,7 +3232,7 @@
- GAME_INSTALLDIR="\$(prefix)/games/$PACKAGE"
- ;;
- *)
-- GAME_INSTALLDIR="\$(prefix)/games/$PACKAGE"
-+ GAME_INSTALLDIR="\$(prefix)/share/games/$PACKAGE"
- ;;
- esac
-
diff --git a/games/maelstrom/maelstrom.SlackBuild b/games/maelstrom/maelstrom.SlackBuild
index e1d1c842e9..88cddc94c8 100644
--- a/games/maelstrom/maelstrom.SlackBuild
+++ b/games/maelstrom/maelstrom.SlackBuild
@@ -1,11 +1,16 @@
-#!/bin/sh
+#!/bin/bash
# Slackware build script for maelstrom
-# Written by B. Watson (yalhcru@gmail.com)
+# Written by B. Watson (urchlay@slackware.uk)
# Licensed under the WTFPL. See http://www.wtfpl.net/txt/copying/ for details.
+# 20211020 bkw: upstream's first update since 2002! ported to SDL2!
+# - update for v3.0.7.
+# - new-style icons.
+# - update URLs in perl script and man page.
+
# 20180627 bkw: fix compile with gcc 8 (for -current).
# 20160730 bkw:
@@ -14,10 +19,13 @@
# - Remove warnings about multiplayer not working on 64-bit, it
# works now.
+cd $(dirname $0) ; CWD=$(pwd)
+
PRGNAM=maelstrom
-VERSION=${VERSION:-3.0.6}
-BUILD=${BUILD:-2}
+VERSION=${VERSION:-3.0.7}
+BUILD=${BUILD:-1}
TAG=${TAG:-_SBo}
+PKGTYPE=${PKGTYPE:-tgz}
SRCNAM=Maelstrom
@@ -29,7 +37,11 @@ if [ -z "$ARCH" ]; then
esac
fi
-CWD=$(pwd)
+if [ ! -z "${PRINT_PACKAGE_NAME}" ]; then
+ echo "$PRGNAM-$VERSION-$ARCH-$BUILD$TAG.$PKGTYPE"
+ exit 0
+fi
+
TMP=${TMP:-/tmp/SBo}
PKG=$TMP/package-$PRGNAM
OUTPUT=${OUTPUT:-/tmp}
@@ -57,18 +69,11 @@ rm -rf $SRCNAM-$VERSION
tar xvf $CWD/$SRCNAM-$VERSION.tar.gz
cd $SRCNAM-$VERSION
chown -R root:root .
-find -L . \
- \( -perm 777 -o -perm 775 -o -perm 750 -o -perm 711 -o -perm 555 \
- -o -perm 511 \) -exec chmod 755 {} \+ -o \
- \( -perm 666 -o -perm 664 -o -perm 640 -o -perm 600 -o -perm 444 \
- -o -perm 440 -o -perm 400 \) -exec chmod 644 {} \+
+find -L . -perm /111 -a \! -perm 755 -a -exec chmod 755 {} \+ -o \
+ \! -perm /111 -a \! -perm 644 -a -exec chmod 644 {} \+
-# Fix 64-bit compile issue (not needed on 32-bit, but does no harm)
-patch -p1 < $CWD/compile_fix.diff
-
-# Install game data in /usr/share/games/Maelstrom, not /usr/games/Maelstrom
-# (also make `make install' support DESTDIR properly!)
-patch -p1 < $CWD/install_dirs.diff
+# Look for game data in /usr/share/games/Maelstrom, not /usr/games/Maelstrom
+sed -i '/GAME_INSTALLDIR=.*games/s,/games,/share/games,' configure
# 20180627 bkw: It seems structs and typedefs now share a namespace
# in gcc-8.1's g++. So rename this struct to keep the compiler happy
@@ -84,8 +89,13 @@ CXXFLAGS="$SLKCFLAGS" \
--build=$ARCH-slackware-linux
make
-make install DESTDIR=$PKG
-strip --strip-unneeded $PKG/usr/games/*
+
+# 20211020 bkw: 3.0.7's make install is hard to deal with, do without.
+GAMEDIR=$PKG/usr/share/games/$SRCNAM
+mkdir -p $PKG/usr/games $GAMEDIR
+cp -a Images Maelstrom_{Fonts,Sounds,Sprites} icon.* $GAMEDIR
+rm $GAMEDIR/Images/Makefile*
+install -s -m0755 $SRCNAM $SRCNAM-netd $PKG/usr/games
# CLI users would probably prefer to type 'maelstrom', not 'Maelstrom'
( cd $PKG/usr/games && ln -s $SRCNAM $PRGNAM )
@@ -95,6 +105,15 @@ install -m0755 -o root -g root $CWD/maelstrom_addon_package.pl $PKG/usr/games
mkdir -p $PKG/usr/share/applications
cp $CWD/$PRGNAM.desktop $PKG/usr/share/applications
+# upstream's icon is 48x48, resize
+for i in 16 32 48 64; do
+ px=$( basename $i | cut -d. -f1 )
+ size=${px}x${px}
+ dir=$PKG/usr/share/icons/hicolor/$size/apps
+ mkdir -p $dir
+ convert -resize $size icon.xpm $dir/$PRGNAM.png
+done
+
mkdir -p $PKG/usr/share/pixmaps
( cd $PKG/usr/share/pixmaps ; ln -s ../games/$SRCNAM/icon.xpm $PRGNAM.xpm )
@@ -104,15 +123,15 @@ gzip -9c $CWD/$SRCNAM.6 > $PKG/usr/man/man6/$SRCNAM.6.gz
ln -s $SRCNAM.6.gz $PRGNAM.6.gz
ln -s $SRCNAM.6.gz $SRCNAM-netd.6.gz )
-mkdir -p $PKG/usr/doc/$PRGNAM-$VERSION
-make install_gamedocs target=$PKG/usr/doc/$PRGNAM-$VERSION
-cat $CWD/$PRGNAM.SlackBuild > $PKG/usr/doc/$PRGNAM-$VERSION/$PRGNAM.SlackBuild
-# Why does `make install' install this?
-rm -f $PKG/usr/doc/$PRGNAM-$VERSION/Docs/Makefile
+PKGDOC=$PKG/usr/doc/$PRGNAM-$VERSION
+mkdir -p $PKGDOC
+cp -a Changelog *.txt Docs $PKGDOC
+rm -f $PKGDOC/Docs/Makefile*
+cat $CWD/$PRGNAM.SlackBuild > $PKGDOC/$PRGNAM.SlackBuild
mkdir -p $PKG/install
cat $CWD/slack-desc > $PKG/install/slack-desc
cat $CWD/doinst.sh > $PKG/install/doinst.sh
cd $PKG
-/sbin/makepkg -l y -c n $OUTPUT/$PRGNAM-$VERSION-$ARCH-$BUILD$TAG.${PKGTYPE:-tgz}
+/sbin/makepkg -l y -c n $OUTPUT/$PRGNAM-$VERSION-$ARCH-$BUILD$TAG.$PKGTYPE
diff --git a/games/maelstrom/maelstrom.desktop b/games/maelstrom/maelstrom.desktop
index 9a94043690..96bde602fa 100644
--- a/games/maelstrom/maelstrom.desktop
+++ b/games/maelstrom/maelstrom.desktop
@@ -1,7 +1,7 @@
[Desktop Entry]
Name=Maelstrom
-Exec=Maelstrom
+Exec=/usr/games/Maelstrom
Type=Application
Icon=maelstrom
-GenericName=Maelstrom
+GenericName=Enhanced Asteroids-like game
Categories=Game;ArcadeGame;
diff --git a/games/maelstrom/maelstrom.info b/games/maelstrom/maelstrom.info
index eadf972d41..dca67703d6 100644
--- a/games/maelstrom/maelstrom.info
+++ b/games/maelstrom/maelstrom.info
@@ -1,10 +1,10 @@
PRGNAM="maelstrom"
-VERSION="3.0.6"
-HOMEPAGE="http://web.archive.org/web/20100825165951/http://www.devolution.com/~slouken/Maelstrom/"
-DOWNLOAD="http://mirrors.kernel.org/gentoo/distfiles/Maelstrom-3.0.6.tar.gz"
-MD5SUM="8aab0e75ca52808fd6777535ebb1f1c4"
+VERSION="3.0.7"
+HOMEPAGE="https://www.libsdl.org/projects/Maelstrom/index.html"
+DOWNLOAD="https://www.libsdl.org/projects/Maelstrom/src/Maelstrom-3.0.7.tar.gz"
+MD5SUM="3437294981f43d23d73d8b69170a1f0e"
DOWNLOAD_x86_64=""
MD5SUM_x86_64=""
REQUIRES=""
MAINTAINER="B. Watson"
-EMAIL="yalhcru@gmail.com"
+EMAIL="urchlay@slackware.uk"
diff --git a/games/maelstrom/maelstrom_addon_package.pl b/games/maelstrom/maelstrom_addon_package.pl
index 7358784c3b..5d3c7bdce3 100644
--- a/games/maelstrom/maelstrom_addon_package.pl
+++ b/games/maelstrom/maelstrom_addon_package.pl
@@ -9,7 +9,7 @@
# This script is meant to work on a stock Slackware system, so it
# doesn't use any CPAN modules (which makes the code a bit awkward).
-# Author: B. Watson (yalhcru@gmail.com)
+# Author: B. Watson (urchlay@slackware.uk)
# This program is released into the public domain; do as ye list wi' her.
# Author not responsible for any damages resulting from the use of this
@@ -52,7 +52,7 @@ must run it with root privileges (e.g. with su or sudo).
You can find a collection of Maelstrom add-on zip files here:
- http://www.devolution.com/~slouken/Maelstrom/add-ons.html
+ https://www.libsdl.org/projects/Maelstrom/add-ons.html
EOF
exit 1;
}
diff --git a/games/maelstrom/slack-desc b/games/maelstrom/slack-desc
index 1cda3b7d39..75dfdd150c 100644
--- a/games/maelstrom/slack-desc
+++ b/games/maelstrom/slack-desc
@@ -6,12 +6,12 @@
# customary to leave one space after the ':' except on otherwise blank lines.
|-----handy-ruler------------------------------------------------------|
-maelstrom: maelstrom (a game similar to Asteroids)
+maelstrom: maelstrom (Enhanced Asteroids-like game)
maelstrom:
maelstrom: You pilot your ship through the dreaded "Maelstrom" asteroid belt --
maelstrom: suddenly your best friend thrusts towards you and fires, directly
maelstrom: at your cockpit. You raise your shields just in time, and the battle
-maelstrom: is joined. The deadliest stretch of space known to mankind has just
+maelstrom: is joined. The deadliest stretch of space known to mankind has just
maelstrom: gotten deadlier.
maelstrom:
maelstrom:
diff --git a/games/mame/README b/games/mame/README
index c836db4ad0..6e8fc71d08 100644
--- a/games/mame/README
+++ b/games/mame/README
@@ -1,11 +1,9 @@
-Note: I'm aware that this isn't the latest version of MAME. However,
-it's the latest version that will compile on stock Slackware 14.2. If
-you *really* need the latest version, see README_gcc9.txt.
+mame (Multiple Arcade Machine Emulator)
-MAME stands for Multiple Arcade Machine Emulator. When used in
+MAME stands for Multiple Arcade Machine Emulator. When used in
conjunction with images of the original arcade game's ROM and disk
data, MAME attempts to reproduce that game as faithfully as possible
-on a more modern general purpose computer. MAME can currently emulate
+on a more modern general purpose computer. MAME can currently emulate
several thousand different classic arcade video games from the late
1970s through the modern era.
@@ -20,10 +18,11 @@ separate MESS build or binary.
This build requires around 3.5GB of storage in /tmp (or whatever you
set TMP to in the environment).
-Optionally, MAME can be built with a debugger for emulated ROM
-code. You don't need this just to play the games; it's mainly useful
-for developing MAME itself. To build the debugger, first install qt5,
-then set QTDEBUG=yes in the environment before building mame.
-
-Optionally, MAME can be built with the GroovyMAME patch. See
+Optionally, MAME can be built with the GroovyMAME patch. Export
+GROOVY=yes in the script's environment. If it doesn't work, see
README_groovy.txt for details.
+
+Optionally, MAME can be build with support for bgfx graphics in
+Wayland. To do this, export WAYLAND=yes in the environment. Note
+that the SlackBuild author doesn't use Wayland and hasn't tested this
+(other than making sure it compiles).
diff --git a/games/mame/README_ccache.txt b/games/mame/README_ccache.txt
new file mode 100644
index 0000000000..e58f94b279
--- /dev/null
+++ b/games/mame/README_ccache.txt
@@ -0,0 +1,130 @@
+Notes about building modern mame with ccache...
+
+TL;DR version: I had to use clang and clang++ (not gcc and g++) to get
+ccache to work with mame, and add timestamps to the GroovyMAME patch
+to make it work with ccache.
+
+mame uses a precompiled header (PCH), called emu.h.gch. It gets
+created by precompiling emu.h, which is just a list of #include
+directives that include every header in mame's emulation core.
+
+This speeds up the build approximately 50% (cuts the build time in
+half)... you can test this by passing PRECOMPILE=0 to mame's make
+command. On my test box, it takes approximately 1h45m to build with
+gcc using the precompiled headers, and about twice as long (3h30m)
+without. So far so good.
+
+If you build with ccache and PCH (aka without PRECOMPILE=0), either
+with "ccache g++" or via symlinks, the 2nd build takes just as long as
+the first. ccache wasn't able to save any time... why not?
+
+To get ccache to even *try* to work with precompiled headers, you
+have to 'export CCACHE_SLOPPINESS=time_macros'. However, it doesn't
+actually fix the problem if you're using gcc.
+
+One "fix" would be to disable use of emu.cgh (PRECOMPILE=0). But
+that makes the first build take 2x as long (though later builds would
+indeed benefit from ccache). But can we get the best of both worlds?
+
+When gcc compiles a header into a .gch file, it "bakes in" the address
+the kernel gave it when it allocated memory... Since Slackware's
+kernels (and pretty much all other distros) have ASLR (address space
+layout randomization) enabled, this means that given identical input,
+gcc will generate a slightly different .gch file as output. You
+can easily test this yourself:
+
+ echo 'extern int foo(int bar);' > a.h
+ g++ -o a.gch a.h
+ md5sum a.gch
+
+Now repeat the last 2 commands:
+ g++ -o a.gch a.h
+ md5sum a.gch
+
+The md5sum will be different... it's possible to disable ASLR on a
+running x86_64 kernel (echo 0 > /proc/sys/kernel/randomize_va_space),
+which will cause gcc to generate an identical .gch every time...
+but last I checked, this doesn't work on 32-bit x86. Plus, ASLR is
+there for a reason: it's a security mechanism.
+
+ccache dutifully caches the .gch file, indexed by its hash... but
+on the next attempt to build mame with ccache, the .gch file it
+generates (early in the build) will have different contents, thus
+ccache computes a different hash, and correctly finds no cache entry
+for that hash. So, every C++ source file that uses emu.gch (which is
+all of them) will be a cache miss and get recompiled. Whoops.
+
+So what to do? Well, it turns out that clang++ doesn't have this
+problem: given identical input, it produces the same .gch every time,
+regardless of whether ASLR is enabled or not. Note: "identical input"
+includes not only the contents of emu.h and the headers it includes,
+but the timestamps on those headers as well!
+
+Unfortunately, on my test box at least, clang/clang++ takes 10%
+longer to build mame than gcc/g++. I've seen various blog/forum posts
+claiming that clang builds mame faster than gcc, but these were all
+from a few years ago. To me, this 10% penalty is worth it: whenever
+there's a new mame release, I have to test any changes I made to the
+SlackBuild, which involves running it repeatedly. The first run will
+take about 2 hours, but the 2nd and later ones will take <10 minutes.
+
+There's a bit more to the story than just using clang++: I
+noticed that with the GroovyMAME patch applied, ccache would still
+fail... this turns out to be because, even with CCACHE_SLOPPINESS set
+to include_file_mtime, ccache still rejects the cached emu.gch. The
+is because emu.gch is made from emu.h, which contains a bunch of
+"#include <whatever>"... and the timestamps of those included files
+get baked into the .gch file that clang++ generates.
+
+Try another test:
+
+ echo '#include "b.h"' > a.h
+ echo 'extern int foo(int bar);' > b.h
+ clang++ -o a.gch a.h
+ md5sum a.gch
+
+Now repeat the last 2 commands:
+
+ clang++ -o a.gch a.h
+ md5sum a.gch
+
+Same md5sum, right? Now:
+
+ sleep 2
+ touch b.h
+ clang++ -o a.gch a.h
+ md5sum a.gch
+
+Different md5sum. clang++ produced a different a.gch because b.h's
+timestamp changed. Notice we aren't using ccache for the test code:
+this is a feature (or misfeature?) of clang++ itself.
+
+The reason this was a problem with mame + the groovy patch is that the
+groovy patch as sent to us by github.com's REST API doesn't include
+timestamps (normally they appear on the diff lines that begin with
+'--- filename' and '+++ filename'). This isn't github's fault: the
+regular 'git diff' command doesn't put timestamps in its diffs, and
+the API is just running that for us, remotely.
+
+So on every run of the SlackBuild, ccache runs clang++ to generate
+emu.gch, and the emu.gch contents include the timestamps of the
+patched includes... which are set to the time the patch happened to be
+applied! This means that any file that includes emu.gch (pretty much
+all of them!) would be a cache miss and have to be recompiled. So on
+every run, ccache would refuse to use *any* cached result from the
+previous run!
+
+CCACHE_SLOPPINESS=include_file_mtime seems like it should fix the
+problem, but it doesn't. It would have worked if we weren't using
+PCH...
+
+The solution was to add timestamps to the context headers in the .diff
+(which is done in mkgroovy.sh) and use "patch -f -Z" to force patch to
+apply the timestamps.
+
+If the diff had been made by the regular diff command, it would have
+had timestamps already, and ccache would have Just Worked.
+
+If mame didn't use precompiled headers, the lack of timestamps
+wouldn't have caused a problem (or if they had, CCACHE_SLOPPINESS
+could have worked around it).
diff --git a/games/mame/README_gcc9.txt b/games/mame/README_gcc9.txt
deleted file mode 100644
index f89329b1d2..0000000000
--- a/games/mame/README_gcc9.txt
+++ /dev/null
@@ -1,60 +0,0 @@
-As of mame-0.215, it's no longer possible to compile mame with Slack
-14.2's gcc-5. mame-0.214 is the last version that can be built, so this
-SlackBuild is stuck at that version.
-
-However, if you're willing to go beyond stock Slackware, it's possible
-to build newer versions of mame. There are gcc-9.2.0 packages for 14.2
-here:
-
-http://slackware.uk/slackware/unsupported/gcc-9.2.0-for-Slackware-14.2/
-
-Make sure you read the README, then download the gcc-9.2.0 and
-gcc-g++-9.2.0 .txz packages for your architecture (you won't need the
-other languages such as fortran and go). Before installing them, remove
-your stock gcc and gcc-g++ packages with:
-
-# removepkg gcc gcc-g++
-
-(You don't have to remove the other languages such as gcc-fortran here)
-
-Install the gcc packages you just downloaded:
-
-# installpkg gcc-*9.2.0*.txz
-
-Then you can download the newer mame source from:
-
-https://github.com/mamedev/mame/releases/
-
-You want the source code (filename such as mame0217.tar.gz). Save the
-file in the same directory as the SlackBuild, cd into that directory,
-then build mame with a command such as:
-
-VERSION=0.217 ./mame.SlackBuild
-
-...where VERSION matches the mame source you just downloaded (with a
-dot after the 0, as shown above). If all goes well, you should have a
-shiny new mame package in /tmp, which you can install with installpkg
-or upgradepkg.
-
-After the build finishes, you should revert your gcc and g++ packages
-back to the standard Slackware ones. You can do this with:
-
-# removepkg gcc gcc-g++
-# slackpkg install 'gcc-*'
-
-Notes:
-
-- Do not ask for help with this via the SlackBuilds.org mailing list. If
- you run into problems, you can contact me (B. Watson, yalhcru@gmail.com)
- directly via email, or on Freenode IRC as user Urchlay.
-
-- I may not test every mame release with gcc-9.2.0. 0.217 definitely
- works, future releases *probably* will. When Slackware 15.0 is
- released, things should get back to normal.
-
-- The README for this build states that mame compiles require around
- 3.5GB in /tmp. For 0.217, this number is more like 4.5GB.
-
-- There is an llvm-8.0.1 in 14.2's /extra. Although the mame documentation
- claims that this version of llvm is supported, I can't get mame to
- compile with it.
diff --git a/games/mame/README_groovy.txt b/games/mame/README_groovy.txt
index e872b565ed..a9ab5307b6 100644
--- a/games/mame/README_groovy.txt
+++ b/games/mame/README_groovy.txt
@@ -1,38 +1,58 @@
-GroovyMAME, also known as GroovyUME, is a fork of MAME/UME with greater
-emphasis on CRT monitor support, in order to provide smoother gameplay
-with less input lag than using regular MAME on an LCD screen. GroovyMAME
-is provided as a patch against the standard MAME sources.
-
-GroovyMAME forum: http://forum.arcadecontrols.com/index.php?board=52.0
-
-GroovyMAME patches can be downloaded from:
-
-https://drive.google.com/drive/folders/0B5iMjDor3P__aEFpcVNkVW5jbEE
-
-Get the latest patch that matches the version of MAME. Example:
-
-0182_groovymame_017a.diff
-
-The "0182" is the MAME version, without the dots. The "017a" is the
-GroovyMAME version. You want the .diff file, not the .tar.bz2 or .7z!
-
-Download or copy the .diff file to the SlackBuild's directory and run the
-SlackBuild script. The script will find the .diff, apply it, and update
-the slack-desc to say "This package was patched with GroovyMAME 017a"
-(or whatever the version number really is). You *don't* have to do
-anything about the CRLF line endings, the script will handle that.
-
-If the script seems to be ignoring the .diff file, you probably have a
-.diff for a different version of MAME. Check the version number at the
-start of the filename. Don't try to rename the .diff file to force it
-to apply: the SlackBuild will fail because the patch will fail.
-
-If you have multiple .diff files that match the MAME version, the script
-will try to use the one with the highest GroovyMAME version number. If
-it picks the wrong one, remove the ones you don't want to use.
-
-If all else fails, please contact me by email (yalhcru@gmail.com) or on
-IRC (##slackware or #slackbuilds channel on FreeNode, user Urchlay). I
-won't necessarily be testing each MAME release against each version
-of the GroovyMAME patch for that release, so there might be problems I
-won't know about.
+GroovyMAME, also known as GroovyUME, is a fork of MAME/UME with
+greater emphasis on CRT monitor support, in order to provide smoother
+gameplay with less input lag than using regular MAME on an LCD screen.
+
+GroovyMAME has a discussion forum:
+http://forum.arcadecontrols.com/index.php?board=52.0
+
+GroovyMAME used to be provided as a patch against the standard MAME
+sources, until its author made it a proper fork on github. This
+SlackBuild supports patching the MAME sources with the GroovyMAME
+changes from github.
+
+To build with GroovyMAME, export GROOVY=yes in the environment. The
+resulting mame package will mention GroovyMAME in its slack-desc
+(which you will see when you install it).
+
+If you get an error that says there is no GroovyMAME patch for this
+version of MAME, that means that I updated mame.SlackBuild before the
+GroovyMAME author made a release based on that version of MAME (or,
+it means you're trying to build a newer MAME by setting VERSION in the
+environment). You can check for a release at:
+
+https://github.com/antonioginer/GroovyMAME/releases
+
+If there's no release matching your MAME version, you're out of luck.
+Wait until there is one.
+
+If there *is* a new release, you have two choices:
+
+1. Wait until I update the GroovyMAME patch. I can't guarantee that
+ I'll always do this in a timely manner. Please don't email and
+ bug me about this: I maintain over 700 SlackBuilds, and I try to
+ have a life outside of that, too.
+
+2. Run mame.SlackBuild with GROOVY=update in the environment. This
+ will attempt to create a GroovyMAME patch for the MAME version
+ you're building, if the GroovyMAME author has done a release. If
+ you get a "can't find GroovyMAME release" error, that means there
+ isn't one yet, so you'll have to wait a few days. If you know for
+ a fact that there *is* a release, it means there's probably a bug
+ in my mkgroovy.sh script (in which case, please do contact me by
+ email, so I can fix it).
+
+Note that GROOVY=update requires the SlackBuild to access the Internet
+(which SlackBuilds normally don't do). Specifically, it runs "curl"
+as the root user, and downloads a JSON file and the actual diff (if
+found) from https://api.github.com. If you don't trust this, you can
+instead run the mkgroovy.sh script (found in the same directory as the
+SlackBuild) as a non-root user, and copy the resulting .diff to the
+SlackBuild directory.
+
+If you have multiple gm*.diff files that match the MAME version, the
+script will try to use the one with the highest GroovyMAME version
+number. If it picks the wrong one, remove the ones you don't want
+to use.
+
+NOTE: I don't currently own any CRT monitors that work on a PC, so I
+can't actually test the GroovyMAME enhancements.
diff --git a/games/mame/doinst.sh b/games/mame/doinst.sh
index 787a7d4e51..9f9769fd8c 100644
--- a/games/mame/doinst.sh
+++ b/games/mame/doinst.sh
@@ -3,14 +3,11 @@
config() {
NEW="$1"
OLD="$(dirname $NEW)/$(basename $NEW .new)"
- # If there's no config file by that name, mv it over:
if [ ! -r $OLD ]; then
mv $NEW $OLD
elif [ "$(cat $OLD | md5sum)" = "$(cat $NEW | md5sum)" ]; then
- # toss the redundant copy
rm $NEW
fi
- # Otherwise, we leave the .new copy for the admin to consider...
}
config etc/mame.ini.new
@@ -18,3 +15,9 @@ config etc/mame.ini.new
if [ -x /usr/bin/update-desktop-database ]; then
/usr/bin/update-desktop-database -q usr/share/applications
fi
+
+if [ -e usr/share/icons/hicolor/icon-theme.cache ]; then
+ if [ -x /usr/bin/gtk-update-icon-cache ]; then
+ /usr/bin/gtk-update-icon-cache usr/share/icons/hicolor >/dev/null 2>&1
+ fi
+fi
diff --git a/games/mame/gm0237sr002e.diff.xz b/games/mame/gm0237sr002e.diff.xz
new file mode 100644
index 0000000000..90aff26777
--- /dev/null
+++ b/games/mame/gm0237sr002e.diff.xz
Binary files differ
diff --git a/games/mame/gm0240sr002g.diff.xz b/games/mame/gm0240sr002g.diff.xz
new file mode 100644
index 0000000000..56f562d643
--- /dev/null
+++ b/games/mame/gm0240sr002g.diff.xz
Binary files differ
diff --git a/games/mame/gm0251sr002o.diff.xz b/games/mame/gm0251sr002o.diff.xz
new file mode 100644
index 0000000000..311bccaf20
--- /dev/null
+++ b/games/mame/gm0251sr002o.diff.xz
Binary files differ
diff --git a/games/mame/gm0254sr002s.diff.xz b/games/mame/gm0254sr002s.diff.xz
new file mode 100644
index 0000000000..1fe10da69c
--- /dev/null
+++ b/games/mame/gm0254sr002s.diff.xz
Binary files differ
diff --git a/games/mame/gm0256sr002u.diff.xz b/games/mame/gm0256sr002u.diff.xz
new file mode 100644
index 0000000000..0ddc6ba37c
--- /dev/null
+++ b/games/mame/gm0256sr002u.diff.xz
Binary files differ
diff --git a/games/mame/gm0260sr002w.diff.xz b/games/mame/gm0260sr002w.diff.xz
new file mode 100644
index 0000000000..492d4b641c
--- /dev/null
+++ b/games/mame/gm0260sr002w.diff.xz
Binary files differ
diff --git a/games/mame/mame.SlackBuild b/games/mame/mame.SlackBuild
index 3a34db79df..3526c37b91 100644
--- a/games/mame/mame.SlackBuild
+++ b/games/mame/mame.SlackBuild
@@ -1,14 +1,33 @@
-#!/bin/sh
+#!/bin/bash
# Slackware build script for mame
-# Written by B. Watson (yalhcru@gmail.com)
+# Written by B. Watson (urchlay@slackware.uk)
# Adapted from Erik W. Hanson's mame.SlackBuild for older mame versions,
# which was originally adapted from sdlmame.SlackBuild by B. Watson.
# Licensed under the WTFPL. See http://www.wtfpl.net/txt/copying/ for details.
+# 20240330 bkw: Updated for v0.264.
+# 20231031 bkw: Updated for v0.260, add WAYLAND option.
+# 20230710 bkw: Updated for v0.256.
+# 20230428 bkw: Updated for v0.254.
+# 20230103 bkw: Updated for v0.251.
+# 20220205 bkw: Updated for v0.240.
+
+# 20211115 bkw:
+# - updated for v0.237 on -current aka 15.0rc1.
+# - new-style icons.
+# - update mame.ini (lots of new options, some old ones went away).
+# - include the new support stuff (hash, language, etc)
+# - rename mame's 'split' to 'mame-split' to avoid potential conflict
+# with coreutils (if someone has /usr/games before /usr/bin in $PATH).
+# - include ini/{examples,presets} in the package (in the doc dir).
+# - make ccache work! finally! see README_ccache.txt if you care.
+# - make GroovyMAME support work again (upstream switched to github).
+# - remove gcc9 stuff. it was specific to Slackware 14.2.
+
# 20191208 bkw: Updated for v0.214, after long hiatus. This isn't
# actually the latest version, but it's the latest version that will
# compile with any of the compilers available in Slackware 14.2:
@@ -26,10 +45,13 @@
# 20180928 bkw: Updated for v0.202.
# 20180830 bkw: Updated for v0.201.
+cd $(dirname $0) ; CWD=$(pwd)
+
PRGNAM=mame
-VERSION=${VERSION:-0.214}
+VERSION=${VERSION:-0.264}
BUILD=${BUILD:-1}
TAG=${TAG:-_SBo}
+PKGTYPE=${PKGTYPE:-tgz}
if [ -z "$ARCH" ]; then
case "$( uname -m )" in
@@ -39,25 +61,25 @@ if [ -z "$ARCH" ]; then
esac
fi
-CWD=$(pwd)
+if [ ! -z "${PRINT_PACKAGE_NAME}" ]; then
+ echo "$PRGNAM-$VERSION-$ARCH-$BUILD$TAG.$PKGTYPE"
+ exit 0
+fi
+
TMP=${TMP:-/tmp/SBo}
-PKG=$TMP/package-${PRGNAM}
+PKG=$TMP/package-$PRGNAM
OUTPUT=${OUTPUT:-/tmp}
# NB nonstandard flags here. Upstream defaults to -O3, so we'll leave
# that as-is. Only the arch-specific stuff goes here.
if [ "$ARCH" = "i586" ]; then
SLKCFLAGS="-march=i586 -mtune=i686"
- LIBDIRSUFFIX=""
elif [ "$ARCH" = "i686" ]; then
SLKCFLAGS="-march=i686 -mtune=i686"
- LIBDIRSUFFIX=""
elif [ "$ARCH" = "x86_64" ]; then
SLKCFLAGS="-fPIC"
- LIBDIRSUFFIX="64"
else
SLKCFLAGS=""
- LIBDIRSUFFIX=""
fi
# Source extracts to e.g. mame-mame0175/
@@ -80,6 +102,15 @@ if [ -n "$MISSING" ]; then
exit 1
fi
+# 20211112 bkw: GroovyMAME support has changed, see README_groovy.txt.
+# This part of it has to run in $CWD.
+GROOVY="${GROOVY:-no}"
+
+if [ "$GROOVY" = "update" ]; then
+ sh mkgroovy.sh $VERSION
+ GROOVY=yes
+fi
+
rm -rf $PKG
mkdir -p $TMP $PKG $OUTPUT
cd $TMP
@@ -94,9 +125,17 @@ find -L . -perm /111 -a \! -perm 755 -a -exec chmod 755 {} \+ -o \
# OK, building modern mame is a bit of a PITA. It uses genie (written
# in lua, a fork of premake), but you don't get to run genie directly,
-# you got a main makefile that builds lua, then builds genie, then runs
-# genie with arguments based on the options in the main makefile. Also,
-# it uses python to convert XML layout files to C++ code.
+# you got a main makefile that builds lua, then builds genie,
+# then runs genie with arguments based on the options in the main
+# makefile... and genie generates a bunch of makefiles, then runs make
+# on those. Also, it uses python3 to convert XML layout files to
+# C++ code.
+
+# During the Slackware 14.2 cycle, I used to do this:
+# LDOPTS="-fuse-ld=gold -static-libstdc++ -static-libgcc" \
+# This allowed installing Pat's unsupported gcc9 package,
+# building mame with it, then restoring the original gcc
+# version and mame would still run.
# Where possible, use system libraries instead of building the ones
# bundled with the mame source. However, SBo's lua is (still!) too old
@@ -112,15 +151,6 @@ find -L . -perm /111 -a \! -perm 755 -a -exec chmod 755 {} \+ -o \
# JDK! In case you're wondering, only the C code in the bundled portmidi
# is built (no Java needed).
-# The OVERRIDE_CC and OVERRIDE_CXX are there because mame's build
-# ignores $PATH when searching for gcc/g++, and won't find my ccache
-# symlinks in /usr/local/bin. On a normal (non-ccache-using) system,
-# these options do nothing (they use the compilers in /usr/bin, which
-# is the default anyway) and you can forget about them... or, if you use
-# distcc, this will allow it to actually work. (Mini-rant: PATH has been
-# a standard mechanism on both Unix and DOS/Windows systems for what,
-# 30 or 40 years now? Come on people...)
-
# Version-specific patches & sed fixes. We do it this way to keep this
# script compatible with older versions.
PATCHES=""
@@ -154,32 +184,41 @@ sed -i 's,\.;ini,/etc,' src/osd/sdl/sdlmain.cpp
# stuff above.
#SDL_INI_PATH='$$HOME/.mame;/etc' \
-# Previous versions of mame used qt4 for the debugger GUI. Now it's
-# qt5, so I've made it optional (Slackware 14.2 still only has qt4).
-if [ "${QTDEBUG:-no}" = "yes" ]; then
+# 20211110 bkw: undocumented option. keep this Just In Case.
+if [ "${QTDEBUG:-yes}" = "yes" ]; then
QTOPT=1
- WITHQT="with"
else
QTOPT=0
- WITHQT="without"
fi
-# Now, let's check for GroovyMAME. All the user has to do is place
-# the .diff in the SlackBuild's directory. The filename always starts
-# with the MAME version number, minus its dots. If we find multiple
-# files matching this, sort them lexically and use the last (hopefully
-# this is the one with the highest version number).
-GROOVYDIFF="$( ls $CWD/${VERSION/./}_groovymame_*.diff 2>/dev/null | tail -1 )"
-if [ -e "$GROOVYDIFF" ]; then
- GROOVYVER="$( basename $GROOVYDIFF .diff | cut -d_ -f3- | sed 's,-,_,g' )"
-
- # .diffs are shipped with CRLF endings, fix:
- sed 's,\r,,g' "$GROOVYDIFF" > groovy.diff
-
- patch -p0 < groovy.diff
-
- echo "GROOVYDIFF $GROOVYDIFF"
- echo "GROOVYVER $GROOVYVER"
+# 20211112 bkw: the rest of the GroovyMAME stuff.
+# The diffs look to be close to half a meg, so they're compressed.
+if [ "$GROOVY" = "yes" ]; then
+ GROOVYDIFF="$( /bin/ls $CWD/gm${VERSION/./}*.diff.xz 2>/dev/null | tail -1 )"
+ if [ -e "$GROOVYDIFF" ]; then
+ GROOVYVER="$( basename $GROOVYDIFF .diff.xz )"
+ echo "=== GROOVYDIFF $GROOVYDIFF"
+ echo "=== GROOVYVER $GROOVYVER"
+
+ # The "-f -Z" is necessary to make sure the patched files end up
+ # with the same timestamp every time the script is run. ccache
+ # needs this because the include_file_mtime doesn't seem to
+ # play nice with precompiled headers, even though it's supposed to.
+ # When the patch is generated, we have to add timestamps to make
+ # this work (see mkgroovy.sh for details).
+
+ xzcat "$GROOVYDIFF" | patch -p1 -f -Z
+ else
+ cat <<EOF
+***
+GroovyMAME support was requested, but I don't have a GroovyMAME patch
+for MAME $VERSION. Try running this script with GROOVY=update in the
+environment, or wait a few days for the GroovyMAME author to release
+an update. See README_groovy.txt for more information.
+***
+EOF
+ exit 1
+ fi
fi
# Build option notes:
@@ -188,31 +227,59 @@ fi
# Using ld.gold is *much* faster, and I see no disadvantage to it.
-# The static libstdc++ and libgcc args allow building a version of mame
-# that requires gcc9 (README_gcc9.txt), then running it on a system that
-# doesn't have gcc9 installed. This does make the binary slightly larger,
-# but it's already around 250MB so it's not going to matter much.
-
# The point of the OVERRIDE_CC and friends is to make the build use $PATH
# to find gcc (so ccache will be found if it's using the symlink method).
+# 20211109 bkw: N.B. upstream requires python 3, but they default to
+# /usr/bin/python as the executable, so I still have to override it.
+# The -S means the same thing in python3 as it did it 2: disable use
+# of site packages. We needed it with py2 because otherwise the build
+# would fail if PyXML happened to be installed. Probably don't need it
+# with py3, but it won't hurt anything either.
+
+# 20211111 bkw: make ccache handle precompiled headers
+export CCACHE_SLOPPINESS=pch_defines,time_macros,include_file_mtime,include_file_ctime
+
+# 20211111 bkw: undocumented option, build a mame that only supports
+# pac-man and its clones. used for testing only.
+if [ "${PACONLY:-no}" = "yes" ]; then
+ PACOPT="SOURCES=src/mame/drivers/pacman.cpp"
+fi
+
+# 20231031 bkw: build option for wayland, see README
+if [ "${WAYLAND:-no}" = "yes" ]; then
+ WAYLOPT="USE_WAYLAND=1"
+fi
+
+# 20211111 bkw: build with ccache by default, now that it works.
+if [ "${USE_CCACHE:-yes}" = "yes" ]; then
+ CC="/usr/bin/ccache /usr/bin/clang"
+ CXX="/usr/bin/ccache /usr/bin/clang++"
+else
+ CC="${CC:-$( which gcc )}"
+ CXX="${CXX:-$( which g++ )}"
+fi
+
make USE_QTDEBUG=$QTOPT \
USE_SYSTEM_LIB_EXPAT=1 \
USE_SYSTEM_LIB_ZLIB=1 \
USE_SYSTEM_LIB_JPEG=1 \
USE_SYSTEM_LIB_FLAC=1 \
- PYTHON_EXECUTABLE="/usr/bin/python -S" \
+ PYTHON_EXECUTABLE="/usr/bin/python3 -S" \
OPT_FLAGS="$SLKCFLAGS" \
- LDOPTS="-fuse-ld=gold -static-libstdc++ -static-libgcc" \
- OVERRIDE_CC="$( which gcc )" \
- OVERRIDE_CXX="$( which g++ )" \
- CC="$( which gcc )" \
- CXX="$( which g++ )" \
+ LDOPTS="-fuse-ld=gold" \
+ OVERRIDE_CC="$CC" \
+ OVERRIDE_CXX="$CXX" \
+ CC="$CC" \
+ CXX="$CXX" \
ARCH="" \
+ PRECOMPILE=1 \
VERBOSE=1 \
NOWERROR=1 \
TOOLS=1 \
TARGET=$PRGNAM \
+ $PACOPT \
+ $WAYLOPT \
SUBTARGET=$PRGNAM
# No 'make install' target, do it manually.
@@ -220,21 +287,42 @@ mkdir -p $PKG/usr/games $PKG/etc $PKG/usr/man/man6 $PKG/usr/man/man1 \
$PKG/usr/share/applications $PKG/usr/share/pixmaps
# Deal with upstream's executable-naming silliness.
-[ -e ${PRGNAM}64 ] && mv ${PRGNAM}64 $PRGNAM
-[ -e ${PRGNAM}32 ] && mv ${PRGNAM}32 $PRGNAM
+for i in tiny 32 64; do
+ [ -e ${PRGNAM}$i ] && mv ${PRGNAM}$i $PRGNAM
+done
# .desktop borrowed from Ludovic Lechapt's Debian package.
-# Icon extracted from src/mame/osd/windows/mame/mame.ico with icotool.
cat $CWD/desktop/$PRGNAM.desktop > $PKG/usr/share/applications/$PRGNAM.desktop
-cat $CWD/desktop/$PRGNAM.png > $PKG/usr/share/pixmaps/$PRGNAM.png
+
+# Icon extracted from src/mame/osd/windows/mame/mame.ico with icotool.
+for px in 16 32 48 64 128; do
+ size=${px}x${px}
+ dir=$PKG/usr/share/icons/hicolor/$size/apps
+ mkdir -p $dir
+ convert -resize $size $CWD/desktop/$PRGNAM.png $dir/$PRGNAM.png
+done
+
+ln -s ../icons/hicolor/48x48/apps/$PRGNAM.png $PKG/usr/share/pixmaps/$PRGNAM.png
+
cat $CWD/$PRGNAM.ini > $PKG/etc/$PRGNAM.ini.new
-# Install the binaries:
-install -s -m0755 -oroot -groot \
- $PRGNAM castool chdman floptool imgtool jedutil \
- ldresample ldverify nltool nlwav pngcmp regrep \
- romcmp split src2html srcclean unidasm \
- $PKG/usr/games/
+# This one *must* exist.
+install -s -m0755 -oroot -groot $PRGNAM $PKG/usr/games/
+
+# 20211110 bkw: removed src2html (no longer exists) and renamed split
+# to mame-split since we have a split command in coreutils already.
+# Also, in case upstream drops another of these utilities, check for
+# existence before trying to install (because it takes hours to
+# compile).
+# Install the tools:
+for i in castool chdman floptool imgtool jedutil \
+ ldresample ldverify nltool nlwav pngcmp \
+ regrep romcmp srcclean unidasm
+do
+ [ -e $i ] && install -s -m0755 -oroot -groot $i $PKG/usr/games/
+done
+
+[ -e split ] && install -s -m0755 -oroot -groot $i $PKG/usr/games/$PRGNAM-split
ln -s $PRGNAM $PKG/usr/games/mess
@@ -245,24 +333,32 @@ install -m0644 -oroot -groot docs/man/*.6 $PKG/usr/man/man6
gzip -9 $PKG/usr/man/man?/*.?
# Create empty dirs for the user to populate with ROMs and such.
-for i in roms samples ctrlr font cheat; do
- mkdir -p $PKG/usr/share/games/$PRGNAM/$i
-done
+SHAREDIR=$PKG/usr/share/games/$PRGNAM
+mkdir -p $SHAREDIR/{roms,font,cheat}
-# Install the artwork and bgfx stuff (needed for 'video bgfx' in mame.ini).
-cp -a artwork bgfx $PKG/usr/share/games/$PRGNAM
+# Install the support stuff.
+cp -a artwork bgfx plugins samples hash ctrlr $SHAREDIR
+
+# 20211110 bkw: also the translations (but not the .po files, those are
+# the sources for the .mo files, which are what mame actually needs).
+cp -p --parents language/*/*.mo $SHAREDIR
# CONTRIBUTING.md is a 1-byte placeholder, and we don't need a shell script.
rm -f docs/CONTRIBUTING.md docs/update.sh
-mkdir -p $PKG/usr/doc/${PRGNAM}-$VERSION
+PKGDOC=$PKG/usr/doc/$PRGNAM-$VERSION
+mkdir -p $PKGDOC
# can't just "cp docs/* ..." because man/ is a dir, set -e kills the script
-cp docs/L* docs/*.* $PKG/usr/doc/${PRGNAM}-$VERSION
-cp -a docs/swlist $PKG/usr/doc/${PRGNAM}-$VERSION
-cat $CWD/${PRGNAM}.SlackBuild > $PKG/usr/doc/${PRGNAM}-$VERSION/${PRGNAM}.SlackBuild
+# 20240330 bkw: docs/swlist is gone in 0.264.
+cp docs/L* docs/*.* $PKGDOC
+cp -a docs/legal $PKGDOC
+cat $CWD/$PRGNAM.SlackBuild > $PKGDOC/$PRGNAM.SlackBuild
+
+# in case someone finds these useful...
+cp -a ini/examples ini/presets $PKGDOC
mkdir -p $PKG/install
-sed "s,@WITHQT@,$WITHQT," $CWD/slack-desc > $PKG/install/slack-desc
+cat $CWD/slack-desc > $PKG/install/slack-desc
[ -n "$GROOVYVER" ] && \
sed -i "19s,\$, This package was patched with GroovyMAME $GROOVYVER.," \
@@ -271,4 +367,4 @@ sed "s,@WITHQT@,$WITHQT," $CWD/slack-desc > $PKG/install/slack-desc
cat $CWD/doinst.sh > $PKG/install/doinst.sh
cd $PKG
-/sbin/makepkg -l y -c n $OUTPUT/${PRGNAM}-$VERSION-$ARCH-$BUILD$TAG.${PKGTYPE:-tgz}
+/sbin/makepkg -l y -c n $OUTPUT/$PRGNAM-$VERSION-$ARCH-$BUILD$TAG.$PKGTYPE
diff --git a/games/mame/mame.info b/games/mame/mame.info
index 7b85439aff..097637f713 100644
--- a/games/mame/mame.info
+++ b/games/mame/mame.info
@@ -1,10 +1,10 @@
PRGNAM="mame"
-VERSION="0.214"
+VERSION="0.264"
HOMEPAGE="http://mamedev.org/"
-DOWNLOAD="https://github.com/mamedev/mame/archive/mame0214/mame-mame0214.tar.gz"
-MD5SUM="cfe6428ae8a9e969e2a1f942ff37ffe8"
+DOWNLOAD="https://github.com/mamedev/mame/archive/mame0264/mame-mame0264.tar.gz"
+MD5SUM="0624990754203ff1f67e18de3b3cd9e3"
DOWNLOAD_x86_64=""
MD5SUM_x86_64=""
-REQUIRES="SDL2_ttf"
+REQUIRES=""
MAINTAINER="B. Watson"
-EMAIL="yalhcru@gmail.com"
+EMAIL="urchlay@slackware.uk"
diff --git a/games/mame/mame.ini b/games/mame/mame.ini
index 4d083c291a..2eb24ee5f4 100644
--- a/games/mame/mame.ini
+++ b/games/mame/mame.ini
@@ -1,57 +1,75 @@
# Config file for mame, SlackBuilds.org version
-# Modified from the default mame.ini:
+# Modified from the mame-0.237's defaults (mame -showconfig):
-# - Search paths set for ~/.mame then systemwide ROM/artwork/etc
+# - Search paths set for ~/.mame, then systemwide ROM/artwork/etc
# - Output paths set for per-user configs in ~/.mame
# - joystick and mouse enabled by default
# - video set to opengl by default
+# - disable Lua plugin support by default (plugins 0)
+
+# Caveat interretiarius: mame only reads one mame.ini at startup. It
+# looks for ~/.mame/mame.ini first, then /etc/mame.ini. If it finds
+# ~/.mame/mame.ini, it reads that and *doesn't* read /etc/mame.ini. So
+# you can't just override one or two options in your home dir, you
+# have to have the whole config file.
+# So do this first: cp /etc/mame.ini ~/.mame/mame.ini
#
# CORE CONFIGURATION OPTIONS
#
readconfig 1
+writeconfig 0
#
# CORE SEARCH PATH OPTIONS
#
+homepath $HOME/.mame/plugins/homepath
rompath $HOME/.mame/roms;/usr/share/games/mame/roms
+hashpath $HOME/.mame/hash;/usr/share/games/mame/hash
samplepath $HOME/.mame/samples;/usr/share/games/mame/samples
artpath $HOME/.mame/artwork;/usr/share/games/mame/artwork
ctrlrpath $HOME/.mame/ctrlr;/usr/share/games/mame/ctrlr
inipath $HOME/.mame;/etc
-fontpath $HOME/.mame;/usr/share/games/mame/font
+fontpath $HOME/.mame/font;/usr/share/games/mame/font
cheatpath $HOME/.mame/cheat;/usr/share/games/mame/cheat
-
-# This one doesn't support $HOME
-#bgfx_path $HOME/.mame/bgfx;/usr/share/games/mame/bgfx
-bgfx_path /usr/share/games/mame/bgfx
+crosshairpath $HOME/.mame/crosshair;/usr/share/games/mame/crosshair
+pluginspath $HOME/.mame/plugins;/usr/share/games/mame/plugins
+languagepath $HOME/.mame/language;/usr/share/games/mame/language
+swpath $HOME/.mame/software;/usr/share/games/mame/software
#
# CORE OUTPUT DIRECTORY OPTIONS
#
cfg_directory $HOME/.mame/cfg
nvram_directory $HOME/.mame/nvram
-memcard_directory $HOME/.mame/memcard
input_directory $HOME/.mame/inp
state_directory $HOME/.mame/sta
snapshot_directory $HOME/.mame/snap
diff_directory $HOME/.mame/diff
comment_directory $HOME/.mame/comments
+share_directory $HOME/.mame/share
#
# CORE STATE/PLAYBACK OPTIONS
#
state
autosave 0
+rewind 0
+rewind_capacity 100
playback
record
+record_timecode 0
+exit_after_playback 0
mngwrite
aviwrite
wavwrite
snapname %g/%i
snapsize auto
snapview internal
+snapbilinear 1
+statename %g
+burnin 0
#
# CORE PERFORMANCE OPTIONS
@@ -63,6 +81,19 @@ throttle 1
sleep 1
speed 1.0
refreshspeed 0
+lowlatency 0
+
+#
+# CORE RENDER OPTIONS
+#
+keepaspect 1
+unevenstretch 1
+unevenstretchx 0
+unevenstretchy 0
+autostretchxy 0
+intoverscan 0
+intscalex 0
+intscaley 0
#
# CORE ROTATION OPTIONS
@@ -79,9 +110,8 @@ flipy 0
# CORE ARTWORK OPTIONS
#
artwork_crop 0
-use_backdrops 1
-use_overlays 1
-use_bezels 1
+fallback_artwork
+override_artwork
#
# CORE SCREEN OPTIONS
@@ -90,21 +120,25 @@ brightness 1.0
contrast 1.0
gamma 1.0
pause_brightness 0.65
+effect none
#
# CORE VECTOR OPTIONS
#
-antialias 1
-beam 1.0
+beam_width_min 1.0
+beam_width_max 1.0
+beam_dot_size 1.0
+beam_intensity_weight 0
flicker 0
#
# CORE SOUND OPTIONS
#
-sound sdl
samplerate 48000
samples 1
volume 0
+compressor 1
+speaker_report 0
#
# CORE INPUT OPTIONS
@@ -117,10 +151,14 @@ lightgun 0
multikeyboard 0
multimouse 0
steadykey 0
+ui_active 0
offscreen_reload 0
joystick_map auto
joystick_deadzone 0.3
joystick_saturation 0.85
+natural 0
+joystick_contradictory 0
+coin_impulse 0
#
# CORE INPUT AUTOMATIC ENABLE OPTIONS
@@ -137,50 +175,146 @@ mouse_device mouse
#
# CORE DEBUGGING OPTIONS
#
-log 0
verbose 0
-update_in_pause 0
+log 0
+oslog 0
debug 0
+update_in_pause 0
debugscript
+debuglog 0
+
+#
+# CORE COMM OPTIONS
+#
+comm_localhost 0.0.0.0
+comm_localport 15112
+comm_remotehost 127.0.0.1
+comm_remoteport 15112
+comm_framesync 0
#
# CORE MISC OPTIONS
#
+drc 1
+drc_use_c 0
+drc_log_uml 0
+drc_log_native 0
bios
cheat 0
skip_gameinfo 0
+uifont default
+ui cabinet
+ramsize
+confirm_quit 0
+ui_mouse 1
+language English
+nvram_save 1
#
-# DEBUGGING OPTIONS
+# SCRIPTING OPTIONS
#
-oslog 0
+autoboot_command
+autoboot_delay 0
+autoboot_script
+console 0
+plugins 0
+plugin
+noplugin
#
-# PERFORMANCE OPTIONS
+# HTTP SERVER OPTIONS
#
-multithreading 0
-sdlvideofps 0
+http 0
+http_port 8080
+http_root web
+
+#
+# OSD KEYBOARD MAPPING OPTIONS
+#
+uimodekey SCRLOCK
+
+#
+# OSD FONT OPTIONS
+#
+uifontprovider auto
+
+#
+# OSD OUTPUT OPTIONS
+#
+output auto
+
+#
+# OSD INPUT OPTIONS
+#
+keyboardprovider auto
+mouseprovider auto
+lightgunprovider auto
+joystickprovider auto
#
-# VIDEO OPTIONS
+# OSD DEBUGGING OPTIONS
+#
+debugger auto
+debugger_port 23946
+debugger_font auto
+debugger_font_size 0
+watchdog 0
+
+#
+# OSD PERFORMANCE OPTIONS
+#
+numprocessors auto
+bench 0
+
+#
+# OSD VIDEO OPTIONS
#
video opengl
numscreens 1
window 0
maximize 1
-keepaspect 1
-unevenstretch 1
-effect none
-centerh 1
-centerv 1
waitvsync 0
-scalemode none
+syncrefresh 0
+monitorprovider auto
#
-# OpenGL-SPECIFIC OPTIONS
+# OSD PER-WINDOW VIDEO OPTIONS
+#
+screen auto
+aspect auto
+resolution auto
+view auto
+screen0 auto
+aspect0 auto
+resolution0 auto
+view0 auto
+screen1 auto
+aspect1 auto
+resolution1 auto
+view1 auto
+screen2 auto
+aspect2 auto
+resolution2 auto
+view2 auto
+screen3 auto
+aspect3 auto
+resolution3 auto
+view3 auto
+
+#
+# OSD FULL SCREEN OPTIONS
+#
+switchres 0
+
+#
+# OSD ACCELERATED VIDEO OPTIONS
#
filter 1
prescale 1
+
+#
+# OpenGL-SPECIFIC OPTIONS
+#
gl_forcepow2texture 0
gl_notexturerect 0
gl_vbo 1
@@ -207,41 +341,48 @@ glsl_shader_screen6 none
glsl_shader_screen7 none
glsl_shader_screen8 none
glsl_shader_screen9 none
-gl_glsl_vid_attr 1
#
-# PER-WINDOW VIDEO OPTIONS
+# OSD SOUND OPTIONS
#
-screen auto
-aspect auto
-resolution auto
-view auto
-screen0 auto
-aspect0 auto
-resolution0 auto
-view0 auto
-screen1 auto
-aspect1 auto
-resolution1 auto
-view1 auto
-screen2 auto
-aspect2 auto
-resolution2 auto
-view2 auto
-screen3 auto
-aspect3 auto
-resolution3 auto
-view3 auto
+sound sdl
+audio_latency 3
#
-# FULL SCREEN OPTIONS
+# PORTAUDIO OPTIONS
#
-switchres 0
+pa_api none
+pa_device none
+pa_latency 0
#
-# SOUND OPTIONS
+# BGFX POST-PROCESSING OPTIONS
#
-audio_latency 3
+bgfx_path /usr/share/games/mame/bgfx
+bgfx_backend auto
+bgfx_debug 0
+bgfx_screen_chains default
+bgfx_shadow_mask slot-mask.png
+bgfx_lut
+bgfx_avi_name auto
+
+#
+# SDL PERFORMANCE OPTIONS
+#
+sdlvideofps 0
+
+#
+# SDL VIDEO OPTIONS
+#
+centerh 1
+centerv 1
+scalemode none
+
+#
+# SDL FULL SCREEN OPTIONS
+#
+useallheads 0
+attach_window
#
# SDL KEYBOARD MAPPING
@@ -263,8 +404,51 @@ joy_idx8 auto
sixaxis 0
#
-# SDL LOWLEVEL DRIVER OPTIONS
+# SDL LIGHTGUN MAPPING
+#
+lightgun_index1 auto
+lightgun_index2 auto
+lightgun_index3 auto
+lightgun_index4 auto
+lightgun_index5 auto
+lightgun_index6 auto
+lightgun_index7 auto
+lightgun_index8 auto
+
+#
+# SDL MOUSE MAPPING
+#
+mouse_index1 auto
+mouse_index2 auto
+mouse_index3 auto
+mouse_index4 auto
+mouse_index5 auto
+mouse_index6 auto
+mouse_index7 auto
+mouse_index8 auto
+
+#
+# SDL KEYBOARD MAPPING
+#
+keyb_idx1 auto
+keyb_idx2 auto
+keyb_idx3 auto
+keyb_idx4 auto
+keyb_idx5 auto
+keyb_idx6 auto
+keyb_idx7 auto
+keyb_idx8 auto
+
+#
+# SDL LOW-LEVEL DRIVER OPTIONS
#
videodriver auto
+renderdriver auto
audiodriver auto
gl_lib auto
+
+#
+# FRONTEND COMMAND OPTIONS
+#
+dtd 1
+
diff --git a/games/mame/mkgroovy.sh b/games/mame/mkgroovy.sh
new file mode 100644
index 0000000000..c2524b6622
--- /dev/null
+++ b/games/mame/mkgroovy.sh
@@ -0,0 +1,114 @@
+#!/bin/bash
+
+# mkgroovy.sh - create a groovymame diff, if possible.
+
+# Since the groovymame author switched to github, there are no more
+# groovymame diffs to download (the ones that used to be hosted on
+# google drive). This rather ugly script just uses the github API to
+# get a diff we can apply.
+
+# Note: in my testing, requesting the same diff repeatedly from
+# the API results in identical files, but I'm not sure this is
+# guaranteed. It only matters if you're repeatedly test-running
+# this script, really.
+
+# The github 'compare' API is basically just a wrapper for the git
+# command, run on a remote repo. We can use it to download a diff
+# between 2 tags, without having to clone the repo (save a ton of
+# time and bandwidth).
+
+# To understand this, see the github API docs: https://docs.github.com/en/rest/
+
+# to see info on the repo:
+# curl -H "Accept: application/vnd.github.v3+json" 'https://api.github.com/users/antonioginer/repos'
+
+# to get a list of releases:
+# curl -H "Accept: application/vnd.github.v3+json" https://api.github.com/repos/antonioginer/GroovyMAME/releases
+# looks like these are in chronological order, newest first.
+
+# DIFFURL should end up looking like this:
+# curl -H "Accept: application/vnd.github.v3.diff" 'https://api.github.com/repos/antonioginer/GroovyMAME/compare/{mame0237}...{gm0237sr002e}'
+
+# Note: 'git diff' doesn't include timestamps in its output,
+# and there's no way to make the gh API include them. To
+# get ccache to play nice, I have to add the timestamps to
+# the context headers in the diff myself. AFAICT, that's the
+# only way to get ccache to play nice with this patch. Even with
+# CCACHE_SLOPPINESS=include_file_mtime, it complains that the headers
+# have a different modification time than what was expected, on the
+# 2nd (cached) build. I'm pretty sure this only happens because mame
+# uses a precompiled header, and ccache's precompiled header support
+# isn't quite perfect yet. The timestamps I put in the patch are just
+# the release date of the tag. They're not quite in the same format
+# 'diff' produces, but 'patch' accepts them just fine.
+
+if [ -n "$1" ]; then
+ MAMEVER="$1"
+else
+ if [ -e mame.info ]; then
+ source ./mame.info
+ MAMEVER="$VERSION"
+ else
+ echo "No MAME version argument and no mame.info in current dir."
+ fi
+fi
+
+MAMEVER=${MAMEVER/./}
+
+RELEASEURL="https://api.github.com/repos/antonioginer/GroovyMAME/releases"
+CMPURL="https://api.github.com/repos/antonioginer/GroovyMAME/compare/"
+JSONHDR="Accept: application/vnd.github.v3+json"
+DIFFHDR="Accept: application/vnd.github.v3.diff"
+
+JSON="$( mktemp -t mkgroovy.XXXXXXXXXX.json )"
+curl -sS -H "$HEADER" "$RELEASEURL" >> "$JSON"
+
+GMTAG="$(
+ grep '"tag_name.*"'".*$MAMEVER" "$JSON" \
+ | head -1 \
+ | sed 's,.*"\(gm'"$MAMEVER"'[^"]*\)".*,\1,'\
+ )"
+
+GMDATE="$(
+ grep '"created_at"' "$JSON" \
+ | head -1 \
+ | cut -d'"' -f4
+ )"
+
+rm "$JSON"
+
+case "$GMTAG" in
+ gm$MAMEVER*) ;; # OK
+ "") cat <<EOF
+!!! Can't find a GroovyMAME release for MAME $MAMEVER, try again tomorrow?
+EOF
+ exit 1 ;;
+ *) cat <<EOF
+!!! GMTAG is "$GMTAG", which doesn't look right. Investigate.
+EOF
+ exit 1 ;;
+esac
+
+MAMETAG="mame$MAMEVER"
+DIFFURL="$CMPURL{$MAMETAG}...{$GMTAG}"
+
+echo "=== GMTAG='$GMTAG' MAMETAG='$MAMETAG'"
+echo "=== DIFFURL='$DIFFURL'"
+
+OUTPUT="$GMTAG.diff"
+if [ -e "$OUTPUT" -o -e "$OUTPUT.xz" ]; then
+ echo "=== $OUTPUT(.xz)? already exists and is the latest version for mame $MAMEVER, nothing to do."
+ exit 0 # not an error!
+fi
+
+echo "=== Downloading diff."
+curl -sS -H "$DIFFHDR" "$DIFFURL" > "$OUTPUT"
+
+echo "=== Fudging timestamps to $GMDATE"
+sed -i '/^\(+++\|---\)/s,$,\t'"$GMDATE," "$OUTPUT"
+
+echo -n "=== Output is '$OUTPUT', type "
+file -b --mime "$OUTPUT"
+
+xz -9 "$OUTPUT"
+echo "=== Compressed to $OUTPUT.xz"
diff --git a/games/mame/slack-desc b/games/mame/slack-desc
index a5b32741b8..eed7462c68 100644
--- a/games/mame/slack-desc
+++ b/games/mame/slack-desc
@@ -15,5 +15,5 @@ mame: on a more modern general-purpose computer. MAME can currently emulate
mame: several thousand different classic arcade video games from the late
mame: 1970s through the modern era.
mame:
-mame: This package was built @WITHQT@ the qt5 ROM debugger.
+mame:
mame:
diff --git a/games/mame2000-libretro/mame2000-libretro.SlackBuild b/games/mame2000-libretro/mame2000-libretro.SlackBuild
index 4900572f40..f3e1d7a1d5 100644
--- a/games/mame2000-libretro/mame2000-libretro.SlackBuild
+++ b/games/mame2000-libretro/mame2000-libretro.SlackBuild
@@ -1,9 +1,9 @@
-#!/bin/sh
+#!/bin/bash
# Slackware build script for mame2000-libretro
# Copyright 2017-2018 Hunter Sezen California, USA
-# Copyright 2020 ilmich < ardutu at gmail dot com >
+# Copyright 2020-2023 ilmich < ardutu at gmail dot com >
# All rights reserved.
#
# Redistribution and use of this script, with or without modification, is
@@ -23,11 +23,15 @@
# OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF THIS SOFTWARE, EVEN IF
# ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
+cd $(dirname $0) ; CWD=$(pwd)
+
PRGNAM=mame2000-libretro
LIBNAM=$(echo $PRGNAM | tr - _)
-VERSION=${VERSION:-2020.10.21_6655a51}
+VERSION=${VERSION:-2022.07.26_0208517}
+COMMIT=0208517404e841fce0c094f1a2776a0e1c6c101d
BUILD=${BUILD:-1}
TAG=${TAG:-_SBo}
+PKGTYPE=${PKGTYPE:-tgz}
if [ -z "$ARCH" ]; then
case "$( uname -m )" in
@@ -37,7 +41,14 @@ if [ -z "$ARCH" ]; then
esac
fi
-CWD=$(pwd)
+# If the variable PRINT_PACKAGE_NAME is set, then this script will report what
+# the name of the created package would be, and then exit. This information
+# could be useful to other scripts.
+if [ ! -z "${PRINT_PACKAGE_NAME}" ]; then
+ echo "$PRGNAM-$VERSION-$ARCH-$BUILD$TAG.$PKGTYPE"
+ exit 0
+fi
+
TMP=${TMP:-/tmp/SBo}
PKG=$TMP/package-$PRGNAM
OUTPUT=${OUTPUT:-/tmp}
@@ -50,9 +61,9 @@ set -eu
rm -rf $PKG
mkdir -p $TMP $PKG $OUTPUT
cd $TMP
-rm -rf $PRGNAM-$VERSION
-tar xvf $CWD/$PRGNAM-$VERSION.tar.xz
-cd $PRGNAM-$VERSION
+rm -rf ${PRGNAM}-$COMMIT
+tar xvf $CWD/${PRGNAM}-$COMMIT.tar.gz
+cd ${PRGNAM}-$COMMIT
chown -R root:root .
find -L . \
\( -perm 777 -o -perm 775 -o -perm 750 -o -perm 711 -o -perm 555 \
@@ -64,8 +75,8 @@ find -L . \
make DEBUG=$DEBUG GIT_VERSION="${VERSION#*_}"
-install -Dm0644 $LIBNAM.so $PKG/usr/lib${LIBDIRSUFFIX}/libretro/$LIBNAM.so
-install -Dm0644 $LIBNAM.info $PKG/usr/lib${LIBDIRSUFFIX}/libretro/info/$LIBNAM.info
+install -Dm0755 $LIBNAM.so $PKG/usr/lib${LIBDIRSUFFIX}/libretro/$LIBNAM.so
+install -Dm0644 $CWD/$LIBNAM.info $PKG/usr/lib${LIBDIRSUFFIX}/libretro/info/$LIBNAM.info
if [ $DEBUG = 0 ]; then
find $PKG -print0 | xargs -0 file | grep -e "executable" -e "shared object" | grep ELF \
@@ -80,4 +91,4 @@ mkdir -p $PKG/install
cat $CWD/slack-desc > $PKG/install/slack-desc
cd $PKG
-/sbin/makepkg -l y -c n $OUTPUT/$PRGNAM-$VERSION-$ARCH-$BUILD$TAG.${PKGTYPE:-tgz}
+/sbin/makepkg -l y -c n $OUTPUT/$PRGNAM-$VERSION-$ARCH-$BUILD$TAG.$PKGTYPE
diff --git a/games/mame2000-libretro/mame2000-libretro.info b/games/mame2000-libretro/mame2000-libretro.info
index 26abee268c..9a888e3d3a 100644
--- a/games/mame2000-libretro/mame2000-libretro.info
+++ b/games/mame2000-libretro/mame2000-libretro.info
@@ -1,8 +1,8 @@
PRGNAM="mame2000-libretro"
-VERSION="2020.10.21_6655a51"
+VERSION="2022.07.26_0208517"
HOMEPAGE="https://www.libretro.com/"
-DOWNLOAD="https://ilmich.github.io/src/mame2000-libretro-2020.10.21_6655a51.tar.xz"
-MD5SUM="b295ea55f54fc7d138d4ef2f3ed2e470"
+DOWNLOAD="https://github.com/libretro/mame2000-libretro/archive/0208517/mame2000-libretro-0208517404e841fce0c094f1a2776a0e1c6c101d.tar.gz https://raw.githubusercontent.com/libretro/libretro-core-info/345d38d5bdfd02ca2809b066b52aa505d462f8de/mame2000_libretro.info"
+MD5SUM="a99def4bf4d45b111b8b69a51dcd751c 5e6236874e3211b589c918785cd599a9"
DOWNLOAD_x86_64=""
MD5SUM_x86_64=""
REQUIRES="RetroArch"
diff --git a/games/manaplus/doinst.sh b/games/manaplus/doinst.sh
index 5fb28930db..65c7e2eeb9 100644
--- a/games/manaplus/doinst.sh
+++ b/games/manaplus/doinst.sh
@@ -1,3 +1,9 @@
if [ -x /usr/bin/update-desktop-database ]; then
/usr/bin/update-desktop-database -q usr/share/applications >/dev/null 2>&1
fi
+
+if [ -e usr/share/icons/hicolor/icon-theme.cache ]; then
+ if [ -x /usr/bin/gtk-update-icon-cache ]; then
+ /usr/bin/gtk-update-icon-cache -f usr/share/icons/hicolor >/dev/null 2>&1
+ fi
+fi
diff --git a/games/manaplus/manaplus.SlackBuild b/games/manaplus/manaplus.SlackBuild
index 5da1264527..3e3ce9247d 100644
--- a/games/manaplus/manaplus.SlackBuild
+++ b/games/manaplus/manaplus.SlackBuild
@@ -1,6 +1,6 @@
-#!/bin/sh
+#!/bin/bash
# Slackware build script for manaplus
-# Copyright 2018 Jefferson Rocha <root@slackjeff.com.br>
+# Copyright 2018 Jefferson Carneiro <slackjeff@riseup.net>
# All rights reserved.
#
# Redistribution and use of this script, with or without modification, is
@@ -20,10 +20,13 @@
# OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF THIS SOFTWARE, EVEN IF
# ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
+cd $(dirname $0) ; CWD=$(pwd)
+
PRGNAM=manaplus
-VERSION=${VERSION:-1.9.3.23}
+VERSION=${VERSION:-2.1.3.17}
BUILD=${BUILD:-1}
TAG=${TAG:-_SBo}
+PKGTYPE=${PKGTYPE:-tgz}
if [ -z "$ARCH" ]; then
case "$( uname -m )" in
@@ -33,7 +36,14 @@ if [ -z "$ARCH" ]; then
esac
fi
-CWD=$(pwd)
+# If the variable PRINT_PACKAGE_NAME is set, then this script will report what
+# the name of the created package would be, and then exit. This information
+# could be useful to other scripts.
+if [ ! -z "${PRINT_PACKAGE_NAME}" ]; then
+ echo "$PRGNAM-$VERSION-$ARCH-$BUILD$TAG.$PKGTYPE"
+ exit 0
+fi
+
TMP=${TMP:-/tmp/SBo}
PKG=$TMP/package-$PRGNAM
OUTPUT=${OUTPUT:-/tmp}
@@ -58,7 +68,7 @@ rm -rf $PKG
mkdir -p $TMP $PKG $OUTPUT
cd $TMP
rm -rf $PRGNAM-
-tar xvf $CWD/$PRGNAM.tar.xz
+tar xvf $CWD/$PRGNAM-$VERSION.tar.xz
cd $PRGNAM-$VERSION
chown -R root:root .
find -L . \
@@ -89,9 +99,15 @@ mkdir -p $PKG/usr/doc/$PRGNAM-$VERSION
cp -a AUTHORS COPYING README $PKG/usr/doc/$PRGNAM-$VERSION
cat $CWD/$PRGNAM.SlackBuild > $PKG/usr/doc/$PRGNAM-$VERSION/$PRGNAM.SlackBuild
+# !!! Fix !!!
+# sbopkglint:
+#--- usr/share/icons should not contain files with executable permission:
+#-rwxr-xr-x 1 root root 8075 Jun 24 14:01 usr/share/icons/hicolor/scalable/apps/manaplus.svg
+chmod 644 $PKG/usr/share/icons/hicolor/scalable/apps/manaplus.svg
+
mkdir -p $PKG/install
cat $CWD/slack-desc > $PKG/install/slack-desc
cat $CWD/doinst.sh > $PKG/install/doinst.sh
cd $PKG
-/sbin/makepkg -l y -c n $OUTPUT/$PRGNAM-$VERSION-$ARCH-$BUILD$TAG.${PKGTYPE:-tgz}
+/sbin/makepkg -l y -c n $OUTPUT/$PRGNAM-$VERSION-$ARCH-$BUILD$TAG.$PKGTYPE
diff --git a/games/manaplus/manaplus.info b/games/manaplus/manaplus.info
index b2e1e676fd..7c9937cea8 100644
--- a/games/manaplus/manaplus.info
+++ b/games/manaplus/manaplus.info
@@ -1,10 +1,10 @@
PRGNAM="manaplus"
-VERSION="1.9.3.23"
+VERSION="2.1.3.17"
HOMEPAGE="http://manaplus.org/"
-DOWNLOAD="http://download.evolonline.org/manaplus/download/manaplus.tar.xz"
-MD5SUM="abd29dd7a6b8e1321b3b924ad953e040"
+DOWNLOAD="http://download.evolonline.org/manaplus/download/2.1.3.17/manaplus-2.1.3.17.tar.xz"
+MD5SUM="dad47df3f6c5c9254aacde3f566fdbb3"
DOWNLOAD_x86_64=""
MD5SUM_x86_64=""
REQUIRES="SDL_gfx"
-MAINTAINER="Jefferson Rocha"
-EMAIL="root@slackjeff.com.br"
+MAINTAINER="slackjeff"
+EMAIL="slackjeff@riseup.net"
diff --git a/games/mangband/mangband.SlackBuild b/games/mangband/mangband.SlackBuild
index d9692ac84d..62e98df78b 100644
--- a/games/mangband/mangband.SlackBuild
+++ b/games/mangband/mangband.SlackBuild
@@ -1,4 +1,4 @@
-#!/bin/sh
+#!/bin/bash
# Slackware build script for mangband
@@ -22,10 +22,15 @@
# OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF THIS SOFTWARE, EVEN IF
# ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
+# 20220220 bkw: Modified by SlackBuilds.org: fix build on 15.0.
+
+cd $(dirname $0) ; CWD=$(pwd)
+
PRGNAM=mangband
VERSION=${VERSION:-1.5.3}
BUILD=${BUILD:-1}
TAG=${TAG:-_SBo}
+PKGTYPE=${PKGTYPE:-tgz}
if [ -z "$ARCH" ]; then
case "$( uname -m )" in
@@ -37,7 +42,11 @@ fi
set -e
-CWD=$(pwd)
+if [ ! -z "${PRINT_PACKAGE_NAME}" ]; then
+ echo "$PRGNAM-$VERSION-$ARCH-$BUILD$TAG.$PKGTYPE"
+ exit 0
+fi
+
TMP=${TMP:-/tmp/SBo}
PKG=$TMP/package-$PRGNAM
OUTPUT=${OUTPUT:-/tmp}
@@ -65,12 +74,11 @@ cd $PRGNAM-$VERSION
chown -R root:root .
find -L . \
\( -perm 777 -o -perm 775 -o -perm 750 -o -perm 711 -o -perm 555 \
- -o -perm 511 \) -exec chmod 755 {} \; -o \
+ -o -perm 511 \) -exec chmod 755 {} \+ -o \
\( -perm 666 -o -perm 664 -o -perm 640 -o -perm 600 -o -perm 444 \
- -o -perm 440 -o -perm 400 \) -exec chmod 644 {} \;
+ -o -perm 440 -o -perm 400 \) -exec chmod 644 {} \+
-CFLAGS="$SLKCFLAGS" \
-#Remove --with-sdl=no SDL when bugs fixed
+CFLAGS="$SLKCFLAGS -fcommon" \
./configure \
--prefix=/usr \
--with-libpath=/usr/share/games/mangband \
@@ -81,7 +89,7 @@ CFLAGS="$SLKCFLAGS" \
--with-sdl=no
make
-make install DESTDIR=$PKG
+make install-strip DESTDIR=$PKG
#the real 'make install:'
mkdir -p $PKG/usr/share/games
@@ -129,4 +137,4 @@ cat $CWD/slack-desc > $PKG/install/slack-desc
cat $CWD/doinst.sh > $PKG/install/doinst.sh
cd $PKG
-/sbin/makepkg -l y -c n $OUTPUT/$PRGNAM-$VERSION-$ARCH-$BUILD$TAG.${PKGTYPE:-tgz}
+/sbin/makepkg -l y -c n $OUTPUT/$PRGNAM-$VERSION-$ARCH-$BUILD$TAG.$PKGTYPE
diff --git a/games/marathon-data/marathon-data.SlackBuild b/games/marathon-data/marathon-data.SlackBuild
index f32dafeffd..2177b66938 100644
--- a/games/marathon-data/marathon-data.SlackBuild
+++ b/games/marathon-data/marathon-data.SlackBuild
@@ -1,19 +1,32 @@
-#!/bin/sh
+#!/bin/bash
# Slackware build script for marathon-data
-# Written by B. Watson (yalhcru@gmail.com)
+# Written by B. Watson (urchlay@slackware.uk)
# Licensed under the WTFPL. See http://www.wtfpl.net/txt/copying/ for details.
+# 20240320 bkw: update for 20240119
+# 20230716 bkw: update for 20230529
+# 20230108 bkw: update for 20221126
+# 20220622 bkw: update for 20220115
+# 20211010 bkw: update for 20210408
+
+cd $(dirname $0) ; CWD=$(pwd)
+
PRGNAM=marathon-data
-VERSION=${VERSION:-20200904}
+VERSION=${VERSION:-20240119}
BUILD=${BUILD:-1}
TAG=${TAG:-_SBo}
+PKGTYPE=${PKGTYPE:-tgz}
ARCH=noarch
-CWD=$(pwd)
+if [ ! -z "${PRINT_PACKAGE_NAME}" ]; then
+ echo "$PRGNAM-$VERSION-$ARCH-$BUILD$TAG.$PKGTYPE"
+ exit 0
+fi
+
TMP=${TMP:-/tmp/SBo}
PKG=$TMP/package-$PRGNAM
OUTPUT=${OUTPUT:-/tmp}
@@ -35,8 +48,8 @@ chown -R root:root $DATADIR
# NB: the usual find predicate is different (zipfile stores +x permissions
# on some files for no good reason)
find $DATADIR \
- \( -type f -exec chmod 644 {} \; \) -o \
- \( -type d -exec chmod 755 {} \; \)
+ \( -type f -exec chmod 644 {} \+ \) -o \
+ \( -type d -exec chmod 755 {} \+ \)
mkdir -p $PKG/usr/doc/$PRGNAM-$VERSION
@@ -58,4 +71,4 @@ cat $CWD/slack-desc > $PKG/install/slack-desc
cat $CWD/doinst.sh > $PKG/install/doinst.sh
cd $PKG
-/sbin/makepkg -l y -c n $OUTPUT/$PRGNAM-$VERSION-$ARCH-$BUILD$TAG.${PKGTYPE:-tgz}
+/sbin/makepkg -l y -c n $OUTPUT/$PRGNAM-$VERSION-$ARCH-$BUILD$TAG.$PKGTYPE
diff --git a/games/marathon-data/marathon-data.info b/games/marathon-data/marathon-data.info
index 64b0b00acb..cd4a68e4f0 100644
--- a/games/marathon-data/marathon-data.info
+++ b/games/marathon-data/marathon-data.info
@@ -1,10 +1,10 @@
PRGNAM="marathon-data"
-VERSION="20200904"
+VERSION="20240119"
HOMEPAGE="https://alephone.lhowon.org/"
-DOWNLOAD="https://github.com/Aleph-One-Marathon/alephone/releases/download/release-20200904/Marathon-20200904-Data.zip"
-MD5SUM="f608af955110a0681f284e823debe752"
+DOWNLOAD="https://github.com/Aleph-One-Marathon/alephone/releases/download/release-20240119/Marathon-20240119-Data.zip"
+MD5SUM="8a7c1074d5d1ae4631f3bdc1daecb5f9"
DOWNLOAD_x86_64=""
MD5SUM_x86_64=""
REQUIRES="alephone"
MAINTAINER="B. Watson"
-EMAIL="yalhcru@gmail.com"
+EMAIL="urchlay@slackware.uk"
diff --git a/games/marathon-eternal-data/marathon-eternal-data.SlackBuild b/games/marathon-eternal-data/marathon-eternal-data.SlackBuild
index aa236e38fd..0ee767d22e 100644
--- a/games/marathon-eternal-data/marathon-eternal-data.SlackBuild
+++ b/games/marathon-eternal-data/marathon-eternal-data.SlackBuild
@@ -1,4 +1,4 @@
-#!/bin/sh
+#!/bin/bash
# Slackware build script for Marathon Eternal X
@@ -22,15 +22,25 @@
# OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF THIS SOFTWARE, EVEN IF
# ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
+cd $(dirname $0) ; CWD=$(pwd)
+
PRGNAM=marathon-eternal-data
VERSION=${VERSION:-1.1.0}
SRCVER=$(printf %s "$VERSION" | tr -d .)
BUILD=${BUILD:-2}
TAG=${TAG:-_SBo}
+PKGTYPE=${PKGTYPE:-tgz}
ARCH=noarch
-CWD=$(pwd)
+# If the variable PRINT_PACKAGE_NAME is set, then this script will report what
+# the name of the created package would be, and then exit. This information
+# could be useful to other scripts.
+if [ ! -z "${PRINT_PACKAGE_NAME}" ]; then
+ echo "$PRGNAM-$VERSION-$ARCH-$BUILD$TAG.$PKGTYPE"
+ exit 0
+fi
+
TMP=${TMP:-/tmp/SBo}
PKG=$TMP/package-$PRGNAM
OUTPUT=${OUTPUT:-/tmp}
@@ -105,4 +115,4 @@ cat $CWD/slack-desc > $PKG/install/slack-desc
cat $CWD/doinst.sh > $PKG/install/doinst.sh
cd $PKG
-/sbin/makepkg -l y -c n $OUTPUT/$PRGNAM-$VERSION-$ARCH-$BUILD$TAG.${PKGTYPE:-tgz}
+/sbin/makepkg -l y -c n $OUTPUT/$PRGNAM-$VERSION-$ARCH-$BUILD$TAG.$PKGTYPE
diff --git a/games/marathon-evil-data/marathon-evil-data.SlackBuild b/games/marathon-evil-data/marathon-evil-data.SlackBuild
index 4fc49cc19d..691508d2f4 100644
--- a/games/marathon-evil-data/marathon-evil-data.SlackBuild
+++ b/games/marathon-evil-data/marathon-evil-data.SlackBuild
@@ -1,4 +1,4 @@
-#!/bin/sh
+#!/bin/bash
# Slackware build script for Marathon: EVIL
@@ -22,14 +22,24 @@
# OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF THIS SOFTWARE, EVEN IF
# ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
+cd $(dirname $0) ; CWD=$(pwd)
+
PRGNAM=marathon-evil-data
VERSION=${VERSION:-20110331} # Last modified date from the zipfile's http header
BUILD=${BUILD:-1}
TAG=${TAG:-_SBo}
+PKGTYPE=${PKGTYPE:-tgz}
ARCH=noarch
-CWD=$(pwd)
+# If the variable PRINT_PACKAGE_NAME is set, then this script will report what
+# the name of the created package would be, and then exit. This information
+# could be useful to other scripts.
+if [ ! -z "${PRINT_PACKAGE_NAME}" ]; then
+ echo "$PRGNAM-$VERSION-$ARCH-$BUILD$TAG.$PKGTYPE"
+ exit 0
+fi
+
TMP=${TMP:-/tmp/SBo}
PKG=$TMP/package-$PRGNAM
OUTPUT=${OUTPUT:-/tmp}
@@ -91,4 +101,4 @@ cat $CWD/slack-desc > $PKG/install/slack-desc
cat $CWD/doinst.sh > $PKG/install/doinst.sh
cd $PKG
-/sbin/makepkg -l y -c n $OUTPUT/$PRGNAM-$VERSION-$ARCH-$BUILD$TAG.${PKGTYPE:-tgz}
+/sbin/makepkg -l y -c n $OUTPUT/$PRGNAM-$VERSION-$ARCH-$BUILD$TAG.$PKGTYPE
diff --git a/games/marathon-infinity-data/marathon-infinity-data.SlackBuild b/games/marathon-infinity-data/marathon-infinity-data.SlackBuild
index a8e2e86a4f..bd1cb15bf6 100644
--- a/games/marathon-infinity-data/marathon-infinity-data.SlackBuild
+++ b/games/marathon-infinity-data/marathon-infinity-data.SlackBuild
@@ -1,19 +1,32 @@
-#!/bin/sh
+#!/bin/bash
# Slackware build script for marathon-infinity-data
-# Written by B. Watson (yalhcru@gmail.com)
+# Written by B. Watson (urchlay@slackware.uk)
# Licensed under the WTFPL. See http://www.wtfpl.net/txt/copying/ for details.
+# 20240320 bkw: update for 20240119
+# 20230716 bkw: update for 20230529
+# 20230108 bkw: update for 20221126
+# 20220622 bkw: update for 20220115
+# 20211010 bkw: update for 20210408
+
+cd $(dirname $0) ; CWD=$(pwd)
+
PRGNAM=marathon-infinity-data
-VERSION=${VERSION:-20200904}
+VERSION=${VERSION:-20240119}
BUILD=${BUILD:-1}
TAG=${TAG:-_SBo}
+PKGTYPE=${PKGTYPE:-tgz}
ARCH=noarch
-CWD=$(pwd)
+if [ ! -z "${PRINT_PACKAGE_NAME}" ]; then
+ echo "$PRGNAM-$VERSION-$ARCH-$BUILD$TAG.$PKGTYPE"
+ exit 0
+fi
+
TMP=${TMP:-/tmp/SBo}
PKG=$TMP/package-$PRGNAM
OUTPUT=${OUTPUT:-/tmp}
@@ -36,8 +49,8 @@ chown -R root:root $DATADIR
# NB: the usual find predicate is different (zipfile stores +x permissions
# on some files for no good reason)
find $DATADIR \
- \( -type f -exec chmod 644 {} \; \) -o \
- \( -type d -exec chmod 755 {} \; \)
+ \( -type f -exec chmod 644 {} \+ \) -o \
+ \( -type d -exec chmod 755 {} \+ \)
mkdir -p $PKG/usr/games
cat $CWD/$WRAPPER > $PKG/usr/games/$WRAPPER
@@ -54,4 +67,4 @@ cat $CWD/slack-desc > $PKG/install/slack-desc
cat $CWD/doinst.sh > $PKG/install/doinst.sh
cd $PKG
-/sbin/makepkg -l y -c n $OUTPUT/$PRGNAM-$VERSION-$ARCH-$BUILD$TAG.${PKGTYPE:-tgz}
+/sbin/makepkg -l y -c n $OUTPUT/$PRGNAM-$VERSION-$ARCH-$BUILD$TAG.$PKGTYPE
diff --git a/games/marathon-infinity-data/marathon-infinity-data.info b/games/marathon-infinity-data/marathon-infinity-data.info
index 65d2289201..8e07674499 100644
--- a/games/marathon-infinity-data/marathon-infinity-data.info
+++ b/games/marathon-infinity-data/marathon-infinity-data.info
@@ -1,10 +1,10 @@
PRGNAM="marathon-infinity-data"
-VERSION="20200904"
+VERSION="20240119"
HOMEPAGE="https://alephone.lhowon.org/"
-DOWNLOAD="https://github.com/Aleph-One-Marathon/alephone/releases/download/release-20200904/MarathonInfinity-20200904-Data.zip"
-MD5SUM="a64be0fff890c5712dd61efe5d264ba5"
+DOWNLOAD="https://github.com/Aleph-One-Marathon/alephone/releases/download/release-20240119/MarathonInfinity-20240119-Data.zip"
+MD5SUM="4c634a945179ac3d6e59e6926b576297"
DOWNLOAD_x86_64=""
MD5SUM_x86_64=""
REQUIRES="alephone"
MAINTAINER="B. Watson"
-EMAIL="yalhcru@gmail.com"
+EMAIL="urchlay@slackware.uk"
diff --git a/games/marathon-phoenix-data/marathon-phoenix-data.SlackBuild b/games/marathon-phoenix-data/marathon-phoenix-data.SlackBuild
index e2dae2547d..f2cb235262 100644
--- a/games/marathon-phoenix-data/marathon-phoenix-data.SlackBuild
+++ b/games/marathon-phoenix-data/marathon-phoenix-data.SlackBuild
@@ -1,4 +1,4 @@
-#!/bin/sh
+#!/bin/bash
# Slackware build script for Marathon Phoenix
@@ -22,14 +22,24 @@
# OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF THIS SOFTWARE, EVEN IF
# ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
+cd $(dirname $0) ; CWD=$(pwd)
+
PRGNAM=marathon-phoenix-data
VERSION=${VERSION:-1.3}
BUILD=${BUILD:-1}
TAG=${TAG:-_SBo}
+PKGTYPE=${PKGTYPE:-tgz}
ARCH=noarch
-CWD=$(pwd)
+# If the variable PRINT_PACKAGE_NAME is set, then this script will report what
+# the name of the created package would be, and then exit. This information
+# could be useful to other scripts.
+if [ ! -z "${PRINT_PACKAGE_NAME}" ]; then
+ echo "$PRGNAM-$VERSION-$ARCH-$BUILD$TAG.$PKGTYPE"
+ exit 0
+fi
+
TMP=${TMP:-/tmp/SBo}
PKG=$TMP/package-$PRGNAM
OUTPUT=${OUTPUT:-/tmp}
@@ -91,4 +101,4 @@ cat $CWD/slack-desc > $PKG/install/slack-desc
cat $CWD/doinst.sh > $PKG/install/doinst.sh
cd $PKG
-/sbin/makepkg -l y -c n $OUTPUT/$PRGNAM-$VERSION-$ARCH-$BUILD$TAG.${PKGTYPE:-tgz}
+/sbin/makepkg -l y -c n $OUTPUT/$PRGNAM-$VERSION-$ARCH-$BUILD$TAG.$PKGTYPE
diff --git a/games/marathon-red-data/marathon-red-data.SlackBuild b/games/marathon-red-data/marathon-red-data.SlackBuild
index 0e39c9d22a..2e144581bd 100644
--- a/games/marathon-red-data/marathon-red-data.SlackBuild
+++ b/games/marathon-red-data/marathon-red-data.SlackBuild
@@ -1,4 +1,4 @@
-#!/bin/sh
+#!/bin/bash
# Slackware build script for Marathon RED
@@ -22,14 +22,24 @@
# OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF THIS SOFTWARE, EVEN IF
# ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
+cd $(dirname $0) ; CWD=$(pwd)
+
PRGNAM=marathon-red-data
VERSION=${VERSION:-20110331} # Last modified date from the zipfile's http header
BUILD=${BUILD:-1}
TAG=${TAG:-_SBo}
+PKGTYPE=${PKGTYPE:-tgz}
ARCH=noarch
-CWD=$(pwd)
+# If the variable PRINT_PACKAGE_NAME is set, then this script will report what
+# the name of the created package would be, and then exit. This information
+# could be useful to other scripts.
+if [ ! -z "${PRINT_PACKAGE_NAME}" ]; then
+ echo "$PRGNAM-$VERSION-$ARCH-$BUILD$TAG.$PKGTYPE"
+ exit 0
+fi
+
TMP=${TMP:-/tmp/SBo}
PKG=$TMP/package-$PRGNAM
OUTPUT=${OUTPUT:-/tmp}
@@ -91,4 +101,4 @@ cat $CWD/slack-desc > $PKG/install/slack-desc
cat $CWD/doinst.sh > $PKG/install/doinst.sh
cd $PKG
-/sbin/makepkg -l y -c n $OUTPUT/$PRGNAM-$VERSION-$ARCH-$BUILD$TAG.${PKGTYPE:-tgz}
+/sbin/makepkg -l y -c n $OUTPUT/$PRGNAM-$VERSION-$ARCH-$BUILD$TAG.$PKGTYPE
diff --git a/games/marathon-rubicon-data/marathon-rubicon-data.SlackBuild b/games/marathon-rubicon-data/marathon-rubicon-data.SlackBuild
index 7fc04b0ec3..c71036c3f4 100644
--- a/games/marathon-rubicon-data/marathon-rubicon-data.SlackBuild
+++ b/games/marathon-rubicon-data/marathon-rubicon-data.SlackBuild
@@ -1,4 +1,4 @@
-#!/bin/sh
+#!/bin/bash
# Slackware build script for Marathon: Rubicon X
@@ -22,14 +22,24 @@
# OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF THIS SOFTWARE, EVEN IF
# ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
+cd $(dirname $0) ; CWD=$(pwd)
+
PRGNAM=marathon-rubicon-data
VERSION=${VERSION:-20060807} # Last modified date from the zipfile's http header
BUILD=${BUILD:-3}
TAG=${TAG:-_SBo}
+PKGTYPE=${PKGTYPE:-tgz}
ARCH=noarch
-CWD=$(pwd)
+# If the variable PRINT_PACKAGE_NAME is set, then this script will report what
+# the name of the created package would be, and then exit. This information
+# could be useful to other scripts.
+if [ ! -z "${PRINT_PACKAGE_NAME}" ]; then
+ echo "$PRGNAM-$VERSION-$ARCH-$BUILD$TAG.$PKGTYPE"
+ exit 0
+fi
+
TMP=${TMP:-/tmp/SBo}
PKG=$TMP/package-$PRGNAM
OUTPUT=${OUTPUT:-/tmp}
@@ -114,4 +124,4 @@ cat $CWD/slack-desc > $PKG/install/slack-desc
cat $CWD/doinst.sh > $PKG/install/doinst.sh
cd $PKG
-/sbin/makepkg -l y -c n $OUTPUT/$PRGNAM-$VERSION-$ARCH-$BUILD$TAG.${PKGTYPE:-tgz}
+/sbin/makepkg -l y -c n $OUTPUT/$PRGNAM-$VERSION-$ARCH-$BUILD$TAG.$PKGTYPE
diff --git a/games/marathon2-data/marathon2-data.SlackBuild b/games/marathon2-data/marathon2-data.SlackBuild
index 446dbf33d2..0d137a4497 100644
--- a/games/marathon2-data/marathon2-data.SlackBuild
+++ b/games/marathon2-data/marathon2-data.SlackBuild
@@ -1,19 +1,32 @@
-#!/bin/sh
+#!/bin/bash
# Slackware build script for marathon2-data
-# Written by B. Watson (yalhcru@gmail.com)
+# Written by B. Watson (urchlay@slackware.uk)
# Licensed under the WTFPL. See http://www.wtfpl.net/txt/copying/ for details.
+# 20240320 bkw: update for 20240119
+# 20230716 bkw: update for 20230529
+# 20230108 bkw: update for 20221126
+# 20220622 bkw: update for 20220115
+# 20211010 bkw: update for 20210408
+
+cd $(dirname $0) ; CWD=$(pwd)
+
PRGNAM=marathon2-data
-VERSION=${VERSION:-20200904}
+VERSION=${VERSION:-20240119}
BUILD=${BUILD:-1}
TAG=${TAG:-_SBo}
+PKGTYPE=${PKGTYPE:-tgz}
ARCH=noarch
-CWD=$(pwd)
+if [ ! -z "${PRINT_PACKAGE_NAME}" ]; then
+ echo "$PRGNAM-$VERSION-$ARCH-$BUILD$TAG.$PKGTYPE"
+ exit 0
+fi
+
TMP=${TMP:-/tmp/SBo}
PKG=$TMP/package-$PRGNAM
OUTPUT=${OUTPUT:-/tmp}
@@ -36,8 +49,8 @@ chown -R root:root $DATADIR
# NB: the usual find predicate is different (zipfile stores +x permissions
# on some files for no good reason)
find $DATADIR \
- \( -type f -exec chmod 644 {} \; \) -o \
- \( -type d -exec chmod 755 {} \; \)
+ \( -type f -exec chmod 644 {} \+ \) -o \
+ \( -type d -exec chmod 755 {} \+ \)
mkdir -p $PKG/usr/games
cat $CWD/$WRAPPER > $PKG/usr/games/$WRAPPER
@@ -54,4 +67,4 @@ cat $CWD/slack-desc > $PKG/install/slack-desc
cat $CWD/doinst.sh > $PKG/install/doinst.sh
cd $PKG
-/sbin/makepkg -l y -c n $OUTPUT/$PRGNAM-$VERSION-$ARCH-$BUILD$TAG.${PKGTYPE:-tgz}
+/sbin/makepkg -l y -c n $OUTPUT/$PRGNAM-$VERSION-$ARCH-$BUILD$TAG.$PKGTYPE
diff --git a/games/marathon2-data/marathon2-data.info b/games/marathon2-data/marathon2-data.info
index 371b43b353..707a68b4bb 100644
--- a/games/marathon2-data/marathon2-data.info
+++ b/games/marathon2-data/marathon2-data.info
@@ -1,10 +1,10 @@
PRGNAM="marathon2-data"
-VERSION="20200904"
+VERSION="20240119"
HOMEPAGE="https://alephone.lhowon.org/"
-DOWNLOAD="https://github.com/Aleph-One-Marathon/alephone/releases/download/release-20200904/Marathon2-20200904-Data.zip"
-MD5SUM="b6878568d5b4c91dd6a79beb9d7f009a"
+DOWNLOAD="https://github.com/Aleph-One-Marathon/alephone/releases/download/release-20240119/Marathon2-20240119-Data.zip"
+MD5SUM="0a0a24bccd776d868b587cadc4a1dd18"
DOWNLOAD_x86_64=""
MD5SUM_x86_64=""
REQUIRES="alephone"
MAINTAINER="B. Watson"
-EMAIL="yalhcru@gmail.com"
+EMAIL="urchlay@slackware.uk"
diff --git a/games/mari0/doinst.sh b/games/mari0/doinst.sh
index 5fb28930db..3e5691a052 100644
--- a/games/mari0/doinst.sh
+++ b/games/mari0/doinst.sh
@@ -1,3 +1,9 @@
if [ -x /usr/bin/update-desktop-database ]; then
/usr/bin/update-desktop-database -q usr/share/applications >/dev/null 2>&1
fi
+
+if [ -e usr/share/icons/hicolor/icon-theme.cache ]; then
+ if [ -x /usr/bin/gtk-update-icon-cache ]; then
+ /usr/bin/gtk-update-icon-cache usr/share/icons/hicolor >/dev/null 2>&1
+ fi
+fi
diff --git a/games/mari0/mari0.SlackBuild b/games/mari0/mari0.SlackBuild
index e240c63556..ef1fab57c7 100644
--- a/games/mari0/mari0.SlackBuild
+++ b/games/mari0/mari0.SlackBuild
@@ -1,20 +1,29 @@
-#!/bin/sh
+#!/bin/bash
# Slackware build script for mari0
-# Written by B. Watson (yalhcru@gmail.com)
+# Written by B. Watson (urchlay@slackware.uk)
# Licensed under the WTFPL. See http://www.wtfpl.net/txt/copying/ for details.
+# 20211021 bkw: BUILD=3, new-style icon
+
+cd $(dirname $0) ; CWD=$(pwd)
+
PRGNAM=mari0
VERSION=${VERSION:-1.6}
-BUILD=${BUILD:-2}
+BUILD=${BUILD:-3}
TAG=${TAG:-_SBo}
+PKGTYPE=${PKGTYPE:-tgz}
# *.love files are just zip files full of lua code, they're cross-platform
ARCH=noarch
-CWD=$(pwd)
+if [ ! -z "${PRINT_PACKAGE_NAME}" ]; then
+ echo "$PRGNAM-$VERSION-$ARCH-$BUILD$TAG.$PKGTYPE"
+ exit 0
+fi
+
TMP=${TMP:-/tmp/SBo}
PKG=$TMP/package-$PRGNAM
OUTPUT=${OUTPUT:-/tmp}
@@ -41,9 +50,10 @@ cat $PAYLOAD >> $PKG/usr/games/$PRGNAM
chmod 0755 $PKG/usr/games/$PRGNAM
# who distributes icons as gifs? use ImageMagick to convert to png.
-mkdir -p $PKG/usr/share/pixmaps
+mkdir -p $PKG/usr/share/icons/hicolor/32x32/apps $PKG/usr/share/pixmaps
unzip -p $PAYLOAD graphics/icon.gif | \
- convert - $PKG/usr/share/pixmaps/$PRGNAM.png
+ convert - png32:$PKG/usr/share/icons/hicolor/32x32/apps/$PRGNAM.png
+ln -s ../icons/hicolor/32x32/apps/$PRGNAM.png $PKG/usr/share/pixmaps/$PRGNAM.png
# .desktop written for this build
mkdir -p $PKG/usr/share/applications
@@ -58,4 +68,4 @@ cat $CWD/slack-desc > $PKG/install/slack-desc
cat $CWD/doinst.sh > $PKG/install/doinst.sh
cd $PKG
-/sbin/makepkg -l y -c n $OUTPUT/$PRGNAM-$VERSION-$ARCH-$BUILD$TAG.${PKGTYPE:-tgz}
+/sbin/makepkg -l y -c n $OUTPUT/$PRGNAM-$VERSION-$ARCH-$BUILD$TAG.$PKGTYPE
diff --git a/games/mari0/mari0.desktop b/games/mari0/mari0.desktop
index 8931a69cc1..d07b82a513 100644
--- a/games/mari0/mari0.desktop
+++ b/games/mari0/mari0.desktop
@@ -1,7 +1,7 @@
[Desktop Entry]
Name=Mari0
Comment=Super Mario/Portal Mashup
-Exec=mari0
+Exec=/usr/games/mari0
Icon=mari0
Terminal=false
Type=Application
diff --git a/games/mari0/mari0.info b/games/mari0/mari0.info
index c0d6f38970..c9cb20dd0d 100644
--- a/games/mari0/mari0.info
+++ b/games/mari0/mari0.info
@@ -1,10 +1,10 @@
PRGNAM="mari0"
VERSION="1.6"
-HOMEPAGE="http://stabyourself.net/mari0/"
+HOMEPAGE="https://stabyourself.net/mari0/"
DOWNLOAD="https://slackware.uk/~urchlay/src/mari0-source.zip"
MD5SUM="22125f68ff41795fa8bafad5d1b1d1a9"
DOWNLOAD_x86_64=""
MD5SUM_x86_64=""
REQUIRES="love-legacy080"
MAINTAINER="B. Watson"
-EMAIL="yalhcru@gmail.com"
+EMAIL="urchlay@slackware.uk"
diff --git a/games/mars/mars.SlackBuild b/games/mars/mars.SlackBuild
index b05c250155..26e8022862 100644
--- a/games/mars/mars.SlackBuild
+++ b/games/mars/mars.SlackBuild
@@ -1,4 +1,4 @@
-#!/bin/sh
+#!/bin/bash
# Slackware build script for M.A.R.S.
@@ -22,10 +22,15 @@
# OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF THIS SOFTWARE, EVEN IF
# ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
+# 20220222 bkw: Modified by SlackBuilds.org: fix build on 15.0.
+
+cd $(dirname $0) ; CWD=$(pwd)
+
PRGNAM=mars
VERSION=${VERSION:-0.7.5}
BUILD=${BUILD:-1}
TAG=${TAG:-_SBo}
+PKGTYPE=${PKGTYPE:-tgz}
SRCNAM=${PRGNAM}_source
SRCDIR=${PRGNAM}-game
@@ -38,7 +43,11 @@ if [ -z "$ARCH" ]; then
esac
fi
-CWD=$(pwd)
+if [ ! -z "${PRINT_PACKAGE_NAME}" ]; then
+ echo "$PRGNAM-$VERSION-$ARCH-$BUILD$TAG.$PKGTYPE"
+ exit 0
+fi
+
TMP=${TMP:-/tmp/SBo}
PKG=$TMP/package-$PRGNAM
OUTPUT=${OUTPUT:-/tmp}
@@ -59,18 +68,25 @@ fi
set -e
+# 20220222 bkw: depending on what client was used to download the file,
+# it may have CGI parameters in the filename.
+TARBALL=$CWD/${SRCNAM}_$VERSION.tar.gz
+if [ ! -e $TARBALL ]; then
+ TARBALL="$( /bin/ls $TARBALL\?* | head -1 )"
+fi
+
rm -rf $PKG
mkdir -p $TMP $PKG $OUTPUT
cd $TMP
rm -rf $SRCDIR
-tar xvf $CWD/$SRCNAM\_$VERSION.tar.gz || tar xvf $CWD/v$VERSION.tar.gz
+tar xvf $TARBALL
cd $SRCDIR
chown -R root:root .
find -L . \
\( -perm 777 -o -perm 775 -o -perm 750 -o -perm 711 -o -perm 555 \
- -o -perm 511 \) -exec chmod 755 {} \; -o \
+ -o -perm 511 \) -exec chmod 755 {} \+ -o \
\( -perm 666 -o -perm 664 -o -perm 640 -o -perm 600 -o -perm 444 \
- -o -perm 440 -o -perm 400 \) -exec chmod 644 {} \;
+ -o -perm 440 -o -perm 400 \) -exec chmod 644 {} \+
# Fix build with SFML-2.1
# https://github.com/thelaui/M.A.R.S./pull/2
@@ -89,7 +105,7 @@ sed -i \
mkdir -p build
cd build
cmake \
- -DCMAKE_CXX_FLAGS:STRING="$SLKCFLAGS $FRIBIDIFLAGS" \
+ -DCMAKE_CXX_FLAGS:STRING="$SLKCFLAGS -std=gnu++11 $FRIBIDIFLAGS" \
-DCMAKE_INSTALL_PREFIX=/usr \
-DCMAKE_BUILD_TYPE=Release ..
make
@@ -108,4 +124,4 @@ cat $CWD/slack-desc > $PKG/install/slack-desc
cat $CWD/doinst.sh > $PKG/install/doinst.sh
cd $PKG
-/sbin/makepkg -l y -c n $OUTPUT/$PRGNAM-$VERSION-$ARCH-$BUILD$TAG.${PKGTYPE:-tgz}
+/sbin/makepkg -l y -c n $OUTPUT/$PRGNAM-$VERSION-$ARCH-$BUILD$TAG.$PKGTYPE
diff --git a/games/mars/mars.info b/games/mars/mars.info
index e385a05c22..b56dee5e4d 100644
--- a/games/mars/mars.info
+++ b/games/mars/mars.info
@@ -5,6 +5,6 @@ DOWNLOAD="https://github.com/downloads/thelaui/M.A.R.S./mars_source_0.7.5.tar.gz
MD5SUM="bbbc5fda27ce7f35a0660269c11e93d6"
DOWNLOAD_x86_64=""
MD5SUM_x86_64=""
-REQUIRES="SFML OpenAL"
+REQUIRES="SFML"
MAINTAINER="Dimitris Zlatanidis"
EMAIL="d.zlatanidis@gmail.com"
diff --git a/games/meandmyshadow/README b/games/meandmyshadow/README
index 0de9d16730..586fe7f3f8 100644
--- a/games/meandmyshadow/README
+++ b/games/meandmyshadow/README
@@ -1,3 +1,5 @@
-A puzzle/plateform game with a player and its shadow.
+A puzzle/platform game with a player and its shadow.
-Optional: lua53
+Optional: lua53 can be used in place of lua52. If you have both
+installed, lua53 will be used unless you export LUAVER="5.2" in the
+environment.
diff --git a/games/meandmyshadow/meandmyshadow.SlackBuild b/games/meandmyshadow/meandmyshadow.SlackBuild
index 024f5951f1..c37acc6459 100644
--- a/games/meandmyshadow/meandmyshadow.SlackBuild
+++ b/games/meandmyshadow/meandmyshadow.SlackBuild
@@ -1,4 +1,4 @@
-#!/bin/sh
+#!/bin/bash
# Slackware build script for meandmyshadow
@@ -22,10 +22,16 @@
# OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF THIS SOFTWARE, EVEN IF
# ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
+# 20210214 bkw: Modified by SlackBuilds.org to allow building on a
+# system that has both lua and lua52 (or lua53) installed.
+
+cd $(dirname $0) ; CWD=$(pwd)
+
PRGNAM=meandmyshadow
VERSION=${VERSION:-0.5a}
BUILD=${BUILD:-1}
TAG=${TAG:-_SBo}
+PKGTYPE=${PKGTYPE:-tgz}
if [ -z "$ARCH" ]; then
case "$( uname -m )" in
@@ -35,7 +41,14 @@ if [ -z "$ARCH" ]; then
esac
fi
-CWD=$(pwd)
+# If the variable PRINT_PACKAGE_NAME is set, then this script will report what
+# the name of the created package would be, and then exit. This information
+# could be useful to other scripts.
+if [ ! -z "${PRINT_PACKAGE_NAME}" ]; then
+ echo "$PRGNAM-$VERSION-$ARCH-$BUILD$TAG.$PKGTYPE"
+ exit 0
+fi
+
TMP=${TMP:-/tmp/SBo}
PKG=$TMP/package-$PRGNAM
OUTPUT=${OUTPUT:-/tmp}
@@ -56,6 +69,23 @@ fi
set -e
+# 20210214 bkw: cmake can't be told to ignore lua-5.1 when both 5.1
+# and 5.2 are installed, so help it out a little. LUAVER is used in
+# the cmake command, below.
+if [ -z "$LUAVER" ]; then
+ if [ -x /usr/bin/lua5.3 ]; then
+ LUAVER=5.3
+ elif [ -x /usr/bin/lua5.2 ]; then
+ LUAVER=5.2
+ fi
+fi
+
+case "$LUAVER" in
+ 5.[23]) ;; # OK
+ *) echo "$0: No supported lua version found, install lua52 or lua53." 2>&1
+ exit 0 ;;
+esac
+
rm -rf $PKG
mkdir -p $TMP $PKG $OUTPUT
cd $TMP
@@ -75,6 +105,10 @@ sed -i 's/\r//' docs/ThemeDescription.md
mkdir -p build
cd build
cmake -G "Unix Makefiles" \
+ -DLUA_FOUND=ON \
+ -DLUA_LIBRARY="/usr/lib$LIBDIRSUFFIX/liblua$LUAVER.so" \
+ -DLUA_INCLUDE_DIR="/usr/include/lua$LUAVER" \
+ -DLUA_MATH_LIBRARY="/usr/lib$LIBDIRSUFFIX/libm.so" \
-DCMAKE_INSTALL_PREFIX:PATH=/usr \
-DBINDIR=/usr/games \
-DCMAKE_C_FLAGS:STRING="$SLKCFLAGS" \
@@ -97,4 +131,4 @@ cat $CWD/slack-desc > $PKG/install/slack-desc
cat $CWD/doinst.sh > $PKG/install/doinst.sh
cd $PKG
-/sbin/makepkg -l y -c n $OUTPUT/$PRGNAM-$VERSION-$ARCH-$BUILD$TAG.${PKGTYPE:-tgz}
+/sbin/makepkg -l y -c n $OUTPUT/$PRGNAM-$VERSION-$ARCH-$BUILD$TAG.$PKGTYPE
diff --git a/games/meandmyshadow/meandmyshadow.info b/games/meandmyshadow/meandmyshadow.info
index 5ccc615e41..d4ad264b2b 100644
--- a/games/meandmyshadow/meandmyshadow.info
+++ b/games/meandmyshadow/meandmyshadow.info
@@ -5,6 +5,6 @@ DOWNLOAD="https://downloads.sourceforge.net/meandmyshadow/meandmyshadow-0.5a-src
MD5SUM="314cf2df805e2d094c00eca601a05642"
DOWNLOAD_x86_64=""
MD5SUM_x86_64=""
-REQUIRES="lua52 SDL2_image SDL2_mixer SDL2_ttf"
+REQUIRES="lua52"
MAINTAINER="Larry Hajali"
EMAIL="larryhaja[at]gmail[dot]com"
diff --git a/games/meandmyshadow/slack-desc b/games/meandmyshadow/slack-desc
index ab5c97000b..d4aac92bf0 100644
--- a/games/meandmyshadow/slack-desc
+++ b/games/meandmyshadow/slack-desc
@@ -6,9 +6,9 @@
# customary to leave one space after the ':' except on otherwise blank lines.
|-----handy-ruler------------------------------------------------------|
-meandmyshadow: meandmyshadow (puzzle/plateform game)
+meandmyshadow: meandmyshadow (puzzle/platform game)
meandmyshadow:
-meandmyshadow: A puzzle/plateform game with a player and its shadow.
+meandmyshadow: A puzzle/platform game with a player and its shadow.
meandmyshadow:
meandmyshadow: Homepage: http://meandmyshadow.sourceforge.net/
meandmyshadow:
diff --git a/games/mednafen/README b/games/mednafen/README
index 0055d794f4..619f917c3e 100644
--- a/games/mednafen/README
+++ b/games/mednafen/README
@@ -5,7 +5,3 @@ WonderSwan (Color), PC Engine/TurboGrafx 16 (CD) and SuperGrafx.
Optional dependency: Mednafen will use jack if it's available at build
time.
-
-To make Mednafen use ALSA's default output, run like so:
-
- /usr/bin/mednafen -sound.device sexyal-literal-default
diff --git a/games/mednafen/mednafen.SlackBuild b/games/mednafen/mednafen.SlackBuild
index 806833f971..63fa730469 100644
--- a/games/mednafen/mednafen.SlackBuild
+++ b/games/mednafen/mednafen.SlackBuild
@@ -1,9 +1,10 @@
-#!/bin/sh
+#!/bin/bash
+
# Slackware build script for mednafen
-# Copyright 2008 - 2014 Heinz Wiesinger, Amsterdam, The Netherlands
-# Copyright 2014 - 2016 Ryan P.C. McQuen | Everett, WA
-# Copyright 2017 - 2020 Johannes Schoepfer, Germany
+# Copyright 2008-2014 Heinz Wiesinger, Amsterdam, The Netherlands
+# Copyright 2014-2016 Ryan P.C. McQuen | Everett, WA
+# Copyright 2017-2024 Johannes Schoepfer, Germany
# All rights reserved.
#
# Redistribution and use of this script, with or without modification, is
@@ -23,10 +24,13 @@
# OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF THIS SOFTWARE, EVEN IF
# ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
+cd $(dirname $0) ; CWD=$(pwd)
+
PRGNAM=mednafen
-VERSION=${VERSION:-1.24.3}
+VERSION=${VERSION:-1.32.1}
BUILD=${BUILD:-1}
TAG=${TAG:-_SBo}
+PKGTYPE=${PKGTYPE:-tgz}
if [ -z "$ARCH" ]; then
case "$( uname -m )" in
@@ -36,7 +40,11 @@ if [ -z "$ARCH" ]; then
esac
fi
-CWD=$(pwd)
+if [ ! -z "${PRINT_PACKAGE_NAME}" ]; then
+ echo "$PRGNAM-$VERSION-$ARCH-$BUILD$TAG.$PKGTYPE"
+ exit 0
+fi
+
TMP=${TMP:-/tmp/SBo}
PKG=$TMP/package-$PRGNAM
OUTPUT=${OUTPUT:-/tmp}
@@ -66,9 +74,9 @@ cd $PRGNAM
chown -R root:root .
find -L . \
\( -perm 777 -o -perm 775 -o -perm 750 -o -perm 711 -o -perm 555 \
- -o -perm 511 \) -exec chmod 755 {} \; -o \
+ -o -perm 511 \) -exec chmod 755 {} + -o \
\( -perm 666 -o -perm 664 -o -perm 640 -o -perm 600 -o -perm 444 \
- -o -perm 440 -o -perm 400 \) -exec chmod 644 {} \;
+ -o -perm 440 -o -perm 400 \) -exec chmod 644 {} +
# sanitize build flags, thanks to the gentoo folks
sed \
@@ -96,22 +104,7 @@ if [ "$ARCH" = "x86_64" ]; then
-i src/types.h
fi
-# provide buildtime pkgconfig file, which is missing in lzo-2.09
-cat << EOF > lzo2.pc
-prefix=/usr
-exec_prefix=\${prefix}
-includedir=\${prefix}/include
-libdir=/usr/lib$LIBDIRSUFFIX
-Name: lzo2
-Version: 2.09
-Description: LZO - a real-time data compression library
-URL: http://www.oberhumer.com/opensource/lzo/
-Cflags: -I\${includedir}/lzo
-Libs: -L\${libdir} -llzo2
-EOF
-
autoreconf
-PKG_CONFIG_PATH=. \
CFLAGS="$SLKCFLAGS" \
CXXFLAGS="$SLKCFLAGS" \
./configure \
@@ -120,7 +113,6 @@ CXXFLAGS="$SLKCFLAGS" \
--sysconfdir=/etc \
--localstatedir=/var \
--mandir=/usr/man \
- --disable-debugger \
--with-external-lzo \
--build=$ARCH-slackware-linux
@@ -128,7 +120,7 @@ make
make install-strip DESTDIR=$PKG
mkdir -p $PKG/usr/doc/$PRGNAM-$VERSION
-cp -ar ABOUT-NLS ChangeLog COPYING Documentation INSTALL \
+cp -ar ABOUT-NLS ChangeLog COPYING Documentation \
README{,.DOS,.PORTING} TODO $PKG/usr/doc/$PRGNAM-$VERSION
cat $CWD/$PRGNAM.SlackBuild > $PKG/usr/doc/$PRGNAM-$VERSION/$PRGNAM.SlackBuild
rm -f $PKG/usr/doc/$PRGNAM-$VERSION/Documentation/Makefile.*
@@ -137,4 +129,4 @@ mkdir -p $PKG/install
cat $CWD/slack-desc > $PKG/install/slack-desc
cd $PKG
-/sbin/makepkg -l y -c n $OUTPUT/$PRGNAM-$VERSION-$ARCH-$BUILD$TAG.${PKGTYPE:-tgz}
+/sbin/makepkg -l y -c n $OUTPUT/$PRGNAM-$VERSION-$ARCH-$BUILD$TAG.$PKGTYPE
diff --git a/games/mednafen/mednafen.info b/games/mednafen/mednafen.info
index 4f14ae4b97..88ad3717d2 100644
--- a/games/mednafen/mednafen.info
+++ b/games/mednafen/mednafen.info
@@ -1,10 +1,10 @@
PRGNAM="mednafen"
-VERSION="1.24.3"
+VERSION="1.32.1"
HOMEPAGE="https://mednafen.github.io/"
-DOWNLOAD="https://mednafen.github.io/releases/files/mednafen-1.24.3.tar.xz"
-MD5SUM="a7e1ab14c970541369ac57e857c544fd"
+DOWNLOAD="https://mednafen.github.io/releases/files/mednafen-1.32.1.tar.xz"
+MD5SUM="c3d2da40f7ceeab1a57582f23606c98a"
DOWNLOAD_x86_64=""
MD5SUM_x86_64=""
-REQUIRES="SDL2"
+REQUIRES=""
MAINTAINER="Johannes Schoepfer"
EMAIL="slackbuilds@schoepfer.info"
diff --git a/games/mednafen/slack-desc b/games/mednafen/slack-desc
index 49badfe407..3638197296 100644
--- a/games/mednafen/slack-desc
+++ b/games/mednafen/slack-desc
@@ -14,6 +14,6 @@ mednafen: (Color), GameBoy Advance, Neo Geo Pocket (Color), NES - both
mednafen: NTSC and PAL, PC-FX, WonderSwan (Color), PC Engine/TurboGrafx
mednafen: 16 (CD) and SuperGrafx.
mednafen:
-mednafen: Homepage: https://mednafen.github.io/
+mednafen: https://mednafen.github.io/
mednafen:
mednafen:
diff --git a/games/mednaffe/README b/games/mednaffe/README
index ffa06d8dde..720c516061 100644
--- a/games/mednaffe/README
+++ b/games/mednaffe/README
@@ -6,10 +6,7 @@ Its main features are:
* It is written in C.
* Available for Linux and Windows.
- * The only dependency is GTK+2 (or GTK+3).
+ * The only dependency is GTK+3.
* GPLv3 licensed.
Note: Mednaffe only works with 1.21.1 or higher versions of mednafen.
-
-By default, mednaffe is built with GTK+2. If you prefer GTK+3, export
-GTK3=yes in the script's environment.
diff --git a/games/mednaffe/mednaffe.SlackBuild b/games/mednaffe/mednaffe.SlackBuild
index 21f1dfe683..ba04dc1fe8 100644
--- a/games/mednaffe/mednaffe.SlackBuild
+++ b/games/mednaffe/mednaffe.SlackBuild
@@ -1,15 +1,26 @@
-#!/bin/sh
+#!/bin/bash
# Slackware build script for mednaffe
-# Written by B. Watson (yalhcru@gmail.com)
+# Written by B. Watson (urchlay@slackware.uk)
# Licensed under the WTFPL. See http://www.wtfpl.net/txt/copying/ for details.
+# 20220620 bkw: update for v0.9.2.
+
+# 20211028 bkw: BUILD=2
+# - fix old-style icon.
+
+# 20210222 bkw: update for v0.9.1. Upstream dropped support for GTK+2,
+# so got rid of GTKVER environment variable.
+
+cd $(dirname $0) ; CWD=$(pwd)
+
PRGNAM=mednaffe
-VERSION=${VERSION:-0.8.8}
+VERSION=${VERSION:-0.9.2}
BUILD=${BUILD:-1}
TAG=${TAG:-_SBo}
+PKGTYPE=${PKGTYPE:-tgz}
if [ -z "$ARCH" ]; then
case "$( uname -m )" in
@@ -19,7 +30,11 @@ if [ -z "$ARCH" ]; then
esac
fi
-CWD=$(pwd)
+if [ ! -z "${PRINT_PACKAGE_NAME}" ]; then
+ echo "$PRGNAM-$VERSION-$ARCH-$BUILD$TAG.$PKGTYPE"
+ exit 0
+fi
+
TMP=${TMP:-/tmp/SBo}
PKG=$TMP/package-$PRGNAM
OUTPUT=${OUTPUT:-/tmp}
@@ -50,19 +65,10 @@ chown -R root:root .
find -L . -perm /111 -a \! -perm 755 -a -exec chmod 755 {} \+ -o \
\! -perm /111 -a \! -perm 644 -a -exec chmod 644 {} \+
-if [ "${GTK3:-no}" = "yes" ]; then
- GTKOPT="--enable-gtk3"
- GTKVER=3
-else
- GTKOPT="--disable-gtk3"
- GTKVER=2
-fi
-
-# --docdir is ignored, have to use nonstandard docsdir in make install.
CFLAGS="$SLKCFLAGS" \
CXXFLAGS="$SLKCFLAGS" \
./configure \
- $GTKOPT \
+ --docdir="/usr/doc/$PRGNAM-$VERSION" \
--bindir=/usr/games \
--prefix=/usr \
--libdir=/usr/lib${LIBDIRSUFFIX} \
@@ -72,14 +78,22 @@ CXXFLAGS="$SLKCFLAGS" \
--build=$ARCH-slackware-linux
make
-make install-strip DESTDIR=$PKG docsdir="/usr/doc/$PRGNAM-$VERSION"
+make install-strip DESTDIR=$PKG
+
+# 20211028 bkw: old-style icon is (a) too big (128x128) and (b) a copy
+# when it should be a symlink.
+rm -f $PKG/usr/share/pixmaps/$PRGNAM.png
+ln -s ../icons/hicolor/48x48/apps/$PRGNAM.png $PKG/usr/share/pixmaps/$PRGNAM.png
+
+# 20211028 bkw: in case someone don't got /usr/games in $PATH:
+sed -i 's,Exec=,&/usr/games/,' $PKG/usr/share/applications/$PRGNAM.desktop
# docs already installed, just add this:
cat $CWD/$PRGNAM.SlackBuild > $PKG/usr/doc/$PRGNAM-$VERSION/$PRGNAM.SlackBuild
mkdir -p $PKG/install
-sed "s,@GTKVER@,$GTKVER," $CWD/slack-desc > $PKG/install/slack-desc
+cat $CWD/slack-desc > $PKG/install/slack-desc
cat $CWD/doinst.sh > $PKG/install/doinst.sh
cd $PKG
-/sbin/makepkg -l y -c n $OUTPUT/$PRGNAM-$VERSION-$ARCH-$BUILD$TAG.${PKGTYPE:-tgz}
+/sbin/makepkg -l y -c n $OUTPUT/$PRGNAM-$VERSION-$ARCH-$BUILD$TAG.$PKGTYPE
diff --git a/games/mednaffe/mednaffe.info b/games/mednaffe/mednaffe.info
index 5bb00ceed2..c5af3f1a0a 100644
--- a/games/mednaffe/mednaffe.info
+++ b/games/mednaffe/mednaffe.info
@@ -1,10 +1,10 @@
PRGNAM="mednaffe"
-VERSION="0.8.8"
+VERSION="0.9.2"
HOMEPAGE="https://github.com/AmatCoder/mednaffe"
-DOWNLOAD="https://github.com/AmatCoder/mednaffe/releases/download/0.8.8/mednaffe-0.8.8.tar.gz"
-MD5SUM="8beab613db597d53bcc8cd4e62f281eb"
+DOWNLOAD="https://github.com/AmatCoder/mednaffe/releases/download/0.9.2/mednaffe-0.9.2.tar.gz"
+MD5SUM="6249bdecfe56a2f937a1ff17a3db3da2"
DOWNLOAD_x86_64=""
MD5SUM_x86_64=""
REQUIRES=""
MAINTAINER="B. Watson"
-EMAIL="yalhcru@gmail.com"
+EMAIL="urchlay@slackware.uk"
diff --git a/games/mednaffe/slack-desc b/games/mednaffe/slack-desc
index 3d6e3a71bf..9815a8a62b 100644
--- a/games/mednaffe/slack-desc
+++ b/games/mednaffe/slack-desc
@@ -10,7 +10,7 @@ mednaffe: mednaffe (frontend for mednafen)
mednaffe:
mednaffe: Mednaffe is a GUI front-end for the mednafen emulator.
mednaffe:
-mednaffe: This package was built with GTK+@GTKVER@.
+mednaffe:
mednaffe:
mednaffe:
mednaffe:
diff --git a/games/megaglest/README b/games/megaglest/README
index d054764324..141c565845 100644
--- a/games/megaglest/README
+++ b/games/megaglest/README
@@ -5,6 +5,3 @@ is setup in one of 16 naturally looking settings, which (like the
unit models) are crafted with great appreciation for detail.
Optional dependencies: libircclient, miniupnpc, vlc, p7zip
-
-Note to parallel builders: don't user more than 2 jobs or build
-will break.
diff --git a/games/megaglest/megaglest.SlackBuild b/games/megaglest/megaglest.SlackBuild
index e72f00d757..b1797cf35b 100644
--- a/games/megaglest/megaglest.SlackBuild
+++ b/games/megaglest/megaglest.SlackBuild
@@ -1,4 +1,4 @@
-#!/bin/sh
+#!/bin/bash
# Slackware build script for megaglest
@@ -22,10 +22,24 @@
# OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF THIS SOFTWARE, EVEN IF
# ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
+# 20220222 bkw: Modified by SlackBuilds.org: fix build on 15.0.
+
+# 20210215 bkw: modified by SlackBuilds.org: This build was broken for
+# *3 years* and nobody ever complained...
+# - Add -std=c++11 to CXXFLAGS.
+# - Force cmake to use lua 5.1. This fixes the build on systems where
+# both lua and (lua52 and/or lua53) are installed.
+# - Add -j1 to the 'make install' because the xvfb-run script fails if
+# a 2nd instance is started (and get rid of parallel build warning
+# in README).
+
+cd $(dirname $0) ; CWD=$(pwd)
+
PRGNAM=megaglest
VERSION=${VERSION:-3.13.0}
BUILD=${BUILD:-1}
TAG=${TAG:-_SBo}
+PKGTYPE=${PKGTYPE:-tgz}
if [ -z "$ARCH" ]; then
case "$( uname -m )" in
@@ -35,7 +49,14 @@ if [ -z "$ARCH" ]; then
esac
fi
-CWD=$(pwd)
+# If the variable PRINT_PACKAGE_NAME is set, then this script will report what
+# the name of the created package would be, and then exit. This information
+# could be useful to other scripts.
+if [ ! -z "${PRINT_PACKAGE_NAME}" ]; then
+ echo "$PRGNAM-$VERSION-$ARCH-$BUILD$TAG.$PKGTYPE"
+ exit 0
+fi
+
TMP=${TMP:-/tmp/SBo}
PKG=$TMP/package-$PRGNAM
OUTPUT=${OUTPUT:-/tmp}
@@ -68,9 +89,15 @@ cd $PRGNAM-$VERSION
chown -R root:root .
find -L . \
\( -perm 777 -o -perm 775 -o -perm 750 -o -perm 711 -o -perm 555 \
- -o -perm 511 \) -exec chmod 755 {} \; -o \
+ -o -perm 511 \) -exec chmod 755 {} \+ -o \
\( -perm 666 -o -perm 664 -o -perm 640 -o -perm 600 -o -perm 444 \
- -o -perm 440 -o -perm 400 \) -exec chmod 644 {} \;
+ -o -perm 440 -o -perm 400 \) -exec chmod 644 {} \+
+
+# 20220222 bkw: force cmake to find wxPython (wx version 2), regardless
+# of the /usr/bin/wx-config symlink.
+mkdir -p wxtmp
+ln -s /usr/lib$LIBDIRSUFFIX/wx/config/gtk2-unicode-release-2.8 wxtmp/wx-config
+export PATH=$(pwd)/wxtmp:$PATH
# Fix megaglest help2man when no X display is available. Use a wrapper
# script from upstream for Xvfb that creates a temporary *fake* framebuffer.
@@ -79,20 +106,25 @@ export PATH="$PATH:$TMP/$PRGNAM-$VERSION/bin"
patch -p1 < $CWD/megaglest-help2man.patch
patch -p1 < $CWD/megaglest-underlink.patch
+SLKCFLAGS+=" -fcommon"
+
mkdir build
cd build
cmake -G "Unix Makefiles" \
+ -DLUA_LIBRARY="/usr/lib$LIBDIRSUFFIX/liblua.so" \
+ -DLUA_INCLUDE_DIR="/usr/include/" \
+ -DLUA_MATH_LIBRARY="/usr/lib$LIBDIRSUFFIX/libm.so" \
-DCMAKE_INSTALL_PREFIX:PATH=/usr \
-DWANT_GIT_STAMP=OFF \
-DMEGAGLEST_BIN_INSTALL_PATH:PATH="games/" \
-DMEGAGLEST_MANPAGE_INSTALL_PATH:PATH="man/man6/" \
-DWANT_USE_XercesC:BOOL=ON \
-DCMAKE_C_FLAGS:STRING="$SLKCFLAGS" \
- -DCMAKE_CXX_FLAGS:STRING="$SLKCFLAGS" \
+ -DCMAKE_CXX_FLAGS:STRING="$SLKCFLAGS -std=c++11" \
-DCMAKE_BUILD_TYPE=Release ..
make VERBOSE=1
- make install DESTDIR=$PKG
+ make -j1 install DESTDIR=$PKG
cd -
# Now install the game data
@@ -120,4 +152,4 @@ cat $CWD/slack-desc > $PKG/install/slack-desc
cat $CWD/doinst.sh > $PKG/install/doinst.sh
cd $PKG
-/sbin/makepkg -l y -c n $OUTPUT/$PRGNAM-$VERSION-$ARCH-$BUILD$TAG.${PKGTYPE:-tgz}
+/sbin/makepkg -l y -c n $OUTPUT/$PRGNAM-$VERSION-$ARCH-$BUILD$TAG.$PKGTYPE
diff --git a/games/megaglest/megaglest.info b/games/megaglest/megaglest.info
index b77b8ddd4d..8ac8b549eb 100644
--- a/games/megaglest/megaglest.info
+++ b/games/megaglest/megaglest.info
@@ -9,6 +9,6 @@ MD5SUM="2b1020bb627de50fcf771bfcc335f8e2 \
0eb616b9effad7b630843182c1bcc07c"
DOWNLOAD_x86_64=""
MD5SUM_x86_64=""
-REQUIRES="SDL2 xerces-c OpenAL lua ftgl wxPython"
+REQUIRES="xerces-c lua ftgl wxPython"
MAINTAINER="Larry Hajali"
EMAIL="larryhaja[at]gmail[dot]com"
diff --git a/games/megamario/doinst.sh b/games/megamario/doinst.sh
index 5fb28930db..3e5691a052 100644
--- a/games/megamario/doinst.sh
+++ b/games/megamario/doinst.sh
@@ -1,3 +1,9 @@
if [ -x /usr/bin/update-desktop-database ]; then
/usr/bin/update-desktop-database -q usr/share/applications >/dev/null 2>&1
fi
+
+if [ -e usr/share/icons/hicolor/icon-theme.cache ]; then
+ if [ -x /usr/bin/gtk-update-icon-cache ]; then
+ /usr/bin/gtk-update-icon-cache usr/share/icons/hicolor >/dev/null 2>&1
+ fi
+fi
diff --git a/games/megamario/megamario.SlackBuild b/games/megamario/megamario.SlackBuild
index e2a6429db4..96e96f64c0 100644
--- a/games/megamario/megamario.SlackBuild
+++ b/games/megamario/megamario.SlackBuild
@@ -1,15 +1,24 @@
-#!/bin/sh
+#!/bin/bash
# Slackware build script for megamario
-# Written by B. Watson (yalhcru@gmail.com)
+# Written by B. Watson (urchlay@slackware.uk)
# Licensed under the WTFPL. See http://www.wtfpl.net/txt/copying/ for details.
+# 20230107 bkw: BUILD=3, use https homepage, fix doinst.sh.
+
+# 20211022 bkw: BUILD=2
+# - new-style icons.
+# - make the in-game music work (by transcoding it to ogg).
+
+cd $(dirname $0) ; CWD=$(pwd)
+
PRGNAM=megamario
VERSION=${VERSION:-1.7}
-BUILD=${BUILD:-1}
+BUILD=${BUILD:-3}
TAG=${TAG:-_SBo}
+PKGTYPE=${PKGTYPE:-tgz}
if [ -z "$ARCH" ]; then
case "$( uname -m )" in
@@ -19,7 +28,11 @@ if [ -z "$ARCH" ]; then
esac
fi
-CWD=$(pwd)
+if [ ! -z "${PRINT_PACKAGE_NAME}" ]; then
+ echo "$PRGNAM-$VERSION-$ARCH-$BUILD$TAG.$PKGTYPE"
+ exit 0
+fi
+
TMP=${TMP:-/tmp/SBo}
PKG=$TMP/package-$PRGNAM
OUTPUT=${OUTPUT:-/tmp}
@@ -56,20 +69,22 @@ unzip $CWD/$ZIPFILE -x '*.exe' '*.dll' \
log.txt data/save.sav data/levels/1/1 data/levels/11/mai
chown -R root:root .
-find -L . \
- \( -perm 777 -o -perm 775 -o -perm 750 -o -perm 711 -o -perm 555 \
- -o -perm 511 \) -exec chmod 755 {} \; -o \
- \( -perm 666 -o -perm 664 -o -perm 640 -o -perm 600 -o -perm 444 \
- -o -perm 440 -o -perm 400 \) -exec chmod 644 {} \;
+find -L . -perm /111 -a \! -perm 755 -a -exec chmod 755 {} \+ -o \
+ \! -perm /111 -a \! -perm 644 -a -exec chmod 644 {} \+
+
+# 20211025 bkw: gzip the patches. Don't trust git not to eat the \r
+# characters, since it's configurable by whoever checks this out.
# missing includes
-patch -p1 < $CWD/patches/compilefix.diff
+zcat $CWD/patches/compilefix.diff.gz | patch -p1
-# look for mp3music in DATADIR, not current dir
-patch -p1 < $CWD/patches/usemp3music.diff
+# Use ogg music rather than mp3, and look for music in DATADIR, not
+# current dir. Slackware's sdl has a libSDL_mixer.so that doesn't
+# support mp3, so we have to convert to sometime it does support.
+zcat $CWD/patches/oggmusic.diff.gz | patch -p1
# write log.txt to ~/.megamario/, not current dir
-patch -p1 < $CWD/patches/logfile.diff
+zcat $CWD/patches/logfile.diff.gz | patch -p1
# bin is hardcoded
sed -i 's,\<bin\>,games,' Makefile
@@ -92,15 +107,38 @@ make install \
PREFIX=$PKG/usr \
DATADIR="$PKG/$DATADIR"
-# 'make install' doesn't install the high-quality mp3 music
-cp -a mp3music $PKG/$DATADIR
+# not doing a man page as there are no command-line options.
+
+# 'make install' doesn't install the high-quality mp3 music. We have
+# to transcode them to ogg anyway. Sadly we're converting from one
+# lossy codec to another... while we're at it, get rid of the embedded
+# video frames in some of the mp3s, which the game never displays.
+# The converted music is ~17% smaller than the original mp3 music.
+OGGDIR=$PKG/$DATADIR/oggmusic
+mkdir -p $OGGDIR
+cp -a mp3music/*.dat $OGGDIR
+totalcount="$( /bin/ls -1 mp3music/*.mp3 | wc -l )"
+for song in mp3music/*.mp3; do
+ echo "===> [$((++count))/$totalcount] transcoding $song"
+ ffmpeg -loglevel 16 -i "$song" -vn -b:a 128k \
+ "$OGGDIR/$( basename "$song" .mp3 )".ogg
+done
# upstream's .desktop fails to validate, use our own fixed one.
-# the icon is upstream's.
-# not doing a man page as there are no command-line options.
mkdir -p $PKG/usr/share/applications $PKG/usr/share/pixmaps
cat $CWD/$PRGNAM.desktop > $PKG/usr/share/applications/$PRGNAM.desktop
-cat $PRGNAM.png > $PKG/usr/share/pixmaps/$PRGNAM.png
+
+# the icon was made from upstream's player2l.png and full_pipe_left.png.
+# native size is 80x80.
+for i in 32 48 64 80; do
+ px=$( basename $i | cut -d. -f1 )
+ size=${px}x${px}
+ dir=$PKG/usr/share/icons/hicolor/$size/apps
+ mkdir -p $dir
+ convert -resize $size $CWD/$PRGNAM.png $dir/$PRGNAM.png
+done
+
+ln -s ../icons/hicolor/48x48/apps/$PRGNAM.png $PKG/usr/share/pixmaps/$PRGNAM.png
mkdir -p $PKG/usr/doc/$PRGNAM-$VERSION
cp -a *.txt $PKG/usr/doc/$PRGNAM-$VERSION
@@ -113,4 +151,4 @@ cat $CWD/slack-desc > $PKG/install/slack-desc
cat $CWD/doinst.sh > $PKG/install/doinst.sh
cd $PKG
-/sbin/makepkg -l y -c n $OUTPUT/$PRGNAM-$VERSION-$ARCH-$BUILD$TAG.${PKGTYPE:-tgz}
+/sbin/makepkg -l y -c n $OUTPUT/$PRGNAM-$VERSION-$ARCH-$BUILD$TAG.$PKGTYPE
diff --git a/games/megamario/megamario.desktop b/games/megamario/megamario.desktop
index a20188f1bd..5d97c4e2aa 100644
--- a/games/megamario/megamario.desktop
+++ b/games/megamario/megamario.desktop
@@ -1,10 +1,9 @@
[Desktop Entry]
-Exec=megamario %u
+Exec=/usr/games/megamario
Icon=megamario
Type=Application
Categories=Game;ArcadeGame;
-Name=megamario
-GenericName=Mega Mario
+Name=MegaMario
+GenericName=Mario Bros Clone
GenericName[fr]=Clone de Mario Bros
-GenericName[de]=Mega Mario
StartupNotify=false
diff --git a/games/megamario/megamario.info b/games/megamario/megamario.info
index 367ca0cb96..e681c26580 100644
--- a/games/megamario/megamario.info
+++ b/games/megamario/megamario.info
@@ -1,10 +1,10 @@
PRGNAM="megamario"
VERSION="1.7"
-HOMEPAGE="http://mmario.sourceforge.net/index.htm"
-DOWNLOAD="http://downloads.sourceforge.net/project/mmario/Mega%20Mario%20Full%20Game/Mega%20Mario%20v1.7%20%28Full%20Game%2C%20high%20Quality%20music%29/MegaMario_v1.7_full.zip"
+HOMEPAGE="https://mmario.sourceforge.net/index.htm"
+DOWNLOAD="https://downloads.sourceforge.net/project/mmario/Mega%20Mario%20Full%20Game/Mega%20Mario%20v1.7%20%28Full%20Game%2C%20high%20Quality%20music%29/MegaMario_v1.7_full.zip"
MD5SUM="9550b20f7c2754cd8f94ebf309becf62"
DOWNLOAD_x86_64=""
MD5SUM_x86_64=""
REQUIRES=""
MAINTAINER="B. Watson"
-EMAIL="yalhcru@gmail.com"
+EMAIL="urchlay@slackware.uk"
diff --git a/games/megamario/megamario.png b/games/megamario/megamario.png
new file mode 100644
index 0000000000..c46c0ed780
--- /dev/null
+++ b/games/megamario/megamario.png
Binary files differ
diff --git a/games/megamario/patches/compilefix.diff b/games/megamario/patches/compilefix.diff
deleted file mode 100644
index 1b115a3aa1..0000000000
--- a/games/megamario/patches/compilefix.diff
+++ /dev/null
@@ -1,56 +0,0 @@
-diff -Naur a/src/SDL_gfxPrimitives.c b/src/SDL_gfxPrimitives.c
---- a/src/SDL_gfxPrimitives.c 2007-03-07 10:35:26.000000000 -0500
-+++ b/src/SDL_gfxPrimitives.c 2016-08-14 15:36:20.470686223 -0400
-@@ -10,6 +10,7 @@
- #include <stdlib.h>
- #include <math.h>
- #include <string.h>
-+#include <limits.h>
-
- #include "SDL_gfxPrimitives.h"
- #include "SDL_gfxPrimitives_font.h"
-diff -Naur a/src/global.cpp b/src/global.cpp
---- a/src/global.cpp 2007-03-07 10:34:56.000000000 -0500
-+++ b/src/global.cpp 2016-08-14 15:39:23.252692634 -0400
-@@ -9,7 +9,7 @@
-
- #include "Global.h"
- #include "unixutils.h"
--
-+#include <limits.h>
-
-
- SDL_Surface *screen;
-diff -Naur a/src/levels.cpp b/src/levels.cpp
---- a/src/levels.cpp 2007-03-07 10:35:04.000000000 -0500
-+++ b/src/levels.cpp 2016-08-14 15:38:08.660690018 -0400
-@@ -6,6 +6,7 @@
- *********************************************************************/
-
-
-+#include <limits.h>
- #include "Global.h"
- #include "unixutils.h"
-
-diff -Naur a/src/main.cpp b/src/main.cpp
---- a/src/main.cpp 2007-03-07 10:35:04.000000000 -0500
-+++ b/src/main.cpp 2016-08-14 15:38:42.660691210 -0400
-@@ -10,6 +10,7 @@
- #include "iniparser.h"
- #include "unixutils.h"
- #include <time.h>
-+#include <limits.h>
-
-
- bool running;
-diff -Naur a/src/menu.cpp b/src/menu.cpp
---- a/src/menu.cpp 2007-03-07 10:35:10.000000000 -0500
-+++ b/src/menu.cpp 2016-08-14 15:40:10.108694278 -0400
-@@ -7,6 +7,7 @@
-
- #include "Global.h"
- #include "unixutils.h"
-+#include <limits.h>
-
- bool hideMenu;
-
diff --git a/games/megamario/patches/compilefix.diff.gz b/games/megamario/patches/compilefix.diff.gz
new file mode 100644
index 0000000000..51f197caf6
--- /dev/null
+++ b/games/megamario/patches/compilefix.diff.gz
Binary files differ
diff --git a/games/megamario/patches/logfile.diff b/games/megamario/patches/logfile.diff
deleted file mode 100644
index 741e0ffc8e..0000000000
--- a/games/megamario/patches/logfile.diff
+++ /dev/null
@@ -1,30 +0,0 @@
-diff -Naur a/src/main.cpp b/src/main.cpp
---- a/src/main.cpp 2007-03-07 10:35:04.000000000 -0500
-+++ b/src/main.cpp 2016-08-14 16:53:05.113847723 -0400
-@@ -47,21 +47,24 @@
- NoFrameCheck = 1;
-
- NoFrameCheck = 1;
-+ out_logfile.open ("log.txt");
-
- #else /* defined __unix__ */
-
- int main(int argc, char *argv[])
- {
-+ char logfile[MAX_PATH];
- char *home_dir = get_homedir();
- snprintf(szIniFile, MAX_PATH, "%s/.megamario",
- home_dir? home_dir:".");
- check_and_create_dir(szIniFile);
- snprintf(szIniFile, MAX_PATH, "%s/.megamario/mario.ini",
- home_dir? home_dir:".");
--
-+ snprintf(logfile, MAX_PATH, "%s/.megamario/log.txt",
-+ home_dir? home_dir:".");
-+ out_logfile.open (logfile);
- #endif /* defined __unix__ */
-
-- out_logfile.open ("log.txt");
-
- dictionary * d = iniparser_new(szIniFile);
- pixelation = iniparser_getboolean (d, "Mario:Pixelation", 1);
diff --git a/games/megamario/patches/logfile.diff.gz b/games/megamario/patches/logfile.diff.gz
new file mode 100644
index 0000000000..e7ab323c29
--- /dev/null
+++ b/games/megamario/patches/logfile.diff.gz
Binary files differ
diff --git a/games/megamario/patches/oggmusic.diff.gz b/games/megamario/patches/oggmusic.diff.gz
new file mode 100644
index 0000000000..c6e3b13e33
--- /dev/null
+++ b/games/megamario/patches/oggmusic.diff.gz
Binary files differ
diff --git a/games/megamario/patches/usemp3music.diff b/games/megamario/patches/usemp3music.diff
deleted file mode 100644
index d284491e1b..0000000000
--- a/games/megamario/patches/usemp3music.diff
+++ /dev/null
@@ -1,24 +0,0 @@
-diff -Naur a/src/functions.cpp b/src/functions.cpp
---- a/src/functions.cpp 2007-03-07 10:34:56.000000000 -0500
-+++ b/src/functions.cpp 2016-08-14 16:26:04.208790873 -0400
-@@ -447,7 +447,7 @@
- }
- else
- {
-- sprintf(tmp, "mp3music/%s",filename);
-+ sprintf(tmp, DATADIR "mp3music/%s",filename);
- tmp[strlen(tmp)-3]='m';
- tmp[strlen(tmp)-2]='p';
- tmp[strlen(tmp)-1]='3';
-diff -Naur a/src/main.cpp b/src/main.cpp
---- a/src/main.cpp 2007-03-07 10:35:04.000000000 -0500
-+++ b/src/main.cpp 2016-08-14 16:25:41.230790067 -0400
-@@ -413,7 +413,7 @@
-
-
- fstream fin;
--fin.open("mp3music/music_available.dat",ios::in);
-+fin.open(DATADIR "mp3music/music_available.dat",ios::in);
- if( fin.is_open() )
- {
- HighQualityMusicFound=1;
diff --git a/games/melonds/README b/games/melonds/README
new file mode 100644
index 0000000000..5624ccf03d
--- /dev/null
+++ b/games/melonds/README
@@ -0,0 +1,20 @@
+melonDS aims at providing fast and accurate Nintendo DS emulation.
+While it is still a work in progress, it has a pretty solid set of
+features:
+
+ * Nearly complete core (CPU, video, audio, ...)
+ * JIT recompiler for fast emulation
+ * OpenGL renderer, 3D upscaling
+ * RTC, microphone, lid close/open
+ * Joystick support
+ * Savestates
+ * Various display position/sizing/rotation modes
+ * (WIP) Wifi: local multiplayer, online connectivity
+ * (WIP) DSi emulation
+ * DLDI
+ * (WIP) GBA slot add-ons
+ * and more are planned!
+
+melonds will build against qt5 by default, if you would prefer to
+build against qt6, please pass QT6=ON to the build script. This
+will introduce a dependency on qt6.
diff --git a/games/melonds/doinst.sh b/games/melonds/doinst.sh
new file mode 100644
index 0000000000..65c7e2eeb9
--- /dev/null
+++ b/games/melonds/doinst.sh
@@ -0,0 +1,9 @@
+if [ -x /usr/bin/update-desktop-database ]; then
+ /usr/bin/update-desktop-database -q usr/share/applications >/dev/null 2>&1
+fi
+
+if [ -e usr/share/icons/hicolor/icon-theme.cache ]; then
+ if [ -x /usr/bin/gtk-update-icon-cache ]; then
+ /usr/bin/gtk-update-icon-cache -f usr/share/icons/hicolor >/dev/null 2>&1
+ fi
+fi
diff --git a/games/melonds/melonds.SlackBuild b/games/melonds/melonds.SlackBuild
new file mode 100644
index 0000000000..c7ba60fa29
--- /dev/null
+++ b/games/melonds/melonds.SlackBuild
@@ -0,0 +1,111 @@
+#!/bin/bash
+
+# Slackware build script for melonds
+
+# Copyright 2023 Steven Voges <Oregon, USA>
+# All rights reserved.
+#
+# Redistribution and use of this script, with or without modification, is
+# permitted provided that the following conditions are met:
+#
+# 1. Redistributions of this script must retain the above copyright
+# notice, this list of conditions and the following disclaimer.
+#
+# THIS SOFTWARE IS PROVIDED BY THE AUTHOR "AS IS" AND ANY EXPRESS OR IMPLIED
+# WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE IMPLIED WARRANTIES OF
+# MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE ARE DISCLAIMED. IN NO
+# EVENT SHALL THE AUTHOR BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL,
+# SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT LIMITED TO,
+# PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, DATA, OR PROFITS;
+# OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY,
+# WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR
+# OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF THIS SOFTWARE, EVEN IF
+# ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
+
+cd $(dirname $0) ; CWD=$(pwd)
+
+PRGNAM=melonds
+SRCNAM=melonDS
+VERSION=${VERSION:-0.9.5}
+QT6=${QT6:-OFF}
+BUILD=${BUILD:-1}
+TAG=${TAG:-_SBo}
+PKGTYPE=${PKGTYPE:-tgz}
+
+if [ -z "$ARCH" ]; then
+ case "$( uname -m )" in
+ i?86) ARCH=i586 ;;
+ arm*) ARCH=arm ;;
+ *) ARCH=$( uname -m ) ;;
+ esac
+fi
+
+if [ ! -z "${PRINT_PACKAGE_NAME}" ]; then
+ echo "$PRGNAM-$VERSION-$ARCH-$BUILD$TAG.$PKGTYPE"
+ exit 0
+fi
+
+TMP=${TMP:-/tmp/SBo}
+PKG=$TMP/package-$PRGNAM
+OUTPUT=${OUTPUT:-/tmp}
+
+if [ "$ARCH" = "i586" ]; then
+ SLKCFLAGS="-O2 -march=i586 -mtune=i686"
+ LIBDIRSUFFIX=""
+elif [ "$ARCH" = "i686" ]; then
+ SLKCFLAGS="-O2 -march=i686 -mtune=i686"
+ LIBDIRSUFFIX=""
+elif [ "$ARCH" = "x86_64" ]; then
+ SLKCFLAGS="-O2 -fPIC"
+ LIBDIRSUFFIX="64"
+elif [ "$ARCH" = "aarch64" ]; then
+ SLKCFLAGS="-O2 -fPIC"
+ LIBDIRSUFFIX="64"
+else
+ SLKCFLAGS="-O2"
+ LIBDIRSUFFIX=""
+fi
+
+set -e
+
+rm -rf $PKG
+mkdir -p $TMP $PKG $OUTPUT
+cd $TMP
+rm -rf $SRCNAM-$VERSION
+tar xvf $CWD/$SRCNAM-$VERSION.tar.gz
+cd $SRCNAM-$VERSION
+chown -R root:root .
+find -L . \
+ \( -perm 777 -o -perm 775 -o -perm 750 -o -perm 711 -o -perm 555 \
+ -o -perm 511 \) -exec chmod 755 {} \; -o \
+ \( -perm 666 -o -perm 664 -o -perm 640 -o -perm 600 -o -perm 444 \
+ -o -perm 440 -o -perm 400 \) -exec chmod 644 {} \;
+
+mkdir -p build
+cd build
+ cmake \
+ -Wno-dev \
+ -DCMAKE_C_FLAGS:STRING="$SLKCFLAGS" \
+ -DCMAKE_CXX_FLAGS:STRING="$SLKCFLAGS" \
+ -DCMAKE_INSTALL_PREFIX=/usr \
+ -DUSE_QT6=$QT6 \
+ -DCMAKE_BUILD_TYPE=Release ..
+ make
+ make install/strip DESTDIR=$PKG
+cd ..
+
+find $PKG -print0 | xargs -0 file | grep -e "executable" -e "shared object" | grep ELF \
+ | cut -f 1 -d : | xargs strip --strip-unneeded 2> /dev/null || true
+
+mkdir -p $PKG/usr/doc/$PRGNAM-$VERSION
+cp -a \
+ CONTRIBUTING.md LICENSE README.md \
+ $PKG/usr/doc/$PRGNAM-$VERSION
+cat $CWD/$PRGNAM.SlackBuild > $PKG/usr/doc/$PRGNAM-$VERSION/$PRGNAM.SlackBuild
+
+mkdir -p $PKG/install
+cat $CWD/slack-desc > $PKG/install/slack-desc
+cat $CWD/doinst.sh > $PKG/install/doinst.sh
+
+cd $PKG
+/sbin/makepkg -l y -c n $OUTPUT/$PRGNAM-$VERSION-$ARCH-$BUILD$TAG.$PKGTYPE
diff --git a/games/melonds/melonds.info b/games/melonds/melonds.info
new file mode 100644
index 0000000000..555f3cb883
--- /dev/null
+++ b/games/melonds/melonds.info
@@ -0,0 +1,10 @@
+PRGNAM="melonds"
+VERSION="0.9.5"
+HOMEPAGE="https://melonds.kuribo64.net"
+DOWNLOAD="https://github.com/melonDS-emu/melonDS/archive/0.9.5/melonDS-0.9.5.tar.gz"
+MD5SUM="23ee3637af072854371675b9e61ab96d"
+DOWNLOAD_x86_64=""
+MD5SUM_x86_64=""
+REQUIRES="libslirp"
+MAINTAINER="Steven Voges"
+EMAIL="svoges.sbo@gmail.com"
diff --git a/games/melonds/slack-desc b/games/melonds/slack-desc
new file mode 100644
index 0000000000..8d83245dce
--- /dev/null
+++ b/games/melonds/slack-desc
@@ -0,0 +1,19 @@
+# HOW TO EDIT THIS FILE:
+# The "handy ruler" below makes it easier to edit a package description.
+# Line up the first '|' above the ':' following the base package name, and
+# the '|' on the right side marks the last column you can put a character in.
+# You must make exactly 11 lines for the formatting to be correct. It's also
+# customary to leave one space after the ':' except on otherwise blank lines.
+
+ |-----handy-ruler------------------------------------------------------|
+melonds: melonds (Nintendo DS Emulator)
+melonds:
+melonds: DS emulator, sorta
+melonds:
+melonds: Homepage: https://melonds.kuribo64.net
+melonds:
+melonds:
+melonds:
+melonds:
+melonds:
+melonds:
diff --git a/games/mesen-x/README b/games/mesen-x/README
new file mode 100644
index 0000000000..51392bfe81
--- /dev/null
+++ b/games/mesen-x/README
@@ -0,0 +1,14 @@
+Mesen-X is a fork of Mesen, which is a cross-platform NES/Famicom
+emulator for Windows & Linux built in C++ and C#. The original Mesen
+project has paused development, and this fork is meant to collect
+patches contributed by the community.
+
+Changes include:
+ * Support for newer versions of Mono, for running Mesen on Linux
+ * ESPM homebrew expansion audio support
+ * HD Pack improvements
+ * Replaced VRC7 synth code with Nuked-OPLL
+ * Debugger improvements, for Alchemy65
+
+If you would like to build the libretro core, pass LIBRETRO=yes to
+the SlackBuild script.
diff --git a/games/mesen-x/doinst.sh b/games/mesen-x/doinst.sh
new file mode 100644
index 0000000000..65c7e2eeb9
--- /dev/null
+++ b/games/mesen-x/doinst.sh
@@ -0,0 +1,9 @@
+if [ -x /usr/bin/update-desktop-database ]; then
+ /usr/bin/update-desktop-database -q usr/share/applications >/dev/null 2>&1
+fi
+
+if [ -e usr/share/icons/hicolor/icon-theme.cache ]; then
+ if [ -x /usr/bin/gtk-update-icon-cache ]; then
+ /usr/bin/gtk-update-icon-cache -f usr/share/icons/hicolor >/dev/null 2>&1
+ fi
+fi
diff --git a/games/mesen-x/mesen-x b/games/mesen-x/mesen-x
new file mode 100644
index 0000000000..b6c0df82a6
--- /dev/null
+++ b/games/mesen-x/mesen-x
@@ -0,0 +1,2 @@
+#!/bin/sh
+/usr/bin/mono /usr/bin/Mesen-X "\$@"
diff --git a/games/mesen-x/mesen-x.SlackBuild b/games/mesen-x/mesen-x.SlackBuild
new file mode 100644
index 0000000000..32541b352a
--- /dev/null
+++ b/games/mesen-x/mesen-x.SlackBuild
@@ -0,0 +1,124 @@
+#!/bin/bash
+
+# Slackware build script for mesen-x
+
+# Copyright 2022-2023 Steven Voges <Oregon, USA>
+# All rights reserved.
+#
+# Redistribution and use of this script, with or without modification, is
+# permitted provided that the following conditions are met:
+#
+# 1. Redistributions of this script must retain the above copyright
+# notice, this list of conditions and the following disclaimer.
+#
+# THIS SOFTWARE IS PROVIDED BY THE AUTHOR "AS IS" AND ANY EXPRESS OR IMPLIED
+# WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE IMPLIED WARRANTIES OF
+# MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE ARE DISCLAIMED. IN NO
+# EVENT SHALL THE AUTHOR BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL,
+# SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT LIMITED TO,
+# PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, DATA, OR PROFITS;
+# OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY,
+# WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR
+# OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF THIS SOFTWARE, EVEN IF
+# ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
+
+cd $(dirname $0) ; CWD=$(pwd)
+
+PRGNAM=mesen-x
+SRCNAM=Mesen-X
+VERSION=${VERSION:-0.9.9.3364}
+SRCVER=${SRCVER:-9760d07474881588051d620b3c230bcdf5be08ec}
+MESENPLATFORM=${MESENPLATFORM:-x64}
+LIBRETRO=${LIBRETRO:-no}
+BUILD=${BUILD:-1}
+TAG=${TAG:-_SBo}
+PKGTYPE=${PKGTYPE:-tgz}
+
+if [ -z "$ARCH" ]; then
+ case "$( uname -m )" in
+ i?86) ARCH=i586 ;;
+ arm*) ARCH=arm ;;
+ *) ARCH=$( uname -m ) ;;
+ esac
+fi
+
+if [ ! -z "${PRINT_PACKAGE_NAME}" ]; then
+ echo "$PRGNAM-$VERSION-$ARCH-$BUILD$TAG.$PKGTYPE"
+ exit 0
+fi
+
+TMP=${TMP:-/tmp/SBo}
+PKG=$TMP/package-$PRGNAM
+OUTPUT=${OUTPUT:-/tmp}
+
+if [ "$ARCH" = "i586" ]; then
+ SLKCFLAGS="-O2 -march=i586 -mtune=i686"
+ LIBDIRSUFFIX=""
+ MESENPLATFORM="x86"
+elif [ "$ARCH" = "i686" ]; then
+ SLKCFLAGS="-O2 -march=i686 -mtune=i686"
+ LIBDIRSUFFIX=""
+ MESENPLATFORM="x86"
+elif [ "$ARCH" = "x86_64" ]; then
+ SLKCFLAGS="-O2 -fPIC"
+ LIBDIRSUFFIX="64"
+ MESENPLATFORM="x64"
+else
+ SLKCFLAGS="-O2"
+ LIBDIRSUFFIX=""
+ MESENPLATFORM="x86"
+fi
+
+set -e
+
+rm -rf $PKG
+mkdir -p $TMP $PKG $OUTPUT
+cd $TMP
+rm -rf $SRCNAM-$SRCVER
+tar xvf $CWD/$SRCNAM-$SRCVER.tar.gz
+cd $SRCNAM-$SRCVER
+chown -R root:root .
+find -L . \
+ \( -perm 777 -o -perm 775 -o -perm 750 -o -perm 711 -o -perm 555 \
+ -o -perm 511 \) -exec chmod 755 {} \; -o \
+ \( -perm 666 -o -perm 664 -o -perm 640 -o -perm 600 -o -perm 444 \
+ -o -perm 440 -o -perm 400 \) -exec chmod 644 {} \;
+
+export CC=clang
+export CXX=clang++
+export CFLAGS="$SLKCFLAGS"
+ LTO=true \
+ MESENPLATFORM=$MESENPLATFORM \
+ make
+ install -Dm755 bin/$MESENPLATFORM/Release/Mesen.exe $PKG/usr/bin/$SRCNAM
+ install -Dm755 $CWD/$PRGNAM $PKG/usr/bin/$PRGNAM
+ install -Dm644 InteropDLL/obj.$MESENPLATFORM/libMesenCore.$MESENPLATFORM.dll \
+ $PKG/usr/lib$LIBDIRSUFFIX/libMesenCore.dll
+ install -Dm644 $CWD/$PRGNAM.desktop $PKG/usr/share/applications/$PRGNAM.desktop
+ install -Dm644 GUI.NET/Resources/MesenIconSmall.png $PKG/usr/share/icons/hicolor/16x16/apps/$PRGNAM.png
+ install -Dm644 GUI.NET/Resources/MesenIconMedium.png $PKG/usr/share/icons/hicolor/32x32/apps/$PRGNAM.png
+ install -Dm644 GUI.NET/Resources/MesenIcon.png $PKG/usr/share/icons/hicolor/64x64/apps/$PRGNAM.png
+ chmod 755 $PKG/usr/lib$LIBDIRSUFFIX/libMesenCore.dll
+if [ $LIBRETRO = "yes" ]; then
+ cd Libretro
+ make
+ install -Dm755 Libretro/mesen_libretro.so $PKG/usr/lib$LIBDIRSUFFIX/libretro/${PRGNAM}_libretro.so
+ install -Dm644 $CWD/${PRGNAM}_libretro.info.in $PKG/usr/lib$LIBDIRSUFFIX/libretro/info/${PRGNAM}_libretro.info
+ cd ..
+fi
+
+find $PKG -print0 | xargs -0 file | grep -e "executable" -e "shared object" | grep ELF \
+ | cut -f 1 -d : | xargs strip --strip-unneeded 2> /dev/null || true
+
+mkdir -p $PKG/usr/doc/$PRGNAM-$VERSION
+cp -a \
+ LICENSE README.md \
+ $PKG/usr/doc/$PRGNAM-$VERSION
+cat $CWD/$PRGNAM.SlackBuild > $PKG/usr/doc/$PRGNAM-$VERSION/$PRGNAM.SlackBuild
+
+mkdir -p $PKG/install
+cat $CWD/slack-desc > $PKG/install/slack-desc
+cat $CWD/doinst.sh > $PKG/install/doinst.sh
+
+cd $PKG
+/sbin/makepkg -l y -c n $OUTPUT/$PRGNAM-$VERSION-$ARCH-$BUILD$TAG.$PKGTYPE
diff --git a/games/mesen-x/mesen-x.desktop b/games/mesen-x/mesen-x.desktop
new file mode 100644
index 0000000000..2305359fa9
--- /dev/null
+++ b/games/mesen-x/mesen-x.desktop
@@ -0,0 +1,8 @@
+[Desktop Entry]
+Type=Application
+Name=Mesen-X
+GenericName=Famicom/NES Emulator
+Icon=mesen-x
+Exec=/usr/bin/mesen-x %F
+Terminal=false
+Categories=Game;
diff --git a/games/mesen-x/mesen-x.info b/games/mesen-x/mesen-x.info
new file mode 100644
index 0000000000..60a68106c8
--- /dev/null
+++ b/games/mesen-x/mesen-x.info
@@ -0,0 +1,10 @@
+PRGNAM="mesen-x"
+VERSION="0.9.9.3364"
+HOMEPAGE="https://www.mesen.ca"
+DOWNLOAD="https://github.com/NovaSquirrel/Mesen-X/archive/9760d07474881588051d620b3c230bcdf5be08ec/Mesen-X-9760d07474881588051d620b3c230bcdf5be08ec.tar.gz"
+MD5SUM="3803c949b9eef45f4900a8d257e60fb5"
+DOWNLOAD_x86_64=""
+MD5SUM_x86_64=""
+REQUIRES="mono"
+MAINTAINER="Steven Voges"
+EMAIL="svoges.sbo@gmail.com"
diff --git a/games/mesen-x/mesen-x_libretro.info.in b/games/mesen-x/mesen-x_libretro.info.in
new file mode 100644
index 0000000000..b004791e9f
--- /dev/null
+++ b/games/mesen-x/mesen-x_libretro.info.in
@@ -0,0 +1,39 @@
+# Software Information
+display_name = "Nintendo - NES / Famicom (Mesen-X)"
+authors = "M. Bibaud (aka Sour)|NovaSquirrel"
+supported_extensions = "nes|fds|unf|unif"
+corename = "Mesen-X"
+license = "GPLv3"
+permissions = ""
+display_version = "0.9.9-20230711_e49165c"
+categories = "Emulator"
+
+# Hardware Information
+manufacturer = "Nintendo"
+systemname = "Nintendo Entertainment System"
+systemid = "nes"
+
+# Libretro Features
+supports_no_game = "false"
+savestate = "true"
+savestate_features = "deterministic"
+cheats = "true"
+input_descriptors = "true"
+memory_descriptors = "true"
+libretro_saves = "true"
+core_options = "true"
+core_options_version = "1.0"
+load_subsystem = "false"
+hw_render = "false"
+needs_fullpath = "false"
+disk_control = "false"
+database = "Nintendo - Nintendo Entertainment System|Nintendo - Family Computer Disk System"
+
+# Firmware / BIOS
+firmware_count = 1
+firmware0_desc = "disksys.rom (Family Computer Disk System BIOS)"
+firmware0_path = "disksys.rom"
+firmware0_opt = "true"
+notes = "(!) disksys.rom (md5): ca30b50f880eb660a320674ed365ef7a|Press Retropad R1 to switch disk side.|HD Packs go in %system%/HdPacks/%game_name%|Custom palette in %system%/MesenPalette.pal"
+
+description = "Mesen a relatively new but highly accurate NES emulator. With great accuracy comes great resource requirements (relative to other NES emulators, at least), so this core is not a great choice for weak mobile devices or other low-power/embedded platforms. However, it is the best choice for users who seek the most accurate reproduction of the NES hardware. Mesen also supports some fun enhancements, such as HD sprite replacement packs."
diff --git a/games/mesen-x/slack-desc b/games/mesen-x/slack-desc
new file mode 100644
index 0000000000..d83db9b130
--- /dev/null
+++ b/games/mesen-x/slack-desc
@@ -0,0 +1,19 @@
+# HOW TO EDIT THIS FILE:
+# The "handy ruler" below makes it easier to edit a package description.
+# Line up the first '|' above the ':' following the base package name, and
+# the '|' on the right side marks the last column you can put a character in.
+# You must make exactly 11 lines for the formatting to be correct. It's also
+# customary to leave one space after the ':' except on otherwise blank lines.
+
+ |-----handy-ruler------------------------------------------------------|
+mesen-x: mesen-x (NES/Famicom Emulator)
+mesen-x:
+mesen-x: Mesen X is a cross-platform (Windows & Linux) NES/Famicom emulator
+mesen-x: built in C++ and C#.
+mesen-x:
+mesen-x: https://www.mesen.ca
+mesen-x:
+mesen-x:
+mesen-x:
+mesen-x:
+mesen-x:
diff --git a/games/mfe/mfe.SlackBuild b/games/mfe/mfe.SlackBuild
index 00e9c2f0ee..d25268bb66 100644
--- a/games/mfe/mfe.SlackBuild
+++ b/games/mfe/mfe.SlackBuild
@@ -1,29 +1,39 @@
-#!/bin/sh
+#!/bin/bash
# Slackware build script for mfe
# Written by Luis Henrique <lmello.009@gmail.com>
+cd $(dirname $0) ; CWD=$(pwd)
+
PRGNAM=mfe
VERSION=${VERSION:-0.1.7}
BUILD=${BUILD:-1}
TAG=${TAG:-_SBo}
+PKGTYPE=${PKGTYPE:-tgz}
if [ -z "$ARCH" ]; then
case "$( uname -m )" in
- i?86) ARCH=i486 ;;
+ i?86) ARCH=i586 ;;
arm*) ARCH=arm ;;
*) ARCH=$( uname -m ) ;;
esac
fi
-CWD=$(pwd)
+# If the variable PRINT_PACKAGE_NAME is set, then this script will report what
+# the name of the created package would be, and then exit. This information
+# could be useful to other scripts.
+if [ ! -z "${PRINT_PACKAGE_NAME}" ]; then
+ echo "$PRGNAM-$VERSION-$ARCH-$BUILD$TAG.$PKGTYPE"
+ exit 0
+fi
+
TMP=${TMP:-/tmp/SBo}
PKG=$TMP/package-$PRGNAM
OUTPUT=${OUTPUT:-/tmp}
-if [ "$ARCH" = "i486" ]; then
- SLKCFLAGS="-O2 -march=i486 -mtune=i686"
+if [ "$ARCH" = "i586" ]; then
+ SLKCFLAGS="-O2 -march=i586 -mtune=i686"
elif [ "$ARCH" = "i686" ]; then
SLKCFLAGS="-O2 -march=i686 -mtune=i686"
elif [ "$ARCH" = "x86_64" ]; then
@@ -58,4 +68,4 @@ cat $CWD/slack-desc > $PKG/install/slack-desc
cat $CWD/doinst.sh > $PKG/install/doinst.sh
cd $PKG
-/sbin/makepkg -l y -c n $OUTPUT/$PRGNAM-$VERSION-$ARCH-$BUILD$TAG.${PKGTYPE:-tgz}
+/sbin/makepkg -l y -c n $OUTPUT/$PRGNAM-$VERSION-$ARCH-$BUILD$TAG.$PKGTYPE
diff --git a/games/mgba/README b/games/mgba/README
index 20c471d19e..58dcaf9ff0 100644
--- a/games/mgba/README
+++ b/games/mgba/README
@@ -1,15 +1,3 @@
mGBA is an emulator for running Game Boy Advance games. It aims to be
faster and more accurate than many existing Game Boy Advance
emulators, as well as adding features that other emulators lack.
-
-The following optional dependencies will be automatically detected.
-
-* SDL2
-* libedit (for the command-line debugger)
-* ffmpeg
-* Qt5
-
-If you have Qt 5, then you can build the standalone application with a
-GUI:
-
- QT=on ./mGBA.SlackBuild
diff --git a/games/mgba/doinst.sh b/games/mgba/doinst.sh
index 4110f5514d..625ced33d1 100644
--- a/games/mgba/doinst.sh
+++ b/games/mgba/doinst.sh
@@ -3,3 +3,7 @@ if [ -e usr/share/icons/hicolor/icon-theme.cache ]; then
/usr/bin/gtk-update-icon-cache -f usr/share/icons/hicolor >/dev/null 2>&1
fi
fi
+
+if [ -x /usr/bin/update-desktop-database ]; then
+ /usr/bin/update-desktop-database -q usr/share/applications >/dev/null 2>&1
+fi
diff --git a/games/mgba/mgba.SlackBuild b/games/mgba/mgba.SlackBuild
index 302f61f1b5..21b682123d 100644
--- a/games/mgba/mgba.SlackBuild
+++ b/games/mgba/mgba.SlackBuild
@@ -1,9 +1,9 @@
-#!/bin/sh
+#!/bin/bash
# Slackware build script for mgba
# Copyright 2015 Dugan Chen Canada
-# Copyright 2019-2020 Ruoh-Shoei LIN
+# Copyright 2019-2022 Ruoh-Shoei LIN
# All rights reserved.
#
# Redistribution and use of this script, with or without modification, is
@@ -23,10 +23,13 @@
# OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF THIS SOFTWARE, EVEN IF
# ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
+cd $(dirname $0) ; CWD=$(pwd)
+
PRGNAM=mgba
-VERSION=${VERSION:-0.8.3}
+VERSION=${VERSION:-0.10.2}
BUILD=${BUILD:-1}
TAG=${TAG:-_SBo}
+PKGTYPE=${PKGTYPE:-tgz}
if [ -z "$ARCH" ]; then
case "$( uname -m )" in
@@ -36,14 +39,18 @@ if [ -z "$ARCH" ]; then
esac
fi
-CWD=$(pwd)
+# If the variable PRINT_PACKAGE_NAME is set, then this script will report what
+# the name of the created package would be, and then exit. This information
+# could be useful to other scripts.
+if [ ! -z "${PRINT_PACKAGE_NAME}" ]; then
+ echo "$PRGNAM-$VERSION-$ARCH-$BUILD$TAG.$PKGTYPE"
+ exit 0
+fi
+
TMP=${TMP:-/tmp/SBo}
PKG=$TMP/package-$PRGNAM
OUTPUT=${OUTPUT:-/tmp}
-# Set to on to build the Qt GUI. Requires Qt 5.
-QT=${QT:-off}
-
if [ "$ARCH" = "i586" ]; then
SLKCFLAGS="-O2 -march=i586 -mtune=i686"
LIBDIRSUFFIX=""
@@ -83,8 +90,10 @@ cd build
-DCMAKE_INSTALL_DOCDIR=doc/$PRGNAM-$VERSION \
-DCMAKE_INSTALL_LIBDIR:PATH=lib$LIBDIRSUFFIX \
-DMANDIR=man \
- -DUSE_LIBZIP=OFF \
- -DBUILD_QT=${QT} \
+ -DUSE_DISCORD_RPC=OFF \
+ -DENABLE_SCRIPTING=OFF \
+ -DBUILD_UPDATER=OFF \
+ -DBUILD_QT=${QT:-on} \
-DCMAKE_BUILD_TYPE=Release ..
make
make install DESTDIR=$PKG
@@ -97,7 +106,7 @@ find $PKG/usr/man -type f -exec gzip -9 {} \;
for i in $( find $PKG/usr/man -type l ) ; do ln -s $( readlink $i ).gz $i.gz ; rm $i ; done
mkdir -p $PKG/usr/doc/$PRGNAM-$VERSION
-cp CHANGES LICENSE CONTRIBUTING.md PORTING.md README.md README_DE.md \
+cp CONTRIBUTING.md PORTING.md \
$PKG/usr/doc/$PRGNAM-$VERSION
cat $CWD/$PRGNAM.SlackBuild > $PKG/usr/doc/$PRGNAM-$VERSION/$PRGNAM.SlackBuild
@@ -106,4 +115,4 @@ cat $CWD/slack-desc > $PKG/install/slack-desc
cat $CWD/doinst.sh > $PKG/install/doinst.sh
cd $PKG
-/sbin/makepkg -l y -c n $OUTPUT/$PRGNAM-$VERSION-$ARCH-$BUILD$TAG.${PKGTYPE:-tgz}
+/sbin/makepkg -l y -c n $OUTPUT/$PRGNAM-$VERSION-$ARCH-$BUILD$TAG.$PKGTYPE
diff --git a/games/mgba/mgba.info b/games/mgba/mgba.info
index 2827f7ead8..ffdda4c9f4 100644
--- a/games/mgba/mgba.info
+++ b/games/mgba/mgba.info
@@ -1,10 +1,10 @@
PRGNAM="mgba"
-VERSION="0.8.3"
+VERSION="0.10.2"
HOMEPAGE="https://mgba.io/"
-DOWNLOAD="https://github.com/mgba-emu/mgba/archive/0.8.3/mgba-0.8.3.tar.gz"
-MD5SUM="1143c7d96b7dcd032db10e7407f68761"
+DOWNLOAD="https://github.com/mgba-emu/mgba/archive/0.10.2/mgba-0.10.2.tar.gz"
+MD5SUM="0e2e4916088a1903efd42c58aa0818a9"
DOWNLOAD_x86_64=""
MD5SUM_x86_64=""
REQUIRES=""
MAINTAINER="Ruoh-Shoei LIN"
-EMAIL="lin[dot]ruohshoei [at] gmail [dot] com"
+EMAIL="lin.ruohshoei+sbo at gmail.com"
diff --git a/games/micropolis/README b/games/micropolis/README
index 0e037e8954..4daf549124 100644
--- a/games/micropolis/README
+++ b/games/micropolis/README
@@ -1,23 +1,25 @@
+micropolis: micropolis (GPL'd original SimCity game)
+
Micropolis is a simulation game based on the original source code of
SimCity, donated to the One Laptop Per Child project by Electronic
-Arts under the GPL v3. Micropolis is developed by Don Hopkins, one of
+Arts under the GPL v3. Micropolis is developed by Don Hopkins, one of
the game's original authors.
-NOTES: This SlackBuild is for a git snapshot dated 2010-04-18 obtained
-from: http://git.zerfleddert.de/cgi-bin/gitweb.cgi/micropolis which is
-a community-maintained version with several important patches and
+NOTE: This SlackBuild is for a git snapshot dated 2010-04-18 obtained
+from: http://git.zerfleddert.de/cgi-bin/gitweb.cgi/micropolis which
+is a community-maintained version with several important patches and
bugfixes.
Additionally, please note that the first startup screen may be too
-large for monitors with a lower resolution. Unfortunately, this is a
-bug that has not been fixed yet. However, by using ALT-left mouse
+large for monitors with a lower resolution. Unfortunately, this is a
+bug that has not been fixed yet. However, by using ALT-left mouse
button, one can move the startup screen around enough to see
-everything. Once the game starts, the resolution should scale down
+everything. Once the game starts, the resolution should scale down
correctly to fit within your monitor.
Finally, the original source for the OLPC version of this game removed
-the airplane crash disaster. This has been added back in to the
+the airplane crash disaster. This has been added back in to the
community-maintained version from which this package is built, and
-this SlackBuild enables it by default. If you wish to disable the
+this SlackBuild enables it by default. If you wish to disable the
airplane crash disaster, please see the SlackBuild, as there is a line
that can be commented out to disable it.
diff --git a/games/micropolis/doinst.sh b/games/micropolis/doinst.sh
index e4e6459838..9424ce43ff 100644
--- a/games/micropolis/doinst.sh
+++ b/games/micropolis/doinst.sh
@@ -6,3 +6,8 @@ if [ -x /usr/bin/update-mime-database ]; then
/usr/bin/update-mime-database usr/share/mime >/dev/null 2>&1
fi
+if [ -e usr/share/icons/hicolor/icon-theme.cache ]; then
+ if [ -x /usr/bin/gtk-update-icon-cache ]; then
+ /usr/bin/gtk-update-icon-cache usr/share/icons/hicolor >/dev/null 2>&1
+ fi
+fi
diff --git a/games/micropolis/micropolis.SlackBuild b/games/micropolis/micropolis.SlackBuild
index 2f74efd4ae..bd09100122 100644
--- a/games/micropolis/micropolis.SlackBuild
+++ b/games/micropolis/micropolis.SlackBuild
@@ -1,11 +1,11 @@
-#!/bin/sh
+#!/bin/bash
# Slackware build script for Micropolis
-# Now maintained by B. Watson <yalhcru@gmail.com>, please don't bother
+# Now maintained by B. Watson <urchlay@slackware.uk>, please don't bother
# Chess with questions about this build (bother me instead)
-# Copyright 2008-2009 Chess Griffin <chess@chessgriffin.com>
+# Copyright 2008-2009 Chess Griffin <email removed>
# All rights reserved.
#
# Redistribution and use of this script, with or without modification, is
@@ -25,10 +25,16 @@
# OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF THIS SOFTWARE, EVEN IF
# ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
+# 20230107 bkw: BUILD=5, fix doinst.sh.
+# 20211022 bkw: BUILD=4, new-style icons.
+
+cd $(dirname $0) ; CWD=$(pwd)
+
PRGNAM=micropolis
VERSION=${VERSION:-20100418}
-BUILD=${BUILD:-3}
+BUILD=${BUILD:-5}
TAG=${TAG:-_SBo}
+PKGTYPE=${PKGTYPE:-tgz}
if [ -z "$ARCH" ]; then
case "$( uname -m )" in
@@ -38,12 +44,18 @@ if [ -z "$ARCH" ]; then
esac
fi
-CWD=$(pwd)
+if [ ! -z "${PRINT_PACKAGE_NAME}" ]; then
+ echo "$PRGNAM-$VERSION-$ARCH-$BUILD$TAG.$PKGTYPE"
+ exit 0
+fi
+
TMP=${TMP:-/tmp/SBo}
PKG=$TMP/package-$PRGNAM
OUTPUT=${OUTPUT:-/tmp}
DOCS="COPYING README"
+DOCDIR=/usr/doc/$PRGNAM-$VERSION
+PKGDOC=$PKG/$DOCDIR
if [ "$ARCH" = "i586" ]; then
SLKCFLAGS="-O2 -march=i586 -mtune=i686"
@@ -65,11 +77,8 @@ rm -rf $PRGNAM
tar xvf $CWD/$PRGNAM-$VERSION.tar.bz2
cd $PRGNAM
chown -R root:root .
-find -L . \
- \( -perm 777 -o -perm 775 -o -perm 750 -o -perm 711 -o -perm 555 -o -perm 511 \) \
- -exec chmod 755 {} \; -o \
- \( -perm 666 -o -perm 664 -o -perm 600 -o -perm 444 -o -perm 440 -o -perm 400 \) \
- -exec chmod 644 {} \;
+find -L . -perm /111 -a \! -perm 755 -a -exec chmod 755 {} \+ -o \
+ \! -perm /111 -a \! -perm 644 -a -exec chmod 644 {} \+
# Force our CFLAGS
find . -iname \*makefile\* -o -iname \*.mk \
@@ -78,24 +87,48 @@ find . -iname \*makefile\* -o -iname \*.mk \
# comment out the next line to disable the airplane crash disaster
sed -i -e 's/-DNO_AIRCRASH//' src/sim/makefile
-make -j1 PREFIX=/usr DOCDIR=/usr/doc/$PRGNAM-$VERSION SLKCFLAGS="$SLKCFLAGS"
-make -j1 install PREFIX=/usr DOCDIR=/usr/doc/$PRGNAM-$VERSION DESTDIR=$PKG
+run_make() {
+ make -j1 \
+ PREFIX=/usr \
+ DOCDIR=$DOCDIR \
+ DATADIR=/usr/share/games/$PRGNAM \
+ BINDIR=/usr/games \
+ SLKCFLAGS="$SLKCFLAGS -DTCL_IEEE_FP_MATH" \
+ DESTDIR=$PKG \
+ "$@"
+}
+
+# 20211022 bkw: Makefile already strips the one binary (sim).
+run_make
+run_make install
+
+# 20211022 bkw: Upstream's icon is an oddball size: 58x67. This icon
+# was made by cropping the bottom 3 lines from the original, making
+# the grey background color transparent, and centering it in a 64x64
+# canvas.
+for px in 16 32 48 64; do
+ size=${px}x${px}
+ dir=$PKG/usr/share/icons/hicolor/$size/apps
+ mkdir -p $dir
+ convert -resize $size $CWD/$PRGNAM.png $dir/$PRGNAM.png
+done
+
+rm $PKG/usr/share/pixmaps/*
+ln -s ../icons/hicolor/48x48/apps/$PRGNAM.png $PKG/usr/share/pixmaps/$PRGNAM.png
# Make .desktop file pass desktop-file-validate
-sed -i -e \
- '/^Encoding/d' -e 's/\.png$//' \
- $PKG/usr/share/applications/$PRGNAM.desktop
-
-find $PKG | xargs file | grep -e "executable" -e "shared object" | grep ELF \
- | cut -f 1 -d : | xargs strip --strip-unneeded 2> /dev/null || true
+sed -i -e '/^Encoding/d' \
+ -e 's/\.png$//' \
+ -e '/^Exec=/s,=,=/usr/games/,' \
+ $PKG/usr/share/applications/$PRGNAM.desktop
-mkdir -p $PKG/usr/doc/$PRGNAM-$VERSION
-cp -a $DOCS $PKG/usr/doc/$PRGNAM-$VERSION
-cat $CWD/$PRGNAM.SlackBuild > $PKG/usr/doc/$PRGNAM-$VERSION/$PRGNAM.SlackBuild
+mkdir -p $PKGDOC
+cp -a $DOCS $PKGDOC
+cat $CWD/$PRGNAM.SlackBuild > $PKGDOC/$PRGNAM.SlackBuild
mkdir -p $PKG/install
cat $CWD/slack-desc > $PKG/install/slack-desc
cat $CWD/doinst.sh > $PKG/install/doinst.sh
cd $PKG
-/sbin/makepkg -l y -c n $OUTPUT/$PRGNAM-$VERSION-$ARCH-$BUILD$TAG.${PKGTYPE:-tgz}
+/sbin/makepkg -l y -c n $OUTPUT/$PRGNAM-$VERSION-$ARCH-$BUILD$TAG.$PKGTYPE
diff --git a/games/micropolis/micropolis.info b/games/micropolis/micropolis.info
index 47fdb36cae..421105662d 100644
--- a/games/micropolis/micropolis.info
+++ b/games/micropolis/micropolis.info
@@ -1,10 +1,10 @@
PRGNAM="micropolis"
VERSION="20100418"
-HOMEPAGE="http://www.donhopkins.com/home/micropolis"
+HOMEPAGE="https://www.donhopkins.com/home/micropolis/"
DOWNLOAD="https://slackware.uk/~urchlay/src/micropolis-20100418.tar.bz2"
MD5SUM="df7b073133991bd1a9b04db60b2ca8a7"
DOWNLOAD_x86_64=""
MD5SUM_x86_64=""
REQUIRES=""
MAINTAINER="B. Watson"
-EMAIL="yalhcru@gmail.com"
+EMAIL="urchlay@slackware.uk"
diff --git a/games/micropolis/micropolis.png b/games/micropolis/micropolis.png
new file mode 100644
index 0000000000..d5f74e56be
--- /dev/null
+++ b/games/micropolis/micropolis.png
Binary files differ
diff --git a/games/micropolis/slack-desc b/games/micropolis/slack-desc
index 1b35835a8e..88551792f0 100644
--- a/games/micropolis/slack-desc
+++ b/games/micropolis/slack-desc
@@ -6,7 +6,7 @@
# customary to leave one space after the ':' except on otherwise blank lines.
|-----handy-ruler------------------------------------------------------|
-micropolis: micropolis (GPL'd original SimCity)
+micropolis: micropolis (GPL'd original SimCity game)
micropolis:
micropolis: Micropolis is a simulation game based on the original source code
micropolis: of SimCity, donated to the One Laptop Per Child (OLPC) project by
diff --git a/games/minecraft/README b/games/minecraft/README
new file mode 100644
index 0000000000..81e7376fb4
--- /dev/null
+++ b/games/minecraft/README
@@ -0,0 +1,2 @@
+The game of Minecraft is sold for $29.99,
+although there is a free 90 minute single-player trial.
diff --git a/games/minecraft/doinst.sh b/games/minecraft/doinst.sh
new file mode 100644
index 0000000000..5fb28930db
--- /dev/null
+++ b/games/minecraft/doinst.sh
@@ -0,0 +1,3 @@
+if [ -x /usr/bin/update-desktop-database ]; then
+ /usr/bin/update-desktop-database -q usr/share/applications >/dev/null 2>&1
+fi
diff --git a/games/minecraft/minecraft b/games/minecraft/minecraft
new file mode 100644
index 0000000000..a56a767b30
--- /dev/null
+++ b/games/minecraft/minecraft
@@ -0,0 +1,2 @@
+#!/usr/bin/bash
+/opt/minecraft-launcher/minecraft-launcher
diff --git a/games/minecraft/minecraft.SlackBuild b/games/minecraft/minecraft.SlackBuild
new file mode 100644
index 0000000000..5ad04a2cbf
--- /dev/null
+++ b/games/minecraft/minecraft.SlackBuild
@@ -0,0 +1,101 @@
+#!/bin/bash
+
+# Slackware build script for minecraft
+
+# Copyright 2022, David Ferrone, RI USA
+# All rights reserved.
+#
+# Redistribution and use of this script, with or without modification, is
+# permitted provided that the following conditions are met:
+#
+# 1. Redistributions of this script must retain the above copyright
+# notice, this list of conditions and the following disclaimer.
+#
+# THIS SOFTWARE IS PROVIDED BY THE AUTHOR "AS IS" AND ANY EXPRESS OR IMPLIED
+# WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE IMPLIED WARRANTIES OF
+# MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE ARE DISCLAIMED. IN NO
+# EVENT SHALL THE AUTHOR BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL,
+# SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT LIMITED TO,
+# PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, DATA, OR PROFITS;
+# OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY,
+# WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR
+# OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF THIS SOFTWARE, EVEN IF
+# ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
+
+
+cd $(dirname $0) ; CWD=$(pwd)
+
+PRGNAM=minecraft
+SRCNAM=Minecraft
+DIRNAM=minecraft-launcher
+
+VERSION=${VERSION:-1.19.2}
+BUILD=${BUILD:-1}
+TAG=${TAG:-_SBo}
+PKGTYPE=${PKGTYPE:-tgz}
+
+if [ -z "$ARCH" ]; then
+ case "$( uname -m )" in
+ i?86) ARCH=i586 ;;
+ arm*) ARCH=arm ;;
+ *) ARCH=$( uname -m ) ;;
+ esac
+fi
+
+if [ ! -z "${PRINT_PACKAGE_NAME}" ]; then
+ echo "$PRGNAM-$VERSION-$ARCH-$BUILD$TAG.$PKGTYPE"
+ exit 0
+fi
+
+TMP=${TMP:-/tmp/SBo}
+PKG=$TMP/package-$PRGNAM
+OUTPUT=${OUTPUT:-/tmp}
+
+if [ "$ARCH" = "i586" ]; then
+ SLKCFLAGS="-O2 -march=i586 -mtune=i686"
+ LIBDIRSUFFIX=""
+elif [ "$ARCH" = "i686" ]; then
+ SLKCFLAGS="-O2 -march=i686 -mtune=i686"
+ LIBDIRSUFFIX=""
+elif [ "$ARCH" = "x86_64" ]; then
+ SLKCFLAGS="-O2 -fPIC"
+ LIBDIRSUFFIX="64"
+else
+ SLKCFLAGS="-O2"
+ LIBDIRSUFFIX=""
+fi
+
+set -e
+
+rm -rf $PKG
+mkdir -p $TMP $PKG $OUTPUT
+cd $TMP
+rm -rf $PRGNAM-$VERSION
+
+tar xvf $CWD/$SRCNAM.tar.gz
+cd $DIRNAM
+
+mkdir $PKG/opt
+cd ..
+mv $DIRNAM $PKG/opt/$DIRNAM
+
+chown -R root:root .
+find -L . \
+ \( -perm 777 -o -perm 775 -o -perm 750 -o -perm 711 -o -perm 555 \
+ -o -perm 511 \) -exec chmod 755 {} \; -o \
+ \( -perm 666 -o -perm 664 -o -perm 640 -o -perm 600 -o -perm 444 \
+ -o -perm 440 -o -perm 400 \) -exec chmod 644 {} \;
+
+install -D -m 0755 $CWD/$PRGNAM -t $PKG/usr/bin/
+install -D -m 0644 $CWD/$PRGNAM.desktop -t $PKG/usr/share/applications/
+install -D -m 0644 $CWD/$PRGNAM.png -t $PKG/usr/share/pixmaps/
+
+mkdir -p $PKG/usr/doc/$PRGNAM-$VERSION
+cat $CWD/$PRGNAM.SlackBuild > $PKG/usr/doc/$PRGNAM-$VERSION/$PRGNAM.SlackBuild
+
+mkdir -p $PKG/install
+cat $CWD/slack-desc > $PKG/install/slack-desc
+cat $CWD/doinst.sh > $PKG/install/doinst.sh
+
+cd $PKG
+/sbin/makepkg -l y -c n $OUTPUT/$PRGNAM-$VERSION-$ARCH-$BUILD$TAG.$PKGTYPE
diff --git a/games/minecraft/minecraft.desktop b/games/minecraft/minecraft.desktop
new file mode 100644
index 0000000000..4c482a0183
--- /dev/null
+++ b/games/minecraft/minecraft.desktop
@@ -0,0 +1,6 @@
+[Desktop Entry]
+Type=Application
+Terminal=false
+Exec=/usr/bin/minecraft
+Name=Minecraft
+Icon=minecraft
diff --git a/games/minecraft/minecraft.info b/games/minecraft/minecraft.info
new file mode 100644
index 0000000000..bc3e5926f9
--- /dev/null
+++ b/games/minecraft/minecraft.info
@@ -0,0 +1,10 @@
+PRGNAM="minecraft"
+VERSION="1.19.2"
+HOMEPAGE="https://mojang.com"
+DOWNLOAD="https://launcher.mojang.com/download/Minecraft.tar.gz"
+MD5SUM="34e8711c41817ed3361338f3fe81e6af"
+DOWNLOAD_x86_64=""
+MD5SUM_x86_64=""
+REQUIRES=""
+MAINTAINER="David Ferrone"
+EMAIL="zapwai@gmail.com"
diff --git a/games/minecraft/minecraft.png b/games/minecraft/minecraft.png
new file mode 100644
index 0000000000..3db59b74b6
--- /dev/null
+++ b/games/minecraft/minecraft.png
Binary files differ
diff --git a/games/minecraft/slack-desc b/games/minecraft/slack-desc
new file mode 100644
index 0000000000..ee518b9b2e
--- /dev/null
+++ b/games/minecraft/slack-desc
@@ -0,0 +1,19 @@
+# HOW TO EDIT THIS FILE:
+# The "handy ruler" below makes it easier to edit a package description.
+# Line up the first '|' above the ':' following the base package name, and
+# the '|' on the right side marks the last column you can put a character in.
+# You must make exactly 11 lines for the formatting to be correct. It's also
+# customary to leave one space after the ':' except on otherwise blank lines.
+
+ |-----handy-ruler------------------------------------------------------|
+minecraft: minecraft (The 3D Sandbox Crafting Game)
+minecraft:
+minecraft: Mojang's popular survival game.
+minecraft: https://www.minecraft.net
+minecraft:
+minecraft:
+minecraft:
+minecraft:
+minecraft:
+minecraft:
+minecraft:
diff --git a/games/minetest/minetest.SlackBuild b/games/minetest/minetest.SlackBuild
index cbd6ecaa57..cbccd8ebd2 100644
--- a/games/minetest/minetest.SlackBuild
+++ b/games/minetest/minetest.SlackBuild
@@ -1,8 +1,8 @@
-#!/bin/sh
+#!/bin/bash
# Slackware build script for minetest
-# Copyright 2014-2020 Dimitris Zlatanidis Orestiada, Greece
+# Copyright 2014-2023 Dimitris Zlatanidis Orestiada, Greece
# All rights reserved.
#
# Redistribution and use of this script, with or without modification, is
@@ -22,10 +22,13 @@
# OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF THIS SOFTWARE, EVEN IF
# ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
+cd $(dirname $0) ; CWD=$(pwd)
+
PRGNAM=minetest
-VERSION=${VERSION:-5.3.0}
+VERSION=${VERSION:-5.8.0}
BUILD=${BUILD:-1}
TAG=${TAG:-_SBo}
+PKGTYPE=${PKGTYPE:-tgz}
if [ -z "$ARCH" ]; then
case "$( uname -m )" in
@@ -35,7 +38,14 @@ if [ -z "$ARCH" ]; then
esac
fi
-CWD=$(pwd)
+# If the variable PRINT_PACKAGE_NAME is set, then this script will report what
+# the name of the created package would be, and then exit. This information
+# could be useful to other scripts.
+if [ ! -z "${PRINT_PACKAGE_NAME}" ]; then
+ echo "$PRGNAM-$VERSION-$ARCH-$BUILD$TAG.$PKGTYPE"
+ exit 0
+fi
+
TMP=${TMP:-/tmp/SBo}
PKG=$TMP/package-$PRGNAM
OUTPUT=${OUTPUT:-/tmp}
@@ -101,4 +111,4 @@ cat $CWD/slack-desc > $PKG/install/slack-desc
cat $CWD/doinst.sh > $PKG/install/doinst.sh
cd $PKG
-/sbin/makepkg -l y -c n $OUTPUT/$PRGNAM-$VERSION-$ARCH-$BUILD$TAG.${PKGTYPE:-tgz}
+/sbin/makepkg -l y -c n $OUTPUT/$PRGNAM-$VERSION-$ARCH-$BUILD$TAG.$PKGTYPE
diff --git a/games/minetest/minetest.info b/games/minetest/minetest.info
index 9408239159..2278eebd83 100644
--- a/games/minetest/minetest.info
+++ b/games/minetest/minetest.info
@@ -1,10 +1,10 @@
PRGNAM="minetest"
-VERSION="5.3.0"
+VERSION="5.8.0"
HOMEPAGE="http://minetest.net/"
-DOWNLOAD="https://github.com/minetest/minetest/archive/5.3.0/minetest-5.3.0.tar.gz"
-MD5SUM="858ac78e732e54b1d0d70e2f1a7026f7"
+DOWNLOAD="https://github.com/minetest/minetest/archive/5.8.0/minetest-5.8.0.tar.gz"
+MD5SUM="5b244229a9847385e7dc66610ff73f0f"
DOWNLOAD_x86_64=""
MD5SUM_x86_64=""
-REQUIRES="OpenAL irrlicht luajit jsoncpp"
+REQUIRES="irrlichtmt"
MAINTAINER="Dimitris Zlatanidis"
-EMAIL="d.zlatanidis@gmail.com"
+EMAIL="dslackw@gmail.com"
diff --git a/games/minetest_game/minetest_game.SlackBuild b/games/minetest_game/minetest_game.SlackBuild
index 38ca05409b..2510bb3225 100644
--- a/games/minetest_game/minetest_game.SlackBuild
+++ b/games/minetest_game/minetest_game.SlackBuild
@@ -1,8 +1,8 @@
-#!/bin/sh
+#!/bin/bash
# Slackware build script for minetest_game
-# Copyright 2014-2020 Dimitris Zlatanidis Orestiada, Greece
+# Copyright 2014-2024 Dimitris Zlatanidis Orestiada, Greece
# All rights reserved.
#
# Redistribution and use of this script, with or without modification, is
@@ -22,10 +22,13 @@
# OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF THIS SOFTWARE, EVEN IF
# ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
+cd $(dirname $0) ; CWD=$(pwd)
+
PRGNAM=minetest_game
-VERSION=${VERSION:-5.3.0}
-BUILD=${BUILD:-2}
+VERSION=${VERSION:-5.8.0}
+BUILD=${BUILD:-1}
TAG=${TAG:-_SBo}
+PKGTYPE=${PKGTYPE:-tgz}
if [ -z "$ARCH" ]; then
case "$( uname -m )" in
@@ -35,7 +38,14 @@ if [ -z "$ARCH" ]; then
esac
fi
-CWD=$(pwd)
+# If the variable PRINT_PACKAGE_NAME is set, then this script will report what
+# the name of the created package would be, and then exit. This information
+# could be useful to other scripts.
+if [ ! -z "${PRINT_PACKAGE_NAME}" ]; then
+ echo "$PRGNAM-$VERSION-$ARCH-$BUILD$TAG.$PKGTYPE"
+ exit 0
+fi
+
TMP=${TMP:-/tmp/SBo}
PKG=$TMP/package-$PRGNAM
OUTPUT=${OUTPUT:-/tmp}
@@ -80,4 +90,4 @@ mkdir -p $PKG/install
cat $CWD/slack-desc > $PKG/install/slack-desc
cd $PKG
-/sbin/makepkg -l y -c n $OUTPUT/$PRGNAM-$VERSION-$ARCH-$BUILD$TAG.${PKGTYPE:-tgz}
+/sbin/makepkg -l y -c n $OUTPUT/$PRGNAM-$VERSION-$ARCH-$BUILD$TAG.$PKGTYPE
diff --git a/games/minetest_game/minetest_game.info b/games/minetest_game/minetest_game.info
index 617cb32d8c..79c5a209db 100644
--- a/games/minetest_game/minetest_game.info
+++ b/games/minetest_game/minetest_game.info
@@ -1,10 +1,10 @@
PRGNAM="minetest_game"
-VERSION="5.3.0"
+VERSION="5.8.0"
HOMEPAGE="http://minetest.net/"
-DOWNLOAD="https://github.com/minetest/minetest_game/archive/5.3.0/minetest_game-5.3.0.tar.gz"
-MD5SUM="9cd86bc1119a01d93e092dbcbeca5c37"
+DOWNLOAD="https://github.com/minetest/minetest_game/archive/5.8.0/minetest_game-5.8.0.tar.gz"
+MD5SUM="77ac73cb5f63200f9db0ae3ab9bbab85"
DOWNLOAD_x86_64=""
MD5SUM_x86_64=""
REQUIRES="minetest"
MAINTAINER="Dimitris Zlatanidis"
-EMAIL="d.zlatanidis@gmail.com"
+EMAIL="dslackw@gmail.com"
diff --git a/games/mininim/doinst.sh b/games/mininim/doinst.sh
index 5fb28930db..3e5691a052 100644
--- a/games/mininim/doinst.sh
+++ b/games/mininim/doinst.sh
@@ -1,3 +1,9 @@
if [ -x /usr/bin/update-desktop-database ]; then
/usr/bin/update-desktop-database -q usr/share/applications >/dev/null 2>&1
fi
+
+if [ -e usr/share/icons/hicolor/icon-theme.cache ]; then
+ if [ -x /usr/bin/gtk-update-icon-cache ]; then
+ /usr/bin/gtk-update-icon-cache usr/share/icons/hicolor >/dev/null 2>&1
+ fi
+fi
diff --git a/games/mininim/mininim.SlackBuild b/games/mininim/mininim.SlackBuild
index 0a1bc046ab..7854b43ee9 100644
--- a/games/mininim/mininim.SlackBuild
+++ b/games/mininim/mininim.SlackBuild
@@ -1,11 +1,31 @@
-#!/bin/sh
+#!/bin/bash
# Slackware build script for mininim
-# Written by B. Watson (yalhcru@gmail.com)
+# Written by B. Watson (urchlay@slackware.uk)
# Licensed under the WTFPL. See http://www.wtfpl.net/txt/copying/ for details.
+# 20220620 bkw: no changes, but notes to myself:
+# There's a later release of mininim (200928), but I
+# can't feasibly upgrade to it for now. It requires IUP
+# https://en.wikipedia.org/wiki/IUP_(software) which we don't have
+# in our repo (but that could be added). It also requires a newer
+# gnulib, but upgrading gnulib from 20140202 to 20210102~ebaa53c
+# (as used in recent debian stable) is probably OK... Unfortunately,
+# it also requires the mininim author's own fork of allegro5. This
+# could be added to the SBo repo or built statically here... but all
+# these things require more work than it's worth just for a game that
+# already plays OK with mininim-201701122309. I'm documenting this
+# here because every 6-8 months I get the idea to upgrade this build,
+# then rediscover the reasons why I didn't upgrade it already.
+
+# 20211028 bkw: BUILD=2
+# - fix -current build.
+# - new-style icon.
+# - /usr/share/mininim => /usr/share/games/mininim.
+# - still no new release.
+
# 20201105 bkw: Minor nitpickey edits to the script, but no changes
# to the package. 201701122309 is still the latest release. The newer
# stuff from this year is "Pre-alpha" and "Pre-release".
@@ -15,10 +35,13 @@
# sdlpop. As it stands, we have both (choice is good). mininim is a lot
# more unix-friendly, easier to package.
+cd $(dirname $0) ; CWD=$(pwd)
+
PRGNAM=mininim
VERSION=${VERSION:-201701122309}
-BUILD=${BUILD:-1}
+BUILD=${BUILD:-2}
TAG=${TAG:-_SBo}
+PKGTYPE=${PKGTYPE:-tgz}
if [ -z "$ARCH" ]; then
case "$( uname -m )" in
@@ -28,7 +51,11 @@ if [ -z "$ARCH" ]; then
esac
fi
-CWD=$(pwd)
+if [ ! -z "${PRINT_PACKAGE_NAME}" ]; then
+ echo "$PRGNAM-$VERSION-$ARCH-$BUILD$TAG.$PKGTYPE"
+ exit 0
+fi
+
TMP=${TMP:-/tmp/SBo}
PKG=$TMP/package-$PRGNAM
OUTPUT=${OUTPUT:-/tmp}
@@ -56,7 +83,6 @@ rm -rf $PRGNAM-$VERSION
tar xvf $CWD/$PRGNAM-$VERSION.tar.gz
cd $PRGNAM-$VERSION
chown -R root:root .
-
find -L . -perm /111 -a \! -perm 755 -a -exec chmod 755 {} \+ -o \
\! -perm /111 -a \! -perm 644 -a -exec chmod 644 {} \+
@@ -67,6 +93,8 @@ sed -i 's,@arrow@,@arrow{}@,' doc/$PRGNAM.texi
# this takes a minute due to the gnulib stuff...
./bootstrap
+SLKCFLAGS+=" -fcommon"
+
CFLAGS="$SLKCFLAGS" \
CXXFLAGS="$SLKCFLAGS" \
./configure \
@@ -77,6 +105,7 @@ CXXFLAGS="$SLKCFLAGS" \
--localstatedir=/var \
--mandir=/usr/man \
--docdir=/usr/doc/$PRGNAM-$VERSION \
+ --datadir=/usr/share/games \
--build=$ARCH-slackware-linux
make
@@ -109,9 +138,15 @@ fi
# .desktop file written by SlackBuild author.
mkdir -p $PKG/usr/share/pixmaps $PKG/usr/share/applications
-ln -s ../$PRGNAM/data/icons/$PRGNAM.png $PKG/usr/share/pixmaps/$PRGNAM.png
cat $CWD/$PRGNAM.desktop > $PKG/usr/share/applications/$PRGNAM.desktop
+# upstream's icon (data/icons/mininim.png) is an oddball size, 24x43.
+# my icon was made by centering upstream's in a 48x48 transparent field.
+ICODIR=$PKG/usr/share/icons/hicolor/48x48/apps
+mkdir -p $ICODIR
+cat $CWD/$PRGNAM.png > $ICODIR/$PRGNAM.png
+ln -s ../icons/hicolor/48x48/apps/$PRGNAM.png $PKG/usr/share/pixmaps/$PRGNAM.png
+
# docs already installed.
cat $CWD/$PRGNAM.SlackBuild > $PKG/usr/doc/$PRGNAM-$VERSION/$PRGNAM.SlackBuild
@@ -120,4 +155,4 @@ cat $CWD/slack-desc > $PKG/install/slack-desc
cat $CWD/doinst.sh > $PKG/install/doinst.sh
cd $PKG
-/sbin/makepkg -l y -c n $OUTPUT/$PRGNAM-$VERSION-$ARCH-$BUILD$TAG.${PKGTYPE:-tgz}
+/sbin/makepkg -l y -c n $OUTPUT/$PRGNAM-$VERSION-$ARCH-$BUILD$TAG.$PKGTYPE
diff --git a/games/mininim/mininim.desktop b/games/mininim/mininim.desktop
index 4b11fe2759..799f95ea9f 100644
--- a/games/mininim/mininim.desktop
+++ b/games/mininim/mininim.desktop
@@ -1,7 +1,7 @@
[Desktop Entry]
Name=mininim
Comment=MININIM: Prince of Persia I
-Exec=mininim
+Exec=/usr/games/mininim
Icon=mininim
Terminal=false
Type=Application
diff --git a/games/mininim/mininim.info b/games/mininim/mininim.info
index 029d1ab780..62996ca361 100644
--- a/games/mininim/mininim.info
+++ b/games/mininim/mininim.info
@@ -1,10 +1,10 @@
PRGNAM="mininim"
VERSION="201701122309"
-HOMEPAGE="http://oitofelix.github.io/mininim/"
+HOMEPAGE="https://oitofelix.github.io/mininim/"
DOWNLOAD="https://github.com/oitofelix/mininim/archive/v201701122309/mininim-201701122309.tar.gz"
MD5SUM="da4e45c0aa08f689cd4848dcc8de9214"
DOWNLOAD_x86_64=""
MD5SUM_x86_64=""
REQUIRES="gnulib allegro"
MAINTAINER="B. Watson"
-EMAIL="yalhcru@gmail.com"
+EMAIL="urchlay@slackware.uk"
diff --git a/games/mininim/mininim.png b/games/mininim/mininim.png
new file mode 100644
index 0000000000..7ef96899d0
--- /dev/null
+++ b/games/mininim/mininim.png
Binary files differ
diff --git a/games/miscom/miscom.SlackBuild b/games/miscom/miscom.SlackBuild
index d165820763..a337173058 100644
--- a/games/miscom/miscom.SlackBuild
+++ b/games/miscom/miscom.SlackBuild
@@ -1,15 +1,18 @@
-#!/bin/sh
+#!/bin/bash
# Slackware build script for miscom
-# Written by B. Watson (yalhcru@gmail.com)
+# Written by B. Watson (urchlay@slackware.uk)
# Licensed under the WTFPL. See http://www.wtfpl.net/txt/copying/ for details.
+cd $(dirname $0) ; CWD=$(pwd)
+
PRGNAM=miscom
VERSION=${VERSION:-1.0}
BUILD=${BUILD:-1}
TAG=${TAG:-_SBo}
+PKGTYPE=${PKGTYPE:-tgz}
if [ -z "$ARCH" ]; then
case "$( uname -m )" in
@@ -19,7 +22,11 @@ if [ -z "$ARCH" ]; then
esac
fi
-CWD=$(pwd)
+if [ ! -z "${PRINT_PACKAGE_NAME}" ]; then
+ echo "$PRGNAM-$VERSION-$ARCH-$BUILD$TAG.$PKGTYPE"
+ exit 0
+fi
+
TMP=${TMP:-/tmp/SBo}
PKG=$TMP/package-$PRGNAM
OUTPUT=${OUTPUT:-/tmp}
@@ -81,4 +88,4 @@ mkdir -p $PKG/install
cat $CWD/slack-desc > $PKG/install/slack-desc
cd $PKG
-/sbin/makepkg -l y -c n $OUTPUT/$PRGNAM-$VERSION-$ARCH-$BUILD$TAG.${PKGTYPE:-tgz}
+/sbin/makepkg -l y -c n $OUTPUT/$PRGNAM-$VERSION-$ARCH-$BUILD$TAG.$PKGTYPE
diff --git a/games/miscom/miscom.info b/games/miscom/miscom.info
index f7ddf35ea2..f4607748f9 100644
--- a/games/miscom/miscom.info
+++ b/games/miscom/miscom.info
@@ -7,4 +7,4 @@ DOWNLOAD_x86_64=""
MD5SUM_x86_64=""
REQUIRES=""
MAINTAINER="B. Watson"
-EMAIL="yalhcru@gmail.com"
+EMAIL="urchlay@slackware.uk"
diff --git a/games/mog/mog.SlackBuild b/games/mog/mog.SlackBuild
index 5097f9d6fe..7e61b6eeed 100644
--- a/games/mog/mog.SlackBuild
+++ b/games/mog/mog.SlackBuild
@@ -1,4 +1,4 @@
-#!/bin/sh
+#!/bin/bash
# Slackware build script for mog
@@ -22,11 +22,14 @@
# OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF THIS SOFTWARE, EVEN IF
# ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
+cd $(dirname $0) ; CWD=$(pwd)
+
PRGNAM=mog
VERSION=${VERSION:-0.63.1548}
SRCVER=$(echo $VERSION | sed "s/.1548/-1548/")
BUILD=${BUILD:-1}
TAG=${TAG:-_SBo}
+PKGTYPE=${PKGTYPE:-tgz}
SRCNAM=$PRGNAM.src
@@ -38,7 +41,14 @@ if [ -z "$ARCH" ]; then
esac
fi
-CWD=$(pwd)
+# If the variable PRINT_PACKAGE_NAME is set, then this script will report what
+# the name of the created package would be, and then exit. This information
+# could be useful to other scripts.
+if [ ! -z "${PRINT_PACKAGE_NAME}" ]; then
+ echo "$PRGNAM-$VERSION-$ARCH-$BUILD$TAG.$PKGTYPE"
+ exit 0
+fi
+
TMP=${TMP:-/tmp/SBo}
PKG=$TMP/package-$PRGNAM
OUTPUT=${OUTPUT:-/tmp}
@@ -90,4 +100,4 @@ cat $CWD/slack-desc > $PKG/install/slack-desc
cat $CWD/doinst.sh > $PKG/install/doinst.sh
cd $PKG
-/sbin/makepkg -l y -c n $OUTPUT/$PRGNAM-$VERSION-$ARCH-$BUILD$TAG.${PKGTYPE:-tgz}
+/sbin/makepkg -l y -c n $OUTPUT/$PRGNAM-$VERSION-$ARCH-$BUILD$TAG.$PKGTYPE
diff --git a/games/mog/mog.info b/games/mog/mog.info
index 673ae6a902..62c10c739e 100644
--- a/games/mog/mog.info
+++ b/games/mog/mog.info
@@ -5,6 +5,6 @@ DOWNLOAD="https://slackware.uk/~urchlay/src/mog.src_0.63-1548.tgz"
MD5SUM="68604c258ce7347662777d853d895769"
DOWNLOAD_x86_64=""
MD5SUM_x86_64=""
-REQUIRES="SDL_sound"
+REQUIRES=""
MAINTAINER="Dimitris Zlatanidis"
EMAIL="d.zlatanidis@gmail.com"
diff --git a/games/moon-buggy/moon-buggy.SlackBuild b/games/moon-buggy/moon-buggy.SlackBuild
index dc3be278f9..6bc1d6a87b 100644
--- a/games/moon-buggy/moon-buggy.SlackBuild
+++ b/games/moon-buggy/moon-buggy.SlackBuild
@@ -1,4 +1,4 @@
-#!/bin/sh
+#!/bin/bash
# Copyright (c) 2012,2014 LEVAI Daniel
# All rights reserved.
@@ -25,26 +25,36 @@
# (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF THIS
# SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
+cd $(dirname $0) ; CWD=$(pwd)
+
PRGNAM=moon-buggy
VERSION=${VERSION:-1.0.51}
BUILD=${BUILD:-1}
TAG=${TAG:-_SBo}
+PKGTYPE=${PKGTYPE:-tgz}
if [ -z "$ARCH" ]; then
case "$( uname -m )" in
- i?86) ARCH=i486 ;;
+ i?86) ARCH=i586 ;;
arm*) ARCH=arm ;;
*) ARCH=$( uname -m ) ;;
esac
fi
-CWD=$(pwd)
+# If the variable PRINT_PACKAGE_NAME is set, then this script will report what
+# the name of the created package would be, and then exit. This information
+# could be useful to other scripts.
+if [ ! -z "${PRINT_PACKAGE_NAME}" ]; then
+ echo "$PRGNAM-$VERSION-$ARCH-$BUILD$TAG.$PKGTYPE"
+ exit 0
+fi
+
TMP=${TMP:-/tmp/SBo}
PKG=$TMP/package-$PRGNAM
OUTPUT=${OUTPUT:-/tmp}
-if [ "$ARCH" = "i486" ]; then
- SLKCFLAGS="-O2 -march=i486 -mtune=i686"
+if [ "$ARCH" = "i586" ]; then
+ SLKCFLAGS="-O2 -march=i586 -mtune=i686"
LIBDIRSUFFIX=""
elif [ "$ARCH" = "i686" ]; then
SLKCFLAGS="-O2 -march=i686 -mtune=i686"
@@ -105,4 +115,4 @@ mkdir -p $PKG/install
cat $CWD/slack-desc > $PKG/install/slack-desc
cd $PKG
-/sbin/makepkg -l y -c n $OUTPUT/$PRGNAM-$VERSION-$ARCH-$BUILD$TAG.${PKGTYPE:-tgz}
+/sbin/makepkg -l y -c n $OUTPUT/$PRGNAM-$VERSION-$ARCH-$BUILD$TAG.$PKGTYPE
diff --git a/games/moria/moria.SlackBuild b/games/moria/moria.SlackBuild
index 0b45a53a0d..7c0ed937ed 100644
--- a/games/moria/moria.SlackBuild
+++ b/games/moria/moria.SlackBuild
@@ -1,4 +1,4 @@
-#!/bin/sh
+#!/bin/bash
# Slackware build script for Moria
@@ -22,10 +22,13 @@
# OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF THIS SOFTWARE, EVEN IF
# ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
+cd $(dirname $0) ; CWD=$(pwd)
+
PRGNAM=moria
VERSION=${VERSION:-5.6}
BUILD=${BUILD:-1}
TAG=${TAG:-_SBo}
+PKGTYPE=${PKGTYPE:-tgz}
if [ -z "$ARCH" ]; then
case "$( uname -m )" in
@@ -35,7 +38,14 @@ if [ -z "$ARCH" ]; then
esac
fi
-CWD=$(pwd)
+# If the variable PRINT_PACKAGE_NAME is set, then this script will report what
+# the name of the created package would be, and then exit. This information
+# could be useful to other scripts.
+if [ ! -z "${PRINT_PACKAGE_NAME}" ]; then
+ echo "$PRGNAM-$VERSION-$ARCH-$BUILD$TAG.$PKGTYPE"
+ exit 0
+fi
+
TMP=${TMP:-/tmp/SBo}
PKG=$TMP/package-$PRGNAM
OUTPUT=${OUTPUT:-/tmp}
@@ -109,4 +119,4 @@ cat $CWD/slack-desc > $PKG/install/slack-desc
cat $CWD/doinst.sh > $PKG/install/doinst.sh
cd $PKG
-/sbin/makepkg -l y -c n $OUTPUT/$PRGNAM-$VERSION-$ARCH-$BUILD$TAG.${PKGTYPE:-tgz}
+/sbin/makepkg -l y -c n $OUTPUT/$PRGNAM-$VERSION-$ARCH-$BUILD$TAG.$PKGTYPE
diff --git a/games/mrboom/Makefile.patch b/games/mrboom/Makefile.patch
deleted file mode 100644
index 0a240e9275..0000000000
--- a/games/mrboom/Makefile.patch
+++ /dev/null
@@ -1,16 +0,0 @@
---- Makefile.orig 2020-05-09 23:50:56.489976161 +0200
-+++ Makefile 2020-05-09 23:51:30.250975839 +0200
-@@ -500,11 +500,11 @@
- rm -f *.d */*.d */*/*.d */*/*/*.d */*/*/*/*.d */*/*/*/*/*.d
-
- strip:
-- $(STRIP) $(TARGET_NAME).out
-+ $(STRIP) $(TARGET_NAME)
-
- install: strip
- $(INSTALL) -m 0755 -d $(DESTDIR)$(PREFIX)/$(BINDIR)
-- $(INSTALL) -m 555 $(TARGET_NAME).out $(DESTDIR)$(PREFIX)/$(BINDIR)/$(TARGET_NAME)
-+ $(INSTALL) -m 555 $(TARGET_NAME) $(DESTDIR)$(PREFIX)/$(BINDIR)/$(TARGET_NAME)
- $(INSTALL) -m 0755 -d $(DESTDIR)$(PREFIX)/$(MANDIR)
- $(INSTALL) -m 644 Assets/$(TARGET_NAME).6 $(DESTDIR)$(PREFIX)/$(MANDIR)
-
diff --git a/games/mrboom/README b/games/mrboom/README
index 1d6c3eaa05..5697e769a6 100644
--- a/games/mrboom/README
+++ b/games/mrboom/README
@@ -1,5 +1,3 @@
Mr.Boom is an 8 players Bomberman clone. This is an SDL2 version of the
original 1999 version of Mr. Boom. The goal of the game is to bomb away
your enemies and other players.
-
-RetroArch is an optional dependency required to run the libretro core.
diff --git a/games/mrboom/doinst.sh b/games/mrboom/doinst.sh
index 5fb28930db..0fa754f75e 100644
--- a/games/mrboom/doinst.sh
+++ b/games/mrboom/doinst.sh
@@ -1,3 +1,11 @@
if [ -x /usr/bin/update-desktop-database ]; then
/usr/bin/update-desktop-database -q usr/share/applications >/dev/null 2>&1
fi
+
+# If other icon themes are installed, then add to/modify this as needed
+if [ -e usr/share/icons/hicolor/icon-theme.cache ]; then
+ if [ -x /usr/bin/gtk-update-icon-cache ]; then
+ /usr/bin/gtk-update-icon-cache -f usr/share/icons/hicolor >/dev/null 2>&1
+ fi
+fi
+
diff --git a/games/mrboom/mrboom.SlackBuild b/games/mrboom/mrboom.SlackBuild
index 2c16cbd408..3b4d4f1c46 100644
--- a/games/mrboom/mrboom.SlackBuild
+++ b/games/mrboom/mrboom.SlackBuild
@@ -1,8 +1,8 @@
-#!/bin/sh
+#!/bin/bash
# Slackware build script for mrboom
-# Copyright 2017-2020 Thibaut Notteboom, Paris, FRANCE
+# Copyright 2017-2023 Thibaut Notteboom, Paris, FRANCE
# All rights reserved.
#
# Redistribution and use of this script, with or without modification, is
@@ -22,13 +22,15 @@
# OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF THIS SOFTWARE, EVEN IF
# ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
+cd $(dirname $0) ; CWD=$(pwd)
+
PRGNAM=mrboom
-VERSION=${VERSION:-4.9}
-BUILD=${BUILD:-2}
+VERSION=${VERSION:-5.3}
+BUILD=${BUILD:-1}
TAG=${TAG:-_SBo}
+PKGTYPE=${PKGTYPE:-tgz}
-SRCNAM=mrboom-libretro
-LIBNAM=mrboom_libretro
+SRCNAM=MrBoom-src
if [ -z "$ARCH" ]; then
case "$( uname -m )" in
@@ -38,7 +40,11 @@ if [ -z "$ARCH" ]; then
esac
fi
-CWD=$(pwd)
+if [ ! -z "${PRINT_PACKAGE_NAME}" ]; then
+ echo "$PRGNAM-$VERSION-$ARCH-$BUILD$TAG.$PKGTYPE"
+ exit 0
+fi
+
TMP=${TMP:-/tmp/SBo}
PKG=$TMP/package-$PRGNAM
OUTPUT=${OUTPUT:-/tmp}
@@ -52,6 +58,9 @@ elif [ "$ARCH" = "i686" ]; then
elif [ "$ARCH" = "x86_64" ]; then
SLKCFLAGS="-O2 -fPIC"
LIBDIRSUFFIX="64"
+elif [ "$ARCH" = "aarch64" ]; then
+ SLKCFLAGS="-O2 -fPIC"
+ LIBDIRSUFFIX="64"
else
SLKCFLAGS="-O2"
LIBDIRSUFFIX=""
@@ -68,40 +77,28 @@ cd $SRCNAM-$VERSION
chown -R root:root .
find -L . \
\( -perm 777 -o -perm 775 -o -perm 750 -o -perm 711 -o -perm 555 \
- -o -perm 511 \) -exec chmod 755 {} \; -o \
+ -o -perm 511 \) -exec chmod 755 {} \+ -o \
\( -perm 666 -o -perm 664 -o -perm 640 -o -perm 600 -o -perm 444 \
- -o -perm 440 -o -perm 400 \) -exec chmod 644 {} \;
-
-patch -p0 < $CWD/Makefile.patch
-sed -i "s|^GIT_VERSION :=.*|GIT_VERSION := \" ${VERSION}\"|" Makefile
+ -o -perm 440 -o -perm 400 \) -exec chmod 644 {} \+
-if pkg-config --exists sdl2; then
- make mrboom LIBSDL2=1
+sed -i "s,-O3,$SLKCFLAGS -fcommon," Makefile
- mkdir -p $PKG/usr/games $PKG/usr/man/man6 $PKG/usr/share/applications $PKG/usr/share/pixmaps
+make mrboom LIBSDL2=1
+make install PREFIX=/usr BINDIR=games DESTDIR=$PKG
- make install PREFIX=/usr BINDIR=games DESTDIR=$PKG
+install -D -m 644 Assets/$PRGNAM.desktop $PKG/usr/share/applications/$PRGNAM.desktop
+install -D -m 644 $CWD/mrboom.svg $PKG/usr/share/pixmaps/mrboom.svg
- install -m 0644 Assets/$PRGNAM.desktop $PKG/usr/share/applications
- install -m 0644 $CWD/mrboom.svg $PKG/usr/share/pixmaps
-
- for i in 16x16 32x32 48x48 256x256; do
- install -D -m0644 Assets/hicolor/$i/apps/$PRGNAM.png $PKG/usr/share/icons/hicolor/$i/apps/$PRGNAM.png
- done
-
- find $PKG/usr/man -type f -exec gzip -9 {} \;
- for i in $( find $PKG/usr/man -type l ) ; do ln -s $( readlink $i ).gz $i.gz ; rm $i ; done
-fi
-
-make clean
-make
-
-install -D -m 0644 $LIBNAM.so $PKG/usr/lib${LIBDIRSUFFIX}/libretro/$LIBNAM.so
-install -D -m 0644 $CWD/$LIBNAM.info $PKG/usr/lib${LIBDIRSUFFIX}/libretro/info/$LIBNAM.info
+for i in 16x16 32x32 48x48 256x256; do
+ install -D -m 644 Assets/hicolor/$i/apps/$PRGNAM.png $PKG/usr/share/icons/hicolor/$i/apps/$PRGNAM.png
+done
find $PKG -print0 | xargs -0 file | grep -e "executable" -e "shared object" | grep ELF \
| cut -f 1 -d : | xargs strip --strip-unneeded 2> /dev/null || true
+find $PKG/usr/man -type f -exec gzip -9 {} \;
+for i in $( find $PKG/usr/man -type l ) ; do ln -s $( readlink $i ).gz $i.gz ; rm $i ; done
+
mkdir -p $PKG/usr/doc/$PRGNAM-$VERSION
cp -a \
LICENSE README.md \
@@ -113,4 +110,4 @@ cat $CWD/slack-desc > $PKG/install/slack-desc
cat $CWD/doinst.sh > $PKG/install/doinst.sh
cd $PKG
-/sbin/makepkg -l y -c n $OUTPUT/$PRGNAM-$VERSION-$ARCH-$BUILD$TAG.${PKGTYPE:-tgz}
+/sbin/makepkg -l y -c n $OUTPUT/$PRGNAM-$VERSION-$ARCH-$BUILD$TAG.$PKGTYPE
diff --git a/games/mrboom/mrboom.info b/games/mrboom/mrboom.info
index ab83b72165..c6bd0c2a97 100644
--- a/games/mrboom/mrboom.info
+++ b/games/mrboom/mrboom.info
@@ -1,12 +1,10 @@
PRGNAM="mrboom"
-VERSION="4.9"
+VERSION="5.3"
HOMEPAGE="http://mrboom.mumblecore.org/"
-DOWNLOAD="https://github.com/Javanaise/mrboom-libretro/archive/4.9/mrboom-libretro-4.9.tar.gz \
- https://raw.githubusercontent.com/libretro/libretro-super/master/dist/info/mrboom_libretro.info"
-MD5SUM="872747a290cf52a89aa1542d9a40771e \
- 24a6cc6027701aa7cf9177c77e29e0f0"
+DOWNLOAD="https://github.com/Javanaise/mrboom-libretro/releases/download/5.3/MrBoom-src-5.3.tar.gz"
+MD5SUM="8086dfc7f26318419d717a27f01caa65"
DOWNLOAD_x86_64=""
MD5SUM_x86_64=""
-REQUIRES="libmodplug SDL2_mixer libminizip"
+REQUIRES="libmodplug libminizip"
MAINTAINER="Thibaut Notteboom"
EMAIL="thibaut.notteboom@gmail.com"
diff --git a/games/mrboom/slack-desc b/games/mrboom/slack-desc
index 9cf93e41ae..0ca7e4ddea 100644
--- a/games/mrboom/slack-desc
+++ b/games/mrboom/slack-desc
@@ -12,7 +12,7 @@ mrboom: Mr.Boom is an 8 players Bomberman clone. This is an SDL2 version of
mrboom: the original 1999 version of Mr. Boom. The goal of the game is to
mrboom: bomb away your enemies and other players.
mrboom:
-mrboom: RetroArch is an optional dependency required to run the libretro core.
+mrboom:
mrboom:
mrboom:
mrboom:
diff --git a/games/mrrescue/README b/games/mrrescue/README
index cbfc132263..4f109e1451 100644
--- a/games/mrrescue/README
+++ b/games/mrrescue/README
@@ -1,4 +1,4 @@
-Mr. Rescue (2d platform game)
+mrrescue (2d platform game)
Mr. Rescue is an arcade styled 2d action game centered around evacuating
civilians from burning buildings.
diff --git a/games/mrrescue/doinst.sh b/games/mrrescue/doinst.sh
index 5fb28930db..3e5691a052 100644
--- a/games/mrrescue/doinst.sh
+++ b/games/mrrescue/doinst.sh
@@ -1,3 +1,9 @@
if [ -x /usr/bin/update-desktop-database ]; then
/usr/bin/update-desktop-database -q usr/share/applications >/dev/null 2>&1
fi
+
+if [ -e usr/share/icons/hicolor/icon-theme.cache ]; then
+ if [ -x /usr/bin/gtk-update-icon-cache ]; then
+ /usr/bin/gtk-update-icon-cache usr/share/icons/hicolor >/dev/null 2>&1
+ fi
+fi
diff --git a/games/mrrescue/mrrescue.SlackBuild b/games/mrrescue/mrrescue.SlackBuild
index bcb9ee7117..7803da1cbf 100644
--- a/games/mrrescue/mrrescue.SlackBuild
+++ b/games/mrrescue/mrrescue.SlackBuild
@@ -1,26 +1,34 @@
-#!/bin/sh
+#!/bin/bash
# Slackware build script for mrrescue
-# Written by B. Watson (yalhcru@gmail.com)
+# Written by B. Watson (urchlay@slackware.uk)
# Licensed under the WTFPL. See http://www.wtfpl.net/txt/copying/ for details.
+# 20211022 bkw: BUILD=2, new-style icons.
# 20200415 bkw: update to latest upstream git, commit a5be73c. Required
# for love-11.x support (someone upgraded love and didn't bother to tell
# me so this has been broken for ~2 year).
+cd $(dirname $0) ; CWD=$(pwd)
+
PRGNAM=mrrescue
VERSION=${VERSION:-1.02e+20180818_a5be73c}
-BUILD=${BUILD:-1}
+BUILD=${BUILD:-2}
TAG=${TAG:-_SBo}
+PKGTYPE=${PKGTYPE:-tgz}
SRCVER=${VERSION%%+*}
DIFFVER=${VERSION##*+}
ARCH=noarch
-CWD=$(pwd)
+if [ ! -z "${PRINT_PACKAGE_NAME}" ]; then
+ echo "$PRGNAM-$VERSION-$ARCH-$BUILD$TAG.$PKGTYPE"
+ exit 0
+fi
+
TMP=${TMP:-/tmp/SBo}
PKG=$TMP/package-$PRGNAM
OUTPUT=${OUTPUT:-/tmp}
@@ -48,10 +56,18 @@ echo '#!/usr/bin/env love' > $PKG/usr/games/$PRGNAM
cat tmp.zip >> $PKG/usr/games/$PRGNAM
chmod 755 $PKG/usr/games/$PRGNAM
-# icon is a piece of data/splash.png from the payload file, chopped up
+# icons made from piece of data/splash.png from the payload file, chopped up
# with the gimp.
+
+for px in 16 32 48 64 128; do
+ size=${px}x${px}
+ dir=$PKG/usr/share/icons/hicolor/$size/apps
+ mkdir -p $dir
+ convert -resize $size $CWD/$PRGNAM.png $dir/$PRGNAM.png
+done
+
mkdir -p $PKG/usr/share/pixmaps
-cat $CWD/$PRGNAM.png > $PKG/usr/share/pixmaps/$PRGNAM.png
+ln -s ../icons/hicolor/48x48/apps/$PRGNAM.png $PKG/usr/share/pixmaps/$PRGNAM.png
# .desktop written for this build
mkdir -p $PKG/usr/share/applications
@@ -66,4 +82,4 @@ cat $CWD/slack-desc > $PKG/install/slack-desc
cat $CWD/doinst.sh > $PKG/install/doinst.sh
cd $PKG
-/sbin/makepkg -l y -c n $OUTPUT/$PRGNAM-$VERSION-$ARCH-$BUILD$TAG.${PKGTYPE:-tgz}
+/sbin/makepkg -l y -c n $OUTPUT/$PRGNAM-$VERSION-$ARCH-$BUILD$TAG.$PKGTYPE
diff --git a/games/mrrescue/mrrescue.desktop b/games/mrrescue/mrrescue.desktop
index 694d884bdd..387a8328dc 100644
--- a/games/mrrescue/mrrescue.desktop
+++ b/games/mrrescue/mrrescue.desktop
@@ -1,7 +1,7 @@
[Desktop Entry]
Name=Mr. Rescue
Comment=Rescue civilians from a burning building
-Exec=mrrescue
+Exec=/usr/games/mrrescue
Icon=mrrescue
Terminal=false
Type=Application
diff --git a/games/mrrescue/mrrescue.info b/games/mrrescue/mrrescue.info
index 8341ca3573..9cfde5e709 100644
--- a/games/mrrescue/mrrescue.info
+++ b/games/mrrescue/mrrescue.info
@@ -7,4 +7,4 @@ DOWNLOAD_x86_64=""
MD5SUM_x86_64=""
REQUIRES="love"
MAINTAINER="B. Watson"
-EMAIL="yalhcru@gmail.com"
+EMAIL="urchlay@slackware.uk"
diff --git a/games/mupen64plus-extraplugins/README b/games/mupen64plus-extraplugins/README
new file mode 100644
index 0000000000..b3894d8322
--- /dev/null
+++ b/games/mupen64plus-extraplugins/README
@@ -0,0 +1,9 @@
+Extra plugins for mupen64plus.
+
+This package contains the following plugins:
+
+ * mupen64plus-rsp-cxd4
+ * mupen64plus-rsp-z64
+ * mupen64plus-video-arachnoid
+ * mupen64plus-video-glide64
+ * mupen64plus-video-z64
diff --git a/games/mupen64plus-extraplugins/mupen64plus-extraplugins.SlackBuild b/games/mupen64plus-extraplugins/mupen64plus-extraplugins.SlackBuild
new file mode 100644
index 0000000000..1b48392978
--- /dev/null
+++ b/games/mupen64plus-extraplugins/mupen64plus-extraplugins.SlackBuild
@@ -0,0 +1,134 @@
+#!/bin/bash
+
+# Slackware build script for mupen64plus-extraplugins
+
+# Copyright 2023 Steven Voges <Oregon, US>
+# All rights reserved.
+#
+# Redistribution and use of this script, with or without modification, is
+# permitted provided that the following conditions are met:
+#
+# 1. Redistributions of this script must retain the above copyright
+# notice, this list of conditions and the following disclaimer.
+#
+# THIS SOFTWARE IS PROVIDED BY THE AUTHOR "AS IS" AND ANY EXPRESS OR IMPLIED
+# WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE IMPLIED WARRANTIES OF
+# MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE ARE DISCLAIMED. IN NO
+# EVENT SHALL THE AUTHOR BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL,
+# SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT LIMITED TO,
+# PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, DATA, OR PROFITS;
+# OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY,
+# WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR
+# OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF THIS SOFTWARE, EVEN IF
+# ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
+
+cd $(dirname $0) ; CWD=$(pwd)
+
+PRGNAM=mupen64plus-extraplugins
+VERSION=${VERSION:-20230611_0a4e30f}
+RSPCXD4=${RSPCXD4:-0a4e30f56033396e3ba47ec0fdd7acea3522362a}
+RSPZ64=${RSPZ64:-ad877e263e6ee78839cbd12cdd150d17177079cf}
+VIDEOARACHNOID=${VIDEOARACHNOID:-8187d1135ced0102f99d8305b52e0e75b01ef917}
+VIDEOGLIDE64=${VIDEOGLIDE64:-bdf9f5ca8e381e6c1c824aa70b26ad34f4eeb132}
+VIDEOZ64=${VIDEOZ64:-e8023148574d44fbabd1bb9d0ded7192869ec2ce}
+BUILD=${BUILD:-1}
+TAG=${TAG:-_SBo}
+PKGTYPE=${PKGTYPE:-tgz}
+
+if [ -z "$ARCH" ]; then
+ case "$( uname -m )" in
+ i?86) ARCH=i586 ;;
+ arm*) ARCH=arm ;;
+ *) ARCH=$( uname -m ) ;;
+ esac
+fi
+
+if [ ! -z "${PRINT_PACKAGE_NAME}" ]; then
+ echo "$PRGNAM-$VERSION-$ARCH-$BUILD$TAG.$PKGTYPE"
+ exit 0
+fi
+
+TMP=${TMP:-/tmp/SBo}
+PKG=$TMP/package-$PRGNAM
+OUTPUT=${OUTPUT:-/tmp}
+M64PCOMPONENTS="rsp-cxd4 rsp-z64 video-arachnoid video-glide64 video-z64"
+
+if [ "$ARCH" = "i586" ]; then
+ SLKCFLAGS="-O2 -march=i586 -mtune=i686"
+ LIBDIRSUFFIX=""
+elif [ "$ARCH" = "i686" ]; then
+ SLKCFLAGS="-O2 -march=i686 -mtune=i686"
+ LIBDIRSUFFIX=""
+elif [ "$ARCH" = "x86_64" ]; then
+ SLKCFLAGS="-O2 -fPIC"
+ LIBDIRSUFFIX="64"
+else
+ SLKCFLAGS="-O2"
+ LIBDIRSUFFIX=""
+fi
+
+set -e
+
+rm -rf $PKG
+mkdir -p $TMP $PKG $OUTPUT
+cd $TMP
+rm -rf $PRGNAM-$VERSION
+mkdir -p $PRGNAM-$VERSION
+cd $PRGNAM-$VERSION
+
+for COMPONENT in $M64PCOMPONENTS; do
+ mkdir -p mupen64plus-$COMPONENT
+done
+tar xvf $CWD/mupen64plus-rsp-cxd4-$RSPCXD4.tar.gz -C \
+ mupen64plus-rsp-cxd4 --strip-components 1
+tar xvf $CWD/mupen64plus-rsp-z64-$RSPZ64.tar.gz -C \
+ mupen64plus-rsp-z64 --strip-components 1
+tar xvf $CWD/mupen64plus-video-arachnoid-$VIDEOARACHNOID.tar.gz -C \
+ mupen64plus-video-arachnoid --strip-components 1
+tar xvf $CWD/mupen64plus-video-glide64-$VIDEOGLIDE64.tar.gz -C \
+ mupen64plus-video-glide64 --strip-components 1
+tar xvf $CWD/mupen64plus-video-z64-$VIDEOZ64.tar.gz -C \
+ mupen64plus-video-z64 --strip-components 1
+
+chown -R root:root .
+find -L . \
+ \( -perm 777 -o -perm 775 -o -perm 750 -o -perm 711 -o -perm 555 \
+ -o -perm 511 \) -exec chmod 755 {} \; -o \
+ \( -perm 666 -o -perm 664 -o -perm 640 -o -perm 600 -o -perm 444 \
+ -o -perm 440 -o -perm 400 \) -exec chmod 644 {} \;
+
+for COMPONENT in $M64PCOMPONENTS; do
+ echo "-------- Building $COMPONENT plugin --------"
+ make -C mupen64plus-$COMPONENT/projects/unix clean $@
+ make -C mupen64plus-$COMPONENT/projects/unix all $@
+ echo "-------- Installing $COMPONENT plugin --------"
+ make -C mupen64plus-$COMPONENT/projects/unix install $@ \
+ PLUGINDIR=lib$LIBDIRSUFFIX/mupen64plus \
+ SHAREDIR=share/mupen64plus \
+ BINDIR=bin \
+ MANDIR=man \
+ LIBDIR=lib$LIBDIRSUFFIX \
+ APPSDIR=share/applications \
+ ICONSDIR=share/icons/hicolor \
+ INCDIR=include/mupen64plus \
+ LDCONFIG=true \
+ DESTDIR=$PKG/usr/
+done
+
+chmod +x $PKG/usr/lib$LIBDIRSUFFIX/mupen64plus/*.so
+
+find $PKG -print0 | xargs -0 file | grep -e "executable" -e "shared object" | grep ELF \
+ | cut -f 1 -d : | xargs strip --strip-unneeded 2> /dev/null || true
+
+for COMPONENT in $M64PCOMPONENTS; do
+ mkdir -p $PKG/usr/doc/$PRGNAM-$VERSION/mupen64plus-$COMPONENT
+ cp -a mupen64plus-$COMPONENT/{COPYING,README,README.md} \
+ $PKG/usr/doc/$PRGNAM-$VERSION/mupen64plus-$COMPONENT 2>/dev/null || :
+done
+cat $CWD/$PRGNAM.SlackBuild > $PKG/usr/doc/$PRGNAM-$VERSION/$PRGNAM.SlackBuild
+
+mkdir -p $PKG/install
+cat $CWD/slack-desc > $PKG/install/slack-desc
+
+cd $PKG
+/sbin/makepkg -l y -c n $OUTPUT/$PRGNAM-$VERSION-$ARCH-$BUILD$TAG.$PKGTYPE
diff --git a/games/mupen64plus-extraplugins/mupen64plus-extraplugins.info b/games/mupen64plus-extraplugins/mupen64plus-extraplugins.info
new file mode 100644
index 0000000000..830c55414a
--- /dev/null
+++ b/games/mupen64plus-extraplugins/mupen64plus-extraplugins.info
@@ -0,0 +1,18 @@
+PRGNAM="mupen64plus-extraplugins"
+VERSION="20230611_0a4e30f"
+HOMEPAGE="https://mupen64plus.org"
+DOWNLOAD="https://github.com/mupen64plus/mupen64plus-rsp-cxd4/archive/0a4e30f56033396e3ba47ec0fdd7acea3522362a/mupen64plus-rsp-cxd4-0a4e30f56033396e3ba47ec0fdd7acea3522362a.tar.gz \
+ https://github.com/mupen64plus/mupen64plus-rsp-z64/archive/ad877e263e6ee78839cbd12cdd150d17177079cf/mupen64plus-rsp-z64-ad877e263e6ee78839cbd12cdd150d17177079cf.tar.gz \
+ https://github.com/mupen64plus/mupen64plus-video-arachnoid/archive/8187d1135ced0102f99d8305b52e0e75b01ef917/mupen64plus-video-arachnoid-8187d1135ced0102f99d8305b52e0e75b01ef917.tar.gz \
+ https://github.com/mupen64plus/mupen64plus-video-glide64/archive/bdf9f5ca8e381e6c1c824aa70b26ad34f4eeb132/mupen64plus-video-glide64-bdf9f5ca8e381e6c1c824aa70b26ad34f4eeb132.tar.gz \
+ https://github.com/mupen64plus/mupen64plus-video-z64/archive/e8023148574d44fbabd1bb9d0ded7192869ec2ce/mupen64plus-video-z64-e8023148574d44fbabd1bb9d0ded7192869ec2ce.tar.gz"
+MD5SUM="ca013f4e57ccecb99c1b1f9429543811 \
+ 120b574dd166aed0663e765f7ce57a05 \
+ c06bcfe4b16d52c13aa657609f17720b \
+ 807a959c07b25e320d3add3549034f14 \
+ 4ee9287da19adc11a4fa81e29a652356"
+DOWNLOAD_x86_64=""
+MD5SUM_x86_64=""
+REQUIRES="mupen64plus"
+MAINTAINER="Steven Voges"
+EMAIL="svoges.sbo@gmail.com"
diff --git a/games/mupen64plus-extraplugins/slack-desc b/games/mupen64plus-extraplugins/slack-desc
new file mode 100644
index 0000000000..d28cebde16
--- /dev/null
+++ b/games/mupen64plus-extraplugins/slack-desc
@@ -0,0 +1,19 @@
+# HOW TO EDIT THIS FILE:
+# The "handy ruler" below makes it easier to edit a package description.
+# Line up the first '|' above the ':' following the base package name, and
+# the '|' on the right side marks the last column you can put a character in.
+# You must make exactly 11 lines for the formatting to be correct. It's also
+# customary to leave one space after the ':' except on otherwise blank lines.
+
+ |-----handy-ruler------------------------------------------------------|
+mupen64plus-extraplugins: mupen64plus-extraplugins (mupen64plus plugins)
+mupen64plus-extraplugins:
+mupen64plus-extraplugins: Extra plugins for mupen64plus.
+mupen64plus-extraplugins:
+mupen64plus-extraplugins: Homepage: https://mupen64plus.org
+mupen64plus-extraplugins:
+mupen64plus-extraplugins:
+mupen64plus-extraplugins:
+mupen64plus-extraplugins:
+mupen64plus-extraplugins:
+mupen64plus-extraplugins:
diff --git a/games/mupen64plus-input-raphnetraw/README b/games/mupen64plus-input-raphnetraw/README
new file mode 100644
index 0000000000..b8fd9e8fe8
--- /dev/null
+++ b/games/mupen64plus-input-raphnetraw/README
@@ -0,0 +1,35 @@
+mupen64plus plugin that uses the direct controller access feature
+offered by raphnet's N64 to USB adapters to let the emulated game
+communicate with the controllers directly.
+
+Advantages:
+ * No calibration required. As the game talks to the controller
+ directly, it reads exactly the same axis values it would in a
+ non-emulated setup. In other words, the controller works, responds
+ and feels exactly as it would in real life.
+ * Low latency. When the game must read the controller, the request is
+ forwarded directly to the controller by the adapter. The later
+ immediately returns the controller's answer to the game.
+ * Expansion accessory support without emulator configuration. Insert
+ the accessory and you're good to go!
+
+Supported accessories:
+ * Rumble pak
+ * Controller pak (Memory pak)[1]
+ * Transfer pak[1]
+ * Bio sensor
+
+Support for peripherals other than controllers.
+ * N64 mouse (tested)
+ * VRU (confirmed by users, requires special ports1_4 version of the
+ plugin)[1]
+ * N64 Keyboard (not confirmed)
+
+Supported adapters:
+ * N64 to USB adapter - V3
+ * Dual N64 controller to USB adapter
+ * N64/Gamecube to USB adapter - V3
+
+[1] When accessories transfer a lot of data, such as a Controller Pak,
+ Transfer Pak or VRU, there are audio issues (small pauses) and
+ temporary game slow downs.
diff --git a/games/mupen64plus-input-raphnetraw/mupen64plus-input-raphnetraw.SlackBuild b/games/mupen64plus-input-raphnetraw/mupen64plus-input-raphnetraw.SlackBuild
new file mode 100644
index 0000000000..c565f67175
--- /dev/null
+++ b/games/mupen64plus-input-raphnetraw/mupen64plus-input-raphnetraw.SlackBuild
@@ -0,0 +1,104 @@
+#!/bin/bash
+
+# Slackware build script for mupen64plus-input-raphnetraw
+
+# Copyright 2023 Steven Voges <Oregon, USA>
+# All rights reserved.
+#
+# Redistribution and use of this script, with or without modification, is
+# permitted provided that the following conditions are met:
+#
+# 1. Redistributions of this script must retain the above copyright
+# notice, this list of conditions and the following disclaimer.
+#
+# THIS SOFTWARE IS PROVIDED BY THE AUTHOR "AS IS" AND ANY EXPRESS OR IMPLIED
+# WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE IMPLIED WARRANTIES OF
+# MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE ARE DISCLAIMED. IN NO
+# EVENT SHALL THE AUTHOR BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL,
+# SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT LIMITED TO,
+# PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, DATA, OR PROFITS;
+# OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY,
+# WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR
+# OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF THIS SOFTWARE, EVEN IF
+# ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
+
+cd $(dirname $0) ; CWD=$(pwd)
+
+PRGNAM=mupen64plus-input-raphnetraw
+VERSION=${VERSION:-20210226_8611241}
+SRCVER=${SRCVER:-86112413e98a8648edb11d199673cc24d5799af8}
+BUILD=${BUILD:-1}
+TAG=${TAG:-_SBo}
+PKGTYPE=${PKGTYPE:-tgz}
+
+if [ -z "$ARCH" ]; then
+ case "$( uname -m )" in
+ i?86) ARCH=i586 ;;
+ arm*) ARCH=arm ;;
+ *) ARCH=$( uname -m ) ;;
+ esac
+fi
+
+if [ ! -z "${PRINT_PACKAGE_NAME}" ]; then
+ echo "$PRGNAM-$VERSION-$ARCH-$BUILD$TAG.$PKGTYPE"
+ exit 0
+fi
+
+TMP=${TMP:-/tmp/SBo}
+PKG=$TMP/package-$PRGNAM
+OUTPUT=${OUTPUT:-/tmp}
+
+if [ "$ARCH" = "i586" ]; then
+ SLKCFLAGS="-O2 -march=i586 -mtune=i686"
+ LIBDIRSUFFIX=""
+elif [ "$ARCH" = "i686" ]; then
+ SLKCFLAGS="-O2 -march=i686 -mtune=i686"
+ LIBDIRSUFFIX=""
+elif [ "$ARCH" = "x86_64" ]; then
+ SLKCFLAGS="-O2 -fPIC"
+ LIBDIRSUFFIX="64"
+elif [ "$ARCH" = "aarch64" ]; then
+ SLKCFLAGS="-O2 -fPIC"
+ LIBDIRSUFFIX="64"
+else
+ SLKCFLAGS="-O2"
+ LIBDIRSUFFIX=""
+fi
+
+set -e
+
+rm -rf $PKG
+mkdir -p $TMP $PKG $OUTPUT
+cd $TMP
+rm -rf $PRGNAM-$SRCVER
+tar xvf $CWD/$PRGNAM-$SRCVER.tar.gz
+cd $PRGNAM-$SRCVER
+chown -R root:root .
+find -L . \
+ \( -perm 777 -o -perm 775 -o -perm 750 -o -perm 711 -o -perm 555 \
+ -o -perm 511 \) -exec chmod 755 {} \; -o \
+ \( -perm 666 -o -perm 664 -o -perm 640 -o -perm 600 -o -perm 444 \
+ -o -perm 440 -o -perm 400 \) -exec chmod 644 {} \;
+
+sed -i "43d" src/plugin_front.c
+
+echo "-------- Building input-raphnetraw plugin --------"
+make -C projects/unix clean $@
+make -C projects/unix all $@
+echo "-------- Installing input-raphnetraw plugin --------"
+install -Dm 755 projects/unix/$PRGNAM.so $PKG/usr/lib$LIBDIRSUFFIX/mupen64plus/$PRGNAM.so
+
+find $PKG -print0 | xargs -0 file | grep -e "executable" -e "shared object" | grep ELF \
+ | cut -f 1 -d : | xargs strip --strip-unneeded 2> /dev/null || true
+
+mkdir -p $PKG/usr/doc/$PRGNAM-$VERSION
+cp -a \
+ COPYING LICENSES README.md RELEASE \
+ $PKG/usr/doc/$PRGNAM-$VERSION
+cat $CWD/$PRGNAM.SlackBuild > $PKG/usr/doc/$PRGNAM-$VERSION/$PRGNAM.SlackBuild
+
+mkdir -p $PKG/install
+cat $CWD/slack-desc > $PKG/install/slack-desc
+
+cd $PKG
+/sbin/makepkg -l y -c n $OUTPUT/$PRGNAM-$VERSION-$ARCH-$BUILD$TAG.$PKGTYPE
diff --git a/games/mupen64plus-input-raphnetraw/mupen64plus-input-raphnetraw.info b/games/mupen64plus-input-raphnetraw/mupen64plus-input-raphnetraw.info
new file mode 100644
index 0000000000..b4711ec13e
--- /dev/null
+++ b/games/mupen64plus-input-raphnetraw/mupen64plus-input-raphnetraw.info
@@ -0,0 +1,10 @@
+PRGNAM="mupen64plus-input-raphnetraw"
+VERSION="20210226_8611241"
+HOMEPAGE="https://www.raphnet-tech.com/products/raphnetraw/index.php"
+DOWNLOAD="https://github.com/raphnet/mupen64plus-input-raphnetraw/archive/86112413e98a8648edb11d199673cc24d5799af8/mupen64plus-input-raphnetraw-86112413e98a8648edb11d199673cc24d5799af8.tar.gz"
+MD5SUM="32f386e8e67972f8657f27a86f178a39"
+DOWNLOAD_x86_64=""
+MD5SUM_x86_64=""
+REQUIRES="gcn64tools mupen64plus"
+MAINTAINER="Steven Voges"
+EMAIL="svoges.sbo@gmail.com"
diff --git a/games/mupen64plus-input-raphnetraw/slack-desc b/games/mupen64plus-input-raphnetraw/slack-desc
new file mode 100644
index 0000000000..684bef7455
--- /dev/null
+++ b/games/mupen64plus-input-raphnetraw/slack-desc
@@ -0,0 +1,19 @@
+# HOW TO EDIT THIS FILE:
+# The "handy ruler" below makes it easier to edit a package description.
+# Line up the first '|' above the ':' following the base package name, and
+# the '|' on the right side marks the last column you can put a character in.
+# You must make exactly 11 lines for the formatting to be correct. It's also
+# customary to leave one space after the ':' except on otherwise blank lines.
+
+ |-----handy-ruler------------------------------------------------------|
+mupen64plus-input-raphnetraw: mupen64plus-input-raphnetraw (Input plugin for mupen64plus)
+mupen64plus-input-raphnetraw:
+mupen64plus-input-raphnetraw: mupen64plus plugin to let the game communicate with the controllers
+mupen64plus-input-raphnetraw: directly.
+mupen64plus-input-raphnetraw:
+mupen64plus-input-raphnetraw: Homepage: https://www.raphnet-tech.com/products/raphnetraw/index.php
+mupen64plus-input-raphnetraw:
+mupen64plus-input-raphnetraw:
+mupen64plus-input-raphnetraw:
+mupen64plus-input-raphnetraw:
+mupen64plus-input-raphnetraw:
diff --git a/games/mupen64plus-nightly/README b/games/mupen64plus-nightly/README
new file mode 100644
index 0000000000..abde7655ea
--- /dev/null
+++ b/games/mupen64plus-nightly/README
@@ -0,0 +1,14 @@
+Mupen64Plus is a cross-platform plugin-based N64 emulator which is
+capable of accurately playing many games. Included are four MIPS R4300
+CPU emulators, with dynamic recompilers for 32-bit x86 and 64-bit amd64
+systems, and necessary plugins for audio, graphical rendering (RDP),
+signal co-processor (RSP), and input. There is 1 included OpenGL video
+plugin, called RiceVideo.
+
+Mupen64plus does not come with a GUI. For a GUI, install the m64py
+or RMG package available here at SBo.
+
+This is the nightly build which is under active development and changes
+rapidly. For the stable build pleas see mupen64plus.
+
+This package conflicts with mupen64plus, only install one or the other.
diff --git a/games/mupen64plus-nightly/doinst.sh b/games/mupen64plus-nightly/doinst.sh
new file mode 100644
index 0000000000..cc2f26a49b
--- /dev/null
+++ b/games/mupen64plus-nightly/doinst.sh
@@ -0,0 +1,9 @@
+if [ -x /usr/bin/update-desktop-database ]; then
+ /usr/bin/update-desktop-database -q usr/share/applications 2>/dev/null
+fi
+
+if [ -e usr/share/icons/hicolor/icon-theme.cache ]; then
+ if [ -x /usr/bin/gtk-update-icon-cache ]; then
+ /usr/bin/gtk-update-icon-cache -f usr/share/icons/hicolor >/dev/null 2>&1
+ fi
+fi
diff --git a/games/mupen64plus-nightly/mupen64plus-nightly.SlackBuild b/games/mupen64plus-nightly/mupen64plus-nightly.SlackBuild
new file mode 100644
index 0000000000..9eb6996a9d
--- /dev/null
+++ b/games/mupen64plus-nightly/mupen64plus-nightly.SlackBuild
@@ -0,0 +1,162 @@
+#!/bin/bash
+
+# Slackware build script for mupen64plus-nightly
+
+# Copyright 2023 Steven Voges <Oregon, US>
+# Copyright 2021 Matt Dinslage, Springfield MO
+# All rights reserved.
+#
+# Redistribution and use of this script, with or without modification, is
+# permitted provided that the following conditions are met:
+#
+# 1. Redistributions of this script must retain the above copyright
+# notice, this list of conditions and the following disclaimer.
+#
+# THIS SOFTWARE IS PROVIDED BY THE AUTHOR "AS IS" AND ANY EXPRESS OR IMPLIED
+# WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE IMPLIED WARRANTIES OF
+# MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE ARE DISCLAIMED. IN NO
+# EVENT SHALL THE AUTHOR BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL,
+# SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT LIMITED TO,
+# PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, DATA, OR PROFITS;
+# OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY,
+# WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR
+# OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF THIS SOFTWARE, EVEN IF
+# ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
+
+cd $(dirname $0) ; CWD=$(pwd)
+
+PRGNAM=mupen64plus-nightly
+SRCNAM=mupen64plus
+VERSION=${VERSION:-20230820_7d02ab9}
+AUDIOSDL=${AUDIOSDL:-cec70e42b4535ce5bd1be24e7d816c54b3e75673}
+CORE=${CORE:-7d02ab97bd13be9b1b58ee11a1d3df6919d89f17}
+INPUTSDL=${INPUTSDL:-b175a41675ba39ac3ce6f152355dca92d9d32207}
+ROM=${ROM:-abd5b15498eb86101c2a56eb49460a264365b3ba}
+RSPHLE=${RSPHLE:-f22dc143771f1a0784c7d62977722a68fa0bdf85}
+UICONSOLE=${UICONSOLE:-335e826aead146bd6a47d557d78b746e77f337c8}
+VIDEOGLIDE64MK2=${VIDEOGLIDE64MK2:-d900f2191575e01eb846a1009be71cbc1b413dba}
+VIDEORICE=${VIDEORICE:-470865c6c64bdb44645faa88eae59cd87ce561b6}
+BUILD=${BUILD:-1}
+TAG=${TAG:-_SBo}
+PKGTYPE=${PKGTYPE:-tgz}
+
+if [ -z "$ARCH" ]; then
+ case "$( uname -m )" in
+ i?86) ARCH=i586 ;;
+ arm*) ARCH=arm ;;
+ *) ARCH=$( uname -m ) ;;
+ esac
+fi
+
+if [ ! -z "${PRINT_PACKAGE_NAME}" ]; then
+ echo "$PRGNAM-$VERSION-$ARCH-$BUILD$TAG.$PKGTYPE"
+ exit 0
+fi
+
+TMP=${TMP:-/tmp/SBo}
+PKG=$TMP/package-$PRGNAM
+OUTPUT=${OUTPUT:-/tmp}
+M64PCOMPONENTS="core rom ui-console audio-sdl input-sdl rsp-hle video-glide64mk2 video-rice"
+
+if [ "$ARCH" = "i586" ]; then
+ SLKCFLAGS="-O2 -march=i586 -mtune=i686"
+ LIBDIRSUFFIX=""
+elif [ "$ARCH" = "i686" ]; then
+ SLKCFLAGS="-O2 -march=i686 -mtune=i686"
+ LIBDIRSUFFIX=""
+elif [ "$ARCH" = "x86_64" ]; then
+ SLKCFLAGS="-O2 -fPIC"
+ LIBDIRSUFFIX="64"
+else
+ SLKCFLAGS="-O2"
+ LIBDIRSUFFIX=""
+fi
+
+set -e
+
+rm -rf $PKG
+mkdir -p $TMP $PKG $OUTPUT
+cd $TMP
+rm -rf ${SRCNAM}-$VERSION
+mkdir -p ${SRCNAM}-$VERSION
+cd ${SRCNAM}-$VERSION
+
+for COMPONENT in $M64PCOMPONENTS; do
+ mkdir -p ${SRCNAM}-$COMPONENT
+done
+tar xvf $CWD/${SRCNAM}-audio-sdl-$AUDIOSDL.tar.gz -C \
+ ${SRCNAM}-audio-sdl --strip-components 1
+tar xvf $CWD/${SRCNAM}-core-$CORE.tar.gz -C \
+ ${SRCNAM}-core --strip-components 1
+tar xvf $CWD/${SRCNAM}-input-sdl-$INPUTSDL.tar.gz -C \
+ ${SRCNAM}-input-sdl --strip-components 1
+tar xvf $CWD/${SRCNAM}-rom-$ROM.tar.gz -C \
+ ${SRCNAM}-rom --strip-components 1
+tar xvf $CWD/${SRCNAM}-rsp-hle-$RSPHLE.tar.gz -C \
+ ${SRCNAM}-rsp-hle --strip-components 1
+tar xvf $CWD/${SRCNAM}-ui-console-$UICONSOLE.tar.gz -C \
+ ${SRCNAM}-ui-console --strip-components 1
+tar xvf $CWD/${SRCNAM}-video-glide64mk2-$VIDEOGLIDE64MK2.tar.gz -C \
+ ${SRCNAM}-video-glide64mk2 --strip-components 1
+tar xvf $CWD/${SRCNAM}-video-rice-$VIDEORICE.tar.gz -C \
+ ${SRCNAM}-video-rice --strip-components 1
+
+chown -R root:root .
+find -L . \
+ \( -perm 777 -o -perm 775 -o -perm 750 -o -perm 711 -o -perm 555 \
+ -o -perm 511 \) -exec chmod 755 {} \; -o \
+ \( -perm 666 -o -perm 664 -o -perm 640 -o -perm 600 -o -perm 444 \
+ -o -perm 440 -o -perm 400 \) -exec chmod 644 {} \;
+
+for COMPONENT in $M64PCOMPONENTS; do
+ if [ $COMPONENT = "core" ]; then
+ COMPONENTTYPE="library"
+ elif [ $COMPONENT = "rom" ]; then
+ echo "-------- Building test ROM --------"
+ mkdir -p $PKG/usr/share/$SRCNAM
+ cp mupen64plus-rom/m64p_test_rom.v64 $PKG/usr/share/$SRCNAM
+ continue
+ elif [ $COMPONENT = "ui-console" ]; then
+ COMPONENTTYPE="front-end"
+ else
+ COMPONENTTYPE="plugin"
+ fi
+ echo "-------- Building $COMPONENT $COMPONENTTYPE --------"
+ make -C ${SRCNAM}-$COMPONENT/projects/unix clean $@
+ make -C ${SRCNAM}-$COMPONENT/projects/unix all $@
+ echo "-------- Installing $COMPONENT $COMPONENTTYPE --------"
+ make -C ${SRCNAM}-$COMPONENT/projects/unix install $@ \
+ PLUGINDIR=lib$LIBDIRSUFFIX/$SRCNAM \
+ SHAREDIR=share/$SRCNAM \
+ BINDIR=bin \
+ MANDIR=man \
+ LIBDIR=lib$LIBDIRSUFFIX \
+ APPSDIR=share/applications \
+ ICONSDIR=share/icons/hicolor \
+ INCDIR=include/$SRCNAM \
+ LDCONFIG=true \
+ DESTDIR=$PKG/usr/
+done
+
+chmod +x $PKG/usr/lib$LIBDIRSUFFIX/lib${SRCNAM}.so.*
+chmod +x $PKG/usr/lib$LIBDIRSUFFIX/$SRCNAM/${SRCNAM}-*.so
+
+find $PKG -print0 | xargs -0 file | grep -e "executable" -e "shared object" | grep ELF \
+ | cut -f 1 -d : | xargs strip --strip-unneeded 2> /dev/null || true
+
+find $PKG/usr/man -type f -exec gzip -9 {} \;
+for i in $( find $PKG/usr/man -type l ) ; do ln -s $( readlink $i ).gz $i.gz ; rm $i ; done
+
+for COMPONENT in $M64PCOMPONENTS; do
+ mkdir -p $PKG/usr/doc/$PRGNAM-$VERSION/$SRCNAM-$COMPONENT
+ cp -a $SRCNAM-$COMPONENT/{AUTHORS,COPYING,CREDITS,LICENSES,README,README.md,RELEASE,doc,gpl-license,todo!.txt} \
+ $PKG/usr/doc/$PRGNAM-$VERSION/$SRCNAM-$COMPONENT 2>/dev/null || :
+done
+cat $CWD/$PRGNAM.SlackBuild > $PKG/usr/doc/$PRGNAM-$VERSION/$PRGNAM.SlackBuild
+
+mkdir -p $PKG/install
+cat $CWD/slack-desc > $PKG/install/slack-desc
+cat $CWD/doinst.sh > $PKG/install/doinst.sh
+
+cd $PKG
+/sbin/makepkg -l y -c n $OUTPUT/$PRGNAM-$VERSION-$ARCH-$BUILD$TAG.$PKGTYPE
diff --git a/games/mupen64plus-nightly/mupen64plus-nightly.info b/games/mupen64plus-nightly/mupen64plus-nightly.info
new file mode 100644
index 0000000000..0bba97b5e9
--- /dev/null
+++ b/games/mupen64plus-nightly/mupen64plus-nightly.info
@@ -0,0 +1,24 @@
+PRGNAM="mupen64plus-nightly"
+VERSION="20230820_7d02ab9"
+HOMEPAGE="https://mupen64plus.org"
+DOWNLOAD="https://github.com/mupen64plus/mupen64plus-audio-sdl/archive/cec70e42b4535ce5bd1be24e7d816c54b3e75673/mupen64plus-audio-sdl-cec70e42b4535ce5bd1be24e7d816c54b3e75673.tar.gz \
+ https://github.com/mupen64plus/mupen64plus-core/archive/7d02ab97bd13be9b1b58ee11a1d3df6919d89f17/mupen64plus-core-7d02ab97bd13be9b1b58ee11a1d3df6919d89f17.tar.gz \
+ https://github.com/mupen64plus/mupen64plus-input-sdl/archive/b175a41675ba39ac3ce6f152355dca92d9d32207/mupen64plus-input-sdl-b175a41675ba39ac3ce6f152355dca92d9d32207.tar.gz \
+ https://github.com/mupen64plus/mupen64plus-rom/archive/abd5b15498eb86101c2a56eb49460a264365b3ba/mupen64plus-rom-abd5b15498eb86101c2a56eb49460a264365b3ba.tar.gz \
+ https://github.com/mupen64plus/mupen64plus-rsp-hle/archive/f22dc143771f1a0784c7d62977722a68fa0bdf85/mupen64plus-rsp-hle-f22dc143771f1a0784c7d62977722a68fa0bdf85.tar.gz \
+ https://github.com/mupen64plus/mupen64plus-ui-console/archive/335e826aead146bd6a47d557d78b746e77f337c8/mupen64plus-ui-console-335e826aead146bd6a47d557d78b746e77f337c8.tar.gz \
+ https://github.com/mupen64plus/mupen64plus-video-glide64mk2/archive/d900f2191575e01eb846a1009be71cbc1b413dba/mupen64plus-video-glide64mk2-d900f2191575e01eb846a1009be71cbc1b413dba.tar.gz \
+ https://github.com/mupen64plus/mupen64plus-video-rice/archive/470865c6c64bdb44645faa88eae59cd87ce561b6/mupen64plus-video-rice-470865c6c64bdb44645faa88eae59cd87ce561b6.tar.gz"
+MD5SUM="35f735dec7680464df5ef53424d15b6c \
+ 3a15dd4a8a73d1d3f4d93a544a907980 \
+ 133ec42704bfdacb89c0cc48ef756790 \
+ 770dcedf923689804169a666681d658c \
+ d4221769c8a3ec9e2826b71aedb65634 \
+ 09f001255aa9ea8ce9ff57ee7cf64b8a \
+ bf4680aa61b76a3d74343adbde5af3b8 \
+ 62adbbfd8d26523d3f0e51ffcd060857"
+DOWNLOAD_x86_64=""
+MD5SUM_x86_64=""
+REQUIRES=""
+MAINTAINER="Steven Voges"
+EMAIL="svoges.sbo@gmail.com"
diff --git a/games/mupen64plus-nightly/slack-desc b/games/mupen64plus-nightly/slack-desc
new file mode 100644
index 0000000000..5d5a800ef3
--- /dev/null
+++ b/games/mupen64plus-nightly/slack-desc
@@ -0,0 +1,19 @@
+# HOW TO EDIT THIS FILE:
+# The "handy ruler" below makes it easier to edit a package description.
+# Line up the first '|' above the ':' following the base package name, and
+# the '|' on the right side marks the last column you can put a character in.
+# You must make exactly 11 lines for the formatting to be correct. It's also
+# customary to leave one space after the ':' except on otherwise blank lines.
+
+ |-----handy-ruler------------------------------------------------------|
+mupen64plus-nightly: mupen64plus-nightly (N64 emulator)
+mupen64plus-nightly:
+mupen64plus-nightly: Mupen64Plus is a plugin-based N64 emulator for Linux which is capable
+mupen64plus-nightly: of accurately playing many games. Included are four MIPS R4300 CPU
+mupen64plus-nightly: emulators, with dynamic recompilers for 32-bit x86 and 64-bit amd64
+mupen64plus-nightly: systems, and necessary plugins for audio, graphical rendering (RDP),
+mupen64plus-nightly: signal co-processor (RSP), and input.
+mupen64plus-nightly:
+mupen64plus-nightly: Homepage: https://mupen64plus.org
+mupen64plus-nightly:
+mupen64plus-nightly:
diff --git a/games/mupen64plus-rsp-parallel/9586367.patch b/games/mupen64plus-rsp-parallel/9586367.patch
new file mode 100644
index 0000000000..511ca5ac7d
--- /dev/null
+++ b/games/mupen64plus-rsp-parallel/9586367.patch
@@ -0,0 +1,22 @@
+From 95863671a332886c01e60a148821c7b9bf94dea7 Mon Sep 17 00:00:00 2001
+From: Logan McNaughton <848146+loganmc10@users.noreply.github.com>
+Date: Sun, 24 Jul 2022 09:00:25 -0600
+Subject: [PATCH] Fix undefined behavior in LUI
+
+---
+ rsp_jit.cpp | 2 +-
+ 1 file changed, 1 insertion(+), 1 deletion(-)
+
+diff --git a/rsp_jit.cpp b/rsp_jit.cpp
+index 372319c..a0e1c36 100644
+--- a/rsp_jit.cpp
++++ b/rsp_jit.cpp
+@@ -1422,7 +1422,7 @@ void CPU::jit_instruction(jit_state_t *_jit, uint32_t pc, uint32_t instr,
+ unsigned rt = (instr >> 16) & 31;
+ NOP_IF_RT_ZERO();
+ int16_t imm = int16_t(instr);
+- regs.immediate_mips_register(_jit, rt, imm << 16);
++ regs.immediate_mips_register(_jit, rt, uint16_t(imm) << 16);
+ regs.unlock_mips_register(rt);
+ break;
+ }
diff --git a/games/mupen64plus-rsp-parallel/README b/games/mupen64plus-rsp-parallel/README
new file mode 100644
index 0000000000..a6f39ca19d
--- /dev/null
+++ b/games/mupen64plus-rsp-parallel/README
@@ -0,0 +1,4 @@
+Parallel RSP is a fast RSP LLE plugin for mupen64plus
+
+Note that this plugin will only work with RDP plugins that can
+interpret LLE, such as mupen64plus-video-parallel.
diff --git a/games/mupen64plus-rsp-parallel/fix-build.patch b/games/mupen64plus-rsp-parallel/fix-build.patch
new file mode 100644
index 0000000000..d9364eb243
--- /dev/null
+++ b/games/mupen64plus-rsp-parallel/fix-build.patch
@@ -0,0 +1,47 @@
+diff --git a/CMakeLists.txt b/CMakeLists.txt
+@@ -6,10 +6,23 @@
+
+ set(NAME_PLUGIN_M64P "mupen64plus-rsp-parallel")
+
+-include_directories(../mupen64plus-core/src/api)
++include_directories(/usr/include/mupen64plus)
+ add_definitions(-DM64P_PLUGIN_API)
+ add_definitions(-DPARALLEL_INTEGRATION)
+
++execute_process (
++ COMMAND sh -c "/lib/ld-linux-x86-64.so.2 --help | grep -c 'x86-64-v3 (supported, searched)'"
++ OUTPUT_VARIABLE level3_support
++)
++
++if (${level3_support} GREATER 0 )
++ message("x86-64-v3 microarchitecture is supported, using newer CPU optimizations")
++ set(MARCH_OPTION "x86-64-v3")
++elseif(${level3_support} EQUAL 0)
++ message("x86-64-v3 microarchitecture is NOT supported, fallbacking to v2")
++ set(MARCH_OPTION "x86-64-v2")
++endif()
++
+ # check for INTERPROCEDURAL_OPTIMIZATION support
+ if((${CMAKE_VERSION} VERSION_EQUAL 3.9) OR (${CMAKE_VERSION} VERSION_GREATER 3.9))
+ cmake_policy(SET CMP0069 NEW)
+@@ -76,7 +89,7 @@
+ target_include_directories(${NAME_PLUGIN_M64P} PUBLIC ${CMAKE_CURRENT_SOURCE_DIR})
+ target_include_directories(${NAME_PLUGIN_M64P} PUBLIC ${CMAKE_CURRENT_SOURCE_DIR}/arch/simd/rsp)
+ target_include_directories(${NAME_PLUGIN_M64P} PUBLIC ${CMAKE_CURRENT_SOURCE_DIR}/api)
+-target_compile_options(${NAME_PLUGIN_M64P} PRIVATE ${PARALLEL_RSP_CXX_FLAGS} -march=x86-64-v3)
++target_compile_options(${NAME_PLUGIN_M64P} PRIVATE ${PARALLEL_RSP_CXX_FLAGS} -march=${MARCH_OPTION})
+
+ option(PARALLEL_RSP_BAKED_LIGHTNING "Use built-in Lightning." ON)
+
+@@ -97,8 +110,8 @@
+ target_sources(lightning PRIVATE win32/mman/sys/mman.c)
+ target_include_directories(lightning PRIVATE win32/mman)
+ endif()
+- target_compile_options(lightning PRIVATE -march=x86-64-v3)
+- target_link_options(lightning PRIVATE -march=x86-64-v3)
++ target_compile_options(lightning PRIVATE -march=${MARCH_OPTION})
++ target_link_options(lightning PRIVATE -march=${MARCH_OPTION})
+ endif()
+-target_link_options(${NAME_PLUGIN_M64P} PRIVATE -march=x86-64-v3)
++target_link_options(${NAME_PLUGIN_M64P} PRIVATE -march=${MARCH_OPTION})
+ target_link_libraries(${NAME_PLUGIN_M64P} PUBLIC lightning)
diff --git a/games/mupen64plus-rsp-parallel/mupen64plus-rsp-parallel.SlackBuild b/games/mupen64plus-rsp-parallel/mupen64plus-rsp-parallel.SlackBuild
new file mode 100644
index 0000000000..95b3f1304f
--- /dev/null
+++ b/games/mupen64plus-rsp-parallel/mupen64plus-rsp-parallel.SlackBuild
@@ -0,0 +1,113 @@
+#!/bin/bash
+
+# Slackware build script for mupen64plus-rsp-parallel
+
+# Copyright 2023 Steven Voges <Oregon, USA>
+# All rights reserved.
+#
+# Redistribution and use of this script, with or without modification, is
+# permitted provided that the following conditions are met:
+#
+# 1. Redistributions of this script must retain the above copyright
+# notice, this list of conditions and the following disclaimer.
+#
+# THIS SOFTWARE IS PROVIDED BY THE AUTHOR "AS IS" AND ANY EXPRESS OR IMPLIED
+# WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE IMPLIED WARRANTIES OF
+# MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE ARE DISCLAIMED. IN NO
+# EVENT SHALL THE AUTHOR BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL,
+# SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT LIMITED TO,
+# PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, DATA, OR PROFITS;
+# OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY,
+# WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR
+# OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF THIS SOFTWARE, EVEN IF
+# ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
+
+cd $(dirname $0) ; CWD=$(pwd)
+
+PRGNAM=mupen64plus-rsp-parallel
+SRCNAM=parallel-rsp
+VERSION=${VERSION:-20221126_4cf680b}
+SRCVER=${SRCVER:-4cf680bbbda082b32723ef9f8da6a8120803c19c}
+BUILD=${BUILD:-1}
+TAG=${TAG:-_SBo}
+PKGTYPE=${PKGTYPE:-tgz}
+
+if [ -z "$ARCH" ]; then
+ case "$( uname -m )" in
+ i?86) ARCH=i586 ;;
+ arm*) ARCH=arm ;;
+ *) ARCH=$( uname -m ) ;;
+ esac
+fi
+
+if [ ! -z "${PRINT_PACKAGE_NAME}" ]; then
+ echo "$PRGNAM-$VERSION-$ARCH-$BUILD$TAG.$PKGTYPE"
+ exit 0
+fi
+
+TMP=${TMP:-/tmp/SBo}
+PKG=$TMP/package-$PRGNAM
+OUTPUT=${OUTPUT:-/tmp}
+
+if [ "$ARCH" = "i586" ]; then
+ SLKCFLAGS="-O2 -march=i586 -mtune=i686"
+ LIBDIRSUFFIX=""
+elif [ "$ARCH" = "i686" ]; then
+ SLKCFLAGS="-O2 -march=i686 -mtune=i686"
+ LIBDIRSUFFIX=""
+elif [ "$ARCH" = "x86_64" ]; then
+ SLKCFLAGS="-O2 -fPIC"
+ LIBDIRSUFFIX="64"
+elif [ "$ARCH" = "aarch64" ]; then
+ SLKCFLAGS="-O2 -fPIC"
+ LIBDIRSUFFIX="64"
+else
+ SLKCFLAGS="-O2"
+ LIBDIRSUFFIX=""
+fi
+
+set -e
+
+rm -rf $PKG
+mkdir -p $TMP $PKG $OUTPUT
+cd $TMP
+rm -rf $SRCNAM-$SRCVER
+tar xvf $CWD/$SRCNAM-$SRCVER.tar.gz
+cd $SRCNAM-$SRCVER
+
+chown -R root:root .
+find -L . \
+ \( -perm 777 -o -perm 775 -o -perm 750 -o -perm 711 -o -perm 555 \
+ -o -perm 511 \) -exec chmod 755 {} \; -o \
+ \( -perm 666 -o -perm 664 -o -perm 640 -o -perm 600 -o -perm 444 \
+ -o -perm 440 -o -perm 400 \) -exec chmod 644 {} \;
+
+patch -p1 < $CWD/fix-build.patch
+patch -p1 < $CWD/9586367.patch
+sed -i "4i #include <stdint.h>" rsp_disasm.hpp
+
+mkdir -p build
+cd build
+ cmake \
+ -DCMAKE_C_FLAGS:STRING="$SLKCFLAGS" \
+ -DCMAKE_CXX_FLAGS:STRING="$SLKCFLAGS" \
+ -DCMAKE_INSTALL_PREFIX=/usr \
+ -DCMAKE_BUILD_TYPE=Release ..
+ make
+ install -Dm 755 $PRGNAM.so $PKG/usr/lib$LIBDIRSUFFIX/mupen64plus/$PRGNAM.so
+cd ..
+
+find $PKG -print0 | xargs -0 file | grep -e "executable" -e "shared object" | grep ELF \
+ | cut -f 1 -d : | xargs strip --strip-unneeded 2> /dev/null || true
+
+mkdir -p $PKG/usr/doc/$PRGNAM-$VERSION
+cp -a \
+ CREDITS.txt LICENSE LICENSE.LESSER LICENSE.MIT \
+ $PKG/usr/doc/$PRGNAM-$VERSION
+cat $CWD/$PRGNAM.SlackBuild > $PKG/usr/doc/$PRGNAM-$VERSION/$PRGNAM.SlackBuild
+
+mkdir -p $PKG/install
+cat $CWD/slack-desc > $PKG/install/slack-desc
+
+cd $PKG
+/sbin/makepkg -l y -c n $OUTPUT/$PRGNAM-$VERSION-$ARCH-$BUILD$TAG.$PKGTYPE
diff --git a/games/mupen64plus-rsp-parallel/mupen64plus-rsp-parallel.info b/games/mupen64plus-rsp-parallel/mupen64plus-rsp-parallel.info
new file mode 100644
index 0000000000..bddd647ddc
--- /dev/null
+++ b/games/mupen64plus-rsp-parallel/mupen64plus-rsp-parallel.info
@@ -0,0 +1,10 @@
+PRGNAM="mupen64plus-rsp-parallel"
+VERSION="20221126_4cf680b"
+HOMEPAGE="https://github.com/Mastergatto/parallel-rsp"
+DOWNLOAD="https://github.com/Mastergatto/parallel-rsp/archive/4cf680bbbda082b32723ef9f8da6a8120803c19c/parallel-rsp-4cf680bbbda082b32723ef9f8da6a8120803c19c.tar.gz"
+MD5SUM="a69df56f52a85ef59633366da71efeed"
+DOWNLOAD_x86_64=""
+MD5SUM_x86_64=""
+REQUIRES="mupen64plus-nightly"
+MAINTAINER="Steven Voges"
+EMAIL="svoges.sbo@gmail.com"
diff --git a/games/mupen64plus-rsp-parallel/slack-desc b/games/mupen64plus-rsp-parallel/slack-desc
new file mode 100644
index 0000000000..f1fef11e29
--- /dev/null
+++ b/games/mupen64plus-rsp-parallel/slack-desc
@@ -0,0 +1,19 @@
+# HOW TO EDIT THIS FILE:
+# The "handy ruler" below makes it easier to edit a package description.
+# Line up the first '|' above the ':' following the base package name, and
+# the '|' on the right side marks the last column you can put a character in.
+# You must make exactly 11 lines for the formatting to be correct. It's also
+# customary to leave one space after the ':' except on otherwise blank lines.
+
+ |-----handy-ruler------------------------------------------------------|
+mupen64plus-rsp-parallel: mupen64plus-rsp-parallel (RSP plugin for mupen64plus)
+mupen64plus-rsp-parallel:
+mupen64plus-rsp-parallel: Parallel RSP is a fast RSP LLE plugin for mupen64plus
+mupen64plus-rsp-parallel:
+mupen64plus-rsp-parallel: Homepage: https://github.com/Mastergatto/parallel-rsp
+mupen64plus-rsp-parallel:
+mupen64plus-rsp-parallel:
+mupen64plus-rsp-parallel:
+mupen64plus-rsp-parallel:
+mupen64plus-rsp-parallel:
+mupen64plus-rsp-parallel:
diff --git a/games/mupen64plus-video-angrylionplus/README b/games/mupen64plus-video-angrylionplus/README
new file mode 100644
index 0000000000..c9c4d70ccb
--- /dev/null
+++ b/games/mupen64plus-video-angrylionplus/README
@@ -0,0 +1,17 @@
+This is a conservative fork of angrylion's RDP plugin that aims to
+improve performance and add new features while retaining the accuracy
+of the original plugin.
+
+Current features:
+ * More maintainable code base by dividing the huge n64video.cpp into
+ smaller pieces.
+ * Improved portability by separating the emulator plugin interface
+ and window management from the RDP emulation core.
+ * Improved performance on multi-core CPUs by using multi-threaded
+ rendering with scan line interleaving.
+ * Replaced deprecated DirectDraw interface with a modern OpenGL 3.3
+ implementation.
+ * Added fullscreen support and manual window sizing.
+ * Added BMP screenshot support.
+ * Added settings GUI.
+ * Added Mupen64Plus support.
diff --git a/games/mupen64plus-video-angrylionplus/mupen64plus-video-angrylionplus.SlackBuild b/games/mupen64plus-video-angrylionplus/mupen64plus-video-angrylionplus.SlackBuild
new file mode 100644
index 0000000000..038647e5da
--- /dev/null
+++ b/games/mupen64plus-video-angrylionplus/mupen64plus-video-angrylionplus.SlackBuild
@@ -0,0 +1,116 @@
+#!/bin/bash
+
+# Slackware build script for mupen64plus-video-angrylionplus
+
+# Copyright 2023 Steven Voges <Oregon, USA>
+# All rights reserved.
+#
+# Redistribution and use of this script, with or without modification, is
+# permitted provided that the following conditions are met:
+#
+# 1. Redistributions of this script must retain the above copyright
+# notice, this list of conditions and the following disclaimer.
+#
+# THIS SOFTWARE IS PROVIDED BY THE AUTHOR "AS IS" AND ANY EXPRESS OR IMPLIED
+# WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE IMPLIED WARRANTIES OF
+# MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE ARE DISCLAIMED. IN NO
+# EVENT SHALL THE AUTHOR BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL,
+# SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT LIMITED TO,
+# PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, DATA, OR PROFITS;
+# OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY,
+# WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR
+# OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF THIS SOFTWARE, EVEN IF
+# ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
+
+cd $(dirname $0) ; CWD=$(pwd)
+
+PRGNAM=mupen64plus-video-angrylionplus
+SRCNAM=angrylion-rdp-plus
+VERSION=${VERSION:-20230815_20eaeaf}
+DATE=${DATE:-2023-08-15}
+SRCVER=${SRCVER:-20eaeaffc83ee7a4ca64a533a65f906b82d10dc4}
+COMMIT=$(echo $SRCVER | cut -c -7)
+BUILD=${BUILD:-1}
+TAG=${TAG:-_SBo}
+PKGTYPE=${PKGTYPE:-tgz}
+
+if [ -z "$ARCH" ]; then
+ case "$( uname -m )" in
+ i?86) ARCH=i586 ;;
+ arm*) ARCH=arm ;;
+ *) ARCH=$( uname -m ) ;;
+ esac
+fi
+
+if [ ! -z "${PRINT_PACKAGE_NAME}" ]; then
+ echo "$PRGNAM-$VERSION-$ARCH-$BUILD$TAG.$PKGTYPE"
+ exit 0
+fi
+
+TMP=${TMP:-/tmp/SBo}
+PKG=$TMP/package-$PRGNAM
+OUTPUT=${OUTPUT:-/tmp}
+
+if [ "$ARCH" = "i586" ]; then
+ SLKCFLAGS="-O2 -march=i586 -mtune=i686"
+ LIBDIRSUFFIX=""
+elif [ "$ARCH" = "i686" ]; then
+ SLKCFLAGS="-O2 -march=i686 -mtune=i686"
+ LIBDIRSUFFIX=""
+elif [ "$ARCH" = "x86_64" ]; then
+ SLKCFLAGS="-O2 -fPIC"
+ LIBDIRSUFFIX="64"
+elif [ "$ARCH" = "aarch64" ]; then
+ SLKCFLAGS="-O2 -fPIC"
+ LIBDIRSUFFIX="64"
+else
+ SLKCFLAGS="-O2"
+ LIBDIRSUFFIX=""
+fi
+
+set -e
+
+rm -rf $PKG
+mkdir -p $TMP $PKG $OUTPUT
+cd $TMP
+rm -rf $SRCNAM-$SRCVER
+tar xvf $CWD/$SRCNAM-$SRCVER.tar.gz
+cd $SRCNAM-$SRCVER
+chown -R root:root .
+find -L . \
+ \( -perm 777 -o -perm 775 -o -perm 750 -o -perm 711 -o -perm 555 \
+ -o -perm 511 \) -exec chmod 755 {} \; -o \
+ \( -perm 666 -o -perm 664 -o -perm 640 -o -perm 600 -o -perm 444 \
+ -o -perm 440 -o -perm 400 \) -exec chmod 644 {} \;
+
+sed -i "s/BRANCH \"unknown\"/BRANCH \"master\"/g" git-version.cmake
+sed -i "s/COMMIT_DATE \"unknown\"/COMMIT_DATE \"$DATE\"/g" git-version.cmake
+sed -i "s/COMMIT_HASH \"unknown\"/COMMIT_HASH \"$COMMIT\"/g" git-version.cmake
+sed -i "s/TAG \"unknown\"/TAG \"nightly-build\"/g" git-version.cmake
+sed -i "52d" git-version.cmake
+
+mkdir -p build
+cd build
+ cmake \
+ -DCMAKE_C_FLAGS:STRING="$SLKCFLAGS" \
+ -DCMAKE_CXX_FLAGS:STRING="$SLKCFLAGS" \
+ -DCMAKE_INSTALL_PREFIX=/usr \
+ -DCMAKE_BUILD_TYPE=Release ..
+ make
+ make install/strip DESTDIR=$PKG
+cd ..
+
+find $PKG -print0 | xargs -0 file | grep -e "executable" -e "shared object" | grep ELF \
+ | cut -f 1 -d : | xargs strip --strip-unneeded 2> /dev/null || true
+
+mkdir -p $PKG/usr/doc/$PRGNAM-$VERSION
+cp -a \
+ CREDITS.txt MAME\ License.txt README.md \
+ $PKG/usr/doc/$PRGNAM-$VERSION
+cat $CWD/$PRGNAM.SlackBuild > $PKG/usr/doc/$PRGNAM-$VERSION/$PRGNAM.SlackBuild
+
+mkdir -p $PKG/install
+cat $CWD/slack-desc > $PKG/install/slack-desc
+
+cd $PKG
+/sbin/makepkg -l y -c n $OUTPUT/$PRGNAM-$VERSION-$ARCH-$BUILD$TAG.$PKGTYPE
diff --git a/games/mupen64plus-video-angrylionplus/mupen64plus-video-angrylionplus.info b/games/mupen64plus-video-angrylionplus/mupen64plus-video-angrylionplus.info
new file mode 100644
index 0000000000..fba6506283
--- /dev/null
+++ b/games/mupen64plus-video-angrylionplus/mupen64plus-video-angrylionplus.info
@@ -0,0 +1,10 @@
+PRGNAM="mupen64plus-video-angrylionplus"
+VERSION="20230815_20eaeaf"
+HOMEPAGE="https://github.com/ata4/angrylion-rdp-plus"
+DOWNLOAD="https://github.com/ata4/angrylion-rdp-plus/archive/20eaeaffc83ee7a4ca64a533a65f906b82d10dc4/angrylion-rdp-plus-20eaeaffc83ee7a4ca64a533a65f906b82d10dc4.tar.gz"
+MD5SUM="a732d836793d2a273aa3896827ea1df6"
+DOWNLOAD_x86_64=""
+MD5SUM_x86_64=""
+REQUIRES="mupen64plus"
+MAINTAINER="Steven Voges"
+EMAIL="svoges.sbo@gmail.com"
diff --git a/games/mupen64plus-video-angrylionplus/slack-desc b/games/mupen64plus-video-angrylionplus/slack-desc
new file mode 100644
index 0000000000..bb0fecabb5
--- /dev/null
+++ b/games/mupen64plus-video-angrylionplus/slack-desc
@@ -0,0 +1,19 @@
+# HOW TO EDIT THIS FILE:
+# The "handy ruler" below makes it easier to edit a package description.
+# Line up the first '|' above the ':' following the base package name, and
+# the '|' on the right side marks the last column you can put a character in.
+# You must make exactly 11 lines for the formatting to be correct. It's also
+# customary to leave one space after the ':' except on otherwise blank lines.
+
+ |-----handy-ruler------------------------------------------------------|
+mupen64plus-video-angrylionplus: mupen64plus-video-angrylionplus (Video plugin for mupen64plus)
+mupen64plus-video-angrylionplus:
+mupen64plus-video-angrylionplus: A low-level N64 video emulation plugin, based on the pixel-perfect
+mupen64plus-video-angrylionplus: angrylion RDP plugin with some improvements.
+mupen64plus-video-angrylionplus:
+mupen64plus-video-angrylionplus: Homepage: https://github.com/ata4/angrylion-rdp-plus
+mupen64plus-video-angrylionplus:
+mupen64plus-video-angrylionplus:
+mupen64plus-video-angrylionplus:
+mupen64plus-video-angrylionplus:
+mupen64plus-video-angrylionplus:
diff --git a/games/mupen64plus-video-gliden64/README b/games/mupen64plus-video-gliden64/README
new file mode 100644
index 0000000000..069c6bdf3e
--- /dev/null
+++ b/games/mupen64plus-video-gliden64/README
@@ -0,0 +1 @@
+A new generation, open-source graphics plugin for N64 emulators.
diff --git a/games/mupen64plus-video-gliden64/mupen64plus-video-gliden64.SlackBuild b/games/mupen64plus-video-gliden64/mupen64plus-video-gliden64.SlackBuild
new file mode 100644
index 0000000000..83566076b0
--- /dev/null
+++ b/games/mupen64plus-video-gliden64/mupen64plus-video-gliden64.SlackBuild
@@ -0,0 +1,110 @@
+#!/bin/bash
+
+# Slackware build script for mupen64plus-video-gliden64
+
+# Copyright 2021 Matt Dinslage, daedra1980@gmail.com
+# All rights reserved.
+#
+# Redistribution and use of this script, with or without modification, is
+# permitted provided that the following conditions are met:
+#
+# 1. Redistributions of this script must retain the above copyright
+# notice, this list of conditions and the following disclaimer.
+#
+# THIS SOFTWARE IS PROVIDED BY THE AUTHOR "AS IS" AND ANY EXPRESS OR IMPLIED
+# WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE IMPLIED WARRANTIES OF
+# MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE ARE DISCLAIMED. IN NO
+# EVENT SHALL THE AUTHOR BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL,
+# SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT LIMITED TO,
+# PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, DATA, OR PROFITS;
+# OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY,
+# WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR
+# OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF THIS SOFTWARE, EVEN IF
+# ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
+
+cd $(dirname $0) ; CWD=$(pwd)
+
+PRGNAM=mupen64plus-video-gliden64
+VERSION=${VERSION:-4.0_1f4d04f}
+BUILD=${BUILD:-1}
+TAG=${TAG:-_SBo}
+PKGTYPE=${PKGTYPE:-tgz}
+
+if [ -z "$ARCH" ]; then
+ case "$( uname -m )" in
+ i?86) ARCH=i586 ;;
+ arm*) ARCH=arm ;;
+ *) ARCH=$( uname -m ) ;;
+ esac
+fi
+
+if [ ! -z "${PRINT_PACKAGE_NAME}" ]; then
+ echo "$PRGNAM-$VERSION-$ARCH-$BUILD$TAG.$PKGTYPE"
+ exit 0
+fi
+
+TMP=${TMP:-/tmp/SBo}
+PKG=$TMP/package-$PRGNAM
+OUTPUT=${OUTPUT:-/tmp}
+
+if [ "$ARCH" = "i586" ]; then
+ SLKCFLAGS="-O2 -march=i586 -mtune=i686"
+ LIBDIRSUFFIX=""
+elif [ "$ARCH" = "i686" ]; then
+ SLKCFLAGS="-O2 -march=i686 -mtune=i686"
+ LIBDIRSUFFIX=""
+elif [ "$ARCH" = "x86_64" ]; then
+ SLKCFLAGS="-O2 -fPIC"
+ LIBDIRSUFFIX="64"
+else
+ SLKCFLAGS="-O2"
+ LIBDIRSUFFIX=""
+fi
+
+set -e
+
+rm -rf $PKG
+mkdir -p $TMP $PKG $OUTPUT
+cd $TMP
+rm -rf $PRGNAM-$VERSION
+tar xvf $CWD/$PRGNAM-$VERSION.tar.gz
+cd $PRGNAM-$VERSION
+chown -R root:root .
+find -L . \
+ \( -perm 777 -o -perm 775 -o -perm 750 -o -perm 711 -o -perm 555 \
+ -o -perm 511 \) -exec chmod 755 {} \; -o \
+ \( -perm 666 -o -perm 664 -o -perm 640 -o -perm 600 -o -perm 444 \
+ -o -perm 440 -o -perm 400 \) -exec chmod 644 {} \;
+
+cd src
+cmake -B build -S . \
+ -DCMAKE_BUILD_TYPE:STRING='Release' \
+ -DCMAKE_INSTALL_PREFIX:PATH='/usr' \
+ -DMUPENPLUSAPI:BOOL='ON' \
+ -DUSE_SYSTEM_LIBS:BOOL='ON'
+make -C build
+
+mkdir -p $PKG/usr/lib${LIBDIRSUFFIX}/mupen64plus
+mkdir -p $PKG/usr/share/mupen64plus
+install -Dm644 build/plugin/Release/mupen64plus-video-GLideN64.so $PKG/usr/lib${LIBDIRSUFFIX}/mupen64plus
+cat ../ini/GLideN64.custom.ini > $PKG/usr/share/mupen64plus/GLideN64.custom.ini
+
+cd ../
+
+# Don't ship .la files:
+rm -f $PKG/{,usr/}lib${LIBDIRSUFFIX}/*.la
+
+find $PKG -print0 | xargs -0 file | grep -e "executable" -e "shared object" | grep ELF \
+ | cut -f 1 -d : | xargs strip --strip-unneeded 2> /dev/null || true
+
+mkdir -p $PKG/usr/doc/$PRGNAM-$VERSION
+cp -a \
+ LICENSE README.md \
+ $PKG/usr/doc/$PRGNAM-$VERSION
+cat $CWD/$PRGNAM.SlackBuild > $PKG/usr/doc/$PRGNAM-$VERSION/$PRGNAM.SlackBuild
+
+mkdir -p $PKG/install
+cat $CWD/slack-desc > $PKG/install/slack-desc
+
+cd $PKG
+/sbin/makepkg -l y -c n $OUTPUT/$PRGNAM-$VERSION-$ARCH-$BUILD$TAG.$PKGTYPE
diff --git a/games/mupen64plus-video-gliden64/mupen64plus-video-gliden64.info b/games/mupen64plus-video-gliden64/mupen64plus-video-gliden64.info
new file mode 100644
index 0000000000..85c6a31246
--- /dev/null
+++ b/games/mupen64plus-video-gliden64/mupen64plus-video-gliden64.info
@@ -0,0 +1,10 @@
+PRGNAM="mupen64plus-video-gliden64"
+VERSION="4.0_1f4d04f"
+HOMEPAGE="https://github.com/gonetz/GLideN64/"
+DOWNLOAD="https://www.dropbox.com/s/xvuli2owch2uu4o/mupen64plus-video-gliden64-4.0_1f4d04f.tar.gz"
+MD5SUM="f44425c2b1a5e5d38828298e85a89949"
+DOWNLOAD_x86_64=""
+MD5SUM_x86_64=""
+REQUIRES="mupen64plus"
+MAINTAINER="M.Dinslage"
+EMAIL="daedra1980@gmail.com"
diff --git a/games/mupen64plus-video-gliden64/slack-desc b/games/mupen64plus-video-gliden64/slack-desc
new file mode 100644
index 0000000000..8b1fe2b1bd
--- /dev/null
+++ b/games/mupen64plus-video-gliden64/slack-desc
@@ -0,0 +1,19 @@
+# HOW TO EDIT THIS FILE:
+# The "handy ruler" below makes it easier to edit a package description. Line
+# up the first '|' above the ':' following the base package name, and the '|'
+# on the right side marks the last column you can put a character in. You must
+# make exactly 11 lines for the formatting to be correct. It's also
+# customary to leave one space after the ':'.
+
+ |-----handy-ruler------------------------------------------------------|
+mupen64plus-video-gliden64: mupen64plus-video-gliden64 (video plugin for mupen64plus)
+mupen64plus-video-gliden64:
+mupen64plus-video-gliden64: A new generation, open-source graphics plugin for N64 emulators.
+mupen64plus-video-gliden64:
+mupen64plus-video-gliden64:
+mupen64plus-video-gliden64:
+mupen64plus-video-gliden64:
+mupen64plus-video-gliden64:
+mupen64plus-video-gliden64:
+mupen64plus-video-gliden64:
+mupen64plus-video-gliden64:
diff --git a/games/mupen64plus-video-parallel/README b/games/mupen64plus-video-parallel/README
new file mode 100644
index 0000000000..a931b983ac
--- /dev/null
+++ b/games/mupen64plus-video-parallel/README
@@ -0,0 +1,4 @@
+Parallel RDP is a fast RDP LLE plugin for mupen64plus
+
+Note that this plugin will only work with RSP plugins that can
+interpret LLE, such as mupen64plus-rsp-parallel.
diff --git a/games/mupen64plus-video-parallel/fix-build.patch b/games/mupen64plus-video-parallel/fix-build.patch
new file mode 100644
index 0000000000..4ef8b032a8
--- /dev/null
+++ b/games/mupen64plus-video-parallel/fix-build.patch
@@ -0,0 +1,10 @@
+diff --git a/CMakeLists.txt b/CMakeLists.txt
+@@ -4,7 +4,7 @@
+ project(parallel-rdp LANGUAGES CXX C)
+
+ set(NAME_PLUGIN_M64P "mupen64plus-video-parallel")
+-include_directories(../mupen64plus-core/src/api)
++include_directories(/usr/include/mupen64plus)
+ add_definitions(-DM64P_PLUGIN_API -DGRANITE_VULKAN_MT)
+
+ # check for INTERPROCEDURAL_OPTIMIZATION support
diff --git a/games/mupen64plus-video-parallel/mupen64plus-video-parallel.SlackBuild b/games/mupen64plus-video-parallel/mupen64plus-video-parallel.SlackBuild
new file mode 100644
index 0000000000..f8a0566e93
--- /dev/null
+++ b/games/mupen64plus-video-parallel/mupen64plus-video-parallel.SlackBuild
@@ -0,0 +1,112 @@
+#!/bin/bash
+
+# Slackware build script for mupen64plus-video-parallel
+
+# Copyright 2023 Steven Voges <Oregon, USA>
+# All rights reserved.
+#
+# Redistribution and use of this script, with or without modification, is
+# permitted provided that the following conditions are met:
+#
+# 1. Redistributions of this script must retain the above copyright
+# notice, this list of conditions and the following disclaimer.
+#
+# THIS SOFTWARE IS PROVIDED BY THE AUTHOR "AS IS" AND ANY EXPRESS OR IMPLIED
+# WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE IMPLIED WARRANTIES OF
+# MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE ARE DISCLAIMED. IN NO
+# EVENT SHALL THE AUTHOR BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL,
+# SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT LIMITED TO,
+# PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, DATA, OR PROFITS;
+# OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY,
+# WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR
+# OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF THIS SOFTWARE, EVEN IF
+# ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
+
+cd $(dirname $0) ; CWD=$(pwd)
+
+PRGNAM=mupen64plus-video-parallel
+SRCNAM=parallel-rdp-standalone
+VERSION=${VERSION:-20221122_5628fa9}
+SRCVER=${SRCVER:-5628fa906e8d9058878c7208819bba909a43fd69}
+BUILD=${BUILD:-1}
+TAG=${TAG:-_SBo}
+PKGTYPE=${PKGTYPE:-tgz}
+
+if [ -z "$ARCH" ]; then
+ case "$( uname -m )" in
+ i?86) ARCH=i586 ;;
+ arm*) ARCH=arm ;;
+ *) ARCH=$( uname -m ) ;;
+ esac
+fi
+
+if [ ! -z "${PRINT_PACKAGE_NAME}" ]; then
+ echo "$PRGNAM-$VERSION-$ARCH-$BUILD$TAG.$PKGTYPE"
+ exit 0
+fi
+
+TMP=${TMP:-/tmp/SBo}
+PKG=$TMP/package-$PRGNAM
+OUTPUT=${OUTPUT:-/tmp}
+
+if [ "$ARCH" = "i586" ]; then
+ SLKCFLAGS="-O2 -march=i586 -mtune=i686"
+ LIBDIRSUFFIX=""
+elif [ "$ARCH" = "i686" ]; then
+ SLKCFLAGS="-O2 -march=i686 -mtune=i686"
+ LIBDIRSUFFIX=""
+elif [ "$ARCH" = "x86_64" ]; then
+ SLKCFLAGS="-O2 -fPIC"
+ LIBDIRSUFFIX="64"
+elif [ "$ARCH" = "aarch64" ]; then
+ SLKCFLAGS="-O2 -fPIC"
+ LIBDIRSUFFIX="64"
+else
+ SLKCFLAGS="-O2"
+ LIBDIRSUFFIX=""
+fi
+
+set -e
+
+rm -rf $PKG
+mkdir -p $TMP $PKG $OUTPUT
+cd $TMP
+rm -rf $SRCNAM-$SRCVER
+tar xvf $CWD/$SRCNAM-$SRCVER.tar.gz
+cd $SRCNAM-$SRCVER
+
+chown -R root:root .
+find -L . \
+ \( -perm 777 -o -perm 775 -o -perm 750 -o -perm 711 -o -perm 555 \
+ -o -perm 511 \) -exec chmod 755 {} \; -o \
+ \( -perm 666 -o -perm 664 -o -perm 640 -o -perm 600 -o -perm 444 \
+ -o -perm 440 -o -perm 400 \) -exec chmod 644 {} \;
+
+patch -p1 < $CWD/fix-build.patch
+#sed -i "4i #include <stdint.h>" rsp_disasm.hpp
+
+mkdir -p build
+cd build
+ cmake \
+ -DCMAKE_C_FLAGS:STRING="$SLKCFLAGS" \
+ -DCMAKE_CXX_FLAGS:STRING="$SLKCFLAGS" \
+ -DCMAKE_INSTALL_PREFIX=/usr \
+ -DCMAKE_BUILD_TYPE=Release ..
+ make
+ install -Dm 755 $PRGNAM.so $PKG/usr/lib$LIBDIRSUFFIX/mupen64plus/$PRGNAM.so
+cd ..
+
+find $PKG -print0 | xargs -0 file | grep -e "executable" -e "shared object" | grep ELF \
+ | cut -f 1 -d : | xargs strip --strip-unneeded 2> /dev/null || true
+
+mkdir -p $PKG/usr/doc/$PRGNAM-$VERSION
+cp -a \
+ LICENSE README.md \
+ $PKG/usr/doc/$PRGNAM-$VERSION
+cat $CWD/$PRGNAM.SlackBuild > $PKG/usr/doc/$PRGNAM-$VERSION/$PRGNAM.SlackBuild
+
+mkdir -p $PKG/install
+cat $CWD/slack-desc > $PKG/install/slack-desc
+
+cd $PKG
+/sbin/makepkg -l y -c n $OUTPUT/$PRGNAM-$VERSION-$ARCH-$BUILD$TAG.$PKGTYPE
diff --git a/games/mupen64plus-video-parallel/mupen64plus-video-parallel.info b/games/mupen64plus-video-parallel/mupen64plus-video-parallel.info
new file mode 100644
index 0000000000..2eb29e0a7c
--- /dev/null
+++ b/games/mupen64plus-video-parallel/mupen64plus-video-parallel.info
@@ -0,0 +1,10 @@
+PRGNAM="mupen64plus-video-parallel"
+VERSION="20221122_5628fa9"
+HOMEPAGE="https://github.com/Mastergatto/parallel-rdp-standalone"
+DOWNLOAD="https://github.com/Mastergatto/parallel-rdp-standalone/archive/5628fa906e8d9058878c7208819bba909a43fd69/parallel-rdp-standalone-5628fa906e8d9058878c7208819bba909a43fd69.tar.gz"
+MD5SUM="5b77c3b85410930c993167e94fd42cc0"
+DOWNLOAD_x86_64=""
+MD5SUM_x86_64=""
+REQUIRES="mupen64plus-nightly"
+MAINTAINER="Steven Voges"
+EMAIL="svoges.sbo@gmail.com"
diff --git a/games/mupen64plus-video-parallel/slack-desc b/games/mupen64plus-video-parallel/slack-desc
new file mode 100644
index 0000000000..a1ba73adfe
--- /dev/null
+++ b/games/mupen64plus-video-parallel/slack-desc
@@ -0,0 +1,19 @@
+# HOW TO EDIT THIS FILE:
+# The "handy ruler" below makes it easier to edit a package description.
+# Line up the first '|' above the ':' following the base package name, and
+# the '|' on the right side marks the last column you can put a character in.
+# You must make exactly 11 lines for the formatting to be correct. It's also
+# customary to leave one space after the ':' except on otherwise blank lines.
+
+ |-----handy-ruler------------------------------------------------------|
+mupen64plus-video-parallel: mupen64plus-video-parallel (Video plugin for mupen64plus)
+mupen64plus-video-parallel:
+mupen64plus-video-parallel: A low-level Vulkan compute emulation of the N64 RDP
+mupen64plus-video-parallel:
+mupen64plus-video-parallel: Homepage: https://github.com/Themaister/parallel-rdp
+mupen64plus-video-parallel:
+mupen64plus-video-parallel:
+mupen64plus-video-parallel:
+mupen64plus-video-parallel:
+mupen64plus-video-parallel:
+mupen64plus-video-parallel:
diff --git a/games/mupen64plus/README b/games/mupen64plus/README
index 468f87c1c0..21263fa178 100644
--- a/games/mupen64plus/README
+++ b/games/mupen64plus/README
@@ -4,8 +4,5 @@ emulators, with dynamic recompilers for 32-bit x86 and 64-bit amd64
systems, and necessary plugins for audio, graphical rendering (RDP),
signal co-processor (RSP), and input.
-Note: Mupen64plus will build against SDL2 if installed, but SDL2 is
-not required.
-
-The 2.0 branch of mupen64plus does not include a GUI. If you want
-one, install the m64py package.
+Mupen64plus does not come with a GUI. For a GUI, install the m64py
+package available here at SBo.
diff --git a/games/mupen64plus/doinst.sh b/games/mupen64plus/doinst.sh
new file mode 100644
index 0000000000..59eb079d15
--- /dev/null
+++ b/games/mupen64plus/doinst.sh
@@ -0,0 +1,3 @@
+if [ -x /usr/bin/update-desktop-database ]; then
+ /usr/bin/update-desktop-database -q usr/share/applications 2>/dev/null
+fi
diff --git a/games/mupen64plus/mupen64plus-core-2.5.9-fix-gcc10-fno-common.patch b/games/mupen64plus/mupen64plus-core-2.5.9-fix-gcc10-fno-common.patch
new file mode 100644
index 0000000000..babbd79314
--- /dev/null
+++ b/games/mupen64plus/mupen64plus-core-2.5.9-fix-gcc10-fno-common.patch
@@ -0,0 +1,24 @@
+diff -up mupen64plus-bundle-src-2.5.9/source/mupen64plus-core/src/main/workqueue.h.orig mupen64plus-bundle-src-2.5.9/source/mupen64plus-core/src/main/workqueue.h
+--- mupen64plus-bundle-src-2.5.9/source/mupen64plus-core/src/main/workqueue.h.orig 2021-07-28 23:12:42.573699463 -0500
++++ mupen64plus-bundle-src-2.5.9/source/mupen64plus-core/src/main/workqueue.h 2021-07-28 23:13:30.238695477 -0500
+@@ -27,7 +27,6 @@
+
+ struct work_struct;
+
+-struct work_struct *work;
+ typedef void (*work_func_t)(struct work_struct *work);
+ struct work_struct {
+ work_func_t func;
+
+diff -up mupen64plus-bundle-src-2.5.9/source/mupen64plus-core/src/device/r4300/idec.h.orig mupen64plus-bundle-src-2.5.9/source/mupen64plus-core/src/device/r4300/idec.h
+--- mupen64plus-bundle-src-2.5.9/source/mupen64plus-core/src/device/r4300/idec.h.orig 2021-07-28 23:11:03.427914223 -0500
++++ mupen64plus-bundle-src-2.5.9/source/mupen64plus-core/src/device/r4300/idec.h 2021-07-28 23:12:13.275701913 -0500
+@@ -82,6 +82,6 @@ size_t idec_u53(uint32_t iw, uint8_t u53
+
+ #define IDEC_U53(r4300, iw, u53, u5) (void*)(((char*)(r4300)) + idec_u53((iw), (u53), (u5)))
+
+-const char* g_r4300_opcodes[R4300_OPCODES_COUNT];
++extern const char* g_r4300_opcodes[R4300_OPCODES_COUNT];
+
+ #endif
+
diff --git a/games/mupen64plus/mupen64plus.SlackBuild b/games/mupen64plus/mupen64plus.SlackBuild
index 58e16242cd..c59cb0b170 100644
--- a/games/mupen64plus/mupen64plus.SlackBuild
+++ b/games/mupen64plus/mupen64plus.SlackBuild
@@ -1,36 +1,66 @@
-#!/bin/sh
+#!/bin/bash
# Slackware build script for mupen64plus
-# Written by M.Dinslage contact: daedra1980@gmail.com
+# Copyright 2021 Matt Dinslage, Springfield MO
+# All rights reserved.
+#
+# Redistribution and use of this script, with or without modification, is
+# permitted provided that the following conditions are met:
+#
+# 1. Redistributions of this script must retain the above copyright
+# notice, this list of conditions and the following disclaimer.
+#
+# THIS SOFTWARE IS PROVIDED BY THE AUTHOR "AS IS" AND ANY EXPRESS OR IMPLIED
+# WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE IMPLIED WARRANTIES OF
+# MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE ARE DISCLAIMED. IN NO
+# EVENT SHALL THE AUTHOR BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL,
+# SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT LIMITED TO,
+# PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, DATA, OR PROFITS;
+# OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY,
+# WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR
+# OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF THIS SOFTWARE, EVEN IF
+# ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
+
+cd $(dirname $0) ; CWD=$(pwd)
PRGNAM=mupen64plus
-VERSION=${VERSION:-2.5}
+VERSION=${VERSION:-2.5.9}
BUILD=${BUILD:-1}
TAG=${TAG:-_SBo}
+PKGTYPE=${PKGTYPE:-tgz}
+
+SRCNAM=mupen64plus-bundle-src
if [ -z "$ARCH" ]; then
case "$( uname -m )" in
- i?86) ARCH=i486 ;;
+ i?86) ARCH=i586 ;;
arm*) ARCH=arm ;;
*) ARCH=$( uname -m ) ;;
esac
fi
-CWD=$(pwd)
+# If the variable PRINT_PACKAGE_NAME is set, then this script will report what
+# the name of the created package would be, and then exit. This information
+# could be useful to other scripts.
+if [ ! -z "${PRINT_PACKAGE_NAME}" ]; then
+ echo "$PRGNAM-$VERSION-$ARCH-$BUILD$TAG.$PKGTYPE"
+ exit 0
+fi
+
TMP=${TMP:-/tmp/SBo}
PKG=$TMP/package-$PRGNAM
OUTPUT=${OUTPUT:-/tmp}
-if [ "$ARCH" = "i486" ]; then
- SLKCFLAGS="-O2 -march=i486 -mtune=i686"
- LBIDIRSUFFIX=""
+if [ "$ARCH" = "i586" ]; then
+ SLKCFLAGS="-O2 -march=i586 -mtune=i686"
+ LIBDIRSUFFIX=""
elif [ "$ARCH" = "i686" ]; then
SLKCFLAGS="-O2 -march=i686 -mtune=i686"
- LBIDIRSUFFIX=""
+ LIBDIRSUFFIX=""
elif [ "$ARCH" = "x86_64" ]; then
SLKCFLAGS="-O2 -fPIC"
- LBIDIRSUFFIX="64"
+ LIBDIRSUFFIX="64"
else
SLKCFLAGS="-O2"
LIBDIRSUFFIX=""
@@ -41,9 +71,9 @@ set -e
rm -rf $PKG
mkdir -p $TMP $PKG $OUTPUT
cd $TMP
-rm -rf $PRGNAM-$VERSION
-tar xvf $CWD/$PRGNAM-bundle-src-$VERSION.tar.gz
-cd $PRGNAM-bundle-src-$VERSION
+rm -rf $SRCNAM-$VERSION
+tar xvf $CWD/$SRCNAM-$VERSION.tar.gz
+cd $SRCNAM-$VERSION
chown -R root:root .
find -L . \
\( -perm 777 -o -perm 775 -o -perm 750 -o -perm 711 -o -perm 555 \
@@ -51,20 +81,34 @@ find -L . \
\( -perm 666 -o -perm 664 -o -perm 640 -o -perm 600 -o -perm 444 \
-o -perm 440 -o -perm 400 \) -exec chmod 644 {} \;
+# Fix for compiling mupen64plus-core with gcc-10
+patch -p1 < $CWD/mupen64plus-core-2.5.9-fix-gcc10-fno-common.patch
+
CFLAGS="$SLKCFLAGS" \
CXXFLAGS="$SLKCFLAGS" \
-./m64p_build.sh V=1
-./m64p_install.sh PREFIX=/usr LIBDIR=/usr/lib${LBIDIRSUFFIX} MANDIR=/usr/man DESTDIR=$PKG
+./m64p_build.sh
+./m64p_install.sh PREFIX=/usr LIBDIR=/usr/lib${LIBDIRSUFFIX} MANDIR=/usr/man DESTDIR=$PKG
+
+# Don't ship .la files:
+rm -f $PKG/{,usr/}lib${LIBDIRSUFFIX}/*.la
+
+find $PKG -print0 | xargs -0 file | grep -e "executable" -e "shared object" | grep ELF \
+ | cut -f 1 -d : | xargs strip --strip-unneeded 2> /dev/null || true
find $PKG/usr/man -type f -exec gzip -9 {} \;
for i in $( find $PKG/usr/man -type l ) ; do ln -s $( readlink $i ).gz $i.gz ; rm $i ; done
-mkdir -p $PKG/usr/doc/$PRGNAM-$VERSION
-cp -a $TMP/$PRGNAM-bundle-src-$VERSION/test/doc/* $PKG/usr/doc/$PRGNAM-$VERSION
-cat $CWD/$PRGNAM.SlackBuild > $PKG/usr/doc/$PRGNAM-$VERSION/$PRGNAM.SlackBuild
+# mupen64plus-bundle is all the required mupen64plus soures in one package,
+# so each source has its own docs.
+for i in audio-sdl core input-sdl rom rsp-hle ui-console video-glide64mk2 video-rice ; do
+ mkdir -p $PKG/usr/doc/$PRGNAM-$VERSION/$PRGNAM-$i
+ cp -a source/$PRGNAM-$i/{CREDITS,LICENSES,README,RELEASE,README.md,AUTHORS,gpl-license} \
+ $PKG/usr/doc/$PRGNAM-$VERSION/$PRGNAM-$i 2>/dev/null || :
+done
mkdir -p $PKG/install
cat $CWD/slack-desc > $PKG/install/slack-desc
+cat $CWD/doinst.sh > $PKG/install/doinst.sh
cd $PKG
-/sbin/makepkg -l y -c n -p $OUTPUT/$PRGNAM-$VERSION-$ARCH-$BUILD$TAG.${PKGTYPE:-tgz}
+/sbin/makepkg -l y -c n $OUTPUT/$PRGNAM-$VERSION-$ARCH-$BUILD$TAG.$PKGTYPE
diff --git a/games/mupen64plus/mupen64plus.info b/games/mupen64plus/mupen64plus.info
index 8c2e15abbd..6489f06e6b 100644
--- a/games/mupen64plus/mupen64plus.info
+++ b/games/mupen64plus/mupen64plus.info
@@ -1,8 +1,8 @@
PRGNAM="mupen64plus"
-VERSION="2.5"
+VERSION="2.5.9"
HOMEPAGE="https://github.com/mupen64plus/mupen64plus-core"
-DOWNLOAD="https://github.com/mupen64plus/mupen64plus-core/releases/download/2.5/mupen64plus-bundle-src-2.5.tar.gz"
-MD5SUM="e329654f869ced5eaf82a8c2337b28d7"
+DOWNLOAD="https://github.com/mupen64plus/mupen64plus-core/releases/download/2.5.9/mupen64plus-bundle-src-2.5.9.tar.gz"
+MD5SUM="e3e617e775039e6221bb06d6917cbe78"
DOWNLOAD_x86_64=""
MD5SUM_x86_64=""
REQUIRES=""
diff --git a/games/myman/myman.SlackBuild b/games/myman/myman.SlackBuild
index 681854e124..15e1828a67 100644
--- a/games/myman/myman.SlackBuild
+++ b/games/myman/myman.SlackBuild
@@ -1,4 +1,4 @@
-#!/bin/sh
+#!/bin/bash
# Slackware build script for myman
@@ -22,10 +22,13 @@
# OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF THIS SOFTWARE, EVEN IF
# ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
+cd $(dirname $0) ; CWD=$(pwd)
+
PRGNAM=myman
VERSION=${VERSION:-0.7.0}
BUILD=${BUILD:-1}
TAG=${TAG:-_SBo}
+PKGTYPE=${PKGTYPE:-tgz}
if [ -z "$ARCH" ]; then
case "$( uname -m )" in
@@ -35,7 +38,14 @@ if [ -z "$ARCH" ]; then
esac
fi
-CWD=$(pwd)
+# If the variable PRINT_PACKAGE_NAME is set, then this script will report what
+# the name of the created package would be, and then exit. This information
+# could be useful to other scripts.
+if [ ! -z "${PRINT_PACKAGE_NAME}" ]; then
+ echo "$PRGNAM-$VERSION-$ARCH-$BUILD$TAG.$PKGTYPE"
+ exit 0
+fi
+
TMP=${TMP:-/tmp/SBo}
PKG=$TMP/package-$PRGNAM
OUTPUT=${OUTPUT:-/tmp}
@@ -100,4 +110,4 @@ cat $CWD/slack-desc > $PKG/install/slack-desc
cat $CWD/doinst.sh > $PKG/install/doinst.sh
cd $PKG
-/sbin/makepkg -l y -c n $OUTPUT/$PRGNAM-$VERSION-$ARCH-$BUILD$TAG.${PKGTYPE:-tgz}
+/sbin/makepkg -l y -c n $OUTPUT/$PRGNAM-$VERSION-$ARCH-$BUILD$TAG.$PKGTYPE
diff --git a/games/nFlood/nFlood.SlackBuild b/games/nFlood/nFlood.SlackBuild
index 5352fd7254..e5613bc8b0 100644
--- a/games/nFlood/nFlood.SlackBuild
+++ b/games/nFlood/nFlood.SlackBuild
@@ -1,4 +1,4 @@
-#!/bin/sh
+#!/bin/bash
# Slackware build script for nFlood
@@ -22,10 +22,18 @@
# OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF THIS SOFTWARE, EVEN IF
# ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
+# 20220220 bkw: Modified by SlackBuilds.org:
+# - fix github download URL boondoggle.
+# - fix 15.0 build.
+# - binary in /usr/games.
+
+cd $(dirname $0) ; CWD=$(pwd)
+
PRGNAM=nFlood
VERSION=${VERSION:-0.5.0}
BUILD=${BUILD:-1}
TAG=${TAG:-_SBo}
+PKGTYPE=${PKGTYPE:-tgz}
if [ -z "$ARCH" ]; then
case "$( uname -m )" in
@@ -35,7 +43,11 @@ if [ -z "$ARCH" ]; then
esac
fi
-CWD=$(pwd)
+if [ ! -z "${PRINT_PACKAGE_NAME}" ]; then
+ echo "$PRGNAM-$VERSION-$ARCH-$BUILD$TAG.$PKGTYPE"
+ exit 0
+fi
+
TMP=${TMP:-/tmp/SBo}
PKG=$TMP/package-$PRGNAM
OUTPUT=${OUTPUT:-/tmp}
@@ -65,18 +77,16 @@ cd $PRGNAM-$VERSION
chown -R root:root .
find -L . \
\( -perm 777 -o -perm 775 -o -perm 750 -o -perm 711 -o -perm 555 \
- -o -perm 511 \) -exec chmod 755 {} \; -o \
+ -o -perm 511 \) -exec chmod 755 {} \+ -o \
\( -perm 666 -o -perm 664 -o -perm 640 -o -perm 600 -o -perm 444 \
- -o -perm 440 -o -perm 400 \) -exec chmod 644 {} \;
+ -o -perm 440 -o -perm 400 \) -exec chmod 644 {} \+
# install game in correct place and remove empty manpage
patch -p1 < $CWD/Makefile.patch
-make
-make install PREFIX=$PKG/usr
-
-find $PKG -print0 | xargs -0 file | grep -e "executable" -e "shared object" | grep ELF \
- | cut -f 1 -d : | xargs strip --strip-unneeded 2> /dev/null || true
+make CDEBUG="$SLKCFLAGS -fcommon"
+make install PREFIX=$PKG/usr BINDIR=$PKG/usr/games
+strip $PKG/usr/games/*
mkdir -p $PKG/usr/doc/$PRGNAM-$VERSION
cp -a COPYING README.md TODO $PKG/usr/doc/$PRGNAM-$VERSION
@@ -87,4 +97,4 @@ cat $CWD/slack-desc > $PKG/install/slack-desc
cat $CWD/doinst.sh > $PKG/install/doinst.sh
cd $PKG
-/sbin/makepkg -l y -c n $OUTPUT/$PRGNAM-$VERSION-$ARCH-$BUILD$TAG.${PKGTYPE:-tgz}
+/sbin/makepkg -l y -c n $OUTPUT/$PRGNAM-$VERSION-$ARCH-$BUILD$TAG.$PKGTYPE
diff --git a/games/nFlood/nFlood.info b/games/nFlood/nFlood.info
index feb3b27b82..f9d826c020 100644
--- a/games/nFlood/nFlood.info
+++ b/games/nFlood/nFlood.info
@@ -1,7 +1,7 @@
PRGNAM="nFlood"
VERSION="0.5.0"
HOMEPAGE="https://github.com/alexdantas/nFlood"
-DOWNLOAD="https://github.com/alexdantas/nFlood/archive/v0.5.0.tar.gz"
+DOWNLOAD="https://github.com/alexdantas/nFlood/archive/v0.5.0/nFlood-0.5.0.tar.gz"
MD5SUM="8846c12c2f6a132f42bfd543f67d5eef"
DOWNLOAD_x86_64=""
MD5SUM_x86_64=""
diff --git a/games/nSnake/nSnake.SlackBuild b/games/nSnake/nSnake.SlackBuild
index 11e0daad5b..c0ab1b6bfb 100644
--- a/games/nSnake/nSnake.SlackBuild
+++ b/games/nSnake/nSnake.SlackBuild
@@ -1,4 +1,4 @@
-#!/bin/sh
+#!/bin/bash
# Slackware build script for nSnake
@@ -22,11 +22,14 @@
# OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF THIS SOFTWARE, EVEN IF
# ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
+cd $(dirname $0) ; CWD=$(pwd)
+
PRGNAM=nSnake
SRCNAM=${PRGNAM,,}
VERSION=${VERSION:-3.0.1}
BUILD=${BUILD:-1}
TAG=${TAG:-_SBo}
+PKGTYPE=${PKGTYPE:-tgz}
if [ -z "$ARCH" ]; then
case "$( uname -m )" in
@@ -36,7 +39,14 @@ if [ -z "$ARCH" ]; then
esac
fi
-CWD=$(pwd)
+# If the variable PRINT_PACKAGE_NAME is set, then this script will report what
+# the name of the created package would be, and then exit. This information
+# could be useful to other scripts.
+if [ ! -z "${PRINT_PACKAGE_NAME}" ]; then
+ echo "$PRGNAM-$VERSION-$ARCH-$BUILD$TAG.$PKGTYPE"
+ exit 0
+fi
+
TMP=${TMP:-/tmp/SBo}
PKG=$TMP/package-$PRGNAM
OUTPUT=${OUTPUT:-/tmp}
@@ -92,4 +102,4 @@ cat $CWD/slack-desc > $PKG/install/slack-desc
cat $CWD/doinst.sh > $PKG/install/doinst.sh
cd $PKG
-/sbin/makepkg -l y -c n $OUTPUT/$PRGNAM-$VERSION-$ARCH-$BUILD$TAG.${PKGTYPE:-tgz}
+/sbin/makepkg -l y -c n $OUTPUT/$PRGNAM-$VERSION-$ARCH-$BUILD$TAG.$PKGTYPE
diff --git a/games/naev/bfd.diff b/games/naev/bfd.diff
new file mode 100644
index 0000000000..7f7c1ac466
--- /dev/null
+++ b/games/naev/bfd.diff
@@ -0,0 +1,19 @@
+diff -Naur naev-0.7.0/src/naev.c naev-0.7.0.patched/src/naev.c
+--- naev-0.7.0/src/naev.c 2017-07-15 18:51:22.000000000 -0400
++++ naev-0.7.0.patched/src/naev.c 2022-02-20 17:32:49.060133407 -0500
+@@ -1375,12 +1375,11 @@
+ asection *section;
+
+ for (section = abfd->sections; section != NULL; section = section->next) {
+- if ((bfd_get_section_flags(abfd, section) & SEC_ALLOC) == 0)
++ if ((bfd_section_flags(section) & SEC_ALLOC) == 0)
+ continue;
+
+- bfd_vma vma = bfd_get_section_vma(abfd, section);
+- bfd_size_type size = bfd_get_section_size(section);
+- if (address < vma || address >= vma + size)
++ bfd_vma vma = bfd_section_vma(section);
++ if (address < vma || address >= vma + bfd_section_size(section))
+ continue;
+
+ if (!bfd_find_nearest_line(abfd, section, syms, address - vma,
diff --git a/games/naev/naev.SlackBuild b/games/naev/naev.SlackBuild
index 66b3c8fa9f..a19a38bdbe 100644
--- a/games/naev/naev.SlackBuild
+++ b/games/naev/naev.SlackBuild
@@ -1,4 +1,4 @@
-#!/bin/sh
+#!/bin/bash
# Slackbuild for naev
# Written by JK Wood <joshuakwood@gmail.com>
@@ -21,10 +21,18 @@
# see fit. Or as I see fit. Or as I fit. Although
# that is unlikely, as I am rather tall.
+# 20220220 bkw: Modified by SlackBuilds.org, BUILD=2:
+# - fix build on 15.0.
+# - binary in /usr/games.
+# - absolute paths in .desktop.
+
+cd $(dirname $0) ; CWD=$(pwd)
+
PRGNAM=naev
VERSION=${VERSION:-0.7.0}
-BUILD=${BUILD:-1}
+BUILD=${BUILD:-2}
TAG=${TAG:-_SBo}
+PKGTYPE=${PKGTYPE:-tgz}
if [ -z "$ARCH" ]; then
case "$( uname -m )" in
@@ -34,7 +42,11 @@ if [ -z "$ARCH" ]; then
esac
fi
-CWD=$(pwd)
+if [ ! -z "${PRINT_PACKAGE_NAME}" ]; then
+ echo "$PRGNAM-$VERSION-$ARCH-$BUILD$TAG.$PKGTYPE"
+ exit 0
+fi
+
TMP=${TMP:-/tmp/SBo}
PKG=$TMP/package-$PRGNAM
OUTPUT=${OUTPUT:-/tmp}
@@ -61,18 +73,25 @@ cd $PRGNAM-$VERSION
chown -R root:root .
find -L . \
\( -perm 777 -o -perm 775 -o -perm 750 -o -perm 711 -o -perm 555 -o -perm 511 \) \
- -exec chmod 755 {} \; -o \
+ -exec chmod 755 {} \+ -o \
\( -perm 666 -o -perm 664 -o -perm 600 -o -perm 444 -o -perm 440 -o -perm 400 \) \
- -exec chmod 644 {} \;
+ -exec chmod 644 {} \+
mkdir -p $PKG/usr/share/$PRGNAM
cat $CWD/$PRGNAM-$VERSION-ndata.zip > $PKG/usr/share/$PRGNAM/ndata
+# 20220220 bkw: recent binutils API changes. patch based on:
+# https://707852.bugs.gentoo.org/attachment.cgi?id=611192
+patch -p1 < $CWD/bfd.diff
+
+SLKCFLAGS+=" -fcommon"
+
CFLAGS="$SLKCFLAGS" \
CXXFLAGS="$SLKCFLAGS" \
LDFLAGS="-lm -lvorbis" \
./configure \
--prefix=/usr \
+ --bindir=/usr/games \
--sysconfdir=/etc \
--localstatedir=/var \
--mandir=/usr/man \
@@ -82,15 +101,14 @@ LDFLAGS="-lm -lvorbis" \
--build=$ARCH-slackware-linux
make
-make install DESTDIR=$PKG
-
-find $PKG | xargs file | grep -e "executable" -e "shared object" | grep ELF \
- | cut -f 1 -d : | xargs strip --strip-unneeded 2> /dev/null || true
-
-find $PKG/usr/man -type f -exec gzip -9 {} \;
+make install-strip DESTDIR=$PKG
+gzip -9 $PKG/usr/man/man*/*
mkdir -p $PKG/usr/share/applications
-cat $TMP/$PRGNAM-$VERSION/$PRGNAM.desktop > $PKG/usr/share/applications/$PRGNAM.desktop
+sed -e '/^Icon/s,=.*,=/usr/share/pixmaps/naev.png,' \
+ -e '/^Exec/s,=,=/usr/games/,' \
+ < $PRGNAM.desktop \
+ > $PKG/usr/share/applications/$PRGNAM.desktop
mkdir -p $PKG/usr/doc/$PRGNAM-$VERSION
cp -a AUTHORS LICENSE README TODO \
@@ -102,4 +120,4 @@ cat $CWD/slack-desc > $PKG/install/slack-desc
cat $CWD/doinst.sh > $PKG/install/doinst.sh
cd $PKG
-/sbin/makepkg -l y -c n $OUTPUT/$PRGNAM-$VERSION-$ARCH-$BUILD$TAG.${PKGTYPE:-tgz}
+/sbin/makepkg -l y -c n $OUTPUT/$PRGNAM-$VERSION-$ARCH-$BUILD$TAG.$PKGTYPE
diff --git a/games/naev/naev.info b/games/naev/naev.info
index b6e7cc5831..eb7a93ecd4 100644
--- a/games/naev/naev.info
+++ b/games/naev/naev.info
@@ -7,6 +7,6 @@ MD5SUM="0efbf06f263a05f3463912462f27df65 \
d8f398fcff17d6c1c13ca35a582baaa1"
DOWNLOAD_x86_64=""
MD5SUM_x86_64=""
-REQUIRES="OpenAL"
+REQUIRES=""
MAINTAINER="JK Wood"
EMAIL="joshuakwood@gmail.com"
diff --git a/games/nblood/README b/games/nblood/README
index bed9e75816..96e1a9c8b3 100644
--- a/games/nblood/README
+++ b/games/nblood/README
@@ -1,11 +1,13 @@
nblood (game engine for Blood, Duke Nukem 3D, and Powerslave/Exhumed)
-nblood is a collection of reverse-engineered ports of Build games using
-EDuke32 engine technology and development principles.
+nblood is a collection of reverse-engineered ports of Build games
+using EDuke32 engine technology and development principles. Currently
+supported games are Blood, Duke Nukem 3D, and Powerslave aka Exhumed.
-This package only includes the game engines. You'll have to provide the
-game data to actually play any of the games. See README_game_data.txt
-for the list of supported games and the data required for each one.
+By default, the package only includes the game engines. You'll have
+to provide the game data to actually play any of the games. See
+README_game_data.txt for the list of supported game versions and the
+data required for each one.
-Optional dependency: isextract. This is only needed to extract the game
-data from the Blood install CD.
+Optional dependency: isextract. This is only needed to extract the
+game data from the Blood install CD or iso.
diff --git a/games/nblood/README_game_data.txt b/games/nblood/README_game_data.txt
index fc79a8aa69..31a92a7478 100644
--- a/games/nblood/README_game_data.txt
+++ b/games/nblood/README_game_data.txt
@@ -34,8 +34,9 @@ tracks and convert them to ogg or flac. Follow the instructions in
rednukem
========
-The rednukem binary only plays Duke Nukem 3D: Atomic Edition v1.5 and
-possibly (untested) the Plutonium Pak.
+The rednukem binary plays Duke Nukem 3D: Atomic Edition v1.5 and
+possibly (untested) the Plutonium Pak. It does *not* play the
+shareware Duke Nukem 3D.
For Atomic Edition, all you need is the DUKE3D.GRP file from the install
CD (mine's in atominst/ on the CD) or an installed copy of the game. It's
@@ -44,6 +45,12 @@ Copy this file to /usr/share/games/eduke32/ (no, that's not a typo,
rednukem uses eduke32's data directory). The filename actually doesn't
matter, rednukem uses the checksum to detect it.
+rednukem may also be able to play the Duke Nukem 3D addons such as
+"Duke it out in D.C.", "Life's a Beach", or "Nuclear Winter". Also
+possibly other games such as "Nam", "Napalm", "WWII GI", "Platoon
+Leader", "Redneck Rampage", and "Redneck Rampage Rides Again". None of
+these have been tested by the SlackBuild author.
+
pcexhumed
=========
diff --git a/games/nblood/extract-blood-data.sh b/games/nblood/extract-blood-data.sh
index 374d2a13e5..abafbdba3c 100644
--- a/games/nblood/extract-blood-data.sh
+++ b/games/nblood/extract-blood-data.sh
@@ -3,7 +3,7 @@
# extract-blood-data.sh - extract the game data from a mounted Blood
# CD-ROM or (not mounted) .iso file in the current directory.
-# By B. Watson <yalhcru@gmail.com>, released under the WTPL: Do WTF you
+# By B. Watson <urchlay@slackware.uk>, released under the WTPL: Do WTF you
# want with this.
if [ "$( id -u )" != "0" ]; then
diff --git a/games/nblood/git2tarxz.sh b/games/nblood/git2tarxz.sh
index 2c8c7f8829..d310d8d0c2 100644
--- a/games/nblood/git2tarxz.sh
+++ b/games/nblood/git2tarxz.sh
@@ -59,7 +59,9 @@ GIT_SHA=$( git rev-parse --short HEAD )
DATE=$( git log --date=format:%Y%m%d --format=%cd | head -1 )
-VERTAG=$( git tag -l | tail -1 )
+# 20211101 bkw: wha? there used to be tags, now they're gone.
+#VERTAG=$( git tag -l | tail -1 )
+VERTAG=v1.01
VERSION=${VERTAG}+${DATE}_${GIT_SHA}
diff --git a/games/nblood/nblood.SlackBuild b/games/nblood/nblood.SlackBuild
index d96b3e63e0..9a104127d4 100644
--- a/games/nblood/nblood.SlackBuild
+++ b/games/nblood/nblood.SlackBuild
@@ -1,8 +1,8 @@
-#!/bin/sh
+#!/bin/bash
# Slackware build script for nblood
-# Written by B. Watson (yalhcru@gmail.com)
+# Written by B. Watson (urchlay@slackware.uk)
# Licensed under the WTFPL. See http://www.wtfpl.net/txt/copying/ for details.
@@ -13,10 +13,18 @@
# the shareware version from eduke32_shareware_data. I expect upstream
# will finish the support for these at a later date...
+# 20230118 bkw: updated for v1.01+20230118_49af62a01, aka latest git.
+# It's not clear to me that the "1.01" is still correct: they don't
+# do releases or tags, and there's no mention of the version number
+# in README.md.
+
+cd $(dirname $0) ; CWD=$(pwd)
+
PRGNAM=nblood
-VERSION=${VERSION:-1.01+20200428_069c52b26}
+VERSION=${VERSION:-1.01+20230118_49af62a01}
BUILD=${BUILD:-1}
TAG=${TAG:-_SBo}
+PKGTYPE=${PKGTYPE:-tgz}
if [ -z "$ARCH" ]; then
case "$( uname -m )" in
@@ -26,7 +34,11 @@ if [ -z "$ARCH" ]; then
esac
fi
-CWD=$(pwd)
+if [ ! -z "${PRINT_PACKAGE_NAME}" ]; then
+ echo "$PRGNAM-$VERSION-$ARCH-$BUILD$TAG.$PKGTYPE"
+ exit 0
+fi
+
TMP=${TMP:-/tmp/SBo}
PKG=$TMP/package-$PRGNAM
OUTPUT=${OUTPUT:-/tmp}
@@ -55,19 +67,20 @@ find -L . -perm /111 -a \! -perm 755 -a -exec chmod 755 {} \+ -o \
# nblood looks in /usr/share/games/nblood/, which is fine.
-# pcexhumed doesn't look in /usr anywhere, so I'll make up a dir name
-# for it to use.
-sed -i \
- '/^ *addsearchpath(cwd);/aaddsearchpath("/usr/share/games/pcexhumed");' \
- source/exhumed/src/exhumed.cpp
+# pcexhumed now looks in /usr/share/games/pcexhumed, which is also the
+# dir I used to patch it to use.
# The engine wants to write a log file in the current directory where
# it gets run... and segfaults if it can't. The log file is just a copy
# of the process's stderr it looks like, so let's disable it.
sed -i.bak \
's|OSD_SetLogFile(APPBASENAME ".log");|OSD_SetLogFile("/dev/null");|' \
- source/blood/src/blood.cpp \
+ source/duke3d/src/game.cpp \
+ source/tekwar/src/tekgame.cpp \
+ source/sw/src/game.cpp \
source/rr/src/game.cpp \
+ source/blood/src/blood.cpp \
+ source/witchaven/src/witchaven.cpp \
source/exhumed/src/exhumed.cpp
make
@@ -106,7 +119,7 @@ for icon in $CWD/icons/*.png; do
done
mkdir -p $PKG/usr/share/pixmaps
-cat $CWD/icons/64.png > $PKG/usr/share/pixmaps/$PRGNAM.png
+ln -s ../icons/hicolor/48x48/apps/$PRGNAM.png $PKG/usr/share/pixmaps/$PRGNAM.png
mkdir -p $PKG/usr/doc/$PRGNAM-$VERSION
cp -a *.md source/blood/gpl-2.0.txt $PKG/usr/doc/$PRGNAM-$VERSION
@@ -117,4 +130,4 @@ sed "s,@WITHDATA@,$WITHDATA," $CWD/slack-desc > $PKG/install/slack-desc
cat $CWD/doinst.sh > $PKG/install/doinst.sh
cd $PKG
-/sbin/makepkg -l y -c n $OUTPUT/$PRGNAM-$VERSION-$ARCH-$BUILD$TAG.${PKGTYPE:-tgz}
+/sbin/makepkg -l y -c n $OUTPUT/$PRGNAM-$VERSION-$ARCH-$BUILD$TAG.$PKGTYPE
diff --git a/games/nblood/nblood.info b/games/nblood/nblood.info
index c3ed032e58..a91420c5fa 100644
--- a/games/nblood/nblood.info
+++ b/games/nblood/nblood.info
@@ -1,10 +1,10 @@
PRGNAM="nblood"
-VERSION="1.01+20200428_069c52b26"
+VERSION="1.01+20230118_49af62a01"
HOMEPAGE="https://github.com/nukeykt/NBlood"
-DOWNLOAD="https://slackware.uk/~urchlay/src/nblood-v1.01+20200428_069c52b26.tar.xz"
-MD5SUM="160e9effcc8ee2491453edabbcf8d7f8"
+DOWNLOAD="https://slackware.uk/~urchlay/src/nblood-v1.01+20230118_49af62a01.tar.xz"
+MD5SUM="30742a0879b179283d8b49d37df7d5f0"
DOWNLOAD_x86_64=""
MD5SUM_x86_64=""
-REQUIRES="SDL2"
+REQUIRES=""
MAINTAINER="B. Watson"
-EMAIL="yalhcru@gmail.com"
+EMAIL="urchlay@slackware.uk"
diff --git a/games/ncursesoflife/ncursesoflife.SlackBuild b/games/ncursesoflife/ncursesoflife.SlackBuild
index f308c97eca..3b309dc5d3 100644
--- a/games/ncursesoflife/ncursesoflife.SlackBuild
+++ b/games/ncursesoflife/ncursesoflife.SlackBuild
@@ -1,15 +1,18 @@
-#!/bin/sh
+#!/bin/bash
# Slackware build script for ncursesoflife
-# Written by B. Watson (yalhcru@gmail.com)
+# Written by B. Watson (urchlay@slackware.uk)
# Licensed under the WTFPL. See http://www.wtfpl.net/txt/copying/ for details.
+cd $(dirname $0) ; CWD=$(pwd)
+
PRGNAM=ncursesoflife
VERSION=${VERSION:-20141006_0ceeca7}
BUILD=${BUILD:-1}
TAG=${TAG:-_SBo}
+PKGTYPE=${PKGTYPE:-tgz}
if [ -z "$ARCH" ]; then
case "$( uname -m )" in
@@ -19,7 +22,11 @@ if [ -z "$ARCH" ]; then
esac
fi
-CWD=$(pwd)
+if [ ! -z "${PRINT_PACKAGE_NAME}" ]; then
+ echo "$PRGNAM-$VERSION-$ARCH-$BUILD$TAG.$PKGTYPE"
+ exit 0
+fi
+
TMP=${TMP:-/tmp/SBo}
PKG=$TMP/package-$PRGNAM
OUTPUT=${OUTPUT:-/tmp}
@@ -67,4 +74,4 @@ mkdir -p $PKG/install
cat $CWD/slack-desc > $PKG/install/slack-desc
cd $PKG
-/sbin/makepkg -l y -c n $OUTPUT/$PRGNAM-$VERSION-$ARCH-$BUILD$TAG.${PKGTYPE:-tgz}
+/sbin/makepkg -l y -c n $OUTPUT/$PRGNAM-$VERSION-$ARCH-$BUILD$TAG.$PKGTYPE
diff --git a/games/ncursesoflife/ncursesoflife.info b/games/ncursesoflife/ncursesoflife.info
index bdd928664c..3e4d8e41f0 100644
--- a/games/ncursesoflife/ncursesoflife.info
+++ b/games/ncursesoflife/ncursesoflife.info
@@ -7,4 +7,4 @@ DOWNLOAD_x86_64=""
MD5SUM_x86_64=""
REQUIRES=""
MAINTAINER="B. Watson"
-EMAIL="yalhcru@gmail.com"
+EMAIL="urchlay@slackware.uk"
diff --git a/games/nestopia/README b/games/nestopia/README
index 6a2ced51f5..a504babcf5 100644
--- a/games/nestopia/README
+++ b/games/nestopia/README
@@ -8,12 +8,4 @@ A 1Ghz CPU and 128MB RAM are required to get the best performance.
A Disk System BIOS (disksys.rom) is optional and, of course, not
included. If you have one, put it in ~/.nestopia
-This builds both the standalone application and the Libretro core (for
-use with RetroArch). To use the Libretro core, one step is to copy the
-following file to your RetroArch BIOS directory:
-
- /usr/share/nestopia/NstDatabase.xml
-
-Enable GTK GUI needs newer version of gtk3 (default GTK=no)
-
-GTK=yes ./nestopia.SlackBuild
+Since 1.51, nestopia need fltk from Slackware's /extra directory.
diff --git a/games/nestopia/doinst.sh b/games/nestopia/doinst.sh
index 65c7e2eeb9..3e5691a052 100644
--- a/games/nestopia/doinst.sh
+++ b/games/nestopia/doinst.sh
@@ -4,6 +4,6 @@ fi
if [ -e usr/share/icons/hicolor/icon-theme.cache ]; then
if [ -x /usr/bin/gtk-update-icon-cache ]; then
- /usr/bin/gtk-update-icon-cache -f usr/share/icons/hicolor >/dev/null 2>&1
+ /usr/bin/gtk-update-icon-cache usr/share/icons/hicolor >/dev/null 2>&1
fi
fi
diff --git a/games/nestopia/nestopia.SlackBuild b/games/nestopia/nestopia.SlackBuild
index cc656c658b..64ee868f93 100644
--- a/games/nestopia/nestopia.SlackBuild
+++ b/games/nestopia/nestopia.SlackBuild
@@ -1,15 +1,42 @@
-#!/bin/sh
+#!/bin/bash
# Slackware build script for Nestopia
# Written by Dugan Chen (thedoogster@gmail.com)
-# Editd by RuohShoei LIN
+# Maintained by RuohShoei LIN
+
+# Copyright 2020-2022 RuohShoei LIN
+# All rights reserved.
+#
+# Redistribution and use of this script, with or without modification, is
+# permitted provided that the following conditions are met:
+#
+# 1. Redistributions of this script must retain the above copyright
+# notice, this list of conditions and the following disclaimer.
+#
+# THIS SOFTWARE IS PROVIDED BY THE AUTHOR "AS IS" AND ANY EXPRESS OR IMPLIED
+# WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE IMPLIED WARRANTIES OF
+# MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE ARE DISCLAIMED. IN NO
+# EVENT SHALL THE AUTHOR BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL,
+# SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT LIMITED TO,
+# PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, DATA, OR PROFITS;
+# OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY,
+# WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR
+# OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF THIS SOFTWARE, EVEN IF
+# ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
+
+# 20220505 bkw: Modified by SlackBuilds.org, BUILD=2:
+# - update icon cache in doinst.sh.
+# Note to maintainer: consider putting the binary in /usr/games, since
+# it's for playing games...
+
+cd $(dirname $0) ; CWD=$(pwd)
PRGNAM=nestopia
-LIBNAM=${PRGNAM}_libretro
-VERSION=${VERSION:-1.50}
+VERSION=${VERSION:-1.52.0}
BUILD=${BUILD:-1}
TAG=${TAG:-_SBo}
+PKGTYPE=${PKGTYPE:-tgz}
if [ -z "$ARCH" ]; then
case "$( uname -m )" in
@@ -19,7 +46,11 @@ if [ -z "$ARCH" ]; then
esac
fi
-CWD=$(pwd)
+if [ ! -z "${PRINT_PACKAGE_NAME}" ]; then
+ echo "$PRGNAM-$VERSION-$ARCH-$BUILD$TAG.$PKGTYPE"
+ exit 0
+fi
+
TMP=${TMP:-/tmp/SBo}
PKG=$TMP/package-$PRGNAM
OUTPUT=${OUTPUT:-/tmp}
@@ -51,19 +82,12 @@ cd $PRGNAM-$VERSION
chown -R root:root .
find -L . \
\( -perm 777 -o -perm 775 -o -perm 750 -o -perm 711 -o -perm 555 \
- -o -perm 511 \) -exec chmod 755 {} \; -o \
+ -o -perm 511 \) -exec chmod 755 {} \+ -o \
\( -perm 666 -o -perm 664 -o -perm 640 -o -perm 600 -o -perm 444 \
- -o -perm 440 -o -perm 400 \) -exec chmod 644 {} \;
+ -o -perm 440 -o -perm 400 \) -exec chmod 644 {} \+
autoreconf -vif
-# --enable-gui requires a newer GTK than what's in 14.2.
-GTK=${GTK:-no}
-case "$GTK" in
- [yY]|[yY][eE][sS]) GTK="--enable-gui" ;;
- *) NO_UMFPACK="--disable-gui" ;;
-esac
-
CFLAGS="$SLKCFLAGS" \
CXXFLAGS="$SLKCFLAGS" \
./configure \
@@ -73,23 +97,15 @@ CXXFLAGS="$SLKCFLAGS" \
--localstatedir=/var \
--mandir=/usr/man \
--docdir=/usr/doc/$PRGNAM-$VERSION \
- --build=$ARCH-slackware-linux \
- --enable-doc \
- $GTK
+ --build=$ARCH-slackware-linux
make
-make install DESTDIR=$PKG
-
-make -C libretro
-
-install -Dm0644 libretro/$LIBNAM.so \
- $PKG/usr/lib${LIBDIRSUFFIX}/libretro/$LIBNAM.so
-install -Dm0644 $CWD/$LIBNAM.info \
- $PKG/usr/lib${LIBDIRSUFFIX}/libretro/info/$LIBNAM.info
-
-find $PKG -print0 | xargs -0 file | grep -e "executable" -e "shared object" | grep ELF \
- | cut -f 1 -d : | xargs strip --strip-unneeded 2> /dev/null || true
+make install-strip DESTDIR=$PKG
+mkdir -p $PKG/usr/doc/$PRGNAM-$VERSION
+cp -a \
+ COPYING COPYRIGHT \
+ $PKG/usr/doc/$PRGNAM-$VERSION
cat $CWD/$PRGNAM.SlackBuild > $PKG/usr/doc/$PRGNAM-$VERSION/$PRGNAM.SlackBuild
mkdir -p $PKG/install
@@ -97,4 +113,4 @@ cat $CWD/slack-desc > $PKG/install/slack-desc
cat $CWD/doinst.sh > $PKG/install/doinst.sh
cd $PKG
-/sbin/makepkg -l y -c n $OUTPUT/$PRGNAM-$VERSION-$ARCH-$BUILD$TAG.${PKGTYPE:-tgz}
+/sbin/makepkg -l y -c n $OUTPUT/$PRGNAM-$VERSION-$ARCH-$BUILD$TAG.$PKGTYPE
diff --git a/games/nestopia/nestopia.info b/games/nestopia/nestopia.info
index ba5607f146..22b14ef0eb 100644
--- a/games/nestopia/nestopia.info
+++ b/games/nestopia/nestopia.info
@@ -1,12 +1,10 @@
PRGNAM="nestopia"
-VERSION="1.50"
-HOMEPAGE="http://0ldsk00l.ca/nestopia/"
-DOWNLOAD="https://github.com/0ldsk00l/nestopia/archive/1.50/nestopia-1.50.tar.gz \
- https://raw.githubusercontent.com/libretro/libretro-super/6043e5f/dist/info/nestopia_libretro.info"
-MD5SUM="09f24c934663d93b1266aa6e8afa4592 \
- 1813bb09acf63d4772e50adc4182d259"
+VERSION="1.52.0"
+HOMEPAGE="https://0ldsk00l.ca/nestopia/"
+DOWNLOAD="https://github.com/0ldsk00l/nestopia/archive/1.52.0/nestopia-1.52.0.tar.gz"
+MD5SUM="b5c7519e8675b01552f84bf6801ec9da"
DOWNLOAD_x86_64=""
MD5SUM_x86_64=""
-REQUIRES="SDL2 autoconf-archive"
+REQUIRES=""
MAINTAINER="RuohShoei LIN"
EMAIL="lin[dot]ruohshoei [at] gmail [dot] com"
diff --git a/games/nethack/README b/games/nethack/README
deleted file mode 100644
index 1bf7f12cb7..0000000000
--- a/games/nethack/README
+++ /dev/null
@@ -1,8 +0,0 @@
-Nethack is a single-player dungeon exploration game. The emphasis is
-on discovering the detail of the dungeon. Each game presents a
-different landscape - the random number generator provides an
-essentially unlimited number of variations of the dungeon and its
-denizens to be discovered by the player in one of a number of
-characters: you can pick your race, your role, and your gender.
-
-User accounts that play this need to be members of the "games" group.
diff --git a/games/nethack/nethack-366.patch b/games/nethack/nethack-366.patch
deleted file mode 100644
index c8295c896e..0000000000
--- a/games/nethack/nethack-366.patch
+++ /dev/null
@@ -1,33 +0,0 @@
---- /var/lib/sbopkg/r0t/14.2/games/nethack/nethack.SlackBuild 2019-06-08 22:37:23.000000000 +0000
-+++ nethack.SlackBuild 2020-03-26 02:19:34.386984395 +0000
-@@ -25,7 +25,8 @@
- # ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
-
- PRGNAM=nethack
--VERSION=${VERSION:-3.6.2}
-+VERSION=${VERSION:-3.6.6}
-+SRCDIR=NetHack-NetHack-${VERSION}_Released
- SRCVERSION=$(echo $VERSION | sed "s,\.,,g")
- BUILD=${BUILD:-1}
- TAG=${TAG:-_SBo}
-@@ -63,9 +64,9 @@
- rm -rf $PKG
- mkdir -p $TMP $PKG $OUTPUT
- cd $TMP
--rm -rf $PRGNAM-$VERSION
-+rm -rf $SRCDIR
- tar xvf $CWD/$PRGNAM-$SRCVERSION-src.tgz
--cd $PRGNAM-$VERSION
-+cd $SRCDIR
- chown -R root:root .
- find -L . \
- \( -perm 777 -o -perm 775 -o -perm 750 -o -perm 711 -o -perm 555 -o -perm 511 \) \
-@@ -97,7 +98,7 @@
- cd sys/unix
- sh setup.sh hints/linux
- cd ../..
--make -j1 install PREFIX=$PKG
-+make -j1 install PREFIX=$PKG WINTTYLIB=-lncurses
- mkdir -p $PKG/usr/man/man6
- make PREFIX=$PKG -j1 install manpages # Multi-threaded builds fail.
-
diff --git a/games/nethack/nethack.SlackBuild b/games/nethack/nethack.SlackBuild
deleted file mode 100644
index 10fddde55c..0000000000
--- a/games/nethack/nethack.SlackBuild
+++ /dev/null
@@ -1,136 +0,0 @@
-#!/bin/sh
-
-# Slackware build script for nethack.
-
-# Written by Dugan Chen (thedoogster [at] gmail [dot] com)
-# Based on the Arch Linux PkgBuild.
-
-# Now maintained by Dave Woodfall <dave@slackbuilds.org>
-
-# Redistribution and use of this script, with or without modification, is
-# permitted provided that the following conditions are met:
-#
-# 1. Redistributions of this script must retain the above copyright
-# notice, this list of conditions and the following disclaimer.
-#
-# THIS SOFTWARE IS PROVIDED BY THE AUTHOR ''AS IS'' AND ANY EXPRESS OR IMPLIED
-# WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE IMPLIED WARRANTIES OF
-# MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE ARE DISCLAIMED. IN NO
-# EVENT SHALL THE AUTHOR BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL,
-# SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT LIMITED TO,
-# PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, DATA, OR PROFITS;
-# OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY,
-# WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR
-# OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF THIS SOFTWARE, EVEN IF
-# ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
-
-PRGNAM=nethack
-VERSION=${VERSION:-3.6.6}
-SRCDIR=NetHack-NetHack-${VERSION}_Released
-SRCVERSION=$(echo $VERSION | sed "s,\.,,g")
-BUILD=${BUILD:-1}
-TAG=${TAG:-_SBo}
-
-
-if [ -z "$ARCH" ]; then
- case "$( uname -m )" in
- i?86) ARCH=i586 ;;
- arm*) ARCH=arm ;;
- *) ARCH=$( uname -m ) ;;
- esac
-fi
-
-CWD=$(pwd)
-TMP=${TMP:-/tmp/SBo}
-PKG=$TMP/package-$PRGNAM
-OUTPUT=${OUTPUT:-/tmp}
-
-if [ "$ARCH" = "i586" ]; then
- SLKCFLAGS="-O2 -march=i586 -mtune=i686"
- LIBDIRSUFFIX=""
-elif [ "$ARCH" = "i686" ]; then
- SLKCFLAGS="-O2 -march=i686 -mtune=i686"
- LIBDIRSUFFIX=""
-elif [ "$ARCH" = "x86_64" ]; then
- SLKCFLAGS="-O2 -fPIC"
- LIBDIRSUFFIX="64"
-else
- SLKCFLAGS="-O2"
- LIBDIRSUFFIX=""
-fi
-
-set -e
-
-rm -rf $PKG
-mkdir -p $TMP $PKG $OUTPUT
-cd $TMP
-rm -rf $SRCDIR
-tar xvf $CWD/$PRGNAM-$SRCVERSION-src.tgz
-cd $SRCDIR
-chown -R root:root .
-find -L . \
- \( -perm 777 -o -perm 775 -o -perm 750 -o -perm 711 -o -perm 555 -o -perm 511 \) \
- -exec chmod 755 {} \; -o \
- \( -perm 666 -o -perm 664 -o -perm 600 -o -perm 444 -o -perm 440 -o -perm 400 \) \
- -exec chmod 644 {} \;
-
-sed -e 's|^/\* \(#define LINUX\) \*/|\1|' \
- -e 's|^/\* \(#define TIMED_DELAY\) \*/|\1|' -i include/unixconf.h
-
-# we are setting up for setgid games, so modify all necessary permissions
-# to allow full access for groups
-
-sed -e '/^HACKDIR/ s|/games/lib/\$(GAME)dir|/var/games/nethack/|' \
- -e '/^SHELLDIR/ s|/games|/usr/bin|' \
- -e '/^VARDIRPERM/ s|0755|0775|' \
- -e '/^VARFILEPERM/ s|0600|0664|' \
- -e '/^GAMEPERM/ s|0755|02755|' \
- -e 's|\(DSYSCF_FILE=\)\\"[^"]*\\"|\1\\"/var/games/nethack/sysconf\\"|' \
- -e 's|\(DHACKDIR=\)\\"[^"]*\\"|\1\\"/var/games/nethack/\\"|' -i sys/unix/hints/linux
-
-sed -e 's|^#GAMEUID.*|GAMEUID = root|' \
- -e 's|^#GAMEGRP.*|GAMEGRP = games|' \
- -e '/^FILEPERM\s*=/ s|0644|0664|' \
- -e '/^DIRPERM\s*=/ s|0755|0775|' -i sys/unix/Makefile.top
-
-sed -e "/^MANDIR\s*=/s|/usr/man/man6|$PKG/usr/man/man6|" -i sys/unix/Makefile.doc
-
-cd sys/unix
-sh setup.sh hints/linux
-cd ../..
-make -j1 install PREFIX=$PKG WINTTYLIB=-lncurses
-mkdir -p $PKG/usr/man/man6
-make PREFIX=$PKG -j1 install manpages # Multi-threaded builds fail.
-
-sed -e "s|HACKDIR=$PKG/|HACKDIR=/|" \
- -e "s|HACK=\$HACKDIR|HACK=/usr/lib$LIBDIRSUFFIX/nethack|" \
- -i $PKG/usr/bin/nethack
-
-mkdir -p $PKG/usr/lib$LIBDIRSUFFIX/nethack
-mv $PKG/var/games/nethack/{nethack,recover} $PKG/usr/lib$LIBDIRSUFFIX/nethack/
-
-# FS#43414: /var/games should be owned by root:games.
-chown -R root:games $PKG/var/games/
-chown root:games $PKG/usr/lib$LIBDIRSUFFIX/nethack/nethack
-
-# FS#43414: /var/games should be owned by root:games.
-mkdir -p $PKG/var/games
-chown -R root:games $PKG/var/games/
-
-find $PKG -print0 | xargs -0 file | grep -e "executable" -e "shared object" | grep ELF \
- | cut -f 1 -d : | xargs strip --strip-unneeded 2> /dev/null || true
-
-find $PKG/usr/man -type f -exec gzip -9 {} \;
-for i in $( find $PKG/usr/man -type l ) ; do ln -s $( readlink $i ).gz $i.gz ; rm $i ; done
-
-mkdir -p $PKG/usr/doc/$PRGNAM-$VERSION
-cp -a \
- doc/Guidebook.txt doc/fixes36.1 dat/license \
- $PKG/usr/doc/$PRGNAM-$VERSION
-cat $CWD/$PRGNAM.SlackBuild > $PKG/usr/doc/$PRGNAM-$VERSION/$PRGNAM.SlackBuild
-
-mkdir -p $PKG/install
-cat $CWD/slack-desc > $PKG/install/slack-desc
-
-cd $PKG
-/sbin/makepkg -l y -c n $OUTPUT/$PRGNAM-$VERSION-$ARCH-$BUILD$TAG.${PKGTYPE:-tgz}
diff --git a/games/nethack/nethack.info b/games/nethack/nethack.info
deleted file mode 100644
index 7a3aa538cc..0000000000
--- a/games/nethack/nethack.info
+++ /dev/null
@@ -1,10 +0,0 @@
-PRGNAM="nethack"
-VERSION="3.6.6"
-HOMEPAGE="https://nethack.org"
-DOWNLOAD="https://nethack.org/download/3.6.6/nethack-366-src.tgz"
-MD5SUM="6c9a75f556d24c66801d74d8727a602e"
-DOWNLOAD_x86_64=""
-MD5SUM_x86_64=""
-REQUIRES=""
-MAINTAINER="Dave Woodfall"
-EMAIL="dave@slackbuilds.org"
diff --git a/games/nethack/slack-desc b/games/nethack/slack-desc
deleted file mode 100644
index 91586f81d6..0000000000
--- a/games/nethack/slack-desc
+++ /dev/null
@@ -1,19 +0,0 @@
-# HOW TO EDIT THIS FILE:
-# The "handy ruler" below makes it easier to edit a package description.
-# Line up the first '|' above the ':' following the base package name, and
-# the '|' on the right side marks the last column you can put a character in.
-# You must make exactly 11 lines for the formatting to be correct. It's also
-# customary to leave one space after the ':' except on otherwise blank lines.
-
- |-----handy-ruler------------------------------------------------------|
-nethack: nethack (roguelike game)
-nethack:
-nethack: Nethack is a single-player dungeon exploration game. The emphasis is
-nethack: on discovering the detail of the dungeon. Each game presents a
-nethack: different landscape - the random number generator provides an
-nethack: essentially unlimited number of variations of the dungeon and its
-nethack: denizens to be discovered by the player in one of a number of
-nethack: characters: you can pick your race, your role, and your gender.
-nethack:
-nethack: http://nethack.org
-nethack:
diff --git a/games/neverball/Makefile.diff b/games/neverball/Makefile.diff
deleted file mode 100644
index dae48cb7f8..0000000000
--- a/games/neverball/Makefile.diff
+++ /dev/null
@@ -1,12 +0,0 @@
-diff -Naur neverball-1.6.0.orig/Makefile neverball-1.6.0/Makefile
---- neverball-1.6.0.orig/Makefile 2014-05-21 15:21:43.000000000 +0200
-+++ neverball-1.6.0/Makefile 2015-04-23 04:30:07.093366557 +0200
-@@ -21,7 +21,7 @@
- # Paths (packagers might want to set DATADIR and LOCALEDIR)
-
- USERDIR := .neverball
--DATADIR := ./data
-+DATADIR := /usr/share/neverball/data
- LOCALEDIR := ./locale
-
- ifeq ($(PLATFORM),mingw)
diff --git a/games/neverball/gcc10.patch b/games/neverball/gcc10.patch
new file mode 100644
index 0000000000..83e0a3a356
--- /dev/null
+++ b/games/neverball/gcc10.patch
@@ -0,0 +1,41 @@
+From a42492b8db06934c7a794630db92e3ff6ebaadaa Mon Sep 17 00:00:00 2001
+From: Sergei Trofimovich <slyfox@gentoo.org>
+Date: Mon, 3 Feb 2020 20:25:57 +0000
+Subject: [PATCH] share/text.h: fix build failure against gcc-10
+MIME-Version: 1.0
+Content-Type: text/plain; charset=UTF-8
+Content-Transfer-Encoding: 8bit
+
+On gcc-10 (and gcc-9 -fno-common) build fails as:
+
+```
+cc .. -o neverball ...
+ld: ball/st_save.o:(.bss+0x0):
+ multiple definition of `text_input'; share/text.o:(.bss+0x0): first defined here
+```
+
+gcc-10 will change the default from -fcommon to fno-common:
+https://gcc.gnu.org/PR85678.
+
+The error also happens if CFLAGS=-fno-common passed explicitly.
+
+Reported-by: Toralf Förster
+Bug: https://bugs.gentoo.org/708050
+Signed-off-by: Sergei Trofimovich <slyfox@gentoo.org>
+---
+ share/text.h | 2 +-
+ 1 file changed, 1 insertion(+), 1 deletion(-)
+
+diff --git a/share/text.h b/share/text.h
+index baee7921a..8a2d6f591 100644
+--- a/share/text.h
++++ b/share/text.h
+@@ -15,7 +15,7 @@ int text_length(const char *);
+
+ /*---------------------------------------------------------------------------*/
+
+-char text_input[MAXSTR];
++extern char text_input[MAXSTR];
+
+ void text_input_start(void (*cb)(int typing));
+ void text_input_stop(void);
diff --git a/games/neverball/neverball.SlackBuild b/games/neverball/neverball.SlackBuild
index c6bb39b7f9..9b01469ff3 100644
--- a/games/neverball/neverball.SlackBuild
+++ b/games/neverball/neverball.SlackBuild
@@ -1,12 +1,12 @@
-#!/bin/sh
+#!/bin/bash
# Slackware build script for Neverball
-# Copyright 2007-2009 Frank Caraballo <fecaraballo{at}gmail{dot}com>
+# Copyright 2007-2009 Frank Caraballo
+# Modified by Brad Hermanson
+# Copyright 2023 Johannes Schoepfer, Germany
# All rights reserved.
#
-# Modified by Brad Hermanson <apeitheo@gmail.com>
-#
# Redistribution and use of this script, with or without modification, is
# permitted provided that the following conditions are met:
#
@@ -24,27 +24,34 @@
# OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF THIS SOFTWARE, EVEN IF
# ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
+cd $(dirname $0) ; CWD=$(pwd)
+
PRGNAM=neverball
BONUS=neverputt
VERSION=${VERSION:-1.6.0}
BUILD=${BUILD:-1}
TAG=${TAG:-_SBo}
+PKGTYPE=${PKGTYPE:-tgz}
if [ -z "$ARCH" ]; then
case "$( uname -m )" in
- i?86) ARCH=i486 ;;
+ i?86) ARCH=i586 ;;
arm*) ARCH=arm ;;
*) ARCH=$( uname -m ) ;;
esac
fi
-CWD=$(pwd)
+if [ ! -z "${PRINT_PACKAGE_NAME}" ]; then
+ echo "$PRGNAM-$VERSION-$ARCH-$BUILD$TAG.$PKGTYPE"
+ exit 0
+fi
+
TMP=${TMP:-/tmp/SBo}
PKG=$TMP/package-$PRGNAM
OUTPUT=${OUTPUT:-/tmp}
-if [ "$ARCH" = "i486" ]; then
- SLKCFLAGS="-O2 -march=i486 -mtune=i686"
+if [ "$ARCH" = "i586" ]; then
+ SLKCFLAGS="-O2 -march=i586 -mtune=i686"
LIBDIRSUFFIX=""
elif [ "$ARCH" = "i686" ]; then
SLKCFLAGS="-O2 -march=i686 -mtune=i686"
@@ -72,21 +79,21 @@ find -L . \
\( -perm 666 -o -perm 664 -o -perm 600 -o -perm 444 -o -perm 440 -o -perm 400 \) \
-exec chmod 644 {} \;
-# Patch Makefile to change data directory and to make it compile
-# with appropriate flags
-patch -p1 < $CWD/Makefile.diff || exit 1
+patch -p1 < $CWD/gcc10.patch
-make CFLAGS="$SLKCFLAGS" || exit 1
+make LOCALEDIR=/usr/share/locale DATADIR=/usr/share/$PRGNAM \
+ CPPFLAGS="$SLKCFLAGS -DNDEBUG" CFLAGS="$SLKCFLAGS"
# Fix map permissions that were created by mapc during compile
-find data/ -name '*.sol' -exec chmod 644 {} \;
+find data/ -name '*.sol' -exec chmod 644 {} +
# Delete the .map files that are no longer required
-find data/ -name '*.map' -exec rm {} \;
+find data/ -name '*.map' -exec rm {} +
mkdir -p $PKG/usr/{bin,share/$PRGNAM}
-cp -a mapc $PRGNAM $BONUS $PKG/usr/bin || exit 1
-cp -a data/ $PKG/usr/share/$PRGNAM || exit 1
+cp -a mapc $PRGNAM $BONUS $PKG/usr/bin
+cp -a data/* $PKG/usr/share/$PRGNAM
+cp -a locale $PKG/usr/share/
( cd dist
for i in $PRGNAM $BONUS ; do
@@ -100,7 +107,9 @@ cp -a data/ $PKG/usr/share/$PRGNAM || exit 1
install -D -m 0644 ${i}_256.png $PKG/usr/share/icons/hicolor/256x256/apps/$i.png
install -D -m 0644 ${i}_512.png $PKG/usr/share/icons/hicolor/512x512/apps/$i.png
done
- cp -a ${PRGNAM}_replay.png $PKG/usr/share/icons/hicolor/48x48/apps/${PRGNAM}_replay.png
+ # fix png icon size
+ convert ${PRGNAM}_replay.png -resize 48x48\! \
+ $PKG/usr/share/icons/hicolor/48x48/apps/${PRGNAM}_replay.png
install -D -m 0644 neverlogos.svg $PKG/usr/share/icons/hicolor/scalable/apps/neverlogos.svg
install -D -m 0644 mapc.1 $PKG/usr/man/man1/mapc.1
install -D -m 0644 $PRGNAM.6 $PKG/usr/man/man6/$PRGNAM.6
@@ -114,7 +123,8 @@ find $PKG/usr/man -type f -exec gzip -9 {} \;
for i in $( find $PKG/usr/man -type l ) ; do ln -s $( readlink $i ).gz $i.gz ; rm $i ; done
mkdir -p $PKG/usr/doc/$PRGNAM-$VERSION
-cp -a LICENSE.md README.md doc/* $PKG/usr/doc/$PRGNAM-$VERSION
+cp -a LICENSE.md README.md doc/{authors.txt,changes.txt,manual.txt,release-notes.md} \
+ $PKG/usr/doc/$PRGNAM-$VERSION
cat $CWD/$PRGNAM.SlackBuild > $PKG/usr/doc/$PRGNAM-$VERSION/$PRGNAM.SlackBuild
mkdir -p $PKG/install
@@ -122,4 +132,4 @@ cat $CWD/slack-desc > $PKG/install/slack-desc
cat $CWD/doinst.sh > $PKG/install/doinst.sh
cd $PKG
-/sbin/makepkg -l y -c n $OUTPUT/$PRGNAM-$VERSION-$ARCH-$BUILD$TAG.${PKGTYPE:-tgz}
+/sbin/makepkg -l y -c n $OUTPUT/$PRGNAM-$VERSION-$ARCH-$BUILD$TAG.$PKGTYPE
diff --git a/games/neverball/neverball.info b/games/neverball/neverball.info
index f26a1c20bc..19d8825425 100644
--- a/games/neverball/neverball.info
+++ b/games/neverball/neverball.info
@@ -5,6 +5,6 @@ DOWNLOAD="https://neverball.org/neverball-1.6.0.tar.gz"
MD5SUM="444ba7838af776d504f3d16950a802eb"
DOWNLOAD_x86_64=""
MD5SUM_x86_64=""
-REQUIRES="physfs SDL2_ttf"
+REQUIRES="physfs"
MAINTAINER="Johannes Schoepfer"
EMAIL="slackbuilds@schoepfer.info"
diff --git a/games/nevernoid/README b/games/nevernoid/README
index 552926cf13..54257ee362 100644
--- a/games/nevernoid/README
+++ b/games/nevernoid/README
@@ -1,4 +1,4 @@
-nevernoid - clone of the game "Arkanoid", with extra powerups.
+nevernoid (clone of the game "Arkanoid" with extra powerups)
Nevernoid is distributed as binary-only freeware; this SlackBuild
script simply packages the binary in a Slack-friendly way, including
diff --git a/games/nevernoid/doinst.sh b/games/nevernoid/doinst.sh
new file mode 100644
index 0000000000..3e5691a052
--- /dev/null
+++ b/games/nevernoid/doinst.sh
@@ -0,0 +1,9 @@
+if [ -x /usr/bin/update-desktop-database ]; then
+ /usr/bin/update-desktop-database -q usr/share/applications >/dev/null 2>&1
+fi
+
+if [ -e usr/share/icons/hicolor/icon-theme.cache ]; then
+ if [ -x /usr/bin/gtk-update-icon-cache ]; then
+ /usr/bin/gtk-update-icon-cache usr/share/icons/hicolor >/dev/null 2>&1
+ fi
+fi
diff --git a/games/nevernoid/nevernoid.SlackBuild b/games/nevernoid/nevernoid.SlackBuild
index 6b61b7a4b4..4ca6e9daa9 100644
--- a/games/nevernoid/nevernoid.SlackBuild
+++ b/games/nevernoid/nevernoid.SlackBuild
@@ -1,15 +1,20 @@
-#!/bin/sh
+#!/bin/bash
# Slackware build script for nevernoid
-# Written by B. Watson (yalhcru@gmail.com)
+# Written by B. Watson (urchlay@slackware.uk)
# Licensed under the WTFPL. See http://www.wtfpl.net/txt/copying/ for details.
+# 20211025 bkw: BUILD=3, new-style icons.
+
+cd $(dirname $0) ; CWD=$(pwd)
+
PRGNAM=nevernoid
VERSION=${VERSION:-1.2}
-BUILD=${BUILD:-2}
+BUILD=${BUILD:-3}
TAG=${TAG:-_SBo}
+PKGTYPE=${PKGTYPE:-tgz}
if [ -z "$ARCH" ]; then
case "$( uname -m )" in
@@ -19,7 +24,11 @@ if [ -z "$ARCH" ]; then
esac
fi
-CWD=$(pwd)
+if [ ! -z "${PRINT_PACKAGE_NAME}" ]; then
+ echo "$PRGNAM-$VERSION-$ARCH-$BUILD$TAG.$PKGTYPE"
+ exit 0
+fi
+
TMP=${TMP:-/tmp/SBo}
PKG=$TMP/package-$PRGNAM
OUTPUT=${OUTPUT:-/tmp}
@@ -44,7 +53,10 @@ tar xvf $CWD/$ARCHIVE
cd $PRGNAM
# Upstream fixed a bug in one of the maps, as a separate download.
-unzip $CWD/"watch the birdy.zip"
+# Some dumb browsers might save the file with %20 where the spaces belong.
+BIRDY="$CWD/watch the birdy.zip"
+[ ! -e "$BIRDY" ] && BIRDY="$CWD/watch%20the%20birdy.zip"
+unzip "$BIRDY"
mv "watch the birdy.map" maps/
chown -R root:root .
@@ -73,11 +85,19 @@ cp $CWD/$PRGNAM.desktop $PKG/usr/share/applications
# in the gimp. Took about 10 minutes plus lots of cussing & head-scratching.
# If anyone who actually knows anything at all about graphic design would
# like to do a better icon, email me.
+for px in 16 32 48 64; do
+ size=${px}x${px}
+ dir=$PKG/usr/share/icons/hicolor/$size/apps
+ mkdir -p $dir
+ convert -resize $size $CWD/$PRGNAM.png $dir/$PRGNAM.png
+done
+
mkdir -p $PKG/usr/share/pixmaps
-cp $CWD/$PRGNAM.png $PKG/usr/share/pixmaps
+ln -s ../icons/hicolor/48x48/apps/$PRGNAM.png $PKG/usr/share/pixmaps/$PRGNAM.png
mkdir -p $PKG/install
cat $CWD/slack-desc > $PKG/install/slack-desc
+cat $CWD/doinst.sh > $PKG/install/doinst.sh
cd $PKG
-/sbin/makepkg -l y -c n $OUTPUT/$PRGNAM-$VERSION-$ARCH-$BUILD$TAG.${PKGTYPE:-tgz}
+/sbin/makepkg -l y -c n $OUTPUT/$PRGNAM-$VERSION-$ARCH-$BUILD$TAG.$PKGTYPE
diff --git a/games/nevernoid/nevernoid.desktop b/games/nevernoid/nevernoid.desktop
index e75f868eea..c08f3e4639 100644
--- a/games/nevernoid/nevernoid.desktop
+++ b/games/nevernoid/nevernoid.desktop
@@ -1,8 +1,7 @@
[Desktop Entry]
Name=NeverNoid
Comment=Clone of the Arkanoid arcade game
-Exec=nevernoid
+Exec=/usr/games/nevernoid
Type=Application
Icon=nevernoid
-GenericName=NeverNoid
Categories=Game;ArcadeGame;
diff --git a/games/nevernoid/nevernoid.info b/games/nevernoid/nevernoid.info
index 3ddcf1679f..5c95130543 100644
--- a/games/nevernoid/nevernoid.info
+++ b/games/nevernoid/nevernoid.info
@@ -1,14 +1,14 @@
PRGNAM="nevernoid"
VERSION="1.2"
-HOMEPAGE="http://www.doubledev.com/nevernoid.html"
-DOWNLOAD="http://www.doubledev.com/downloads/NeverNoid_v12_linux_x86.tar.gz \
- http://www.doubledev.com/downloads/watch%20the%20birdy.zip"
+HOMEPAGE="https://www.doubledev.com/nevernoid.html"
+DOWNLOAD="https://www.doubledev.com/downloads/NeverNoid_v12_linux_x86.tar.gz \
+ https://www.doubledev.com/downloads/watch%20the%20birdy.zip"
MD5SUM="ce70344326b85c87907bba42e09c3f58 \
e943ff6c8a189bc09dfe6963a916eaee"
-DOWNLOAD_x86_64="http://www.doubledev.com/downloads/NeverNoid_v12_linux_x64.tar.gz \
- http://www.doubledev.com/downloads/watch%20the%20birdy.zip"
+DOWNLOAD_x86_64="https://www.doubledev.com/downloads/NeverNoid_v12_linux_x64.tar.gz \
+ https://www.doubledev.com/downloads/watch%20the%20birdy.zip"
MD5SUM_x86_64="3a754706e414c3958457b69833a0e778 \
e943ff6c8a189bc09dfe6963a916eaee"
REQUIRES=""
MAINTAINER="B. Watson"
-EMAIL="yalhcru@gmail.com"
+EMAIL="urchlay@slackware.uk"
diff --git a/games/nevernoid/nevernoid.wrapper b/games/nevernoid/nevernoid.wrapper
index ae850c9245..892ec09d59 100644
--- a/games/nevernoid/nevernoid.wrapper
+++ b/games/nevernoid/nevernoid.wrapper
@@ -2,7 +2,7 @@
# Wrapper script for nevernoid to allow read-only shared data
# files, plus writable per-user highscore/settings in ~/nevernoid
-# Author: B. Watson (yalhcru@gmail.com)
+# Author: B. Watson (urchlay@slackware.uk)
# How lame is this? The game opens the map files O_RDWR (read/write
# access), even though it never attempts to write to them! Also, it
diff --git a/games/nexuiz/README b/games/nexuiz/README
index c10cd7961e..b1f798588d 100644
--- a/games/nexuiz/README
+++ b/games/nexuiz/README
@@ -1,8 +1,10 @@
+nexuiz (open-source first person shooter game)
+
Nexuiz is a fast paced 3d deathmatch game project created online
-by a team of developers called Alientrap. It is based on the
-open-sourced Quake engine. Nexuiz is a standalone game that can
-be played locally or over the internet. It is completely open
-source and actively developed.
+by a team of developers called Alientrap. It is based on the
+open-sourced Quake engine. Nexuiz is a standalone game that can
+be played locally or over the internet. It is completely open
+source.
Note: This SlackBuild just repackages the binaries (no compiling). The
"source" download is about 900M.
diff --git a/games/nexuiz/nexuiz.SlackBuild b/games/nexuiz/nexuiz.SlackBuild
index 4e526013cf..ebb2164aa7 100644
--- a/games/nexuiz/nexuiz.SlackBuild
+++ b/games/nexuiz/nexuiz.SlackBuild
@@ -1,11 +1,8 @@
-#!/bin/sh
+#!/bin/bash
# Slackware build script for Nexuiz
-# Now maintained by B. Watson <yalhcru@gmail.com>, please don't bother
-# Chess with questions about this build (bother me instead)
-
-# Copyright 2008-2009 Chess Griffin <chess@chessgriffin.com>
+# Copyright 2008-2009 Chess Griffin <email removed>
# All rights reserved.
#
# Redistribution and use of this script, with or without modification, is
@@ -25,10 +22,18 @@
# OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF THIS SOFTWARE, EVEN IF
# ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
+# Now maintained by B. Watson <urchlay@slackware.uk>, please don't bother
+# Chess with questions about this build (bother me instead)
+
+# 20220505 bkw: BUILD=2, add missing SlackBuild to doc dir.
+
+cd $(dirname $0) ; CWD=$(pwd)
+
PRGNAM=nexuiz
VERSION=${VERSION:-2.5.2}
-BUILD=${BUILD:-1}
+BUILD=${BUILD:-2}
TAG=${TAG:-_SBo}
+PKGTYPE=${PKGTYPE:-tgz}
SRCVER=$( echo $VERSION | tr -d . )
@@ -40,22 +45,20 @@ if [ -z "$ARCH" ]; then
esac
fi
-CWD=$(pwd)
+if [ ! -z "${PRINT_PACKAGE_NAME}" ]; then
+ echo "$PRGNAM-$VERSION-$ARCH-$BUILD$TAG.$PKGTYPE"
+ exit 0
+fi
+
TMP=${TMP:-/tmp/SBo}
PKG=$TMP/package-$PRGNAM
OUTPUT=${OUTPUT:-/tmp}
if [ "$ARCH" = "i586" ]; then
- SLKCFLAGS="-O2 -march=i586 -mtune=i686"
- LIBDIRSUFFIX=""
SRCARCH="686"
elif [ "$ARCH" = "i686" ]; then
- SLKCFLAGS="-O2 -march=i686 -mtune=i686"
- LIBDIRSUFFIX=""
SRCARCH="686"
elif [ "$ARCH" = "x86_64" ]; then
- SLKCFLAGS="-O2 -fPIC"
- LIBDIRSUFFIX="64"
SRCARCH="x86_64"
fi
@@ -73,11 +76,8 @@ unzip -o $CWD/nexuiz-$SRCVER.zip \
'Nexuiz/Nexuiz.app/*' 'Nexuiz/extra/*' 'Nexuiz/sources/*'
cd Nexuiz
chown -R root:root .
-find -L . \
- \( -perm 777 -o -perm 775 -o -perm 750 -o -perm 711 -o -perm 555 -o -perm 511 \) \
- -exec chmod 755 {} \; -o \
- \( -perm 666 -o -perm 664 -o -perm 600 -o -perm 444 -o -perm 440 -o -perm 400 \) \
- -exec chmod 644 {} \;
+find -L . -perm /111 -a \! -perm 755 -a -exec chmod 755 {} \+ -o \
+ \! -perm /111 -a \! -perm 644 -a -exec chmod 644 {} \+
install -D -m 0644 $CWD/nexuiz-glx.desktop \
$PKG/usr/share/applications/nexuiz-glx.desktop
@@ -88,6 +88,7 @@ mkdir -p $PKG/usr/share/pixmaps
cp $CWD/*.png $PKG/usr/share/pixmaps
mkdir -p $PKG/usr/doc/$PRGNAM-$VERSION
+cat $CWD/$PRGNAM.SlackBuild > $PKG/usr/doc/$PRGNAM-$VERSION/$PRGNAM.SlackBuild
cp -R ./Docs/* $PKG/usr/doc/$PRGNAM-$VERSION/
cp gpl.txt $PKG/usr/doc/$PRGNAM-$VERSION
# Include server scripts as docs:
@@ -124,4 +125,4 @@ cat $CWD/slack-desc > $PKG/install/slack-desc
cat $CWD/doinst.sh > $PKG/install/doinst.sh
cd $PKG
-/sbin/makepkg -l y -c n $OUTPUT/$PRGNAM-$VERSION-$ARCH-$BUILD$TAG.${PKGTYPE:-tgz}
+/sbin/makepkg -l y -c n $OUTPUT/$PRGNAM-$VERSION-$ARCH-$BUILD$TAG.$PKGTYPE
diff --git a/games/nexuiz/nexuiz.info b/games/nexuiz/nexuiz.info
index fdf618948e..cc3643a612 100644
--- a/games/nexuiz/nexuiz.info
+++ b/games/nexuiz/nexuiz.info
@@ -7,4 +7,4 @@ DOWNLOAD_x86_64=""
MD5SUM_x86_64=""
REQUIRES=""
MAINTAINER="B. Watson"
-EMAIL="yalhcru@gmail.com"
+EMAIL="urchlay@slackware.uk"
diff --git a/games/nexuiz/slack-desc b/games/nexuiz/slack-desc
index f9003c6cdd..f7b9fa4ad8 100644
--- a/games/nexuiz/slack-desc
+++ b/games/nexuiz/slack-desc
@@ -9,11 +9,11 @@
nexuiz: nexuiz (open-source first person shooter game)
nexuiz:
nexuiz: Nexuiz is a fast paced 3d deathmatch game project created online
-nexuiz: by a team of developers called Alientrap. It is based on the
-nexuiz: open-sourced Quake engine. Nexuiz is a standalone game that can
-nexuiz: be played locally or over the internet. It is completely open
-nexuiz: source and actively developed.
+nexuiz: by a team of developers called Alientrap. It is based on the
+nexuiz: open-sourced Quake engine. Nexuiz is a standalone game that can
+nexuiz: be played locally or over the internet. It is completely open
+nexuiz: source.
+nexuiz:
nexuiz:
-nexuiz: Homepage: http://www.alientrap.org/nexuiz
nexuiz:
nexuiz:
diff --git a/games/ninvaders/ninvaders.SlackBuild b/games/ninvaders/ninvaders.SlackBuild
index 3cf2e5cce2..9ed36cbb53 100644
--- a/games/ninvaders/ninvaders.SlackBuild
+++ b/games/ninvaders/ninvaders.SlackBuild
@@ -1,4 +1,4 @@
-#!/bin/sh
+#!/bin/bash
# Slackware build script for ninvaders
@@ -22,10 +22,17 @@
# OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF THIS SOFTWARE, EVEN IF
# ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
+# 20220220 bkw: Modified by SlackBuilds.org, BUILD=2:
+# - fix 15.0 build
+# - binary in /usr/games
+
+cd $(dirname $0) ; CWD=$(pwd)
+
PRGNAM=ninvaders
VERSION=${VERSION:-0.1.1}
-BUILD=${BUILD:-1}
+BUILD=${BUILD:-2}
TAG=${TAG:-_SBo}
+PKGTYPE=${PKGTYPE:-tgz}
if [ -z "$ARCH" ]; then
case "$( uname -m )" in
@@ -35,7 +42,11 @@ if [ -z "$ARCH" ]; then
esac
fi
-CWD=$(pwd)
+if [ ! -z "${PRINT_PACKAGE_NAME}" ]; then
+ echo "$PRGNAM-$VERSION-$ARCH-$BUILD$TAG.$PKGTYPE"
+ exit 0
+fi
+
TMP=${TMP:-/tmp/SBo}
PKG=$TMP/package-$PRGNAM
OUTPUT=${OUTPUT:-/tmp}
@@ -65,18 +76,15 @@ cd $PRGNAM-$VERSION
chown -R root:root .
find -L . \
\( -perm 777 -o -perm 775 -o -perm 750 -o -perm 711 -o -perm 555 \
- -o -perm 511 \) -exec chmod 755 {} \; -o \
+ -o -perm 511 \) -exec chmod 755 {} \+ -o \
\( -perm 666 -o -perm 664 -o -perm 640 -o -perm 600 -o -perm 444 \
- -o -perm 440 -o -perm 400 \) -exec chmod 644 {} \;
-
-make
+ -o -perm 440 -o -perm 400 \) -exec chmod 644 {} \+
-find $PKG -print0 | xargs -0 file | grep -e "executable" -e "shared object" | grep ELF \
- | cut -f 1 -d : | xargs strip --strip-unneeded 2> /dev/null || true
+make CFLAGS="$SLKCFLAGS -fcommon"
-mkdir -p $PKG/usr/bin
-install -D -m0755 nInvaders $PKG/usr/bin/nInvaders
-install -D -m0755 nInvaders $PKG/usr/bin/ninvaders
+mkdir -p $PKG/usr/games
+install -s -m0755 nInvaders $PKG/usr/games/nInvaders
+ln -s nInvaders $PKG/usr/games/$PRGNAM
mkdir -p $PKG/usr/doc/$PRGNAM-$VERSION
cp -a ChangeLog README gpl.txt $PKG/usr/doc/$PRGNAM-$VERSION
@@ -87,4 +95,4 @@ cat $CWD/slack-desc > $PKG/install/slack-desc
cat $CWD/doinst.sh > $PKG/install/doinst.sh
cd $PKG
-/sbin/makepkg -l y -c n $OUTPUT/$PRGNAM-$VERSION-$ARCH-$BUILD$TAG.${PKGTYPE:-tgz}
+/sbin/makepkg -l y -c n $OUTPUT/$PRGNAM-$VERSION-$ARCH-$BUILD$TAG.$PKGTYPE
diff --git a/games/njam/njam.SlackBuild b/games/njam/njam.SlackBuild
index af62b2dfb7..3930d342dc 100644
--- a/games/njam/njam.SlackBuild
+++ b/games/njam/njam.SlackBuild
@@ -1,8 +1,8 @@
-#!/bin/sh
+#!/bin/bash
# Slackware build script for njam
-# Copyright 2012-2016 Petar Petrov slackalaxy@gmail.com
+# Copyright 2012-2021 Petar Petrov slackalaxy@gmail.com
# All rights reserved.
#
# Redistribution and use of this script, with or without modification, is
@@ -22,10 +22,13 @@
# OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF THIS SOFTWARE, EVEN IF
# ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
+cd $(dirname $0) ; CWD=$(pwd)
+
PRGNAM=njam
VERSION=${VERSION:-1.25}
-BUILD=${BUILD:-1}
+BUILD=${BUILD:-2}
TAG=${TAG:-_SBo}
+PKGTYPE=${PKGTYPE:-tgz}
if [ -z "$ARCH" ]; then
case "$( uname -m )" in
@@ -35,7 +38,14 @@ if [ -z "$ARCH" ]; then
esac
fi
-CWD=$(pwd)
+# If the variable PRINT_PACKAGE_NAME is set, then this script will report what
+# the name of the created package would be, and then exit. This information
+# could be useful to other scripts.
+if [ ! -z "${PRINT_PACKAGE_NAME}" ]; then
+ echo "$PRGNAM-$VERSION-$ARCH-$BUILD$TAG.$PKGTYPE"
+ exit 0
+fi
+
TMP=${TMP:-/tmp/SBo}
PKG=$TMP/package-$PRGNAM
OUTPUT=${OUTPUT:-/tmp}
@@ -64,10 +74,10 @@ tar xvf $CWD/${PRGNAM}_${VERSION}.orig.tar.gz
cd $PRGNAM-$VERSION-src
chown -R root:root .
find -L . \
- \( -perm 777 -o -perm 775 -o -perm 750 -o -perm 711 -o -perm 555 -o -perm 511 \) \
- -exec chmod 755 {} \; -o \
- \( -perm 666 -o -perm 664 -o -perm 600 -o -perm 444 -o -perm 440 -o -perm 400 \) \
- -exec chmod 644 {} \;
+ \( -perm 777 -o -perm 775 -o -perm 750 -o -perm 711 -o -perm 555 \
+ -o -perm 511 \) -exec chmod 755 {} \; -o \
+ \( -perm 666 -o -perm 664 -o -perm 640 -o -perm 600 -o -perm 444 \
+ -o -perm 440 -o -perm 400 \) -exec chmod 644 {} \;
# Thanks to Debian for the patches (and the source tarball!)
patch -p1 < $CWD/patches/changed_hiscore_name.patch
@@ -107,4 +117,4 @@ cat $CWD/slack-desc > $PKG/install/slack-desc
cat $CWD/doinst.sh > $PKG/install/doinst.sh
cd $PKG
-/sbin/makepkg -l y -c n $OUTPUT/$PRGNAM-$VERSION-$ARCH-$BUILD$TAG.${PKGTYPE:-tgz}
+/sbin/makepkg -l y -c n $OUTPUT/$PRGNAM-$VERSION-$ARCH-$BUILD$TAG.$PKGTYPE
diff --git a/games/nlarn/nlarn.SlackBuild b/games/nlarn/nlarn.SlackBuild
index d182511647..bd83cd25ae 100644
--- a/games/nlarn/nlarn.SlackBuild
+++ b/games/nlarn/nlarn.SlackBuild
@@ -1,4 +1,4 @@
-#!/bin/sh
+#!/bin/bash
# Slackware build script for nlarn
@@ -22,10 +22,17 @@
# OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF THIS SOFTWARE, EVEN IF
# ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
+# 20220222 bkw: Modified by SlackBuilds.org, BUILD=2:
+# - fix build on 15.0.
+# - binary in /usr/games
+
+cd $(dirname $0) ; CWD=$(pwd)
+
PRGNAM=nlarn
VERSION=${VERSION:-0.7.2}
-BUILD=${BUILD:-1}
+BUILD=${BUILD:-2}
TAG=${TAG:-_SBo}
+PKGTYPE=${PKGTYPE:-tgz}
if [ -z "$ARCH" ]; then
case "$( uname -m )" in
@@ -35,7 +42,11 @@ if [ -z "$ARCH" ]; then
esac
fi
-CWD=$(pwd)
+if [ ! -z "${PRINT_PACKAGE_NAME}" ]; then
+ echo "$PRGNAM-$VERSION-$ARCH-$BUILD$TAG.$PKGTYPE"
+ exit 0
+fi
+
TMP=${TMP:-/tmp/SBo}
PKG=$TMP/package-$PRGNAM
OUTPUT=${OUTPUT:-/tmp}
@@ -65,23 +76,26 @@ cd $PRGNAM-$VERSION
chown -R root:root .
find -L . \
\( -perm 777 -o -perm 775 -o -perm 750 -o -perm 711 -o -perm 555 \
- -o -perm 511 \) -exec chmod 755 {} \; -o \
+ -o -perm 511 \) -exec chmod 755 {} \+ -o \
\( -perm 666 -o -perm 664 -o -perm 640 -o -perm 600 -o -perm 444 \
- -o -perm 440 -o -perm 400 \) -exec chmod 644 {} \;
+ -o -perm 440 -o -perm 400 \) -exec chmod 644 {} \+
+
+SLKCFLAGS+=" -fcommon"
-make
+# set our CFLAGS, disable -Werror and use ncurses6-config
+sed -i -e "s|-Werror ||" -e "s|-O2|$SLKCFLAGS|" -e "s|ncurses5|ncurses6|" Makefile
-find $PKG -print0 | xargs -0 file | grep -e "executable" -e "shared object" | grep ELF \
- | cut -f 1 -d : | xargs strip --strip-unneeded 2> /dev/null || true
+# 20220222 bkw: without the 'config=release', our flags weren't being used.
+make config=release
mkdir -p $PKG/usr/share/games/$PRGNAM \
$PKG/usr/share/games/$PRGNAM/lib \
- $PKG/usr/share/games/$PRGNAM/resources
+ $PKG/usr/share/games/$PRGNAM/resources
install -D -m0644 lib/* $PKG/usr/share/games/$PRGNAM/lib
install -D -m0644 resources/* $PKG/usr/share/games/$PRGNAM/resources
-install -D -m0755 $PRGNAM $PKG/usr/share/games/$PRGNAM
-install -D -m0755 $CWD/$PRGNAM.sh $PKG/usr/bin/$PRGNAM
+install -D -s -m0755 $PRGNAM $PKG/usr/share/games/$PRGNAM
+install -D -m0755 $CWD/$PRGNAM.sh $PKG/usr/games/$PRGNAM
mkdir -p $PKG/usr/doc/$PRGNAM-$VERSION
cp -a LICENSE *.txt $PKG/usr/doc/$PRGNAM-$VERSION
@@ -92,4 +106,4 @@ cat $CWD/slack-desc > $PKG/install/slack-desc
cat $CWD/doinst.sh > $PKG/install/doinst.sh
cd $PKG
-/sbin/makepkg -l y -c n $OUTPUT/$PRGNAM-$VERSION-$ARCH-$BUILD$TAG.${PKGTYPE:-tgz}
+/sbin/makepkg -l y -c n $OUTPUT/$PRGNAM-$VERSION-$ARCH-$BUILD$TAG.$PKGTYPE
diff --git a/games/noteye/README b/games/noteye/README
index e86f64085b..85ece1a3fa 100644
--- a/games/noteye/README
+++ b/games/noteye/README
@@ -1,9 +1,9 @@
noteye (fontend for roguelike games; includes hydraslayer)
-Necklace of the Eye (NotEye in short) is a roguelike frontend. It can
+Necklace of the Eye (NotEye for short) is a roguelike frontend. It can
modify the output of console and libtcod roguelikes, and it also works
-as a library which allows to easily port old ASCII roguelikes like ADOM
-into 21st century.
+as a library which allows easily porting old ASCII roguelikes like
+ADOM into 21st century.
Hydra Slayer is a Roguelike game focused on one thing: slaying
Hydras. It is inspired by Greek mythology, Dungeon Crawl, MathRL seven
diff --git a/games/noteye/doinst.sh b/games/noteye/doinst.sh
index 9fa0d8b3fa..3e5691a052 100644
--- a/games/noteye/doinst.sh
+++ b/games/noteye/doinst.sh
@@ -1,13 +1,9 @@
-
-# create empty high score file only if there isn't one
-if [ ! -e var/games/hydrascores.sav ]; then
- touch var/games/hydrascores.sav
-fi
-
-# always reset perms/ownership
-chmod 660 var/games/hydrascores.sav
-chown root:games var/games/hydrascores.sav
-
if [ -x /usr/bin/update-desktop-database ]; then
/usr/bin/update-desktop-database -q usr/share/applications >/dev/null 2>&1
fi
+
+if [ -e usr/share/icons/hicolor/icon-theme.cache ]; then
+ if [ -x /usr/bin/gtk-update-icon-cache ]; then
+ /usr/bin/gtk-update-icon-cache usr/share/icons/hicolor >/dev/null 2>&1
+ fi
+fi
diff --git a/games/noteye/hydraslayer.desktop b/games/noteye/hydraslayer.desktop
index ba3ff91e5d..5f25a9ea05 100644
--- a/games/noteye/hydraslayer.desktop
+++ b/games/noteye/hydraslayer.desktop
@@ -1,6 +1,6 @@
[Desktop Entry]
Name=Hydra Slayer
-Exec=hydraslayer
+Exec=/usr/games/hydraslayer
Icon=hydraslayer
Type=Application
Terminal=false
diff --git a/games/noteye/hydraslayer.png b/games/noteye/hydraslayer.png
deleted file mode 100644
index 3b7612743e..0000000000
--- a/games/noteye/hydraslayer.png
+++ /dev/null
Binary files differ
diff --git a/games/noteye/mtrand.h.xz b/games/noteye/mtrand.h.xz
new file mode 100644
index 0000000000..d4fbf32559
--- /dev/null
+++ b/games/noteye/mtrand.h.xz
Binary files differ
diff --git a/games/noteye/noteye.SlackBuild b/games/noteye/noteye.SlackBuild
index 828e65f220..99a3cdf2d9 100644
--- a/games/noteye/noteye.SlackBuild
+++ b/games/noteye/noteye.SlackBuild
@@ -1,15 +1,30 @@
-#!/bin/sh
+#!/bin/bash
# Slackware build script for noteye
-# Written by B. Watson (yalhcru@gmail.com)
+# Written by B. Watson (urchlay@slackware.uk)
# Licensed under the WTFPL. See http://www.wtfpl.net/txt/copying/ for details.
+# 20230109 bkw: BUILD=2, remove empty dir from docs.
+
+# 20211115 bkw:
+# - update for v8.4.
+# - compile with g++ again (needs -std=gnu++98).
+# - new-style icons.
+# - s/lua/luajit/ in REQUIRES.
+# - get rid of shared high score file in /var. it's now per-user
+# in ~/.config/noteye.
+# - don't install binary setgid games.
+# - add hydraslayer info to slack-desc.
+
+cd $(dirname $0) ; CWD=$(pwd)
+
PRGNAM=noteye
-VERSION=${VERSION:-7.6}
+VERSION=${VERSION:-8.4}
BUILD=${BUILD:-1}
TAG=${TAG:-_SBo}
+PKGTYPE=${PKGTYPE:-tgz}
if [ -z "$ARCH" ]; then
case "$( uname -m )" in
@@ -19,7 +34,11 @@ if [ -z "$ARCH" ]; then
esac
fi
-CWD=$(pwd)
+if [ ! -z "${PRINT_PACKAGE_NAME}" ]; then
+ echo "$PRGNAM-$VERSION-$ARCH-$BUILD$TAG.$PKGTYPE"
+ exit 0
+fi
+
TMP=${TMP:-/tmp/SBo}
PKG=$TMP/package-$PRGNAM
OUTPUT=${OUTPUT:-/tmp}
@@ -52,11 +71,8 @@ rm -rf $PRGNAM
eval unzip $CWD/$PRGNAM-$SRCVER.zip $EXCLUDES
cd $PRGNAM
chown -R root:root .
-find -L . \
- \( -perm 777 -o -perm 775 -o -perm 750 -o -perm 711 -o -perm 555 \
- -o -perm 511 \) -exec chmod 755 {} \; -o \
- \( -perm 666 -o -perm 664 -o -perm 640 -o -perm 600 -o -perm 444 \
- -o -perm 440 -o -perm 400 \) -exec chmod 644 {} \;
+find -L . -perm /111 -a \! -perm 755 -a -exec chmod 755 {} \+ -o \
+ \! -perm /111 -a \! -perm 644 -a -exec chmod 644 {} \+
# these don't need to be executable.
chmod 0644 common/*.noe games/*.noe
@@ -68,13 +84,14 @@ chmod 0644 common/*.noe games/*.noe
# to Slack-specific sbopkg.
patch -p1 < $CWD/sbo.diff
-# apparently Ubuntu has liblua-5.1.so, we just have liblua.so (same version).
-sed -i 's,-llua5.1,-llua,g' src/Makefile
+# fix underlinking.
+sed -i '/-lGLU *\$(TGT) *$/s,$, -lSDL2,' src/Makefile
-# store the writable high score file in /var, not /usr/share.
-sed -i 's,"hydrascores.sav","/var/games/hydrascores.sav",' hydra/hydra.cpp
+# release tarball for 8.4 is missing this header (so use a copy
+# from upstream's github)
+xzcat $CWD/mtrand.h.xz > hydra/mtrand.h
-make -C src CFLAGS="$SLKCFLAGS"
+make -C src CFLAGS="$SLKCFLAGS -std=gnu++98 -fpermissive"
# The 'make install' target is bad and wrong. Don't use.
PKGLIB=$PKG/usr/lib$LIBDIRSUFFIX
@@ -84,9 +101,8 @@ SOVER=$( echo $VERSION | cut -d. -f1 )
mkdir -p $PKG/usr/games $PKGLIB/$PRGNAM $PKGSHARE
# shared lib needs to be in /usr/lib(64), *not* /usr/share.
-# also put the game binary in a private dir instead of /usr/share,
-# and make it setgid games so the high score file can be updated.
-install -s -m2755 -oroot -ggames $PRGNAM $PKGLIB/$PRGNAM/
+# also put the game binary in a private dir instead of /usr/share.
+install -s -m0755 $PRGNAM $PKGLIB/$PRGNAM/
install -s -m0755 lib$PRGNAM.so $PKGLIB/lib$PRGNAM.so.$VERSION
ln -s lib$PRGNAM.so.$VERSION $PKGLIB/lib$PRGNAM.so.$SOVER
ln -s lib$PRGNAM.so.$VERSION $PKGLIB/lib$PRGNAM.so
@@ -113,12 +129,29 @@ sed -i \
"s,^\$NOTEYEDIR/,/usr/lib$LIBDIRSUFFIX/$PRGNAM/," \
$PKG/usr/games/*
-# don't install a highscore file here, see doinst.sh.
+# this results in better-looking noteye icons than if we extracted
+# noteye.ico, which is only 48x36. hydra.ico is 48x48 and there's
+# no larger version of the image in the source (it's composed of
+# even smaller pieces, from the hydraslayer graphics).
+for px in 16 32 48 64 128; do
+ size=${px}x${px}
+ dir=$PKG/usr/share/icons/hicolor/$size/apps
+ mkdir -p $dir
+ convert -background none \
+ -extent 400x400 \
+ -gravity center \
+ -resize $size \
+ gfx/noteye-logo.png \
+ $dir/$PRGNAM.png
+ [ "$px" -le "48" ] && \
+ convert 'hydra/hydra.ico[2]' -resize $px $dir/hydraslayer.png
+done
# icons extracted from the .ico files in the source, with icotool.
-mkdir -p $PKG/usr/share/pixmaps
-cat $CWD/$PRGNAM.png > $PKG/usr/share/pixmaps/$PRGNAM.png
-cat $CWD/hydraslayer.png > $PKG/usr/share/pixmaps/hydraslayer.png
+PIXMAPS=$PKG/usr/share/pixmaps
+mkdir -p $PIXMAPS
+ln -s ../icons/hicolor/48x48/apps/$PRGNAM.png $PIXMAPS/$PRGNAM.png
+ln -s ../icons/hicolor/48x48/apps/hydraslayer.png $PIXMAPS/hydraslayer.png
# .desktop files written for this build.
mkdir -p $PKG/usr/share/applications
@@ -133,7 +166,8 @@ gzip -9c $CWD/hydraslayer.6 > $PKG/usr/man/man6/hydraslayer.6.gz
# We don't need licenses/* as we're linking with system-wide libs, which
# have already installed their own licenses in /usr/doc.
mkdir -p $PKG/usr/doc/$PRGNAM-$VERSION
-cp -a COPYING README.txt sample $PKG/usr/doc/$PRGNAM-$VERSION
+rmdir sample/d # empty dir
+cp -a LICENSE README.md sample $PKG/usr/doc/$PRGNAM-$VERSION
cat $CWD/$PRGNAM.SlackBuild > $PKG/usr/doc/$PRGNAM-$VERSION/$PRGNAM.SlackBuild
mkdir -p $PKG/install
@@ -141,4 +175,4 @@ cat $CWD/slack-desc > $PKG/install/slack-desc
cat $CWD/doinst.sh > $PKG/install/doinst.sh
cd $PKG
-/sbin/makepkg -l y -c n $OUTPUT/$PRGNAM-$VERSION-$ARCH-$BUILD$TAG.${PKGTYPE:-tgz}
+/sbin/makepkg -l y -c n $OUTPUT/$PRGNAM-$VERSION-$ARCH-$BUILD$TAG.$PKGTYPE
diff --git a/games/noteye/noteye.desktop b/games/noteye/noteye.desktop
index 888d1ad02d..be688c388a 100644
--- a/games/noteye/noteye.desktop
+++ b/games/noteye/noteye.desktop
@@ -1,6 +1,6 @@
[Desktop Entry]
Name=Necklace of the Eye
-Exec=noteye
+Exec=/usr/games/noteye
Icon=noteye
Type=Application
Terminal=false
diff --git a/games/noteye/noteye.info b/games/noteye/noteye.info
index 2300ed29e9..a856982500 100644
--- a/games/noteye/noteye.info
+++ b/games/noteye/noteye.info
@@ -1,10 +1,10 @@
PRGNAM="noteye"
-VERSION="7.6"
+VERSION="8.4"
HOMEPAGE="http://www.roguetemple.com/z/noteye.php"
-DOWNLOAD="https://slackware.uk/~urchlay/src/noteye-76.zip"
-MD5SUM="650d0fd56b6d5ba72527737596c92766"
+DOWNLOAD="http://www.roguetemple.com/z/noteye/noteye-84.zip"
+MD5SUM="deeb32461838caa7fab8339508350d09"
DOWNLOAD_x86_64=""
MD5SUM_x86_64=""
-REQUIRES="lua"
+REQUIRES="luajit"
MAINTAINER="B. Watson"
-EMAIL="yalhcru@gmail.com"
+EMAIL="urchlay@slackware.uk"
diff --git a/games/noteye/noteye.png b/games/noteye/noteye.png
deleted file mode 100644
index d25930f04b..0000000000
--- a/games/noteye/noteye.png
+++ /dev/null
Binary files differ
diff --git a/games/noteye/slack-desc b/games/noteye/slack-desc
index b449fa645c..2b205fd467 100644
--- a/games/noteye/slack-desc
+++ b/games/noteye/slack-desc
@@ -6,14 +6,14 @@
# customary to leave one space after the ':' except on otherwise blank lines.
|-----handy-ruler------------------------------------------------------|
-noteye: noteye (frontend for roguelike games; includes hydraslayer)
-noteye:
-noteye: Necklace of the Eye (NotEye in short) is a roguelike frontend. It
-noteye: can modify the output of console and libtcod roguelikes, and it also
-noteye: works as a library which allows to easily port old ASCII roguelikes
-noteye: like ADOM into 21st century.
-noteye:
-noteye:
-noteye:
+noteye: noteye (fontend for roguelike games; includes hydraslayer)
noteye:
+noteye: Necklace of the Eye (NotEye for short) is a roguelike frontend. It can
+noteye: modify the output of console and libtcod roguelikes, and it also works
+noteye: as a library which allows easily porting old ASCII roguelikes like
+noteye: ADOM into 21st century.
noteye:
+noteye: Hydra Slayer is a Roguelike game focused on one thing: slaying
+noteye: Hydras. It is inspired by Greek mythology, Dungeon Crawl, MathRL
+noteye: seven day roguelike, and some mathematical puzzles about brave heroes
+noteye: slaying many headed beasts.
diff --git a/games/notpacman/notpacman.SlackBuild b/games/notpacman/notpacman.SlackBuild
index 5eaf7551ef..42959504f3 100644
--- a/games/notpacman/notpacman.SlackBuild
+++ b/games/notpacman/notpacman.SlackBuild
@@ -1,8 +1,8 @@
-#!/bin/sh
+#!/bin/bash
# Slackware build script for notpacman
-# Written by B. Watson (yalhcru@gmail.com)
+# Written by B. Watson (urchlay@slackware.uk)
# Licensed under the WTFPL. See http://www.wtfpl.net/txt/copying/ for details.
@@ -13,15 +13,22 @@
# that the unzip command can handle zipfiles with extra junk like a shebang
# at the beginning (it'll print a warning, is all).
+cd $(dirname $0) ; CWD=$(pwd)
+
PRGNAM=notpacman
VERSION=${VERSION:-1.0.4}
BUILD=${BUILD:-2}
TAG=${TAG:-_SBo}
+PKGTYPE=${PKGTYPE:-tgz}
# *.love files are just zip files full of lua code, they're cross-platform
ARCH=noarch
-CWD=$(pwd)
+if [ ! -z "${PRINT_PACKAGE_NAME}" ]; then
+ echo "$PRGNAM-$VERSION-$ARCH-$BUILD$TAG.$PKGTYPE"
+ exit 0
+fi
+
TMP=${TMP:-/tmp/SBo}
PKG=$TMP/package-$PRGNAM
OUTPUT=${OUTPUT:-/tmp}
@@ -68,4 +75,4 @@ cat $CWD/slack-desc > $PKG/install/slack-desc
cat $CWD/doinst.sh > $PKG/install/doinst.sh
cd $PKG
-/sbin/makepkg -l y -c n $OUTPUT/$PRGNAM-$VERSION-$ARCH-$BUILD$TAG.${PKGTYPE:-tgz}
+/sbin/makepkg -l y -c n $OUTPUT/$PRGNAM-$VERSION-$ARCH-$BUILD$TAG.$PKGTYPE
diff --git a/games/notpacman/notpacman.info b/games/notpacman/notpacman.info
index 1257de73d7..1c6cd3773d 100644
--- a/games/notpacman/notpacman.info
+++ b/games/notpacman/notpacman.info
@@ -1,10 +1,10 @@
PRGNAM="notpacman"
VERSION="1.0.4"
-HOMEPAGE="http://stabyourself.net/notpacman/"
+HOMEPAGE="https://stabyourself.net/notpacman/"
DOWNLOAD="https://slackware.uk/~urchlay/src/notpacman-source.zip"
MD5SUM="a7f00ac3b1c8cb94bfa07b711b076223"
DOWNLOAD_x86_64=""
MD5SUM_x86_64=""
REQUIRES="love-legacy072"
MAINTAINER="B. Watson"
-EMAIL="yalhcru@gmail.com"
+EMAIL="urchlay@slackware.uk"
diff --git a/games/nottetris2/nottetris2.SlackBuild b/games/nottetris2/nottetris2.SlackBuild
index fe991f32b9..f761b01a89 100644
--- a/games/nottetris2/nottetris2.SlackBuild
+++ b/games/nottetris2/nottetris2.SlackBuild
@@ -1,8 +1,8 @@
-#!/bin/sh
+#!/bin/bash
# Slackware build script for nottetris2
-# Written by B. Watson (yalhcru@gmail.com)
+# Written by B. Watson (urchlay@slackware.uk)
# Licensed under the WTFPL. See http://www.wtfpl.net/txt/copying/ for details.
@@ -12,14 +12,23 @@
# VERSION is just the modification date of the .love file.
+# 20230107 bkw: BUILD=2, include the SlackBuild in the doc dir.
+
+cd $(dirname $0) ; CWD=$(pwd)
+
PRGNAM=nottetris2
VERSION=${VERSION:-20110620}
-BUILD=${BUILD:-1}
+BUILD=${BUILD:-2}
TAG=${TAG:-_SBo}
+PKGTYPE=${PKGTYPE:-tgz}
ARCH=noarch
-CWD=$(pwd)
+if [ ! -z "${PRINT_PACKAGE_NAME}" ]; then
+ echo "$PRGNAM-$VERSION-$ARCH-$BUILD$TAG.$PKGTYPE"
+ exit 0
+fi
+
TMP=${TMP:-/tmp/SBo}
PKG=$TMP/package-$PRGNAM
OUTPUT=${OUTPUT:-/tmp}
@@ -45,8 +54,10 @@ echo '#!/usr/bin/env love-0.7.2' > $PKG/usr/games/$PRGNAM
cat "$PAYLOAD" >> $PKG/usr/games/$PRGNAM
chmod 755 $PKG/usr/games/$PRGNAM
-mkdir -p $PKG/usr/doc/$PRGNAM-$VERSION
-install -m0644 -oroot -groot "$README" $PKG/usr/doc/$PRGNAM-$VERSION
+PKGDOC=$PKG/usr/doc/$PRGNAM-$VERSION
+mkdir -p $PKGDOC
+install -m0644 -oroot -groot "$README" $PKGDOC
+cat $CWD/$PRGNAM.SlackBuild > $PKGDOC/$PRGNAM.SlackBuild
# .desktop written for this build
mkdir -p $PKG/usr/share/applications
@@ -61,4 +72,4 @@ cat $CWD/slack-desc > $PKG/install/slack-desc
cat $CWD/doinst.sh > $PKG/install/doinst.sh
cd $PKG
-/sbin/makepkg -l y -c n $OUTPUT/$PRGNAM-$VERSION-$ARCH-$BUILD$TAG.${PKGTYPE:-tgz}
+/sbin/makepkg -l y -c n $OUTPUT/$PRGNAM-$VERSION-$ARCH-$BUILD$TAG.$PKGTYPE
diff --git a/games/nottetris2/nottetris2.info b/games/nottetris2/nottetris2.info
index bfa438a8fe..332682dfdc 100644
--- a/games/nottetris2/nottetris2.info
+++ b/games/nottetris2/nottetris2.info
@@ -1,10 +1,10 @@
PRGNAM="nottetris2"
VERSION="20110620"
-HOMEPAGE="http://stabyourself.net/nottetris2/"
+HOMEPAGE="https://stabyourself.net/nottetris2/"
DOWNLOAD="https://slackware.uk/~urchlay/src/nottetris2-source.zip"
MD5SUM="35090d40c02139ea8b2f14c1b8de3f95"
DOWNLOAD_x86_64=""
MD5SUM_x86_64=""
REQUIRES="love-legacy072"
MAINTAINER="B. Watson"
-EMAIL="yalhcru@gmail.com"
+EMAIL="urchlay@slackware.uk"
diff --git a/games/npush/npush.SlackBuild b/games/npush/npush.SlackBuild
index 3ea180e29a..4a813423d5 100644
--- a/games/npush/npush.SlackBuild
+++ b/games/npush/npush.SlackBuild
@@ -1,4 +1,4 @@
-#!/bin/sh
+#!/bin/bash
# Slackware build script for npush
@@ -22,10 +22,13 @@
# OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF THIS SOFTWARE, EVEN IF
# ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
+cd $(dirname $0) ; CWD=$(pwd)
+
PRGNAM=npush
VERSION=${VERSION:-0.7}
BUILD=${BUILD:-1}
TAG=${TAG:-_SBo}
+PKGTYPE=${PKGTYPE:-tgz}
if [ -z "$ARCH" ]; then
case "$( uname -m )" in
@@ -35,7 +38,14 @@ if [ -z "$ARCH" ]; then
esac
fi
-CWD=$(pwd)
+# If the variable PRINT_PACKAGE_NAME is set, then this script will report what
+# the name of the created package would be, and then exit. This information
+# could be useful to other scripts.
+if [ ! -z "${PRINT_PACKAGE_NAME}" ]; then
+ echo "$PRGNAM-$VERSION-$ARCH-$BUILD$TAG.$PKGTYPE"
+ exit 0
+fi
+
TMP=${TMP:-/tmp/SBo}
PKG=$TMP/package-$PRGNAM
OUTPUT=${OUTPUT:-/tmp}
@@ -94,4 +104,4 @@ cat $CWD/slack-desc > $PKG/install/slack-desc
cat $CWD/doinst.sh > $PKG/install/doinst.sh
cd $PKG
-/sbin/makepkg -l y -c n $OUTPUT/$PRGNAM-$VERSION-$ARCH-$BUILD$TAG.${PKGTYPE:-tgz}
+/sbin/makepkg -l y -c n $OUTPUT/$PRGNAM-$VERSION-$ARCH-$BUILD$TAG.$PKGTYPE
diff --git a/games/nsudoku/nsudoku.SlackBuild b/games/nsudoku/nsudoku.SlackBuild
index 0fe54f1ca8..92989296b2 100644
--- a/games/nsudoku/nsudoku.SlackBuild
+++ b/games/nsudoku/nsudoku.SlackBuild
@@ -1,4 +1,4 @@
-#!/bin/sh
+#!/bin/bash
# Slackware build script for nsudoku
# Ryan P.C. McQuen | Everett, WA | ryanpcmcquen@member.fsf.org
@@ -24,10 +24,13 @@
# OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF THIS SOFTWARE, EVEN IF
# ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
+cd $(dirname $0) ; CWD=$(pwd)
+
PRGNAM=nsudoku
VERSION=${VERSION:-1.3}
BUILD=${BUILD:-1}
TAG=${TAG:-_SBo}
+PKGTYPE=${PKGTYPE:-tgz}
if [ -z "$ARCH" ]; then
case "$( uname -m )" in
@@ -37,7 +40,14 @@ if [ -z "$ARCH" ]; then
esac
fi
-CWD=$(pwd)
+# If the variable PRINT_PACKAGE_NAME is set, then this script will report what
+# the name of the created package would be, and then exit. This information
+# could be useful to other scripts.
+if [ ! -z "${PRINT_PACKAGE_NAME}" ]; then
+ echo "$PRGNAM-$VERSION-$ARCH-$BUILD$TAG.$PKGTYPE"
+ exit 0
+fi
+
TMP=${TMP:-/tmp/SBo}
PKG=$TMP/package-$PRGNAM
OUTPUT=${OUTPUT:-/tmp}
@@ -66,4 +76,4 @@ mkdir -p $PKG/install
cat $CWD/slack-desc > $PKG/install/slack-desc
cd $PKG
-/sbin/makepkg -l y -c n $OUTPUT/$PRGNAM-$VERSION-$ARCH-$BUILD$TAG.${PKGTYPE:-tgz}
+/sbin/makepkg -l y -c n $OUTPUT/$PRGNAM-$VERSION-$ARCH-$BUILD$TAG.$PKGTYPE
diff --git a/games/nsuds/nsuds.SlackBuild b/games/nsuds/nsuds.SlackBuild
index 73d5edcf64..ad5b426249 100644
--- a/games/nsuds/nsuds.SlackBuild
+++ b/games/nsuds/nsuds.SlackBuild
@@ -1,11 +1,24 @@
-#!/bin/sh
+#!/bin/bash
# Slackware build script for nsuds
# Written by Dan-Simon Myrland <dansimon@radiotube.org>
+# 20220505 bkw: Modified by SlackBuilds.org, BUILD=3:
+# - move help doc to regular Slackware doc dir (not /usr/share/doc).
+
+# 20220220 bkw: Modified by SlackBuilds.org, BUILD=2:
+# - fix 15.0 build.
+# - binary in /usr/games, man page in section 6.
+
+# TODO: /var/games/nsuds/high_scores looks like it's meant to be
+# writable by users, but it's not.
+
+cd $(dirname $0) ; CWD=$(pwd)
+
PRGNAM=nsuds
VERSION=${VERSION:-0.7B}
-BUILD=${BUILD:-1}
+BUILD=${BUILD:-3}
TAG=${TAG:-_SBo}
+PKGTYPE=${PKGTYPE:-tgz}
if [ -z "$ARCH" ]; then
case "$( uname -m )" in
@@ -15,8 +28,11 @@ if [ -z "$ARCH" ]; then
esac
fi
+if [ ! -z "${PRINT_PACKAGE_NAME}" ]; then
+ echo "$PRGNAM-$VERSION-$ARCH-$BUILD$TAG.$PKGTYPE"
+ exit 0
+fi
-CWD=$(pwd)
TMP=${TMP:-/tmp/SBo}
PKG=$TMP/package-$PRGNAM
OUTPUT=${OUTPUT:-/tmp}
@@ -46,30 +62,41 @@ cd $PRGNAM-$VERSION
chown -R root:root .
find -L . \
\( -perm 777 -o -perm 775 -o -perm 750 -o -perm 711 -o -perm 555 \
- -o -perm 511 \) -exec chmod 755 {} \; -o \
+ -o -perm 511 \) -exec chmod 755 {} \+ -o \
\( -perm 666 -o -perm 664 -o -perm 640 -o -perm 600 -o -perm 444 \
- -o -perm 440 -o -perm 400 \) -exec chmod 644 {} \;
+ -o -perm 440 -o -perm 400 \) -exec chmod 644 {} \+
+
+SLKCFLAGS+=" -fcommon"
CFLAGS="$SLKCFLAGS" \
CXXFLAGS="$SLKCFLAGS" \
./configure \
--prefix=/usr \
--libdir=/usr/lib${LIBDIRSUFFIX} \
+ --bindir=/usr/games \
--mandir=/usr/man \
+ --datadir=/usr \
--build=$ARCH-slackware-linux
-make
-make install-strip DESTDIR=$PKG
+# 20220505 bkw: this moves the "main" doc to our doc dir.
+runmake() {
+ make datadir=/usr ourhelpdir=/usr/doc/$PRGNAM-$VERSION "$@"
+}
+
+runmake
+runmake install-strip DESTDIR=$PKG
-find $PKG/usr/man -type f -exec gzip -9 {} \;
-for i in $( find $PKG/usr/man -type l ) ; do ln -s $( readlink $i ).gz $i.gz ; rm $i ; done
+mkdir -p $PKG/usr/man/man6
+sed '/^\.TH/s,"1","6",' $PKG/usr/man/man1/$PRGNAM.1 | \
+ gzip -9c > $PKG/usr/man/man6/$PRGNAM.6.gz
+rm -rf $PKG/usr/man/man1
mkdir -p $PKG/usr/doc/$PRGNAM-$VERSION
-cp -a AUTHORS COPYING ChangeLog INSTALL NEWS README TODO $PKG/usr/doc/$PRGNAM-$VERSION
+cp -a AUTHORS COPYING ChangeLog NEWS README TODO $PKG/usr/doc/$PRGNAM-$VERSION
cat $CWD/$PRGNAM.SlackBuild > $PKG/usr/doc/$PRGNAM-$VERSION/$PRGNAM.SlackBuild
mkdir -p $PKG/install
cat $CWD/slack-desc > $PKG/install/slack-desc
cd $PKG
-/sbin/makepkg -l y -c n $OUTPUT/$PRGNAM-$VERSION-$ARCH-$BUILD$TAG.${PKGTYPE:-tgz}
+/sbin/makepkg -l y -c n $OUTPUT/$PRGNAM-$VERSION-$ARCH-$BUILD$TAG.$PKGTYPE
diff --git a/games/nuvie/nuvie.SlackBuild b/games/nuvie/nuvie.SlackBuild
index 5faed72922..454930a881 100644
--- a/games/nuvie/nuvie.SlackBuild
+++ b/games/nuvie/nuvie.SlackBuild
@@ -1,4 +1,4 @@
-#!/bin/sh
+#!/bin/bash
# Slackware build script for nuvie
@@ -22,10 +22,17 @@
# OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF THIS SOFTWARE, EVEN IF
# ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
+# 20220221 bkw: Modified by SlackBuilds.org:
+# - fix 15.0 build.
+# - make the .desktop file validate.
+
+cd $(dirname $0) ; CWD=$(pwd)
+
PRGNAM=nuvie
VERSION=${VERSION:-2018.01.13_1fa4044}
BUILD=${BUILD:-1}
TAG=${TAG:-_SBo}
+PKGTYPE=${PKGTYPE:-tgz}
if [ -z "$ARCH" ]; then
case "$( uname -m )" in
@@ -35,7 +42,11 @@ if [ -z "$ARCH" ]; then
esac
fi
-CWD=$(pwd)
+if [ ! -z "${PRINT_PACKAGE_NAME}" ]; then
+ echo "$PRGNAM-$VERSION-$ARCH-$BUILD$TAG.$PKGTYPE"
+ exit 0
+fi
+
TMP=${TMP:-/tmp/SBo}
PKG=$TMP/package-$PRGNAM
OUTPUT=${OUTPUT:-/tmp}
@@ -65,9 +76,21 @@ cd $PRGNAM-$VERSION
chown -R root:root .
find -L . \
\( -perm 777 -o -perm 775 -o -perm 750 -o -perm 711 -o -perm 555 \
- -o -perm 511 \) -exec chmod 755 {} \; -o \
+ -o -perm 511 \) -exec chmod 755 {} \+ -o \
\( -perm 666 -o -perm 664 -o -perm 640 -o -perm 600 -o -perm 444 \
- -o -perm 440 -o -perm 400 \) -exec chmod 644 {} \;
+ -o -perm 440 -o -perm 400 \) -exec chmod 644 {} \+
+
+# 20220221 bkw: C++ grew a clamp() of its own in recent years, which
+# steps on the one defined in the source. Just rename it.
+grep -lr '\<clamp *(' | xargs sed -i 's,\<clamp *(,Clamp(,g'
+
+# 20220221 bkw: icon's not in /usr/share/icons, use abs path.
+# Also use abs path for the binary and make it validate.
+sed -i -e '/^Icon/s,=,=/usr/share/pixmaps/,' \
+ -e '/^Exec=/s,=,=/usr/games/,' \
+ -e '/^Encoding/d' \
+ -e 's,Application;,,' \
+ builds/linux/$PRGNAM.desktop
./autogen.sh
CFLAGS="$SLKCFLAGS" \
@@ -79,6 +102,7 @@ CXXFLAGS="$SLKCFLAGS" \
make
make install DESTDIR=$PKG
+strip $PKG/usr/games/$PRGNAM
# Copy missing data files
for i in images maps scripts; do
@@ -89,9 +113,6 @@ done
install -Dm0644 $PRGNAM.cfg.sample $PKG/usr/share/$PRGNAM/$PRGNAM.cfg.new
sed -i "s|./data|/usr/share/$PRGNAM|" $PKG/usr/share/$PRGNAM/$PRGNAM.cfg.new
-find $PKG -print0 | xargs -0 file | grep -e "executable" -e "shared object" | grep ELF \
- | cut -f 1 -d : | xargs strip --strip-unneeded 2> /dev/null || true
-
mkdir -p $PKG/usr/doc/$PRGNAM-$VERSION
cp -a AUTHORS COPYING README $PRGNAM.cfg.sample $PKG/usr/doc/$PRGNAM-$VERSION
cat $CWD/$PRGNAM.SlackBuild > $PKG/usr/doc/$PRGNAM-$VERSION/$PRGNAM.SlackBuild
@@ -101,4 +122,4 @@ cat $CWD/slack-desc > $PKG/install/slack-desc
cat $CWD/doinst.sh > $PKG/install/doinst.sh
cd $PKG
-/sbin/makepkg -l y -c n $OUTPUT/$PRGNAM-$VERSION-$ARCH-$BUILD$TAG.${PKGTYPE:-tgz}
+/sbin/makepkg -l y -c n $OUTPUT/$PRGNAM-$VERSION-$ARCH-$BUILD$TAG.$PKGTYPE
diff --git a/games/nxengine-evo/README b/games/nxengine-evo/README
new file mode 100644
index 0000000000..b757a8ab41
--- /dev/null
+++ b/games/nxengine-evo/README
@@ -0,0 +1,21 @@
+A somewhat upgraded/refactored version of NXEngine by Caitlin Shaw.
+
+NXEngine is a complete open-source clone/rewrite of the masterpiece
+jump-and-run platformer Doukutsu Monogatari (also known as Cave Story).
+
+Differences from the original version of NXEngine:
+ * Port to SDL2 (thanks to PIlin)
+ * More resolutions and proper widescreen support up to Full HD
+ (thanks to EXL)
+ * Animated character portraits
+ * Modern main menu
+ * Credits graphics specific to the Mimiga Mask ending
+ * Localization support
+ * Force feedback support
+ * Custom soundtrack support
+ * Initial mod support
+ * Vita/Switch versions
+ * Cleaner and partly-refactored code
+ * Tons of gameplay-related bugfixes
+ * Removed built-in data extractor
+ * Removed replays, as they were buggy/not implemented anyway
diff --git a/games/nxengine-evo/doinst.sh b/games/nxengine-evo/doinst.sh
new file mode 100644
index 0000000000..65c7e2eeb9
--- /dev/null
+++ b/games/nxengine-evo/doinst.sh
@@ -0,0 +1,9 @@
+if [ -x /usr/bin/update-desktop-database ]; then
+ /usr/bin/update-desktop-database -q usr/share/applications >/dev/null 2>&1
+fi
+
+if [ -e usr/share/icons/hicolor/icon-theme.cache ]; then
+ if [ -x /usr/bin/gtk-update-icon-cache ]; then
+ /usr/bin/gtk-update-icon-cache -f usr/share/icons/hicolor >/dev/null 2>&1
+ fi
+fi
diff --git a/games/nxengine-evo/nxengine-evo.SlackBuild b/games/nxengine-evo/nxengine-evo.SlackBuild
new file mode 100644
index 0000000000..821a1acfed
--- /dev/null
+++ b/games/nxengine-evo/nxengine-evo.SlackBuild
@@ -0,0 +1,114 @@
+#!/bin/bash
+
+# Slackware build script for nxengine-evo
+
+# Copyright 2022 Steven Voges <Oregon, USA>
+# All rights reserved.
+#
+# Redistribution and use of this script, with or without modification, is
+# permitted provided that the following conditions are met:
+#
+# 1. Redistributions of this script must retain the above copyright
+# notice, this list of conditions and the following disclaimer.
+#
+# THIS SOFTWARE IS PROVIDED BY THE AUTHOR "AS IS" AND ANY EXPRESS OR IMPLIED
+# WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE IMPLIED WARRANTIES OF
+# MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE ARE DISCLAIMED. IN NO
+# EVENT SHALL THE AUTHOR BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL,
+# SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT LIMITED TO,
+# PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, DATA, OR PROFITS;
+# OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY,
+# WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR
+# OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF THIS SOFTWARE, EVEN IF
+# ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
+
+cd $(dirname $0) ; CWD=$(pwd)
+
+PRGNAM=nxengine-evo
+VERSION=${VERSION:-2.6.5.1}
+SRCVER=${SRCVER:-"2.6.5-1"}
+BUILD=${BUILD:-1}
+TAG=${TAG:-_SBo}
+PKGTYPE=${PKGTYPE:-tgz}
+
+if [ -z "$ARCH" ]; then
+ case "$( uname -m )" in
+ i?86) ARCH=i586 ;;
+ arm*) ARCH=arm ;;
+ *) ARCH=$( uname -m ) ;;
+ esac
+fi
+
+if [ ! -z "${PRINT_PACKAGE_NAME}" ]; then
+ echo "$PRGNAM-$VERSION-$ARCH-$BUILD$TAG.$PKGTYPE"
+ exit 0
+fi
+
+TMP=${TMP:-/tmp/SBo}
+PKG=$TMP/package-$PRGNAM
+OUTPUT=${OUTPUT:-/tmp}
+
+if [ "$ARCH" = "i586" ]; then
+ SLKCFLAGS="-O2 -march=i586 -mtune=i686"
+ LIBDIRSUFFIX=""
+elif [ "$ARCH" = "i686" ]; then
+ SLKCFLAGS="-O2 -march=i686 -mtune=i686"
+ LIBDIRSUFFIX=""
+elif [ "$ARCH" = "x86_64" ]; then
+ SLKCFLAGS="-O2 -fPIC"
+ LIBDIRSUFFIX="64"
+else
+ SLKCFLAGS="-O2"
+ LIBDIRSUFFIX=""
+fi
+
+set -e
+
+rm -rf $PKG
+mkdir -p $TMP $PKG $OUTPUT
+cd $TMP
+rm -rf $PRGNAM-$SRCVER
+tar xvf $CWD/$PRGNAM-$SRCVER.tar.gz
+unzip $CWD/cavestoryen.zip -d \
+ $TMP/$PRGNAM-$SRCVER
+cp -r $TMP/$PRGNAM-$SRCVER/CaveStory/data/ \
+ $TMP/$PRGNAM-$SRCVER/
+cp $TMP/$PRGNAM-$SRCVER/CaveStory/Doukutsu.exe \
+ $TMP/$PRGNAM-$SRCVER/
+
+cd $PRGNAM-$SRCVER
+chown -R root:root .
+find -L . \
+ \( -perm 777 -o -perm 775 -o -perm 750 -o -perm 711 -o -perm 555 \
+ -o -perm 511 \) -exec chmod 755 {} \; -o \
+ \( -perm 666 -o -perm 664 -o -perm 640 -o -perm 600 -o -perm 444 \
+ -o -perm 440 -o -perm 400 \) -exec chmod 644 {} \;
+
+mkdir -p build
+cd build
+ cmake \
+ -DCMAKE_CXX_FLAGS:STRING="$SLKCFLAGS" \
+ -DCMAKE_INSTALL_PREFIX=/usr \
+ -DCMAKE_BUILD_TYPE=Release ..
+ make
+cd ..
+./build/nxextract
+cd build
+ make install/strip DESTDIR=$PKG
+cd ..
+
+find $PKG -print0 | xargs -0 file | grep -e "executable" -e "shared object" | grep ELF \
+ | cut -f 1 -d : | xargs strip --strip-unneeded 2> /dev/null || true
+
+mkdir -p $PKG/usr/doc/$PRGNAM-$VERSION
+cp -a \
+ LICENSE README.md \
+ $PKG/usr/doc/$PRGNAM-$VERSION
+cat $CWD/$PRGNAM.SlackBuild > $PKG/usr/doc/$PRGNAM-$VERSION/$PRGNAM.SlackBuild
+
+mkdir -p $PKG/install
+cat $CWD/slack-desc > $PKG/install/slack-desc
+cat $CWD/doinst.sh > $PKG/install/doinst.sh
+
+cd $PKG
+/sbin/makepkg -l y -c n $OUTPUT/$PRGNAM-$VERSION-$ARCH-$BUILD$TAG.$PKGTYPE
diff --git a/games/nxengine-evo/nxengine-evo.info b/games/nxengine-evo/nxengine-evo.info
new file mode 100644
index 0000000000..671f4c065d
--- /dev/null
+++ b/games/nxengine-evo/nxengine-evo.info
@@ -0,0 +1,12 @@
+PRGNAM="nxengine-evo"
+VERSION="2.6.5.1"
+HOMEPAGE="https://github.com/nxengine/nxengine-evo"
+DOWNLOAD="https://github.com/nxengine/nxengine-evo/archive/v2.6.5-1/nxengine-evo-2.6.5-1.tar.gz \
+ https://www.cavestory.org/downloads/cavestoryen.zip"
+MD5SUM="c7de00cf5658e1716e223d4ca0d6785d \
+ 5aad47f1cb72185d6e7f4c8c392f6b6e"
+DOWNLOAD_x86_64=""
+MD5SUM_x86_64=""
+REQUIRES=""
+MAINTAINER="Steven Voges"
+EMAIL="svoges.sbo@gmail.com"
diff --git a/games/nxengine-evo/slack-desc b/games/nxengine-evo/slack-desc
new file mode 100644
index 0000000000..4966b44730
--- /dev/null
+++ b/games/nxengine-evo/slack-desc
@@ -0,0 +1,19 @@
+# HOW TO EDIT THIS FILE:
+# The "handy ruler" below makes it easier to edit a package description.
+# Line up the first '|' above the ':' following the base package name, and
+# the '|' on the right side marks the last column you can put a character in.
+# You must make exactly 11 lines for the formatting to be correct. It's also
+# customary to leave one space after the ':' except on otherwise blank lines.
+
+ |-----handy-ruler------------------------------------------------------|
+nxengine-evo: nxengine-evo (Refactored NXEngine)
+nxengine-evo:
+nxengine-evo: NXEngine refactoring.
+nxengine-evo:
+nxengine-evo: NXEngine is a complete open-source clone/rewrite of the masterpiece
+nxengine-evo: jump-and-run platformer Doukutsu Monogatari (also known as Cave
+nxengine-evo: Story).
+nxengine-evo:
+nxengine-evo: Homepage: https://github.com/nxengine/nxengine-evo
+nxengine-evo:
+nxengine-evo:
diff --git a/games/nxengine-libretro/README b/games/nxengine-libretro/README
deleted file mode 100644
index 05cf3aef55..0000000000
--- a/games/nxengine-libretro/README
+++ /dev/null
@@ -1,14 +0,0 @@
-Port of NxEngine to the libretro API. NXEngine is a Cave Story game
-engine clone.
-
-It will require Cave Story 1.0.0.6 and the Aeon Genesis translation
-which can be download from the RetroArch downloadable content.
-
-Alternatively Cave Story is available from Studio Pixel's website:
-https://studiopixel.sakura.ne.jp/archives/index.html
-
-The Aeon Genesis translation is available from:
-https://agtp.romhack.net/project.php?id=cavestory
-
-To build the debugging symbols use:
- DEBUG=1 ./nxengine-libretro.SlackBuild
diff --git a/games/nxengine-libretro/nxengine-libretro.SlackBuild b/games/nxengine-libretro/nxengine-libretro.SlackBuild
deleted file mode 100644
index 07d1cf8e2a..0000000000
--- a/games/nxengine-libretro/nxengine-libretro.SlackBuild
+++ /dev/null
@@ -1,82 +0,0 @@
-#!/bin/sh
-
-# Slackware build script for nxengine-libretro
-
-# Copyright 2016-2018 Hunter Sezen
-# All rights reserved.
-#
-# Redistribution and use of this script, with or without modification, is
-# permitted provided that the following conditions are met:
-#
-# 1. Redistributions of this script must retain the above copyright
-# notice, this list of conditions and the following disclaimer.
-#
-# THIS SOFTWARE IS PROVIDED BY THE AUTHOR "AS IS" AND ANY EXPRESS OR IMPLIED
-# WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE IMPLIED WARRANTIES OF
-# MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE ARE DISCLAIMED. IN NO
-# EVENT SHALL THE AUTHOR BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL,
-# SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT LIMITED TO,
-# PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, DATA, OR PROFITS;
-# OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY,
-# WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR
-# OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF THIS SOFTWARE, EVEN IF
-# ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
-
-PRGNAM=nxengine-libretro
-LIBNAM=$(echo $PRGNAM | tr - _)
-VERSION=${VERSION:-2018.11.06_b460024}
-BUILD=${BUILD:-1}
-TAG=${TAG:-_SBo}
-
-if [ -z "$ARCH" ]; then
- case "$( uname -m )" in
- i?86) ARCH=i586 ;;
- arm*) ARCH=arm ;;
- *) ARCH=$( uname -m ) ;;
- esac
-fi
-
-CWD=$(pwd)
-TMP=${TMP:-/tmp/SBo}
-PKG=$TMP/package-$PRGNAM
-OUTPUT=${OUTPUT:-/tmp}
-
-LIBDIRSUFFIX=
-[ "$ARCH" = x86_64 ] && LIBDIRSUFFIX=64
-
-set -eu
-
-rm -rf $PKG
-mkdir -p $TMP $PKG $OUTPUT
-cd $TMP
-rm -rf $PRGNAM-$VERSION
-tar xvf $CWD/$PRGNAM-$VERSION.tar.xz
-cd $PRGNAM-$VERSION
-chown -R root:root .
-find -L . \
- \( -perm 777 -o -perm 775 -o -perm 750 -o -perm 711 -o -perm 555 \
- -o -perm 511 \) -exec chmod 755 {} \; -o \
- \( -perm 666 -o -perm 664 -o -perm 640 -o -perm 600 -o -perm 444 \
- -o -perm 440 -o -perm 400 \) -exec chmod 644 {} \;
-
-[ "${DEBUG:=0}" != 0 ] && DEBUG=1
-
-make DEBUG=$DEBUG
-
-install -Dm0644 $LIBNAM.so $PKG/usr/lib${LIBDIRSUFFIX}/libretro/$LIBNAM.so
-install -Dm0644 $LIBNAM.info $PKG/usr/lib${LIBDIRSUFFIX}/libretro/info/$LIBNAM.info
-
-if [ $DEBUG = 0 ]; then
- find $PKG -print0 | xargs -0 file | grep -e "executable" -e "shared object" | grep ELF \
- | cut -f 1 -d : | xargs strip --strip-unneeded 2> /dev/null || true
-fi
-
-mkdir -p $PKG/usr/doc/$PRGNAM-$VERSION
-cp -a README.md nxengine/LICENSE $PKG/usr/doc/$PRGNAM-$VERSION
-cat $CWD/$PRGNAM.SlackBuild > $PKG/usr/doc/$PRGNAM-$VERSION/$PRGNAM.SlackBuild
-
-mkdir -p $PKG/install
-cat $CWD/slack-desc > $PKG/install/slack-desc
-
-cd $PKG
-/sbin/makepkg -l y -c n $OUTPUT/$PRGNAM-$VERSION-$ARCH-$BUILD$TAG.${PKGTYPE:-tgz}
diff --git a/games/nxengine-libretro/nxengine-libretro.info b/games/nxengine-libretro/nxengine-libretro.info
deleted file mode 100644
index 2a14b07d7f..0000000000
--- a/games/nxengine-libretro/nxengine-libretro.info
+++ /dev/null
@@ -1,10 +0,0 @@
-PRGNAM="nxengine-libretro"
-VERSION="2018.11.06_b460024"
-HOMEPAGE="https://www.libretro.com/"
-DOWNLOAD="http://slackless.raccoons.tech/src/libretro/nxengine-libretro-2018.11.06_b460024.tar.xz"
-MD5SUM="37100efca74e0000854f6a42e7c97116"
-DOWNLOAD_x86_64=""
-MD5SUM_x86_64=""
-REQUIRES="RetroArch"
-MAINTAINER="orphaned - no maintainer"
-EMAIL="nobody@nowhere.com"
diff --git a/games/nxengine-libretro/slack-desc b/games/nxengine-libretro/slack-desc
deleted file mode 100644
index ce03dbc004..0000000000
--- a/games/nxengine-libretro/slack-desc
+++ /dev/null
@@ -1,19 +0,0 @@
-# HOW TO EDIT THIS FILE:
-# The "handy ruler" below makes it easier to edit a package description.
-# Line up the first '|' above the ':' following the base package name, and
-# the '|' on the right side marks the last column you can put a character in.
-# You must make exactly 11 lines for the formatting to be correct. It's also
-# customary to leave one space after the ':' except on otherwise blank lines.
-
- |-----handy-ruler------------------------------------------------------|
-nxengine-libretro: nxengine-libretro (Port of NxEngine to the libretro API)
-nxengine-libretro:
-nxengine-libretro: NXEngine is a Cave Story game engine clone.
-nxengine-libretro:
-nxengine-libretro: Homepage: https://www.libretro.com/
-nxengine-libretro:
-nxengine-libretro:
-nxengine-libretro:
-nxengine-libretro:
-nxengine-libretro:
-nxengine-libretro:
diff --git a/games/o2em/README b/games/o2em/README
index 43d8cd8449..557e53f20a 100644
--- a/games/o2em/README
+++ b/games/o2em/README
@@ -1,3 +1,5 @@
+o2em (Magnavox Odyssey II/VideoPac+ emulator)
+
o2em is an emulator for the Magnavox Odyssey II and VideoPac+ systems.
The Odyssey2 BIOS ROM image is required for emulation. To include it in
@@ -6,3 +8,6 @@ image itself, called either o2rom.bin or o2bios.rom, and place it in the
build directory before running the SlackBuild. The ROM will be installed
in /usr/share/o2em/bios/o2rom.bin; if you build the package without the
ROM, just place a copy of the ROM there after installing the package.
+
+Note to desktop users: o2em is a command-line X program and must be
+run from an X terminal. It won't appear in your applications menu.
diff --git a/games/o2em/doinst.sh b/games/o2em/doinst.sh
index 19400050fd..4110f5514d 100644
--- a/games/o2em/doinst.sh
+++ b/games/o2em/doinst.sh
@@ -3,4 +3,3 @@ if [ -e usr/share/icons/hicolor/icon-theme.cache ]; then
/usr/bin/gtk-update-icon-cache -f usr/share/icons/hicolor >/dev/null 2>&1
fi
fi
-
diff --git a/games/o2em/o2em.1 b/games/o2em/o2em.1
deleted file mode 100644
index f065163635..0000000000
--- a/games/o2em/o2em.1
+++ /dev/null
@@ -1,207 +0,0 @@
-.TH O2EM "1" "January 2011" "SlackBuilds.org" "User Commands"
-.SH NAME
-o2em \- Emulator for Odyssey II and VideoPac+ systems
-.SH SYNOPSIS
-.B o2em
-<\fIfile\fR>
-[\fI-options\fR]
-.SH DESCRIPTION
-O2EM is an open source Odyssey2 / Videopac console emulator.
-.SH OPTIONS
-.TP
-\fBfile\fR
-Cartridge ROM image.
-.br
-\fINOTE:\fR Unlike most programs, o2em requires the file argument
-first, before any options.
-.TP
-\fB\-help\fR
-Help display
-.TP
-\fB\-wsize\fR=n
-Window size (1\-4)
-.TP
-\fB\-fullscreen\fR
-Full screen mode
-.TP
-\fB\-help\fR
-Show help
-.TP
-\fB\-scanlines\fR
-Enable scanlines
-.TP
-\fB\-nosound\fR
-Turn off sound emulation
-.TP
-\fB\-novoice\fR
-Turn off voice emulation
-.TP
-\fB\-svolume\fR=n
-Set sound volume (0\-100)
-.TP
-\fB\-vvolume\fR=n
-Set voice volume (0\-100)
-.TP
-\fB\-filter\fR
-Enable low-pass audio filter
-.TP
-\fB\-debug\fR
-Start the emulator in
-debug mode
-.TP
-\fB\-speed\fR=n
-Relative speed
-(100 = original)
-.TP
-\fB\-nolimit\fR
-Turn off speed limiter
-.TP
-\fB\-bios\fR=file
-Set the O2 bios file name/dir
-.TP
-\fB\-biosdir\fR=path
-Set the O2 bios path
-(default= bios/)
-.TP
-\fB\-romdir\fR=path
-Set the O2 roms Path
-(default= roms/)
-.TP
-\fB\-scshot\fR=file
-Set the screenshot file
-name/template
-.TP
-\fB\-euro\fR
-Use European timing /
-50Hz mode
-.TP
-\fB\-exrom\fR
-Use special 3K program/
-1K data ROM mode
-Use 3K rom mapping mode
-.TP
-\fB\-s<n>\fR=mode/keys
-Define stick n mode/keys (n=1\-2, see \fBo2em.txt\fR)
-.TP
-\fB\-c52\fR
-Start the emulator with
-french Odyssey 2 BIOS
-.TP
-\fB\-g7400\fR
-Start the emulator
-with VP+ BIOS
-.TP
-\fB\-jopac\fR
-Start the emulator with
-french VP+ bios
-.TP
-\fB\-scoretype\fR=m
-Set Scoretype to m (see \fBo2em.txt\fR)
-.TP
-\fB\-scoreadr\fR=n
-Set Scoreaddress to n
-(decimal value)
-.TP
-\fB\-scorefile\fR=file
-Set Output-Scorefile to
-file (highscore.txt)
-.TP
-\fB\-score\fR=n
-Set Highscore to n
-.TP
-\fB\-savefile\fR=file
-Load/Save State
-from/to file
-.SH KEY BINDINGS
-These are the default key bindings, and can be changed
-on the command line or in the config file.
-.TP
-\fBArrow keys + L\fR
-Default joystick 1 emulation
-.TP
-\fBW,D,S,A + Space\fR
-Default joystick 2 emulation
-.TP
-\fBESC or F12\fR
-Leave the emulator
-.TP
-\fBF1\fR
-Pause/Information
-.TP
-\fBF2\fR
-Save State\-File
-.TP
-\fBF3\fR
-Load State\-File
-.TP
-\fBF4\fR
-Enter debugger
-.TP
-\fBF5\fR
-Reset emulator (same as pressing the reset on the O2 keyboard)
-.TP
-\fBF6\fR
-Inject Highscore
-.TP
-\fBF8\fR
-Make a screen shot
-.TP
-\fBCaps Lock\fR
-Enables/Disables the O2 keyboard input of the keys used by
-joystick emulation
-.SH FILES
-.TP
-\fB/usr/bin/o2em\fR
-Shell script wrapper. Sets up ~/.o2em if needed, runs the actual
-binary. This is required because o2em was ported from DOS, and
-expects to be run in its own directory; with the wrapper, it
-behaves like a proper UNIX program (run anywhere, writes only
-to ~/.o2em).
-.TP
-\fB/usr/libexec/o2em.bin\fR
-The actual o2em binary. Normally, you don't want to run this
-directly (let the wrapper run it for you).
-.TP
-\fB/usr/share/o2em/bios\fR
-BIOS ROM images. At minimum, \fBo2rom.bin\fR must exist. To use the
-\fB\-c52\fR,
-\fB\-jopac\fR, or
-\fB\-g7400\fR
-options, the appropriate BIOS image must be located here (see below).
-The emulator checks the CRC of the ROM images,
-and will refuse to start with an image it doesn't recognize. The correct
-files are:
-.PP
-c52.bin (md5sum f1071cdb0b6b10dde94d3bc8a6146387)
-.br
-g7400.bin (md5sum c500ff71236068e0dc0d0603d265ae76)
-.br
-jopac.bin (md5sum 279008e4a0db2dc5f1c048853b033828)
-.br
-o2rom.bin (md5sum 562d5ebf9e030a40d6fabfc2f33139fd)
-.PP
-These are the same files used by MESS, except o2rom.bin is called
-o2bios.rom by MESS.
-.TP
-\fB/usr/share/o2em/voice\fR
-Voice samples, used to emulate the Odyssey2's speech synthesis chip.
-.TP
-\fB~/.o2em/\fR
-Working directory for o2em. Will be created by shell script wrapper
-the first time it's run. All save\-state and screenshot files will be
-written here. The BIOS image, cartridge images, and voice samples will
-be symlinked into this directory by the wrapper script.
-.TP
-\fB~/.o2em/o2em_def.cfg\fR
-Config file (optional). See o2em.txt for details.
-.TP
-\fB/usr/doc/o2em\-\fR\fI$VERSION\fR\fB/o2em.txt\fR
-Full documentation for o2em.
-.SH AUTHORS
-o2em was originally created by Daniel Boris, and has been developed by
-Andre de la Rocha since version 0.80 and Arlindo M. de Oliveira since version 1.16.
-.PP
-This manual page was written by B. Watson for the SlackBuilds.org project (but
-may be used by anyone for any reason).
-.PP
-Wrapper script also by B. Watson.
diff --git a/games/o2em/o2em.6 b/games/o2em/o2em.6
new file mode 100644
index 0000000000..6de8e2c234
--- /dev/null
+++ b/games/o2em/o2em.6
@@ -0,0 +1,207 @@
+.TH O2EM "6" "Nov 2021" "1.18" "SlackBuilds.org"
+.SH NAME
+o2em \- Emulator for Odyssey II and VideoPac+ systems
+.SH SYNOPSIS
+.B o2em
+<\fIfile\fR>
+[\fI-options\fR]
+.SH DESCRIPTION
+O2EM is an open source Odyssey2 / Videopac console emulator.
+.SH OPTIONS
+.TP
+\fBfile\fR
+Cartridge ROM image.
+.br
+\fINOTE:\fR Unlike most programs, o2em requires the file argument
+first, before any options.
+.TP
+\fB\-help\fR
+Help display
+.TP
+\fB\-wsize\fR=n
+Window size (1\-4)
+.TP
+\fB\-fullscreen\fR
+Full screen mode
+.TP
+\fB\-help\fR
+Show help
+.TP
+\fB\-scanlines\fR
+Enable scanlines
+.TP
+\fB\-nosound\fR
+Turn off sound emulation
+.TP
+\fB\-novoice\fR
+Turn off voice emulation
+.TP
+\fB\-svolume\fR=n
+Set sound volume (0\-100)
+.TP
+\fB\-vvolume\fR=n
+Set voice volume (0\-100)
+.TP
+\fB\-filter\fR
+Enable low-pass audio filter
+.TP
+\fB\-debug\fR
+Start the emulator in
+debug mode
+.TP
+\fB\-speed\fR=n
+Relative speed
+(100 = original)
+.TP
+\fB\-nolimit\fR
+Turn off speed limiter
+.TP
+\fB\-bios\fR=file
+Set the O2 bios file name/dir
+.TP
+\fB\-biosdir\fR=path
+Set the O2 bios path
+(default= bios/)
+.TP
+\fB\-romdir\fR=path
+Set the O2 roms Path
+(default= roms/)
+.TP
+\fB\-scshot\fR=file
+Set the screenshot file
+name/template
+.TP
+\fB\-euro\fR
+Use European timing /
+50Hz mode
+.TP
+\fB\-exrom\fR
+Use special 3K program/
+1K data ROM mode
+Use 3K rom mapping mode
+.TP
+\fB\-s<n>\fR=mode/keys
+Define stick n mode/keys (n=1\-2, see \fBo2em.txt\fR)
+.TP
+\fB\-c52\fR
+Start the emulator with
+french Odyssey 2 BIOS
+.TP
+\fB\-g7400\fR
+Start the emulator
+with VP+ BIOS
+.TP
+\fB\-jopac\fR
+Start the emulator with
+french VP+ bios
+.TP
+\fB\-scoretype\fR=m
+Set Scoretype to m (see \fBo2em.txt\fR)
+.TP
+\fB\-scoreadr\fR=n
+Set Scoreaddress to n
+(decimal value)
+.TP
+\fB\-scorefile\fR=file
+Set Output-Scorefile to
+file (highscore.txt)
+.TP
+\fB\-score\fR=n
+Set Highscore to n
+.TP
+\fB\-savefile\fR=file
+Load/Save State
+from/to file
+.SH KEY BINDINGS
+These are the default key bindings, and can be changed
+on the command line or in the config file.
+.TP
+\fBArrow keys + L\fR
+Default joystick 1 emulation
+.TP
+\fBW,D,S,A + Space\fR
+Default joystick 2 emulation
+.TP
+\fBESC or F12\fR
+Leave the emulator
+.TP
+\fBF1\fR
+Pause/Information
+.TP
+\fBF2\fR
+Save State\-File
+.TP
+\fBF3\fR
+Load State\-File
+.TP
+\fBF4\fR
+Enter debugger
+.TP
+\fBF5\fR
+Reset emulator (same as pressing the reset on the O2 keyboard)
+.TP
+\fBF6\fR
+Inject Highscore
+.TP
+\fBF8\fR
+Make a screen shot
+.TP
+\fBCaps Lock\fR
+Enables/Disables the O2 keyboard input of the keys used by
+joystick emulation
+.SH FILES
+.TP
+\fB/usr/games/o2em\fR
+Shell script wrapper. Sets up ~/.o2em if needed, runs the actual
+binary. This is required because o2em was ported from DOS, and
+expects to be run in its own directory; with the wrapper, it
+behaves like a proper UNIX program (run anywhere, writes only
+to ~/.o2em).
+.TP
+\fB/usr/libexec/o2em.bin\fR
+The actual o2em binary. Normally, you don't want to run this
+directly (let the wrapper run it for you).
+.TP
+\fB/usr/share/games/o2em/bios\fR
+BIOS ROM images. At minimum, \fBo2rom.bin\fR must exist. To use the
+\fB\-c52\fR,
+\fB\-jopac\fR, or
+\fB\-g7400\fR
+options, the appropriate BIOS image must be located here (see below).
+The emulator checks the CRC of the ROM images,
+and will refuse to start with an image it doesn't recognize. The correct
+files are:
+.PP
+c52.bin (md5sum f1071cdb0b6b10dde94d3bc8a6146387)
+.br
+g7400.bin (md5sum c500ff71236068e0dc0d0603d265ae76)
+.br
+jopac.bin (md5sum 279008e4a0db2dc5f1c048853b033828)
+.br
+o2rom.bin (md5sum 562d5ebf9e030a40d6fabfc2f33139fd)
+.PP
+These are the same files used by MESS, except o2rom.bin is called
+o2bios.rom by MESS.
+.TP
+\fB/usr/share/games/o2em/voice\fR
+Voice samples, used to emulate the Odyssey2's speech synthesis chip.
+.TP
+\fB~/.o2em/\fR
+Working directory for o2em. Will be created by shell script wrapper
+the first time it's run. All save\-state and screenshot files will be
+written here. The BIOS image, cartridge images, and voice samples will
+be symlinked into this directory by the wrapper script.
+.TP
+\fB~/.o2em/o2em_def.cfg\fR
+Config file (optional). See o2em.txt for details.
+.TP
+\fB/usr/doc/o2em\-\fR\fI$VERSION\fR\fB/o2em.txt\fR
+Full documentation for o2em.
+.SH AUTHORS
+o2em was originally created by Daniel Boris, and has been developed by
+Andre de la Rocha since version 0.80 and Arlindo M. de Oliveira since version 1.16.
+.PP
+This manual page was written by B. Watson for the SlackBuilds.org project (but
+may be used by anyone for any reason).
+.PP
+Wrapper script also by B. Watson.
diff --git a/games/o2em/o2em.SlackBuild b/games/o2em/o2em.SlackBuild
index 1a9e8f49a3..7eb2119b4d 100644
--- a/games/o2em/o2em.SlackBuild
+++ b/games/o2em/o2em.SlackBuild
@@ -1,15 +1,25 @@
-#!/bin/sh
+#!/bin/bash
# Slackware build script for o2em
-# Written by B. Watson (yalhcru@gmail.com)
+# Written by B. Watson (urchlay@slackware.uk)
# Licensed under the WTFPL. See http://www.wtfpl.net/txt/copying/ for details.
+# 20211102 bkw: BUILD=2
+# - fix -current build.
+# - binaries in /usr/games.
+# - man page in section 6.
+# - /usr/share/o2em => /usr/share/games/o2em.
+# - convert docs to utf-8.
+
+cd $(dirname $0) ; CWD=$(pwd)
+
PRGNAM=o2em
VERSION=${VERSION:-1.18}
-BUILD=${BUILD:-1}
+BUILD=${BUILD:-2}
TAG=${TAG:-_SBo}
+PKGTYPE=${PKGTYPE:-tgz}
if [ -z "$ARCH" ]; then
case "$( uname -m )" in
@@ -19,7 +29,11 @@ if [ -z "$ARCH" ]; then
esac
fi
-CWD=$(pwd)
+if [ ! -z "${PRINT_PACKAGE_NAME}" ]; then
+ echo "$PRGNAM-$VERSION-$ARCH-$BUILD$TAG.$PKGTYPE"
+ exit 0
+fi
+
TMP=${TMP:-/tmp/SBo}
PKG=$TMP/package-$PRGNAM
OUTPUT=${OUTPUT:-/tmp}
@@ -45,11 +59,8 @@ rm -rf $SRC
unzip -L $CWD/$SRC.zip
cd $SRC
chown -R root:root .
-find -L . \
- \( -perm 777 -o -perm 775 -o -perm 750 -o -perm 711 -o -perm 555 -o -perm 511 \) \
- -exec chmod 755 {} \; -o \
- \( -perm 666 -o -perm 664 -o -perm 600 -o -perm 444 -o -perm 440 -o -perm 400 \) \
- -exec chmod 644 {} \;
+find -L . -perm /111 -a \! -perm 755 -a -exec chmod 755 {} \+ -o \
+ \! -perm /111 -a \! -perm 644 -a -exec chmod 644 {} \+
# Patch does this:
# make makefile.linux use allegro-config to find cflags/libs for allegro
@@ -61,26 +72,26 @@ patch -p1 < $CWD/compile_fix.diff
patch -p1 < $CWD/wordsize.diff
cd src
-make -f makefile.linux SLKCFLAGS="$SLKCFLAGS"
+make -f makefile.linux SLKCFLAGS="$SLKCFLAGS -fcommon"
-mkdir -p $PKG/usr/bin $PKG/usr/libexec $PKG/usr/share/pixmaps
-install -s -m0755 -oroot -groot dis48 $PKG/usr/bin
+mkdir -p $PKG/usr/games $PKG/usr/libexec \
+ $PKG/usr/share/pixmaps $PKG/usr/share/icons/hicolor/64x64/apps
+install -s -m0755 -oroot -groot dis48 $PKG/usr/games
install -s -m0755 -oroot -groot $PRGNAM $PKG/usr/libexec/$PRGNAM.bin
-install -m0755 -oroot -groot $CWD/$PRGNAM.sh $PKG/usr/bin/$PRGNAM
-install -m0644 -oroot -groot $PRGNAM.png $PKG/usr/share/pixmaps
+install -m0755 -oroot -groot $CWD/$PRGNAM.sh $PKG/usr/games/$PRGNAM
+install -m0644 -oroot -groot $PRGNAM.png $PKG/usr/share/icons/hicolor/64x64/apps
+ln -s ../icons/hicolor/64x64/apps/$PRGNAM.png $PKG/usr/share/pixmaps/$PRGNAM.png
# There is no .desktop file because the emulator lacks a UI (if we
# launch it from the K menu, it prints an error on stdout and exits),
# and because ".bin" isn't much of a MIME type so we can't really
# do association (there's no magic header for the ROMs either).
-mkdir -p $PKG/usr/man/man1
-gzip -9c < $CWD/$PRGNAM.1 > $PKG/usr/man/man1/$PRGNAM.1.gz
+mkdir -p $PKG/usr/man/man6
+gzip -9c < $CWD/$PRGNAM.6 > $PKG/usr/man/man6/$PRGNAM.6.gz
-mkdir -p $PKG/usr/share/$PRGNAM/{bios,voice}
-if [ -e "$CWD/o2mainsamp.zip" ]; then
- unzip -L $CWD/o2mainsamp.zip -d $PKG/usr/share/$PRGNAM/voice
-fi
+mkdir -p $PKG/usr/share/games/$PRGNAM/{bios,voice}
+unzip -L $CWD/o2mainsamp.zip -d $PKG/usr/share/games/$PRGNAM/voice
if [ -e $CWD/odyssey2.zip ]; then
unzip $CWD/odyssey2.zip
@@ -92,19 +103,25 @@ elif [ -e $CWD/o2rom.bin ]; then
fi
if [ -n "$ROMFILE" ]; then
- cat $ROMFILE > $PKG/usr/share/$PRGNAM/bios/o2rom.bin
+ cat $ROMFILE > $PKG/usr/share/games/$PRGNAM/bios/o2rom.bin
+ INCROM="includes"
+else
+ INCROM="does NOT include"
fi
mkdir -p $PKG/usr/doc/$PRGNAM-$VERSION
cd ../docs
for file in *; do
- sed 's/\r//g' < $file > $PKG/usr/doc/$PRGNAM-$VERSION/$file
+ sed 's/\r//g' < $file \
+ | iconv -f iso-8859-1 -t utf-8 \
+ > $PKG/usr/doc/$PRGNAM-$VERSION/$file
done
cat $CWD/$PRGNAM.SlackBuild > $PKG/usr/doc/$PRGNAM-$VERSION/$PRGNAM.SlackBuild
mkdir -p $PKG/install
-cat $CWD/slack-desc > $PKG/install/slack-desc
+sed -e "s,@INCROM@,$INCROM," \
+ $CWD/slack-desc > $PKG/install/slack-desc
cat $CWD/doinst.sh > $PKG/install/doinst.sh
cd $PKG
-/sbin/makepkg -l y -c n $OUTPUT/$PRGNAM-$VERSION-$ARCH-$BUILD$TAG.${PKGTYPE:-tgz}
+/sbin/makepkg -l y -c n $OUTPUT/$PRGNAM-$VERSION-$ARCH-$BUILD$TAG.$PKGTYPE
diff --git a/games/o2em/o2em.info b/games/o2em/o2em.info
index b666a22e2e..ea216a5ccd 100644
--- a/games/o2em/o2em.info
+++ b/games/o2em/o2em.info
@@ -1,12 +1,12 @@
PRGNAM="o2em"
VERSION="1.18"
-HOMEPAGE="http://o2em.sourceforge.net/"
-DOWNLOAD="http://downloads.sourceforge.net/project/o2em/o2em/1.18/o2em118src.zip \
- http://o2em.sourceforge.net/files/o2mainsamp.zip"
+HOMEPAGE="https://o2em.sourceforge.net/"
+DOWNLOAD="https://downloads.sourceforge.net/project/o2em/o2em/1.18/o2em118src.zip \
+ https://o2em.sourceforge.net/files/o2mainsamp.zip"
MD5SUM="be96af886370df337fe8584827717627 \
9910ecb7d87fcd5696dd4dd00c792e33"
DOWNLOAD_x86_64=""
MD5SUM_x86_64=""
REQUIRES="allegro4"
MAINTAINER="B. Watson"
-EMAIL="yalhcru@gmail.com"
+EMAIL="urchlay@slackware.uk"
diff --git a/games/o2em/o2em.sh b/games/o2em/o2em.sh
index 5c0d75163c..7c42edf03e 100644
--- a/games/o2em/o2em.sh
+++ b/games/o2em/o2em.sh
@@ -12,7 +12,7 @@
# source, but we want to avoid massive amounts of patching.
EXE=/usr/libexec/o2em.bin
-SHAREDIR=/usr/share/o2em
+SHAREDIR=/usr/share/games/o2em
DIR=~/.o2em
if [ ! -d $DIR ]; then
diff --git a/games/o2em/slack-desc b/games/o2em/slack-desc
index 9a413ec45d..ce93fb7947 100644
--- a/games/o2em/slack-desc
+++ b/games/o2em/slack-desc
@@ -10,7 +10,7 @@ o2em: o2em (Magnavox Odyssey II/VideoPac+ emulator)
o2em:
o2em: o2em is an emulator for the Magnavox Odyssey II and VideoPac+ systems.
o2em:
-o2em:
+o2em: This package @INCROM@ the system ROM image.
o2em:
o2em:
o2em:
diff --git a/games/oblige-legacy4/README b/games/oblige-legacy4/README
index 7ef33f66e8..d10148e57b 100644
--- a/games/oblige-legacy4/README
+++ b/games/oblige-legacy4/README
@@ -1,3 +1,5 @@
+oblige-legacy4 (random level generator for classic FPS games)
+
OBLIGE v4 is a random level generator for various classic games,
including DOOM, DOOM II, Heretic, Hexen, and Quake. The goal is to
produce high quality levels which are fun to play.
diff --git a/games/oblige-legacy4/doinst.sh b/games/oblige-legacy4/doinst.sh
index 4e8ba7071d..3e5691a052 100644
--- a/games/oblige-legacy4/doinst.sh
+++ b/games/oblige-legacy4/doinst.sh
@@ -2,3 +2,8 @@ if [ -x /usr/bin/update-desktop-database ]; then
/usr/bin/update-desktop-database -q usr/share/applications >/dev/null 2>&1
fi
+if [ -e usr/share/icons/hicolor/icon-theme.cache ]; then
+ if [ -x /usr/bin/gtk-update-icon-cache ]; then
+ /usr/bin/gtk-update-icon-cache usr/share/icons/hicolor >/dev/null 2>&1
+ fi
+fi
diff --git a/games/oblige-legacy4/icons/128.png b/games/oblige-legacy4/icons/128.png
new file mode 100644
index 0000000000..a6ee73f133
--- /dev/null
+++ b/games/oblige-legacy4/icons/128.png
Binary files differ
diff --git a/games/oblige-legacy4/icons/16.png b/games/oblige-legacy4/icons/16.png
new file mode 100644
index 0000000000..2616f57ed2
--- /dev/null
+++ b/games/oblige-legacy4/icons/16.png
Binary files differ
diff --git a/games/oblige-legacy4/icons/32.png b/games/oblige-legacy4/icons/32.png
new file mode 100644
index 0000000000..b2efe3c78e
--- /dev/null
+++ b/games/oblige-legacy4/icons/32.png
Binary files differ
diff --git a/games/oblige-legacy4/icons/48.png b/games/oblige-legacy4/icons/48.png
new file mode 100644
index 0000000000..de8ce27a71
--- /dev/null
+++ b/games/oblige-legacy4/icons/48.png
Binary files differ
diff --git a/games/oblige-legacy4/icons/64.png b/games/oblige-legacy4/icons/64.png
new file mode 100644
index 0000000000..cd6c9874ce
--- /dev/null
+++ b/games/oblige-legacy4/icons/64.png
Binary files differ
diff --git a/games/oblige-legacy4/oblige-legacy4.6 b/games/oblige-legacy4/oblige-legacy4.6
index 1d1042b645..d82dc7a554 100644
--- a/games/oblige-legacy4/oblige-legacy4.6
+++ b/games/oblige-legacy4/oblige-legacy4.6
@@ -1,4 +1,4 @@
-.\" Automatically generated by Pod::Man 2.27 (Pod::Simple 3.28)
+.\" Automatically generated by Pod::Man 4.14 (Pod::Simple 3.42)
.\"
.\" Standard preamble:
.\" ========================================================================
@@ -46,7 +46,7 @@
.ie \n(.g .ds Aq \(aq
.el .ds Aq '
.\"
-.\" If the F register is turned on, we'll generate index entries on stderr for
+.\" If the F register is >0, we'll generate index entries on stderr for
.\" titles (.TH), headers (.SH), subsections (.SS), items (.Ip), and index
.\" entries marked with X<> in POD. Of course, you'll have to process the
.\" output yourself in some meaningful fashion.
@@ -56,12 +56,12 @@
..
.nr rF 0
.if \n(.g .if rF .nr rF 1
-.if (\n(rF:(\n(.g==0)) \{
-. if \nF \{
+.if (\n(rF:(\n(.g==0)) \{\
+. if \nF \{\
. de IX
. tm Index:\\$1\t\\n%\t"\\$2"
..
-. if !\nF==2 \{
+. if !\nF==2 \{\
. nr % 0
. nr F 2
. \}
@@ -133,20 +133,20 @@
.\" ========================================================================
.\"
.IX Title "OBLIGE-LEGACY4 6"
-.TH OBLIGE-LEGACY4 6 "2014-09-25" "4.28b" "SlackBuilds.org"
+.TH OBLIGE-LEGACY4 6 "2021-10-20" "4.28b" "SlackBuilds.org"
.\" For nroff, turn off justification. Always turn off hyphenation; it makes
.\" way too many mistakes in technical documents.
.if n .ad l
.nh
.SH "NAME"
-oblige\-legacy4 \- random level generator for Doom, Doom II, Heretic, Hexen, and Quake
+oblige\-legacy4 \- random level generator for Doom and related games
.SH "SYNOPSIS"
.IX Header "SYNOPSIS"
\&\fBoblige\-legacy4\fR [\-options]
.SH "DESCRIPTION"
.IX Header "DESCRIPTION"
-\&\fBoblige\-legacy4\fR creates a patch \s-1WAD\s0 file for use with Doom or Doom
-\&\s-1II,\s0 containing one or more randomly-generated levels. The generated \s-1WAD\s0
+\&\fBoblige\-legacy4\fR creates a patch \s-1WAD\s0 file for use with Doom, Doom \s-1II,\s0 Heretic, Hexen, or Quake,
+containing one or more randomly-generated levels. The generated \s-1WAD\s0
files are ready to play (no separate node-building pass is needed).
.PP
Normally, \fBoblige\-legacy4\fR is controlled by its \s-1GUI,\s0 but it can be used
@@ -185,7 +185,7 @@ The \fBoblige\-legacy4\fR home page: \fIhttp://oblige\-legacy4.sourceforge.net\f
.SH "LICENSE"
.IX Header "LICENSE"
This program is free software, under the terms of the \s-1GNU\s0 General Public
-License, and comes with \s-1ABSOLUTELY NO WARRANTY. \s0 See the documentation
+License, and comes with \s-1ABSOLUTELY NO WARRANTY.\s0 See the documentation
for more details, or visit http://www.gnu.org/licenses/gpl\-2.0.txt
.SH "AUTHOR"
.IX Header "AUTHOR"
diff --git a/games/oblige-legacy4/oblige-legacy4.SlackBuild b/games/oblige-legacy4/oblige-legacy4.SlackBuild
index c0f08d31dd..80bf4403e7 100644
--- a/games/oblige-legacy4/oblige-legacy4.SlackBuild
+++ b/games/oblige-legacy4/oblige-legacy4.SlackBuild
@@ -1,11 +1,18 @@
-#!/bin/sh
+#!/bin/bash
# Slackware build script for oblige-legacy4
-# Written by B. Watson (yalhcru@gmail.com)
+# Written by B. Watson (urchlay@slackware.uk)
# Licensed under the WTFPL. See http://www.wtfpl.net/txt/copying/ for details.
+# 20230107 bkw: BUILD=4, remove INSTALL.txt from doc dir.
+
+# 20211020 bkw: BUILD=3
+# - make the icon transparent
+# - new-style icons (also transparent)
+# - update man page, README, slack-desc slightly
+
# 20170621 bkw: fix build on -current.
# 20140916 bkw: bump BUILD to 2.
@@ -21,10 +28,13 @@
# Rider for the bug report). Also get rid of +x permissions on the data files
# in /usr/share.
+cd $(dirname $0) ; CWD=$(pwd)
+
PRGNAM=oblige-legacy4
VERSION=${VERSION:-4.28b}
-BUILD=${BUILD:-2}
+BUILD=${BUILD:-4}
TAG=${TAG:-_SBo}
+PKGTYPE=${PKGTYPE:-tgz}
if [ -z "$ARCH" ]; then
case "$( uname -m )" in
@@ -34,7 +44,11 @@ if [ -z "$ARCH" ]; then
esac
fi
-CWD=$(pwd)
+if [ ! -z "${PRINT_PACKAGE_NAME}" ]; then
+ echo "$PRGNAM-$VERSION-$ARCH-$BUILD$TAG.$PKGTYPE"
+ exit 0
+fi
+
TMP=${TMP:-/tmp/SBo}
PKG=$TMP/package-$PRGNAM
OUTPUT=${OUTPUT:-/tmp}
@@ -66,11 +80,8 @@ rm -rf ${SRCNAM}-${VERSION}-source
unzip $CWD/$OLDNAM-$SRCVER-source.zip
cd ${SRCNAM}-${VERSION}-source
chown -R root:root .
-find -L . \
- \( -perm 777 -o -perm 775 -o -perm 750 -o -perm 711 -o -perm 555 -o -perm 511 \) \
- -exec chmod 755 {} \; -o \
- \( -perm 666 -o -perm 664 -o -perm 600 -o -perm 444 -o -perm 440 -o -perm 400 \) \
- -exec chmod 644 {} \;
+find -L . -perm /111 -a \! -perm 755 -a -exec chmod 755 {} \+ -o \
+ \! -perm /111 -a \! -perm 644 -a -exec chmod 644 {} \+
# Makefile.unixy originally came from the oblige author, I've hacked
# it up to make it work with oblige 4.x and SBo's fltk13.
@@ -92,20 +103,34 @@ make INSTALL_PREFIX=/usr OPTIMISE="$SLKCFLAGS"
make install INSTALL_PREFIX=$PKG/usr
mkdir -p $PKG/usr/share/pixmaps $PKG/usr/share/applications
-cat $CWD/$PRGNAM.png > $PKG/usr/share/pixmaps/$PRGNAM.png
cat $CWD/$PRGNAM.desktop > $PKG/usr/share/applications/$PRGNAM.desktop
+# 128.png was created by extracting oblige.ico, then using the gimp
+# to turn the white background into transparency. The rest were scaled
+# down from that, with convert -resize.
+for i in $CWD/icons/*.png; do
+ px=$( basename $i | cut -d. -f1 )
+ size=${px}x${px}
+ dir=$PKG/usr/share/icons/hicolor/$size/apps
+ mkdir -p $dir
+ cat $i > $dir/$PRGNAM.png
+done
+
+ln -s ../icons/hicolor/48x48/apps/$PRGNAM.png $PKG/usr/share/pixmaps/$PRGNAM.png
+
# man page written for this build
mkdir -p $PKG/usr/man/man6
gzip -9c < $CWD/$PRGNAM.6 > $PKG/usr/man/man6/$PRGNAM.6.gz
-mkdir -p $PKG/usr/doc/$PRGNAM-$VERSION
-cp *.txt doc/*.txt $PKG/usr/doc/$PRGNAM-$VERSION
-cat $CWD/$PRGNAM.SlackBuild > $PKG/usr/doc/$PRGNAM-$VERSION/$PRGNAM.SlackBuild
+PKGDOC=$PKG/usr/doc/$PRGNAM-$VERSION
+mkdir -p $PKGDOC
+rm -f INSTALL.txt
+cp *.txt doc/*.txt $PKGDOC
+cat $CWD/$PRGNAM.SlackBuild > $PKGDOC/$PRGNAM.SlackBuild
mkdir -p $PKG/install
cat $CWD/slack-desc > $PKG/install/slack-desc
cat $CWD/doinst.sh > $PKG/install/doinst.sh
cd $PKG
-/sbin/makepkg -l y -c n $OUTPUT/$PRGNAM-$VERSION-$ARCH-$BUILD$TAG.${PKGTYPE:-tgz}
+/sbin/makepkg -l y -c n $OUTPUT/$PRGNAM-$VERSION-$ARCH-$BUILD$TAG.$PKGTYPE
diff --git a/games/oblige-legacy4/oblige-legacy4.desktop b/games/oblige-legacy4/oblige-legacy4.desktop
index d1fca99d6c..71a7fe8a6f 100644
--- a/games/oblige-legacy4/oblige-legacy4.desktop
+++ b/games/oblige-legacy4/oblige-legacy4.desktop
@@ -3,6 +3,6 @@ Type=Application
Name=Oblige (Legacy Version)
GenericName=Doom/Heretic/Quake Level Generator
Icon=oblige-legacy4
-Exec=oblige-legacy4 %f
+Exec=/usr/games/oblige-legacy4 %f
Terminal=false
Categories=Game;ActionGame;Utility;
diff --git a/games/oblige-legacy4/oblige-legacy4.info b/games/oblige-legacy4/oblige-legacy4.info
index dd803ecd4d..3dae4ee75b 100644
--- a/games/oblige-legacy4/oblige-legacy4.info
+++ b/games/oblige-legacy4/oblige-legacy4.info
@@ -1,10 +1,10 @@
PRGNAM="oblige-legacy4"
VERSION="4.28b"
-HOMEPAGE="http://oblige.sourceforge.net/"
-DOWNLOAD="http://downloads.sourceforge.net/project/oblige/Oblige/4.28/oblige-428b-source.zip"
+HOMEPAGE="https://oblige.sourceforge.net/"
+DOWNLOAD="https://downloads.sourceforge.net/project/oblige/Oblige/4.28/oblige-428b-source.zip"
MD5SUM="ae89031dcff12958bb866505c266c49f"
DOWNLOAD_x86_64=""
MD5SUM_x86_64=""
REQUIRES="fltk"
MAINTAINER="B. Watson"
-EMAIL="yalhcru@gmail.com"
+EMAIL="urchlay@slackware.uk"
diff --git a/games/oblige-legacy4/oblige-legacy4.png b/games/oblige-legacy4/oblige-legacy4.png
deleted file mode 100644
index 7d6b6a0f66..0000000000
--- a/games/oblige-legacy4/oblige-legacy4.png
+++ /dev/null
Binary files differ
diff --git a/games/oblige-legacy4/oblige-legacy4.pod b/games/oblige-legacy4/oblige-legacy4.pod
index d9a1a0e903..3f6ef6cc91 100644
--- a/games/oblige-legacy4/oblige-legacy4.pod
+++ b/games/oblige-legacy4/oblige-legacy4.pod
@@ -3,7 +3,7 @@
=head1 NAME
-oblige-legacy4 - random level generator for Doom, Doom II, Heretic, Hexen, and Quake
+oblige-legacy4 - random level generator for Doom and related games
=head1 SYNOPSIS
@@ -11,8 +11,8 @@ B<oblige-legacy4> [-options]
=head1 DESCRIPTION
-B<oblige-legacy4> creates a patch WAD file for use with Doom or Doom
-II, containing one or more randomly-generated levels. The generated WAD
+B<oblige-legacy4> creates a patch WAD file for use with Doom, Doom II, Heretic, Hexen, or Quake,
+containing one or more randomly-generated levels. The generated WAD
files are ready to play (no separate node-building pass is needed).
Normally, B<oblige-legacy4> is controlled by its GUI, but it can be used
diff --git a/games/oblige-legacy4/slack-desc b/games/oblige-legacy4/slack-desc
index 7b383c187a..5377ae03f4 100644
--- a/games/oblige-legacy4/slack-desc
+++ b/games/oblige-legacy4/slack-desc
@@ -8,12 +8,12 @@
|-----handy-ruler------------------------------------------------------|
oblige-legacy4: oblige-legacy4 (random level generator for classic FPS games)
oblige-legacy4:
-oblige-legacy4: OBLIGE is a random level generator for various classic games,
-oblige-legacy4: including DOOM, DOOM II, Heretic, and Quake. The goal is to produce
-oblige-legacy4: high quality levels which are fun to play.
-oblige-legacy4:
-oblige-legacy4: This is an older version with support for Heretic and Quake.
+oblige-legacy4: OBLIGE is a random level generator for various classic
+oblige-legacy4: games, including DOOM, DOOM II, Hexen, Heretic, and
+oblige-legacy4: Quake. The goal is to produce high quality levels
+oblige-legacy4: which are fun to play.
oblige-legacy4:
+oblige-legacy4: This is an older version with support for Hexen, Heretic, and Quake.
oblige-legacy4:
oblige-legacy4:
oblige-legacy4:
diff --git a/games/oblige/README b/games/oblige/README
index 27ad0146e5..4fad2b695f 100644
--- a/games/oblige/README
+++ b/games/oblige/README
@@ -1,3 +1,5 @@
+oblige (random level generator for Doom engine games)
+
OBLIGE is a random level generator for Doom, Doom II, and their
expansion packs. The goal is to produce high quality levels which are
fun to play.
@@ -18,13 +20,13 @@ Ultimate Doom doom.wad or doomu.wad (?)
TNT Evilution tnt.wad
Plutonia plutonia.wad
-Older versions of oblige had support for Heretic and Quake. If you need
-these, install oblige-legacy4 (which can co-exist with this version).
+Older versions of oblige had support for Heretic, Hexen, and Quake. If
+you need these, install oblige-legacy4 (which can co-exist with this
+version).
Oblige 6 and 7 take completely different approaches to level generation.
Some people might prefer version 6, so this script supports both. By
-default, the version in the .info file (currently 7.666) is built. To
+default, the version in the .info file (currently 7.70) is built. To
build version 6 instead, get oblige-620-source.tar.gz from the author's
site, place it in the SlackBuild directory, and run the script with
-VERSION=6.20 in the environment. Also VERSION=7.50 is supported, if you
-have a use for that.
+VERSION=6.20 in the environment.
diff --git a/games/oblige/doinst.sh b/games/oblige/doinst.sh
index 4e8ba7071d..3e5691a052 100644
--- a/games/oblige/doinst.sh
+++ b/games/oblige/doinst.sh
@@ -2,3 +2,8 @@ if [ -x /usr/bin/update-desktop-database ]; then
/usr/bin/update-desktop-database -q usr/share/applications >/dev/null 2>&1
fi
+if [ -e usr/share/icons/hicolor/icon-theme.cache ]; then
+ if [ -x /usr/bin/gtk-update-icon-cache ]; then
+ /usr/bin/gtk-update-icon-cache usr/share/icons/hicolor >/dev/null 2>&1
+ fi
+fi
diff --git a/games/oblige/icons/128.png b/games/oblige/icons/128.png
new file mode 100644
index 0000000000..a6ee73f133
--- /dev/null
+++ b/games/oblige/icons/128.png
Binary files differ
diff --git a/games/oblige/icons/16.png b/games/oblige/icons/16.png
new file mode 100644
index 0000000000..2616f57ed2
--- /dev/null
+++ b/games/oblige/icons/16.png
Binary files differ
diff --git a/games/oblige/icons/32.png b/games/oblige/icons/32.png
new file mode 100644
index 0000000000..b2efe3c78e
--- /dev/null
+++ b/games/oblige/icons/32.png
Binary files differ
diff --git a/games/oblige/icons/48.png b/games/oblige/icons/48.png
new file mode 100644
index 0000000000..de8ce27a71
--- /dev/null
+++ b/games/oblige/icons/48.png
Binary files differ
diff --git a/games/oblige/icons/64.png b/games/oblige/icons/64.png
new file mode 100644
index 0000000000..cd6c9874ce
--- /dev/null
+++ b/games/oblige/icons/64.png
Binary files differ
diff --git a/games/oblige/oblige.SlackBuild b/games/oblige/oblige.SlackBuild
index 160b214651..cbb0ef26b0 100644
--- a/games/oblige/oblige.SlackBuild
+++ b/games/oblige/oblige.SlackBuild
@@ -1,11 +1,18 @@
-#!/bin/sh
+#!/bin/bash
# Slackware build script for oblige
-# Written by B. Watson (yalhcru@gmail.com)
+# Written by B. Watson (urchlay@slackware.uk)
# Licensed under the WTFPL. See http://www.wtfpl.net/txt/copying/ for details.
+# 20230107 bkw: BUILD=3, fix line endings in .desktop file.
+
+# 20211020 bkw: BUILD=2
+# - fix -current build.
+# - binary in /usr/games.
+# - new-style icons.
+
# 20171220 bkw:
# - update for 7.70. Upstream calls this the final release :(
@@ -37,10 +44,13 @@
# Rider for the bug report). Also get rid of +x permissions on the data files
# in /usr/share.
+cd $(dirname $0) ; CWD=$(pwd)
+
PRGNAM=oblige
VERSION=${VERSION:-7.70}
-BUILD=${BUILD:-1}
+BUILD=${BUILD:-3}
TAG=${TAG:-_SBo}
+PKGTYPE=${PKGTYPE:-tgz}
if [ -z "$ARCH" ]; then
case "$( uname -m )" in
@@ -50,7 +60,11 @@ if [ -z "$ARCH" ]; then
esac
fi
-CWD=$(pwd)
+if [ ! -z "${PRINT_PACKAGE_NAME}" ]; then
+ echo "$PRGNAM-$VERSION-$ARCH-$BUILD$TAG.$PKGTYPE"
+ exit 0
+fi
+
TMP=${TMP:-/tmp/SBo}
PKG=$TMP/package-$PRGNAM
OUTPUT=${OUTPUT:-/tmp}
@@ -74,6 +88,19 @@ set -e
SRCVER=${VERSION//./}
SRCNAM="Oblige" # grrrr!
+if [ ! -e $CWD/swap.$VERSION.diff.gz ]; then
+ supported="$( echo $( /bin/ls $CWD/*.diff.gz | sed 's,.*/,,' | cut -d. -f2,3 ) )"
+ cat <<EOF
+
+*** Unsupported version of oblige: $VERSION.
+*** Supported versions are: $supported.
+*** The build will probably fail. Press ^C to abort, or wait
+*** 10 seconds to continue.
+
+EOF
+ sleep 10
+fi
+
rm -rf $PKG
mkdir -p $TMP $PKG/usr/bin $PKG/usr/share/$PRGNAM $OUTPUT
cd $TMP
@@ -89,32 +116,49 @@ fi
cd ${SRCNAM}-${VERSION}-source
chown -R root:root .
-find -L . \
- \( -perm 777 -o -perm 775 -o -perm 750 -o -perm 711 -o -perm 555 -o -perm 511 \) \
- -exec chmod 755 {} \; -o \
- \( -perm 666 -o -perm 664 -o -perm 600 -o -perm 444 -o -perm 440 -o -perm 400 \) \
- -exec chmod 644 {} \;
+find -L . -perm /111 -a \! -perm 755 -a -exec chmod 755 {} \+ -o \
+ \! -perm /111 -a \! -perm 644 -a -exec chmod 644 {} \+
+
+# N.B. these diffs *must* be gzipped, they contain a mix of \n and
+# \r\n line endings, git would strip the \r's.
+zcat $CWD/swap.$VERSION.diff.gz | patch -p1
# 'make install' would install the .desktop and icon to /usr, not PREFIX.
sed -i '/xdg-/d' Makefile
# if there's no prefabs/ dir, don't try to install it. doing it this
-# way allows this script to still build oblige 7.666, if needed.
+# way would allow this script to still build oblige 7.666, if needed.
if [ ! -d prefabs ]; then
sed -i '/\/prefabs/d' Makefile
fi
make PREFIX=/usr OPTIMISE="$SLKCFLAGS"
make install PREFIX=$PKG/usr
+mv $PKG/usr/bin $PKG/usr/games
# man page written for this build (based on --help output)
mkdir -p $PKG/usr/man/man6
gzip -9c < $CWD/$PRGNAM.6 > $PKG/usr/man/man6/$PRGNAM.6.gz
# Starting with 6.20, upstream includes a .desktop and icon.
+# The icon's fugly though, see below.
+# 20230107 bkw: fix stoopid \r\n line endings.
mkdir -p $PKG/usr/share/pixmaps $PKG/usr/share/applications
-cat misc/icon_128x128.png > $PKG/usr/share/pixmaps/$PRGNAM.png
-cat misc/$PRGNAM.desktop > $PKG/usr/share/applications/$PRGNAM.desktop
+sed -e "s,Exec=,Exec=/usr/games/," \
+ -e 's,\r,,g' \
+ < misc/$PRGNAM.desktop \
+ > $PKG/usr/share/applications/$PRGNAM.desktop
+
+# icons made from upstream's icon, by turning the background transparent.
+for i in $CWD/icons/*.png; do
+ px=$( basename $i | cut -d. -f1 )
+ size=${px}x${px}
+ dir=$PKG/usr/share/icons/hicolor/$size/apps
+ mkdir -p $dir
+ cat $i > $dir/$PRGNAM.png
+done
+
+ln -s ../icons/hicolor/48x48/apps/$PRGNAM.png $PKG/usr/share/pixmaps/$PRGNAM.png
mkdir -p $PKG/usr/doc/$PRGNAM-$VERSION
rm -f INSTALL.txt # don't need compile instruction in bin package
@@ -132,4 +176,4 @@ cat $CWD/slack-desc > $PKG/install/slack-desc
cat $CWD/doinst.sh > $PKG/install/doinst.sh
cd $PKG
-/sbin/makepkg -l y -c n $OUTPUT/$PRGNAM-$VERSION-$ARCH-$BUILD$TAG.${PKGTYPE:-tgz}
+/sbin/makepkg -l y -c n $OUTPUT/$PRGNAM-$VERSION-$ARCH-$BUILD$TAG.$PKGTYPE
diff --git a/games/oblige/oblige.info b/games/oblige/oblige.info
index 0d63183bce..3140bd99f2 100644
--- a/games/oblige/oblige.info
+++ b/games/oblige/oblige.info
@@ -1,10 +1,10 @@
PRGNAM="oblige"
VERSION="7.70"
-HOMEPAGE="http://oblige.sourceforge.net/"
-DOWNLOAD="http://ponce.cc/slackware/sources/repo/oblige-770-source.zip"
+HOMEPAGE="https://oblige.sourceforge.net/"
+DOWNLOAD="https://sourceforge.net/projects/oblige/files/Oblige/7.70/oblige-770-source.zip"
MD5SUM="0995d8c17ca051ff522084dc9a6e664f"
DOWNLOAD_x86_64=""
MD5SUM_x86_64=""
REQUIRES="fltk"
MAINTAINER="B. Watson"
-EMAIL="yalhcru@gmail.com"
+EMAIL="urchlay@slackware.uk"
diff --git a/games/oblige/slack-desc b/games/oblige/slack-desc
index eceb6f9a13..c8ea3b5506 100644
--- a/games/oblige/slack-desc
+++ b/games/oblige/slack-desc
@@ -8,9 +8,9 @@
|-----handy-ruler------------------------------------------------------|
oblige: oblige (random level generator for Doom engine games)
oblige:
-oblige: OBLIGE is a random level generator for various classic games,
-oblige: including DOOM, DOOM II, Heretic, and Quake. The goal is to produce
-oblige: high quality levels which are fun to play.
+oblige: OBLIGE is a random level generator for DOOM, DOOM II, and
+oblige: their expansion packs. The goal is to produce high quality
+oblige: levels which are fun to play.
oblige:
oblige:
oblige:
diff --git a/games/oblige/swap.6.20.diff.gz b/games/oblige/swap.6.20.diff.gz
new file mode 100644
index 0000000000..c28999f055
--- /dev/null
+++ b/games/oblige/swap.6.20.diff.gz
Binary files differ
diff --git a/games/oblige/swap.7.70.diff.gz b/games/oblige/swap.7.70.diff.gz
new file mode 100644
index 0000000000..852632d9b8
--- /dev/null
+++ b/games/oblige/swap.7.70.diff.gz
Binary files differ
diff --git a/games/odamex/README b/games/odamex/README
index b97c5c769a..548ac5bb2e 100644
--- a/games/odamex/README
+++ b/games/odamex/README
@@ -1,14 +1,18 @@
+odamex: odamex (Online Doom Multiplayer Experience)
+
Odamex (Online Doom Multiplayer Experience) is a modification of DOOM
-to allow players to compete with each other over the Internet using the
-client/server architecture.
+to allow players to compete with each other over the Internet using
+the client/server architecture.
-To hear in-game music, install either eawpats or freepats, and make sure
-the Options -> Sound Options -> MIDI System Backend option is set to
-"SDL Mixer".
+To hear in-game music, install either eawpats or freepats, and make
+sure the Options -> Sound Options -> MIDI System Backend option is set
+to "SDL Mixer". If this doesn't work, make sure you've updated to the
+latest eawpats or freepats, and that the symlink at /etc/timidity.cfg
+is valid (points to "timidity/eawpats.cfg" or "timidity/crude.cfg").
-Optional dependency: If portmidi is installed, odamex will be built with
-it. This allows odamex's in-game music to be directed to a separate MIDI
-synthesizer application, or a hardware MIDI synth.
+Optional dependency: If portmidi is installed, odamex will be built
+with it. This allows odamex's in-game music to be directed to a
+separate MIDI synthesizer application, or a hardware MIDI synth.
You'll also need the game data (WAD file) from one of the following:
@@ -25,8 +29,3 @@ all lowercase (doom.wad) or all uppercase (DOOM.WAD).
Optional dependency: miniupnpc (auto-detected at build time). This
adds support for UPnP to odasrv (the odamex server). It has no effect
on odamex (the client) or odalaunch (the launcher).
-
-Note: If you get compile errors relating to wxIntPtr not being defined,
-upgrade your wxPython or wxGTK package to at least version 2.8.12.0. If
-for some reason you don't want to do this, see the comments in the
-SlackBuild for a dirty hack that might work instead.
diff --git a/games/odamex/doinst.sh b/games/odamex/doinst.sh
index 4e8ba7071d..3e5691a052 100644
--- a/games/odamex/doinst.sh
+++ b/games/odamex/doinst.sh
@@ -2,3 +2,8 @@ if [ -x /usr/bin/update-desktop-database ]; then
/usr/bin/update-desktop-database -q usr/share/applications >/dev/null 2>&1
fi
+if [ -e usr/share/icons/hicolor/icon-theme.cache ]; then
+ if [ -x /usr/bin/gtk-update-icon-cache ]; then
+ /usr/bin/gtk-update-icon-cache usr/share/icons/hicolor >/dev/null 2>&1
+ fi
+fi
diff --git a/games/odamex/odamex.SlackBuild b/games/odamex/odamex.SlackBuild
index 539ae20d6a..9a52a368f5 100644
--- a/games/odamex/odamex.SlackBuild
+++ b/games/odamex/odamex.SlackBuild
@@ -1,11 +1,27 @@
-#!/bin/sh
+#!/bin/bash
# Slackware build script for odamex
-# Written by B. Watson (yalhcru@gmail.com)
+# Written by B. Watson (urchlay@slackware.uk)
# Licensed under the WTFPL. See http://www.wtfpl.net/txt/copying/ for details.
+# 20231120 bkw: update for v10.4.0.
+# 20230707 bkw: FTBFS, when agar is installed. our agar is 1.7.0,
+# apparently too new for odamex-10.3.0. agar was added to SBo
+# in May 2023; until then, odamex didn't have ag-odalaunch and
+# it wasn't a problem. so just disable agar completely.
+# 20230110 bkw: update for v10.3.0. SDL2 builds are still broken,
+# game segfaults after picking an IWAD. SDL 1.2 builds are OK.
+# 20220319 bkw: fix build on 32-bit.
+# 20220208 bkw: BUILD=3, add the missing .diff...
+# 20211231 bkw: BUILD=2.
+# - the SDL2 segfault will likely be fixed soon (reported to PV, along
+# with a patch). add SDL2 environment variable, default to no.
+
+# 20211028 bkw: update for v0.9.5.
+# - had to switch to SDL 1 to avoid SDL2_Mixer-related segfaults.
+# unfortunately I can't get the music to work with SDL 1...
# 20201024 bkw: update for v0.8.3.
# 20191201 bkw: update for v0.8.1.
@@ -21,10 +37,13 @@
# - get rid of hard-coded /usr/share/games/doom, no longer needed
# - include sample orasrv.cfg from 0.6.4 source (it's gone from 0.7.0)
+cd $(dirname $0) ; CWD=$(pwd)
+
PRGNAM=odamex
-VERSION=${VERSION:-0.8.3}
+VERSION=${VERSION:-10.4.0}
BUILD=${BUILD:-1}
TAG=${TAG:-_SBo}
+PKGTYPE=${PKGTYPE:-tgz}
if [ -z "$ARCH" ]; then
case "$( uname -m )" in
@@ -34,7 +53,11 @@ if [ -z "$ARCH" ]; then
esac
fi
-CWD=$(pwd)
+if [ ! -z "${PRINT_PACKAGE_NAME}" ]; then
+ echo "$PRGNAM-$VERSION-$ARCH-$BUILD$TAG.$PKGTYPE"
+ exit 0
+fi
+
TMP=${TMP:-/tmp/SBo}
PKG=$TMP/package-$PRGNAM
OUTPUT=${OUTPUT:-/tmp}
@@ -67,31 +90,47 @@ rm -rf $PKG
mkdir -p $TMP $PKG $OUTPUT
cd $TMP
rm -rf $PRGNAM-src-$VERSION
-tar xvf $CWD/$PRGNAM-src-$VERSION.tar.bz2
+tar xvf $CWD/$PRGNAM-src-$VERSION.tar.xz
cd $PRGNAM-src-$VERSION
chown -R root:root .
-find -L . -perm /111 -a \! -perm 755 -a -exec chmod 755 {} \+ -o \
- \! -perm /111 -a \! -perm 644 -a -exec chmod 644 {} \+
+
+# Every file in 0.9.5 is +x, and none of them need to be!
+# Do not revert to template.
+find . -type f -exec chmod 644 {} \+
+find . -type d -exec chmod 755 {} \+
+
+SDL12ARG=ON
+[ "${SDL2:-no}" = "yes" ] && SDL12ARG=OFF
+
+# 20220101 bkw: do not use systemwide install of portmidi, if it exists.
+# This is to avoid a hidden portmidi dependency breaking the odamex
+# binary when portmidi gets removed or upgraded.
+patch -p1 < $CWD/use_bundled_portmidi.diff
# Make the launcher look in /usr/games for the odamex binary rather
# than the current directory. User can override with the settings
# dialog, this just sets the default.
-sed -i \
- '/launchercfg_s.odamex_directory *= */s,wxGetCwd(),wxString::FromAscii("/usr/games"),' \
- odalaunch/src/dlg_main.cpp
+sed -i 's,OdaGetInstallDir(),"/usr/games",g' \
+ odalaunch/src/dlg_main.cpp \
+ odalaunch/src/dlg_config.cpp
+
+# 20220319 bkw: cmake brokenness, fix manually.
+sed -i '/-march=pentium-m/d' client/CMakeLists.txt
+SLKCFLAGS+=" -msse -msse2"
-# 20201024 bkw: Not sure why make is exiting with nonzero status after
-# linking odalaunch. There are no error messages. Adding "-i" to the
-# make command line is a band-aid for this.
+rm -rf build
mkdir -p build
cd build
cmake \
-DCMAKE_C_FLAGS:STRING="$SLKCFLAGS" \
-DCMAKE_CXX_FLAGS:STRING="$SLKCFLAGS" \
-DCMAKE_INSTALL_PREFIX=/usr \
+ -DCMAKE_INSTALL_BINDIR=games \
-DwxWidgets_CONFIG_EXECUTABLE=$WXCONFIG \
+ -DUSE_SDL12=$SDL12ARG \
+ -DNO_AG-ODALAUNCH_TARGET=ON \
-DCMAKE_BUILD_TYPE=Release ..
- make -i VERBOSE=1
+ make VERBOSE=1
cd ..
# cmake-based odamex lacks a 'make install' target, do it manually.
@@ -101,36 +140,51 @@ install -s -m0755 build/client/$PRGNAM $PKG/usr/games
install -s -m0755 build/server/odasrv $PKG/usr/games
install -s -m0755 build/odalaunch/odalaunch $PKG/usr/games
-mkdir -p $PKG/usr/share/games/doom
-
-# wad file has moved in the source tree, accomodate either version
-WAD="$PRGNAM.wad"
-[ -e "wad/$PRGNAM.wad" ] && WAD="wad/$PRGNAM.wad"
-install -m0644 $WAD $PKG/usr/share/games/doom
-
-mkdir -p $PKG/usr/doc/$PRGNAM-$VERSION/tech
-cp -a CHANGELOG LICENSE MAINTAINERS README $PKG/usr/doc/$PRGNAM-$VERSION
-cat $CWD/odasrv.cfg > $PKG/usr/doc/$PRGNAM-$VERSION/odasrv.cfg.sample
-install -m0644 documentation/tech/* $PKG/usr/doc/$PRGNAM-$VERSION/tech
-
# Man page created for this slackbuild
-mkdir -p $PKG/usr/man/man6
-gzip -9c < $CWD/$PRGNAM.6 > $PKG/usr/man/man6/$PRGNAM.6.gz
+MANDIR=$PKG/usr/man/man6
+mkdir -p $MANDIR
+gzip -9c < $CWD/$PRGNAM.6 > $MANDIR/$PRGNAM.6.gz
+for i in odasrv odalaunch; do
+ ln -s $PRGNAM.6.gz $MANDIR/$i.6.gz
+done
# Desktop stuff
mkdir -p $PKG/usr/share/applications $PKG/usr/share/pixmaps
for exe in $PRGNAM odasrv odalaunch; do
- sed -e '/^Encoding/d' -e 's,/usr/share/doom,/usr/share/games/doom,' \
+ # make these validate and call the correct binary
+ sed -e '/^Encoding/d' -e 's, -waddir.*,,' -e 's,Exec=,&/usr/games/,' \
< installer/arch/$exe.desktop \
> $PKG/usr/share/applications/$exe.desktop
- cat media/icon_${exe}_512.png > $PKG/usr/share/pixmaps/$exe.png
+
+ # use upstream's icons
+ for i in media/icon_${exe}_*.png; do
+ px=$( basename $i | cut -d. -f1 | cut -d_ -f3 )
+ size=${px}x${px}
+ dir=$PKG/usr/share/icons/hicolor/$size/apps
+ mkdir -p $dir
+ cat $i > $dir/$exe.png
+ done
+
+ # make old-school icon, too
+ convert -resize 48x48 media/icon_${exe}_512.png $PKG/usr/share/pixmaps/$exe.png
done
-cat $CWD/$PRGNAM.SlackBuild > $PKG/usr/doc/$PRGNAM-$VERSION/$PRGNAM.SlackBuild
+# 20211027 bkw: In 0.9.5, upstream doesn't ship the wad. It expects
+# to build it using deutex. Easier to use a prebuilt one, from their
+# windows package.
+WADDIR=$PKG/usr/share/games/doom
+mkdir -p $WADDIR
+unzip -p $CWD/$PRGNAM-win32-$VERSION.zip $PRGNAM.wad > $WADDIR/$PRGNAM.wad
+
+PKGDOC=$PKG/usr/doc/$PRGNAM-$VERSION
+mkdir -p $PKGDOC
+cp -a CHANGELOG LICENSE MAINTAINERS README.md documentation/tech $PKGDOC
+cat $CWD/odasrv.cfg > $PKGDOC/odasrv.cfg.sample
+cat $CWD/$PRGNAM.SlackBuild > $PKGDOC/$PRGNAM.SlackBuild
mkdir -p $PKG/install
cat $CWD/slack-desc > $PKG/install/slack-desc
cat $CWD/doinst.sh > $PKG/install/doinst.sh
cd $PKG
-/sbin/makepkg -l y -c n $OUTPUT/$PRGNAM-$VERSION-$ARCH-$BUILD$TAG.${PKGTYPE:-tgz}
+/sbin/makepkg -l y -c n $OUTPUT/$PRGNAM-$VERSION-$ARCH-$BUILD$TAG.$PKGTYPE
diff --git a/games/odamex/odamex.info b/games/odamex/odamex.info
index 2da96d07f2..facad2dc17 100644
--- a/games/odamex/odamex.info
+++ b/games/odamex/odamex.info
@@ -1,10 +1,12 @@
PRGNAM="odamex"
-VERSION="0.8.3"
-HOMEPAGE="http://odamex.net/"
-DOWNLOAD="http://downloads.sourceforge.net/odamex/odamex-src-0.8.3.tar.bz2"
-MD5SUM="c096604173a0d48946f877483520dec1"
+VERSION="10.4.0"
+HOMEPAGE="https://odamex.net/"
+DOWNLOAD="https://downloads.sourceforge.net/project/odamex/Odamex/10.4.0/odamex-src-10.4.0.tar.xz \
+ https://downloads.sourceforge.net/project/odamex/Odamex/10.4.0/odamex-win32-10.4.0.zip"
+MD5SUM="b2de35cbe4930ad63c464d497c3af99a \
+ 6b446626b2390e5415ed54be3a326c09"
DOWNLOAD_x86_64=""
MD5SUM_x86_64=""
REQUIRES="wxGTK3"
MAINTAINER="B. Watson"
-EMAIL="yalhcru@gmail.com"
+EMAIL="urchlay@slackware.uk"
diff --git a/games/odamex/use_bundled_portmidi.diff b/games/odamex/use_bundled_portmidi.diff
new file mode 100644
index 0000000000..2fffcc2737
--- /dev/null
+++ b/games/odamex/use_bundled_portmidi.diff
@@ -0,0 +1,20 @@
+diff -Naur odamex-src-0.9.5/client/CMakeLists.txt odamex-src-0.9.5.patched/client/CMakeLists.txt
+--- odamex-src-0.9.5/client/CMakeLists.txt 2021-09-08 23:18:23.000000000 -0400
++++ odamex-src-0.9.5.patched/client/CMakeLists.txt 2022-01-01 14:36:43.305448361 -0500
+@@ -65,8 +65,6 @@
+
+ # PortMidi
+ if(ENABLE_PORTMIDI)
+- find_package(PortMidi)
+- if(NOT PORTMIDI_FOUND)
+ # build the PortMidi library
+ set(PORTMIDI_LIBRARY "portmidi")
+ set(PORTMIDI_LIBRARIES ${PORTMIDI_LIBRARY})
+@@ -107,7 +105,6 @@
+ add_library(${PORTMIDI_LIBRARY} STATIC ${PORTMIDI_SOURCES} ${PORTMIDI_HEADERS})
+ target_link_libraries(${PORTMIDI_LIBRARY} ${PM_NEEDED_LIBS})
+ message(STATUS "portmidi will be built and staticaly linked when compiling the client application.")
+- endif()
+
+ add_definitions(-DPORTMIDI)
+ include_directories(${PORTMIDI_INCLUDE_DIR})
diff --git a/games/onscripter/onscripter.SlackBuild b/games/onscripter/onscripter.SlackBuild
index 516cf80a4a..157feefd97 100644
--- a/games/onscripter/onscripter.SlackBuild
+++ b/games/onscripter/onscripter.SlackBuild
@@ -1,4 +1,4 @@
-#!/bin/sh
+#!/bin/bash
# Slackware build script for onscripter
# @(#)onscripter.SlackBuild 1.4 20/05/03 06:46:49
@@ -23,10 +23,13 @@
# OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF THIS SOFTWARE, EVEN IF
# ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
+cd $(dirname $0) ; CWD=$(pwd)
+
PRGNAM=onscripter
VERSION=${VERSION:-20200419}
BUILD=${BUILD:-1}
TAG=${TAG:-_SBo}
+PKGTYPE=${PKGTYPE:-tgz}
if [ -z "$ARCH" ]; then
case "$( uname -m )" in
@@ -36,7 +39,14 @@ if [ -z "$ARCH" ]; then
esac
fi
-CWD=$(pwd)
+# If the variable PRINT_PACKAGE_NAME is set, then this script will report what
+# the name of the created package would be, and then exit. This information
+# could be useful to other scripts.
+if [ ! -z "${PRINT_PACKAGE_NAME}" ]; then
+ echo "$PRGNAM-$VERSION-$ARCH-$BUILD$TAG.$PKGTYPE"
+ exit 0
+fi
+
TMP=${TMP:-/tmp/SBo}
PKG=$TMP/package-$PRGNAM
OUTPUT=${OUTPUT:-/tmp}
@@ -127,4 +137,4 @@ cat $CWD/slack-desc > $PKG/install/slack-desc
sed -i $PKG/install/slack-desc -e "s/%versiontag%/$versiontag/"
cd $PKG
-/sbin/makepkg -l y -c n $OUTPUT/$PRGNAM-$VERSION-$ARCH-$BUILD$TAG.${PKGTYPE:-tgz}
+/sbin/makepkg -l y -c n $OUTPUT/$PRGNAM-$VERSION-$ARCH-$BUILD$TAG.$PKGTYPE
diff --git a/games/oolite/oolite.SlackBuild b/games/oolite/oolite.SlackBuild
index 04d0866d96..3734a5cf98 100644
--- a/games/oolite/oolite.SlackBuild
+++ b/games/oolite/oolite.SlackBuild
@@ -1,8 +1,8 @@
-#!/bin/sh
+#!/bin/bash
# Slackware build script for oolite
-# Copyright 2016 - 2020 Johannes Schoepfer, Germany
+# Copyright 2016 - 2022 Johannes Schoepfer, Germany
# All rights reserved.
#
# Redistribution and use of this script, with or without modification, is
@@ -22,10 +22,15 @@
# OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF THIS SOFTWARE, EVEN IF
# ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
+# Modified by the SlackBuilds.org project.
+
+cd $(dirname $0) ; CWD=$(pwd)
+
PRGNAM=oolite
VERSION=${VERSION:-1.90}
BUILD=${BUILD:-1}
TAG=${TAG:-_SBo}
+PKGTYPE=${PKGTYPE:-tgz}
if [ -z "$ARCH" ]; then
case "$( uname -m )" in
@@ -35,7 +40,11 @@ if [ -z "$ARCH" ]; then
esac
fi
-CWD=$(pwd)
+if [ ! -z "${PRINT_PACKAGE_NAME}" ]; then
+ echo "$PRGNAM-$VERSION-$ARCH-$BUILD$TAG.$PKGTYPE"
+ exit 0
+fi
+
TMP=${TMP:-/tmp/SBo}
PKG=$TMP/package-$PRGNAM
OUTPUT=${OUTPUT:-/tmp}
@@ -59,9 +68,9 @@ set -e
rm -rf $PKG
mkdir -p $TMP $PKG $OUTPUT
cd $TMP
-rm -rf oolite-source-$VERSION
-tar vxf $CWD/oolite-source-$VERSION.tar.bz2
-cd oolite-source-$VERSION
+rm -rf $PRGNAM-source-$VERSION
+tar vxf $CWD/$PRGNAM-source-$VERSION.tar.bz2
+cd $PRGNAM-source-$VERSION
chown -R root:root .
find -L . \
\( -perm 777 -o -perm 775 -o -perm 750 -o -perm 711 -o -perm 555 \
@@ -69,17 +78,16 @@ find -L . \
\( -perm 666 -o -perm 664 -o -perm 640 -o -perm 600 -o -perm 444 \
-o -perm 440 -o -perm 400 \) -exec chmod 644 {} \;
-# Make sure only system libs may be used
+# Make sure only system libs will be used
rm deps/Linux-deps/x86*/lib/*
+rm -rf deps/Linux-deps/include/*
source /usr/share/GNUstep/Makefiles/GNUstep.sh
export GNUSTEP_MAKEFILES=/usr/share/GNUstep/Makefiles
-## Link to espeak-ng instead of espeak
-# -e "/ADDITIONAL_OBJC_LIBS/s/+= -lespeak/+= -lespeak-ng/" \
sed -i \
- -e "/ADDITIONAL_OBJCFLAGS/s/=/= -fobjc-exceptions ${SLKCFLAGS}/" \
+ -e "/ADDITIONAL_OBJCFLAGS/s/=/= ${SLKCFLAGS}/" \
-e "s/-mtune=generic//g" \
- -e "s/ -lpng / -l:libpng14.so.14 /g" \
+ -e "/ADDITIONAL_OBJC_LIBS/s/+= -lespeak/+= -lespeak-ng/" \
GNUmakefile
make -f Makefile ESPEAK=yes use_deps=no debug=no release
@@ -119,4 +127,4 @@ cat $CWD/doinst.sh > $PKG/install/doinst.sh
cat $CWD/slack-desc > $PKG/install/slack-desc
cd $PKG
-/sbin/makepkg -p -l y -c n $OUTPUT/$PRGNAM-$VERSION-$ARCH-$BUILD$TAG.${PKGTYPE:-tgz}
+/sbin/makepkg -p -l y -c n $OUTPUT/$PRGNAM-$VERSION-$ARCH-$BUILD$TAG.$PKGTYPE
diff --git a/games/oolite/oolite.info b/games/oolite/oolite.info
index a7b6028400..1b6acc66da 100644
--- a/games/oolite/oolite.info
+++ b/games/oolite/oolite.info
@@ -5,6 +5,6 @@ DOWNLOAD="https://github.com/OoliteProject/oolite/releases/download/1.90/oolite-
MD5SUM="c34c6f88606be75c90cc52c5a4173611"
DOWNLOAD_x86_64=""
MD5SUM_x86_64=""
-REQUIRES="espeak gnustep-base OpenAL"
+REQUIRES="gnustep-base"
MAINTAINER="Johannes Schoepfer"
EMAIL="slackbuilds@schoepfer.info"
diff --git a/games/open-adventure/advent.png b/games/open-adventure/advent.png
deleted file mode 100644
index 8e1a8fdc52..0000000000
--- a/games/open-adventure/advent.png
+++ /dev/null
Binary files differ
diff --git a/games/open-adventure/doinst.sh b/games/open-adventure/doinst.sh
new file mode 100644
index 0000000000..9424ce43ff
--- /dev/null
+++ b/games/open-adventure/doinst.sh
@@ -0,0 +1,13 @@
+if [ -x /usr/bin/update-desktop-database ]; then
+ /usr/bin/update-desktop-database -q usr/share/applications >/dev/null 2>&1
+fi
+
+if [ -x /usr/bin/update-mime-database ]; then
+ /usr/bin/update-mime-database usr/share/mime >/dev/null 2>&1
+fi
+
+if [ -e usr/share/icons/hicolor/icon-theme.cache ]; then
+ if [ -x /usr/bin/gtk-update-icon-cache ]; then
+ /usr/bin/gtk-update-icon-cache usr/share/icons/hicolor >/dev/null 2>&1
+ fi
+fi
diff --git a/games/open-adventure/open-adventure.SlackBuild b/games/open-adventure/open-adventure.SlackBuild
index 4ab94bbc9f..c5c438dfb1 100644
--- a/games/open-adventure/open-adventure.SlackBuild
+++ b/games/open-adventure/open-adventure.SlackBuild
@@ -1,11 +1,16 @@
-#!/bin/sh
+#!/bin/bash
# Slackware build script for open-adventure
-# Written by B. Watson (yalhcru@gmail.com)
+# Written by B. Watson (urchlay@slackware.uk)
# Licensed under the WTFPL. See http://www.wtfpl.net/txt/copying/ for details.
+# 20240229 bkw: BUILD=2, naughty upstream changed the tarball after release.
+# 20240211 bkw: update for v1.18.
+# 20230906 bkw: update for v1.16.
+# 20230107 bkw: Update for v1.11.
+# 20211024 bkw: BUILD=2, new-style icons, HTML docs.
# 20201024 bkw: Update for v1.9.
# 20191211 bkw: Update for v1.8.
# 20181203 bkw: Update for v1.6.
@@ -15,10 +20,13 @@
# - Include upstream's icon and .desktop.
# - New dependencies in .info file :(
+cd $(dirname $0) ; CWD=$(pwd)
+
PRGNAM=open-adventure
-VERSION=${VERSION:-1.9}
-BUILD=${BUILD:-1}
+VERSION=${VERSION:-1.18}
+BUILD=${BUILD:-2}
TAG=${TAG:-_SBo}
+PKGTYPE=${PKGTYPE:-tgz}
if [ -z "$ARCH" ]; then
case "$( uname -m )" in
@@ -28,23 +36,23 @@ if [ -z "$ARCH" ]; then
esac
fi
-CWD=$(pwd)
+if [ ! -z "${PRINT_PACKAGE_NAME}" ]; then
+ echo "$PRGNAM-$VERSION-$ARCH-$BUILD$TAG.$PKGTYPE"
+ exit 0
+fi
+
TMP=${TMP:-/tmp/SBo}
PKG=$TMP/package-$PRGNAM
OUTPUT=${OUTPUT:-/tmp}
if [ "$ARCH" = "i586" ]; then
SLKCFLAGS="-O2 -march=i586 -mtune=i686"
- LIBDIRSUFFIX=""
elif [ "$ARCH" = "i686" ]; then
SLKCFLAGS="-O2 -march=i686 -mtune=i686"
- LIBDIRSUFFIX=""
elif [ "$ARCH" = "x86_64" ]; then
SLKCFLAGS="-O2 -fPIC"
- LIBDIRSUFFIX="64"
else
SLKCFLAGS="-O2"
- LIBDIRSUFFIX=""
fi
# Actual name of the program:
@@ -76,11 +84,15 @@ make clean
# It'd be nice if I could pass my own CFLAGS without editing the Makefile...
sed -i "s,-O2,$SLKCFLAGS," Makefile
+# 20240210 bkw: fix a typo in the man page.
+sed -i 's,emdianness,endianness,' $EXE.adoc
+
# 20201024 bkw: Parallel make causes ./make_dungeon.py to run
# twice. This doesn't seem to hurt anything, but I can see how it
# might someday. So -j1.
make -j1
make $EXE.6
+make html notes.html
# no 'make install' target:
mkdir -p $PKG/usr/games $PKG/usr/man/man6
@@ -91,19 +103,31 @@ gzip -9c < $EXE.6 > $PKG/usr/man/man6/$EXE.6.gz
ln -s $EXE.6.gz $PKG/usr/man/man6/$PRGNAM.6.gz
ln -s $EXE $PKG/usr/games/$PRGNAM
-# icon converted from advent.svg (rather not script that here)
mkdir -p $PKG/usr/share/applications $PKG/usr/share/pixmaps
-cat $EXE.desktop > $PKG/usr/share/applications/$EXE.desktop
-cat $CWD/$EXE.png > $PKG/usr/share/pixmaps/$EXE.png
-
-# don't bother with advent.adoc, it's the man page.
-mkdir -p $PKG/usr/doc/$PRGNAM-$VERSION
-cp -a COPYING NEWS README.adoc TODO h*.adoc $PKG/usr/doc/$PRGNAM-$VERSION
+sed 's,Exec=,&/usr/games/,' $EXE.desktop > $PKG/usr/share/applications/$EXE.desktop
+
+# The icon doesn't look that great when scaled down; shrug.
+# 20230906 bkw: use rsvg-convert rather than ImageMagick's convert,
+# for more reproducible builds (IM uses inkscape if installed, or rsvg
+# if not). Also avoids inkscape writing to /root/.config/...
+for px in 16 32 48 64 128; do
+ size=${px}x${px}
+ dir=$PKG/usr/share/icons/hicolor/$size/apps
+ mkdir -p $dir
+ rsvg-convert --output=$dir/$EXE.png --width=$px --height=$px $EXE.svg
+done
+
+ln -s ../icons/hicolor/48x48/apps/$EXE.png $PKG/usr/share/pixmaps/$EXE.png
+
+mkdir -p $PKG/usr/doc/$PRGNAM-$VERSION/html
+rm -f INSTALL*
+cp -a COPYING *.adoc $PKG/usr/doc/$PRGNAM-$VERSION
+cp -a *.html $PKG/usr/doc/$PRGNAM-$VERSION/html
cat $CWD/$PRGNAM.SlackBuild > $PKG/usr/doc/$PRGNAM-$VERSION/$PRGNAM.SlackBuild
mkdir -p $PKG/install
cat $CWD/slack-desc > $PKG/install/slack-desc
-#cat $CWD/doinst.sh > $PKG/install/doinst.sh # someday I may make a .desktop file
+cat $CWD/doinst.sh > $PKG/install/doinst.sh
cd $PKG
-/sbin/makepkg -l y -c n $OUTPUT/$PRGNAM-$VERSION-$ARCH-$BUILD$TAG.${PKGTYPE:-tgz}
+/sbin/makepkg -l y -c n $OUTPUT/$PRGNAM-$VERSION-$ARCH-$BUILD$TAG.$PKGTYPE
diff --git a/games/open-adventure/open-adventure.info b/games/open-adventure/open-adventure.info
index d14d9f11e2..63e224b4d1 100644
--- a/games/open-adventure/open-adventure.info
+++ b/games/open-adventure/open-adventure.info
@@ -1,10 +1,10 @@
PRGNAM="open-adventure"
-VERSION="1.9"
+VERSION="1.18"
HOMEPAGE="https://gitlab.com/esr/open-adventure"
-DOWNLOAD="https://gitlab.com/esr/open-adventure/-/archive/1.9/open-adventure-1.9.tar.bz2"
-MD5SUM="aca1f7c1732eeadae8cd107d7f201af5"
+DOWNLOAD="https://gitlab.com/esr/open-adventure/-/archive/1.18/open-adventure-1.18.tar.bz2"
+MD5SUM="173199b27ca12fb32e9cfadc5e917f93"
DOWNLOAD_x86_64=""
MD5SUM_x86_64=""
-REQUIRES="python3-PyYAML libedit"
+REQUIRES=""
MAINTAINER="B. Watson"
-EMAIL="yalhcru@gmail.com"
+EMAIL="urchlay@slackware.uk"
diff --git a/games/open-invaders/48.png b/games/open-invaders/48.png
new file mode 100644
index 0000000000..38cd87f9a2
--- /dev/null
+++ b/games/open-invaders/48.png
Binary files differ
diff --git a/games/open-invaders/64.png b/games/open-invaders/64.png
new file mode 100644
index 0000000000..c751eb15e8
--- /dev/null
+++ b/games/open-invaders/64.png
Binary files differ
diff --git a/games/open-invaders/README b/games/open-invaders/README
new file mode 100644
index 0000000000..3dea5b37d4
--- /dev/null
+++ b/games/open-invaders/README
@@ -0,0 +1,5 @@
+open-invaders (game similar to space invaders)
+
+open-invaders is a Space Invaders clone with updated graphics and
+sound. It can be played with either the keyboard or a game controller,
+and features 'unlockable' content.
diff --git a/games/open-invaders/check_env_home.diff b/games/open-invaders/check_env_home.diff
new file mode 100644
index 0000000000..37644132f8
--- /dev/null
+++ b/games/open-invaders/check_env_home.diff
@@ -0,0 +1,15 @@
+diff -Naur open-invaders-0.3/src/main.cc open-invaders-0.3.patched/src/main.cc
+--- open-invaders-0.3/src/main.cc 2007-11-11 05:04:57.000000000 -0500
++++ open-invaders-0.3.patched/src/main.cc 2023-01-22 03:00:59.915438072 -0500
+@@ -48,6 +48,11 @@
+
+ int main(int argc, char *argv[])
+ {
++ if(!getenv("HOME")) {
++ fprintf(stderr, "%s: HOME not set in environment, bailing.\n", argv[0]);
++ exit(1);
++ }
++
+ cout << PACKAGE_DATA_DIR << endl;
+
+ // Parse parameters, perhaps include -windowed and -fullscreen?
diff --git a/games/open-invaders/doinst.sh b/games/open-invaders/doinst.sh
new file mode 100644
index 0000000000..3e5691a052
--- /dev/null
+++ b/games/open-invaders/doinst.sh
@@ -0,0 +1,9 @@
+if [ -x /usr/bin/update-desktop-database ]; then
+ /usr/bin/update-desktop-database -q usr/share/applications >/dev/null 2>&1
+fi
+
+if [ -e usr/share/icons/hicolor/icon-theme.cache ]; then
+ if [ -x /usr/bin/gtk-update-icon-cache ]; then
+ /usr/bin/gtk-update-icon-cache usr/share/icons/hicolor >/dev/null 2>&1
+ fi
+fi
diff --git a/games/open-invaders/open-invaders.6 b/games/open-invaders/open-invaders.6
new file mode 100644
index 0000000000..759ea8d238
--- /dev/null
+++ b/games/open-invaders/open-invaders.6
@@ -0,0 +1,113 @@
+.\" Man page generated from reStructuredText.
+.
+.
+.nr rst2man-indent-level 0
+.
+.de1 rstReportMargin
+\\$1 \\n[an-margin]
+level \\n[rst2man-indent-level]
+level margin: \\n[rst2man-indent\\n[rst2man-indent-level]]
+-
+\\n[rst2man-indent0]
+\\n[rst2man-indent1]
+\\n[rst2man-indent2]
+..
+.de1 INDENT
+.\" .rstReportMargin pre:
+. RS \\$1
+. nr rst2man-indent\\n[rst2man-indent-level] \\n[an-margin]
+. nr rst2man-indent-level +1
+.\" .rstReportMargin post:
+..
+.de UNINDENT
+. RE
+.\" indent \\n[an-margin]
+.\" old: \\n[rst2man-indent\\n[rst2man-indent-level]]
+.nr rst2man-indent-level -1
+.\" new: \\n[rst2man-indent\\n[rst2man-indent-level]]
+.in \\n[rst2man-indent\\n[rst2man-indent-level]]u
+..
+.TH "OPEN-INVADERS" 6 "2023-01-22" "0.3_8" "SlackBuilds.org"
+.SH NAME
+open-invaders \- game similar to Space Invaders
+.\" RST source for open-invaders(1) man page. Convert with:
+.
+.\" rst2man.py open-invaders.rst > open-invaders.6
+.
+.SH SYNOPSIS
+.sp
+open\-invaders [\fB\-f\fP | \fB\-w\fP]
+.SH DESCRIPTION
+.sp
+\fBopen\-invaders\fP is a Space Invaders clone with updated graphics and
+sound. It can be played with either the keyboard or a game controller,
+and features \(aqunlockable\(aq content.
+.sp
+For more information about gameplay, see:
+.INDENT 0.0
+.INDENT 3.5
+/usr/doc/open\-invaders\-0.3_8/README
+.UNINDENT
+.UNINDENT
+.SH OPTIONS
+.INDENT 0.0
+.TP
+.B \-f
+Start in fullscreen mode (overrides config file).
+.TP
+.B \-w
+Start in windowed mode (overrides config file).
+.UNINDENT
+.SH KEYBOARD
+.sp
+These keystrokes can be changed from the Options menu within the game. The
+defaults are:
+.INDENT 0.0
+.TP
+.B \fBArrow Keys\fP
+Move left/right/up/down.
+.TP
+.B \fBLeft Shift\fP
+Fire.
+.TP
+.B \fBP\fP
+Pause game.
+.TP
+.B \fBQ\fP
+Quit game, return to main menu.
+.UNINDENT
+.sp
+These keystrokes cannot be changed:
+.INDENT 0.0
+.TP
+.B \fBControl\-F\fP, \fBAlt\-Enter\fP
+Toggle fullscreen mode.
+.TP
+.B \fBControl\-S\fP
+Save screenshot. Screenshots are in \fB\&.bmp\fP format, and will be saved
+to \fB~/oi_screen_NNNN.bmp\fP, where \fINNNN\fP is a random 4\-digit number.
+.TP
+.B \fBControl\-C\fP
+Exit the application.
+.UNINDENT
+.SH FILES
+.INDENT 0.0
+.TP
+.B ~/.openinvaders/config
+Config file. Can be edited with a text editor, or via the Options menu
+in the game.
+.TP
+.B ~/.openinvaders/hiscore
+High scores. Not human\-readable.
+.UNINDENT
+.SH COPYRIGHT
+.sp
+See the file /usr/doc/open\-invaders\-0.3_8/COPYING for license information.
+.SH AUTHORS
+.sp
+\fBopen\-invaders\fP was written by Darryl LeCount.
+.sp
+This man page written for the SlackBuilds.org project
+by B. Watson, and is licensed under the WTFPL.
+.\" Generated by docutils manpage writer.
+.
diff --git a/games/open-invaders/open-invaders.SlackBuild b/games/open-invaders/open-invaders.SlackBuild
new file mode 100644
index 0000000000..5e7b3621d8
--- /dev/null
+++ b/games/open-invaders/open-invaders.SlackBuild
@@ -0,0 +1,172 @@
+#!/bin/bash
+
+# Slackware build script for open-invaders
+
+# Written by B. Watson (yalhcru@gmail.com)
+
+# Licensed under the WTFPL. See http://www.wtfpl.net/txt/copying/ for details.
+
+# This isn't really that great a game. The developer spent a lot
+# of time on bling-ey graphics and sound, but it's missing some of
+# the basic gameplay elements that made Space Invaders a classic:
+# the enemies don't speed up during the level as you kill them,
+# and there are no UFOs (at least, not on the first 7 levels; maybe
+# later?). To be fair, the README says it's "still in development"
+# and not finished (maybe the author planned to add that stuff later,
+# but development stopped in 2007 or so).
+
+# I patched the game a bit to make it less annoying to play (made the
+# intro screens skippable).
+
+# The part of VERSION after the _ is the Debian patchlevel. They've
+# done a good bit of patching and bugfixing to keep this usable on a
+# modern system.
+
+cd $(dirname $0) ; CWD=$(pwd)
+
+PRGNAM=open-invaders
+VERSION=${VERSION:-0.3_8}
+BUILD=${BUILD:-1}
+TAG=${TAG:-_SBo}
+PKGTYPE=${PKGTYPE:-tgz}
+
+if [ -z "$ARCH" ]; then
+ case "$( uname -m )" in
+ i?86) ARCH=i586 ;;
+ arm*) ARCH=arm ;;
+ *) ARCH=$( uname -m ) ;;
+ esac
+fi
+
+if [ ! -z "${PRINT_PACKAGE_NAME}" ]; then
+ echo "$PRGNAM-$VERSION-$ARCH-$BUILD$TAG.$PKGTYPE"
+ exit 0
+fi
+
+TMP=${TMP:-/tmp/SBo}
+PKG=$TMP/package-$PRGNAM
+OUTPUT=${OUTPUT:-/tmp}
+
+if [ "$ARCH" = "i586" ]; then
+ SLKCFLAGS="-O2 -march=i586 -mtune=i686"
+ LIBDIRSUFFIX=""
+elif [ "$ARCH" = "i686" ]; then
+ SLKCFLAGS="-O2 -march=i686 -mtune=i686"
+ LIBDIRSUFFIX=""
+elif [ "$ARCH" = "x86_64" ]; then
+ SLKCFLAGS="-O2 -fPIC"
+ LIBDIRSUFFIX="64"
+else
+ SLKCFLAGS="-O2"
+ LIBDIRSUFFIX=""
+fi
+
+set -e
+
+SRCVER="$( echo $VERSION | cut -d_ -f1 )"
+DEBVER="$( echo $VERSION | cut -d_ -f2 )"
+
+rm -rf $PKG
+mkdir -p $TMP $PKG $OUTPUT
+cd $TMP
+rm -rf $PRGNAM-$SRCVER
+tar xvf $CWD/$PRGNAM-$SRCVER.tar.gz
+cd $PRGNAM-$SRCVER
+tar xvf $CWD/${PRGNAM}_$SRCVER-$DEBVER.debian.tar.xz
+chown -R root:root .
+find -L . -perm /111 -a \! -perm 755 -a -exec chmod 755 {} \+ -o \
+ \! -perm /111 -a \! -perm 644 -a -exec chmod 644 {} \+
+
+# Make the intro skippable by keypress or joystick button. The damn
+# thing is like 10 seconds long. Also speed up the fadeout when
+# you exit the game via the menu, so it ends when the "goodbye"
+# sample is done playing.
+patch -p1 < $CWD/skippable_intro.diff
+
+# Exit with a meaningful error message, if HOME isn't set in the
+# environment (instead of crashing with a C++ exception).
+patch -p1 < $CWD/check_env_home.diff
+
+# Apply all of debian's patches. Some fix build failures, some
+# fix bugs in the game.
+for i in $( cat debian/patches/series ); do
+ patch -p1 < debian/patches/$i
+done
+
+# From debian/rules:
+sed -i 's/ALLEGRO_LINUX/ALLEGRO_UNIX/g' src/*.cc headers/*.h
+sed -i -e 's/laldmd/laldmb/g' -e 's/ldumbd/ldumb/g' src/Makefile.*
+
+# Fix for dumb-2.x API:
+sed -i '/dumb_load_mod_quick/s|)|,0)|' src/{intro,init,ending}.cc
+
+DOCDIR=/usr/doc/$PRGNAM-$VERSION
+PKGDOC=$PKG/$DOCDIR
+
+# The -Dnullptr=0 is a bit of a dirty hack. We use debian's
+# gcc6.patch, which fixes "return false" in a function returning
+# a pointer... but replaces 'false' with 'nullptr'. In our gcc 11,
+# we need std=gnu++98 to get it to build, which means nullptr isn't
+# defined. So define it. Not sure why C++11 needs yet another keyword
+# that's just an alias for 0 (it already had NULL). This kind of
+# stuff is why I never code in C++: it's a moving target, it has been
+# since day 1, and the C++ standards gurus make sure it keeps moving
+# perpetually.
+
+# Need this for dumb.h on 32-bit, it does no harm on 64-bit. See
+# /usr/include/dumb.h, lines 124-142.
+SLKCFLAGS+=" -D_FILE_OFFSET_BITS=64"
+
+CFLAGS="$SLKCFLAGS" \
+CXXFLAGS="$SLKCFLAGS -std=gnu++98 -Dnullptr=0" \
+./configure \
+ --bindir=/usr/games \
+ --datadir=/usr/share/games \
+ --prefix=/usr \
+ --libdir=/usr/lib${LIBDIRSUFFIX} \
+ --sysconfdir=/etc \
+ --localstatedir=/var \
+ --mandir=/usr/man \
+ --build=$ARCH-slackware-linux
+
+make open_invadersdatadir=$PKG/usr/share/games/$PRGNAM
+make install-strip \
+ open_invadersdatadir=/usr/share/games/$PRGNAM \
+ open_invadersdocdir=$DOCDIR \
+ DESTDIR=$PKG
+
+# Debian ships a man page, but I like mine better.
+mkdir -p $PKG/usr/man/man6
+gzip -9c < $CWD/$PRGNAM.6 > $PKG/usr/man/man6/$PRGNAM.6.gz
+
+# Icons made from ship.pcx (debian's icon is fugly, sorry).
+for px in 48 64; do
+ size=${px}x${px}
+ dir=$PKG/usr/share/icons/hicolor/$size/apps
+ mkdir -p $dir
+ cat $CWD/$px.png > $dir/$PRGNAM.png
+done
+
+mkdir -p $PKG/usr/share/pixmaps
+ln -s ../icons/hicolor/48x48/apps/$PRGNAM.png $PKG/usr/share/pixmaps/$PRGNAM.png
+
+# Use debian's .desktop, but with full path to binary, and get
+# rid of the -w argument (so the user can set fullscreen mode in
+# the config, and it'll actually work).
+mkdir -p $PKG/usr/share/applications
+sed '/^Exec/s,=.*,=/usr/games/open-invaders,' debian/$PRGNAM.desktop > \
+ $PKG/usr/share/applications/$PRGNAM.desktop
+
+# Docs already installed, get rid of useless ones and fix CRLFs.
+# ChangeLog is 0 bytes, INSTALL is generic autotools cruft.
+rm -f $PKGDOC/{ChangeLog,INSTALL}
+sed -i 's,\r,,' $PKGDOC/*
+
+cat $CWD/$PRGNAM.SlackBuild > $PKGDOC/$PRGNAM.SlackBuild
+
+mkdir -p $PKG/install
+cat $CWD/slack-desc > $PKG/install/slack-desc
+cat $CWD/doinst.sh > $PKG/install/doinst.sh
+
+cd $PKG
+/sbin/makepkg -l y -c n $OUTPUT/$PRGNAM-$VERSION-$ARCH-$BUILD$TAG.$PKGTYPE
diff --git a/games/open-invaders/open-invaders.info b/games/open-invaders/open-invaders.info
new file mode 100644
index 0000000000..1e3818e7bd
--- /dev/null
+++ b/games/open-invaders/open-invaders.info
@@ -0,0 +1,12 @@
+PRGNAM="open-invaders"
+VERSION="0.3_8"
+HOMEPAGE="https://sourceforge.net/projects/open-invaders/"
+DOWNLOAD="https://downloads.sourceforge.net/project/open-invaders/open-invaders-0.3/open-invaders-0.3.tar.gz \
+ https://deb.debian.org/debian/pool/main/o/open-invaders/open-invaders_0.3-8.debian.tar.xz"
+MD5SUM="35c0d8ec3beacfc97389d38eef3555b2 \
+ 721e802c86637979405aca7b908bfe0c"
+DOWNLOAD_x86_64=""
+MD5SUM_x86_64=""
+REQUIRES="dumb"
+MAINTAINER="B. Watson"
+EMAIL="yalhcru@gmail.com"
diff --git a/games/open-invaders/open-invaders.rst b/games/open-invaders/open-invaders.rst
new file mode 100644
index 0000000000..c4060039a8
--- /dev/null
+++ b/games/open-invaders/open-invaders.rst
@@ -0,0 +1,96 @@
+.. RST source for open-invaders(1) man page. Convert with:
+.. rst2man.py open-invaders.rst > open-invaders.6
+
+.. |version| replace:: 0.3_8
+.. |date| date::
+
+=============
+open-invaders
+=============
+
+------------------------------
+game similar to Space Invaders
+------------------------------
+
+:Manual section: 6
+:Manual group: SlackBuilds.org
+:Date: |date|
+:Version: |version|
+
+SYNOPSIS
+========
+
+open-invaders [**-f** | **-w**]
+
+DESCRIPTION
+===========
+
+**open-invaders** is a Space Invaders clone with updated graphics and
+sound. It can be played with either the keyboard or a game controller,
+and features 'unlockable' content.
+
+For more information about gameplay, see:
+
+ /usr/doc/open-invaders-|version|/README
+
+OPTIONS
+=======
+
+-f
+ Start in fullscreen mode (overrides config file).
+
+-w
+ Start in windowed mode (overrides config file).
+
+KEYBOARD
+========
+
+These keystrokes can be changed from the Options menu within the game. The
+defaults are:
+
+**Arrow Keys**
+ Move left/right/up/down.
+
+**Left Shift**
+ Fire.
+
+**P**
+ Pause game.
+
+**Q**
+ Quit game, return to main menu.
+
+These keystrokes cannot be changed:
+
+**Control-F**, **Alt-Enter**
+ Toggle fullscreen mode.
+
+**Control-S**
+ Save screenshot. Screenshots are in **.bmp** format, and will be saved
+ to **~/oi_screen_NNNN.bmp**, where *NNNN* is a random 4-digit number.
+
+**Control-C**
+ Exit the application.
+
+FILES
+=====
+
+~/.openinvaders/config
+ Config file. Can be edited with a text editor, or via the Options menu
+ in the game.
+
+~/.openinvaders/hiscore
+ High scores. Not human-readable.
+
+COPYRIGHT
+=========
+
+See the file /usr/doc/open-invaders-|version|/COPYING for license information.
+
+AUTHORS
+=======
+
+**open-invaders** was written by Darryl LeCount.
+
+This man page written for the SlackBuilds.org project
+by B. Watson, and is licensed under the WTFPL.
diff --git a/games/open-invaders/skippable_intro.diff b/games/open-invaders/skippable_intro.diff
new file mode 100644
index 0000000000..5e21b12dfb
--- /dev/null
+++ b/games/open-invaders/skippable_intro.diff
@@ -0,0 +1,63 @@
+diff -Naur open-invaders-0.3/src/intro.cc open-invaders-0.3.patched/src/intro.cc
+--- open-invaders-0.3/src/intro.cc 2007-11-11 04:30:53.000000000 -0500
++++ open-invaders-0.3.patched/src/intro.cc 2022-01-12 00:13:31.351070181 -0500
+@@ -99,6 +99,14 @@
+ "SCRLOCK", "NUMLOCK", "CAPSLOCK", "MAX"
+ };
+
++bool interruptible_rest(int ms) {
++ int i, count = ms / 20;
++ for(i = 0; i < count; i++) {
++ if(input_pressed()) return true;
++ rest(20);
++ }
++ return false;
++}
+
+ void intro_sequence()
+ {
+@@ -137,24 +145,24 @@
+
+ clear_to_color(screen,0);
+ set_palette(black_palette);
+- rest(2000);
+
+- alt_fade_in(jamyskis,5);
+-
+ blit(jamyskis,screen,0,0,0,0,800,600);
+
+- rest(2000);
+- alt_fade_between(jamyskis,allegro,5);
++ if(!interruptible_rest(2000)) {
++ alt_fade_between(jamyskis,allegro,5);
+
+- blit(allegro,screen,0,0,0,0,800,600);
++ blit(allegro,screen,0,0,0,0,800,600);
+
+- rest(2000);
+- alt_fade_between(allegro,linuxlogo,5);
++ if(!interruptible_rest(2000)) {
++ alt_fade_between(allegro,linuxlogo,5);
+
+- blit(linuxlogo,screen,0,0,0,0,800,600);
++ blit(linuxlogo,screen,0,0,0,0,800,600);
+
+- rest(2000);
+- alt_fade_out(linuxlogo,5);
++ if(!interruptible_rest(2000)) {
++ alt_fade_out(linuxlogo,5);
++ }
++ }
++ }
+
+ destroy_bitmap(jamyskis);
+ destroy_bitmap(allegro);
+@@ -494,7 +502,7 @@
+ program_active=false;
+ al_pause_duh(titlesongplayer);
+ play_sample(goodbye_sound,sfx_volume,128,1000,0);
+- alt_fade_out(screen,1);
++ alt_fade_out(screen,3);
+ title_screen_active=false;
+ break;
+ }
diff --git a/games/open-invaders/slack-desc b/games/open-invaders/slack-desc
new file mode 100644
index 0000000000..6e456fdd00
--- /dev/null
+++ b/games/open-invaders/slack-desc
@@ -0,0 +1,19 @@
+# HOW TO EDIT THIS FILE:
+# The "handy ruler" below makes it easier to edit a package description.
+# Line up the first '|' above the ':' following the base package name, and
+# the '|' on the right side marks the last column you can put a character in.
+# You must make exactly 11 lines for the formatting to be correct. It's also
+# customary to leave one space after the ':' except on otherwise blank lines.
+
+ |-----handy-ruler------------------------------------------------------|
+open-invaders: open-invaders (game similar to space invaders)
+open-invaders:
+open-invaders: open-invaders is a Space Invaders clone with updated graphics and
+open-invaders: sound. It can be played with either the keyboard or a game controller,
+open-invaders: and features 'unlockable' content.
+open-invaders:
+open-invaders:
+open-invaders:
+open-invaders:
+open-invaders:
+open-invaders:
diff --git a/games/openarena/openarena.SlackBuild b/games/openarena/openarena.SlackBuild
index 7a7cf9f7cd..630c77c351 100644
--- a/games/openarena/openarena.SlackBuild
+++ b/games/openarena/openarena.SlackBuild
@@ -1,4 +1,4 @@
-#!/bin/sh
+#!/bin/bash
# Slackware build script for OpenArena
@@ -22,11 +22,14 @@
# OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF THIS SOFTWARE, EVEN IF
# ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
+cd $(dirname $0) ; CWD=$(pwd)
+
PRGNAM=openarena
VERSION=${VERSION:-0.8.8}
SRC_VERSION=${SRC_VERSION:-0.8.8} # Keep this for future patches
BUILD=${BUILD:-1}
TAG=${TAG:-_SBo}
+PKGTYPE=${PKGTYPE:-tgz}
if [ -z "$ARCH" ]; then
case "$( uname -m )" in
@@ -36,7 +39,14 @@ if [ -z "$ARCH" ]; then
esac
fi
-CWD=$(pwd)
+# If the variable PRINT_PACKAGE_NAME is set, then this script will report what
+# the name of the created package would be, and then exit. This information
+# could be useful to other scripts.
+if [ ! -z "${PRINT_PACKAGE_NAME}" ]; then
+ echo "$PRGNAM-$VERSION-$ARCH-$BUILD$TAG.$PKGTYPE"
+ exit 0
+fi
+
TMP=${TMP:-/tmp/SBo}
PKG=$TMP/package-$PRGNAM
OUTPUT=${OUTPUT:-/tmp}
@@ -125,4 +135,4 @@ fi
chmod 755 $PKG/usr/games/openarena*
cd $PKG
-/sbin/makepkg -l y -c n $OUTPUT/$PRGNAM-$VERSION-$ARCH-$BUILD$TAG.${PKGTYPE:-tgz}
+/sbin/makepkg -l y -c n $OUTPUT/$PRGNAM-$VERSION-$ARCH-$BUILD$TAG.$PKGTYPE
diff --git a/games/openarena/openarena.info b/games/openarena/openarena.info
index 11e347a86f..3b4f06a222 100644
--- a/games/openarena/openarena.info
+++ b/games/openarena/openarena.info
@@ -5,6 +5,6 @@ DOWNLOAD="http://download.tuxfamily.net/openarena/rel/088/openarena-0.8.8.zip"
MD5SUM="9f353d96d7889c377349d692c3905e5b"
DOWNLOAD_x86_64=""
MD5SUM_x86_64=""
-REQUIRES="OpenAL"
+REQUIRES=""
MAINTAINER="Alan Ianson"
EMAIL="agianson@gmail.com"
diff --git a/games/openclonk/findreadline.patch b/games/openclonk/findreadline.patch
deleted file mode 100644
index d27bedd169..0000000000
--- a/games/openclonk/findreadline.patch
+++ /dev/null
@@ -1,42 +0,0 @@
---- openclonk-7.0/cmake/FindReadline.orig.cmake 2016-02-15 06:17:40.060057466 +0200
-+++ openclonk-7.0/cmake/FindReadline.cmake 2016-02-15 06:20:18.585067004 +0200
-@@ -1,6 +1,6 @@
- # OpenClonk, http://www.openclonk.org
- #
--# Copyright (c) 2011-2013, The OpenClonk Team and contributors
-+# Copyright (c) 2011-2016, The OpenClonk Team and contributors
- #
- # Distributed under the terms of the ISC license; see accompanying file
- # "COPYING" for details.
-@@ -26,6 +26,14 @@
-
- FIND_PATH(READLINE_INCLUDE_DIR readline.h PATH_SUFFIXES readline)
-
-+# Unmodified readline depends on symbols from termcap without explicitly
-+# linking to it. Several distributions patch this to make it link against
-+# terminfo from ncurses or another termcap library, but some don't. To avoid
-+# having to run link tests, we'll just look for and use any termcap providing
-+# library.
-+FIND_LIBRARY(TERMCAP_LIBRARY NAMES tinfo termcap ncursesw ncurses cursesw curses)
-+
-+
- SET(READLINE_NAMES readline libreadline)
- FIND_LIBRARY(READLINE_LIBRARY NAMES ${READLINE_NAMES} )
-
-@@ -35,10 +43,13 @@
- FIND_PACKAGE_HANDLE_STANDARD_ARGS(READLINE DEFAULT_MSG READLINE_LIBRARY READLINE_INCLUDE_DIR)
-
- IF(READLINE_FOUND)
-- SET( READLINE_LIBRARIES ${READLINE_LIBRARY} )
-+ if(TERMCAP_LIBRARY)
-+ set(READLINE_LIBRARIES ${READLINE_LIBRARY} ${TERMCAP_LIBRARY})
-+ else()
-+ set(READLINE_LIBRARIES ${READLINE_LIBRARY})
-+ endif()
- ELSE(READLINE_FOUND)
- SET( READLINE_LIBRARIES )
- ENDIF(READLINE_FOUND)
-
--MARK_AS_ADVANCED( READLINE_LIBRARY READLINE_INCLUDE_DIR )
--
-+MARK_AS_ADVANCED( READLINE_LIBRARY TERMINFO_LIBRARY READLINE_INCLUDE_DIR )
diff --git a/games/openclonk/openclonk.SlackBuild b/games/openclonk/openclonk.SlackBuild
index f62004104c..cbb50438e3 100644
--- a/games/openclonk/openclonk.SlackBuild
+++ b/games/openclonk/openclonk.SlackBuild
@@ -1,8 +1,8 @@
-#!/bin/sh
+#!/bin/bash
# Slackware build script for openclonk
-# Copyright 2014-2016 Dimitris Zlatanidis Orestiada, Greece
+# Copyright 2014-2024 Dimitris Zlatanidis Orestiada, Greece
# All rights reserved.
#
# Redistribution and use of this script, with or without modification, is
@@ -22,10 +22,13 @@
# OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF THIS SOFTWARE, EVEN IF
# ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
+cd $(dirname $0) ; CWD=$(pwd)
+
PRGNAM=openclonk
-VERSION=${VERSION:-7.0}
+VERSION=${VERSION:-8.1}
BUILD=${BUILD:-1}
TAG=${TAG:-_SBo}
+PKGTYPE=${PKGTYPE:-tgz}
if [ -z "$ARCH" ]; then
case "$( uname -m )" in
@@ -35,7 +38,11 @@ if [ -z "$ARCH" ]; then
esac
fi
-CWD=$(pwd)
+if [ ! -z "${PRINT_PACKAGE_NAME}" ]; then
+ echo "$PRGNAM-$VERSION-$ARCH-$BUILD$TAG.$PKGTYPE"
+ exit 0
+fi
+
TMP=${TMP:-/tmp/SBo}
PKG=$TMP/package-$PRGNAM
OUTPUT=${OUTPUT:-/tmp}
@@ -60,16 +67,21 @@ rm -rf $PKG
mkdir -p $TMP $PKG $OUTPUT
cd $TMP
rm -rf $PRGNAM-$VERSION
-tar xvf $CWD/$PRGNAM-$VERSION.tar.gz || tar xvf $CWD/v$VERSION.tar.gz
+tar xvf $CWD/$PRGNAM-$VERSION.tar.gz
cd $PRGNAM-$VERSION
chown -R root:root .
find -L . \
\( -perm 777 -o -perm 775 -o -perm 750 -o -perm 711 -o -perm 555 \
- -o -perm 511 \) -exec chmod 755 {} \; -o \
+ -o -perm 511 \) -exec chmod 755 {} \+ -o \
\( -perm 666 -o -perm 664 -o -perm 640 -o -perm 600 -o -perm 444 \
- -o -perm 440 -o -perm 400 \) -exec chmod 644 {} \;
+ -o -perm 440 -o -perm 400 \) -exec chmod 644 {} \+
-patch -p1 < $CWD/findreadline.patch
+sed -i '1i#include <limits>' \
+ src/script/C4AulParse.cpp \
+ src/editor/C4EditCursor.cpp \
+ src/gui/C4ScriptGuiWindow.cpp \
+ src/object/C4Object.cpp \
+ src/editor/C4ConsoleQtPropListViewer.cpp
mkdir -p build
cd build
@@ -95,4 +107,4 @@ cat $CWD/slack-desc > $PKG/install/slack-desc
cat $CWD/doinst.sh > $PKG/install/doinst.sh
cd $PKG
-/sbin/makepkg -l y -c n $OUTPUT/$PRGNAM-$VERSION-$ARCH-$BUILD$TAG.${PKGTYPE:-tgz}
+/sbin/makepkg -l y -c n $OUTPUT/$PRGNAM-$VERSION-$ARCH-$BUILD$TAG.$PKGTYPE
diff --git a/games/openclonk/openclonk.info b/games/openclonk/openclonk.info
index c25d756ff7..dcfa5ad45e 100644
--- a/games/openclonk/openclonk.info
+++ b/games/openclonk/openclonk.info
@@ -1,10 +1,10 @@
PRGNAM="openclonk"
-VERSION="7.0"
+VERSION="8.1"
HOMEPAGE="http://www.openclonk.org/"
-DOWNLOAD="https://github.com/openclonk/openclonk/archive/v7.0.tar.gz"
-MD5SUM="ea3a4bbacb57fbd0ec6ac568b670132d"
+DOWNLOAD="https://github.com/openclonk/openclonk/archive/v8.1/openclonk-8.1.tar.gz"
+MD5SUM="7b05d434e070257beb62e908557c1d0e"
DOWNLOAD_x86_64=""
MD5SUM_x86_64=""
-REQUIRES="freealut gtksourceview3 libupnp"
+REQUIRES="freealut miniupnpc"
MAINTAINER="Dimitris Zlatanidis"
-EMAIL="d.zlatanidis@gmail.com"
+EMAIL="dslackw@gmail.com"
diff --git a/games/opendune/README b/games/opendune/README
index 06f584319b..cd3469eeac 100644
--- a/games/opendune/README
+++ b/games/opendune/README
@@ -14,16 +14,23 @@ data files. Copy or symlink the .PAK files from the original game to
"/usr/share/games/opendune/data". The filenames can be uppercase or
lowercase.
-If you're building a package for a very old x86 system (that doesn't
-support MMX), on a newer system (that does support MMX), set MMX=no in
-the script's environment. If you're building on the same system you'll
-install the package on, you don't have to worry about this (MMX will
-be autodetected).
+Note: the first time you run opendune, it'll show the intro movie,
+with no way to skip it. Be patient.
-Optional dependencies:
+Optional dependencies: TiMidity++ and eawpats. Install these to hear
+the in-game music.
-If SDL2 and SDL2_image are installed, opendune will use them rather than
-SDL 1. To avoid this (to always build with SDL 1), set SDL2=no in the
-script's environment.
+Build options:
-To hear the in-game music, install TiMidity++ and eawpats.
+PULSE: if you don't want to use PulseAudio for the sound, export
+PULSE=no in the script's environment. This will use plain ALSA for
+the sound.
+
+SDL2: opendune is built with SDL2 by default. If you prefer SDL1 for
+some reason, export SDL2=no in the script's environment.
+
+MMX: If you're building a package for a very old x86 system (that
+doesn't support MMX), on a newer system (that does support MMX), set
+MMX=no in the script's environment. If you're building on the same
+system you'll install the package on, you don't have to worry about
+this (MMX will be autodetected).
diff --git a/games/opendune/gcc10fix.diff b/games/opendune/gcc10fix.diff
new file mode 100644
index 0000000000..a5878852f6
--- /dev/null
+++ b/games/opendune/gcc10fix.diff
@@ -0,0 +1,27 @@
+diff --git a/config.lib b/config.lib
+index 7824dfc2..757bda4a 100644
+--- a/config.lib
++++ b/config.lib
+@@ -605,7 +605,7 @@ make_compiler_cflags() {
+
+ if [ `basename $1 | cut -c 1-3` = "icc" ]; then
+ # Enable some things only for certain ICC versions
+- cc_version=`$1 -dumpversion | cut -c 1-4 | sed s@\\\.@@g`
++ cc_version=`$1 -dumpversion | cut -d. -f 1-2 | sed s@\\\.@@g`
+
+ flags="$flags -rdynamic"
+ ldflags="$ldflags -rdynamic"
+@@ -736,8 +736,11 @@ make_compiler_cflags() {
+ ldflags="$ldflags -rdynamic"
+ else
+ # Enable some things only for certain GCC versions
+- cc_version=`$1 -dumpversion | cut -c 1,3`
+- if [ $(echo -n "$cc_version" | wc -c) -eq 1 ] ; then
++ cc_version=`$1 -dumpversion | cut -d. -f 1-2`
++ if echo "$cc_version" | grep -q '\.' ; then
++ # remove the dot
++ cc_version=`echo "$cc_version" | sed s@\\\.@@g`
++ else
+ # add a 0 if the version had only one digit
+ cc_version="${cc_version}0"
+ fi
diff --git a/games/opendune/opendune.SlackBuild b/games/opendune/opendune.SlackBuild
index a228596352..0605b301f8 100644
--- a/games/opendune/opendune.SlackBuild
+++ b/games/opendune/opendune.SlackBuild
@@ -1,19 +1,25 @@
-#!/bin/sh
+#!/bin/bash
# Slackware build script for opendune
-# Written by B. Watson (yalhcru@gmail.com)
+# Written by B. Watson (urchlay@slackware.uk)
# Licensed under the WTFPL. See http://www.wtfpl.net/txt/copying/ for details.
+# 20211026 bkw: BUILD=2
+# - fix build on -current
+# - document PULSE=no option
# 20180612 bkw: update for v0.9, script can no longer build 0.8
# 20170531 bkw: BUILD=2, fix build on x86
# 20170302 bkw: use long-format github URL
+cd $(dirname $0) ; CWD=$(pwd)
+
PRGNAM=opendune
VERSION=${VERSION:-0.9}
-BUILD=${BUILD:-1}
+BUILD=${BUILD:-2}
TAG=${TAG:-_SBo}
+PKGTYPE=${PKGTYPE:-tgz}
if [ -z "$ARCH" ]; then
case "$( uname -m )" in
@@ -23,7 +29,11 @@ if [ -z "$ARCH" ]; then
esac
fi
-CWD=$(pwd)
+if [ ! -z "${PRINT_PACKAGE_NAME}" ]; then
+ echo "$PRGNAM-$VERSION-$ARCH-$BUILD$TAG.$PKGTYPE"
+ exit 0
+fi
+
TMP=${TMP:-/tmp/SBo}
PKG=$TMP/package-$PRGNAM
OUTPUT=${OUTPUT:-/tmp}
@@ -55,11 +65,12 @@ rm -rf $SRCNAM-$VERSION
tar xvf $CWD/$SRCNAM-$VERSION.tar.gz
cd $SRCNAM-$VERSION
chown -R root:root .
-find -L . \
- \( -perm 777 -o -perm 775 -o -perm 750 -o -perm 711 -o -perm 555 \
- -o -perm 511 \) -exec chmod 755 {} \; -o \
- \( -perm 666 -o -perm 664 -o -perm 640 -o -perm 600 -o -perm 444 \
- -o -perm 440 -o -perm 400 \) -exec chmod 644 {} \;
+find -L . -perm /111 -a \! -perm 755 -a -exec chmod 755 {} \+ -o \
+ \! -perm /111 -a \! -perm 644 -a -exec chmod 644 {} \+
+
+# 20211026 bkw: patch from upstream git, fixes gcc version detection
+# for versions >= 10.x.
+patch -p1 < $CWD/gcc10fix.diff
# 20170531 bkw: upstream uses #if defined(__i386__) to test for MMX,
# which is wrong (should be checking __MMX__ instead). This only affects
@@ -91,8 +102,10 @@ sed -i "/\"data\//s,data,/usr/share/games/$PRGNAM," src/inifile.c
# Allow building with ALSA instead of pulseaudio. There's no way to switch
# between ALSA and Pulse at runtime, and many users prefer to avoid Pulse.
+WITHPULSE="with"
if [ "${PULSE:-yes}" = "no" -o ! -x /usr/bin/pulseaudio ]; then
PULSEOPT="--without-pulse"
+ WITHPULSE="without"
fi
# The configure script autodetects SDL 2, but it doesn't check for
@@ -100,13 +113,13 @@ fi
# SDL2 but not SDL2_image, the build will fail. Fix:
if [ "${SDL2:-yes}" = "no" ]; then
SDLOPT="--without-sdl2"
- SDLVER=1
+ SDLVER=1.2
elif pkg-config --exists sdl2 && pkg-config --exists SDL2_image; then
SDLOPT="--with-sdl2"
- SDLVER=2
+ SDLVER=2.0
else
SDLOPT="--without-sdl2"
- SDLVER=1
+ SDLVER=1.2
fi
# N.B. non-standard (non-autoconf) configure options here!
@@ -144,8 +157,11 @@ cat $CWD/$PRGNAM.desktop > $PKG/usr/share/applications/$PRGNAM.desktop
cat $CWD/$PRGNAM.SlackBuild > $PKG/usr/doc/$PRGNAM-$VERSION/$PRGNAM.SlackBuild
mkdir -p $PKG/install
-sed "s,@S@,$SDLVER," $CWD/slack-desc > $PKG/install/slack-desc
+sed -e "s,@S@,$SDLVER," \
+ -e "s,@P@,$WITHPULSE," \
+ $CWD/slack-desc \
+ > $PKG/install/slack-desc
cat $CWD/doinst.sh > $PKG/install/doinst.sh
cd $PKG
-/sbin/makepkg -l y -c n $OUTPUT/$PRGNAM-$VERSION-$ARCH-$BUILD$TAG.${PKGTYPE:-tgz}
+/sbin/makepkg -l y -c n $OUTPUT/$PRGNAM-$VERSION-$ARCH-$BUILD$TAG.$PKGTYPE
diff --git a/games/opendune/opendune.desktop b/games/opendune/opendune.desktop
index 3c6b0ee0d6..d44b3af276 100644
--- a/games/opendune/opendune.desktop
+++ b/games/opendune/opendune.desktop
@@ -1,7 +1,7 @@
[Desktop Entry]
Name=OpenDUNE
Comment=Dune II remake
-Exec=opendune
+Exec=/usr/games/opendune
Icon=opendune
Type=Application
Categories=Game;StrategyGame;
diff --git a/games/opendune/opendune.info b/games/opendune/opendune.info
index 7c44a39031..7176e0b06c 100644
--- a/games/opendune/opendune.info
+++ b/games/opendune/opendune.info
@@ -7,4 +7,4 @@ DOWNLOAD_x86_64=""
MD5SUM_x86_64=""
REQUIRES=""
MAINTAINER="B. Watson"
-EMAIL="yalhcru@gmail.com"
+EMAIL="urchlay@slackware.uk"
diff --git a/games/opendune/slack-desc b/games/opendune/slack-desc
index cc4f4ffeb5..8ed8098e27 100644
--- a/games/opendune/slack-desc
+++ b/games/opendune/slack-desc
@@ -14,6 +14,6 @@ opendune: Entertainment. It attempts to re-create the original game and apply
opendune: modern technology to it to allow it to be run natively on most
opendune: operating systems.
opendune:
-opendune: This package was built with SDL @S@.
+opendune: This package was built with SDL @S@ and @P@ PulseAudio.
opendune:
opendune:
diff --git a/games/openjazz/README b/games/openjazz/README
index 9e3763f427..02c2c8bd0a 100644
--- a/games/openjazz/README
+++ b/games/openjazz/README
@@ -1,3 +1,5 @@
+openjazz (engine for Jazz Jackrabbit games)
+
OpenJazz is a free, open-source version of the classic Jazz Jackrabbit
games. OpenJazz can be compiled on a wide range of operating systems,
including Windows 98/Me/XP and Linux. OpenJazz requires the files
diff --git a/games/openjazz/doinst.sh b/games/openjazz/doinst.sh
index 4e8ba7071d..3e5691a052 100644
--- a/games/openjazz/doinst.sh
+++ b/games/openjazz/doinst.sh
@@ -2,3 +2,8 @@ if [ -x /usr/bin/update-desktop-database ]; then
/usr/bin/update-desktop-database -q usr/share/applications >/dev/null 2>&1
fi
+if [ -e usr/share/icons/hicolor/icon-theme.cache ]; then
+ if [ -x /usr/bin/gtk-update-icon-cache ]; then
+ /usr/bin/gtk-update-icon-cache usr/share/icons/hicolor >/dev/null 2>&1
+ fi
+fi
diff --git a/games/openjazz/openjazz-shareware.desktop b/games/openjazz/openjazz-shareware.desktop
index d32a47921d..6e1a330639 100644
--- a/games/openjazz/openjazz-shareware.desktop
+++ b/games/openjazz/openjazz-shareware.desktop
@@ -1,7 +1,7 @@
[Desktop Entry]
-Name=Jazz Jackrabbit (shareware)
-Comment=Classic DOS game (OpenJazz engine)
-Exec=openjazz
+Name=Jazz Jackrabbit Shareware
+Comment=Classic MS-DOS platform game (OpenJazz engine)
+Exec=/usr/games/openjazz-shareware
Icon=openjazz-shareware
Terminal=false
Type=Application
diff --git a/games/openjazz/openjazz.6 b/games/openjazz/openjazz.6
index 21d4515242..5e6688a5aa 100644
--- a/games/openjazz/openjazz.6
+++ b/games/openjazz/openjazz.6
@@ -1,4 +1,4 @@
-.\" Automatically generated by Pod::Man 2.27 (Pod::Simple 3.28)
+.\" Automatically generated by Pod::Man 4.14 (Pod::Simple 3.42)
.\"
.\" Standard preamble:
.\" ========================================================================
@@ -46,7 +46,7 @@
.ie \n(.g .ds Aq \(aq
.el .ds Aq '
.\"
-.\" If the F register is turned on, we'll generate index entries on stderr for
+.\" If the F register is >0, we'll generate index entries on stderr for
.\" titles (.TH), headers (.SH), subsections (.SS), items (.Ip), and index
.\" entries marked with X<> in POD. Of course, you'll have to process the
.\" output yourself in some meaningful fashion.
@@ -56,12 +56,12 @@
..
.nr rF 0
.if \n(.g .if rF .nr rF 1
-.if (\n(rF:(\n(.g==0)) \{
-. if \nF \{
+.if (\n(rF:(\n(.g==0)) \{\
+. if \nF \{\
. de IX
. tm Index:\\$1\t\\n%\t"\\$2"
..
-. if !\nF==2 \{
+. if !\nF==2 \{\
. nr % 0
. nr F 2
. \}
@@ -133,7 +133,7 @@
.\" ========================================================================
.\"
.IX Title "OPENJAZZ 6"
-.TH OPENJAZZ 6 "2014-03-27" "160214" "SlackBuilds.org"
+.TH OPENJAZZ 6 "2021-10-27" "20190106" "SlackBuilds.org"
.\" For nroff, turn off justification. Always turn off hyphenation; it makes
.\" way too many mistakes in technical documents.
.if n .ad l
@@ -143,6 +143,8 @@ openjazz \- free/open\-source game engine for Jazz Jackrabbit
.SH "SYNOPSIS"
.IX Header "SYNOPSIS"
\&\fBopenjazz\fR \fI[\-f]\fR \fI[dir] ...\fR
+.PP
+\&\fBopenjazz-shareware\fR \fI\-f\fR
.SH "DESCRIPTION"
.IX Header "DESCRIPTION"
OpenJazz is a free, open-source version of the classic Jazz Jackrabbit(tm)
@@ -168,6 +170,14 @@ get confused: there's a \*(L"Holiday Hare 1998\*(R", which isn't supported
.PP
There is no support for saving/loading the game. Multiplayer
is supported, but not well tested.
+.PP
+\&\fBopenjazz-shareware\fR launches the shareware version of the
+game. It's just a wrapper script that executes \*(L"openjazz
+/usr/share/games/openjazz/shareware\*(R".
+.PP
+To play one of the retail games (listed above), copy its data files to
+a directory, then either run \fBopenjazz\fR from within that directory,
+or else run it with the full path to the directory as an argument.
.SH "OPTIONS"
.IX Header "OPTIONS"
\&\fB\-f\fR starts the game fullscreen. Any other option beginning with \- will
@@ -189,13 +199,14 @@ The search path for game data files includes, in order:
.PD
.PP
In addition, the file \fBopenjazz.000\fR (containing the OpenJazz logo,
-note the lowercase name) will be searched for in \fB/usr/share/openjazz\fR
+note the lowercase name) will be searched for in \fB/usr/share/games/openjazz\fR
after all other directories (so each separate game doesn't need its
own copy, when you've got multiple games installed).
.PP
-\&\fB\f(CB$HOME\fB/.openjazz/\fR stores user preferences and any custom levels
-downloaded from multiplayer servers. Will be created if it doesn't
-exist.
+\&\fB\f(CB$HOME\fB/.openjazz/\fR stores user preferences (\fBopenjazz.cfg\fR) and any
+custom levels downloaded from multiplayer servers. Will be created
+if it doesn't exist. \fBopenjazz.cfg\fR is not human-readable nor
+editable.
.SH "SEE ALSO"
.IX Header "SEE ALSO"
\&\fBhttp://www.alister.eu/jazz/oj/faq.php\fR
diff --git a/games/openjazz/openjazz.SlackBuild b/games/openjazz/openjazz.SlackBuild
index abe5bc02fe..f2111e974c 100644
--- a/games/openjazz/openjazz.SlackBuild
+++ b/games/openjazz/openjazz.SlackBuild
@@ -1,15 +1,25 @@
-#!/bin/sh
+#!/bin/bash
# Slackware build script for openjazz
-# Written by B. Watson (yalhcru@gmail.com)
+# Written by B. Watson (urchlay@slackware.uk)
# Licensed under the WTFPL. See http://www.wtfpl.net/txt/copying/ for details.
+# 20211026 bkw:
+# - update for v20190106. Can't build old versions.
+# - binary in /usr/games, share dir /usr/share/games/openjazz.
+# - update man page.
+# - install shareware docs as *.txt, convert to utf-8.
+# - recreate paths.diff for this version.
+
+cd $(dirname $0) ; CWD=$(pwd)
+
PRGNAM=openjazz
-VERSION=${VERSION:-160214}
+VERSION=${VERSION:-20190106}
BUILD=${BUILD:-1}
TAG=${TAG:-_SBo}
+PKGTYPE=${PKGTYPE:-tgz}
if [ -z "$ARCH" ]; then
case "$( uname -m )" in
@@ -19,7 +29,11 @@ if [ -z "$ARCH" ]; then
esac
fi
-CWD=$(pwd)
+if [ ! -z "${PRINT_PACKAGE_NAME}" ]; then
+ echo "$PRGNAM-$VERSION-$ARCH-$BUILD$TAG.$PKGTYPE"
+ exit 0
+fi
+
TMP=${TMP:-/tmp/SBo}
PKG=$TMP/package-$PRGNAM
OUTPUT=${OUTPUT:-/tmp}
@@ -40,26 +54,19 @@ fi
set -e
-SRCNAM=OpenJazz
-ZIPFILE=$SRCNAM-src-$VERSION.zip
-
rm -rf $PKG
mkdir -p $TMP $PKG $OUTPUT
cd $TMP
rm -rf $PRGNAM-$VERSION
-mkdir -p $PRGNAM-$VERSION
+tar xvf $CWD/$PRGNAM-$VERSION.tar.xz
cd $PRGNAM-$VERSION
-unzip $CWD/$ZIPFILE
chown -R root:root .
-find -L . \
- \( -perm 777 -o -perm 775 -o -perm 750 -o -perm 711 -o -perm 555 \
- -o -perm 511 \) -exec chmod 755 {} \; -o \
- \( -perm 666 -o -perm 664 -o -perm 640 -o -perm 600 -o -perm 444 \
- -o -perm 440 -o -perm 400 \) -exec chmod 644 {} \;
+find -L . -perm /111 -a \! -perm 755 -a -exec chmod 755 {} \+ -o \
+ \! -perm /111 -a \! -perm 644 -a -exec chmod 644 {} \+
# Patch does 4 things:
-# - Always look for openjazz.000 in /usr/share/openjazz. Saves the user
+# - Always look for openjazz.000 in /usr/share/games/openjazz. Saves the user
# from having to keep copies or symlinks of it in every game dir.
# - Writes config file to user's homedir, not current dir.
@@ -86,6 +93,7 @@ CFLAGS="$SLKCFLAGS" \
CXXFLAGS="$SLKCFLAGS" \
./configure \
--prefix=/usr \
+ --bindir=/usr/games/ \
--libdir=/usr/lib${LIBDIRSUFFIX} \
--sysconfdir=/etc \
--localstatedir=/var \
@@ -96,32 +104,50 @@ CXXFLAGS="$SLKCFLAGS" \
make
make install-strip DESTDIR=$PKG
-# icon came from windows jazz jackrabbit CD, converted with icotool
+# grr.
+mv $PKG/usr/games/OpenJazz $PKG/usr/games/$PRGNAM
+mkdir -p $PKG/usr/share/games
+mv $PKG/usr/share/$PRGNAM $PKG/usr/share/games/$PRGNAM
+
+# 20211026 bkw: upstream's .desktop is useless.
+rm -f $PKG/usr/share/applications/*.desktop
+
mkdir -p $PKG/usr/share/pixmaps
-cat $CWD/$PRGNAM.png > $PKG/usr/share/pixmaps/$PRGNAM.png
+ln -s ../icons/hicolor/48x48/apps/OpenJazz.png $PKG/usr/share/pixmaps/OpenJazz.png
mkdir -p $PKG/usr/doc/$PRGNAM-$VERSION/shareware \
- $PKG/usr/share/$PRGNAM/shareware
+ $PKG/usr/share/games/$PRGNAM/shareware
-cd $PKG/usr/share/$PRGNAM/shareware
+# shareware data. the *.DOC files are renamed to .txt to avoid dumb
+# desktop environments thinking they're ms-word docs. ORDER_DE and
+# ORDER_UK are non-ASCII, convert to Unicode and UTF-8.
+cd $PKG/usr/share/games/$PRGNAM/shareware
unzip $CWD/jjrabbit.zip
for i in *.DOC; do
- sed 's,\r,,g' $i > $PKG/usr/doc/$PRGNAM-$VERSION/shareware/$i
+ j=$( basename $i .DOC )
+ dest=$PKG/usr/doc/$PRGNAM-$VERSION/shareware/$j.txt
+ sed 's,\r,,g' $i | iconv -f cp437 -t utf-8 > $dest
done
rm -f *.EXE *.DIZ *.DOC *.PIF
cd -
-# wrapper script
+# shareware wrapper script
mkdir -p $PKG/usr/games
cat <<EOF >$PKG/usr/games/$PRGNAM-shareware
#!/bin/sh
-exec $PRGNAM /usr/share/$PRGNAM/shareware "\$@"
+exec $PRGNAM /usr/share/games/$PRGNAM/shareware "\$@"
EOF
chmod 755 $PKG/usr/games/$PRGNAM-shareware
+# shareware icon came from windows jazz jackrabbit CD, converted with icotool
+cat $CWD/$PRGNAM.png > $PKG/usr/share/icons/hicolor/48x48/apps/$PRGNAM-shareware.png
+ln -s ../icons/hicolor/48x48/apps/$PRGNAM-shareware.png \
+ $PKG/usr/share/pixmaps/$PRGNAM-shareware.png
+
# man page written for this slackbuild
mkdir -p $PKG/usr/man/man6
gzip -9c < $CWD/$PRGNAM.6 > $PKG/usr/man/man6/$PRGNAM.6.gz
+ln -s $PRGNAM.6.gz $PKG/usr/man/man6/$PRGNAM-shareware.6.gz
mkdir -p $PKG/usr/share/applications
cat $CWD/$PRGNAM-shareware.desktop \
@@ -130,6 +156,7 @@ cat $CWD/$PRGNAM-shareware.desktop \
for i in *.txt; do
sed 's,\r,,g' $i > $PKG/usr/doc/$PRGNAM-$VERSION/$i
done
+cp -a README* $PKG/usr/doc/$PRGNAM-$VERSION
cat $CWD/$PRGNAM.SlackBuild > $PKG/usr/doc/$PRGNAM-$VERSION/$PRGNAM.SlackBuild
mkdir -p $PKG/install
@@ -137,4 +164,4 @@ cat $CWD/slack-desc > $PKG/install/slack-desc
cat $CWD/doinst.sh > $PKG/install/doinst.sh
cd $PKG
-/sbin/makepkg -l y -c n $OUTPUT/$PRGNAM-$VERSION-$ARCH-$BUILD$TAG.${PKGTYPE:-tgz}
+/sbin/makepkg -l y -c n $OUTPUT/$PRGNAM-$VERSION-$ARCH-$BUILD$TAG.$PKGTYPE
diff --git a/games/openjazz/openjazz.info b/games/openjazz/openjazz.info
index b83569a91e..bbd262cb69 100644
--- a/games/openjazz/openjazz.info
+++ b/games/openjazz/openjazz.info
@@ -1,12 +1,12 @@
PRGNAM="openjazz"
-VERSION="160214"
+VERSION="20190106"
HOMEPAGE="http://www.alister.eu/jazz/oj/"
-DOWNLOAD="http://ponce.cc/slackware/sources/repo/OpenJazz-src-160214.zip \
+DOWNLOAD="https://github.com/AlisterT/openjazz/releases/download/20190106/openjazz-20190106.tar.xz \
https://slackware.uk/~urchlay/src/jjrabbit.zip"
-MD5SUM="a570ae8b148a8b0fd7a3a121289a4721 \
+MD5SUM="a5ba8d68ff37007f337705780aad7309 \
48bc5ae9ac3d0bb3a45a8262f68bf78c"
DOWNLOAD_x86_64=""
MD5SUM_x86_64=""
REQUIRES="libmodplug"
MAINTAINER="B. Watson"
-EMAIL="yalhcru@gmail.com"
+EMAIL="urchlay@slackware.uk"
diff --git a/games/openjazz/openjazz.pod b/games/openjazz/openjazz.pod
index cce21dcba4..b2ae3bd6fc 100644
--- a/games/openjazz/openjazz.pod
+++ b/games/openjazz/openjazz.pod
@@ -1,5 +1,5 @@
# pod source for openjazz man page
-# pod2man -s6 -r160214 --stderr -cSlackBuilds.org openjazz.pod > openjazz.6
+# pod2man -s6 -r20190106 --stderr -cSlackBuilds.org openjazz.pod > openjazz.6
=pod
@@ -11,6 +11,8 @@ B<openjazz> - free/open-source game engine for Jazz Jackrabbit
B<openjazz> I<[-f]> I<[dir] ...>
+B<openjazz-shareware> I<-f>
+
=head1 DESCRIPTION
OpenJazz is a free, open-source version of the classic Jazz Jackrabbit(tm)
@@ -39,6 +41,14 @@ get confused: there's a "Holiday Hare 1998", which isn't supported
There is no support for saving/loading the game. Multiplayer
is supported, but not well tested.
+B<openjazz-shareware> launches the shareware version of the
+game. It's just a wrapper script that executes "openjazz
+/usr/share/games/openjazz/shareware".
+
+To play one of the retail games (listed above), copy its data files to
+a directory, then either run B<openjazz> from within that directory,
+or else run it with the full path to the directory as an argument.
+
=head1 OPTIONS
B<-f> starts the game fullscreen. Any other option beginning with - will
@@ -62,13 +72,14 @@ The search path for game data files includes, in order:
=back
In addition, the file B<openjazz.000> (containing the OpenJazz logo,
-note the lowercase name) will be searched for in B</usr/share/openjazz>
+note the lowercase name) will be searched for in B</usr/share/games/openjazz>
after all other directories (so each separate game doesn't need its
own copy, when you've got multiple games installed).
-B<$HOME/.openjazz/> stores user preferences and any custom levels
-downloaded from multiplayer servers. Will be created if it doesn't
-exist.
+B<$HOME/.openjazz/> stores user preferences (B<openjazz.cfg>) and any
+custom levels downloaded from multiplayer servers. Will be created
+if it doesn't exist. B<openjazz.cfg> is not human-readable nor
+editable.
=head1 SEE ALSO
diff --git a/games/openjazz/paths.diff b/games/openjazz/paths.diff
index 96a3319381..e24b46988b 100644
--- a/games/openjazz/paths.diff
+++ b/games/openjazz/paths.diff
@@ -1,132 +1,106 @@
-diff -Naur orig/src/io/file.cpp patched/src/io/file.cpp
---- orig/src/io/file.cpp 2014-02-15 22:14:10.000000000 -0500
-+++ patched/src/io/file.cpp 2014-03-27 01:48:27.000000000 -0400
-@@ -32,6 +32,7 @@
- #include "io/gfx/video.h"
- #include "util.h"
-
-+#include <stdlib.h>
- #include <string.h>
- #include <zlib.h>
-
-@@ -43,6 +44,16 @@
+diff -Naur openjazz-20190106/src/io/file.cpp openjazz-20190106.patched/src/io/file.cpp
+--- openjazz-20190106/src/io/file.cpp 2018-06-18 17:54:50.791926735 -0400
++++ openjazz-20190106.patched/src/io/file.cpp 2021-10-26 19:57:37.051448527 -0400
+@@ -48,6 +48,16 @@
* @param write Whether or not the file can be written to
- */
- File::File (const char* name, bool write) {
+ */
+ File::File (const char* name, bool write) {
+#ifdef HOMEDIR
-+ if(write) {
-+ char *writepath = createString(getenv("HOME"), "/.openjazz/");
-+ bool ok = open(writepath, name, write);
-+ delete [] writepath;
-+ if(ok) return;
-+ log("Could not open file for writing in $HOME", name);
-+ throw E_FILE;
-+ }
++ if(write) {
++ char *writepath = createString(getenv("HOME"), "/.openjazz/");
++ bool ok = open(writepath, name, write);
++ delete [] writepath;
++ if(ok) return;
++ log("Could not open file for writing in $HOME", name);
++ throw E_FILE;
++ }
+#endif
-
- Path* path;
-
-@@ -55,7 +66,7 @@
-
- }
-
-- log("Could not open file", name);
-+ log("Could not find file in path", name);
-
- throw E_FILE;
-
-@@ -69,9 +80,7 @@
-
- fclose(file);
-
--#ifdef VERBOSE
- log("Closed file", filePath);
--#endif
-
- delete[] filePath;
-
-@@ -117,13 +126,13 @@
-
- if (file) {
-
--#ifdef VERBOSE
- log("Opened file", filePath);
--#endif
-
- return true;
-
-- }
-+ } else {
-+ log("Could not open file", filePath);
-+ }
-
- delete[] filePath;
-
-diff -Naur orig/src/io/sound.cpp patched/src/io/sound.cpp
---- orig/src/io/sound.cpp 2013-11-23 11:54:26.000000000 -0500
-+++ patched/src/io/sound.cpp 2014-03-27 01:47:03.000000000 -0400
+
+ Path* path;
+
+@@ -60,7 +70,7 @@
+
+ }
+
+- log("Could not open file", name);
++ log("Could not find file in path", name);
+
+ throw E_FILE;
+
+@@ -74,9 +84,7 @@
+
+ fclose(file);
+
+-#ifdef VERBOSE
+ log("Closed file", filePath);
+-#endif
+
+ delete[] filePath;
+
+diff -Naur openjazz-20190106/src/io/sound.cpp openjazz-20190106.patched/src/io/sound.cpp
+--- openjazz-20190106/src/io/sound.cpp 2018-10-08 05:17:30.504617277 -0400
++++ openjazz-20190106.patched/src/io/sound.cpp 2021-10-26 19:58:53.975443489 -0400
@@ -27,6 +27,8 @@
- */
-
-
+ */
+
+
+#include <ctype.h>
+#include <string.h>
- #include "file.h"
- #include "sound.h"
-
-@@ -203,7 +205,15 @@
-
- } catch (int e) {
-
-- return;
-+ char *upperName = strdup(fileName);
-+ for(char *ch = upperName; *ch; ++ch)
-+ *ch = toupper(*ch);
-+ try {
-+ file = new File(upperName, false);
-+ free(upperName);
-+ } catch(int e) {
-+ return;
-+ }
-
- }
-
-diff -Naur orig/src/main.cpp patched/src/main.cpp
---- orig/src/main.cpp 2014-02-16 10:59:02.000000000 -0500
-+++ patched/src/main.cpp 2014-03-27 01:51:17.000000000 -0400
-@@ -47,6 +47,8 @@
- #include "setup.h"
- #include "util.h"
-
-+#include <sys/stat.h>
-+#include <sys/types.h>
- #include <string.h>
-
- #if defined(CAANOO) || defined(WIZ) || defined(GP2X)
-@@ -174,7 +176,9 @@
- #ifdef WIN32
- firstPath = new Path(firstPath, createString(getenv("HOME"), "\\"));
- #else
-- firstPath = new Path(firstPath, createString(getenv("HOME"), "/."));
-+ char *homeSubDir = createString(getenv("HOME"), "/.openjazz/");
-+ mkdir(homeSubDir, 0700); /* ignore errors */
-+ firstPath = new Path(firstPath, homeSubDir);
- #endif
- #endif
-
-diff -Naur orig/src/menu/mainmenu.cpp patched/src/menu/mainmenu.cpp
---- orig/src/menu/mainmenu.cpp 2013-07-20 11:46:16.000000000 -0400
-+++ patched/src/menu/mainmenu.cpp 2014-03-27 01:47:03.000000000 -0400
+ #include "file.h"
+ #include "sound.h"
+
+@@ -280,7 +282,15 @@
+
+ } catch (int e) {
+
+- return;
++ char *upperName = strdup(fileName);
++ for(char *ch = upperName; *ch; ++ch)
++ *ch = toupper(*ch);
++ try {
++ file = new File(upperName, false);
++ free(upperName);
++ } catch(int e) {
++ return;
++ }
+
+ }
+
+diff -Naur openjazz-20190106/src/main.cpp openjazz-20190106.patched/src/main.cpp
+--- openjazz-20190106/src/main.cpp 2018-03-29 22:03:53.319965677 -0400
++++ openjazz-20190106.patched/src/main.cpp 2021-10-26 20:03:30.167425404 -0400
+@@ -31,6 +31,7 @@
+
+ #define EXTERN
+
++#include <sys/stat.h>
+ #include "game/game.h"
+ #include "io/controls.h"
+ #include "io/file.h"
+@@ -194,7 +195,9 @@
+ #ifdef _WIN32
+ firstPath = new Path(firstPath, createString(getenv("HOME"), "\\"));
+ #else
+- firstPath = new Path(firstPath, createString(getenv("HOME"), "/."));
++ char *homeSubDir = createString(getenv("HOME"), "/.openjazz/");
++ mkdir(homeSubDir, 0700); /* ignore errors */
++ firstPath = new Path(firstPath, homeSubDir);
+ #endif
+ #endif
+
+diff -Naur openjazz-20190106/src/menu/mainmenu.cpp openjazz-20190106.patched/src/menu/mainmenu.cpp
+--- openjazz-20190106/src/menu/mainmenu.cpp 2019-01-06 07:14:31.696191429 -0500
++++ openjazz-20190106.patched/src/menu/mainmenu.cpp 2021-10-26 20:04:32.023421353 -0400
@@ -58,7 +58,11 @@
} catch (int e) {
- throw e;
-+ try {
-+ file = new File("/usr/share/openjazz/" LOGO_FILE, false);
-+ } catch(int e) {
-+ throw e;
-+ }
++ try {
++ file = new File("/usr/share/games/openjazz/openjazz.000", false);
++ } catch(int e) {
++ throw e;
++ }
}
diff --git a/games/openlierox/doinst.sh b/games/openlierox/doinst.sh
index 5fb28930db..3e5691a052 100644
--- a/games/openlierox/doinst.sh
+++ b/games/openlierox/doinst.sh
@@ -1,3 +1,9 @@
if [ -x /usr/bin/update-desktop-database ]; then
/usr/bin/update-desktop-database -q usr/share/applications >/dev/null 2>&1
fi
+
+if [ -e usr/share/icons/hicolor/icon-theme.cache ]; then
+ if [ -x /usr/bin/gtk-update-icon-cache ]; then
+ /usr/bin/gtk-update-icon-cache usr/share/icons/hicolor >/dev/null 2>&1
+ fi
+fi
diff --git a/games/openlierox/git2tarxz.sh b/games/openlierox/git2tarxz.sh
new file mode 100644
index 0000000000..cdf33056a1
--- /dev/null
+++ b/games/openlierox/git2tarxz.sh
@@ -0,0 +1,52 @@
+#!/bin/sh
+
+# Create source tarball from git repo, with generated version
+# number.
+
+# Note that this script doesn't need to be run as root. It does
+# need to be able to write to the current directory it's run from.
+
+# Takes one optional argument, which is the commit or tag to create
+# a tarball of. With no arg, HEAD is used.
+
+# If you're using this as a template for another script, beware it
+# has openlierox-specific code! A bunch of windows/osx/ios specific
+# directories get deleted.
+
+PRGNAM=openlierox
+CLONE_URL=https://github.com/albertz/openlierox
+
+set -e
+
+GITDIR=$( mktemp -dt $PRGNAM.git.XXXXXX )
+rm -rf $GITDIR
+git clone --depth 1 $CLONE_URL $GITDIR
+
+CWD="$( pwd )"
+cd $GITDIR
+
+if [ "$1" != "" ]; then
+ git reset --hard "$1" || exit 1
+fi
+
+GIT_SHA=$( git rev-parse --short HEAD )
+
+DATE=$( git log --date=format:%Y%m%d --format=%cd | head -1 )
+
+VERSION=${DATE}_${GIT_SHA}
+
+rm -rf .git
+find . -name .gitignore -print0 | xargs -0 rm -f
+
+# 20220301 bkw: remove the stuff we don't need.
+rm -rf build libs/breakpad/src/*/{windows,mac,ios} tools/*/build \
+ tools/OLXDedServerWindowsService
+
+cd "$CWD"
+rm -rf $PRGNAM-$VERSION $PRGNAM-$VERSION.tar.xz
+mv $GITDIR $PRGNAM-$VERSION
+tar cvfJ $PRGNAM-$VERSION.tar.xz $PRGNAM-$VERSION
+
+echo
+echo "Created tarball: $PRGNAM-$VERSION.tar.xz"
+echo "VERSION=$VERSION"
diff --git a/games/openlierox/http_curl.patch b/games/openlierox/http_curl.patch
deleted file mode 100644
index c74fcd3d22..0000000000
--- a/games/openlierox/http_curl.patch
+++ /dev/null
@@ -1,20 +0,0 @@
---- openlierox-0.58_rc3/include/HTTP.original.h 2014-04-19 19:58:09.213990582 +0300
-+++ openlierox-0.58_rc3/include/HTTP.h 2014-04-21 13:45:11.485876525 +0300
-@@ -21,7 +21,6 @@
-
- #include <string>
- #include <curl/curl.h>
--#include <curl/types.h>
- #include <curl/easy.h>
-
- #include "Networking.h"
---- openlierox-0.58_rc3/src/common/HTTP.original.cpp 2014-04-19 20:48:13.255434896 +0300
-+++ openlierox-0.58_rc3/src/common/HTTP.cpp 2014-04-21 13:48:08.493663623 +0300
-@@ -25,7 +25,6 @@
- #include <stdlib.h>
- #endif
- #include <curl/curl.h>
--#include <curl/types.h>
- #include <curl/easy.h>
-
- #include "LieroX.h"
diff --git a/games/openlierox/openlierox.SlackBuild b/games/openlierox/openlierox.SlackBuild
index 352f4ce332..9d6f96de32 100644
--- a/games/openlierox/openlierox.SlackBuild
+++ b/games/openlierox/openlierox.SlackBuild
@@ -1,4 +1,4 @@
-#!/bin/sh
+#!/bin/bash
# Slackware build script for openlierox
@@ -22,11 +22,21 @@
# OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF THIS SOFTWARE, EVEN IF
# ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
+# 20220222 bkw: Modified by SlackBuilds.org:
+# - update for v20200424_d316c14a8 (old version won't build on 15.0).
+# - new-style icons.
+# - binary in /usr/games.
+# - put man page in right place (/usr/man/man6).
+# - remove HawkNL dependency: it's bundled in the source and built
+# statically by default. freealut really is required though.
+
+cd $(dirname $0) ; CWD=$(pwd)
+
PRGNAM=openlierox
-VERSION=${VERSION:-0.58_rc3}
-SRCVER=$(echo $VERSION | tr _ .)
+VERSION=${VERSION:-20200424_d316c14}
BUILD=${BUILD:-1}
TAG=${TAG:-_SBo}
+PKGTYPE=${PKGTYPE:-tgz}
if [ -z "$ARCH" ]; then
case "$( uname -m )" in
@@ -36,7 +46,11 @@ if [ -z "$ARCH" ]; then
esac
fi
-CWD=$(pwd)
+if [ ! -z "${PRINT_PACKAGE_NAME}" ]; then
+ echo "$PRGNAM-$VERSION-$ARCH-$BUILD$TAG.$PKGTYPE"
+ exit 0
+fi
+
TMP=${TMP:-/tmp/SBo}
PKG=$TMP/package-$PRGNAM
OUTPUT=${OUTPUT:-/tmp}
@@ -61,45 +75,58 @@ rm -rf $PKG
mkdir -p $TMP $PKG $OUTPUT
cd $TMP
rm -rf $PRGNAM-$VERSION
-tar xvf $CWD/$PRGNAM-$VERSION.tar.gz || tar xvf $CWD/$VERSION.tar.gz
+tar xvf $CWD/$PRGNAM-$VERSION.tar.xz
cd $PRGNAM-$VERSION
+rm -f ./libs/breakpad/autotools/compile # broken symlink
chown -R root:root .
find -L . \
\( -perm 777 -o -perm 775 -o -perm 750 -o -perm 711 -o -perm 555 \
- -o -perm 511 \) -exec chmod 755 {} \; -o \
+ -o -perm 511 \) -exec chmod 755 {} \+ -o \
\( -perm 666 -o -perm 664 -o -perm 640 -o -perm 600 -o -perm 444 \
- -o -perm 440 -o -perm 400 \) -exec chmod 644 {} \;
-
-# curl/types.h removed because not supported from new CURL versions
-patch -p1 < $CWD/http_curl.patch
+ -o -perm 440 -o -perm 400 \) -exec chmod 644 {} \+
+# 20220301 bkw: disable BFD. it breaks the build, and it's only used
+# for backtraces if the game crashes.
mkdir -p build
cd build
cmake . \
-DCMAKE_C_FLAGS:STRING="$SLKCFLAGS" \
-DCMAKE_CXX_FLAGS:STRING="$SLKCFLAGS" \
-DCMAKE_INSTALL_PREFIX=/usr \
- -DBREAKPAD=off \
+ -DBREAKPAD=OFF \
+ -DHASBFD=OFF \
-DCMAKE_BUILD_TYPE=Release ..
- make
+ make VERBOSE=1
cd ..
-find $PKG -print0 | xargs -0 file | grep -e "executable" -e "shared object" | grep ELF \
- | cut -f 1 -d : | xargs strip --strip-unneeded 2> /dev/null || true
-
-mkdir -p $PKG/usr/bin \
+mkdir -p $PKG/usr/games \
$PKG/usr/share/games/OpenLieroX
cp -rf share/gamedir/* $PKG/usr/share/games/OpenLieroX
-install -D -m0755 build/bin/openlierox $PKG/usr/bin/openlierox
+install -D -s -m0755 build/bin/openlierox $PKG/usr/games/openlierox
mkdir -p $PKG/usr/share/applications
-install -D -m644 share/$PRGNAM-$PRGNAM.desktop $PKG/usr/share/applications/$PRGNAM-$PRGNAM.desktop
+sed -e '/Exec=/s,=,=/usr/games/,' \
+ -e "/^Icon=/s,=.*,=$PRGNAM," \
+ < share/$PRGNAM-$PRGNAM.desktop \
+ > $PKG/usr/share/applications/$PRGNAM.desktop
+
+for i in share/*.png; do
+ px="$( echo $i | cut -d. -f2 )"
+ size=${px}x${px}
+ dir=$PKG/usr/share/icons/hicolor/$size/apps
+ mkdir -p $dir
+ cp -a $i $dir/$PRGNAM.png
+done
mkdir -p $PKG/usr/share/pixmaps
-install -D -m644 share/OpenLieroX.svg $PKG/usr/share/pixmaps/OpenLieroX.svg
+ln -s ../icons/hicolor/32x32/apps/$PRGNAM.png $PKG/usr/share/pixmaps/$PRGNAM.png
+
+mkdir -p $PKG/usr/man/man6
+gzip -9c < doc/$PRGNAM.6 > $PKG/usr/man/man6/$PRGNAM.6.gz
+rm -f doc/$PRGNAM.6
mkdir -p $PKG/usr/doc/$PRGNAM-$VERSION
-cp -a COPYING.LIB VERSION doc/* $PKG/usr/doc/$PRGNAM-$VERSION
+cp -a README.md COPYING.LIB VERSION doc/* $PKG/usr/doc/$PRGNAM-$VERSION
cat $CWD/$PRGNAM.SlackBuild > $PKG/usr/doc/$PRGNAM-$VERSION/$PRGNAM.SlackBuild
mkdir -p $PKG/install
@@ -107,4 +134,4 @@ cat $CWD/slack-desc > $PKG/install/slack-desc
cat $CWD/doinst.sh > $PKG/install/doinst.sh
cd $PKG
-/sbin/makepkg -l y -c n $OUTPUT/$PRGNAM-$VERSION-$ARCH-$BUILD$TAG.${PKGTYPE:-tgz}
+/sbin/makepkg -l y -c n $OUTPUT/$PRGNAM-$VERSION-$ARCH-$BUILD$TAG.$PKGTYPE
diff --git a/games/openlierox/openlierox.info b/games/openlierox/openlierox.info
index 44f5cb5814..86a6897bb3 100644
--- a/games/openlierox/openlierox.info
+++ b/games/openlierox/openlierox.info
@@ -1,10 +1,10 @@
PRGNAM="openlierox"
-VERSION="0.58_rc3"
+VERSION="20200424_d316c14"
HOMEPAGE="http://www.openlierox.net/"
-DOWNLOAD="https://github.com/albertz/openlierox/archive/0.58_rc3.tar.gz"
-MD5SUM="4ce050ca069b1ebe2fb720b3a1c2c760"
+DOWNLOAD="https://slackware.uk/~urchlay/src/openlierox-20200424_d316c14.tar.xz"
+MD5SUM="c1559d7f041fe2a94b41c62dff1d81d7"
DOWNLOAD_x86_64=""
MD5SUM_x86_64=""
-REQUIRES="HawkNL"
+REQUIRES="freealut"
MAINTAINER="Dimitris Zlatanidis"
EMAIL="d.zlatanidis@gmail.com"
diff --git a/games/openmortal/README b/games/openmortal/README
index 98eec54b70..ae3ca25280 100644
--- a/games/openmortal/README
+++ b/games/openmortal/README
@@ -1,6 +1,6 @@
openmortal (2D fighting game)
-Open Mortal is a parody of the once popular coin-up fighting game,
+Open Mortal is a parody of the once popular coin-op fighting game,
Mortal Kombat, for Windows and Linux. It is currently playable, has
16 playable characters, some more in the making. New characters can be
added, so be an Open Mortal actor today!
diff --git a/games/openmortal/doinst.sh b/games/openmortal/doinst.sh
index 5fb28930db..3e5691a052 100644
--- a/games/openmortal/doinst.sh
+++ b/games/openmortal/doinst.sh
@@ -1,3 +1,9 @@
if [ -x /usr/bin/update-desktop-database ]; then
/usr/bin/update-desktop-database -q usr/share/applications >/dev/null 2>&1
fi
+
+if [ -e usr/share/icons/hicolor/icon-theme.cache ]; then
+ if [ -x /usr/bin/gtk-update-icon-cache ]; then
+ /usr/bin/gtk-update-icon-cache usr/share/icons/hicolor >/dev/null 2>&1
+ fi
+fi
diff --git a/games/openmortal/openmortal.SlackBuild b/games/openmortal/openmortal.SlackBuild
index 1c467e60c4..a13e88a0af 100644
--- a/games/openmortal/openmortal.SlackBuild
+++ b/games/openmortal/openmortal.SlackBuild
@@ -1,15 +1,23 @@
-#!/bin/sh
+#!/bin/bash
# Slackware build script for openmortal
-# Written by B. Watson (yalhcru@gmail.com)
+# Written by B. Watson (urchlay@slackware.uk)
# Licensed under the WTFPL. See http://www.wtfpl.net/txt/copying/ for details.
+# 20211026 bkw: BUILD=2
+# - at some point, this quit working due to a perl upgrade. fix.
+# - new-style icons.
+# - /usr/games/openmortal => /usr/share/games/openmortal.
+
+cd $(dirname $0) ; CWD=$(pwd)
+
PRGNAM=openmortal
VERSION=${VERSION:-0.7}
-BUILD=${BUILD:-1}
+BUILD=${BUILD:-2}
TAG=${TAG:-_SBo}
+PKGTYPE=${PKGTYPE:-tgz}
if [ -z "$ARCH" ]; then
case "$( uname -m )" in
@@ -19,7 +27,11 @@ if [ -z "$ARCH" ]; then
esac
fi
-CWD=$(pwd)
+if [ ! -z "${PRINT_PACKAGE_NAME}" ]; then
+ echo "$PRGNAM-$VERSION-$ARCH-$BUILD$TAG.$PKGTYPE"
+ exit 0
+fi
+
TMP=${TMP:-/tmp/SBo}
PKG=$TMP/package-$PRGNAM
OUTPUT=${OUTPUT:-/tmp}
@@ -47,17 +59,19 @@ rm -rf $PRGNAM-$VERSION
tar xvf $CWD/$PRGNAM-$VERSION.tar.bz2
cd $PRGNAM-$VERSION
chown -R root:root .
-find -L . \
- \( -perm 777 -o -perm 775 -o -perm 750 -o -perm 711 -o -perm 555 \
- -o -perm 511 \) -exec chmod 755 {} \; -o \
- \( -perm 666 -o -perm 664 -o -perm 640 -o -perm 600 -o -perm 444 \
- -o -perm 440 -o -perm 400 \) -exec chmod 644 {} \;
+find -L . -perm /111 -a \! -perm 755 -a -exec chmod 755 {} \+ -o \
+ \! -perm /111 -a \! -perm 644 -a -exec chmod 644 {} \+
+
+# 20211026 bkw: this worked on 14.2 without this dirty hack...
+# Broke during -current cycle with some perl upgrade or another?
+sed -i '/srand(/aputenv("PERL5LIB=/usr/share/games/openmortal/script");' src/main.cpp
autoreconf -if
CFLAGS="$SLKCFLAGS" \
CXXFLAGS="$SLKCFLAGS -fpermissive" \
./configure \
--bindir=/usr/games \
+ --datadir=/usr/share/games \
--prefix=/usr \
--libdir=/usr/lib${LIBDIRSUFFIX} \
--sysconfdir=/etc \
@@ -73,8 +87,18 @@ mkdir -p $PKG/usr/doc/$PRGNAM-$VERSION
cp -a AUTHORS COPYING ChangeLog README TODO $PKG/usr/doc/$PRGNAM-$VERSION
cat $CWD/$PRGNAM.SlackBuild > $PKG/usr/doc/$PRGNAM-$VERSION/$PRGNAM.SlackBuild
+# there's a 32x32 icon as data/gfx/icon.png, but it's got some junk
+# pixels around the edges. this one was made by cutting the logo out
+# of data/gfx/Mortal-en.jpg, gives us a bigger version of the logo.
+for px in 16 32 48 64; do
+ size=${px}x${px}
+ dir=$PKG/usr/share/icons/hicolor/$size/apps
+ mkdir -p $dir
+ convert -resize $size! $CWD/$PRGNAM.png $dir/$PRGNAM.png
+done
+
mkdir -p $PKG/usr/share/pixmaps
-cat data/gfx/icon.png > $PKG/usr/share/pixmaps/$PRGNAM.png
+ln -s ../icons/hicolor/48x48/apps/$PRGNAM.png $PKG/usr/share/pixmaps/$PRGNAM.png
# .desktop from rpm.pbone.net openmortal-0.7-1.i386.rpm, edited to make
# it validate.
@@ -86,4 +110,4 @@ cat $CWD/slack-desc > $PKG/install/slack-desc
cat $CWD/doinst.sh > $PKG/install/doinst.sh
cd $PKG
-/sbin/makepkg -l y -c n $OUTPUT/$PRGNAM-$VERSION-$ARCH-$BUILD$TAG.${PKGTYPE:-tgz}
+/sbin/makepkg -l y -c n $OUTPUT/$PRGNAM-$VERSION-$ARCH-$BUILD$TAG.$PKGTYPE
diff --git a/games/openmortal/openmortal.info b/games/openmortal/openmortal.info
index 37625dadb1..77850d650e 100644
--- a/games/openmortal/openmortal.info
+++ b/games/openmortal/openmortal.info
@@ -1,10 +1,10 @@
PRGNAM="openmortal"
VERSION="0.7"
-HOMEPAGE="http://openmortal.sourceforge.net/"
-DOWNLOAD="http://downloads.sourceforge.net/project/openmortal/openmortal/0.7/openmortal-0.7.tar.bz2"
+HOMEPAGE="https://openmortal.sourceforge.net/"
+DOWNLOAD="https://downloads.sourceforge.net/project/openmortal/openmortal/0.7/openmortal-0.7.tar.bz2"
MD5SUM="95278382bb563906fce624d833a845cf"
DOWNLOAD_x86_64=""
MD5SUM_x86_64=""
REQUIRES=""
MAINTAINER="B. Watson"
-EMAIL="yalhcru@gmail.com"
+EMAIL="urchlay@slackware.uk"
diff --git a/games/openmortal/openmortal.png b/games/openmortal/openmortal.png
new file mode 100644
index 0000000000..2448ecab73
--- /dev/null
+++ b/games/openmortal/openmortal.png
Binary files differ
diff --git a/games/openmortal/slack-desc b/games/openmortal/slack-desc
index 6ec214c5f4..8c09851355 100644
--- a/games/openmortal/slack-desc
+++ b/games/openmortal/slack-desc
@@ -8,7 +8,7 @@
|-----handy-ruler------------------------------------------------------|
openmortal: openmortal (2D fighting game)
openmortal:
-openmortal: Open Mortal is a parody of the once popular coin-up fighting game,
+openmortal: Open Mortal is a parody of the once popular coin-op fighting game,
openmortal: Mortal Kombat, for Windows and Linux. It is currently playable,
openmortal: has 16 playable characters, some more in the making. New characters
openmortal: can be added, so be an Open Mortal actor today!
diff --git a/games/openmsx-catapult/openmsx-catapult.SlackBuild b/games/openmsx-catapult/openmsx-catapult.SlackBuild
index 9a7d6d39a8..8f9963f387 100644
--- a/games/openmsx-catapult/openmsx-catapult.SlackBuild
+++ b/games/openmsx-catapult/openmsx-catapult.SlackBuild
@@ -1,9 +1,9 @@
-#!/bin/sh
+#!/bin/bash
# Slackware build script for OpenMSX-Catapult
# Copyright 2013-2014 Erwin van Zanten, Dordrecht, The Netherlands
-# Copyright 2016-2019 Philip van der Hoeven, Almere, The Netherlands
+# Copyright 2016-2024 Philip van der Hoeven, Almere, The Netherlands
# All rights reserved.
#
# Redistribution and use of this script, with or without modification, is
@@ -23,10 +23,13 @@
# OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF THIS SOFTWARE, EVEN IF
# ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
+cd $(dirname $0) ; CWD=$(pwd)
+
PRGNAM=openmsx-catapult
-VERSION=${VERSION:-0.15.0}
+VERSION=${VERSION:-19.0}
BUILD=${BUILD:-1}
TAG=${TAG:-_SBo}
+PKGTYPE=${PKGTYPE:-tgz}
if [ -z "$ARCH" ]; then
case "$( uname -m )" in
@@ -36,7 +39,14 @@ if [ -z "$ARCH" ]; then
esac
fi
-CWD=$(pwd)
+# If the variable PRINT_PACKAGE_NAME is set, then this script will report what
+# the name of the created package would be, and then exit. This information
+# could be useful to other scripts.
+if [ ! -z "${PRINT_PACKAGE_NAME}" ]; then
+ echo "$PRGNAM-$VERSION-$ARCH-$BUILD$TAG.$PKGTYPE"
+ exit 0
+fi
+
TMP=${TMP:-/tmp/SBo}
PKG=$TMP/package-$PRGNAM
OUTPUT=${OUTPUT:-/tmp}
@@ -105,4 +115,4 @@ cat $CWD/slack-desc > $PKG/install/slack-desc
cat $CWD/doinst.sh > $PKG/install/doinst.sh
cd $PKG
-/sbin/makepkg -l y -c n $OUTPUT/$PRGNAM-$VERSION-$ARCH-$BUILD$TAG.${PKGTYPE:-tgz}
+/sbin/makepkg -l y -c n $OUTPUT/$PRGNAM-$VERSION-$ARCH-$BUILD$TAG.$PKGTYPE
diff --git a/games/openmsx-catapult/openmsx-catapult.info b/games/openmsx-catapult/openmsx-catapult.info
index ece3f436eb..c47cbdf351 100644
--- a/games/openmsx-catapult/openmsx-catapult.info
+++ b/games/openmsx-catapult/openmsx-catapult.info
@@ -1,10 +1,10 @@
PRGNAM="openmsx-catapult"
-VERSION="0.15.0"
+VERSION="19.0"
HOMEPAGE="http://openmsx.org/"
-DOWNLOAD="https://github.com/openMSX/openMSX/releases/download/RELEASE_0_15_0/openmsx-catapult-0.15.0.tar.gz"
-MD5SUM="ea657b944bed97e3ec6e4513955905db"
+DOWNLOAD="https://github.com/openMSX/openMSX/releases/download/RELEASE_19_0/openmsx-catapult-19.0.tar.gz"
+MD5SUM="e64b67e2a866f4173ee0d6ef8f687154"
DOWNLOAD_x86_64=""
MD5SUM_x86_64=""
-REQUIRES="openmsx wxPython"
+REQUIRES="openmsx wxGTK3"
MAINTAINER="Philip van der Hoeven"
EMAIL="philip@vd-hoeven.nl"
diff --git a/games/openmsx-debugger/openmsx-debugger.SlackBuild b/games/openmsx-debugger/openmsx-debugger.SlackBuild
index 92332cce95..8571cdf66c 100644
--- a/games/openmsx-debugger/openmsx-debugger.SlackBuild
+++ b/games/openmsx-debugger/openmsx-debugger.SlackBuild
@@ -1,8 +1,8 @@
-#!/bin/sh
+#!/bin/bash
# Slackware build script for openmsx-debugger
-# Copyright 2016-2019 Philip van der Hoeven, Almere, The Netherlands
+# Copyright 2016-2024 Philip van der Hoeven, Almere, The Netherlands
# All rights reserved.
#
# Redistribution and use of this script, with or without modification, is
@@ -22,12 +22,15 @@
# OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF THIS SOFTWARE, EVEN IF
# ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
+cd $(dirname $0) ; CWD=$(pwd)
+
PRGNAM=openmsx-debugger
SRCNAM=debugger
-VERSION=${VERSION:-20181202}
-SRCVERSION=789ef3cafa1837965373c2244d6a4541de863d5c
+VERSION=${VERSION:-20230717}
+SRCVERSION=9766bd546b59f415798f24c5b48719ee2462a2ae
BUILD=${BUILD:-1}
TAG=${TAG:-_SBo}
+PKGTYPE=${PKGTYPE:-tgz}
if [ -z "$ARCH" ]; then
case "$( uname -m )" in
@@ -37,7 +40,14 @@ if [ -z "$ARCH" ]; then
esac
fi
-CWD=$(pwd)
+# If the variable PRINT_PACKAGE_NAME is set, then this script will report what
+# the name of the created package would be, and then exit. This information
+# could be useful to other scripts.
+if [ ! -z "${PRINT_PACKAGE_NAME}" ]; then
+ echo "$PRGNAM-$VERSION-$ARCH-$BUILD$TAG.$PKGTYPE"
+ exit 0
+fi
+
TMP=${TMP:-/tmp/SBo}
PKG=$TMP/package-$PRGNAM
OUTPUT=${OUTPUT:-/tmp}
@@ -95,4 +105,4 @@ cat $CWD/slack-desc > $PKG/install/slack-desc
cat $CWD/doinst.sh > $PKG/install/doinst.sh
cd $PKG
-/sbin/makepkg -l y -c n $OUTPUT/$PRGNAM-$VERSION-$ARCH-$BUILD$TAG.${PKGTYPE:-tgz}
+/sbin/makepkg -l y -c n $OUTPUT/$PRGNAM-$VERSION-$ARCH-$BUILD$TAG.$PKGTYPE
diff --git a/games/openmsx-debugger/openmsx-debugger.info b/games/openmsx-debugger/openmsx-debugger.info
index 694df72793..e8bb0159aa 100644
--- a/games/openmsx-debugger/openmsx-debugger.info
+++ b/games/openmsx-debugger/openmsx-debugger.info
@@ -1,10 +1,10 @@
PRGNAM="openmsx-debugger"
-VERSION="20181202"
+VERSION="20230717"
HOMEPAGE="http://openmsx.org"
-DOWNLOAD="https://github.com/openMSX/debugger/archive/789ef3cafa1837965373c2244d6a4541de863d5c.tar.gz"
-MD5SUM="e57fa4c8e0cb06bcf55ed27bb4278f06"
+DOWNLOAD="https://github.com/openMSX/debugger/archive/9766bd546b59f415798f24c5b48719ee2462a2ae/debugger-9766bd546b59f415798f24c5b48719ee2462a2ae.tar.gz"
+MD5SUM="1467230eb860096d61221a9ac4435b03"
DOWNLOAD_x86_64=""
MD5SUM_x86_64=""
-REQUIRES="qt5"
+REQUIRES=""
MAINTAINER="Philip van der Hoeven"
EMAIL="philip@vd-hoeven.nl"
diff --git a/games/openmsx/openmsx.SlackBuild b/games/openmsx/openmsx.SlackBuild
index fe85b80c43..008d8b8447 100644
--- a/games/openmsx/openmsx.SlackBuild
+++ b/games/openmsx/openmsx.SlackBuild
@@ -1,9 +1,9 @@
-#!/bin/sh
+#!/bin/bash
# Slackware build script for OpenMSX
# Copyright 2013-2014 Erwin van Zanten, Dordrecht, The Netherlands
-# Copyright 2016-2019 Philip van der Hoeven, Almere, The Netherlands
+# Copyright 2016-2024 Philip van der Hoeven, Almere, The Netherlands
# All rights reserved.
#
# Redistribution and use of this script, with or without modification, is
@@ -23,10 +23,13 @@
# OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF THIS SOFTWARE, EVEN IF
# ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
+cd $(dirname $0) ; CWD=$(pwd)
+
PRGNAM=openmsx
-VERSION=${VERSION:-0.15.0}
+VERSION=${VERSION:-19.1}
BUILD=${BUILD:-1}
TAG=${TAG:-_SBo}
+PKGTYPE=${PKGTYPE:-tgz}
if [ -z "$ARCH" ]; then
case "$( uname -m )" in
@@ -36,7 +39,14 @@ if [ -z "$ARCH" ]; then
esac
fi
-CWD=$(pwd)
+# If the variable PRINT_PACKAGE_NAME is set, then this script will report what
+# the name of the created package would be, and then exit. This information
+# could be useful to other scripts.
+if [ ! -z "${PRINT_PACKAGE_NAME}" ]; then
+ echo "$PRGNAM-$VERSION-$ARCH-$BUILD$TAG.$PKGTYPE"
+ exit 0
+fi
+
TMP=${TMP:-/tmp/SBo}
PKG=$TMP/package-$PRGNAM
OUTPUT=${OUTPUT:-/tmp}
@@ -108,4 +118,4 @@ cat $CWD/slack-desc > $PKG/install/slack-desc
cat $CWD/doinst.sh > $PKG/install/doinst.sh
cd $PKG
-/sbin/makepkg -l y -c n $OUTPUT/$PRGNAM-$VERSION-$ARCH-$BUILD$TAG.${PKGTYPE:-tgz}
+/sbin/makepkg -l y -c n $OUTPUT/$PRGNAM-$VERSION-$ARCH-$BUILD$TAG.$PKGTYPE
diff --git a/games/openmsx/openmsx.info b/games/openmsx/openmsx.info
index 3c8f7ff99d..89ff3bddc8 100644
--- a/games/openmsx/openmsx.info
+++ b/games/openmsx/openmsx.info
@@ -1,8 +1,8 @@
PRGNAM="openmsx"
-VERSION="0.15.0"
+VERSION="19.1"
HOMEPAGE="http://openmsx.org/"
-DOWNLOAD="https://github.com/openMSX/openMSX/releases/download/RELEASE_0_15_0/openmsx-0.15.0.tar.gz"
-MD5SUM="99100aeb48c0f91ac6e1dcbaf00f4657"
+DOWNLOAD="https://github.com/openMSX/openMSX/releases/download/RELEASE_19_1/openmsx-19.1.tar.gz"
+MD5SUM="20d7eae3544f5c3d1cc1034712df0b4b"
DOWNLOAD_x86_64=""
MD5SUM_x86_64=""
REQUIRES=""
diff --git a/games/openmw/openmw.SlackBuild b/games/openmw/openmw.SlackBuild
index c7aa4a7031..86d3777fde 100644
--- a/games/openmw/openmw.SlackBuild
+++ b/games/openmw/openmw.SlackBuild
@@ -1,4 +1,4 @@
-#!/bin/sh
+#!/bin/bash
# Slackware build script for openmw
@@ -22,10 +22,13 @@
# OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF THIS SOFTWARE, EVEN IF
# ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
+cd $(dirname $0) ; CWD=$(pwd)
+
PRGNAM=openmw
-VERSION=${VERSION:-0.46.0}
+VERSION=${VERSION:-0.47.0}
BUILD=${BUILD:-1}
TAG=${TAG:-_SBo}
+PKGTYPE=${PKGTYPE:-tgz}
if [ -z "$ARCH" ]; then
case "$( uname -m )" in
@@ -35,7 +38,14 @@ if [ -z "$ARCH" ]; then
esac
fi
-CWD=$(pwd)
+# If the variable PRINT_PACKAGE_NAME is set, then this script will report what
+# the name of the created package would be, and then exit. This information
+# could be useful to other scripts.
+if [ ! -z "${PRINT_PACKAGE_NAME}" ]; then
+ echo "$PRGNAM-$VERSION-$ARCH-$BUILD$TAG.$PKGTYPE"
+ exit 0
+fi
+
TMP=${TMP:-/tmp/SBo}
PKG=$TMP/package-$PRGNAM
OUTPUT=${OUTPUT:-/tmp}
@@ -89,4 +99,4 @@ cat $CWD/slack-desc > $PKG/install/slack-desc
cat $CWD/doinst.sh > $PKG/install/doinst.sh
cd $PKG
-/sbin/makepkg -l y -c n $OUTPUT/$PRGNAM-$VERSION-$ARCH-$BUILD$TAG.${PKGTYPE:-tgz}
+/sbin/makepkg -l y -c n $OUTPUT/$PRGNAM-$VERSION-$ARCH-$BUILD$TAG.$PKGTYPE
diff --git a/games/openmw/openmw.info b/games/openmw/openmw.info
index 84245b124e..27e8c25e59 100644
--- a/games/openmw/openmw.info
+++ b/games/openmw/openmw.info
@@ -1,10 +1,10 @@
PRGNAM="openmw"
-VERSION="0.46.0"
+VERSION="0.47.0"
HOMEPAGE="https://openmw.org"
-DOWNLOAD="https://github.com/OpenMW/openmw/archive/openmw-0.46.0.tar.gz"
-MD5SUM="3a85106cac2728fcc16a0f9b682afb6b"
+DOWNLOAD="https://github.com/OpenMW/openmw/archive/refs/tags/openmw-0.47.0/openmw-openmw-0.47.0.tar.gz"
+MD5SUM="823de13cc92645dd4e02c6343022c55c"
DOWNLOAD_x86_64=""
MD5SUM_x86_64=""
-REQUIRES="FreeImage OpenAL unshield ffmpeg OpenSceneGraph SDL2 MyGUI bullet"
+REQUIRES="FreeImage unshield OpenSceneGraph MyGUI bullet"
MAINTAINER="Talos Thoren"
EMAIL="talosthoren@gmail.com"
diff --git a/games/opensonic/loggcompat.diff b/games/opensonic/loggcompat.diff
new file mode 100644
index 0000000000..86c41a741a
--- /dev/null
+++ b/games/opensonic/loggcompat.diff
@@ -0,0 +1,48 @@
+--- a/CMakeLists.txt
++++ b/CMakeLists.txt
+@@ -82,12 +82,6 @@ IF(NOT LJPGALLEG)
+ MESSAGE(FATAL_ERROR "Fatal error: libjpgalleg not found! ${RTFM}")
+ ENDIF(NOT LJPGALLEG)
+
+-# LOGG: liblogg, libogg, libvorbis, libvorbisfile
+-FIND_LIBRARY(LLOGG NAMES logg PATH "${CMAKE_LIBRARY_PATH}")
+-IF(NOT LLOGG)
+- MESSAGE(FATAL_ERROR "Fatal error: liblogg not found! ${RTFM}")
+-ENDIF(NOT LLOGG)
+-
+ FIND_LIBRARY(LOGG NAMES ogg PATH "${CMAKE_LIBRARY_PATH}")
+ IF(NOT LOGG)
+ MESSAGE(FATAL_ERROR "Fatal error: libogg not found! ${RTFM}")
+@@ -150,6 +144,7 @@ SET(
+ src/core/util.c
+ src/core/v2d.c
+ src/core/video.c
++ loggcompat-4.4.2/logg-4.4.2.c
+
+ src/scenes/util/editorgrp.c
+ src/scenes/util/grouptree.c
+
+--- a/src/core/audio.c
++++ b/src/core/audio.c
+@@ -18,7 +18,7 @@
+ */
+
+ #include <allegro.h>
+-#include <logg.h>
++#include <logg-4.4.2.h>
+ #include <stdlib.h>
+ #include "audio.h"
+ #include "osspec.h"
+
+diff -up opensnc-src-0.1.4/CMakeLists.txt.orig opensnc-src-0.1.4/CMakeLists.txt
+--- opensnc-src-0.1.4/CMakeLists.txt.orig 2022-03-04 19:42:19.045690020 -0600
++++ opensnc-src-0.1.4/CMakeLists.txt 2022-03-04 19:43:04.941859343 -0600
+@@ -250,7 +250,8 @@ IF(UNIX)
+ SET(GAME_SRCS ${GAME_SRCS} src/misc/iconlin.c)
+ ADD_EXECUTABLE(${GAME_UNIXNAME} ${GAME_SRCS})
+ SET_TARGET_PROPERTIES(${GAME_UNIXNAME} PROPERTIES LINK_FLAGS ${ALLEGRO_UNIX_LIBS})
+- TARGET_LINK_LIBRARIES(${GAME_UNIXNAME} m logg vorbisfile vorbis ogg jpgalleg z png loadpng)
++ INCLUDE_DIRECTORIES(loggcompat-4.4.2)
++ TARGET_LINK_LIBRARIES(${GAME_UNIXNAME} m vorbisfile vorbis ogg jpgalleg z png loadpng ${ALLEGRO_UNIX_LIBS})
+ SET_TARGET_PROPERTIES(${GAME_UNIXNAME} PROPERTIES COMPILE_FLAGS "-Wall -O2 ${CFLAGS} ${CFLAGS_EXTRA}")
+ ENDIF(UNIX)
diff --git a/games/opensonic/opensonic.SlackBuild b/games/opensonic/opensonic.SlackBuild
index 930c7fc4bd..4c76cdd8cd 100644
--- a/games/opensonic/opensonic.SlackBuild
+++ b/games/opensonic/opensonic.SlackBuild
@@ -1,4 +1,4 @@
-#!/bin/sh
+#!/bin/bash
# Slackware build script for opensonic
@@ -22,27 +22,36 @@
# OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF THIS SOFTWARE, EVEN IF
# ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
+# 20220222 bkw: Modified by SlackBuilds.org: fix build on 15.0.
+
+cd $(dirname $0) ; CWD=$(pwd)
+
PRGNAM=opensonic
SRCNAM=opensnc
VERSION=${VERSION:-0.1.4}
BUILD=${BUILD:-1}
TAG=${TAG:-_SBo}
+PKGTYPE=${PKGTYPE:-tgz}
if [ -z "$ARCH" ]; then
case "$( uname -m )" in
- i?86) ARCH=i486 ;;
+ i?86) ARCH=i586 ;;
arm*) ARCH=arm ;;
*) ARCH=$( uname -m ) ;;
esac
fi
-CWD=$(pwd)
+if [ ! -z "${PRINT_PACKAGE_NAME}" ]; then
+ echo "$PRGNAM-$VERSION-$ARCH-$BUILD$TAG.$PKGTYPE"
+ exit 0
+fi
+
TMP=${TMP:-/tmp/SBo}
PKG=$TMP/package-$PRGNAM
OUTPUT=${OUTPUT:-/tmp}
-if [ "$ARCH" = "i486" ]; then
- SLKCFLAGS="-O2 -march=i486 -mtune=i686"
+if [ "$ARCH" = "i586" ]; then
+ SLKCFLAGS="-O2 -march=i586 -mtune=i686"
LIBDIRSUFFIX=""
elif [ "$ARCH" = "i686" ]; then
SLKCFLAGS="-O2 -march=i686 -mtune=i686"
@@ -66,9 +75,13 @@ cd $SRCNAM-src-$VERSION
chown -R root:root .
find -L . \
\( -perm 777 -o -perm 775 -o -perm 750 -o -perm 711 -o -perm 555 -o -perm 511 \) \
- -exec chmod 755 {} \; -o \
+ -exec chmod 755 {} \+ -o \
\( -perm 666 -o -perm 664 -o -perm 600 -o -perm 444 -o -perm 440 -o -perm 400 \) \
- -exec chmod 644 {} \;
+ -exec chmod 644 {} \+
+
+# 20220222 bkw: solution came from gentoo, though the patch had to be reworked.
+tar xvf $CWD/loggcompat-4.4.2.tar.gz
+patch -p1 < $CWD/loggcompat.diff
sed -i 's|/usr/bin|/usr/games|' CMakeLists.txt src/core/global.h
@@ -95,11 +108,11 @@ cp -a \
license.txt readme*.html \
$PKG/usr/doc/$PRGNAM-$VERSION
cat $CWD/$PRGNAM.SlackBuild > $PKG/usr/doc/$PRGNAM-$VERSION/$PRGNAM.SlackBuild
-find $PKG/usr/doc -type f -exec chomd 0644 '{}' \;
+find $PKG/usr/doc -type f -exec chmod 0644 '{}' \;
mkdir -p $PKG/install
cat $CWD/slack-desc > $PKG/install/slack-desc
cat $CWD/doinst.sh > $PKG/install/doinst.sh
cd $PKG
-/sbin/makepkg -l y -c n $OUTPUT/$PRGNAM-$VERSION-$ARCH-$BUILD$TAG.${PKGTYPE:-tgz}
+/sbin/makepkg -l y -c n $OUTPUT/$PRGNAM-$VERSION-$ARCH-$BUILD$TAG.$PKGTYPE
diff --git a/games/opensonic/opensonic.info b/games/opensonic/opensonic.info
index 46e740626f..b978e44cba 100644
--- a/games/opensonic/opensonic.info
+++ b/games/opensonic/opensonic.info
@@ -1,8 +1,10 @@
PRGNAM="opensonic"
VERSION="0.1.4"
HOMEPAGE="http://opensnc.sourceforge.net/home/index.php"
-DOWNLOAD="http://downloads.sourceforge.net/opensnc/opensnc-src-0.1.4.tar.gz"
-MD5SUM="069fa14f43251b218b4fd81378d1cd78"
+DOWNLOAD="http://downloads.sourceforge.net/opensnc/opensnc-src-0.1.4.tar.gz \
+ https://github.com/t6/loggcompat/archive/4.4.2/loggcompat-4.4.2.tar.gz"
+MD5SUM="069fa14f43251b218b4fd81378d1cd78 \
+ 0961ef1f84f49331bb9dce2a3919327d"
DOWNLOAD_x86_64=""
MD5SUM_x86_64=""
REQUIRES="allegro4"
diff --git a/games/openspades/openspades.SlackBuild b/games/openspades/openspades.SlackBuild
index 4f16e21bf7..9958ac6d05 100644
--- a/games/openspades/openspades.SlackBuild
+++ b/games/openspades/openspades.SlackBuild
@@ -1,4 +1,4 @@
-#!/bin/sh
+#!/bin/bash
# Slackware build script for openspades
@@ -22,10 +22,13 @@
# OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF THIS SOFTWARE, EVEN IF
# ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
+cd $(dirname $0) ; CWD=$(pwd)
+
PRGNAM=openspades
VERSION=${VERSION:-0.1.3}
BUILD=${BUILD:-1}
TAG=${TAG:-_SBo}
+PKGTYPE=${PKGTYPE:-tgz}
if [ -z "$ARCH" ]; then
case "$( uname -m )" in
@@ -35,7 +38,14 @@ if [ -z "$ARCH" ]; then
esac
fi
-CWD=$(pwd)
+# If the variable PRINT_PACKAGE_NAME is set, then this script will report what
+# the name of the created package would be, and then exit. This information
+# could be useful to other scripts.
+if [ ! -z "${PRINT_PACKAGE_NAME}" ]; then
+ echo "$PRGNAM-$VERSION-$ARCH-$BUILD$TAG.$PKGTYPE"
+ exit 0
+fi
+
TMP=${TMP:-/tmp/SBo}
PKG=$TMP/package-$PRGNAM
OUTPUT=${OUTPUT:-/tmp}
@@ -112,4 +122,4 @@ cat $CWD/slack-desc > $PKG/install/slack-desc
cat $CWD/doinst.sh > $PKG/install/doinst.sh
cd $PKG
-/sbin/makepkg -l y -c n $OUTPUT/$PRGNAM-$VERSION-$ARCH-$BUILD$TAG.${PKGTYPE:-tgz}
+/sbin/makepkg -l y -c n $OUTPUT/$PRGNAM-$VERSION-$ARCH-$BUILD$TAG.$PKGTYPE
diff --git a/games/openspades/openspades.info b/games/openspades/openspades.info
index a84ce961e4..2229e365df 100644
--- a/games/openspades/openspades.info
+++ b/games/openspades/openspades.info
@@ -7,6 +7,6 @@ MD5SUM="130a3e6b324c1d5e6993cec0294b9408 \
daa4d6ecffe263d9567e9a37fe49b01b"
DOWNLOAD_x86_64=""
MD5SUM_x86_64=""
-REQUIRES="SDL2_image OpenAL opusfile"
+REQUIRES=""
MAINTAINER="Dimitris Zlatanidis"
EMAIL="d.zlatanidis@gmail.com"
diff --git a/games/opensurge/README b/games/opensurge/README
new file mode 100644
index 0000000000..15bfc2da91
--- /dev/null
+++ b/games/opensurge/README
@@ -0,0 +1,7 @@
+Open Surge is a fun 2D retro platformer inspired by Sonic games and a
+game creation system that lets you unleash your creativity!
+Open Surge is two projects in one: a game and a game creation system
+(game engine). It is released as free and open source software.
+
+Open Surge is written from the ground up in C language, using the
+Allegro game programming library.
diff --git a/games/opensurge/doinst.sh b/games/opensurge/doinst.sh
new file mode 100644
index 0000000000..5fb28930db
--- /dev/null
+++ b/games/opensurge/doinst.sh
@@ -0,0 +1,3 @@
+if [ -x /usr/bin/update-desktop-database ]; then
+ /usr/bin/update-desktop-database -q usr/share/applications >/dev/null 2>&1
+fi
diff --git a/games/opensurge/opensurge.SlackBuild b/games/opensurge/opensurge.SlackBuild
new file mode 100644
index 0000000000..fbf5ba19b9
--- /dev/null
+++ b/games/opensurge/opensurge.SlackBuild
@@ -0,0 +1,104 @@
+#!/bin/bash
+
+# Slackware build script for opensurge
+
+# Copyright 2022 Johannes Schoepfer, Germany
+# All rights reserved.
+#
+# Redistribution and use of this script, with or without modification, is
+# permitted provided that the following conditions are met:
+#
+# 1. Redistributions of this script must retain the above copyright
+# notice, this list of conditions and the following disclaimer.
+#
+# THIS SOFTWARE IS PROVIDED BY THE AUTHOR "AS IS" AND ANY EXPRESS OR IMPLIED
+# WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE IMPLIED WARRANTIES OF
+# MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE ARE DISCLAIMED. IN NO
+# EVENT SHALL THE AUTHOR BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL,
+# SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT LIMITED TO,
+# PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, DATA, OR PROFITS;
+# OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY,
+# WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR
+# OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF THIS SOFTWARE, EVEN IF
+# ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
+
+cd $(dirname $0) ; CWD=$(pwd)
+
+PRGNAM=opensurge
+VERSION=${VERSION:-0.6.0.3}
+BUILD=${BUILD:-1}
+TAG=${TAG:-_SBo}
+PKGTYPE=${PKGTYPE:-tgz}
+
+if [ -z "$ARCH" ]; then
+ case "$( uname -m )" in
+ i?86) ARCH=i586 ;;
+ arm*) ARCH=arm ;;
+ *) ARCH=$( uname -m ) ;;
+ esac
+fi
+
+if [ ! -z "${PRINT_PACKAGE_NAME}" ]; then
+ echo "$PRGNAM-$VERSION-$ARCH-$BUILD$TAG.$PKGTYPE"
+ exit 0
+fi
+
+TMP=${TMP:-/tmp/SBo}
+PKG=$TMP/package-$PRGNAM
+OUTPUT=${OUTPUT:-/tmp}
+
+if [ "$ARCH" = "i586" ]; then
+ SLKCFLAGS="-O2 -march=i586 -mtune=i686"
+ LIBDIRSUFFIX=""
+elif [ "$ARCH" = "i686" ]; then
+ SLKCFLAGS="-O2 -march=i686 -mtune=i686"
+ LIBDIRSUFFIX=""
+elif [ "$ARCH" = "x86_64" ]; then
+ SLKCFLAGS="-O2 -fPIC"
+ LIBDIRSUFFIX="64"
+else
+ SLKCFLAGS="-O2"
+ LIBDIRSUFFIX=""
+fi
+
+set -e
+
+rm -rf $PKG
+mkdir -p $TMP $PKG $OUTPUT
+cd $TMP
+rm -rf $PRGNAM-$VERSION
+tar xvf $CWD/$PRGNAM-$VERSION.tar.gz
+cd $PRGNAM-$VERSION
+chown -R root:root .
+find -L . \
+ \( -perm 777 -o -perm 775 -o -perm 750 -o -perm 711 -o -perm 555 \
+ -o -perm 511 \) -exec chmod 755 {} \; -o \
+ \( -perm 666 -o -perm 664 -o -perm 640 -o -perm 600 -o -perm 444 \
+ -o -perm 440 -o -perm 400 \) -exec chmod 644 {} \;
+
+mkdir -p build
+cd build
+ cmake \
+ -DCMAKE_C_FLAGS:STRING="$SLKCFLAGS" \
+ -DCMAKE_CXX_FLAGS:STRING="$SLKCFLAGS" \
+ -DCMAKE_INSTALL_PREFIX=/usr \
+ -DCMAKE_BUILD_TYPE=Release ..
+ make
+ make install DESTDIR=$PKG
+cd ..
+
+find $PKG -print0 | xargs -0 file | grep -e "executable" -e "shared object" | grep ELF \
+ | cut -f 1 -d : | xargs strip --strip-unneeded 2> /dev/null || true
+
+mkdir -p $PKG/usr/doc/$PRGNAM-$VERSION
+cp -a \
+ LICENSE *.md \
+ $PKG/usr/doc/$PRGNAM-$VERSION
+cat $CWD/$PRGNAM.SlackBuild > $PKG/usr/doc/$PRGNAM-$VERSION/$PRGNAM.SlackBuild
+
+mkdir -p $PKG/install
+cat $CWD/slack-desc > $PKG/install/slack-desc
+cat $CWD/doinst.sh > $PKG/install/doinst.sh
+
+cd $PKG
+/sbin/makepkg -l y -c n $OUTPUT/$PRGNAM-$VERSION-$ARCH-$BUILD$TAG.$PKGTYPE
diff --git a/games/opensurge/opensurge.info b/games/opensurge/opensurge.info
new file mode 100644
index 0000000000..bac64c9556
--- /dev/null
+++ b/games/opensurge/opensurge.info
@@ -0,0 +1,10 @@
+PRGNAM="opensurge"
+VERSION="0.6.0.3"
+HOMEPAGE="https://opensurge2d.org"
+DOWNLOAD="https://github.com/alemart/opensurge/archive/v0.6.0.3/opensurge-0.6.0.3.tar.gz"
+MD5SUM="fca821fab0fae154a3d77267b4f1d16c"
+DOWNLOAD_x86_64=""
+MD5SUM_x86_64=""
+REQUIRES="allegro surgescript"
+MAINTAINER="Johannes Schoepfer"
+EMAIL="slackbuilds@schoepfer.info"
diff --git a/games/opensurge/slack-desc b/games/opensurge/slack-desc
new file mode 100644
index 0000000000..792c78ae8d
--- /dev/null
+++ b/games/opensurge/slack-desc
@@ -0,0 +1,19 @@
+# HOW TO EDIT THIS FILE:
+# The "handy ruler" below makes it easier to edit a package description.
+# Line up the first '|' above the ':' following the base package name, and
+# the '|' on the right side marks the last column you can put a character in.
+# You must make exactly 11 lines for the formatting to be correct. It's also
+# customary to leave one space after the ':' except on otherwise blank lines.
+
+ |-----handy-ruler------------------------------------------------------|
+opensurge: opensurge (2D retro platformer)
+opensurge:
+opensurge: Open Surge is a fun 2D retro platformer inspired by Sonic games and a
+opensurge: game creation system that lets you unleash your creativity!
+opensurge: Open Surge is two projects in one: a game and a game creation system
+opensurge: (game engine). It is released as free and open source software.
+opensurge:
+opensurge: Open Surge is written from the ground up in C language, using the
+opensurge: Allegro game programming library.
+opensurge:
+opensurge: https://opensurge2d.org/
diff --git a/games/openttd/README b/games/openttd/README
index 97fe558bd2..f7b0493d99 100644
--- a/games/openttd/README
+++ b/games/openttd/README
@@ -4,6 +4,9 @@ enhancements from the original game include bigger maps, new AI,
stable multiplayer mode, dedicated server mode, and many in-game
updates.
+To play music with fluidsynth, OpenTTD requires a soundfont to be
+installed. It has been tested to work with fluid-soundfont from SBo.
+
Historically, users of OpenTTD needed access to several original
Windows data files in order to successfully run the game. However,
now there are two options:
diff --git a/games/openttd/openttd.SlackBuild b/games/openttd/openttd.SlackBuild
index 5e9956d310..f7e8f0912e 100644
--- a/games/openttd/openttd.SlackBuild
+++ b/games/openttd/openttd.SlackBuild
@@ -1,10 +1,10 @@
-#!/bin/sh
+#!/bin/bash
# Slackware build script for OpenTTD
# Copyright 2007-2010 Chess Griffin <chess@chessgriffin.com>
# Copyright 2011-2014 LEVAI Daniel
-# Copyright 2020 Heiko Rosemann
+# Copyright 2020-2024 Heiko Rosemann Germany
# All rights reserved.
#
# Redistribution and use of this script, with or without modification, is
@@ -24,24 +24,34 @@
# OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF THIS SOFTWARE, EVEN IF
# ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
+cd $(dirname $0) ; CWD=$(pwd)
+
PRGNAM=openttd
-VERSION=${VERSION:-1.10.1}
+VERSION=${VERSION:-13.4}
BUILD=${BUILD:-1}
TAG=${TAG:-_SBo}
+PKGTYPE=${PKGTYPE:-tgz}
-OPENGFX=0.6.0
-OPENSFX=0.2.3
-OPENMSX=0.3.1
+OPENGFX=7.1
+OPENSFX=1.0.3
+OPENMSX=0.4.2
if [ -z "$ARCH" ]; then
case "$( uname -m )" in
- i?86) ARCH=i486 ;;
+ i?86) ARCH=i586 ;;
arm*) ARCH=arm ;;
*) ARCH=$( uname -m ) ;;
esac
fi
-CWD=$(pwd)
+# If the variable PRINT_PACKAGE_NAME is set, then this script will report what
+# the name of the created package would be, and then exit. This information
+# could be useful to other scripts.
+if [ ! -z "${PRINT_PACKAGE_NAME}" ]; then
+ echo "$PRGNAM-$VERSION-$ARCH-$BUILD$TAG.$PKGTYPE"
+ exit 0
+fi
+
TMP=${TMP:-/tmp/SBo}
PKG=$TMP/package-$PRGNAM
OUTPUT=${OUTPUT:-/tmp}
@@ -53,8 +63,8 @@ OUTPUT=${OUTPUT:-/tmp}
# over the original Windows data files in order for OpenTTD to run.
OPENDATA=${OPENDATA:-YES}
-if [ "$ARCH" = "i486" ]; then
- SLKCFLAGS="-O2 -march=i486 -mtune=i686"
+if [ "$ARCH" = "i586" ]; then
+ SLKCFLAGS="-O2 -march=i586 -mtune=i686"
LIBDIRSUFFIX=""
elif [ "$ARCH" = "i686" ]; then
SLKCFLAGS="-O2 -march=i686 -mtune=i686"
@@ -79,7 +89,9 @@ if [ "$OPENDATA" == "YES" ]; then
unzip -o $CWD/opengfx-$OPENGFX-all.zip
tar -xvf opengfx-${OPENGFX}.tar
unzip -o $CWD/opensfx-$OPENSFX-all.zip
+ tar -xvf opensfx-${OPENSFX}.tar
unzip -o $CWD/openmsx-$OPENMSX-all.zip
+ tar -xvf openmsx-${OPENMSX}.tar
fi
chown -R root:root .
find -L . \
@@ -88,20 +100,18 @@ find -L . \
\( -perm 666 -o -perm 664 -o -perm 640 -o -perm 600 -o -perm 444 \
-o -perm 440 -o -perm 400 \) -exec chmod 644 {} \;
-CFLAGS="$SLKCFLAGS" \
-CXXFLAGS="$SLKCFLAGS" \
-./configure \
- --prefix-dir=/usr \
- --binary-dir=/games \
- --data-dir=/share/games/openttd \
- --icon-dir=/share/pixmaps \
- --man-dir=/man/man6 \
- --doc-dir=/doc/$PRGNAM-$VERSION \
- --personal-dir=.openttd \
- --install-dir=$PKG
-
-make
-make install DEST_DIR=$PKG
+mkdir -p build
+cd build
+ cmake \
+ -DCMAKE_C_FLAGS:STRING="$SLKCFLAGS" \
+ -DCMAKE_CXX_FLAGS:STRING="$SLKCFLAGS" \
+ -DCMAKE_INSTALL_PREFIX=/usr \
+ -DCMAKE_INSTALL_MANDIR=/usr/man \
+ -DCMAKE_INSTALL_DOCDIR=/usr/doc/$PRGNAM-$VERSION \
+ -DCMAKE_BUILD_TYPE=Release ..
+ make
+ make install/strip DESTDIR=$PKG
+cd ..
# Copy opengfx, opensfx, and openmsx files if OPENDATA=YES
if [ "$OPENDATA" == "YES" ]; then
@@ -117,12 +127,6 @@ if [ "$OPENDATA" == "YES" ]; then
cp -a openmsx-$OPENMSX/* $PKG/usr/share/games/openttd/gm/
fi
-find $PKG | xargs file | grep -e "executable" -e "shared object" | grep ELF \
- | cut -f 1 -d : | xargs strip --strip-unneeded 2> /dev/null || true
-
-find $PKG/usr/man -type f -exec gzip -9 {} \;
-for i in $( find $PKG/usr/man -type l ) ; do ln -s $( readlink $i ).gz $i.gz ; rm $i ; done
-
mkdir -p $PKG/usr/doc/$PRGNAM-$VERSION
cp -a docs/* $PKG/usr/doc/$PRGNAM-$VERSION
rm -f $PKG/usr/doc/$PRGNAM-$VERSION/openttd.6
@@ -133,4 +137,4 @@ cat $CWD/slack-desc > $PKG/install/slack-desc
cat $CWD/doinst.sh > $PKG/install/doinst.sh
cd $PKG
-/sbin/makepkg -l y -c n $OUTPUT/$PRGNAM-$VERSION-$ARCH-$BUILD$TAG.${PKGTYPE:-tgz}
+/sbin/makepkg -l y -c n $OUTPUT/$PRGNAM-$VERSION-$ARCH-$BUILD$TAG.$PKGTYPE
diff --git a/games/openttd/openttd.info b/games/openttd/openttd.info
index b049376f26..7ba1d9ef92 100644
--- a/games/openttd/openttd.info
+++ b/games/openttd/openttd.info
@@ -1,14 +1,14 @@
PRGNAM="openttd"
-VERSION="1.10.1"
+VERSION="13.4"
HOMEPAGE="http://www.openttd.org"
-DOWNLOAD="https://cdn.openttd.org/openttd-releases/1.10.1/openttd-1.10.1-source.tar.xz \
- https://cdn.openttd.org/opengfx-releases/0.6.0/opengfx-0.6.0-all.zip \
- https://cdn.openttd.org/openmsx-releases/0.3.1/openmsx-0.3.1-all.zip \
- https://cdn.openttd.org/opensfx-releases/0.2.3/opensfx-0.2.3-all.zip"
-MD5SUM="d01908c4d23c1a0065d8e1d17dec9f42 \
- 994d8ce816542b74130964971736d4d6 \
- 858b79d44aea6de5e15d9d1439e86cc3 \
- 3605b82f24153500c8a1804e4420168a"
+DOWNLOAD="https://cdn.openttd.org/openttd-releases/13.4/openttd-13.4-source.tar.xz \
+ https://cdn.openttd.org/opengfx-releases/7.1/opengfx-7.1-all.zip \
+ https://cdn.openttd.org/openmsx-releases/0.4.2/openmsx-0.4.2-all.zip \
+ https://cdn.openttd.org/opensfx-releases/1.0.3/opensfx-1.0.3-all.zip"
+MD5SUM="ed42437a6f33e83b3e27f9ebd988efc4 \
+ f3cd9de89db7caf37a2e5c4c70fb1304 \
+ 7f853e6b6e673268165a09265ed284b0 \
+ 4cd2a4f8b2e160f8754736beb4d31ccd"
DOWNLOAD_x86_64=""
MD5SUM_x86_64=""
REQUIRES=""
diff --git a/games/opentyrian/README b/games/opentyrian/README
index ccc9e80bfd..cff9d021c1 100644
--- a/games/opentyrian/README
+++ b/games/opentyrian/README
@@ -1,8 +1,8 @@
opentyrian (arcade-style vertical scrolling shooter)
-OpenTyrian is a port of the DOS shoot-em-up Tyrian. The story is set in
-20,031 where you play as Trent Hawkins, a skilled fighter-pilot employed
-to fight Microsol and save the galaxy.
+OpenTyrian is a port of the MS-DOS shoot-em-up Tyrian. The story is
+set in 20,031 where you play as Trent Hawkins, a skilled fighter pilot
+employed to fight Microsol and save the galaxy.
Gameplay is similar to the arcade game Raiden. For gameplay help, see
README and manual.txt in /usr/doc/opentyrian-$VERSION/.
diff --git a/games/opentyrian/doinst.sh b/games/opentyrian/doinst.sh
index 5fb28930db..3e5691a052 100644
--- a/games/opentyrian/doinst.sh
+++ b/games/opentyrian/doinst.sh
@@ -1,3 +1,9 @@
if [ -x /usr/bin/update-desktop-database ]; then
/usr/bin/update-desktop-database -q usr/share/applications >/dev/null 2>&1
fi
+
+if [ -e usr/share/icons/hicolor/icon-theme.cache ]; then
+ if [ -x /usr/bin/gtk-update-icon-cache ]; then
+ /usr/bin/gtk-update-icon-cache usr/share/icons/hicolor >/dev/null 2>&1
+ fi
+fi
diff --git a/games/opentyrian/opentyrian.SlackBuild b/games/opentyrian/opentyrian.SlackBuild
index 156e6a54ea..b13ff1a8e6 100644
--- a/games/opentyrian/opentyrian.SlackBuild
+++ b/games/opentyrian/opentyrian.SlackBuild
@@ -1,17 +1,28 @@
-#!/bin/sh
+#!/bin/bash
# Slackware build script for opentyrian
-# Written by B. Watson (yalhcru@gmail.com)
+# Written by B. Watson (urchlay@slackware.uk)
# Licensed under the WTFPL. See http://www.wtfpl.net/txt/copying/ for details.
+# 20230525 bkw: old homepage went away. script not changed.
+# 20230107 bkw: update for v2.1.20221123.
+
+# 20211026 bkw: BUILD=2
+# - fix build on -current.
+# - /usr/share/opentyrian => /usr/share/games/opentyrian
+# - new-style icons.
+
# 20170620 bkw: fix compile on -current (still works fine on 14.2)
+cd $(dirname $0) ; CWD=$(pwd)
+
PRGNAM=opentyrian
-VERSION=${VERSION:-2.1.20130907}
+VERSION=${VERSION:-2.1.20221123}
BUILD=${BUILD:-1}
TAG=${TAG:-_SBo}
+PKGTYPE=${PKGTYPE:-tgz}
if [ -z "$ARCH" ]; then
case "$( uname -m )" in
@@ -21,7 +32,11 @@ if [ -z "$ARCH" ]; then
esac
fi
-CWD=$(pwd)
+if [ ! -z "${PRINT_PACKAGE_NAME}" ]; then
+ echo "$PRGNAM-$VERSION-$ARCH-$BUILD$TAG.$PKGTYPE"
+ exit 0
+fi
+
TMP=${TMP:-/tmp/SBo}
PKG=$TMP/package-$PRGNAM
OUTPUT=${OUTPUT:-/tmp}
@@ -49,59 +64,66 @@ rm -rf $PKG
mkdir -p $TMP $PKG $OUTPUT
cd $TMP
rm -rf $PRGNAM-$VERSION
-tar xvf $CWD/$PRGNAM-$VERSION-src.tar.gz
+tar xvf $CWD/$PRGNAM-$VERSION.tar.gz
cd $PRGNAM-$VERSION
chown -R root:root .
-find -L . \
- \( -perm 777 -o -perm 775 -o -perm 750 -o -perm 711 -o -perm 555 \
- -o -perm 511 \) -exec chmod 755 {} \; -o \
- \( -perm 666 -o -perm 664 -o -perm 640 -o -perm 600 -o -perm 444 \
- -o -perm 440 -o -perm 400 \) -exec chmod 644 {} \;
-
-mkdir -p \
- $PKG/usr/games \
- $PKG/usr/share/$PRGNAM/data \
- $PKG/usr/man/man6 \
- $PKG/usr/share/pixmaps \
- $PKG/usr/share/applications \
- $PKG/usr/doc/$PRGNAM-$VERSION \
- $PKG/install
-
-sed -i "s,-g0,$SLKCFLAGS," Makefile
-sed -i "s,-g3.*\$,$SLKCFLAGS," Makefile
-make
-
-install -s $PRGNAM $PKG/usr/games
+find -L . -perm /111 -a \! -perm 755 -a -exec chmod 755 {} \+ -o \
+ \! -perm /111 -a \! -perm 644 -a -exec chmod 644 {} \+
+
+# 20230107 bkw: absolute path in .desktop file.
+sed -i '/^Exec=/s,=,=/usr/games/,' linux/$PRGNAM.desktop
+
+# 20230107 bkw: they didn't give us a make variable for this...
+sed -i "s,-O2,$SLKCFLAGS," Makefile
+
+DOCDIR=/usr/doc/$PRGNAM-$VERSION
+PKGDOC=$PKG/$DOCDIR
+
+make \
+ prefix=/usr \
+ bindir=/usr/games \
+ mandir=/usr/man \
+ docdir=$DOCDIR \
+ TYRIAN_DIR=/usr/share/games/$PRGNAM/data \
+ DESTDIR=$PKG \
+ INSTALL_PROGRAM="install -s" \
+ all \
+ install
+
+gzip -9 $PKG/usr/man/man?/*.?
# Probably some of the data files are redundant. We certainly don't
# need the DOS executables or their docs (except manual.doc which
# has the game story).
cat <<EOF > $PKG/usr/doc/$PRGNAM-$VERSION/manual.txt
-20140429 bkw: This is the original manual from the DOS game. The install
-instructions are obsolete, but the backstory and gameplay instructions
-are still relevant [beginning with V) THE STORY].
+20140429 bkw: This is the original manual from the MS-DOS game. The
+install instructions are obsolete, but the backstory and gameplay
+instructions are still relevant [beginning with "V) THE STORY"].
EOF
+mkdir -p $PKG/{install,usr/share/{pixmaps,games/$PRGNAM/data}}
+
unzip $CWD/tyrian$DATAVER.zip
cd tyrian$DATAVER
chmod 644 *
- sed 's/\r//' manual.doc >> $PKG/usr/doc/$PRGNAM-$VERSION/manual.txt
+ sed 's/\r//' manual.doc >> $PKGDOC/manual.txt
rm -f *.exe *.doc
- mv * $PKG/usr/share/$PRGNAM/data
+ mv * $PKG/usr/share/games/$PRGNAM/data
cd -
+mkdir -p $PKG/usr/share/pixmaps
+ln -s ../icons/hicolor/48x48/apps/$PRGNAM.png $PKG/usr/share/pixmaps/$PRGNAM.png
+
gzip -9c < linux/man/$PRGNAM.6 > $PKG/usr/man/man6/$PRGNAM.6.gz
-cat linux/icons/tyrian-128.png > $PKG/usr/share/pixmaps/$PRGNAM.png
-cat linux/$PRGNAM.desktop > $PKG/usr/share/applications/$PRGNAM.desktop
+sed 's,Exec=,&/usr/games/,' linux/$PRGNAM.desktop \
+ > $PKG/usr/share/applications/$PRGNAM.desktop
-chmod 644 CREDITS
-cp -a COPYING CREDITS NEWS README \
- $PKG/usr/doc/$PRGNAM-$VERSION
-cat $CWD/$PRGNAM.SlackBuild > $PKG/usr/doc/$PRGNAM-$VERSION/$PRGNAM.SlackBuild
+cp -a COPYING $PKGDOC
+cat $CWD/$PRGNAM.SlackBuild > $PKGDOC/$PRGNAM.SlackBuild
cat $CWD/slack-desc > $PKG/install/slack-desc
cat $CWD/doinst.sh > $PKG/install/doinst.sh
cd $PKG
-/sbin/makepkg -l y -c n $OUTPUT/$PRGNAM-$VERSION-$ARCH-$BUILD$TAG.${PKGTYPE:-tgz}
+/sbin/makepkg -l y -c n $OUTPUT/$PRGNAM-$VERSION-$ARCH-$BUILD$TAG.$PKGTYPE
diff --git a/games/opentyrian/opentyrian.info b/games/opentyrian/opentyrian.info
index 47c0bd02ae..19caf3f0e7 100644
--- a/games/opentyrian/opentyrian.info
+++ b/games/opentyrian/opentyrian.info
@@ -1,12 +1,12 @@
PRGNAM="opentyrian"
-VERSION="2.1.20130907"
-HOMEPAGE="https://bitbucket.org/opentyrian/opentyrian/wiki/Home"
-DOWNLOAD="http://www.camanis.net/opentyrian/releases/opentyrian-2.1.20130907-src.tar.gz \
- http://camanis.net/tyrian/tyrian21.zip"
-MD5SUM="978686c5a1dfbac69a2161aadf084c2b \
+VERSION="2.1.20221123"
+HOMEPAGE="https://github.com/opentyrian/opentyrian/"
+DOWNLOAD="https://github.com/opentyrian/opentyrian/archive/v2.1.20221123/opentyrian-2.1.20221123.tar.gz \
+ https://www.camanis.net/tyrian/tyrian21.zip"
+MD5SUM="d3e082d310073bc9577a4ec4974c76b4 \
2a3b206a6de25ed4b771af073f8ca904"
DOWNLOAD_x86_64=""
MD5SUM_x86_64=""
REQUIRES=""
MAINTAINER="B. Watson"
-EMAIL="yalhcru@gmail.com"
+EMAIL="urchlay@slackware.uk"
diff --git a/games/opentyrian/slack-desc b/games/opentyrian/slack-desc
index 35b9e7aa37..e70c67bd99 100644
--- a/games/opentyrian/slack-desc
+++ b/games/opentyrian/slack-desc
@@ -8,12 +8,12 @@
|-----handy-ruler------------------------------------------------------|
opentyrian: opentyrian (arcade-style vertical scrolling shooter)
opentyrian:
-opentyrian: OpenTyrian is a port of the DOS shoot-em-up Tyrian. The story is set
-opentyrian: in 20,031 where you play as Trent Hawkins, a skilled fighter-pilot
+opentyrian: OpenTyrian is a port of the MS-DOS shoot-em-up Tyrian. The story is
+opentyrian: set in 20,031 where you play as Trent Hawkins, a skilled fighter pilot
opentyrian: employed to fight Microsol and save the galaxy.
opentyrian:
-opentyrian: Gameplay is similar to the arcade game Raiden.
-opentyrian:
+opentyrian: Gameplay is similar to the arcade game Raiden. For gameplay help, see
+opentyrian: README and manual.txt in /usr/doc/opentyrian-$VERSION/.
opentyrian:
opentyrian:
opentyrian:
diff --git a/games/openyahtzee/doinst.sh b/games/openyahtzee/doinst.sh
index 5fb28930db..3e5691a052 100644
--- a/games/openyahtzee/doinst.sh
+++ b/games/openyahtzee/doinst.sh
@@ -1,3 +1,9 @@
if [ -x /usr/bin/update-desktop-database ]; then
/usr/bin/update-desktop-database -q usr/share/applications >/dev/null 2>&1
fi
+
+if [ -e usr/share/icons/hicolor/icon-theme.cache ]; then
+ if [ -x /usr/bin/gtk-update-icon-cache ]; then
+ /usr/bin/gtk-update-icon-cache usr/share/icons/hicolor >/dev/null 2>&1
+ fi
+fi
diff --git a/games/openyahtzee/openyahtzee.SlackBuild b/games/openyahtzee/openyahtzee.SlackBuild
index 5d5a64dd12..5df8a49d98 100644
--- a/games/openyahtzee/openyahtzee.SlackBuild
+++ b/games/openyahtzee/openyahtzee.SlackBuild
@@ -1,20 +1,27 @@
-#!/bin/sh
+#!/bin/bash
# Slackware build script for openyahtzee
-# Written by B. Watson (yalhcru@gmail.com)
+# Written by B. Watson (urchlay@slackware.uk)
# Licensed under the WTFPL. See http://www.wtfpl.net/txt/copying/ for details.
+# 20211021 bkw: BUILD=2
+# - actually use the WXCONFIG variable.
+# - new-style icons.
+
# 20140909 bkw: if wx(Widgets|Python) 2.x and wxGTK 3.x are installed, in that
# order, the symlink at /usr/bin/wx-config will point to the 3.x config script.
# openyahtzee won't build against wx 3, so this script now uses the 2.x script
# explicitly.
+cd $(dirname $0) ; CWD=$(pwd)
+
PRGNAM=openyahtzee
VERSION=${VERSION:-1.9.3}
-BUILD=${BUILD:-1}
+BUILD=${BUILD:-2}
TAG=${TAG:-_SBo}
+PKGTYPE=${PKGTYPE:-tgz}
if [ -z "$ARCH" ]; then
case "$( uname -m )" in
@@ -24,7 +31,11 @@ if [ -z "$ARCH" ]; then
esac
fi
-CWD=$(pwd)
+if [ ! -z "${PRINT_PACKAGE_NAME}" ]; then
+ echo "$PRGNAM-$VERSION-$ARCH-$BUILD$TAG.$PKGTYPE"
+ exit 0
+fi
+
TMP=${TMP:-/tmp/SBo}
PKG=$TMP/package-$PRGNAM
OUTPUT=${OUTPUT:-/tmp}
@@ -60,15 +71,15 @@ rm -rf $PRGNAM-$VERSION
tar xvf $CWD/$PRGNAM-$VERSION.tar.xz
cd $PRGNAM-$VERSION
chown -R root:root .
-find -L . \
- \( -perm 777 -o -perm 775 -o -perm 750 -o -perm 711 -o -perm 555 \
- -o -perm 511 \) -exec chmod 755 {} \; -o \
- \( -perm 666 -o -perm 664 -o -perm 640 -o -perm 600 -o -perm 444 \
- -o -perm 440 -o -perm 400 \) -exec chmod 644 {} \;
+find -L . -perm /111 -a \! -perm 755 -a -exec chmod 755 {} \+ -o \
+ \! -perm /111 -a \! -perm 644 -a -exec chmod 644 {} \+
+
+sed -i 's,Exec=,&/usr/games/,' $PRGNAM.desktop
CFLAGS="$SLKCFLAGS" \
CXXFLAGS="$SLKCFLAGS" \
./configure \
+ --with-wx-config="$WXCONFIG" \
--bindir=/usr/games \
--prefix=/usr \
--libdir=/usr/lib${LIBDIRSUFFIX} \
@@ -80,9 +91,16 @@ CXXFLAGS="$SLKCFLAGS" \
make
make install-strip DESTDIR=$PKG
+gzip $PKG/usr/man/man?/*
-find $PKG/usr/man -type f -exec gzip -9 {} \;
-for i in $( find $PKG/usr/man -type l ) ; do ln -s $( readlink $i ).gz $i.gz ; rm $i ; done
+for px in 16 32 48 64 128; do
+ size=${px}x${px}
+ dir=$PKG/usr/share/icons/hicolor/$size/apps
+ mkdir -p $dir
+ convert -resize $size \
+ icons/$PRGNAM.png \
+ $PKG/usr/share/icons/hicolor/$size/apps/$PRGNAM.png
+done
# README and NEWS are 0-byte placeholder in 1.9.1
mkdir -p $PKG/usr/doc/$PRGNAM-$VERSION
@@ -94,4 +112,4 @@ cat $CWD/slack-desc > $PKG/install/slack-desc
cat $CWD/doinst.sh > $PKG/install/doinst.sh
cd $PKG
-/sbin/makepkg -l y -c n $OUTPUT/$PRGNAM-$VERSION-$ARCH-$BUILD$TAG.${PKGTYPE:-tgz}
+/sbin/makepkg -l y -c n $OUTPUT/$PRGNAM-$VERSION-$ARCH-$BUILD$TAG.$PKGTYPE
diff --git a/games/openyahtzee/openyahtzee.info b/games/openyahtzee/openyahtzee.info
index f41703e8c9..5e49993e54 100644
--- a/games/openyahtzee/openyahtzee.info
+++ b/games/openyahtzee/openyahtzee.info
@@ -1,10 +1,10 @@
PRGNAM="openyahtzee"
VERSION="1.9.3"
-HOMEPAGE="http://www.openyahtzee.org/"
-DOWNLOAD="http://downloads.sourceforge.net/project/openyahtzee/Open%20Yahtzee/Open%20Yahtzee%201.9.3/openyahtzee-1.9.3.tar.xz"
+HOMEPAGE="https://www.openyahtzee.org/"
+DOWNLOAD="https://downloads.sourceforge.net/project/openyahtzee/Open%20Yahtzee/Open%20Yahtzee%201.9.3/openyahtzee-1.9.3.tar.xz"
MD5SUM="9bccc2477047c29cb33b8cb23e21ef3c"
DOWNLOAD_x86_64=""
MD5SUM_x86_64=""
REQUIRES="wxPython"
MAINTAINER="B. Watson"
-EMAIL="yalhcru@gmail.com"
+EMAIL="urchlay@slackware.uk"
diff --git a/games/ostrichriders/ostrichriders.SlackBuild b/games/ostrichriders/ostrichriders.SlackBuild
index 22ae2e2de3..249cc203b3 100644
--- a/games/ostrichriders/ostrichriders.SlackBuild
+++ b/games/ostrichriders/ostrichriders.SlackBuild
@@ -1,17 +1,21 @@
-#!/bin/sh
+#!/bin/bash
# Slackware build script for ostrichriders
-# Written by B. Watson (yalhcru@gmail.com)
+# Written by B. Watson (urchlay@slackware.uk)
# Licensed under the WTFPL. See http://www.wtfpl.net/txt/copying/ for details.
+# 20211020 bkw: BUILD=2, add old-style icon
# 20191130 bkw: update for v0.6.5, update man page to add new -a option
+cd $(dirname $0) ; CWD=$(pwd)
+
PRGNAM=ostrichriders
VERSION=${VERSION:-0.6.5}
-BUILD=${BUILD:-1}
+BUILD=${BUILD:-2}
TAG=${TAG:-_SBo}
+PKGTYPE=${PKGTYPE:-tgz}
if [ -z "$ARCH" ]; then
case "$( uname -m )" in
@@ -21,7 +25,11 @@ if [ -z "$ARCH" ]; then
esac
fi
-CWD=$(pwd)
+if [ ! -z "${PRINT_PACKAGE_NAME}" ]; then
+ echo "$PRGNAM-$VERSION-$ARCH-$BUILD$TAG.$PKGTYPE"
+ exit 0
+fi
+
TMP=${TMP:-/tmp/SBo}
PKG=$TMP/package-$PRGNAM
OUTPUT=${OUTPUT:-/tmp}
@@ -59,6 +67,8 @@ rm -f data/mods/sandbox/media/Thumbs.db \
# SBo's SFML doesn't ship a .pc file for pkg-config, so do it the hard
# way. -Wl,-s strips the binary.
+sed -i 's,Exec=,&/usr/games/,' $PRGNAM.desktop
+
make PREFIX=/usr \
BINDIR=/usr/games \
DESTDIR=$PKG \
@@ -73,6 +83,10 @@ make PREFIX=/usr \
all \
install
+# 20211020 bkw: old-style icon.
+mkdir -p $PKG/usr/share/pixmaps
+ln -s ../icons/hicolor/48x48/apps/$PRGNAM.png $PKG/usr/share/pixmaps/$PRGNAM.png
+
# man page written for this build (if nothing else, I need the practice).
mkdir -p $PKG/usr/man/man6
gzip -9c < $CWD/$PRGNAM.6 > $PKG/usr/man/man6/$PRGNAM.6.gz
@@ -86,4 +100,4 @@ cat $CWD/slack-desc > $PKG/install/slack-desc
cat $CWD/doinst.sh > $PKG/install/doinst.sh
cd $PKG
-/sbin/makepkg -l y -c n $OUTPUT/$PRGNAM-$VERSION-$ARCH-$BUILD$TAG.${PKGTYPE:-tgz}
+/sbin/makepkg -l y -c n $OUTPUT/$PRGNAM-$VERSION-$ARCH-$BUILD$TAG.$PKGTYPE
diff --git a/games/ostrichriders/ostrichriders.info b/games/ostrichriders/ostrichriders.info
index 55c2ef5875..bc11a1452a 100644
--- a/games/ostrichriders/ostrichriders.info
+++ b/games/ostrichriders/ostrichriders.info
@@ -7,4 +7,4 @@ DOWNLOAD_x86_64=""
MD5SUM_x86_64=""
REQUIRES="SFML"
MAINTAINER="B. Watson"
-EMAIL="yalhcru@gmail.com"
+EMAIL="urchlay@slackware.uk"
diff --git a/games/ovcc/README b/games/ovcc/README
new file mode 100644
index 0000000000..463031c30e
--- /dev/null
+++ b/games/ovcc/README
@@ -0,0 +1,11 @@
+ovcc (CoCo 3 emulator)
+
+ovcc is the portable and Open Virtual Color Computer, a cross-platform
+port of the Windows-only VCC emulator.
+
+ovcc is an accurate emulation of a "stock" Tandy Color Computer 3 (aka
+CoCo 3), just as you would have bought in a Radio Shack store or Tandy
+Computer Center in 1986-1992.
+
+The package includes the ROM images needed for all the emulated
+hardware.
diff --git a/games/ovcc/doinst.sh b/games/ovcc/doinst.sh
new file mode 100644
index 0000000000..65c7e2eeb9
--- /dev/null
+++ b/games/ovcc/doinst.sh
@@ -0,0 +1,9 @@
+if [ -x /usr/bin/update-desktop-database ]; then
+ /usr/bin/update-desktop-database -q usr/share/applications >/dev/null 2>&1
+fi
+
+if [ -e usr/share/icons/hicolor/icon-theme.cache ]; then
+ if [ -x /usr/bin/gtk-update-icon-cache ]; then
+ /usr/bin/gtk-update-icon-cache -f usr/share/icons/hicolor >/dev/null 2>&1
+ fi
+fi
diff --git a/games/ovcc/git2tarxz.sh b/games/ovcc/git2tarxz.sh
new file mode 100644
index 0000000000..b3d5c34daf
--- /dev/null
+++ b/games/ovcc/git2tarxz.sh
@@ -0,0 +1,66 @@
+#!/bin/sh
+
+# Create source tarball from git repo, with generated version number.
+
+# Takes one optional argument, which is the commit or tag to create a
+# tarball of. With no arg, HEAD is used.
+
+# Version number example: 0.0.1+20200227_ad7ec17
+
+# Notes:
+
+# Do not use this if you're packaging a release.
+
+# This script doesn't need to be run as root. It does need to be able
+# to write to the current directory it's run from.
+
+# Running this script twice for the same commit will NOT give identical
+# tarballs, even if the contents are identical. This is because tar
+# includes the current time in a newly-created tarball (plus there may
+# be other git-related reasons).
+
+# Once you've generated a tarball, you'll still need a place to host it.
+# Ask on the mailing list, if you don't have your own web server to
+# play with.
+
+## Config:
+# Github project and user names:
+PRGNAM=ovcc
+CLONE_URL=https://github.com/WallyZambotti/OVCC
+
+## End of config.
+
+set -e
+
+GITDIR=$( mktemp -dt $PRGNAM.git.XXXXXX )
+rm -rf $GITDIR
+git clone $CLONE_URL $GITDIR
+
+CWD="$( pwd )"
+cd $GITDIR
+
+if [ "$1" != "" ]; then
+ git reset --hard "$1" || exit 1
+fi
+
+GIT_SHA=$( git rev-parse --short HEAD )
+
+DATE=$( git log --date=format:%Y%m%d --format=%cd | head -1 )
+
+# ovcc doesn't use tags, but does have a version number, in the git log.
+LOGVER=1.6.0
+
+VERSION=$LOGVER+${DATE}_${GIT_SHA}
+
+rm -rf .git
+find . -name .gitignore -print0 | xargs -0 rm -f
+
+cd "$CWD"
+rm -rf $PRGNAM-$VERSION $PRGNAM-$VERSION.tar.xz
+mv $GITDIR $PRGNAM-$VERSION
+tar cvfJ $PRGNAM-$VERSION.tar.xz $PRGNAM-$VERSION
+
+echo
+echo "Created tarball: $PRGNAM-$VERSION.tar.xz"
+echo "VERSION=\"$VERSION\""
+echo "MD5SUM=\"$( md5sum $PRGNAM-$VERSION.tar.xz | cut -d' ' -f1 )\""
diff --git a/games/ovcc/ovcc.6 b/games/ovcc/ovcc.6
new file mode 100644
index 0000000000..24f282aa5a
--- /dev/null
+++ b/games/ovcc/ovcc.6
@@ -0,0 +1,145 @@
+.\" Man page generated from reStructuredText.
+.
+.
+.nr rst2man-indent-level 0
+.
+.de1 rstReportMargin
+\\$1 \\n[an-margin]
+level \\n[rst2man-indent-level]
+level margin: \\n[rst2man-indent\\n[rst2man-indent-level]]
+-
+\\n[rst2man-indent0]
+\\n[rst2man-indent1]
+\\n[rst2man-indent2]
+..
+.de1 INDENT
+.\" .rstReportMargin pre:
+. RS \\$1
+. nr rst2man-indent\\n[rst2man-indent-level] \\n[an-margin]
+. nr rst2man-indent-level +1
+.\" .rstReportMargin post:
+..
+.de UNINDENT
+. RE
+.\" indent \\n[an-margin]
+.\" old: \\n[rst2man-indent\\n[rst2man-indent-level]]
+.nr rst2man-indent-level -1
+.\" new: \\n[rst2man-indent\\n[rst2man-indent-level]]
+.in \\n[rst2man-indent\\n[rst2man-indent-level]]u
+..
+.TH "OVCC" 6 "2023-05-23" "1.6.0+20230510_f6c395c" "SlackBuilds.org"
+.SH NAME
+ovcc \- TRS-80 CoCo 3 emulator
+.\" RST source for ovcc(1) man page. Convert with:
+.
+.\" rst2man.py ovcc.rst > ovcc.6
+.
+.SH SYNOPSIS
+.sp
+\fBovcc\fP [\fIquickload\-file\fP]
+.SH DESCRIPTION
+.sp
+\fBovcc\fP is "the portable and open Virtual Color Computer", an emulator
+for the TRS\-80 Color Computer 3.
+.sp
+This man page documents \fBovcc\fP as packaged by SlackBuilds.org.
+.sp
+[\fIquickload\-file\fP] can be a cartridge ROM image (\fB*.rom\fP or \fB*.ccc\fP)
+or a binary executable (\fB*.bin\fP). If the file exists, it will be
+loaded into the emulator at startup and executed. The filename
+extensions are required, although they are case\-insensitive.
+.sp
+There are no other command\-line options.
+.SH KEYBOARD
+.sp
+The keyboard is laid out like the CoCo 3, meaning that e.g. the
+double\-quote is \fIShift\-2\fP\&.
+.sp
+While \fBovcc\fP is running, press \fIF12\fP for a list of keyboard commands.
+.SH DISK IMAGES
+.sp
+To use a disk image (\fB*.dsk\fP), first connect the floppy drive:
+select \fICartridge\fP \-> \fILoad Cart\fP \-> \fBlibfd502.so\fP\&. After doing
+this, the \fICartridge\fP menu will now have entries for 4 drives. Select
+\fIFD\-502 Drive 0\fP \-> \fIInsert\fP, then use the file selector to navigate
+to the disk image. If necessary, you can choose \fIFile\fP \-> \fIHard Reset\fP
+or press \fIF9\fP to reboot the Coco 3.
+.sp
+Note that it\(aqs easier to move or symlink the disk images into the
+\fB~/.ovcc\fP directory, since this is the default location for the file
+selector.
+.sp
+All the inserted media are remembered in the config file, so when
+you exit and re\-run \fBovcc\fP, the devices and disks will still be
+connected and loaded.
+.SH FILES
+.INDENT 0.0
+.TP
+.B /usr/games/ovcc
+Shell script wrapper, which sets up the per\-user working directory if
+needed, \fBchdir\fPs to it, and executes the real executable.
+.TP
+.B /usr/libexec/ovcc/ovcc
+The actual executable. Normally you don\(aqt want to call this directly.
+Since \fBovcc\fP was ported from Windows, it expects to find its config
+files, ROMs, and loadable modules in the directory it was launched from.
+.TP
+.B ~/.ovcc
+Per\-user working directory for \fBovcc\fP\&. If this dir doesn\(aqt exist, the
+\fBovcc\fP wrapper script will create it. Contents:
+.INDENT 7.0
+.TP
+.B Vcc.ini
+The config file. Human\-readable and (if you\(aqre careful), editable. However,
+the primary way to change the settings here is to use the graphical user
+interface. Any changes made there will be written to this file.
+.TP
+.B Vcc.ini_bck
+Backup of the config file, created whenever \fBovcc\fP is about to overwrite the
+config.
+.TP
+.B lib*.so
+Loadable modules which emulate various hardware that can be attached to the
+CoCo 3. In the GUI, you load these from the Cartridge menu. The standard
+floppy disk module is \fBlibfd502.so\fP\&. These are symlinks to the real files
+in the package.
+.sp
+For a description of each emulated device, see:
+.sp
+\fI\%https://raw.githubusercontent.com/VCCE/VCC/main/README.md\fP
+.TP
+.B *.rom
+ROM images.
+.sp
+\fBcoco3.rom\fP is automatically loaded when the emulator starts up.
+.sp
+\fBdisk11.rom\fP is loaded when the \fBlibfd502.so\fP module is loaded.
+.sp
+Other modules may require other ROM images (not included in the SBo package).
+.UNINDENT
+.UNINDENT
+.SH COPYRIGHT
+.sp
+See the file /usr/doc/ovcc\-1.6.0+20230510_f6c395c/README.md for license information.
+.SH AUTHORS
+.sp
+ovcc was ported from the original VCC by Joseph Forgione.
+.sp
+VCC was written by the VCC Developement Team.
+.sp
+This man page written for the SlackBuilds.org project
+by B. Watson, and is licensed under the WTFPL.
+.SH SEE ALSO
+.sp
+The ovcc homepage: \fI\%https://github.com/WallyZambotti/OVCC\fP
+.sp
+The original (Windows\-only) VCC homepage: \fI\%https://github.com/VCCE/VCC/\fP
+.sp
+The TRS\-80 Color Computer Archive, which has lots of software for TRS\-80
+CoCo machines, including the CoCo 3:
+.sp
+\fI\%https://colorcomputerarchive.com/\fP
+.sp
+\fBxroar\fP(6), which can emulate the Color Computer 2.
+.\" Generated by docutils manpage writer.
+.
diff --git a/games/ovcc/ovcc.SlackBuild b/games/ovcc/ovcc.SlackBuild
new file mode 100644
index 0000000000..4b97d3bfc9
--- /dev/null
+++ b/games/ovcc/ovcc.SlackBuild
@@ -0,0 +1,146 @@
+#!/bin/bash
+
+# Slackware build script for ovcc
+
+# Written by B. Watson (urchlay@slackware.uk)
+
+# Licensed under the WTFPL. See http://www.wtfpl.net/txt/copying/ for details.
+
+# This started out as a Windows app, it expects everything to be
+# in the current directory (its .ini file, ROMs, "paks" which are
+# loadable shared libs). So use a wrapper script to symlink up a dir
+# in the user's $HOME, and keep the real binary out of $PATH.
+
+cd $(dirname $0) ; CWD=$(pwd)
+
+PRGNAM=ovcc
+VERSION=${VERSION:-1.6.0+20230510_f6c395c}
+BUILD=${BUILD:-1}
+TAG=${TAG:-_SBo}
+PKGTYPE=${PKGTYPE:-tgz}
+
+if [ -z "$ARCH" ]; then
+ case "$( uname -m )" in
+ i?86) ARCH=i586 ;;
+ arm*) ARCH=arm ;;
+ *) ARCH=$( uname -m ) ;;
+ esac
+fi
+
+if [ ! -z "${PRINT_PACKAGE_NAME}" ]; then
+ echo "$PRGNAM-$VERSION-$ARCH-$BUILD$TAG.$PKGTYPE"
+ exit 0
+fi
+
+TMP=${TMP:-/tmp/SBo}
+PKG=$TMP/package-$PRGNAM
+OUTPUT=${OUTPUT:-/tmp}
+
+if [ "$ARCH" = "i586" ]; then
+ SLKCFLAGS="-O2 -march=i586 -mtune=i686"
+ LIBDIRSUFFIX=""
+elif [ "$ARCH" = "i686" ]; then
+ SLKCFLAGS="-O2 -march=i686 -mtune=i686"
+ LIBDIRSUFFIX=""
+elif [ "$ARCH" = "x86_64" ]; then
+ SLKCFLAGS="-O2 -fPIC"
+ LIBDIRSUFFIX="64"
+else
+ SLKCFLAGS="-O2"
+ LIBDIRSUFFIX=""
+fi
+
+set -e
+
+rm -rf $PKG
+mkdir -p $TMP $PKG $OUTPUT
+cd $TMP
+rm -rf $PRGNAM-$VERSION
+tar xvf $CWD/$PRGNAM-$VERSION.tar.xz
+cd $PRGNAM-$VERSION
+chown -R root:root .
+find -L . -perm /111 -a \! -perm 755 -a -exec chmod 755 {} \+ -o \
+ \! -perm /111 -a \! -perm 644 -a -exec chmod 644 {} \+
+
+# Do not trust precompiled stuff.
+rm -f testlib mpu/flt
+
+# Build everything stripped.
+sed -i '/^LDFLAGS /s|=|= -Wl,-s|' Makefile.common
+
+LIBDIR=/usr/lib$LIBDIRSUFFIX/$PRGNAM
+
+# Multiple Makefiles, no DESTDIR support.
+runmake() {
+ local destdir="$1"
+ [ -n "$1" ] && shift
+ make \
+ OPT="$SLKCFLAGS" \
+ prefix=$destdir/usr \
+ LIBDIR=$destdir/$LIBDIR \
+ EXEDIR=$destdir/usr/libexec/$PRGNAM \
+ "$@"
+}
+
+runmake
+runmake $PKG install
+
+# Shared libs are supposed to be +x.
+chmod 755 $PKG/usr/lib*/$PRGNAM/*.so
+
+# Wrapper script.
+mkdir -p $PKG/usr/games
+sed "s,@64@,$LIBDIRSUFFIX,g" $CWD/$PRGNAM.sh > $PKG/usr/games/$PRGNAM
+chmod +x $PKG/usr/games/$PRGNAM
+
+# ROMs. Same as what MAME/MESS uses.
+# from grepping the source, it needs these ROMs:
+# coco3.rom (coco3.zip; always required)
+# disk11.rom (coco3.zip; needed for libfd502.so)
+# rgbdos.rom (disk11.rom; needed for libharddisk.so, can be used by libfd502.so)
+# orch90.rom (coco_orch90.zip; liborch90.so)
+# hdbdwbck.rom (libbecker.so; coco3_hdb1.zip)
+
+unzip $CWD/coco3.zip -d $PKG/$LIBDIR
+unzip -p $CWD/coco_orch90.zip '*.ccc' > $PKG/$LIBDIR/orch90.rom
+unzip -p $CWD/coco3_hdb1.zip '*.rom' > $PKG/$LIBDIR/hdbdwbck.rom
+# Not 100% sure this is the correct ROM, but it seems to work:
+cat $CWD/disk11.rom > $PKG/$LIBDIR/rgbdos.rom
+
+# Icon converted from ovcc.app/Contents/Resources/Icon.icns. Use
+# adaptive resize because with plain -resize, the 16x16 and 22x22
+# icons are just a smear of grey. They still look awful though. But
+# upstream's windows icon (OVCC/CoCo/ovcc.ico) looks just as bad.
+for px in 16 22 32 48 64 96 128 256; do
+ size=${px}x${px}
+ dir=$PKG/usr/share/icons/hicolor/$size/apps
+ mkdir -p $dir
+ convert -adaptive-resize $size $CWD/$PRGNAM.png $dir/$PRGNAM.png
+done
+
+mkdir -p $PKG/usr/share/pixmaps
+ln -s ../icons/hicolor/48x48/apps/$PRGNAM.png $PKG/usr/share/pixmaps/$PRGNAM.png
+
+# man page by SlackBuild author. I wasn't going to do this, but I can't find
+# any documentation at all on actually using ovcc, so I had to trial-and-error.
+# Hopefully documenting my results will save someone some time.
+mkdir -p $PKG/usr/man/man6
+gzip -9c < $CWD/$PRGNAM.6 > $PKG/usr/man/man6/$PRGNAM.6.gz
+
+# .desktop file by SlackBuild author.
+mkdir -p $PKG/usr/share/applications
+cat $CWD/$PRGNAM.desktop > $PKG/usr/share/applications/$PRGNAM.desktop
+
+# Precious little documentation. README.md is mostly install instructions,
+# but it's all we have.
+PKGDOC=$PKG/usr/doc/$PRGNAM-$VERSION
+mkdir -p $PKGDOC
+cp -a README.md $PKGDOC
+cat $CWD/$PRGNAM.SlackBuild > $PKGDOC/$PRGNAM.SlackBuild
+
+mkdir -p $PKG/install
+cat $CWD/slack-desc > $PKG/install/slack-desc
+cat $CWD/doinst.sh > $PKG/install/doinst.sh
+
+cd $PKG
+/sbin/makepkg -l y -c n $OUTPUT/$PRGNAM-$VERSION-$ARCH-$BUILD$TAG.$PKGTYPE
diff --git a/games/ovcc/ovcc.desktop b/games/ovcc/ovcc.desktop
new file mode 100644
index 0000000000..a15a13c8ca
--- /dev/null
+++ b/games/ovcc/ovcc.desktop
@@ -0,0 +1,8 @@
+[Desktop Entry]
+Type=Application
+Name=ovcc
+Comment=TRS-80 CoCo III Emulator
+Exec=/usr/games/ovcc %F
+Icon=ovcc
+Terminal=false
+Categories=Game;Emulator;
diff --git a/games/ovcc/ovcc.info b/games/ovcc/ovcc.info
new file mode 100644
index 0000000000..b5e04059f4
--- /dev/null
+++ b/games/ovcc/ovcc.info
@@ -0,0 +1,18 @@
+PRGNAM="ovcc"
+VERSION="1.6.0+20230510_f6c395c"
+HOMEPAGE="https://github.com/WallyZambotti/OVCC"
+DOWNLOAD="https://slackware.uk/~urchlay/src/ovcc-1.6.0+20230510_f6c395c.tar.xz \
+ https://colorcomputerarchive.com/repo/ROMs/MAME-MESS/coco3.zip \
+ https://colorcomputerarchive.com/repo/ROMs/MAME-MESS/coco_orch90.zip \
+ https://colorcomputerarchive.com/repo/ROMs/RGBDOS/MESS/disk11.rom \
+ https://colorcomputerarchive.com/repo/ROMs/MAME-MESS/coco3_hdb1.zip"
+MD5SUM="5a151d00d8ce9a017a0f578d1ab2f435 \
+ 57edb0561a11265b8777ed76e5f37b79 \
+ 834aa159b22f79396bc5bb7ec91d71ed \
+ 196124f2e10da318e5d355814cfcaa2c \
+ 328277bb10f45ca9bdcf7789b4fef99f"
+DOWNLOAD_x86_64=""
+MD5SUM_x86_64=""
+REQUIRES="agar"
+MAINTAINER="B. Watson"
+EMAIL="urchlay@slackware.uk"
diff --git a/games/ovcc/ovcc.png b/games/ovcc/ovcc.png
new file mode 100644
index 0000000000..ef8a42f914
--- /dev/null
+++ b/games/ovcc/ovcc.png
Binary files differ
diff --git a/games/ovcc/ovcc.rst b/games/ovcc/ovcc.rst
new file mode 100644
index 0000000000..e1b95bc14f
--- /dev/null
+++ b/games/ovcc/ovcc.rst
@@ -0,0 +1,137 @@
+.. RST source for ovcc(1) man page. Convert with:
+.. rst2man.py ovcc.rst > ovcc.6
+
+.. |version| replace:: 1.6.0+20230510_f6c395c
+.. |date| date::
+
+====
+ovcc
+====
+
+----------------------
+TRS-80 CoCo 3 emulator
+----------------------
+
+:Manual section: 6
+:Manual group: SlackBuilds.org
+:Date: |date|
+:Version: |version|
+
+SYNOPSIS
+========
+
+**ovcc** [*quickload-file*]
+
+DESCRIPTION
+===========
+
+**ovcc** is "the portable and open Virtual Color Computer", an emulator
+for the TRS-80 Color Computer 3.
+
+This man page documents **ovcc** as packaged by SlackBuilds.org.
+
+[*quickload-file*] can be a cartridge ROM image (**\*.rom** or **\*.ccc**)
+or a binary executable (**\*.bin**). If the file exists, it will be
+loaded into the emulator at startup and executed. The filename
+extensions are required, although they are case-insensitive.
+
+There are no other command-line options.
+
+KEYBOARD
+========
+
+The keyboard is laid out like the CoCo 3, meaning that e.g. the
+double-quote is *Shift-2*.
+
+While **ovcc** is running, press *F12* for a list of keyboard commands.
+
+DISK IMAGES
+===========
+
+To use a disk image (**\*.dsk**), first connect the floppy drive:
+select *Cartridge* -> *Load Cart* -> **libfd502.so**. After doing
+this, the *Cartridge* menu will now have entries for 4 drives. Select
+*FD-502 Drive 0* -> *Insert*, then use the file selector to navigate
+to the disk image. If necessary, you can choose *File* -> *Hard Reset*
+or press *F9* to reboot the Coco 3.
+
+Note that it's easier to move or symlink the disk images into the
+**~/.ovcc** directory, since this is the default location for the file
+selector.
+
+All the inserted media are remembered in the config file, so when
+you exit and re-run **ovcc**, the devices and disks will still be
+connected and loaded.
+
+FILES
+=====
+
+/usr/games/ovcc
+ Shell script wrapper, which sets up the per-user working directory if
+ needed, **chdir**\s to it, and executes the real executable.
+
+/usr/libexec/ovcc/ovcc
+ The actual executable. Normally you don't want to call this directly.
+ Since **ovcc** was ported from Windows, it expects to find its config
+ files, ROMs, and loadable modules in the directory it was launched from.
+
+~/.ovcc
+ Per-user working directory for **ovcc**. If this dir doesn't exist, the
+ **ovcc** wrapper script will create it. Contents:
+
+ Vcc.ini
+ The config file. Human-readable and (if you're careful), editable. However,
+ the primary way to change the settings here is to use the graphical user
+ interface. Any changes made there will be written to this file.
+
+ Vcc.ini_bck
+ Backup of the config file, created whenever **ovcc** is about to overwrite the
+ config.
+
+ lib\*.so
+ Loadable modules which emulate various hardware that can be attached to the
+ CoCo 3. In the GUI, you load these from the Cartridge menu. The standard
+ floppy disk module is **libfd502.so**. These are symlinks to the real files
+ in the package.
+
+ For a description of each emulated device, see:
+
+ https://raw.githubusercontent.com/VCCE/VCC/main/README.md
+
+ \*.rom
+ ROM images.
+
+ **coco3.rom** is automatically loaded when the emulator starts up.
+
+ **disk11.rom** is loaded when the **libfd502.so** module is loaded.
+
+ Other modules may require other ROM images (not included in the SBo package).
+
+COPYRIGHT
+=========
+
+See the file /usr/doc/ovcc-|version|/README.md for license information.
+
+AUTHORS
+=======
+
+ovcc was ported from the original VCC by Joseph Forgione.
+
+VCC was written by the VCC Developement Team.
+
+This man page written for the SlackBuilds.org project
+by B. Watson, and is licensed under the WTFPL.
+
+SEE ALSO
+========
+
+The ovcc homepage: https://github.com/WallyZambotti/OVCC
+
+The original (Windows-only) VCC homepage: https://github.com/VCCE/VCC/
+
+The TRS-80 Color Computer Archive, which has lots of software for TRS-80
+CoCo machines, including the CoCo 3:
+
+https://colorcomputerarchive.com/
+
+**xroar**\(6), which can emulate the Color Computer 2.
diff --git a/games/ovcc/ovcc.sh b/games/ovcc/ovcc.sh
new file mode 100644
index 0000000000..bd4fd39cf8
--- /dev/null
+++ b/games/ovcc/ovcc.sh
@@ -0,0 +1,37 @@
+#!/bin/bash
+
+# wrapper script for ovcc, makes it play nicer with unixey systems.
+# it expects to find loadable media (ROMs and shared libs that emulate
+# peripherals) in the current dir, when it's run.
+
+PRGNAM=ovcc
+REALBIN=/usr/libexec/$PRGNAM/$PRGNAM
+USERDIR=~/.$PRGNAM
+LIBDIR=/usr/lib@64@/$PRGNAM
+
+# ovcc takes one optional argument, the name of a "quickload" file,
+# which must end in .rom, .ccc, or .bin. since we're changing
+# directories, we have to get the absolute path of the argument,
+# if present. yes, this works even with spaces in the filename.
+ARG="$1"
+if [ "$ARG" != "" ]; then
+ ARG="$( realpath "$ARG" )"
+fi
+
+set -e
+
+if [ ! -d $USERDIR ]; then
+ mkdir $USERDIR
+ cd $USERDIR
+ for i in $LIBDIR/*; do
+ ln -s $i $( basename $i )
+ done
+fi
+
+cd $USERDIR
+
+if [ "$ARG" = "" ]; then
+ exec $REALBIN
+else
+ exec $REALBIN "$ARG"
+fi
diff --git a/games/ovcc/slack-desc b/games/ovcc/slack-desc
new file mode 100644
index 0000000000..23e6d8c5b1
--- /dev/null
+++ b/games/ovcc/slack-desc
@@ -0,0 +1,19 @@
+# HOW TO EDIT THIS FILE:
+# The "handy ruler" below makes it easier to edit a package description.
+# Line up the first '|' above the ':' following the base package name, and
+# the '|' on the right side marks the last column you can put a character in.
+# You must make exactly 11 lines for the formatting to be correct. It's also
+# customary to leave one space after the ':' except on otherwise blank lines.
+
+ |-----handy-ruler------------------------------------------------------|
+ovcc: ovcc (CoCo 3 emulator)
+ovcc:
+ovcc: ovcc is the portable and Open Virtual Color Computer, a cross-platform
+ovcc: port of the Windows-only VCC emulator.
+ovcc:
+ovcc: ovcc is an accurate emulation of a "stock" Tandy Color Computer 3 (aka
+ovcc: CoCo 3), just as you would have bought in a Radio Shack store or Tandy
+ovcc: Computer Center in 1986-1992.
+ovcc:
+ovcc:
+ovcc:
diff --git a/games/pacman-arena/doinst.sh b/games/pacman-arena/doinst.sh
index 5fb28930db..3e5691a052 100644
--- a/games/pacman-arena/doinst.sh
+++ b/games/pacman-arena/doinst.sh
@@ -1,3 +1,9 @@
if [ -x /usr/bin/update-desktop-database ]; then
/usr/bin/update-desktop-database -q usr/share/applications >/dev/null 2>&1
fi
+
+if [ -e usr/share/icons/hicolor/icon-theme.cache ]; then
+ if [ -x /usr/bin/gtk-update-icon-cache ]; then
+ /usr/bin/gtk-update-icon-cache usr/share/icons/hicolor >/dev/null 2>&1
+ fi
+fi
diff --git a/games/pacman-arena/icons/128.png b/games/pacman-arena/icons/128.png
new file mode 100644
index 0000000000..7e3a7190b3
--- /dev/null
+++ b/games/pacman-arena/icons/128.png
Binary files differ
diff --git a/games/pacman-arena/icons/16.png b/games/pacman-arena/icons/16.png
new file mode 100644
index 0000000000..ae806049d1
--- /dev/null
+++ b/games/pacman-arena/icons/16.png
Binary files differ
diff --git a/games/pacman-arena/icons/32.png b/games/pacman-arena/icons/32.png
new file mode 100644
index 0000000000..2e016a6cd2
--- /dev/null
+++ b/games/pacman-arena/icons/32.png
Binary files differ
diff --git a/games/pacman-arena/icons/48.png b/games/pacman-arena/icons/48.png
new file mode 100644
index 0000000000..1b93feb5c0
--- /dev/null
+++ b/games/pacman-arena/icons/48.png
Binary files differ
diff --git a/games/pacman-arena/icons/64.png b/games/pacman-arena/icons/64.png
new file mode 100644
index 0000000000..cba660f267
--- /dev/null
+++ b/games/pacman-arena/icons/64.png
Binary files differ
diff --git a/games/pacman-arena/pacman-arena.6 b/games/pacman-arena/pacman-arena.6
new file mode 100644
index 0000000000..09d84c34f4
--- /dev/null
+++ b/games/pacman-arena/pacman-arena.6
@@ -0,0 +1,76 @@
+.\" Man page generated from reStructuredText.
+.
+.
+.nr rst2man-indent-level 0
+.
+.de1 rstReportMargin
+\\$1 \\n[an-margin]
+level \\n[rst2man-indent-level]
+level margin: \\n[rst2man-indent\\n[rst2man-indent-level]]
+-
+\\n[rst2man-indent0]
+\\n[rst2man-indent1]
+\\n[rst2man-indent2]
+..
+.de1 INDENT
+.\" .rstReportMargin pre:
+. RS \\$1
+. nr rst2man-indent\\n[rst2man-indent-level] \\n[an-margin]
+. nr rst2man-indent-level +1
+.\" .rstReportMargin post:
+..
+.de UNINDENT
+. RE
+.\" indent \\n[an-margin]
+.\" old: \\n[rst2man-indent\\n[rst2man-indent-level]]
+.nr rst2man-indent-level -1
+.\" new: \\n[rst2man-indent\\n[rst2man-indent-level]]
+.in \\n[rst2man-indent\\n[rst2man-indent-level]]u
+..
+.TH "PACMAN-ARENA" 6 "2021-10-20" "0.15" "SlackBuilds.org"
+.SH NAME
+pacman-arena \- 3d Pac-Man clone with explosions
+.\" RST source for pacman-arena(6) man page. Convert with:
+.
+.\" rst2man.py pacman-arena.rst > pacman-arena.6
+.
+.\" rst2man.py comes from the SBo development/docutils package.
+.
+.SH SYNOPSIS
+.sp
+pacman\-arena
+.SH DESCRIPTION
+.sp
+Pacman Arena is a Pacman clone in full 3D with a few surprises. Rockets,
+bombs and explosions abound.
+.sp
+There are no useful command\-line options or arguments.
+.\" yes, there are --server and --client, but they don't result
+.
+.\" in a multiplayer game. looks like the netplay code was never
+.
+.\" finished.
+.
+.SH CONTROLS
+.INDENT 0.0
+.TP
+.B \fIArrow keys\fP
+Move Pac\-man.
+.TP
+.B \fISpace\fP
+Launch a rocket.
+.TP
+.B \fIB\fP
+Drop a bomb.
+.UNINDENT
+.SH COPYRIGHT
+.sp
+See the file /usr/doc/PRGNAM\-0.15/COPYING for license information.
+.SH AUTHORS
+.sp
+pacman\-arena was written by Nuno Subtil.
+.sp
+This man page written for the SlackBuilds.org project
+by B. Watson, and is licensed under the WTFPL.
+.\" Generated by docutils manpage writer.
+.
diff --git a/games/pacman-arena/pacman-arena.SlackBuild b/games/pacman-arena/pacman-arena.SlackBuild
index 464d6691e8..f0266e595b 100644
--- a/games/pacman-arena/pacman-arena.SlackBuild
+++ b/games/pacman-arena/pacman-arena.SlackBuild
@@ -1,15 +1,23 @@
-#!/bin/sh
+#!/bin/bash
# Slackware build script for pacman-arena
-# Written by B. Watson (yalhcru@gmail.com)
+# Written by B. Watson (urchlay@slackware.uk)
# Licensed under the WTFPL. See http://www.wtfpl.net/txt/copying/ for details.
+# 20211020 bkw: BUILD=2
+# - fix -current build.
+# - new-style icons.
+# - man page.
+
+cd $(dirname $0) ; CWD=$(pwd)
+
PRGNAM=pacman-arena
VERSION=${VERSION:-0.15}
-BUILD=${BUILD:-1}
+BUILD=${BUILD:-2}
TAG=${TAG:-_SBo}
+PKGTYPE=${PKGTYPE:-tgz}
if [ -z "$ARCH" ]; then
case "$( uname -m )" in
@@ -19,7 +27,11 @@ if [ -z "$ARCH" ]; then
esac
fi
-CWD=$(pwd)
+if [ ! -z "${PRINT_PACKAGE_NAME}" ]; then
+ echo "$PRGNAM-$VERSION-$ARCH-$BUILD$TAG.$PKGTYPE"
+ exit 0
+fi
+
TMP=${TMP:-/tmp/SBo}
PKG=$TMP/package-$PRGNAM
OUTPUT=${OUTPUT:-/tmp}
@@ -53,14 +65,13 @@ tar xvf $CWD/$PRGNAM-$VERSION.tar.bz2
cd $SRCNAM
unzip $CWD/$DATAFILE
chown -R root:root .
-find -L . \
- \( -perm 777 -o -perm 775 -o -perm 750 -o -perm 711 -o -perm 555 \
- -o -perm 511 \) -exec chmod 755 {} \; -o \
- \( -perm 666 -o -perm 664 -o -perm 640 -o -perm 600 -o -perm 444 \
- -o -perm 440 -o -perm 400 \) -exec chmod 644 {} \;
+find -L . -perm /111 -a \! -perm 755 -a -exec chmod 755 {} \+ -o \
+ \! -perm /111 -a \! -perm 644 -a -exec chmod 644 {} \+
autoreconf -if
+SLKCFLAGS+=" -fcommon"
+
# I know we're supposed to use LIBS="-lm", but it doesn't work here.
LDFLAGS="-lm" \
CFLAGS="$SLKCFLAGS" \
@@ -92,17 +103,29 @@ mkdir -p $PKG/usr/doc/$PRGNAM-$VERSION
cp -a COPYING README $PKG/usr/doc/$PRGNAM-$VERSION
cat $CWD/$PRGNAM.SlackBuild > $PKG/usr/doc/$PRGNAM-$VERSION/$PRGNAM.SlackBuild
-# icon is a 32x32 chunk of gfx/pacman_arena1.tga edited with gimp.
+# icon made from a screenshot of the game. at 16x16, it just looks like noise.
+for i in $CWD/icons/*.png; do
+ px=$( basename $i | cut -d. -f1 )
+ size=${px}x${px}
+ dir=$PKG/usr/share/icons/hicolor/$size/apps
+ mkdir -p $dir
+ cat $i > $dir/$PRGNAM.png
+done
+
mkdir -p $PKG/usr/share/pixmaps
-cat $CWD/$PRGNAM.png > $PKG/usr/share/pixmaps/$PRGNAM.png
+ln -s ../icons/hicolor/48x48/apps/$PRGNAM.png $PKG/usr/share/pixmaps/$PRGNAM.png
# .desktop written for this build
mkdir -p $PKG/usr/share/applications
cat $CWD/$PRGNAM.desktop > $PKG/usr/share/applications/$PRGNAM.desktop
+# man page written for this build
+mkdir -p $PKG/usr/man/man6
+gzip -9c < $CWD/$PRGNAM.6 > $PKG/usr/man/man6/$PRGNAM.6.gz
+
mkdir -p $PKG/install
cat $CWD/slack-desc > $PKG/install/slack-desc
cat $CWD/doinst.sh > $PKG/install/doinst.sh
cd $PKG
-/sbin/makepkg -l y -c n $OUTPUT/$PRGNAM-$VERSION-$ARCH-$BUILD$TAG.${PKGTYPE:-tgz}
+/sbin/makepkg -l y -c n $OUTPUT/$PRGNAM-$VERSION-$ARCH-$BUILD$TAG.$PKGTYPE
diff --git a/games/pacman-arena/pacman-arena.desktop b/games/pacman-arena/pacman-arena.desktop
index 8b87e9b66f..49fefcd533 100644
--- a/games/pacman-arena/pacman-arena.desktop
+++ b/games/pacman-arena/pacman-arena.desktop
@@ -1,7 +1,7 @@
[Desktop Entry]
Name=Pac-Man Arena
Comment=3D Pac-Man with explosions
-Exec=pacman-arena
+Exec=/usr/games/pacman-arena
Icon=pacman-arena
Terminal=false
Type=Application
diff --git a/games/pacman-arena/pacman-arena.info b/games/pacman-arena/pacman-arena.info
index a2cebf47e5..a6599c766c 100644
--- a/games/pacman-arena/pacman-arena.info
+++ b/games/pacman-arena/pacman-arena.info
@@ -1,12 +1,12 @@
PRGNAM="pacman-arena"
VERSION="0.15"
-HOMEPAGE="http://pacmanarena.sourceforge.net/"
-DOWNLOAD="http://downloads.sourceforge.net/project/pacmanarena/pacmanarena/v0.0/pacman-arena-0.15.tar.bz2 \
- http://downloads.sourceforge.net/project/pacmanarena/pacmanarena/v0.0/pacman-data-0.0.zip"
+HOMEPAGE="https://sourceforge.net/projects/pacmanarena/"
+DOWNLOAD="https://downloads.sourceforge.net/project/pacmanarena/pacmanarena/v0.0/pacman-arena-0.15.tar.bz2 \
+ https://downloads.sourceforge.net/project/pacmanarena/pacmanarena/v0.0/pacman-data-0.0.zip"
MD5SUM="4ff7e55810838fd81f966b76340b0103 \
876b7bf02bbe26aab47c5aeee26b2be6"
DOWNLOAD_x86_64=""
MD5SUM_x86_64=""
REQUIRES=""
MAINTAINER="B. Watson"
-EMAIL="yalhcru@gmail.com"
+EMAIL="urchlay@slackware.uk"
diff --git a/games/pacman-arena/pacman-arena.png b/games/pacman-arena/pacman-arena.png
deleted file mode 100644
index ac20564914..0000000000
--- a/games/pacman-arena/pacman-arena.png
+++ /dev/null
Binary files differ
diff --git a/games/pacman-arena/pacman-arena.rst b/games/pacman-arena/pacman-arena.rst
new file mode 100644
index 0000000000..50c405f094
--- /dev/null
+++ b/games/pacman-arena/pacman-arena.rst
@@ -0,0 +1,62 @@
+.. RST source for pacman-arena(6) man page. Convert with:
+.. rst2man.py pacman-arena.rst > pacman-arena.6
+.. rst2man.py comes from the SBo development/docutils package.
+
+.. |version| replace:: 0.15
+.. |date| date::
+
+============
+pacman-arena
+============
+
+--------------------------------
+3d Pac-Man clone with explosions
+--------------------------------
+
+:Manual section: 6
+:Manual group: SlackBuilds.org
+:Date: |date|
+:Version: |version|
+
+SYNOPSIS
+========
+
+pacman-arena
+
+DESCRIPTION
+===========
+
+Pacman Arena is a Pacman clone in full 3D with a few surprises. Rockets,
+bombs and explosions abound.
+
+There are no useful command-line options or arguments.
+
+.. yes, there are --server and --client, but they don't result
+.. in a multiplayer game. looks like the netplay code was never
+.. finished.
+
+CONTROLS
+========
+
+*Arrow keys*
+ Move Pac-man.
+
+*Space*
+ Launch a rocket.
+
+*B*
+ Drop a bomb.
+
+
+COPYRIGHT
+=========
+
+See the file /usr/doc/PRGNAM-|version|/COPYING for license information.
+
+AUTHORS
+=======
+
+pacman-arena was written by Nuno Subtil.
+
+This man page written for the SlackBuilds.org project
+by B. Watson, and is licensed under the WTFPL.
diff --git a/games/pacman/README b/games/pacman/README
index 541caa84c9..ed122646e9 100644
--- a/games/pacman/README
+++ b/games/pacman/README
@@ -1,6 +1,3 @@
This is a clone of the original pacman by Namco.
NOTE: this is NOT Arch Linux's pacman :^)
-
-If your CPU supports multithreading, you can pass NUMJOBS like so:
- $ NUMJOBS="-j$(nproc)" ./pacman.SlackBuild
diff --git a/games/pacman/pacman.SlackBuild b/games/pacman/pacman.SlackBuild
index ae5be6855b..8bcaae7a52 100644
--- a/games/pacman/pacman.SlackBuild
+++ b/games/pacman/pacman.SlackBuild
@@ -1,9 +1,9 @@
-#!/bin/sh
+#!/bin/bash
# Slackware build script for pacman
# Copyright 2018 Azure Zanculmarktum <zanculmarktum@gmail.com>
-# Copyright 2018 B. Watson <yalhcru@gmail.com>
+# Copyright 2018 B. Watson <urchlay@slackware.uk>
# All rights reserved.
#
# Redistribution and use of this script, with or without modification, is
@@ -32,10 +32,13 @@
# 20180924 azure:
# - add NUMJOBS on 'make'.
+cd $(dirname $0) ; CWD=$(pwd)
+
PRGNAM=pacman
VERSION=${VERSION:-0.9}
BUILD=${BUILD:-2}
TAG=${TAG:-_SBo}
+PKGTYPE=${PKGTYPE:-tgz}
if [ -z "$ARCH" ]; then
case "$( uname -m )" in
@@ -45,7 +48,14 @@ if [ -z "$ARCH" ]; then
esac
fi
-CWD=$(pwd)
+# If the variable PRINT_PACKAGE_NAME is set, then this script will report what
+# the name of the created package would be, and then exit. This information
+# could be useful to other scripts.
+if [ ! -z "${PRINT_PACKAGE_NAME}" ]; then
+ echo "$PRGNAM-$VERSION-$ARCH-$BUILD$TAG.$PKGTYPE"
+ exit 0
+fi
+
TMP=${TMP:-/tmp/SBo}
PKG=$TMP/package-$PRGNAM
OUTPUT=${OUTPUT:-/tmp}
@@ -94,7 +104,7 @@ CXXFLAGS="$SLKCFLAGS" \
--docdir=/usr/doc/$PRGNAM-$VERSION \
--build=$ARCH-slackware-linux
-make $NUMJOBS
+make
make install-strip DESTDIR=$PKG UPDATE_DESKTOP=echo
mkdir -p $PKG/usr/doc/$PRGNAM-$VERSION
@@ -106,4 +116,4 @@ cat $CWD/slack-desc > $PKG/install/slack-desc
cat $CWD/doinst.sh > $PKG/install/doinst.sh
cd $PKG
-/sbin/makepkg -l y -c n $OUTPUT/$PRGNAM-$VERSION-$ARCH-$BUILD$TAG.${PKGTYPE:-tgz}
+/sbin/makepkg -l y -c n $OUTPUT/$PRGNAM-$VERSION-$ARCH-$BUILD$TAG.$PKGTYPE
diff --git a/games/pacman/pacman.info b/games/pacman/pacman.info
index fb0169e418..f4e8329176 100644
--- a/games/pacman/pacman.info
+++ b/games/pacman/pacman.info
@@ -5,6 +5,6 @@ DOWNLOAD="https://github.com/ebuc99/pacman/archive/v0.9/pacman-0.9.tar.gz"
MD5SUM="5849fe31f76e47e1117da856593be3af"
DOWNLOAD_x86_64=""
MD5SUM_x86_64=""
-REQUIRES="SDL2 SDL2_image SDL2_ttf SDL2_mixer"
+REQUIRES=""
MAINTAINER="Azure Zanculmarktum"
EMAIL="zanculmarktum@gmail.com"
diff --git a/games/pangzero/pangzero.SlackBuild b/games/pangzero/pangzero.SlackBuild
index 3f24ae453a..56c12ffc19 100644
--- a/games/pangzero/pangzero.SlackBuild
+++ b/games/pangzero/pangzero.SlackBuild
@@ -1,8 +1,8 @@
-#!/bin/sh
+#!/bin/bash
# Slackware build script for pangzero
-# Written by B. Watson (yalhcru@gmail.com)
+# Written by B. Watson (urchlay@slackware.uk)
# Licensed under the WTFPL. See http://www.wtfpl.net/txt/copying/ for details.
@@ -12,15 +12,25 @@
# patches. Note that DEBREV specifies the Debian revision number (i.e. the
# last component of the name of the .debian.tar.xz file).
+# 20211020 bkw: there's a -5 debian rev now, but nothing new for us.
+# it's just debian-specific bookkeeping changes.
+
+cd $(dirname $0) ; CWD=$(pwd)
+
PRGNAM=pangzero
VERSION=${VERSION:-1.4.1+git20121103}
DEBREV=${DEBREV:-3}
BUILD=${BUILD:-1}
TAG=${TAG:-_SBo}
+PKGTYPE=${PKGTYPE:-tgz}
ARCH=noarch
-CWD=$(pwd)
+if [ ! -z "${PRINT_PACKAGE_NAME}" ]; then
+ echo "$PRGNAM-$VERSION-$ARCH-$BUILD$TAG.$PKGTYPE"
+ exit 0
+fi
+
TMP=${TMP:-/tmp/SBo}
PKG=$TMP/package-$PRGNAM
OUTPUT=${OUTPUT:-/tmp}
@@ -36,11 +46,8 @@ cd $PRGNAM-$VERSION
tar xvf $CWD/${PRGNAM}_$VERSION-$DEBREV.debian.tar.xz
chown -R root:root .
-find -L . \
- \( -perm 777 -o -perm 775 -o -perm 750 -o -perm 711 -o -perm 555 \
- -o -perm 511 \) -exec chmod 755 {} \; -o \
- \( -perm 666 -o -perm 664 -o -perm 640 -o -perm 600 -o -perm 444 \
- -o -perm 440 -o -perm 400 \) -exec chmod 644 {} \;
+find -L . -perm /111 -a \! -perm 755 -a -exec chmod 755 {} \+ -o \
+ \! -perm /111 -a \! -perm 644 -a -exec chmod 644 {} \+
for i in $( cat debian/patches/series ); do
patch -p1 < debian/patches/$i
@@ -80,4 +87,4 @@ cat $CWD/slack-desc > $PKG/install/slack-desc
cat $CWD/doinst.sh > $PKG/install/doinst.sh
cd $PKG
-/sbin/makepkg -l y -c n $OUTPUT/$PRGNAM-$VERSION-$ARCH-$BUILD$TAG.${PKGTYPE:-tgz}
+/sbin/makepkg -l y -c n $OUTPUT/$PRGNAM-$VERSION-$ARCH-$BUILD$TAG.$PKGTYPE
diff --git a/games/pangzero/pangzero.info b/games/pangzero/pangzero.info
index 5e97b08530..92aacae2a0 100644
--- a/games/pangzero/pangzero.info
+++ b/games/pangzero/pangzero.info
@@ -1,12 +1,12 @@
PRGNAM="pangzero"
VERSION="1.4.1+git20121103"
-HOMEPAGE="http://apocalypse.rulez.org/pangzero"
-DOWNLOAD="http://http.debian.net/debian/pool/main/p/pangzero/pangzero_1.4.1+git20121103.orig.tar.xz \
- http://http.debian.net/debian/pool/main/p/pangzero/pangzero_1.4.1+git20121103-3.debian.tar.xz"
+HOMEPAGE="https://packages.debian.org/sid/pangzero"
+DOWNLOAD="https://deb.debian.org/debian/pool/main/p/pangzero/pangzero_1.4.1+git20121103.orig.tar.xz \
+ https://slackware.uk/~urchlay/src/pangzero_1.4.1+git20121103-3.debian.tar.xz"
MD5SUM="71d356298400046a31e18ddf2e86d850 \
49dbb8aa42c7aeca75ca8584fdf7b593"
DOWNLOAD_x86_64=""
MD5SUM_x86_64=""
REQUIRES="perl-SDL"
MAINTAINER="B. Watson"
-EMAIL="yalhcru@gmail.com"
+EMAIL="urchlay@slackware.uk"
diff --git a/games/parallel-n64/README b/games/parallel-n64/README
deleted file mode 100644
index ef8b3ca241..0000000000
--- a/games/parallel-n64/README
+++ /dev/null
@@ -1,15 +0,0 @@
-Parallel-n64 is a cross-platform plugin-based N64 emulator which is
-capable of accurately playing many games.
-
-This package was previously called mupen64plus-libretro.
-
-Parallel-n64 optionally supports using OpenGL ES 2 instead of OpenGL
-which will require support in the libretro frontend, video card and
-driver. This can be done by building Mupen64Plus with:
- GLES=1 ./parallel-n64.SlackBuild
-
-Vulkan can be used instead of OpenGL which will require support in the
-libretro frontend, video card and driver.
-
-To build the debugging symbols use:
- DEBUG=1 ./parallel-n64.SlackBuild
diff --git a/games/parallel-n64/parallel-n64.SlackBuild b/games/parallel-n64/parallel-n64.SlackBuild
deleted file mode 100644
index 603d379de5..0000000000
--- a/games/parallel-n64/parallel-n64.SlackBuild
+++ /dev/null
@@ -1,99 +0,0 @@
-#!/bin/sh
-
-# Slackware build script for parallel-n64
-
-# Copyright 2017-2018 Hunter Sezen California, USA
-# All rights reserved.
-#
-# Redistribution and use of this script, with or without modification, is
-# permitted provided that the following conditions are met:
-#
-# 1. Redistributions of this script must retain the above copyright
-# notice, this list of conditions and the following disclaimer.
-#
-# THIS SOFTWARE IS PROVIDED BY THE AUTHOR "AS IS" AND ANY EXPRESS OR IMPLIED
-# WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE IMPLIED WARRANTIES OF
-# MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE ARE DISCLAIMED. IN NO
-# EVENT SHALL THE AUTHOR BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL,
-# SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT LIMITED TO,
-# PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, DATA, OR PROFITS;
-# OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY,
-# WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR
-# OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF THIS SOFTWARE, EVEN IF
-# ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
-
-PRGNAM=parallel-n64
-LIBNAM="$(printf %s $PRGNAM | tr - _)_libretro"
-VERSION=${VERSION:-2018.11.02_d4d8f47}
-BUILD=${BUILD:-1}
-TAG=${TAG:-_SBo}
-
-if [ -z "$ARCH" ]; then
- case "$( uname -m )" in
- i?86) ARCH=i586 ;;
- arm*) ARCH=arm ;;
- *) ARCH=$( uname -m ) ;;
- esac
-fi
-
-CWD=$(pwd)
-TMP=${TMP:-/tmp/SBo}
-PKG=$TMP/package-$PRGNAM
-OUTPUT=${OUTPUT:-/tmp}
-
-LIBDIRSUFFIX=
-[ "$ARCH" = x86_64 ] && LIBDIRSUFFIX=64
-
-set -eu
-
-rm -rf $PKG
-mkdir -p $TMP $PKG $OUTPUT
-cd $TMP
-rm -rf $PRGNAM-$VERSION
-tar xvf $CWD/$PRGNAM-$VERSION.tar.xz
-cd $PRGNAM-$VERSION
-chown -R root:root .
-find -L . \
- \( -perm 777 -o -perm 775 -o -perm 750 -o -perm 711 -o -perm 555 \
- -o -perm 511 \) -exec chmod 755 {} \; -o \
- \( -perm 666 -o -perm 664 -o -perm 640 -o -perm 600 -o -perm 444 \
- -o -perm 440 -o -perm 400 \) -exec chmod 644 {} \;
-
-[ "${DEBUG:=0}" != 0 ] && DEBUG=1 \
- LIBNAM="$(printf %s "$LIBNAM" | sed 's/_libretro/_debug_libretro/')"
-
-[ "${GLES:=0}" != 0 ] && GLES=1
-
-make \
- DEBUG=$DEBUG \
- HAVE_VULKAN_DEBUG=$DEBUG \
- FORCE_GLES=$GLES \
- GIT_VERSION="${VERSION#*_}"
-
-install -Dm0644 $LIBNAM.so $PKG/usr/lib${LIBDIRSUFFIX}/libretro/$LIBNAM.so
-install -Dm0644 $LIBNAM.info $PKG/usr/lib${LIBDIRSUFFIX}/libretro/info/$LIBNAM.info
-
-if [ $DEBUG = 0 ]; then
- find $PKG -print0 | xargs -0 file | grep -e "executable" -e "shared object" | grep ELF \
- | cut -f 1 -d : | xargs strip --strip-unneeded 2> /dev/null || true
-fi
-
-PLUGIN="glide2gl mupen64plus-core mupen64plus-rsp-* mupen64plus-video-paraLLEl mupen64plus-video-angrylion"
-DOCS="COPYING CREDITS.txt INSTALL LICENSES MAME* README.md README RELEASE todo!.txt"
-
-for DOCDIR in $PLUGIN; do
- mkdir -p $PKG/usr/doc/$PRGNAM-$VERSION/$DOCDIR
- for file in $DOCS; do
- if [ -f $DOCDIR/$file ]; then
- cp -a $DOCDIR/$file $PKG/usr/doc/$PRGNAM-$VERSION/$DOCDIR
- fi
- done
-done
-cp -a README.md $PKG/usr/doc/$PRGNAM-$VERSION
-cat $CWD/$PRGNAM.SlackBuild > $PKG/usr/doc/$PRGNAM-$VERSION/$PRGNAM.SlackBuild
-
-mkdir -p $PKG/install
-cat $CWD/slack-desc > $PKG/install/slack-desc
-
-cd $PKG
-/sbin/makepkg -l y -c n $OUTPUT/$PRGNAM-$VERSION-$ARCH-$BUILD$TAG.${PKGTYPE:-tgz}
diff --git a/games/parallel-n64/parallel-n64.info b/games/parallel-n64/parallel-n64.info
deleted file mode 100644
index bf456c87eb..0000000000
--- a/games/parallel-n64/parallel-n64.info
+++ /dev/null
@@ -1,10 +0,0 @@
-PRGNAM="parallel-n64"
-VERSION="2018.11.02_d4d8f47"
-HOMEPAGE="https://www.libretro.com/"
-DOWNLOAD="http://slackless.raccoons.tech/src/libretro/parallel-n64-2018.11.02_d4d8f47.tar.xz"
-MD5SUM="3b3c8b3e3478d53a5b6a2a708cb54449"
-DOWNLOAD_x86_64=""
-MD5SUM_x86_64=""
-REQUIRES="RetroArch"
-MAINTAINER="orphaned - no maintainer"
-EMAIL="nobody@nowhere.com"
diff --git a/games/parallel-n64/slack-desc b/games/parallel-n64/slack-desc
deleted file mode 100644
index 072a17a6f4..0000000000
--- a/games/parallel-n64/slack-desc
+++ /dev/null
@@ -1,19 +0,0 @@
-# HOW TO EDIT THIS FILE:
-# The "handy ruler" below makes it easier to edit a package description.
-# Line up the first '|' above the ':' following the base package name, and
-# the '|' on the right side marks the last column you can put a character in.
-# You must make exactly 11 lines for the formatting to be correct. It's also
-# customary to leave one space after the ':' except on otherwise blank lines.
-
- |-----handy-ruler------------------------------------------------------|
-parallel-n64: parallel-n64 (libretro port of Mupen64 Plus)
-parallel-n64:
-parallel-n64: Parallel-n64 is a cross-platform plugin-based Nintendo 64 emulator.
-parallel-n64:
-parallel-n64: Homepage: https://www.libretro.com/
-parallel-n64:
-parallel-n64:
-parallel-n64:
-parallel-n64:
-parallel-n64:
-parallel-n64:
diff --git a/games/pasang-emas/pasang-emas.SlackBuild b/games/pasang-emas/pasang-emas.SlackBuild
index aa7aa56887..dc5791ba67 100644
--- a/games/pasang-emas/pasang-emas.SlackBuild
+++ b/games/pasang-emas/pasang-emas.SlackBuild
@@ -1,4 +1,4 @@
-#!/bin/sh
+#!/bin/bash
# Slackware build script for pasang-emas
@@ -22,10 +22,13 @@
# OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF THIS SOFTWARE, EVEN IF
# ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
+cd $(dirname $0) ; CWD=$(pwd)
+
PRGNAM=pasang-emas
VERSION=${VERSION:-5.2.0}
BUILD=${BUILD:-1}
TAG=${TAG:-_SBo}
+PKGTYPE=${PKGTYPE:-tgz}
if [ -z "$ARCH" ]; then
case "$( uname -m )" in
@@ -35,7 +38,14 @@ if [ -z "$ARCH" ]; then
esac
fi
-CWD=$(pwd)
+# If the variable PRINT_PACKAGE_NAME is set, then this script will report what
+# the name of the created package would be, and then exit. This information
+# could be useful to other scripts.
+if [ ! -z "${PRINT_PACKAGE_NAME}" ]; then
+ echo "$PRGNAM-$VERSION-$ARCH-$BUILD$TAG.$PKGTYPE"
+ exit 0
+fi
+
TMP=${TMP:-/tmp/SBo}
PKG=$TMP/package-$PRGNAM
OUTPUT=${OUTPUT:-/tmp}
@@ -111,4 +121,4 @@ cat $CWD/slack-desc > $PKG/install/slack-desc
cat $CWD/doinst.sh > $PKG/install/doinst.sh
cd $PKG
-/sbin/makepkg -l y -c n $OUTPUT/$PRGNAM-$VERSION-$ARCH-$BUILD$TAG.${PKGTYPE:-tgz}
+/sbin/makepkg -l y -c n $OUTPUT/$PRGNAM-$VERSION-$ARCH-$BUILD$TAG.$PKGTYPE
diff --git a/games/pcgen/README b/games/pcgen/README
index 463923ea51..7a6075eca0 100644
--- a/games/pcgen/README
+++ b/games/pcgen/README
@@ -1,10 +1,8 @@
-PCGen helps you build characters for role-playing games like
-[Pathfinder](http://paizo.com/pathfinderRPG) and
-[D&D](http://dnd.wizards.com).
+PCGen helps you build characters for role-playing games like D&D
+(http://dnd.wizards.com) and Pathfinder (http://paizo.com/pathfinderRPG)
-It's like a character sheet that handles all the tricky and tedious
+It's a digital character sheet that handles all the tricky and tedious
parts of building characters. You can use it to build one character
for yourself, or to keep track of a dozen NPCs for a game world.
-PCGen is a volunteer project, so it's free of charge and always will
-be.
+This build is a binary repack, so it's available for x86_64 only.
diff --git a/games/pcgen/pcgen.SlackBuild b/games/pcgen/pcgen.SlackBuild
index 468ba9de78..4fdc5fa9b5 100644
--- a/games/pcgen/pcgen.SlackBuild
+++ b/games/pcgen/pcgen.SlackBuild
@@ -1,6 +1,6 @@
-#!/bin/sh
+#!/bin/bash
# Slackware build script for pcgen
-# Copyright 2017 klaatu @ member.fsf.org
+# Copyright 2017-22 klaatu @ member.fsf.org
#
# GNU All-Permissive License
# Copying and distribution of this file, with or without modification,
@@ -8,14 +8,43 @@
# notice and this notice are preserved. This file is offered as-is,
# without any warranty.
+# 20220505 bkw: Modified by SlackBuilds.org, BUILD=2:
+# - this is not noarch. force ARCH=x86_64, and warn user if on some other arch.
+# - reword README slightly.
+# - don't install windows .exe or .bat launcher.
+# - symlink executable to $PATH so command-line users can find it.
+# - strip binaries and libraries.
+
+cd $(dirname $0) ; CWD=$(pwd)
+
PRGNAM=pcgen
-VERSION=${VERSION:-"6.06.01"}
-BUILD=${BUILD:-1}
+VERSION=${VERSION:-"6.09.05"}
+BUILD=${BUILD:-2}
TAG=${TAG:-_SBo}
+PKGTYPE=${PKGTYPE:-tgz}
+
+ARCH="x86_64"
+
+if [ ! -z "${PRINT_PACKAGE_NAME}" ]; then
+ echo "$PRGNAM-$VERSION-$ARCH-$BUILD$TAG.$PKGTYPE"
+ exit 0
+fi
+
+U="$( uname -m )"
+if [ "$ARCH" != "$U" ]; then
+ cat <<EOF
+*********************************************************************
+$0: building $ARCH package on a $U system.
-ARCH="noarch"
+The package will work if you install it on a $ARCH system, but not
+on this system.
+
+Press ^C within 10 seconds to abort.
+*********************************************************************
+EOF
+ sleep 10
+fi
-CWD=$(pwd)
TMP=${TMP:-/tmp/SBo}
PKG=$TMP/package-$PRGNAM
OUTPUT=${OUTPUT:-/tmp}
@@ -27,26 +56,40 @@ mkdir -p $TMP $PKG $OUTPUT
cd $TMP
rm -rf $PRGNAM-$VERSION
mkdir $PRGNAM-$VERSION
-unzip $CWD/"$PRGNAM"-"$VERSION"-full.zip -d $PRGNAM-$VERSION
+unzip $CWD/image-linux-x64.zip -d $PRGNAM-$VERSION
cd $PRGNAM-$VERSION
+
chown -R root:root .
find -L . \
\( -perm 777 -o -perm 775 -o -perm 750 -o -perm 711 -o -perm 555 \
- -o -perm 511 \) -exec chmod 755 {} \; -o \
+ -o -perm 511 \) -exec chmod 755 {} \+ -o \
\( -perm 666 -o -perm 664 -o -perm 640 -o -perm 600 -o -perm 444 \
- -o -perm 440 -o -perm 400 \) -exec chmod 644 {} \;
+ -o -perm 440 -o -perm 400 \) -exec chmod 644 {} \+
mkdir -p $PKG/opt/
-mv $PRGNAM $PKG/opt/$PRGNAM
+mv $PRGNAM-linux-x64 $PKG/opt/$PRGNAM
+
+# fix launcher script
+cd $PKG/opt/$PRGNAM
+patch < $CWD/pcgen.patch
-# patch for launcher
-tr -d '\r' < $PKG/opt/$PRGNAM/$PRGNAM.sh > $PKG/opt/$PRGNAM/$PRGNAM-launch.sh
-mv $PKG/opt/$PRGNAM/$PRGNAM-launch.sh $PKG/opt/$PRGNAM/$PRGNAM.sh
+# 20220505 bkw: do not need windows stuff:
+rm -f *.exe *.bat
# desktop file, added to SlackBuild for convenience
mkdir -p $PKG/usr/share/applications/
cp $CWD/$PRGNAM.desktop $PKG/usr/share/applications/
+# 20220505 bkw: symlink to somewhere that's normally in $PATH. not
+# everyone uses a desktop environment with a start menu.
+mkdir -p $PKG/usr/games
+ln -s ../../opt/$PRGNAM/$PRGNAM $PKG/usr/games/$PRGNAM
+
+# 20220505 bkw: shipped bins/libs aren't stripped, but stripping
+# them does no harm.
+find $PKG -print0 | xargs -0 file | grep -e "executable" -e "shared object" | grep ELF \
+ | cut -f 1 -d : | xargs strip --strip-unneeded 2> /dev/null || true
+
mkdir -p $PKG/usr/doc/$PRGNAM-$VERSION/
cat $CWD/$PRGNAM.SlackBuild > $PKG/usr/doc/$PRGNAM-$VERSION/$PRGNAM.SlackBuild
@@ -55,4 +98,4 @@ cat $CWD/slack-desc > $PKG/install/slack-desc
cat $CWD/doinst.sh > $PKG/install/doinst.sh
cd $PKG
-/sbin/makepkg -l y -c n $OUTPUT/$PRGNAM-$VERSION-$ARCH-$BUILD$TAG.${PKGTYPE:-tgz}
+/sbin/makepkg -l y -c n $OUTPUT/$PRGNAM-$VERSION-$ARCH-$BUILD$TAG.$PKGTYPE
diff --git a/games/pcgen/pcgen.desktop b/games/pcgen/pcgen.desktop
index 10135b3412..3da50e6f75 100644
--- a/games/pcgen/pcgen.desktop
+++ b/games/pcgen/pcgen.desktop
@@ -67,8 +67,8 @@ Name[wa]=pcgen
Name[x-test]=xxpcgenxx
Name[zh_CN]=pcgen
Name[zh_TW]=pcgen
-Exec=sh /opt/pcgen/pcgen.sh
-Icon=/opt/pcgen/system/sponsors/pcgen/pcgen_128x128.png
+Exec=/opt/pcgen/pcgen
+Icon=/opt/pcgen/system/icons/pcgen_128x128.png
Type=Application
Categories=Java;Game;BoardGame;
GenericName=PCGen
diff --git a/games/pcgen/pcgen.info b/games/pcgen/pcgen.info
index 7dc60627b5..cc13834e80 100644
--- a/games/pcgen/pcgen.info
+++ b/games/pcgen/pcgen.info
@@ -1,10 +1,10 @@
PRGNAM="pcgen"
-VERSION="6.06.01"
-HOMEPAGE="https://sourceforge.net/projects/pcgen/"
-DOWNLOAD="https://downloads.sourceforge.net/project/pcgen/PCGen%20Stable/6.06.01/pcgen-6.06.01-full.zip"
-MD5SUM="8ccdff5eed070afd478f3af522f54072"
-DOWNLOAD_x86_64=""
-MD5SUM_x86_64=""
-REQUIRES="jdk"
+VERSION="6.09.05"
+HOMEPAGE="http://pcgen.org"
+DOWNLOAD="UNSUPPORTED"
+MD5SUM=""
+DOWNLOAD_x86_64="https://github.com/PCGen/pcgen/releases/download/6.09.05/image-linux-x64.zip"
+MD5SUM_x86_64="43a3f0288b48d8a017c6c78edc55b469"
+REQUIRES=""
MAINTAINER="klaatu"
EMAIL="klaatu@member.fsf.org"
diff --git a/games/pcgen/pcgen.patch b/games/pcgen/pcgen.patch
new file mode 100644
index 0000000000..2bbdd907bd
--- /dev/null
+++ b/games/pcgen/pcgen.patch
@@ -0,0 +1,19 @@
+--- pcgen 2020-11-14 22:10:16.000000000 +1300
++++ pcgen-slackware 2022-03-06 19:54:07.786181861 +1300
+@@ -19,13 +19,13 @@
+ PRG=`dirname "$PRG"`"/$link"
+ fi
+ done
+-SAVED="`pwd`"
++SAVED="/opt/pcgen"
+ cd "`dirname \"$PRG\"`/" >/dev/null
+-APP_HOME="`pwd -P`"
++APP_HOME="/opt/pcgen"
+ cd "$SAVED" >/dev/null
+
+ APP_NAME="pcgen"
+-APP_BASE_NAME=`basename "$0"`
++APP_BASE_NAME=pcgen
+
+ # Add default JVM options here. You can also use JAVA_OPTS and PCGEN_OPTS to pass JVM options to this script.
+ DEFAULT_JVM_OPTS='"-Dsun.java2d.d3d=false"'
diff --git a/games/pcgen/slack-desc b/games/pcgen/slack-desc
index e757b7901c..0f3fa97622 100644
--- a/games/pcgen/slack-desc
+++ b/games/pcgen/slack-desc
@@ -8,8 +8,8 @@
|-----handy-ruler------------------------------------------------------|
pcgen: pcgen (RPG character generator)
pcgen:
-pcgen: PCGen is a character creator and tracking application for Pathfinder
-pcgen: and Dungeons & Dragons role-playing games (RPG).
+pcgen: PCGen is a character creator and tracking application for Pathfinder,
+pcgen: Dungeons & Dragons, and similar role-playing games (RPG).
pcgen:
pcgen: http://pcgen.org
pcgen:
diff --git a/games/pcsx-rearmed/pcsx-rearmed.SlackBuild b/games/pcsx-rearmed/pcsx-rearmed.SlackBuild
index 4c2cc1cd1d..114f966ca9 100644
--- a/games/pcsx-rearmed/pcsx-rearmed.SlackBuild
+++ b/games/pcsx-rearmed/pcsx-rearmed.SlackBuild
@@ -1,9 +1,9 @@
-#!/bin/sh
+#!/bin/bash
# Slackware build script for PCSX-ReARMed
# Copyright 2016-2018 Hunter Sezen
-# Copyright 20120 ilmich < ardutu at gmail dot com >
+# Copyright 2022 ilmich < ardutu at gmail dot com >
# All rights reserved.
#
# Redistribution and use of this script, with or without modification, is
@@ -23,11 +23,15 @@
# OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF THIS SOFTWARE, EVEN IF
# ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
+cd $(dirname $0) ; CWD=$(pwd)
+
PRGNAM=pcsx-rearmed
-LIBNAM=pcsx_rearmed_libretro
-VERSION=${VERSION:-2020.10.11_19b9695}
+LIBNAM=${PRGNAM/-/_}_libretro
+VERSION=${VERSION:-2022.09.16_c494049}
+COMMIT=c494049cafad80fba4c3c372a0ce761929b63f7a
BUILD=${BUILD:-1}
TAG=${TAG:-_SBo}
+PKGTYPE=${PKGTYPE:-tgz}
if [ -z "$ARCH" ]; then
case "$( uname -m )" in
@@ -37,7 +41,11 @@ if [ -z "$ARCH" ]; then
esac
fi
-CWD=$(pwd)
+if [ ! -z "${PRINT_PACKAGE_NAME}" ]; then
+ echo "$PRGNAM-$VERSION-$ARCH-$BUILD$TAG.$PKGTYPE"
+ exit 0
+fi
+
TMP=${TMP:-/tmp/SBo}
PKG=$TMP/package-$PRGNAM
OUTPUT=${OUTPUT:-/tmp}
@@ -50,9 +58,9 @@ set -eu
rm -rf $PKG
mkdir -p $TMP $PKG $OUTPUT
cd $TMP
-rm -rf $PRGNAM-$VERSION
-tar xvf $CWD/$PRGNAM-$VERSION.tar.xz
-cd $PRGNAM-$VERSION
+rm -rf ${PRGNAM/-/_}-$COMMIT
+tar xvf $CWD/${PRGNAM/-/_}-$COMMIT.tar.gz
+cd ${PRGNAM/-/_}-$COMMIT
chown -R root:root .
find -L . \
\( -perm 777 -o -perm 775 -o -perm 750 -o -perm 711 -o -perm 555 \
@@ -65,7 +73,7 @@ find -L . \
make -f Makefile.libretro DEBUG=$DEBUG
install -Dm0644 $LIBNAM.so $PKG/usr/lib${LIBDIRSUFFIX}/libretro/$LIBNAM.so
-install -Dm0644 $LIBNAM.info $PKG/usr/lib${LIBDIRSUFFIX}/libretro/info/$LIBNAM.info
+install -Dm0644 $CWD/$PRGNAM.info $PKG/usr/lib${LIBDIRSUFFIX}/libretro/info/$LIBNAM.info
if [ $DEBUG = 0 ]; then
find $PKG -print0 | xargs -0 file | grep -e "executable" -e "shared object" | grep ELF \
@@ -80,4 +88,4 @@ mkdir -p $PKG/install
cat $CWD/slack-desc > $PKG/install/slack-desc
cd $PKG
-/sbin/makepkg -l y -c n $OUTPUT/$PRGNAM-$VERSION-$ARCH-$BUILD$TAG.${PKGTYPE:-tgz}
+/sbin/makepkg -l y -c n $OUTPUT/$PRGNAM-$VERSION-$ARCH-$BUILD$TAG.$PKGTYPE
diff --git a/games/pcsx-rearmed/pcsx-rearmed.info b/games/pcsx-rearmed/pcsx-rearmed.info
index ebaf846cbf..7661eb2b3d 100644
--- a/games/pcsx-rearmed/pcsx-rearmed.info
+++ b/games/pcsx-rearmed/pcsx-rearmed.info
@@ -1,8 +1,8 @@
PRGNAM="pcsx-rearmed"
-VERSION="2020.10.11_19b9695"
+VERSION="2022.09.16_c494049"
HOMEPAGE="https://www.libretro.com/"
-DOWNLOAD="https://ilmich.github.io/src/pcsx-rearmed-2020.10.11_19b9695.tar.xz"
-MD5SUM="ebc27a8ca62674bd9a5b2e605e4276d6"
+DOWNLOAD="https://github.com/libretro/pcsx_rearmed/archive/c494049/pcsx_rearmed-c494049cafad80fba4c3c372a0ce761929b63f7a.tar.gz"
+MD5SUM="626686994ef73ade154fce5a88421b6f"
DOWNLOAD_x86_64=""
MD5SUM_x86_64=""
REQUIRES="RetroArch"
diff --git a/games/pcsx2/README b/games/pcsx2/README
index f7af9b09c6..b8bf7b2e1a 100644
--- a/games/pcsx2/README
+++ b/games/pcsx2/README
@@ -1,27 +1,16 @@
-PCSX2 is an open source Playstation 2 emulator. Its purpose is to
-mimic the PS2 hardware, using a combination of MIPS CPU Interpreters,
-Recompilers and a Virtual Machine which manages hardware states and PS2
-system memory.
+PCSX2 is a free and open-source PlayStation 2 (PS2) emulator. Its
+purpose is to emulate the PS2's hardware, using a combination of MIPS
+CPU Interpreters, Recompilers and a Virtual Machine which manages
+hardware states and PS2 system memory. This allows you to play PS2
+games on your PC, with many additional features and benefits.
-portaudio is an optional dependency.
+PCSX2 requires a CPU that supports the SSE4.1 instruction set.
+Check your processor flags with lscpu for sse4_1.
-NOTE: This is buildable only on x86 32bit platforms and will require
-a PS2 bios dump to play games. For x86_64 64bit platforms multilib
-support will be needed including compat32 versions of SDL2, wxGTK3,
-soundtouch and optionally portaudio.
+PCSX2 requires a GPU that supports OpenGL 3.3 or Vulkan 1.1.
-PCSX2 offers experimental support for the EGL api instead of GLX. This
-can be used by building PCSX2 with:
- EGL_API=yes ./pcsx2.SlackBuild
+RetroAchievements are enabled by default, to disable this
+functionality, pass ACHIEVEMENTS=OFF to the build script.
-To build debugging symbols for PCSX2 use:
- DEBUG=yes ./pcsx2.SlackBuild
-
-Alternatively a devel build can be used:
- DEVEL=yes ./pcsx2.SlackBuild
-
-If a debug or devel build is used, asan support can also be built:
- ASAN=yes ./pcsx2.SlackBuild
-
-The following environment variable will be required to use asan:
- ASAN_OPTIONS=allow_user_segv_handler=1:abort_on_error=1
+Discord Rich Presence is disabled by default, to enable Discord
+functionality, pass DISCORD=ON to the build script.
diff --git a/games/pcsx2/doinst.sh b/games/pcsx2/doinst.sh
index 7fe767b718..262eb5a9e5 100644
--- a/games/pcsx2/doinst.sh
+++ b/games/pcsx2/doinst.sh
@@ -2,12 +2,13 @@ if [ -x /usr/bin/update-desktop-database ]; then
/usr/bin/update-desktop-database -q usr/share/applications >/dev/null 2>&1
fi
-if [ -x /usr/bin/gdk-pixbuf-query-loaders ]; then
- if [ -d /usr/lib/gdk-pixbuf-2.0/2.10.0 ]; then
- /usr/bin/gdk-pixbuf-query-loaders > /usr/lib/gdk-pixbuf-2.0/2.10.0/loaders.cache
- fi
+if [ -x /usr/bin/update-mime-database ]; then
+ /usr/bin/update-mime-database usr/share/mime >/dev/null 2>&1
fi
-if [ -x /sbin/setcap ] && [ -f usr/bin/PCSX2 ]; then
- /sbin/setcap 'CAP_NET_RAW+eip CAP_NET_ADMIN+eip' usr/bin/PCSX2
+# If other icon themes are installed, then add to/modify this as needed
+if [ -e usr/share/icons/hicolor/icon-theme.cache ]; then
+ if [ -x /usr/bin/gtk-update-icon-cache ]; then
+ /usr/bin/gtk-update-icon-cache -f usr/share/icons/hicolor >/dev/null 2>&1
+ fi
fi
diff --git a/games/pcsx2/pcsx2.SlackBuild b/games/pcsx2/pcsx2.SlackBuild
index 6f8a6e67f2..e225fc106f 100644
--- a/games/pcsx2/pcsx2.SlackBuild
+++ b/games/pcsx2/pcsx2.SlackBuild
@@ -1,8 +1,8 @@
-#!/bin/sh
+#!/bin/bash
# Slackware build script for pcsx2
-# Copyright 2016-2018, 2020 Hunter Sezen California, USA
+# Copyright 2022-2024 Steven Voges <Oregon, USA>
# All rights reserved.
#
# Redistribution and use of this script, with or without modification, is
@@ -22,10 +22,24 @@
# OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF THIS SOFTWARE, EVEN IF
# ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
+cd $(dirname $0) ; CWD=$(pwd)
+
PRGNAM=pcsx2
-VERSION=${VERSION:-1.6.0}
+VERSION=${VERSION:-1.7.3772}
+COMMIT=$(echo $VERSION | cut -c 5-)
+SRCVER=${SRCVER:-7cb22815e63df2def2f5e5d008ef1b91b895130a}
+FMT=${FMT:-a33701196adfad74917046096bf5a2aa0ab0bb50}
+GLSLANG=${GLSLANG:-c9706bdda0ac22b9856f1aa8261e5b9e15cd20c5}
+LIBCHDR=${LIBCHDR:-5de1a59019815ccdbba0fe07c71b31406d023248}
+RCHEEVOS=${RCHEEVOS:-31f8788fe0e694e99db7ce138d45a655c556fa96}
+VULKANHEADERS=${VULKANHEADERS:-9f4c61a31435a7a90a314fc68aeb386c92a09c0f}
+ACHIEVEMENTS=$ACHIEVEMENTS=:-ON}
+DISCORD=${DISCORD:-OFF}
+QT=${QT:-OFF}
+WAYLAND=${WAYLAND:-ON}
BUILD=${BUILD:-1}
TAG=${TAG:-_SBo}
+PKGTYPE=${PKGTYPE:-tgz}
if [ -z "$ARCH" ]; then
case "$( uname -m )" in
@@ -35,33 +49,53 @@ if [ -z "$ARCH" ]; then
esac
fi
-CWD=$(pwd)
+if [ ! -z "${PRINT_PACKAGE_NAME}" ]; then
+ echo "$PRGNAM-$VERSION-$ARCH-$BUILD$TAG.$PKGTYPE"
+ exit 0
+fi
+
TMP=${TMP:-/tmp/SBo}
PKG=$TMP/package-$PRGNAM
OUTPUT=${OUTPUT:-/tmp}
+DEPS=$TMP/$PRGNAM-$SRCVER/3rdparty
if [ "$ARCH" = "i586" ]; then
SLKCFLAGS="-O2 -march=i586 -mtune=i686"
LIBDIRSUFFIX=""
elif [ "$ARCH" = "i686" ]; then
- SLKCFLAGS="-O2 -march=i686 -mtune=core2"
+ SLKCFLAGS="-O2 -march=i686 -mtune=i686"
LIBDIRSUFFIX=""
elif [ "$ARCH" = "x86_64" ]; then
- SLKCFLAGS="-O2"
+ SLKCFLAGS="-O2 -fPIC"
LIBDIRSUFFIX="64"
else
SLKCFLAGS="-O2"
LIBDIRSUFFIX=""
fi
-set -eu
+set -e
rm -rf $PKG
mkdir -p $TMP $PKG $OUTPUT
cd $TMP
-rm -rf $PRGNAM-$VERSION
-tar xvf $CWD/$PRGNAM-$VERSION.tar.gz
-cd $PRGNAM-$VERSION
+rm -rf $PRGNAM-$SRCVER
+tar xvf $CWD/$PRGNAM-$SRCVER.tar.gz
+cd $PRGNAM-$SRCVER
+
+tar xvf $CWD/fmt-$FMT.tar.gz -C \
+ $DEPS/fmt/fmt --strip-components 1
+tar xvf $CWD/glslang-$GLSLANG.tar.gz -C \
+ $DEPS/glslang/glslang --strip-components 1
+tar xvf $CWD/libchdr-$LIBCHDR.tar.gz -C \
+ $DEPS/libchdr/libchdr --strip-components 1
+tar xvf $CWD/rcheevos-$RCHEEVOS.tar.gz -C \
+ $DEPS/rcheevos/rcheevos --strip-components 1
+tar xvf $CWD/Vulkan-Headers-$VULKANHEADERS.tar.gz -C \
+ $DEPS/vulkan-headers --strip-components 1
+
+sed -i "s/#define PCSX2_VersionLo 0/#define PCSX2_VersionLo ${COMMIT}/g" \
+ pcsx2/SysForwardDefs.h
+
chown -R root:root .
find -L . \
\( -perm 777 -o -perm 775 -o -perm 750 -o -perm 711 -o -perm 555 \
@@ -69,89 +103,48 @@ find -L . \
\( -perm 666 -o -perm 664 -o -perm 640 -o -perm 600 -o -perm 444 \
-o -perm 440 -o -perm 400 \) -exec chmod 644 {} \;
-# pcsx2 does not support x86_64 yet and does
-# not plan to for the foreseeable future.
-BINDIR=; MULTILIB=
-if [ "$ARCH" = 'x86_64' ]; then
- BINDIR='/32'
- MULTILIB='-DCMAKE_TOOLCHAIN_FILE=cmake/linux-compiler-i386-multilib.cmake'
-fi
-
-RELEASE=Debug
-
-if [ "${DEVEL:-0}" != 0 ]; then
- DEBUG=1
- RELEASE=Devel
-fi
-
-if [ "${DEBUG:=0}" != 0 ]; then
- [ "${ASAN:=FALSE}" != FALSE ] && ASAN=TRUE
- SLKCFLAGS="$(printf %s "$SLKCFLAGS" | sed 's/-O2/-O0/')"
-else
- ASAN=FALSE
- RELEASE=Release
-fi
-
-[ "${EGL_API:=OFF}" != OFF ] && EGL_API=ON
-
-# Handle this in doinst.sh instead
-# https://github.com/PCSX2/pcsx2/issues/2699
-sed -i '/setcap/d' pcsx2/CMakeLists.txt
-
-# Use a font included with Slackware
-# osd error: 'Failed to init the freetype face'
-sed -i \
- 's|truetype/freefont/FreeSerif.ttf|TTF/LiberationSerif-Regular.ttf|' \
- plugins/GSdx/GSdx.cpp
-
-# spu2-x: Make portaudio an optional dependency.
-# https://github.com/PCSX2/pcsx2/pull/3110
-# https://github.com/PCSX2/pcsx2/commit/84d090e2fde50c66b965b84c73abd9f04a1770dd
-patch -p1 < $CWD/portaudio.patch
-
mkdir -p build
cd build
cmake \
- -DCMAKE_C_FLAGS="$SLKCFLAGS" \
- -DCMAKE_CXX_FLAGS="$SLKCFLAGS" \
+ -Wno-dev \
+ -DCMAKE_C_FLAGS:STRING="$SLKCFLAGS" \
+ -DCMAKE_CXX_FLAGS:STRING="$SLKCFLAGS" \
-DCMAKE_INSTALL_PREFIX=/usr \
- -DDOC_DIR=/usr/doc/$PRGNAM-$VERSION \
- -DMAN_DIR=/usr/man \
- -DwxWidgets_CONFIG_EXECUTABLE=/usr/bin${BINDIR}/wx-config \
- -DwxWidgets_wxrc_EXECUTABLE=/usr/bin${BINDIR}/wxrc-3.0 \
- -DBUILD_REPLAY_LOADERS=TRUE \
- -DDISABLE_BUILD_DATE=ON \
- -DGSDX_LEGACY=ON \
+ -DCMAKE_BUILD_STRIP=ON \
+ -DDISABLE_PCSX2_WRAPPER=ON \
+ -DDISABLE_SETCAP=ON \
+ -DENABLE_TESTS=OFF \
-DPACKAGE_MODE=ON \
+ -DQT_BUILD=$QT \
+ -DUSE_ACHIEVEMENTS=$ACHIEVEMENTS \
+ -DUSE_DISCORD_PRESENCE=$DISCORD \
+ -DUSE_SYSTEM_FMT=OFF \
+ -DUSE_VULKAN=ON \
+ -DWAYLAND_API=$WAYLAND \
-DXDG_STD=ON \
- -DEGL_API=$EGL_API \
- -DUSE_ASAN=$ASAN \
- $MULTILIB \
- -DCMAKE_BUILD_TYPE=$RELEASE ..
+ -DCMAKE_BUILD_TYPE=Release ..
make
- make install DESTDIR=$PKG
+ make install/strip DESTDIR=$PKG
cd ..
-if [ "$DEBUG" = 0 ]; then
- find $PKG -print0 | xargs -0 file | grep -e "executable" -e "shared object" |
- grep ELF | cut -f 1 -d : | xargs strip --strip-unneeded 2> /dev/null || true
-fi
+find $PKG -print0 | xargs -0 file | grep -e "executable" -e "shared object" | grep ELF \
+ | cut -f 1 -d : | xargs strip --strip-unneeded 2> /dev/null || true
+mv $PKG/usr/share/man $PKG/usr/man
find $PKG/usr/man -type f -exec gzip -9 {} \;
for i in $( find $PKG/usr/man -type l ) ; do ln -s $( readlink $i ).gz $i.gz ; rm $i ; done
mkdir -p $PKG/usr/doc/$PRGNAM-$VERSION
-cp -a pcsx2/Docs/* bin/docs/*.html bin/docs/*.txt CONTRIBUTING.md COPYING* \
- README.md $PKG/usr/doc/$PRGNAM-$VERSION
+cp -a \
+ COPYING.* README.md \
+ $PKG/usr/doc/$PRGNAM-$VERSION
cat $CWD/$PRGNAM.SlackBuild > $PKG/usr/doc/$PRGNAM-$VERSION/$PRGNAM.SlackBuild
+mv $PKG/usr/share/doc/Pcsx2/* $PKG/usr/doc/$PRGNAM-$VERSION
+rm -r $PKG/usr/share/doc
mkdir -p $PKG/install
cat $CWD/slack-desc > $PKG/install/slack-desc
cat $CWD/doinst.sh > $PKG/install/doinst.sh
-# Fix doinst.sh for x86_64
-[ "$ARCH" != 'x86_64' ] ||
- sed -i 's|-loaders |-loaders-32 |' $PKG/install/doinst.sh
-
cd $PKG
-/sbin/makepkg -l y -c n $OUTPUT/$PRGNAM-$VERSION-$ARCH-$BUILD$TAG.${PKGTYPE:-tgz}
+/sbin/makepkg -l y -c n $OUTPUT/$PRGNAM-$VERSION-$ARCH-$BUILD$TAG.$PKGTYPE
diff --git a/games/pcsx2/pcsx2.info b/games/pcsx2/pcsx2.info
index 5f6122596b..ae3cfba4b6 100644
--- a/games/pcsx2/pcsx2.info
+++ b/games/pcsx2/pcsx2.info
@@ -1,10 +1,20 @@
PRGNAM="pcsx2"
-VERSION="1.6.0"
+VERSION="1.7.3772"
HOMEPAGE="https://pcsx2.net"
-DOWNLOAD="https://github.com/PCSX2/pcsx2/archive/v1.6.0/pcsx2-1.6.0.tar.gz"
-MD5SUM="51185d06f77b39df03e42fc68710c174"
-DOWNLOAD_x86_64="UNSUPPORTED"
-MD5SUM_x86_64=""
-REQUIRES="SDL2 wxGTK3 soundtouch"
-MAINTAINER="Hunter Sezen"
-EMAIL="orbea@riseup.net"
+DOWNLOAD="UNSUPPORTED"
+MD5SUM=""
+DOWNLOAD_x86_64="https://github.com/PCSX2/pcsx2/archive/7cb22815e63df2def2f5e5d008ef1b91b895130a/pcsx2-7cb22815e63df2def2f5e5d008ef1b91b895130a.tar.gz \
+ https://github.com/KhronosGroup/Vulkan-Headers/archive/9f4c61a31435a7a90a314fc68aeb386c92a09c0f/Vulkan-Headers-9f4c61a31435a7a90a314fc68aeb386c92a09c0f.tar.gz \
+ https://github.com/fmtlib/fmt/archive/a33701196adfad74917046096bf5a2aa0ab0bb50/fmt-a33701196adfad74917046096bf5a2aa0ab0bb50.tar.gz \
+ https://github.com/KhronosGroup/glslang/archive/c9706bdda0ac22b9856f1aa8261e5b9e15cd20c5/glslang-c9706bdda0ac22b9856f1aa8261e5b9e15cd20c5.tar.gz \
+ https://github.com/rtissera/libchdr/archive/5de1a59019815ccdbba0fe07c71b31406d023248/libchdr-5de1a59019815ccdbba0fe07c71b31406d023248.tar.gz \
+ https://github.com/RetroAchievements/rcheevos/archive/31f8788fe0e694e99db7ce138d45a655c556fa96/rcheevos-31f8788fe0e694e99db7ce138d45a655c556fa96.tar.gz"
+MD5SUM_x86_64="a9c767fd77587be7cec5c7932b772027 \
+ d3ccd22b8486dae09a44462b2f06b7e8 \
+ 5069920ee4e07003d7b135d0d477ced8 \
+ e2f744abeca9a55aa7e49e652a983ebd \
+ fc702efac9ba601156c27f7fc7055f98 \
+ cb03a7c28b5a9b184f609f2c9b0c6fae"
+REQUIRES="fast_float rapidyaml soundtouch wxWidgets zstd-cmake"
+MAINTAINER="Steven Voges"
+EMAIL="svoges.sbo@gmail.com"
diff --git a/games/pcsx2/portaudio.patch b/games/pcsx2/portaudio.patch
deleted file mode 100644
index e4194bc3b7..0000000000
--- a/games/pcsx2/portaudio.patch
+++ /dev/null
@@ -1,320 +0,0 @@
-From 84d090e2fde50c66b965b84c73abd9f04a1770dd Mon Sep 17 00:00:00 2001
-From: orbea <orbea@riseup.net>
-Date: Thu, 7 May 2020 15:31:48 +0000
-Subject: [PATCH] spu2-x: Make portaudio an optional dependency. (#3110)
-
-* spu2-x: Make portaudio an optional dependency.
-
-v2: Fix crash in the audio settings with SDL1 and without portaudio.
-
-* cmake: Add PORTAUDIO_API to disable portaudio support.
----
- build.sh | 4 +++-
- cmake/BuildParameters.cmake | 1 +
- cmake/SearchForStuff.cmake | 6 ++++--
- cmake/SelectPcsx2Plugins.cmake | 15 ++++++++-------
- plugins/spu2-x/src/CMakeLists.txt | 19 ++++++++++++++++---
- plugins/spu2-x/src/Linux/Config.cpp | 20 +++++++++++++++++++-
- plugins/spu2-x/src/SndOut.cpp | 2 ++
- plugins/spu2-x/src/SndOut.h | 2 ++
- 8 files changed, 55 insertions(+), 14 deletions(-)
-
-diff --git a/build.sh b/build.sh
-index e1bc256475..54b30e404e 100755
---- a/build.sh
-+++ b/build.sh
-@@ -213,6 +213,7 @@ for ARG in "$@"; do
- --pgo-optimize ) flags="$flags -DUSE_PGO_OPTIMIZE=TRUE" ;;
- --pgo-generate ) flags="$flags -DUSE_PGO_GENERATE=TRUE" ;;
- --no-dev9ghzdrk ) flags="$flags -DDISABLE_DEV9GHZDRK=TRUE" ;;
-+ --no-portaudio ) flags="$flags -DPORTAUDIO_API=FALSE" ;;
- --no-simd ) flags="$flags -DDISABLE_ADVANCE_SIMD=TRUE" ;;
- --no-trans ) flags="$flags -DNO_TRANSLATION=TRUE" ;;
- --cross-multilib ) flags="$flags -DCMAKE_TOOLCHAIN_FILE=$toolfile"; useCross=1; ;;
-@@ -244,7 +245,8 @@ for ARG in "$@"; do
- echo
- echo "** Distribution Compatibilities **"
- echo "--sdl12 : Build with SDL1.2 (requires if wx is linked against SDL1.2)"
-- echo "--no-dev9ghzdrk : Skip dev9ghzdrk. (Avoids needing escalated privileges to build.)"
-+ echo "--no-dev9ghzdrk : Skip dev9ghzdrk. (Avoids needing escalated privileges to build.)"
-+ echo "--no-portaudio : Skip portaudio for spu2x."
- echo
- echo "** Expert Developer option **"
- echo "--gtk3 : replace GTK2 by GTK3"
-diff --git a/cmake/BuildParameters.cmake b/cmake/BuildParameters.cmake
-index 235bdb8e59..83bab90dab 100644
---- a/cmake/BuildParameters.cmake
-+++ b/cmake/BuildParameters.cmake
-@@ -48,6 +48,7 @@ option(DISABLE_CHEATS_ZIP "Disable including the cheats_ws.zip file")
- option(DISABLE_PCSX2_WRAPPER "Disable including the PCSX2-linux.sh file")
- option(XDG_STD "Use XDG standard path instead of the standard PCSX2 path")
- option(EXTRA_PLUGINS "Build various 'extra' plugins")
-+option(PORTAUDIO_API "Build portaudio support on spu2x" ON)
- option(SDL2_API "Use SDL2 on spu2x and onepad (wxWidget mustn't be built with SDL1.2 support" ON)
- option(GTK3_API "Use GTK3 api (experimental/wxWidget must be built with GTK3 support)")
-
-diff --git a/cmake/SearchForStuff.cmake b/cmake/SearchForStuff.cmake
-index a062d457a3..50f8f5f3e8 100644
---- a/cmake/SearchForStuff.cmake
-+++ b/cmake/SearchForStuff.cmake
-@@ -105,7 +105,9 @@ endif()
- if(OPENCL_API)
- check_lib(OPENCL OpenCL CL/cl.hpp)
- endif()
--check_lib(PORTAUDIO portaudio portaudio.h pa_linux_alsa.h)
-+if(PORTAUDIO_API)
-+ check_lib(PORTAUDIO portaudio portaudio.h pa_linux_alsa.h)
-+endif()
- check_lib(SOUNDTOUCH SoundTouch soundtouch/SoundTouch.h)
-
- if(SDL2_API)
-@@ -227,4 +229,4 @@ if((GCC_VERSION VERSION_EQUAL "9.0" OR GCC_VERSION VERSION_GREATER "9.0") AND GC
- https://gitweb.gentoo.org/proj/gcc-patches.git/commit/?id=275ab714637a64672c6630cfd744af2c70957d5a
- Even with that patch, compiling with LTO may still segfault. Use at your own risk!
- This text being in a compile log in an open issue may cause it to be closed.")
--endif()
-\ No newline at end of file
-+endif()
-diff --git a/cmake/SelectPcsx2Plugins.cmake b/cmake/SelectPcsx2Plugins.cmake
-index 69d0e07b91..00bf22e6ca 100644
---- a/cmake/SelectPcsx2Plugins.cmake
-+++ b/cmake/SelectPcsx2Plugins.cmake
-@@ -7,7 +7,7 @@ set(msg_dep_cdvdgiga "check these libraries -> gtk2, libudev")
- set(msg_dep_zerogs "check these libraries -> glew, opengl, X11, nvidia-cg-toolkit (>=2.1)")
- set(msg_dep_gsdx "check these libraries -> opengl, png (>=1.2), zlib (>=1.2.4), X11, liblzma")
- set(msg_dep_onepad "check these libraries -> sdl2, X11, gtk2")
--set(msg_dep_spu2x "check these libraries -> soundtouch (>=1.5), alsa, portaudio (>=1.9), sdl (>=1.2) pcsx2 common libs")
-+set(msg_dep_spu2x "check these libraries -> soundtouch (>=1.5), alsa, portaudio (optional, >=1.9), sdl (>=1.2), pcsx2 common libs")
- set(msg_dep_zerospu2 "check these libraries -> soundtouch (>=1.5), alsa")
- set(msg_dep_dev "check these libraries -> gtk2, pcap, libxml2")
- if(GLSL_API)
-@@ -267,12 +267,13 @@ endif()
- # spu2-x
- #---------------------------------------
- # requires: -SoundTouch
--# -ALSA
--# -Portaudio
-+# -ALSA
- # -SDL
- # -common_libs
-+#
-+# optional: -Portaudio
- #---------------------------------------
--if((PORTAUDIO_FOUND AND SOUNDTOUCH_FOUND AND SDLn_FOUND AND common_libs)
-+if((SOUNDTOUCH_FOUND AND SDLn_FOUND AND common_libs)
- AND ((Linux AND ALSA_FOUND) OR (UNIX AND NOT Linux)))
- set(spu2-x TRUE)
- elseif(NOT EXISTS "${CMAKE_SOURCE_DIR}/plugins/spu2-x")
-@@ -287,8 +288,8 @@ endif()
- # zerospu2
- #---------------------------------------
- # requires: -SoundTouch
--# -ALSA
--# -PortAudio
-+# -ALSA
-+# -PortAudio
- #---------------------------------------
- if(EXTRA_PLUGINS)
- if(EXISTS "${CMAKE_SOURCE_DIR}/plugins/zerospu2" AND SOUNDTOUCH_FOUND AND ALSA_FOUND)
-@@ -312,4 +313,4 @@ if(GTKn_FOUND)
- set(USBnull TRUE)
- endif()
- #---------------------------------------
--#-------------------------------------------------------------------------------
-\ No newline at end of file
-+#-------------------------------------------------------------------------------
-diff --git a/plugins/spu2-x/src/CMakeLists.txt b/plugins/spu2-x/src/CMakeLists.txt
-index e4c7141287..d17538e33e 100644
---- a/plugins/spu2-x/src/CMakeLists.txt
-+++ b/plugins/spu2-x/src/CMakeLists.txt
-@@ -45,7 +45,6 @@ set(spu2xSources
- RegTable.cpp
- Reverb.cpp
- SndOut.cpp
-- SndOut_Portaudio.cpp
- SndOut_SDL.cpp
- spu2freeze.cpp
- Spu2replay.cpp
-@@ -111,7 +110,6 @@ else()
- include_directories(Linux)
- endif()
-
--
- set(spu2xFinalSources
- ${spu2xSources}
- ${spu2xHeaders}
-@@ -121,11 +119,26 @@ set(spu2xFinalSources
- set(spu2xFinalLibs
- Utilities_NO_TLS
- ${ALSA_LIBRARIES}
-- ${PORTAUDIO_LIBRARIES}
- ${GTK2_LIBRARIES}
- ${SOUNDTOUCH_LIBRARIES}
- )
-
-+if (PORTAUDIO_FOUND)
-+ set(spu2xFinalFlags
-+ ${spu2xFinalFlags}
-+ "-DSPU2X_PORTAUDIO"
-+ )
-+
-+ LIST(APPEND spu2xFinalSources
-+ SndOut_Portaudio.cpp
-+ )
-+
-+ set(spu2xFinalLibs
-+ ${spu2xFinalLibs}
-+ ${PORTAUDIO_LIBRARIES}
-+ )
-+endif()
-+
- if (SDL2_API)
- set(spu2xFinalLibs
- ${spu2xFinalLibs}
-diff --git a/plugins/spu2-x/src/Linux/Config.cpp b/plugins/spu2-x/src/Linux/Config.cpp
-index 998f9bd25a..96a9e7bc8b 100644
---- a/plugins/spu2-x/src/Linux/Config.cpp
-+++ b/plugins/spu2-x/src/Linux/Config.cpp
-@@ -76,7 +76,9 @@ bool _visual_debug_enabled = false; // windows only feature
- u32 OutputModule = 0;
- int SndOutLatencyMS = 300;
- int SynchMode = 0; // Time Stretch, Async or Disabled
-+#ifdef SPU2X_PORTAUDIO
- static u32 OutputAPI = 0;
-+#endif
- static u32 SdlOutputAPI = 0;
-
- int numSpeakers = 0;
-@@ -122,7 +124,7 @@ void ReadSettings()
-
- wxString temp;
-
--#if SDL_MAJOR_VERSION >= 2
-+#if SDL_MAJOR_VERSION >= 2 || !defined(SPU2X_PORTAUDIO)
- CfgReadStr(L"OUTPUT", L"Output_Module", temp, SDLOut->GetIdent());
- #else
- CfgReadStr(L"OUTPUT", L"Output_Module", temp, PortaudioOut->GetIdent());
-@@ -130,6 +132,7 @@ void ReadSettings()
- OutputModule = FindOutputModuleById(temp.c_str()); // find the driver index of this module
-
- // find current API
-+#ifdef SPU2X_PORTAUDIO
- #ifdef __linux__
- CfgReadStr(L"PORTAUDIO", L"HostApi", temp, L"ALSA");
- if (temp == L"OSS")
-@@ -142,6 +145,7 @@ void ReadSettings()
- CfgReadStr(L"PORTAUDIO", L"HostApi", temp, L"OSS");
- OutputAPI = 0; // L"OSS"
- #endif
-+#endif
-
- #ifdef __unix__
- CfgReadStr(L"SDL", L"HostApi", temp, L"pulseaudio");
-@@ -158,7 +162,9 @@ void ReadSettings()
- SndOutLatencyMS = CfgReadInt(L"OUTPUT", L"Latency", 300);
- SynchMode = CfgReadInt(L"OUTPUT", L"Synch_Mode", 0);
-
-+#ifdef SPU2X_PORTAUDIO
- PortaudioOut->ReadSettings();
-+#endif
- #ifdef __unix__
- SDLOut->ReadSettings();
- #endif
-@@ -209,7 +215,9 @@ void WriteSettings()
- CfgWriteInt(L"OUTPUT", L"Synch_Mode", SynchMode);
- CfgWriteInt(L"DEBUG", L"DelayCycles", delayCycles);
-
-+#ifdef SPU2X_PORTAUDIO
- PortaudioOut->WriteSettings();
-+#endif
- #ifdef __unix__
- SDLOut->WriteSettings();
- #endif
-@@ -273,7 +281,9 @@ void DisplayDialog()
-
- GtkWidget *output_frame, *output_box;
- GtkWidget *mod_label, *mod_box;
-+#ifdef SPU2X_PORTAUDIO
- GtkWidget *api_label, *api_box;
-+#endif
- #if SDL_MAJOR_VERSION >= 2
- GtkWidget *sdl_api_label, *sdl_api_box;
- #endif
-@@ -309,11 +319,14 @@ void DisplayDialog()
- mod_label = gtk_label_new("Module:");
- mod_box = gtk_combo_box_text_new();
- gtk_combo_box_text_append_text(GTK_COMBO_BOX_TEXT(mod_box), "0 - No Sound (Emulate SPU2 only)");
-+#ifdef SPU2X_PORTAUDIO
- gtk_combo_box_text_append_text(GTK_COMBO_BOX_TEXT(mod_box), "1 - PortAudio (Cross-platform)");
-+#endif
- gtk_combo_box_text_append_text(GTK_COMBO_BOX_TEXT(mod_box), "2 - SDL Audio (Recommended for PulseAudio)");
- //gtk_combo_box_text_append_text(GTK_COMBO_BOX_TEXT(mod_box), "3 - Alsa (probably doesn't work)");
- gtk_combo_box_set_active(GTK_COMBO_BOX(mod_box), OutputModule);
-
-+#ifdef SPU2X_PORTAUDIO
- api_label = gtk_label_new("PortAudio API:");
- api_box = gtk_combo_box_text_new();
- #ifdef __linux__
-@@ -325,6 +338,7 @@ void DisplayDialog()
- gtk_combo_box_text_append_text(GTK_COMBO_BOX_TEXT(api_box), "OSS");
- #endif
- gtk_combo_box_set_active(GTK_COMBO_BOX(api_box), OutputAPI);
-+#endif
-
- #if SDL_MAJOR_VERSION >= 2
- sdl_api_label = gtk_label_new("SDL API:");
-@@ -383,8 +397,10 @@ void DisplayDialog()
-
- gtk_container_add(GTK_CONTAINER(output_box), mod_label);
- gtk_container_add(GTK_CONTAINER(output_box), mod_box);
-+#ifdef SPU2X_PORTAUDIO
- gtk_container_add(GTK_CONTAINER(output_box), api_label);
- gtk_container_add(GTK_CONTAINER(output_box), api_box);
-+#endif
- #if SDL_MAJOR_VERSION >= 2
- gtk_container_add(GTK_CONTAINER(output_box), sdl_api_label);
- gtk_container_add(GTK_CONTAINER(output_box), sdl_api_box);
-@@ -430,6 +446,7 @@ void DisplayDialog()
- if (gtk_combo_box_get_active(GTK_COMBO_BOX(mod_box)) != -1)
- OutputModule = gtk_combo_box_get_active(GTK_COMBO_BOX(mod_box));
-
-+#ifdef SPU2X_PORTAUDIO
- if (gtk_combo_box_get_active(GTK_COMBO_BOX(api_box)) != -1) {
- OutputAPI = gtk_combo_box_get_active(GTK_COMBO_BOX(api_box));
- #ifdef __linux__
-@@ -456,6 +473,7 @@ void DisplayDialog()
- }
- #endif
- }
-+#endif
-
- #if SDL_MAJOR_VERSION >= 2
- if (gtk_combo_box_get_active(GTK_COMBO_BOX(sdl_api_box)) != -1) {
-diff --git a/plugins/spu2-x/src/SndOut.cpp b/plugins/spu2-x/src/SndOut.cpp
-index 7963b12b75..6d9d58c2b3 100644
---- a/plugins/spu2-x/src/SndOut.cpp
-+++ b/plugins/spu2-x/src/SndOut.cpp
-@@ -88,7 +88,9 @@ SndOutModule *mods[] =
- DSoundOut,
- WaveOut,
- #endif
-+#if defined(_WIN32) || defined(SPU2X_PORTAUDIO)
- PortaudioOut,
-+#endif
- #if defined(SPU2X_SDL) || defined(SPU2X_SDL2)
- SDLOut,
- #endif
-diff --git a/plugins/spu2-x/src/SndOut.h b/plugins/spu2-x/src/SndOut.h
-index ba84075aec..918d9d08ff 100644
---- a/plugins/spu2-x/src/SndOut.h
-+++ b/plugins/spu2-x/src/SndOut.h
-@@ -673,7 +673,9 @@ extern SndOutModule *DSoundOut;
- extern SndOutModule *XAudio2_27_Out;
- extern SndOutModule *XAudio2Out;
- #endif
-+#if defined(_WIN32) || defined(SPU2X_PORTAUDIO)
- extern SndOutModule *PortaudioOut;
-+#endif
- #if defined(SPU2X_SDL) || defined(SPU2X_SDL2)
- extern SndOutModule *const SDLOut;
- #endif
diff --git a/games/pcsx2/slack-desc b/games/pcsx2/slack-desc
index a8b81dc155..9de93c015d 100644
--- a/games/pcsx2/slack-desc
+++ b/games/pcsx2/slack-desc
@@ -6,12 +6,12 @@
# customary to leave one space after the ':' except on otherwise blank lines.
|-----handy-ruler------------------------------------------------------|
-pcsx2: pcsx2 (Playstation 2 emulator)
+pcsx2: pcsx2 (PlayStation 2 Emulator)
pcsx2:
-pcsx2: PCSX2 is a PlayStation 2 emulator for Windows and Linux, started by
-pcsx2: the same team that brought you PCSX (a Sony PlayStation 1 emulator).
+pcsx2: PCSX2 - The Playstation 2 Emulator
+pcsx2:
+pcsx2: Homepage: https://pcsx2.net
pcsx2:
-pcsx2: homepage: https://pcsx2.net
pcsx2:
pcsx2:
pcsx2:
diff --git a/games/pcsxr/patches/pcsxr-fix-uncompress2.patch b/games/pcsxr/patches/pcsxr-fix-uncompress2.patch
new file mode 100644
index 0000000000..17a69f9249
--- /dev/null
+++ b/games/pcsxr/patches/pcsxr-fix-uncompress2.patch
@@ -0,0 +1,21 @@
+diff -up a/pcsxr/libpcsxcore/cdriso.c.orig pcsxr/libpcsxcore/cdriso.c
+--- a/pcsxr/libpcsxcore/cdriso.c.orig 2019-06-30 19:54:58.013320015 -0500
++++ a/pcsxr/libpcsxcore/cdriso.c 2019-06-30 19:56:05.351320015 -0500
+@@ -913,7 +913,7 @@ static int cdread_sub_mixed(FILE *f, uns
+ return ret;
+ }
+
+-static int uncompress2(void *out, unsigned long *out_size, void *in, unsigned long in_size)
++static int uncompress2_internal(void *out, unsigned long *out_size, void *in, unsigned long in_size)
+ {
+ static z_stream z;
+ int ret = 0;
+@@ -992,7 +992,7 @@ static int cdread_compressed(FILE *f, un
+ if (is_compressed) {
+ cdbuffer_size_expect = sizeof(compr_img->buff_raw[0]) << compr_img->block_shift;
+ cdbuffer_size = cdbuffer_size_expect;
+- ret = uncompress2(compr_img->buff_raw[0], &cdbuffer_size, compr_img->buff_compressed, size);
++ ret = uncompress2_internal(compr_img->buff_raw[0], &cdbuffer_size, compr_img->buff_compressed, size);
+ if (ret != 0) {
+ SysPrintf("uncompress failed with %d for block %d, sector %d\n",
+ ret, block, sector);
diff --git a/games/pcsxr/patches/pcsxr-fix-undefined-operations.patch b/games/pcsxr/patches/pcsxr-fix-undefined-operations.patch
new file mode 100644
index 0000000000..229bf3d91f
--- /dev/null
+++ b/games/pcsxr/patches/pcsxr-fix-undefined-operations.patch
@@ -0,0 +1,193 @@
+diff --git a/pcsxr/plugins/peopsxgl/texture.c b/pcsxr/plugins/peopsxgl/texture.c
+index 8d8fb41b..0d313b97 100644
+--- a/pcsxr/plugins/peopsxgl/texture.c
++++ b/pcsxr/plugins/peopsxgl/texture.c
+@@ -1002,7 +1002,10 @@ void LoadStretchPackedWndTexturePage(int pageid, int mode, short cx, short cy)
+ if(ldy)
+ {ldy--;
+ for(TXU=g_x1;TXU<=g_x2;TXU++)
+- *ta++=*(ta-(g_x2-g_x1));
++ {
++ *ta=*(ta-(g_x2-g_x1));
++ ta++;
++ }
+ }
+ }
+
+@@ -1079,7 +1082,10 @@ void LoadStretchPackedWndTexturePage(int pageid, int mode, short cx, short cy)
+ if(ldy)
+ {ldy--;
+ for(TXU=g_x1;TXU<=g_x2;TXU++)
+- *ta++=*(ta-(g_x2-g_x1));
++ {
++ *ta=*(ta-(g_x2-g_x1));
++ ta++;
++ }
+ }
+
+ }
+@@ -1204,7 +1210,10 @@ void LoadStretchWndTexturePage(int pageid, int mode, short cx, short cy)
+ if(ldy)
+ {ldy--;
+ for(TXU=g_x1;TXU<=g_x2;TXU++)
+- *ta++=*(ta-(g_x2-g_x1));
++ {
++ *ta=*(ta-(g_x2-g_x1));
++ ta++;
++ }
+ }
+ }
+
+@@ -1288,7 +1297,10 @@ void LoadStretchWndTexturePage(int pageid, int mode, short cx, short cy)
+ if(ldy)
+ {ldy--;
+ for(TXU=g_x1;TXU<=g_x2;TXU++)
+- *ta++=*(ta-(g_x2-g_x1));
++ {
++ *ta=*(ta-(g_x2-g_x1));
++ ta++;
++ }
+ }
+
+ }
+@@ -2247,14 +2259,19 @@ GLuint LoadTextureMovie(void)
+ lu=*((uint32_t *)pD);pD+=3;
+ *ta++=XMBLUE(lu)|XMGREEN(lu)|XMRED(lu)|1;
+ }
+- *ta++=*(ta-1);
++ *ta=*(ta-1);
++ ta++;
+ }
+ if(b_Y)
+ {
+ dx=xrMovieArea.x1-xrMovieArea.x0+1;
+ for(row=xrMovieArea.x0;row<xrMovieArea.x1;row++)
+- *ta++=*(ta-dx);
+- *ta++=*(ta-1);
++ {
++ *ta=*(ta-dx);
++ ta++;
++ }
++ *ta=*(ta-1);
++ ta++;
+ }
+ }
+ else
+@@ -2273,7 +2290,10 @@ GLuint LoadTextureMovie(void)
+ {
+ dx=xrMovieArea.x1-xrMovieArea.x0;
+ for(row=xrMovieArea.x0;row<xrMovieArea.x1;row++)
+- *ta++=*(ta-dx);
++ {
++ *ta=*(ta-dx);
++ ta++;
++ }
+ }
+ }
+ }
+@@ -2296,14 +2316,19 @@ GLuint LoadTextureMovie(void)
+ *ta++=((c&0x1f)<<11)|((c&0x3e0)<<1)|((c&0x7c00)>>9)|1;
+ }
+
+- *ta++=*(ta-1);
++ *ta=*(ta-1);
++ ta++;
+ }
+ if(b_Y)
+ {
+ dx=xrMovieArea.x1-xrMovieArea.x0+1;
+ for(row=xrMovieArea.x0;row<xrMovieArea.x1;row++)
+- *ta++=*(ta-dx);
+- *ta++=*(ta-1);
++ {
++ *ta=*(ta-dx);
++ ta++;
++ }
++ *ta=*(ta-1);
++ ta++;
+ }
+ }
+ else
+@@ -2321,7 +2346,10 @@ GLuint LoadTextureMovie(void)
+ {
+ dx=xrMovieArea.x1-xrMovieArea.x0;
+ for(row=xrMovieArea.x0;row<xrMovieArea.x1;row++)
+- *ta++=*(ta-dx);
++ {
++ *ta=*(ta-dx);
++ ta++;
++ }
+ }
+ }
+ }
+@@ -2347,14 +2375,19 @@ GLuint LoadTextureMovie(void)
+ *ta++=*((uint32_t *)pD)|0xff000000;
+ pD+=3;
+ }
+- *ta++=*(ta-1);
++ *ta=*(ta-1);
++ ta++;
+ }
+ if(b_Y)
+ {
+ dx=xrMovieArea.x1-xrMovieArea.x0+1;
+ for(row=xrMovieArea.x0;row<xrMovieArea.x1;row++)
+- *ta++=*(ta-dx);
+- *ta++=*(ta-1);
++ {
++ *ta=*(ta-dx);
++ ta++;
++ }
++ *ta=*(ta-1);
++ ta++;
+ }
+ }
+ else
+@@ -2373,7 +2406,10 @@ GLuint LoadTextureMovie(void)
+ {
+ dx=xrMovieArea.x1-xrMovieArea.x0;
+ for(row=xrMovieArea.x0;row<xrMovieArea.x1;row++)
+- *ta++=*(ta-dx);
++ {
++ *ta=*(ta-dx);
++ ta++;
++ }
+ }
+ }
+ }
+@@ -2394,15 +2430,20 @@ GLuint LoadTextureMovie(void)
+ startxy=((1024)*column)+xrMovieArea.x0;
+ for(row=xrMovieArea.x0;row<xrMovieArea.x1;row++)
+ *ta++=LTCOL(psxVuw[startxy++]|0x8000);
+- *ta++=*(ta-1);
++ *ta=*(ta-1);
++ ta++;
+ }
+
+ if(b_Y)
+ {
+ dx=xrMovieArea.x1-xrMovieArea.x0+1;
+ for(row=xrMovieArea.x0;row<xrMovieArea.x1;row++)
+- *ta++=*(ta-dx);
+- *ta++=*(ta-1);
++ {
++ *ta=*(ta-dx);
++ ta++;
++ }
++ *ta=*(ta-1);
++ ta++;
+ }
+ }
+ else
+@@ -2418,7 +2459,10 @@ GLuint LoadTextureMovie(void)
+ {
+ dx=xrMovieArea.x1-xrMovieArea.x0;
+ for(row=xrMovieArea.x0;row<xrMovieArea.x1;row++)
+- *ta++=*(ta-dx);
++ {
++ *ta=*(ta-dx);
++ ta++;
++ }
+ }
+ }
+ }
diff --git a/games/pcsxr/patches/pcsxr-remove-assertion-64bit.patch b/games/pcsxr/patches/pcsxr-remove-assertion-64bit.patch
new file mode 100644
index 0000000000..352c8036c2
--- /dev/null
+++ b/games/pcsxr/patches/pcsxr-remove-assertion-64bit.patch
@@ -0,0 +1,12 @@
+diff --git a/pcsxr/libpcsxcore/ix86_64/ix86-64.c b/pcsxr/libpcsxcore/ix86_64/ix86-64.c
+index f48b742e..c69192e0 100644
+--- a/pcsxr/libpcsxcore/ix86_64/ix86-64.c
++++ b/pcsxr/libpcsxcore/ix86_64/ix86-64.c
+@@ -231,7 +231,6 @@ void x86SetJ8( u8* j8 )
+
+ if ( jump > 0x7f ) {
+ SysPrintf( "j8 greater than 0x7f!!\n" );
+- assert(0);
+ }
+ *j8 = (u8)jump;
+ }
diff --git a/games/pcsxr/pcsxr-fix-uncompress2.patch b/games/pcsxr/pcsxr-fix-uncompress2.patch
deleted file mode 100644
index 88f61da9f5..0000000000
--- a/games/pcsxr/pcsxr-fix-uncompress2.patch
+++ /dev/null
@@ -1,21 +0,0 @@
-diff -up pcsxr/libpcsxcore/cdriso.c.orig pcsxr/libpcsxcore/cdriso.c
---- pcsxr/libpcsxcore/cdriso.c.orig 2019-06-30 19:54:58.013320015 -0500
-+++ pcsxr/libpcsxcore/cdriso.c 2019-06-30 19:56:05.351320015 -0500
-@@ -913,7 +913,7 @@ static int cdread_sub_mixed(FILE *f, uns
- return ret;
- }
-
--static int uncompress2(void *out, unsigned long *out_size, void *in, unsigned long in_size)
-+static int uncompress2_internal(void *out, unsigned long *out_size, void *in, unsigned long in_size)
- {
- static z_stream z;
- int ret = 0;
-@@ -992,7 +992,7 @@ static int cdread_compressed(FILE *f, un
- if (is_compressed) {
- cdbuffer_size_expect = sizeof(compr_img->buff_raw[0]) << compr_img->block_shift;
- cdbuffer_size = cdbuffer_size_expect;
-- ret = uncompress2(compr_img->buff_raw[0], &cdbuffer_size, compr_img->buff_compressed, size);
-+ ret = uncompress2_internal(compr_img->buff_raw[0], &cdbuffer_size, compr_img->buff_compressed, size);
- if (ret != 0) {
- SysPrintf("uncompress failed with %d for block %d, sector %d\n",
- ret, block, sector);
diff --git a/games/pcsxr/pcsxr.SlackBuild b/games/pcsxr/pcsxr.SlackBuild
index 3be0a3a6d5..aa346e61dd 100644
--- a/games/pcsxr/pcsxr.SlackBuild
+++ b/games/pcsxr/pcsxr.SlackBuild
@@ -1,4 +1,4 @@
-#!/bin/sh
+#!/bin/bash
# Slackware build script for pcsxr
@@ -22,26 +22,37 @@
# OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF THIS SOFTWARE, EVEN IF
# ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
+cd $(dirname $0) ; CWD=$(pwd)
+
PRGNAM=pcsxr
-VERSION=${VERSION:-1.9.93}
+SRCNAM=PCSX-Reloaded
+VERSION=${VERSION:-1.9.95}
BUILD=${BUILD:-3}
TAG=${TAG:-_SBo}
+PKGTYPE=${PKGTYPE:-tgz}
if [ -z "$ARCH" ]; then
case "$( uname -m )" in
- i?86) ARCH=i486 ;;
+ i?86) ARCH=i586 ;;
arm*) ARCH=arm ;;
*) ARCH=$( uname -m ) ;;
esac
fi
-CWD=$(pwd)
+# If the variable PRINT_PACKAGE_NAME is set, then this script will report what
+# the name of the created package would be, and then exit. This information
+# could be useful to other scripts.
+if [ ! -z "${PRINT_PACKAGE_NAME}" ]; then
+ echo "$PRGNAM-$VERSION-$ARCH-$BUILD$TAG.$PKGTYPE"
+ exit 0
+fi
+
TMP=${TMP:-/tmp/SBo}
PKG=$TMP/package-$PRGNAM
OUTPUT=${OUTPUT:-/tmp}
-if [ "$ARCH" = "i486" ]; then
- SLKCFLAGS="-O2 -march=i486 -mtune=i686"
+if [ "$ARCH" = "i586" ]; then
+ SLKCFLAGS="-O2 -march=i586 -mtune=i686"
LIBDIRSUFFIX=""
elif [ "$ARCH" = "i686" ]; then
SLKCFLAGS="-O2 -march=i686 -mtune=i686"
@@ -59,9 +70,9 @@ set -e
rm -rf $PKG
mkdir -p $TMP $PKG $OUTPUT
cd $TMP
-rm -rf $PRGNAM-$VERSION
-tar xvf $CWD/$PRGNAM-$VERSION.tar.bz2
-cd $PRGNAM
+rm -rf $SRCNAM-$VERSION
+tar xvf $CWD/$SRCNAM-$VERSION.tar.gz
+cd $SRCNAM-$VERSION
chown -R root:root .
find -L . \
\( -perm 777 -o -perm 775 -o -perm 750 -o -perm 711 -o -perm 555 \
@@ -69,13 +80,17 @@ find -L . \
\( -perm 666 -o -perm 664 -o -perm 640 -o -perm 600 -o -perm 444 \
-o -perm 440 -o -perm 400 \) -exec chmod 644 {} \;
-patch -p1 < $CWD/pcsxr-fix-uncompress2.patch
+patch -p1 < $CWD/patches/pcsxr-fix-undefined-operations.patch
+patch -p1 < $CWD/patches/pcsxr-fix-uncompress2.patch
+patch -p1 < $CWD/patches/pcsxr-remove-assertion-64bit.patch
+
+cd pcsxr
+chmod +x autogen.sh
-CFLAGS="$SLKCFLAGS" \
+CFLAGS="$SLKCFLAGS -fcommon" \
CXXFLAGS="$SLKCFLAGS" \
LDFLAGS="$SLKLDFLAGS" \
-./autogen.sh
-./configure \
+./autogen.sh \
--prefix=/usr \
--libdir=/usr/lib${LIBDIRSUFFIX} \
--sysconfdir=/etc \
@@ -104,4 +119,4 @@ cat $CWD/slack-desc > $PKG/install/slack-desc
cat $CWD/doinst.sh > $PKG/install/doinst.sh
cd $PKG
-/sbin/makepkg -l y -c n $OUTPUT/$PRGNAM-$VERSION-$ARCH-$BUILD$TAG.${PKGTYPE:-tgz}
+/sbin/makepkg -l y -c n $OUTPUT/$PRGNAM-$VERSION-$ARCH-$BUILD$TAG.$PKGTYPE
diff --git a/games/pcsxr/pcsxr.info b/games/pcsxr/pcsxr.info
index d66defc2fa..3dc011dd0a 100644
--- a/games/pcsxr/pcsxr.info
+++ b/games/pcsxr/pcsxr.info
@@ -1,8 +1,8 @@
PRGNAM="pcsxr"
-VERSION="1.9.93"
+VERSION="1.9.95"
HOMEPAGE="https://github.com/mirror/pcsxr"
-DOWNLOAD="https://sources.archlinux.org/other/community/pcsxr/pcsxr-1.9.93.tar.bz2"
-MD5SUM="d75725b4c3fcb2cb11d39b3ace10dc31"
+DOWNLOAD="https://github.com/frealgagu/PCSX-Reloaded/archive/1.9.95/PCSX-Reloaded-1.9.95.tar.gz"
+MD5SUM="ee0f9dfd003d9a5350aafc8cca0cdeee"
DOWNLOAD_x86_64=""
MD5SUM_x86_64=""
REQUIRES=""
diff --git a/games/peg-e/peg-e.SlackBuild b/games/peg-e/peg-e.SlackBuild
index 71dcea9bbd..87a0c57846 100644
--- a/games/peg-e/peg-e.SlackBuild
+++ b/games/peg-e/peg-e.SlackBuild
@@ -1,4 +1,4 @@
-#!/bin/sh
+#!/bin/bash
# Slackware build script for peg-e
@@ -22,10 +22,13 @@
# OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF THIS SOFTWARE, EVEN IF
# ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
+cd $(dirname $0) ; CWD=$(pwd)
+
PRGNAM=peg-e
VERSION=${VERSION:-1.2.8}
BUILD=${BUILD:-1}
TAG=${TAG:-_SBo}
+PKGTYPE=${PKGTYPE:-tgz}
if [ -z "$ARCH" ]; then
case "$( uname -m )" in
@@ -35,7 +38,14 @@ if [ -z "$ARCH" ]; then
esac
fi
-CWD=$(pwd)
+# If the variable PRINT_PACKAGE_NAME is set, then this script will report what
+# the name of the created package would be, and then exit. This information
+# could be useful to other scripts.
+if [ ! -z "${PRINT_PACKAGE_NAME}" ]; then
+ echo "$PRGNAM-$VERSION-$ARCH-$BUILD$TAG.$PKGTYPE"
+ exit 0
+fi
+
TMP=${TMP:-/tmp/SBo}
PKG=$TMP/package-$PRGNAM
OUTPUT=${OUTPUT:-/tmp}
@@ -91,4 +101,4 @@ cat $CWD/slack-desc > $PKG/install/slack-desc
cat $CWD/doinst.sh > $PKG/install/doinst.sh
cd $PKG
-/sbin/makepkg -l y -c n $OUTPUT/$PRGNAM-$VERSION-$ARCH-$BUILD$TAG.${PKGTYPE:-tgz}
+/sbin/makepkg -l y -c n $OUTPUT/$PRGNAM-$VERSION-$ARCH-$BUILD$TAG.$PKGTYPE
diff --git a/games/peg-e/peg-e.info b/games/peg-e/peg-e.info
index 7e2b34663e..d4f7bbef0d 100644
--- a/games/peg-e/peg-e.info
+++ b/games/peg-e/peg-e.info
@@ -5,6 +5,6 @@ DOWNLOAD="https://gottcode.org/peg-e/peg-e-1.2.8-src.tar.bz2"
MD5SUM="ea2659e5cf6e0d981189cbe2751588df"
DOWNLOAD_x86_64=""
MD5SUM_x86_64=""
-REQUIRES="qt5"
+REQUIRES=""
MAINTAINER="Larry Hajali"
EMAIL="larryhaja[at]gmail[dot]com"
diff --git a/games/penguin-command/doinst.sh b/games/penguin-command/doinst.sh
index 5fb28930db..3e5691a052 100644
--- a/games/penguin-command/doinst.sh
+++ b/games/penguin-command/doinst.sh
@@ -1,3 +1,9 @@
if [ -x /usr/bin/update-desktop-database ]; then
/usr/bin/update-desktop-database -q usr/share/applications >/dev/null 2>&1
fi
+
+if [ -e usr/share/icons/hicolor/icon-theme.cache ]; then
+ if [ -x /usr/bin/gtk-update-icon-cache ]; then
+ /usr/bin/gtk-update-icon-cache usr/share/icons/hicolor >/dev/null 2>&1
+ fi
+fi
diff --git a/games/penguin-command/icons/128.png b/games/penguin-command/icons/128.png
new file mode 100644
index 0000000000..ff5ab9dd3e
--- /dev/null
+++ b/games/penguin-command/icons/128.png
Binary files differ
diff --git a/games/penguin-command/icons/16.png b/games/penguin-command/icons/16.png
new file mode 100644
index 0000000000..398d213a25
--- /dev/null
+++ b/games/penguin-command/icons/16.png
Binary files differ
diff --git a/games/penguin-command/icons/32.png b/games/penguin-command/icons/32.png
new file mode 100644
index 0000000000..b5a2fad106
--- /dev/null
+++ b/games/penguin-command/icons/32.png
Binary files differ
diff --git a/games/penguin-command/icons/48.png b/games/penguin-command/icons/48.png
new file mode 100644
index 0000000000..602486b20c
--- /dev/null
+++ b/games/penguin-command/icons/48.png
Binary files differ
diff --git a/games/penguin-command/manpage.diff b/games/penguin-command/manpage.diff
new file mode 100644
index 0000000000..4574ceebce
--- /dev/null
+++ b/games/penguin-command/manpage.diff
@@ -0,0 +1,32 @@
+diff -Naur penguin-command-1.6.11/penguin-command.6 penguin-command-1.6.11.patched/penguin-command.6
+--- penguin-command-1.6.11/penguin-command.6 2007-03-18 11:21:13.000000000 -0400
++++ penguin-command-1.6.11.patched/penguin-command.6 2021-10-21 03:45:41.985380757 -0400
+@@ -1,5 +1,5 @@
+ .\" Hey, EMACS: -*- nroff -*-
+-.TH PENGUIN-COMMAND 6 "November 10, 2002"
++.TH PENGUIN-COMMAND 6 "October 2021" "1.6.11" "SlackBuilds.org"
+ .\" Please adjust this date whenever revising the manpage.
+ .SH NAME
+ penguin-command \- a missile command clone
+@@ -29,5 +29,20 @@
+ .TP
+ .B \-\-help, \-h
+ Display help.
++.SH CONTROLS
++Move the targeting crosshair with the mouse.
++.PP
++Fire missiles from the left/center/right missile bases with either
++the left/middle/right mouse buttons, or the A S D keys on the keyboard.
++.PP
++If you don't have a middle mouse button, or if it doesn't work in X,
++you should be able to enable chording (left+right together = middle)
++using \fBxinput\fR(1). Or you can just use the keyboard instead of the
++mouse buttons.
++.SH FILES
++.TP
++.B $HOME/.penguin\-command
++Per\-user config and high score save file.
+ .SH AUTHOR
+-This manual page was written by Karl Bartel <karlb@gmx.net>.
++This manual page was written by Karl Bartel <karlb@gmx.net> and
++updated by B. Watson <urchlay@slackware.uk>.
diff --git a/games/penguin-command/penguin-command.SlackBuild b/games/penguin-command/penguin-command.SlackBuild
index dfe6834fc9..7c13c73329 100644
--- a/games/penguin-command/penguin-command.SlackBuild
+++ b/games/penguin-command/penguin-command.SlackBuild
@@ -1,15 +1,22 @@
-#!/bin/sh
+#!/bin/bash
# Slackware build script for penguin-command
-# Written by B. Watson (yalhcru@gmail.com)
+# Written by B. Watson (urchlay@slackware.uk)
# Licensed under the WTFPL. See http://www.wtfpl.net/txt/copying/ for details.
+# 20211021 bkw: BUILD=2
+# - new-style icons.
+# - add FILES and CONTROLS sections to the man page.
+
+cd $(dirname $0) ; CWD=$(pwd)
+
PRGNAM=penguin-command
VERSION=${VERSION:-1.6.11}
-BUILD=${BUILD:-1}
+BUILD=${BUILD:-2}
TAG=${TAG:-_SBo}
+PKGTYPE=${PKGTYPE:-tgz}
if [ -z "$ARCH" ]; then
case "$( uname -m )" in
@@ -19,7 +26,11 @@ if [ -z "$ARCH" ]; then
esac
fi
-CWD=$(pwd)
+if [ ! -z "${PRINT_PACKAGE_NAME}" ]; then
+ echo "$PRGNAM-$VERSION-$ARCH-$BUILD$TAG.$PKGTYPE"
+ exit 0
+fi
+
TMP=${TMP:-/tmp/SBo}
PKG=$TMP/package-$PRGNAM
OUTPUT=${OUTPUT:-/tmp}
@@ -47,11 +58,8 @@ rm -rf $PRGNAM-$VERSION
tar xvf $CWD/$PRGNAM-$VERSION.tar.gz
cd $PRGNAM-$VERSION
chown -R root:root .
-find -L . \
- \( -perm 777 -o -perm 775 -o -perm 750 -o -perm 711 -o -perm 555 \
- -o -perm 511 \) -exec chmod 755 {} \; -o \
- \( -perm 666 -o -perm 664 -o -perm 640 -o -perm 600 -o -perm 444 \
- -o -perm 440 -o -perm 400 \) -exec chmod 644 {} \;
+find -L . -perm /111 -a \! -perm 755 -a -exec chmod 755 {} \+ -o \
+ \! -perm /111 -a \! -perm 644 -a -exec chmod 644 {} \+
# I included this optional patch because the game doesn't store a
# fullscreen/windowed preference in its config file, and because on
@@ -61,6 +69,9 @@ if [ "${WINDOWED:-no}" = "yes" ]; then
patch -p1 < $CWD/windowed_default.diff
fi
+# Expand the man page slightly.
+patch -p1 < $CWD/manpage.diff
+
CFLAGS="$SLKCFLAGS" \
CXXFLAGS="$SLKCFLAGS" \
./configure \
@@ -82,9 +93,17 @@ gzip $PKG/usr/man/man6/*.6
mkdir -p $PKG/usr/share/applications
cat $CWD/$PRGNAM.desktop > $PKG/usr/share/applications/$PRGNAM.desktop
-# icon converted from data/gfx/icon.xpm
+# icons extracted from macosx/icon.icns in source.
+for i in $CWD/icons/*.png; do
+ px=$( basename $i | cut -d. -f1 )
+ size=${px}x${px}
+ dir=$PKG/usr/share/icons/hicolor/$size/apps
+ mkdir -p $dir
+ cat $i > $dir/$PRGNAM.png
+done
+
mkdir -p $PKG/usr/share/pixmaps
-cat $CWD/$PRGNAM.png > $PKG/usr/share/pixmaps/$PRGNAM.png
+ln -s ../icons/hicolor/48x48/apps/$PRGNAM.png $PKG/usr/share/pixmaps/$PRGNAM.png
mkdir -p $PKG/usr/doc/$PRGNAM-$VERSION
cp -a AUTHORS COPYING ChangeLog NEWS README $PKG/usr/doc/$PRGNAM-$VERSION
@@ -95,4 +114,4 @@ cat $CWD/slack-desc > $PKG/install/slack-desc
cat $CWD/doinst.sh > $PKG/install/doinst.sh
cd $PKG
-/sbin/makepkg -l y -c n $OUTPUT/$PRGNAM-$VERSION-$ARCH-$BUILD$TAG.${PKGTYPE:-tgz}
+/sbin/makepkg -l y -c n $OUTPUT/$PRGNAM-$VERSION-$ARCH-$BUILD$TAG.$PKGTYPE
diff --git a/games/penguin-command/penguin-command.desktop b/games/penguin-command/penguin-command.desktop
index 54a06a9866..56d6853760 100644
--- a/games/penguin-command/penguin-command.desktop
+++ b/games/penguin-command/penguin-command.desktop
@@ -2,7 +2,7 @@
Name=Penguin-Command
Type=Application
Comment=Missile Attack game
-Exec=penguin-command
+Exec=/usr/games/penguin-command
Icon=penguin-command
Terminal=false
Categories=Game;ArcadeGame;
diff --git a/games/penguin-command/penguin-command.info b/games/penguin-command/penguin-command.info
index 6eceae7f0b..74b572ca98 100644
--- a/games/penguin-command/penguin-command.info
+++ b/games/penguin-command/penguin-command.info
@@ -1,10 +1,10 @@
PRGNAM="penguin-command"
VERSION="1.6.11"
-HOMEPAGE="http://www.linux-games.com/penguin-command/"
-DOWNLOAD="http://downloads.sourceforge.net/project/penguin-command/penguin-command/1.6.11/penguin-command-1.6.11.tar.gz"
+HOMEPAGE="https://sourceforge.net/projects/penguin-command/"
+DOWNLOAD="https://downloads.sourceforge.net/project/penguin-command/penguin-command/1.6.11/penguin-command-1.6.11.tar.gz"
MD5SUM="4dcf0073d62f28e47af18a922a1badc3"
DOWNLOAD_x86_64=""
MD5SUM_x86_64=""
REQUIRES=""
MAINTAINER="B. Watson"
-EMAIL="yalhcru@gmail.com"
+EMAIL="urchlay@slackware.uk"
diff --git a/games/penguin-command/penguin-command.png b/games/penguin-command/penguin-command.png
deleted file mode 100644
index de182fb5fe..0000000000
--- a/games/penguin-command/penguin-command.png
+++ /dev/null
Binary files differ
diff --git a/games/pengupop/pengupop.SlackBuild b/games/pengupop/pengupop.SlackBuild
index 5201e49d24..0fb6d8c069 100644
--- a/games/pengupop/pengupop.SlackBuild
+++ b/games/pengupop/pengupop.SlackBuild
@@ -1,4 +1,4 @@
-#!/bin/sh
+#!/bin/bash
# Slackware build script for Pengupop
@@ -22,26 +22,36 @@
# OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF THIS SOFTWARE, EVEN IF
# ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
+cd $(dirname $0) ; CWD=$(pwd)
+
PRGNAM=pengupop
VERSION=${VERSION:-2.2.5}
BUILD=${BUILD:-1}
TAG=${TAG:-_SBo}
+PKGTYPE=${PKGTYPE:-tgz}
if [ -z "$ARCH" ]; then
case "$( uname -m )" in
- i?86) ARCH=i486 ;;
+ i?86) ARCH=i586 ;;
arm*) ARCH=arm ;;
*) ARCH=$( uname -m ) ;;
esac
fi
-CWD=$(pwd)
+# If the variable PRINT_PACKAGE_NAME is set, then this script will report what
+# the name of the created package would be, and then exit. This information
+# could be useful to other scripts.
+if [ ! -z "${PRINT_PACKAGE_NAME}" ]; then
+ echo "$PRGNAM-$VERSION-$ARCH-$BUILD$TAG.$PKGTYPE"
+ exit 0
+fi
+
TMP=${TMP:-/tmp/SBo}
PKG=$TMP/package-$PRGNAM
OUTPUT=${OUTPUT:-/tmp}
-if [ "$ARCH" = "i486" ]; then
- SLKCFLAGS="-O2 -march=i486 -mtune=i686"
+if [ "$ARCH" = "i586" ]; then
+ SLKCFLAGS="-O2 -march=i586 -mtune=i686"
LIBDIRSUFFIX=""
elif [ "$ARCH" = "i686" ]; then
SLKCFLAGS="-O2 -march=i686 -mtune=i686"
@@ -98,4 +108,4 @@ cat $CWD/slack-desc > $PKG/install/slack-desc
cat $CWD/doinst.sh > $PKG/install/doinst.sh
cd $PKG
-/sbin/makepkg -l y -c n $OUTPUT/$PRGNAM-$VERSION-$ARCH-$BUILD$TAG.${PKGTYPE:-tgz}
+/sbin/makepkg -l y -c n $OUTPUT/$PRGNAM-$VERSION-$ARCH-$BUILD$TAG.$PKGTYPE
diff --git a/games/pentagram/README b/games/pentagram/README
index 34ffcdded7..70ae4acdf5 100644
--- a/games/pentagram/README
+++ b/games/pentagram/README
@@ -1,24 +1,27 @@
+pentagram (an Ultima 8 engine)
+
Pentagram is a project aiming to create an Ultima 8 engine for use on
modern operating systems, including Linux, Mac OS X and Windows.
-While it is currently possible to finish Ultima 8 using Pentagram,
-not everything is fully working yet. (Save regularly!) In the game
-itself, most notably, the combat AI of monsters is still very limited,
-and there are still quite a few minor things which are not working as
-well as they should.
+While it is currently possible to finish Ultima 8 using Pentagram, not
+everything is fully working yet. (Save regularly!) In the game itself,
+most notably, the combat AI of monsters is still very limited, and
+there are still quite a few minor things which are not working as well
+as they should.
-Optionally, pentagram can use TiMidity++ or fluidsynth for in-game music
-(detected at compile time, must be enabled in pentagram.ini or in-game
-menu).
+Optionally, pentagram can use TiMidity++ or fluidsynth for in-game
+music (detected at compile time, must be enabled in pentagram.ini or
+in-game menu).
Pentagram is only an engine. To actually play the game, you will
-need an installed copy of "Ultima VIII: Pagan". Either copy the
-game directory (the one containing u8.exe) to /usr/share/pentagram
-(so that /usr/share/pentagram/u8.exe exists), or edit the 'path=' in
-~/.pentagram/pentagram.ini to point to your existing game directory.
-Pentagram is smart enough to ignore the case of filenames, so U8.exe or
-U8.EXE would also be OK.
+need an installed copy of "Ultima VIII: Pagan". Either copy the game
+directory (the one containing u8.exe) to /usr/share/games/pentagram
+(so that /usr/share/games/pentagram/u8.exe exists), or edit the
+'path=' in ~/.pentagram/pentagram.ini to point to your existing game
+directory. Pentagram is smart enough to ignore the case of filenames,
+so U8.exe or U8.EXE would also be OK.
-YOU MUST OWN THE GAME in order to play it with pentagram. Do not contact
-pentagram's authors or the author of this SlackBuild asking for illegal
-copies of Ultima 8: such requests will be ignored, at best.
+YOU MUST OWN THE GAME in order to play it with pentagram. Do not
+contact pentagram's authors or the author of this SlackBuild asking
+for illegal copies of Ultima 8: such requests will be ignored,
+at best.
diff --git a/games/pentagram/pentagram.1 b/games/pentagram/pentagram.1
deleted file mode 100644
index c1f23fa6aa..0000000000
--- a/games/pentagram/pentagram.1
+++ /dev/null
@@ -1,186 +0,0 @@
-.TH pentagram 1 "29 Oct 2011" "20110229_svn" "Pentagram"
-
-.SH NAME
-\fBpentagram\fR \- A reimplemented engine for the game
-.B Ultima VIII: Pagan
-
-.SH SYNOPSIS
-.B pentagram
-.RI [ options ]
-
-.SH DESCRIPTION
-.B pentagram
-is an engine for playing the game
-.B Ultima 8
-on modern operating systems.
-The files from the original game are required for
-.B pentagram
-to work. Since
-.B Ultima 8
-is a commercial work, this means you must own a
-copy of the original game to legally play it with
-\fBpentagram\fR.
-.SH OPTIONS
-.TP
-.B \-h, \-\-help
-Shows command\-line option help
-.TP
-.B \-q
-Silence general logging messages.
-.TP
-.B \-qq
-Silence general logging messages and non\-critical
-warnings/errors.
-.TP
-.B \-\-game [gamename]
-Select a game. This option is currently useless, since only Ultima 8 is supported.
-.SH FILES
-.TP
-.B ~/.pentagram/
-Config and savegame data.
-.TP
-.B ~/.pentagram/pentagram.ini
-Configuration. Specifies the path to the game data, among other things.
-The SlackBuilds.org build of pentagram uses a shell script wrapper to
-create a default \fBpentagram.ini\fR if the user doesn't have one already.
-See \fI/usr/doc/pentagram\-@VERSION@/README\fR for full details of the options
-available in the config file.
-.TP
-.B ~/.pentagram/u8\-save/
-Saved games. Not compatible with the original Ultima 8.
-.TP
-.B /usr/share/pentagram
-This is the default location where
-.B pentagram
-looks for the Ultima 8 data files. This directory should contain
-a complete installation of the game, including the file
-.B U8.exe
-(case\-insensitive;
-.B u8.exe
-or
-.B U8.EXE
-are also OK). This location can be changed by editing
-.B ~/.pentagram/pentagram.ini
-.SH CONTROLS
-.SS Movement
-Double\-click with the right mouse button will make the Avatar find a path to the selected spot.
-.br
-Left\-click on NPCs or objects to identify them.
-.br
-Double\-left\-click on NPCs or objects to initiate conversations or use the item.
-.br
-On pressing the right mouse button down the Avatar walks or runs (depending on distance between cursor and Avatar).
-.br
-Pressing right and left mouse button, makes the Avatar jump or while running a running jump.
-.br
-You can also move the Avatar with the keypad. Details are in the keycommands table below.
-.SS Keyboard Commands
-These are the default keyboard commands; they can be changed from the
-options menu in the game, or by creating/editing
-the file \fI~/.pentagram/u8bindings.ini\fR.
-.TP
-.B ~
-hides/restores console. See \fI/usr/doc/pentagram\-@VERSION@/README\fR for
-available console commands.
-.TP
-.B arrow keys
-moves Avatar around the map (no walking)
-.TP
-.B home,end
-moves Avatar vertically
-.TP
-.B Keypad
-Avatar walks (one animation cycle)
-.TP
-.B Shift+Keypad
-Avatar runs (one animation cycle)
-.TP
-.B Ctrl+Keypad
-Avatar makes a little step (one animation cycle)
-.TP
-.B Alt+Keypad
-Avatar jumps long (one animation cycle)
-.TP
-.B s
-toggles "avatarInStasis"
-.TP
-.B t
-outputs kernel/usecode/world/location stats to the console
-.TP
-.B e
-toggles editor items
-.TP
-.B h
-highlights any item you are "hitting", colliding with
-.TP
-.B i
-open backpack
-.TP
-.B z
-open paperdoll/status
-.TP
-.B r
-recall
-.TP
-.B c
-switches combat mode on/off
-.TP
-.B ESC
-main menu
-.TP
-.B alt+x
-quit
-.TP
-.B ctrl+q
-quits without confirmation
-.TP
-.B backspace
-close all open containers
-.TP
-.B F7
-Quicksave (savegames are not yet stable!)
-.TP
-.B F8
-Quickload
-.TP
-.B F11
-Shapeviewer
-.TP
-.B F12
-toggles frame by frame
-.TP
-.B shift
-quarter speed mode. needs to be held down
-.TP
-.B [
-clears the screen, multiple presses show the paint order
-.TP
-.B ]
-Same as above, backwards
-.SH AUTHORS
-The
-.B
-Ultima
-games were created by Richard Garriott, AKA Lord British,
-and are copyrighted by Electronic Arts.
-.PP
-.B pentagram
-written by
-The Pentagram Team:
-.br
-Willem Jan Palenstijn <wjpalenstijn@users.sourceforge.net>
-.br
-Patrick Burke <takhisis@users.sourceforge.net>
-.br
-Max Horn <max@quendi.de>
-.br
-Ryan Nunn <colourles@users.sourceforge.net>
-.br
-Dominik Reichardt <dominus@users.sourceforge.net>
-.br
-Matthew Jimenez <mjimenez@users.sourceforge.net>
-.br
-Brian Tietz <btietz@broadcom.com>
-.PP
-Man page created by B. Watson, for the SlackBuilds.org
-project. Permission hereby granted to use this man page anywhere, for any purpose.
diff --git a/games/pentagram/pentagram.6 b/games/pentagram/pentagram.6
new file mode 100644
index 0000000000..c68f708891
--- /dev/null
+++ b/games/pentagram/pentagram.6
@@ -0,0 +1,188 @@
+.TH pentagram 6 "02 Nov 2021" "20110229_svn" "SlackBuilds.org"
+
+.SH NAME
+\fBpentagram\fR \- A reimplemented engine for the game
+.B Ultima VIII: Pagan
+
+.SH SYNOPSIS
+.B pentagram
+.RI [ options ]
+
+.SH DESCRIPTION
+.B pentagram
+is an engine for playing the game
+.B Ultima 8
+on modern operating systems.
+The files from the original game are required for
+.B pentagram
+to work. Since
+.B Ultima 8
+is a commercial work, this means you must own a
+copy of the original game to legally play it with
+\fBpentagram\fR.
+.SH OPTIONS
+.TP
+.B \-h, \-\-help
+Shows command\-line option help
+.TP
+.B \-q
+Silence general logging messages.
+.TP
+.B \-qq
+Silence general logging messages and non\-critical
+warnings/errors.
+.TP
+.B \-\-game [gamename]
+Select a game. This option is currently useless, since only Ultima 8 is supported.
+.SH FILES
+.TP
+.B ~/.pentagram/
+Config and savegame data.
+.TP
+.B ~/.pentagram/pentagram.ini
+Configuration. Specifies the path to the game data, among other things.
+The SlackBuilds.org build of pentagram uses a shell script wrapper to
+create a default \fBpentagram.ini\fR if the user doesn't have one already.
+For full details of the options available in the config file, see:
+.br
+\fI/usr/doc/pentagram\-@VERSION@/README\fR
+.TP
+.B ~/.pentagram/u8\-save/
+Saved games. Not compatible with the original Ultima 8.
+.TP
+.B /usr/share/games/pentagram
+This is the default location where
+.B pentagram
+looks for the Ultima 8 data files. This directory should contain
+a complete installation of the game, including the file
+.B U8.exe
+(case\-insensitive;
+.B u8.exe
+or
+.B U8.EXE
+are also OK). This location can be changed by editing
+.B ~/.pentagram/pentagram.ini
+.SH CONTROLS
+.SS Movement
+Double\-click with the right mouse button will make the Avatar find a path to the selected spot.
+.br
+Left\-click on NPCs or objects to identify them.
+.br
+Double\-left\-click on NPCs or objects to initiate conversations or use the item.
+.br
+On pressing the right mouse button down the Avatar walks or runs (depending on distance between cursor and Avatar).
+.br
+Pressing right and left mouse button, makes the Avatar jump or while running a running jump.
+.br
+You can also move the Avatar with the keypad. Details are in the keycommands table below.
+.SS Keyboard Commands
+These are the default keyboard commands; they can be changed from the
+options menu in the game, or by creating/editing
+the file \fI~/.pentagram/u8bindings.ini\fR.
+.TP
+.B ~
+hides/restores console. For available console commands, see:
+.br
+\fI/usr/doc/pentagram\-@VERSION@/README\fR
+.TP
+.B arrow keys
+moves Avatar around the map (no walking)
+.TP
+.B home,end
+moves Avatar vertically
+.TP
+.B Keypad
+Avatar walks (one animation cycle)
+.TP
+.B Shift+Keypad
+Avatar runs (one animation cycle)
+.TP
+.B Ctrl+Keypad
+Avatar makes a little step (one animation cycle)
+.TP
+.B Alt+Keypad
+Avatar jumps long (one animation cycle)
+.TP
+.B s
+toggles "avatarInStasis"
+.TP
+.B t
+outputs kernel/usecode/world/location stats to the console
+.TP
+.B e
+toggles editor items
+.TP
+.B h
+highlights any item you are "hitting", colliding with
+.TP
+.B i
+open backpack
+.TP
+.B z
+open paperdoll/status
+.TP
+.B r
+recall
+.TP
+.B c
+switches combat mode on/off
+.TP
+.B ESC
+main menu
+.TP
+.B alt+x
+quit
+.TP
+.B ctrl+q
+quits without confirmation
+.TP
+.B backspace
+close all open containers
+.TP
+.B F7
+Quicksave (savegames are not yet stable!)
+.TP
+.B F8
+Quickload
+.TP
+.B F11
+Shapeviewer
+.TP
+.B F12
+toggles frame by frame
+.TP
+.B shift
+quarter speed mode. needs to be held down
+.TP
+.B [
+clears the screen, multiple presses show the paint order
+.TP
+.B ]
+Same as above, backwards
+.SH AUTHORS
+The
+.B
+Ultima
+games were created by Richard Garriott, AKA Lord British,
+and are copyrighted by Electronic Arts.
+.PP
+.B pentagram
+written by
+The Pentagram Team:
+.br
+Willem Jan Palenstijn <wjpalenstijn@users.sourceforge.net>
+.br
+Patrick Burke <takhisis@users.sourceforge.net>
+.br
+Max Horn <max@quendi.de>
+.br
+Ryan Nunn <colourles@users.sourceforge.net>
+.br
+Dominik Reichardt <dominus@users.sourceforge.net>
+.br
+Matthew Jimenez <mjimenez@users.sourceforge.net>
+.br
+Brian Tietz <btietz@broadcom.com>
+.PP
+Man page created by B. Watson, for the SlackBuilds.org
+project. Permission hereby granted to use this man page anywhere, for any purpose.
diff --git a/games/pentagram/pentagram.SlackBuild b/games/pentagram/pentagram.SlackBuild
index d9d7d6a178..dc0d6a5581 100644
--- a/games/pentagram/pentagram.SlackBuild
+++ b/games/pentagram/pentagram.SlackBuild
@@ -1,15 +1,24 @@
-#!/bin/sh
+#!/bin/bash
# Slackware build script for pentagram
-# Written by B. Watson (yalhcru@gmail.com)
+# Written by B. Watson (urchlay@slackware.uk)
# Licensed under the WTFPL. See http://www.wtfpl.net/txt/copying/ for details.
+# 20211102 bkw: BUILD=3
+# - new-style icons.
+# - binary in /usr/games.
+# - man page in section 6.
+# - /usr/share/pentagram => /usr/share/games/pentagram.
+
+cd $(dirname $0) ; CWD=$(pwd)
+
PRGNAM=pentagram
VERSION=${VERSION:-20130617_svn}
-BUILD=${BUILD:-2}
+BUILD=${BUILD:-3}
TAG=${TAG:-_SBo}
+PKGTYPE=${PKGTYPE:-tgz}
if [ -z "$ARCH" ]; then
case "$( uname -m )" in
@@ -19,7 +28,11 @@ if [ -z "$ARCH" ]; then
esac
fi
-CWD=$(pwd)
+if [ ! -z "${PRINT_PACKAGE_NAME}" ]; then
+ echo "$PRGNAM-$VERSION-$ARCH-$BUILD$TAG.$PKGTYPE"
+ exit 0
+fi
+
TMP=${TMP:-/tmp/SBo}
PKG=$TMP/package-$PRGNAM
OUTPUT=${OUTPUT:-/tmp}
@@ -47,11 +60,8 @@ rm -rf $PRGNAM-$VERSION
tar xvf $CWD/$PRGNAM-$VERSION.tar.xz
cd $PRGNAM-$VERSION
chown -R root:root .
-find -L . \
- \( -perm 777 -o -perm 775 -o -perm 750 -o -perm 711 -o -perm 555 -o -perm 511 \) \
- -exec chmod 755 {} \; -o \
- \( -perm 666 -o -perm 664 -o -perm 600 -o -perm 444 -o -perm 440 -o -perm 400 \) \
- -exec chmod 644 {} \;
+find -L . -perm /111 -a \! -perm 755 -a -exec chmod 755 {} \+ -o \
+ \! -perm /111 -a \! -perm 644 -a -exec chmod 644 {} \+
./bootstrap
@@ -73,26 +83,35 @@ CXXFLAGS="$SLKCFLAGS" \
--docdir=/usr/doc/$PRGNAM-$VERSION \
--build=$ARCH-slackware-linux
-make
-mkdir -p $PKG/usr/bin
-install -s -m0755 $PRGNAM $PKG/usr/bin/$PRGNAM-bin
-install -m0755 $CWD/$PRGNAM.sh $PKG/usr/bin/$PRGNAM
+make datapath=/usr/share/games/$PRGNAM
+
+mkdir -p $PKG/usr/games $PKG/usr/libexec/$PRGNAM
+install -s -m0755 $PRGNAM $PKG/usr/libexec/$PRGNAM/$PRGNAM-bin
+install -m0755 $CWD/$PRGNAM.sh $PKG/usr/games/$PRGNAM
+
+for px in 16 32 48 64 128; do
+ size=${px}x${px}
+ dir=$PKG/usr/share/icons/hicolor/$size/apps
+ mkdir -p $dir
+ convert -resize $size system/desktop/$PRGNAM.png $dir/$PRGNAM.png
+done
mkdir -p $PKG/usr/share/pixmaps
-cat ./system/desktop/$PRGNAM.png > $PKG/usr/share/pixmaps/$PRGNAM.png
+ln -s ../icons/hicolor/48x48/apps/$PRGNAM.png $PKG/usr/share/pixmaps/$PRGNAM.png
mkdir -p $PKG/usr/share/applications
cat $CWD/$PRGNAM.desktop > $PKG/usr/share/applications/$PRGNAM.desktop
# man page written for this build.
-mkdir -p $PKG/usr/man/man1
-sed "s/@VERSION@/$VERSION/g" $CWD/$PRGNAM.1 | gzip -9c > $PKG/usr/man/man1/$PRGNAM.1.gz
+MANDIR=$PKG/usr/man/man6
+mkdir -p $MANDIR
+sed "s/@VERSION@/$VERSION/g" $CWD/$PRGNAM.6 | gzip -9c > $MANDIR/$PRGNAM.6.gz
# default config file contains all the options, commented out, plus
# the default options for this build.
# The default path= assumes the user has extracted or copied the Ultima 8
-# game directory to /usr/share/pentagram (so the file
-# /usr/share/pentagram/U8.exe should exist, possibly as u8.exe or U8.EXE).
+# game directory to /usr/share/games/pentagram (so the file
+# /usr/share/games/pentagram/U8.exe should exist, possibly as u8.exe or U8.EXE).
# The default MIDI driver, at least on the author's system, crashes X and
# panics the kernel for some reason. It wants to use the OSS sequencer,
@@ -103,8 +122,8 @@ sed "s/@VERSION@/$VERSION/g" $CWD/$PRGNAM.1 | gzip -9c > $PKG/usr/man/man1/$PRGN
# Setting midi_driver=fmopl in the default config will avoid any problems
# and users won't have to troubleshoot OSS sequencer crap themselves.
-mkdir -p $PKG/usr/share/$PRGNAM
-cat $CWD/$PRGNAM.ini.default > $PKG/usr/share/$PRGNAM/$PRGNAM.ini.default
+mkdir -p $PKG/usr/share/games/$PRGNAM
+cat $CWD/$PRGNAM.ini.default > $PKG/usr/share/games/$PRGNAM/$PRGNAM.ini.default
mkdir -p $PKG/usr/doc/$PRGNAM-$VERSION
cp -a AUTHORS COPYING ChangeLog FAQ README $PKG/usr/doc/$PRGNAM-$VERSION
@@ -115,4 +134,4 @@ cat $CWD/slack-desc > $PKG/install/slack-desc
cat $CWD/doinst.sh > $PKG/install/doinst.sh
cd $PKG
-/sbin/makepkg -l y -c n $OUTPUT/$PRGNAM-$VERSION-$ARCH-$BUILD$TAG.${PKGTYPE:-tgz}
+/sbin/makepkg -l y -c n $OUTPUT/$PRGNAM-$VERSION-$ARCH-$BUILD$TAG.$PKGTYPE
diff --git a/games/pentagram/pentagram.desktop b/games/pentagram/pentagram.desktop
index 905ff61074..7b6362b6b8 100644
--- a/games/pentagram/pentagram.desktop
+++ b/games/pentagram/pentagram.desktop
@@ -1,7 +1,7 @@
[Desktop Entry]
Name=Pentagram
Comment=Ultima 8 Engine
-Exec=pentagram
+Exec=/usr/games/pentagram
Icon=pentagram
Terminal=false
Type=Application
diff --git a/games/pentagram/pentagram.info b/games/pentagram/pentagram.info
index a4c27b4de5..697c74e84d 100644
--- a/games/pentagram/pentagram.info
+++ b/games/pentagram/pentagram.info
@@ -1,10 +1,10 @@
PRGNAM="pentagram"
VERSION="20130617_svn"
-HOMEPAGE="http://pentagram.sourceforge.net/"
+HOMEPAGE="https://pentagram.sourceforge.net/"
DOWNLOAD="https://slackware.uk/~urchlay/src/pentagram-20130617_svn.tar.xz"
MD5SUM="7786306d42cf27b7f855cbef3f637864"
DOWNLOAD_x86_64=""
MD5SUM_x86_64=""
REQUIRES=""
MAINTAINER="B. Watson"
-EMAIL="yalhcru@gmail.com"
+EMAIL="urchlay@slackware.uk"
diff --git a/games/pentagram/pentagram.ini.default b/games/pentagram/pentagram.ini.default
index 6f552dcba7..37f6bbcce6 100644
--- a/games/pentagram/pentagram.ini.default
+++ b/games/pentagram/pentagram.ini.default
@@ -55,11 +55,9 @@ midi_driver=fmopl
## path=path to U8 directory
# SBo default option:
-path=/usr/share/pentagram
+path=/usr/share/games/pentagram
# replace with the directory you want Pentagram to save games to.
# (no, loading of the original's savegames is not supported)
## save=path to U8 savegames directory
-
-
diff --git a/games/pentagram/pentagram.sh b/games/pentagram/pentagram.sh
index 5b468d4350..9a84e1f20f 100644
--- a/games/pentagram/pentagram.sh
+++ b/games/pentagram/pentagram.sh
@@ -7,7 +7,7 @@ set -e
if [ ! -e ~/.pentagram/pentagram.ini ]; then
mkdir -p ~/.pentagram
- cat /usr/share/pentagram/pentagram.ini.default > ~/.pentagram/pentagram.ini
+ cat /usr/share/games/pentagram/pentagram.ini.default > ~/.pentagram/pentagram.ini
fi
-exec /usr/bin/pentagram-bin "$@"
+exec /usr/libexec/pentagram/pentagram-bin "$@"
diff --git a/games/pgn-extract/Makefile.patch b/games/pgn-extract/Makefile.patch
new file mode 100644
index 0000000000..9a4fde63a2
--- /dev/null
+++ b/games/pgn-extract/Makefile.patch
@@ -0,0 +1,18 @@
+--- Makefile 2022-01-26 00:21:45.000000000 +0200
++++ Makefile.new 2024-01-11 03:29:04.935018734 +0200
+@@ -35,14 +35,11 @@
+ # Mac OS X users might need to add -D__unix__ to CFLAGS
+ # and use CC=cc or CC=gcc
+
+-OPTIMISE=-O3
+-
+ CFLAGS+=-c -pedantic -Wall -Wshadow -Wformat -Wpointer-arith \
+ -Wstrict-prototypes -Wmissing-prototypes -Wwrite-strings \
+ -Wsign-compare -Wimplicit-function-declaration $(DEBUGINFO) \
+ -I/usr/local/lib/ansi-include -std=c99 \
+- $(CPPFLAGS) \
+- $(OPTIMISE)
++ $(CPPFLAGS)
+
+ CC=gcc
+ LIBS=-lm
diff --git a/games/pgn-extract/README b/games/pgn-extract/README
new file mode 100644
index 0000000000..4a1b9810ac
--- /dev/null
+++ b/games/pgn-extract/README
@@ -0,0 +1,2 @@
+pgn-extract a command-line program for searching, manipulating and
+formatting chess games recorded in the Portable Game Notation (PGN)
diff --git a/games/pgn-extract/pgn-extract.SlackBuild b/games/pgn-extract/pgn-extract.SlackBuild
new file mode 100644
index 0000000000..330bb784b2
--- /dev/null
+++ b/games/pgn-extract/pgn-extract.SlackBuild
@@ -0,0 +1,105 @@
+#!/bin/bash
+
+# Slackware build script for pgn-extract
+
+# Copyright 2024 toolonely <lonely_@tutanota.com>
+# All rights reserved.
+#
+# Redistribution and use of this script, with or without modification, is
+# permitted provided that the following conditions are met:
+#
+# 1. Redistributions of this script must retain the above copyright
+# notice, this list of conditions and the following disclaimer.
+#
+# THIS SOFTWARE IS PROVIDED BY THE AUTHOR "AS IS" AND ANY EXPRESS OR IMPLIED
+# WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE IMPLIED WARRANTIES OF
+# MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE ARE DISCLAIMED. IN NO
+# EVENT SHALL THE AUTHOR BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL,
+# SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT LIMITED TO,
+# PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, DATA, OR PROFITS;
+# OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY,
+# WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR
+# OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF THIS SOFTWARE, EVEN IF
+# ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
+
+cd $(dirname $0) ; CWD=$(pwd)
+
+PRGNAM=pgn-extract
+SRCVERSION=${SRCVERSION:-22-11}
+VERSION=${VERSION:-22.11}
+BUILD=${BUILD:-1}
+TAG=${TAG:-_SBo}
+PKGTYPE=${PKGTYPE:-tgz}
+
+if [ -z "$ARCH" ]; then
+ case "$( uname -m )" in
+ i?86) ARCH=i586 ;;
+ arm*) ARCH=arm ;;
+ *) ARCH=$( uname -m ) ;;
+ esac
+fi
+
+if [ ! -z "${PRINT_PACKAGE_NAME}" ]; then
+ echo "$PRGNAM-$VERSION-$ARCH-$BUILD$TAG.$PKGTYPE"
+ exit 0
+fi
+
+TMP=${TMP:-/tmp/SBo}
+PKG=$TMP/package-$PRGNAM
+OUTPUT=${OUTPUT:-/tmp}
+
+if [ "$ARCH" = "i586" ]; then
+ SLKCFLAGS="-O2 -march=i586 -mtune=i686"
+elif [ "$ARCH" = "i686" ]; then
+ SLKCFLAGS="-O2 -march=i686 -mtune=i686"
+elif [ "$ARCH" = "x86_64" ]; then
+ SLKCFLAGS="-O2 -fPIC"
+elif [ "$ARCH" = "aarch64" ]; then
+ SLKCFLAGS="-O2 -fPIC"
+else
+ SLKCFLAGS="-O2"
+fi
+
+set -e
+
+rm -rf $PKG
+mkdir -p $TMP $PKG $OUTPUT
+cd $TMP
+rm -rf $PRGNAM-$VERSION
+tar xvf $CWD/$PRGNAM-$SRCVERSION.tgz
+cd $PRGNAM
+chown -R root:root .
+find -L . \
+ \( -perm 777 -o -perm 775 -o -perm 750 -o -perm 711 -o -perm 555 \
+ -o -perm 511 \) -exec chmod 755 {} \; -o \
+ \( -perm 666 -o -perm 664 -o -perm 640 -o -perm 600 -o -perm 444 \
+ -o -perm 440 -o -perm 400 \) -exec chmod 644 {} \;
+
+# Patch the Makefile
+patch -p0 < $CWD/Makefile.patch
+
+CFLAGS="$SLKCFLAGS" make
+
+install -d $PKG/usr/bin
+install -m 0755 pgn-extract $PKG/usr/bin
+
+mkdir -p $PKG/usr/man/man1
+cp pgn-extract.man $PKG/usr/man/man1/pgn-extract.1
+
+find $PKG -print0 | xargs -0 file | grep -e "executable" -e "shared object" | grep ELF \
+ | cut -f 1 -d : | xargs strip --strip-unneeded 2> /dev/null || true
+
+strip $PKG/usr/bin/pgn-extract 2> /dev/null
+
+find $PKG/usr/man -type f -exec gzip -9 {} \;
+for i in $( find $PKG/usr/man -type l ) ; do ln -s $( readlink $i ).gz $i.gz ; rm $i ; done
+
+mkdir -p $PKG/usr/doc/$PRGNAM-$VERSION
+cp -a help.html $PKG/usr/doc/$PRGNAM-$VERSION
+cat $CWD/$PRGNAM.SlackBuild > $PKG/usr/doc/$PRGNAM-$VERSION/$PRGNAM.SlackBuild
+
+mkdir -p $PKG/install
+cat $CWD/slack-desc > $PKG/install/slack-desc
+
+cd $PKG
+/sbin/makepkg -l y -c n $OUTPUT/$PRGNAM-$VERSION-$ARCH-$BUILD$TAG.$PKGTYPE
diff --git a/games/pgn-extract/pgn-extract.info b/games/pgn-extract/pgn-extract.info
new file mode 100644
index 0000000000..c1053cbc27
--- /dev/null
+++ b/games/pgn-extract/pgn-extract.info
@@ -0,0 +1,10 @@
+PRGNAM="pgn-extract"
+VERSION="22.11"
+HOMEPAGE="https://www.cs.kent.ac.uk/people/staff/djb/pgn-extract/"
+DOWNLOAD="https://www.cs.kent.ac.uk/~djb/pgn-extract/pgn-extract-22-11.tgz"
+MD5SUM="fea6a14d00ed5d960783b3b69e5ffc04"
+DOWNLOAD_x86_64=""
+MD5SUM_x86_64=""
+REQUIRES=""
+MAINTAINER="toolonely"
+EMAIL="lonely_@tutanota.com"
diff --git a/games/pgn-extract/slack-desc b/games/pgn-extract/slack-desc
new file mode 100644
index 0000000000..8dca64c82e
--- /dev/null
+++ b/games/pgn-extract/slack-desc
@@ -0,0 +1,19 @@
+# HOW TO EDIT THIS FILE:
+# The "handy ruler" below makes it easier to edit a package description.
+# Line up the first '|' above the ':' following the base package name, and
+# the '|' on the right side marks the last column you can put a character in.
+# You must make exactly 11 lines for the formatting to be correct. It's also
+# customary to leave one space after the ':' except on otherwise blank lines.
+
+ |-----handy-ruler------------------------------------------------------|
+pgn-extract: pgn-extract (PGN manipulator for chess games)
+pgn-extract:
+pgn-extract: pgn-extract a command-line program for searching, manipulating and
+pgn-extract: formatting chess games recorded in the Portable Game Notation (PGN)
+pgn-extract:
+pgn-extract:
+pgn-extract:
+pgn-extract:
+pgn-extract:
+pgn-extract:
+pgn-extract:
diff --git a/games/picodrive/README b/games/picodrive/README
deleted file mode 100644
index 14c1724151..0000000000
--- a/games/picodrive/README
+++ /dev/null
@@ -1,22 +0,0 @@
-PicoDrive is a Sega 8/16 bit video game system emulator that can be
-used as a libretro core or with the standalone sdl frontend.
-
-This is yet another Megadrive / Genesis / Sega CD / Mega CD / 32X / SMS
-emulator, which was written having ARM-based handheld devices in mind
-(such as smartphones and handheld consoles like GP2X and Pandora),
-but also runs on non-ARM little-endian hardware too.
-
-RetroArch is an optional dependency to run the libretro core.
-
-PicoDrive requires a real BIOS for Sega CD/Mega CD emulation to work.
-
-* bios_CD_E.bin (MegaCD EU BIOS)
-* bios_CD_U.bin (SegaCD US BIOS)
-* bios_CD_J.bin (MegaCD JP BIOS)
-
-For the standalone emulator they can be placed in ~/.picodrive/ or for
-the libretro core they should be placed in RetroArch's system/bios
-directory.
-
-To build the debugging symbols use:
- DEBUG=1 ./picodrive.SlackBuild
diff --git a/games/picodrive/picodrive.SlackBuild b/games/picodrive/picodrive.SlackBuild
deleted file mode 100644
index f695da7c02..0000000000
--- a/games/picodrive/picodrive.SlackBuild
+++ /dev/null
@@ -1,95 +0,0 @@
-#!/bin/sh
-
-# Slackware build script for picodrive
-
-# Copyright 2016-2019 Hunter Sezen California, USA
-# All rights reserved.
-#
-# Redistribution and use of this script, with or without modification, is
-# permitted provided that the following conditions are met:
-#
-# 1. Redistributions of this script must retain the above copyright
-# notice, this list of conditions and the following disclaimer.
-#
-# THIS SOFTWARE IS PROVIDED BY THE AUTHOR "AS IS" AND ANY EXPRESS OR IMPLIED
-# WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE IMPLIED WARRANTIES OF
-# MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE ARE DISCLAIMED. IN NO
-# EVENT SHALL THE AUTHOR BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL,
-# SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT LIMITED TO,
-# PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, DATA, OR PROFITS;
-# OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY,
-# WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR
-# OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF THIS SOFTWARE, EVEN IF
-# ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
-
-PRGNAM=picodrive
-SRCNAM=PicoDrive
-LIBNAM=${PRGNAM}_libretro
-VERSION=${VERSION:-1.93}
-BUILD=${BUILD:-1}
-TAG=${TAG:-_SBo}
-
-if [ -z "$ARCH" ]; then
- case "$( uname -m )" in
- i?86) ARCH=i586 ;;
- arm*) ARCH=arm ;;
- *) ARCH=$( uname -m ) ;;
- esac
-fi
-
-CWD=$(pwd)
-TMP=${TMP:-/tmp/SBo}
-PKG=$TMP/package-$PRGNAM
-OUTPUT=${OUTPUT:-/tmp}
-
-LIBDIRSUFFIX=
-[ "$ARCH" = x86_64 ] && LIBDIRSUFFIX=64
-
-set -eu
-
-rm -rf $PKG
-mkdir -p $TMP $PKG $OUTPUT
-cd $TMP
-rm -rf $SRCNAM-$VERSION
-tar xvf $CWD/${SRCNAM}_$VERSION.tar.gz
-cd $SRCNAM-$VERSION
-chown -R root:root .
-find -L . \
- \( -perm 777 -o -perm 775 -o -perm 750 -o -perm 711 -o -perm 555 \
- -o -perm 511 \) -exec chmod 755 {} \; -o \
- \( -perm 666 -o -perm 664 -o -perm 640 -o -perm 600 -o -perm 444 \
- -o -perm 440 -o -perm 400 \) -exec chmod 644 {} \;
-
-[ "${DEBUG:=0}" != 0 ] && DEBUG=1
-
-./configure
-make DEBUG=$DEBUG
-
-install -Dm0755 PicoDrive $PKG/usr/games/PicoDrive
-
-make clean
-make -f Makefile.libretro \
- DEBUG=$DEBUG \
- GIT_VERSION="${VERSION#*_}"
-
-install -Dm0644 $LIBNAM.so \
- $PKG/usr/lib${LIBDIRSUFFIX}/libretro/$LIBNAM.so
-
-# https://raw.githubusercontent.com/libretro/libretro-super/92a64459d6e63eed7d79775f65242c5d47807e44/dist/info/picodrive_libretro.info
-install -Dm0644 $CWD/$LIBNAM-info \
- $PKG/usr/lib${LIBDIRSUFFIX}/libretro/info/$LIBNAM.info
-
-if [ $DEBUG = 0 ]; then
- find $PKG -print0 | xargs -0 file | grep -e "executable" -e "shared object" |
- grep ELF | cut -f 1 -d : | xargs strip --strip-unneeded 2> /dev/null || true
-fi
-
-mkdir -p $PKG/usr/doc/$PRGNAM-$VERSION
-cp -a AUTHORS COPYING ChangeLog README $PKG/usr/doc/$PRGNAM-$VERSION
-cat $CWD/$PRGNAM.SlackBuild > $PKG/usr/doc/$PRGNAM-$VERSION/$PRGNAM.SlackBuild
-
-mkdir -p $PKG/install
-cat $CWD/slack-desc > $PKG/install/slack-desc
-
-cd $PKG
-/sbin/makepkg -l y -c n $OUTPUT/$PRGNAM-$VERSION-$ARCH-$BUILD$TAG.${PKGTYPE:-tgz}
diff --git a/games/picodrive/picodrive.info b/games/picodrive/picodrive.info
deleted file mode 100644
index ef9a0a5613..0000000000
--- a/games/picodrive/picodrive.info
+++ /dev/null
@@ -1,10 +0,0 @@
-PRGNAM="picodrive"
-VERSION="1.93"
-HOMEPAGE="https://github.com/notaz/picodrive"
-DOWNLOAD="https://github.com/notaz/picodrive/releases/download/v1.93/PicoDrive_1.93.tar.gz"
-MD5SUM="c867f2003e3d4a580d5b0e0fe86d0b7a"
-DOWNLOAD_x86_64=""
-MD5SUM_x86_64=""
-REQUIRES=""
-MAINTAINER="orphaned - no maintainer"
-EMAIL="nobody@nowhere.com"
diff --git a/games/picodrive/picodrive_libretro-info b/games/picodrive/picodrive_libretro-info
deleted file mode 100644
index 507e6a3205..0000000000
--- a/games/picodrive/picodrive_libretro-info
+++ /dev/null
@@ -1,24 +0,0 @@
-display_name = "Sega - MS/MD/CD/32X (PicoDrive)"
-authors = "notaz|fdave"
-supported_extensions = "bin|gen|smd|md|32x|cue|iso|sms|68k"
-corename = "PicoDrive"
-manufacturer = "Sega"
-categories = "Emulator"
-systemname = "Sega 8/16-bit + 32X (Various)"
-systemid = "mega_drive"
-database = "Sega - Master System - Mark III|Sega - Mega-CD - Sega CD|Sega - Mega Drive - Genesis|Sega - PICO|Sega - 32X"
-license = "MAME"
-permissions = "dynarec_optional"
-display_version = "1.91"
-supports_no_game = "false"
-firmware_count = 3
-firmware0_desc = "bios_CD_E.bin (MegaCD EU BIOS)"
-firmware0_path = "bios_CD_E.bin"
-firmware0_opt = "false"
-firmware1_desc = "bios_CD_U.bin (SegaCD US BIOS)"
-firmware1_path = "bios_CD_U.bin"
-firmware1_opt = "false"
-firmware2_desc = "bios_CD_J.bin (MegaCD JP BIOS)"
-firmware2_path = "bios_CD_J.bin"
-firmware2_opt = "false"
-notes = "(!) bios_CD_U.bin (md5): 2efd74e3232ff260e371b99f84024f7f|(!) bios_CD_E.bin (md5): e66fa1dc5820d254611fdcdba0662372|(!) bios_CD_J.bin (md5): 278a9397d192149e84e820ac621a8edd"
diff --git a/games/picodrive/slack-desc b/games/picodrive/slack-desc
deleted file mode 100644
index 8fab0e1e03..0000000000
--- a/games/picodrive/slack-desc
+++ /dev/null
@@ -1,19 +0,0 @@
-# HOW TO EDIT THIS FILE:
-# The "handy ruler" below makes it easier to edit a package description.
-# Line up the first '|' above the ':' following the base package name, and
-# the '|' on the right side marks the last column you can put a character in.
-# You must make exactly 11 lines for the formatting to be correct. It's also
-# customary to leave one space after the ':' except on otherwise blank lines.
-
- |-----handy-ruler------------------------------------------------------|
-picodrive: picodrive (Fast MegaDrive/MegaCD/32X emulator)
-picodrive:
-picodrive: This is yet another Megadrive / Genesis / Sega CD / Mega CD / 32X /
-picodrive: SMS emulator, which was written having ARM-based handheld devices in
-picodrive: mind emulator, but also runs on non-ARM little-endian hardware too.
-picodrive:
-picodrive: Homepage: https://github.com/notaz/picodrive
-picodrive:
-picodrive:
-picodrive:
-picodrive:
diff --git a/games/pinball/pinball.SlackBuild b/games/pinball/pinball.SlackBuild
index 967b5d1eb6..05a1e37cfb 100644
--- a/games/pinball/pinball.SlackBuild
+++ b/games/pinball/pinball.SlackBuild
@@ -1,4 +1,4 @@
-#!/bin/sh
+#!/bin/bash
# Slackware build script for pinball
@@ -22,10 +22,13 @@
# OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF THIS SOFTWARE, EVEN IF
# ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
+cd $(dirname $0) ; CWD=$(pwd)
+
PRGNAM=pinball
VERSION=${VERSION:-0.3.4}
BUILD=${BUILD:-2}
TAG=${TAG:-_SBo}
+PKGTYPE=${PKGTYPE:-tgz}
if [ -z "$ARCH" ]; then
case "$( uname -m )" in
@@ -35,7 +38,14 @@ if [ -z "$ARCH" ]; then
esac
fi
-CWD=$(pwd)
+# If the variable PRINT_PACKAGE_NAME is set, then this script will report what
+# the name of the created package would be, and then exit. This information
+# could be useful to other scripts.
+if [ ! -z "${PRINT_PACKAGE_NAME}" ]; then
+ echo "$PRGNAM-$VERSION-$ARCH-$BUILD$TAG.$PKGTYPE"
+ exit 0
+fi
+
TMP=${TMP:-/tmp/SBo}
PKG=$TMP/package-$PRGNAM
OUTPUT=${OUTPUT:-/tmp}
@@ -107,4 +117,4 @@ mkdir -p $PKG/install
cat $CWD/slack-desc > $PKG/install/slack-desc
cd $PKG
-/sbin/makepkg -l y -c n $OUTPUT/$PRGNAM-$VERSION-$ARCH-$BUILD$TAG.${PKGTYPE:-tgz}
+/sbin/makepkg -l y -c n $OUTPUT/$PRGNAM-$VERSION-$ARCH-$BUILD$TAG.$PKGTYPE
diff --git a/games/pingus/patches/missing-header.patch b/games/pingus/patches/missing-header.patch
new file mode 100644
index 0000000000..cc1dcdbb85
--- /dev/null
+++ b/games/pingus/patches/missing-header.patch
@@ -0,0 +1,22 @@
+From df6e2f445d3e2925a94d22faeb17be9444513e92 Mon Sep 17 00:00:00 2001
+From: Jonathan Wakely <jwakely@redhat.com>
+Date: Mon, 30 Jan 2017 15:41:53 +0000
+Subject: [PATCH] Add missing header for std::function and std::bind
+
+---
+ src/pingus/screens/demo_session.cpp | 1 +
+ 1 file changed, 1 insertion(+)
+
+diff --git a/src/pingus/screens/demo_session.cpp b/src/pingus/screens/demo_session.cpp
+index e3ec49a2c..f887e50f0 100644
+--- a/src/pingus/screens/demo_session.cpp
++++ b/src/pingus/screens/demo_session.cpp
+@@ -18,6 +18,7 @@
+
+ #include <algorithm>
+ #include <iostream>
++#include <functional>
+
+ #include "engine/gui/gui_manager.hpp"
+ #include "engine/gui/surface_button.hpp"
+
diff --git a/games/pingus/patches/pingus-0.7.6-gcc470-udl.patch b/games/pingus/patches/pingus-0.7.6-gcc470-udl.patch
new file mode 100644
index 0000000000..843439321c
--- /dev/null
+++ b/games/pingus/patches/pingus-0.7.6-gcc470-udl.patch
@@ -0,0 +1,22 @@
+--- src/pingus/pingus_main.cpp~ 2011-12-24 15:46:47.000000000 -0600
++++ src/pingus/pingus_main.cpp 2012-01-03 13:13:03.034195720 -0600
+@@ -465,7 +465,7 @@
+ void
+ PingusMain::print_greeting_message()
+ {
+- std::string greeting = "Welcome to Pingus "VERSION;
++ std::string greeting = "Welcome to Pingus " VERSION;
+ greeting += "!";
+ std::cout << greeting << std::endl;
+ for (unsigned int i = 0; i < greeting.length(); ++i)
+--- src/pingus/screens/pingus_menu.cpp~ 2011-12-24 15:46:47.000000000 -0600
++++ src/pingus/screens/pingus_menu.cpp 2012-01-03 13:30:28.967700554 -0600
+@@ -153,7 +153,7 @@
+ gc.get_height()/2 - 280));
+
+ gc.print_left(Fonts::pingus_small, Vector2i(gc.get_width()/2 - 400 + 25, gc.get_height()-140),
+- "Pingus "VERSION" - Copyright (C) 1998-2011 Ingo Ruhnke <grumbel@gmail.com>\n"
++ "Pingus " VERSION " - Copyright (C) 1998-2011 Ingo Ruhnke <grumbel@gmail.com>\n"
+ "See the file AUTHORS for a complete list of contributors.\n"
+ "Pingus comes with ABSOLUTELY NO WARRANTY. This is free software, and you are\n"
+ "welcome to redistribute it under certain conditions; see the file COPYING for details.\n");
diff --git a/games/pingus/patches/pingus-boost-1.69.patch b/games/pingus/patches/pingus-boost-1.69.patch
new file mode 100644
index 0000000000..e412ffbb2e
--- /dev/null
+++ b/games/pingus/patches/pingus-boost-1.69.patch
@@ -0,0 +1,380 @@
+From fef8cf6512fa4aa09e87643c22ef66de9ec7bb41 Mon Sep 17 00:00:00 2001
+From: Ingo Ruhnke <grumbel@gmail.com>
+Date: Sat, 26 Jul 2014 20:49:11 +0200
+Subject: [PATCH] Switched to boost::signals2
+
+---
+ SConscript | 5 ++---
+ src/editor/button.hpp | 4 ++--
+ src/editor/checkbox.hpp | 4 ++--
+ src/editor/combobox.hpp | 4 ++--
+ src/editor/file_list.hpp | 4 ++--
+ src/editor/inputbox.hpp | 6 +++---
+ src/editor/message_box.hpp | 2 +-
+ src/editor/object_selector.cpp | 4 ++--
+ src/editor/viewport.hpp | 4 ++--
+ src/pingus/components/check_box.hpp | 4 ++--
+ src/pingus/components/choice_box.hpp | 4 ++--
+ src/pingus/components/slider_box.hpp | 4 ++--
+ src/pingus/config_manager.hpp | 28 ++++++++++++++--------------
+ src/pingus/screens/option_menu.hpp | 4 ++--
+ 14 files changed, 40 insertions(+), 41 deletions(-)
+
+diff --git a/SConscript b/SConscript
+index 758567f51..c4d25a8a9 100644
+--- SConscript
++++ SConscript
+@@ -187,9 +187,8 @@ class Project:
+ 'src/engine/input/xinput/xinput_device.cpp'])
+
+ def configure_boost(self):
+- if not self.conf.CheckLibWithHeader('boost_signals', 'boost/signals.hpp', 'c++'):
+- if not self.conf.CheckLibWithHeader('boost_signals-mt', 'boost/signals.hpp', 'c++'):
+- self.fatal_error += " * library 'boost_signals' not found\n"
++ if not self.conf.CheckHeader('boost/signals2.hpp', '<>', 'c++'):
++ self.fatal_error += " * library 'boost_signals2' not found\n"
+
+ def configure_png(self):
+ if self.conf.CheckMyProgram('pkg-config'):
+diff --git a/src/editor/button.hpp b/src/editor/button.hpp
+index c85d7da9e..d89dfe669 100644
+--- src/editor/button.hpp
++++ src/editor/button.hpp
+@@ -17,7 +17,7 @@
+ #ifndef HEADER_PINGUS_EDITOR_BUTTON_HPP
+ #define HEADER_PINGUS_EDITOR_BUTTON_HPP
+
+-#include <boost/signal.hpp>
++#include <boost/signals2.hpp>
+
+ #include "engine/gui/rect_component.hpp"
+
+@@ -48,7 +48,7 @@ public:
+ void enable() { enabled = true; }
+ void disable() { enabled = false; }
+
+- boost::signal<void()> on_click;
++ boost::signals2::signal<void()> on_click;
+
+ private:
+ Button (const Button&);
+diff --git a/src/editor/checkbox.hpp b/src/editor/checkbox.hpp
+index 7c3bc835f..66382d79b 100644
+--- src/editor/checkbox.hpp
++++ src/editor/checkbox.hpp
+@@ -17,7 +17,7 @@
+ #ifndef HEADER_PINGUS_EDITOR_CHECKBOX_HPP
+ #define HEADER_PINGUS_EDITOR_CHECKBOX_HPP
+
+-#include <boost/signal.hpp>
++#include <boost/signals2.hpp>
+
+ #include "engine/gui/rect_component.hpp"
+
+@@ -40,7 +40,7 @@ public:
+ bool is_checked() const { return checked; }
+ void on_primary_button_press(int x, int y);
+
+- boost::signal<void (bool)> on_change;
++ boost::signals2::signal<void (bool)> on_change;
+
+ private:
+ Checkbox (const Checkbox&);
+diff --git a/src/editor/combobox.hpp b/src/editor/combobox.hpp
+index 0ca742593..603556bd9 100644
+--- src/editor/combobox.hpp
++++ src/editor/combobox.hpp
+@@ -18,7 +18,7 @@
+ #ifndef HEADER_PINGUS_EDITOR_COMBOBOX_HPP
+ #define HEADER_PINGUS_EDITOR_COMBOBOX_HPP
+
+-#include <boost/signal.hpp>
++#include <boost/signals2.hpp>
+
+ #include "engine/display/sprite.hpp"
+ #include "engine/gui/rect_component.hpp"
+@@ -88,7 +88,7 @@ public:
+
+ void update_layout() {}
+
+- boost::signal<void (const ComboItem&)> on_select;
++ boost::signals2::signal<void (const ComboItem&)> on_select;
+
+ private:
+ Combobox();
+diff --git a/src/editor/file_list.hpp b/src/editor/file_list.hpp
+index cc4bba2de..85efe6aa0 100644
+--- src/editor/file_list.hpp
++++ src/editor/file_list.hpp
+@@ -17,7 +17,7 @@
+ #ifndef HEADER_PINGUS_EDITOR_FILE_LIST_HPP
+ #define HEADER_PINGUS_EDITOR_FILE_LIST_HPP
+
+-#include <boost/signal.hpp>
++#include <boost/signals2.hpp>
+
+ #include "engine/display/sprite.hpp"
+ #include "engine/gui/rect_component.hpp"
+@@ -61,7 +61,7 @@ public:
+ bool has_more_next_pages();
+ bool has_more_prev_pages();
+
+- boost::signal<void (const System::DirectoryEntry&)> on_click;
++ boost::signals2::signal<void (const System::DirectoryEntry&)> on_click;
+
+ private:
+ int items_per_page();
+diff --git a/src/editor/inputbox.hpp b/src/editor/inputbox.hpp
+index cad9663ec..87321dbba 100644
+--- src/editor/inputbox.hpp
++++ src/editor/inputbox.hpp
+@@ -17,7 +17,7 @@
+ #ifndef HEADER_PINGUS_EDITOR_INPUTBOX_HPP
+ #define HEADER_PINGUS_EDITOR_INPUTBOX_HPP
+
+-#include <boost/signal.hpp>
++#include <boost/signals2.hpp>
+
+ #include "engine/gui/rect_component.hpp"
+
+@@ -40,8 +40,8 @@ public:
+
+ void update_layout() {}
+
+- boost::signal<void (const std::string&)> on_change;
+- boost::signal<void (const std::string&)> on_enter;
++ boost::signals2::signal<void (const std::string&)> on_change;
++ boost::signals2::signal<void (const std::string&)> on_enter;
+
+ private:
+ Inputbox (const Inputbox&);
+diff --git a/src/editor/message_box.hpp b/src/editor/message_box.hpp
+index 385387a61..d885767cf 100644
+--- src/editor/message_box.hpp
++++ src/editor/message_box.hpp
+@@ -45,7 +45,7 @@ public:
+ void on_cancel_button();
+
+ public:
+- boost::signal<void()> on_ok;
++ boost::signals2::signal<void()> on_ok;
+
+ private:
+ MessageBox(const MessageBox&);
+diff --git a/src/editor/object_selector.cpp b/src/editor/object_selector.cpp
+index 28e306826..f3a36b5e8 100644
+--- src/editor/object_selector.cpp
++++ src/editor/object_selector.cpp
+@@ -16,7 +16,7 @@
+
+ #include "editor/object_selector.hpp"
+
+-#include <boost/signal.hpp>
++#include <boost/signals2.hpp>
+
+ #include "editor/generic_level_obj.hpp"
+ #include "editor/gui_style.hpp"
+@@ -47,7 +47,7 @@ private:
+ std::string tooltip;
+
+ public:
+- boost::signal<void()> on_click;
++ boost::signals2::signal<void()> on_click;
+
+ public:
+ ObjectSelectorButton(ObjectSelectorList* object_list_,
+diff --git a/src/editor/viewport.hpp b/src/editor/viewport.hpp
+index 1ae9eff7c..18868254d 100644
+--- src/editor/viewport.hpp
++++ src/editor/viewport.hpp
+@@ -18,7 +18,7 @@
+ #ifndef HEADER_PINGUS_EDITOR_VIEWPORT_HPP
+ #define HEADER_PINGUS_EDITOR_VIEWPORT_HPP
+
+-#include <boost/signal.hpp>
++#include <boost/signals2.hpp>
+ #include <set>
+
+ #include "editor/selection.hpp"
+@@ -148,7 +148,7 @@ public:
+
+ void clear_selection();
+
+- boost::signal<void (const Selection&)> selection_changed;
++ boost::signals2::signal<void (const Selection&)> selection_changed;
+ private:
+ Viewport();
+ Viewport (const Viewport&);
+diff --git a/src/pingus/components/check_box.hpp b/src/pingus/components/check_box.hpp
+index 00e23b764..5bef50f6b 100644
+--- src/pingus/components/check_box.hpp
++++ src/pingus/components/check_box.hpp
+@@ -17,7 +17,7 @@
+ #ifndef HEADER_PINGUS_PINGUS_COMPONENTS_CHECK_BOX_HPP
+ #define HEADER_PINGUS_PINGUS_COMPONENTS_CHECK_BOX_HPP
+
+-#include <boost/signal.hpp>
++#include <boost/signals2.hpp>
+
+ #include "engine/display/sprite.hpp"
+ #include "engine/gui/rect_component.hpp"
+@@ -39,7 +39,7 @@ public:
+
+ void set_state(bool v, bool send_signal);
+
+- boost::signal<void (bool)> on_change;
++ boost::signals2::signal<void (bool)> on_change;
+
+ private:
+ CheckBox (const CheckBox&);
+diff --git a/src/pingus/components/choice_box.hpp b/src/pingus/components/choice_box.hpp
+index 49d6e1948..ef51b6dd2 100644
+--- src/pingus/components/choice_box.hpp
++++ src/pingus/components/choice_box.hpp
+@@ -17,7 +17,7 @@
+ #ifndef HEADER_PINGUS_PINGUS_COMPONENTS_CHOICE_BOX_HPP
+ #define HEADER_PINGUS_PINGUS_COMPONENTS_CHOICE_BOX_HPP
+
+-#include <boost/signal.hpp>
++#include <boost/signals2.hpp>
+
+ #include "engine/gui/rect_component.hpp"
+
+@@ -36,7 +36,7 @@ public:
+ void add_choice(const std::string& str);
+ void set_current_choice(int choice);
+
+- boost::signal<void (std::string)> on_change;
++ boost::signals2::signal<void (std::string)> on_change;
+
+ private:
+ ChoiceBox (const ChoiceBox&);
+diff --git a/src/pingus/components/slider_box.hpp b/src/pingus/components/slider_box.hpp
+index ae4d92406..75118eac2 100644
+--- src/pingus/components/slider_box.hpp
++++ src/pingus/components/slider_box.hpp
+@@ -17,7 +17,7 @@
+ #ifndef HEADER_PINGUS_PINGUS_COMPONENTS_SLIDER_BOX_HPP
+ #define HEADER_PINGUS_PINGUS_COMPONENTS_SLIDER_BOX_HPP
+
+-#include <boost/signal.hpp>
++#include <boost/signals2.hpp>
+
+ #include "engine/gui/rect_component.hpp"
+
+@@ -39,7 +39,7 @@ public:
+
+ void set_value(int v);
+
+- boost::signal<void (int)> on_change;
++ boost::signals2::signal<void (int)> on_change;
+
+ private:
+ SliderBox (const SliderBox&);
+diff --git a/src/pingus/config_manager.hpp b/src/pingus/config_manager.hpp
+index b07b83e65..4cf08e046 100644
+--- src/pingus/config_manager.hpp
++++ src/pingus/config_manager.hpp
+@@ -17,7 +17,7 @@
+ #ifndef HEADER_PINGUS_PINGUS_CONFIG_MANAGER_HPP
+ #define HEADER_PINGUS_PINGUS_CONFIG_MANAGER_HPP
+
+-#include <boost/signal.hpp>
++#include <boost/signals2.hpp>
+
+ #include "math/size.hpp"
+ #include "pingus/options.hpp"
+@@ -39,55 +39,55 @@ public:
+
+ void set_master_volume(int);
+ int get_master_volume() const;
+- boost::signal<void(int)> on_master_volume_change;
++ boost::signals2::signal<void(int)> on_master_volume_change;
+
+ void set_sound_volume(int);
+ int get_sound_volume() const;
+- boost::signal<void(int)> on_sound_volume_change;
++ boost::signals2::signal<void(int)> on_sound_volume_change;
+
+ void set_music_volume(int);
+ int get_music_volume() const;
+- boost::signal<void(int)> on_music_volume_change;
++ boost::signals2::signal<void(int)> on_music_volume_change;
+
+ void set_fullscreen_resolution(const Size& size);
+ Size get_fullscreen_resolution() const;
+- boost::signal<void(Size)> on_fullscreen_resolution_change;
++ boost::signals2::signal<void(Size)> on_fullscreen_resolution_change;
+
+ void set_fullscreen(bool);
+ bool get_fullscreen() const;
+- boost::signal<void(bool)> on_fullscreen_change;
++ boost::signals2::signal<void(bool)> on_fullscreen_change;
+
+ void set_renderer(FramebufferType type);
+ FramebufferType get_renderer() const;
+- boost::signal<void(FramebufferType)> on_renderer_change;
++ boost::signals2::signal<void(FramebufferType)> on_renderer_change;
+
+ void set_resizable(bool);
+ bool get_resizable() const;
+- boost::signal<void(bool)> on_resizable_change;
++ boost::signals2::signal<void(bool)> on_resizable_change;
+
+ void set_mouse_grab(bool);
+ bool get_mouse_grab() const;
+- boost::signal<void(bool)> on_mouse_grab_change;
++ boost::signals2::signal<void(bool)> on_mouse_grab_change;
+
+ void set_print_fps(bool);
+ bool get_print_fps() const;
+- boost::signal<void(bool)> on_print_fps_change;
++ boost::signals2::signal<void(bool)> on_print_fps_change;
+
+ void set_language(const tinygettext::Language&);
+ tinygettext::Language get_language() const;
+- boost::signal<void(const tinygettext::Language&)> on_language_change;
++ boost::signals2::signal<void(const tinygettext::Language&)> on_language_change;
+
+ void set_software_cursor(bool);
+ bool get_software_cursor() const;
+- boost::signal<void(bool)> on_software_cursor_change;
++ boost::signals2::signal<void(bool)> on_software_cursor_change;
+
+ void set_auto_scrolling(bool);
+ bool get_auto_scrolling() const;
+- boost::signal<void(bool)> on_auto_scrolling_change;
++ boost::signals2::signal<void(bool)> on_auto_scrolling_change;
+
+ void set_drag_drop_scrolling(bool);
+ bool get_drag_drop_scrolling() const;
+- boost::signal<void(bool)> on_drag_drop_scrolling_change;
++ boost::signals2::signal<void(bool)> on_drag_drop_scrolling_change;
+
+ private:
+ ConfigManager (const ConfigManager&);
+diff --git a/src/pingus/screens/option_menu.hpp b/src/pingus/screens/option_menu.hpp
+index 60b1578d2..154ef0f69 100644
+--- src/pingus/screens/option_menu.hpp
++++ src/pingus/screens/option_menu.hpp
+@@ -17,7 +17,7 @@
+ #ifndef HEADER_PINGUS_PINGUS_SCREENS_OPTION_MENU_HPP
+ #define HEADER_PINGUS_PINGUS_SCREENS_OPTION_MENU_HPP
+
+-#include <boost/signals.hpp>
++#include <boost/signals2.hpp>
+ #include <map>
+ #include <vector>
+
+@@ -66,7 +66,7 @@ private:
+ //Label* defaults_label;
+ //CheckBox* defaults_box;
+
+- typedef std::vector<boost::signals::connection> Connections;
++ typedef std::vector<boost::signals2::connection> Connections;
+ Connections connections;
+
+ tinygettext::Language m_language;
+--
+2.18.1
+
diff --git a/games/pingus/patches/scons-python3.patch b/games/pingus/patches/scons-python3.patch
new file mode 100644
index 0000000000..96c36e4563
--- /dev/null
+++ b/games/pingus/patches/scons-python3.patch
@@ -0,0 +1,19 @@
+--- pingus-0.7.6/SConscript.orig 2019-07-27 08:28:23.143619494 +0000
++++ pingus-0.7.6/SConscript 2019-07-27 08:29:35.844531921 +0000
+@@ -126,12 +126,12 @@
+ def configure_end(self):
+ self.env = self.conf.Finish()
+
+- print "Reports:"
+- print self.reports
++ print ("Reports:")
++ print (self.reports)
+
+ if not self.fatal_error == "":
+- print "Fatal Errors:"
+- print self.fatal_error
++ print ("Fatal Errors:")
++ print (self.fatal_error)
+ Exit(1)
+
+ def configure_gxx(self):
diff --git a/games/pingus/pingus.SlackBuild b/games/pingus/pingus.SlackBuild
index e7abf19ddf..45e91f2094 100644
--- a/games/pingus/pingus.SlackBuild
+++ b/games/pingus/pingus.SlackBuild
@@ -1,8 +1,8 @@
-#!/bin/sh
+#!/bin/bash
# Slackware build script for pingus
-# Copyright 2007-2013 Heinz Wiesinger, Amsterdam, The Netherlands
+# Copyright 2007-2021 Heinz Wiesinger, Amsterdam, The Netherlands
# All rights reserved.
#
# Redistribution and use of this script, with or without modification, is
@@ -11,21 +11,24 @@
# 1. Redistributions of this script must retain the above copyright
# notice, this list of conditions and the following disclaimer.
#
-# THIS SOFTWARE IS PROVIDED BY THE AUTHOR ''AS IS'' AND ANY EXPRESS OR IMPLIED
-# WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE IMPLIED WARRANTIES OF
-# MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE ARE DISCLAIMED. IN NO
-# EVENT SHALL THE AUTHOR BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL,
-# SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT LIMITED TO,
-# PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, DATA, OR PROFITS;
-# OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY,
-# WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR
-# OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF THIS SOFTWARE, EVEN IF
-# ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
+# THIS SOFTWARE IS PROVIDED BY THE AUTHOR ``AS IS'' AND ANY EXPRESS OR IMPLIED
+# WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE IMPLIED WARRANTIES OF
+# MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE ARE DISCLAIMED. IN NO
+# EVENT SHALL THE AUTHOR BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL,
+# SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT LIMITED TO,
+# PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, DATA, OR PROFITS;
+# OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY,
+# WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR
+# OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF THIS SOFTWARE, EVEN IF
+# ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
+
+cd $(dirname $0) ; CWD=$(pwd)
PRGNAM=pingus
VERSION=${VERSION:-0.7.6}
-BUILD=${BUILD:-1}
+BUILD=${BUILD:-2}
TAG=${TAG:-_SBo}
+PKGTYPE=${PKGTYPE:-tgz}
if [ -z "$ARCH" ]; then
case "$( uname -m )" in
@@ -35,7 +38,14 @@ if [ -z "$ARCH" ]; then
esac
fi
-CWD=$(pwd)
+# If the variable PRINT_PACKAGE_NAME is set, then this script will report what
+# the name of the created package would be, and then exit. This information
+# could be useful to other scripts.
+if [ ! -z "${PRINT_PACKAGE_NAME}" ]; then
+ echo "$PRGNAM-$VERSION-$ARCH-$BUILD$TAG.$PKGTYPE"
+ exit 0
+fi
+
TMP=${TMP:-/tmp/SBo}
PKG=$TMP/package-$PRGNAM
OUTPUT=${OUTPUT:-/tmp}
@@ -69,6 +79,15 @@ find -L . \
\( -perm 666 -o -perm 664 -o -perm 640 -o -perm 600 -o -perm 444 \
-o -perm 440 -o -perm 400 \) -exec chmod 644 {} \;
+# Thanks archlinux
+patch -p1 -i $CWD/patches/missing-header.patch
+patch -p1 -i $CWD/patches/scons-python3.patch
+patch -p0 -i $CWD/patches/pingus-boost-1.69.patch
+patch -p0 -i $CWD/patches/pingus-0.7.6-gcc470-udl.patch
+
+# Fix man-page location
+sed -i "s|/man1/|/man6/|g" Makefile
+
mkdir -p build
scons \
@@ -104,4 +123,4 @@ cat $CWD/slack-desc > $PKG/install/slack-desc
cat $CWD/doinst.sh > $PKG/install/doinst.sh
cd $PKG
-/sbin/makepkg -l y -c n $OUTPUT/$PRGNAM-$VERSION-$ARCH-$BUILD$TAG.${PKGTYPE:-tgz}
+/sbin/makepkg -l y -c n $OUTPUT/$PRGNAM-$VERSION-$ARCH-$BUILD$TAG.$PKGTYPE
diff --git a/games/pingus/pingus.info b/games/pingus/pingus.info
index 2850774151..7284c8cba7 100644
--- a/games/pingus/pingus.info
+++ b/games/pingus/pingus.info
@@ -7,4 +7,4 @@ DOWNLOAD_x86_64=""
MD5SUM_x86_64=""
REQUIRES=""
MAINTAINER="Heinz Wiesinger"
-EMAIL="pprkut@liwjatan.at"
+EMAIL="pprkut@slackbuilds.org"
diff --git a/games/pioneer/README b/games/pioneer/README
index 8fdc2c947c..e19fd95e46 100644
--- a/games/pioneer/README
+++ b/games/pioneer/README
@@ -8,19 +8,13 @@ try your hand at piracy, make your fortune trading between systems, or
do missions for the various factions fighting for power, freedom or
self-determination.
-WARNING: If pioneer is already installed, uninstall it before compiling
-or important game data may be missing and pioneer will fail to start.
+To build with debugging support, use:
-OpenGL core profile version 3.1 or newer is a runtime dependency, to
-determine what version of OpenGL is installed use:
+ DEBUG="yes" ./pioneer.SlackBuild
- glxinfo | grep "core profile version"
+OpenGL core profile version 3.1 or newer is a runtime dependency. To
+determine what version of OpenGL is installed, use:
-Note: If you have intel or amd GPU with free drivers, it is recommended
-to install libtxc_dxtn as well.
+ glxinfo | grep "core profile version"
lua52 is an optional dependency.
-
-To build with debugging support use:
-
- DEBUG="yes" ./pioneer.SlackBuild
diff --git a/games/pioneer/alignment.patch b/games/pioneer/alignment.patch
deleted file mode 100644
index 10ad31ed08..0000000000
--- a/games/pioneer/alignment.patch
+++ /dev/null
@@ -1,22 +0,0 @@
---- a/src/scenegraph/Serializer.orig.h 2019-10-09 13:49:04.000000000 +0200
-+++ b/src/scenegraph/Serializer.h 2019-10-09 18:47:05.238671730 +0200
-@@ -23,14 +23,14 @@
- // where possible, prefer serializing state information via JSON instead.
- namespace Serializer {
- static_assert((sizeof(Uint32) == 4 && alignof(Uint32) == 4), "Int32 is sized differently on this platform and will not serialize properly.");
-- static_assert((sizeof(Uint64) == 8 && alignof(Uint64) == 8), "Int64 is sized differently on this platform and will not serialize properly.");
-+ static_assert((sizeof(Uint64) == 8 && alignof(Uint64) <= 8), "Int64 is sized differently on this platform and will not serialize properly.");
- static_assert((sizeof(Color) == 4 && alignof(Color) == 1), "Color is padded differently on this platform and will not serialize properly.");
- static_assert((sizeof(vector2f) == 8 && alignof(vector2f) == 4), "Vector2f is padded differently on this platform and will not serialize properly.");
-- static_assert((sizeof(vector2d) == 16 && alignof(vector2d) == 8), "Vector2d is padded differently on this platform and will not serialize properly.");
-+ static_assert((sizeof(vector2d) == 16 && alignof(vector2d) <= 8), "Vector2d is padded differently on this platform and will not serialize properly.");
- static_assert((sizeof(vector3f) == 12 && alignof(vector3f) == 4), "Vector3f is padded differently on this platform and will not serialize properly.");
-- static_assert((sizeof(vector3d) == 24 && alignof(vector3d) == 8), "Vector3d is padded differently on this platform and will not serialize properly.");
-+ static_assert((sizeof(vector3d) == 24 && alignof(vector3d) <= 8), "Vector3d is padded differently on this platform and will not serialize properly.");
- static_assert((sizeof(Quaternionf) == 16 && alignof(Quaternionf) == 4), "Quaternionf is padded differently on this platform and will not serialize properly.");
-- static_assert((sizeof(Aabb) == 56 && alignof(Aabb) == 8), "Aabb is padded differently on this platform and will not serialize properly.");
-+ static_assert((sizeof(Aabb) == 56 && alignof(Aabb) <= 8), "Aabb is padded differently on this platform and will not serialize properly.");
-
- class Writer {
- public:
-
diff --git a/games/pioneer/pioneer.SlackBuild b/games/pioneer/pioneer.SlackBuild
index 68c6bc6feb..d7d399338f 100644
--- a/games/pioneer/pioneer.SlackBuild
+++ b/games/pioneer/pioneer.SlackBuild
@@ -1,8 +1,9 @@
-#!/bin/sh
+#!/bin/bash
# Slackware build script for pioneer
# Copyright 2015-2019 Hunter Sezen California, USA
+# Copyright 2023-2024 K. Eugene Carlson Tsukuba, JP
# All rights reserved.
#
# Redistribution and use of this script, with or without modification, is
@@ -22,11 +23,13 @@
# OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF THIS SOFTWARE, EVEN IF
# ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
+cd $(dirname $0) ; CWD=$(pwd)
+
PRGNAM=pioneer
-SRCNAM=$(printf %s $PRGNAM | tr [a-z] [A-Z])
-VERSION=${VERSION:-20191117}
+VERSION=${VERSION:-20240314}
BUILD=${BUILD:-1}
TAG=${TAG:-_SBo}
+PKGTYPE=${PKGTYPE:-tgz}
if [ -z "$ARCH" ]; then
case "$( uname -m )" in
@@ -36,23 +39,26 @@ if [ -z "$ARCH" ]; then
esac
fi
-CWD=$(pwd)
+# If the variable PRINT_PACKAGE_NAME is set, then this script will report what
+# the name of the created package would be, and then exit. This information
+# could be useful to other scripts.
+if [ ! -z "${PRINT_PACKAGE_NAME}" ]; then
+ echo "$PRGNAM-$VERSION-$ARCH-$BUILD$TAG.$PKGTYPE"
+ exit 0
+fi
+
TMP=${TMP:-/tmp/SBo}
PKG=$TMP/package-$PRGNAM
OUTPUT=${OUTPUT:-/tmp}
if [ "$ARCH" = "i586" ]; then
SLKCFLAGS="-O2 -march=i586 -mtune=i686"
- LIBDIRSUFFIX=""
elif [ "$ARCH" = "i686" ]; then
SLKCFLAGS="-O2 -march=i686 -mtune=i686"
- LIBDIRSUFFIX=""
elif [ "$ARCH" = "x86_64" ]; then
SLKCFLAGS="-O2 -fPIC"
- LIBDIRSUFFIX="64"
else
SLKCFLAGS="-O2"
- LIBDIRSUFFIX=""
fi
set -eu
@@ -77,15 +83,27 @@ else
RELEASE=Release
fi
+# Fix save compatibility (#5798).
+patch -p0 < $CWD/save-compat.diff
+
GLEW=OFF
LUA=OFF
pkg-config --exists glew && GLEW=ON
pkg-config --exists lua5.2 && LUA=ON
-# Workaround 32-bit build failure
-# https://github.com/pioneerspacesim/pioneer/issues/4691
-patch -p1 < $CWD/alignment.patch
+# 20210214 bkw: prevent the build from writing to /root/, without
+# breaking ccache if it's in use.
+mkdir -p tmphome/.local/share/pioneer
+export CCACHE_DIR=${CCACHE_DIR:-$HOME/.ccache}
+export HOME=$( pwd )/tmphome
+
+OSNAME="$(awk -F= '/^ID=/{print $2}' /etc/os-release)"
+OSVER="$(awk -F= '/^VERSION_ID=/{print $2}' /etc/os-release)"
+OSCODENAME="$(awk -F= '/^VERSION_CODENAME=/{print $2}' /etc/os-release)"
+# This version information string can be included when reporting issues
+# upstream.
+INFOSTRING="$OSNAME-$OSVER-$OSCODENAME-$PRGNAM-$VERSION-$ARCH-$BUILD$TAG"
mkdir -p build
cd build
@@ -94,12 +112,15 @@ cd build
-DCMAKE_CXX_FLAGS:STRING="$SLKCFLAGS" \
-DCMAKE_INSTALL_PREFIX=/usr \
-DCMAKE_INSTALL_BINDIR=games \
- -DPIONEER_DATA_DIR=/usr/share/games/$PRGNAM \
+ -DCMAKE_INSTALL_DATADIR=share/games \
-DUSE_SYSTEM_LIBGLEW=$GLEW \
-DUSE_SYSTEM_LIBLUA=$LUA \
+ -DFMT_INSTALL=OFF \
+ -DPROJECT_VERSION_INFO="$INFOSTRING" \
-DCMAKE_BUILD_TYPE=$RELEASE ..
make
make install DESTDIR=$PKG
+ make -C . build-data install DESTDIR=$PKG
cd ..
if [ "$DEBUG" = 0 ]; then
@@ -107,8 +128,18 @@ if [ "$DEBUG" = 0 ]; then
grep ELF | cut -f 1 -d : | xargs strip --strip-unneeded 2> /dev/null || true
fi
+# Clean up the data directory, put icons and files where they are
+# supposed to be and install an SVG icon.
+rm -rf $PKG/usr/share/games/$PRGNAM/{licenses,*txt,*md}
+mv $PKG/usr/share/games/{icons,applications,metainfo} $PKG/usr/share
+sed -i 's|Exec=|Exec=/usr/|g' $PKG/usr/share/applications/net.pioneerspacesim.Pioneer.desktop
+mkdir -p $PKG/usr/share/icons/hicolor/scalable/apps
+install -m 0644 application-icon/badge-full.svg \
+ $PKG/usr/share/icons/hicolor/scalable/apps/net.pioneerspacesim.Pioneer.svg
+
mkdir -p $PKG/usr/doc/$PRGNAM-$VERSION
-cp -a licenses *.txt README.md $PKG/usr/doc/$PRGNAM-$VERSION
+cp -a licenses *.txt README.md NEWS.md $PKG/usr/doc/$PRGNAM-$VERSION
+rm -f $PKG/usr/doc/$PRGNAM-$VERSION/{CMakeLists,SAVEBUMP}.txt
cat $CWD/$PRGNAM.SlackBuild > $PKG/usr/doc/$PRGNAM-$VERSION/$PRGNAM.SlackBuild
mkdir -p $PKG/install
@@ -116,4 +147,4 @@ cat $CWD/slack-desc > $PKG/install/slack-desc
cat $CWD/doinst.sh > $PKG/install/doinst.sh
cd $PKG
-/sbin/makepkg -l y -c n $OUTPUT/$PRGNAM-$VERSION-$ARCH-$BUILD$TAG.${PKGTYPE:-tgz}
+/sbin/makepkg -l y -c n $OUTPUT/$PRGNAM-$VERSION-$ARCH-$BUILD$TAG.$PKGTYPE
diff --git a/games/pioneer/pioneer.info b/games/pioneer/pioneer.info
index 7882886f6f..633ff1cbdc 100644
--- a/games/pioneer/pioneer.info
+++ b/games/pioneer/pioneer.info
@@ -1,10 +1,10 @@
PRGNAM="pioneer"
-VERSION="20191117"
+VERSION="20240314"
HOMEPAGE="https://pioneerspacesim.net/"
-DOWNLOAD="https://github.com/pioneerspacesim/pioneer/archive/20191117/pioneer-20191117.tar.gz"
-MD5SUM="4b7b7e5119b371b65cd61f45c6747dad"
+DOWNLOAD="https://github.com/pioneerspacesim/pioneer/archive/20240314/pioneer-20240314.tar.gz"
+MD5SUM="e95791b2dc96584e51dd0d2e892655f0"
DOWNLOAD_x86_64=""
MD5SUM_x86_64=""
-REQUIRES="SDL2_image assimp"
-MAINTAINER="Hunter Sezen"
-EMAIL="orbea@riseup.net"
+REQUIRES="assimp"
+MAINTAINER="K. Eugene Carlson"
+EMAIL="kvngncrlsn@gmail.com"
diff --git a/games/pioneer/save-compat.diff b/games/pioneer/save-compat.diff
new file mode 100644
index 0000000000..db0f5f247c
--- /dev/null
+++ b/games/pioneer/save-compat.diff
@@ -0,0 +1,13 @@
+--- src/lua/LuaSerializer.cpp.orig 2024-03-16 10:23:00.037921901 +0900
++++ src/lua/LuaSerializer.cpp 2024-03-16 10:24:18.622366095 +0900
+@@ -413,6 +413,10 @@
+ lua_State *l = Lua::manager->GetLuaState();
+ LUA_DEBUG_START(l);
+
++ // Old savefile with no persistent table.
++ if (!json.count("lua_persistent_json"))
++ return;
++
+ const Json &persist = json["lua_persistent_json"];
+
+ luaL_getsubtable(l, LUA_REGISTRYINDEX, NS_REFTABLE);
diff --git a/games/pipewalker/pipewalker.SlackBuild b/games/pipewalker/pipewalker.SlackBuild
index bcd41c5271..6ad8a799a0 100644
--- a/games/pipewalker/pipewalker.SlackBuild
+++ b/games/pipewalker/pipewalker.SlackBuild
@@ -1,4 +1,4 @@
-#!/bin/sh
+#!/bin/bash
# Slackware build script for pipewalker
@@ -22,10 +22,13 @@
# OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF THIS SOFTWARE, EVEN IF
# ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
+cd $(dirname $0) ; CWD=$(pwd)
+
PRGNAM=pipewalker
VERSION=${VERSION:-0.9.4}
BUILD=${BUILD:-1}
TAG=${TAG:-_SBo}
+PKGTYPE=${PKGTYPE:-tgz}
if [ -z "$ARCH" ]; then
case "$( uname -m )" in
@@ -35,7 +38,14 @@ if [ -z "$ARCH" ]; then
esac
fi
-CWD=$(pwd)
+# If the variable PRINT_PACKAGE_NAME is set, then this script will report what
+# the name of the created package would be, and then exit. This information
+# could be useful to other scripts.
+if [ ! -z "${PRINT_PACKAGE_NAME}" ]; then
+ echo "$PRGNAM-$VERSION-$ARCH-$BUILD$TAG.$PKGTYPE"
+ exit 0
+fi
+
TMP=${TMP:-/tmp/SBo}
PKG=$TMP/package-$PRGNAM
OUTPUT=${OUTPUT:-/tmp}
@@ -93,4 +103,4 @@ cat $CWD/slack-desc > $PKG/install/slack-desc
cat $CWD/doinst.sh > $PKG/install/doinst.sh
cd $PKG
-/sbin/makepkg -l y -c n $OUTPUT/$PRGNAM-$VERSION-$ARCH-$BUILD$TAG.${PKGTYPE:-tgz}
+/sbin/makepkg -l y -c n $OUTPUT/$PRGNAM-$VERSION-$ARCH-$BUILD$TAG.$PKGTYPE
diff --git a/games/pipewalker/pipewalker.info b/games/pipewalker/pipewalker.info
index 2fe4dfa95d..578bc1cd42 100644
--- a/games/pipewalker/pipewalker.info
+++ b/games/pipewalker/pipewalker.info
@@ -6,5 +6,5 @@ MD5SUM="7c34f516c299e08e952cff1cce7d36e5"
DOWNLOAD_x86_64=""
MD5SUM_x86_64=""
REQUIRES=""
-MAINTAINER="Leo C."
-EMAIL="leoc@gmx.com"
+MAINTAINER="Edward W. Koenig"
+EMAIL="kingbeowulf@linuxgalaxy.org"
diff --git a/games/planetblupi/planetblupi.SlackBuild b/games/planetblupi/planetblupi.SlackBuild
index c68823cc2c..50fba689fc 100644
--- a/games/planetblupi/planetblupi.SlackBuild
+++ b/games/planetblupi/planetblupi.SlackBuild
@@ -1,4 +1,4 @@
-#!/bin/sh
+#!/bin/bash
# Slackware build script for planetblupi
#
# Yth | Pont-en-Royans, France | yth@ythogtha.org
@@ -20,10 +20,14 @@
# OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF THIS SOFTWARE, EVEN IF
# ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
+cd $(dirname $0) ; CWD=$(pwd)
+
PRGNAM=planetblupi
-VERSION=${VERSION:-1.14.2}
+VERSION=${VERSION:-1.15.0}
BUILD=${BUILD:-1}
TAG=${TAG:-_SBo}
+PKGTYPE=${PKGTYPE:-tgz}
+BINDIR=/usr/games
if [ -z "$ARCH" ]; then
case "$( uname -m )" in
@@ -33,7 +37,14 @@ if [ -z "$ARCH" ]; then
esac
fi
-CWD=$(pwd)
+# If the variable PRINT_PACKAGE_NAME is set, then this script will report what
+# the name of the created package would be, and then exit. This information
+# could be useful to other scripts.
+if [ ! -z "${PRINT_PACKAGE_NAME}" ]; then
+ echo "$PRGNAM-$VERSION-$ARCH-$BUILD$TAG.$PKGTYPE"
+ exit 0
+fi
+
TMP=${TMP:-/tmp/SBo}
PKG=$TMP/package-$PRGNAM
OUTPUT=${OUTPUT:-/tmp}
@@ -49,6 +60,9 @@ elif [ "$ARCH" = "i686" ]; then
elif [ "$ARCH" = "x86_64" ]; then
SLKCFLAGS="-O2 -fPIC"
LIBDIRSUFFIX="64"
+elif [ "$ARCH" = "aarch64" ]; then
+ SLKCFLAGS="-O2 -fPIC"
+ LIBDIRSUFFIX="64"
else
SLKCFLAGS="-O2"
LIBDIRSUFFIX=""
@@ -69,12 +83,51 @@ find -L . \
\( -perm 666 -o -perm 664 -o -perm 640 -o -perm 600 -o -perm 444 \
-o -perm 440 -o -perm 400 \) -exec chmod 644 {} \;
+## slackware's SDL2_ttf is outdated, using more recent one
+tar xvf $CWD/SDL_ttf-release-2.20.2.tar.gz
+pushd SDL_ttf-release-2.20.2
+chown -R root:root .
+find -L . \
+ \( -perm 777 -o -perm 775 -o -perm 750 -o -perm 711 -o -perm 555 \
+ -o -perm 511 \) -exec chmod 755 {} \; -o \
+ \( -perm 666 -o -perm 664 -o -perm 640 -o -perm 600 -o -perm 444 \
+ -o -perm 440 -o -perm 400 \) -exec chmod 644 {} \;
+
+mkdir -p build
+cd build
+ cmake \
+ -DCMAKE_C_FLAGS:STRING="$SLKCFLAGS" \
+ -DCMAKE_BUILD_TYPE=Release ..
+ make
+ mkdir -p $PKG/usr/share/planetblupi
+ cp -a libSDL2_ttf*.so* $PKG/usr/share/planetblupi
+cd ..
+cp -a SDL_ttf.h ../src/
+export CMAKE_LIBRARY_PATH=$PKG/usr/share/planetblupi
+popd
+sed -i 's/<SDL_ttf.h>/"SDL_ttf.h"/' src/text.cxx
+# planetblupi expects to find its files in (binary path)/../share/planetblupi
+# Hence we are installing planetblupi binary in /usr/libexec
+# and a shell wrapper in /usr/games.
+BINDIR=/usr/libexec
+mkdir -p $PKG/usr/games
+cat <<EOF > $PKG/usr/games/planetblupi
+#!/bin/bash
+export LD_LIBRARY_PATH=/usr/share/planetblupi:\$LD_LIBRARY_PATH
+exec "$BINDIR/planetblupi" "$@"
+EOF
+chmod 755 $PKG/usr/games/planetblupi
+## End of SDL2_ttf block
+
mkdir -p build
cd build
cmake \
-DCMAKE_C_FLAGS:STRING="$SLKCFLAGS" \
-DCMAKE_CXX_FLAGS:STRING="$SLKCFLAGS" \
-DCMAKE_INSTALL_PREFIX=/usr \
+ -DCMAKE_INSTALL_LIBDIR=lib$LIBDIRSUFFIX \
+ -DCMAKE_INSTALL_BINDIR:PATH=$BINDIR \
+ -Wno-dev \
-DCMAKE_BUILD_TYPE=Release ..
make
make install DESTDIR=$PKG
@@ -94,4 +147,4 @@ cat $CWD/slack-desc > $PKG/install/slack-desc
cat $CWD/doinst.sh > $PKG/install/doinst.sh
cd $PKG
-/sbin/makepkg -l y -c n $OUTPUT/$PRGNAM-$VERSION-$ARCH-$BUILD$TAG.${PKGTYPE:-tgz}
+/sbin/makepkg -l y -c n $OUTPUT/$PRGNAM-$VERSION-$ARCH-$BUILD$TAG.$PKGTYPE
diff --git a/games/planetblupi/planetblupi.info b/games/planetblupi/planetblupi.info
index 4b1fb17ecf..38db5bb805 100644
--- a/games/planetblupi/planetblupi.info
+++ b/games/planetblupi/planetblupi.info
@@ -1,10 +1,12 @@
PRGNAM="planetblupi"
-VERSION="1.14.2"
+VERSION="1.15.0"
HOMEPAGE="http://www.blupi.org/"
-DOWNLOAD="https://github.com/blupi-games/planetblupi/archive/v1.14.2/planetblupi-1.14.2.tar.gz"
-MD5SUM="f319de45d50d4dbc7cf2ea626f24a431"
+DOWNLOAD="https://github.com/blupi-games/planetblupi/archive/v1.15.0/planetblupi-1.15.0.tar.gz \
+ https://github.com/libsdl-org/SDL_ttf/archive/release-2.20.2/SDL_ttf-release-2.20.2.tar.gz"
+MD5SUM="25820360b1f778ff8232c63a6cc4e337 \
+ b584f806d65e9c5ced69b99b12828bee"
DOWNLOAD_x86_64=""
MD5SUM_x86_64=""
-REQUIRES="argagg SDL2 SDL2_image SDL2_mixer SDL_kitchensink"
+REQUIRES="argagg SDL_kitchensink"
MAINTAINER="Yth - Arnaud"
EMAIL="yth@ythogtha.org"
diff --git a/games/playonlinux/playonlinux.SlackBuild b/games/playonlinux/playonlinux.SlackBuild
index 87160e852f..3a15a54ca9 100644
--- a/games/playonlinux/playonlinux.SlackBuild
+++ b/games/playonlinux/playonlinux.SlackBuild
@@ -1,4 +1,4 @@
-#!/bin/sh
+#!/bin/bash
# Slackware build script for PlayOnLinux
@@ -22,15 +22,25 @@
# OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF THIS SOFTWARE, EVEN IF
# ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
+cd $(dirname $0) ; CWD=$(pwd)
+
PRGNAM=playonlinux
VERSION=${VERSION:-4.2.10}
BUILD=${BUILD:-1}
TAG=${TAG:-_SBo}
+PKGTYPE=${PKGTYPE:-tgz}
# It's all python and all in /usr/share (/usr/bin/playonlinux is a script)
ARCH=noarch
-CWD=$(pwd)
+# If the variable PRINT_PACKAGE_NAME is set, then this script will report what
+# the name of the created package would be, and then exit. This information
+# could be useful to other scripts.
+if [ ! -z "${PRINT_PACKAGE_NAME}" ]; then
+ echo "$PRGNAM-$VERSION-$ARCH-$BUILD$TAG.$PKGTYPE"
+ exit 0
+fi
+
TMP=${TMP:-/tmp/SBo}
PKG=$TMP/package-$PRGNAM
OUTPUT=${OUTPUT:-/tmp}
@@ -81,4 +91,4 @@ cat $CWD/slack-desc > $PKG/install/slack-desc
cat $CWD/doinst.sh > $PKG/install/doinst.sh
cd $PKG
-/sbin/makepkg -l y -c n $OUTPUT/$PRGNAM-$VERSION-$ARCH-$BUILD$TAG.${PKGTYPE:-tgz}
+/sbin/makepkg -l y -c n $OUTPUT/$PRGNAM-$VERSION-$ARCH-$BUILD$TAG.$PKGTYPE
diff --git a/games/pokerth/patches/pokerth-1.1.2-boost-1.70-websocket-fix1.patch b/games/pokerth/patches/pokerth-1.1.2-boost-1.70-websocket-fix1.patch
new file mode 100644
index 0000000000..cfdcf9b7da
--- /dev/null
+++ b/games/pokerth/patches/pokerth-1.1.2-boost-1.70-websocket-fix1.patch
@@ -0,0 +1,75 @@
+From c769c9238ad62178f506038178714a1c35aa2769 Mon Sep 17 00:00:00 2001
+From: Stefan Floeren <42731906+stefan-floeren@users.noreply.github.com>
+Date: Tue, 16 Apr 2019 08:38:01 +0200
+Subject: [PATCH] Replace make_shared with new in some cases
+
+Replace make_shared for asio types that take a lib::ref as a parameter.
+This should fix the ASIO change (boostorg/asio@59066d8) for 1.70,
+while keeping it backwards compatible to older boost versions.
+---
+ websocketpp/transport/asio/connection.hpp | 7 ++++---
+ websocketpp/transport/asio/endpoint.hpp | 3 +--
+ websocketpp/transport/asio/security/none.hpp | 3 +--
+ websocketpp/transport/asio/security/tls.hpp | 3 +--
+ 4 files changed, 7 insertions(+), 9 deletions(-)
+
+diff --git a/websocketpp/transport/asio/connection.hpp b/websocketpp/transport/asio/connection.hpp
+index 60f88a79..1ccda8f3 100644
+--- a/websocketpp/transport/asio/connection.hpp
++++ b/websocketpp/transport/asio/connection.hpp
+@@ -311,9 +311,10 @@ class connection : public config::socket_type::socket_con_type {
+ * needed.
+ */
+ timer_ptr set_timer(long duration, timer_handler callback) {
+- timer_ptr new_timer = lib::make_shared<lib::asio::steady_timer>(
+- lib::ref(*m_io_service),
+- lib::asio::milliseconds(duration)
++ timer_ptr new_timer(
++ new lib::asio::steady_timer(
++ *m_io_service,
++ lib::asio::milliseconds(duration))
+ );
+
+ if (config::enable_multithreading) {
+diff --git a/websocketpp/transport/asio/endpoint.hpp b/websocketpp/transport/asio/endpoint.hpp
+index ddab2c74..4b719a97 100644
+--- a/websocketpp/transport/asio/endpoint.hpp
++++ b/websocketpp/transport/asio/endpoint.hpp
+@@ -195,8 +195,7 @@ class endpoint : public config::socket_type {
+
+ m_io_service = ptr;
+ m_external_io_service = true;
+- m_acceptor = lib::make_shared<lib::asio::ip::tcp::acceptor>(
+- lib::ref(*m_io_service));
++ m_acceptor.reset(new lib::asio::ip::tcp::acceptor(*m_io_service));
+
+ m_state = READY;
+ ec = lib::error_code();
+diff --git a/websocketpp/transport/asio/security/none.hpp b/websocketpp/transport/asio/security/none.hpp
+index 5c8293db..6c7d3524 100644
+--- a/websocketpp/transport/asio/security/none.hpp
++++ b/websocketpp/transport/asio/security/none.hpp
+@@ -168,8 +168,7 @@ class connection : public lib::enable_shared_from_this<connection> {
+ return socket::make_error_code(socket::error::invalid_state);
+ }
+
+- m_socket = lib::make_shared<lib::asio::ip::tcp::socket>(
+- lib::ref(*service));
++ m_socket.reset(new lib::asio::ip::tcp::socket(*service));
+
+ if (m_socket_init_handler) {
+ m_socket_init_handler(m_hdl, *m_socket);
+diff --git a/websocketpp/transport/asio/security/tls.hpp b/websocketpp/transport/asio/security/tls.hpp
+index c76fd9aa..04ac3790 100644
+--- a/websocketpp/transport/asio/security/tls.hpp
++++ b/websocketpp/transport/asio/security/tls.hpp
+@@ -193,8 +193,7 @@ class connection : public lib::enable_shared_from_this<connection> {
+ if (!m_context) {
+ return socket::make_error_code(socket::error::invalid_tls_context);
+ }
+- m_socket = lib::make_shared<socket_type>(
+- _WEBSOCKETPP_REF(*service),lib::ref(*m_context));
++ m_socket.reset(new socket_type(*service, *m_context));
+
+ if (m_socket_init_handler) {
+ m_socket_init_handler(m_hdl, get_socket());
diff --git a/games/pokerth/patches/pokerth-1.1.2-boost-1.70-websocket-fix2.patch b/games/pokerth/patches/pokerth-1.1.2-boost-1.70-websocket-fix2.patch
new file mode 100644
index 0000000000..64faab9d37
--- /dev/null
+++ b/games/pokerth/patches/pokerth-1.1.2-boost-1.70-websocket-fix2.patch
@@ -0,0 +1,52 @@
+From f810ca2e800e9b55be41c5911cf1d1185fcd516b Mon Sep 17 00:00:00 2001
+From: Stefan Floeren <42731906+stefan-floeren@users.noreply.github.com>
+Date: Wed, 17 Apr 2019 10:06:18 +0000
+Subject: [PATCH] Fix missed entries; fix testing
+
+(Note: the CmakeLists.txt patch is cut off because we don't have it)
+
+---
+ CMakeLists.txt | 2 +-
+ websocketpp/transport/asio/connection.hpp | 3 +--
+ websocketpp/transport/asio/endpoint.hpp | 7 ++-----
+ 3 files changed, 4 insertions(+), 8 deletions(-)
+
+diff --git a/websocketpp/transport/asio/connection.hpp b/websocketpp/transport/asio/connection.hpp
+index 1ccda8f3..57dda74a 100644
+--- a/websocketpp/transport/asio/connection.hpp
++++ b/websocketpp/transport/asio/connection.hpp
+@@ -462,8 +462,7 @@ class connection : public config::socket_type::socket_con_type {
+ m_io_service = io_service;
+
+ if (config::enable_multithreading) {
+- m_strand = lib::make_shared<lib::asio::io_service::strand>(
+- lib::ref(*io_service));
++ m_strand.reset(new lib::asio::io_service::strand(*io_service));
+ }
+
+ lib::error_code ec = socket_con_type::init_asio(io_service, m_strand,
+diff --git a/websocketpp/transport/asio/endpoint.hpp b/websocketpp/transport/asio/endpoint.hpp
+index 4b719a97..94509adb 100644
+--- a/websocketpp/transport/asio/endpoint.hpp
++++ b/websocketpp/transport/asio/endpoint.hpp
+@@ -687,9 +687,7 @@ class endpoint : public config::socket_type {
+ * @since 0.3.0
+ */
+ void start_perpetual() {
+- m_work = lib::make_shared<lib::asio::io_service::work>(
+- lib::ref(*m_io_service)
+- );
++ m_work.reset(new lib::asio::io_service::work(*m_io_service));
+ }
+
+ /// Clears the endpoint's perpetual flag, allowing it to exit when empty
+@@ -853,8 +851,7 @@ class endpoint : public config::socket_type {
+
+ // Create a resolver
+ if (!m_resolver) {
+- m_resolver = lib::make_shared<lib::asio::ip::tcp::resolver>(
+- lib::ref(*m_io_service));
++ m_resolver.reset(new lib::asio::ip::tcp::resolver(*m_io_service));
+ }
+
+ tcon->set_uri(u);
diff --git a/games/pokerth/patches/pokerth-1.1.2-newer-protobuf.patch b/games/pokerth/patches/pokerth-1.1.2-newer-protobuf.patch
new file mode 100644
index 0000000000..81e0faf2ba
--- /dev/null
+++ b/games/pokerth/patches/pokerth-1.1.2-newer-protobuf.patch
@@ -0,0 +1,40 @@
+diff -Naur pokerth-20230930_ecf031e.orig/chatcleaner.pro pokerth-20230930_ecf031e/chatcleaner.pro
+--- pokerth-20230930_ecf031e.orig/chatcleaner.pro 2023-09-30 09:15:23.000000000 +0200
++++ pokerth-20230930_ecf031e/chatcleaner.pro 2024-03-03 16:38:51.640781000 +0100
+@@ -38,6 +38,8 @@
+ LIBS += -lpokerth_lib \
+ -lpokerth_protocol \
+ -lprotobuf \
++ -labsl_log_internal_check_op \
++ -labsl_log_internal_message \
+ -ltinyxml
+
+ win32 {
+diff -Naur pokerth-20230930_ecf031e.orig/pokerth_game.pro pokerth-20230930_ecf031e/pokerth_game.pro
+--- pokerth-20230930_ecf031e.orig/pokerth_game.pro 2023-09-30 09:15:23.000000000 +0200
++++ pokerth-20230930_ecf031e/pokerth_game.pro 2024-03-03 15:33:13.587781000 +0100
+@@ -524,7 +524,9 @@
+ kFreeBSD = $$find(UNAME, "kFreeBSD")
+ LIBS += -lsqlite3 \
+ -ltinyxml \
+- -lprotobuf
++ -lprotobuf \
++ -labsl_log_internal_check_op \
++ -labsl_log_internal_message
+ LIBS += $$BOOST_LIBS
+ LIBS += -lSDL \
+ -lSDL_mixer \
+diff -Naur pokerth-20230930_ecf031e.orig/pokerth_server.pro pokerth-20230930_ecf031e/pokerth_server.pro
+--- pokerth-20230930_ecf031e.orig/pokerth_server.pro 2023-09-30 09:15:23.000000000 +0200
++++ pokerth-20230930_ecf031e/pokerth_server.pro 2024-03-03 15:43:03.651781000 +0100
+@@ -285,7 +285,9 @@
+ LIBS += $$BOOST_LIBS
+ LIBS += -lsqlite3 \
+ -ltinyxml \
+- -lprotobuf
++ -lprotobuf \
++ -labsl_log_internal_check_op \
++ -labsl_log_internal_message
+ LIBS += -lgsasl
+ !isEmpty( BSD ): isEmpty( kFreeBSD ){
+ LIBS += -lcrypto -liconv
diff --git a/games/pokerth/pokerth.SlackBuild b/games/pokerth/pokerth.SlackBuild
index 5412cb9fbe..338635b115 100644
--- a/games/pokerth/pokerth.SlackBuild
+++ b/games/pokerth/pokerth.SlackBuild
@@ -1,7 +1,8 @@
-#!/bin/sh
+#!/bin/bash
-# Slackware build script for "pokerth".
+# Slackware build script for pokerth.
+# Copyright 20202024 Matteo Bernardini <ponce@slackbuilds.org>
# Copyright 2009-2015 Marcel Saegebarth <marc@mos6581.de>
# Copyright 2012 Laurent Nardou <l.nardou@wanadoo.fr>
# All rights reserved.
@@ -25,27 +26,36 @@
# (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE
# OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
+cd $(dirname $0) ; CWD=$(pwd)
+
PRGNAM=pokerth
-SRCNAM=PokerTH
-VERSION=${VERSION:-1.1.1}
+VERSION=${VERSION:-20230930_ecf031e}
BUILD=${BUILD:-1}
TAG=${TAG:-_SBo}
+PKGTYPE=${PKGTYPE:-tgz}
if [ -z "$ARCH" ]; then
case "$( uname -m )" in
- i?86) ARCH=i486 ;;
+ i?86) ARCH=i586 ;;
arm*) ARCH=arm ;;
*) ARCH=$( uname -m ) ;;
esac
fi
-CWD=$(pwd)
+# If the variable PRINT_PACKAGE_NAME is set, then this script will report what
+# the name of the created package would be, and then exit. This information
+# could be useful to other scripts.
+if [ ! -z "${PRINT_PACKAGE_NAME}" ]; then
+ echo "$PRGNAM-$VERSION-$ARCH-$BUILD$TAG.$PKGTYPE"
+ exit 0
+fi
+
TMP=${TMP:-/tmp/SBo}
PKG=$TMP/package-$PRGNAM
OUTPUT=${OUTPUT:-/tmp}
-if [ "$ARCH" = "i486" ]; then
- SLKCFLAGS="-O2 -march=i486 -mtune=i686"
+if [ "$ARCH" = "i586" ]; then
+ SLKCFLAGS="-O2 -march=i586 -mtune=i686"
LIBDIRSUFFIX=""
elif [ "$ARCH" = "i686" ]; then
SLKCFLAGS="-O2 -march=i686 -mtune=i686"
@@ -61,11 +71,11 @@ fi
set -e
rm -rf $PKG
-rm -rf $TMP/$SRCNAM-$VERSION-src
mkdir -p $TMP $PKG $OUTPUT
cd $TMP
-tar xvf $CWD/$SRCNAM-$VERSION-src.tar.bz2
-cd $SRCNAM-$VERSION-src
+rm -rf $PRGNAM-$VERSION
+tar xvf $CWD/$PRGNAM-$VERSION.tar.?z
+cd $PRGNAM-$VERSION
chown -R root:root .
find -L . \
\( -perm 777 -o -perm 775 -o -perm 750 -o -perm 711 -o -perm 555 \
@@ -73,17 +83,22 @@ find -L . \
\( -perm 666 -o -perm 664 -o -perm 640 -o -perm 600 -o -perm 444 \
-o -perm 440 -o -perm 400 \) -exec chmod 644 {} \;
-# The headers to which this file points have moved in the newer libircclient...
-# Thanks ponce.
-sed -i "s|libircclient/||" src/net/common/ircthread.cpp
+( cd src/third_party/websocketpp
+ patch -p1 < $CWD/patches/pokerth-1.1.2-boost-1.70-websocket-fix1.patch
+ patch -p1 < $CWD/patches/pokerth-1.1.2-boost-1.70-websocket-fix2.patch )
-qmake pokerth.pro
-
-make #CFLAGS="$SLKCFLAGS" CXXFLAGS="$SLKCFLAGS"
-make install DESTDIR=$PKG INSTALL_ROOT=$PKG
+patch -p1 < $CWD/patches/pokerth-1.1.2-newer-protobuf.patch
+qmake-qt5 QMAKE_CFLAGS_ISYSTEM= -spec linux-g++ pokerth.pro
+make
mkdir -p $PKG/usr/bin
-install -s -D -m 0755 $TMP/$SRCNAM-$VERSION-src/bin/pokerth_server $PKG/usr/bin
+install -s -D -m 0755 bin/pokerth_server $PKG/usr/bin
+install -s -D -m 0755 chatcleaner $PKG/usr/bin
+make clean
+
+qmake-qt5 CONFIG+="client" QMAKE_CFLAGS_ISYSTEM= -spec linux-g++ pokerth.pro
+make
+make install DESTDIR=$PKG INSTALL_ROOT=$PKG
mkdir -p $PKG/usr/doc/$PRGNAM-$VERSION
cp -a COPYING INSTALL TODO ChangeLog \
@@ -95,4 +110,4 @@ cat $CWD/slack-desc > $PKG/install/slack-desc
cat $CWD/doinst.sh > $PKG/install/doinst.sh
cd $PKG
-/sbin/makepkg -l y -c n $OUTPUT/$PRGNAM-$VERSION-$ARCH-$BUILD$TAG.${PKGTYPE:-tgz}
+/sbin/makepkg -l y -c n $OUTPUT/$PRGNAM-$VERSION-$ARCH-$BUILD$TAG.$PKGTYPE
diff --git a/games/pokerth/pokerth.info b/games/pokerth/pokerth.info
index 24588c1909..fe6981d55a 100644
--- a/games/pokerth/pokerth.info
+++ b/games/pokerth/pokerth.info
@@ -1,10 +1,10 @@
PRGNAM="pokerth"
-VERSION="1.1.1"
+VERSION="20230930_ecf031e"
HOMEPAGE="https://www.pokerth.net"
-DOWNLOAD="https://downloads.sourceforge.net/pokerth/PokerTH-1.1.1-src.tar.bz2"
-MD5SUM="a7f76f95782099f966e5f2b6809f502a"
+DOWNLOAD="https://ponce.cc/slackware/sources/repo/pokerth-20230930_ecf031e.tar.xz"
+MD5SUM="e6cf4a9441832f6657afe89186dff7a2"
DOWNLOAD_x86_64=""
MD5SUM_x86_64=""
-REQUIRES="libgsasl libircclient tinyxml protobuf"
-MAINTAINER="Marcel Saegebarth"
-EMAIL="marc@mos6581.de"
+REQUIRES="libgsasl libircclient tinyxml protobuf3"
+MAINTAINER="Matteo Bernardini"
+EMAIL="ponce@slackbuilds.org"
diff --git a/games/pom1/README b/games/pom1/README
index b6c39ed7ee..300201e80c 100644
--- a/games/pom1/README
+++ b/games/pom1/README
@@ -1,2 +1,4 @@
+pom1 (Apple I emulator)
+
Pom1 is an Apple 1 emulator ported to C and Android from the original
Java version. The port to C uses SDL and works on most platforms.
diff --git a/games/pom1/doinst.sh b/games/pom1/doinst.sh
index 4e8ba7071d..3e5691a052 100644
--- a/games/pom1/doinst.sh
+++ b/games/pom1/doinst.sh
@@ -2,3 +2,8 @@ if [ -x /usr/bin/update-desktop-database ]; then
/usr/bin/update-desktop-database -q usr/share/applications >/dev/null 2>&1
fi
+if [ -e usr/share/icons/hicolor/icon-theme.cache ]; then
+ if [ -x /usr/bin/gtk-update-icon-cache ]; then
+ /usr/bin/gtk-update-icon-cache usr/share/icons/hicolor >/dev/null 2>&1
+ fi
+fi
diff --git a/games/pom1/pom1.6 b/games/pom1/pom1.6
new file mode 100644
index 0000000000..861afe619e
--- /dev/null
+++ b/games/pom1/pom1.6
@@ -0,0 +1,252 @@
+.\" Man page generated from reStructuredText.
+.
+.
+.nr rst2man-indent-level 0
+.
+.de1 rstReportMargin
+\\$1 \\n[an-margin]
+level \\n[rst2man-indent-level]
+level margin: \\n[rst2man-indent\\n[rst2man-indent-level]]
+-
+\\n[rst2man-indent0]
+\\n[rst2man-indent1]
+\\n[rst2man-indent2]
+..
+.de1 INDENT
+.\" .rstReportMargin pre:
+. RS \\$1
+. nr rst2man-indent\\n[rst2man-indent-level] \\n[an-margin]
+. nr rst2man-indent-level +1
+.\" .rstReportMargin post:
+..
+.de UNINDENT
+. RE
+.\" indent \\n[an-margin]
+.\" old: \\n[rst2man-indent\\n[rst2man-indent-level]]
+.nr rst2man-indent-level -1
+.\" new: \\n[rst2man-indent\\n[rst2man-indent-level]]
+.in \\n[rst2man-indent\\n[rst2man-indent-level]]u
+..
+.TH "POM1" 6 "2021-10-27" "1.0.0" "SlackBuilds.org"
+.SH NAME
+pom1 \- Apple I emulator
+.\" RST source for pom1(6) man page. Convert with:
+.
+.\" rst2man.py pom1.rst > pom1.6
+.
+.\" rst2man.py comes from the SBo development/docutils package.
+.
+.SH SYNOPSIS
+.sp
+pom1 [\fI\-options\fP]
+.SH DESCRIPTION
+.sp
+\fBpom1\fP is an Apple I emulator.
+.sp
+The Apple I was Apple\(aqs first desktop computer, released in 1976.
+.SH OPTIONS
+.sp
+Options can be set from the config file, on the command line, or via
+Control key combinations while running. At exit, \fBpom1\fP writes the
+current config back to the config file.
+.TS
+center;
+|l|l|l|l|.
+_
+T{
+Option
+T} T{
+Key
+T} T{
+Command Line
+T} T{
+Description
+T}
+_
+T{
+Load Memory
+T} T{
+^L
+T} T{
+T} T{
+Load memory from a binary or ascii file.
+T}
+_
+T{
+Save Memory
+T} T{
+^S
+T} T{
+T} T{
+Save memory to a binary or ascii file.
+T}
+_
+T{
+Quit
+T} T{
+^Q
+T} T{
+T} T{
+Quit the emulator.
+T}
+_
+T{
+Reset
+T} T{
+^R
+T} T{
+T} T{
+Soft reset the emulator.
+T}
+_
+T{
+Hard Reset
+T} T{
+^H
+T} T{
+T} T{
+Hard reset the emulator.
+T}
+_
+T{
+Pixel Size
+T} T{
+^P
+T} T{
+\fB\-pixelsize\fP \fIn\fP
+T} T{
+Set the pixel size (1 or 2).
+T}
+_
+T{
+Scanlines
+T} T{
+^N
+T} T{
+\fB\-scanlines\fP
+T} T{
+Turn scanlines on or off (pixel size 2 only).
+T}
+_
+T{
+Terminal Speed
+T} T{
+^T
+T} T{
+\fB\-terminalspeed\fP \fIn\fP
+T} T{
+Set the terminal speed (Range: 1 \- 120).
+T}
+_
+T{
+RAM 8K
+T} T{
+^E
+T} T{
+\fB\-ram8k\fP
+T} T{
+Use only 8KB of RAM or entire 64KB of RAM.
+T}
+_
+T{
+Write In ROM
+T} T{
+^W
+T} T{
+\fB\-writeinrom\fP
+T} T{
+Allow writing data in ROM or not.
+T}
+_
+T{
+IRQ/BRK Vector
+T} T{
+^V
+T} T{
+T} T{
+Set address of interrupt vector.
+T}
+_
+T{
+Fullscreen
+T} T{
+^F
+T} T{
+\fB\-fullscreen\fP
+T} T{
+Switch to fullscreen or window.
+T}
+_
+T{
+Blink Cursor
+T} T{
+^B
+T} T{
+\fB\-blinkcursor\fP
+T} T{
+Set the cursor to blink or not.
+T}
+_
+T{
+Cursor Block
+T} T{
+^C
+T} T{
+\fB\-blockcursor\fP
+T} T{
+Set the cursor to block or @.
+T}
+_
+T{
+Show About
+T} T{
+^A
+T} T{
+T} T{
+Show version and copyright information.
+T}
+_
+T{
+ROM Directory
+T} T{
+T} T{
+\fB\-romdir\fP \fIdir\fP
+T} T{
+Look here for ROMS (see \fBFILES\fP).
+T}
+_
+.TE
+.SH FILES
+.INDENT 0.0
+.TP
+.B \fB~/.pom1/pom1.cfg\fP
+Read at startup and overwritten at exit. Contains the state of options that
+can be set from the command line (\fB\-pixelsize\fP, etc). If this file is
+missing, it will be created.
+.TP
+.B \fB/usr/share/games/pom1/roms\fP
+Default location for the ROM images: \fBbasic.rom\fP, \fBcharmap.rom\fP, and \fBmonitor.rom\fP\&.
+.UNINDENT
+.SH ENVIRONMENT
+.INDENT 0.0
+.TP
+.B \fBPOM1ROMDIR\fP
+If set, overrides the built\-in path to the ROM images. Same as the command\-line
+option \fB\-romdir\fP\&.
+.UNINDENT
+.SH COPYRIGHT
+.sp
+See the file /usr/doc/pom1\-1.0.0/COPYING for license information.
+.SH AUTHORS
+.sp
+\fBpom1\fP was written by John D. Corrado and Verhille Arnaud.
+.sp
+This man page written for the SlackBuilds.org project
+by B. Watson, and is licensed under the WTFPL.
+.SH SEE ALSO
+.sp
+The \fBpom1\fP homepage: \fI\%http://pom1.sourceforge.net/\fP
+.sp
+Wikipedia\(aqs Apple I entry: \fI\%https://en.wikipedia.org/wiki/Apple_I\fP
+.\" Generated by docutils manpage writer.
+.
diff --git a/games/pom1/pom1.SlackBuild b/games/pom1/pom1.SlackBuild
index aacd497beb..bc8567ef44 100644
--- a/games/pom1/pom1.SlackBuild
+++ b/games/pom1/pom1.SlackBuild
@@ -1,16 +1,28 @@
-#!/bin/sh
+#!/bin/bash
# Slackware build script for pom1
-# Written by B. Watson (yalhcru@gmail.com)
+# Written by B. Watson (urchlay@slackware.uk)
# Licensed under the WTFPL. See http://www.wtfpl.net/txt/copying/
# for details.
+# 20230107 bkw: BUILD=3, fix icons (derp).
+
+# 20211027 bkw: BUILD=2
+# - new-style icons.
+# - binary in /usr/games.
+# - get rid of silly wrapper script.
+# - /usr/share/pom1 => /usr/share/games/pom1.
+# - man page.
+
+cd $(dirname $0) ; CWD=$(pwd)
+
PRGNAM=pom1
VERSION=${VERSION:-1.0.0}
-BUILD=${BUILD:-1}
+BUILD=${BUILD:-3}
TAG=${TAG:-_SBo}
+PKGTYPE=${PKGTYPE:-tgz}
if [ -z "$ARCH" ]; then
case "$( uname -m )" in
@@ -20,7 +32,11 @@ if [ -z "$ARCH" ]; then
esac
fi
-CWD=$(pwd)
+if [ ! -z "${PRINT_PACKAGE_NAME}" ]; then
+ echo "$PRGNAM-$VERSION-$ARCH-$BUILD$TAG.$PKGTYPE"
+ exit 0
+fi
+
TMP=${TMP:-/tmp/SBo}
PKG=$TMP/package-$PRGNAM
OUTPUT=${OUTPUT:-/tmp}
@@ -48,18 +64,23 @@ rm -rf $PRGNAM-$VERSION
tar xvf $CWD/$PRGNAM-$VERSION.tar.gz
cd $PRGNAM-$VERSION
chown -R root:root .
-find -L . \
- \( -perm 777 -o -perm 775 -o -perm 750 -o -perm 711 -o -perm 555 -o -perm 511 \) \
- -exec chmod 755 {} \; -o \
- \( -perm 666 -o -perm 664 -o -perm 600 -o -perm 444 -o -perm 440 -o -perm 400 \) \
- -exec chmod 644 {} \;
+find -L . -perm /111 -a \! -perm 755 -a -exec chmod 755 {} \+ -o \
+ \! -perm /111 -a \! -perm 644 -a -exec chmod 644 {} \+
+
+sed -i -e 's/Emulator;/&System;/' \
+ -e 's,Exec=,&/usr/games/,' \
+ src/$PRGNAM.desktop.in
-sed -i 's/Emulator;/&System;/' src/$PRGNAM.desktop.in
+# 20211027 bkw: we don't need a wrapper script that just sets one
+# environment variable and calls the real binary, when we can
+# set the default in the code.
+sed -i '/setRomDirectory/s,"roms","/usr/share/games/pom1/roms",' src/main.c
CFLAGS="$SLKCFLAGS" \
CXXFLAGS="$SLKCFLAGS" \
./configure \
--prefix=/usr \
+ --bindir=/usr/games \
--libdir=/usr/lib${LIBDIRSUFFIX} \
--sysconfdir=/etc \
--localstatedir=/var \
@@ -70,24 +91,33 @@ CXXFLAGS="$SLKCFLAGS" \
make
make install-strip DESTDIR=$PKG
-mv $PKG/usr/share/icons $PKG/usr/share/pixmaps
-mkdir -p $PKG/usr/doc/$PRGNAM-$VERSION
+rm -rf $PKG/usr/share/icons
+mkdir -p $PKG/usr/share/games
+mv $PKG/usr/share/$PRGNAM $PKG/usr/share/games/$PRGNAM
+
+# Icon created by Creative Nerds, downloaded from:
+# http://www.iconarchive.com/show/wooden-social-icons-by-creativenerds/apple-icon.html
+
+for px in 16 32 48 64 128; do
+ size=${px}x${px}
+ dir=$PKG/usr/share/icons/hicolor/$size/apps
+ mkdir -p $dir
+ convert -resize $size $CWD/$PRGNAM.png $dir/$PRGNAM.png
+done
+
+mkdir -p $PKG/usr/doc/$PRGNAM-$VERSION $PKG/usr/share/pixmaps
+ln -s ../icons/hicolor/48x48/apps/$PRGNAM.png $PKG/usr/share/pixmaps/$PRGNAM.png
# Why is there a fricken --docdir option when every configure
# script ignores it?!
mv $PKG/usr/share/doc/$PRGNAM/* $PKG/usr/doc/$PRGNAM-$VERSION
rm -rf $PKG/usr/share/doc
-# Icon created by Creative Nerds, downloaded from:
-# http://www.iconarchive.com/show/wooden-social-icons-by-creativenerds/apple-icon.html
-mkdir -p $PKG/usr/share/pixmaps
-cat $CWD/$PRGNAM.png > $PKG/usr/share/pixmaps/$PRGNAM.png
+# man page written by SlackBuild author.
+mkdir -p $PKG/usr/man/man6
+gzip -9c < $CWD/$PRGNAM.6 > $PKG/usr/man/man6/$PRGNAM.6.gz
-# I prefer not to clutter /usr/bin with binaries you're not supposed
-# to actually ever run, so:
-mkdir -p $PKG/usr/libexec
-mv $PKG/usr/bin/$PRGNAM-$VERSION $PKG/usr/libexec
-sed -i "s,^$PRGNAM-$VERSION,/usr/libexec/&," $PKG/usr/bin/$PRGNAM
+mv $PKG/usr/games/$PRGNAM-$VERSION $PKG/usr/games/$PRGNAM
cp -a COPYING $PKG/usr/doc/$PRGNAM-$VERSION
cat $CWD/$PRGNAM.SlackBuild > $PKG/usr/doc/$PRGNAM-$VERSION/$PRGNAM.SlackBuild
@@ -97,4 +127,4 @@ cat $CWD/slack-desc > $PKG/install/slack-desc
cat $CWD/doinst.sh > $PKG/install/doinst.sh
cd $PKG
-/sbin/makepkg -l y -c n $OUTPUT/$PRGNAM-$VERSION-$ARCH-$BUILD$TAG.${PKGTYPE:-tgz}
+/sbin/makepkg -l y -c n $OUTPUT/$PRGNAM-$VERSION-$ARCH-$BUILD$TAG.$PKGTYPE
diff --git a/games/pom1/pom1.info b/games/pom1/pom1.info
index 0e4e757e1b..7cb45628ae 100644
--- a/games/pom1/pom1.info
+++ b/games/pom1/pom1.info
@@ -1,10 +1,10 @@
PRGNAM="pom1"
VERSION="1.0.0"
-HOMEPAGE="http://pom1.sourceforge.net/"
-DOWNLOAD="http://downloads.sourceforge.net/project/pom1/pom1/1.0.0/pom1-1.0.0.tar.gz"
+HOMEPAGE="https://pom1.sourceforge.net/"
+DOWNLOAD="https://downloads.sourceforge.net/project/pom1/pom1/1.0.0/pom1-1.0.0.tar.gz"
MD5SUM="fbea72f26ab9f1771e8171021406b194"
DOWNLOAD_x86_64=""
MD5SUM_x86_64=""
REQUIRES=""
MAINTAINER="B. Watson"
-EMAIL="yalhcru@gmail.com"
+EMAIL="urchlay@slackware.uk"
diff --git a/games/pom1/pom1.rst b/games/pom1/pom1.rst
new file mode 100644
index 0000000000..5c3b28d929
--- /dev/null
+++ b/games/pom1/pom1.rst
@@ -0,0 +1,97 @@
+.. RST source for pom1(6) man page. Convert with:
+.. rst2man.py pom1.rst > pom1.6
+.. rst2man.py comes from the SBo development/docutils package.
+
+.. |version| replace:: 1.0.0
+.. |date| date::
+
+====
+pom1
+====
+
+----------------
+Apple I emulator
+----------------
+
+:Manual section: 6
+:Manual group: SlackBuilds.org
+:Date: |date|
+:Version: |version|
+
+SYNOPSIS
+========
+
+pom1 [*-options*]
+
+DESCRIPTION
+===========
+
+**pom1** is an Apple I emulator.
+
+The Apple I was Apple's first desktop computer, released in 1976.
+
+OPTIONS
+=======
+
+Options can be set from the config file, on the command line, or via
+Control key combinations while running. At exit, **pom1** writes the
+current config back to the config file.
+
+============== === ====================== ==========================================
+Option Key Command Line Description
+============== === ====================== ==========================================
+Load Memory ^L Load memory from a binary or ascii file.
+Save Memory ^S Save memory to a binary or ascii file.
+Quit ^Q Quit the emulator.
+Reset ^R Soft reset the emulator.
+Hard Reset ^H Hard reset the emulator.
+Pixel Size ^P **-pixelsize** *n* Set the pixel size (1 or 2).
+Scanlines ^N **-scanlines** Turn scanlines on or off (pixel size 2 only).
+Terminal Speed ^T **-terminalspeed** *n* Set the terminal speed (Range: 1 - 120).
+RAM 8K ^E **-ram8k** Use only 8KB of RAM or entire 64KB of RAM.
+Write In ROM ^W **-writeinrom** Allow writing data in ROM or not.
+IRQ/BRK Vector ^V Set address of interrupt vector.
+Fullscreen ^F **-fullscreen** Switch to fullscreen or window.
+Blink Cursor ^B **-blinkcursor** Set the cursor to blink or not.
+Cursor Block ^C **-blockcursor** Set the cursor to block or \@.
+Show About ^A Show version and copyright information.
+ROM Directory **-romdir** *dir* Look here for ROMS (see **FILES**).
+============== === ====================== ==========================================
+
+FILES
+=====
+
+**~/.pom1/pom1.cfg**
+ Read at startup and overwritten at exit. Contains the state of options that
+ can be set from the command line (**-pixelsize**, etc). If this file is
+ missing, it will be created.
+
+**/usr/share/games/pom1/roms**
+ Default location for the ROM images: **basic.rom**, **charmap.rom**, and **monitor.rom**.
+
+ENVIRONMENT
+===========
+
+**POM1ROMDIR**
+ If set, overrides the built-in path to the ROM images. Same as the command-line
+ option **-romdir**.
+
+COPYRIGHT
+=========
+
+See the file /usr/doc/pom1-|version|/COPYING for license information.
+
+AUTHORS
+=======
+
+**pom1** was written by John D. Corrado and Verhille Arnaud.
+
+This man page written for the SlackBuilds.org project
+by B. Watson, and is licensed under the WTFPL.
+
+SEE ALSO
+========
+
+The **pom1** homepage: http://pom1.sourceforge.net/
+
+Wikipedia's Apple I entry: https://en.wikipedia.org/wiki/Apple_I
diff --git a/games/powerslave_demo_data/powerslave_demo_data.SlackBuild b/games/powerslave_demo_data/powerslave_demo_data.SlackBuild
index f699c53cbf..58a2a2cce3 100644
--- a/games/powerslave_demo_data/powerslave_demo_data.SlackBuild
+++ b/games/powerslave_demo_data/powerslave_demo_data.SlackBuild
@@ -1,8 +1,8 @@
-#!/bin/sh
+#!/bin/bash
# Slackware build script for powerslave_demo_data
-# Written by B. Watson (yalhcru@gmail.com)
+# Written by B. Watson (urchlay@slackware.uk)
# Licensed under the WTFPL. See http://www.wtfpl.net/txt/copying/ for details.
@@ -11,14 +11,21 @@
# VERSION is the date of the newest file in the zip (PS.EXE)
+cd $(dirname $0) ; CWD=$(pwd)
+
PRGNAM=powerslave_demo_data
VERSION=${VERSION:-19961212}
BUILD=${BUILD:-1}
TAG=${TAG:-_SBo}
+PKGTYPE=${PKGTYPE:-tgz}
ARCH=noarch
SRCNAM=pwrslave
-CWD=$(pwd)
+if [ ! -z "${PRINT_PACKAGE_NAME}" ]; then
+ echo "$PRGNAM-$VERSION-$ARCH-$BUILD$TAG.$PKGTYPE"
+ exit 0
+fi
+
TMP=${TMP:-/tmp/SBo}
PKG=$TMP/package-$PRGNAM
OUTPUT=${OUTPUT:-/tmp}
@@ -47,4 +54,4 @@ mkdir -p $PKG/install
cat $CWD/slack-desc > $PKG/install/slack-desc
cd $PKG
-/sbin/makepkg -l y -c n $OUTPUT/$PRGNAM-$VERSION-$ARCH-$BUILD$TAG.${PKGTYPE:-tgz}
+/sbin/makepkg -l y -c n $OUTPUT/$PRGNAM-$VERSION-$ARCH-$BUILD$TAG.$PKGTYPE
diff --git a/games/powerslave_demo_data/powerslave_demo_data.info b/games/powerslave_demo_data/powerslave_demo_data.info
index 8e7aa51de0..a9152f335c 100644
--- a/games/powerslave_demo_data/powerslave_demo_data.info
+++ b/games/powerslave_demo_data/powerslave_demo_data.info
@@ -7,4 +7,4 @@ DOWNLOAD_x86_64=""
MD5SUM_x86_64=""
REQUIRES="nblood"
MAINTAINER="B. Watson"
-EMAIL="yalhcru@gmail.com"
+EMAIL="urchlay@slackware.uk"
diff --git a/games/ppsspp/README b/games/ppsspp/README
index addf8a0eb8..0585ea2864 100644
--- a/games/ppsspp/README
+++ b/games/ppsspp/README
@@ -2,13 +2,15 @@ PPSSPP can run your PSP games on your PC in full HD resolution. It can
even upscale textures that would otherwise be too blurry as they were
made for the small screen of the original PSP.
-* Play in HD resolutions and more * Play on a tablet for big-screen
-mobile gaming * Customize on-screen touch controls or use an external
-controller or keyboard * Save and restore game state anywhere, anytime
-* Crank up the anisotropic filtering and texture scaling * Continue
-where you left off by transferring saves from your real PSP
+* Play in HD resolutions and more
+* Play on a tablet for big-screen mobile gaming
+* Customize on-screen touch controls or use an external controller or
+keyboard
+* Save and restore game state anywhere, anytime
+* Crank up the anisotropic filtering and texture scaling
+* Continue where you left off by transferring saves from your real PSP
snappy is an optional dependency.
-QT=on will enable QT GUI and require qt5 installed (default is
-'QT=off').
+QT=ON will enable QT GUI and require qt5 installed (default is
+'QT=OFF').
diff --git a/games/ppsspp/ppsspp-qt.desktop b/games/ppsspp/ppsspp-qt.desktop
deleted file mode 100644
index 4bdd11d58a..0000000000
--- a/games/ppsspp/ppsspp-qt.desktop
+++ /dev/null
@@ -1,9 +0,0 @@
-[Desktop Entry]
-Version=1.0
-Name=PPSSPP (Qt)
-Exec=ppsspp-qt %f
-Icon=ppsspp
-Type=Application
-GenericName=PSP Emulator
-Comment=ppsspp (fast and portable PSP emulator)
-Categories=Game
diff --git a/games/ppsspp/ppsspp.SlackBuild b/games/ppsspp/ppsspp.SlackBuild
index 2c79e3aaae..cda92afb6c 100644
--- a/games/ppsspp/ppsspp.SlackBuild
+++ b/games/ppsspp/ppsspp.SlackBuild
@@ -1,9 +1,9 @@
-#!/bin/sh
+#!/bin/bash
# Slackware build script for ppsspp
# Copyright 2016 Hunter Sezen California, USA
-# Copyright 2019-2020 Ruoh-Shoei LIN
+# Copyright 2019-2023 Ruoh-Shoei LIN
# All rights reserved.
#
# Redistribution and use of this script, with or without modification, is
@@ -23,10 +23,13 @@
# OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF THIS SOFTWARE, EVEN IF
# ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
+cd $(dirname $0) ; CWD=$(pwd)
+
PRGNAM=ppsspp
-VERSION=${VERSION:-1.10.3}
+VERSION=${VERSION:-1.15.4}
BUILD=${BUILD:-1}
TAG=${TAG:-_SBo}
+PKGTYPE=${PKGTYPE:-tgz}
if [ -z "$ARCH" ]; then
case "$( uname -m )" in
@@ -36,7 +39,14 @@ if [ -z "$ARCH" ]; then
esac
fi
-CWD=$(pwd)
+# If the variable PRINT_PACKAGE_NAME is set, then this script will report what
+# the name of the created package would be, and then exit. This information
+# could be useful to other scripts.
+if [ ! -z "${PRINT_PACKAGE_NAME}" ]; then
+ echo "$PRGNAM-$VERSION-$ARCH-$BUILD$TAG.$PKGTYPE"
+ exit 0
+fi
+
TMP=${TMP:-/tmp/SBo}
PKG=$TMP/package-$PRGNAM
OUTPUT=${OUTPUT:-/tmp}
@@ -61,26 +71,9 @@ rm -rf $PKG
mkdir -p $TMP $PKG $OUTPUT
cd $TMP
rm -rf $PRGNAM-$VERSION
-tar xvf $CWD/$PRGNAM-$VERSION.tar.gz
+tar xvf $CWD/$PRGNAM-$VERSION.tar.?z
cd $PRGNAM-$VERSION
-# The submodules are in a separate archive. This is equivalent to
-# git submodule update --init --recursive
-tar -xvf $CWD/hrydgard-glslang-d0850f8.tar.gz \
- -C ext/glslang --strip-components=1
-tar -xvf $CWD/hrydgard-ppsspp-lang-1c64b8f.tar.gz \
- -C assets/lang --strip-components=1
-tar -xvf $CWD/KhronosGroup-SPIRV-Cross-a1f7c8d.tar.gz \
- -C ext/SPIRV-Cross --strip-components=1
-tar -xvf $CWD/Kingcom-armips-7885552.tar.gz \
- -C ext/armips --strip-components=1
-tar -xvf $CWD/hrydgard-ppsspp-ffmpeg-55147e5.tar.gz \
- --exclude '*/Windows*' --exclude '*/android' \
- --exclude '*/ios' --exclude '*/blackberry'\
- --exclude '*/macosx' --exclude '*/wiiu' \
- --exclude '*/symbian' \
- -C ffmpeg --strip-components=1
-
chown -R root:root .
find -L . \
\( -perm 777 -o -perm 775 -o -perm 750 -o -perm 711 -o -perm 555 \
@@ -88,64 +81,48 @@ find -L . \
\( -perm 666 -o -perm 664 -o -perm 640 -o -perm 600 -o -perm 444 \
-o -perm 440 -o -perm 400 \) -exec chmod 644 {} \;
-# This does build with Slackware 14.2's CMake.
-sed -i 's/VERSION 3.6/VERSION 3.5.2/' CMakeLists.txt
-
# Don't force explicit ccache invocation.
sed -i -e '/include(ccache)/d' CMakeLists.txt
# set git-version
sed -i "s/unknown/${VERSION}/" git-version.cmake
-mkdir -p build-qt build-sdl
-
-QT=${QT:-off}
-if [ "$QT" = "on" ]; then
- cd build-qt
- cmake \
+if [ "${QT:-OFF}" = "ON" ]; then
+ cmake -B build-qt \
-DCMAKE_C_FLAGS:STRING="$SLKCFLAGS" \
-DCMAKE_CXX_FLAGS:STRING="$SLKCFLAGS" \
-DCMAKE_INSTALL_PREFIX=/usr \
-DCMAKE_SKIP_RPATH=TRUE \
- -Wno-dev \
-DUSING_QT_UI=ON \
-DUSE_SYSTEM_LIBZIP=ON \
+ -DUSE_SYSTEM_FFMPEG=ON \
-DUSE_DISCORD=OFF \
- -DCMAKE_BUILD_TYPE=Release ..
- make
- cd ..
- install -Dm755 build-qt/PPSSPPQt $PKG/usr/games/ppsspp-qt
- install -Dm644 $CWD/ppsspp-qt.desktop $PKG/usr/share/applications/ppsspp-qt.desktop
+ -DUSE_SYSTEM_ZSTD=ON \
+ -DCMAKE_BUILD_TYPE=Release
+ make -C build-qt
+ install -Dm755 build-qt/PPSSPPQt -t $PKG/usr/bin/
+ install -Dm644 build-qt/ppsspp.desktop $PKG/usr/share/applications/PPSSPPQt.desktop
fi
-cd build-sdl
-cmake \
- -DCMAKE_C_FLAGS:STRING="$SLKCFLAGS" \
- -DCMAKE_CXX_FLAGS:STRING="$SLKCFLAGS" \
- -DCMAKE_INSTALL_PREFIX=/usr \
- -DCMAKE_SKIP_RPATH=TRUE \
- -Wno-dev \
- -DUSING_QT_UI=OFF \
- -DHEADLESS='ON' \
- -DUSE_SYSTEM_LIBZIP=ON \
- -DUSE_DISCORD=OFF \
- -DCMAKE_BUILD_TYPE=Release ..
-make
-cd ..
-install -Dm755 build-sdl/PPSSPPHeadless $PKG/usr/games/ppsspp-headless
-install -Dm755 build-sdl/PPSSPPSDL $PKG/usr/games/ppsspp-sdl
-
-mkdir -p $PKG/usr/{games,share/{applications,icons/hicolor,pixmaps,ppsspp}}
-install -Dm644 $CWD/ppsspp.desktop $PKG/usr/share/applications/ppsspp.desktop
-cp -r assets $PKG/usr/share/ppsspp
-cp -r icons/hicolor/* $PKG/usr/share/icons/hicolor
-cp icons/icon-512.svg $PKG/usr/share/pixmaps/ppsspp.svg
+cmake -B build-sdl \
+ -DCMAKE_C_FLAGS:STRING="$SLKCFLAGS" \
+ -DCMAKE_CXX_FLAGS:STRING="$SLKCFLAGS" \
+ -DCMAKE_INSTALL_PREFIX=/usr \
+ -DCMAKE_SKIP_RPATH=TRUE \
+ -DUSING_QT_UI=OFF \
+ -DUSE_SYSTEM_LIBZIP=ON \
+ -DUSE_SYSTEM_FFMPEG=ON \
+ -DUSE_DISCORD=OFF \
+ -DUSE_SYSTEM_ZSTD=ON \
+ -DCMAKE_BUILD_TYPE=Release
+make -C build-sdl
+make install DESTDIR=$PKG -C build-sdl
find $PKG -print0 | xargs -0 file | grep -e "executable" -e "shared object" | grep ELF \
| cut -f 1 -d : | xargs strip --strip-unneeded 2> /dev/null || true
-mkdir -p $PKG/usr/doc/$PRGNAM-$VERSION
-cp -v LICENSE.TXT README.md history.md headless/headless.txt $PKG/usr/doc/$PRGNAM-$VERSION
+install -Dm644 LICENSE.TXT README.md history.md \
+ -t $PKG/usr/doc/$PRGNAM-$VERSION
cat $CWD/$PRGNAM.SlackBuild > $PKG/usr/doc/$PRGNAM-$VERSION/$PRGNAM.SlackBuild
mkdir -p $PKG/install
@@ -153,4 +130,4 @@ cat $CWD/slack-desc > $PKG/install/slack-desc
cat $CWD/doinst.sh > $PKG/install/doinst.sh
cd $PKG
-/sbin/makepkg -l y -c n $OUTPUT/$PRGNAM-$VERSION-$ARCH-$BUILD$TAG.${PKGTYPE:-tgz}
+/sbin/makepkg -l y -c n $OUTPUT/$PRGNAM-$VERSION-$ARCH-$BUILD$TAG.$PKGTYPE
diff --git a/games/ppsspp/ppsspp.desktop b/games/ppsspp/ppsspp.desktop
deleted file mode 100644
index 63e50e308a..0000000000
--- a/games/ppsspp/ppsspp.desktop
+++ /dev/null
@@ -1,9 +0,0 @@
-[Desktop Entry]
-Version=1.0
-Name=PPSSPP (SDL)
-Exec=ppsspp-sdl %f
-Icon=ppsspp
-Type=Application
-GenericName=PSP Emulator
-Comment=ppsspp (fast and portable PSP emulator)
-Categories=Game
diff --git a/games/ppsspp/ppsspp.info b/games/ppsspp/ppsspp.info
index 2b9113f20c..d89daf7053 100644
--- a/games/ppsspp/ppsspp.info
+++ b/games/ppsspp/ppsspp.info
@@ -1,20 +1,10 @@
PRGNAM="ppsspp"
-VERSION="1.10.3"
+VERSION="1.15.4"
HOMEPAGE="https://www.ppsspp.org/"
-DOWNLOAD="https://github.com/hrydgard/ppsspp/archive/v1.10.3/ppsspp-1.10.3.tar.gz \
- https://github.com/hrydgard/glslang/archive/d0850f875ec392a130ccf00018dab458b546f27c/hrydgard-glslang-d0850f8.tar.gz \
- https://github.com/hrydgard/ppsspp-lang/archive/1c64b8fbd3cb6bd87935eb53f302f7de6f86e209/hrydgard-ppsspp-lang-1c64b8f.tar.gz \
- https://github.com/KhronosGroup/SPIRV-Cross/archive/a1f7c8dc8ea2f94443951ee27003bffa562c1f13/KhronosGroup-SPIRV-Cross-a1f7c8d.tar.gz \
- https://github.com/Kingcom/armips/archive/7885552b208493a6a0f21663770c446c3ba65576/Kingcom-armips-7885552.tar.gz \
- https://github.com/hrydgard/ppsspp-ffmpeg/archive/55147e5f33f5ae4904f75ec082af809267122b94/hrydgard-ppsspp-ffmpeg-55147e5.tar.gz"
-MD5SUM="66d6f34bba99f06e4cedf8d24fc9a205 \
- 781915370eb2b2c3c2f75d33a46154ae \
- 78e170cb8e40106dc1d428f896defdd9 \
- 9c0141380c98ccdff95a084ac07d1d48 \
- 4731977e287eee39ddcc247d75095758 \
- d529fc6f45fd4bbec825c543dab9da65"
+DOWNLOAD="https://github.com/hrydgard/ppsspp/releases/download/v1.15.4/ppsspp-1.15.4.tar.xz"
+MD5SUM="4b30f39f0ecf8ec8c2af349e88c97c06"
DOWNLOAD_x86_64=""
MD5SUM_x86_64=""
-REQUIRES="SDL2 python3"
+REQUIRES=""
MAINTAINER="Ruoh-Shoei LIN"
-EMAIL="lin.ruohshoei [at] gmail [dot] com"
+EMAIL="lin.ruohshoei+sbo [at] gmail [dot] com"
diff --git a/games/ppsspp/slack-desc b/games/ppsspp/slack-desc
index bdac1aa87e..00ea7e49a8 100644
--- a/games/ppsspp/slack-desc
+++ b/games/ppsspp/slack-desc
@@ -6,7 +6,7 @@
# customary to leave one space after the ':' except on otherwise blank lines.
|-----handy-ruler------------------------------------------------------|
-ppsspp: ppsspp (a fast and portable PSP emulator)
+ppsspp: ppsspp (fast and portable PSP emulator)
ppsspp:
ppsspp: PPSSPP can run your PSP games on your PC in full HD resolution. It
ppsspp: can even upscale textures that would otherwise be too blurry as they
diff --git a/games/prboom-plus/README b/games/prboom-plus/README
index 70ec066d88..2cd75e32f9 100644
--- a/games/prboom-plus/README
+++ b/games/prboom-plus/README
@@ -4,14 +4,32 @@ PrBoom+ is a Doom source port developed from the original PrBoom
project.
Features uncapped framerate, widescreen aspect ratios, soundfont
-support, variable gamespeed, re-record, walkcam, chasecam, full full
-mouselook, fov and other features along with full compatibility with
-the original Doom/Doom2 engines.
-
-FluidSynth, needed for soundfont support, is an optional dependency.
+support, variable gamespeed, re-record, walkcam, chasecam, full
+mouselook, variable FOV, and other features along with full
+compatibility with the original Doom/Doom2 engines.
The documentation refers to a directory into which an IWAD
file (doom.wad, doom2.wad, tnt.wad, plutonia.wad, or the
-shareware doom1.wad) may be placed. The IWAD directory is
+shareware doom1.wad) may be placed. The IWAD directory is
/usr/share/games/doom. If you don't have any IWADs, install
doom_shareware_data to play shareware Doom.
+
+Optional dependencies, autodetected:
+portmidi - for the PortMIDI backend. Most users won't need this.
+dumb - somehow, this can be used for music. No idea how to enable it,
+ but if dumb is detected, prboom-plus will link with it.
+
+*** NOTE ***
+
+Currently the SDL MIDI player is broken. The default player in this
+build is OPL2. You won't be able to select SDL from the "Preferred
+MIDI Player" menu in the game options. If you have an old config
+file that sets snd_midiplayer to "sdl", the music will sound *really*
+messed up. If this happens, simply edit ~/.prboom-plus/prboom-plus.cfg
+and remove the line containing snd_midiplayer. Or just delete the
+file, to start with default settings.
+
+If you don't like the sound of the OPL2 music, you can try using
+FluidSynth instead (Options -> General -> Preferred MIDI Player in the
+user interface). Other options (PortMIDI and ALSA) may be usable but
+will require more setup, outside the scope of this README.
diff --git a/games/prboom-plus/doinst.sh b/games/prboom-plus/doinst.sh
new file mode 100644
index 0000000000..daf1ce3148
--- /dev/null
+++ b/games/prboom-plus/doinst.sh
@@ -0,0 +1,10 @@
+
+if [ -x /usr/bin/update-desktop-database ]; then
+ /usr/bin/update-desktop-database -q usr/share/applications >/dev/null 2>&1
+fi
+
+if [ -e usr/share/icons/hicolor/icon-theme.cache ]; then
+ if [ -x /usr/bin/gtk-update-icon-cache ]; then
+ /usr/bin/gtk-update-icon-cache usr/share/icons/hicolor >/dev/null 2>&1
+ fi
+fi
diff --git a/games/prboom-plus/prboom-plus.SlackBuild b/games/prboom-plus/prboom-plus.SlackBuild
index ed96afa6b7..373411b1ad 100644
--- a/games/prboom-plus/prboom-plus.SlackBuild
+++ b/games/prboom-plus/prboom-plus.SlackBuild
@@ -1,12 +1,26 @@
-#!/bin/sh
+#!/bin/bash
# Slackware build script for prboom-plus
# Originally written by Dugan Chen (email removed)
-# Modified and now maintained by B. Watson <yalhcru@gmail.com>.
+# Modified and now maintained by B. Watson <urchlay@slackware.uk>.
# Original had no license. Modified version released under the WTFPL. See
# http://www.wtfpl.net/txt/copying/ for details.
+# 20230714 bkw: update for v2.6.66. SDL MIDI is still broken.
+# - change default fluidsynth soundfont to one that exists in Slackware.
+# - document optional dependency dumb.
+
+# 20220622 bkw: update for v2.6.2, add missing doinst.sh.
+
+# 20211027 bkw:
+# - update for v2.6.1um.
+# - band-aid for segfaults on -current (see below). this isn't
+# a side-effect of the version upgrade: it happens on 2.6um also.
+
+# 20210223 bkw: update for v2.6um. Upstream switched to cmake,
+# so we can't build previous versions any more.
+
# 20200416 bkw:
# - take over maintenance
# - i486 => i586
@@ -15,10 +29,13 @@
# - install desktop, icon, bash completion
# - game binaries in /usr/games
+cd $(dirname $0) ; CWD=$(pwd)
+
PRGNAM=prboom-plus
-VERSION=${VERSION:-2.5.1.7um}
+VERSION=${VERSION:-2.6.66}
BUILD=${BUILD:-1}
TAG=${TAG:-_SBo}
+PKGTYPE=${PKGTYPE:-tgz}
if [ -z "$ARCH" ]; then
case "$( uname -m )" in
@@ -28,7 +45,11 @@ if [ -z "$ARCH" ]; then
esac
fi
-CWD=$(pwd)
+if [ ! -z "${PRINT_PACKAGE_NAME}" ]; then
+ echo "$PRGNAM-$VERSION-$ARCH-$BUILD$TAG.$PKGTYPE"
+ exit 0
+fi
+
TMP=${TMP:-/tmp/SBo}
PKG=$TMP/package-$PRGNAM
OUTPUT=${OUTPUT:-/tmp}
@@ -60,28 +81,51 @@ find -L . -perm /111 -a \! -perm 755 -a -exec chmod 755 {} \+ -o \
\! -perm /111 -a \! -perm 644 -a -exec chmod 644 {} \+
[ -d prboom2 ] && cd prboom2
-[ -x configure ] || sh bootstrap
-
-CFLAGS="$SLKCFLAGS" \
-CXXFLAGS="$SLKCFLAGS" \
-./configure \
- --bindir=/usr/games \
- --prefix=/usr \
- --libdir=/usr/lib${LIBDIRSUFFIX} \
- --sysconfdir=/etc \
- --localstatedir=/var \
- --build=$ARCH-slackware-linux \
- --datarootdir=/usr \
- --enable-gl
-
-make
-make install-strip DESTDIR=$PKG
-
-# Configure script insists on putting docs in /usr/share/doc, even when told not to.
-# Also, the version number in the doc dir is wrong...
-mkdir -p $PKG/usr/doc/$PRGNAM-$VERSION
-mv $PKG/usr/share/doc/$PRGNAM-*/* $PKG/usr/doc/$PRGNAM-$VERSION
-rm -rf $PKG/usr/share/doc
+
+# upstream hardcoded paths, can't override on cmake command line.
+sed -i '/install/s,/bin,/games,' src/CMakeLists.txt
+sed -i '/^set(CMAKE_INSTALL_DOCDIR/d' CMakeLists.txt
+
+# 20230714 bkw: use a default soundfont that exists. allows choosing the
+# fluidsynth midi option. personally I think opl2 sounds better, but *shrug*.
+US="/usr/share"
+sed -i '/snd_soundfont/s,"'$US'[^"]*","'$US'/minuet/soundfonts/GeneralUser-v1.47.sf2",' src/m_misc.c
+
+MIXEROPT=ON
+if [ "${BANDAID:-yes}" = "yes" ]; then
+ # 20211027 bkw: Band-aid. The game segfaults when the midi backend
+ # is set to "sdl". Adding -DWITH_MIXER=OFF stops it segfaulting, but
+ # it sounds *horrible*. So this bit of sed changes the default sound
+ # backend to "opl2", which doesn't sound as nice, but allows the game
+ # to run. Also it increases the default volume, since the opl2 synth
+ # is quieter.
+ # 20230714 bkw: this is still needed for v2.6.66. the fault is in
+ # Slackware 15.0, so it's not going to change soon.
+ MIXEROPT=OFF
+ sed -i -e '/"snd_midiplayer"/s,"sdl","opl2",' \
+ -e '/"music_volume"/s,8,12,' \
+ src/m_misc.c
+
+ # 2nd half of the band-aid: prevent the user from choosing SDL MIDI
+ # from the menu.
+ sed -i '/"snd_midiplayer"/s,midiplayers,&+1,' src/m_menu.c
+fi
+
+mkdir -p build
+cd build
+ cmake \
+ -DWITH_MIXER=$MIXEROPT \
+ -DCMAKE_C_FLAGS:STRING="$SLKCFLAGS" \
+ -DCMAKE_CXX_FLAGS:STRING="$SLKCFLAGS" \
+ -DCMAKE_INSTALL_PREFIX=/usr \
+ -DLIB_SUFFIX=${LIBDIRSUFFIX} \
+ -DCMAKE_INSTALL_BINDIR=games \
+ -DCMAKE_INSTALL_MANDIR=/usr/man \
+ -DCMAKE_INSTALL_DOCDIR=/usr/doc/$PRGNAM-$VERSION \
+ -DCMAKE_BUILD_TYPE=Release ..
+ make
+ make install/strip DESTDIR=$PKG
+cd ..
gzip $PKG/usr/man/man?/*.?
@@ -93,12 +137,12 @@ cp ICONS/$PRGNAM.desktop $PKG/usr/share/applications
cp ICONS/$PRGNAM.svg $PKG/usr/share/icons/hicolor/scalable/apps
cp ICONS/$PRGNAM.bash $PKG/usr/share/bash-completion/completions/$PRGNAM
-mkdir -p $PKG/usr/doc/$PRGNAM-$VERSION
-cp -a TODO $PKG/usr/doc/$PRGNAM-$VERSION
+cp -a AUTHORS COPYING README NEWS $PKG/usr/doc/$PRGNAM-$VERSION
cat $CWD/$PRGNAM.SlackBuild > $PKG/usr/doc/$PRGNAM-$VERSION/$PRGNAM.SlackBuild
mkdir -p $PKG/install
cat $CWD/slack-desc > $PKG/install/slack-desc
+cat $CWD/doinst.sh > $PKG/install/doinst.sh
cd $PKG
-/sbin/makepkg -l y -c n $OUTPUT/$PRGNAM-$VERSION-$ARCH-$BUILD$TAG.${PKGTYPE:-tgz}
+/sbin/makepkg -l y -c n $OUTPUT/$PRGNAM-$VERSION-$ARCH-$BUILD$TAG.$PKGTYPE
diff --git a/games/prboom-plus/prboom-plus.info b/games/prboom-plus/prboom-plus.info
index a80ee5990d..0b35a74d52 100644
--- a/games/prboom-plus/prboom-plus.info
+++ b/games/prboom-plus/prboom-plus.info
@@ -1,10 +1,10 @@
PRGNAM="prboom-plus"
-VERSION="2.5.1.7um"
+VERSION="2.6.66"
HOMEPAGE="http://prboom-plus.sourceforge.net"
-DOWNLOAD="https://github.com/coelckers/prboom-plus/archive/v2.5.1.7um/prboom-plus-2.5.1.7um.tar.gz"
-MD5SUM="2c36f7902f837057c7e299adb20e81fb"
+DOWNLOAD="https://github.com/coelckers/prboom-plus/archive/v2.6.66/prboom-plus-2.6.66.tar.gz"
+MD5SUM="62b29843ba4ab1f442be8fe469ee523f"
DOWNLOAD_x86_64=""
MD5SUM_x86_64=""
-REQUIRES="SDL2 SDL2_net SDL2_image SDL2_mixer"
+REQUIRES=""
MAINTAINER="B. Watson"
-EMAIL="yalhcru@gmail.com"
+EMAIL="urchlay@slackware.uk"
diff --git a/games/prboom-plus/slack-desc b/games/prboom-plus/slack-desc
index bd3b0e71f3..196aeff751 100644
--- a/games/prboom-plus/slack-desc
+++ b/games/prboom-plus/slack-desc
@@ -13,7 +13,7 @@ prboom-plus: project.
prboom-plus:
prboom-plus: Features uncapped framerate, widescreen aspect ratios, FluidSynth
prboom-plus: support, variable gamespeed, re-record, walkcam, chasecam, full
-prboom-plus: full mouselook, fov and other features along with full compatibility
-prboom-plus: with the original Doom/Doom2 engines.
+prboom-plus: mouselook, variable fov and other features along with full
+prboom-plus: compatibility with the original Doom/Doom2 engines.
prboom-plus:
prboom-plus: http://prboom-plus.sourceforge.net
diff --git a/games/prboom/prboom.SlackBuild b/games/prboom/prboom.SlackBuild
index 1d2e2a6810..546afa13ce 100644
--- a/games/prboom/prboom.SlackBuild
+++ b/games/prboom/prboom.SlackBuild
@@ -1,4 +1,4 @@
-#!/bin/sh
+#!/bin/bash
# Slackware build script for prboom
@@ -22,26 +22,38 @@
# OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF THIS SOFTWARE, EVEN IF
# ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
+# 20220221 bkw: Modified by SlackBuilds.org:
+# - fix 15.0 build.
+# - use "set -e" instead of "|| exit 1" after every command.
+# - do not install useless INSTALL in doc dir.
+
+cd $(dirname $0) ; CWD=$(pwd)
+
PRGNAM=prboom
VERSION=${VERSION:-2.5.0}
BUILD=${BUILD:-1}
TAG=${TAG:-_SBo}
+PKGTYPE=${PKGTYPE:-tgz}
if [ -z "$ARCH" ]; then
case "$( uname -m )" in
- i?86) ARCH=i486 ;;
+ i?86) ARCH=i586 ;;
arm*) ARCH=arm ;;
*) ARCH=$( uname -m ) ;;
esac
fi
-CWD=$(pwd)
+if [ ! -z "${PRINT_PACKAGE_NAME}" ]; then
+ echo "$PRGNAM-$VERSION-$ARCH-$BUILD$TAG.$PKGTYPE"
+ exit 0
+fi
+
TMP=${TMP:-/tmp/SBo}
PKG=$TMP/package-$PRGNAM
OUTPUT=${OUTPUT:-/tmp}
-if [ "$ARCH" = "i486" ]; then
- SLKCFLAGS="-O2 -march=i486 -mtune=i686"
+if [ "$ARCH" = "i586" ]; then
+ SLKCFLAGS="-O2 -march=i586 -mtune=i686"
LIBDIRSUFFIX=""
elif [ "$ARCH" = "i686" ]; then
SLKCFLAGS="-O2 -march=i686 -mtune=i686"
@@ -54,6 +66,8 @@ else
LIBDIRSUFFIX=""
fi
+set -e
+
rm -rf $PKG
mkdir -p $TMP $PKG $OUTPUT
cd $TMP || exit 1
@@ -63,12 +77,14 @@ cd $PRGNAM-$VERSION || exit 1
chown -R root:root .
find -L . \
\( -perm 777 -o -perm 775 -o -perm 750 -o -perm 711 -o -perm 555 -o -perm 511 \) \
- -exec chmod 755 {} \; -o \
+ -exec chmod 755 {} \+ -o \
\( -perm 666 -o -perm 664 -o -perm 600 -o -perm 444 -o -perm 440 -o -perm 400 \) \
- -exec chmod 644 {} \;
+ -exec chmod 644 {} \+
# patch thanks to Arch Linux
-patch -p1 < $CWD/libpng-1.4.patch || exit 1
+patch -p1 < $CWD/libpng-1.4.patch
+
+SLKCFLAGS+=" -fcommon"
# --disable-i386-asm fixes the "exit with signal 8" crash on the x86 arch
# --enable-gl allows to launch game with: prboom -vidmode gl
@@ -84,21 +100,19 @@ CXXFLAGS="$SLKCFLAGS" \
--docdir=/usr/doc/$PRGNAM-$VERSION \
--build=$ARCH-slackware-linux \
--disable-i386-asm \
- --enable-gl || exit 1
-
-make || exit 1
-make install-strip DESTDIR=$PKG || exit 1
+ --enable-gl
-find $PKG/usr/man -type f -exec gzip -9 {} \;
-for i in $( find $PKG/usr/man -type l ) ; do ln -s $( readlink $i ).gz $i.gz ; rm $i ; done
+make
+make install-strip DESTDIR=$PKG
+gzip $PKG/usr/man/man*/*
mv $PKG/usr/share/doc $PKG/usr
mkdir -p $PKG/usr/doc/$PRGNAM-$VERSION
-cp -a TODO INSTALL $PKG/usr/doc/$PRGNAM-$VERSION
+cp -a TODO $PKG/usr/doc/$PRGNAM-$VERSION
cat $CWD/$PRGNAM.SlackBuild > $PKG/usr/doc/$PRGNAM-$VERSION/$PRGNAM.SlackBuild
mkdir -p $PKG/install
cat $CWD/slack-desc > $PKG/install/slack-desc
cd $PKG
-/sbin/makepkg -l y -c n $OUTPUT/$PRGNAM-$VERSION-$ARCH-$BUILD$TAG.${PKGTYPE:-tgz}
+/sbin/makepkg -l y -c n $OUTPUT/$PRGNAM-$VERSION-$ARCH-$BUILD$TAG.$PKGTYPE
diff --git a/games/principia/README b/games/principia/README
new file mode 100644
index 0000000000..8964eee79b
--- /dev/null
+++ b/games/principia/README
@@ -0,0 +1,2 @@
+Build and play advanced contraptions, circuiting, minigames,
+robot adventures and more.
diff --git a/games/principia/doinst.sh b/games/principia/doinst.sh
new file mode 100644
index 0000000000..625ced33d1
--- /dev/null
+++ b/games/principia/doinst.sh
@@ -0,0 +1,9 @@
+if [ -e usr/share/icons/hicolor/icon-theme.cache ]; then
+ if [ -x /usr/bin/gtk-update-icon-cache ]; then
+ /usr/bin/gtk-update-icon-cache -f usr/share/icons/hicolor >/dev/null 2>&1
+ fi
+fi
+
+if [ -x /usr/bin/update-desktop-database ]; then
+ /usr/bin/update-desktop-database -q usr/share/applications >/dev/null 2>&1
+fi
diff --git a/games/principia/principia.SlackBuild b/games/principia/principia.SlackBuild
new file mode 100644
index 0000000000..bed700b6a3
--- /dev/null
+++ b/games/principia/principia.SlackBuild
@@ -0,0 +1,92 @@
+#!/bin/bash
+
+# Slackware build script for principia
+
+# Copyright 2023-2024 Johannes Schoepfer, Germany
+# All rights reserved.
+#
+# Redistribution and use of this script, with or without modification, is
+# permitted provided that the following conditions are met:
+#
+# 1. Redistributions of this script must retain the above copyright
+# notice, this list of conditions and the following disclaimer.
+#
+# THIS SOFTWARE IS PROVIDED BY THE AUTHOR "AS IS" AND ANY EXPRESS OR IMPLIED
+# WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE IMPLIED WARRANTIES OF
+# MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE ARE DISCLAIMED. IN NO
+# EVENT SHALL THE AUTHOR BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL,
+# SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT LIMITED TO,
+# PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, DATA, OR PROFITS;
+# OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY,
+# WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR
+# OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF THIS SOFTWARE, EVEN IF
+# ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
+
+cd $(dirname $0) ; CWD=$(pwd)
+
+PRGNAM=principia
+VERSION=${VERSION:-2024.02.29}
+BUILD=${BUILD:-1}
+TAG=${TAG:-_SBo}
+PKGTYPE=${PKGTYPE:-tgz}
+
+if [ -z "$ARCH" ]; then
+ case "$( uname -m )" in
+ i?86) ARCH=i586 ;;
+ arm*) ARCH=arm ;;
+ *) ARCH=$( uname -m ) ;;
+ esac
+fi
+
+if [ ! -z "${PRINT_PACKAGE_NAME}" ]; then
+ echo "$PRGNAM-$VERSION-$ARCH-$BUILD$TAG.$PKGTYPE"
+ exit 0
+fi
+
+TMP=${TMP:-/tmp/SBo}
+PKG=$TMP/package-$PRGNAM
+OUTPUT=${OUTPUT:-/tmp}
+
+set -e
+
+rm -rf $PKG
+mkdir -p $TMP $PKG $OUTPUT
+cd $TMP
+rm -rf $PRGNAM-$VERSION
+tar vxf $CWD/$PRGNAM-$VERSION.tar.gz
+cd $PRGNAM-$VERSION
+chown -R root:root .
+find -L . \
+ \( -perm 777 -o -perm 775 -o -perm 750 -o -perm 711 -o -perm 555 \
+ -o -perm 511 \) -exec chmod 755 {} + -o \
+ \( -perm 666 -o -perm 664 -o -perm 640 -o -perm 600 -o -perm 444 \
+ -o -perm 440 -o -perm 400 \) -exec chmod 644 {} +
+
+mkdir build
+cd build
+ CFLAGS="$SLKCFLAGS" \
+ CXXFLAGS="$SLKCFLAGS" \
+ cmake \
+ -DCMAKE_C_FLAGS:STRING="$SLKCFLAGS" \
+ -DCMAKE_CXX_FLAGS:STRING="$SLKCFLAGS" \
+ -DCMAKE_INSTALL_PREFIX=/usr \
+ -DCMAKE_BUILD_TYPE=Release .. -G Ninja
+ "${NINJA:=ninja}"
+ DESTDIR=$PKG $NINJA install
+cd ..
+
+find $PKG -print0 | xargs -0 file | grep -e "executable" -e "shared object" | grep ELF \
+ | cut -f 1 -d : | xargs strip --strip-unneeded 2> /dev/null || true
+
+mkdir -p $PKG/usr/doc/$PRGNAM-$VERSION
+cp -a \
+ AUTHORS.md THANKS.md LICENSE.md README.md \
+ $PKG/usr/doc/$PRGNAM-$VERSION
+cat $CWD/$PRGNAM.SlackBuild > $PKG/usr/doc/$PRGNAM-$VERSION/$PRGNAM.SlackBuild
+
+mkdir -p $PKG/install
+cat $CWD/slack-desc > $PKG/install/slack-desc
+cat $CWD/doinst.sh > $PKG/install/doinst.sh
+
+cd $PKG
+/sbin/makepkg -l y -c n $OUTPUT/$PRGNAM-$VERSION-$ARCH-$BUILD$TAG.$PKGTYPE
diff --git a/games/principia/principia.info b/games/principia/principia.info
new file mode 100644
index 0000000000..66fc6fe254
--- /dev/null
+++ b/games/principia/principia.info
@@ -0,0 +1,10 @@
+PRGNAM="principia"
+VERSION="2024.02.29"
+HOMEPAGE="https://principia-web.se/"
+DOWNLOAD="https://github.com/Bithack/principia/archive/2024.02.29/principia-2024.02.29.tar.gz"
+MD5SUM="edbeecdb543c1f9b064357061606b61b"
+DOWNLOAD_x86_64=""
+MD5SUM_x86_64=""
+REQUIRES=""
+MAINTAINER="Johannes Schoepfer"
+EMAIL="slackbuilds@schoepfer.info"
diff --git a/games/principia/slack-desc b/games/principia/slack-desc
new file mode 100644
index 0000000000..5f3ed407e8
--- /dev/null
+++ b/games/principia/slack-desc
@@ -0,0 +1,19 @@
+# HOW TO EDIT THIS FILE:
+# The "handy ruler" below makes it easier to edit a package description.
+# Line up the first '|' above the ':' following the base package name, and
+# the '|' on the right side marks the last column you can put a character in.
+# You must make exactly 11 lines for the formatting to be correct. It's also
+# customary to leave one space after the ':' except on otherwise blank lines.
+
+ |-----handy-ruler------------------------------------------------------|
+principia: principia (physics-based sandbox game)
+principia:
+principia: Build and play advanced contraptions, circuiting, minigames,
+principia: robot adventures and more.
+principia:
+principia:
+principia:
+principia:
+principia:
+principia: https://principia-web.se/
+principia:
diff --git a/games/prosystem-libretro/README b/games/prosystem-libretro/README
deleted file mode 100644
index a627965199..0000000000
--- a/games/prosystem-libretro/README
+++ /dev/null
@@ -1,10 +0,0 @@
-ProSystem is an Atari 7800 video game system emulator that can be used
-as a libretro core.
-
-ProSystem optionally supports using the following BIOS image file for
-operation:
-
-* 7800 BIOS (U).rom (Atari 7800 BIOS)
-
-To build the debugging symbols use:
- DEBUG=1 ./prosystem-libretro.SlackBuild
diff --git a/games/prosystem-libretro/prosystem-libretro.SlackBuild b/games/prosystem-libretro/prosystem-libretro.SlackBuild
deleted file mode 100644
index 78f1b0f84e..0000000000
--- a/games/prosystem-libretro/prosystem-libretro.SlackBuild
+++ /dev/null
@@ -1,82 +0,0 @@
-#!/bin/sh
-
-# Slackware build script for prosystem-libretro
-
-# Copyright 2016-2018 Hunter Sezen
-# All rights reserved.
-#
-# Redistribution and use of this script, with or without modification, is
-# permitted provided that the following conditions are met:
-#
-# 1. Redistributions of this script must retain the above copyright
-# notice, this list of conditions and the following disclaimer.
-#
-# THIS SOFTWARE IS PROVIDED BY THE AUTHOR "AS IS" AND ANY EXPRESS OR IMPLIED
-# WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE IMPLIED WARRANTIES OF
-# MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE ARE DISCLAIMED. IN NO
-# EVENT SHALL THE AUTHOR BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL,
-# SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT LIMITED TO,
-# PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, DATA, OR PROFITS;
-# OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY,
-# WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR
-# OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF THIS SOFTWARE, EVEN IF
-# ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
-
-PRGNAM=prosystem-libretro
-LIBNAM=$(echo $PRGNAM | tr - _)
-VERSION=${VERSION:-2018.09.29_247d5f2}
-BUILD=${BUILD:-1}
-TAG=${TAG:-_SBo}
-
-if [ -z "$ARCH" ]; then
- case "$( uname -m )" in
- i?86) ARCH=i586 ;;
- arm*) ARCH=arm ;;
- *) ARCH=$( uname -m ) ;;
- esac
-fi
-
-CWD=$(pwd)
-TMP=${TMP:-/tmp/SBo}
-PKG=$TMP/package-$PRGNAM
-OUTPUT=${OUTPUT:-/tmp}
-
-LIBDIRSUFFIX=
-[ "$ARCH" = x86_64 ] && LIBDIRSUFFIX=64
-
-set -eu
-
-rm -rf $PKG
-mkdir -p $TMP $PKG $OUTPUT
-cd $TMP
-rm -rf $PRGNAM-$VERSION
-tar xvf $CWD/$PRGNAM-$VERSION.tar.xz
-cd $PRGNAM-$VERSION
-chown -R root:root .
-find -L . \
- \( -perm 777 -o -perm 775 -o -perm 750 -o -perm 711 -o -perm 555 \
- -o -perm 511 \) -exec chmod 755 {} \; -o \
- \( -perm 666 -o -perm 664 -o -perm 640 -o -perm 600 -o -perm 444 \
- -o -perm 440 -o -perm 400 \) -exec chmod 644 {} \;
-
-[ "${DEBUG:=0}" != 0 ] && DEBUG=1
-
-make DEBUG=$DEBUG
-
-install -Dm0644 $LIBNAM.so $PKG/usr/lib${LIBDIRSUFFIX}/libretro/$LIBNAM.so
-install -Dm0644 $LIBNAM.info $PKG/usr/lib${LIBDIRSUFFIX}/libretro/info/$LIBNAM.info
-
-if [ $DEBUG = 0 ]; then
- find $PKG -print0 | xargs -0 file | grep -e "executable" -e "shared object" | grep ELF \
- | cut -f 1 -d : | xargs strip --strip-unneeded 2> /dev/null || true
-fi
-
-mkdir -p $PKG/usr/doc/$PRGNAM-$VERSION
-cp -a License.txt README.md $PKG/usr/doc/$PRGNAM-$VERSION
-cat $CWD/$PRGNAM.SlackBuild > $PKG/usr/doc/$PRGNAM-$VERSION/$PRGNAM.SlackBuild
-
-mkdir -p $PKG/install
-cat $CWD/slack-desc > $PKG/install/slack-desc
-
-cd $PKG
-/sbin/makepkg -l y -c n $OUTPUT/$PRGNAM-$VERSION-$ARCH-$BUILD$TAG.${PKGTYPE:-tgz}
diff --git a/games/prosystem-libretro/prosystem-libretro.info b/games/prosystem-libretro/prosystem-libretro.info
deleted file mode 100644
index ab65affd24..0000000000
--- a/games/prosystem-libretro/prosystem-libretro.info
+++ /dev/null
@@ -1,10 +0,0 @@
-PRGNAM="prosystem-libretro"
-VERSION="2018.09.29_247d5f2"
-HOMEPAGE="https://www.libretro.com/"
-DOWNLOAD="http://slackless.raccoons.tech/src/libretro/prosystem-libretro-2018.09.29_247d5f2.tar.xz"
-MD5SUM="1e44cac327e0235df0e20b57f9790b69"
-DOWNLOAD_x86_64=""
-MD5SUM_x86_64=""
-REQUIRES="RetroArch"
-MAINTAINER="orphaned - no maintainer"
-EMAIL="nobody@nowhere.com"
diff --git a/games/prosystem-libretro/slack-desc b/games/prosystem-libretro/slack-desc
deleted file mode 100644
index ec0b9a2903..0000000000
--- a/games/prosystem-libretro/slack-desc
+++ /dev/null
@@ -1,19 +0,0 @@
-# HOW TO EDIT THIS FILE:
-# The "handy ruler" below makes it easier to edit a package description.
-# Line up the first '|' above the ':' following the base package name, and
-# the '|' on the right side marks the last column you can put a character in.
-# You must make exactly 11 lines for the formatting to be correct. It's also
-# customary to leave one space after the ':' except on otherwise blank lines.
-
- |-----handy-ruler------------------------------------------------------|
-prosystem-libretro: prosystem-libretro (libretro port of ProSystem)
-prosystem-libretro:
-prosystem-libretro: ProSystem is an Atari 7800 video game system emulator that can be
-prosystem-libretro: used as a libretro core.
-prosystem-libretro:
-prosystem-libretro: Homepage: https://www.libretro.com/
-prosystem-libretro:
-prosystem-libretro:
-prosystem-libretro:
-prosystem-libretro:
-prosystem-libretro:
diff --git a/games/protontricks/README b/games/protontricks/README
new file mode 100644
index 0000000000..f7122df827
--- /dev/null
+++ b/games/protontricks/README
@@ -0,0 +1,8 @@
+This is a wrapper script that allows you to easily run Winetricks
+commands for Steam Play/Proton games among other common Wine features,
+such as launching external Windows executables.
+This is often useful when a game requires closed-source runtime
+libraries or applications that are not included with
+Proton.
+optional dependencies="yad" for GUI for game selection
+ "zenity" for GUI for winetricks
diff --git a/games/protontricks/doinst.sh b/games/protontricks/doinst.sh
new file mode 100644
index 0000000000..5fb28930db
--- /dev/null
+++ b/games/protontricks/doinst.sh
@@ -0,0 +1,3 @@
+if [ -x /usr/bin/update-desktop-database ]; then
+ /usr/bin/update-desktop-database -q usr/share/applications >/dev/null 2>&1
+fi
diff --git a/games/protontricks/protontricks.SlackBuild b/games/protontricks/protontricks.SlackBuild
new file mode 100644
index 0000000000..fccbf9ee9d
--- /dev/null
+++ b/games/protontricks/protontricks.SlackBuild
@@ -0,0 +1,93 @@
+#!/bin/bash
+
+# Slackware build script for protontricks
+
+# Copyright 2023 Damian Perticone, Berisso, Argentina
+# All rights reserved.
+#
+# Redistribution and use of this script, with or without modification, is
+# permitted provided that the following conditions are met:
+#
+# 1. Redistributions of this script must retain the above copyright
+# notice, this list of conditions and the following disclaimer.
+#
+# THIS SOFTWARE IS PROVIDED BY THE AUTHOR "AS IS" AND ANY EXPRESS OR IMPLIED
+# WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE IMPLIED WARRANTIES OF
+# MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE ARE DISCLAIMED. IN NO
+# EVENT SHALL THE AUTHOR BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL,
+# SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT LIMITED TO,
+# PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, DATA, OR PROFITS;
+# OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY,
+# WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR
+# OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF THIS SOFTWARE, EVEN IF
+# ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
+
+cd $(dirname $0) ; CWD=$(pwd)
+
+PRGNAM=protontricks
+VERSION=${VERSION:-1.10.3}
+BUILD=${BUILD:-1}
+TAG=${TAG:-_SBo}
+PKGTYPE=${PKGTYPE:-tgz}
+
+if [ -z "$ARCH" ]; then
+ case "$( uname -m )" in
+ i?86) ARCH=i586 ;;
+ arm*) ARCH=arm ;;
+ *) ARCH=$( uname -m ) ;;
+ esac
+fi
+
+if [ ! -z "${PRINT_PACKAGE_NAME}" ]; then
+ echo "$PRGNAM-$VERSION-$ARCH-$BUILD$TAG.$PKGTYPE"
+ exit 0
+fi
+
+TMP=${TMP:-/tmp/SBo}
+PKG=$TMP/package-$PRGNAM
+OUTPUT=${OUTPUT:-/tmp}
+
+if [ "$ARCH" = "i586" ]; then
+ SLKCFLAGS="-O2 -march=i586 -mtune=i686"
+ LIBDIRSUFFIX=""
+elif [ "$ARCH" = "i686" ]; then
+ SLKCFLAGS="-O2 -march=i686 -mtune=i686"
+ LIBDIRSUFFIX=""
+elif [ "$ARCH" = "x86_64" ]; then
+ SLKCFLAGS="-O2 -fPIC"
+ LIBDIRSUFFIX="64"
+else
+ SLKCFLAGS="-O2"
+ LIBDIRSUFFIX=""
+fi
+
+set -e
+
+rm -rf $PKG
+mkdir -p $TMP $PKG $OUTPUT
+cd $TMP
+rm -rf $PRGNAM-$VERSION
+tar xvf $CWD/$PRGNAM-$VERSION.tar.gz
+cd $PRGNAM-$VERSION
+chown -R root:root .
+find -L . \
+ \( -perm 777 -o -perm 775 -o -perm 750 -o -perm 711 -o -perm 555 \
+ -o -perm 511 \) -exec chmod 755 {} \+ -o \
+ \( -perm 666 -o -perm 664 -o -perm 640 -o -perm 600 -o -perm 444 \
+ -o -perm 440 -o -perm 400 \) -exec chmod 644 {} \+
+
+python3 setup.py install --root=$PKG
+
+find $PKG -print0 | xargs -0 file | grep -e "executable" -e "shared object" | grep ELF \
+ | cut -f 1 -d : | xargs strip --strip-unneeded 2> /dev/null || true
+
+mkdir -p $PKG/usr/doc/$PRGNAM-$VERSION
+cp -a LICENSE README.md $PKG/usr/doc/$PRGNAM-$VERSION
+cat $CWD/$PRGNAM.SlackBuild > $PKG/usr/doc/$PRGNAM-$VERSION/$PRGNAM.SlackBuild
+
+mkdir -p $PKG/install
+cat $CWD/slack-desc > $PKG/install/slack-desc
+cat $CWD/doinst.sh > $PKG/install/doinst.sh
+
+cd $PKG
+/sbin/makepkg -l y -c n $OUTPUT/$PRGNAM-$VERSION-$ARCH-$BUILD$TAG.$PKGTYPE
diff --git a/games/protontricks/protontricks.info b/games/protontricks/protontricks.info
new file mode 100644
index 0000000000..7ea39e16b1
--- /dev/null
+++ b/games/protontricks/protontricks.info
@@ -0,0 +1,10 @@
+PRGNAM="protontricks"
+VERSION="1.10.3"
+HOMEPAGE="https://github.com/Matoking/protontricks"
+DOWNLOAD="https://files.pythonhosted.org/packages/source/p/protontricks/protontricks-1.10.3.tar.gz"
+MD5SUM="9913ed4d93fc78271ff285fc9ea3f7ba"
+DOWNLOAD_x86_64=""
+MD5SUM_x86_64=""
+REQUIRES="winetricks python-vdf"
+MAINTAINER="Damian Perticone"
+EMAIL="mjolnirdam@gmail.com"
diff --git a/games/protontricks/slack-desc b/games/protontricks/slack-desc
new file mode 100644
index 0000000000..267c925126
--- /dev/null
+++ b/games/protontricks/slack-desc
@@ -0,0 +1,19 @@
+# HOW TO EDIT THIS FILE:
+# The "handy ruler" below makes it easier to edit a package description.
+# Line up the first '|' above the ':' following the base package name, and
+# the '|' on the right side marks the last column you can put a character in.
+# You must make exactly 11 lines for the formatting to be correct. It's also
+# customary to leave one space after the ':' except on otherwise blank lines.
+
+ |-----handy-ruler------------------------------------------------------|
+protontricks: protontricks (winetricks wrapper for proton)
+protontricks:
+protontricks: Protontricks is a wrapper that runs Winetricks commands for Proton
+protontricks: enabled games among other useful features
+protontricks:
+protontricks:
+protontricks: More info: https://github.com/Matoking/protontricks
+protontricks:
+protontricks:
+protontricks:
+protontricks:
diff --git a/games/protonup/README b/games/protonup/README
new file mode 100644
index 0000000000..cd578bc957
--- /dev/null
+++ b/games/protonup/README
@@ -0,0 +1,57 @@
+Set your installation directory before running the program with -d
+"your/compatibilitytools.d/directory"
+
+Example:
+
+protonup -d "~/.steam/root/compatibilitytools.d/"
+
+To update to the latest version, just run protonup from a command line
+
+Example:
+
+protonup
+
+List available versions with --releases
+
+Example:
+
+protonup --releases
+
+Install a specific version with -t "version tag"
+
+Example:
+
+protonup -t 6.5-GE-2
+
+By default the downloads are stored in a temporary folder.
+Change it with -o "custom/download/directory"
+
+Example:
+
+protonup -o ~/Downloads
+
+List existing installations with -l
+
+Example:
+
+protonup -l
+
+Remove existing installations with -r "version tag
+
+Example:
+
+protonup -r 6.5-GE-2
+
+Use --download to download Proton-GE to the current working directory
+without installing it, you can override destination with -o
+
+Example:
+
+protonup --download
+
+Use -y toggle to carry out actions without any logging or interaction
+
+Example:
+
+protonup --download -o ~/Downloads -y
+
diff --git a/games/protonup/protonup.SlackBuild b/games/protonup/protonup.SlackBuild
new file mode 100644
index 0000000000..f1e5c8d4f2
--- /dev/null
+++ b/games/protonup/protonup.SlackBuild
@@ -0,0 +1,93 @@
+#!/bin/bash
+
+# Slackware build script for protonup
+
+# Copyright 2022 Damian Perticone, Berisso, Argentina
+# All rights reserved.
+#
+# Redistribution and use of this script, with or without modification, is
+# permitted provided that the following conditions are met:
+#
+# 1. Redistributions of this script must retain the above copyright
+# notice, this list of conditions and the following disclaimer.
+#
+# THIS SOFTWARE IS PROVIDED BY THE AUTHOR "AS IS" AND ANY EXPRESS OR IMPLIED
+# WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE IMPLIED WARRANTIES OF
+# MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE ARE DISCLAIMED. IN NO
+# EVENT SHALL THE AUTHOR BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL,
+# SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT LIMITED TO,
+# PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, DATA, OR PROFITS;
+# OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY,
+# WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR
+# OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF THIS SOFTWARE, EVEN IF
+# ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
+
+cd $(dirname $0) ; CWD=$(pwd)
+
+PRGNAM=protonup
+VERSION=${VERSION:-0.1.4}
+BUILD=${BUILD:-1}
+TAG=${TAG:-_SBo}
+PKGTYPE=${PKGTYPE:-tgz}
+
+if [ -z "$ARCH" ]; then
+ case "$( uname -m )" in
+ i?86) ARCH=i586 ;;
+ arm*) ARCH=arm ;;
+ *) ARCH=$( uname -m ) ;;
+ esac
+fi
+
+
+if [ ! -z "${PRINT_PACKAGE_NAME}" ]; then
+ echo "$PRGNAM-$VERSION-$ARCH-$BUILD$TAG.$PKGTYPE"
+ exit 0
+fi
+
+TMP=${TMP:-/tmp/SBo}
+PKG=$TMP/package-$PRGNAM
+OUTPUT=${OUTPUT:-/tmp}
+
+if [ "$ARCH" = "i586" ]; then
+ SLKCFLAGS="-O2 -march=i586 -mtune=i686"
+ LIBDIRSUFFIX=""
+elif [ "$ARCH" = "i686" ]; then
+ SLKCFLAGS="-O2 -march=i686 -mtune=i686"
+ LIBDIRSUFFIX=""
+elif [ "$ARCH" = "x86_64" ]; then
+ SLKCFLAGS="-O2 -fPIC"
+ LIBDIRSUFFIX="64"
+else
+ SLKCFLAGS="-O2"
+ LIBDIRSUFFIX=""
+fi
+
+set -e
+
+rm -rf $PKG
+mkdir -p $TMP $PKG $OUTPUT
+cd $TMP
+rm -rf $PRGNAM-$VERSION
+tar xvf $CWD/$PRGNAM-$VERSION.tar.gz
+cd $PRGNAM-$VERSION
+chown -R root:root .
+find -L . \
+ \( -perm 777 -o -perm 775 -o -perm 750 -o -perm 711 -o -perm 555 \
+ -o -perm 511 \) -exec chmod 755 {} \; -o \
+ \( -perm 666 -o -perm 664 -o -perm 640 -o -perm 600 -o -perm 444 \
+ -o -perm 440 -o -perm 400 \) -exec chmod 644 {} \;
+
+python3 setup.py install --root=$PKG
+
+find $PKG -print0 | xargs -0 file | grep -e "executable" -e "shared object" | grep ELF \
+ | cut -f 1 -d : | xargs strip --strip-unneeded 2> /dev/null || true
+
+mkdir -p $PKG/usr/doc/$PRGNAM-$VERSION
+cp -a LICENSE README.md $PKG/usr/doc/$PRGNAM-$VERSION
+cat $CWD/$PRGNAM.SlackBuild > $PKG/usr/doc/$PRGNAM-$VERSION/$PRGNAM.SlackBuild
+
+mkdir -p $PKG/install
+cat $CWD/slack-desc > $PKG/install/slack-desc
+
+cd $PKG
+/sbin/makepkg -l y -c n $OUTPUT/$PRGNAM-$VERSION-$ARCH-$BUILD$TAG.$PKGTYPE
diff --git a/games/protonup/protonup.info b/games/protonup/protonup.info
new file mode 100644
index 0000000000..f234d94a22
--- /dev/null
+++ b/games/protonup/protonup.info
@@ -0,0 +1,10 @@
+PRGNAM="protonup"
+VERSION="0.1.4"
+HOMEPAGE="https://github.com/AUNaseef/protonup"
+DOWNLOAD="https://github.com/AUNaseef/protonup/archive/0.1.4/protonup-0.1.4.tar.gz"
+MD5SUM="419caee4f61967d4f1fd7e29372456f2"
+DOWNLOAD_x86_64=""
+MD5SUM_x86_64=""
+REQUIRES=""
+MAINTAINER="Damian Perticone"
+EMAIL="mjolnirdam@gmail.com"
diff --git a/games/protonup/slack-desc b/games/protonup/slack-desc
new file mode 100644
index 0000000000..f35e913ab5
--- /dev/null
+++ b/games/protonup/slack-desc
@@ -0,0 +1,19 @@
+# HOW TO EDIT THIS FILE:
+# The "handy ruler" below makes it easier to edit a package description.
+# Line up the first '|' above the ':' following the base package name, and
+# the '|' on the right side marks the last column you can put a character in.
+# You must make exactly 11 lines for the formatting to be correct. It's also
+# customary to leave one space after the ':' except on otherwise blank lines.
+
+ |-----handy-ruler------------------------------------------------------|
+protonup: protonup (cli proton-GE updater)
+protonup:
+protonup: Protonup is a CLI program and API to automate the installation and
+protonup: update of GloriousEggroll's Proton-GE.
+protonup:
+protonup:
+protonup:
+protonup:
+protonup:
+protonup: Home: https://github.com/AUNaseef/protonup
+protonup:
diff --git a/games/puNES/puNES.SlackBuild b/games/puNES/puNES.SlackBuild
index de571c4741..f9e6ea2ad5 100644
--- a/games/puNES/puNES.SlackBuild
+++ b/games/puNES/puNES.SlackBuild
@@ -1,4 +1,4 @@
-#!/bin/sh
+#!/bin/bash
# Slackware build script for puNES
@@ -22,10 +22,13 @@
# OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF THIS SOFTWARE, EVEN IF
# ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
+cd $(dirname $0) ; CWD=$(pwd)
+
PRGNAM=puNES
VERSION=${VERSION:-0.106}
BUILD=${BUILD:-1}
TAG=${TAG:-_SBo}
+PKGTYPE=${PKGTYPE:-tgz}
if [ -z "$ARCH" ]; then
case "$( uname -m )" in
@@ -35,7 +38,14 @@ if [ -z "$ARCH" ]; then
esac
fi
-CWD=$(pwd)
+# If the variable PRINT_PACKAGE_NAME is set, then this script will report what
+# the name of the created package would be, and then exit. This information
+# could be useful to other scripts.
+if [ ! -z "${PRINT_PACKAGE_NAME}" ]; then
+ echo "$PRGNAM-$VERSION-$ARCH-$BUILD$TAG.$PKGTYPE"
+ exit 0
+fi
+
TMP=${TMP:-/tmp/SBo}
PKG=$TMP/package-$PRGNAM
OUTPUT=${OUTPUT:-/tmp}
@@ -97,4 +107,4 @@ cat $CWD/slack-desc > $PKG/install/slack-desc
cat $CWD/doinst.sh > $PKG/install/doinst.sh
cd $PKG
-/sbin/makepkg -l y -c n $OUTPUT/$PRGNAM-$VERSION-$ARCH-$BUILD$TAG.${PKGTYPE:-tgz}
+/sbin/makepkg -l y -c n $OUTPUT/$PRGNAM-$VERSION-$ARCH-$BUILD$TAG.$PKGTYPE
diff --git a/games/puNES/puNES.info b/games/puNES/puNES.info
index 01f63cf542..14d55262b1 100644
--- a/games/puNES/puNES.info
+++ b/games/puNES/puNES.info
@@ -5,6 +5,6 @@ DOWNLOAD="https://github.com/punesemu/puNES/archive/v0.106/puNES-0.106.tar.gz"
MD5SUM="e85ba4a99e933abee5df72f98bbbc7a9"
DOWNLOAD_x86_64=""
MD5SUM_x86_64=""
-REQUIRES="qt5"
+REQUIRES=""
MAINTAINER="Hunter Sezen"
EMAIL="orbea@riseup.net"
diff --git a/games/pushover/pushover.SlackBuild b/games/pushover/pushover.SlackBuild
index 68242f6981..f97b1bfc06 100644
--- a/games/pushover/pushover.SlackBuild
+++ b/games/pushover/pushover.SlackBuild
@@ -1,4 +1,4 @@
-#!/bin/sh
+#!/bin/bash
# Slackware build script for pushover
#
@@ -22,10 +22,13 @@
# OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF THIS SOFTWARE, EVEN IF
# ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
+cd $(dirname $0) ; CWD=$(pwd)
+
PRGNAM=pushover
VERSION=${VERSION:-0.0.3}
BUILD=${BUILD:-1}
TAG=${TAG:-_SBo}
+PKGTYPE=${PKGTYPE:-tgz}
if [ -z "$ARCH" ]; then
case "$( uname -m )" in
@@ -35,7 +38,14 @@ if [ -z "$ARCH" ]; then
esac
fi
-CWD=$(pwd)
+# If the variable PRINT_PACKAGE_NAME is set, then this script will report what
+# the name of the created package would be, and then exit. This information
+# could be useful to other scripts.
+if [ ! -z "${PRINT_PACKAGE_NAME}" ]; then
+ echo "$PRGNAM-$VERSION-$ARCH-$BUILD$TAG.$PKGTYPE"
+ exit 0
+fi
+
TMP=${TMP:-/tmp/SBo}
PKG=$TMP/package-$PRGNAM
OUTPUT=${OUTPUT:-/tmp}
@@ -94,4 +104,4 @@ mkdir -p $PKG/install
cat $CWD/slack-desc > $PKG/install/slack-desc
cd $PKG
-/sbin/makepkg -l y -c n $OUTPUT/$PRGNAM-$VERSION-$ARCH-$BUILD$TAG.${PKGTYPE:-tgz}
+/sbin/makepkg -l y -c n $OUTPUT/$PRGNAM-$VERSION-$ARCH-$BUILD$TAG.$PKGTYPE
diff --git a/games/pushover/pushover.info b/games/pushover/pushover.info
index cf435b88f1..a48c69cf1b 100644
--- a/games/pushover/pushover.info
+++ b/games/pushover/pushover.info
@@ -1,7 +1,7 @@
PRGNAM="pushover"
VERSION="0.0.3"
HOMEPAGE="http://pushover.sourceforge.net"
-DOWNLOAD="http://downloads.sourceforge.net/pushover/pushover-0.0.3.tar.gz"
+DOWNLOAD="http://attic-distfiles.pld-linux.org/distfiles/by-md5/8/3/831feec2d46583db01647a73295d4108/pushover-0.0.3.tar.gz"
MD5SUM="831feec2d46583db01647a73295d4108"
DOWNLOAD_x86_64=""
MD5SUM_x86_64=""
diff --git a/games/puzzles/README b/games/puzzles/README
index b464757cf5..3140a7f66d 100644
--- a/games/puzzles/README
+++ b/games/puzzles/README
@@ -1,2 +1,8 @@
This is a collection of puzzle games written by Simon Tatham. They run
natively on various platforms including Linux, Windows, and Mac OS X.
+
+You may optionally get the latest version from
+
+https://www.chiark.greenend.org.uk/~sgtatham/puzzles/puzzles.tar.gz
+
+and execute the script with VERSION=latest
diff --git a/games/puzzles/doinst.sh b/games/puzzles/doinst.sh
new file mode 100644
index 0000000000..65c7e2eeb9
--- /dev/null
+++ b/games/puzzles/doinst.sh
@@ -0,0 +1,9 @@
+if [ -x /usr/bin/update-desktop-database ]; then
+ /usr/bin/update-desktop-database -q usr/share/applications >/dev/null 2>&1
+fi
+
+if [ -e usr/share/icons/hicolor/icon-theme.cache ]; then
+ if [ -x /usr/bin/gtk-update-icon-cache ]; then
+ /usr/bin/gtk-update-icon-cache -f usr/share/icons/hicolor >/dev/null 2>&1
+ fi
+fi
diff --git a/games/puzzles/puzzles.SlackBuild b/games/puzzles/puzzles.SlackBuild
index c4159c980f..8b9cead670 100644
--- a/games/puzzles/puzzles.SlackBuild
+++ b/games/puzzles/puzzles.SlackBuild
@@ -1,28 +1,64 @@
-#!/bin/sh
+#!/bin/bash
# Slackware build script for puzzles
-# Written by Steve Pledger <spledger91@yahoo.com>
+
+# Copyright 2022-2024 Erich Ritz, Jenks, Oklahoma, USA
+# All rights reserved.
+#
+# Redistribution and use of this script, with or without modification, is
+# permitted provided that the following conditions are met:
+#
+# 1. Redistributions of this script must retain the above copyright
+# notice, this list of conditions and the following disclaimer.
+#
+# THIS SOFTWARE IS PROVIDED BY THE AUTHOR "AS IS" AND ANY EXPRESS OR IMPLIED
+# WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE IMPLIED WARRANTIES OF
+# MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE ARE DISCLAIMED. IN NO
+# EVENT SHALL THE AUTHOR BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL,
+# SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT LIMITED TO,
+# PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, DATA, OR PROFITS;
+# OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY,
+# WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR
+# OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF THIS SOFTWARE, EVEN IF
+# ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
+
+cd $(dirname $0) ; CWD=$(pwd)
PRGNAM=puzzles
-VERSION=${VERSION:-r10060}
+VERSION=${VERSION:-20240330.fd304c5}
BUILD=${BUILD:-1}
TAG=${TAG:-_SBo}
+PKGTYPE=${PKGTYPE:-tgz}
if [ -z "$ARCH" ]; then
case "$( uname -m )" in
- i?86) ARCH=i486 ;;
+ i?86) ARCH=i586 ;;
arm*) ARCH=arm ;;
*) ARCH=$( uname -m ) ;;
esac
fi
-CWD=$(pwd)
+set -e
+
+if [ "$VERSION" = "latest" ]; then
+ VERSION=$(basename $(tar -tf $CWD/puzzles.tar.gz | head -1))
+ VERSION=${VERSION/puzzles-/}
+ SRCVER=
+else
+ SRCVER=-$VERSION
+fi
+
+if [ ! -z "${PRINT_PACKAGE_NAME}" ]; then
+ echo "$PRGNAM-$VERSION-$ARCH-$BUILD$TAG.$PKGTYPE"
+ exit 0
+fi
+
TMP=${TMP:-/tmp/SBo}
PKG=$TMP/package-$PRGNAM
OUTPUT=${OUTPUT:-/tmp}
-if [ "$ARCH" = "i486" ]; then
- SLKCFLAGS="-O2 -march=i486 -mtune=i686"
+if [ "$ARCH" = "i586" ]; then
+ SLKCFLAGS="-O2 -march=i586 -mtune=i686"
LIBDIRSUFFIX=""
elif [ "$ARCH" = "i686" ]; then
SLKCFLAGS="-O2 -march=i686 -mtune=i686"
@@ -35,45 +71,39 @@ else
LIBDIRSUFFIX=""
fi
-set -e
-
rm -rf $PKG
mkdir -p $TMP $PKG $OUTPUT
cd $TMP
rm -rf $PRGNAM-$VERSION
-tar xvf $CWD/$PRGNAM-$VERSION.tar.?z*
+tar xvf $CWD/$PRGNAM$SRCVER.tar.gz
cd $PRGNAM-$VERSION
chown -R root:root .
find -L . \
\( -perm 777 -o -perm 775 -o -perm 750 -o -perm 711 -o -perm 555 \
-o -perm 511 \) -exec chmod 755 {} \; -o \
\( -perm 666 -o -perm 664 -o -perm 640 -o -perm 600 -o -perm 444 \
- -o -perm 440 -o -perm 400 \) -exec chmod 644 {} \;
-
-ln -s Makefile.gtk Makefile
-
-CFLAGS="$SLKCFLAGS -fgnu89-inline -Wno-error" \
-CXXFLAGS="$SLKCFLAGS" \
-make
-
-mkdir -p $PKG/usr/games
-make install prefix=/usr DESTDIR=$PKG
-
-# Rename binaries overlapping with other stuff
-( cd $PKG/usr/games
- for i in blackbox net untangle; do mv $i $i.puzzle ; done )
+ -o -perm 440 -o -perm 400 \) -exec chmod 644 {} \;
-find $PKG -print0 | xargs -0 file | grep -e "executable" -e "shared object" | grep ELF \
- | cut -f 1 -d : | xargs strip --strip-unneeded 2> /dev/null || true
+mkdir -p build
+cd build
+ cmake \
+ -DCMAKE_C_FLAGS:STRING="$SLKCFLAGS" \
+ -DCMAKE_INSTALL_PREFIX=/usr \
+ -DNAME_PREFIX=puzzles- \
+ -DCMAKE_BUILD_TYPE=Release ..
+ make
+ make install/strip DESTDIR=$PKG
+cd ..
mkdir -p $PKG/usr/doc/$PRGNAM-$VERSION
cp -a \
- CHECKLST.txt LICENCE README \
+ LICENCE README puzzles.txt \
$PKG/usr/doc/$PRGNAM-$VERSION
cat $CWD/$PRGNAM.SlackBuild > $PKG/usr/doc/$PRGNAM-$VERSION/$PRGNAM.SlackBuild
mkdir -p $PKG/install
cat $CWD/slack-desc > $PKG/install/slack-desc
+cat $CWD/doinst.sh > $PKG/install/doinst.sh
cd $PKG
-/sbin/makepkg -l y -c n $OUTPUT/$PRGNAM-$VERSION-$ARCH-$BUILD$TAG.${PKGTYPE:-tgz}
+/sbin/makepkg -l y -c n $OUTPUT/$PRGNAM-$VERSION-$ARCH-$BUILD$TAG.$PKGTYPE
diff --git a/games/puzzles/puzzles.info b/games/puzzles/puzzles.info
index 6cf12f5f33..7552bcaafd 100644
--- a/games/puzzles/puzzles.info
+++ b/games/puzzles/puzzles.info
@@ -1,10 +1,10 @@
PRGNAM="puzzles"
-VERSION="r10060"
+VERSION="20240330.fd304c5"
HOMEPAGE="https://www.chiark.greenend.org.uk/~sgtatham/puzzles/"
-DOWNLOAD="http://ponce.cc/slackware/sources/repo/puzzles-r10060.tar.xz"
-MD5SUM="10f83ca6989521b67cff56756805a5aa"
+DOWNLOAD="https://sourceforge.net/projects/slackbuildsdirectlinks/files/puzzles/puzzles-20240330.fd304c5.tar.gz"
+MD5SUM="49f25152aee551a73fc6c877eea5a860"
DOWNLOAD_x86_64=""
MD5SUM_x86_64=""
-REQUIRES=""
-MAINTAINER="Steve Pledger"
-EMAIL="spledger91@yahoo.com"
+REQUIRES="halibut"
+MAINTAINER="Erich Ritz"
+EMAIL="erich.public@protonmail.com"
diff --git a/games/pybik/pybik.SlackBuild b/games/pybik/pybik.SlackBuild
index 8004c170d1..488b8202b8 100644
--- a/games/pybik/pybik.SlackBuild
+++ b/games/pybik/pybik.SlackBuild
@@ -1,4 +1,4 @@
-#!/bin/sh
+#!/bin/bash
# Slackware build script for pybik
@@ -22,10 +22,20 @@
# OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF THIS SOFTWARE, EVEN IF
# ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
+# 20220221 bkw: Modified by SlackBuilds.org:
+# - fix download URL
+# - binary in /usr/games
+# - abs paths in .desktop file
+# - use parallel build (unlike most python builds, this really benefits
+# from parallelism).
+
+cd $(dirname $0) ; CWD=$(pwd)
+
PRGNAM=pybik
VERSION=${VERSION:-2.1}
BUILD=${BUILD:-1}
TAG=${TAG:-_SBo}
+PKGTYPE=${PKGTYPE:-tgz}
if [ -z "$ARCH" ]; then
case "$( uname -m )" in
@@ -35,7 +45,11 @@ if [ -z "$ARCH" ]; then
esac
fi
-CWD=$(pwd)
+if [ ! -z "${PRINT_PACKAGE_NAME}" ]; then
+ echo "$PRGNAM-$VERSION-$ARCH-$BUILD$TAG.$PKGTYPE"
+ exit 0
+fi
+
TMP=${TMP:-/tmp/SBo}
PKG=$TMP/package-$PRGNAM
OUTPUT=${OUTPUT:-/tmp}
@@ -65,20 +79,39 @@ cd $PRGNAM-$VERSION
chown -R root:root .
find -L . \
\( -perm 777 -o -perm 775 -o -perm 750 -o -perm 711 -o -perm 555 \
- -o -perm 511 \) -exec chmod 755 {} \; -o \
+ -o -perm 511 \) -exec chmod 755 {} \+ -o \
\( -perm 666 -o -perm 664 -o -perm 640 -o -perm 600 -o -perm 444 \
- -o -perm 440 -o -perm 400 \) -exec chmod 644 {} \;
+ -o -perm 440 -o -perm 400 \) -exec chmod 644 {} \+
# Fix man page path
sed -i "s/share\/man/man/" setup.py
+# 20220221 bkw: 'generating models' takes a long time to run. it can be
+# made to run multiple jobs (like make -jN). For convenience, read
+# MAKEFLAGS from the environment, if set...
+JOBS="$( echo $MAKEFLAGS | sed 's,.*-j *\([0-9][0-9]*\)*.*,\1,' )"
+
+# ...or if no MAKEFLAGS, use number-of-cores minus 1...
+JOBS="${JOBS:-$(( $( nproc ) - 1 ))}"
+
+# ...or 1, if we really only have one core.
+[ "$JOBS" = "0" ] && JOBS=1
+
+# 20220221 bkw: Don't combine build and install in one step, because
+# install doesn't recognize the --parallel option.
+python3 setup.py build --parallel=$JOBS
python3 setup.py install --root=$PKG
+mv $PKG/usr/bin $PKG/usr/games
+
+sed -i -e '/^Exec/s,=,=/usr/games/,' \
+ -e '/^Icon/s,=.*,=/usr/share/pixmaps/pybik.png,' \
+ $PKG/usr/share/applications/*desktop
+
find $PKG -print0 | xargs -0 file | grep -e "executable" -e "shared object" | grep ELF \
| cut -f 1 -d : | xargs strip --strip-unneeded 2> /dev/null || true
-find $PKG/usr/man -type f -exec gzip -9 {} \;
-for i in $( find $PKG/usr/man -type l ) ; do ln -s $( readlink $i ).gz $i.gz ; rm $i ; done
+gzip $PKG/usr/man/man*/*
mkdir -p $PKG/usr/doc/$PRGNAM-$VERSION
cp -a README COPYING NEWS $PKG/usr/doc/$PRGNAM-$VERSION
@@ -89,4 +122,4 @@ cat $CWD/slack-desc > $PKG/install/slack-desc
cat $CWD/doinst.sh > $PKG/install/doinst.sh
cd $PKG
-/sbin/makepkg -l y -c n $OUTPUT/$PRGNAM-$VERSION-$ARCH-$BUILD$TAG.${PKGTYPE:-tgz}
+/sbin/makepkg -l y -c n $OUTPUT/$PRGNAM-$VERSION-$ARCH-$BUILD$TAG.$PKGTYPE
diff --git a/games/pybik/pybik.info b/games/pybik/pybik.info
index d73ec241e6..da667825f8 100644
--- a/games/pybik/pybik.info
+++ b/games/pybik/pybik.info
@@ -1,10 +1,10 @@
PRGNAM="pybik"
VERSION="2.1"
HOMEPAGE="https://launchpad.net/pybik/"
-DOWNLOAD="https://launchpad.net/pybik/trunk/2.1/+download/pybik-2.1.tar.gz"
+DOWNLOAD="https://slackware.uk/~urchlay/src/pybik-2.1.tar.gz"
MD5SUM="bb551ba5c45ee834988b91ab7ff48d4f"
DOWNLOAD_x86_64=""
MD5SUM_x86_64=""
-REQUIRES="python3-PyQt5"
+REQUIRES=""
MAINTAINER="Dimitris Zlatanidis"
EMAIL="d.zlatanidis@gmail.com"
diff --git a/games/pychess/pychess.SlackBuild b/games/pychess/pychess.SlackBuild
index 5ece075be5..4aaeb5bf1a 100644
--- a/games/pychess/pychess.SlackBuild
+++ b/games/pychess/pychess.SlackBuild
@@ -1,8 +1,8 @@
-#!/bin/sh
+#!/bin/bash
# Slackware build script for pychess
-# Copyright 2015-2016 Dimitris Zlatanidis Orestiada, Greece
+# Copyright 2015-2023 Dimitris Zlatanidis Orestiada, Greece
# All rights reserved.
#
# Redistribution and use of this script, with or without modification, is
@@ -22,10 +22,13 @@
# OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF THIS SOFTWARE, EVEN IF
# ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
+cd $(dirname $0) ; CWD=$(pwd)
+
PRGNAM=pychess
-VERSION=${VERSION:-0.12.4}
+VERSION=${VERSION:-1.0.4}
BUILD=${BUILD:-1}
TAG=${TAG:-_SBo}
+PKGTYPE=${PKGTYPE:-tgz}
if [ -z "$ARCH" ]; then
case "$( uname -m )" in
@@ -35,7 +38,14 @@ if [ -z "$ARCH" ]; then
esac
fi
-CWD=$(pwd)
+# If the variable PRINT_PACKAGE_NAME is set, then this script will report what
+# the name of the created package would be, and then exit. This information
+# could be useful to other scripts.
+if [ ! -z "${PRINT_PACKAGE_NAME}" ]; then
+ echo "$PRGNAM-$VERSION-$ARCH-$BUILD$TAG.$PKGTYPE"
+ exit 0
+fi
+
TMP=${TMP:-/tmp/SBo}
PKG=$TMP/package-$PRGNAM
OUTPUT=${OUTPUT:-/tmp}
@@ -60,7 +70,7 @@ rm -rf $PKG
mkdir -p $TMP $PKG $OUTPUT
cd $TMP
rm -rf $PRGNAM-$VERSION
-tar xvf $CWD/$PRGNAM-$VERSION.tar.gz || tar xvf $CWD/$VERSION.tar.gz
+tar xvf $CWD/$PRGNAM-$VERSION.tar.gz || tar xvf $CWD/$PRGNAM-$VERSION.tar.gz
cd $PRGNAM-$VERSION
chown -R root:root .
find -L . \
@@ -69,7 +79,7 @@ find -L . \
\( -perm 666 -o -perm 664 -o -perm 640 -o -perm 600 -o -perm 444 \
-o -perm 440 -o -perm 400 \) -exec chmod 644 {} \;
-python setup.py install --root=$PKG
+python3 setup.py install --root=$PKG
find $PKG -print0 | xargs -0 file | grep -e "executable" -e "shared object" | grep ELF \
| cut -f 1 -d : | xargs strip --strip-unneeded 2> /dev/null || true
@@ -89,4 +99,4 @@ cat $CWD/slack-desc > $PKG/install/slack-desc
cat $CWD/doinst.sh > $PKG/install/doinst.sh
cd $PKG
-/sbin/makepkg -l y -c n $OUTPUT/$PRGNAM-$VERSION-$ARCH-$BUILD$TAG.${PKGTYPE:-tgz}
+/sbin/makepkg -l y -c n $OUTPUT/$PRGNAM-$VERSION-$ARCH-$BUILD$TAG.$PKGTYPE
diff --git a/games/pychess/pychess.info b/games/pychess/pychess.info
index 1f98e7a9ab..399d198f06 100644
--- a/games/pychess/pychess.info
+++ b/games/pychess/pychess.info
@@ -1,10 +1,10 @@
PRGNAM="pychess"
-VERSION="0.12.4"
+VERSION="1.0.4"
HOMEPAGE="http://www.pychess.org/"
-DOWNLOAD="https://github.com/pychess/pychess/releases/download/0.12.4/pychess-0.12.4.tar.gz"
-MD5SUM="3f18f0a665dd25b845a02d42c260d27d"
+DOWNLOAD="https://github.com/pychess/pychess/releases/download/1.0.4/pychess-1.0.4.tar.gz"
+MD5SUM="a25f6f7ea34f76e56a5f332cac562be3"
DOWNLOAD_x86_64=""
MD5SUM_x86_64=""
-REQUIRES="gtksourceview3"
+REQUIRES="python3-websockets python3-psutil python3-pexpect SQLAlchemy stockfish"
MAINTAINER="Dimitris Zlatanidis"
EMAIL="d.zlatanidis@gmail.com"
diff --git a/games/pysolfc-extra-cardsets/README b/games/pysolfc-extra-cardsets/README
index f81c787572..60b9b04ba2 100644
--- a/games/pysolfc-extra-cardsets/README
+++ b/games/pysolfc-extra-cardsets/README
@@ -1,6 +1,6 @@
pysolfc-extra-cardsets (extra card graphics for pysolfc)
-Almost 30MB of extra cardsets for use with pysolfc, including large
+Almost 90MB of extra cardsets for use with pysolfc, including large
cards for high resolution displays (or for the vision impaired).
Most of the cardsets come from the PySolFC sourceforge download page.
diff --git a/games/pysolfc-extra-cardsets/pysolfc-extra-cardsets.SlackBuild b/games/pysolfc-extra-cardsets/pysolfc-extra-cardsets.SlackBuild
index b9f7464d25..2c6b58633b 100644
--- a/games/pysolfc-extra-cardsets/pysolfc-extra-cardsets.SlackBuild
+++ b/games/pysolfc-extra-cardsets/pysolfc-extra-cardsets.SlackBuild
@@ -1,19 +1,29 @@
-#!/bin/sh
+#!/bin/bash
# Slackware build script for pysolfc-extra-cardsets
-# Written by B. Watson (yalhcru@gmail.com)
+# Written by B. Watson (urchlay@slackware.uk)
# Licensed under the WTFPL. See http://www.wtfpl.net/txt/copying/ for details.
+# 20231217 bkw: updated for v2.2.
+# 20230111 bkw: updated for v2.1.
+
+cd $(dirname $0) ; CWD=$(pwd)
+
PRGNAM=pysolfc-extra-cardsets
SRCNAM=PySolFC-Cardsets
-VERSION=${VERSION:-2.0}
+VERSION=${VERSION:-2.2}
BUILD=${BUILD:-1}
TAG=${TAG:-_SBo}
+PKGTYPE=${PKGTYPE:-tgz}
ARCH=noarch
-CWD=$(pwd)
+if [ ! -z "${PRINT_PACKAGE_NAME}" ]; then
+ echo "$PRGNAM-$VERSION-$ARCH-$BUILD$TAG.$PKGTYPE"
+ exit 0
+fi
+
TMP=${TMP:-/tmp/SBo}
PKG=$TMP/package-$PRGNAM
OUTPUT=${OUTPUT:-/tmp}
@@ -27,20 +37,31 @@ tar xvf $CWD/$SRCNAM-$VERSION.tar.bz2 --strip-components=1
tar xvf $CWD/pysolfc-cardsets-bknoll.tar.xz --strip-components=1
# Don't include cardsets that are already in the main pysolfc package.
+# 20231217 bkw: matching and matching-xl moved to the main pkg in 2.20.0.
rm -rf \
- cardset-2000 \
- cardset-crystal-mahjongg \
- cardset-dashavatara-ganjifa \
- cardset-dondorf \
- cardset-gnome-mahjongg-1 \
- cardset-hanafuda-200-years \
- cardset-hexadeck \
- cardset-matrix \
- cardset-mughal-ganjifa \
- cardset-oxymoron \
- cardset-standard \
- cardset-tuxedo \
- cardset-vienna-2k
+ cardset-2000 \
+ cardset-crystal-mahjongg \
+ cardset-dashavatara-ganjifa \
+ cardset-dashavatara-ganjifa-xl \
+ cardset-dondorf \
+ cardset-gnome-mahjongg-1 \
+ cardset-hanafuda-200-years \
+ cardset-hexadeck \
+ cardset-louie-mantia-hanafuda \
+ cardset-matching \
+ cardset-matching-xl \
+ cardset-matrix \
+ cardset-mughal-ganjifa \
+ cardset-mughal-ganjifa-xl \
+ cardset-neo \
+ cardset-neo-hex \
+ cardset-neo-tarock \
+ cardset-next-matrix \
+ cardset-oxymoron \
+ cardset-standard \
+ cardset-tuxedo \
+ cardset-uni-mahjongg \
+ cardset-vienna-2k
chown -R root:root .
@@ -57,4 +78,4 @@ mkdir -p $PKG/install
cat $CWD/slack-desc > $PKG/install/slack-desc
cd $PKG
-/sbin/makepkg -l y -c n $OUTPUT/$PRGNAM-$VERSION-$ARCH-$BUILD$TAG.${PKGTYPE:-tgz}
+/sbin/makepkg -l y -c n $OUTPUT/$PRGNAM-$VERSION-$ARCH-$BUILD$TAG.$PKGTYPE
diff --git a/games/pysolfc-extra-cardsets/pysolfc-extra-cardsets.info b/games/pysolfc-extra-cardsets/pysolfc-extra-cardsets.info
index c49fad4f23..b00d09b1df 100644
--- a/games/pysolfc-extra-cardsets/pysolfc-extra-cardsets.info
+++ b/games/pysolfc-extra-cardsets/pysolfc-extra-cardsets.info
@@ -1,12 +1,12 @@
PRGNAM="pysolfc-extra-cardsets"
-VERSION="2.0"
+VERSION="2.2"
HOMEPAGE="https://pysolfc.sourceforge.net"
-DOWNLOAD="https://downloads.sourceforge.net/project/pysolfc/PySolFC-Cardsets/PySolFC-Cardsets-2.0/PySolFC-Cardsets-2.0.tar.bz2 \
+DOWNLOAD="https://downloads.sourceforge.net/project/pysolfc/PySolFC-Cardsets/PySolFC-Cardsets-2.2/PySolFC-Cardsets-2.2.tar.bz2 \
https://slackware.uk/~urchlay/src/pysolfc-cardsets-bknoll.tar.xz"
-MD5SUM="0ce4aa6801196f9166815b244aeea47e \
+MD5SUM="a44b410e2a3c9939fc03c298aabd8eb6 \
35e3df2c464019167377dc35d5d8354e"
DOWNLOAD_x86_64=""
MD5SUM_x86_64=""
REQUIRES="pysolfc"
MAINTAINER="B. Watson"
-EMAIL="yalhcru@gmail.com"
+EMAIL="urchlay@slackware.uk"
diff --git a/games/pysolfc-extra-cardsets/slack-desc b/games/pysolfc-extra-cardsets/slack-desc
index aa4e784cc1..4b8dd20561 100644
--- a/games/pysolfc-extra-cardsets/slack-desc
+++ b/games/pysolfc-extra-cardsets/slack-desc
@@ -8,7 +8,7 @@
|-----handy-ruler------------------------------------------------------|
pysolfc-extra-cardsets: pysolfc-extra-cardsets (extra card graphics for pysolfc)
pysolfc-extra-cardsets:
-pysolfc-extra-cardsets: Almost 30MB of extra cardsets for use with pysolfc, including large
+pysolfc-extra-cardsets: Almost 90MB of extra cardsets for use with pysolfc, including large
pysolfc-extra-cardsets: cards for high resolution displays (or for the vision impaired).
pysolfc-extra-cardsets:
pysolfc-extra-cardsets:
diff --git a/games/pysolfc/README b/games/pysolfc/README
index e170010803..d3fca33e25 100644
--- a/games/pysolfc/README
+++ b/games/pysolfc/README
@@ -5,13 +5,17 @@ PySolFC (PySol Fanclub Edition) is a solitaire suite containing over
There are games that use the 52 card International Pattern deck,
games for the 78 card Tarock deck, eight and ten suite Ganjifa games,
-Hanafuda games, Matrix games, Mahjongg games, and games for an original
-hexadecimal-based deck. PySolFC features a modern look and feel,
-multiple cardsets and backgrounds, sound, unlimited undo, player
+Hanafuda games, Matrix games, Mahjongg games, and games for an
+original hexadecimal-based deck. PySolFC features a modern look and
+feel, multiple cardsets and backgrounds, sound, unlimited undo, player
statistics, and much more.
-PySolFC comes with several different cardsets, but there
-are many optional cardsets available. These can be found in
-games/pysolfc-extra-cardsets.
-
PySolFC is distributed under the terms of the GNU GPL.
+
+Optional dependencies:
+
+- games/pysolfc-extra-cardsets
+ Extra cardsets, including large-sized ones for high-res displays.
+
+- python/pygame
+ Required if you want pysolfc to make sound.
diff --git a/games/pysolfc/pysolfc.SlackBuild b/games/pysolfc/pysolfc.SlackBuild
index 02ef038041..50886fe3dd 100644
--- a/games/pysolfc/pysolfc.SlackBuild
+++ b/games/pysolfc/pysolfc.SlackBuild
@@ -1,28 +1,23 @@
-#!/bin/sh
+#!/bin/bash
# Slackware build script for pysolfc
-# Copyright 2009 Matthew "mfillpot" Fillpot
-# All rights reserved.
-#
-# Redistribution and use of this script, with or without modification, is
-# permitted provided that the following conditions are met:
-#
-# 1. Redistributions of this script must retain the above copyright
-# notice, this list of conditions and the following disclaimer.
-#
-# THIS SOFTWARE IS PROVIDED BY THE AUTHOR ''AS IS'' AND ANY EXPRESS OR IMPLIED
-# WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE IMPLIED WARRANTIES OF
-# MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE ARE DISCLAIMED. IN NO
-# EVENT SHALL THE AUTHOR BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL,
-# SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT LIMITED TO,
-# PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, DATA, OR PROFITS;
-# OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY,
-# WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR
-# OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF THIS SOFTWARE, EVEN IF
-# ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
-
-# Now maintained by B. Watson <yalhcru@gmail.com>
+# Originally written by Matthew "mfillpot" Fillpot.
+
+# Now maintained by B. Watson <urchlay@slackware.uk>
+
+# Licensed under the WTFPL. See http://www.wtfpl.net/txt/copying/ for details.
+
+# 20231216 bkw: update for v2.21.0 (and cardset-minimal 2.2.0),
+# fix broken permissions for cardsets.
+
+# 20230111 bkw: update for v2.18.0 (and cardset-minimal 2.1.0).
+
+# 20211228 bkw: update for v2.14.1.
+# - relicensed as WTFPL with permission from Matthew.
+# - we now use python3 and -current's python-pillow, no need for
+# pillow6 patch, six, etc.
+# - document optional dep pygame in README.
# 20181206 bkw:
# - Add missing 'six' dependency. Thanks to Carsten Boysen Jensen for
@@ -42,13 +37,16 @@
# - Include all_games.html in the docdir (with fixed paths for the links).
# - Update README and slack-desc.
-SRCNAM=PySolFC
+cd $(dirname $0) ; CWD=$(pwd)
+
PRGNAM=pysolfc
-VERSION=${VERSION:-2.4.0}
-BUILD=${BUILD:-2}
+SRCNAM=PySolFC
+VERSION=${VERSION:-2.21.0}
+BUILD=${BUILD:-1}
TAG=${TAG:-_SBo}
+PKGTYPE=${PKGTYPE:-tgz}
-CARDSETVER=${CARDSETVER:-2.0}
+CARDSETVER=${CARDSETVER:-2.2.0}
CARDSETS=$SRCNAM-Cardsets--Minimal-$CARDSETVER
if [ -z "$ARCH" ]; then
@@ -59,41 +57,46 @@ if [ -z "$ARCH" ]; then
esac
fi
-CWD=$(pwd)
+if [ ! -z "${PRINT_PACKAGE_NAME}" ]; then
+ echo "$PRGNAM-$VERSION-$ARCH-$BUILD$TAG.$PKGTYPE"
+ exit 0
+fi
+
TMP=${TMP:-/tmp/SBo}
PKG=$TMP/package-$PRGNAM
OUTPUT=${OUTPUT:-/tmp}
set -e
+# 20230111 bkw: upstream starting using "pysol-x.x.x" for the tag.
+# handle either name for the tarball, because I probably want to keep
+# running the old version.
+TARBALL=$CWD/$SRCNAM-$PRGNAM-$VERSION.tar.gz
+[ -e $TARBALL ] || TARBALL=$CWD/$SRCNAM-$VERSION.tar.gz
+TARDIR=$( basename $TARBALL .tar.gz )
+
+fixperms() {
+ chown -R root:root $1
+ find -L $1 -perm /111 -a \! -perm 755 -a -exec chmod 755 {} \+ -o \
+ \! -perm /111 -a \! -perm 644 -a -exec chmod 644 {} \+
+}
+
rm -rf $PKG
mkdir -p $TMP $PKG $OUTPUT
cd $TMP
-rm -rf $SRCNAM-$VERSION
-tar xvf $CWD/$SRCNAM-$VERSION.tar.xz
-cd $SRCNAM-$VERSION
-chown -R root:root .
-find -L . -perm /111 -a \! -perm 755 -a -exec chmod 755 {} \+ -o \
- \! -perm /111 -a \! -perm 644 -a -exec chmod 644 {} \+
-
-# 20181012 bkw: Slightly dirty hack, to combat a dirty hack from upstream.
-# Begin rant:
-# Basically, the old versions of pysol used the python 'random' library,
-# which ships with python2 (included in Slackware). With 2.4.0, they've
-# ported the code so it's python3-compatible (though it still works
-# with python2). The python3 random library is API-incompatible with
-# the python2 one... so someone ported the python2 random to python3
-# and named it 'random2'. random2 is also python2-compatible... so the
-# PySolFC devs changed their code to require random2, even on python
-# 2. So I'm changing it back, to avoid adding an extra (redundant) dependency.
-# The reason for going into such detail about it here, is that maintainers
-# of other python-based packages might run into the same issue someday.
-# I'll have a handy URL to point them to with the fix.
-# Here endeth the rant.
-
-sed -i 's,\<random2\>,random,' pysollib/pysolrandom.py
-
-python setup.py install --root $PKG
+rm -rf $TARDIR
+tar xvf $TARBALL
+cd $TARDIR
+fixperms .
+
+# do not use 'make install', it has no way to pass --root to setup.py.
+# "mo" creates the UI translations. "rules" and "all_games_html" make
+# the docs. setup.py will install the docs & translations if they
+# exist.
+make mo
+make rules
+make all_games_html
+python3 setup.py install --root $PKG
mkdir -p $PKG/usr/man/man6
gzip -9c < docs/$PRGNAM.6 > $PKG/usr/man/man6/$PRGNAM.6.gz
@@ -105,18 +108,20 @@ ln -s $PRGNAM.6.gz $PKG/usr/man/man6/pysol.py.6
# The minimal cardsets are now required, since the source tarball
# has none. Extract directly to $PKG instead of extracting and copying.
tar xvf $CWD/$CARDSETS.tar.xz -C $PKG/usr/share/$SRCNAM/ --strip-components=1
+fixperms $PKG/usr/share/$SRCNAM
-mkdir -p $PKG/usr/doc/$PRGNAM-$VERSION
-cp -a README.md COPYING docs/README $PKG/usr/doc/$PRGNAM-$VERSION
-cat $CWD/$PRGNAM.SlackBuild > $PKG/usr/doc/$PRGNAM-$VERSION/$PRGNAM.SlackBuild
+# old-style icon, in case something needs it.
+mkdir -p $PKG/usr/share/pixmaps
+ln -s ../icons/hicolor/48x48/apps/pysol.png $PKG/usr/share/pixmaps/pysol.png
-# Handy HTML list of all the games, but with hardcoded (wrong) paths.
-sed '/href=/s,"[^"]*/data,"/usr/share/'$SRCNAM, docs/all_games.html > \
- $PKG/usr/doc/$PRGNAM-$VERSION/all_games.html
+PKGDOC=$PKG/usr/doc/$PRGNAM-$VERSION
+mkdir -p $PKGDOC
+cp -a contrib/*.asciidoc *.md NEWS.* COPYING docs/README $PKGDOC
+cat $CWD/$PRGNAM.SlackBuild > $PKGDOC/$PRGNAM.SlackBuild
mkdir -p $PKG/install
cat $CWD/slack-desc > $PKG/install/slack-desc
cat $CWD/doinst.sh > $PKG/install/doinst.sh
cd $PKG
-/sbin/makepkg -l y -c n $OUTPUT/$PRGNAM-$VERSION-$ARCH-$BUILD$TAG.${PKGTYPE:-tgz}
+/sbin/makepkg -l y -c n $OUTPUT/$PRGNAM-$VERSION-$ARCH-$BUILD$TAG.$PKGTYPE
diff --git a/games/pysolfc/pysolfc.info b/games/pysolfc/pysolfc.info
index acb95cd6b2..9e29936c11 100644
--- a/games/pysolfc/pysolfc.info
+++ b/games/pysolfc/pysolfc.info
@@ -1,12 +1,12 @@
PRGNAM="pysolfc"
-VERSION="2.4.0"
-HOMEPAGE="https://pysolfc.sourceforge.net"
-DOWNLOAD="https://downloads.sourceforge.net/project/pysolfc/PySolFC/PySolFC-2.4.0/PySolFC-2.4.0.tar.xz \
- https://downloads.sourceforge.net/pysolfc/PySolFC-Cardsets--Minimal-2.0.tar.xz"
-MD5SUM="43d3a6f82418a9cb7452ab7bc0e1401b \
- 85c0edeeb0e319d54f9ebcd4165a2077"
+VERSION="2.21.0"
+HOMEPAGE="https://pysolfc.sourceforge.io"
+DOWNLOAD="https://github.com/shlomif/PySolFC/archive/pysolfc-2.21.0/PySolFC-pysolfc-2.21.0.tar.gz \
+ https://downloads.sourceforge.net/project/pysolfc/PySolFC-Cardsets/minimal/PySolFC-Cardsets--Minimal-2.2.0.tar.xz"
+MD5SUM="6a8a9f2cfa6eb3552c40b16299ae163b \
+ 74ce380505393a5538b25cccb2ea1682"
DOWNLOAD_x86_64=""
MD5SUM_x86_64=""
-REQUIRES="six"
+REQUIRES="configobj python3-attrs"
MAINTAINER="B. Watson"
-EMAIL="yalhcru@gmail.com"
+EMAIL="urchlay@slackware.uk"
diff --git a/games/qmc2/qmc2-qt5.15.patch b/games/qmc2/qmc2-qt5.15.patch
new file mode 100644
index 0000000000..f2d8556c9c
--- /dev/null
+++ b/games/qmc2/qmc2-qt5.15.patch
@@ -0,0 +1,10 @@
+--- qmc2/softwareimagewidget.cpp.orig 2020-07-08 07:27:41.029961948 +0000
++++ qmc2/softwareimagewidget.cpp 2020-07-08 07:27:54.640148563 +0000
+@@ -3,6 +3,7 @@
+ #include <QHash>
+ #include <QDir>
+ #include <QClipboard>
++#include <QPainterPath>
+
+ #include "softwarelist.h"
+ #include "softwaresnapshot.h"
diff --git a/games/qmc2/qmc2-types.patch b/games/qmc2/qmc2-types.patch
new file mode 100644
index 0000000000..e5f960f8ce
--- /dev/null
+++ b/games/qmc2/qmc2-types.patch
@@ -0,0 +1,952 @@
+diff --git a/lzma/7zArcIn.c b/lzma/7zArcIn.c
+index 59ef8499b..323a3155f 100644
+--- a/lzma/7zArcIn.c
++++ b/lzma/7zArcIn.c
+@@ -534,14 +534,14 @@ SRes SzGetNextFolderItem(CSzFolder *f, CSzData *sd)
+ f->NumPackStreams = numPackStreams;
+
+ for (i = 0; i < numInStreams; i++)
+- streamUsed[i] = False;
++ streamUsed[i] = false;
+
+ if (numBonds != 0)
+ {
+ Byte coderUsed[SZ_NUM_CODERS_IN_FOLDER_MAX];
+
+ for (i = 0; i < numCoders; i++)
+- coderUsed[i] = False;
++ coderUsed[i] = false;
+
+ for (i = 0; i < numBonds; i++)
+ {
+@@ -550,12 +550,12 @@ SRes SzGetNextFolderItem(CSzFolder *f, CSzData *sd)
+ RINOK(SzReadNumber32(sd, &bp->InIndex));
+ if (bp->InIndex >= numInStreams || streamUsed[bp->InIndex])
+ return SZ_ERROR_ARCHIVE;
+- streamUsed[bp->InIndex] = True;
++ streamUsed[bp->InIndex] = true;
+
+ RINOK(SzReadNumber32(sd, &bp->OutIndex));
+ if (bp->OutIndex >= numCoders || coderUsed[bp->OutIndex])
+ return SZ_ERROR_ARCHIVE;
+- coderUsed[bp->OutIndex] = True;
++ coderUsed[bp->OutIndex] = true;
+ }
+
+ for (i = 0; i < numCoders; i++)
+@@ -585,7 +585,7 @@ SRes SzGetNextFolderItem(CSzFolder *f, CSzData *sd)
+ RINOK(SzReadNumber32(sd, &index));
+ if (index >= numInStreams || streamUsed[index])
+ return SZ_ERROR_ARCHIVE;
+- streamUsed[index] = True;
++ streamUsed[index] = true;
+ f->PackStreams[i] = index;
+ }
+ }
+@@ -740,9 +740,9 @@ static SRes ReadUnpackInfo(CSzAr *p,
+ return SZ_ERROR_UNSUPPORTED;
+
+ for (i = 0; i < numInStreams; i++)
+- streamUsed[i] = False;
++ streamUsed[i] = false;
+ for (i = 0; i < numCoders; i++)
+- coderUsed[i] = False;
++ coderUsed[i] = false;
+
+ for (i = 0; i < numBonds; i++)
+ {
+@@ -751,12 +751,12 @@ static SRes ReadUnpackInfo(CSzAr *p,
+ RINOK(SzReadNumber32(&sd, &index));
+ if (index >= numInStreams || streamUsed[index])
+ return SZ_ERROR_ARCHIVE;
+- streamUsed[index] = True;
++ streamUsed[index] = true;
+
+ RINOK(SzReadNumber32(&sd, &index));
+ if (index >= numCoders || coderUsed[index])
+ return SZ_ERROR_ARCHIVE;
+- coderUsed[index] = True;
++ coderUsed[index] = true;
+ }
+
+ numPackStreams = numInStreams - numBonds;
+@@ -768,7 +768,7 @@ static SRes ReadUnpackInfo(CSzAr *p,
+ RINOK(SzReadNumber32(&sd, &index));
+ if (index >= numInStreams || streamUsed[index])
+ return SZ_ERROR_ARCHIVE;
+- streamUsed[index] = True;
++ streamUsed[index] = true;
+ }
+
+ for (i = 0; i < numCoders; i++)
+@@ -1750,7 +1750,7 @@ UInt16 *SzArEx_GetFullNameUtf16_Back(const CSzArEx *p, size_t fileIndex, UInt16
+ *(--dest) = 0;
+ return dest;
+ }
+- needSlash = False;
++ needSlash = false;
+ for (;;)
+ {
+ UInt32_7z parent = (UInt32_7z)(Int32)-1;
+@@ -1758,7 +1758,7 @@ UInt16 *SzArEx_GetFullNameUtf16_Back(const CSzArEx *p, size_t fileIndex, UInt16
+ SzArEx_GetFileNameUtf16(p, fileIndex, dest - curLen);
+ if (needSlash)
+ *(dest - 1) = '/';
+- needSlash = True;
++ needSlash = true;
+ dest -= curLen;
+
+ if SzBitWithVals_Check(&p->Parents, fileIndex)
+diff --git a/lzma/7zDec.c b/lzma/7zDec.c
+index 0fa265294..3a2242db4 100644
+--- a/lzma/7zDec.c
++++ b/lzma/7zDec.c
+@@ -66,7 +66,7 @@ static Byte ReadByte(void *pp)
+ if (size != 0)
+ return *p->cur++;;
+ }
+- p->extra = True;
++ p->extra = true;
+ return 0;
+ }
+
+@@ -80,7 +80,7 @@ static SRes SzDecodePpmd(const Byte *props, unsigned propsSize, UInt64 inSize, I
+ s.p.Read = ReadByte;
+ s.inStream = inStream;
+ s.begin = s.end = s.cur = NULL;
+- s.extra = False;
++ s.extra = false;
+ s.res = SZ_OK;
+ s.processed = 0;
+
+@@ -281,9 +281,9 @@ static Bool_7z IS_MAIN_METHOD(UInt32_7z m)
+ #ifdef _7ZIP_PPMD_SUPPPORT
+ case k_PPMD:
+ #endif
+- return True;
++ return true;
+ }
+- return False;
++ return false;
+ }
+
+ static Bool_7z IS_SUPPORTED_CODER(const CSzCoderInfo *c)
+diff --git a/lzma/7zTypes.h b/lzma/7zTypes.h
+index 4a0576ca7..ebf6cc80c 100644
+--- a/lzma/7zTypes.h
++++ b/lzma/7zTypes.h
+@@ -93,10 +93,8 @@ typedef UInt32_7z SizeT;
+ typedef size_t SizeT;
+ #endif
+
+-typedef int Bool_7z;
+-#define True 1
+-#define False 0
+-
++#include <stdbool.h>
++typedef bool Bool_7z;
+
+ #ifdef _WIN32
+ #define MY_STD_CALL __stdcall
+diff --git a/lzma/Bcj2Enc.c b/lzma/Bcj2Enc.c
+index a7b084623..4282a2e9b 100644
+--- a/lzma/Bcj2Enc.c
++++ b/lzma/Bcj2Enc.c
+@@ -64,7 +64,7 @@ static Bool_7z MY_FAST_CALL RangeEnc_ShiftLow(CBcj2Enc *p)
+ {
+ p->state = BCJ2_STREAM_RC;
+ p->bufs[BCJ2_STREAM_RC] = buf;
+- return True;
++ return true;
+ }
+ *buf++ = (Byte)(p->cache + (Byte)(p->low >> 32));
+ p->cache = 0xFF;
+@@ -75,7 +75,7 @@ static Bool_7z MY_FAST_CALL RangeEnc_ShiftLow(CBcj2Enc *p)
+ }
+ p->cacheSize++;
+ p->low = (UInt32_7z)p->low << 8;
+- return False;
++ return false;
+ }
+
+ static void Bcj2Enc_Encode_2(CBcj2Enc *p)
+@@ -172,14 +172,14 @@ static void Bcj2Enc_Encode_2(CBcj2Enc *p)
+ p->ip += (UInt32_7z)num + 1;
+ src++;
+
+- needConvert = False;
++ needConvert = false;
+
+ if ((SizeT)(p->srcLim - src) >= 4)
+ {
+ UInt32_7z relatVal = GetUi32(src);
+ if ((p->fileSize == 0 || (UInt32_7z)(p->ip + 4 + relatVal - p->fileIp) < p->fileSize)
+ && ((relatVal + p->relatLimit) >> 1) < p->relatLimit)
+- needConvert = True;
++ needConvert = true;
+ }
+
+ {
+diff --git a/lzma/CpuArch.c b/lzma/CpuArch.c
+index dc4dbdc25..43e300838 100644
+--- a/lzma/CpuArch.c
++++ b/lzma/CpuArch.c
+@@ -50,7 +50,7 @@ static UInt32_7z CheckFlag(UInt32_7z flag)
+ #endif
+ return flag;
+ }
+-#define CHECK_CPUID_IS_SUPPORTED if (CheckFlag(1 << 18) == 0 || CheckFlag(1 << 21) == 0) return False;
++#define CHECK_CPUID_IS_SUPPORTED if (CheckFlag(1 << 18) == 0 || CheckFlag(1 << 21) == 0) return false;
+ #else
+ #define CHECK_CPUID_IS_SUPPORTED
+ #endif
+@@ -120,7 +120,7 @@ Bool_7z x86cpuid_CheckAndRead(Cx86cpuid *p)
+ CHECK_CPUID_IS_SUPPORTED
+ MyCPUID(0, &p->maxFunc, &p->vendor[0], &p->vendor[2], &p->vendor[1]);
+ MyCPUID(1, &p->ver, &p->b, &p->c, &p->d);
+- return True;
++ return true;
+ }
+
+ static const UInt32_7z kVendors[][3] =
+@@ -150,7 +150,7 @@ Bool_7z CPU_Is_InOrder()
+ int firm;
+ UInt32_7z family, model;
+ if (!x86cpuid_CheckAndRead(&p))
+- return True;
++ return true;
+
+ family = x86cpuid_GetFamily(p.ver);
+ model = x86cpuid_GetModel(p.ver);
+@@ -170,7 +170,7 @@ Bool_7z CPU_Is_InOrder()
+ case CPU_FIRM_AMD: return (family < 5 || (family == 5 && (model < 6 || model == 0xA)));
+ case CPU_FIRM_VIA: return (family < 6 || (family == 6 && model < 0xF));
+ }
+- return True;
++ return true;
+ }
+
+ #if !defined(MY_CPU_AMD64) && defined(_WIN32)
+@@ -180,10 +180,10 @@ static Bool_7z CPU_Sys_Is_SSE_Supported()
+ OSVERSIONINFO vi;
+ vi.dwOSVersionInfoSize = sizeof(vi);
+ if (!GetVersionEx(&vi))
+- return False;
++ return false;
+ return (vi.dwMajorVersion >= 5);
+ }
+-#define CHECK_SYS_SSE_SUPPORT if (!CPU_Sys_Is_SSE_Supported()) return False;
++#define CHECK_SYS_SSE_SUPPORT if (!CPU_Sys_Is_SSE_Supported()) return false;
+ #else
+ #define CHECK_SYS_SSE_SUPPORT
+ #endif
+@@ -193,7 +193,7 @@ Bool_7z CPU_Is_Aes_Supported()
+ Cx86cpuid p;
+ CHECK_SYS_SSE_SUPPORT
+ if (!x86cpuid_CheckAndRead(&p))
+- return False;
++ return false;
+ return (p.c >> 25) & 1;
+ }
+
+diff --git a/lzma/LzFind.c b/lzma/LzFind.c
+index 0f9a7bc41..c2417042a 100644
+--- a/lzma/LzFind.c
++++ b/lzma/LzFind.c
+@@ -314,7 +314,7 @@ void MatchFinder_Init_2(CMatchFinder *p, int readData)
+
+ void MatchFinder_Init(CMatchFinder *p)
+ {
+- MatchFinder_Init_2(p, True);
++ MatchFinder_Init_2(p, true);
+ }
+
+ static UInt32_7z MatchFinder_GetSubValue(CMatchFinder *p)
+diff --git a/lzma/LzFindMt.c b/lzma/LzFindMt.c
+index 3c2cdaf9c..ee1e2acc6 100644
+--- a/lzma/LzFindMt.c
++++ b/lzma/LzFindMt.c
+@@ -9,9 +9,9 @@
+
+ static void MtSync_Construct(CMtSync *p)
+ {
+- p->wasCreated = False;
+- p->csWasInitialized = False;
+- p->csWasEntered = False;
++ p->wasCreated = false;
++ p->csWasInitialized = false;
++ p->csWasEntered = false;
+ Thread_Construct(&p->thread);
+ Event_Construct(&p->canStart);
+ Event_Construct(&p->wasStarted);
+@@ -25,9 +25,9 @@ static void MtSync_GetNextBlock(CMtSync *p)
+ if (p->needStart)
+ {
+ p->numProcessedBlocks = 1;
+- p->needStart = False;
+- p->stopWriting = False;
+- p->exit = False;
++ p->needStart = false;
++ p->stopWriting = false;
++ p->exit = false;
+ Event_Reset(&p->wasStarted);
+ Event_Reset(&p->wasStopped);
+
+@@ -37,13 +37,13 @@ static void MtSync_GetNextBlock(CMtSync *p)
+ else
+ {
+ CriticalSection_Leave(&p->cs);
+- p->csWasEntered = False;
++ p->csWasEntered = false;
+ p->numProcessedBlocks++;
+ Semaphore_Release1(&p->freeSemaphore);
+ }
+ Semaphore_Wait(&p->filledSemaphore);
+ CriticalSection_Enter(&p->cs);
+- p->csWasEntered = True;
++ p->csWasEntered = true;
+ }
+
+ /* MtSync_StopWriting must be called if Writing was started */
+@@ -53,11 +53,11 @@ static void MtSync_StopWriting(CMtSync *p)
+ UInt32_7z myNumBlocks = p->numProcessedBlocks;
+ if (!Thread_WasCreated(&p->thread) || p->needStart)
+ return;
+- p->stopWriting = True;
++ p->stopWriting = true;
+ if (p->csWasEntered)
+ {
+ CriticalSection_Leave(&p->cs);
+- p->csWasEntered = False;
++ p->csWasEntered = false;
+ }
+ Semaphore_Release1(&p->freeSemaphore);
+
+@@ -68,7 +68,7 @@ static void MtSync_StopWriting(CMtSync *p)
+ Semaphore_Wait(&p->filledSemaphore);
+ Semaphore_Release1(&p->freeSemaphore);
+ }
+- p->needStart = True;
++ p->needStart = true;
+ }
+
+ static void MtSync_Destruct(CMtSync *p)
+@@ -76,7 +76,7 @@ static void MtSync_Destruct(CMtSync *p)
+ if (Thread_WasCreated(&p->thread))
+ {
+ MtSync_StopWriting(p);
+- p->exit = True;
++ p->exit = true;
+ if (p->needStart)
+ Event_Set(&p->canStart);
+ Thread_Wait(&p->thread);
+@@ -85,7 +85,7 @@ static void MtSync_Destruct(CMtSync *p)
+ if (p->csWasInitialized)
+ {
+ CriticalSection_Delete(&p->cs);
+- p->csWasInitialized = False;
++ p->csWasInitialized = false;
+ }
+
+ Event_Close(&p->canStart);
+@@ -94,7 +94,7 @@ static void MtSync_Destruct(CMtSync *p)
+ Semaphore_Close(&p->freeSemaphore);
+ Semaphore_Close(&p->filledSemaphore);
+
+- p->wasCreated = False;
++ p->wasCreated = false;
+ }
+
+ #define RINOK_THREAD(x) { if ((x) != 0) return SZ_ERROR_THREAD; }
+@@ -105,7 +105,7 @@ static SRes MtSync_Create2(CMtSync *p, THREAD_FUNC_TYPE startAddress, void *obj,
+ return SZ_OK;
+
+ RINOK_THREAD(CriticalSection_Init(&p->cs));
+- p->csWasInitialized = True;
++ p->csWasInitialized = true;
+
+ RINOK_THREAD(AutoResetEvent_CreateNotSignaled(&p->canStart));
+ RINOK_THREAD(AutoResetEvent_CreateNotSignaled(&p->wasStarted));
+@@ -114,10 +114,10 @@ static SRes MtSync_Create2(CMtSync *p, THREAD_FUNC_TYPE startAddress, void *obj,
+ RINOK_THREAD(Semaphore_Create(&p->freeSemaphore, numBlocks, numBlocks));
+ RINOK_THREAD(Semaphore_Create(&p->filledSemaphore, 0, numBlocks));
+
+- p->needStart = True;
++ p->needStart = true;
+
+ RINOK_THREAD(Thread_Create(&p->thread, startAddress, obj));
+- p->wasCreated = True;
++ p->wasCreated = true;
+ return SZ_OK;
+ }
+
+@@ -129,7 +129,7 @@ static SRes MtSync_Create(CMtSync *p, THREAD_FUNC_TYPE startAddress, void *obj,
+ return res;
+ }
+
+-void MtSync_Init(CMtSync *p) { p->needStart = True; }
++void MtSync_Init(CMtSync *p) { p->needStart = true; }
+
+ #define kMtMaxValForNormalize 0xFFFFFFFF
+
+@@ -391,7 +391,7 @@ static void BtFillBlock(CMatchFinderMt *p, UInt32_7z globalBlockIndex)
+ if (!sync->needStart)
+ {
+ CriticalSection_Enter(&sync->cs);
+- sync->csWasEntered = True;
++ sync->csWasEntered = true;
+ }
+
+ BtGetMatches(p, p->btBuf + (globalBlockIndex & kMtBtNumBlocksMask) * kMtBtBlockSize);
+@@ -406,7 +406,7 @@ static void BtFillBlock(CMatchFinderMt *p, UInt32_7z globalBlockIndex)
+ if (!sync->needStart)
+ {
+ CriticalSection_Leave(&sync->cs);
+- sync->csWasEntered = False;
++ sync->csWasEntered = false;
+ }
+ }
+
+@@ -503,7 +503,7 @@ void MatchFinderMt_Init(CMatchFinderMt *p)
+ p->hashBufPos = p->hashBufPosLimit = 0;
+
+ /* Init without data reading. We don't want to read data in this thread */
+- MatchFinder_Init_2(mf, False);
++ MatchFinder_Init_2(mf, false);
+
+ p->pointerToCurPos = Inline_MatchFinder_GetPointerToCurrentPos(mf);
+ p->btNumAvailBytes = 0;
+diff --git a/lzma/Lzma2Dec.c b/lzma/Lzma2Dec.c
+index 354b85c40..43bf57c8d 100644
+--- a/lzma/Lzma2Dec.c
++++ b/lzma/Lzma2Dec.c
+@@ -91,9 +91,9 @@ SRes Lzma2Dec_Allocate(CLzma2Dec *p, Byte prop, ISzAlloc *alloc)
+ void Lzma2Dec_Init(CLzma2Dec *p)
+ {
+ p->state = LZMA2_STATE_CONTROL;
+- p->needInitDic = True;
+- p->needInitState = True;
+- p->needInitProp = True;
++ p->needInitDic = true;
++ p->needInitState = true;
++ p->needInitProp = true;
+ LzmaDec_Init(&p->decoder);
+ }
+
+@@ -151,7 +151,7 @@ static ELzma2State Lzma2Dec_UpdateState(CLzma2Dec *p, Byte b)
+ return LZMA2_STATE_ERROR;
+ p->decoder.prop.lc = lc;
+ p->decoder.prop.lp = lp;
+- p->needInitProp = False;
++ p->needInitProp = false;
+ return LZMA2_STATE_DATA;
+ }
+ }
+@@ -230,14 +230,14 @@ SRes Lzma2Dec_DecodeToDic(CLzma2Dec *p, SizeT dicLimit,
+ {
+ Bool_7z initDic = (p->control == LZMA2_CONTROL_COPY_RESET_DIC);
+ if (initDic)
+- p->needInitProp = p->needInitState = True;
++ p->needInitProp = p->needInitState = true;
+ else if (p->needInitDic)
+ {
+ p->state = LZMA2_STATE_ERROR;
+ return SZ_ERROR_DATA;
+ }
+- p->needInitDic = False;
+- LzmaDec_InitDicAndState(&p->decoder, initDic, False);
++ p->needInitDic = false;
++ LzmaDec_InitDicAndState(&p->decoder, initDic, false);
+ }
+
+ if (srcSizeCur > destSizeCur)
+@@ -273,8 +273,8 @@ SRes Lzma2Dec_DecodeToDic(CLzma2Dec *p, SizeT dicLimit,
+ }
+
+ LzmaDec_InitDicAndState(&p->decoder, initDic, initState);
+- p->needInitDic = False;
+- p->needInitState = False;
++ p->needInitDic = false;
++ p->needInitState = false;
+ p->state = LZMA2_STATE_DATA_CONT;
+ }
+
+diff --git a/lzma/Lzma2Enc.c b/lzma/Lzma2Enc.c
+index 23f541f21..16fbb0d3c 100644
+--- a/lzma/Lzma2Enc.c
++++ b/lzma/Lzma2Enc.c
+@@ -54,8 +54,8 @@ static SRes Lzma2EncInt_Init(CLzma2EncInt *p, const CLzma2EncProps *props)
+ RINOK(LzmaEnc_WriteProperties(p->enc, propsEncoded, &propsSize));
+ p->srcPos = 0;
+ p->props = propsEncoded[0];
+- p->needInitState = True;
+- p->needInitProp = True;
++ p->needInitState = true;
++ p->needInitProp = true;
+ return SZ_OK;
+ }
+
+@@ -102,7 +102,7 @@ static SRes Lzma2EncInt_EncodeSubblock(CLzma2EncInt *p, Byte *outBuf,
+ if (res != SZ_ERROR_OUTPUT_EOF)
+ return res;
+ res = SZ_OK;
+- useCopyBlock = True;
++ useCopyBlock = true;
+ }
+
+ if (useCopyBlock)
+@@ -132,7 +132,7 @@ static SRes Lzma2EncInt_EncodeSubblock(CLzma2EncInt *p, Byte *outBuf,
+ }
+ else
+ *packSizeRes = destPos;
+- /* needInitState = True; */
++ /* needInitState = true; */
+ }
+
+ LzmaEnc_RestoreState(p->enc);
+@@ -156,8 +156,8 @@ static SRes Lzma2EncInt_EncodeSubblock(CLzma2EncInt *p, Byte *outBuf,
+ if (p->needInitProp)
+ outBuf[destPos++] = p->props;
+
+- p->needInitProp = False;
+- p->needInitState = False;
++ p->needInitProp = false;
++ p->needInitState = false;
+ destPos += packSize;
+ p->srcPos += unpackSize;
+
+diff --git a/lzma/Lzma86Enc.c b/lzma/Lzma86Enc.c
+index e35950179..20f7c4ab1 100644
+--- a/lzma/Lzma86Enc.c
++++ b/lzma/Lzma86Enc.c
+@@ -56,7 +56,7 @@ int Lzma86_Encode(Byte *dest, size_t *destLen, const Byte *src, size_t srcLen,
+
+ {
+ size_t minSize = 0;
+- Bool_7z bestIsFiltered = False;
++ Bool_7z bestIsFiltered = false;
+
+ /* passes for SZ_FILTER_AUTO:
+ 0 - BCJ + LZMA
+@@ -75,7 +75,7 @@ int Lzma86_Encode(Byte *dest, size_t *destLen, const Byte *src, size_t srcLen,
+ if (curModeIsFiltered && !bestIsFiltered)
+ break;
+ if (useFilter && i == 0)
+- curModeIsFiltered = True;
++ curModeIsFiltered = true;
+
+ curRes = LzmaEncode(dest + LZMA86_HEADER_SIZE, &outSizeProcessed,
+ curModeIsFiltered ? filteredStream : src, srcLen,
+diff --git a/lzma/LzmaDec.c b/lzma/LzmaDec.c
+index 867e3f6c9..412e2fa94 100644
+--- a/lzma/LzmaDec.c
++++ b/lzma/LzmaDec.c
+@@ -785,7 +785,7 @@ void LzmaDec_InitDicAndState(CLzmaDec *p, Bool_7z initDic, Bool_7z initState)
+ void LzmaDec_Init(CLzmaDec *p)
+ {
+ p->dicPos = 0;
+- LzmaDec_InitDicAndState(p, True, True);
++ LzmaDec_InitDicAndState(p, true, true);
+ }
+
+ static void LzmaDec_InitStateReal(CLzmaDec *p)
+diff --git a/lzma/LzmaEnc.c b/lzma/LzmaEnc.c
+index d4409f7f0..79a7ee944 100644
+--- a/lzma/LzmaEnc.c
++++ b/lzma/LzmaEnc.c
+@@ -904,8 +904,8 @@ static UInt32_7z ReadMatchDistances(CLzmaEnc *p, UInt32_7z *numDistancePairsRes)
+ }
+
+
+-#define MakeAsChar(p) (p)->backPrev = (UInt32_7z)(-1); (p)->prev1IsChar = False;
+-#define MakeAsShortRep(p) (p)->backPrev = 0; (p)->prev1IsChar = False;
++#define MakeAsChar(p) (p)->backPrev = (UInt32_7z)(-1); (p)->prev1IsChar = false;
++#define MakeAsShortRep(p) (p)->backPrev = 0; (p)->prev1IsChar = false;
+ #define IsShortRep(p) ((p)->backPrev == 0)
+
+ static UInt32_7z GetRepLen1Price(CLzmaEnc *p, UInt32_7z state, UInt32_7z posState)
+@@ -956,7 +956,7 @@ static UInt32_7z Backward(CLzmaEnc *p, UInt32_7z *backRes, UInt32_7z cur)
+ p->opt[posMem].posPrev = posMem - 1;
+ if (p->opt[cur].prev2)
+ {
+- p->opt[posMem - 1].prev1IsChar = False;
++ p->opt[posMem - 1].prev1IsChar = false;
+ p->opt[posMem - 1].posPrev = p->opt[cur].posPrev2;
+ p->opt[posMem - 1].backPrev = p->opt[cur].backPrev2;
+ }
+@@ -1123,7 +1123,7 @@ static UInt32_7z GetOptimum(CLzmaEnc *p, UInt32_7z position, UInt32_7z *backRes)
+ opt->price = curAndLenPrice;
+ opt->posPrev = 0;
+ opt->backPrev = i;
+- opt->prev1IsChar = False;
++ opt->prev1IsChar = false;
+ }
+ }
+ while (--repLen >= 2);
+@@ -1158,7 +1158,7 @@ static UInt32_7z GetOptimum(CLzmaEnc *p, UInt32_7z position, UInt32_7z *backRes)
+ opt->price = curAndLenPrice;
+ opt->posPrev = 0;
+ opt->backPrev = distance + LZMA_NUM_REPS;
+- opt->prev1IsChar = False;
++ opt->prev1IsChar = false;
+ }
+ if (len == matches[offs])
+ {
+@@ -1276,7 +1276,7 @@ static UInt32_7z GetOptimum(CLzmaEnc *p, UInt32_7z position, UInt32_7z *backRes)
+ curOpt->backs[3] = reps[3];
+
+ curPrice = curOpt->price;
+- nextIsChar = False;
++ nextIsChar = false;
+ data = p->matchFinder.GetPointerToCurrentPos(p->matchFinderObj) - 1;
+ curByte = *data;
+ matchByte = *(data - (reps[0] + 1));
+@@ -1299,7 +1299,7 @@ static UInt32_7z GetOptimum(CLzmaEnc *p, UInt32_7z position, UInt32_7z *backRes)
+ nextOpt->price = curAnd1Price;
+ nextOpt->posPrev = cur;
+ MakeAsChar(nextOpt);
+- nextIsChar = True;
++ nextIsChar = true;
+ }
+
+ matchPrice = curPrice + GET_PRICE_1(p->isMatch[state][posState]);
+@@ -1313,7 +1313,7 @@ static UInt32_7z GetOptimum(CLzmaEnc *p, UInt32_7z position, UInt32_7z *backRes)
+ nextOpt->price = shortRepPrice;
+ nextOpt->posPrev = cur;
+ MakeAsShortRep(nextOpt);
+- nextIsChar = True;
++ nextIsChar = true;
+ }
+ }
+ numAvailFull = p->numAvail;
+@@ -1360,8 +1360,8 @@ static UInt32_7z GetOptimum(CLzmaEnc *p, UInt32_7z position, UInt32_7z *backRes)
+ opt->price = curAndLenPrice;
+ opt->posPrev = cur + 1;
+ opt->backPrev = 0;
+- opt->prev1IsChar = True;
+- opt->prev2 = False;
++ opt->prev1IsChar = true;
++ opt->prev2 = false;
+ }
+ }
+ }
+@@ -1392,7 +1392,7 @@ static UInt32_7z GetOptimum(CLzmaEnc *p, UInt32_7z position, UInt32_7z *backRes)
+ opt->price = curAndLenPrice;
+ opt->posPrev = cur;
+ opt->backPrev = repIndex;
+- opt->prev1IsChar = False;
++ opt->prev1IsChar = false;
+ }
+ }
+ while (--lenTest >= 2);
+@@ -1439,8 +1439,8 @@ static UInt32_7z GetOptimum(CLzmaEnc *p, UInt32_7z position, UInt32_7z *backRes)
+ opt->price = curAndLenPrice;
+ opt->posPrev = cur + lenTest + 1;
+ opt->backPrev = 0;
+- opt->prev1IsChar = True;
+- opt->prev2 = True;
++ opt->prev1IsChar = true;
++ opt->prev2 = true;
+ opt->posPrev2 = cur;
+ opt->backPrev2 = repIndex;
+ }
+@@ -1487,7 +1487,7 @@ static UInt32_7z GetOptimum(CLzmaEnc *p, UInt32_7z position, UInt32_7z *backRes)
+ opt->price = curAndLenPrice;
+ opt->posPrev = cur;
+ opt->backPrev = curBack + LZMA_NUM_REPS;
+- opt->prev1IsChar = False;
++ opt->prev1IsChar = false;
+ }
+ }
+
+@@ -1530,8 +1530,8 @@ static UInt32_7z GetOptimum(CLzmaEnc *p, UInt32_7z position, UInt32_7z *backRes)
+ opt->price = curAndLenPrice2;
+ opt->posPrev = cur + lenTest + 1;
+ opt->backPrev = 0;
+- opt->prev1IsChar = True;
+- opt->prev2 = True;
++ opt->prev1IsChar = true;
++ opt->prev2 = true;
+ opt->posPrev2 = cur;
+ opt->backPrev2 = curBack + LZMA_NUM_REPS;
+ }
+@@ -1681,14 +1681,14 @@ static SRes CheckErrors(CLzmaEnc *p)
+ if (p->matchFinderBase.result != SZ_OK)
+ p->result = SZ_ERROR_READ;
+ if (p->result != SZ_OK)
+- p->finished = True;
++ p->finished = true;
+ return p->result;
+ }
+
+ static SRes Flush(CLzmaEnc *p, UInt32_7z nowPos)
+ {
+ /* ReleaseMFStream(); */
+- p->finished = True;
++ p->finished = true;
+ if (p->writeEndMark)
+ WriteEndMarker(p, nowPos & p->pbMask);
+ RangeEnc_FlushData(&p->rc);
+@@ -2092,7 +2092,7 @@ static SRes LzmaEnc_AllocAndInit(CLzmaEnc *p, UInt32_7z keepWindowSize, ISzAlloc
+ break;
+ p->distTableSize = i * 2;
+
+- p->finished = False;
++ p->finished = false;
+ p->result = SZ_OK;
+ RINOK(LzmaEnc_Alloc(p, keepWindowSize, alloc, allocBig));
+ LzmaEnc_Init(p);
+@@ -2164,7 +2164,7 @@ static size_t MyWrite(void *pp, const void *data, size_t size)
+ if (p->rem < size)
+ {
+ size = p->rem;
+- p->overflow = True;
++ p->overflow = true;
+ }
+ memcpy(p->data, data, size);
+ p->rem -= size;
+@@ -2198,10 +2198,10 @@ SRes LzmaEnc_CodeOneMemBlock(CLzmaEncHandle pp, Bool_7z reInit,
+ outStream.funcTable.Write = MyWrite;
+ outStream.data = dest;
+ outStream.rem = *destLen;
+- outStream.overflow = False;
++ outStream.overflow = false;
+
+- p->writeEndMark = False;
+- p->finished = False;
++ p->writeEndMark = false;
++ p->finished = false;
+ p->result = SZ_OK;
+
+ if (reInit)
+@@ -2211,7 +2211,7 @@ SRes LzmaEnc_CodeOneMemBlock(CLzmaEncHandle pp, Bool_7z reInit,
+ RangeEnc_Init(&p->rc);
+ p->rc.outStream = &outStream.funcTable;
+
+- res = LzmaEnc_CodeOneBlock(p, True, desiredPackSize, *unpackSize);
++ res = LzmaEnc_CodeOneBlock(p, true, desiredPackSize, *unpackSize);
+
+ *unpackSize = (UInt32_7z)(p->nowPos64 - nowPos64);
+ *destLen -= outStream.rem;
+@@ -2234,7 +2234,7 @@ static SRes LzmaEnc_Encode2(CLzmaEnc *p, ICompressProgress *progress)
+
+ for (;;)
+ {
+- res = LzmaEnc_CodeOneBlock(p, False, 0, 0);
++ res = LzmaEnc_CodeOneBlock(p, false, 0, 0);
+ if (res != SZ_OK || p->finished)
+ break;
+ if (progress)
+@@ -2307,7 +2307,7 @@ SRes LzmaEnc_MemEncode(CLzmaEncHandle pp, Byte *dest, SizeT *destLen, const Byte
+ outStream.funcTable.Write = MyWrite;
+ outStream.data = dest;
+ outStream.rem = *destLen;
+- outStream.overflow = False;
++ outStream.overflow = false;
+
+ p->writeEndMark = writeEndMark;
+ p->rc.outStream = &outStream.funcTable;
+diff --git a/lzma/MtCoder.c b/lzma/MtCoder.c
+index 5db0f4cb4..ab06fb7dd 100644
+--- a/lzma/MtCoder.c
++++ b/lzma/MtCoder.c
+@@ -156,8 +156,8 @@ static SRes CMtThread_Prepare(CMtThread *p)
+ MY_BUF_ALLOC(p->inBuf, p->inBufSize, p->mtCoder->blockSize)
+ MY_BUF_ALLOC(p->outBuf, p->outBufSize, p->mtCoder->destBlockSize)
+
+- p->stopReading = False;
+- p->stopWriting = False;
++ p->stopReading = false;
++ p->stopWriting = false;
+ RINOK_THREAD(AutoResetEvent_CreateNotSignaled(&p->canRead));
+ RINOK_THREAD(AutoResetEvent_CreateNotSignaled(&p->canWrite));
+
+@@ -187,7 +187,7 @@ static SRes FullRead(ISeqInStream *stream, Byte *data, size_t *processedSize)
+ static SRes MtThread_Process(CMtThread *p, Bool_7z *stop)
+ {
+ CMtThread *next;
+- *stop = True;
++ *stop = true;
+ if (Event_Wait(&p->canRead) != 0)
+ return SZ_ERROR_THREAD;
+
+@@ -195,7 +195,7 @@ static SRes MtThread_Process(CMtThread *p, Bool_7z *stop)
+
+ if (p->stopReading)
+ {
+- next->stopReading = True;
++ next->stopReading = true;
+ return Event_Set(&next->canRead) == 0 ? SZ_OK : SZ_ERROR_THREAD;
+ }
+
+@@ -235,8 +235,8 @@ static THREAD_FUNC_RET_TYPE THREAD_FUNC_CALL_TYPE ThreadFunc(void *pp)
+ {
+ MtCoder_SetError(p->mtCoder, res);
+ MtProgress_SetError(&p->mtCoder->mtProgress, res);
+- next->stopReading = True;
+- next->stopWriting = True;
++ next->stopReading = true;
++ next->stopWriting = true;
+ Event_Set(&next->canRead);
+ Event_Set(&next->canWrite);
+ return res;
+@@ -309,7 +309,7 @@ SRes MtCoder_Code(CMtCoder *p)
+ if (LoopThread_StartSubThread(&t->thread) != SZ_OK)
+ {
+ res = SZ_ERROR_THREAD;
+- p->threads[0].stopReading = True;
++ p->threads[0].stopReading = true;
+ break;
+ }
+ }
+diff --git a/lzma/Ppmd7.c b/lzma/Ppmd7.c
+index a61e5300e..6821ae868 100644
+--- a/lzma/Ppmd7.c
++++ b/lzma/Ppmd7.c
+@@ -111,10 +111,10 @@ Bool_7z Ppmd7_Alloc(CPpmd7 *p, UInt32_7z size, ISzAlloc *alloc)
+ + UNIT_SIZE
+ #endif
+ )) == 0)
+- return False;
++ return false;
+ p->Size = size;
+ }
+- return True;
++ return true;
+ }
+
+ static void InsertNode(CPpmd7 *p, void *node, unsigned indx)
+@@ -458,7 +458,7 @@ static void UpdateModel(CPpmd7 *p)
+
+ if (p->OrderFall == 0)
+ {
+- p->MinContext = p->MaxContext = CreateSuccessors(p, True);
++ p->MinContext = p->MaxContext = CreateSuccessors(p, true);
+ if (p->MinContext == 0)
+ {
+ RestartModel(p);
+@@ -480,7 +480,7 @@ static void UpdateModel(CPpmd7 *p)
+ {
+ if (fSuccessor <= successor)
+ {
+- CTX_PTR cs = CreateSuccessors(p, False);
++ CTX_PTR cs = CreateSuccessors(p, false);
+ if (cs == NULL)
+ {
+ RestartModel(p);
+diff --git a/lzma/Ppmd7Dec.c b/lzma/Ppmd7Dec.c
+index 6b2e0b81c..f653f41ed 100644
+--- a/lzma/Ppmd7Dec.c
++++ b/lzma/Ppmd7Dec.c
+@@ -14,7 +14,7 @@ Bool_7z Ppmd7z_RangeDec_Init(CPpmd7z_RangeDec *p)
+ p->Code = 0;
+ p->Range = 0xFFFFFFFF;
+ if (p->Stream->Read((void *)p->Stream) != 0)
+- return False;
++ return false;
+ for (i = 0; i < 4; i++)
+ p->Code = (p->Code << 8) | p->Stream->Read((void *)p->Stream);
+ return (p->Code < 0xFFFFFFFF);
+diff --git a/lzma/XzDec.c b/lzma/XzDec.c
+index 3dc8b4983..8e99f51a1 100644
+--- a/lzma/XzDec.c
++++ b/lzma/XzDec.c
+@@ -393,7 +393,7 @@ SRes MixCoder_Code(CMixCoder *p, Byte *dest, SizeT *destLen,
+ {
+ SizeT destLenOrig = *destLen;
+ SizeT srcLenOrig = *srcLen;
+- Bool_7z allFinished = True;
++ Bool_7z allFinished = true;
+ *destLen = 0;
+ *srcLen = 0;
+ *status = CODER_STATUS_NOT_FINISHED;
+@@ -410,7 +410,7 @@ SRes MixCoder_Code(CMixCoder *p, Byte *dest, SizeT *destLen,
+
+ for (;;)
+ {
+- Bool_7z processed = False;
++ Bool_7z processed = false;
+ unsigned i;
+ /*
+ if (p->numCoders == 1 && *destLen == destLenOrig && finishMode == LZMA_FINISH_ANY)
+@@ -456,7 +456,7 @@ SRes MixCoder_Code(CMixCoder *p, Byte *dest, SizeT *destLen,
+ res = coder->Code(coder->p, destCur, &destLenCur, srcCur, &srcLenCur, srcFinishedCur, finishMode, &encodingWasFinished);
+
+ if (!encodingWasFinished)
+- allFinished = False;
++ allFinished = false;
+
+ if (i == 0)
+ {
+@@ -484,7 +484,7 @@ SRes MixCoder_Code(CMixCoder *p, Byte *dest, SizeT *destLen,
+ return res;
+
+ if (destLenCur != 0 || srcLenCur != 0)
+- processed = True;
++ processed = true;
+ }
+ if (!processed)
+ break;
+@@ -573,7 +573,7 @@ SRes XzBlock_Parse(CXzBlock *p, const Byte *header)
+ SRes XzDec_Init(CMixCoder *p, const CXzBlock *block)
+ {
+ unsigned i;
+- Bool_7z needReInit = True;
++ Bool_7z needReInit = true;
+ unsigned numFilters = XzBlock_GetNumFilters(block);
+
+ if (numFilters == p->numCoders)
+@@ -650,7 +650,7 @@ SRes XzUnpacker_Code(CXzUnpacker *p, Byte *dest, SizeT *destLen,
+ return SZ_OK;
+ }
+
+- res = MixCoder_Code(&p->decoder, dest, &destLen2, src, &srcLen2, False, finishMode, status);
++ res = MixCoder_Code(&p->decoder, dest, &destLen2, src, &srcLen2, false, finishMode, status);
+ XzCheck_Update(&p->check, dest, destLen2);
+
+ (*srcLen) += srcLen2;
+diff --git a/lzma/XzEnc.c b/lzma/XzEnc.c
+index 5ba898f8a..8f6242a25 100644
+--- a/lzma/XzEnc.c
++++ b/lzma/XzEnc.c
+@@ -313,10 +313,10 @@ static SRes SbEncInStream_Read(void *pp, void *data, size_t *size)
+ p->enc.readPos += processed;
+ if (processed == 0)
+ {
+- p->enc.readWasFinished = True;
+- p->enc.isFinalFinished = True;
++ p->enc.readWasFinished = true;
++ p->enc.isFinalFinished = true;
+ }
+- p->enc.needRead = False;
++ p->enc.needRead = false;
+ }
+
+ *size = sizeOriginal;
+@@ -402,7 +402,7 @@ void XzFilterProps_Init(CXzFilterProps *p)
+ p->id = 0;
+ p->delta = 0;
+ p->ip = 0;
+- p->ipDefined = False;
++ p->ipDefined = false;
+ }
+
+
+diff --git a/lzma/XzIn.c b/lzma/XzIn.c
+index 59aceb18a..22314b4cc 100644
+--- a/lzma/XzIn.c
++++ b/lzma/XzIn.c
+@@ -32,11 +32,11 @@ SRes XzBlock_ReadHeader(CXzBlock *p, ISeqInStream *inStream, Bool_7z *isIndex, U
+ if (headerSize == 0)
+ {
+ *headerSizeRes = 1;
+- *isIndex = True;
++ *isIndex = true;
+ return SZ_OK;
+ }
+
+- *isIndex = False;
++ *isIndex = false;
+ *headerSizeRes = headerSize;
+ RINOK(SeqInStream_Read(inStream, header + 1, headerSize - 1));
+ return XzBlock_Parse(p, header);
diff --git a/games/qmc2/qmc2.SlackBuild b/games/qmc2/qmc2.SlackBuild
index 72c2e64051..1aa4f1be84 100644
--- a/games/qmc2/qmc2.SlackBuild
+++ b/games/qmc2/qmc2.SlackBuild
@@ -1,4 +1,4 @@
-#!/bin/sh
+#!/bin/bash
# Slackware build script for QMC2
@@ -22,26 +22,36 @@
# OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF THIS SOFTWARE, EVEN IF
# ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
+cd $(dirname $0) ; CWD=$(pwd)
+
PRGNAM=qmc2
VERSION=${VERSION:-0.195}
BUILD=${BUILD:-1}
TAG=${TAG:-_SBo}
+PKGTYPE=${PKGTYPE:-tgz}
if [ -z "$ARCH" ]; then
case "$( uname -m )" in
- i?86) ARCH=i486 ;;
+ i?86) ARCH=i586 ;;
arm*) ARCH=arm ;;
*) ARCH=$( uname -m ) ;;
esac
fi
-CWD=$(pwd)
+# If the variable PRINT_PACKAGE_NAME is set, then this script will report what
+# the name of the created package would be, and then exit. This information
+# could be useful to other scripts.
+if [ ! -z "${PRINT_PACKAGE_NAME}" ]; then
+ echo "$PRGNAM-$VERSION-$ARCH-$BUILD$TAG.$PKGTYPE"
+ exit 0
+fi
+
TMP=${TMP:-/tmp/SBo}
PKG=$TMP/package-$PRGNAM
OUTPUT=${OUTPUT:-/tmp}
-if [ "$ARCH" = "i486" ]; then
- SLKCFLAGS="-O2 -march=i486 -mtune=i686"
+if [ "$ARCH" = "i586" ]; then
+ SLKCFLAGS="-O2 -march=i586 -mtune=i686"
LIBDIRSUFFIX=""
elif [ "$ARCH" = "i686" ]; then
SLKCFLAGS="-O2 -march=i686 -mtune=i686"
@@ -69,6 +79,9 @@ find -L . \
\( -perm 666 -o -perm 664 -o -perm 640 -o -perm 600 -o -perm 444 \
-o -perm 440 -o -perm 400 \) -exec chmod 644 {} \;
+patch -p1 < $CWD/qmc2-qt5.15.patch
+patch --binary -p1 < $CWD/qmc2-types.patch
+
CXX_FLAGS="$SLKCFLAGS" LDFLAGS="-L/usr/lib${LIBDIRSUFFIX}" \
make EMU=MESS PREFIX=/usr PRETTY=0 MACHINE=$ARCH
make install EMU=MESS PREFIX=/usr DESTDIR=$PKG
@@ -104,4 +117,4 @@ cat $CWD/slack-desc > $PKG/install/slack-desc
cat $CWD/doinst.sh > $PKG/install/doinst.sh
cd $PKG
-/sbin/makepkg -l y -c n $OUTPUT/$PRGNAM-$VERSION-$ARCH-$BUILD$TAG.${PKGTYPE:-tgz}
+/sbin/makepkg -l y -c n $OUTPUT/$PRGNAM-$VERSION-$ARCH-$BUILD$TAG.$PKGTYPE
diff --git a/games/qstat/README b/games/qstat/README
deleted file mode 100644
index 80915ca850..0000000000
--- a/games/qstat/README
+++ /dev/null
@@ -1,5 +0,0 @@
-QStat is a command-line program that displays information about Internet
-game servers. The servers are either down, non-responsive, or running
-a game. For servers running a game, the server name, map name, current
-number of players, and response time are displayed. Server rules and
-player information may also be displayed.
diff --git a/games/qstat/doinst.sh b/games/qstat/doinst.sh
deleted file mode 100644
index df4e1c9549..0000000000
--- a/games/qstat/doinst.sh
+++ /dev/null
@@ -1,15 +0,0 @@
-# Handle configuration files
-config() {
- NEW="$1"
- OLD="`dirname $NEW`/`basename $NEW .new`"
- # If there's no config file by that name, mv it over:
- if [ ! -r $OLD ]; then
- mv $NEW $OLD
- elif [ "`cat $OLD | md5sum`" = "`cat $NEW | md5sum`" ]; then # toss the redundant copy
- rm $NEW
- fi
- # Otherwise, we leave the .new copy for the admin to consider...
-}
-# List of configuration files (they should end in .new)
-
-config etc/qstat.cfg.new
diff --git a/games/qstat/qstat.SlackBuild b/games/qstat/qstat.SlackBuild
deleted file mode 100644
index 1256760a64..0000000000
--- a/games/qstat/qstat.SlackBuild
+++ /dev/null
@@ -1,104 +0,0 @@
-#!/bin/sh
-
-# Slackware build script for qstat (the revived version)
-#
-# Copyright 2015 Gethyn ThomasQuail <gethyn@bloodbathsoftworks.com>
-# All rights reserved.
-#
-# Based on:
-# SBo's cmake-template
-# QStat SlackBuild by David Somero <dsomero@hotmail.com> Copyright 2007
-#
-# Redistribution and use of this script, with or without modification, is
-# permitted provided that the following conditions are met:
-#
-# 1. Redistributions of this script must retain the above copyright
-# notice, this list of conditions and the following disclaimer.
-#
-# THIS SOFTWARE IS PROVIDED BY THE AUTHOR ''AS IS'' AND ANY EXPRESS OR IMPLIED
-# WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE IMPLIED WARRANTIES OF
-# MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE ARE DISCLAIMED. IN NO
-# EVENT SHALL THE AUTHOR BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL,
-# SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT LIMITED TO,
-# PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, DATA, OR PROFITS;
-# OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY,
-# WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR
-# OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF THIS SOFTWARE, EVEN IF
-# ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
-
-PRGNAM=qstat
-VERSION=${VERSION:-2d841880730d8704abaa6444a525bf144c1bee9d}
-BUILD=${BUILD:-1}
-TAG=${TAG:-_SBo}
-
-if [ -z "$ARCH" ]; then
- case "$( uname -m )" in
- i?86) ARCH=i486 ;;
- arm*) ARCH=arm ;;
- *) ARCH=$( uname -m ) ;;
- esac
-fi
-
-CWD=$(pwd)
-TMP=${TMP:-/tmp/SBo}
-PKG=$TMP/package-$PRGNAM
-OUTPUT=${OUTPUT:-/tmp}
-
-if [ "$ARCH" = "i486" ]; then
- SLKCFLAGS="-O2 -march=i486 -mtune=i686"
- LIBDIRSUFFIX=""
-elif [ "$ARCH" = "i686" ]; then
- SLKCFLAGS="-O2 -march=i686 -mtune=i686"
- LIBDIRSUFFIX=""
-elif [ "$ARCH" = "x86_64" ]; then
- SLKCFLAGS="-O2 -fPIC"
- LIBDIRSUFFIX="64"
-else
- SLKCFLAGS="-O2"
- LIBDIRSUFFIX=""
-fi
-
-set -e
-
-rm -rf $PKG
-mkdir -p $TMP $PKG $OUTPUT
-cd $TMP
-rm -rf $PRGNAM-$VERSION
-unzip $CWD/$PRGNAM-$VERSION.zip || unzip $CWD/$VERSION.zip
-cd $PRGNAM-$VERSION
-chown -R root:root .
-find -L . \
- \( -perm 777 -o -perm 775 -o -perm 750 -o -perm 711 -o -perm 555 \
- -o -perm 511 \) -exec chmod 755 {} \; -o \
- \( -perm 666 -o -perm 664 -o -perm 640 -o -perm 600 -o -perm 444 \
- -o -perm 440 -o -perm 400 \) -exec chmod 644 {} \;
-
-./autogen.sh
-
-CFLAGS="${SLKCFLAGS}" \
-CXXFLAGS="${SLKCFLAGS}" \
-./configure \
- --prefix=/usr \
- --sysconfdir=/etc \
- --localstatedir=/var \
- --mandir=/usr/man \
- --program-prefix="" \
- --program-suffix="" \
- --with-docdir=/usr/doc/$PRGNAM-$VERSION
- make
- make install DESTDIR=$PKG
-
-# Don't clobber existing config
-mv $PKG/etc/qstat.cfg $PKG/etc/qstat.cfg.new
-
-mkdir -p $PKG/usr/doc/$PRGNAM-$VERSION
-cp -a ChangeLog CHANGES.txt LICENSE.txt qstatdoc.html README.md \
- $PKG/usr/doc/$PRGNAM-$VERSION
-cat $CWD/$PRGNAM.SlackBuild > $PKG/usr/doc/$PRGNAM-$VERSION/$PRGNAM.SlackBuild
-
-mkdir -p $PKG/install
-cat $CWD/slack-desc > $PKG/install/slack-desc
-cat $CWD/doinst.sh > $PKG/install/doinst.sh
-
-cd $PKG
-/sbin/makepkg -l y -c n $OUTPUT/$PRGNAM-$VERSION-$ARCH-$BUILD$TAG.${PKGTYPE:-tgz}
diff --git a/games/qstat/qstat.info b/games/qstat/qstat.info
deleted file mode 100644
index f3afb30054..0000000000
--- a/games/qstat/qstat.info
+++ /dev/null
@@ -1,10 +0,0 @@
-PRGNAM="qstat"
-VERSION="2d841880730d8704abaa6444a525bf144c1bee9d"
-HOMEPAGE="https://github.com/multiplay/qstat"
-DOWNLOAD="https://github.com/multiplay/qstat/archive/2d841880730d8704abaa6444a525bf144c1bee9d.zip"
-MD5SUM="a05658e3855861c074c6560169bbdf49"
-DOWNLOAD_x86_64=""
-MD5SUM_x86_64=""
-REQUIRES=""
-MAINTAINER="Gethyn ThomasQuail"
-EMAIL="gethyn@bloodbathsoftworks.com"
diff --git a/games/qstat/slack-desc b/games/qstat/slack-desc
deleted file mode 100644
index 59582adf37..0000000000
--- a/games/qstat/slack-desc
+++ /dev/null
@@ -1,19 +0,0 @@
-# HOW TO EDIT THIS FILE:
-# The "handy ruler" below makes it easier to edit a package description.
-# Line up the first '|' above the ':' following the base package name, and
-# the '|' on the right side marks the last column you can put a character in.
-# You must make exactly 11 lines for the formatting to be correct. It's also
-# customary to leave one space after the ':' except on otherwise blank lines.
-
- |-----handy-ruler------------------------------------------------------|
-qstat: qstat (Command-line Game Server Query Tool)
-qstat:
-qstat: QStat is a command-line program that displays information about
-qstat: Internet game servers. The servers are either down, non-responsive, or
-qstat: running a game. For servers running a game, the server name, map name,
-qstat: current number of players, and response time are displayed. Server
-qstat: rules and player information may also be displayed.
-qstat:
-qstat: Homepage: https://github.com/multiplay/qstat
-qstat:
-qstat:
diff --git a/games/qtads/qtads.SlackBuild b/games/qtads/qtads.SlackBuild
index f48847df29..5de063950f 100644
--- a/games/qtads/qtads.SlackBuild
+++ b/games/qtads/qtads.SlackBuild
@@ -1,19 +1,25 @@
-#!/bin/sh
+#!/bin/bash
# Slackware build script for qtads
-# Written by B. Watson (yalhcru@gmail.com)
+# Written by B. Watson (urchlay@slackware.uk)
# Licensed under the WTFPL. See http://www.wtfpl.net/txt/copying/ for details.
+# 20230711 bkw: updated for v3.4.0.
+# 20220611 bkw: updated for v3.3.0.
+# 20211022 bkw: updated for v3.2.0.
# 20201020 bkw: updated for v3.0.0. Sadly the qt4 UI is gone in this
# release, so qt5 is now a hard dep. SDL2_sound is no longer needed, but
# it's replaced with fluidsynth.
+cd $(dirname $0) ; CWD=$(pwd)
+
PRGNAM=qtads
-VERSION=${VERSION:-3.0.0}
+VERSION=${VERSION:-3.4.0}
BUILD=${BUILD:-1}
TAG=${TAG:-_SBo}
+PKGTYPE=${PKGTYPE:-tgz}
if [ -z "$ARCH" ]; then
case "$( uname -m )" in
@@ -23,7 +29,11 @@ if [ -z "$ARCH" ]; then
esac
fi
-CWD=$(pwd)
+if [ ! -z "${PRINT_PACKAGE_NAME}" ]; then
+ echo "$PRGNAM-$VERSION-$ARCH-$BUILD$TAG.$PKGTYPE"
+ exit 0
+fi
+
TMP=${TMP:-/tmp/SBo}
PKG=$TMP/package-$PRGNAM
OUTPUT=${OUTPUT:-/tmp}
@@ -69,4 +79,4 @@ cat $CWD/slack-desc > $PKG/install/slack-desc
cat $CWD/doinst.sh > $PKG/install/doinst.sh
cd $PKG
-/sbin/makepkg -l y -c n $OUTPUT/$PRGNAM-$VERSION-$ARCH-$BUILD$TAG.${PKGTYPE:-tgz}
+/sbin/makepkg -l y -c n $OUTPUT/$PRGNAM-$VERSION-$ARCH-$BUILD$TAG.$PKGTYPE
diff --git a/games/qtads/qtads.info b/games/qtads/qtads.info
index 486be6ef74..c0c67eae0e 100644
--- a/games/qtads/qtads.info
+++ b/games/qtads/qtads.info
@@ -1,10 +1,10 @@
PRGNAM="qtads"
-VERSION="3.0.0"
+VERSION="3.4.0"
HOMEPAGE="https://github.com/realnc/qtads"
-DOWNLOAD="https://github.com/realnc/qtads/releases/download/v3.0.0/qtads-3.0.0-source.tar.xz"
-MD5SUM="bbe7ee79d776f7f656b0ca7acd4d815b"
+DOWNLOAD="https://github.com/realnc/qtads/releases/download/v3.4.0/qtads-3.4.0-source.tar.xz"
+MD5SUM="aa56a7b2e6e4210c1b91159b25050ec9"
DOWNLOAD_x86_64=""
MD5SUM_x86_64=""
-REQUIRES="SDL2 qt5 fluidsynth"
+REQUIRES=""
MAINTAINER="B. Watson"
-EMAIL="yalhcru@gmail.com"
+EMAIL="urchlay@slackware.uk"
diff --git a/games/qtsixa/README b/games/qtsixa/README
deleted file mode 100644
index 2cafcb5d23..0000000000
--- a/games/qtsixa/README
+++ /dev/null
@@ -1,30 +0,0 @@
-QtSixA is the Sixaxis Joystick Manager. It can connect PS3 hardware
-(Sixaxis/DualShock3 and Keypads) to a Linux-compatible machine.
-Currently it supports Sixaxis buttons, axis, accelerometers and LEDs.
-
-Some patches thankfully taken from:
-https://aur.archlinux.org/packages/qtsixa/.
-
-Notes:
-
-Be sure you are using a Bluetooth dongle with a HCI version higher
-than 1.1 by using `hciconfig default version | grep HCI`.
-
-Please note that due to the behaviour of "sixpair" and a replaced
-"hidd", the stock Bluetooth stack is getting disabled while running
-and no other Bluetooth devices will work, until the "replaced" hidd is
-disabled again from `sh /etc/rc.d/rc.sixad stop`.
-
-In case something like `kdesu` is not installed, you need to run
-`qtsixa` with root rights.
-
-Steps:
-
-- connect your device through USB
-- start "qtsixa" and pair your device (Tasks->Pair Device to PC)
-- start "sixad" by `sh /etc/rc.d/rc.sixad start`
-- press the PS button on your controller
-
-Pairing is just needed once. If wanted, you can add rc.sixad to your
-rc.local and pressing the PS button again after a reboot without any
-further interaction.
diff --git a/games/qtsixa/doinst.sh b/games/qtsixa/doinst.sh
deleted file mode 100644
index b7b72f4685..0000000000
--- a/games/qtsixa/doinst.sh
+++ /dev/null
@@ -1,37 +0,0 @@
-config() {
- NEW="$1"
- OLD="$(dirname $NEW)/$(basename $NEW .new)"
- # If there's no config file by that name, mv it over:
- if [ ! -r $OLD ]; then
- mv $NEW $OLD
- elif [ "$(cat $OLD | md5sum)" = "$(cat $NEW | md5sum)" ]; then
- # toss the redundant copy
- rm $NEW
- fi
- # Otherwise, we leave the .new copy for the admin to consider...
-}
-
-preserve_perms() {
- NEW="$1"
- OLD="$(dirname $NEW)/$(basename $NEW .new)"
- if [ -e $OLD ]; then
- cp -a $OLD ${NEW}.incoming
- cat $NEW > ${NEW}.incoming
- mv ${NEW}.incoming $NEW
- fi
- config $NEW
-}
-
-preserve_perms etc/rc.d/rc.sixad.new
-config etc/logrotate.d/sixad.new
-config etc/default/sixad.new
-
-if [ -x /usr/bin/update-desktop-database ]; then
- /usr/bin/update-desktop-database -q usr/share/applications >/dev/null 2>&1
-fi
-
-if [ -e usr/share/icons/hicolor/icon-theme.cache ]; then
- if [ -x /usr/bin/gtk-update-icon-cache ]; then
- /usr/bin/gtk-update-icon-cache -f usr/share/icons/hicolor >/dev/null 2>&1
- fi
-fi
diff --git a/games/qtsixa/qtsixa-dbus.patch b/games/qtsixa/qtsixa-dbus.patch
deleted file mode 100644
index deab7c3677..0000000000
--- a/games/qtsixa/qtsixa-dbus.patch
+++ /dev/null
@@ -1,43 +0,0 @@
-diff -urp qtsixa/gui/qtsixa_main.py qtsixa/gui/qtsixa_main.py
---- qtsixa/gui/qtsixa_main.py 2012-12-06 22:59:03.103868725 -0800
-+++ qtsixa/gui/qtsixa_main.py 2012-12-06 22:59:55.033596582 -0800
-@@ -307,6 +307,8 @@ class MainW(QMainWindow, ui_qtsixa_mainw
- def func_DBusDisconnect(self, mode, name, mac):
- bus = dbus.SystemBus()
- try:
-+ if (getoutput("qtsixa "+"--check-bluetoothd") == "0"):
-+ raise
- bluez_bus = bus.get_object('org.bluez', '/')
- bluez_id = bluez_bus.DefaultAdapter(dbus_interface='org.bluez.Manager')
- adapter_bus = bus.get_object('org.bluez', bluez_id)
-diff -urp qtsixa/qtsixa qtsixa/qtsixa
---- qtsixa/qtsixa 2012-12-06 22:59:03.107202042 -0800
-+++ qtsixa/qtsixa 2012-12-06 22:59:17.417127047 -0800
-@@ -68,6 +68,10 @@ fi
- echo "$ROOT"
- ;;
-
-+ check-bluetoothd|-check-bluetoothd|--check-bluetoothd)
-+ps -e | grep bluetoothd > /dev/null && echo "1" || echo "0"
-+ ;;
-+
- *)
- if [ -f ./gui/main.py ]; then
- exec python2 ./gui/main.py "$@"
-diff -urp sixad/Makefile sixad/Makefile
---- sixad/Makefile 2012-12-06 22:59:03.100535408 -0800
-+++ sixad/Makefile 2012-12-06 22:59:17.417127047 -0800
-@@ -34,7 +34,6 @@ install:
- install -m 755 bins/sixad-remote $(DESTDIR)/usr/sbin/
- install -m 755 bins/sixad-3in1 $(DESTDIR)/usr/sbin/
- install -m 755 bins/sixad-raw $(DESTDIR)/usr/sbin/
-- install -m 755 sixad-dbus-blocker $(DESTDIR)/usr/sbin/
- @chmod 777 -R $(DESTDIR)/var/lib/sixad/
- @echo "Installation is Complete!"
-
-@@ -47,5 +46,4 @@ uninstall:
- rm -f $(DESTDIR)/usr/sbin/sixad-sixaxis
- rm -f $(DESTDIR)/usr/sbin/sixad-remote
- rm -f $(DESTDIR)/usr/sbin/sixad-raw
-- rm -f $(DESTDIR)/usr/sbin/sixad-dbus-blocker
- rm -rf $(DESTDIR)/var/lib/sixad/
diff --git a/games/qtsixa/qtsixa.SlackBuild b/games/qtsixa/qtsixa.SlackBuild
deleted file mode 100644
index 5c1ae729cb..0000000000
--- a/games/qtsixa/qtsixa.SlackBuild
+++ /dev/null
@@ -1,135 +0,0 @@
-#!/bin/sh
-
-# Slackware build script for "qtsixa".
-
-# Copyright 2013-2015 Marcel Saegebarth <marc@mos6581.de>
-# All rights reserved.
-#
-# Redistribution and use in source and binary forms, with or without
-# modification, are permitted provided that the following conditions are
-# met:
-#
-# * Redistributions of source code must retain the above copyright
-# notice, this list of conditions and the following disclaimer.
-#
-# THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS
-# "AS IS" AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT
-# LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR
-# A PARTICULAR PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT
-# OWNER OR CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL,
-# SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT
-# LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE,
-# DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY
-# THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT
-# (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE
-# OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
-
-PRGNAM=qtsixa
-VERSION=${VERSION:-1.5.1}
-BUILD=${BUILD:-1}
-TAG=${TAG:-_SBo}
-
-SRCNAM=QtSixA
-
-if [ -z "$ARCH" ]; then
- case "$( uname -m )" in
- i?86) ARCH=i486 ;;
- arm*) ARCH=arm ;;
- *) ARCH=$( uname -m ) ;;
- esac
-fi
-
-CWD=$(pwd)
-TMP=${TMP:-/tmp/SBo}
-PKG=$TMP/package-$PRGNAM
-OUTPUT=${OUTPUT:-/tmp}
-
-if [ "$ARCH" = "i486" ]; then
- SLKCFLAGS="-O2 -march=i486 -mtune=i686"
- LIBDIRSUFFIX=""
-elif [ "$ARCH" = "i686" ]; then
- SLKCFLAGS="-O2 -march=i686 -mtune=i686"
- LIBDIRSUFFIX=""
-elif [ "$ARCH" = "x86_64" ]; then
- SLKCFLAGS="-O2 -fPIC"
- LIBDIRSUFFIX="64"
-else
- SLKCFLAGS="-O2"
- LIBDIRSUFFIX=""
-fi
-
-set -e
-
-rm -rf $PKG
-mkdir -p $TMP $PKG $OUTPUT
-cd $TMP
-rm -rf $SRCNAM-$VERSION
-tar xvf $CWD/$SRCNAM-$VERSION-src.tar.gz
-cd $SRCNAM-$VERSION
-
-patch -p0 < $CWD/sixad.patch
-patch -p0 < $CWD/qtsixa-dbus.patch
-for file in init shared-h ; do
- patch -p0 < $CWD/sixad-$file.patch
-done
-
-chown -R root:root .
-find -L . \
- \( -perm 777 -o -perm 775 -o -perm 750 -o -perm 711 -o -perm 555 \
- -o -perm 511 \) -exec chmod 755 {} \; -o \
- \( -perm 666 -o -perm 664 -o -perm 640 -o -perm 600 -o -perm 444 \
- -o -perm 440 -o -perm 400 \) -exec chmod 644 {} \;
-
-make CFLAGS="$SLKCFLAGS" CXXFLAGS="$SLKCFLAGS"
-
-mkdir -p $PKG/usr/bin $PKG/usr/sbin $PKG/usr/doc/$PRGNAM-$VERSION \
-$PKG/usr/share/pixmaps $PKG/usr/share/applications $PKG/usr/share/qtsixa \
-$PKG/usr/share/qtsixa/profiles $PKG/usr/share/qtsixa/game-profiles \
-$PKG/usr/share/qtsixa/gui/ui $PKG/usr/share/qtsixa/icons \
-$PKG/usr/share/qtsixa/pics $PKG/var/lib/sixad/profiles \
-$PKG/etc/default $PKG/etc/logrotate.d $PKG/etc/rc.d
-
-for file in qtsixa sixad-lq sixad-notify ; do
- install -m 0755 $TMP/$SRCNAM-$VERSION/qtsixa/$file $PKG/usr/bin
-done
-
-install -m 0755 $TMP/$SRCNAM-$VERSION/sixad/sixad $PKG/usr/bin
-for file in 3in1 bin raw remote sixaxis ; do
- install -s -m 0755 $TMP/$SRCNAM-$VERSION/sixad/bins/sixad-$file $PKG/usr/sbin
-done
-
-for file in hidraw-dump sixad-jack sixpair sixpair-kbd ; do
- install -s -m 0755 $TMP/$SRCNAM-$VERSION/utils/bins/$file $PKG/usr/sbin
-done
-
-install -m 0644 $TMP/$SRCNAM-$VERSION/qtsixa/profiles/* \
-$PKG/usr/share/qtsixa/profiles
-install -m 0644 $TMP/$SRCNAM-$VERSION/qtsixa/game-profiles/* \
-$PKG/usr/share/qtsixa/game-profiles
-cp -r $TMP/$SRCNAM-$VERSION/qtsixa/gui $PKG/usr/share/qtsixa
-chmod -R 755 $PKG/usr/share/qtsixa/gui
-install -m 0644 $TMP/$SRCNAM-$VERSION/qtsixa/icons/* $PKG/usr/share/qtsixa/icons
-install -m 0644 $TMP/$SRCNAM-$VERSION/qtsixa/pics/* $PKG/usr/share/qtsixa/pics
-install -m 0644 $TMP/$SRCNAM-$VERSION/qtsixa/qtsixa.desktop \
-$PKG/usr/share/applications
-install -m 0644 $TMP/$SRCNAM-$VERSION/qtsixa/sixad-notify.desktop \
-$PKG/usr/share/applications
-install -m 0644 $TMP/$SRCNAM-$VERSION/qtsixa/qtsixa.xpm \
-$PKG/usr/share/pixmaps
-
-install -m 0644 $TMP/$SRCNAM-$VERSION/sixad/sixad.default $PKG/etc/default/sixad.new
-install -m 0644 $TMP/$SRCNAM-$VERSION/sixad/sixad.init $PKG/etc/rc.d/rc.sixad.new
-install -m 0644 $TMP/$SRCNAM-$VERSION/sixad/sixad.log $PKG/etc/logrotate.d/sixad.new
-
-for file in COPYING INSTALL README TODO manual.pdf ; do
- install -m 0644 $TMP/$SRCNAM-$VERSION/$file $PKG/usr/doc/$PRGNAM-$VERSION
-done
-
-cat $CWD/$PRGNAM.SlackBuild > $PKG/usr/doc/$PRGNAM-$VERSION/$PRGNAM.SlackBuild
-
-mkdir -p $PKG/install
-cat $CWD/slack-desc > $PKG/install/slack-desc
-cat $CWD/doinst.sh > $PKG/install/doinst.sh
-
-cd $PKG
-/sbin/makepkg -l y -c n $OUTPUT/$PRGNAM-$VERSION-$ARCH-$BUILD$TAG.${PKGTYPE:-tgz}
diff --git a/games/qtsixa/qtsixa.info b/games/qtsixa/qtsixa.info
deleted file mode 100644
index 2deec34ac7..0000000000
--- a/games/qtsixa/qtsixa.info
+++ /dev/null
@@ -1,10 +0,0 @@
-PRGNAM="qtsixa"
-VERSION="1.5.1"
-HOMEPAGE="https://sourceforge.net/projects/qtsixa/"
-DOWNLOAD="https://downloads.sourceforge.net/qtsixa/QtSixA-1.5.1-src.tar.gz"
-MD5SUM="d61bef5d737367aeddd57a6bc11da52a"
-DOWNLOAD_x86_64=""
-MD5SUM_x86_64=""
-REQUIRES="jack"
-MAINTAINER="Marcel Saegebarth"
-EMAIL="marc@mos6581.de"
diff --git a/games/qtsixa/sixad-init.patch b/games/qtsixa/sixad-init.patch
deleted file mode 100644
index 51ae0b11ff..0000000000
--- a/games/qtsixa/sixad-init.patch
+++ /dev/null
@@ -1,52 +0,0 @@
---- sixad/sixad.init.orig 2013-03-30 18:09:41.713986598 +0100
-+++ sixad/sixad.init 2013-03-30 18:11:19.787352424 +0100
-@@ -19,40 +19,37 @@
- ps -e | grep sixad-bin > /dev/null
- }
-
--. /lib/lsb/init-functions
--
- case "$1" in
- start)
- if (sixad_already_running_check "$1"); then
-- log_warning_msg "sixad is already running"
-+ echo "sixad is already running"
-+ exit 1
- else
- {
-- log_daemon_msg "Starting sixad"
-+ echo "Starting sixad"
- $DAEMON --start &>>/var/log/sixad &
-- log_end_msg 0
-+ exit 0
- }
- fi
- ;;
- stop)
- if (sixad_already_running_check "$1"); then
- {
-- log_daemon_msg "Stopping sixad"
-+ echo "Stopping sixad"
- $DAEMON --stop || true
-- log_end_msg 0
-+ exit 0
- }
- else
-- log_warning_msg "sixad is not running"
-+ echo "sixad is not running"
-+ exit 1
- fi
- ;;
- restart)
- $0 stop
- $0 start
- ;;
-- status)
-- status_of_proc "sixad-bin" "sixad" && exit 0 || exit $?
-- ;;
- *)
-- echo "Usage: /etc/init.d/sixad {start|stop|restart|status}" >&2
-+ echo "Usage: /etc/rc.d/rc.sixad {start|stop|restart}" >&2
- exit 1
- ;;
- esac
diff --git a/games/qtsixa/sixad-shared-h.patch b/games/qtsixa/sixad-shared-h.patch
deleted file mode 100644
index ece0ab51e7..0000000000
--- a/games/qtsixa/sixad-shared-h.patch
+++ /dev/null
@@ -1,11 +0,0 @@
---- sixad/shared.h.orig 2011-10-12 02:37:38.000000000 +0200
-+++ sixad/shared.h 2012-04-10 13:36:49.119637000 +0200
-@@ -18,6 +18,8 @@
- #ifndef SHARED_H
- #define SHARED_H
-
-+#include <unistd.h>
-+
- struct dev_led {
- bool enabled;
- bool anim; \ No newline at end of file
diff --git a/games/qtsixa/sixad.patch b/games/qtsixa/sixad.patch
deleted file mode 100644
index 441559fe84..0000000000
--- a/games/qtsixa/sixad.patch
+++ /dev/null
@@ -1,83 +0,0 @@
---- sixad/sixad.orig 2011-10-12 18:39:33.000000000 +0200
-+++ sixad/sixad 2013-03-30 19:15:48.576679323 +0100
-@@ -48,13 +48,8 @@
- }
-
- bt_start () {
--$SUDO rm -f /tmp/.sixad-dbus-blocker.pid
--env sleep 1
--
--if [ -f /lib/udev/rules.d/97-bluetooth.rules ]; then
-- $SUDO /usr/sbin/bluetoothd --udev
--elif [ -f /etc/rc.d/bluetooth ]; then
-- $SUDO /etc/rc.d/bluetooth start
-+if [ -f /etc/rc.d/rc.bluetooth ]; then
-+ $SUDO /etc/rc.d/rc.bluetooth start
- else
- $SUDO /etc/init.d/bluetooth start
- fi
-@@ -62,10 +57,12 @@
-
- bt_stop() {
- if (bluetoothd_running_check); then
-- $SUDO pkill -KILL bluetoothd
-+ if [ -f /etc/rc.d/rc.bluetooth ]; then
-+ $SUDO /etc/rc.d/rc.bluetooth stop
-+ else
-+ $SUDO /etc/init.d/bluetooth stop
-+ fi
- fi
--
--$SUDO /usr/sbin/sixad-dbus-blocker &
- }
-
- case $1 in
-@@ -108,38 +105,6 @@
- bt_start
- ;;
-
-- --boot-yes)
--# ArchLinux
--if [ -f /etc/arch-release ]; then
-- $SUDO sed '/DAEMONS=/ s/)/ sixad)/g' -i /etc/rc.conf
--# Gentoo
--elif [ -f /etc/gentoo-release ]; then
-- $SUDO rc-update add sixad
--# Debian (default)
--else
-- if [ -f /etc/rc2.d/S90sixad ]; then true; else $SUDO ln -s /etc/init.d/sixad /etc/rc2.d/S90sixad; fi
-- if [ -f /etc/rc3.d/S90sixad ]; then true; else $SUDO ln -s /etc/init.d/sixad /etc/rc3.d/S90sixad; fi
-- if [ -f /etc/rc4.d/S90sixad ]; then true; else $SUDO ln -s /etc/init.d/sixad /etc/rc4.d/S90sixad; fi
-- if [ -f /etc/rc5.d/S90sixad ]; then true; else $SUDO ln -s /etc/init.d/sixad /etc/rc5.d/S90sixad; fi
--fi
-- ;;
--
-- --boot-no)
--# ArchLinux
--if [ -f /etc/arch-release ]; then
-- $SUDO sed "s/ sixad//" -i /etc/rc.conf
--# Gentoo
--elif [ -f /etc/gentoo-release ]; then
-- $SUDO rc-update delete sixad
--# Debian (default)
--else
-- if [ -f /etc/rc2.d/S90sixad ]; then $SUDO rm /etc/rc2.d/S90sixad; fi
-- if [ -f /etc/rc3.d/S90sixad ]; then $SUDO rm /etc/rc3.d/S90sixad; fi
-- if [ -f /etc/rc4.d/S90sixad ]; then $SUDO rm /etc/rc4.d/S90sixad; fi
-- if [ -f /etc/rc5.d/S90sixad ]; then $SUDO rm /etc/rc5.d/S90sixad; fi
--fi
-- ;;
--
- --help|-help|help|-h)
- echo "[Qt]SixA Daemon"
- $0
-@@ -162,9 +127,6 @@
-
- -r, --restore Restore regular bluetooth
-
-- --boot-yes Auto-starts sixad at boot time
-- --boot-no Does not auto-start sixad at boot time
--
- You can also check: sixad-raw, sixad-notify"
- ;;
-
diff --git a/games/qtsixa/slack-desc b/games/qtsixa/slack-desc
deleted file mode 100644
index da6ea44334..0000000000
--- a/games/qtsixa/slack-desc
+++ /dev/null
@@ -1,19 +0,0 @@
-# HOW TO EDIT THIS FILE:
-# The "handy ruler" below makes it easier to edit a package description.
-# Line up the first '|' above the ':' following the base package name, and
-# the '|' on the right side marks the last column you can put a character in.
-# You must make exactly 11 lines for the formatting to be correct. It's also
-# customary to leave one space after the ':' except on otherwise blank lines.
-
- |-----handy-ruler------------------------------------------------------|
-qtsixa: qtsixa (Sixaxis Joystick Manager)
-qtsixa:
-qtsixa: QtSixA is the Sixaxis Joystick Manager. It can connect PS3 hardware
-qtsixa: (Sixaxis/DualShock3 and Keypads) to a Linux-compatible machine.
-qtsixa: Currently it supports Sixaxis buttons, axis, accelerometers and LEDs.
-qtsixa:
-qtsixa: Homepage: https://sourceforge.net/projects/qtsixa/
-qtsixa:
-qtsixa:
-qtsixa:
-qtsixa:
diff --git a/games/quackle/README b/games/quackle/README
new file mode 100644
index 0000000000..b49622be0a
--- /dev/null
+++ b/games/quackle/README
@@ -0,0 +1,5 @@
+quackle (crossword game similar to Scrabble[TM])
+
+Quackle is a crossword game playing, analysis, and study tool. It
+allows playing against the computer or other humans, and includes
+dictionaries for many languages.
diff --git a/games/quackle/doinst.sh b/games/quackle/doinst.sh
new file mode 100644
index 0000000000..3e5691a052
--- /dev/null
+++ b/games/quackle/doinst.sh
@@ -0,0 +1,9 @@
+if [ -x /usr/bin/update-desktop-database ]; then
+ /usr/bin/update-desktop-database -q usr/share/applications >/dev/null 2>&1
+fi
+
+if [ -e usr/share/icons/hicolor/icon-theme.cache ]; then
+ if [ -x /usr/bin/gtk-update-icon-cache ]; then
+ /usr/bin/gtk-update-icon-cache usr/share/icons/hicolor >/dev/null 2>&1
+ fi
+fi
diff --git a/games/quackle/quackle.SlackBuild b/games/quackle/quackle.SlackBuild
new file mode 100644
index 0000000000..294d5bbe3d
--- /dev/null
+++ b/games/quackle/quackle.SlackBuild
@@ -0,0 +1,90 @@
+#!/bin/bash
+
+# Slackware build script for quackle
+
+# Written by B. Watson (urchlay@slackware.uk)
+
+# Licensed under the WTFPL. See http://www.wtfpl.net/txt/copying/ for details.
+
+cd $(dirname $0) ; CWD=$(pwd)
+
+PRGNAM=quackle
+VERSION=${VERSION:-1.0.4}
+BUILD=${BUILD:-1}
+TAG=${TAG:-_SBo}
+PKGTYPE=${PKGTYPE:-tgz}
+
+if [ -z "$ARCH" ]; then
+ case "$( uname -m )" in
+ i?86) ARCH=i586 ;;
+ arm*) ARCH=arm ;;
+ *) ARCH=$( uname -m ) ;;
+ esac
+fi
+
+if [ ! -z "${PRINT_PACKAGE_NAME}" ]; then
+ echo "$PRGNAM-$VERSION-$ARCH-$BUILD$TAG.$PKGTYPE"
+ exit 0
+fi
+
+TMP=${TMP:-/tmp/SBo}
+PKG=$TMP/package-$PRGNAM
+OUTPUT=${OUTPUT:-/tmp}
+
+# qmake picks the correct CFLAGS, we don't need SLKCFLAGS.
+# nothing goes in /usr/lib(64)?, so we don't need LIBDIRSUFFIX.
+
+set -e
+
+rm -rf $PKG
+mkdir -p $TMP $PKG $OUTPUT
+cd $TMP
+rm -rf $PRGNAM-$VERSION
+tar xvf $CWD/$PRGNAM-$VERSION.tar.gz
+cd $PRGNAM-$VERSION
+chown -R root:root .
+find -L . -perm /111 -a \! -perm 755 -a -exec chmod 755 {} \+ -o \
+ \! -perm /111 -a \! -perm 644 -a -exec chmod 644 {} \+
+
+# Note: there's CMakeLists.txt, but upstream's docs say to use qmake.
+# Looking at the cmake stuff, it seems to be written for Mac and
+# Windows only, not Linux.
+
+for dir in . quackleio quacker; do
+ ( cd $dir && qmake-qt5 && make )
+done
+
+# no 'make install'. it expects to find data/ in the current dir, so
+# there's a wrapper script.
+mkdir -p $PKG/usr/libexec/$PRGNAM $PKG/usr/games $PKG/usr/share/games/$PRGNAM
+install -oroot -groot -m0755 $CWD/$PRGNAM.sh $PKG/usr/games/$PRGNAM
+install -s quacker/Quackle $PKG/usr/libexec/$PRGNAM/$PRGNAM
+find data -name CMakeLists.txt | xargs rm -f
+cp -a data $PKG/usr/share/games/$PRGNAM
+
+# .desktop file written by SlackBuild author.
+mkdir -p $PKG/usr/share/applications
+cat $CWD/$PRGNAM.desktop > $PKG/usr/share/applications/$PRGNAM.desktop
+
+for i in quacker/Images.xcassets/AppIcon.appiconset/*.png; do
+ px="$( basename $i .png | cut -d- -f2)"
+ sz="${px}x${px}"
+ dir=$PKG/usr/share/icons/hicolor/$sz/apps
+ mkdir -p $dir
+ cp -a $i $dir/$PRGNAM.png
+done
+mkdir -p $PKG/usr/share/pixmaps
+ln -s ../icons/hicolor/64x64/apps/$PRGNAM.png $PKG/usr/share/pixmaps/$PRGNAM.png
+
+# README.md is just the compile instructions, don't bother.
+PKGDOC=$PKG/usr/doc/$PRGNAM-$VERSION
+mkdir -p $PKGDOC
+cp -a LICENSE $PKGDOC
+cat $CWD/$PRGNAM.SlackBuild > $PKGDOC/$PRGNAM.SlackBuild
+
+mkdir -p $PKG/install
+cat $CWD/slack-desc > $PKG/install/slack-desc
+cat $CWD/doinst.sh > $PKG/install/doinst.sh
+
+cd $PKG
+/sbin/makepkg -l y -c n $OUTPUT/$PRGNAM-$VERSION-$ARCH-$BUILD$TAG.$PKGTYPE
diff --git a/games/quackle/quackle.desktop b/games/quackle/quackle.desktop
new file mode 100644
index 0000000000..8fc07e051e
--- /dev/null
+++ b/games/quackle/quackle.desktop
@@ -0,0 +1,9 @@
+[Desktop Entry]
+Name=Quackle
+GenericName=Crossword Game
+Comment=Game similar to Scrabble(tm)
+Exec=/usr/games/quackle
+Icon=quackle
+Terminal=false
+Type=Application
+Categories=Game;BoardGame
diff --git a/games/quackle/quackle.info b/games/quackle/quackle.info
new file mode 100644
index 0000000000..cc81c39c6b
--- /dev/null
+++ b/games/quackle/quackle.info
@@ -0,0 +1,10 @@
+PRGNAM="quackle"
+VERSION="1.0.4"
+HOMEPAGE="https://github.com/quackle/quackle"
+DOWNLOAD="https://github.com/quackle/quackle/archive/v1.0.4/quackle-1.0.4.tar.gz"
+MD5SUM="7f850f0e7c8e810578bb2dadbede3903"
+DOWNLOAD_x86_64=""
+MD5SUM_x86_64=""
+REQUIRES=""
+MAINTAINER="B. Watson"
+EMAIL="urchlay@slackware.uk"
diff --git a/games/quackle/quackle.sh b/games/quackle/quackle.sh
new file mode 100644
index 0000000000..0d1a505c6b
--- /dev/null
+++ b/games/quackle/quackle.sh
@@ -0,0 +1,9 @@
+#!/bin/sh
+
+# shell script wrapper for quackle SBo build (WTFPL).
+# the game doesn't appear to write to its current directory, all
+# preferences get saved to ~/.config/Quackle.org/Quackle.conf
+# so we don't need a private per-user directory here.
+
+cd /usr/share/games/quackle
+exec /usr/libexec/quackle/quackle "$@"
diff --git a/games/quackle/slack-desc b/games/quackle/slack-desc
new file mode 100644
index 0000000000..43dd986b6b
--- /dev/null
+++ b/games/quackle/slack-desc
@@ -0,0 +1,19 @@
+# HOW TO EDIT THIS FILE:
+# The "handy ruler" below makes it easier to edit a package description.
+# Line up the first '|' above the ':' following the base package name, and
+# the '|' on the right side marks the last column you can put a character in.
+# You must make exactly 11 lines for the formatting to be correct. It's also
+# customary to leave one space after the ':' except on otherwise blank lines.
+
+ |-----handy-ruler------------------------------------------------------|
+quackle: quackle (crossword game similar to Scrabble[TM])
+quackle:
+quackle: Quackle is a crossword game playing, analysis, and study tool. It
+quackle: allows playing against the computer or other humans, and includes
+quackle: dictionaries for many languages.
+quackle:
+quackle:
+quackle:
+quackle:
+quackle:
+quackle:
diff --git a/games/quake3_shareware_data/quake3_shareware_data.SlackBuild b/games/quake3_shareware_data/quake3_shareware_data.SlackBuild
index a925a2584a..1439121a80 100644
--- a/games/quake3_shareware_data/quake3_shareware_data.SlackBuild
+++ b/games/quake3_shareware_data/quake3_shareware_data.SlackBuild
@@ -1,8 +1,8 @@
-#!/bin/sh
+#!/bin/bash
# Slackware build script for quake3_shareware_data
-# Copyright 2015-2016 Petar Petrov slackalaxy@gmail.com
+# Copyright 2015-2021 Petar Petrov slackalaxy@gmail.com
# All rights reserved.
#
# Redistribution and use of this script, with or without modification, is
@@ -22,17 +22,27 @@
# OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF THIS SOFTWARE, EVEN IF
# ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
+cd $(dirname $0) ; CWD=$(pwd)
+
PRGNAM=quake3_shareware_data
SRCNAM=linuxq3ademo
VERSION=${VERSION:-1.11.6}
SRCVER=1.11-6
BUILD=${BUILD:-1}
TAG=${TAG:-_SBo}
+PKGTYPE=${PKGTYPE:-tgz}
SRCARCH=x86
ARCH=noarch
-CWD=$(pwd)
+# If the variable PRINT_PACKAGE_NAME is set, then this script will report what
+# the name of the created package would be, and then exit. This information
+# could be useful to other scripts.
+if [ ! -z "${PRINT_PACKAGE_NAME}" ]; then
+ echo "$PRGNAM-$VERSION-$ARCH-$BUILD$TAG.$PKGTYPE"
+ exit 0
+fi
+
TMP=${TMP:-/tmp/SBo}
PKG=$TMP/package-$PRGNAM
OUTPUT=${OUTPUT:-/tmp}
@@ -70,4 +80,4 @@ mkdir -p $PKG/install
cat $CWD/slack-desc > $PKG/install/slack-desc
cd $PKG
-/sbin/makepkg -l y -c n $OUTPUT/$PRGNAM-$VERSION-$ARCH-$BUILD$TAG.${PKGTYPE:-tgz}
+/sbin/makepkg -l y -c n $OUTPUT/$PRGNAM-$VERSION-$ARCH-$BUILD$TAG.$PKGTYPE
diff --git a/games/quake_shareware_data/quake_shareware_data.SlackBuild b/games/quake_shareware_data/quake_shareware_data.SlackBuild
index 47901402bf..0d0f6a314d 100644
--- a/games/quake_shareware_data/quake_shareware_data.SlackBuild
+++ b/games/quake_shareware_data/quake_shareware_data.SlackBuild
@@ -1,17 +1,27 @@
-#!/bin/sh
+#!/bin/bash
# Slackware build script for Quake Shareware Data
# Written by M.Dinslage
+cd $(dirname $0) ; CWD=$(pwd)
+
PRGNAM=quake_shareware_data
VERSION=${VERSION:-1.06}
BUILD=${BUILD:-1}
TAG=${TAG:-_SBo}
+PKGTYPE=${PKGTYPE:-tgz}
ARCH=noarch
-CWD=$(pwd)
+# If the variable PRINT_PACKAGE_NAME is set, then this script will report what
+# the name of the created package would be, and then exit. This information
+# could be useful to other scripts.
+if [ ! -z "${PRINT_PACKAGE_NAME}" ]; then
+ echo "$PRGNAM-$VERSION-$ARCH-$BUILD$TAG.$PKGTYPE"
+ exit 0
+fi
+
TMP=${TMP:-/tmp/SBo}
PKG=$TMP/package-$PRGNAM
OUTPUT=${OUTPUT:-/tmp}
@@ -39,4 +49,4 @@ mkdir -p $PKG/install
cat $CWD/slack-desc > $PKG/install/slack-desc
cd $PKG
-/sbin/makepkg -l y -c n $OUTPUT/$PRGNAM-$VERSION-$ARCH-$BUILD$TAG.${PKGTYPE:-tgz}
+/sbin/makepkg -l y -c n $OUTPUT/$PRGNAM-$VERSION-$ARCH-$BUILD$TAG.$PKGTYPE
diff --git a/games/quakeforge/quakeforge.SlackBuild b/games/quakeforge/quakeforge.SlackBuild
index 4f90517099..47792429f4 100644
--- a/games/quakeforge/quakeforge.SlackBuild
+++ b/games/quakeforge/quakeforge.SlackBuild
@@ -1,11 +1,14 @@
-#!/bin/sh
+#!/bin/bash
# Brad Hermanson <apeitheo@gmail.com>
+cd $(dirname $0) ; CWD=$(pwd)
+
PRGNAM=quakeforge
VERSION=${VERSION:-0.7.0}
-BUILD=${BUILD:-2}
+BUILD=${BUILD:-3}
TAG=${TAG:-_SBo}
+PKGTYPE=${PKGTYPE:-tgz}
if [ -z "$ARCH" ]; then
case "$( uname -m )" in
@@ -15,7 +18,14 @@ if [ -z "$ARCH" ]; then
esac
fi
-CWD=$(pwd)
+# If the variable PRINT_PACKAGE_NAME is set, then this script will report what
+# the name of the created package would be, and then exit. This information
+# could be useful to other scripts.
+if [ ! -z "${PRINT_PACKAGE_NAME}" ]; then
+ echo "$PRGNAM-$VERSION-$ARCH-$BUILD$TAG.$PKGTYPE"
+ exit 0
+fi
+
TMP=${TMP:-/tmp/SBo}
PKG=$TMP/package-$PRGNAM
OUTPUT=${OUTPUT:-/tmp}
@@ -88,8 +98,10 @@ cp -a \
$PKG/usr/doc/$PRGNAM-$VERSION
cat $CWD/$PRGNAM.SlackBuild > $PKG/usr/doc/$PRGNAM-$VERSION/$PRGNAM.SlackBuild
+rm -f $PKG/usr/lib*/*.la
+
mkdir -p $PKG/install
cat $CWD/slack-desc > $PKG/install/slack-desc
cd $PKG
-/sbin/makepkg -l y -c n $OUTPUT/$PRGNAM-$VERSION-$ARCH-$BUILD$TAG.${PKGTYPE:-tgz}
+/sbin/makepkg -l y -c n $OUTPUT/$PRGNAM-$VERSION-$ARCH-$BUILD$TAG.$PKGTYPE
diff --git a/games/quakespasm/README b/games/quakespasm/README
new file mode 100644
index 0000000000..0761ca3e56
--- /dev/null
+++ b/games/quakespasm/README
@@ -0,0 +1 @@
+This is an engine for iD software's Quake.
diff --git a/games/quakespasm/doinst.sh b/games/quakespasm/doinst.sh
new file mode 100644
index 0000000000..5fb28930db
--- /dev/null
+++ b/games/quakespasm/doinst.sh
@@ -0,0 +1,3 @@
+if [ -x /usr/bin/update-desktop-database ]; then
+ /usr/bin/update-desktop-database -q usr/share/applications >/dev/null 2>&1
+fi
diff --git a/games/quakespasm/quakespasm.SlackBuild b/games/quakespasm/quakespasm.SlackBuild
new file mode 100644
index 0000000000..8139ffc37a
--- /dev/null
+++ b/games/quakespasm/quakespasm.SlackBuild
@@ -0,0 +1,101 @@
+#!/bin/bash
+
+# Slackware build script for quakespasm
+
+# Copyright 2018-2023 Matteo Bernardini <ponce@slackbuilds.org>, Pisa, Italy
+# All rights reserved.
+#
+# Redistribution and use of this script, with or without modification, is
+# permitted provided that the following conditions are met:
+#
+# 1. Redistributions of this script must retain the above copyright
+# notice, this list of conditions and the following disclaimer.
+#
+# THIS SOFTWARE IS PROVIDED BY THE AUTHOR "AS IS" AND ANY EXPRESS OR IMPLIED
+# WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE IMPLIED WARRANTIES OF
+# MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE ARE DISCLAIMED. IN NO
+# EVENT SHALL THE AUTHOR BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL,
+# SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT LIMITED TO,
+# PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, DATA, OR PROFITS;
+# OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY,
+# WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR
+# OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF THIS SOFTWARE, EVEN IF
+# ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
+
+cd $(dirname $0) ; CWD=$(pwd)
+
+PRGNAM=quakespasm
+VERSION=${VERSION:-0.95.1}
+BUILD=${BUILD:-1}
+TAG=${TAG:-_SBo}
+PKGTYPE=${PKGTYPE:-tgz}
+
+if [ -z "$ARCH" ]; then
+ case "$( uname -m )" in
+ i?86) ARCH=i686 ;;
+ arm*) ARCH=arm ;;
+ *) ARCH=$( uname -m ) ;;
+ esac
+fi
+
+# If the variable PRINT_PACKAGE_NAME is set, then this script will report what
+# the name of the created package would be, and then exit. This information
+# could be useful to other scripts.
+if [ ! -z "${PRINT_PACKAGE_NAME}" ]; then
+ echo "$PRGNAM-$VERSION-$ARCH-$BUILD$TAG.$PKGTYPE"
+ exit 0
+fi
+
+TMP=${TMP:-/tmp/SBo}
+PKG=$TMP/package-$PRGNAM
+OUTPUT=${OUTPUT:-/tmp}
+
+if [ "$ARCH" = "i686" ]; then
+ SLKCFLAGS="-O2 -march=i686 -mtune=i686"
+ LIBDIRSUFFIX=""
+elif [ "$ARCH" = "x86_64" ]; then
+ SLKCFLAGS="-O2 -fPIC"
+ LIBDIRSUFFIX="64"
+else
+ SLKCFLAGS="-O2"
+ LIBDIRSUFFIX=""
+fi
+
+DOCS="LICENSE.txt Quakespasm*"
+
+set -e
+
+rm -rf $PKG
+mkdir -p $TMP $PKG $OUTPUT
+cd $TMP
+rm -rf $PRGNAM-$VERSION
+tar xvf $CWD/$PRGNAM-$VERSION.tar.gz
+cd $PRGNAM-$VERSION
+chown -R root:root .
+find -L . \
+ \( -perm 777 -o -perm 775 -o -perm 750 -o -perm 711 -o -perm 555 \
+ -o -perm 511 \) -exec chmod 755 {} \; -o \
+ \( -perm 666 -o -perm 664 -o -perm 640 -o -perm 600 -o -perm 444 \
+ -o -perm 440 -o -perm 400 \) -exec chmod 644 {} \;
+
+cd Quake
+make DO_USERDIRS=1 USE_SDL2=1
+cd ..
+# manual installation
+install -D -m0755 Quake/$PRGNAM $PKG/usr/games/$PRGNAM
+install -D -m0644 Misc/QuakeSpasm_512.png $PKG/usr/share/pixmaps/$PRGNAM.png
+install -D -m0644 $CWD/$PRGNAM.desktop $PKG/usr/share/applications/$PRGNAM.desktop
+
+find $PKG -print0 | xargs -0 file | grep -e "executable" -e "shared object" | grep ELF \
+ | cut -f 1 -d : | xargs strip --strip-unneeded 2> /dev/null || true
+
+mkdir -p $PKG/usr/doc/$PRGNAM-$VERSION
+cp -a $DOCS $PKG/usr/doc/$PRGNAM-$VERSION
+cat $CWD/$PRGNAM.SlackBuild > $PKG/usr/doc/$PRGNAM-$VERSION/$PRGNAM.SlackBuild
+
+mkdir -p $PKG/install
+cat $CWD/slack-desc > $PKG/install/slack-desc
+cat $CWD/doinst.sh > $PKG/install/doinst.sh
+
+cd $PKG
+/sbin/makepkg -l y -c n $OUTPUT/$PRGNAM-$VERSION-$ARCH-$BUILD$TAG.$PKGTYPE
diff --git a/games/quakespasm/quakespasm.desktop b/games/quakespasm/quakespasm.desktop
new file mode 100644
index 0000000000..b143371c46
--- /dev/null
+++ b/games/quakespasm/quakespasm.desktop
@@ -0,0 +1,9 @@
+[Desktop Entry]
+Name=Quakespasm
+GenericName=Quakespasm port of ID Software's Quake
+Exec=quakespasm
+Terminal=false
+Type=Application
+Categories=Game;
+Icon=quakespasm
+StartupNotify=false
diff --git a/games/quakespasm/quakespasm.info b/games/quakespasm/quakespasm.info
new file mode 100644
index 0000000000..69473df54d
--- /dev/null
+++ b/games/quakespasm/quakespasm.info
@@ -0,0 +1,10 @@
+PRGNAM="quakespasm"
+VERSION="0.95.1"
+HOMEPAGE="https://quakespasm.sourceforge.net"
+DOWNLOAD="https://downloads.sourceforge.net/quakespasm/quakespasm-0.95.1.tar.gz"
+MD5SUM="5445eaab666b1a8c229c4900dc9f8542"
+DOWNLOAD_x86_64=""
+MD5SUM_x86_64=""
+REQUIRES=""
+MAINTAINER="Matteo Bernardini"
+EMAIL="ponce@slackbuilds.org"
diff --git a/games/quakespasm/slack-desc b/games/quakespasm/slack-desc
new file mode 100644
index 0000000000..5b7ef8a8db
--- /dev/null
+++ b/games/quakespasm/slack-desc
@@ -0,0 +1,19 @@
+# HOW TO EDIT THIS FILE:
+# The "handy ruler" below makes it easier to edit a package description.
+# Line up the first '|' above the ':' following the base package name, and
+# the '|' on the right side marks the last column you can put a character in.
+# You must make exactly 11 lines for the formatting to be correct. It's also
+# customary to leave one space after the ':' except on otherwise blank lines.
+
+ |-----handy-ruler------------------------------------------------------|
+quakespasm: quakespasm (quake engine)
+quakespasm:
+quakespasm: This is an engine for iD software's Quake.
+quakespasm:
+quakespasm: homepage: https://quakespasm.sourceforge.net
+quakespasm:
+quakespasm:
+quakespasm:
+quakespasm:
+quakespasm:
+quakespasm:
diff --git a/games/quarry/quarry.SlackBuild b/games/quarry/quarry.SlackBuild
index 484221ba98..9b6db85b12 100644
--- a/games/quarry/quarry.SlackBuild
+++ b/games/quarry/quarry.SlackBuild
@@ -1,4 +1,4 @@
-#!/bin/sh
+#!/bin/bash
# Slackware build script for Quarry.
@@ -22,26 +22,36 @@
# OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF THIS SOFTWARE, EVEN IF
# ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
+cd $(dirname $0) ; CWD=$(pwd)
+
PRGNAM=quarry
VERSION=${VERSION:-0.3.0.1}
BUILD=${BUILD:-1}
TAG=${TAG:-_SBo}
+PKGTYPE=${PKGTYPE:-tgz}
if [ -z "$ARCH" ]; then
case "$( uname -m )" in
- i?86) ARCH=i486 ;;
+ i?86) ARCH=i586 ;;
arm*) ARCH=arm ;;
*) ARCH=$( uname -m ) ;;
esac
fi
-CWD=$(pwd)
+# If the variable PRINT_PACKAGE_NAME is set, then this script will report what
+# the name of the created package would be, and then exit. This information
+# could be useful to other scripts.
+if [ ! -z "${PRINT_PACKAGE_NAME}" ]; then
+ echo "$PRGNAM-$VERSION-$ARCH-$BUILD$TAG.$PKGTYPE"
+ exit 0
+fi
+
TMP=${TMP:-/tmp/SBo}
PKG=$TMP/package-$PRGNAM
OUTPUT=${OUTPUT:-/tmp}
-if [ "$ARCH" = "i486" ]; then
- SLKCFLAGS="-O2 -march=i486 -mtune=i686"
+if [ "$ARCH" = "i586" ]; then
+ SLKCFLAGS="-O2 -march=i586 -mtune=i686"
LIBDIRSUFFIX=""
elif [ "$ARCH" = "i686" ]; then
SLKCFLAGS="-O2 -march=i686 -mtune=i686"
@@ -103,4 +113,4 @@ cat $CWD/slack-desc > $PKG/install/slack-desc
cat $CWD/doinst.sh > $PKG/install/doinst.sh
cd $PKG
-/sbin/makepkg -l y -c n $OUTPUT/$PRGNAM-$VERSION-$ARCH-$BUILD$TAG.${PKGTYPE:-tgz}
+/sbin/makepkg -l y -c n $OUTPUT/$PRGNAM-$VERSION-$ARCH-$BUILD$TAG.$PKGTYPE
diff --git a/games/qxw/README b/games/qxw/README
index 8f8a6c2c6a..8ff3528602 100644
--- a/games/qxw/README
+++ b/games/qxw/README
@@ -12,3 +12,9 @@ file to your Qxw SlackBuild directory (where this file is). It will
automatically be added to the SBo package.
This Slackbuild is suitable for Slackware 14.0 and upwards.
+
+This updated version is a maintenance release.
+
+** Ignore the
+'/bin/sh: dpkg-buildflags: command not found'
+warnings, it will build fine on Slackware**
diff --git a/games/qxw/qxw.SlackBuild b/games/qxw/qxw.SlackBuild
index e0262ac7c3..7b459f5e81 100644
--- a/games/qxw/qxw.SlackBuild
+++ b/games/qxw/qxw.SlackBuild
@@ -1,13 +1,16 @@
-#!/bin/sh
+#!/bin/bash
#
# Slackware build script for <Qxw>
-# Written by Nick Warne <nick@linicks.net>
+# Written by Nick Warne <warne.nick@gmail.com>
# Licensed under the WTFPL <http://sam.zoy.org/wtfpl/COPYING>
+cd $(dirname $0) ; CWD=$(pwd)
+
PRGNAM=qxw
-VERSION=${VERSION:-20190909}
+VERSION=${VERSION:-20200708}
BUILD=${BUILD:-1}
TAG=${TAG:-_SBo}
+PKGTYPE=${PKGTYPE:-tgz}
QXWGUIDE=${QXWGUIDE:-qxw-guide}
if [ -z "$ARCH" ]; then
@@ -19,7 +22,14 @@ if [ -z "$ARCH" ]; then
fi
-CWD=$(pwd)
+# If the variable PRINT_PACKAGE_NAME is set, then this script will report what
+# the name of the created package would be, and then exit. This information
+# could be useful to other scripts.
+if [ ! -z "${PRINT_PACKAGE_NAME}" ]; then
+ echo "$PRGNAM-$VERSION-$ARCH-$BUILD$TAG.$PKGTYPE"
+ exit 0
+fi
+
TMP=${TMP:-/tmp/SBo}
PKG=$TMP/package-$PRGNAM
OUTPUT=${OUTPUT:-/tmp}
@@ -64,4 +74,4 @@ mkdir -p $PKG/install
cat $CWD/slack-desc > $PKG/install/slack-desc
cd $PKG
-/sbin/makepkg -l y -c n $OUTPUT/$PRGNAM-$VERSION-$ARCH-$BUILD$TAG.${PKGTYPE:-tgz}
+/sbin/makepkg -l y -c n $OUTPUT/$PRGNAM-$VERSION-$ARCH-$BUILD$TAG.$PKGTYPE
diff --git a/games/qxw/qxw.info b/games/qxw/qxw.info
index 75f744c2ad..f57469ed27 100644
--- a/games/qxw/qxw.info
+++ b/games/qxw/qxw.info
@@ -1,10 +1,10 @@
PRGNAM="qxw"
-VERSION="20190909"
+VERSION="20200708"
HOMEPAGE="https://www.quinapalus.com/qxw.html"
-DOWNLOAD="https://www.quinapalus.com/qxw-20190909.tar.gz"
-MD5SUM="09f2bdec2b168768d9f7053d1e093ae4"
+DOWNLOAD="https://www.quinapalus.com/qxw-20200708.tar.gz"
+MD5SUM="ea0d24690b78e96d750191be4d1345f1"
DOWNLOAD_x86_64=""
MD5SUM_x86_64=""
REQUIRES=""
MAINTAINER="Nick Warne"
-EMAIL="nick@linicks.net"
+EMAIL="warne.nick@gmail.com"
diff --git a/games/qzdl/README b/games/qzdl/README
index b13f0dbe36..7154fb3cad 100644
--- a/games/qzdl/README
+++ b/games/qzdl/README
@@ -1,2 +1,4 @@
+qzdl (Qt Doom Launcher)
+
A simple Qt launcher for Doom engines. Can be used to play default Doom
WADs or custom ones.
diff --git a/games/qzdl/doinst.sh b/games/qzdl/doinst.sh
new file mode 100644
index 0000000000..3e5691a052
--- /dev/null
+++ b/games/qzdl/doinst.sh
@@ -0,0 +1,9 @@
+if [ -x /usr/bin/update-desktop-database ]; then
+ /usr/bin/update-desktop-database -q usr/share/applications >/dev/null 2>&1
+fi
+
+if [ -e usr/share/icons/hicolor/icon-theme.cache ]; then
+ if [ -x /usr/bin/gtk-update-icon-cache ]; then
+ /usr/bin/gtk-update-icon-cache usr/share/icons/hicolor >/dev/null 2>&1
+ fi
+fi
diff --git a/games/qzdl/git2tarxz.sh b/games/qzdl/git2tarxz.sh
new file mode 100644
index 0000000000..83bc8b62ed
--- /dev/null
+++ b/games/qzdl/git2tarxz.sh
@@ -0,0 +1,84 @@
+#!/bin/sh
+
+# Create source tarball from git repo, with generated version number.
+
+# Special weirdness here, because of upstream's use of cmake's
+# FetchContent. Dunno why they didn't just use a git submodule...
+
+# Takes one optional argument, which is the commit or tag to create a
+# tarball of. With no arg, HEAD is used.
+
+# Version number example: 0.0.1+20200227_ad7ec17
+
+# Notes:
+
+# Do not use this if you're packaging a release.
+
+# This script doesn't need to be run as root. It does need to be able
+# to write to the current directory it's run from.
+
+# Running this script twice for the same commit will NOT give identical
+# tarballs, even if the contents are identical. This is because tar
+# includes the current time in a newly-created tarball (plus there may
+# be other git-related reasons).
+
+# Once you've generated a tarball, you'll still need a place to host it.
+# Ask on the mailing list, if you don't have your own web server to
+# play with.
+
+## Config:
+# Github project and user names:
+PRGNAM=qzdl
+GITUSER=qbasicer
+
+# For github projects, you can use this unmodified:
+CLONE_URL=https://github.com/$GITUSER/$PRGNAM.git
+
+# For non-github projects, you might not need GITUSER, in which case
+# just omit it from the script.
+
+## End of config.
+
+set -e
+
+GITDIR=$( mktemp -dt $PRGNAM.git.XXXXXX )
+rm -rf $GITDIR
+git clone $CLONE_URL $GITDIR
+
+CWD="$( pwd )"
+cd $GITDIR
+
+if [ "$1" != "" ]; then
+ git reset --hard "$1" || exit 1
+fi
+
+GIT_SHA=$( git rev-parse --short HEAD )
+
+DATE=$( git log --date=format:%Y%m%d --format=%cd | head -1 )
+
+VERTAG=$( git tag -l | tail -1 | sed 's,^v,,' )
+
+VERSION=${VERTAG}+${DATE}_${GIT_SHA}
+
+# FetchContent stuff
+mkdir -p build
+cd build
+cmake ..
+cd -
+mv build/_deps .keepme
+rm -rf build
+mkdir -p build
+mv .keepme build/_deps
+
+rm -rf .git
+find . -name .gitignore -print0 | xargs -0 rm -f
+
+cd "$CWD"
+rm -rf $PRGNAM-$VERSION $PRGNAM-$VERSION.tar.xz
+mv $GITDIR $PRGNAM-$VERSION
+tar cvfJ $PRGNAM-$VERSION.tar.xz $PRGNAM-$VERSION
+
+echo
+echo "Created tarball: $PRGNAM-$VERSION.tar.xz"
+echo "VERSION=\"$VERSION\""
+echo "MD5SUM=\"$( md5sum $PRGNAM-$VERSION.tar.xz | cut -d' ' -f1 )\""
diff --git a/games/qzdl/qzdl.SlackBuild b/games/qzdl/qzdl.SlackBuild
index 269e7488fd..2f478bb37b 100644
--- a/games/qzdl/qzdl.SlackBuild
+++ b/games/qzdl/qzdl.SlackBuild
@@ -1,4 +1,4 @@
-#!/bin/sh
+#!/bin/bash
# Slackware build script for qzdl
#
@@ -26,16 +26,26 @@
# OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF THIS SOFTWARE, EVEN IF
# ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
+# 20230107 bkw: BUILD=2, add doinst.sh.
+
+# 20211209 bkw:
+# - update for latest git, 3.2.2.3+20211008_9c76408. needed for building
+# on -current.
+# - new-style icons.
+
# 20200416 bkw:
# - take over maintenance
# - binaries in /usr/games
# - symlink icon to /usr/share/icons
# - various tweaks
+cd $(dirname $0) ; CWD=$(pwd)
+
PRGNAM=qzdl
-VERSION=${VERSION:-3.2.2.3}
+VERSION=${VERSION:-3.2.2.3+20211008_9c76408}
BUILD=${BUILD:-2}
TAG=${TAG:-_SBo}
+PKGTYPE=${PKGTYPE:-tgz}
if [ -z "$ARCH" ]; then
case "$( uname -m )" in
@@ -45,7 +55,11 @@ if [ -z "$ARCH" ]; then
esac
fi
-CWD=$(pwd)
+if [ ! -z "${PRINT_PACKAGE_NAME}" ]; then
+ echo "$PRGNAM-$VERSION-$ARCH-$BUILD$TAG.$PKGTYPE"
+ exit 0
+fi
+
TMP=${TMP:-/tmp/SBo}
PKG=$TMP/package-$PRGNAM
OUTPUT=${OUTPUT:-/tmp}
@@ -70,33 +84,53 @@ rm -rf $PKG
mkdir -p $TMP $PKG $OUTPUT
cd $TMP
rm -rf $PRGNAM-$VERSION
-tar xvf $CWD/$PRGNAM-$VERSION.tar.gz
+tar xvf $CWD/$PRGNAM-$VERSION.tar.xz
cd $PRGNAM-$VERSION
chown -R root:root .
-
-./configure \
- --prefix=/usr \
- --libdir=/usr/lib${LIBDIRSUFFIX} \
- --sysconfdir=/etc \
- --localstatedir=/var \
- --mandir=/usr/man \
- --docdir=/usr/doc/$PRGNAM-$VERSION \
- --build=$ARCH-slackware-linux \
- --disable-updater
-
-make
-
+find -L . -perm /111 -a \! -perm 755 -a -exec chmod 755 {} \+ -o \
+ \! -perm /111 -a \! -perm 644 -a -exec chmod 644 {} \+
+
+# 20211209 bkw: FETCHCONTENT_FULLY_DISCONNECTED stops it trying
+# to do a git clone of its dependency 'inih'. Means we have to
+# already have inih source in our tarball; see git2tarxz.sh.
+mkdir -p build
+cd build
+ cmake \
+ -DFETCHCONTENT_FULLY_DISCONNECTED=ON \
+ -DCMAKE_C_FLAGS:STRING="$SLKCFLAGS" \
+ -DCMAKE_CXX_FLAGS:STRING="$SLKCFLAGS" \
+ -DCMAKE_INSTALL_PREFIX=/usr \
+ -DCMAKE_BUILD_TYPE=Release ..
+ make
+cd ..
+
+# no install or install/strip targets.
mkdir -p $PKG/usr/games
-install -s -m0755 zdl $PKG/usr/games
+install -s -m0755 build/zdl $PKG/usr/games
ln -s zdl $PKG/usr/games/$PRGNAM
-mkdir -p $PKG/usr/share/applications \
- $PKG/usr/share/pixmaps \
- $PKG/usr/share/icons/hicolor/scalable/apps
-
-cp $CWD/qzdl.desktop $PKG/usr/share/applications
-cp -a res/zdl3.svg $PKG/usr/share/pixmaps
-ln -s ../../../../pixmaps/zdl3.svg $PKG/usr/share/icons/hicolor/scalable/apps
+HICOLOR=$PKG/usr/share/icons/hicolor
+PIXMAPS=$PKG/usr/share/pixmaps
+APPS=$PKG/usr/share/applications
+
+mkdir -p $APPS $PIXMAPS $HICOLOR/{48x48,scalable}/apps
+
+cp $CWD/qzdl.desktop $APPS
+cp -a res/zdl3.svg $HICOLOR/scalable/apps
+for px in 16 32 48 64 128; do
+ size=${px}x${px}
+ dir=$PKG/usr/share/icons/hicolor/$size/apps
+ mkdir -p $dir
+ if [ -e res/zdl3-$size.png ]; then
+ echo "=== copy $size"
+ cp -a res/zdl3-$size.png $dir/$PRGNAM.png
+ else
+ echo "=== convert $size"
+ convert -resize $size res/zdl3-1024x1024.png $dir/$PRGNAM.png
+ fi
+done
+
+ln -s ../icons/hicolor/48x48/apps/$PRGNAM.png $PIXMAPS/$PRGNAM.png
mkdir -p $PKG/usr/doc/$PRGNAM-$VERSION
cp -a AUTHORS CHANGELOG LICENSE README $PKG/usr/doc/$PRGNAM-$VERSION
@@ -104,6 +138,7 @@ cat $CWD/$PRGNAM.SlackBuild > $PKG/usr/doc/$PRGNAM-$VERSION/$PRGNAM.SlackBuild
mkdir -p $PKG/install
cat $CWD/slack-desc > $PKG/install/slack-desc
+cat $CWD/doinst.sh > $PKG/install/doinst.sh
cd $PKG
-/sbin/makepkg -l y -c n $OUTPUT/$PRGNAM-$VERSION-$ARCH-$BUILD$TAG.${PKGTYPE:-tgz}
+/sbin/makepkg -l y -c n $OUTPUT/$PRGNAM-$VERSION-$ARCH-$BUILD$TAG.$PKGTYPE
diff --git a/games/qzdl/qzdl.info b/games/qzdl/qzdl.info
index 640628cd7a..1a21585e76 100644
--- a/games/qzdl/qzdl.info
+++ b/games/qzdl/qzdl.info
@@ -1,10 +1,10 @@
PRGNAM="qzdl"
-VERSION="3.2.2.3"
+VERSION="3.2.2.3+20211008_9c76408"
HOMEPAGE="https://github.com/qbasicer/qzdl"
-DOWNLOAD="https://github.com/qbasicer/qzdl/archive/v3.2.2.3/qzdl-3.2.2.3.tar.gz"
-MD5SUM="50e61034d288d57ab3aecbd03dcf946a"
+DOWNLOAD="https://slackware.uk/~urchlay/src/qzdl-3.2.2.3+20211008_9c76408.tar.xz"
+MD5SUM="381555391ca3cf9bff39442f78a3c9c3"
DOWNLOAD_x86_64=""
MD5SUM_x86_64=""
REQUIRES=""
MAINTAINER="B. Watson"
-EMAIL="yalhcru@gmail.com"
+EMAIL="urchlay@slackware.uk"
diff --git a/games/qzdoom/README_SBo.txt b/games/qzdoom/README_SBo.txt
index ea3125ad01..f9ecf0ec63 100644
--- a/games/qzdoom/README_SBo.txt
+++ b/games/qzdoom/README_SBo.txt
@@ -20,17 +20,17 @@ To hear the in-game music, there are several options. In the game menu,
select "Options | Sound Options" and set "MIDI Device" to one of the
below:
-1. FluidSynth - Install fluidsynth and fluid-soundfont. These are runtime
-dependencies (no need to rebuild qzdoom).
+1. FluidSynth - Install fluid-soundfont. This is a runtime dependency
+ (no need to rebuild qzdoom).
2. Timidity - Install TiMidity++ and either eawpats or freepats (all
-runtime dependencies), and set up /etc/timidity/timidity.cfg to use
-it. This uses more CPU than FluidSynth, and may make the framerate
-stutter and jerk even on high-end systems.
+ runtime dependencies), and set up /etc/timidity/timidity.cfg to use
+ it. This uses more CPU than FluidSynth, and may make the framerate
+ stutter and jerk even on high-end systems.
3. GUS or OPL - Nothing extra required; these are software emulations
-of classic soundcards from the early 1990s. They may sound "clunky" to
-modern ears, but they may also bring back fond memories for long-time
-Doom players.
+ of classic soundcards from the early 1990s. They may sound "clunky" to
+ modern ears, but they may also bring back fond memories for long-time
+ Doom players.
qzdoom also supports WildMIDI, but this is currently not available on SBo.
diff --git a/games/qzdoom/compilefix.diff b/games/qzdoom/compilefix.diff
new file mode 100644
index 0000000000..b156e873d3
--- /dev/null
+++ b/games/qzdoom/compilefix.diff
@@ -0,0 +1,34 @@
+diff -Naur qzdoom-q2.1.0/game-music-emu/CMakeLists.txt qzdoom-q2.1.0.patched/game-music-emu/CMakeLists.txt
+--- qzdoom-q2.1.0/game-music-emu/CMakeLists.txt 2018-06-07 07:27:25.000000000 -0400
++++ qzdoom-q2.1.0.patched/game-music-emu/CMakeLists.txt 2021-11-09 13:58:55.345649214 -0500
+@@ -89,7 +89,7 @@
+ if (__LIBGME_TEST_VISIBILITY)
+ # get the gcc version
+ exec_program(${CMAKE_CXX_COMPILER} ARGS --version OUTPUT_VARIABLE _gcc_version_info)
+- string (REGEX MATCH "[3-9]\\.[0-9]\\.[0-9]" _gcc_version "${_gcc_version_info}")
++ string (REGEX MATCH "[1-9][0-9]*\\.[0-9]\\.[0-9]" _gcc_version "${_gcc_version_info}")
+
+ # gcc <4.1 had poor support for symbol visibility
+ if ((${_gcc_version} VERSION_GREATER "4.1") OR (${_gcc_version} VERSION_EQUAL "4.1"))
+diff -Naur qzdoom-q2.1.0/src/scripting/types.cpp qzdoom-q2.1.0.patched/src/scripting/types.cpp
+--- qzdoom-q2.1.0/src/scripting/types.cpp 2018-06-07 07:27:25.000000000 -0400
++++ qzdoom-q2.1.0.patched/src/scripting/types.cpp 2021-11-09 14:13:57.493590140 -0500
+@@ -33,6 +33,7 @@
+ **
+ */
+
++#include <limits>
+ #include "vmintern.h"
+ #include "s_sound.h"
+ #include "dthinker.h"
+diff -Naur qzdoom-q2.1.0/src/sound/oplsynth/OPL3.cpp qzdoom-q2.1.0.patched/src/sound/oplsynth/OPL3.cpp
+--- qzdoom-q2.1.0/src/sound/oplsynth/OPL3.cpp 2018-06-07 07:27:25.000000000 -0400
++++ qzdoom-q2.1.0.patched/src/sound/oplsynth/OPL3.cpp 2021-11-09 14:15:14.021585129 -0500
+@@ -43,6 +43,7 @@
+ *
+ */
+
++#include <limits>
+ #include <math.h>
+
+ #include "doomtype.h"
diff --git a/games/qzdoom/qzdoom.SlackBuild b/games/qzdoom/qzdoom.SlackBuild
index d33020ff03..bcebcba2aa 100644
--- a/games/qzdoom/qzdoom.SlackBuild
+++ b/games/qzdoom/qzdoom.SlackBuild
@@ -1,14 +1,18 @@
-#!/bin/sh
+#!/bin/bash
# Slackware build script for qzdoom
-# Written by B. Watson (yalhcru@gmail.com)
+# Written by B. Watson (urchlay@slackware.uk)
# Licensed under the WTFPL. See http://www.wtfpl.net/txt/copying/ for details.
# Heavily based on gzdoom.SlackBuild, since gzdoom and qzdoom are synced
# up regularly.
+# 20211109 bkw: BUILD=3
+# - fix compile for -current.
+# - fix fluidsynth hack for -current.
+
# 20201027 bkw: BUILD=2
# - Updated download URL.
# - Install .pk3 files somewhere else, so they don't conflict with gzdoom.
@@ -30,10 +34,13 @@
# TL;DR: Please don't email me saying there's a new release unless the
# version number starts with "q".
+cd $(dirname $0) ; CWD=$(pwd)
+
PRGNAM=qzdoom
VERSION=${VERSION:-2.1.0}
-BUILD=${BUILD:-2}
+BUILD=${BUILD:-3}
TAG=${TAG:-_SBo}
+PKGTYPE=${PKGTYPE:-tgz}
if [ -z "$ARCH" ]; then
case "$( uname -m )" in
@@ -43,7 +50,11 @@ if [ -z "$ARCH" ]; then
esac
fi
-CWD=$(pwd)
+if [ ! -z "${PRINT_PACKAGE_NAME}" ]; then
+ echo "$PRGNAM-$VERSION-$ARCH-$BUILD$TAG.$PKGTYPE"
+ exit 0
+fi
+
TMP=${TMP:-/tmp/SBo}
PKG=$TMP/package-$PRGNAM
OUTPUT=${OUTPUT:-/tmp}
@@ -76,10 +87,17 @@ chown -R root:root .
find -L . -perm /111 -a \! -perm 755 -a -exec chmod 755 {} \+ -o \
\! -perm /111 -a \! -perm 644 -a -exec chmod 644 {} \+
+# patch fixes 2 things:
+# - stoopid gcc version detection can't cope with 2-digit numbers.
+# - take better aim at the moving target that is the C++ standard.
+# specifically a couple of files need '#include <limits>'.
+patch -p1 < $CWD/compilefix.diff
+
# 20201027 bkw: dirty hack to get fluidsynth 2.x to work. qzdoom's
# fluidsynth support stopped working when fluidsynth got updated
# to 2.x.
-sed -i '/libfluidsynth\.so/s,\.1,.2,' \
+# 20211109 bkw: -current now has an even newer fluidsynth (so.3).
+sed -i '/libfluidsynth\.so/s,\.1,.3,' \
src/sound/mididevices/music_fluidsynth_mididevice.cpp
# 20201027 bkw: fix the '<unknown version>' in the window title.
@@ -133,4 +151,4 @@ cat $CWD/slack-desc > $PKG/install/slack-desc
cat $CWD/doinst.sh > $PKG/install/doinst.sh
cd $PKG
-/sbin/makepkg -l y -c n $OUTPUT/$PRGNAM-$VERSION-$ARCH-$BUILD$TAG.${PKGTYPE:-tgz}
+/sbin/makepkg -l y -c n $OUTPUT/$PRGNAM-$VERSION-$ARCH-$BUILD$TAG.$PKGTYPE
diff --git a/games/qzdoom/qzdoom.info b/games/qzdoom/qzdoom.info
index 312b3b00c8..3a9fc199b4 100644
--- a/games/qzdoom/qzdoom.info
+++ b/games/qzdoom/qzdoom.info
@@ -5,6 +5,6 @@ DOWNLOAD="https://github.com/madame-rachelle/qzdoom/archive/q2.1.0/qzdoom-q2.1.0
MD5SUM="170bb4b75d6b00030224bf250074c659"
DOWNLOAD_x86_64=""
MD5SUM_x86_64=""
-REQUIRES="SDL2 OpenAL"
+REQUIRES=""
MAINTAINER="B. Watson"
-EMAIL="yalhcru@gmail.com"
+EMAIL="urchlay@slackware.uk"
diff --git a/games/redeclipse/redeclipse.SlackBuild b/games/redeclipse/redeclipse.SlackBuild
index 9e079e8177..c4f99a397e 100644
--- a/games/redeclipse/redeclipse.SlackBuild
+++ b/games/redeclipse/redeclipse.SlackBuild
@@ -1,4 +1,4 @@
-#!/bin/sh
+#!/bin/bash
# Slackware build script for Red Eclipse
@@ -23,11 +23,17 @@
# OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF THIS SOFTWARE, EVEN IF
# ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
+# 20220505 bkw: Modified by SlackBuilds.org, BUILD=2:
+# - move example server config to Slackware doc dir, remove /usr/share/doc.
+
+cd $(dirname $0) ; CWD=$(pwd)
+
PRGNAM=redeclipse
VERSION=${VERSION:-2.0.0}
SRCNAM=base
-BUILD=${BUILD:-1}
+BUILD=${BUILD:-2}
TAG=${TAG:-_SBo}
+PKGTYPE=${PKGTYPE:-tgz}
if [ -z "$ARCH" ]; then
case "$( uname -m )" in
@@ -37,7 +43,11 @@ if [ -z "$ARCH" ]; then
esac
fi
-CWD=$(pwd)
+if [ ! -z "${PRINT_PACKAGE_NAME}" ]; then
+ echo "$PRGNAM-$VERSION-$ARCH-$BUILD$TAG.$PKGTYPE"
+ exit 0
+fi
+
TMP=${TMP:-/tmp/SBo}
PKG=$TMP/package-$PRGNAM
OUTPUT=${OUTPUT:-/tmp}
@@ -80,9 +90,9 @@ done
chown -R root:root .
find -L . \
\( -perm 777 -o -perm 775 -o -perm 750 -o -perm 711 -o -perm 555 \
- -o -perm 511 \) -exec chmod 755 {} \; -o \
+ -o -perm 511 \) -exec chmod 755 {} \+ -o \
\( -perm 666 -o -perm 664 -o -perm 640 -o -perm 600 -o -perm 444 \
- -o -perm 440 -o -perm 400 \) -exec chmod 644 {} \;
+ -o -perm 440 -o -perm 400 \) -exec chmod 644 {} \+
# Try and fix issue with cube2font not installing properly
# https://github.com/redeclipse/base/issues/988
@@ -105,6 +115,8 @@ for i in $( find $PKG/usr/man -type l ) ; do ln -s $( readlink $i ).gz $i.gz ; r
mkdir -p $PKG/usr/doc/$PRGNAM-$VERSION
cp doc/*.txt $PKG/usr/doc/$PRGNAM-$VERSION
+mv $PKG/usr/share/doc/$PRGNAM/examples $PKG/usr/doc/$PRGNAM-$VERSION
+rm -rf $PKG/usr/share/doc
cat $CWD/$PRGNAM.SlackBuild > $PKG/usr/doc/$PRGNAM-$VERSION/$PRGNAM.SlackBuild
# Copy slack-desc and doinst.sh into ./install
@@ -113,4 +125,4 @@ cat $CWD/slack-desc > $PKG/install/slack-desc
cat $CWD/doinst.sh > $PKG/install/doinst.sh
cd $PKG
-/sbin/makepkg -l y -c n $OUTPUT/$PRGNAM-$VERSION-$ARCH-$BUILD$TAG.${PKGTYPE:-tgz}
+/sbin/makepkg -l y -c n $OUTPUT/$PRGNAM-$VERSION-$ARCH-$BUILD$TAG.$PKGTYPE
diff --git a/games/redeclipse/redeclipse.info b/games/redeclipse/redeclipse.info
index bfc3b64fc1..52da9afe77 100644
--- a/games/redeclipse/redeclipse.info
+++ b/games/redeclipse/redeclipse.info
@@ -81,6 +81,6 @@ ddc56c737f146c4ce224ca61161a3ff2 \
72b4213903f04961dfb8f2121edd016c"
DOWNLOAD_x86_64=""
MD5SUM_x86_64=""
-REQUIRES="SDL2 SDL2_image SDL2_mixer"
+REQUIRES=""
MAINTAINER="Jeremy Hansen"
EMAIL="jebrhansen+SBo@gmail.com"
diff --git a/games/rejoystick/README b/games/rejoystick/README
index 1a58bee65a..2bcc722787 100644
--- a/games/rejoystick/README
+++ b/games/rejoystick/README
@@ -1,5 +1,12 @@
-Rejoystick is a program that maps keypresses on your
-gamepad/joypad/joystick to keypresses on a keyboard when you
+rejoystick (translates joystick movement/buttons to keystrokes)
+
+Rejoystick is a program that maps movement and button presses on
+your gamepad/joypad/joystick to keypresses on a keyboard when you
are running X. Since it uses SDL to communicate with the gamepad
-device, it can work on every platform that provides SDL and an
-X environment. (Though it is yet to be tested on Cygwin e.g.)
+device, it can work on every platform that provides SDL and an X
+environment. (Though it is yet to be tested on Cygwin e.g.)
+
+Quickstart: run "rejoystick" with no arguments. Use the GUI to set up
+button and axis key mappings. Click OK to exit. Run "rejoystick -d",
+which runs in the background; moving the joystick should send the
+keystrokes you configured. To exit, "killall -9 rejoystick".
diff --git a/games/rejoystick/rejoystick.1 b/games/rejoystick/rejoystick.1
new file mode 100644
index 0000000000..2a2a79bf38
--- /dev/null
+++ b/games/rejoystick/rejoystick.1
@@ -0,0 +1,84 @@
+.\" Man page generated from reStructuredText.
+.
+.
+.nr rst2man-indent-level 0
+.
+.de1 rstReportMargin
+\\$1 \\n[an-margin]
+level \\n[rst2man-indent-level]
+level margin: \\n[rst2man-indent\\n[rst2man-indent-level]]
+-
+\\n[rst2man-indent0]
+\\n[rst2man-indent1]
+\\n[rst2man-indent2]
+..
+.de1 INDENT
+.\" .rstReportMargin pre:
+. RS \\$1
+. nr rst2man-indent\\n[rst2man-indent-level] \\n[an-margin]
+. nr rst2man-indent-level +1
+.\" .rstReportMargin post:
+..
+.de UNINDENT
+. RE
+.\" indent \\n[an-margin]
+.\" old: \\n[rst2man-indent\\n[rst2man-indent-level]]
+.nr rst2man-indent-level -1
+.\" new: \\n[rst2man-indent\\n[rst2man-indent-level]]
+.in \\n[rst2man-indent\\n[rst2man-indent-level]]u
+..
+.TH "REJOYSTICK" 1 "2022-03-26" "0.8.1" "SlackBuilds.org"
+.SH NAME
+rejoystick \- translates joystick movement/buttons to keystrokes
+.\" RST source for rejoystick(1) man page. Convert with:
+.
+.\" rst2man.py rejoystick.rst > rejoystick.1
+.
+.\" rst2man.py comes from the SBo development/docutils package.
+.
+.SH SYNOPSIS
+.sp
+rejoystick [\fI\-d\fP]
+.SH DESCRIPTION
+.sp
+\fBrejoystick\fP is a daemon that converts joystick movement and/or
+button presses to X keystroke events. This allows the user to use the
+joystick with games that don\(aqt have joystick support.
+.sp
+There are two modes of operation for \fBrejoystick\fP: the GUI configuration
+mode, and daemon mode.
+.sp
+To configure the axes/buttons \fBrejoystick\fP will map to keystrokes,
+run \fBrejoystick\fP with no arguments. This will display a GUI which
+you can use to set the mappings. When you\(aqre done, exit the program
+(close its window). The mappings will be written to \fI~/.rejoystickrc\fP\&.
+Although the configuration is graphical, it\(aqs recommended to run it
+from a terminal (not a desktop launcher), so you can see its output.
+.sp
+To run \fBrejoystick\fP as a daemon, run it with the \fB\-d\fP option. It
+will fork to the background, monitor the joystick, and generate
+keystroke events according to the configuration in \fI~/.rejoystickrc\fP\&.
+.sp
+To exit \fBrejoystick\fP, use "\fBkillall \-9 rejoystick\fP". If you want to
+change the mappings, you\(aqll have to kill the daemon and restart it,
+since it won\(aqt re\-read its config file.
+.SH OPTIONS
+.INDENT 0.0
+.TP
+.B \-d
+Run as a daemon. Default is to show the config GUI.
+.UNINDENT
+.SH COPYRIGHT
+.sp
+See the file /usr/doc/rejoystick\-0.8.1/COPYING for license information.
+.SH AUTHORS
+.sp
+rejoystick was written by Samuel <\fI\%samel_tvom@yahoo.se\fP>.
+.sp
+This man page written for the SlackBuilds.org project
+by B. Watson, and is licensed under the WTFPL.
+.SH SEE ALSO
+.sp
+The rejoystick homepage: \fI\%http://rejoystick.sourceforge.net/\fP
+.\" Generated by docutils manpage writer.
+.
diff --git a/games/rejoystick/rejoystick.SlackBuild b/games/rejoystick/rejoystick.SlackBuild
index 18f9a8d8ba..08c3ee8515 100644
--- a/games/rejoystick/rejoystick.SlackBuild
+++ b/games/rejoystick/rejoystick.SlackBuild
@@ -1,29 +1,48 @@
-#!/bin/sh
+#!/bin/bash
# Slackware build script for rejoystick
-# Written by Steven Pledger <linux.propane@yahoo.com>
+# Written by Steven Pledger <email removed>
+# Updated and now maintained by B. Watson <urchlay@slackware.uk>
+
+# Licensed under the WTFPL. See http://www.wtfpl.net/txt/copying/ for details.
+
+# 20220315 bkw: BUILD=4
+# - new maintainer.
+# - resurrected. all it needed was LIBS="-lX11" to fix compilation.
+# - removed useless INSTALL from doc dir.
+# - add quick start guide to our README.
+# - add a bit of error checking to rejoystick.patch (so it
+# won't segfault if HOME isn't set in the environment).
+# - i486 => i586.
+
+cd $(dirname $0) ; CWD=$(pwd)
PRGNAM=rejoystick
VERSION=${VERSION:-0.8.1}
-BUILD=${BUILD:-3}
+BUILD=${BUILD:-4}
TAG=${TAG:-_SBo}
+PKGTYPE=${PKGTYPE:-tgz}
if [ -z "$ARCH" ]; then
case "$( uname -m )" in
- i?86) ARCH=i486 ;;
+ i?86) ARCH=i586 ;;
arm*) ARCH=arm ;;
*) ARCH=$( uname -m ) ;;
esac
fi
-CWD=$(pwd)
+if [ ! -z "${PRINT_PACKAGE_NAME}" ]; then
+ echo "$PRGNAM-$VERSION-$ARCH-$BUILD$TAG.$PKGTYPE"
+ exit 0
+fi
+
TMP=${TMP:-/tmp/SBo}
PKG=$TMP/package-$PRGNAM
OUTPUT=${OUTPUT:-/tmp}
-if [ "$ARCH" = "i486" ]; then
- SLKCFLAGS="-O2 -march=i486 -mtune=i686"
+if [ "$ARCH" = "i586" ]; then
+ SLKCFLAGS="-O2 -march=i586 -mtune=i686"
LIBDIRSUFFIX=""
elif [ "$ARCH" = "i686" ]; then
SLKCFLAGS="-O2 -march=i686 -mtune=i686"
@@ -45,17 +64,15 @@ rm -rf $PRGNAM-$VERSION
tar xvf $CWD/$PRGNAM-$VERSION.tar.gz
cd $PRGNAM-$VERSION
chown -R root:root .
-find -L . \
- \( -perm 777 -o -perm 775 -o -perm 750 -o -perm 711 -o -perm 555 \
- -o -perm 511 \) -exec chmod 755 {} \; -o \
- \( -perm 666 -o -perm 664 -o -perm 640 -o -perm 600 -o -perm 444 \
- -o -perm 440 -o -perm 400 \) -exec chmod 644 {} \;
+find -L . -perm /111 -a \! -perm 755 -a -exec chmod 755 {} \+ -o \
+ \! -perm /111 -a \! -perm 644 -a -exec chmod 644 {} \+
# Specify the path to the version.mk file inside of the configure script
sed -i "s|^\.\ version\.mk|. ./version.mk|" configure
patch -p1 < $CWD/rejoystick.patch
+LIBS="-lX11" \
CFLAGS="$SLKCFLAGS" \
CXXFLAGS="$SLKCFLAGS" \
./configure \
@@ -67,18 +84,20 @@ CXXFLAGS="$SLKCFLAGS" \
--build=$ARCH-slackware-linux
make
-make install DESTDIR=$PKG
+make install-strip DESTDIR=$PKG
-find $PKG -print0 | xargs -0 file | grep -e "executable" -e "shared object" | grep ELF \
- | cut -f 1 -d : | xargs strip --strip-unneeded 2> /dev/null || true
+# man page written for this SlackBuild. since this isn't really a game
+# (more of a game-related utility), it's not a section 6 page.
+mkdir -p $PKG/usr/man/man1
+gzip -9c < $CWD/$PRGNAM.1 > $PKG/usr/man/man1/$PRGNAM.1.gz
# AUTHORS, ChangeLog, and NEWS are empty files
mkdir -p $PKG/usr/doc/$PRGNAM-$VERSION
-cp -a COPYING INSTALL README $PKG/usr/doc/$PRGNAM-$VERSION
+cp -a COPYING README $PKG/usr/doc/$PRGNAM-$VERSION
cat $CWD/$PRGNAM.SlackBuild > $PKG/usr/doc/$PRGNAM-$VERSION/$PRGNAM.SlackBuild
mkdir -p $PKG/install
cat $CWD/slack-desc > $PKG/install/slack-desc
cd $PKG
-/sbin/makepkg -l y -c n $OUTPUT/$PRGNAM-$VERSION-$ARCH-$BUILD$TAG.${PKGTYPE:-tgz}
+/sbin/makepkg -l y -c n $OUTPUT/$PRGNAM-$VERSION-$ARCH-$BUILD$TAG.$PKGTYPE
diff --git a/games/rejoystick/rejoystick.info b/games/rejoystick/rejoystick.info
index 7fbe5951a4..b5f3e30fcf 100644
--- a/games/rejoystick/rejoystick.info
+++ b/games/rejoystick/rejoystick.info
@@ -1,10 +1,10 @@
PRGNAM="rejoystick"
VERSION="0.8.1"
-HOMEPAGE="http://rejoystick.sourceforge.net/"
-DOWNLOAD="http://sourceforge.net/projects/rejoystick/files/rejoystick/rejoystick-0.8.1/rejoystick-0.8.1.tar.gz"
+HOMEPAGE="https://rejoystick.sourceforge.net/"
+DOWNLOAD="https://sourceforge.net/projects/rejoystick/files/rejoystick/rejoystick-0.8.1/rejoystick-0.8.1.tar.gz"
MD5SUM="43208b766a131e2725bfd72caf60a41d"
DOWNLOAD_x86_64=""
MD5SUM_x86_64=""
REQUIRES=""
-MAINTAINER="Steven Pledger"
-EMAIL="linux.propane@yahoo.com"
+MAINTAINER="B. Watson"
+EMAIL="urchlay@slackware.uk"
diff --git a/games/rejoystick/rejoystick.patch b/games/rejoystick/rejoystick.patch
index a163936aeb..f4e955c767 100644
--- a/games/rejoystick/rejoystick.patch
+++ b/games/rejoystick/rejoystick.patch
@@ -1,6 +1,7 @@
---- rejoystick-0.8.1/src/main.c.orig 2014-12-20 06:55:37.951753670 +0700
-+++ rejoystick-0.8.1/src/main.c 2014-12-20 06:56:23.666092712 +0700
-@@ -137,13 +137,9 @@
+diff -Naur rejoystick-0.8.1/src/main.c rejoystick-0.8.1.patched/src/main.c
+--- rejoystick-0.8.1/src/main.c 2008-03-23 10:38:22.000000000 -0400
++++ rejoystick-0.8.1.patched/src/main.c 2022-03-15 21:28:38.753577677 -0400
+@@ -137,12 +137,11 @@
pthread_t sdl_thread;
@@ -10,10 +11,11 @@
- home = (char*)getenv("HOME");
- keyfile = KEYFILE;
- filename = strcat(home, keyfile);
--
-+ const char * home = getenv("HOME");
-+ filename = malloc(strlen(home) + strlen(KEYFILE) + 1);
-+ sprintf(filename, "%s%s", home, KEYFILE);
- global_argv = argv;
++ const char * home = getenv("HOME");
++ if(!home) error("HOME not set in environment");
++ filename = malloc(strlen(home) + strlen(KEYFILE) + 1);
++ if(!filename) error("Out of memory");
++ sprintf(filename, "%s%s", home, KEYFILE);
+ global_argv = argv;
diff --git a/games/rejoystick/rejoystick.rst b/games/rejoystick/rejoystick.rst
new file mode 100644
index 0000000000..54f50df69d
--- /dev/null
+++ b/games/rejoystick/rejoystick.rst
@@ -0,0 +1,73 @@
+.. RST source for rejoystick(1) man page. Convert with:
+.. rst2man.py rejoystick.rst > rejoystick.1
+.. rst2man.py comes from the SBo development/docutils package.
+
+.. |version| replace:: 0.8.1
+.. |date| date::
+
+==========
+rejoystick
+==========
+
+--------------------------------------------------
+translates joystick movement/buttons to keystrokes
+--------------------------------------------------
+
+:Manual section: 1
+:Manual group: SlackBuilds.org
+:Date: |date|
+:Version: |version|
+
+SYNOPSIS
+========
+
+rejoystick [*-d*]
+
+DESCRIPTION
+===========
+
+**rejoystick** is a daemon that converts joystick movement and/or
+button presses to X keystroke events. This allows the user to use the
+joystick with games that don't have joystick support.
+
+There are two modes of operation for **rejoystick**: the GUI configuration
+mode, and daemon mode.
+
+To configure the axes/buttons **rejoystick** will map to keystrokes,
+run **rejoystick** with no arguments. This will display a GUI which
+you can use to set the mappings. When you're done, exit the program
+(close its window). The mappings will be written to *~/.rejoystickrc*.
+Although the configuration is graphical, it's recommended to run it
+from a terminal (not a desktop launcher), so you can see its output.
+
+To run **rejoystick** as a daemon, run it with the **-d** option. It
+will fork to the background, monitor the joystick, and generate
+keystroke events according to the configuration in *~/.rejoystickrc*.
+
+To exit **rejoystick**, use "**killall -9 rejoystick**". If you want to
+change the mappings, you'll have to kill the daemon and restart it,
+since it won't re-read its config file.
+
+OPTIONS
+=======
+
+-d
+ Run as a daemon. Default is to show the config GUI.
+
+COPYRIGHT
+=========
+
+See the file /usr/doc/rejoystick-|version|/COPYING for license information.
+
+AUTHORS
+=======
+
+rejoystick was written by Samuel <samel_tvom@yahoo.se>.
+
+This man page written for the SlackBuilds.org project
+by B. Watson, and is licensed under the WTFPL.
+
+SEE ALSO
+========
+
+The rejoystick homepage: http://rejoystick.sourceforge.net/
diff --git a/games/rejoystick/slack-desc b/games/rejoystick/slack-desc
index 674fdf7e11..e97628180e 100644
--- a/games/rejoystick/slack-desc
+++ b/games/rejoystick/slack-desc
@@ -6,14 +6,14 @@
# customary to leave one space after the ':' except on otherwise blank lines.
|-----handy-ruler------------------------------------------------------|
-rejoystick: rejoystick (translates joystick keypresses to keyboard)
+rejoystick: rejoystick (translates joystick movement/buttons to keystrokes)
rejoystick:
-rejoystick: Rejoystick is a program that maps keypresses on your
-rejoystick: gamepad/joypad/joystick to keypresses on a keyboard when you
+rejoystick: Rejoystick is a program that maps movement and button presses on
+rejoystick: your gamepad/joypad/joystick to keypresses on a keyboard when you
rejoystick: are running X. Since it uses SDL to communicate with the gamepad
-rejoystick: device, it can work on every platform that provides SDL and an
-rejoystick: X environment. (Though it is yet to be tested on Cygwin e.g.)
+rejoystick: device, it can work on every platform that provides SDL and an X
+rejoystick: environment. (Though it is yet to be tested on Cygwin e.g.)
+rejoystick:
rejoystick:
-rejoystick: Homepage: http://rejoystick.sourceforge.net/
rejoystick:
rejoystick:
diff --git a/games/residualvm/README b/games/residualvm/README
index 0641250b07..b392291cb0 100644
--- a/games/residualvm/README
+++ b/games/residualvm/README
@@ -1,7 +1,11 @@
-ResidualVM is a cross-platform 3D game interpreter which allows you to
-play LucasArts' Lua-based 3D adventures: Grim Fandango and Escape from
-Monkey Island, provided you already have their data files. ResidualVM
-just replaces the executables shipped with the games, allowing you to
-play them on systems for which they were never designed!
+residualvm (LucasArts 3D game engine interpreter)
-At this point, only support for Grim Fandango is available.
+ResidualVM is a cross-platform 3D game interpreter which allows you
+to play LucasArts' Lua-based 3D adventures: Grim Fandango, Myst III:
+Exile, and Escape from Monkey Island, provided you already have their
+data files. ResidualVM just replaces the executables shipped with the
+games, allowing you to play them on systems for which they were never
+designed!
+
+At this point, full support for Grim Fandango is available, and Myst
+III: Exile is partially supported.
diff --git a/games/residualvm/doinst.sh b/games/residualvm/doinst.sh
new file mode 100644
index 0000000000..3e5691a052
--- /dev/null
+++ b/games/residualvm/doinst.sh
@@ -0,0 +1,9 @@
+if [ -x /usr/bin/update-desktop-database ]; then
+ /usr/bin/update-desktop-database -q usr/share/applications >/dev/null 2>&1
+fi
+
+if [ -e usr/share/icons/hicolor/icon-theme.cache ]; then
+ if [ -x /usr/bin/gtk-update-icon-cache ]; then
+ /usr/bin/gtk-update-icon-cache usr/share/icons/hicolor >/dev/null 2>&1
+ fi
+fi
diff --git a/games/residualvm/residualvm.SlackBuild b/games/residualvm/residualvm.SlackBuild
index e2a2f8861e..c4497e69ca 100644
--- a/games/residualvm/residualvm.SlackBuild
+++ b/games/residualvm/residualvm.SlackBuild
@@ -1,4 +1,4 @@
-#!/bin/sh
+#!/bin/bash
# Slackware build script for ResidualVM
@@ -22,10 +22,16 @@
# OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF THIS SOFTWARE, EVEN IF
# ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
+# 20220222 bkw: Modified by SlackBuilds.org: fix build on 15.0,
+# by updating for v0.3.1.
+
+cd $(dirname $0) ; CWD=$(pwd)
+
PRGNAM=residualvm
-VERSION=${VERSION:-0.3.0}
+VERSION=${VERSION:-0.3.1}
BUILD=${BUILD:-1}
TAG=${TAG:-_SBo}
+PKGTYPE=${PKGTYPE:-tgz}
if [ -z "$ARCH" ]; then
case "$( uname -m )" in
@@ -35,7 +41,11 @@ if [ -z "$ARCH" ]; then
esac
fi
-CWD=$(pwd)
+if [ ! -z "${PRINT_PACKAGE_NAME}" ]; then
+ echo "$PRGNAM-$VERSION-$ARCH-$BUILD$TAG.$PKGTYPE"
+ exit 0
+fi
+
TMP=${TMP:-/tmp/SBo}
PKG=$TMP/package-$PRGNAM
OUTPUT=${OUTPUT:-/tmp}
@@ -60,14 +70,17 @@ rm -rf $PKG
mkdir -p $TMP $PKG $OUTPUT
cd $TMP
rm -rf $PRGNAM-$VERSION
-tar xvf $CWD/$PRGNAM-$VERSION-sources.tar.bz2
+tar xvf $CWD/${PRGNAM}_$VERSION+dfsg.orig.tar.xz
cd $PRGNAM-$VERSION
chown -R root:root .
find -L . \
\( -perm 777 -o -perm 775 -o -perm 750 -o -perm 711 -o -perm 555 \
- -o -perm 511 \) -exec chmod 755 {} \; -o \
+ -o -perm 511 \) -exec chmod 755 {} \+ -o \
\( -perm 666 -o -perm 664 -o -perm 640 -o -perm 600 -o -perm 444 \
- -o -perm 440 -o -perm 400 \) -exec chmod 644 {} \;
+ -o -perm 440 -o -perm 400 \) -exec chmod 644 {} \+
+
+# 20220224 bkw: full path to executable.
+sed -i '/Exec=/s,=,=/usr/games/,' dists/$PRGNAM.desktop
CFLAGS="$SLKCFLAGS" \
CXXFLAGS="$SLKCFLAGS" \
@@ -81,21 +94,19 @@ CXXFLAGS="$SLKCFLAGS" \
--enable-release
make
-make install DESTDIR=$PKG
-
-# The .desktop file for the menu is not being installed
-install -D -m 0644 dists/residualvm.desktop \
- $PKG/usr/share/applications/residualvm.desktop
-
-# Hardcode the location for the .desktop icon
-sed -i s%Icon=%Icon=/usr/share/pixmaps/% \
- $PKG/usr/share/applications/residualvm.desktop
+make install-strip DESTDIR=$PKG
-find $PKG -print0 | xargs -0 file | grep -e "executable" -e "shared object" | grep ELF \
- | cut -f 1 -d : | xargs strip --strip-unneeded 2> /dev/null || true
+gzip -9 $PKG/usr/man/man*/*
-find $PKG/usr/man -type f -exec gzip -9 {} \;
-for i in $( find $PKG/usr/man -type l ) ; do ln -s $( readlink $i ).gz $i.gz ; rm $i ; done
+# 20220224 bkw: only an .svg icon gets installed, create a few png ones
+# to speed things up for desktops.
+srcicon=$PKG/usr/share/icons/hicolor/scalable/apps/$PRGNAM.svg
+for px in 16 32 48 64 128; do
+ size=${px}x${px}
+ dir=$PKG/usr/share/icons/hicolor/$size/apps
+ mkdir -p $dir
+ convert -background none -resize $size $srcicon $dir/$PRGNAM.png
+done
mkdir -p $PKG/usr/doc/$PRGNAM-$VERSION
cp -a \
@@ -105,6 +116,7 @@ cat $CWD/$PRGNAM.SlackBuild > $PKG/usr/doc/$PRGNAM-$VERSION/$PRGNAM.SlackBuild
mkdir -p $PKG/install
cat $CWD/slack-desc > $PKG/install/slack-desc
+cat $CWD/doinst.sh > $PKG/install/doinst.sh
cd $PKG
-/sbin/makepkg -l y -c n $OUTPUT/$PRGNAM-$VERSION-$ARCH-$BUILD$TAG.${PKGTYPE:-tgz}
+/sbin/makepkg -l y -c n $OUTPUT/$PRGNAM-$VERSION-$ARCH-$BUILD$TAG.$PKGTYPE
diff --git a/games/residualvm/residualvm.info b/games/residualvm/residualvm.info
index 139dc27015..26a8d9c7ac 100644
--- a/games/residualvm/residualvm.info
+++ b/games/residualvm/residualvm.info
@@ -1,8 +1,8 @@
PRGNAM="residualvm"
-VERSION="0.3.0"
+VERSION="0.3.1"
HOMEPAGE="http://residualvm.org"
-DOWNLOAD="http://www.residualvm.org/downloads/release/0.3.0/residualvm-0.3.0-sources.tar.bz2"
-MD5SUM="24cb0c51faf7b01447ff0ff76b3344f1"
+DOWNLOAD="https://deb.debian.org/debian/pool/contrib/r/residualvm/residualvm_0.3.1+dfsg.orig.tar.xz"
+MD5SUM="315950f844df70dca8e8525f27573b5d"
DOWNLOAD_x86_64=""
MD5SUM_x86_64=""
REQUIRES=""
diff --git a/games/residualvm/slack-desc b/games/residualvm/slack-desc
index 5c793d718b..d80b044205 100644
--- a/games/residualvm/slack-desc
+++ b/games/residualvm/slack-desc
@@ -6,13 +6,13 @@
# customary to leave one space after the ':' except on otherwise blank lines.
|-----handy-ruler------------------------------------------------------|
-residualvm: residualvm (LucasArts' 3D game engine interpreter)
+residualvm: residualvm (LucasArts 3D game engine interpreter)
residualvm:
residualvm: ResidualVM is a cross-platform 3D game interpreter which allows you
-residualvm: to play LucasArts' Lua-based 3D adventures: Grim Fandango and Escape
-residualvm: from Monkey Island, provided you already have their data files.
-residualvm: ResidualVM just replaces the executables shipped with the games,
-residualvm: allowing you to play them on systems for which they were never
+residualvm: to play LucasArts' Lua-based 3D adventures: Grim Fandango, Myst III:
+residualvm: Exile, and Escape from Monkey Island, provided you already have their
+residualvm: data files. ResidualVM just replaces the executables shipped with the
+residualvm: games, allowing you to play them on systems for which they were never
residualvm: designed!
residualvm:
residualvm:
diff --git a/games/retux/doinst.sh b/games/retux/doinst.sh
index 5fb28930db..3e5691a052 100644
--- a/games/retux/doinst.sh
+++ b/games/retux/doinst.sh
@@ -1,3 +1,9 @@
if [ -x /usr/bin/update-desktop-database ]; then
/usr/bin/update-desktop-database -q usr/share/applications >/dev/null 2>&1
fi
+
+if [ -e usr/share/icons/hicolor/icon-theme.cache ]; then
+ if [ -x /usr/bin/gtk-update-icon-cache ]; then
+ /usr/bin/gtk-update-icon-cache usr/share/icons/hicolor >/dev/null 2>&1
+ fi
+fi
diff --git a/games/retux/retux.SlackBuild b/games/retux/retux.SlackBuild
index 17897e2092..f6da7d4892 100644
--- a/games/retux/retux.SlackBuild
+++ b/games/retux/retux.SlackBuild
@@ -1,29 +1,40 @@
-#!/bin/sh
+#!/bin/bash
# Slackware build script for retux
-# Written by B. Watson (yalhcru@gmail.com)
+# Written by B. Watson (urchlay@slackware.uk)
# Licensed under the WTFPL. See http://www.wtfpl.net/txt/copying/ for details.
-# Note: This would depend on six and sge-pygame, except upstream kindly
-# shipped his own bundled copies. The game looks for modules in its own
-# directory first, so any system-wide installs of six and sge-pygame
-# won't cause problems.
+# 20230713 bkw: update for v1.6.2.
+
+# 20211229 bkw:
+# - updated for v1.6.1.
+# - s/python/python3/.
+# - new-style icons.
+# - pathlib doesn't seem to be required any longer.
+# - new dep: python3-sge.
# 20200206 bkw: add missing pygame dep to REQUIRES.
# 20180217 bkw:
# Updated for v1.3.5. Added new (undocumented!) pathlib dependency.
+cd $(dirname $0) ; CWD=$(pwd)
+
PRGNAM=retux
-VERSION=${VERSION:-1.3.5}
+VERSION=${VERSION:-1.6.2}
BUILD=${BUILD:-1}
TAG=${TAG:-_SBo}
+PKGTYPE=${PKGTYPE:-tgz}
ARCH=noarch
-CWD=$(pwd)
+if [ ! -z "${PRINT_PACKAGE_NAME}" ]; then
+ echo "$PRGNAM-$VERSION-$ARCH-$BUILD$TAG.$PKGTYPE"
+ exit 0
+fi
+
TMP=${TMP:-/tmp/SBo}
PKG=$TMP/package-$PRGNAM
OUTPUT=${OUTPUT:-/tmp}
@@ -36,7 +47,7 @@ rm -rf $PKG
mkdir -p $TMP $PKG $OUTPUT
cd $TMP
rm -rf $DIRNAME
-tar xvf $CWD/$DIRNAME.tar.gz
+unzip $CWD/$DIRNAME.zip
cd $DIRNAME
# upstream perms a bit wonky, force them:
@@ -48,12 +59,18 @@ chmod 755 *.py
# we don't need these, they take up 12MB in the package and are never used.
find . -name sources -print0 | xargs -0 rm -rf
+# don't use setup.py, it's for building a 'frozen' executable.
+# in fact we don't need any .py file other than retux.py.
+mv $PRGNAM.py $PRGNAM.py.keep
+rm -f *.py requirements.txt
+mv $PRGNAM.py.keep $PRGNAM.py
+
# allow launching via symlink. without this, it can't find its data files.
sed -i '/^DATA/i__file__ = os.path.realpath(__file__)' $PRGNAM.py
-# there's no setup.py to do this for us. it's not 100% necessary but does
+# setup.py doesn't do this for us. it's not 100% necessary but does
# speed things up ever so slightly at runtime:
-python -m compileall .
+python3 -m compileall .
mkdir -p \
$PKG/usr/share/games/$PRGNAM \
@@ -66,9 +83,17 @@ sed -i 's,\r,,' $PKG/usr/doc/$PRGNAM-$VERSION/*
mv * $PKG/usr/share/games/$PRGNAM
ln -s ../share/games/$PRGNAM/$PRGNAM.py $PKG/usr/games/$PRGNAM
+for px in 16 32 48 64 128; do
+ size=${px}x${px}
+ dir=$PKG/usr/share/icons/hicolor/$size/apps
+ mkdir -p $dir
+ convert -background none -resize $size \
+ $PKG/usr/share/games/$PRGNAM/data/images/misc/icon.svg \
+ $dir/$PRGNAM.png
+done
+
mkdir -p $PKG/usr/share/pixmaps
-ln -s ../games/$PRGNAM/data/images/misc/icon.png \
- $PKG/usr/share/pixmaps/$PRGNAM.png
+ln -s ../icons/hicolor/48x48/apps/$PRGNAM.png $PKG/usr/share/pixmaps/$PRGNAM.png
# .desktop file written for this SlackBuild
mkdir -p $PKG/usr/share/applications
@@ -81,4 +106,4 @@ cat $CWD/slack-desc > $PKG/install/slack-desc
cat $CWD/doinst.sh > $PKG/install/doinst.sh
cd $PKG
-/sbin/makepkg -l y -c n $OUTPUT/$PRGNAM-$VERSION-$ARCH-$BUILD$TAG.${PKGTYPE:-tgz}
+/sbin/makepkg -l y -c n $OUTPUT/$PRGNAM-$VERSION-$ARCH-$BUILD$TAG.$PKGTYPE
diff --git a/games/retux/retux.info b/games/retux/retux.info
index 96d081c31b..11cc0acca5 100644
--- a/games/retux/retux.info
+++ b/games/retux/retux.info
@@ -1,10 +1,10 @@
PRGNAM="retux"
-VERSION="1.3.5"
-HOMEPAGE="http://retux.nongnu.org/"
-DOWNLOAD="http://download.savannah.gnu.org/releases/retux/1.3/retux-1.3.5-src.tar.gz"
-MD5SUM="ec4793f81816c28806fbd818c99cf2e3"
+VERSION="1.6.2"
+HOMEPAGE="https://retux-game.github.io/"
+DOWNLOAD="https://github.com/retux-game/retux/releases/download/v1.6.2/retux-1.6.2-src.zip"
+MD5SUM="6211a051709a3adcdb1e004ca68db3ac"
DOWNLOAD_x86_64=""
MD5SUM_x86_64=""
-REQUIRES="pygame pathlib"
+REQUIRES="python3-sge"
MAINTAINER="B. Watson"
-EMAIL="yalhcru@gmail.com"
+EMAIL="urchlay@slackware.uk"
diff --git a/games/rezerwar/rezerwar.SlackBuild b/games/rezerwar/rezerwar.SlackBuild
index 4c23ab122b..83217500ae 100644
--- a/games/rezerwar/rezerwar.SlackBuild
+++ b/games/rezerwar/rezerwar.SlackBuild
@@ -1,15 +1,19 @@
-#!/bin/sh
+#!/bin/bash
# Slackware build script for rezerwar
# Written by Larry Hajali <larryhaja[at]gmail[dot]com>
+# 20220221 bkw: Modified by SlackBuilds.org: fix build on 15.0.
+
+cd $(dirname $0) ; CWD=$(pwd)
+
PRGNAM=rezerwar
VERSION=${VERSION:-0.4.2}
BUILD=${BUILD:-1}
TAG=${TAG:-_SBo}
+PKGTYPE=${PKGTYPE:-tgz}
-CWD=$(pwd)
TMP=${TMP:-/tmp/SBo}
PKG=$TMP/package-$PRGNAM
OUTPUT=${OUTPUT:-/tmp}
@@ -22,6 +26,11 @@ if [ -z "$ARCH" ]; then
esac
fi
+if [ ! -z "${PRINT_PACKAGE_NAME}" ]; then
+ echo "$PRGNAM-$VERSION-$ARCH-$BUILD$TAG.$PKGTYPE"
+ exit 0
+fi
+
if [ "$ARCH" = "i586" ]; then
SLKCFLAGS="-O2 -march=i586 -mtune=i686"
elif [ "$ARCH" = "i686" ]; then
@@ -41,15 +50,15 @@ cd $PRGNAM-$VERSION
chown -R root:root .
find -L . \
\( -perm 777 -o -perm 775 -o -perm 750 -o -perm 711 -o -perm 555 -o -perm 511 \) \
- -exec chmod 755 {} \; -o \
+ -exec chmod 755 {} \+ -o \
\( -perm 666 -o -perm 664 -o -perm 600 -o -perm 444 -o -perm 440 -o -perm 400 \) \
- -exec chmod 644 {} \;
+ -exec chmod 644 {} \+
SDLCONFIG="sdl-config" \
TARGET_BIN="/usr/games" \
TARGET_DOC="/usr/doc/$PRGNAM-$VERSION" \
TARGET_DATA="/usr/share/$PRGNAM" \
-MK_EXTRACFLAGS="$SLKCFLAGS" \
+MK_EXTRACFLAGS="$SLKCFLAGS -fcommon" \
OS="Linux" ./configure
make
@@ -69,4 +78,4 @@ cat $CWD/slack-desc > $PKG/install/slack-desc
cat $CWD/doinst.sh > $PKG/install/doinst.sh
cd $PKG
-/sbin/makepkg -l y -c n $OUTPUT/$PRGNAM-$VERSION-$ARCH-$BUILD$TAG.${PKGTYPE:-tgz}
+/sbin/makepkg -l y -c n $OUTPUT/$PRGNAM-$VERSION-$ARCH-$BUILD$TAG.$PKGTYPE
diff --git a/games/rigel-engine/README b/games/rigel-engine/README
new file mode 100644
index 0000000000..a2dda6d1fb
--- /dev/null
+++ b/games/rigel-engine/README
@@ -0,0 +1,16 @@
+rigel-engine (Duke Nukem II reimplementation)
+
+RigelEngine is a reimplementation of the game Duke Nukem II,
+originally released by Apogee Software in 1993 for MS-DOS. RigelEngine
+works as a drop-in replacement for the original executable: It reads
+the game's data files and plays just like the original, but runs
+natively on modern operating systems and is written in modern C++
+code.
+
+If you're looking for the shareware data files, they're available here:
+https://archive.org/download/msdos_DUKE2_shareware/DUKE2.zip
+
+Compared to running the original in an emulator, RigelEngine offers
+many modern enhancements and usability improvements.
+
+The executable and man page are called "RigelEngine".
diff --git a/games/rigel-engine/RigelEngine.6 b/games/rigel-engine/RigelEngine.6
new file mode 100644
index 0000000000..69aa805c1c
--- /dev/null
+++ b/games/rigel-engine/RigelEngine.6
@@ -0,0 +1,117 @@
+.\" Man page generated from reStructuredText.
+.
+.
+.nr rst2man-indent-level 0
+.
+.de1 rstReportMargin
+\\$1 \\n[an-margin]
+level \\n[rst2man-indent-level]
+level margin: \\n[rst2man-indent\\n[rst2man-indent-level]]
+-
+\\n[rst2man-indent0]
+\\n[rst2man-indent1]
+\\n[rst2man-indent2]
+..
+.de1 INDENT
+.\" .rstReportMargin pre:
+. RS \\$1
+. nr rst2man-indent\\n[rst2man-indent-level] \\n[an-margin]
+. nr rst2man-indent-level +1
+.\" .rstReportMargin post:
+..
+.de UNINDENT
+. RE
+.\" indent \\n[an-margin]
+.\" old: \\n[rst2man-indent\\n[rst2man-indent-level]]
+.nr rst2man-indent-level -1
+.\" new: \\n[rst2man-indent\\n[rst2man-indent-level]]
+.in \\n[rst2man-indent\\n[rst2man-indent-level]]u
+..
+.TH "RIGELENGINE" 6 "2023-01-23" "0.9.1" "SlackBuilds.org"
+.SH NAME
+RigelEngine \- reimplementation of Duke Nukem II
+.\" RST source for RigelEngine(1) man page. Convert with:
+.
+.\" rst2man.py RigelEngine.rst > RigelEngine.6
+.
+.SH SYNOPSIS
+.sp
+RigelEngine [\fB\-s\fP | \fB\-\-skip\-intro\fP] [\fB\-d\fP | \fB\-\-debug\-mode\fP] [\fB\-\-no\-audio\fP] [\fB\-\-play\-demo\fP] [\fB\-l\fP | \fB\-\-play\-level\fP \fIlevel\-name\fP] [\fB\-\-difficulty\fP \fIeasy|medium|hard\fP] [\fB\-\-player\-pos\fP \fIx,y\fP] [\fIgame\-path\fP]
+.SH DESCRIPTION
+.sp
+\fBRigelEngine\fP is a modern reimplementation of the game Duke Nukem II,
+originally released in 1993 for MS\-DOS by Apogee Software.
+.sp
+In order to run RigelEngine, the game data from the original game is
+required. Both the shareware version and the registered version work.
+When launching RigelEngine for the first time, it will show a file
+browser UI and ask you to select the location of your Duke Nukem
+II installation. The chosen path will be stored in the game\(aqs user
+profile, so that you don\(aqt have to select it again next time.
+.sp
+It\(aqs also possible to pass the path to the game files as argument on
+the command line.
+.sp
+The only files actually used by RigelEngine are \fBNUKEM2.CMP\fP (the main
+data tile; required) and \fBNUKEM2.F1\fP through \fBNUKEM2.F5\fP (intro movie
+files; actually optional).
+.SH OPTIONS
+.INDENT 0.0
+.TP
+.B \-?, \-h, \-\-help
+Show built\-in help and exit.
+.UNINDENT
+.INDENT 0.0
+.TP
+.B \-s\fP,\fB \-\-skip\-intro
+Skip intro movies/Apogee logo, go straight to main menu.
+.TP
+.B \-d\fP,\fB \-\-debug\-mode
+Enable debugging features.
+.TP
+.B \-\-no\-audio
+Disable all audio output.
+.TP
+.B \-\-play\-demo
+Play pre\-recorded demo.
+.UNINDENT
+.INDENT 0.0
+.TP
+.B \fB\-l\fP, \fB\-\-play\-level\fP \fIlevel\-name\fP
+Directly jump to given map, skipping intro/menu etc.
+.TP
+.B \fB\-\-difficulty\fP \fIeasy|medium|hard\fP
+Difficulty to use when jumping to a level.
+.TP
+.B \fB\-\-player\-pos\fP \fIx,y\fP
+Position to place the player at when jumping to a level.
+.TP
+.B \fIgame\-path\fP
+Path to original game\(aqs installation. If not provided here, the game will show a folder browser UI.
+.UNINDENT
+.SH FILES
+.sp
+\fB$XDG_DATA_HOME/lethal\-guitar/Rigel Engine/\fP
+.INDENT 0.0
+.INDENT 3.5
+Per\-user configuration, savegames, and log file are stored here.
+.UNINDENT
+.UNINDENT
+.sp
+The default value of \fB$XDG_DATA_HOME\fP is the same as \fB$HOME\fP\&.
+.SH COPYRIGHT
+.sp
+See the file /usr/doc/rigel\-engine\-0.9.1/LICENSE.md for license information.
+.SH AUTHORS
+.sp
+RigelEngine was written by lethal\-guitar.
+.sp
+This man page written for the SlackBuilds.org project
+by B. Watson, and is licensed under the WTFPL.
+.SH SEE ALSO
+.sp
+/usr/doc/rigel\-engine\-0.9.1/README.md
+.sp
+\fI\%https://github.com/lethal\-guitar/RigelEngine/wiki\fP
+.\" Generated by docutils manpage writer.
+.
diff --git a/games/rigel-engine/RigelEngine.rst b/games/rigel-engine/RigelEngine.rst
new file mode 100644
index 0000000000..3b6f2c48b4
--- /dev/null
+++ b/games/rigel-engine/RigelEngine.rst
@@ -0,0 +1,102 @@
+.. RST source for RigelEngine(1) man page. Convert with:
+.. rst2man.py RigelEngine.rst > RigelEngine.6
+
+.. |version| replace:: 0.9.1
+.. |date| date::
+
+===========
+RigelEngine
+===========
+
+---------------------------------
+reimplementation of Duke Nukem II
+---------------------------------
+
+:Manual section: 6
+:Manual group: SlackBuilds.org
+:Date: |date|
+:Version: |version|
+
+SYNOPSIS
+========
+
+RigelEngine [**-s** | **--skip-intro**] [**-d** | **--debug-mode**] [**--no-audio**] [**--play-demo**] [**-l** | **--play-level** *level-name*] [**--difficulty** *easy|medium|hard*] [**--player-pos** *x,y*] [*game-path*]
+
+DESCRIPTION
+===========
+
+**RigelEngine** is a modern reimplementation of the game Duke Nukem II,
+originally released in 1993 for MS-DOS by Apogee Software.
+
+In order to run RigelEngine, the game data from the original game is
+required. Both the shareware version and the registered version work.
+When launching RigelEngine for the first time, it will show a file
+browser UI and ask you to select the location of your Duke Nukem
+II installation. The chosen path will be stored in the game's user
+profile, so that you don't have to select it again next time.
+
+It's also possible to pass the path to the game files as argument on
+the command line.
+
+The only files actually used by RigelEngine are **NUKEM2.CMP** (the main
+data tile; required) and **NUKEM2.F1** through **NUKEM2.F5** (intro movie
+files; actually optional).
+
+OPTIONS
+=======
+
+-?, -h, --help
+ Show built-in help and exit.
+
+-s, --skip-intro
+ Skip intro movies/Apogee logo, go straight to main menu.
+
+-d, --debug-mode
+ Enable debugging features.
+
+--no-audio
+ Disable all audio output.
+
+--play-demo
+ Play pre-recorded demo.
+
+**-l**, **--play-level** *level-name*
+ Directly jump to given map, skipping intro/menu etc.
+
+**--difficulty** *easy|medium|hard*
+ Difficulty to use when jumping to a level.
+
+**--player-pos** *x,y*
+ Position to place the player at when jumping to a level.
+
+*game-path*
+ Path to original game's installation. If not provided here, the game will show a folder browser UI.
+
+FILES
+=====
+
+**$XDG_DATA_HOME/lethal-guitar/Rigel Engine/**
+
+ Per-user configuration, savegames, and log file are stored here.
+
+The default value of **$XDG_DATA_HOME** is the same as **$HOME**.
+
+COPYRIGHT
+=========
+
+See the file /usr/doc/rigel-engine-|version|/LICENSE.md for license information.
+
+AUTHORS
+=======
+
+RigelEngine was written by lethal-guitar.
+
+This man page written for the SlackBuilds.org project
+by B. Watson, and is licensed under the WTFPL.
+
+SEE ALSO
+========
+
+/usr/doc/rigel-engine-|version|/README.md
+
+https://github.com/lethal-guitar/RigelEngine/wiki
diff --git a/games/rigel-engine/doinst.sh b/games/rigel-engine/doinst.sh
new file mode 100644
index 0000000000..65c7e2eeb9
--- /dev/null
+++ b/games/rigel-engine/doinst.sh
@@ -0,0 +1,9 @@
+if [ -x /usr/bin/update-desktop-database ]; then
+ /usr/bin/update-desktop-database -q usr/share/applications >/dev/null 2>&1
+fi
+
+if [ -e usr/share/icons/hicolor/icon-theme.cache ]; then
+ if [ -x /usr/bin/gtk-update-icon-cache ]; then
+ /usr/bin/gtk-update-icon-cache -f usr/share/icons/hicolor >/dev/null 2>&1
+ fi
+fi
diff --git a/games/rigel-engine/git2tarxz.sh b/games/rigel-engine/git2tarxz.sh
new file mode 100644
index 0000000000..439f4cd50a
--- /dev/null
+++ b/games/rigel-engine/git2tarxz.sh
@@ -0,0 +1,48 @@
+#!/bin/sh
+
+# Create source tarball from rigel-engine git repo, including
+# submodules. The auto-generated source tarballs from github don't
+# have the submodules, which is the only reason this exists...
+
+# Note that this script doesn't need to be run as root. It does need to
+# be able to write to the current directory it's run from.
+
+# Takes one optional argument, which is the commit or tag to create a
+# tarball of. With no arg, HEAD is used.
+
+PRGNAM=rigel-engine
+CLONE_URL=https://github.com/lethal-guitar/RigelEngine/
+
+set -e
+
+GITDIR=$( mktemp -dt $PRGNAM.git.XXXXXX )
+rm -rf $GITDIR
+git clone $CLONE_URL $GITDIR
+
+CWD="$( pwd )"
+cd $GITDIR
+
+if [ "$1" != "" ]; then
+ git reset --hard "$1" || exit 1
+fi
+
+git submodule update --init --recursive
+
+GIT_SHA=$( git rev-parse --short HEAD )
+
+DATE=$( git log --date=format:%Y%m%d --format=%cd | head -1 )
+
+VERTAG=$( git tag -l | tail -1 )
+
+VERSION=${VERTAG}+${DATE}_${GIT_SHA}
+
+find . -name .git\* -print0 | xargs -0 rm -rf
+
+cd "$CWD"
+rm -rf $PRGNAM-$VERSION $PRGNAM-$VERSION.tar.xz
+mv $GITDIR $PRGNAM-$VERSION
+tar cvfJ $PRGNAM-$VERSION.tar.xz $PRGNAM-$VERSION
+
+echo
+echo "Created tarball: $PRGNAM-$VERSION.tar.xz"
+echo "VERSION=$VERSION"
diff --git a/games/rigel-engine/rigel-engine.SlackBuild b/games/rigel-engine/rigel-engine.SlackBuild
new file mode 100644
index 0000000000..2acdcb2e09
--- /dev/null
+++ b/games/rigel-engine/rigel-engine.SlackBuild
@@ -0,0 +1,110 @@
+#!/bin/bash
+
+# Slackware build script for rigel-engine
+
+# Written by B. Watson (urchlay@slackware.uk)
+
+# Licensed under the WTFPL. See http://www.wtfpl.net/txt/copying/ for details.
+
+# If you're wondering why I host my own source tarball instead of
+# using the github one, it's because the github tarball is missing the
+# submodules.
+
+# If you're wondering why the package is called rigel-engine and not
+# RigelEngine, it's because I dislike MixedCase package names. Not
+# going to change it.
+
+cd $(dirname $0) ; CWD=$(pwd)
+
+PRGNAM=rigel-engine
+SRCNAM=RigelEngine
+VERSION=${VERSION:-0.9.1}
+GITVER="v0.9.1+20221210_84ae53f0" # result of "sh git2tarxz.sh v0.9.1"
+BUILD=${BUILD:-1}
+TAG=${TAG:-_SBo}
+PKGTYPE=${PKGTYPE:-tgz}
+
+if [ -z "$ARCH" ]; then
+ case "$( uname -m )" in
+ i?86) ARCH=i586 ;;
+ arm*) ARCH=arm ;;
+ *) ARCH=$( uname -m ) ;;
+ esac
+fi
+
+if [ ! -z "${PRINT_PACKAGE_NAME}" ]; then
+ echo "$PRGNAM-$VERSION-$ARCH-$BUILD$TAG.$PKGTYPE"
+ exit 0
+fi
+
+TMP=${TMP:-/tmp/SBo}
+PKG=$TMP/package-$PRGNAM
+OUTPUT=${OUTPUT:-/tmp}
+
+if [ "$ARCH" = "i586" ]; then
+ SLKCFLAGS="-O2 -march=i586 -mtune=i686"
+ LIBDIRSUFFIX=""
+elif [ "$ARCH" = "i686" ]; then
+ SLKCFLAGS="-O2 -march=i686 -mtune=i686"
+ LIBDIRSUFFIX=""
+elif [ "$ARCH" = "x86_64" ]; then
+ SLKCFLAGS="-O2 -fPIC"
+ LIBDIRSUFFIX="64"
+else
+ SLKCFLAGS="-O2"
+ LIBDIRSUFFIX=""
+fi
+
+set -e
+
+rm -rf $PKG
+mkdir -p $TMP $PKG $OUTPUT
+cd $TMP
+rm -rf $PRGNAM-$GITVER
+tar xvf $CWD/$PRGNAM-$GITVER.tar.xz
+cd $PRGNAM-$GITVER
+chown -R root:root .
+find -L . -perm /111 -a \! -perm 755 -a -exec chmod 755 {} \+ -o \
+ \! -perm /111 -a \! -perm 644 -a -exec chmod 644 {} \+
+
+# Use full path in .desktop file.
+sed -i '/^Exec=/s,=,=/usr/games/,' dist/linux/*.desktop
+
+mkdir -p build
+cd build
+ cmake \
+ -DCMAKE_C_FLAGS:STRING="$SLKCFLAGS" \
+ -DCMAKE_CXX_FLAGS:STRING="$SLKCFLAGS" \
+ -DCMAKE_INSTALL_PREFIX=/usr \
+ -DCMAKE_INSTALL_BINDIR=/usr/games \
+ -DCMAKE_BUILD_TYPE=Release ..
+ make
+ make install/strip DESTDIR=$PKG
+cd ..
+
+# A couple of extra icon sizes exist, include them.
+for px in 16 32; do
+ size=${px}x${px}
+ dir=$PKG/usr/share/icons/hicolor/$size/apps
+ mkdir -p $dir
+ install -m0644 dist/icon_original/$px.png $dir
+done
+
+# man page written for this SlackBuild, made from README.md and --help.
+PKGMAN6=$PKG/usr/man/man6
+mkdir -p $PKGMAN6
+gzip -9c < $CWD/$SRCNAM.6 > $PKGMAN6/$SRCNAM.6.gz
+# symlink to the package name, too:
+ln -s $SRCNAM.6.gz $PKGMAN6/$PRGNAM.6.gz
+
+PKGDOC=$PKG/usr/doc/$PRGNAM-$VERSION
+mkdir -p $PKGDOC
+cp -a AUTHORS* CONTRIB* LICENSE* README* $PKGDOC
+cat $CWD/$PRGNAM.SlackBuild > $PKGDOC/$PRGNAM.SlackBuild
+
+mkdir -p $PKG/install
+cat $CWD/slack-desc > $PKG/install/slack-desc
+cat $CWD/doinst.sh > $PKG/install/doinst.sh
+
+cd $PKG
+/sbin/makepkg -l y -c n $OUTPUT/$PRGNAM-$VERSION-$ARCH-$BUILD$TAG.$PKGTYPE
diff --git a/games/rigel-engine/rigel-engine.info b/games/rigel-engine/rigel-engine.info
new file mode 100644
index 0000000000..feafdbbe7e
--- /dev/null
+++ b/games/rigel-engine/rigel-engine.info
@@ -0,0 +1,10 @@
+PRGNAM="rigel-engine"
+VERSION="0.9.1"
+HOMEPAGE="https://github.com/lethal-guitar/RigelEngine/"
+DOWNLOAD="https://slackware.uk/~urchlay/src/rigel-engine-v0.9.1+20221210_84ae53f0.tar.xz"
+MD5SUM="e76c8abe342f59300e54a88c8788ea05"
+DOWNLOAD_x86_64=""
+MD5SUM_x86_64=""
+REQUIRES=""
+MAINTAINER="B. Watson"
+EMAIL="urchlay@slackware.uk"
diff --git a/games/rigel-engine/slack-desc b/games/rigel-engine/slack-desc
new file mode 100644
index 0000000000..2952d0b1c0
--- /dev/null
+++ b/games/rigel-engine/slack-desc
@@ -0,0 +1,19 @@
+# HOW TO EDIT THIS FILE:
+# The "handy ruler" below makes it easier to edit a package description.
+# Line up the first '|' above the ':' following the base package name, and
+# the '|' on the right side marks the last column you can put a character in.
+# You must make exactly 11 lines for the formatting to be correct. It's also
+# customary to leave one space after the ':' except on otherwise blank lines.
+
+ |-----handy-ruler------------------------------------------------------|
+rigel-engine: rigel-engine (Duke Nukem II reimplementation)
+rigel-engine:
+rigel-engine: RigelEngine is a reimplementation of the game Duke Nukem II,
+rigel-engine: originally released by Apogee Software in 1993 for MS-DOS. RigelEngine
+rigel-engine: works as a drop-in replacement for the original executable: It reads
+rigel-engine: the game's data files and plays just like the original, but runs
+rigel-engine: natively on modern operating systems and is written in modern C++
+rigel-engine: code.
+rigel-engine:
+rigel-engine:
+rigel-engine:
diff --git a/games/rlvm/README b/games/rlvm/README
index a946c3d0bc..7f101d0039 100644
--- a/games/rlvm/README
+++ b/games/rlvm/README
@@ -2,5 +2,6 @@ rlvm is an open source implementation of the RealLive scripting
engine for Linux and OSX. RealLive is a game engine used in Japan
to write visual novels.
-please make sure you have msgothic.ttc in your homedrive or in the
-game folder. Otherwise the game won't start
+Please make sure you have msgothic.ttc in your home directory or in
+the game folder, otherwise the game won't start. This font is not
+freely downloadable; it ships with Windows and with Steam Proton.
diff --git a/games/rlvm/doinst.sh b/games/rlvm/doinst.sh
new file mode 100644
index 0000000000..3e5691a052
--- /dev/null
+++ b/games/rlvm/doinst.sh
@@ -0,0 +1,9 @@
+if [ -x /usr/bin/update-desktop-database ]; then
+ /usr/bin/update-desktop-database -q usr/share/applications >/dev/null 2>&1
+fi
+
+if [ -e usr/share/icons/hicolor/icon-theme.cache ]; then
+ if [ -x /usr/bin/gtk-update-icon-cache ]; then
+ /usr/bin/gtk-update-icon-cache usr/share/icons/hicolor >/dev/null 2>&1
+ fi
+fi
diff --git a/games/rlvm/rlvm.SlackBuild b/games/rlvm/rlvm.SlackBuild
index cce10004ed..b369a6d296 100644
--- a/games/rlvm/rlvm.SlackBuild
+++ b/games/rlvm/rlvm.SlackBuild
@@ -1,4 +1,4 @@
-#!/bin/sh
+#!/bin/bash
# Slackware build script for rlvm
@@ -23,10 +23,27 @@
# OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF THIS SOFTWARE, EVEN IF
# ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
+# 20220502 bkw: Modified by SlackBuilds.org, BUILD=2:
+# - put locale stuff in /usr/share/locale.
+# - create and populate Slackware doc directory.
+# - rewrite part of the script to use a loop instead of copypasta.
+# - create doinst.sh: update icon cache and desktop database.
+# - abs path to exe in .desktop (remove /usr/bin/ symlink).
+# - strip executable.
+# - explain where to get msgothic.ttc in README.
+# Note to maintainer: consider patching the code to look for msgothic.ttc
+# in /usr/share/fonts/TTF/, since that is the standard place to find TTF
+# and TTC fonts in Slackware.
+
+# 20220221 bkw: Modified by SlackBuilds.org: fix build on 15.0.
+
+cd $(dirname $0) ; CWD=$(pwd)
+
PRGNAM="rlvm"
VERSION=${VERSION:-0.14}
-BUILD=${BUILD:-1}
+BUILD=${BUILD:-2}
TAG=${TAG:-_SBo}
+PKGTYPE=${PKGTYPE:-tgz}
if [ -z "$ARCH" ]; then
case "$( uname -m )" in
@@ -36,7 +53,11 @@ if [ -z "$ARCH" ]; then
esac
fi
-CWD=$(pwd)
+if [ ! -z "${PRINT_PACKAGE_NAME}" ]; then
+ echo "$PRGNAM-$VERSION-$ARCH-$BUILD$TAG.$PKGTYPE"
+ exit 0
+fi
+
TMP=${TMP:-/tmp/SBo}
PKG=$TMP/package-$PRGNAM
OUTPUT=${OUTPUT:-/tmp}
@@ -46,7 +67,6 @@ SRC_FLDR=$PRGNAM-$VERSION/
set -e
-
rm -fr $TMP/$SRC_FLDR $PKG
mkdir -p $TMP $PKG $OUTPUT
cd $TMP
@@ -55,46 +75,48 @@ cd $SRC_FLDR
chown -R root.root .
find -L . \
\( -perm 777 -o -perm 775 -o -perm 750 -o -perm 711 -o -perm 555 \
- -o -perm 511 \) -exec chmod 755 {} \; -o \
+ -o -perm 511 \) -exec chmod 755 {} \+ -o \
\( -perm 666 -o -perm 664 -o -perm 640 -o -perm 600 -o -perm 444 \
- -o -perm 440 -o -perm 400 \) -exec chmod 644 {} \;
+ -o -perm 440 -o -perm 400 \) -exec chmod 644 {} \+
-scons --release
-
-mkdir -p ${PKG}/usr/games ${PKG}/usr/bin
-cp build/release/rlvm $PKG/usr/games
-
-(
- cd $PKG/usr/bin
- ln -s /usr/games/rlvm rlvm
-)
+# 20220502 bkw: in case someone don't have /usr/games in $PATH:
+sed -i '/^Exec/s,=,=/usr/games/,' src/platforms/gtk/rlvm.desktop
-mkdir -p ${PKG}/usr/share
-cp -R build/locale/* $PKG/usr/share
+# 20220221 bkw: C++ infelicities.
+sed -i '1i#include <iostream>' src/systems/base/gan_graphics_object_data.cc
+sed -i '1i#include <memory>' src/systems/base/system.h
-mkdir -p ${PKG}/usr/share/applications
-cp src/platforms/gtk/rlvm.desktop $PKG/usr/share/applications
+# 20220221 bkw: ancient python2 scons stuff, 2to3 actually works here:
+SCONSFIX="$( find . -type f -a -name SCons\* )"
+SCONSFIX+=" site_scons/site_tools/rlvm.py"
+2to3 --no-diffs -nw $SCONSFIX
-mkdir -p ${PKG}/usr/share/icons/hicolor/16x16/apps
-cp resources/16/rlvm.png $PKG/usr/share/icons/hicolor/16x16/apps
+scons --release
-mkdir -p ${PKG}/usr/share/icons/hicolor/24x24/apps
-cp resources/24/rlvm.png $PKG/usr/share/icons/hicolor/24x24/apps
+mkdir -p ${PKG}/usr/games
+install -s -m0755 build/release/$PRGNAM $PKG/usr/games
-mkdir -p ${PKG}/usr/share/icons/hicolor/32x32/apps
-cp resources/32/rlvm.png $PKG/usr/share/icons/hicolor/32x32/apps
+for i in resources/[0-9]*/; do
+ px=$( basename $i )
+ dir=$PKG/usr/share/icons/hicolor/${px}x${px}/apps
+ mkdir -p $dir
+ cp -a $i/$PRGNAM.png $dir
+done
-mkdir -p ${PKG}/usr/share/icons/hicolor/48x48/apps
-cp resources/48/rlvm.png $PKG/usr/share/icons/hicolor/48x48/apps
+mkdir -p ${PKG}/usr/share/locale
+cp -R build/locale/* $PKG/usr/share/locale
-mkdir -p ${PKG}/usr/share/icons/hicolor/128x128/apps
-cp resources/128/rlvm.png $PKG/usr/share/icons/hicolor/128x128/apps
+mkdir -p ${PKG}/usr/share/applications
+cp src/platforms/gtk/$PRGNAM.desktop $PKG/usr/share/applications
-mkdir -p ${PKG}/usr/share/icons/hicolor/256x256/apps
-cp resources/256/rlvm.png $PKG/usr/share/icons/hicolor/256x256/apps
+PKGDOC=$PKG/usr/doc/$PRGNAM-$VERSION
+mkdir -p $PKGDOC
+cp -a *.txt *.TXT doc/* $PKGDOC
+cat $CWD/$PRGNAM.SlackBuild > $PKGDOC/$PRGNAM.SlackBuild
mkdir -p ${PKG}/install
cat $CWD/slack-desc > $PKG/install/slack-desc
+cat $CWD/doinst.sh > $PKG/install/doinst.sh
cd $PKG
-/sbin/makepkg -l n -c n $OUTPUT/$PRGNAM-$VERSION-$ARCH-$BUILD$TAG.${PKGTYPE:-tgz}
+/sbin/makepkg -l n -c n $OUTPUT/$PRGNAM-$VERSION-$ARCH-$BUILD$TAG.$PKGTYPE
diff --git a/games/roadfighter/gcc.patch b/games/roadfighter/gcc.patch
new file mode 100644
index 0000000000..c7e3e3895a
--- /dev/null
+++ b/games/roadfighter/gcc.patch
@@ -0,0 +1,11 @@
+--- src/auxiliar.cpp 2016-06-07 16:18:19.672015830 +0200
++++ src/auxiliar.cpp 2016-06-07 16:18:41.678235683 +0200
+@@ -84,7 +84,7 @@
+ mask=IMG_Load(name);
+
+ if (tmp==0 ||
+- mask==0) return false;
++ mask==0) return 0;
+
+ res=SDL_DisplayFormatAlpha(tmp);
+
diff --git a/games/roadfighter/roadfighter.SlackBuild b/games/roadfighter/roadfighter.SlackBuild
index 2679ac6887..0eec6f61dc 100644
--- a/games/roadfighter/roadfighter.SlackBuild
+++ b/games/roadfighter/roadfighter.SlackBuild
@@ -1,4 +1,4 @@
-#!/bin/sh
+#!/bin/bash
# Slackware build script for roadfighter
@@ -22,10 +22,13 @@
# OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF THIS SOFTWARE, EVEN IF
# ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
+cd $(dirname $0) ; CWD=$(pwd)
+
PRGNAM=roadfighter
VERSION=${VERSION:-1.0.1269}
BUILD=${BUILD:-1}
TAG=${TAG:-_SBo}
+PKGTYPE=${PKGTYPE:-tgz}
SRCNAM=roadfighter.src
@@ -37,7 +40,14 @@ if [ -z "$ARCH" ]; then
esac
fi
-CWD=$(pwd)
+# If the variable PRINT_PACKAGE_NAME is set, then this script will report what
+# the name of the created package would be, and then exit. This information
+# could be useful to other scripts.
+if [ ! -z "${PRINT_PACKAGE_NAME}" ]; then
+ echo "$PRGNAM-$VERSION-$ARCH-$BUILD$TAG.$PKGTYPE"
+ exit 0
+fi
+
TMP=${TMP:-/tmp/SBo}
PKG=$TMP/package-$PRGNAM
OUTPUT=${OUTPUT:-/tmp}
@@ -74,6 +84,9 @@ find -L . \
# fix installation path
patch -p1 < $CWD/makefile.patch
+# fix building with the newer gcc
+patch -p0 < $CWD/gcc.patch
+
make
make install PREFIX=$PKG
@@ -89,4 +102,4 @@ cat $CWD/slack-desc > $PKG/install/slack-desc
cat $CWD/doinst.sh > $PKG/install/doinst.sh
cd $PKG
-/sbin/makepkg -l y -c n $OUTPUT/$PRGNAM-$VERSION-$ARCH-$BUILD$TAG.${PKGTYPE:-tgz}
+/sbin/makepkg -l y -c n $OUTPUT/$PRGNAM-$VERSION-$ARCH-$BUILD$TAG.$PKGTYPE
diff --git a/games/roadfighter/roadfighter.info b/games/roadfighter/roadfighter.info
index 5ac0ebda74..00040605af 100644
--- a/games/roadfighter/roadfighter.info
+++ b/games/roadfighter/roadfighter.info
@@ -5,6 +5,6 @@ DOWNLOAD="http://ponce.cc/slackware/sources/repo/roadfighter.src_1.0.1269.tgz"
MD5SUM="a1626dda4d17ae30bbdd9c1ede2cd555"
DOWNLOAD_x86_64=""
MD5SUM_x86_64=""
-REQUIRES="SDL_sound"
+REQUIRES=""
MAINTAINER="Dimitris Zlatanidis"
EMAIL="d.zlatanidis@gmail.com"
diff --git a/games/robotfindskitten/robotfindskitten.SlackBuild b/games/robotfindskitten/robotfindskitten.SlackBuild
index 62172bc71c..a51029214a 100644
--- a/games/robotfindskitten/robotfindskitten.SlackBuild
+++ b/games/robotfindskitten/robotfindskitten.SlackBuild
@@ -1,4 +1,4 @@
-#!/bin/sh
+#!/bin/bash
# Slackware build script for robotfindskitten
@@ -22,10 +22,13 @@
# OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF THIS SOFTWARE, EVEN IF
# ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
+cd $(dirname $0) ; CWD=$(pwd)
+
PRGNAM=robotfindskitten
-VERSION=${VERSION:-2.7182818.701}
-BUILD=${BUILD:-2}
+VERSION=${VERSION:-2.8284271.702}
+BUILD=${BUILD:-1}
TAG=${TAG:-_SBo}
+PKGTYPE=${PKGTYPE:-tgz}
if [ -z "$ARCH" ]; then
case "$( uname -m )" in
@@ -35,7 +38,14 @@ if [ -z "$ARCH" ]; then
esac
fi
-CWD=$(pwd)
+# If the variable PRINT_PACKAGE_NAME is set, then this script will report what
+# the name of the created package would be, and then exit. This information
+# could be useful to other scripts.
+if [ ! -z "${PRINT_PACKAGE_NAME}" ]; then
+ echo "$PRGNAM-$VERSION-$ARCH-$BUILD$TAG.$PKGTYPE"
+ exit 0
+fi
+
TMP=${TMP:-/tmp/SBo}
PKG=$TMP/package-$PRGNAM
OUTPUT=${OUTPUT:-/tmp}
@@ -107,4 +117,4 @@ mkdir -p $PKG/install
cat $CWD/slack-desc > $PKG/install/slack-desc
cd $PKG
-/sbin/makepkg -l y -c n $OUTPUT/$PRGNAM-$VERSION-$ARCH-$BUILD$TAG.${PKGTYPE:-tgz}
+/sbin/makepkg -l y -c n $OUTPUT/$PRGNAM-$VERSION-$ARCH-$BUILD$TAG.$PKGTYPE
diff --git a/games/robotfindskitten/robotfindskitten.info b/games/robotfindskitten/robotfindskitten.info
index 091ce00eb3..3cdfcbbc2f 100644
--- a/games/robotfindskitten/robotfindskitten.info
+++ b/games/robotfindskitten/robotfindskitten.info
@@ -1,8 +1,8 @@
PRGNAM="robotfindskitten"
-VERSION="2.7182818.701"
-HOMEPAGE="http://robotfindskitten.org"
-DOWNLOAD="http://robotfindskitten.org/download/POSIX/robotfindskitten-2.7182818.701.tar.gz"
-MD5SUM="d70ba30874a1f51eacd8a9a2cf4efdba"
+VERSION="2.8284271.702"
+HOMEPAGE="https://github.com/robotfindskitten/robotfindskitten"
+DOWNLOAD="https://github.com/robotfindskitten/robotfindskitten/releases/download/2.8284271.702/robotfindskitten-2.8284271.702.tar.gz"
+MD5SUM="71afd2b0af1aac540b6fdc0377319414"
DOWNLOAD_x86_64=""
MD5SUM_x86_64=""
REQUIRES=""
diff --git a/games/roccat-tools/fix-multiple-definitions.patch b/games/roccat-tools/fix-multiple-definitions.patch
new file mode 100644
index 0000000000..91916ab314
--- /dev/null
+++ b/games/roccat-tools/fix-multiple-definitions.patch
@@ -0,0 +1,9 @@
+--- ./ryosmk/libroccatryosmk/ryos_device.h.orig 2020-06-30 16:41:33.348116743 +0200
++++ ./ryosmk/libroccatryosmk/ryos_device.h 2020-06-30 16:40:18.701450210 +0200
+@@ -23,5 +23,5 @@
+ G_BEGIN_DECLS
+
+-enum {
++typedef enum {
+ RYOS_WRITE_CHECK_WAIT_LIGHT_CONTROL = 10,
+ } RyosWriteCheckWait;
diff --git a/games/roccat-tools/roccat-tools.SlackBuild b/games/roccat-tools/roccat-tools.SlackBuild
index 56530c5407..18bc84dbb9 100644
--- a/games/roccat-tools/roccat-tools.SlackBuild
+++ b/games/roccat-tools/roccat-tools.SlackBuild
@@ -1,4 +1,4 @@
-#!/bin/sh
+#!/bin/bash
# Slackware build script for roccat-tools
@@ -22,16 +22,19 @@
# OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF THIS SOFTWARE, EVEN IF
# ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
-# 20170603 bkw: Modified by B. Watson <yalhcru@gmail.com>:
+# 20170603 bkw: Modified by B. Watson <urchlay@slackware.uk>:
# - update for latest version (5.6.0), since the old version won't build
# with modern libgaminggear.
# - i486 => i586.
# - use getent to check for group existence, instead of grepping /etc/group.
+cd $(dirname $0) ; CWD=$(pwd)
+
PRGNAM=roccat-tools
VERSION=${VERSION:-5.9.0}
BUILD=${BUILD:-1}
TAG=${TAG:-_SBo}
+PKGTYPE=${PKGTYPE:-tgz}
if [ -z "$ARCH" ]; then
case "$( uname -m )" in
@@ -41,7 +44,14 @@ if [ -z "$ARCH" ]; then
esac
fi
-CWD=$(pwd)
+# If the variable PRINT_PACKAGE_NAME is set, then this script will report what
+# the name of the created package would be, and then exit. This information
+# could be useful to other scripts.
+if [ ! -z "${PRINT_PACKAGE_NAME}" ]; then
+ echo "$PRGNAM-$VERSION-$ARCH-$BUILD$TAG.$PKGTYPE"
+ exit 0
+fi
+
TMP=${TMP:-/tmp/SBo}
PKG=$TMP/package-$PRGNAM
OUTPUT=${OUTPUT:-/tmp}
@@ -102,11 +112,14 @@ fi
LUAVERSION="$( lua -e 'print(_VERSION)' | cut -d' ' -f2 )"
LUA="-DWITH_LUA='$LUAVERSION'"
+patch -p1 < $CWD/fix-multiple-definitions.patch
+
mkdir -p build
cd build
cmake \
- -DCMAKE_C_FLAGS:STRING="$SLKCFLAGS" \
+ -DCMAKE_C_FLAGS:STRING="$SLKCFLAGS -isystem /usr/include/harfbuzz" \
-DCMAKE_INSTALL_PREFIX=/usr \
+ -DCMAKE_C_FLAGS="$(pkg-config --cflags harfbuzz)" \
$HW \
$LUA \
-DCMAKE_BUILD_TYPE=Release ..
@@ -140,4 +153,4 @@ cat $CWD/slack-desc > $PKG/install/slack-desc
cat $CWD/doinst.sh > $PKG/install/doinst.sh
cd $PKG
-/sbin/makepkg -l y -c n $OUTPUT/$PRGNAM-$VERSION-$ARCH-$BUILD$TAG.${PKGTYPE:-tgz}
+/sbin/makepkg -l y -c n $OUTPUT/$PRGNAM-$VERSION-$ARCH-$BUILD$TAG.$PKGTYPE
diff --git a/games/rocksndiamonds/rocksndiamonds.SlackBuild b/games/rocksndiamonds/rocksndiamonds.SlackBuild
index 778c5703f2..3b35d152c6 100644
--- a/games/rocksndiamonds/rocksndiamonds.SlackBuild
+++ b/games/rocksndiamonds/rocksndiamonds.SlackBuild
@@ -1,4 +1,4 @@
-#!/bin/sh
+#!/bin/bash
# Slackware build script for rocksndiamonds
@@ -22,26 +22,35 @@
# OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF THIS SOFTWARE, EVEN IF
# ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
+# 20220222 bkw: Modified by SlackBuilds.org: fix build on 15.0.
+
+cd $(dirname $0) ; CWD=$(pwd)
+
PRGNAM=rocksndiamonds
VERSION=${VERSION:-3.3.0.1}
BUILD=${BUILD:-1}
TAG=${TAG:-_SBo}
+PKGTYPE=${PKGTYPE:-tgz}
if [ -z "$ARCH" ]; then
case "$( uname -m )" in
- i?86) ARCH=i486 ;;
+ i?86) ARCH=i586 ;;
arm*) ARCH=arm ;;
*) ARCH=$( uname -m ) ;;
esac
fi
-CWD=$(pwd)
+if [ ! -z "${PRINT_PACKAGE_NAME}" ]; then
+ echo "$PRGNAM-$VERSION-$ARCH-$BUILD$TAG.$PKGTYPE"
+ exit 0
+fi
+
TMP=${TMP:-/tmp/SBo}
PKG=$TMP/package-$PRGNAM
OUTPUT=${OUTPUT:-/tmp}
-if [ "$ARCH" = "i486" ]; then
- SLKCFLAGS="-O2 -march=i486 -mtune=i686"
+if [ "$ARCH" = "i586" ]; then
+ SLKCFLAGS="-O2 -march=i586 -mtune=i686"
elif [ "$ARCH" = "i686" ]; then
SLKCFLAGS="-O2 -march=i686 -mtune=i686"
elif [ "$ARCH" = "x86_64" ]; then
@@ -61,13 +70,13 @@ cd $PRGNAM-$VERSION
chown -R root:root .
find -L . \
\( -perm 777 -o -perm 775 -o -perm 750 -o -perm 711 -o -perm 555 -o -perm 511 \) \
- -exec chmod 755 {} \; -o \
+ -exec chmod 755 {} \+ -o \
\( -perm 666 -o -perm 664 -o -perm 600 -o -perm 444 -o -perm 440 -o -perm 400 \) \
- -exec chmod 644 {} \;
+ -exec chmod 644 {} \+
make clean
make \
- EXTRA_CFLAGS="$SLKCFLAGS -fgnu89-inline" \
+ EXTRA_CFLAGS="$SLKCFLAGS -fgnu89-inline -fcommon" \
RO_GAME_DIR=/usr/games \
RO_GAME_DIR=/usr/share/games/rocksndiamonds \
RW_GAME_DIR=/var/games/rocksndiamonds \
@@ -90,7 +99,7 @@ find $PKG -print0 | xargs -0 file | grep -e "executable" -e "shared object" | gr
mkdir -p $PKG/usr/doc/$PRGNAM-$VERSION
cp -a \
- docs ChangeLog COPYING CREDITS INSTALL README \
+ docs ChangeLog COPYING CREDITS README \
$PKG/usr/doc/$PRGNAM-$VERSION
cat $CWD/$PRGNAM.SlackBuild > $PKG/usr/doc/$PRGNAM-$VERSION/$PRGNAM.SlackBuild
@@ -99,4 +108,4 @@ cat $CWD/slack-desc > $PKG/install/slack-desc
cat $CWD/doinst.sh > $PKG/install/doinst.sh
cd $PKG
-/sbin/makepkg -l y -c n $OUTPUT/$PRGNAM-$VERSION-$ARCH-$BUILD$TAG.${PKGTYPE:-tgz}
+/sbin/makepkg -l y -c n $OUTPUT/$PRGNAM-$VERSION-$ARCH-$BUILD$TAG.$PKGTYPE
diff --git a/games/rogue/rogue.SlackBuild b/games/rogue/rogue.SlackBuild
index a175d9f61a..a63d465e4a 100644
--- a/games/rogue/rogue.SlackBuild
+++ b/games/rogue/rogue.SlackBuild
@@ -1,8 +1,8 @@
-#!/bin/sh
+#!/bin/bash
# Slackware build script for Rogue
-# Copyright 2013, David Melik, Spokane, WA, USA
+# Copyright 2022, David Melik, Spokane, WA, USA
# All rights reserved.
#
# Redistribution and use of this script, with or without modification, is
@@ -22,10 +22,15 @@
# OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF THIS SOFTWARE, EVEN IF
# ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
+# 20220221 bkw: Modified by SlackBuilds.org: fix build on 15.0.
+
+cd $(dirname $0) ; CWD=$(pwd)
+
PRGNAM=rogue
-VERSION=${VERSION:-5.4.4}
+VERSION=${VERSION:-5.4.5}
BUILD=${BUILD:-1}
TAG=${TAG:-_SBo}
+PKGTYPE=${PKGTYPE:-tgz}
if [ -z "$ARCH" ]; then
case "$( uname -m )" in
@@ -35,7 +40,11 @@ if [ -z "$ARCH" ]; then
esac
fi
-CWD=$(pwd)
+if [ ! -z "${PRINT_PACKAGE_NAME}" ]; then
+ echo "$PRGNAM-$VERSION-$ARCH-$BUILD$TAG.$PKGTYPE"
+ exit 0
+fi
+
TMP=${TMP:-/tmp/SBo}
PKG=$TMP/package-$PRGNAM
OUTPUT=${OUTPUT:-/tmp}
@@ -60,14 +69,14 @@ rm -rf $PKG
mkdir -p $TMP $PKG $OUTPUT
cd $TMP
rm -rf $PRGNAM$VERSION
-tar xvf $CWD/$PRGNAM$VERSION-src.tar.gz
+tar xvf $CWD/$PRGNAM$VERSION-ISRUN-2021-03-09.tar.gz
cd $PRGNAM$VERSION
chown -R root:root .
find -L . \
\( -perm 777 -o -perm 775 -o -perm 750 -o -perm 711 -o -perm 555 -o -perm 511 \) \
- -exec chmod 755 {} \; -o \
+ -exec chmod 755 {} \+ -o \
\( -perm 666 -o -perm 664 -o -perm 600 -o -perm 444 -o -perm 440 -o -perm 400 \) \
- -exec chmod 644 {} \;
+ -exec chmod 644 {} \+
CFLAGS="$SLKCFLAGS" \
CXXFLAGS="$SLKCFLAGS" \
@@ -76,6 +85,8 @@ CXXFLAGS="$SLKCFLAGS" \
--prefix=/usr \
--mandir=/usr/man \
--docdir=/usr/doc/$PRGNAM-$VERSION \
+ --with-program-name=rogue \
+ --enable-lockfile \
--enable-scorefile=/var/games/rogue/rogue54.scr \
--build=$ARCH-slackware-linux
@@ -96,6 +107,8 @@ find $PKG -print0 | xargs -0 file | grep -e "executable" -e "shared object" | gr
find $PKG/usr/man -type f -exec gzip -9 {} \;
for i in $( find $PKG/usr/man -type l ) ; do ln -s $( readlink $i ).gz $i.gz ; rm $i ; done
+mkdir -p $PKG/usr/doc/$PRGNAM-$VERSION
+cp -a LICENSE.TXT $PKG/usr/doc/$PRGNAM-$VERSION
cat $CWD/$PRGNAM.SlackBuild > $PKG/usr/doc/$PRGNAM-$VERSION/$PRGNAM.SlackBuild
mkdir -p $PKG/install
@@ -103,4 +116,4 @@ cat $CWD/slack-desc > $PKG/install/slack-desc
cat $CWD/doinst.sh > $PKG/install/doinst.sh
cd $PKG
-/sbin/makepkg -l y -c n $OUTPUT/$PRGNAM-$VERSION-$ARCH-$BUILD$TAG.${PKGTYPE:-tgz}
+/sbin/makepkg -l y -c n $OUTPUT/$PRGNAM-$VERSION-$ARCH-$BUILD$TAG.$PKGTYPE
diff --git a/games/rogue/rogue.desktop b/games/rogue/rogue.desktop
new file mode 100644
index 0000000000..29e23a0eac
--- /dev/null
+++ b/games/rogue/rogue.desktop
@@ -0,0 +1,11 @@
+[Desktop Entry]
+Encoding=UTF-8
+Name=Rogue
+GenericName=Rogue
+Comment=The original curses-based adventure game
+Exec=rogue
+Icon=rogue.png
+Terminal=true
+Type=Application
+Categories=Game;RolePlaying;
+Version=5.4.5
diff --git a/games/rogue/rogue.info b/games/rogue/rogue.info
index 19458455ee..9866804a75 100644
--- a/games/rogue/rogue.info
+++ b/games/rogue/rogue.info
@@ -1,8 +1,8 @@
PRGNAM="rogue"
-VERSION="5.4.4"
-HOMEPAGE="https://github.com/Davidslv/rogue"
-DOWNLOAD="http://ftp.mirrorservice.org/sites/distfiles.macports.org/rogue/rogue5.4.4-src.tar.gz"
-MD5SUM="033288f46444b06814c81ea69d96e075"
+VERSION="5.4.5"
+HOMEPAGE="http://www.operationalsecurity.es/category/roguelikes.html"
+DOWNLOAD="http://www.operationalsecurity.es/files/rogue5.4.5-ISRUN-2021-03-09.tar.gz"
+MD5SUM="22a3e247029ed27204a79bc9bc2a5521"
DOWNLOAD_x86_64=""
MD5SUM_x86_64=""
REQUIRES=""
diff --git a/games/roll/roll.SlackBuild b/games/roll/roll.SlackBuild
index 272b5dd23c..23af958dba 100644
--- a/games/roll/roll.SlackBuild
+++ b/games/roll/roll.SlackBuild
@@ -1,4 +1,4 @@
-#!/bin/sh
+#!/bin/bash
# Slackware build script for roll
@@ -22,10 +22,13 @@
# OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF THIS SOFTWARE, EVEN IF
# ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
+cd $(dirname $0) ; CWD=$(pwd)
+
PRGNAM=roll
VERSION=${VERSION:-2.5.0}
BUILD=${BUILD:-1}
TAG=${TAG:-_SBo}
+PKGTYPE=${PKGTYPE:-tgz}
if [ -z "$ARCH" ]; then
case "$( uname -m )" in
@@ -35,7 +38,14 @@ if [ -z "$ARCH" ]; then
esac
fi
-CWD=$(pwd)
+# If the variable PRINT_PACKAGE_NAME is set, then this script will report what
+# the name of the created package would be, and then exit. This information
+# could be useful to other scripts.
+if [ ! -z "${PRINT_PACKAGE_NAME}" ]; then
+ echo "$PRGNAM-$VERSION-$ARCH-$BUILD$TAG.$PKGTYPE"
+ exit 0
+fi
+
TMP=${TMP:-/tmp/SBo}
PKG=$TMP/package-$PRGNAM
OUTPUT=${OUTPUT:-/tmp}
@@ -100,4 +110,4 @@ mkdir -p $PKG/install
cat $CWD/slack-desc > $PKG/install/slack-desc
cd $PKG
-/sbin/makepkg -l y -c n $OUTPUT/$PRGNAM-$VERSION-$ARCH-$BUILD$TAG.${PKGTYPE:-tgz}
+/sbin/makepkg -l y -c n $OUTPUT/$PRGNAM-$VERSION-$ARCH-$BUILD$TAG.$PKGTYPE
diff --git a/games/rolldice/README b/games/rolldice/README
new file mode 100644
index 0000000000..1fb8f90482
--- /dev/null
+++ b/games/rolldice/README
@@ -0,0 +1,5 @@
+rolldice (CLI dice roller)
+
+rolldice is just a simple program that rolls an amount of virtual
+dice of(almost) any size. It's provided under the GPL 2.0 License,
+and uses the GNU Readline library.
diff --git a/games/rolldice/rolldice.SlackBuild b/games/rolldice/rolldice.SlackBuild
new file mode 100644
index 0000000000..81c229e621
--- /dev/null
+++ b/games/rolldice/rolldice.SlackBuild
@@ -0,0 +1,99 @@
+#!/bin/bash
+
+# Slackware build script for rolldice
+
+# Copyright 2022, Matt Egger, USA
+# All rights reserved.
+#
+# Redistribution and use of this script, with or without modification, is
+# permitted provided that the following conditions are met:
+#
+# 1. Redistributions of this script must retain the above copyright
+# notice, this list of conditions and the following disclaimer.
+#
+# THIS SOFTWARE IS PROVIDED BY THE AUTHOR "AS IS" AND ANY EXPRESS OR IMPLIED
+# WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE IMPLIED WARRANTIES OF
+# MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE ARE DISCLAIMED. IN NO
+# EVENT SHALL THE AUTHOR BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL,
+# SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT LIMITED TO,
+# PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, DATA, OR PROFITS;
+# OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY,
+# WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR
+# OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF THIS SOFTWARE, EVEN IF
+# ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
+
+cd $(dirname $0) ; CWD=$(pwd)
+
+PRGNAM=rolldice
+VERSION=${VERSION:-1.16}
+BUILD=${BUILD:-1}
+TAG=${TAG:-_SBo}
+PKGTYPE=${PKGTYPE:-tgz}
+
+if [ -z "$ARCH" ]; then
+ case "$( uname -m )" in
+ i?86) ARCH=i586 ;;
+ arm*) ARCH=arm ;;
+ *) ARCH=$( uname -m ) ;;
+ esac
+fi
+
+if [ ! -z "${PRINT_PACKAGE_NAME}" ]; then
+ echo "$PRGNAM-$VERSION-$ARCH-$BUILD$TAG.$PKGTYPE"
+ exit 0
+fi
+
+TMP=${TMP:-/tmp/SBo}
+PKG=$TMP/package-$PRGNAM
+OUTPUT=${OUTPUT:-/tmp}
+
+if [ "$ARCH" = "i586" ]; then
+ SLKCFLAGS="-O2 -march=i586 -mtune=i686"
+ LIBDIRSUFFIX=""
+elif [ "$ARCH" = "i686" ]; then
+ SLKCFLAGS="-O2 -march=i686 -mtune=i686"
+ LIBDIRSUFFIX=""
+elif [ "$ARCH" = "x86_64" ]; then
+ SLKCFLAGS="-O2 -fPIC"
+ LIBDIRSUFFIX="64"
+else
+ SLKCFLAGS="-O2"
+ LIBDIRSUFFIX=""
+fi
+
+set -e
+
+rm -rf $PKG
+mkdir -p $TMP $PKG $OUTPUT
+cd $TMP
+rm -rf $PRGNAM-$VERSION
+tar xvf $CWD/$PRGNAM-$VERSION.tar.gz
+cd $PRGNAM-$VERSION
+chown -R root:root .
+find -L . \
+ \( -perm 777 -o -perm 775 -o -perm 750 -o -perm 711 -o -perm 555 \
+ -o -perm 511 \) -exec chmod 755 {} \; -o \
+ \( -perm 666 -o -perm 664 -o -perm 640 -o -perm 600 -o -perm 444 \
+ -o -perm 440 -o -perm 400 \) -exec chmod 644 {} \;
+
+make
+make install DESTDIR=$PKG
+
+rm -f $PKG/{,usr/}lib${LIBDIRSUFFIX}/*.la
+
+find $PKG -print0 | xargs -0 file | grep -e "executable" -e "shared object" | grep ELF \
+ | cut -f 1 -d : | xargs strip --strip-unneeded 2> /dev/null || true
+
+mkdir -p $PKG/usr/man/man6
+mv $PKG/usr/share/man/man6/rolldice.6.gz $PKG/usr/man/man6/rolldice.6.gz
+rm -rf $PKG/usr/share
+
+mkdir -p $PKG/usr/doc/$PRGNAM-$VERSION
+
+cat $CWD/$PRGNAM.SlackBuild > $PKG/usr/doc/$PRGNAM-$VERSION/$PRGNAM.SlackBuild
+
+mkdir -p $PKG/install
+cat $CWD/slack-desc > $PKG/install/slack-desc
+
+cd $PKG
+/sbin/makepkg -l y -c n $OUTPUT/$PRGNAM-$VERSION-$ARCH-$BUILD$TAG.$PKGTYPE
diff --git a/games/rolldice/rolldice.info b/games/rolldice/rolldice.info
new file mode 100644
index 0000000000..2653ac45db
--- /dev/null
+++ b/games/rolldice/rolldice.info
@@ -0,0 +1,10 @@
+PRGNAM="rolldice"
+VERSION="1.16"
+HOMEPAGE="https://github.com/sstrickl/rolldice"
+DOWNLOAD="https://github.com/sstrickl/rolldice/archive/v1.16/rolldice-1.16.tar.gz"
+MD5SUM="d2456d2411321167aeb0285bdd458e15"
+DOWNLOAD_x86_64=""
+MD5SUM_x86_64=""
+REQUIRES=""
+MAINTAINER="Matt Egger"
+EMAIL="bru.barwal@sdf.org"
diff --git a/games/rolldice/slack-desc b/games/rolldice/slack-desc
new file mode 100644
index 0000000000..95fbf970df
--- /dev/null
+++ b/games/rolldice/slack-desc
@@ -0,0 +1,19 @@
+# HOW TO EDIT THIS FILE:
+# The "handy ruler" below makes it easier to edit a package description. Line
+# up the first '|' above the ':' following the base package name, and the '|' on
+# the right side marks the last column you can put a character in. You must make
+# exactly 11 lines for the formatting to be correct. It's also customary to
+# leave one space after the ':'.
+
+ |-----handy-ruler------------------------------------------------------|
+rolldice: rolldice (CLI dice roller)
+rolldice:
+rolldice: rolldice is just a simple program that rolls an amount of virtual
+rolldice: dice of(almost) any size. It's provided under the GPL 2.0 License,
+rolldice: and uses the GNU Readline library.
+rolldice:
+rolldice: https://github.com/sstrickl/rolldice
+rolldice:
+rolldice:
+rolldice:
+rolldice:
diff --git a/games/rott/README b/games/rott/README
index 0b0bbfe3c9..666f77988b 100644
--- a/games/rott/README
+++ b/games/rott/README
@@ -7,12 +7,10 @@ life-preserving armor, traps and ambushes galore.
WARNING: Rise of the Triad features wanton and gratuitous violence.
-In order to play the game, you need the data files from
-either the retail or shareware (demo) version of the game. See
-README_gamedata.txt for details. If you want to include the
-shareware game data in your Slackware package, download the file
-http://icculus.org/rott/share/1rott13.zip and place it in the directory
-with the SlackBuild script, before running the script.
+In order to play the game, you need the data files from either the
+retail or shareware (demo) version of the game. The shareware/demo
+data files are included in the package. If you want to play the retail
+version, see README_gamedata.txt for details.
Multiplayer games (aka comm-bat) are NOT truly supported: you can
start up a comm-bat game, but you can only play by yourself (no actual
diff --git a/games/rott/README_gamedata.txt b/games/rott/README_gamedata.txt
index 5994214260..6820faef50 100644
--- a/games/rott/README_gamedata.txt
+++ b/games/rott/README_gamedata.txt
@@ -24,22 +24,7 @@ Shareware/Demo version 1.3
--------------------------
Data files: HUNTBGIN.WAD HUNTBGIN.RTC HUNTBGIN.RTL REMOTE1.RTS
-If you want to include the shareware game data files in your package,
-download the shareware version of the game and place it in the SlackBuild
-directory before building:
-
-# wget http://icculus.org/rott/share/1rott13.zip
-# ./rott.SlackBuild
-# installpkg /tmp/rott-$VERSION-$ARCH-$BUILD.tgz
-
-If the icculus.org link doesn't work, the same file can be downloaded
-from http://www.3drealms.com/rott/ (look for "v1.3 Shareware
-Episode" on the page). Either way, the md5sum for rott13.zip is
-0fafd6b629eab80278fc726e31f9cf41.
-
-If you built the package without the shareware data files, you can just
-extract the zip file and copy the data files to /usr/share/games/rott
-manually.
+This is always included in the package.
The binary for the shareware version is called "rott-demo".
---
diff --git a/games/rott/doinst.sh b/games/rott/doinst.sh
index a30493342c..726ffe403b 100644
--- a/games/rott/doinst.sh
+++ b/games/rott/doinst.sh
@@ -7,4 +7,3 @@ if [ -e usr/share/icons/hicolor/icon-theme.cache ]; then
/usr/bin/gtk-update-icon-cache -f usr/share/icons/hicolor >/dev/null 2>&1
fi
fi
-
diff --git a/games/rott/rott.SlackBuild b/games/rott/rott.SlackBuild
index f16755d5b4..65efbe4aa9 100644
--- a/games/rott/rott.SlackBuild
+++ b/games/rott/rott.SlackBuild
@@ -1,15 +1,24 @@
-#!/bin/sh
+#!/bin/bash
# Slackware build script for rott
-# Written by B. Watson (yalhcru@gmail.com)
+# Written by B. Watson (urchlay@slackware.uk)
# Licensed under the WTFPL. See http://www.wtfpl.net/txt/copying/ for details.
+# 20230107 bkw: BUILD=3, fix icon sizes.
+
+# 20211025 bkw: BUILD=2
+# - new-style icons.
+# - .desktop file starts in windowed mode, not fullscreen.
+
+cd $(dirname $0) ; CWD=$(pwd)
+
PRGNAM=rott
VERSION=${VERSION:-1.1.2}
-BUILD=${BUILD:-1}
+BUILD=${BUILD:-3}
TAG=${TAG:-_SBo}
+PKGTYPE=${PKGTYPE:-tgz}
if [ -z "$ARCH" ]; then
case "$( uname -m )" in
@@ -19,7 +28,11 @@ if [ -z "$ARCH" ]; then
esac
fi
-CWD=$(pwd)
+if [ ! -z "${PRINT_PACKAGE_NAME}" ]; then
+ echo "$PRGNAM-$VERSION-$ARCH-$BUILD$TAG.$PKGTYPE"
+ exit 0
+fi
+
TMP=${TMP:-/tmp/SBo}
PKG=$TMP/package-$PRGNAM
OUTPUT=${OUTPUT:-/tmp}
@@ -43,12 +56,8 @@ cd $TMP
rm -rf $PRGNAM-$VERSION
tar xvf $CWD/$PRGNAM-$VERSION.tar.gz
cd $PRGNAM-$VERSION
-chown -R root:root .
-find -L . \
- \( -perm 777 -o -perm 775 -o -perm 750 -o -perm 711 -o -perm 555 -o -perm 511 \) \
- -exec chmod 755 {} \; -o \
- \( -perm 666 -o -perm 664 -o -perm 600 -o -perm 444 -o -perm 440 -o -perm 400 \) \
- -exec chmod 644 {} \;
+find -L . -perm /111 -a \! -perm 755 -a -exec chmod 755 {} \+ -o \
+ \! -perm /111 -a \! -perm 644 -a -exec chmod 644 {} \+
patch -p1 < $CWD/manpage.diff
@@ -86,7 +95,7 @@ ln -s $PRGNAM.6.gz $MANDIR/$PRGNAM-demo.6.gz
ln -s $PRGNAM.6.gz $MANDIR/$PRGNAM-reg.6.gz
ln -s $PRGNAM.6.gz $MANDIR/$PRGNAM-cdrom.6.gz
-# Optional shareware game data
+# Shareware game data. Used to be optional, always included now.
mkdir -p $PKG/usr/share/games/$PRGNAM
if [ -e $CWD/1rott13.zip ]; then
unzip $CWD/1rott13.zip ROTTSW13.SHR
@@ -99,8 +108,20 @@ fi
install -m0755 -oroot -groot $CWD/$PRGNAM.sh $PKG/usr/games/$PRGNAM
mkdir -p $PKG/usr/share/applications $PKG/usr/share/pixmaps
-cp misc/$PRGNAM.desktop $PKG/usr/share/applications
-cp misc/$PRGNAM.xpm $PKG/usr/share/pixmaps
+sed -e 's,Exec=,&/usr/games/,' \
+ -e 's,-window,,' \
+ < misc/$PRGNAM.desktop \
+ > $PKG/usr/share/applications/$PRGNAM.desktop
+
+# Icon made for this SlackBuild.
+for px in 16 32 48 64 128; do
+ size=${px}x${px}
+ dir=$PKG/usr/share/icons/hicolor/$size/apps
+ mkdir -p $dir
+ convert -resize $size! $CWD/$PRGNAM.png $dir/$PRGNAM.png
+done
+
+ln -s ../icons/hicolor/48x48/apps/$PRGNAM.png $PKG/usr/share/pixmaps/$PRGNAM.png
mkdir -p $PKG/usr/doc/$PRGNAM-$VERSION
cp COPYING README doc/*.txt $PKG/usr/doc/$PRGNAM-$VERSION
@@ -112,4 +133,4 @@ cat $CWD/slack-desc > $PKG/install/slack-desc
cat $CWD/doinst.sh > $PKG/install/doinst.sh
cd $PKG
-/sbin/makepkg -l y -c n $OUTPUT/$PRGNAM-$VERSION-$ARCH-$BUILD$TAG.${PKGTYPE:-tgz}
+/sbin/makepkg -l y -c n $OUTPUT/$PRGNAM-$VERSION-$ARCH-$BUILD$TAG.$PKGTYPE
diff --git a/games/rott/rott.info b/games/rott/rott.info
index cc02fa203f..aac23bdf06 100644
--- a/games/rott/rott.info
+++ b/games/rott/rott.info
@@ -1,12 +1,12 @@
PRGNAM="rott"
VERSION="1.1.2"
-HOMEPAGE="http://icculus.org/rott/"
-DOWNLOAD="http://icculus.org/rott/share/1rott13.zip \
- http://icculus.org/rott/releases/rott-1.1.2.tar.gz"
+HOMEPAGE="https://icculus.org/rott/"
+DOWNLOAD="https://icculus.org/rott/share/1rott13.zip \
+ https://icculus.org/rott/releases/rott-1.1.2.tar.gz"
MD5SUM="0fafd6b629eab80278fc726e31f9cf41 \
d523c7c6c97f95ba84b8cf4deae7db38"
DOWNLOAD_x86_64=""
MD5SUM_x86_64=""
REQUIRES=""
MAINTAINER="B. Watson"
-EMAIL="yalhcru@gmail.com"
+EMAIL="urchlay@slackware.uk"
diff --git a/games/rott/rott.png b/games/rott/rott.png
new file mode 100644
index 0000000000..382a492588
--- /dev/null
+++ b/games/rott/rott.png
Binary files differ
diff --git a/games/rottexpr/README b/games/rottexpr/README
new file mode 100644
index 0000000000..c68222a4bf
--- /dev/null
+++ b/games/rottexpr/README
@@ -0,0 +1,21 @@
+rottexpr (Enhanched source port for Rise of the Triad)
+
+Rise of the Triad is a high quality, fast scrolling first-person
+perspective 3D action game. It includes a lot of destructive enemies,
+an arsenal of weapons from simple pistols to missile launchers,
+life-preserving armor, traps and ambushes galore.
+
+WARNING: Rise of the Triad features wanton and gratuitous violence.
+
+In order to play the game, you need the data files from either the
+retail or shareware (demo) version of the game. The shareware/demo
+data files are included in the package. If you want to play the retail
+version, see README_gamedata.txt for details. The retail version is
+available for purchase and download from GOG.com among other sources.
+
+Multiplayer games (aka comm-bat) are NOT truly supported: you can
+start up a comm-bat game, but you can only play by yourself (no actual
+networking code exists in this version of the game).
+
+For more information, see http://www.3drealms.com/rott/ and
+https://github.com/LTCHIPS/rottexpr
diff --git a/games/rottexpr/README_gamedata.txt b/games/rottexpr/README_gamedata.txt
new file mode 100644
index 0000000000..d90ce3c05e
--- /dev/null
+++ b/games/rottexpr/README_gamedata.txt
@@ -0,0 +1,120 @@
+There are at least 3 versions of Rise of the Triad that are supported
+by rottexpr. Each game version uses a different game binary, but there's a
+wrapper script that looks at the available game data files and runs the
+"best" version of the game (this is what happens if you just run "rottexpr",
+or run Rise of the Triad from the KDE/XFCE application menu). The game
+looks for the data files in /usr/share/games/rottexpr, and the different
+versions can coexist. All filenames must be UPPERCASE.
+
+Which version do I have?
+------------------------
+If you've got an installed copy of the game, maybe on a DOS/Windows partition,
+here's how to identify it:
+
+- If you have no files named DARKWAR.*, you have the shareware/demo
+version.
+
+- If you have DARKWAR.(WAD|RTL|RTC), but no ROTTCD.RTC, you have the
+registered floppy/download version.
+
+- If you have ROTTCD.RTC (and DARKWAR.*), you have the CD-ROM version.
+---
+
+Shareware/Demo version 1.3
+--------------------------
+Data files: HUNTBGIN.WAD HUNTBGIN.RTC HUNTBGIN.RTL REMOTE1.RTS
+
+This is always included in the package.
+
+The binary for the shareware version is called "rottexpr-demo".
+---
+
+Registered (Floppy Disk, Registered Download) version 1.3
+---------------------------------------------------------
+Data files: DARKWAR.WAD DARKWAR.RTC DARKWAR.RTL REMOTE1.RTS
+
+Copy these files from your DOS/Windows ROTT game directory to
+/usr/share/games/rottexpr/, making sure to give them all-uppercase names.
+If the shareware REMOTE1.RTS is already there, it doesn't matter whether
+you overwrite it or not (this file is identical in the demo and registered
+versions).
+
+If you have an older version than 1.3, see http://www.3drealms.com/rott/
+for a patch.
+
+The binary for the registered version is called "rottexpr-reg".
+---
+
+CD-ROM version 1.3
+------------------
+Data files: DARKWAR.WAD ROTTCD.RTC DARKWAR.RTL REMOTE1.RTS
+
+Copy these files from your Rise of the Triad CD-ROM to
+/usr/share/games/rottexpr/, making sure to give them all-uppercase names.
+On my CD, there are two copies of the files (in the rottplay/ and
+rottinst/ subdirectories). The REMOTE1.RTS is identical to the
+one from the shareware and registered versions.
+
+The binary for the CD-ROM version is called "rottexpr-cdrom". (The CD doesn't
+have to be in the drive to play the game, though)
+
+This version of the game is identical to the registered version except
+that it uses a different set of levels for multiplayer games.
+
+If you have an older version than 1.3, see http://www.3drealms.com/rott/
+for a patch.
+---
+
+Data File MD5 sums
+------------------
+2823fe5baa07fa2a5a05df3af0cf8265 DARKWAR.RTC
+d1f44aa4d1cb230ba6c3694acc09b6b7 DARKWAR.RTL
+2ec4b19372d1ae55d01058f772f6214f DARKWAR.WAD
+4d90dec2da07a8eee1162efd3e23d98d HUNTBGIN.RTC
+b9b0a3be46a4f7fccabb1c1e8cf5455f HUNTBGIN.RTL
+37793500e3b1de2125a98604b69838e3 HUNTBGIN.WAD
+190c69835af502e4d8f08ee733c3fcc5 REMOTE1.RTS
+64c8e7123a7edcb7b8739b42cdae0120 ROTTCD.RTC
+
+These md5sums are for the 1.3 shareware and CD-ROM versions of the game
+(the files the SlackBuild author used for testing). If yours don't match,
+they might be for an older version of the game, or they might be corrupt
+(try them and see).
+---
+
+Wrapper Script (/usr/games/rottexpr)
+--------------------------------
+If you run "rottexpr" from the command line, or launch it from the KDE/XFCE
+application menu, this script looks in /usr/share/games/rottexpr to see which
+set of data files you have, and runs the correct game binary for you.
+
+If the script finds ROTTCD.RTC, it runs rottexpr-cdrom
+Otherwise, if it finds DARKWAR.WAD, it runs rottexpr-reg
+Otherwise, if it finds HUNTBGIN.WAD, it runs rottexpr-demo
+If none of the above exist, it exits with an error.
+
+If you have the correct data files, you can always run rottexpr-demo,
+rottexpr-reg, or rottexpr-cdrom directly, to choose which version of the game
+to play. You probably should always do this for multiplayer games,
+since all players need to be running the same version of the game.
+---
+
+Add-on Levels
+-------------
+Add-on level packs require the registered or CD-ROM version of the game.
+To load them, use the "file", "filertl", and/or "filertc" options. Unlike
+the main game data files, add-on files are searched for in the current
+directory (or you can give the full path).
+
+Example: to play the ROTT Reject Level Pack, download and unzip it, then
+run:
+
+$ rottexpr filertc REJECTS.RTC
+
+...and then start up comm-bat mode.
+
+RTL files are single-player levels and RTC files are for comm-bat
+(multiplayer). Remember that comm-bat mode doesn't really work in this
+port of ROTT (no networking code, so all you can do is run around by
+yourself).
+---
diff --git a/games/rottexpr/doinst.sh b/games/rottexpr/doinst.sh
new file mode 100644
index 0000000000..726ffe403b
--- /dev/null
+++ b/games/rottexpr/doinst.sh
@@ -0,0 +1,9 @@
+if [ -x /usr/bin/update-desktop-database ]; then
+ /usr/bin/update-desktop-database -q usr/share/applications
+fi
+
+if [ -e usr/share/icons/hicolor/icon-theme.cache ]; then
+ if [ -x /usr/bin/gtk-update-icon-cache ]; then
+ /usr/bin/gtk-update-icon-cache -f usr/share/icons/hicolor >/dev/null 2>&1
+ fi
+fi
diff --git a/games/rottexpr/rottexpr.6 b/games/rottexpr/rottexpr.6
new file mode 100644
index 0000000000..45ada626e1
--- /dev/null
+++ b/games/rottexpr/rottexpr.6
@@ -0,0 +1,129 @@
+.TH ROTTEXPR 6 "2023-12-03" "0.01" "Rise of the Triad"
+
+.SH NAME
+rottexpr \- Rise of the Triad source port
+
+.SH SYNOPSIS
+.B rottexpr
+.RI [ options ]
+.br
+.B rott\-demo
+.RI [ options ]
+.br
+.B rott\-reg
+.RI [ options ]
+.br
+.B rott\-cdrom
+.RI [ options ]
+
+.SH DESCRIPTION
+.B ROTTEXPR
+is a port of Apogee's 3D action title Rise of the Triad, originally released in 1994.
+.B ROTTEXPR
+uses the SDL2 libraries to make the game playable on modern operating systems, including Linux, and adds features including higher
+screen resolutions, adaptive HUD positioning, configurable gameplay options, and a number of bug fixes.
+
+.SH OPTIONS
+.TP
+.BR aim
+Show aim crosshair.
+.TP
+.BR fullscreen
+Start in fullscreen mode.
+.TP
+.BR window
+Start in windowed mode.
+.TP
+.BR resolution\ \fIwidth\fPx\fIheight\fP
+Specify the screen resolution to use (next parameter is widthxheight).
+Valid resolutions are 320x200, 640x480 and 800x600.
+.TP
+.BR filertl\ \fIfile.rtl\fP
+Load external Userlevels (RTL files) (next parameter is RTL filename).
+Not available in shareware/demo version.
+.TP
+.BR filertc\ \fIfile.rtc\fP
+Load external Battlelevels (RTC files) (next parameter is RTC filename).
+Not available in shareware/demo version.
+.TP
+.BR file\ \fIfile.wad\fP
+Load external WAD file (next parameter is WAD filename).
+Not available in shareware/demo version.
+.TP
+.BR nojoys
+Disable check for joystick.
+.TP
+.BR nomouse
+Disable check for mouse.
+.TP
+.BR nosound
+Disable sound.
+.TP
+.BR noecho
+Turn off sound reverb.
+.TP
+.BR ver
+Version number.
+.TP
+.BR mapstats
+Dump Map statistics to ERROR.
+.TP
+.BR tilestats
+Dump Tile statistics to ERROR.
+.TP
+.BR mono
+Enable mono-monitor support.
+.TP
+.BR screenshots
+Clean screen capture for shots.
+.TP
+.BR pause
+Pauses startup screen information.
+.TP
+.BR enablevr
+Enable VR helmet input devices.
+.TP
+.BR demoexit
+Exit program when demo is terminated.
+.TP
+.BR warp\ \fIlevel\fP
+Warp to specific ROTT level (next parameter is level to start on).
+.TP
+.BR timelimit\ \fItime\fP
+Play ROTT in time limit mode (next parameter is time in seconds).
+.TP
+.BR maxtimelimit\ \fItime\fP
+Maximimum time to count down from (next parameter is time in seconds).
+.TP
+.BR dopefish
+Activate an Easter-egg with references to the Dopefish from the Commander Keen games.
+
+.SH FILES
+Game data files are searched for in \fB/usr/share/games/rottexpr\fR. Each
+game binary requires its own particular data files:
+.PP
+\fBrottexpr\-demo\fR (shareware/demo) \- HUNTBGIN.WAD HUNTBGIN.RTC HUNTBGIN.RTL REMOTE1.RTS
+.PP
+\fBrottexpr\-reg\fR (registered floppy/download) \- DARKWAR.WAD DARKWAR.RTC DARKWAR.RTL REMOTE1.RTS
+.PP
+\fBrottexpr\-cdrom\fR (retail CD) \- DARKWAR.WAD ROTTCD.RTC DARKWAR.RTL REMOTE1.RTS
+.PP
+All filenames must be UPPERCASE.
+.PP
+Simply run \fBrottexpr\fR to play the "best" version of the game that you
+have the data files for (CD\-ROM, Registered, or Demo, in that order).
+.PP
+User config data is stored in \fB~/.rottexpr\fR for the shareware/demo version
+and \fB~/.rottexpr/darkwar\fR for the registered and CD\-ROM versions.
+
+.SH AUTHORS
+ROTT was created and published as shareware by Apogee Software, Ltd. and was published commercially by FormGen, Inc.
+.PP
+The primary contributors to the icculus.org port were Steven Fuller, Ryan C. Gordon, John Hall and Dan Olson.
+.PP
+The rottexpr port was started by Steven LeVesque, with significant contributions by Emile Belanger.
+See https://github.com/LTCHIPS/rottexpr for more information.
+.PP
+This manual page was originally written by Fabian Greffrath <fabian@debian-unofficial.org>
+for the Debian project (but may be used by others), and was modified for
+the SlackBuilds.org games/rott project by B. Watson, and for rottexpr by Brent Spillner.
diff --git a/games/rottexpr/rottexpr.SlackBuild b/games/rottexpr/rottexpr.SlackBuild
new file mode 100644
index 0000000000..34f4803cbf
--- /dev/null
+++ b/games/rottexpr/rottexpr.SlackBuild
@@ -0,0 +1,124 @@
+#!/bin/bash
+# Slackware build script for rottexpr
+# Based on games/rott/rott.SlackBuild by B. Watson (urchlay@slackware.uk)
+# Modified for rottexpr by Brent Spillner (s p i l l n e r @ a c m . o r g)
+# Licensed under the WTFPL. See http://www.wtfpl.net/txt/copying/ for details.
+
+cd $(dirname $0) ; CWD=$(pwd)
+
+PRGNAM=rottexpr
+MAKEFILE_TARGET=rott
+VERSION=${VERSION:-0.01}
+BUILD=${BUILD:-1}
+TAG=${TAG:-_SBo}
+PKGTYPE=${PKGTYPE:-tgz}
+
+if [ -z "$ARCH" ]; then
+ case "$( uname -m )" in
+ i?86) ARCH=i586 ;;
+ arm*) ARCH=arm ;;
+ *) ARCH=$( uname -m ) ;;
+ esac
+fi
+
+if [ ! -z "${PRINT_PACKAGE_NAME}" ]; then
+ echo "$PRGNAM-$VERSION-$ARCH-$BUILD$TAG.$PKGTYPE"
+ exit 0
+fi
+
+TMP=${TMP:-/tmp/SBo}
+PKG=$TMP/package-$PRGNAM
+OUTPUT=${OUTPUT:-/tmp}
+
+# LIBDIRSUFFIX not needed
+if [ "$ARCH" = "i586" ]; then
+ SLKCFLAGS="-O2 -march=i586 -mtune=i686"
+elif [ "$ARCH" = "i686" ]; then
+ SLKCFLAGS="-O2 -march=i686 -mtune=i686"
+elif [ "$ARCH" = "x86_64" ]; then
+ SLKCFLAGS="-O2 -fPIC"
+else
+ SLKCFLAGS="-O2"
+fi
+
+set -e
+
+rm -rf $PKG
+mkdir -p $TMP $PKG $OUTPUT
+cd $TMP
+rm -rf $PRGNAM-$VERSION
+tar xvf $CWD/$PRGNAM-$VERSION.tar.gz
+cd $PRGNAM-$VERSION
+find -L . -perm /111 -a \! -perm 755 -a -exec chmod 755 {} \+ -o \
+ \! -perm /111 -a \! -perm 644 -a -exec chmod 644 {} \+
+
+# Adjust user configuration dir to avoid conflicts with the other rott engine
+sed -i "s/\.rott\//\.rottexpr\//g" src/dosutil.c
+
+# The shareware/demo binary
+make -j1 -C src clean all \
+ SHAREWARE=1 SUPERROTT=0 \
+ EXTRACFLAGS="$SLKCFLAGS -DDATADIR=\\\"/usr/share/games/$PRGNAM/\\\""
+mkdir -p $PKG/usr/games
+install -s -m0755 src/$MAKEFILE_TARGET $PKG/usr/games/$PRGNAM-demo
+
+# The registered binary
+make -j1 -C src clean all \
+ SHAREWARE=0 SUPERROTT=0 \
+ EXTRACFLAGS="$SLKCFLAGS -DDATADIR=\\\"/usr/share/games/$PRGNAM/\\\""
+install -s -m0755 src/$MAKEFILE_TARGET $PKG/usr/games/$PRGNAM-reg
+
+# The retail/cdrom binary
+make -j1 -C src clean all \
+ SHAREWARE=0 SUPERROTT=1 \
+ EXTRACFLAGS="$SLKCFLAGS -DDATADIR=\\\"/usr/share/games/$PRGNAM/\\\""
+install -s -m0755 src/$MAKEFILE_TARGET $PKG/usr/games/$PRGNAM-cdrom
+
+# Not going to bother with the "Site License" binary: doubt anyone
+# will have any use for it, since multiplayer isn't supported. If you need
+# it, build with SHAREWARE=0 SUPERROTT=0 SITELICENSE=1
+
+# Man page is modified from the original version.
+MANDIR=$PKG/usr/man/man6
+mkdir -p $MANDIR
+gzip -9c $CWD/$PRGNAM.6 > $MANDIR/$PRGNAM.6.gz
+ln -s $PRGNAM.6.gz $MANDIR/$PRGNAM-demo.6.gz
+ln -s $PRGNAM.6.gz $MANDIR/$PRGNAM-reg.6.gz
+ln -s $PRGNAM.6.gz $MANDIR/$PRGNAM-cdrom.6.gz
+
+# Shareware game data. Used to be optional, always included now.
+mkdir -p $PKG/usr/share/games/$PRGNAM
+if [ -e $CWD/1rott13.zip ]; then
+ unzip $CWD/1rott13.zip ROTTSW13.SHR
+ unzip ROTTSW13.SHR '*.WAD' '*.RTS' '*.RTL' '*.RTC'
+ cp *.WAD *.RTS *.RTL *.RTC $PKG/usr/share/games/$PRGNAM
+ chmod 644 $PKG/usr/share/games/$PRGNAM/*
+fi
+
+# Wrapper script
+install -m0755 -oroot -groot $CWD/$PRGNAM.sh $PKG/usr/games/$PRGNAM
+
+mkdir -p $PKG/usr/share/applications $PKG/usr/share/pixmaps
+cp $CWD/$PRGNAM.desktop $PKG/usr/share/applications/$PRGNAM.desktop
+
+# Icon made for the original games/rott SlackBuild.
+for px in 16 32 48 64 128; do
+ size=${px}x${px}
+ dir=$PKG/usr/share/icons/hicolor/$size/apps
+ mkdir -p $dir
+ convert -resize $size! $CWD/$PRGNAM.png $dir/$PRGNAM.png
+done
+
+ln -s ../icons/hicolor/48x48/apps/$PRGNAM.png $PKG/usr/share/pixmaps/$PRGNAM.png
+
+mkdir -p $PKG/usr/doc/$PRGNAM-$VERSION
+cp COPYING LICENSE.DOC *.md $PKG/usr/doc/$PRGNAM-$VERSION
+cat $CWD/$PRGNAM.SlackBuild > $PKG/usr/doc/$PRGNAM-$VERSION/$PRGNAM.SlackBuild
+cat $CWD/README_gamedata.txt > $PKG/usr/doc/$PRGNAM-$VERSION/README_gamedata.txt
+
+mkdir -p $PKG/install
+cat $CWD/slack-desc > $PKG/install/slack-desc
+cat $CWD/doinst.sh > $PKG/install/doinst.sh
+
+cd $PKG
+/sbin/makepkg -l y -c n $OUTPUT/$PRGNAM-$VERSION-$ARCH-$BUILD$TAG.$PKGTYPE
diff --git a/games/rottexpr/rottexpr.desktop b/games/rottexpr/rottexpr.desktop
new file mode 100644
index 0000000000..31da80f607
--- /dev/null
+++ b/games/rottexpr/rottexpr.desktop
@@ -0,0 +1,8 @@
+[Desktop Entry]
+Type=Application
+Name=Rise of the Triad (enhanced source port)
+Comment=SDL2 port of the classic DOS first-person shooter
+Icon=rottexpr
+TryExec=/usr/games/rottexpr
+Exec=/usr/games/rottexpr -fullscreen -resolution 1024x768
+Categories=Game;ActionGame;
diff --git a/games/rottexpr/rottexpr.info b/games/rottexpr/rottexpr.info
new file mode 100644
index 0000000000..4e07d5e358
--- /dev/null
+++ b/games/rottexpr/rottexpr.info
@@ -0,0 +1,12 @@
+PRGNAM="rottexpr"
+VERSION="0.01"
+HOMEPAGE="https://github.com/LTCHIPS/rottexpr"
+DOWNLOAD="https://icculus.org/rott/share/1rott13.zip \
+ https://github.com/LTCHIPS/rottexpr/archive/v0.01/rottexpr-0.01.tar.gz"
+MD5SUM="0fafd6b629eab80278fc726e31f9cf41 \
+ 5c0bb94c30532fa3450bb58ed1f60350"
+DOWNLOAD_x86_64=""
+MD5SUM_x86_64=""
+REQUIRES=""
+MAINTAINER="Brent Spillner"
+EMAIL="s p i l l n e r @ a c m . o r g"
diff --git a/games/rottexpr/rottexpr.png b/games/rottexpr/rottexpr.png
new file mode 100644
index 0000000000..382a492588
--- /dev/null
+++ b/games/rottexpr/rottexpr.png
Binary files differ
diff --git a/games/rottexpr/rottexpr.sh b/games/rottexpr/rottexpr.sh
new file mode 100644
index 0000000000..e45e44250f
--- /dev/null
+++ b/games/rottexpr/rottexpr.sh
@@ -0,0 +1,30 @@
+#!/bin/sh
+
+# Wrapper script for Rise of the Triad, by B. Watson
+# Modified for rottexpr by Brent Spillner
+
+# Figures out which rott binary to execute, based on which
+# game data files are installed.
+
+DATADIR=/usr/share/games/rottexpr
+CDROMFILE=$DATADIR/ROTTCD.RTC
+REGFILE=$DATADIR/DARKWAR.WAD
+DEMOFILE=$DATADIR/HUNTBGIN.WAD
+BINDIR=/usr/games
+
+if [ -r $CDROMFILE ]; then
+ exec $BINDIR/rottexpr-cdrom "$@"
+elif [ -r $REGFILE ]; then
+ exec $BINDIR/rottexpr-reg "$@"
+elif [ -r $DEMOFILE ]; then
+ exec $BINDIR/rottexpr-demo "$@"
+else
+ cat 1>&2 <<EOF
+$0: Can't find any usable game data files.
+
+Copy the game data files from either the shareware or full version
+of ROTT to /usr/share/games/rottexpr, and if necessary, rename the files
+to ALL UPPERCASE names (e.g. DARKWAR.WAD).
+EOF
+ exit 1
+fi
diff --git a/games/rottexpr/slack-desc b/games/rottexpr/slack-desc
new file mode 100644
index 0000000000..98e1a1533e
--- /dev/null
+++ b/games/rottexpr/slack-desc
@@ -0,0 +1,19 @@
+# HOW TO EDIT THIS FILE:
+# The "handy ruler" below makes it easier to edit a package description.
+# Line up the first '|' above the ':' following the base package name, and
+# the '|' on the right side marks the last column you can put a character in.
+# You must make exactly 11 lines for the formatting to be correct. It's also
+# customary to leave one space after the ':' except on otherwise blank lines.
+
+ |-----handy-ruler------------------------------------------------------|
+rottexpr: rottexpr (Rise of the Triad enhanced source port)
+rottexpr:
+rottexpr: Rise of the Triad is a high quality, fast scrolling first-person
+rottexpr: perspective 3D action game. It includes a lot of destructive enemies,
+rottexpr: an arsenal of weapons from simple pistols to missile launchers,
+rottexpr: life-preserving armor, traps and ambushes galore.
+rottexpr:
+rottexpr: WARNING: Rise of the Triad features wanton and gratuitous violence.
+rottexpr:
+rottexpr: The rottexpr engine supports SDL2, high screen resolutions,
+rottexpr: borderless windows, and more.
diff --git a/games/rpcs3/README b/games/rpcs3/README
new file mode 100644
index 0000000000..a2e2db0978
--- /dev/null
+++ b/games/rpcs3/README
@@ -0,0 +1,7 @@
+The world's first free and open-source PlayStation 3 emulator/debugger,
+written in C++ for Windows, Linux, macOS and FreeBSD.
+
+You can find some basic information on our website. Game info is being
+populated on the Wiki. For discussion about this emulator, PS3
+emulation, and game compatibility reports, please visit our forums and
+our Discord server.
diff --git a/games/rpcs3/doinst.sh b/games/rpcs3/doinst.sh
new file mode 100644
index 0000000000..65c7e2eeb9
--- /dev/null
+++ b/games/rpcs3/doinst.sh
@@ -0,0 +1,9 @@
+if [ -x /usr/bin/update-desktop-database ]; then
+ /usr/bin/update-desktop-database -q usr/share/applications >/dev/null 2>&1
+fi
+
+if [ -e usr/share/icons/hicolor/icon-theme.cache ]; then
+ if [ -x /usr/bin/gtk-update-icon-cache ]; then
+ /usr/bin/gtk-update-icon-cache -f usr/share/icons/hicolor >/dev/null 2>&1
+ fi
+fi
diff --git a/games/rpcs3/rpcs3.SlackBuild b/games/rpcs3/rpcs3.SlackBuild
new file mode 100644
index 0000000000..4a6f4198f2
--- /dev/null
+++ b/games/rpcs3/rpcs3.SlackBuild
@@ -0,0 +1,167 @@
+#!/bin/bash
+
+# Slackware build script for rpcs3
+
+# Copyright 2022-2023 Steven Voges <Oregon, USA>
+# All rights reserved.
+#
+# Redistribution and use of this script, with or without modification, is
+# permitted provided that the following conditions are met:
+#
+# 1. Redistributions of this script must retain the above copyright
+# notice, this list of conditions and the following disclaimer.
+#
+# THIS SOFTWARE IS PROVIDED BY THE AUTHOR "AS IS" AND ANY EXPRESS OR IMPLIED
+# WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE IMPLIED WARRANTIES OF
+# MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE ARE DISCLAIMED. IN NO
+# EVENT SHALL THE AUTHOR BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL,
+# SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT LIMITED TO,
+# PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, DATA, OR PROFITS;
+# OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY,
+# WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR
+# OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF THIS SOFTWARE, EVEN IF
+# ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
+
+cd $(dirname $0) ; CWD=$(pwd)
+
+PRGNAM=rpcs3
+VERSION=${VERSION:-0.0.27}
+COMMITVER=${COMMITVER:-0178b20}
+COMMITNUM=${COMMITNUM:-14783}
+ASMJIT=${ASMJIT:-06d0badec53710a4f572cf5642881ce570c5d274}
+CUBEB=${CUBEB:-70b4e3db7822de4d534959885cda109d6edbee36}
+GLSLANG=${GLSLANG:-10423ec659d301a0ff2daac8bbf38980abf27590}
+HIDAPI=${HIDAPI:-ecf1b62882c1b6ca1da445fa94ee8dae42cf5961}
+ITTAPI=${ITTAPI:-3.18.12}
+LLVM=${LLVM:-9b52b6c39ae9f0759fbce7dd0db4b3290d6ebc56}
+MINIUPNP=${MINIUPNP:-f4a739d73083bee207af30b8aa3e668383ee070e}
+SOUNDTOUCH=${SOUNDTOUCH:-83cfba67b6af80bb9bfafc0b324718c4841f2991}
+SPIRVHEADERS=${SPIRVHEADERS:-85a1ed200d50660786c1a88d9166e871123cce39}
+SPIRVTOOLS=${SPIRVTOOLS:-eb0a36633d2acf4de82588504f951ad0f2cecacb}
+WOLFSSL=${WOLFSSL:-4fbd4fd36a21efd9d1a7e17aba390e91c78693b1}
+YAMLCPP=${YAMLCPP:-0b67821f307e8c6bf0eba9b6d3250e3cf1441450}
+BUILD=${BUILD:-1}
+TAG=${TAG:-_SBo}
+PKGTYPE=${PKGTYPE:-tgz}
+
+if [ -z "$ARCH" ]; then
+ case "$( uname -m )" in
+ i?86) ARCH=i586 ;;
+ arm*) ARCH=arm ;;
+ *) ARCH=$( uname -m ) ;;
+ esac
+fi
+
+if [ ! -z "${PRINT_PACKAGE_NAME}" ]; then
+ echo "$PRGNAM-$VERSION-$ARCH-$BUILD$TAG.$PKGTYPE"
+ exit 0
+fi
+
+TMP=${TMP:-/tmp/SBo}
+PKG=$TMP/package-$PRGNAM
+OUTPUT=${OUTPUT:-/tmp}
+DEPS=$TMP/$PRGNAM-$VERSION/3rdparty
+
+if [ "$ARCH" = "i586" ]; then
+ SLKCFLAGS="-O2 -march=i586 -mtune=i686"
+ LIBDIRSUFFIX=""
+elif [ "$ARCH" = "i686" ]; then
+ SLKCFLAGS="-O2 -march=i686 -mtune=i686"
+ LIBDIRSUFFIX=""
+elif [ "$ARCH" = "x86_64" ]; then
+ SLKCFLAGS="-O2 -fPIC"
+ LIBDIRSUFFIX="64"
+else
+ SLKCFLAGS="-O2"
+ LIBDIRSUFFIX=""
+fi
+
+set -e
+
+rm -rf $PKG
+mkdir -p $TMP $PKG $OUTPUT
+cd $TMP
+rm -rf $PRGNAM-$VERSION
+tar xvf $CWD/$PRGNAM-$VERSION.tar.gz
+cd $PRGNAM-$VERSION
+
+mkdir -p $TMP/$PRGNAM-$VERSION/build/3rdparty/llvm_build/ittapi
+tar xvf $CWD/SPIRV-Headers-$SPIRVHEADERS.tar.gz -C \
+ $DEPS/SPIRV/SPIRV-Headers --strip-components 1
+tar xvf $CWD/SPIRV-Tools-$SPIRVTOOLS.tar.gz -C \
+ $DEPS/SPIRV/SPIRV-Tools --strip-components 1
+tar xvf $CWD/asmjit-$ASMJIT.tar.gz -C \
+ $DEPS/asmjit/asmjit --strip-components 1
+tar xvf $CWD/cubeb-$CUBEB.tar.gz -C \
+ $DEPS/cubeb/cubeb --strip-components 1
+tar xvf $CWD/glslang-$GLSLANG.tar.gz -C \
+ $DEPS/glslang/glslang --strip-components 1
+tar xvf $CWD/hidapi-$HIDAPI.tar.gz -C \
+ $DEPS/hidapi/hidapi --strip-components 1
+tar xvf $CWD/ittapi-$ITTAPI.tar.gz -C \
+ $TMP/$PRGNAM-$VERSION/build/3rdparty/llvm_build/ittapi --strip-components 1
+tar xvf $CWD/llvm-mirror-$LLVM.tar.gz -C \
+ $DEPS/../llvm --strip-components 1
+tar xvf $CWD/miniupnp-$MINIUPNP.tar.gz -C \
+ $DEPS/miniupnp/miniupnp --strip-components 1
+tar xvf $CWD/soundtouch-$SOUNDTOUCH.tar.gz -C \
+ $DEPS/SoundTouch/soundtouch --strip-components 1
+tar xvf $CWD/wolfssl-$WOLFSSL.tar.gz -C \
+ $DEPS/wolfssl/wolfssl --strip-components 1
+tar xvf $CWD/yaml-cpp-$YAMLCPP.tar.gz -C \
+ $DEPS/yaml-cpp/yaml-cpp --strip-components 1
+
+#Bypass git checkout check for ittapi
+sed -i 's/if(NOT GIT_CHECKOUT_RESULT EQUAL "0")/if(GIT_CHECKOUT_RESULT EQUAL "0")/g' \
+ llvm/lib/ExecutionEngine/IntelJITEvents/CMakeLists.txt
+
+#Set correct version
+sed -i "s/set(RPCS3_GIT_VERSION \"local_build\")/set(RPCS3_GIT_VERSION \"$COMMITNUM-$COMMITVER\")/g" \
+ rpcs3/git-version.cmake
+sed -i 's/set(RPCS3_GIT_BRANCH "local_build")/set(RPCS3_GIT_BRANCH "master")/g' \
+ rpcs3/git-version.cmake
+
+chown -R root:root .
+find -L . \
+ \( -perm 777 -o -perm 775 -o -perm 750 -o -perm 711 -o -perm 555 \
+ -o -perm 511 \) -exec chmod 755 {} \; -o \
+ \( -perm 666 -o -perm 664 -o -perm 640 -o -perm 600 -o -perm 444 \
+ -o -perm 440 -o -perm 400 \) -exec chmod 644 {} \;
+
+cd build
+ cmake \
+ -Wno-dev \
+ -DCMAKE_C_FLAGS:STRING="$SLKCFLAGS" \
+ -DCMAKE_CXX_FLAGS:STRING="$SLKCFLAGS" \
+ -DCMAKE_INSTALL_PREFIX=/usr \
+ -DUSE_SYSTEM_CURL=ON \
+ -DUSE_SYSTEM_FAUDIO=ON \
+ -DUSE_SYSTEM_FFMPEG=ON \
+ -DUSE_SYSTEM_FLATBUFFERS=ON \
+ -DUSE_SYSTEM_LIBPNG=ON \
+ -DUSE_SYSTEM_LIBUSB=ON \
+ -DUSE_SYSTEM_PUGIXML=ON \
+ -DUSE_SYSTEM_XXHASH=ON \
+ -DUSE_SYSTEM_ZLIB=ON \
+ -DCMAKE_BUILD_TYPE=Release ..
+ make
+ make install/strip DESTDIR=$PKG
+cd ..
+
+rm -r $PKG/usr/share/$PRGNAM/git
+
+find $PKG -print0 | xargs -0 file | grep -e "executable" -e "shared object" | grep ELF \
+ | cut -f 1 -d : | xargs strip --strip-unneeded 2> /dev/null || true
+
+mkdir -p $PKG/usr/doc/$PRGNAM-$VERSION
+cp -a \
+ LICENSE README.md \
+ $PKG/usr/doc/$PRGNAM-$VERSION
+cat $CWD/$PRGNAM.SlackBuild > $PKG/usr/doc/$PRGNAM-$VERSION/$PRGNAM.SlackBuild
+
+mkdir -p $PKG/install
+cat $CWD/slack-desc > $PKG/install/slack-desc
+cat $CWD/doinst.sh > $PKG/install/doinst.sh
+
+cd $PKG
+/sbin/makepkg -l y -c n $OUTPUT/$PRGNAM-$VERSION-$ARCH-$BUILD$TAG.$PKGTYPE
diff --git a/games/rpcs3/rpcs3.info b/games/rpcs3/rpcs3.info
new file mode 100644
index 0000000000..d37465344c
--- /dev/null
+++ b/games/rpcs3/rpcs3.info
@@ -0,0 +1,34 @@
+PRGNAM="rpcs3"
+VERSION="0.0.27"
+HOMEPAGE="https://rpcs3.net"
+DOWNLOAD="UNSUPPORTED"
+MD5SUM=""
+DOWNLOAD_x86_64="https://github.com/RPCS3/rpcs3/archive/v0.0.27/rpcs3-0.0.27.tar.gz \
+ https://github.com/KhronosGroup/SPIRV-Headers/archive/85a1ed200d50660786c1a88d9166e871123cce39/SPIRV-Headers-85a1ed200d50660786c1a88d9166e871123cce39.tar.gz \
+ https://github.com/KhronosGroup/SPIRV-Tools/archive/eb0a36633d2acf4de82588504f951ad0f2cecacb/SPIRV-Tools-eb0a36633d2acf4de82588504f951ad0f2cecacb.tar.gz \
+ https://github.com/RPCS3/asmjit/archive/06d0badec53710a4f572cf5642881ce570c5d274/asmjit-06d0badec53710a4f572cf5642881ce570c5d274.tar.gz \
+ https://github.com/mozilla/cubeb/archive/70b4e3db7822de4d534959885cda109d6edbee36/cubeb-70b4e3db7822de4d534959885cda109d6edbee36.tar.gz \
+ https://github.com/KhronosGroup/glslang/archive/10423ec659d301a0ff2daac8bbf38980abf27590/glslang-10423ec659d301a0ff2daac8bbf38980abf27590.tar.gz \
+ https://github.com/RPCS3/hidapi/archive/ecf1b62882c1b6ca1da445fa94ee8dae42cf5961/hidapi-ecf1b62882c1b6ca1da445fa94ee8dae42cf5961.tar.gz \
+ https://github.com/intel/ittapi/archive/v3.18.12/ittapi-3.18.12.tar.gz \
+ https://github.com/RPCS3/llvm-mirror/archive/9b52b6c39ae9f0759fbce7dd0db4b3290d6ebc56/llvm-mirror-9b52b6c39ae9f0759fbce7dd0db4b3290d6ebc56.tar.gz \
+ https://github.com/miniupnp/miniupnp/archive/f4a739d73083bee207af30b8aa3e668383ee070e/miniupnp-f4a739d73083bee207af30b8aa3e668383ee070e.tar.gz \
+ https://github.com/RPCS3/soundtouch/archive/83cfba67b6af80bb9bfafc0b324718c4841f2991/soundtouch-83cfba67b6af80bb9bfafc0b324718c4841f2991.tar.gz \
+ https://github.com/wolfSSL/wolfssl/archive/4fbd4fd36a21efd9d1a7e17aba390e91c78693b1/wolfssl-4fbd4fd36a21efd9d1a7e17aba390e91c78693b1.tar.gz \
+ https://github.com/RPCS3/yaml-cpp/archive/0b67821f307e8c6bf0eba9b6d3250e3cf1441450/yaml-cpp-0b67821f307e8c6bf0eba9b6d3250e3cf1441450.tar.gz"
+MD5SUM_x86_64="e49fa5ab11967f88471627513a6c6298 \
+ 10d5e8160f39344a641523810b075568 \
+ a4bdb8161f0e959c75d0d82d367c24f2 \
+ 26455042d0e12b9b4eff611f0767e42e \
+ f211db8fbdfd1db70e2fd517643bf88a \
+ 0af2d9f95c55adf7c670f25825eeda12 \
+ 985de60b3d3914fa73724ab123aac637 \
+ 4a5eee8a589fa777f4a6017ab1e6f602 \
+ fff968ef77c2932c340b4c0d56247679 \
+ 9dc008de95815524d6c6a04b61395ea7 \
+ a6e4341748f10956754201939b9936e4 \
+ 538eed5fafa1db75cd0b90fb5021a819 \
+ 4ff126bd4f429b86da943a77805dfec8"
+REQUIRES="FAudio flatbuffers pugixml"
+MAINTAINER="Steven Voges"
+EMAIL="svoges.sbo@gmail.com"
diff --git a/games/rpcs3/slack-desc b/games/rpcs3/slack-desc
new file mode 100644
index 0000000000..79070f7342
--- /dev/null
+++ b/games/rpcs3/slack-desc
@@ -0,0 +1,19 @@
+# HOW TO EDIT THIS FILE:
+# The "handy ruler" below makes it easier to edit a package description.
+# Line up the first '|' above the ':' following the base package name, and
+# the '|' on the right side marks the last column you can put a character in.
+# You must make exactly 11 lines for the formatting to be correct. It's also
+# customary to leave one space after the ':' except on otherwise blank lines.
+
+ |-----handy-ruler------------------------------------------------------|
+rpcs3: rpcs3 (Playstation 3 Emulator)
+rpcs3:
+rpcs3: PS3 emulator/debugger
+rpcs3:
+rpcs3: Homepage: https://rpcs3.net
+rpcs3:
+rpcs3:
+rpcs3:
+rpcs3:
+rpcs3:
+rpcs3:
diff --git a/games/sameboy/README b/games/sameboy/README
new file mode 100644
index 0000000000..51a51988ca
--- /dev/null
+++ b/games/sameboy/README
@@ -0,0 +1,39 @@
+SameBoy is an open source Game Boy (DMG) and Game Boy Color (CGB)
+emulator, written in portable C. It has a native Cocoa frontend for
+macOS, an SDL frontend for other operating systems, and a libretro
+core. It also includes a text-based debugger with an expression
+evaluator.
+
+Features
+
+Features common to both Cocoa and SDL versions:
+ * Supports Game Boy (DMG) and Game Boy Color (CGB) emulation
+ * Lets you choose the model you want to emulate regardless of ROM
+ * High quality 96KHz audio
+ * Battery save support
+ * Save states
+ * Includes open source DMG and CGB boot ROMs:
+ * Complete support for (and documentation of) all game-specific
+ palettes in the CGB boot ROM, for accurate emulation of Game
+ Boy games on a Game Boy Color
+ * Supports manual palette selection with key combinations, with
+ 4 additional new palettes (A + B + direction)
+ * Supports palette selection in a CGB game, forcing it to run in
+ 'paletted' DMG mode, if ROM allows doing so.
+ * Support for games with a non-Nintendo logo in the header
+ * No long animation in the DMG boot
+ * Advanced text-based debugger with an expression evaluator,
+ disassembler, conditional breakpoints, conditional watchpoints,
+ backtracing and other features
+ * Extremely high accuracy
+ * Emulates PCM_12 and PCM_34 registers
+ * T-cycle accurate emulation of LCD timing effects, supporting the
+ Demotronic trick, Prehistorik Man, GBVideoPlayer and other tech
+ demos
+ * Real time clock emulation
+ * Retina/High DPI display support, allowing a wider range of scaling
+ factors without artifacts
+ * Optional frame blending (Requires OpenGL 3.2 or later)
+ * Several scaling algorithms (Including exclusive algorithms like
+ OmniScale and Anti-aliased Scale2x; Requires OpenGL 3.2 or later
+ or Metal)
diff --git a/games/sameboy/doinst.sh b/games/sameboy/doinst.sh
new file mode 100644
index 0000000000..65c7e2eeb9
--- /dev/null
+++ b/games/sameboy/doinst.sh
@@ -0,0 +1,9 @@
+if [ -x /usr/bin/update-desktop-database ]; then
+ /usr/bin/update-desktop-database -q usr/share/applications >/dev/null 2>&1
+fi
+
+if [ -e usr/share/icons/hicolor/icon-theme.cache ]; then
+ if [ -x /usr/bin/gtk-update-icon-cache ]; then
+ /usr/bin/gtk-update-icon-cache -f usr/share/icons/hicolor >/dev/null 2>&1
+ fi
+fi
diff --git a/games/sameboy/sameboy.SlackBuild b/games/sameboy/sameboy.SlackBuild
new file mode 100644
index 0000000000..cf62efb606
--- /dev/null
+++ b/games/sameboy/sameboy.SlackBuild
@@ -0,0 +1,118 @@
+#!/bin/bash
+
+# Slackware build script for sameboy
+
+# Copyright 2023 Steven Voges <Oregon, USA>
+# All rights reserved.
+#
+# Redistribution and use of this script, with or without modification, is
+# permitted provided that the following conditions are met:
+#
+# 1. Redistributions of this script must retain the above copyright
+# notice, this list of conditions and the following disclaimer.
+#
+# THIS SOFTWARE IS PROVIDED BY THE AUTHOR "AS IS" AND ANY EXPRESS OR IMPLIED
+# WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE IMPLIED WARRANTIES OF
+# MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE ARE DISCLAIMED. IN NO
+# EVENT SHALL THE AUTHOR BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL,
+# SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT LIMITED TO,
+# PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, DATA, OR PROFITS;
+# OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY,
+# WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR
+# OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF THIS SOFTWARE, EVEN IF
+# ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
+
+cd $(dirname $0) ; CWD=$(pwd)
+
+PRGNAM=sameboy
+SRCNAM=SameBoy
+VERSION=${VERSION:-0.15.8}
+BUILD=${BUILD:-1}
+TAG=${TAG:-_SBo}
+PKGTYPE=${PKGTYPE:-tgz}
+
+if [ -z "$ARCH" ]; then
+ case "$( uname -m )" in
+ i?86) ARCH=i586 ;;
+ arm*) ARCH=arm ;;
+ *) ARCH=$( uname -m ) ;;
+ esac
+fi
+
+if [ ! -z "${PRINT_PACKAGE_NAME}" ]; then
+ echo "$PRGNAM-$VERSION-$ARCH-$BUILD$TAG.$PKGTYPE"
+ exit 0
+fi
+
+TMP=${TMP:-/tmp/SBo}
+PKG=$TMP/package-$PRGNAM
+OUTPUT=${OUTPUT:-/tmp}
+
+if [ "$ARCH" = "i586" ]; then
+ SLKCFLAGS="-O2 -march=i586 -mtune=i686"
+ LIBDIRSUFFIX=""
+elif [ "$ARCH" = "i686" ]; then
+ SLKCFLAGS="-O2 -march=i686 -mtune=i686"
+ LIBDIRSUFFIX=""
+elif [ "$ARCH" = "x86_64" ]; then
+ SLKCFLAGS="-O2 -fPIC"
+ LIBDIRSUFFIX="64"
+elif [ "$ARCH" = "aarch64" ]; then
+ SLKCFLAGS="-O2 -fPIC"
+ LIBDIRSUFFIX="64"
+else
+ SLKCFLAGS="-O2"
+ LIBDIRSUFFIX=""
+fi
+
+set -e
+
+rm -rf $PKG
+mkdir -p $TMP $PKG $OUTPUT
+cd $TMP
+rm -rf $SRCNAM-$VERSION
+tar xvf $CWD/$SRCNAM-$VERSION.tar.gz
+cd $SRCNAM-$VERSION
+chown -R root:root .
+find -L . \
+ \( -perm 777 -o -perm 775 -o -perm 750 -o -perm 711 -o -perm 555 \
+ -o -perm 511 \) -exec chmod 755 {} \; -o \
+ \( -perm 666 -o -perm 664 -o -perm 640 -o -perm 600 -o -perm 444 \
+ -o -perm 440 -o -perm 400 \) -exec chmod 644 {} \;
+
+sed -i "s/Icon=sameboy/Icon=sameboy-AppIcon/g" FreeDesktop/sameboy.desktop
+
+mkdir -p build
+cd build
+CFLAGS="$SLKCFLAGS" \
+CXXFLAGS="$SLKCFLAGS" \
+make -C .. sdl CONF=release
+install -vDm0755 bin/SDL/$PRGNAM $PKG/usr/bin/$PRGNAM
+install -vDm0644 bin/SDL/background.bmp $PKG/usr/share/$PRGNAM/background.bmp
+install -vDm0644 bin/SDL/registers.sym $PKG/usr/share/$PRGNAM/registers.sym
+install -vDm0644 bin/SDL/*.bin $PKG/usr/share/$PRGNAM/
+mkdir -p $PKG/usr/share/$PRGNAM/Palettes
+install -vDm0644 bin/SDL/Palettes/*.sbp $PKG/usr/share/$PRGNAM/Palettes/
+mkdir -p $PKG/usr/share/$PRGNAM/Shaders
+install -vDm0644 bin/SDL/Shaders/*.fsh $PKG/usr/share/$PRGNAM/Shaders/
+cd ..
+for NAME in AppIcon Cartridge ColorCartridge ; do
+ for SIZE in 16 32 64 128 256 512 ; do
+ install -vDm0644 FreeDesktop/$NAME/${SIZE}x$SIZE.png \
+ $PKG/usr/share/icons/hicolor/${SIZE}x$SIZE/apps/${PRGNAM}-$NAME.png
+ done
+done
+install -vDm0644 FreeDesktop/$PRGNAM.desktop $PKG/usr/share/applications/$PRGNAM.desktop
+
+mkdir -p $PKG/usr/doc/$PRGNAM-$VERSION
+cp -a \
+ BESS.md CHANGES.md CONTRIBUTING.md LICENSE README.md \
+ $PKG/usr/doc/$PRGNAM-$VERSION
+cat $CWD/$PRGNAM.SlackBuild > $PKG/usr/doc/$PRGNAM-$VERSION/$PRGNAM.SlackBuild
+
+mkdir -p $PKG/install
+cat $CWD/slack-desc > $PKG/install/slack-desc
+cat $CWD/doinst.sh > $PKG/install/doinst.sh
+
+cd $PKG
+/sbin/makepkg -l y -c n $OUTPUT/$PRGNAM-$VERSION-$ARCH-$BUILD$TAG.$PKGTYPE
diff --git a/games/sameboy/sameboy.info b/games/sameboy/sameboy.info
new file mode 100644
index 0000000000..d5a45df11c
--- /dev/null
+++ b/games/sameboy/sameboy.info
@@ -0,0 +1,10 @@
+PRGNAM="sameboy"
+VERSION="0.15.8"
+HOMEPAGE="https://sameboy.github.io"
+DOWNLOAD="https://github.com/LIJI32/SameBoy/archive/v0.15.8/SameBoy-0.15.8.tar.gz"
+MD5SUM="d5bf07419f3ee05679672f7728f467e3"
+DOWNLOAD_x86_64=""
+MD5SUM_x86_64=""
+REQUIRES="rgbds"
+MAINTAINER="Steven Voges"
+EMAIL="svoges.sbo@gmail.com"
diff --git a/games/sameboy/slack-desc b/games/sameboy/slack-desc
new file mode 100644
index 0000000000..ccd1f80a4f
--- /dev/null
+++ b/games/sameboy/slack-desc
@@ -0,0 +1,19 @@
+# HOW TO EDIT THIS FILE:
+# The "handy ruler" below makes it easier to edit a package description.
+# Line up the first '|' above the ':' following the base package name, and
+# the '|' on the right side marks the last column you can put a character in.
+# You must make exactly 11 lines for the formatting to be correct. It's also
+# customary to leave one space after the ':' except on otherwise blank lines.
+
+ |-----handy-ruler------------------------------------------------------|
+sameboy: sameboy (GB/GBC Emulator)
+sameboy:
+sameboy: Game Boy and Game Boy Color emulator written in C
+sameboy:
+sameboy: Homepage: https://sameboy.github.io
+sameboy:
+sameboy:
+sameboy:
+sameboy:
+sameboy:
+sameboy:
diff --git a/games/sauerbraten/sauerbraten.SlackBuild b/games/sauerbraten/sauerbraten.SlackBuild
index dfc2660fa3..a87eb684fa 100644
--- a/games/sauerbraten/sauerbraten.SlackBuild
+++ b/games/sauerbraten/sauerbraten.SlackBuild
@@ -1,38 +1,70 @@
-#!/bin/sh
+#!/bin/bash
# Slackware build script for sauerbraten
# Written by Larry Hajali <larryhaja[at]gmail[dot]com>
-# New SBo maintainer: Edward Koenig <kingbeowulf[at]gmail[dot]com>
+# New SBo maintainer: Edward Koenig <kingbeowulf[at]linuxgalaxy[dot]org>
#
+# Copyright 2021 Edward W. Koenig, Vancouver, WA, USA
+# All rights reserved.
+#
+# Redistribution and use in source and binary forms, with or without
+# modification, are permitted provided that the following conditions are
+# met:
+#
+# * Redistributions of source code must retain the above copyright
+# notice, this list of conditions and the following disclaimer.
+#
+# THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS
+# "AS IS" AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT
+# LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR
+# A PARTICULAR PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT
+# OWNER OR CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL,
+# SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT
+# LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE,
+# DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY
+# THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT
+# (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE
+# OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
+
# Changelog
#---------------------------------------------------------------------------------------
-# 1.0 26-DEC-2011 New SBo maintainer: Edward Koenig <kingbeowulf[at]gmail[dot]com>
-# 2.0 23-JUN-2013 new version, script clean up.
-#
+# 1.0 26-DEC-2011 New SBo maintainer: Edward Koenig <kingbeowulf[at]gmail[dot]com>
+# 2.0 23-JUN-2013 new version, script clean up.
+# 3.0 18-APR-2021 new version, added copyright notice
+# 3.1 02-MAY-2023 updated version
+
+
+cd $(dirname $0) ; CWD=$(pwd)
PRGNAM=sauerbraten
-VERSION=${VERSION:-2013_02_03}
+VERSION=${VERSION:-2020_12_29}
BUILD=${BUILD:-1}
TAG=${TAG:-_SBo}
-
-EDITION=${EDITION:-collect_edition}
+PKGTYPE=${PKGTYPE:-tgz}
if [ -z "$ARCH" ]; then
case "$( uname -m )" in
- i?86) ARCH=i486 ;;
+ i?86) ARCH=i586 ;;
arm*) ARCH=arm ;;
*) ARCH=$( uname -m ) ;;
esac
fi
-CWD=$(pwd)
+# If the variable PRINT_PACKAGE_NAME is set, then this script will report what
+# the name of the created package would be, and then exit. This information
+# could be useful to other scripts.
+if [ ! -z "${PRINT_PACKAGE_NAME}" ]; then
+ echo "$PRGNAM-$VERSION-$ARCH-$BUILD$TAG.$PKGTYPE"
+ exit 0
+fi
+
TMP=${TMP:-/tmp/SBo}
PKG=$TMP/package-$PRGNAM
OUTPUT=${OUTPUT:-/tmp}
-if [ "$ARCH" = "i486" ]; then
- SLKCFLAGS="-O2 -march=i486 -mtune=i686"
+if [ "$ARCH" = "i586" ]; then
+ SLKCFLAGS="-O2 -march=i586 -mtune=i686"
elif [ "$ARCH" = "i686" ]; then
SLKCFLAGS="-O2 -march=i686 -mtune=i686"
elif [ "$ARCH" = "x86_64" ]; then
@@ -47,7 +79,7 @@ rm -rf $PKG
mkdir -p $TMP $PKG $OUTPUT
cd $TMP
rm -rf $PRGNAM
-tar xvf $CWD/${PRGNAM}_${VERSION}_${EDITION}_linux.tar.bz2
+tar xvf $CWD/${PRGNAM}_${VERSION}_linux.tar.bz2
cd $PRGNAM
chown -R root:root .
find -L . \
@@ -62,7 +94,6 @@ rm -f bin_unix/*
sed -i \
-e "s|-O3|$SLKCFLAGS|" \
-e '/\$(STRIP) \.\./d' \
- -e "s|\./configure|CFLAGS=\"$SLKCFLAGS\" \./configure|" \
src/Makefile
make -C src
@@ -97,4 +128,4 @@ cat $CWD/slack-desc > $PKG/install/slack-desc
cat $CWD/doinst.sh > $PKG/install/doinst.sh
cd $PKG
-/sbin/makepkg -l y -c n $OUTPUT/$PRGNAM-$VERSION-$ARCH-$BUILD$TAG.${PKGTYPE:-tgz}
+/sbin/makepkg -l y -c n $OUTPUT/$PRGNAM-$VERSION-$ARCH-$BUILD$TAG.$PKGTYPE
diff --git a/games/sauerbraten/sauerbraten.info b/games/sauerbraten/sauerbraten.info
index e88da861e2..b4f4e3200f 100644
--- a/games/sauerbraten/sauerbraten.info
+++ b/games/sauerbraten/sauerbraten.info
@@ -1,10 +1,10 @@
PRGNAM="sauerbraten"
-VERSION="2013_02_03"
+VERSION="2020_12_29"
HOMEPAGE="http://www.sauerbraten.org/"
-DOWNLOAD="http://downloads.sourceforge.net/sauerbraten/sauerbraten_2013_02_03_collect_edition_linux.tar.bz2"
-MD5SUM="2cfbd619981402898f97b93be08d58ac"
+DOWNLOAD="http://downloads.sourceforge.net/sauerbraten/sauerbraten_2020_12_29_linux.tar.bz2"
+MD5SUM="b50d018f7dd6259f1fc12b56028a51b5"
DOWNLOAD_x86_64=""
MD5SUM_x86_64=""
REQUIRES=""
MAINTAINER="Edward W. Koenig"
-EMAIL="kingbeowulf[at]gmail[dot]com"
+EMAIL="kingbeowulf@linuxgalaxy.org"
diff --git a/games/scid/scid.SlackBuild b/games/scid/scid.SlackBuild
index 946a251fd7..48e019888d 100644
--- a/games/scid/scid.SlackBuild
+++ b/games/scid/scid.SlackBuild
@@ -1,4 +1,4 @@
-#!/bin/sh
+#!/bin/bash
# Slackware build script for scid
@@ -7,10 +7,13 @@
# Modified by Robby Workman <rworkman@slackbuilds.org>
+cd $(dirname $0) ; CWD=$(pwd)
+
PRGNAM=scid
VERSION=${VERSION:-4.3}
BUILD=${BUILD:-1}
TAG=${TAG:-_SBo}
+PKGTYPE=${PKGTYPE:-tgz}
if [ -z "$ARCH" ]; then
case "$( uname -m )" in
@@ -20,7 +23,14 @@ if [ -z "$ARCH" ]; then
esac
fi
-CWD=$(pwd)
+# If the variable PRINT_PACKAGE_NAME is set, then this script will report what
+# the name of the created package would be, and then exit. This information
+# could be useful to other scripts.
+if [ ! -z "${PRINT_PACKAGE_NAME}" ]; then
+ echo "$PRGNAM-$VERSION-$ARCH-$BUILD$TAG.$PKGTYPE"
+ exit 0
+fi
+
TMP=${TMP:-/tmp/SBo}
PKG=$TMP/package-$PRGNAM
OUTPUT=${OUTPUT:-/tmp}
@@ -123,4 +133,4 @@ cat $CWD/slack-desc > $PKG/install/slack-desc
cat $CWD/doinst.sh > $PKG/install/doinst.sh
cd $PKG
-/sbin/makepkg -l y -c n $OUTPUT/$PRGNAM-$VERSION-$ARCH-$BUILD$TAG.${PKGTYPE:-tgz}
+/sbin/makepkg -l y -c n $OUTPUT/$PRGNAM-$VERSION-$ARCH-$BUILD$TAG.$PKGTYPE
diff --git a/games/scid/scid.info b/games/scid/scid.info
index 323872d89e..3fc3733be3 100644
--- a/games/scid/scid.info
+++ b/games/scid/scid.info
@@ -6,5 +6,5 @@ MD5SUM="66592f91b690458d3aecb582142fc159"
DOWNLOAD_x86_64=""
MD5SUM_x86_64=""
REQUIRES=""
-MAINTAINER="Nicky Chorley"
-EMAIL="nick.chorley@gmail.com"
+MAINTAINER="orphaned (no maintainer)"
+EMAIL="nobody@domain.com"
diff --git a/games/scid_vs_pc/README b/games/scid_vs_pc/README
index d936369322..6a9414bb7d 100644
--- a/games/scid_vs_pc/README
+++ b/games/scid_vs_pc/README
@@ -1,13 +1,14 @@
-Scid vs. PC is a usability and bug-fix fork of Scid with some new features.
-The project is authored by Stevenaaus, and has been extensively tested
+Scid vs. PC is a usability and bug-fix fork of Scid with some
+new features. The project is authored by Stevenaaus, and has been
+extensively tested
SCID: Shane's Chess Information Database is a powerful Chess Toolkit,
with which one can create huge chess databases, run engine analysis,
-or play casual games against the computer or online with the
-Free Internet Chess Server. It was originally written by Shane Hudson,
-and has received strong contribution from Pascal Georges and others.
+or play casual games against the computer or online with the Free
+Internet Chess Server. It was originally written by Shane Hudson, and
+has received strong contribution from Pascal Georges and others.
-NOTE: As a usability and bug-fix fork of Scid, this package also have
+NOTE: As a usability and bug-fix fork of Scid, this package also has
a /usr/bin/scid binary, so after installing scid_vs_pc, the binary
with the same name from the original scid package will be overwritten.
We suggest that one should only use either scid_vs_pc or the original
diff --git a/games/scid_vs_pc/doinst.sh b/games/scid_vs_pc/doinst.sh
index d452a46662..da7af062c9 100644
--- a/games/scid_vs_pc/doinst.sh
+++ b/games/scid_vs_pc/doinst.sh
@@ -7,3 +7,7 @@ if [ -e usr/share/icons/hicolor/icon-theme.cache ]; then
/usr/bin/gtk-update-icon-cache -f usr/share/icons/hicolor >/dev/null 2>&1
fi
fi
+
+if [ -x /usr/bin/fc-cache ]; then
+ /usr/bin/fc-cache -f
+fi
diff --git a/games/scid_vs_pc/scid_vs_pc.SlackBuild b/games/scid_vs_pc/scid_vs_pc.SlackBuild
index ca5072644e..c218dabe8b 100644
--- a/games/scid_vs_pc/scid_vs_pc.SlackBuild
+++ b/games/scid_vs_pc/scid_vs_pc.SlackBuild
@@ -1,4 +1,4 @@
-#!/bin/sh
+#!/bin/bash
# Slackware build script for Scid vs. PC
@@ -23,10 +23,21 @@
# OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF THIS SOFTWARE, EVEN IF
# ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
+# 20220501 bkw: Modified by SlackBuilds.org, BUILD=2:
+# - move TTF fonts to correct directory, which enables the
+# Chess Figurines option in the PGN window.
+# - add fc-cache to doinst.sh.
+# - add SlackBuild to doc dir.
+# Note to maintainer: please consider moving the binaries from /usr/bin
+# to /usr/games.
+
+cd $(dirname $0) ; CWD=$(pwd)
+
PRGNAM=scid_vs_pc
-VERSION=${VERSION:-4.21}
-BUILD=${BUILD:-1}
+VERSION=${VERSION:-4.24}
+BUILD=${BUILD:-2}
TAG=${TAG:-_SBo}
+PKGTYPE=${PKGTYPE:-tgz}
if [ -z "$ARCH" ]; then
case "$( uname -m )" in
@@ -36,7 +47,11 @@ if [ -z "$ARCH" ]; then
esac
fi
-CWD=$(pwd)
+if [ ! -z "${PRINT_PACKAGE_NAME}" ]; then
+ echo "$PRGNAM-$VERSION-$ARCH-$BUILD$TAG.$PKGTYPE"
+ exit 0
+fi
+
TMP=${TMP:-/tmp/SBo}
PKG=$TMP/package-$PRGNAM
OUTPUT=${OUTPUT:-/tmp}
@@ -65,25 +80,34 @@ cd $PRGNAM-$VERSION
chown -R root:root .
find -L . \
\( -perm 777 -o -perm 775 -o -perm 750 -o -perm 711 -o -perm 555 \
- -o -perm 511 \) -exec chmod 755 {} \; -o \
+ -o -perm 511 \) -exec chmod 755 {} \+ -o \
\( -perm 666 -o -perm 664 -o -perm 640 -o -perm 600 -o -perm 444 \
- -o -perm 440 -o -perm 400 \) -exec chmod 644 {} \;
+ -o -perm 440 -o -perm 400 \) -exec chmod 644 {} \+
+
+# 20220502 bkw: running fc-cache while building the package affects
+# the build host, not the package. there is no option to disable it,
+# so dike it out.
+sed -i '/^[\t ]*fc-cache/s,fc-cache,true,' Makefile.conf
+
+# 20220502 bkw: fonts were being installed to the wrong directory.
+# the configure command does not accept a FONTDIR option, but
+# the Makefile does.
CFLAGS="$SLKCFLAGS" \
CXXFLAGS="$SLKCFLAGS" \
./configure \
BINDIR=/usr/bin/ \
- SHAREDIR=/usr/share/scid/ \
- FONTDIR=/usr/share/fonts/truetype/Scid
+ SHAREDIR=/usr/share/scid/
make
-make install DESTDIR=$PKG
+make install DESTDIR=$PKG FONTDIR=$PKG/usr/share/fonts/TTF
find $PKG -print0 | xargs -0 file | grep -e "executable" -e "shared object" | grep ELF \
| cut -f 1 -d : | xargs strip --strip-unneeded 2> /dev/null
mkdir -p $PKG/usr/doc/$PRGNAM-$VERSION
-cp -a README.* COPYING doc/* $PKG/usr/doc/$PRGNAM-$VERSION
+install -m0644 README.* COPYING doc/* $PKG/usr/doc/$PRGNAM-$VERSION
+cat $CWD/$PRGNAM.SlackBuild > $PKG/usr/doc/$PRGNAM-$VERSION/$PRGNAM.SlackBuild
mkdir -p $PKG/usr/share/pixmaps
cp $TMP/$PRGNAM-$VERSION/icons/*.png $PKG/usr/share/pixmaps
@@ -96,4 +120,4 @@ cat $CWD/slack-desc > $PKG/install/slack-desc
cat $CWD/doinst.sh > $PKG/install/doinst.sh
cd $PKG
-/sbin/makepkg -l y -c n $OUTPUT/$PRGNAM-$VERSION-$ARCH-$BUILD$TAG.${PKGTYPE:-tgz}
+/sbin/makepkg -l y -c n $OUTPUT/$PRGNAM-$VERSION-$ARCH-$BUILD$TAG.$PKGTYPE
diff --git a/games/scid_vs_pc/scid_vs_pc.info b/games/scid_vs_pc/scid_vs_pc.info
index a219196685..5209c294c9 100644
--- a/games/scid_vs_pc/scid_vs_pc.info
+++ b/games/scid_vs_pc/scid_vs_pc.info
@@ -1,8 +1,8 @@
PRGNAM="scid_vs_pc"
-VERSION="4.21"
-HOMEPAGE="http://scidvspc.sourceforge.net/"
-DOWNLOAD="http://downloads.sourceforge.net/project/scidvspc/source/scid_vs_pc-4.21.tgz"
-MD5SUM="47ca0de274412e8cfaf95ee3c9dacbf3"
+VERSION="4.24"
+HOMEPAGE="https://scidvspc.sourceforge.net/"
+DOWNLOAD="https://downloads.sourceforge.net/project/scidvspc/source/scid_vs_pc-4.24.tgz"
+MD5SUM="3b7d710ac5ccd6ac3b72145328099349"
DOWNLOAD_x86_64=""
MD5SUM_x86_64=""
REQUIRES=""
diff --git a/games/scrabbleai/README b/games/scrabbleai/README
new file mode 100644
index 0000000000..94c7a48ae0
--- /dev/null
+++ b/games/scrabbleai/README
@@ -0,0 +1,4 @@
+scrabbleai (Scrabble[TM] game for Linux)
+
+scrabbleai is an application for Linux that lets you play the popular
+word game against a computer opponent at varying difficulties.
diff --git a/games/scrabbleai/doinst.sh b/games/scrabbleai/doinst.sh
new file mode 100644
index 0000000000..3e5691a052
--- /dev/null
+++ b/games/scrabbleai/doinst.sh
@@ -0,0 +1,9 @@
+if [ -x /usr/bin/update-desktop-database ]; then
+ /usr/bin/update-desktop-database -q usr/share/applications >/dev/null 2>&1
+fi
+
+if [ -e usr/share/icons/hicolor/icon-theme.cache ]; then
+ if [ -x /usr/bin/gtk-update-icon-cache ]; then
+ /usr/bin/gtk-update-icon-cache usr/share/icons/hicolor >/dev/null 2>&1
+ fi
+fi
diff --git a/games/scrabbleai/git2tarxz.sh b/games/scrabbleai/git2tarxz.sh
new file mode 100644
index 0000000000..03ef01a0ac
--- /dev/null
+++ b/games/scrabbleai/git2tarxz.sh
@@ -0,0 +1,42 @@
+#!/bin/sh
+
+# Create source tarball from git repo
+
+# Note that this script doesn't need to be run as root. It does need to
+# be able to write to the current directory it's run from.
+
+# Takes one optional argument, which is the commit or tag to create a
+# tarball of. With no arg, HEAD is used.
+
+PRGNAM=scrabbleai
+CLONE_URL=https://github.com/apikler/ScrabbleAI
+
+set -e
+
+GITDIR=$( mktemp -dt $PRGNAM.git.XXXXXX )
+rm -rf $GITDIR
+git clone $CLONE_URL $GITDIR
+
+CWD="$( pwd )"
+cd $GITDIR
+
+if [ "$1" != "" ]; then
+ git reset --hard "$1" || exit 1
+fi
+
+GIT_SHA=$( git rev-parse --short HEAD )
+
+DATE=$( git log --date=format:%Y%m%d --format=%cd | head -1 )
+
+VERSION=${DATE}_${GIT_SHA}
+
+find . -name .git\* -print0 | xargs -0 rm -rf
+
+cd "$CWD"
+rm -rf $PRGNAM-$VERSION $PRGNAM-$VERSION.tar.xz
+mv $GITDIR $PRGNAM-$VERSION
+tar cvfJ $PRGNAM-$VERSION.tar.xz $PRGNAM-$VERSION
+
+echo
+echo "Created tarball: $PRGNAM-$VERSION.tar.xz"
+echo "VERSION=$VERSION"
diff --git a/games/scrabbleai/scrabbleai.6 b/games/scrabbleai/scrabbleai.6
new file mode 100644
index 0000000000..f420645e94
--- /dev/null
+++ b/games/scrabbleai/scrabbleai.6
@@ -0,0 +1,154 @@
+.\" Man page generated from reStructuredText.
+.
+.
+.nr rst2man-indent-level 0
+.
+.de1 rstReportMargin
+\\$1 \\n[an-margin]
+level \\n[rst2man-indent-level]
+level margin: \\n[rst2man-indent\\n[rst2man-indent-level]]
+-
+\\n[rst2man-indent0]
+\\n[rst2man-indent1]
+\\n[rst2man-indent2]
+..
+.de1 INDENT
+.\" .rstReportMargin pre:
+. RS \\$1
+. nr rst2man-indent\\n[rst2man-indent-level] \\n[an-margin]
+. nr rst2man-indent-level +1
+.\" .rstReportMargin post:
+..
+.de UNINDENT
+. RE
+.\" indent \\n[an-margin]
+.\" old: \\n[rst2man-indent\\n[rst2man-indent-level]]
+.nr rst2man-indent-level -1
+.\" new: \\n[rst2man-indent\\n[rst2man-indent-level]]
+.in \\n[rst2man-indent\\n[rst2man-indent-level]]u
+..
+.TH "SCRABBLEAI" 6 "2023-03-24" "20150324_6f8db6b" "SlackBuilds.org"
+.SH NAME
+scrabbleai \- Scrabble[TM] game
+.\" RST source for scrabbleai(6) man page. Convert with:
+.
+.\" rst2man.py scrabbleai.rst > scrabbleai.6
+.
+.SH SYNOPSIS
+.sp
+\fBscrabbleai\fP
+.SH DESCRIPTION
+.sp
+\fBscrabbleai\fP is an application for Linux that lets you play
+the popular word game against a computer opponent at varying
+difficulties. It has a graphical user interface, and is played with
+the mouse and keyboard.
+.sp
+There is no way to play against another human, either locally or
+via the network. This is strictly a single\-player game.
+.sp
+There are no command\-line options.
+.SH GAMEPLAY
+.sp
+At startup, or after choosing \fBNew Game\fP from the \fBFile\fP menu, choose
+a difficulty level (1 to 10; default is 5), then click \fBStart Game\fP\&.
+.sp
+You (the human) always go first. If you don\(aqt like this, you can click
+\fBPass Turn\fP to make the AI play first. Remember that on the first
+turn, you have to place one of your tiles on the center square of the
+board.
+.sp
+On your turn, use the mouse to drag letter tiles onto the board
+to spell out a word in the usual Scrabble fashion. Your move isn\(aqt
+finalized until you click \fBMake Move\fP and the game decides your word
+is valid. Until then, you can move your tiles around as desired, or
+click \fBReturn Tiles to Rack\fP to start over.
+.sp
+When placing a blank tile, you\(aqll be prompted to right\-click on it and
+set the letter it represents. If you return the blank tile to the rack
+after doing this, don\(aqt forget to right\-click on it and press Space,
+to make it appear blank again. If you forget which tile was the blank
+one, it\(aqs the one with no score number in the lower\-right corner.
+.sp
+If your rack is empty at the end of the game, you still get a turn;
+you must click \fBPass Turn\fP to end the game. When the game is over,
+click \fBFile\fP => \fBNew Game\fP to start a new one.
+.SH NOTES
+.sp
+Note that the first time you start a new game, it will take
+longer than usual to launch as the dictionary is cached for future
+use. Subsequent games (even after relaunching the program) will be
+able to skip this step and start up faster.
+.sp
+The AI is based on an algorithm from a paper written by Andrew
+W. Appel and Guy J. Jacobson, which you can find here::
+\fI\%http://www.cs.cmu.edu/afs/cs/academic/class/15451\-s06/www/lectures/scrabble.pdf\fP
+.sp
+The AI is \fIreally\fP good. However many words you know, it knows
+more. On level 5, the AI beats the author of this man page about 50%
+of the time, with final scores averaging above 250. The original
+Scrabble rules say that a good player should be able to score 300, so
+your mileage may vary.
+.sp
+If you want to peek at the dictionary, there are two of them located
+in /usr/doc/scrabbleai\-20150324_6f8db6b/. \fBenable.txt\fP is used to validate
+your words, and a smaller \fBospd.txt\fP is used for the computer\(aqs
+words.
+.sp
+The game board is the standard 15x15 version, with the bonus squares
+in the regular locations. There\(aqs no way to customize the board or the
+tile distribution.
+.SH SCREENSHOTS
+.sp
+The intro screen: \fI\%https://apikler.github.io/ScrabbleAI/intro_screen.png\fP
+.sp
+The main game screen: \fI\%https://apikler.github.io/ScrabbleAI/game_screen.png\fP
+.sp
+A completed game: \fI\%https://apikler.github.io/ScrabbleAI/finished_game.png\fP
+.sp
+The help dialog: \fI\%https://apikler.github.io/ScrabbleAI/help_dialog.png\fP
+.SH VIDEOS
+.sp
+The AI makes a move: \fI\%https://apikler.github.io/ScrabbleAI/ai_move.html\fP
+.sp
+Resizing the window: \fI\%http://apikler.github.io/ScrabbleAI/resize.html\fP
+.SH FILES
+.sp
+The directory \fB~/.config/ScrabbleAI/\fP contains the settings and
+cached dictionary, as \fBperl\fP(1) \fBStorable\fP(3) files, which
+means they\(aqre not human\-reable or \-editable. If the directory or its
+contents do not exist at startup, \fBscrabbleai\fP will create them.
+.INDENT 0.0
+.TP
+.B \fBsettings\fP
+Application settings: default difficulty, window size and position.
+.TP
+.B \fBlibrary\fP
+Cached dictionary, used to speed program startup.
+.UNINDENT
+.SH COPYRIGHT
+.sp
+See the file /usr/doc/scrabbleai\-20150324_6f8db6b/LICENSE for license information.
+.SH AUTHORS
+.sp
+scrabbleai was written by apikler (GitHub username).
+.sp
+This man page written for the SlackBuilds.org project
+by B. Watson, and is licensed under the WTFPL.
+.SH DISCLAIMER
+.sp
+This program is free, not for profit, and for educational purposes
+only. Any usage of elements from the Scrabble board game is provided
+only to illustrate the functioning of the AI. Scrabble is a registered
+trademark belonging to Hasbro Inc in the US, and to J.W. Spear &
+Sons Ltd., a subsidiary of Mattel Inc., throughout the rest of the
+world. Neither the author nor this program are affiliated with the
+Scrabble Crossword Game, Hasbro, Spear & Sons, or Mattel in any
+fashion.
+.SH SEE ALSO
+.sp
+The scrabbleai homepage: \fI\%https://github.com/apikler/ScrabbleAI\fP
+.sp
+The Wikipedia entry on Scrabble: \fI\%https://en.wikipedia.org/wiki/Scrabble\fP
+.\" Generated by docutils manpage writer.
+.
diff --git a/games/scrabbleai/scrabbleai.SlackBuild b/games/scrabbleai/scrabbleai.SlackBuild
new file mode 100644
index 0000000000..91fb4dfbc8
--- /dev/null
+++ b/games/scrabbleai/scrabbleai.SlackBuild
@@ -0,0 +1,114 @@
+#!/bin/bash
+
+# Slackware build script for scrabbleai
+
+# Written by B. Watson (urchlay@slackware.uk)
+
+# Licensed under the WTFPL. See http://www.wtfpl.net/txt/copying/ for details.
+
+# This hasn't had any activity upstream since 2015, but it does work
+# fine and play a good game of Scrabble. Before you complain about old
+# code, remember that Scrabble itself was invented in 1938, and it's
+# still a fun game (if you don't agree, why are you building this?)
+
+# 20230705 bkw: BUILD=2
+# - After playing this game for a while, I got annoyed that the AI has
+# a few words on its list (ospd.txt) that are missing from the word
+# list the player is allowed to use (enable.txt). It turns out there
+# are 13 of them. Added patch for enable.txt to add them.
+
+cd $(dirname $0) ; CWD=$(pwd)
+
+PRGNAM=scrabbleai
+VERSION=${VERSION:-20150324_6f8db6b}
+BUILD=${BUILD:-2}
+TAG=${TAG:-_SBo}
+PKGTYPE=${PKGTYPE:-tgz}
+ARCH=noarch
+
+if [ ! -z "${PRINT_PACKAGE_NAME}" ]; then
+ echo "$PRGNAM-$VERSION-$ARCH-$BUILD$TAG.$PKGTYPE"
+ exit 0
+fi
+
+TMP=${TMP:-/tmp/SBo}
+PKG=$TMP/package-$PRGNAM
+OUTPUT=${OUTPUT:-/tmp}
+
+set -e
+
+rm -rf $PKG
+mkdir -p $TMP $PKG $OUTPUT
+cd $TMP
+rm -rf $PRGNAM-$VERSION
+tar xvf $CWD/$PRGNAM-$VERSION.tar.xz
+cd $PRGNAM-$VERSION
+chown -R root:root .
+find -L . -perm /111 -a \! -perm 755 -a -exec chmod 755 {} \+ -o \
+ \! -perm /111 -a \! -perm 644 -a -exec chmod 644 {} \+
+
+# As written, the code expects to run from its own directory.
+# Patch does these things:
+# - Add #!/usr/bin/perl to the executable. Seriously, upstream?
+# - Look for perl modules, icons, dictionaries under /usr/share
+# - Load/save config and dictionary cache in ~/.config/ScrabbleAI
+# - Use network order (architecture neutral) for perl Storables,
+# so the settings and library from ~/.config/ScrabbleAI don't
+# depend on the arch that was used to create them. This matters
+# to me because I use the same /home for both 32-bit and 64-bit
+# on my test box.
+patch -p1 < $CWD/unix.diff
+
+# 20230705 bkw: word list for computer includes 13 words that
+# the player isn't allowed to use; add them to the player wordlist.
+patch -p1 < $CWD/wordlists.diff
+
+mkdir -p $PKG/usr/games $PKG/usr/share/games/$PRGNAM
+install -m0755 $PRGNAM.pl $PKG/usr/games/$PRGNAM
+cp -a lib/ScrabbleAI $PKG/usr/share/games/$PRGNAM
+
+HICOLOR=$PKG/usr/share/icons/hicolor
+ICON=$HICOLOR/64x64/apps/$PRGNAM.png
+mkdir -p "$( dirname $ICON )"
+
+# Upstream icon is 62x63, center in a 64x64 image:
+convert -background none -extent 64x64 -gravity center \
+ lib/ScrabbleAI/GUI/images/s_tile.png \
+ $ICON
+
+# Now create smaller ones from that:
+for i in 16 22 32 48; do
+ size=${i}x${i}
+ dir=$HICOLOR/$size/apps
+ mkdir -p $dir
+ convert -resize $size $ICON $dir/$PRGNAM.png
+done
+
+mkdir -p $PKG/usr/share/pixmaps
+ln -s ../icons/hicolor/48x48/apps/$PRGNAM.png $PKG/usr/share/pixmaps/$PRGNAM.png
+
+# .desktop file written by SlackBuild author.
+mkdir -p $PKG/usr/share/applications
+cat $CWD/$PRGNAM.desktop > $PKG/usr/share/applications/$PRGNAM.desktop
+
+# Man page written by SlackBuild author. It contains my own observations
+# since upstream didn't include much documentation.
+mkdir -p $PKG/usr/man/man6
+gzip -9c < $CWD/$PRGNAM.6 > $PKG/usr/man/man6/$PRGNAM.6.gz
+
+# Include links to the wordlists (*.txt) in the doc dir.
+# Do NOT include README.md: everything in it has been copied to
+# the man page, minus the Ubuntu and Fedora instructions.
+PKGDOC=$PKG/usr/doc/$PRGNAM-$VERSION
+mkdir -p $PKGDOC
+cp -a LICENSE $PKGDOC
+ln -s ../../share/games/scrabbleai/ScrabbleAI/Backend/ospd.txt $PKGDOC
+ln -s ../../share/games/scrabbleai/ScrabbleAI/Backend/enable.txt $PKGDOC
+cat $CWD/$PRGNAM.SlackBuild > $PKGDOC/$PRGNAM.SlackBuild
+
+mkdir -p $PKG/install
+cat $CWD/slack-desc > $PKG/install/slack-desc
+cat $CWD/doinst.sh > $PKG/install/doinst.sh
+
+cd $PKG
+/sbin/makepkg -l y -c n $OUTPUT/$PRGNAM-$VERSION-$ARCH-$BUILD$TAG.$PKGTYPE
diff --git a/games/scrabbleai/scrabbleai.desktop b/games/scrabbleai/scrabbleai.desktop
new file mode 100644
index 0000000000..737701b2c8
--- /dev/null
+++ b/games/scrabbleai/scrabbleai.desktop
@@ -0,0 +1,9 @@
+[Desktop Entry]
+Name=ScrabbleAI
+GenericName=Crossword Game
+Comment=Game similar to Scrabble(tm)
+Exec=/usr/games/scrabbleai
+Icon=scrabbleai
+Terminal=false
+Type=Application
+Categories=Game;BoardGame
diff --git a/games/scrabbleai/scrabbleai.info b/games/scrabbleai/scrabbleai.info
new file mode 100644
index 0000000000..726b81d923
--- /dev/null
+++ b/games/scrabbleai/scrabbleai.info
@@ -0,0 +1,10 @@
+PRGNAM="scrabbleai"
+VERSION="20150324_6f8db6b"
+HOMEPAGE="https://github.com/apikler/ScrabbleAI"
+DOWNLOAD="https://slackware.uk/~urchlay/src/scrabbleai-20150324_6f8db6b.tar.xz"
+MD5SUM="8573b5b67336d7fdecbae8dbfdcc00ce"
+DOWNLOAD_x86_64=""
+MD5SUM_x86_64=""
+REQUIRES="perl-gnome2-canvas"
+MAINTAINER="B. Watson"
+EMAIL="urchlay@slackware.uk"
diff --git a/games/scrabbleai/scrabbleai.rst b/games/scrabbleai/scrabbleai.rst
new file mode 100644
index 0000000000..803d868f3a
--- /dev/null
+++ b/games/scrabbleai/scrabbleai.rst
@@ -0,0 +1,154 @@
+.. RST source for scrabbleai(6) man page. Convert with:
+.. rst2man.py scrabbleai.rst > scrabbleai.6
+
+.. |version| replace:: 20150324_6f8db6b
+.. |date| date::
+
+==========
+scrabbleai
+==========
+
+-----------------
+Scrabble[TM] game
+-----------------
+
+:Manual section: 6
+:Manual group: SlackBuilds.org
+:Date: |date|
+:Version: |version|
+
+SYNOPSIS
+========
+
+**scrabbleai**
+
+DESCRIPTION
+===========
+
+**scrabbleai** is an application for Linux that lets you play
+the popular word game against a computer opponent at varying
+difficulties. It has a graphical user interface, and is played with
+the mouse and keyboard.
+
+There is no way to play against another human, either locally or
+via the network. This is strictly a single-player game.
+
+There are no command-line options.
+
+GAMEPLAY
+========
+
+At startup, or after choosing **New Game** from the **File** menu, choose
+a difficulty level (1 to 10; default is 5), then click **Start Game**.
+
+You (the human) always go first. If you don't like this, you can click
+**Pass Turn** to make the AI play first. Remember that on the first
+turn, you have to place one of your tiles on the center square of the
+board.
+
+On your turn, use the mouse to drag letter tiles onto the board
+to spell out a word in the usual Scrabble fashion. Your move isn't
+finalized until you click **Make Move** and the game decides your word
+is valid. Until then, you can move your tiles around as desired, or
+click **Return Tiles to Rack** to start over.
+
+When placing a blank tile, you'll be prompted to right-click on it and
+set the letter it represents. If you return the blank tile to the rack
+after doing this, don't forget to right-click on it and press Space,
+to make it appear blank again. If you forget which tile was the blank
+one, it's the one with no score number in the lower-right corner.
+
+If your rack is empty at the end of the game, you still get a turn;
+you must click **Pass Turn** to end the game. When the game is over,
+click **File** => **New Game** to start a new one.
+
+NOTES
+=====
+
+Note that the first time you start a new game, it will take
+longer than usual to launch as the dictionary is cached for future
+use. Subsequent games (even after relaunching the program) will be
+able to skip this step and start up faster.
+
+The AI is based on an algorithm from a paper written by Andrew
+W. Appel and Guy J. Jacobson, which you can find here::
+http://www.cs.cmu.edu/afs/cs/academic/class/15451-s06/www/lectures/scrabble.pdf
+
+The AI is *really* good. However many words you know, it knows
+more. On level 5, the AI beats the author of this man page about 50%
+of the time, with final scores averaging above 250. The original
+Scrabble rules say that a good player should be able to score 300, so
+your mileage may vary.
+
+If you want to peek at the dictionary, there are two of them located
+in /usr/doc/scrabbleai-|version|/. **enable.txt** is used to validate
+your words, and a smaller **ospd.txt** is used for the computer's
+words.
+
+The game board is the standard 15x15 version, with the bonus squares
+in the regular locations. There's no way to customize the board or the
+tile distribution.
+
+SCREENSHOTS
+===========
+
+The intro screen: https://apikler.github.io/ScrabbleAI/intro_screen.png
+
+The main game screen: https://apikler.github.io/ScrabbleAI/game_screen.png
+
+A completed game: https://apikler.github.io/ScrabbleAI/finished_game.png
+
+The help dialog: https://apikler.github.io/ScrabbleAI/help_dialog.png
+
+VIDEOS
+======
+
+The AI makes a move: https://apikler.github.io/ScrabbleAI/ai_move.html
+
+Resizing the window: http://apikler.github.io/ScrabbleAI/resize.html
+
+FILES
+=====
+
+The directory **~/.config/ScrabbleAI/** contains the settings and
+cached dictionary, as **perl**\(1) **Storable**\(3) files, which
+means they're not human-reable or -editable. If the directory or its
+contents do not exist at startup, **scrabbleai** will create them.
+
+**settings**
+ Application settings: default difficulty, window size and position.
+
+**library**
+ Cached dictionary, used to speed program startup.
+
+COPYRIGHT
+=========
+
+See the file /usr/doc/scrabbleai-|version|/LICENSE for license information.
+
+AUTHORS
+=======
+
+scrabbleai was written by apikler (GitHub username).
+
+This man page written for the SlackBuilds.org project
+by B. Watson, and is licensed under the WTFPL.
+
+DISCLAIMER
+==========
+
+This program is free, not for profit, and for educational purposes
+only. Any usage of elements from the Scrabble board game is provided
+only to illustrate the functioning of the AI. Scrabble is a registered
+trademark belonging to Hasbro Inc in the US, and to J.W. Spear &
+Sons Ltd., a subsidiary of Mattel Inc., throughout the rest of the
+world. Neither the author nor this program are affiliated with the
+Scrabble Crossword Game, Hasbro, Spear & Sons, or Mattel in any
+fashion.
+
+SEE ALSO
+========
+
+The scrabbleai homepage: https://github.com/apikler/ScrabbleAI
+
+The Wikipedia entry on Scrabble: https://en.wikipedia.org/wiki/Scrabble
diff --git a/games/scrabbleai/slack-desc b/games/scrabbleai/slack-desc
new file mode 100644
index 0000000000..1d5cfc4b23
--- /dev/null
+++ b/games/scrabbleai/slack-desc
@@ -0,0 +1,19 @@
+# HOW TO EDIT THIS FILE:
+# The "handy ruler" below makes it easier to edit a package description.
+# Line up the first '|' above the ':' following the base package name, and
+# the '|' on the right side marks the last column you can put a character in.
+# You must make exactly 11 lines for the formatting to be correct. It's also
+# customary to leave one space after the ':' except on otherwise blank lines.
+
+ |-----handy-ruler------------------------------------------------------|
+scrabbleai: scrabbleai (Scrabble[TM] game for Linux)
+scrabbleai:
+scrabbleai: scrabbleai is an application for Linux that lets you play the popular
+scrabbleai: word game against a computer opponent at varying difficulties.
+scrabbleai:
+scrabbleai:
+scrabbleai:
+scrabbleai:
+scrabbleai:
+scrabbleai:
+scrabbleai:
diff --git a/games/scrabbleai/unix.diff b/games/scrabbleai/unix.diff
new file mode 100644
index 0000000000..945a80989a
--- /dev/null
+++ b/games/scrabbleai/unix.diff
@@ -0,0 +1,97 @@
+diff -Naur scrabbleai-20150324_6f8db6b/lib/ScrabbleAI/Backend/Library.pm scrabbleai-20150324_6f8db6b.patched/lib/ScrabbleAI/Backend/Library.pm
+--- scrabbleai-20150324_6f8db6b/lib/ScrabbleAI/Backend/Library.pm 2023-03-20 18:35:20.752358098 -0400
++++ scrabbleai-20150324_6f8db6b.patched/lib/ScrabbleAI/Backend/Library.pm 2023-03-20 23:37:16.993653190 -0400
+@@ -25,7 +25,7 @@
+ use warnings;
+
+ use Data::Dumper;
+-use Storable;
++use Storable qw(nstore retrieve);
+
+ use ScrabbleAI::Backend::Utils;
+ use ScrabbleAI::Backend::Node;
+@@ -38,7 +38,7 @@
+ use constant {
+ OSPD => ScrabbleAI::Backend::Utils::abs_path('Backend/ospd.txt'),
+ ENABLE => ScrabbleAI::Backend::Utils::abs_path('Backend/enable.txt'),
+- LIBRARY => ScrabbleAI::Backend::Utils::abs_path('Backend/library'),
++ LIBRARY => "$ENV{HOME}/.config/ScrabbleAI/library",
+ };
+
+ # If a Backend/Library file exists, attempts to load the Library from it using Storable.
+@@ -76,7 +76,7 @@
+ $self->{treewords}{$word} = 1;
+ }
+
+- store({
++ nstore({
+ wordtree => $self->{wordtree},
+ treewords => $self->{treewords},
+ longwords => $self->{longwords},
+diff -Naur scrabbleai-20150324_6f8db6b/lib/ScrabbleAI/Backend/Utils.pm scrabbleai-20150324_6f8db6b.patched/lib/ScrabbleAI/Backend/Utils.pm
+--- scrabbleai-20150324_6f8db6b/lib/ScrabbleAI/Backend/Utils.pm 2023-03-20 18:35:20.752358098 -0400
++++ scrabbleai-20150324_6f8db6b.patched/lib/ScrabbleAI/Backend/Utils.pm 2023-03-20 20:45:44.221621837 -0400
+@@ -23,8 +23,6 @@
+ use strict;
+ use warnings;
+
+-use FindBin;
+-
+ # Given an arrayref of coordinates '(i,j)' and a position 0 or 1,
+ # returns an array of only the coordinates of that position.
+ sub coord_position {
+@@ -80,7 +78,7 @@
+ sub abs_path {
+ my ($path) = @_;
+
+- return $FindBin::Bin . "/lib/ScrabbleAI/$path";
++ return "/usr/share/games/scrabbleai/ScrabbleAI/$path";
+ }
+
+ 1;
+diff -Naur scrabbleai-20150324_6f8db6b/lib/ScrabbleAI/GUI/SettingsManager.pm scrabbleai-20150324_6f8db6b.patched/lib/ScrabbleAI/GUI/SettingsManager.pm
+--- scrabbleai-20150324_6f8db6b/lib/ScrabbleAI/GUI/SettingsManager.pm 2023-03-20 18:35:20.764358097 -0400
++++ scrabbleai-20150324_6f8db6b.patched/lib/ScrabbleAI/GUI/SettingsManager.pm 2023-03-20 23:37:24.279652505 -0400
+@@ -28,10 +28,10 @@
+ use ScrabbleAI::Backend::Utils;
+
+ use Data::Dumper;
+-use Storable;
++use Storable qw(nstore retrieve);
+
+ # File where the settings are saved
+-use constant FILENAME => ScrabbleAI::Backend::Utils::abs_path('GUI/settings');
++use constant FILENAME => "$ENV{HOME}/.config/ScrabbleAI/settings";
+
+ # Creates a new instance of this class; if the settings file exists on disk,
+ # loads the settings (key => value pairs as a hashref) from that file.
+@@ -90,7 +90,7 @@
+ sub save {
+ my ($self) = @_;
+
+- store($self->{settings}, FILENAME);
++ nstore($self->{settings}, FILENAME);
+ }
+
+ 1;
+diff -Naur scrabbleai-20150324_6f8db6b/scrabbleai.pl scrabbleai-20150324_6f8db6b.patched/scrabbleai.pl
+--- scrabbleai-20150324_6f8db6b/scrabbleai.pl 2023-03-20 18:35:20.764358097 -0400
++++ scrabbleai-20150324_6f8db6b.patched/scrabbleai.pl 2023-03-20 20:52:53.461581441 -0400
+@@ -1,3 +1,5 @@
++#!/usr/bin/perl
++
+ ##########################################################################
+ # ScrabbleAI
+ # A program that lets you play the popular word game Scrabble against a
+@@ -22,8 +24,9 @@
+ use strict;
+ use warnings;
+
+-use FindBin;
+-use lib $FindBin::Bin . '/lib';
++system("mkdir -p $ENV{HOME}/.config/ScrabbleAI");
++
++use lib '/usr/share/games/scrabbleai';
+
+ use Gtk2 '-init';
+
diff --git a/games/scrabbleai/wordlists.diff b/games/scrabbleai/wordlists.diff
new file mode 100644
index 0000000000..b0a8fef59a
--- /dev/null
+++ b/games/scrabbleai/wordlists.diff
@@ -0,0 +1,107 @@
+diff -Naur scrabbleai-20150324_6f8db6b/lib/ScrabbleAI/Backend/enable.txt scrabbleai-20150324_6f8db6b.patched/lib/ScrabbleAI/Backend/enable.txt
+--- scrabbleai-20150324_6f8db6b/lib/ScrabbleAI/Backend/enable.txt 2023-03-20 18:35:20.000000000 -0400
++++ scrabbleai-20150324_6f8db6b.patched/lib/ScrabbleAI/Backend/enable.txt 2023-07-05 15:49:06.765636762 -0400
+@@ -35962,6 +35962,7 @@
+ czaritza
+ czaritzas
+ czars
++da
+ dab
+ dabbed
+ dabber
+@@ -38125,6 +38126,7 @@
+ dehydrogenating
+ dehydrogenation
+ dehydrogenations
++dei
+ deice
+ deiced
+ deicer
+@@ -39486,6 +39488,7 @@
+ derry
+ dervish
+ dervishes
++des
+ desacralization
+ desacralizations
+ desacralize
+@@ -68219,6 +68222,7 @@
+ herons
+ heros
+ herpes
++herpeses
+ herpesvirus
+ herpesviruses
+ herpetic
+@@ -80779,6 +80783,7 @@
+ kettledrum
+ kettledrums
+ kettles
++kev
+ kevel
+ kevels
+ kevil
+@@ -84158,6 +84163,7 @@
+ ley
+ leys
+ lez
++lezes
+ lezzes
+ lezzie
+ lezzies
+@@ -84321,6 +84327,7 @@
+ licensure
+ licensures
+ licente
++licenti
+ licentiate
+ licentiates
+ licentious
+@@ -139957,6 +139964,7 @@
+ skivvy
+ skivvying
+ skiwear
++skiwears
+ sklent
+ sklented
+ sklenting
+@@ -143087,6 +143095,7 @@
+ spaying
+ spays
+ spaz
++spazes
+ spazzes
+ speak
+ speakable
+@@ -146864,6 +146873,7 @@
+ strictnesses
+ stricture
+ strictures
++strid
+ stridden
+ stride
+ stridence
+@@ -166929,6 +166939,7 @@
+ vimina
+ viminal
+ vims
++vin
+ vina
+ vinaceous
+ vinaigrette
+@@ -167003,6 +167014,7 @@
+ vinosity
+ vinous
+ vinously
++vins
+ vintage
+ vintager
+ vintagers
+@@ -167713,6 +167725,7 @@
+ vomits
+ vomitus
+ vomituses
++von
+ voodoo
+ voodooed
+ voodooing
diff --git a/games/scribble/scribble.SlackBuild b/games/scribble/scribble.SlackBuild
index b5e134bc7d..84c500dfb5 100644
--- a/games/scribble/scribble.SlackBuild
+++ b/games/scribble/scribble.SlackBuild
@@ -1,17 +1,27 @@
-#!/bin/sh
+#!/bin/bash
# Maintained by Gwenhael Le Moine <gwenhael.le.moine@gmail.com>
+cd $(dirname $0) ; CWD=$(pwd)
+
PRGNAM=scribble
VERSION=${VERSION:-1.11_1}
BUILD=${BUILD:-1}
TAG=${TAG:-_SBo}
+PKGTYPE=${PKGTYPE:-tgz}
ARCH=noarch
SRCVERS=$(printf $VERSION | tr _ -)
-CWD=$(pwd)
+# If the variable PRINT_PACKAGE_NAME is set, then this script will report what
+# the name of the created package would be, and then exit. This information
+# could be useful to other scripts.
+if [ ! -z "${PRINT_PACKAGE_NAME}" ]; then
+ echo "$PRGNAM-$VERSION-$ARCH-$BUILD$TAG.$PKGTYPE"
+ exit 0
+fi
+
TMP=${TMP:-/tmp/SBo}
PKG=$TMP/package-$PRGNAM
OUTPUT=${OUTPUT:-/tmp}
@@ -42,4 +52,4 @@ mkdir -p $PKG/install
cat $CWD/slack-desc > $PKG/install/slack-desc
cd $PKG
-/sbin/makepkg -l y -c n $OUTPUT/$PRGNAM-$VERSION-$ARCH-$BUILD$TAG.${PKGTYPE:-tgz}
+/sbin/makepkg -l y -c n $OUTPUT/$PRGNAM-$VERSION-$ARCH-$BUILD$TAG.$PKGTYPE
diff --git a/games/scummvm-libretro/README b/games/scummvm-libretro/README
deleted file mode 100644
index 47aa3ed2e6..0000000000
--- a/games/scummvm-libretro/README
+++ /dev/null
@@ -1,27 +0,0 @@
-ScummVM is an interpreter for point-and-click adventure games that can be used
-as a libretro core.
-
-ScummVM is a program which allows you to run certain classic graphical
-point-and-click adventure games, provided you already have their data files.
-The clever part about this: ScummVM just replaces the executables shipped with
-the game, allowing you to play them on systems for which they were never
-designed!
-
-Originally it was designed to run LucasArts' SCUMM games, such as Maniac
-Mansion, Monkey Island, Day of the Tentacle or Sam and Max. SCUMM stands for
-'Script Creation Utility for Maniac Mansion', which was the first game for
-which LucasArts designed this system. And much later it gave its name to
-ScummVM ('VM' meaning Virtual Machine).
-
-Over time support for a lot of non-SCUMM games has been added, and ScummVM now
-also supports many of Sierra's AGI and SCI games (such as King's Quest 1-6,
-Space Quest 1-5, ...), Discworld 1 and 2, Simon the Sorcerer 1 and 2, Beneath A
-Steel Sky, Lure of the Temptress, Broken Sword I and II, Flight of the Amazon
-Queen, Gobliiins 1-3, The Legend of Kyrandia series, many of Humongous
-Entertainment's children's SCUMM games (including Freddi Fish and Putt Putt
-games) and many more. You can find a full list with details on which adventures
-are supported and how well on the compatibility page. ScummVM is continually
-improving, so check back often.
-
-To build the debugging symbols use:
- DEBUG=1 ./scummvm-libretro.SlackBuild
diff --git a/games/scummvm-libretro/scummvm-libretro.SlackBuild b/games/scummvm-libretro/scummvm-libretro.SlackBuild
deleted file mode 100644
index 25664f8eae..0000000000
--- a/games/scummvm-libretro/scummvm-libretro.SlackBuild
+++ /dev/null
@@ -1,83 +0,0 @@
-#!/bin/sh
-
-# Slackware build script for ScummVM-libretro
-
-# Copyright 2016-2018 Hunter Sezen
-# All rights reserved.
-#
-# Redistribution and use of this script, with or without modification, is
-# permitted provided that the following conditions are met:
-#
-# 1. Redistributions of this script must retain the above copyright
-# notice, this list of conditions and the following disclaimer.
-#
-# THIS SOFTWARE IS PROVIDED BY THE AUTHOR "AS IS" AND ANY EXPRESS OR IMPLIED
-# WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE IMPLIED WARRANTIES OF
-# MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE ARE DISCLAIMED. IN NO
-# EVENT SHALL THE AUTHOR BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL,
-# SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT LIMITED TO,
-# PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, DATA, OR PROFITS;
-# OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY,
-# WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR
-# OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF THIS SOFTWARE, EVEN IF
-# ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
-
-PRGNAM=scummvm-libretro
-LIBNAM=$(echo $PRGNAM | tr - _)
-VERSION=${VERSION:-2018.10.09_20d71cd}
-BUILD=${BUILD:-1}
-TAG=${TAG:-_SBo}
-
-if [ -z "$ARCH" ]; then
- case "$( uname -m )" in
- i?86) ARCH=i586 ;;
- arm*) ARCH=arm ;;
- *) ARCH=$( uname -m ) ;;
- esac
-fi
-
-CWD=$(pwd)
-TMP=${TMP:-/tmp/SBo}
-PKG=$TMP/package-$PRGNAM
-OUTPUT=${OUTPUT:-/tmp}
-
-LIBDIRSUFFIX=
-[ "$ARCH" = x86_64 ] && LIBDIRSUFFIX=64
-
-set -eu
-
-rm -rf $PKG
-mkdir -p $TMP $PKG $OUTPUT
-cd $TMP
-rm -rf $PRGNAM-$VERSION
-tar xvf $CWD/$PRGNAM-$VERSION.tar.xz
-cd $PRGNAM-$VERSION
-chown -R root:root .
-find -L . \
- \( -perm 777 -o -perm 775 -o -perm 750 -o -perm 711 -o -perm 555 \
- -o -perm 511 \) -exec chmod 755 {} \; -o \
- \( -perm 666 -o -perm 664 -o -perm 640 -o -perm 600 -o -perm 444 \
- -o -perm 440 -o -perm 400 \) -exec chmod 644 {} \;
-
-[ "${DEBUG:=0}" != 0 ] && DEBUG=1
-
-make -C backends/platform/libretro/build DEBUG=$DEBUG
-
-install -Dm0644 backends/platform/libretro/build/$LIBNAM.so \
- $PKG/usr/lib${LIBDIRSUFFIX}/libretro/$LIBNAM.so
-install -Dm0644 $LIBNAM.info $PKG/usr/lib${LIBDIRSUFFIX}/libretro/info/$LIBNAM.info
-
-if [ $DEBUG = 0 ]; then
- find $PKG -print0 | xargs -0 file | grep -e "executable" -e "shared object" | grep ELF \
- | cut -f 1 -d : | xargs strip --strip-unneeded 2> /dev/null || true
-fi
-
-mkdir -p $PKG/usr/doc/$PRGNAM-$VERSION
-cp -a doc/* AUTHORS CONTRIBUTING.md COPY* LIBRETRO_CMDLINE.md NEWS README TODO $PKG/usr/doc/$PRGNAM-$VERSION
-cat $CWD/$PRGNAM.SlackBuild > $PKG/usr/doc/$PRGNAM-$VERSION/$PRGNAM.SlackBuild
-
-mkdir -p $PKG/install
-cat $CWD/slack-desc > $PKG/install/slack-desc
-
-cd $PKG
-/sbin/makepkg -l y -c n $OUTPUT/$PRGNAM-$VERSION-$ARCH-$BUILD$TAG.${PKGTYPE:-tgz}
diff --git a/games/scummvm-libretro/scummvm-libretro.info b/games/scummvm-libretro/scummvm-libretro.info
deleted file mode 100644
index 26b7e8caf2..0000000000
--- a/games/scummvm-libretro/scummvm-libretro.info
+++ /dev/null
@@ -1,10 +0,0 @@
-PRGNAM="scummvm-libretro"
-VERSION="2018.10.09_20d71cd"
-HOMEPAGE="https://www.libretro.com/"
-DOWNLOAD="http://slackless.raccoons.tech/src/libretro/scummvm-libretro-2018.10.09_20d71cd.tar.xz"
-MD5SUM="9ef0f055c8a94708f7d2137084df473c"
-DOWNLOAD_x86_64=""
-MD5SUM_x86_64=""
-REQUIRES="RetroArch"
-MAINTAINER="orphaned - no maintainer"
-EMAIL="nobody@nowhere.com"
diff --git a/games/scummvm-libretro/slack-desc b/games/scummvm-libretro/slack-desc
deleted file mode 100644
index 7d4e4629e2..0000000000
--- a/games/scummvm-libretro/slack-desc
+++ /dev/null
@@ -1,19 +0,0 @@
-# HOW TO EDIT THIS FILE:
-# The "handy ruler" below makes it easier to edit a package description.
-# Line up the first '|' above the ':' following the base package name, and
-# the '|' on the right side marks the last column you can put a character in.
-# You must make exactly 11 lines for the formatting to be correct. It's also
-# customary to leave one space after the ':' except on otherwise blank lines.
-
- |-----handy-ruler------------------------------------------------------|
-scummvm-libretro: scummvm-libretro (ScummVM with libretro backend)
-scummvm-libretro:
-scummvm-libretro: ScummVM is a program which allows you to run certain classic
-scummvm-libretro: graphical point-and-click adventure games, provided you already
-scummvm-libretro: have their data files. The clever part about this: ScummVM just
-scummvm-libretro: replaces the executables shipped with the games, allowing you to
-scummvm-libretro: play them on systems for which they were never designed!
-scummvm-libretro:
-scummvm-libretro: Homepage: https://www.libretro.com/
-scummvm-libretro:
-scummvm-libretro:
diff --git a/games/scummvm/README b/games/scummvm/README
index 0d7522eab1..db102cf764 100644
--- a/games/scummvm/README
+++ b/games/scummvm/README
@@ -1,9 +1,9 @@
ScummVM is a collection of interpreters, capable of emulating several
-adventure game engines. ScummVM mainly supports engines created using
-SCUMM (Script Creation Utility for Maniac Mansion), used in various
-LucasArts games such as Monkey Island, Day of the Tentacle, and others.
-ScummVM also contains interpreters for several non-SCUMM games - currently
-Beneath a Steel Sky, Broken Sword I & II, and Simon the Sorcerer 1 & 2.
+adventure game engines. ScummVM mainly supports engines created
+using SCUMM (Script Creation Utility for Maniac Mansion), used in
+various LucasArts games such as Monkey Island, Day of the Tentacle,
+and others. ScummVM also contains interpreters for several non-SCUMM
+games - currently Beneath a Steel Sky, Broken Sword I & II, and Simon
+the Sorcerer 1 & 2.
-ScummVM optionally uses libmpeg2 and fluidsynth, both are available from
-SlackBuilds.org
+ScummVM optionally uses libmpeg2.
diff --git a/games/scummvm/doinst.sh b/games/scummvm/doinst.sh
index 98d466d8b9..9c4154d69f 100644
--- a/games/scummvm/doinst.sh
+++ b/games/scummvm/doinst.sh
@@ -1,3 +1,9 @@
if [ -x usr/bin/update-desktop-database ]; then
./usr/bin/update-desktop-database ./usr/share/applications >/dev/null 2>&1
fi
+
+if [ -e usr/share/icons/hicolor/icon-theme.cache ]; then
+ if [ -x /usr/bin/gtk-update-icon-cache ]; then
+ /usr/bin/gtk-update-icon-cache usr/share/icons/hicolor >/dev/null 2>&1
+ fi
+fi
diff --git a/games/scummvm/fix-fluidsynth2-build.diff b/games/scummvm/fix-fluidsynth2-build.diff
deleted file mode 100644
index db7edcd335..0000000000
--- a/games/scummvm/fix-fluidsynth2-build.diff
+++ /dev/null
@@ -1,27 +0,0 @@
-diff -Naur scummvm-2.1.2/audio/softsynth/fluidsynth.cpp scummvm-2.1.2.patched/audio/softsynth/fluidsynth.cpp
---- scummvm-2.1.2/audio/softsynth/fluidsynth.cpp 2020-03-30 18:32:51.000000000 -0400
-+++ scummvm-2.1.2.patched/audio/softsynth/fluidsynth.cpp 2020-04-11 17:40:39.247407731 -0400
-@@ -20,10 +20,13 @@
- *
- */
-
--#include "common/scummsys.h"
-+#include "config.h"
-
- #ifdef USE_FLUIDSYNTH
-
-+#include <fluidsynth.h>
-+
-+#include "common/scummsys.h"
- #include "common/config-manager.h"
- #include "common/error.h"
- #include "common/system.h"
-@@ -35,8 +38,6 @@
- #include "backends/platform/ios7/ios7_common.h"
- #endif
-
--#include <fluidsynth.h>
--
- class MidiDriver_FluidSynth : public MidiDriver_Emulated {
- private:
- MidiChannel_MPU401 _midiChannels[16];
diff --git a/games/scummvm/scummvm.SlackBuild b/games/scummvm/scummvm.SlackBuild
index c0a8a400f7..00a21a1f7b 100644
--- a/games/scummvm/scummvm.SlackBuild
+++ b/games/scummvm/scummvm.SlackBuild
@@ -1,4 +1,4 @@
-#!/bin/sh
+#!/bin/bash
# Slackware build script for scummvm
@@ -23,10 +23,19 @@
# OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF THIS SOFTWARE, EVEN IF
# ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
+# 20220501 bkw: Modified by SlackBuilds.org, BUILD=2:
+# - update icon cache in doinst.sh.
+# - include SlackBuild in package doc dir.
+
+# Modified by Eugene M., <damagedone at gmx dot com>
+
+cd $(dirname $0) ; CWD=$(pwd)
+
PRGNAM=scummvm
-VERSION=${VERSION:-2.1.2}
+VERSION=${VERSION:-2.8.1}
BUILD=${BUILD:-1}
TAG=${TAG:-_SBo}
+PKGTYPE=${PKGTYPE:-tgz}
if [ -z "$ARCH" ]; then
case "$( uname -m )" in
@@ -36,7 +45,11 @@ if [ -z "$ARCH" ]; then
esac
fi
-CWD=$(pwd)
+if [ ! -z "${PRINT_PACKAGE_NAME}" ]; then
+ echo "$PRGNAM-$VERSION-$ARCH-$BUILD$TAG.$PKGTYPE"
+ exit 0
+fi
+
TMP=${TMP:-/tmp/SBo}
PKG=$TMP/package-$PRGNAM
OUTPUT=${OUTPUT:-/tmp}
@@ -50,13 +63,14 @@ elif [ "$ARCH" = "i686" ]; then
elif [ "$ARCH" = "x86_64" ]; then
SLKCFLAGS="-O2 -fPIC"
LIBDIRSUFFIX="64"
+elif [ "$ARCH" = "aarch64" ]; then
+ SLKCFLAGS="-O2 -fPIC"
+ LIBDIRSUFFIX="64"
else
SLKCFLAGS="-O2"
LIBDIRSUFFIX=""
fi
-DOCS="AUTHORS COPYING* COPYRIGHT NEWS.md README.md TODO"
-
set -e
rm -rf $PKG
@@ -72,31 +86,23 @@ find -L . \
\( -perm 666 -o -perm 664 -o -perm 640 -o -perm 600 -o -perm 444 \
-o -perm 440 -o -perm 400 \) -exec chmod 644 {} \;
-# 20200411 bkw: This is necessary for fluidsynth-2.x. Based on upstream's
-# git commit 68758a87.
-patch -p1 < $CWD/fix-fluidsynth2-build.diff
+# avoid linking breakage on i?86
+if [[ $ARCH == i?86 ]]; then linker=bfd; else linker=gold; fi
CFLAGS="$SLKCFLAGS" \
CXXFLAGS="$SLKCFLAGS" \
-LDFLAGS="-fuse-ld=gold" \
+LDFLAGS="-fuse-ld=$linker" \
./configure \
--prefix=/usr \
--bindir=/usr/games \
--libdir=/usr/lib$LIBDIRSUFFIX \
--mandir=/usr/man \
- --disable-debug
+ --disable-debug \
+ --enable-release-mode
make
make install DESTDIR=$PKG
-# The .desktop file for the menu is not being installed
-install -D -m 0644 dists/scummvm.desktop \
- $PKG/usr/share/applications/scummvm.desktop
-
-# Hardcode the location for the .desktop icon
-sed -i s%Icon=%Icon=/usr/share/pixmaps/% \
- $PKG/usr/share/applications/scummvm.desktop
-
strip --strip-unneeded $PKG/usr/games/scummvm 2> /dev/null
# Compress the man page(s)
@@ -106,8 +112,8 @@ strip --strip-unneeded $PKG/usr/games/scummvm 2> /dev/null
)
mkdir -p $PKG/usr/doc/$PRGNAM-$VERSION
-cp -a $DOCS $PKG/usr/doc/$PRGNAM-$VERSION
-# We don't need these - they're redundant
+cp -a AUTHORS COPYING* COPYRIGHT NEWS.md README.md TODO $PKG/usr/doc/$PRGNAM-$VERSION
+cat $CWD/$PRGNAM.SlackBuild > $PKG/usr/doc/$PRGNAM-$VERSION/$PRGNAM.SlackBuild
rm -rf $PKG/usr/share/doc
mkdir -p $PKG/install
@@ -115,4 +121,4 @@ cat $CWD/slack-desc > $PKG/install/slack-desc
cat $CWD/doinst.sh > $PKG/install/doinst.sh
cd $PKG
-/sbin/makepkg -l y -c n $OUTPUT/$PRGNAM-$VERSION-$ARCH-$BUILD$TAG.${PKGTYPE:-tgz}
+/sbin/makepkg -l y -c n $OUTPUT/$PRGNAM-$VERSION-$ARCH-$BUILD$TAG.$PKGTYPE
diff --git a/games/scummvm/scummvm.info b/games/scummvm/scummvm.info
index dbc0117305..d80336dcd4 100644
--- a/games/scummvm/scummvm.info
+++ b/games/scummvm/scummvm.info
@@ -1,10 +1,10 @@
PRGNAM="scummvm"
-VERSION="2.1.2"
+VERSION="2.8.1"
HOMEPAGE="https://www.scummvm.org/"
-DOWNLOAD="https://www.scummvm.org/frs/scummvm/2.1.2/scummvm-2.1.2.tar.xz"
-MD5SUM="dd680a1f0f3a6745bf3a8033167ee778"
+DOWNLOAD="https://downloads.scummvm.org/frs/scummvm/2.8.1/scummvm-2.8.1.tar.xz"
+MD5SUM="641a3937baf17ac6123ae6ed664e5ce3"
DOWNLOAD_x86_64=""
MD5SUM_x86_64=""
REQUIRES=""
-MAINTAINER="Carlos Corbacho"
-EMAIL="carlos@strangeworlds.co.uk"
+MAINTAINER="Eugene M."
+EMAIL="damagedone@gmx.com"
diff --git a/games/sdlpop/README b/games/sdlpop/README
index 96a4ef218c..02056b099f 100644
--- a/games/sdlpop/README
+++ b/games/sdlpop/README
@@ -1,5 +1,6 @@
sdlpop (Prince of Persia rewrite)
-SDLPoP is an open-source port of Prince of Persia 1, that runs natively
-under Windows and Linux. It is based on the DOS version of the game,
-and uses SDL 2. All data files needed to play the game are included.
+SDLPoP is an open-source port of Prince of Persia 1, that runs
+natively under Windows and Linux. It is based on the MS-DOS version
+of the game, and uses SDL 2. All data files needed to play the game
+are included.
diff --git a/games/sdlpop/doinst.sh b/games/sdlpop/doinst.sh
index 5fb28930db..3e5691a052 100644
--- a/games/sdlpop/doinst.sh
+++ b/games/sdlpop/doinst.sh
@@ -1,3 +1,9 @@
if [ -x /usr/bin/update-desktop-database ]; then
/usr/bin/update-desktop-database -q usr/share/applications >/dev/null 2>&1
fi
+
+if [ -e usr/share/icons/hicolor/icon-theme.cache ]; then
+ if [ -x /usr/bin/gtk-update-icon-cache ]; then
+ /usr/bin/gtk-update-icon-cache usr/share/icons/hicolor >/dev/null 2>&1
+ fi
+fi
diff --git a/games/sdlpop/sdlpop.SlackBuild b/games/sdlpop/sdlpop.SlackBuild
index d9940fac0c..45e6ecc8ef 100644
--- a/games/sdlpop/sdlpop.SlackBuild
+++ b/games/sdlpop/sdlpop.SlackBuild
@@ -1,11 +1,15 @@
-#!/bin/sh
+#!/bin/bash
# Slackware build script for sdlpop
-# Written by B. Watson (yalhcru@gmail.com)
+# Written by B. Watson (urchlay@slackware.uk)
# Licensed under the WTFPL. See http://www.wtfpl.net/txt/copying/ for details.
+# 20230712 bkw: updated for v1.23.
+# 20211025 bkw:
+# - updated for v1.22.
+# - new icon, new-style icons.
# 20200927 bkw: updated for v1.21.
# 20191127 bkw: updated for v1.20.
# 20180611 bkw: updated for v1.20.
@@ -17,10 +21,13 @@
# - update man page (new 1.17 options).
# - update wrapper script to support both system-wide and per-user mods.
+cd $(dirname $0) ; CWD=$(pwd)
+
PRGNAM=sdlpop
-VERSION=${VERSION:-1.21}
+VERSION=${VERSION:-1.23}
BUILD=${BUILD:-1}
TAG=${TAG:-_SBo}
+PKGTYPE=${PKGTYPE:-tgz}
if [ -z "$ARCH" ]; then
case "$( uname -m )" in
@@ -30,7 +37,11 @@ if [ -z "$ARCH" ]; then
esac
fi
-CWD=$(pwd)
+if [ ! -z "${PRINT_PACKAGE_NAME}" ]; then
+ echo "$PRGNAM-$VERSION-$ARCH-$BUILD$TAG.$PKGTYPE"
+ exit 0
+fi
+
TMP=${TMP:-/tmp/SBo}
PKG=$TMP/package-$PRGNAM
OUTPUT=${OUTPUT:-/tmp}
@@ -80,10 +91,17 @@ gzip -9c < $CWD/$PRGNAM.6 > $PKG/usr/man/man6/$PRGNAM.6.gz
mkdir -p $PKG/usr/share/applications $PKG/usr/share/pixmaps
# icon downloaded from:
-# http://www.veryicon.com/icons/game/mega-games-pack-26/prince-persia-2008-2.html
+# https://www.veryicon.com/icons/game/mega-games-pack-26/prince-persia-2008-1.html
# 1.17 now has an icon.png, but it's 32x32 and not transparent, so I'll keep
# using the one I used for 1.16.
-cat $CWD/$PRGNAM.png > $PKG/usr/share/pixmaps/$PRGNAM.png
+for px in 16 32 48 64 128; do
+ size=${px}x${px}
+ dir=$PKG/usr/share/icons/hicolor/$size/apps
+ mkdir -p $dir
+ convert -resize $size $CWD/$PRGNAM.png $dir/$PRGNAM.png
+done
+
+ln -s ../icons/hicolor/48x48/apps/$PRGNAM.png $PKG/usr/share/pixmaps/$PRGNAM.png
# .desktop written for this build
cat $CWD/$PRGNAM.desktop > $PKG/usr/share/applications/$PRGNAM.desktop
@@ -97,4 +115,4 @@ cat $CWD/slack-desc > $PKG/install/slack-desc
cat $CWD/doinst.sh > $PKG/install/doinst.sh
cd $PKG
-/sbin/makepkg -l y -c n $OUTPUT/$PRGNAM-$VERSION-$ARCH-$BUILD$TAG.${PKGTYPE:-tgz}
+/sbin/makepkg -l y -c n $OUTPUT/$PRGNAM-$VERSION-$ARCH-$BUILD$TAG.$PKGTYPE
diff --git a/games/sdlpop/sdlpop.desktop b/games/sdlpop/sdlpop.desktop
index a6e60fc602..0bff6d661d 100644
--- a/games/sdlpop/sdlpop.desktop
+++ b/games/sdlpop/sdlpop.desktop
@@ -1,7 +1,7 @@
[Desktop Entry]
Name=sdlpop
Comment=Prince of Persia I
-Exec=sdlpop
+Exec=/usr/games/sdlpop
Icon=sdlpop
Terminal=false
Type=Application
diff --git a/games/sdlpop/sdlpop.info b/games/sdlpop/sdlpop.info
index 0ae0fe4415..93b46958e5 100644
--- a/games/sdlpop/sdlpop.info
+++ b/games/sdlpop/sdlpop.info
@@ -1,10 +1,10 @@
PRGNAM="sdlpop"
-VERSION="1.21"
+VERSION="1.23"
HOMEPAGE="http://www.popot.org/get_the_games.php?game=SDLPoP"
-DOWNLOAD="https://github.com/NagyD/SDLPoP/archive/v1.21/SDLPoP-1.21.zip"
-MD5SUM="9bf414e82ed313f61be02a25ef88c92b"
+DOWNLOAD="https://github.com/NagyD/SDLPoP/archive/v1.23/SDLPoP-1.23.zip"
+MD5SUM="ca18e54fb55790b409555f5ccc347f64"
DOWNLOAD_x86_64=""
MD5SUM_x86_64=""
-REQUIRES="SDL2_mixer SDL2_image"
+REQUIRES=""
MAINTAINER="B. Watson"
-EMAIL="yalhcru@gmail.com"
+EMAIL="urchlay@slackware.uk"
diff --git a/games/sdlpop/sdlpop.png b/games/sdlpop/sdlpop.png
index 1931752195..8861e76a0f 100644
--- a/games/sdlpop/sdlpop.png
+++ b/games/sdlpop/sdlpop.png
Binary files differ
diff --git a/games/sdlpop/slack-desc b/games/sdlpop/slack-desc
index 3a48629df3..df7d6f56d4 100644
--- a/games/sdlpop/slack-desc
+++ b/games/sdlpop/slack-desc
@@ -9,7 +9,7 @@
sdlpop: sdlpop (Prince of Persia rewrite)
sdlpop:
sdlpop: SDLPoP is an open-source port of Prince of Persia 1, that runs
-sdlpop: natively under Windows and Linux. It is based on the DOS version
+sdlpop: natively under Windows and Linux. It is based on the MS-DOS version
sdlpop: of the game, and uses SDL 2. All data files needed to play the game
sdlpop: are included.
sdlpop:
diff --git a/games/simplesok/simplesok.SlackBuild b/games/simplesok/simplesok.SlackBuild
index 0635295b70..efe5d632c8 100644
--- a/games/simplesok/simplesok.SlackBuild
+++ b/games/simplesok/simplesok.SlackBuild
@@ -1,4 +1,4 @@
-#!/bin/sh
+#!/bin/bash
# Slackware build script for simplesok
@@ -22,10 +22,13 @@
# OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF THIS SOFTWARE, EVEN IF
# ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
+cd $(dirname $0) ; CWD=$(pwd)
+
PRGNAM=simplesok
VERSION=${VERSION:-1.0.1}
BUILD=${BUILD:-1}
TAG=${TAG:-_SBo}
+PKGTYPE=${PKGTYPE:-tgz}
if [ -z "$ARCH" ]; then
case "$( uname -m )" in
@@ -35,7 +38,14 @@ if [ -z "$ARCH" ]; then
esac
fi
-CWD=$(pwd)
+# If the variable PRINT_PACKAGE_NAME is set, then this script will report what
+# the name of the created package would be, and then exit. This information
+# could be useful to other scripts.
+if [ ! -z "${PRINT_PACKAGE_NAME}" ]; then
+ echo "$PRGNAM-$VERSION-$ARCH-$BUILD$TAG.$PKGTYPE"
+ exit 0
+fi
+
TMP=${TMP:-/tmp/SBo}
PKG=$TMP/package-$PRGNAM
OUTPUT=${OUTPUT:-/tmp}
@@ -93,4 +103,4 @@ cat $CWD/slack-desc > $PKG/install/slack-desc
cat $CWD/doinst.sh > $PKG/install/doinst.sh
cd $PKG
-/sbin/makepkg -l y -c n $OUTPUT/$PRGNAM-$VERSION-$ARCH-$BUILD$TAG.${PKGTYPE:-tgz}
+/sbin/makepkg -l y -c n $OUTPUT/$PRGNAM-$VERSION-$ARCH-$BUILD$TAG.$PKGTYPE
diff --git a/games/simplesok/simplesok.info b/games/simplesok/simplesok.info
index 8d2274b797..08c6ce9013 100644
--- a/games/simplesok/simplesok.info
+++ b/games/simplesok/simplesok.info
@@ -5,6 +5,6 @@ DOWNLOAD="http://sourceforge.net/projects/simplesok/files/v1.0.1/simplesok-1.0.1
MD5SUM="333624cf5844220f0164695de02527c1"
DOWNLOAD_x86_64=""
MD5SUM_x86_64=""
-REQUIRES="SDL2_image"
+REQUIRES=""
MAINTAINER="Dimitris Zlatanidis"
EMAIL="d.zlatanidis@gmail.com"
diff --git a/games/simsu/simsu.SlackBuild b/games/simsu/simsu.SlackBuild
index 66b13cae00..96c9c8259d 100644
--- a/games/simsu/simsu.SlackBuild
+++ b/games/simsu/simsu.SlackBuild
@@ -1,10 +1,10 @@
-#!/bin/sh
+#!/bin/bash
# Slackware build script for simsu
# Copyright 2010, 2012 Binh Nguyen <binhvng@gmail.com>
# Copyright 2012-2017 Ryan P.C. McQuen | Everett, WA | ryanpcmcquen@member.fsf.org
-# Copyright 2017 Jeremy Hansen <jebrhansen+SBo -at- gmail.com>
+# Copyright 2017-2022 Jeremy Hansen <jebrhansen+SBo -at- gmail.com>
# All rights reserved.
#
# Redistribution and use of this script, with or without modification, is
@@ -24,10 +24,13 @@
# OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF THIS SOFTWARE, EVEN IF
# ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
+cd $(dirname $0) ; CWD=$(pwd)
+
PRGNAM=simsu
-VERSION=${VERSION:-1.2.3}
+VERSION=${VERSION:-1.4.0}
BUILD=${BUILD:-1}
TAG=${TAG:-_SBo}
+PKGTYPE=${PKGTYPE:-tgz}
if [ -z "$ARCH" ]; then
case "$( uname -m )" in
@@ -37,7 +40,14 @@ if [ -z "$ARCH" ]; then
esac
fi
-CWD=$(pwd)
+# If the variable PRINT_PACKAGE_NAME is set, then this script will report what
+# the name of the created package would be, and then exit. This information
+# could be useful to other scripts.
+if [ ! -z "${PRINT_PACKAGE_NAME}" ]; then
+ echo "$PRGNAM-$VERSION-$ARCH-$BUILD$TAG.$PKGTYPE"
+ exit 0
+fi
+
TMP=${TMP:-/tmp/SBo}
PKG=$TMP/package-$PRGNAM
OUTPUT=${OUTPUT:-/tmp}
@@ -58,12 +68,18 @@ find -L . \
\( -perm 666 -o -perm 664 -o -perm 640 -o -perm 600 -o -perm 444 \
-o -perm 440 -o -perm 400 \) -exec chmod 644 {} \;
+# Fix man page location
+sed -i 's|$$PREFIX/share/man/|$$PREFIX/man/|' simsu.pro
+
qmake PREFIX=/usr
make install INSTALL_ROOT=$PKG
find $PKG -print0 | xargs -0 file | grep -e "executable" -e "shared object" | grep ELF \
| cut -f 1 -d : | xargs strip --strip-unneeded 2> /dev/null || true
+find $PKG/usr/man -type f -exec gzip -9 {} \;
+for i in $( find $PKG/usr/man -type l ) ; do ln -s $( readlink $i ).gz $i.gz ; rm $i ; done
+
mkdir -p $PKG/usr/doc/$PRGNAM-$VERSION
cp -a COPYING ChangeLog CREDITS $PKG/usr/doc/$PRGNAM-$VERSION
cat $CWD/$PRGNAM.SlackBuild > $PKG/usr/doc/$PRGNAM-$VERSION/$PRGNAM.SlackBuild
@@ -73,4 +89,4 @@ cat $CWD/slack-desc > $PKG/install/slack-desc
cat $CWD/doinst.sh > $PKG/install/doinst.sh
cd $PKG
-/sbin/makepkg -l y -c n $OUTPUT/$PRGNAM-$VERSION-$ARCH-$BUILD$TAG.${PKGTYPE:-tgz}
+/sbin/makepkg -l y -c n $OUTPUT/$PRGNAM-$VERSION-$ARCH-$BUILD$TAG.$PKGTYPE
diff --git a/games/simsu/simsu.info b/games/simsu/simsu.info
index fbeac30372..8dfbeced08 100644
--- a/games/simsu/simsu.info
+++ b/games/simsu/simsu.info
@@ -1,8 +1,8 @@
PRGNAM="simsu"
-VERSION="1.2.3"
+VERSION="1.4.0"
HOMEPAGE="https://gottcode.org/simsu/"
-DOWNLOAD="https://gottcode.org/simsu/simsu-1.2.3-src.tar.bz2"
-MD5SUM="0cec2e7eda6384d547d922961843435c"
+DOWNLOAD="https://gottcode.org/simsu/simsu-1.4.0-src.tar.bz2"
+MD5SUM="b1f6263cfa07c8a263ed2a649a3eb5ec"
DOWNLOAD_x86_64=""
MD5SUM_x86_64=""
REQUIRES=""
diff --git a/games/singularity/singularity.SlackBuild b/games/singularity/singularity.SlackBuild
index 61a7e77eaa..e802c809d1 100644
--- a/games/singularity/singularity.SlackBuild
+++ b/games/singularity/singularity.SlackBuild
@@ -1,4 +1,4 @@
-#!/bin/sh
+#!/bin/bash
# Slackware build script for Singularity Viewer
#
@@ -23,10 +23,13 @@
# OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF THIS SOFTWARE, EVEN IF
# ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
+cd $(dirname $0) ; CWD=$(pwd)
+
PRGNAM=singularity
VERSION=${VERSION:-1.7.3.3624}
BUILD=${BUILD:-1}
TAG=${TAG:-_SBo}
+PKGTYPE=${PKGTYPE:-tgz}
if [ -z "$ARCH" ]; then
case "$( uname -m )" in
@@ -36,7 +39,14 @@ if [ -z "$ARCH" ]; then
esac
fi
-CWD=$(pwd)
+# If the variable PRINT_PACKAGE_NAME is set, then this script will report what
+# the name of the created package would be, and then exit. This information
+# could be useful to other scripts.
+if [ ! -z "${PRINT_PACKAGE_NAME}" ]; then
+ echo "$PRGNAM-$VERSION-$ARCH-$BUILD$TAG.$PKGTYPE"
+ exit 0
+fi
+
TMP=${TMP:-/tmp/SBo}
PKG=$TMP/package-$PRGNAM
OUTPUT=${OUTPUT:-/tmp}
@@ -89,4 +99,4 @@ cat $CWD/slack-desc > $PKG/install/slack-desc
cat $CWD/doinst.sh > $PKG/install/doinst.sh
cd $PKG
-/sbin/makepkg -l y -c n $OUTPUT/$PRGNAM-$VERSION-$ARCH-$BUILD$TAG.${PKGTYPE:-tgz}
+/sbin/makepkg -l y -c n $OUTPUT/$PRGNAM-$VERSION-$ARCH-$BUILD$TAG.$PKGTYPE
diff --git a/games/skulltag/README b/games/skulltag/README
index bcfd2124d3..0924ef7fed 100644
--- a/games/skulltag/README
+++ b/games/skulltag/README
@@ -1,13 +1,13 @@
-Skulltag is a port for the original Doom and Doom II by id Software.
+skulltag (port of the original Doom and Doom II by id Software)
Skulltag brings classic Doom into the 21st century, maintaining the
essence of what has made Doom great for so many years and, at the same
time, adding new features to modernize it, creating a fresh, fun new
experience.
-Skulltag has no external build dependencies, but it benefits greatly from
-the use of doomseeker (a server browser, *much* nicer than skulltag's
-built-in server browser).
+Skulltag has no external build dependencies, but it benefits greatly
+from the use of doomseeker (a server browser, *much* nicer than
+skulltag's built-in server browser).
You'll also need the game data (WAD file) from one of the following:
diff --git a/games/skulltag/doinst.sh b/games/skulltag/doinst.sh
index 4e8ba7071d..3e5691a052 100644
--- a/games/skulltag/doinst.sh
+++ b/games/skulltag/doinst.sh
@@ -2,3 +2,8 @@ if [ -x /usr/bin/update-desktop-database ]; then
/usr/bin/update-desktop-database -q usr/share/applications >/dev/null 2>&1
fi
+if [ -e usr/share/icons/hicolor/icon-theme.cache ]; then
+ if [ -x /usr/bin/gtk-update-icon-cache ]; then
+ /usr/bin/gtk-update-icon-cache usr/share/icons/hicolor >/dev/null 2>&1
+ fi
+fi
diff --git a/games/skulltag/icons/128.png b/games/skulltag/icons/128.png
new file mode 100644
index 0000000000..ed9d03c167
--- /dev/null
+++ b/games/skulltag/icons/128.png
Binary files differ
diff --git a/games/skulltag/icons/16.png b/games/skulltag/icons/16.png
new file mode 100644
index 0000000000..b039e44ec1
--- /dev/null
+++ b/games/skulltag/icons/16.png
Binary files differ
diff --git a/games/skulltag/icons/32.png b/games/skulltag/icons/32.png
new file mode 100644
index 0000000000..d909ef293e
--- /dev/null
+++ b/games/skulltag/icons/32.png
Binary files differ
diff --git a/games/skulltag/icons/48.png b/games/skulltag/icons/48.png
new file mode 100644
index 0000000000..ff6b198ef6
--- /dev/null
+++ b/games/skulltag/icons/48.png
Binary files differ
diff --git a/games/skulltag/icons/64.png b/games/skulltag/icons/64.png
new file mode 100644
index 0000000000..30bcf7acb0
--- /dev/null
+++ b/games/skulltag/icons/64.png
Binary files differ
diff --git a/games/skulltag/skulltag.SlackBuild b/games/skulltag/skulltag.SlackBuild
index b89a631d20..542b18d7de 100644
--- a/games/skulltag/skulltag.SlackBuild
+++ b/games/skulltag/skulltag.SlackBuild
@@ -1,15 +1,21 @@
-#!/bin/sh
+#!/bin/bash
# Slackware build script for skulltag
-# Written by B. Watson (yalhcru@gmail.com)
+# Written by B. Watson (urchlay@slackware.uk)
# Licensed under the WTFPL. See http://www.wtfpl.net/txt/copying/ for details.
+# 20230111 bkw: BUILD=4, strip libsnes_spc.so
+# 20211024 bkw: BUILD=3, binaries in /usr/games, new-style icons
+
+cd $(dirname $0) ; CWD=$(pwd)
+
PRGNAM=skulltag
VERSION=${VERSION:-098d}
-BUILD=${BUILD:-2}
+BUILD=${BUILD:-4}
TAG=${TAG:-_SBo}
+PKGTYPE=${PKGTYPE:-tgz}
if [ -z "$ARCH" ]; then
case "$( uname -m )" in
@@ -19,7 +25,11 @@ if [ -z "$ARCH" ]; then
esac
fi
-CWD=$(pwd)
+if [ ! -z "${PRINT_PACKAGE_NAME}" ]; then
+ echo "$PRGNAM-$VERSION-$ARCH-$BUILD$TAG.$PKGTYPE"
+ exit 0
+fi
+
TMP=${TMP:-/tmp/SBo}
PKG=$TMP/package-$PRGNAM
OUTPUT=${OUTPUT:-/tmp}
@@ -66,18 +76,18 @@ cd $PRGNAM-$VERSION
tar xvf $BASE
tar xvf $GAME
chown -R root:root .
-find -L . \
- \( -perm 777 -o -perm 775 -o -perm 750 -o -perm 711 -o -perm 555 -o -perm 511 \) \
- -exec chmod 755 {} \; -o \
- \( -perm 666 -o -perm 664 -o -perm 600 -o -perm 444 -o -perm 440 -o -perm 400 \) \
- -exec chmod 644 {} \;
+find -L . -perm /111 -a \! -perm 755 -a -exec chmod 755 {} \+ -o \
+ \! -perm /111 -a \! -perm 644 -a -exec chmod 644 {} \+
mkdir -p \
$PKG/usr/lib$LIBDIRSUFFIX/$PRGNAM \
- $PKG/usr/bin \
+ $PKG/usr/games \
$PKG/usr/share/$PRGNAM \
$PKG/usr/doc/$PRGNAM-$VERSION
+# 20230111 bkw: this *one* library isn't already stripped:
+strip libsnes_spc.so
+
mv $PRGNAM $PRGNAM-server *.so $PKG/usr/lib$LIBDIRSUFFIX/$PRGNAM
install -m0644 *.pk3 $PKG/usr/share/$PRGNAM
install -m0644 *.txt $PKG/usr/doc/$PRGNAM-$VERSION
@@ -96,9 +106,9 @@ install -m0755 \
fmodapi*/api/lib*/libfmodex$LIBDIRSUFFIX-*.so \
$PKG/usr/lib$LIBDIRSUFFIX/$PRGNAM
-sed "s,@LIB@,lib$LIBDIRSUFFIX,g" < $CWD/$PRGNAM.sh > $PKG/usr/bin/$PRGNAM
-chmod 755 $PKG/usr/bin/$PRGNAM
-ln -s $PRGNAM $PKG/usr/bin/$PRGNAM-server
+sed "s,@LIB@,lib$LIBDIRSUFFIX,g" < $CWD/$PRGNAM.sh > $PKG/usr/games/$PRGNAM
+chmod 755 $PKG/usr/games/$PRGNAM
+ln -s $PRGNAM $PKG/usr/games/$PRGNAM-server
# The included ini file changes the following program defaults:
@@ -132,9 +142,19 @@ cat $CWD/$PRGNAM.ini > $PKG/usr/share/$PRGNAM/$PRGNAM.ini.default
# the wiki, so let's give the user the URL.
cat $CWD/README_docs.txt > $PKG/usr/doc/$PRGNAM-$VERSION/README_docs.txt
-# PNG icon converted from a GIF on skulltag.com
+# 20211024 bkw: icons extracted from the OSX installer:
+# http://www.skulltag.com/download/files/release/st-v098d_macosx.dmg
+# and a couple were made by resizing 128.png.
+for i in $CWD/icons/*.png; do
+ px=$( basename $i | cut -d. -f1 )
+ size=${px}x${px}
+ dir=$PKG/usr/share/icons/hicolor/$size/apps
+ mkdir -p $dir
+ cat $i > $dir/$PRGNAM.png
+done
+
mkdir -p $PKG/usr/share/pixmaps
-cat $CWD/$PRGNAM.png > $PKG/usr/share/pixmaps/$PRGNAM.png
+ln -s ../icons/hicolor/48x48/apps/$PRGNAM.png $PKG/usr/share/pixmaps/$PRGNAM.png
# .desktop is a modified copy of zdoom.desktop
mkdir -p $PKG/usr/share/applications
@@ -150,4 +170,4 @@ cat $CWD/slack-desc > $PKG/install/slack-desc
cat $CWD/doinst.sh > $PKG/install/doinst.sh
cd $PKG
-/sbin/makepkg -l y -c n $OUTPUT/$PRGNAM-$VERSION-$ARCH-$BUILD$TAG.${PKGTYPE:-tgz}
+/sbin/makepkg -l y -c n $OUTPUT/$PRGNAM-$VERSION-$ARCH-$BUILD$TAG.$PKGTYPE
diff --git a/games/skulltag/skulltag.desktop b/games/skulltag/skulltag.desktop
index 3fc4ee6597..ea7777e530 100644
--- a/games/skulltag/skulltag.desktop
+++ b/games/skulltag/skulltag.desktop
@@ -3,6 +3,6 @@ Type=Application
Name=SkullTag
GenericName=Enhanced Doom Engine
Icon=skulltag
-Exec=skulltag %F
+Exec=/usr/games/skulltag %F
Terminal=false
Categories=Game;ActionGame;
diff --git a/games/skulltag/skulltag.info b/games/skulltag/skulltag.info
index 11581b3ba6..84b1dce178 100644
--- a/games/skulltag/skulltag.info
+++ b/games/skulltag/skulltag.info
@@ -15,4 +15,4 @@ MD5SUM_x86_64="afe482e04ce3f51c94915e07c3aff3b0 \
70b2a6a2618ee9823ab564b4e945c885"
REQUIRES="libpng-legacy12"
MAINTAINER="B. Watson"
-EMAIL="yalhcru@gmail.com"
+EMAIL="urchlay@slackware.uk"
diff --git a/games/skulltag/skulltag.png b/games/skulltag/skulltag.png
deleted file mode 100644
index 8a556a2512..0000000000
--- a/games/skulltag/skulltag.png
+++ /dev/null
Binary files differ
diff --git a/games/sl/README b/games/sl/README
index bef5c5c739..93957e42e9 100644
--- a/games/sl/README
+++ b/games/sl/README
@@ -1,4 +1,4 @@
-sl is a program that displays animations aimed to correct you if you type
-sl instead of ls by mistake.
+sl is a program that displays animations aimed to correct you if you
+type sl instead of ls by mistake.
'sl' stands for Steam Locomotive.
diff --git a/games/sl/sl.SlackBuild b/games/sl/sl.SlackBuild
index 79b50f7917..6d21e079e3 100644
--- a/games/sl/sl.SlackBuild
+++ b/games/sl/sl.SlackBuild
@@ -1,10 +1,10 @@
-#!/bin/sh
+#!/bin/bash
# Slackware build script for sl.
# Copyright 2010 V'yacheslav Stetskevych
# Copyright 2012 Niels Horn, Rio de Janeiro, RJ, Brazil
-# Copyright 2015 Philip van der Hoeven, Almere, The Netherlands
+# Copyright 2015-2024 Philip van der Hoeven, Almere, The Netherlands
# All rights reserved.
#
# Redistribution and use of this script, with or without modification, is
@@ -24,26 +24,36 @@
# OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF THIS SOFTWARE, EVEN IF
# ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
+cd $(dirname $0) ; CWD=$(pwd)
+
PRGNAM=sl
-VERSION=${VERSION:-5.02}
+VERSION=${VERSION:-5.05}
BUILD=${BUILD:-1}
TAG=${TAG:-_SBo}
+PKGTYPE=${PKGTYPE:-tgz}
if [ -z "$ARCH" ]; then
case "$( uname -m )" in
- i?86) ARCH=i486 ;;
+ i?86) ARCH=i586 ;;
arm*) ARCH=arm ;;
*) ARCH=$( uname -m ) ;;
esac
fi
-CWD=$(pwd)
+# If the variable PRINT_PACKAGE_NAME is set, then this script will report what
+# the name of the created package would be, and then exit. This information
+# could be useful to other scripts.
+if [ ! -z "${PRINT_PACKAGE_NAME}" ]; then
+ echo "$PRGNAM-$VERSION-$ARCH-$BUILD$TAG.$PKGTYPE"
+ exit 0
+fi
+
TMP=${TMP:-/tmp/SBo}
PKG=$TMP/package-$PRGNAM
OUTPUT=${OUTPUT:-/tmp}
-if [ "$ARCH" = "i486" ]; then
- SLKCFLAGS="-O2 -march=i486 -mtune=i686"
+if [ "$ARCH" = "i586" ]; then
+ SLKCFLAGS="-O2 -march=i586 -mtune=i686"
LIBDIRSUFFIX=""
elif [ "$ARCH" = "i686" ]; then
SLKCFLAGS="-O2 -march=i686 -mtune=i686"
@@ -62,7 +72,7 @@ rm -rf $PKG
mkdir -p $TMP $PKG $OUTPUT
cd $TMP
rm -rf $PRGNAM-$VERSION
-tar xvf $CWD/$VERSION.tar.gz || tar xvf $CWD/$PRGNAM-$VERSION.tar.gz
+tar xvf $CWD/$PRGNAM-$VERSION.tar.gz
cd $PRGNAM-$VERSION
chown -R root:root .
find -L . \
@@ -84,7 +94,7 @@ mkdir -p $PKG/usr/man # man pages
mkdir -p $PKG/usr/man/man1
mkdir -p $PKG/usr/man/ja.UTF-8/man1
cp -p sl.1 $PKG/usr/man/man1
-cp -p sl.1.ja $PKG/usr/man/ja.UTF-8/man1
+cp -p sl.1.ja $PKG/usr/man/ja.UTF-8/man1/sl.1
# End of manual installation
@@ -102,4 +112,4 @@ mkdir -p $PKG/install
cat $CWD/slack-desc > $PKG/install/slack-desc
cd $PKG
-/sbin/makepkg -l y -c n $OUTPUT/$PRGNAM-$VERSION-$ARCH-$BUILD$TAG.${PKGTYPE:-tgz}
+/sbin/makepkg -l y -c n $OUTPUT/$PRGNAM-$VERSION-$ARCH-$BUILD$TAG.$PKGTYPE
diff --git a/games/sl/sl.info b/games/sl/sl.info
index def4ea1034..4e28452d16 100644
--- a/games/sl/sl.info
+++ b/games/sl/sl.info
@@ -1,8 +1,8 @@
PRGNAM="sl"
-VERSION="5.02"
-HOMEPAGE="http://www.tkl.iis.u-tokyo.ac.jp/~toyoda/index_e.html"
-DOWNLOAD="https://github.com/mtoyoda/sl/archive/5.02.tar.gz"
-MD5SUM="5d5fe203eb19598821647ba8db5dde6c"
+VERSION="5.05"
+HOMEPAGE="https://github.com/eyJhb/sl"
+DOWNLOAD="https://github.com/eyJhb/sl/archive/5.05/sl-5.05.tar.gz"
+MD5SUM="b54daa1536f15b4b6a06e91603e1f0e9"
DOWNLOAD_x86_64=""
MD5SUM_x86_64=""
REQUIRES=""
diff --git a/games/smashbattle/README b/games/smashbattle/README
index 6194a08dc6..22cc717a3f 100644
--- a/games/smashbattle/README
+++ b/games/smashbattle/README
@@ -1,6 +1,7 @@
-So you're up for some fast, old skool, 2D, platform, shoot 'm up action!
-Well you came to the right place. Smash Battle, a game based on the famous
-Mario battle from Super Mario Bros 3 on the good old NES. The game is simple
-yet very addictive. Fight your way through several missions to unlock secret
-characters. Battle with one, two or even three friends in the multiplayer mode
-to show of your old and dusty game skillz.
+So you're up for some fast, old skool, 2D, platform, shoot 'm up
+action! Well, you came to the right place. Smash Battle, a game based
+on the famous Mario battle from Super Mario Bros 3 on the good old
+NES. The game is simple yet very addictive. Fight your way through
+several missions to unlock secret characters. Battle with one, two
+or even three friends in the multiplayer mode to show of your old and
+dusty game skillz.
diff --git a/games/smashbattle/smashbattle.SlackBuild b/games/smashbattle/smashbattle.SlackBuild
index 4efb8c1ad9..db87114c1e 100644
--- a/games/smashbattle/smashbattle.SlackBuild
+++ b/games/smashbattle/smashbattle.SlackBuild
@@ -1,4 +1,4 @@
-#!/bin/sh
+#!/bin/bash
# Slackware build script for smashbattle
@@ -22,10 +22,13 @@
# OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF THIS SOFTWARE, EVEN IF
# ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
+cd $(dirname $0) ; CWD=$(pwd)
+
PRGNAM=smashbattle
VERSION=${VERSION:-110224}
BUILD=${BUILD:-2}
TAG=${TAG:-_SBo}
+PKGTYPE=${PKGTYPE:-tgz}
SRCVER="$VERSION-src"
@@ -37,7 +40,14 @@ if [ -z "$ARCH" ]; then
esac
fi
-CWD=$(pwd)
+# If the variable PRINT_PACKAGE_NAME is set, then this script will report what
+# the name of the created package would be, and then exit. This information
+# could be useful to other scripts.
+if [ ! -z "${PRINT_PACKAGE_NAME}" ]; then
+ echo "$PRGNAM-$VERSION-$ARCH-$BUILD$TAG.$PKGTYPE"
+ exit 0
+fi
+
TMP=${TMP:-/tmp/SBo}
PKG=$TMP/package-$PRGNAM
OUTPUT=${OUTPUT:-/tmp}
@@ -105,4 +115,4 @@ cat $CWD/slack-desc > $PKG/install/slack-desc
cat $CWD/doinst.sh > $PKG/install/doinst.sh
cd $PKG
-/sbin/makepkg -l y -c n $OUTPUT/$PRGNAM-$VERSION-$ARCH-$BUILD$TAG.${PKGTYPE:-tgz}
+/sbin/makepkg -l y -c n $OUTPUT/$PRGNAM-$VERSION-$ARCH-$BUILD$TAG.$PKGTYPE
diff --git a/games/smc/README b/games/smc/README
index 21f7187b7b..a98dc65930 100644
--- a/games/smc/README
+++ b/games/smc/README
@@ -1,23 +1,23 @@
smc (Secret Maryo Chronicles)
-Secret Maryo Chronicles is an Open Source two-dimensional platform game
-with a style designed similar to classic sidescroller games such as
-Super Mario Bros. It uses the platform independent library SDL and, since
-version 0.98, the OpenGL accelerated graphics renderer from CEGUI. The
-game is developed in C++.
+Secret Maryo Chronicles is an Open Source two-dimensional platform
+game with a style designed similar to classic sidescroller games such
+as Super Mario Bros. It uses the platform independent library SDL and,
+since version 0.98, the OpenGL accelerated graphics renderer from
+CEGUI. The game is developed in C++.
Notes:
The default keyboard controls are arrows to move, A to run, S to jump,
and Enter to use an item or (in the Overworld) start a level. See
-/usr/doc/smc-$VERSION/controls.html and the in-game Options -> Keyboard
-menu for more information.
+/usr/doc/smc-$VERSION/controls.html and the in-game Options ->
+Keyboard menu for more information.
To compile this game you will need CEGUI0.7. Make sure CEGUI0.7 is
-compiled after FreeImage, as this needs a CEGUI0.7 with FreeImage support
-built in (the latest CEGUI0.7 SlackBuild will automatically use FreeImage
-if available).
+compiled after FreeImage, as this needs a CEGUI0.7 with FreeImage
+support built in (the latest CEGUI0.7 SlackBuild will automatically
+use FreeImage if available).
-Unfortunately, as of this writing, it's impossible to install both CEGUI
-and CEGUI0.7 at the same time, so make sure CEGUI (the 0.8 version)
-isn't installed or you'll end up with a mess.
+Unfortunately, as of this writing, it's impossible to install both
+CEGUI and CEGUI0.7 at the same time, so make sure CEGUI (the 0.8
+version) isn't installed or you'll end up with a mess.
diff --git a/games/smc/doinst.sh b/games/smc/doinst.sh
index 5fb28930db..3e5691a052 100644
--- a/games/smc/doinst.sh
+++ b/games/smc/doinst.sh
@@ -1,3 +1,9 @@
if [ -x /usr/bin/update-desktop-database ]; then
/usr/bin/update-desktop-database -q usr/share/applications >/dev/null 2>&1
fi
+
+if [ -e usr/share/icons/hicolor/icon-theme.cache ]; then
+ if [ -x /usr/bin/gtk-update-icon-cache ]; then
+ /usr/bin/gtk-update-icon-cache usr/share/icons/hicolor >/dev/null 2>&1
+ fi
+fi
diff --git a/games/smc/icons/16.png b/games/smc/icons/16.png
new file mode 100644
index 0000000000..329c0cebb3
--- /dev/null
+++ b/games/smc/icons/16.png
Binary files differ
diff --git a/games/smc/icons/32.png b/games/smc/icons/32.png
new file mode 100644
index 0000000000..1e7a2ae512
--- /dev/null
+++ b/games/smc/icons/32.png
Binary files differ
diff --git a/games/smc/icons/48.png b/games/smc/icons/48.png
new file mode 100644
index 0000000000..c20e5da6ae
--- /dev/null
+++ b/games/smc/icons/48.png
Binary files differ
diff --git a/games/smc/icons/64.png b/games/smc/icons/64.png
new file mode 100644
index 0000000000..fe9224f1b3
--- /dev/null
+++ b/games/smc/icons/64.png
Binary files differ
diff --git a/games/smc/smc.SlackBuild b/games/smc/smc.SlackBuild
index e18b21dc10..3f05ae23fc 100644
--- a/games/smc/smc.SlackBuild
+++ b/games/smc/smc.SlackBuild
@@ -1,18 +1,18 @@
-#!/bin/sh
+#!/bin/bash
# Slackware build script for smc (Secret Maryo Chronicles)
# Originally written by Phillip Warner.
# Licensed under the WTFPL. See http://www.wtfpl.net/txt/copying/ for details.
-# Modified by B. Watson, for post-1.9 git snapshot and Slack 14.1.
-# - removed boost patch (no longer needed)
-# - changed Categories in .desktop file (make it validate)
-# - got CEGUI0.7 maintainer to add a couple configure options this needs
+# 20230110 bkw: BUILD=4
+# - look for CEGUI0.7 libraries in /opt/CEGUI0.7, since they've
+# been moved there (as of CEGUI0.7 build 5).
-# Note about the REQUIRES in the .info file: I listed FreeImage first
-# because it's an optional dep for CEGUI0.7. This build needs CEGUI0.7
-# with FreeImage support compiled in.
+# 20211026 bkw: BUILD=3
+# - new-style icons (extracted from the windows .ico file).
+# - /usr/share/smc => /usr/share/games/smc.
+# - binary in /usr/games.
# 20160809 bkw:
# - modified for Slack 14.2, specifically the game's fonts were causing
@@ -25,10 +25,13 @@
# - remove original author's email
# - add WTFPL license
+cd $(dirname $0) ; CWD=$(pwd)
+
PRGNAM=smc
VERSION=${VERSION:-20140328}
-BUILD=${BUILD:-2}
+BUILD=${BUILD:-4}
TAG=${TAG:-_SBo}
+PKGTYPE=${PKGTYPE:-tgz}
if [ -z "$ARCH" ]; then
case "$( uname -m )" in
@@ -38,7 +41,11 @@ if [ -z "$ARCH" ]; then
esac
fi
-CWD=$(pwd)
+if [ ! -z "${PRINT_PACKAGE_NAME}" ]; then
+ echo "$PRGNAM-$VERSION-$ARCH-$BUILD$TAG.$PKGTYPE"
+ exit 0
+fi
+
TMP=${TMP:-/tmp/SBo}
PKG=$TMP/package-$PRGNAM
OUTPUT=${OUTPUT:-/tmp}
@@ -66,22 +73,23 @@ rm -rf $PRGNAM-$VERSION
tar xvf $CWD/$PRGNAM-$VERSION.tar.gz
cd $PRGNAM-$VERSION
chown -R root:root .
-find -L . \
- \( -perm 777 -o -perm 775 -o -perm 750 -o -perm 711 -o -perm 555 \
- -o -perm 511 \) -exec chmod 755 {} \; -o \
- \( -perm 666 -o -perm 664 -o -perm 640 -o -perm 600 -o -perm 444 \
- -o -perm 440 -o -perm 400 \) -exec chmod 644 {} \;
+find -L . -perm /111 -a \! -perm 755 -a -exec chmod 755 {} \+ -o \
+ \! -perm /111 -a \! -perm 644 -a -exec chmod 644 {} \+
./autogen.sh
+export PKG_CONFIG_PATH=/opt/CEGUI0.7/lib$LIBDIRSUFFIX/pkgconfig
+
CFLAGS="$SLKCFLAGS" \
CXXFLAGS="$SLKCFLAGS" \
./configure \
--prefix=/usr \
--libdir=/usr/lib${LIBDIRSUFFIX} \
+ --bindir=/usr/games \
+ --datadir=/usr/share/games \
--build=$ARCH-slackware-linux
-CFLAGS="$SLKCFLAGS" CXXFLAGS="$SLKCFLAGS" force_arch="$ARCH" make
+CFLAGS="$SLKCFLAGS" CXXFLAGS="$SLKCFLAGS" force_arch="$ARCH" make V=1
make install-strip DESTDIR=$PKG
# The fonts included in the game cause 14.2's fontconfig to fail,
@@ -96,17 +104,30 @@ make install-strip DESTDIR=$PKG
# But that'll likely have to wait for the next Slackware release, a
# few years from now.
-rm -f $PKG/usr/share/$PRGNAM/gui/font/*.ttf
+rm -f $PKG/usr/share/games/$PRGNAM/gui/font/*.ttf
ln -s /usr/share/fonts/TTF/LiberationSans-Regular.ttf \
- $PKG/usr/share/$PRGNAM/gui/font/default.ttf
+ $PKG/usr/share/games/$PRGNAM/gui/font/default.ttf
ln -s /usr/share/fonts/TTF/LiberationSans-Bold.ttf \
- $PKG/usr/share/$PRGNAM/gui/font/default_bold.ttf
+ $PKG/usr/share/games/$PRGNAM/gui/font/default_bold.ttf
+# .desktop modified from makefiles/unix/smc.desktop
mkdir -p $PKG/usr/share/applications
cat $CWD/$PRGNAM.desktop > $PKG/usr/share/applications/$PRGNAM.desktop
+# icon extracted from makefiles/MSVC9.0/idr_main.ico with icotool
+for i in $CWD/icons/*.png; do
+ px=$( basename $i | cut -d. -f1 )
+ size=${px}x${px}
+ dir=$PKG/usr/share/icons/hicolor/$size/apps
+ mkdir -p $dir
+ cat $i > $dir/$PRGNAM.png
+done
+
+mkdir -p $PKG/usr/share/pixmaps
+ln -s ../icons/hicolor/48x48/apps/$PRGNAM.png $PKG/usr/share/pixmaps/$PRGNAM.png
+
mkdir -p $PKG/usr/doc/$PRGNAM-$VERSION
-cp -a docs/* $PKG/usr/doc/$PRGNAM-$VERSION
+cp -a docs/* $PKG/usr/doc/$PRGNAM-$VERSION
cat $CWD/$PRGNAM.SlackBuild > $PKG/usr/doc/$PRGNAM-$VERSION/$PRGNAM.SlackBuild
mkdir -p $PKG/install
@@ -114,4 +135,4 @@ cat $CWD/doinst.sh > $PKG/install/doinst.sh
cat $CWD/slack-desc > $PKG/install/slack-desc
cd $PKG
-/sbin/makepkg -l y -c n $OUTPUT/$PRGNAM-$VERSION-$ARCH-$BUILD$TAG.${PKGTYPE:-tgz}
+/sbin/makepkg -l y -c n $OUTPUT/$PRGNAM-$VERSION-$ARCH-$BUILD$TAG.$PKGTYPE
diff --git a/games/smc/smc.desktop b/games/smc/smc.desktop
index f11676a85a..d792590c25 100644
--- a/games/smc/smc.desktop
+++ b/games/smc/smc.desktop
@@ -1,8 +1,8 @@
[Desktop Entry]
Name=Secret Maryo Chronicles
Comment=An Open Source 2-D platform game like Super Mario Bros.
-Exec=smc
-Icon=/usr/share/smc/icon/window_32.png
+Exec=/usr/games/smc
+Icon=smc
Terminal=false
Type=Application
Categories=Game;ActionGame;
diff --git a/games/smc/smc.info b/games/smc/smc.info
index b4808cd15a..2fe86a5168 100644
--- a/games/smc/smc.info
+++ b/games/smc/smc.info
@@ -5,6 +5,6 @@ DOWNLOAD="https://slackware.uk/~urchlay/src/smc-20140328.tar.gz"
MD5SUM="a0d2e7a20d93badf2708baabcaabedba"
DOWNLOAD_x86_64=""
MD5SUM_x86_64=""
-REQUIRES="FreeImage CEGUI0.7"
+REQUIRES="CEGUI0.7"
MAINTAINER="B. Watson"
-EMAIL="yalhcru@gmail.com"
+EMAIL="urchlay@slackware.uk"
diff --git a/games/smokinguns/smokinguns.SlackBuild b/games/smokinguns/smokinguns.SlackBuild
index 9aa9c9cac6..4a63e6ac0c 100644
--- a/games/smokinguns/smokinguns.SlackBuild
+++ b/games/smokinguns/smokinguns.SlackBuild
@@ -1,4 +1,4 @@
-#!/bin/sh
+#!/bin/bash
# Slackware build script for smokinguns
@@ -22,14 +22,35 @@
# OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF THIS SOFTWARE, EVEN IF
# ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
+cd $(dirname $0) ; CWD=$(pwd)
+
PRGNAM=smokinguns
VERSION=${VERSION:-1.1}
BUILD=${BUILD:-1}
TAG=${TAG:-_SBo}
+PKGTYPE=${PKGTYPE:-tgz}
+
+# 2023-05-16 DW: need an ARCH test
+if [ -z "$ARCH" ]; then
+ case "$( uname -m )" in
+ i?86) ARCH=i586 ;;
+ *) ARCH=$( uname -m ) ;;
+ esac
+fi
+
+if [[ $ARCH != i?86 ]]; then
+ printf "\n$ARCH is not supported... \n" >/dev/stderr
+ exit 1
+fi
+
+# If the variable PRINT_PACKAGE_NAME is set, then this script will report what
+# the name of the created package would be, and then exit. This information
+# could be useful to other scripts.
+if [ ! -z "${PRINT_PACKAGE_NAME}" ]; then
+ echo "$PRGNAM-$VERSION-$ARCH-$BUILD$TAG.$PKGTYPE"
+ exit 0
+fi
-ARCH=i386 # i386 binary only
-
-CWD=$(pwd)
TMP=${TMP:-/tmp/SBo}
PKG=$TMP/package-$PRGNAM
OUTPUT=${OUTPUT:-/tmp}
@@ -74,10 +95,11 @@ install -m 0755 -D $CWD/launcher.sh $PKG/usr/bin/smokinguns
mkdir -p $PKG/usr/doc/$PRGNAM-$VERSION
find $PKG/opt -iname *.txt -type f -exec cp {} $PKG/usr/doc/$PRGNAM-$VERSION \;
cp $PKG/opt/$PRGNAM/README $PKG/usr/doc/$PRGNAM-$VERSION
+cat $CWD/$PRGNAM.SlackBuild > $PKG/usr/doc/$PRGNAM-$VERSION/$PRGNAM.SlackBuild
mkdir -p $PKG/install
cat $CWD/slack-desc > $PKG/install/slack-desc
cat $CWD/doinst.sh > $PKG/install/doinst.sh
cd $PKG
-/sbin/makepkg -l y -c n $OUTPUT/$PRGNAM-$VERSION-$ARCH-$BUILD$TAG.${PKGTYPE:-tgz}
+/sbin/makepkg -l y -c n $OUTPUT/$PRGNAM-$VERSION-$ARCH-$BUILD$TAG.$PKGTYPE
diff --git a/games/smokinguns/smokinguns.info b/games/smokinguns/smokinguns.info
index fc7803d9f1..6f5ec6e421 100644
--- a/games/smokinguns/smokinguns.info
+++ b/games/smokinguns/smokinguns.info
@@ -1,7 +1,7 @@
PRGNAM="smokinguns"
VERSION="1.1"
-HOMEPAGE="http://www.smokin-guns.org/"
-DOWNLOAD="http://www.smokin-guns.org/downloads/Smokin_Guns_1.1.zip"
+HOMEPAGE="https://www.smokin-guns.org/"
+DOWNLOAD="https://www.smokin-guns.org/downloads/Smokin_Guns_1.1.zip"
MD5SUM="f6eac64fa534fa9ff121dda5fd2dba44"
DOWNLOAD_x86_64="UNSUPPORTED"
MD5SUM_x86_64=""
diff --git a/games/sms_sdl/README b/games/sms_sdl/README
index 1ad0ad2e88..3783beb807 100644
--- a/games/sms_sdl/README
+++ b/games/sms_sdl/README
@@ -1,13 +1,10 @@
sms_sdl (Sega Master System and Game Gear emulator)
SMS Plus is Sega Master System and Game Gear emulator. Originally,
-it was written to run under DOS. Since Charles Mac Donald released
+it was written to run under MS-DOS. Since Charles Mac Donald released
his emulator under the GPL terms, this emulator has been ported to
different platforms.
Zipped ROM images are now supported. Only the first ROM image in the
.zip file will be used. Other files (.txt, etc) in the .zip file are
allowed and ignored.
-
-The sms_sdl.png icon is by finite, from
-http://www.pixeljoint.com/pixelart/2312.htm
diff --git a/games/sms_sdl/doinst.sh b/games/sms_sdl/doinst.sh
index 6dabb61160..4b35984395 100644
--- a/games/sms_sdl/doinst.sh
+++ b/games/sms_sdl/doinst.sh
@@ -6,3 +6,8 @@ if [ -x /usr/bin/update-mime-database ]; then
/usr/bin/update-mime-database usr/share/mime > /dev/null 2>&1
fi
+if [ -e usr/share/icons/hicolor/icon-theme.cache ]; then
+ if [ -x /usr/bin/gtk-update-icon-cache ]; then
+ /usr/bin/gtk-update-icon-cache usr/share/icons/hicolor >/dev/null 2>&1
+ fi
+fi
diff --git a/games/sms_sdl/sms_sdl.6 b/games/sms_sdl/sms_sdl.6
index 83fbf179b2..b570ddcfd0 100644
--- a/games/sms_sdl/sms_sdl.6
+++ b/games/sms_sdl/sms_sdl.6
@@ -1,4 +1,4 @@
-.\" Automatically generated by Pod::Man 2.27 (Pod::Simple 3.28)
+.\" Automatically generated by Pod::Man 4.14 (Pod::Simple 3.42)
.\"
.\" Standard preamble:
.\" ========================================================================
@@ -46,7 +46,7 @@
.ie \n(.g .ds Aq \(aq
.el .ds Aq '
.\"
-.\" If the F register is turned on, we'll generate index entries on stderr for
+.\" If the F register is >0, we'll generate index entries on stderr for
.\" titles (.TH), headers (.SH), subsections (.SS), items (.Ip), and index
.\" entries marked with X<> in POD. Of course, you'll have to process the
.\" output yourself in some meaningful fashion.
@@ -56,12 +56,12 @@
..
.nr rF 0
.if \n(.g .if rF .nr rF 1
-.if (\n(rF:(\n(.g==0)) \{
-. if \nF \{
+.if (\n(rF:(\n(.g==0)) \{\
+. if \nF \{\
. de IX
. tm Index:\\$1\t\\n%\t"\\$2"
..
-. if !\nF==2 \{
+. if !\nF==2 \{\
. nr % 0
. nr F 2
. \}
@@ -133,7 +133,7 @@
.\" ========================================================================
.\"
.IX Title "SMS_SDL 6"
-.TH SMS_SDL 6 "2014-09-07" "0.9.4a-r7.1" "SlackBuilds.org"
+.TH SMS_SDL 6 "2021-10-25" "0.9.4a-r7.1" "SlackBuilds.org"
.\" For nroff, turn off justification. Always turn off hyphenation; it makes
.\" way too many mistakes in technical documents.
.if n .ad l
@@ -176,7 +176,7 @@ Use joystick.
Disable sound.
.IP "\fB\-\-filter\fR <mode>" 4
.IX Item "--filter <mode>"
-Render using a filter. Available modes:
+Scales the display to 200% size. Available modes:
.RS 4
.IP "2xsai" 4
.IX Item "2xsai"
@@ -197,51 +197,59 @@ Render using a filter. Available modes:
.IX Item "dotmatrix"
.RE
.RS 4
-.RE
.PD
+.Sp
+Note that the \fB1\fR to \fB8\fR keys can be used to change the filter
+while the emulator is running, but \fIonly\fR if it was started
+with the \fB\-\-filter\fR option.
+.RE
.SH "KEYBOARD"
.IX Header "KEYBOARD"
.IP "\fBF1\fR" 4
.IX Item "F1"
-Screenshot in \s-1BMP\s0 format
+Save screenshot in \s-1BMP\s0 format (in \fB~/.sms_sdl\fR).
.IP "\fBF2\fR" 4
.IX Item "F2"
-Save state
+Save state.
.IP "\fBF3\fR" 4
.IX Item "F3"
-Load state
+Load state.
.IP "\fBF4/F5\fR" 4
.IX Item "F4/F5"
-Dec/inc frame skip value
+Decrease/increase frame skip value.
.IP "\fBF6/F7\fR" 4
.IX Item "F6/F7"
-Dec/inc state slot
+Decrease/increase state slot.
.IP "\fB1..8\fR" 4
.IX Item "1..8"
-Switch rendering filter
+Switch rendering filter. Only works if the emulator was started
+with the \fB\-\-filter\fR option.
.IP "\fBC\fR" 4
.IX Item "C"
-Button 1
+Controller button 1.
.IP "\fBV\fR" 4
.IX Item "V"
-Button 2
+Controller button 2.
.IP "\fB\s-1ENTER\s0\fR" 4
.IX Item "ENTER"
-Start (\s-1GG\s0) / pause (\s-1SMS\s0)
+Start (\s-1GG\s0) / pause (\s-1SMS\s0).
.IP "\fB\s-1ARROWS\s0\fR" 4
.IX Item "ARROWS"
-Directional pad
+Directional pad.
.IP "\fB\s-1TAB\s0\fR" 4
.IX Item "TAB"
-Console hard reset
+Console hard reset.
.PP
The key bindings may not be remapped.
.SH "FILES"
.IX Header "FILES"
\&\s-1ROM\s0 image files may be in raw dump format, or may have a header
(details are system-specific). Also, \s-1ROM\s0 images may be zipped (not
-gzipped), in which case the first file in the zip file's directory must
-be the \s-1ROM\s0 image (any other files are ignored).
+gzipped), in which case the first file in the zip file's directory
+that matches \fI*.sms\fR, \fI*.gg\fR, \fI*.rom\fR, \fI*.bin\fR (case-insensitive)
+will be used as the \s-1ROM\s0 image. Other files are ignored. If nothing
+in the zip file matches, the first file in the zip directory will
+be used.
.PP
\&\fBsms_sdl\fR looks at the filename to determine the type of \s-1ROM\s0 image
in use. Any file whose name ends in \fI.gg\fR (case-insensitive match) is
@@ -250,13 +258,13 @@ Master System \s-1ROM.\s0 In the case of a zipped image, this refers to the
file inside the zip file; the zip file itself doesn't have any special
naming requirements.
.PP
-Screenshot filenames (F1 key) are generated by replacing the filename
+Screenshot filenames (\fBF1\fR key) are generated by replacing the filename
extension with \fI\-NNN.bmp\fR, where \s-1NNN\s0 is a 3\-digit number (000 for the
first screenshot, 001 for the second, etc). The numbering starts at 000
every time the emulator is started, and existing files will be overwritten
without confirmation.
.PP
-State save filenames (F2 key) are generated by replacing the filename
+State save filenames (\fBF2\fR key) are generated by replacing the filename
extension with \fI.stN\fR, where N is the number of the save slot (one or
more digits). Again, existing files are overwritten without confirmation.
.PP
@@ -264,10 +272,15 @@ Screenshots and savestates are stored in \fI~/.sms_sdl\fR.
.SH "CONFIG FILE"
.IX Header "CONFIG FILE"
\&\fBsms_sdl\fR is launched by a shell script wrapper which reads the file
-\&\fI~/.sms_sdl/config\fR if it exists. Any of the options above may be placed
-in this file (one option per line, with or without the leading \fB\-\-\fR
-characters). These options will be passed as command-line arguments to
-the real \fBsms_sdl\fR binary every time it runs.
+\&\fI~/.sms_sdl/config\fR if it exists. Any of the options above may be
+placed in this file (one option per line, with or without the leading
+\&\fB\-\-\fR characters). These options will be passed as command-line
+arguments to the real \fBsms_sdl\fR binary every time it runs. Any
+arguments passed to the script will appear after the ones read from
+the config file.
+.PP
+If there's no \fI~/.sms_sdl/config\fR, a default one will be created,
+which enables \fB\-\-joystick\fR, \fB\-\-fm\fR, and \fB\-\-filter 2x\fR.
.PP
See \fB/usr/doc/sms_sdl\-VERSION/sample_config\fR for further information.
.SH "PATCHES"
@@ -283,6 +296,16 @@ The emulator no longer segfaults when the \s-1ROM\s0 filename doesn't contain a
\&\s-1ROM\s0 filename can appear anywhere on the command line, before or after options (patch by B. Watson).
.IP "\-" 4
Wrapper script, supports config file and snapshots/savestates in ~/.sms_sdl (script by B. Watson).
+.SH "LIMITATIONS"
+.IX Header "LIMITATIONS"
+.IP "\-" 4
+There are no controls mapped for the player 2 controller. Only one
+joystick is supported, and the keyboard only has player 1 mappings.
+.IP "\-" 4
+The only supported resolutions are tiny, by modern desktop \s-1PC\s0
+standards. By default, \s-1SMS\s0 games run at 256x192 and \s-1GG\s0 games run at
+160x144. With \fB\-\-filter\fR, the window/screen size is doubled: 512x384
+and 320x288.
.SH "AUTHORS"
.IX Header "AUTHORS"
The original \s-1SMS\s0 is (C) Charles Mac Donald in 1998, 1999, 2000.
diff --git a/games/sms_sdl/sms_sdl.SlackBuild b/games/sms_sdl/sms_sdl.SlackBuild
index 40e3374897..b4faea9300 100644
--- a/games/sms_sdl/sms_sdl.SlackBuild
+++ b/games/sms_sdl/sms_sdl.SlackBuild
@@ -1,11 +1,19 @@
-#!/bin/sh
+#!/bin/bash
# Slackware build script for sms_sdl
-# Written by B. Watson (yalhcru@gmail.com)
+# Written by B. Watson (urchlay@slackware.uk)
# Licensed under the WTFPL. See http://www.wtfpl.net/txt/copying/ for details.
+# 20230107 bkw: BUILD=5, fix doinst.sh.
+
+# 20211024 bkw: BUILD=4
+# - made a new icon, hopefully better looking.
+# - new-style icons.
+# - wrapper script: create default config if no config found.
+# - expand man page a bit.
+
# 20200104 bkw:
# - Whoops! The sms_sdl.png icon was actually a .gif. Fix & bump BUILD.
@@ -20,10 +28,13 @@
# of including our own custom mime types. Since Slackware already has
# this mime type, get rid of the option to disable mime.
+cd $(dirname $0) ; CWD=$(pwd)
+
PRGNAM=sms_sdl
VERSION=${VERSION:-0.9.4a_r7.1}
-BUILD=${BUILD:-4}
+BUILD=${BUILD:-5}
TAG=${TAG:-_SBo}
+PKGTYPE=${PKGTYPE:-tgz}
if [ -z "$ARCH" ]; then
case "$( uname -m )" in
@@ -33,7 +44,11 @@ if [ -z "$ARCH" ]; then
esac
fi
-CWD=$(pwd)
+if [ ! -z "${PRINT_PACKAGE_NAME}" ]; then
+ echo "$PRGNAM-$VERSION-$ARCH-$BUILD$TAG.$PKGTYPE"
+ exit 0
+fi
+
TMP=${TMP:-/tmp/SBo}
PKG=$TMP/package-$PRGNAM
OUTPUT=${OUTPUT:-/tmp}
@@ -108,14 +123,25 @@ mkdir -p $PKG/usr/man/man6
sed "s/\<VERSION\>/$VERSION/g" < $CWD/$PRGNAM.6 | \
gzip -9c > $PKG/usr/man/man6/$PRGNAM.6.gz
-# icon by finite (see REAME), desktop written for this build.
+# .desktop written for this build.
mkdir -p $PKG/usr/share/applications $PKG/usr/share/pixmaps
cat $CWD/$PRGNAM.desktop > $PKG/usr/share/applications/$PRGNAM.desktop
-cat $CWD/$PRGNAM.png > $PKG/usr/share/pixmaps/$PRGNAM.png
+
+# 20211024 bkw: created a new icon, the old one didn't scale down
+# well, plus it was too dark. I'm still not a graphic designer, feel
+# free to send me a better one.
+for px in 16 32 48 64 128; do
+ size=${px}x${px}
+ dir=$PKG/usr/share/icons/hicolor/$size/apps
+ mkdir -p $dir
+ convert -resize $size $CWD/$PRGNAM.png $dir/$PRGNAM.png
+done
+
+ln -s ../icons/hicolor/48x48/apps/$PRGNAM.png $PKG/usr/share/pixmaps/$PRGNAM.png
mkdir -p $PKG/install
cat $CWD/doinst.sh > $PKG/install/doinst.sh
cat $CWD/slack-desc > $PKG/install/slack-desc
cd $PKG
-/sbin/makepkg -l y -c n $OUTPUT/$PRGNAM-$VERSION-$ARCH-$BUILD$TAG.${PKGTYPE:-tgz}
+/sbin/makepkg -l y -c n $OUTPUT/$PRGNAM-$VERSION-$ARCH-$BUILD$TAG.$PKGTYPE
diff --git a/games/sms_sdl/sms_sdl.desktop b/games/sms_sdl/sms_sdl.desktop
index 47c50e67ed..d50e94253c 100644
--- a/games/sms_sdl/sms_sdl.desktop
+++ b/games/sms_sdl/sms_sdl.desktop
@@ -2,7 +2,7 @@
Type=Application
Name=SMS Plus/SDL
GenericName=Sega Master System Emulator
-Exec=sms_sdl %f
+Exec=/usr/games/sms_sdl %f
Icon=sms_sdl
Terminal=false
StartupNotify=false
diff --git a/games/sms_sdl/sms_sdl.info b/games/sms_sdl/sms_sdl.info
index 6063dfcb82..2039f338de 100644
--- a/games/sms_sdl/sms_sdl.info
+++ b/games/sms_sdl/sms_sdl.info
@@ -7,4 +7,4 @@ DOWNLOAD_x86_64=""
MD5SUM_x86_64=""
REQUIRES=""
MAINTAINER="B. Watson"
-EMAIL="yalhcru@gmail.com"
+EMAIL="urchlay@slackware.uk"
diff --git a/games/sms_sdl/sms_sdl.png b/games/sms_sdl/sms_sdl.png
index deddb79802..0f77d8d238 100644
--- a/games/sms_sdl/sms_sdl.png
+++ b/games/sms_sdl/sms_sdl.png
Binary files differ
diff --git a/games/sms_sdl/sms_sdl.pod b/games/sms_sdl/sms_sdl.pod
index f099cfa821..6d78dd3f13 100644
--- a/games/sms_sdl/sms_sdl.pod
+++ b/games/sms_sdl/sms_sdl.pod
@@ -56,7 +56,7 @@ Disable sound.
=item B<--filter> <mode>
-Render using a filter. Available modes:
+Scales the display to 200% size. Available modes:
=over 4
@@ -78,6 +78,10 @@ Render using a filter. Available modes:
=back
+Note that the B<1> to B<8> keys can be used to change the filter
+while the emulator is running, but I<only> if it was started
+with the B<--filter> option.
+
=back
=head1 KEYBOARD
@@ -86,47 +90,48 @@ Render using a filter. Available modes:
=item B<F1>
-Screenshot in BMP format
+Save screenshot in BMP format (in B<~/.sms_sdl>).
=item B<F2>
-Save state
+Save state.
=item B<F3>
-Load state
+Load state.
=item B<F4/F5>
-Dec/inc frame skip value
+Decrease/increase frame skip value.
=item B<F6/F7>
-Dec/inc state slot
+Decrease/increase state slot.
=item B<1..8>
-Switch rendering filter
+Switch rendering filter. Only works if the emulator was started
+with the B<--filter> option.
=item B<C>
-Button 1
+Controller button 1.
=item B<V>
-Button 2
+Controller button 2.
=item B<ENTER>
-Start (GG) / pause (SMS)
+Start (GG) / pause (SMS).
=item B<ARROWS>
-Directional pad
+Directional pad.
=item B<TAB>
-Console hard reset
+Console hard reset.
=back
@@ -136,8 +141,11 @@ The key bindings may not be remapped.
ROM image files may be in raw dump format, or may have a header
(details are system-specific). Also, ROM images may be zipped (not
-gzipped), in which case the first file in the zip file's directory must
-be the ROM image (any other files are ignored).
+gzipped), in which case the first file in the zip file's directory
+that matches I<*.sms>, I<*.gg>, I<*.rom>, I<*.bin> (case-insensitive)
+will be used as the ROM image. Other files are ignored. If nothing
+in the zip file matches, the first file in the zip directory will
+be used.
B<sms_sdl> looks at the filename to determine the type of ROM image
in use. Any file whose name ends in I<.gg> (case-insensitive match) is
@@ -146,13 +154,13 @@ Master System ROM. In the case of a zipped image, this refers to the
file inside the zip file; the zip file itself doesn't have any special
naming requirements.
-Screenshot filenames (F1 key) are generated by replacing the filename
+Screenshot filenames (B<F1> key) are generated by replacing the filename
extension with I<-NNN.bmp>, where NNN is a 3-digit number (000 for the
first screenshot, 001 for the second, etc). The numbering starts at 000
every time the emulator is started, and existing files will be overwritten
without confirmation.
-State save filenames (F2 key) are generated by replacing the filename
+State save filenames (B<F2> key) are generated by replacing the filename
extension with I<.stN>, where N is the number of the save slot (one or
more digits). Again, existing files are overwritten without confirmation.
@@ -161,10 +169,15 @@ Screenshots and savestates are stored in I<~/.sms_sdl>.
=head1 CONFIG FILE
B<sms_sdl> is launched by a shell script wrapper which reads the file
-I<~/.sms_sdl/config> if it exists. Any of the options above may be placed
-in this file (one option per line, with or without the leading B<-->
-characters). These options will be passed as command-line arguments to
-the real B<sms_sdl> binary every time it runs.
+I<~/.sms_sdl/config> if it exists. Any of the options above may be
+placed in this file (one option per line, with or without the leading
+B<--> characters). These options will be passed as command-line
+arguments to the real B<sms_sdl> binary every time it runs. Any
+arguments passed to the script will appear after the ones read from
+the config file.
+
+If there's no I<~/.sms_sdl/config>, a default one will be created,
+which enables B<--joystick>, B<--fm>, and B<--filter 2x>.
See B</usr/doc/sms_sdl-VERSION/sample_config> for further information.
@@ -196,6 +209,24 @@ Wrapper script, supports config file and snapshots/savestates in ~/.sms_sdl (scr
=back
+=head1 LIMITATIONS
+
+=over 4
+
+=item -
+
+There are no controls mapped for the player 2 controller. Only one
+joystick is supported, and the keyboard only has player 1 mappings.
+
+=item -
+
+The only supported resolutions are tiny, by modern desktop PC
+standards. By default, SMS games run at 256x192 and GG games run at
+160x144. With B<--filter>, the window/screen size is doubled: 512x384
+and 320x288.
+
+=back
+
=head1 AUTHORS
The original SMS is (C) Charles Mac Donald in 1998, 1999, 2000.
diff --git a/games/sms_sdl/sms_sdl.sh b/games/sms_sdl/sms_sdl.sh
index d9a6ff1afd..cccfce3563 100644
--- a/games/sms_sdl/sms_sdl.sh
+++ b/games/sms_sdl/sms_sdl.sh
@@ -49,6 +49,15 @@ unzip_rom() {
mkdir -p $sms_userdir
+# 20211025 bkw: if there's no config file, create one.
+if [ ! -e "$conf_file" ]; then
+ cat > "$conf_file" <<EOF
+joystick
+fm
+filter 2x
+EOF
+fi
+
if [ -e "$conf_file" ]; then
while read line; do
# remove comments
diff --git a/games/snes9x/ChangeLog.old b/games/snes9x/ChangeLog.old
new file mode 100644
index 0000000000..48518fd463
--- /dev/null
+++ b/games/snes9x/ChangeLog.old
@@ -0,0 +1,71 @@
+# 20220622 bkw, BUILD=2:
+# - strip binary (whoops).
+# - remove mention of retroarch support from README, it FTBFS.
+# sooner or later I'll fix it or remove it entirely.
+# Note: I tried snes9x 1.61 on Slackware 15.0 with all updates, and
+# it still crashes as described below. Also tried latest post-1.61 git
+# and it has the same problem. So staying with 1.59 for now, sorry.
+
+# 20211014 bkw: *downgrade* to 1.59, for now at least. 1.60 crashes
+# immediately if built with gtk+2 and started with a ROM filename.
+# If you pick a ROM from within the app, it'll work sometimes, but
+# sometimes it'll crash. When build with gtk+3, it crashes any time
+# you try to open the Preferences dialog while a ROM is loaded. I
+# also tried the latest git, it acts the same as 1.60 (except that it
+# can't be built with gtk+2 any more). I can't get 1.59 to crash, so
+# that's what I'm packaging. I don't know if the issues with 1.60 are
+# something to do with -current (something that might be fixed before
+# 15.0 releases) or something broken upstream. If you're reading this
+# after Slackware 15.0 has been released, please remind me to look
+# into it again.
+
+# 20191126 bkw: update for 1.60. Upstream has switched from autotools
+# to meson for the build system, so this script can no longer build
+# old versions.
+
+# 20181201 bkw:
+# - update for 1.57.
+# - disable OSS audio by default, add OSS=yes option.
+# - autodetect RetroArch, add RETROARCH=yes|no option.
+# - document the above in the README.
+# - document PULSE=no in README.
+# - stop including snes9x.conf.default in the docdir, since it's
+# outdated and will cause snes9x to segfault if you try to use it!
+# - since we now have 3 build options, make slack-desc show them.
+# - add patch from upstream to speed up linking the libretro core if
+# -jX is in MAKEFLAGS.
+# - add patch fro upstream to stop segfaulting if the config file is
+# missing the ScanlineIntensity variable. Means I can finaly remove
+# the "you should delete your old config file" from the README.
+
+# 20180730 bkw:
+# - BUILD=2.
+# - add libretro/RetroArch, thanks to orbea.
+# - add --without-portaudio to configure args. snes9x runs about
+# 1 frame/sec if I start it up with the sound driver set to portaudio,
+# and I've gotten a report of it blasting high-volume white noise
+# thru the speakers if you switch to portaudio while a ROM is already
+# running. I can't see any reason to use it in favor of pulse, alsa,
+# oss, or sdl audio.
+# - don't extract windows, mac, old-school unix stuff from tarball.
+# uses 50% less $TMP space.
+
+# 20180623 bkw: update for 1.56.2.
+# 20180611 bkw:
+# - update for 1.56.1.
+# - switch the UI from gtk3 to gtk2, as 14.2's gtk3 is too old.
+# - add undocumented PULSE=no build option (in anticipation of 15.0's
+# pure-alsa-system).
+# - add SDL2 to REQUIRES. technically, it's not truly required: snes9x
+# only uses SDL2 to support joysticks. playing with the keyboard/mouse
+# would still work without it. 15.0 is coming soon, and will have SDL2
+# in the core OS, so don't bother me about this decision.
+# - update README, the snes9x_gtk build went away in 2010, no need to
+# mention it now. also add notes about upgrading from 1.55.
+# 20171221 bkw: use --without-system-zip to build bundled unzip, instead
+# of adding minizip as a dependency.
+# 20171213 bkw: update for 1.55.
+# 20170302 bkw: use long-format github URL
+# 20161015 bkw: update for 1.54.1. script has changed enough that it
+# can't build 1.53 any more.
+
diff --git a/games/snes9x/README b/games/snes9x/README
index 7583521398..7685488ec1 100644
--- a/games/snes9x/README
+++ b/games/snes9x/README
@@ -1,20 +1,27 @@
snes9x (Super Nintendo Entertainment System emulator)
-Snes9x is a portable, freeware Super Nintendo Entertainment System (SNES)
-emulator. It basically allows you to play most games designed for the SNES
-and Super Famicom Nintendo game systems on your PC or Workstation. The
-games include some real gems that were only ever released in Japan.
+Snes9x is a portable, freeware Super Nintendo Entertainment System
+(SNES) emulator. It basically allows you to play most games designed
+for the SNES and Super Famicom Nintendo game systems on your PC or
+Workstation. The games include some real gems that were only ever
+released in Japan.
-When you first run snes9x:
+This package includes both snes9x (the command-line build) and
+snes9x-gtk (with graphical user interface).
-- The first thing you'll want to do is configure the controls. By default
- there are *no* controls set up; you'll be unable to play any games! The
- config is under Options -> Preferences, in the Joypads tab. You can
- configure either keyboard or joystick/gamepad controls, but not both.
+When you first run snes9x-gtk:
-- If the game audio is choppy or distorted, try setting the sound driver
- to Pulse or ALSA (Options -> Preferences -> Sound tab). Specifically,
- avoid SDL audio (unfortunately it's the default if PULSE=no).
+- The first thing you'll want to do is configure the controls. By
+ default there are *no* controls set up; you'll be unable to play any
+ games! The config is under Options -> Preferences, in the Joypads
+ tab. You can configure either keyboard or joystick/gamepad controls,
+ but not both.
+
+- If the game audio is choppy or distorted, try setting the
+ sound driver to Pulse or ALSA (Options -> Preferences -> Sound
+ tab). Specifically, avoid SDL audio. PortAudio support may be
+ included (it's an optional dependency), but so far as I can tell,
+ offers no advantage.
Notes:
@@ -23,15 +30,19 @@ Notes:
installed. You can set RETROARCH=yes to force the core to be built,
or RETROARCH=no to forcibly disable the core. Note that RetroArch
doesn't have to be installed to build the libretro core, but it's
- useless without RetroArch installed.
-
-- Starting with 1.56.1, you might notice some user interface
- differences. This is because 1.55 used GTK+-3.0, but 1.56 and newer
- require a version of GTK+-3.0 that's newer than Slackware 14.2
- provides. So, starting with 1.56, this build uses the GTK+-2.0 UI.
-
-- Starting with 1.57, OSS audio is disabled by default. Most users
- won't be affected, since pulseaudio is now the default audio system on
- Slackware, and ALSA is the fallback option. If you *need* OSS support,
- set OSS=yes in the script's environment. You may also disable PulseAudio
- by setting PULSE=no in the environment.
+ useless without RetroArch installed. Also note: the libretro core
+ builds, but has not been tested by the SlackBuild author. If it
+ works for you, let me know so I can update this README.
+
+- OSS audio is disabled by default. Most users won't be affected,
+ since PulseAudio is now the default audio system on Slackware, and
+ ALSA is the fallback option. If you *need* OSS support, set OSS=yes
+ in the script's environment.
+
+- PulseAudio is enabled by default. You can disable it with PULSE=no
+ in the environment.
+
+- portaudio is an optional dependency. It's autodetected at build time,
+ but you can disable it with PORTAUDIO=no in the environment. I have
+ no idea why anyone would want to built snes9x with portaudio, but
+ do whatever you decide to do.
diff --git a/games/snes9x/slack-desc b/games/snes9x/slack-desc
index d08f491b0f..2860fe1f36 100644
--- a/games/snes9x/slack-desc
+++ b/games/snes9x/slack-desc
@@ -14,6 +14,6 @@ snes9x: for the SNES and Super Famicom Nintendo game systems on your PC or
snes9x: Workstation. The games include some real gems that were only ever
snes9x: released in Japan.
snes9x:
-snes9x: Build options: PULSE=@WITHPULSE@ OSS=@WITHOSS@ RETROARCH=@build_ra@
-snes9x:
+snes9x: Build options:
+snes9x: PULSE=@PU@ OSS=@OSS@ RETROARCH=@RA@ PORTAUDIO=@PA@
snes9x:
diff --git a/games/snes9x/snes9x-gtk.6 b/games/snes9x/snes9x-gtk.6
index 2dc3f1fa4a..6b9e9413ca 100644
--- a/games/snes9x/snes9x-gtk.6
+++ b/games/snes9x/snes9x-gtk.6
@@ -1,70 +1,104 @@
-.TH SNES9X-GTK 6 "22 OCT 2009" "SlackBuilds.org Project" "Slackware Linux"
+.\" Man page generated from reStructuredText.
+.
+.
+.nr rst2man-indent-level 0
+.
+.de1 rstReportMargin
+\\$1 \\n[an-margin]
+level \\n[rst2man-indent-level]
+level margin: \\n[rst2man-indent\\n[rst2man-indent-level]]
+-
+\\n[rst2man-indent0]
+\\n[rst2man-indent1]
+\\n[rst2man-indent2]
+..
+.de1 INDENT
+.\" .rstReportMargin pre:
+. RS \\$1
+. nr rst2man-indent\\n[rst2man-indent-level] \\n[an-margin]
+. nr rst2man-indent-level +1
+.\" .rstReportMargin post:
+..
+.de UNINDENT
+. RE
+.\" indent \\n[an-margin]
+.\" old: \\n[rst2man-indent\\n[rst2man-indent-level]]
+.nr rst2man-indent-level -1
+.\" new: \\n[rst2man-indent\\n[rst2man-indent-level]]
+.in \\n[rst2man-indent\\n[rst2man-indent-level]]u
+..
+.TH "SNES9X-GTK" 6 "2023-04-10" "1.62.3" "SlackBuilds.org"
.SH NAME
snes9x-gtk \- Super Nintendo Entertainment System emulator
+.\" RST source for snes9x-gtk(1) man page. Convert with:
+.
+.\" rst2man.py snes9x-gtk.rst > snes9x-gtk.6
+.
.SH SYNOPSIS
-.B snes9x\-gtk
-[\-filter \fItype\fR]
-[\-mutesound]
-[\fIrom\-file]
+.sp
+\fBsnes9x\-gtk\fP [\fB\-filter\fP \fItype\fP] [\fB\-mutesound\fP] [\fBrom\-file\fP]
.SH DESCRIPTION
-Snes9x is a portable, freeware Super Nintendo Entertainment System (SNES)
-emulator. It basically allows you to play most games designed for the SNES
-and Super Famicom Nintendo game systems on your PC or Workstation; they
-include some real gems that were only ever released in Japan.
-.PP
-.B snes9x\-gtk
-is an unofficial port of Snes9x with a GTK+ graphical frontend.
-.PP
-With no ROM file argument, snes9x\-gtk will start its graphical user interface.
-When a ROM file is named on the command line, snes9x\-gtk will start
-emulation immediately.
-.PP
-Unlike the original snes9x, snes9x\-gtk doesn't extensively use command\-line
-options to affect its behaviour. Instead, use the GUI and/or keyboard
-shortcuts from within the emulator.
-.SS OPTIONS
+.sp
+Snes9x is a portable, freeware Super Nintendo Entertainment
+System (SNES) emulator. It basically allows you to play most games
+designed for the SNES and Super Famicom Nintendo game systems
+on your PC or Workstation; they include some real gems that were only
+ever released in Japan.
+.sp
+\fBsnes9x\-gtk\fP is an unofficial port of Snes9x with a GTK+ graphical front‐end.
+.sp
+With no ROM file argument, \fBsnes9x\-gtk\fP will start its graphical user
+interface. When a ROM file is named on the command line, snes9x\-gtk
+will start emulation immediately.
+.sp
+Unlike the original snes9x, \fBsnes9x\-gtk\fP doesn\(aqt extensively use
+command\-line options to affect its behaviour. Instead, use the GUI
+and/or keyboard shortcuts from within the emulator.
+.SH OPTIONS
+.INDENT 0.0
.TP
-\fB\-filter\fR \fItype\fR
+.B \fB\-filter\fP \fItype\fP
Use a filter to scale the video. Filter types are:
-.br
-.nh
-.I none
-.I supereagle
-.I 2xsai
-.I super2xsai
-.I hq2x
-.I hq3x
-.I hq4x
-.I epx
-.I ntsc
-.hy
-.PP
-The \-filter option does the same thing as the GUI's "Apply Scaling Filter"
-selection (under Preferences / Display).
+.INDENT 7.0
+.INDENT 3.5
+\fInone\fP \fIsupereagle\fP \fI2xsai\fP \fIsuper2xsai\fP \fIhq2x\fP \fIhq3x\fP \fIhq4x\fP \fIepx\fP \fIntsc\fP
+.UNINDENT
+.UNINDENT
+.sp
+The \-filter option does the same thing as the GUI\(aqs "Apply Scaling
+Filter" selection (under Preferences / Display).
.TP
-.B \-mutesound
+.B \fB\-mutesound\fP
Disable audio output. The sound CPU is still emulated. Note that this
option will enable the "mute sound?" checkbox in the Preferences user
-interface, whose value will be saved across sessions (you must use the GUI to
-unmute the audio).
+interface, whose value will be saved across sessions (you must use
+the GUI to unmute the audio).
+.UNINDENT
.SH FILES
-.B ~/.snes9x/snes9x.xml
-.br
-Configuration file. Not intended to be edited directly; stores the settings
-made in the GUI. To return all settings to their defaults, remove this file.
-.PP
-.B ~/.snes9x/snapshots/*
-.br
-Saved states, named after ROM filenames.
-.PP
-.B ~/.snes9x/*.png
-.br
-Screenshots, named after ROM filenames.
-.SH AUTHOR
-snes9x\-gtk was ported by Brandon Wright <bearoso@gmail.com>.
-.PP
-Snes9x was written by Gary Henderson and Jerremy Koot. It also includes code
-from Ivar (Ivar@snes9x.com), zsKnight and _Demo_ and many others.
-.PP
-This manual page was written by B. Watson
-for the SlackBuilds.org project (but may be used by others).
+.INDENT 0.0
+.TP
+.B \fB~/.config/snes9x/snes9x.conf\fP
+Configuration file. Not intended to be edited directly; stores the
+settings made in the GUI. To return all settings to their defaults,
+remove this file.
+.UNINDENT
+.sp
+Note that the graphical \fBsnes9x\-gtk\fP does not share config files or
+directories with command\-line \fBsnes9x\fP\&.
+.SH COPYRIGHT
+.sp
+See the file /usr/doc/snes9x\-1.62.3/LICENSE for license information.
+.SH AUTHORS
+.sp
+snes9x\-gtk was ported by Brandon Wright <\fI\%bearoso@gmail.com\fP>.
+.sp
+Snes9x was written by Gary Henderson and Jerremy Koot. It also includes
+code from Ivar (\fI\%Ivar@snes9x.com\fP), zsKnight, _Demo_, and many others.
+.sp
+This man page written for the SlackBuilds.org project
+by B. Watson, and is licensed under the WTFPL.
+.SH SEE ALSO
+.sp
+\fBsnes9x\fP(6)
+.\" Generated by docutils manpage writer.
+.
diff --git a/games/snes9x/snes9x-gtk.rst b/games/snes9x/snes9x-gtk.rst
new file mode 100644
index 0000000000..0434a67ee1
--- /dev/null
+++ b/games/snes9x/snes9x-gtk.rst
@@ -0,0 +1,91 @@
+.. RST source for snes9x-gtk(1) man page. Convert with:
+.. rst2man.py snes9x-gtk.rst > snes9x-gtk.6
+
+.. |version| replace:: 1.62.3
+.. |date| date::
+
+==========
+snes9x-gtk
+==========
+
+--------------------------------------------
+Super Nintendo Entertainment System emulator
+--------------------------------------------
+
+:Manual section: 6
+:Manual group: SlackBuilds.org
+:Date: |date|
+:Version: |version|
+
+SYNOPSIS
+========
+
+**snes9x-gtk** [**-filter** *type*] [**-mutesound**] [**rom-file**]
+
+DESCRIPTION
+===========
+
+Snes9x is a portable, freeware Super Nintendo Entertainment
+System (SNES) emulator. It basically allows you to play most games
+designed for the SNES and Super Famicom Nintendo game systems
+on your PC or Workstation; they include some real gems that were only
+ever released in Japan.
+
+**snes9x-gtk** is an unofficial port of Snes9x with a GTK+ graphical front‐end.
+
+With no ROM file argument, **snes9x-gtk** will start its graphical user
+interface. When a ROM file is named on the command line, snes9x-gtk
+will start emulation immediately.
+
+Unlike the original snes9x, **snes9x-gtk** doesn't extensively use
+command-line options to affect its behaviour. Instead, use the GUI
+and/or keyboard shortcuts from within the emulator.
+
+OPTIONS
+=======
+
+**-filter** *type*
+ Use a filter to scale the video. Filter types are:
+
+ *none* *supereagle* *2xsai* *super2xsai* *hq2x* *hq3x* *hq4x* *epx* *ntsc*
+
+ The -filter option does the same thing as the GUI's "Apply Scaling
+ Filter" selection (under Preferences / Display).
+
+**-mutesound**
+ Disable audio output. The sound CPU is still emulated. Note that this
+ option will enable the "mute sound?" checkbox in the Preferences user
+ interface, whose value will be saved across sessions (you must use
+ the GUI to unmute the audio).
+
+FILES
+=====
+
+**~/.config/snes9x/snes9x.conf**
+ Configuration file. Not intended to be edited directly; stores the
+ settings made in the GUI. To return all settings to their defaults,
+ remove this file.
+
+Note that the graphical **snes9x-gtk** does not share config files or
+directories with command-line **snes9x**\.
+
+COPYRIGHT
+=========
+
+See the file /usr/doc/snes9x-|version|/LICENSE for license information.
+
+AUTHORS
+=======
+
+snes9x-gtk was ported by Brandon Wright <bearoso@gmail.com>.
+
+Snes9x was written by Gary Henderson and Jerremy Koot. It also includes
+code from Ivar (Ivar@snes9x.com), zsKnight, _Demo_, and many others.
+
+This man page written for the SlackBuilds.org project
+by B. Watson, and is licensed under the WTFPL.
+
+SEE ALSO
+========
+
+**snes9x**\(6)
diff --git a/games/snes9x/snes9x.6 b/games/snes9x/snes9x.6
new file mode 100644
index 0000000000..d5d21a31f5
--- /dev/null
+++ b/games/snes9x/snes9x.6
@@ -0,0 +1,89 @@
+.\" Man page generated from reStructuredText.
+.
+.
+.nr rst2man-indent-level 0
+.
+.de1 rstReportMargin
+\\$1 \\n[an-margin]
+level \\n[rst2man-indent-level]
+level margin: \\n[rst2man-indent\\n[rst2man-indent-level]]
+-
+\\n[rst2man-indent0]
+\\n[rst2man-indent1]
+\\n[rst2man-indent2]
+..
+.de1 INDENT
+.\" .rstReportMargin pre:
+. RS \\$1
+. nr rst2man-indent\\n[rst2man-indent-level] \\n[an-margin]
+. nr rst2man-indent-level +1
+.\" .rstReportMargin post:
+..
+.de UNINDENT
+. RE
+.\" indent \\n[an-margin]
+.\" old: \\n[rst2man-indent\\n[rst2man-indent-level]]
+.nr rst2man-indent-level -1
+.\" new: \\n[rst2man-indent\\n[rst2man-indent-level]]
+.in \\n[rst2man-indent\\n[rst2man-indent-level]]u
+..
+.TH "SNES9X" 6 "2023-04-10" "1.62.3" "SlackBuilds.org"
+.SH NAME
+snes9x \- Super Nintendo Entertainment System emulator
+.\" RST source for snes9x(6) man page. Convert with:
+.
+.\" rst2man.py snes9x.rst > snes9x.6
+.
+.SH SYNOPSIS
+.sp
+\fBsnes9x\fP [\fIoptions\fP] \fBrom\-file\fP
+.SH DESCRIPTION
+.sp
+Snes9x is a portable, freeware Super Nintendo Entertainment
+System (SNES) emulator. It basically allows you to play most games
+designed for the SNES and Super Famicom Nintendo game systems
+on your PC or Workstation; they include some real gems that were only
+ever released in Japan.
+.sp
+For the full documentation, see:
+.INDENT 0.0
+.INDENT 3.5
+/usr/doc/snes9x\-1.62.3/readme_unix.html
+.UNINDENT
+.UNINDENT
+.sp
+This is the command\-line build of \fBsnes9x\fP\&. For the GUI version,
+see \fBsnes9x\-gtk\fP(6).
+.SH OPTIONS
+.sp
+This man page doesn\(aqt include a list of options. Run \fBsnes9x\fP with
+no arguments (or with \fB\-\-help\fP) to see them.
+.SH FILES
+.INDENT 0.0
+.TP
+.B \fB~/.snes9x/snes9x.conf\fP
+The config file. \fBsnes9x\fP doesn\(aqt create this; the default config
+file is found in /usr/doc/snes9x\-1.62.3/snes9x.conf.default and
+must be copied to ~/.snes9x/snes9x.conf manually.
+.UNINDENT
+.sp
+The directory \fB~/.snes9x/\fP also contains subdirectories for savestates,
+screenshots, sram, etc. These are populated by \fBsnes9x\fP as needed.
+.sp
+Note that the graphical \fBsnes9x\-gtk\fP does not share config files or
+directories with command\-line \fBsnes9x\fP\&.
+.SH COPYRIGHT
+.sp
+See the file /usr/doc/snes9x\-1.62.3/LICENSE for license information.
+.SH AUTHORS
+.sp
+Snes9x was written by Gary Henderson and Jerremy Koot. It also includes
+code from Ivar (\fI\%Ivar@snes9x.com\fP), zsKnight, _Demo_, and many others.
+.sp
+This man page written for the SlackBuilds.org project
+by B. Watson, and is licensed under the WTFPL.
+.SH SEE ALSO
+.sp
+\fBsnes9x\-gtk\fP(6)
+.\" Generated by docutils manpage writer.
+.
diff --git a/games/snes9x/snes9x.SlackBuild b/games/snes9x/snes9x.SlackBuild
index ace53f9636..ad26551806 100644
--- a/games/snes9x/snes9x.SlackBuild
+++ b/games/snes9x/snes9x.SlackBuild
@@ -1,65 +1,31 @@
-#!/bin/sh
+#!/bin/bash
# Slackware build script for snes9x
-# Written by B. Watson (yalhcru@gmail.com)
+# Written by B. Watson (urchlay@slackware.uk)
# Licensed under the WTFPL. See http://www.wtfpl.net/txt/copying/ for details.
-# 20191126 bkw: update for 1.60. Upstream has switched from autotools
-# to meson for the build system, so this script can no longer build
-# old versions.
-
-# 20181201 bkw:
-# - update for 1.57.
-# - disable OSS audio by default, add OSS=yes option.
-# - autodetect RetroArch, add RETROARCH=yes|no option.
-# - document the above in the README.
-# - document PULSE=no in README.
-# - stop including snes9x.conf.default in the docdir, since it's
-# outdated and will cause snes9x to segfault if you try to use it!
-# - since we now have 3 build options, make slack-desc show them.
-# - add patch from upstream to speed up linking the libretro core if
-# -jX is in MAKEFLAGS.
-# - add patch fro upstream to stop segfaulting if the config file is
-# missing the ScanlineIntensity variable. Means I can finaly remove
-# the "you should delete your old config file" from the README.
-
-# 20180730 bkw:
-# - BUILD=2.
-# - add libretro/RetroArch, thanks to orbea.
-# - add --without-portaudio to configure args. snes9x runs about
-# 1 frame/sec if I start it up with the sound driver set to portaudio,
-# and I've gotten a report of it blasting high-volume white noise
-# thru the speakers if you switch to portaudio while a ROM is already
-# running. I can't see any reason to use it in favor of pulse, alsa,
-# oss, or sdl audio.
-# - don't extract windows, mac, old-school unix stuff from tarball.
-# uses 50% less $TMP space.
-
-# 20180623 bkw: update for 1.56.2.
-# 20180611 bkw:
-# - update for 1.56.1.
-# - switch the UI from gtk3 to gtk2, as 14.2's gtk3 is too old.
-# - add undocumented PULSE=no build option (in anticipation of 15.0's
-# pure-alsa-system).
-# - add SDL2 to REQUIRES. technically, it's not truly required: snes9x
-# only uses SDL2 to support joysticks. playing with the keyboard/mouse
-# would still work without it. 15.0 is coming soon, and will have SDL2
-# in the core OS, so don't bother me about this decision.
-# - update README, the snes9x_gtk build went away in 2010, no need to
-# mention it now. also add notes about upgrading from 1.55.
-# 20171221 bkw: use --without-system-zip to build bundled unzip, instead
-# of adding minizip as a dependency.
-# 20171213 bkw: update for 1.55.
-# 20170302 bkw: use long-format github URL
-# 20161015 bkw: update for 1.54.1. script has changed enough that it
-# can't build 1.53 any more.
+# 20230418 bkw: BUILD=2, make portaudio optional + autodetected.
+# 20230410 bkw: update for 1.62.3.
+# Most of the work needed for this update was done by M.Dinslage,
+# to whom I owe thanks. I updated the man page, and added the
+# non-GUI binary plus a man page for it.
+
+# For older change-comments, see ChangeLog.old (it was getting too long
+# to keep in the script).
+
+cd $(dirname $0) ; CWD=$(pwd)
PRGNAM=snes9x
-VERSION=${VERSION:-1.60}
-BUILD=${BUILD:-1}
+VERSION=${VERSION:-1.62.3}
+BUILD=${BUILD:-2}
TAG=${TAG:-_SBo}
+PKGTYPE=${PKGTYPE:-tgz}
+
+SPIRVVER="2021-01-15"
+VULKVER="1.3.246"
+GLSLANGVER="12.1.0"
if [ -z "$ARCH" ]; then
case "$( uname -m )" in
@@ -69,11 +35,17 @@ if [ -z "$ARCH" ]; then
esac
fi
-CWD=$(pwd)
+if [ ! -z "${PRINT_PACKAGE_NAME}" ]; then
+ echo "$PRGNAM-$VERSION-$ARCH-$BUILD$TAG.$PKGTYPE"
+ exit 0
+fi
+
TMP=${TMP:-/tmp/SBo}
PKG=$TMP/package-$PRGNAM
OUTPUT=${OUTPUT:-/tmp}
+# Note: the flags we set here are followed by -O3, meaning the
+# -O2 does nothing. *shrug*
if [ "$ARCH" = "i586" ]; then
SLKCFLAGS="-O2 -march=i586 -mtune=i686"
LIBDIRSUFFIX=""
@@ -94,54 +66,70 @@ rm -rf $PKG
mkdir -p $TMP $PKG $OUTPUT
cd $TMP
rm -rf $PRGNAM-$VERSION
-# Don't extract the stuff we don't need, this saves 7.9MB in $TMP.
+# Don't extract the stuff we don't need, this saves a few MB in $TMP.
tar xvf $CWD/$PRGNAM-$VERSION.tar.gz \
- --wildcards --exclude '*/win32/*' \
- --exclude '*/macosx/*' --exclude '*/unix/*'
+ --wildcards \
+ --exclude '*/win32/*' \
+ --exclude '*/macosx/*'
cd $PRGNAM-$VERSION
+
+tar xvf $CWD/glslang-$GLSLANGVER.tar.gz \
+ -C external/glslang --strip-components=1
+tar xvf $CWD/SPIRV-Cross-$SPIRVVER.tar.gz \
+ -C external/SPIRV-Cross --strip-components=1
+tar xvf $CWD/Vulkan-Headers-$VULKVER.tar.gz \
+ -C external/vulkan-headers --strip-components=1
+
chown -R root:root .
find -L . -perm /111 -a \! -perm 755 -a -exec chmod 755 {} \+ -o \
\! -perm /111 -a \! -perm 644 -a -exec chmod 644 {} \+
-cd gtk
-
WITHPULSE=yes
if [ "$PULSE" = "no" ] || ! pkg-config --exists libpulse; then
- PULSEOPT="-D pulseaudio=false"
+ PULSEOPT="-DUSE_PULSEAUDIO=OFF"
WITHPULSE=no
fi
WITHOSS=yes
if [ "${OSS:-no}" = "no" ]; then
- OSSOPT="-D oss=false"
+ OSSOPT="-DUSE_OSS=OFF"
WITHOSS=no
fi
-mkdir build
-cd build
- CFLAGS="$SLKCFLAGS" \
- CXXFLAGS="$SLKCFLAGS" \
- meson .. \
- $PULSEOPT $OSSOPT \
- -D gtk3=false -D gtk2=true \
- --buildtype=release \
- --infodir=/usr/info \
- --libdir=/usr/lib${LIBDIRSUFFIX} \
- --localstatedir=/var \
- --mandir=/usr/man \
- --prefix=/usr \
- --sysconfdir=/etc
- ninja
- DESTDIR=$PKG ninja install
- mv $PKG/usr/bin $PKG/usr/games
-cd ..
+WITH_PA=no
+PA_OPT="-DUSE_PORTAUDIO=OFF"
+if pkg-config --exists portaudio-2.0 && [ "${PORTAUDIO:-yes}" = "yes" ]; then
+ WITH_PA=yes
+ PA_OPT="-DUSE_PORTAUDIO=ON"
+fi
+
+SLKCFLAGS+=" -DNDEBUG"
+mkdir -p gtk/build
+cd gtk/build
+ cmake \
+ -DCMAKE_C_FLAGS:STRING="$SLKCFLAGS" \
+ -DCMAKE_CXX_FLAGS:STRING="$SLKCFLAGS" \
+ -DCMAKE_INSTALL_PREFIX=/usr \
+ -DCMAKE_INSTALL_BINDIR=games \
+ $PULSEOPT $OSSOPT $PA_OPT \
+ -DCMAKE_INSTALL_DATAROOTDIR=share \
+ -DUSE_SYSTEMZIP=OFF \
+ -DCMAKE_BUILD_TYPE=Release ..
+ make VERBOSE=1
+ make install/strip DESTDIR=$PKG
+cd -
+
+# 20230410 bkw: Insidious weirdness: The bitmap icons all look the
+# same, but the .svg icon looks completely different. Just get rid
+# of it; we have the bitmap icons at every size we could want.
+rm -rf $PKG/usr/share/icons/hicolor/scalable
# RetroArch support, contributed by orbea (Hunter Sezen).
# Note that the source here is self-contained, there's no build-time
# dependency on RetroArch or libretro or such.
# snes9x_libretro-info originally came from:
# https://raw.githubusercontent.com/libretro/libretro-super/383f18fd7c36ffd5fe76ebac58e9e596dde67e66/dist/info/snes9x_libretro.info
-# Renamed .info => -info to avoid confusing SBo tools that deal with
+# Renamed .info => .info.txt to avoid confusing SBo tools that deal with
# SBo's .info files.
# 20181201 bkw: made this optional, auto-detected, and controllable
# via environment. It makes the build take 7x as long, no point wasting
@@ -160,33 +148,60 @@ esac
if [ "$build_ra" = "yes" ]; then
echo "=== Building libretro core"
( LIBNAM=${PRGNAM}_libretro
- cd ../libretro
+ PKGLIB=$PKG/usr/lib$LIBDIRSUFFIX
+ cd libretro
make LTO="-flto=jobserver"
- install -sDm0755 $LIBNAM.so $PKG/usr/lib${LIBDIRSUFFIX}/libretro/$LIBNAM.so
- install -Dm0644 $CWD/$LIBNAM-info \
- $PKG/usr/lib${LIBDIRSUFFIX}/libretro/info/$LIBNAM.info
+ install -sDm0755 $LIBNAM.so $PKGLIB/libretro/$LIBNAM.so
+ install -Dm0644 -o root -g root $CWD/$LIBNAM.info.txt \
+ $PKGLIB/libretro/info/$LIBNAM.info
)
else
echo "=== NOT building libretro core"
fi
+# Go ahead and include the non-gui binary. Note that it doesn't
+# support OSS or Pulse (only ALSA), so the OSS and PULSE environment
+# vars don't affect it.
+cd unix
+ CFLAGS="$SLKCFLAGS" \
+ CXXFLAGS="$SLKCFLAGS" \
+ ./configure \
+ --prefix=/usr \
+ --libdir=/usr/lib${LIBDIRSUFFIX} \
+ --sysconfdir=/etc \
+ --localstatedir=/var \
+ --mandir=/usr/man \
+ --docdir=/usr/doc/$PRGNAM-$VERSION \
+ --enable-gamepad \
+ --enable-gzip \
+ --enable-screenshot \
+ --enable-zip \
+ --without-system-zip \
+ --build=$ARCH-slackware-linux
+ make
+cd -
+
+# No 'make install' target.
+install -s -m0755 unix/snes9x $PKG/usr/games/snes9x
+
+# Man pages written by SlackBuild author.
mkdir -p $PKG/usr/man/man6
gzip -9c $CWD/snes9x-gtk.6 > $PKG/usr/man/man6/snes9x-gtk.6.gz
-ln -s $PRGNAM-gtk.6.gz $PKG/usr/man/man6/$PRGNAM.6.gz
-ln -s $PRGNAM-gtk $PKG/usr/games/$PRGNAM
+gzip -9c $CWD/snes9x.6 > $PKG/usr/man/man6/snes9x.6.gz
PKGDOC=$PKG/usr/doc/$PRGNAM-$VERSION
mkdir -p $PKGDOC
-cp -a ../LICENSE ../README* ../docs/* $PKGDOC
+cp -a LICENSE README* docs/* unix/docs/* unix/snes9x.conf.default $PKGDOC
cat $CWD/$PRGNAM.SlackBuild > $PKGDOC/$PRGNAM.SlackBuild
mkdir -p $PKG/install
-sed -e "s,@WITHPULSE@,$WITHPULSE," \
- -e "s,@WITHOSS@,$WITHOSS," \
- -e "s,@build_ra@,$build_ra," \
+sed -e "s,@PU@,$WITHPULSE," \
+ -e "s,@OSS@,$WITHOSS," \
+ -e "s,@PA@,$WITH_PA," \
+ -e "s,@RA@,$build_ra," \
< $CWD/slack-desc \
> $PKG/install/slack-desc
cat $CWD/doinst.sh > $PKG/install/doinst.sh
cd $PKG
-/sbin/makepkg -l y -c n $OUTPUT/$PRGNAM-$VERSION-$ARCH-$BUILD$TAG.${PKGTYPE:-tgz}
+/sbin/makepkg -l y -c n $OUTPUT/$PRGNAM-$VERSION-$ARCH-$BUILD$TAG.$PKGTYPE
diff --git a/games/snes9x/snes9x.info b/games/snes9x/snes9x.info
index efa5c1ac1f..fda41c81b4 100644
--- a/games/snes9x/snes9x.info
+++ b/games/snes9x/snes9x.info
@@ -1,10 +1,16 @@
PRGNAM="snes9x"
-VERSION="1.60"
+VERSION="1.62.3"
HOMEPAGE="https://github.com/snes9xgit/snes9x"
-DOWNLOAD="https://github.com/snes9xgit/snes9x/archive/1.60/snes9x-1.60.tar.gz"
-MD5SUM="1e0d5d5209b8018080bca0aa5da02dff"
+DOWNLOAD="https://github.com/snes9xgit/snes9x/archive/1.62.3/snes9x-1.62.3.tar.gz \
+ https://github.com/KhronosGroup/glslang/archive/12.1.0/glslang-12.1.0.tar.gz \
+ https://github.com/KhronosGroup/Vulkan-Headers/archive/v1.3.246/Vulkan-Headers-1.3.246.tar.gz \
+ https://github.com/KhronosGroup/SPIRV-Cross/archive/2021-01-15/SPIRV-Cross-2021-01-15.tar.gz"
+MD5SUM="53879c428f871e5e56d5a10dc24e4c10 \
+ 218e2dd3ab422fca3a99ba6ca517c84c \
+ 9b0106c6cae8ef061ba8a7c5b5778b1b \
+ b3d17d652cde727629a68ff338881290"
DOWNLOAD_x86_64=""
MD5SUM_x86_64=""
-REQUIRES="SDL2 meson"
+REQUIRES=""
MAINTAINER="B. Watson"
-EMAIL="yalhcru@gmail.com"
+EMAIL="urchlay@slackware.uk"
diff --git a/games/snes9x/snes9x.rst b/games/snes9x/snes9x.rst
new file mode 100644
index 0000000000..a7e03f9edf
--- /dev/null
+++ b/games/snes9x/snes9x.rst
@@ -0,0 +1,78 @@
+.. RST source for snes9x(6) man page. Convert with:
+.. rst2man.py snes9x.rst > snes9x.6
+
+.. |version| replace:: 1.62.3
+.. |date| date::
+
+======
+snes9x
+======
+
+--------------------------------------------
+Super Nintendo Entertainment System emulator
+--------------------------------------------
+
+:Manual section: 6
+:Manual group: SlackBuilds.org
+:Date: |date|
+:Version: |version|
+
+SYNOPSIS
+========
+
+**snes9x** [*options*] **rom-file**
+
+DESCRIPTION
+===========
+
+Snes9x is a portable, freeware Super Nintendo Entertainment
+System (SNES) emulator. It basically allows you to play most games
+designed for the SNES and Super Famicom Nintendo game systems
+on your PC or Workstation; they include some real gems that were only
+ever released in Japan.
+
+For the full documentation, see:
+
+ /usr/doc/snes9x-|version|/readme_unix.html
+
+This is the command-line build of **snes9x**. For the GUI version,
+see **snes9x-gtk**\(6).
+
+OPTIONS
+=======
+
+This man page doesn't include a list of options. Run **snes9x** with
+no arguments (or with **--help**) to see them.
+
+FILES
+=====
+
+**~/.snes9x/snes9x.conf**
+ The config file. **snes9x** doesn't create this; the default config
+ file is found in /usr/doc/snes9x-|version|/snes9x.conf.default and
+ must be copied to ~/.snes9x/snes9x.conf manually.
+
+The directory **~/.snes9x/** also contains subdirectories for savestates,
+screenshots, sram, etc. These are populated by **snes9x** as needed.
+
+Note that the graphical **snes9x-gtk** does not share config files or
+directories with command-line **snes9x**\.
+
+COPYRIGHT
+=========
+
+See the file /usr/doc/snes9x-|version|/LICENSE for license information.
+
+AUTHORS
+=======
+
+Snes9x was written by Gary Henderson and Jerremy Koot. It also includes
+code from Ivar (Ivar@snes9x.com), zsKnight, _Demo_, and many others.
+
+This man page written for the SlackBuilds.org project
+by B. Watson, and is licensed under the WTFPL.
+
+SEE ALSO
+========
+
+**snes9x-gtk**\(6)
diff --git a/games/snes9x/snes9x_libretro-info b/games/snes9x/snes9x_libretro.info.txt
index bcccb02e7e..bcccb02e7e 100644
--- a/games/snes9x/snes9x_libretro-info
+++ b/games/snes9x/snes9x_libretro.info.txt
diff --git a/games/snes9x2010/README b/games/snes9x2010/README
index f71e265395..2a72db2533 100644
--- a/games/snes9x2010/README
+++ b/games/snes9x2010/README
@@ -7,8 +7,5 @@ compatibility improvements.
This package was previously called snes9x-next.
-To build with the griffin LTCG use:
- GRIFFIN=1 ./snes9x2010.SlackBuild
-
To build the debugging symbols use:
DEBUG=1 ./snes9x2010.SlackBuild
diff --git a/games/snes9x2010/snes9x2010.SlackBuild b/games/snes9x2010/snes9x2010.SlackBuild
index 634bc6842c..b6113dcb95 100644
--- a/games/snes9x2010/snes9x2010.SlackBuild
+++ b/games/snes9x2010/snes9x2010.SlackBuild
@@ -1,9 +1,9 @@
-#!/bin/sh
+#!/bin/bash
# Slackware build script for snes9x2010
# Copyright 2016-2018 Hunter Sezen California, USA
-# Copyright 2020 ilmich < ardutu at gmail dot com >
+# Copyright 2020-2023 ilmich < ardutu at gmail dot com >
# All rights reserved.
#
# Redistribution and use of this script, with or without modification, is
@@ -23,11 +23,15 @@
# OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF THIS SOFTWARE, EVEN IF
# ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
+cd $(dirname $0) ; CWD=$(pwd)
+
PRGNAM=snes9x2010
LIBNAM=${PRGNAM}_libretro
-VERSION=${VERSION:-2020.05.18_187e2b5}
+VERSION=${VERSION:-2022.07.25_e86e546}
+COMMIT=e86e54624a7910a64a9a744e3734d4067c48d240
BUILD=${BUILD:-1}
TAG=${TAG:-_SBo}
+PKGTYPE=${PKGTYPE:-tgz}
if [ -z "$ARCH" ]; then
case "$( uname -m )" in
@@ -37,7 +41,14 @@ if [ -z "$ARCH" ]; then
esac
fi
-CWD=$(pwd)
+# If the variable PRINT_PACKAGE_NAME is set, then this script will report what
+# the name of the created package would be, and then exit. This information
+# could be useful to other scripts.
+if [ ! -z "${PRINT_PACKAGE_NAME}" ]; then
+ echo "$PRGNAM-$VERSION-$ARCH-$BUILD$TAG.$PKGTYPE"
+ exit 0
+fi
+
TMP=${TMP:-/tmp/SBo}
PKG=$TMP/package-$PRGNAM
OUTPUT=${OUTPUT:-/tmp}
@@ -45,16 +56,14 @@ OUTPUT=${OUTPUT:-/tmp}
LIBDIRSUFFIX=
[ "$ARCH" = x86_64 ] && LIBDIRSUFFIX=64
-GRIFFIN=${GRIFFIN:-0}
-
set -eu
rm -rf $PKG
mkdir -p $TMP $PKG $OUTPUT
cd $TMP
-rm -rf $PRGNAM-$VERSION
-tar xvf $CWD/$PRGNAM-$VERSION.tar.xz
-cd $PRGNAM-$VERSION
+rm -rf ${PRGNAM/-/_}-$COMMIT
+tar xvf $CWD/${PRGNAM/-/_}-$COMMIT.tar.gz
+cd ${PRGNAM/-/_}-$COMMIT
chown -R root:root .
find -L . \
\( -perm 777 -o -perm 775 -o -perm 750 -o -perm 711 -o -perm 555 \
@@ -64,10 +73,10 @@ find -L . \
[ "${DEBUG:=0}" != 0 ] && DEBUG=1
-make -f Makefile.libretro DEBUG=$DEBUG HAVE_GRIFFIN="$GRIFFIN"
+make -f Makefile.libretro DEBUG=$DEBUG
-install -Dm0644 $LIBNAM.so $PKG/usr/lib${LIBDIRSUFFIX}/libretro/$LIBNAM.so
-install -Dm0644 $LIBNAM.info $PKG/usr/lib${LIBDIRSUFFIX}/libretro/info/$LIBNAM.info
+install -Dm0755 $LIBNAM.so $PKG/usr/lib${LIBDIRSUFFIX}/libretro/$LIBNAM.so
+install -Dm0644 $CWD/$LIBNAM.info $PKG/usr/lib${LIBDIRSUFFIX}/libretro/info/$LIBNAM.info
if [ $DEBUG = 0 ]; then
find $PKG -print0 | xargs -0 file | grep -e "executable" -e "shared object" | grep ELF \
@@ -82,4 +91,4 @@ mkdir -p $PKG/install
cat $CWD/slack-desc > $PKG/install/slack-desc
cd $PKG
-/sbin/makepkg -l y -c n $OUTPUT/$PRGNAM-$VERSION-$ARCH-$BUILD$TAG.${PKGTYPE:-tgz}
+/sbin/makepkg -l y -c n $OUTPUT/$PRGNAM-$VERSION-$ARCH-$BUILD$TAG.$PKGTYPE
diff --git a/games/snes9x2010/snes9x2010.info b/games/snes9x2010/snes9x2010.info
index 9566ba2b62..80be94acdd 100644
--- a/games/snes9x2010/snes9x2010.info
+++ b/games/snes9x2010/snes9x2010.info
@@ -1,8 +1,8 @@
PRGNAM="snes9x2010"
-VERSION="2020.05.18_187e2b5"
+VERSION="2022.07.25_e86e546"
HOMEPAGE="https://www.libretro.com/"
-DOWNLOAD="https://ilmich.github.io/src/snes9x2010-2020.05.18_187e2b5.tar.xz"
-MD5SUM="c93a209cdafe0954062d2a637d9f47f9"
+DOWNLOAD="https://github.com/libretro/snes9x2010/archive/e86e546/snes9x2010-e86e54624a7910a64a9a744e3734d4067c48d240.tar.gz https://raw.githubusercontent.com/libretro/libretro-core-info/87cc75b84857427cd6e6f017a28530cce6377a29/snes9x2010_libretro.info"
+MD5SUM="25f6ab32b92ec7d97af610f5dc281510 72d4a57a3929950f0eac6540bacdf0a2"
DOWNLOAD_x86_64=""
MD5SUM_x86_64=""
REQUIRES="RetroArch"
diff --git a/games/sokowiz/sokowiz.SlackBuild b/games/sokowiz/sokowiz.SlackBuild
index 5cf58ef79c..3e7274156c 100644
--- a/games/sokowiz/sokowiz.SlackBuild
+++ b/games/sokowiz/sokowiz.SlackBuild
@@ -1,4 +1,4 @@
-#!/bin/sh
+#!/bin/bash
# Slackware build script for sokowiz
@@ -22,10 +22,13 @@
# OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF THIS SOFTWARE, EVEN IF
# ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
+cd $(dirname $0) ; CWD=$(pwd)
+
PRGNAM=sokowiz
VERSION=${VERSION:-0.0.2}
BUILD=${BUILD:-1}
TAG=${TAG:-_SBo}
+PKGTYPE=${PKGTYPE:-tgz}
if [ -z "$ARCH" ]; then
case "$( uname -m )" in
@@ -35,7 +38,14 @@ if [ -z "$ARCH" ]; then
esac
fi
-CWD=$(pwd)
+# If the variable PRINT_PACKAGE_NAME is set, then this script will report what
+# the name of the created package would be, and then exit. This information
+# could be useful to other scripts.
+if [ ! -z "${PRINT_PACKAGE_NAME}" ]; then
+ echo "$PRGNAM-$VERSION-$ARCH-$BUILD$TAG.$PKGTYPE"
+ exit 0
+fi
+
TMP=${TMP:-/tmp/SBo}
PKG=$TMP/package-$PRGNAM
OUTPUT=${OUTPUT:-/tmp}
@@ -102,4 +112,4 @@ cat $CWD/slack-desc > $PKG/install/slack-desc
cat $CWD/doinst.sh > $PKG/install/doinst.sh
cd $PKG
-/sbin/makepkg -l y -c n $OUTPUT/$PRGNAM-$VERSION-$ARCH-$BUILD$TAG.${PKGTYPE:-tgz}
+/sbin/makepkg -l y -c n $OUTPUT/$PRGNAM-$VERSION-$ARCH-$BUILD$TAG.$PKGTYPE
diff --git a/games/solarus-quest-editor/README b/games/solarus-quest-editor/README
index 01578b0fb8..65e92c50fb 100644
--- a/games/solarus-quest-editor/README
+++ b/games/solarus-quest-editor/README
@@ -1,7 +1,7 @@
-Solarus Quest Editor is a free and open-source game editor for Solarus, licensed
-under GPL. It is written in C++ with Qt. It helps you managing your project, and
-editing maps, sprites, tilesets, dialogs, scripts, musics and sounds.
+Solarus Quest Editor is a free and open-source game editor for
+Solarus, licensed under GPL. It is written in C++ with Qt. It helps
+you managing your project, and editing maps, sprites, tilesets,
+dialogs, scripts, musics and sounds.
-Required Dependency
-
-solarus must have been built with qt5.
+Required Dependency: solarus must have been built with qt5. This
+should happen automatically on Slackware 15.0.
diff --git a/games/solarus-quest-editor/solarus-quest-editor.SlackBuild b/games/solarus-quest-editor/solarus-quest-editor.SlackBuild
index be49584f04..0b70e61129 100644
--- a/games/solarus-quest-editor/solarus-quest-editor.SlackBuild
+++ b/games/solarus-quest-editor/solarus-quest-editor.SlackBuild
@@ -1,4 +1,4 @@
-#!/bin/sh
+#!/bin/bash
# Slackware build script for solarus-quest-editor
@@ -22,10 +22,13 @@
# OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF THIS SOFTWARE, EVEN IF
# ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
+cd $(dirname $0) ; CWD=$(pwd)
+
PRGNAM=solarus-quest-editor
VERSION=${VERSION:-1.6.4}
BUILD=${BUILD:-1}
TAG=${TAG:-_SBo}
+PKGTYPE=${PKGTYPE:-tgz}
if [ -z "$ARCH" ]; then
case "$( uname -m )" in
@@ -35,7 +38,14 @@ if [ -z "$ARCH" ]; then
esac
fi
-CWD=$(pwd)
+# If the variable PRINT_PACKAGE_NAME is set, then this script will report what
+# the name of the created package would be, and then exit. This information
+# could be useful to other scripts.
+if [ ! -z "${PRINT_PACKAGE_NAME}" ]; then
+ echo "$PRGNAM-$VERSION-$ARCH-$BUILD$TAG.$PKGTYPE"
+ exit 0
+fi
+
TMP=${TMP:-/tmp/SBo}
PKG=$TMP/package-$PRGNAM
OUTPUT=${OUTPUT:-/tmp}
@@ -100,4 +110,4 @@ cat $CWD/slack-desc > $PKG/install/slack-desc
cat $CWD/doinst.sh > $PKG/install/doinst.sh
cd $PKG
-/sbin/makepkg -l y -c n $OUTPUT/$PRGNAM-$VERSION-$ARCH-$BUILD$TAG.${PKGTYPE:-tgz}
+/sbin/makepkg -l y -c n $OUTPUT/$PRGNAM-$VERSION-$ARCH-$BUILD$TAG.$PKGTYPE
diff --git a/games/solarus-quest-editor/solarus-quest-editor.info b/games/solarus-quest-editor/solarus-quest-editor.info
index b63f110578..4b6d16c592 100644
--- a/games/solarus-quest-editor/solarus-quest-editor.info
+++ b/games/solarus-quest-editor/solarus-quest-editor.info
@@ -5,6 +5,6 @@ DOWNLOAD="https://gitlab.com/solarus-games/solarus-quest-editor/-/archive/v1.6.4
MD5SUM="3eebb8c607e6c212b1aaf29478c3958d"
DOWNLOAD_x86_64=""
MD5SUM_x86_64=""
-REQUIRES="solarus qt5"
+REQUIRES="solarus"
MAINTAINER="Hunter Sezen"
EMAIL="orbea@riseup.net"
diff --git a/games/solarus/README b/games/solarus/README
index 8e3dd64aef..8aa8852ed8 100644
--- a/games/solarus/README
+++ b/games/solarus/README
@@ -5,9 +5,3 @@ to create their own Action-RPG games (also called Zelda-like games). It
is totally independent from Nintendo.
Solarus will require game data like zsdx.
-
-Optional Dependency
-
-qt5 is an optional dependency for the GUI frontend.
-
-qt5 is *required* if you are going to build solarus-quest-editor.
diff --git a/games/solarus/solarus.SlackBuild b/games/solarus/solarus.SlackBuild
index a46b54ddf3..8db923eba3 100644
--- a/games/solarus/solarus.SlackBuild
+++ b/games/solarus/solarus.SlackBuild
@@ -1,4 +1,4 @@
-#!/bin/sh
+#!/bin/bash
# Slackware build script for solarus
@@ -22,10 +22,13 @@
# OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF THIS SOFTWARE, EVEN IF
# ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
+cd $(dirname $0) ; CWD=$(pwd)
+
PRGNAM=solarus
VERSION=${VERSION:-1.6.4}
BUILD=${BUILD:-2}
TAG=${TAG:-_SBo}
+PKGTYPE=${PKGTYPE:-tgz}
if [ -z "$ARCH" ]; then
case "$( uname -m )" in
@@ -35,7 +38,14 @@ if [ -z "$ARCH" ]; then
esac
fi
-CWD=$(pwd)
+# If the variable PRINT_PACKAGE_NAME is set, then this script will report what
+# the name of the created package would be, and then exit. This information
+# could be useful to other scripts.
+if [ ! -z "${PRINT_PACKAGE_NAME}" ]; then
+ echo "$PRGNAM-$VERSION-$ARCH-$BUILD$TAG.$PKGTYPE"
+ exit 0
+fi
+
TMP=${TMP:-/tmp/SBo}
PKG=$TMP/package-$PRGNAM
OUTPUT=${OUTPUT:-/tmp}
@@ -116,4 +126,4 @@ cat $CWD/slack-desc > $PKG/install/slack-desc
cat $CWD/doinst.sh > $PKG/install/doinst.sh
cd $PKG
-/sbin/makepkg -l y -c n $OUTPUT/$PRGNAM-$VERSION-$ARCH-$BUILD$TAG.${PKGTYPE:-tgz}
+/sbin/makepkg -l y -c n $OUTPUT/$PRGNAM-$VERSION-$ARCH-$BUILD$TAG.$PKGTYPE
diff --git a/games/solarus/solarus.info b/games/solarus/solarus.info
index 740a8f5ce3..8d443ad982 100644
--- a/games/solarus/solarus.info
+++ b/games/solarus/solarus.info
@@ -5,6 +5,6 @@ DOWNLOAD="https://gitlab.com/solarus-games/solarus/-/archive/v1.6.4/solarus-v1.6
MD5SUM="d06a3258910cb113d28e1349ca437125"
DOWNLOAD_x86_64=""
MD5SUM_x86_64=""
-REQUIRES="OpenAL SDL2_image SDL2_ttf glm libmodplug luajit physfs"
+REQUIRES="glm libmodplug luajit physfs"
MAINTAINER="Hunter Sezen"
EMAIL="orbea@riseup.net"
diff --git a/games/solarwolf/doinst.sh b/games/solarwolf/doinst.sh
index 5fb28930db..3e5691a052 100644
--- a/games/solarwolf/doinst.sh
+++ b/games/solarwolf/doinst.sh
@@ -1,3 +1,9 @@
if [ -x /usr/bin/update-desktop-database ]; then
/usr/bin/update-desktop-database -q usr/share/applications >/dev/null 2>&1
fi
+
+if [ -e usr/share/icons/hicolor/icon-theme.cache ]; then
+ if [ -x /usr/bin/gtk-update-icon-cache ]; then
+ /usr/bin/gtk-update-icon-cache usr/share/icons/hicolor >/dev/null 2>&1
+ fi
+fi
diff --git a/games/solarwolf/solarwolf.SlackBuild b/games/solarwolf/solarwolf.SlackBuild
index b032f9e802..09f0cef254 100644
--- a/games/solarwolf/solarwolf.SlackBuild
+++ b/games/solarwolf/solarwolf.SlackBuild
@@ -1,43 +1,48 @@
-#!/bin/sh
+#!/bin/bash
# Slackware build script for solarwolf
-# Written by B. Watson (yalhcru@gmail.com)
+# Written by B. Watson (urchlay@slackware.uk)
# Licensed under the WTFPL. See http://www.wtfpl.net/txt/copying/ for details.
+# 20230107 bkw: BUILD=3, ARCH=noarch.
+
+# 20211228 bkw: BUILD=2.
+# SDL2_mixer on -current utterly lacks support for tracker music
+# (.mod, .it, .xm, etc). This game's music is in .xm format... so
+# unless/until Pat adds support in SDL2_mixer, this script works
+# around it by using timidity to convert the .xm music to .ogg, which
+# SDL2_mixer can handle.
+# Add TiMidity++ as a dep, to make this work. It's really only
+# build-time, not runtime.
+# Also, new-style icon.
+
+# TODO: when running in windowed mode, clicking the window's close
+# button does close the window, but leaves the game process running.
+# using the Quit option from the main menu works correctly.
+
+# TODO: scaling in fullscreen mode. our pygame is built with SDL2,
+# this should be possible.
+
+cd $(dirname $0) ; CWD=$(pwd)
+
PRGNAM=solarwolf
VERSION=${VERSION:-1.5}
-BUILD=${BUILD:-1}
+BUILD=${BUILD:-3}
TAG=${TAG:-_SBo}
+PKGTYPE=${PKGTYPE:-tgz}
+ARCH=noarch
-if [ -z "$ARCH" ]; then
- case "$( uname -m )" in
- i?86) ARCH=i586 ;;
- arm*) ARCH=arm ;;
- *) ARCH=$( uname -m ) ;;
- esac
+if [ ! -z "${PRINT_PACKAGE_NAME}" ]; then
+ echo "$PRGNAM-$VERSION-$ARCH-$BUILD$TAG.$PKGTYPE"
+ exit 0
fi
-CWD=$(pwd)
TMP=${TMP:-/tmp/SBo}
PKG=$TMP/package-$PRGNAM
OUTPUT=${OUTPUT:-/tmp}
-if [ "$ARCH" = "i586" ]; then
- SLKCFLAGS="-O2 -march=i586 -mtune=i686"
- LIBDIRSUFFIX=""
-elif [ "$ARCH" = "i686" ]; then
- SLKCFLAGS="-O2 -march=i686 -mtune=i686"
- LIBDIRSUFFIX=""
-elif [ "$ARCH" = "x86_64" ]; then
- SLKCFLAGS="-O2 -fPIC"
- LIBDIRSUFFIX="64"
-else
- SLKCFLAGS="-O2"
- LIBDIRSUFFIX=""
-fi
-
set -e
rm -rf $PKG
@@ -56,10 +61,24 @@ find . -name .xvpics -print0 | xargs -0 rm -rf
mkdir -p \
$PKG/usr/games \
$PKG/usr/share/games/$PRGNAM \
+ $PKG/usr/share/icons/hicolor/64x64/apps \
$PKG/usr/share/pixmaps \
$PKG/usr/share/applications \
$PKG/usr/man/man6
+# 20211228 bkw: convert the music to .ogg. Use separate oggenc instead
+# of timidity's -Ov, so we can set the bitrate to 64k (to match the
+# one .ogg file shipped with the source). This bloats the package by
+# 30%, but it still comes out to less than 4MB total, so no problem.
+for i in data/music/*.xm; do
+ out="data/music/$( basename $i .xm ).ogg"
+ timidity -Ow1sl -id -o- $i | oggenc -Q -b 64 -o $out -
+ rm -f $i
+done
+
+# 20211228 bkw: make the game play the converted .ogg music.
+sed -i 's,\.xm,.ogg,g' code/game*.py
+
# the code is all python, keep in /usr/share along with the game data.
sed -i "s,usr/lib/games/$PRGNAM,usr/share/games/$PRGNAM/code," $PRGNAM.py
@@ -69,7 +88,9 @@ install -oroot -groot -m0755 $PRGNAM.py $PKG/usr/games/$PRGNAM
# original .desktop file don't validate, use our own
cat $CWD/$PRGNAM.desktop > $PKG/usr/share/applications/$PRGNAM.desktop
-cat dist/$PRGNAM.png > $PKG/usr/share/pixmaps/$PRGNAM.png
+cat dist/$PRGNAM.png > $PKG/usr/share/icons/hicolor/64x64/apps/$PRGNAM.png
+ln -s ../icons/hicolor/64x64/apps/$PRGNAM.png $PKG/usr/share/pixmaps/$PRGNAM.png
+
cat dist/$PRGNAM.6.gz > $PKG/usr/man/man6/$PRGNAM.6.gz
mkdir -p $PKG/usr/doc/$PRGNAM-$VERSION
@@ -81,4 +102,4 @@ cat $CWD/slack-desc > $PKG/install/slack-desc
cat $CWD/doinst.sh > $PKG/install/doinst.sh
cd $PKG
-/sbin/makepkg -l y -c n $OUTPUT/$PRGNAM-$VERSION-$ARCH-$BUILD$TAG.${PKGTYPE:-tgz}
+/sbin/makepkg -l y -c n $OUTPUT/$PRGNAM-$VERSION-$ARCH-$BUILD$TAG.$PKGTYPE
diff --git a/games/solarwolf/solarwolf.info b/games/solarwolf/solarwolf.info
index 68a5661db8..e9c2bfe699 100644
--- a/games/solarwolf/solarwolf.info
+++ b/games/solarwolf/solarwolf.info
@@ -1,10 +1,10 @@
PRGNAM="solarwolf"
VERSION="1.5"
-HOMEPAGE="http://www.pygame.org/shredwheat/solarwolf/index.shtml"
-DOWNLOAD="http://www.pygame.org/shredwheat/solarwolf/solarwolf-1.5.tar.gz"
+HOMEPAGE="https://www.pygame.org/shredwheat/solarwolf/index.shtml"
+DOWNLOAD="https://www.pygame.org/shredwheat/solarwolf/solarwolf-1.5.tar.gz"
MD5SUM="52fbed0a33c3c4c08d9dc0e533f90f8c"
DOWNLOAD_x86_64=""
MD5SUM_x86_64=""
-REQUIRES="pygame"
+REQUIRES="TiMidity++ python2-pygame"
MAINTAINER="B. Watson"
-EMAIL="yalhcru@gmail.com"
+EMAIL="urchlay@slackware.uk"
diff --git a/games/speed-dreams/README b/games/speed-dreams/README
index 8d907b09a3..1a3e4daaa4 100644
--- a/games/speed-dreams/README
+++ b/games/speed-dreams/README
@@ -1,4 +1,4 @@
-Speed Dreams is a fork of the famous open racing car simulator Torcs, aiming
-to implement exciting new features, cars, tracks and AI opponents to make a
-more enjoyable game for the player, as well as constantly improving visual and
-physics realism.
+Speed Dreams is a fork of the famous open racing car simulator
+Torcs, aiming to implement exciting new features, cars, tracks and
+AI opponents to make a more enjoyable game for the player, as well as
+constantly improving visual and physics realism.
diff --git a/games/speed-dreams/speed-dreams.SlackBuild b/games/speed-dreams/speed-dreams.SlackBuild
index 1812248a77..16a75f8448 100644
--- a/games/speed-dreams/speed-dreams.SlackBuild
+++ b/games/speed-dreams/speed-dreams.SlackBuild
@@ -1,12 +1,18 @@
-#!/bin/sh
+#!/bin/bash
# Slackware build script for the game Speed Dreams
# written by powtrix (@gmail.com)
+# 20220222 bkw: Modified by SlackBuilds.org: fix build on 15.0,
+# by updating to v2.2.3_r7616.
+
+cd $(dirname $0) ; CWD=$(pwd)
+
PRGNAM=speed-dreams
-VERSION=${VERSION:-2.2.2_r6553}
+VERSION=${VERSION:-2.2.3_r7616}
BUILD=${BUILD:-1}
TAG=${TAG:-_SBo}
+PKGTYPE=${PKGTYPE:-tgz}
SRCVERSION=$(echo $VERSION | tr _ -)
@@ -18,7 +24,11 @@ if [ -z "$ARCH" ]; then
esac
fi
-CWD=$(pwd)
+if [ ! -z "${PRINT_PACKAGE_NAME}" ]; then
+ echo "$PRGNAM-$VERSION-$ARCH-$BUILD$TAG.$PKGTYPE"
+ exit 0
+fi
+
TMP=${TMP:-/tmp/SBo}
PKG=$TMP/package-$PRGNAM
OUTPUT=${OUTPUT:-/tmp}
@@ -53,9 +63,9 @@ tar xvf $CWD/$PRGNAM-src-wip-cars-and-tracks-$SRCVERSION.tar.xz
chown -R root:root .
find -L . \
\( -perm 777 -o -perm 775 -o -perm 750 -o -perm 711 -o -perm 555 \
- -o -perm 511 \) -exec chmod 755 {} \; -o \
+ -o -perm 511 \) -exec chmod 755 {} \+ -o \
\( -perm 666 -o -perm 664 -o -perm 640 -o -perm 600 -o -perm 444 \
- -o -perm 440 -o -perm 400 \) -exec chmod 644 {} \;
+ -o -perm 440 -o -perm 400 \) -exec chmod 644 {} \+
mkdir build
cd build
@@ -95,4 +105,4 @@ cat $CWD/slack-desc > $PKG/install/slack-desc
cat $CWD/doinst.sh > $PKG/install/doinst.sh
cd $PKG
-/sbin/makepkg -l y -c n $OUTPUT/$PRGNAM-$VERSION-$ARCH-$BUILD$TAG.${PKGTYPE:-tgz}
+/sbin/makepkg -l y -c n $OUTPUT/$PRGNAM-$VERSION-$ARCH-$BUILD$TAG.$PKGTYPE
diff --git a/games/speed-dreams/speed-dreams.info b/games/speed-dreams/speed-dreams.info
index 12f64fe555..bb41a53e4c 100644
--- a/games/speed-dreams/speed-dreams.info
+++ b/games/speed-dreams/speed-dreams.info
@@ -1,16 +1,16 @@
PRGNAM="speed-dreams"
-VERSION="2.2.2_r6553"
+VERSION="2.2.3_r7616"
HOMEPAGE="http://www.speed-dreams.org/"
-DOWNLOAD="https://sf.net/projects/speed-dreams/files/2.2.2/speed-dreams-src-base-2.2.2-r6553.tar.xz \
- https://sf.net/projects/speed-dreams/files/2.2.2/speed-dreams-src-hq-cars-and-tracks-2.2.2-r6553.tar.xz \
- https://sf.net/projects/speed-dreams/files/2.2.2/speed-dreams-src-more-hq-cars-and-tracks-2.2.2-r6553.tar.xz \
- https://sf.net/projects/speed-dreams/files/2.2.2/speed-dreams-src-wip-cars-and-tracks-2.2.2-r6553.tar.xz"
-MD5SUM="75dcdc727f7b40b3a9b8e6dace72612f \
- ed11647ad2d479dc4012ffd79375b995 \
- d615eda2c443a2e5ce74cf45d5374062 \
- bc183b3e80c742bc249f630cb029920c"
+DOWNLOAD="https://downloads.sourceforge.net/project/speed-dreams/2.2.3/speed-dreams-src-base-2.2.3-r7616.tar.xz \
+ https://downloads.sourceforge.net/project/speed-dreams/2.2.3/speed-dreams-src-hq-cars-and-tracks-2.2.3-r7616.tar.xz \
+ https://downloads.sourceforge.net/project/speed-dreams/2.2.3/speed-dreams-src-more-hq-cars-and-tracks-2.2.3-r7616.tar.xz \
+ https://downloads.sourceforge.net/project/speed-dreams/2.2.3/speed-dreams-src-wip-cars-and-tracks-2.2.3-r7616.tar.xz"
+MD5SUM="20ae5f2c657a74324ec0f04ef6fb5e65 \
+ 9aeb1f7b77c54c7c4b0f15acc82df807 \
+ 3f49f465fc8e841da070a1ef8405e92d \
+ 6439507f2109cb5dbaee41623a0a7f66"
DOWNLOAD_x86_64=""
MD5SUM_x86_64=""
-REQUIRES="OpenAL enet plib SDL2 OpenSceneGraph"
+REQUIRES="enet plib OpenSceneGraph"
MAINTAINER="powtrix"
EMAIL="powtrix@gmail.com"
diff --git a/games/spring/README b/games/spring/README
index 2287c84be5..2db04f9d77 100644
--- a/games/spring/README
+++ b/games/spring/README
@@ -1 +1,7 @@
Spring is a project aiming to create a new and versatile RTS Engine.
+
+Spring is an engine. It can play many different games and maps. To
+play, you need at least one Game and Map. See the documentation for
+information on available games and maps:
+
+https://springrts.com/wiki/Main_Page
diff --git a/games/spring/slack-desc b/games/spring/slack-desc
index 679dbf9526..a598edd0d3 100644
--- a/games/spring/slack-desc
+++ b/games/spring/slack-desc
@@ -10,10 +10,10 @@ spring: spring (a powerful free RTS engine)
spring:
spring: Spring is a project aiming to create a new and versatile RTS Engine.
spring:
+spring: Homepage: https://springrts.com/
spring:
spring:
spring:
spring:
spring:
-spring: https://springrts.com/
spring:
diff --git a/games/spring/spring.SlackBuild b/games/spring/spring.SlackBuild
index cb6abb7814..77adb970a9 100644
--- a/games/spring/spring.SlackBuild
+++ b/games/spring/spring.SlackBuild
@@ -1,4 +1,4 @@
-#!/bin/sh
+#!/bin/bash
# Slackware build script for Spring
@@ -21,17 +21,27 @@
# WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR
# OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF THIS SOFTWARE, EVEN IF
# ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
-#
+
# Script modified by Juan Pablo Cordova E. (jpcordovae@gmail.com)
-#
-#
+
+# 20220303 bkw: Modified by SlackBuilds.org, BUILD=2:
+# - fix build on 15.0 (fiddly C++ annoyances).
+# - add some JDK detection stuff, to avoid the need to log out and
+# back in after installing zulu-openjdk8, and to make the build
+# fail quickly and gracefully if there's no JDK.
+# - binary in /usr/games.
+# - absolute paths in .desktop file.
+# - install actually useful docs (not LICENSE.html, which had
+# *broken* hyperlinks!)
+
+cd $(dirname $0) ; CWD=$(pwd)
PRGNAM=spring
VERSION=${VERSION:-104.0}
-BUILD=${BUILD:-1}
+BUILD=${BUILD:-2}
TAG=${TAG:-_SBo}
+PKGTYPE=${PKGTYPE:-tgz}
-CWD=$(pwd)
TMP=${TMP:-/tmp/SBo}
PKG=$TMP/package-$PRGNAM
OUTPUT=${OUTPUT:-/tmp}
@@ -44,13 +54,45 @@ if [ -z "$ARCH" ]; then
esac
fi
+if [ ! -z "${PRINT_PACKAGE_NAME}" ]; then
+ echo "$PRGNAM-$VERSION-$ARCH-$BUILD$TAG.$PKGTYPE"
+ exit 0
+fi
+
if [ "$ARCH" = "x86_64" ]; then
LIBDIRSUFFIX="64"
else
LIBDIRSUFFIX=""
fi
-set -eu
+set -e
+
+# 20220303 bkw: make sure we have a JDK to use, or fail immediately
+# with a helpful hint (rather than spending a couple minutes untarring
+# and running cmake so it can fail). Feel free to steal this for your
+# own java-using SlackBuilds.
+
+DEFAULT_JDK_PROFILE=/etc/profile.d/zulu-openjdk8.sh
+
+if [ -n "$JAVA_HOME" ]; then
+ echo "==> Using JAVA_HOME=\"$JAVA_HOME\" from the environment."
+else
+ if [ -e $DEFAULT_JDK_PROFILE ]; then
+ source $DEFAULT_JDK_PROFILE
+ echo "==> Sourced $DEFAULT_JDK_PROFILE, JAVA_HOME=\"$JAVA_HOME\"."
+ else
+ echo "==> Warning, $DEFAULT_JDK_PROFILE not found."
+ fi
+fi
+
+if [ -z "$JAVA_HOME" -o ! -x "$JAVA_HOME/bin/java" ]; then
+ cat <<EOF
+==> JAVA_HOME is invalid or unset, and I couldn't set it by sourcing
+==> $DEFAULT_JDK_PROFILE.
+==> Did you forget to install the dependencies?
+EOF
+ exit 1
+fi
rm -rf $PKG
mkdir -p $TMP $PKG $OUTPUT
@@ -61,29 +103,46 @@ cd ${PRGNAM}_${VERSION}
chown -R root:root .
find -L . \
\( -perm 777 -o -perm 775 -o -perm 750 -o -perm 711 -o -perm 555 \
- -o -perm 511 \) -exec chmod 755 {} \; -o \
+ -o -perm 511 \) -exec chmod 755 {} \+ -o \
\( -perm 666 -o -perm 664 -o -perm 640 -o -perm 600 -o -perm 444 \
- -o -perm 440 -o -perm 400 \) -exec chmod 644 {} \;
+ -o -perm 440 -o -perm 400 \) -exec chmod 644 {} \+
+
+# 20220303 bkw: OpenAL API change...
+sed -i 's,ALCdevice_struct,ALCdevice,g' rts/System/Sound/OpenAL/Sound.h
+
+# 20220303 bkw: Ugly, but it works.
+sed -i 's,^private:,public:,' rts/Lua/LuaObjectRendering.h
+
+# 20220303 bkw: snprintf() not declared in this scope...
+sed -i '1i#include <cstdio>' rts/System/Sync/SHA512.cpp
+
+# 20220303 bkw: this is what debian's gcc8 patch does:
+sed -i '/constexpr.*GLubyte/s,constexpr,,' rts/Rendering/GL/myGL.cpp
+
+# 20220303 bkw: nitpick the .desktop file.
+sed -i -e '/^Exec/s,=,=/usr/games/,' \
+ -e '/^Icon/s,=.*,=/usr/share/pixmaps/spring.png,' \
+ cont/freedesktop/applications/spring.desktop
cmake \
-DCMAKE_INSTALL_PREFIX=/usr \
+ -DBINDIR=games \
-DLIBDIR=lib${LIBDIRSUFFIX} \
-DMANDIR=man \
-DDOCDIR=doc/$PRGNAM-$VERSION \
.
make
-make install DESTDIR=$PKG
+make install/strip DESTDIR=$PKG
-find $PKG -print0 | xargs -0 file | grep -e "executable" -e "shared object" | grep ELF \
- | cut -f 1 -d : | xargs strip --strip-unneeded 2> /dev/null || true
+PKGDOC=$PKG/usr/doc/$PRGNAM-$VERSION
-mkdir -p $PKG/usr/doc/$PRGNAM-$VERSION
-cp -a LICENSE.html $PKG/usr/doc/$PRGNAM-$VERSION
-cat $CWD/$PRGNAM.SlackBuild > $PKG/usr/doc/$PRGNAM-$VERSION/$PRGNAM.SlackBuild
+mkdir -p $PKGDOC
+cp -a LICENSE gpl-*.txt README.* THANKS AUTHORS FAQ $PKGDOC
+cat $CWD/$PRGNAM.SlackBuild > $PKGDOC/$PRGNAM.SlackBuild
mkdir -p $PKG/install
cat $CWD/slack-desc > $PKG/install/slack-desc
cat $CWD/doinst.sh > $PKG/install/doinst.sh
cd $PKG
-/sbin/makepkg -l y -c n $OUTPUT/$PRGNAM-$VERSION-$ARCH-$BUILD$TAG.${PKGTYPE:-tgz}
+/sbin/makepkg -l y -c n $OUTPUT/$PRGNAM-$VERSION-$ARCH-$BUILD$TAG.$PKGTYPE
diff --git a/games/spring/spring.info b/games/spring/spring.info
index a0ad49fae0..1c963563b2 100644
--- a/games/spring/spring.info
+++ b/games/spring/spring.info
@@ -5,6 +5,6 @@ DOWNLOAD="https://downloads.sourceforge.net/springrts/spring_104.0_src.tar.gz"
MD5SUM="c890fe7318f8d6798e70a411e411939e"
DOWNLOAD_x86_64=""
MD5SUM_x86_64=""
-REQUIRES="DevIL OpenAL p7zip jdk SDL2 bullet libunwind"
+REQUIRES="DevIL p7zip zulu-openjdk8 bullet"
MAINTAINER="Juan Pablo Cordova E."
EMAIL="jpcordovae@gmail.com"
diff --git a/games/srb2/README b/games/srb2/README
index 61de91f456..73f6f2db87 100644
--- a/games/srb2/README
+++ b/games/srb2/README
@@ -12,3 +12,7 @@ installed. I'm not 100% sure what libgme does for srb2: it's a "game
music emulation" library, but the game music doesn't sound different to
me when srb2 is built with libgme, and I don't see any config settings
to enable it. I haven't played the entire game yet though...
+
+Note for users upgrading from version 2.1.x to 2.2.x: I had to
+delete my old config (rm -rf ~/.srb2) to get the game to run without
+segfaulting.
diff --git a/games/srb2/doinst.sh b/games/srb2/doinst.sh
index 696d35bad7..65c7e2eeb9 100644
--- a/games/srb2/doinst.sh
+++ b/games/srb2/doinst.sh
@@ -1,4 +1,9 @@
-
if [ -x /usr/bin/update-desktop-database ]; then
/usr/bin/update-desktop-database -q usr/share/applications >/dev/null 2>&1
fi
+
+if [ -e usr/share/icons/hicolor/icon-theme.cache ]; then
+ if [ -x /usr/bin/gtk-update-icon-cache ]; then
+ /usr/bin/gtk-update-icon-cache -f usr/share/icons/hicolor >/dev/null 2>&1
+ fi
+fi
diff --git a/games/srb2/srb2.SlackBuild b/games/srb2/srb2.SlackBuild
index 26fb5abb25..526ac57f9a 100644
--- a/games/srb2/srb2.SlackBuild
+++ b/games/srb2/srb2.SlackBuild
@@ -1,15 +1,23 @@
-#!/bin/sh
+#!/bin/bash
# Slackware build script for srb2
-# Written by B. Watson (yalhcru@gmail.com)
+# Written by B. Watson (urchlay@slackware.uk)
# Licensed under the WTFPL. See http://www.wtfpl.net/txt/copying/ for details.
+# 20230714 bkw: updated for v2.2.11.
+# - new deps (see .info file).
+# - cmake sed stuff to allow building without net access.
+# - new-style icons.
+
+cd $(dirname $0) ; CWD=$(pwd)
+
PRGNAM=srb2
-VERSION=${VERSION:-2.1.21}
+VERSION=${VERSION:-2.2.11}
BUILD=${BUILD:-1}
TAG=${TAG:-_SBo}
+PKGTYPE=${PKGTYPE:-tgz}
if [ -z "$ARCH" ]; then
case "$( uname -m )" in
@@ -19,7 +27,11 @@ if [ -z "$ARCH" ]; then
esac
fi
-CWD=$(pwd)
+if [ ! -z "${PRINT_PACKAGE_NAME}" ]; then
+ echo "$PRGNAM-$VERSION-$ARCH-$BUILD$TAG.$PKGTYPE"
+ exit 0
+fi
+
TMP=${TMP:-/tmp/SBo}
PKG=$TMP/package-$PRGNAM
OUTPUT=${OUTPUT:-/tmp}
@@ -61,23 +73,34 @@ chown -R root:root .
find -L . -perm /111 -a \! -perm 755 -a -exec chmod 755 {} \+ -o \
\! -perm /111 -a \! -perm 644 -a -exec chmod 644 {} \+
-# Assets (actually WAD files) aren't found in the source, have to download
-# them separately. The build actually checks for them & refuses to compile
-# if they're missing, which is kinda unfair since it doesn't ship with
-# the damn things... To save 208MB of space in $TMP, we symlink the files.
-# Can't just touch them, since the md5sums of the files get hardcoded
-# into the binary (and it'll refuse to run if they don't match).
-DATAFILES="srb2.srb zones.dta player.dta rings.dta music.dta patch.dta"
-for i in $DATAFILES; do
- ln -s $CWD/$i assets/$i
-done
+# Assets (actually WAD and pk3 aka zip files) aren't found in the
+# source, have to download them separately. The build actually checks
+# for them & refuses to compile if they're missing, which is kinda
+# unfair since it doesn't ship with the damn things... so we have to
+# extract them from the 'full' zip file. Can't just touch them, since
+# the md5sums of the files get hardcoded into the binary (and it'll
+# refuse to run if they don't match).
+( cd assets
+ mkdir installer
+ cd installer
+
+ # upstream release a 2.2.8 followed by a 229, handle either.
+ ZIPFILE="$CWD/SRB2-v$VERSION-Full.zip"
+ [ -e "$ZIPFILE" ] || ZIPFILE="$CWD/SRB2-v${VERSION//.}-Full.zip"
+ unzip "$ZIPFILE" '*.dta' '*.pk3'
+)
# As shipped, the path /usr/games/SRB2 is hardcoded in various places
# in the source (no cmake variable to change it). It should be in
# /usr/share/games, not /usr/games, so sed-fest:
sed -i 's,usr/games,usr/share/games,g' \
- src/sdl/i_system.c src/sdl/i_ttf.c \
- src/sdl12/i_system.c src/sdl12/i_ttf.c
+ src/sdl/i_system.c src/sdl/i_ttf.c
+
+# 20230714 bkw: cmake silliness. it wants to download Ccache.cmake to
+# support ccache on Linux. on Windows, it seems to support ccache
+# without external dependency... and it turns out, this support works
+# on Linux as well. So:
+sed -i '/CMAKE_HOST_SYSTEM_NAME/s,STREQ.*,MATCHES Linux),' CMakeLists.txt
mkdir -p build
cd build
@@ -87,6 +110,7 @@ cd build
-DCMAKE_INSTALL_PREFIX=/usr \
-DLIB_SUFFIX=${LIBDIRSUFFIX} \
-DMAN_INSTALL_DIR=/usr/man \
+ -DUSE_CCACHE=ON \
-DCMAKE_BUILD_TYPE=Release ..
make VERBOSE=1
#make install/strip DESTDIR=$PKG # don't bother, it's broken
@@ -96,21 +120,35 @@ cd ..
mkdir -p $PKG/usr/games $PKG/usr/share/games/SRB2 \
$PKG/usr/share/pixmaps $PKG/usr/share/applications \
$PKG/usr/doc/$PRGNAM-$VERSION
-install -s -m0755 build/bin/$PRGNAM-$VERSION $PKG/usr/games
-ln -s $PRGNAM-$VERSION $PKG/usr/games/$PRGNAM
+# as of 2.2.8 the binary's name changed.
+# 20230714 bkw: ...and it changed again in 2.2.11.
+[ -x build/bin/lsdl$PRGNAM-$VERSION ] || mv build/bin/lsdl$PRGNAM build/bin/lsdl$PRGNAM-$VERSION
+install -s -m0755 build/bin/lsdl$PRGNAM-$VERSION $PKG/usr/games
+ln -s lsdl$PRGNAM-$VERSION $PKG/usr/games/lsdl$PRGNAM
+ln -s lsdl$PRGNAM-$VERSION $PKG/usr/games/$PRGNAM
install -m0644 assets/LICENSE* assets/README* $PKG/usr/doc/$PRGNAM-$VERSION
-install -m0644 $PRGNAM.png $PKG/usr/share/pixmaps
-# Install data files from $CWD, not the symlinks in assets/
-echo -n "Copying data files: "
-for i in $DATAFILES; do
- echo -n "$i "
- cat $CWD/$i > $PKG/usr/share/games/SRB2/$i
+hicolor=$PKG/usr/share/icons/hicolor
+for px in 16 22 32 48 64 128 256; do
+ sz=${px}x${px}
+ dir=$hicolor/$sz/apps
+ mkdir -p $dir
+ convert -resize $sz $PRGNAM.png $dir/$PRGNAM.png
done
+
+ln -s ../icons/hicolor/48x48/apps/$PRGNAM.png $PKG/usr/share/pixmaps/$PRGNAM.png
+
+echo -n "Copying data files: "
+( cd assets/installer
+ for i in *; do
+ echo -n "$i "
+ cat $i > $PKG/usr/share/games/SRB2/$i
+ done
+)
echo
-# desktop file is a modified version of debian/srb2.desktop. I took out
-# the absolute paths.
+# desktop file is a modified version of debian/srb2.desktop. I fixed
+# the absolute paths and got it to validate.
cat $CWD/$PRGNAM.desktop > $PKG/usr/share/applications/$PRGNAM.desktop
# dev and modding docs in doc/, config files for cwiid and various doom
@@ -125,4 +163,4 @@ cat $CWD/slack-desc > $PKG/install/slack-desc
cat $CWD/doinst.sh > $PKG/install/doinst.sh
cd $PKG
-/sbin/makepkg -l y -c n $OUTPUT/$PRGNAM-$VERSION-$ARCH-$BUILD$TAG.${PKGTYPE:-tgz}
+/sbin/makepkg -l y -c n $OUTPUT/$PRGNAM-$VERSION-$ARCH-$BUILD$TAG.$PKGTYPE
diff --git a/games/srb2/srb2.desktop b/games/srb2/srb2.desktop
index 240596a7df..7675458e95 100644
--- a/games/srb2/srb2.desktop
+++ b/games/srb2/srb2.desktop
@@ -1,8 +1,8 @@
[Desktop Entry]
Name=Sonic Robo Blast 2
Comment=A free 3D Sonic the Hedgehog fangame closely inspired by the original Sonic games on the Sega Genesis.
-Exec=srb2
-Icon=srb2
+Exec=/usr/games/srb2
+Icon=/usr/share/pixmaps/srb2.png
Terminal=false
Type=Application
StartupNotify=false
diff --git a/games/srb2/srb2.info b/games/srb2/srb2.info
index bffae6cbe0..4fc21718b3 100644
--- a/games/srb2/srb2.info
+++ b/games/srb2/srb2.info
@@ -1,22 +1,12 @@
PRGNAM="srb2"
-VERSION="2.1.21"
+VERSION="2.2.11"
HOMEPAGE="https://www.srb2.org/"
-DOWNLOAD="https://github.com/STJr/SRB2/archive/SRB2_release_2.1.21/SRB2-SRB2_release_2.1.21.tar.gz \
- http://alam.srb2.org/SRB2/2.1.21-Final/Resources/music.dta \
- http://alam.srb2.org/SRB2/2.1.21-Final/Resources/patch.dta \
- http://alam.srb2.org/SRB2/2.1.21-Final/Resources/player.dta \
- http://alam.srb2.org/SRB2/2.1.21-Final/Resources/rings.dta \
- http://alam.srb2.org/SRB2/2.1.21-Final/Resources/srb2.srb \
- http://alam.srb2.org/SRB2/2.1.21-Final/Resources/zones.dta"
-MD5SUM="69c97da9638e3daedec5a8c7be76b5ab \
- 2a4b6ae74a84e990d6e6c81ad0c1309f \
- dbbf8bc6121618ee3be2d5b14650429b \
- cfca0f1c73023cbbd8f844f45480f799 \
- 85901ad4bf94637e5753d2ac2c03ea26 \
- c1b9577687f8a795104aef4600720ea7 \
- 303838c6c534d9540288360fa49cca60"
+DOWNLOAD="https://github.com/STJr/SRB2/archive/SRB2_release_2.2.11/SRB2-SRB2_release_2.2.11.tar.gz \
+ https://github.com/STJr/SRB2/releases/download/SRB2_release_2.2.11/SRB2-v2211-Full.zip"
+MD5SUM="bcb3493b8668dadd8f9bfb10d3325fd6 \
+ d356b7e3db4520355b142b39c51cc8a8"
DOWNLOAD_x86_64=""
MD5SUM_x86_64=""
-REQUIRES="SDL2_mixer"
+REQUIRES="libgme libopenmpt"
MAINTAINER="B. Watson"
-EMAIL="yalhcru@gmail.com"
+EMAIL="urchlay@slackware.uk"
diff --git a/games/starfighter/doinst.sh b/games/starfighter/doinst.sh
index 3ceb7eae8d..64a4b41636 100644
--- a/games/starfighter/doinst.sh
+++ b/games/starfighter/doinst.sh
@@ -2,7 +2,7 @@ if [ -x /usr/bin/update-desktop-database ]; then
/usr/bin/update-desktop-database -q usr/share/applications >/dev/null 2>&1
fi
-if [ -e /usr/share/icons/hicolor/icon-theme.cache ]; then
+if [ -e usr/share/icons/hicolor/icon-theme.cache ]; then
if [ -x /usr/bin/gtk-update-icon-cache ]; then
/usr/bin/gtk-update-icon-cache -f usr/share/icons/hicolor >/dev/null 2>&1
fi
diff --git a/games/starfighter/starfighter.SlackBuild b/games/starfighter/starfighter.SlackBuild
index 3803209f9c..a8f81f0594 100644
--- a/games/starfighter/starfighter.SlackBuild
+++ b/games/starfighter/starfighter.SlackBuild
@@ -1,7 +1,7 @@
-#!/bin/sh
+#!/bin/bash
# Slackware build script for starfighter
-# Copyright 2016-2020 Tim Dickson, Scotland dickson.tim at googlemail.com
+# Copyright 2016-2021 Tim Dickson, Scotland dickson.tim at googlemail.com
# All rights reserved.
#
# Redistribution and use of this script, with or without modification, is
@@ -22,10 +22,13 @@
# ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
+cd $(dirname $0) ; CWD=$(pwd)
+
PRGNAM=starfighter
-VERSION=${VERSION:-2.3.3}
+VERSION=${VERSION:-2.4}
BUILD=${BUILD:-1}
TAG=${TAG:-_SBo}
+PKGTYPE=${PKGTYPE:-tgz}
if [ -z "$ARCH" ]; then
case "$( uname -m )" in
@@ -35,7 +38,14 @@ if [ -z "$ARCH" ]; then
esac
fi
-CWD=$(pwd)
+# If the variable PRINT_PACKAGE_NAME is set, then this script will report what
+# the name of the created package would be, and then exit. This information
+# could be useful to other scripts.
+if [ ! -z "${PRINT_PACKAGE_NAME}" ]; then
+ echo "$PRGNAM-$VERSION-$ARCH-$BUILD$TAG.$PKGTYPE"
+ exit 0
+fi
+
TMP=${TMP:-/tmp/SBo}
PKG=$TMP/package-$PRGNAM
OUTPUT=${OUTPUT:-/tmp}
@@ -90,4 +100,4 @@ cat $CWD/slack-desc > $PKG/install/slack-desc
cat $CWD/doinst.sh > $PKG/install/doinst.sh
cd $PKG
-/sbin/makepkg -l y -c n $OUTPUT/$PRGNAM-$VERSION-$ARCH-$BUILD$TAG.${PKGTYPE:-tgz}
+/sbin/makepkg -l y -c n $OUTPUT/$PRGNAM-$VERSION-$ARCH-$BUILD$TAG.$PKGTYPE
diff --git a/games/starfighter/starfighter.info b/games/starfighter/starfighter.info
index 1604cc215a..aba8a40072 100644
--- a/games/starfighter/starfighter.info
+++ b/games/starfighter/starfighter.info
@@ -1,10 +1,10 @@
PRGNAM="starfighter"
-VERSION="2.3.3"
+VERSION="2.4"
HOMEPAGE="https://github.com/pr-starfighter/starfighter/"
-DOWNLOAD="https://github.com/pr-starfighter/starfighter/releases/download/v2.3.3/starfighter-2.3.3-src.tar.gz"
-MD5SUM="ec37d907a939a429acd5f000448e8e32"
+DOWNLOAD="https://github.com/pr-starfighter/starfighter/releases/download/v2.4/starfighter-2.4-src.tar.gz"
+MD5SUM="ab7d7c3d122225c19e5647792ba374bd"
DOWNLOAD_x86_64=""
MD5SUM_x86_64=""
-REQUIRES="SDL2_image SDL2_mixer SDL2_ttf"
+REQUIRES=""
MAINTAINER="Tim Dickson"
EMAIL="dickson.tim@googlemail.com"
diff --git a/games/steam/README b/games/steam/README
index 6f4193d351..825bb879be 100644
--- a/games/steam/README
+++ b/games/steam/README
@@ -1,7 +1,8 @@
-Steam is an internet-based digital distribution, digital rights management,
-multiplayer, and social networking platform developed by Valve Corporation.
-Steam provides the user with installation and automatic updating of games on
-multiple computers, and community features such as friends lists and groups,
-cloud saving, and in-game voice and chat functionality.
+Steam is an internet-based digital distribution, digital rights
+management, multiplayer, and social networking platform developed
+by Valve Corporation. Steam provides the user with installation
+and automatic updating of games on multiple computers, and community
+features such as friends lists and groups, cloud saving, and in-game
+voice and chat functionality.
-A multilib installation is required to run steam.
+A multilib installation is required to run steam on 64-bit Slackware.
diff --git a/games/steam/doinst.sh b/games/steam/doinst.sh
index 976546b7e9..7f84c1434a 100644
--- a/games/steam/doinst.sh
+++ b/games/steam/doinst.sh
@@ -4,9 +4,9 @@ if [ -x usr/bin/update-desktop-database ]; then
fi
# Update hicolor theme cache:
-if [ -d usr/share/icons/hicolor ]; then
+if [ -e usr/share/icons/hicolor/icon-theme.cache ]; then
if [ -x /usr/bin/gtk-update-icon-cache ]; then
- /usr/bin/gtk-update-icon-cache -f -t usr/share/icons/hicolor 1> /dev/null 2> /dev/null
+ /usr/bin/gtk-update-icon-cache -f usr/share/icons/hicolor >/dev/null 2>&1
fi
fi
diff --git a/games/steam/steam.SlackBuild b/games/steam/steam.SlackBuild
index ef0dcbe2b1..4d9e5c94de 100644
--- a/games/steam/steam.SlackBuild
+++ b/games/steam/steam.SlackBuild
@@ -1,10 +1,10 @@
-#!/bin/sh
+#!/bin/bash
# Slackware build script for steam
# Copyright 2016 Talos Thoren
# All rights reserved.
-# Copyright 2019,20 Christoph Willing, Brisbane, Australia
+# Copyright 2019-23 Christoph Willing, Brisbane, Australia
# All rights reserved.
#
# Redistribution and use of this script, with or without modification, is
@@ -24,10 +24,13 @@
# OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF THIS SOFTWARE, EVEN IF
# ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
+cd $(dirname $0) ; CWD=$(pwd)
+
PRGNAM=steam
-VERSION=${VERSION:-1.0.0.66}
+VERSION=${VERSION:-1.0.0.78}
BUILD=${BUILD:-1}
TAG=${TAG:-_SBo}
+PKGTYPE=${PKGTYPE:-tgz}
if [ -z "$ARCH" ]; then
case "$( uname -m )" in
@@ -37,7 +40,14 @@ if [ -z "$ARCH" ]; then
esac
fi
-CWD=$(pwd)
+# If the variable PRINT_PACKAGE_NAME is set, then this script will report what
+# the name of the created package would be, and then exit. This information
+# could be useful to other scripts.
+if [ ! -z "${PRINT_PACKAGE_NAME}" ]; then
+ echo "$PRGNAM-$VERSION-$ARCH-$BUILD$TAG.$PKGTYPE"
+ exit 0
+fi
+
TMP=${TMP:-/tmp/SBo}
PKG=$TMP/package-$PRGNAM
OUTPUT=${OUTPUT:-/tmp}
@@ -103,4 +113,4 @@ cat $CWD/slack-desc > $PKG/install/slack-desc
cat $CWD/doinst.sh > $PKG/install/doinst.sh
cd $PKG
-/sbin/makepkg -l y -c n $OUTPUT/$PRGNAM-$VERSION-$ARCH-$BUILD$TAG.${PKGTYPE:-tgz}
+/sbin/makepkg -l y -c n $OUTPUT/$PRGNAM-$VERSION-$ARCH-$BUILD$TAG.$PKGTYPE
diff --git a/games/steam/steam.info b/games/steam/steam.info
index 109df93bd8..129cf91e91 100644
--- a/games/steam/steam.info
+++ b/games/steam/steam.info
@@ -1,10 +1,10 @@
PRGNAM="steam"
-VERSION="1.0.0.66"
-HOMEPAGE="http://store.steampowered.com/"
-DOWNLOAD="http://repo.steampowered.com/steam/archive/precise/steam_1.0.0.66.tar.gz"
-MD5SUM="f587a070e94f69a4d962ebe2ebf4768a"
+VERSION="1.0.0.78"
+HOMEPAGE="https://store.steampowered.com/"
+DOWNLOAD="https://repo.steampowered.com/steam/archive/precise/steam_1.0.0.78.tar.gz"
+MD5SUM="455f7ad91d850c1819299eb82d3b2758"
DOWNLOAD_x86_64=""
MD5SUM_x86_64=""
-REQUIRES="OpenAL python3 zenity"
+REQUIRES="zenity"
MAINTAINER="Christoph Willing"
EMAIL="chris.willing@linux.com"
diff --git a/games/steamtinkerlaunch/README b/games/steamtinkerlaunch/README
new file mode 100644
index 0000000000..fe461bb8a6
--- /dev/null
+++ b/games/steamtinkerlaunch/README
@@ -0,0 +1,7 @@
+Steam Tinker Launch is a Linux wrapper tool for use
+with the Steam client which allows customizing and start tools
+and options for games quickly on the fly.
+
+By using a versatile configuration structure
+it is both easy to set up and flexible.
+
diff --git a/games/steamtinkerlaunch/doinst.sh b/games/steamtinkerlaunch/doinst.sh
new file mode 100644
index 0000000000..afea6d71dc
--- /dev/null
+++ b/games/steamtinkerlaunch/doinst.sh
@@ -0,0 +1,9 @@
+if [ -x /usr/bin/update-desktop-database ]; then
+ /usr/bin/update-desktop-database usr/share/applications >/dev/null 2>&1
+fi
+
+if [ -e usr/share/icons/hicolor/icon-theme.cache ]; then
+ if [ -x /usr/bin/gtk-update-icon-cache ]; then
+ /usr/bin/gtk-update-icon-cache -f usr/share/icons/hicolor >/dev/null 2>&1
+ fi
+fi
diff --git a/games/steamtinkerlaunch/slack-desc b/games/steamtinkerlaunch/slack-desc
new file mode 100644
index 0000000000..d7ec045982
--- /dev/null
+++ b/games/steamtinkerlaunch/slack-desc
@@ -0,0 +1,19 @@
+# HOW TO EDIT THIS FILE:
+# The "handy ruler" below makes it easier to edit a package description.
+# Line up the first '|' above the ':' following the base package name, and
+# the '|' on the right side marks the last column you can put a character in.
+# You must make exactly 11 lines for the formatting to be correct. It's also
+# customary to leave one space after the ':' except on otherwise blank lines.
+
+ |-----handy-ruler------------------------------------------------------|
+steamtinkerlaunch: steamtinkerlaunch (Linux wrapper tool for Steam client)
+steamtinkerlaunch:
+steamtinkerlaunch: Steamtinkerlaunch is a Linux wrapper tool for use with the Steam
+steamtinkerlaunch: client which allows customizing and start tools and options for games
+steamtinkerlaunch: quickly on the fly.
+steamtinkerlaunch:
+steamtinkerlaunch: More info: https://github.com/frostworx/steamtinkerlaunch
+steamtinkerlaunch:
+steamtinkerlaunch:
+steamtinkerlaunch:
+steamtinkerlaunch:
diff --git a/games/steamtinkerlaunch/steamtinkerlaunch.SlackBuild b/games/steamtinkerlaunch/steamtinkerlaunch.SlackBuild
new file mode 100644
index 0000000000..eef135e515
--- /dev/null
+++ b/games/steamtinkerlaunch/steamtinkerlaunch.SlackBuild
@@ -0,0 +1,102 @@
+#!/bin/bash
+
+# Slackware build script for steamtinkerlaunch
+
+# Copyright 2022 Damian Perticone, Berisso, Argentina
+# All rights reserved.
+#
+# Redistribution and use of this script, with or without modification, is
+# permitted provided that the following conditions are met:
+#
+# 1. Redistributions of this script must retain the above copyright
+# notice, this list of conditions and the following disclaimer.
+#
+# THIS SOFTWARE IS PROVIDED BY THE AUTHOR "AS IS" AND ANY EXPRESS OR IMPLIED
+# WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE IMPLIED WARRANTIES OF
+# MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE ARE DISCLAIMED. IN NO
+# EVENT SHALL THE AUTHOR BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL,
+# SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT LIMITED TO,
+# PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, DATA, OR PROFITS;
+# OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY,
+# WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR
+# OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF THIS SOFTWARE, EVEN IF
+# ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
+
+cd $(dirname $0) ; CWD=$(pwd)
+
+PRGNAM=steamtinkerlaunch
+VERSION=${VERSION:-11.0}
+BUILD=${BUILD:-1}
+TAG=${TAG:-_SBo}
+PKGTYPE=${PKGTYPE:-tgz}
+
+if [ -z "$ARCH" ]; then
+ case "$( uname -m )" in
+ i?86) ARCH=i586 ;;
+ arm*) ARCH=arm ;;
+ *) ARCH=$( uname -m ) ;;
+ esac
+fi
+
+if [ ! -z "${PRINT_PACKAGE_NAME}" ]; then
+ echo "$PRGNAM-$VERSION-$ARCH-$BUILD$TAG.$PKGTYPE"
+ exit 0
+fi
+
+TMP=${TMP:-/tmp/SBo}
+PKG=$TMP/package-$PRGNAM
+OUTPUT=${OUTPUT:-/tmp}
+
+if [ "$ARCH" = "i586" ]; then
+ SLKCFLAGS="-O2 -march=i586 -mtune=i686"
+ LIBDIRSUFFIX=""
+elif [ "$ARCH" = "i686" ]; then
+ SLKCFLAGS="-O2 -march=i686 -mtune=i686"
+ LIBDIRSUFFIX=""
+elif [ "$ARCH" = "x86_64" ]; then
+ SLKCFLAGS="-O2 -fPIC"
+ LIBDIRSUFFIX="64"
+else
+ SLKCFLAGS="-O2"
+ LIBDIRSUFFIX=""
+fi
+
+set -e
+
+rm -rf $PKG
+mkdir -p $TMP $PKG $OUTPUT
+cd $TMP
+rm -rf $PRGNAM-$VERSION
+tar xvf $CWD/$PRGNAM-$VERSION.tar.gz
+cd $PRGNAM-$VERSION
+chown -R root:root .
+find -L . \
+ \( -perm 777 -o -perm 775 -o -perm 750 -o -perm 711 -o -perm 555 \
+ -o -perm 511 \) -exec chmod 755 {} \; -o \
+ \( -perm 666 -o -perm 664 -o -perm 640 -o -perm 600 -o -perm 444 \
+ -o -perm 440 -o -perm 400 \) -exec chmod 644 {} \;
+
+mkdir -p $PKG
+
+install -Dm755 steamtinkerlaunch -t $PKG/usr/bin
+install -d $PKG/usr/share/steamtinkerlaunch
+cp -r collections eval guicfgs lang misc $PKG/usr/share/steamtinkerlaunch
+install -Dm644 misc/steamtinkerlaunch.desktop -t $PKG/usr/share/applications
+install -Dm644 misc/steamtinkerlaunch.svg -t $PKG/usr/share/icons/hicolor/scalable/apps
+
+rm -f $PKG/{,usr/}lib${LIBDIRSUFFIX}/*.la
+
+find $PKG -print0 | xargs -0 file | grep -e "executable" -e "shared object" | grep ELF \
+ | cut -f 1 -d : | xargs strip --strip-unneeded 2> /dev/null || true
+
+mkdir -p $PKG/usr/doc/$PRGNAM-$VERSION
+cp -a LICENSE README.md \
+ $PKG/usr/doc/$PRGNAM-$VERSION
+cat $CWD/$PRGNAM.SlackBuild > $PKG/usr/doc/$PRGNAM-$VERSION/$PRGNAM.SlackBuild
+
+mkdir -p $PKG/install
+cat $CWD/slack-desc > $PKG/install/slack-desc
+cat $CWD/doinst.sh > $PKG/install/doinst.sh
+
+cd $PKG
+/sbin/makepkg -l y -c n $OUTPUT/$PRGNAM-$VERSION-$ARCH-$BUILD$TAG.$PKGTYPE
diff --git a/games/steamtinkerlaunch/steamtinkerlaunch.info b/games/steamtinkerlaunch/steamtinkerlaunch.info
new file mode 100644
index 0000000000..da3aa13194
--- /dev/null
+++ b/games/steamtinkerlaunch/steamtinkerlaunch.info
@@ -0,0 +1,10 @@
+PRGNAM="steamtinkerlaunch"
+VERSION="11.0"
+HOMEPAGE="https://github.com/frostworx/steamtinkerlaunch"
+DOWNLOAD="https://github.com/frostworx/steamtinkerlaunch/archive/v11.0/steamtinkerlaunch-11.0.tar.gz"
+MD5SUM="48b13476745c38828a3957831986409b"
+DOWNLOAD_x86_64=""
+MD5SUM_x86_64=""
+REQUIRES=""
+MAINTAINER="Damian Perticone"
+EMAIL="mjolnirdam@gmail.com"
diff --git a/games/steem/README b/games/steem/README
deleted file mode 100644
index fe40ce9d68..0000000000
--- a/games/steem/README
+++ /dev/null
@@ -1,19 +0,0 @@
-Steem is a Freeware Atari STE emulator for Windows and Linux. It runs
-almost every ST program ever made without any problems. Steem is designed
-to be easy to use and has many unique features. Whether you want to run
-great old games, use MIDI apps just like you did on the ST or you have
-some other, more sinister motive, Steem is the emulator for you!
-
-*** Note to first-time users: Press the Pause/Break key to release the
-*** mouse cursor!
-
-Steem is binary-only software, no source available. Package includes
-the emulator binary and UK TOS images. Optionally, you may include the
-US TOS images. To do this, grab them from here:
-
-http://steem.atari.st/tos_us.zip (md5sum: bf250988783a0d468711a1057215fd73)
-
-Place the file "tos_us.zip" in the SlackBuild's directory before building.
-
-The file steem.pdf (installed in the doc dir) was converted from the
-CHM version of the steem manual, by Jacek Bogucki.
diff --git a/games/steem/doinst.sh b/games/steem/doinst.sh
deleted file mode 100644
index 140e332222..0000000000
--- a/games/steem/doinst.sh
+++ /dev/null
@@ -1,3 +0,0 @@
-if [ -x /usr/bin/update-desktop-database ]; then
- /usr/bin/update-desktop-database -q usr/share/applications
-fi
diff --git a/games/steem/slack-desc b/games/steem/slack-desc
deleted file mode 100644
index df5f6f4d8f..0000000000
--- a/games/steem/slack-desc
+++ /dev/null
@@ -1,19 +0,0 @@
-# HOW TO EDIT THIS FILE:
-# The "handy ruler" below makes it easier to edit a package description.
-# Line up the first '|' above the ':' following the base package name, and
-# the '|' on the right side marks the last column you can put a character in.
-# You must make exactly 11 lines for the formatting to be correct. It's also
-# customary to leave one space after the ':' except on otherwise blank lines.
-
- |-----handy-ruler------------------------------------------------------|
-steem: steem (Freeware Atari STE Emulator)
-steem:
-steem: Steem is a Freeware Atari STE emulator for Windows and Linux. It
-steem: runs almost every ST program ever made without any problems. Steem
-steem: is designed to be easy to use and has many unique features. Whether
-steem: you want to run great old games, use MIDI apps just like you did on
-steem: the ST or you have some other, more sinister motive, Steem is the
-steem: emulator for you!
-steem:
-steem:
-steem:
diff --git a/games/steem/steem.6 b/games/steem/steem.6
deleted file mode 100644
index c72d46446e..0000000000
--- a/games/steem/steem.6
+++ /dev/null
@@ -1,218 +0,0 @@
-.\" Automatically generated by Pod::Man 2.27 (Pod::Simple 3.28)
-.\"
-.\" Standard preamble:
-.\" ========================================================================
-.de Sp \" Vertical space (when we can't use .PP)
-.if t .sp .5v
-.if n .sp
-..
-.de Vb \" Begin verbatim text
-.ft CW
-.nf
-.ne \\$1
-..
-.de Ve \" End verbatim text
-.ft R
-.fi
-..
-.\" Set up some character translations and predefined strings. \*(-- will
-.\" give an unbreakable dash, \*(PI will give pi, \*(L" will give a left
-.\" double quote, and \*(R" will give a right double quote. \*(C+ will
-.\" give a nicer C++. Capital omega is used to do unbreakable dashes and
-.\" therefore won't be available. \*(C` and \*(C' expand to `' in nroff,
-.\" nothing in troff, for use with C<>.
-.tr \(*W-
-.ds C+ C\v'-.1v'\h'-1p'\s-2+\h'-1p'+\s0\v'.1v'\h'-1p'
-.ie n \{\
-. ds -- \(*W-
-. ds PI pi
-. if (\n(.H=4u)&(1m=24u) .ds -- \(*W\h'-12u'\(*W\h'-12u'-\" diablo 10 pitch
-. if (\n(.H=4u)&(1m=20u) .ds -- \(*W\h'-12u'\(*W\h'-8u'-\" diablo 12 pitch
-. ds L" ""
-. ds R" ""
-. ds C` ""
-. ds C' ""
-'br\}
-.el\{\
-. ds -- \|\(em\|
-. ds PI \(*p
-. ds L" ``
-. ds R" ''
-. ds C`
-. ds C'
-'br\}
-.\"
-.\" Escape single quotes in literal strings from groff's Unicode transform.
-.ie \n(.g .ds Aq \(aq
-.el .ds Aq '
-.\"
-.\" If the F register is turned on, we'll generate index entries on stderr for
-.\" titles (.TH), headers (.SH), subsections (.SS), items (.Ip), and index
-.\" entries marked with X<> in POD. Of course, you'll have to process the
-.\" output yourself in some meaningful fashion.
-.\"
-.\" Avoid warning from groff about undefined register 'F'.
-.de IX
-..
-.nr rF 0
-.if \n(.g .if rF .nr rF 1
-.if (\n(rF:(\n(.g==0)) \{
-. if \nF \{
-. de IX
-. tm Index:\\$1\t\\n%\t"\\$2"
-..
-. if !\nF==2 \{
-. nr % 0
-. nr F 2
-. \}
-. \}
-.\}
-.rr rF
-.\"
-.\" Accent mark definitions (@(#)ms.acc 1.5 88/02/08 SMI; from UCB 4.2).
-.\" Fear. Run. Save yourself. No user-serviceable parts.
-. \" fudge factors for nroff and troff
-.if n \{\
-. ds #H 0
-. ds #V .8m
-. ds #F .3m
-. ds #[ \f1
-. ds #] \fP
-.\}
-.if t \{\
-. ds #H ((1u-(\\\\n(.fu%2u))*.13m)
-. ds #V .6m
-. ds #F 0
-. ds #[ \&
-. ds #] \&
-.\}
-. \" simple accents for nroff and troff
-.if n \{\
-. ds ' \&
-. ds ` \&
-. ds ^ \&
-. ds , \&
-. ds ~ ~
-. ds /
-.\}
-.if t \{\
-. ds ' \\k:\h'-(\\n(.wu*8/10-\*(#H)'\'\h"|\\n:u"
-. ds ` \\k:\h'-(\\n(.wu*8/10-\*(#H)'\`\h'|\\n:u'
-. ds ^ \\k:\h'-(\\n(.wu*10/11-\*(#H)'^\h'|\\n:u'
-. ds , \\k:\h'-(\\n(.wu*8/10)',\h'|\\n:u'
-. ds ~ \\k:\h'-(\\n(.wu-\*(#H-.1m)'~\h'|\\n:u'
-. ds / \\k:\h'-(\\n(.wu*8/10-\*(#H)'\z\(sl\h'|\\n:u'
-.\}
-. \" troff and (daisy-wheel) nroff accents
-.ds : \\k:\h'-(\\n(.wu*8/10-\*(#H+.1m+\*(#F)'\v'-\*(#V'\z.\h'.2m+\*(#F'.\h'|\\n:u'\v'\*(#V'
-.ds 8 \h'\*(#H'\(*b\h'-\*(#H'
-.ds o \\k:\h'-(\\n(.wu+\w'\(de'u-\*(#H)/2u'\v'-.3n'\*(#[\z\(de\v'.3n'\h'|\\n:u'\*(#]
-.ds d- \h'\*(#H'\(pd\h'-\w'~'u'\v'-.25m'\f2\(hy\fP\v'.25m'\h'-\*(#H'
-.ds D- D\\k:\h'-\w'D'u'\v'-.11m'\z\(hy\v'.11m'\h'|\\n:u'
-.ds th \*(#[\v'.3m'\s+1I\s-1\v'-.3m'\h'-(\w'I'u*2/3)'\s-1o\s+1\*(#]
-.ds Th \*(#[\s+2I\s-2\h'-\w'I'u*3/5'\v'-.3m'o\v'.3m'\*(#]
-.ds ae a\h'-(\w'a'u*4/10)'e
-.ds Ae A\h'-(\w'A'u*4/10)'E
-. \" corrections for vroff
-.if v .ds ~ \\k:\h'-(\\n(.wu*9/10-\*(#H)'\s-2\u~\d\s+2\h'|\\n:u'
-.if v .ds ^ \\k:\h'-(\\n(.wu*10/11-\*(#H)'\v'-.4m'^\v'.4m'\h'|\\n:u'
-. \" for low resolution devices (crt and lpr)
-.if \n(.H>23 .if \n(.V>19 \
-\{\
-. ds : e
-. ds 8 ss
-. ds o a
-. ds d- d\h'-1'\(ga
-. ds D- D\h'-1'\(hy
-. ds th \o'bp'
-. ds Th \o'LP'
-. ds ae ae
-. ds Ae AE
-.\}
-.rm #[ #] #H #V #F C
-.\" ========================================================================
-.\"
-.IX Title "STEEM 6"
-.TH STEEM 6 "2014-11-12" "3.2" "SlackBuilds.org"
-.\" For nroff, turn off justification. Always turn off hyphenation; it makes
-.\" way too many mistakes in technical documents.
-.if n .ad l
-.nh
-.SH "NAME"
-steem \- the Atari STE emulator for Linux/X11
-.SH "SYNOPSIS"
-.IX Header "SYNOPSIS"
-steem [options] [disk_image_a [disk_image_b]] [cartridge] [tos_image]
-.PP
-steem [options] [state_file]
-.SH "DESCRIPTION"
-.IX Header "DESCRIPTION"
-Steem is a Freeware Atari \s-1ST/STE\s0 emulator for Windows and Linux.
-.SH "OPTIONS"
-.IX Header "OPTIONS"
-.SS "Image Files"
-.IX Subsection "Image Files"
-.IP "\fB[disk_image_a], [disk_image_b]\fR" 4
-.IX Item "[disk_image_a], [disk_image_b]"
-Optional disk images to be used for the \s-1ST\s0's A: and B: drives. File types supported are
-\&\s-1ST/MSA/DIM/STT/ZIP/RAR.\s0 If 2 disks are specified, the first will be \s-1ST\s0 drive A: and the second drive B:.
-.IP "\fB[cartridge]\fR" 4
-.IX Item "[cartridge]"
-Optional name of a cartridge image (.STC) to be loaded.
-.IP "\fB[state_file]\fR" 4
-.IX Item "[state_file]"
-state file: previously saved state file (.STS) to load. If none is specified, Steem will
-load \*(L"auto.sts\*(R" provided the relevant option is checked in the Options dialog.
-.IP "\fB[tos_image]\fR" 4
-.IX Item "[tos_image]"
-\&\s-1TOS\s0 image file to use. By default, this is set in steem.ini and does not need setting on the
-command line. For most games and applications, the \s-1TOS\s0 image should be the \s-1UK\s0 v1.02 image
-(tos102.img).
-.SS "Switches"
-.IX Subsection "Switches"
-Options are case-independent and can be prefixed by \-, \-\-, / or nothing.
-.IP "\fB\s-1NOSHM\s0\fR" 4
-.IX Item "NOSHM"
-disable use of Shared Memory.
-.IP "\fB\s-1NOSOUND\s0\fR" 4
-.IX Item "NOSOUND"
-no sound output.
-.IP "\fBSOF=<n\fR>" 4
-.IX Item "SOF=<n>"
-set sound output frequency to <n> Hz.
-.IP "\fBPABUFSIZE=<n\fR>" 4
-.IX Item "PABUFSIZE=<n>"
-set PortAudio buffer size to <n> samples.
-.IP "\fBFONT=<string\fR>" 4
-.IX Item "FONT=<string>"
-use a different font.
-.IP "\fB\s-1HELP\s0\fR" 4
-.IX Item "HELP"
-print help message and quit.
-.IP "\fBINI=<file\fR>" 4
-.IX Item "INI=<file>"
-use <file> instead of steem.ini to initialise options.
-.IP "\fBTRANS=<file\fR>" 4
-.IX Item "TRANS=<file>"
-use <file> instead of searching for Translate.txt or Translate_*.txt to translate the \s-1GUI\s0
-text.
-.PP
-All of these options (except INI= and TRANS=) can be changed from the \s-1GUI\s0 once steem is running. It
-is easiest just to run steem and play with the \s-1GUI.\s0
-.SH "FILES"
-.IX Header "FILES"
-.IP "\fB/usr/bin/steem\fR" 4
-.IX Item "/usr/bin/steem"
-Shell script wrapper that sets up the environment for the actual steem binary.
-.IP "\fB/usr/libexec/steem\fR" 4
-.IX Item "/usr/libexec/steem"
-Actual steem binary. Don't run directly, as it doesn't behave in a very Linux-friendly way.
-.IP "\fB~/.steem/\fR" 4
-.IX Item "~/.steem/"
-Directory steem executes in. Contains steem.ini and all save-state files, including auto.sts.
-.SH "AUTHORS"
-.IX Header "AUTHORS"
-Steem was written by Anthony and Russell Hayward.
-.PP
-This man page and the steem wrapper script were written by B. Watson, for the SlackBuilds.org
-project (but may be used by anyone)
diff --git a/games/steem/steem.SlackBuild b/games/steem/steem.SlackBuild
deleted file mode 100644
index 1ec6aca05c..0000000000
--- a/games/steem/steem.SlackBuild
+++ /dev/null
@@ -1,105 +0,0 @@
-#!/bin/sh
-
-# Slackware build script for steem
-
-# Written by B. Watson (yalhcru@gmail.com)
-
-# Licensed under the WTFPL. See http://www.wtfpl.net/txt/copying/ for details.
-
-# 20180123 bkw:
-# - BUILD=3
-# - 4 years now and open source steem still fails to build.
-# - Allow building a (fake) x86_64 package on 64-bit, since the
-# binary is fully static and runs fine on 64-bit. This is
-# how it should have been from day one, sorry about that.
-
-# 20141112 bkw:
-# - binary in /usr/games, not /usr/bin
-# - rewrite man page as pod, move to man6
-# - get giant steem.pdf.xz out of the SBo tarball, move to my host
-# This will be the last submission for the old binary-only
-# steem for linux. Will be working on building the open source
-# steem in the near future.
-
-PRGNAM=steem
-VERSION=${VERSION:-3.2}
-BUILD=${BUILD:-3}
-TAG=${TAG:-_SBo}
-
-# Binary-only package, ARCH is a lie, but set it to
-# what tools like sbopkg will expect.
-if [ -z "$ARCH" ]; then
- case "$( uname -m )" in
- i?86) ARCH=i586 ;;
- arm*) ARCH=arm ;;
- *) ARCH=$( uname -m ) ;;
- esac
-fi
-
-CWD=$(pwd)
-TMP=${TMP:-/tmp/SBo}
-PKG=$TMP/package-$PRGNAM
-OUTPUT=${OUTPUT:-/tmp}
-
-set -e
-
-SRCVER=${VERSION/./_}
-
-rm -rf $PKG
-mkdir -p $TMP $PKG $OUTPUT
-cd $TMP
-rm -rf $PRGNAM-$VERSION
-mkdir $PRGNAM-$VERSION
-cd $PRGNAM-$VERSION
-tar xvf $CWD/x${PRGNAM}_v${SRCVER}-i486.tar.gz
-chown -R root:root .
-find -L . \
- \( -perm 777 -o -perm 775 -o -perm 750 -o -perm 711 -o -perm 555 -o -perm 511 \) \
- -exec chmod 755 {} \; -o \
- \( -perm 666 -o -perm 664 -o -perm 600 -o -perm 444 -o -perm 440 -o -perm 400 \) \
- -exec chmod 644 {} \;
-
-mkdir -p $PKG/usr/games $PKG/usr/share/$PRGNAM/patches \
- $PKG/usr/libexec $PKG/usr/share/$PRGNAM/tos \
- $PKG/usr/man/man6 $PKG/usr/doc/$PRGNAM-$VERSION
-
-# binary's already stripped
-install -m0755 $PRGNAM $PKG/usr/libexec/$PRGNAM.bin
-install -m0755 $CWD/$PRGNAM.sh $PKG/usr/games/$PRGNAM
-
-cp -r patches/* $PKG/usr/share/$PRGNAM/patches
-
-unzip -LL $CWD/tos_uk.zip
-if [ -e $CWD/tos_us.zip ]; then
- unzip -LL $CWD/tos_us.zip
-fi
-
-cp tos*.img $PKG/usr/share/$PRGNAM/tos
-
-cp -a *.txt FAQ README win32.help $PRGNAM.new $PKG/usr/doc/$PRGNAM-$VERSION
-
-# CRLF's suck..
-sed -i 's/\r//g' $PKG/usr/doc/$PRGNAM-$VERSION/*
-
-cat $CWD/$PRGNAM.SlackBuild > $PKG/usr/doc/$PRGNAM-$VERSION/$PRGNAM.SlackBuild
-
-# Man page created from the --help output
-gzip -9c < $CWD/$PRGNAM.6 > $PKG/usr/man/man6/$PRGNAM.6.gz
-
-# pdf doc was created by running chm2pdf on the chm help downloaded from
-# the original site.
-xzcat $CWD/$PRGNAM.pdf.xz > $PKG/usr/doc/$PRGNAM-$VERSION/$PRGNAM.pdf
-
-# icon converted from the windows icon using wrestool on steem.exe
-mkdir -p $PKG/usr/share/pixmaps $PKG/usr/share/applications
-cat $CWD/$PRGNAM.png > $PKG/usr/share/pixmaps/$PRGNAM.png
-
-# .desktop written for this build
-cat $CWD/$PRGNAM.desktop > $PKG/usr/share/applications/$PRGNAM.desktop
-
-mkdir -p $PKG/install
-cat $CWD/slack-desc > $PKG/install/slack-desc
-cat $CWD/doinst.sh > $PKG/install/doinst.sh
-
-cd $PKG
-/sbin/makepkg -l y -c n $OUTPUT/$PRGNAM-$VERSION-$ARCH-$BUILD$TAG.${PKGTYPE:-tgz}
diff --git a/games/steem/steem.desktop b/games/steem/steem.desktop
deleted file mode 100644
index d0d9fa2686..0000000000
--- a/games/steem/steem.desktop
+++ /dev/null
@@ -1,10 +0,0 @@
-[Desktop Entry]
-Version=1.0
-Name=STeem
-GenericName=Atari ST Emulator
-Type=Application
-Exec=steem
-Icon=steem
-Terminal=false
-StartupNotify=false
-Categories=Game;Emulator;
diff --git a/games/steem/steem.info b/games/steem/steem.info
deleted file mode 100644
index b2880d71bd..0000000000
--- a/games/steem/steem.info
+++ /dev/null
@@ -1,12 +0,0 @@
-PRGNAM="steem"
-VERSION="3.2"
-HOMEPAGE="http://steem.atari.st/"
-DOWNLOAD="http://steem.atari.st/xsteem_v3_2-i486.tar.gz \
- http://steem.atari.st/tos_uk.zip"
-MD5SUM="7beb9c1faf78ffbd7e50ebf13dc991af \
- 51778c08eaabe70020b30bf87b04ec7f"
-DOWNLOAD_x86_64=""
-MD5SUM_x86_64=""
-REQUIRES=""
-MAINTAINER="B. Watson"
-EMAIL="yalhcru@gmail.com"
diff --git a/games/steem/steem.pdf.xz b/games/steem/steem.pdf.xz
deleted file mode 100644
index 45497a31fe..0000000000
--- a/games/steem/steem.pdf.xz
+++ /dev/null
Binary files differ
diff --git a/games/steem/steem.png b/games/steem/steem.png
deleted file mode 100644
index b63b0baa75..0000000000
--- a/games/steem/steem.png
+++ /dev/null
Binary files differ
diff --git a/games/steem/steem.pod b/games/steem/steem.pod
deleted file mode 100644
index 854101a540..0000000000
--- a/games/steem/steem.pod
+++ /dev/null
@@ -1,113 +0,0 @@
-# pod source for steem.6, convert with:
-# pod2man --stderr -s6 -cSlackBuilds.org -r3.2 steem.pod > steem.6
-
-=head1 NAME
-
-steem - the Atari STE emulator for Linux/X11
-
-=head1 SYNOPSIS
-
-steem [options] [disk_image_a [disk_image_b]] [cartridge] [tos_image]
-
-steem [options] [state_file]
-
-=head1 DESCRIPTION
-
-Steem is a Freeware Atari ST/STE emulator for Windows and Linux.
-
-=head1 OPTIONS
-
-=head2 Image Files
-
-=over 4
-
-=item B<[disk_image_a], [disk_image_b]>
-
-Optional disk images to be used for the ST's A: and B: drives. File types supported are
-ST/MSA/DIM/STT/ZIP/RAR. If 2 disks are specified, the first will be ST drive A: and the second drive B:.
-
-=item B<[cartridge]>
-
-Optional name of a cartridge image (.STC) to be loaded.
-
-=item B<[state_file]>
-
-state file: previously saved state file (.STS) to load. If none is specified, Steem will
-load "auto.sts" provided the relevant option is checked in the Options dialog.
-
-=item B<[tos_image]>
-
-TOS image file to use. By default, this is set in steem.ini and does not need setting on the
-command line. For most games and applications, the TOS image should be the UK v1.02 image
-(tos102.img).
-
-=back
-
-=head2 Switches
-
-Options are case-independent and can be prefixed by -, --, / or nothing.
-
-=over 4
-
-=item B<NOSHM>
-
-disable use of Shared Memory.
-
-=item B<NOSOUND>
-
-no sound output.
-
-=item B<SOF=<n>>
-
-set sound output frequency to <n> Hz.
-
-=item B<PABUFSIZE=<n>>
-
-set PortAudio buffer size to <n> samples.
-
-=item B<FONT=<string>>
-
-use a different font.
-
-=item B<HELP>
-
-print help message and quit.
-
-=item B<INI=<file>>
-
-use <file> instead of steem.ini to initialise options.
-
-=item B<TRANS=<file>>
-
-use <file> instead of searching for Translate.txt or Translate_*.txt to translate the GUI
-text.
-
-=back
-
-All of these options (except INI= and TRANS=) can be changed from the GUI once steem is running. It
-is easiest just to run steem and play with the GUI.
-
-=head1 FILES
-
-=over 4
-
-=item B</usr/bin/steem>
-
-Shell script wrapper that sets up the environment for the actual steem binary.
-
-=item B</usr/libexec/steem>
-
-Actual steem binary. Don't run directly, as it doesn't behave in a very Linux-friendly way.
-
-=item B<~/.steem/>
-
-Directory steem executes in. Contains steem.ini and all save-state files, including auto.sts.
-
-=back
-
-=head1 AUTHORS
-
-Steem was written by Anthony and Russell Hayward.
-
-This man page and the steem wrapper script were written by B. Watson, for the SlackBuilds.org
-project (but may be used by anyone)
diff --git a/games/steem/steem.sh b/games/steem/steem.sh
deleted file mode 100644
index 6786153020..0000000000
--- a/games/steem/steem.sh
+++ /dev/null
@@ -1,45 +0,0 @@
-#!/bin/sh
-
-# Wrapper script for steem. It's a windows app ported to linux, which
-# *insists* on being able to write to the directory where the binary
-# lives (even just running "steem --help" segfaults if there's no write
-# permission!)
-# This script makes it behave in a more unix-friendly way.
-
-# TODO: find a better way to do this.
-# Currently, the script at least handles spaces and punctuation
-# in the filenames... but it's kinda ugly the way it works.
-# ...especially the "echo exec ... | exec sh"
-
-ARGS=
-
-if [ ! -d ~/.steem ]; then
- mkdir -p ~/.steem
- ln -s /usr/share/steem/patches ~/.steem/patches
- ln -s /usr/share/steem/tos ~/.steem/tos
- ln -s /usr/libexec/steem.bin ~/.steem
- cat <<EOF > ~/.steem/steem.ini
-[Machine]
-ROM_File=$HOME/.steem/tos/tos102.img
-
-[Main]
-DebugBuild=0
-
-[Update]
-CurrentVersion=3.2
-EOF
-fi
-
-while [ -n "$1" ]; do
- if [ -e "$1" ]; then
- ARG="$( readlink -f "$1" )"
- else
- ARG="$1"
- fi
- echo $ARG
- ARGS="$ARGS '$( echo "$ARG" | sed "s/'/'\\\\''/g" )'"
- shift
-done
-
-cd ~/.steem
-echo exec ./steem.bin $ARGS | exec sh
diff --git a/games/stella-libretro/README b/games/stella-libretro/README
deleted file mode 100644
index 2090c160fa..0000000000
--- a/games/stella-libretro/README
+++ /dev/null
@@ -1,5 +0,0 @@
-Stella is an Atari 2600 video game system emulator that can be used as a
-libretro core.
-
-To build the debugging symbols use:
- DEBUG=1 ./stella-libretro.SlackBuild
diff --git a/games/stella-libretro/slack-desc b/games/stella-libretro/slack-desc
deleted file mode 100644
index c3a1df0233..0000000000
--- a/games/stella-libretro/slack-desc
+++ /dev/null
@@ -1,19 +0,0 @@
-# HOW TO EDIT THIS FILE:
-# The "handy ruler" below makes it easier to edit a package description.
-# Line up the first '|' above the ':' following the base package name, and
-# the '|' on the right side marks the last column you can put a character in.
-# You must make exactly 11 lines for the formatting to be correct. It's also
-# customary to leave one space after the ':' except on otherwise blank lines.
-
- |-----handy-ruler------------------------------------------------------|
-stella-libretro: stella-libretro (Port of Stella to libretro)
-stella-libretro:
-stella-libretro: Stella is a multi-platform Atari 2600 VCS emulator.
-stella-libretro:
-stella-libretro: Homepage: https://www.libretro.com/
-stella-libretro:
-stella-libretro:
-stella-libretro:
-stella-libretro:
-stella-libretro:
-stella-libretro:
diff --git a/games/stella-libretro/stella-libretro.SlackBuild b/games/stella-libretro/stella-libretro.SlackBuild
deleted file mode 100644
index 958baded13..0000000000
--- a/games/stella-libretro/stella-libretro.SlackBuild
+++ /dev/null
@@ -1,82 +0,0 @@
-#!/bin/sh
-
-# Slackware build script for stella-libretro
-
-# Copyright 2016-2018 Hunter Sezen
-# All rights reserved.
-#
-# Redistribution and use of this script, with or without modification, is
-# permitted provided that the following conditions are met:
-#
-# 1. Redistributions of this script must retain the above copyright
-# notice, this list of conditions and the following disclaimer.
-#
-# THIS SOFTWARE IS PROVIDED BY THE AUTHOR "AS IS" AND ANY EXPRESS OR IMPLIED
-# WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE IMPLIED WARRANTIES OF
-# MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE ARE DISCLAIMED. IN NO
-# EVENT SHALL THE AUTHOR BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL,
-# SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT LIMITED TO,
-# PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, DATA, OR PROFITS;
-# OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY,
-# WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR
-# OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF THIS SOFTWARE, EVEN IF
-# ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
-
-PRGNAM=stella-libretro
-LIBNAM=$(echo $PRGNAM | tr - _)
-VERSION=${VERSION:-2018.09.29_3ed8154}
-BUILD=${BUILD:-1}
-TAG=${TAG:-_SBo}
-
-if [ -z "$ARCH" ]; then
- case "$( uname -m )" in
- i?86) ARCH=i586 ;;
- arm*) ARCH=arm ;;
- *) ARCH=$( uname -m ) ;;
- esac
-fi
-
-CWD=$(pwd)
-TMP=${TMP:-/tmp/SBo}
-PKG=$TMP/package-$PRGNAM
-OUTPUT=${OUTPUT:-/tmp}
-
-LIBDIRSUFFIX=
-[ "$ARCH" = x86_64 ] && LIBDIRSUFFIX=64
-
-set -eu
-
-rm -rf $PKG
-mkdir -p $TMP $PKG $OUTPUT
-cd $TMP
-rm -rf $PRGNAM-$VERSION
-tar xvf $CWD/$PRGNAM-$VERSION.tar.xz
-cd $PRGNAM-$VERSION
-chown -R root:root .
-find -L . \
- \( -perm 777 -o -perm 775 -o -perm 750 -o -perm 711 -o -perm 555 \
- -o -perm 511 \) -exec chmod 755 {} \; -o \
- \( -perm 666 -o -perm 664 -o -perm 640 -o -perm 600 -o -perm 444 \
- -o -perm 440 -o -perm 400 \) -exec chmod 644 {} \;
-
-[ "${DEBUG:=0}" != 0 ] && DEBUG=1
-
-make DEBUG=$DEBUG
-
-install -Dm0644 $LIBNAM.so $PKG/usr/lib${LIBDIRSUFFIX}/libretro/$LIBNAM.so
-install -Dm0644 $LIBNAM.info $PKG/usr/lib${LIBDIRSUFFIX}/libretro/info/$LIBNAM.info
-
-if [ $DEBUG = 0 ]; then
- find $PKG -print0 | xargs -0 file | grep -e "executable" -e "shared object" | grep ELF \
- | cut -f 1 -d : | xargs strip --strip-unneeded 2> /dev/null || true
-fi
-
-mkdir -p $PKG/usr/doc/$PRGNAM-$VERSION
-cp -a README.md $PKG/usr/doc/$PRGNAM-$VERSION
-cat $CWD/$PRGNAM.SlackBuild > $PKG/usr/doc/$PRGNAM-$VERSION/$PRGNAM.SlackBuild
-
-mkdir -p $PKG/install
-cat $CWD/slack-desc > $PKG/install/slack-desc
-
-cd $PKG
-/sbin/makepkg -l y -c n $OUTPUT/$PRGNAM-$VERSION-$ARCH-$BUILD$TAG.${PKGTYPE:-tgz}
diff --git a/games/stella-libretro/stella-libretro.info b/games/stella-libretro/stella-libretro.info
deleted file mode 100644
index d4bd982af7..0000000000
--- a/games/stella-libretro/stella-libretro.info
+++ /dev/null
@@ -1,10 +0,0 @@
-PRGNAM="stella-libretro"
-VERSION="2018.09.29_3ed8154"
-HOMEPAGE="https://www.libretro.com/"
-DOWNLOAD="http://slackless.raccoons.tech/src/libretro/stella-libretro-2018.09.29_3ed8154.tar.xz"
-MD5SUM="d5928abe05d3edac62b413d6dc3ea718"
-DOWNLOAD_x86_64=""
-MD5SUM_x86_64=""
-REQUIRES="RetroArch"
-MAINTAINER="orphaned - no maintainer"
-EMAIL="nobody@nowhere.com"
diff --git a/games/stella/README b/games/stella/README
index ca5936c93b..0272c99746 100644
--- a/games/stella/README
+++ b/games/stella/README
@@ -1,2 +1,4 @@
+stella (Atari 2600 VCS emulator)
+
Stella is a multi-platform Atari 2600 VCS emulator released under the
GNU General Public License (GPL).
diff --git a/games/stella/stella.SlackBuild b/games/stella/stella.SlackBuild
index 67528bd016..746c38af04 100644
--- a/games/stella/stella.SlackBuild
+++ b/games/stella/stella.SlackBuild
@@ -1,4 +1,4 @@
-#!/bin/sh
+#!/bin/bash
# Slackware build script for stella
@@ -6,8 +6,18 @@
# Licensed under the WTFPL. See http://www.wtfpl.net/txt/copying/ for details.
-# Now maintained by B. Watson <yalhcru@gmail.com>
+# Now maintained by B. Watson <urchlay@slackware.uk>
+# 20240213 bkw: update for v6.7.1.
+# 20230109 bkw: update for v6.7.
+# 20220610 bkw: update for v6.6, fix doc permissions.
+
+# 20211026 bkw: we're on -current now, so:
+# - update for 6.5.3.
+# - use g++ for the compile (clang++ lacks the -Weverything flag).
+
+# 20210224 bkw: Note to self: do not attempt to upgrade past 6.4, on
+# Slackware 14.2. Our g++ *and* clang++ are now too old.
# 20201103 bkw: update for 6.4.
# 20201027 bkw: update for 6.3.
# 20200804 bkw: update for 6.2.1.
@@ -47,10 +57,13 @@
# - add MIME type for .a26
# - StartupNotify=false in .desktop
+cd $(dirname $0) ; CWD=$(pwd)
+
PRGNAM=stella
-VERSION=${VERSION:-6.4}
+VERSION=${VERSION:-6.7.1}
BUILD=${BUILD:-1}
TAG=${TAG:-_SBo}
+PKGTYPE=${PKGTYPE:-tgz}
if [ -z "$ARCH" ]; then
case "$( uname -m )" in
@@ -60,23 +73,23 @@ if [ -z "$ARCH" ]; then
esac
fi
-CWD=$(pwd)
+if [ ! -z "${PRINT_PACKAGE_NAME}" ]; then
+ echo "$PRGNAM-$VERSION-$ARCH-$BUILD$TAG.$PKGTYPE"
+ exit 0
+fi
+
TMP=${TMP:-/tmp/SBo}
PKG=$TMP/package-$PRGNAM
OUTPUT=${OUTPUT:-/tmp}
if [ "$ARCH" = "i586" ]; then
SLKCFLAGS="-O2 -march=i586 -mtune=i686"
- LIBDIRSUFFIX=""
elif [ "$ARCH" = "i686" ]; then
SLKCFLAGS="-O2 -march=i686 -mtune=i686"
- LIBDIRSUFFIX=""
elif [ "$ARCH" = "x86_64" ]; then
SLKCFLAGS="-O2 -fPIC"
- LIBDIRSUFFIX="64"
else
SLKCFLAGS="-O2"
- LIBDIRSUFFIX=""
fi
set -e
@@ -87,14 +100,11 @@ cd $TMP
rm -rf $PRGNAM-$VERSION
tar xvf $CWD/$PRGNAM-$VERSION-src.tar.xz
cd $PRGNAM-$VERSION
+chown -R root:root .
find -L . -perm /111 -a \! -perm 755 -a -exec chmod 755 {} \+ -o \
\! -perm /111 -a \! -perm 644 -a -exec chmod 644 {} \+
-# 20170620 bkw: configure checks for gcc 4.7, 5.x, or 6.x. Fails on -current
-# because we have 7.x.
-#sed -i 's,\[5-6\],[5-9],g' configure
-
-CC="clang" CXX="clang++" CFLAGS="$SLKCFLAGS" \
+CFLAGS="$SLKCFLAGS" \
CXXFLAGS="$SLKCFLAGS" \
./configure \
--prefix=/usr \
@@ -105,7 +115,10 @@ CXXFLAGS="$SLKCFLAGS" \
--enable-shared
make
-make install-strip DESTDIR=$PKG
+make install DESTDIR=$PKG
+
+# 20211026 bkw: install-strip doesn't actually strip...
+strip $PKG/usr/games/$PRGNAM
mkdir -p $PKG/usr/share/pixmaps
ln -s \
@@ -126,7 +139,9 @@ cat $CWD/$PRGNAM.xml > $PKG/usr/share/mime/packages/$PRGNAM.xml
# add MIME type to .desktop file, and remove startup notification,
# which doesn't actually work (at least not in xfce)
DESKTOP=$PKG/usr/share/applications/$PRGNAM.desktop
-sed -i '/^StartupNotify/s,true,false,' $DESKTOP
+sed -i -e '/^StartupNotify/s,true,false,' \
+ -e 's,Exec=,&/usr/games/,' \
+ $DESKTOP
echo 'MimeType=application/x-2600rom;' >> $DESKTOP
mkdir -p $PKG/usr/doc/$PRGNAM-$VERSION
@@ -138,4 +153,4 @@ cat $CWD/slack-desc > $PKG/install/slack-desc
cat $CWD/doinst.sh > $PKG/install/doinst.sh
cd $PKG
-/sbin/makepkg -l y -c n $OUTPUT/$PRGNAM-$VERSION-$ARCH-$BUILD$TAG.${PKGTYPE:-tgz}
+/sbin/makepkg -l y -c n $OUTPUT/$PRGNAM-$VERSION-$ARCH-$BUILD$TAG.$PKGTYPE
diff --git a/games/stella/stella.info b/games/stella/stella.info
index f28829c3e8..bea5596596 100644
--- a/games/stella/stella.info
+++ b/games/stella/stella.info
@@ -1,10 +1,10 @@
PRGNAM="stella"
-VERSION="6.4"
+VERSION="6.7.1"
HOMEPAGE="https://stella-emu.github.io/"
-DOWNLOAD="https://github.com/stella-emu/stella/releases/download/6.4/stella-6.4-src.tar.xz"
-MD5SUM="a6509ba4c1c45e0d1d9b017ff3c4e545"
+DOWNLOAD="https://github.com/stella-emu/stella/releases/download/6.7.1/stella-6.7.1-src.tar.xz"
+MD5SUM="335a58bc7692ac65c75bba9d9ec80eab"
DOWNLOAD_x86_64=""
MD5SUM_x86_64=""
-REQUIRES="SDL2"
+REQUIRES=""
MAINTAINER="B. Watson"
-EMAIL="yalhcru@gmail.com"
+EMAIL="urchlay@slackware.uk"
diff --git a/games/stepmania/README b/games/stepmania/README
new file mode 100644
index 0000000000..2486a57a02
--- /dev/null
+++ b/games/stepmania/README
@@ -0,0 +1,6 @@
+StepMania is a free dance and rhythm game for Windows, Mac, and Linux.
+It features 3D graphics, keyboard and "dance pad" support, and an
+editor for creating your own steps.
+
+StepMania may be optionally built with jack support. To enable, pass
+JACK=ON to the script. This introduces a dependency on jack.
diff --git a/games/stepmania/doinst.sh b/games/stepmania/doinst.sh
new file mode 100644
index 0000000000..e0358ddf8d
--- /dev/null
+++ b/games/stepmania/doinst.sh
@@ -0,0 +1,12 @@
+if [ -x /usr/bin/update-desktop-database ]; then
+ /usr/bin/update-desktop-database -q usr/share/applications >/dev/null 2>&1
+fi
+
+if [ -e usr/share/icons/hicolor/icon-theme.cache ]; then
+ if [ -x /usr/bin/gtk-update-icon-cache ]; then
+ /usr/bin/gtk-update-icon-cache -f usr/share/icons/hicolor >/dev/null 2>&1
+ fi
+fi
+
+( cd usr/bin ; rm -rf stepmania )
+( cd usr/bin ; ln -sf /usr/share/stepmania-5.1/stepmania stepmania )
diff --git a/games/stepmania/slack-desc b/games/stepmania/slack-desc
new file mode 100644
index 0000000000..06a03e5733
--- /dev/null
+++ b/games/stepmania/slack-desc
@@ -0,0 +1,19 @@
+# HOW TO EDIT THIS FILE:
+# The "handy ruler" below makes it easier to edit a package description.
+# Line up the first '|' above the ':' following the base package name, and
+# the '|' on the right side marks the last column you can put a character in.
+# You must make exactly 11 lines for the formatting to be correct. It's also
+# customary to leave one space after the ':' except on otherwise blank lines.
+
+ |-----handy-ruler------------------------------------------------------|
+stepmania: stepmania (Rhythm Game)
+stepmania:
+stepmania: StepMania is an advanced cross-platform rhythm game for home and
+stepmania: arcade use.
+stepmania:
+stepmania: Homepage: https://www.stepmania.com
+stepmania:
+stepmania:
+stepmania:
+stepmania:
+stepmania:
diff --git a/games/stepmania/stepmania.SlackBuild b/games/stepmania/stepmania.SlackBuild
new file mode 100644
index 0000000000..a199a077af
--- /dev/null
+++ b/games/stepmania/stepmania.SlackBuild
@@ -0,0 +1,161 @@
+#!/bin/bash
+
+# Slackware build script for stepmania
+
+# Copyright 2023 Steven Voges <Oregon, USA>
+# All rights reserved.
+#
+# Redistribution and use of this script, with or without modification, is
+# permitted provided that the following conditions are met:
+#
+# 1. Redistributions of this script must retain the above copyright
+# notice, this list of conditions and the following disclaimer.
+#
+# THIS SOFTWARE IS PROVIDED BY THE AUTHOR "AS IS" AND ANY EXPRESS OR IMPLIED
+# WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE IMPLIED WARRANTIES OF
+# MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE ARE DISCLAIMED. IN NO
+# EVENT SHALL THE AUTHOR BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL,
+# SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT LIMITED TO,
+# PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, DATA, OR PROFITS;
+# OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY,
+# WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR
+# OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF THIS SOFTWARE, EVEN IF
+# ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
+
+cd $(dirname $0) ; CWD=$(pwd)
+
+PRGNAM=stepmania
+VERSION=${VERSION:-20221114_d55acb1}
+SRCVER=${SRCVER:-d55acb1ba26f1c5b5e3048d6d6c0bd116625216f}
+JACK=${JACK:-OFF}
+BUILD=${BUILD:-1}
+TAG=${TAG:-_SBo}
+PKGTYPE=${PKGTYPE:-tgz}
+
+if [ -z "$ARCH" ]; then
+ case "$( uname -m )" in
+ i?86) ARCH=i586 ;;
+ arm*) ARCH=arm ;;
+ *) ARCH=$( uname -m ) ;;
+ esac
+fi
+
+if [ ! -z "${PRINT_PACKAGE_NAME}" ]; then
+ echo "$PRGNAM-$VERSION-$ARCH-$BUILD$TAG.$PKGTYPE"
+ exit 0
+fi
+
+TMP=${TMP:-/tmp/SBo}
+PKG=$TMP/package-$PRGNAM
+OUTPUT=${OUTPUT:-/tmp}
+
+if [ "$ARCH" = "i586" ]; then
+ SLKCFLAGS="-O2 -march=i586 -mtune=i686"
+ LIBDIRSUFFIX=""
+elif [ "$ARCH" = "i686" ]; then
+ SLKCFLAGS="-O2 -march=i686 -mtune=i686"
+ LIBDIRSUFFIX=""
+elif [ "$ARCH" = "x86_64" ]; then
+ SLKCFLAGS="-O2 -fPIC"
+ LIBDIRSUFFIX="64"
+elif [ "$ARCH" = "aarch64" ]; then
+ SLKCFLAGS="-O2 -fPIC"
+ LIBDIRSUFFIX="64"
+else
+ SLKCFLAGS="-O2"
+ LIBDIRSUFFIX=""
+fi
+
+set -e
+
+rm -rf $PKG
+mkdir -p $TMP $PKG $OUTPUT
+cd $TMP
+rm -rf $PRGNAM-$SRCVER
+tar xvf $CWD/$PRGNAM-$SRCVER.tar.gz
+cd $PRGNAM-$SRCVER
+chown -R root:root .
+find -L . \
+ \( -perm 777 -o -perm 775 -o -perm 750 -o -perm 711 -o -perm 555 \
+ -o -perm 511 \) -exec chmod 755 {} \; -o \
+ \( -perm 666 -o -perm 664 -o -perm 640 -o -perm 600 -o -perm 444 \
+ -o -perm 440 -o -perm 400 \) -exec chmod 644 {} \;
+
+# Fixes for ffmpeg5
+sed -i "446s/NOT YASM_FOUND/NOT WITH_SYSTEM_FFMPEG AND NOT YASM_FOUND/" StepmaniaCore.cmake
+
+sed -i "480s/avcodec::CODEC_ID_NONE/avcodec::AV_CODEC_ID_NONE/" src/arch/MovieTexture/MovieTexture_FFMpeg.cpp
+sed -i "519d;520d;521d;522d;523d;" src/arch/MovieTexture/MovieTexture_FFMpeg.cpp
+sed -i "82s/avcodec::PixelFormat/avcodec::AVPixelFormat/" src/arch/MovieTexture/MovieTexture_FFMpeg.h
+sed -i "109s/avcodec::PixelFormat/avcodec::AVPixelFormat/" src/arch/MovieTexture/MovieTexture_FFMpeg.h
+sed -i "120s/avcodec::PIX_FMT_YUYV422,/avcodec::AV_PIX_FMT_YUYV422,/" src/arch/MovieTexture/MovieTexture_FFMpeg.h
+sed -i "131s/avcodec::PIX_FMT_BGRA,/avcodec::AV_PIX_FMT_BGRA,/" src/arch/MovieTexture/MovieTexture_FFMpeg.h
+sed -i "142s/avcodec::PIX_FMT_ARGB,/avcodec::AV_PIX_FMT_ARGB,/" src/arch/MovieTexture/MovieTexture_FFMpeg.h
+sed -i "154s/avcodec::PIX_FMT_ABGR,/avcodec::AV_PIX_FMT_ABGR,/" src/arch/MovieTexture/MovieTexture_FFMpeg.h
+sed -i "165s/avcodec::PIX_FMT_RGBA,/avcodec::AV_PIX_FMT_RGBA,/" src/arch/MovieTexture/MovieTexture_FFMpeg.h
+sed -i "176s/avcodec::PIX_FMT_RGB24,/avcodec::AV_PIX_FMT_RGB24,/" src/arch/MovieTexture/MovieTexture_FFMpeg.h
+sed -i "187s/avcodec::PIX_FMT_BGR24,/avcodec::AV_PIX_FMT_BGR24,/" src/arch/MovieTexture/MovieTexture_FFMpeg.h
+sed -i "198s/avcodec::PIX_FMT_RGB555,/avcodec::AV_PIX_FMT_RGB555,/" src/arch/MovieTexture/MovieTexture_FFMpeg.h
+sed -i "203s/avcodec::PIX_FMT_NB,/avcodec::AV_PIX_FMT_NB,/" src/arch/MovieTexture/MovieTexture_FFMpeg.h
+
+sed -i "108i add_compile_definitions(FF_API_NEXT)" src/CMakeData-arch.cmake
+sed -i "511s/avcodec::AVCodec/const avcodec::AVCodec/" src/arch/MovieTexture/MovieTexture_FFMpeg.cpp
+sed -i "16i #include <libavcodec/avcodec.h>" src/arch/MovieTexture/MovieTexture_FFMpeg.h
+
+# Fix desktop entry
+sed -i "11s/Application;Game;ArcadeGame/Game;ArcadeGame/" $PRGNAM.desktop
+sed -i "3d" $PRGNAM.desktop
+
+mkdir -p build
+cd build
+ cmake \
+ -Wno-dev \
+ -DCMAKE_C_FLAGS:STRING="$SLKCFLAGS" \
+ -DCMAKE_CXX_FLAGS:STRING="$SLKCFLAGS" \
+ -DCMAKE_INSTALL_PREFIX=/usr/share \
+ -DCMAKE_INTERPROCEDURAL_OPTIMIZATION=ON \
+ -DCMAKE_POSITION_INDEPENDENT_CODE=ON \
+ -DWITH_JACK=$JACK \
+ -DWITH_SDL=ON \
+ -DWITH_SYSTEM_FFMPEG=ON \
+ -DWITH_SYSTEM_GLEW=ON \
+ -DWITH_SYSTEM_JPEG=ON \
+ -DWITH_SYSTEM_JSONCPP=ON \
+ -DWITH_SYSTEM_MAD=ON \
+ -DWITH_SYSTEM_OGG=ON \
+ -DWITH_SYSTEM_PCRE=ON \
+ -DWITH_SYSTEM_PNG=ON \
+ -DWITH_SYSTEM_TOMCRYPT=ON \
+ -DWITH_SYSTEM_TOMMATH=ON \
+ -DWITH_SYSTEM_ZLIB=ON \
+ -DWITH_TTY=OFF \
+ -DCMAKE_BUILD_TYPE=Release ..
+ make
+ make install/strip DESTDIR=$PKG
+cd ..
+
+mkdir -p $PKG/usr/bin
+chmod 0755 $PKG/usr/share/${PRGNAM}-5.1/GtkModule.so
+for SIZE in 16 22 24 32 36 48 64 72 96 128 192 256 ; do
+ install -vDm0644 icons/hicolor/${SIZE}x${SIZE}/apps/${PRGNAM}-ssc.png \
+ $PKG/usr/share/icons/hicolor/${SIZE}x${SIZE}/apps/${PRGNAM}-ssc.png
+done
+install -vDm0644 icons/hicolor/scalable/apps/${PRGNAM}-ssc.svg \
+ $PKG/usr/share/icons/hicolor/scalable/apps/${PRGNAM}-ssc.svg
+install -vDm0644 $PRGNAM.desktop $PKG/usr/share/applications/$PRGNAM.desktop
+
+find $PKG -print0 | xargs -0 file | grep -e "executable" -e "shared object" | grep ELF \
+ | cut -f 1 -d : | xargs strip --strip-unneeded 2> /dev/null || true
+
+mkdir -p $PKG/usr/doc/$PRGNAM-$VERSION
+cp -a \
+ README.md Docs \
+ $PKG/usr/doc/$PRGNAM-$VERSION
+cat $CWD/$PRGNAM.SlackBuild > $PKG/usr/doc/$PRGNAM-$VERSION/$PRGNAM.SlackBuild
+
+mkdir -p $PKG/install
+cat $CWD/slack-desc > $PKG/install/slack-desc
+cat $CWD/doinst.sh > $PKG/install/doinst.sh
+
+cd $PKG
+/sbin/makepkg -l y -c n $OUTPUT/$PRGNAM-$VERSION-$ARCH-$BUILD$TAG.$PKGTYPE
diff --git a/games/stepmania/stepmania.info b/games/stepmania/stepmania.info
new file mode 100644
index 0000000000..e2a9a7ed0f
--- /dev/null
+++ b/games/stepmania/stepmania.info
@@ -0,0 +1,10 @@
+PRGNAM="stepmania"
+VERSION="20221114_d55acb1"
+HOMEPAGE="https://www.stepmania.com"
+DOWNLOAD="https://github.com/stepmania/stepmania/archive/d55acb1ba26f1c5b5e3048d6d6c0bd116625216f/stepmania-d55acb1ba26f1c5b5e3048d6d6c0bd116625216f.tar.gz"
+MD5SUM="77482300fb2019386ef7b8a7214ea859"
+DOWNLOAD_x86_64=""
+MD5SUM_x86_64=""
+REQUIRES="jsoncpp libtomcrypt"
+MAINTAINER="Steven Voges"
+EMAIL="svoges.sbo@gmail.com"
diff --git a/games/stockfish/README b/games/stockfish/README
index dd14db8255..07b5a4a1d4 100644
--- a/games/stockfish/README
+++ b/games/stockfish/README
@@ -1,3 +1,5 @@
+stockfish (UCI chess engine)
+
Stockfish is a free UCI chess engine derived from Glaurung 2.1.
It is not a complete chess program and requires some UCI-compatible GUI
(e.g. XBoard/eboard with PolyGlot) in order to be used comfortably.
diff --git a/games/stockfish/stockfish.SlackBuild b/games/stockfish/stockfish.SlackBuild
index 3d3769db45..5753faa630 100644
--- a/games/stockfish/stockfish.SlackBuild
+++ b/games/stockfish/stockfish.SlackBuild
@@ -1,8 +1,8 @@
-#!/bin/sh
+#!/bin/bash
# Slackware build script for stockfish
-# Copyright 2016 - 2020 Johannes Schoepfer, Germany
+# Copyright 2016-2024 Johannes Schoepfer, Germany
# All rights reserved.
#
# Redistribution and use of this script, with or without modification, is
@@ -22,10 +22,13 @@
# OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF THIS SOFTWARE, EVEN IF
# ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
+cd $(dirname $0) ; CWD=$(pwd)
+
PRGNAM=stockfish
-VERSION=${VERSION:-11}
+VERSION=${VERSION:-16.1}
BUILD=${BUILD:-1}
TAG=${TAG:-_SBo}
+PKGTYPE=${PKGTYPE:-tgz}
if [ -z "$ARCH" ]; then
case "$( uname -m )" in
@@ -35,23 +38,23 @@ if [ -z "$ARCH" ]; then
esac
fi
-CWD=$(pwd)
+if [ ! -z "${PRINT_PACKAGE_NAME}" ]; then
+ echo "$PRGNAM-$VERSION-$ARCH-$BUILD$TAG.$PKGTYPE"
+ exit 0
+fi
+
TMP=${TMP:-/tmp/SBo}
PKG=$TMP/package-$PRGNAM
OUTPUT=${OUTPUT:-/tmp}
if [ "$ARCH" = "i586" ]; then
SLKCFLAGS="-O2 -march=i586 -mtune=i686"
- LIBDIRSUFFIX=""
elif [ "$ARCH" = "i686" ]; then
SLKCFLAGS="-O2 -march=i686 -mtune=i686"
- LIBDIRSUFFIX=""
elif [ "$ARCH" = "x86_64" ]; then
SLKCFLAGS="-O2 -fPIC"
- LIBDIRSUFFIX="64"
else
SLKCFLAGS="-O2"
- LIBDIRSUFFIX=""
fi
set -e
@@ -60,42 +63,37 @@ rm -rf $PKG
mkdir -p $TMP $PKG $OUTPUT
cd $TMP
rm -rf Stockfish-sf_$VERSION
-tar vxf $CWD/Stockfish-$VERSION.tar.gz
+tar vxf $CWD/Stockfish-sf_$VERSION.tar.gz
+cp $CWD/*.nnue Stockfish-sf_$VERSION/src/
cd Stockfish-sf_$VERSION
chown -R root:root .
find -L . \
\( -perm 777 -o -perm 775 -o -perm 750 -o -perm 711 -o -perm 555 \
- -o -perm 511 \) -exec chmod 755 {} \; -o \
+ -o -perm 511 \) -exec chmod 755 {} + -o \
\( -perm 666 -o -perm 664 -o -perm 640 -o -perm 600 -o -perm 444 \
- -o -perm 440 -o -perm 400 \) -exec chmod 644 {} \;
+ -o -perm 440 -o -perm 400 \) -exec chmod 644 {} +
cd src
# More optimized, but may not run on all x86_64 hardware
-# [ "$ARCH" = x86_64 ] && grep -w popcnt /proc/cpuinfo && ARCH=x86-64-modern
+# [ "$ARCH" = x86_64 ] && grep -w popcnt /proc/cpuinfo && OPT="-modern"
export CXXFLAGS="$SLKCFLAGS"
case $ARCH in
- x86_64) make profile-build ARCH=x86-64 ;;
- x86-64-modern) make profile-build ARCH=$ARCH ;;
- i?86) make profile-build ARCH=x86-32 ;;
- arm) make profile-build ARCH=armv7 ;;
- *) make profile-build ARCH=general-32 ;;
+ x86_64) unshare -n make profile-build ARCH=x86-64$OPT;;
+ i?86) unshare -n make profile-build ARCH=x86-32 ;;
+ arm) unshare -n make profile-build ARCH=armv7 ;;
esac
make strip
-make PREFIX="$PKG/usr" install
+make PREFIX="$PKG/usr" BINDIR=$PKG/usr/games install
cd ..
-find $PKG -print0 | xargs -0 file | grep -e "executable" -e "shared object" | grep ELF \
- | cut -f 1 -d : | xargs strip --strip-unneeded 2> /dev/null || true
-
mkdir $PKG/install
cat $CWD/slack-desc > $PKG/install/slack-desc
-# Docs
mkdir -p $PKG/usr/doc/$PRGNAM-$VERSION
-mv AUTHORS Copying.txt Readme.md $PKG/usr/doc/$PRGNAM-$VERSION/
+cp AUTHORS Copying.txt README.md $PKG/usr/doc/$PRGNAM-$VERSION/
cat $CWD/$PRGNAM.SlackBuild > $PKG/usr/doc/$PRGNAM-$VERSION/$PRGNAM.SlackBuild
cd $PKG
-/sbin/makepkg -p -l y -c n $OUTPUT/$PRGNAM-$VERSION-$ARCH-$BUILD$TAG.${PKGTYPE:-tgz}
+/sbin/makepkg -p -l y -c n $OUTPUT/$PRGNAM-$VERSION-$ARCH-$BUILD$TAG.$PKGTYPE
diff --git a/games/stockfish/stockfish.info b/games/stockfish/stockfish.info
index 6fa13698ba..771dfd9036 100644
--- a/games/stockfish/stockfish.info
+++ b/games/stockfish/stockfish.info
@@ -1,8 +1,12 @@
PRGNAM="stockfish"
-VERSION="11"
+VERSION="16.1"
HOMEPAGE="https://stockfishchess.org/"
-DOWNLOAD="https://github.com/official-stockfish/Stockfish/archive/sf_11/Stockfish-11.tar.gz"
-MD5SUM="dd5b554e66c249343b674d45453a8bba"
+DOWNLOAD="https://github.com/official-stockfish/Stockfish/archive/sf_16.1/Stockfish-sf_16.1.tar.gz \
+ https://tests.stockfishchess.org/api/nn/nn-b1a57edbea57.nnue \
+ https://tests.stockfishchess.org/api/nn/nn-baff1ede1f90.nnue"
+MD5SUM="500fe25527ea52a55983527e1e25979b \
+ 87d18077c911cc0b540734267fd68864 \
+ 64a4816d6420a588490ee284077a2334"
DOWNLOAD_x86_64=""
MD5SUM_x86_64=""
REQUIRES=""
diff --git a/games/stone_soup/README b/games/stone_soup/README
deleted file mode 100644
index 5357759a51..0000000000
--- a/games/stone_soup/README
+++ /dev/null
@@ -1,4 +0,0 @@
-Dungeon Crawl Stone Soup is a game of dungeon exploration, combat and magic,
-involving characters of diverse skills, worshipping deities of great power and
-caprice. To win, you'll need to be a master of tactics and strategy, and
-prevail against overwhelming odds.
diff --git a/games/stone_soup/slack-desc b/games/stone_soup/slack-desc
deleted file mode 100644
index c23aeb2c3d..0000000000
--- a/games/stone_soup/slack-desc
+++ /dev/null
@@ -1,19 +0,0 @@
-# HOW TO EDIT THIS FILE:
-# The "handy ruler" below makes it easier to edit a package description.
-# Line up the first '|' above the ':' following the base package name, and
-# the '|' on the right side marks the last column you can put a character in.
-# You must make exactly 11 lines for the formatting to be correct. It's also
-# customary to leave one space after the ':' except on otherwise blank lines.
-
- |-----handy-ruler------------------------------------------------------|
-stone_soup: stone_soup (dungeon exploration game)
-stone_soup:
-stone_soup: Dungeon Crawl Stone Soup is a game of dungeon exploration, combat and
-stone_soup: magic, involving characters of diverse skills, worshipping deities of
-stone_soup: great power and caprice. To win, you'll need to be a master of tactics
-stone_soup: and strategy, and prevail against overwhelming odds.
-stone_soup:
-stone_soup: The traditional ASCII roguelike version is: crawl-ascii.
-stone_soup: The new SDL version is: crawl.
-stone_soup:
-stone_soup: homepage: http://crawl.develz.org/
diff --git a/games/stone_soup/stone_soup.SlackBuild b/games/stone_soup/stone_soup.SlackBuild
deleted file mode 100644
index cdec0b4e3b..0000000000
--- a/games/stone_soup/stone_soup.SlackBuild
+++ /dev/null
@@ -1,118 +0,0 @@
-#!/bin/sh
-
-# Slackware build script for Dungeon Crawl Stone Soup
-
-# Copyright 2020, SlackBuilds.org Project, David Melik, Spokane, WA, USA
-# All rights reserved.
-#
-# Redistribution and use of this script, with or without modification, is
-# permitted provided that the following conditions are met:
-#
-# 1. Redistributions of this script must retain the above copyright
-# notice, this list of conditions and the following disclaimer.
-#
-# THIS SOFTWARE IS PROVIDED BY THE AUTHOR "AS IS" AND ANY EXPRESS OR IMPLIED
-# WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE IMPLIED WARRANTIES OF
-# MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE ARE DISCLAIMED. IN NO
-# EVENT SHALL THE AUTHOR BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL,
-# SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT LIMITED TO,
-# PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, DATA, OR PROFITS;
-# OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY,
-# WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR
-# OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF THIS SOFTWARE, EVEN IF
-# ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
-
-PRGNAM=stone_soup
-VERSION=${VERSION:-0.25.0}
-BUILD=${BUILD:-1}
-TAG=${TAG:-_SBo}
-
-if [ -z "$ARCH" ]; then
- case "$( uname -m )" in
- i?86) ARCH=i586 ;;
- arm*) ARCH=arm ;;
- *) ARCH=$( uname -m ) ;;
- esac
-fi
-
-CWD=$(pwd)
-TMP=${TMP:-/tmp/SBo}
-PKG=$TMP/package-$PRGNAM
-OUTPUT=${OUTPUT:-/tmp}
-
-if [ "$ARCH" = "i586" ]; then
- SLKCFLAGS="-O2 -march=i586 -mtune=i686"
- LIBDIRSUFFIX=""
-elif [ "$ARCH" = "i686" ]; then
- SLKCFLAGS="-O2 -march=i686 -mtune=i686"
- LIBDIRSUFFIX=""
-elif [ "$ARCH" = "x86_64" ]; then
- SLKCFLAGS="-O2 -fPIC"
- LIBDIRSUFFIX="64"
-else
- SLKCFLAGS="-O2"
- LIBDIRSUFFIX=""
-fi
-
-set -e
-
-rm -rf $PKG
-mkdir -p $TMP $PKG $OUTPUT
-cd $TMP
-rm -rf $PRGNAM-$VERSION
-tar xvf $CWD/$PRGNAM-$VERSION-nodeps.tar.xz
-cd $PRGNAM-$VERSION
-chown -R root:root .
-find -L . \
- \( -perm 777 -o -perm 775 -o -perm 750 -o -perm 711 -o -perm 555 \
- -o -perm 511 \) -exec chmod 755 {} \; -o \
- \( -perm 666 -o -perm 664 -o -perm 640 -o -perm 600 -o -perm 444 \
- -o -perm 440 -o -perm 400 \) -exec chmod 644 {} \;
-
-cd source
- # do not remove the quotes from SAVEDIR='~/.crawl/'
- # (~ needs to be evaluated at runtime, not buildtime)
- make $TARGET \
- prefix=/usr \
- COPY_FONTS=1 \
- DATADIR=/usr/share/games/crawl \
- SAVEDIR='~/.crawl/' \
- SDL2=1 \
- TILES=1
- make $TARGET install \
- prefix=/usr \
- COPY_FONTS=1 \
- DATADIR=/usr/share/games/crawl \
- DESTDIR=$PKG \
- SAVEDIR='~/.crawl/' \
- SDL2=1 \
- TILES=1
- make clean
- make $TARGET \
- prefix=/usr \
- DATADIR=/usr/share/games/crawl \
- SAVEDIR='~/.crawl/'
-cp crawl $PKG/usr/games/crawl-ascii
-cd ..
-
-find $PKG -print0 | xargs -0 file | grep -e "executable" -e "shared object" | grep ELF \
- | cut -f 1 -d : | xargs strip --strip-unneeded 2> /dev/null || true
-
-mkdir -p $PKG/usr/man/man6
-gzip -9 -c docs/crawl.6 > $PKG/usr/man/man6/crawl.6.gz
-
-mkdir -p $PKG/usr/share/{applications,pixmaps}
-cp $CWD/stone_soup_icon-32x32.png $PKG/usr/share/pixmaps
-cp $CWD/stone_soup.desktop $PKG/usr/share/applications
-
-mkdir -p $PKG/usr/doc/$PRGNAM-$VERSION
-cp -a CREDITS.txt INSTALL.md LICENSE $PKG/usr/share/games/crawl/docs/* \
- $PKG/usr/doc/$PRGNAM-$VERSION
-cat $CWD/$PRGNAM.SlackBuild > $PKG/usr/doc/$PRGNAM-$VERSION/$PRGNAM.SlackBuild
-
-mkdir -p $PKG/install
-cat $CWD/slack-desc > $PKG/install/slack-desc
-cat $CWD/doinst.sh > $PKG/install/doinst.sh
-
-cd $PKG
-/sbin/makepkg -l y -c n $OUTPUT/$PRGNAM-$VERSION-$ARCH-$BUILD$TAG.${PKGTYPE:-tgz}
diff --git a/games/stone_soup/stone_soup.desktop b/games/stone_soup/stone_soup.desktop
deleted file mode 100644
index 409b16bfb8..0000000000
--- a/games/stone_soup/stone_soup.desktop
+++ /dev/null
@@ -1,8 +0,0 @@
-[Desktop Entry]
-Name=Dungeon Crawl Stone Soup
-Comment=Rescue the mystifyingly fabulous Orb of Zot
-Exec=crawl
-Terminal=true
-Type=Application
-Categories=Game;
-Icon=stone_soup_icon-32x32
diff --git a/games/stone_soup/stone_soup.info b/games/stone_soup/stone_soup.info
deleted file mode 100644
index b5b53e7b12..0000000000
--- a/games/stone_soup/stone_soup.info
+++ /dev/null
@@ -1,10 +0,0 @@
-PRGNAM="stone_soup"
-VERSION="0.25.0"
-HOMEPAGE="http://crawl.develz.org/"
-DOWNLOAD="http://crawl.develz.org/release/0.25/stone_soup-0.25.0-nodeps.tar.xz"
-MD5SUM="7239d444005dc18137235d31546350ef"
-DOWNLOAD_x86_64=""
-MD5SUM_x86_64=""
-REQUIRES="lua PyYAML SDL2_image"
-MAINTAINER="David Melik"
-EMAIL="dchmelik@gmail.com"
diff --git a/games/stormbaancoureur/stormbaancoureur.SlackBuild b/games/stormbaancoureur/stormbaancoureur.SlackBuild
index f4dd4a5062..d6f4c82f93 100644
--- a/games/stormbaancoureur/stormbaancoureur.SlackBuild
+++ b/games/stormbaancoureur/stormbaancoureur.SlackBuild
@@ -1,4 +1,4 @@
-#!/bin/sh
+#!/bin/bash
# Slackware build script for stormbaancoureur
@@ -22,10 +22,13 @@
# OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF THIS SOFTWARE, EVEN IF
# ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
+cd $(dirname $0) ; CWD=$(pwd)
+
PRGNAM=stormbaancoureur
VERSION=${VERSION:-2.1.6}
BUILD=${BUILD:-1}
TAG=${TAG:-_SBo}
+PKGTYPE=${PKGTYPE:-tgz}
if [ -z "$ARCH" ]; then
case "$( uname -m )" in
@@ -35,7 +38,14 @@ if [ -z "$ARCH" ]; then
esac
fi
-CWD=$(pwd)
+# If the variable PRINT_PACKAGE_NAME is set, then this script will report what
+# the name of the created package would be, and then exit. This information
+# could be useful to other scripts.
+if [ ! -z "${PRINT_PACKAGE_NAME}" ]; then
+ echo "$PRGNAM-$VERSION-$ARCH-$BUILD$TAG.$PKGTYPE"
+ exit 0
+fi
+
TMP=${TMP:-/tmp/SBo}
PKG=$TMP/package-$PRGNAM
OUTPUT=${OUTPUT:-/tmp}
@@ -100,4 +110,4 @@ mkdir $PKG/install
cat $CWD/slack-desc > $PKG/install/slack-desc
cd $PKG
-/sbin/makepkg -p -l y -c n $OUTPUT/$PRGNAM-$VERSION-$ARCH-$BUILD$TAG.${PKGTYPE:-tgz}
+/sbin/makepkg -p -l y -c n $OUTPUT/$PRGNAM-$VERSION-$ARCH-$BUILD$TAG.$PKGTYPE
diff --git a/games/stratagus/README b/games/stratagus/README
index cac5260373..f87254c060 100644
--- a/games/stratagus/README
+++ b/games/stratagus/README
@@ -1,12 +1,13 @@
stratagus (RTS game engine)
Stratagus Core is a free cross-platform real-time strategy gaming
-engine. It includes support for playing over the internet/LAN, or playing
-a computer opponent. The engine is configurable and can be used to create
-games with a wide range of features specific to your needs.
+engine. It includes support for playing over the internet/LAN, or
+playing a computer opponent. The engine is configurable and can be
+used to create games with a wide range of features specific to your
+needs.
-If you're installing stratagus as a dependency for wargus, make sure the
-stratagus and wargus version numbers match. This shouldn't be a problem
-(both will be updated at SBo at the same time, when needed).
+If you're installing stratagus as a dependency for wargus, make sure
+the stratagus and wargus version numbers match. This shouldn't be a
+problem (both will be updated at SBo at the same time, when needed).
Stratagus was formerly known as FreeCraft and ALE Clone.
diff --git a/games/stratagus/stratagus.SlackBuild b/games/stratagus/stratagus.SlackBuild
index 09450f4443..99b74a19c2 100644
--- a/games/stratagus/stratagus.SlackBuild
+++ b/games/stratagus/stratagus.SlackBuild
@@ -1,8 +1,8 @@
-#!/bin/sh
+#!/bin/bash
# Slackware build script for stratagus
-# Written by B. Watson (yalhcru@gmail.com)
+# Written by B. Watson (urchlay@slackware.uk)
# Licensed under the WTFPL. See http://www.wtfpl.net/txt/copying/ for details.
@@ -27,10 +27,13 @@
# 20180915 bkw: updated for v2.4.1
+cd $(dirname $0) ; CWD=$(pwd)
+
PRGNAM=stratagus
VERSION=${VERSION:-2.4.1}
BUILD=${BUILD:-1}
TAG=${TAG:-_SBo}
+PKGTYPE=${PKGTYPE:-tgz}
if [ -z "$ARCH" ]; then
case "$( uname -m )" in
@@ -40,7 +43,11 @@ if [ -z "$ARCH" ]; then
esac
fi
-CWD=$(pwd)
+if [ ! -z "${PRINT_PACKAGE_NAME}" ]; then
+ echo "$PRGNAM-$VERSION-$ARCH-$BUILD$TAG.$PKGTYPE"
+ exit 0
+fi
+
TMP=${TMP:-/tmp/SBo}
PKG=$TMP/package-$PRGNAM
OUTPUT=${OUTPUT:-/tmp}
@@ -75,6 +82,9 @@ find -L . -perm /111 -a \! -perm 755 -a -exec chmod 755 {} \+ -o \
# share/doc/$PRGNAM, so:
sed -i "s,share/doc/$PRGNAM,doc/$PRGNAM-$VERSION," CMakeLists.txt
+# 20211119 bkw: fix compile with -current's gcc.
+sed -i 's,"_C_," _C_,' src/ai/ai_plan.cpp src/stratagus/script.cpp
+
mkdir -p build
cd build
cmake \
@@ -106,4 +116,4 @@ mkdir -p $PKG/install
cat $CWD/slack-desc > $PKG/install/slack-desc
cd $PKG
-/sbin/makepkg -l y -c n $OUTPUT/$PRGNAM-$VERSION-$ARCH-$BUILD$TAG.${PKGTYPE:-tgz}
+/sbin/makepkg -l y -c n $OUTPUT/$PRGNAM-$VERSION-$ARCH-$BUILD$TAG.$PKGTYPE
diff --git a/games/stratagus/stratagus.info b/games/stratagus/stratagus.info
index e86bc61b48..d5cfe03044 100644
--- a/games/stratagus/stratagus.info
+++ b/games/stratagus/stratagus.info
@@ -5,6 +5,6 @@ DOWNLOAD="https://github.com/Wargus/stratagus/archive/v2.4.1/stratagus-2.4.1.tar
MD5SUM="ad8d49e4e19d8de49b5a8241d1b0ab7b"
DOWNLOAD_x86_64=""
MD5SUM_x86_64=""
-REQUIRES="tolua++ libmikmod fluidsynth"
+REQUIRES="tolua++ libmikmod"
MAINTAINER="B. Watson"
-EMAIL="yalhcru@gmail.com"
+EMAIL="urchlay@slackware.uk"
diff --git a/games/stuntrally/stuntrally.SlackBuild b/games/stuntrally/stuntrally.SlackBuild
index 0850ac5fbb..bcec5d68ee 100644
--- a/games/stuntrally/stuntrally.SlackBuild
+++ b/games/stuntrally/stuntrally.SlackBuild
@@ -1,4 +1,4 @@
-#!/bin/sh
+#!/bin/bash
# Slackware build script for stuntrally
@@ -22,11 +22,18 @@
# OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF THIS SOFTWARE, EVEN IF
# ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
+# 20220501 bkw: Modified by SlackBuilds.org, BUILD=2:
+# - only package the correct set of binaries/libraries (32-bit or 64-bit).
+# - make .desktop files validate (mostly).
+
+cd $(dirname $0) ; CWD=$(pwd)
+
PRGNAM=stuntrally
SRCNAM=StuntRally
VERSION=${VERSION:-2.6}
-BUILD=${BUILD:-1}
+BUILD=${BUILD:-2}
TAG=${TAG:-_SBo}
+PKGTYPE=${PKGTYPE:-tgz}
if [ -z "$ARCH" ]; then
case "$( uname -m )" in
@@ -36,25 +43,20 @@ if [ -z "$ARCH" ]; then
esac
fi
-CWD=$(pwd)
+case "$ARCH" in
+ i?86|x86_64) ;;
+ *) echo "ARCH=$ARCH unsupported" ;;
+esac
+
+if [ ! -z "${PRINT_PACKAGE_NAME}" ]; then
+ echo "$PRGNAM-$VERSION-$ARCH-$BUILD$TAG.$PKGTYPE"
+ exit 0
+fi
+
TMP=${TMP:-/tmp/SBo}
PKG=$TMP/package-$PRGNAM
OUTPUT=${OUTPUT:-/tmp}
-if [ "$ARCH" = "i586" ]; then
- SLKCFLAGS="-O2 -march=i586 -mtune=i686"
- LIBDIRSUFFIX=""
-elif [ "$ARCH" = "i686" ]; then
- SLKCFLAGS="-O2 -march=i686 -mtune=i686"
- LIBDIRSUFFIX=""
-elif [ "$ARCH" = "x86_64" ]; then
- SLKCFLAGS="-O2 -fPIC"
- LIBDIRSUFFIX="64"
-else
- SLKCFLAGS="-O2"
- LIBDIRSUFFIX=""
-fi
-
set -e
rm -rf $PKG
@@ -66,9 +68,9 @@ cd $SRCNAM-$VERSION-linux64
chown -R root:root .
find -L . \
\( -perm 777 -o -perm 775 -o -perm 750 -o -perm 711 -o -perm 555 \
- -o -perm 511 \) -exec chmod 755 {} \; -o \
+ -o -perm 511 \) -exec chmod 755 {} \+ -o \
\( -perm 666 -o -perm 664 -o -perm 640 -o -perm 600 -o -perm 444 \
- -o -perm 440 -o -perm 400 \) -exec chmod 644 {} \;
+ -o -perm 440 -o -perm 400 \) -exec chmod 644 {} \+
cd ..
mkdir -p $PKG/{opt/$PRGNAM/,usr/bin/}
cp -r StuntRally-$VERSION-linux64/* $PKG/opt/$PRGNAM/
@@ -79,9 +81,21 @@ ln -s /opt/$PRGNAM/sr-editor usr/bin/
mv opt/$PRGNAM/share usr/
rm -f $PKG/opt/$PRGNAM/lib/{32,64}/libstdc++.so.6
+# 20220501 bkw: x86_64 packages don't need the 32-bit exe and libs,
+# i?86 packages don't need the 64-bit ones. saves a bit of disk space.
+if [ "$ARCH" = "x86_64" ]; then
+ rm -rf $PKG/opt/$PRGNAM/bin/*_x86 $PKG/opt/$PRGNAM/lib/32
+else
+ rm -rf $PKG/opt/$PRGNAM/bin/*_x86_64 $PKG/opt/$PRGNAM/lib/64
+fi
+
find $PKG -print0 | xargs -0 file | grep -e "executable" -e "shared object" | grep ELF \
| cut -f 1 -d : | xargs strip --strip-unneeded 2> /dev/null || true
+# 20220501 bkw: pacify desktop-file-validate somewhat.
+sed -i -e '/^Categories/s,Application;,,' \
+ $PKG/usr/share/applications/*.desktop
+
mkdir -p $PKG/usr/doc/$PRGNAM-$VERSION
cp -a opt/$PRGNAM/License.txt opt/$PRGNAM/Readme.txt $PKG/usr/doc/$PRGNAM-$VERSION
cat $CWD/$PRGNAM.SlackBuild > $PKG/usr/doc/$PRGNAM-$VERSION/$PRGNAM.SlackBuild
@@ -91,4 +105,4 @@ cat $CWD/slack-desc > $PKG/install/slack-desc
cat $CWD/doinst.sh > $PKG/install/doinst.sh
cd $PKG
-/sbin/makepkg -l y -c n $OUTPUT/$PRGNAM-$VERSION-$ARCH-$BUILD$TAG.${PKGTYPE:-tgz}
+/sbin/makepkg -l y -c n $OUTPUT/$PRGNAM-$VERSION-$ARCH-$BUILD$TAG.$PKGTYPE
diff --git a/games/sumeria/sumeria.SlackBuild b/games/sumeria/sumeria.SlackBuild
index 9a86e1bc5d..96f631bec8 100644
--- a/games/sumeria/sumeria.SlackBuild
+++ b/games/sumeria/sumeria.SlackBuild
@@ -1,17 +1,22 @@
-#!/bin/sh
+#!/bin/bash
# Slackware build script for sumeria
-# Written by B. Watson (yalhcru@gmail.com)
+# Written by B. Watson (urchlay@slackware.uk)
# Licensed under the WTFPL. See http://www.wtfpl.net/txt/copying/ for details.
# VERSION came from the server timestamp of the source file.
+# 20230530 bkw: BUILD=2, actually use SLKCFLAGS.
+
+cd $(dirname $0) ; CWD=$(pwd)
+
PRGNAM=sumeria
VERSION=${VERSION:-20020219}
-BUILD=${BUILD:-1}
+BUILD=${BUILD:-2}
TAG=${TAG:-_SBo}
+PKGTYPE=${PKGTYPE:-tgz}
if [ -z "$ARCH" ]; then
case "$( uname -m )" in
@@ -21,23 +26,23 @@ if [ -z "$ARCH" ]; then
esac
fi
-CWD=$(pwd)
+if [ ! -z "${PRINT_PACKAGE_NAME}" ]; then
+ echo "$PRGNAM-$VERSION-$ARCH-$BUILD$TAG.$PKGTYPE"
+ exit 0
+fi
+
TMP=${TMP:-/tmp/SBo}
PKG=$TMP/package-$PRGNAM
OUTPUT=${OUTPUT:-/tmp}
if [ "$ARCH" = "i586" ]; then
SLKCFLAGS="-O2 -march=i586 -mtune=i686"
- LIBDIRSUFFIX=""
elif [ "$ARCH" = "i686" ]; then
SLKCFLAGS="-O2 -march=i686 -mtune=i686"
- LIBDIRSUFFIX=""
elif [ "$ARCH" = "x86_64" ]; then
SLKCFLAGS="-O2 -fPIC"
- LIBDIRSUFFIX="64"
else
SLKCFLAGS="-O2"
- LIBDIRSUFFIX=""
fi
set -e
@@ -45,7 +50,7 @@ set -e
rm -rf $PKG
mkdir -p $TMP $PKG/usr/games $OUTPUT
cd $PKG/usr/games
-gcc -include stdlib.h -Wl,-s -o $PRGNAM $CWD/$PRGNAM.c -lm
+gcc $SLKCFLAGS -include stdlib.h -Wl,-s -o $PRGNAM $CWD/$PRGNAM.c -lm
mkdir -p $PKG/usr/doc/$PRGNAM-$VERSION
cat $CWD/README > $PKG/usr/doc/$PRGNAM-$VERSION/README
@@ -55,4 +60,4 @@ mkdir -p $PKG/install
cat $CWD/slack-desc > $PKG/install/slack-desc
cd $PKG
-/sbin/makepkg -l y -c n $OUTPUT/$PRGNAM-$VERSION-$ARCH-$BUILD$TAG.${PKGTYPE:-tgz}
+/sbin/makepkg -l y -c n $OUTPUT/$PRGNAM-$VERSION-$ARCH-$BUILD$TAG.$PKGTYPE
diff --git a/games/sumeria/sumeria.info b/games/sumeria/sumeria.info
index dc9c8f380e..12769652cd 100644
--- a/games/sumeria/sumeria.info
+++ b/games/sumeria/sumeria.info
@@ -7,4 +7,4 @@ DOWNLOAD_x86_64=""
MD5SUM_x86_64=""
REQUIRES=""
MAINTAINER="B. Watson"
-EMAIL="yalhcru@gmail.com"
+EMAIL="urchlay@slackware.uk"
diff --git a/games/sumwars/README b/games/sumwars/README
deleted file mode 100644
index c095369193..0000000000
--- a/games/sumwars/README
+++ /dev/null
@@ -1,7 +0,0 @@
-Summoning Wars is an open source role-playing game, featuring both a
-single-player and a multiplayer mode for about 2 to 8 players.
-It is available and proved to work for Windows, Mac OS X and GNU/Linux
-operating systems, although it might as well work in *BSD and similar
-operating systems.
-
-You will need to have built CEGUI with its optional ogre dependency.
diff --git a/games/sumwars/slack-desc b/games/sumwars/slack-desc
deleted file mode 100644
index 8541ece536..0000000000
--- a/games/sumwars/slack-desc
+++ /dev/null
@@ -1,19 +0,0 @@
-# HOW TO EDIT THIS FILE:
-# The "handy ruler" below makes it easier to edit a package description.
-# Line up the first '|' above the ':' following the base package name, and
-# the '|' on the right side marks the last column you can put a character in.
-# You must make exactly 11 lines for the formatting to be correct. It's also
-# customary to leave one space after the ':' except on otherwise blank lines.
-
- |-----handy-ruler------------------------------------------------------|
-sumwars: sumwars (role-playing game)
-sumwars:
-sumwars: Summoning Wars is an open source role-playing game,
-sumwars: featuring both a single-player and a multiplayer mode for
-sumwars: about 2 to 8 players.
-sumwars:
-sumwars: Homepage: http://sumwars.org
-sumwars:
-sumwars:
-sumwars:
-sumwars:
diff --git a/games/sumwars/sumwars.SlackBuild b/games/sumwars/sumwars.SlackBuild
deleted file mode 100644
index 41567c53fb..0000000000
--- a/games/sumwars/sumwars.SlackBuild
+++ /dev/null
@@ -1,103 +0,0 @@
-#!/bin/sh
-
-# Slackware build script for sumwars
-
-# Copyright 2014-2016 Dimitris Zlatanidis Orestiada, Greece
-# All rights reserved.
-#
-# Redistribution and use of this script, with or without modification, is
-# permitted provided that the following conditions are met:
-#
-# 1. Redistributions of this script must retain the above copyright
-# notice, this list of conditions and the following disclaimer.
-#
-# THIS SOFTWARE IS PROVIDED BY THE AUTHOR "AS IS" AND ANY EXPRESS OR IMPLIED
-# WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE IMPLIED WARRANTIES OF
-# MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE ARE DISCLAIMED. IN NO
-# EVENT SHALL THE AUTHOR BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL,
-# SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT LIMITED TO,
-# PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, DATA, OR PROFITS;
-# OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY,
-# WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR
-# OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF THIS SOFTWARE, EVEN IF
-# ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
-
-PRGNAM=sumwars
-VERSION=${VERSION:-0.5.8}
-SRCVERSION=$VERSION-src
-BUILD=${BUILD:-1}
-TAG=${TAG:-_SBo}
-
-if [ -z "$ARCH" ]; then
- case "$( uname -m )" in
- i?86) ARCH=i586 ;;
- arm*) ARCH=arm ;;
- *) ARCH=$( uname -m ) ;;
- esac
-fi
-
-CWD=$(pwd)
-TMP=${TMP:-/tmp/SBo}
-PKG=$TMP/package-$PRGNAM
-OUTPUT=${OUTPUT:-/tmp}
-
-if [ "$ARCH" = "i586" ]; then
- SLKCFLAGS="-O2 -march=i586 -mtune=i686"
- LIBDIRSUFFIX=""
-elif [ "$ARCH" = "i686" ]; then
- SLKCFLAGS="-O2 -march=i686 -mtune=i686"
- LIBDIRSUFFIX=""
-elif [ "$ARCH" = "x86_64" ]; then
- SLKCFLAGS="-O2 -fPIC"
- LIBDIRSUFFIX="64"
-else
- SLKCFLAGS="-O2"
- LIBDIRSUFFIX=""
-fi
-
-set -e
-
-rm -rf $PKG
-mkdir -p $TMP $PKG $OUTPUT
-cd $TMP
-rm -rf $PRGNAM-$VERSION
-tar xvf $CWD/$PRGNAM-$SRCVERSION.tar.bz2
-cd $PRGNAM-$VERSION
-chown -R root:root .
-find -L . \
- \( -perm 777 -o -perm 775 -o -perm 750 -o -perm 711 -o -perm 555 \
- -o -perm 511 \) -exec chmod 755 {} \; -o \
- \( -perm 666 -o -perm 664 -o -perm 640 -o -perm 600 -o -perm 444 \
- -o -perm 440 -o -perm 400 \) -exec chmod 644 {} \;
-
-mkdir -p build
-cd build
- cmake \
- -DCMAKE_C_FLAGS:STRING="$SLKCFLAGS" \
- -DCMAKE_CXX_FLAGS:STRING="$SLKCFLAGS" \
- -DCMAKE_CXX_FLAGS="-lboost_system" \
- -DCMAKE_INSTALL_PREFIX=/usr \
- -DCMAKE_BUILD_TYPE=Release ..
- make
- make install DESTDIR=$PKG
-cd ..
-
-find $PKG -print0 | xargs -0 file | grep -e "executable" -e "shared object" | grep ELF \
- | cut -f 1 -d : | xargs strip --strip-unneeded 2> /dev/null || true
-
-mkdir -p $PKG/usr/share/applications
-install -D -m644 $CWD/$PRGNAM.desktop $PKG/usr/share/applications/$PRGNAM.desktop
-
-mkdir -p $PKG/usr/share/pixmaps/
-install -D -m644 share/icon/SumWarsIcon_128x128.png $PKG/usr/share/pixmaps/$PRGNAM.svg
-
-mkdir -p $PKG/usr/doc/$PRGNAM-$VERSION
-cp -a AUTHORS COPYING README $PKG/usr/doc/$PRGNAM-$VERSION
-cat $CWD/$PRGNAM.SlackBuild > $PKG/usr/doc/$PRGNAM-$VERSION/$PRGNAM.SlackBuild
-
-mkdir -p $PKG/install
-cat $CWD/slack-desc > $PKG/install/slack-desc
-cat $CWD/doinst.sh > $PKG/install/doinst.sh
-
-cd $PKG
-/sbin/makepkg -l y -c n $OUTPUT/$PRGNAM-$VERSION-$ARCH-$BUILD$TAG.${PKGTYPE:-tgz}
diff --git a/games/sumwars/sumwars.desktop b/games/sumwars/sumwars.desktop
deleted file mode 100644
index 967f988d1d..0000000000
--- a/games/sumwars/sumwars.desktop
+++ /dev/null
@@ -1,10 +0,0 @@
-[Desktop Entry]
-Name= SumWars
-Name[he]= SumWars
-Comment= A multi-player, 3D Action Role-Playing Game
-Exec=sumwars
-Icon=sumwars
-Terminal=false
-Type=Application
-Categories=Game;RolePlaying;
-GenericName=Game
diff --git a/games/sumwars/sumwars.info b/games/sumwars/sumwars.info
deleted file mode 100644
index f235247f06..0000000000
--- a/games/sumwars/sumwars.info
+++ /dev/null
@@ -1,10 +0,0 @@
-PRGNAM="sumwars"
-VERSION="0.5.8"
-HOMEPAGE="http://sumwars.org"
-DOWNLOAD="http://downloads.sourceforge.net/project/sumwars/0.5.8/sumwars-0.5.8-src.tar.bz2"
-MD5SUM="db2a2a672125668908ffaf8519deae41"
-DOWNLOAD_x86_64=""
-MD5SUM_x86_64=""
-REQUIRES="FreeImage physfs ogre ois CEGUI freealut lua poco"
-MAINTAINER="Dimitris Zlatanidis"
-EMAIL="d.zlatanidis@gmail.com"
diff --git a/games/sunshine/README b/games/sunshine/README
new file mode 100644
index 0000000000..8ebc26880d
--- /dev/null
+++ b/games/sunshine/README
@@ -0,0 +1,11 @@
+sunshine (game stream host for Moonlight)
+
+Sunshine is a self-hosted game stream host for Moonlight. Offering low
+latency, cloud gaming server capabilities with support for AMD, Intel,
+and Nvidia GPUs for hardware encoding. Software encoding is also
+available. You can connect to Sunshine from any Moonlight client on a
+variety of devices. A web UI is provided to allow configuration, and
+client pairing, from your favorite web browser. Pair from the local
+server or any mobile device.
+
+Homepage: https://github.com/LizardByte/Sunshine
diff --git a/games/sunshine/doinst.sh b/games/sunshine/doinst.sh
new file mode 100644
index 0000000000..5fb28930db
--- /dev/null
+++ b/games/sunshine/doinst.sh
@@ -0,0 +1,3 @@
+if [ -x /usr/bin/update-desktop-database ]; then
+ /usr/bin/update-desktop-database -q usr/share/applications >/dev/null 2>&1
+fi
diff --git a/games/sunshine/slack-desc b/games/sunshine/slack-desc
new file mode 100644
index 0000000000..285c4197e7
--- /dev/null
+++ b/games/sunshine/slack-desc
@@ -0,0 +1,19 @@
+# HOW TO EDIT THIS FILE:
+# The "handy ruler" below makes it easier to edit a package description. Line
+# up the first '|' above the ':' following the base package name, and the '|'
+# on the right side marks the last column you can put a character in. You must
+# make exactly 11 lines for the formatting to be correct. It's also
+# customary to leave one space after the ':'.
+
+ |-----handy-ruler------------------------------------------------------|
+sunshine: sunshine (game stream host for Moonlight)
+sunshine:
+sunshine: Sunshine is a self-hosted game stream host for Moonlight. Offering low
+sunshine: latency, cloud gaming server capabilities with support for AMD, Intel,
+sunshine: and Nvidia GPUs for hardware encoding. Software encoding is also
+sunshine: available. You can connect to Sunshine from any Moonlight client on a
+sunshine: variety of devices. A web UI is provided to allow configuration, and
+sunshine: client pairing, from your favorite web browser. Pair from the local
+sunshine: server or any mobile device.
+sunshine:
+sunshine: Homepage: https://github.com/LizardByte/Sunshine
diff --git a/games/sunshine/sunshine.SlackBuild b/games/sunshine/sunshine.SlackBuild
new file mode 100644
index 0000000000..70dcf2ffd0
--- /dev/null
+++ b/games/sunshine/sunshine.SlackBuild
@@ -0,0 +1,141 @@
+#!/bin/bash
+
+# Copyright 2023 Jake Day, Maryville, TN, USA
+# All rights reserved.
+#
+# Redistribution and use of this script, with or without modification, is
+# permitted provided that the following conditions are met:
+#
+# 1. Redistributions of this script must retain the above copyright
+# notice, this list of conditions and the following disclaimer.
+#
+# THIS SOFTWARE IS PROVIDED BY THE AUTHOR ''AS IS'' AND ANY EXPRESS OR IMPLIED
+# WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE IMPLIED WARRANTIES OF
+# MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE ARE DISCLAIMED. IN NO
+# EVENT SHALL THE AUTHOR BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL,
+# SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT LIMITED TO,
+# PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, DATA, OR PROFITS;
+# OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY,
+# WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR
+# OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF THIS SOFTWARE, EVEN IF
+# ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
+
+cd $(dirname $0) ; CWD=$(pwd)
+
+PRGNAM=sunshine
+VERSION=${VERSION:-0.20.0}
+BUILD=${BUILD:-1}
+TAG=${TAG:-_SBo}
+PKGTYPE=${PKGTYPE:-tgz}
+
+if [ -z "$ARCH" ]; then
+ case "$(uname -m)" in
+ i?86) ARCH=i586 ;;
+ arm*) ARCH=arm ;;
+ *) ARCH=$(uname -m) ;;
+ esac
+fi
+
+# If the variable PRINT_PACKAGE_NAME is set, then this script will report what
+# the name of the created package would be, and then exit. This information
+# could be useful to other scripts.
+if [ ! -z "${PRINT_PACKAGE_NAME}" ]; then
+ echo "$PRGNAM-$VERSION-$ARCH-$BUILD$TAG.$PKGTYPE"
+ exit 0
+fi
+
+TMP=${TMP:-/tmp/SBo}
+PKG=$TMP/package-$PRGNAM
+OUTPUT=${OUTPUT:-/tmp}
+
+DIRNAME=Sunshine-$VERSION
+
+MOONLIGHT=${MOONLIGHT:-2bb026c763fc18807d7e4a93f918054c488f84e1}
+ENET=${ENET:-880e41f3ab572ad6d8f064c6cc77e04f46d00956}
+SIMWEBSRV=${SIMWEBSRV:-v3.1.1}
+VIGEMCLIENT=${VIGEMCLIENT:-dc2f3da093938c3dcc8b7697707b7017e4a917fa}
+MINIUPNP=${MINIUPNP:-fb5c328a5e8fd57a3ec0f5d33915377a5d3581f3}
+NVCODECHDRS=${NVCODECHDRS:-dc3e4484dc83485734e503991fe5ed3bdf256fba}
+TPCIRCBUF=${TPCIRCBUF:-8833b3a73fab6530cc51e2063a85cced01714cfb}
+FFMPEG=${FFMPEG:-6deb7d7366fc6e09afb3cb235cab6780bfa550b9}
+NANORS=${NANORS:-e9e242e98e27037830490b2a752895ca68f75f8b}
+TRAY=${TRAY:-14b7797ac230ac4edeec9b82563a7a73a16572da}
+
+DEPS=$PKG/$DIRNAME/third-party
+
+set -e
+
+rm -rf $PKG
+mkdir -p $TMP $PKG $OUTPUT
+cd $PKG
+rm -rf $DIRNAME
+tar xvf $CWD/$DIRNAME.tar.gz
+
+tar xvf $CWD/moonlight-common-c-$MOONLIGHT.tar.gz -C \
+ $DEPS/moonlight-common-c/ --strip-components 1
+tar xvf $CWD/enet-$ENET.tar.gz -C \
+ $DEPS/moonlight-common-c/enet/ --strip-components 1
+tar xvf $CWD/Simple-Web-Server-$SIMWEBSRV.tar.gz -C \
+ $DEPS/Simple-Web-Server/ --strip-components 1
+tar xvf $CWD/ViGEmClient-$VIGEMCLIENT.tar.gz -C \
+ $DEPS/ViGEmClient/ --strip-components 1
+tar xvf $CWD/miniupnp-$MINIUPNP.tar.gz -C \
+ $DEPS/miniupnp/ --strip-components 1
+tar xvf $CWD/nv-codec-headers-$NVCODECHDRS.tar.gz -C \
+ $DEPS/nv-codec-headers/ --strip-components 1
+tar xvf $CWD/TPCircularBuffer-$TPCIRCBUF.tar.gz -C \
+ $DEPS/TPCircularBuffer/ --strip-components 1
+tar xvf $CWD/build-deps-$FFMPEG.tar.gz -C \
+ $DEPS/ffmpeg-linux-x86_64/ --strip-components 1
+tar xvf $CWD/nanors-$NANORS.tar.gz -C \
+ $DEPS/nanors/ --strip-components 1
+tar xvf $CWD/tray-$TRAY.tar.gz -C \
+ $DEPS/tray/ --strip-components 1
+
+chown -R root:root .
+chmod -R u+w,go+r-w,a-s .
+
+# Make sure top-level perms are correct:
+chmod 0755 .
+
+cd $DIRNAME
+mkdir build
+cd build
+
+npm install
+
+BRANCH=master BUILD_VERSION=$VERSION COMMIT=release \
+ cmake -D CMAKE_INSTALL_PREFIX=/usr -D SUNSHINE_ASSETS_DIR="share/assets/sunshine" ..
+make
+
+cd $PKG
+
+mkdir -p $PKG/usr/share/assets/sunshine
+cp -a $DIRNAME/src_assets/common/assets/* $PKG/usr/share/assets/sunshine/
+cp -a $DIRNAME/src_assets/linux/assets/* $PKG/usr/share/assets/sunshine/
+cp -a $DIRNAME/node_modules $PKG/usr/share/assets/sunshine/web/
+mkdir -p $PKG/usr/lib/udev/rules.d
+cp -a $DIRNAME/src_assets/linux/misc/85-sunshine.rules $PKG/usr/lib/udev/rules.d/
+mkdir -p $PKG/usr/share/icons
+cp -a $DIRNAME/sunshine.svg $PKG/usr/share/icons/
+mkdir -p $PKG/usr/bin
+cp -a $DIRNAME/build/sunshine-$VERSION $PKG/usr/bin/sunshine-$VERSION
+cp -a $DIRNAME/build/sunshine $PKG/usr/bin/sunshine
+
+mkdir -p $PKG/usr/doc/$PRGNAM-$VERSION
+cp -a \
+ $PKG/$DIRNAME/README.rst \
+ $PKG/usr/doc/$PRGNAM-$VERSION
+cat $CWD/$PRGNAM.SlackBuild >$PKG/usr/doc/$PRGNAM-$VERSION/$PRGNAM.SlackBuild
+
+mkdir -p $PKG/install
+cat $CWD/slack-desc >$PKG/install/slack-desc
+cat $CWD/doinst.sh >$PKG/install/doinst.sh
+
+rm -rf $DIRNAME
+
+find $PKG -print0 | xargs -0 file | grep -e "executable" -e "shared object" | grep ELF |
+ cut -f 1 -d : | xargs strip --strip-unneeded 2>/dev/null || true
+
+cd $PKG
+/sbin/makepkg -l y -c n $OUTPUT/$PRGNAM-$VERSION-$ARCH-$BUILD$TAG.$PKGTYPE
diff --git a/games/sunshine/sunshine.info b/games/sunshine/sunshine.info
new file mode 100644
index 0000000000..537a236e5f
--- /dev/null
+++ b/games/sunshine/sunshine.info
@@ -0,0 +1,30 @@
+PRGNAM="sunshine"
+VERSION="0.20.0"
+HOMEPAGE="https://github.com/LizardByte/Sunshine"
+DOWNLOAD="UNSUPPORTED"
+MD5SUM=""
+DOWNLOAD_x86_64="https://github.com/LizardByte/Sunshine/archive/v0.20.0/Sunshine-0.20.0.tar.gz \
+ https://github.com/moonlight-stream/moonlight-common-c/archive/2bb026c763fc18807d7e4a93f918054c488f84e1/moonlight-common-c-2bb026c763fc18807d7e4a93f918054c488f84e1.tar.gz \
+ https://github.com/cgutman/enet/archive/880e41f3ab572ad6d8f064c6cc77e04f46d00956/enet-880e41f3ab572ad6d8f064c6cc77e04f46d00956.tar.gz \
+ https://gitlab.com/eidheim/Simple-Web-Server/-/archive/v3.1.1/Simple-Web-Server-v3.1.1.tar.gz \
+ https://github.com/ViGEm/ViGEmClient/archive/dc2f3da093938c3dcc8b7697707b7017e4a917fa/ViGEmClient-dc2f3da093938c3dcc8b7697707b7017e4a917fa.tar.gz \
+ https://github.com/miniupnp/miniupnp/archive/fb5c328a5e8fd57a3ec0f5d33915377a5d3581f3/miniupnp-fb5c328a5e8fd57a3ec0f5d33915377a5d3581f3.tar.gz \
+ https://github.com/FFmpeg/nv-codec-headers/archive/dc3e4484dc83485734e503991fe5ed3bdf256fba/nv-codec-headers-dc3e4484dc83485734e503991fe5ed3bdf256fba.tar.gz \
+ https://github.com/michaeltyson/TPCircularBuffer/archive/8833b3a73fab6530cc51e2063a85cced01714cfb/TPCircularBuffer-8833b3a73fab6530cc51e2063a85cced01714cfb.tar.gz \
+ https://github.com/LizardByte/build-deps/archive/6deb7d7366fc6e09afb3cb235cab6780bfa550b9/build-deps-6deb7d7366fc6e09afb3cb235cab6780bfa550b9.tar.gz \
+ https://github.com/sleepybishop/nanors/archive/e9e242e98e27037830490b2a752895ca68f75f8b/nanors-e9e242e98e27037830490b2a752895ca68f75f8b.tar.gz \
+ https://github.com/dmikushin/tray/archive/14b7797ac230ac4edeec9b82563a7a73a16572da/tray-14b7797ac230ac4edeec9b82563a7a73a16572da.tar.gz"
+MD5SUM_x86_64="8d286f7a2344fdc1353a43a3199ee2c9 \
+ e3581235a993f0b693f601e36d58c90f \
+ 9c31fb0b0a448371b436545b4631514d \
+ 5d9e37cb150a8a8f77b32395ee873e87 \
+ d4123883019c46577077aafb40969500 \
+ 62093450c0528e16cbde7fe7bff37007 \
+ b349540a2ae155f1c7e01a1081077d8b \
+ c72ddf506eb5c33732bc54dccd797bb2 \
+ 7ef64c679b313a9510f855a8f79941f1 \
+ aacaa95b7d4c59c69bdac1f1b190a010 \
+ 17fdbb1aafcba64798048ce2cd21daff"
+REQUIRES="nodejs npm numactl intel-media-sdk cudatoolkit"
+MAINTAINER="Jake Day"
+EMAIL="jake@ninebysix.com"
diff --git a/games/supermariowar/README b/games/supermariowar/README
index 93229cbe1f..b984878a2a 100644
--- a/games/supermariowar/README
+++ b/games/supermariowar/README
@@ -1,14 +1,13 @@
supermariowar (Super Mario multiplayer game)
Super Mario War is a fan-made multiplayer Super Mario Bros. style
-deathmatch game in which players try to beat one another in a variety of
-gameplay modes. You can play on teams, design your own levels, design your
-own worlds, and much more! The goal is to stomp as many other Marios as
-possible to win the game. It's a tribute to Nintendo and the game Mario
-War by Samuele Poletto.
+deathmatch game in which players try to beat one another in a variety
+of gameplay modes. You can play on teams, design your own levels,
+design your own worlds, and much more! The goal is to stomp as many
+other Marios as possible to win the game. It's a tribute to Nintendo
+and the game Mario War by Samuele Poletto.
Notes:
- The game executable is called "smw".
- Single player games against bots are supported.
-- Only 640x480 windowed and fullscreen video modes are supported.
diff --git a/games/supermariowar/doinst.sh b/games/supermariowar/doinst.sh
index 5fb28930db..3e5691a052 100644
--- a/games/supermariowar/doinst.sh
+++ b/games/supermariowar/doinst.sh
@@ -1,3 +1,9 @@
if [ -x /usr/bin/update-desktop-database ]; then
/usr/bin/update-desktop-database -q usr/share/applications >/dev/null 2>&1
fi
+
+if [ -e usr/share/icons/hicolor/icon-theme.cache ]; then
+ if [ -x /usr/bin/gtk-update-icon-cache ]; then
+ /usr/bin/gtk-update-icon-cache usr/share/icons/hicolor >/dev/null 2>&1
+ fi
+fi
diff --git a/games/supermariowar/supermariowar-2.0_beta1-yaml-cpp-config.cmake b/games/supermariowar/supermariowar-2.0_beta1-yaml-cpp-config.cmake
deleted file mode 100644
index 03fb190aad..0000000000
--- a/games/supermariowar/supermariowar-2.0_beta1-yaml-cpp-config.cmake
+++ /dev/null
@@ -1,21 +0,0 @@
-find_package(PkgConfig REQUIRED)
-pkg_check_modules(YAML-CPP REQUIRED yaml-cpp)
-find_path(YAML-CPP_INCLUDE_DIRECTORY
- NAMES yaml.h
- PATHS ${YAML-CPP_INCLUDE_DIRS} /usr/include/yaml-cpp
-)
-find_library(YAML-CPP_LIBRARY
- NAMES yaml-cpp
- PATHS ${YAML-CPP_LIBRARY_DIRS})
-
-include(FindPackageHandleStandardArgs)
-find_package_handle_standard_args(yaml-cpp
- FOUND_VAR yaml-cpp_FOUND
- REQUIRED_VARS YAML-CPP_LIBRARY YAML-CPP_INCLUDE_DIRECTORY
-)
-
-if (yaml-cpp_FOUND)
- set(yaml-cpp_INCLUDE_DIRS ${YAML-CPP_INCLUDE_DIRECTORY})
- set(yaml-cpp_LIBRARIES ${YAML-CPP_LIBRARY})
-endif ()
-mark_as_advanced(YAML-CPP_INCLUDE_DIRECTORY YAML-CPP_LIBRARY)
diff --git a/games/supermariowar/supermariowar.SlackBuild b/games/supermariowar/supermariowar.SlackBuild
index ddfae766ed..d73b533763 100644
--- a/games/supermariowar/supermariowar.SlackBuild
+++ b/games/supermariowar/supermariowar.SlackBuild
@@ -1,17 +1,22 @@
-#!/bin/sh
+#!/bin/bash
# Slackware build script for supermariowar
-# Written by B. Watson (yalhcru@gmail.com)
+# Written by B. Watson (urchlay@slackware.uk)
# Licensed under the WTFPL. See http://www.wtfpl.net/txt/copying/ for details.
+# 20211209 bkw: updated for v2020_04_25 (latest beta). Note that the game
+# uses SDL2 by default now.
# 20170302 bkw: use long-format github URL
+cd $(dirname $0) ; CWD=$(pwd)
+
PRGNAM=supermariowar
-VERSION=${VERSION:-2.0beta1.1}
+VERSION=${VERSION:-2020_04_25}
BUILD=${BUILD:-1}
TAG=${TAG:-_SBo}
+PKGTYPE=${PKGTYPE:-tgz}
if [ -z "$ARCH" ]; then
case "$( uname -m )" in
@@ -21,12 +26,16 @@ if [ -z "$ARCH" ]; then
esac
fi
-CWD=$(pwd)
+if [ ! -z "${PRINT_PACKAGE_NAME}" ]; then
+ echo "$PRGNAM-$VERSION-$ARCH-$BUILD$TAG.$PKGTYPE"
+ exit 0
+fi
+
TMP=${TMP:-/tmp/SBo}
PKG=$TMP/package-$PRGNAM
OUTPUT=${OUTPUT:-/tmp}
-TARVER="$( echo "$VERSION" | sed 's,beta,-beta.,' )"
+TARVER="$( echo "$VERSION" | sed 's,_,-,g' )"
if [ "$ARCH" = "i586" ]; then
SLKCFLAGS="-O2 -march=i586 -mtune=i686"
@@ -50,14 +59,9 @@ cd $TMP
rm -rf $PRGNAM-$TARVER
tar xvf $CWD/$PRGNAM-$TARVER.tar.gz
cd $PRGNAM-$TARVER
-# thanks to the gentoo maintainers
-cp $CWD/$PRGNAM-2.0_beta1-yaml-cpp-config.cmake cmake/Findyaml-cpp.cmake
chown -R root:root .
-find -L . \
- \( -perm 777 -o -perm 775 -o -perm 750 -o -perm 711 -o -perm 555 \
- -o -perm 511 \) -exec chmod 755 {} \; -o \
- \( -perm 666 -o -perm 664 -o -perm 640 -o -perm 600 -o -perm 444 \
- -o -perm 440 -o -perm 400 \) -exec chmod 644 {} \;
+find -L . -perm /111 -a \! -perm 755 -a -exec chmod 755 {} \+ -o \
+ \! -perm /111 -a \! -perm 644 -a -exec chmod 644 {} \+
# upstream ships these as zip files, but 'make install' expects them
# to be unzipped.
@@ -73,8 +77,6 @@ sed -i \
# implemented in 2.0beta1... screenshots still work, they're saved as
# .bmp instead.
-# -DUSE_SDL2_LIBS=ON will be supported in the future.
-
mkdir -p build
cd build
cmake \
@@ -93,6 +95,11 @@ cd ..
# the executable bits set...
chmod 0755 $PKG/usr/games/*
+# new-style icons. tiny ones, since that's all they gave us.
+# leave the .xpm icons in pixmaps.
+mkdir -p $PKG/usr/share/icons/hicolor/32x32/apps
+mv $PKG/usr/share/pixmaps/*.png $PKG/usr/share/icons/hicolor/32x32/apps
+
mkdir -p $PKG/usr/doc/$PRGNAM-$VERSION
# get rid of the CRLFs in the docs
for i in CHANGELOG CREDITS README.md docs/*.html docs/*.txt; do
@@ -105,4 +112,4 @@ cat $CWD/slack-desc > $PKG/install/slack-desc
cat $CWD/doinst.sh > $PKG/install/doinst.sh
cd $PKG
-/sbin/makepkg -l y -c n $OUTPUT/$PRGNAM-$VERSION-$ARCH-$BUILD$TAG.${PKGTYPE:-tgz}
+/sbin/makepkg -l y -c n $OUTPUT/$PRGNAM-$VERSION-$ARCH-$BUILD$TAG.$PKGTYPE
diff --git a/games/supermariowar/supermariowar.info b/games/supermariowar/supermariowar.info
index ed031dd0d8..2af8cfa97f 100644
--- a/games/supermariowar/supermariowar.info
+++ b/games/supermariowar/supermariowar.info
@@ -1,10 +1,10 @@
PRGNAM="supermariowar"
-VERSION="2.0beta1.1"
+VERSION="2020_04_25"
HOMEPAGE="https://github.com/mmatyas/supermariowar"
-DOWNLOAD="https://github.com/mmatyas/supermariowar/archive/v2.0-beta.1.1/supermariowar-2.0-beta.1.1.tar.gz"
-MD5SUM="695209dfc4a549dfd6dea0d5aa421137"
+DOWNLOAD="https://github.com/mmatyas/supermariowar/archive/2020-04-25/supermariowar-2020-04-25.tar.gz"
+MD5SUM="ac6e6756bc9ef017aef2a900762b6775"
DOWNLOAD_x86_64=""
MD5SUM_x86_64=""
REQUIRES="enet yaml-cpp"
MAINTAINER="B. Watson"
-EMAIL="yalhcru@gmail.com"
+EMAIL="urchlay@slackware.uk"
diff --git a/games/supertux/README b/games/supertux/README
index 1728396033..67363b4950 100644
--- a/games/supertux/README
+++ b/games/supertux/README
@@ -1,5 +1,5 @@
-SuperTux is a open-source classic 2D jump'n run sidescroller game in a
-style similar to the original Super Mario games.
+SuperTux is an open-source classic 2D jump-and-run sidescroller game,
+in a style similar to the original Super Mario games.
If you get slow performance, disable the use of OpenGL in the
"Options" menu after SuperTux is started.
diff --git a/games/supertux/doinst.sh b/games/supertux/doinst.sh
index 65fd352418..62aabdc4ae 100644
--- a/games/supertux/doinst.sh
+++ b/games/supertux/doinst.sh
@@ -2,3 +2,9 @@ if [ -x /usr/bin/update-desktop-database ]; then
/usr/bin/update-desktop-database usr/share/applications >/dev/null 2>&1
fi
+# If other icon themes are installed, then add to or modify this as needed
+if [ -e usr/share/icons/hicolor/icon-theme.cache ]; then
+ if [ -x /usr/bin/gtk-update-icon-cache ]; then
+ /usr/bin/gtk-update-icon-cache -f usr/share/icons/hicolor >/dev/null 2>&1
+ fi
+fi
diff --git a/games/supertux/slack-desc b/games/supertux/slack-desc
index 8459fc15a3..4fd87e7f6d 100644
--- a/games/supertux/slack-desc
+++ b/games/supertux/slack-desc
@@ -6,10 +6,10 @@
# customary to leave one space after the ':' except on otherwise blank lines.
|-----handy-ruler------------------------------------------------------|
-supertux: supertux (classic 2D jump'n run sidescroller game)
+supertux: supertux (classic 2D jump-and-run sidescroller game)
supertux:
-supertux: SuperTux is a open-source classic 2D jump'n run sidescroller game in a
-supertux: style similar to the original Super Mario games.
+supertux: SuperTux is an open-source classic 2D jump-and-run sidescroller game,
+supertux: in a style similar to the original Super Mario games.
supertux:
supertux: Homepage: https://www.supertux.org
supertux:
diff --git a/games/supertux/supertux.SlackBuild b/games/supertux/supertux.SlackBuild
index 122b06e07b..a492e216aa 100644
--- a/games/supertux/supertux.SlackBuild
+++ b/games/supertux/supertux.SlackBuild
@@ -1,4 +1,4 @@
-#!/bin/sh
+#!/bin/bash
# Slackware build script for supertux
@@ -6,6 +6,8 @@
# All rights reserved.
# Copyright 2019 Pedro R.M. Júnior, Campinas, SP, Brazil
# All rights reserved.
+# Copyright 2022 Bloyburt
+# All rights reserved.
#
# Redistribution and use of this script, with or without modification, is
# permitted provided that the following conditions are met:
@@ -24,26 +26,37 @@
# OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF THIS SOFTWARE, EVEN IF
# ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
+cd $(dirname $0) ; CWD=$(pwd)
+
PRGNAM=supertux
-VERSION=${VERSION:-0.6.1}
-BUILD=${BUILD:-1}
+VERSION=${VERSION:-0.6.3}
+SRCVERSION=$(echo $VERSION | tr _ - )
+BUILD=${BUILD:-2}
TAG=${TAG:-_SBo}
+PKGTYPE=${PKGTYPE:-tgz}
if [ -z "$ARCH" ]; then
case "$( uname -m )" in
- i?86) ARCH=i486 ;;
+ i?86) ARCH=i586 ;;
arm*) ARCH=arm ;;
*) ARCH=$( uname -m ) ;;
esac
fi
-CWD=$(pwd)
+# If the variable PRINT_PACKAGE_NAME is set, then this script will report what
+# the name of the created package would be, and then exit. This information
+# could be useful to other scripts.
+if [ ! -z "${PRINT_PACKAGE_NAME}" ]; then
+ echo "$PRGNAM-$VERSION-$ARCH-$BUILD$TAG.$PKGTYPE"
+ exit 0
+fi
+
TMP=${TMP:-/tmp/SBo}
PKG=$TMP/package-$PRGNAM
OUTPUT=${OUTPUT:-/tmp}
-if [ "$ARCH" = "i486" ]; then
- SLKCFLAGS="-O2 -march=i486 -mtune=i686"
+if [ "$ARCH" = "i586" ]; then
+ SLKCFLAGS="-O2 -march=i586 -mtune=i686"
LIBDIRSUFFIX=""
elif [ "$ARCH" = "i686" ]; then
SLKCFLAGS="-O2 -march=i686 -mtune=i686"
@@ -61,9 +74,9 @@ set -e
rm -rf $PKG
mkdir -p $TMP $PKG $OUTPUT
cd $TMP
-rm -rf $PRGNAM-$VERSION
-tar xvf $CWD/SuperTux-v$VERSION-Source.tar.gz
-cd SuperTux-v$VERSION-Source
+rm -rf $PRGNAM-$SRCVERSION
+tar xvf $CWD/SuperTux-v$SRCVERSION-Source.tar.gz
+cd SuperTux-v$SRCVERSION-Source
chown -R root:root .
find -L . \
\( -perm 777 -o -perm 775 -o -perm 750 -o -perm 711 -o -perm 555 \
@@ -101,4 +114,4 @@ cat $CWD/slack-desc > $PKG/install/slack-desc
cat $CWD/doinst.sh > $PKG/install/doinst.sh
cd $PKG
-/sbin/makepkg -l y -c n $OUTPUT/$PRGNAM-$VERSION-$ARCH-$BUILD$TAG.${PKGTYPE:-tgz}
+/sbin/makepkg -l y -c n $OUTPUT/$PRGNAM-$VERSION-$ARCH-$BUILD$TAG.$PKGTYPE
diff --git a/games/supertux/supertux.info b/games/supertux/supertux.info
index 6107a41d6f..05ef0681d9 100644
--- a/games/supertux/supertux.info
+++ b/games/supertux/supertux.info
@@ -1,10 +1,10 @@
PRGNAM="supertux"
-VERSION="0.6.1"
+VERSION="0.6.3"
HOMEPAGE="https://github.com/SuperTux/supertux"
-DOWNLOAD="https://github.com/SuperTux/supertux/releases/download/v0.6.1/SuperTux-v0.6.1-Source.tar.gz"
-MD5SUM="d7c9d70ef8501b4786908353202066e4"
+DOWNLOAD="https://github.com/SuperTux/supertux/releases/download/v0.6.3/SuperTux-v0.6.3-Source.tar.gz"
+MD5SUM="798d5518d3f4672ee0bac92693063c2f"
DOWNLOAD_x86_64=""
MD5SUM_x86_64=""
-REQUIRES="SDL2_image OpenAL physfs"
-MAINTAINER="Pedro R.M. Júnior"
-EMAIL="pedrormjunior@gmail.com"
+REQUIRES="physfs glm"
+MAINTAINER="Bloyburt"
+EMAIL="alexpen@startmail.com"
diff --git a/games/supertuxkart/gcc13-1.patch b/games/supertuxkart/gcc13-1.patch
new file mode 100644
index 0000000000..21fad1ae65
--- /dev/null
+++ b/games/supertuxkart/gcc13-1.patch
@@ -0,0 +1,155 @@
+From 0163e3fa88b72634c3ddff5304c9086b649f53b1 Mon Sep 17 00:00:00 2001
+From: Heiko Becker <heirecka@exherbo.org>
+Date: Thu, 26 Jan 2023 16:35:54 +0100
+Subject: [PATCH] Add missing includes to fix the build with gcc 13
+
+Like other versions before, gcc 13 moved some includes around and as a
+result <stdexcept> and <cstdio> are no longer transitively included.
+Explicitly include them for std::runtime_error and snprintf.
+---
+ lib/graphics_engine/include/vk_mem_alloc.h | 1 +
+ lib/graphics_engine/src/ge_spm_buffer.cpp | 1 +
+ lib/graphics_engine/src/ge_vulkan_array_texture.cpp | 1 +
+ lib/graphics_engine/src/ge_vulkan_command_loader.cpp | 1 +
+ lib/graphics_engine/src/ge_vulkan_depth_texture.cpp | 2 ++
+ lib/graphics_engine/src/ge_vulkan_draw_call.cpp | 1 +
+ lib/graphics_engine/src/ge_vulkan_fbo_texture.cpp | 1 +
+ lib/graphics_engine/src/ge_vulkan_mesh_cache.cpp | 1 +
+ lib/graphics_engine/src/ge_vulkan_skybox_renderer.cpp | 1 +
+ lib/graphics_engine/src/ge_vulkan_texture.cpp | 1 +
+ lib/graphics_engine/src/ge_vulkan_texture_descriptor.cpp | 1 +
+ 11 files changed, 12 insertions(+)
+
+diff --git a/lib/graphics_engine/include/vk_mem_alloc.h b/lib/graphics_engine/include/vk_mem_alloc.h
+index bdb4ff57610..d4b683a7551 100644
+--- a/lib/graphics_engine/include/vk_mem_alloc.h
++++ b/lib/graphics_engine/include/vk_mem_alloc.h
+@@ -2563,6 +2563,7 @@ VMA_CALL_PRE void VMA_CALL_POST vmaFreeStatsString(
+ #undef VMA_IMPLEMENTATION
+
+ #include <cstdint>
++#include <cstdio>
+ #include <cstdlib>
+ #include <cstring>
+ #include <utility>
+diff --git a/lib/graphics_engine/src/ge_spm_buffer.cpp b/lib/graphics_engine/src/ge_spm_buffer.cpp
+index fe4f4758adf..1179a732566 100644
+--- a/lib/graphics_engine/src/ge_spm_buffer.cpp
++++ b/lib/graphics_engine/src/ge_spm_buffer.cpp
+@@ -5,6 +5,7 @@
+ #include "ge_vulkan_features.hpp"
+
+ #include <algorithm>
++#include <stdexcept>
+
+ #include "mini_glm.hpp"
+
+diff --git a/lib/graphics_engine/src/ge_vulkan_array_texture.cpp b/lib/graphics_engine/src/ge_vulkan_array_texture.cpp
+index f3361478c3b..0f817dc40fd 100644
+--- a/lib/graphics_engine/src/ge_vulkan_array_texture.cpp
++++ b/lib/graphics_engine/src/ge_vulkan_array_texture.cpp
+@@ -12,6 +12,7 @@
+
+ #include <IImageLoader.h>
+ #include <cassert>
++#include <stdexcept>
+
+ namespace GE
+ {
+diff --git a/lib/graphics_engine/src/ge_vulkan_command_loader.cpp b/lib/graphics_engine/src/ge_vulkan_command_loader.cpp
+index 358cf9ab6ec..a1e5b3a71b8 100644
+--- a/lib/graphics_engine/src/ge_vulkan_command_loader.cpp
++++ b/lib/graphics_engine/src/ge_vulkan_command_loader.cpp
+@@ -8,6 +8,7 @@
+ #include <deque>
+ #include <memory>
+ #include <mutex>
++#include <stdexcept>
+ #include <thread>
+
+ #include "../source/Irrlicht/os.h"
+diff --git a/lib/graphics_engine/src/ge_vulkan_depth_texture.cpp b/lib/graphics_engine/src/ge_vulkan_depth_texture.cpp
+index 25cb2429638..4a5d3d391b1 100644
+--- a/lib/graphics_engine/src/ge_vulkan_depth_texture.cpp
++++ b/lib/graphics_engine/src/ge_vulkan_depth_texture.cpp
+@@ -3,6 +3,8 @@
+ #include "ge_main.hpp"
+ #include "ge_vulkan_driver.hpp"
+
++#include <stdexcept>
++
+ namespace GE
+ {
+ GEVulkanDepthTexture::GEVulkanDepthTexture(GEVulkanDriver* vk,
+diff --git a/lib/graphics_engine/src/ge_vulkan_draw_call.cpp b/lib/graphics_engine/src/ge_vulkan_draw_call.cpp
+index 2c2bc57513f..c8a1ddffb5e 100644
+--- a/lib/graphics_engine/src/ge_vulkan_draw_call.cpp
++++ b/lib/graphics_engine/src/ge_vulkan_draw_call.cpp
+@@ -25,6 +25,7 @@
+ #include <algorithm>
+ #include <cmath>
+ #include <limits>
++#include <stdexcept>
+
+ #include "../source/Irrlicht/os.h"
+ #include "quaternion.h"
+diff --git a/lib/graphics_engine/src/ge_vulkan_fbo_texture.cpp b/lib/graphics_engine/src/ge_vulkan_fbo_texture.cpp
+index 9413a04bb00..834a0b43b1e 100644
+--- a/lib/graphics_engine/src/ge_vulkan_fbo_texture.cpp
++++ b/lib/graphics_engine/src/ge_vulkan_fbo_texture.cpp
+@@ -6,6 +6,7 @@
+
+ #include <array>
+ #include <exception>
++#include <stdexcept>
+
+ namespace GE
+ {
+diff --git a/lib/graphics_engine/src/ge_vulkan_mesh_cache.cpp b/lib/graphics_engine/src/ge_vulkan_mesh_cache.cpp
+index 380f348dffb..f510f91813a 100644
+--- a/lib/graphics_engine/src/ge_vulkan_mesh_cache.cpp
++++ b/lib/graphics_engine/src/ge_vulkan_mesh_cache.cpp
+@@ -10,6 +10,7 @@
+
+ #include <algorithm>
+ #include <cassert>
++#include <stdexcept>
+ #include <vector>
+
+ namespace GE
+diff --git a/lib/graphics_engine/src/ge_vulkan_skybox_renderer.cpp b/lib/graphics_engine/src/ge_vulkan_skybox_renderer.cpp
+index 2543b16086f..fe7fcc45515 100644
+--- a/lib/graphics_engine/src/ge_vulkan_skybox_renderer.cpp
++++ b/lib/graphics_engine/src/ge_vulkan_skybox_renderer.cpp
+@@ -11,6 +11,7 @@
+
+ #include <array>
+ #include <cstdint>
++#include <stdexcept>
+ #include <unordered_map>
+
+ namespace GE
+diff --git a/lib/graphics_engine/src/ge_vulkan_texture.cpp b/lib/graphics_engine/src/ge_vulkan_texture.cpp
+index 500eb65fc62..611a24171d4 100644
+--- a/lib/graphics_engine/src/ge_vulkan_texture.cpp
++++ b/lib/graphics_engine/src/ge_vulkan_texture.cpp
+@@ -21,6 +21,7 @@ extern "C"
+ #include <IAttributes.h>
+ #include <IImageLoader.h>
+ #include <limits>
++#include <stdexcept>
+
+ namespace GE
+ {
+diff --git a/lib/graphics_engine/src/ge_vulkan_texture_descriptor.cpp b/lib/graphics_engine/src/ge_vulkan_texture_descriptor.cpp
+index 4fd8a2e8800..c64d1bdbaa1 100644
+--- a/lib/graphics_engine/src/ge_vulkan_texture_descriptor.cpp
++++ b/lib/graphics_engine/src/ge_vulkan_texture_descriptor.cpp
+@@ -6,6 +6,7 @@
+
+ #include <algorithm>
+ #include <exception>
++#include <stdexcept>
+
+ namespace GE
+ {
diff --git a/games/supertuxkart/gcc13-2.patch b/games/supertuxkart/gcc13-2.patch
new file mode 100644
index 0000000000..789934d3f6
--- /dev/null
+++ b/games/supertuxkart/gcc13-2.patch
@@ -0,0 +1,72 @@
+From 27eb0f3116921492e183ad3aa685ddb147ed7183 Mon Sep 17 00:00:00 2001
+From: Gwyn Ciesla <gwync@protonmail.com>
+Date: Thu, 23 Feb 2023 08:56:27 -0600
+Subject: [PATCH] gcc13 fixes
+
+---
+ lib/graphics_engine/include/vk_mem_alloc.h | 2 ++
+ lib/graphics_engine/src/ge_vulkan_command_loader.cpp | 1 +
+ lib/graphics_engine/src/ge_vulkan_depth_texture.cpp | 2 ++
+ lib/graphics_engine/src/ge_vulkan_mesh_cache.cpp | 1 +
+ lib/graphics_engine/src/ge_vulkan_skybox_renderer.cpp | 1 +
+ 5 files changed, 7 insertions(+)
+
+diff --git a/lib/graphics_engine/include/vk_mem_alloc.h b/lib/graphics_engine/include/vk_mem_alloc.h
+index d4b683a7551..ac82aedb15b 100644
+--- a/lib/graphics_engine/include/vk_mem_alloc.h
++++ b/lib/graphics_engine/include/vk_mem_alloc.h
+@@ -20,6 +20,8 @@
+ // THE SOFTWARE.
+ //
+
++#include <cstdio>
++
+ #ifndef AMD_VULKAN_MEMORY_ALLOCATOR_H
+ #define AMD_VULKAN_MEMORY_ALLOCATOR_H
+
+diff --git a/lib/graphics_engine/src/ge_vulkan_command_loader.cpp b/lib/graphics_engine/src/ge_vulkan_command_loader.cpp
+index a1e5b3a71b8..13cadd63daf 100644
+--- a/lib/graphics_engine/src/ge_vulkan_command_loader.cpp
++++ b/lib/graphics_engine/src/ge_vulkan_command_loader.cpp
+@@ -10,6 +10,7 @@
+ #include <mutex>
+ #include <stdexcept>
+ #include <thread>
++#include <stdexcept>
+
+ #include "../source/Irrlicht/os.h"
+
+diff --git a/lib/graphics_engine/src/ge_vulkan_depth_texture.cpp b/lib/graphics_engine/src/ge_vulkan_depth_texture.cpp
+index 4a5d3d391b1..0411c617df6 100644
+--- a/lib/graphics_engine/src/ge_vulkan_depth_texture.cpp
++++ b/lib/graphics_engine/src/ge_vulkan_depth_texture.cpp
+@@ -1,3 +1,5 @@
++#include <stdexcept>
++
+ #include "ge_vulkan_depth_texture.hpp"
+
+ #include "ge_main.hpp"
+diff --git a/lib/graphics_engine/src/ge_vulkan_mesh_cache.cpp b/lib/graphics_engine/src/ge_vulkan_mesh_cache.cpp
+index f510f91813a..a821ee4a962 100644
+--- a/lib/graphics_engine/src/ge_vulkan_mesh_cache.cpp
++++ b/lib/graphics_engine/src/ge_vulkan_mesh_cache.cpp
+@@ -12,6 +12,7 @@
+ #include <cassert>
+ #include <stdexcept>
+ #include <vector>
++#include <stdexcept>
+
+ namespace GE
+ {
+diff --git a/lib/graphics_engine/src/ge_vulkan_skybox_renderer.cpp b/lib/graphics_engine/src/ge_vulkan_skybox_renderer.cpp
+index fe7fcc45515..82977f00785 100644
+--- a/lib/graphics_engine/src/ge_vulkan_skybox_renderer.cpp
++++ b/lib/graphics_engine/src/ge_vulkan_skybox_renderer.cpp
+@@ -13,6 +13,7 @@
+ #include <cstdint>
+ #include <stdexcept>
+ #include <unordered_map>
++#include <stdexcept>
+
+ namespace GE
+ {
diff --git a/games/supertuxkart/supertuxkart.SlackBuild b/games/supertuxkart/supertuxkart.SlackBuild
index 47fd592558..dca8d9ebc8 100644
--- a/games/supertuxkart/supertuxkart.SlackBuild
+++ b/games/supertuxkart/supertuxkart.SlackBuild
@@ -1,11 +1,11 @@
-#!/bin/sh
+#!/bin/bash
# Slackware build script for supertuxkart
# Copyright 2009-2011 Larry Hajali <larryhaja[at]gmail[dot]com>
# Copyright 2011-2013 Niels Horn, Rio de Janeiro, RJ, Brazil
# Copyright 2014-2017 Ryan P.C. McQuen | Everett, WA | ryanpcmcquen@member.fsf.org
-# Copyright 2017-2020 Jeremy Hansen <jebrhansen+SBo -at- gmail.com>
+# Copyright 2017-2024 Jeremy Hansen <jebrhansen+SBo -at- gmail.com>
# All rights reserved.
#
# Redistribution and use of this script, with or without modification, is
@@ -25,11 +25,14 @@
# OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF THIS SOFTWARE, EVEN IF
# ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
+cd $(dirname $0) ; CWD=$(pwd)
+
PRGNAM=supertuxkart
SRCNAM=SuperTuxKart
-VERSION=${VERSION:-1.2}
-BUILD=${BUILD:-1}
+VERSION=${VERSION:-1.4}
+BUILD=${BUILD:-2}
TAG=${TAG:-_SBo}
+PKGTYPE=${PKGTYPE:-tgz}
if [ -z "$ARCH" ]; then
case "$( uname -m )" in
@@ -39,7 +42,11 @@ if [ -z "$ARCH" ]; then
esac
fi
-CWD=$(pwd)
+if [ ! -z "${PRINT_PACKAGE_NAME}" ]; then
+ echo "$PRGNAM-$VERSION-$ARCH-$BUILD$TAG.$PKGTYPE"
+ exit 0
+fi
+
TMP=${TMP:-/tmp/SBo}
PKG=$TMP/package-$PRGNAM
OUTPUT=${OUTPUT:-/tmp}
@@ -77,9 +84,14 @@ cd $SRCNAM-$VERSION-src
chown -R root:root .
find -L . \
\( -perm 777 -o -perm 775 -o -perm 750 -o -perm 711 -o -perm 555 \
- -o -perm 511 \) -exec chmod 755 {} \; -o \
+ -o -perm 511 \) -exec chmod 755 {} \+ -o \
\( -perm 666 -o -perm 664 -o -perm 640 -o -perm 600 -o -perm 444 \
- -o -perm 440 -o -perm 400 \) -exec chmod 644 {} \;
+ -o -perm 440 -o -perm 400 \) -exec chmod 644 {} \+
+
+# Patch for gcc 13 for those running -current
+# Thanks to Martín Rodríguez for the heads up
+patch -p1 < $CWD/gcc13-1.patch
+patch -p1 < $CWD/gcc13-2.patch
mkdir -p build
cd build
@@ -110,4 +122,4 @@ cat $CWD/slack-desc > $PKG/install/slack-desc
cat $CWD/doinst.sh > $PKG/install/doinst.sh
cd $PKG
-/sbin/makepkg -l y -c n $OUTPUT/$PRGNAM-$VERSION-$ARCH-$BUILD$TAG.${PKGTYPE:-tgz}
+/sbin/makepkg -l y -c n $OUTPUT/$PRGNAM-$VERSION-$ARCH-$BUILD$TAG.$PKGTYPE
diff --git a/games/supertuxkart/supertuxkart.info b/games/supertuxkart/supertuxkart.info
index 6424058cac..371cac655e 100644
--- a/games/supertuxkart/supertuxkart.info
+++ b/games/supertuxkart/supertuxkart.info
@@ -1,10 +1,10 @@
PRGNAM="supertuxkart"
-VERSION="1.2"
+VERSION="1.4"
HOMEPAGE="http://supertuxkart.sourceforge.net/"
-DOWNLOAD="http://sourceforge.net/projects/supertuxkart/files/SuperTuxKart/1.2/SuperTuxKart-1.2-src.tar.xz"
-MD5SUM="ca1b8f2f517f7234d088cae836f35ebe"
+DOWNLOAD="http://sourceforge.net/projects/supertuxkart/files/SuperTuxKart/1.4/SuperTuxKart-1.4-src.tar.xz"
+MD5SUM="c87a67ea6d5b52d464fe3d112db20263"
DOWNLOAD_x86_64=""
MD5SUM_x86_64=""
-REQUIRES="OpenAL"
+REQUIRES=""
MAINTAINER="Jeremy Hansen"
EMAIL="jebrhansen+SBo@gmail.com"
diff --git a/games/surgescript/README b/games/surgescript/README
new file mode 100644
index 0000000000..6f95799c47
--- /dev/null
+++ b/games/surgescript/README
@@ -0,0 +1,2 @@
+SurgeScript is a scripting language for games. Use it to unleash your
+creativity and build your own amazing interactive content!
diff --git a/games/surgescript/slack-desc b/games/surgescript/slack-desc
new file mode 100644
index 0000000000..be92a4e0b1
--- /dev/null
+++ b/games/surgescript/slack-desc
@@ -0,0 +1,19 @@
+# HOW TO EDIT THIS FILE:
+# The "handy ruler" below makes it easier to edit a package description.
+# Line up the first '|' above the ':' following the base package name, and
+# the '|' on the right side marks the last column you can put a character in.
+# You must make exactly 11 lines for the formatting to be correct. It's also
+# customary to leave one space after the ':' except on otherwise blank lines.
+
+ |-----handy-ruler------------------------------------------------------|
+surgescript: surgescript (scripting language for games)
+surgescript:
+surgescript: SurgeScript is a scripting language for games. Use it to unleash your
+surgescript: creativity and build your own amazing interactive content!
+surgescript:
+surgescript:
+surgescript: https://docs.opensurge2d.org/
+surgescript:
+surgescript:
+surgescript:
+surgescript:
diff --git a/games/surgescript/surgescript.SlackBuild b/games/surgescript/surgescript.SlackBuild
new file mode 100644
index 0000000000..56b6f672ea
--- /dev/null
+++ b/games/surgescript/surgescript.SlackBuild
@@ -0,0 +1,104 @@
+#!/bin/bash
+
+# Slackware build script for surgescript
+
+# Copyright 2022 Johannes Schoepfer, Germany
+# All rights reserved.
+#
+# Redistribution and use of this script, with or without modification, is
+# permitted provided that the following conditions are met:
+#
+# 1. Redistributions of this script must retain the above copyright
+# notice, this list of conditions and the following disclaimer.
+#
+# THIS SOFTWARE IS PROVIDED BY THE AUTHOR "AS IS" AND ANY EXPRESS OR IMPLIED
+# WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE IMPLIED WARRANTIES OF
+# MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE ARE DISCLAIMED. IN NO
+# EVENT SHALL THE AUTHOR BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL,
+# SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT LIMITED TO,
+# PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, DATA, OR PROFITS;
+# OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY,
+# WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR
+# OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF THIS SOFTWARE, EVEN IF
+# ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
+
+cd $(dirname $0) ; CWD=$(pwd)
+
+PRGNAM=surgescript
+VERSION=${VERSION:-0.5.6.1}
+BUILD=${BUILD:-1}
+TAG=${TAG:-_SBo}
+PKGTYPE=${PKGTYPE:-tgz}
+
+if [ -z "$ARCH" ]; then
+ case "$( uname -m )" in
+ i?86) ARCH=i586 ;;
+ arm*) ARCH=arm ;;
+ *) ARCH=$( uname -m ) ;;
+ esac
+fi
+
+if [ ! -z "${PRINT_PACKAGE_NAME}" ]; then
+ echo "$PRGNAM-$VERSION-$ARCH-$BUILD$TAG.$PKGTYPE"
+ exit 0
+fi
+
+TMP=${TMP:-/tmp/SBo}
+PKG=$TMP/package-$PRGNAM
+OUTPUT=${OUTPUT:-/tmp}
+
+if [ "$ARCH" = "i586" ]; then
+ SLKCFLAGS="-O2 -march=i586 -mtune=i686"
+ LIBDIRSUFFIX=""
+elif [ "$ARCH" = "i686" ]; then
+ SLKCFLAGS="-O2 -march=i686 -mtune=i686"
+ LIBDIRSUFFIX=""
+elif [ "$ARCH" = "x86_64" ]; then
+ SLKCFLAGS="-O2 -fPIC"
+ LIBDIRSUFFIX="64"
+else
+ SLKCFLAGS="-O2"
+ LIBDIRSUFFIX=""
+fi
+
+set -e
+
+rm -rf $PKG
+mkdir -p $TMP $PKG $OUTPUT
+cd $TMP
+rm -rf $PRGNAM-$VERSION
+tar xvf $CWD/$PRGNAM-$VERSION.tar.gz
+cd $PRGNAM-$VERSION
+chown -R root:root .
+find -L . \
+ \( -perm 777 -o -perm 775 -o -perm 750 -o -perm 711 -o -perm 555 \
+ -o -perm 511 \) -exec chmod 755 {} \; -o \
+ \( -perm 666 -o -perm 664 -o -perm 640 -o -perm 600 -o -perm 444 \
+ -o -perm 440 -o -perm 400 \) -exec chmod 644 {} \;
+
+mkdir -p build
+cd build
+ cmake \
+ -DCMAKE_C_FLAGS:STRING="$SLKCFLAGS" \
+ -DCMAKE_INSTALL_PREFIX=/usr \
+ -DLIB_SUFFIX=${LIBDIRSUFFIX} \
+ -DWANT_STATIC=OFF \
+ -DCMAKE_BUILD_TYPE=Release ..
+ make
+ make install/strip DESTDIR=$PKG
+cd ..
+
+find $PKG -print0 | xargs -0 file | grep -e "executable" -e "shared object" | grep ELF \
+ | cut -f 1 -d : | xargs strip --strip-unneeded 2> /dev/null || true
+
+mkdir -p $PKG/usr/doc/$PRGNAM-$VERSION
+cp -a \
+ LICENSE *.md examples \
+ $PKG/usr/doc/$PRGNAM-$VERSION
+cat $CWD/$PRGNAM.SlackBuild > $PKG/usr/doc/$PRGNAM-$VERSION/$PRGNAM.SlackBuild
+
+mkdir -p $PKG/install
+cat $CWD/slack-desc > $PKG/install/slack-desc
+
+cd $PKG
+/sbin/makepkg -l y -c n $OUTPUT/$PRGNAM-$VERSION-$ARCH-$BUILD$TAG.$PKGTYPE
diff --git a/games/surgescript/surgescript.info b/games/surgescript/surgescript.info
new file mode 100644
index 0000000000..5bec3b40eb
--- /dev/null
+++ b/games/surgescript/surgescript.info
@@ -0,0 +1,10 @@
+PRGNAM="surgescript"
+VERSION="0.5.6.1"
+HOMEPAGE="https://docs.opensurge2d.org/"
+DOWNLOAD="https://github.com/alemart/surgescript/archive/v0.5.6.1/surgescript-0.5.6.1.tar.gz"
+MD5SUM="37eecdc997c2c03e27efbf4563db72e1"
+DOWNLOAD_x86_64=""
+MD5SUM_x86_64=""
+REQUIRES=""
+MAINTAINER="Johannes Schoepfer"
+EMAIL="slackbuilds@schoepfer.info"
diff --git a/games/syobonaction/doinst.sh b/games/syobonaction/doinst.sh
index 5fb28930db..3e5691a052 100644
--- a/games/syobonaction/doinst.sh
+++ b/games/syobonaction/doinst.sh
@@ -1,3 +1,9 @@
if [ -x /usr/bin/update-desktop-database ]; then
/usr/bin/update-desktop-database -q usr/share/applications >/dev/null 2>&1
fi
+
+if [ -e usr/share/icons/hicolor/icon-theme.cache ]; then
+ if [ -x /usr/bin/gtk-update-icon-cache ]; then
+ /usr/bin/gtk-update-icon-cache usr/share/icons/hicolor >/dev/null 2>&1
+ fi
+fi
diff --git a/games/syobonaction/git2tarxz.sh b/games/syobonaction/git2tarxz.sh
new file mode 100644
index 0000000000..dfa2d695a5
--- /dev/null
+++ b/games/syobonaction/git2tarxz.sh
@@ -0,0 +1,75 @@
+#!/bin/sh
+
+# Create source tarball from git repo, with generated version number.
+
+# Takes one optional argument, which is the commit or tag to create a
+# tarball of. With no arg, HEAD is used.
+
+# Version number example: 0.0.1+20200227_ad7ec17
+
+# Notes:
+
+# Do not use this if you're packaging a release.
+
+# This script doesn't need to be run as root. It does need to be able
+# to write to the current directory it's run from.
+
+# Running this script twice for the same commit will NOT give identical
+# tarballs, even if the contents are identical. This is because tar
+# includes the current time in a newly-created tarball (plus there may
+# be other git-related reasons).
+
+# Once you've generated a tarball, you'll still need a place to host it.
+# Ask on the mailing list, if you don't have your own web server to
+# play with.
+
+## Config:
+
+# Name of SBo build:
+PRGNAM=syobonaction
+
+# Github project and user names:
+PROJECT=syobon
+GITUSER=CecilHarvey
+
+# For github projects, you can use this unmodified:
+CLONE_URL=https://github.com/$GITUSER/$PROJECT.git
+
+# For non-github projects, you might not need GITUSER, in which case
+# just omit it from the script.
+
+## End of config.
+
+set -e
+
+GITDIR=$( mktemp -dt $PRGNAM.git.XXXXXX )
+rm -rf $GITDIR
+git clone $CLONE_URL $GITDIR
+
+CWD="$( pwd )"
+cd $GITDIR
+
+if [ "$1" != "" ]; then
+ git reset --hard "$1" || exit 1
+fi
+
+GIT_SHA=$( git rev-parse --short HEAD )
+
+DATE=$( git log --date=format:%Y%m%d --format=%cd | head -1 )
+
+VERTAG=$( git tag -l | tail -1 )
+
+VERSION=${VERTAG}+${DATE}_${GIT_SHA}
+
+rm -rf .git
+find . -name .gitignore -print0 | xargs -0 rm -f
+
+cd "$CWD"
+rm -rf $PRGNAM-$VERSION $PRGNAM-$VERSION.tar.xz
+mv $GITDIR $PRGNAM-$VERSION
+tar cvfJ $PRGNAM-$VERSION.tar.xz $PRGNAM-$VERSION
+
+echo
+echo "Created tarball: $PRGNAM-$VERSION.tar.xz"
+echo "VERSION=\"$VERSION\""
+echo "MD5SUM=\"$( md5sum $PRGNAM-$VERSION.tar.xz | cut -d' ' -f1 )\""
diff --git a/games/syobonaction/icons/16.png b/games/syobonaction/icons/16.png
new file mode 100644
index 0000000000..7436458323
--- /dev/null
+++ b/games/syobonaction/icons/16.png
Binary files differ
diff --git a/games/syobonaction/icons/32.png b/games/syobonaction/icons/32.png
new file mode 100644
index 0000000000..2542d94a54
--- /dev/null
+++ b/games/syobonaction/icons/32.png
Binary files differ
diff --git a/games/syobonaction/syobonaction.png b/games/syobonaction/icons/48.png
index 1a261901a8..1a261901a8 100644
--- a/games/syobonaction/syobonaction.png
+++ b/games/syobonaction/icons/48.png
Binary files differ
diff --git a/games/syobonaction/syobonaction.6 b/games/syobonaction/syobonaction.6
index 2de3bcad04..7b8427fe24 100644
--- a/games/syobonaction/syobonaction.6
+++ b/games/syobonaction/syobonaction.6
@@ -1,181 +1,88 @@
-.\" Automatically generated by Pod::Man 2.27 (Pod::Simple 3.28)
-.\"
-.\" Standard preamble:
-.\" ========================================================================
-.de Sp \" Vertical space (when we can't use .PP)
-.if t .sp .5v
-.if n .sp
+.\" Man page generated from reStructuredText.
+.
+.
+.nr rst2man-indent-level 0
+.
+.de1 rstReportMargin
+\\$1 \\n[an-margin]
+level \\n[rst2man-indent-level]
+level margin: \\n[rst2man-indent\\n[rst2man-indent-level]]
+-
+\\n[rst2man-indent0]
+\\n[rst2man-indent1]
+\\n[rst2man-indent2]
..
-.de Vb \" Begin verbatim text
-.ft CW
-.nf
-.ne \\$1
+.de1 INDENT
+.\" .rstReportMargin pre:
+. RS \\$1
+. nr rst2man-indent\\n[rst2man-indent-level] \\n[an-margin]
+. nr rst2man-indent-level +1
+.\" .rstReportMargin post:
..
-.de Ve \" End verbatim text
-.ft R
-.fi
+.de UNINDENT
+. RE
+.\" indent \\n[an-margin]
+.\" old: \\n[rst2man-indent\\n[rst2man-indent-level]]
+.nr rst2man-indent-level -1
+.\" new: \\n[rst2man-indent\\n[rst2man-indent-level]]
+.in \\n[rst2man-indent\\n[rst2man-indent-level]]u
..
-.\" Set up some character translations and predefined strings. \*(-- will
-.\" give an unbreakable dash, \*(PI will give pi, \*(L" will give a left
-.\" double quote, and \*(R" will give a right double quote. \*(C+ will
-.\" give a nicer C++. Capital omega is used to do unbreakable dashes and
-.\" therefore won't be available. \*(C` and \*(C' expand to `' in nroff,
-.\" nothing in troff, for use with C<>.
-.tr \(*W-
-.ds C+ C\v'-.1v'\h'-1p'\s-2+\h'-1p'+\s0\v'.1v'\h'-1p'
-.ie n \{\
-. ds -- \(*W-
-. ds PI pi
-. if (\n(.H=4u)&(1m=24u) .ds -- \(*W\h'-12u'\(*W\h'-12u'-\" diablo 10 pitch
-. if (\n(.H=4u)&(1m=20u) .ds -- \(*W\h'-12u'\(*W\h'-8u'-\" diablo 12 pitch
-. ds L" ""
-. ds R" ""
-. ds C` ""
-. ds C' ""
-'br\}
-.el\{\
-. ds -- \|\(em\|
-. ds PI \(*p
-. ds L" ``
-. ds R" ''
-. ds C`
-. ds C'
-'br\}
-.\"
-.\" Escape single quotes in literal strings from groff's Unicode transform.
-.ie \n(.g .ds Aq \(aq
-.el .ds Aq '
-.\"
-.\" If the F register is turned on, we'll generate index entries on stderr for
-.\" titles (.TH), headers (.SH), subsections (.SS), items (.Ip), and index
-.\" entries marked with X<> in POD. Of course, you'll have to process the
-.\" output yourself in some meaningful fashion.
-.\"
-.\" Avoid warning from groff about undefined register 'F'.
-.de IX
-..
-.nr rF 0
-.if \n(.g .if rF .nr rF 1
-.if (\n(rF:(\n(.g==0)) \{
-. if \nF \{
-. de IX
-. tm Index:\\$1\t\\n%\t"\\$2"
-..
-. if !\nF==2 \{
-. nr % 0
-. nr F 2
-. \}
-. \}
-.\}
-.rr rF
-.\"
-.\" Accent mark definitions (@(#)ms.acc 1.5 88/02/08 SMI; from UCB 4.2).
-.\" Fear. Run. Save yourself. No user-serviceable parts.
-. \" fudge factors for nroff and troff
-.if n \{\
-. ds #H 0
-. ds #V .8m
-. ds #F .3m
-. ds #[ \f1
-. ds #] \fP
-.\}
-.if t \{\
-. ds #H ((1u-(\\\\n(.fu%2u))*.13m)
-. ds #V .6m
-. ds #F 0
-. ds #[ \&
-. ds #] \&
-.\}
-. \" simple accents for nroff and troff
-.if n \{\
-. ds ' \&
-. ds ` \&
-. ds ^ \&
-. ds , \&
-. ds ~ ~
-. ds /
-.\}
-.if t \{\
-. ds ' \\k:\h'-(\\n(.wu*8/10-\*(#H)'\'\h"|\\n:u"
-. ds ` \\k:\h'-(\\n(.wu*8/10-\*(#H)'\`\h'|\\n:u'
-. ds ^ \\k:\h'-(\\n(.wu*10/11-\*(#H)'^\h'|\\n:u'
-. ds , \\k:\h'-(\\n(.wu*8/10)',\h'|\\n:u'
-. ds ~ \\k:\h'-(\\n(.wu-\*(#H-.1m)'~\h'|\\n:u'
-. ds / \\k:\h'-(\\n(.wu*8/10-\*(#H)'\z\(sl\h'|\\n:u'
-.\}
-. \" troff and (daisy-wheel) nroff accents
-.ds : \\k:\h'-(\\n(.wu*8/10-\*(#H+.1m+\*(#F)'\v'-\*(#V'\z.\h'.2m+\*(#F'.\h'|\\n:u'\v'\*(#V'
-.ds 8 \h'\*(#H'\(*b\h'-\*(#H'
-.ds o \\k:\h'-(\\n(.wu+\w'\(de'u-\*(#H)/2u'\v'-.3n'\*(#[\z\(de\v'.3n'\h'|\\n:u'\*(#]
-.ds d- \h'\*(#H'\(pd\h'-\w'~'u'\v'-.25m'\f2\(hy\fP\v'.25m'\h'-\*(#H'
-.ds D- D\\k:\h'-\w'D'u'\v'-.11m'\z\(hy\v'.11m'\h'|\\n:u'
-.ds th \*(#[\v'.3m'\s+1I\s-1\v'-.3m'\h'-(\w'I'u*2/3)'\s-1o\s+1\*(#]
-.ds Th \*(#[\s+2I\s-2\h'-\w'I'u*3/5'\v'-.3m'o\v'.3m'\*(#]
-.ds ae a\h'-(\w'a'u*4/10)'e
-.ds Ae A\h'-(\w'A'u*4/10)'E
-. \" corrections for vroff
-.if v .ds ~ \\k:\h'-(\\n(.wu*9/10-\*(#H)'\s-2\u~\d\s+2\h'|\\n:u'
-.if v .ds ^ \\k:\h'-(\\n(.wu*10/11-\*(#H)'\v'-.4m'^\v'.4m'\h'|\\n:u'
-. \" for low resolution devices (crt and lpr)
-.if \n(.H>23 .if \n(.V>19 \
-\{\
-. ds : e
-. ds 8 ss
-. ds o a
-. ds d- d\h'-1'\(ga
-. ds D- D\h'-1'\(hy
-. ds th \o'bp'
-. ds Th \o'LP'
-. ds ae ae
-. ds Ae AE
-.\}
-.rm #[ #] #H #V #F C
-.\" ========================================================================
-.\"
-.IX Title "SYOBONACTION 6"
-.TH SYOBONACTION 6 "2014-03-27" "0.2" "SlackBuilds.org"
-.\" For nroff, turn off justification. Always turn off hyphenation; it makes
-.\" way too many mistakes in technical documents.
-.if n .ad l
-.nh
-.SH "NAME"
-syobonaction \- very difficult side\-scrolling platform game
-.SH "SYNOPSIS"
-.IX Header "SYNOPSIS"
-\&\fBsyobonaction\fR [\fI\-nosound\fR] [\fI\-fullscreen\fR]
-.SH "DESCRIPTION"
-.IX Header "DESCRIPTION"
-Syobon Action is a Japanese parody of Super Mario Brothers.
-.PP
-This man page documents OpenSyobon-M, the modified \s-1SDL\s0 port of OpenSyobon,
-which is itself an unofficial \s-1SDL\s0 port of the original game.
-.SH "OPTIONS"
-.IX Header "OPTIONS"
-.IP "\fB\-nosound\fR" 4
-.IX Item "-nosound"
-Disables sound
-.IP "\fB\-fullscreen\fR" 4
-.IX Item "-fullscreen"
-Enables full-screen mode
-.SH "CONTROLS"
-.IX Header "CONTROLS"
-.IP "\fBJump\fR" 4
-.IX Item "Jump"
-Up arrow, Z, semicolon, joystick button 1
-.IP "\fBMovement\fR" 4
-.IX Item "Movement"
-Left/right arrows, joystick left/right
-.IP "\fBEnter Warp Pipe\fR" 4
-.IX Item "Enter Warp Pipe"
-Down arrow, joystick down
-.PP
+.TH "SYOBONACTION" 6 "2021-10-28" "0.2" "SlackBuilds.org"
+.SH NAME
+syobonaction \- very difficult side-scrolling platform game
+.\" RST source for syobonaction(6) man page. Convert with:
+.
+.\" rst2man.py syobonaction.rst > syobonaction.6
+.
+.\" rst2man.py comes from the SBo development/docutils package.
+.
+.SH SYNOPSIS
+.sp
+syobonaction [\fI\-nosound\fP] [\fI\-\-fullscreen\fP]
+.SH DESCRIPTION
+.sp
+Syobon Action is a 2D Japanese freeware video game notoriously known on
+the Internet for its extremely difficult levels. It\(aqs a parody of
+Super Mario Brothers.
+.sp
+This man page documents OpenSyobon\-M, the modified SDL port of OpenSyobon,
+which is itself an unofficial SDL port of the original game.
+.SH OPTIONS
+.INDENT 0.0
+.TP
+.B \fB\-nosound\fP
+Disable sound in the game.
+.TP
+.B \fB\-fullscreen\fP
+Run the game fullscreen (by default, it\(aqs in a window).
+.UNINDENT
+.SH CONTROLS
+.INDENT 0.0
+.TP
+.B \fBJump\fP
+Up arrow, Z, semicolon, joystick button 1.
+.TP
+.B \fBMovement\fP
+Left/right arrows, joystick left/right.
+.TP
+.B \fBEnter Warp Pipe\fP
+Down arrow, joystick down.
+.UNINDENT
+.sp
On the main menu, 0 through 9 select the starting level.
-.SH "AUTHORS"
-.IX Header "AUTHORS"
-OpenSyobon-M was written by Wei Mingzhi <whistler_wmz at users.sf.net>.
-This version contains additional levels made by Kazuki Okawa.
-.PP
-OpenSyobon-M is based on Open Syobon Action \s-1RC 2\s0 by Mathew Velasquez, which
+.SH AUTHORS
+.sp
+OpenSyobon\-M was written by Wei Mingzhi <whistler_wmz at
+users.sf.net>. This version contains additional levels made by Kazuki
+Okawa.
+.sp
+OpenSyobon\-M is based on Open Syobon Action RC 2 by Mathew Velasquez, which
is based on the original Syobon Action by Chiku.
-.PP
-This man page was written by B. Watson for the SlackBuild.org project.
+.sp
+This man page written for the SlackBuilds.org project
+by B. Watson, and is licensed under the WTFPL.
+.SH SEE ALSO
+.sp
+The syobonaction readme: /usr/doc/syobonaction\-0.2/readme.txt
+.\" Generated by docutils manpage writer.
+.
diff --git a/games/syobonaction/syobonaction.SlackBuild b/games/syobonaction/syobonaction.SlackBuild
index a56d5832bd..ba799b9743 100644
--- a/games/syobonaction/syobonaction.SlackBuild
+++ b/games/syobonaction/syobonaction.SlackBuild
@@ -1,18 +1,24 @@
-#!/bin/sh
+#!/bin/bash
# Slackware build script for syobonaction
-# Written by B. Watson (yalhcru@gmail.com)
+# Written by B. Watson (urchlay@slackware.uk)
# Licensed under the WTFPL. See http://www.wtfpl.net/txt/copying/ for details.
-# The source is hosted on my server to avoid the JS-laden download page
-# on codeplex.
+# 20211028 bkw:
+# - update for 0.2+20210411_f2e8629 (latest git, which uses SDL2, yay!)
+# - new-style icons.
+# - convert man page to rst, expand it slightly.
+# - get rid of CRLFs in docs.
+
+cd $(dirname $0) ; CWD=$(pwd)
PRGNAM=syobonaction
-VERSION=${VERSION:-0.2}
+VERSION=${VERSION:-0.2+20210411_f2e8629}
BUILD=${BUILD:-1}
TAG=${TAG:-_SBo}
+PKGTYPE=${PKGTYPE:-tgz}
if [ -z "$ARCH" ]; then
case "$( uname -m )" in
@@ -22,7 +28,11 @@ if [ -z "$ARCH" ]; then
esac
fi
-CWD=$(pwd)
+if [ ! -z "${PRINT_PACKAGE_NAME}" ]; then
+ echo "$PRGNAM-$VERSION-$ARCH-$BUILD$TAG.$PKGTYPE"
+ exit 0
+fi
+
TMP=${TMP:-/tmp/SBo}
PKG=$TMP/package-$PRGNAM
OUTPUT=${OUTPUT:-/tmp}
@@ -47,14 +57,11 @@ rm -rf $PKG
mkdir -p $TMP $PKG $OUTPUT
cd $TMP
rm -rf $PRGNAM-$VERSION
-tar xvf $CWD/$PRGNAM-$VERSION.tar.gz
+tar xvf $CWD/$PRGNAM-$VERSION.tar.?z
cd $PRGNAM-$VERSION
chown -R root:root .
-find -L . \
- \( -perm 777 -o -perm 775 -o -perm 750 -o -perm 711 -o -perm 555 \
- -o -perm 511 \) -exec chmod 755 {} \; -o \
- \( -perm 666 -o -perm 664 -o -perm 640 -o -perm 600 -o -perm 444 \
- -o -perm 440 -o -perm 400 \) -exec chmod 644 {} \;
+find -L . -perm /111 -a \! -perm 755 -a -exec chmod 755 {} \+ -o \
+ \! -perm /111 -a \! -perm 644 -a -exec chmod 644 {} \+
DATADIR=/usr/share/games/$PRGNAM
BINDIR=/usr/games
@@ -70,15 +77,24 @@ cp -r data/*/ $PKG/$DATADIR
mkdir -p $PKG/usr/share/applications
cat $CWD/$PRGNAM.desktop > $PKG/usr/share/applications/$PRGNAM.desktop
-# icon extracted from macosx/SyobonAction.icns with icns2png
+# icons extracted from macosx/SyobonAction.icns with icns2png
+for i in $CWD/icons/*.png; do
+ px=$( basename $i | cut -d. -f1 )
+ size=${px}x${px}
+ dir=$PKG/usr/share/icons/hicolor/$size/apps
+ mkdir -p $dir
+ cat $i > $dir/$PRGNAM.png
+done
+
mkdir -p $PKG/usr/share/pixmaps
-cat $CWD/$PRGNAM.png > $PKG/usr/share/pixmaps/$PRGNAM.png
+ln -s ../icons/hicolor/48x48/apps/$PRGNAM.png $PKG/usr/share/pixmaps/$PRGNAM.png
# man page written for this build
mkdir -p $PKG/usr/man/man6
gzip -9c < $CWD/$PRGNAM.6 > $PKG/usr/man/man6/$PRGNAM.6.gz
mkdir -p $PKG/usr/doc/$PRGNAM-$VERSION
+sed -i 's,\r,,' data/*.txt
cp -a data/*.txt $PKG/usr/doc/$PRGNAM-$VERSION
cat $CWD/$PRGNAM.SlackBuild > $PKG/usr/doc/$PRGNAM-$VERSION/$PRGNAM.SlackBuild
@@ -87,4 +103,4 @@ cat $CWD/slack-desc > $PKG/install/slack-desc
cat $CWD/doinst.sh > $PKG/install/doinst.sh
cd $PKG
-/sbin/makepkg -l y -c n $OUTPUT/$PRGNAM-$VERSION-$ARCH-$BUILD$TAG.${PKGTYPE:-tgz}
+/sbin/makepkg -l y -c n $OUTPUT/$PRGNAM-$VERSION-$ARCH-$BUILD$TAG.$PKGTYPE
diff --git a/games/syobonaction/syobonaction.info b/games/syobonaction/syobonaction.info
index b541ebfc67..02941485d8 100644
--- a/games/syobonaction/syobonaction.info
+++ b/games/syobonaction/syobonaction.info
@@ -1,10 +1,10 @@
PRGNAM="syobonaction"
-VERSION="0.2"
+VERSION="0.2+20210411_f2e8629"
HOMEPAGE="https://github.com/CecilHarvey/syobon/"
-DOWNLOAD="https://slackware.uk/~urchlay/src/syobonaction-0.2.tar.gz"
-MD5SUM="5c85c936a0436e5b0b85a08abcd5b105"
+DOWNLOAD="https://slackware.uk/~urchlay/src/syobonaction-0.2+20210411_f2e8629.tar.xz"
+MD5SUM="2f764bfd7cb42ceea871e6ff6508115c"
DOWNLOAD_x86_64=""
MD5SUM_x86_64=""
REQUIRES=""
MAINTAINER="B. Watson"
-EMAIL="yalhcru@gmail.com"
+EMAIL="urchlay@slackware.uk"
diff --git a/games/syobonaction/syobonaction.pod b/games/syobonaction/syobonaction.pod
deleted file mode 100644
index 1d5dfae273..0000000000
--- a/games/syobonaction/syobonaction.pod
+++ /dev/null
@@ -1,63 +0,0 @@
-# pod source for syobonaction man page
-# pod2man -s6 -r0.2 --stderr -cSlackBuilds.org syobonaction.pod > syobonaction.6
-
-=pod
-
-=head1 NAME
-
-B<syobonaction> - I<very> difficult side-scrolling platform game
-
-=head1 SYNOPSIS
-
-B<syobonaction> [I<-nosound>] [I<-fullscreen>]
-
-=head1 DESCRIPTION
-
-Syobon Action is a Japanese parody of Super Mario Brothers.
-
-This man page documents OpenSyobon-M, the modified SDL port of OpenSyobon,
-which is itself an unofficial SDL port of the original game.
-
-=head1 OPTIONS
-
-=over
-
-=item B<-nosound>
-
-Disables sound
-
-=item B<-fullscreen>
-
-Enables full-screen mode
-
-=back
-
-=head1 CONTROLS
-
-=over
-
-=item B<Jump>
-
-Up arrow, Z, semicolon, joystick button 1
-
-=item B<Movement>
-
-Left/right arrows, joystick left/right
-
-=item B<Enter Warp Pipe>
-
-Down arrow, joystick down
-
-=back
-
-On the main menu, 0 through 9 select the starting level.
-
-=head1 AUTHORS
-
-OpenSyobon-M was written by Wei Mingzhi <whistler_wmz at users.sf.net>.
-This version contains additional levels made by Kazuki Okawa.
-
-OpenSyobon-M is based on Open Syobon Action RC 2 by Mathew Velasquez, which
-is based on the original Syobon Action by Chiku.
-
-This man page was written by B. Watson for the SlackBuild.org project.
diff --git a/games/syobonaction/syobonaction.rst b/games/syobonaction/syobonaction.rst
new file mode 100644
index 0000000000..a8da574289
--- /dev/null
+++ b/games/syobonaction/syobonaction.rst
@@ -0,0 +1,75 @@
+.. RST source for syobonaction(6) man page. Convert with:
+.. rst2man.py syobonaction.rst > syobonaction.6
+.. rst2man.py comes from the SBo development/docutils package.
+
+.. |version| replace:: 0.2
+.. |date| date::
+
+============
+syobonaction
+============
+
+-------------------------------------------
+very difficult side-scrolling platform game
+-------------------------------------------
+
+:Manual section: 6
+:Manual group: SlackBuilds.org
+:Date: |date|
+:Version: |version|
+
+SYNOPSIS
+========
+
+syobonaction [*-nosound*] [*--fullscreen*]
+
+DESCRIPTION
+===========
+
+Syobon Action is a 2D Japanese freeware video game notoriously known on
+the Internet for its extremely difficult levels. It's a parody of
+Super Mario Brothers.
+
+This man page documents OpenSyobon-M, the modified SDL port of OpenSyobon,
+which is itself an unofficial SDL port of the original game.
+
+OPTIONS
+=======
+
+**-nosound**
+ Disable sound in the game.
+
+**-fullscreen**
+ Run the game fullscreen (by default, it's in a window).
+
+CONTROLS
+========
+
+**Jump**
+ Up arrow, Z, semicolon, joystick button 1.
+
+**Movement**
+ Left/right arrows, joystick left/right.
+
+**Enter Warp Pipe**
+ Down arrow, joystick down.
+
+On the main menu, 0 through 9 select the starting level.
+
+AUTHORS
+=======
+
+OpenSyobon-M was written by Wei Mingzhi <whistler_wmz at
+users.sf.net>. This version contains additional levels made by Kazuki
+Okawa.
+
+OpenSyobon-M is based on Open Syobon Action RC 2 by Mathew Velasquez, which
+is based on the original Syobon Action by Chiku.
+
+This man page written for the SlackBuilds.org project
+by B. Watson, and is licensed under the WTFPL.
+
+SEE ALSO
+========
+
+The syobonaction readme: /usr/doc/syobonaction-|version|/readme.txt
diff --git a/games/taipan/taipan.SlackBuild b/games/taipan/taipan.SlackBuild
index 5246e632ae..0ad7166d01 100644
--- a/games/taipan/taipan.SlackBuild
+++ b/games/taipan/taipan.SlackBuild
@@ -1,15 +1,18 @@
-#!/bin/sh
+#!/bin/bash
# Slackware build script for taipan
-# Written by B. Watson (yalhcru@gmail.com)
+# Written by B. Watson (urchlay@slackware.uk)
# Licensed under the WTFPL. See http://www.wtfpl.net/txt/copying/ for details.
+cd $(dirname $0) ; CWD=$(pwd)
+
PRGNAM=taipan
VERSION=${VERSION:-0.9}
BUILD=${BUILD:-1}
TAG=${TAG:-_SBo}
+PKGTYPE=${PKGTYPE:-tgz}
if [ -z "$ARCH" ]; then
case "$( uname -m )" in
@@ -19,7 +22,11 @@ if [ -z "$ARCH" ]; then
esac
fi
-CWD=$(pwd)
+if [ ! -z "${PRINT_PACKAGE_NAME}" ]; then
+ echo "$PRGNAM-$VERSION-$ARCH-$BUILD$TAG.$PKGTYPE"
+ exit 0
+fi
+
TMP=${TMP:-/tmp/SBo}
PKG=$TMP/package-$PRGNAM
OUTPUT=${OUTPUT:-/tmp}
@@ -47,11 +54,8 @@ rm -rf $PRGNAM-$VERSION
tar xvf $CWD/$PRGNAM-$VERSION.tar.gz
cd $PRGNAM-$VERSION
chown -R root:root .
-find -L . \
- \( -perm 777 -o -perm 775 -o -perm 750 -o -perm 711 -o -perm 555 \
- -o -perm 511 \) -exec chmod 755 {} \; -o \
- \( -perm 666 -o -perm 664 -o -perm 640 -o -perm 600 -o -perm 444 \
- -o -perm 440 -o -perm 400 \) -exec chmod 644 {} \;
+find -L . -perm /111 -a \! -perm 755 -a -exec chmod 755 {} \+ -o \
+ \! -perm /111 -a \! -perm 644 -a -exec chmod 644 {} \+
# why does it want to be installed setuid root? holdover
# from the svgalib version? it doesn't seem to write a high
@@ -70,4 +74,4 @@ mkdir -p $PKG/install
cat $CWD/slack-desc > $PKG/install/slack-desc
cd $PKG
-/sbin/makepkg -l y -c n $OUTPUT/$PRGNAM-$VERSION-$ARCH-$BUILD$TAG.${PKGTYPE:-tgz}
+/sbin/makepkg -l y -c n $OUTPUT/$PRGNAM-$VERSION-$ARCH-$BUILD$TAG.$PKGTYPE
diff --git a/games/taipan/taipan.info b/games/taipan/taipan.info
index b2618a8c3a..84d688f36c 100644
--- a/games/taipan/taipan.info
+++ b/games/taipan/taipan.info
@@ -7,4 +7,4 @@ DOWNLOAD_x86_64=""
MD5SUM_x86_64=""
REQUIRES=""
MAINTAINER="B. Watson"
-EMAIL="yalhcru@gmail.com"
+EMAIL="urchlay@slackware.uk"
diff --git a/games/talkfilters/talkfilters.SlackBuild b/games/talkfilters/talkfilters.SlackBuild
index 6c602e7a89..fb646ab79f 100644
--- a/games/talkfilters/talkfilters.SlackBuild
+++ b/games/talkfilters/talkfilters.SlackBuild
@@ -1,11 +1,14 @@
-#!/bin/sh
+#!/bin/bash
# Slackware build script for talkfilters
# Written by Dan-Simon Myrland <dansimon@radiotube.org>
+cd $(dirname $0) ; CWD=$(pwd)
+
PRGNAM=talkfilters
VERSION=${VERSION:-2.3.8}
-BUILD=${BUILD:-1}
+BUILD=${BUILD:-2}
TAG=${TAG:-_SBo}
+PKGTYPE=${PKGTYPE:-tgz}
if [ -z "$ARCH" ]; then
case "$( uname -m )" in
@@ -15,7 +18,14 @@ if [ -z "$ARCH" ]; then
esac
fi
-CWD=$(pwd)
+# If the variable PRINT_PACKAGE_NAME is set, then this script will report what
+# the name of the created package would be, and then exit. This information
+# could be useful to other scripts.
+if [ ! -z "${PRINT_PACKAGE_NAME}" ]; then
+ echo "$PRGNAM-$VERSION-$ARCH-$BUILD$TAG.$PKGTYPE"
+ exit 0
+fi
+
TMP=${TMP:-/tmp/SBo}
PKG=$TMP/package-$PRGNAM
OUTPUT=${OUTPUT:-/tmp}
@@ -71,8 +81,10 @@ mkdir -p $PKG/usr/doc/$PRGNAM-$VERSION
cp -a AUTHORS COPYING ChangeLog INSTALL NEWS README $PKG/usr/doc/$PRGNAM-$VERSION
cat $CWD/$PRGNAM.SlackBuild > $PKG/usr/doc/$PRGNAM-$VERSION/$PRGNAM.SlackBuild
+rm -f $PKG/usr/lib*/*.la
+
mkdir -p $PKG/install
cat $CWD/slack-desc > $PKG/install/slack-desc
cd $PKG
-/sbin/makepkg -l y -c n $OUTPUT/$PRGNAM-$VERSION-$ARCH-$BUILD$TAG.${PKGTYPE:-tgz}
+/sbin/makepkg -l y -c n $OUTPUT/$PRGNAM-$VERSION-$ARCH-$BUILD$TAG.$PKGTYPE
diff --git a/games/tanglet/tanglet.SlackBuild b/games/tanglet/tanglet.SlackBuild
index d741f827c3..10b9312d2b 100644
--- a/games/tanglet/tanglet.SlackBuild
+++ b/games/tanglet/tanglet.SlackBuild
@@ -1,4 +1,4 @@
-#!/bin/sh
+#!/bin/bash
# Copyright (c) 2013-2019 LEVAI Daniel
# All rights reserved.
@@ -27,26 +27,36 @@
# Build script for tanglet
+# 20220221 bkw: Modified by SlackBuilds.org: fix build on 15.0, by
+# upgrading to v1.5.5 (not the latest version though).
+
+cd $(dirname $0) ; CWD=$(pwd)
+
PRGNAM=tanglet
-VERSION=${VERSION:-1.5.3}
+VERSION=${VERSION:-1.5.5}
BUILD=${BUILD:-1}
TAG=${TAG:-_SBo}
+PKGTYPE=${PKGTYPE:-tgz}
if [ -z "$ARCH" ]; then
case "$( uname -m )" in
- i?86) ARCH=i486 ;;
+ i?86) ARCH=i586 ;;
arm*) ARCH=arm ;;
*) ARCH=$( uname -m ) ;;
esac
fi
-CWD=$(pwd)
+if [ ! -z "${PRINT_PACKAGE_NAME}" ]; then
+ echo "$PRGNAM-$VERSION-$ARCH-$BUILD$TAG.$PKGTYPE"
+ exit 0
+fi
+
TMP=${TMP:-/tmp/SBo}
PKG=$TMP/package-$PRGNAM
OUTPUT=${OUTPUT:-/tmp}
-if [ "$ARCH" = "i486" ];then
- SLKCFLAGS="-O2 -march=i486 -mtune=i686"
+if [ "$ARCH" = "i586" ];then
+ SLKCFLAGS="-O2 -march=i586 -mtune=i686"
LIBDIRSUFFIX=""
elif [ "$ARCH" = "i686" ]; then
SLKCFLAGS="-O2 -march=i686 -mtune=i686"
@@ -70,9 +80,9 @@ cd $PRGNAM-$VERSION
chown -R root:root .
find -L . \
\( -perm 777 -o -perm 775 -o -perm 750 -o -perm 711 -o -perm 555 \
- -o -perm 511 \) -exec chmod 755 {} \; -o \
+ -o -perm 511 \) -exec chmod 755 {} \+ -o \
\( -perm 666 -o -perm 664 -o -perm 640 -o -perm 600 -o -perm 444 \
- -o -perm 440 -o -perm 400 \) -exec chmod 644 {} \;
+ -o -perm 440 -o -perm 400 \) -exec chmod 644 {} \+
mkdir build
cd build
@@ -95,4 +105,4 @@ cat $CWD/slack-desc > $PKG/install/slack-desc
cat $CWD/doinst.sh > $PKG/install/doinst.sh
cd $PKG
-/sbin/makepkg -l y -c n $OUTPUT/$PRGNAM-$VERSION-$ARCH-$BUILD$TAG.${PKGTYPE:-tgz}
+/sbin/makepkg -l y -c n $OUTPUT/$PRGNAM-$VERSION-$ARCH-$BUILD$TAG.$PKGTYPE
diff --git a/games/tanglet/tanglet.info b/games/tanglet/tanglet.info
index caa149efa4..3baa6c85c8 100644
--- a/games/tanglet/tanglet.info
+++ b/games/tanglet/tanglet.info
@@ -1,10 +1,10 @@
PRGNAM="tanglet"
-VERSION="1.5.3"
+VERSION="1.5.5"
HOMEPAGE="https://gottcode.org/tanglet/"
-DOWNLOAD="https://gottcode.org/tanglet/tanglet-1.5.3-src.tar.bz2"
-MD5SUM="397a14dc407c0d884cc7eee8e850d9f5"
+DOWNLOAD="https://gottcode.org/tanglet/tanglet-1.5.5-src.tar.bz2"
+MD5SUM="0681513985f2c18b4764a9829101f996"
DOWNLOAD_x86_64=""
MD5SUM_x86_64=""
-REQUIRES="qt5"
+REQUIRES=""
MAINTAINER="LEVAI Daniel"
EMAIL="leva@ecentrum.hu"
diff --git a/games/tbftss/doinst.sh b/games/tbftss/doinst.sh
index 3ceb7eae8d..64a4b41636 100644
--- a/games/tbftss/doinst.sh
+++ b/games/tbftss/doinst.sh
@@ -2,7 +2,7 @@ if [ -x /usr/bin/update-desktop-database ]; then
/usr/bin/update-desktop-database -q usr/share/applications >/dev/null 2>&1
fi
-if [ -e /usr/share/icons/hicolor/icon-theme.cache ]; then
+if [ -e usr/share/icons/hicolor/icon-theme.cache ]; then
if [ -x /usr/bin/gtk-update-icon-cache ]; then
/usr/bin/gtk-update-icon-cache -f usr/share/icons/hicolor >/dev/null 2>&1
fi
diff --git a/games/tbftss/tbftss.SlackBuild b/games/tbftss/tbftss.SlackBuild
index d119970edd..93d75806a1 100644
--- a/games/tbftss/tbftss.SlackBuild
+++ b/games/tbftss/tbftss.SlackBuild
@@ -1,4 +1,4 @@
-#!/bin/sh
+#!/bin/bash
# Slackware build script for tbftss pandoran war
# (the battle for the solar systme - pandoran war)
# Written by Tim Dickson dickson.tim at googlemail.com
@@ -10,10 +10,13 @@
# doc location still changed to support slackware prefered location
# 28/11/2019 update to 1.5.1 and fixes due to change in packaging of source
+cd $(dirname $0) ; CWD=$(pwd)
+
PRGNAM=tbftss
VERSION=${VERSION:-1.5.1}
BUILD=${BUILD:-2}
TAG=${TAG:-_SBo}
+PKGTYPE=${PKGTYPE:-tgz}
if [ -z "$ARCH" ]; then
case "$( uname -m )" in
@@ -23,7 +26,14 @@ if [ -z "$ARCH" ]; then
esac
fi
-CWD=$(pwd)
+# If the variable PRINT_PACKAGE_NAME is set, then this script will report what
+# the name of the created package would be, and then exit. This information
+# could be useful to other scripts.
+if [ ! -z "${PRINT_PACKAGE_NAME}" ]; then
+ echo "$PRGNAM-$VERSION-$ARCH-$BUILD$TAG.$PKGTYPE"
+ exit 0
+fi
+
TMP=${TMP:-/tmp/SBo}
PKG=$TMP/package-$PRGNAM
OUTPUT=${OUTPUT:-/tmp}
@@ -73,4 +83,4 @@ cat $CWD/slack-desc > $PKG/install/slack-desc
cat $CWD/doinst.sh > $PKG/install/doinst.sh
cd $PKG
-/sbin/makepkg -l y -c n $OUTPUT/$PRGNAM-$VERSION-$ARCH-$BUILD$TAG.${PKGTYPE:-tgz}
+/sbin/makepkg -l y -c n $OUTPUT/$PRGNAM-$VERSION-$ARCH-$BUILD$TAG.$PKGTYPE
diff --git a/games/tbftss/tbftss.info b/games/tbftss/tbftss.info
index eb7cc333c5..0a110aef11 100644
--- a/games/tbftss/tbftss.info
+++ b/games/tbftss/tbftss.info
@@ -5,6 +5,6 @@ DOWNLOAD="https://www.battleforthesolarsystem.com/downloads/tbftss-1.5.1.src.tar
MD5SUM="7decbd60a5131f8ac2dad261102e6e9d"
DOWNLOAD_x86_64=""
MD5SUM_x86_64=""
-REQUIRES="SDL2_image SDL2_mixer SDL2_ttf"
+REQUIRES=""
MAINTAINER="Tim Dickson"
EMAIL="dickson.tim@googlemail.com"
diff --git a/games/teeworlds/teeworlds.SlackBuild b/games/teeworlds/teeworlds.SlackBuild
index 32c859769a..ac69048da9 100644
--- a/games/teeworlds/teeworlds.SlackBuild
+++ b/games/teeworlds/teeworlds.SlackBuild
@@ -1,8 +1,8 @@
-#!/bin/sh
+#!/bin/bash
# Slackware build script for teeworlds
-# Copyright 2014-2019 Dimitris Zlatanidis Orestiada, Greece
+# Copyright 2014-2022 Dimitris Zlatanidis Orestiada, Greece
# All rights reserved.
#
# Redistribution and use of this script, with or without modification, is
@@ -22,10 +22,13 @@
# OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF THIS SOFTWARE, EVEN IF
# ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
+cd $(dirname $0) ; CWD=$(pwd)
+
PRGNAM=teeworlds
-VERSION=${VERSION:-0.7.3.1}
+VERSION=${VERSION:-0.7.5}
BUILD=${BUILD:-1}
TAG=${TAG:-_SBo}
+PKGTYPE=${PKGTYPE:-tgz}
if [ -z "$ARCH" ]; then
case "$( uname -m )" in
@@ -35,7 +38,14 @@ if [ -z "$ARCH" ]; then
esac
fi
-CWD=$(pwd)
+# If the variable PRINT_PACKAGE_NAME is set, then this script will report what
+# the name of the created package would be, and then exit. This information
+# could be useful to other scripts.
+if [ ! -z "${PRINT_PACKAGE_NAME}" ]; then
+ echo "$PRGNAM-$VERSION-$ARCH-$BUILD$TAG.$PKGTYPE"
+ exit 0
+fi
+
TMP=${TMP:-/tmp/SBo}
PKG=$TMP/package-$PRGNAM
OUTPUT=${OUTPUT:-/tmp}
@@ -110,4 +120,4 @@ cat $CWD/slack-desc > $PKG/install/slack-desc
cat $CWD/doinst.sh > $PKG/install/doinst.sh
cd $PKG
-/sbin/makepkg -l y -c n $OUTPUT/$PRGNAM-$VERSION-$ARCH-$BUILD$TAG.${PKGTYPE:-tgz}
+/sbin/makepkg -l y -c n $OUTPUT/$PRGNAM-$VERSION-$ARCH-$BUILD$TAG.$PKGTYPE
diff --git a/games/teeworlds/teeworlds.info b/games/teeworlds/teeworlds.info
index 2fb75673a1..68baa5d715 100644
--- a/games/teeworlds/teeworlds.info
+++ b/games/teeworlds/teeworlds.info
@@ -1,10 +1,10 @@
PRGNAM="teeworlds"
-VERSION="0.7.3.1"
+VERSION="0.7.5"
HOMEPAGE="https://www.teeworlds.com/"
-DOWNLOAD="https://github.com/teeworlds/teeworlds/releases/download/0.7.3.1/teeworlds-0.7.3.1-linux_x86.tar.gz"
-MD5SUM="4afc25ea00716c3249a0d7dccabda14c"
-DOWNLOAD_x86_64="https://github.com/teeworlds/teeworlds/releases/download/0.7.3.1/teeworlds-0.7.3.1-linux_x86_64.tar.gz"
-MD5SUM_x86_64="eba846bf6bc1a59e0215edb9a73ea9e9"
-REQUIRES="python3 SDL2"
+DOWNLOAD="https://github.com/teeworlds/teeworlds/releases/download/0.7.5/teeworlds-0.7.5-linux_x86.tar.gz"
+MD5SUM="a5295648549bdc69bf1d8621f5bd2049"
+DOWNLOAD_x86_64="https://github.com/teeworlds/teeworlds/releases/download/0.7.5/teeworlds-0.7.5-linux_x86_64.tar.gz"
+MD5SUM_x86_64="5a7e22cd680abe504fc5d69a0876b659"
+REQUIRES=""
MAINTAINER="Dimitris Zlatanidis"
EMAIL="d.zlatanidis@gmail.com"
diff --git a/games/term2048/term2048.SlackBuild b/games/term2048/term2048.SlackBuild
index 4d2fb1adb1..cceb3d64dc 100644
--- a/games/term2048/term2048.SlackBuild
+++ b/games/term2048/term2048.SlackBuild
@@ -1,4 +1,4 @@
-#!/bin/sh
+#!/bin/bash
# Slackware build script for term2048
@@ -22,10 +22,13 @@
# OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF THIS SOFTWARE, EVEN IF
# ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
+cd $(dirname $0) ; CWD=$(pwd)
+
PRGNAM=term2048
VERSION=${VERSION:-0.2.5}
BUILD=${BUILD:-1}
TAG=${TAG:-_SBo}
+PKGTYPE=${PKGTYPE:-tgz}
if [ -z "$ARCH" ]; then
case "$( uname -m )" in
@@ -35,7 +38,14 @@ if [ -z "$ARCH" ]; then
esac
fi
-CWD=$(pwd)
+# If the variable PRINT_PACKAGE_NAME is set, then this script will report what
+# the name of the created package would be, and then exit. This information
+# could be useful to other scripts.
+if [ ! -z "${PRINT_PACKAGE_NAME}" ]; then
+ echo "$PRGNAM-$VERSION-$ARCH-$BUILD$TAG.$PKGTYPE"
+ exit 0
+fi
+
TMP=${TMP:-/tmp/SBo}
PKG=$TMP/package-$PRGNAM
OUTPUT=${OUTPUT:-/tmp}
@@ -84,4 +94,4 @@ cat $CWD/slack-desc > $PKG/install/slack-desc
cat $CWD/doinst.sh > $PKG/install/doinst.sh
cd $PKG
-/sbin/makepkg -l y -c n $OUTPUT/$PRGNAM-$VERSION-$ARCH-$BUILD$TAG.${PKGTYPE:-tgz}
+/sbin/makepkg -l y -c n $OUTPUT/$PRGNAM-$VERSION-$ARCH-$BUILD$TAG.$PKGTYPE
diff --git a/games/term2048/term2048.info b/games/term2048/term2048.info
index 695efa4932..72361790be 100644
--- a/games/term2048/term2048.info
+++ b/games/term2048/term2048.info
@@ -1,7 +1,7 @@
PRGNAM="term2048"
VERSION="0.2.5"
HOMEPAGE="https://github.com/bfontaine/term2048"
-DOWNLOAD="https://github.com/bfontaine/term2048/archive/0.2.5.tar.gz"
+DOWNLOAD="https://github.com/bfontaine/term2048/archive/0.2.5/term2048-0.2.5.tar.gz"
MD5SUM="e74772b2b92f7a8ce4b8afa9c0f8b9f1"
DOWNLOAD_x86_64=""
MD5SUM_x86_64=""
diff --git a/games/tetrinet/README b/games/tetrinet/README
new file mode 100644
index 0000000000..60b530aba6
--- /dev/null
+++ b/games/tetrinet/README
@@ -0,0 +1,21 @@
+tetrinet (networked multiplayer deathmatch Tetris)
+
+Gee, Tetris? Whats that? Yeah, yeah, so it's been done 2 billion
+times before (give or take a few bil), but this is different!
+Yes, all you tetris addicts out there be prepared for even MORE
+excitement.. internet tetris! Now you can play your five best buddies
+in one of the most well known games in existence!
+
+This contains the (n)curses client and the server. Note that you'll
+have to run the client in a terminal window at least 50 lines high.
+Resize or maximize your xterm/konsole/etc window. If you're at the
+framebuffer console, try loading a smaller-sized font.
+
+If your F1/F2/F3 keys don't work in this game, you can press Tab to
+cycle between the three windows instead. Also, if your arrow keys
+don't work (or if you just prefer vi bindings), you can use H J K
+L instead.
+
+The tetrinet-server included here is fairly bare-bones, compared to
+tetrinetx. However, unlike tetrinetx, it does support the TetriFAST
+game mode.
diff --git a/games/tetrinet/man/tetrinet-server.6 b/games/tetrinet/man/tetrinet-server.6
new file mode 100644
index 0000000000..c2b40d8a11
--- /dev/null
+++ b/games/tetrinet/man/tetrinet-server.6
@@ -0,0 +1,135 @@
+.TH "TETRINET-SERVER" "6" "2023-02-13"
+.\" Please adjust this date whenever revising the manpage.
+.SH "NAME"
+tetrinet-server \- server program for tetrinet
+
+
+.SH "SYNOPSIS"
+.B tetrinet\-server
+
+
+.SH "DESCRIPTION"
+.B tetrinet\-server
+is a server program for
+.BR tetrinet (6),
+a networked version of tetris. You can use it to serve both a TetriFast and an
+original server for up to 6 people to connect and play. It doesn't support any
+fancy features like different channels, but still includes support for
+configurable cookie mode and a small winlist.
+
+.PP
+
+.SH "OPTIONS"
+.B tetrinet-server
+doesn't take any options at all. It reads all its settings from
+.I ~/.tetrinet
+on startup and creates a default file if there isn't one already there.
+
+.SH "NOTE"
+
+.B tetrinet\-server
+does not fork into the background or run as a daemon. If you want to
+run it this way, start it with a command like:
+
+.BI\ nohup\ tetrinet\-server\ >tetsrv.log\ 2>&1\ </dev/null\ &
+
+.SH "EXAMPLES"
+This is a short explanation of the configuration file
+.I ~/.tetrinet
+together with its default entries. It is written after every game or when the
+server quits. If it is not there, it will be created automatically.
+
+.TP
+.BI winlist\ "Alcan;0;3;1 AndrewK;0;2;1"
+This is the winlist the server keeps. Each parameter consists of four
+semicolon-seperated fields:
+.IR Name ; Team ; Points ; Games .\ Team
+is a flag which is either
+.I 1
+if the entry is for a team or
+.I 0
+if the entry is for a player.
+.I Points
+is just the number of points for the entry, and
+.I Games
+is the number of games the entry has participated.
+
+.TP
+.BI classic\ 1
+Sets classic mode for the game - that means, no cookies.
+
+.TP
+.BI initiallevel\ 1
+Sets the level in which the game will start.
+
+.TP
+.BI linesperlevel\ 2
+Defines how many lines will issue a level increase.
+
+.TP
+.BI levelinc\ 1
+How many levels are increased per
+.B linesperlevel
+removed lines.
+
+.TP
+.BI averagelevels\ 1
+The levels of all player get averaged if this is set to
+.IR 1 .
+
+.TP
+.BI speciallines\ 1
+How many lines must be removed to get specials.
+
+.TP
+.BI specialcount\ 1
+The number of specials that are added each time
+.BR speciallines '
+lines are removed.
+
+.TP
+.BI specialcapacity\ 18
+This number tells you how many specials you can hold.
+
+.TP
+.BI pieces\ "14 14 15 14 14 14 15"
+Sets the likeliness of the different pieces. Must sum up to 100. The order is:
+bar (dark blue), square (yellow), reverse-L (green), L (purple), Z (red), S
+(light blue), and T (yellow).
+
+.TP
+.BI specials\ "18 18 3 12 0 16 3 12 18"
+Sets the likeliness of the different specials. Must sum up to 100. The order
+is: A, C, N, R, S, B, G, Q, O.
+
+.TP
+.BI linuxmode\ 0
+This setting selects whether the client should try to remain compatible with
+Windows clients. This only affects the winlist display; if
+.B linuxmode
+is set to
+.IR 1 ,
+the server will send the number of games played by each player as well as
+points won. This is set to zero by default.
+
+.TP
+.BI ipv6_only\ 0
+Listen on ipv6 only.
+
+
+.SH "FILES"
+.TP
+.I ~/.tetrinet
+The configuration file for
+.BR tetrinet-server .
+
+
+.SH "AUTHOR"
+This manual page was written by Gerfried Fuchs <alfie@ist.org>,
+and modified by B. Watson <urchlay@slackware.uk>.
+
+
+.SH "SEE ALSO"
+.BR tetrinet (6),
+.BR gtetrinet (6),
+.BR tetrinetx (6).
diff --git a/games/tetrinet/man/tetrinet.6 b/games/tetrinet/man/tetrinet.6
new file mode 100644
index 0000000000..c754c026f1
--- /dev/null
+++ b/games/tetrinet/man/tetrinet.6
@@ -0,0 +1,180 @@
+.TH TETRINET 6 "2023-02-13"
+.\" Please adjust this date whenever revising the manpage.
+
+.SH NAME
+tetrinet \- textmode client program for tetrinet
+
+
+.SH SYNOPSIS
+.B tetrinet
+.RB [\| \-fancy \|]
+.RB [\| \-fast \|]
+.RB [\| \-log
+.IR file \|]
+.RB [\| \-noshadow \|]
+.RB [\| \-noslide \|]
+.RB [\| \-slide \|]
+.RB [\| \-shadow \|]
+.RB [\| \-windows \|]
+.I nickname server
+
+
+.SH DESCRIPTION
+.B tetrinet
+is a textmode client program for tetrinet, a networked version of tetris. You
+can play both on TetriFast server and on the original servers with it. Please
+notice that your terminal needs to be at least 50 lines high, to be able to play it.
+
+
+.SH OPTIONS
+A summary of options is included below.
+
+
+.TP
+.B \-fancy
+Use "fancy" TTY graphics. (Note that this will slow down redraws somewhat.)
+
+
+.TP
+.B \-fast
+Use the "tetrifast" mode to connect to the server. This mode eliminates the
+delay before a new cube appears, thus speeding the game up noticeably. This
+mode is incompatible with the classic mode and the server has to support it.
+If in doubt, ask the other players.
+
+
+.TP
+.BI \-log\ file
+Log network traffic to the given file. All lines start with an absolute time
+(seconds) in brackets. Lines sent from the client to the server are prefixed
+with ">>>", and lines from the server to the client are prefixed with "<<<".
+This could be used with a utility program to replay a game later on (though
+such a program is not currently included in the Tetrinet distribution.)
+
+
+.TP
+.B \-noshadow
+Do not make pieces cast "shadows" when they are slowly falling. (Normally the
+area under piece is filled by dim dots to help to determine where the piece
+would hit the ground if one would press the spacebar.)
+
+
+.TP
+.B \-noslide
+Do not allow pieces to "slide" after being dropped with the spacebar.
+(Normally, there is a short time after pressing the spacebar during which a
+piece can "slide" left or right before it solidifies.)
+
+
+.TP
+.B \-shadow
+Opposite of
+.BR \-noshadow ;
+make the pieces cast "shadows". Can speed up gameplay considerably, but it can
+be considered as cheating by some people since some other tetrinet clients lack
+this.
+
+
+.TP
+.B \-slide
+Opposite of
+.BR \-noslide ;
+allows pieces to "slide" after being dropped. If both
+.BR \-slide\ and\ \-noslide
+are given,
+.B \-slide
+takes precedence. If both
+.BR \-windows\ and\ \-slide
+are given, this overrides the "no sliding" part of
+.B \-windows
+without affecting the other changes in program behavior.
+
+
+.TP
+.B \-windows
+Behave as much like the Windows version of Tetrinet as possible. Implies
+.BR \-noslide\ and\ \-noshadow .
+
+
+.SH USAGE
+When you start
+.B tetrinet
+you will find yourself in the partyline. In here you can chat with the other
+players. With
+.I /help
+you will get the list of the server supported commands. You can switch between
+three screens with
+.I F1
+through
+.IR F3 ,
+or with the
+.I Tab
+key.
+.P
+With
+.I /start
+you can start a game (if you are in position one). You will have to switch over
+to the Fields with the
+.I F1
+key (an automatic switch over on game start is planned). To pause a running game
+you have to enter
+.I /pause
+in the partyline. To restart the game you enter
+.IR /unpause .
+.SH CONTROLS
+You can use either the arrow keys or vi\-style movement keys.
+.TP
+.B Left, h
+Move the piece left.
+.TP
+.B Right, l
+Move the piece right.
+.TP
+.B Up, k, x
+Rotate clockwise.
+.TP
+.B Down, j
+Move the piece down.
+.TP
+.B z
+Rotate counterclockwise.
+.TP
+.B Space
+Drop (move piece down until it hits something).
+.TP
+.B 1 to 6
+Use special block on player number 1 to 6.
+.TP
+.B d
+Drop (get rid of) unwanted special block.
+.TP
+.B t
+Talk (chat).
+.SH GAMEPLAY
+You have to fill the lines completely, because complete lines
+will get removed from the display. The more lines you can eliminate with a
+single stone the better. If the play room supports specials you will eventually
+see a list of letters below your playfield that you can use with the number
+keys from
+.I 1
+to
+.IR 6
+for the corresponding playfield.
+If you want to get rid of a special, drop it with
+.IR d .
+You can also chat in the playfield, to open the chat box press
+.I t
+(for
+.BR t alk.)
+That's it, more or less.
+
+
+.SH AUTHOR
+This manual page was written by Gerfried Fuchs <alfie@ist.org>,
+and modified by B. Watson <urchlay@slackware.uk>.
+
+
+.SH "SEE ALSO"
+.BR tetrinet-server (6),
+.BR gtetrinet (6),
+.BR tetrinetr (6).
diff --git a/games/tetrinet/patches/check_term_size.diff b/games/tetrinet/patches/check_term_size.diff
new file mode 100644
index 0000000000..31c1896ec4
--- /dev/null
+++ b/games/tetrinet/patches/check_term_size.diff
@@ -0,0 +1,19 @@
+diff -Naur tetrinet-0.11/tty.c tetrinet-0.11.patched/tty.c
+--- tetrinet-0.11/tty.c 2003-09-11 16:26:53.000000000 -0400
++++ tetrinet-0.11.patched/tty.c 2020-11-21 00:53:04.798758121 -0500
+@@ -237,6 +237,15 @@
+ if ((has_color = has_colors()))
+ start_color();
+ getmaxyx(stdscr, scrheight, scrwidth);
++
++ if(scrheight < 50 || scrwidth < 80) {
++ screen_cleanup();
++ fprintf(stderr,
++ "Terminal size %dx%d is too small. Minimum is 80x50.\n",
++ scrwidth, scrheight);
++ exit(-1);
++ }
++
+ scrwidth--; /* Don't draw in last column--this can cause scroll */
+
+ /* Cancel all this when we exit. */
diff --git a/games/tetrinet/patches/compilefix.diff b/games/tetrinet/patches/compilefix.diff
new file mode 100644
index 0000000000..868e55aa3b
--- /dev/null
+++ b/games/tetrinet/patches/compilefix.diff
@@ -0,0 +1,93 @@
+diff -Naur tetrinet-0.11/server.c tetrinet-0.11.patched/server.c
+--- tetrinet-0.11/server.c 2003-09-07 12:29:29.000000000 -0400
++++ tetrinet-0.11.patched/server.c 2020-11-20 22:06:44.851665337 -0500
+@@ -839,7 +839,7 @@
+
+ if (listen_sock >= 0 && FD_ISSET(listen_sock, &fds)) {
+ struct sockaddr_in sin;
+- int len = sizeof(sin);
++ socklen_t len = sizeof(sin);
+ fd = accept(listen_sock, (struct sockaddr *)&sin, &len);
+ if (fd >= 0) {
+ for (i = 0; i < 6 && player_socks[i] != -1; i++)
+@@ -857,7 +857,7 @@
+ #ifdef HAVE_IPV6
+ if (listen_sock6 >= 0 && FD_ISSET(listen_sock6, &fds)) {
+ struct sockaddr_in6 sin6;
+- int len = sizeof(sin6);
++ socklen_t len = sizeof(sin6);
+ fd = accept(listen_sock6, (struct sockaddr *)&sin6, &len);
+ if (fd >= 0) {
+ for (i = 0; i < 6 && player_socks[i] != -1; i++)
+diff -Naur tetrinet-0.11/sockets.c tetrinet-0.11.patched/sockets.c
+--- tetrinet-0.11/sockets.c 2003-09-09 15:15:04.000000000 -0400
++++ tetrinet-0.11.patched/sockets.c 2020-11-20 22:06:44.852665337 -0500
+@@ -66,7 +66,7 @@
+ if (c == 0xFF)
+ ptr--;
+ *ptr = 0;
+- if (log) {
++ if (logging) {
+ if (!logfile)
+ logfile = fopen(logname, "a");
+ if (logfile) {
+@@ -89,7 +89,7 @@
+ unsigned char c = 0xFF;
+ int n = 0;
+
+- if (log) {
++ if (logging) {
+ if (!logfile)
+ logfile = fopen(logname, "a");
+ if (logfile) {
+diff -Naur tetrinet-0.11/tetrinet.c tetrinet-0.11.patched/tetrinet.c
+--- tetrinet-0.11/tetrinet.c 2003-09-07 12:29:29.000000000 -0400
++++ tetrinet-0.11.patched/tetrinet.c 2020-11-20 22:09:01.677652899 -0500
+@@ -21,7 +21,7 @@
+ /*************************************************************************/
+
+ int fancy = 0; /* Fancy TTY graphics? */
+-int log = 0; /* Log network traffic to file? */
++int logging = 0; /* Log network traffic to file? */
+ char *logname; /* Log filename */
+ int windows_mode = 0; /* Try to be just like the Windows version? */
+ int noslide = 0; /* Disallow piece sliding? */
+@@ -83,7 +83,7 @@
+ winlist[i].team = 0;
+ s++;
+ strncpy(winlist[i].name, s, sizeof(winlist[i].name)-1);
+- winlist[i].name[sizeof(winlist[i].name)] = 0;
++ winlist[i].name[sizeof(winlist[i].name)-1] = 0;
+ winlist[i].points = atoi(t);
+ if ((t = strchr(t, ';')) != NULL)
+ winlist[i].games = atoi(t+1);
+@@ -560,7 +560,7 @@
+ char *nick = NULL, *server = NULL;
+ char buf[1024];
+ char nickmsg[1024];
+- unsigned char ip[4];
++ char ip[4];
+ char iphashbuf[32];
+ int len;
+ #ifdef BUILTIN_SERVER
+@@ -590,7 +590,7 @@
+ if (strcmp(av[i], "-fancy") == 0) {
+ fancy = 1;
+ } else if (strcmp(av[i], "-log") == 0) {
+- log = 1;
++ logging = 1;
+ i++;
+ if (i >= ac) {
+ fprintf(stderr, "Option -log requires an argument\n");
+diff -Naur tetrinet-0.11/tetrinet.h tetrinet-0.11.patched/tetrinet.h
+--- tetrinet-0.11/tetrinet.h 2003-09-07 12:12:51.000000000 -0400
++++ tetrinet-0.11.patched/tetrinet.h 2020-11-20 22:06:44.852665337 -0500
+@@ -74,7 +74,7 @@
+ /* Externs */
+
+ extern int fancy;
+-extern int log;
++extern int logging;
+ extern char *logname;
+ extern int windows_mode;
+ extern int noslide;
diff --git a/games/tetrinet/patches/gcc10.diff b/games/tetrinet/patches/gcc10.diff
new file mode 100644
index 0000000000..d71d5a2fbb
--- /dev/null
+++ b/games/tetrinet/patches/gcc10.diff
@@ -0,0 +1,25 @@
+Author: Reiner Herrmann <reiner@reiner-h.de>
+Description: Fix FTBFS with GCC 10
+Bug-Debian: https://bugs.debian.org/957872
+
+--- a/tetris.c
++++ b/tetris.c
+@@ -32,6 +32,7 @@
+ signed char specials[MAX_SPECIALS] = {-1}; /* Special block inventory */
+ int next_piece; /* Next piece to fall */
+
++PieceData piecedata[7][4];
+ static struct timeval timeout; /* Time of next action */
+ int current_piece; /* Current piece number */
+ int current_rotation; /* Current rotation value */
+--- a/tetris.h
++++ b/tetris.h
+@@ -50,7 +50,7 @@
+ char shape[4][4]; /* Shape data for the piece */
+ } PieceData;
+
+-PieceData piecedata[7][4];
++extern PieceData piecedata[7][4];
+
+ extern int current_piece, current_rotation;
+
diff --git a/games/tetrinet/patches/tab_key.diff b/games/tetrinet/patches/tab_key.diff
new file mode 100644
index 0000000000..d938330640
--- /dev/null
+++ b/games/tetrinet/patches/tab_key.diff
@@ -0,0 +1,52 @@
+diff -Naur tetrinet-0.11/tetrinet.c tetrinet-0.11.patched/tetrinet.c
+--- tetrinet-0.11/tetrinet.c 2003-09-07 12:29:29.000000000 -0400
++++ tetrinet-0.11.patched/tetrinet.c 2020-11-21 00:43:40.956809377 -0500
+@@ -688,6 +688,18 @@
+ else
+ timeout = -1;
+ i = io->wait_for_input(timeout);
++
++/* 20201121 bkw: make the Tab key cycle between windows. It's 2020
++ and we *still* can't get F-keys working in all terminals. */
++ if(i == 9) {
++ if(dispmode == MODE_FIELDS)
++ i = K_F2;
++ else if(dispmode == MODE_PARTYLINE)
++ i = K_F3;
++ else
++ i = K_F1;
++ }
++
+ if (i == -1) {
+ char buf[1024];
+ if (sgets(buf, sizeof(buf), server_sock))
+diff -Naur tetrinet-0.11/tty.c tetrinet-0.11.patched/tty.c
+--- tetrinet-0.11/tty.c 2003-09-11 16:26:53.000000000 -0400
++++ tetrinet-0.11.patched/tty.c 2020-11-21 00:46:25.038794461 -0500
+@@ -534,7 +534,7 @@
+ hline(MY_HLINE2, scrwidth);
+ attrset(MY_BOLD);
+ move(scrheight-1, 0);
+- addstr("F1=Show Fields F2=Partyline F3=Winlist");
++ addstr("F1=Show Fields F2=Partyline F3=Winlist Tab=Next Window");
+ move(scrheight-1, scrwidth-8);
+ addstr("F10=Quit");
+ attrset(A_NORMAL);
+@@ -978,7 +978,7 @@
+ hline(MY_HLINE2, scrwidth);
+ attrset(MY_BOLD);
+ move(scrheight-1, 0);
+- addstr("F1=Show Fields F2=Partyline F3=Winlist");
++ addstr("F1=Show Fields F2=Partyline F3=Winlist Tab=Next Window");
+ move(scrheight-1, scrwidth-8);
+ addstr("F10=Quit");
+ attrset(A_NORMAL);
+@@ -1057,7 +1057,7 @@
+ hline(MY_HLINE2, scrwidth);
+ attrset(MY_BOLD);
+ move(scrheight-1, 0);
+- addstr("F1=Show Fields F2=Partyline F3=Winlist");
++ addstr("F1=Show Fields F2=Partyline F3=Winlist Tab=Next Window");
+ move(scrheight-1, scrwidth-8);
+ addstr("F10=Quit");
+ attrset(A_NORMAL);
diff --git a/games/tetrinet/patches/vikeys.diff b/games/tetrinet/patches/vikeys.diff
new file mode 100644
index 0000000000..c69d186c6d
--- /dev/null
+++ b/games/tetrinet/patches/vikeys.diff
@@ -0,0 +1,35 @@
+diff -Naur tetrinet-0.11/tetris.c tetrinet-0.11.patched/tetris.c
+--- tetrinet-0.11/tetris.c 2003-09-07 12:29:29.000000000 -0400
++++ tetrinet-0.11.patched/tetris.c 2020-11-21 00:32:56.473867963 -0500
+@@ -902,6 +902,7 @@
+ switch (c) {
+ case K_UP: /* Rotate clockwise */
+ case 'x':
++ case 'k':
+ if (piece_waiting)
+ break;
+ rnew = (current_rotation+1) % 4;
+@@ -942,6 +943,7 @@
+ break;
+
+ case K_LEFT: /* Move left */
++ case 'h':
+ if (piece_waiting)
+ break;
+ if (x + pd->left > 0) {
+@@ -957,6 +959,7 @@
+ break;
+
+ case K_RIGHT: /* Move right */
++ case 'l':
+ if (piece_waiting)
+ break;
+ if (x + pd->right < FIELD_WIDTH-1) {
+@@ -972,6 +975,7 @@
+ break;
+
+ case K_DOWN: /* Down one space */
++ case 'j':
+ if (piece_waiting)
+ break;
+ step_down();
diff --git a/games/tetrinet/slack-desc b/games/tetrinet/slack-desc
new file mode 100644
index 0000000000..4f7b00d605
--- /dev/null
+++ b/games/tetrinet/slack-desc
@@ -0,0 +1,19 @@
+# HOW TO EDIT THIS FILE:
+# The "handy ruler" below makes it easier to edit a package description.
+# Line up the first '|' above the ':' following the base package name, and
+# the '|' on the right side marks the last column you can put a character in.
+# You must make exactly 11 lines for the formatting to be correct. It's also
+# customary to leave one space after the ':' except on otherwise blank lines.
+
+ |-----handy-ruler------------------------------------------------------|
+tetrinet: tetrinet (networked multiplayer deathmatch Tetris)
+tetrinet:
+tetrinet: Gee, Tetris? Whats that? Yeah, yeah, so it's been done 2 billion
+tetrinet: times before (give or take a few bil), but this is different!
+tetrinet: Yes, all you tetris addicts out there be prepared for even MORE
+tetrinet: excitement.. internet tetris! Now you can play your five best buddies
+tetrinet: in one of the most well known games in existence!
+tetrinet:
+tetrinet:
+tetrinet:
+tetrinet:
diff --git a/games/tetrinet/tetrinet.SlackBuild b/games/tetrinet/tetrinet.SlackBuild
new file mode 100644
index 0000000000..8ef23c8dbf
--- /dev/null
+++ b/games/tetrinet/tetrinet.SlackBuild
@@ -0,0 +1,122 @@
+#!/bin/bash
+
+# Slackware build script for tetrinet
+
+# Written by B. Watson (yalhcru@gmail.com)
+
+# Licensed under the WTFPL. See http://www.wtfpl.net/txt/copying/ for details.
+
+# I started writing this SlackBuid in 2020 and just now remembered to
+# finish it. It's the same version packaged by Debian, so it should
+# interoperate with servers running Debian.
+
+cd $(dirname $0) ; CWD=$(pwd)
+
+PRGNAM=tetrinet
+VERSION=${VERSION:-0.11+cvs20070911}
+BUILD=${BUILD:-1}
+TAG=${TAG:-_SBo}
+PKGTYPE=${PKGTYPE:-tgz}
+
+if [ -z "$ARCH" ]; then
+ case "$( uname -m )" in
+ i?86) ARCH=i586 ;;
+ arm*) ARCH=arm ;;
+ *) ARCH=$( uname -m ) ;;
+ esac
+fi
+
+if [ ! -z "${PRINT_PACKAGE_NAME}" ]; then
+ echo "$PRGNAM-$VERSION-$ARCH-$BUILD$TAG.$PKGTYPE"
+ exit 0
+fi
+
+TMP=${TMP:-/tmp/SBo}
+PKG=$TMP/package-$PRGNAM
+OUTPUT=${OUTPUT:-/tmp}
+
+if [ "$ARCH" = "i586" ]; then
+ SLKCFLAGS="-O2 -march=i586 -mtune=i686"
+ LIBDIRSUFFIX=""
+elif [ "$ARCH" = "i686" ]; then
+ SLKCFLAGS="-O2 -march=i686 -mtune=i686"
+ LIBDIRSUFFIX=""
+elif [ "$ARCH" = "x86_64" ]; then
+ SLKCFLAGS="-O2 -fPIC"
+ LIBDIRSUFFIX="64"
+else
+ SLKCFLAGS="-O2"
+ LIBDIRSUFFIX=""
+fi
+
+set -e
+
+rm -rf $PKG
+mkdir -p $TMP $PKG $OUTPUT
+cd $TMP
+rm -rf $PRGNAM
+tar xvf $CWD/${PRGNAM}_${VERSION^^}.orig.tar.gz
+cd $PRGNAM
+chown -R root:root .
+find -L . -perm /111 -a \! -perm 755 -a -exec chmod 755 {} \+ -o \
+ \! -perm /111 -a \! -perm 644 -a -exec chmod 644 {} \+
+
+# 20230213 bkw: patch came from Debian:
+# http://deb.debian.org/debian/pool/main/t/tetrinet/tetrinet_0.11+CVS20070911-2.1.debian.tar.xz
+patch -p1 < $CWD/patches/gcc10.diff
+
+# 20201120 bkw: fix compiler warnings, at least the ones that look like
+# they might cause real problems.
+patch -p1 < $CWD/patches/compilefix.diff
+
+# 20201120 bkw: we're not building the server into the client, so don't
+# offer it as an option in the help message.
+sed -i '/^" *-server/d' $PRGNAM.c
+
+# 20201121 bkw: since we can't seem to get all the various terminals
+# and ncurses to agree on the escape sequences for F1/F2/F3, allow
+# switching windows with the Tab key. Grr.
+patch -p1 < $CWD/patches/tab_key.diff
+
+# 20201121 bkw: allow vi HJKL movement along with arrow keys. Also
+# make the existing letter keystrokes case-insensitive.
+patch -p1 < $CWD/patches/vikeys.diff
+
+# 20201121 bkw: actually check the terminal size and abort if too
+# small. This won't help if the user resizes the terminal while the
+# game is running, but it's better than starting up an unplayable
+# game.
+patch -p1 < $CWD/patches/check_term_size.diff
+
+# No other way to apply our flags...
+sed -i "/CFLAGS/s|-g|$SLKCFLAGS|" Makefile
+
+# *Finally*:
+make
+
+# Do not use 'make install', no DESTDIR or PREFIX/etc support.
+PKGMAN6=$PKG/usr/man/man6
+PKGDOC=$PKG/usr/doc/$PRGNAM-$VERSION
+mkdir -p $PKG/usr/games $PKGMAN6 $PKGDOC
+
+# Man pages come from upstream post-release CVS. I've fixed some
+# typos, cleaned up the formatting, and documented all the stuff the
+# patches do.
+for i in $PRGNAM $PRGNAM-server; do
+ install -s -m0755 $i $PKG/usr/games
+ gzip -9c < $CWD/man/$i.6 > $PKGMAN6/$i.6.gz
+done
+
+# Original upstream calls the client "tetrinet", Debian calls it
+# "tetrinet-client". Use symlinks to support both names.
+ln -s $PRGNAM $PKG/usr/games/$PRGNAM-client
+ln -s $PRGNAM.6.gz $PKG/usr/man/man6/$PRGNAM-client.6.gz
+
+cp -a AUTHORS Change* README TODO $PRGNAM.txt $PKGDOC
+cat $CWD/$PRGNAM.SlackBuild > $PKGDOC/$PRGNAM.SlackBuild
+
+mkdir -p $PKG/install
+cat $CWD/slack-desc > $PKG/install/slack-desc
+
+cd $PKG
+/sbin/makepkg -l y -c n $OUTPUT/$PRGNAM-$VERSION-$ARCH-$BUILD$TAG.$PKGTYPE
diff --git a/games/tetrinet/tetrinet.info b/games/tetrinet/tetrinet.info
new file mode 100644
index 0000000000..44a5e42fe8
--- /dev/null
+++ b/games/tetrinet/tetrinet.info
@@ -0,0 +1,10 @@
+PRGNAM="tetrinet"
+VERSION="0.11+cvs20070911"
+HOMEPAGE="http://tetrinet.or.cz/"
+DOWNLOAD="http://deb.debian.org/debian/pool/main/t/tetrinet/tetrinet_0.11+CVS20070911.orig.tar.gz"
+MD5SUM="fc42d250e99b65105e61ef34543d598b"
+DOWNLOAD_x86_64=""
+MD5SUM_x86_64=""
+REQUIRES=""
+MAINTAINER="B. Watson"
+EMAIL="urchlay@slackware.uk"
diff --git a/games/tetrinetx/README b/games/tetrinetx/README
new file mode 100644
index 0000000000..541d97c3fb
--- /dev/null
+++ b/games/tetrinetx/README
@@ -0,0 +1,24 @@
+tetrinetx (TetriNET server)
+
+tetrinetx provides a server for hosting TetriNet games. TetriNet
+is a multiplayer variant of Tetris played over the Internet. Up to
+six people may simultaneously connect to a server to participate in
+a game.
+
+tetrinetx supports only the original game mode, *not* TetriFAST mode.
+Clients attempting to connect in TetriFAST mode will be immediately
+disconnected.
+
+If you want to start the tetrinetx service at boot, add code like
+this to your /etc/rc.d/rc.local:
+
+if [ -x /etc/rc.d/rc.tetrinetx ]; then
+ /etc/rc.d/rc.tetrinetx start
+fi
+
+The daemon runs as the 'games' user. See the tetrinetx(6) man page for
+details.
+
+IPv6 support is a compile-time choice. It's not possible to include
+both IPv6 and IPv4 support. The default is IPv6. To build with IPv4
+support instead, run the script with IPV4=yes in the environment.
diff --git a/games/tetrinetx/doinst.sh b/games/tetrinetx/doinst.sh
new file mode 100644
index 0000000000..ae1bf754ca
--- /dev/null
+++ b/games/tetrinetx/doinst.sh
@@ -0,0 +1,26 @@
+config() {
+ NEW="$1"
+ OLD="$(dirname $NEW)/$(basename $NEW .new)"
+ if [ ! -r $OLD ]; then
+ mv $NEW $OLD
+ elif [ "$(cat $OLD | md5sum)" = "$(cat $NEW | md5sum)" ]; then
+ rm $NEW
+ fi
+}
+
+preserve_perms() {
+ NEW="$1"
+ OLD="$(dirname $NEW)/$(basename $NEW .new)"
+ if [ -e $OLD ]; then
+ cp -a $OLD ${NEW}.incoming
+ cat $NEW > ${NEW}.incoming
+ mv ${NEW}.incoming $NEW
+ fi
+ config $NEW
+}
+
+preserve_perms etc/rc.d/rc.tetrinetx.new
+config etc/tetrinetx/game.conf.new
+config etc/tetrinetx/game.motd.new
+config etc/tetrinetx/game.pmotd.new
+config etc/tetrinetx/game.secure.new
diff --git a/games/tetrinetx/rc.tetrinetx b/games/tetrinetx/rc.tetrinetx
new file mode 100644
index 0000000000..974c05097b
--- /dev/null
+++ b/games/tetrinetx/rc.tetrinetx
@@ -0,0 +1,19 @@
+#!/bin/sh
+
+# 20230211 bkw: Very dumb/simple rc script for tetrinetx, part
+# of the SBo build.
+
+case "$1" in
+ 'start'|'')
+ su - games -s /bin/sh -c /usr/games/tetrinetx
+ ;;
+ 'stop')
+ killall tetrinetx
+ ;;
+ 'restart')
+ $0 stop
+ sleep 1
+ exec $0 start
+ ;;
+ *) echo "usage: $0 start|stop|restart" ; exit 1 ;;
+esac
diff --git a/games/tetrinetx/restore_ipv4.diff b/games/tetrinetx/restore_ipv4.diff
new file mode 100644
index 0000000000..133dbd0530
--- /dev/null
+++ b/games/tetrinetx/restore_ipv4.diff
@@ -0,0 +1,16 @@
+diff -Naur tetrinetx-1.13.16+qirc-1.40c.debpatched/src/net.c tetrinetx-1.13.16+qirc-1.40c/src/net.c
+--- tetrinetx-1.13.16+qirc-1.40c.debpatched/src/net.c 2023-02-12 22:55:25.362581596 -0500
++++ tetrinetx-1.13.16+qirc-1.40c/src/net.c 2023-02-12 22:57:05.941572131 -0500
+@@ -370,6 +370,12 @@
+ int answer(sock,ip,binary)
+ int sock; unsigned long *ip; int binary;
+ {
++ int new_sock,addrlen; struct sockaddr_in from;
++ addrlen=sizeof(struct sockaddr);
++ new_sock=accept(sock,(struct sockaddr *)&from,&addrlen);
++ if (new_sock<0) return -1;
++ *ip=from.sin_addr.s_addr;
++ *ip=ntohl(*ip);
+ /* set up all the normal socket crap */
+ // setsock(new_sock,(binary ? SOCK_BINARY : 0));
+ return new_sock;
diff --git a/games/tetrinetx/slack-desc b/games/tetrinetx/slack-desc
new file mode 100644
index 0000000000..78c78803fb
--- /dev/null
+++ b/games/tetrinetx/slack-desc
@@ -0,0 +1,19 @@
+# HOW TO EDIT THIS FILE:
+# The "handy ruler" below makes it easier to edit a package description.
+# Line up the first '|' above the ':' following the base package name, and
+# the '|' on the right side marks the last column you can put a character in.
+# You must make exactly 11 lines for the formatting to be correct. It's also
+# customary to leave one space after the ':' except on otherwise blank lines.
+
+ |-----handy-ruler------------------------------------------------------|
+tetrinetx: tetrinetx (TetriNET server)
+tetrinetx:
+tetrinetx: tetrinetx provides a server for hosting TetriNet games. TetriNet
+tetrinetx: is a multiplayer variant of Tetris played over the Internet. Up to
+tetrinetx: six people may simultaneously connect to a server to participate in
+tetrinetx: a game.
+tetrinetx:
+tetrinetx: tetrinetx does NOT support the TetriFAST game mode.
+tetrinetx:
+tetrinetx: This package was built with IPv@IPVER@ support only.
+tetrinetx:
diff --git a/games/tetrinetx/tetrinetx.6 b/games/tetrinetx/tetrinetx.6
new file mode 100644
index 0000000000..ca9d10f74d
--- /dev/null
+++ b/games/tetrinetx/tetrinetx.6
@@ -0,0 +1,159 @@
+.\" Man page generated from reStructuredText.
+.
+.
+.nr rst2man-indent-level 0
+.
+.de1 rstReportMargin
+\\$1 \\n[an-margin]
+level \\n[rst2man-indent-level]
+level margin: \\n[rst2man-indent\\n[rst2man-indent-level]]
+-
+\\n[rst2man-indent0]
+\\n[rst2man-indent1]
+\\n[rst2man-indent2]
+..
+.de1 INDENT
+.\" .rstReportMargin pre:
+. RS \\$1
+. nr rst2man-indent\\n[rst2man-indent-level] \\n[an-margin]
+. nr rst2man-indent-level +1
+.\" .rstReportMargin post:
+..
+.de UNINDENT
+. RE
+.\" indent \\n[an-margin]
+.\" old: \\n[rst2man-indent\\n[rst2man-indent-level]]
+.nr rst2man-indent-level -1
+.\" new: \\n[rst2man-indent\\n[rst2man-indent-level]]
+.in \\n[rst2man-indent\\n[rst2man-indent-level]]u
+..
+.TH "TETRINETX" 6 "2023-02-13" "1.13.16+qirc_1.40c_15" "SlackBuilds.org"
+.SH NAME
+tetrinetx \- server for tetrinet game
+.\" RST source for tetrinetx(6) man page. Convert with:
+.
+.\" rst2man.py tetrinetx.rst > tetrinetx.6
+.
+.SH SYNOPSIS
+.sp
+/etc/rc.d/rc.tetrinetx [ \fBstart\fP | \fBstop\fP | \fBrestart\fP ]
+.SH DESCRIPTION
+.sp
+\fBtetrinetx\fP provides a server for hosting TetriNET games. TetriNET
+is a multiplayer variant of Tetris played over the internet. Up to
+six people may simultaneously connect to a server to participate in
+a game.
+.sp
+\fBtetrinetx\fP supports only the original TetriNET game mode, not the
+TetriFAST mode. Clients attempting to connect with TetriFAST will be
+immediately disconnected.
+.sp
+The actual \fBtetrinetx\fP binary should not normally be run
+directly. Instead, use the startup script. If you want to start the
+server at boot, include a call to it in your \fI/etc/rc.d/rc.local\fP:
+.INDENT 0.0
+.INDENT 3.5
+.sp
+.nf
+.ft C
+if [ \-x /etc/rc.d/rc.tetrinetx ]; then
+ /etc/rc.d/rc.tetrinetx start
+fi
+.ft P
+.fi
+.UNINDENT
+.UNINDENT
+.sp
+\&...and possibly in \fI/etc/rc.d/rc.local_shutdown\fP:
+.INDENT 0.0
+.INDENT 3.5
+.sp
+.nf
+.ft C
+if [ \-x /etc/rc.d/rc.tetrinetx ]; then
+ /etc/rc.d/rc.tetrinetx stop
+fi
+.ft P
+.fi
+.UNINDENT
+.UNINDENT
+.SH FILES
+.sp
+All configuration is done via config files; there are no command\-line
+options (other than start/stop/restart, for the init script).
+.INDENT 0.0
+.TP
+.B /etc/tetrinetx/game.conf
+The main config file for \fBtetrinetx\fP\&. Human\-readable and editable,
+with explanatory comments.
+.TP
+.B /etc/tetrinetx/game.motd
+The "message of the day" shown to regular clients when they connect.
+.TP
+.B /etc/tetrinetx/game.pmotd
+Message shown to playback (spectator) service clients.
+.TP
+.B /etc/tetrinetx/game.secure
+Used to define passwords clients can send to authenticate as server
+admins. By default, nothing is defined here (everything is commented out).
+.TP
+.B /etc/tetrinetx/game.ban, game.allow, game.ban.compromise
+Controls who is allowed to connect to the server. These files don\(aqt
+ship with the package, but ".example" files are included to show you
+how they work.
+.TP
+.B /var/log/tetrinetx/game.log
+Log file for \fBtetrinetx\fP\&.
+.TP
+.B /var/games/tetrinetx/game.winlist, game.winlist2, game.winlist3
+Lists of game winners.
+.TP
+.B /var/run/tetrinetx/game.pid
+PID file for the daemon is normally stored here, although this can be
+changed in \fBgame.conf\fP\&. The PID file is deleted when \fBtetrinetx\fP
+exits normally (including being killed with \fBSIGTERM\fP).
+The init script doesn\(aqt actually use the PID file.
+.UNINDENT
+.SH NETWORK
+.sp
+\fBtetrinetx\fP uses the following TCP ports:
+.INDENT 0.0
+.TP
+.B 31457
+Standard port used for tetrinet clients.
+.TP
+.B 31456
+Query service. Supposedly can be connected to with a standard IRC client.
+See:
+.INDENT 7.0
+.INDENT 3.5
+/usr/doc/tetrinetx\-1.13.16+qirc_1.40c_15/README.qirc.spectators
+.UNINDENT
+.UNINDENT
+.TP
+.B 31458
+"Playback" port, used for connecting as a spectator. \fBtetrinetx\fP must
+have a \fIquery_password\fP set in \fB/etc/tetrinetx/game.secure\fP to enable
+spectator connections.
+.UNINDENT
+.SH LIMITATIONS
+.sp
+\fBtetrinetx\fP can only be compiled for \fIeither\fP IPv4 \fIor\fP IPv6
+support, not both. The SlackBuilds.org build allows choosing this at
+build time.
+.SH COPYRIGHT
+.sp
+See the file /usr/doc/tetrinetx\-1.13.16+qirc_1.40c_15/COPYING for license information.
+.SH AUTHORS
+.sp
+\fBtetrinetx\fP was written by Brendan Grieve and Roongroj Phoophuangpairoj.
+.sp
+This man page written for the SlackBuilds.org project
+by B. Watson, and is licensed under the WTFPL.
+.SH SEE ALSO
+.sp
+\fBgtetrinet\fP(6)
+.sp
+The tetrinetx homepage: \fI\%https://tetrinetx.sourceforge.net/\fP
+.\" Generated by docutils manpage writer.
+.
diff --git a/games/tetrinetx/tetrinetx.SlackBuild b/games/tetrinetx/tetrinetx.SlackBuild
new file mode 100644
index 0000000000..9e78ab7857
--- /dev/null
+++ b/games/tetrinetx/tetrinetx.SlackBuild
@@ -0,0 +1,131 @@
+#!/bin/bash
+
+# Slackware build script for tetrinetx
+
+# Written by B. Watson (urchlay@slackware.uk)
+
+# Licensed under the WTFPL. See http://www.wtfpl.net/txt/copying/ for details.
+
+# The _15 in VERSION is the Debian patchlevel. They're currently
+# the only ones maintaining this at all.
+
+cd $(dirname $0) ; CWD=$(pwd)
+
+PRGNAM=tetrinetx
+VERSION=${VERSION:-1.13.16+qirc_1.40c_15}
+BUILD=${BUILD:-1}
+TAG=${TAG:-_SBo}
+PKGTYPE=${PKGTYPE:-tgz}
+
+if [ -z "$ARCH" ]; then
+ case "$( uname -m )" in
+ i?86) ARCH=i586 ;;
+ arm*) ARCH=arm ;;
+ *) ARCH=$( uname -m ) ;;
+ esac
+fi
+
+if [ ! -z "${PRINT_PACKAGE_NAME}" ]; then
+ echo "$PRGNAM-$VERSION-$ARCH-$BUILD$TAG.$PKGTYPE"
+ exit 0
+fi
+
+TMP=${TMP:-/tmp/SBo}
+PKG=$TMP/package-$PRGNAM
+OUTPUT=${OUTPUT:-/tmp}
+
+if [ "$ARCH" = "i586" ]; then
+ SLKCFLAGS="-O2 -march=i586 -mtune=i686"
+ LIBDIRSUFFIX=""
+elif [ "$ARCH" = "i686" ]; then
+ SLKCFLAGS="-O2 -march=i686 -mtune=i686"
+ LIBDIRSUFFIX=""
+elif [ "$ARCH" = "x86_64" ]; then
+ SLKCFLAGS="-O2 -fPIC"
+ LIBDIRSUFFIX="64"
+else
+ SLKCFLAGS="-O2"
+ LIBDIRSUFFIX=""
+fi
+
+set -e
+
+SRCVER="$( echo $VERSION | cut -d_ -f1-2 | tr _ - )"
+DEBVER="$( echo $VERSION | cut -d_ -f3 )"
+DEBSRCVER="$( echo $VERSION | cut -d+ -f1 )"
+
+# We get two possible filenames for the tarball depending on what
+# exactly was used to download it.
+TARBALL="$CWD/$PRGNAM-$SRCVER.tar.gz"
+if [ ! -e "$TARBALL" ]; then
+ TARBALL="$( echo "$TARBALL" | sed 's,+,%2B,g' )"
+fi
+
+rm -rf $PKG
+mkdir -p $TMP $PKG $OUTPUT
+cd $TMP
+rm -rf $PRGNAM-$SRCVER
+tar xvf $TARBALL
+cd $PRGNAM-$SRCVER
+tar xvf $CWD/${PRGNAM}_${DEBSRCVER}-${DEBVER}.debian.tar.xz
+chown -R root:root .
+find -L . -perm /111 -a \! -perm 755 -a -exec chmod 755 {} \+ -o \
+ \! -perm /111 -a \! -perm 644 -a -exec chmod 644 {} \+
+
+# Incorporate all of Debian's changes. This includes IPv6 support,
+# and putting the config files in /etc/$PRGNAM and log file in /var.
+patch -p1 < debian/patches/debian-changes
+
+# Debian's patch breaks IPv4 support, fix.
+patch -p1 < $CWD/restore_ipv4.diff
+
+if [ "${IPV4:-no}" = "yes" ]; then
+ IPVER=4
+else
+ SLKCFLAGS+=" -DUSE_IPV6"
+ IPVER=6
+fi
+
+PKGDOC=$PKG/usr/doc/$PRGNAM-$VERSION
+
+# Easier to just do this, than to munge the compile script into doing
+# the right thing.
+${CC:-gcc} $SLKCFLAGS -o $PRGNAM src/main.c -ladns
+mkdir -p $PKG/usr/games $PKG/usr/man/man6 $PKG/etc/$PRGNAM $PKGDOC
+install -s -m0755 $PRGNAM $PKG/usr/games
+for i in bin/game*.{conf,secure,{p,}motd}; do
+ cp -a $i $PKG/etc/$PRGNAM/$( basename $i ).new
+done
+cp -a bin/game.*.example $PKG/etc/$PRGNAM
+
+# The Debian man page is useless, I wrote a better one.
+gzip -9c < $CWD/$PRGNAM.6 > $PKG/usr/man/man6/$PRGNAM.6.gz
+
+# Log rotation looks broken: it doesn't restart the daemon after
+# rotating the log. tetrinetx doesn't allow a SIGHUP to reopen the
+# log, meaning we'd have to call the rc script to restart it. And if
+# we do, we kill any games in progress. There's nothing like apache's
+# "graceful" restart. Leave it out, and let the user deal with it (or
+# not; it would take a long time for the log to fill a modern drive).
+#mkdir -p $PKG/etc/logrotate.d
+#cp -a debian/logrotate $PKG/etc/logrotate.d/$PRGNAM
+
+# Bare-bones init script written by SlackBuild author.
+mkdir -p $PKG/etc/rc.d
+install -m0755 -oroot -groot $CWD/rc.$PRGNAM $PKG/etc/rc.d/rc.$PRGNAM.new
+
+# These dirs have to be writable by the user the daemon runs as.
+dirs="$PKG/var/games/$PRGNAM $PKG/var/log/$PRGNAM $PKG/var/run/$PRGNAM"
+mkdir -p $dirs
+chown games:games $dirs
+
+mkdir -p $PKGDOC
+cp -a AUTHORS COPYING ChangeLog README* $PKGDOC
+cat $CWD/$PRGNAM.SlackBuild > $PKGDOC/$PRGNAM.SlackBuild
+
+mkdir -p $PKG/install
+sed "s,@IPVER@,$IPVER," < $CWD/slack-desc > $PKG/install/slack-desc
+cat $CWD/doinst.sh > $PKG/install/doinst.sh
+
+cd $PKG
+/sbin/makepkg -l y -c n $OUTPUT/$PRGNAM-$VERSION-$ARCH-$BUILD$TAG.$PKGTYPE
diff --git a/games/tetrinetx/tetrinetx.info b/games/tetrinetx/tetrinetx.info
new file mode 100644
index 0000000000..91830ba777
--- /dev/null
+++ b/games/tetrinetx/tetrinetx.info
@@ -0,0 +1,12 @@
+PRGNAM="tetrinetx"
+VERSION="1.13.16+qirc_1.40c_15"
+HOMEPAGE="http://tetrinetx.sourceforge.net/"
+DOWNLOAD="https://downloads.sourceforge.net/project/tetrinetx/tetrinetx/1.40c/tetrinetx-1.13.16+qirc-1.40c.tar.gz \
+ https://deb.debian.org/debian/pool/main/t/tetrinetx/tetrinetx_1.13.16-15.debian.tar.xz"
+MD5SUM="32e5306bc26afc9e5acdca9c093947c0 \
+ 7bae8054066d31625944674c4589b530"
+DOWNLOAD_x86_64=""
+MD5SUM_x86_64=""
+REQUIRES="adns"
+MAINTAINER="B. Watson"
+EMAIL="urchlay@slackware.uk"
diff --git a/games/tetrinetx/tetrinetx.rst b/games/tetrinetx/tetrinetx.rst
new file mode 100644
index 0000000000..3a4b08bb04
--- /dev/null
+++ b/games/tetrinetx/tetrinetx.rst
@@ -0,0 +1,132 @@
+.. RST source for tetrinetx(6) man page. Convert with:
+.. rst2man.py tetrinetx.rst > tetrinetx.6
+
+.. |version| replace:: 1.13.16+qirc_1.40c_15
+.. |date| date::
+
+=========
+tetrinetx
+=========
+
+------------------------
+server for tetrinet game
+------------------------
+
+:Manual section: 6
+:Manual group: SlackBuilds.org
+:Date: |date|
+:Version: |version|
+
+SYNOPSIS
+========
+
+/etc/rc.d/rc.tetrinetx [ **start** | **stop** | **restart** ]
+
+DESCRIPTION
+===========
+
+**tetrinetx** provides a server for hosting TetriNET games. TetriNET
+is a multiplayer variant of Tetris played over the internet. Up to
+six people may simultaneously connect to a server to participate in
+a game.
+
+**tetrinetx** supports only the original TetriNET game mode, not the
+TetriFAST mode. Clients attempting to connect with TetriFAST will be
+immediately disconnected.
+
+The actual **tetrinetx** binary should not normally be run
+directly. Instead, use the startup script. If you want to start the
+server at boot, include a call to it in your */etc/rc.d/rc.local*::
+
+ if [ -x /etc/rc.d/rc.tetrinetx ]; then
+ /etc/rc.d/rc.tetrinetx start
+ fi
+
+...and possibly in */etc/rc.d/rc.local_shutdown*::
+
+ if [ -x /etc/rc.d/rc.tetrinetx ]; then
+ /etc/rc.d/rc.tetrinetx stop
+ fi
+
+FILES
+=====
+
+All configuration is done via config files; there are no command-line
+options (other than start/stop/restart, for the init script).
+
+/etc/tetrinetx/game.conf
+ The main config file for **tetrinetx**. Human-readable and editable,
+ with explanatory comments.
+
+/etc/tetrinetx/game.motd
+ The "message of the day" shown to regular clients when they connect.
+
+/etc/tetrinetx/game.pmotd
+ Message shown to playback (spectator) service clients.
+
+/etc/tetrinetx/game.secure
+ Used to define passwords clients can send to authenticate as server
+ admins. By default, nothing is defined here (everything is commented out).
+
+/etc/tetrinetx/game.ban, game.allow, game.ban.compromise
+ Controls who is allowed to connect to the server. These files don't
+ ship with the package, but ".example" files are included to show you
+ how they work.
+
+/var/log/tetrinetx/game.log
+ Log file for **tetrinetx**.
+
+/var/games/tetrinetx/game.winlist, game.winlist2, game.winlist3
+ Lists of game winners.
+
+/var/run/tetrinetx/game.pid
+ PID file for the daemon is normally stored here, although this can be
+ changed in **game.conf**. The PID file is deleted when **tetrinetx**
+ exits normally (including being killed with **SIGTERM**).
+ The init script doesn't actually use the PID file.
+
+NETWORK
+=======
+
+**tetrinetx** uses the following TCP ports:
+
+31457
+ Standard port used for tetrinet clients.
+
+31456
+ Query service. Supposedly can be connected to with a standard IRC client.
+ See:
+
+ /usr/doc/tetrinetx-|version|/README.qirc.spectators
+
+31458
+ "Playback" port, used for connecting as a spectator. **tetrinetx** must
+ have a *query_password* set in **/etc/tetrinetx/game.secure** to enable
+ spectator connections.
+
+LIMITATIONS
+===========
+
+**tetrinetx** can only be compiled for *either* IPv4 *or* IPv6
+support, not both. The SlackBuilds.org build allows choosing this at
+build time.
+
+COPYRIGHT
+=========
+
+See the file /usr/doc/tetrinetx-|version|/COPYING for license information.
+
+AUTHORS
+=======
+
+**tetrinetx** was written by Brendan Grieve and Roongroj Phoophuangpairoj.
+
+This man page written for the SlackBuilds.org project
+by B. Watson, and is licensed under the WTFPL.
+
+SEE ALSO
+========
+
+**gtetrinet**\(6)
+
+The tetrinetx homepage: https://tetrinetx.sourceforge.net/
diff --git a/games/tint/README b/games/tint/README
new file mode 100644
index 0000000000..d903ad2b32
--- /dev/null
+++ b/games/tint/README
@@ -0,0 +1,7 @@
+TINT Is Not Tetris
+
+As the title suggests, this is a clone of the original tetris game.
+
+The game is as close to the original as possible, but there are a few
+differences. Nevertheless, it's probably the closest to the original
+that you'll ever find in the UNIX world.
diff --git a/games/tint/doinst.sh b/games/tint/doinst.sh
new file mode 100644
index 0000000000..7023b60665
--- /dev/null
+++ b/games/tint/doinst.sh
@@ -0,0 +1,7 @@
+touch /var/games/tint.scores
+chown root:games /var/games/tint.scores
+chmod 0664 /var/games/tint.scores
+
+if [ -x /usr/bin/update-desktop-database ]; then
+ /usr/bin/update-desktop-database -q usr/share/applications >/dev/null 2>&1
+fi
diff --git a/games/tint/slack-desc b/games/tint/slack-desc
new file mode 100644
index 0000000000..9dac22254e
--- /dev/null
+++ b/games/tint/slack-desc
@@ -0,0 +1,19 @@
+# HOW TO EDIT THIS FILE:
+# The "handy ruler" below makes it easier to edit a package description.
+# Line up the first '|' above the ':' following the base package name, and
+# the '|' on the right side marks the last column you can put a character in.
+# You must make exactly 11 lines for the formatting to be correct. It's also
+# customary to leave one space after the ':' except on otherwise blank lines.
+
+ |-----handy-ruler------------------------------------------------------|
+tint: tint (tetris clone for the terminal)
+tint:
+tint: TINT Is Not Tetris
+tint:
+tint: As the title suggests, this is a clone of the original tetris game.
+tint:
+tint: The game is as close to the original as possible, but there are a
+tint: few differences. Nevertheless, it's probably the closest to the
+tint: original that you'll ever find in the UNIX world.
+tint:
+tint: Homepage: https://packages.debian.org/source/sid/tint
diff --git a/games/tint/tint.SlackBuild b/games/tint/tint.SlackBuild
new file mode 100644
index 0000000000..cd824dc768
--- /dev/null
+++ b/games/tint/tint.SlackBuild
@@ -0,0 +1,100 @@
+#!/bin/bash
+
+# Slackware build script for tint
+
+# Copyright 2022 Alexander Verbovetsky Moscow Russia
+# All rights reserved.
+#
+# Redistribution and use of this script, with or without modification, is
+# permitted provided that the following conditions are met:
+#
+# 1. Redistributions of this script must retain the above copyright
+# notice, this list of conditions and the following disclaimer.
+#
+# THIS SOFTWARE IS PROVIDED BY THE AUTHOR "AS IS" AND ANY EXPRESS OR IMPLIED
+# WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE IMPLIED WARRANTIES OF
+# MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE ARE DISCLAIMED. IN NO
+# EVENT SHALL THE AUTHOR BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL,
+# SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT LIMITED TO,
+# PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, DATA, OR PROFITS;
+# OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY,
+# WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR
+# OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF THIS SOFTWARE, EVEN IF
+# ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
+
+cd $(dirname $0) ; CWD=$(pwd)
+
+PRGNAM=tint
+VERSION=${VERSION:-0.07}
+BUILD=${BUILD:-1}
+TAG=${TAG:-_SBo}
+PKGTYPE=${PKGTYPE:-tgz}
+
+if [ -z "$ARCH" ]; then
+ case "$( uname -m )" in
+ i?86) ARCH=i586 ;;
+ arm*) ARCH=arm ;;
+ *) ARCH=$( uname -m ) ;;
+ esac
+fi
+
+if [ ! -z "${PRINT_PACKAGE_NAME}" ]; then
+ echo "$PRGNAM-$VERSION-$ARCH-$BUILD$TAG.$PKGTYPE"
+ exit 0
+fi
+
+TMP=${TMP:-/tmp/SBo}
+PKG=$TMP/package-$PRGNAM
+OUTPUT=${OUTPUT:-/tmp}
+
+if [ "$ARCH" = "i586" ]; then
+ SLKCFLAGS="-O2 -march=i586 -mtune=i686"
+ LIBDIRSUFFIX=""
+elif [ "$ARCH" = "i686" ]; then
+ SLKCFLAGS="-O2 -march=i686 -mtune=i686"
+ LIBDIRSUFFIX=""
+elif [ "$ARCH" = "x86_64" ]; then
+ SLKCFLAGS="-O2 -fPIC"
+ LIBDIRSUFFIX="64"
+else
+ SLKCFLAGS="-O2"
+ LIBDIRSUFFIX=""
+fi
+
+set -e
+
+rm -rf $PKG
+mkdir -p $TMP $PKG $OUTPUT
+cd $TMP
+rm -rf $PRGNAM-$VERSION
+tar xvf $CWD/${PRGNAM}_$VERSION.tar.xz
+cd $PRGNAM-$VERSION
+chown -R root:root .
+find -L . \
+ \( -perm 777 -o -perm 775 -o -perm 750 -o -perm 711 -o -perm 555 \
+ -o -perm 511 \) -exec chmod 755 {} \; -o \
+ \( -perm 666 -o -perm 664 -o -perm 640 -o -perm 600 -o -perm 444 \
+ -o -perm 440 -o -perm 400 \) -exec chmod 644 {} \;
+
+CFLAGS="$SLKCFLAGS" \
+make
+
+install -D -o root -g games -m 2755 -s tint $PKG/usr/bin/tint
+sed -i 's|/usr/share/doc/tint|/usr/doc/tint-*|' tint.6
+install -D -m 644 tint.6 $PKG/usr/man/man6/tint.6
+gzip -9 $PKG/usr/man/man6/tint.6
+install -D -m 644 debian/tint.png $PKG/usr/share/pixmaps/tint.png
+install -D -m 644 debian/tint.desktop $PKG/usr/share/applications/tint.desktop
+
+mkdir -p $PKG/var/games
+
+mkdir -p $PKG/usr/doc/$PRGNAM-$VERSION
+cp -a NOTES debian/changelog $PKG/usr/doc/$PRGNAM-$VERSION
+cat $CWD/$PRGNAM.SlackBuild > $PKG/usr/doc/$PRGNAM-$VERSION/$PRGNAM.SlackBuild
+
+mkdir -p $PKG/install
+cat $CWD/slack-desc > $PKG/install/slack-desc
+cat $CWD/doinst.sh > $PKG/install/doinst.sh
+
+cd $PKG
+/sbin/makepkg -l y -c n $OUTPUT/$PRGNAM-$VERSION-$ARCH-$BUILD$TAG.$PKGTYPE
diff --git a/games/tint/tint.info b/games/tint/tint.info
new file mode 100644
index 0000000000..6290b10bd8
--- /dev/null
+++ b/games/tint/tint.info
@@ -0,0 +1,10 @@
+PRGNAM="tint"
+VERSION="0.07"
+HOMEPAGE="https://packages.debian.org/source/sid/tint"
+DOWNLOAD="https://deb.debian.org/debian/pool/main/t/tint/tint_0.07.tar.xz"
+MD5SUM="f6360a9d96f0821d2aee1095c91a9a1f"
+DOWNLOAD_x86_64=""
+MD5SUM_x86_64=""
+REQUIRES=""
+MAINTAINER="Alexander Verbovetsky"
+EMAIL="alik@ejik.org"
diff --git a/games/tintin/README b/games/tintin/README
index d91f1ab991..7618409746 100644
--- a/games/tintin/README
+++ b/games/tintin/README
@@ -1,14 +1,15 @@
-TinTin++ is a terminal-based MUD/MOO/MUSH client designed to be light
-and extensible. It includes a custom scripting language which supports
-event triggers, timers, aliases, and speedwalking among other features. It
-also supports the inclusion of external scripting languages such as perl,
-python, or ruby via system calls.
+TinTin++ is a terminal-based MUD/MOO/MUSH client designed to be
+light and extensible. It includes a custom scripting language which
+supports event triggers, timers, aliases, and speedwalking among
+other features. It also supports the inclusion of external scripting
+languages such as perl, python, or ruby via system calls.
-TinTin++ supports MCCP (Mud Client Compression Protocol), MMCP (Mud Master
-Chat Protocol), xterm 256 colors, most TELNET options used by MUDs, as
-well as those required to login via telnet on Linux / Mac OS X servers,
-and an auto mapper with a VT100 map display. Being a console client
-TinTin++ works with most screen readers, and its non graphical command
-interface makes the client particularly screen reader / blind friendly.
+TinTin++ supports MCCP (Mud Client Compression Protocol), MMCP (Mud
+Master Chat Protocol), xterm 256 colors, most TELNET options used
+by MUDs, as well as those required to login via telnet on Linux /
+Mac OS X servers, and an auto mapper with a VT100 map display. Being
+a console client TinTin++ works with most screen readers, and its
+non graphical command interface makes the client particularly screen
+reader / blind friendly.
Note: Executable is installed as /usr/bin/tt++ by default.
diff --git a/games/tintin/tintin.SlackBuild b/games/tintin/tintin.SlackBuild
index 7d345332db..e31a542721 100644
--- a/games/tintin/tintin.SlackBuild
+++ b/games/tintin/tintin.SlackBuild
@@ -1,4 +1,4 @@
-#!/bin/sh
+#!/bin/bash
# Slackware build script for tintin++
@@ -21,26 +21,36 @@
# OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF THIS SOFTWARE, EVEN IF
# ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
+cd $(dirname $0) ; CWD=$(pwd)
+
PRGNAM=tintin
VERSION=${VERSION:-2.01.1}
BUILD=${BUILD:-1}
TAG=${TAG:-_SBo}
+PKGTYPE=${PKGTYPE:-tgz}
if [ -z "$ARCH" ]; then
case "$( uname -m )" in
- i?86) ARCH=i486 ;;
+ i?86) ARCH=i586 ;;
arm*) ARCH=arm ;;
*) ARCH=$( uname -m ) ;;
esac
fi
-CWD=$(pwd)
+# If the variable PRINT_PACKAGE_NAME is set, then this script will report what
+# the name of the created package would be, and then exit. This information
+# could be useful to other scripts.
+if [ ! -z "${PRINT_PACKAGE_NAME}" ]; then
+ echo "$PRGNAM-$VERSION-$ARCH-$BUILD$TAG.$PKGTYPE"
+ exit 0
+fi
+
TMP=${TMP:-/tmp/SBo}
PKG=$TMP/package-$PRGNAM
OUTPUT=${OUTPUT:-/tmp}
-if [ "$ARCH" = "i486" ]; then
- SLKCFLAGS="-O2 -march=i486 -mtune=i686"
+if [ "$ARCH" = "i586" ]; then
+ SLKCFLAGS="-O2 -march=i586 -mtune=i686"
LIBDIRSUFFIX=""
elif [ "$ARCH" = "i686" ]; then
SLKCFLAGS="-O2 -march=i686 -mtune=i686"
@@ -96,4 +106,4 @@ mkdir -p $PKG/install
cat $CWD/slack-desc > $PKG/install/slack-desc
cd $PKG
-/sbin/makepkg -l y -c n $OUTPUT/$PRGNAM-$VERSION-$ARCH-$BUILD$TAG.${PKGTYPE:-tgz}
+/sbin/makepkg -l y -c n $OUTPUT/$PRGNAM-$VERSION-$ARCH-$BUILD$TAG.$PKGTYPE
diff --git a/games/tkgames/README b/games/tkgames/README
new file mode 100644
index 0000000000..b8a49030b2
--- /dev/null
+++ b/games/tkgames/README
@@ -0,0 +1,13 @@
+tkgames (a collection of card and puzzle games)
+
+tkgames is a small collection of simple games written in Tcl, using Tk
+for the user interface. Included games:
+
+- polypuzzle, a rather difficult geometric puzzle game.
+- tkhangman, word game.
+- tkhearts, Hearts card game, play against computer.
+- tksol (TkSolitaire), classic Patience solitaire card game.
+- tkspider, solitaire card game.
+- tktk (TkTimeKiller), pyramid solitaire card game.
+- tktp (TkTripeaks), a simpler pyramid solitaire card game.
+- tkyahtzee, dice game.
diff --git a/games/tkgames/desktop/polypuzzle.desktop b/games/tkgames/desktop/polypuzzle.desktop
new file mode 100644
index 0000000000..b06831904c
--- /dev/null
+++ b/games/tkgames/desktop/polypuzzle.desktop
@@ -0,0 +1,8 @@
+[Desktop Entry]
+Name=PolyPuzzle
+Comment=Geometric puzzle game
+Exec=polypuzzle
+Icon=polypuzzle
+Type=Application
+Terminal=false
+Categories=Game;LogicGame;
diff --git a/games/tkgames/desktop/tkhangman.desktop b/games/tkgames/desktop/tkhangman.desktop
new file mode 100644
index 0000000000..d664a49c9b
--- /dev/null
+++ b/games/tkgames/desktop/tkhangman.desktop
@@ -0,0 +1,8 @@
+[Desktop Entry]
+Name=TkHangMan
+Comment=Word puzzle game
+Exec=tkhangman
+Icon=tkhangman
+Type=Application
+Terminal=false
+Categories=Game;LogicGame;
diff --git a/games/tkgames/desktop/tkhearts.desktop b/games/tkgames/desktop/tkhearts.desktop
new file mode 100644
index 0000000000..f8d66012fa
--- /dev/null
+++ b/games/tkgames/desktop/tkhearts.desktop
@@ -0,0 +1,8 @@
+[Desktop Entry]
+Name=TkHearts
+Comment=Hearts card game
+Exec=tkhearts
+Icon=tkgames-cards
+Type=Application
+Terminal=false
+Categories=Game;CardGame;
diff --git a/games/tkgames/desktop/tksol.desktop b/games/tkgames/desktop/tksol.desktop
new file mode 100644
index 0000000000..ee07b7e14d
--- /dev/null
+++ b/games/tkgames/desktop/tksol.desktop
@@ -0,0 +1,8 @@
+[Desktop Entry]
+Name=TkSolitaire
+Comment=Patience solitaire card game
+Exec=tksol
+Icon=tkgames-cards
+Type=Application
+Terminal=false
+Categories=Game;CardGame;
diff --git a/games/tkgames/desktop/tkspider.desktop b/games/tkgames/desktop/tkspider.desktop
new file mode 100644
index 0000000000..1c2abcf64f
--- /dev/null
+++ b/games/tkgames/desktop/tkspider.desktop
@@ -0,0 +1,8 @@
+[Desktop Entry]
+Name=TkSpider
+Comment=Solitaire card game
+Exec=tkspider
+Icon=tkgames-cards
+Type=Application
+Terminal=false
+Categories=Game;CardGame;
diff --git a/games/tkgames/desktop/tktk.desktop b/games/tkgames/desktop/tktk.desktop
new file mode 100644
index 0000000000..ddca5b66af
--- /dev/null
+++ b/games/tkgames/desktop/tktk.desktop
@@ -0,0 +1,8 @@
+[Desktop Entry]
+Name=TkTimeKiller
+Comment=Pyramid solitaire card game
+Exec=tktk
+Icon=tkgames-cards
+Type=Application
+Terminal=false
+Categories=Game;CardGame;
diff --git a/games/tkgames/desktop/tktp.desktop b/games/tkgames/desktop/tktp.desktop
new file mode 100644
index 0000000000..ef43623631
--- /dev/null
+++ b/games/tkgames/desktop/tktp.desktop
@@ -0,0 +1,8 @@
+[Desktop Entry]
+Name=TkTriPeaks
+Comment=Pyramid solitaire card game
+Exec=tktp
+Icon=tkgames-cards
+Type=Application
+Terminal=false
+Categories=Game;CardGame;
diff --git a/games/tkgames/desktop/tkyahtzee.desktop b/games/tkgames/desktop/tkyahtzee.desktop
new file mode 100644
index 0000000000..7e9ad43624
--- /dev/null
+++ b/games/tkgames/desktop/tkyahtzee.desktop
@@ -0,0 +1,8 @@
+[Desktop Entry]
+Name=TkYahtzee
+Comment=Dice game
+Exec=tkyahtzee
+Icon=tkyahtzee
+Type=Application
+Terminal=false
+Categories=Game;LogicGame;
diff --git a/games/tkgames/doinst.sh b/games/tkgames/doinst.sh
new file mode 100644
index 0000000000..3e5691a052
--- /dev/null
+++ b/games/tkgames/doinst.sh
@@ -0,0 +1,9 @@
+if [ -x /usr/bin/update-desktop-database ]; then
+ /usr/bin/update-desktop-database -q usr/share/applications >/dev/null 2>&1
+fi
+
+if [ -e usr/share/icons/hicolor/icon-theme.cache ]; then
+ if [ -x /usr/bin/gtk-update-icon-cache ]; then
+ /usr/bin/gtk-update-icon-cache usr/share/icons/hicolor >/dev/null 2>&1
+ fi
+fi
diff --git a/games/tkgames/icons/polypuzzle.png b/games/tkgames/icons/polypuzzle.png
new file mode 100644
index 0000000000..828bae586f
--- /dev/null
+++ b/games/tkgames/icons/polypuzzle.png
Binary files differ
diff --git a/games/tkgames/icons/tkgames-cards.png b/games/tkgames/icons/tkgames-cards.png
new file mode 100644
index 0000000000..9ce7550fd2
--- /dev/null
+++ b/games/tkgames/icons/tkgames-cards.png
Binary files differ
diff --git a/games/tkgames/icons/tkhangman.png b/games/tkgames/icons/tkhangman.png
new file mode 100644
index 0000000000..123e8d9e7a
--- /dev/null
+++ b/games/tkgames/icons/tkhangman.png
Binary files differ
diff --git a/games/tkgames/icons/tkyahtzee.png b/games/tkgames/icons/tkyahtzee.png
new file mode 100644
index 0000000000..a1ad54b92d
--- /dev/null
+++ b/games/tkgames/icons/tkyahtzee.png
Binary files differ
diff --git a/games/tkgames/slack-desc b/games/tkgames/slack-desc
new file mode 100644
index 0000000000..fb360b8430
--- /dev/null
+++ b/games/tkgames/slack-desc
@@ -0,0 +1,19 @@
+# HOW TO EDIT THIS FILE:
+# The "handy ruler" below makes it easier to edit a package description.
+# Line up the first '|' above the ':' following the base package name, and
+# the '|' on the right side marks the last column you can put a character in.
+# You must make exactly 11 lines for the formatting to be correct. It's also
+# customary to leave one space after the ':' except on otherwise blank lines.
+
+ |-----handy-ruler------------------------------------------------------|
+tkgames: tkgames (a collection of card and puzzle games)
+tkgames:
+tkgames: tkgames is a small collection of simple games written in Tcl, using Tk
+tkgames: for the user interface. Included games: polypuzzle tkhangman tkhearts
+tkgames: tksol tkspider tktk tktp tkyahtzee.
+tkgames:
+tkgames:
+tkgames:
+tkgames:
+tkgames:
+tkgames:
diff --git a/games/tkgames/tkgames.SlackBuild b/games/tkgames/tkgames.SlackBuild
new file mode 100644
index 0000000000..47f0b3eab4
--- /dev/null
+++ b/games/tkgames/tkgames.SlackBuild
@@ -0,0 +1,99 @@
+#!/bin/bash
+
+# Slackware build script for tkgames
+
+# Written by B. Watson (urchlay@slackware.uk)
+
+# Licensed under the WTFPL. See http://www.wtfpl.net/txt/copying/ for details.
+
+# Note: I'm only packaging the games. The other stuff is:
+# - alert, basically xmessage rewritten in tcl/tk.
+# - tkexe, a "run command" dialog (we have plenty of those already).
+# - mamex and sdlmamex, outdated frontends for outdated MAME ports.
+# modern MAME has its own frontend anyway.
+# - the docs mention "Scid vs. PC" and "TkTimidity++", but these aren't
+# in the tarball.
+# - also not packaging tksol/tksol_green (same game, different background).
+
+# If I'm being 100% honest, I really only care about tkhearts. There
+# aren't a lot of choices for playing Hearts on Linux, unless you want
+# to play in a browser and look at ads.
+
+cd $(dirname $0) ; CWD=$(pwd)
+
+PRGNAM=tkgames
+VERSION=${VERSION:-1.3}
+BUILD=${BUILD:-1}
+TAG=${TAG:-_SBo}
+PKGTYPE=${PKGTYPE:-tgz}
+ARCH=noarch
+
+if [ ! -z "${PRINT_PACKAGE_NAME}" ]; then
+ echo "$PRGNAM-$VERSION-$ARCH-$BUILD$TAG.$PKGTYPE"
+ exit 0
+fi
+
+TMP=${TMP:-/tmp/SBo}
+PKG=$TMP/package-$PRGNAM
+OUTPUT=${OUTPUT:-/tmp}
+
+set -e
+
+rm -rf $PKG
+mkdir -p $TMP $PKG $OUTPUT
+cd $TMP
+rm -rf $PRGNAM-$VERSION
+tar xvf $CWD/$PRGNAM-$VERSION.tgz
+cd $PRGNAM-$VERSION
+chown -R root:root .
+find -L . -perm /111 -a \! -perm 755 -a -exec chmod 755 {} \+ -o \
+ \! -perm /111 -a \! -perm 644 -a -exec chmod 644 {} \+
+
+PKGDOC=$PKG/usr/doc/$PRGNAM-$VERSION
+mkdir -p $PKG/usr/games $PKG/usr/share/games $PKG/usr/man/man6 $PKGDOC
+
+# cruft and hidden docs.
+cp -a tksol/readme $PKGDOC/tksol.txt
+cp -a tkhangman/README $PKGDOC/tkhangman.txt
+gzip -9c < tksol/tksol.6 > $PKG/usr/man/man6/tksol.6.gz
+rm -rf */.menus.swp tksol/{tksol.6,readme,install,tksol_green} \
+ tkhangman/{extras,hangman,README,INSTALL}
+
+# tkhearts logs too much to stdout, including spoilers (e.g. if one of
+# the AIs decides to shoot the moon). squelch.
+sed -i '/^[\t ]*puts *"/s,^,#,' tkhearts-*
+
+# These are self-contained executables, run from anywhere, no external files.
+for i in tkhearts tkspider tktk tktp tkyahtzee; do
+ cp -a $i-* $PKG/usr/games/$i
+done
+
+# These need external files, and have an install directory.
+for i in polypuzzle tkhangman tksol; do
+ sed -i 's,/usr/local/lib,/usr/share/games,' $i/$i
+ mv $i/$i $PKG/usr/games/$i
+ cp -a $i $PKG/usr/share/games/$i
+done
+
+# Some icons extracted from the tcl code (where they appear as
+# base64'ed gifs), some were already external files. Tweaked them with
+# the gimp to look good as 64x64.
+mkdir -p $PKG/usr/share/icons/hicolor/64x64/apps $PKG/usr/share/pixmaps
+install -oroot -groot -m0644 $CWD/icons/* $PKG/usr/share/icons/hicolor/64x64/apps
+for i in $CWD/icons/*; do
+ ln -s ../icons/hicolor/64x64/apps/$(basename $i) $PKG/usr/share/pixmaps
+done
+
+# .desktop files written for this SlackBuild.
+mkdir -p $PKG/usr/share/applications
+install -oroot -groot -m0644 $CWD/desktop/*.desktop $PKG/usr/share/applications
+
+cp -a docs/index.{html,txt} docs/images $PKGDOC
+cat $CWD/$PRGNAM.SlackBuild > $PKGDOC/$PRGNAM.SlackBuild
+
+mkdir -p $PKG/install
+cat $CWD/slack-desc > $PKG/install/slack-desc
+cat $CWD/doinst.sh > $PKG/install/doinst.sh
+
+cd $PKG
+/sbin/makepkg -l y -c n $OUTPUT/$PRGNAM-$VERSION-$ARCH-$BUILD$TAG.$PKGTYPE
diff --git a/games/tkgames/tkgames.info b/games/tkgames/tkgames.info
new file mode 100644
index 0000000000..44ec81fd0f
--- /dev/null
+++ b/games/tkgames/tkgames.info
@@ -0,0 +1,10 @@
+PRGNAM="tkgames"
+VERSION="1.3"
+HOMEPAGE="https://sourceforge.net/projects/tkgames/"
+DOWNLOAD="https://downloads.sourceforge.net/project/tkgames/tarballs/main/tkgames-1.3.tgz"
+MD5SUM="74f07b039b3f2ea6d4790478fe9f76e7"
+DOWNLOAD_x86_64=""
+MD5SUM_x86_64=""
+REQUIRES=""
+MAINTAINER="B. Watson"
+EMAIL="urchlay@slackware.uk"
diff --git a/games/tome-ah/README b/games/tome-ah/README
index 3437ecaf2e..ac1b2ad75a 100644
--- a/games/tome-ah/README
+++ b/games/tome-ah/README
@@ -1,12 +1,12 @@
ToME-ah (AnonymousHero's ToME fork) is a game that emphasizes intricate,
-challenging, and varied gameplay over graphics. Hundreds of different monsters
-in randomly-generated, unpredictable dungeons will strive to slay you by
-various means, and you counter - if you survive - by developing the skills of
-your choice and wielding mighty artifacts.
+challenging, and varied gameplay over graphics. Hundreds of different
+monsters in randomly-generated, unpredictable dungeons will strive to
+slay you by various means, and you counter--if you survive--by develop-
+ing the skills of your choice and wielding mighty artifacts.
-forum:
-http://forums.te4.org/viewforum.php?f=28&sid=2f757a7105dcbcd648ccf0c566334dc5
+forum (URL continues on next line): http://forums.te4.org/viewforum.php?
+f=28&sid=2f757a7105dcbcd648ccf0c566334dc5
Usenet newsgroup: nntp://rec.games.roguelike.angband
-You can install ToME-SX alongside other ToME 2 forks, but must back up, delete
-save folder (~/.tome) between different games.
+You can install ToME-ah alongside other ToME2 versions, but must backup,
+delete save folder (~/.tome) between different games.
diff --git a/games/tome-ah/tome-ah.SlackBuild b/games/tome-ah/tome-ah.SlackBuild
index 36c0b29e49..1ec74828d4 100644
--- a/games/tome-ah/tome-ah.SlackBuild
+++ b/games/tome-ah/tome-ah.SlackBuild
@@ -1,8 +1,8 @@
-#!/bin/sh
+#!/bin/bash
# Slackware build script for tome-ah
-# Copyright 2017, SlackBuilds.org Project, David Melik, Spokane, WA, USA
+# Copyright 2023, SlackBuilds.org Project, David Melik, Spokane, WA, USA
# All rights reserved.
#
# Redistribution and use of this script, with or without modification, is
@@ -22,12 +22,17 @@
# OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF THIS SOFTWARE, EVEN IF
# ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
+cd $(dirname $0) ; CWD=$(pwd)
+
PRGNAM=tome-ah
-VERSION=${VERSION:-2.3.11_ah}
+VERSION=${VERSION:-20230210_2209ab8}
BUILD=${BUILD:-1}
TAG=${TAG:-_SBo}
+PKGTYPE=${PKGTYPE:-tgz}
+
+GITVER="$( echo $VERSION | cut -d_ -f2 )"
-SRCVER=$(echo $VERSION | tr _ -)
+SRCNAM=tome2
if [ -z "$ARCH" ]; then
case "$( uname -m )" in
@@ -37,7 +42,14 @@ if [ -z "$ARCH" ]; then
esac
fi
-CWD=$(pwd)
+# If the variable PRINT_PACKAGE_NAME is set, then this script will report what
+# the name of the created package would be, and then exit. This information
+# could be useful to other scripts.
+if [ ! -z "${PRINT_PACKAGE_NAME}" ]; then
+ echo "$PRGNAM-$VERSION-$ARCH-$BUILD$TAG.$PKGTYPE"
+ exit 0
+fi
+
TMP=${TMP:-/tmp/SBo}
PKG=$TMP/package-$PRGNAM
OUTPUT=${OUTPUT:-/tmp}
@@ -61,9 +73,9 @@ set -e
rm -rf $PKG
mkdir -p $TMP $PKG $OUTPUT
cd $TMP
-rm -rf tome2-$SRCVER
-tar xvf $CWD/tome2-$SRCVER.tar.gz
-cd tome2-$SRCVER
+rm -rf $SRCNAM-$GITVER*
+tar xvf $CWD/$SRCNAM-$GITVER*.tar.gz
+cd $SRCNAM-$GITVER*
chown -R root:root .
find -L . \
\( -perm 777 -o -perm 775 -o -perm 750 -o -perm 711 -o -perm 555 \
@@ -84,12 +96,16 @@ cd build
make install DESTDIR=$PKG
cd -
-find $PKG -print0 | xargs -0 file | grep -e "executable" -e "shared object" | grep ELF \
- | cut -f 1 -d : | xargs strip --strip-unneeded 2> /dev/null
+find $PKG -print0 | xargs -0 file | grep -e "executable" -e "shared object" | grep ELF | cut -f 1 -d : | xargs strip \
+ --strip-unneeded 2> /dev/null
-install -m 0755 $CWD/tome.sh $PKG/usr/share/games/$PRGNAM/bin/tome.sh
+install -m 0755 $CWD/tome-gcu.sh $PKG/usr/share/games/$PRGNAM/bin/tome-gcu.sh
+install -m 0755 $CWD/tome-gtk2.sh $PKG/usr/share/games/$PRGNAM/bin/tome-gtk2.sh
+install -m 0755 $CWD/tome-x11.sh $PKG/usr/share/games/$PRGNAM/bin/tome-x11.sh
mkdir -p $PKG/usr/games
-ln -fs /usr/share/games/$PRGNAM/bin/tome.sh $PKG/usr/games/$PRGNAM
+ln -fs /usr/share/games/$PRGNAM/bin/tome-gcu.sh $PKG/usr/games/tome-gcu-ah
+ln -fs /usr/share/games/$PRGNAM/bin/tome-gtk2.sh $PKG/usr/games/tome-gtk2-ah
+ln -fs /usr/share/games/$PRGNAM/bin/tome-x11.sh $PKG/usr/games/tome-x11-ah
find $PKG -name "delete.me" | xargs rm -f
find $PKG -name ".cvsignore" | xargs rm -f
@@ -98,7 +114,7 @@ install -m 0644 -D $CWD/tome-ah.png $PKG/usr/share/pixmaps/tome-ah.png
install -m 0644 -D $CWD/$PRGNAM.desktop $PKG/usr/share/applications/$PRGNAM.desktop
mkdir -p $PKG/usr/doc/$PRGNAM-$VERSION
-cp -a BUGS.txt changes.txt credits.txt $PKG/usr/share/games/$PRGNAM/lib/tome/help \
+cp -a doc/DEBUG.txt doc/RELEASE.txt doc/changes.txt doc/credits.txt $PKG/usr/share/games/$PRGNAM/lib/tome/help \
$PKG/usr/doc/$PRGNAM-$VERSION
cat $CWD/$PRGNAM.SlackBuild > $PKG/usr/doc/$PRGNAM-$VERSION/$PRGNAM.SlackBuild
@@ -107,4 +123,4 @@ cat $CWD/slack-desc > $PKG/install/slack-desc
cat $CWD/doinst.sh > $PKG/install/doinst.sh
cd $PKG
-/sbin/makepkg -l y -c n $OUTPUT/$PRGNAM-$VERSION-$ARCH-$BUILD$TAG.${PKGTYPE:-tgz}
+/sbin/makepkg -l y -c n $OUTPUT/$PRGNAM-$VERSION-$ARCH-$BUILD$TAG.$PKGTYPE
diff --git a/games/tome-ah/tome-ah.info b/games/tome-ah/tome-ah.info
index a202ec35ca..44fb840f99 100644
--- a/games/tome-ah/tome-ah.info
+++ b/games/tome-ah/tome-ah.info
@@ -1,8 +1,8 @@
PRGNAM="tome-ah"
-VERSION="2.3.11_ah"
+VERSION="20230210_2209ab8"
HOMEPAGE="https://github.com/tome2/"
-DOWNLOAD="https://github.com/tome2/tome2/archive/v2.3.11-ah/tome2-2.3.11-ah.tar.gz"
-MD5SUM="04b83e91f1b31a39a1585f07ef7d6acf"
+DOWNLOAD="https://github.com/tome2/tome2/archive/2209ab83f31967b6ca0b1ba6ef298bde5a82fbd4/tome2-2209ab83f31967b6ca0b1ba6ef298bde5a82fbd4.tar.gz"
+MD5SUM="9f2a489e969ee5a1dad2b6ea9aaf86e6"
DOWNLOAD_x86_64=""
MD5SUM_x86_64=""
REQUIRES=""
diff --git a/games/tome-ah/tome-gcu.sh b/games/tome-ah/tome-gcu.sh
new file mode 100644
index 0000000000..b0cc67e6c7
--- /dev/null
+++ b/games/tome-ah/tome-gcu.sh
@@ -0,0 +1,6 @@
+#!/bin/sh
+#USERDIR=$(pwd)
+GAMES_TOME=/usr/share/games/tome-ah/bin
+cd $GAMES_TOME
+exec ${GAMES_TOME}/tome-gcu "$@"
+#cd $USERDIR
diff --git a/games/tome-ah/tome-gtk2.sh b/games/tome-ah/tome-gtk2.sh
new file mode 100644
index 0000000000..92ea326c22
--- /dev/null
+++ b/games/tome-ah/tome-gtk2.sh
@@ -0,0 +1,6 @@
+#!/bin/sh
+#USERDIR=$(pwd)
+GAMES_TOME=/usr/share/games/tome-ah/bin
+cd $GAMES_TOME
+exec ${GAMES_TOME}/tome-gtk2 "$@"
+#cd $USERDIR
diff --git a/games/tome-ah/tome-x11.sh b/games/tome-ah/tome-x11.sh
new file mode 100644
index 0000000000..59e19c244f
--- /dev/null
+++ b/games/tome-ah/tome-x11.sh
@@ -0,0 +1,6 @@
+#!/bin/sh
+#USERDIR=$(pwd)
+GAMES_TOME=/usr/share/games/tome-ah/bin
+cd $GAMES_TOME
+exec ${GAMES_TOME}/tome-x11 "$@"
+#cd $USERDIR
diff --git a/games/tome-ah/tome.sh b/games/tome-ah/tome.sh
deleted file mode 100644
index d71e45b553..0000000000
--- a/games/tome-ah/tome.sh
+++ /dev/null
@@ -1,6 +0,0 @@
-#!/bin/sh
-USERDIR=$(pwd)
-GAMES_TOME=/usr/share/games/tome-ah/bin
-cd $GAMES_TOME
-exec ${GAMES_TOME}/tome "$@"
-cd $USERDIR
diff --git a/games/tome-sx/tome-sx.SlackBuild b/games/tome-sx/tome-sx.SlackBuild
index e40eb39ef1..b2660e4028 100644
--- a/games/tome-sx/tome-sx.SlackBuild
+++ b/games/tome-sx/tome-sx.SlackBuild
@@ -1,4 +1,4 @@
-#!/bin/sh
+#!/bin/bash
# Slackware build script for tome-sx
@@ -22,10 +22,13 @@
# OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF THIS SOFTWARE, EVEN IF
# ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
+cd $(dirname $0) ; CWD=$(pwd)
+
PRGNAM=tome-sx
VERSION=${VERSION:-20160915_c1fe5a0}
BUILD=${BUILD:-1}
TAG=${TAG:-_SBo}
+PKGTYPE=${PKGTYPE:-tgz}
GITVER="$( echo $VERSION | cut -d_ -f2 )"
@@ -39,7 +42,14 @@ if [ -z "$ARCH" ]; then
esac
fi
-CWD=$(pwd)
+# If the variable PRINT_PACKAGE_NAME is set, then this script will report what
+# the name of the created package would be, and then exit. This information
+# could be useful to other scripts.
+if [ ! -z "${PRINT_PACKAGE_NAME}" ]; then
+ echo "$PRGNAM-$VERSION-$ARCH-$BUILD$TAG.$PKGTYPE"
+ exit 0
+fi
+
TMP=${TMP:-/tmp/SBo}
PKG=$TMP/package-$PRGNAM
OUTPUT=${OUTPUT:-/tmp}
@@ -104,4 +114,4 @@ cat $CWD/slack-desc > $PKG/install/slack-desc
cat $CWD/doinst.sh > $PKG/install/doinst.sh
cd $PKG
-/sbin/makepkg -l y -c n $OUTPUT/$PRGNAM-$VERSION-$ARCH-$BUILD$TAG.${PKGTYPE:-tgz}
+/sbin/makepkg -l y -c n $OUTPUT/$PRGNAM-$VERSION-$ARCH-$BUILD$TAG.$PKGTYPE
diff --git a/games/tome/tome.SlackBuild b/games/tome/tome.SlackBuild
index 18a94f16e7..403559c078 100644
--- a/games/tome/tome.SlackBuild
+++ b/games/tome/tome.SlackBuild
@@ -1,8 +1,8 @@
-#!/bin/sh
+#!/bin/bash
# Slackware build script for tome
-# Copyright 2014-2018 Dimitris Zlatanidis Orestiada, Greece
+# Copyright 2014-2024 Dimitris Zlatanidis Orestiada, Greece
# All rights reserved.
#
# Redistribution and use of this script, with or without modification, is
@@ -22,11 +22,14 @@
# OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF THIS SOFTWARE, EVEN IF
# ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
+cd $(dirname $0) ; CWD=$(pwd)
+
PRGNAM=tome
SRCNAM=t-engine4-src
-VERSION=${VERSION:-1.5.10}
+VERSION=${VERSION:-1.7.6}
BUILD=${BUILD:-1}
TAG=${TAG:-_SBo}
+PKGTYPE=${PKGTYPE:-tgz}
if [ -z "$ARCH" ]; then
case "$( uname -m )" in
@@ -36,7 +39,11 @@ if [ -z "$ARCH" ]; then
esac
fi
-CWD=$(pwd)
+if [ ! -z "${PRINT_PACKAGE_NAME}" ]; then
+ echo "$PRGNAM-$VERSION-$ARCH-$BUILD$TAG.$PKGTYPE"
+ exit 0
+fi
+
TMP=${TMP:-/tmp/SBo}
PKG=$TMP/package-$PRGNAM
OUTPUT=${OUTPUT:-/tmp}
@@ -68,9 +75,9 @@ unzip -oj -qq game/engines/te4-${VERSION}.teae -d icons
chown -R root:root .
find -L . \
\( -perm 777 -o -perm 775 -o -perm 750 -o -perm 711 -o -perm 555 \
- -o -perm 511 \) -exec chmod 755 {} \; -o \
+ -o -perm 511 \) -exec chmod 755 {} \+ -o \
\( -perm 666 -o -perm 664 -o -perm 640 -o -perm 600 -o -perm 444 \
- -o -perm 440 -o -perm 400 \) -exec chmod 644 {} \;
+ -o -perm 440 -o -perm 400 \) -exec chmod 644 {} \+
# correction of SDL2 headers directory
sed -i "s/opt\/SDL-2.0/usr/" premake4.lua
@@ -108,4 +115,4 @@ cat $CWD/slack-desc > $PKG/install/slack-desc
cat $CWD/doinst.sh > $PKG/install/doinst.sh
cd $PKG
-/sbin/makepkg -l y -c n $OUTPUT/$PRGNAM-$VERSION-$ARCH-$BUILD$TAG.${PKGTYPE:-tgz}
+/sbin/makepkg -l y -c n $OUTPUT/$PRGNAM-$VERSION-$ARCH-$BUILD$TAG.$PKGTYPE
diff --git a/games/tome/tome.info b/games/tome/tome.info
index 3ab499f87c..0c38f5245c 100644
--- a/games/tome/tome.info
+++ b/games/tome/tome.info
@@ -1,10 +1,10 @@
PRGNAM="tome"
-VERSION="1.5.10"
+VERSION="1.7.6"
HOMEPAGE="https://te4.org/"
-DOWNLOAD="https://te4.org/dl/t-engine/t-engine4-src-1.5.10.tar.bz2"
-MD5SUM="bd5274590190c32d51411cb05d82bd5f"
+DOWNLOAD="https://te4.org/dl/t-engine/t-engine4-src-1.7.6.tar.bz2"
+MD5SUM="31e78cd88b383a3a8667e2fd90abfd2b"
DOWNLOAD_x86_64=""
MD5SUM_x86_64=""
-REQUIRES="premake SDL2_image SDL2_ttf SDL2_mixer OpenAL"
+REQUIRES="premake"
MAINTAINER="Dimitris Zlatanidis"
-EMAIL="d.zlatanidis@gmail.com"
+EMAIL="dslackw@gmail.com"
diff --git a/games/tong/tong.SlackBuild b/games/tong/tong.SlackBuild
index eff8ca2c41..dce67c8f88 100644
--- a/games/tong/tong.SlackBuild
+++ b/games/tong/tong.SlackBuild
@@ -1,30 +1,40 @@
-#!/bin/sh
+#!/bin/bash
# Generated by Alien's SlackBuild Toolkit: http://slackware.com/~alien/AST
# Copyright 2009, 2010, 2011, 2012 Eric Hameleers, Eindhoven, Netherlands
# Slackware build script for tong
# Written by Owen Swerkstrom <owenswerk@gmail.com>
+cd $(dirname $0) ; CWD=$(pwd)
+
PRGNAM=tong
VERSION=${VERSION:-1.3}
BUILD=${BUILD:-1}
TAG=${TAG:-_SBo}
+PKGTYPE=${PKGTYPE:-tgz}
if [ -z "$ARCH" ]; then
case "$( uname -m )" in
- i?86) export ARCH=i486 ;;
+ i?86) export ARCH=i586 ;;
arm*) export ARCH=arm ;;
*) export ARCH=$( uname -m ) ;;
esac
fi
-CWD=$(pwd)
+# If the variable PRINT_PACKAGE_NAME is set, then this script will report what
+# the name of the created package would be, and then exit. This information
+# could be useful to other scripts.
+if [ ! -z "${PRINT_PACKAGE_NAME}" ]; then
+ echo "$PRGNAM-$VERSION-$ARCH-$BUILD$TAG.$PKGTYPE"
+ exit 0
+fi
+
TMP=${TMP:-/tmp/SBo}
PKG=$TMP/package-$PRGNAM
OUTPUT=${OUTPUT:-/tmp}
-if [ "$ARCH" = "i486" ]; then
- SLKCFLAGS="-O2 -march=i486 -mtune=i686"
+if [ "$ARCH" = "i586" ]; then
+ SLKCFLAGS="-O2 -march=i586 -mtune=i686"
LIBDIRSUFFIX=""
elif [ "$ARCH" = "i686" ]; then
SLKCFLAGS="-O2 -march=i686 -mtune=i686"
@@ -65,4 +75,4 @@ cat $CWD/slack-desc > $PKG/install/slack-desc
cat $CWD/doinst.sh > $PKG/install/doinst.sh
cd $PKG
-/sbin/makepkg -l y -c n $OUTPUT/$PRGNAM-$VERSION-$ARCH-$BUILD$TAG.${PKGTYPE:-tgz}
+/sbin/makepkg -l y -c n $OUTPUT/$PRGNAM-$VERSION-$ARCH-$BUILD$TAG.$PKGTYPE
diff --git a/games/torcs/README b/games/torcs/README
index 63e438c75d..458e3069a6 100644
--- a/games/torcs/README
+++ b/games/torcs/README
@@ -1,3 +1,5 @@
+torcs (highly portable multi platform car racing simulation)
+
TORCS, The Open Racing Car Simulator is a highly portable multi platform
car racing simulation. It is used as ordinary car racing game, as AI
racing game and as research platform. It runs on Linux (x86, AMD64 and
diff --git a/games/torcs/doinst.sh b/games/torcs/doinst.sh
index 392c12adb9..5934a15ab1 100644
--- a/games/torcs/doinst.sh
+++ b/games/torcs/doinst.sh
@@ -2,3 +2,8 @@ if [ -x /usr/bin/update-desktop-database ]; then
/usr/bin/update-desktop-database -q usr/share/applications
fi
+if [ -e usr/share/icons/hicolor/icon-theme.cache ]; then
+ if [ -x /usr/bin/gtk-update-icon-cache ]; then
+ /usr/bin/gtk-update-icon-cache usr/share/icons/hicolor >/dev/null 2>&1
+ fi
+fi
diff --git a/games/torcs/torcs.SlackBuild b/games/torcs/torcs.SlackBuild
index 76ee0f1fae..1949a33f8d 100644
--- a/games/torcs/torcs.SlackBuild
+++ b/games/torcs/torcs.SlackBuild
@@ -1,17 +1,21 @@
-#!/bin/sh
+#!/bin/bash
# Slackware build script for torcs
-# Written by B. Watson (yalhcru@gmail.com)
+# Written by B. Watson (urchlay@slackware.uk)
# Licensed under the WTFPL. See http://www.wtfpl.net/txt/copying/ for details.
+# 20211102 bkw: BUILD=2, new-style icons
# 20170704 bkw: fix build on -current
+cd $(dirname $0) ; CWD=$(pwd)
+
PRGNAM=torcs
VERSION=${VERSION:-1.3.7}
-BUILD=${BUILD:-1}
+BUILD=${BUILD:-2}
TAG=${TAG:-_SBo}
+PKGTYPE=${PKGTYPE:-tgz}
if [ -z "$ARCH" ]; then
case "$( uname -m )" in
@@ -21,7 +25,11 @@ if [ -z "$ARCH" ]; then
esac
fi
-CWD=$(pwd)
+if [ ! -z "${PRINT_PACKAGE_NAME}" ]; then
+ echo "$PRGNAM-$VERSION-$ARCH-$BUILD$TAG.$PKGTYPE"
+ exit 0
+fi
+
TMP=${TMP:-/tmp/SBo}
PKG=$TMP/package-$PRGNAM
OUTPUT=${OUTPUT:-/tmp}
@@ -49,16 +57,13 @@ rm -rf $PRGNAM-$VERSION
tar xvf $CWD/$PRGNAM-$VERSION.tar.bz2
cd $PRGNAM-$VERSION
chown -R root:root .
-find -L . \
- \( -perm 777 -o -perm 775 -o -perm 750 -o -perm 711 -o -perm 555 \
- -o -perm 511 \) -exec chmod 755 {} \; -o \
- \( -perm 666 -o -perm 664 -o -perm 640 -o -perm 600 -o -perm 444 \
- -o -perm 440 -o -perm 400 \) -exec chmod 644 {} \;
+find -L . -perm /111 -a \! -perm 755 -a -exec chmod 755 {} \+ -o \
+ \! -perm /111 -a \! -perm 644 -a -exec chmod 644 {} \+
patch -p1 < $CWD/gcc7.diff
CFLAGS="$SLKCFLAGS" \
-CXXFLAGS="$SLKCFLAGS" \
+CXXFLAGS="$SLKCFLAGS -fpermissive" \
./configure \
--prefix=/usr \
--libdir=/usr/lib$LIBDIRSUFFIX \
@@ -75,15 +80,21 @@ make -j1 datainstall DESTDIR=$PKG
# For some reason `make install' creates all the dirs 0777
find $PKG -type d | xargs chmod 0755
-find $PKG | xargs file | grep -e "executable" -e "shared object" | grep ELF \
+find $PKG/usr/lib$LIBDIRSUFFIX/$PRGNAM -type f -print0 \
+ | xargs -0 file \
+ | grep -e "executable" -e "shared object" | grep ELF \
| cut -f 1 -d : | xargs strip --strip-unneeded 2> /dev/null || true
-# Tenemos una pagina de man en español...
-mkdir -p $PKG/usr/man/man6 $PKG/usr/man/es/man6
-mv doc/man/$PRGNAM.es.6 $PKG/usr/man/es/man6
-mv doc/man/*.6 $PKG/usr/man/man6
+# Tenemos una pagina de man en español... but I finally got around
+# to looking at it, and it's almost content-free. The one piece of
+# 'useful information' is "This program doesn't have any option",
+# which (a) isn't in Spanish, and (b) is *wrong*. So ditch it.
+
+mkdir -p $PKG/usr/man/man6
+rm -f doc/man/$PRGNAM.es.6
+cp doc/man/*.6 $PKG/usr/man/man6
rm -rf doc/man
-gzip $PKG/usr/man/man6/*.6 $PKG/usr/man/es/man6/*.6
+gzip $PKG/usr/man/man6/*.6
# Docs are a bit of a mess...
mkdir -p $PKG/usr/doc/$PRGNAM-$VERSION
@@ -100,12 +111,19 @@ cat $CWD/$PRGNAM.SlackBuild > $PKG/usr/doc/$PRGNAM-$VERSION/$PRGNAM.SlackBuild
mkdir -p $PKG/usr/share/applications
cat $CWD/$PRGNAM.desktop > $PKG/usr/share/applications/$PRGNAM.desktop
+for px in 16 32 48 64; do
+ size=${px}x${px}
+ dir=$PKG/usr/share/icons/hicolor/$size/apps
+ mkdir -p $dir
+ convert -resize $size Ticon.png $dir/$PRGNAM.png
+done
+
mkdir -p $PKG/usr/share/pixmaps
-( cd $PKG/usr/share/pixmaps ; ln -s ../games/$PRGNAM/Ticon.png $PRGNAM.png )
+ln -s ../icons/hicolor/48x48/apps/$PRGNAM.png $PKG/usr/share/pixmaps/$PRGNAM.png
mkdir -p $PKG/install
cat $CWD/slack-desc > $PKG/install/slack-desc
cat $CWD/doinst.sh > $PKG/install/doinst.sh
cd $PKG
-/sbin/makepkg -l y -c n $OUTPUT/$PRGNAM-$VERSION-$ARCH-$BUILD$TAG.${PKGTYPE:-tgz}
+/sbin/makepkg -l y -c n $OUTPUT/$PRGNAM-$VERSION-$ARCH-$BUILD$TAG.$PKGTYPE
diff --git a/games/torcs/torcs.desktop b/games/torcs/torcs.desktop
index 67ca9e2713..ad5e43dfed 100644
--- a/games/torcs/torcs.desktop
+++ b/games/torcs/torcs.desktop
@@ -1,6 +1,6 @@
[Desktop Entry]
Name=TORCS
-Exec=torcs
+Exec=/usr/games/torcs
Type=Application
Icon=torcs
GenericName=The Open Racing Car Simulator
diff --git a/games/torcs/torcs.info b/games/torcs/torcs.info
index 715e385c14..c829a20c69 100644
--- a/games/torcs/torcs.info
+++ b/games/torcs/torcs.info
@@ -1,10 +1,10 @@
PRGNAM="torcs"
VERSION="1.3.7"
HOMEPAGE="http://torcs.sourceforge.net/"
-DOWNLOAD="http://downloads.sourceforge.net/project/torcs/all-in-one/1.3.7/torcs-1.3.7.tar.bz2"
+DOWNLOAD="https://downloads.sourceforge.net/project/torcs/all-in-one/1.3.7/torcs-1.3.7.tar.bz2"
MD5SUM="de314c3e421e8d7d4323d819c5010d23"
DOWNLOAD_x86_64=""
MD5SUM_x86_64=""
REQUIRES="freealut plib"
MAINTAINER="B. Watson"
-EMAIL="yalhcru@gmail.com"
+EMAIL="urchlay@slackware.uk"
diff --git a/games/trackballs/trackballs.SlackBuild b/games/trackballs/trackballs.SlackBuild
index 280d2adc21..cad5b4bd50 100644
--- a/games/trackballs/trackballs.SlackBuild
+++ b/games/trackballs/trackballs.SlackBuild
@@ -1,18 +1,28 @@
-#!/bin/sh
+#!/bin/bash
# Slackware build script for trackballs
-# Written by B. Watson (yalhcru@gmail.com)
+# Written by B. Watson (urchlay@slackware.uk)
# Licensed under the WTFPL. See http://www.wtfpl.net/txt/copying/ for details.
+# 20230107 bkw: update for v1.3.4.
+# 20211018 bkw:
+# - update for v1.3.3
+# - drop guile2.2 dependency (Slackware's guile 3 works OK)
+# - use symlink instead of copy for /usr/share/pixmaps icon
+# - put html docs in actual html/ dir in docdir
+# 20210222 bkw: update for v1.3.2
# 20201024 bkw: update for v1.3.1
# 20170621 bkw: fix build on -current
+cd $(dirname $0) ; CWD=$(pwd)
+
PRGNAM=trackballs
-VERSION=${VERSION:-1.3.1}
+VERSION=${VERSION:-1.3.4}
BUILD=${BUILD:-1}
TAG=${TAG:-_SBo}
+PKGTYPE=${PKGTYPE:-tgz}
if [ -z "$ARCH" ]; then
case "$( uname -m )" in
@@ -22,14 +32,15 @@ if [ -z "$ARCH" ]; then
esac
fi
-CWD=$(pwd)
+if [ ! -z "${PRINT_PACKAGE_NAME}" ]; then
+ echo "$PRGNAM-$VERSION-$ARCH-$BUILD$TAG.$PKGTYPE"
+ exit 0
+fi
+
TMP=${TMP:-/tmp/SBo}
PKG=$TMP/package-$PRGNAM
OUTPUT=${OUTPUT:-/tmp}
-MUSICVER=${MUSICVER:-1.4}
-MUSICEXT=${MUSICEXT:-bz2}
-
if [ "$ARCH" = "i586" ]; then
SLKCFLAGS="-O2 -march=i586 -mtune=i686"
LIBDIRSUFFIX=""
@@ -61,9 +72,9 @@ cd build
cmake \
-DTRACKBALLS_BIN_DIR=/usr/games \
-DTRACKBALLS_MAN_DIR=/usr/man \
- -DTRACKBALLS_DOC_DIR=/usr/doc/$PRGNAM-$VERSION \
+ -DTRACKBALLS_DOC_DIR=/usr/doc/$PRGNAM-$VERSION/html \
-DCMAKE_C_FLAGS:STRING="$SLKCFLAGS" \
- -DCMAKE_CXX_FLAGS:STRING="$SLKCFLAGS" \
+ -DCMAKE_CXX_FLAGS:STRING="$SLKCFLAGS -std=c++11" \
-DCMAKE_INSTALL_PREFIX=/usr \
-DCMAKE_BUILD_TYPE=Release \
..
@@ -73,17 +84,16 @@ cd ..
gzip $PKG/usr/man/man6/$PRGNAM.6
-mkdir -p $PKG/usr/doc/$PRGNAM-$VERSION/html
cp -a README* AUTHORS* COPYING* FAQ* TODO* NEWS* $PKG/usr/doc/$PRGNAM-$VERSION
cat $CWD/$PRGNAM.SlackBuild > $PKG/usr/doc/$PRGNAM-$VERSION/$PRGNAM.SlackBuild
# Compatibility icon for old-school window managers.
mkdir -p $PKG/usr/share/pixmaps
-cat share/icons/$PRGNAM-64x64.png > $PKG/usr/share/pixmaps/$PRGNAM.png
+ln -s ../icons/hicolor/48x48/apps/$PRGNAM.png $PKG/usr/share/pixmaps/$PRGNAM.png
mkdir -p $PKG/install
cat $CWD/slack-desc > $PKG/install/slack-desc
cat $CWD/doinst.sh > $PKG/install/doinst.sh
cd $PKG
-/sbin/makepkg -l y -c n $OUTPUT/$PRGNAM-$VERSION-$ARCH-$BUILD$TAG.${PKGTYPE:-tgz}
+/sbin/makepkg -l y -c n $OUTPUT/$PRGNAM-$VERSION-$ARCH-$BUILD$TAG.$PKGTYPE
diff --git a/games/trackballs/trackballs.info b/games/trackballs/trackballs.info
index df581f82d3..39a5ed71e8 100644
--- a/games/trackballs/trackballs.info
+++ b/games/trackballs/trackballs.info
@@ -1,10 +1,10 @@
PRGNAM="trackballs"
-VERSION="1.3.1"
+VERSION="1.3.4"
HOMEPAGE="https://trackballs.github.io/"
-DOWNLOAD="https://github.com/trackballs/trackballs/archive/v1.3.1/trackballs-1.3.1.tar.gz"
-MD5SUM="838ad07e30f2a819eacf268925ace093"
+DOWNLOAD="https://github.com/trackballs/trackballs/archive/v1.3.4/trackballs-1.3.4.tar.gz"
+MD5SUM="f6508956edfb14fde500f1adf272bdcf"
DOWNLOAD_x86_64=""
MD5SUM_x86_64=""
-REQUIRES="SDL2_mixer SDL2_image SDL2_ttf"
+REQUIRES=""
MAINTAINER="B. Watson"
-EMAIL="yalhcru@gmail.com"
+EMAIL="urchlay@slackware.uk"
diff --git a/games/transfusion/README b/games/transfusion/README
deleted file mode 100644
index 8a8c778d35..0000000000
--- a/games/transfusion/README
+++ /dev/null
@@ -1,19 +0,0 @@
-Transfusion is a port of the game Blood to the DarkPlaces Quake engine.
-Currently not all levels are ported, and only multiplayer is supported.
-
-From the original game manual:
-
-You are Caleb, and you are a bad, bad man. You sold your immortal soul
-for The Dark God, Tchernobog, and you and the other Chosen served Him
-dutifully until He decided it was time to take everything from you for
-Himself... apparently, even gods make mistakes.
-
-Leaving you to rot in a grave and forgetting about you was a BIG one.
-
-SlackBuild note:
-
-The .info file says x86_64 is unsupported. However, if you install 32-bit
-compatibility libraries (such as those from alienBOB's site), you stand a
-good chance of getting the game to run (it works for the author of this
-SlackBuild)... But *don't* bother the slackbuilds.org team if you can't
-get it working: they don't support multilib.
diff --git a/games/transfusion/slack-desc b/games/transfusion/slack-desc
deleted file mode 100644
index d832fefd1a..0000000000
--- a/games/transfusion/slack-desc
+++ /dev/null
@@ -1,19 +0,0 @@
-# HOW TO EDIT THIS FILE:
-# The "handy ruler" below makes it easier to edit a package description.
-# Line up the first '|' above the ':' following the base package name, and
-# the '|' on the right side marks the last column you can put a character in.
-# You must make exactly 11 lines for the formatting to be correct. It's also
-# customary to leave one space after the ':' except on otherwise blank lines.
-
- |-----handy-ruler------------------------------------------------------|
-transfusion: transfusion (port of the game Blood to the DarkPlaces Quake engine)
-transfusion:
-transfusion: Transfusion is a port of the game Blood to the DarkPlaces Quake
-transfusion: engine. Currently not all levels are ported, and only multiplayer
-transfusion: is supported.
-transfusion: From the original game manual:
-transfusion: You are Caleb, and you are a bad, bad man. You sold your immortal soul
-transfusion: for The Dark God, Tchernobog, and you and the other Chosen served
-transfusion: Him dutifully until He decided it was time to take everything from
-transfusion: you for Himself... apparently, even gods make mistakes.
-transfusion: Leaving you to rot in a grave and forgetting about you was a BIG one.
diff --git a/games/transfusion/transfusion.SlackBuild b/games/transfusion/transfusion.SlackBuild
deleted file mode 100644
index 74ede8e8b4..0000000000
--- a/games/transfusion/transfusion.SlackBuild
+++ /dev/null
@@ -1,63 +0,0 @@
-#!/bin/sh
-
-# Slackware build script for transfusion
-
-# Written by B. Watson (yalhcru@gmail.com)
-
-# Licensed under the WTFPL. See http://www.wtfpl.net/txt/copying/ for details.
-
-# The game is distributed as a binary. This script just repackages
-# the binary into a nice Slack package and adds KDE/XFCE desktop integration.
-
-PRGNAM=transfusion
-VERSION=${VERSION:-1.05_beta2}
-SRCVER=$(echo $VERSION | sed 's/_/-/g')
-ARCH=i586 # possibly a fib, we dunno how the binary was compiled
-BUILD=${BUILD:-2}
-TAG=${TAG:-_SBo}
-
-CWD=$(pwd)
-TMP=${TMP:-/tmp/SBo}
-PKG=$TMP/package-$PRGNAM
-OUTPUT=${OUTPUT:-/tmp}
-
-set -e
-
-rm -rf $PKG
-mkdir -p $TMP $PKG $OUTPUT
-cd $TMP
-rm -rf $PRGNAM-$SRCVER
-unzip $CWD/$PRGNAM-$SRCVER.zip
-cd $PRGNAM-$SRCVER
-
-mkdir -p $PKG/usr/share/games/$PRGNAM-$VERSION/basetf
-cp basetf/* $PKG/usr/share/games/$PRGNAM-$VERSION/basetf
-
-mkdir -p $PKG/usr/libexec/$PRGNAM-$VERSION
-cp $PRGNAM-glx $PRGNAM-dedicated $PKG/usr/libexec/$PRGNAM-$VERSION
-
-mkdir -p $PKG/usr/doc/$PRGNAM-$VERSION
-cp doc/* $PKG/usr/doc/$PRGNAM-$VERSION
-cat $CWD/$PRGNAM.SlackBuild > $PKG/usr/doc/$PRGNAM-$VERSION/$PRGNAM.SlackBuild
-
-# Wrapper script: the game expects to find the basetf/ dir in the
-# current directory.
-mkdir -p $PKG/usr/bin
-sed "s/@VERSION@/$VERSION/g" < $CWD/$PRGNAM.in > $PKG/usr/bin/$PRGNAM-glx
-chmod 755 $PKG/usr/bin/$PRGNAM-glx
-( cd $PKG/usr/bin/ && ln -s $PRGNAM-glx $PRGNAM-dedicated )
-
-
-# Icon extracted from windows transfusion.exe (sorry, it's 32x32)
-mkdir -p $PKG/usr/share/pixmaps
-cat $CWD/$PRGNAM.png > $PKG/usr/share/pixmaps/$PRGNAM.png
-
-mkdir -p $PKG/usr/share/applications
-cat $CWD/$PRGNAM.desktop > $PKG/usr/share/applications/$PRGNAM.desktop
-
-mkdir -p $PKG/install
-cat $CWD/slack-desc > $PKG/install/slack-desc
-cat $CWD/doinst.sh > $PKG/install/doinst.sh
-
-cd $PKG
-/sbin/makepkg -l y -c y $OUTPUT/$PRGNAM-$VERSION-$ARCH-$BUILD$TAG.${PKGTYPE:-tgz}
diff --git a/games/transfusion/transfusion.desktop b/games/transfusion/transfusion.desktop
deleted file mode 100644
index c9c12a7125..0000000000
--- a/games/transfusion/transfusion.desktop
+++ /dev/null
@@ -1,6 +0,0 @@
-[Desktop Entry]
-Name=Transfusion
-Exec=transfusion-glx
-Type=Application
-Icon=transfusion
-Categories=Game;ActionGame;
diff --git a/games/transfusion/transfusion.in b/games/transfusion/transfusion.in
deleted file mode 100644
index a498cdae9a..0000000000
--- a/games/transfusion/transfusion.in
+++ /dev/null
@@ -1,24 +0,0 @@
-#!/bin/sh
-
-# Silly wrapper script for transfusion, by B. Watson
-
-set -e
-
-case "$0" in
- *-dedicated)
- GAME=dedicated
- ;;
- *)
- GAME=glx
- ;;
-esac
-
-# You can override these in the environment, if you have multiple
-# versions of transfusion installed.
-
-TF_VERSION=${TF_VERSION:-@VERSION@}
-TF_GAMEDIR=${TF_GAMEDIR:-/usr/share/games/transfusion-$TF_VERSION}
-TF_BIN=${TF_BIN:-/usr/libexec/transfusion-$TF_VERSION/transfusion-$GAME}
-
-cd $TF_GAMEDIR
-exec $TF_BIN "$@"
diff --git a/games/transfusion/transfusion.info b/games/transfusion/transfusion.info
deleted file mode 100644
index 27fb04d82d..0000000000
--- a/games/transfusion/transfusion.info
+++ /dev/null
@@ -1,10 +0,0 @@
-PRGNAM="transfusion"
-VERSION="1.05_beta2"
-HOMEPAGE="http://www.transfusion-game.com/"
-DOWNLOAD="http://ponce.cc/slackware/sources/repo/transfusion-1.05-beta2.zip"
-MD5SUM="c19cc9a8160d47b1ea23305a38f1d091"
-DOWNLOAD_x86_64="UNSUPPORTED"
-MD5SUM_x86_64=""
-REQUIRES=""
-MAINTAINER="B. Watson"
-EMAIL="yalhcru@gmail.com"
diff --git a/games/transfusion/transfusion.png b/games/transfusion/transfusion.png
deleted file mode 100644
index feb095de55..0000000000
--- a/games/transfusion/transfusion.png
+++ /dev/null
Binary files differ
diff --git a/games/trigger-rally/README b/games/trigger-rally/README
index b45ae57396..97e2450e38 100644
--- a/games/trigger-rally/README
+++ b/games/trigger-rally/README
@@ -1,6 +1,7 @@
-Trigger is a free 3D rally car racing game. Fun for all the family. Trigger
-comes with a number of challenges where you have to race several tracks to
-finish each challenge. When racing a track, you have to reach several locations
-marked by pulsating rings in sequence. You win a race if you reach the last
-location in time. Trigger is highly customisable, and it's easy to add new
-levels and vehicles.
+Trigger is a free 3D rally car racing game. Fun for all the
+family. Trigger comes with a number of challenges where you have
+to race several tracks to finish each challenge. When racing a
+track, you have to reach several locations marked by pulsating
+rings in sequence. You win a race if you reach the last location in
+time. Trigger is highly customisable, and it's easy to add new levels
+and vehicles.
diff --git a/games/trigger-rally/hiscore1.h.patch b/games/trigger-rally/hiscore1.h.patch
deleted file mode 100644
index 4441ae2437..0000000000
--- a/games/trigger-rally/hiscore1.h.patch
+++ /dev/null
@@ -1,44 +0,0 @@
-diff -rupN src/include/hiscore1.h src_patched/include/hiscore1.h
---- src/include/hiscore1.h 2016-04-08 20:58:38.000000000 +0200
-+++ src_patched/include/hiscore1.h 2016-04-28 15:27:43.763427992 +0200
-@@ -41,6 +41,17 @@
- return InputStream; \
- } else (void)0
-
-+
-+// TODO: remove duplicate code
-+#define GETLINE_SKIP_EMPTY_LINES_B(InputStream, String) if (true) { \
-+ while (std::getline(InputStream, String)) { \
-+ if (!String.empty()) \
-+ break; \
-+ } \
-+ if (String.empty()) \
-+ return static_cast<bool> (InputStream); \
-+} else (void)0
-+
- ///
- /// @brief Basic structure to load and save race results.
- ///
-@@ -724,19 +735,19 @@ private:
- std::istringstream sspdata(decrypt(pdata));
- #undef decrypt
-
-- GETLINE_SKIP_EMPTY_LINES(sspdata, ts);
-+ GETLINE_SKIP_EMPTY_LINES_B(sspdata, ts);
- nu = std::stoul(ts);
-
- while (nu-- != 0)
- {
-- GETLINE_SKIP_EMPTY_LINES(sspdata, ts);
-+ GETLINE_SKIP_EMPTY_LINES_B(sspdata, ts);
- allunlocks[pname].insert(ts);
- }
-
- while (sspdata >> rd)
- alltimes.insert({rd.mapname, rd});
-
-- return sspdata;
-+ return static_cast<bool> (sspdata);
- }
-
- ///
diff --git a/games/trigger-rally/slack-desc b/games/trigger-rally/slack-desc
index e8048f7d2a..42a42c2a06 100644
--- a/games/trigger-rally/slack-desc
+++ b/games/trigger-rally/slack-desc
@@ -15,5 +15,5 @@ trigger-rally: to reach several locations marked by pulsating rings in sequence.
trigger-rally: win a race if you reach the last location in time. Trigger is highly
trigger-rally: customisable, and it's easy to add new levels and vehicles.
trigger-rally:
-trigger-rally: Homepage: http://trigger-rally.sourceforge.net/
+trigger-rally: https://trigger-rally.sourceforge.io
trigger-rally:
diff --git a/games/trigger-rally/trigger-rally.SlackBuild b/games/trigger-rally/trigger-rally.SlackBuild
index 688574dada..8847d81223 100644
--- a/games/trigger-rally/trigger-rally.SlackBuild
+++ b/games/trigger-rally/trigger-rally.SlackBuild
@@ -1,8 +1,9 @@
-#!/bin/sh
+#!/bin/bash
# Slackware build script for trigger-rally
-# Copyright 2015-2016 Larry Hajali <larryhaja[at]gmail[dot]com>
+# Copyright 2015-2016 Larry Hajali
+# Copyright 2022 Johannes Schoepfer, Germany
# All rights reserved.
#
# Redistribution and use of this script, with or without modification, is
@@ -22,26 +23,33 @@
# OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF THIS SOFTWARE, EVEN IF
# ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
+cd $(dirname $0) ; CWD=$(pwd)
+
PRGNAM=trigger-rally
-VERSION=${VERSION:-0.6.4}
+VERSION=${VERSION:-0.6.6.1}
BUILD=${BUILD:-1}
TAG=${TAG:-_SBo}
+PKGTYPE=${PKGTYPE:-tgz}
if [ -z "$ARCH" ]; then
case "$( uname -m )" in
- i?86) ARCH=i486 ;;
+ i?86) ARCH=i586 ;;
arm*) ARCH=arm ;;
*) ARCH=$( uname -m ) ;;
esac
fi
-CWD=$(pwd)
+if [ ! -z "${PRINT_PACKAGE_NAME}" ]; then
+ echo "$PRGNAM-$VERSION-$ARCH-$BUILD$TAG.$PKGTYPE"
+ exit 0
+fi
+
TMP=${TMP:-/tmp/SBo}
PKG=$TMP/package-$PRGNAM
OUTPUT=${OUTPUT:-/tmp}
-if [ "$ARCH" = "i486" ]; then
- SLKCFLAGS="-O2 -march=i486 -mtune=i686"
+if [ "$ARCH" = "i586" ]; then
+ SLKCFLAGS="-O2 -march=i586 -mtune=i686"
LIBDIRSUFFIX=""
elif [ "$ARCH" = "i686" ]; then
SLKCFLAGS="-O2 -march=i686 -mtune=i686"
@@ -62,7 +70,6 @@ cd $TMP
rm -rf $PRGNAM-$VERSION
tar xvf $CWD/$PRGNAM-$VERSION.tar.gz
cd $PRGNAM-$VERSION
-for i in $CWD/*.zip;do cp $i data/plugins;done
chown -R root:root .
find -L . \
\( -perm 777 -o -perm 775 -o -perm 750 -o -perm 711 -o -perm 555 \
@@ -70,17 +77,6 @@ find -L . \
\( -perm 666 -o -perm 664 -o -perm 640 -o -perm 600 -o -perm 444 \
-o -perm 440 -o -perm 400 \) -exec chmod 644 {} \;
-# Fix end-of-line encoding
-for j in doc/*; do
- sed -e 's/\r//' $i > ${i}.new
- touch -r $i ${i}.new
- mv ${i}.new $i
-done
-
-# Fix for gcc >= 5.x
-# https://sourceforge.net/p/trigger-rally/discussion/527953/thread/e1cde947/
-patch -p0 < $CWD/hiscore1.h.patch
-
OPTIMS="$SLKCFLAGS" \
make -C src
@@ -94,14 +90,14 @@ find $PKG -print0 | xargs -0 file | grep -e "executable" -e "shared object" | gr
mkdir $PKG/usr/share/applications
install -m 0644 $CWD/$PRGNAM.desktop $PKG/usr/share/applications
+# Correct size 16x12 icon
+convert -resize 16x16 $PKG/usr/share/games/$PRGNAM/icon/trigger-256.png \
+ $PKG/usr/share/games/$PRGNAM/icon/trigger-16.png
for i in 16 22 24 32 36 48 64 72 96 128 192 256; do
mkdir -p $PKG/usr/share/icons/hicolor/${i}x${i}/apps
- ln -s /usr/share/games/$PRGNAM/icon/trigger-${i}.png \
+ ln -sr $PKG/usr/share/games/$PRGNAM/icon/trigger-${i}.png \
$PKG/usr/share/icons/hicolor/${i}x${i}/apps/$PRGNAM.png
done
-mkdir -p $PKG/usr/share/icons/hicolor/scalable/apps
-ln -s /usr/share/games/$PRGNAM/icons/trigger-${i}-icons.svg \
- $PKG/usr/share/icons/hicolor/scalable/apps/$PRGNAM.svg
cat $CWD/$PRGNAM.SlackBuild > $PKG/usr/doc/$PRGNAM-$VERSION/$PRGNAM.SlackBuild
@@ -110,4 +106,4 @@ cat $CWD/slack-desc > $PKG/install/slack-desc
cat $CWD/doinst.sh > $PKG/install/doinst.sh
cd $PKG
-/sbin/makepkg -l y -c n $OUTPUT/$PRGNAM-$VERSION-$ARCH-$BUILD$TAG.${PKGTYPE:-tgz}
+/sbin/makepkg -l y -c n $OUTPUT/$PRGNAM-$VERSION-$ARCH-$BUILD$TAG.$PKGTYPE
diff --git a/games/trigger-rally/trigger-rally.info b/games/trigger-rally/trigger-rally.info
index 49060fe630..237c824b65 100644
--- a/games/trigger-rally/trigger-rally.info
+++ b/games/trigger-rally/trigger-rally.info
@@ -1,60 +1,10 @@
PRGNAM="trigger-rally"
-VERSION="0.6.4"
-HOMEPAGE="http://trigger-rally.sourceforge.net"
-DOWNLOAD="https://downloads.sourceforge.net/trigger-rally/trigger-rally-0.6.4.tar.gz \
- https://sourceforge.net/projects/trigger-rally/files/plugins/plugins-0.6.4/map-volcanic.zip \
- https://sourceforge.net/projects/trigger-rally/files/plugins/plugins-0.6.4/map-delta.zip \
- https://sourceforge.net/projects/trigger-rally/files/plugins/plugins-0.6.4/map-desertrush.zip \
- https://sourceforge.net/projects/trigger-rally/files/plugins/plugins-0.6.4/map-ghats.zip \
- https://sourceforge.net/projects/trigger-rally/files/plugins/plugins-0.6.4/map-greengrounds.zip \
- https://sourceforge.net/projects/trigger-rally/files/plugins/plugins-0.6.4/map-helicoil.zip \
- https://sourceforge.net/projects/trigger-rally/files/plugins/plugins-0.6.4/map-icypeak.zip \
- https://sourceforge.net/projects/trigger-rally/files/plugins/plugins-0.6.4/map-labrally.zip \
- https://sourceforge.net/projects/trigger-rally/files/plugins/plugins-0.6.4/map-marsspirit.zip \
- https://sourceforge.net/projects/trigger-rally/files/plugins/plugins-0.6.4/map-monza.zip \
- https://sourceforge.net/projects/trigger-rally/files/plugins/plugins-0.6.4/map-mountainclimbing.zip \
- https://sourceforge.net/projects/trigger-rally/files/plugins/plugins-0.6.4/map-mountainpass.zip \
- https://sourceforge.net/projects/trigger-rally/files/plugins/plugins-0.6.4/map-pistol.zip \
- https://sourceforge.net/projects/trigger-rally/files/plugins/plugins-0.6.4/map-pulp.zip \
- https://sourceforge.net/projects/trigger-rally/files/plugins/plugins-0.6.4/map-roundhouse.zip \
- https://sourceforge.net/projects/trigger-rally/files/plugins/plugins-0.6.4/map-santa.zip \
- https://sourceforge.net/projects/trigger-rally/files/plugins/plugins-0.6.4/map-serpentine.zip \
- https://sourceforge.net/projects/trigger-rally/files/plugins/plugins-0.6.4/map-snowlevel.zip \
- https://sourceforge.net/projects/trigger-rally/files/plugins/plugins-0.6.4/map-snowyhills.zip \
- https://sourceforge.net/projects/trigger-rally/files/plugins/plugins-0.6.4/map-tea.zip \
- https://sourceforge.net/projects/trigger-rally/files/plugins/plugins-0.6.4/map-tobago.zip \
- https://sourceforge.net/projects/trigger-rally/files/plugins/plugins-0.6.4/event-rscup.zip \
- https://sourceforge.net/projects/trigger-rally/files/plugins/plugins-0.6.4/event-westernchallenge.zip \
- https://sourceforge.net/projects/trigger-rally/files/plugins/plugins-0.6.4/map-banana.zip \
- https://sourceforge.net/projects/trigger-rally/files/plugins/plugins-0.6.4/map-crossmountain.zip"
-MD5SUM="551c964bd96e308eecf8c416bbd46287 \
- 03f17ff67f19b979461e2d5308970350 \
- b036667b4242da7df08db1ca5bd93eb6 \
- dc05c2fddd90f88ab49036083108da58 \
- 55d22fef0f38c718443cd341f591524d \
- cb24d43b1d0ce1ecd7fad927ac6c5729 \
- ff9719e33d0c155da30c7d0a634dbe9e \
- 12bccc8f4ed517b1d50f898b1285c018 \
- abc74fd1281201356f2eb8409bfeef33 \
- 5196f0dc2fc91855eaa13f9cf981f244 \
- a875e7e34ff28392e1c9e1fab74adae5 \
- 8e4cdc1565eeea896f5ec37db4a2aa24 \
- 1dc69423acc8fddc09cb4122893843ff \
- 99cffbc41841dd3aceded54f9e9b4507 \
- 029d468650f5479c64a3dcc79858818e \
- e55a8d93648571bb8c90e52055be23ee \
- bb66d3fff48a62e323a77a1b09cd642f \
- 158e628c122e4db886c791df62ad9528 \
- c8ebfd0b2b9cce351d4474cfcc2006a6 \
- 38522c921d734467a7d7133d08c0aece \
- a7f83cf58f60ff15646993264b96e28c \
- ae44d813c3108d11eb9e54b155c09a44 \
- 6d3bf46e9d756db05fac9a069cdc6694 \
- f6dba6c135a0df234f53a8312456cfa2 \
- 9cbd3414caca1a9300c5fd0ed43efdce \
- 351bd5afb5c82c889408690d208f6430"
+VERSION="0.6.6.1"
+HOMEPAGE="https://trigger-rally.sourceforge.io/"
+DOWNLOAD="https://downloads.sourceforge.net/trigger-rally/trigger-rally-0.6.6.1.tar.gz"
+MD5SUM="0734800a6d81c73b6d3a2864e624e4c2"
DOWNLOAD_x86_64=""
MD5SUM_x86_64=""
-REQUIRES="freealut physfs"
-MAINTAINER="Larry Hajali"
-EMAIL="larryhaja[at]gmail[dot]com"
+REQUIRES="freealut physfs tinyxml2"
+MAINTAINER="Johannes Schoepfer"
+EMAIL="slackbuilds@schoepfer.info"
diff --git a/games/triplea/triplea.SlackBuild b/games/triplea/triplea.SlackBuild
index 796778d40c..4018d8ee99 100644
--- a/games/triplea/triplea.SlackBuild
+++ b/games/triplea/triplea.SlackBuild
@@ -1,4 +1,4 @@
-#!/bin/sh
+#!/bin/bash
# Slackware build script for triplea
@@ -22,10 +22,13 @@
# OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF THIS SOFTWARE, EVEN IF
# ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
+cd $(dirname $0) ; CWD=$(pwd)
+
PRGNAM=triplea
VERSION=${VERSION:-1.8.0.9}
BUILD=${BUILD:-1}
TAG=${TAG:-_SBo}
+PKGTYPE=${PKGTYPE:-tgz}
SRCDIR="$( echo $VERSION | tr . _ )"
SRCVER="${SRCDIR}_all_platforms"
@@ -38,7 +41,14 @@ if [ -z "$ARCH" ]; then
esac
fi
-CWD=$(pwd)
+# If the variable PRINT_PACKAGE_NAME is set, then this script will report what
+# the name of the created package would be, and then exit. This information
+# could be useful to other scripts.
+if [ ! -z "${PRINT_PACKAGE_NAME}" ]; then
+ echo "$PRGNAM-$VERSION-$ARCH-$BUILD$TAG.$PKGTYPE"
+ exit 0
+fi
+
TMP=${TMP:-/tmp/SBo}
PKG=$TMP/package-$PRGNAM
OUTPUT=${OUTPUT:-/tmp}
@@ -103,4 +113,4 @@ cat $CWD/slack-desc > $PKG/install/slack-desc
cat $CWD/doinst.sh > $PKG/install/doinst.sh
cd $PKG
-/sbin/makepkg -l y -c n $OUTPUT/$PRGNAM-$VERSION-$ARCH-$BUILD$TAG.${PKGTYPE:-tgz}
+/sbin/makepkg -l y -c n $OUTPUT/$PRGNAM-$VERSION-$ARCH-$BUILD$TAG.$PKGTYPE
diff --git a/games/triplea/triplea.info b/games/triplea/triplea.info
index fa65b6baf3..03dbd9cfd2 100644
--- a/games/triplea/triplea.info
+++ b/games/triplea/triplea.info
@@ -5,6 +5,6 @@ DOWNLOAD="https://github.com/triplea-game/triplea/releases/download/1.8.0.9/trip
MD5SUM="0b2d29a6710980b99f401632b9944156"
DOWNLOAD_x86_64=""
MD5SUM_x86_64=""
-REQUIRES="jdk"
+REQUIRES="zulu-openjdk8"
MAINTAINER="Dimitris Zlatanidis"
EMAIL="d.zlatanidis@gmail.com"
diff --git a/games/trs80gp/README b/games/trs80gp/README
new file mode 100644
index 0000000000..abc2b27998
--- /dev/null
+++ b/games/trs80gp/README
@@ -0,0 +1,21 @@
+trs80gp (TRS-80 Model 1,2,3,4,12,16,6000,MC-10,DT-1,Videotex Emulator)
+
+trs80gp primarily emulates the "gray" line of TRS-80 computers made by
+Tandy in the late 1970s and early 1980s. They are known as the Model
+I, Model II, Model III, Model 4, Model 4P, Model 4D, Model 12, Model
+16 and Model 6000. Also emulated are the TRS-80 Micro Color Computer
+Model MC-10, the TRS-80 DT-1 Data Terminal, TRS-80 Videotex and the
+Electric Crayon external colour display.
+
+Unlike many emulators, trs80gp includes the ROMs and boot disk images
+for the target systems, built right into the executable. There are
+also some extra disk images (mostly of various DOSes) installed to
+/usr/share/trs80gp/disks/. These should be usable with other emulators
+such as sdltrs or xtrs.
+
+trs80gp is closed-source binary-only software. However, it includes
+x86 32-bit, x86_64, and ARM 32-bit and 64-bit (aarch64) executables,
+and the appropriate one will be used based on the ARCH variable. The
+aarch64 binary has been tested on SARPi 15.0 and appears to work OK.
+The 32-bit ARM binary has not been tested; let me know if it works
+for you.
diff --git a/games/trs80gp/doinst.sh b/games/trs80gp/doinst.sh
new file mode 100644
index 0000000000..65c7e2eeb9
--- /dev/null
+++ b/games/trs80gp/doinst.sh
@@ -0,0 +1,9 @@
+if [ -x /usr/bin/update-desktop-database ]; then
+ /usr/bin/update-desktop-database -q usr/share/applications >/dev/null 2>&1
+fi
+
+if [ -e usr/share/icons/hicolor/icon-theme.cache ]; then
+ if [ -x /usr/bin/gtk-update-icon-cache ]; then
+ /usr/bin/gtk-update-icon-cache -f usr/share/icons/hicolor >/dev/null 2>&1
+ fi
+fi
diff --git a/games/trs80gp/icons/16.png b/games/trs80gp/icons/16.png
new file mode 100644
index 0000000000..4bef014d6b
--- /dev/null
+++ b/games/trs80gp/icons/16.png
Binary files differ
diff --git a/games/trs80gp/icons/256.png b/games/trs80gp/icons/256.png
new file mode 100644
index 0000000000..4a6e8da5ca
--- /dev/null
+++ b/games/trs80gp/icons/256.png
Binary files differ
diff --git a/games/trs80gp/icons/32.png b/games/trs80gp/icons/32.png
new file mode 100644
index 0000000000..7543457e3b
--- /dev/null
+++ b/games/trs80gp/icons/32.png
Binary files differ
diff --git a/games/trs80gp/icons/48.png b/games/trs80gp/icons/48.png
new file mode 100644
index 0000000000..bc73118d1f
--- /dev/null
+++ b/games/trs80gp/icons/48.png
Binary files differ
diff --git a/games/trs80gp/icons/64.png b/games/trs80gp/icons/64.png
new file mode 100644
index 0000000000..781baf07b7
--- /dev/null
+++ b/games/trs80gp/icons/64.png
Binary files differ
diff --git a/games/trs80gp/slack-desc b/games/trs80gp/slack-desc
new file mode 100644
index 0000000000..b8d108c092
--- /dev/null
+++ b/games/trs80gp/slack-desc
@@ -0,0 +1,19 @@
+# HOW TO EDIT THIS FILE:
+# The "handy ruler" below makes it easier to edit a package description.
+# Line up the first '|' above the ':' following the base package name, and
+# the '|' on the right side marks the last column you can put a character in.
+# You must make exactly 11 lines for the formatting to be correct. It's also
+# customary to leave one space after the ':' except on otherwise blank lines.
+
+ |-----handy-ruler------------------------------------------------------|
+trs80gp: trs80gp (TRS-80 Model 1,2,3,4,12,16,6000,MC-10,DT-1,Videotex Emulator)
+trs80gp:
+trs80gp: trs80gp primarily emulates the "gray" line of TRS-80 computers made by
+trs80gp: Tandy in the late 1970s and early 1980s. They are known as the Model
+trs80gp: I, Model II, Model III, Model 4, Model 4P, Model 4D, Model 12, Model
+trs80gp: 16 and Model 6000. Also emulated are the TRS-80 Micro Color Computer
+trs80gp: Model MC-10, the TRS-80 DT-1 Data Terminal, TRS-80 Videotex and the
+trs80gp: Electric Crayon external colour display.
+trs80gp:
+trs80gp:
+trs80gp:
diff --git a/games/trs80gp/trs80gp.6 b/games/trs80gp/trs80gp.6
new file mode 100644
index 0000000000..fc73a6ac65
--- /dev/null
+++ b/games/trs80gp/trs80gp.6
@@ -0,0 +1,69 @@
+.\" Man page generated from reStructuredText.
+.
+.
+.nr rst2man-indent-level 0
+.
+.de1 rstReportMargin
+\\$1 \\n[an-margin]
+level \\n[rst2man-indent-level]
+level margin: \\n[rst2man-indent\\n[rst2man-indent-level]]
+-
+\\n[rst2man-indent0]
+\\n[rst2man-indent1]
+\\n[rst2man-indent2]
+..
+.de1 INDENT
+.\" .rstReportMargin pre:
+. RS \\$1
+. nr rst2man-indent\\n[rst2man-indent-level] \\n[an-margin]
+. nr rst2man-indent-level +1
+.\" .rstReportMargin post:
+..
+.de UNINDENT
+. RE
+.\" indent \\n[an-margin]
+.\" old: \\n[rst2man-indent\\n[rst2man-indent-level]]
+.nr rst2man-indent-level -1
+.\" new: \\n[rst2man-indent\\n[rst2man-indent-level]]
+.in \\n[rst2man-indent\\n[rst2man-indent-level]]u
+..
+.TH "TRS80GP" 6 "2023-05-17" "2.4.11" "SlackBuilds.org"
+.SH NAME
+trs80gp \- TRS-80 Model 1,2,3,4,12,16,6000,MC-10,DT-1,Videotex Emulator
+.\" RST source for trs80gp(1) man page. Convert with:
+.
+.\" rst2man.py trs80gp.rst > trs80gp.6
+.
+.\" rst2man.py comes from the SBo development/docutils package.
+.
+.SH SYNOPSIS
+.sp
+\fBtrs80gp\fP [\fI\-options\fP]
+.SH DESCRIPTION
+.sp
+\fBtrs80gp\fP primarily emulates the "gray" line of TRS\-80 computers made by
+Tandy in the late 1970s and early 1980s. They are known as the Model
+I, Model II, Model III, Model 4, Model 4P, Model 4D, Model 12, Model
+16 and Model 6000. Also emulated are the TRS\-80 Micro Color Computer
+Model MC\-10, the TRS\-80 DT\-1 Data Terminal, TRS\-80 Videotex and the
+Electric Crayon external colour display.
+.sp
+This man page is a stub. The real documentation can be found at:
+.sp
+/usr/doc/trs80gp\-2.4.11/html/index.html
+.sp
+You can also run \fBtrs80gp \-\-help\fP to see a summary of command\-line
+options.
+.SH AUTHORS
+.sp
+\fBtrs80gp\fP was written by George and Paul Philips.
+.sp
+This man page written for the SlackBuilds.org project
+by B. Watson, and is licensed under the WTFPL.
+.SH SEE ALSO
+.sp
+\fBsdltrs\fP(6), \fBxtrs\fP(6)
+.sp
+The \fBtrs80gp\fP homepage: \fI\%http://48k.ca/trs80gp.html\fP
+.\" Generated by docutils manpage writer.
+.
diff --git a/games/trs80gp/trs80gp.SlackBuild b/games/trs80gp/trs80gp.SlackBuild
new file mode 100644
index 0000000000..330e8d2ac8
--- /dev/null
+++ b/games/trs80gp/trs80gp.SlackBuild
@@ -0,0 +1,144 @@
+#!/bin/bash
+
+# Slackware build script for trs80gp
+
+# Written by B. Watson (urchlay@slackware.uk)
+
+# Licensed under the WTFPL. See http://www.wtfpl.net/txt/copying/ for details.
+
+# Note: I found no way to use this emulator without PulseAudio. This
+# is only a problem for holdouts like me, who hate pulse and
+# actively avoid using it. apulse won't work (it doesn't supply
+# libpulsecommon-*.so), and the emulator will segfault at startup if
+# it can't use pulse. The only workaround is to run "trs80gp -sx", but
+# that disables *all* audio, which is not really ideal. Closed source,
+# so no patching.
+
+# Dirt hack alert!
+#
+# The 32-bit x86 binary actually runs fine on Slackware 14.2. But on 15.0,
+# it crahes on startup:
+#
+# trs80gp: cairo-surface.c:1817: cairo_surface_set_device_scale: Assertion `status == CAIRO_STATUS_SUCCESS' failed.
+#
+# To make it run on 15.0, use the cairo shared libs from 14.2. Amazingly,
+# this actually works!
+#
+# So on i?86, /usr/games/trs80gp is a wrapper script that execs the
+# real binary with the old cairo libs preloaded. On all other arches,
+# /usr/games/trs80gp is the real binary.
+
+cd $(dirname $0) ; CWD=$(pwd)
+
+PRGNAM=trs80gp
+VERSION=${VERSION:-2.4.11}
+BUILD=${BUILD:-1}
+TAG=${TAG:-_SBo}
+PKGTYPE=${PKGTYPE:-tgz}
+
+if [ -z "$ARCH" ]; then
+ case "$( uname -m )" in
+ i?86) ARCH=i586 ;;
+ arm*) ARCH=arm ;;
+ *) ARCH=$( uname -m ) ;;
+ esac
+fi
+
+if [ ! -z "${PRINT_PACKAGE_NAME}" ]; then
+ echo "$PRGNAM-$VERSION-$ARCH-$BUILD$TAG.$PKGTYPE"
+ exit 0
+fi
+
+TMP=${TMP:-/tmp/SBo}
+PKG=$TMP/package-$PRGNAM
+OUTPUT=${OUTPUT:-/tmp}
+
+case "$ARCH" in
+ i?86) DIR=linux-32 ;;
+ x86_64) DIR=linux-64 ;;
+ arm) DIR=rpi-32 ;;
+ aarch64) DIR=rpi-64 ;;
+esac
+
+set -e
+
+rm -rf $PKG
+mkdir -p $TMP $PKG $OUTPUT
+cd $TMP
+rm -rf $PRGNAM-$VERSION
+mkdir -p $PRGNAM-$VERSION
+cd $PRGNAM-$VERSION
+unzip $CWD/$PRGNAM-$VERSION.zip
+chown -R root:root .
+# reset permissions, please do not revert to template.
+find . -type f -a -exec chmod 644 {} + -o -type d -a -exec chmod 755 {} +
+
+# Main binary, one dir per arch. No -s here, it's already stripped.
+if [ "$DIR" = "linux-32" ]; then
+ install -D -m0755 $DIR/$PRGNAM $PKG/usr/libexec/$PRGNAM/$PRGNAM
+ install -D -m0755 -oroot -groot $CWD/wrapper32.sh $PKG/usr/games/$PRGNAM
+ mkdir -p $PKG/usr/lib/$PRGNAM
+ cd $PKG/usr/lib/$PRGNAM
+ tar xvf $CWD/cairo-1.14.6-i586-2.txz \
+ --wildcards \
+ --strip-components=2 \
+ usr/lib/libcairo\*.so\*
+ cd -
+else
+ install -D -m0755 $DIR/$PRGNAM $PKG/usr/games/$PRGNAM
+fi
+
+# Rest of the goodies are in the Mac app bundle.
+PKGDOC=$PKG/usr/doc/$PRGNAM-$VERSION
+SFX=$PKG/usr/share/$PRGNAM/sounds
+DISKS=$PKG/usr/share/$PRGNAM/disks
+RES=mac/trs80gp.app/Contents/Resources
+mkdir -p $PKGDOC/html $SFX $DISKS
+
+# The sounds are meant to be used with the -sf option, to have
+# the emulator make mechanical disk noises during disk I/O.
+# Since it's closed-source, I can't patch it to look in our dir for
+# the wav files. They're disabled by default, anyway.
+cp -a $RES/*.wav $SFX
+
+# Note: doc.html is identical to help/all.html, don't bother.
+# Nothing seems to need $RES/*.png, don't bother.
+cp -a $RES/*.txt $PKGDOC
+cp -a $RES/help/*.{html,png} $PKGDOC/html
+
+# The emulator ships zipped disk images, but seems to require them
+# to be unzipped to actually use them. Takes up 10MB, but gives a
+# nice selection of DOSes and blank disks.
+for i in $RES/*.zip; do
+ unzip -LL $i -d $DISKS
+done
+
+# Stub man page by SlackBuild author. Just a pointer to the real docs.
+mkdir -p $PKG/usr/man/man6
+gzip -9c < $CWD/$PRGNAM.6 > $PKG/usr/man/man6/$PRGNAM.6.gz
+
+# Icons converted with icns2png and resized with ImageMagick. Original
+# source mac/trs80gp.app/Contents/Resources/AppIcon.icns in the tarball.
+HICOLOR=$PKG/usr/share/icons/hicolor
+for i in $CWD/icons/*.png; do
+ px="$( basename $i .png )"
+ sz="${px}x${px}"
+ dir=$HICOLOR/$sz/apps
+ mkdir -p $dir
+ cat $i > $dir/$PRGNAM.png
+done
+mkdir -p $PKG/usr/share/pixmaps
+ln -s ../icons/hicolor/48x48/apps/$PRGNAM.png $PKG/usr/share/pixmaps/$PRGNAM.png
+
+# .desktop file written by SlackBuild author.
+mkdir -p $PKG/usr/share/applications
+cat $CWD/$PRGNAM.desktop > $PKG/usr/share/applications/$PRGNAM.desktop
+
+cat $CWD/$PRGNAM.SlackBuild > $PKGDOC/$PRGNAM.SlackBuild
+
+mkdir -p $PKG/install
+cat $CWD/slack-desc > $PKG/install/slack-desc
+cat $CWD/doinst.sh > $PKG/install/doinst.sh
+
+cd $PKG
+/sbin/makepkg -l y -c n $OUTPUT/$PRGNAM-$VERSION-$ARCH-$BUILD$TAG.$PKGTYPE
diff --git a/games/trs80gp/trs80gp.desktop b/games/trs80gp/trs80gp.desktop
new file mode 100644
index 0000000000..889577241d
--- /dev/null
+++ b/games/trs80gp/trs80gp.desktop
@@ -0,0 +1,8 @@
+[Desktop Entry]
+Type=Application
+Name=TRS80GP
+Comment=TRS-80 Model I/II/III/4/4P/etc Emulator
+Exec=/usr/games/trs80gp %F
+Icon=trs80gp
+Terminal=false
+Categories=Game;Emulator;
diff --git a/games/trs80gp/trs80gp.info b/games/trs80gp/trs80gp.info
new file mode 100644
index 0000000000..0ae0384ab3
--- /dev/null
+++ b/games/trs80gp/trs80gp.info
@@ -0,0 +1,12 @@
+PRGNAM="trs80gp"
+VERSION="2.4.11"
+HOMEPAGE="http://48k.ca/trs80gp.html"
+DOWNLOAD="http://48k.ca/trs80gp-2.4.11.zip \
+ https://slackware.uk/slackware/slackware-14.2/slackware/l/cairo-1.14.6-i586-2.txz"
+MD5SUM="4c1f30ffce7ef6a2316e576fe647c941 \
+ 303c05899a16028d226eaa08adab98f6"
+DOWNLOAD_x86_64="http://48k.ca/trs80gp-2.4.11.zip"
+MD5SUM_x86_64="4c1f30ffce7ef6a2316e576fe647c941"
+REQUIRES=""
+MAINTAINER="B. Watson"
+EMAIL="urchlay@slackware.uk"
diff --git a/games/trs80gp/trs80gp.rst b/games/trs80gp/trs80gp.rst
new file mode 100644
index 0000000000..a95676e439
--- /dev/null
+++ b/games/trs80gp/trs80gp.rst
@@ -0,0 +1,56 @@
+.. RST source for trs80gp(1) man page. Convert with:
+.. rst2man.py trs80gp.rst > trs80gp.6
+.. rst2man.py comes from the SBo development/docutils package.
+
+.. |version| replace:: 2.4.11
+.. |date| date::
+
+=======
+trs80gp
+=======
+
+------------------------------------------------------------
+TRS-80 Model 1,2,3,4,12,16,6000,MC-10,DT-1,Videotex Emulator
+------------------------------------------------------------
+
+:Manual section: 6
+:Manual group: SlackBuilds.org
+:Date: |date|
+:Version: |version|
+
+SYNOPSIS
+========
+
+**trs80gp** [*-options*]
+
+DESCRIPTION
+===========
+
+**trs80gp** primarily emulates the "gray" line of TRS-80 computers made by
+Tandy in the late 1970s and early 1980s. They are known as the Model
+I, Model II, Model III, Model 4, Model 4P, Model 4D, Model 12, Model
+16 and Model 6000. Also emulated are the TRS-80 Micro Color Computer
+Model MC-10, the TRS-80 DT-1 Data Terminal, TRS-80 Videotex and the
+Electric Crayon external colour display.
+
+This man page is a stub. The real documentation can be found at:
+
+/usr/doc/trs80gp-|version|/html/index.html
+
+You can also run **trs80gp --help** to see a summary of command-line
+options.
+
+AUTHORS
+=======
+
+**trs80gp** was written by George and Paul Philips.
+
+This man page written for the SlackBuilds.org project
+by B. Watson, and is licensed under the WTFPL.
+
+SEE ALSO
+========
+
+**sdltrs**\(6), **xtrs**\(6)
+
+The **trs80gp** homepage: http://48k.ca/trs80gp.html
diff --git a/games/trs80gp/wrapper32.sh b/games/trs80gp/wrapper32.sh
new file mode 100644
index 0000000000..1c1d05fbc1
--- /dev/null
+++ b/games/trs80gp/wrapper32.sh
@@ -0,0 +1,8 @@
+#!/bin/sh
+
+# dirty hack alert! use old cairo libs for trs80gp.
+L=/usr/lib/trs80gp/libcairo
+V=2.11400.6
+
+LD_PRELOAD=$L.so.$V:$L-gobject.so.$V:$L-script-interpreter.so.$V \
+ exec /usr/libexec/trs80gp/trs80gp "$@"
diff --git a/games/tt/tt.SlackBuild b/games/tt/tt.SlackBuild
index 44aafcc208..73fc362d16 100644
--- a/games/tt/tt.SlackBuild
+++ b/games/tt/tt.SlackBuild
@@ -1,4 +1,4 @@
-#!/bin/sh
+#!/bin/bash
# Slackware build script for tt
# Copyright Matteo Bernardini <ponce@slackbuilds.org>, 2012
@@ -21,10 +21,13 @@
# OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF THIS SOFTWARE, EVEN IF
# ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
+cd $(dirname $0) ; CWD=$(pwd)
+
PRGNAM=tt
VERSION=${VERSION:-15.1}
BUILD=${BUILD:-1}
TAG=${TAG:-_SBo}
+PKGTYPE=${PKGTYPE:-tgz}
if [ -z "$ARCH" ]; then
case "$( uname -m )" in
@@ -34,7 +37,14 @@ if [ -z "$ARCH" ]; then
esac
fi
-CWD=$(pwd)
+# If the variable PRINT_PACKAGE_NAME is set, then this script will report what
+# the name of the created package would be, and then exit. This information
+# could be useful to other scripts.
+if [ ! -z "${PRINT_PACKAGE_NAME}" ]; then
+ echo "$PRGNAM-$VERSION-$ARCH-$BUILD$TAG.$PKGTYPE"
+ exit 0
+fi
+
TMP=${TMP:-/tmp/SBo}
PKG=$TMP/package-$PRGNAM
OUTPUT=${OUTPUT:-/tmp}
@@ -101,4 +111,4 @@ cat $CWD/slack-desc > $PKG/install/slack-desc
cat $CWD/doinst.sh > $PKG/install/doinst.sh
cd $PKG
-/sbin/makepkg -l y -c n $OUTPUT/$PRGNAM-$VERSION-$ARCH-$BUILD$TAG.${PKGTYPE:-tgz}
+/sbin/makepkg -l y -c n $OUTPUT/$PRGNAM-$VERSION-$ARCH-$BUILD$TAG.$PKGTYPE
diff --git a/games/tty-solitaire/tty-solitaire.SlackBuild b/games/tty-solitaire/tty-solitaire.SlackBuild
index 61ed9e2910..f85739727e 100644
--- a/games/tty-solitaire/tty-solitaire.SlackBuild
+++ b/games/tty-solitaire/tty-solitaire.SlackBuild
@@ -1,4 +1,4 @@
-#!/bin/sh
+#!/bin/bash
# Slackware build script for tty-solitaire
@@ -22,10 +22,15 @@
# OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF THIS SOFTWARE, EVEN IF
# ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
+# 20220221 bkw: Modified by SlackBuilds.org: fix build on 15.0.
+
+cd $(dirname $0) ; CWD=$(pwd)
+
PRGNAM=tty-solitaire
VERSION=${VERSION:-1.1.0}
BUILD=${BUILD:-1}
TAG=${TAG:-_SBo}
+PKGTYPE=${PKGTYPE:-tgz}
if [ -z "$ARCH" ]; then
case "$( uname -m )" in
@@ -35,7 +40,11 @@ if [ -z "$ARCH" ]; then
esac
fi
-CWD=$(pwd)
+if [ ! -z "${PRINT_PACKAGE_NAME}" ]; then
+ echo "$PRGNAM-$VERSION-$ARCH-$BUILD$TAG.$PKGTYPE"
+ exit 0
+fi
+
TMP=${TMP:-/tmp/SBo}
PKG=$TMP/package-$PRGNAM
OUTPUT=${OUTPUT:-/tmp}
@@ -65,9 +74,11 @@ cd $PRGNAM-$VERSION
chown -R root:root .
find -L . \
\( -perm 777 -o -perm 775 -o -perm 750 -o -perm 711 -o -perm 555 \
- -o -perm 511 \) -exec chmod 755 {} \; -o \
+ -o -perm 511 \) -exec chmod 755 {} \+ -o \
\( -perm 666 -o -perm 664 -o -perm 640 -o -perm 600 -o -perm 444 \
- -o -perm 440 -o -perm 400 \) -exec chmod 644 {} \;
+ -o -perm 440 -o -perm 400 \) -exec chmod 644 {} \+
+
+SLKCFLAGS+=" -fcommon"
CFLAGS="$SLKCFLAGS" \
CXXFLAGS="$SLKCFLAGS" \
@@ -77,11 +88,6 @@ make install PREFIX=$PKG/usr
find $PKG -print0 | xargs -0 file | grep -e "executable" -e "shared object" | grep ELF \
| cut -f 1 -d : | xargs strip --strip-unneeded 2> /dev/null || true
-find $PKG -name perllocal.pod \
- -o -name ".packlist" \
- -o -name "*.bs" \
- | xargs rm -f
-
mkdir -p $PKG/usr/doc/$PRGNAM-$VERSION
cp -a README.md TODO.md $PKG/usr/doc/$PRGNAM-$VERSION
cat $CWD/$PRGNAM.SlackBuild > $PKG/usr/doc/$PRGNAM-$VERSION/$PRGNAM.SlackBuild
@@ -90,4 +96,4 @@ mkdir -p $PKG/install
cat $CWD/slack-desc > $PKG/install/slack-desc
cd $PKG
-/sbin/makepkg -l y -c n $OUTPUT/$PRGNAM-$VERSION-$ARCH-$BUILD$TAG.${PKGTYPE:-tgz}
+/sbin/makepkg -l y -c n $OUTPUT/$PRGNAM-$VERSION-$ARCH-$BUILD$TAG.$PKGTYPE
diff --git a/games/tuxfootball/tuxfootball.SlackBuild b/games/tuxfootball/tuxfootball.SlackBuild
index bfa297027d..49d223cd31 100644
--- a/games/tuxfootball/tuxfootball.SlackBuild
+++ b/games/tuxfootball/tuxfootball.SlackBuild
@@ -1,4 +1,4 @@
-#!/bin/sh
+#!/bin/bash
# Slackware build script for tuxfootball
@@ -22,10 +22,13 @@
# OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF THIS SOFTWARE, EVEN IF
# ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
+cd $(dirname $0) ; CWD=$(pwd)
+
PRGNAM=tuxfootball
VERSION=${VERSION:-0.3.1}
BUILD=${BUILD:-1}
TAG=${TAG:-_SBo}
+PKGTYPE=${PKGTYPE:-tgz}
if [ -z "$ARCH" ]; then
case "$( uname -m )" in
@@ -35,7 +38,14 @@ if [ -z "$ARCH" ]; then
esac
fi
-CWD=$(pwd)
+# If the variable PRINT_PACKAGE_NAME is set, then this script will report what
+# the name of the created package would be, and then exit. This information
+# could be useful to other scripts.
+if [ ! -z "${PRINT_PACKAGE_NAME}" ]; then
+ echo "$PRGNAM-$VERSION-$ARCH-$BUILD$TAG.$PKGTYPE"
+ exit 0
+fi
+
TMP=${TMP:-/tmp/SBo}
PKG=$TMP/package-$PRGNAM
OUTPUT=${OUTPUT:-/tmp}
@@ -94,4 +104,4 @@ cat $CWD/slack-desc > $PKG/install/slack-desc
cat $CWD/doinst.sh > $PKG/install/doinst.sh
cd $PKG
-/sbin/makepkg -l y -c n $OUTPUT/$PRGNAM-$VERSION-$ARCH-$BUILD$TAG.${PKGTYPE:-tgz}
+/sbin/makepkg -l y -c n $OUTPUT/$PRGNAM-$VERSION-$ARCH-$BUILD$TAG.$PKGTYPE
diff --git a/games/tuxkart/tuxkart.SlackBuild b/games/tuxkart/tuxkart.SlackBuild
index 2576530263..878ceddb95 100644
--- a/games/tuxkart/tuxkart.SlackBuild
+++ b/games/tuxkart/tuxkart.SlackBuild
@@ -1,4 +1,4 @@
-#!/bin/sh
+#!/bin/bash
# Copyright 2010 Binh Nguyen <binhvng@gmail.com>
# All rights reserved.
@@ -20,10 +20,13 @@
# OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF THIS SOFTWARE, EVEN IF
# ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
+cd $(dirname $0) ; CWD=$(pwd)
+
PRGNAM=tuxkart
VERSION=${VERSION:-0.4.0}
BUILD=${BUILD:-1}
TAG=${TAG:-_SBo}
+PKGTYPE=${PKGTYPE:-tgz}
if [ -z "$ARCH" ]; then
case "$( uname -m )" in
@@ -33,7 +36,14 @@ if [ -z "$ARCH" ]; then
esac
fi
-CWD=$(pwd)
+# If the variable PRINT_PACKAGE_NAME is set, then this script will report what
+# the name of the created package would be, and then exit. This information
+# could be useful to other scripts.
+if [ ! -z "${PRINT_PACKAGE_NAME}" ]; then
+ echo "$PRGNAM-$VERSION-$ARCH-$BUILD$TAG.$PKGTYPE"
+ exit 0
+fi
+
TMP=${TMP:-/tmp/SBo}
PKG=$TMP/package-$PRGNAM
OUTPUT=${OUTPUT:-/tmp}
@@ -102,4 +112,4 @@ cat $CWD/slack-desc > $PKG/install/slack-desc
cat $CWD/doinst.sh > $PKG/install/doinst.sh
cd $PKG
-/sbin/makepkg -l y -c n $OUTPUT/$PRGNAM-$VERSION-$ARCH-$BUILD$TAG.${PKGTYPE:-tgz}
+/sbin/makepkg -l y -c n $OUTPUT/$PRGNAM-$VERSION-$ARCH-$BUILD$TAG.$PKGTYPE
diff --git a/games/tuxnes/README b/games/tuxnes/README
index 9de5ce42e0..3e26219204 100644
--- a/games/tuxnes/README
+++ b/games/tuxnes/README
@@ -1,17 +1,19 @@
-TuxNES is an emulator for the 8-bit Nintendo Entertainment System. It is
-based on Nestra, a great public-domain NES emulator by Quor. TuxNES adds many
-features not found in Nestra, and uses a more collaborative development model.
-Enhancements to Nestra often find their way into TuxNES. Enhancements to
-TuxNES don't generally find their way into Nestra due to licensing
-restrictions (since pieces of TuxNES are generally copyrighted by their
-authors, and covered by the GNU General Public License), although similar
-changes by the same authors sometimes find their way back into Nestra.
+TuxNES is an emulator for the 8-bit Nintendo Entertainment System.
+It is based on Nestra, a great public-domain NES emulator by Quor.
+TuxNES adds many features not found in Nestra, and uses a more
+collaborative development model. Enhancements to Nestra often find
+their way into TuxNES. Enhancements to TuxNES don't generally find
+their way into Nestra due to licensing restrictions (since pieces
+of TuxNES are generally copyrighted by their authors, and covered by
+the GNU General Public License), although similar changes by the same
+authors sometimes find their way back into Nestra.
TuxNES requires an x86-family processor.
-If you would also like to install GTuxNES (a graphical launcher for TuxNES),
-download its source tarball and place it in the same directory as the
-SlackBuild. The GTuxNES homepage is http://www.scottweber.com/projects/gtuxnes/
+If you would also like to install GTuxNES (a graphical launcher
+for TuxNES), download its source tarball and place it in the same
+directory as the SlackBuild. The GTuxNES homepage is:
+http://www.scottweber.com/projects/gtuxnes/
The GTuxNES site appears to be down, but the source is mirrored here:
http://www.sourcefiles.org/Emulators/Videogames/gtuxnes-0.75.tar.gz
diff --git a/games/tuxnes/tuxnes.SlackBuild b/games/tuxnes/tuxnes.SlackBuild
index e63696ade3..f387ced9c4 100644
--- a/games/tuxnes/tuxnes.SlackBuild
+++ b/games/tuxnes/tuxnes.SlackBuild
@@ -1,13 +1,16 @@
-#!/bin/sh
+#!/bin/bash
# Slackware build script for tuxnes
# Written by Kyle Guinn <elyk03@gmail.com>
-# Updated slightly by B. Watson <yalhcru@gmail.com>, with permission
+# Updated slightly by B. Watson <urchlay@slackware.uk>, with permission
+
+cd $(dirname $0) ; CWD=$(pwd)
PRGNAM=tuxnes
VERSION=${VERSION:-0.75}
BUILD=${BUILD:-2}
TAG=${TAG:-_SBo}
+PKGTYPE=${PKGTYPE:-tgz}
if [ -z "$ARCH" ]; then
case "$( uname -m )" in
@@ -17,7 +20,11 @@ if [ -z "$ARCH" ]; then
esac
fi
-CWD=$(pwd)
+if [ ! -z "${PRINT_PACKAGE_NAME}" ]; then
+ echo "$PRGNAM-$VERSION-$ARCH-$BUILD$TAG.$PKGTYPE"
+ exit 0
+fi
+
TMP=${TMP:-/tmp/SBo}
PKG=$TMP/package-$PRGNAM
OUTPUT=${OUTPUT:-/tmp}
@@ -47,9 +54,9 @@ cd $PRGNAM-$VERSION
chown -R root:root .
find -L . \
\( -perm 777 -o -perm 775 -o -perm 750 -o -perm 711 -o -perm 555 \
- -o -perm 511 \) -exec chmod 755 {} \; -o \
+ -o -perm 511 \) -exec chmod 755 {} \+ -o \
\( -perm 666 -o -perm 664 -o -perm 640 -o -perm 600 -o -perm 444 \
- -o -perm 440 -o -perm 400 \) -exec chmod 644 {} \;
+ -o -perm 440 -o -perm 400 \) -exec chmod 644 {} \+
# __FUNCTION__ is now a variable instead of a static string/macro in GCC 3.4+.
# Replace __FUNCTION__ with the actual function names where it appears.
@@ -63,7 +70,7 @@ autoheader
automake -a
autoconf
-CFLAGS="$SLKCFLAGS -fno-strict-aliasing" \
+CFLAGS="$SLKCFLAGS -fno-strict-aliasing -fcommon" \
./configure \
--prefix=/usr \
--sysconfdir=/etc \
@@ -118,4 +125,4 @@ mkdir -p $PKG/install
cat $CWD/slack-desc > $PKG/install/slack-desc
cd $PKG
-/sbin/makepkg -l y -c n $OUTPUT/$PRGNAM-$VERSION-$ARCH-$BUILD$TAG.${PKGTYPE:-tgz}
+/sbin/makepkg -l y -c n $OUTPUT/$PRGNAM-$VERSION-$ARCH-$BUILD$TAG.$PKGTYPE
diff --git a/games/tworld/tworld.SlackBuild b/games/tworld/tworld.SlackBuild
index 79ee9e9f8f..bd7aac3ed3 100644
--- a/games/tworld/tworld.SlackBuild
+++ b/games/tworld/tworld.SlackBuild
@@ -1,4 +1,4 @@
-#!/bin/sh
+#!/bin/bash
# Slackware build script for tworld
@@ -22,10 +22,13 @@
# OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF THIS SOFTWARE, EVEN IF
# ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
+cd $(dirname $0) ; CWD=$(pwd)
+
PRGNAM=tworld
VERSION=${VERSION:-1.3.2}
BUILD=${BUILD:-1}
TAG=${TAG:-_SBo}
+PKGTYPE=${PKGTYPE:-tgz}
if [ -z "$ARCH" ]; then
case "$( uname -m )" in
@@ -35,7 +38,14 @@ if [ -z "$ARCH" ]; then
esac
fi
-CWD=$(pwd)
+# If the variable PRINT_PACKAGE_NAME is set, then this script will report what
+# the name of the created package would be, and then exit. This information
+# could be useful to other scripts.
+if [ ! -z "${PRINT_PACKAGE_NAME}" ]; then
+ echo "$PRGNAM-$VERSION-$ARCH-$BUILD$TAG.$PKGTYPE"
+ exit 0
+fi
+
TMP=${TMP:-/tmp/SBo}
PKG=$TMP/package-$PRGNAM
OUTPUT=${OUTPUT:-/tmp}
@@ -110,4 +120,4 @@ cat $CWD/slack-desc > $PKG/install/slack-desc
cat $CWD/doinst.sh > $PKG/install/doinst.sh
cd $PKG
-/sbin/makepkg -l y -c n $OUTPUT/$PRGNAM-$VERSION-$ARCH-$BUILD$TAG.${PKGTYPE:-tgz}
+/sbin/makepkg -l y -c n $OUTPUT/$PRGNAM-$VERSION-$ARCH-$BUILD$TAG.$PKGTYPE
diff --git a/games/typespeed/typespeed.SlackBuild b/games/typespeed/typespeed.SlackBuild
index 826254ccdb..71718857e2 100644
--- a/games/typespeed/typespeed.SlackBuild
+++ b/games/typespeed/typespeed.SlackBuild
@@ -1,11 +1,16 @@
-#!/bin/sh
+#!/bin/bash
# Slackware build script for talkfilters
# Written by Dan-Simon Myrland <dansimon@radiotube.org>
+# 20220221 bkw: Modified by SlackBuilds.org: fix build on 15.0.
+
+cd $(dirname $0) ; CWD=$(pwd)
+
PRGNAM=typespeed
VERSION=${VERSION:-0.6.5}
BUILD=${BUILD:-1}
TAG=${TAG:-_SBo}
+PKGTYPE=${PKGTYPE:-tgz}
if [ -z "$ARCH" ]; then
case "$( uname -m )" in
@@ -15,7 +20,11 @@ if [ -z "$ARCH" ]; then
esac
fi
-CWD=$(pwd)
+if [ ! -z "${PRINT_PACKAGE_NAME}" ]; then
+ echo "$PRGNAM-$VERSION-$ARCH-$BUILD$TAG.$PKGTYPE"
+ exit 0
+fi
+
TMP=${TMP:-/tmp/SBo}
PKG=$TMP/package-$PRGNAM
OUTPUT=${OUTPUT:-/tmp}
@@ -45,9 +54,11 @@ cd $PRGNAM-$VERSION
chown -R root:root .
find -L . \
\( -perm 777 -o -perm 775 -o -perm 750 -o -perm 711 -o -perm 555 \
- -o -perm 511 \) -exec chmod 755 {} \; -o \
+ -o -perm 511 \) -exec chmod 755 {} \+ -o \
\( -perm 666 -o -perm 664 -o -perm 640 -o -perm 600 -o -perm 444 \
- -o -perm 440 -o -perm 400 \) -exec chmod 644 {} \;
+ -o -perm 440 -o -perm 400 \) -exec chmod 644 {} \+
+
+SLKCFLAGS+=" -fcommon"
CFLAGS="$SLKCFLAGS" \
CXXFLAGS="$SLKCFLAGS" \
@@ -79,4 +90,4 @@ cat $CWD/slack-desc > $PKG/install/slack-desc
cat $CWD/doinst.sh > $PKG/install/doinst.sh
cd $PKG
-/sbin/makepkg -l y -c n $OUTPUT/$PRGNAM-$VERSION-$ARCH-$BUILD$TAG.${PKGTYPE:-tgz}
+/sbin/makepkg -l y -c n $OUTPUT/$PRGNAM-$VERSION-$ARCH-$BUILD$TAG.$PKGTYPE
diff --git a/games/typhoon_2001/README b/games/typhoon_2001/README
index ffe5928951..de2c27a94b 100644
--- a/games/typhoon_2001/README
+++ b/games/typhoon_2001/README
@@ -1,13 +1,15 @@
-Typhoon 2001 is a freeware game inspired by both the Atari Jaguar hit
-game Tempest 2000 and the arcade hit Tempest. It takes ideas and concepts
-from both games, but rearranges and changes them. A few new ideas have
-been implemented as well.
+typhoon_2001 (a freeware game)
+
+Typhoon 2001 is a freeware game inspired by both the Atari Jaguar
+hit game Tempest 2000 and the arcade hit Tempest. It takes ideas and
+concepts from both games, but rearranges and changes them. A few new
+ideas have been implemented as well.
To run the Linux version of Typhoon 2001, you will need hardware OpenGL
-video accleration support for your X server.
+video acceleration support for your X server.
-This game is not open source: it's distributed binary-only. The SlackBuild
-simply installs the binary distribution files in the appropriate places,
-and adds a launcher script in /usr/bin, which adds support for per-user
-game settings. The directory $HOME/.typhoon_2001/ will be created the
-first time the game is run.
+This game is not open source: it's distributed binary-only. The
+SlackBuild simply installs the binary distribution files in the
+appropriate places, and adds a launcher script in /usr/bin, which adds
+support for per-user game settings. The directory $HOME/.typhoon_2001/
+will be created the first time the game is run.
diff --git a/games/typhoon_2001/doinst.sh b/games/typhoon_2001/doinst.sh
index 5fb28930db..3e5691a052 100644
--- a/games/typhoon_2001/doinst.sh
+++ b/games/typhoon_2001/doinst.sh
@@ -1,3 +1,9 @@
if [ -x /usr/bin/update-desktop-database ]; then
/usr/bin/update-desktop-database -q usr/share/applications >/dev/null 2>&1
fi
+
+if [ -e usr/share/icons/hicolor/icon-theme.cache ]; then
+ if [ -x /usr/bin/gtk-update-icon-cache ]; then
+ /usr/bin/gtk-update-icon-cache usr/share/icons/hicolor >/dev/null 2>&1
+ fi
+fi
diff --git a/games/typhoon_2001/slack-desc b/games/typhoon_2001/slack-desc
index cc36052310..9f0fa3a547 100644
--- a/games/typhoon_2001/slack-desc
+++ b/games/typhoon_2001/slack-desc
@@ -14,6 +14,6 @@ typhoon_2001: and concepts from both games, but rearranges and changes them. A
typhoon_2001: few new ideas have been implemented as well.
typhoon_2001:
typhoon_2001: To run the Linux version of Typhoon 2001, you will need hardware
-typhoon_2001: OpenGL video accleration support for your X server.
+typhoon_2001: OpenGL video acceleration support for your X server.
typhoon_2001:
typhoon_2001: Homepage: http://typhoon.kuto.de/
diff --git a/games/typhoon_2001/typhoon_2001 b/games/typhoon_2001/typhoon_2001
index 2953ebdd88..4d0d7a4753 100644
--- a/games/typhoon_2001/typhoon_2001
+++ b/games/typhoon_2001/typhoon_2001
@@ -45,6 +45,10 @@ if [ ! -d "$T2K1_HOME" ]; then
done
fi
-cd "$T2K1_HOME" && exec ./typhoon || \
+# 20211216 bkw: use aoss unless real OSS is available.
+AOSS=aoss
+[ -c /dev/dsp ] && AOSS=""
+
+cd "$T2K1_HOME" && exec $AOSS ./typhoon || \
echo "Can't exec $T2K1_HOME/typhoon - " \
"corrupt install, try removing $T2K1_HOME and running $0 again"
diff --git a/games/typhoon_2001/typhoon_2001.SlackBuild b/games/typhoon_2001/typhoon_2001.SlackBuild
index fba27c8ca8..fe73e942b0 100644
--- a/games/typhoon_2001/typhoon_2001.SlackBuild
+++ b/games/typhoon_2001/typhoon_2001.SlackBuild
@@ -1,7 +1,7 @@
-#!/bin/sh
+#!/bin/bash
# SlackBuild script for Typhoon 2001
-# Written by B. Watson (yalhcru@gmail.com)
+# Written by B. Watson (urchlay@slackware.uk)
# Licensed under the WTFPL. See http://www.wtfpl.net/txt/copying/ for details.
@@ -11,21 +11,40 @@
# typhoon.cfg needs to be a real file and be writable by the user.
# (it will be created the first time the game is run).
+# 20230107 bkw: BUILD=4, forgot the SlackBuild in the doc dir.
+
+# 20211216 bkw: BUILD=3
+# - make sound work OOTB: run binary with aoss wrapper.
+
+# 20211012 bkw: BUILD=2
+# - binary in /usr/games.
+# - new-style icons.
+# - fix typo in README and slack-desc.
+
+cd $(dirname $0) ; CWD=$(pwd)
+
PRGNAM=typhoon_2001
VERSION=${VERSION:-r3992}
-BUILD=${BUILD:-1}
+BUILD=${BUILD:-4}
TAG=${TAG:-_SBo}
+PKGTYPE=${PKGTYPE:-tgz}
# this used to check for unsupported ARCH and exit the script, but
# it's perfectly cromulent to want to build a 32-bit package on x86_64,
# so the check is gone and the ARCH is hardcoded.
ARCH=i586
-CWD=$(pwd)
+if [ ! -z "${PRINT_PACKAGE_NAME}" ]; then
+ echo "$PRGNAM-$VERSION-$ARCH-$BUILD$TAG.$PKGTYPE"
+ exit 0
+fi
+
TMP=${TMP:-/tmp/SBo}
PKG=$TMP/package-$PRGNAM
OUTPUT=${OUTPUT:-/tmp}
+PKGDOC=$PKG/usr/doc/$PRGNAM-$VERSION
+
set -e
rm -fr $TMP/$PRGNAM $PKG $TMP/$PRGNAM-$VERSION
@@ -39,35 +58,35 @@ tar xvf $CWD/${PRGNAM}_$VERSION.tar.gz
# Don't trust the ownership/permissions...
chown -R root:root .
-find -L . \
- \( -perm 777 -o -perm 775 -o -perm 750 -o -perm 711 -o -perm 555 \
- -o -perm 511 \) -exec chmod 755 {} \; -o \
- \( -perm 666 -o -perm 664 -o -perm 640 -o -perm 600 -o -perm 444 \
- -o -perm 440 -o -perm 400 \) -exec chmod 644 {} \;
+find -L . -perm /111 -a \! -perm 755 -a -exec chmod 755 {} \+ -o \
+ \! -perm /111 -a \! -perm 644 -a -exec chmod 644 {} \+
chmod 755 typhoon
# OK, put everything where it goes in a proper Slack package...
mkdir -p $PKG/usr/share/games/$PRGNAM \
- $PKG/usr/libexec \
- $PKG/usr/doc/$PRGNAM-$VERSION \
- $PKG/install \
- $PKG/usr/bin
+ $PKG/usr/libexec \
+ $PKGDOC \
+ $PKG/install \
+ $PKG/usr/games
-mv readme_linux.txt $PKG/usr/doc/$PRGNAM-$VERSION
-mv typhoon $PKG/usr/libexec
-mv * $PKG/usr/share/games/$PRGNAM
+cat $CWD/$PRGNAM.SlackBuild > $PKGDOC/$PRGNAM.SlackBuild
+cp -a readme_linux.txt $PKGDOC
+cp -a typhoon $PKG/usr/libexec
+cp -a game *.mod *.dat $PKG/usr/share/games/$PRGNAM
-install -m 0755 $CWD/$PRGNAM $PKG/usr/bin/$PRGNAM
+install -m 0755 $CWD/$PRGNAM $PKG/usr/games/$PRGNAM
mkdir -p $PKG/usr/share/applications
cat $CWD/$PRGNAM.desktop > $PKG/usr/share/applications/$PRGNAM.desktop
# Icon extracted from the windows .exe with wrestool, converted with icotool
-mkdir -p $PKG/usr/share/pixmaps
-cat $CWD/$PRGNAM.png > $PKG/usr/share/pixmaps/$PRGNAM.png
+mkdir -p $PKG/usr/share/pixmaps \
+ $PKG/usr/share/icons/hicolor/32x32/apps
+cat $CWD/$PRGNAM.png > $PKG/usr/share/icons/hicolor/32x32/apps/$PRGNAM.png
+ln -s ../icons/hicolor/32x32/apps/$PRGNAM.png $PKG/usr/share/pixmaps/$PRGNAM.png
cat $CWD/slack-desc > $PKG/install/slack-desc
cat $CWD/doinst.sh > $PKG/install/doinst.sh
cd $PKG
-/sbin/makepkg -l y -c n $OUTPUT/$PRGNAM-$VERSION-$ARCH-$BUILD$TAG.${PKGTYPE:-tgz}
+/sbin/makepkg -l y -c n $OUTPUT/$PRGNAM-$VERSION-$ARCH-$BUILD$TAG.$PKGTYPE
diff --git a/games/typhoon_2001/typhoon_2001.desktop b/games/typhoon_2001/typhoon_2001.desktop
index 75fef3dfc9..30702c0be8 100644
--- a/games/typhoon_2001/typhoon_2001.desktop
+++ b/games/typhoon_2001/typhoon_2001.desktop
@@ -1,7 +1,7 @@
[Desktop Entry]
Name=Typhoon 2001
-Exec=typhoon_2001
+Exec=/usr/games/typhoon_2001
Type=Application
Icon=typhoon_2001
-GenericName=Typhoon 2001 Game
+GenericName=Tempest-like game
Categories=Game;ArcadeGame;
diff --git a/games/typhoon_2001/typhoon_2001.info b/games/typhoon_2001/typhoon_2001.info
index 8f572f9a80..e3d14d7b8d 100644
--- a/games/typhoon_2001/typhoon_2001.info
+++ b/games/typhoon_2001/typhoon_2001.info
@@ -7,4 +7,4 @@ DOWNLOAD_x86_64="UNSUPPORTED"
MD5SUM_x86_64=""
REQUIRES=""
MAINTAINER="B. Watson"
-EMAIL="yalhcru@gmail.com"
+EMAIL="urchlay@slackware.uk"
diff --git a/games/tyrquake-libretro/README b/games/tyrquake-libretro/README
deleted file mode 100644
index 764133902a..0000000000
--- a/games/tyrquake-libretro/README
+++ /dev/null
@@ -1,31 +0,0 @@
-This is meant to be a fairly conservative branch of the Quake source code. It's
-intended to support Quake and Quakeworld in both software and GL versions, as
-well as the Quakeworld Server; all on both MS Windows and Linux (BSD supported
-as best I can manage with some help from some other users). I don't intend on
-changing the look or feel of the game by adding lots of rendering enhancements,
-etc, but rather just fixing little bugs that I've come across over the years.
-I'll be adding small enhancements and may even rewrite substantial portions of
-the code, but I don't want to change the fundamental feel of the game.
-
-The Quake game data is needed to play and must be acquired separately.
-
-Alternatively the shareware version of Quake can be acquired through RetroArch.
-To download it go to 'Add Content' -> 'Download Content' -> 'Tyrquake'.
-
-To play Quake place the PAK0.PAK and PAK1.PAK into your Quake data directory.
-The PAK2.PAK file that was not originally included with Quake is known to crash
-Tyrquake and should not be used.
-
-The Quake Mission Packs No. 1: Scourge of Armagon and No. 2: Dissolution of
-Eternity can also be played. Place pak0.pak and pak1.pk3 files for each in the
-Quake game data directory, under the names hipnotic and rogue respectively.
-
-To use the colored lighting with Tyrquake, make a subdir in your Quake data
-directory called 'maps' which contains the required .lit files. They can be
-downloaded with RetroArch. To do this go to 'Add Content' -> 'Download Content'
-and download 'quake-colored-lighting-pack.zip' found under Tyrquake.
-
-Controls should be set in both RetroArch and the in game configuration menu.
-
-To build the debugging symbols use:
- DEBUG=1 ./tyrquake-libretro.SlackBuild
diff --git a/games/tyrquake-libretro/slack-desc b/games/tyrquake-libretro/slack-desc
deleted file mode 100644
index 6dd6d82325..0000000000
--- a/games/tyrquake-libretro/slack-desc
+++ /dev/null
@@ -1,19 +0,0 @@
-# HOW TO EDIT THIS FILE:
-# The "handy ruler" below makes it easier to edit a package description.
-# Line up the first '|' above the ':' following the base package name, and
-# the '|' on the right side marks the last column you can put a character in.
-# You must make exactly 11 lines for the formatting to be correct. It's also
-# customary to leave one space after the ':' except on otherwise blank lines.
-
- |-----handy-ruler------------------------------------------------------|
-tyrquake-libretro: tyrquake-libretro (libretro port of Tyrquake)
-tyrquake-libretro:
-tyrquake-libretro: This is meant to be a fairly conservative branch of the Quake source
-tyrquake-libretro: code. It's intended to support Quake and Quakeworld in both software
-tyrquake-libretro: and GL versions, as well as the Quakeworld Server.
-tyrquake-libretro:
-tyrquake-libretro: Homepage: https://www.libretro.com/
-tyrquake-libretro:
-tyrquake-libretro:
-tyrquake-libretro:
-tyrquake-libretro:
diff --git a/games/tyrquake-libretro/tyrquake-libretro.SlackBuild b/games/tyrquake-libretro/tyrquake-libretro.SlackBuild
deleted file mode 100644
index a576202d48..0000000000
--- a/games/tyrquake-libretro/tyrquake-libretro.SlackBuild
+++ /dev/null
@@ -1,82 +0,0 @@
-#!/bin/sh
-
-# Slackware build script for tyrquake-libretro
-
-# Copyright 2016-2018 Hunter Sezen
-# All rights reserved.
-#
-# Redistribution and use of this script, with or without modification, is
-# permitted provided that the following conditions are met:
-#
-# 1. Redistributions of this script must retain the above copyright
-# notice, this list of conditions and the following disclaimer.
-#
-# THIS SOFTWARE IS PROVIDED BY THE AUTHOR "AS IS" AND ANY EXPRESS OR IMPLIED
-# WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE IMPLIED WARRANTIES OF
-# MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE ARE DISCLAIMED. IN NO
-# EVENT SHALL THE AUTHOR BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL,
-# SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT LIMITED TO,
-# PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, DATA, OR PROFITS;
-# OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY,
-# WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR
-# OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF THIS SOFTWARE, EVEN IF
-# ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
-
-PRGNAM=tyrquake-libretro
-LIBNAM=$(echo $PRGNAM | tr - _)
-VERSION=${VERSION:-2018.09.30_83291a1}
-BUILD=${BUILD:-1}
-TAG=${TAG:-_SBo}
-
-if [ -z "$ARCH" ]; then
- case "$( uname -m )" in
- i?86) ARCH=i586 ;;
- arm*) ARCH=arm ;;
- *) ARCH=$( uname -m ) ;;
- esac
-fi
-
-CWD=$(pwd)
-TMP=${TMP:-/tmp/SBo}
-PKG=$TMP/package-$PRGNAM
-OUTPUT=${OUTPUT:-/tmp}
-
-LIBDIRSUFFIX=
-[ "$ARCH" = x86_64 ] && LIBDIRSUFFIX=64
-
-set -eu
-
-rm -rf $PKG
-mkdir -p $TMP $PKG $OUTPUT
-cd $TMP
-rm -rf $PRGNAM-$VERSION
-tar xvf $CWD/$PRGNAM-$VERSION.tar.xz
-cd $PRGNAM-$VERSION
-chown -R root:root .
-find -L . \
- \( -perm 777 -o -perm 775 -o -perm 750 -o -perm 711 -o -perm 555 \
- -o -perm 511 \) -exec chmod 755 {} \; -o \
- \( -perm 666 -o -perm 664 -o -perm 640 -o -perm 600 -o -perm 444 \
- -o -perm 440 -o -perm 400 \) -exec chmod 644 {} \;
-
-[ "${DEBUG:=0}" != 0 ] && DEBUG=1
-
-make DEBUG=$DEBUG
-
-install -Dm0644 $LIBNAM.so $PKG/usr/lib${LIBDIRSUFFIX}/libretro/$LIBNAM.so
-install -Dm0644 $LIBNAM.info $PKG/usr/lib${LIBDIRSUFFIX}/libretro/info/$LIBNAM.info
-
-if [ $DEBUG = 0 ]; then
- find $PKG -print0 | xargs -0 file | grep -e "executable" -e "shared object" | grep ELF \
- | cut -f 1 -d : | xargs strip --strip-unneeded 2> /dev/null || true
-fi
-
-mkdir -p $PKG/usr/doc/$PRGNAM-$VERSION
-cp -a *.txt $PKG/usr/doc/$PRGNAM-$VERSION
-cat $CWD/$PRGNAM.SlackBuild > $PKG/usr/doc/$PRGNAM-$VERSION/$PRGNAM.SlackBuild
-
-mkdir -p $PKG/install
-cat $CWD/slack-desc > $PKG/install/slack-desc
-
-cd $PKG
-/sbin/makepkg -l y -c n $OUTPUT/$PRGNAM-$VERSION-$ARCH-$BUILD$TAG.${PKGTYPE:-tgz}
diff --git a/games/tyrquake-libretro/tyrquake-libretro.info b/games/tyrquake-libretro/tyrquake-libretro.info
deleted file mode 100644
index 1435bcb139..0000000000
--- a/games/tyrquake-libretro/tyrquake-libretro.info
+++ /dev/null
@@ -1,10 +0,0 @@
-PRGNAM="tyrquake-libretro"
-VERSION="2018.09.30_83291a1"
-HOMEPAGE="https://www.libretro.com/"
-DOWNLOAD="http://slackless.raccoons.tech/src/libretro/tyrquake-libretro-2018.09.30_83291a1.tar.xz"
-MD5SUM="7e708db8e103a504059a78cc4c68204e"
-DOWNLOAD_x86_64=""
-MD5SUM_x86_64=""
-REQUIRES="RetroArch"
-MAINTAINER="orphaned - no maintainer"
-EMAIL="nobody@nowhere.com"
diff --git a/games/ucr/README b/games/ucr/README
deleted file mode 100644
index 57e751e4bb..0000000000
--- a/games/ucr/README
+++ /dev/null
@@ -1,31 +0,0 @@
-Ultima Classics Revisited (UCR) is an attempt to offer modern
-OS-compatible engines for the first six Ultima games. The only completely
-playable game for UCR is Akalabeth (aka Ultima 0), and there is a partial
-implementation of an Ultima 1 engine.
-
-UCR doesn't require any extra data files to play Akalabeth. If you want
-to check out UCR's partial Ultima 1 engine, you'll need the game data
-files from Ultima 1 (place them in /usr/share/ucr/games/u1).
-
-Akalabeth is played entirely with the keyboard. Since the keyboard
-controls aren't documented anywhere in the UCR source (other than by
-reading the C++ code), here's a list of keystrokes:
-
-S - Show character stats (hit points, equipment, etc)
-P - Pause/Resume
-Space - Pass
-F11 - Toggle original/enhanced graphics
-F12 - Enable/disable music
-
-Outdoors:
-Up/Down/Left/Right Arrows - Move North/South/East/West
-E - Enter Town or Castle
-
-In Dungeons:
-Up - Move Forward
-Down - Turn Around
-Left/Right - Turn Left/Right
-A - Attack
-E - Climb Ladder or Descend into Hole
-
-UCR doesn't support saving the game like the PC version of Akalabeth does.
diff --git a/games/ucr/doinst.sh b/games/ucr/doinst.sh
deleted file mode 100644
index f565650032..0000000000
--- a/games/ucr/doinst.sh
+++ /dev/null
@@ -1,19 +0,0 @@
-
-config() {
- NEW="$1"
- OLD="$(dirname $NEW)/$(basename $NEW .new)"
- # If there's no config file by that name, mv it over:
- if [ ! -r $OLD ]; then
- mv $NEW $OLD
- elif [ "$(cat $OLD | md5sum)" = "$(cat $NEW | md5sum)" ]; then
- # toss the redundant copy
- rm $NEW
- fi
- # Otherwise, we leave the .new copy for the admin to consider...
-}
-
-config etc/ucr/ucr.conf.new
-
-if [ -x /usr/bin/update-desktop-database ]; then
- /usr/bin/update-desktop-database -q usr/share/applications >/dev/null 2>&1
-fi
diff --git a/games/ucr/slack-desc b/games/ucr/slack-desc
deleted file mode 100644
index f618fb7b51..0000000000
--- a/games/ucr/slack-desc
+++ /dev/null
@@ -1,19 +0,0 @@
-# HOW TO EDIT THIS FILE:
-# The "handy ruler" below makes it easier to edit a package description.
-# Line up the first '|' above the ':' following the base package name, and
-# the '|' on the right side marks the last column you can put a character in.
-# You must make exactly 11 lines for the formatting to be correct. It's also
-# customary to leave one space after the ':' except on otherwise blank lines.
-
- |-----handy-ruler------------------------------------------------------|
-ucr: ucr (Ultima Classics Revisited)
-ucr:
-ucr: Ultima Classics Revisited (UCR) is an attempt to offer modern
-ucr: OS-compatible engines for the first six Ultima games. The only
-ucr: completely playable game for UCR is Akalabeth (aka Ultima 0), and
-ucr: there is a partial implementation of an Ultima 1 engine.
-ucr:
-ucr:
-ucr:
-ucr:
-ucr:
diff --git a/games/ucr/ucr.6 b/games/ucr/ucr.6
deleted file mode 100644
index 40d2cbbebe..0000000000
--- a/games/ucr/ucr.6
+++ /dev/null
@@ -1,99 +0,0 @@
-.TH ucr 6 "28 Oct 2011" "0.1.2" "Ultima Classics Revisited"
-
-.SH NAME
-\fBucr\fR \- A modern reimplementation of the classic Ultima role\-playing games.
-
-.SH SYNOPSIS
-.B ucr
-
-.SH DESCRIPTION
-.B ucr
-(Ultima Classics Revisited)
-is a remake of the computer games Akalabeth (aka "Ultima 0") and
-Ultima 1.
-.PP
-.B ucr
-accepts no command\-line arguments.
-.PP
-The current version of
-.B ucr
-contains a complete rewrite of Akalabeth, which is fully playable, and
-a partial engine for Ultima I (not fully playable). To use the Ultima I
-engine, you will need the data files from the original PC release of
-Ultima I (place them in \fI/usr/share/ucr/games/u1\fR).
-.PP
-Although Akalabeth is fully playable, it has no support for saving the
-game or loading saved games (unlike the original PC release of Akalabeth).
-Ultima I, while not fully playable, does support saving/loading the game.
-.SH KEYBOARD CONTROLS
-Only the keyboard controls for Akalabeth are documented here.
-.PP
-Akalabeth
-is played entirely with the keyboard. To make choices from menus,
-press the first letter of the menu choice (e.g. \fBF\fR to buy Food
-at the Adventure Shop menu).
-.PP
-During gameplay, the following keystrokes are supported:
-.TP
-.B S
-Show character stats (hit points, equipment, etc)
-.TP
-.B P
-Pause/Resume
-.TP
-.B Space
-Pass
-.TP
-.B F11
-Toggle original/enhanced graphics
-.TP
-.B
-F12
-Enable/disable music
-.SS Outdoors
-.TP
-.B Up/Down/Left/Right Arrows
-Move North/South/East/West
-.TP
-.B E
-Enter Town or Castle
-.SS In Dungeons
-.TP
-.B
-Up
-Move Forward
-.TP
-.B
-Down
-Turn Around
-.TP
-.B
-Left/Right
-Turn Left/Right
-.TP
-.B
-A
-Attack
-.TP
-.B
-E
-Climb Ladder or Descend into Hole
-.SH FILES
-.TP
-.B /etc/ucr/ucr.conf
-Config file for \fBucr\fR. Sets the paths to the game data, the screen
-size, and a few other variables. Not well documented, but fairly self\-explanatory.
-The settings for u2 through u6 don't do anything, as these games were never
-implemented in \fBucr\fR.
-.SH AUTHORS
-.B Akalabeth
-and the
-.B
-Ultima
-games were created by Richard Garriott, AKA Lord British.
-.PP
-.B ucr
-written by Gregory Maculo <prmths@emptyspaces.net>
-.PP
-Man page created by B. Watson, for the SlackBuilds.org
-project. Permission hereby granted to use this man page anywhere, for any purpose.
diff --git a/games/ucr/ucr.SlackBuild b/games/ucr/ucr.SlackBuild
deleted file mode 100644
index 5c96a84454..0000000000
--- a/games/ucr/ucr.SlackBuild
+++ /dev/null
@@ -1,86 +0,0 @@
-#!/bin/sh
-
-# Slackware build script for ucr
-
-# Written by B. Watson (yalhcru@gmail.com)
-
-# Licensed under the WTFPL. See http://www.wtfpl.net/txt/copying/ for details.
-
-PRGNAM=ucr
-VERSION=${VERSION:-0.1.2}
-BUILD=${BUILD:-1}
-TAG=${TAG:-_SBo}
-
-if [ -z "$ARCH" ]; then
- case "$( uname -m )" in
- i?86) ARCH=i586 ;;
- arm*) ARCH=arm ;;
- *) ARCH=$( uname -m ) ;;
- esac
-fi
-
-CWD=$(pwd)
-TMP=${TMP:-/tmp/SBo}
-PKG=$TMP/package-$PRGNAM
-OUTPUT=${OUTPUT:-/tmp}
-
-# Nothing in /usr/lib(64) for this package.
-if [ "$ARCH" = "i586" ]; then
- SLKCFLAGS="-O2 -march=i586 -mtune=i686"
-elif [ "$ARCH" = "i686" ]; then
- SLKCFLAGS="-O2 -march=i686 -mtune=i686"
-elif [ "$ARCH" = "x86_64" ]; then
- SLKCFLAGS="-O2 -fPIC"
-else
- SLKCFLAGS="-O2"
-fi
-
-set -e
-
-rm -rf $PKG
-mkdir -p $TMP $PKG $OUTPUT
-cd $TMP
-rm -rf $PRGNAM-$VERSION-beta
-tar xvf $CWD/$PRGNAM-$VERSION-beta.tar.gz
-cd $PRGNAM-$VERSION-beta
-chown -R root:root .
-find -L . \
- \( -perm 777 -o -perm 775 -o -perm 750 -o -perm 711 -o -perm 555 -o -perm 511 \) \
- -exec chmod 755 {} \; -o \
- \( -perm 666 -o -perm 664 -o -perm 600 -o -perm 444 -o -perm 440 -o -perm 400 \) \
- -exec chmod 644 {} \;
-
-# configure is not an autoconf script (doesn't accept arguments at all).
-./configure
-sed -i "s/-O3/$SLKCFLAGS/" Makefile
-make
-
-# No DESTDIR support either, manual install.
-mkdir -p $PKG/usr/bin $PKG/etc/$PRGNAM
-install -s -m0755 $PRGNAM $PKG/usr/bin
-mkdir -p $PKG/usr/share/$PRGNAM
-cp -a data pixmaps $PKG/usr/share/$PRGNAM
-sed "s,/usr/games/$PRGNAM/,/usr/share/$PRGNAM/," etc/$PRGNAM.conf \
- > $PKG/etc/$PRGNAM/$PRGNAM.conf.new
-
-# PNG icon made by removing blue background from icon.xpm.
-# .desktop file written for this package.
-mkdir -p $PKG/usr/share/applications $PKG/usr/share/pixmaps
-cat $CWD/$PRGNAM.desktop > $PKG/usr/share/applications/$PRGNAM.desktop
-cat $CWD/$PRGNAM.png > $PKG/usr/share/pixmaps/$PRGNAM.png
-
-# man page written for this build. Needed because the docs don't list
-# the keyboard commands for playing the game!
-mkdir -p $PKG/usr/man/man6
-gzip -9c $CWD/$PRGNAM.6 > $PKG/usr/man/man6/$PRGNAM.6.gz
-
-mkdir -p $PKG/usr/doc/$PRGNAM-$VERSION
-cp -a README CHANGELOG TODO $PKG/usr/doc/$PRGNAM-$VERSION
-cat $CWD/$PRGNAM.SlackBuild > $PKG/usr/doc/$PRGNAM-$VERSION/$PRGNAM.SlackBuild
-
-mkdir -p $PKG/install
-cat $CWD/slack-desc > $PKG/install/slack-desc
-cat $CWD/doinst.sh > $PKG/install/doinst.sh
-
-cd $PKG
-/sbin/makepkg -l y -c n $OUTPUT/$PRGNAM-$VERSION-$ARCH-$BUILD$TAG.${PKGTYPE:-tgz}
diff --git a/games/ucr/ucr.desktop b/games/ucr/ucr.desktop
deleted file mode 100644
index 3bd8f35bc5..0000000000
--- a/games/ucr/ucr.desktop
+++ /dev/null
@@ -1,8 +0,0 @@
-[Desktop Entry]
-Name=UCR
-Comment=Ultima Classic Revisited
-Exec=ucr
-Icon=ucr
-Terminal=false
-Type=Application
-Categories=Game;RolePlaying;
diff --git a/games/ucr/ucr.info b/games/ucr/ucr.info
deleted file mode 100644
index 8b47a2c21a..0000000000
--- a/games/ucr/ucr.info
+++ /dev/null
@@ -1,10 +0,0 @@
-PRGNAM="ucr"
-VERSION="0.1.2"
-HOMEPAGE="http://www.ultimaaiera.com/orphanage/ultima-classics-revisited/"
-DOWNLOAD="http://jaist.dl.sourceforge.net/project/salix-sbo/13.37/ucr/ucr-0.1.2-beta.tar.gz"
-MD5SUM="f384c2ee22fbc937c3f7a02fe9b26dac"
-DOWNLOAD_x86_64=""
-MD5SUM_x86_64=""
-REQUIRES=""
-MAINTAINER="B. Watson"
-EMAIL="yalhcru@gmail.com"
diff --git a/games/ucr/ucr.png b/games/ucr/ucr.png
deleted file mode 100644
index 0dd7e76aee..0000000000
--- a/games/ucr/ucr.png
+++ /dev/null
Binary files differ
diff --git a/games/ufoai/README b/games/ufoai/README
index 192f4d18fc..59e931a6b9 100644
--- a/games/ufoai/README
+++ b/games/ufoai/README
@@ -1,4 +1,4 @@
-UFO: Alien Invasion
+ufoai (UFO: Alien Invasion)
This is a squad based tactical strategy game, heavily inspired by the
X-COM PC games, but with twist. Old veterans will appreciate how the
@@ -9,13 +9,19 @@ is not a remake or a sequel.
It runs on a modified Quake 2 game engine.
-If you want to try out the game editor (uforadiant), install gtksourceview
-before running this build.
+If you're going to install the package on a host whose CPU lacks
+streaming SIMD extensions, set SSE=no in the script's environment. To
+find out whether SSE is supported, try "grep sse /proc/cpuinfo". If
+you get no output, you don't have SSE.
-If you're going to install the package on a host whose CPU lacks streaming
-SIMD extensions, set SSE=no in the script's environment. To find out
-whether SSE is supported, try "grep sse /proc/cpuinfo". If you get no
-output, you don't have SSE.
+By default, ufoai is built with SDL2. If you'd prefer SDL1, run this
+script with SDL2=no in the environment.
-By default, ufoai is built with SDL1. If you'd prefer SDL2, install
-SDL2 and SDL2_ttf, then run this script with SDL2=yes in the environment.
+Optional *broken* stuff: The map editor for UFO:AI is called
+uforadiant. It's disabled by default because it's broken: it
+segfaults on startup on Slackware-current (October 2021) and the
+SlackBuild maintainer hasn't figured out why, yet. If you want
+to try uforadiant, install the optional dependencies gtkglext and
+gtksourceview, then build with RADIANT=yes in the environment. If you
+try this and uforadiant *doesn't* segfault for you, *please* contact
+the maintainer!
diff --git a/games/ufoai/icons/ufo/16.png b/games/ufoai/icons/ufo/16.png
new file mode 100644
index 0000000000..4dac684395
--- /dev/null
+++ b/games/ufoai/icons/ufo/16.png
Binary files differ
diff --git a/games/ufoai/icons/ufo/256.png b/games/ufoai/icons/ufo/256.png
new file mode 100644
index 0000000000..6841287ee7
--- /dev/null
+++ b/games/ufoai/icons/ufo/256.png
Binary files differ
diff --git a/games/ufoai/icons/ufo/32.png b/games/ufoai/icons/ufo/32.png
new file mode 100644
index 0000000000..661da03275
--- /dev/null
+++ b/games/ufoai/icons/ufo/32.png
Binary files differ
diff --git a/games/ufoai/icons/ufo/48.png b/games/ufoai/icons/ufo/48.png
new file mode 100644
index 0000000000..abf2285252
--- /dev/null
+++ b/games/ufoai/icons/ufo/48.png
Binary files differ
diff --git a/games/ufoai/icons/ufo/64.png b/games/ufoai/icons/ufo/64.png
new file mode 100644
index 0000000000..f923ef7ec7
--- /dev/null
+++ b/games/ufoai/icons/ufo/64.png
Binary files differ
diff --git a/games/ufoai/icons/ufoded/16.png b/games/ufoai/icons/ufoded/16.png
new file mode 100644
index 0000000000..1739be7e18
--- /dev/null
+++ b/games/ufoai/icons/ufoded/16.png
Binary files differ
diff --git a/games/ufoai/icons/ufoded/256.png b/games/ufoai/icons/ufoded/256.png
new file mode 100644
index 0000000000..5e318a9f01
--- /dev/null
+++ b/games/ufoai/icons/ufoded/256.png
Binary files differ
diff --git a/games/ufoai/icons/ufoded/32.png b/games/ufoai/icons/ufoded/32.png
new file mode 100644
index 0000000000..7e4b45e2a8
--- /dev/null
+++ b/games/ufoai/icons/ufoded/32.png
Binary files differ
diff --git a/games/ufoai/icons/ufoded/48.png b/games/ufoai/icons/ufoded/48.png
new file mode 100644
index 0000000000..ebd83a0c05
--- /dev/null
+++ b/games/ufoai/icons/ufoded/48.png
Binary files differ
diff --git a/games/ufoai/icons/ufoded/64.png b/games/ufoai/icons/ufoded/64.png
new file mode 100644
index 0000000000..67a5d63988
--- /dev/null
+++ b/games/ufoai/icons/ufoded/64.png
Binary files differ
diff --git a/games/ufoai/icons/uforadiant/16.png b/games/ufoai/icons/uforadiant/16.png
new file mode 100644
index 0000000000..da67002fc4
--- /dev/null
+++ b/games/ufoai/icons/uforadiant/16.png
Binary files differ
diff --git a/games/ufoai/icons/uforadiant/32.png b/games/ufoai/icons/uforadiant/32.png
new file mode 100644
index 0000000000..7b9ba7abc1
--- /dev/null
+++ b/games/ufoai/icons/uforadiant/32.png
Binary files differ
diff --git a/games/ufoai/icons/uforadiant/48.png b/games/ufoai/icons/uforadiant/48.png
new file mode 100644
index 0000000000..8cb95c15f5
--- /dev/null
+++ b/games/ufoai/icons/uforadiant/48.png
Binary files differ
diff --git a/games/ufoai/icons/uforadiant/64.png b/games/ufoai/icons/uforadiant/64.png
new file mode 100644
index 0000000000..c761edef8e
--- /dev/null
+++ b/games/ufoai/icons/uforadiant/64.png
Binary files differ
diff --git a/games/ufoai/man/ufo.6 b/games/ufoai/man/ufo.6
new file mode 100644
index 0000000000..8002578ef7
--- /dev/null
+++ b/games/ufoai/man/ufo.6
@@ -0,0 +1,51 @@
+.\" This man page was written by Markus Koschany in August 2013. It is provided
+.\" under the GNU General Public License 2 or (at your option) any later version.
+.TH ufo 6 "October 2021" "ufoai-2.5" "SlackBuilds.org"
+.SH NAME
+ufo \- UFO: Alien Invasion client
+.SH SYNOPSIS
+.PP
+\fBufo\fR [\fB+<internal command> \fIoption\fR \fIvalue\fP] ...
+.SH DESCRIPTION
+\fBufo\fP is the client for the strategy game UFO: Alien Invasion (\fBufoai\fR).
+.SH OPTIONS
+.TP
+\fB\-h\fR, \fB\-\-help\fR
+Display this help
+.TP
+\fB\-q\fR, \fB\-\-quiet\fR
+Disable console output
+.TP
+\fB+<internal command>\fR
+Options passed by "+<internal command>" are the same as the in-game console understands. For the in-game console press SHIFT+ESC.
+Use the in-game \fBcvarlist\fR to get a list of all available options for the game.
+.SS Internal commands
+.TP
+\fBsnd\_init\fR
+Set this to 0 to start without sound\&.
+.TP
+\fBvid\_fullscreen\fR
+Set this to 1 to start in fullscreen mode\&.
+
+.SH "FILES"
+All data files are part of a pk3 file in \fI/usr/share/games/ufoai/base/\fR. You can extract them (pk3 files are just zip files)
+and place them in the home directory of the user running the game. Use the path \fI~/.ufoai/<VERSION>/base/\fR to place
+these files. The files that are not located in the pk3 files have a higher priority than the files that are stored in the pk3
+files. So you are able to replace any file you want like this. You can also add new maps and other game content to the \fIbase/\fR
+directory in your users home directory to be able to use new game content.
+.TP
+\fB~/.ufoai/<VERSION>/base/config.cfg\fR
+Game configuration\&.
+.TP
+\fBkeys.cfg\fR
+Game key bindings\&.
+.SH EXAMPLES
+.TP
+\fBufo +snd_init 0 +vid_fullscreen 1\fR
+Start ufo without sound and in fullscreen mode.
+.SH "SEE ALSO"
+.PP
+\fBufoded\fR(6)
+\fBufo2map\fR(6)
+\fBufomodel\fR(6)
+\fBufoslicer\fR(6)
diff --git a/games/ufoai/man/ufo2map.6 b/games/ufoai/man/ufo2map.6
new file mode 100644
index 0000000000..21380c32f3
--- /dev/null
+++ b/games/ufoai/man/ufo2map.6
@@ -0,0 +1,188 @@
+.\" This man page was written by Markus Koschany in July 2013. It is provided
+.\" under the GNU General Public License 2 or (at your option) any later version.
+.TH ufo2map "6" "October 2021" "ufoai-2.5" "SlackBuilds.org"
+.SH NAME
+ufo2map \- UFO: Alien Invasion map compiler
+.SH SYNOPSIS
+.B ufo2map
+\fI<param1 <subparam1> <subparam2> <\fR...\fI>> <param2> <\fR...\fI> \fR[\fImap\fR]
+.SH DESCRIPTION
+This is the UFO: AI map compiler.
+.SH OPTIONS
+.SS "General options:"
+.TP
+\fB\-h\fR \fB\-\-help\fR
+: print (this) help and exit
+.TP
+\fB\-nice\fR <prio>
+: priority level [unix nice level from \fB\-20\fR to 19 where 19 is the lowest priority]
+.TP
+\fB\-nofootstep\fR
+: don't generate a footstep file
+.TP
+\fB\-tracefile\fR
+: generate two csv files describing the floors and walls found by the trace functions
+.TP
+\fB\-debugfile\fR (TODO)
+: generate a trace debug file. The client can load the file to highlight map obstructions
+.TP
+\fB\-stats\fR \fB\-\-statistics\fR
+: print statistics and quit. may be used with \fB\-check\fR or \fB\-fix\fR
+.TP
+\fB\-v\fR \fB\-\-verbosity\fR <int>
+: set verbosity. higher <int> gives more output
+if it is required, this should be the first option
+0 \- no stdout, 1 \- only check/fix messages, 2 \- (compile) only mapname
+2 \- (check/fix) mapname if findings, 4 \- normal output,
+5 \- extra output, 6 \- dump (a lot extra from BSPing)
+.TP
+\fB\-V\fR \fB\-\-version\fR
+: return Version and Revision level
+.TP
+\fB\-material\fR
+: generate a material (.mat) file, do not proceed to compilation
+.SS "Lighting options:"
+.TP
+\fB\-extra\fR
+: extra light samples
+.TP
+\fB\-nolighting\fR TYPE
+: don't perform the lighting calculations, where TYPE is one of day, night, all
+default is all
+.TP
+\fB\-quant\fR
+: lightquant \- lightmap resolution downscale (e.g. 4 = 1 << 4) (values between 1 and 6)
+.TP
+\fB\-scale\fR
+: global light scale factor
+.TP
+\fB\-saturation\fR
+: saturation factor (e.g. 1.5 \- default is 1.0)
+.TP
+\fB\-contrast\fR
+: contrast factor (e.g. 1.05, default is 1.0)
+.TP
+\fB\-t\fR \fB\-\-threads\fR
+: thread amount
+.SS "Binary space partitioning (BSPing) options:"
+.TP
+\fB\-block\fR <xl> <yl>
+:
+.HP
+\fB\-blocks\fR <xl> <yl> <xh> <yh>:
+.TP
+\fB\-subdivide\fR
+: subdivide brushes for better light effects (but higher polycount)
+.TP
+\fB\-surface\fR
+: surface light scaling (float value)
+.TP
+\fB\-entity\fR
+: entity light scaling (float value)
+.TP
+\fB\-fulldetail\fR
+: don't treat details (and trans surfaces) as details
+.TP
+\fB\-info\fR
+: print bsp file info
+.TP
+\fB\-micro\fR <float>
+: warn if a brush has a volume lower than the specified float.
+brushes are tested after CSG.
+.TP
+\fB\-nobackclip\fR
+: draw downward pointing faces. (so actors cannot see up through floors
+in first person view). default is to set SURF_NODRAW to downard faces.
+.TP
+\fB\-nocsg\fR
+:
+.TP
+\fB\-gamedir\fR
+: Add another game dir to the search directories
+.TP
+\fB\-nodetail\fR
+: skip detail brushes
+.TP
+\fB\-nomerge\fR
+: skip node face merging
+.TP
+\fB\-noprune\fR
+: don't prune (or cut) nodes
+.TP
+\fB\-noshare\fR
+:
+.TP
+\fB\-notjunc\fR
+:
+.TP
+\fB\-nowater\fR
+: skip water brushes in compilation
+.TP
+\fB\-noweld\fR
+:
+.TP
+\fB\-onlyents\fR
+: modify existing bsp file with entities from map file
+.TP
+\fB\-exportlightmaps\fR
+: write lightmaps into tga images
+.TP
+\fB\-verboseentities\fR
+: also be verbose about submodels (entities)
+.PP
+.SS Mapping options:
+.IP
+These options operate on map file only. No bsp file is created.
+Output prefixed by an asterisk (*) indicates operations that would change the map file.
+\fB\-check\fR : check source map, only print information.
+\fB\-fix\fR : same subparameters as \fB\-check\fR, changes the source map file.
+.IP
+subparameters for \fB\-check\fR and \fB\-fix\fR
+.TP
+all
+: performs all checks and fixes. This is the default.
+.TP
+bru brushes
+: includes 'lvl tex mfc mbr'. Performs all checks and fixes associated with brushes.
+.TP
+ent entities
+: performs all checks and fixes associated with entities.
+.TP
+con contained
+: checks for brushes contained entirely within other brushes. includes coincident duplicates.
+.TP
+isc intersection
+: report intersection between optimisable brushes from worldspawn and func_group entities
+.IP
+this is not included in all or bru as it is not always a bad thing
+.TP
+mbr microbrush <float>
+: test for brushes smaller than <float> unit^3. this is done without the csg
+.IP
+step, unlike the bsp \fB\-micro\fR option. default 1 unit^3.
+.TP
+lvl levelflags
+: if no levelflags for a brush or entity are set, all of them are set
+.TP
+flv filllevelflags
+: ensure set levelflag bits are uninterrupted
+.TP
+ndr nodraws
+: assigns SURF_NODRAW to hidden faces
+.TP
+tex textures
+: warns when no texture or error texture is assigned.
+.IP
+ensures special textures and content/surface flags are consistent.
+.TP
+mfc mixedfacecontents
+: ensures the contentflags are the same on each face of each brush.
+.TP
+zft zfighting
+: intersecting brushes with a common face: prevent textures shimmering together
+.SH "SEE ALSO"
+.PP
+\fBufo\fR(6)
+\fBufoded\fR(6)
+\fBufomodel\fR(6)
+\fBufoslicer\fR(6)
diff --git a/games/ufoai/man/ufoded.6 b/games/ufoai/man/ufoded.6
new file mode 100644
index 0000000000..2a5389b4e7
--- /dev/null
+++ b/games/ufoai/man/ufoded.6
@@ -0,0 +1,42 @@
+.\" This man page was written by Markus Koschany in August 2013. It is provided
+.\" under the GNU General Public License 2 or (at your option) any later version.
+.TH ufoded 6 "October 2021" "ufoai-2.5" "SlackBuilds.org"
+.SH NAME
+ufoded \- UFO: Alien Invasion dedicated server
+.SH SYNOPSIS
+.PP
+\fBufoded\fR [\fB+<internal command> \fIoption\fR \fIvalue\fP] ...
+.SH DESCRIPTION
+\fBufoded\fP is the dedicated server for the strategy game UFO: Alien Invasion.
+.SH OPTIONS
+.TP
+\fB\-h\fR, \fB\-\-help\fR
+Display this help
+.TP
+\fB\-q\fR, \fB\-\-quiet\fR
+Disable console output
+.TP
+\fB+<internal command>\fR
+Options passed by "+<internal command>" are the same as the in-game console understands. For the in-game console press SHIFT+ESC.
+Use the in-game \fBcvarlist\fR to get a list of all available options for the game.
+.SH "FILES"
+All these files are part of a pk3 file in \fI/usr/share/games/ufoai/base/\fR. You can extract them (pk3 files are just zip files)
+and place them in the home directory of the user running the dedicated server. Use the path \fI~/.ufoai/<VERSION>/base/\fR to place
+these files. The files that are not located in the pk3 files have a higher priority than the files that are stored in the pk3
+files. So you are able to replace any file you want like this. You can also add new maps and other game content to the \fIbase/\fR
+directory in your users home directory to be able to use new content in the game.
+.TP
+\fBdedicated.cfg\fR
+Dedicated server config\&.
+.TP
+\fBautoexec.cfg\fR
+Commands that are executed when starting the dedicated server\&.
+.TP
+\fBmapcycle.txt\fR
+This defines the map cycle that the dedicated server will use\&.
+.SH SEE ALSO
+.PP
+\fBufo\fR(6)
+\fBufo2map\fR(6)
+\fBufomodel\fR(6)
+\fBufoslicer\fR(6)
diff --git a/games/ufoai/man/ufomodel.6 b/games/ufoai/man/ufomodel.6
new file mode 100644
index 0000000000..88011e411d
--- /dev/null
+++ b/games/ufoai/man/ufomodel.6
@@ -0,0 +1,50 @@
+.\" This man page was written by Markus Koschany in July 2013. It is provided
+.\" under the GNU General Public License 2 or (at your option) any later version.
+.TH ufomodel "6" "October 2021" "ufoai-2.5" "SlackBuilds.org"
+.SH NAME
+ufomodel \- optimizer for model files
+.SH DESCRIPTION
+UFO: Alien invasion developer tool to modify and optimize model files.
+.SH OPTIONS
+.TP
+\fB\-mdx\fR
+generate mdx files
+.TP
+\fB\-skinfix\fR
+fix skins for md2 models
+.TP
+\fB\-glcmds\fR
+remove the unused glcmds from md2 models
+.TP
+\fB\-check\fR
+perform general checks for all the models
+.TP
+\fB\-skinedit\fR <filename>
+edit skin of a model
+.TP
+\fB\-skinnum\fR <filename>
+edit the skin numbers of a model
+.TP
+\fB\-info\fR <filename>
+show model information
+.TP
+\fB\-overwrite\fR
+overwrite existing mdx files
+.TP
+\fB\-s\fR <float>
+sets the smoothness value for normal\-smoothing (in the range \fB\-1\fR.0 to 1.0)
+.TP
+\fB\-f\fR <filename>
+build tangentspace for the specified model file
+.TP
+\fB\-v\fR \fB\-\-verbose\fR
+print debug messages
+.TP
+\fB\-h\fR \fB\-\-help\fR
+show this help screen
+.SH "SEE ALSO"
+.PP
+\fBufo\fR(6)
+\fBufoded\fR(6)
+\fBufo2map\fR(6)
+\fBufoslicer\fR(6)
diff --git a/games/ufoai/man/uforadiant.6 b/games/ufoai/man/uforadiant.6
new file mode 100644
index 0000000000..d30368419a
--- /dev/null
+++ b/games/ufoai/man/uforadiant.6
@@ -0,0 +1,49 @@
+.TH UFORADIANT 6 "October 2021" "ufoai-2.5" "SlackBuilds.org"
+.SH NAME
+uforadiant \- UFO: Alien Invasion Mapeditor
+
+.SH SYNOPSIS
+.PP
+\fBuforadiant\fR
+
+.SH DESCRIPTION
+This manual page documents briefly the
+.B uforadiant
+command.
+.PP
+\fBuforadiant\fP is the map editor for the strategy game UFO: Alien Invasion.
+
+.SH OPTIONS
+.PP
+Options are passed to the gtk init function.
+
+.SH "FILES"
+.TP
+\fB~/.ufoai/radiant/settings.xml\fR
+Editor configuration\&.
+.TP
+\fB~/.ufoai/radiant/shortcuts.ini\fR
+Key bindings\&.
+.TP
+\fBbase/ufos/entities.ufo\fR
+This file is included in the 0ufos.pk3 in your system wide UFO:AI installation directory and defines the entities the editor can add to maps\&.
+
+.SH "SEE ALSO"
+.PP
+\fBufo\fR(6)
+
+.SH AUTHOR
+\fBuforadiant\fP was written by the UFO: Alien Invasion team and based on the GPLed release of GtkRadiant 1.5 by id Software.
+.PP
+This manual page was written by Florian Ludwig <dino@phidev.org>,
+for the Debian project (but may be used by others). It was
+modified slightly by B. Watson <urchlay@slackware.uk> for the SlackBuilds.org
+project.
+
+.SH "SEE ALSO"
+.PP
+\fBufo\fR(6)
+\fBufoded\fR(6)
+\fBufo2map\fR(6)
+\fBufomodel\fR(6)
+\fBufoslicer\fR(6)
diff --git a/games/ufoai/man/ufoslicer.6 b/games/ufoai/man/ufoslicer.6
new file mode 100644
index 0000000000..95b34efcbd
--- /dev/null
+++ b/games/ufoai/man/ufoslicer.6
@@ -0,0 +1,40 @@
+.\" This man page was written by Markus Koschany in July 2013. It is provided
+.\" under the GNU General Public License 2 or (at your option) any later version.
+.TH ufoslicer "6" "October 2021" "ufoai-2.5" "SlackBuilds.org"
+.SH NAME
+ufoslicer \- an UFO:AI map slicer
+.SH SYNOPSIS
+.B ufoslicer
+\fI\-t N \-s N \-c \-m bspfile\fR
+.SH DESCRIPTION
+.TP
+UFO Alien Invasion developer tool to slice map files.
+.SH OPTIONS
+.TP
+\fB\-t\fR N
+= use slice thickness of N units.
+.TP
+\fB\-s\fR N
+= use scale factor of N.
+.TP
+\fB\-c\fR
+= create a single contour map.
+.TP
+\fB\-m\fR
+= create multiple contour maps.
+.HP
+\fB\-h\fR|\-\-help = show this help screen.
+.PP
+.SH EXAMPLES
+ufoslicer \fB\-t\fR 64 \fB\-s\fR 8 maps/farm
+.PP
+The above command would slice the map "farm.bsp", moving by 64 units between slices and
+would create a 1/8th scale bitmap file.
+.PP
+The default for \fB\-t\fR is 64 units.
+.SH "SEE ALSO"
+.PP
+\fBufo\fR(6)
+\fBufoded\fR(6)
+\fBufo2map\fR(6)
+\fBufomodel\fR(6)
diff --git a/games/ufoai/mkicons.sh b/games/ufoai/mkicons.sh
new file mode 100644
index 0000000000..a0c886f91a
--- /dev/null
+++ b/games/ufoai/mkicons.sh
@@ -0,0 +1,31 @@
+#!/bin/sh
+
+# create PNG icons for ufoai.
+# requires icoutils and perl-rename from SBo.
+# this is a support script, not to be run from within the SlackBuild.
+# please do not remove this from git!
+
+SRC=${TMP:-/tmp}/SBo/ufoai-${VERSION:-2.5}
+
+mkdir -p icons
+cd icons
+for i in $SRC/build/projects/*.ico; do
+ name="$( basename $i .ico )"
+ mkdir -p $name
+ ( cd $name
+ icotool -x $i
+ rename.pl 's,.*_(\d+)x.*,$1.png,' *
+ )
+done
+
+# upstream doesn't ship 64x64 icons, let's make them.
+convert -resize 64x64 ufo/256.png ufo/64.png
+convert -resize 64x64 ufoded/256.png ufoded/64.png
+
+# the radiant icon is tiny, make a better one.
+mkdir -p uforadiant
+composite radiant/32.png ufo/64.png -geometry +16+28 uforadiant/64.png
+convert -resize 48x48 uforadiant/64.png uforadiant/48.png
+convert -resize 32x32 uforadiant/64.png uforadiant/32.png
+convert -resize 16x16 uforadiant/64.png uforadiant/16.png
+rm -rf radiant
diff --git a/games/ufoai/patches/bug-949301-mxml.patch b/games/ufoai/patches/bug-949301-mxml.patch
new file mode 100644
index 0000000000..678a0b8e3b
--- /dev/null
+++ b/games/ufoai/patches/bug-949301-mxml.patch
@@ -0,0 +1,29 @@
+From: Markus Koschany <apo@debian.org>
+Date: Mon, 17 Feb 2020 22:49:06 +0100
+Subject: bug 949301 mxml
+
+Bug-Debian: https://bugs.debian.org/949301
+Origin: https://sourceforge.net/p/ufoai/code/ci/163073ab9527cdaa33d77a713b8e46ff462a2b5c/
+---
+ src/common/xml.cpp | 7 ++++++-
+ 1 file changed, 6 insertions(+), 1 deletion(-)
+
+diff --git a/src/common/xml.cpp b/src/common/xml.cpp
+index 1629c90..8323752 100644
+--- a/src/common/xml.cpp
++++ b/src/common/xml.cpp
+@@ -519,8 +519,13 @@ static mxml_type_t mxml_ufo_type_cb (xmlNode_t* node)
+ /* You can lookup attributes and/or use the
+ * element name, hierarchy, etc... */
+ const char* type = mxmlElementGetAttr(node, "type");
+- if (type == nullptr)
++ if (type == nullptr) {
++#ifdef MXML_MAJOR_VERSION
++ type = mxmlGetElement(node);
++#else
+ type = node->value.element.name;
++#endif
++ }
+
+ if (!strcmp(type, "int"))
+ return MXML_INTEGER;
diff --git a/games/ufoai/patches/initialize-entityString.patch b/games/ufoai/patches/initialize-entityString.patch
new file mode 100644
index 0000000000..cdbf9e52bd
--- /dev/null
+++ b/games/ufoai/patches/initialize-entityString.patch
@@ -0,0 +1,26 @@
+From: Markus Koschany <apo@debian.org>
+Date: Tue, 25 Apr 2017 14:31:16 +0200
+Subject: initialize entityString
+
+Initialize entityString to avoid that ufo2map will randomly segfault when
+compiling the maps.
+
+Bug-Debian: https://bugs.debian.org/cgi-bin/bugreport.cgi?bug=860680
+Forwarded: https://sourceforge.net/p/ufoai/code/ci/bae827ba025ff1d3a56b402c27aa84401914acc4/
+---
+ src/tools/ufo2map/map.cpp | 2 +-
+ 1 file changed, 1 insertion(+), 1 deletion(-)
+
+diff --git a/src/tools/ufo2map/map.cpp b/src/tools/ufo2map/map.cpp
+index 47c49f3..f56c55e 100644
+--- a/src/tools/ufo2map/map.cpp
++++ b/src/tools/ufo2map/map.cpp
+@@ -1227,7 +1227,7 @@ void LoadMapFile (const char* filename)
+ /* Set the number of tiles to 1. This is fix for ufo2map right now. */
+ mapTiles.numTiles = 1;
+
+- char entityString[MAX_TOKEN_CHARS];
++ char entityString[MAX_TOKEN_CHARS] = "";
+ const char* ump = GetUMPName(filename);
+ if (ump != nullptr)
+ ParseUMP(ump, entityString, false);
diff --git a/games/ufoai/patches/segfault-reactionfire-mode-bug-861979.patch b/games/ufoai/patches/segfault-reactionfire-mode-bug-861979.patch
new file mode 100644
index 0000000000..d8575fe169
--- /dev/null
+++ b/games/ufoai/patches/segfault-reactionfire-mode-bug-861979.patch
@@ -0,0 +1,36 @@
+From: Markus Koschany <apo@debian.org>
+Date: Sun, 7 May 2017 18:46:50 +0200
+Subject: segfault reactionfire mode bug 861979
+
+Forwarded: http://ufoai.org/forum/index.php/topic,9111.0.html
+Origin: https://sourceforge.net/p/ufoai/code/ci/9cad041f0931b1f49e0c70f32e351a7227f0d2ff/
+---
+ src/game/inv_shared.cpp | 7 ++-----
+ 1 file changed, 2 insertions(+), 5 deletions(-)
+
+diff --git a/src/game/inv_shared.cpp b/src/game/inv_shared.cpp
+index 708e708..e5a73a5 100644
+--- a/src/game/inv_shared.cpp
++++ b/src/game/inv_shared.cpp
+@@ -633,9 +633,6 @@ const fireDef_t* Item::getSlowestFireDef () const
+ */
+ const objDef_t* Item::getReactionFireWeaponType () const
+ {
+- if (!this)
+- return nullptr;
+-
+ if (def()) {
+ const fireDef_t* fd = getFiredefs();
+ if (fd && fd->reaction)
+@@ -999,9 +996,9 @@ Item* Inventory::findInContainer (const containerIndex_t contId, const Item* con
+ */
+ bool Inventory::holdsReactionFireWeapon () const
+ {
+- if (getRightHandContainer()->getReactionFireWeaponType())
++ if (getRightHandContainer() != nullptr && getRightHandContainer()->getReactionFireWeaponType())
+ return true;
+- if (getLeftHandContainer()->getReactionFireWeaponType())
++ if (getLeftHandContainer() != nullptr && getLeftHandContainer()->getReactionFireWeaponType())
+ return true;
+ return false;
+ }
diff --git a/games/ufoai/patches/series b/games/ufoai/patches/series
new file mode 100644
index 0000000000..345b9b459e
--- /dev/null
+++ b/games/ufoai/patches/series
@@ -0,0 +1,3 @@
+initialize-entityString.patch
+segfault-reactionfire-mode-bug-861979.patch
+bug-949301-mxml.patch
diff --git a/games/ufoai/slack-desc b/games/ufoai/slack-desc
index ed917bb4df..e77f8f03dd 100644
--- a/games/ufoai/slack-desc
+++ b/games/ufoai/slack-desc
@@ -14,6 +14,6 @@ ufoai: game captures the spirit of the UFO: Enemy Unknown, the first one in
ufoai: the X-COM series. It tries to combine military realism with science
ufoai: fiction with the weirdness of an alien invasion. The game, however,
ufoai: is not a remake or a sequel.
-ufoai: It runs on a modified Quake 2 game engine.
ufoai:
-ufoai: Homepage: http://ufoai.org
+ufoai: This package @INCLUDES@ uforadiant, the map editor.
+ufoai: This package was built with SDL @SDLVER@.
diff --git a/games/ufoai/ufoai.SlackBuild b/games/ufoai/ufoai.SlackBuild
index 47acdd7c3b..bece5c6714 100644
--- a/games/ufoai/ufoai.SlackBuild
+++ b/games/ufoai/ufoai.SlackBuild
@@ -1,8 +1,9 @@
-#!/bin/sh
+#!/bin/bash
# Slackware build script for ufoai
-# Written by Joze Zobec <jozze.zepl@gmail.com>
+# Written by Joze Zobec <email removed>
+# Now maintained by B. Watson <urchlay@slackware.uk>
# THIS SOFTWARE IS PROVIDED BY THE AUTHOR ``AS IS'' AND ANY
# EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE IMPLIED
@@ -15,8 +16,24 @@
# (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF THIS
# SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
-# 20170706 bkw:
-# - fix build on -current
+# 20220430 bkw: BUILD=4: strip game.so.
+
+# 20211017 bkw: BUILD=3
+# - fix build on -current again:
+# - disable building with BFD.
+# - -std=c++11
+# - new-style icons.
+# - make .desktop files validate.
+# - get rid of useless 'memory' binary.
+# - document missing optional dep, gtkglext.
+# - patches from Debian that (hopefully) prevent segfaults.
+# - make the game default to running in a window, as there are
+# issues with fullscreen on -current with (at least) intel video.
+# - disable uforadiant by default, it segfaults on startup and
+# I haven't figured out why yet.
+# - slack-desc reflects builds options (sdl 1/2, uforadiant).
+
+# 20170706 bkw: fix build on -current
# 20151126 bkw:
# - fix build on systems that have SDL2 but not SDL2_ttf
@@ -32,10 +49,13 @@
# - allow building the radiant editor. I have no idea if it's working
# correctly, since I have no idea how to use it.
+cd $(dirname $0) ; CWD=$(pwd)
+
PRGNAM=ufoai
VERSION=${VERSION:-2.5}
-BUILD=${BUILD:-2}
+BUILD=${BUILD:-4}
TAG=${TAG:-_SBo}
+PKGTYPE=${PKGTYPE:-tgz}
if [ -z "$ARCH" ]; then
case "$( uname -m )" in
@@ -45,7 +65,11 @@ if [ -z "$ARCH" ]; then
esac
fi
-CWD=$(pwd)
+if [ ! -z "${PRINT_PACKAGE_NAME}" ]; then
+ echo "$PRGNAM-$VERSION-$ARCH-$BUILD$TAG.$PKGTYPE"
+ exit 0
+fi
+
TMP=${TMP:-/tmp/SBo}
PKG=$TMP/package-$PRGNAM
OUTPUT=${OUTPUT:-/tmp}
@@ -64,12 +88,14 @@ else
LIBDIRSUFFIX=""
fi
-# If gtksourceview is available build the radiant editor
-if pkg-config --exists gtksourceview-2.0 ; then
- radiant="--enable-uforadiant"
-else
- radiant="--disable-uforadiant"
-fi
+# If gtksourceview and gtkglext are installed and RADIANT=yes, build
+# the uforadiant editor.
+radiant="--disable-uforadiant"
+
+[ "${RADIANT:-no}" = "yes" ] && \
+ pkg-config --exists gtksourceview-2.0 && \
+ pkg-config --exists gtkglext-1.0 && \
+ radiant="--enable-uforadiant"
if [ "${SSE:-yes}" = "no" ]; then
sseopt="--disable-sse"
@@ -88,16 +114,35 @@ mv $PRGNAM-$VERSION-source $PRGNAM-$VERSION
cd $PRGNAM-$VERSION
tar xvf $CWD/$PRGNAM-$VERSION-data.tar
chown -R root:root .
-find -L . \
- \( -perm 777 -o -perm 775 -o -perm 750 -o -perm 711 -o -perm 555 -o -perm 511 \) \
- -exec chmod 755 {} \; -o \
- \( -perm 666 -o -perm 664 -o -perm 600 -o -perm 444 -o -perm 440 -o -perm 400 \) \
- -exec chmod 644 {} \;
+find -L . -perm /111 -a \! -perm 755 -a -exec chmod 755 {} \+ -o \
+ \! -perm /111 -a \! -perm 644 -a -exec chmod 644 {} \+
# 20170706 bkw: fix build with gcc7
echo 'CXXFLAGS += -Wno-narrowing' >> build/flags.mk
-[ "${SDL2:-no}" = "no" ] && EXTRAOPT="--disable-sdl2"
+# 20211017 bkw: apply patches from Debian's build 6.
+for i in $( cat $CWD/patches/series ); do
+ patch -p1 < $CWD/patches/$i
+done
+
+# 20211017 bkw: change the default from fullscreen to windowed. This
+# is helpful because on my hardware, at least, the game crashes when
+# it tries to to fullscreen... and takes the whole X server with it.
+# This is just the default; users can switch to fullscreen from
+# within the game if they want.
+sed -i '/"vid_fullscreen"/s,"1","0",' src/client/cl_video.cpp
+
+# 20211017 bkw: bfd gratuitous API changes. This disables bfd, which
+# means the game can't print a backtrace if it crashes. Since we
+# install the binaries stripped, the backtrace wouldn't have been
+# all that useful anyway.
+sed -i '/check_header.*bfd\.h/d' configure
+
+# 20211017 bkw: it ignores environment CXXFLAGS, and we need this, so:
+echo 'CXXFLAGS += -std=c++11' >> build/flags.mk
+
+# 20211017 bkw: leave this here, but default to yes.
+[ "${SDL2:-yes}" = "no" ] && EXTRAOPT="--disable-sdl2"
CFLAGS="$SLKCFLAGS" \
CXXFLAGS="$SLKCFLAGS" \
@@ -107,52 +152,93 @@ CXXFLAGS="$SLKCFLAGS" \
--datadir=/usr/share/games/$PRGNAM \
--enable-release \
$sseopt \
- --enable-memory \
+ --disable-memory \
+ --disable-testall \
--enable-ufo \
--enable-ufoded \
--enable-ufoslicer \
$EXTRAOPT \
$radiant
-make
+# Normally it's "make V=1" for verbose build, but here it's different.
+make Q=''
make lang
-make maps
-make pk3
-BINARIES=
+# We get "make: nothing to be done for..." for these 2.
+# make maps
+# make pk3
# Manual install: first the data...
mkdir -p $PKG/usr/share/games/$PRGNAM $PKG/usr/games
+strip base/game.so
cp -a base $PKG/usr/share/games/$PRGNAM/
# ...then the binaries
-if [ "$radiant" = "--enable-uforadiant" ]; then
+if [ -x radiant/uforadiant ]; then
cp -a radiant $PKG/usr/share/games/$PRGNAM/
rm -f $PKG/usr/share/games/$PRGNAM/radiant/uforadiant
BINARIES="radiant/uforadiant"
fi
-BINARIES="$BINARIES ufo ufoded ufo2map ufomodel memory ufoslicer"
+BINARIES="$BINARIES ufo ufoded ufo2map ufomodel ufoslicer"
install -s -m0755 $BINARIES $PKG/usr/games/
-# .desktop files, icons and man pages...
+# 20211017 bkw: make the .desktop files validate
+sed -i -e 's,Application;,,' \
+ -e '/^Encoding/d' \
+ -e '/^Icon/s,\.xpm,,' \
+ debian/*.desktop
+sed -i '/^StartupNotify=false/d' debian/uforadiant.desktop
+
+# .desktop files, old-style icons
mkdir -p $PKG/usr/share/applications $PKG/usr/share/pixmaps $PKG/usr/man/man6
install -m 0644 debian/*.desktop $PKG/usr/share/applications/
install -m 0644 debian/*.xpm $PKG/usr/share/pixmaps/
-install -m 0644 debian/*.6 $PKG/usr/man/man6/
+
+# man pages taken from more recent debian (ufoai_2.5-6.debian.tar.xz) and
+# modified for this SlackBuild. For one thing, I made them all section 6.
+install -m 0644 $CWD/man/*.6 $PKG/usr/man/man6/
gzip $PKG/usr/man/man6/*.6
+ln -s ufo.6.gz $PKG/usr/man/man6/$PRGNAM.6.gz
+
+# new-style icons, created by mkicons.sh, q.v.
+for i in $CWD/icons/*; do
+ app="$( basename $i )"
+ if [ -e $PKG/usr/games/$app ]; then
+ for png in $CWD/icons/$app/*.png; do
+ px="$( basename "$png" .png )"
+ size=${px}x${px}
+ dir=$PKG/usr/share/icons/hicolor/$size/apps
+ mkdir -p $dir
+ cat $png > $dir/$app.png
+ done
+ fi
+done
# Get rid of uforadiant stuff if we don't have uforadiant
-[ "$radiant" = "" ] && rm $PKG/usr/share/applications/uforadiant.desktop \
- $PKG/usr/man/man6/uforadiant.6.gz $PKG/usr/share/pixmaps/uforadiant.xpm
+if [ -x radiant/uforadiant ]; then
+ INCLUDES="includes"
+ # This looks like it doesn't belong
+ rm -f $PKG/usr/share/games/$PRGNAM/radiant/prefabs/pipes.map
+else
+ INCLUDES="does NOT include"
+ rm $PKG/usr/share/applications/uforadiant.desktop \
+ $PKG/usr/man/man6/uforadiant.6.gz \
+ $PKG/usr/share/pixmaps/uforadiant.xpm
+fi
+
+SDLVER="1.2"
+ldd $PKG/usr/games/ufo | grep -q SDL2 && SDLVER="2.0"
mkdir -p $PKG/usr/doc/$PRGNAM-$VERSION
cp -a LICENSES README COPYING $PKG/usr/doc/$PRGNAM-$VERSION
cat $CWD/$PRGNAM.SlackBuild > $PKG/usr/doc/$PRGNAM-$VERSION/$PRGNAM.SlackBuild
mkdir -p $PKG/install
-cat $CWD/slack-desc > $PKG/install/slack-desc
+sed -e "s,@INCLUDES@,$INCLUDES," \
+ -e "s,@SDLVER@,$SDLVER," \
+ $CWD/slack-desc > $PKG/install/slack-desc
cat $CWD/doinst.sh > $PKG/install/doinst.sh
cd $PKG
-/sbin/makepkg -l y -c n $OUTPUT/$PRGNAM-$VERSION-$ARCH-$BUILD$TAG.${PKGTYPE:-tgz}
+/sbin/makepkg -l y -c n $OUTPUT/$PRGNAM-$VERSION-$ARCH-$BUILD$TAG.$PKGTYPE
diff --git a/games/ufoai/ufoai.info b/games/ufoai/ufoai.info
index 8ae4ce4f24..0fc8ada144 100644
--- a/games/ufoai/ufoai.info
+++ b/games/ufoai/ufoai.info
@@ -1,12 +1,12 @@
PRGNAM="ufoai"
VERSION="2.5"
-HOMEPAGE="http://ufoai.org"
-DOWNLOAD="http://downloads.sourceforge.net/ufoai/ufoai-2.5-source.tar.bz2 \
- http://downloads.sourceforge.net/ufoai/ufoai-2.5-data.tar"
+HOMEPAGE="https://ufoai.org"
+DOWNLOAD="https://downloads.sourceforge.net/ufoai/ufoai-2.5-source.tar.bz2 \
+ https://downloads.sourceforge.net/ufoai/ufoai-2.5-data.tar"
MD5SUM="01d13816e674ed87f5343366783f2697 \
2389eb26ed2c189008fd4586a0f5e067"
DOWNLOAD_x86_64=""
MD5SUM_x86_64=""
REQUIRES=""
MAINTAINER="B. Watson"
-EMAIL="yalhcru@gmail.com"
+EMAIL="urchlay@slackware.uk"
diff --git a/games/uligo/README b/games/uligo/README
index fe6fd46fd7..7210395f01 100644
--- a/games/uligo/README
+++ b/games/uligo/README
@@ -2,6 +2,7 @@ uliGo is a program to practice solving go problems.
It comes with a few problems, and you can use it with classical
go problems, or with problems of your own.
-In order to help you to learn to handle shapes instead of certain problems
-uliGo randomly rotates and mirrors the board, and switches black and white.
-You can also use uliGo to replay (pro) games, and guess the next move.
+In order to help you to learn to handle shapes instead of certain
+problems uliGo randomly rotates and mirrors the board, and switches
+black and white. You can also use uliGo to replay (pro) games, and
+guess the next move.
diff --git a/games/uligo/uligo.SlackBuild b/games/uligo/uligo.SlackBuild
index 48c693a112..a295fa9687 100644
--- a/games/uligo/uligo.SlackBuild
+++ b/games/uligo/uligo.SlackBuild
@@ -1,4 +1,4 @@
-#!/bin/sh
+#!/bin/bash
# Slackware "build" script for uliGo
@@ -22,15 +22,25 @@
# OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF THIS SOFTWARE, EVEN IF
# ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
+cd $(dirname $0) ; CWD=$(pwd)
+
PRGNAM=uligo
VERSION=${VERSION:-0.3}
_VERSION=$(echo "$VERSION" | sed 's/\.//g') # because they use weird tarball names
BUILD=${BUILD:-1}
TAG=${TAG:-_SBo}
+PKGTYPE=${PKGTYPE:-tgz}
ARCH="noarch"
-CWD=$(pwd)
+# If the variable PRINT_PACKAGE_NAME is set, then this script will report what
+# the name of the created package would be, and then exit. This information
+# could be useful to other scripts.
+if [ ! -z "${PRINT_PACKAGE_NAME}" ]; then
+ echo "$PRGNAM-$VERSION-$ARCH-$BUILD$TAG.$PKGTYPE"
+ exit 0
+fi
+
TMP=${TMP:-/tmp/SBo}
PKG=$TMP/package-$PRGNAM
OUTPUT=${OUTPUT:-/tmp}
@@ -71,4 +81,4 @@ mkdir -p $PKG/install
cat $CWD/slack-desc > $PKG/install/slack-desc
cd $PKG
-/sbin/makepkg -l y -c n $OUTPUT/$PRGNAM-$VERSION-$ARCH-$BUILD$TAG.${PKGTYPE:-tgz}
+/sbin/makepkg -l y -c n $OUTPUT/$PRGNAM-$VERSION-$ARCH-$BUILD$TAG.$PKGTYPE
diff --git a/games/ultimatestunts/ultimatestunts.SlackBuild b/games/ultimatestunts/ultimatestunts.SlackBuild
index 4ba36eee5c..273667e0af 100644
--- a/games/ultimatestunts/ultimatestunts.SlackBuild
+++ b/games/ultimatestunts/ultimatestunts.SlackBuild
@@ -1,8 +1,8 @@
-#!/bin/sh
+#!/bin/bash
# Slackware build script for ultimatestunts
-# Copyright 2018 - 2020 Johannes Schoepfer, Germany
+# Copyright 2018 - 2022 Johannes Schoepfer, Germany
# All rights reserved.
#
# Redistribution and use of this script, with or without modification, is
@@ -22,11 +22,14 @@
# OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF THIS SOFTWARE, EVEN IF
# ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
+cd $(dirname $0) ; CWD=$(pwd)
+
PRGNAM=ultimatestunts
VERSION=${VERSION:-0.7.7.1}
SRC_VER=$(echo $VERSION | tr -d \.)
BUILD=${BUILD:-1}
TAG=${TAG:-_SBo}
+PKGTYPE=${PKGTYPE:-tgz}
if [ -z "$ARCH" ]; then
case "$( uname -m )" in
@@ -36,7 +39,11 @@ if [ -z "$ARCH" ]; then
esac
fi
-CWD=$(pwd)
+if [ ! -z "${PRINT_PACKAGE_NAME}" ]; then
+ echo "$PRGNAM-$VERSION-$ARCH-$BUILD$TAG.$PKGTYPE"
+ exit 0
+fi
+
TMP=${TMP:-/tmp/SBo}
PKG=$TMP/package-$PRGNAM
OUTPUT=${OUTPUT:-/tmp}
@@ -79,7 +86,7 @@ CXXFLAGS="$SLKCFLAGS" \
--sysconfdir=/etc \
--build=$ARCH-slackware-linux
-make
+make -j1
make sysconfdir=$PKG/etc prefix=$PKG/usr install
mv $PKG/etc/$PRGNAM.conf $PKG/etc/$PRGNAM.conf.new
@@ -102,4 +109,4 @@ cat $CWD/slack-desc > $PKG/install/slack-desc
cat $CWD/doinst.sh > $PKG/install/doinst.sh
cd $PKG
-/sbin/makepkg -l y -c n $OUTPUT/$PRGNAM-$VERSION-$ARCH-$BUILD$TAG.${PKGTYPE:-tgz}
+/sbin/makepkg -l y -c n $OUTPUT/$PRGNAM-$VERSION-$ARCH-$BUILD$TAG.$PKGTYPE
diff --git a/games/unigine-superposition-benchmark/unigine-superposition-benchmark.SlackBuild b/games/unigine-superposition-benchmark/unigine-superposition-benchmark.SlackBuild
index b9ce0d2b3e..7092a2d4d9 100644
--- a/games/unigine-superposition-benchmark/unigine-superposition-benchmark.SlackBuild
+++ b/games/unigine-superposition-benchmark/unigine-superposition-benchmark.SlackBuild
@@ -1,4 +1,4 @@
-#!/bin/sh
+#!/bin/bash
# Slackware build script for unigine-superposition-benchmark
@@ -22,10 +22,13 @@
# OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF THIS SOFTWARE, EVEN IF
# ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
+cd $(dirname $0) ; CWD=$(pwd)
+
PRGNAM=unigine-superposition-benchmark
VERSION=${VERSION:-1.1}
BUILD=${BUILD:-1}
TAG=${TAG:-_SBo}
+PKGTYPE=${PKGTYPE:-tgz}
SRCNAM=Unigine_Superposition
@@ -37,7 +40,14 @@ if [ -z "$ARCH" ]; then
esac
fi
-CWD=$(pwd)
+# If the variable PRINT_PACKAGE_NAME is set, then this script will report what
+# the name of the created package would be, and then exit. This information
+# could be useful to other scripts.
+if [ ! -z "${PRINT_PACKAGE_NAME}" ]; then
+ echo "$PRGNAM-$VERSION-$ARCH-$BUILD$TAG.$PKGTYPE"
+ exit 0
+fi
+
TMP=${TMP:-/tmp/SBo}
PKG=$TMP/package-$PRGNAM
OUTPUT=${OUTPUT:-/tmp}
@@ -84,4 +94,4 @@ cat $CWD/slack-desc > $PKG/install/slack-desc
cat $CWD/doinst.sh > $PKG/install/doinst.sh
cd $PKG
-/sbin/makepkg -l y -c n $OUTPUT/$PRGNAM-$VERSION-$ARCH-$BUILD$TAG.${PKGTYPE:-tgz}
+/sbin/makepkg -l y -c n $OUTPUT/$PRGNAM-$VERSION-$ARCH-$BUILD$TAG.$PKGTYPE
diff --git a/games/unknown-horizons/unknown-horizons.SlackBuild b/games/unknown-horizons/unknown-horizons.SlackBuild
index d4b0eea7d2..41a1419c79 100644
--- a/games/unknown-horizons/unknown-horizons.SlackBuild
+++ b/games/unknown-horizons/unknown-horizons.SlackBuild
@@ -1,4 +1,4 @@
-#!/bin/sh
+#!/bin/bash
# Slackware build script for unknown-horizons
@@ -22,10 +22,13 @@
# OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF THIS SOFTWARE, EVEN IF
# ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
+cd $(dirname $0) ; CWD=$(pwd)
+
PRGNAM=unknown-horizons
VERSION=${VERSION:-2017.2}
BUILD=${BUILD:-2}
TAG=${TAG:-_SBo}
+PKGTYPE=${PKGTYPE:-tgz}
if [ -z "$ARCH" ]; then
case "$( uname -m )" in
@@ -35,7 +38,14 @@ if [ -z "$ARCH" ]; then
esac
fi
-CWD=$(pwd)
+# If the variable PRINT_PACKAGE_NAME is set, then this script will report what
+# the name of the created package would be, and then exit. This information
+# could be useful to other scripts.
+if [ ! -z "${PRINT_PACKAGE_NAME}" ]; then
+ echo "$PRGNAM-$VERSION-$ARCH-$BUILD$TAG.$PKGTYPE"
+ exit 0
+fi
+
TMP=${TMP:-/tmp/SBo}
PKG=$TMP/package-$PRGNAM
OUTPUT=${OUTPUT:-/tmp}
@@ -96,4 +106,4 @@ cat $CWD/slack-desc > $PKG/install/slack-desc
cat $CWD/doinst.sh > $PKG/install/doinst.sh
cd $PKG
-/sbin/makepkg -l y -c n $OUTPUT/$PRGNAM-$VERSION-$ARCH-$BUILD$TAG.${PKGTYPE:-tgz}
+/sbin/makepkg -l y -c n $OUTPUT/$PRGNAM-$VERSION-$ARCH-$BUILD$TAG.$PKGTYPE
diff --git a/games/unknown-horizons/unknown-horizons.info b/games/unknown-horizons/unknown-horizons.info
index 28a410c6c1..d44060df32 100644
--- a/games/unknown-horizons/unknown-horizons.info
+++ b/games/unknown-horizons/unknown-horizons.info
@@ -5,6 +5,6 @@ DOWNLOAD="https://github.com/unknown-horizons/unknown-horizons/releases/download
MD5SUM="a99c8858f6cce0b560b97ce74518d007"
DOWNLOAD_x86_64=""
MD5SUM_x86_64=""
-REQUIRES="fifengine PyYAML"
+REQUIRES="fifengine python2-PyYAML"
MAINTAINER="Dimitris Zlatanidis"
EMAIL="d.zlatanidis@gmail.com"
diff --git a/games/unnethack/unnethack.SlackBuild b/games/unnethack/unnethack.SlackBuild
index a8e0fc6a4a..5b8d3c440d 100644
--- a/games/unnethack/unnethack.SlackBuild
+++ b/games/unnethack/unnethack.SlackBuild
@@ -1,4 +1,4 @@
-#!/bin/sh
+#!/bin/bash
# Slackware build script for unnethack
@@ -22,11 +22,20 @@
# OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF THIS SOFTWARE, EVEN IF
# ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
+# 20220221 bkw: Modified by SlackBuilds.org, BUILD=2:
+# - update for v6.0.4_20220203_1f061e93b.
+# - fix build on 15.0.
+# - include man pages.
+# - include Guidebook.txt in doc dir.
+
+cd $(dirname $0) ; CWD=$(pwd)
+
PRGNAM=unnethack
-VERSION=${VERSION:-5.2.0}
+VERSION=${VERSION:-6.0.4_20220203_1f061e93b}
SRCVERSION=$(echo $VERSION | tr _ -)
BUILD=${BUILD:-1}
TAG=${TAG:-_SBo}
+PKGTYPE=${PKGTYPE:-tgz}
if [ -z "$ARCH" ]; then
case "$( uname -m )" in
@@ -36,7 +45,11 @@ if [ -z "$ARCH" ]; then
esac
fi
-CWD=$(pwd)
+if [ ! -z "${PRINT_PACKAGE_NAME}" ]; then
+ echo "$PRGNAM-$VERSION-$ARCH-$BUILD$TAG.$PKGTYPE"
+ exit 0
+fi
+
TMP=${TMP:-/tmp/SBo}
PKG=$TMP/package-$PRGNAM
OUTPUT=${OUTPUT:-/tmp}
@@ -57,24 +70,29 @@ fi
set -e
+SRCNAM=UnNetHack
+
rm -rf $PKG
mkdir -p $TMP $PKG $OUTPUT
cd $TMP
-rm -rf $PRGNAM-$SRCVERSION
-tar xvf $CWD/$PRGNAM-$SRCVERSION.tar.gz
-cd $PRGNAM-$SRCVERSION
+rm -rf $SRCNAM-$SRCVERSION
+tar xvf $CWD/$SRCNAM-$SRCVERSION.tar.gz
+cd $SRCNAM-$SRCVERSION
chown -R root:root .
find -L . \
\( -perm 777 -o -perm 775 -o -perm 750 -o -perm 711 -o -perm 555 \
- -o -perm 511 \) -exec chmod 755 {} \; -o \
+ -o -perm 511 \) -exec chmod 755 {} \+ -o \
\( -perm 666 -o -perm 664 -o -perm 640 -o -perm 600 -o -perm 444 \
- -o -perm 440 -o -perm 400 \) -exec chmod 644 {} \;
+ -o -perm 440 -o -perm 400 \) -exec chmod 644 {} \+
+
+SLKCFLAGS+=" -fcommon"
CFLAGS="$SLKCFLAGS" \
CXXFLAGS="$SLKCFLAGS" \
./configure \
--prefix=/usr \
--libdir=/usr/lib${LIBDIRSUFFIX} \
+ --bindir=/usr/games \
--sysconfdir=/etc \
--localstatedir=/var \
--mandir=/usr/man \
@@ -85,14 +103,20 @@ CXXFLAGS="$SLKCFLAGS" \
--enable-curses-graphics \
--build=$ARCH-slackware-linux
-make
+make || make -j1
make install DESTDIR=$PKG
-find $PKG -print0 | xargs -0 file | grep -e "executable" -e "shared object" | grep ELF \
- | cut -f 1 -d : | xargs strip --strip-unneeded 2> /dev/null || true
+# 20220221 bkw: TODO: get these binaries out of /usr/share. They belong
+# in /usr/libexec (because they're not architecture-independent).
+strip $PKG/usr/share/$PRGNAM/{$PRGNAM,recover}
+
+mkdir -p $PKG/usr/man/man6
+for i in doc/*.6; do
+ gzip -9c < $i > $PKG/usr/man/man6/$( basename $i ).gz
+done
mkdir -p $PKG/usr/doc/$PRGNAM-$VERSION
-cp -a ChangeLog Files Porting README* $PKG/usr/doc/$PRGNAM-$VERSION
+cp -a ChangeLog Porting README* doc/Guidebook.txt $PKG/usr/doc/$PRGNAM-$VERSION
cat $CWD/$PRGNAM.SlackBuild > $PKG/usr/doc/$PRGNAM-$VERSION/$PRGNAM.SlackBuild
mkdir -p $PKG/install
@@ -100,4 +124,4 @@ cat $CWD/slack-desc > $PKG/install/slack-desc
cat $CWD/doinst.sh > $PKG/install/doinst.sh
cd $PKG
-/sbin/makepkg -l y -c n $OUTPUT/$PRGNAM-$VERSION-$ARCH-$BUILD$TAG.${PKGTYPE:-tgz}
+/sbin/makepkg -l y -c n $OUTPUT/$PRGNAM-$VERSION-$ARCH-$BUILD$TAG.$PKGTYPE
diff --git a/games/unnethack/unnethack.info b/games/unnethack/unnethack.info
index dd1640aa34..72e5073cb1 100644
--- a/games/unnethack/unnethack.info
+++ b/games/unnethack/unnethack.info
@@ -1,8 +1,8 @@
PRGNAM="unnethack"
-VERSION="5.2.0"
-HOMEPAGE="https://sourceforge.net/projects/unnethack/"
-DOWNLOAD="https://sourceforge.net/projects/unnethack/files/unnethack/5.2.0/unnethack-5.2.0.tar.gz"
-MD5SUM="4815b4c3faf6a6b06922a01feb4c37e4"
+VERSION="6.0.4_20220203_1f061e93b"
+HOMEPAGE="https://github.com/UnNetHack/UnNetHack/"
+DOWNLOAD="https://github.com/UnNetHack/UnNetHack/archive/6.0.4-20220203-1f061e93b/UnNetHack-6.0.4-20220203-1f061e93b.tar.gz"
+MD5SUM="e3f30f645d9a069b4bc45a698783b1e1"
DOWNLOAD_x86_64=""
MD5SUM_x86_64=""
REQUIRES=""
diff --git a/games/unvanquished/README b/games/unvanquished/README
deleted file mode 100644
index 75a25dae15..0000000000
--- a/games/unvanquished/README
+++ /dev/null
@@ -1,4 +0,0 @@
-Unvanquished is a fast-paced, futuristic FPS with RTS elements,
-pitting technologically advanced humans against hordes of highly
-adaptable aliens. The player can choose from either team, providing
-a fresh gameplay experience on both sides of the conflict.
diff --git a/games/unvanquished/cmakelists.patch b/games/unvanquished/cmakelists.patch
deleted file mode 100644
index 325e6664fc..0000000000
--- a/games/unvanquished/cmakelists.patch
+++ /dev/null
@@ -1,59 +0,0 @@
---- Unvanquished-0.50.0/daemon/CMakeLists.txt.orig 2016-06-08 14:53:22.525135294 +0300
-+++ Unvanquished-0.50.0/daemon/CMakeLists.txt 2016-06-08 17:10:11.316629219 +0300
-@@ -343,32 +343,32 @@
- if (NOT EXISTS ${DEPS_DIR})
- get_filename_component(BASENAME ${DEPS_DIR} NAME)
- set(REMOTE "http://dl.unvanquished.net/deps/${BASENAME}${DEPS_EXT}")
-- message(STATUS "Downloading dependencies from '${REMOTE}'")
-- file(DOWNLOAD ${REMOTE} ${OBJ_DIR}/${BASENAME}${DEPS_EXT}
-- SHOW_PROGRESS
-- STATUS DOWNLOAD_RESULT
-- LOG DOWNLOAD_LOG
-- )
-- list(GET DOWNLOAD_RESULT 0 DOWNLOAD_STATUS)
-- list(GET DOWNLOAD_RESULT 1 DOWNLOAD_STRING)
-- if (NOT DOWNLOAD_STATUS EQUAL 0)
-- message(FATAL_ERROR "Error downloading '${REMOTE}':
-- Status code: ${DOWNLOAD_STATUS}
-- Error string: ${DOWNLOAD_STRING}
-- Download log: ${DOWNLOAD_LOG}"
-- )
-- endif()
-- message(STATUS "Download completed successfully")
-+ #message(STATUS "Downloading dependencies from '${REMOTE}'")
-+ #file(DOWNLOAD ${REMOTE} ${OBJ_DIR}/${BASENAME}${DEPS_EXT}
-+ # SHOW_PROGRESS
-+ # STATUS DOWNLOAD_RESULT
-+ # LOG DOWNLOAD_LOG
-+ #)
-+ #list(GET DOWNLOAD_RESULT 0 DOWNLOAD_STATUS)
-+ #list(GET DOWNLOAD_RESULT 1 DOWNLOAD_STRING)
-+ #if (NOT DOWNLOAD_STATUS EQUAL 0)
-+ # message(FATAL_ERROR "Error downloading '${REMOTE}':
-+ # Status code: ${DOWNLOAD_STATUS}
-+ # Error string: ${DOWNLOAD_STRING}
-+ # Download log: ${DOWNLOAD_LOG}"
-+ # )
-+ #endif()
-+ #message(STATUS "Download completed successfully")
-
- # Extract the downloaded archive
-- execute_process(
-- COMMAND ${CMAKE_COMMAND} -E tar xzf ${OBJ_DIR}/${BASENAME}${DEPS_EXT}
-- WORKING_DIRECTORY ${CMAKE_CURRENT_SOURCE_DIR}/external_deps
-- RESULT_VARIABLE EXTRACT_RESULT
-- )
-- if (NOT EXTRACT_RESULT EQUAL 0)
-- message(FATAL_ERROR "Could not extract ${BASENAME}${DEPS_EXT}")
-- endif()
-+ #execute_process(
-+ # COMMAND ${CMAKE_COMMAND} -E tar xzf ${OBJ_DIR}/${BASENAME}${DEPS_EXT}
-+ # WORKING_DIRECTORY ${CMAKE_CURRENT_SOURCE_DIR}/external_deps
-+ # RESULT_VARIABLE EXTRACT_RESULT
-+ #)
-+ #if (NOT EXTRACT_RESULT EQUAL 0)
-+ # message(FATAL_ERROR "Could not extract ${BASENAME}${DEPS_EXT}")
-+ #endif()
- endif()
-
- # Add to paths
diff --git a/games/unvanquished/doinst.sh b/games/unvanquished/doinst.sh
deleted file mode 100644
index 790741ddfe..0000000000
--- a/games/unvanquished/doinst.sh
+++ /dev/null
@@ -1,18 +0,0 @@
-if [ -x /usr/bin/update-desktop-database ]; then
- /usr/bin/update-desktop-database -q usr/share/applications >/dev/null 2>&1
-fi
-
-config() {
- NEW="$1"
- OLD="$(dirname $NEW)/$(basename $NEW .new)"
- # If there's no config file by that name, mv it over:
- if [ ! -r $OLD ]; then
- mv $NEW $OLD
- elif [ "$(cat $OLD | md5sum)" = "$(cat $NEW | md5sum)" ]; then
- # toss the redundant copy
- rm $NEW
- fi
- # Otherwise, we leave the .new copy for the admin to consider...
-}
-
-config etc/unvanquished.conf.new
diff --git a/games/unvanquished/slack-desc b/games/unvanquished/slack-desc
deleted file mode 100644
index f1c86d04e4..0000000000
--- a/games/unvanquished/slack-desc
+++ /dev/null
@@ -1,19 +0,0 @@
-# HOW TO EDIT THIS FILE:
-# The "handy ruler" below makes it easier to edit a package description.
-# Line up the first '|' above the ':' following the base package name, and
-# the '|' on the right side marks the last column you can put a character in.
-# You must make exactly 11 lines for the formatting to be correct. It's also
-# customary to leave one space after the ':' except on otherwise blank lines.
-
- |-----handy-ruler------------------------------------------------------|
-unvanquished: unvanquished (FPS/RTS Game - Aliens vs. Humans)
-unvanquished:
-unvanquished: Unvanquished is a fast-paced, futuristic FPS with
-unvanquished: RTS elements, pitting technologically advanced
-unvanquished: humans against hordes of highly adaptable aliens.
-unvanquished: The player can choose from either team, providing
-unvanquished: a fresh gameplay experience on both sides of the
-unvanquished: conflict.
-unvanquished:
-unvanquished: Homepage: http://www.unvanquished.net/
-unvanquished:
diff --git a/games/unvanquished/unvanquished.SlackBuild b/games/unvanquished/unvanquished.SlackBuild
deleted file mode 100644
index 0ddd97b02b..0000000000
--- a/games/unvanquished/unvanquished.SlackBuild
+++ /dev/null
@@ -1,166 +0,0 @@
-#!/bin/sh
-
-# Slackware build script for unvanquished
-
-# Copyright 2014-2016 Dimitris Zlatanidis Orestiada, Greece
-# All rights reserved.
-#
-# Redistribution and use of this script, with or without modification, is
-# permitted provided that the following conditions are met:
-#
-# 1. Redistributions of this script must retain the above copyright
-# notice, this list of conditions and the following disclaimer.
-#
-# THIS SOFTWARE IS PROVIDED BY THE AUTHOR "AS IS" AND ANY EXPRESS OR IMPLIED
-# WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE IMPLIED WARRANTIES OF
-# MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE ARE DISCLAIMED. IN NO
-# EVENT SHALL THE AUTHOR BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL,
-# SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT LIMITED TO,
-# PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, DATA, OR PROFITS;
-# OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY,
-# WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR
-# OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF THIS SOFTWARE, EVEN IF
-# ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
-
-PRGNAM=unvanquished
-VERSION=${VERSION:-0.50.0}
-BUILD=${BUILD:-1}
-TAG=${TAG:-_SBo}
-
-SRCNAM=Unvanquished
-
-if [ -z "$ARCH" ]; then
- case "$( uname -m )" in
- i?86) ARCH=i586 ;;
- arm*) ARCH=arm ;;
- *) ARCH=$( uname -m ) ;;
- esac
-fi
-
-CWD=$(pwd)
-TMP=${TMP:-/tmp/SBo}
-PKG=$TMP/package-$PRGNAM
-OUTPUT=${OUTPUT:-/tmp}
-
-if [ "$ARCH" = "i586" ]; then
- SLKCFLAGS="-O2 -march=i586 -mtune=i686"
- LIBDIRSUFFIX=""
-elif [ "$ARCH" = "i686" ]; then
- SLKCFLAGS="-O2 -march=i686 -mtune=i686"
- LIBDIRSUFFIX=""
-elif [ "$ARCH" = "x86_64" ]; then
- SLKCFLAGS="-O2 -fPIC"
- LIBDIRSUFFIX="64"
-else
- SLKCFLAGS="-O2"
- LIBDIRSUFFIX=""
-fi
-
-set -e
-
-EXT_DEPS="linux32-4"
-if [ "$ARCH" = "x86_64" ]; then
- EXT_DEPS="linux64-4"
-fi
-
-rm -rf $PKG
-mkdir -p $TMP $PKG $OUTPUT
-cd $TMP
-rm -rf $SRCNAM-$VERSION
-tar xvf $CWD/$SRCNAM-$VERSION.tar.gz || tar xvf $CWD/v$VERSION.tar.gz
-cd $SRCNAM-$VERSION
-cd daemon/external_deps
-tar xvf $CWD/$EXT_DEPS.tar.bz2
-cd -
-chown -R root:root .
-find -L . \
- \( -perm 777 -o -perm 775 -o -perm 750 -o -perm 711 -o -perm 555 \
- -o -perm 511 \) -exec chmod 755 {} \; -o \
- \( -perm 666 -o -perm 664 -o -perm 640 -o -perm 600 -o -perm 444 \
- -o -perm 440 -o -perm 400 \) -exec chmod 644 {} \;
-
-if [ "$ARCH" = "x86_64" ]; then
- sed -i -e 's/Unvanquished/unvanquished/g' -e \
- 's/\/lib/\/lib64/g' -e 's/share\//share\/games\//g' archlinux/unvanquished.sh
- sed -i -e 's/\/lib/\/lib64/g' -e 's/share\//share\/games\//g' archlinux/unvanquished-tty.sh
- sed -i -e 's/\/usr\/lib/\/usr\/lib64/g' -e \
- 's/share\//share\/games\//g' archlinux/unvanquished.conf
- sed -i -e 's/\/lib/\/lib64/g' -e 's/conf.d\///g' archlinux/unvanquished.service
-else
- sed -i -e 's/Unvanquished/unvanquished/g' -e \
- 's/share\//share\/games\//g' archlinux/unvanquished.sh
- sed -i 's/share\//share\/games\//g' archlinux/unvanquished-tty.sh
- sed -i 's/share\//share\/games\//g' archlinux/unvanquished.conf
- sed -i 's/conf.d\///g' archlinux/unvanquished.service
-fi
-
-# Fix avoid download automatically dependencies
-patch -p1 < $CWD/cmakelists.patch
-
-mkdir -p build
-cd build
- cmake \
- -DCMAKE_C_FLAGS:STRING="$SLKCFLAGS" \
- -DCMAKE_CXX_FLAGS:STRING="$SLKCFLAGS" \
- -DCMAKE_INSTALL_PREFIX=/usr \
- -DBUILD_CGAME=OFF \
- -DBUILD_SGAME=OFF \
- -DCMAKE_BUILD_TYPE=Release ..
-make
-
-find $PKG -print0 | xargs -0 file | grep -e "executable" -e "shared object" | grep ELF \
- | cut -f 1 -d : | xargs strip --strip-unneeded 2> /dev/null || true
-
-mkdir -p $PKG/usr/bin \
- $PKG/etc/$PRGNAM/config \
- $PKG/usr/lib${LIBDIRSUFFIX}/$PRGNAM \
- $PKG/usr/lib${LIBDIRSUFFIX}/systemd/system \
- $PKG/usr/share/games/$PRGNAM/pkg \
- $PKG/var/lib/unvanquished-server/config
-
-# Install contents
-install -D -m0755 daemon $PKG/usr/lib${LIBDIRSUFFIX}/$PRGNAM
-install -D -m0755 daemon-tty $PKG/usr/lib${LIBDIRSUFFIX}/$PRGNAM
-install -D -m0755 daemonded $PKG/usr/lib${LIBDIRSUFFIX}/$PRGNAM
-install -D -m0755 irt_core-x86*.nexe $PKG/usr/lib${LIBDIRSUFFIX}/$PRGNAM
-install -D -m0755 nacl_helper_bootstrap $PKG/usr/lib${LIBDIRSUFFIX}/$PRGNAM
-install -D -m0755 nacl_loader $PKG/usr/lib${LIBDIRSUFFIX}/$PRGNAM
-
-cd ..
-# Install server configurations
-install -D -m0644 debian/configfiles/server.cfg $PKG/etc/$PRGNAM/config/server.cfg
-install -D -m0644 debian/configfiles/maprotation.cfg $PKG/etc/$PRGNAM/config/maprotation.cfg
-
-# Install starters
-install -D -m0755 archlinux/$PRGNAM.sh $PKG/usr/bin/$PRGNAM
-install -D -m0755 archlinux/$PRGNAM-tty.sh $PKG/usr/bin/$PRGNAM-tty
-install -D -m0644 archlinux/$PRGNAM.conf $PKG/etc/$PRGNAM.conf.new
-install -D -m0644 archlinux/$PRGNAM.service \
- $PKG/usr/lib${LIBDIRSUFFIX}/systemd/system/$PRGNAM.service
-
-# Setup server home directory
-ln -sf $PKG/etc/$PRGNAM/config/server.cfg \
- $PKG/var/lib/$PRGNAM-server/config/server.cfg
-ln -sf $PKG/etc/$PRGNAM/config/maprotation.cfg \
- $PKG/var/lib/$PRGNAM-server/config/maprotation.cfg
-
-# Copy the data-game
-mkdir -p $PKG/usr/share/games/$PRGNAM/pkg
-cp $CWD/$PRGNAM\_$VERSION.pk3 $PKG/usr/share/games/$PRGNAM/pkg
-
-mkdir -p $PKG/usr/share/applications
-install -D -m644 $CWD/$PRGNAM.desktop $PKG/usr/share/applications/$PRGNAM.desktop
-
-mkdir -p $PKG/usr/share/pixmaps/
-install -D -m644 debian/$PRGNAM.png $PKG/usr/share/pixmaps/$PRGNAM.png
-
-mkdir -p $PKG/usr/doc/$PRGNAM-$VERSION
-cp -a GPL.txt README.md COPYING.txt $PKG/usr/doc/$PRGNAM-$VERSION
-cat $CWD/$PRGNAM.SlackBuild > $PKG/usr/doc/$PRGNAM-$VERSION/$PRGNAM.SlackBuild
-
-mkdir -p $PKG/install
-cat $CWD/slack-desc > $PKG/install/slack-desc
-cat $CWD/doinst.sh > $PKG/install/doinst.sh
-
-cd $PKG
-/sbin/makepkg -l y -c n $OUTPUT/$PRGNAM-$VERSION-$ARCH-$BUILD$TAG.${PKGTYPE:-tgz}
diff --git a/games/unvanquished/unvanquished.desktop b/games/unvanquished/unvanquished.desktop
deleted file mode 100644
index 9298e80f0f..0000000000
--- a/games/unvanquished/unvanquished.desktop
+++ /dev/null
@@ -1,11 +0,0 @@
-[Desktop Entry]
-Name=Unvanquished
-Name[he]= Unvanquished
-Comment=FPS/RTS Game - Aliens vs. Humans
-Exec=unvanquished %U
-Icon=unvanquished
-Terminal=false
-Type=Application
-MimeType=x-scheme-handler/unv
-Categories=Game;ActionGame;StrategyGame;
-GenericName=Game
diff --git a/games/unvanquished/unvanquished.info b/games/unvanquished/unvanquished.info
deleted file mode 100644
index f349cdf0ff..0000000000
--- a/games/unvanquished/unvanquished.info
+++ /dev/null
@@ -1,18 +0,0 @@
-PRGNAM="unvanquished"
-VERSION="0.50.0"
-HOMEPAGE="http://www.unvanquished.net/"
-DOWNLOAD="http://ponce.cc/slackware/sources/repo/unvanquished/v0.50.0.tar.gz \
- http://ponce.cc/slackware/sources/repo/unvanquished/unvanquished_0.50.0.pk3 \
- http://ponce.cc/slackware/sources/repo/unvanquished/linux32-4.tar.bz2"
-MD5SUM="d9279452fb1a6747f830660b444e7b20 \
- 36860685567cd7e4198726e1a4b0ce40 \
- dd2cb5419bac9a1b81a8a996312e33ff"
-DOWNLOAD_x86_64="http://ponce.cc/slackware/sources/repo/unvanquished/v0.50.0.tar.gz \
- http://ponce.cc/slackware/sources/repo/unvanquished/unvanquished_0.50.0.pk3 \
- http://ponce.cc/slackware/sources/repo/unvanquished/linux64-4.tar.bz2"
-MD5SUM_x86_64="d9279452fb1a6747f830660b444e7b20 \
- 36860685567cd7e4198726e1a4b0ce40 \
- 2ba12c71625919ddc282172b74fa4887"
-REQUIRES="GeoIP SDL2 libwebp speex OpenAL opusfile lua PyYAML Jinja2"
-MAINTAINER="Dimitris Zlatanidis"
-EMAIL="d.zlatanidis@gmail.com"
diff --git a/games/uqm-megamod/README b/games/uqm-megamod/README
new file mode 100644
index 0000000000..708abc2301
--- /dev/null
+++ b/games/uqm-megamod/README
@@ -0,0 +1,14 @@
+uqm-megamod ("remastered" port of the 3DO/PC game - Star Control II)
+
+The Ur-Quan Masters (UQM) is a port of the 3DO version of the PC game
+"Star Control II". It runs on modern operating systems and is 100%
+free. The UQM MegaMod is a fork of the original UQM, which includes
+enhanced graphics and extra features/options.
+
+The original UQM is also available on SBo as games/uqm. Both uqm and
+uqm-megamod can be installed on the same system without conflict.
+
+Unlike the uqm build, uqm-megamod includes all the optional
+content (HD pack, 3DO music, voice, and video packs) in a single
+package. Content made for uqm-megamod is not necessarily compatible
+with uqm.
diff --git a/games/uqm-megamod/config.state b/games/uqm-megamod/config.state
new file mode 100644
index 0000000000..2fbafd852e
--- /dev/null
+++ b/games/uqm-megamod/config.state
@@ -0,0 +1,17 @@
+CHOICE_debug_VALUE='nodebug'
+CHOICE_graphics_VALUE='sdl2'
+CHOICE_sound_VALUE='mixsdl'
+CHOICE_mikmod_VALUE='internal'
+CHOICE_lua_VALUE='internal'
+CHOICE_ovcodec_VALUE='standard'
+CHOICE_netplay_VALUE='full'
+CHOICE_joystick_VALUE='enabled'
+CHOICE_ioformat_VALUE='stdio_zip'
+CHOICE_accel_VALUE='asm'
+CHOICE_threadlib_VALUE='sdl'
+INPUT_install_prefix_VALUE='/usr'
+INPUT_install_bindir_VALUE='$prefix/games'
+INPUT_install_libdir_VALUE='$prefix/share/games'
+INPUT_install_sharedir_VALUE='$prefix/share/games'
+INPUT_install_appdir_VALUE='$prefix/share/applications'
+INPUT_install_icondir_VALUE='$prefix/share/pixmaps'
diff --git a/games/uqm-megamod/doinst.sh b/games/uqm-megamod/doinst.sh
new file mode 100644
index 0000000000..3e5691a052
--- /dev/null
+++ b/games/uqm-megamod/doinst.sh
@@ -0,0 +1,9 @@
+if [ -x /usr/bin/update-desktop-database ]; then
+ /usr/bin/update-desktop-database -q usr/share/applications >/dev/null 2>&1
+fi
+
+if [ -e usr/share/icons/hicolor/icon-theme.cache ]; then
+ if [ -x /usr/bin/gtk-update-icon-cache ]; then
+ /usr/bin/gtk-update-icon-cache usr/share/icons/hicolor >/dev/null 2>&1
+ fi
+fi
diff --git a/games/uqm-megamod/slack-desc b/games/uqm-megamod/slack-desc
new file mode 100644
index 0000000000..f62f83266b
--- /dev/null
+++ b/games/uqm-megamod/slack-desc
@@ -0,0 +1,19 @@
+# HOW TO EDIT THIS FILE:
+# The "handy ruler" below makes it easier to edit a package description.
+# Line up the first '|' above the ':' following the base package name, and
+# the '|' on the right side marks the last column you can put a character in.
+# You must make exactly 11 lines for the formatting to be correct. It's also
+# customary to leave one space after the ':' except on otherwise blank lines.
+
+ |-----handy-ruler------------------------------------------------------|
+uqm-megamod: uqm-megamod ("remastered" port of the 3DO/PC game - Star Control II)
+uqm-megamod:
+uqm-megamod: The Ur-Quan Masters (UQM) is a port of the 3DO version of the PC game
+uqm-megamod: "Star Control II". It runs on modern operating systems and is 100%
+uqm-megamod: free. The UQM MegaMod is a fork of the original UQM, which includes
+uqm-megamod: enhanced graphics and extra features/options.
+uqm-megamod:
+uqm-megamod:
+uqm-megamod:
+uqm-megamod:
+uqm-megamod:
diff --git a/games/uqm-megamod/uqm-megamod.SlackBuild b/games/uqm-megamod/uqm-megamod.SlackBuild
new file mode 100644
index 0000000000..a81f27eb1c
--- /dev/null
+++ b/games/uqm-megamod/uqm-megamod.SlackBuild
@@ -0,0 +1,136 @@
+#!/bin/bash
+
+# Slackware build script for uqm-megamod
+
+# Written by B. Watson (urchlay@slackware.uk)
+
+# Licensed under the WTFPL. See http://www.wtfpl.net/txt/copying/ for details.
+
+# Unlike the original uqm SlackBuild, I'm including all the optional
+# content in this one build. It's the "MegaMod", so it should have
+# everything. If you think this is too much, you should be using the
+# original uqm instead.
+
+# Also, OpenAL is enabled by default (unlike in uqm). Although it's
+# still 'experimental', upstream's release binaries are built with
+# it enabled. And even so, the user has to enable it in the in-game
+# settings (default is 'mixsdl').
+
+# 20230111 bkw: updated for v0.8.2.
+
+cd $(dirname $0) ; CWD=$(pwd)
+
+PRGNAM=uqm-megamod
+VERSION=${VERSION:-0.8.2}
+BUILD=${BUILD:-1}
+TAG=${TAG:-_SBo}
+PKGTYPE=${PKGTYPE:-tgz}
+
+if [ -z "$ARCH" ]; then
+ case "$( uname -m )" in
+ i?86) ARCH=i586 ;;
+ arm*) ARCH=arm ;;
+ *) ARCH=$( uname -m ) ;;
+ esac
+fi
+
+if [ ! -z "${PRINT_PACKAGE_NAME}" ]; then
+ echo "$PRGNAM-$VERSION-$ARCH-$BUILD$TAG.$PKGTYPE"
+ exit 0
+fi
+
+TMP=${TMP:-/tmp/SBo}
+PKG=$TMP/package-$PRGNAM
+OUTPUT=${OUTPUT:-/tmp}
+
+if [ "$ARCH" = "i586" ]; then
+ SLKCFLAGS="-O2 -march=i586 -mtune=i686"
+elif [ "$ARCH" = "i686" ]; then
+ SLKCFLAGS="-O2 -march=i686 -mtune=i686"
+elif [ "$ARCH" = "x86_64" ]; then
+ SLKCFLAGS="-O2 -fPIC"
+else
+ SLKCFLAGS="-O2"
+fi
+
+set -e
+
+SRCVER="${VERSION/_/-}"
+SRCNAM="UQM-MegaMod"
+
+rm -rf $PKG
+mkdir -p $TMP $PKG $OUTPUT
+cd $TMP
+rm -rf $SRCNAM-$SRCVER
+tar xvf $CWD/$SRCNAM-$SRCVER.tar.gz
+cd $SRCNAM-$SRCVER
+chown -R root:root .
+find -L . -perm /111 -a \! -perm 755 -a -exec chmod 755 {} \+ -o \
+ \! -perm /111 -a \! -perm 644 -a -exec chmod 644 {} \+
+
+# why do people even think it's a good idea to hide the compile
+# commands behind something like this?
+export MAKE_VERBOSE=1
+
+# rather than interactive config:
+cat $CWD/config.state > config.state
+
+# hidden env var, let me test builds without OpenAL:
+[ "${OPENAL:-yes}" = "no" ] && sed -i 's,openal,mixsdl,' config.state
+
+# this generates build.vars:
+sh build.sh uqm reprocess_config
+
+# use our flags:
+sed -i "s/-O3/$SLKCFLAGS/g" build.vars
+
+# extract only -jNUM from MAKEFLAGS, any other flags, like -lNUM will break the build.
+sh build.sh uqm $(printf '%s\n' "$MAKEFLAGS" | grep -o -e '-j[0-9]\+' | head -n 1)
+
+mkdir -p $PKG/usr/games
+install -s -m0755 UrQuanMasters $PKG/usr/games/$PRGNAM
+
+# icon and desktop need a bit of love.
+for px in 16 32 48 64 128; do
+ size=${px}x${px}
+ dir=$PKG/usr/share/icons/hicolor/$size/apps
+ mkdir -p $dir
+ convert -resize $size src/res/megamod.png $dir/$PRGNAM.png
+done
+
+mkdir -p $PKG/usr/share/pixmaps
+ln -s ../icons/hicolor/48x48/apps/$PRGNAM.png $PKG/usr/share/pixmaps/$PRGNAM.png
+
+# modified copy of upstream's .desktop. ours validates...
+mkdir -p $PKG/usr/share/applications
+cat $CWD/$PRGNAM.desktop > $PKG/usr/share/applications/$PRGNAM.desktop
+
+# upstream ships a uqm.6 man page, but it's for the original uqm, not
+# the megamod (which adds many new options). don't install it. maybe
+# make a proper man page someday.
+
+CONTENT_DIR=$PKG/usr/share/games/$PRGNAM/content
+mkdir -p $CONTENT_DIR/{packages,addons}
+install -oroot -groot -m0644 content/version $CONTENT_DIR/version
+install -oroot -groot -m0644 $CWD/mm-0.8.2-content.uqm $CONTENT_DIR/packages
+
+for i in \
+ mm-0.8.2-hd.uqm \
+ mm-0.8.2-3dovoice.uqm \
+ uqm-0.8.0-3DOMusicRemastered.uqm \
+ uqm-0.8.0-3dovideo.uqm
+do
+ install -oroot -groot -m0644 $CWD/$i $CONTENT_DIR/addons
+done
+
+mkdir -p $PKG/usr/doc/$PRGNAM-$VERSION
+cp -a AUTHORS BUGS *Change* Contrib* README* licenses doc/release WhatsNew \
+ $PKG/usr/doc/$PRGNAM-$VERSION
+cat $CWD/$PRGNAM.SlackBuild > $PKG/usr/doc/$PRGNAM-$VERSION/$PRGNAM.SlackBuild
+
+mkdir -p $PKG/install
+cat $CWD/slack-desc > $PKG/install/slack-desc
+cat $CWD/doinst.sh > $PKG/install/doinst.sh
+
+cd $PKG
+/sbin/makepkg -l y -c n $OUTPUT/$PRGNAM-$VERSION-$ARCH-$BUILD$TAG.$PKGTYPE
diff --git a/games/uqm-megamod/uqm-megamod.desktop b/games/uqm-megamod/uqm-megamod.desktop
new file mode 100644
index 0000000000..afccc58acb
--- /dev/null
+++ b/games/uqm-megamod/uqm-megamod.desktop
@@ -0,0 +1,10 @@
+[Desktop Entry]
+Version=1.0
+Name=The Ur-Quan Masters MegaMod
+Comment=An interstellar adventure game
+Exec=/usr/games/uqm-megamod
+Icon=uqm-megamod
+StartupNotify=true
+Terminal=false
+Type=Application
+Categories=Game;AdventureGame;
diff --git a/games/uqm-megamod/uqm-megamod.info b/games/uqm-megamod/uqm-megamod.info
new file mode 100644
index 0000000000..d0cf3bb638
--- /dev/null
+++ b/games/uqm-megamod/uqm-megamod.info
@@ -0,0 +1,20 @@
+PRGNAM="uqm-megamod"
+VERSION="0.8.2"
+HOMEPAGE="https://uqm-mods.sourceforge.net/Home"
+DOWNLOAD="https://github.com/Serosis/UQM-MegaMod/archive/0.8.2/UQM-MegaMod-0.8.2.tar.gz \
+ https://downloads.sourceforge.net/project/uqm-mods/MegaMod/0.8.2/Content/mm-0.8.2-content.uqm \
+ https://downloads.sourceforge.net/project/uqm-mods/MegaMod/0.8.2/Content/mm-0.8.2-hd.uqm \
+ https://downloads.sourceforge.net/project/uqm-mods/MegaMod/0.8.2/Content/mm-0.8.2-3dovoice.uqm \
+ https://downloads.sourceforge.net/project/uqm-mods/MegaMod/0.8.2/Content/uqm-0.8.0-3DOMusicRemastered.uqm \
+ https://downloads.sourceforge.net/project/uqm-mods/MegaMod/0.8.2/Content/uqm-0.8.0-3dovideo.uqm"
+MD5SUM="e399ca893a0974889c2423aea8f23570 \
+ 6f21ae41751b4bed4ae98244730b9f97 \
+ 37d1918188df4c60f9f1bb2b0a273e00 \
+ 3be61785ab05344fd315e75d2efa313d \
+ 293a8b036746bcee3823f0b33c2a16a7 \
+ 8412ced77245d2f6cac31feee6df05c6"
+DOWNLOAD_x86_64=""
+MD5SUM_x86_64=""
+REQUIRES=""
+MAINTAINER="B. Watson"
+EMAIL="urchlay@slackware.uk"
diff --git a/games/uqm/README b/games/uqm/README
index 82c266609f..d7b4be8488 100644
--- a/games/uqm/README
+++ b/games/uqm/README
@@ -3,5 +3,8 @@ uqm (port of the 3DO/PC game - Star Control II)
The Ur-Quan Masters is a port of the 3DO version of the PC game "Star
Control II". It runs on modern operating systems and is 100% free.
-You may also want the optional uqm_voice and uqm_3domusic packages, for
-a more festive gaming experience.
+You may also want the optional uqm_voice, uqm_3domusic and/or
+uqm_remixes packages, for a more festive gaming experience.
+
+OpenAL support in uqm is still experimental and thus not autodetected:
+use OPENAL=yes in the environment to enable.
diff --git a/games/uqm/config.state.in b/games/uqm/config.state.in
new file mode 100644
index 0000000000..f1775ca235
--- /dev/null
+++ b/games/uqm/config.state.in
@@ -0,0 +1,14 @@
+CHOICE_debug_VALUE='nodebug'
+CHOICE_graphics_VALUE='@GFX@'
+CHOICE_sound_VALUE='@SND@'
+CHOICE_mikmod_VALUE='internal'
+CHOICE_ovcodec_VALUE='standard'
+CHOICE_netplay_VALUE='full'
+CHOICE_joystick_VALUE='enabled'
+CHOICE_ioformat_VALUE='stdio_zip'
+CHOICE_accel_VALUE='asm'
+CHOICE_threadlib_VALUE='sdl'
+INPUT_install_prefix_VALUE='/usr'
+INPUT_install_bindir_VALUE='$prefix/bin'
+INPUT_install_libdir_VALUE='$prefix/libexec'
+INPUT_install_sharedir_VALUE='$prefix/share'
diff --git a/games/uqm/doinst.sh b/games/uqm/doinst.sh
index 5fb28930db..3e5691a052 100644
--- a/games/uqm/doinst.sh
+++ b/games/uqm/doinst.sh
@@ -1,3 +1,9 @@
if [ -x /usr/bin/update-desktop-database ]; then
/usr/bin/update-desktop-database -q usr/share/applications >/dev/null 2>&1
fi
+
+if [ -e usr/share/icons/hicolor/icon-theme.cache ]; then
+ if [ -x /usr/bin/gtk-update-icon-cache ]; then
+ /usr/bin/gtk-update-icon-cache usr/share/icons/hicolor >/dev/null 2>&1
+ fi
+fi
diff --git a/games/uqm/icons/128.png b/games/uqm/icons/128.png
new file mode 100644
index 0000000000..27553420d0
--- /dev/null
+++ b/games/uqm/icons/128.png
Binary files differ
diff --git a/games/uqm/icons/16.png b/games/uqm/icons/16.png
new file mode 100644
index 0000000000..7e4fa3d323
--- /dev/null
+++ b/games/uqm/icons/16.png
Binary files differ
diff --git a/games/uqm/icons/32.png b/games/uqm/icons/32.png
new file mode 100644
index 0000000000..441a81f67b
--- /dev/null
+++ b/games/uqm/icons/32.png
Binary files differ
diff --git a/games/uqm/icons/48.png b/games/uqm/icons/48.png
new file mode 100644
index 0000000000..4cd791e688
--- /dev/null
+++ b/games/uqm/icons/48.png
Binary files differ
diff --git a/games/uqm/slack-desc b/games/uqm/slack-desc
index 5a02526c97..b5cc6c9e55 100644
--- a/games/uqm/slack-desc
+++ b/games/uqm/slack-desc
@@ -10,10 +10,10 @@ uqm: uqm (port of the 3DO/PC game - Star Control II)
uqm:
uqm: The Ur-Quan Masters is a port of the 3DO version of the PC game "Star
uqm: Control II". It runs on modern operating systems and is 100% free.
-uqm:
uqm: This package contains the game executable and documentation, as
-uqm: well as the game content (graphics, sound, etc). You may also
-uqm: want the optional uqm_voice and uqm_3domusic packages, for a more
-uqm: festive gaming experience.
+uqm: well as the game content (graphics, sound, etc).
uqm:
uqm: This package includes game content version @CONTVER@.
+uqm:
+uqm: Build options: Graphics=@RENDER@, Audio=@AUDIO@
+uqm:
diff --git a/games/uqm/uqm.1 b/games/uqm/uqm.1
deleted file mode 100644
index 98412c254a..0000000000
--- a/games/uqm/uqm.1
+++ /dev/null
@@ -1,771 +0,0 @@
-.TH "UQM" "1" "The Ur\-Quan Masters" "http://sc2.sourceforge.net"
-
-.SH NAME
-\fBuqm\fR - \fIThe Ur\-Quan Masters\fR, a modern, free port of the
-classic PC game \fIStar Control II\fR (aka \fIstarcon2\fR).
-.SH SYNOPSIS
-\fBuqm\fR \fI[options]\fR
-.SH DESCRIPTION
-Welcome to the sixth release of the Ur\-Quan Masters port. This
-document will tell you everything you need to play, even if you've
-never played the original.
-
-For those of you who have played the original, read the first section
-(starting the game and bug reports) and the last sections (Super Melee
-and control summary), and you'll be good to go.
-
-.SH "STARTING THE GAME"
-
-Simply invoke the \fBuqm\fR executable.
-This will use the default settings. The defaults and how to
-change them are listed under \fBCOMMAND LINE OPTIONS\fR, below.
-
-After a splash screen, you will see the main menu, which has five
-options:
-
-.IP "\fINew Game\fR"
-Begins a new Full Game. This is a galaxy\-spanning space
-adventure full of diplomacy, exploration, combat, high treason,
-and low cunning. The introductory cutscenes will set the scene;
-the \fBTHE STORY SO FAR\fR section below provides more extensive
-backstory for the curious.
-
-.IP "\fILoad Game\fR"
-Restores a Full Game session that was saved earlier.
-
-.IP "\fISuper Melee!\fR"
-Puts the game in Super Melee mode, where you may
-hone your space combat skills or challenge your friends to fleet
-battles. See the \fBSUPER MELEE\fR section below for details on this
-section.
-
-.IP "\fISetup\fR"
-Lets you configure many options to customize your play
-experience. Most options will take effect once you exit the setup
-menu; a few specially marked options require you to restart UQM.
-Setup options are preserved across sessions. The options are
-described under \fBCOMMAND LINE OPTIONS\fR, below.
-
-.IP "\fIQuit\fR"
-Exits the program.
-
-.SH "COMMAND LINE OPTIONS"
-
-The default options for an UQM install are 3DO music, 640x480 windowed
-mode, and pure SDL graphics drivers. You may pass various command line
-options to customize your experience. Most of these options are
-also accessible from the in\-game \fBSetup\fR menu.
-.PP
-\fINote:\fR Options set on the command line do not get saved permanently
-in the config directory. To permanently change a setting, it must be
-changed via the in\-game \fBSetup\fR menu.
-
-.IP "\fB\-r\fB \fIresolution\fR, \fB\-\-res\fB \fIresolution\fR"
-Sets the screen resolution (default \fI640x480\fR). Unless OpenGL is
-supported, the only valid values are \fI640x480\fR and \fI320x240\fR;
-setting any other value will automatically enable \fB\-\-opengl\fR if
-compiled in (otherwise, the \fB\-r\fR option will be ignored).
-.PP
-\fINote:\fR The in\-game \fBSetup\fR menu normally only allows
-\fI320x240\fR, \fI640x480\fR, \fI800x600\fR, and \fI1024x768\fR. To
-permanently set some other resolution in the config file, set it with
-the \fB\-o\fR and \fB\-r\fR options, then enter and immediately exit
-the \fBSetup\fR menu. From then on, starting \fBuqm\fR with no parameters
-will enable OpenGL and set the resolution to your custom value.
-
-.IP "\fB\-f\fR, \fB\-\-fullscreen\fR"
-Uses full screen mode. Pretty straightforward. Usually good to
-combine with \fB\-r\fR \fI320x240\fR unless you're using a scaler.
-
-.IP "\fB\-o\fR, \fB\-\-opengl\fR"
-Use OpenGL drivers. This produces higher\-quality graphics, and may be
-faster as well \-\- but it also may not work on older cards. It also
-permits use of any screen resolution.
-
-.IP "\fB\-c\fR \fImode\fR, \fB\-\-scale\fR \fImode\fR"
-Graphics scaling mode (\fIbilinear\fR, \fIbiadapt\fR, \fIbiadv\fR,
-\fItriscan\fR, \fIhq or \fInone\fR).
-Default is \fInone\fR. Try these to get smoother graphics with cost on
-performance.
-
-.IP "\fB\-b\fR \fImode\fR, \fB\-\-meleezoom\fR \fImode\fR"
-Melee zooming mode (\fIpc\fR or \fI3do\fR); \fIstep\fR is an alias for \fIpc\fR and \fIsmooth\fR
-is an alias for \fI3do\fR. Default is \fI3do\fR. Slower machine owners can set it
-to \fIpc\fR to get better performance in melee.
-
-.IP "\fB\-s\fR, \fB\-\-scanlines\fR"
-Simulates interlaced displays (by drawing every other line with darker colors).
-
-.IP "\fB\-g\fR \fIvalue\fR, \fB\-\-gamma\fR \fIvalue\fR"
-Sets gamma correction (default: \fI1.0\fR).
-1.0 causes no change (unless your graphics card
-is originally set to a different value). Higher than 1.0 makes the
-image brighter, lower than 1.0 makes it darker.
-
-.IP "\fB\-p\fR, \fB\-\-fps\fR"
-Print fps (frames per second) information in the status window.
-
-.IP "\fB\-C\fR \fIdir\fR, \fB\-\-configdir\fR \fIdir\fR"
-Set the directory where the game will store the config data.
-Default: \fI~/.uqm\fR
-
-.IP "\fB\-n\fR \fIdir\fR, \fB\-\-contentdir\fR \fIdir\fR"
-Set the directory where the game will seek its data. Default:
-\fI/usr/share/uqm/content\fR
-
-.IP "\fB\-l\fR \fIfile\fR, \fB\-\-logfile\fR \fIfile\fR"
-Set a file to receive the diagnostic information that would otherwise go
-to the console.
-
-.IP "\fB\-h\fR, \fB\-\-help\fR"
-Display a help message.
-
-.IP "\fB\-M\fR \fIlevel\fR, \fB\-\-musicvol\fR \fIlevel\fR"
-Set music volume (0\-100).
-
-.IP "\fB\-S\fR \fIlevel\fR, \fB\-\-sfxvol\fR \fIlevel\fR"
-Set sound effects volume (0\-100).
-
-.IP "\fB\-T\fR \fIlevel\fR, \fB\-\-speechvol\fR \fIlevel\fR"
-Set speech volume (0\-100). If set to 0, the game runs in 'no speech'
-mode and the oscilloscope reacts to the music.
-
-.IP "\fB\-m\fR \fItype\fR, \fB\-\-music\fR \fItype\fR"
-Set the soundtrack type (default: \fI3do\fR). Valid values for \fItype\fR are
-\fI3do\fR (use the 3DO remixed soundtrack for songs that were in fact remixed),
-and \fIpc\fR (use the .MOD based PC soundtrack everywhere).
-
-.IP "\fB\-q\fR \fIquality\fR, \fB\-\-audioquality\fR \fIquality\fR"
-Can be \fIhigh\fR, \fImedium\fR, or \fIlow\fR. Specifies how nice the audio
-sounds. Slower machines should lower the audio quality.
-
-.IP "\fB\-\-addon\fR \fIname\fR"
-Replace \fIname\fR with the name of an add\-on to enable in the game. See
-the section \fBADD\-ONS\fB below for details.
-
-.IP "\fB\-\-sound\fR \fImixer\fR"
-Can be \fIopenal\fR, \fImixsdl\fR or \fInone\fR. Specifies which driver/mixer
-to use. \fIopenal\fR is only available when it has been compiled in.
-It may produce higher\-quality sound and will probably be faster,
-but it is not very stable on linux platforms, and may not work
-well with some sound cards.
-Use \fInone\fR as a last resort if you cannot get other drivers to work,
-or if you have no soundcard.
-
-.IP "\fB\-\-stereosfx\fR"
-Enables positional sound effects in melee. Currently works only when
-using \fB\-\-sound openal\fR.
-
-.IP "\fB\-n\fR, \fB\-\-nosubtitles\fR"
-Disables subtitles.
-
-.IP "\fB\-\-cscan\fR \fIpc\fR"
-Use PC style planet information when scanning (text). Default.
-
-.IP "\fB\-\-cscan\fR \fI3do\fR"
-Use 3DO style planet information when scanning (pictograms).
-
-.IP "\fB\-\-menu\fR \fIpc\fR"
-Use PC style menus (text) and 'CREW'/'BATT' in melee instead of icons.
-Default.
-
-.IP "\fB\-\-menu\fR \fI3do\fR"
-Use 3DO style menus (pictograms).
-
-.IP "\fB\-\-font\fR \fIpc\fR"
-Use PC style fonts and colors.
-Default.
-
-.IP "\fB\-\-font\fR \fI3do\fR"
-Use 3DO style fonts and colors.
-
-.IP "\fB\-\-scroll\fR \fIpc\fR"
-Scroll voice\-over/subtitles 1 page at a time when using left/right arrow keys
-Default.
-
-.IP "\fB\-\-scroll\fR \fI3do\fR"
-Scroll voice\-over/subtitles smoothly while holding down left/right arrow keys
-
-.IP "\fB\-i\fR \fI3do\fR, \fB\-\-intro\fR \fI3do\fR"
-Use the 3DO intro and ending movies (if you have them).
-The default.
-
-.IP "\fB\-i\fR \fIpc\fR, \fB\-\-intro\fR \fIpc\fR"
-Use the PC intro and ending sequences and slide shows. These will be also
-played if you do not have 3DO movies, regardless of \fB\-i\fR option.
-
-.IP "\fB\-\-shield\fR \fIpc\fR"
-Use PC style static slave shield graphic.
-Default.
-
-.IP "\fB\-\-shield\fR \fI3do\fR"
-Use 3DO style throbbing slave shield graphic. This somewhat increases the
-load on CPU while in orbit. Do not use if your CPU cannot handle that.
-
-
-.SH "NOT OFFICIALLY SUPPORTED OPTIONS"
-
-The following options may not exist in all builds and can change without
-notice at any time.
-
-.IP "\fB\-\-accel\fR \fItype\fR"
-Can be \fInone\fB, \fIdetect\fB, \fImmx\fB, \fI3dnow\fB, \fIsse\fB
-(also \fIaltivec\fB if/when
-added; or other platforms). Specifies which platform accelerations
-to use for graphics and sound, if any. All specific platform code can
-only be used when compiled in.
-
-.IP "\fB\-\-netport1\fR \fIport\fR"
-.IP "\fB\-\-netport2\fR \fIport\fR"
-Specifies the default port that the bottom or top player respectively
-will connect to or accept incoming connections on. If this parameter
-is not specified, \fI21837\fR will be used. This value can be changed later
-in the SuperMelee Net menu. Your firewall needs to be set up to allow
-TCP connections from/to the used port.
-
-.IP "\fB\-\-nethost1\fR \fIhost\fR"
-.IP "\fB\-\-nethost2\fR \fIhost\fR"
-Specifies the default name or ip number of the host to connect to for
-the bottom or player. If this parameter is not specified, UQM will
-not attempt an outgoing connection, but instead listen for an incoming
-connection.
-
-.IP "\fB\-\-netdelay\fR \fIframes\fR"
-Set the default input delay (in frames). See the \fBSUPER MELEE\fR section
-for details.
-
-.SH "THE STORY SO FAR"
-For the past decade, Earth and the rest of the Alliance of Free Stars
-has fought the Ur\-Quan and their Hierarchy of Battle Thralls. In the
-course of the War, the Earthlings discovered a factory world of the
-\fBPrecursors\fR \- an impossibly advanced that disappeared tens of
-thousands of years ago. This colony, Unzervalt (aka Vela I), lost all
-contact with Earth shortly after landfall.
-
-You are Captain Zelnick, a human that was born on Unzervalt and who
-possesses a remarkable knack for Precursor technology. You were the
-one who worked out how to activate the Precursor installation.
-
-It was a factory for building starships. However, Unzervalt is
-mineral\-poor, and there were not enough materials available to
-construct a complete vessel. Your task is to command this craft, the
-Vindicator, and return to Earth to tell them of the abandoned colony.
-Also, if the War with the Ur\-Quan continues, you must fight for Earth
-and the Alliance as best you can.
-
-There is a great deal more to this story. Asking Starbase Commander
-Hayes for background information will give you most of it.
-
-.SH "INTERPLANETARY EXPLORATION"
-
-When in a Solar system, use the thrust and steering controls to move
-about the system. Intersecting a planet will move you to the
-planetary system; flying over a planet or moon will then put you into
-orbit. From there you can talk to the inhabitants, or, if the planet
-is uninhabited, send a lander down to gather minerals, investigate
-energy readings, or capture life forms.
-
-.SH "PLANET LANDING"
-
-To land on a planet, you need to achieve orbit, then fill a planet
-lander with crew and send them down. You will usually want to scan
-the planet first. Mineral scans will indicate easily harvestable
-mineral ores and other resources. Energy scans will indicate unusual
-installations, which will effectively always be worth investigating.
-Biological scans will show where life forms are on the surface.
-
-Minerals are necessary for building up and maintaining your flagship,
-so harvest them wherever you can. There are nine varieties, each
-color coded:
-
-\fBCOMMON ELEMENTS\fR (\fIcarbon\fR, \fInitrogen\fR) are cyan. Worth 1 resource unit
-(RU) per unit.
-
-\fBCORROSIVES\fR (\fIchlorine\fR, \fIiodine\fR) are red. 2 RU per unit.
-
-\fBBASE METALS\fR (\fIiron\fR, \fItin\fR) are grey. These are common, and usually worth
-harvesting, but not terribly valuable. 3 RU per unit.
-
-\fBNOBLE GASSES\fR (\fIargon\fR, \fIxenon\fR) are blue. 4 RU per unit.
-
-\fBRARE EARTHS\fR (\fIlanthanum\fR, \fIytterbium\fR) are green. 5 RU per unit.
-
-\fBPRECIOUS ELEMENTS\fR (\fIgold\fR, \fIsilver\fR) are yellow. 6 RU per unit.
-
-\fBRADIOACTIVES\fR (\fIuranium\fR, \fIastatine\fR) are orange. 8 RU per unit.
-
-\fBEXOTICS\fR (\fIantimatter\fR, \fImagnetic monopoles\fR) are purple, and a princely 25
-RU per cargo unit.
-
-Minerals may be unloaded at Earth Starbase by talking to Commander
-Hayes, which will give you RU that you may spend to upgrade your
-flagship.
-
-However, there are many hazards on planetary surfaces. Life forms are
-often hostile, and need to be subdued with your stunner or evaded.
-Earthquakes (expanding circles) can hurt your crew, lightning may
-crisp them, or lava flows and hotspots can fry them. Be careful,
-especially on hotter or more seismically and atmospherically active
-worlds. If your crew level starts dropping dramatically, flee quickly
-with the ESCAPE key!
-
-Stunned life forms may be captured and analyzed by your planet
-landers. The information you gain from this may not be immediately
-useful, but it will eventually come in handy.
-
-Landing on a planet costs fuel, and the heavier the planet, the more
-fuel it requires. Make sure you don't spend so much fuel exploring
-planets that you can't get back to Sol!
-
-.SH "INTERSTELLAR TRAVEL"
-
-When you leave a solar system, you will push up into HyperSpace. In
-HyperSpace you can travel great distances quickly, but you must
-continuously thrust to move. Otherwise, you will gradually slow to a
-stop.
-
-While you can fly about in HyperSpace just like you do in a star
-system, the Galaxy is LARGE, and you will usually want to use the
-Auto\-Pilot. To use the Auto\-Pilot, select "Starmap" on the menu.
-This will show you a map of the quadrant (the galactic Core is in the
-upper right corner). To fly to a location, move the cursor there and
-press Enter. Then press Space to engage the Auto\-Pilot.
-
-.SH DIPLOMACY
-
-When you encounter an alien starship, you will usually get a picture
-of their task force and a chance to choose between conversation and
-fighting. If you choose to fight, you will transition immediately to
-space combat (below). Otherwise, you will talk first. If talks go
-poorly, space combat will likely ensue.
-
-If the task force shows ships streaming off in all directions, you
-have reached a fortified world, and there are an unlimited number of
-starships facing you. You cannot win such a fight \- if combat ensues,
-you will need to warp out.
-
-.SH "SPACE COMBAT"
-
-When combat begins, you are prompted to select a ship from your task
-force. A one\-on\-one space combat then begins, and continues until
-either the enemy fleet is destroyed (in which case you salvage the
-wrecks and continue the game), your flagship is destroyed (ending the
-game), or your flagship warps out of combat (consuming 5 fuel units
-but ending the encounter).
-
-Each ship has two major stats: Crew and Combat Battery. Crew are
-effectively hit points. Getting hit by weapons kills crew, and if all
-crew are eliminated, the craft is destroyed. Firing weapons typically
-requires energy from the combat batteries, which is replaced over
-time. The precise speed of energy regeneration and cost of weapons
-fire varies by ship.
-
-Space flight is \fImostly\fR inertial (you'll drift if you stop
-thrusting), but each ship has a maximum velocity that can only be
-exceeding by "gravity whipping" around the planet. Don't hit the
-planet unless you want to take LOTS of damage.
-
-Each ship has a primary and secondary weapon mode, unique to that
-race's craft. The descriptions of those follow.
-
-.SH "SHIP DESCRIPTIONS"
-
-.IP "Androsynth Guardian"
-Primary weapon: Fires homing acid bubble clouds.
-.br
-Secondary weapon: Transforms into the 'Blazer', a comet that does
-considerable damage by ramming its opponents.
-
-.IP "Ariloulaleelay Skiff"
-Primary weapon: Auto\-aiming, short\-range laser
-.br
-Secondary weapon: Random teleport
-.br
-Note: The Skiff is inertia\-less, and stops instantly when thrust is
-removed.
-
-.IP "Chenjesu Broodhome"
-Primary weapon: Crystal Shard. Will travel until the fire button is
-released, then shatters.
-.br
-Secondary weapon: De\-energizing Offensive Guided Interceptor.
-Launches an autonomous DOGI that rams the opponent to drain their
-combat batteries.
-
-.IP "Chmmr Avatar"
-Primary weapon: Immensely powerful short\-range laser
-.br
-Secondary weapon: Tractor beam.
-.br
-Note: Has three orbiting "ZapSats" that attack anything that gets in
-range.
-
-.IP "Druuge Mauler"
-Primary weapon: Long range, high\-recoil cannon
-.br
-Secondary weapon: Sets one crew on fire to gain combat energy.
-
-.IP "Earthling Cruiser"
-Primary weapon: Homing nuclear missile
-.br
-Secondary weapon: Point\-defense laser
-
-.IP "Ilwrath Avenger"
-Primary weapon: Short\-range flamethrower
-.br
-Secondary weapon: Cloaking device
-
-.IP "Kohr\-Ah Marauder "
-Primary weapon: Spinning blades that stop and home when the fire
-button is released
-.br
-Secondary weapon: Fiery Ring of Inevitable and Eternal Destruction
-(F.R.I.E.D.), a short\-range corona of energy that blocks shots and
-inflicts lots of damage
-
-.IP "Melnorme Trader"
-Primary weapon: Charged shot. The longer the fire button is held, the
-stronger the shot.
-.br
-Secondary weapon: Confusion beam that scrambles enemy controls.
-
-.IP "Mmrnmhrm X\-Form"
-Primary weapon: Lasers (X\-form) or homing missiles (Y\-form).
-.br
-Secondary weapon: Switch between X\-Form and Y\-Form.
-
-.IP "Mycon Podship"
-Primary weapon: Homing Plasmoid.
-.br
-Secondary weapon: Regenerate 4 crew.
-
-.IP "Orz Nemesis"
-Primary weapon: Howitzer cannon.
-.br
-Secondary weapon: Secondary with left and right arrows rotates the
-primary cannon. Secondary with Primary launches space marines that
-invade the enemy ship and kill their crew.
-
-.IP "Pkunk Fury"
-Primary weapon: Three\-way cannon
-.br
-Secondary weapon: Fling insults at opponent. This is the only way the
-Pkunk can regenerate combat energy.
-.br
-Note: On occasion, a destroyed Fury will be resurrected with full fuel
-and power.
-
-.IP "Shofixti Scout"
-Primary weapon: Energy Dart.
-.br
-Secondary weapon: Glory Device. When pressed three times, the ship
-will self\-destruct, inflicting vast damage on nearby vessels.
-
-.IP "Slylandro Probe"
-Primary weapon: Lighting weapon.
-.br
-Secondary weapon: Absorb a nearby asteroid and convert to combat
-power. This is the only way the Probe can recharge.
-.br
-Note: The Probe is inertia\-less and always in motion. Pressing thrust
-will reverse its direction.
-
-.IP "Spathi Eluder"
-Primary weapon: Simple forward cannon.
-.br
-Secondary weapon: Backward Utilized Tracking Torpedo (B.U.T.T.), a
-homing missile fired from the rear of the vessel.
-
-.IP "Supox Blade"
-Primary weapon: Forward firing glob weapon
-.br
-Secondary weapon: Secondary + left or right will cause you to drift
-laterally, while Secondary + thrust will make you fly backwards. This
-cancels your current velocity, so be careful!
-
-.IP "Syreen Penetrator"
-Primary weapon: Particle Beam Stiletto.
-.br
-Secondary weapon: "Syreen Call" \- psychic attack that induces enemy
-crew to jump ship, where you (or your opponent) may capture them to
-add to your complement
-
-.IP "Thraddash Torch"
-Primary weapon: Straightforward blaster cannon.
-.br
-Secondary weapon: Afterburner. The afterburner exhaust does more
-damage then the blaster, so use it as a weapon!
-
-.IP "Umgah Drone"
-Primary weapon: Anti\-Matter cone. Does not require combat batteries to use.
-.br
-Secondary weapon: Fly backwards suddenly and at high speed.
-.br
-Note: The Drone only recharges batteries if you do not fire for a long
-time, and then the energy all returns in one lump.
-
-.IP "Ur\-Quan Dreadnought"
-Primary weapon: Fusion Blast.
-.br
-Secondary weapon: Launches autonomous fighters to harrass the enemy.
-When they run low on fuel, they will fly back to the Dreadnought.
-Catch them before they expire. Each fighter requires one crew to
-pilot it, so take care not to weaken the core ship.
-
-.IP "Utwig Jugger"
-Primary weapon: Six\-shot cannon. Requires no combat battery energy to fire.
-.br
-Secondary weapon: Force shield. Absorbing hits re\-energizes your
-batteries. When the batteries are exhausted, the shield is
-permanently disabled until combat ends.
-
-.IP "VUX Intruder"
-Primary weapon: Gigawatt laser.
-.br
-Secondary weapon: Limpet mines that track enemy ships and slow them
-down dramatically if they hit.
-
-.IP "Yehat Terminator"
-Primary weapon: Twin autocannons.
-.br
-Secondary weapon: Force shield.
-
-.IP "Zoq\-Fot\-Pik Stinger"
-Primary weapon: Anti\-matter spray gun.
-.br
-Secondary weapon: "Tongue attack", a point\-blank range attack that
-does grievous damage.
-
-.SH "SUPER MELEE"
-
-Super Melee mode is pure combat. It's designed to let you hone your
-skills for the full game, or to challenge your friends to fleet
-matches. Selecting "Super Melee!" from the main menu will bring you
-to the super melee main screen.
-
-This screen is dominated by the fleet design screen. Move the cursor
-over a ship slot and press ENTER to change the ship assignment, or
-press DELETE to remove the ship. You may select the fleet name and
-press ENTER to edit the fleet name to something of your choice. The
-number next to the fleet name lists the fleet strength; this is simply
-the sum of the point values of all ships in the fleet.
-
-The right hand side of the screen has buttons for managing the battle.
-Each side has four buttons associated with it: LOAD, SAVE, CONTROL,
-and NET. The LOAD and SAVE buttons let you load and save fleets. A
-variety of fleets of various strengths are pre\-defined, and you may
-add your own by saving fleets you design.
-
-The CONTROL button has one of five settings. HUMAN CONTROL puts the
-fleet under the control of a human player. (The precise controls for
-that player are set in the Setup menu, but the bottom player's
-controls are always the same as the full game's controls.) Then there
-are three levels of computer control:
-
-\fBWEAK CYBORG\fR is not a particularly good shot, and will only use
-special weapons if the ship absolutely requires the special weapon
-to function at all (Pkunk, Slylandro). This difficulty level only
-appears in the full game when fighting crippled ships.
-
-\fBGOOD CYBORG\fR will actually use its special weapon, but it's still
-not much of a threat. The Good cyborg provides a gentle
-introduction to Star Control combat if you are unfamiliar with the
-gameplay. However, you will soon wish to switch to...
-
-\fBAWESOME CYBORG\fR. The AI will fully exploit each ship's abilities,
-and is also a tolerably good shot, compensating for inertia and
-choosing its shots. Enemies you meet in the full game are almost
-always piloted at this level. If a battle is giving you trouble
-in the full game, this is the setting you want.
-
-The last control option is \fBNETWORK CONTROL\fR, which will be set if that
-side is controlled by a non\-local opponent. To set up a network game,
-push the NET button on the side you wish to be under your opponent's
-control.
-
-In order to connect, you must agree on a port (the default is \fB21837\fR,
-which should not require any change) and set a net delay in frames.
-To compensate for network lag, a keypress or keyrelease will only take
-effect after this many frames. While higher values make your ship
-seem to respond more sluggishly, they give the keypress information
-more time to reach the remote party. If the game stutters, this is
-because it is waiting for this keypress information to arrive, which
-is an indication that the input delay is too low. Super Melee runs at
-24 frames per second, each frame delayed will delay the input by about
-42ms. The delay used is the maximum of the desired value for both
-parties. The default is 2. Values lower than 4 are typically
-acceptable in terms of responsiveness. Future versions may
-automatically decide on the best value to use.
-
-Once the port and delay are set, one player must select the first
-option (Wait for incoming connection), while the other enters his
-opponent's hostname or IP address into the Host field and then pushes
-"Connect." Once the connection is established, the control scheme for
-the remote player will flip to NETWORK CONTROL to register the
-connection. To disconnect, change it away back to one of the HUMAN or
-CYBORG options. Once connected, you are both free to edit your fleets
-to provide a properly balanced battle.
-
-Once all fleets are in readiness, press the BATTLE button in the
-center right. (In a network game, both players must select it with no
-intervening fleet edits. Moving away from BATTLE or having your
-opponent change their fleet will cancel your readiness state, and you
-will need to reselect the BATTLE button.) When all players are ready,
-the battle begins.
-
-The ship selection screen is much as it would be in the full game,
-with two notable exceptions: a question mark in the upper right allows
-you to select a new ship randomly from those remaining, and a red X
-allows you to exit the combat entirely. (It is also possible to exit
-the melee at any time by pressing F10, just as one can exit anything.)
-If nobody quits, the combat will continue until one side has been
-completely destroyed. At this point, both fleets are shown so that
-one may compare initial and remaining fleet strengths. Press a key to
-return to the melee menu.
-
-To return to the main menu after finishing with Super Melee mode, push
-the QUIT button in the lower right.
-
-.SH "GENERAL GAME CONTROLS SUMMARY"
-.nf
-F1 or PAUSE Pause game
-F10 Exit game
-.fi
-
-.SH "FULL GAME CONTROLS SUMMARY"
-
-.nf
- Space flight
-
-UP Thrust
-LEFT and RIGHT: Steer
-SPACE or RIGHT SHIFT: Main menu
-
- Menus
-
-Arrow Keys: Scroll through selections
-ENTER or RIGHT CTRL: Make selection
-SPACE or RIGHT SHIFT: Up one level
-
- Conversations
-
-LEFT and RIGHT: Rewind/Forward
-UP and DOWN: Scroll through selections
-ENTER or RIGHT CTRL: Make selection
-SPACE or RIGHT SHIFT: Skip, Show/Hide summary
-
- Star Map
-
-Arrow Keys: Move the crosshair
-ENTER or RIGHT CTRL: Select destination
-SPACE or RIGHT SHIFT: Main menu
-Keypad +: Zoom in
-Keypad \-: Zoom out
-/ (not on the keypad): Begin search.
- (Type star or constellation name to
- find matches)
-TAB: Jump to next match.
-
- Space Combat
-
-UP: Thrust
-LEFT and RIGHT: Steer
-RIGHT CTRL or ENTER: Fire Primary Weapon
-RIGHT SHIFT: Fire Secondary Weapon
-ESCAPE: Emergency Warp Escape
-
-
- Planet Exploration
-
-UP: Forward
-LEFT and RIGHT: Steer
-RIGHT CTRL or ENTER: Fire stun bolt
-RIGHT SHIFT or ESCAPE: Blast off
-.fi
-
-.SH "MELEE CONTROLS SUMMARY"
-
-.nf
- Top Player
-
-W: Thrust
-A and D: Steer
-V: Fire Primary Weapon
-B: Fire Secondary Weapon
-
- Bottom Player
-
-UP or ENTER: Thrust
-LEFT and RIGHT: Steer
-RIGHT CTRL or ENTER: Fire Primary Weapon
-RIGHT SHIFT: Fire Secondary Weapon
-.fi
-
-These controls are configurable from the Setup Menu. You may define
-up to six "Input Templates" and assign a template to either or both
-players. Some commonly used key configurations are pre\-defined, as
-well as popular variants. To change key bindings, select the binding
-you wish to change and press ENTER. At the dialog box, press the key
-(or joystick gesture) that you wish to assign to this action.
-
-
-.SH "SAVED GAMES"
-
-The saved games are kept in your personal directory for uqm data.
-This directory is automatically created the first time you start the
-game. On Unix systems this personal uqm data is stored in \fB~/.uqm\fB.
-
-You will generally only need this if you intend to transfer savegames
-to another computer. Note that currently games saved on an PowerPC Mac
-will not work on a PC (or an Intel Mac), and vice versa. AMD64 and
-Intel savegames may be safely transferred.
-
-.SH "ADD\-ONS"
-
-As of version 0.3, The Ur\-Quan Masters has basic support for add\-on
-packages. Though it is not very elaborate yet, you can install some
-content add\-ons.
-
-Inside the directory where the content is installed, in the content/packages/
-directory, there is a directory 'addons/'. In this directory, you can
-create new directories with .zip files to be used in addition to the
-standard content .zip files.
-When you specify the command\-line option '\-\-addon <addon>', the .zip files
-inside the directory content/packages/addons/<addon> will be included
-in the game. '\-\-addon' may be specified more than once to enable multiple
-add\-ons.
-
-.SH "BUG REPORTS"
-
-After several years of enthusiastic testing, UQM has dramatically
-improved its stability, but it is still beta software, and bugs
-certainly still lurk. Upon finding a problem, we'd like you to report
-it, but before you do, please do the following:
-
-\- Try to isolate what causes it: "Crashes with a null dereference
-about half the time when firing and taunting with a Pkunk" is better
-than "Melee doesn't work." If the game crashes, notice what error
-is produced; if the game hangs, check to see if the game\-exit key
-(F12) works.
-
-\- Go to the bug database at http://bugs.uqm.stack.nl/
-and post a report of the problem there. Search the database first if
-it has been already posted; if we get many duplicate reports, processing
-them eats our time from actual development. If it's been reported, and
-you have more information, feel free to confirm that you've reproduced it
-by adding a comment to the report. If ten people have already confirmed it,
-though, it's probably best to treat it as duly reported.
-
-\- Whenever possible, for bugs that only occur under certain conditions,
-include a save game with your bug report that duplicates the bug.
-In the case of a crash, a stack trace can be very helpful for us too.
-If you don't know what a stack trace is, don't worry about it.
-
-\- If your issue is more like "support request" than bug report and you
-want help from other users, then posting it to our forum might be
-more appropriate: http://uqm.stack.nl/forum/
-
-.SH "SEE ALSO"
-The full documentation in \fB/usr/doc/uqm-0.6.3\fR
-.br
-The official Ur-Quan Masters web site at \fBhttp://sc2.sourceforge.net/\fR
diff --git a/games/uqm/uqm.SlackBuild b/games/uqm/uqm.SlackBuild
index 1e7ff55891..461c59a213 100644
--- a/games/uqm/uqm.SlackBuild
+++ b/games/uqm/uqm.SlackBuild
@@ -1,20 +1,30 @@
-#!/bin/sh
+#!/bin/bash
# Slackware build script for uqm
-# Written by B. Watson (yalhcru@gmail.com)
+# Written by B. Watson (urchlay@slackware.uk)
# Licensed under the WTFPL. See http://www.wtfpl.net/txt/copying/ for details.
+# 20230107 bkw: BUILD=2, fix doinst.sh.
+
+# 20210304 bkw: update for v0.8.0. script changed a good bit, can't
+# build older versions. Note to self: don't mix engine and content
+# versions without testing thoroughly! 0.7.0 engine seemed to work
+# with 0.8.0 content, but crashed when trying to enter the setup menu!
+
# 20201025 bkw: update build for new content pack 0.8.0. This mostly
# has fixes for typos in the in-game text strings. The game engine
# hasn't changed, so VERSION now has both versions. Also, moved
# the binary to /usr/games where it belongs.
+cd $(dirname $0) ; CWD=$(pwd)
+
PRGNAM=uqm
-VERSION=${VERSION:-0.7.0+0.8.0}
-BUILD=${BUILD:-1}
+VERSION=${VERSION:-0.8.0}
+BUILD=${BUILD:-2}
TAG=${TAG:-_SBo}
+PKGTYPE=${PKGTYPE:-tgz}
# Extract the tarball and content versions. If there's no + in
# VERSION, both these will end up equal to VERSION. Otherwise use a +
@@ -30,7 +40,11 @@ if [ -z "$ARCH" ]; then
esac
fi
-CWD=$(pwd)
+if [ ! -z "${PRINT_PACKAGE_NAME}" ]; then
+ echo "$PRGNAM-$VERSION-$ARCH-$BUILD$TAG.$PKGTYPE"
+ exit 0
+fi
+
TMP=${TMP:-/tmp/SBo}
PKG=$TMP/package-$PRGNAM
OUTPUT=${OUTPUT:-/tmp}
@@ -51,57 +65,81 @@ fi
set -e
+# Starting with 0.8.0, we have options to use SDL2 and
+# OpenAL. Upstream made SDL2 the default, so we'll use it if
+# available (autodetect). However, OpenAL is labelled 'experimental'
+# and disabled by default, so we'll require OPENAL=yes to enable it
+# (if present).
+
+if pkg-config --exists sdl2; then
+ SDL2DEF=yes
+else
+ SDL2DEF=no
+fi
+
+SDL2=${SDL2:-$SDL2DEF}
+OPENGL=${OPENGL:-yes}
+
+case "$SDL2-$OPENGL" in
+ yes-*) GFX=sdl2 ;; # SDL2 builds always support OpenGL
+ no-no) GFX=pure ;;
+ no-yes) GFX=opengl ;;
+ *) echo "*** Invalid SDL2 and/or OPENGL values, use only 'yes' or 'no'" 1>&2
+ exit 1 ;;
+esac
+
+case "${OPENAL:-no}" in
+ yes) SND=openal ;;
+ no) SND=mixsdl ;;
+ *) echo "*** Invalid OPENAL value $OPENAL, use only 'yes' or 'no'" 1>&2
+ exit 1 ;;
+esac
+
rm -rf $PKG
mkdir -p $TMP $PKG $OUTPUT
cd $TMP
rm -rf $PRGNAM-$SRCVER
-tar xvf $CWD/$PRGNAM-$SRCVER-source.tgz
+tar xvf $CWD/$PRGNAM-$SRCVER-src.tgz
cd $PRGNAM-$SRCVER
chown -R root:root .
find -L . -perm /111 -a \! -perm 755 -a -exec chmod 755 {} \+ -o \
\! -perm /111 -a \! -perm 644 -a -exec chmod 644 {} \+
-# uqm uses a custom build.sh to configure and build the source.
-# It's not a bad system, but it's interactive only, meaning I have
-# to script answers to the build.sh prompts, hence build_config().
-
+# Previously this script ran the interactive config, piping responses to it.
+# This is a cleaner way to do it.
# WARNING: If you're updating this SlackBuild for a new version of
-# uqm, check and make sure the build.sh options haven't changed!
+# uqm, check and make sure the config.state options haven't changed!
+sed -e "s,@GFX@,$GFX," \
+ -e "s,@SND@,$SND," \
+ $CWD/config.state.in \
+ > config.state
+
+# reprocess_config creates build.vars based on choices in config.state
+sh build.sh uqm reprocess_config
+# For the other options in config.state, we take the defaults.
# It'd be more efficient to require a system-wide libmikmod instead of
# using the included (statically linked) one, but it's not that big
# a library, and this way we don't have any external dependencies.
-build_config() {
- echo 1 # Top-level menu option 1: Build type...
- echo 1 # type 1 = release
- echo 2 # Top-level menu option 2: OpenGL support...
- echo 2 # 1 = Don't include, 2 = Include OpenGL graphics support
- echo 4 # Top-level menu option 4: Tracker music support
- echo 1 # 1 = included libmikmod, 2 = system libmikmod
- echo 11 # Top-level menu option 11: Installation paths...
- # (N.B. option 11 was option 10 in uqm 0.6.2)
- echo 1 # Option 1 = Installation prefix
- echo /usr # New value:
- echo 3 # Option 3 = Location for non-sharable data
- # New value:
- echo \$prefix/libexec
- echo # ENTER; back to top-level menu
- echo # ENTER at top-level menu = done
-}
-
-build_config | sh build.sh uqm config
-sed -i -e "s/-O3/$SLKCFLAGS/" -e '/LDFLAGS/s,-lz,-lz -lm,' build.vars
+# Use our flags.
+sed -i "s/-O3/$SLKCFLAGS/" build.vars
+
+# Actually compile the thing.
sh build.sh uqm
-strip $PRGNAM
+# "sh build.sh uqm install" would install it, but it doesn't look like
+# DESTDIR works (?). Manual install does.
+
+# Real game binary lives in libexec.
mkdir -p $PKG/usr/libexec/$PRGNAM
-cp -a $PRGNAM $PKG/usr/libexec/$PRGNAM
+install -s -m0755 -oroot -groot $PRGNAM $PKG/usr/libexec/$PRGNAM
+# Shell script wrapper tells the real binary where to find the content.
mkdir -p $PKG/usr/games
-cat $PRGNAM-wrapper > $PKG/usr/games/$PRGNAM
-chmod 0755 $PKG/usr/games/$PRGNAM
+install -oroot -groot -m0755 $PRGNAM-wrapper $PKG/usr/games/$PRGNAM
+# Include (mostly) empty content and addons dirs in the package.
mkdir -p $PKG/usr/share/$PRGNAM/content/{addons,packages}
cp content/version $PKG/usr/share/$PRGNAM/content
@@ -109,15 +147,42 @@ cp content/version $PKG/usr/share/$PRGNAM/content
cat $CWD/$PRGNAM-$CONTVER-content.uqm > \
$PKG/usr/share/$PRGNAM/content/packages/$PRGNAM-$CONTVER-content.uqm
-# Man page created for SBo (it's basically the README + roff markup)
-mkdir -p $PKG/usr/man/man1
-gzip -9c $CWD/$PRGNAM.1 > $PKG/usr/man/man1/$PRGNAM.1.gz
+# Use upstream's man page (used to ship our own).
+mkdir -p $PKG/usr/man/man6
+gzip -9c doc/users/$PRGNAM.6 > $PKG/usr/man/man6/$PRGNAM.6.gz
-# .desktop and icon borrowed from Debian
+# .desktop borrowed from Debian
mkdir -p $PKG/usr/share/applications
cat $CWD/$PRGNAM.desktop > $PKG/usr/share/applications/$PRGNAM.desktop
+
+# icons converted from "src/res/darwin/The Ur-Quan Masters.icns",
+# with icns2png.
+for i in $CWD/icons/*.png; do
+ size="$( basename $i .png )"
+ dir="$PKG/usr/share/icons/hicolor/${size}x${size}/apps"
+ mkdir -p "$dir"
+ cat $i > $dir/$PRGNAM.png
+done
+
+# old-style icon
mkdir -p $PKG/usr/share/pixmaps
-cat $CWD/$PRGNAM.xpm > $PKG/usr/share/pixmaps/$PRGNAM.xpm
+ln -s ../icons/hicolor/48x48/apps/$PRGNAM.png $PKG/usr/share/pixmaps/$PRGNAM.png
+
+# dynamic slack-desc (for my own sanity!)
+ldd $PKG/usr/libexec/$PRGNAM/$PRGNAM > ldd.out
+if grep -q libSDL2 ldd.out; then
+ RENDER="SDL-2.0"
+elif grep -q libGL ldd.out; then
+ RENDER="SDL-1.2 (OpenGL)"
+else
+ RENDER="SDL-1.2 (software rendering)"
+fi
+
+if grep -q "libopenal" ldd.out; then
+ AUDIO="OpenAL"
+else
+ AUDIO="SDL"
+fi
mkdir -p $PKG/usr/doc/$PRGNAM-$VERSION
cp $PRGNAM.lsm AUTHORS BUGS COPYING ChangeLog Contributing README WhatsNew \
@@ -125,8 +190,11 @@ cp $PRGNAM.lsm AUTHORS BUGS COPYING ChangeLog Contributing README WhatsNew \
cat $CWD/$PRGNAM.SlackBuild > $PKG/usr/doc/$PRGNAM-$VERSION/$PRGNAM.SlackBuild
mkdir -p $PKG/install
-sed "s,@CONTVER@,$CONTVER," $CWD/slack-desc > $PKG/install/slack-desc
+sed -e "s,@CONTVER@,$CONTVER," \
+ -e "s,@RENDER@,$RENDER," \
+ -e "s,@AUDIO@,$AUDIO," \
+ $CWD/slack-desc > $PKG/install/slack-desc
cat $CWD/doinst.sh > $PKG/install/doinst.sh
cd $PKG
-/sbin/makepkg -l y -c n $OUTPUT/$PRGNAM-$VERSION-$ARCH-$BUILD$TAG.${PKGTYPE:-tgz}
+/sbin/makepkg -l y -c n $OUTPUT/$PRGNAM-$VERSION-$ARCH-$BUILD$TAG.$PKGTYPE
diff --git a/games/uqm/uqm.info b/games/uqm/uqm.info
index 1818213104..178c47132f 100644
--- a/games/uqm/uqm.info
+++ b/games/uqm/uqm.info
@@ -1,12 +1,12 @@
PRGNAM="uqm"
-VERSION="0.7.0+0.8.0"
-HOMEPAGE="http://sc2.sourceforge.net/"
-DOWNLOAD="http://downloads.sourceforge.net/sc2/uqm-0.7.0-source.tgz \
- http://downloads.sourceforge.net/sc2/uqm-0.8.0-content.uqm"
-MD5SUM="f9018ea0493d7dac6a9e1006b00af7df \
+VERSION="0.8.0"
+HOMEPAGE="https://sc2.sourceforge.net/"
+DOWNLOAD="https://downloads.sourceforge.net/sc2/uqm-0.8.0-src.tgz \
+ https://downloads.sourceforge.net/sc2/uqm-0.8.0-content.uqm"
+MD5SUM="63c4c300736aa3ac9b841e31b9a76389 \
6cbc9d51fa63e07c0f4d1d061136d816"
DOWNLOAD_x86_64=""
MD5SUM_x86_64=""
REQUIRES=""
MAINTAINER="B. Watson"
-EMAIL="yalhcru@gmail.com"
+EMAIL="urchlay@slackware.uk"
diff --git a/games/uqm/uqm.xpm b/games/uqm/uqm.xpm
deleted file mode 100644
index fb472c6347..0000000000
--- a/games/uqm/uqm.xpm
+++ /dev/null
@@ -1,138 +0,0 @@
-/* XPM */
-static char *ur-quan-icon-std-3[] = {
-/* columns rows colors chars-per-pixel */
-"32 32 100 2",
-" c black",
-". c #0D350C",
-"X c #0B390B",
-"o c #142F12",
-"O c #1E2713",
-"+ c #2F1D16",
-"@ c #3E1B0F",
-"# c #3D1A10",
-"$ c #2B251D",
-"% c #342111",
-"& c #2C2D24",
-"* c #2F3026",
-"= c #32342B",
-"- c #373732",
-"; c #3B3D39",
-": c #064A06",
-"> c #044E04",
-", c #084108",
-"< c #035802",
-"1 c #036202",
-"2 c #036D02",
-"3 c #027802",
-"4 c #3D413C",
-"5 c #3E433E",
-"6 c #414540",
-"7 c #434843",
-"8 c #484D47",
-"9 c #4F544E",
-"0 c #595C55",
-"q c #605C5A",
-"w c #695A5E",
-"e c #7F5567",
-"r c #038303",
-"t c #018A01",
-"y c #029100",
-"u c #019800",
-"i c #009B00",
-"p c #009E00",
-"a c #00A200",
-"s c #00A800",
-"d c #00AE00",
-"f c #01B200",
-"g c #01B700",
-"h c #01BB00",
-"j c #00BE00",
-"k c #33B70D",
-"l c #00C300",
-"z c #00C600",
-"x c #01C701",
-"c c #00CA00",
-"v c #00D000",
-"b c #00D400",
-"n c #00D800",
-"m c #00DE00",
-"M c #1FCB10",
-"N c #18D40F",
-"B c #00E100",
-"V c #00E500",
-"C c #00EC00",
-"Z c #0EE30B",
-"A c #01F101",
-"S c #03F102",
-"D c #01F401",
-"F c #29C010",
-"G c #40B110",
-"H c #4FB114",
-"J c #5CAA0D",
-"K c #5AAE13",
-"L c #61A90D",
-"P c #CB4002",
-"I c #CE4102",
-"U c #CC4902",
-"Y c #DA4703",
-"T c #DC4C03",
-"R c #DC4F04",
-"E c #DE5306",
-"W c #DE6D02",
-"Q c #E15C0A",
-"! c #E47D01",
-"~ c #E6793C",
-"^ c #A5BA7F",
-"/ c #B8E332",
-"( c #BDE438",
-") c #EC9101",
-"_ c #EC9C01",
-"` c #E7A601",
-"' c #EBB601",
-"] c #ECBC02",
-"[ c #CFD41A",
-"{ c #DFC809",
-"} c #C7E742",
-"| c #D4E84C",
-" . c #D7E755",
-".. c #D5E55B",
-"X. c #9BAC93",
-"o. c #99AB98",
-"O. c #9EB589",
-"+. c #D1D0D5",
-"@. c #D3D1D7",
-"#. c None",
-/* pixels */
-"#.#.#.#.#.#.#.#.#.#.#.#.#.#.#.#.#.#.#.#.#.#.#.#.#.#.#.#.#.#.#.#.",
-"#.#.#.#.#.#.#.#.#.#.#.#.#.#.#.#.#.#.#.#.#.#.#.#.#.#.#.#.#.#.#.#.",
-"#.#.#.#.#.#.#.#.#.#.#.# + #.#.#.#.#.#.#.#.#.#.#.#.#.#.#.#.#.#.#.",
-"#.#.#.#.#.#.#.#.#.; * Q Y = #.#.o > < < < < < > < % = #.#.#.#.#.",
-"#.#.#.#.#.#.#.#.6 = 9 ~ ' Y + X u a L L L L L d d U P 6 #.#.#.#.",
-"#.#.#.#.#.#.#.5 . 2 q o.O.Q % , y p J ) ) ` { [ h a L P #.#.#.#.",
-"#.#.#.#.#.#.& : 2 p M O.@.w = . 2 p a d d d K .} F x W @ 5 #.#.",
-"#.#.#.#.#.o > 3 u c V l 5 4 #.o 1 u d v c c x ( ..| N j y o #.#.",
-"#.#.#.#.* > 3 u l B h > - #.#.o 2 p s b n n n c ( ..| M p o #.#.",
-"#.#.#.- , r p c n s : 5 #.#.5 : u p d b v c v b c / ./ u O #.#.",
-"#.#.#.o 3 f n N 8 o 6 #.#.7 3 a p a j n v x x l c x K ( p O #.#.",
-"#.#.5 < a n N w q ; & #.#.> a u a h b m c l x j c l H ( a O #.#.",
-"#.#.& t v n t w w 9 & $ > u p s j v n x j j x l c x H ( a O #.#.",
-"#.#.1 n n 3 O $ 5 0 5 y a p d c v c j h x b V C C C Z / p O #.#.",
-"#.#.2 m y $ #.#.* 5 y k p d c b k M x l b V D D D D D D y $ #.#.",
-"#.#.< r O #.#.#.= 3 a 9 0 k k H X.M c b C D V u y g j s , 8 #.#.",
-"#.#.o = #.#.#.& t a a j J ) ) J x c n A D A > O $ O . $ #.#.#.#.",
-"#.#.#.#.#.#.& < u a f x J _ _ ) x v C D C > 7 #.#.- @ % #.#.#.#.",
-"#.#.#.X 1 > < < t f c x J ) ) J b C D V , 7 #.#.; # Y P $ #.#.#.",
-"#.#.#.# J d s p y h m X.H k k H O.Z d o #.#.#.& & 0 e _ P # #.#.",
-"#.#.#.# U G a h x y v M x v B D k N 4 $ #.#.= > 3 8 X.O.Y @ #.#.",
-"#.#.#.O P ] F c c d t v m n D D Z q q 5 $ & X 3 p l O.+.; ; #.#.",
-"#.#.#.#.@ Y ] L x c h y h Z D t O 8 w 8 ; o 3 s v m k 5 #.#.#.#.",
-"#.#.#.#.#.@ ! ] L x b m t k r - #.- 8 0 7 2 a b B h > #.#.#.#.#.",
-"#.#.#.#.#.7 @ ) ] Z B A b . 6 #.#.#.O 9 3 p c B f : #.#.#.#.#.#.",
-"#.#.#.#.#.#.8 @ Y ` k Z N & #.#.#.& < r a c n u , #.#.#.#.#.#.#.",
-"#.#.#.#.#.#.#.#.+ P R K N * #.#.. < t h m m u O #.#.#.#.#.#.#.#.",
-"#.#.#.#.#.#.#.#.#.+ @ @ r = #.. 1 t f j d 2 o #.#.#.#.#.#.#.#.#.",
-"#.#.#.#.#.#.#.#.#.#.#.#.#.#.#.. : 1 : X * = #.#.#.#.#.#.#.#.#.#.",
-"#.#.#.#.#.#.#.#.#.#.#.#.#.#.#.#.#.#.#.#.#.#.#.#.#.#.#.#.#.#.#.#.",
-"#.#.#.#.#.#.#.#.#.#.#.#.#.#.#.#.#.#.#.#.#.#.#.#.#.#.#.#.#.#.#.#.",
-"#.#.#.#.#.#.#.#.#.#.#.#.#.#.#.#.#.#.#.#.#.#.#.#.#.#.#.#.#.#.#.#."
-};
diff --git a/games/uqm_3domusic/README b/games/uqm_3domusic/README
index 26ad6ef055..905b8cc12f 100644
--- a/games/uqm_3domusic/README
+++ b/games/uqm_3domusic/README
@@ -7,8 +7,3 @@ This package contains optional game content that provides high-quality
in-game music. You don't need this package to play the game. Without
this package, there will still be music during the game; it just doesn't
sound as nice.
-
-Note: I'm aware there was a recent uqm-0.8.0-3domusic release.
-However, the contents of the .uqm file (which is really just a zip
-file) are byte-for-byte identical to the 0.7.0 one, so it seems silly
-to upgrade.
diff --git a/games/uqm_3domusic/uqm_3domusic.SlackBuild b/games/uqm_3domusic/uqm_3domusic.SlackBuild
index 00c934b9cb..89c3902274 100644
--- a/games/uqm_3domusic/uqm_3domusic.SlackBuild
+++ b/games/uqm_3domusic/uqm_3domusic.SlackBuild
@@ -1,18 +1,27 @@
-#!/bin/sh
+#!/bin/bash
# Slackware build script for uqm_3domusic
-# Written by B. Watson (yalhcru@gmail.com)
+# Written by B. Watson (urchlay@slackware.uk)
# Licensed under the WTFPL. See http://www.wtfpl.net/txt/copying/ for details.
+# 20210302 bkw: Yay, there's finally an update after 10 years!
+
+cd $(dirname $0) ; CWD=$(pwd)
+
PRGNAM=uqm_3domusic
-VERSION=${VERSION:-0.7.0}
+VERSION=${VERSION:-0.8.0}
ARCH=noarch
BUILD=${BUILD:-1}
TAG=${TAG:-_SBo}
+PKGTYPE=${PKGTYPE:-tgz}
+
+if [ ! -z "${PRINT_PACKAGE_NAME}" ]; then
+ echo "$PRGNAM-$VERSION-$ARCH-$BUILD$TAG.$PKGTYPE"
+ exit 0
+fi
-CWD=$(pwd)
TMP=${TMP:-/tmp/SBo}
PKG=$TMP/package-$PRGNAM
OUTPUT=${OUTPUT:-/tmp}
@@ -31,4 +40,4 @@ mkdir -p $PKG/install
cat $CWD/slack-desc > $PKG/install/slack-desc
cd $PKG
-/sbin/makepkg -l y -c n $OUTPUT/$PRGNAM-$VERSION-$ARCH-$BUILD$TAG.${PKGTYPE:-tgz}
+/sbin/makepkg -l y -c n $OUTPUT/$PRGNAM-$VERSION-$ARCH-$BUILD$TAG.$PKGTYPE
diff --git a/games/uqm_3domusic/uqm_3domusic.info b/games/uqm_3domusic/uqm_3domusic.info
index a4d3f8cbb6..1d13a5a3f0 100644
--- a/games/uqm_3domusic/uqm_3domusic.info
+++ b/games/uqm_3domusic/uqm_3domusic.info
@@ -1,10 +1,10 @@
PRGNAM="uqm_3domusic"
-VERSION="0.7.0"
-HOMEPAGE="http://sc2.sourceforge.net/"
-DOWNLOAD="http://downloads.sourceforge.net/sc2/uqm-0.7.0-3domusic.uqm"
-MD5SUM="86a5e376d9b76888add1d10818f0ab9f"
+VERSION="0.8.0"
+HOMEPAGE="https://sc2.sourceforge.net/"
+DOWNLOAD="https://downloads.sourceforge.net/sc2/uqm-0.8.0-3domusic.uqm"
+MD5SUM="9e5801d45ca12028b486cdeb83568c02"
DOWNLOAD_x86_64=""
MD5SUM_x86_64=""
REQUIRES="uqm"
MAINTAINER="B. Watson"
-EMAIL="yalhcru@gmail.com"
+EMAIL="urchlay@slackware.uk"
diff --git a/games/uqm_remixes/uqm_remixes.SlackBuild b/games/uqm_remixes/uqm_remixes.SlackBuild
index 86bde28824..a247b55365 100644
--- a/games/uqm_remixes/uqm_remixes.SlackBuild
+++ b/games/uqm_remixes/uqm_remixes.SlackBuild
@@ -1,22 +1,29 @@
-#!/bin/sh
+#!/bin/bash
# Slackware build script for uqm_remixes
-# Written by B. Watson (yalhcru@gmail.com)
+# Written by B. Watson (urchlay@slackware.uk)
# Licensed under the WTFPL. See http://www.wtfpl.net/txt/copying/ for details.
# Upstream's files are unversioned. VERSION here is the version of uqm the
# files are intended for (according to their web site).
+cd $(dirname $0) ; CWD=$(pwd)
+
PRGNAM=uqm_remixes
-VERSION=${VERSION:-0.7.0}
+VERSION=${VERSION:-0.8.0}
BUILD=${BUILD:-1}
TAG=${TAG:-_SBo}
+PKGTYPE=${PKGTYPE:-tgz}
ARCH=noarch
-CWD=$(pwd)
+if [ ! -z "${PRINT_PACKAGE_NAME}" ]; then
+ echo "$PRGNAM-$VERSION-$ARCH-$BUILD$TAG.$PKGTYPE"
+ exit 0
+fi
+
TMP=${TMP:-/tmp/SBo}
PKG=$TMP/package-$PRGNAM
OUTPUT=${OUTPUT:-/tmp}
@@ -29,7 +36,7 @@ mkdir -p $TMP $PKG $OUTPUT
mkdir -p $PKG/usr/share/uqm/content/addons/
# "sources" are zip files that don't get extracted (game uses them as-is).
-for disc in 1 2 3 4; do
+for disc in 1 2 3 4-1; do
install -m0644 -oroot -groot \
$CWD/uqm-remix-disc$disc.uqm \
$PKG/usr/share/uqm/content/addons/
@@ -44,4 +51,4 @@ mkdir -p $PKG/install
cat $CWD/slack-desc > $PKG/install/slack-desc
cd $PKG
-/sbin/makepkg -l y -c n $OUTPUT/$PRGNAM-$VERSION-$ARCH-$BUILD$TAG.${PKGTYPE:-tgz}
+/sbin/makepkg -l y -c n $OUTPUT/$PRGNAM-$VERSION-$ARCH-$BUILD$TAG.$PKGTYPE
diff --git a/games/uqm_remixes/uqm_remixes.info b/games/uqm_remixes/uqm_remixes.info
index 660407d9b9..5bb7214031 100644
--- a/games/uqm_remixes/uqm_remixes.info
+++ b/games/uqm_remixes/uqm_remixes.info
@@ -1,16 +1,16 @@
PRGNAM="uqm_remixes"
-VERSION="0.7.0"
-HOMEPAGE="http://sc2.sourceforge.net/"
-DOWNLOAD="http://downloads.sourceforge.net/project/sc2/UQM%20Remix%20Packs/UQM%20Remix%20Pack%201/uqm-remix-disc1.uqm \
- http://downloads.sourceforge.net/project/sc2/UQM%20Remix%20Packs/UQM%20Remix%20Pack%202/uqm-remix-disc2.uqm \
- http://downloads.sourceforge.net/project/sc2/UQM%20Remix%20Packs/UQM%20Remix%20Pack%203/uqm-remix-disc3.uqm \
- http://downloads.sourceforge.net/project/sc2/UQM%20Remix%20Packs/UQM%20Remix%20Pack%204/uqm-remix-disc4.uqm"
+VERSION="0.8.0"
+HOMEPAGE="https://sc2.sourceforge.net/"
+DOWNLOAD="https://downloads.sourceforge.net/project/sc2/UQM%20Remix%20Packs/UQM%20Remix%20Pack%201/uqm-remix-disc1.uqm \
+ https://downloads.sourceforge.net/project/sc2/UQM%20Remix%20Packs/UQM%20Remix%20Pack%202/uqm-remix-disc2.uqm \
+ https://downloads.sourceforge.net/project/sc2/UQM%20Remix%20Packs/UQM%20Remix%20Pack%203/uqm-remix-disc3.uqm \
+ https://downloads.sourceforge.net/project/sc2/UQM%20Remix%20Packs/UQM%20Remix%20Pack%204/uqm-remix-disc4-1.uqm"
MD5SUM="09f242d8d72166d1d5ccbd3d99c93e7d \
fbc8bdcb709939d559d8c7216ad15cc2 \
5ccc6d4ac301ae98e172ac6835dcdead \
- d3dc6036588662391a3820ca6b222dd6"
+ 3fb63f4ac514343ed4b4b5b194c413fb"
DOWNLOAD_x86_64=""
MD5SUM_x86_64=""
REQUIRES="uqm"
MAINTAINER="B. Watson"
-EMAIL="yalhcru@gmail.com"
+EMAIL="urchlay@slackware.uk"
diff --git a/games/uqm_voice/uqm_voice.SlackBuild b/games/uqm_voice/uqm_voice.SlackBuild
index a24530eb0a..b052cb90fa 100644
--- a/games/uqm_voice/uqm_voice.SlackBuild
+++ b/games/uqm_voice/uqm_voice.SlackBuild
@@ -1,20 +1,27 @@
-#!/bin/sh
+#!/bin/bash
# Slackware build script for uqm_voice
-# Written by B. Watson (yalhcru@gmail.com)
+# Written by B. Watson (urchlay@slackware.uk)
# Licensed under the WTFPL. See http://www.wtfpl.net/txt/copying/ for details.
# 20201026 bkw: updated for v0.8.0
+cd $(dirname $0) ; CWD=$(pwd)
+
PRGNAM=uqm_voice
VERSION=${VERSION:-0.8.0}
ARCH=noarch
BUILD=${BUILD:-1}
TAG=${TAG:-_SBo}
+PKGTYPE=${PKGTYPE:-tgz}
+
+if [ ! -z "${PRINT_PACKAGE_NAME}" ]; then
+ echo "$PRGNAM-$VERSION-$ARCH-$BUILD$TAG.$PKGTYPE"
+ exit 0
+fi
-CWD=$(pwd)
TMP=${TMP:-/tmp/SBo}
PKG=$TMP/package-$PRGNAM
OUTPUT=${OUTPUT:-/tmp}
@@ -33,4 +40,4 @@ mkdir -p $PKG/install
cat $CWD/slack-desc > $PKG/install/slack-desc
cd $PKG
-/sbin/makepkg -l y -c n $OUTPUT/$PRGNAM-$VERSION-$ARCH-$BUILD$TAG.${PKGTYPE:-tgz}
+/sbin/makepkg -l y -c n $OUTPUT/$PRGNAM-$VERSION-$ARCH-$BUILD$TAG.$PKGTYPE
diff --git a/games/uqm_voice/uqm_voice.info b/games/uqm_voice/uqm_voice.info
index 4a50e3eeba..57e3e61334 100644
--- a/games/uqm_voice/uqm_voice.info
+++ b/games/uqm_voice/uqm_voice.info
@@ -1,10 +1,10 @@
PRGNAM="uqm_voice"
VERSION="0.8.0"
-HOMEPAGE="http://sc2.sourceforge.net/"
-DOWNLOAD="http://downloads.sourceforge.net/sc2/uqm-0.8.0-voice.uqm"
+HOMEPAGE="https://sc2.sourceforge.net/"
+DOWNLOAD="https://downloads.sourceforge.net/sc2/uqm-0.8.0-voice.uqm"
MD5SUM="fc89f77d7b66c2669abca6c157f5259a"
DOWNLOAD_x86_64=""
MD5SUM_x86_64=""
REQUIRES="uqm"
MAINTAINER="B. Watson"
-EMAIL="yalhcru@gmail.com"
+EMAIL="urchlay@slackware.uk"
diff --git a/games/ut2004/README b/games/ut2004/README
index 4231fee62a..30d67913ee 100644
--- a/games/ut2004/README
+++ b/games/ut2004/README
@@ -9,8 +9,8 @@ Optional bonus packs and more: http://liflg.org/?catid=6&gameid=17
Notes:
-A guide for how to use this SlackBuild to install ut2004 with this SlackBuild
-using the game source found at gog.com can be found here:
+A guide for how to use this SlackBuild to install ut2004 with this
+SlackBuild using the game source found at gog.com can be found here:
http://docs.slackware.com/howtos:misc:games:ut2004
This takes the installer (which has the latest version) from Linux
@@ -20,11 +20,12 @@ playing on a 32-bit or 64-bit system and install the correct bins.
Your game data (and mods) must go into "/usr/share/games/ut2004". There
is a home folder (.ut2004) for your configs, but you'll need to be able
-to modify the contents located under the share/games folder. You should
+to modify the contents located under the share/games folder. You should
have permissions to modify this folder with the games group.
-It's probably best to put the game data downloaded from Steam or from
-your CDs in "/usr/share/games/ut2004" before installing this SlackBuild.
+It's probably best to put the game data downloaded from Steam or
+from your CDs in "/usr/share/games/ut2004" before installing this
+SlackBuild.
You'll need to create a file named, "CDkey" in the
"/usr/share/games/ut2004/System" directory. And in it, you need to
diff --git a/games/ut2004/ut2004.SlackBuild b/games/ut2004/ut2004.SlackBuild
index 47b682e602..fac92c09aa 100644
--- a/games/ut2004/ut2004.SlackBuild
+++ b/games/ut2004/ut2004.SlackBuild
@@ -1,4 +1,4 @@
-#!/bin/sh
+#!/bin/bash
# Slackware build script for ut2004
@@ -25,21 +25,31 @@
# OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF THIS SOFTWARE, EVEN IF
# ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
+cd $(dirname $0) ; CWD=$(pwd)
+
PRGNAM=ut2004
VERSION=${VERSION:-3369}
BUILD=${BUILD:-1}
TAG=${TAG:-_SBo}
+PKGTYPE=${PKGTYPE:-tgz}
GAMDIR=usr/share/games/ut2004
if [ -z "$ARCH" ]; then
case "$( uname -m )" in
- i?86) ARCH=i486 ;;
+ i?86) ARCH=i586 ;;
arm*) ARCH=arm ;;
*) ARCH=$( uname -m ) ;;
esac
fi
-CWD=$(pwd)
+# If the variable PRINT_PACKAGE_NAME is set, then this script will report what
+# the name of the created package would be, and then exit. This information
+# could be useful to other scripts.
+if [ ! -z "${PRINT_PACKAGE_NAME}" ]; then
+ echo "$PRGNAM-$VERSION-$ARCH-$BUILD$TAG.$PKGTYPE"
+ exit 0
+fi
+
TMP=${TMP:-/tmp/SBo}
PKG=$TMP/package-$PRGNAM
OUTPUT=${OUTPUT:-/tmp}
@@ -98,4 +108,4 @@ mkdir -p $PKG/install
cat $CWD/slack-desc > $PKG/install/slack-desc
cd $PKG
-/sbin/makepkg -l y -c n $OUTPUT/$PRGNAM-$VERSION-$ARCH-$BUILD$TAG.${PKGTYPE:-tgz}
+/sbin/makepkg -l y -c n $OUTPUT/$PRGNAM-$VERSION-$ARCH-$BUILD$TAG.$PKGTYPE
diff --git a/games/vbam/README b/games/vbam/README
index a300e865d2..940fe37e79 100644
--- a/games/vbam/README
+++ b/games/vbam/README
@@ -1,19 +1,36 @@
-vbam (cross-platform GameBoy emulator)
+vbam (cross-platform gameboy/gbc/gba emulator)
-VisualBoyAdvance-M is a Nintendo Game Boy Emulator with high compatibility
-with commercial games. It emulates the Nintendo Game Boy Advance hand
-held console, in addition to the original Game Boy hand held systems
-and its Super and Color variants. VBA-M is a continued development of
-the now inactive VisualBoy Advance project, with many improvements from
-various developments of VBA.
+VisualBoyAdvance-M is a Nintendo Game Boy Advance Emulator with high
+compatibility with commercial games. It emulates the Nintendo Game Boy
+Advance hand held console, in addition to the original Game Boy hand
+held systems and its Super and Color variants. VBA-M is a continued
+development of the now inactive VisualBoy Advance project, with many
+improvements from various developments of VBA.
-This application is the wxGTK GUI version of VisualBoyAdvance-M. The
-name of the executable is "visualboyadvance-m".
+The main executable is /usr/games/vbam, which is a command-line app
+with no GUI controls.
-FFMPEG=ON will enable recording and playback. It requires ffmpeg.
+Optional dependencies:
-There are a couple of alternatives on SBo you might try instead of this
-VBAM SlackBuild: vbam-libretro, mgba, and/or libretro-mgba.
+wxGTK3 - highly recommended, autodetected (can be disabled via
+WX=no). This gives you a /usr/games/visualboyadvance-m executable that
+has a modern graphical user interface, plus desktop integration.
-Note: when upgrading from 2.0.2 to 2.1.0, you may have to "rm -rf
-~/.vbam". Do this if vbam segfaults.
+SFML - autodetected (can be disabled via SFML=no). Only required for
+emulating the GBA Link cable.
+
+lirc - autodetected (can be disabled via LIRC=no). Allows using an
+IR remote control to control the emulator. Only works with the SDL
+user interface (the vbam executable). Untested by the SlackBuild
+maintainer, as I don't own any lirc-compatible hardware.
+
+Notes:
+
+The config file (vbam.ini) is shared between the visualboyadvance-m
+and vbam executables, and lives in ~/.config/visualboyadvance-m/
+(mentioned here because the man pages don't document this). When
+upgrading versions, you might have to delete the config file if vbam
+and/or visualboyadvance-m crash or act weird.
+
+There are a couple of alternatives on SBo you might try instead of
+this vbam SlackBuild: mgba and/or higan.
diff --git a/games/vbam/slack-desc b/games/vbam/slack-desc
index 0c135c7c2e..1522178595 100644
--- a/games/vbam/slack-desc
+++ b/games/vbam/slack-desc
@@ -6,14 +6,14 @@
# customary to leave one space after the ':' except on otherwise blank lines.
|-----handy-ruler------------------------------------------------------|
-vbam: vbam (cross-platform GameBoy emulator)
-vbam:
-vbam: vbam is a project dedicated to gathering community patches to the
-vbam: VisualBoyAdvance GameBoy emulator into one easily accessible project.
-vbam:
-vbam: Homepage: http://vba-m.com
-vbam:
-vbam:
+vbam: vbam (cross-platform gameboy/gbc/gba emulator)
vbam:
+vbam: VisualBoyAdvance-M is a Nintendo Game Boy Advance Emulator with high
+vbam: compatibility with commercial games. It emulates the Nintendo Game Boy
+vbam: Advance hand held console, in addition to the original Game Boy hand
+vbam: held systems and its Super and Color variants. VBA-M is a continued
+vbam: development of the now inactive VisualBoy Advance project, with many
+vbam: improvements from various developments of VBA.
vbam:
+vbam: Build options: wxGTK3=@WXYN@, lirc=@LIRCYN@, SFML=@SFYN@.
vbam:
diff --git a/games/vbam/vbam.SlackBuild b/games/vbam/vbam.SlackBuild
index b0a3c84c5a..975d4f5837 100644
--- a/games/vbam/vbam.SlackBuild
+++ b/games/vbam/vbam.SlackBuild
@@ -1,26 +1,43 @@
-#!/bin/sh
+#!/bin/bash
# Slackbuild for vbam
-# Currently maintained by B. Watson <yalhcru@gmail.com>.
+# Currently maintained by B. Watson <urchlay@slackware.uk>.
# Previously maintained by Dugan Chen <email removed>.
+# Modified by the SlackBuilds.org project.
# Written by JK Wood <email removed>.
-# Slackbuild is released under the Dog-on-Fire License:
-# If use of this script causes your dog to catch on fire,
-# you agree to send me five dollars. Or a picture
-# of the dog on fire.
-# Otherwise, you're on your own. I've tested the script
-# on my own computer, and it hasn't broken anything.
-# So if it does it on your computer, that falls in
-# the realm of "Not my problem."
-#
-# Of course, if you'll send a bug report to the above
-# email address, I may be able to see what you did
-# wrong and prevent it from happening in the future.
-# In which case, I may just send YOU five dollars.
-
-# Modified by the SlackBuilds.org project.
+# Licensed under the WTFPL. See http://www.wtfpl.net/txt/copying/ for details.
+
+# 20240215 bkw: update for v2.1.9.
+# 20231219 bkw: *finally* update, for v2.1.8.
+
+# 20230714 bkw: no changes, just a note to myself: v2.1.6 won't build,
+# and nothing in post-2.1.6 git helps. Visit again later.
+
+# 20230107 bkw: update for v2.1.5.
+
+# 20211117 bkw: note to self: there's been recent activity in
+# upstream's git. If another 6-12 months goes by without a release,
+# consider updating this for the latest git.
+
+# 20211117 bkw: BUILD=2
+# - fix build for -current and recent wxGTK3 update.
+# - relicense as WTFPL with permission from JK Wood.
+# - old-style icon symlink.
+# - call executable with full path in .desktop.
+# - add missing changelog/readme/todo to docdir.
+# - get rid of FFMPEG option (it's always enabled now).
+# - disable checking for updates (there haven't been any in
+# 5 years anyway, and this is a bit of a privacy concern for
+# some users).
+# - make wxGTK3 optional.
+# - only include .desktop and doinst in package if wxGTK3 enabled.
+# - make SFML optional. it's actually autodetected in v2.1.4,
+# so all this means is removing it from REQUIRES and adding
+# a note to README.
+# - always build the SDL UI executable (/usr/games/vbam).
+# - include vbam.ini.sample in docdir.
# 20191129 bkw: updated for 2.1.4.
# 20180702 bkw: updated for 2.1.0.
@@ -43,17 +60,17 @@
# old vbam name as symlinks.
# - Correct README, plus cosmetic reformatting.
+cd $(dirname $0) ; CWD=$(pwd)
+
PRGNAM=vbam
-VERSION=${VERSION:-2.1.4}
+VERSION=${VERSION:-2.1.9}
BUILD=${BUILD:-1}
TAG=${TAG:-_SBo}
+PKGTYPE=${PKGTYPE:-tgz}
SRCVER="$VERSION"
SRCNAM="visualboyadvance-m"
-# Set to ON to enable FFMPEG A/V recording.
-FFMPEG=${FFMPEG:-OFF}
-
if [ -z "$ARCH" ]; then
case "$( uname -m )" in
i?86) ARCH=i586 ;;
@@ -62,7 +79,11 @@ if [ -z "$ARCH" ]; then
esac
fi
-CWD=$(pwd)
+if [ ! -z "${PRINT_PACKAGE_NAME}" ]; then
+ echo "$PRGNAM-$VERSION-$ARCH-$BUILD$TAG.$PKGTYPE"
+ exit 0
+fi
+
TMP=${TMP:-/tmp/SBo}
PKG=$TMP/package-$PRGNAM
OUTPUT=${OUTPUT:-/tmp}
@@ -97,10 +118,43 @@ chown -R root:root .
find -L . -perm /111 -a \! -perm 755 -a -exec chmod 755 {} \+ -o \
\! -perm /111 -a \! -perm 644 -a -exec chmod 644 {} \+
+# 20230107 bkw: doubleplusungood:
+# sbrun: WARNING: files altered outside the sandbox:
+# u /root/.gnupg/trustdb.gpg
+# I don't know why it's doing this, but this will prevent it.
+export CCACHE_DIR=${CCACHE_DIR:-$HOME/.ccache}
+mkdir -p fakehome
+export HOME=$( pwd )/fakehome
+
# if both wx(Python|GTK) 2 and 3 are installed, /usr/bin/wx-config
# is a symlink to the config for whichever was installed last. Avoid
# confusion, force the correct version.
-WXCONF=${WXCONF:-/usr/lib$LIBDIRSUFFIX/wx/config/gtk2-unicode-3.0}
+# 20211117 bkw: willysr's wxGTK3 has switched from gtk2 to gtk3, so
+# this line had to be adjusted slightly. With gtk2 this was failing
+# to build on -current anyway...
+WXCONF=${WXCONF:-/usr/lib$LIBDIRSUFFIX/wx/config/gtk3-unicode-3.0}
+
+# 20211117 bkw: upstream doesn't autodetect wx, we have to explicitly
+# set it to ON or OFF.
+# 20220221 bkw: this had to be fixed again, it started failing when
+# /usr/bin/wx-config was the wxPython one.
+WXDEF="-DENABLE_WX=OFF"
+if [ "${WX:-yes}" = "yes" -a -x "$WXCONF" ]; then
+ WXDEF="-DENABLE_WX=ON"
+ mkdir wxtmp
+ ln -s $WXCONF wxtmp/wx-config
+ export PATH=$(pwd)/wxtmp:$PATH
+fi
+
+# 20211117 bkw: lirc doesn't autodetect.
+LIRCOPT=OFF
+[ "${LIRC:-yes}" = "yes" ] && pkg-config --exists lirc && LIRCOPT=ON
+
+# 20211117 bkw: no handy -Dwhatever to disable this, surgery required.
+# At first glance it looks like -DENABLE_LINK=OFF would work, but it
+# doesn't: it disables the GBA Link emulation, but the vbam binaries
+# still get linked with the SFML shared libs. Derp.
+[ "${SFML:-yes}" = "no" ] && sed -i '/^find_package(SFML/d' CMakeLists.txt
# upstream cleverly parses their own ChangeLog to get the version number
# that gets compiled into the binary. They un-cleverly failed to follow
@@ -108,18 +162,29 @@ WXCONF=${WXCONF:-/usr/lib$LIBDIRSUFFIX/wx/config/gtk2-unicode-3.0}
# says 2.0.1 in its window title. So:
sed -i '/\[2\.0\.2\]/s,Bug fix release,-,' CHANGELOG.md
+# 20211117 bkw: fix the SDL UI build.
+sed -i 's,KMOD_META,KMOD_ALT,g' src/sdl/SDL.cpp
+
+# 20211117 bkw: -fuse-ld=gold works, but doesn't speed things up much.
+
mkdir -p build
cd build
cmake \
- -DwxWidgets_CONFIG_EXECUTABLE=$WXCONF \
+ -DENABLE_SDL=ON \
+ "$WXDEF" \
+ -DENABLE_LINK=$LINKOPT \
-DCMAKE_C_FLAGS:STRING="$SLKCFLAGS" \
-DCMAKE_CXX_FLAGS:STRING="$SLKCFLAGS" \
-DCMAKE_INSTALL_PREFIX=/usr \
-DENABLE_ASM_CORE=${ASM} \
-DENABLE_ASM_SCALERS=${ASM} \
- -DENABLE_FFMPEG=${FFMPEG} \
+ -DENABLE_FFMPEG=ON \
+ -DENABLE_ONLINEUPDATES=OFF \
+ -DENABLE_LIRC=$LIRCOPT \
+ -DCMAKE_EXE_LINKER_FLAGS="-fuse-ld=gold" \
+ -DCMAKE_SHARED_LINKER_FLAGS="-fuse-ld=gold" \
-DCMAKE_BUILD_TYPE=Release ..
- make
+ make VERBOSE=1
sed -i \
-e 's,/usr/share/man,/usr/man,g' \
-e 's,/usr/bin,/usr/games,g' \
@@ -127,20 +192,50 @@ cd build
make install DESTDIR=$PKG
cd ..
-strip $PKG/usr/games/$SRCNAM
-ln -s $SRCNAM $PKG/usr/games/$PRGNAM
-
-gzip $PKG/usr/man/man6/$SRCNAM.6
-ln -s $SRCNAM.6.gz $PKG/usr/man/man6/$PRGNAM.6.gz
+# 20230107 bkw: this gets installed in the wrong place in 2.1.5.
+[ -e $PKG/usr/bin/$SRCNAM ] && \
+ mv $PKG/usr/bin/$SRCNAM $PKG/usr/games && \
+ rmdir $PKG/usr/bin
-mkdir -p $PKG/usr/doc/$PRGNAM-$VERSION
-rm -f doc/ReadMe.MFC.txt # this is for Windows only
-cp -a doc/* $PKG/usr/doc/$PRGNAM-$VERSION
-cat $CWD/$PRGNAM.SlackBuild > $PKG/usr/doc/$PRGNAM-$VERSION/$PRGNAM.SlackBuild
+strip $PKG/usr/games/*
+gzip $PKG/usr/man/man6/*.6
mkdir -p $PKG/install
-cat $CWD/slack-desc > $PKG/install/slack-desc
-cat $CWD/doinst.sh > $PKG/install/doinst.sh
+
+if [ -x $PKG/usr/games/$SRCNAM ]; then
+ # in case someone's missing /usr/games from $PATH:
+ sed -i 's,^Exec=,&/usr/games/,' $PKG/usr/share/applications/*desktop
+
+ # old-style windowmanagers might need this:
+ mkdir -p $PKG/usr/share/pixmaps
+
+ ln -s ../icons/hicolor/48x48/apps/$SRCNAM.png $PKG/usr/share/pixmaps/$SRCNAM.png
+
+ # only need the doinst.sh if the WX GUI was built.
+ cat $CWD/doinst.sh > $PKG/install/doinst.sh
+fi
+
+PKGDOC=$PKG/usr/doc/$PRGNAM-$VERSION
+mkdir -p $PKGDOC
+# This config file gets installed, but never actually used by vbam...
+mv $PKG/etc/$PRGNAM.cfg $PKGDOC/$PRGNAM.cfg.sample
+rmdir $PKG/etc
+rm -f doc/ReadMe.MFC.txt # this is for Windows only
+cp -a *.md doc/* $PKGDOC
+cat $CWD/$PRGNAM.SlackBuild > $PKGDOC/$PRGNAM.SlackBuild
+
+# 20211117 bkw: actually look at what we just built, to see what's
+# enabled (instead of trusting that everything got included correctly).
+# It's better to use objdump than ldd here IMO.
+SFYN=no; LIRCYN=no; WXYN=no
+objdump -p $PKG/usr/games/$PRGNAM | grep -q 'NEEDED *libsfml' && SFYN=yes
+strings $PKG/usr/games/$PRGNAM | grep -q lircrc && LIRCYN=yes
+[ -x $PKG/usr/games/$SRCNAM ] && WXYN=yes
+
+sed -e "s,@SFYN@,$SFYN," \
+ -e "s,@LIRCYN@,$LIRCYN," \
+ -e "s,@WXYN@,$WXYN," \
+ $CWD/slack-desc > $PKG/install/slack-desc
cd $PKG
-/sbin/makepkg -l y -c n $OUTPUT/$PRGNAM-$VERSION-$ARCH-$BUILD$TAG.${PKGTYPE:-tgz}
+/sbin/makepkg -l y -c n $OUTPUT/$PRGNAM-$VERSION-$ARCH-$BUILD$TAG.$PKGTYPE
diff --git a/games/vbam/vbam.info b/games/vbam/vbam.info
index facb0f4113..43596850d8 100644
--- a/games/vbam/vbam.info
+++ b/games/vbam/vbam.info
@@ -1,10 +1,10 @@
PRGNAM="vbam"
-VERSION="2.1.4"
+VERSION="2.1.9"
HOMEPAGE="http://vba-m.com/"
-DOWNLOAD="https://github.com/visualboyadvance-m/visualboyadvance-m/archive/v2.1.4/visualboyadvance-m-2.1.4.tar.gz"
-MD5SUM="394119c22b531bf0ca79ffc7717057d1"
+DOWNLOAD="https://github.com/visualboyadvance-m/visualboyadvance-m/archive/v2.1.9/visualboyadvance-m-2.1.9.tar.gz"
+MD5SUM="ef7116e57f912a5bc07a318f25a5d3e9"
DOWNLOAD_x86_64=""
MD5SUM_x86_64=""
-REQUIRES="SDL2 SFML wxGTK3"
+REQUIRES=""
MAINTAINER="B. Watson"
-EMAIL="yalhcru@gmail.com"
+EMAIL="urchlay@slackware.uk"
diff --git a/games/vcmi-core/README b/games/vcmi-core/README
deleted file mode 100644
index 48a06e2579..0000000000
--- a/games/vcmi-core/README
+++ /dev/null
@@ -1,3 +0,0 @@
-VCMI: an open-source engine for Heroes of Might and Magic III
-
-This contains the VCMI core data files.
diff --git a/games/vcmi-core/slack-desc b/games/vcmi-core/slack-desc
deleted file mode 100644
index 0d6d4aff82..0000000000
--- a/games/vcmi-core/slack-desc
+++ /dev/null
@@ -1,19 +0,0 @@
-# HOW TO EDIT THIS FILE:
-# The "handy ruler" below makes it easier to edit a package description.
-# Line up the first '|' above the ':' following the base package name, and
-# the '|' on the right side marks the last column you can put a character in.
-# You must make exactly 11 lines for the formatting to be correct. It's also
-# customary to leave one space after the ':' except on otherwise blank lines.
-
- |-----handy-ruler------------------------------------------------------|
-vcmi-core: vcmi-core (VCMI core data files)
-vcmi-core:
-vcmi-core: This contains the VCMI core data files.
-vcmi-core:
-vcmi-core:
-vcmi-core:
-vcmi-core:
-vcmi-core:
-vcmi-core:
-vcmi-core:
-vcmi-core:
diff --git a/games/vcmi-core/vcmi-core.SlackBuild b/games/vcmi-core/vcmi-core.SlackBuild
deleted file mode 100644
index f1ae6f656e..0000000000
--- a/games/vcmi-core/vcmi-core.SlackBuild
+++ /dev/null
@@ -1,68 +0,0 @@
-#!/bin/sh
-
-# Slackware build script for vcmi-core
-
-# Copyright 2015-2016 Petar Petrov slackalaxy@gmail.com
-# All rights reserved.
-#
-# Redistribution and use of this script, with or without modification, is
-# permitted provided that the following conditions are met:
-#
-# 1. Redistributions of this script must retain the above copyright
-# notice, this list of conditions and the following disclaimer.
-#
-# THIS SOFTWARE IS PROVIDED BY THE AUTHOR "AS IS" AND ANY EXPRESS OR IMPLIED
-# WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE IMPLIED WARRANTIES OF
-# MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE ARE DISCLAIMED. IN NO
-# EVENT SHALL THE AUTHOR BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL,
-# SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT LIMITED TO,
-# PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, DATA, OR PROFITS;
-# OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY,
-# WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR
-# OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF THIS SOFTWARE, EVEN IF
-# ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
-
-PRGNAM=vcmi-core
-SRCNAM=core
-VERSION=${VERSION:-20130724}
-BUILD=${BUILD:-2}
-TAG=${TAG:-_SBo}
-
-ARCH=noarch
-
-CWD=$(pwd)
-TMP=${TMP:-/tmp/SBo}
-PKG=$TMP/package-$PRGNAM
-OUTPUT=${OUTPUT:-/tmp}
-
-set -e
-
-rm -rf $PKG
-mkdir -p $TMP $PKG $OUTPUT
-cd $TMP
-rm -rf $PRGNAM-$VERSION
-mkdir $PRGNAM-$VERSION
-cd $PRGNAM-$VERSION
-unzip $CWD/$SRCNAM.zip
-
-chown -R root:root .
-find -L . \
- \( -perm 777 -o -perm 775 -o -perm 750 -o -perm 711 -o -perm 555 \
- -o -perm 511 \) -exec chmod 755 {} \; -o \
- \( -perm 666 -o -perm 664 -o -perm 640 -o -perm 600 -o -perm 444 \
- -o -perm 440 -o -perm 400 \) -exec chmod 644 {} \;
-
-mkdir -p $PKG/usr/share/vcmi
-cp -a Mods $PKG/usr/share/vcmi
-
-# This is already in the vcmi package
-rm -rf $PKG/usr/share/vcmi/Mods/vcmi/Data/s
-
-mkdir -p $PKG/usr/doc/$PRGNAM-$VERSION
-cat $CWD/$PRGNAM.SlackBuild > $PKG/usr/doc/$PRGNAM-$VERSION/$PRGNAM.SlackBuild
-
-mkdir -p $PKG/install
-cat $CWD/slack-desc > $PKG/install/slack-desc
-
-cd $PKG
-/sbin/makepkg -l y -c n $OUTPUT/$PRGNAM-$VERSION-$ARCH-$BUILD$TAG.${PKGTYPE:-tgz}
diff --git a/games/vcmi-core/vcmi-core.info b/games/vcmi-core/vcmi-core.info
deleted file mode 100644
index 80d194d65b..0000000000
--- a/games/vcmi-core/vcmi-core.info
+++ /dev/null
@@ -1,10 +0,0 @@
-PRGNAM="vcmi-core"
-VERSION="20130724"
-HOMEPAGE="http://download.vcmi.eu/"
-DOWNLOAD="http://download.vcmi.eu/core.zip"
-MD5SUM="18170b8d757074a462f8a2b6fa646ed9"
-DOWNLOAD_x86_64=""
-MD5SUM_x86_64=""
-REQUIRES="vcmi"
-MAINTAINER="Petar Petrov"
-EMAIL="slackalaxy@gmail.com"
diff --git a/games/vcmi-resolutions/README b/games/vcmi-resolutions/README
deleted file mode 100644
index aa8fee8122..0000000000
--- a/games/vcmi-resolutions/README
+++ /dev/null
@@ -1,3 +0,0 @@
-VCMI is an open-source engine for Heroes of Might and Magic III.
-
-This contains the unofficial extra resolutions and bonus icons addon.
diff --git a/games/vcmi-resolutions/slack-desc b/games/vcmi-resolutions/slack-desc
deleted file mode 100644
index 92f9f162dc..0000000000
--- a/games/vcmi-resolutions/slack-desc
+++ /dev/null
@@ -1,19 +0,0 @@
-# HOW TO EDIT THIS FILE:
-# The "handy ruler" below makes it easier to edit a package description.
-# Line up the first '|' above the ':' following the base package name, and
-# the '|' on the right side marks the last column you can put a character in.
-# You must make exactly 11 lines for the formatting to be correct. It's also
-# customary to leave one space after the ':' except on otherwise blank lines.
-
- |-----handy-ruler------------------------------------------------------|
-vcmi-resolutions: vcmi-resolutions (Extra resolutions and bonus icons addon for VCMI)
-vcmi-resolutions:
-vcmi-resolutions: This contains the unofficial extra resolutions and bonus icons.
-vcmi-resolutions:
-vcmi-resolutions:
-vcmi-resolutions:
-vcmi-resolutions:
-vcmi-resolutions:
-vcmi-resolutions:
-vcmi-resolutions:
-vcmi-resolutions:
diff --git a/games/vcmi-resolutions/vcmi-resolutions.SlackBuild b/games/vcmi-resolutions/vcmi-resolutions.SlackBuild
deleted file mode 100644
index 0954135614..0000000000
--- a/games/vcmi-resolutions/vcmi-resolutions.SlackBuild
+++ /dev/null
@@ -1,65 +0,0 @@
-#!/bin/sh
-
-# Slackware build script for vcmi-resolutions
-
-# Copyright 2015-2016 Petar Petrov slackalaxy@gmail.com
-# All rights reserved.
-#
-# Redistribution and use of this script, with or without modification, is
-# permitted provided that the following conditions are met:
-#
-# 1. Redistributions of this script must retain the above copyright
-# notice, this list of conditions and the following disclaimer.
-#
-# THIS SOFTWARE IS PROVIDED BY THE AUTHOR "AS IS" AND ANY EXPRESS OR IMPLIED
-# WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE IMPLIED WARRANTIES OF
-# MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE ARE DISCLAIMED. IN NO
-# EVENT SHALL THE AUTHOR BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL,
-# SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT LIMITED TO,
-# PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, DATA, OR PROFITS;
-# OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY,
-# WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR
-# OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF THIS SOFTWARE, EVEN IF
-# ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
-
-PRGNAM=vcmi-resolutions
-SRCNAM=vcmi
-VERSION=${VERSION:-20140809}
-BUILD=${BUILD:-1}
-TAG=${TAG:-_SBo}
-
-ARCH=noarch
-
-CWD=$(pwd)
-TMP=${TMP:-/tmp/SBo}
-PKG=$TMP/package-$PRGNAM
-OUTPUT=${OUTPUT:-/tmp}
-
-set -e
-
-rm -rf $PKG
-mkdir -p $TMP $PKG $OUTPUT
-cd $TMP
-rm -rf $PRGNAM-$VERSION
-mkdir $PRGNAM-$VERSION
-cd $PRGNAM-$VERSION
-unzip $CWD/$SRCNAM.zip
-
-chown -R root:root .
-find -L . \
- \( -perm 777 -o -perm 775 -o -perm 750 -o -perm 711 -o -perm 555 \
- -o -perm 511 \) -exec chmod 755 {} \; -o \
- \( -perm 666 -o -perm 664 -o -perm 640 -o -perm 600 -o -perm 444 \
- -o -perm 440 -o -perm 400 \) -exec chmod 644 {} \;
-
-mkdir -p $PKG/usr/share/vcmi/Mods/vcmi
-cp -a vcmi/Mods $PKG/usr/share/vcmi/Mods/vcmi
-
-mkdir -p $PKG/usr/doc/$PRGNAM-$VERSION
-cat $CWD/$PRGNAM.SlackBuild > $PKG/usr/doc/$PRGNAM-$VERSION/$PRGNAM.SlackBuild
-
-mkdir -p $PKG/install
-cat $CWD/slack-desc > $PKG/install/slack-desc
-
-cd $PKG
-/sbin/makepkg -l y -c n $OUTPUT/$PRGNAM-$VERSION-$ARCH-$BUILD$TAG.${PKGTYPE:-tgz}
diff --git a/games/vcmi-resolutions/vcmi-resolutions.info b/games/vcmi-resolutions/vcmi-resolutions.info
deleted file mode 100644
index 4bc86efdd1..0000000000
--- a/games/vcmi-resolutions/vcmi-resolutions.info
+++ /dev/null
@@ -1,10 +0,0 @@
-PRGNAM="vcmi-resolutions"
-VERSION="20140809"
-HOMEPAGE="http://forum.vcmi.eu/viewtopic.php?p=13121"
-DOWNLOAD="https://www.dropbox.com/sh/fwor43x5xrgzx6q/AABpTFqGK7Q9almbyr3hp9jma/mods/vcmi.zip"
-MD5SUM="2464d5e6200e95c8699c0c0ce38f1d47"
-DOWNLOAD_x86_64=""
-MD5SUM_x86_64=""
-REQUIRES="vcmi"
-MAINTAINER="Petar Petrov"
-EMAIL="slackalaxy@gmail.com"
diff --git a/games/vcmi-wog/README b/games/vcmi-wog/README
deleted file mode 100644
index 6fcc890fa1..0000000000
--- a/games/vcmi-wog/README
+++ /dev/null
@@ -1,3 +0,0 @@
-VCMI is an open-source engine for Heroes of Might and Magic III.
-
-This contains the unofficial WoG addon.
diff --git a/games/vcmi-wog/slack-desc b/games/vcmi-wog/slack-desc
deleted file mode 100644
index 33f7ac74c3..0000000000
--- a/games/vcmi-wog/slack-desc
+++ /dev/null
@@ -1,19 +0,0 @@
-# HOW TO EDIT THIS FILE:
-# The "handy ruler" below makes it easier to edit a package description.
-# Line up the first '|' above the ':' following the base package name, and
-# the '|' on the right side marks the last column you can put a character in.
-# You must make exactly 11 lines for the formatting to be correct. It's also
-# customary to leave one space after the ':' except on otherwise blank lines.
-
- |-----handy-ruler------------------------------------------------------|
-vcmi-wog: vcmi-wog (Unofficial WoG addon)
-vcmi-wog:
-vcmi-wog: This contains the unoficial WoG addon.
-vcmi-wog:
-vcmi-wog:
-vcmi-wog:
-vcmi-wog:
-vcmi-wog:
-vcmi-wog:
-vcmi-wog:
-vcmi-wog:
diff --git a/games/vcmi-wog/vcmi-wog.SlackBuild b/games/vcmi-wog/vcmi-wog.SlackBuild
deleted file mode 100644
index 591e18b067..0000000000
--- a/games/vcmi-wog/vcmi-wog.SlackBuild
+++ /dev/null
@@ -1,65 +0,0 @@
-#!/bin/sh
-
-# Slackware build script for vcmi-wog
-
-# Copyright 2015-2016 Petar Petrov slackalaxy@gmail.com
-# All rights reserved.
-#
-# Redistribution and use of this script, with or without modification, is
-# permitted provided that the following conditions are met:
-#
-# 1. Redistributions of this script must retain the above copyright
-# notice, this list of conditions and the following disclaimer.
-#
-# THIS SOFTWARE IS PROVIDED BY THE AUTHOR "AS IS" AND ANY EXPRESS OR IMPLIED
-# WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE IMPLIED WARRANTIES OF
-# MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE ARE DISCLAIMED. IN NO
-# EVENT SHALL THE AUTHOR BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL,
-# SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT LIMITED TO,
-# PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, DATA, OR PROFITS;
-# OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY,
-# WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR
-# OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF THIS SOFTWARE, EVEN IF
-# ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
-
-PRGNAM=vcmi-wog
-SRCNAM=wog
-VERSION=${VERSION:-20121203}
-BUILD=${BUILD:-1}
-TAG=${TAG:-_SBo}
-
-ARCH=noarch
-
-CWD=$(pwd)
-TMP=${TMP:-/tmp/SBo}
-PKG=$TMP/package-$PRGNAM
-OUTPUT=${OUTPUT:-/tmp}
-
-set -e
-
-rm -rf $PKG
-mkdir -p $TMP $PKG $OUTPUT
-cd $TMP
-rm -rf $PRGNAM-$VERSION
-mkdir $PRGNAM-$VERSION
-cd $PRGNAM-$VERSION
-unzip $CWD/$SRCNAM.zip
-
-chown -R root:root .
-find -L . \
- \( -perm 777 -o -perm 775 -o -perm 750 -o -perm 711 -o -perm 555 \
- -o -perm 511 \) -exec chmod 755 {} \; -o \
- \( -perm 666 -o -perm 664 -o -perm 640 -o -perm 600 -o -perm 444 \
- -o -perm 440 -o -perm 400 \) -exec chmod 644 {} \;
-
-mkdir -p $PKG/usr/share/vcmi
-cp -a Mods $PKG/usr/share/vcmi
-
-mkdir -p $PKG/usr/doc/$PRGNAM-$VERSION
-cat $CWD/$PRGNAM.SlackBuild > $PKG/usr/doc/$PRGNAM-$VERSION/$PRGNAM.SlackBuild
-
-mkdir -p $PKG/install
-cat $CWD/slack-desc > $PKG/install/slack-desc
-
-cd $PKG
-/sbin/makepkg -l y -c n $OUTPUT/$PRGNAM-$VERSION-$ARCH-$BUILD$TAG.${PKGTYPE:-tgz}
diff --git a/games/vcmi-wog/vcmi-wog.info b/games/vcmi-wog/vcmi-wog.info
deleted file mode 100644
index a6854efa32..0000000000
--- a/games/vcmi-wog/vcmi-wog.info
+++ /dev/null
@@ -1,10 +0,0 @@
-PRGNAM="vcmi-wog"
-VERSION="20121203"
-HOMEPAGE="http://download.vcmi.eu/WoG/"
-DOWNLOAD="http://download.vcmi.eu/WoG/wog.zip"
-MD5SUM="cc1dd66710bb52431579218e3810f0cd"
-DOWNLOAD_x86_64=""
-MD5SUM_x86_64=""
-REQUIRES="vcmi"
-MAINTAINER="Petar Petrov"
-EMAIL="slackalaxy@gmail.com"
diff --git a/games/vcmi/README b/games/vcmi/README
index 2a0a5a200f..66b8c5bfda 100644
--- a/games/vcmi/README
+++ b/games/vcmi/README
@@ -14,8 +14,13 @@ of features. Among the current features are:
- Random map generator that supports objects added by mods
NOTE!
-You need the original game data to use this.
+You need the original game data to use this, and most likely you will
+need innoextract (available at SBo), in order to unpack it from the exe.
+As an example, for the GOG edition of HOMM3, do this as a regular user:
-HowTo:
-You can find a step-by-step tutorial for setting up the game here:
-https://slackalaxy.wordpress.com/2015/05/02/heroes-iii/
+$ vcmibuilder --gog /path/to/setup_homm3_complete_2.0.0.16.exe
+$ vcmibuilder --convertMP3
+
+Alternatively, you may try VCMI with the Heroes III Demo game data,
+available at SBo as 'homm3_shareware_data'. It is installed system-wide,
+so you can always use the full game data in your $HOME folder.
diff --git a/games/vcmi/README.GameData b/games/vcmi/README.GameData
new file mode 100644
index 0000000000..0ca6735806
--- /dev/null
+++ b/games/vcmi/README.GameData
@@ -0,0 +1,6 @@
+You need the original game data to use this, and most likely you will
+need innoextract (available at SBO), in order to unpack it from the exe.
+As an example, for the GOG edition of HOMM3, do this as a regular user:
+
+$ vcmibuilder --gog /path/to/setup_homm3_complete_2.0.0.16.exe
+$ vcmibuilder --convertMP3
diff --git a/games/vcmi/slack-desc b/games/vcmi/slack-desc
index 395545c791..784dec1304 100644
--- a/games/vcmi/slack-desc
+++ b/games/vcmi/slack-desc
@@ -13,7 +13,7 @@ vcmi: engine (VCMI is NOT another mod) giving it new possibilities.
vcmi: Years of intensive work resulted in creating application with
vcmi: impressive amount of features.
vcmi:
-vcmi: Home: http://forum.vcmi.eu/portal.php
+vcmi: https://vcmi.eu/
vcmi:
vcmi:
vcmi:
diff --git a/games/vcmi/vcmi.SlackBuild b/games/vcmi/vcmi.SlackBuild
index 46cde39a3c..ac152b82d8 100644
--- a/games/vcmi/vcmi.SlackBuild
+++ b/games/vcmi/vcmi.SlackBuild
@@ -1,9 +1,9 @@
-#!/bin/sh
+#!/bin/bash
# Slackware build script for vcmi
+# Copyright 2015-2021 Petar Petrov slackalaxy@gmail.com
# Copyright 2014 Dimitris Zlatanidis Greece-Orestiada
-# Copyright 2015-2016 Petar Petrov slackalaxy@gmail.com
# All rights reserved.
#
# Redistribution and use of this script, with or without modification, is
@@ -23,10 +23,13 @@
# OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF THIS SOFTWARE, EVEN IF
# ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
+cd $(dirname $0) ; CWD=$(pwd)
+
PRGNAM=vcmi
-VERSION=${VERSION:-0.99}
+VERSION=${VERSION:-1.4.5}
BUILD=${BUILD:-1}
TAG=${TAG:-_SBo}
+PKGTYPE=${PKGTYPE:-tgz}
if [ -z "$ARCH" ]; then
case "$( uname -m )" in
@@ -36,7 +39,14 @@ if [ -z "$ARCH" ]; then
esac
fi
-CWD=$(pwd)
+# If the variable PRINT_PACKAGE_NAME is set, then this script will report what
+# the name of the created package would be, and then exit. This information
+# could be useful to other scripts.
+if [ ! -z "${PRINT_PACKAGE_NAME}" ]; then
+ echo "$PRGNAM-$VERSION-$ARCH-$BUILD$TAG.$PKGTYPE"
+ exit 0
+fi
+
TMP=${TMP:-/tmp/SBo}
PKG=$TMP/package-$PRGNAM
OUTPUT=${OUTPUT:-/tmp}
@@ -50,6 +60,9 @@ elif [ "$ARCH" = "i686" ]; then
elif [ "$ARCH" = "x86_64" ]; then
SLKCFLAGS="-O2 -fPIC"
LIBDIRSUFFIX="64"
+elif [ "$ARCH" = "aarch64" ]; then
+ SLKCFLAGS="-O2 -fPIC"
+ LIBDIRSUFFIX="64"
else
SLKCFLAGS="-O2"
LIBDIRSUFFIX=""
@@ -60,9 +73,9 @@ set -e
rm -rf $PKG
mkdir -p $TMP $PKG $OUTPUT
cd $TMP
-rm -rf $PRGNAM-$VERSION
-tar xvf $CWD/$PRGNAM-$VERSION.tar.gz
-cd $PRGNAM-$VERSION
+rm -rf ${PRGNAM}-${VERSION}
+tar xvf $CWD/${PRGNAM}-${VERSION}.tar.gz
+cd ${PRGNAM}-${VERSION}
chown -R root:root .
find -L . \
\( -perm 777 -o -perm 775 -o -perm 750 -o -perm 711 -o -perm 555 \
@@ -70,12 +83,19 @@ find -L . \
\( -perm 666 -o -perm 664 -o -perm 640 -o -perm 600 -o -perm 444 \
-o -perm 440 -o -perm 400 \) -exec chmod 644 {} \;
+# Disable the bundled dependencies and do not perform tests, as we don't
+# have googletest on SBo. Is this option necessary to parse to cmake?
+# -DCMAKE_DL_LIBS=/usr/lib${LIBDIRSUFFIX} \
mkdir -p build
cd build
cmake \
-DCMAKE_C_FLAGS:STRING="$SLKCFLAGS" \
-DCMAKE_CXX_FLAGS:STRING="$SLKCFLAGS" \
-DCMAKE_INSTALL_PREFIX=/usr \
+ -DLIB_DIR=lib${LIBDIRSUFFIX} \
+ -DFORCE_BUNDLED_FL=FALSE \
+ -DENABLE_TEST=OFF \
+ -Wno-dev \
-DCMAKE_BUILD_TYPE=Release ..
make
make install DESTDIR=$PKG
@@ -83,14 +103,16 @@ cd ..
find $PKG -print0 | xargs -0 file | grep -e "executable" -e "shared object" | grep ELF \
| cut -f 1 -d : | xargs strip --strip-unneeded 2> /dev/null || true
+sed -i 's#Version=1.5#Version=1.4#;s#SingleMainWindow#X-SingleMainWindow#' $PKG/usr/share/applications/vcmi*.desktop
mkdir -p $PKG/usr/doc/$PRGNAM-$VERSION
-cp -a AUTHORS ChangeLog README* $PKG/usr/doc/$PRGNAM-$VERSION
+cp -a ChangeLog* docs license* $PKG/usr/doc/$PRGNAM-$VERSION
cat $CWD/$PRGNAM.SlackBuild > $PKG/usr/doc/$PRGNAM-$VERSION/$PRGNAM.SlackBuild
+cat $CWD/README.GameData > $PKG/usr/doc/$PRGNAM-$VERSION/README.GameData
mkdir -p $PKG/install
cat $CWD/slack-desc > $PKG/install/slack-desc
cat $CWD/doinst.sh > $PKG/install/doinst.sh
cd $PKG
-/sbin/makepkg -l y -c n $OUTPUT/$PRGNAM-$VERSION-$ARCH-$BUILD$TAG.${PKGTYPE:-tgz}
+/sbin/makepkg -l y -c n $OUTPUT/$PRGNAM-$VERSION-$ARCH-$BUILD$TAG.$PKGTYPE
diff --git a/games/vcmi/vcmi.info b/games/vcmi/vcmi.info
index c44460468e..81c72b2fb7 100644
--- a/games/vcmi/vcmi.info
+++ b/games/vcmi/vcmi.info
@@ -1,10 +1,10 @@
PRGNAM="vcmi"
-VERSION="0.99"
+VERSION="1.4.5"
HOMEPAGE="http://forum.vcmi.eu/portal.php"
-DOWNLOAD="https://github.com/vcmi/vcmi/archive/0.99/vcmi-0.99.tar.gz"
-MD5SUM="686c2a0283184add785d50b447db806f"
+DOWNLOAD="https://github.com/vcmi/vcmi/archive/1.4.5/vcmi-1.4.5.tar.gz"
+MD5SUM="55d49469a2630abcb93c26ea3a97141b"
DOWNLOAD_x86_64=""
MD5SUM_x86_64=""
-REQUIRES="qt5 ffmpeg SDL2_image SDL2_mixer SDL2_ttf fuzzylite"
-MAINTAINER="Petar Petrov"
-EMAIL="slackalaxy@gmail.com"
+REQUIRES="fuzzylite libminizip tbb luajit"
+MAINTAINER="Yth - Arnaud"
+EMAIL="yth@ythogtha.org"
diff --git a/games/vectoroids/README b/games/vectoroids/README
index 134d3d5eb0..be25dbfde7 100644
--- a/games/vectoroids/README
+++ b/games/vectoroids/README
@@ -1,3 +1,5 @@
+vectoroids (clone of the classic arcade game "Asteroids")
+
"Vectoroids" is a clone of the classic arcade game "Asteroids" by Atari.
Your objective is to maneuver a space ship within a field of asteroids,
diff --git a/games/vectoroids/doinst.sh b/games/vectoroids/doinst.sh
new file mode 100644
index 0000000000..3e5691a052
--- /dev/null
+++ b/games/vectoroids/doinst.sh
@@ -0,0 +1,9 @@
+if [ -x /usr/bin/update-desktop-database ]; then
+ /usr/bin/update-desktop-database -q usr/share/applications >/dev/null 2>&1
+fi
+
+if [ -e usr/share/icons/hicolor/icon-theme.cache ]; then
+ if [ -x /usr/bin/gtk-update-icon-cache ]; then
+ /usr/bin/gtk-update-icon-cache usr/share/icons/hicolor >/dev/null 2>&1
+ fi
+fi
diff --git a/games/vectoroids/icons/16.png b/games/vectoroids/icons/16.png
new file mode 100644
index 0000000000..464c18614c
--- /dev/null
+++ b/games/vectoroids/icons/16.png
Binary files differ
diff --git a/games/vectoroids/icons/32.png b/games/vectoroids/icons/32.png
new file mode 100644
index 0000000000..8ac00c7eb1
--- /dev/null
+++ b/games/vectoroids/icons/32.png
Binary files differ
diff --git a/games/vectoroids/icons/48.png b/games/vectoroids/icons/48.png
new file mode 100644
index 0000000000..4400f84986
--- /dev/null
+++ b/games/vectoroids/icons/48.png
Binary files differ
diff --git a/games/vectoroids/icons/64.png b/games/vectoroids/icons/64.png
new file mode 100644
index 0000000000..9d0fad6496
--- /dev/null
+++ b/games/vectoroids/icons/64.png
Binary files differ
diff --git a/games/vectoroids/vectoroids.SlackBuild b/games/vectoroids/vectoroids.SlackBuild
index 4dcb54c563..ccf58afd80 100644
--- a/games/vectoroids/vectoroids.SlackBuild
+++ b/games/vectoroids/vectoroids.SlackBuild
@@ -1,15 +1,22 @@
-#!/bin/sh
+#!/bin/bash
# Slackware build script for vectoroids
-# Written by B. Watson (yalhcru@gmail.com)
+# Written by B. Watson (urchlay@slackware.uk)
# Licensed under the WTFPL. See http://www.wtfpl.net/txt/copying/ for details.
+# 20230107 bkw: BUILD=3, add doinst.sh, fix man page permission.
+# 20211016 bkw: BUILD=2
+# - add icons and .desktop
+
+cd $(dirname $0) ; CWD=$(pwd)
+
PRGNAM=vectoroids
VERSION=${VERSION:-1.1.0}
-BUILD=${BUILD:-1}
+BUILD=${BUILD:-3}
TAG=${TAG:-_SBo}
+PKGTYPE=${PKGTYPE:-tgz}
if [ -z "$ARCH" ]; then
case "$( uname -m )" in
@@ -19,7 +26,11 @@ if [ -z "$ARCH" ]; then
esac
fi
-CWD=$(pwd)
+if [ ! -z "${PRINT_PACKAGE_NAME}" ]; then
+ echo "$PRGNAM-$VERSION-$ARCH-$BUILD$TAG.$PKGTYPE"
+ exit 0
+fi
+
TMP=${TMP:-/tmp/SBo}
PKG=$TMP/package-$PRGNAM
OUTPUT=${OUTPUT:-/tmp}
@@ -47,11 +58,8 @@ rm -rf $PRGNAM-$VERSION
tar xvf $CWD/$PRGNAM-$VERSION.tar.gz
cd $PRGNAM-$VERSION
chown -R root:root .
-find -L . \
- \( -perm 777 -o -perm 775 -o -perm 750 -o -perm 711 -o -perm 555 \
- -o -perm 511 \) -exec chmod 755 {} \; -o \
- \( -perm 666 -o -perm 664 -o -perm 640 -o -perm 600 -o -perm 444 \
- -o -perm 440 -o -perm 400 \) -exec chmod 644 {} \;
+find -L . -perm /111 -a \! -perm 755 -a -exec chmod 755 {} \+ -o \
+ \! -perm /111 -a \! -perm 644 -a -exec chmod 644 {} \+
# Get rid of cruft accidentally left in the distribution tarball
rm -rf data/images/.xvpics
@@ -65,14 +73,39 @@ mkdir -p $PKG/usr $PKG/usr/games
strip $PRGNAM
make install PREFIX=$PKG/usr BIN_PREFIX=$PKG/usr/games
+chmod 644 $PKG/usr/man/man6/*.6
gzip -9 $PKG/usr/man/man6/*.6
+# Upstream's icon.png is barely visible due to being vector
+# drawings on a transparent background. I made a hopefully nicer
+# icon like so:
+# convert -resize 64x64 /usr/share/vectoroids/images/redspot-e.bmp 1.png
+# composite /usr/share/vectoroids/images/icon.png -geometry +12+12 1.png 64.png
+# convert -resize 48x48 64.png 48.png
+# convert -resize 32x32 64.png 32.png
+# convert -resize 16x16 64.png 16.png
+for i in $CWD/icons/*.png; do
+ px=$( basename $i | cut -d. -f1 )
+ size=${px}x${px}
+ dir=$PKG/usr/share/icons/hicolor/$size/apps
+ mkdir -p $dir
+ cat $i > $dir/$PRGNAM.png
+done
+
+mkdir -p $PKG/usr/share/pixmaps
+ln -s ../icons/hicolor/48x48/apps/$PRGNAM.png $PKG/usr/share/pixmaps/$PRGNAM.png
+
+# .desktop written by SlackBuild author.
+mkdir -p $PKG/usr/share/applications
+cat $CWD/$PRGNAM.desktop > $PKG/usr/share/applications/$PRGNAM.desktop
+
mkdir -p $PKG/usr/doc/$PRGNAM-$VERSION
cp *.txt $PKG/usr/doc/$PRGNAM-$VERSION
cat $CWD/$PRGNAM.SlackBuild > $PKG/usr/doc/$PRGNAM-$VERSION/$PRGNAM.SlackBuild
mkdir -p $PKG/install
cat $CWD/slack-desc > $PKG/install/slack-desc
+cat $CWD/doinst.sh > $PKG/install/doinst.sh
cd $PKG
-/sbin/makepkg -l y -c n $OUTPUT/$PRGNAM-$VERSION-$ARCH-$BUILD$TAG.${PKGTYPE:-tgz}
+/sbin/makepkg -l y -c n $OUTPUT/$PRGNAM-$VERSION-$ARCH-$BUILD$TAG.$PKGTYPE
diff --git a/games/vectoroids/vectoroids.desktop b/games/vectoroids/vectoroids.desktop
new file mode 100644
index 0000000000..d9e7d57783
--- /dev/null
+++ b/games/vectoroids/vectoroids.desktop
@@ -0,0 +1,7 @@
+[Desktop Entry]
+Name=Vectoroids
+Exec=/usr/games/vectoroids
+Type=Application
+Icon=vectoroids
+GenericName=Asteroids-like Game
+Categories=Game;ArcadeGame;
diff --git a/games/vectoroids/vectoroids.info b/games/vectoroids/vectoroids.info
index 73d548df2e..b375a8a9fe 100644
--- a/games/vectoroids/vectoroids.info
+++ b/games/vectoroids/vectoroids.info
@@ -7,4 +7,4 @@ DOWNLOAD_x86_64=""
MD5SUM_x86_64=""
REQUIRES=""
MAINTAINER="B. Watson"
-EMAIL="yalhcru@gmail.com"
+EMAIL="urchlay@slackware.uk"
diff --git a/games/vegastrike/README.SlackBuild b/games/vegastrike/README_SBo
index 6ed1a58ad3..6ed1a58ad3 100644
--- a/games/vegastrike/README.SlackBuild
+++ b/games/vegastrike/README_SBo
diff --git a/games/vegastrike/cmake/FindGTK2.cmake b/games/vegastrike/cmake/FindGTK2.cmake
new file mode 100644
index 0000000000..62f1614f8c
--- /dev/null
+++ b/games/vegastrike/cmake/FindGTK2.cmake
@@ -0,0 +1,946 @@
+# Distributed under the OSI-approved BSD 3-Clause License. See accompanying
+# file Copyright.txt or https://cmake.org/licensing for details.
+
+#[=======================================================================[.rst:
+FindGTK2
+--------
+
+Find the GTK2 widget libraries and several of its other optional components
+like ``gtkmm``, ``glade``, and ``glademm``.
+
+Specify one or more of the following components as you call this find
+module. See example below.
+
+* ``gtk``
+* ``gtkmm``
+* ``glade``
+* ``glademm``
+
+Result Variables
+^^^^^^^^^^^^^^^^
+
+The following variables will be defined for your use
+
+``GTK2_FOUND``
+ Were all of your specified components found?
+``GTK2_INCLUDE_DIRS``
+ All include directories
+``GTK2_LIBRARIES``
+ All libraries
+``GTK2_TARGETS``
+ All imported targets
+``GTK2_DEFINITIONS``
+ Additional compiler flags
+``GTK2_VERSION``
+ The version of GTK2 found (x.y.z)
+``GTK2_MAJOR_VERSION``
+ The major version of GTK2
+``GTK2_MINOR_VERSION``
+ The minor version of GTK2
+``GTK2_PATCH_VERSION``
+ The patch version of GTK2
+
+Input Variables
+^^^^^^^^^^^^^^^
+
+Optional variables you can define prior to calling this module:
+
+``GTK2_DEBUG``
+ Enables verbose debugging of the module
+``GTK2_ADDITIONAL_SUFFIXES``
+ Allows defining additional directories to search for include files
+
+Example Usage
+^^^^^^^^^^^^^
+
+Call :command:`find_package` once. Here are some examples to pick from:
+
+Require GTK 2.6 or later:
+
+.. code-block:: cmake
+
+ find_package(GTK2 2.6 REQUIRED gtk)
+
+Require GTK 2.10 or later and Glade:
+
+.. code-block:: cmake
+
+ find_package(GTK2 2.10 REQUIRED gtk glade)
+
+Search for GTK/GTKMM 2.8 or later:
+
+.. code-block:: cmake
+
+ find_package(GTK2 2.8 COMPONENTS gtk gtkmm)
+
+Use the results:
+
+.. code-block:: cmake
+
+ if(GTK2_FOUND)
+ include_directories(${GTK2_INCLUDE_DIRS})
+ add_executable(mygui mygui.cc)
+ target_link_libraries(mygui ${GTK2_LIBRARIES})
+ endif()
+#]=======================================================================]
+
+# Version 1.6 (CMake 3.0)
+# * Create targets for each library
+# * Do not link libfreetype
+# Version 1.5 (CMake 2.8.12)
+# * 14236: Detect gthread library
+# Detect pangocairo on windows
+# Detect pangocairo with gtk module instead of with gtkmm
+# * 14259: Use vc100 libraries with VS 11
+# * 14260: Export a GTK2_DEFINITIONS variable to set /vd2 when appropriate
+# (i.e. MSVC)
+# * Use the optimized/debug syntax for _LIBRARY and _LIBRARIES variables when
+# appropriate. A new set of _RELEASE variables was also added.
+# * Remove GTK2_SKIP_MARK_AS_ADVANCED option, as now the variables are
+# marked as advanced by SelectLibraryConfigurations
+# * Detect gmodule, pangoft2 and pangoxft libraries
+# Version 1.4 (10/4/2012) (CMake 2.8.10)
+# * 12596: Missing paths for FindGTK2 on NetBSD
+# * 12049: Fixed detection of GTK include files in the lib folder on
+# multiarch systems.
+# Version 1.3 (11/9/2010) (CMake 2.8.4)
+# * 11429: Add support for detecting GTK2 built with Visual Studio 10.
+# Thanks to Vincent Levesque for the patch.
+# Version 1.2 (8/30/2010) (CMake 2.8.3)
+# * Merge patch for detecting gdk-pixbuf library (split off
+# from core GTK in 2.21). Thanks to Vincent Untz for the patch
+# and Ricardo Cruz for the heads up.
+# Version 1.1 (8/19/2010) (CMake 2.8.3)
+# * Add support for detecting GTK2 under macports (thanks to Gary Kramlich)
+# Version 1.0 (8/12/2010) (CMake 2.8.3)
+# * Add support for detecting new pangommconfig.h header file
+# (Thanks to Sune Vuorela & the Debian Project for the patch)
+# * Add support for detecting fontconfig.h header
+# * Call find_package(Freetype) since it's required
+# * Add support for allowing users to add additional library directories
+# via the GTK2_ADDITIONAL_SUFFIXES variable (kind of a future-kludge in
+# case the GTK developers change versions on any of the directories in the
+# future).
+# Version 0.8 (1/4/2010)
+# * Get module working under MacOSX fink by adding /sw/include, /sw/lib
+# to PATHS and the gobject library
+# Version 0.7 (3/22/09)
+# * Checked into CMake CVS
+# * Added versioning support
+# * Module now defaults to searching for GTK if COMPONENTS not specified.
+# * Added HKCU prior to HKLM registry key and GTKMM specific environment
+# variable as per mailing list discussion.
+# * Added lib64 to include search path and a few other search paths where GTK
+# may be installed on Unix systems.
+# * Switched to lowercase CMake commands
+# * Prefaced internal variables with _GTK2 to prevent collision
+# * Changed internal macros to functions
+# * Enhanced documentation
+# Version 0.6 (1/8/08)
+# Added GTK2_SKIP_MARK_AS_ADVANCED option
+# Version 0.5 (12/19/08)
+# Second release to cmake mailing list
+
+#=============================================================
+# _GTK2_GET_VERSION
+# Internal function to parse the version number in gtkversion.h
+# _OUT_major = Major version number
+# _OUT_minor = Minor version number
+# _OUT_micro = Micro version number
+# _gtkversion_hdr = Header file to parse
+#=============================================================
+
+include(${CMAKE_CURRENT_LIST_DIR}/SelectLibraryConfigurations.cmake)
+
+function(_GTK2_GET_VERSION _OUT_major _OUT_minor _OUT_micro _gtkversion_hdr)
+ file(STRINGS ${_gtkversion_hdr} _contents REGEX "#define GTK_M[A-Z]+_VERSION[ \t]+")
+ if(_contents)
+ string(REGEX REPLACE ".*#define GTK_MAJOR_VERSION[ \t]+\\(([0-9]+)\\).*" "\\1" ${_OUT_major} "${_contents}")
+ string(REGEX REPLACE ".*#define GTK_MINOR_VERSION[ \t]+\\(([0-9]+)\\).*" "\\1" ${_OUT_minor} "${_contents}")
+ string(REGEX REPLACE ".*#define GTK_MICRO_VERSION[ \t]+\\(([0-9]+)\\).*" "\\1" ${_OUT_micro} "${_contents}")
+
+ if(NOT ${_OUT_major} MATCHES "[0-9]+")
+ message(FATAL_ERROR "Version parsing failed for GTK2_MAJOR_VERSION!")
+ endif()
+ if(NOT ${_OUT_minor} MATCHES "[0-9]+")
+ message(FATAL_ERROR "Version parsing failed for GTK2_MINOR_VERSION!")
+ endif()
+ if(NOT ${_OUT_micro} MATCHES "[0-9]+")
+ message(FATAL_ERROR "Version parsing failed for GTK2_MICRO_VERSION!")
+ endif()
+
+ set(${_OUT_major} ${${_OUT_major}} PARENT_SCOPE)
+ set(${_OUT_minor} ${${_OUT_minor}} PARENT_SCOPE)
+ set(${_OUT_micro} ${${_OUT_micro}} PARENT_SCOPE)
+ else()
+ message(FATAL_ERROR "Include file ${_gtkversion_hdr} does not exist")
+ endif()
+endfunction()
+
+
+#=============================================================
+# _GTK2_SIGCXX_GET_VERSION
+# Internal function to parse the version number in
+# sigc++config.h
+# _OUT_major = Major version number
+# _OUT_minor = Minor version number
+# _OUT_micro = Micro version number
+# _sigcxxversion_hdr = Header file to parse
+#=============================================================
+
+function(_GTK2_SIGCXX_GET_VERSION _OUT_major _OUT_minor _OUT_micro _sigcxxversion_hdr)
+ file(STRINGS ${_sigcxxversion_hdr} _contents REGEX "#define SIGCXX_M[A-Z]+_VERSION[ \t]+")
+ if(_contents)
+ string(REGEX REPLACE ".*#define SIGCXX_MAJOR_VERSION[ \t]+([0-9]+).*" "\\1" ${_OUT_major} "${_contents}")
+ string(REGEX REPLACE ".*#define SIGCXX_MINOR_VERSION[ \t]+([0-9]+).*" "\\1" ${_OUT_minor} "${_contents}")
+ string(REGEX REPLACE ".*#define SIGCXX_MICRO_VERSION[ \t]+([0-9]+).*" "\\1" ${_OUT_micro} "${_contents}")
+
+ if(NOT ${_OUT_major} MATCHES "[0-9]+")
+ message(FATAL_ERROR "Version parsing failed for SIGCXX_MAJOR_VERSION!")
+ endif()
+ if(NOT ${_OUT_minor} MATCHES "[0-9]+")
+ message(FATAL_ERROR "Version parsing failed for SIGCXX_MINOR_VERSION!")
+ endif()
+ if(NOT ${_OUT_micro} MATCHES "[0-9]+")
+ message(FATAL_ERROR "Version parsing failed for SIGCXX_MICRO_VERSION!")
+ endif()
+
+ set(${_OUT_major} ${${_OUT_major}} PARENT_SCOPE)
+ set(${_OUT_minor} ${${_OUT_minor}} PARENT_SCOPE)
+ set(${_OUT_micro} ${${_OUT_micro}} PARENT_SCOPE)
+ else()
+ # The header does not have the version macros; assume it is ``0.0.0``.
+ set(${_OUT_major} 0)
+ set(${_OUT_minor} 0)
+ set(${_OUT_micro} 0)
+ endif()
+endfunction()
+
+
+#=============================================================
+# _GTK2_FIND_INCLUDE_DIR
+# Internal function to find the GTK include directories
+# _var = variable to set (_INCLUDE_DIR is appended)
+# _hdr = header file to look for
+#=============================================================
+function(_GTK2_FIND_INCLUDE_DIR _var _hdr)
+
+ if(GTK2_DEBUG)
+ message(STATUS "[FindGTK2.cmake:${CMAKE_CURRENT_LIST_LINE}] "
+ "_GTK2_FIND_INCLUDE_DIR( ${_var} ${_hdr} )")
+ endif()
+
+ set(_gtk_packages
+ # If these ever change, things will break.
+ ${GTK2_ADDITIONAL_SUFFIXES}
+ glibmm-2.4
+ glib-2.0
+ atk-1.0
+ atkmm-1.6
+ cairo
+ cairomm-1.0
+ gdk-pixbuf-2.0
+ gdkmm-2.4
+ giomm-2.4
+ gtk-2.0
+ gtkmm-2.4
+ libglade-2.0
+ libglademm-2.4
+ harfbuzz
+ pango-1.0
+ pangomm-1.4
+ sigc++-2.0
+ )
+
+ #
+ # NOTE: The following suffixes cause searching for header files in both of
+ # these directories:
+ # /usr/include/<pkg>
+ # /usr/lib/<pkg>/include
+ #
+
+ set(_suffixes)
+ foreach(_d ${_gtk_packages})
+ list(APPEND _suffixes ${_d})
+ list(APPEND _suffixes ${_d}/include) # for /usr/lib/gtk-2.0/include
+ endforeach()
+
+ if(GTK2_DEBUG)
+ message(STATUS "[FindGTK2.cmake:${CMAKE_CURRENT_LIST_LINE}] "
+ "include suffixes = ${_suffixes}")
+ endif()
+
+ if(CMAKE_LIBRARY_ARCHITECTURE)
+ set(_gtk2_arch_dir /usr/lib/${CMAKE_LIBRARY_ARCHITECTURE})
+ if(GTK2_DEBUG)
+ message(STATUS "Adding ${_gtk2_arch_dir} to search path for multiarch support")
+ endif()
+ endif()
+ find_path(GTK2_${_var}_INCLUDE_DIR ${_hdr}
+ PATHS
+ ${_gtk2_arch_dir}
+ /usr/local/libx32
+ /usr/local/lib64
+ /usr/local/lib
+ /usr/libx32
+ /usr/lib64
+ /usr/lib
+ /opt/gnome/include
+ /opt/gnome/lib
+ /opt/openwin/include
+ /usr/openwin/lib
+ /sw/lib
+ /opt/local/lib
+ /usr/pkg/lib
+ /usr/pkg/include/glib
+ $ENV{GTKMM_BASEPATH}/include
+ $ENV{GTKMM_BASEPATH}/lib
+ [HKEY_CURRENT_USER\\SOFTWARE\\gtkmm\\2.4;Path]/include
+ [HKEY_CURRENT_USER\\SOFTWARE\\gtkmm\\2.4;Path]/lib
+ [HKEY_LOCAL_MACHINE\\SOFTWARE\\gtkmm\\2.4;Path]/include
+ [HKEY_LOCAL_MACHINE\\SOFTWARE\\gtkmm\\2.4;Path]/lib
+ PATH_SUFFIXES
+ ${_suffixes}
+ )
+ mark_as_advanced(GTK2_${_var}_INCLUDE_DIR)
+
+ if(GTK2_${_var}_INCLUDE_DIR)
+ set(GTK2_INCLUDE_DIRS ${GTK2_INCLUDE_DIRS} ${GTK2_${_var}_INCLUDE_DIR} PARENT_SCOPE)
+ endif()
+
+endfunction()
+
+#=============================================================
+# _GTK2_FIND_LIBRARY
+# Internal function to find libraries packaged with GTK2
+# _var = library variable to create (_LIBRARY is appended)
+#=============================================================
+function(_GTK2_FIND_LIBRARY _var _lib _expand_vc _append_version)
+
+ if(GTK2_DEBUG)
+ message(STATUS "[FindGTK2.cmake:${CMAKE_CURRENT_LIST_LINE}] "
+ "_GTK2_FIND_LIBRARY( ${_var} ${_lib} ${_expand_vc} ${_append_version} )")
+ endif()
+
+ # Not GTK versions per se but the versions encoded into Windows
+ # import libraries (GtkMM 2.14.1 has a gtkmm-vc80-2_4.lib for example)
+ # Also the MSVC libraries use _ for . (this is handled below)
+ set(_versions 2.20 2.18 2.16 2.14 2.12
+ 2.10 2.8 2.6 2.4 2.2 2.0
+ 1.20 1.18 1.16 1.14 1.12
+ 1.10 1.8 1.6 1.4 1.2 1.0)
+
+ set(_library)
+ set(_library_d)
+
+ set(_library ${_lib})
+
+ if(_expand_vc AND MSVC)
+ # Add vc80/vc90/vc100 midfixes
+ if(MSVC_TOOLSET_VERSION LESS 110)
+ set(_library ${_library}-vc${MSVC_TOOLSET_VERSION})
+ else()
+ # Up to gtkmm-win 2.22.0-2 there are no vc110 libraries but vc100 can be used
+ set(_library ${_library}-vc100)
+ endif()
+ set(_library_d ${_library}-d)
+ endif()
+
+ if(GTK2_DEBUG)
+ message(STATUS "[FindGTK2.cmake:${CMAKE_CURRENT_LIST_LINE}] "
+ "After midfix addition = ${_library} and ${_library_d}")
+ endif()
+
+ set(_lib_list)
+ set(_libd_list)
+ if(_append_version)
+ foreach(_ver ${_versions})
+ list(APPEND _lib_list "${_library}-${_ver}")
+ list(APPEND _libd_list "${_library_d}-${_ver}")
+ endforeach()
+ else()
+ set(_lib_list ${_library})
+ set(_libd_list ${_library_d})
+ endif()
+
+ if(GTK2_DEBUG)
+ message(STATUS "[FindGTK2.cmake:${CMAKE_CURRENT_LIST_LINE}] "
+ "library list = ${_lib_list} and library debug list = ${_libd_list}")
+ endif()
+
+ # For some silly reason the MSVC libraries use _ instead of .
+ # in the version fields
+ if(_expand_vc AND MSVC)
+ set(_no_dots_lib_list)
+ set(_no_dots_libd_list)
+ foreach(_l ${_lib_list})
+ string(REPLACE "." "_" _no_dots_library ${_l})
+ list(APPEND _no_dots_lib_list ${_no_dots_library})
+ endforeach()
+ # And for debug
+ set(_no_dots_libsd_list)
+ foreach(_l ${_libd_list})
+ string(REPLACE "." "_" _no_dots_libraryd ${_l})
+ list(APPEND _no_dots_libd_list ${_no_dots_libraryd})
+ endforeach()
+
+ # Copy list back to original names
+ set(_lib_list ${_no_dots_lib_list})
+ set(_libd_list ${_no_dots_libd_list})
+ endif()
+
+ if(GTK2_DEBUG)
+ message(STATUS "[FindGTK2.cmake:${CMAKE_CURRENT_LIST_LINE}] "
+ "While searching for GTK2_${_var}_LIBRARY, our proposed library list is ${_lib_list}")
+ endif()
+
+ find_library(GTK2_${_var}_LIBRARY_RELEASE
+ NAMES ${_lib_list}
+ PATHS
+ /opt/gnome/lib
+ /usr/openwin/lib
+ $ENV{GTKMM_BASEPATH}/lib
+ [HKEY_CURRENT_USER\\SOFTWARE\\gtkmm\\2.4;Path]/lib
+ [HKEY_LOCAL_MACHINE\\SOFTWARE\\gtkmm\\2.4;Path]/lib
+ )
+
+ if(_expand_vc AND MSVC)
+ if(GTK2_DEBUG)
+ message(STATUS "[FindGTK2.cmake:${CMAKE_CURRENT_LIST_LINE}] "
+ "While searching for GTK2_${_var}_LIBRARY_DEBUG our proposed library list is ${_libd_list}")
+ endif()
+
+ find_library(GTK2_${_var}_LIBRARY_DEBUG
+ NAMES ${_libd_list}
+ PATHS
+ $ENV{GTKMM_BASEPATH}/lib
+ [HKEY_CURRENT_USER\\SOFTWARE\\gtkmm\\2.4;Path]/lib
+ [HKEY_LOCAL_MACHINE\\SOFTWARE\\gtkmm\\2.4;Path]/lib
+ )
+ endif()
+
+ select_library_configurations(GTK2_${_var})
+
+ set(GTK2_${_var}_LIBRARY ${GTK2_${_var}_LIBRARY} PARENT_SCOPE)
+ set(GTK2_${_var}_FOUND ${GTK2_${_var}_FOUND} PARENT_SCOPE)
+
+ if(GTK2_${_var}_FOUND)
+ set(GTK2_LIBRARIES ${GTK2_LIBRARIES} ${GTK2_${_var}_LIBRARY})
+ set(GTK2_LIBRARIES ${GTK2_LIBRARIES} PARENT_SCOPE)
+ endif()
+
+ if(GTK2_DEBUG)
+ message(STATUS "[FindGTK2.cmake:${CMAKE_CURRENT_LIST_LINE}] "
+ "GTK2_${_var}_LIBRARY_RELEASE = \"${GTK2_${_var}_LIBRARY_RELEASE}\"")
+ message(STATUS "[FindGTK2.cmake:${CMAKE_CURRENT_LIST_LINE}] "
+ "GTK2_${_var}_LIBRARY_DEBUG = \"${GTK2_${_var}_LIBRARY_DEBUG}\"")
+ message(STATUS "[FindGTK2.cmake:${CMAKE_CURRENT_LIST_LINE}] "
+ "GTK2_${_var}_LIBRARY = \"${GTK2_${_var}_LIBRARY}\"")
+ message(STATUS "[FindGTK2.cmake:${CMAKE_CURRENT_LIST_LINE}] "
+ "GTK2_${_var}_FOUND = \"${GTK2_${_var}_FOUND}\"")
+ endif()
+
+endfunction()
+
+
+function(_GTK2_ADD_TARGET_DEPENDS_INTERNAL _var _property)
+ if(GTK2_DEBUG)
+ message(STATUS "[FindGTK2.cmake:${CMAKE_CURRENT_LIST_LINE}] "
+ "_GTK2_ADD_TARGET_DEPENDS_INTERNAL( ${_var} ${_property} )")
+ endif()
+
+ string(TOLOWER "${_var}" _basename)
+
+ if (TARGET GTK2::${_basename})
+ foreach(_depend ${ARGN})
+ set(_valid_depends)
+ if (TARGET GTK2::${_depend})
+ list(APPEND _valid_depends GTK2::${_depend})
+ endif()
+ if (_valid_depends)
+ set_property(TARGET GTK2::${_basename} APPEND PROPERTY ${_property} "${_valid_depends}")
+ endif()
+ set(_valid_depends)
+ endforeach()
+ endif()
+endfunction()
+
+function(_GTK2_ADD_TARGET_DEPENDS _var)
+ if(GTK2_DEBUG)
+ message(STATUS "[FindGTK2.cmake:${CMAKE_CURRENT_LIST_LINE}] "
+ "_GTK2_ADD_TARGET_DEPENDS( ${_var} )")
+ endif()
+
+ string(TOLOWER "${_var}" _basename)
+
+ if(TARGET GTK2::${_basename})
+ get_target_property(_configs GTK2::${_basename} IMPORTED_CONFIGURATIONS)
+ _GTK2_ADD_TARGET_DEPENDS_INTERNAL(${_var} INTERFACE_LINK_LIBRARIES ${ARGN})
+ foreach(_config ${_configs})
+ _GTK2_ADD_TARGET_DEPENDS_INTERNAL(${_var} IMPORTED_LINK_INTERFACE_LIBRARIES_${_config} ${ARGN})
+ endforeach()
+ endif()
+endfunction()
+
+function(_GTK2_ADD_TARGET_INCLUDE_DIRS _var)
+ if(GTK2_DEBUG)
+ message(STATUS "[FindGTK2.cmake:${CMAKE_CURRENT_LIST_LINE}] "
+ "_GTK2_ADD_TARGET_INCLUDE_DIRS( ${_var} )")
+ endif()
+
+ string(TOLOWER "${_var}" _basename)
+
+ if(TARGET GTK2::${_basename})
+ foreach(_include ${ARGN})
+ set_property(TARGET GTK2::${_basename} APPEND PROPERTY INTERFACE_INCLUDE_DIRECTORIES "${_include}")
+ endforeach()
+ endif()
+endfunction()
+
+#=============================================================
+# _GTK2_ADD_TARGET
+# Internal function to create targets for GTK2
+# _var = target to create
+#=============================================================
+function(_GTK2_ADD_TARGET _var)
+ if(GTK2_DEBUG)
+ message(STATUS "[FindGTK2.cmake:${CMAKE_CURRENT_LIST_LINE}] "
+ "_GTK2_ADD_TARGET( ${_var} )")
+ endif()
+
+ string(TOLOWER "${_var}" _basename)
+
+ cmake_parse_arguments(_${_var} "" "" "GTK2_DEPENDS;GTK2_OPTIONAL_DEPENDS;OPTIONAL_INCLUDES" ${ARGN})
+
+ if(GTK2_${_var}_FOUND)
+ if(NOT TARGET GTK2::${_basename})
+ # Do not create the target if dependencies are missing
+ foreach(_dep ${_${_var}_GTK2_DEPENDS})
+ if(NOT TARGET GTK2::${_dep})
+ return()
+ endif()
+ endforeach()
+
+ add_library(GTK2::${_basename} UNKNOWN IMPORTED)
+
+ if(GTK2_${_var}_LIBRARY_RELEASE)
+ set_property(TARGET GTK2::${_basename} APPEND PROPERTY IMPORTED_CONFIGURATIONS RELEASE)
+ set_property(TARGET GTK2::${_basename} PROPERTY IMPORTED_LOCATION_RELEASE "${GTK2_${_var}_LIBRARY_RELEASE}" )
+ endif()
+
+ if(GTK2_${_var}_LIBRARY_DEBUG)
+ set_property(TARGET GTK2::${_basename} APPEND PROPERTY IMPORTED_CONFIGURATIONS DEBUG)
+ set_property(TARGET GTK2::${_basename} PROPERTY IMPORTED_LOCATION_DEBUG "${GTK2_${_var}_LIBRARY_DEBUG}" )
+ endif()
+
+ if(GTK2_${_var}_INCLUDE_DIR)
+ set_property(TARGET GTK2::${_basename} APPEND PROPERTY INTERFACE_INCLUDE_DIRECTORIES "${GTK2_${_var}_INCLUDE_DIR}")
+ endif()
+
+ if(GTK2_${_var}CONFIG_INCLUDE_DIR AND NOT "x${GTK2_${_var}CONFIG_INCLUDE_DIR}" STREQUAL "x${GTK2_${_var}_INCLUDE_DIR}")
+ set_property(TARGET GTK2::${_basename} APPEND PROPERTY INTERFACE_INCLUDE_DIRECTORIES "${GTK2_${_var}CONFIG_INCLUDE_DIR}")
+ endif()
+
+ if(GTK2_DEFINITIONS)
+ set_property(TARGET GTK2::${_basename} PROPERTY INTERFACE_COMPILE_DEFINITIONS "${GTK2_DEFINITIONS}")
+ endif()
+
+ if(_${_var}_GTK2_DEPENDS)
+ _GTK2_ADD_TARGET_DEPENDS(${_var} ${_${_var}_GTK2_DEPENDS} ${_${_var}_GTK2_OPTIONAL_DEPENDS})
+ endif()
+
+ if(_${_var}_OPTIONAL_INCLUDES)
+ foreach(_D ${_${_var}_OPTIONAL_INCLUDES})
+ if(_D)
+ _GTK2_ADD_TARGET_INCLUDE_DIRS(${_var} ${_D})
+ endif()
+ endforeach()
+ endif()
+ endif()
+
+ set(GTK2_TARGETS ${GTK2_TARGETS} GTK2::${_basename})
+ set(GTK2_TARGETS ${GTK2_TARGETS} PARENT_SCOPE)
+
+ if(GTK2_USE_IMPORTED_TARGETS)
+ set(GTK2_${_var}_LIBRARY GTK2::${_basename} PARENT_SCOPE)
+ endif()
+
+ endif()
+endfunction()
+
+
+
+#=============================================================
+
+#
+# main()
+#
+
+set(GTK2_FOUND)
+set(GTK2_INCLUDE_DIRS)
+set(GTK2_LIBRARIES)
+set(GTK2_TARGETS)
+set(GTK2_DEFINITIONS)
+
+if(NOT GTK2_FIND_COMPONENTS)
+ # Assume they only want GTK
+ set(GTK2_FIND_COMPONENTS gtk)
+endif()
+
+#
+# If specified, enforce version number
+#
+if(GTK2_FIND_VERSION)
+ set(GTK2_FAILED_VERSION_CHECK true)
+ if(GTK2_DEBUG)
+ message(STATUS "[FindGTK2.cmake:${CMAKE_CURRENT_LIST_LINE}] "
+ "Searching for version ${GTK2_FIND_VERSION}")
+ endif()
+ _GTK2_FIND_INCLUDE_DIR(GTK gtk/gtk.h)
+ if(GTK2_GTK_INCLUDE_DIR)
+ _GTK2_GET_VERSION(GTK2_MAJOR_VERSION
+ GTK2_MINOR_VERSION
+ GTK2_PATCH_VERSION
+ ${GTK2_GTK_INCLUDE_DIR}/gtk/gtkversion.h)
+ set(GTK2_VERSION
+ ${GTK2_MAJOR_VERSION}.${GTK2_MINOR_VERSION}.${GTK2_PATCH_VERSION})
+ if(GTK2_FIND_VERSION_EXACT)
+ if(GTK2_VERSION VERSION_EQUAL GTK2_FIND_VERSION)
+ set(GTK2_FAILED_VERSION_CHECK false)
+ endif()
+ else()
+ if(GTK2_VERSION VERSION_EQUAL GTK2_FIND_VERSION OR
+ GTK2_VERSION VERSION_GREATER GTK2_FIND_VERSION)
+ set(GTK2_FAILED_VERSION_CHECK false)
+ endif()
+ endif()
+ else()
+ # If we can't find the GTK include dir, we can't do version checking
+ if(GTK2_FIND_REQUIRED AND NOT GTK2_FIND_QUIETLY)
+ message(FATAL_ERROR "Could not find GTK2 include directory")
+ endif()
+ return()
+ endif()
+
+ if(GTK2_FAILED_VERSION_CHECK)
+ if(GTK2_FIND_REQUIRED AND NOT GTK2_FIND_QUIETLY)
+ if(GTK2_FIND_VERSION_EXACT)
+ message(FATAL_ERROR "GTK2 version check failed. Version ${GTK2_VERSION} was found, version ${GTK2_FIND_VERSION} is needed exactly.")
+ else()
+ message(FATAL_ERROR "GTK2 version check failed. Version ${GTK2_VERSION} was found, at least version ${GTK2_FIND_VERSION} is required")
+ endif()
+ endif()
+
+ # If the version check fails, exit out of the module here
+ return()
+ endif()
+endif()
+
+#
+# On MSVC, according to https://wiki.gnome.org/gtkmm/MSWindows, the /vd2 flag needs to be
+# passed to the compiler in order to use gtkmm
+#
+if(MSVC)
+ foreach(_GTK2_component ${GTK2_FIND_COMPONENTS})
+ if(_GTK2_component STREQUAL "gtkmm")
+ set(GTK2_DEFINITIONS "/vd2")
+ elseif(_GTK2_component STREQUAL "glademm")
+ set(GTK2_DEFINITIONS "/vd2")
+ endif()
+ endforeach()
+endif()
+
+#
+# Find all components
+#
+
+find_package(Freetype QUIET)
+if(FREETYPE_INCLUDE_DIR_ft2build AND FREETYPE_INCLUDE_DIR_freetype2)
+ list(APPEND GTK2_INCLUDE_DIRS ${FREETYPE_INCLUDE_DIR_ft2build} ${FREETYPE_INCLUDE_DIR_freetype2})
+endif()
+
+foreach(_GTK2_component ${GTK2_FIND_COMPONENTS})
+ if(_GTK2_component STREQUAL "gtk")
+ # Left for compatibility with previous versions.
+ _GTK2_FIND_INCLUDE_DIR(FONTCONFIG fontconfig/fontconfig.h)
+ _GTK2_FIND_INCLUDE_DIR(X11 X11/Xlib.h)
+
+ _GTK2_FIND_INCLUDE_DIR(GLIB glib.h)
+ _GTK2_FIND_INCLUDE_DIR(GLIBCONFIG glibconfig.h)
+ _GTK2_FIND_LIBRARY (GLIB glib false true)
+ _GTK2_ADD_TARGET (GLIB)
+
+ _GTK2_FIND_INCLUDE_DIR(GOBJECT glib-object.h)
+ _GTK2_FIND_LIBRARY (GOBJECT gobject false true)
+ _GTK2_ADD_TARGET (GOBJECT GTK2_DEPENDS glib)
+
+ _GTK2_FIND_INCLUDE_DIR(ATK atk/atk.h)
+ _GTK2_FIND_LIBRARY (ATK atk false true)
+ _GTK2_ADD_TARGET (ATK GTK2_DEPENDS gobject glib)
+
+ _GTK2_FIND_LIBRARY (GIO gio false true)
+ _GTK2_ADD_TARGET (GIO GTK2_DEPENDS gobject glib)
+
+ _GTK2_FIND_LIBRARY (GTHREAD gthread false true)
+ _GTK2_ADD_TARGET (GTHREAD GTK2_DEPENDS glib)
+
+ _GTK2_FIND_LIBRARY (GMODULE gmodule false true)
+ _GTK2_ADD_TARGET (GMODULE GTK2_DEPENDS glib)
+
+ _GTK2_FIND_INCLUDE_DIR(GDK_PIXBUF gdk-pixbuf/gdk-pixbuf.h)
+ _GTK2_FIND_LIBRARY (GDK_PIXBUF gdk_pixbuf false true)
+ _GTK2_ADD_TARGET (GDK_PIXBUF GTK2_DEPENDS gobject glib)
+
+ _GTK2_FIND_INCLUDE_DIR(CAIRO cairo.h)
+ _GTK2_FIND_LIBRARY (CAIRO cairo false false)
+ _GTK2_ADD_TARGET (CAIRO)
+
+ _GTK2_FIND_INCLUDE_DIR(HARFBUZZ hb.h)
+ _GTK2_FIND_LIBRARY (HARFBUZZ harfbuzz false false)
+ _GTK2_ADD_TARGET (HARFBUZZ)
+
+ _GTK2_FIND_INCLUDE_DIR(PANGO pango/pango.h)
+ _GTK2_FIND_LIBRARY (PANGO pango false true)
+ _GTK2_ADD_TARGET (PANGO GTK2_DEPENDS gobject glib
+ GTK2_OPTIONAL_DEPENDS harfbuzz)
+
+ _GTK2_FIND_LIBRARY (PANGOCAIRO pangocairo false true)
+ _GTK2_ADD_TARGET (PANGOCAIRO GTK2_DEPENDS pango cairo gobject glib)
+
+ _GTK2_FIND_LIBRARY (PANGOFT2 pangoft2 false true)
+ _GTK2_ADD_TARGET (PANGOFT2 GTK2_DEPENDS pango gobject glib
+ OPTIONAL_INCLUDES ${FREETYPE_INCLUDE_DIR_ft2build} ${FREETYPE_INCLUDE_DIR_freetype2}
+ ${GTK2_FONTCONFIG_INCLUDE_DIR}
+ ${GTK2_X11_INCLUDE_DIR})
+
+ _GTK2_FIND_LIBRARY (PANGOXFT pangoxft false true)
+ _GTK2_ADD_TARGET (PANGOXFT GTK2_DEPENDS pangoft2 pango gobject glib
+ OPTIONAL_INCLUDES ${FREETYPE_INCLUDE_DIR_ft2build} ${FREETYPE_INCLUDE_DIR_freetype2}
+ ${GTK2_FONTCONFIG_INCLUDE_DIR}
+ ${GTK2_X11_INCLUDE_DIR})
+
+ _GTK2_FIND_INCLUDE_DIR(GDK gdk/gdk.h)
+ _GTK2_FIND_INCLUDE_DIR(GDKCONFIG gdkconfig.h)
+ if(UNIX)
+ if(APPLE)
+ _GTK2_FIND_LIBRARY (GDK gdk-quartz false true)
+ endif()
+ _GTK2_FIND_LIBRARY (GDK gdk-x11 false true)
+ else()
+ _GTK2_FIND_LIBRARY (GDK gdk-win32 false true)
+ endif()
+ _GTK2_ADD_TARGET (GDK GTK2_DEPENDS pango gdk_pixbuf gobject glib
+ GTK2_OPTIONAL_DEPENDS pangocairo cairo)
+
+ _GTK2_FIND_INCLUDE_DIR(GTK gtk/gtk.h)
+ if(UNIX)
+ if(APPLE)
+ _GTK2_FIND_LIBRARY (GTK gtk-quartz false true)
+ endif()
+ _GTK2_FIND_LIBRARY (GTK gtk-x11 false true)
+ else()
+ _GTK2_FIND_LIBRARY (GTK gtk-win32 false true)
+ endif()
+ _GTK2_ADD_TARGET (GTK GTK2_DEPENDS gdk atk pangoft2 pango gdk_pixbuf gthread gobject glib
+ GTK2_OPTIONAL_DEPENDS gio pangocairo cairo)
+
+ elseif(_GTK2_component STREQUAL "gtkmm")
+
+ _GTK2_FIND_INCLUDE_DIR(SIGC++ sigc++/sigc++.h)
+ _GTK2_FIND_INCLUDE_DIR(SIGC++CONFIG sigc++config.h)
+ _GTK2_FIND_LIBRARY (SIGC++ sigc true true)
+ _GTK2_ADD_TARGET (SIGC++)
+ # Since sigc++ 2.5.1 c++11 support is required
+ if(GTK2_SIGC++CONFIG_INCLUDE_DIR)
+ _GTK2_SIGCXX_GET_VERSION(GTK2_SIGC++_VERSION_MAJOR
+ GTK2_SIGC++_VERSION_MINOR
+ GTK2_SIGC++_VERSION_MICRO
+ ${GTK2_SIGC++CONFIG_INCLUDE_DIR}/sigc++config.h)
+ if(NOT ${GTK2_SIGC++_VERSION_MAJOR}.${GTK2_SIGC++_VERSION_MINOR}.${GTK2_SIGC++_VERSION_MICRO} VERSION_LESS 2.5.1)
+ # These are the features needed by clients in order to include the
+ # project headers:
+ set_property(TARGET GTK2::sigc++
+ PROPERTY INTERFACE_COMPILE_FEATURES cxx_alias_templates
+ cxx_auto_type
+ cxx_decltype
+ cxx_deleted_functions
+ cxx_noexcept
+ cxx_nullptr
+ cxx_right_angle_brackets
+ cxx_rvalue_references
+ cxx_variadic_templates)
+ endif()
+ endif()
+
+ _GTK2_FIND_INCLUDE_DIR(GLIBMM glibmm.h)
+ _GTK2_FIND_INCLUDE_DIR(GLIBMMCONFIG glibmmconfig.h)
+ _GTK2_FIND_LIBRARY (GLIBMM glibmm true true)
+ _GTK2_ADD_TARGET (GLIBMM GTK2_DEPENDS gobject sigc++ glib)
+
+ _GTK2_FIND_INCLUDE_DIR(GIOMM giomm.h)
+ _GTK2_FIND_INCLUDE_DIR(GIOMMCONFIG giommconfig.h)
+ _GTK2_FIND_LIBRARY (GIOMM giomm true true)
+ _GTK2_ADD_TARGET (GIOMM GTK2_DEPENDS gio glibmm gobject sigc++ glib)
+
+ _GTK2_FIND_INCLUDE_DIR(ATKMM atkmm.h)
+ _GTK2_FIND_LIBRARY (ATKMM atkmm true true)
+ _GTK2_ADD_TARGET (ATKMM GTK2_DEPENDS atk glibmm gobject sigc++ glib)
+
+ _GTK2_FIND_INCLUDE_DIR(CAIROMM cairomm/cairomm.h)
+ _GTK2_FIND_INCLUDE_DIR(CAIROMMCONFIG cairommconfig.h)
+ _GTK2_FIND_LIBRARY (CAIROMM cairomm true true)
+ _GTK2_ADD_TARGET (CAIROMM GTK2_DEPENDS cairo sigc++
+ OPTIONAL_INCLUDES ${FREETYPE_INCLUDE_DIR_ft2build} ${FREETYPE_INCLUDE_DIR_freetype2}
+ ${GTK2_FONTCONFIG_INCLUDE_DIR}
+ ${GTK2_X11_INCLUDE_DIR})
+
+ _GTK2_FIND_INCLUDE_DIR(PANGOMM pangomm.h)
+ _GTK2_FIND_INCLUDE_DIR(PANGOMMCONFIG pangommconfig.h)
+ _GTK2_FIND_LIBRARY (PANGOMM pangomm true true)
+ _GTK2_ADD_TARGET (PANGOMM GTK2_DEPENDS glibmm sigc++ pango gobject glib
+ GTK2_OPTIONAL_DEPENDS cairomm pangocairo cairo
+ OPTIONAL_INCLUDES ${FREETYPE_INCLUDE_DIR_ft2build} ${FREETYPE_INCLUDE_DIR_freetype2}
+ ${GTK2_FONTCONFIG_INCLUDE_DIR}
+ ${GTK2_X11_INCLUDE_DIR})
+
+ _GTK2_FIND_INCLUDE_DIR(GDKMM gdkmm.h)
+ _GTK2_FIND_INCLUDE_DIR(GDKMMCONFIG gdkmmconfig.h)
+ _GTK2_FIND_LIBRARY (GDKMM gdkmm true true)
+ _GTK2_ADD_TARGET (GDKMM GTK2_DEPENDS pangomm gtk glibmm sigc++ gdk atk pangoft2 gdk_pixbuf pango gobject glib
+ GTK2_OPTIONAL_DEPENDS giomm cairomm gio pangocairo cairo
+ OPTIONAL_INCLUDES ${FREETYPE_INCLUDE_DIR_ft2build} ${FREETYPE_INCLUDE_DIR_freetype2}
+ ${GTK2_FONTCONFIG_INCLUDE_DIR}
+ ${GTK2_X11_INCLUDE_DIR})
+
+ _GTK2_FIND_INCLUDE_DIR(GTKMM gtkmm.h)
+ _GTK2_FIND_INCLUDE_DIR(GTKMMCONFIG gtkmmconfig.h)
+ _GTK2_FIND_LIBRARY (GTKMM gtkmm true true)
+ _GTK2_ADD_TARGET (GTKMM GTK2_DEPENDS atkmm gdkmm pangomm gtk glibmm sigc++ gdk atk pangoft2 gdk_pixbuf pango gthread gobject glib
+ GTK2_OPTIONAL_DEPENDS giomm cairomm gio pangocairo cairo
+ OPTIONAL_INCLUDES ${FREETYPE_INCLUDE_DIR_ft2build} ${FREETYPE_INCLUDE_DIR_freetype2}
+ ${GTK2_FONTCONFIG_INCLUDE_DIR}
+ ${GTK2_X11_INCLUDE_DIR})
+
+ elseif(_GTK2_component STREQUAL "glade")
+
+ _GTK2_FIND_INCLUDE_DIR(GLADE glade/glade.h)
+ _GTK2_FIND_LIBRARY (GLADE glade false true)
+ _GTK2_ADD_TARGET (GLADE GTK2_DEPENDS gtk gdk atk gio pangoft2 gdk_pixbuf pango gobject glib
+ GTK2_OPTIONAL_DEPENDS pangocairo cairo
+ OPTIONAL_INCLUDES ${FREETYPE_INCLUDE_DIR_ft2build} ${FREETYPE_INCLUDE_DIR_freetype2}
+ ${GTK2_FONTCONFIG_INCLUDE_DIR}
+ ${GTK2_X11_INCLUDE_DIR})
+
+ elseif(_GTK2_component STREQUAL "glademm")
+
+ _GTK2_FIND_INCLUDE_DIR(GLADEMM libglademm.h)
+ _GTK2_FIND_INCLUDE_DIR(GLADEMMCONFIG libglademmconfig.h)
+ _GTK2_FIND_LIBRARY (GLADEMM glademm true true)
+ _GTK2_ADD_TARGET (GLADEMM GTK2_DEPENDS gtkmm glade atkmm gdkmm giomm pangomm glibmm sigc++ gtk gdk atk pangoft2 gdk_pixbuf pango gthread gobject glib
+ GTK2_OPTIONAL_DEPENDS giomm cairomm gio pangocairo cairo
+ OPTIONAL_INCLUDES ${FREETYPE_INCLUDE_DIR_ft2build} ${FREETYPE_INCLUDE_DIR_freetype2}
+ ${GTK2_FONTCONFIG_INCLUDE_DIR}
+ ${GTK2_X11_INCLUDE_DIR})
+
+ else()
+ message(FATAL_ERROR "Unknown GTK2 component ${_component}")
+ endif()
+endforeach()
+
+#
+# Solve for the GTK2 version if we haven't already
+#
+if(NOT GTK2_FIND_VERSION AND GTK2_GTK_INCLUDE_DIR)
+ _GTK2_GET_VERSION(GTK2_MAJOR_VERSION
+ GTK2_MINOR_VERSION
+ GTK2_PATCH_VERSION
+ ${GTK2_GTK_INCLUDE_DIR}/gtk/gtkversion.h)
+ set(GTK2_VERSION ${GTK2_MAJOR_VERSION}.${GTK2_MINOR_VERSION}.${GTK2_PATCH_VERSION})
+endif()
+
+#
+# Try to enforce components
+#
+
+set(_GTK2_did_we_find_everything true) # This gets set to GTK2_FOUND
+
+include(${CMAKE_CURRENT_LIST_DIR}/FindPackageHandleStandardArgs.cmake)
+
+foreach(_GTK2_component ${GTK2_FIND_COMPONENTS})
+ string(TOUPPER ${_GTK2_component} _COMPONENT_UPPER)
+
+ set(GTK2_${_COMPONENT_UPPER}_FIND_QUIETLY ${GTK2_FIND_QUIETLY})
+
+ set(FPHSA_NAME_MISMATCHED 1)
+ if(_GTK2_component STREQUAL "gtk")
+ FIND_PACKAGE_HANDLE_STANDARD_ARGS(GTK2_${_COMPONENT_UPPER} "Some or all of the gtk libraries were not found."
+ GTK2_GTK_LIBRARY
+ GTK2_GTK_INCLUDE_DIR
+
+ GTK2_GDK_INCLUDE_DIR
+ GTK2_GDKCONFIG_INCLUDE_DIR
+ GTK2_GDK_LIBRARY
+
+ GTK2_GLIB_INCLUDE_DIR
+ GTK2_GLIBCONFIG_INCLUDE_DIR
+ GTK2_GLIB_LIBRARY
+ )
+ elseif(_GTK2_component STREQUAL "gtkmm")
+ FIND_PACKAGE_HANDLE_STANDARD_ARGS(GTK2_${_COMPONENT_UPPER} "Some or all of the gtkmm libraries were not found."
+ GTK2_GTKMM_LIBRARY
+ GTK2_GTKMM_INCLUDE_DIR
+ GTK2_GTKMMCONFIG_INCLUDE_DIR
+
+ GTK2_GDKMM_INCLUDE_DIR
+ GTK2_GDKMMCONFIG_INCLUDE_DIR
+ GTK2_GDKMM_LIBRARY
+
+ GTK2_GLIBMM_INCLUDE_DIR
+ GTK2_GLIBMMCONFIG_INCLUDE_DIR
+ GTK2_GLIBMM_LIBRARY
+
+ FREETYPE_INCLUDE_DIR_ft2build
+ FREETYPE_INCLUDE_DIR_freetype2
+ )
+ elseif(_GTK2_component STREQUAL "glade")
+ FIND_PACKAGE_HANDLE_STANDARD_ARGS(GTK2_${_COMPONENT_UPPER} "The glade library was not found."
+ GTK2_GLADE_LIBRARY
+ GTK2_GLADE_INCLUDE_DIR
+ )
+ elseif(_GTK2_component STREQUAL "glademm")
+ FIND_PACKAGE_HANDLE_STANDARD_ARGS(GTK2_${_COMPONENT_UPPER} "The glademm library was not found."
+ GTK2_GLADEMM_LIBRARY
+ GTK2_GLADEMM_INCLUDE_DIR
+ GTK2_GLADEMMCONFIG_INCLUDE_DIR
+ )
+ endif()
+ unset(FPHSA_NAME_MISMATCHED)
+
+ if(NOT GTK2_${_COMPONENT_UPPER}_FOUND)
+ set(_GTK2_did_we_find_everything false)
+ endif()
+endforeach()
+
+if(GTK2_USE_IMPORTED_TARGETS)
+ set(GTK2_LIBRARIES ${GTK2_TARGETS})
+endif()
+
+
+if(_GTK2_did_we_find_everything AND NOT GTK2_VERSION_CHECK_FAILED)
+ set(GTK2_FOUND true)
+else()
+ # Unset our variables.
+ set(GTK2_FOUND false)
+ set(GTK2_VERSION)
+ set(GTK2_VERSION_MAJOR)
+ set(GTK2_VERSION_MINOR)
+ set(GTK2_VERSION_PATCH)
+ set(GTK2_INCLUDE_DIRS)
+ set(GTK2_LIBRARIES)
+ set(GTK2_TARGETS)
+ set(GTK2_DEFINITIONS)
+endif()
+
+if(GTK2_INCLUDE_DIRS)
+ list(REMOVE_DUPLICATES GTK2_INCLUDE_DIRS)
+endif()
diff --git a/games/vegastrike/cmake/FindPackageHandleStandardArgs.cmake b/games/vegastrike/cmake/FindPackageHandleStandardArgs.cmake
new file mode 100644
index 0000000000..4fb08259a0
--- /dev/null
+++ b/games/vegastrike/cmake/FindPackageHandleStandardArgs.cmake
@@ -0,0 +1,466 @@
+# Distributed under the OSI-approved BSD 3-Clause License. See accompanying
+# file Copyright.txt or https://cmake.org/licensing for details.
+
+#[=======================================================================[.rst:
+FindPackageHandleStandardArgs
+-----------------------------
+
+This module provides a function intended to be used in :ref:`Find Modules`
+implementing :command:`find_package(<PackageName>)` calls. It handles the
+``REQUIRED``, ``QUIET`` and version-related arguments of ``find_package``.
+It also sets the ``<PackageName>_FOUND`` variable. The package is
+considered found if all variables listed contain valid results, e.g.
+valid filepaths.
+
+.. command:: find_package_handle_standard_args
+
+ There are two signatures::
+
+ find_package_handle_standard_args(<PackageName>
+ (DEFAULT_MSG|<custom-failure-message>)
+ <required-var>...
+ )
+
+ find_package_handle_standard_args(<PackageName>
+ [FOUND_VAR <result-var>]
+ [REQUIRED_VARS <required-var>...]
+ [VERSION_VAR <version-var>]
+ [HANDLE_COMPONENTS]
+ [CONFIG_MODE]
+ [NAME_MISMATCHED]
+ [REASON_FAILURE_MESSAGE <reason-failure-message>]
+ [FAIL_MESSAGE <custom-failure-message>]
+ )
+
+ The ``<PackageName>_FOUND`` variable will be set to ``TRUE`` if all
+ the variables ``<required-var>...`` are valid and any optional
+ constraints are satisfied, and ``FALSE`` otherwise. A success or
+ failure message may be displayed based on the results and on
+ whether the ``REQUIRED`` and/or ``QUIET`` option was given to
+ the :command:`find_package` call.
+
+ The options are:
+
+ ``(DEFAULT_MSG|<custom-failure-message>)``
+ In the simple signature this specifies the failure message.
+ Use ``DEFAULT_MSG`` to ask for a default message to be computed
+ (recommended). Not valid in the full signature.
+
+ ``FOUND_VAR <result-var>``
+ Obsolete. Specifies either ``<PackageName>_FOUND`` or
+ ``<PACKAGENAME>_FOUND`` as the result variable. This exists only
+ for compatibility with older versions of CMake and is now ignored.
+ Result variables of both names are always set for compatibility.
+
+ ``REQUIRED_VARS <required-var>...``
+ Specify the variables which are required for this package.
+ These may be named in the generated failure message asking the
+ user to set the missing variable values. Therefore these should
+ typically be cache entries such as ``FOO_LIBRARY`` and not output
+ variables like ``FOO_LIBRARIES``. This option is mandatory if
+ ``HANDLE_COMPONENTS`` is not specified.
+
+ ``VERSION_VAR <version-var>``
+ Specify the name of a variable that holds the version of the package
+ that has been found. This version will be checked against the
+ (potentially) specified required version given to the
+ :command:`find_package` call, including its ``EXACT`` option.
+ The default messages include information about the required
+ version and the version which has been actually found, both
+ if the version is ok or not.
+
+ ``HANDLE_COMPONENTS``
+ Enable handling of package components. In this case, the command
+ will report which components have been found and which are missing,
+ and the ``<PackageName>_FOUND`` variable will be set to ``FALSE``
+ if any of the required components (i.e. not the ones listed after
+ the ``OPTIONAL_COMPONENTS`` option of :command:`find_package`) are
+ missing.
+
+ ``CONFIG_MODE``
+ Specify that the calling find module is a wrapper around a
+ call to ``find_package(<PackageName> NO_MODULE)``. This implies
+ a ``VERSION_VAR`` value of ``<PackageName>_VERSION``. The command
+ will automatically check whether the package configuration file
+ was found.
+
+ ``REASON_FAILURE_MESSAGE <reason-failure-message>``
+ Specify a custom message of the reason for the failure which will be
+ appended to the default generated message.
+
+ ``FAIL_MESSAGE <custom-failure-message>``
+ Specify a custom failure message instead of using the default
+ generated message. Not recommended.
+
+ ``NAME_MISMATCHED``
+ Indicate that the ``<PackageName>`` does not match
+ ``${CMAKE_FIND_PACKAGE_NAME}``. This is usually a mistake and raises a
+ warning, but it may be intentional for usage of the command for components
+ of a larger package.
+
+Example for the simple signature:
+
+.. code-block:: cmake
+
+ find_package_handle_standard_args(LibXml2 DEFAULT_MSG
+ LIBXML2_LIBRARY LIBXML2_INCLUDE_DIR)
+
+The ``LibXml2`` package is considered to be found if both
+``LIBXML2_LIBRARY`` and ``LIBXML2_INCLUDE_DIR`` are valid.
+Then also ``LibXml2_FOUND`` is set to ``TRUE``. If it is not found
+and ``REQUIRED`` was used, it fails with a
+:command:`message(FATAL_ERROR)`, independent whether ``QUIET`` was
+used or not. If it is found, success will be reported, including
+the content of the first ``<required-var>``. On repeated CMake runs,
+the same message will not be printed again.
+
+.. note::
+
+ If ``<PackageName>`` does not match ``CMAKE_FIND_PACKAGE_NAME`` for the
+ calling module, a warning that there is a mismatch is given. The
+ ``FPHSA_NAME_MISMATCHED`` variable may be set to bypass the warning if using
+ the old signature and the ``NAME_MISMATCHED`` argument using the new
+ signature. To avoid forcing the caller to require newer versions of CMake for
+ usage, the variable's value will be used if defined when the
+ ``NAME_MISMATCHED`` argument is not passed for the new signature (but using
+ both is an error)..
+
+Example for the full signature:
+
+.. code-block:: cmake
+
+ find_package_handle_standard_args(LibArchive
+ REQUIRED_VARS LibArchive_LIBRARY LibArchive_INCLUDE_DIR
+ VERSION_VAR LibArchive_VERSION)
+
+In this case, the ``LibArchive`` package is considered to be found if
+both ``LibArchive_LIBRARY`` and ``LibArchive_INCLUDE_DIR`` are valid.
+Also the version of ``LibArchive`` will be checked by using the version
+contained in ``LibArchive_VERSION``. Since no ``FAIL_MESSAGE`` is given,
+the default messages will be printed.
+
+Another example for the full signature:
+
+.. code-block:: cmake
+
+ find_package(Automoc4 QUIET NO_MODULE HINTS /opt/automoc4)
+ find_package_handle_standard_args(Automoc4 CONFIG_MODE)
+
+In this case, a ``FindAutmoc4.cmake`` module wraps a call to
+``find_package(Automoc4 NO_MODULE)`` and adds an additional search
+directory for ``automoc4``. Then the call to
+``find_package_handle_standard_args`` produces a proper success/failure
+message.
+#]=======================================================================]
+
+include(${CMAKE_CURRENT_LIST_DIR}/FindPackageMessage.cmake)
+
+# internal helper macro
+macro(_FPHSA_FAILURE_MESSAGE _msg)
+ set (__msg "${_msg}")
+ if (FPHSA_REASON_FAILURE_MESSAGE)
+ string(APPEND __msg "\n Reason given by package: ${FPHSA_REASON_FAILURE_MESSAGE}\n")
+ endif()
+ if (${_NAME}_FIND_REQUIRED)
+ message(FATAL_ERROR "${__msg}")
+ else ()
+ if (NOT ${_NAME}_FIND_QUIETLY)
+ message(STATUS "${__msg}")
+ endif ()
+ endif ()
+endmacro()
+
+
+# internal helper macro to generate the failure message when used in CONFIG_MODE:
+macro(_FPHSA_HANDLE_FAILURE_CONFIG_MODE)
+ # <PackageName>_CONFIG is set, but FOUND is false, this means that some other of the REQUIRED_VARS was not found:
+ if(${_NAME}_CONFIG)
+ _FPHSA_FAILURE_MESSAGE("${FPHSA_FAIL_MESSAGE}: missing:${MISSING_VARS} (found ${${_NAME}_CONFIG} ${VERSION_MSG})")
+ else()
+ # If _CONSIDERED_CONFIGS is set, the config-file has been found, but no suitable version.
+ # List them all in the error message:
+ if(${_NAME}_CONSIDERED_CONFIGS)
+ set(configsText "")
+ list(LENGTH ${_NAME}_CONSIDERED_CONFIGS configsCount)
+ math(EXPR configsCount "${configsCount} - 1")
+ foreach(currentConfigIndex RANGE ${configsCount})
+ list(GET ${_NAME}_CONSIDERED_CONFIGS ${currentConfigIndex} filename)
+ list(GET ${_NAME}_CONSIDERED_VERSIONS ${currentConfigIndex} version)
+ string(APPEND configsText "\n ${filename} (version ${version})")
+ endforeach()
+ if (${_NAME}_NOT_FOUND_MESSAGE)
+ if (FPHSA_REASON_FAILURE_MESSAGE)
+ string(PREPEND FPHSA_REASON_FAILURE_MESSAGE "${${_NAME}_NOT_FOUND_MESSAGE}\n ")
+ else()
+ set(FPHSA_REASON_FAILURE_MESSAGE "${${_NAME}_NOT_FOUND_MESSAGE}")
+ endif()
+ else()
+ string(APPEND configsText "\n")
+ endif()
+ _FPHSA_FAILURE_MESSAGE("${FPHSA_FAIL_MESSAGE} ${VERSION_MSG}, checked the following files:${configsText}")
+
+ else()
+ # Simple case: No Config-file was found at all:
+ _FPHSA_FAILURE_MESSAGE("${FPHSA_FAIL_MESSAGE}: found neither ${_NAME}Config.cmake nor ${_NAME_LOWER}-config.cmake ${VERSION_MSG}")
+ endif()
+ endif()
+endmacro()
+
+
+function(FIND_PACKAGE_HANDLE_STANDARD_ARGS _NAME _FIRST_ARG)
+
+ # Set up the arguments for `cmake_parse_arguments`.
+ set(options CONFIG_MODE HANDLE_COMPONENTS NAME_MISMATCHED)
+ set(oneValueArgs FAIL_MESSAGE REASON_FAILURE_MESSAGE VERSION_VAR FOUND_VAR)
+ set(multiValueArgs REQUIRED_VARS)
+
+ # Check whether we are in 'simple' or 'extended' mode:
+ set(_KEYWORDS_FOR_EXTENDED_MODE ${options} ${oneValueArgs} ${multiValueArgs} )
+ list(FIND _KEYWORDS_FOR_EXTENDED_MODE "${_FIRST_ARG}" INDEX)
+
+ unset(FPHSA_NAME_MISMATCHED_override)
+ if (DEFINED FPHSA_NAME_MISMATCHED)
+ # If the variable NAME_MISMATCHED variable is set, error if it is passed as
+ # an argument. The former is for old signatures, the latter is for new
+ # signatures.
+ list(FIND ARGN "NAME_MISMATCHED" name_mismatched_idx)
+ if (NOT name_mismatched_idx EQUAL "-1")
+ message(FATAL_ERROR
+ "The `NAME_MISMATCHED` argument may only be specified by the argument or "
+ "the variable, not both.")
+ endif ()
+
+ # But use the variable if it is not an argument to avoid forcing minimum
+ # CMake version bumps for calling modules.
+ set(FPHSA_NAME_MISMATCHED_override "${FPHSA_NAME_MISMATCHED}")
+ endif ()
+
+ if(${INDEX} EQUAL -1)
+ set(FPHSA_FAIL_MESSAGE ${_FIRST_ARG})
+ set(FPHSA_REQUIRED_VARS ${ARGN})
+ set(FPHSA_VERSION_VAR)
+ else()
+ cmake_parse_arguments(FPHSA "${options}" "${oneValueArgs}" "${multiValueArgs}" ${_FIRST_ARG} ${ARGN})
+
+ if(FPHSA_UNPARSED_ARGUMENTS)
+ message(FATAL_ERROR "Unknown keywords given to FIND_PACKAGE_HANDLE_STANDARD_ARGS(): \"${FPHSA_UNPARSED_ARGUMENTS}\"")
+ endif()
+
+ if(NOT FPHSA_FAIL_MESSAGE)
+ set(FPHSA_FAIL_MESSAGE "DEFAULT_MSG")
+ endif()
+
+ # In config-mode, we rely on the variable <PackageName>_CONFIG, which is set by find_package()
+ # when it successfully found the config-file, including version checking:
+ if(FPHSA_CONFIG_MODE)
+ list(INSERT FPHSA_REQUIRED_VARS 0 ${_NAME}_CONFIG)
+ list(REMOVE_DUPLICATES FPHSA_REQUIRED_VARS)
+ set(FPHSA_VERSION_VAR ${_NAME}_VERSION)
+ endif()
+
+ if(NOT FPHSA_REQUIRED_VARS AND NOT FPHSA_HANDLE_COMPONENTS)
+ message(FATAL_ERROR "No REQUIRED_VARS specified for FIND_PACKAGE_HANDLE_STANDARD_ARGS()")
+ endif()
+ endif()
+
+ if (DEFINED FPHSA_NAME_MISMATCHED_override)
+ set(FPHSA_NAME_MISMATCHED "${FPHSA_NAME_MISMATCHED_override}")
+ endif ()
+
+ if (DEFINED CMAKE_FIND_PACKAGE_NAME
+ AND NOT FPHSA_NAME_MISMATCHED
+ AND NOT _NAME STREQUAL CMAKE_FIND_PACKAGE_NAME)
+ message(AUTHOR_WARNING
+ "The package name passed to `find_package_handle_standard_args` "
+ "(${_NAME}) does not match the name of the calling package "
+ "(${CMAKE_FIND_PACKAGE_NAME}). This can lead to problems in calling "
+ "code that expects `find_package` result variables (e.g., `_FOUND`) "
+ "to follow a certain pattern.")
+ endif ()
+
+# now that we collected all arguments, process them
+
+ if("x${FPHSA_FAIL_MESSAGE}" STREQUAL "xDEFAULT_MSG")
+ set(FPHSA_FAIL_MESSAGE "Could NOT find ${_NAME}")
+ endif()
+
+ if (FPHSA_REQUIRED_VARS)
+ list(GET FPHSA_REQUIRED_VARS 0 _FIRST_REQUIRED_VAR)
+ endif()
+
+ string(TOUPPER ${_NAME} _NAME_UPPER)
+ string(TOLOWER ${_NAME} _NAME_LOWER)
+
+ if(FPHSA_FOUND_VAR)
+ set(_FOUND_VAR_UPPER ${_NAME_UPPER}_FOUND)
+ set(_FOUND_VAR_MIXED ${_NAME}_FOUND)
+ if(FPHSA_FOUND_VAR STREQUAL _FOUND_VAR_MIXED OR FPHSA_FOUND_VAR STREQUAL _FOUND_VAR_UPPER)
+ set(_FOUND_VAR ${FPHSA_FOUND_VAR})
+ else()
+ message(FATAL_ERROR "The argument for FOUND_VAR is \"${FPHSA_FOUND_VAR}\", but only \"${_FOUND_VAR_MIXED}\" and \"${_FOUND_VAR_UPPER}\" are valid names.")
+ endif()
+ else()
+ set(_FOUND_VAR ${_NAME_UPPER}_FOUND)
+ endif()
+
+ # collect all variables which were not found, so they can be printed, so the
+ # user knows better what went wrong (#6375)
+ set(MISSING_VARS "")
+ set(DETAILS "")
+ # check if all passed variables are valid
+ set(FPHSA_FOUND_${_NAME} TRUE)
+ foreach(_CURRENT_VAR ${FPHSA_REQUIRED_VARS})
+ if(NOT ${_CURRENT_VAR})
+ set(FPHSA_FOUND_${_NAME} FALSE)
+ string(APPEND MISSING_VARS " ${_CURRENT_VAR}")
+ else()
+ string(APPEND DETAILS "[${${_CURRENT_VAR}}]")
+ endif()
+ endforeach()
+ if(FPHSA_FOUND_${_NAME})
+ set(${_NAME}_FOUND TRUE)
+ set(${_NAME_UPPER}_FOUND TRUE)
+ else()
+ set(${_NAME}_FOUND FALSE)
+ set(${_NAME_UPPER}_FOUND FALSE)
+ endif()
+
+ # component handling
+ unset(FOUND_COMPONENTS_MSG)
+ unset(MISSING_COMPONENTS_MSG)
+
+ if(FPHSA_HANDLE_COMPONENTS)
+ foreach(comp ${${_NAME}_FIND_COMPONENTS})
+ if(${_NAME}_${comp}_FOUND)
+
+ if(NOT DEFINED FOUND_COMPONENTS_MSG)
+ set(FOUND_COMPONENTS_MSG "found components:")
+ endif()
+ string(APPEND FOUND_COMPONENTS_MSG " ${comp}")
+
+ else()
+
+ if(NOT DEFINED MISSING_COMPONENTS_MSG)
+ set(MISSING_COMPONENTS_MSG "missing components:")
+ endif()
+ string(APPEND MISSING_COMPONENTS_MSG " ${comp}")
+
+ if(${_NAME}_FIND_REQUIRED_${comp})
+ set(${_NAME}_FOUND FALSE)
+ string(APPEND MISSING_VARS " ${comp}")
+ endif()
+
+ endif()
+ endforeach()
+ set(COMPONENT_MSG "${FOUND_COMPONENTS_MSG} ${MISSING_COMPONENTS_MSG}")
+ string(APPEND DETAILS "[c${COMPONENT_MSG}]")
+ endif()
+
+ # version handling:
+ set(VERSION_MSG "")
+ set(VERSION_OK TRUE)
+
+ # check with DEFINED here as the requested or found version may be "0"
+ if (DEFINED ${_NAME}_FIND_VERSION)
+ if(DEFINED ${FPHSA_VERSION_VAR})
+ set(_FOUND_VERSION ${${FPHSA_VERSION_VAR}})
+
+ if(${_NAME}_FIND_VERSION_EXACT) # exact version required
+ # count the dots in the version string
+ string(REGEX REPLACE "[^.]" "" _VERSION_DOTS "${_FOUND_VERSION}")
+ # add one dot because there is one dot more than there are components
+ string(LENGTH "${_VERSION_DOTS}." _VERSION_DOTS)
+ if (_VERSION_DOTS GREATER ${_NAME}_FIND_VERSION_COUNT)
+ # Because of the C++ implementation of find_package() ${_NAME}_FIND_VERSION_COUNT
+ # is at most 4 here. Therefore a simple lookup table is used.
+ if (${_NAME}_FIND_VERSION_COUNT EQUAL 1)
+ set(_VERSION_REGEX "[^.]*")
+ elseif (${_NAME}_FIND_VERSION_COUNT EQUAL 2)
+ set(_VERSION_REGEX "[^.]*\\.[^.]*")
+ elseif (${_NAME}_FIND_VERSION_COUNT EQUAL 3)
+ set(_VERSION_REGEX "[^.]*\\.[^.]*\\.[^.]*")
+ else ()
+ set(_VERSION_REGEX "[^.]*\\.[^.]*\\.[^.]*\\.[^.]*")
+ endif ()
+ string(REGEX REPLACE "^(${_VERSION_REGEX})\\..*" "\\1" _VERSION_HEAD "${_FOUND_VERSION}")
+ unset(_VERSION_REGEX)
+ if (NOT ${_NAME}_FIND_VERSION VERSION_EQUAL _VERSION_HEAD)
+ set(VERSION_MSG "Found unsuitable version \"${_FOUND_VERSION}\", but required is exact version \"${${_NAME}_FIND_VERSION}\"")
+ set(VERSION_OK FALSE)
+ else ()
+ set(VERSION_MSG "(found suitable exact version \"${_FOUND_VERSION}\")")
+ endif ()
+ unset(_VERSION_HEAD)
+ else ()
+ if (NOT ${_NAME}_FIND_VERSION VERSION_EQUAL _FOUND_VERSION)
+ set(VERSION_MSG "Found unsuitable version \"${_FOUND_VERSION}\", but required is exact version \"${${_NAME}_FIND_VERSION}\"")
+ set(VERSION_OK FALSE)
+ else ()
+ set(VERSION_MSG "(found suitable exact version \"${_FOUND_VERSION}\")")
+ endif ()
+ endif ()
+ unset(_VERSION_DOTS)
+
+ else() # minimum version specified:
+ if (${_NAME}_FIND_VERSION VERSION_GREATER _FOUND_VERSION)
+ set(VERSION_MSG "Found unsuitable version \"${_FOUND_VERSION}\", but required is at least \"${${_NAME}_FIND_VERSION}\"")
+ set(VERSION_OK FALSE)
+ else ()
+ set(VERSION_MSG "(found suitable version \"${_FOUND_VERSION}\", minimum required is \"${${_NAME}_FIND_VERSION}\")")
+ endif ()
+ endif()
+
+ else()
+
+ # if the package was not found, but a version was given, add that to the output:
+ if(${_NAME}_FIND_VERSION_EXACT)
+ set(VERSION_MSG "(Required is exact version \"${${_NAME}_FIND_VERSION}\")")
+ else()
+ set(VERSION_MSG "(Required is at least version \"${${_NAME}_FIND_VERSION}\")")
+ endif()
+
+ endif()
+ else ()
+ # Check with DEFINED as the found version may be 0.
+ if(DEFINED ${FPHSA_VERSION_VAR})
+ set(VERSION_MSG "(found version \"${${FPHSA_VERSION_VAR}}\")")
+ endif()
+ endif ()
+
+ if(VERSION_OK)
+ string(APPEND DETAILS "[v${${FPHSA_VERSION_VAR}}(${${_NAME}_FIND_VERSION})]")
+ else()
+ set(${_NAME}_FOUND FALSE)
+ endif()
+
+
+ # print the result:
+ if (${_NAME}_FOUND)
+ FIND_PACKAGE_MESSAGE(${_NAME} "Found ${_NAME}: ${${_FIRST_REQUIRED_VAR}} ${VERSION_MSG} ${COMPONENT_MSG}" "${DETAILS}")
+ else ()
+
+ if(FPHSA_CONFIG_MODE)
+ _FPHSA_HANDLE_FAILURE_CONFIG_MODE()
+ else()
+ if(NOT VERSION_OK)
+ set(RESULT_MSG)
+ if (_FIRST_REQUIRED_VAR)
+ string (APPEND RESULT_MSG "found ${${_FIRST_REQUIRED_VAR}}")
+ endif()
+ if (COMPONENT_MSG)
+ if (RESULT_MSG)
+ string (APPEND RESULT_MSG ", ")
+ endif()
+ string (APPEND RESULT_MSG "${FOUND_COMPONENTS_MSG}")
+ endif()
+ _FPHSA_FAILURE_MESSAGE("${FPHSA_FAIL_MESSAGE}: ${VERSION_MSG} (${RESULT_MSG})")
+ else()
+ _FPHSA_FAILURE_MESSAGE("${FPHSA_FAIL_MESSAGE} (missing:${MISSING_VARS}) ${VERSION_MSG}")
+ endif()
+ endif()
+
+ endif ()
+
+ set(${_NAME}_FOUND ${${_NAME}_FOUND} PARENT_SCOPE)
+ set(${_NAME_UPPER}_FOUND ${${_NAME}_FOUND} PARENT_SCOPE)
+endfunction()
diff --git a/games/vegastrike/cmake/FindPackageMessage.cmake b/games/vegastrike/cmake/FindPackageMessage.cmake
new file mode 100644
index 0000000000..0628b98169
--- /dev/null
+++ b/games/vegastrike/cmake/FindPackageMessage.cmake
@@ -0,0 +1,48 @@
+# Distributed under the OSI-approved BSD 3-Clause License. See accompanying
+# file Copyright.txt or https://cmake.org/licensing for details.
+
+#[=======================================================================[.rst:
+FindPackageMessage
+------------------
+
+.. code-block:: cmake
+
+ find_package_message(<name> "message for user" "find result details")
+
+This function is intended to be used in FindXXX.cmake modules files.
+It will print a message once for each unique find result. This is
+useful for telling the user where a package was found. The first
+argument specifies the name (XXX) of the package. The second argument
+specifies the message to display. The third argument lists details
+about the find result so that if they change the message will be
+displayed again. The macro also obeys the QUIET argument to the
+find_package command.
+
+Example:
+
+.. code-block:: cmake
+
+ if(X11_FOUND)
+ find_package_message(X11 "Found X11: ${X11_X11_LIB}"
+ "[${X11_X11_LIB}][${X11_INCLUDE_DIR}]")
+ else()
+ ...
+ endif()
+#]=======================================================================]
+
+function(find_package_message pkg msg details)
+ # Avoid printing a message repeatedly for the same find result.
+ if(NOT ${pkg}_FIND_QUIETLY)
+ string(REPLACE "\n" "" details "${details}")
+ set(DETAILS_VAR FIND_PACKAGE_MESSAGE_DETAILS_${pkg})
+ if(NOT "${details}" STREQUAL "${${DETAILS_VAR}}")
+ # The message has not yet been printed.
+ message(STATUS "${msg}")
+
+ # Save the find details in the cache to avoid printing the same
+ # message again.
+ set("${DETAILS_VAR}" "${details}"
+ CACHE INTERNAL "Details about finding ${pkg}")
+ endif()
+ endif()
+endfunction()
diff --git a/games/vegastrike/cmake/SelectLibraryConfigurations.cmake b/games/vegastrike/cmake/SelectLibraryConfigurations.cmake
new file mode 100644
index 0000000000..4c0e9a8c0a
--- /dev/null
+++ b/games/vegastrike/cmake/SelectLibraryConfigurations.cmake
@@ -0,0 +1,80 @@
+# Distributed under the OSI-approved BSD 3-Clause License. See accompanying
+# file Copyright.txt or https://cmake.org/licensing for details.
+
+#[=======================================================================[.rst:
+SelectLibraryConfigurations
+---------------------------
+
+.. code-block:: cmake
+
+ select_library_configurations(basename)
+
+This macro takes a library base name as an argument, and will choose
+good values for the variables
+
+::
+
+ basename_LIBRARY
+ basename_LIBRARIES
+ basename_LIBRARY_DEBUG
+ basename_LIBRARY_RELEASE
+
+depending on what has been found and set.
+
+If only ``basename_LIBRARY_RELEASE`` is defined, ``basename_LIBRARY`` will
+be set to the release value, and ``basename_LIBRARY_DEBUG`` will be set
+to ``basename_LIBRARY_DEBUG-NOTFOUND``. If only ``basename_LIBRARY_DEBUG``
+is defined, then ``basename_LIBRARY`` will take the debug value, and
+``basename_LIBRARY_RELEASE`` will be set to ``basename_LIBRARY_RELEASE-NOTFOUND``.
+
+If the generator supports configuration types, then ``basename_LIBRARY``
+and ``basename_LIBRARIES`` will be set with debug and optimized flags
+specifying the library to be used for the given configuration. If no
+build type has been set or the generator in use does not support
+configuration types, then ``basename_LIBRARY`` and ``basename_LIBRARIES``
+will take only the release value, or the debug value if the release one
+is not set.
+#]=======================================================================]
+
+# This macro was adapted from the FindQt4 CMake module and is maintained by Will
+# Dicharry <wdicharry@stellarscience.com>.
+
+macro(select_library_configurations basename)
+ if(NOT ${basename}_LIBRARY_RELEASE)
+ set(${basename}_LIBRARY_RELEASE "${basename}_LIBRARY_RELEASE-NOTFOUND" CACHE FILEPATH "Path to a library.")
+ endif()
+ if(NOT ${basename}_LIBRARY_DEBUG)
+ set(${basename}_LIBRARY_DEBUG "${basename}_LIBRARY_DEBUG-NOTFOUND" CACHE FILEPATH "Path to a library.")
+ endif()
+
+ get_property(_isMultiConfig GLOBAL PROPERTY GENERATOR_IS_MULTI_CONFIG)
+ if( ${basename}_LIBRARY_DEBUG AND ${basename}_LIBRARY_RELEASE AND
+ NOT ${basename}_LIBRARY_DEBUG STREQUAL ${basename}_LIBRARY_RELEASE AND
+ ( _isMultiConfig OR CMAKE_BUILD_TYPE ) )
+ # if the generator is multi-config or if CMAKE_BUILD_TYPE is set for
+ # single-config generators, set optimized and debug libraries
+ set( ${basename}_LIBRARY "" )
+ foreach( _libname IN LISTS ${basename}_LIBRARY_RELEASE )
+ list( APPEND ${basename}_LIBRARY optimized "${_libname}" )
+ endforeach()
+ foreach( _libname IN LISTS ${basename}_LIBRARY_DEBUG )
+ list( APPEND ${basename}_LIBRARY debug "${_libname}" )
+ endforeach()
+ elseif( ${basename}_LIBRARY_RELEASE )
+ set( ${basename}_LIBRARY ${${basename}_LIBRARY_RELEASE} )
+ elseif( ${basename}_LIBRARY_DEBUG )
+ set( ${basename}_LIBRARY ${${basename}_LIBRARY_DEBUG} )
+ else()
+ set( ${basename}_LIBRARY "${basename}_LIBRARY-NOTFOUND")
+ endif()
+
+ set( ${basename}_LIBRARIES "${${basename}_LIBRARY}" )
+
+ if( ${basename}_LIBRARY )
+ set( ${basename}_FOUND TRUE )
+ endif()
+
+ mark_as_advanced( ${basename}_LIBRARY_RELEASE
+ ${basename}_LIBRARY_DEBUG
+ )
+endmacro()
diff --git a/games/vegastrike/patches/ordered_pointer_comparison.diff b/games/vegastrike/patches/ordered_pointer_comparison.diff
new file mode 100644
index 0000000000..e152fa8671
--- /dev/null
+++ b/games/vegastrike/patches/ordered_pointer_comparison.diff
@@ -0,0 +1,129 @@
+diff -Naur vegastrike-src-0.5.1.r1/setup/src/include/central.cpp vegastrike-src-0.5.1.r1.patched/setup/src/include/central.cpp
+--- vegastrike-src-0.5.1.r1/setup/src/include/central.cpp 2022-02-21 14:24:38.199104715 -0500
++++ vegastrike-src-0.5.1.r1.patched/setup/src/include/central.cpp 2022-02-21 14:24:10.357643227 -0500
+@@ -36,7 +36,7 @@
+ do {
+ if (CURRENT->name == NULL) { continue; }
+ if (strcmp(group, CURRENT->name) == 0) { CURRENT->setting = NewString(setting); return; }
+- } while ((CURRENT = CURRENT->next) > 0);
++ } while ((CURRENT = CURRENT->next));
+ }
+ void SetInfo(char *catagory, char *info) {
+ struct catagory *CURRENT;
+@@ -44,7 +44,7 @@
+ do {
+ if (CURRENT->name == NULL) { continue; }
+ if (strcmp(catagory, CURRENT->name) == 0) { CURRENT->info = NewString(info); return; }
+- } while ((CURRENT = CURRENT->next) > 0);
++ } while ((CURRENT = CURRENT->next));
+ }
+
+ char *GetInfo(char *catagory) {
+@@ -56,7 +56,7 @@
+ if (CURRENT->info) { return CURRENT->info; }
+ else { return catagory; }
+ }
+- } while ((CURRENT = CURRENT->next) > 0);
++ } while ((CURRENT = CURRENT->next));
+ return catagory;
+ }
+
+@@ -66,7 +66,7 @@
+ do {
+ if (CUR->name == NULL) { continue; }
+ if (strcmp(CUR->name, group) == 0) { return CUR->setting; }
+- } while ((CUR = CUR->next) > 0);
++ } while ((CUR = CUR->next));
+ return EMPTY_STR;
+ }
+
+@@ -76,7 +76,7 @@
+ do {
+ if (CUR->name == NULL) { continue; }
+ if (strcmp(CUR->name, name) == 0) { return CUR; }
+- } while ((CUR = CUR->next) > 0);
++ } while ((CUR = CUR->next));
+ return 0;
+ }
+
+@@ -86,7 +86,7 @@
+ do {
+ if (CUR->name == NULL) { continue; }
+ if (strcmp(CUR->name, name) == 0) { return CUR; }
+- } while ((CUR = CUR->next) > 0);
++ } while ((CUR = CUR->next));
+ return 0;
+ }
+
+diff -Naur vegastrike-src-0.5.1.r1/setup/src/include/display_gtk.cpp vegastrike-src-0.5.1.r1.patched/setup/src/include/display_gtk.cpp
+--- vegastrike-src-0.5.1.r1/setup/src/include/display_gtk.cpp 2008-04-23 07:05:43.000000000 -0400
++++ vegastrike-src-0.5.1.r1.patched/setup/src/include/display_gtk.cpp 2022-02-21 14:39:31.905918365 -0500
+@@ -109,7 +109,7 @@
+ break;
+ }
+ i++;
+- } while ((NEWCUR = NEWCUR->next) > 0);
++ } while ((NEWCUR = NEWCUR->next));
+ // printf("\n\n");
+ gtk_widget_show (menu);
+ gtk_container_add(GTK_CONTAINER(vbox), menu);
+@@ -124,7 +124,7 @@
+ gtk_widget_show(hbox);
+ }
+ column++;
+- } while ((CURRENT = CURRENT->next) > 0);
++ } while ((CURRENT = CURRENT->next));
+ if (column != 1) {
+ gtk_container_add(GTK_CONTAINER(main_vbox), hbox);
+ gtk_widget_show(hbox);
+@@ -180,7 +180,7 @@
+ // gtk_signal_connect(GTK_OBJECT(button), "clicked", GTK_SIGNAL_FUNC(ClickButton), CUR);
+ #endif
+ CUR->button = button;
+- } while ((CUR = CUR->next) > 0);
++ } while ((CUR = CUR->next));
+ }
+
+ void ClickButton(GtkWidget *w, struct catagory *CUR) {
+diff -Naur vegastrike-src-0.5.1.r1/setup/src/include/file.cpp vegastrike-src-0.5.1.r1.patched/setup/src/include/file.cpp
+--- vegastrike-src-0.5.1.r1/setup/src/include/file.cpp 2010-02-25 10:22:25.000000000 -0500
++++ vegastrike-src-0.5.1.r1.patched/setup/src/include/file.cpp 2022-02-21 14:38:36.387998128 -0500
+@@ -167,7 +167,7 @@
+ n_parm = next_parm( parm ); //next_parm is a line splitter included with general.c
+ if (strcmp( "groups", parm ) == 0) {
+ parm = n_parm;
+- while ( ( n_parm = next_parm( parm ) ) > 0 ) {
++ while ( ( n_parm = next_parm( parm ) ) ) {
+ G_CURRENT->name = NewString( parm );
+ G_NEXT = (struct group*) malloc( sizeof (struct group) );
+ if (G_NEXT == 0) {
+@@ -188,7 +188,7 @@
+ n_parm = next_parm( parm );
+ group = NewString( parm );
+ parm = n_parm;
+- while ( ( n_parm = next_parm( parm ) ) > 0 ) {
++ while ( ( n_parm = next_parm( parm ) ) ) {
+ C_CURRENT->name = NewString( parm );
+ C_NEXT = (struct catagory*) malloc( sizeof (struct catagory) );
+ if (C_NEXT == 0) {
+@@ -318,7 +318,7 @@
+ parm++;
+ if (strcmp( name, parm ) == 0) {commenting = setting; } else {
+ parm = n_parm;
+- while ( ( n_parm = next_parm( parm ) ) > 0 ) {
++ while ( ( n_parm = next_parm( parm ) ) ) {
+ if (parm[0] == '<') break;
+ if (strcmp( name, parm ) == 0) {
+ commenting = setting;
+diff -Naur vegastrike-src-0.5.1.r1/setup/src/include/general.cpp vegastrike-src-0.5.1.r1.patched/setup/src/include/general.cpp
+--- vegastrike-src-0.5.1.r1/setup/src/include/general.cpp 2010-01-03 15:36:49.000000000 -0500
++++ vegastrike-src-0.5.1.r1.patched/setup/src/include/general.cpp 2022-02-21 14:39:02.669433757 -0500
+@@ -121,7 +121,7 @@
+ if (calc > LENGTH) { return line; }
+ length = strlen(line);
+ strcpy(current, line);
+- while ((location = strstr(current, search)) > 0) {
++ while ((location = strstr(current, search))) {
+ chr_new[0] = '\0';
+ calc = strlen(current) - strlen(search) + strlen(replace);
+ if (calc > LENGTH) { strcpy(line, current); free(current); free(chr_new); return line; }
diff --git a/games/vegastrike/patches/patch-0.5.1.r1_2 b/games/vegastrike/patches/patch-0.5.1.r1_2
index 7780674c0c..8f6d622177 100644
--- a/games/vegastrike/patches/patch-0.5.1.r1_2
+++ b/games/vegastrike/patches/patch-0.5.1.r1_2
@@ -1,6 +1,6 @@
-diff -ruN ./CMakeLists.txt ../c/CMakeLists.txt
+diff -ruN ./CMakeLists.txt ../b/CMakeLists.txt
--- ./CMakeLists.txt 2012-03-26 02:50:49.000000000 +0200
-+++ ../c/CMakeLists.txt 2020-09-03 16:25:55.870086658 +0200
++++ ../b/CMakeLists.txt 2020-09-02 22:37:20.707393347 +0200
@@ -10,7 +10,7 @@
project (vsUTCS)
@@ -10,7 +10,56 @@ diff -ruN ./CMakeLists.txt ../c/CMakeLists.txt
include_directories(${vsUTCS_SOURCE_DIR}/src
${vsUTCS_SOURCE_DIR}/src/cmd
-@@ -828,33 +828,33 @@
+@@ -685,14 +685,42 @@
+ SET(CMAKE_MODULE_PATH ${CMAKE_MODULE_PATH} ${vsUTCS_SOURCE_DIR})
+
+
+-find_package(PythonLibs REQUIRED)
+-IF(PYTHONLIBS_FOUND OR PYTHON_LIBRARIES AND PYTHON_INCLUDE_PATH)
+- SET(TST_INCLUDES ${PYTHON_INCLUDE_PATH})
++#find_package(PythonLibs REQUIRED)
++#IF(PYTHONLIBS_FOUND OR PYTHON_LIBRARIES AND PYTHON_INCLUDE_PATH)
++# SET(TST_INCLUDES ${PYTHON_INCLUDE_PATH})
++# SET(TST_LIBS ${PYTHON_LIBRARIES})
++# SET(HAVE_PYTHON 1)
++#ELSE(PYTHONLIBS_FOUND OR PYTHON_LIBRARIES AND PYTHON_INCLUDE_PATH)
++# message(FATAL_ERROR "Can't find python")
++#ENDIF(PYTHONLIBS_FOUND OR PYTHON_LIBRARIES AND PYTHON_INCLUDE_PATH)
++
++# Python 3 has a SASL compatibility issue which causes an error
++# on some installations that prefer Python 3
++# -- Python 2.7 is default for now
++OPTION(USE_PYTHON_3 "Use Python 3 instead of Python 2.7 (default is 2.7)" OFF)
++IF (USE_PYTHON_3)
++ # We want at least Python 3.4, but we prefer newer versions
++ SET(Python_ADDITIONAL_VERSIONS 3.8 3.7 3.6 3.5 3.4)
++ELSE (USE_PYTHON_3)
++ SET(Python_ADDITIONAL_VERSIONS 2.7)
++ENDIF (USE_PYTHON_3)
++# If we don't unset cache variables
++# ccmake won't pick up changes to the USE_PYTHON_3 option
++UNSET(PYTHON_INCLUDE_DIR CACHE)
++UNSET(PYTHON_LIBRARY CACHE)
++# The python version we want is set via Python_ADDITIONAL_VERSIONS
++MESSAGE("++ Python release(s) searched for : ${Python_ADDITIONAL_VERSIONS}")
++FIND_PACKAGE(PythonLibs REQUIRED)
++MESSAGE("++ Python library : ${PYTHON_LIBRARY} (${PYTHONLIBS_VERSION_STRING})")
++MESSAGE("++ Python include dir : ${PYTHON_INCLUDE_DIR}")
++IF (PYTHONLIBS_FOUND OR PYTHON_LIBRARIES AND PYTHON_INCLUDE_DIRS)
++ SET(TST_INCLUDES ${PYTHON_INCLUDE_DIRS})
+ SET(TST_LIBS ${PYTHON_LIBRARIES})
+ SET(HAVE_PYTHON 1)
+-ELSE(PYTHONLIBS_FOUND OR PYTHON_LIBRARIES AND PYTHON_INCLUDE_PATH)
+- message(FATAL_ERROR "Can't find python")
+-ENDIF(PYTHONLIBS_FOUND OR PYTHON_LIBRARIES AND PYTHON_INCLUDE_PATH)
++ELSE (PYTHONLIBS_FOUND OR PYTHON_LIBRARIES AND PYTHON_INCLUDE_DIRS)
++ MESSAGE(FATAL_ERROR "Can't find python")
++ENDIF (PYTHONLIBS_FOUND OR PYTHON_LIBRARIES AND PYTHON_INCLUDE_DIRS)
++
+
+ # Find Boost with boost_python library
+ OPTION(USE_SYSTEM_BOOST "Use system boost" OFF)
+@@ -828,33 +856,33 @@
#Find FFMpeg
@@ -68,7 +117,7 @@ diff -ruN ./CMakeLists.txt ../c/CMakeLists.txt
IF(NOT BEOS)
FIND_LIBRARY(UTIL_LIB util)
-@@ -977,12 +977,12 @@
+@@ -977,12 +1005,12 @@
HAVE_AVFORMAT_H
HAVE_AVCODEC_H
HAVE_AVIO_H
@@ -86,9 +135,9 @@ diff -ruN ./CMakeLists.txt ../c/CMakeLists.txt
GTK2_ATK_INCLUDE_DIR
GTK2_ATK_LIBRARY
GTK2_CAIRO_INCLUDE_DIR
-diff -ruN ./objconv/basemaker/base_maker_texture.cpp ../c/objconv/basemaker/base_maker_texture.cpp
+diff -ruN ./objconv/basemaker/base_maker_texture.cpp ../b/objconv/basemaker/base_maker_texture.cpp
--- ./objconv/basemaker/base_maker_texture.cpp 2010-03-10 03:56:23.000000000 +0100
-+++ ../c/objconv/basemaker/base_maker_texture.cpp 2020-09-03 16:25:55.871086646 +0200
++++ ../b/objconv/basemaker/base_maker_texture.cpp 2020-09-02 15:08:07.760351554 +0200
@@ -6,9 +6,12 @@
#define XMD_H
#define HAVE_BOOLEAN
@@ -102,9 +151,9 @@ diff -ruN ./objconv/basemaker/base_maker_texture.cpp ../c/objconv/basemaker/base
}
#define strip_16 true
-diff -ruN ./objconv/mesher/to_OgreMesh.cpp ../c/objconv/mesher/to_OgreMesh.cpp
+diff -ruN ./objconv/mesher/to_OgreMesh.cpp ../b/objconv/mesher/to_OgreMesh.cpp
--- ./objconv/mesher/to_OgreMesh.cpp 2011-06-02 01:47:36.000000000 +0200
-+++ ../c/objconv/mesher/to_OgreMesh.cpp 2020-09-03 16:25:55.872086633 +0200
++++ ../b/objconv/mesher/to_OgreMesh.cpp 2020-09-02 15:08:07.762351529 +0200
@@ -1078,10 +1078,15 @@
Ogre::VertexDeclaration *newDcl =
data->vertexDeclaration->getAutoOrganisedDeclaration(
@@ -187,9 +236,9 @@ diff -ruN ./objconv/mesher/to_OgreMesh.cpp ../c/objconv/mesher/to_OgreMesh.cpp
void DoneMeshes( void *outputcontext )
{
-diff -ruN ./objconv/mesher/to_OgreMesh.h ../c/objconv/mesher/to_OgreMesh.h
+diff -ruN ./objconv/mesher/to_OgreMesh.h ../b/objconv/mesher/to_OgreMesh.h
--- ./objconv/mesher/to_OgreMesh.h 2010-02-25 16:22:25.000000000 +0100
-+++ ../c/objconv/mesher/to_OgreMesh.h 2020-09-03 16:25:55.873086621 +0200
++++ ../b/objconv/mesher/to_OgreMesh.h 2020-09-02 15:08:07.763351517 +0200
@@ -20,7 +20,7 @@
float RadialSize( void *outputcontext ); //returns the size of the resulting mesh (it's maximum distance from 0,0,0). Useful for LODding.
@@ -199,9 +248,9 @@ diff -ruN ./objconv/mesher/to_OgreMesh.h ../c/objconv/mesher/to_OgreMesh.h
void AutoEdgeList( void *outputcontext ); //a good idea - prepares the mesh for stencil shadows
void AutoTangents( void *outputcontext ); //prepares the mesh for normal mapping (only needed if the material uses normal mapping)
}
-diff -ruN ./setup/src/c/setup.cpp ../c/setup/src/c/setup.cpp
+diff -ruN ./setup/src/c/setup.cpp ../b/setup/src/c/setup.cpp
--- ./setup/src/c/setup.cpp 2011-03-15 01:28:47.000000000 +0100
-+++ ../c/setup/src/c/setup.cpp 2020-09-03 16:25:55.873086621 +0200
++++ ../b/setup/src/c/setup.cpp 2020-09-02 15:08:07.764351504 +0200
@@ -110,10 +110,22 @@
return 1;
}
@@ -250,9 +299,9 @@ diff -ruN ./setup/src/c/setup.cpp ../c/setup/src/c/setup.cpp
//Win32 data should be "."
char tmppath[16384];
for (vector< string >::iterator vsit = data_paths.begin(); vsit != data_paths.end(); vsit++) {
-diff -ruN ./setup/src/include/central.cpp ../c/setup/src/include/central.cpp
+diff -ruN ./setup/src/include/central.cpp ../b/setup/src/include/central.cpp
--- ./setup/src/include/central.cpp 2004-10-25 04:27:13.000000000 +0200
-+++ ../c/setup/src/include/central.cpp 2020-09-03 17:45:35.786329482 +0200
++++ ../b/setup/src/include/central.cpp 2020-09-03 02:22:34.948442084 +0200
@@ -20,6 +20,8 @@
struct group GROUPS;
struct global_settings CONFIG;
@@ -271,9 +320,9 @@ diff -ruN ./setup/src/include/central.cpp ../c/setup/src/include/central.cpp
}
struct catagory *GetCatStruct(char *name) {
-diff -ruN ./src/cmd/music.cpp ../c/src/cmd/music.cpp
+diff -ruN ./src/cmd/music.cpp ../b/src/cmd/music.cpp
--- ./src/cmd/music.cpp 2012-03-19 09:20:14.000000000 +0100
-+++ ../c/src/cmd/music.cpp 2020-09-03 16:25:55.874086608 +0200
++++ ../b/src/cmd/music.cpp 2020-09-02 15:08:07.765351492 +0200
@@ -448,7 +448,9 @@
if (foundcache) {
*me->music_load_info = wherecache->second;
@@ -285,9 +334,9 @@ diff -ruN ./src/cmd/music.cpp ../c/src/cmd/music.cpp
}
if (me->freeWav && docacheme) {
me->freeWav = false;
-diff -ruN ./src/cmd/unit.cpp ../c/src/cmd/unit.cpp
+diff -ruN ./src/cmd/unit.cpp ../b/src/cmd/unit.cpp
--- ./src/cmd/unit.cpp 2012-03-19 09:20:14.000000000 +0100
-+++ ../c/src/cmd/unit.cpp 2020-09-03 16:25:55.875086596 +0200
++++ ../b/src/cmd/unit.cpp 2020-09-02 15:56:51.644797969 +0200
@@ -80,6 +80,7 @@
template < class UnitType >GameUnit< UnitType >::GameUnit( int ) : sparkle_accum( 0 )
, phalos( new HaloSystem() )
@@ -311,9 +360,9 @@ diff -ruN ./src/cmd/unit.cpp ../c/src/cmd/unit.cpp
}
template < class UnitType >GameUnit< UnitType >::~GameUnit()
-diff -ruN ./src/cmd/unit_collide.h ../c/src/cmd/unit_collide.h
+diff -ruN ./src/cmd/unit_collide.h ../b/src/cmd/unit_collide.h
--- ./src/cmd/unit_collide.h 2012-03-19 09:20:14.000000000 +0100
-+++ ../c/src/cmd/unit_collide.h 2020-09-03 17:34:09.178913256 +0200
++++ ../b/src/cmd/unit_collide.h 2020-09-02 21:27:47.524565312 +0200
@@ -94,9 +94,9 @@
{
if ( !hugeobjects.empty() )
@@ -326,9 +375,30 @@ diff -ruN ./src/cmd/unit_collide.h ../c/src/cmd/unit_collide.h
hb.clear();
acc_huge.clear();
act_huge.clear();
-diff -ruN ./src/cmd/unit_generic.cpp ../c/src/cmd/unit_generic.cpp
+diff -ruN ./src/cmd/unit_generic.cpp ../b/src/cmd/unit_generic.cpp
--- ./src/cmd/unit_generic.cpp 2012-03-19 09:20:14.000000000 +0100
-+++ ../c/src/cmd/unit_generic.cpp 2020-09-03 16:25:55.879086546 +0200
++++ ../b/src/cmd/unit_generic.cpp 2020-09-02 21:47:36.695698627 +0200
+@@ -630,13 +630,13 @@
+ jump.drive = -1;
+ }
+
+-float copysign( float x, float y )
+-{
+- if (y > 0)
+- return x;
+- else
+- return -x;
+-}
++//float copysign( float x, float y )
++//{
++// if (y > 0)
++// return x;
++// else
++// return -x;
++//}
+
+ float rand01()
+ {
@@ -4903,16 +4903,26 @@
static const string LOAD_FAILED = "LOAD_FAILED";
@@ -423,9 +493,9 @@ diff -ruN ./src/cmd/unit_generic.cpp ../c/src/cmd/unit_generic.cpp
if (tmpammo > mounts[jmod].ammo) {
cancompletefully = true;
if (touchme)
-diff -ruN ./src/cmd/unit_jump.h ../c/src/cmd/unit_jump.h
+diff -ruN ./src/cmd/unit_jump.h ../b/src/cmd/unit_jump.h
--- ./src/cmd/unit_jump.h 2012-03-19 09:20:14.000000000 +0100
-+++ ../c/src/cmd/unit_jump.h 2020-09-03 16:25:55.880086533 +0200
++++ ../b/src/cmd/unit_jump.h 2020-09-02 15:08:07.766351479 +0200
@@ -108,7 +108,7 @@
(tester = *i) != NULL; ++i)
if (tester->isUnit() == UNITPTR && tester != this)
@@ -435,9 +505,21 @@ diff -ruN ./src/cmd/unit_jump.h ../c/src/cmd/unit_jump.h
*( 4*( this->rSize()+tester->rSize() ) ) );
DealPossibleJumpDamage( this );
static int jumparrive = AUDCreateSound( vs_config->getVariable( "unitaudio", "jumparrive", "sfx43.wav" ), false );
-diff -ruN ./src/gfx/cockpit_xml.cpp ../c/src/gfx/cockpit_xml.cpp
+diff -ruN ./src/cmd/unit_physics.h ../b/src/cmd/unit_physics.h
+--- ./src/cmd/unit_physics.h 2012-03-19 09:20:14.000000000 +0100
++++ ../b/src/cmd/unit_physics.h 2020-09-03 00:27:15.498947107 +0200
+@@ -41,7 +41,7 @@
+ #include "networking/lowlevel/vsnet_clientstate.h"
+ #include "networking/netclient.h"
+
+-extern float copysign( float x, float y );
++//extern float copysign( float x, float y );
+
+ extern unsigned int apply_float_to_unsigned_int( float tmp ); //short fix
+
+diff -ruN ./src/gfx/cockpit_xml.cpp ../b/src/gfx/cockpit_xml.cpp
--- ./src/gfx/cockpit_xml.cpp 2010-12-15 09:53:40.000000000 +0100
-+++ ../c/src/gfx/cockpit_xml.cpp 2020-09-03 16:30:00.313030701 +0200
++++ ../b/src/gfx/cockpit_xml.cpp 2020-09-03 00:14:13.810719555 +0200
@@ -315,7 +315,7 @@
for (counter = 0; counter < 4; ++counter)
if (!replaced[counter]) {
@@ -447,9 +529,9 @@ diff -ruN ./src/gfx/cockpit_xml.cpp ../c/src/gfx/cockpit_xml.cpp
}
break;
case UnitImages< void >::SHIELD4:
-diff -ruN ./src/gfx/quadsquare.cpp ../c/src/gfx/quadsquare.cpp
+diff -ruN ./src/gfx/quadsquare.cpp ../b/src/gfx/quadsquare.cpp
--- ./src/gfx/quadsquare.cpp 2010-03-10 06:27:01.000000000 +0100
-+++ ../c/src/gfx/quadsquare.cpp 2020-09-03 16:25:55.881086521 +0200
++++ ../b/src/gfx/quadsquare.cpp 2020-09-02 15:08:07.767351467 +0200
@@ -13,9 +13,9 @@
#include <float.h>
#include <math.h>
@@ -461,9 +543,9 @@ diff -ruN ./src/gfx/quadsquare.cpp ../c/src/gfx/quadsquare.cpp
using std::vector;
unsigned int*quadsquare::VertexAllocated;
-diff -ruN ./src/gui/text_area.cpp ../c/src/gui/text_area.cpp
+diff -ruN ./src/gui/text_area.cpp ../b/src/gui/text_area.cpp
--- ./src/gui/text_area.cpp 2010-02-25 15:26:53.000000000 +0100
-+++ ../c/src/gui/text_area.cpp 2020-09-03 17:46:51.883378138 +0200
++++ ../b/src/gui/text_area.cpp 2020-09-03 00:05:06.687559535 +0200
@@ -32,6 +32,8 @@
* };
*/
@@ -482,9 +564,9 @@ diff -ruN ./src/gui/text_area.cpp ../c/src/gui/text_area.cpp
if (type == 1) return search->name;
else return search->description;
-diff -ruN ./src/networking/lowlevel/packetmem.cpp ../c/src/networking/lowlevel/packetmem.cpp
+diff -ruN ./src/networking/lowlevel/packetmem.cpp ../b/src/networking/lowlevel/packetmem.cpp
--- ./src/networking/lowlevel/packetmem.cpp 2008-03-31 10:20:19.000000000 +0200
-+++ ../c/src/networking/lowlevel/packetmem.cpp 2020-09-03 16:25:55.881086521 +0200
++++ ../b/src/networking/lowlevel/packetmem.cpp 2020-09-02 15:08:07.768351454 +0200
@@ -102,7 +102,7 @@
}
else
@@ -494,9 +576,21 @@ diff -ruN ./src/networking/lowlevel/packetmem.cpp ../c/src/networking/lowlevel/p
_len = 0;
}
}
-diff -ruN ./src/pk3.cpp ../c/src/pk3.cpp
+diff -ruN ./src/physics.h ../b/src/physics.h
+--- ./src/physics.h 2011-02-12 04:19:03.000000000 +0100
++++ ../b/src/physics.h 2020-09-02 21:32:31.049020768 +0200
+@@ -27,7 +27,7 @@
+ static const float oocc = (float) 0.0000000000000000111265005605; //1/c^2
+ static const float c = (float) 299792458.0;
+ static const float co10 = (float) 29979245.8;
+-float copysign( float x, float y );
++//float copysign( float x, float y );
+
+ struct Force
+ {
+diff -ruN ./src/pk3.cpp ../b/src/pk3.cpp
--- ./src/pk3.cpp 2012-03-19 09:20:14.000000000 +0100
-+++ ../c/src/pk3.cpp 2020-09-03 16:31:12.819124250 +0200
++++ ../b/src/pk3.cpp 2020-09-02 23:06:42.933362491 +0200
@@ -356,7 +356,7 @@
}
//if the file isn't in the archive
@@ -506,9 +600,59 @@ diff -ruN ./src/pk3.cpp ../c/src/pk3.cpp
int flength = GetFileLen( index );
buffer = new char[flength];
-diff -ruN ./src/vsfilesystem.cpp ../c/src/vsfilesystem.cpp
+diff -ruN ./src/python/python_compile.h ../b/src/python/python_compile.h
+--- ./src/python/python_compile.h 2010-02-25 16:44:43.000000000 +0100
++++ ../b/src/python/python_compile.h 2020-09-02 21:07:32.272758050 +0200
+@@ -10,6 +10,7 @@
+ #include "hashtable.h"
+ #include <string>
+ #include <compile.h>
++#include <boost/version.hpp>
+
+ extern Hashtable< std::string, PyCodeObject, 1023 >compiled_python;
+
+@@ -40,8 +41,11 @@
+ switch (type)
+ {
+ case MYSTRING:
++#if BOOST_VERSION <= 104500
+ return PyString_FromString( objects.c_str() );
+-
++#else
++ return PyUnicode_FromString( objects.c_str() );
++#endif
+ case MYLONG:
+ return PyLong_FromLong( objecti );
+
+diff -ruN ./src/ship_commands.cpp ../b/src/ship_commands.cpp
+--- ./src/ship_commands.cpp 2012-03-19 09:20:14.000000000 +0100
++++ ../b/src/ship_commands.cpp 2020-09-03 00:11:42.010617317 +0200
+@@ -5,14 +5,14 @@
+ #include "universe_util.h"
+ #include "gldrv/winsys.h"
+
+-static inline float fmin( float a, float b )
+-{
+- return (a < b) ? a : b;
+-}
+-static inline float fmax( float a, float b )
+-{
+- return (a > b) ? a : b;
+-}
++//static inline float fmin( float a, float b )
++//{
++// return (a < b) ? a : b;
++//}
++//static inline float fmax( float a, float b )
++//{
++// return (a > b) ? a : b;
++//}
+
+ class ShipCommands
+ {
+diff -ruN ./src/vsfilesystem.cpp ../b/src/vsfilesystem.cpp
--- ./src/vsfilesystem.cpp 2012-03-19 09:20:14.000000000 +0100
-+++ ../c/src/vsfilesystem.cpp 2020-09-03 16:25:55.882086508 +0200
++++ ../b/src/vsfilesystem.cpp 2020-09-02 16:02:24.060642199 +0200
@@ -460,13 +460,15 @@
int vs_fprintf( FILE *fp, const char *format, ... )
diff --git a/games/vegastrike/vegastrike.SlackBuild b/games/vegastrike/vegastrike.SlackBuild
index 77f7eebd21..3e46300e89 100644
--- a/games/vegastrike/vegastrike.SlackBuild
+++ b/games/vegastrike/vegastrike.SlackBuild
@@ -1,4 +1,4 @@
-#!/bin/sh
+#!/bin/bash
# Slackware build script for vegastrike
@@ -22,10 +22,15 @@
# OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF THIS SOFTWARE, EVEN IF
# ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
+# 20220221 bkw: Modified by SlackBuilds.org: fix build on 15.0.
+
+cd $(dirname $0) ; CWD=$(pwd)
+
PRGNAM=vegastrike
VERSION=${VERSION:-0.5.1.r1}
BUILD=${BUILD:-2}
TAG=${TAG:-_SBo}
+PKGTYPE=${PKGTYPE:-tgz}
PRGSRCSUF=${PRGSRCSUF:-.tar.bz2}
PRGSRCNAME=${PRGSRCNAME:-$PRGNAM-src-*}
@@ -55,7 +60,14 @@ if [ -z "$ARCH" ]; then
esac
fi
-CWD=$(pwd)
+# If the variable PRINT_PACKAGE_NAME is set, then this script will report what
+# the name of the created package would be, and then exit. This information
+# could be useful to other scripts.
+if [ ! -z "${PRINT_PACKAGE_NAME}" ]; then
+ echo "$PRGNAM-$VERSION-$ARCH-$BUILD$TAG.$PKGTYPE"
+ exit 0
+fi
+
TMP=${TMP:-/tmp/SBo}
PKG=$TMP/package-$PRGNAM
OUTPUT=${OUTPUT:-/tmp}
@@ -84,9 +96,12 @@ tar xvf $CWD/$PRGSRCNAME$PRGSRCSUF
cd $PRGSRCNAME
+cp "$CWD/cmake"/*.cmake .
+
declare patchdir="$CWD/patches"
patch -p0 < "$patchdir/patch-${VERSION}_$BUILD"
+patch -p1 < "$patchdir/ordered_pointer_comparison.diff"
BUILDDIR=build
mkdir -p $BUILDDIR
@@ -113,6 +128,8 @@ cmake \
-DCMAKE_INSTALL_DOCDIR=/usr/doc/$PRGNAM-$VERSION \
-DCMAKE_SYSTEM_PROCESSOR=$ARCH \
-DDISABLE_SERVER=${DISABLE_SERVER:-ON} \
+ -DUSE_SYSTEM_BOOST=${USE_SYSTEM_BOOST:-ON} \
+ -DCMAKE_CXX_STANDARD=${CMAKE_CXX_STANDARD:-11} \
..
make
@@ -191,5 +208,5 @@ mkdir -p $PKG/install
cat $CWD/slack-desc > $PKG/install/slack-desc
cd $PKG
-/sbin/makepkg -l y -c n $OUTPUT/$PRGNAM-$VERSION-$ARCH-$BUILD$TAG.${PKGTYPE:-tgz}
+/sbin/makepkg -l y -c n $OUTPUT/$PRGNAM-$VERSION-$ARCH-$BUILD$TAG.$PKGTYPE
diff --git a/games/vegastrike/vegastrike.info b/games/vegastrike/vegastrike.info
index e37e9f2c5a..89a9a4685c 100644
--- a/games/vegastrike/vegastrike.info
+++ b/games/vegastrike/vegastrike.info
@@ -13,6 +13,6 @@ MD5SUM="6f3f2f1ff56a29710b7d0fdd8c3a255f \
66eb03b08504cd51a12c9bd919fa78a0"
DOWNLOAD_x86_64=""
MD5SUM_x86_64=""
-REQUIRES="OpenAL"
+REQUIRES=""
MAINTAINER="CRTS"
EMAIL="crts [at] gmx [dot] net"
diff --git a/games/vera/02_direntry.diff b/games/vera/02_direntry.diff
new file mode 100644
index 0000000000..b84e91533f
--- /dev/null
+++ b/games/vera/02_direntry.diff
@@ -0,0 +1,29 @@
+Description: Add a direntry, dircategory
+Author: Ryan Kavanagh <rak@debian.org>
+Origin: vendor
+Forwarded: no
+---
+This patch header follows DEP-3: http://dep.debian.net/deps/dep3/
+Index: vera/vera.texi
+===================================================================
+--- vera.orig/vera.texi 2021-01-05 13:32:01.209209794 -0500
++++ vera/vera.texi 2021-01-05 13:32:01.209209794 -0500
+@@ -22,15 +22,12 @@
+ @set AUTHOREMAIL < ohei [at] snafu . de >
+ @c End of variables
+
+-@ignore
+ @ifinfo
+-@format
+-START-INFO-DIR-ENTRY
++@dircategory Dictionaries
++@direntry
+ * V.E.R.A.: (vera). Virtual Entity of Relevant Acronyms
+-END-INFO-DIR-ENTRY
+-@end format
++@end direntry
+ @end ifinfo
+-@end ignore
+
+ @ifinfo
+ This is a special GNU edition of V.E.R.A.,
diff --git a/games/vera/README b/games/vera/README
index 5e4a307696..4f3eeabcff 100644
--- a/games/vera/README
+++ b/games/vera/README
@@ -1,11 +1,15 @@
-vera (acronym database)
+vera (acronym dictionary)
V.E.R.A. is a free list of acronyms all of which are used in the field
of computing. It is released under the GNU Free Documentation License.
-The database is installed in GNU Info format (use "info vera" to
-access) and as the wtf(6) database, replacing the tiny/outdated one
-from bsd-games.
+The dictionary is installed in 3 formats:
+
+- GNU Info format. Use "info vera" to access.
+- The wtf(6) database. Use "wtf <acronym>" to access. This replaces
+ the tiny/outdated acronym list from bsd-games.
+- HTML. Point your browser at file:///usr/doc/vera-1.24/vera.html
+ to access.
If you remove this package, reinstall bsd-games to revert to the
original wtf database.
diff --git a/games/vera/doinst.sh b/games/vera/doinst.sh
index 902384ea1c..8f7127bf0f 100644
--- a/games/vera/doinst.sh
+++ b/games/vera/doinst.sh
@@ -1,10 +1,3 @@
-# the README says to use '* V.E.R.A.' at the start, but that causes
-# the command 'info vera' to fail. Using '* VERA' works as expected.
-
-if ! grep "(vera)" usr/info/dir 1>/dev/null 2>/dev/null; then
- cat << EOF >> usr/info/dir
-
-Miscellaneous
-* VERA: (vera). Virtual Entity of Relevant Acronyms
-EOF
+if [ -x /usr/bin/install-info ]; then
+ /usr/bin/install-info usr/info/vera.info.gz usr/info/dir
fi
diff --git a/games/vera/douninst.sh b/games/vera/douninst.sh
new file mode 100644
index 0000000000..1bef502028
--- /dev/null
+++ b/games/vera/douninst.sh
@@ -0,0 +1,6 @@
+if [ -x /usr/bin/install-info -a -d usr/info ]; then
+ ( cd usr/info
+ rm -f dir
+ for i in *.info*; do /usr/bin/install-info $i dir 2>/dev/null; done
+ )
+fi
diff --git a/games/vera/mkwtfdb.pl b/games/vera/mkwtfdb.pl
index c5430a4f5f..74d7115c8c 100644
--- a/games/vera/mkwtfdb.pl
+++ b/games/vera/mkwtfdb.pl
@@ -11,6 +11,7 @@ chdir $dir || die "$0: $dir: $!\n";
for $ext (0, 'a'..'z') {
open(my $f, "<vera.$ext") or next;
+ warn "reading file vera.$ext\n";
my ($acronym, $definition);
while(<$f>) {
@@ -39,153 +40,597 @@ while(<DATA>) {
print sort { $a cmp $b } @output;
-# Rest of this file is the original contents of /usr/share/misc/acronyms
-# from Slack 14.1's bsd-games (minus the comment and blank line at the top).
+# Rest of this file is the original contents of
+# /usr/share/misc/acronyms from Slackware -current (pre-15.0)
+# bsd-games-2.17-x86_64-3, minus the comment at the top.
__DATA__
-AFAICR as far as I can recall
+10Q thank you
+10X thanks
+1337 elite ("leet")
+224 today, tomorrow, forever
+31337 elite ("eleet")
+4TW for the win
+A/S/L age/sex/location
+AAMOF as a matter of fact
+ABD all but dissertation
+AC audible chuckle
+ADD attention deficit disorder
+ADHD attention deficit (and) hyperactivity disorder
+ADN any day now
+ADOS attention deficit ... oh, shiny!
+AEAP as early as possible
+AFAIAC as far as I am concerned
+AFAIC as far as I'm concerned
+AFAICR as far as I can {recall,remember}
+AFAICS as far as I can see
AFAICT as far as I can tell
AFAIK as far as I know
-AFAIR as far as I recall
+AFAIR as far as I {recall,remember}
+AFAIU as far as I understand
+AFD away from desktop
AFK away from keyboard
+AFW away from window
+AGM annual general meeting
+AINEC and it's not even close
+AISE as I see it
+AIU as I understand
AIUI as I understand it
AKA also known as
+AM ante meridiem
+AMA ask me anything
+AMOL a mountain of love
+ASAIC as soon as I can
ASAP as soon as possible
+ASL age/sex/location
+ATEOTD at the end of the day
+ATM at the moment
+ATM {automated,automatic} teller machine
+ATW around the world
+AWK Aho, Weinberger, [and] Kernighan
AWOL absent without official leave
AYBABTU all your base are belong to us
+AYF all your fault
+AYOR at your own risk
+AYT are you there
+B& banned
+B/C because
+B/W bandwidth
+B/W between
+BAI goodbye
+BAK back at keyboard
+BBIAB be back in a bit
BBL [I'll] be back later
+BBR burnt beyond repair
BBS be back soon
BBT be back tomorrow
-BFD big fucking deal
+BCNU be seeing you
+BCNUL8R be seeing you later
+BCP best current practice
+BF best friend
+BF boyfriend
+BFF best {friend,friends} forever
BIAB back in a bit
BIAF back in a few
BIALW back in a little while
BIAS back in a second
BIAW back in a while
+BIDI boy, I did it
+BNYA burned now you are
+BOC but of course
BOFH bastard operator from hell
-BOHICA bend over here it comes again
+BOT back on topic
+BPM beam propagation method
+BPM beats per minute
BRB [I'll] be right back
+BSD booze, sex, drugs
BTDT been there, done that
-BTTH butt to the head
+BTFT been there, fixed that
+BTTH boot to the head
BTW by the way
+BYOB bring your own {beer,booze}
+CC credit card
+CEO chief executive officer
+CFV call for votes
+CFY calling for you
+CG center of gravity
+CHANOPS channel operator status
CMIIW correct me if I'm wrong
CNP continued [in my] next post
+COB close of business [day]
+COTS commercial off-the-shelf
+CPC cost per click
+CPE customer premises equipment
+CRM customer relationship management
+CTN can't talk now
+CU see you
+CUL see you later
+CYA see ya
CYA see you around
-DNDK don't know, don't care
+CYE check your email
+D/B/A doing business as
+D/L download
+DBA doing business as
+DBEYR don't believe everything you read
+DIAFYO did I ask for your opinion?
+DIY do it yourself
+DKDC don't know, don't care
+DM direct message
+DM dungeon master
+DME durable medical equipment
+DMEPOS durable medical equipment, prosthetics, orthotics and supplies
+DMZ demilitarized zone
+DND do not disturb
+DNF did not finish
+DNFT do not feed troll
+DOA dead on arrival
+DRY don't repeat yourself
+DSTM don't shoot the messenger
DTRT do the right thing
DTWT do the wrong thing
DWIM do what I mean
+DYK do you know?
+EA early adopter
+ECR electronic cash register
+EDS eternal downward spiral
+EFT electronic funds transfer
EG evil grin
+EIE enough is enough
EMSG email message
+EOB end of business [day]
+EOD end of {day,discussion}
+EOL end of life
+EOM end of message
+EOS end of story
+ETA edited to add
+ETA estimated time of arrival
ETLA extended three letter acronym
+ETR early to rise
EWAG experienced wild-ass guess
+EZ easy
+EZPZ easy-peasy
+F9 fine
FAQ frequently asked question
-FIIK fuck[ed] if I know
-FIIR fuck[ed] if I remember
-FOAD fall over and die
+FBOW for better or worse
+FCFS first come, first served
+FCOL for crying out loud
+FFS free for shipping
+FITB fill in the blank
+FNO for nerds only
+FNO from now on
+FOC free of charge
+FPS first person shooter
+FPS frames per second
FSDO for some definition of
FSVO for some value of
-FUBAR fucked up beyond all recognition
-FUD fear, uncertainty and doubt
+FTBFS fails to build from source
+FTFY fixed that for you
+FTHOI for the {heck,hell} of it
+FTL faster than light
+FTL for the loss
+FTR for the record
+FTTT from time to time
+FTW for the win
+FUD fear, uncertainty, [and] doubt
FWIW for what it's worth
+FYEO for your eyes only
FYI for your information
G grin
+G/C garbage collect
+G2G got to go
+G2K good to know
+GA go ahead
+GAC get a clue
+GAL get a life
+GBTW get back to work
+GF girlfriend
+GFU good for you
+GFY good for you
+GG good game
+GGA good game all
+GGP good game partner
+GGWP good game, well played
+GIGO garbage in, garbage out
+GIYF Google is your friend
+GJ good job
+GL good luck
+GLHF good luck, have fun
+GLINE global kill line
+GLWT good luck with that
+GM game master
+GMT Greenwich mean time
GMTA great minds think alike
+GOK God only knows
+GOP Grand Old Party
+GOWI get on with it
+GPS global positioning system
+GR8 great
+GTG got to go
+GTH go to hell
+GTSY {glad,good} to see you
+GWS get well soon
+H8 hate
HAND have a nice day
+HE how embarrasing
+HF have fun
HHIS hanging head in shame
+HHOS ha ha, only serious
+HICA here it comes again
+HME home medical equipment
+HNY happy new year
+HOAS hold on a second
+HOPS half-operator status
HTH hope this helps
+IAC in any case
+IAE in any event
IANAL I am not a lawyer
-IHAFC I haven't a fucking clue
-IHNFC I have no fucking clue
+IAW in another window
+IAWTC I agree with this comment
+IAWTP I agree with this post
+IAY I adore you
+IB I'm back
+IC I see
+ICBW I could be {worse,wrong}
+ICCL I couldn't care less
+ICUR I see you are
+ICYMI in case you missed it
+IDC I don't care
+IDGI I don't get it
+IDGW in a good way
+IDI I doubt it
+IDIFTL I did it for the lulz
+IDK I don't know
+IDRC I don't really care
+IDTS I don't think so
+IDTT I drink to that
+IFF if and only if
+IFTTT if this then that
+IHBW I have been wrong
IIANM if I am not mistaken
-IIRC if I recall correctly
+IIRC if I {recall,remember} correctly
+IIUC if I understand correctly
+IKR I know, right?
+IKWYM I know what you mean
+ILU I love you
+ILY I love you
+IMAO in my arrogant opinion
+IMBO in my biased opinion
IMCO in my considered opinion
+IME in my experience
IMHO in my humble opinion
IMNSHO in my not so humble opinion
IMO in my opinion
+INB4 in before
+INPO in no particular order
IOW in other words
+IPML I pissed myself laughing
+IQ intelligence quotient
+IRCOP Internet relay chat {operator,operators}
+IRCOPS Internet relay chat operator status
IRL in real life
+IRT in real time
+IRT in regards to
+ISAGN I see a great need
+ISBN International Standard Book Number
ISTM it seems to me
-ISTR I seem to recall
+ISTR I seem to {recall,remember}
+ITC in this {channel,chat}
+ITT in this thread
ITYM I think you mean
+IUD insert usual disclaimers
+IUSS if you say so
+IW it's worse
+IWBNI it would be nice if
+IYD in your dreams
+IYKWIM if you know what I mean
+IYSS if you say so
+IYSWIM if you see what I mean
+J/K just kidding
+JAM just a minute
+JAS just a second
+JFK John Fitzgerald Kennedy
+JFTR just for the record
+JFYI just for your information
+JGI just Google it
+JGI just got it
+JHD just hit delete
JIC just in case
+JJA just joking around
JK just kidding
JMO just my opinion
+JSYK just so you know
JTLYK just to let you know
+JW just wondering
KISS keep it simple, stupid
KITA kick in the ass
+KK okay, okay
+KLINE kill line
+KMA keep me advised
+KMA keep moving ahead
+KMA kill me already
KNF kernel normal form
+KOS kill on sight
+KTHX okay, thanks
+KTHXBAI okay, thanks. Goodbye.
+KWIM know what I mean?
+L8 late
L8R later
-LART luser attitude readjustment tool (ie, hammer)
+LART luser attitude readjustment tool
+LBNL last but not least
+LGTM looks good to me
LJBF let's just be friends
+LMAO laughing my ass off
+LMC let me check
+LMGTFY let me google that for you
+LMHO laughing my head off
+LMK let me know
+LMNO laughing my nuts off
LMSO laughing my socks off
+LOIC low orbit ion cannon
LOL laughing out loud
+LP long playing [record]
LTNS long time no see
+LWYL laugh with you later
+M8 mate
+MAD mutually assured destruction
+MBA master of business administration
+MFW my face when
+MIA missing in action
+MMB message me back
+MO modus operandi
MOTAS member of the appropriate sex
MOTOS member of the opposite sex
MOTSS member of the same sex
MTF more to follow
+MVP minimum viable product
+MVP most valuable player
MYOB mind your own business
+N/A not {applicable,available}
+N/M never mind
+NAFAIK not as far as I know
+NB nota bene
NBD no big deal
-NFC no fucking clue
-NFI no fucking idea
-NFW no fucking way
+NE1 anyone
+NEDM not even Doom music
+NFA no flaming allowed
+NFC no functional change
+NIFOC naked in front of computer
NIH not invented here
+NIMBY not in my backyard
+NM never mind
+NMF not my fault
+NMP not my problem
+NMU not much, you?
+NOM no offence meant
+NOOB newbie
+NORP normal ordinary {respectable,responsible} person
+NOYB none of your business
NP no problem
+NPC non-player character
NRFPT not ready for prime time
NRN no reply necessary
+NRN not right now
+NSFW not suitable for work
+NTN no thanks needed
+NUNP no users, no problems
+NVM never mind
+NW no way
+NXT next
+NYPA not your personal army
+O2W off to work
+OAO over and out
+OBV obviously
+OBVS obviously
+ODTW others do the work (cf. "otdw source")
+OFC of course
+OH other half
OIC oh, I see
+OMG oh my God
+OMW on my way
+ONNA oh no, not again
+ONNTA oh no, not this again
+OOB out of bounds
+OOC out of curiosity
+OOI out of interest
+OOSOOM out of sight, out of mind
+OPS operator status
+OPS operators
+ORITE oh, right
+OT off topic
OTL out to lunch
OTOH on the other hand
+OTP one true pairing
+OTS off the shelf
+OTT over the top
OTTOMH off the top of my head
+OWTTE or words to that effect
+PC player character
+PC politically correct
+PCB polychlorinated biphenyl(s)
+PD police department
+PDA public display of affection
+PDQ pretty darn quick
+PDS please don't shout
+PEBCAK problem exists between chair and keyboard
+PEBKAC problem exists between keyboard and chair
+PFI pay for inclusion
PFY pimply faced youth
+PHB pointy haired boss
+PIN personal identification number
PITA pain in the ass
+PITR {parent,parents} in the room
+PKSP pound keys and spew profanity
+PM post meridiem
+PMFI problem magically fixed itself
+PMFJI pardon me for jumping in
+PMSL pissing myself laughing
PNG persona non grata
+PNP plug and pray
POC point of contact
+POC proof of concept
POLA principle of least astonishment
+POLS principle of least surprise
+POS point of sale
+POV point of view
+PPL people
PPL pretty please
+PPP petty pet peeve
+PPS pulse per second (signal)
+PR public relations
+PSA prostate-specific antigen
+PSA public service announcement
+PTA parent-teacher association
+PTO {paid,personal} time off
+PTO parent-teacher organization
+PTO please turn over
+PTO power takeoff
+PTV parental tunnel vision
QED quod erat demonstrandum
+QFT quoted for truth
+RA residential advisor
RFC request for comments
+RFD request for discussion
+RFE request for enhancements
+RIP rest in peace
RL real life
RLC rod length check
+RMS Richard Matthew Stallman
+ROFL rolling on floor laughing
+ROFLMAO rolling on floor laughing my ass off
+ROI return on investment
ROTFL rolling on the floor laughing
RP responsible person
+RR railroad
+RSI repetitive strain injury
RSN real soon now
-RTFB read the fine/fucking book
-RTFM read the fine/fucking manual
-RTFMP read the fine/fucking man page
-RTFS read the fine/fucking source
+RSVP respondez s'il vous plait ("reply please")
+S/T self titled
+SAR search and rescue
+SAR some assembly required
SCNR sorry, could not resist
SEP someone else's problem
-SFA sweet fuck all
+SERP search engine results page
+SFAICT so far as I can tell
SHID slaps head in disgust
+SIMCA sitting in my chair amused
+SITD still in the dark
+SMAP Soil Moisture Active Passive
+SMH shaking my head
SMLSFB so many losers, so few bullets
SMOP simple matter of programming
-SNAFU situation normal, all fucked up
SNERT snot-nosed egotistical rude teenager
+SNMP sorry, not my problem
SO significant other
SOB son of [a] bitch
-SOL shit out [of] luck
+SOP standard operating procedure
+SRS serious
+SRSLY seriously
+SSIA subject says it all
+SSTO single stage to orbit
+STW search the web
SUS stupid user syndrome
+SUX sucks
+SUX2BU sucks to be you
SWAG silly, wild-assed guess
SWAHBI silly, wild-assed hare-brained idea
+SWMBO she who must be obeyed
+SYS see you soon
+TA teaching assistant
TANSTAAFL there ain't no such thing as a free lunch
+TBA to be announced
+TBC to be continued
TBD to be {decided,determined,done}
+TBH to be honest
+TBOMK the best of my knowledge
+TCB taking care of business
+TCO taken care of
+TCO total cost of ownership
+TFOA things falling off aircraft
+TFW that feeling when
+TGIF thank goodness it's Friday
+THNX thanks
+THX thanks
TIA thanks in advance
+TIAVP this is a volunteer project
+TIC tonque in cheek
+TIL today I learned
+TINC there is no cabal
+TINLA this is not legal advice
+TINWIS this is not what I said
+TJM that's just me
TLA three letter acronym
+TLA true love always
+TLC tender loving care
+TLDR too long, didn't read
+TM trademark
+TM trust me
TMA too many abbreviations
+TMG too much government
TMI too much information
+TMJ temporomandibular joint
+TMK to my knowledge
+TMTOWTDI there's more than one way to do it
+TNF The NetBSD Foundation
+TOC table of contents
+TOCTOU time of check to time of use
+TOEFL test of english as a foreign language
+TOH to other half
+TP toilet paper
+TPTB the powers that be
+TRT the right thing
+TTBOMK to the best of my knowledge
TTFN ta ta for now
+TTM to the moderator
+TTT thought that too
TTYL talk to you later
+TTYS talk to you soon
+TWAIN thing without an interesting name
+TWDT the whole damn thing
+TWIAVBP the world is a very big place
+TY thank you
TYVM thank you very much
+U/L upload
+UGT universal greeting time
+UR your
+UR {you're, you are}
UTSL use the source, Luke
+VCR video cassette recorder
VEG very evil grin
+VIP very important person
+W/ with
+W/E whatever
+W/O without
+W8 wait
+WAFWOT what a foolish waste of time
WAG wild-ass guess
+WB welcome back
+WCPGW what could possibly go wrong
+WDYMBT what do you mean by that
+WELC working effectively with legacy code
+WFH working from home
+WFM works for me
WIBNI wouldn't it be nice if
-WOFTAM waste of fucking time and money
+WIP work in progress
+WMNC watch me not care
WOMBAT waste of money, brain, and time
-WTF {what,where,who,why} the fuck
-WTH {what,where,who,why} the hell
-WYSIWYG what you see is what you get
+WRT with respect to
+WTB {waiting,want,willing} to buy
+WTF where's the food
+WTG way to go
+WTH {what,when,where,who,why} the hell
+WTS {waiting,want,willing} to sell
+WTT {waiting,want,willing} to trade
+WWJD what would Jesus do?
+YAGNI you ain't gonna need it
+YALIMO you are lame, in my opinion
+YAOTM yet another off-topic message
+YCTAT you can't troll a troll
+YGM you got mail
+YHBT you have been trolled
+YHL you have lost
YKWIM you know what I mean
YMMV your mileage may vary
+YOLO you only live once
+YW you're welcome
+YWSYLS you win some, you lose some
+ZIP zoning improvement plan
diff --git a/games/vera/slack-desc b/games/vera/slack-desc
index 1b05ef610f..5cc8a5b2c7 100644
--- a/games/vera/slack-desc
+++ b/games/vera/slack-desc
@@ -6,7 +6,7 @@
# customary to leave one space after the ':' except on otherwise blank lines.
|-----handy-ruler------------------------------------------------------|
-vera: vera (acronym database)
+vera: vera (acronym dictionary)
vera:
vera: V.E.R.A. is a free list of acronyms all of which are used in the field
vera: of computing. It is released under the GNU Free Documentation License.
diff --git a/games/vera/utf8_and_double_brackets.diff b/games/vera/utf8_and_double_brackets.diff
new file mode 100644
index 0000000000..9f32dd0e77
--- /dev/null
+++ b/games/vera/utf8_and_double_brackets.diff
@@ -0,0 +1,44 @@
+diff -Naur vera-1.24/vera.c vera-1.24.patched/vera.c
+--- vera-1.24/vera.c 2020-08-03 13:43:56.000000000 -0400
++++ vera-1.24.patched/vera.c 2021-10-15 17:31:16.957383994 -0400
+@@ -9,7 +9,8 @@
+ @c Additional explanations are included in [square brackets]
+
+ @table @asis
+-C&C Command & Control [server]
++@item C&C
++Command & Control [server]
+
+ @item C128
+ Commodore 128 [computer] (Commodore)
+diff -Naur vera-1.24/vera.h vera-1.24.patched/vera.h
+--- vera-1.24/vera.h 2020-08-03 13:43:56.000000000 -0400
++++ vera-1.24.patched/vera.h 2021-10-15 17:26:41.661409019 -0400
+@@ -886,13 +886,13 @@
+ Hosted Virtual Desktop
+
+ @item HVGA
+-Half Video Graphics Array [320480] (VGA)
++Half Video Graphics Array [320x480] (VGA)
+
+ @item HVM
+ Hardware Virtual Machine
+
+ @item HWE
+-HardWare Enablement [stack]] (Linux, Ubuntu)
++HardWare Enablement [stack] (Linux, Ubuntu)
+
+ @item HWMC
+ HardWare Motion Compensation
+diff -Naur vera-1.24/vera.m vera-1.24.patched/vera.m
+--- vera-1.24/vera.m 2020-08-03 13:43:56.000000000 -0400
++++ vera-1.24.patched/vera.m 2021-10-15 17:26:47.996408444 -0400
+@@ -1009,7 +1009,7 @@
+ Mobile Internet Toolkit (MS, .NET)
+
+ @item MITM
+-Man In The Middle [[attack]]
++Man In The Middle [attack]
+
+ @item MJ
+ Modular Jack
diff --git a/games/vera/vera.6 b/games/vera/vera.6
new file mode 100644
index 0000000000..9232e6ad1a
--- /dev/null
+++ b/games/vera/vera.6
@@ -0,0 +1,78 @@
+.\" Man page generated from reStructuredText.
+.
+.
+.nr rst2man-indent-level 0
+.
+.de1 rstReportMargin
+\\$1 \\n[an-margin]
+level \\n[rst2man-indent-level]
+level margin: \\n[rst2man-indent\\n[rst2man-indent-level]]
+-
+\\n[rst2man-indent0]
+\\n[rst2man-indent1]
+\\n[rst2man-indent2]
+..
+.de1 INDENT
+.\" .rstReportMargin pre:
+. RS \\$1
+. nr rst2man-indent\\n[rst2man-indent-level] \\n[an-margin]
+. nr rst2man-indent-level +1
+.\" .rstReportMargin post:
+..
+.de UNINDENT
+. RE
+.\" indent \\n[an-margin]
+.\" old: \\n[rst2man-indent\\n[rst2man-indent-level]]
+.nr rst2man-indent-level -1
+.\" new: \\n[rst2man-indent\\n[rst2man-indent-level]]
+.in \\n[rst2man-indent\\n[rst2man-indent-level]]u
+..
+.TH "VERA" 6 "2021-10-16" "1.24" "SlackBuilds.org"
+.SH NAME
+vera \- look up acronyms in the VERA database
+.\" RST source for vera(6) man page. Convert with:
+.
+.\" rst2man.py vera.rst > vera.6
+.
+.\" rst2man.py comes from the SBo development/docutils package.
+.
+.SH SYNOPSIS
+.sp
+vera \fIacronym\fP ...
+.SH DESCRIPTION
+.sp
+\fBvera\fP looks up one or more acronyms in the VERA acronym
+database. Example:
+.INDENT 0.0
+.INDENT 3.5
+.sp
+.nf
+.ft C
+$ vera ianal
+IANAL
+ I Am Not A Lawyer (slang, Usenet, IRC)
+.ft P
+.fi
+.UNINDENT
+.UNINDENT
+.sp
+There are no options.
+.SH FILES
+.sp
+\fI/usr/share/info/vera.info.gz\fP \- the acronym database. Can
+be browsed with the command \fIinfo vera\fP\&.
+.SH AUTHORS
+.sp
+The \fIvera\fP command was written by Andres Soolo.
+.sp
+This man page written for the SlackBuilds.org project
+by B. Watson, and is licensed under the WTFPL.
+.SH SEE ALSO
+.sp
+\fIwtf\fP(6)
+.sp
+/usr/doc/vera\-1.24/README
+.sp
+/usr/doc/vera\-1.24/vera.html
+.\" Generated by docutils manpage writer.
+.
diff --git a/games/vera/vera.SlackBuild b/games/vera/vera.SlackBuild
index d0417f27ee..6c2eca316d 100644
--- a/games/vera/vera.SlackBuild
+++ b/games/vera/vera.SlackBuild
@@ -1,21 +1,40 @@
-#!/bin/sh
+#!/bin/bash
# Slackware build script for vera
-# Written by B. Watson (yalhcru@gmail.com)
+# Written by B. Watson (urchlay@slackware.uk)
# Licensed under the WTFPL. See http://www.wtfpl.net/txt/copying/ for details.
+# 20230308 bkw: BUILD=3, make douninst.sh less fugly.
+
+# 20211015 bkw: BUILD=2
+# - fix character encoding and formatting.
+# - fix info node structure and dir entry.
+# - add HTML version of the acronym list.
+# - stop splitting vera.info into multiple info files.
+# - doinst.sh properly installs vera.info in Info dir.
+# - douninst.sh properly removes vera.info from Info dir.
+# - add vera standalone lookup tool from contrib/.
+# - add man page for same.
+
# 20201024 bkw: updated for v1.24
+cd $(dirname $0) ; CWD=$(pwd)
+
PRGNAM=vera
VERSION=${VERSION:-1.24}
-BUILD=${BUILD:-1}
+BUILD=${BUILD:-3}
TAG=${TAG:-_SBo}
+PKGTYPE=${PKGTYPE:-tgz}
ARCH=noarch
-CWD=$(pwd)
+if [ ! -z "${PRINT_PACKAGE_NAME}" ]; then
+ echo "$PRGNAM-$VERSION-$ARCH-$BUILD$TAG.$PKGTYPE"
+ exit 0
+fi
+
TMP=${TMP:-/tmp/SBo}
PKG=$TMP/package-$PRGNAM
OUTPUT=${OUTPUT:-/tmp}
@@ -35,26 +54,53 @@ find -L . -perm /111 -a \! -perm 755 -a -exec chmod 755 {} \+ -o \
# Fix TL;DR and BP;DR entries.
patch -p1 < $CWD/semicolons.diff
-makeinfo --force $PRGNAM.texi
+# vera.h includes a non-ASCII character encoded as iso-8859-1. It's
+# a multiplication sign. Replace with ASCII letter x. Also replace
+# all [[ and ]] with [ and ]. Also, vera.c's first entry is missing
+# the @item.
+patch -p1 < $CWD/utf8_and_double_brackets.diff
+
+# Next 2 are from Debian:
+
+# This one is actually harmful IMO. It gets rid of the 'Up: Top'
+# links at the start of each letters' worth of acronyms.
+#patch -p1 < $CWD/01_texinfo_node_menu.diff
+
+# This one makes vera show up in the info directory (so if you just
+# type "info", it shows up under Dictionaries in the index).
+patch -p1 < $CWD/02_direntry.diff
+
+PKGDOC=$PKG/usr/doc/$PRGNAM-$VERSION
+mkdir -p $PKGDOC
+makeinfo --force --no-split $PRGNAM.texi
+makeinfo --force --no-split --html -o $PKGDOC/$PRGNAM.html $PRGNAM.texi
mkdir -p $PKG/usr/info
-for i in $PRGNAM.info*; do
- gzip -9c < $i > $PKG/usr/info/$i.gz
-done
+gzip -9c < $PRGNAM.info > $PKG/usr/info/$PRGNAM.info.gz
# Generate wtf(6) database from VERA contents.
-# Yes, this conflicts with bsd-games, but it's not like it's going to break
-# anyone's system. As shipped, /usr/share/misc/acronyms is about useless.
+# Yes, this conflicts with bsd-games, but it's not like it's
+# going to break anyone's system. The /usr/share/misc/acronyms from
+# bsd-games-2.17-x86_64-3 has 590 entries. The acronyms installed by
+# this package includes all of those, plus 12,666 more.
mkdir -p $PKG/usr/share/misc
perl $CWD/mkwtfdb.pl > $PKG/usr/share/misc/acronyms
-mkdir -p $PKG/usr/doc/$PRGNAM-$VERSION
-cp -a changelog README $PKG/usr/doc/$PRGNAM-$VERSION
-cat $CWD/$PRGNAM.SlackBuild > $PKG/usr/doc/$PRGNAM-$VERSION/$PRGNAM.SlackBuild
+# 20211016 bkw: include standalone 'vera' lookup tool. Note
+# that this tool requires vera.info.gz to have been built with
+# --no-split (as we actually do, above).
+mkdir -p $PKG/usr/games $PKG/usr/man/man6
+sed -i 's,/usr/share,/usr,' contrib/$PRGNAM.pl
+install -m0755 contrib/$PRGNAM.pl $PKG/usr/games/$PRGNAM
+gzip -9c < $CWD/$PRGNAM.6 > $PKG/usr/man/man6/$PRGNAM.6.gz
+
+cp -a changelog README $PKGDOC
+cat $CWD/$PRGNAM.SlackBuild > $PKGDOC/$PRGNAM.SlackBuild
mkdir -p $PKG/install
cat $CWD/slack-desc > $PKG/install/slack-desc
cat $CWD/doinst.sh > $PKG/install/doinst.sh
+cat $CWD/douninst.sh > $PKG/install/douninst.sh
cd $PKG
-/sbin/makepkg -l y -c n $OUTPUT/$PRGNAM-$VERSION-$ARCH-$BUILD$TAG.${PKGTYPE:-tgz}
+/sbin/makepkg -l y -c n $OUTPUT/$PRGNAM-$VERSION-$ARCH-$BUILD$TAG.$PKGTYPE
diff --git a/games/vera/vera.info b/games/vera/vera.info
index 021dd80f6d..1ca7aa9e8d 100644
--- a/games/vera/vera.info
+++ b/games/vera/vera.info
@@ -1,10 +1,10 @@
PRGNAM="vera"
VERSION="1.24"
-HOMEPAGE="ftp://ftp.gnu.org/gnu/vera/"
-DOWNLOAD="ftp://ftp.gnu.org/gnu/vera/vera-1.24.tar.gz"
+HOMEPAGE="https://ftp.gnu.org/gnu/vera/"
+DOWNLOAD="https://ftp.gnu.org/gnu/vera/vera-1.24.tar.gz"
MD5SUM="03dce85d633e58acdd836ac1e260e7fb"
DOWNLOAD_x86_64=""
MD5SUM_x86_64=""
REQUIRES=""
MAINTAINER="B. Watson"
-EMAIL="yalhcru@gmail.com"
+EMAIL="urchlay@slackware.uk"
diff --git a/games/vera/vera.rst b/games/vera/vera.rst
new file mode 100644
index 0000000000..0430a02ad2
--- /dev/null
+++ b/games/vera/vera.rst
@@ -0,0 +1,59 @@
+.. RST source for vera(6) man page. Convert with:
+.. rst2man.py vera.rst > vera.6
+.. rst2man.py comes from the SBo development/docutils package.
+
+.. |version| replace:: 1.24
+.. |date| date::
+
+====
+vera
+====
+
+-------------------------------------
+look up acronyms in the VERA database
+-------------------------------------
+
+:Manual section: 6
+:Manual group: SlackBuilds.org
+:Date: |date|
+:Version: |version|
+
+SYNOPSIS
+========
+
+vera *acronym* ...
+
+DESCRIPTION
+===========
+
+**vera** looks up one or more acronyms in the VERA acronym
+database. Example::
+
+ $ vera ianal
+ IANAL
+ I Am Not A Lawyer (slang, Usenet, IRC)
+
+There are no options.
+
+FILES
+=====
+
+*/usr/share/info/vera.info.gz* - the acronym database. Can
+be browsed with the command *info vera*.
+
+AUTHORS
+=======
+
+The *vera* command was written by Andres Soolo.
+
+This man page written for the SlackBuilds.org project
+by B. Watson, and is licensed under the WTFPL.
+
+SEE ALSO
+========
+
+*wtf*\(6)
+
+/usr/doc/vera-|version|/README
+
+/usr/doc/vera-|version|/vera.html
diff --git a/games/vice-libretro/README b/games/vice-libretro/README
new file mode 100644
index 0000000000..1cf398fa5d
--- /dev/null
+++ b/games/vice-libretro/README
@@ -0,0 +1,12 @@
+vice (Versatile Commodore 8-bit emulator) core for libretro.
+
+This script builds the cores for
+
+- Commodore 64
+- Commodore VIC20
+- Commodore C128
+- Commodore Plus4
+- Commodore Pet
+
+To build the debugging symbols use:
+ DEBUG=1 ./vice-libretro.SlackBuild
diff --git a/games/vice-libretro/slack-desc b/games/vice-libretro/slack-desc
new file mode 100644
index 0000000000..823d376e8f
--- /dev/null
+++ b/games/vice-libretro/slack-desc
@@ -0,0 +1,19 @@
+# HOW TO EDIT THIS FILE:
+# The "handy ruler" below makes it easier to edit a package description.
+# Line up the first '|' above the ':' following the base package name, and
+# the '|' on the right side marks the last column you can put a character in.
+# You must make exactly 11 lines for the formatting to be correct. It's also
+# customary to leave one space after the ':' except on otherwise blank lines.
+
+ |-----handy-ruler------------------------------------------------------|
+vice-libretro: vice-libretro (VICE libretro port)
+vice-libretro:
+vice-libretro: Versatile Commodore 8-bit cores for libretro
+vice-libretro:
+vice-libretro: Homepage: https://www.libretro.com/
+vice-libretro:
+vice-libretro:
+vice-libretro:
+vice-libretro:
+vice-libretro:
+vice-libretro:
diff --git a/games/vice-libretro/vice-libretro.SlackBuild b/games/vice-libretro/vice-libretro.SlackBuild
new file mode 100644
index 0000000000..e4b826cfde
--- /dev/null
+++ b/games/vice-libretro/vice-libretro.SlackBuild
@@ -0,0 +1,96 @@
+#!/bin/bash
+
+# Slackware build script for vice-libretro
+
+# Copyright 2022 ilmich < ardutu at gmail dot com >
+# All rights reserved.
+#
+# Redistribution and use of this script, with or without modification, is
+# permitted provided that the following conditions are met:
+#
+# 1. Redistributions of this script must retain the above copyright
+# notice, this list of conditions and the following disclaimer.
+#
+# THIS SOFTWARE IS PROVIDED BY THE AUTHOR "AS IS" AND ANY EXPRESS OR IMPLIED
+# WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE IMPLIED WARRANTIES OF
+# MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE ARE DISCLAIMED. IN NO
+# EVENT SHALL THE AUTHOR BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL,
+# SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT LIMITED TO,
+# PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, DATA, OR PROFITS;
+# OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY,
+# WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR
+# OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF THIS SOFTWARE, EVEN IF
+# ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
+
+cd $(dirname $0) ; CWD=$(pwd)
+
+PRGNAM=vice-libretro
+VERSION=${VERSION:-2022.06.22_c3becd1}
+BUILD=${BUILD:-1}
+TAG=${TAG:-_SBo}
+PKGTYPE=${PKGTYPE:-tgz}
+
+if [ -z "$ARCH" ]; then
+ case "$( uname -m )" in
+ i?86) ARCH=i586 ;;
+ arm*) ARCH=arm ;;
+ *) ARCH=$( uname -m ) ;;
+ esac
+fi
+
+# If the variable PRINT_PACKAGE_NAME is set, then this script will report what
+# the name of the created package would be, and then exit. This information
+# could be useful to other scripts.
+if [ ! -z "${PRINT_PACKAGE_NAME}" ]; then
+ echo "$PRGNAM-$VERSION-$ARCH-$BUILD$TAG.$PKGTYPE"
+ exit 0
+fi
+
+TMP=${TMP:-/tmp/SBo}
+PKG=$TMP/package-$PRGNAM
+OUTPUT=${OUTPUT:-/tmp}
+
+LIBDIRSUFFIX=
+[ "$ARCH" = x86_64 ] && LIBDIRSUFFIX=64
+
+set -eu
+
+rm -rf $PKG
+mkdir -p $TMP $PKG $OUTPUT
+cd $TMP
+rm -rf $PRGNAM-$VERSION
+tar xvf $CWD/$PRGNAM-$VERSION.tar.xz
+cd $PRGNAM-$VERSION
+chown -R root:root .
+find -L . \
+ \( -perm 777 -o -perm 775 -o -perm 750 -o -perm 711 -o -perm 555 \
+ -o -perm 511 \) -exec chmod 755 {} \; -o \
+ \( -perm 666 -o -perm 664 -o -perm 640 -o -perm 600 -o -perm 444 \
+ -o -perm 440 -o -perm 400 \) -exec chmod 644 {} \;
+
+[ "${DEBUG:=0}" != 0 ] && DEBUG=1
+
+for i in x64 xvic x128 xpet xplus4; do
+ LIBNAM=vice_${i}_libretro
+ make DEBUG=$DEBUG GIT_VERSION="${VERSION#*_}" EMUTYPE=$i
+
+ install -Dm0644 $LIBNAM.so $PKG/usr/lib${LIBDIRSUFFIX}/libretro/$LIBNAM.so
+ install -Dm0644 $LIBNAM.info $PKG/usr/lib${LIBDIRSUFFIX}/libretro/info/$LIBNAM.info
+
+ make clean DEBUG=$DEBUG GIT_VERSION="${VERSION#*_}" EMUTYPE=$i
+done
+
+if [ $DEBUG = 0 ]; then
+ find $PKG -print0 | xargs -0 file | grep -e "executable" -e "shared object" | grep ELF \
+ | cut -f 1 -d : | xargs strip --strip-unneeded 2> /dev/null || true
+fi
+
+mkdir -p $PKG/usr/doc/$PRGNAM-$VERSION
+cp -a README.md $PKG/usr/doc/$PRGNAM-$VERSION
+cat $CWD/$PRGNAM.SlackBuild > $PKG/usr/doc/$PRGNAM-$VERSION/$PRGNAM.SlackBuild
+
+mkdir -p $PKG/install
+cat $CWD/slack-desc > $PKG/install/slack-desc
+
+cd $PKG
+/sbin/makepkg -l y -c n $OUTPUT/$PRGNAM-$VERSION-$ARCH-$BUILD$TAG.$PKGTYPE
diff --git a/games/vice-libretro/vice-libretro.info b/games/vice-libretro/vice-libretro.info
new file mode 100644
index 0000000000..8112a98386
--- /dev/null
+++ b/games/vice-libretro/vice-libretro.info
@@ -0,0 +1,10 @@
+PRGNAM="vice-libretro"
+VERSION="2022.06.22_c3becd1"
+HOMEPAGE="https://www.libretro.com/"
+DOWNLOAD="https://ilmich.github.io/src/vice-libretro-2022.06.22_c3becd1.tar.xz"
+MD5SUM="f8914f1f83501de47a26bf5fc2847d78"
+DOWNLOAD_x86_64=""
+MD5SUM_x86_64=""
+REQUIRES="RetroArch"
+MAINTAINER="ilmich"
+EMAIL="ardutu@gmail.com"
diff --git a/games/virtualjaguar-libretro/README b/games/virtualjaguar-libretro/README
deleted file mode 100644
index 9433c77c54..0000000000
--- a/games/virtualjaguar-libretro/README
+++ /dev/null
@@ -1,5 +0,0 @@
-Virtual Jaguar is a portable Jaguar emulator which is based on the source code
-of what used to be Potato Emulation.
-
-To build the debugging symbols use:
- DEBUG=1 ./virtualjaguar-libretro.SlackBuild
diff --git a/games/virtualjaguar-libretro/slack-desc b/games/virtualjaguar-libretro/slack-desc
deleted file mode 100644
index be7f892a65..0000000000
--- a/games/virtualjaguar-libretro/slack-desc
+++ /dev/null
@@ -1,19 +0,0 @@
-# HOW TO EDIT THIS FILE:
-# The "handy ruler" below makes it easier to edit a package description.
-# Line up the first '|' above the ':' following the base package name, and
-# the '|' on the right side marks the last column you can put a character in.
-# You must make exactly 11 lines for the formatting to be correct. It's also
-# customary to leave one space after the ':' except on otherwise blank lines.
-
- |-----handy-ruler------------------------------------------------------|
-virtualjaguar-libretro: virtualjaguar-libretro (libretro fork of Virtual Jaguar)
-virtualjaguar-libretro:
-virtualjaguar-libretro: Virtual Jaguar is an Atari Jaguar video game system emulator that can
-virtualjaguar-libretro: be used as a libretro core.
-virtualjaguar-libretro:
-virtualjaguar-libretro: Homepage: https://www.libretro.com/
-virtualjaguar-libretro:
-virtualjaguar-libretro:
-virtualjaguar-libretro:
-virtualjaguar-libretro:
-virtualjaguar-libretro:
diff --git a/games/virtualjaguar-libretro/virtualjaguar-libretro.SlackBuild b/games/virtualjaguar-libretro/virtualjaguar-libretro.SlackBuild
deleted file mode 100644
index d3a90f9080..0000000000
--- a/games/virtualjaguar-libretro/virtualjaguar-libretro.SlackBuild
+++ /dev/null
@@ -1,82 +0,0 @@
-#!/bin/sh
-
-# Slackware build script for virtualjaguar-libretro
-
-# Copyright 2016-2018 Hunter Sezen
-# All rights reserved.
-#
-# Redistribution and use of this script, with or without modification, is
-# permitted provided that the following conditions are met:
-#
-# 1. Redistributions of this script must retain the above copyright
-# notice, this list of conditions and the following disclaimer.
-#
-# THIS SOFTWARE IS PROVIDED BY THE AUTHOR "AS IS" AND ANY EXPRESS OR IMPLIED
-# WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE IMPLIED WARRANTIES OF
-# MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE ARE DISCLAIMED. IN NO
-# EVENT SHALL THE AUTHOR BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL,
-# SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT LIMITED TO,
-# PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, DATA, OR PROFITS;
-# OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY,
-# WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR
-# OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF THIS SOFTWARE, EVEN IF
-# ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
-
-PRGNAM=virtualjaguar-libretro
-LIBNAM=$(echo $PRGNAM | tr - _)
-VERSION=${VERSION:-2018.08.12_f3cf607}
-BUILD=${BUILD:-1}
-TAG=${TAG:-_SBo}
-
-if [ -z "$ARCH" ]; then
- case "$( uname -m )" in
- i?86) ARCH=i586 ;;
- arm*) ARCH=arm ;;
- *) ARCH=$( uname -m ) ;;
- esac
-fi
-
-CWD=$(pwd)
-TMP=${TMP:-/tmp/SBo}
-PKG=$TMP/package-$PRGNAM
-OUTPUT=${OUTPUT:-/tmp}
-
-LIBDIRSUFFIX=
-[ "$ARCH" = x86_64 ] && LIBDIRSUFFIX=64
-
-set -eu
-
-rm -rf $PKG
-mkdir -p $TMP $PKG $OUTPUT
-cd $TMP
-rm -rf $PRGNAM-$VERSION
-tar xvf $CWD/$PRGNAM-$VERSION.tar.xz
-cd $PRGNAM-$VERSION
-chown -R root:root .
-find -L . \
- \( -perm 777 -o -perm 775 -o -perm 750 -o -perm 711 -o -perm 555 \
- -o -perm 511 \) -exec chmod 755 {} \; -o \
- \( -perm 666 -o -perm 664 -o -perm 640 -o -perm 600 -o -perm 444 \
- -o -perm 440 -o -perm 400 \) -exec chmod 644 {} \;
-
-[ "${DEBUG:=0}" != 0 ] && DEBUG=1
-
-make DEBUG=$DEBUG
-
-install -Dm0644 $LIBNAM.so $PKG/usr/lib${LIBDIRSUFFIX}/libretro/$LIBNAM.so
-install -Dm0644 $LIBNAM.info $PKG/usr/lib${LIBDIRSUFFIX}/libretro/info/$LIBNAM.info
-
-if [ $DEBUG = 0 ]; then
- find $PKG -print0 | xargs -0 file | grep -e "executable" -e "shared object" | grep ELF \
- | cut -f 1 -d : | xargs strip --strip-unneeded 2> /dev/null || true
-fi
-
-mkdir -p $PKG/usr/doc/$PRGNAM-$VERSION
-cp -a docs/GPLv3 docs/README docs/TODO docs/WHATSNEW README.md $PKG/usr/doc/$PRGNAM-$VERSION
-cat $CWD/$PRGNAM.SlackBuild > $PKG/usr/doc/$PRGNAM-$VERSION/$PRGNAM.SlackBuild
-
-mkdir -p $PKG/install
-cat $CWD/slack-desc > $PKG/install/slack-desc
-
-cd $PKG
-/sbin/makepkg -l y -c n $OUTPUT/$PRGNAM-$VERSION-$ARCH-$BUILD$TAG.${PKGTYPE:-tgz}
diff --git a/games/virtualjaguar-libretro/virtualjaguar-libretro.info b/games/virtualjaguar-libretro/virtualjaguar-libretro.info
deleted file mode 100644
index 138e8b57ec..0000000000
--- a/games/virtualjaguar-libretro/virtualjaguar-libretro.info
+++ /dev/null
@@ -1,10 +0,0 @@
-PRGNAM="virtualjaguar-libretro"
-VERSION="2018.08.12_f3cf607"
-HOMEPAGE="https://www.libretro.com/"
-DOWNLOAD="http://slackless.raccoons.tech/src/libretro/virtualjaguar-libretro-2018.08.12_f3cf607.tar.xz"
-MD5SUM="5ef19efa102a4410d78da6accecacf21"
-DOWNLOAD_x86_64=""
-MD5SUM_x86_64=""
-REQUIRES="RetroArch"
-MAINTAINER="orphaned - no maintainer"
-EMAIL="nobody@nowhere.com"
diff --git a/games/vitaquake2-libretro/vitaquake2-libretro.SlackBuild b/games/vitaquake2-libretro/vitaquake2-libretro.SlackBuild
index 8c2cc1a6db..07d7a0b456 100644
--- a/games/vitaquake2-libretro/vitaquake2-libretro.SlackBuild
+++ b/games/vitaquake2-libretro/vitaquake2-libretro.SlackBuild
@@ -1,8 +1,8 @@
-#!/bin/sh
+#!/bin/bash
# Slackware build script for VitaQuake2-libretro
-# Copyright Vasily Sora USA 2019
+# Copyright Vasily Sora USA 2019
# All rights reserved.
#
# Redistribution and use of this script, with or without modification, is
@@ -22,11 +22,15 @@
# OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF THIS SOFTWARE, EVEN IF
# ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
+cd $(dirname $0) ; CWD=$(pwd)
+
PRGNAM=vitaquake2-libretro
-VERSION=${VERSION:-eaa758f}
+VERSION=${VERSION:-aed906ef}
+COMMITVER="aed906ef107eb684e18d8889c9bf383cc7b77b84"
LIBNAM=${LIBNAM:-vitaquake2_libretro}
BUILD=${BUILD:-1}
TAG=${TAG:-_SBo}
+PKGTYPE=${PKGTYPE:-tgz}
if [ -z "$ARCH" ]; then
case "$( uname -m )" in
@@ -36,7 +40,14 @@ case "$( uname -m )" in
esac
fi
-CWD=$(pwd)
+# If the variable PRINT_PACKAGE_NAME is set, then this script will report what
+# the name of the created package would be, and then exit. This information
+# could be useful to other scripts.
+if [ ! -z "${PRINT_PACKAGE_NAME}" ]; then
+ echo "$PRGNAM-$VERSION-$ARCH-$BUILD$TAG.$PKGTYPE"
+ exit 0
+fi
+
TMP=${TMP:-/tmp/SBo}
PKG=$TMP/package-$PRGNAM
OUTPUT=${OUTPUT:-/tmp}
@@ -60,9 +71,9 @@ set -e
rm -rf $PKG
mkdir -p $TMP $PKG $OUTPUT
cd $TMP
-rm -rf $PRGNAM-$VERSION
-tar xvf $CWD/$PRGNAM-$VERSION.tar.gz
-cd $PRGNAM-$VERSION
+rm -rf vitaquake2-$COMMITVER
+unzip $CWD/vitaquake2-$COMMITVER.zip
+cd vitaquake2-$COMMITVER
chown -R root:root .
find -L . \
\( -perm 777 -o -perm 775 -o -perm 750 -o -perm 711 -o -perm 555 \
@@ -90,4 +101,4 @@ mkdir -p $PKG/install
cat $CWD/slack-desc > $PKG/install/slack-desc
cd $PKG
-/sbin/makepkg -l y -c n $OUTPUT/$PRGNAM-$VERSION-$ARCH-$BUILD$TAG.${PKGTYPE:-tgz}
+/sbin/makepkg -l y -c n $OUTPUT/$PRGNAM-$VERSION-$ARCH-$BUILD$TAG.$PKGTYPE
diff --git a/games/vitaquake2-libretro/vitaquake2-libretro.info b/games/vitaquake2-libretro/vitaquake2-libretro.info
index 866b81ad6d..21f93e202d 100644
--- a/games/vitaquake2-libretro/vitaquake2-libretro.info
+++ b/games/vitaquake2-libretro/vitaquake2-libretro.info
@@ -1,8 +1,8 @@
PRGNAM="vitaquake2-libretro"
-VERSION="eaa758f"
+VERSION="aed906ef"
HOMEPAGE="https://github.com/libretro/vitaquake2"
-DOWNLOAD="http://repo.khronosschoty.org/Slackware/stuff/vitaquake2-libretro/vitaquake2-libretro-eaa758f.tar.gz"
-MD5SUM="68e6fef6ed112230d288dc0f3a81eb46"
+DOWNLOAD="https://github.com/libretro/vitaquake2/archive/aed906ef107eb684e18d8889c9bf383cc7b77b84/vitaquake2-aed906ef107eb684e18d8889c9bf383cc7b77b84.zip"
+MD5SUM="fc3d348436ce0adcd517c6f671e68fa5"
DOWNLOAD_x86_64=""
MD5SUM_x86_64=""
REQUIRES="RetroArch"
diff --git a/games/vitetris/vitetris.SlackBuild b/games/vitetris/vitetris.SlackBuild
index 7ebabc7c56..0090fac1ad 100644
--- a/games/vitetris/vitetris.SlackBuild
+++ b/games/vitetris/vitetris.SlackBuild
@@ -1,11 +1,14 @@
-#!/bin/sh
+#!/bin/bash
# Slackware build script for vitetris
# Written by Dan-Simon Myrland <dansimon@radiotube.org>
+cd $(dirname $0) ; CWD=$(pwd)
+
PRGNAM=vitetris
VERSION=${VERSION:-0.57}
BUILD=${BUILD:-1}
TAG=${TAG:-_SBo}
+PKGTYPE=${PKGTYPE:-tgz}
if [ -z "$ARCH" ]; then
case "$( uname -m )" in
@@ -15,7 +18,14 @@ if [ -z "$ARCH" ]; then
esac
fi
-CWD=$(pwd)
+# If the variable PRINT_PACKAGE_NAME is set, then this script will report what
+# the name of the created package would be, and then exit. This information
+# could be useful to other scripts.
+if [ ! -z "${PRINT_PACKAGE_NAME}" ]; then
+ echo "$PRGNAM-$VERSION-$ARCH-$BUILD$TAG.$PKGTYPE"
+ exit 0
+fi
+
TMP=${TMP:-/tmp/SBo}
PKG=$TMP/package-$PRGNAM
OUTPUT=${OUTPUT:-/tmp}
@@ -71,4 +81,4 @@ cat $CWD/slack-desc > $PKG/install/slack-desc
cat $CWD/doinst.sh > $PKG/install/doinst.sh
cd $PKG
-/sbin/makepkg -l y -c n $OUTPUT/$PRGNAM-$VERSION-$ARCH-$BUILD$TAG.${PKGTYPE:-tgz}
+/sbin/makepkg -l y -c n $OUTPUT/$PRGNAM-$VERSION-$ARCH-$BUILD$TAG.$PKGTYPE
diff --git a/games/vkBasalt/README b/games/vkBasalt/README
new file mode 100644
index 0000000000..cad10cf339
--- /dev/null
+++ b/games/vkBasalt/README
@@ -0,0 +1,53 @@
+vkBasalt is a Vulkan post processing layer to enhance the visual
+graphics of games.
+
+Currently, the build in effects are:
+
+• Contrast Adaptive Sharpening
+• Denoised Luma Sharpening
+• Fast Approximate Anti-Aliasing
+• Enhanced Subpixel Morphological Anti-Aliasing
+• 3D color LookUp Table
+
+It is also possible to use Reshade Fx shaders.
+
+USAGE:
+
+Enable the layer with the environment variable.
+Standard
+
+When using the terminal or an application (.desktop) file, execute:
+
+ENABLE_VKBASALT=1 yourgame
+
+Lutris
+
+With Lutris, follow these steps below:
+
+Right click on a game, and press configure.
+Go to the System options tab and scroll down to Environment variables.
+Press on Add, and add ENABLE_VKBASALT under Key, and add 1 under Value.
+
+Steam
+
+With Steam, edit your launch options and add:
+
+ENABLE_VKBASALT=1 %command%
+
+Configure
+
+Settings like the CAS sharpening strength can be changed in the
+config file. The config file will be searched for in the following
+locations:
+
+a file set with the environment
+variableVKBASALT_CONFIG_FILE=/path/to/vkBasalt.conf
+vkBasalt.conf in the working directory of the game
+$XDG_CONFIG_HOME/vkBasalt/vkBasalt.conf or
+~/.config/vkBasalt/vkBasalt.conf if XDG_CONFIG_HOME is not set
+$XDG_DATA_HOME/vkBasalt/vkBasalt.conf or
+~/.local/share/vkBasalt/vkBasalt.conf if XDG_DATA_HOME is not set
+/etc/vkBasalt.conf
+/etc/vkBasalt/vkBasalt.conf
+/usr/share/vkBasalt/vkBasalt.conf
+
diff --git a/games/vkBasalt/slack-desc b/games/vkBasalt/slack-desc
new file mode 100644
index 0000000000..0d9ed1f309
--- /dev/null
+++ b/games/vkBasalt/slack-desc
@@ -0,0 +1,19 @@
+# HOW TO EDIT THIS FILE:
+# The "handy ruler" below makes it easier to edit a package description.
+# Line up the first '|' above the ':' following the base package name, and
+# the '|' on the right side marks the last column you can put a character in.
+# You must make exactly 11 lines for the formatting to be correct. It's also
+# customary to leave one space after the ':' except on otherwise blank lines.
+
+ |-----handy-ruler------------------------------------------------------|
+vkBasalt: vkBasalt (Vulkan post processing layer)
+vkBasalt:
+vkBasalt: vkBasalt is a Vulkan post processing layer to enhance the visual
+vkBasalt: graphics of games.
+vkBasalt:
+vkBasalt:
+vkBasalt:
+vkBasalt:
+vkBasalt:
+vkBasalt: Homepage: https://github.com/DadSchoorse/vkBasalt
+vkBasalt:
diff --git a/games/vkBasalt/vkBasalt.SlackBuild b/games/vkBasalt/vkBasalt.SlackBuild
new file mode 100644
index 0000000000..54178599d6
--- /dev/null
+++ b/games/vkBasalt/vkBasalt.SlackBuild
@@ -0,0 +1,112 @@
+#!/bin/bash
+
+# Slackware build script for vkBasalt
+
+# Copyright 2023 Damian Perticone, Berisso,Argentina
+# All rights reserved.
+#
+# Redistribution and use of this script, with or without modification, is
+# permitted provided that the following conditions are met:
+#
+# 1. Redistributions of this script must retain the above copyright
+# notice, this list of conditions and the following disclaimer.
+#
+# THIS SOFTWARE IS PROVIDED BY THE AUTHOR "AS IS" AND ANY EXPRESS OR IMPLIED
+# WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE IMPLIED WARRANTIES OF
+# MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE ARE DISCLAIMED. IN NO
+# EVENT SHALL THE AUTHOR BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL,
+# SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT LIMITED TO,
+# PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, DATA, OR PROFITS;
+# OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY,
+# WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR
+# OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF THIS SOFTWARE, EVEN IF
+# ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
+
+cd $(dirname $0) ; CWD=$(pwd)
+
+PRGNAM=vkBasalt
+VERSION=${VERSION:-0.3.2.10}
+BUILD=${BUILD:-1}
+TAG=${TAG:-_SBo}
+PKGTYPE=${PKGTYPE:-tgz}
+
+if [ -z "$ARCH" ]; then
+ case "$( uname -m )" in
+ i?86) ARCH=i586 ;;
+ arm*) ARCH=arm ;;
+
+ *) ARCH=$( uname -m ) ;;
+ esac
+fi
+
+if [ ! -z "${PRINT_PACKAGE_NAME}" ]; then
+ echo "$PRGNAM-$VERSION-$ARCH-$BUILD$TAG.$PKGTYPE"
+ exit 0
+fi
+
+TMP=${TMP:-/tmp/SBo}
+PKG=$TMP/package-$PRGNAM
+OUTPUT=${OUTPUT:-/tmp}
+
+if [ "$ARCH" = "i586" ]; then
+ SLKCFLAGS="-O2 -march=i586 -mtune=i686"
+ LIBDIRSUFFIX=""
+elif [ "$ARCH" = "i686" ]; then
+ SLKCFLAGS="-O2 -march=i686 -mtune=i686"
+ LIBDIRSUFFIX=""
+elif [ "$ARCH" = "x86_64" ]; then
+ SLKCFLAGS="-O2 -fPIC"
+ LIBDIRSUFFIX="64"
+else
+ SLKCFLAGS="-O2"
+ LIBDIRSUFFIX=""
+fi
+
+set -e
+
+rm -rf $PKG
+mkdir -p $TMP $PKG $OUTPUT
+cd $TMP
+rm -rf $PRGNAM-$VERSION
+tar xvf $CWD/$PRGNAM-$VERSION.tar.gz
+cd $PRGNAM-$VERSION
+chown -R root:root .
+find -L . \
+ \( -perm 777 -o -perm 775 -o -perm 750 -o -perm 711 -o -perm 555 \
+ -o -perm 511 \) -exec chmod 755 {} \; -o \
+ \( -perm 666 -o -perm 664 -o -perm 640 -o -perm 600 -o -perm 444 \
+ -o -perm 440 -o -perm 400 \) -exec chmod 644 {} \;
+
+mkdir build
+cd build
+ CFLAGS="$SLKCFLAGS" \
+ CXXFLAGS="$SLKCFLAGS" \
+ meson .. \
+ --buildtype=release \
+ --infodir=/usr/info \
+ --libdir=/usr/lib${LIBDIRSUFFIX} \
+ --localstatedir=/var \
+ --mandir=/usr/man \
+ --prefix=/usr \
+ --sysconfdir=/etc \
+ -Dstrip=true \
+ -Dwith_so=true \
+ -Dwith_json=true \
+ -Dappend_libdir_vkbasalt=false \
+
+ "${NINJA:=ninja}"
+ DESTDIR=$PKG $NINJA install
+cd ..
+
+find $PKG -print0 | xargs -0 file | grep -e "executable" -e "shared object" | grep ELF \
+ | cut -f 1 -d : | xargs strip --strip-unneeded 2> /dev/null || true
+
+mkdir -p $PKG/usr/doc/$PRGNAM-$VERSION
+cp -a LICENSE README.md $PKG/usr/doc/$PRGNAM-$VERSION
+cat $CWD/$PRGNAM.SlackBuild > $PKG/usr/doc/$PRGNAM-$VERSION/$PRGNAM.SlackBuild
+
+mkdir -p $PKG/install
+cat $CWD/slack-desc > $PKG/install/slack-desc
+
+cd $PKG
+/sbin/makepkg -l y -c n $OUTPUT/$PRGNAM-$VERSION-$ARCH-$BUILD$TAG.$PKGTYPE
diff --git a/games/vkBasalt/vkBasalt.info b/games/vkBasalt/vkBasalt.info
new file mode 100644
index 0000000000..5609198f85
--- /dev/null
+++ b/games/vkBasalt/vkBasalt.info
@@ -0,0 +1,10 @@
+PRGNAM="vkBasalt"
+VERSION="0.3.2.10"
+HOMEPAGE="https://github.com/DadSchoorse/vkBasalt"
+DOWNLOAD="https://github.com/DadSchoorse/vkBasalt/releases/download/v0.3.2.10/vkBasalt-0.3.2.10.tar.gz"
+MD5SUM="807b2176b75e94d7f93cbeb1ceb37729"
+DOWNLOAD_x86_64=""
+MD5SUM_x86_64=""
+REQUIRES=""
+MAINTAINER="Damian Perticone"
+EMAIL="mjolnirdam@gmail.com"
diff --git a/games/vkQuake/README b/games/vkQuake/README
index e9816fbb09..698f735f05 100644
--- a/games/vkQuake/README
+++ b/games/vkQuake/README
@@ -8,7 +8,7 @@ anti-aliasing and AF.
Your video card must support the vulkan graphics API for this
port to work. You can check video card compatibility here
-https://en.wikipedia.org/wiki/Vulkan_(API)#Compatibility
+https://en.wikipedia.org/wiki/Vulkan_(API)#Hardware
vkQuake is only a game engine modification; you still need the
original quake *.pak game files to play vkQuake.
diff --git a/games/vkQuake/vkQuake.SlackBuild b/games/vkQuake/vkQuake.SlackBuild
index 8c9b0f1dad..b083a5a943 100644
--- a/games/vkQuake/vkQuake.SlackBuild
+++ b/games/vkQuake/vkQuake.SlackBuild
@@ -1,4 +1,4 @@
-#!/bin/sh
+#!/bin/bash
# Slackware build script for vkQuake
@@ -22,10 +22,13 @@
# OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF THIS SOFTWARE, EVEN IF
# ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
+cd $(dirname $0) ; CWD=$(pwd)
+
PRGNAM=vkQuake
-VERSION=${VERSION:-1.04.1}
+VERSION=${VERSION:-1.30.1}
BUILD=${BUILD:-1}
TAG=${TAG:-_SBo}
+PKGTYPE=${PKGTYPE:-tgz}
if [ -z "$ARCH" ]; then
case "$( uname -m )" in
@@ -35,7 +38,14 @@ if [ -z "$ARCH" ]; then
esac
fi
-CWD=$(pwd)
+# If the variable PRINT_PACKAGE_NAME is set, then this script will report what
+# the name of the created package would be, and then exit. This information
+# could be useful to other scripts.
+if [ ! -z "${PRINT_PACKAGE_NAME}" ]; then
+ echo "$PRGNAM-$VERSION-$ARCH-$BUILD$TAG.$PKGTYPE"
+ exit 0
+fi
+
TMP=${TMP:-/tmp/SBo}
PKG=$TMP/package-$PRGNAM
OUTPUT=${OUTPUT:-/tmp}
@@ -68,8 +78,8 @@ make -C Quake clean
CFLAGS="$SLKCFLAGS" \
make -C Quake \
- USE_CODEC_FLAC=1
-
+ USE_CODEC_FLAC=1 \
+ USE_CODEC_OPUS=1
make -C Misc/vq_pak
# Create directories and install binary
@@ -78,9 +88,6 @@ mkdir -p $PKG/usr/share/games/vkQuake/id1
install -Dm755 Quake/vkquake $PKG/usr/share/games/vkQuake
install -Dm755 $CWD/vkquake $PKG/usr/games
-# Copy pak file
-install -Dm644 Misc/vq_pak/vkquake.pak $PKG/usr/share/games/vkQuake/id1
-
# Install icon and application
mkdir -p $PKG/usr/share/{pixmaps,applications}
cp Misc/vkQuake_512.png $PKG/usr/share/pixmaps
@@ -98,4 +105,4 @@ cat $CWD/slack-desc > $PKG/install/slack-desc
cat $CWD/doinst.sh > $PKG/install/doinst.sh
cd $PKG
-/sbin/makepkg -l y -c n $OUTPUT/$PRGNAM-$VERSION-$ARCH-$BUILD$TAG.${PKGTYPE:-tgz}
+/sbin/makepkg -l y -c n $OUTPUT/$PRGNAM-$VERSION-$ARCH-$BUILD$TAG.$PKGTYPE
diff --git a/games/vkQuake/vkQuake.info b/games/vkQuake/vkQuake.info
index 32f5fafecd..c434fe3f89 100644
--- a/games/vkQuake/vkQuake.info
+++ b/games/vkQuake/vkQuake.info
@@ -1,10 +1,10 @@
PRGNAM="vkQuake"
-VERSION="1.04.1"
+VERSION="1.30.1"
HOMEPAGE="https://github.com/Novum/vkQuake"
DOWNLOAD="UNSUPPORTED"
MD5SUM=""
-DOWNLOAD_x86_64="https://github.com/Novum/vkQuake/archive/1.04.1/vkQuake-1.04.1.tar.gz"
-MD5SUM_x86_64="0e7aadbfa99a9890a498a5072167c910"
-REQUIRES="SDL2 vulkan-sdk-bin"
+DOWNLOAD_x86_64="https://github.com/Novum/vkQuake/archive/1.30.1/vkQuake-1.30.1.tar.gz"
+MD5SUM_x86_64="1b7a8536161f1b342850eebcef551eb6"
+REQUIRES="zopfli"
MAINTAINER="M.Dinslage"
-EMAIL="daedra1980@gmail.com"
+EMAIL="matthewdinslage@gmail.com"
diff --git a/games/vms-empire/vms-empire.SlackBuild b/games/vms-empire/vms-empire.SlackBuild
index 6b0d1757a4..643d4e9401 100644
--- a/games/vms-empire/vms-empire.SlackBuild
+++ b/games/vms-empire/vms-empire.SlackBuild
@@ -1,4 +1,4 @@
-#!/bin/sh
+#!/bin/bash
# Slackware build script for vms-empire
@@ -22,10 +22,19 @@
# OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF THIS SOFTWARE, EVEN IF
# ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
+# 20220221 bkw: Modified by SlackBuilds.org, BUILD=2:
+# - fix build on 15.0.
+# - binary in /usr/games.
+# - symlink so man page name matches binary name.
+# - fix .desktop file (abs paths).
+
+cd $(dirname $0) ; CWD=$(pwd)
+
PRGNAM=vms-empire
VERSION=${VERSION:-1.14}
-BUILD=${BUILD:-1}
+BUILD=${BUILD:-2}
TAG=${TAG:-_SBo}
+PKGTYPE=${PKGTYPE:-tgz}
if [ -z "$ARCH" ]; then
case "$( uname -m )" in
@@ -35,7 +44,11 @@ if [ -z "$ARCH" ]; then
esac
fi
-CWD=$(pwd)
+if [ ! -z "${PRINT_PACKAGE_NAME}" ]; then
+ echo "$PRGNAM-$VERSION-$ARCH-$BUILD$TAG.$PKGTYPE"
+ exit 0
+fi
+
TMP=${TMP:-/tmp/SBo}
PKG=$TMP/package-$PRGNAM
OUTPUT=${OUTPUT:-/tmp}
@@ -65,27 +78,27 @@ cd $PRGNAM-$VERSION
chown -R root:root .
find -L . \
\( -perm 777 -o -perm 775 -o -perm 750 -o -perm 711 -o -perm 555 \
- -o -perm 511 \) -exec chmod 755 {} \; -o \
+ -o -perm 511 \) -exec chmod 755 {} \+ -o \
\( -perm 666 -o -perm 664 -o -perm 640 -o -perm 600 -o -perm 444 \
- -o -perm 440 -o -perm 400 \) -exec chmod 644 {} \;
-
-make
+ -o -perm 440 -o -perm 400 \) -exec chmod 644 {} \+
-find $PKG -print0 | xargs -0 file | grep -e "executable" -e "shared object" | grep ELF \
- | cut -f 1 -d : | xargs strip --strip-unneeded 2> /dev/null || true
+make DEBUG="$SLKCFLAGS -fcommon"
-mkdir -p $PKG/usr/bin
-install -D -m0755 $PRGNAM $PKG/usr/bin/$PRGNAM
+mkdir -p $PKG/usr/games
+install -s -m0755 $PRGNAM $PKG/usr/games/$PRGNAM
mkdir -p $PKG/usr/share/applications
-install -D -m644 $PRGNAM.desktop $PKG/usr/share/applications/$PRGNAM.desktop
+sed -e '/^Icon/s,=.*,=/usr/share/pixmaps/vms-empire.png,' \
+ -e '/^Exec/s,=,=/usr/games/,' \
+ < $PRGNAM.desktop \
+ > $PKG/usr/share/applications/$PRGNAM.desktop
mkdir -p $PKG/usr/share/pixmaps/
-install -D -m644 $PRGNAM.png $PKG/usr/share/pixmaps/$PRGNAM.png
+install -m644 $PRGNAM.png $PKG/usr/share/pixmaps/$PRGNAM.png
mkdir -p $PKG/usr/man/man6
-gzip -9 empire.6
-install -D -m0644 empire.6.gz $PKG/usr/man/man6/empire.6.gz
+gzip -9c < empire.6 > $PKG/usr/man/man6/empire.6.gz
+ln -s empire.6.gz $PKG/usr/man/man6/$PRGNAM.6.gz
mkdir -p $PKG/usr/doc/$PRGNAM-$VERSION
cp -a AUTHORS BUGS COPYING HACKING NEWS README $PKG/usr/doc/$PRGNAM-$VERSION
@@ -96,4 +109,4 @@ cat $CWD/slack-desc > $PKG/install/slack-desc
cat $CWD/doinst.sh > $PKG/install/doinst.sh
cd $PKG
-/sbin/makepkg -l y -c n $OUTPUT/$PRGNAM-$VERSION-$ARCH-$BUILD$TAG.${PKGTYPE:-tgz}
+/sbin/makepkg -l y -c n $OUTPUT/$PRGNAM-$VERSION-$ARCH-$BUILD$TAG.$PKGTYPE
diff --git a/games/voxelands/README b/games/voxelands/README
index ad5227cc0c..36a89e27ca 100644
--- a/games/voxelands/README
+++ b/games/voxelands/README
@@ -1,6 +1,7 @@
Voxelands is an infinite-world block sandbox game and a game engine,
forked from minetest, inspired by InfiniMiner, Minecraft and the like.
-It is Free and Open Source Software, released under the GPL 3 or later.
-available for Windows, Mac OS X and Linux. Voxelands differs from minetest
-in that it does not have advanced support for mods, but instead aims to offer
-a more immediately playable, efficient and balanced game.
+It is Free and Open Source Software, released under the GPL 3 or
+later, available for Windows, Mac OS X and Linux. Voxelands differs
+from minetest in that it does not have advanced support for mods,
+but instead aims to offer a more immediately playable, efficient and
+balanced game.
diff --git a/games/voxelands/voxelands.SlackBuild b/games/voxelands/voxelands.SlackBuild
index a516bb116e..997e071086 100644
--- a/games/voxelands/voxelands.SlackBuild
+++ b/games/voxelands/voxelands.SlackBuild
@@ -1,4 +1,4 @@
-#!/bin/sh
+#!/bin/bash
# Slackware build script for voxelands
@@ -23,26 +23,36 @@
# OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF THIS SOFTWARE, EVEN IF
# ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
+cd $(dirname $0) ; CWD=$(pwd)
+
PRGNAM=voxelands
-VERSION=${VERSION:-1501.00}
+VERSION=${VERSION:-1709.00}
BUILD=${BUILD:-1}
TAG=${TAG:-_SBo}
+PKGTYPE=${PKGTYPE:-tgz}
if [ -z "$ARCH" ]; then
case "$( uname -m )" in
- i?86) ARCH=i486 ;;
+ i?86) ARCH=i586 ;;
arm*) ARCH=arm ;;
*) ARCH=$( uname -m ) ;;
esac
fi
-CWD=$(pwd)
+# If the variable PRINT_PACKAGE_NAME is set, then this script will report what
+# the name of the created package would be, and then exit. This information
+# could be useful to other scripts.
+if [ ! -z "${PRINT_PACKAGE_NAME}" ]; then
+ echo "$PRGNAM-$VERSION-$ARCH-$BUILD$TAG.$PKGTYPE"
+ exit 0
+fi
+
TMP=${TMP:-/tmp/SBo}
PKG=$TMP/package-$PRGNAM
OUTPUT=${OUTPUT:-/tmp}
-if [ "$ARCH" = "i486" ]; then
- SLKCFLAGS="-O2 -march=i486 -mtune=i686"
+if [ "$ARCH" = "i586" ]; then
+ SLKCFLAGS="-O2 -march=i586 -mtune=i686"
LIBDIRSUFFIX=""
elif [ "$ARCH" = "i686" ]; then
SLKCFLAGS="-O2 -march=i686 -mtune=i686"
@@ -61,8 +71,8 @@ rm -rf $PKG
mkdir -p $TMP $PKG $OUTPUT
cd $TMP
rm -rf $PRGNAM
-tar xf $CWD/$PRGNAM-$VERSION-src.tar.bz2
-cd $PRGNAM
+tar xf $CWD/$PRGNAM-v$VERSION.tar.bz2
+cd $PRGNAM-v$VERSION
chown -R root:root .
find -L . \
\( -perm 777 -o -perm 775 -o -perm 750 -o -perm 711 -o -perm 555 \
@@ -95,4 +105,4 @@ cat $CWD/slack-desc > $PKG/install/slack-desc
cat $CWD/doinst.sh > $PKG/install/doinst.sh
cd $PKG
-/sbin/makepkg -l y -c n $OUTPUT/$PRGNAM-$VERSION-$ARCH-$BUILD$TAG.${PKGTYPE:-tgz}
+/sbin/makepkg -l y -c n $OUTPUT/$PRGNAM-$VERSION-$ARCH-$BUILD$TAG.$PKGTYPE
diff --git a/games/voxelands/voxelands.info b/games/voxelands/voxelands.info
index 12e63d3948..8200d5bbbf 100644
--- a/games/voxelands/voxelands.info
+++ b/games/voxelands/voxelands.info
@@ -1,10 +1,10 @@
PRGNAM="voxelands"
-VERSION="1501.00"
-HOMEPAGE="http://voxelands.com/"
-DOWNLOAD="http://www.voxelands.com/downloads/old/voxelands-1501.00-src.tar.bz2"
-MD5SUM="1051e84074882766e49928ec7bf31571"
+VERSION="1709.00"
+HOMEPAGE="https://gitlab.com/voxelands/voxelands"
+DOWNLOAD="https://gitlab.com/voxelands/voxelands/-/archive/v1709.00/voxelands-v1709.00.tar.bz2"
+MD5SUM="9a6682014f66b5f833c87c32e5354811"
DOWNLOAD_x86_64=""
MD5SUM_x86_64=""
-REQUIRES="OpenAL irrlicht"
+REQUIRES="irrlicht"
MAINTAINER="Andrew Conway"
EMAIL="mcnalu@mcnalu.net"
diff --git a/games/wadext/README b/games/wadext/README
new file mode 100644
index 0000000000..b7d08a9a6a
--- /dev/null
+++ b/games/wadext/README
@@ -0,0 +1,6 @@
+Wadext is a simple wad extraction command line tool for doom
+id Tech 1 mods.
+
+It extracts the contents of a WAD to a (mostly) pk3-compatible folder
+structure. Useful for converting old mods or setting up advanced
+development workflows.
diff --git a/games/wadext/slack-desc b/games/wadext/slack-desc
new file mode 100644
index 0000000000..a7d1601014
--- /dev/null
+++ b/games/wadext/slack-desc
@@ -0,0 +1,19 @@
+# HOW TO EDIT THIS FILE:
+# The "handy ruler" below makes it easier to edit a package description.
+# Line up the first '|' above the ':' following the base package name, and
+# the '|' on the right side marks the last column you can put a character in.
+# You must make exactly 11 lines for the formatting to be correct. It's also
+# customary to leave one space after the ':' except on otherwise blank lines.
+
+ |-----handy-ruler------------------------------------------------------|
+wadext: wadext (A simple WAD extraction cli tool)
+wadext:
+wadext: A simple WAD extraction command line tool
+wadext: for Doom engine id Tech 1 mods.
+wadext:
+wadext:
+wadext:
+wadext:
+wadext:
+wadext:
+wadext:
diff --git a/games/wadext/wadext.SlackBuild b/games/wadext/wadext.SlackBuild
new file mode 100644
index 0000000000..c09750ae19
--- /dev/null
+++ b/games/wadext/wadext.SlackBuild
@@ -0,0 +1,111 @@
+#!/bin/bash
+
+# Slackware build script for wadext
+
+# Copyright 2023 hexxend
+# All rights reserved.
+#
+# Redistribution and use of this script, with or without modification, is
+# permitted provided that the following conditions are met:
+#
+# 1. Redistributions of this script must retain the above copyright
+# notice, this list of conditions and the following disclaimer.
+#
+# THIS SOFTWARE IS PROVIDED BY THE AUTHOR "AS IS" AND ANY EXPRESS OR IMPLIED
+# WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE IMPLIED WARRANTIES OF
+# MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE ARE DISCLAIMED. IN NO
+# EVENT SHALL THE AUTHOR BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL,
+# SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT LIMITED TO,
+# PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, DATA, OR PROFITS;
+# OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY,
+# WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR
+# OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF THIS SOFTWARE, EVEN IF
+# ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
+#
+
+cd $(dirname $0) ; CWD=$(pwd)
+
+PRGNAM=wadext
+VERSION=${VERSION:-2.1}
+BUILD=${BUILD:-1}
+TAG=${TAG:-_SBo}
+PKGTYPE=${PKGTYPE:-tgz}
+
+if [ -z "$ARCH" ]; then
+ case "$( uname -m )" in
+ i?86) ARCH=i586 ;;
+ arm*) ARCH=arm ;;
+ *) ARCH=$( uname -m ) ;;
+ esac
+fi
+
+if [ ! -z "${PRINT_PACKAGE_NAME}" ]; then
+ echo "$PRGNAM-$VERSION-$ARCH-$BUILD$TAG.$PKGTYPE"
+ exit 0
+fi
+
+TMP=${TMP:-/tmp/SBo}
+PKG=$TMP/package-$PRGNAM
+OUTPUT=${OUTPUT:-/tmp}
+
+if [ "$ARCH" = "i586" ]; then
+ SLKCFLAGS="-O2 -march=i586 -mtune=i686"
+ LIBDIRSUFFIX=""
+elif [ "$ARCH" = "i686" ]; then
+ SLKCFLAGS="-O2 -march=i686 -mtune=i686"
+ LIBDIRSUFFIX=""
+elif [ "$ARCH" = "x86_64" ]; then
+ SLKCFLAGS="-O2 -fPIC"
+ LIBDIRSUFFIX="64"
+elif [ "$ARCH" = "aarch64" ]; then
+ SLKCFLAGS="-O2 -fPIC"
+ LIBDIRSUFFIX="64"
+else
+ SLKCFLAGS="-O2"
+ LIBDIRSUFFIX=""
+fi
+
+set -e
+
+rm -rf $PKG
+mkdir -p $TMP $PKG $OUTPUT
+cd $TMP
+rm -rf $PRGNAM-$VERSION
+tar xvf $CWD/$PRGNAM-$VERSION.tar.gz
+cd $PRGNAM-$VERSION
+chown -R root:root .
+find -L . \
+ \( -perm 777 -o -perm 775 -o -perm 750 -o -perm 711 -o -perm 555 \
+ -o -perm 511 \) -exec chmod 755 {} \; -o \
+ \( -perm 666 -o -perm 664 -o -perm 640 -o -perm 600 -o -perm 444 \
+ -o -perm 440 -o -perm 400 \) -exec chmod 644 {} \;
+
+mkdir -p build
+cd build
+ cmake \
+ -DCMAKE_C_FLAGS:STRING="$SLKCFLAGS" \
+ -DCMAKE_CXX_FLAGS:STRING="$SLKCFLAGS" \
+ -DCMAKE_INSTALL_PREFIX=/usr \
+ -DLIB_SUFFIX=${LIBDIRSUFFIX} \
+ -DCMAKE_BUILD_TYPE=Release ..
+ cmake --build .
+cd ..
+
+mkdir -pv $PKG/usr/bin
+cp -v $TMP/$PRGNAM-$VERSION/build/$PRGNAM $PKG/usr/bin/$PRGNAM
+
+
+rm -f $PKG/{,usr/}lib${LIBDIRSUFFIX}/*.la
+
+find $PKG -print0 | xargs -0 file | grep -e "executable" -e "shared object" | grep ELF \
+ | cut -f 1 -d : | xargs strip --strip-unneeded 2> /dev/null || true
+
+mkdir -p $PKG/usr/doc/$PRGNAM-$VERSION
+cp $CWD/README $PKG/usr/doc/$PRGNAM-$VERSION
+cat $CWD/$PRGNAM.SlackBuild > $PKG/usr/doc/$PRGNAM-$VERSION/$PRGNAM.SlackBuild
+
+mkdir -p $PKG/install
+cat $CWD/slack-desc > $PKG/install/slack-desc
+
+cd $PKG
+/sbin/makepkg -l y -c n $OUTPUT/$PRGNAM-$VERSION-$ARCH-$BUILD$TAG.$PKGTYPE
diff --git a/games/wadext/wadext.info b/games/wadext/wadext.info
new file mode 100644
index 0000000000..b52044bdd3
--- /dev/null
+++ b/games/wadext/wadext.info
@@ -0,0 +1,10 @@
+PRGNAM="wadext"
+VERSION="2.1"
+HOMEPAGE="https://zdoom.org"
+DOWNLOAD="https://github.com/zdoom/wadext/archive/2.1/wadext-2.1.tar.gz"
+MD5SUM="4e4d43f50c6d5149a865c7be8fe797ee"
+DOWNLOAD_x86_64=""
+MD5SUM_x86_64=""
+REQUIRES=""
+MAINTAINER="hexxend"
+EMAIL="hexxend@protonmail.com"
diff --git a/games/wargus/README b/games/wargus/README
index e2da4ac6fd..5502062db7 100644
--- a/games/wargus/README
+++ b/games/wargus/README
@@ -2,7 +2,13 @@ wargus (Warcraft II data game set for the Stratagus engine)
Wargus can be used to play Warcraft II from Blizzard Entertainment.
-You need the original Warcraft II for DOS or the Beyond the Dark Portal
-expansion pack to extract the game data files. See the file README_SBo.txt
-for full instructions. If you don't read the instructions, you won't
-get a playable game.
+You need the original Warcraft II for DOS or the Beyond the Dark
+Portal expansion pack to extract the game data files. See the
+file README_SBo.txt for full instructions. If you don't read the
+instructions, you won't get a playable game.
+
+Note: I am aware that this is not the latest version of wargus.
+However, it's the latest version I was able to actually play Warcraft
+II with, using either the MS-DOS original or expansion CDs. Later
+versions complain that the game data is missing/corrupt, right after
+extraction. At some point I will try to find out what the issue is.
diff --git a/games/wargus/README_SBo.txt b/games/wargus/README_SBo.txt
index 98667a3ab7..0ff13fb841 100644
--- a/games/wargus/README_SBo.txt
+++ b/games/wargus/README_SBo.txt
@@ -36,14 +36,6 @@ http://www.linuxquestions.org/questions/slackware-14/bug-in-makepkg-and-symlinks
The general consensus seems to be, changing makepkg isn't going to happen.
-SlackBuilds.org Note
---------------------
-
-In the .info file, stratagus, ffmpeg2theora, fluidsynth, and
-fluid-soundfont are listed as requirements. ffmpeg2theora is only required
-at build time; the others required at runtime (matters if you're deploying
-on a host other than the build host).
-
Game Data
---------
@@ -72,6 +64,9 @@ export GAMEDATA=/tmp/warcraft2.iso # image of CD
...then run ./wargus.SlackBuild
+Note: For game data extraction to work from a 7zip or rar archive,
+you'll need p7zip or unrar.
+
If GAMEDATA isn't set, or if the extraction process fails, your wargus
package won't include the game data. You'll be unable to play the game
until you've extracted the data yourself.
@@ -85,15 +80,9 @@ If you build a package without the data:
The extraction script used by the SlackBuild is installed as
/usr/bin/extract-warcraft2 (run with no arguments for usage) and can
be run any time without reinstalling the wargus package. If you do
-this, and later decide to remove wargus, you'll have to manually rm -rf
-/usr/share/games/stratagus/wargus after package removal.
-
-For game data extraction to work, you will need:
-
-- ffmpeg2theora
-
-- if you're extracting from a 7zip or rar archive, you'll need p7zip
- or unrar.
+this, and later decide to remove wargus, you'll have to manually rm
+-rf /usr/share/games/stratagus/wargus after package removal... or you
+can extract the game data to ~/.stratagus/data.Wargus/ instead.
Extraction takes a while, depending on your CPU speed. It renders all the
game's MIDI music as wav files, transcodes those to .ogg, then transcodes
@@ -101,4 +90,3 @@ all the game's videos to ogg theora.
extract-warcraft2 is a wrapper for wartool, supplied with wargus. See
the wartool man page for more information.
-
diff --git a/games/wargus/doinst.sh b/games/wargus/doinst.sh
index 5fb28930db..3e5691a052 100644
--- a/games/wargus/doinst.sh
+++ b/games/wargus/doinst.sh
@@ -1,3 +1,9 @@
if [ -x /usr/bin/update-desktop-database ]; then
/usr/bin/update-desktop-database -q usr/share/applications >/dev/null 2>&1
fi
+
+if [ -e usr/share/icons/hicolor/icon-theme.cache ]; then
+ if [ -x /usr/bin/gtk-update-icon-cache ]; then
+ /usr/bin/gtk-update-icon-cache usr/share/icons/hicolor >/dev/null 2>&1
+ fi
+fi
diff --git a/games/wargus/wargus.SlackBuild b/games/wargus/wargus.SlackBuild
index aa2cfa94bf..7d00b7dfac 100644
--- a/games/wargus/wargus.SlackBuild
+++ b/games/wargus/wargus.SlackBuild
@@ -1,17 +1,25 @@
-#!/bin/sh
+#!/bin/bash
# Slackware build script for wargus
-# Written by B. Watson (yalhcru@gmail.com)
+# Written by B. Watson (urchlay@slackware.uk)
# Licensed under the WTFPL. See http://www.wtfpl.net/txt/copying/ for details.
+# 20211119 bkw: BUILD=2
+# - fix -current build.
+# - remove ffmpeg2theora dep.
+# - new-style icons.
+# - add README note about why this is stuck at an old version.
# 20180915 bkw: updated for v2.4.1
+cd $(dirname $0) ; CWD=$(pwd)
+
PRGNAM=wargus
VERSION=${VERSION:-2.4.1}
-BUILD=${BUILD:-1}
+BUILD=${BUILD:-2}
TAG=${TAG:-_SBo}
+PKGTYPE=${PKGTYPE:-tgz}
if [ -z "$ARCH" ]; then
case "$( uname -m )" in
@@ -21,7 +29,11 @@ if [ -z "$ARCH" ]; then
esac
fi
-CWD=$(pwd)
+if [ ! -z "${PRINT_PACKAGE_NAME}" ]; then
+ echo "$PRGNAM-$VERSION-$ARCH-$BUILD$TAG.$PKGTYPE"
+ exit 0
+fi
+
TMP=${TMP:-/tmp/SBo}
PKG=$TMP/package-$PRGNAM
OUTPUT=${OUTPUT:-/tmp}
@@ -52,12 +64,16 @@ chown -R root:root .
find -L . -perm /111 -a \! -perm 755 -a -exec chmod 755 {} \+ -o \
\! -perm /111 -a \! -perm 644 -a -exec chmod 644 {} \+
+# 20211119 bkw: get rid of ffmpeg2theora dep, just call ffmpeg directly.
+patch -p1 < $CWD/wartool.ffmpeg.diff
+
# 20150511 bkw: upstream hardcodes a particular soundfont but
# doesn't ship it. We'll use the one from fluid-soundfont.
sed -i \
's,music/TimGM6mb.sf2,/usr/share/sounds/sf2/FluidR3_GM.sf2,' \
scripts/stratagus.lua
+SLKCFLAGS+=" -I/usr/include/harfbuzz"
mkdir -p build
cd build
cmake \
@@ -74,6 +90,16 @@ for i in doc/*.6; do
gzip -9c < $i > $PKG/usr/man/man6/$( basename $i ).gz
done
+for px in 16 32 48 64; do
+ size=${px}x${px}
+ dir=$PKG/usr/share/icons/hicolor/$size/apps
+ mkdir -p $dir
+ convert -resize $size $PRGNAM.png $dir/$PRGNAM.png
+done
+
+rm $PKG/usr/share/pixmaps/*
+ln -s ../icons/hicolor/48x48/apps/$PRGNAM.png $PKG/usr/share/pixmaps/$PRGNAM.png
+
# attempt to extract the game data files
CONTAINS="does not contain"
REDIST="This binary package may be redistributed."
@@ -102,4 +128,4 @@ sed -e "s,@CONTAINS@,$CONTAINS," -e "s,@REDIST@,$REDIST," $CWD/slack-desc \
cat $CWD/doinst.sh > $PKG/install/doinst.sh
cd $PKG
-/sbin/makepkg -l y -c n $OUTPUT/$PRGNAM-$VERSION-$ARCH-$BUILD$TAG.${PKGTYPE:-tgz}
+/sbin/makepkg -l y -c n $OUTPUT/$PRGNAM-$VERSION-$ARCH-$BUILD$TAG.$PKGTYPE
diff --git a/games/wargus/wargus.info b/games/wargus/wargus.info
index 5095a401e7..5c7a6ea45e 100644
--- a/games/wargus/wargus.info
+++ b/games/wargus/wargus.info
@@ -5,6 +5,6 @@ DOWNLOAD="https://github.com/Wargus/wargus/archive/v2.4.1/wargus-2.4.1.tar.gz"
MD5SUM="4a387868da26df4a4aebff19b6b7b6b1"
DOWNLOAD_x86_64=""
MD5SUM_x86_64=""
-REQUIRES="stratagus ffmpeg2theora fluidsynth fluid-soundfont"
+REQUIRES="stratagus fluid-soundfont"
MAINTAINER="B. Watson"
-EMAIL="yalhcru@gmail.com"
+EMAIL="urchlay@slackware.uk"
diff --git a/games/wargus/wartool.ffmpeg.diff b/games/wargus/wartool.ffmpeg.diff
new file mode 100644
index 0000000000..19e1edcb86
--- /dev/null
+++ b/games/wargus/wartool.ffmpeg.diff
@@ -0,0 +1,129 @@
+diff -Naur wargus-2.4.1/wartool.cpp wargus-2.4.1.patched/wartool.cpp
+--- wargus-2.4.1/wartool.cpp 2016-11-08 10:26:25.000000000 -0500
++++ wargus-2.4.1.patched/wartool.cpp 2021-11-19 15:04:56.300380502 -0500
+@@ -1901,25 +1901,27 @@
+ int ConvertMusic(void)
+ {
+ struct stat st;
+- char buf[1024];
++ char buf[8192] = {'\0'};
+ char *cmd;
++ int cmdlen;
+ int ret, i;
+ int count = 0;
+
+ for ( i = 0; MusicNames[i]; ++i ) {
+- sprintf(buf, "%s/%s/%s.wav", Dir, MUSIC_PATH, MusicNames[i]);
++ snprintf(buf, 4095, "%s/%s/%s.wav", Dir, MUSIC_PATH, MusicNames[i]);
+ CheckPath(buf);
+
+ if (stat(buf, &st))
+ continue;
+
+- cmd = (char*) calloc(strlen("ffmpeg2theora --optimize \"") + strlen(buf) + strlen("\" -o \"") + strlen(buf) + strlen("\"") + 1, 1);
++ cmdlen = strlen("ffmpeg -y -i \"") + strlen(buf) + strlen("\" \"") + strlen(buf) + strlen("\" ");
++ cmd = (char*) calloc(cmdlen + 1, 1);
+ if (!cmd) {
+ fprintf(stderr, "Memory error\n");
+ exit(-1);
+ }
+
+- sprintf(cmd, "ffmpeg2theora --optimize \"%s\" -o \"%s/%s/%s.ogg\"", buf, Dir, MUSIC_PATH, MusicNames[i]);
++ snprintf(cmd, cmdlen, "ffmpeg -y -i \"%s\" \"%s/%s/%s.ogg\"", buf, Dir, MUSIC_PATH, MusicNames[i]);
+
+ ret = system(cmd);
+
+@@ -1927,7 +1929,7 @@
+ remove(buf);
+
+ if (ret != 0) {
+- printf("Can't convert wav sound %s to ogv format. Is ffmpeg2theora installed in PATH?\n", MusicNames[i]);
++ printf("Can't convert wav sound %s to ogg format. Is ffmpeg installed in PATH?\n", MusicNames[i]);
+ fflush(stdout);
+ }
+
+@@ -1941,13 +1943,14 @@
+ if (stat(buf, &st))
+ continue;
+
+- cmd = (char*) calloc(strlen("ffmpeg2theora --optimize \"") + strlen(buf) + strlen("\" -o \"") + strlen(buf) + strlen("\"") + 1, 1);
++ cmdlen = strlen("ffmpeg -y -i \"") + strlen(buf) + strlen("\" \"") + strlen(buf) + strlen("\" ");
++ cmd = (char*) calloc(cmdlen + 1, 1);
+ if (!cmd) {
+ fprintf(stderr, "Memory error\n");
+ exit(-1);
+ }
+
+- sprintf(cmd, "ffmpeg2theora --optimize \"%s\" -o \"%s/%s/%s.ogg\"", buf, Dir, MUSIC_PATH, BNEMusicNames[i]);
++ snprintf(cmd, cmdlen, "ffmpeg -y -i \"%s\" \"%s/%s/%s.ogg\"", buf, Dir, MUSIC_PATH, BNEMusicNames[i]);
+
+ ret = system(cmd);
+
+@@ -1955,7 +1958,7 @@
+ remove(buf);
+
+ if (ret != 0) {
+- printf("Can't convert wav sound %s to ogv format. Is ffmpeg2theora installed in PATH?\n", BNEMusicNames[i]);
++ printf("Can't convert wav sound %s to ogg format. Is ffmpeg installed in PATH?\n", BNEMusicNames[i]);
+ fflush(stdout);
+ }
+
+@@ -1979,13 +1982,15 @@
+ int ConvertVideo(const char* file, int video, bool justconvert = false)
+ {
+ unsigned char* vidp;
+- char buf[1024];
++ char buf[8192] = {'\0'};
+ char* cmd;
+ FILE* f;
+ size_t l;
+ int ret;
++ int cmdlen;
++ char outputfile[8192] = {'\0'};
+
+- sprintf(buf,"%s/%s.smk", Dir, file);
++ snprintf(buf,4095,"%s/%s.smk", Dir, file);
+ CheckPath(buf);
+ if (justconvert == false) {
+ vidp = ExtractEntry(ArchiveOffsets[video], &l);
+@@ -2005,21 +2010,36 @@
+ fclose(f);
+ }
+
+- cmd = (char*) calloc(strlen("ffmpeg2theora --optimize \"") + strlen(buf) + strlen("\" -o \"") + strlen(buf) + strlen("\"") + 1, 1);
++ if (CDType & CD_BNE) {
++ cmdlen = strlen("ffmpeg -y -i \"") + strlen(buf) + strlen("\" -codec:v libtheora -qscale:v 31 -codec:a libvorbis -qscale:a 15 -pix_fmt yuv420p -aspect 4:3 -vf scale=640x0,setsar=1:1 \"") + strlen(buf) + strlen("\" ");
++ } else {
++ cmdlen = strlen("ffmpeg -y -i \"") + strlen(buf) + strlen("\" -codec:v libtheora -qscale:v 31 -codec:a libvorbis -qscale:a 15 -pix_fmt yuv420p \"") + strlen(buf) + strlen("\" ");
++ }
++ cmd = (char*) calloc(cmdlen + 1, 1);
+ if (!cmd) {
+ fprintf(stderr, "Memory error\n");
+ exit(-1);
+ }
+
+- sprintf(cmd, "ffmpeg2theora --optimize \"%s/%s.smk\" -o \"%s/%s.ogv\"", Dir, file, Dir, file);
+-
++ if (CDType & CD_BNE) {
++ snprintf(cmd, cmdlen, "ffmpeg -y -i \"%s/%s.smk\" -codec:v libtheora -qscale:v 31 -codec:a libvorbis -qscale:a 15 -pix_fmt yuv420p -aspect 4:3 -vf scale=640:0,setsar=1:1 \"%s/%s.ogv\"", Dir, file, Dir, file);
++ } else {
++ snprintf(cmd, cmdlen, "ffmpeg -y -i \"%s/%s.smk\" -codec:v libtheora -qscale:v 31 -codec:a libvorbis -qscale:a 15 -pix_fmt yuv420p \"%s/%s.ogv\"", Dir, file, Dir, file);
++ }
++ printf("%s\n", cmd);
+ ret = system(cmd);
+
+ free(cmd);
+ remove(buf);
+
+ if (ret != 0) {
+- printf("Can't convert video %s to ogv format. Is ffmpeg2theora installed in PATH?\n", file);
++ sprintf(outputfile, "%s/%s.ogv", Dir, file);
++#ifdef WIN32
++ _unlink(outputfile);
++#else
++ unlink(outputfile);
++#endif
++ printf("Can't convert video %s to ogv format. Is ffmpeg installed in PATH?\n", file);
+ fflush(stdout);
+ return ret;
+ }
diff --git a/games/warmux/README b/games/warmux/README
deleted file mode 100644
index 5e443ca1ac..0000000000
--- a/games/warmux/README
+++ /dev/null
@@ -1,13 +0,0 @@
-Warmux - War is declared !
-
-Have the mascots of your favorite free softwares battle in the Warmux arena.
-Using dynamite, grenades, baseball bat and others bazookas,... exterminate
-your opponent in a 2D toon style scenery and a funny environment.
-
-Each player (2 minimum on the same PC or network game with 0.8 version)
-controls the team of his choice (penguin, gnu, firefox, wilber,...) and must
-destroy his adversary using more or less casual weapons.
-
-Although a minimum of strategy is required to vanquish, Warmux is
-pre-eminently a "convivial mass murder" game where, turn by turn, each
-member of each team attempts to produce a maximum of damage to his opponents.
diff --git a/games/warmux/doinst.sh b/games/warmux/doinst.sh
deleted file mode 100644
index 65fd352418..0000000000
--- a/games/warmux/doinst.sh
+++ /dev/null
@@ -1,4 +0,0 @@
-if [ -x /usr/bin/update-desktop-database ]; then
- /usr/bin/update-desktop-database usr/share/applications >/dev/null 2>&1
-fi
-
diff --git a/games/warmux/patches/gcc47.patch b/games/warmux/patches/gcc47.patch
deleted file mode 100644
index e51801a369..0000000000
--- a/games/warmux/patches/gcc47.patch
+++ /dev/null
@@ -1,9 +0,0 @@
-diff -Naur warmux-11.04.orig/tools/list_games/main.cpp warmux-11.04/tools/list_games/main.cpp
---- warmux-11.04.orig/tools/list_games/main.cpp 2011-04-28 21:03:12.000000000 +0200
-+++ warmux-11.04/tools/list_games/main.cpp 2012-04-01 10:03:27.752999997 +0200
-@@ -1,4 +1,5 @@
- #include <stdio.h>
-+#include <unistd.h>
- #include <WARMUX_types.h>
- #include <WARMUX_network.h>
- #include <WARMUX_index_server.h>
diff --git a/games/warmux/patches/include-zlib.patch b/games/warmux/patches/include-zlib.patch
deleted file mode 100644
index c7e77aba11..0000000000
--- a/games/warmux/patches/include-zlib.patch
+++ /dev/null
@@ -1,11 +0,0 @@
-diff -uNr warmux-11.04.orig/src/graphic/surface.cpp warmux-11.04/src/graphic/surface.cpp
---- warmux-11.04.orig/src/graphic/surface.cpp 2011-09-19 09:26:52.392650465 +0200
-+++ warmux-11.04/src/graphic/surface.cpp 2011-09-19 09:26:19.417648189 +0200
-@@ -25,6 +25,7 @@
- #include <SDL_image.h>
- #include <SDL_rotozoom.h>
- #include <png.h>
-+#include <zlib.h>
-
- #include "graphic/surface.h"
- #include "tool/math_tools.h"
diff --git a/games/warmux/slack-desc b/games/warmux/slack-desc
deleted file mode 100644
index 7410c1926e..0000000000
--- a/games/warmux/slack-desc
+++ /dev/null
@@ -1,19 +0,0 @@
-# HOW TO EDIT THIS FILE:
-# The "handy ruler" below makes it easier to edit a package description.
-# Line up the first '|' above the ':' following the base package name, and
-# the '|' on the right side marks the last column you can put a character in.
-# You must make exactly 11 lines for the formatting to be correct. It's also
-# customary to leave one space after the ':' except on otherwise blank lines.
-
- |-----handy-ruler------------------------------------------------------|
-warmux: warmux (Worms linux/unix clone)
-warmux:
-warmux: Have the mascots of your favorite free softwares battle in the Warmux
-warmux: arena. Using dynamite, grenades, baseball bat and others bazookas,...
-warmux: exterminate your opponent in a 2D toon style scenery and a funny
-warmux: environment.
-warmux:
-warmux: Homepage: https://lgdb.org/game/warmux
-warmux:
-warmux:
-warmux:
diff --git a/games/warmux/warmux.SlackBuild b/games/warmux/warmux.SlackBuild
deleted file mode 100644
index 20cd3cd3a5..0000000000
--- a/games/warmux/warmux.SlackBuild
+++ /dev/null
@@ -1,114 +0,0 @@
-#!/bin/sh
-
-# Slackware build script for warmux
-
-# Copyright 2007 Adnan Hodzic aka AbsintheSyringe <AbsintheSyringe@gmail.com>
-# Copyright 2008-2011 Heinz Wiesinger, Amsterdam, The Netherlands
-# All rights reserved.
-#
-# Redistribution and use of this script, with or without modification, is
-# permitted provided that the following conditions are met:
-#
-# 1. Redistributions of this script must retain the above copyright
-# notice, this list of conditions and the following disclaimer.
-#
-# THIS SOFTWARE IS PROVIDED BY THE AUTHOR ''AS IS'' AND ANY EXPRESS OR IMPLIED
-# WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE IMPLIED WARRANTIES OF
-# MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE ARE DISCLAIMED. IN NO
-# EVENT SHALL THE AUTHOR BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL,
-# SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT LIMITED TO,
-# PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, DATA, OR PROFITS;
-# OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY,
-# WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR
-# OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF THIS SOFTWARE, EVEN IF
-# ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
-
-# Modified by the SlackBuilds.org project
-
-PRGNAM=warmux
-VERSION=${VERSION:-11.04.1}
-BUILD=${BUILD:-3}
-TAG=${TAG:-_SBo}
-
-if [ -z "$ARCH" ]; then
- case "$( uname -m )" in
- i?86) ARCH=i586 ;;
- arm*) ARCH=arm ;;
- *) ARCH=$( uname -m ) ;;
- esac
-fi
-
-CWD=$(pwd)
-TMP=${TMP:-/tmp/SBo}
-PKG=$TMP/package-$PRGNAM
-OUTPUT=${OUTPUT:-/tmp}
-
-if [ "$ARCH" = "i586" ]; then
- SLKCFLAGS="-O2 -march=i586 -mtune=i686"
- LIBDIRSUFFIX=""
-elif [ "$ARCH" = "i686" ]; then
- SLKCFLAGS="-O2 -march=i686 -mtune=i686"
- LIBDIRSUFFIX=""
-elif [ "$ARCH" = "x86_64" ]; then
- SLKCFLAGS="-O2 -fPIC"
- LIBDIRSUFFIX="64"
-else
- SLKCFLAGS="-O2"
- LIBDIRSUFFIX=""
-fi
-
-set -e
-
-rm -rf $PKG
-mkdir -p $TMP $PKG $OUTPUT
-cd $TMP
-rm -rf $PRGNAM-11.04
-tar xvf $CWD/$PRGNAM-$VERSION.tar.bz2
-cd $PRGNAM-11.04
-chown -R root:root .
-find -L . \
- \( -perm 777 -o -perm 775 -o -perm 750 -o -perm 711 -o -perm 555 \
- -o -perm 511 \) -exec chmod 755 {} \; -o \
- \( -perm 666 -o -perm 664 -o -perm 640 -o -perm 600 -o -perm 444 \
- -o -perm 440 -o -perm 400 \) -exec chmod 644 {} \;
-
-# Fix building with gcc-4.7.x
-patch -p1 < $CWD/patches/gcc47.patch
-# Explicitly include zlib headers
-patch -p1 < $CWD/patches/include-zlib.patch
-# Fix for sdlnet
-sed -i "s|SDLNet_Read32(buffer)|SDLNet_Read32(const_cast<char*>(buffer))|" \
- lib/warmux/action/action.cpp
-
-CFLAGS="$SLKCFLAGS" \
-CXXFLAGS="$SLKCFLAGS" \
-./configure \
- --prefix=/usr \
- --libdir=/usr/lib${LIBDIRSUFFIX} \
- --sysconfdir=/etc \
- --localstatedir=/var \
- --mandir=/usr/man \
- --program-prefix="" \
- --program-suffix="" \
- --enable-fribidi \
- --enable-servers \
- --build=$ARCH-slackware-linux
-
-make
-make install DESTDIR=$PKG
-
-find $PKG | xargs file | grep -e "executable" -e "shared object" | grep ELF \
- | cut -f 1 -d : | xargs strip --strip-unneeded 2> /dev/null || true
-
-find $PKG/usr/man -type f -exec gzip -9 {} \;
-
-mkdir -p $PKG/usr/doc/$PRGNAM-$VERSION
-cp -a ChangeLog INSTALL README TODO $PKG/usr/doc/$PRGNAM-$VERSION
-cat $CWD/$PRGNAM.SlackBuild > $PKG/usr/doc/$PRGNAM-$VERSION/$PRGNAM.SlackBuild
-
-mkdir -p $PKG/install
-cat $CWD/slack-desc > $PKG/install/slack-desc
-cat $CWD/doinst.sh > $PKG/install/doinst.sh
-
-cd $PKG
-/sbin/makepkg -l y -c n $OUTPUT/$PRGNAM-$VERSION-$ARCH-$BUILD$TAG.${PKGTYPE:-tgz}
diff --git a/games/warmux/warmux.info b/games/warmux/warmux.info
deleted file mode 100644
index afdb058ba4..0000000000
--- a/games/warmux/warmux.info
+++ /dev/null
@@ -1,10 +0,0 @@
-PRGNAM="warmux"
-VERSION="11.04.1"
-HOMEPAGE="https://lgdb.org/game/warmux"
-DOWNLOAD="http://ponce.cc/slackware/sources/repo/warmux-11.04.1.tar.bz2"
-MD5SUM="26ff65c43a9bb61a3f0529c98b943e35"
-DOWNLOAD_x86_64=""
-MD5SUM_x86_64=""
-REQUIRES="SDL_gfx libxml++"
-MAINTAINER="Heinz Wiesinger"
-EMAIL="pprkut@liwjatan.at"
diff --git a/games/warsow/warsow.SlackBuild b/games/warsow/warsow.SlackBuild
index bbe9a50f5a..de586e6a7e 100644
--- a/games/warsow/warsow.SlackBuild
+++ b/games/warsow/warsow.SlackBuild
@@ -1,4 +1,4 @@
-#!/bin/sh
+#!/bin/bash
# Slackware build script for Warsow
@@ -22,11 +22,17 @@
# Written by Andre Barboza <bmg.andre@gmail.com>
# Updated by drhouse <housegregory299@gmail.com>
# Updated by goarilla <goarilla@gmail.com>
+# Updated to v2.1.2 by SlackBuilds.org: version 2.1 was broken.
+
+# 20220221 bkw: Modified by SlackBuilds.org: fix build on 15.0.
+
+cd $(dirname $0) ; CWD=$(pwd)
PRGNAM=warsow
-VERSION=${VERSION:-2.1}
+VERSION=${VERSION:-2.1.2}
BUILD=${BUILD:-1}
TAG=${TAG:-_SBo}
+PKGTYPE=${PKGTYPE:-tgz}
case "$( uname -m )" in
i?86) ARCH=i686 ;;
@@ -34,8 +40,12 @@ case "$( uname -m )" in
*) ARCH=$( uname -m ) ;;
esac
+if [ ! -z "${PRINT_PACKAGE_NAME}" ]; then
+ echo "$PRGNAM-$VERSION-$ARCH-$BUILD$TAG.$PKGTYPE"
+ exit 0
+fi
+
TMP=${TMP:-/tmp/SBo}
-CWD=$(pwd)
PKG=$TMP/package-$PRGNAM
OUTPUT=${OUTPUT:-/tmp}
@@ -62,23 +72,28 @@ mkdir -p "${PKG}/usr/doc/${PRGNAM}-${VERSION}"
# no parent directory
SDK="warsow_21_sdk.tar.gz"
# ./warsow_20
-DATA="warsow_21_unified.tar.gz"
+DATA="warsow-2.1.2.tar.gz"
-tar -C "${PKG}/usr/doc/${PRGNAM}-${VERSION}" -xvf "$DATA" ./warsow_21/docs/
-mv "${PKG}/usr/doc/${PRGNAM}-${VERSION}/warsow_21/docs/"* "${PKG}/usr/doc/${PRGNAM}-${VERSION}/"
-rm -rf "${PKG}/usr/doc/${PRGNAM}-${VERSION}/warsow_21/"
-tar -C "${PKG}/usr/share/${PRGNAM}" -xvf "$DATA" ./warsow_21/basewsw
-mv "${PKG}/usr/share/${PRGNAM}/warsow_21/"* "${PKG}/usr/share/${PRGNAM}"
-rm -rf "${PKG}/usr/share/${PRGNAM}/warsow_21/"
+tar -C "${PKG}/usr/doc/${PRGNAM}-${VERSION}" -xvf "$DATA" warsow-2.1.2/docs/
+mv "${PKG}/usr/doc/${PRGNAM}-${VERSION}/warsow-2.1.2/docs/"* "${PKG}/usr/doc/${PRGNAM}-${VERSION}/"
+rm -rf "${PKG}/usr/doc/${PRGNAM}-${VERSION}/warsow-2.1.2/"
+tar -C "${PKG}/usr/share/${PRGNAM}" -xvf "$DATA" warsow-2.1.2/basewsw
+mv "${PKG}/usr/share/${PRGNAM}/warsow-2.1.2/"* "${PKG}/usr/share/${PRGNAM}"
+rm -rf "${PKG}/usr/share/${PRGNAM}/warsow-2.1.2/"
# unpack sdk
tar -C "${TMP}/${PRGNAM}-${VERSION}" -xvf "$SDK" warsow_21_sdk/
+SLKCFLAGS+=" -fcommon"
# build
cd "${TMP}/${PRGNAM}-${VERSION}"
cd warsow_21_sdk/source/source
-cmake -DQFUSION_GAME="Warsow" .
-make
+cmake \
+ -DQFUSION_GAME="Warsow" \
+ -DCMAKE_CXX_FLAGS="$SLKCFLAGS" \
+ -DCMAKE_C_FLAGS="$SLKCFLAGS" \
+ .
+make VERBOSE=1
# copy build
cp -rf build/wsw* build/warsow* build/libs "${PKG}/usr/share/${PRGNAM}/"
@@ -124,4 +139,4 @@ find usr/share/"${PRGNAM}"/basewsw -type f -print0 | xargs -0 chmod 644
find usr/share/"${PRGNAM}"/basewsw -type d -print0 | xargs -0 chmod 755
# build package
-/sbin/makepkg -l y -c n $OUTPUT/$PRGNAM-$VERSION-$ARCH-$BUILD$TAG.${PKGTYPE:-tgz}
+/sbin/makepkg -l y -c n $OUTPUT/$PRGNAM-$VERSION-$ARCH-$BUILD$TAG.$PKGTYPE
diff --git a/games/warsow/warsow.info b/games/warsow/warsow.info
index 7ba2e77188..a2f2c81381 100644
--- a/games/warsow/warsow.info
+++ b/games/warsow/warsow.info
@@ -1,12 +1,12 @@
PRGNAM="warsow"
-VERSION="2.1"
+VERSION="2.1.2"
HOMEPAGE="https://www.warsow.net/"
-DOWNLOAD="http://ponce.cc/slackware/sources/repo/warsow_21_unified.tar.gz \
+DOWNLOAD="https://warsow.net/warsow-2.1.2.tar.gz \
http://ponce.cc/slackware/sources/repo/warsow_21_sdk.tar.gz"
-MD5SUM="fac70b30d7295c0bc4c3f0432c4b7937 \
+MD5SUM="ec3e8c20a491d08b2f7753ee6e700bbe \
56c02b5e9bd6f921fbc980e868c2b48d"
DOWNLOAD_x86_64=""
MD5SUM_x86_64=""
-REQUIRES="OpenAL SDL2"
+REQUIRES=""
MAINTAINER="Kevin Paulus"
EMAIL="goarilla@gmail.com"
diff --git a/games/warzone2100/README b/games/warzone2100/README
index 85a5b4e029..9cfc669e8d 100644
--- a/games/warzone2100/README
+++ b/games/warzone2100/README
@@ -3,9 +3,10 @@ real time strategy game developed by Pumpkin Studios and published
by Eidos Interactive in 1999.
Warzone 2100 offers campaign, tutorial, multi-player and single-player
-skirmish game modes, unit designer, unit experience system, and everything
-you would expect from a modern RTS game.
+skirmish game modes, unit designer, unit experience system, and
+everything you would expect from a modern RTS game.
The 3.x series does not transfer the 2.3 series saved games.
-If you wish to include the animated movies, read the README.movies file.
+If you wish to include the animated movies, read the README.movies
+file.
diff --git a/games/warzone2100/warzone2100.SlackBuild b/games/warzone2100/warzone2100.SlackBuild
index 9aa0274c11..5cf5a0cef6 100644
--- a/games/warzone2100/warzone2100.SlackBuild
+++ b/games/warzone2100/warzone2100.SlackBuild
@@ -1,4 +1,4 @@
-#!/bin/sh
+#!/bin/bash
# SlackBuild script for Warzone 2100
# Yth | Pont-en-Royans, France | yth@ythogtha.org
@@ -31,10 +31,13 @@
# - got rid of unneeded template code (no perllocal.pod gets installed)
# - move binary to /usr/games (since it has a section 6 man page)
+cd $(dirname $0) ; CWD=$(pwd)
+
PRGNAM=warzone2100
-VERSION=${VERSION:-3.4.1}
+VERSION=${VERSION:-4.4.2}
BUILD=${BUILD:-1}
TAG=${TAG:-_SBo}
+PKGTYPE=${PKGTYPE:-tgz}
if [ -z "$ARCH" ]; then
case "$( uname -m )" in
@@ -44,7 +47,14 @@ if [ -z "$ARCH" ]; then
esac
fi
-CWD=$(pwd)
+# If the variable PRINT_PACKAGE_NAME is set, then this script will report what
+# the name of the created package would be, and then exit. This information
+# could be useful to other scripts.
+if [ ! -z "${PRINT_PACKAGE_NAME}" ]; then
+ echo "$PRGNAM-$VERSION-$ARCH-$BUILD$TAG.$PKGTYPE"
+ exit 0
+fi
+
TMP=${TMP:-/tmp/SBo}
PKG=$TMP/package-$PRGNAM
OUTPUT=${OUTPUT:-/tmp}
@@ -58,6 +68,9 @@ elif [ "$ARCH" = "i686" ]; then
elif [ "$ARCH" = "x86_64" ]; then
SLKCFLAGS="-O2 -fPIC -Wno-error=maybe-uninitialized"
LIBDIRSUFFIX="64"
+elif [ "$ARCH" = "aarch64" ]; then
+ SLKCFLAGS="-O2 -fPIC -Wno-error=maybe-uninitialized"
+ LIBDIRSUFFIX="64"
else
SLKCFLAGS="-O2 -Wno-error=maybe-uninitialized"
LIBDIRSUFFIX=""
@@ -86,20 +99,23 @@ cd build
-DCMAKE_INSTALL_PREFIX=/usr \
-DCMAKE_BUILD_TYPE=Release \
-DCMAKE_INSTALL_MANDIR=/usr/man \
+ -DCMAKE_INSTALL_DOCDIR=/usr/doc/$PRGNAM-$VERSION \
-DCMAKE_INSTALL_BINDIR=games \
..
DESTDIR=$PKG cmake --build . --target install
cd ..
+find $PKG -print0 | xargs -0 file | grep -e "executable" -e "shared object" | grep ELF \
+ | cut -f 1 -d : | xargs strip --strip-unneeded 2> /dev/null || true
+
# Let's not pollute the themed icon directory
mv $PKG/usr/share/icons $PKG/usr/share/pixmaps
-# --docdir= above works :)
-cat $CWD/$PRGNAM.SlackBuild > $PKG/usr/share/doc/$PRGNAM/$PRGNAM.SlackBuild
+cat $CWD/$PRGNAM.SlackBuild > $PKG/usr/doc/$PRGNAM-$VERSION/$PRGNAM.SlackBuild
mkdir -p $PKG/install
cat $CWD/slack-desc > $PKG/install/slack-desc
cat $CWD/doinst.sh > $PKG/install/doinst.sh
cd $PKG
-/sbin/makepkg -l y -c n $OUTPUT/$PRGNAM-$VERSION-$ARCH-$BUILD$TAG.${PKGTYPE:-tgz}
+/sbin/makepkg -l y -c n $OUTPUT/$PRGNAM-$VERSION-$ARCH-$BUILD$TAG.$PKGTYPE
diff --git a/games/warzone2100/warzone2100.info b/games/warzone2100/warzone2100.info
index 91fde3557c..87da2e7dbc 100644
--- a/games/warzone2100/warzone2100.info
+++ b/games/warzone2100/warzone2100.info
@@ -1,10 +1,10 @@
PRGNAM="warzone2100"
-VERSION="3.4.1"
-HOMEPAGE="http://wz2100.net"
-DOWNLOAD="https://github.com/Warzone2100/warzone2100/releases/download/3.4.1/warzone2100_src.tar.xz"
-MD5SUM="f538187f6ffdd6cfd0c660d45f3f2238"
+VERSION="4.4.2"
+HOMEPAGE="https://wz2100.net"
+DOWNLOAD="https://github.com/Warzone2100/warzone2100/releases/download/4.4.2/warzone2100_src.tar.xz"
+MD5SUM="095026d76fa3957e513d9012ebf4376a"
DOWNLOAD_x86_64=""
MD5SUM_x86_64=""
-REQUIRES="OpenAL physfs SDL2 qt5 libsodium"
+REQUIRES="physfs"
MAINTAINER="Yth - Arnaud"
EMAIL="yth@ythogtha.org"
diff --git a/games/waterCloset/README b/games/waterCloset/README
index 36816e0186..aeb2e48e38 100644
--- a/games/waterCloset/README
+++ b/games/waterCloset/README
@@ -3,9 +3,6 @@ game. Guide Walter Chambers through a series of stages as he attempts
to return home from a bizarre world that he has become trapped in.
The program is GPL3 and the data is CC BY-NC-SA 3.0 with attribution
-Copyright 2019, PArallel REalities
-
-This is an SDL2 game which uses SDL2_image, SDL2_mixer and SDL2_TTF.
-All dependancies are available from slackbuilds.org.
+Copyright 2019, Parallel Realities
This game was created by parallelrealities.co.uk
diff --git a/games/waterCloset/doinst.sh b/games/waterCloset/doinst.sh
index 4e8ba7071d..3e5691a052 100644
--- a/games/waterCloset/doinst.sh
+++ b/games/waterCloset/doinst.sh
@@ -2,3 +2,8 @@ if [ -x /usr/bin/update-desktop-database ]; then
/usr/bin/update-desktop-database -q usr/share/applications >/dev/null 2>&1
fi
+if [ -e usr/share/icons/hicolor/icon-theme.cache ]; then
+ if [ -x /usr/bin/gtk-update-icon-cache ]; then
+ /usr/bin/gtk-update-icon-cache usr/share/icons/hicolor >/dev/null 2>&1
+ fi
+fi
diff --git a/games/waterCloset/waterCloset.SlackBuild b/games/waterCloset/waterCloset.SlackBuild
index 01837f73c7..c97048f28b 100644
--- a/games/waterCloset/waterCloset.SlackBuild
+++ b/games/waterCloset/waterCloset.SlackBuild
@@ -1,4 +1,4 @@
-#!/bin/sh
+#!/bin/bash
# Slackware build script for waterCloset
# Written by Tim Dickson dickson.tim@googlemail.com
@@ -9,11 +9,21 @@
# fix doc dir for slackware defaults.
# 06/02/2020. version 1.0 first major "full" version.
+# 20220430 bkw: Modified by SlackBuilds.org, BUILD=2:
+# - update icon cache in doinst.sh.
+# - make .desktop file validate.
+# Note to maintainer: consider putting the binary in /usr/games, since
+# this is a game...
+# 20220221 bkw: Modified by SlackBuilds.org: fix incorrect github URL.
+# 20220323 bkw: Modified by SlackBuilds.org: fix 32-bit build.
+
+cd $(dirname $0) ; CWD=$(pwd)
+
PRGNAM=waterCloset
-GITNAM=wc
VERSION=${VERSION:-1.0}
-BUILD=${BUILD:-1}
+BUILD=${BUILD:-2}
TAG=${TAG:-_SBo}
+PKGTYPE=${PKGTYPE:-tgz}
if [ -z "$ARCH" ]; then
case "$( uname -m )" in
@@ -23,7 +33,11 @@ if [ -z "$ARCH" ]; then
esac
fi
-CWD=$(pwd)
+if [ ! -z "${PRINT_PACKAGE_NAME}" ]; then
+ echo "$PRGNAM-$VERSION-$ARCH-$BUILD$TAG.$PKGTYPE"
+ exit 0
+fi
+
TMP=${TMP:-/tmp/SBo}
PKG=$TMP/package-$PRGNAM
OUTPUT=${OUTPUT:-/tmp}
@@ -47,20 +61,25 @@ rm -rf $PKG
mkdir -p $TMP $PKG $OUTPUT
cd $TMP
rm -rf $PRGNAM-$VERSION
-tar xvf $CWD/$PRGNAM-$VERSION.src.tar.gz
+tar xvf $CWD/$PRGNAM-$VERSION.tar.gz
cd $PRGNAM-$VERSION
chown -R root:root .
find -L . \
\( -perm 777 -o -perm 775 -o -perm 750 -o -perm 711 -o -perm 555 \
- -o -perm 511 \) -exec chmod 755 {} \; -o \
+ -o -perm 511 \) -exec chmod 755 {} \+ -o \
\( -perm 666 -o -perm 664 -o -perm 640 -o -perm 600 -o -perm 444 \
- -o -perm 440 -o -perm 400 \) -exec chmod 644 {} \;
+ -o -perm 440 -o -perm 400 \) -exec chmod 644 {} \+
+
+# 20220323 bkw: 32-bit needs this.
+sed -i 's,-Werror[^ ]*, ,g' makefile
+
+# 20220430 bkw: this didn't hurt anything, but it produces noise from
+# sbopkglint and it costs almost nothing to fix:
+sed -i '/^Encoding/d' icons/$PRGNAM.desktop
make
make install DESTDIR=$PKG
-
-find $PKG -print0 | xargs -0 file | grep -e "executable" -e "shared object" | grep ELF \
- | cut -f 1 -d : | xargs strip --strip-unneeded 2> /dev/null || true
+strip $PKG/usr/bin/$PRGNAM
mkdir -p $PKG/usr/doc/$PRGNAM-$VERSION
cat $CWD/$PRGNAM.SlackBuild > $PKG/usr/doc/$PRGNAM-$VERSION/$PRGNAM.SlackBuild
@@ -70,4 +89,4 @@ cat $CWD/slack-desc > $PKG/install/slack-desc
cat $CWD/doinst.sh > $PKG/install/doinst.sh
cd $PKG
-/sbin/makepkg -l y -c n $OUTPUT/$PRGNAM-$VERSION-$ARCH-$BUILD$TAG.${PKGTYPE:-tgz}
+/sbin/makepkg -l y -c n $OUTPUT/$PRGNAM-$VERSION-$ARCH-$BUILD$TAG.$PKGTYPE
diff --git a/games/waterCloset/waterCloset.info b/games/waterCloset/waterCloset.info
index d06025d9c8..1bf7943b7b 100644
--- a/games/waterCloset/waterCloset.info
+++ b/games/waterCloset/waterCloset.info
@@ -1,10 +1,10 @@
PRGNAM="waterCloset"
VERSION="1.0"
HOMEPAGE="https://www.parallelrealities.co.uk/games/wc/"
-DOWNLOAD="https://github.com/stephenjsweeney/wc/archive/v1.0/waterCloset-1.0.src.tar.gz"
+DOWNLOAD="https://github.com/stephenjsweeney/waterCloset/archive/v1.0/waterCloset-1.0.tar.gz"
MD5SUM="1f3d4a94145be98484ed25c060314c8c"
DOWNLOAD_x86_64=""
MD5SUM_x86_64=""
-REQUIRES="SDL2_image SDL2_mixer SDL2_ttf"
+REQUIRES=""
MAINTAINER="Tim Dickson"
EMAIL="dickson.tim@googlemail.com"
diff --git a/games/wesnoth/README b/games/wesnoth/README
index 9702250403..0bdd0df0d8 100644
--- a/games/wesnoth/README
+++ b/games/wesnoth/README
@@ -3,14 +3,15 @@ environment, where players can build an army of different kinds of
fighters from races such as elves, dwarves, orcs, trolls, and more.
It is a turn-based strategy game on a hexgrid with several challenging
-single-player campaigns and different kind of multi-player matches.
+single-player campaigns and different kinds of multi-player matches.
If you want to compile the wesnothd server and campaign server you can
run the script as follows: SERVER=yes ./wesnoth.SlackBuild
-please note that the server UID and GID are not required at compile time but
-will be required at runtime under the UID/GID specified in the buildscript.
-You can create the user and group for the wesnoth server as follows:
+Please note that the server UID and GID are not required at compile
+time but will be required at runtime under the UID/GID specified in
+the buildscript. You can create the user and group for the wesnoth
+server as follows:
# groupadd -g 229 wesnoth
# useradd -u 229 -d /dev/null -s /bin/false -g wesnoth wesnoth
diff --git a/games/wesnoth/wesnoth.SlackBuild b/games/wesnoth/wesnoth.SlackBuild
index 98e4ceb485..3af210423e 100644
--- a/games/wesnoth/wesnoth.SlackBuild
+++ b/games/wesnoth/wesnoth.SlackBuild
@@ -1,10 +1,10 @@
-#!/bin/sh
+#!/bin/bash
# SlackBuild script for "Battle of Wesnoth".
# Copyright 2007-2010 Michiel van Wessem, Manchester, United Kingdom
# Copyright 2010-2017 Willy Sudiarto Raharjo <willysr@slackbuilds.org>
-# Copyright 2018 Edward W. Koenig, Vancouver, WA, USA
+# Copyright 2018-2022 Edward W. Koenig, Vancouver, WA, USA
# All rights reserved.
#
# Redistribution and use in source and binary forms, with or without
@@ -26,10 +26,13 @@
# (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE
# OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
+cd $(dirname $0) ; CWD=$(pwd)
+
PRGNAM=wesnoth
-VERSION=${VERSION:-1.14.14}
+VERSION=${VERSION:-1.16.11}
BUILD=${BUILD:-1}
TAG=${TAG:-_SBo}
+PKGTYPE=${PKGTYPE:-tgz}
if [ -z "$ARCH" ]; then
case "$( uname -m )" in
@@ -39,7 +42,11 @@ if [ -z "$ARCH" ]; then
esac
fi
-CWD=$(pwd)
+if [ ! -z "${PRINT_PACKAGE_NAME}" ]; then
+ echo "$PRGNAM-$VERSION-$ARCH-$BUILD$TAG.$PKGTYPE"
+ exit 0
+fi
+
TMP=${TMP:-/tmp/SBo}
PKG=$TMP/package-$PRGNAM
OUTPUT=${OUTPUT:-/tmp}
@@ -76,14 +83,15 @@ cd $PRGNAM-$VERSION
chown -R root:root .
find -L . \
\( -perm 777 -o -perm 775 -o -perm 750 -o -perm 711 -o -perm 555 \
- -o -perm 511 \) -exec chmod 755 {} \; -o \
+ -o -perm 511 \) -exec chmod 755 {} \+ -o \
\( -perm 666 -o -perm 664 -o -perm 640 -o -perm 600 -o -perm 444 \
- -o -perm 440 -o -perm 400 \) -exec chmod 644 {} \;
+ -o -perm 440 -o -perm 400 \) -exec chmod 644 {} \+
scons \
CXXFLAGS="$SLKCFLAGS" \
CFLAGS="$SLKCFLAGS" \
prefix=/usr \
+ bindir=/usr/games \
libdir=/usr/lib${LIBDIRSUFFIX} \
datadir=/usr/share/wesnoth \
docdir=/usr/doc/$PRGNAM-$VERSION \
@@ -95,12 +103,13 @@ scons \
wesnoth wesnothd campaignd
scons install destdir=$PKG
+strip $PKG/usr/games/*
find $PKG/usr/man -type f -exec gzip -9 {} \;
for i in $( find $PKG/usr/man -type l ) ; do ln -s $( readlink $i ).gz $i.gz ; rm $i ; done
mkdir -p $PKG/usr/doc/$PRGNAM-$VERSION
-cp -a COPYING INSTALL.md changelog.md README.md copyright $PKG/usr/doc/$PRGNAM-$VERSION
+cp -a COPYING changelog.md README.md copyright $PKG/usr/doc/$PRGNAM-$VERSION
cat $CWD/$PRGNAM.SlackBuild > $PKG/usr/doc/$PRGNAM-$VERSION/$PRGNAM.SlackBuild
mkdir $PKG/install
@@ -108,4 +117,4 @@ cat $CWD/slack-desc > $PKG/install/slack-desc
cat $CWD/doinst.sh > $PKG/install/doinst.sh
cd $PKG
-/sbin/makepkg -l y -c n $OUTPUT/$PRGNAM-$VERSION-$ARCH-$BUILD$TAG.${PKGTYPE:-tgz}
+/sbin/makepkg -l y -c n $OUTPUT/$PRGNAM-$VERSION-$ARCH-$BUILD$TAG.$PKGTYPE
diff --git a/games/wesnoth/wesnoth.info b/games/wesnoth/wesnoth.info
index ef8051a5cf..c64864bc2c 100644
--- a/games/wesnoth/wesnoth.info
+++ b/games/wesnoth/wesnoth.info
@@ -1,10 +1,10 @@
PRGNAM="wesnoth"
-VERSION="1.14.14"
+VERSION="1.16.11"
HOMEPAGE="http://www.wesnoth.org"
-DOWNLOAD="http://downloads.sourceforge.net/wesnoth/wesnoth-1.14.14.tar.bz2"
-MD5SUM="ce954e571b489c97e3f50011d9fe21a8"
+DOWNLOAD="http://downloads.sourceforge.net/wesnoth/wesnoth-1.16.11.tar.bz2"
+MD5SUM="926fce1f3b89e9cf409437a4b78802e6"
DOWNLOAD_x86_64=""
MD5SUM_x86_64=""
-REQUIRES="SDL2 SDL2_image SDL2_mixer SDL2_ttf"
+REQUIRES=""
MAINTAINER="Edward W. Koenig"
-EMAIL="kingbeowulf@gmail.com"
+EMAIL="kingbeowulf@linuxgalaxy.org"
diff --git a/games/widelands/doinst.sh b/games/widelands/doinst.sh
index 3857649f50..11813c3101 100644
--- a/games/widelands/doinst.sh
+++ b/games/widelands/doinst.sh
@@ -1,3 +1,9 @@
if [ -x /usr/bin/update-desktop-database ]; then
/usr/bin/update-desktop-database -q usr/share/applications &> /dev/null
fi
+
+if [ -e usr/share/icons/hicolor/icon-theme.cache ]; then
+ if [ -x /usr/bin/gtk-update-icon-cache ]; then
+ /usr/bin/gtk-update-icon-cache usr/share/icons/hicolor >/dev/null 2>&1
+ fi
+fi
diff --git a/games/widelands/widelands-1.0-boost-1.77.patch b/games/widelands/widelands-1.0-boost-1.77.patch
new file mode 100644
index 0000000000..69c1cb8caf
--- /dev/null
+++ b/games/widelands/widelands-1.0-boost-1.77.patch
@@ -0,0 +1,16 @@
+https://bugs.gentoo.org/808747
+
+https://github.com/widelands/widelands/commit/316eaea
+From: matthiakl <t-m.42@mailpost.spdns.org>
+Date: Sat, 14 Aug 2021 19:24:08 +0200
+Subject: [PATCH] Added missing direct incude (#5025)
+--- a/src/network/bufferedconnection.h
++++ b/src/network/bufferedconnection.h
+@@ -20,6 +20,7 @@
+ #ifndef WL_NETWORK_BUFFEREDCONNECTION_H
+ #define WL_NETWORK_BUFFEREDCONNECTION_H
+
++#include <map>
+ #include <memory>
+ #include <mutex>
+ #include <thread>
diff --git a/games/widelands/widelands-gcc47.patch b/games/widelands/widelands-gcc47.patch
deleted file mode 100644
index 9ea19c3571..0000000000
--- a/games/widelands/widelands-gcc47.patch
+++ /dev/null
@@ -1,12 +0,0 @@
-=== modified file 'src/main.cc'
---- src/main.cc 2012-02-15 21:25:34 +0000
-+++ src/main.cc 2012-05-02 07:43:01 +0000
-@@ -28,6 +28,7 @@
- #include <iostream>
- #include <stdexcept>
- #include <typeinfo>
-+#include <unistd.h>
-
- #include <SDL_main.h>
-
-
diff --git a/games/widelands/widelands.SlackBuild b/games/widelands/widelands.SlackBuild
index 793f7a1215..8af1205fdd 100644
--- a/games/widelands/widelands.SlackBuild
+++ b/games/widelands/widelands.SlackBuild
@@ -1,8 +1,8 @@
-#!/bin/sh
+#!/bin/bash
# Slackware build script for widelands
-# Copyright 2008-2017 Heinz Wiesinger, Amsterdam, The Netherlands
+# Copyright 2008-2021 Heinz Wiesinger, Amsterdam, The Netherlands
# All rights reserved.
#
# Redistribution and use of this script, with or without modification, is
@@ -11,21 +11,24 @@
# 1. Redistributions of this script must retain the above copyright
# notice, this list of conditions and the following disclaimer.
#
-# THIS SOFTWARE IS PROVIDED BY THE AUTHOR ''AS IS'' AND ANY EXPRESS OR IMPLIED
-# WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE IMPLIED WARRANTIES OF
-# MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE ARE DISCLAIMED. IN NO
-# EVENT SHALL THE AUTHOR BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL,
-# SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT LIMITED TO,
-# PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, DATA, OR PROFITS;
-# OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY,
-# WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR
-# OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF THIS SOFTWARE, EVEN IF
-# ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
+# THIS SOFTWARE IS PROVIDED BY THE AUTHOR ``AS IS'' AND ANY EXPRESS OR IMPLIED
+# WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE IMPLIED WARRANTIES OF
+# MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE ARE DISCLAIMED. IN NO
+# EVENT SHALL THE AUTHOR BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL,
+# SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT LIMITED TO,
+# PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, DATA, OR PROFITS;
+# OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY,
+# WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR
+# OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF THIS SOFTWARE, EVEN IF
+# ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
+
+cd $(dirname $0) ; CWD=$(pwd)
PRGNAM=widelands
-VERSION=${VERSION:-build19}
+VERSION=${VERSION:-1.0}
BUILD=${BUILD:-1}
TAG=${TAG:-_SBo}
+PKGTYPE=${PKGTYPE:-tgz}
if [ -z "$ARCH" ]; then
case "$( uname -m )" in
@@ -35,7 +38,14 @@ if [ -z "$ARCH" ]; then
esac
fi
-CWD=$(pwd)
+# If the variable PRINT_PACKAGE_NAME is set, then this script will report what
+# the name of the created package would be, and then exit. This information
+# could be useful to other scripts.
+if [ ! -z "${PRINT_PACKAGE_NAME}" ]; then
+ echo "$PRGNAM-$VERSION-$ARCH-$BUILD$TAG.$PKGTYPE"
+ exit 0
+fi
+
TMP=${TMP:-/tmp/SBo}
PKG=$TMP/package-$PRGNAM
OUTPUT=${OUTPUT:-/tmp}
@@ -59,9 +69,9 @@ set -e
rm -rf $PKG
mkdir -p $TMP $PKG $OUTPUT
cd $TMP
-rm -rf $PRGNAM-$VERSION-src
-tar xvf $CWD/$PRGNAM-$VERSION-src.tar.bz2
-cd $PRGNAM-$VERSION-src
+rm -rf $PRGNAM-$VERSION
+tar xvf $CWD/$PRGNAM-$VERSION.tar.gz
+cd $PRGNAM-$VERSION
chown -R root:root .
find -L . \
\( -perm 777 -o -perm 775 -o -perm 750 -o -perm 711 -o -perm 555 \
@@ -69,36 +79,31 @@ find -L . \
\( -perm 666 -o -perm 664 -o -perm 640 -o -perm 600 -o -perm 444 \
-o -perm 440 -o -perm 400 \) -exec chmod 644 {} \;
-# Fix compiling with gcc 4.7
-patch -p0 -i $CWD/widelands-gcc47.patch
+# Fix building against boost 1.77.0
+patch -p1 -i $CWD/widelands-1.0-boost-1.77.patch
mkdir -p build1
cd build1
cmake \
-DCMAKE_C_FLAGS:STRING="$SLKCFLAGS" \
-DCMAKE_CXX_FLAGS:STRING="$SLKCFLAGS" \
- -DCMAKE_INSTALL_PREFIX=/usr \
+ -DCMAKE_INSTALL_PREFIX=/usr/bin \
-DCMAKE_BUILD_TYPE=Release \
- -DWL_INSTALL_PREFIX=/usr \
-DWL_INSTALL_DATADIR=/usr/share/widelands \
+ -DWL_INSTALL_BASEDIR=/usr/doc/$PRGNAM-$VERSION \
+ -DGTK_UPDATE_ICON_CACHE=OFF \
..
make
make install DESTDIR=$PKG
cd ..
-mkdir -p $PKG/usr/bin
-mv $PKG/usr/{widelands,wl_map_object_info,wl_render_richtext,wl_map_info} $PKG/usr/bin
-
-mkdir -p $PKG/usr/share/applications
-install -m 0644 $CWD/widelands.desktop \
- $PKG/usr/share/applications/widelands.desktop
+mv $PKG/usr/share/man $PKG/usr/
find $PKG -print0 | xargs -0 file | grep -e "executable" -e "shared object" | grep ELF \
| cut -f 1 -d : | xargs strip --strip-unneeded 2> /dev/null || true
-mkdir -p $PKG/usr/doc/$PRGNAM-$VERSION
-mv $PKG/usr/{VERSION,ChangeLog,CREDITS,COPYING} $PKG/usr/doc/$PRGNAM-$VERSION
-cp -a WL_RELEASE $PKG/usr/doc/$PRGNAM-$VERSION/
+find $PKG/usr/man -type f -exec gzip -9 {} \;
+
cat $CWD/$PRGNAM.SlackBuild > $PKG/usr/doc/$PRGNAM-$VERSION/$PRGNAM.SlackBuild
mkdir -p $PKG/install
@@ -106,4 +111,4 @@ cat $CWD/slack-desc > $PKG/install/slack-desc
cat $CWD/doinst.sh > $PKG/install/doinst.sh
cd $PKG
-/sbin/makepkg -l y -c n $OUTPUT/$PRGNAM-$VERSION-$ARCH-$BUILD$TAG.${PKGTYPE:-tgz}
+/sbin/makepkg -l y -c n $OUTPUT/$PRGNAM-$VERSION-$ARCH-$BUILD$TAG.$PKGTYPE
diff --git a/games/widelands/widelands.desktop b/games/widelands/widelands.desktop
deleted file mode 100644
index 8c62d39991..0000000000
--- a/games/widelands/widelands.desktop
+++ /dev/null
@@ -1,10 +0,0 @@
-[Desktop Entry]
-Name=Widelands
-Name[de]=Widelands
-Comment="Settlers II" clone
-Comment[de]= Ein "Siedler II" Clone
-Exec=widelands
-Icon=/usr/share/games/widelands/pics/wl-ico-48.png
-Terminal=false
-Type=Application
-Categories=Game;StrategyGame;
diff --git a/games/widelands/widelands.info b/games/widelands/widelands.info
index a98f31a43a..a9a9e667ed 100644
--- a/games/widelands/widelands.info
+++ b/games/widelands/widelands.info
@@ -1,10 +1,10 @@
PRGNAM="widelands"
-VERSION="build19"
+VERSION="1.0"
HOMEPAGE="http://www.widelands.org"
-DOWNLOAD="https://launchpad.net/widelands/build19/build19/+download/widelands-build19-src.tar.bz2"
-MD5SUM="0ef7ccf021b8001056739f755500366d"
+DOWNLOAD="https://github.com/widelands/widelands/archive/v1.0/widelands-1.0.tar.gz"
+MD5SUM="ac576b20273205a09bc1e6dc19550499"
DOWNLOAD_x86_64=""
MD5SUM_x86_64=""
-REQUIRES="SDL2_image SDL2_mixer SDL2_net SDL2_ttf lua"
+REQUIRES=""
MAINTAINER="Heinz Wiesinger"
-EMAIL="pprkut@liwjatan.at"
+EMAIL="pprkut@slackbuilds.org"
diff --git a/games/wmquake/README b/games/wmquake/README
deleted file mode 100644
index 438d4c3a8e..0000000000
--- a/games/wmquake/README
+++ /dev/null
@@ -1,22 +0,0 @@
-wmquake (Quake as a windowmaker dockapp)
-
-Run id Software's legendary Quake inside a dockapp! Play full on software
-Quake, mods, or let it play demos. Fixed by Eukos for newer systems.
-
-You need at least the shareware data files from Quake, available on SBo
-as quake_shareware_data. If you have the full version, copy or link its
-.pak files into "/usr/share/games/quake/id1".
-
-Notes:
-
-This program will not work correctly on x86_64! You can try it, maybe
-you'll have better results than I did, but don't send me a bug report
-about 64-bit unless it includes a patch.
-
-Sound will not work because it uses a very old method. It MAY work on
-a system with ALSA's OSS emulation enabled (/etc/rc.d/rc.alsa-oss). The
-OSS version on SBo (OSS4) will NOT work with this game and neither will
-aoss for ALSA users.
-
-If you're looking for wmquake's config file, it's stored in
-"~/.wmquake/id1/config.cfg".
diff --git a/games/wmquake/slack-desc b/games/wmquake/slack-desc
deleted file mode 100644
index aad346111e..0000000000
--- a/games/wmquake/slack-desc
+++ /dev/null
@@ -1,19 +0,0 @@
-# HOW TO EDIT THIS FILE:
-# The "handy ruler" below makes it easier to edit a package description.
-# Line up the first '|' above the ':' following the base package name, and
-# the '|' on the right side marks the last column you can put a character in.
-# You must make exactly 11 lines for the formatting to be correct. It's also
-# customary to leave one space after the ':' except on otherwise blank lines.
-
- |-----handy-ruler------------------------------------------------------|
-wmquake: wmquake (Quake DockApp)
-wmquake:
-wmquake: Run id Software's legendary Quake inside a dockapp! Play full on
-wmquake: software Quake, mods, or let it play demos. Fixed by Eukos for newer
-wmquake: systems.
-wmquake:
-wmquake: Homepage: http://bloodbathsoftworks.com/eukara/
-wmquake:
-wmquake:
-wmquake:
-wmquake:
diff --git a/games/wmquake/wmquake.SlackBuild b/games/wmquake/wmquake.SlackBuild
deleted file mode 100644
index fec7f4c9cb..0000000000
--- a/games/wmquake/wmquake.SlackBuild
+++ /dev/null
@@ -1,113 +0,0 @@
-#!/bin/sh
-
-# Slackware build script for wmquake
-#
-# Copyright 2015 Gethyn ThomasQuail <email removed>
-# All rights reserved.
-#
-# Based on:
-# SBo's cmake-template
-#
-# Redistribution and use of this script, with or without modification, is
-# permitted provided that the following conditions are met:
-#
-# 1. Redistributions of this script must retain the above copyright
-# notice, this list of conditions and the following disclaimer.
-#
-# THIS SOFTWARE IS PROVIDED BY THE AUTHOR ''AS IS'' AND ANY EXPRESS OR IMPLIED
-# WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE IMPLIED WARRANTIES OF
-# MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE ARE DISCLAIMED. IN NO
-# EVENT SHALL THE AUTHOR BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL,
-# SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT LIMITED TO,
-# PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, DATA, OR PROFITS;
-# OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY,
-# WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR
-# OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF THIS SOFTWARE, EVEN IF
-# ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
-
-# Now maintained by B. Watson <yalhcru@gmail.com>
-
-# 20160818 bkw:
-# - take over maintenance
-# - BUILD=2
-# - i486 => i586
-# - document the fact that this doesn't work on x86_64
-# - actually use SLKCFLAGS
-# - install binary stripped
-# - install binary in /usr/libexec, *not /usr/share*! Dammit!
-# - fix wrapper script to run in user's homedir
-
-PRGNAM=wmquake
-VERSION=${VERSION:-1.1}
-BUILD=${BUILD:-2}
-TAG=${TAG:-_SBo}
-
-if [ -z "$ARCH" ]; then
- case "$( uname -m )" in
- i?86) ARCH=i586 ;;
- arm*) ARCH=arm ;;
- *) ARCH=$( uname -m ) ;;
- esac
-fi
-
-CWD=$(pwd)
-TMP=${TMP:-/tmp/SBo}
-PKG=$TMP/package-$PRGNAM
-OUTPUT=${OUTPUT:-/tmp}
-
-if [ "$ARCH" = "i586" ]; then
- SLKCFLAGS="-O2 -march=i586 -mtune=i686"
- LIBDIRSUFFIX=""
-elif [ "$ARCH" = "i686" ]; then
- SLKCFLAGS="-O2 -march=i686 -mtune=i686"
- LIBDIRSUFFIX=""
-elif [ "$ARCH" = "x86_64" ]; then
- SLKCFLAGS="-O2 -fPIC"
- LIBDIRSUFFIX="64"
-cat <<EOF
- WARNING: $PRGNAM is known to segfault on $ARCH. Press ^C within
- 10 seconds to abort this build, or press Enter (or wait 10 sec)
- to continue.
-EOF
- read -t 10 junk
-else
- SLKCFLAGS="-O2"
- LIBDIRSUFFIX=""
-cat <<EOF
- WARNING: $PRGNAM is untested on $ARCH and probably won't work. Press ^C
- within 10 seconds to abort this build, or press Enter (or wait 10 sec)
- to continue.
-EOF
- read -t 10 junk
-fi
-
-set -e
-
-rm -rf $PKG
-mkdir -p $TMP $PKG $OUTPUT
-cd $TMP
-rm -rf $PRGNAM-$VERSION
-tar xvf $CWD/$PRGNAM-$VERSION.tar.gz
-cd $PRGNAM-$VERSION
-chown -R root:root .
-find -L . \
- \( -perm 777 -o -perm 775 -o -perm 750 -o -perm 711 -o -perm 555 \
- -o -perm 511 \) -exec chmod 755 {} \; -o \
- \( -perm 666 -o -perm 664 -o -perm 640 -o -perm 600 -o -perm 444 \
- -o -perm 440 -o -perm 400 \) -exec chmod 644 {} \;
-
-make CFLAGS="$SLKCFLAGS"
-
-mkdir -p $PKG/usr/libexec/$PRGNAM $PKG/usr/games
-install -s -m0755 $PRGNAM $PKG/usr/libexec/$PRGNAM
-install -m0755 $CWD/$PRGNAM.sh $PKG/usr/games/$PRGNAM
-
-mkdir -p $PKG/usr/doc/$PRGNAM-$VERSION
-cp -a README.* $PKG/usr/doc/$PRGNAM-$VERSION
-cat $CWD/$PRGNAM.SlackBuild > $PKG/usr/doc/$PRGNAM-$VERSION/$PRGNAM.SlackBuild
-
-mkdir -p $PKG/install
-cat $CWD/slack-desc > $PKG/install/slack-desc
-
-cd $PKG
-/sbin/makepkg -l y -c n $OUTPUT/$PRGNAM-$VERSION-$ARCH-$BUILD$TAG.${PKGTYPE:-tgz}
diff --git a/games/wmquake/wmquake.info b/games/wmquake/wmquake.info
deleted file mode 100644
index 5ba570ffd7..0000000000
--- a/games/wmquake/wmquake.info
+++ /dev/null
@@ -1,10 +0,0 @@
-PRGNAM="wmquake"
-VERSION="1.1"
-HOMEPAGE="http://www.bleusoftware.com/Linux/download-WMQuake-10006838.htm"
-DOWNLOAD="http://download.salixos.org/x86_64/extra-14.2/source/games/wmquake/wmquake-1.1.tar.gz"
-MD5SUM="e84db45c669efd6bbfced8121512245b"
-DOWNLOAD_x86_64=""
-MD5SUM_x86_64=""
-REQUIRES=""
-MAINTAINER="B. Watson"
-EMAIL="yalhcru@gmail.com"
diff --git a/games/wmquake/wmquake.sh b/games/wmquake/wmquake.sh
deleted file mode 100644
index 888c0ea461..0000000000
--- a/games/wmquake/wmquake.sh
+++ /dev/null
@@ -1,12 +0,0 @@
-#!/bin/bash
-
-mkdir -p ~/.wmquake
-if ! cd ~/.wmquake; then
- echo "Can't create ~/.wmquake" 2>&1
- exit 1
-fi
-if [ ! -e id1 ]; then
- mkdir -p id1
- ln -s /usr/share/games/quake/id1/* id1/
-fi
-exec /usr/libexec/wmquake/wmquake "$@"
diff --git a/games/wolf4sdl/README b/games/wolf4sdl/README
index ba2a6454f9..3ac421ec9e 100644
--- a/games/wolf4sdl/README
+++ b/games/wolf4sdl/README
@@ -1,8 +1,8 @@
wolf4sdl (Wolfenstein 3D engine)
-Wolf4SDL is an open-source SDL port of id Software's classic first-person
-shooter Wolfenstein 3D. It is meant to keep the original feel while
-taking advantage of some modern improvements.
+Wolf4SDL is an open-source SDL port of id Software's classic
+first-person shooter Wolfenstein 3D. It is meant to keep the original
+feel while taking advantage of some modern improvements.
This build includes the game data files from the shareware/demo versions
of Wolfenstein 3D and its sequel Spear of Destiny.
@@ -10,3 +10,10 @@ of Wolfenstein 3D and its sequel Spear of Destiny.
To play the full versions of the games, you need the *.wl*, *.sod,
and/or *.sd* files from your installed copies of the games. Copy them to
"/usr/share/games/wolf3d". Filenames must be all-lowercase.
+
+This version of Wolf4SDL has some gameplay features that make it play
+more like a modern FPS game. To try this, run e.g.
+
+$ wolf4sdl-wolf3d-demo --modern
+
+See the man page for more information.
diff --git a/games/wolf4sdl/datadir.diff.gz b/games/wolf4sdl/datadir.diff.gz
deleted file mode 100644
index c456c6539a..0000000000
--- a/games/wolf4sdl/datadir.diff.gz
+++ /dev/null
Binary files differ
diff --git a/games/wolf4sdl/desktop/wolf4sdl-spear-demo.desktop b/games/wolf4sdl/desktop/wolf4sdl-spear-demo.desktop
new file mode 100644
index 0000000000..7777b6b19c
--- /dev/null
+++ b/games/wolf4sdl/desktop/wolf4sdl-spear-demo.desktop
@@ -0,0 +1,7 @@
+[Desktop Entry]
+Type=Application
+Name=Wolf3D Spear of Destiny (Demo)
+Icon=wolf4sdl
+Exec=/usr/games/wolf4sdl-spear-demo
+Terminal=false
+Categories=Game;ActionGame;
diff --git a/games/wolf4sdl/desktop/wolf4sdl-spear-full.desktop b/games/wolf4sdl/desktop/wolf4sdl-spear-full.desktop
new file mode 100644
index 0000000000..055c3eee81
--- /dev/null
+++ b/games/wolf4sdl/desktop/wolf4sdl-spear-full.desktop
@@ -0,0 +1,7 @@
+[Desktop Entry]
+Type=Application
+Name=Wolf3D Spear of Destiny (Full Version)
+Icon=wolf4sdl
+Exec=/usr/games/wolf4sdl-spear-full
+Terminal=false
+Categories=Game;ActionGame;
diff --git a/games/wolf4sdl/desktop/wolf4sdl-wolf3d-demo.desktop b/games/wolf4sdl/desktop/wolf4sdl-wolf3d-demo.desktop
new file mode 100644
index 0000000000..9c9e850ce2
--- /dev/null
+++ b/games/wolf4sdl/desktop/wolf4sdl-wolf3d-demo.desktop
@@ -0,0 +1,7 @@
+[Desktop Entry]
+Type=Application
+Name=Wolfenstein 3D (Demo)
+Icon=wolf4sdl
+Exec=/usr/games/wolf4sdl-wolf3d-demo
+Terminal=false
+Categories=Game;ActionGame;
diff --git a/games/wolf4sdl/desktop/wolf4sdl-wolf3d-full.desktop b/games/wolf4sdl/desktop/wolf4sdl-wolf3d-full.desktop
new file mode 100644
index 0000000000..83752d7852
--- /dev/null
+++ b/games/wolf4sdl/desktop/wolf4sdl-wolf3d-full.desktop
@@ -0,0 +1,7 @@
+[Desktop Entry]
+Type=Application
+Name=Wolfenstein 3D (Full Version)
+Icon=wolf4sdl
+Exec=/usr/games/wolf4sdl-wolf3d-full
+Terminal=false
+Categories=Game;ActionGame;
diff --git a/games/wolf4sdl/doinst.sh b/games/wolf4sdl/doinst.sh
index 5fb28930db..3e5691a052 100644
--- a/games/wolf4sdl/doinst.sh
+++ b/games/wolf4sdl/doinst.sh
@@ -1,3 +1,9 @@
if [ -x /usr/bin/update-desktop-database ]; then
/usr/bin/update-desktop-database -q usr/share/applications >/dev/null 2>&1
fi
+
+if [ -e usr/share/icons/hicolor/icon-theme.cache ]; then
+ if [ -x /usr/bin/gtk-update-icon-cache ]; then
+ /usr/bin/gtk-update-icon-cache usr/share/icons/hicolor >/dev/null 2>&1
+ fi
+fi
diff --git a/games/wolf4sdl/exename.diff.gz b/games/wolf4sdl/exename.diff.gz
deleted file mode 100644
index b46b61da56..0000000000
--- a/games/wolf4sdl/exename.diff.gz
+++ /dev/null
Binary files differ
diff --git a/games/wolf4sdl/git2tarxz.sh b/games/wolf4sdl/git2tarxz.sh
new file mode 100644
index 0000000000..b3473a8ed7
--- /dev/null
+++ b/games/wolf4sdl/git2tarxz.sh
@@ -0,0 +1,52 @@
+#!/bin/sh
+
+### Containg wolf4sdl specific stuff, do not use as-is for a template!
+
+# Create source tarball from git repo, with generated version
+# number.
+
+# Note that this script doesn't need to be run as root. It does
+# need to be able to write to the current directory it's run from.
+
+# Takes one optional argument, which is the commit or tag to create
+# a tarball of. With no arg, HEAD is used.
+
+PRGNAM=wolf4sdl
+CLONE_URL=https://github.com/11001011101001011/Wolf4SDL
+
+# The version of wolf4sdl, according to the Changes.txt file. Have to
+# keep track of this manually unless upstream starts using git tags...
+# but this is an archived/readonly github project so it'll never
+# happen.
+MAINVER=2.0
+
+set -e
+
+GITDIR=$( mktemp -dt $PRGNAM.git.XXXXXX )
+rm -rf $GITDIR
+git clone $CLONE_URL $GITDIR
+
+CWD="$( pwd )"
+cd $GITDIR
+
+if [ "$1" != "" ]; then
+ git reset --hard "$1" || exit 1
+fi
+
+GIT_SHA=$( git rev-parse --short HEAD )
+
+DATE=$( git log --date=format:%Y%m%d --format=%cd | head -1 )
+
+VERSION=${MAINVER}+${DATE}_${GIT_SHA}
+
+rm -rf .git
+find . -name .gitignore -print0 | xargs -0 rm -f
+
+cd "$CWD"
+rm -rf $PRGNAM-$VERSION $PRGNAM-$VERSION.tar.xz
+mv $GITDIR $PRGNAM-$VERSION
+tar cvfJ $PRGNAM-$VERSION.tar.xz $PRGNAM-$VERSION
+
+echo
+echo "Created tarball: $PRGNAM-$VERSION.tar.xz"
+echo "VERSION=$VERSION"
diff --git a/games/wolf4sdl/icons/128.png b/games/wolf4sdl/icons/128.png
new file mode 100644
index 0000000000..018dc8de48
--- /dev/null
+++ b/games/wolf4sdl/icons/128.png
Binary files differ
diff --git a/games/wolf4sdl/icons/16.png b/games/wolf4sdl/icons/16.png
new file mode 100644
index 0000000000..7632b41ad0
--- /dev/null
+++ b/games/wolf4sdl/icons/16.png
Binary files differ
diff --git a/games/wolf4sdl/icons/22.png b/games/wolf4sdl/icons/22.png
new file mode 100644
index 0000000000..a497c24558
--- /dev/null
+++ b/games/wolf4sdl/icons/22.png
Binary files differ
diff --git a/games/wolf4sdl/icons/32.png b/games/wolf4sdl/icons/32.png
new file mode 100644
index 0000000000..8deb831fd0
--- /dev/null
+++ b/games/wolf4sdl/icons/32.png
Binary files differ
diff --git a/games/wolf4sdl/icons/48.png b/games/wolf4sdl/icons/48.png
new file mode 100644
index 0000000000..01e8c8d95f
--- /dev/null
+++ b/games/wolf4sdl/icons/48.png
Binary files differ
diff --git a/games/wolf4sdl/patches/datadir.diff b/games/wolf4sdl/patches/datadir.diff
new file mode 100644
index 0000000000..1c8e7524b7
--- /dev/null
+++ b/games/wolf4sdl/patches/datadir.diff
@@ -0,0 +1,311 @@
+diff -Naur wolf4sdl-2.0+20210408_f31f41a/Makefile wolf4sdl-2.0+20210408_f31f41a.patched/Makefile
+--- wolf4sdl-2.0+20210408_f31f41a/Makefile 2023-01-17 21:39:16.429986286 -0500
++++ wolf4sdl-2.0+20210408_f31f41a.patched/Makefile 2023-01-17 22:30:58.234400318 -0500
+@@ -20,7 +20,7 @@
+ LDFLAGS_SDL ?= $(shell $(SDL_CONFIG) --libs)
+
+
+-CFLAGS += $(CFLAGS_SDL)
++CFLAGS += -DPREFIX='"$(PREFIX)"' $(CFLAGS_SDL)
+
+ #CFLAGS += -Wall
+ #CFLAGS += -W
+@@ -87,6 +87,7 @@
+ SRCS += wl_state.c
+ SRCS += wl_text.c
+ SRCS += wl_utils.c
++SRCS += datafile.c
+
+ DEPS = $(filter %.d, $(SRCS:.c=.d) $(SRCS:.cpp=.d))
+ OBJS = $(filter %.o, $(SRCS:.c=.o) $(SRCS:.cpp=.o))
+diff -Naur wolf4sdl-2.0+20210408_f31f41a/datafile.c wolf4sdl-2.0+20210408_f31f41a.patched/datafile.c
+--- wolf4sdl-2.0+20210408_f31f41a/datafile.c 1969-12-31 19:00:00.000000000 -0500
++++ wolf4sdl-2.0+20210408_f31f41a.patched/datafile.c 2023-01-17 22:28:44.888190048 -0500
+@@ -0,0 +1,60 @@
++
++#include <stdlib.h>
++#include <unistd.h>
++#include <limits.h>
++#include <stdio.h>
++#include <sys/types.h>
++#include <sys/stat.h>
++#include <fcntl.h>
++
++#include "datafile.h"
++
++static char *datapath = NULL;
++
++static void set_data_path(void) {
++ if(datapath) return;
++ datapath = getenv("WOLF4PATH");
++ if(datapath) return;
++
++ // 20120113 bkw: should this be "C:\\WOLF3D" on Windows?
++ datapath = (char *)PREFIX "/share/games/wolf3d";
++}
++
++int datafile_exists(const char *file) {
++ char datafile[PATH_MAX];
++ struct stat statbuf;
++
++ set_data_path();
++
++ if(stat(file, &statbuf))
++ return 1;
++
++ sprintf(datafile, "%s/%s", datapath, file);
++ return stat(datafile, &statbuf);
++}
++
++int datafile_open(const char *file, int flags) {
++ char datafile[PATH_MAX];
++ int handle;
++
++ set_data_path();
++
++ if( (handle = open(file, flags)) > 0 )
++ return handle;
++
++ sprintf(datafile, "%s/%s", datapath, file);
++ return open(datafile, flags);
++}
++
++FILE *datafile_fopen(const char *file, const char *mode) {
++ char datafile[PATH_MAX];
++ FILE *f;
++
++ set_data_path();
++
++ if( (f = fopen(file, mode)) )
++ return f;
++
++ sprintf(datafile, "%s/%s", datapath, file);
++ return fopen(datafile, mode);
++}
+diff -Naur wolf4sdl-2.0+20210408_f31f41a/datafile.h wolf4sdl-2.0+20210408_f31f41a.patched/datafile.h
+--- wolf4sdl-2.0+20210408_f31f41a/datafile.h 1969-12-31 19:00:00.000000000 -0500
++++ wolf4sdl-2.0+20210408_f31f41a.patched/datafile.h 2023-01-17 22:28:44.888190048 -0500
+@@ -0,0 +1,22 @@
++
++#include <stdio.h>
++/*
++20120113 bkw:
++Functions for loading game data files.
++
++All these functions search for files in:
++
++- The current directory
++- The directory specified by $WOLF4PATH if set
++- If WOLF4PATH not set, fall back to PREFIX/share/games/wolf3d
++
++*/
++
++/* returns true if file exists in the data path, otherwise false */
++int datafile_exists(const char *file);
++
++/* returns a filehandle to the file if found, or -1 if not */
++int datafile_open(const char *file, int flags);
++
++/* returns a FILE* if found, or NULL if not */
++FILE *datafile_fopen(const char *file, const char *mode);
+diff -Naur wolf4sdl-2.0+20210408_f31f41a/id_ca.c wolf4sdl-2.0+20210408_f31f41a.patched/id_ca.c
+--- wolf4sdl-2.0+20210408_f31f41a/id_ca.c 2023-01-17 21:39:16.432986336 -0500
++++ wolf4sdl-2.0+20210408_f31f41a.patched/id_ca.c 2023-01-17 22:34:06.381518949 -0500
+@@ -24,6 +24,7 @@
+ #include <unistd.h>
+ #endif
+
++#include "datafile.h"
+ #include "wl_def.h"
+ #pragma hdrstop
+
+@@ -181,7 +182,7 @@
+ {
+ int32_t size;
+
+- const int handle = open(filename, O_RDONLY | O_BINARY);
++ const int handle = datafile_open(filename, O_RDONLY | O_BINARY);
+ if (handle == -1)
+ return false;
+
+@@ -454,7 +455,7 @@
+ strcpy(fname,gdictname);
+ strcat(fname,graphext);
+
+- handle = open(fname, O_RDONLY | O_BINARY);
++ handle = datafile_open(fname, O_RDONLY | O_BINARY);
+ if (handle == -1)
+ CA_CannotOpen(fname);
+
+@@ -465,7 +466,7 @@
+ strcpy(fname,gheadname);
+ strcat(fname,graphext);
+
+- handle = open(fname, O_RDONLY | O_BINARY);
++ handle = datafile_open(fname, O_RDONLY | O_BINARY);
+ if (handle == -1)
+ CA_CannotOpen(fname);
+
+@@ -500,7 +501,7 @@
+ strcpy(fname,gfilename);
+ strcat(fname,graphext);
+
+- grhandle = open(fname, O_RDONLY | O_BINARY);
++ grhandle = datafile_open(fname, O_RDONLY | O_BINARY);
+ if (grhandle == -1)
+ CA_CannotOpen(fname);
+
+@@ -544,7 +545,7 @@
+ strcpy(fname,mheadname);
+ strcat(fname,extension);
+
+- handle = open(fname, O_RDONLY | O_BINARY);
++ handle = datafile_open(fname, O_RDONLY | O_BINARY);
+ if (handle == -1)
+ CA_CannotOpen(fname);
+
+@@ -560,14 +561,14 @@
+ strcpy(fname, "gamemaps.");
+ strcat(fname, extension);
+
+- maphandle = open(fname, O_RDONLY | O_BINARY);
++ maphandle = datafile_open(fname, O_RDONLY | O_BINARY);
+ if (maphandle == -1)
+ CA_CannotOpen(fname);
+ #else
+ strcpy(fname,mfilename);
+ strcat(fname,extension);
+
+- maphandle = open(fname, O_RDONLY | O_BINARY);
++ maphandle = datafile_open(fname, O_RDONLY | O_BINARY);
+ if (maphandle == -1)
+ CA_CannotOpen(fname);
+ #endif
+@@ -627,7 +628,7 @@
+ strcpy(fname,afilename);
+ strcat(fname,audioext);
+
+- audiohandle = open(fname, O_RDONLY | O_BINARY);
++ audiohandle = datafile_open(fname, O_RDONLY | O_BINARY);
+ if (audiohandle == -1)
+ CA_CannotOpen(fname);
+ }
+diff -Naur wolf4sdl-2.0+20210408_f31f41a/id_pm.c wolf4sdl-2.0+20210408_f31f41a.patched/id_pm.c
+--- wolf4sdl-2.0+20210408_f31f41a/id_pm.c 2023-01-17 21:39:16.432986336 -0500
++++ wolf4sdl-2.0+20210408_f31f41a.patched/id_pm.c 2023-01-17 22:34:44.942158111 -0500
+@@ -1,5 +1,6 @@
+ // ID_PM.C
+
++#include "datafile.h"
+ #include "wl_def.h"
+
+ word ChunksInFile;
+@@ -35,7 +36,7 @@
+
+ strcat (fname,extension);
+
+- file = fopen(fname,"rb");
++ file = datafile_fopen(fname,"rb");
+
+ if (!file)
+ CA_CannotOpen(fname);
+diff -Naur wolf4sdl-2.0+20210408_f31f41a/wl_menu.c wolf4sdl-2.0+20210408_f31f41a.patched/wl_menu.c
+--- wolf4sdl-2.0+20210408_f31f41a/wl_menu.c 2023-01-17 21:39:16.439986452 -0500
++++ wolf4sdl-2.0+20210408_f31f41a.patched/wl_menu.c 2023-01-17 22:39:05.618478948 -0500
+@@ -14,6 +14,7 @@
+ #include <unistd.h>
+ #endif
+
++#include "datafile.h"
+ #include "wl_def.h"
+ #pragma hdrstop
+
+@@ -4052,11 +4053,11 @@
+ //
+ #ifdef JAPAN
+ #ifdef JAPDEMO
+- if(!stat("vswap.wj1", &statbuf))
++ if(datafile_exists("vswap.wj1"))
+ {
+ strcpy (extension, "wj1");
+ #else
+- if(!stat("vswap.wj6", &statbuf))
++ if(datafile_exists("vswap.wj6"))
+ {
+ strcpy (extension, "wj6");
+ #endif
+@@ -4076,13 +4077,13 @@
+ // ENGLISH
+ //
+ #ifdef UPLOAD
+- if(!stat("vswap.wl1", &statbuf))
++ if(datafile_exists("vswap.wl1"))
+ strcpy (extension, "wl1");
+ else
+ Quit ("NO WOLFENSTEIN 3-D DATA FILES to be found!");
+ #else
+ #ifndef SPEAR
+- if(!stat("vswap.wl6", &statbuf))
++ if(datafile_exists("vswap.wl6"))
+ {
+ strcpy (extension, "wl6");
+ NewEmenu[2].active =
+@@ -4095,14 +4096,14 @@
+ }
+ else
+ {
+- if(!stat("vswap.wl3", &statbuf))
++ if(datafile_exists("vswap.wl3"))
+ {
+ strcpy (extension, "wl3");
+ NewEmenu[2].active = NewEmenu[4].active = EpisodeSelect[1] = EpisodeSelect[2] = 1;
+ }
+ else
+ {
+- if(!stat("vswap.wl1", &statbuf))
++ if(datafile_exists("vswap.wl1"))
+ strcpy (extension, "wl1");
+ else
+ Quit ("NO WOLFENSTEIN 3-D DATA FILES to be found!");
+@@ -4116,28 +4117,28 @@
+ #ifndef SPEARDEMO
+ if(param_mission == 0)
+ {
+- if(!stat("vswap.sod", &statbuf))
++ if(datafile_exists("vswap.sod"))
+ strcpy (extension, "sod");
+ else
+ Quit ("NO SPEAR OF DESTINY DATA FILES TO BE FOUND!");
+ }
+ else if(param_mission == 1)
+ {
+- if(!stat("vswap.sd1", &statbuf))
++ if(datafile_exists("vswap.sd1"))
+ strcpy (extension, "sd1");
+ else
+ Quit ("NO SPEAR OF DESTINY DATA FILES TO BE FOUND!");
+ }
+ else if(param_mission == 2)
+ {
+- if(!stat("vswap.sd2", &statbuf))
++ if(datafile_exists("vswap.sd2"))
+ strcpy (extension, "sd2");
+ else
+ Quit ("NO SPEAR OF DESTINY DATA FILES TO BE FOUND!");
+ }
+ else if(param_mission == 3)
+ {
+- if(!stat("vswap.sd3", &statbuf))
++ if(datafile_exists("vswap.sd3"))
+ strcpy (extension, "sd3");
+ else
+ Quit ("NO SPEAR OF DESTINY DATA FILES TO BE FOUND!");
+@@ -4147,7 +4148,7 @@
+ strcpy (graphext, "sod");
+ strcpy (audioext, "sod");
+ #else
+- if(!stat("vswap.sdm", &statbuf))
++ if(datafile_exists("vswap.sdm"))
+ {
+ strcpy (extension, "sdm");
+ }
diff --git a/games/wolf4sdl/patches/exename.diff b/games/wolf4sdl/patches/exename.diff
new file mode 100644
index 0000000000..5ccaea752c
--- /dev/null
+++ b/games/wolf4sdl/patches/exename.diff
@@ -0,0 +1,32 @@
+diff -Naur wolf4sdl-2.0+20210408_f31f41a/wl_main.c wolf4sdl-2.0+20210408_f31f41a.patched/wl_main.c
+--- wolf4sdl-2.0+20210408_f31f41a/wl_main.c 2023-01-17 21:39:16.439986452 -0500
++++ wolf4sdl-2.0+20210408_f31f41a.patched/wl_main.c 2023-01-17 22:45:03.503411046 -0500
+@@ -1608,6 +1608,10 @@
+ bool hasError = false, showHelp = false;
+ bool sampleRateGiven = false, audioBufferGiven = false;
+ int i,defaultSampleRate = param_samplerate;
++ char *exename = argv[0], *p;
++
++ for (p = argv[0]; *p; p++)
++ if (*p == '/') exename = p + 1;
+
+ for(i = 1; i < argc; i++)
+ {
+@@ -1814,7 +1818,7 @@
+ "Wolf4SDL v2.0\n"
+ "Ported by Chaos-Software, additions by the community\n"
+ "Original Wolfenstein 3D by id Software\n\n"
+- "Usage: Wolf4SDL [options]\n"
++ "Usage: %s [options]\n"
+ "Options:\n"
+ " --help This help page\n"
+ " --tedlevel <level> Starts the game in the given level\n"
+@@ -1853,7 +1857,7 @@
+ " (default: 0 -> .sod, 1-3 -> .sd*)\n"
+ " --goodtimes Disable copy protection quiz\n"
+ #endif
+- , defaultSampleRate
++ , exename, defaultSampleRate
+ );
+ exit(1);
+ }
diff --git a/games/wolf4sdl/patches/gameplay.diff b/games/wolf4sdl/patches/gameplay.diff
new file mode 100644
index 0000000000..0ce1851292
--- /dev/null
+++ b/games/wolf4sdl/patches/gameplay.diff
@@ -0,0 +1,270 @@
+diff -Naur wolf4sdl-2.0+20210408_f31f41a/id_in.c wolf4sdl-2.0+20210408_f31f41a.patched/id_in.c
+--- wolf4sdl-2.0+20210408_f31f41a/id_in.c 2023-01-17 21:39:16.000000000 -0500
++++ wolf4sdl-2.0+20210408_f31f41a.patched/id_in.c 2023-01-18 03:22:12.892051206 -0500
+@@ -393,6 +393,12 @@
+ return Joystick != NULL;
+ }
+
++boolean autorun = false;
++boolean autostrafe = false;
++/* This doesn't work yet.
++boolean mw_dn = false, mw_up = false;
++*/
++
+ static void processEvent(SDL_Event *event)
+ {
+ switch (event->type)
+@@ -417,6 +423,34 @@
+
+ LastScan = event->key.keysym.sym;
+ SDL_Keymod mod = SDL_GetModState();
++
++ if ((mod & KMOD_LSHIFT) && (mod & KMOD_RSHIFT))
++ {
++ autorun = !autorun;
++
++ if (autorun)
++ Message ("Always Run: On");
++ else
++ Message ("Always Run: Off");
++
++ IN_ClearKeysDown ();
++ IN_Ack ();
++ }
++ if (((mod & KMOD_LALT) && (mod & KMOD_RALT)) ||
++ ((mod & KMOD_LALT) && (mod & KMOD_MODE)) ||
++ ((mod & KMOD_LALT) && (mod & KMOD_RSHIFT)))
++ {
++ autostrafe = !autostrafe;
++
++ if (autostrafe)
++ Message ("Always Strafe: On");
++ else
++ Message ("Always Strafe: Off");
++
++ IN_ClearKeysDown ();
++ IN_Ack ();
++ }
++
+ if(Keyboard(sc_Alt))
+ {
+ if(LastScan==SDLK_F4)
+@@ -426,6 +460,7 @@
+ if(LastScan == SDLK_KP_ENTER) LastScan = SDLK_RETURN;
+ else if(LastScan == SDLK_RSHIFT) LastScan = SDLK_LSHIFT;
+ else if(LastScan == SDLK_RALT) LastScan = SDLK_LALT;
++ else if(LastScan == SDLK_MODE) LastScan = SDLK_LALT; /* AltGr */
+ else if(LastScan == SDLK_RCTRL) LastScan = SDLK_LCTRL;
+ else
+ {
+@@ -470,6 +505,7 @@
+ if(key == SDLK_KP_ENTER) key = SDLK_RETURN;
+ else if(key == SDLK_RSHIFT) key = SDLK_LSHIFT;
+ else if(key == SDLK_RALT) key = SDLK_LALT;
++ else if(key == SDLK_MODE) key = SDLK_LALT; /* AltGr */
+ else if(key == SDLK_RCTRL) key = SDLK_LCTRL;
+ else
+ {
+@@ -497,6 +533,18 @@
+ GP2X_ButtonUp(event->jbutton.button);
+ break;
+ #endif
++
++ /*
++ case SDL_MOUSEWHEEL:
++ {
++ mw_dn = mw_up = false;
++ if (event->wheel.y < 0)
++ mw_dn = true;
++ else if(event->wheel.y > 0)
++ mw_up = true;
++ break;
++ }
++ */
+ }
+ }
+
+diff -Naur wolf4sdl-2.0+20210408_f31f41a/wl_def.h wolf4sdl-2.0+20210408_f31f41a.patched/wl_def.h
+--- wolf4sdl-2.0+20210408_f31f41a/wl_def.h 2023-01-17 21:39:16.000000000 -0500
++++ wolf4sdl-2.0+20210408_f31f41a.patched/wl_def.h 2023-01-18 03:22:12.893051223 -0500
+@@ -949,6 +949,8 @@
+ extern int param_mission;
+ extern boolean param_goodtimes;
+ extern boolean param_ignorenumchunks;
++extern boolean param_novert;
++extern boolean param_crosshair;
+
+
+ void NewGame (int difficulty, int episode);
+diff -Naur wolf4sdl-2.0+20210408_f31f41a/wl_draw.c wolf4sdl-2.0+20210408_f31f41a.patched/wl_draw.c
+--- wolf4sdl-2.0+20210408_f31f41a/wl_draw.c 2023-01-17 21:39:16.000000000 -0500
++++ wolf4sdl-2.0+20210408_f31f41a.patched/wl_draw.c 2023-01-18 03:22:12.893051223 -0500
+@@ -956,6 +956,17 @@
+ SimpleScaleShape(viewwidth/2,SPR_DEMO,viewheight+1);
+ }
+
++void DrawCrosshair (void)
++{
++ if (gamestate.victoryflag || gamestate.weapon < wp_pistol)
++ return;
++
++ const int c = (gamestate.health >= 50) ? 2 : (gamestate.health >= 25) ? 6 : 4;
++ const int h = (viewsize == 21 && ingame) ? screenHeight : screenHeight - scaleFactor * STATUSLINES;
++
++ VL_Hlin (screenWidth / 2 - scaleFactor, h / 2, 2 * scaleFactor + 1, c);
++ VL_Vlin (screenWidth / 2, h / 2 - scaleFactor, 2 * scaleFactor + 1, c);
++}
+
+ //==========================================================================
+
+@@ -1666,6 +1677,8 @@
+ #endif
+
+ DrawPlayerWeapon (); // draw player's hands
++ if (param_crosshair)
++ DrawCrosshair ();
+
+ if(Keyboard(sc_Tab) && viewsize == 21 && gamestate.weapon != -1)
+ ShowActStatus();
+diff -Naur wolf4sdl-2.0+20210408_f31f41a/wl_main.c wolf4sdl-2.0+20210408_f31f41a.patched/wl_main.c
+--- wolf4sdl-2.0+20210408_f31f41a/wl_main.c 2023-01-17 21:39:16.000000000 -0500
++++ wolf4sdl-2.0+20210408_f31f41a.patched/wl_main.c 2023-01-18 03:40:19.681065262 -0500
+@@ -102,6 +102,10 @@
+ int param_mission = 0;
+ boolean param_goodtimes = false;
+ boolean param_ignorenumchunks = false;
++boolean param_novert = false;
++boolean param_crosshair = false;
++extern boolean autorun;
++extern boolean autostrafe;
+
+ /*
+ =============================================================================
+@@ -1644,6 +1648,28 @@
+ fullscreen = false;
+ forcegrabmouse = true;
+ }
++ else IFARG("--novert")
++ {
++ param_novert = true;
++ }
++ else IFARG("--crosshair")
++ {
++ param_crosshair = true;
++ }
++ else IFARG("--strafe")
++ {
++ autostrafe = true;
++ }
++ else IFARG("--run")
++ {
++ autorun = true;
++ }
++ else IFARG("--modern")
++ {
++ autostrafe = true;
++ param_crosshair = true;
++ param_novert = true;
++ }
+ else IFARG("--res")
+ {
+ if(i + 2 >= argc)
+@@ -1824,6 +1850,11 @@
+ " --hard Sets the difficulty to hard for tedlevel\n"
+ " --nowait Skips intro screens\n"
+ " --windowed[-mouse] Starts the game in a window [and grabs mouse]\n"
++ " --novert Suppresses vertical mouse movement\n"
++ " --crosshair Shows a crosshair\n"
++ " --run Always run\n"
++ " --strafe Always strafe\n"
++ " --modern Same as --novert --crosshair --strafe\n"
+ " --res <width> <height> Sets the screen resolution\n"
+ " (must be multiple of 320x200 or 320x240)\n"
+ " --resf <w> <h> Sets any screen resolution >= 320x200\n"
+diff -Naur wolf4sdl-2.0+20210408_f31f41a/wl_play.c wolf4sdl-2.0+20210408_f31f41a.patched/wl_play.c
+--- wolf4sdl-2.0+20210408_f31f41a/wl_play.c 2023-01-17 21:39:16.000000000 -0500
++++ wolf4sdl-2.0+20210408_f31f41a.patched/wl_play.c 2023-01-18 03:22:12.894051239 -0500
+@@ -260,10 +260,19 @@
+ void PollKeyboardButtons (void)
+ {
+ int i;
++ extern boolean autorun;
+
+ for (i = 0; i < NUMBUTTONS; i++)
+ if (Keyboard(buttonscan[i]))
+ buttonstate[i] = true;
++
++ if (autorun)
++ {
++ if (Keyboard(buttonscan[bt_run]))
++ buttonstate[bt_run] = false;
++ else
++ buttonstate[bt_run] = true;
++ }
+ }
+
+
+@@ -278,6 +287,9 @@
+ void PollMouseButtons (void)
+ {
+ int buttons = IN_MouseButtons ();
++ /*
++ extern boolean mw_dn, mw_up;
++ */
+
+ if (buttons & 1)
+ buttonstate[buttonmouse[0]] = true;
+@@ -285,6 +297,14 @@
+ buttonstate[buttonmouse[1]] = true;
+ if (buttons & 4)
+ buttonstate[buttonmouse[2]] = true;
++
++ /* This doesn't work, sadly.
++ if (mw_dn)
++ buttonstate[bt_prevweapon] = true;
++ if (mw_up)
++ buttonstate[bt_nextweapon] = true;
++ mw_dn = mw_up = false;
++ */
+ }
+
+
+@@ -320,15 +340,26 @@
+ void PollKeyboardMove (void)
+ {
+ int delta = buttonstate[bt_run] ? RUNMOVE * tics : BASEMOVE * tics;
++ extern boolean autostrafe;
+
+ if (Keyboard(dirscan[di_north]))
+ controly -= delta;
+ if (Keyboard(dirscan[di_south]))
+ controly += delta;
+ if (Keyboard(dirscan[di_west]))
+- controlx -= delta;
++ {
++ if (autostrafe)
++ buttonstate[bt_strafeleft] = true;
++ else
++ controlx -= delta;
++ }
+ if (Keyboard(dirscan[di_east]))
+- controlx += delta;
++ {
++ if (autostrafe)
++ buttonstate[bt_straferight] = true;
++ else
++ controlx += delta;
++ }
+ }
+
+
+@@ -356,7 +387,8 @@
+ #endif
+
+ controlx += mousexmove * 10 / (13 - mouseadjustment);
+- controly += mouseymove * 20 / (13 - mouseadjustment);
++ if (!param_novert)
++ controly += mouseymove * 20 / (13 - mouseadjustment);
+ }
+
+
diff --git a/games/wolf4sdl/wolf4sdl-spear-demo.desktop b/games/wolf4sdl/wolf4sdl-spear-demo.desktop
deleted file mode 100644
index f887d96f7c..0000000000
--- a/games/wolf4sdl/wolf4sdl-spear-demo.desktop
+++ /dev/null
@@ -1,8 +0,0 @@
-[Desktop Entry]
-Type=Application
-Name=Wolf3D Spear of Destiny (Demo)
-Icon=wolf4sdl
-TryExec=wolf4sdl-spear-demo
-Exec=wolf4sdl-spear-demo --windowed-mouse --res 960 720
-Terminal=false
-Categories=Game;ActionGame;
diff --git a/games/wolf4sdl/wolf4sdl-spear-full.desktop b/games/wolf4sdl/wolf4sdl-spear-full.desktop
deleted file mode 100644
index 3d5ae3431f..0000000000
--- a/games/wolf4sdl/wolf4sdl-spear-full.desktop
+++ /dev/null
@@ -1,8 +0,0 @@
-[Desktop Entry]
-Type=Application
-Name=Wolf3D Spear of Destiny (Full Version)
-Icon=wolf4sdl
-TryExec=wolf4sdl-spear-full
-Exec=wolf4sdl-spear-full --windowed-mouse --res 960 720
-Terminal=false
-Categories=Game;ActionGame;
diff --git a/games/wolf4sdl/wolf4sdl-wolf3d-demo.desktop b/games/wolf4sdl/wolf4sdl-wolf3d-demo.desktop
deleted file mode 100644
index 5c01461180..0000000000
--- a/games/wolf4sdl/wolf4sdl-wolf3d-demo.desktop
+++ /dev/null
@@ -1,8 +0,0 @@
-[Desktop Entry]
-Type=Application
-Name=Wolfenstein 3D (Demo)
-Icon=wolf4sdl
-TryExec=wolf4sdl-wolf3d-demo
-Exec=wolf4sdl-wolf3d-demo --windowed-mouse --res 960 720
-Terminal=false
-Categories=Game;ActionGame;
diff --git a/games/wolf4sdl/wolf4sdl-wolf3d-full.desktop b/games/wolf4sdl/wolf4sdl-wolf3d-full.desktop
deleted file mode 100644
index 1e8a37c764..0000000000
--- a/games/wolf4sdl/wolf4sdl-wolf3d-full.desktop
+++ /dev/null
@@ -1,8 +0,0 @@
-[Desktop Entry]
-Type=Application
-Name=Wolfenstein 3D (Full Version)
-Icon=wolf4sdl
-TryExec=wolf4sdl-wolf3d-full
-Exec=wolf4sdl-wolf3d-full --windowed-mouse --res 960 720
-Terminal=false
-Categories=Game;ActionGame;
diff --git a/games/wolf4sdl/wolf4sdl.6 b/games/wolf4sdl/wolf4sdl.6
index b65e1f88df..38406c64a9 100644
--- a/games/wolf4sdl/wolf4sdl.6
+++ b/games/wolf4sdl/wolf4sdl.6
@@ -1,4 +1,4 @@
-.TH WOLF4SDL "6" "March 2010" "wolf4sdl" "Games"
+.TH WOLF4SDL "6" "January 18 2023" "2.0+" "SlackBuilds.org"
.SH NAME
Wolf4SDL \- Game engine for Wolfenstein 3D and Spear of Destiny
.SH SYNOPSIS
@@ -22,6 +22,10 @@ the original feel while taking advantage of some modern improvements.
.PP
Wolf4SDL is a game engine. To actually play the game, it requires the
data files from the original game (see \fBFILES\fR, below).
+.PP
+This man page is for the SlackBuilds.org \fBgames/wolf4sdl\fR build, which
+is based on the last available community version from \fIhttps://github.com/11001011101001011/Wolf4SDL\fR, with additional patches ported from Debian.
+
.SH OPTIONS
.TP
\fB\-\-help\fR
@@ -52,7 +56,23 @@ Starts the game in a window, without mouse support.
Starts the game in a window, with mouse support. The mouse pointer will be unable to
leave the game window.
.TP
-\fB\-\-res\fR <width> <height> Sets the screen resolution
+\fB\-\-novert\fR
+Disables vertical mouse motion (see also \fB\-\-modern\fR).
+.TP
+\fB\-\-crosshair\fR
+Shows a crosshair (see also \fB\-\-modern\fR).
+.TP
+\fB\-\-run\fR
+Always run (press both Shift keys to toggle; see also \fB\-\-modern\fR).
+.TP
+\fB\-\-strafe\fR
+Always strafe instead of turning left/right (press both Alt keys or Alt+RightShift to toggle; see also \fB\-\-modern\fR).
+.TP
+\fB\-\-modern\fR
+Same as \fB\-\-novert\fR \fB\-\-crosshair\fR \fB\-\-run\fR \fB\-\-strafe\fR.
+.TP
+\fB\-\-res\fR <width> <height>
+Sets the screen resolution
(must be multiple of 320x200 or 320x240). In fullscreen mode, the game switches
to the smallest available fullscreen mode that's equal to or larger than the
chosen resolution (e.g. 960x720 usually results in a 1024x768 display with black
@@ -110,7 +130,7 @@ Ignores the number of chunks in VGAHEAD.*
Sets the directory where game data files are searched for. When this
variable is not set, the default directory is
\fIPREFIX\fR\fB/share/games/wolf3d\fR (\fIPREFIX\fR was set at
-compile time, and defaults to /usr/local).
+compile time, and defaults to \fB/usr\fR).
.PP
Note that data files are always searched for in the current directory
first, regardless of this setting.
@@ -216,14 +236,28 @@ Right Button (#2) Strafe
Center Button (#3) Open Door
.TE
.PP
+.TS
+box;
+cB s
+lB l.
+Other Controls (non-remappable)
+Left Shift + Right Shift Toggle autorun
+Left Alt + Right Alt Toggle autostrafe
+Left Alt + Right Shift Toggle autostrafe (same as above)
+.TE
+.PP
Also, if the game was run with \fB\-\-goobers\fR (Wolf)
or \fB\-\-debugmode\fR (Spear), the standard cheat codes are
available. Remember to press Alt\-Shift\-Backspace first, and \fBbe
careful\fR not to accidentally hit Alt\-Ctrl\-Backspace instead (*boom*,
there goes your X session...)
.SH AUTHORS
-Ported by Chaos\-Software (http://www.chaos\-software.de.vu)
+Ported by Chaos\-Software: http://www.chaos\-software.de.vu
.PP
Original Wolfenstein 3D by id Software.
.PP
-This man page by B. Watson.
+The Wolf4SDL project was started by Ripper, and continued by various
+authors. See https://wl6.fandom.com/wiki/Wolf4SDL for more information.
+.PP
+This man page written for the SlackBuilds.org project
+by B. Watson, and is licensed under the WTFPL.
diff --git a/games/wolf4sdl/wolf4sdl.SlackBuild b/games/wolf4sdl/wolf4sdl.SlackBuild
index af18b12c6b..70b54d0409 100644
--- a/games/wolf4sdl/wolf4sdl.SlackBuild
+++ b/games/wolf4sdl/wolf4sdl.SlackBuild
@@ -1,15 +1,28 @@
-#!/bin/sh
+#!/bin/bash
# Slackware build script for wolf4sdl
-# Written by B. Watson (yalhcru@gmail.com)
+# Written by B. Watson (urchlay@slackware.uk)
# Licensed under the WTFPL. See http://www.wtfpl.net/txt/copying/ for details.
+# 20230117 bkw: Updated for 2.0+20210408_f31f41a, the last commit from
+# the "community" version, which uses SDL2. This script can't build
+# 1.7 any more. Also ported some of Debian's 1.7 patches to 2.0 and
+# switched the icon to theirs (it looks better at smaller sizes).
+# Updated the man page and made the .desktop files run the game fullscreen,
+# which works a lot better with SDL2.
+
+# 20230112 bkw: BUILD=3, install doinst.sh to right place (derp).
+# 20211015 bkw: BUILD=2, new-style icons.
+
+cd $(dirname $0) ; CWD=$(pwd)
+
PRGNAM=wolf4sdl
-VERSION=${VERSION:-1.7}
+VERSION=${VERSION:-2.0+20210408_f31f41a}
BUILD=${BUILD:-1}
TAG=${TAG:-_SBo}
+PKGTYPE=${PKGTYPE:-tgz}
if [ -z "$ARCH" ]; then
case "$( uname -m )" in
@@ -19,7 +32,11 @@ if [ -z "$ARCH" ]; then
esac
fi
-CWD=$(pwd)
+if [ ! -z "${PRINT_PACKAGE_NAME}" ]; then
+ echo "$PRGNAM-$VERSION-$ARCH-$BUILD$TAG.$PKGTYPE"
+ exit 0
+fi
+
TMP=${TMP:-/tmp/SBo}
PKG=$TMP/package-$PRGNAM
OUTPUT=${OUTPUT:-/tmp}
@@ -45,21 +62,36 @@ SRCNAM=Wolf4SDL
rm -rf $PKG
mkdir -p $TMP $PKG $OUTPUT
cd $TMP
-rm -rf $SRCNAM-$VERSION-src
-unzip $CWD/$SRCNAM-$VERSION-src.zip
-cd $SRCNAM-$VERSION-src
+rm -rf $PRGNAM-$VERSION
+tar xvf $CWD/$PRGNAM-$VERSION.tar.xz
+cd $PRGNAM-$VERSION
chown -R root:root .
-find -L . \
- \( -perm 777 -o -perm 775 -o -perm 750 -o -perm 711 -o -perm 555 \
- -o -perm 511 \) -exec chmod 755 {} \; -o \
- \( -perm 666 -o -perm 664 -o -perm 640 -o -perm 600 -o -perm 444 \
- -o -perm 440 -o -perm 400 \) -exec chmod 644 {} \;
+find -L . -perm /111 -a \! -perm 755 -a -exec chmod 755 {} \+ -o \
+ \! -perm /111 -a \! -perm 644 -a -exec chmod 644 {} \+
+
+# This old code has a terrifying amount of warnings, uncomment to see...
+#SLKCFLAGS+=" -Wall"
+
+# The shading looks awful. Apparently upstream agrees, since it's
+# disabled by default. If someone really wants to try it, here it is
+# as an undocumented build option.
+[ "${SHADING:-no}" = "yes" ] && SLKCFLAGS+=" -DUSE_SHADING"
# look for game data files in /usr/share/games/wolf3d
-zcat $CWD/datadir.diff.gz | patch -p1
+patch -p1 < $CWD/patches/datadir.diff
# show correct executable name in usage message (instead of Wolf4SDL)
-zcat $CWD/exename.diff.gz | patch -p1
+patch -p1 < $CWD/patches/exename.diff
+
+# 20230117 bkw: The gameplay patch was adapted from:
+# https://packages.debian.org/sid/wolf4sdl
+# It includes their novert, crosshair, autorun, and
+# autostrafe patches, ported to the 2.0 codebase (and SDL2).
+# Also added --run --strafe --modern options (see man page).
+# Didn't include shading (awful looking), pc-speaker (awful-sounding),
+# datadir (already got one), or compiler-warnings (a *lot* of work).
+# Didn't include mousewheel *yet* because I didn't get it working yet.
+patch -p1 < $CWD/patches/gameplay.diff
# don't use 'make install', do it manually.
mkdir -p $PKG/usr/games $PKG/usr/share/games/wolf3d
@@ -72,7 +104,7 @@ cat <<EOF >config.slack
CFLAGS=$SLKCFLAGS -DVERSIONALREADYCHOSEN -DCARMACIZED -DUPLOAD
EOF
make CONFIG=config.slack PREFIX=/usr
-install -m0755 -s wolf3d $PKG/usr/games/$PRGNAM-wolf-demo
+install -m0755 -s wolf4sdl $PKG/usr/games/$PRGNAM-wolf-demo
# Wolfenstein 3D 1.4 Full/Registered (GT/ID/Activision)
# NOTE: If the game complains about your data files being incompatible,
@@ -84,7 +116,7 @@ cat <<EOF >config.slack
CFLAGS=$SLKCFLAGS -DVERSIONALREADYCHOSEN -DCARMACIZED -DGOODTIMES
EOF
make CONFIG=config.slack PREFIX=/usr
-install -m0755 -s wolf3d $PKG/usr/games/$PRGNAM-wolf-full
+install -m0755 -s wolf4sdl $PKG/usr/games/$PRGNAM-wolf-full
# Spear of Destiny 1.4 Demo
make clean
@@ -92,7 +124,7 @@ cat <<EOF >config.slack
CFLAGS=$SLKCFLAGS -DVERSIONALREADYCHOSEN -DCARMACIZED -DSPEAR -DSPEARDEMO
EOF
make CONFIG=config.slack PREFIX=/usr
-install -m0755 -s wolf3d $PKG/usr/games/$PRGNAM-spear-demo
+install -m0755 -s wolf4sdl $PKG/usr/games/$PRGNAM-spear-demo
# Spear of Destiny 1.4 Full/Registered
make clean
@@ -100,7 +132,7 @@ cat <<EOF >config.slack
CFLAGS=$SLKCFLAGS -DVERSIONALREADYCHOSEN -DCARMACIZED -DSPEAR -DGOODTIMES
EOF
make CONFIG=config.slack PREFIX=/usr
-install -m0755 -s wolf3d $PKG/usr/games/$PRGNAM-spear-full
+install -m0755 -s wolf4sdl $PKG/usr/games/$PRGNAM-spear-full
# Wolfenstein 3D demo data
unzip $CWD/wolfdata.zip
@@ -113,26 +145,36 @@ mv *.sdm $PKG/usr/share/games/wolf3d
chmod 644 $PKG/usr/share/games/wolf3d/*.sdm
# man page written for this build
-mkdir -p $PKG/usr/man/man6
-gzip -9c < $CWD/$PRGNAM.6 > $PKG/usr/man/man6/$PRGNAM.6.gz
-ln -s $PRGNAM.6.gz $PKG/usr/man/man6/$PRGNAM-wolf-demo.6.gz
-ln -s $PRGNAM.6.gz $PKG/usr/man/man6/$PRGNAM-wolf-full.6.gz
-ln -s $PRGNAM.6.gz $PKG/usr/man/man6/$PRGNAM-spear-demo.6.gz
-ln -s $PRGNAM.6.gz $PKG/usr/man/man6/$PRGNAM-spear-full.6.gz
-
-# icon came from gods know where (somewhere on upstream site)
-# .desktop files written for this build
+PKGMAN6=$PKG/usr/man/man6
+mkdir -p $PKGMAN6
+gzip -9c < $CWD/$PRGNAM.6 > $PKGMAN6/$PRGNAM.6.gz
+for i in {wolf,spear}-{demo,full}; do
+ ln -s $PRGNAM.6.gz $PKGMAN6/$PRGNAM-$i.6.gz
+done
+
+# Icons created from the Debian SVG icon, with rsvg-convert.
+# Don't install 256x256 or 512x512 icons.
+for i in $CWD/icons/*.png; do
+ px=$( basename $i | cut -d. -f1 )
+ size=${px}x${px}
+ dir=$PKG/usr/share/icons/hicolor/$size/apps
+ mkdir -p $dir
+ cat $i > $dir/$PRGNAM.png
+done
+
mkdir -p $PKG/usr/share/applications $PKG/usr/share/pixmaps
-cp $CWD/*.desktop $PKG/usr/share/applications/
-cat $CWD/$PRGNAM.png > $PKG/usr/share/pixmaps/$PRGNAM.png
+ln -s ../icons/hicolor/48x48/apps/$PRGNAM.png $PKG/usr/share/pixmaps/$PRGNAM.png
+
+# .desktop files written for this build.
+install -m0644 -oroot -groot $CWD/desktop/*.desktop $PKG/usr/share/applications/
mkdir -p $PKG/usr/doc/$PRGNAM-$VERSION
-cp -a Changes.txt README.txt license-*.txt $PKG/usr/doc/$PRGNAM-$VERSION
+cp -a Changes.txt README.TXT license-*.txt $PKG/usr/doc/$PRGNAM-$VERSION
cat $CWD/$PRGNAM.SlackBuild > $PKG/usr/doc/$PRGNAM-$VERSION/$PRGNAM.SlackBuild
-cat $CWD/doinst.sh > $PKG/usr/doc/$PRGNAM-$VERSION/doinst.sh
mkdir -p $PKG/install
cat $CWD/slack-desc > $PKG/install/slack-desc
+cat $CWD/doinst.sh > $PKG/install/doinst.sh
cd $PKG
-/sbin/makepkg -l y -c n $OUTPUT/$PRGNAM-$VERSION-$ARCH-$BUILD$TAG.${PKGTYPE:-tgz}
+/sbin/makepkg -l y -c n $OUTPUT/$PRGNAM-$VERSION-$ARCH-$BUILD$TAG.$PKGTYPE
diff --git a/games/wolf4sdl/wolf4sdl.info b/games/wolf4sdl/wolf4sdl.info
index 67fbbd21e6..c515e9fbc5 100644
--- a/games/wolf4sdl/wolf4sdl.info
+++ b/games/wolf4sdl/wolf4sdl.info
@@ -1,14 +1,14 @@
PRGNAM="wolf4sdl"
-VERSION="1.7"
-HOMEPAGE="https://github.com/mozzwald/wolf4sdl"
-DOWNLOAD="https://slackware.uk/~urchlay/src/Wolf4SDL-1.7-src.zip \
- http://downloads.sourceforge.net/project/wolfgl/Data/Demo/wolfdata.zip \
- http://downloads.sourceforge.net/project/wolfgl/Data/Demo/sdmdata.zip"
-MD5SUM="303f340598bfbe3440523c1ddb9f52e8 \
+VERSION="2.0+20210408_f31f41a"
+HOMEPAGE="https://wl6.fandom.com/wiki/Wolf4SDL"
+DOWNLOAD="https://slackware.uk/~urchlay/src/wolf4sdl-2.0+20210408_f31f41a.tar.xz \
+ https://downloads.sourceforge.net/project/wolfgl/Data/Demo/wolfdata.zip \
+ https://downloads.sourceforge.net/project/wolfgl/Data/Demo/sdmdata.zip"
+MD5SUM="7efa65b8afbaea5581969687704f4763 \
bc4564940cae816aec0f4af0b8436baf \
0aa1f89a8f5ddef700613b0f428fd8b0"
DOWNLOAD_x86_64=""
MD5SUM_x86_64=""
REQUIRES=""
MAINTAINER="B. Watson"
-EMAIL="yalhcru@gmail.com"
+EMAIL="urchlay@slackware.uk"
diff --git a/games/wolf4sdl/wolf4sdl.png b/games/wolf4sdl/wolf4sdl.png
deleted file mode 100644
index ddd8ffe767..0000000000
--- a/games/wolf4sdl/wolf4sdl.png
+++ /dev/null
Binary files differ
diff --git a/games/wolfmame/README b/games/wolfmame/README
new file mode 100644
index 0000000000..998b758ecc
--- /dev/null
+++ b/games/wolfmame/README
@@ -0,0 +1,12 @@
+WolfMAME is a fork of MAME that does not allow pausing, and has other
+security features which facilitate the recording of achievements in
+arcade games.
+
+Users recorded .inp files will be placed in /opt/wolfmame/inp
+
+To speed up compilation, you may use "export MAKEFLAGS=-j4" before
+building, where 4 is the number of cores on your system.
+
+Note that ccache is used by default. To turn off ccache support, use:
+
+ USE_CCACHE=no ./wolfmame.SlackBuild
diff --git a/games/wolfmame/doinst.sh b/games/wolfmame/doinst.sh
new file mode 100644
index 0000000000..5fb28930db
--- /dev/null
+++ b/games/wolfmame/doinst.sh
@@ -0,0 +1,3 @@
+if [ -x /usr/bin/update-desktop-database ]; then
+ /usr/bin/update-desktop-database -q usr/share/applications >/dev/null 2>&1
+fi
diff --git a/games/wolfmame/slack-desc b/games/wolfmame/slack-desc
new file mode 100644
index 0000000000..b908517b56
--- /dev/null
+++ b/games/wolfmame/slack-desc
@@ -0,0 +1,19 @@
+# HOW TO EDIT THIS FILE:
+# The "handy ruler" below makes it easier to edit a package description.
+# Line up the first '|' above the ':' following the base package name, and
+# the '|' on the right side marks the last column you can put a character in.
+# You must make exactly 11 lines for the formatting to be correct. It's also
+# customary to leave one space after the ':' except on otherwise blank lines.
+
+ |-----handy-ruler------------------------------------------------------|
+wolfmame: wolfmame (A secure fork of MAME)
+wolfmame:
+wolfmame: WolfMAME is a fork of the MAME project with extra features
+wolfmame: specifically for the recording of high scores, speed runs, etc.
+wolfmame: (e.g. it prevents pausing, and prevents cheating in other ways.)
+wolfmame:
+wolfmame:
+wolfmame:
+wolfmame:
+wolfmame:
+wolfmame:
diff --git a/games/wolfmame/wolfmame b/games/wolfmame/wolfmame
new file mode 100644
index 0000000000..3a38899a52
--- /dev/null
+++ b/games/wolfmame/wolfmame
@@ -0,0 +1,22 @@
+#!/bin/sh
+# Slackware wrapper for the wolfmame mame executable.
+runme(){
+ cd /opt/wolfmame
+ ./mame "$@"
+}
+
+if [ $UID == 0 ]; then
+ read -p "You are currently running as root...\
+ Are you sure you want to proceed? (N/y): " resp
+ case "$resp" in
+ y|yes)
+ runme
+ ;;
+ *)
+ echo Exiting
+ exit 0
+ ;;
+ esac
+else
+ runme $@
+fi
diff --git a/games/wolfmame/wolfmame.SlackBuild b/games/wolfmame/wolfmame.SlackBuild
new file mode 100644
index 0000000000..60b7b42e6d
--- /dev/null
+++ b/games/wolfmame/wolfmame.SlackBuild
@@ -0,0 +1,140 @@
+#!/bin/bash
+
+# Slackware build script for wolfmame
+
+# Copyright 2021 David Ferrone RI, USA
+# All rights reserved.
+
+# Redistribution and use of this script, with or without modification, is
+# permitted provided that the following conditions are met:
+#
+# 1. Redistributions of this script must retain the above copyright
+# notice, this list of conditions and the following disclaimer.
+#
+# THIS SOFTWARE IS PROVIDED BY THE AUTHOR "AS IS" AND ANY EXPRESS OR IMPLIED
+# WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE IMPLIED WARRANTIES OF
+# MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE ARE DISCLAIMED. IN NO
+# EVENT SHALL THE AUTHOR BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL,
+# SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT LIMITED TO,
+# PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, DATA, OR PROFITS;
+# OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY,
+# WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR
+# OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF THIS SOFTWARE, EVEN IF
+# ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
+cd $(dirname $0) ; CWD=$(pwd)
+PRGNAM=wolfmame
+VERSION=${VERSION:-0.263}
+WOLFVER=wolf${VERSION#0.}
+BUILD=${BUILD:-1}
+TAG=${TAG:-_SBo}
+PKGTYPE=${PKGTYPE:-tgz}
+
+if [ -z "$ARCH" ]; then
+ case "$( uname -m )" in
+ i?86) ARCH=i586 ;; ## Unknown if this builds on a 32bit machine.
+ arm*) ARCH=arm ;;
+ *) ARCH=$( uname -m ) ;;
+ esac
+fi
+
+# If the variable PRINT_PACKAGE_NAME is set, then this script will report what
+# the name of the created package would be, and then exit. This information
+# could be useful to other scripts.
+if [ ! -z "${PRINT_PACKAGE_NAME}" ]; then
+ echo "$PRGNAM-$VERSION-$ARCH-$BUILD$TAG.$PKGTYPE"
+ exit 0
+fi
+
+TMP=${TMP:-/tmp/SBo}
+PKG=$TMP/package-$PRGNAM
+OUTPUT=${OUTPUT:-/tmp}
+
+if [ "$ARCH" = "i586" ]; then
+ SLKCFLAGS="-O2 -march=i586 -mtune=i686"
+ LIBDIRSUFFIX=""
+elif [ "$ARCH" = "i686" ]; then
+ SLKCFLAGS="-O2 -march=i686 -mtune=i686"
+ LIBDIRSUFFIX=""
+elif [ "$ARCH" = "x86_64" ]; then
+ SLKCFLAGS="-O2 -fPIC"
+ LIBDIRSUFFIX="64"
+else
+ SLKCFLAGS="-O2"
+ LIBDIRSUFFIX=""
+fi
+
+set -e
+
+rm -rf $PKG
+mkdir -p $TMP $PKG/opt $OUTPUT
+cd $PKG/opt
+# Rename the output directory name as it's extracted.
+tar xvf $CWD/$PRGNAM-$WOLFVER.tar.gz --xform="s/^$PRGNAM-$WOLFVER/$PRGNAM/"
+chown -R root:root .
+find -L . \
+ \( -perm 777 -o -perm 775 -o -perm 750 -o -perm 711 -o -perm 555 \
+ -o -perm 511 \) -exec chmod 755 {} \; -o \
+ \( -perm 666 -o -perm 664 -o -perm 640 -o -perm 600 -o -perm 444 \
+ -o -perm 440 -o -perm 400 \) -exec chmod 644 {} \;
+
+cd $PKG/opt/$PRGNAM
+
+# The following and make options are from mame slackbuild
+# Use ccache by default - massively cuts down on rebuild time
+# Tun off with USE_CCACHE=no
+export CCACHE_SLOPPINESS=pch_defines,time_macros,include_file_mtime,include_file_ctime
+
+if [ "${USE_CCACHE:-yes}" = "yes" ]; then
+ CC="/usr/bin/ccache /usr/bin/clang"
+ CXX="/usr/bin/ccache /usr/bin/clang++"
+else
+ CC="${CC:-$( which gcc )}"
+ CXX="${CXX:-$( which g++ )}"
+fi
+
+# See top of makefile for full list of options
+make \
+ USE_SYSTEM_LIB_EXPAT=1 \
+ USE_SYSTEM_LIB_ZLIB=1 \
+ USE_SYSTEM_LIB_JPEG=1 \
+ USE_SYSTEM_LIB_FLAC=1 \
+ PYTHON_EXECUTABLE="/usr/bin/python3 -S" \
+ OPT_FLAGS="$SLKCFLAGS" \
+ LDOPTS="-fuse-ld=gold" \
+ OVERRIDE_CC="$CC" \
+ OVERRIDE_CXX="$CXX" \
+ CC="$CC" \
+ CXX="$CXX" \
+ PRECOMPILE=1 \
+ ARCH="" \
+ VERBOSE=1
+
+
+find $PKG -print0 | xargs -0 file | grep -e "executable" -e "shared object" | grep ELF \
+ | cut -f 1 -d : | xargs strip --strip-unneeded 2> /dev/null || true
+
+# Make directory for recording .inp files (if errors try -m 777)
+# Make cfg directory, allowing users to save configuration of controllers, etc.
+install -d -o games -g users -m g+rwx inp cfg
+
+# Install wrapper script and .desktop files
+install -D -m 0755 $CWD/$PRGNAM -t $PKG/usr/bin/
+install -D -m 0644 $CWD/$PRGNAM.desktop -t $PKG/usr/share/applications/
+install -D -m 0644 $CWD/$PRGNAM.png -t $PKG/usr/share/pixmaps/
+
+# Install man pages and gzip
+install -D -m 0644 docs/man/*.1 -t $PKG/usr/man/man1/
+install -D -m 0644 docs/man/*.6 -t $PKG/usr/man/man6/
+gzip -9 $PKG/usr/man/man*/*.{1,6}
+
+mkdir -p $PKG/usr/doc/$PRGNAM-$VERSION
+cp -a COPYING wolfmame.txt docs/LICENSE docs/README.md \
+ $PKG/usr/doc/$PRGNAM-$VERSION
+cat $CWD/$PRGNAM.SlackBuild > $PKG/usr/doc/$PRGNAM-$VERSION/$PRGNAM.SlackBuild
+
+mkdir -p $PKG/install
+cat $CWD/slack-desc > $PKG/install/slack-desc
+cat $CWD/doinst.sh > $PKG/install/doinst.sh
+
+cd $PKG
+/sbin/makepkg -l y -c n $OUTPUT/$PRGNAM-$VERSION-$ARCH-$BUILD$TAG.$PKGTYPE
diff --git a/games/wolfmame/wolfmame.desktop b/games/wolfmame/wolfmame.desktop
new file mode 100644
index 0000000000..a2ee8032a5
--- /dev/null
+++ b/games/wolfmame/wolfmame.desktop
@@ -0,0 +1,6 @@
+[Desktop Entry]
+Type=Application
+Terminal=false
+Exec=/usr/bin/wolfmame
+Name=WolfMAME
+Icon=wolfmame
diff --git a/games/wolfmame/wolfmame.info b/games/wolfmame/wolfmame.info
new file mode 100644
index 0000000000..4236bf3c6f
--- /dev/null
+++ b/games/wolfmame/wolfmame.info
@@ -0,0 +1,10 @@
+PRGNAM="wolfmame"
+VERSION="0.263"
+HOMEPAGE="https://github.com/mahlemiut/wolfmame/releases/latest"
+DOWNLOAD="https://github.com/mahlemiut/wolfmame/archive/wolf263/wolfmame-wolf263.tar.gz"
+MD5SUM="0143beb1878c2042a9cb0903f99197db"
+DOWNLOAD_x86_64=""
+MD5SUM_x86_64=""
+REQUIRES=""
+MAINTAINER="David Ferrone"
+EMAIL="zapwai@gmail.com"
diff --git a/games/wolfmame/wolfmame.png b/games/wolfmame/wolfmame.png
new file mode 100644
index 0000000000..d8e20f2b36
--- /dev/null
+++ b/games/wolfmame/wolfmame.png
Binary files differ
diff --git a/games/wordwarvi/wordwarvi.SlackBuild b/games/wordwarvi/wordwarvi.SlackBuild
index 9fba3c69d8..e00930f81a 100644
--- a/games/wordwarvi/wordwarvi.SlackBuild
+++ b/games/wordwarvi/wordwarvi.SlackBuild
@@ -1,17 +1,22 @@
-#!/bin/sh
+#!/bin/bash
# Slackware build script for wordwarvi
-# Written by B. Watson (yalhcru@gmail.com)
+# Written by B. Watson (urchlay@slackware.uk)
# Licensed under the WTFPL. See http://www.wtfpl.net/txt/copying/ for details.
+# 20211015 bkw: BUILD=2, new-style icons
+# 20210224 bkw: update for v1.0.4
# 20170302 bkw: use long-format github URL, add .desktop, BUILD=2
+cd $(dirname $0) ; CWD=$(pwd)
+
PRGNAM=wordwarvi
-VERSION=${VERSION:-1.0.2}
-BUILD=${BUILD:-2}
+VERSION=${VERSION:-1.0.4}
+BUILD=${BUILD:-1}
TAG=${TAG:-_SBo}
+PKGTYPE=${PKGTYPE:-tgz}
if [ -z "$ARCH" ]; then
case "$( uname -m )" in
@@ -21,7 +26,11 @@ if [ -z "$ARCH" ]; then
esac
fi
-CWD=$(pwd)
+if [ ! -z "${PRINT_PACKAGE_NAME}" ]; then
+ echo "$PRGNAM-$VERSION-$ARCH-$BUILD$TAG.$PKGTYPE"
+ exit 0
+fi
+
TMP=${TMP:-/tmp/SBo}
PKG=$TMP/package-$PRGNAM
OUTPUT=${OUTPUT:-/tmp}
@@ -49,18 +58,23 @@ rm -rf $PRGNAM-$VERSION
tar xvf $CWD/$PRGNAM-$VERSION.tar.gz
cd $PRGNAM-$VERSION
chown -R root:root .
-find -L . \
- \( -perm 777 -o -perm 775 -o -perm 750 -o -perm 711 -o -perm 555 \
- -o -perm 511 \) -exec chmod 755 {} \; -o \
- \( -perm 666 -o -perm 664 -o -perm 640 -o -perm 600 -o -perm 444 \
- -o -perm 440 -o -perm 400 \) -exec chmod 644 {} \;
+find -L . -perm /111 -a \! -perm 755 -a -exec chmod 755 {} \+ -o \
+ \! -perm /111 -a \! -perm 644 -a -exec chmod 644 {} \+
make OPTIMIZE_FLAG="$SLKCFLAGS" MANDIR=/usr/man SCREENSAVERFLAG=-DDO_INHIBIT_SCREENSAVER
make install MANDIR=/usr/man DESTDIR=$PKG
strip $PKG/usr/games/$PRGNAM
mkdir -p $PKG/usr/share/pixmaps $PKG/usr/share/applications
-cat icons/${PRGNAM}_icon_128x128.png > $PKG/usr/share/pixmaps/$PRGNAM.png
+for i in icons/$PRGNAM*.png; do
+ px=$( basename $i | sed 's,.*_\([0-9][0-9]*\)x.*,\1,' )
+ size=${px}x${px}
+ dir=$PKG/usr/share/icons/hicolor/$size/apps
+ mkdir -p $dir
+ cat $i > $dir/$PRGNAM.png
+done
+
+ln -s ../icons/hicolor/48x48/apps/$PRGNAM.png $PKG/usr/share/pixmaps/$PRGNAM.png
cat $CWD/$PRGNAM.desktop > $PKG/usr/share/applications/$PRGNAM.desktop
mkdir -p $PKG/usr/doc/$PRGNAM-$VERSION
@@ -72,4 +86,4 @@ cat $CWD/slack-desc > $PKG/install/slack-desc
cat $CWD/doinst.sh > $PKG/install/doinst.sh
cd $PKG
-/sbin/makepkg -l y -c n $OUTPUT/$PRGNAM-$VERSION-$ARCH-$BUILD$TAG.${PKGTYPE:-tgz}
+/sbin/makepkg -l y -c n $OUTPUT/$PRGNAM-$VERSION-$ARCH-$BUILD$TAG.$PKGTYPE
diff --git a/games/wordwarvi/wordwarvi.desktop b/games/wordwarvi/wordwarvi.desktop
index 5db69ac69d..b212402cee 100644
--- a/games/wordwarvi/wordwarvi.desktop
+++ b/games/wordwarvi/wordwarvi.desktop
@@ -2,6 +2,6 @@
Name=Word War VI
Type=Application
Categories=Game;ArcadeGame;
-Exec=wordwarvi %F
+Exec=/usr/games/wordwarvi %F
TryExec=wordwarvi
Icon=wordwarvi
diff --git a/games/wordwarvi/wordwarvi.info b/games/wordwarvi/wordwarvi.info
index 2ee105d536..109ff99aa2 100644
--- a/games/wordwarvi/wordwarvi.info
+++ b/games/wordwarvi/wordwarvi.info
@@ -1,10 +1,10 @@
PRGNAM="wordwarvi"
-VERSION="1.0.2"
+VERSION="1.0.4"
HOMEPAGE="https://github.com/smcameron/wordwarvi"
-DOWNLOAD="https://github.com/smcameron/wordwarvi/archive/v1.0.2/wordwarvi-1.0.2.tar.gz"
-MD5SUM="c55fad24f42ad2be0e06ac70f5fbc0be"
+DOWNLOAD="https://github.com/smcameron/wordwarvi/archive/v1.0.4/wordwarvi-1.0.4.tar.gz"
+MD5SUM="3b25d6cc973cdba85db37266b73de950"
DOWNLOAD_x86_64=""
MD5SUM_x86_64=""
REQUIRES="portaudio"
MAINTAINER="B. Watson"
-EMAIL="yalhcru@gmail.com"
+EMAIL="urchlay@slackware.uk"
diff --git a/games/worldofgoo/README b/games/worldofgoo/README
index ed68331245..989ccb4826 100644
--- a/games/worldofgoo/README
+++ b/games/worldofgoo/README
@@ -1,5 +1,5 @@
-World of Goo is a physics based puzzle / construction game. The millions of
-Goo Balls who live in the beautiful World of Goo don't know that they are in
-a game, or that they are extremely delicious.
+World of Goo is a physics based puzzle / construction game. The
+millions of Goo Balls who live in the beautiful World of Goo don't
+know that they are in a game, or that they are extremely delicious.
This is only a repackaging of the binary demo version.
diff --git a/games/worldofgoo/worldofgoo.SlackBuild b/games/worldofgoo/worldofgoo.SlackBuild
index 871017ac08..3e366ac8d4 100644
--- a/games/worldofgoo/worldofgoo.SlackBuild
+++ b/games/worldofgoo/worldofgoo.SlackBuild
@@ -1,4 +1,4 @@
-#!/bin/sh
+#!/bin/bash
# Slackware build script for World of Goo (demo).
@@ -22,11 +22,14 @@
# OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF THIS SOFTWARE, EVEN IF
# ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
+cd $(dirname $0) ; CWD=$(pwd)
+
PRGNAM=worldofgoo
SRCNAM=WorldOfGooDemo
VERSION=${VERSION:-1.41}
BUILD=${BUILD:-1}
TAG=${TAG:-_SBo}
+PKGTYPE=${PKGTYPE:-tgz}
if [ -z "$ARCH" ]; then
case "$( uname -m )" in
@@ -36,7 +39,14 @@ if [ -z "$ARCH" ]; then
esac
fi
-CWD=$(pwd)
+# If the variable PRINT_PACKAGE_NAME is set, then this script will report what
+# the name of the created package would be, and then exit. This information
+# could be useful to other scripts.
+if [ ! -z "${PRINT_PACKAGE_NAME}" ]; then
+ echo "$PRGNAM-$VERSION-$ARCH-$BUILD$TAG.$PKGTYPE"
+ exit 0
+fi
+
TMP=${TMP:-/tmp/SBo}
PKG=$TMP/package-$PRGNAM
OUTPUT=${OUTPUT:-/tmp}
@@ -100,4 +110,4 @@ cat $CWD/slack-desc > $PKG/install/slack-desc
cat $CWD/doinst.sh > $PKG/install/doinst.sh
cd $PKG
-/sbin/makepkg -l y -c n $OUTPUT/$PRGNAM-$VERSION-$ARCH-$BUILD$TAG.${PKGTYPE:-tgz}
+/sbin/makepkg -l y -c n $OUTPUT/$PRGNAM-$VERSION-$ARCH-$BUILD$TAG.$PKGTYPE
diff --git a/games/worldofgoo/worldofgoo.info b/games/worldofgoo/worldofgoo.info
index 0d9061e45e..55a00977fe 100644
--- a/games/worldofgoo/worldofgoo.info
+++ b/games/worldofgoo/worldofgoo.info
@@ -6,5 +6,5 @@ MD5SUM="2a490524ae2cfd11fcb2e052dfe47d4e"
DOWNLOAD_x86_64=""
MD5SUM_x86_64=""
REQUIRES=""
-MAINTAINER="Gerardo Zamudio"
-EMAIL="gerardo.zamudio@linux.com"
+MAINTAINER="Erich Ritz"
+EMAIL="erich.public@protonmail.com"
diff --git a/games/worldofpadman/worldofpadman.SlackBuild b/games/worldofpadman/worldofpadman.SlackBuild
index 088234b464..29b81315e5 100644
--- a/games/worldofpadman/worldofpadman.SlackBuild
+++ b/games/worldofpadman/worldofpadman.SlackBuild
@@ -1,4 +1,4 @@
-#!/bin/sh
+#!/bin/bash
# Slackware build script for worldofpadman
@@ -22,22 +22,46 @@
# OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF THIS SOFTWARE, EVEN IF
# ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
+# 20220427 bkw: Modified by SlackBuilds.org, BUILD=2:
+# - don't install both 32-bit and 64-bit binaries (rm the ones
+# not needed for the current ARCH).
+# - don't install windows .ico or mac .icns icons.
+# - new-style icons (multiple sizes, plus scalable).
+# - wrapper executables in /usr/games, so people can launch them
+# from the command line without knowing the full path in /opt.
+# - fix .desktop file (this isn't a Qt nor KDE app).
+
+cd $(dirname $0) ; CWD=$(pwd)
+
PRGNAM=worldofpadman
VERSION=${VERSION:-1.6}
-BUILD=${BUILD:-1}
+BUILD=${BUILD:-2}
TAG=${TAG:-_SBo}
+PKGTYPE=${PKGTYPE:-tgz}
SRCVER=${SRCVER:-1.5}
PATCHVER=$VERSION
if [ -z "$ARCH" ]; then
case "$( uname -m )" in
- i?86) ARCH=i386 ;;
- x86_64) ARCH=x86_64 ;;
- *) echo "Architecture $(uname -m) not suported" && exit 1 ;;
+ i?86) ARCH=i586 ;;
+ *) ARCH=$( uname -m ) ;;
esac
fi
-CWD=$(pwd)
+if [ "$ARCH" = "x86_64" ]; then
+ SRCARCH=$ARCH
+elif [[ $ARCH =~ i?86 ]]; then
+ SRCARCH=i386
+else
+ echo "$ARCH architecture is unsupported." >/dev/stderr
+ exit 1
+fi
+
+if [ ! -z "${PRINT_PACKAGE_NAME}" ]; then
+ echo "$PRGNAM-$VERSION-$ARCH-$BUILD$TAG.$PKGTYPE"
+ exit 0
+fi
+
TMP=${TMP:-/tmp/SBo}
PKG=$TMP/package-$PRGNAM
OUTPUT=${OUTPUT:-/tmp}
@@ -55,52 +79,64 @@ unzip $CWD/*$SRCVER-unified.zip
# Patch the new version if available
if [ -f $CWD/*$PATCHVER-patch-unified.zip ]; then
unzip -o $CWD/*$PATCHVER-patch-unified.zip
-else
- VERSION=$SRCVER
fi
cd $PKG
chown -R root:root .
-# Fix permissions
-find . -type d -exec chmod 0755 {} \;
-find -L . \
- \( -perm 777 -o -perm 775 -o -perm 750 -o -perm 711 -o -perm 555 -o -perm 511 \) \
- -exec chmod 755 {} \; -o \
- \( -perm 666 -o -perm 664 -o -perm 600 -o -perm 444 -o -perm 440 -o -perm 400 \) \
- -exec chmod 644 {} \;
-find ./opt/ -type f -name *.i386 -exec chmod +x {} \;
-find ./opt/ -type f -name *.x86_64 -exec chmod +x {} \;
-
-# Copy icons to /usr/share/icons
-mkdir -p $PKG/usr/share/icons/hicolor/32x32/apps
-install -D $PKG/opt/$PRGNAM/XTRAS/*.ico \
- $PKG/usr/share/icons/hicolor/32x32/apps
-convert $PKG/usr/share/icons/hicolor/32x32/apps/wop.ico \
- $PKG/usr/share/icons/hicolor/32x32/apps/wop.png
+# 20220428 bkw: fix permissions, remove what we don't need:
+find . -type d -exec chmod 0755 {} \+
+find . -type f -exec chmod 0644 {} \+
+cd $PKG/opt/$PRGNAM
+if [ "$ARCH" = "x86_64" ]; then
+ rm -f *i386*
+else
+ rm -f *x86_64*
+fi
+rm -rf *.exe *.dll wop.app # windows and mac stuff, don't need
+chmod +x *.so wop.* wopded.*
+
+# 20220428 bkw: XTRAS is mostly documentation, plus icons.
+# interestingly enough, the documentation includes the source.
+cd XTRAS
+
+for px in 16 32 48 64 128; do
+ size=${px}x${px}
+ dir=$PKG/usr/share/icons/hicolor/$size/apps
+ mkdir -p $dir
+ convert -background none -geometry $size icon.svg $dir/$PRGNAM.png
+done
+mkdir -p $PKG/usr/share/icons/hicolor/scalable/apps
+mv icon.svg $PKG/usr/share/icons/hicolor/scalable/apps/$PRGNAM.svg
+
+# 20220428 bkw: don't need windows and mac icons.
+rm -f *.ico *.icns
+
+# 20220428 bkw: what's left is just docs, move it to correct Slackware dir.
+cd ..
+PKGDOC=$PKG/usr/doc/$PRGNAM-$VERSION
+mkdir -p $PKGDOC
+mv XTRAS/* $PKGDOC
+rm -rf XTRAS
+cat $CWD/$PRGNAM.SlackBuild > $PKGDOC/$PRGNAM.SlackBuild
# Install a .desktop launcher:
mkdir -p $PKG/usr/share/applications
cat $CWD/worldofpadman.desktop > $PKG/usr/share/applications/worldofpadman.desktop
-# Let's take care of documentation
-mkdir -p $PKG/usr/doc/$PRGNAM-$VERSION
-mkdir -p $PKG/usr/doc/$PRGNAM-$VERSION/editing\ files
-cp -r $PKG/opt/$PRGNAM/XTRAS/readme/* $PKG/usr/doc/$PRGNAM-$VERSION
-cp -r $PKG/opt/$PRGNAM/XTRAS/editing\ files/* $PKG/usr/doc/$PRGNAM-$VERSION/editing\ files
-cp $PKG/opt/$PRGNAM/XTRAS/*.txt $PKG/usr/doc/$PRGNAM-$VERSION
-
-# Create symlinks
-case $ARCH in
- i386)
- ln -s /opt/worldofpadman/wop.i386 $PKG/opt/worldofpadman/padman
- ln -s /opt/worldofpadman/wopded.i386 $PKG/opt/worldofpadman/wopded
- ;;
- x86_64)
- ln -s /opt/worldofpadman/wop.x86_64 $PKG/opt/worldofpadman/padman
- ln -s /opt/worldofpadman/wopded.x86_64 $PKG/opt/worldofpadman/wopded
- ;;
-esac
+# 20220428 bkw: wrapper scripts. this allows CLI users to run the game
+# or server by typing "wop" or "wopded", and keeps us from having to
+# change the .desktop file for different ARCHes.
+mkdir -p $PKG/usr/games
+for exe in wop wopded; do
+ sed -e "s,@SRCARCH@,$SRCARCH,g" -e "s,@EXE@,$exe,g" \
+ < $CWD/wrapper.sh \
+ > $PKG/usr/games/$exe
+ chmod 0755 $PKG/usr/games/$exe
+done
+
+# 20220428 bkw: for compatibility with previous version of this script:
+ln -s wop $PKG/usr/games/padman
mkdir -p $PKG/install
cat $CWD/slack-desc > $PKG/install/slack-desc
@@ -108,4 +144,4 @@ cat $CWD/doinst.sh > $PKG/install/doinst.sh
# Pack it all
cd $PKG
-/sbin/makepkg -l y -c n $OUTPUT/$PRGNAM-$VERSION-$ARCH-$BUILD$TAG.${PKGTYPE:-tgz}
+/sbin/makepkg -l y -c n $OUTPUT/$PRGNAM-$VERSION-$ARCH-$BUILD$TAG.$PKGTYPE
diff --git a/games/worldofpadman/worldofpadman.desktop b/games/worldofpadman/worldofpadman.desktop
index 1d1d1c1dca..40402ef649 100644
--- a/games/worldofpadman/worldofpadman.desktop
+++ b/games/worldofpadman/worldofpadman.desktop
@@ -1,8 +1,8 @@
[Desktop Entry]
Name=World of Padman
Comment=Open-source first-person shooter game
-Exec=/opt/worldofpadman/padman
-Icon=/usr/share/icons/hicolor/32x32/apps/wop.png
+Exec=/usr/games/wop
+Icon=wop
Terminal=false
Type=Application
-Categories=Qt;KDE;Game;
+Categories=Game;ActionGame;
diff --git a/games/worldofpadman/wrapper.sh b/games/worldofpadman/wrapper.sh
new file mode 100644
index 0000000000..cc65e1d62b
--- /dev/null
+++ b/games/worldofpadman/wrapper.sh
@@ -0,0 +1,10 @@
+#!/bin/sh
+
+# 20220428 bkw: wrapper script for worldofpadman SBo build. needed
+# because wop and wopded expect to be called with full path (so they
+# can find their data files), but we want to be able to run them from
+# $PATH.
+
+# Licensed under the WTFPL. See http://www.wtfpl.net/txt/copying/ for details.
+
+exec /opt/worldofpadman/@EXE@.@SRCARCH@ "$@"
diff --git a/games/x16emu/README b/games/x16emu/README
new file mode 100644
index 0000000000..b9f11ea4c8
--- /dev/null
+++ b/games/x16emu/README
@@ -0,0 +1 @@
+x16emu - Commander X16 Computer System Emulator
diff --git a/games/x16emu/slack-desc b/games/x16emu/slack-desc
new file mode 100644
index 0000000000..04b3458ad4
--- /dev/null
+++ b/games/x16emu/slack-desc
@@ -0,0 +1,19 @@
+# HOW TO EDIT THIS FILE:
+# The "handy ruler" below makes it easier to edit a package description.
+# Line up the first '|' above the ':' following the base package name, and
+# the '|' on the right side marks the last column you can put a character in.
+# You must make exactly 11 lines for the formatting to be correct. It's also
+# customary to leave one space after the ':' except on otherwise blank lines.
+
+ |-----handy-ruler------------------------------------------------------|
+x16emu: x16emu (Commander X16 Computer System Emulator)
+x16emu:
+x16emu: This is an emulator for the Commander X16 computer system.
+x16emu: It only depends on SDL2.
+x16emu:
+x16emu:
+x16emu:
+x16emu:
+x16emu:
+x16emu: Homepage: https://github.com/X16Community/x16-emulator/
+x16emu:
diff --git a/games/x16emu/x16emu.SlackBuild b/games/x16emu/x16emu.SlackBuild
new file mode 100644
index 0000000000..410b85f618
--- /dev/null
+++ b/games/x16emu/x16emu.SlackBuild
@@ -0,0 +1,86 @@
+#!/bin/bash
+
+# Slackware build script for x16emu
+#
+#~ # Copyright 2024 Matthew Miller <mattallmill@gmail.com>
+# All rights reserved.
+#
+# Redistribution and use of this script, with or without modification, is
+# permitted provided that the following conditions are met:
+#
+# 1. Redistributions of this script must retain the above copyright
+# notice, this list of conditions and the following disclaimer.
+#
+# THIS SOFTWARE IS PROVIDED BY THE AUTHOR ``AS IS'' AND ANY EXPRESS OR IMPLIED
+# WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE IMPLIED WARRANTIES OF
+# MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE ARE DISCLAIMED. IN NO
+# EVENT SHALL THE AUTHOR BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL,
+# SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT LIMITED TO,
+# PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, DATA, OR PROFITS;
+# OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY,
+# WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR
+# OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF THIS SOFTWARE, EVEN IF
+# ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
+
+cd $(dirname $0) ; CWD=$(pwd)
+
+PRGNAM=x16emu
+VERSION=${VERSION:-r46}
+BUILD=${BUILD:-1}
+TAG=${TAG:-_SBo}
+PKGTYPE=${PKGTYPE:-tgz}
+
+if [ -z "$ARCH" ]; then
+ case "$( uname -m )" in
+ i?86) ARCH=i586 ;;
+ arm*) ARCH=arm ;;
+ *) ARCH=$( uname -m ) ;;
+ esac
+fi
+
+# If the variable PRINT_PACKAGE_NAME is set, then this script will report what
+# the name of the created package would be, and then exit. This information
+# could be useful to other scripts.
+if [ ! -z "${PRINT_PACKAGE_NAME}" ]; then
+ echo "$PRGNAM-$VERSION-$ARCH-$BUILD$TAG.$PKGTYPE"
+ exit 0
+fi
+
+TMP=${TMP:-/tmp/SBo}
+PKG=$TMP/package-$PRGNAM
+OUTPUT=${OUTPUT:-/tmp}
+
+set -eu
+
+if [ "$ARCH" != "x86_64" ]; then
+ printf "%s is not supported...\n" "$ARCH"
+ exit 1
+fi
+
+rm -rf $PKG
+mkdir -p $TMP $PKG/opt/$PRGNAM $OUTPUT
+cd $PKG/opt/$PRGNAM
+unzip $CWD/${PRGNAM}_linux-${ARCH}-${VERSION}.zip
+
+chown -R root:root .
+find -L . \
+ \( -perm 777 -o -perm 775 -o -perm 750 -o -perm 711 -o -perm 555 \
+ -o -perm 511 \) -exec chmod 755 {} \; -o \
+ \( -perm 666 -o -perm 664 -o -perm 640 -o -perm 600 -o -perm 444 \
+ -o -perm 440 -o -perm 400 \) -exec chmod 644 {} \;
+
+find $PKG -print0 | xargs -0 file | grep -e "executable" -e "shared object" | grep ELF \
+ | cut -f 1 -d : | xargs strip --strip-unneeded 2> /dev/null || true
+
+mkdir -p $PKG/usr/bin
+( cd $PKG/usr/bin ; ln -sf /opt/$PRGNAM/$PRGNAM $PRGNAM )
+
+mkdir -p $PKG/usr/doc/$PRGNAM-$VERSION
+cp -a "Commander X16 Programmer's Reference Guide.pdf" README.pdf "VERA Programmer's Reference.pdf" $PKG/usr/doc/$PRGNAM-$VERSION
+cat $CWD/$PRGNAM.SlackBuild > $PKG/usr/doc/$PRGNAM-$VERSION/$PRGNAM.SlackBuild
+
+mkdir -p $PKG/install
+cat $CWD/slack-desc > $PKG/install/slack-desc
+
+cd $PKG
+/sbin/makepkg -l y -c n $OUTPUT/$PRGNAM-$VERSION-$ARCH-$BUILD$TAG.$PKGTYPE
diff --git a/games/x16emu/x16emu.info b/games/x16emu/x16emu.info
new file mode 100644
index 0000000000..6e57943249
--- /dev/null
+++ b/games/x16emu/x16emu.info
@@ -0,0 +1,10 @@
+PRGNAM="x16emu"
+VERSION="r46"
+HOMEPAGE="https://github.com/X16Community/x16-emulator"
+DOWNLOAD="UNSUPPORTED"
+MD5SUM=""
+DOWNLOAD_x86_64="https://github.com/X16Community/x16-emulator/releases/download/r46/x16emu_linux-x86_64-r46.zip"
+MD5SUM_x86_64="19e22884c6e1502bd84094131619d1a3"
+REQUIRES=""
+MAINTAINER="Matthew Miller"
+EMAIL="mattallmill@gmail.com"
diff --git a/games/xarchon/doinst.sh b/games/xarchon/doinst.sh
index 5fb28930db..3e5691a052 100644
--- a/games/xarchon/doinst.sh
+++ b/games/xarchon/doinst.sh
@@ -1,3 +1,9 @@
if [ -x /usr/bin/update-desktop-database ]; then
/usr/bin/update-desktop-database -q usr/share/applications >/dev/null 2>&1
fi
+
+if [ -e usr/share/icons/hicolor/icon-theme.cache ]; then
+ if [ -x /usr/bin/gtk-update-icon-cache ]; then
+ /usr/bin/gtk-update-icon-cache usr/share/icons/hicolor >/dev/null 2>&1
+ fi
+fi
diff --git a/games/xarchon/patches/defaultfont.diff b/games/xarchon/patches/defaultfont.diff
new file mode 100644
index 0000000000..53c5485557
--- /dev/null
+++ b/games/xarchon/patches/defaultfont.diff
@@ -0,0 +1,22 @@
+--- xarchon-0.50/src/board.c.orig 2002-09-26 08:28:46.000000000 -0400
++++ xarchon-0.50/src/board.c 2002-09-26 08:29:02.000000000 -0400
+@@ -27,7 +27,7 @@
+ #define FLOOR_DARK 0 /* steppings for light and dark */
+ #define FLOOR_LIGHT 7 /* outside luminance cycle */
+
+-#define FONT_NAME "-misc-fixed-medium-*-normal-*-15-0-*-*-*-*-iso8859-1"
++#define FONT_NAME "-misc-fixed-medium-*-normal-*-*-*-*-*-*-*-iso8859-1"
+
+ #define V_CELL_YSIZE 40 /* revive cell height */
+
+--- xarchon-0.50/src/field.c.orig 2002-09-26 08:22:45.000000000 -0400
++++ xarchon-0.50/src/field.c 2002-09-26 08:23:11.000000000 -0400
+@@ -20,7 +20,7 @@
+ /* defines */
+ /*--------------------------------------------------------------------------*/
+
+-#define FONT_NAME "-misc-fixed-medium-*-normal-*-40-0-*-*-*-*-iso8859-1"
++#define FONT_NAME "-misc-fixed-medium-*-normal-*-*-*-*-*-*-*-iso8859-1"
+
+ #define NUM_ROCKS 12
+ #define ROCK_DELAY 2 /* rocks delay time in frames */
diff --git a/games/xarchon/patches/newgccfix.diff b/games/xarchon/patches/newgccfix.diff
new file mode 100644
index 0000000000..2147bce8f8
--- /dev/null
+++ b/games/xarchon/patches/newgccfix.diff
@@ -0,0 +1,21 @@
+diff -Naur xarchon-0.60/src/qt/qmymenubar.cpp xarchon-0.60.patched/src/qt/qmymenubar.cpp
+--- xarchon-0.60/src/qt/qmymenubar.cpp 2002-01-09 13:34:33.000000000 -0500
++++ xarchon-0.60.patched/src/qt/qmymenubar.cpp 2021-10-15 16:02:15.359869566 -0400
+@@ -46,7 +46,7 @@
+ /*--------------------------------------------------------------------------*/
+
+ int QMyMenuBar::insertItem(const QString &text, QPopupMenu *popup,
+- int id = -1, int index = -1)
++ int id, int index)
+ {
+ QMenuBar::insertItem(text, popup, id, index);
+ }
+@@ -58,7 +58,7 @@
+ int QMyMenuBar::insertItem(const char *name, QPopupMenu *popup,
+ const QString &text,
+ const QObject *receiver, const char *member,
+- int accel = 0, int id = -1, int index = -1)
++ int accel, int id, int index)
+ {
+ int the_id = popup->insertItem(text, receiver, member, accel, id, index);
+ QMyMenuBarItem *item = new QMyMenuBarItem(popup, the_id);
diff --git a/games/xarchon/xarchon.SlackBuild b/games/xarchon/xarchon.SlackBuild
index 2516e43000..b973243601 100644
--- a/games/xarchon/xarchon.SlackBuild
+++ b/games/xarchon/xarchon.SlackBuild
@@ -1,11 +1,17 @@
-#!/bin/sh
+#!/bin/bash
# Slackware build script for xarchon
-# Written by B. Watson (yalhcru@gmail.com)
+# Written by B. Watson (urchlay@slackware.uk)
# Licensed under the WTFPL. See http://www.wtfpl.net/txt/copying/ for details.
+# 20211015 bkw: BUILD=3
+# - fix build on -current.
+# - new-style icon.
+# - TODO: fix segfault when built with -O2. For now, the band-aid is
+# to build with -O0.
+
# note: xarchon plays Archon and Archon II: Adept. I can't tell if the
# Adept game is complete or correct, because I never could understand
# how to play it, even as a video-game-obsessed kid in the 1980s.
@@ -13,10 +19,13 @@
# further note, written later: no, Adept is nowhere near complete or
# playable. So I'm patching the game to remove the menu option for it.
+cd $(dirname $0) ; CWD=$(pwd)
+
PRGNAM=xarchon
VERSION=${VERSION:-0.60}
-BUILD=${BUILD:-2}
+BUILD=${BUILD:-3}
TAG=${TAG:-_SBo}
+PKGTYPE=${PKGTYPE:-tgz}
if [ -z "$ARCH" ]; then
case "$( uname -m )" in
@@ -26,22 +35,33 @@ if [ -z "$ARCH" ]; then
esac
fi
-CWD=$(pwd)
+if [ ! -z "${PRINT_PACKAGE_NAME}" ]; then
+ echo "$PRGNAM-$VERSION-$ARCH-$BUILD$TAG.$PKGTYPE"
+ exit 0
+fi
+
TMP=${TMP:-/tmp/SBo}
PKG=$TMP/package-$PRGNAM
OUTPUT=${OUTPUT:-/tmp}
+# 20211015 bkw: on -current, with gcc12, the damn thing segfaults
+# on startup when we use -O2 (or -O1 even). Since it's only a game,
+# I won't spend a lot of time worrying about it. It won't compile with
+# clang++ either (not even with -std=gnu++98). The *real* fix for this
+# is going to be to port xarchon to qt5. Which is beyond the scope
+# of this SlackBuild, but I might take a stab at it as a standalone
+# project someday.
if [ "$ARCH" = "i586" ]; then
- SLKCFLAGS="-O2 -march=i586 -mtune=i686"
+ SLKCFLAGS="-O0 -march=i586 -mtune=i686"
LIBDIRSUFFIX=""
elif [ "$ARCH" = "i686" ]; then
- SLKCFLAGS="-O2 -march=i686 -mtune=i686"
+ SLKCFLAGS="-O0 -march=i686 -mtune=i686"
LIBDIRSUFFIX=""
elif [ "$ARCH" = "x86_64" ]; then
- SLKCFLAGS="-O2 -fPIC"
+ SLKCFLAGS="-O0 -fPIC"
LIBDIRSUFFIX="64"
else
- SLKCFLAGS="-O2"
+ SLKCFLAGS="-O0"
LIBDIRSUFFIX=""
fi
@@ -54,11 +74,8 @@ rm -rf $PRGNAM-$VERSION
tar xvf $CWD/$PRGNAM-$VERSION.tar.gz
cd $PRGNAM-$VERSION
chown -R root:root .
-find -L . \
- \( -perm 777 -o -perm 775 -o -perm 750 -o -perm 711 -o -perm 555 \
- -o -perm 511 \) -exec chmod 755 {} \; -o \
- \( -perm 666 -o -perm 664 -o -perm 640 -o -perm 600 -o -perm 444 \
- -o -perm 440 -o -perm 400 \) -exec chmod 644 {} \;
+find -L . -perm /111 -a \! -perm 755 -a -exec chmod 755 {} \+ -o \
+ \! -perm /111 -a \! -perm 644 -a -exec chmod 644 {} \+
# disable Adept menu option, since it's non-playable.
patch -p1 < $CWD/patches/no_adept.diff
@@ -89,6 +106,13 @@ patch -p1 < $CWD/patches/remove_theme_option.diff
# remove mention of selecting themes.
patch -p1 < $CWD/patches/manpage.diff
+# 20211015 bkw: fix build on -current (gcc 12)
+patch -p1 < $CWD/patches/newgccfix.diff
+
+# 20211015 bkw: patch from Fedora:
+# https://src.fedoraproject.org/rpms/xarchon/raw/f34/f/xarchon-fonts.patch
+patch -p1 < $CWD/patches/defaultfont.diff
+
# configure script is from 2002, no thank you.
rm -f configure
autoreconf -if
@@ -127,6 +151,10 @@ mkdir -p $PKG/usr/share/pixmaps $PKG/usr/share/applications
ln -s ../games/$PRGNAM/icon.xpm $PKG/usr/share/pixmaps/$PRGNAM.xpm
cat $CWD/$PRGNAM.desktop > $PKG/usr/share/applications/$PRGNAM.desktop
+# 20211015 bkw: new-style icon. Only available in 32x32, sorry.
+mkdir -p $PKG/usr/share/icons/hicolor/32x32/apps
+convert data/icon.xpm $PKG/usr/share/icons/hicolor/32x32/apps/$PRGNAM.png
+
mkdir -p $PKG/usr/doc/$PRGNAM-$VERSION
cp -a AUTHORS COPYING ChangeLog NEWS README $PKG/usr/doc/$PRGNAM-$VERSION
cat $CWD/$PRGNAM.SlackBuild > $PKG/usr/doc/$PRGNAM-$VERSION/$PRGNAM.SlackBuild
@@ -136,4 +164,4 @@ cat $CWD/slack-desc > $PKG/install/slack-desc
cat $CWD/doinst.sh > $PKG/install/doinst.sh
cd $PKG
-/sbin/makepkg -l y -c n $OUTPUT/$PRGNAM-$VERSION-$ARCH-$BUILD$TAG.${PKGTYPE:-tgz}
+/sbin/makepkg -l y -c n $OUTPUT/$PRGNAM-$VERSION-$ARCH-$BUILD$TAG.$PKGTYPE
diff --git a/games/xarchon/xarchon.desktop b/games/xarchon/xarchon.desktop
index 6063650580..3757219918 100644
--- a/games/xarchon/xarchon.desktop
+++ b/games/xarchon/xarchon.desktop
@@ -1,7 +1,7 @@
[Desktop Entry]
Name=xarchon
Comment=Classic Fantasy Chess Game
-Exec=xarchon
+Exec=/usr/games/xarchon
Icon=xarchon
Terminal=false
Type=Application
diff --git a/games/xarchon/xarchon.info b/games/xarchon/xarchon.info
index b3fc702569..68fb3ed020 100644
--- a/games/xarchon/xarchon.info
+++ b/games/xarchon/xarchon.info
@@ -7,4 +7,4 @@ DOWNLOAD_x86_64=""
MD5SUM_x86_64=""
REQUIRES="qt3"
MAINTAINER="B. Watson"
-EMAIL="yalhcru@gmail.com"
+EMAIL="urchlay@slackware.uk"
diff --git a/games/xcowsay/xcowsay.SlackBuild b/games/xcowsay/xcowsay.SlackBuild
index 1cb75cce7e..1db1890291 100644
--- a/games/xcowsay/xcowsay.SlackBuild
+++ b/games/xcowsay/xcowsay.SlackBuild
@@ -1,11 +1,13 @@
-#!/bin/sh
+#!/bin/bash
# Slackware build script for xcowsay
-# Written by B. Watson (yalhcru@gmail.com)
+# Written by B. Watson (urchlay@slackware.uk)
# Licensed under the WTFPL. See http://www.wtfpl.net/txt/copying/ for details.
+# 20220610 bkw: update for v1.6.
+
# 20201103 bkw:
# - Update for v1.5.1. The changelog for this version says this:
# Fix black squares around cow and bubble on non-compositing window manager.
@@ -22,10 +24,13 @@
# so don't try. Maybe 1.6 or later will support non-compositing WMs
# at some point.
+cd $(dirname $0) ; CWD=$(pwd)
+
PRGNAM=xcowsay
-VERSION=${VERSION:-1.5.1}
-BUILD=${BUILD:-2}
+VERSION=${VERSION:-1.6}
+BUILD=${BUILD:-1}
TAG=${TAG:-_SBo}
+PKGTYPE=${PKGTYPE:-tgz}
if [ -z "$ARCH" ]; then
case "$( uname -m )" in
@@ -35,7 +40,11 @@ if [ -z "$ARCH" ]; then
esac
fi
-CWD=$(pwd)
+if [ ! -z "${PRINT_PACKAGE_NAME}" ]; then
+ echo "$PRGNAM-$VERSION-$ARCH-$BUILD$TAG.$PKGTYPE"
+ exit 0
+fi
+
TMP=${TMP:-/tmp/SBo}
PKG=$TMP/package-$PRGNAM
OUTPUT=${OUTPUT:-/tmp}
@@ -98,4 +107,4 @@ mkdir -p $PKG/install
cat $CWD/slack-desc > $PKG/install/slack-desc
cd $PKG
-/sbin/makepkg -l y -c n $OUTPUT/$PRGNAM-$VERSION-$ARCH-$BUILD$TAG.${PKGTYPE:-tgz}
+/sbin/makepkg -l y -c n $OUTPUT/$PRGNAM-$VERSION-$ARCH-$BUILD$TAG.$PKGTYPE
diff --git a/games/xcowsay/xcowsay.info b/games/xcowsay/xcowsay.info
index c653ac4f29..f7014ca927 100644
--- a/games/xcowsay/xcowsay.info
+++ b/games/xcowsay/xcowsay.info
@@ -1,10 +1,10 @@
PRGNAM="xcowsay"
-VERSION="1.5.1"
-HOMEPAGE="http://www.doof.me.uk/xcowsay/"
-DOWNLOAD="https://github.com/nickg/xcowsay/releases/download/r1.5.1/xcowsay-1.5.1.tar.gz"
-MD5SUM="e57cfd50979de8cd590968a8d3230eaa"
+VERSION="1.6"
+HOMEPAGE="https://www.doof.me.uk/xcowsay/"
+DOWNLOAD="https://github.com/nickg/xcowsay/releases/download/v1.6/xcowsay-1.6.tar.gz"
+MD5SUM="344287987465773cde4586b68c5bcde9"
DOWNLOAD_x86_64=""
MD5SUM_x86_64=""
REQUIRES=""
MAINTAINER="B. Watson"
-EMAIL="yalhcru@gmail.com"
+EMAIL="urchlay@slackware.uk"
diff --git a/games/xcpc/slack-desc b/games/xcpc/slack-desc
index 20bc9ed221..f54f3924a1 100644
--- a/games/xcpc/slack-desc
+++ b/games/xcpc/slack-desc
@@ -12,7 +12,7 @@ xcpc: XCPC is a portable Amstrad CPC 464/664/6128 emulator written in C,
xcpc: designed to run on any POSIX compliant system, including Unix, Linux,
xcpc: BSD and having an X11 server.
xcpc:
-xcpc: Homepage: http://xcpc.sourceforge.net
+xcpc: Homepage: https://www.xcpc-emulator.net
xcpc:
xcpc:
xcpc:
diff --git a/games/xcpc/xcpc.SlackBuild b/games/xcpc/xcpc.SlackBuild
index 15f6fa296a..0915b27400 100644
--- a/games/xcpc/xcpc.SlackBuild
+++ b/games/xcpc/xcpc.SlackBuild
@@ -1,4 +1,4 @@
-#!/bin/sh
+#!/bin/bash
# Slackware build script for xcpc
@@ -22,10 +22,13 @@
# OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF THIS SOFTWARE, EVEN IF
# ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
+cd $(dirname $0) ; CWD=$(pwd)
+
PRGNAM=xcpc
-VERSION=${VERSION:-20070122}
+VERSION=${VERSION:-0.37.0}
BUILD=${BUILD:-1}
TAG=${TAG:-_SBo}
+PKGTYPE=${PKGTYPE:-tgz}
if [ -z "$ARCH" ]; then
case "$( uname -m )" in
@@ -35,7 +38,14 @@ if [ -z "$ARCH" ]; then
esac
fi
-CWD=$(pwd)
+# If the variable PRINT_PACKAGE_NAME is set, then this script will report what
+# the name of the created package would be, and then exit. This information
+# could be useful to other scripts.
+if [ ! -z "${PRINT_PACKAGE_NAME}" ]; then
+ echo "$PRGNAM-$VERSION-$ARCH-$BUILD$TAG.$PKGTYPE"
+ exit 0
+fi
+
TMP=${TMP:-/tmp/SBo}
PKG=$TMP/package-$PRGNAM
OUTPUT=${OUTPUT:-/tmp}
@@ -95,4 +105,4 @@ cat $CWD/slack-desc > $PKG/install/slack-desc
cat $CWD/doinst.sh > $PKG/install/doinst.sh
cd $PKG
-/sbin/makepkg -l y -c n $OUTPUT/$PRGNAM-$VERSION-$ARCH-$BUILD$TAG.${PKGTYPE:-tgz}
+/sbin/makepkg -l y -c n $OUTPUT/$PRGNAM-$VERSION-$ARCH-$BUILD$TAG.$PKGTYPE
diff --git a/games/xcpc/xcpc.info b/games/xcpc/xcpc.info
index 15bca2343c..5e49518847 100644
--- a/games/xcpc/xcpc.info
+++ b/games/xcpc/xcpc.info
@@ -1,10 +1,10 @@
PRGNAM="xcpc"
-VERSION="20070122"
-HOMEPAGE="http://xcpc.sourceforge.net"
-DOWNLOAD="http://sourceforge.net/projects/xcpc/files/xcpc/xcpc-20070122/xcpc-20070122.tar.gz"
-MD5SUM="6b9d1c94b37e1cc10312dd46bd0696b7"
+VERSION="0.37.0"
+HOMEPAGE="https://www.xcpc-emulator.net"
+DOWNLOAD="https://bitbucket.org/ponceto/xcpc/downloads/xcpc-0.37.0.tar.gz"
+MD5SUM="b6cfdec8b48e287b93d550a0b9bc3196"
DOWNLOAD_x86_64=""
MD5SUM_x86_64=""
-REQUIRES="libdsk"
+REQUIRES=""
MAINTAINER="Dimitris Zlatanidis"
EMAIL="d.zlatanidis@gmail.com"
diff --git a/games/xemu/README b/games/xemu/README
new file mode 100644
index 0000000000..6a991ee778
--- /dev/null
+++ b/games/xemu/README
@@ -0,0 +1,3 @@
+A free and open-source application that emulates the original
+Microsoft Xbox game console, enabling people to play their original
+Xbox games on Windows, macOS, and Linux systems.
diff --git a/games/xemu/doinst.sh b/games/xemu/doinst.sh
new file mode 100644
index 0000000000..65c7e2eeb9
--- /dev/null
+++ b/games/xemu/doinst.sh
@@ -0,0 +1,9 @@
+if [ -x /usr/bin/update-desktop-database ]; then
+ /usr/bin/update-desktop-database -q usr/share/applications >/dev/null 2>&1
+fi
+
+if [ -e usr/share/icons/hicolor/icon-theme.cache ]; then
+ if [ -x /usr/bin/gtk-update-icon-cache ]; then
+ /usr/bin/gtk-update-icon-cache -f usr/share/icons/hicolor >/dev/null 2>&1
+ fi
+fi
diff --git a/games/xemu/slack-desc b/games/xemu/slack-desc
new file mode 100644
index 0000000000..10d1383dc7
--- /dev/null
+++ b/games/xemu/slack-desc
@@ -0,0 +1,19 @@
+# HOW TO EDIT THIS FILE:
+# The "handy ruler" below makes it easier to edit a package description.
+# Line up the first '|' above the ':' following the base package name, and
+# the '|' on the right side marks the last column you can put a character in.
+# You must make exactly 11 lines for the formatting to be correct. It's also
+# customary to leave one space after the ':' except on otherwise blank lines.
+
+ |-----handy-ruler------------------------------------------------------|
+xemu: xemu (Original Xbox Emulator)
+xemu:
+xemu: Original Xbox Emulator for Windows, macOS, and Linux
+xemu:
+xemu: Homepage: https://xemu.app
+xemu:
+xemu:
+xemu:
+xemu:
+xemu:
+xemu:
diff --git a/games/xemu/xemu.SlackBuild b/games/xemu/xemu.SlackBuild
new file mode 100644
index 0000000000..f82dc108d4
--- /dev/null
+++ b/games/xemu/xemu.SlackBuild
@@ -0,0 +1,155 @@
+#!/bin/bash
+
+# Slackware build script for xemu
+
+# Copyright 2022-2023 Steven Voges <Oregon, USA>
+# All rights reserved.
+#
+# Redistribution and use of this script, with or without modification, is
+# permitted provided that the following conditions are met:
+#
+# 1. Redistributions of this script must retain the above copyright
+# notice, this list of conditions and the following disclaimer.
+#
+# THIS SOFTWARE IS PROVIDED BY THE AUTHOR "AS IS" AND ANY EXPRESS OR IMPLIED
+# WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE IMPLIED WARRANTIES OF
+# MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE ARE DISCLAIMED. IN NO
+# EVENT SHALL THE AUTHOR BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL,
+# SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT LIMITED TO,
+# PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, DATA, OR PROFITS;
+# OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY,
+# WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR
+# OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF THIS SOFTWARE, EVEN IF
+# ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
+
+cd $(dirname $0) ; CWD=$(pwd)
+
+PRGNAM=xemu
+BRANCH=${BRANCH:-master}
+VERSION=${VERSION:-0.7.86}
+COMMIT=${COMMIT:-4a99fd0f1855fc52e15885812abd3ee4bb2b3847}
+BSOFTFLOAT3=${BSOFTFLOAT3:-b64af41c3276f97f0e181920400ee056b9c88037}
+BTESTFLOAT3=${BTESTFLOAT3:-5a59dcec19327396a011a17fd924aed4fec416b3}
+GENCONFIG=${GENCONFIG:-44bab849ce87fceafd74703bfcf2b61a1a1b738f}
+IMGUI=${IMGUI:-c71a50deb5ddf1ea386b91e60fa2e4a26d080074}
+IMPLOT=${IMPLOT:-b47c8bacdbc78bc521691f70666f13924bb522ab}
+KEYCODEMAPDB=${KEYCODEMAPDB:-d21009b1c9f94b740ea66be8e48a1d8ad8124023}
+NV2AVSHCPU=${NV2AVSHCPU:-d5a7308809a80e1b01b5c016127d4f1b91c8673b}
+BUILD=${BUILD:-1}
+TAG=${TAG:-_SBo}
+PKGTYPE=${PKGTYPE:-tgz}
+
+if [ -z "$ARCH" ]; then
+ case "$( uname -m )" in
+ i?86) ARCH=i586 ;;
+ arm*) ARCH=arm ;;
+ *) ARCH=$( uname -m ) ;;
+ esac
+fi
+
+if [ ! -z "${PRINT_PACKAGE_NAME}" ]; then
+ echo "$PRGNAM-$VERSION-$ARCH-$BUILD$TAG.$PKGTYPE"
+ exit 0
+fi
+
+TMP=${TMP:-/tmp/SBo}
+PKG=$TMP/package-$PRGNAM
+OUTPUT=${OUTPUT:-/tmp}
+
+if [ "$ARCH" = "i586" ]; then
+ SLKCFLAGS="-O2 -march=i586 -mtune=i686"
+ LIBDIRSUFFIX=""
+elif [ "$ARCH" = "i686" ]; then
+ SLKCFLAGS="-O2 -march=i686 -mtune=i686"
+ LIBDIRSUFFIX=""
+elif [ "$ARCH" = "x86_64" ]; then
+ SLKCFLAGS="-O2 -fPIC"
+ LIBDIRSUFFIX="64"
+else
+ SLKCFLAGS="-O2"
+ LIBDIRSUFFIX=""
+fi
+
+set -e
+
+rm -rf $PKG
+mkdir -p $TMP $PKG $OUTPUT
+cd $TMP
+rm -rf $PRGNAM-$VERSION
+tar xvf $CWD/$PRGNAM-$VERSION.tar.gz
+
+tar xvf $CWD/berkeley-softfloat-3-$BSOFTFLOAT3.tar.gz -C \
+ $TMP/$PRGNAM-$VERSION/tests/fp/berkeley-softfloat-3 --strip-components 1
+tar xvf $CWD/berkeley-testfloat-3-$BTESTFLOAT3.tar.gz -C \
+ $TMP/$PRGNAM-$VERSION/tests/fp/berkeley-testfloat-3 --strip-components 1
+tar xvf $CWD/genconfig-$GENCONFIG.tar.gz -C \
+ $TMP/$PRGNAM-$VERSION/genconfig --strip-components 1
+tar xvf $CWD/imgui-$IMGUI.tar.gz -C \
+ $TMP/$PRGNAM-$VERSION/ui/thirdparty/imgui --strip-components 1
+tar xvf $CWD/implot-$IMPLOT.tar.gz -C \
+ $TMP/$PRGNAM-$VERSION/ui/thirdparty/implot --strip-components 1
+tar xvf $CWD/keycodemapdb-$KEYCODEMAPDB.tar.gz -C \
+ $TMP/$PRGNAM-$VERSION/ui/keycodemapdb --strip-components 1
+tar xvf $CWD/nv2a_vsh_cpu-$NV2AVSHCPU.tar.gz -C \
+ $TMP/$PRGNAM-$VERSION/hw/xbox/nv2a/thirdparty/nv2a_vsh_cpu --strip-components 1
+
+cd $PRGNAM-$VERSION
+
+mkdir -p tomlplusplus/include
+sed -i '7d;8d;9d;10d;11d;12d;13d;14d;15d;16d;17d;18d;19d;20d;21d;22d;23d;24d;25d;26d;27d' \
+ scripts/xemu-version.sh
+sed -i "7iXEMU_COMMIT=${COMMIT}" scripts/xemu-version.sh
+sed -i "8iXEMU_BRANCH=${BRANCH}" scripts/xemu-version.sh
+sed -i "9iXEMU_VERSION=${VERSION}" scripts/xemu-version.sh
+sed -i "s/self._version = self.submodule.head/self._version = '$COMMIT'/g" scripts/gen-license.py
+python3 scripts/gen-license.py > XEMU_LICENSE
+
+chown -R root:root .
+find -L . \
+ \( -perm 777 -o -perm 775 -o -perm 750 -o -perm 711 -o -perm 555 \
+ -o -perm 511 \) -exec chmod 755 {} \; -o \
+ \( -perm 666 -o -perm 664 -o -perm 640 -o -perm 600 -o -perm 444 \
+ -o -perm 440 -o -perm 400 \) -exec chmod 644 {} \;
+
+CFLAGS="$SLKCFLAGS" \
+CXXFLAGS="$SLKCFLAGS" \
+./configure \
+ --prefix=/usr \
+ --libdir=/usr/lib${LIBDIRSUFFIX} \
+ --sysconfdir=/etc \
+ --localstatedir=/var \
+ --mandir=/usr/man \
+ --docdir=/usr/doc/$PRGNAM-$VERSION \
+ --disable-debug-info \
+ --enable-slirp=system \
+ --extra-cflags="-DXBOX=1" \
+ --target-list=i386-softmmu \
+ --with-git-submodules=ignore \
+ --ninja=ninja \
+ --build=$ARCH-slackware-linux
+make qemu-system-i386
+
+install -vDm755 build/qemu-system-i386 $PKG/usr/bin/$PRGNAM
+install -vDm644 ui/${PRGNAM}.desktop -t $PKG/usr/share/applications
+install -vDm644 ui/icons/${PRGNAM}.svg -t $PKG/usr/share/icons/hicolor/scalable/apps
+for SIZE in 16 24 32 48 64 128 256 512; do
+ install -vDm644 ui/icons/xemu_${SIZE}x${SIZE}.png \
+ $PKG/usr/share/icons/hicolor/${SIZE}x${SIZE}/apps/$PRGNAM.png
+done
+
+find $PKG -print0 | xargs -0 file | grep -e "executable" -e "shared object" | grep ELF \
+ | cut -f 1 -d : | xargs strip --strip-unneeded 2> /dev/null || true
+
+mkdir -p $PKG/usr/doc/$PRGNAM-$VERSION
+cp -a \
+ COPYING COPYING.LIB LICENSE MAINTAINERS README.* \
+ $PKG/usr/doc/$PRGNAM-$VERSION
+cat $CWD/$PRGNAM.SlackBuild > $PKG/usr/doc/$PRGNAM-$VERSION/$PRGNAM.SlackBuild
+install -vDm644 $TMP/$PRGNAM-$VERSION/XEMU_LICENSE $PKG/usr/doc/$PRGNAM-$VERSION
+
+mkdir -p $PKG/install
+cat $CWD/slack-desc > $PKG/install/slack-desc
+cat $CWD/doinst.sh > $PKG/install/doinst.sh
+
+cd $PKG
+/sbin/makepkg -l y -c n $OUTPUT/$PRGNAM-$VERSION-$ARCH-$BUILD$TAG.$PKGTYPE
diff --git a/games/xemu/xemu.info b/games/xemu/xemu.info
new file mode 100644
index 0000000000..82ea280ea5
--- /dev/null
+++ b/games/xemu/xemu.info
@@ -0,0 +1,24 @@
+PRGNAM="xemu"
+VERSION="0.7.86"
+HOMEPAGE="https://xemu.app"
+DOWNLOAD="https://github.com/mborgerson/xemu/archive/v0.7.86/xemu-0.7.86.tar.gz \
+ https://gitlab.com/qemu-project/berkeley-softfloat-3/-/archive/b64af41c3276f97f0e181920400ee056b9c88037/berkeley-softfloat-3-b64af41c3276f97f0e181920400ee056b9c88037.tar.gz \
+ https://gitlab.com/qemu-project/berkeley-testfloat-3/-/archive/5a59dcec19327396a011a17fd924aed4fec416b3/berkeley-testfloat-3-5a59dcec19327396a011a17fd924aed4fec416b3.tar.gz \
+ https://github.com/mborgerson/genconfig/archive/44bab849ce87fceafd74703bfcf2b61a1a1b738f/genconfig-44bab849ce87fceafd74703bfcf2b61a1a1b738f.tar.gz \
+ https://github.com/ocornut/imgui/archive/c71a50deb5ddf1ea386b91e60fa2e4a26d080074/imgui-c71a50deb5ddf1ea386b91e60fa2e4a26d080074.tar.gz \
+ https://github.com/epezent/implot/archive/b47c8bacdbc78bc521691f70666f13924bb522ab/implot-b47c8bacdbc78bc521691f70666f13924bb522ab.tar.gz \
+ https://gitlab.com/qemu-project/keycodemapdb/-/archive/d21009b1c9f94b740ea66be8e48a1d8ad8124023/keycodemapdb-d21009b1c9f94b740ea66be8e48a1d8ad8124023.tar.gz \
+ https://github.com/abaire/nv2a_vsh_cpu/archive/d5a7308809a80e1b01b5c016127d4f1b91c8673b/nv2a_vsh_cpu-d5a7308809a80e1b01b5c016127d4f1b91c8673b.tar.gz"
+MD5SUM="f5d4863774ec134b7a7eac371e5b45b6 \
+ 7fa778ee82a15c09162b66564455c01e \
+ 5627edcf7c64f95f50925784c806e4d9 \
+ f55989cc5fd27ee7cbf8addcec370275 \
+ 7f9dcf287b6e7c2fafcc2ffcd4e22c0a \
+ bc067af8983f58ff4fb492a5fc79dae6 \
+ 109a1dc5d8c7ed5745a78e78a5cfd7f2 \
+ cfb9f8a87e1b685ca10fe4e0992c76fe"
+DOWNLOAD_x86_64=""
+MD5SUM_x86_64=""
+REQUIRES="libslirp tomlplusplus"
+MAINTAINER="Steven Voges"
+EMAIL="svoges.sbo@gmail.com"
diff --git a/games/xlennart/xlennart.SlackBuild b/games/xlennart/xlennart.SlackBuild
index 30531fb3f5..e3b1a1314d 100644
--- a/games/xlennart/xlennart.SlackBuild
+++ b/games/xlennart/xlennart.SlackBuild
@@ -1,4 +1,4 @@
-#!/bin/sh
+#!/bin/bash
# Slackware build script for xlennart
# $Id: xlennart.SlackBuild,v 1.7 2018/09/18 03:58:01 pomf Exp pomf $
@@ -23,10 +23,13 @@
# OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF THIS SOFTWARE, EVEN IF
# ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
+cd $(dirname $0) ; CWD=$(pwd)
+
PRGNAM=xlennart
VERSION=${VERSION:-1.1.1}
BUILD=${BUILD:-2}
TAG=${TAG:-_SBo}
+PKGTYPE=${PKGTYPE:-tgz}
if [ -z "$ARCH" ]; then
case "$( uname -m )" in
@@ -36,7 +39,14 @@ if [ -z "$ARCH" ]; then
esac
fi
-CWD=$(pwd)
+# If the variable PRINT_PACKAGE_NAME is set, then this script will report what
+# the name of the created package would be, and then exit. This information
+# could be useful to other scripts.
+if [ ! -z "${PRINT_PACKAGE_NAME}" ]; then
+ echo "$PRGNAM-$VERSION-$ARCH-$BUILD$TAG.$PKGTYPE"
+ exit 0
+fi
+
TMP=${TMP:-/tmp/SBo}
PKG=$TMP/package-$PRGNAM
OUTPUT=${OUTPUT:-/tmp}
@@ -144,4 +154,4 @@ cat $CWD/slack-desc > $PKG/install/slack-desc
cat $CWD/doinst.sh > $PKG/install/doinst.sh
cd $PKG
-/sbin/makepkg -l y -c n $OUTPUT/$PRGNAM-$VERSION-$ARCH-$BUILD$TAG.${PKGTYPE:-tgz}
+/sbin/makepkg -l y -c n $OUTPUT/$PRGNAM-$VERSION-$ARCH-$BUILD$TAG.$PKGTYPE
diff --git a/games/xmahjongg/xmahjongg.SlackBuild b/games/xmahjongg/xmahjongg.SlackBuild
index 04e0cbab52..89ce8b6fbe 100644
--- a/games/xmahjongg/xmahjongg.SlackBuild
+++ b/games/xmahjongg/xmahjongg.SlackBuild
@@ -1,4 +1,4 @@
-#!/bin/sh
+#!/bin/bash
# Slackware build script for xmahjongg
@@ -21,10 +21,13 @@
# OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF THIS SOFTWARE, EVEN IF
# ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
+cd $(dirname $0) ; CWD=$(pwd)
+
PRGNAM=xmahjongg
VERSION=${VERSION:-3.7}
BUILD=${BUILD:-1}
TAG=${TAG:-_SBo}
+PKGTYPE=${PKGTYPE:-tgz}
if [ -z "$ARCH" ]; then
case "$( uname -m )" in
@@ -34,7 +37,14 @@ if [ -z "$ARCH" ]; then
esac
fi
-CWD=$(pwd)
+# If the variable PRINT_PACKAGE_NAME is set, then this script will report what
+# the name of the created package would be, and then exit. This information
+# could be useful to other scripts.
+if [ ! -z "${PRINT_PACKAGE_NAME}" ]; then
+ echo "$PRGNAM-$VERSION-$ARCH-$BUILD$TAG.$PKGTYPE"
+ exit 0
+fi
+
TMP=${TMP:-/tmp/SBo}
PKG=$TMP/package-$PRGNAM
OUTPUT=${OUTPUT:-/tmp}
@@ -96,4 +106,4 @@ mkdir -p $PKG/install
cat $CWD/slack-desc > $PKG/install/slack-desc
cd $PKG
-/sbin/makepkg -l y -c n $OUTPUT/$PRGNAM-$VERSION-$ARCH-$BUILD$TAG.${PKGTYPE:-tgz}
+/sbin/makepkg -l y -c n $OUTPUT/$PRGNAM-$VERSION-$ARCH-$BUILD$TAG.$PKGTYPE
diff --git a/games/xmoto/README b/games/xmoto/README
index c77dd23955..f14f3cbb06 100644
--- a/games/xmoto/README
+++ b/games/xmoto/README
@@ -1,4 +1,7 @@
-X-Moto is a challenging 2D motocross platform game, where physics play an
-all important role in the gameplay. You need to control your bike to its
-limit, if you want to have a chance finishing the more difficult of the
-challenges.
+X-Moto is a challenging 2D motocross platform game, where physics play
+an all important role in the gameplay. You need to control your bike to
+its limit, if you want to have a chance finishing the more difficult of
+the challenges.
+
+On first run, if you see an error "Unable to get xmDb version",
+remove the file $HOME/.local/share/xmoto/xm.db
diff --git a/games/xmoto/gcc-4.7.patch b/games/xmoto/gcc-4.7.patch
deleted file mode 100644
index 59a6d8d974..0000000000
--- a/games/xmoto/gcc-4.7.patch
+++ /dev/null
@@ -1,10 +0,0 @@
---- a/src/helpers/System.cpp 2011-10-11 22:18:14.000000000 +0200
-+++ b/src/helpers/System.cpp 2012-07-21 21:28:40.000000000 +0200
-@@ -24,6 +24,7 @@
- #include "Log.h"
- #include "VExcept.h"
- #include <sstream>
-+#include <unistd.h>
-
- std::vector<std::string>* System::getDisplayModes(int windowed) {
- std::vector<std::string>* modes = new std::vector<std::string>;
diff --git a/games/xmoto/xmoto.SlackBuild b/games/xmoto/xmoto.SlackBuild
index 539df636d7..612e80883f 100644
--- a/games/xmoto/xmoto.SlackBuild
+++ b/games/xmoto/xmoto.SlackBuild
@@ -1,28 +1,38 @@
-#!/bin/sh
+#!/bin/bash
# Modified by the SlackBuilds.org project
# Maintained by Alex Word <alex_word86@yahoo.com>
+cd $(dirname $0) ; CWD=$(pwd)
+
PRGNAM=xmoto
-VERSION=${VERSION:-0.5.10}
-BUILD=${BUILD:-2}
+VERSION=${VERSION:-0.6.1}
+BUILD=${BUILD:-1}
TAG=${TAG:-_SBo}
+PKGTYPE=${PKGTYPE:-tgz}
if [ -z "$ARCH" ]; then
case "$( uname -m )" in
- i?86) ARCH=i486 ;;
+ i?86) ARCH=i586 ;;
arm*) ARCH=arm ;;
*) ARCH=$( uname -m ) ;;
esac
fi
-CWD=$(pwd)
+# If the variable PRINT_PACKAGE_NAME is set, then this script will report what
+# the name of the created package would be, and then exit. This information
+# could be useful to other scripts.
+if [ ! -z "${PRINT_PACKAGE_NAME}" ]; then
+ echo "$PRGNAM-$VERSION-$ARCH-$BUILD$TAG.$PKGTYPE"
+ exit 0
+fi
+
TMP=${TMP:-/tmp/SBo}
PKG=$TMP/package-$PRGNAM
OUTPUT=${OUTPUT:-/tmp}
-if [ "$ARCH" = "i486" ]; then
- SLKCFLAGS="-O2 -march=i486 -mtune=i686"
+if [ "$ARCH" = "i586" ]; then
+ SLKCFLAGS="-O2 -march=i586 -mtune=i686"
LIBDIRSUFFIX=""
elif [ "$ARCH" = "i686" ]; then
SLKCFLAGS="-O2 -march=i686 -mtune=i686"
@@ -37,46 +47,37 @@ fi
set -e
-rm -rf $PKG $TMP/$PRGNAM-$VERSION
+rm -rf $PKG
mkdir -p $TMP $PKG $OUTPUT
cd $TMP
-tar xvf $CWD/$PRGNAM-$VERSION-src.tar.gz
+rm -rf $PRGNAM-$VERSION
+tar xvf $CWD/$PRGNAM-$VERSION.tar.gz
cd $PRGNAM-$VERSION
chown -R root:root .
find -L . \
\( -perm 777 -o -perm 775 -o -perm 750 -o -perm 711 -o -perm 555 \
-o -perm 511 \) -exec chmod 755 {} \; -o \
\( -perm 666 -o -perm 664 -o -perm 640 -o -perm 600 -o -perm 444 \
- -o -perm 440 -o -perm 400 \) -exec chmod 644 {} \;
-
-patch -p1 < $CWD/gcc-4.7.patch
-
-CFLAGS="$SLKCFLAGS -DdDOUBLE" \
-CXXFLAGS="$SLKCFLAGS -DdDOUBLE" \
-LDFLAGS="-ldl" \
-./configure \
- --prefix=/usr \
- --bindir=/usr/games \
- --localstatedir=/var \
- --mandir=/usr/man \
- --localedir=/usr/share/locale \
- --docdir=/usr/doc/$PRGNAM-$VERSION \
- --with-localesdir=/usr/share/locale \
- --disable-dependency-tracking \
- --enable-threads=posix \
- --with-asian-ttf-file="/usr/share/fonts/TTF/wqy-zenhei.ttc" \
- --build=$ARCH-slackware-linux
-
-make
-make install DESTDIR=$PKG
-
-find $PKG | xargs file | grep -e "executable" -e "shared object" | grep ELF \
+ -o -perm 440 -o -perm 400 \) -exec chmod 644 {} \;
+
+mkdir -p build
+cd build
+ export "PATH=/opt/cmake-202x/bin:$PATH"
+ cmake \
+ -DCMAKE_C_FLAGS:STRING="$SLKCFLAGS" \
+ -DCMAKE_CXX_FLAGS:STRING="$SLKCFLAGS" \
+ -DCMAKE_INSTALL_PREFIX=/usr \
+ -DLIB_SUFFIX=${LIBDIRSUFFIX} \
+ -DMAN_INSTALL_DIR=/usr/man \
+ -DCMAKE_BUILD_TYPE=Release ..
+ make
+ make install DESTDIR=$PKG
+cd ..
+
+find $PKG -print0 | xargs -0 file | grep -e "executable" -e "shared object" | grep ELF \
| cut -f 1 -d : | xargs strip --strip-unneeded 2> /dev/null || true
-mkdir -p $PKG/usr/share/{pixmaps,applications}
-install -m 0644 extra/$PRGNAM.xpm $PKG/usr/share/pixmaps
-install -m 0644 extra/$PRGNAM.desktop $PKG/usr/share/applications
-
+mv $PKG/usr/share/man $PKG/usr
find $PKG/usr/man -type f -exec gzip -9 {} \;
# Don't include fonts that are already shipped with Slackware.
@@ -86,9 +87,7 @@ for i in $PKG/usr/share/$PRGNAM/Textures/Fonts/*.ttf; do
done
mkdir -p $PKG/usr/doc/$PRGNAM-$VERSION
-cp -a \
- AUTHORS COPYING NEWS README TODO ChangeLog \
- $PKG/usr/doc/$PRGNAM-$VERSION
+cp -a COPYING ChangeLog ChangeLog.SDL_gfx README.md $PKG/usr/doc/$PRGNAM-$VERSION
cat $CWD/$PRGNAM.SlackBuild > $PKG/usr/doc/$PRGNAM-$VERSION/$PRGNAM.SlackBuild
mkdir -p $PKG/install
@@ -96,4 +95,4 @@ cat $CWD/slack-desc > $PKG/install/slack-desc
cat $CWD/doinst.sh > $PKG/install/doinst.sh
cd $PKG
-/sbin/makepkg -l y -c n -p $OUTPUT/$PRGNAM-$VERSION-$ARCH-$BUILD$TAG.${PKGTYPE:-tgz}
+/sbin/makepkg -p -l y -c n $OUTPUT/$PRGNAM-$VERSION-$ARCH-$BUILD$TAG.$PKGTYPE
diff --git a/games/xmoto/xmoto.info b/games/xmoto/xmoto.info
index f10ea5df19..45811a003c 100644
--- a/games/xmoto/xmoto.info
+++ b/games/xmoto/xmoto.info
@@ -1,8 +1,8 @@
PRGNAM="xmoto"
-VERSION="0.5.10"
+VERSION="0.6.1"
HOMEPAGE="http://xmoto.tuxfamily.org/"
-DOWNLOAD="http://download.tuxfamily.org/xmoto/xmoto/0.5.10/xmoto-0.5.10-src.tar.gz"
-MD5SUM="d15f1c4e498d937b943db0b6aea437f1"
+DOWNLOAD="https://github.com/xmoto/xmoto/archive/0.6.1/xmoto-0.6.1.tar.gz"
+MD5SUM="88725490243e69d5ab5cde349fa5fa3a"
DOWNLOAD_x86_64=""
MD5SUM_x86_64=""
REQUIRES="lua ode libxdg-basedir"
diff --git a/games/xonotic/0d3d1f2655901776b2fc3e911eb78478412f789a.diff b/games/xonotic/0d3d1f2655901776b2fc3e911eb78478412f789a.diff
deleted file mode 100644
index 46556db5db..0000000000
--- a/games/xonotic/0d3d1f2655901776b2fc3e911eb78478412f789a.diff
+++ /dev/null
@@ -1,31 +0,0 @@
-diff --git a/Makefile.am b/Makefile.am
-index d21887d..07338eb 100644
---- a/Makefile.am
-+++ b/Makefile.am
-@@ -5,7 +5,7 @@ blind_id_SOURCES = main.c
- blind_id_LDADD = libd0_blind_id.la
-
- lib_LTLIBRARIES = libd0_blind_id.la
--# versioninfo:
-+# version-info:
- # - compatible interface change: c:r:a -> c+1:0:a+1
- # - incompatible interface change: c:r:a -> c+1:0:0
- # - internal change: c:r:a -> c:r+1:a
-@@ -29,7 +29,7 @@ libd0_blind_id_la_SOURCES += d0_bignum-gmp.c
- endif
- endif
- endif
--libd0_blind_id_la_LDFLAGS = -versioninfo 7:1:7
-+libd0_blind_id_la_LDFLAGS = -version-info 7:1:7
- libd0_blind_id_la_CFLAGS = -fvisibility=hidden -Wold-style-definition -Wstrict-prototypes -Wsign-compare -Wdeclaration-after-statement
- library_includedir = $(includedir)/d0_blind_id
- library_include_HEADERS = d0_blind_id.h d0.h
-@@ -40,7 +40,7 @@ if ENABLE_RIJNDAEL
- lib_LTLIBRARIES += libd0_rijndael.la
- libd0_rijndael_la_SOURCES = d0_rijndael.c \
- d0_rijndael.h
--libd0_rijndael_la_LDFLAGS = -versioninfo 0:0:0
-+libd0_rijndael_la_LDFLAGS = -version-info 0:0:0
- libd0_rijndael_la_CFLAGS = -fvisibility=hidden -Wold-style-definition -Wstrict-prototypes -Wsign-compare -Wdeclaration-after-statement
- library_include_HEADERS += d0_rijndael.h
- pkgconfig_HEADERS += d0_rijndael.pc
diff --git a/games/xonotic/README b/games/xonotic/README
index 0611d9c7e6..c51e063195 100644
--- a/games/xonotic/README
+++ b/games/xonotic/README
@@ -4,3 +4,13 @@ addictive arena shooter gameplay which is all spawned and driven by
the community itself. Xonotic is a direct successor of the Nexuiz
project with years of development between them, and it aims to become
the best possible open-source FPS (first-person-shooter) of its kind.
+
+Note: package now includes the dedicated server.
+
+To start a dedicater server:
+ - copy doc/server/server.cfg to ~/.xonotic/data/server.cfg
+ - edit cfg according to your needs
+ - start server via 'xonotic-dedicated'
+
+For server configuration check out the wiki's server section:
+https://gitlab.com/xonotic/xonotic/-/wikis/home#server-administration
diff --git a/games/xonotic/xonotic-sdl.desktop b/games/xonotic/xonotic-sdl.desktop
new file mode 100644
index 0000000000..fe5b8e4832
--- /dev/null
+++ b/games/xonotic/xonotic-sdl.desktop
@@ -0,0 +1,8 @@
+[Desktop Entry]
+Type=Application
+Name=Xonotic (SDL)
+Categories=Game;
+Exec=xonotic-sdl
+Icon=xonotic
+Terminal=false
+StartupNotify=false
diff --git a/games/xonotic/xonotic.SlackBuild b/games/xonotic/xonotic.SlackBuild
index cc90171743..5c08a58476 100644
--- a/games/xonotic/xonotic.SlackBuild
+++ b/games/xonotic/xonotic.SlackBuild
@@ -1,4 +1,4 @@
-#!/bin/sh
+#!/bin/bash
# Slackware build script for xonotic
@@ -22,10 +22,13 @@
# OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF THIS SOFTWARE, EVEN IF
# ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
+cd $(dirname $0) ; CWD=$(pwd)
+
PRGNAM=xonotic
-VERSION=${VERSION:-0.8.2}
-BUILD=${BUILD:-2}
+VERSION=${VERSION:-0.8.6}
+BUILD=${BUILD:-1}
TAG=${TAG:-_SBo}
+PKGTYPE=${PKGTYPE:-tgz}
if [ -z "$ARCH" ]; then
case "$( uname -m )" in
@@ -35,7 +38,11 @@ if [ -z "$ARCH" ]; then
esac
fi
-CWD=$(pwd)
+if [ ! -z "${PRINT_PACKAGE_NAME}" ]; then
+ echo "$PRGNAM-$VERSION-$ARCH-$BUILD$TAG.$PKGTYPE"
+ exit 0
+fi
+
TMP=${TMP:-/tmp/SBo}
PKG=$TMP/package-$PRGNAM
OUTPUT=${OUTPUT:-/tmp}
@@ -75,12 +82,8 @@ mkdir -p \
$PKG/usr/share/$PRGNAM \
$PKG/usr/share/{applications,pixmaps}
-# Fix -version-info as requested by Hunter Sezen
-patch -p1 < $CWD/0d3d1f2655901776b2fc3e911eb78478412f789a.diff source/d0_blind_id/Makefile.am
-
cd source/d0_blind_id
-
- autoreconf -fi
+ ./autogen.sh
CFLAGS="$SLKCFLAGS" \
./configure \
--prefix=/usr \
@@ -89,7 +92,7 @@ cd source/d0_blind_id
--disable-static
make
- make install DESTDIR=$PKG
+ make install-strip DESTDIR=$PKG
cd -
# Rather than using libdl, link libd0_blind_id and libd0_rijndael
@@ -101,22 +104,30 @@ make -C source/darkplaces release \
CFLAGS_CRYPTO_RIJNDAEL="-I$PKG/usr/include -DCRYPTO_RIJNDAEL_STATIC" \
LIB_CRYPTO_RIJNDAEL="-L$PKG/usr/lib${LIBDIRSUFFIX} -ld0_rijndael"
-install -m 755 source/darkplaces/darkplaces-sdl $PKG/usr/bin/xonotic-glx
-install -m 755 source/darkplaces/darkplaces-glx $PKG/usr/bin/xonotic-sdl
-install -m 644 $CWD/xonotic.desktop $PKG/usr/share/applications
+install -m 755 source/darkplaces/darkplaces-sdl $PKG/usr/bin/xonotic-sdl
+install -m 755 source/darkplaces/darkplaces-glx $PKG/usr/bin/xonotic-glx
+install -m 755 source/darkplaces/darkplaces-dedicated $PKG/usr/bin/xonotic-dedicated
+install -m 644 $CWD/*.desktop $PKG/usr/share/applications
install -m 644 misc/logos/xonotic_icon.svg $PKG/usr/share/pixmaps/xonotic.svg
cp -a data key_0.d0pk $PKG/usr/share/$PRGNAM
-mkdir -p $PKG/usr/doc/$PRGNAM-$VERSION
+mkdir -p $PKG/usr/doc/$PRGNAM-$VERSION/server
cp -a \
- COPYING Docs/* \
+ COPYING Docs/*.txt Docs/egyptsoc Docs/faq.md Docs/guide.md \
$PKG/usr/doc/$PRGNAM-$VERSION
cat $CWD/$PRGNAM.SlackBuild > $PKG/usr/doc/$PRGNAM-$VERSION/$PRGNAM.SlackBuild
+# Copy dedicated server related files
+cp -a \
+ server/readme.txt server/server.cfg server/server_linux.sh server/rcon.pl \
+ $PKG/usr/doc/$PRGNAM-$VERSION/server
+
+rm -f $PKG/usr/lib${LIBDIRSUFFIX}/*.la
+
mkdir -p $PKG/install
cat $CWD/slack-desc > $PKG/install/slack-desc
cat $CWD/doinst.sh > $PKG/install/doinst.sh
cd $PKG
-/sbin/makepkg -l y -c n $OUTPUT/$PRGNAM-$VERSION-$ARCH-$BUILD$TAG.${PKGTYPE:-tgz}
+/sbin/makepkg -l y -c n $OUTPUT/$PRGNAM-$VERSION-$ARCH-$BUILD$TAG.$PKGTYPE
diff --git a/games/xonotic/xonotic.info b/games/xonotic/xonotic.info
index 12276b852d..666bbca751 100644
--- a/games/xonotic/xonotic.info
+++ b/games/xonotic/xonotic.info
@@ -1,10 +1,10 @@
PRGNAM="xonotic"
-VERSION="0.8.2"
+VERSION="0.8.6"
HOMEPAGE="http://www.xonotic.org/"
-DOWNLOAD="http://dl.xonotic.org/xonotic-0.8.2.zip"
-MD5SUM="1bd46c1fb79aae42bb13e74f5a0ff46e"
+DOWNLOAD="http://dl.xonotic.org/xonotic-0.8.6.zip"
+MD5SUM="32cdf9f90930e4599177dafc41adda48"
DOWNLOAD_x86_64=""
MD5SUM_x86_64=""
-REQUIRES="SDL2"
-MAINTAINER="Симонъ С. Болокановъ"
-EMAIL="sbolokanov@abv.bg"
+REQUIRES=""
+MAINTAINER="S. S. Bolokanar"
+EMAIL="bolokanar@bulgars.org"
diff --git a/games/xpilot-ng/xpilot-ng.SlackBuild b/games/xpilot-ng/xpilot-ng.SlackBuild
index 4ea74d70f6..24b16004f5 100644
--- a/games/xpilot-ng/xpilot-ng.SlackBuild
+++ b/games/xpilot-ng/xpilot-ng.SlackBuild
@@ -1,4 +1,4 @@
-#!/bin/sh
+#!/bin/bash
# Slackware build script for xpilot-ng
@@ -22,10 +22,13 @@
# OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF THIS SOFTWARE, EVEN IF
# ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
+cd $(dirname $0) ; CWD=$(pwd)
+
PRGNAM=xpilot-ng
VERSION=${VERSION:-4.7.3}
BUILD=${BUILD:-1}
TAG=${TAG:-_SBo}
+PKGTYPE=${PKGTYPE:-tgz}
if [ -z "$ARCH" ]; then
case "$( uname -m )" in
@@ -35,7 +38,14 @@ if [ -z "$ARCH" ]; then
esac
fi
-CWD=$(pwd)
+# If the variable PRINT_PACKAGE_NAME is set, then this script will report what
+# the name of the created package would be, and then exit. This information
+# could be useful to other scripts.
+if [ ! -z "${PRINT_PACKAGE_NAME}" ]; then
+ echo "$PRGNAM-$VERSION-$ARCH-$BUILD$TAG.$PKGTYPE"
+ exit 0
+fi
+
TMP=${TMP:-/tmp/SBo}
PKG=$TMP/package-$PRGNAM
OUTPUT=${OUTPUT:-/tmp}
@@ -109,4 +119,4 @@ cat $CWD/slack-desc > $PKG/install/slack-desc
cat $CWD/doinst.sh > $PKG/install/doinst.sh
cd $PKG
-/sbin/makepkg -l y -c n $OUTPUT/$PRGNAM-$VERSION-$ARCH-$BUILD$TAG.${PKGTYPE:-tgz}
+/sbin/makepkg -l y -c n $OUTPUT/$PRGNAM-$VERSION-$ARCH-$BUILD$TAG.$PKGTYPE
diff --git a/games/xroar-roms/xroar-roms.SlackBuild b/games/xroar-roms/xroar-roms.SlackBuild
index 28216105d4..7bc0d9aac9 100644
--- a/games/xroar-roms/xroar-roms.SlackBuild
+++ b/games/xroar-roms/xroar-roms.SlackBuild
@@ -1,8 +1,8 @@
-#!/bin/sh
+#!/bin/bash
# Slackware build script for xroar-roms
-# Written by B. Watson (yalhcru@gmail.com)
+# Written by B. Watson (urchlay@slackware.uk)
# Licensed under the WTFPL. See http://www.wtfpl.net/txt/copying/ for details.
@@ -11,13 +11,22 @@
# as simple as adding it to the .info file, just make sure the download
# links line up with the md5sums.
+# 20220315 bkw: BUILD=2, use symlinks for duplicate ROMs.
+
+cd $(dirname $0) ; CWD=$(pwd)
+
PRGNAM=xroar-roms
VERSION=${VERSION:-20180901}
-BUILD=${BUILD:-1}
+BUILD=${BUILD:-2}
TAG=${TAG:-_SBo}
+PKGTYPE=${PKGTYPE:-tgz}
ARCH=noarch
-CWD=$(pwd)
+if [ ! -z "${PRINT_PACKAGE_NAME}" ]; then
+ echo "$PRGNAM-$VERSION-$ARCH-$BUILD$TAG.$PKGTYPE"
+ exit 0
+fi
+
TMP=${TMP:-/tmp/SBo}
PKG=$TMP/package-$PRGNAM
OUTPUT=${OUTPUT:-/tmp}
@@ -38,6 +47,12 @@ for romfile in $DOWNLOAD; do
cat "$CWD/$romfile" > "$romfile"
done
+# 20220315 bkw: some of the ROMs were dupes. Instead of installing
+# duplicate files, symlink them.
+ln -s d200rom1.rom d64tano.rom
+ln -s d200rom2.rom d64rom2.rom
+ln -s d200rom2.rom d64tano2.rom
+
# Get rid of "-vo sdl" from example commands, as it no longer works in
# modern xroar.
mkdir -p $PKG/usr/doc/$PRGNAM-$VERSION
@@ -49,4 +64,4 @@ mkdir -p $PKG/install
cat $CWD/slack-desc > $PKG/install/slack-desc
cd $PKG
-/sbin/makepkg -l y -c n $OUTPUT/$PRGNAM-$VERSION-$ARCH-$BUILD$TAG.${PKGTYPE:-tgz}
+/sbin/makepkg -l y -c n $OUTPUT/$PRGNAM-$VERSION-$ARCH-$BUILD$TAG.$PKGTYPE
diff --git a/games/xroar-roms/xroar-roms.info b/games/xroar-roms/xroar-roms.info
index b7650d7a1a..ad85d2d202 100644
--- a/games/xroar-roms/xroar-roms.info
+++ b/games/xroar-roms/xroar-roms.info
@@ -21,9 +21,6 @@ DOWNLOAD="http://www.colorcomputerarchive.com/coco/ROMs/XRoar/Readme.txt \
http://www.colorcomputerarchive.com/coco/ROMs/XRoar/Dragon/BASIC_OS/d200rom2.rom \
http://www.colorcomputerarchive.com/coco/ROMs/XRoar/Dragon/BASIC_OS/d32.rom \
http://www.colorcomputerarchive.com/coco/ROMs/XRoar/Dragon/BASIC_OS/d64rom1.rom \
- http://www.colorcomputerarchive.com/coco/ROMs/XRoar/Dragon/BASIC_OS/d64rom2.rom \
- http://www.colorcomputerarchive.com/coco/ROMs/XRoar/Dragon/BASIC_OS/d64tano.rom \
- http://www.colorcomputerarchive.com/coco/ROMs/XRoar/Dragon/BASIC_OS/d64tano2.rom \
http://www.colorcomputerarchive.com/coco/ROMs/XRoar/Dragon/DOS/ddos10.rom \
http://www.colorcomputerarchive.com/coco/ROMs/XRoar/Dragon/DOS/ddos11c.rom \
http://www.colorcomputerarchive.com/coco/ROMs/XRoar/Dragon/DOS/ddos42.rom"
@@ -47,9 +44,6 @@ MD5SUM="8b08af42c82761c2ffab780b4675dee5 \
fd91edce7be5e7c2d88e46b76956a8aa \
3420b96031078a4ef408cad7bf21a33f \
5f0bee59710e55f5880e74890912ed78 \
- fd91edce7be5e7c2d88e46b76956a8aa \
- be9bc86ee5eb401d0a40d0377f65fefa \
- fd91edce7be5e7c2d88e46b76956a8aa \
1c965da49b6c5459b8353630aa1482e7 \
d8429af1a12f7438a4bf88a5b934cb3a \
c956a854cbc4b9d1e69c000f78368668"
@@ -57,4 +51,4 @@ DOWNLOAD_x86_64=""
MD5SUM_x86_64=""
REQUIRES=""
MAINTAINER="B. Watson"
-EMAIL="yalhcru@gmail.com"
+EMAIL="urchlay@slackware.uk"
diff --git a/games/xroar/ChangeLog.old b/games/xroar/ChangeLog.old
index 8a18244fb1..b4384cc024 100644
--- a/games/xroar/ChangeLog.old
+++ b/games/xroar/ChangeLog.old
@@ -1,3 +1,27 @@
+# 20191130 bkw:
+# - update for 0.35.4
+# - restore the SDL1 build, now that it builds again
+# - remove the possibility of including ROMs in the package, because:
+# - make xroar-roms a required dependency
+
+# 20181201 bkw: update for 0.35.2
+
+# 20180828 bkw:
+# - update for 0.35
+# - build with --without-oss by default, add OSS=yes option
+# - get rid of alsa_first.diff (doesn't apply any more anyway)
+# - add PULSE=no option
+# - move cruft out of here & into ChangeLog.old
+# - SDL 1.x build broke in 0.35, so remove SDL2=no and add SDL2
+# to REQUIRES.
+
+# 20170822 bkw:
+# - update for 0.34.8
+# - add SDL2=no and GTKGLEXT=no options, mostly for my own testing
+# - record build options in slack-desc
+
+# 20170122 bkw: update for 0.34.7
+
# 20161016 bkw:
# - update for 0.34.5
# - move binary to /usr/games
diff --git a/games/xroar/README b/games/xroar/README
index 66ac73893d..35880e4f6a 100644
--- a/games/xroar/README
+++ b/games/xroar/README
@@ -1,13 +1,12 @@
xroar (emulator for 6809-based systems)
-XRoar is a Dragon emulator for Linux, Unix, Mac OS X, GP32, Nintendo
-DS and Windows. Due to hardware similarities, XRoar also emulates the
-Tandy Colour Computer (CoCo) models 1 & 2. For more information on the
-Dragon and CoCo computers, see:
+XRoar emulates the Dragon 32/64; Tandy Colour Computers 1, 2 and 3;
+the Tandy MC-10; and some other similar machines or clones. It runs
+on a wide variety of platforms. For more information on the Dragon and
+CoCo computers, see:
http://en.wikipedia.org/wiki/TRS-80_Color_Computer
http://archive.worldofdragon.org/index.php?title=Main_Page
http://archive.worldofdragon.org/archive/index.php
For optional dependencies and build options, see README_SBo.txt.
-
diff --git a/games/xroar/README_SBo.txt b/games/xroar/README_SBo.txt
index c7ccc12db3..0f685f6196 100644
--- a/games/xroar/README_SBo.txt
+++ b/games/xroar/README_SBo.txt
@@ -1,22 +1,31 @@
+xroar supports multiple audio systems and has two user interfaces,
+gtk2 (using gtkglext) and sdl2 (very bare-bones; no menus). By
+default, both UIs are built, as is support for PulseAudio and plain
+ALSA audio. For most users, these defaults are just fine. If you have
+different needs, read on.
+
Optional Dependencies
=====================
-SDL2 - If this is installed, xroar's alternate "bare-bones" SDL2
- user inteface will be available via the "-ui sdl" option.
-
-jack - if you want to use JACK for audio output, install jack and set
+jack - If you want to use JACK for audio output, install jack and set
JACK=yes in the environment before building xroar. If JACK audio has
x-runs, try 'setcap cap_ipc_lock,cap_sys_nice=ep /usr/games/xroar'.
+ If you don't know what jack is, or why you might want to use it, then
+ you don't want it.
Environment Variables
=====================
+JACK - see above. Default: no.
+
GTKGLEXT - If you have gtkglext installed, but don't want to build
- xroar with it, export GTKGLEXT=no [1] [2].
+ xroar with it, export GTKGLEXT=no [1] [2]. Default: yes.
-SDL2 - If you have SDL2 installed, but don't want to build xroar with
- it, export SDL2=no [2].
+SDL2 - If you don't want to build xroar with SDL2, export SDL2=no [2].
+ This will remove the "-ui sdl" option, which is probably
+ of no consequence since the SDL user interface isn't very
+ featureful. Default: yes.
OSS - use OSS for audio? Default is "no", export OSS="yes" to enable.
Most users won't need this.
@@ -28,9 +37,12 @@ Notes
=====
[1]: Yes, gtkglext is optional, despite being listed in REQUIRES in
- the .info file. There's no "either-or" syntax for REQUIRES, so
- I had to list either gtkglext or SDL2, and the gtkglext UI
- is a lot nicer so it's what most people will want.
+ the .info file. I made it a hard dependency because the SDL user
+ interface has no real GUI features, while the gtkglext UI acts
+ like a proper GUI application. Users who just take the defaults
+ will end up with the usable UI. If you're reading this, you're
+ welcome to ignore the REQUIRES="gtkglext" and build with SDL2
+ only, if you have a reason to want to.
[2]: At least one of SDL2 or gtkglext is required, so you can't build
with SDL2=no GTKGLEXT=no. If you want to be super-pedantic, yes,
diff --git a/games/xroar/doinst.sh b/games/xroar/doinst.sh
index 5fb28930db..2b1fcc9774 100644
--- a/games/xroar/doinst.sh
+++ b/games/xroar/doinst.sh
@@ -1,3 +1,13 @@
if [ -x /usr/bin/update-desktop-database ]; then
/usr/bin/update-desktop-database -q usr/share/applications >/dev/null 2>&1
fi
+
+if [ -e usr/share/icons/hicolor/icon-theme.cache ]; then
+ if [ -x /usr/bin/gtk-update-icon-cache ]; then
+ /usr/bin/gtk-update-icon-cache usr/share/icons/hicolor >/dev/null 2>&1
+ fi
+fi
+
+if [ -x /usr/bin/install-info ]; then
+ /usr/bin/install-info usr/info/xroar.info.gz usr/info/dir
+fi
diff --git a/games/xroar/douninst.sh b/games/xroar/douninst.sh
new file mode 100644
index 0000000000..bd5d05ef99
--- /dev/null
+++ b/games/xroar/douninst.sh
@@ -0,0 +1,16 @@
+if [ -x /usr/bin/update-desktop-database ]; then
+ /usr/bin/update-desktop-database -q usr/share/applications >/dev/null 2>&1
+fi
+
+if [ -e usr/share/icons/hicolor/icon-theme.cache ]; then
+ if [ -x /usr/bin/gtk-update-icon-cache ]; then
+ /usr/bin/gtk-update-icon-cache usr/share/icons/hicolor >/dev/null 2>&1
+ fi
+fi
+
+if [ -x /usr/bin/install-info -a -d usr/info ]; then
+ ( cd usr/info
+ rm -f dir
+ for i in *.info*; do /usr/bin/install-info $i dir 2>/dev/null; done
+ )
+fi
diff --git a/games/xroar/icons/128.png b/games/xroar/icons/128.png
new file mode 100644
index 0000000000..6887dc3e1c
--- /dev/null
+++ b/games/xroar/icons/128.png
Binary files differ
diff --git a/games/xroar/icons/16.png b/games/xroar/icons/16.png
new file mode 100644
index 0000000000..0160623dae
--- /dev/null
+++ b/games/xroar/icons/16.png
Binary files differ
diff --git a/games/xroar/icons/22.png b/games/xroar/icons/22.png
new file mode 100644
index 0000000000..051b55aa8e
--- /dev/null
+++ b/games/xroar/icons/22.png
Binary files differ
diff --git a/games/xroar/icons/32.png b/games/xroar/icons/32.png
new file mode 100644
index 0000000000..e3a866a6e2
--- /dev/null
+++ b/games/xroar/icons/32.png
Binary files differ
diff --git a/games/xroar/icons/48.png b/games/xroar/icons/48.png
new file mode 100644
index 0000000000..b61f8529fe
--- /dev/null
+++ b/games/xroar/icons/48.png
Binary files differ
diff --git a/games/xroar/icons/64.png b/games/xroar/icons/64.png
new file mode 100644
index 0000000000..fae6a8aecd
--- /dev/null
+++ b/games/xroar/icons/64.png
Binary files differ
diff --git a/games/xroar/slack-desc b/games/xroar/slack-desc
index 4a27a9c5ab..4b844ed3a6 100644
--- a/games/xroar/slack-desc
+++ b/games/xroar/slack-desc
@@ -8,9 +8,9 @@
|-----handy-ruler------------------------------------------------------|
xroar: xroar (emulator for 6809-based systems)
xroar:
-xroar: XRoar is a Dragon emulator for Linux, Unix, Mac OS X, GP32, Nintendo
-xroar: DS and Windows. Due to hardware similarities, XRoar also emulates
-xroar: the Tandy Colour Computer (CoCo) models 1 & 2.
+xroar: XRoar emulates the Dragon 32/64; Tandy Colour Computers 1, 2 and 3;
+xroar: the Tandy MC-10; and some other similar machines or clones. It runs
+xroar: on a wide variety of platforms.
xroar:
xroar: This package is built with:
xroar: GtkGLExt: @GTKGLEXT@ | SDL2: @SDL2@ |
diff --git a/games/xroar/xroar.SlackBuild b/games/xroar/xroar.SlackBuild
index 9a38359102..422b078b3d 100644
--- a/games/xroar/xroar.SlackBuild
+++ b/games/xroar/xroar.SlackBuild
@@ -1,11 +1,27 @@
-#!/bin/sh
+#!/bin/bash
# Slackware build script for xroar
-# Written by B. Watson (yalhcru@gmail.com)
+# Written by B. Watson (urchlay@slackware.uk)
# Licensed under the WTFPL. See http://www.wtfpl.net/txt/copying/ for details.
+# 20240314 bkw: update for 1.5.4
+# 20240216 bkw: update for 1.5.3
+# 20230907 bkw: update for 1.4.2
+# - add 22x22 and 64x64 icons.
+# - reword README and slack-desc (use text from the man page).
+
+# 20230308 bkw: BUILD=2, de-uglify douninst.sh.
+# 20230214 bkw: update for 1.3.1
+# 20230109 bkw: update for 1.3
+
+# 20211015 bkw:
+# - update for 0.37.1
+# - new-style icons
+# - doinst.sh installs info file in info dir
+# - douninst.sh removes info file from info dir
+
# 20201025 bkw:
# - update for 0.36.2
# - the SDL 1.x UI is gone. One or the other of SDL2, gtkglext is
@@ -13,34 +29,13 @@
# in which case you get an xroar that has no display at all! Added
# code to the script to prevent this from happening.
-# 20191130 bkw:
-# - update for 0.35.4
-# - restore the SDL1 build, now that it builds again
-# - remove the possibility of including ROMs in the package, because:
-# - make xroar-roms a required dependency
-
-# 20181201 bkw: update for 0.35.2
-
-# 20180828 bkw:
-# - update for 0.35
-# - build with --without-oss by default, add OSS=yes option
-# - get rid of alsa_first.diff (doesn't apply any more anyway)
-# - add PULSE=no option
-# - move cruft out of here & into ChangeLog.old
-# - SDL 1.x build broke in 0.35, so remove SDL2=no and add SDL2
-# to REQUIRES.
-
-# 20170822 bkw:
-# - update for 0.34.8
-# - add SDL2=no and GTKGLEXT=no options, mostly for my own testing
-# - record build options in slack-desc
-
-# 20170122 bkw: update for 0.34.7
+cd $(dirname $0) ; CWD=$(pwd)
PRGNAM=xroar
-VERSION=${VERSION:-0.36.2}
+VERSION=${VERSION:-1.5.4}
BUILD=${BUILD:-1}
TAG=${TAG:-_SBo}
+PKGTYPE=${PKGTYPE:-tgz}
if [ -z "$ARCH" ]; then
case "$( uname -m )" in
@@ -50,7 +45,11 @@ if [ -z "$ARCH" ]; then
esac
fi
-CWD=$(pwd)
+if [ ! -z "${PRINT_PACKAGE_NAME}" ]; then
+ echo "$PRGNAM-$VERSION-$ARCH-$BUILD$TAG.$PKGTYPE"
+ exit 0
+fi
+
TMP=${TMP:-/tmp/SBo}
PKG=$TMP/package-$PRGNAM
OUTPUT=${OUTPUT:-/tmp}
@@ -127,6 +126,7 @@ CXXFLAGS="$SLKCFLAGS" \
--localstatedir=/var \
--mandir=/usr/man \
--docdir=/usr/doc/$PRGNAM-$VERSION \
+ --infodir=/usr/info \
--build=$ARCH-slackware-linux
make
@@ -136,7 +136,10 @@ strip $PKG/usr/games/$PRGNAM
# reset these for use in the slack-desc
SDL2=no; JACK=no; GTKGLEXT=no; PULSE=no; OSS=no
-# actually examine the binary to figure out build options.
+# actually examine the binary to figure out build options. this may
+# seem like overkill, but it's very handy when updating to new xroar
+# versions (if the slack-desc doesn't match the environment, something
+# has changed in xroar and this script needs fixing).
ldd $PKG/usr/games/$PRGNAM > ldd.tmp
grep -q libSDL2 ldd.tmp && SDL2=yes
grep -q libjack ldd.tmp && JACK=yes
@@ -151,21 +154,29 @@ sed '1s,\<1\>,6,' \
| gzip -9c > $PKG/usr/man/man6/$PRGNAM.6.gz
rm -rf $PKG/usr/man/man1
-mv $PKG/usr/share/info $PKG/usr/info
-rm -rf $PKG/usr/share
rm -f $PKG/usr/info/dir
gzip -9 $PKG/usr/info/*.info*
# include empty ROM dir
mkdir -p $PKG/usr/share/xroar/roms
-# Icon taken from Fedora package here:
-# ftp://mirror.switch.ch/pool/3/mirror/rpmfusion/free/fedora/updates/8/i386/xroar-0.21-2.fc8.i386.rpm
-# Current versions of xroar include windows and mac icons that are larger,
-# but they don't include the word 'xroar' (just the X-shaped graphic), so
-# I'm sticking with the old Fedora icon.
+# 20211015 bkw: Icons converted from src/macosx/xroar.icns with
+# icns2png from the libicns package. I really liked the old Fedora
+# icon, with the colorful XROAR at the bottom, but it only existed
+# as a 32x32 PNG, which is smaller than a postage stamp on most
+# modern displays and doesn't scale up nicely. Besides which, these
+# are upstream's official icons.
+# 20230907 bkw: added 22x22 and 64x64 icons.
+for i in $CWD/icons/*.png; do
+ px=$( basename $i | cut -d. -f1 )
+ size=${px}x${px}
+ dir=$PKG/usr/share/icons/hicolor/$size/apps
+ mkdir -p $dir
+ cat $i > $dir/$PRGNAM.png
+done
+
mkdir $PKG/usr/share/pixmaps
-cat $CWD/$PRGNAM.png > $PKG/usr/share/pixmaps/$PRGNAM.png
+ln -s ../icons/hicolor/48x48/apps/$PRGNAM.png $PKG/usr/share/pixmaps/$PRGNAM.png
mkdir $PKG/usr/share/applications
cp $CWD/*.desktop $PKG/usr/share/applications
@@ -190,5 +201,10 @@ sed -e "s,@JACK@,$JACK," \
$CWD/slack-desc > $PKG/install/slack-desc
cat $CWD/doinst.sh > $PKG/install/doinst.sh
+# 20211015 bkw: douninst.sh removes the XRoar entry from the info
+# directory, and the Emulators section if XRoar was the only entry
+# there.
+cat $CWD/douninst.sh > $PKG/install/douninst.sh
+
cd $PKG
-/sbin/makepkg -l y -c n $OUTPUT/$PRGNAM-$VERSION-$ARCH-$BUILD$TAG.${PKGTYPE:-tgz}
+/sbin/makepkg -l y -c n $OUTPUT/$PRGNAM-$VERSION-$ARCH-$BUILD$TAG.$PKGTYPE
diff --git a/games/xroar/xroar.info b/games/xroar/xroar.info
index 88d6b3a35a..4c83eafd13 100644
--- a/games/xroar/xroar.info
+++ b/games/xroar/xroar.info
@@ -1,10 +1,10 @@
PRGNAM="xroar"
-VERSION="0.36.2"
-HOMEPAGE="http://www.6809.org.uk/dragon/xroar.shtml"
-DOWNLOAD="http://www.6809.org.uk/xroar/dl/xroar-0.36.2.tar.gz"
-MD5SUM="c1bcc681508c5e97c335c7d71b2abd4b"
+VERSION="1.5.4"
+HOMEPAGE="https://www.6809.org.uk/dragon/xroar.shtml"
+DOWNLOAD="https://www.6809.org.uk/xroar/dl/xroar-1.5.4.tar.gz"
+MD5SUM="6f00edbe9d24226d93b8c36e3dd873b1"
DOWNLOAD_x86_64=""
MD5SUM_x86_64=""
REQUIRES="gtkglext xroar-roms"
MAINTAINER="B. Watson"
-EMAIL="yalhcru@gmail.com"
+EMAIL="urchlay@slackware.uk"
diff --git a/games/xroar/xroar_coco_ntsc.desktop b/games/xroar/xroar_coco_ntsc.desktop
index 60424225b7..bf60506234 100644
--- a/games/xroar/xroar_coco_ntsc.desktop
+++ b/games/xroar/xroar_coco_ntsc.desktop
@@ -1,7 +1,7 @@
[Desktop Entry]
Name=XRoar CoCo (NTSC)
Type=Application
-Exec=xroar -ntsc -machine cocous
+Exec=/usr/games/xroar -ntsc -machine cocous
Icon=xroar
Terminal=false
Categories=Game;Emulator;
diff --git a/games/xroar/xroar_coco_pal.desktop b/games/xroar/xroar_coco_pal.desktop
index 0e2eb8ddf0..27491aa503 100644
--- a/games/xroar/xroar_coco_pal.desktop
+++ b/games/xroar/xroar_coco_pal.desktop
@@ -1,7 +1,7 @@
[Desktop Entry]
Name=XRoar CoCo (PAL)
Type=Application
-Exec=xroar -pal -machine coco
+Exec=/usr/games/xroar -pal -machine coco
Icon=xroar
Terminal=false
Categories=Game;Emulator;
diff --git a/games/xroar/xroar_d32.desktop b/games/xroar/xroar_d32.desktop
index 11fa628ea4..5e6baaf1db 100644
--- a/games/xroar/xroar_d32.desktop
+++ b/games/xroar/xroar_d32.desktop
@@ -1,7 +1,7 @@
[Desktop Entry]
Name=XRoar Dragon32
Type=Application
-Exec=xroar -machine dragon32
+Exec=/usr/games/xroar -machine dragon32
Icon=xroar
Terminal=false
Categories=Game;Emulator;
diff --git a/games/xroar/xroar_d64.desktop b/games/xroar/xroar_d64.desktop
index 1c838df74b..16c19bb56d 100644
--- a/games/xroar/xroar_d64.desktop
+++ b/games/xroar/xroar_d64.desktop
@@ -1,7 +1,7 @@
[Desktop Entry]
Name=XRoar Dragon64
Type=Application
-Exec=xroar -machine dragon64
+Exec=/usr/games/xroar -machine dragon64
Icon=xroar
Terminal=false
Categories=Game;Emulator;
diff --git a/games/xskat/xskat.SlackBuild b/games/xskat/xskat.SlackBuild
index 657f870d16..caa18ebcd6 100644
--- a/games/xskat/xskat.SlackBuild
+++ b/games/xskat/xskat.SlackBuild
@@ -1,4 +1,4 @@
-#!/bin/sh
+#!/bin/bash
# Slackware build script for xskat
@@ -25,26 +25,36 @@
# OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF THIS SOFTWARE, EVEN IF
# ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
+cd $(dirname $0) ; CWD=$(pwd)
+
PRGNAM=xskat
VERSION=${VERSION:-4.0}
BUILD=${BUILD:-1}
TAG=${TAG:-_SBo}
+PKGTYPE=${PKGTYPE:-tgz}
if [ -z "$ARCH" ]; then
case "$( uname -m )" in
- i?86) ARCH=i486 ;;
+ i?86) ARCH=i586 ;;
arm*) ARCH=arm ;;
*) ARCH=$( uname -m ) ;;
esac
fi
-CWD=$(pwd)
+# If the variable PRINT_PACKAGE_NAME is set, then this script will report what
+# the name of the created package would be, and then exit. This information
+# could be useful to other scripts.
+if [ ! -z "${PRINT_PACKAGE_NAME}" ]; then
+ echo "$PRGNAM-$VERSION-$ARCH-$BUILD$TAG.$PKGTYPE"
+ exit 0
+fi
+
TMP=${TMP:-/tmp/SBo}
PKG=$TMP/package-$PRGNAM
OUTPUT=${OUTPUT:-/tmp}
-if [ "$ARCH" = "i486" ]; then
- SLKCFLAGS="-O2 -march=i486 -mtune=i686"
+if [ "$ARCH" = "i586" ]; then
+ SLKCFLAGS="-O2 -march=i586 -mtune=i686"
LIBDIRSUFFIX=""
elif [ "$ARCH" = "i686" ]; then
SLKCFLAGS="-O2 -march=i686 -mtune=i686"
@@ -99,4 +109,4 @@ mkdir -p $PKG/install
cat $CWD/slack-desc > $PKG/install/slack-desc
cd $PKG
-/sbin/makepkg -l y -c n $OUTPUT/$PRGNAM-$VERSION-$ARCH-$BUILD$TAG.${PKGTYPE:-tgz}
+/sbin/makepkg -l y -c n $OUTPUT/$PRGNAM-$VERSION-$ARCH-$BUILD$TAG.$PKGTYPE
diff --git a/games/xspacewarp/README b/games/xspacewarp/README
index d2dcecc72e..f10ecc74c3 100644
--- a/games/xspacewarp/README
+++ b/games/xspacewarp/README
@@ -1,5 +1,7 @@
-In xspacewarp the player maneuvers a Federation spaceship, called the Endever,
-through 81 sectors of space trying to destroy an Armada of enemy Jovian ships
-before they destroy the all the Federation bases.
+xspacewarp (Time Trek like game for X Window System)
+
+In xspacewarp the player maneuvers a Federation spaceship, called the
+Endever, through 81 sectors of space trying to destroy an Armada of
+enemy Jovian ships before they destroy the all the Federation bases.
Ported to X from a game originally written for the TRS-80 in 1977.
diff --git a/games/xspacewarp/XSpacewarp b/games/xspacewarp/XSpacewarp
deleted file mode 100644
index 15960e6a1e..0000000000
--- a/games/xspacewarp/XSpacewarp
+++ /dev/null
@@ -1,267 +0,0 @@
-! app-defaults for xspacewarp 1.2 (12/22/95)
-
-! whether to use mouse pointer inside xspacewarp window
-*nomouse: true
-
-! number rows of 9x15 blocks in a sector of the universe
-*rows: 26
-
-! number columns of 9x15 blocks in a sector of the universe
-*columns: 79
-
-! The following resources refer to the number of bases, jovians,
-! stars and blackholes in the universe. "min" values correspond
-! to the lowest skill level of the game and "max" values
-! correspond to the highest skill level. Values for the other
-! skill levels are interpolated linearly between the "min" value
-! and the "max" value. Populations are chosen randomly in the
-! range: (average) +/- (variation).
-
-! Limits for the average population and the variation in
-! population for bases. The actual average and variation used
-! is interpolated linearly from these limits as a function of
-! the skill level.
-
-*minAverageBasePop: 18
-*maxAverageBasePop: 18
-*minVariationBasePop: 3
-*maxVariationBasePop: 3
-
-! Limits for the average population and the variation in
-! population for jovians.
-
-*minAverageJovianPop: 10
-*maxAverageJovianPop: 73
-*minVariationJovianPop: 3
-*maxVariationJovianPop: 3
-
-! Limits for the average population and the variation in
-! population for stars.
-
-*minAverageStarPop: 75
-*maxAverageStarPop: 75
-*minVariationStarPop: 5
-*maxVariationStarPop: 5
-
-! Limits for the average population and the variation in
-! population for blackholes.
-
-*minAverageBlackholePop: 5
-*maxAverageBlackholePop: 5
-*minVariationBlackholePop: 4
-*maxVariationBlackholePop: 4
-
-! color for text and graphical borders
-*foreground: white
-
-! background color for everything
-*background: black
-
-! visual representation of the endever (icon must have exactly 3 characters)
-*endeverColor: white
-*endeverIcon: >-0
-
-! visual representation of the jovians (icon must have exactly 3 characters)
-*jovianColor: white
-*jovianIcon: <*>
-
-! visual representation of the bases (icon must have exactly 3 characters)
-*baseColor: white
-*baseIcon: +0+
-
-! visual representation of the stars (icon must have exactly 1 character)
-*starColor: white
-*starIcon: .
-
-! visual representation of the blackholes (icon must have exactly 1 character)
-*blackholeColor: black
-*blackholeIcon: \040
-
-! faser color
-*faserColor: white
-
-! torpedo color
-*torpedoColor: white
-
-! Fasers are drawn as dashed lines. The dash list describes the
-! dash pattern of the line. A list such as "3 2 4" (elements of
-! the list are separated by \040, the octal code for a space
-! character) will make a dash pattern that has the first 3
-! pixels of the line lit, the next 2 pixels dark and the next 4
-! pixels lit. This pattern is repeated through the dashed
-! line. The dash offset is the pixel in the dash list at which
-! to begin the pattern. Eg, offset=3 in the example above would
-! mean starting the dashed line with 2 lit pixels followed by 4
-! unlit pixels and then 3 lit pixels, etc.
-*faserDashList: 4\0404
-*faserDashOffset: 0
-
-! Thickness of faser in pixels
-*faserWidth: 9
-
-! millisec time determines speed of ion thrusters
-*endeverThrustSpeed: 100
-
-! millisec interval for ship (base, jovian, endever) re-energizing
-*shipEnergizeSpeed: 3000
-
-! millisec interval between jovian actions
-*jovianActionSpeed: 100
-
-! millisec interval for faser movement
-*faserSpeed: 15
-
-! millisec interval for torpedo movement
-*torpedoSpeed: 30
-
-! dimensions of torpedo (in pixels)
-*torpedoLength: 6
-*torpedoWidth: 9
-
-! millisec interval for rate of explosion growth
-*explosionSpeed: 20
-
-*explosionColor: white
-
-! radius to use for most ship explosions
-*explosionRadiusSmall: 35
-
-! radius to use for endever self-destruct explosion
-*explosionRadiusBig: 200
-
-! endever self-destruct code
-*selfDestructCode: 123
-
-! endever default faser/torpedo angle (radians). type float.
-*defaultFiringAngle: 0.0
-
-! starting number of torpedoes for endever
-*maxTorpedoes: 10
-
-*maxJoviansPerSector: 3
-*maxStarsPerSector: 5
-
-! probability a sector is masked (percent)
-*maskProbability: 5
-
-! When the Endever leaps into a new sector, it gets placed at a
-! random location inside that sector. The euclidean distance
-! (in pixels) from this location to the jovians inside the
-! sector is at least this value.
-
-*minJovianDistance: 150
-
-! min percent energy needed for endever fasers to work
-*endeverMinFaserEnergy: 10
-
-! min percent energy for endever warpdrive to work
-*endeverMinWarpEnergy: 20
-
-! min percent energy for endever ion thrusters to work
-*endeverMinThrustEnergy: 10
-
-! min percent energy needed for jovian fasers to work
-*jovianMinFaserEnergy: 10
-
-! min percent energy for jovian warpdrive to work
-*jovianMinWarpEnergy: 20
-
-! min percent energy for ion thrusters to work
-*jovianMinThrustEnergy: 10
-
-
-! Now some "artificial intelligence" parameters for controlling
-! jovian behavior.
-
-! If the percent energy levels (ie, percent of maximum energy)
-! of the thrusters, warpdrive, fasers and shields of a jovian
-! drop to levels less than the respective "retreat" energies
-! given below, then the jovian will exit the battle scene with
-! probability (given as a percent)
-! jovianRetreatProbability. jovianRetreatSpeed (type float) is
-! the average rate (movements/sec) at which the jovian retreats
-! toward the sector edge. Thus if jovianRetreatSpeed is 1.4,
-! then a fleeing jovian will make a movement toward the edge of
-! the sector, on average, once every 1.4 seconds. And if the
-! jovian happens to already be on the edge of the sector, then
-! the jovian will leap to a different sector (if its warpdrive
-! energy is adequate) after a pause of 1.4 seconds on average.
-
-*jovianThrustRetreatEnergy: 30
-*jovianWarpRetreatEnergy: 40
-*jovianFaserRetreatEnergy: 30
-*jovianShieldRetreatEnergy: 40
-*jovianRetreatProbability: 50
-*jovianRetreatSpeed: 1.0
-
-
-! If the endever or a base being raided is in the same sector as
-! a jovian, then the jovian moves or shoots (on average) every
-! jovianMaxFightFrequency seconds in the highest skill level of
-! the game and every jovianMinFightFrequency seconds in lowest
-! skill level. Fight frequencies for the other skill levels are
-! interpolated linearly between jovianMinFightFrequency and
-! jovianMaxFightFrequency. These resources are type "float".
-
-*jovianMaxFightFrequency: 1.5
-*jovianMinFightFrequency: 3.5
-
-! When a sector contains a base and a jovian, but not the
-! endever, then there is a possibility of an attack or "raid" on
-! the base. These resources are the average time in seconds
-! before some jovian somewhere in the universe launches a raid
-! on a base. jovianMaxRaidFrequency is for the highest skill
-! level, jovianMinRaidFrequency is for the lowest skill
-! level. Values for other skill levels are interpolated linearly
-! between these extremes. These resources are type "float".
-
-*jovianMaxRaidFrequency: 40.0
-*jovianMinRaidFrequency: 400.0
-
-! If a jovian is in a sector containing neither a base nor the
-! endever, then there is a possibility of the jovian leaping to
-! a different sector. These resources are the average number of
-! seconds until some jovian somewhere in the universe leaps to a
-! sector containing a base or the
-! endever. jovianMaxLeapFrequency is for the highest skill level
-! and jovianMinLeapFrequency is for the lowest skill
-! level. Values for the other skill levels are interpolated in
-! between these extremes. These resources are type "float".
-
-*jovianMaxLeapFrequency: 40.0
-*jovianMinLeapFrequency: 400.0
-
-! key bindings for the endever
-
-*widget.translations: #replace \n\
- <Expose>: expose() \n\
- <Key>KP_Up: move(up) \n\
- <Key>KP_Down: move(down) \n\
- <Key>KP_Left: move(left) \n\
- <Key>KP_Right: move(right) \n\
- <Key>Up: move(up) \n\
- <Key>Down: move(down) \n\
- <Key>Left: move(left) \n\
- <Key>Right: move(right) \n\
- <Key>space: mission(start) sector() \n\
- <Key>1: input() scanner() \n\
- <Key>2: input() summary() \n\
- <Key>3: input() leap() \n\
- <Key>4: input() shields() \n\
- <Key>5: input() fasers() \n\
- <Key>6: input() torpedoes() \n\
- <Key>7: input() selfdestruct() \n\
- <Key>8: input() \n\
- <Key>9: input() \n\
- <Key>0: input() \n\
- <Key>-: input() \n\
- <Key>Return: endinput() \n\
- <Key>BackSpace: backspace() \n\
- <Key>n: orientation(next) replay(no) \n\
- <Key>o: mission(orient) \n\
- <Key>p: orientation(prev) pause() \n\
- <Key>q: orientation(quit) \n\
- <Key>y: replay(yes)
-
-! end app-defaults
-
diff --git a/games/xspacewarp/doinst.sh b/games/xspacewarp/doinst.sh
index 1015d8fd4d..519aaca034 100644
--- a/games/xspacewarp/doinst.sh
+++ b/games/xspacewarp/doinst.sh
@@ -16,3 +16,9 @@ config etc/X11/app-defaults/XSpacewarp.new
if [ -x /usr/bin/update-desktop-database ]; then
/usr/bin/update-desktop-database -q usr/share/applications >/dev/null 2>&1
fi
+
+if [ -e usr/share/icons/hicolor/icon-theme.cache ]; then
+ if [ -x /usr/bin/gtk-update-icon-cache ]; then
+ /usr/bin/gtk-update-icon-cache usr/share/icons/hicolor >/dev/null 2>&1
+ fi
+fi
diff --git a/games/xspacewarp/slack-desc b/games/xspacewarp/slack-desc
index 25c2651c01..3b0bd7daa5 100644
--- a/games/xspacewarp/slack-desc
+++ b/games/xspacewarp/slack-desc
@@ -6,7 +6,7 @@
# customary to leave one space after the ':' except on otherwise blank lines.
|-----handy-ruler------------------------------------------------------|
-xspacewarp: xspacewarp (Time Trek - like game for X Window System)
+xspacewarp: xspacewarp (Time Trek like game for X Window System)
xspacewarp:
xspacewarp: In xspacewarp the player maneuvers a Federation spaceship, called the
xspacewarp: Endever, through 81 sectors of space trying to destroy an Armada of
diff --git a/games/xspacewarp/winclose.diff b/games/xspacewarp/winclose.diff
new file mode 100644
index 0000000000..15da48e27d
--- /dev/null
+++ b/games/xspacewarp/winclose.diff
@@ -0,0 +1,78 @@
+diff -Naur xspacewarp-1.2/actions.cc xspacewarp-1.2.patched/actions.cc
+--- xspacewarp-1.2/actions.cc 2021-10-12 04:25:30.580232070 -0400
++++ xspacewarp-1.2.patched/actions.cc 2021-10-12 05:37:05.063841685 -0400
+@@ -287,6 +287,7 @@
+ break;
+ case 'n': // quit xspacewarp
+ cout << "Live long and prosper!" << endl;
++ XCloseDisplay(XtDisplay(w));
+ exit(0);
+ default:
+ cerr << "xspacewarp: replay: unknown argument in X defaults." << endl;
+@@ -310,6 +311,12 @@
+ }
+ }
+
++void quit(Widget w, XEvent *event, String *str, Cardinal *len) {
++ if(event->type == ClientMessage && ((Atom) event->xclient.data.l[0]) == wm_delete_window) {
++ XCloseDisplay(XtDisplay(w));
++ exit(0);
++ }
++}
+
+ // not an action but invoked by one.
+ // Initialize Jovian AI data and start AppTimeOuts so jovians
+diff -Naur xspacewarp-1.2/globals.hh xspacewarp-1.2.patched/globals.hh
+--- xspacewarp-1.2/globals.hh 1995-12-29 02:41:39.000000000 -0500
++++ xspacewarp-1.2.patched/globals.hh 2021-10-12 05:03:56.900022417 -0400
+@@ -24,6 +24,7 @@
+ extern Pixmap pixmap;
+ extern GC def_GC, defrv_GC, faserGC, faserGC_rv, torpGC, torpGC_rv, explodeGC;
+ extern GC endeverGC, baseGC, jovianGC, starGC, blackholeGC;
++extern Atom wm_delete_window;
+
+ extern Sector universe[UROWS][UCOLS];
+ extern GameState gamestate;
+diff -Naur xspacewarp-1.2/xprep.cc xspacewarp-1.2.patched/xprep.cc
+--- xspacewarp-1.2/xprep.cc 2021-10-12 04:25:30.587232070 -0400
++++ xspacewarp-1.2.patched/xprep.cc 2021-10-12 05:23:53.950913600 -0400
+@@ -28,6 +28,7 @@
+ static int read_dashes(const char *, char *);
+ static void check_values(void);
+
++Atom wm_delete_window;
+
+ void xprep(int argc, char **argv)
+ {
+@@ -66,6 +67,10 @@
+
+ XtRealizeWidget(toplevel);
+
++ wm_delete_window = XInternAtom(XtDisplay(toplevel), "WM_DELETE_WINDOW", False);
++ XSetWMProtocols(XtDisplay(toplevel), XtWindow(toplevel), &wm_delete_window, 1);
++ XtOverrideTranslations(toplevel, XtParseTranslationTable("<Message>WM_PROTOCOLS: quit()"));
++
+ // if desired, install an invisible mouse cursor
+ // that does not block view of xspacewarp.
+
+diff -Naur xspacewarp-1.2/xprep.hh xspacewarp-1.2.patched/xprep.hh
+--- xspacewarp-1.2/xprep.hh 2021-10-12 04:25:30.588232069 -0400
++++ xspacewarp-1.2.patched/xprep.hh 2021-10-12 05:29:26.455883374 -0400
+@@ -39,6 +39,7 @@
+ extern void endinput(Widget, XEvent *, String *, Cardinal *);
+ extern void replay(Widget, XEvent *, String *, Cardinal *);
+ extern void pause(Widget, XEvent *, String *, Cardinal *);
++extern void quit(Widget, XEvent *, String *, Cardinal *);
+
+ static XtActionsRec actions[] =
+ {
+@@ -58,7 +59,8 @@
+ {(char*)"backspace", (XtActionProc)backspace},
+ {(char*)"endinput", (XtActionProc)endinput},
+ {(char*)"replay", (XtActionProc)replay},
+- {(char*)"pause", (XtActionProc)pause}
++ {(char*)"pause", (XtActionProc)pause},
++ {(char*)"quit", (XtActionProc)quit},
+ };
+
+
diff --git a/games/xspacewarp/xspacewarp.SlackBuild b/games/xspacewarp/xspacewarp.SlackBuild
index 5d0621886d..8cc8d3cbe6 100644
--- a/games/xspacewarp/xspacewarp.SlackBuild
+++ b/games/xspacewarp/xspacewarp.SlackBuild
@@ -1,48 +1,37 @@
-#!/bin/sh
+#!/bin/bash
# Slackware build script for xspacewarp
-# Time Trek - like game for X Window System
-# Written by Niels Horn <niels.horn@gmail.com>
+# Written by Niels Horn <email removed>.
+# man page by Luis Henrique <email removed>.
+# Formerly maintained by Ryan P.C. McQuen.
+# Now maintained by B. Watson <urchlay@slackware.uk>.
-# man-page and app-defaults files by Luis Henrique <lmello.009@gmail.com>
+# Licensed under the WTFPL. See http://www.wtfpl.net/txt/copying/ for details.
-# Formerly maintained by:
-# Ryan P.C. McQuen | Everett, WA | ryanpcmcquen@member.fsf.org
-
-# Now maintained by B. Watson <yalhcru@gmail.com>
-
-# This program is free software: you can redistribute it and/or modify
-# it under the terms of the GNU General Public License as published by
-# the Free Software Foundation; either version 2 of the License, or
-# (at your option) any later version, with the following exception:
-# the text of the GPL license may be omitted.
-
-# This program is distributed in the hope that it will be useful, but
-# without any warranty; without even the implied warranty of
-# merchantability or fitness for a particular purpose. Compiling,
-# interpreting, executing or merely reading the text of the program
-# may result in lapses of consciousness and/or very being, up to and
-# including the end of all existence and the Universe as we know it.
-# See the GNU General Public License for more details.
-
-# You may have received a copy of the GNU General Public License along
-# with this program (most likely, a file named COPYING). If not, see
-# <http://www.gnu.org/licenses/>.
+# 20211012 bkw: BUILD=3
+# - relicense as WTFPL with permissions from Ryan (who was the one
+# who originally added the license).
+# - new-style icon.
+# - use copy of app defaults file shipped with the source, instead
+# of including our own. they were identical except for one extra
+# blank line.
+# - fix man page typos.
+# - make the window close button work.
# 20170309 bkw:
# - take over maintenance
# - fix download & homepage URLs
# - i486 => i586
# - minor tweaks
-# - TODO: re-enable the close button on the window? I don't see a way
-# to quit the game (nothing mentioned in the 'Orientation', man page,
-# or README).
+
+cd $(dirname $0) ; CWD=$(pwd)
PRGNAM=xspacewarp
VERSION=${VERSION:-1.2b}
-BUILD=${BUILD:-2}
+BUILD=${BUILD:-3}
TAG=${TAG:-_SBo}
+PKGTYPE=${PKGTYPE:-tgz}
SRCVER=$(echo $VERSION | cut -b -3)
@@ -54,7 +43,11 @@ if [ -z "$ARCH" ]; then
esac
fi
-CWD=$(pwd)
+if [ ! -z "${PRINT_PACKAGE_NAME}" ]; then
+ echo "$PRGNAM-$VERSION-$ARCH-$BUILD$TAG.$PKGTYPE"
+ exit 0
+fi
+
TMP=${TMP:-/tmp/SBo}
PKG=$TMP/package-$PRGNAM
OUTPUT=${OUTPUT:-/tmp}
@@ -82,15 +75,17 @@ rm -rf $PRGNAM-$SRCVER
tar xvf $CWD/$PRGNAM-$SRCVER.tar.gz
cd $PRGNAM-$SRCVER
chown -R root:root .
-find -L . \
- \( -perm 777 -o -perm 775 -o -perm 750 -o -perm 711 -o -perm 555 \
- -o -perm 511 \) -exec chmod 755 {} \; -o \
- \( -perm 666 -o -perm 664 -o -perm 640 -o -perm 600 -o -perm 444 \
- -o -perm 440 -o -perm 400 \) -exec chmod 644 {} \;
+find -L . -perm /111 -a \! -perm 755 -a -exec chmod 755 {} \+ -o \
+ \! -perm /111 -a \! -perm 644 -a -exec chmod 644 {} \+
# Apply patch to version 1.2b (adapt for modern gcc compiler)
patch -p1 < $CWD/version12b.patch
+# Patch by B. Watson: make the window close button work. This took
+# more effort than I wanted it to... and I had to look at the source
+# to xbiff to see how this gibberish works.
+patch -p1 < $CWD/winclose.diff
+
xmkmf
make Makefile
make CDEBUGFLAGS="$SLKCFLAGS -fno-strength-reduce -fno-strict-aliasing" $PRGNAM
@@ -98,17 +93,18 @@ make CDEBUGFLAGS="$SLKCFLAGS -fno-strength-reduce -fno-strict-aliasing" $PRGNAM
strip $PRGNAM
make install BINDIR=/usr/games DESTDIR=$PKG
-mkdir -p $PKG/usr/share/applications $PKG/usr/share/pixmaps
+mkdir -p $PKG/usr/share/applications \
+ $PKG/usr/share/pixmaps \
+ $PKG/usr/share/icons/hicolor/32x32/apps
cat $CWD/$PRGNAM.desktop > $PKG/usr/share/applications/$PRGNAM.desktop
-cat $CWD/$PRGNAM.png > $PKG/usr/share/pixmaps/$PRGNAM.png
+cat $CWD/$PRGNAM.png > $PKG/usr/share/icons/hicolor/32x32/apps/$PRGNAM.png
+ln -s ../icons/hicolor/32x32/apps/$PRGNAM.png $PKG/usr/share/pixmaps/$PRGNAM.png
-# Install X app-defaults
mkdir -p $PKG/etc/X11/app-defaults
-cat $CWD/XSpacewarp > $PKG/etc/X11/app-defaults/XSpacewarp.new
+cat XSpacewarp.app_def > $PKG/etc/X11/app-defaults/XSpacewarp.new
-# Put man-page in package
mkdir -p $PKG/usr/man/man6
-cat $CWD/xspacewarp.man | gzip -9 > $PKG/usr/man/man6/xspacewarp.6.gz
+gzip -9c <$CWD/xspacewarp.man > $PKG/usr/man/man6/xspacewarp.6.gz
mkdir -p $PKG/usr/doc/$PRGNAM-$VERSION
cp -a CHANGES $PKG/usr/doc/$PRGNAM-$VERSION/
@@ -120,4 +116,4 @@ cat $CWD/slack-desc > $PKG/install/slack-desc
cat $CWD/doinst.sh > $PKG/install/doinst.sh
cd $PKG
-/sbin/makepkg -l y -c n $OUTPUT/$PRGNAM-$VERSION-$ARCH-$BUILD$TAG.${PKGTYPE:-tgz}
+/sbin/makepkg -l y -c n $OUTPUT/$PRGNAM-$VERSION-$ARCH-$BUILD$TAG.$PKGTYPE
diff --git a/games/xspacewarp/xspacewarp.desktop b/games/xspacewarp/xspacewarp.desktop
index 0fa4793e08..f431de2f7a 100644
--- a/games/xspacewarp/xspacewarp.desktop
+++ b/games/xspacewarp/xspacewarp.desktop
@@ -4,7 +4,6 @@ Type=Application
Name=XSpaceWarp
Comment=Live long and prosper!
Categories=Game;
-Exec=xspacewarp
+Exec=/usr/games/xspacewarp
Icon=xspacewarp
StartupNotify=false
-
diff --git a/games/xspacewarp/xspacewarp.info b/games/xspacewarp/xspacewarp.info
index b062af376e..fbc83a6be3 100644
--- a/games/xspacewarp/xspacewarp.info
+++ b/games/xspacewarp/xspacewarp.info
@@ -7,4 +7,4 @@ DOWNLOAD_x86_64=""
MD5SUM_x86_64=""
REQUIRES=""
MAINTAINER="B. Watson"
-EMAIL="yalhcru@gmail.com"
+EMAIL="urchlay@slackware.uk"
diff --git a/games/xspacewarp/xspacewarp.man b/games/xspacewarp/xspacewarp.man
index f2ed190759..e4b462c682 100644
--- a/games/xspacewarp/xspacewarp.man
+++ b/games/xspacewarp/xspacewarp.man
@@ -1,4 +1,4 @@
-.TH XSPACEWARP 6 "July 26, 2010"
+.TH XSPACEWARP 6 "October 2021" "1.2b" "SlackBuilds.org"
.SH NAME
xspacewarp -\ Time Trek like game for X Window System
.SH SYNOPSIS
@@ -10,7 +10,7 @@ xspacewarp -\ Time Trek like game for X Window System
In \fBxspacewarp\fP the player maneuvers a Federation spaceship,
called the Endever, through 81 sectors of space trying to
destroy an Armada of enemy Jovian ships before they destroy the
-all the Federation bases. To accompish this task, the Endever
+all the Federation bases. To accomplish this task, the Endever
has fasers, ion thrust engines, warpdrive for jumping between
sectors, a limited number of photon torpedoes, and a finite
store of energy which gets depleted during battles and must be
@@ -20,13 +20,13 @@ limit and has a choice of 10 skill levels.
Ported to X from a game originally written for the TRS-80 in 1977.
.SH OPTIONS
.B xspacewarp
-only takes default \fIX options\fR, see X(7) for more details.
+only takes default \fIX options\fR, see \fBX\fR(7) for more details.
.SH FILES
-You can modify pratically every single variable of the game by
-making a copy of \fI/etc/X11/app-defaults/XSpacewarp\fR into your
+You can modify practically every single variable of the game by
+making a copy of \fI/etc/X11/app-defaults/XSpacewarp\fR in your
home directory and tweaking it accordingly.
.SH SEE ALSO
-X(7)
+\fBX\fR(7)
.SH CREDITS
Joshua Lavinsky - original TRS-80 program (1977)
.br
diff --git a/games/xu4/README b/games/xu4/README
index 79217a2373..9fe84a50f7 100644
--- a/games/xu4/README
+++ b/games/xu4/README
@@ -1,18 +1,21 @@
-XU4 is a remake of the computer game Ultima IV. The goal is to make
+xu4 (Ultima IV remake)
+
+XU4 is a remake of the computer game Ultima IV. The goal is to make
it easy and convenient to play this classic on modern operating
systems.
XU4 isn't a new game based on the Ultima IV story -- it is a faithful
-recreation of the old game, right up to the crappy graphics. If you
+recreation of the old game, right up to the crappy graphics. If you
are looking for a game with modern gameplay and graphics, this is not
-it -- yet. New features that improve the gameplay and keep with the
+it -- yet. New features that improve the gameplay and keep with the
spirit of the original game will be added.
-Note for users upgrading from Slackware 14.1 to 14.2: if the game won't
-start after the upgrade, see README-SBo.txt for the solution.
+The package includes the Ultima 4 graphics upgrade. To use it, press
+Escape while the game is running to get to the Game Modules menu, then
+select U4 Upgrade, and click "Play".
This package can be built with optional extras. See README-SBo.txt
-for details.
+for details, and also for Slackware-specific notes.
Copyright notice: The file ultima4.zip is included in this package. This
file and its contents have a proprietary license and MAY NOT be
@@ -22,7 +25,8 @@ SlackBuild, since they include ultima4.zip).
If you have trouble downloading ultima4.zip from the URL listed
in the .info file, you can instead download UltimaIV.zip from
-http://www.ultimaforever.com/ (registration required, JavaScript browser
-required, no direct download URL). It's a different packaging of the
-same content; the script is smart enough to build a package from either
-release of Ultima 4.
+http://www.ultimaforever.com/ (registration required, JavaScript
+browser required, no direct download URL). It's a different packaging
+of the same content; the script is smart enough to build a package
+from either release of Ultima 4. You might also be able to download it
+from GoG.com, but the SlackBuild author hasn't tested this.
diff --git a/games/xu4/README-SBo.txt b/games/xu4/README-SBo.txt
index 0554d13278..b131265ca6 100644
--- a/games/xu4/README-SBo.txt
+++ b/games/xu4/README-SBo.txt
@@ -1,4 +1,16 @@
-Notes and optional stuff: Music, enhanced graphics, and PDF manuals.
+Notes and optional stuff.
+
+XU4 Upgrade Note
+----------------
+If you upgraded from xu4-20130612_svn to 1.2.1 or later, your old
+settings from ~/.xu4 will no longer be read. You can try:
+
+mkdir -p ~/.config/xu4
+cp -a ~/.xu4/* ~/.config/xu4
+
+...but there's no guarantee the new engine will read the old config or
+savegames (not tested, YMMV).
+
Slackware Upgrade Note
----------------------
@@ -6,36 +18,13 @@ If you upgraded from 14.1 to 14.2, your old ~/.xu4/xu4rc needs to be
edited, to disable XML validation (otherwise the game won't start).
Edit the file manually, or use this:
-sed -i '/validateXml/s,1,0,' ~/.xu4/xu4rc
-
-Music
------
-To hear the in-game music, you'll need a set of MIDI patches, either the
-eawpats or freepats package from slackbuilds.org (make sure you set up
-timidity.cfg correctly). These can be installed after the fact (no need
-to rebuild xu4 after installing them). The timidity package itself isn't
-required (xu4 uses SDL_mixer to play back the music).
+sed -i '/validateXml/s,1,0,' ~/.config/xu4/xu4rc
-Enhanced Graphics
------------------
-By default, the script will build a package that uses the graphics from
-the original PC/DOS version of the game. If you'd like to use the
-upgraded graphics from the Ultima IV Upgrade Project, download the file
-u4upgrad.zip and place it in the same directory as the SlackBuild script,
-before running it. The upgrade can be downloaded here:
-
-URL: http://www.moongates.com/u4/upgrade/files/u4upgrad.zip
-md5sum: 4ce9c9cd9dab111275e0ebfde7a482c4
-Homepage: http://www.moongates.com/u4/upgrade/Upgrade.htm
-
-The graphics upgrade isn't listed in the .info file because it isn't
-required to play the game, and also because some users will prefer the
-original CGA-style graphics.
PDF Manuals
-----------
Some of the documentation in this package is in Microsoft Word format. To
-read it, you can use KWord... or just live with the text-only versions
+read it, you can use calligra... or just live with the text-only versions
(also included in this package). These are the manuals for the original
game, and unlike most modern games, you really do need to read them to
have any chance of completing Ultima IV. The text files and Word docs
@@ -53,3 +42,12 @@ md5sum: c6be37b7028d6f7b56843a73517a5c31
The PDF docs aren't listed in the .info file because they're fairly large,
and not needed just to play the game.
+
+
+Running without PulseAudio
+--------------------------
+Some of us still prefer not to use PulseAudio. For xu4, there's no
+option for ALSA or SDL audio. To get sound without PulseAudio, install
+apulse, then run xu4 as "apulse xu4" from a terminal. If you like,
+you can edit the .desktop file to make it launch this way from the
+GUI, too.
diff --git a/games/xu4/doinst.sh b/games/xu4/doinst.sh
index 5fb28930db..3e5691a052 100644
--- a/games/xu4/doinst.sh
+++ b/games/xu4/doinst.sh
@@ -1,3 +1,9 @@
if [ -x /usr/bin/update-desktop-database ]; then
/usr/bin/update-desktop-database -q usr/share/applications >/dev/null 2>&1
fi
+
+if [ -e usr/share/icons/hicolor/icon-theme.cache ]; then
+ if [ -x /usr/bin/gtk-update-icon-cache ]; then
+ /usr/bin/gtk-update-icon-cache usr/share/icons/hicolor >/dev/null 2>&1
+ fi
+fi
diff --git a/games/xu4/icons/128.png b/games/xu4/icons/128.png
new file mode 100644
index 0000000000..40d12d1bb7
--- /dev/null
+++ b/games/xu4/icons/128.png
Binary files differ
diff --git a/games/xu4/icons/16.png b/games/xu4/icons/16.png
new file mode 100644
index 0000000000..eaf6639060
--- /dev/null
+++ b/games/xu4/icons/16.png
Binary files differ
diff --git a/games/xu4/icons/22.png b/games/xu4/icons/22.png
new file mode 100644
index 0000000000..26b94812f7
--- /dev/null
+++ b/games/xu4/icons/22.png
Binary files differ
diff --git a/games/xu4/icons/32.png b/games/xu4/icons/32.png
new file mode 100644
index 0000000000..460a88a8d3
--- /dev/null
+++ b/games/xu4/icons/32.png
Binary files differ
diff --git a/games/xu4/profile_path.diff b/games/xu4/profile_path.diff
index b436ac55d9..0c5f206062 100644
--- a/games/xu4/profile_path.diff
+++ b/games/xu4/profile_path.diff
@@ -1,29 +1,34 @@
-diff -Naur xu4-20111026_svn/src/settings.cpp xu4-20111026_svn.patched//src/settings.cpp
---- xu4-20111026_svn/src/settings.cpp 2011-06-23 13:36:06.000000000 -0400
-+++ xu4-20111026_svn.patched//src/settings.cpp 2011-10-27 17:27:02.000000000 -0400
-@@ -81,12 +81,6 @@
+diff -Naur xu4-1.2.1/src/settings.cpp xu4-1.2.1.patched/src/settings.cpp
+--- xu4-1.2.1/src/settings.cpp 2022-12-06 13:21:00.000000000 -0500
++++ xu4-1.2.1.patched/src/settings.cpp 2023-01-13 03:37:36.452626171 -0500
+@@ -55,15 +55,6 @@
* Initialize the settings.
*/
- void Settings::init(const bool useProfile, const string profileName) {
-- if (useProfile) {
-- userPath = "./profiles/";
-- userPath += profileName.c_str();
-- userPath += "/";
-- } else {
+ void Settings::init(const char* profileName) {
+- if (profileName && profileName[0]) {
+- userPath = "./profiles/";
+- userPath += profileName;
+- userPath += "/";
-
- #if defined(MACOSX)
- FSRef folder;
- OSErr err = FSFindFolder(kUserDomain, kApplicationSupportFolderType, kCreateFolder, &folder);
-@@ -150,7 +144,12 @@
+- profile = profileName;
+- if (profile.length() > 20)
+- errorFatal("Profile name must be no more than 20 characters.");
+- } else {
+ profile.clear();
+
+ #if defined(ANDROID)
+@@ -123,6 +114,14 @@
userPath = "./";
#endif
-+ if (useProfile) {
-+ userPath += "profiles/";
-+ userPath += profileName.c_str();
-+ userPath += "/";
- }
++ if (profileName && profileName[0]) {
++ userPath += "profiles/";
++ userPath += profileName;
++ userPath += "/";
+
- FileSystem::createDirectory(userPath);
++ profile = profileName;
++ if (profile.length() > 20)
++ errorFatal("Profile name must be no more than 20 characters.");
+ }
- filename = userPath + SETTINGS_BASE_FILENAME;
+ #ifndef ANDROID
diff --git a/games/xu4/slack-desc b/games/xu4/slack-desc
index 992d9f91e2..3a8e1dfd4a 100644
--- a/games/xu4/slack-desc
+++ b/games/xu4/slack-desc
@@ -8,12 +8,12 @@
|-----handy-ruler------------------------------------------------------|
xu4: xu4 (Ultima IV remake)
xu4:
-xu4: XU4 is a remake of the computer game Ultima IV. The goal is to make
+xu4: XU4 is a remake of the computer game Ultima IV. The goal is to make
xu4: it easy and convenient to play this classic on modern operating
xu4: systems.
xu4:
xu4: XU4 isn't a new game based on the Ultima IV story -- it is a faithful
-xu4: recreation of the old game, right up to the crappy graphics. If you
+xu4: recreation of the old game, right up to the crappy graphics. If you
xu4: are looking for a game with modern gameplay and graphics, this is not
-xu4: it -- yet. New features that improve the gameplay and keep with the
+xu4: it -- yet. New features that improve the gameplay and keep with the
xu4: spirit of the original game will be added.
diff --git a/games/xu4/u4.1 b/games/xu4/u4.1
deleted file mode 100644
index 0fc8fe2376..0000000000
--- a/games/xu4/u4.1
+++ /dev/null
@@ -1,240 +0,0 @@
-.TH u4 1 "26 Oct 2011" "Version 1.1+svn" "XU4 Manual"
-
-.SH NAME
-\fBu4\fR \- A modern reimplementation of the classic Ultima IV role\-playing game.
-
-.SH SYNOPSIS
-.B u4
-.RI [ options ]
-
-.SH DESCRIPTION
-.B XU4
-is a remake of the computer game Ultima IV. The goal is to make
-it easy and convenient to play this classic on modern operating
-systems.
-.PP
-This man page only describes the command\-line options and keyboard commands
-supported by \fBu4\fR.
-For full documentation, see the files in \fI/usr/doc/xu4\-@VERSION@/\fR. The
-README is a good place to start. Also the "History of Britannia" and the "Book
-of Mystic Wisdom" are found there (you should read them before playing).
-.SH OPTIONS
-\fBu4\fR accepts the following options:
-.TP
-.B "\-f, \-\-fullscreen"
-Run in fullscreen mode.
-.TP
-.B \-filter <filt>
-Apply a filter on the scaled images. The <filt>
-parameter must be set to one of the following
-case\-sensitive options:
-.I point
-.I 2xBi
-.I 2xSaI
-.I Scale2x
-.TP
-.B "\-i, \-skipintro"
-Skip the intro, and go directly into the game.
-This option requires the existance of a valid saved game.
-.TP
-.B "\-p <profname>, \-profile <profname>"
-Activate a specific save game profile. Using this
-option, you may have multiple saved games at the
-same time. Also, the game's config is stored on
-a per\-profile basis, so different profiles could
-have e.g. different screen resolutions.
-Use quotation marks around profile names that
-include spaces.
-All profiles are stored in the
-.I ~/.xu4/profiles
-sub\-directory.
-The active profile name is shown on the
-introduction map view off the main menu.
-.TP
-.B "\-q, \-quiet"
-Quiet mode \- no music.
-.TP
-.B \-scale <n>
-Scale the original graphics by a factor of <n>.
-Factor <n> must be 1, 2, 3, 4, or 5.
-.TP
-.B "\-v, \-verbose"
-Verbose output; prints out information useful for
-trouble\-shooting.
-.SH KEYBOARD CONTROLS
-XU4 is played entirely with the keyboard. To make choices from menus,
-press the first letter of the menu choice (e.g. \fBJ\fR for "Journey Onward"
-at the main menu). The Config menu also supports navigation with the arrow
-keys and Enter.
-.PP
-During gameplay, the following keystrokes are supported (information taken
-from Keyboard.txt and README):
-.TP
-.B A (Attack)
-Attempt to engage thy foe with the weapon thou hast
-readied (Ready Weapon command); must be followed by the
-direction of thy foe.
-.TP
-.B B (Board)
-Board a vessel or mount a horse.
-.TP
-.B C (Cast)
-Cast a magical spell; must be followed by the number
-of the player who wishes to cast it (not needed in combat or
-in dungeon rooms), and then the first letter of the desired
-spell. Note: All spells must have reagents mixed in advance
-of casting.
-.TP
-.B D (Descend)
-Climb down ladder to next level of dungeon or
-building.
-.TP
-.B E (Enter)
-Go into such places as villages, townes, castles,
-dungeons and shrines.
-.TP
-.B F (Fire)
-Fire a ship's cannons (once thou hast Boarded); must
-be followed by a direction. Note: Broadsides only!
-.TP
-.B G (Get Chest)
-Attempt to open (and disarm, if trapped) chest;
-must be followed by the number of the player who wishes to
-open the chest, except during combat and in dungeon rooms.
-Note: 'Tis wisest to use the player with the highest
-Dexterity when examining potentially dangerous chests as
-this lessens the chances of setting off any traps.
-.TP
-.B H (Hole up and camp)
-Set up camp to rest and recover from thy wounds.
-Note: This command may only be used successfully with limited frequency.
-.TP
-.B 1 (Ignite a torch)
-Light a torch for illumination in dungeons. Requires a special item.
-.TP
-.B J (Jimmy lock)
-Use a magical key to unlock a sealed door. Must be followed by the direction of the door that thou dost wish to unlock.
-.TP
-.B K (Klimb)
-Climb up a ladder to the next level of a building or dungeon, or to reach the surface from the topmost level of a dungeon.
-.TP
-.B L (Locate Position)
-Requires a special item.
-.TP
-.B M (Mix Reagents)
-Prepare material components of spells for later use.
-Note: Thou must have reagents mixed ahead of time in
-order to cast any spells. When asked "Reagent:", type the
-letter corresponding to the reagents desired and then type
-[Return] when thou wishes to mix them.
-.TP
-.B N (New order)
-Exchanges the position of two players indicated within thy party, except for player #1, for thou must lead the party.
-.TP
-.B O (Open door)
-Open a door in the direction indicated.
-.TP
-.B P (Peer at gem)
-Requires a special item.
-.TP
-.B Q (Quit & Save)
-Saves the current game status to disk; thou may continue after this command or power down thy computer.
-.TP
-.B R (Ready a weapon)
-Equip a player with the weapon of thy choice (if owned) for use in combat.
-.TP
-.B S (Search)
-Search thy exact current location for unusual items.
-.TP
-.B T (Talk)
-Allows a player to converse with merchants or townesfolk in the direction indicated.
-.TP
-.B U (Use)
-Use an item thou hast found during play by means of the "Search" command.
-.TP
-.B V (Volume)
-Toggles sound effects on or off.
-.TP
-.B W (Wear armour)
-Outfits a player with the armour of thy choice if owned for defense in combat.
-.TP
-.B X (Xit)
-That's (e)xit thy current form of transportation and continue on foot.
-.TP
-.B Y (Yell)
-Yell "giddyup" or "whoa" to speed up or slow down thy horse.
-.TP
-.B Z (Ztats)
-Displays the status and attributes of a
-selected player; if 0 is pressed instead of a player number,
-this command will display the lists of weapons, armour,
-items, reagents and mixtures. The left and right arrow
-keys will scroll through these lists, while pressing any
-other key will return thee to game play.
-.TP
-.B
-ARROW KEYS
-Control movement. North/South/East/West
-.SH FILES
-.TP
-.B ~/.xu4/
-Configuration and saved games are stored here, when \fB\-p\fR is not in use. The config file is
-\fBxu4rc\fR. It is human\-readable and editable, but normally is
-created and updated by the in\-game configuration menu. The savegames
-are in a binary format.
-.TP
-.B ~/.xu4/profiles/<profname>/
-When using the \fB\-p <profname>\fR option, config and savegame data are
-stored here instead.
-.SH AUTHORS
-Ultima IV was created by Richard Garriott, aka Lord British.
-.PP
-.B XU4
-authors:
-.br
-Andrew Taylor <andrewtaylor@users.sourceforge.net>
-.br
- Main developer
-.PP
-Marc Winterrowd <nodling at yahoo dot com>
-.br
- LZW decoder, tile animations, title screen fixes, and lots more
-.PP
-Daniel Browning\-Weber <dan_ultima@users.sourceforge.net>
-.br
- Developer
-.PP
-Darren Janeczek <darren_janeczek@users.sourceforge.net>
-.br
- Developer
-.PP
-Doug Day <dougday@users.sourceforge.net>
-.br
- Developer
-.PP
-Travis Howell <kirben@users.sourceforge.net>
-.br
- Windows port
-.PP
-Frank Wolter <FrankWolter@gmx.net>
-.br
- Ultima IV icon used in xu4
-.PP
-Dennis De Marco <dennis@demarco.com>
-.br
- Sound code
-.PP
-Steve Saunders <s_j_nevets@yahoo.com.au>
-.br
- MacOSX port
-.PP
-Michael Ryan <solus@users.sourceforge.net>
-.br
- Text colorization, profiles, enhanced LOS algorithm, title/intro sequence, general fixes
-.PP
-Gregory Saunders <grerfy@users.sourceforge.net>
-.br
- Amiga file formats, minor enhancements
-.PP
-Man page created (from README contents) by B. Watson, for the SlackBuilds.org
-project. Permission hereby granted to use this man page anywhere, for any purpose.
diff --git a/games/xu4/u4.desktop b/games/xu4/u4.desktop
deleted file mode 100644
index 6674892a97..0000000000
--- a/games/xu4/u4.desktop
+++ /dev/null
@@ -1,8 +0,0 @@
-[Desktop Entry]
-Name=Ultima 4
-Comment=Ultima 4 (xu4)
-Exec=u4
-Icon=u4
-Terminal=false
-Type=Application
-Categories=Game;RolePlaying;
diff --git a/games/xu4/xu4.6 b/games/xu4/xu4.6
new file mode 100644
index 0000000000..b406722ab1
--- /dev/null
+++ b/games/xu4/xu4.6
@@ -0,0 +1,242 @@
+.TH xu4 6 "January 13 2023" "Version 1.2.1" "SlackBuilds.org"
+
+.SH NAME
+\fBxu4\fR \- A modern reimplementation of the classic Ultima IV role\-playing game.
+
+.SH SYNOPSIS
+.B xu4
+.RI [ options ]
+
+.SH DESCRIPTION
+.B XU4
+is a remake of the computer game Ultima IV. The goal is to make
+it easy and convenient to play this classic on modern operating
+systems.
+.PP
+This man page only describes the command\-line options and keyboard commands
+supported by \fBxu4\fR.
+For full documentation, see the files in \fI/usr/doc/xu4\-@VERSION@/\fR. The
+README is a good place to start. Also the "History of Britannia" and the "Book
+of Mystic Wisdom" are found there (you should read them before playing).
+.SH OPTIONS
+\fBxu4\fR accepts the following options:
+.TP
+.B "\-f, \-\-fullscreen"
+Run in fullscreen mode.
+.TP
+.B \-filter <filt>
+Apply a filter on the scaled images. The <filt>
+parameter must be set to one of the following
+case\-sensitive options:
+.I point
+.I HQX
+.I xBR-lv2
+.TP
+.B "\-i, \-skipintro"
+Skip the intro, and go directly into the game.
+This option requires the existence of a valid saved game.
+.TP
+.B "\-m, \-module <file>"
+Specify game module (default is Ultima-IV).
+.TP
+.B "\-p <profname>, \-profile <profname>"
+Activate a specific save game profile. Using this
+option, you may have multiple saved games at the
+same time. Also, the game's config is stored on
+a per\-profile basis, so different profiles could
+have e.g. different screen resolutions.
+Use quotation marks around profile names that
+include spaces.
+All profiles are stored in the
+.I ~/.config/xu4/profiles
+sub\-directory.
+The active profile name is shown on the
+introduction map view off the main menu.
+.TP
+.B "\-q, \-quiet"
+Disable audio.
+.TP
+.B \-scale <n>
+Scale the original graphics by a factor of <n>.
+Factor <n> must be 1, 2, 3, 4, or 5.
+.TP
+.B "\-v, \-verbose"
+Verbose output; prints out information useful for
+trouble\-shooting.
+.SH KEYBOARD CONTROLS
+XU4 is played mainly with the keyboard (though mouse input is supported). To make choices from menus,
+press the first letter of the menu choice (e.g. \fBJ\fR for "Journey Onward"
+at the main menu). The Config menu also supports navigation with the arrow
+keys and Enter.
+.PP
+During gameplay, the following keystrokes are supported (information taken
+from Keyboard.txt and README):
+.TP
+.B A (Attack)
+Attempt to engage thy foe with the weapon thou hast
+readied (Ready Weapon command); must be followed by the
+direction of thy foe.
+.TP
+.B B (Board)
+Board a vessel or mount a horse.
+.TP
+.B C (Cast)
+Cast a magical spell; must be followed by the number
+of the player who wishes to cast it (not needed in combat or
+in dungeon rooms), and then the first letter of the desired
+spell. Note: All spells must have reagents mixed in advance
+of casting.
+.TP
+.B D (Descend)
+Climb down ladder to next level of dungeon or
+building.
+.TP
+.B E (Enter)
+Go into such places as villages, townes, castles,
+dungeons and shrines.
+.TP
+.B F (Fire)
+Fire a ship's cannons (once thou hast Boarded); must
+be followed by a direction. Note: Broadsides only!
+.TP
+.B G (Get Chest)
+Attempt to open (and disarm, if trapped) chest;
+must be followed by the number of the player who wishes to
+open the chest, except during combat and in dungeon rooms.
+Note: 'Tis wisest to use the player with the highest
+Dexterity when examining potentially dangerous chests as
+this lessens the chances of setting off any traps.
+.TP
+.B H (Hole up and camp)
+Set up camp to rest and recover from thy wounds.
+Note: This command may only be used successfully with limited frequency.
+.TP
+.B 1 (Ignite a torch)
+Light a torch for illumination in dungeons. Requires a special item.
+.TP
+.B J (Jimmy lock)
+Use a magical key to unlock a sealed door. Must be followed by the direction of the door that thou dost wish to unlock.
+.TP
+.B K (Klimb)
+Climb up a ladder to the next level of a building or dungeon, or to reach the surface from the topmost level of a dungeon.
+.TP
+.B L (Locate Position)
+Requires a special item.
+.TP
+.B M (Mix Reagents)
+Prepare material components of spells for later use.
+Note: Thou must have reagents mixed ahead of time in
+order to cast any spells. When asked "Reagent:", type the
+letter corresponding to the reagents desired and then type
+[Return] when thou wishes to mix them.
+.TP
+.B N (New order)
+Exchanges the position of two players indicated within thy party, except for player #1, for thou must lead the party.
+.TP
+.B O (Open door)
+Open a door in the direction indicated.
+.TP
+.B P (Peer at gem)
+Requires a special item.
+.TP
+.B Q (Quit & Save)
+Saves the current game status to disk; thou may continue after this command or power down thy computer.
+.TP
+.B R (Ready a weapon)
+Equip a player with the weapon of thy choice (if owned) for use in combat.
+.TP
+.B S (Search)
+Search thy exact current location for unusual items.
+.TP
+.B T (Talk)
+Allows a player to converse with merchants or townesfolk in the direction indicated.
+.TP
+.B U (Use)
+Use an item thou hast found during play by means of the "Search" command.
+.TP
+.B V (Volume)
+Toggles sound effects on or off.
+.TP
+.B W (Wear armour)
+Outfits a player with the armour of thy choice if owned for defense in combat.
+.TP
+.B X (Xit)
+That's (e)xit thy current form of transportation and continue on foot.
+.TP
+.B Y (Yell)
+Yell "giddyup" or "whoa" to speed up or slow down thy horse.
+.TP
+.B Z (Ztats)
+Displays the status and attributes of a
+selected player; if 0 is pressed instead of a player number,
+this command will display the lists of weapons, armour,
+items, reagents and mixtures. The left and right arrow
+keys will scroll through these lists, while pressing any
+other key will return thee to game play.
+.TP
+.B
+ARROW KEYS
+Control movement. North/South/East/West
+.SH FILES
+.TP
+.B ~/.config/xu4/
+Configuration and saved games are stored here, when \fB\-p\fR is not in use. The config file is
+\fBxu4rc\fR. It is human\-readable and editable, but normally is
+created and updated by the in\-game configuration menu. The savegames
+are in a binary format.
+.TP
+.B ~/.config/xu4/profiles/<profname>/
+When using the \fB\-p <profname>\fR option, config and savegame data are
+stored here instead.
+.SH AUTHORS
+Ultima IV was created by Richard Garriott, aka Lord British.
+.PP
+.B XU4
+authors:
+.br
+Andrew Taylor <andrewtaylor@users.sourceforge.net>
+.br
+ Main developer
+.PP
+Marc Winterrowd <nodling at yahoo dot com>
+.br
+ LZW decoder, tile animations, title screen fixes, and lots more
+.PP
+Daniel Browning\-Weber <dan_ultima@users.sourceforge.net>
+.br
+ Developer
+.PP
+Darren Janeczek <darren_janeczek@users.sourceforge.net>
+.br
+ Developer
+.PP
+Doug Day <dougday@users.sourceforge.net>
+.br
+ Developer
+.PP
+Travis Howell <kirben@users.sourceforge.net>
+.br
+ Windows port
+.PP
+Frank Wolter <FrankWolter@gmx.net>
+.br
+ Ultima IV icon used in xu4
+.PP
+Dennis De Marco <dennis@demarco.com>
+.br
+ Sound code
+.PP
+Steve Saunders <s_j_nevets@yahoo.com.au>
+.br
+ MacOSX port
+.PP
+Michael Ryan <solus@users.sourceforge.net>
+.br
+ Text colorization, profiles, enhanced LOS algorithm, title/intro sequence, general fixes
+.PP
+Gregory Saunders <grerfy@users.sourceforge.net>
+.br
+ Amiga file formats, minor enhancements
+.PP
+Man page created (from README contents) by B. Watson, for the SlackBuilds.org
+project. Permission hereby granted to use this man page anywhere, for any purpose.
diff --git a/games/xu4/xu4.SlackBuild b/games/xu4/xu4.SlackBuild
index d4439ca2cc..d336245419 100644
--- a/games/xu4/xu4.SlackBuild
+++ b/games/xu4/xu4.SlackBuild
@@ -1,15 +1,38 @@
-#!/bin/sh
+#!/bin/bash
# Slackware build script for xu4
-# Written by B. Watson (yalhcru@gmail.com)
+# Written by B. Watson (urchlay@slackware.uk)
# Licensed under the WTFPL. See http://www.wtfpl.net/txt/copying/ for details.
+# 20230712 bkw: update for v1.3.
+
+# 20230112 bkw: update for v1.2.1, after ~9 years there's a release!
+# - no more disable_alt_x.diff, it works properly now.
+# - always include the upgrade (u4upgrad.zip), since upstream does.
+# - new dependencies boron and faun.
+# - update man page and rename it u4 => xu4.
+# - rework profile_path.diff.
+# - update README and README-SBo.txt (remove obsolete info, add section
+# on running without pulse).
+# - TODO: test with the GoG release (someone has to create a GoG account,
+# even though it's free-of-charge, and I'm not able to).
+
+# 20211012 bkw: BUILD=3,
+# - new-style icon.
+# - binary in /usr/games.
+# - man page in section 6.
+# - disable Alt-x keystroke (it crashes the game).
+# - "Press Alt-x to quit" => "Close window to quit".
+
+cd $(dirname $0) ; CWD=$(pwd)
+
PRGNAM=xu4
-VERSION=${VERSION:-20130612_svn}
-BUILD=${BUILD:-2}
+VERSION=${VERSION:-1.3}
+BUILD=${BUILD:-1}
TAG=${TAG:-_SBo}
+PKGTYPE=${PKGTYPE:-tgz}
if [ -z "$ARCH" ]; then
case "$( uname -m )" in
@@ -19,23 +42,24 @@ if [ -z "$ARCH" ]; then
esac
fi
-CWD=$(pwd)
+if [ ! -z "${PRINT_PACKAGE_NAME}" ]; then
+ echo "$PRGNAM-$VERSION-$ARCH-$BUILD$TAG.$PKGTYPE"
+ exit 0
+fi
+
TMP=${TMP:-/tmp/SBo}
PKG=$TMP/package-$PRGNAM
OUTPUT=${OUTPUT:-/tmp}
+# LIBDIRSUFFIX isn't actually used for 1.2.1
if [ "$ARCH" = "i586" ]; then
SLKCFLAGS="-O2 -march=i586 -mtune=i686"
- LIBDIRSUFFIX=""
elif [ "$ARCH" = "i686" ]; then
SLKCFLAGS="-O2 -march=i686 -mtune=i686"
- LIBDIRSUFFIX=""
elif [ "$ARCH" = "x86_64" ]; then
SLKCFLAGS="-O2 -fPIC"
- LIBDIRSUFFIX="64"
else
SLKCFLAGS="-O2"
- LIBDIRSUFFIX=""
fi
set -e
@@ -44,41 +68,31 @@ rm -rf $PKG
mkdir -p $TMP $PKG $OUTPUT
cd $TMP
rm -rf $PRGNAM-$VERSION
-tar xvf $CWD/$PRGNAM-$VERSION.tar.xz
+tar xvf $CWD/$PRGNAM-$VERSION.tar.gz
cd $PRGNAM-$VERSION
chown -R root:root .
-find -L . \
- \( -perm 777 -o -perm 775 -o -perm 750 -o -perm 711 -o -perm 555 -o -perm 511 \) \
- -exec chmod 755 {} \; -o \
- \( -perm 666 -o -perm 664 -o -perm 600 -o -perm 444 -o -perm 440 -o -perm 400 \) \
- -exec chmod 644 {} \;
-
-# There actually are some executables in the lib dir. If there hadn't
-# been, I would have left it as /usr/lib even on 64-bit, or better yet
-# change to /usr/share. As it is, it has to be /usr/lib64 on 64-bit.
-LIBDIR=/usr/lib$LIBDIRSUFFIX
-PKGLIBDIR=$PKG/$LIBDIR
+find -L . -perm /111 -a \! -perm 755 -a -exec chmod 755 {} \+ -o \
+ \! -perm /111 -a \! -perm 644 -a -exec chmod 644 {} \+
+
+# If we didn't supply this file, 'make install' would try to download it.
+cat $CWD/u4upgrad.zip > u4upgrad.zip
# Fix path to "profiles/" dir used by -p option. Patch makes it use
-# ~/.xu4/profiles/ rather than ./profiles off the current dir.
+# ~/.config/xu4/profiles/ rather than ./profiles off the current dir.
patch -p1 < $CWD/profile_path.diff
-# Fix hard-coded libdir. Ugh.
-sed -i -e "s,/usr/lib,$LIBDIR," src/u4file.cpp
+# Use our flags, plus install to /usr/games (not /usr/bin).
+sed -i -e "s,-O3,$SLKCFLAGS," src/Makefile
+sed -i -e "/DESTDIR/s,/bin,/games,g" Makefile
-# Stop u4 from writing border.png in the current dir (it never *reads* it!)
-sed -i -e '/border\.png/s,^,//,' src/imagemgr.cpp
-
-# The libxml2 in Slack 14.2 is pickier than the one in 14.1, and fails to
-# validate the game's XML files. So:
-sed -i '/#define *DEFAULT_VALIDATE_XML/s,1,0,' src/settings.h
-
-# The -DNPERF stops u4 from creating a debug/ in the current dir.
-make -C src DEBUGCXXFLAGS="-DNPERF $SLKCFLAGS" prefix=/usr libdir=$PKGLIBDIR
-make -C src install prefix=$PKG/usr libdir=$PKGLIBDIR
-
-find $PKG | xargs file | grep -e "executable" -e "shared object" | grep ELF \
- | cut -f 1 -d : | xargs strip --strip-unneeded 2> /dev/null || true
+# The configure script isn't autoconf (doesn't support the standard
+# options) and the Makefile uses DESTDIR to mean PREFIX, more-or-less.
+# We don't have to strip the binary (make install does it for us).
+# Since we're not building from a git tree, we have to explicitly
+# set VERSION (it only shows up in --help and the 'About' in the game).
+./configure --prefix /usr
+make DESTDIR=/usr VERSION=$VERSION
+make install DESTDIR=$PKG/usr VERSION=$VERSION
# If we have the official release rather than the "dragon" one, repackage
# it with the same layout as the dragon release. Note that the official
@@ -90,42 +104,45 @@ fi
# The game data. This is the zip file, not the self-extracting exe (the
# exe lacks the documentation, for one thing).
-cat $CWD/ultima4.zip > $PKGLIBDIR/u4/ultima4.zip
+cat $CWD/ultima4.zip > $PKG/usr/share/xu4/ultima4.zip
# Replace stock .desktop file with one that validates.
-cat $CWD/u4.desktop > $PKG/usr/share/applications/u4.desktop
-
-# These files should be (but aren't) installed by "make install". Without
-# them, we get no music!
-install -m0644 mid/*.it $PKGLIBDIR/u4/music/
-
-# Remove execute permission from data files. Grr.
-chmod 644 $PKG/usr/share/pixmaps/* $PKG/usr/share/applications/*
-find $PKGLIBDIR \
- -type f -a \
- \( -name \*.mid -o -name \*.vga -o -name \*.png -o \
- -name \*.xml -o -name \*.dtd -o -name \*.ogg \) \
- -print0 | xargs -0 chmod 644
-
-# Docs. N.B. we don't need border.png.
-mkdir -p $PKG/usr/doc/$PRGNAM-$VERSION/developers
-cp -a *.html AUTHORS COPYING README $PKG/usr/doc/$PRGNAM-$VERSION
-cp -a doc/* $PKG/usr/doc/$PRGNAM-$VERSION/developers
-cat $CWD/$PRGNAM.SlackBuild > $PKG/usr/doc/$PRGNAM-$VERSION/$PRGNAM.SlackBuild
-
-# Include the upgrade (and extract its docs) if we have it.
-if [ -e $CWD/u4upgrad.zip ]; then
- cat $CWD/u4upgrad.zip > $PKGLIBDIR/u4/u4upgrad.zip
- cd $PKG/usr/doc/$PRGNAM-$VERSION
- unzip $CWD/u4upgrad.zip Readme.txt
- mv Readme.txt Readme-Upgrade.txt
- cd -
-fi
+cat $CWD/xu4.desktop > $PKG/usr/share/applications/xu4.desktop
+
+# New-style icons, made by downsizing icons/u4.png, except 128x128 was
+# extracted from icons/xu4.icns in the source. I didn't downsize the
+# Mac icon because it has a checkerboard background that looks good
+# at 128x128, but horrid when downscaled.
+# 48x48 was already installed, above.
+HICOLOR=$PKG/usr/share/icons/hicolor/
+mkdir -p $HICOLOR/64x64/apps
+cat icons/u4.png > $HICOLOR/64x64/apps/$PRGNAM.png
+
+for i in $CWD/icons/*.png; do
+ px=$( basename $i | cut -d. -f1 )
+ size=${px}x${px}
+ dir=$HICOLOR/$size/apps
+ mkdir -p $dir
+ cat $i > $dir/u4.png
+done
+
+mkdir -p $PKG/usr/share/pixmaps
+ln -s ../icons/hicolor/48x48/apps/xu4.png $PKG/usr/share/pixmaps/xu4.png
+
+# Docs.
+PKGDOC=$PKG/usr/doc/$PRGNAM-$VERSION
+mkdir -p $PKGDOC/developers
+cp -a AUTHORS COPYING ChangeLog README* $PKGDOC
+cp -a doc/* $PKGDOC/developers
+cat $CWD/$PRGNAM.SlackBuild > $PKGDOC/$PRGNAM.SlackBuild
+
+# Include the upgrade's docs.
+unzip -p $CWD/u4upgrad.zip Readme.txt > $PKGDOC/Readme-Upgrade.txt
# Include the PDF docs, if we have them.
if [ -e $CWD/ultima4_scanned_docs.zip ]; then
- mkdir -p $PKG/usr/doc/$PRGNAM-$VERSION/pdf
- cd $PKG/usr/doc/$PRGNAM-$VERSION/pdf
+ mkdir -p $PKGDOC/pdf
+ cd $PKGDOC/pdf
unzip $CWD/ultima4_scanned_docs.zip '*.pdf'
mv ultima4_scanned_docs/Ultima_IV_-_Cluebook_-_PC.pdf Hints.pdf
mv ultima4_scanned_docs/Ultima_IV_-_Manual_-_PC.pdf History.pdf
@@ -135,7 +152,7 @@ if [ -e $CWD/ultima4_scanned_docs.zip ]; then
fi
# Include the original Ultima IV docs.
-cd $PKG/usr/doc/$PRGNAM-$VERSION
+cd $PKGDOC
unzip $CWD/ultima4.zip '*.txt' '*.doc' '*.bmp' '*.jpg' || true
# These docs only apply to running the original game on DOS or Windows. Bye.
@@ -153,18 +170,14 @@ chmod 644 *.txt ms_word_docs/*.doc
sed -i 's/\r//' *.txt
cd -
-# I hate packages called "xfoo" whose binaries are called "foo".
-ln -s u4 $PKG/usr/bin/$PRGNAM
-
# I also hate binaries that take options but have no man pages, so here's
-# the one I made. Enjoy.
-mkdir -p $PKG/usr/man/man1
-sed "s/@VERSION@/$VERSION/" $CWD/u4.1 | gzip -9c - > $PKG/usr/man/man1/u4.1.gz
-ln -s u4.1.gz $PKG/usr/man/man1/$PRGNAM.1.gz
+# the one I made. Enjoy. I wish I'd used rst or pod for it...
+mkdir -p $PKG/usr/man/man6
+sed "s/@VERSION@/$VERSION/" $CWD/xu4.6 | gzip -9c - > $PKG/usr/man/man6/xu4.6.gz
mkdir -p $PKG/install
cat $CWD/slack-desc > $PKG/install/slack-desc
cat $CWD/doinst.sh > $PKG/install/doinst.sh
cd $PKG
-/sbin/makepkg -l y -c n $OUTPUT/$PRGNAM-$VERSION-$ARCH-$BUILD$TAG.${PKGTYPE:-tgz}
+/sbin/makepkg -l y -c n $OUTPUT/$PRGNAM-$VERSION-$ARCH-$BUILD$TAG.$PKGTYPE
diff --git a/games/xu4/xu4.desktop b/games/xu4/xu4.desktop
new file mode 100644
index 0000000000..ce36a0b610
--- /dev/null
+++ b/games/xu4/xu4.desktop
@@ -0,0 +1,8 @@
+[Desktop Entry]
+Name=Ultima 4
+Comment=Ultima 4 (xu4)
+Exec=xu4
+Icon=xu4
+Terminal=false
+Type=Application
+Categories=Game;RolePlaying;
diff --git a/games/xu4/xu4.info b/games/xu4/xu4.info
index 7c0e1d4661..bfba477b74 100644
--- a/games/xu4/xu4.info
+++ b/games/xu4/xu4.info
@@ -1,12 +1,14 @@
PRGNAM="xu4"
-VERSION="20130612_svn"
-HOMEPAGE="http://xu4.sourceforge.net/"
-DOWNLOAD="https://slackware.uk/~urchlay/src/xu4-20130612_svn.tar.xz \
- http://www.thatfleminggent.com/ultima/ultima4.zip"
-MD5SUM="a0c013bf91458b2b4c5ad8c729990d62 \
- f2006a5dbf175571912ef2594b6eb900"
+VERSION="1.3"
+HOMEPAGE="https://xu4.sourceforge.net/"
+DOWNLOAD="https://downloads.sourceforge.net/project/xu4/xu4/1.3/xu4-1.3.tar.gz \
+ https://web.archive.org/web/20091209235819/http://www.thatfleminggent.com/ultima/ultima4.zip \
+ https://downloads.sourceforge.net/project/xu4/Ultima%204%20VGA%20Upgrade/1.3/u4upgrad.zip"
+MD5SUM="4f853f18029b6bcb7022525e0831d68a \
+ f2006a5dbf175571912ef2594b6eb900 \
+ 4ce9c9cd9dab111275e0ebfde7a482c4"
DOWNLOAD_x86_64=""
MD5SUM_x86_64=""
-REQUIRES=""
+REQUIRES="boron faun"
MAINTAINER="B. Watson"
-EMAIL="yalhcru@gmail.com"
+EMAIL="urchlay@slackware.uk"
diff --git a/games/xye/README b/games/xye/README
index 2b7d184639..f1da5660c2 100644
--- a/games/xye/README
+++ b/games/xye/README
@@ -1,7 +1,7 @@
-Xye is a puzzle game in which the objective is to help a character that looks
-like a green circle to get all the gems in the room. This is, of course, not as
-easy as it sounds, Xye must solve all sorts of puzzles while at the same time
-avoiding all sorts of traps and beasts.
+Xye is a puzzle game in which the objective is to help a character
+that looks like a green circle to get all the gems in the room. This
+is, of course, not as easy as it sounds, Xye must solve all sorts of
+puzzles while at the same time avoiding all sorts of traps and beasts.
-Xye is similar to other puzzle games like sokoban or boulderdash, yet it also
-includes some arcade elements.
+Xye is similar to other puzzle games like sokoban or boulderdash, yet
+it also includes some arcade elements.
diff --git a/games/xye/xye.SlackBuild b/games/xye/xye.SlackBuild
index 8487aecd40..38cfa45449 100644
--- a/games/xye/xye.SlackBuild
+++ b/games/xye/xye.SlackBuild
@@ -1,4 +1,4 @@
-#!/bin/sh
+#!/bin/bash
# Slackware build script for xye
@@ -24,26 +24,36 @@
# OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF THIS SOFTWARE, EVEN IF
# ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
+cd $(dirname $0) ; CWD=$(pwd)
+
PRGNAM=xye
VERSION=${VERSION:-0.12.2}
BUILD=${BUILD:-1}
TAG=${TAG:-_SBo}
+PKGTYPE=${PKGTYPE:-tgz}
if [ -z "$ARCH" ]; then
case "$( uname -m )" in
- i?86) ARCH=i486 ;;
+ i?86) ARCH=i586 ;;
arm*) ARCH=arm ;;
*) ARCH=$( uname -m ) ;;
esac
fi
-CWD=$(pwd)
+# If the variable PRINT_PACKAGE_NAME is set, then this script will report what
+# the name of the created package would be, and then exit. This information
+# could be useful to other scripts.
+if [ ! -z "${PRINT_PACKAGE_NAME}" ]; then
+ echo "$PRGNAM-$VERSION-$ARCH-$BUILD$TAG.$PKGTYPE"
+ exit 0
+fi
+
TMP=${TMP:-/tmp/SBo}
PKG=$TMP/package-$PRGNAM
OUTPUT=${OUTPUT:-/tmp}
-if [ "$ARCH" = "i486" ]; then
- SLKCFLAGS="-O2 -march=i486 -mtune=i686"
+if [ "$ARCH" = "i586" ]; then
+ SLKCFLAGS="-O2 -march=i586 -mtune=i686"
LIBDIRSUFFIX=""
elif [ "$ARCH" = "i686" ]; then
SLKCFLAGS="-O2 -march=i686 -mtune=i686"
@@ -72,7 +82,7 @@ find -L . \
-o -perm 440 -o -perm 400 \) -exec chmod 644 {} \;
CFLAGS="$SLKCFLAGS" \
-CXXFLAGS="$SLKCFLAGS" \
+CXXFLAGS="$SLKCFLAGS -Wno-error=narrowing" \
./configure \
--prefix=/usr \
--bindir=/usr/bin \
@@ -108,4 +118,4 @@ cat $CWD/slack-desc > $PKG/install/slack-desc
cat $CWD/doinst.sh > $PKG/install/doinst.sh
cd $PKG
-/sbin/makepkg -l y -c n $OUTPUT/$PRGNAM-$VERSION-$ARCH-$BUILD$TAG.${PKGTYPE:-tgz}
+/sbin/makepkg -l y -c n $OUTPUT/$PRGNAM-$VERSION-$ARCH-$BUILD$TAG.$PKGTYPE
diff --git a/games/yabause/README b/games/yabause/README
index b1d19f3369..4401f14ad6 100644
--- a/games/yabause/README
+++ b/games/yabause/README
@@ -9,14 +9,7 @@ Yabause is a Sega Saturn emulator. It has the following features:
* joystick support
* region select
-Optional dependencies: gtkglext, ffmpeg, OpenAL, mini18n, SDL2
-and qt5
-
-By default the QT version of yabause is built. To use the GTK
-version, first install gtkglext then pass USE_GUI=gtk to the
-slackbuild.
-
-USE_GUI=gtk ./yabause.SlackBuild
+Optional dependencies: gtkglext, mini18n
Before using Yabause, you need to configure a few things in
the Preferences dialog (File>Settings).
diff --git a/games/yabause/qt-5.11.patch b/games/yabause/qt-5.11.patch
new file mode 100644
index 0000000000..bae3d80bd9
--- /dev/null
+++ b/games/yabause/qt-5.11.patch
@@ -0,0 +1,47 @@
+diff -Naur yabause-0.9.15.orig/src/qt/ui/UICheatRaw.cpp yabause-0.9.15/src/qt/ui/UICheatRaw.cpp
+--- yabause-0.9.15.orig/src/qt/ui/UICheatRaw.cpp 2016-08-19 17:31:13.000000000 +0200
++++ yabause-0.9.15/src/qt/ui/UICheatRaw.cpp 2022-03-04 20:54:59.817095000 +0100
+@@ -20,8 +20,6 @@
+ #include "UIHexInput.h"
+ #include "../QtYabause.h"
+
+-#include <QButtonGroup>
+-
+ UICheatRaw::UICheatRaw( QWidget* p )
+ : QDialog( p )
+ {
+diff -Naur yabause-0.9.15.orig/src/qt/ui/UICheatRaw.h yabause-0.9.15/src/qt/ui/UICheatRaw.h
+--- yabause-0.9.15.orig/src/qt/ui/UICheatRaw.h 2016-08-19 17:31:13.000000000 +0200
++++ yabause-0.9.15/src/qt/ui/UICheatRaw.h 2022-03-04 20:55:40.401095000 +0100
+@@ -20,8 +20,7 @@
+ #define UICHEATRAW_H
+
+ #include "ui_UICheatRaw.h"
+-
+-class QButtonGroup;
++#include <QButtonGroup>
+
+ class UICheatRaw : public QDialog, public Ui::UICheatRaw
+ {
+diff -Naur yabause-0.9.15.orig/src/qt/ui/UICheats.cpp yabause-0.9.15/src/qt/ui/UICheats.cpp
+--- yabause-0.9.15.orig/src/qt/ui/UICheats.cpp 2016-08-19 17:31:13.000000000 +0200
++++ yabause-0.9.15/src/qt/ui/UICheats.cpp 2022-03-04 20:56:02.818095000 +0100
+@@ -20,6 +20,7 @@
+ #include "UICheatAR.h"
+ #include "UICheatRaw.h"
+ #include "../CommonDialogs.h"
++#include <QButtonGroup>
+
+ UICheats::UICheats( QWidget* p )
+ : QDialog( p )
+diff -Naur yabause-0.9.15.orig/src/qt/ui/UIHexInput.h yabause-0.9.15/src/qt/ui/UIHexInput.h
+--- yabause-0.9.15.orig/src/qt/ui/UIHexInput.h 2016-08-19 17:31:13.000000000 +0200
++++ yabause-0.9.15/src/qt/ui/UIHexInput.h 2022-03-04 20:56:27.297095000 +0100
+@@ -21,6 +21,7 @@
+
+ #include "ui_UIHexInput.h"
+ #include "../QtYabause.h"
++#include <QValidator>
+
+ class HexValidator : public QValidator
+ {
diff --git a/games/yabause/yabause.SlackBuild b/games/yabause/yabause.SlackBuild
index 19089d158e..8e5e155aee 100644
--- a/games/yabause/yabause.SlackBuild
+++ b/games/yabause/yabause.SlackBuild
@@ -1,4 +1,4 @@
-#!/bin/sh
+#!/bin/bash
# Slackware build script for yabause
@@ -22,10 +22,16 @@
# OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF THIS SOFTWARE, EVEN IF
# ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
+# 20220221 bkw: Modified by SlackBuilds.org:
+# - fix build on 15.0, by always building with gtk instead of qt.
+
+cd $(dirname $0) ; CWD=$(pwd)
+
PRGNAM=yabause
VERSION=${VERSION:-0.9.15}
-BUILD=${BUILD:-2}
+BUILD=${BUILD:-3}
TAG=${TAG:-_SBo}
+PKGTYPE=${PKGTYPE:-tgz}
if [ -z "$ARCH" ]; then
case "$( uname -m )" in
@@ -35,7 +41,11 @@ if [ -z "$ARCH" ]; then
esac
fi
-CWD=$(pwd)
+if [ ! -z "${PRINT_PACKAGE_NAME}" ]; then
+ echo "$PRGNAM-$VERSION-$ARCH-$BUILD$TAG.$PKGTYPE"
+ exit 0
+fi
+
TMP=${TMP:-/tmp/SBo}
PKG=$TMP/package-$PRGNAM
OUTPUT=${OUTPUT:-/tmp}
@@ -65,12 +75,11 @@ cd $PRGNAM-$VERSION
chown -R root:root .
find -L . \
\( -perm 777 -o -perm 775 -o -perm 750 -o -perm 711 -o -perm 555 \
- -o -perm 511 \) -exec chmod 755 {} \; -o \
+ -o -perm 511 \) -exec chmod 755 {} \+ -o \
\( -perm 666 -o -perm 664 -o -perm 640 -o -perm 600 -o -perm 444 \
- -o -perm 440 -o -perm 400 \) -exec chmod 644 {} \;
+ -o -perm 440 -o -perm 400 \) -exec chmod 644 {} \+
-# Variable to determine gtk/qt interface. Default is qt.
-USE_GUI=${USE_GUI:-qt}
+USE_GUI=qt
# Fix location of man file.
sed -i 's|share/man|man|' src/CMakeLists.txt
@@ -85,6 +94,8 @@ done
# Patch against ffmpeg 3
patch -p1 < $CWD/ffmpeg3.patch
+patch -p1 < $CWD/qt-5.11.patch
+
mkdir build
cd build
cmake -G "Unix Makefiles" \
@@ -122,4 +133,4 @@ cat $CWD/slack-desc > $PKG/install/slack-desc
cat $CWD/doinst.sh > $PKG/install/doinst.sh
cd $PKG
-/sbin/makepkg -l y -c n $OUTPUT/$PRGNAM-$VERSION-$ARCH-$BUILD$TAG.${PKGTYPE:-tgz}
+/sbin/makepkg -l y -c n $OUTPUT/$PRGNAM-$VERSION-$ARCH-$BUILD$TAG.$PKGTYPE
diff --git a/games/yae/README b/games/yae/README
index 4ae1908a53..e41fbf9b3f 100644
--- a/games/yae/README
+++ b/games/yae/README
@@ -5,5 +5,3 @@ Emulates the 8-bit Apple II, II+, and //e computers.
This is an older emulator without a lot of fancy features.
The package includes the ROM images and an Apple DOS 3.3 disk image.
-
-Audio is supported, but only if OSS modules are loaded.
diff --git a/games/yae/doinst.sh b/games/yae/doinst.sh
index 5fb28930db..3e5691a052 100644
--- a/games/yae/doinst.sh
+++ b/games/yae/doinst.sh
@@ -1,3 +1,9 @@
if [ -x /usr/bin/update-desktop-database ]; then
/usr/bin/update-desktop-database -q usr/share/applications >/dev/null 2>&1
fi
+
+if [ -e usr/share/icons/hicolor/icon-theme.cache ]; then
+ if [ -x /usr/bin/gtk-update-icon-cache ]; then
+ /usr/bin/gtk-update-icon-cache usr/share/icons/hicolor >/dev/null 2>&1
+ fi
+fi
diff --git a/games/yae/icons/128.png b/games/yae/icons/128.png
new file mode 100644
index 0000000000..fd6e712ae6
--- /dev/null
+++ b/games/yae/icons/128.png
Binary files differ
diff --git a/games/yae/icons/16.png b/games/yae/icons/16.png
new file mode 100644
index 0000000000..bc176a6fff
--- /dev/null
+++ b/games/yae/icons/16.png
Binary files differ
diff --git a/games/yae/icons/32.png b/games/yae/icons/32.png
new file mode 100644
index 0000000000..ec3c712d85
--- /dev/null
+++ b/games/yae/icons/32.png
Binary files differ
diff --git a/games/yae/icons/48.png b/games/yae/icons/48.png
new file mode 100644
index 0000000000..2fdf9bfc7a
--- /dev/null
+++ b/games/yae/icons/48.png
Binary files differ
diff --git a/games/yae/icons/64.png b/games/yae/icons/64.png
new file mode 100644
index 0000000000..0a843f393a
--- /dev/null
+++ b/games/yae/icons/64.png
Binary files differ
diff --git a/games/yae/patches/allow_x_window_close.diff b/games/yae/patches/allow_x_window_close.diff
new file mode 100644
index 0000000000..d596ce7b39
--- /dev/null
+++ b/games/yae/patches/allow_x_window_close.diff
@@ -0,0 +1,33 @@
+diff -Naur -Naur yae-0.7/x_window.c yae-0.7.patched/x_window.c
+--- yae-0.7/x_window.c 2007-04-03 17:47:59.000000000 -0400
++++ yae-0.7.patched/x_window.c 2021-10-12 00:23:48.765550342 -0400
+@@ -57,6 +57,8 @@
+
+ static Cursor InvisibleCursor;
+
++static Atom delete_atom;
++
+ Visual *getVisual( Display *dpy, int screen, int depth, int class )
+ {
+ XVisualInfo vinfo, *vinfoList;
+@@ -219,6 +221,9 @@
+ XFlush( dc->display );
+ #endif
+
++ delete_atom = XInternAtom(dc->display, "WM_DELETE_WINDOW", False);
++ XSetWMProtocols(dc->display, dc->window, &delete_atom, 1);
++
+ /*
+ * startup micro job for X window
+ */
+@@ -313,6 +318,10 @@
+ #endif
+ refreshScreen();
+ break;
++ case ClientMessage:
++ if(event.xclient.data.l[0] == delete_atom)
++ shutdown_6502();
++ break;
+ case DestroyNotify:
+ Signal6502( SIG_6502_SHUTDOWN );
+ break;
diff --git a/games/yae/yae.1 b/games/yae/yae.1
index 41aedfacb2..677232182f 100644
--- a/games/yae/yae.1
+++ b/games/yae/yae.1
@@ -1,4 +1,4 @@
-.\" Automatically generated by Pod::Man 2.25 (Pod::Simple 3.20)
+.\" Automatically generated by Pod::Man 4.14 (Pod::Simple 3.42)
.\"
.\" Standard preamble:
.\" ========================================================================
@@ -38,27 +38,36 @@
. ds PI \(*p
. ds L" ``
. ds R" ''
+. ds C`
+. ds C'
'br\}
.\"
.\" Escape single quotes in literal strings from groff's Unicode transform.
.ie \n(.g .ds Aq \(aq
.el .ds Aq '
.\"
-.\" If the F register is turned on, we'll generate index entries on stderr for
+.\" If the F register is >0, we'll generate index entries on stderr for
.\" titles (.TH), headers (.SH), subsections (.SS), items (.Ip), and index
.\" entries marked with X<> in POD. Of course, you'll have to process the
.\" output yourself in some meaningful fashion.
-.ie \nF \{\
-. de IX
-. tm Index:\\$1\t\\n%\t"\\$2"
+.\"
+.\" Avoid warning from groff about undefined register 'F'.
+.de IX
..
-. nr % 0
-. rr F
-.\}
-.el \{\
-. de IX
+.nr rF 0
+.if \n(.g .if rF .nr rF 1
+.if (\n(rF:(\n(.g==0)) \{\
+. if \nF \{\
+. de IX
+. tm Index:\\$1\t\\n%\t"\\$2"
..
+. if !\nF==2 \{\
+. nr % 0
+. nr F 2
+. \}
+. \}
.\}
+.rr rF
.\"
.\" Accent mark definitions (@(#)ms.acc 1.5 88/02/08 SMI; from UCB 4.2).
.\" Fear. Run. Save yourself. No user-serviceable parts.
@@ -124,7 +133,7 @@
.\" ========================================================================
.\"
.IX Title "YAE 1"
-.TH YAE 1 "2013-08-29" "0.7" "yae"
+.TH YAE 1 "2021-10-12" "0.7" "yae"
.\" For nroff, turn off justification. Always turn off hyphenation; it makes
.\" way too many mistakes in technical documents.
.if n .ad l
@@ -136,51 +145,51 @@ yae \- Yet another Apple Emulator
\&\fByae\fR [\-2|\-e|\-+] [disk\-image] ...
.SH "DESCRIPTION"
.IX Header "DESCRIPTION"
-\&\fByae\fR emulates the Apple \s-1II\s0, \s-1II+\s0, and //e 8\-bit computers from Apple,
+\&\fByae\fR emulates the Apple \s-1II, II+,\s0 and //e 8\-bit computers from Apple,
Inc. Standard .dsk images are supported. If \fByae\fR is run without any
disk image arguments, \fI/usr/share/yae/Master.dsk\fR will be booted.
.PP
\&\s-1ROM\s0 image files are required; see \fB\s-1FILES\s0\fR for details.
.PP
-\&\s-1OSS\s0 audio is supported, using the /dev/audio device. For Linux systems
-using \s-1ALSA\s0, \s-1OSS\s0 audio is provided by the snd_pcm_oss and snd_mixer_oss
-kernel modules. If /dev/audio can't be opened, the emulator will run
-with sound disabled.
+\&\s-1ALSA\s0 audio is supported, by linking the emulator with \fB\-laoss\fR. This
+also allows PulseAudio to work, if you have the default \s-1ALSA\s0 device
+set to \*(L"pcm.default pulse\*(R" (and \*(L"ctl.default pulse\*(R") in \fB/etc/asound.conf\fR.
.SH "OPTIONS"
.IX Header "OPTIONS"
-.IP "\-2" 4
+.IP "\fB\-2\fR" 4
.IX Item "-2"
-Emulate the Apple \s-1II\s0.
+Emulate the Apple \s-1II.\s0
.Sp
-Note that the emulator uses the same \s-1ROM\s0 image for \s-1II\s0 and \s-1II+\s0, so the
+Note that the emulator uses the same \s-1ROM\s0 image for \s-1II\s0 and \s-1II+,\s0 so the
emulated \s-1II\s0 will have Applesoft and autostart (which the original \s-1II\s0
didn't ship with).
-.IP "\-+" 4
-Emulate the Apple \s-1II+\s0.
-.IP "\-e" 4
+.IP "\fB\-+\fR" 4
+.IX Item "-+"
+Emulate the Apple \s-1II+.\s0
+.IP "\fB\-e\fR" 4
.IX Item "-e"
Emulate the Apple //e (the default).
.SH "KEYSTROKES"
.IX Header "KEYSTROKES"
-.IP "Backspace" 4
+.IP "\fBBackspace\fR" 4
.IX Item "Backspace"
Alias for the left-arrow key.
-.IP "Control+Delete" 4
+.IP "\fBControl+Delete\fR" 4
.IX Item "Control+Delete"
Apple Reset key.
-.IP "Left Alt" 4
+.IP "\fBLeft Alt\fR" 4
.IX Item "Left Alt"
The left (open) apple key on the //e keyboard.
-.IP "Right Alt" 4
+.IP "\fBRight Alt\fR" 4
.IX Item "Right Alt"
The right (closed) apple key on the //e keyboard.
-.IP "F1" 4
+.IP "\fBF1\fR" 4
.IX Item "F1"
Change disks in the first drive (slot 6, drive 0). This will either
read a filename on standard input (if kdialog can't be run), or display
a kdialog file-selector. Either way, the emulator stops and its window
becomes unresponsive until a file has been chosen.
-.IP "F2" 4
+.IP "\fBF2\fR" 4
.IX Item "F2"
Exit the emulator immediately. No confirmation dialog, so
be careful.
@@ -195,10 +204,10 @@ keyboard.
Config file. Searched for first in the current directory,
then in user's home directory. For config file syntax, see
\&\fI/usr/share/yae/yaerc.sample\fR.
-.IP "\s-1ROM\s0 files" 4
+.IP "\fB\s-1ROM\s0 files\fR" 4
.IX Item "ROM files"
-For \s-1II\s0 and \s-1II+\s0 emulation, the required \s-1ROM\s0 image is called \fB\s-1APPLE2\s0.ROM\fR.
-For the //e, the image is \fB\s-1APPLE2E\s0.ROM\fR. For all modes, \fB\s-1DISK\s0.ROM\fR is
+For \s-1II\s0 and \s-1II+\s0 emulation, the required \s-1ROM\s0 image is called \fB\s-1APPLE2.ROM\s0\fR.
+For the //e, the image is \fB\s-1APPLE2E.ROM\s0\fR. For all modes, \fB\s-1DISK.ROM\s0\fR is
required.
.Sp
\&\s-1ROM\s0 file locations can be set in the config file. By default, they're
diff --git a/games/yae/yae.SlackBuild b/games/yae/yae.SlackBuild
index 95e44b312d..ac1b0bb8c8 100644
--- a/games/yae/yae.SlackBuild
+++ b/games/yae/yae.SlackBuild
@@ -1,15 +1,25 @@
-#!/bin/sh
+#!/bin/bash
# Slackware build script for yae
-# Written by B. Watson (yalhcru@gmail.com)
+# Written by B. Watson (urchlay@slackware.uk)
# Licensed under the WTFPL. See http://www.wtfpl.net/txt/copying/ for details.
+# 20211011 bkw: BUILD=2
+# - fix -current build (-fcommon).
+# - link with -laoss, makes audio work on ALSA or pulseaudio systems.
+# - new-style icons.
+# - update man page.
+# - allow X window close button to work. yet another patch.
+
+cd $(dirname $0) ; CWD=$(pwd)
+
PRGNAM=yae
VERSION=${VERSION:-0.7}
-BUILD=${BUILD:-1}
+BUILD=${BUILD:-2}
TAG=${TAG:-_SBo}
+PKGTYPE=${PKGTYPE:-tgz}
if [ -z "$ARCH" ]; then
case "$( uname -m )" in
@@ -19,7 +29,11 @@ if [ -z "$ARCH" ]; then
esac
fi
-CWD=$(pwd)
+if [ ! -z "${PRINT_PACKAGE_NAME}" ]; then
+ echo "$PRGNAM-$VERSION-$ARCH-$BUILD$TAG.$PKGTYPE"
+ exit 0
+fi
+
TMP=${TMP:-/tmp/SBo}
PKG=$TMP/package-$PRGNAM
OUTPUT=${OUTPUT:-/tmp}
@@ -76,6 +90,13 @@ patch -p1 < $CWD/patches/defaultmasterdisk.diff
# this package, which Just Work instead of requiring user configuration.
patch -p1 < $CWD/patches/defaultromlocation.diff
+# *So* annoying: the standard X close button wasn't enabled. If this
+# application did the whole "Are you sure you want to quit?" thing, I
+# might understand why... but it already exits without confirmation,
+# you just have to remember that F2 is the exit key. So why not the
+# easily-memorable window close button?
+patch -p1 < $CWD/patches/allow_x_window_close.diff
+
# Try to make 64-bit work. This seems OK, the scanline code seems to
# assume sizeof(long)==4, which is wrong on x86_64. Using int (which
# is still 4 bytes) fixes the display issues. There still might be
@@ -94,6 +115,9 @@ CONFSUB=/usr/share/libtool/config/config.sub
cp $CONFSUB .
autoreconf -if
+SLKCFLAGS+=" -fcommon"
+
+LIBS="-laoss" \
CFLAGS="$SLKCFLAGS" \
CXXFLAGS="$SLKCFLAGS" \
./configure \
@@ -134,10 +158,20 @@ cat $CWD/${PRGNAM}rc.sample > $PKG/usr/share/$PRGNAM/${PRGNAM}rc.sample
mkdir -p $PKG/usr/share/applications
cat $CWD/$PRGNAM.desktop > $PKG/usr/share/applications/$PRGNAM.desktop
-# icon created for this build, based on
+# icons created for this build, based on
# http://www.callapple.org/soft/images/icons/apple.gif
+# 20211012 bkw: resized with convert(1), the aspect ratio is
+# slightly squashed, but that just makes it look retro...
+for i in $CWD/icons/*.png; do
+ px=$( basename $i | cut -d. -f1 )
+ size=${px}x${px}
+ dir=$PKG/usr/share/icons/hicolor/$size/apps
+ mkdir -p $dir
+ cat $i > $dir/$PRGNAM.png
+done
+
mkdir -p $PKG/usr/share/pixmaps
-cat $CWD/$PRGNAM.png > $PKG/usr/share/pixmaps/$PRGNAM.png
+ln -s ../icons/hicolor/64x64/apps/$PRGNAM.png $PKG/usr/share/pixmaps/$PRGNAM.png
mkdir -p $PKG/usr/doc/$PRGNAM-$VERSION
cat $PRGNAM-roms/README > $PKG/usr/doc/$PRGNAM-$VERSION/README.roms
@@ -149,4 +183,4 @@ cat $CWD/slack-desc > $PKG/install/slack-desc
cat $CWD/doinst.sh > $PKG/install/doinst.sh
cd $PKG
-/sbin/makepkg -l y -c n $OUTPUT/$PRGNAM-$VERSION-$ARCH-$BUILD$TAG.${PKGTYPE:-tgz}
+/sbin/makepkg -l y -c n $OUTPUT/$PRGNAM-$VERSION-$ARCH-$BUILD$TAG.$PKGTYPE
diff --git a/games/yae/yae.desktop b/games/yae/yae.desktop
index e2b04ee7fe..b93789da51 100644
--- a/games/yae/yae.desktop
+++ b/games/yae/yae.desktop
@@ -1,8 +1,8 @@
[Desktop Entry]
Name=YAE
Comment=Apple II Emulator
-StartupNotify=true
-Exec=yae
+StartupNotify=false
+Exec=/usr/games/yae
Icon=yae
Terminal=false
Type=Application
diff --git a/games/yae/yae.info b/games/yae/yae.info
index 9b22d875a6..c1663f0aa0 100644
--- a/games/yae/yae.info
+++ b/games/yae/yae.info
@@ -9,4 +9,4 @@ DOWNLOAD_x86_64=""
MD5SUM_x86_64=""
REQUIRES=""
MAINTAINER="B. Watson"
-EMAIL="yalhcru@gmail.com"
+EMAIL="urchlay@slackware.uk"
diff --git a/games/yae/yae.png b/games/yae/yae.png
deleted file mode 100644
index 0df8b45369..0000000000
--- a/games/yae/yae.png
+++ /dev/null
Binary files differ
diff --git a/games/yae/yae.pod b/games/yae/yae.pod
index dbb72b976e..2b258b25b9 100644
--- a/games/yae/yae.pod
+++ b/games/yae/yae.pod
@@ -18,16 +18,15 @@ disk image arguments, I</usr/share/yae/Master.dsk> will be booted.
ROM image files are required; see B<FILES> for details.
-OSS audio is supported, using the /dev/audio device. For Linux systems
-using ALSA, OSS audio is provided by the snd_pcm_oss and snd_mixer_oss
-kernel modules. If /dev/audio can't be opened, the emulator will run
-with sound disabled.
+ALSA audio is supported, by linking the emulator with B<-laoss>. This
+also allows PulseAudio to work, if you have the default ALSA device
+set to "pcm.default pulse" (and "ctl.default pulse") in B</etc/asound.conf>.
=head1 OPTIONS
=over
-=item -2
+=item B<-2>
Emulate the Apple II.
@@ -35,11 +34,11 @@ Note that the emulator uses the same ROM image for II and II+, so the
emulated II will have Applesoft and autostart (which the original II
didn't ship with).
-=item -+
+=item B<-+>
Emulate the Apple II+.
-=item -e
+=item B<-e>
Emulate the Apple //e (the default).
@@ -49,30 +48,30 @@ Emulate the Apple //e (the default).
=over
-=item Backspace
+=item B<Backspace>
Alias for the left-arrow key.
-=item Control+Delete
+=item B<Control+Delete>
Apple Reset key.
-=item Left Alt
+=item B<Left Alt>
The left (open) apple key on the //e keyboard.
-=item Right Alt
+=item B<Right Alt>
The right (closed) apple key on the //e keyboard.
-=item F1
+=item B<F1>
Change disks in the first drive (slot 6, drive 0). This will either
read a filename on standard input (if kdialog can't be run), or display
a kdialog file-selector. Either way, the emulator stops and its window
becomes unresponsive until a file has been chosen.
-=item F2
+=item B<F2>
Exit the emulator immediately. No confirmation dialog, so
be careful.
@@ -93,7 +92,7 @@ Config file. Searched for first in the current directory,
then in user's home directory. For config file syntax, see
I</usr/share/yae/yaerc.sample>.
-=item ROM files
+=item B<ROM files>
For II and II+ emulation, the required ROM image is called B<APPLE2.ROM>.
For the //e, the image is B<APPLE2E.ROM>. For all modes, B<DISK.ROM> is
diff --git a/games/yahtzee/doinst.sh b/games/yahtzee/doinst.sh
new file mode 100644
index 0000000000..3e5691a052
--- /dev/null
+++ b/games/yahtzee/doinst.sh
@@ -0,0 +1,9 @@
+if [ -x /usr/bin/update-desktop-database ]; then
+ /usr/bin/update-desktop-database -q usr/share/applications >/dev/null 2>&1
+fi
+
+if [ -e usr/share/icons/hicolor/icon-theme.cache ]; then
+ if [ -x /usr/bin/gtk-update-icon-cache ]; then
+ /usr/bin/gtk-update-icon-cache usr/share/icons/hicolor >/dev/null 2>&1
+ fi
+fi
diff --git a/games/yahtzee/yahtzee.png b/games/yahtzee/icons/128.png
index 4d41fbf51d..4d41fbf51d 100644
--- a/games/yahtzee/yahtzee.png
+++ b/games/yahtzee/icons/128.png
Binary files differ
diff --git a/games/yahtzee/icons/16.png b/games/yahtzee/icons/16.png
new file mode 100644
index 0000000000..ddb2e4428c
--- /dev/null
+++ b/games/yahtzee/icons/16.png
Binary files differ
diff --git a/games/yahtzee/icons/32.png b/games/yahtzee/icons/32.png
new file mode 100644
index 0000000000..df3471cdcd
--- /dev/null
+++ b/games/yahtzee/icons/32.png
Binary files differ
diff --git a/games/yahtzee/icons/48.png b/games/yahtzee/icons/48.png
new file mode 100644
index 0000000000..6d2421d06f
--- /dev/null
+++ b/games/yahtzee/icons/48.png
Binary files differ
diff --git a/games/yahtzee/icons/64.png b/games/yahtzee/icons/64.png
new file mode 100644
index 0000000000..69d71838d0
--- /dev/null
+++ b/games/yahtzee/icons/64.png
Binary files differ
diff --git a/games/yahtzee/yahtzee.SlackBuild b/games/yahtzee/yahtzee.SlackBuild
index bfa7cd9082..d64d6f6e05 100644
--- a/games/yahtzee/yahtzee.SlackBuild
+++ b/games/yahtzee/yahtzee.SlackBuild
@@ -1,15 +1,21 @@
-#!/bin/sh
+#!/bin/bash
# Slackware build script for yahtzee
-# Written by B. Watson (yalhcru@gmail.com)
+# Written by B. Watson (urchlay@slackware.uk)
# Licensed under the WTFPL. See http://www.wtfpl.net/txt/copying/ for details.
+# 20230531 bkw: BUILD=3, actually use SLKCFLAGS.
+# 20211011 bkw: BUILD=2, new-style icons, add doinst.sh.
+
+cd $(dirname $0) ; CWD=$(pwd)
+
PRGNAM=yahtzee
VERSION=${VERSION:-1.6}
-BUILD=${BUILD:-1}
+BUILD=${BUILD:-3}
TAG=${TAG:-_SBo}
+PKGTYPE=${PKGTYPE:-tgz}
if [ -z "$ARCH" ]; then
case "$( uname -m )" in
@@ -19,23 +25,23 @@ if [ -z "$ARCH" ]; then
esac
fi
-CWD=$(pwd)
+if [ ! -z "${PRINT_PACKAGE_NAME}" ]; then
+ echo "$PRGNAM-$VERSION-$ARCH-$BUILD$TAG.$PKGTYPE"
+ exit 0
+fi
+
TMP=${TMP:-/tmp/SBo}
PKG=$TMP/package-$PRGNAM
OUTPUT=${OUTPUT:-/tmp}
if [ "$ARCH" = "i586" ]; then
SLKCFLAGS="-O2 -march=i586 -mtune=i686"
- LIBDIRSUFFIX=""
elif [ "$ARCH" = "i686" ]; then
SLKCFLAGS="-O2 -march=i686 -mtune=i686"
- LIBDIRSUFFIX=""
elif [ "$ARCH" = "x86_64" ]; then
SLKCFLAGS="-O2 -fPIC"
- LIBDIRSUFFIX="64"
else
SLKCFLAGS="-O2"
- LIBDIRSUFFIX=""
fi
set -e
@@ -47,11 +53,10 @@ rm -rf $PRGNAM-$VERSION
tar xvf $CWD/$PRGNAM-$VERSION.tar.gz
cd $PRGNAM-$VERSION
chown -R root:root .
-find . \
- \( -perm 777 -o -perm 775 -o -perm 711 -o -perm 555 -o -perm 511 \) \
- -exec chmod 755 {} \; -o \
- \( -perm 666 -o -perm 664 -o -perm 600 -o -perm 444 -o -perm 440 -o -perm 400 \) \
- -exec chmod 644 {} \;
+find -L . -perm /111 -a \! -perm 755 -a -exec chmod 755 {} \+ -o \
+ \! -perm /111 -a \! -perm 644 -a -exec chmod 644 {} \+
+
+sed -i "/^CFLAGS/s,-Os,$SLKCFLAGS," Makefile
# By default, the Makefile builds one binary with the dumb, curses, and SDL
# UIs. It tries to init SDL, then falls back on curses... unfortunately on a
@@ -72,10 +77,18 @@ for ui in sdl curses text; do
install -s $PRGNAM $PKG/usr/games/$PRGNAM-$ui
done
-# icon came from:
+# icons came from:
# http://www.iconarchive.com/show/mahjong-icons-by-jommans/Trash-Full-Dice-icon.html
+for i in $CWD/icons/*.png; do
+ px=$( basename $i | cut -d. -f1 )
+ size=${px}x${px}
+ dir=$PKG/usr/share/icons/hicolor/$size/apps
+ mkdir -p $dir
+ cat $i > $dir/$PRGNAM.png
+done
+
mkdir -p $PKG/usr/share/pixmaps
-cat $CWD/$PRGNAM.png > $PKG/usr/share/pixmaps/$PRGNAM.png
+ln -s ../icons/hicolor/64x64/apps/$PRGNAM.png $PKG/usr/share/pixmaps/$PRGNAM.png
# .desktop file written for this build
mkdir -p $PKG/usr/share/applications
@@ -89,6 +102,7 @@ cat $CWD/$PRGNAM.SlackBuild > $PKG/usr/doc/$PRGNAM-$VERSION/$PRGNAM.SlackBuild
mkdir -p $PKG/install
cat $CWD/slack-desc > $PKG/install/slack-desc
+cat $CWD/doinst.sh > $PKG/install/doinst.sh
cd $PKG
-/sbin/makepkg -l y -c n $OUTPUT/$PRGNAM-$VERSION-$ARCH-$BUILD$TAG.${PKGTYPE:-tgz}
+/sbin/makepkg -l y -c n $OUTPUT/$PRGNAM-$VERSION-$ARCH-$BUILD$TAG.$PKGTYPE
diff --git a/games/yahtzee/yahtzee.desktop b/games/yahtzee/yahtzee.desktop
index d9283b8615..20fa68eed7 100644
--- a/games/yahtzee/yahtzee.desktop
+++ b/games/yahtzee/yahtzee.desktop
@@ -3,7 +3,7 @@ Type=Application
Name=Yahtzee
GenericName=Yahtzee
Comment=Yahtzee dice/board game
-Exec=yahtzee-sdl
+Exec=/usr/games/yahtzee-sdl
Icon=yahtzee
Terminal=false
Categories=Game;BoardGame;
diff --git a/games/yahtzee/yahtzee.info b/games/yahtzee/yahtzee.info
index 7f81b26c4e..8eea819e9d 100644
--- a/games/yahtzee/yahtzee.info
+++ b/games/yahtzee/yahtzee.info
@@ -1,10 +1,10 @@
PRGNAM="yahtzee"
VERSION="1.6"
-HOMEPAGE="http://www.muppetlabs.com/~breadbox/software/yahtzee.html"
-DOWNLOAD="http://www.muppetlabs.com/~breadbox/pub/software/yahtzee-1.6.tar.gz"
-MD5SUM="6ad1c98eb0136ac378425d469d270060"
+HOMEPAGE="https://www.muppetlabs.com/~breadbox/software/yahtzee.html"
+DOWNLOAD="https://www.muppetlabs.com/~breadbox/pub/software/yahtzee-1.6.tar.gz"
+MD5SUM="d694df4091a5eafcc4fb5b0ee03424ce"
DOWNLOAD_x86_64=""
MD5SUM_x86_64=""
REQUIRES=""
MAINTAINER="B. Watson"
-EMAIL="yalhcru@gmail.com"
+EMAIL="urchlay@slackware.uk"
diff --git a/games/yamagi-quake2/README b/games/yamagi-quake2/README
index c239ae1ed9..952fe1fd28 100644
--- a/games/yamagi-quake2/README
+++ b/games/yamagi-quake2/README
@@ -1,11 +1,10 @@
-This is an enhanced client for Id Software's legendary Quake II. It focuses on
-single-player. Features include rock-solid stability and AMD64 support.
+This is an enhanced client for Id Software's legendary Quake II. It
+focuses on single-player. Features include rock-solid stability and
+AMD64 support.
-OpenAL and SDL2 are recommended optional dependencies.
-
-Before playing, copy your Quake2 data files into the appropriate subdirectories
-of /usr/share/quake2. Please refer to the README files in
-/usr/doc/yamagi-quake2-7.41/ for details.
+Before playing, copy your Quake2 data files into the appropriate
+subdirectories of /usr/share/quake2 ( or "$HOME/.yq2"). Please refer
+to the README files in /usr/doc/yamagi-quake2-8.20/ for details.
To get a reasonable default configuration, copy
-/usr/doc/yamagi-quake2-7.41/yq2.cfg to your baseq2 directory.
+/usr/doc/yamagi-quake2-8.20/yq2.cfg to your baseq2 directory.
diff --git a/games/yamagi-quake2/yamagi-quake2.SlackBuild b/games/yamagi-quake2/yamagi-quake2.SlackBuild
index 28935e036e..abc859acb3 100644
--- a/games/yamagi-quake2/yamagi-quake2.SlackBuild
+++ b/games/yamagi-quake2/yamagi-quake2.SlackBuild
@@ -1,4 +1,4 @@
-#!/bin/sh
+#!/bin/bash
# Slackware build script for yamagi-quake2
@@ -24,14 +24,17 @@
# Includes components from the Arch Linux AUR builds.
+cd $(dirname $0) ; CWD=$(pwd)
+
PRGNAM=yamagi-quake2
-VERSION=${VERSION:-7.41}
+VERSION=${VERSION:-8.20}
BUILD=${BUILD:-1}
TAG=${TAG:-_SBo}
+PKGTYPE=${PKGTYPE:-tgz}
-CTFVER=${CTFVER:-1.06}
-XATRIXVER=${XATRIXVER:-2.06}
-ROGUEVER=${ROGUEVER:-2.05}
+CTFVER=${CTFVER:-1.09}
+XATRIXVER=${XATRIXVER:-2.11}
+ROGUEVER=${ROGUEVER:-2.10}
if [ -z "$ARCH" ]; then
case "$( uname -m )" in
@@ -41,7 +44,14 @@ if [ -z "$ARCH" ]; then
esac
fi
-CWD=$(pwd)
+# If the variable PRINT_PACKAGE_NAME is set, then this script will report what
+# the name of the created package would be, and then exit. This information
+# could be useful to other scripts.
+if [ ! -z "${PRINT_PACKAGE_NAME}" ]; then
+ echo "$PRGNAM-$VERSION-$ARCH-$BUILD$TAG.$PKGTYPE"
+ exit 0
+fi
+
TMP=${TMP:-/tmp/SBo}
PKG=$TMP/package-$PRGNAM
OUTPUT=${OUTPUT:-/tmp}
@@ -121,7 +131,7 @@ cd build
make
cp -r Release/* $PKG/usr/share/quake2/ctf
cd ..
-install -D -m 755 $CWD/ctf.sh $PKG/usr/bin/ctf
+install -D -m 755 $CWD/ctf.sh $PKG/usr/bin/quake2-ctf
# Mission Pack 1 support
@@ -147,7 +157,7 @@ cd build
cp -r Release/* $PKG/usr/share/quake2/xatrix
cd ..
-install -D -m 755 $CWD/xatrix.sh $PKG/usr/bin/xatrix
+install -D -m 755 $CWD/xatrix.sh $PKG/usr/bin/quake2-xatrix
# Mission Pack 2 support
@@ -173,7 +183,7 @@ cd build
cp -r Release/* $PKG/usr/share/quake2/rogue
cd ..
-install -D -m 755 $CWD/rogue.sh $PKG/usr/bin/rogue
+install -D -m 755 $CWD/rogue.sh $PKG/usr/bin/quake2-rogue
find $PKG/usr/share/quake2 -print0 | xargs -0 file | grep -e "executable" -e "shared object" | grep ELF \
| cut -f 1 -d : | xargs strip --strip-unneeded 2> /dev/null || true
@@ -207,4 +217,4 @@ cat $CWD/doinst.sh > $PKG/install/doinst.sh
cat $CWD/slack-desc > $PKG/install/slack-desc
cd $PKG
-/sbin/makepkg -l y -c n $OUTPUT/$PRGNAM-$VERSION-$ARCH-$BUILD$TAG.${PKGTYPE:-tgz}
+/sbin/makepkg -l y -c n $OUTPUT/$PRGNAM-$VERSION-$ARCH-$BUILD$TAG.$PKGTYPE
diff --git a/games/yamagi-quake2/yamagi-quake2.info b/games/yamagi-quake2/yamagi-quake2.info
index 808c3cfa36..43d998de0d 100644
--- a/games/yamagi-quake2/yamagi-quake2.info
+++ b/games/yamagi-quake2/yamagi-quake2.info
@@ -1,16 +1,16 @@
PRGNAM="yamagi-quake2"
-VERSION="7.41"
-HOMEPAGE="http://www.yamagi.org/quake2/"
-DOWNLOAD="http://deponie.yamagi.org/quake2/quake2-7.41.tar.xz \
- http://deponie.yamagi.org/quake2/quake2-ctf-1.06.tar.xz \
- http://deponie.yamagi.org/quake2/quake2-xatrix-2.06.tar.xz \
- http://deponie.yamagi.org/quake2/quake2-rogue-2.05.tar.xz"
-MD5SUM="73355f0774302a7f498de09ae54e80d5 \
- 0931c7ca434ff235cfeb585e391fd9f1 \
- 3036eab68e3df6b9fadc34b139ea12d8 \
- 7be328f5098edbb5bcdb364e8e997bbd"
+VERSION="8.20"
+HOMEPAGE="https://www.yamagi.org/quake2/"
+DOWNLOAD="https://deponie.yamagi.org/quake2/quake2-8.20.tar.xz \
+ https://deponie.yamagi.org/quake2/quake2-ctf-1.09.tar.xz \
+ https://deponie.yamagi.org/quake2/quake2-xatrix-2.11.tar.xz \
+ https://deponie.yamagi.org/quake2/quake2-rogue-2.10.tar.xz"
+MD5SUM="8393f01070d673e72db38f016bf2d143 \
+ 28e33d66f9dca09f80e8c7bcbc089a67 \
+ 219b8bde1fb818c03520d2b67be3a9a5 \
+ aa5054e19e54a7e59875cd07f733cd08"
DOWNLOAD_x86_64=""
MD5SUM_x86_64=""
-REQUIRES="SDL2"
+REQUIRES=""
MAINTAINER="Ruoh-Shoei Lin"
EMAIL="lin.ruohshoei@gmail.com"
diff --git a/games/yar/doinst.sh b/games/yar/doinst.sh
index 5fb28930db..3e5691a052 100644
--- a/games/yar/doinst.sh
+++ b/games/yar/doinst.sh
@@ -1,3 +1,9 @@
if [ -x /usr/bin/update-desktop-database ]; then
/usr/bin/update-desktop-database -q usr/share/applications >/dev/null 2>&1
fi
+
+if [ -e usr/share/icons/hicolor/icon-theme.cache ]; then
+ if [ -x /usr/bin/gtk-update-icon-cache ]; then
+ /usr/bin/gtk-update-icon-cache usr/share/icons/hicolor >/dev/null 2>&1
+ fi
+fi
diff --git a/games/yar/icons/16.png b/games/yar/icons/16.png
new file mode 100644
index 0000000000..4b0c16aff5
--- /dev/null
+++ b/games/yar/icons/16.png
Binary files differ
diff --git a/games/yar/icons/32.png b/games/yar/icons/32.png
new file mode 100644
index 0000000000..fde58bf7bd
--- /dev/null
+++ b/games/yar/icons/32.png
Binary files differ
diff --git a/games/yar/icons/48.png b/games/yar/icons/48.png
new file mode 100644
index 0000000000..9652e5c14c
--- /dev/null
+++ b/games/yar/icons/48.png
Binary files differ
diff --git a/games/yar/icons/64.png b/games/yar/icons/64.png
new file mode 100644
index 0000000000..92d31d1bab
--- /dev/null
+++ b/games/yar/icons/64.png
Binary files differ
diff --git a/games/yar/yar.SlackBuild b/games/yar/yar.SlackBuild
index 6e06afe37a..e3e32ecc2d 100644
--- a/games/yar/yar.SlackBuild
+++ b/games/yar/yar.SlackBuild
@@ -1,15 +1,22 @@
-#!/bin/sh
+#!/bin/bash
# Slackware build script for yar
-# Written by B. Watson (yalhcru@gmail.com)
+# Written by B. Watson (urchlay@slackware.uk)
# Licensed under the WTFPL. See http://www.wtfpl.net/txt/copying/ for details.
+# 20230107 bkw: BUILD=4, fix doinst.sh.
+# 20211017 bkw: BUILD=3, mo' better icons.
+# 20211011 bkw: BUILD=2, new-style icon
+
+cd $(dirname $0) ; CWD=$(pwd)
+
PRGNAM=yar
VERSION=${VERSION:-0.99}
-BUILD=${BUILD:-1}
+BUILD=${BUILD:-4}
TAG=${TAG:-_SBo}
+PKGTYPE=${PKGTYPE:-tgz}
if [ -z "$ARCH" ]; then
case "$( uname -m )" in
@@ -19,7 +26,11 @@ if [ -z "$ARCH" ]; then
esac
fi
-CWD=$(pwd)
+if [ ! -z "${PRINT_PACKAGE_NAME}" ]; then
+ echo "$PRGNAM-$VERSION-$ARCH-$BUILD$TAG.$PKGTYPE"
+ exit 0
+fi
+
TMP=${TMP:-/tmp/SBo}
PKG=$TMP/package-$PRGNAM
OUTPUT=${OUTPUT:-/tmp}
@@ -47,11 +58,8 @@ rm -rf $PRGNAM-$VERSION
tar xvf $CWD/$PRGNAM-$VERSION.tar.gz
cd $PRGNAM-$VERSION
chown -R root:root .
-find -L . \
- \( -perm 777 -o -perm 775 -o -perm 750 -o -perm 711 -o -perm 555 \
- -o -perm 511 \) -exec chmod 755 {} \; -o \
- \( -perm 666 -o -perm 664 -o -perm 640 -o -perm 600 -o -perm 444 \
- -o -perm 440 -o -perm 400 \) -exec chmod 644 {} \;
+find -L . -perm /111 -a \! -perm 755 -a -exec chmod 755 {} \+ -o \
+ \! -perm /111 -a \! -perm 644 -a -exec chmod 644 {} \+
zcat $CWD/missingincludes.diff.gz | patch -p1
@@ -73,9 +81,17 @@ mkdir -p $PKG/usr/doc/$PRGNAM-$VERSION
cp -a AUTHORS COPYING ChangeLog README $PKG/usr/doc/$PRGNAM-$VERSION
cat $CWD/$PRGNAM.SlackBuild > $PKG/usr/doc/$PRGNAM-$VERSION/$PRGNAM.SlackBuild
-# icon made from a screenshot of the game
+# icon made from screenshots of the game
+for i in $CWD/icons/*.png; do
+ px=$( basename $i | cut -d. -f1 )
+ size=${px}x${px}
+ dir=$PKG/usr/share/icons/hicolor/$size/apps
+ mkdir -p $dir
+ cat $i > $dir/$PRGNAM.png
+done
+
mkdir -p $PKG/usr/share/pixmaps
-cat $CWD/$PRGNAM.png > $PKG/usr/share/pixmaps/$PRGNAM.png
+ln -s ../icons/hicolor/48x48/apps/$PRGNAM.png $PKG/usr/share/pixmaps/$PRGNAM.png
# .desktop written for this build
mkdir -p $PKG/usr/share/applications
@@ -88,4 +104,4 @@ cat $CWD/slack-desc > $PKG/install/slack-desc
cat $CWD/doinst.sh > $PKG/install/doinst.sh
cd $PKG
-/sbin/makepkg -l y -c n $OUTPUT/$PRGNAM-$VERSION-$ARCH-$BUILD$TAG.${PKGTYPE:-tgz}
+/sbin/makepkg -l y -c n $OUTPUT/$PRGNAM-$VERSION-$ARCH-$BUILD$TAG.$PKGTYPE
diff --git a/games/yar/yar.desktop b/games/yar/yar.desktop
index 03841d9cd0..8fbdd58baa 100644
--- a/games/yar/yar.desktop
+++ b/games/yar/yar.desktop
@@ -1,7 +1,7 @@
[Desktop Entry]
Name=Yar's Revenge
Comment=Atari 2600 classic
-Exec=yar
+Exec=/usr/games/yar
Icon=yar
Terminal=false
Type=Application
diff --git a/games/yar/yar.info b/games/yar/yar.info
index 8b45ae5e17..e46621647c 100644
--- a/games/yar/yar.info
+++ b/games/yar/yar.info
@@ -1,10 +1,10 @@
PRGNAM="yar"
VERSION="0.99"
-HOMEPAGE="http://web.archive.org/web/20081012141232/http://www.sourcefiles.org/Games/Action/Space_Shooter/yar-0.99.tar.gz.shtml"
-DOWNLOAD="http://distfiles.gentoo.org/distfiles/yar-0.99.tar.gz"
+HOMEPAGE="https://web.archive.org/web/20081012141232/http://www.sourcefiles.org/Games/Action/Space_Shooter/yar-0.99.tar.gz.shtml"
+DOWNLOAD="https://distfiles.gentoo.org/distfiles/bb/yar-0.99.tar.gz"
MD5SUM="eab1d6a58ed13410a5347f83f8938367"
DOWNLOAD_x86_64=""
MD5SUM_x86_64=""
REQUIRES=""
MAINTAINER="B. Watson"
-EMAIL="yalhcru@gmail.com"
+EMAIL="urchlay@slackware.uk"
diff --git a/games/yar/yar.png b/games/yar/yar.png
deleted file mode 100644
index 53bd952d9e..0000000000
--- a/games/yar/yar.png
+++ /dev/null
Binary files differ
diff --git a/games/yarntown/yarntown.SlackBuild b/games/yarntown/yarntown.SlackBuild
index da93cea13f..f0eedcfddd 100644
--- a/games/yarntown/yarntown.SlackBuild
+++ b/games/yarntown/yarntown.SlackBuild
@@ -1,4 +1,4 @@
-#!/bin/sh
+#!/bin/bash
# Slackware build script for Yarntown
@@ -22,14 +22,24 @@
# OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF THIS SOFTWARE, EVEN IF
# ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
+cd $(dirname $0) ; CWD=$(pwd)
+
PRGNAM=yarntown
VERSION=${VERSION:-1.0.6}
BUILD=${BUILD:-1}
TAG=${TAG:-_SBo}
+PKGTYPE=${PKGTYPE:-tgz}
ARCH=noarch
-CWD=$(pwd)
+# If the variable PRINT_PACKAGE_NAME is set, then this script will report what
+# the name of the created package would be, and then exit. This information
+# could be useful to other scripts.
+if [ ! -z "${PRINT_PACKAGE_NAME}" ]; then
+ echo "$PRGNAM-$VERSION-$ARCH-$BUILD$TAG.$PKGTYPE"
+ exit 0
+fi
+
TMP=${TMP:-/tmp/SBo}
PKG=$TMP/package-$PRGNAM
OUTPUT=${OUTPUT:-/tmp}
@@ -76,4 +86,4 @@ cat $CWD/slack-desc > $PKG/install/slack-desc
cat $CWD/doinst.sh > $PKG/install/doinst.sh
cd $PKG
-/sbin/makepkg -l y -c n $OUTPUT/$PRGNAM-$VERSION-$ARCH-$BUILD$TAG.${PKGTYPE:-tgz}
+/sbin/makepkg -l y -c n $OUTPUT/$PRGNAM-$VERSION-$ARCH-$BUILD$TAG.$PKGTYPE
diff --git a/games/yetris/yetris.SlackBuild b/games/yetris/yetris.SlackBuild
index c6bb7d32f9..14bf12c927 100644
--- a/games/yetris/yetris.SlackBuild
+++ b/games/yetris/yetris.SlackBuild
@@ -1,4 +1,4 @@
-#!/bin/sh
+#!/bin/bash
# Slackware build script for yetris
@@ -22,10 +22,13 @@
# OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF THIS SOFTWARE, EVEN IF
# ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
+cd $(dirname $0) ; CWD=$(pwd)
+
PRGNAM=yetris
VERSION=${VERSION:-2.3.0}
BUILD=${BUILD:-1}
TAG=${TAG:-_SBo}
+PKGTYPE=${PKGTYPE:-tgz}
if [ -z "$ARCH" ]; then
case "$( uname -m )" in
@@ -35,7 +38,14 @@ if [ -z "$ARCH" ]; then
esac
fi
-CWD=$(pwd)
+# If the variable PRINT_PACKAGE_NAME is set, then this script will report what
+# the name of the created package would be, and then exit. This information
+# could be useful to other scripts.
+if [ ! -z "${PRINT_PACKAGE_NAME}" ]; then
+ echo "$PRGNAM-$VERSION-$ARCH-$BUILD$TAG.$PKGTYPE"
+ exit 0
+fi
+
TMP=${TMP:-/tmp/SBo}
PKG=$TMP/package-$PRGNAM
OUTPUT=${OUTPUT:-/tmp}
@@ -90,4 +100,4 @@ cat $CWD/slack-desc > $PKG/install/slack-desc
cat $CWD/doinst.sh > $PKG/install/doinst.sh
cd $PKG
-/sbin/makepkg -l y -c n $OUTPUT/$PRGNAM-$VERSION-$ARCH-$BUILD$TAG.${PKGTYPE:-tgz}
+/sbin/makepkg -l y -c n $OUTPUT/$PRGNAM-$VERSION-$ARCH-$BUILD$TAG.$PKGTYPE
diff --git a/games/yetris/yetris.info b/games/yetris/yetris.info
index 6cdb2e559d..229e524831 100644
--- a/games/yetris/yetris.info
+++ b/games/yetris/yetris.info
@@ -1,7 +1,7 @@
PRGNAM="yetris"
VERSION="2.3.0"
HOMEPAGE="https://github.com/alexdantas/yetris"
-DOWNLOAD="https://github.com/alexdantas/yetris/archive/v2.3.0.tar.gz"
+DOWNLOAD="https://github.com/alexdantas/yetris/archive/v2.3.0/yetris-2.3.0.tar.gz"
MD5SUM="2a503ccfc91c99910d53659dbfc14c5c"
DOWNLOAD_x86_64=""
MD5SUM_x86_64=""
diff --git a/games/z26/README b/games/z26/README
deleted file mode 100644
index e735b36244..0000000000
--- a/games/z26/README
+++ /dev/null
@@ -1,16 +0,0 @@
-z26 (an Atari 2600 emulator)
-
-Z26 is one of the best emulators for the Atari 2600. The author reports
-that the graphics part of the emulator is nearing perfection to a point
-that there's little more to fix.
-
-This is z26 version 2.13, the last release that was actually developed
-and tested on Linux. The later 3.x series has some issues running on
-Linux, and the authors aren't interested in fixing them. If you want
-to try it, install games/z26v3 (which won't conflict with this build;
-you can have both installed).
-
-Note to 64-bit users: z26 is mostly written in 32-bit x86 assembly,
-so it can't be built for x86_64. However, this SlackBuild can create
-a package that will run on pure 64-bit Slackware, by using a prebuilt,
-statically linked z26 executable.
diff --git a/games/z26/slack-desc b/games/z26/slack-desc
deleted file mode 100644
index bf46319d60..0000000000
--- a/games/z26/slack-desc
+++ /dev/null
@@ -1,19 +0,0 @@
-# HOW TO EDIT THIS FILE:
-# The "handy ruler" below makes it easier to edit a package description.
-# Line up the first '|' above the ':' following the base package name, and
-# the '|' on the right side marks the last column you can put a character in.
-# You must make exactly 11 lines for the formatting to be correct. It's also
-# customary to leave one space after the ':' except on otherwise blank lines.
-
- |-----handy-ruler------------------------------------------------------|
-z26: z26 (an Atari 2600 emulator)
-z26:
-z26: Z26 is one of the best emulators for the Atari 2600.
-z26: The author reports that the graphics part of the emulator is nearing
-z26: perfection to a point that there's little more to fix.
-z26:
-z26:
-z26:
-z26:
-z26:
-z26:
diff --git a/games/z26/statify.sh b/games/z26/statify.sh
deleted file mode 100644
index 91a0abd094..0000000000
--- a/games/z26/statify.sh
+++ /dev/null
@@ -1,22 +0,0 @@
-#!/bin/sh
-
-# z26 is written partly in x86 (32-bit) assembly, so it can't be built
-# for 64-bit. So the solution for running it on pure 64-bit systems is
-# to use a static binary that doesn't require any 32-bit libs.
-
-# Run this script on a 32-bit host *with VDSO disabled*, to generate
-# the binary used for the 64-bit build.
-
-# Notes:
-# - libgcc_s.so has to be included or else z26 dumps core on exit.
-# - libaoss and libasound are needed because z26 doesn't use SDL's
-# sound API, it talks directly to OSS via /dev/dsp.
-# - libudev is needed for SDL to detect the mouse.
-# - If you run "file" on the statified binary, it looks dynamic:
-# $ file /usr/games/z26
-# /usr/games/z26: ELF 32-bit LSB executable, Intel 80386, version 1 (SYSV), dynamically linked, stripped
-# ...but ldd says it's "not a dynamic executable". This is normal
-# for statified binaries.
-# - Do not attempt to strip the statified binary. It will break.
-
-statifier --set=LD_PRELOAD=/usr/lib/libudev.so:/usr/lib/libaoss.so:/usr/lib/libasound.so:/usr/lib/libgcc_s.so /usr/games/z26 z26.static
diff --git a/games/z26/z26.SlackBuild b/games/z26/z26.SlackBuild
deleted file mode 100644
index e981519c85..0000000000
--- a/games/z26/z26.SlackBuild
+++ /dev/null
@@ -1,96 +0,0 @@
-#!/bin/sh
-
-# Slackware build script for z26
-
-# Written by B. Watson (yalhcru@gmail.com)
-# Modified by SlackBuilds.org
-
-# Licensed under the WTFPL. See http://www.wtfpl.net/txt/copying/ for details.
-
-# 20180123 bkw:
-# - move binary to /usr/games, man page to section 6
-# - 64-bit support via statified binary (see statify.sh)
-# - BUILD=2
-
-PRGNAM=z26
-VERSION=${VERSION:-2.13}
-BUILD=${BUILD:-2}
-TAG=${TAG:-_SBo}
-
-# The distribution tarball is actually a snapshot that got
-# "promoted" to being the 2.13 release, but never got repacked,
-# so the top-level directory is z26_snapshot-$date
-# (nevertheless, this is the official 2.13 source release, or as close
-# as we're going to get)
-SNAPVER=${SNAPVER:-${PRGNAM}_snapshot-20040523}
-TARBALL=${TARBALL:-${PRGNAM}v213.tar.gz}
-
-if [ -z "$ARCH" ]; then
- case "$( uname -m )" in
- i?86) ARCH=i586 ;;
- arm*) ARCH=arm ;;
- *) ARCH=$( uname -m ) ;;
- esac
-fi
-
-CWD=$(pwd)
-TMP=${TMP:-/tmp/SBo}
-PKG=$TMP/package-$PRGNAM
-OUTPUT=${OUTPUT:-/tmp}
-
-if [ "$ARCH" = "i586" ]; then
- SLKCFLAGS="-O2 -march=i586 -mtune=i686"
-elif [ "$ARCH" = "i686" ]; then
- SLKCFLAGS="-O2 -march=i686 -mtune=i686"
-elif [ "$ARCH" = "x86_64" ]; then
- echo "=== $ARCH detected, using statified binary"
-else
- echo "Can't build on $ARCH, sorry"
- exit 1
-fi
-
-set -e
-
-rm -rf $PKG
-mkdir -p $TMP $PKG $OUTPUT
-cd $TMP
-rm -rf $SNAPVER
-tar xvf $CWD/$TARBALL
-cd $SNAPVER
-chown -R root:root .
-find -L . \
- \( -perm 777 -o -perm 775 -o -perm 750 -o -perm 711 -o -perm 555 \
- -o -perm 511 \) -exec chmod 755 {} \; -o \
- \( -perm 666 -o -perm 664 -o -perm 640 -o -perm 600 -o -perm 444 \
- -o -perm 440 -o -perm 400 \) -exec chmod 644 {} \;
-
-# man page belongs in section 6
-sed -i '/pod2man -c/s,-c,-s6 -c,' Makefile
-
-if [ "$ARCH" = "x86_64" ]; then
- xz -d < $CWD/$PRGNAM.static.xz > $PRGNAM
- chmod 755 $PRGNAM
- cp conf/config_linux-static.mak config.mak
-else
- make linux CFLAGS="$SLKCFLAGS"
-fi
-make $PRGNAM.man
-make docs
-
-mkdir -p $PKG/usr/games $PKG/usr/man/man6
-install -m0755 -o root -g root $PRGNAM $PKG/usr/games
-gzip -9c $PRGNAM.man > $PKG/usr/man/man6/$PRGNAM.6.gz
-
-rm -rf doc/CVS
-mkdir -p $PKG/usr/doc/$PRGNAM-$VERSION
-cp doc/* *.txt *.TXT $PKG/usr/doc/$PRGNAM-$VERSION
-cat $CWD/$PRGNAM.SlackBuild > $PKG/usr/doc/$PRGNAM-$VERSION/$PRGNAM.SlackBuild
-
-mkdir -p $PKG/usr/share/pixmaps
-cp ${PRGNAM}_icon.png $PKG/usr/share/pixmaps/$PRGNAM.png
-
-mkdir -p $PKG/install
-cat $CWD/slack-desc > $PKG/install/slack-desc
-
-cd $PKG
-/sbin/makepkg -l y -c n $OUTPUT/$PRGNAM-$VERSION-$ARCH-$BUILD$TAG.${PKGTYPE:-tgz}
diff --git a/games/z26/z26.info b/games/z26/z26.info
deleted file mode 100644
index ff6ff6c1f1..0000000000
--- a/games/z26/z26.info
+++ /dev/null
@@ -1,12 +0,0 @@
-PRGNAM="z26"
-VERSION="2.13"
-HOMEPAGE="http://www.whimsey.com"
-DOWNLOAD="http://www.whimsey.com/z26/z26v213.tar.gz"
-MD5SUM="0b0b9b42f203f6defca74a85f071f7c8"
-DOWNLOAD_x86_64="http://www.whimsey.com/z26/z26v213.tar.gz \
- https://slackware.uk/~urchlay/src/z26.static.xz"
-MD5SUM_x86_64="0b0b9b42f203f6defca74a85f071f7c8 \
- e3e0ba119fef0a9494759a731ceb2183"
-REQUIRES=""
-MAINTAINER="B. Watson"
-EMAIL="yalhcru@gmail.com"
diff --git a/games/z26v3/README b/games/z26v3/README
deleted file mode 100644
index 5ec1bdbeb4..0000000000
--- a/games/z26v3/README
+++ /dev/null
@@ -1,24 +0,0 @@
-z26v3 (an Atari 2600 emulator)
-
-Z26 is one of the best emulators for the Atari 2600. The author reports
-that the graphics part of the emulator is nearing perfection to a point
-that there's little more to fix.
-
-This is z26 version 3.x, which may have some issues running on Linux
-(depending on your hardware & config), and the authors aren't interested
-in fixing them. If you have problems you can't solve, try the older 2.13
-release, by installing games/z26 (which won't conflict with this build;
-you can have both installed).
-
-Specific Linux issues in this version:
-
-- The config file (z26.gui) is always read & written in the directory
- where the ROM image is located. If the file doesn't exist and z26 can't
- write to the directory, it refuses to start. This means no root-owned,
- system-wide /usr/share/games/roms/2600 directory (even if users can
- write there, they'll overwrite each others' config files).
-
-- The video timing relies on OpenGL VSync. If your card/driver combo is
- incapable of this, the games will run insanely fast. Even with VSync
- support, the games run at whatever your monitor refresh rate is set to
- (for LCD panels this is usually 60Hz, which is correct for NTSC games).
diff --git a/games/z26v3/doinst.sh b/games/z26v3/doinst.sh
deleted file mode 100644
index 9a8ded3c60..0000000000
--- a/games/z26v3/doinst.sh
+++ /dev/null
@@ -1,7 +0,0 @@
-if [ -x /usr/bin/update-desktop-database ]; then
- /usr/bin/update-desktop-database -q usr/share/applications >/dev/null 2>&1
-fi
-
-if [ -x /usr/bin/update-mime-database ]; then
- /usr/bin/update-mime-database usr/share/mime >/dev/null 2>&1
-fi
diff --git a/games/z26v3/fixsegfault.diff.gz b/games/z26v3/fixsegfault.diff.gz
deleted file mode 100644
index a20fef4b4c..0000000000
--- a/games/z26v3/fixsegfault.diff.gz
+++ /dev/null
Binary files differ
diff --git a/games/z26v3/slack-desc b/games/z26v3/slack-desc
deleted file mode 100644
index 7d795e12e7..0000000000
--- a/games/z26v3/slack-desc
+++ /dev/null
@@ -1,19 +0,0 @@
-# HOW TO EDIT THIS FILE:
-# The "handy ruler" below makes it easier to edit a package description.
-# Line up the first '|' above the ':' following the base package name, and
-# the '|' on the right side marks the last column you can put a character in.
-# You must make exactly 11 lines for the formatting to be correct. It's also
-# customary to leave one space after the ':' except on otherwise blank lines.
-
- |-----handy-ruler------------------------------------------------------|
-z26v3: z26v3 (an Atari 2600 emulator)
-z26v3:
-z26v3: Z26 is one of the best emulators for the Atari 2600.
-z26v3: The author reports that the graphics part of the emulator is nearing
-z26v3: perfection to a point that there's little more to fix.
-z26v3:
-z26v3:
-z26v3:
-z26v3:
-z26v3:
-z26v3:
diff --git a/games/z26v3/z26v3.SlackBuild b/games/z26v3/z26v3.SlackBuild
deleted file mode 100644
index 354d812ad8..0000000000
--- a/games/z26v3/z26v3.SlackBuild
+++ /dev/null
@@ -1,94 +0,0 @@
-#!/bin/sh
-
-# Slackware build script for z26v3
-
-# Written by B. Watson (yalhcru@gmail.com)
-
-# Licensed under the WTFPL. See http://www.wtfpl.net/txt/copying/ for details.
-
-# Possibly TODO: write a man page. Upstream didn't bother to document
-# the command line options (even went so far as to remove the man page
-# and usage message that used to be in z26 2.x). The options have changed
-# since 2.x, so it would be a tedious process of reading the source code.
-# Not in the mood right now, maybe later.
-
-# Also possibly TODO: a patch to keep the config files (z26.gui and
-# z26.cli) in the user's home directory instead of whatever dir the
-# ROM file happens to live in. Leaving it as-is has its uses: different
-# sets of ROMs might require different options, so you could separate
-# them into dirs and each dir gets its own config file. Maybe the patch
-# should leave the config file locations alone, but allow the emulator
-# to start in the absence of a config file. Still thinking on this one.
-
-PRGNAM=z26v3
-VERSION=${VERSION:-3.02.01}
-BUILD=${BUILD:-1}
-TAG=${TAG:-_SBo}
-
-if [ -z "$ARCH" ]; then
- case "$( uname -m )" in
- i?86) ARCH=i586 ;;
- arm*) ARCH=arm ;;
- *) ARCH=$( uname -m ) ;;
- esac
-fi
-
-CWD=$(pwd)
-TMP=${TMP:-/tmp/SBo}
-PKG=$TMP/package-$PRGNAM
-OUTPUT=${OUTPUT:-/tmp}
-
-if [ "$ARCH" = "i586" ]; then
- SLKCFLAGS="-O2 -march=i586 -mtune=i686"
- LIBDIRSUFFIX=""
-elif [ "$ARCH" = "i686" ]; then
- SLKCFLAGS="-O2 -march=i686 -mtune=i686"
- LIBDIRSUFFIX=""
-elif [ "$ARCH" = "x86_64" ]; then
- SLKCFLAGS="-O2 -fPIC"
- LIBDIRSUFFIX="64"
-else
- SLKCFLAGS="-O2"
- LIBDIRSUFFIX=""
-fi
-
-set -e
-
-rm -rf $PKG
-mkdir -p $TMP $PKG $OUTPUT
-cd $TMP
-rm -rf $PRGNAM-$VERSION
-mkdir -p $PRGNAM-$VERSION
-cd $PRGNAM-$VERSION
-unzip $CWD/z26v${VERSION}s.zip
-chown -R root:root .
-find -L . -perm /111 -a \! -perm 755 -a -exec chmod 755 {} \+ -o \
- \! -perm /111 -a \! -perm 644 -a -exec chmod 644 {} \+
-
-# Fix segfault on exit, when a ROM filename is passed on the command
-# line. Please don't gunzip the patch: it has CRLF line endings, git
-# will "helpfully" remove them, and the patch will fail.
-zcat $CWD/fixsegfault.diff.gz | patch -p1
-
-cd src
-make linux CFLAGS="$SLKCFLAGS"
-mkdir -p $PKG/usr/games
-install -s -m0755 -oroot -groot z26 $PKG/usr/games/$PRGNAM
-
-# .desktop file written by SlackBuild author.
-mkdir -p $PKG/usr/share/applications $PKG/usr/share/pixmaps
-cat $CWD/$PRGNAM.desktop > $PKG/usr/share/applications/$PRGNAM.desktop
-cat z26_icon.png > $PKG/usr/share/pixmaps/$PRGNAM.png
-
-mkdir -p $PKG/usr/doc/$PRGNAM-$VERSION
-for i in doc/*; do
- sed 's,\r,,' $i > $PKG/usr/doc/$PRGNAM-$VERSION/$( basename $i )
-done
-cat $CWD/$PRGNAM.SlackBuild > $PKG/usr/doc/$PRGNAM-$VERSION/$PRGNAM.SlackBuild
-
-mkdir -p $PKG/install
-cat $CWD/slack-desc > $PKG/install/slack-desc
-cat $CWD/doinst.sh > $PKG/install/doinst.sh
-
-cd $PKG
-/sbin/makepkg -l y -c n $OUTPUT/$PRGNAM-$VERSION-$ARCH-$BUILD$TAG.${PKGTYPE:-tgz}
diff --git a/games/z26v3/z26v3.desktop b/games/z26v3/z26v3.desktop
deleted file mode 100644
index 29f229c784..0000000000
--- a/games/z26v3/z26v3.desktop
+++ /dev/null
@@ -1,10 +0,0 @@
-[Desktop Entry]
-Name=Z26 v3.x
-Comment=Atari 2600 emulator
-Exec=z26v3 %f
-Icon=z26v3
-Terminal=false
-Type=Application
-StartupNotify=false
-Categories=Emulator;Game;
-MimeType=application/x-2600rom;
diff --git a/games/z26v3/z26v3.info b/games/z26v3/z26v3.info
deleted file mode 100644
index 5757da7ccd..0000000000
--- a/games/z26v3/z26v3.info
+++ /dev/null
@@ -1,10 +0,0 @@
-PRGNAM="z26v3"
-VERSION="3.02.01"
-HOMEPAGE="http://www.whimsey.com/z26/z26.html"
-DOWNLOAD="http://www.whimsey.com/z26/z26v3.02.01s.zip"
-MD5SUM="5c28a898a6a6145c222a8f0b5c8ce8d6"
-DOWNLOAD_x86_64=""
-MD5SUM_x86_64=""
-REQUIRES=""
-MAINTAINER="B. Watson"
-EMAIL="yalhcru@gmail.com"
diff --git a/games/zaz/README b/games/zaz/README
index e9d62c874d..dc81a3eb2b 100644
--- a/games/zaz/README
+++ b/games/zaz/README
@@ -1,7 +1,9 @@
+zaz (action/puzzle game)
+
Zaz is a game where the player has to get rid of incoming balls by
-arranging them in triplets. The idea of the game is loosely based on games
-like Luxor, Zuma and Puzzle Bobble. The twists that make Zaz stand out
-from other games of this type are that the balls have to be picked from
-the path (insted of being randomly assigned for the player) and that the
-player's "vehicle" is also attached to a path which is different from
-level to level.
+arranging them in triplets. The idea of the game is loosely based on
+games like Luxor, Zuma, Puzz Loop, and Puzzle Bobble. The twists that
+make Zaz stand out from other games of this type are that the balls
+have to be picked from the path (insted of being randomly assigned for
+the player) and that the player's "vehicle" is also attached to a path
+which is different from level to level.
diff --git a/games/zaz/disable_sdl_dga_mouse.diff b/games/zaz/disable_sdl_dga_mouse.diff
new file mode 100644
index 0000000000..2d380e4db6
--- /dev/null
+++ b/games/zaz/disable_sdl_dga_mouse.diff
@@ -0,0 +1,14 @@
+diff -Naur zaz-1.0.0/src/main.cpp zaz-1.0.0.patched/src/main.cpp
+--- zaz-1.0.0/src/main.cpp 2010-08-23 18:20:22.000000000 -0400
++++ zaz-1.0.0.patched/src/main.cpp 2023-07-03 18:52:07.366865483 -0400
+@@ -60,6 +60,10 @@
+ char *editorPhilename = 0;
+ char *testplayPhilename = 0;
+
++ if(!getenv("SDL_VIDEO_X11_DGAMOUSE")) {
++ putenv("SDL_VIDEO_X11_DGAMOUSE=0");
++ }
++
+ resReset = false;
+
+ if (argc > 1)
diff --git a/games/zaz/doinst.sh b/games/zaz/doinst.sh
index 5fb28930db..65c7e2eeb9 100644
--- a/games/zaz/doinst.sh
+++ b/games/zaz/doinst.sh
@@ -1,3 +1,9 @@
if [ -x /usr/bin/update-desktop-database ]; then
/usr/bin/update-desktop-database -q usr/share/applications >/dev/null 2>&1
fi
+
+if [ -e usr/share/icons/hicolor/icon-theme.cache ]; then
+ if [ -x /usr/bin/gtk-update-icon-cache ]; then
+ /usr/bin/gtk-update-icon-cache -f usr/share/icons/hicolor >/dev/null 2>&1
+ fi
+fi
diff --git a/games/zaz/slack-desc b/games/zaz/slack-desc
index cab03718a0..4ece80f05b 100644
--- a/games/zaz/slack-desc
+++ b/games/zaz/slack-desc
@@ -6,10 +6,10 @@
# customary to leave one space after the ':' except on otherwise blank lines.
|-----handy-ruler------------------------------------------------------|
-zaz: zaz (puzzle game)
+zaz: zaz (action/puzzle game)
zaz:
-zaz: Zaz ain't Z*** is a puzzle game where the player has to get rid of
-zaz: incoming balls by arranging them in triplets Because hackers too need
+zaz: Zaz Ain't Z*** is a puzzle game where the player has to get rid of
+zaz: incoming balls by arranging them in triplets. Because hackers too need
zaz: to play with balls
zaz:
zaz: Homepage: http://zaz.sourceforge.net
diff --git a/games/zaz/zaz.6 b/games/zaz/zaz.6
new file mode 100644
index 0000000000..478043df4b
--- /dev/null
+++ b/games/zaz/zaz.6
@@ -0,0 +1,143 @@
+.\" Man page generated from reStructuredText.
+.
+.
+.nr rst2man-indent-level 0
+.
+.de1 rstReportMargin
+\\$1 \\n[an-margin]
+level \\n[rst2man-indent-level]
+level margin: \\n[rst2man-indent\\n[rst2man-indent-level]]
+-
+\\n[rst2man-indent0]
+\\n[rst2man-indent1]
+\\n[rst2man-indent2]
+..
+.de1 INDENT
+.\" .rstReportMargin pre:
+. RS \\$1
+. nr rst2man-indent\\n[rst2man-indent-level] \\n[an-margin]
+. nr rst2man-indent-level +1
+.\" .rstReportMargin post:
+..
+.de UNINDENT
+. RE
+.\" indent \\n[an-margin]
+.\" old: \\n[rst2man-indent\\n[rst2man-indent-level]]
+.nr rst2man-indent-level -1
+.\" new: \\n[rst2man-indent\\n[rst2man-indent-level]]
+.in \\n[rst2man-indent\\n[rst2man-indent-level]]u
+..
+.TH "ZAZ" 6 "2023-07-03" "1.0.0" "SlackBuilds.org"
+.SH NAME
+zaz \- action/puzzle game
+.\" RST source for zaz(1) man page. Convert with:
+.
+.\" rst2man.py zaz.rst > zaz.6
+.
+.\" rst2man.py comes from the SBo development/docutils package.
+.
+.SH SYNOPSIS
+.sp
+zaz [\fB\-d\fP \fIdirectory\fP] [\fB\-e\fP [\fI\-level\fP]] [\fB\-p\fP \fIlevel\fP] [\fB\-t\fP]
+.SH DESCRIPTION
+.sp
+Zaz is a game where the player has to get rid of incoming balls by
+arranging them in triplets. The idea of the game is loosely based on
+games like Luxor, Zuma, Puzz Loop, and Puzzle Bobble. The twists that
+make Zaz stand out from other games of this type are that the balls
+have to be picked from the path (insted of being randomly assigned for
+the player) and that the player\(aqs "vehicle" is also attached to a path
+which is different from level to level.
+.sp
+The game can be controlled with either the mouse or the keyboard (see
+\fBCONTROLS\fP, below).
+.SH OPTIONS
+.sp
+These options are used for editing levels and testing them. For normal
+gameplay, \fBzaz\fP should be run without options.
+.INDENT 0.0
+.TP
+.B \-d \fIdirectory\fP
+Use \fIdirectory\fP for game data location. The default is \fI/usr/share/zaz\fP\&.
+.TP
+.B \-e [\fIlevel\fP]
+Start up in level editing mode. If \fBlevel\fP is given, it will be loaded
+into the editor, otherwise \fIdefault\fP is used. \fBlevel\fP shoould be the name
+of the \fI\&.lvl\fP file, minus the \fI\&.lvl\fP extension.
+Must be run from within the data directory (or a copy of it).
+.TP
+.B \-p \fIlevel\fP
+Test\-play a level (possibly created with \fB\-e\fP).
+Must be run from within the data directory (or a copy of it).
+.UNINDENT
+.INDENT 0.0
+.TP
+.B \-t
+This is supposed to run the built\-in self\-tests. However, all it seems to
+do is segfault.
+.UNINDENT
+.SH CONTROLS
+.INDENT 0.0
+.TP
+.B Movement
+Mouse X axis or keyboard left/right arrows.
+.TP
+.B Pick or Fire Ball
+Mouse button 1 (normally left), keyboard Space, Enter, or down arrow.
+.TP
+.B Speedup (advance puzzle)
+Mouse button 3 (normally right), or keyboard up arrow.
+.UNINDENT
+.sp
+There is no way to change these keyboard/mouse control mappings. If
+the keyboard movement doesn\(aqt seem to work properly (arrow keys jump
+the player all the way left or right), try moving the mouse slightly.
+.SH FILES
+.sp
+\fB$HOME/.zaz/\fP contains:
+.INDENT 0.0
+.INDENT 3.5
+.INDENT 0.0
+.TP
+.B \fBsettings\fP
+Saved settings. Human\-readable, but normally edited within the game,
+via the \fIOptions\fP menu.
+.TP
+.B \fBhiscores\fP
+Self\-explanatory.
+.TP
+.B \fB*.profile\fP
+Used to keep track of which levels have been unlocked.
+.UNINDENT
+.UNINDENT
+.UNINDENT
+.\" ENVIRONMENT
+.
+.\" ===========
+.
+.\" EXIT STATUS
+.
+.\" ===========
+.
+.\" BUGS
+.
+.\" ====
+.
+.\" EXAMPLES
+.
+.\" ========
+.
+.SH COPYRIGHT
+.sp
+See the file /usr/doc/zaz\-1.0.0/COPYING for license information.
+.SH AUTHORS
+.sp
+zaz was written by Remigiusz Dybka, with music by paniQ.
+.sp
+This man page written for the SlackBuilds.org project
+by B. Watson, and is licensed under the WTFPL.
+.SH SEE ALSO
+.sp
+The zaz homepage: \fI\%http://zaz.sourceforge.net\fP
+.\" Generated by docutils manpage writer.
+.
diff --git a/games/zaz/zaz.SlackBuild b/games/zaz/zaz.SlackBuild
index 2ea8d2487c..66bbc814d1 100644
--- a/games/zaz/zaz.SlackBuild
+++ b/games/zaz/zaz.SlackBuild
@@ -1,4 +1,4 @@
-#!/bin/sh
+#!/bin/bash
# Slackware build script for zaz
#
@@ -22,10 +22,21 @@
# OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF THIS SOFTWARE, EVEN IF
# ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
+# 20230701 bkw: Modified by SlackBuilds.org, BUILD=2:
+# - move binary to /usr/games.
+# - new-style (prescaled) icons.
+# - write and add man page.
+# - patch for left-handed mouse users (disable SDL DGA mouse by default).
+# - remove junk from doc dir.
+# All this stuff is being done with the approval of the maintainer (MLanden).
+
+cd $(dirname $0) ; CWD=$(pwd)
+
PRGNAM=zaz
VERSION=${VERSION:-1.0.0}
-BUILD=${BUILD:-1}
+BUILD=${BUILD:-2}
TAG=${TAG:-_SBo}
+PKGTYPE=${PKGTYPE:-tgz}
if [ -z "$ARCH" ]; then
case "$( uname -m )" in
@@ -35,12 +46,15 @@ if [ -z "$ARCH" ]; then
esac
fi
-CWD=$(pwd)
+if [ ! -z "${PRINT_PACKAGE_NAME}" ]; then
+ echo "$PRGNAM-$VERSION-$ARCH-$BUILD$TAG.$PKGTYPE"
+ exit 0
+fi
+
TMP=${TMP:-/tmp/SBo}
PKG=$TMP/package-$PRGNAM
OUTPUT=${OUTPUT:-/tmp}
-
if [ "$ARCH" = "i586" ]; then
SLKCFLAGS="-O2 -march=i586 -mtune=i686"
LIBDIRSUFFIX=""
@@ -64,35 +78,51 @@ rm -rf $PRGNAM-$VERSION
tar xvf $CWD/$PRGNAM-$VERSION.tar.bz2
cd $PRGNAM-$VERSION
chown -R root:root .
-find -L . \
- \( -perm 777 -o -perm 775 -o -perm 750 -o -perm 711 -o -perm 555 \
- -o -perm 511 \) -exec chmod 755 {} \; -o \
- \( -perm 666 -o -perm 664 -o -perm 640 -o -perm 600 -o -perm 444 \
- -o -perm 440 -o -perm 400 \) -exec chmod 644 {} \;
+find -L . -perm /111 -a \! -perm 755 -a -exec chmod 755 {} + -o \
+ \! -perm /111 -a \! -perm 644 -a -exec chmod 644 {} +
+
+# 20230703 bkw: SDL 1.x apps don't always play nice with left-handed
+# mouse users. This makes SDL respect the button mappings set with
+# xmodmap. It doesn't cause any harm for righties, either. Thanks
+# to redruM on libera ##slackware for pointing this out.
+patch -p1 < $CWD/disable_sdl_dga_mouse.diff
+
+# 20230703 bkw: In case someone doesn't have /usr/games in $PATH:
+sed -i '/Exec=/s,zaz,/usr/games/zaz,' extra/zaz.desktop
LDFLAGS="-lvorbis" \
CFLAGS="$SLKCFLAGS" \
CXXFLAGS="$SLKCFLAGS" \
./configure \
--prefix=/usr \
+ --bindir=/usr/games \
--libdir=/usr/lib${LIBDIRSUFFIX} \
--docdir=/usr/doc/$PRGNAM-$VERSION \
--build=$ARCH-slackware-linux
make
-make install DESTDIR=$PKG
+make install-strip DESTDIR=$PKG
+
+mkdir -p $PKG/usr/man/man6
+gzip -9c < $CWD/$PRGNAM.6 > $PKG/usr/man/man6/$PRGNAM.6.gz
-find $PKG | xargs file | grep -e "executable" -e "shared object" | grep ELF \
- | cut -f 1 -d : | xargs strip --strip-unneeded 2> /dev/null || true
+# 20230703 bkw: prescaled new-style icons.
+for px in 16 22 32 48 64; do
+ size="${px}x${px}"
+ dir=$PKG/usr/share/icons/hicolor/$size/apps
+ mkdir -p $dir
+ convert -resize $size extra/zaz.xpm $dir/zaz.png
+done
-mkdir -p $PKG/usr/doc/$PRGNAM-$VERSION
-cp -a AUTHORS COPYING ChangeLog INSTALL NEWS README \
- $PKG/usr/doc/$PRGNAM-$VERSION
-cat $CWD/$PRGNAM.SlackBuild > $PKG/usr/doc/$PRGNAM-$VERSION/$PRGNAM.SlackBuild
+# 20230701 bkw: docs already installed. INSTALL is generic GNU "how to
+# run configure" and NEWS is a 0-byte placeholder, don't need.
+PKGDOC=$PKG/usr/doc/$PRGNAM-$VERSION
+rm $PKGDOC/{INSTALL,NEWS}
+cat $CWD/$PRGNAM.SlackBuild > $PKGDOC/$PRGNAM.SlackBuild
mkdir -p $PKG/install
cat $CWD/slack-desc > $PKG/install/slack-desc
cat $CWD/doinst.sh > $PKG/install/doinst.sh
cd $PKG
-/sbin/makepkg -l y -c n $OUTPUT/$PRGNAM-$VERSION-$ARCH-$BUILD$TAG.${PKGTYPE:-tgz}
+/sbin/makepkg -l y -c n $OUTPUT/$PRGNAM-$VERSION-$ARCH-$BUILD$TAG.$PKGTYPE
diff --git a/games/zaz/zaz.rst b/games/zaz/zaz.rst
new file mode 100644
index 0000000000..36b2ac1ca3
--- /dev/null
+++ b/games/zaz/zaz.rst
@@ -0,0 +1,122 @@
+.. RST source for zaz(1) man page. Convert with:
+.. rst2man.py zaz.rst > zaz.6
+.. rst2man.py comes from the SBo development/docutils package.
+
+.. |version| replace:: 1.0.0
+.. |date| date::
+
+===
+zaz
+===
+
+------------------
+action/puzzle game
+------------------
+
+:Manual section: 6
+:Manual group: SlackBuilds.org
+:Date: |date|
+:Version: |version|
+
+SYNOPSIS
+========
+
+zaz [**-d** *directory*] [**-e** [*-level*]] [**-p** *level*] [**-t**]
+
+DESCRIPTION
+===========
+
+Zaz is a game where the player has to get rid of incoming balls by
+arranging them in triplets. The idea of the game is loosely based on
+games like Luxor, Zuma, Puzz Loop, and Puzzle Bobble. The twists that
+make Zaz stand out from other games of this type are that the balls
+have to be picked from the path (insted of being randomly assigned for
+the player) and that the player's "vehicle" is also attached to a path
+which is different from level to level.
+
+The game can be controlled with either the mouse or the keyboard (see
+**CONTROLS**, below).
+
+OPTIONS
+=======
+
+These options are used for editing levels and testing them. For normal
+gameplay, **zaz** should be run without options.
+
+-d *directory*
+ Use *directory* for game data location. The default is */usr/share/zaz*.
+
+-e [*level*]
+ Start up in level editing mode. If **level** is given, it will be loaded
+ into the editor, otherwise *default* is used. **level** shoould be the name
+ of the *.lvl* file, minus the *.lvl* extension.
+ Must be run from within the data directory (or a copy of it).
+
+-p *level*
+ Test-play a level (possibly created with **-e**).
+ Must be run from within the data directory (or a copy of it).
+
+-t
+ This is supposed to run the built-in self-tests. However, all it seems to
+ do is segfault.
+
+CONTROLS
+========
+
+Movement
+ Mouse X axis or keyboard left/right arrows.
+
+Pick or Fire Ball
+ Mouse button 1 (normally left), keyboard Space, Enter, or down arrow.
+
+Speedup (advance puzzle)
+ Mouse button 3 (normally right), or keyboard up arrow.
+
+There is no way to change these keyboard/mouse control mappings. If
+the keyboard movement doesn't seem to work properly (arrow keys jump
+the player all the way left or right), try moving the mouse slightly.
+
+FILES
+=====
+
+**$HOME/.zaz/** contains:
+
+ **settings**
+ Saved settings. Human-readable, but normally edited within the game,
+ via the *Options* menu.
+
+ **hiscores**
+ Self-explanatory.
+
+ **\*.profile**
+ Used to keep track of which levels have been unlocked.
+
+.. ENVIRONMENT
+.. ===========
+
+.. EXIT STATUS
+.. ===========
+
+.. BUGS
+.. ====
+
+.. EXAMPLES
+.. ========
+
+COPYRIGHT
+=========
+
+See the file /usr/doc/zaz-|version|/COPYING for license information.
+
+AUTHORS
+=======
+
+zaz was written by Remigiusz Dybka, with music by paniQ.
+
+This man page written for the SlackBuilds.org project
+by B. Watson, and is licensed under the WTFPL.
+
+SEE ALSO
+========
+
+The zaz homepage: http://zaz.sourceforge.net
diff --git a/games/zbom/zbom.SlackBuild b/games/zbom/zbom.SlackBuild
index a68015cf51..b174cae24c 100644
--- a/games/zbom/zbom.SlackBuild
+++ b/games/zbom/zbom.SlackBuild
@@ -1,4 +1,4 @@
-#!/bin/sh
+#!/bin/bash
# Slackware build script for Zelda: Book of Mudora
@@ -22,14 +22,24 @@
# OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF THIS SOFTWARE, EVEN IF
# ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
+cd $(dirname $0) ; CWD=$(pwd)
+
PRGNAM=zbom
VERSION=${VERSION:-1.4}
BUILD=${BUILD:-2}
TAG=${TAG:-_SBo}
+PKGTYPE=${PKGTYPE:-tgz}
ARCH=noarch
-CWD=$(pwd)
+# If the variable PRINT_PACKAGE_NAME is set, then this script will report what
+# the name of the created package would be, and then exit. This information
+# could be useful to other scripts.
+if [ ! -z "${PRINT_PACKAGE_NAME}" ]; then
+ echo "$PRGNAM-$VERSION-$ARCH-$BUILD$TAG.$PKGTYPE"
+ exit 0
+fi
+
TMP=${TMP:-/tmp/SBo}
PKG=$TMP/package-$PRGNAM
OUTPUT=${OUTPUT:-/tmp}
@@ -80,4 +90,4 @@ cat $CWD/slack-desc > $PKG/install/slack-desc
cat $CWD/doinst.sh > $PKG/install/doinst.sh
cd $PKG
-/sbin/makepkg -l y -c n $OUTPUT/$PRGNAM-$VERSION-$ARCH-$BUILD$TAG.${PKGTYPE:-tgz}
+/sbin/makepkg -l y -c n $OUTPUT/$PRGNAM-$VERSION-$ARCH-$BUILD$TAG.$PKGTYPE
diff --git a/games/zdbsp/zdbsp.6 b/games/zdbsp/zdbsp.6
index 8ad88104dc..c701ce3c1d 100644
--- a/games/zdbsp/zdbsp.6
+++ b/games/zdbsp/zdbsp.6
@@ -1,4 +1,4 @@
-.TH ZDBSP "6" "March 2012" "SlackBuilds.org" "Games"
+.TH ZDBSP "6" "October 2021" "zdbsp 1.19" "SlackBuilds.org"
.SH NAME
ZDBSP \- nodes builder for Doom and related games
.SH SYNOPSIS
diff --git a/games/zdbsp/zdbsp.SlackBuild b/games/zdbsp/zdbsp.SlackBuild
index 5da4e5ee09..5295a57d6b 100644
--- a/games/zdbsp/zdbsp.SlackBuild
+++ b/games/zdbsp/zdbsp.SlackBuild
@@ -1,17 +1,21 @@
-#!/bin/sh
+#!/bin/bash
# Slackware build script for zdbsp
-# Written by B. Watson (yalhcru@gmail.com)
+# Written by B. Watson (urchlay@slackware.uk)
# Licensed under the WTFPL. See http://www.wtfpl.net/txt/copying/ for details.
+# 20211011 bkw: BUILD=3, slight man page update
# 20180213 bkw: move binary to /usr/games, BUILD=2
+cd $(dirname $0) ; CWD=$(pwd)
+
PRGNAM=zdbsp
VERSION=${VERSION:-1.19}
-BUILD=${BUILD:-2}
+BUILD=${BUILD:-3}
TAG=${TAG:-_SBo}
+PKGTYPE=${PKGTYPE:-tgz}
if [ -z "$ARCH" ]; then
case "$( uname -m )" in
@@ -21,7 +25,11 @@ if [ -z "$ARCH" ]; then
esac
fi
-CWD=$(pwd)
+if [ ! -z "${PRINT_PACKAGE_NAME}" ]; then
+ echo "$PRGNAM-$VERSION-$ARCH-$BUILD$TAG.$PKGTYPE"
+ exit 0
+fi
+
TMP=${TMP:-/tmp/SBo}
PKG=$TMP/package-$PRGNAM
OUTPUT=${OUTPUT:-/tmp}
@@ -50,11 +58,8 @@ mkdir -p $PRGNAM-$VERSION
cd $PRGNAM-$VERSION
unzip $CWD/$PRGNAM-$VERSION-src.zip
chown -R root:root .
-find -L . \
- \( -perm 777 -o -perm 775 -o -perm 750 -o -perm 711 -o -perm 555 -o -perm 511 \) \
- -exec chmod 755 {} \; -o \
- \( -perm 666 -o -perm 664 -o -perm 600 -o -perm 444 -o -perm 440 -o -perm 400 \) \
- -exec chmod 644 {} \;
+find -L . -perm /111 -a \! -perm 755 -a -exec chmod 755 {} \+ -o \
+ \! -perm /111 -a \! -perm 644 -a -exec chmod 644 {} \+
mkdir -p build
cd build
@@ -82,4 +87,4 @@ mkdir -p $PKG/install
cat $CWD/slack-desc > $PKG/install/slack-desc
cd $PKG
-/sbin/makepkg -l y -c n $OUTPUT/$PRGNAM-$VERSION-$ARCH-$BUILD$TAG.${PKGTYPE:-tgz}
+/sbin/makepkg -l y -c n $OUTPUT/$PRGNAM-$VERSION-$ARCH-$BUILD$TAG.$PKGTYPE
diff --git a/games/zdbsp/zdbsp.info b/games/zdbsp/zdbsp.info
index 9f6d1d9ac7..239d5cce3c 100644
--- a/games/zdbsp/zdbsp.info
+++ b/games/zdbsp/zdbsp.info
@@ -1,10 +1,10 @@
PRGNAM="zdbsp"
VERSION="1.19"
-HOMEPAGE="http://zdoom.org/"
-DOWNLOAD="http://zdoom.org/files/utils/zdbsp/zdbsp-1.19-src.zip"
+HOMEPAGE="https://zdoom.org/"
+DOWNLOAD="https://zdoom.org/files/utils/zdbsp/zdbsp-1.19-src.zip"
MD5SUM="d3540c1727744ce5d630e7781b921373"
DOWNLOAD_x86_64=""
MD5SUM_x86_64=""
REQUIRES=""
MAINTAINER="B. Watson"
-EMAIL="yalhcru@gmail.com"
+EMAIL="urchlay@slackware.uk"
diff --git a/games/zdoom/README b/games/zdoom/README
index 2e81f9b919..ac6ed62d60 100644
--- a/games/zdoom/README
+++ b/games/zdoom/README
@@ -1,9 +1,9 @@
zdoom (an enhanced port of the official DOOM source code)
-ZDoom is a family of enhanced ports of the Doom engine to modern operating
-systems. It runs on Windows, Linux, and OS X, and adds new features not
-found in the games as originally published by id Software. It supports
-Doom, Doom II, Heretic, Hexen, Strife, and more.
+ZDoom is a family of enhanced ports of the Doom engine to modern
+operating systems. It runs on Windows, Linux, and OS X, and adds
+new features not found in the games as originally published by id
+Software. It supports Doom, Doom II, Heretic, Hexen, Strife, and more.
zdoom is only a game engine. To actually play the game, you'll need the
game data (IWAD file) from one or more of the supported games. These
@@ -19,14 +19,14 @@ of these slackbuilds.org packages to get a playable game:
- hexen_demo_data
- chexquest3
-Optional compile time dependency: OpenAL, used for audio playback
-(as an alternative to fmodapi, which is always built in). It will be
-autodetected at build time. If you have OpenAL installed but want to
-build zdoom without it, set OPENAL=no in the script's environment. There
-have been reports that various mods work better with OpenAL, while others
+Optional compile time dependency: openal-soft, used for audio playback
+(as an alternative to fmodapi, which is always built in). It will
+be autodetected at build time. If you want to build zdoom without
+openal-soft, set OPENAL=no in the script's environment. There have
+been reports that various mods work better with OpenAL, while others
crash or misbehave; YMMV.
-Optional runtime dependencies: fluidsynth and fluid-soundfont, and/or
-TiMidity++ and eawpats (used for MIDI playback). MIDI playback is still
-possible when none of these are present, just select 'OPL Synth Emulation'
-from the Options -> Sound Options -> MIDI Device menu within the game.
+Optional runtime dependencies: fluid-soundfont, and/or TiMidity++ and
+eawpats (used for MIDI playback). MIDI playback is still possible when
+none of these are present, just select 'OPL Synth Emulation' from the
+Options -> Sound Options -> MIDI Device menu within the game.
diff --git a/games/zdoom/doinst.sh b/games/zdoom/doinst.sh
index 4e8ba7071d..3e5691a052 100644
--- a/games/zdoom/doinst.sh
+++ b/games/zdoom/doinst.sh
@@ -2,3 +2,8 @@ if [ -x /usr/bin/update-desktop-database ]; then
/usr/bin/update-desktop-database -q usr/share/applications >/dev/null 2>&1
fi
+if [ -e usr/share/icons/hicolor/icon-theme.cache ]; then
+ if [ -x /usr/bin/gtk-update-icon-cache ]; then
+ /usr/bin/gtk-update-icon-cache usr/share/icons/hicolor >/dev/null 2>&1
+ fi
+fi
diff --git a/games/zdoom/icons/128.png b/games/zdoom/icons/128.png
new file mode 100644
index 0000000000..89a571b8fe
--- /dev/null
+++ b/games/zdoom/icons/128.png
Binary files differ
diff --git a/games/zdoom/icons/16.png b/games/zdoom/icons/16.png
new file mode 100644
index 0000000000..3d99a2e834
--- /dev/null
+++ b/games/zdoom/icons/16.png
Binary files differ
diff --git a/games/zdoom/icons/32.png b/games/zdoom/icons/32.png
new file mode 100644
index 0000000000..36a50547aa
--- /dev/null
+++ b/games/zdoom/icons/32.png
Binary files differ
diff --git a/games/zdoom/icons/48.png b/games/zdoom/icons/48.png
new file mode 100644
index 0000000000..ec5e96ff50
--- /dev/null
+++ b/games/zdoom/icons/48.png
Binary files differ
diff --git a/games/zdoom/icons/64.png b/games/zdoom/icons/64.png
new file mode 100644
index 0000000000..e6e3434e45
--- /dev/null
+++ b/games/zdoom/icons/64.png
Binary files differ
diff --git a/games/zdoom/zdoom.SlackBuild b/games/zdoom/zdoom.SlackBuild
index 081aa483f5..b2ac55d48e 100644
--- a/games/zdoom/zdoom.SlackBuild
+++ b/games/zdoom/zdoom.SlackBuild
@@ -1,13 +1,18 @@
-#!/bin/sh
+#!/bin/bash
# Slackware build script for zdoom
# Originally written by Pablo Santamaria (email removed)
-# Modified and now maintained by B. Watson <yalhcru@gmail.com>. Original
+# Modified and now maintained by B. Watson <urchlay@slackware.uk>. Original
# version had no license, modified version released under the WTFPL,
# see http://www.wtfpl.net/txt/copying/ for details.
+# 20220318 bkw: fix 32-bit build (disable asm).
+# 20211012 bkw: BUILD=2
+# - Fix -current build.
+# - New-style icons.
+
# 20170207 bkw:
# - Take over maintenance, update for v2.8.1, BUILD=1. Upstream
# says zdoom development has halted, so 2.8.1 should be the last
@@ -37,10 +42,13 @@
# but please do so quietly, as though you also had been compiled without
# sound support :)
+cd $(dirname $0) ; CWD=$(pwd)
+
PRGNAM=zdoom
VERSION=${VERSION:-2.8.1}
-BUILD=${BUILD:-1}
+BUILD=${BUILD:-2}
TAG=${TAG:-_SBo}
+PKGTYPE=${PKGTYPE:-tgz}
if [ -z "$ARCH" ]; then
case "$( uname -m )" in
@@ -50,7 +58,11 @@ if [ -z "$ARCH" ]; then
esac
fi
-CWD=$(pwd)
+if [ ! -z "${PRINT_PACKAGE_NAME}" ]; then
+ echo "$PRGNAM-$VERSION-$ARCH-$BUILD$TAG.$PKGTYPE"
+ exit 0
+fi
+
TMP=${TMP:-/tmp/SBo}
PKG=$TMP/package-$PRGNAM
OUTPUT=${OUTPUT:-/tmp}
@@ -107,14 +119,8 @@ rm -rf $PRGNAM-$VERSION
tar xvf $CWD/$PRGNAM-$VERSION.tar.gz
cd $PRGNAM-$VERSION
chown -R root:root .
-
-# Slight template deviation: I used \+ rather than \; (same result, but maybe
-# 40x faster).
-find -L . \
- \( -perm 777 -o -perm 775 -o -perm 750 -o -perm 711 -o -perm 555 -o -perm 511 \) \
- -exec chmod 755 {} \+ -o \
- \( -perm 666 -o -perm 664 -o -perm 600 -o -perm 444 -o -perm 440 -o -perm 400 \) \
- -exec chmod 644 {} \+
+find -L . -perm /111 -a \! -perm 755 -a -exec chmod 755 {} \+ -o \
+ \! -perm /111 -a \! -perm 644 -a -exec chmod 644 {} \+
# gitinfo.h made like so:
## git clone https://github.com/rheit/zdoom.git
@@ -135,10 +141,17 @@ sed -i \
"s,setPluginPath(progdir),setPluginPath(\"/usr/lib$LIBDIRSUFFIX/$PRGNAM\")," \
src/sound/fmodsound.cpp
+# silly gcc version detection assumes the major version will always be
+# only one digit, this broke when we got gcc 10.
+sed -i '/REGEX *MATCH/s,\[3-9\],[1-9][0-9]*,g' game-music-emu/CMakeLists.txt
+
mkdir release
cd release
+# 20220318 bkw: the x86 asm code won't build on 15.0, so it's disabled.
+# The x86_64 build never used it.
cmake \
+ -DNO_ASM=ON \
-DCMAKE_CXX_FLAGS:STRING="$SLKCFLAGS" \
-DCMAKE_C_FLAGS:STRING="$SLKCFLAGS" \
-DCMAKE_BUILD_TYPE="Release" \
@@ -152,6 +165,7 @@ mkdir -p \
$PKG/usr/games \
$PKG/usr/share/applications \
$PKG/usr/share/pixmaps \
+ $PKG/usr/share/icons/hicolor/48x48/apps \
$PKG/usr/share/games/doom \
$PKG/usr/lib$LIBDIRSUFFIX/$PRGNAM
@@ -161,9 +175,17 @@ install -s -m755 $PRGNAM $PKG/usr/games
[ -e liboutput_sdl.so ] && \
install -s -m755 liboutput_sdl.so $PKG/usr/lib$LIBDIRSUFFIX/$PRGNAM
install -m644 $PRGNAM.pk3 $PKG/usr/share/games/doom/
-install -m644 $CWD/$PRGNAM.png $PKG/usr/share/pixmaps/
install -m644 $CWD/$PRGNAM.desktop $PKG/usr/share/applications/
+for i in $CWD/icons/*.png; do
+ px=$( basename $i | cut -d. -f1 )
+ size=${px}x${px}
+ dir=$PKG/usr/share/icons/hicolor/$size/apps
+ mkdir -p $dir
+ cat $i > $dir/$PRGNAM.png
+done
+ln -s ../icons/hicolor/48x48/apps/$PRGNAM.png $PKG/usr/share/pixmaps/$PRGNAM.png
+
cd ..
# Get rid of CRLF endings in the docs.
@@ -180,4 +202,4 @@ sed "s,@WITHOPENAL@,$WITHOPENAL,g" $CWD/slack-desc > $PKG/install/slack-desc
cat $CWD/doinst.sh > $PKG/install/doinst.sh
cd $PKG
-/sbin/makepkg -l y -c n $OUTPUT/$PRGNAM-$VERSION-$ARCH-$BUILD$TAG.${PKGTYPE:-tgz}
+/sbin/makepkg -l y -c n $OUTPUT/$PRGNAM-$VERSION-$ARCH-$BUILD$TAG.$PKGTYPE
diff --git a/games/zdoom/zdoom.desktop b/games/zdoom/zdoom.desktop
index 5e4a383a80..265fed75f8 100644
--- a/games/zdoom/zdoom.desktop
+++ b/games/zdoom/zdoom.desktop
@@ -3,6 +3,6 @@ Type=Application
Name=ZDoom
GenericName=Enhanced Doom Engine
Icon=zdoom
-Exec=zdoom %F
+Exec=/usr/games/zdoom %F
Terminal=false
Categories=Game;ActionGame;
diff --git a/games/zdoom/zdoom.info b/games/zdoom/zdoom.info
index 1b89857969..c604a2817e 100644
--- a/games/zdoom/zdoom.info
+++ b/games/zdoom/zdoom.info
@@ -5,6 +5,6 @@ DOWNLOAD="https://github.com/rheit/zdoom/archive/2.8.1/zdoom-2.8.1.tar.gz"
MD5SUM="614f547f3425b282d4e398ca90514f89"
DOWNLOAD_x86_64=""
MD5SUM_x86_64=""
-REQUIRES="SDL2 fmodapi"
+REQUIRES="fmodapi"
MAINTAINER="B. Watson"
-EMAIL="yalhcru@gmail.com"
+EMAIL="urchlay@slackware.uk"
diff --git a/games/zdoom/zdoom.png b/games/zdoom/zdoom.png
deleted file mode 100644
index 22f9f49f90..0000000000
--- a/games/zdoom/zdoom.png
+++ /dev/null
Binary files differ
diff --git a/games/zelda-roth-se/README b/games/zelda-roth-se/README
index a23147f7ff..ad881e12ff 100644
--- a/games/zelda-roth-se/README
+++ b/games/zelda-roth-se/README
@@ -1,7 +1,8 @@
-Zelda Return of the Hylian Solarus Edition is a remake of the original Zelda
-Return of the Hylian, a short and pleasant fangame from Vincent Jouillat. The
-original game was developed in C++ and was released in 2006.
+Zelda Return of the Hylian Solarus Edition is a remake of the original
+Zelda Return of the Hylian, a short and pleasant fangame from Vincent
+Jouillat. The original game was developed in C++ and was released
+in 2006.
-This new version was developed with the Solarus engine by Christopho, Mymy and
-Vincent Jouillat. While this is essentially the same game, a lot of details were
-improved thanks to the use of Solarus.
+This new version was developed with the Solarus engine by Christopho,
+Mymy and Vincent Jouillat. While this is essentially the same game,
+a lot of details were improved thanks to the use of Solarus.
diff --git a/games/zelda-roth-se/zelda-roth-se.SlackBuild b/games/zelda-roth-se/zelda-roth-se.SlackBuild
index 58624ae315..bb6b07189b 100644
--- a/games/zelda-roth-se/zelda-roth-se.SlackBuild
+++ b/games/zelda-roth-se/zelda-roth-se.SlackBuild
@@ -1,4 +1,4 @@
-#!/bin/sh
+#!/bin/bash
# Slackware build script for Zelda Return of the Hylian Solarus Edition
@@ -22,14 +22,24 @@
# OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF THIS SOFTWARE, EVEN IF
# ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
+cd $(dirname $0) ; CWD=$(pwd)
+
PRGNAM=zelda-roth-se
VERSION=${VERSION:-1.2.1}
BUILD=${BUILD:-1}
TAG=${TAG:-_SBo}
+PKGTYPE=${PKGTYPE:-tgz}
ARCH=noarch
-CWD=$(pwd)
+# If the variable PRINT_PACKAGE_NAME is set, then this script will report what
+# the name of the created package would be, and then exit. This information
+# could be useful to other scripts.
+if [ ! -z "${PRINT_PACKAGE_NAME}" ]; then
+ echo "$PRGNAM-$VERSION-$ARCH-$BUILD$TAG.$PKGTYPE"
+ exit 0
+fi
+
TMP=${TMP:-/tmp/SBo}
PKG=$TMP/package-$PRGNAM
OUTPUT=${OUTPUT:-/tmp}
@@ -69,4 +79,4 @@ cat $CWD/slack-desc > $PKG/install/slack-desc
cat $CWD/doinst.sh > $PKG/install/doinst.sh
cd $PKG
-/sbin/makepkg -l y -c n $OUTPUT/$PRGNAM-$VERSION-$ARCH-$BUILD$TAG.${PKGTYPE:-tgz}
+/sbin/makepkg -l y -c n $OUTPUT/$PRGNAM-$VERSION-$ARCH-$BUILD$TAG.$PKGTYPE
diff --git a/games/zelda-xd2-mercuris-chess/zelda-xd2-mercuris-chess.SlackBuild b/games/zelda-xd2-mercuris-chess/zelda-xd2-mercuris-chess.SlackBuild
index 12ce84d177..ece9f99059 100644
--- a/games/zelda-xd2-mercuris-chess/zelda-xd2-mercuris-chess.SlackBuild
+++ b/games/zelda-xd2-mercuris-chess/zelda-xd2-mercuris-chess.SlackBuild
@@ -1,4 +1,4 @@
-#!/bin/sh
+#!/bin/bash
# Slackware build script for The Legend Of Zelda XD2: Mercuris Chess
@@ -22,14 +22,24 @@
# OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF THIS SOFTWARE, EVEN IF
# ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
+cd $(dirname $0) ; CWD=$(pwd)
+
PRGNAM=zelda-xd2-mercuris-chess
VERSION=${VERSION:-1.1.1}
BUILD=${BUILD:-1}
TAG=${TAG:-_SBo}
+PKGTYPE=${PKGTYPE:-tgz}
ARCH=noarch
-CWD=$(pwd)
+# If the variable PRINT_PACKAGE_NAME is set, then this script will report what
+# the name of the created package would be, and then exit. This information
+# could be useful to other scripts.
+if [ ! -z "${PRINT_PACKAGE_NAME}" ]; then
+ echo "$PRGNAM-$VERSION-$ARCH-$BUILD$TAG.$PKGTYPE"
+ exit 0
+fi
+
TMP=${TMP:-/tmp/SBo}
PKG=$TMP/package-$PRGNAM
OUTPUT=${OUTPUT:-/tmp}
@@ -73,4 +83,4 @@ cat $CWD/slack-desc > $PKG/install/slack-desc
cat $CWD/doinst.sh > $PKG/install/doinst.sh
cd $PKG
-/sbin/makepkg -l y -c n $OUTPUT/$PRGNAM-$VERSION-$ARCH-$BUILD$TAG.${PKGTYPE:-tgz}
+/sbin/makepkg -l y -c n $OUTPUT/$PRGNAM-$VERSION-$ARCH-$BUILD$TAG.$PKGTYPE
diff --git a/games/zennode/README b/games/zennode/README
index 4cbc1c9b0a..32bf96e05d 100644
--- a/games/zennode/README
+++ b/games/zennode/README
@@ -1,4 +1,16 @@
zennode (node builder for Doom and related games)
-Note: the ZenNode "compare" utility is installed as /usr/bin/zn-compare,
-to avoid conflicting with /usr/bin/compare from the imagemagick package.
+ZenNode will read the level description from a .WAD file and create
+either a new BLOCKMAP resource, REJECT resource, and/or NODES, SEGS,
+SSECTOR resources. Levels in a .WAD may be specified on the command
+line, or, if none are specified, all of the maps in a .WAD will be
+rebuilt.
+
+ZenNode supports Doom, Doom II, Heretic, Hexen, and Strife.
+
+Notes:
+
+- ZenNode does NOT create GL nodes. Use glbsp or zdbsp for that.
+
+- The ZenNode compare utility is installed as /usr/games/zn-compare,
+ to avoid conflicting with /usr/bin/compare from ImageMagick.
diff --git a/games/zennode/slack-desc b/games/zennode/slack-desc
index fd7e8c0b5f..605fb5ebe2 100644
--- a/games/zennode/slack-desc
+++ b/games/zennode/slack-desc
@@ -6,14 +6,14 @@
# customary to leave one space after the ':' except on otherwise blank lines.
|-----handy-ruler------------------------------------------------------|
-zennode: zennode (node builder for Doom maps)
-zennode:
-zennode: Node builder for Doom maps.
-zennode:
-zennode:
-zennode:
-zennode:
+zennode: zennode (node builder for Doom and related games)
zennode:
+zennode: ZenNode will read the level description from a .WAD file and create
+zennode: either a new BLOCKMAP resource, REJECT resource, and/or NODES, SEGS,
+zennode: SSECTOR resources. Levels in a .WAD may be specified on the command
+zennode: line, or, if none are specified, all of the maps in a .WAD will be
+zennode: rebuilt.
zennode:
+zennode: ZenNode supports Doom, Doom II, Heretic, Hexen, and Strife.
zennode:
zennode:
diff --git a/games/zennode/zennode-tools.6 b/games/zennode/zennode-tools.6
new file mode 100644
index 0000000000..f8aa491558
--- /dev/null
+++ b/games/zennode/zennode-tools.6
@@ -0,0 +1,88 @@
+.\" Man page generated from reStructuredText.
+.
+.
+.nr rst2man-indent-level 0
+.
+.de1 rstReportMargin
+\\$1 \\n[an-margin]
+level \\n[rst2man-indent-level]
+level margin: \\n[rst2man-indent\\n[rst2man-indent-level]]
+-
+\\n[rst2man-indent0]
+\\n[rst2man-indent1]
+\\n[rst2man-indent2]
+..
+.de1 INDENT
+.\" .rstReportMargin pre:
+. RS \\$1
+. nr rst2man-indent\\n[rst2man-indent-level] \\n[an-margin]
+. nr rst2man-indent-level +1
+.\" .rstReportMargin post:
+..
+.de UNINDENT
+. RE
+.\" indent \\n[an-margin]
+.\" old: \\n[rst2man-indent\\n[rst2man-indent-level]]
+.nr rst2man-indent-level -1
+.\" new: \\n[rst2man-indent\\n[rst2man-indent-level]]
+.in \\n[rst2man-indent\\n[rst2man-indent-level]]u
+..
+.TH "ZENNODE-TOOLS" 6 "2021-10-11" "1.2.1" "SlackBuilds.org"
+.SH NAME
+zennode-tools \- get information on .wad files
+.\" RST source for zennode-tools(6) man page. Convert with:
+.
+.\" rst2man.py zennode-tools.rst > zennode-tools.6
+.
+.\" rst2man.py comes from the SBo development/docutils package.
+.
+.SH SYNOPSIS
+.nf
+bspdiff \fIfilename1\fP[\fI\&.wad\fP] \fIfilename2\fP[\fI\&.wad\fP] [\fIlevel\fP[\fI+level\fP]]
+bspinfo [\fI\-t\fP] \fIfilename\fP[\fI\&.wad\fP] [\fIlevel\fP[\fI+level\fP]]
+zn\-compare \fIfilename1\fP[\fI\&.wad\fP] \fIfilename2\fP[\fI\&.wad\fP] [\fIlevel\fP[\fI+level\fP]]
+.fi
+.sp
+.SH DESCRIPTION
+.sp
+This man page briefly documents the tools that ship with \fIZenNode\fP(6):
+\fIbspdiff\fP, \fIbspinfo\fP, and \fIzn\-compare\fP\&.
+.sp
+\fIbspdiff\fP compares the BSP trees of two .wad files and displays the
+point at which they differ. Since the BSP is essentially a binary
+tree, a single difference in a partition for a given group of SEGS
+will create a tree that is radically different for all points below
+that node.
+.sp
+\fIbspinfo\fP reports statistics that describe the BSP tree(s) of a
+\&.wad file. It can be used to give you a feel of how particular BSP
+builders are performing.
+.sp
+\fIzn\-compare\fP is a simple utility to compare two REJECT maps and
+display any differences between them. The command line syntax
+is similar to that of ZenNode except that two .wad files must be
+specified. After loading each .wad file, the list of levels in each
+file is compared and for each matching level, the REJECT maps are
+compared and the results displayed.
+.SH OPTIONS
+.INDENT 0.0
+.TP
+.B \-t
+display NODE tree (\fIbspinfo\fP only)
+.UNINDENT
+.SH COPYRIGHT
+.sp
+See the file /usr/doc/zennode\-1.2.1/COPYING for license information.
+.SH AUTHORS
+.sp
+\fIZenNode\fP was written by Marc Rousseau.
+.sp
+This man page was written for the SlackBuilds.org project
+by B. Watson, and is licensed under the WTFPL.
+.SH SEE ALSO
+.sp
+\fIzennode\fP(6)
+.sp
+The full documentation at /usr/doc/zennode\-1.2.1/index.html
+.\" Generated by docutils manpage writer.
+.
diff --git a/games/zennode/zennode-tools.rst b/games/zennode/zennode-tools.rst
new file mode 100644
index 0000000000..d29a23977b
--- /dev/null
+++ b/games/zennode/zennode-tools.rst
@@ -0,0 +1,74 @@
+.. RST source for zennode-tools(6) man page. Convert with:
+.. rst2man.py zennode-tools.rst > zennode-tools.6
+.. rst2man.py comes from the SBo development/docutils package.
+
+.. |version| replace:: 1.2.1
+.. |date| date::
+
+=============
+zennode-tools
+=============
+
+-----------------------------
+get information on .wad files
+-----------------------------
+
+:Manual section: 6
+:Manual group: SlackBuilds.org
+:Date: |date|
+:Version: |version|
+
+SYNOPSIS
+========
+
+| bspdiff *filename1*\[*.wad*] *filename2*\[*.wad*] [*level*\[*+level*]]
+| bspinfo [*-t*] *filename*\[*.wad*] [*level*\[*+level*]]
+| zn-compare *filename1*\[*.wad*] *filename2*\[*.wad*] [*level*\[*+level*]]
+
+DESCRIPTION
+===========
+
+This man page briefly documents the tools that ship with *ZenNode*\(6):
+*bspdiff*, *bspinfo*, and *zn-compare*.
+
+*bspdiff* compares the BSP trees of two .wad files and displays the
+point at which they differ. Since the BSP is essentially a binary
+tree, a single difference in a partition for a given group of SEGS
+will create a tree that is radically different for all points below
+that node.
+
+*bspinfo* reports statistics that describe the BSP tree(s) of a
+.wad file. It can be used to give you a feel of how particular BSP
+builders are performing.
+
+*zn-compare* is a simple utility to compare two REJECT maps and
+display any differences between them. The command line syntax
+is similar to that of ZenNode except that two .wad files must be
+specified. After loading each .wad file, the list of levels in each
+file is compared and for each matching level, the REJECT maps are
+compared and the results displayed.
+
+OPTIONS
+=======
+
+-t display NODE tree (*bspinfo* only)
+
+COPYRIGHT
+=========
+
+See the file /usr/doc/zennode-|version|/COPYING for license information.
+
+AUTHORS
+=======
+
+*ZenNode* was written by Marc Rousseau.
+
+This man page was written for the SlackBuilds.org project
+by B. Watson, and is licensed under the WTFPL.
+
+SEE ALSO
+========
+
+*zennode*\(6)
+
+The full documentation at /usr/doc/zennode-|version|/index.html
diff --git a/games/zennode/zennode.6 b/games/zennode/zennode.6
index 696d1cfbd6..bfcd68d6b2 100644
--- a/games/zennode/zennode.6
+++ b/games/zennode/zennode.6
@@ -1,4 +1,4 @@
-.TH zennode "6" "March 2012" "SlackBuilds.org" "Games"
+.TH zennode "6" "October 2021" "ZenNode 1.2.1" "SlackBuilds.org"
.SH NAME
zennode \- build nodes for Doom and related games
.SH SYNOPSIS
@@ -62,7 +62,7 @@ Doom, Doom II, Ultimate Doom, Heretic, Hexen, Strife
.SH "SEE ALSO"
The main documentation at
.nh
-.B @DOCDIR@
+.B @DOCDIR@index.html
.hy
.br
The
diff --git a/games/zennode/zennode.SlackBuild b/games/zennode/zennode.SlackBuild
index 7935d957e4..64b75d0e16 100644
--- a/games/zennode/zennode.SlackBuild
+++ b/games/zennode/zennode.SlackBuild
@@ -1,17 +1,24 @@
-#!/bin/sh
+#!/bin/bash
# Slackware build script for zennode
-# Written by B. Watson (yalhcru@gmail.com)
+# Written by B. Watson (urchlay@slackware.uk)
# Licensed under the WTFPL. See http://www.wtfpl.net/txt/copying/ for details.
+# 20211011 bkw: BUILD=3
+# - flesh out slack-desc with some real information.
+# - add man pages for the other tools.
+
# 20180215 bkw: BUILD=2, move binary to /usr/games
+cd $(dirname $0) ; CWD=$(pwd)
+
PRGNAM=zennode
VERSION=${VERSION:-1.2.1}
BUILD=${BUILD:-2}
TAG=${TAG:-_SBo}
+PKGTYPE=${PKGTYPE:-tgz}
if [ -z "$ARCH" ]; then
case "$( uname -m )" in
@@ -21,7 +28,11 @@ if [ -z "$ARCH" ]; then
esac
fi
-CWD=$(pwd)
+if [ ! -z "${PRINT_PACKAGE_NAME}" ]; then
+ echo "$PRGNAM-$VERSION-$ARCH-$BUILD$TAG.$PKGTYPE"
+ exit 0
+fi
+
TMP=${TMP:-/tmp/SBo}
PKG=$TMP/package-$PRGNAM
OUTPUT=${OUTPUT:-/tmp}
@@ -49,15 +60,16 @@ rm -rf $PKG
mkdir -p $TMP $PKG $OUTPUT
cd $TMP
rm -rf $ZIPNAME-$VERSION
-unzip $CWD/$PRGNAM-$VERSION.zip
+
+# 20211011 bkw: the -x stuff skips extracting the prebuilt binaries
+# and saves ~700KB in /tmp.
+unzip $CWD/$PRGNAM-$VERSION.zip -x '*/linux*/*' '*/win32/*'
cd $ZIPNAME-$VERSION
unzip $PRGNAM-src.zip
chown -R root:root .
-find -L . \
- \( -perm 777 -o -perm 775 -o -perm 750 -o -perm 711 -o -perm 555 -o -perm 511 \) \
- -exec chmod 755 {} \; -o \
- \( -perm 666 -o -perm 664 -o -perm 600 -o -perm 444 -o -perm 440 -o -perm 400 \) \
- -exec chmod 644 {} \;
+
+# 20211011 bkw: permissions suck, do not revert to template.
+find . -type d -exec chmod 755 {} + -o -type f -exec chmod 644 {} +
# Don't install "compare" as /usr/bin/compare, it conflicts with imagemagick.
# This patch just adds a note to compare.html explaining the situation.
@@ -74,21 +86,27 @@ cd src/$ZIPNAME
ln -s $PRGNAM $PKG/usr/games/$ZIPNAME
cd -
-# man page written for this SlackBuild
+# Man pages written for this SlackBuild. The main zennode.6 was written
+# in raw troff, because I knew no better way to do it back then. The
+# tools man page is generated from zennode-tools.rst, q.v.
+PKGMAN6=$PKG/usr/man/man6
mkdir -p $PKG/usr/man/man6
sed "s,@DOCDIR@,/usr/doc/$PRGNAM-$VERSION/," < $CWD/$PRGNAM.6 \
- | gzip -c > $PKG/usr/man/man6/$PRGNAM.6.gz
+ | gzip -c > $PKGMAN6/$PRGNAM.6.gz
+ln -s $PRGNAM.6.gz $PKGMAN6/$ZIPNAME.6.gz
-# install docs with "install -m0644" rather than "cp -a" because upstream's
-# permissions aren't what we want.
+gzip -9c < $CWD/zennode-tools.6 > $PKGMAN6/zennode-tools.6.gz
+for i in bspdiff bspinfo zn-compare; do
+ ln -s zennode-tools.6.gz $PKGMAN6/$i.6.gz
+done
mkdir -p $PKG/usr/doc/$PRGNAM-$VERSION/samples
-install -m0644 doc/* src/COPYING $PKG/usr/doc/$PRGNAM-$VERSION
-install -m0644 Samples/* $PKG/usr/doc/$PRGNAM-$VERSION/samples
+cp -a doc/* src/COPYING $PKG/usr/doc/$PRGNAM-$VERSION
+cp -a Samples/* $PKG/usr/doc/$PRGNAM-$VERSION/samples
cat $CWD/$PRGNAM.SlackBuild > $PKG/usr/doc/$PRGNAM-$VERSION/$PRGNAM.SlackBuild
mkdir -p $PKG/install
cat $CWD/slack-desc > $PKG/install/slack-desc
cd $PKG
-/sbin/makepkg -l y -c n $OUTPUT/$PRGNAM-$VERSION-$ARCH-$BUILD$TAG.${PKGTYPE:-tgz}
+/sbin/makepkg -l y -c n $OUTPUT/$PRGNAM-$VERSION-$ARCH-$BUILD$TAG.$PKGTYPE
diff --git a/games/zennode/zennode.info b/games/zennode/zennode.info
index 7d5015334f..75c01a1b85 100644
--- a/games/zennode/zennode.info
+++ b/games/zennode/zennode.info
@@ -1,10 +1,10 @@
PRGNAM="zennode"
VERSION="1.2.1"
-HOMEPAGE="http://mrousseau.org/programs/ZenNode/"
-DOWNLOAD="http://mrousseau.org/programs/ZenNode/archives/zennode-1.2.1.zip"
+HOMEPAGE="https://mrousseau.org/programs/ZenNode/"
+DOWNLOAD="https://mrousseau.org/programs/ZenNode/archives/zennode-1.2.1.zip"
MD5SUM="36d5082b48ef1e4f638a38ba1034d058"
DOWNLOAD_x86_64=""
MD5SUM_x86_64=""
REQUIRES=""
MAINTAINER="B. Watson"
-EMAIL="yalhcru@gmail.com"
+EMAIL="urchlay@slackware.uk"
diff --git a/games/znake/znake.SlackBuild b/games/znake/znake.SlackBuild
index 674a026ce8..06c8cfd0c8 100644
--- a/games/znake/znake.SlackBuild
+++ b/games/znake/znake.SlackBuild
@@ -1,4 +1,4 @@
-#!/bin/sh
+#!/bin/bash
# Slackware build script for znake
@@ -22,10 +22,18 @@
# OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF THIS SOFTWARE, EVEN IF
# ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
+# 20220221 bkw: Modified by SlackBuilds.org, BUILD=2:
+# - fix build on 15.0.
+# - actually use SLKCFLAGS.
+# - binary in /usr/games.
+
+cd $(dirname $0) ; CWD=$(pwd)
+
PRGNAM=znake
VERSION=${VERSION:-1.18}
BUILD=${BUILD:-1}
TAG=${TAG:-_SBo}
+PKGTYPE=${PKGTYPE:-tgz}
if [ -z "$ARCH" ]; then
case "$( uname -m )" in
@@ -35,7 +43,11 @@ if [ -z "$ARCH" ]; then
esac
fi
-CWD=$(pwd)
+if [ ! -z "${PRINT_PACKAGE_NAME}" ]; then
+ echo "$PRGNAM-$VERSION-$ARCH-$BUILD$TAG.$PKGTYPE"
+ exit 0
+fi
+
TMP=${TMP:-/tmp/SBo}
PKG=$TMP/package-$PRGNAM
OUTPUT=${OUTPUT:-/tmp}
@@ -65,17 +77,17 @@ cd $PRGNAM-$VERSION
chown -R root:root .
find -L . \
\( -perm 777 -o -perm 775 -o -perm 750 -o -perm 711 -o -perm 555 \
- -o -perm 511 \) -exec chmod 755 {} \; -o \
+ -o -perm 511 \) -exec chmod 755 {} \+ -o \
\( -perm 666 -o -perm 664 -o -perm 640 -o -perm 600 -o -perm 444 \
- -o -perm 440 -o -perm 400 \) -exec chmod 644 {} \;
+ -o -perm 440 -o -perm 400 \) -exec chmod 644 {} \+
-mkdir -p $PKG/usr/bin
-sed -i "s/usr\/local/usr/" src/Makefile
+mkdir -p $PKG/usr/games
+sed -i -e "s/usr\/local/usr/" \
+ -e "s,-Wall,$SLKCFLAGS -fcommon," \
+ src/Makefile
make
-make install PREFIX=$PKG/usr/bin/
-
-find $PKG -print0 | xargs -0 file | grep -e "executable" -e "shared object" | grep ELF \
- | cut -f 1 -d : | xargs strip --strip-unneeded 2> /dev/null || true
+make install PREFIX=$PKG/usr/games/
+strip $PKG/usr/games/$PRGNAM
mkdir -p $PKG/usr/doc/$PRGNAM-$VERSION
cp -a AUTHOR COPYING ChangeLog $PKG/usr/doc/$PRGNAM-$VERSION
@@ -86,4 +98,4 @@ cat $CWD/slack-desc > $PKG/install/slack-desc
cat $CWD/doinst.sh > $PKG/install/doinst.sh
cd $PKG
-/sbin/makepkg -l y -c n $OUTPUT/$PRGNAM-$VERSION-$ARCH-$BUILD$TAG.${PKGTYPE:-tgz}
+/sbin/makepkg -l y -c n $OUTPUT/$PRGNAM-$VERSION-$ARCH-$BUILD$TAG.$PKGTYPE
diff --git a/games/zod-engine/zod-engine.SlackBuild b/games/zod-engine/zod-engine.SlackBuild
index 5c12798eab..a59c3ed47c 100644
--- a/games/zod-engine/zod-engine.SlackBuild
+++ b/games/zod-engine/zod-engine.SlackBuild
@@ -1,8 +1,8 @@
-#!/bin/sh
+#!/bin/bash
# Slackware build script for zod-engine
-# Copyright 2014-2016 Dimitris Zlatanidis Orestiada, Greece
+# Copyright 2014-2023 Dimitris Zlatanidis Orestiada, Greece
# All rights reserved.
#
# Redistribution and use of this script, with or without modification, is
@@ -22,10 +22,13 @@
# OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF THIS SOFTWARE, EVEN IF
# ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
+cd $(dirname $0) ; CWD=$(pwd)
+
PRGNAM=zod-engine
VERSION=${VERSION:-2011.09.06}
-BUILD=${BUILD:-1}
+BUILD=${BUILD:-2}
TAG=${TAG:-_SBo}
+PKGTYPE=${PKGTYPE:-tgz}
SRCVER=$(echo $VERSION | tr . -)
SRCNAM=zod_linux
@@ -39,7 +42,14 @@ if [ -z "$ARCH" ]; then
esac
fi
-CWD=$(pwd)
+# If the variable PRINT_PACKAGE_NAME is set, then this script will report what
+# the name of the created package would be, and then exit. This information
+# could be useful to other scripts.
+if [ ! -z "${PRINT_PACKAGE_NAME}" ]; then
+ echo "$PRGNAM-$VERSION-$ARCH-$BUILD$TAG.$PKGTYPE"
+ exit 0
+fi
+
TMP=${TMP:-/tmp/SBo}
PKG=$TMP/package-$PRGNAM
OUTPUT=${OUTPUT:-/tmp}
@@ -73,6 +83,9 @@ find -L . \
\( -perm 666 -o -perm 664 -o -perm 640 -o -perm 600 -o -perm 444 \
-o -perm 440 -o -perm 400 \) -exec chmod 644 {} \;
+# Patch to work on -current as well. Thanks to Nazim Joomun.
+sed -i 's/#include <dirent.h>/#include <dirent.h>\n#include <ctime>/' zod_src/common.cpp
+
make -C zod_src/
make -C zod_src/ map_editor
make -C zod_launcher_src/
@@ -110,4 +123,4 @@ cat $CWD/slack-desc > $PKG/install/slack-desc
cat $CWD/doinst.sh > $PKG/install/doinst.sh
cd $PKG
-/sbin/makepkg -l y -c n $OUTPUT/$PRGNAM-$VERSION-$ARCH-$BUILD$TAG.${PKGTYPE:-tgz}
+/sbin/makepkg -l y -c n $OUTPUT/$PRGNAM-$VERSION-$ARCH-$BUILD$TAG.$PKGTYPE
diff --git a/games/zod-engine/zod-engine.info b/games/zod-engine/zod-engine.info
index de0ae06fb2..09b5f81c4c 100644
--- a/games/zod-engine/zod-engine.info
+++ b/games/zod-engine/zod-engine.info
@@ -7,4 +7,4 @@ DOWNLOAD_x86_64=""
MD5SUM_x86_64=""
REQUIRES="wxPython"
MAINTAINER="Dimitris Zlatanidis"
-EMAIL="d.zlatanidis@gmail.com"
+EMAIL="dslackw@gmail.com"
diff --git a/games/zoom/README b/games/zoom/README
index d9a7e6107b..2004450f54 100644
--- a/games/zoom/README
+++ b/games/zoom/README
@@ -1,7 +1,15 @@
zoom (play interactive fiction games)
-Zoom is a player for Z-Code, TADS and HUGO stories or games. These are
-usually text adventures ('interactive fiction'), and were first created
-by Infocom with the Zork series of games. Throughout the 80's, Infocom
-released many interactive fiction stories before their ambitions to
-enter the database market finally brought them low.
+Zoom is a player for Z-Code stories or games. These are usually text
+adventures ('interactive fiction'), and were first created by Infocom
+with the Zork series of games. Throughout the '80s, Infocom released
+many interactive fiction stories before their ambitions to enter the
+database market finally brought them low.
+
+There is also a selection of freeware Z-Code games here:
+
+https://www.ifarchive.org/if-archive/games/zcode/
+
+Note: This is not video conferencing software! For that, you want
+network/zoom-linux. It's also not a magnifier for X. For that, you
+want accessibility/xzoom.
diff --git a/games/zoom/doinst.sh b/games/zoom/doinst.sh
index 5318469e28..860ac30217 100644
--- a/games/zoom/doinst.sh
+++ b/games/zoom/doinst.sh
@@ -1,17 +1,14 @@
config() {
NEW="$1"
OLD="$(dirname $NEW)/$(basename $NEW .new)"
- # If there's no config file by that name, mv it over:
if [ ! -r $OLD ]; then
mv $NEW $OLD
elif [ "$(cat $OLD | md5sum)" = "$(cat $NEW | md5sum)" ]; then
- # toss the redundant copy
rm $NEW
fi
- # Otherwise, we leave the .new copy for the admin to consider...
}
-config usr/share/zoom/zoomrc.new
+config etc/zoom/zoomrc.new
if [ -x /usr/bin/update-desktop-database ]; then
/usr/bin/update-desktop-database -q usr/share/applications >/dev/null 2>&1
diff --git a/games/zoom/zoom.png b/games/zoom/icons/128.png
index bb6d3d1364..bb6d3d1364 100644
--- a/games/zoom/zoom.png
+++ b/games/zoom/icons/128.png
Binary files differ
diff --git a/games/zoom/icons/16.png b/games/zoom/icons/16.png
new file mode 100644
index 0000000000..8c7c4e8842
--- /dev/null
+++ b/games/zoom/icons/16.png
Binary files differ
diff --git a/games/zoom/icons/256.png b/games/zoom/icons/256.png
new file mode 100644
index 0000000000..27f166e2ee
--- /dev/null
+++ b/games/zoom/icons/256.png
Binary files differ
diff --git a/games/zoom/icons/32.png b/games/zoom/icons/32.png
new file mode 100644
index 0000000000..20aad04799
--- /dev/null
+++ b/games/zoom/icons/32.png
Binary files differ
diff --git a/games/zoom/icons/48.png b/games/zoom/icons/48.png
new file mode 100644
index 0000000000..7924b1d325
--- /dev/null
+++ b/games/zoom/icons/48.png
Binary files differ
diff --git a/games/zoom/icons/64.png b/games/zoom/icons/64.png
new file mode 100644
index 0000000000..8e79c22c9f
--- /dev/null
+++ b/games/zoom/icons/64.png
Binary files differ
diff --git a/games/zoom/no_inline.diff b/games/zoom/no_inline.diff
deleted file mode 100644
index d7ff771e81..0000000000
--- a/games/zoom/no_inline.diff
+++ /dev/null
@@ -1,120 +0,0 @@
-diff -Naur zoom-1.1.5/src/interp.c zoom-1.1.5.patched/src/interp.c
---- zoom-1.1.5/src/interp.c 2011-11-05 07:40:53.000000000 -0400
-+++ zoom-1.1.5.patched/src/interp.c 2017-06-21 03:26:42.543594700 -0400
-@@ -101,7 +101,7 @@
- } \
- }
-
--static inline void push(ZStack* stack, const ZWord word)
-+static void push(ZStack* stack, const ZWord word)
- {
- *(stack->stack_top++) = word;
- stack->stack_size--;
-@@ -131,7 +131,7 @@
- #endif
- }
-
--inline ZWord pop(ZStack* stack)
-+ZWord pop(ZStack* stack)
- {
- stack->stack_size++;
-
-@@ -159,7 +159,7 @@
- return *(--stack->stack_top);
- }
-
--inline ZWord top(ZStack* stack)
-+ZWord top(ZStack* stack)
- {
- if (stack->current_frame)
- {
-@@ -232,7 +232,7 @@
- return newframe;
- }
-
--inline void store(ZStack* stack, int var, ZWord value)
-+void store(ZStack* stack, int var, ZWord value)
- {
- #ifdef DEBUG
- printf_debug("Storing %i in Variable #%x\n", value, var);
-@@ -253,7 +253,7 @@
- }
- }
-
--inline void store_nopush(ZStack* stack, int var, ZWord value)
-+void store_nopush(ZStack* stack, int var, ZWord value)
- {
- #ifdef DEBUG
- printf_debug("Storing %i in Variable #%x\n", value, var);
-@@ -313,7 +313,7 @@
- int isdefault;
- };
-
--static inline struct prop* get_object_prop_3(ZUWord object, ZWord property)
-+static struct prop* get_object_prop_3(ZUWord object, ZWord property)
- {
- ZByte* obj;
- ZByte* prop;
-@@ -364,7 +364,7 @@
- int header;
- };
-
--static inline struct propinfo* get_object_propinfo_4(ZByte* prop)
-+static struct propinfo* get_object_propinfo_4(ZByte* prop)
- {
- static struct propinfo pinfo;
-
-@@ -387,7 +387,7 @@
- return &pinfo;
- }
-
--static inline struct prop* get_object_prop_4(ZUWord object, ZWord property)
-+static struct prop* get_object_prop_4(ZUWord object, ZWord property)
- {
- ZByte* obj;
- ZByte* prop;
-@@ -539,7 +539,7 @@
- }
- #endif
-
--inline static int true_colour(int col)
-+static int true_colour(int col)
- {
- switch (col)
- {
-@@ -575,7 +575,7 @@
- }
- }
-
--inline static int convert_colour(int col)
-+static int convert_colour(int col)
- {
- switch (col)
- {
-@@ -1473,7 +1473,7 @@
- return -1;
- }
-
--static inline void zcode_setup_window(int window)
-+static void zcode_setup_window(int window)
- {
- v6_set_window(window);
- v6_define_window(window,
-@@ -1497,7 +1497,7 @@
- #endif
- }
-
--static inline int zcode_v6_push_stack(ZStack* stack,
-+static int zcode_v6_push_stack(ZStack* stack,
- ZUWord stk,
- ZUWord value)
- {
-@@ -1528,7 +1528,7 @@
- return 1;
- }
-
--static inline int v6_window(int win)
-+static int v6_window(int win)
- {
- if (win > 7)
- zmachine_fatal("No such window: %i", win);
diff --git a/games/zoom/patches/acinclude.patch b/games/zoom/patches/acinclude.patch
new file mode 100644
index 0000000000..f605e40ac1
--- /dev/null
+++ b/games/zoom/patches/acinclude.patch
@@ -0,0 +1,9 @@
+Description: add the included m4 files
+Author: Stephen Kitt <skitt@debian.org>
+
+--- /dev/null
++++ b/acinclude.m4
+@@ -0,0 +1,3 @@
++m4_include([m4/carbon.m4])
++m4_include([m4/display.m4])
++m4_include([m4/util.m4])
diff --git a/games/zoom/patches/avoid-v6-set-colours-crash.patch b/games/zoom/patches/avoid-v6-set-colours-crash.patch
new file mode 100644
index 0000000000..75215cc706
--- /dev/null
+++ b/games/zoom/patches/avoid-v6-set-colours-crash.patch
@@ -0,0 +1,18 @@
+Description: Avoid crashing with invalid coordinates
+Author: Alexandre Detiste <alexandre.detiste@gmail.com>
+Bug-Debian: https://bugs.debian.org/813674
+
+--- a/src/v6display.c
++++ b/src/v6display.c
+@@ -498,9 +498,9 @@
+ fg = ACTWIN.fore;
+ if (bg == -2)
+ bg = ACTWIN.back;
+- if (fg == -1)
++ if (fg == -1 || ACTWIN.curx < 0 || ACTWIN.cury < 0)
+ fg = DEFAULT_FORE;
+- if (bg == -1)
++ if (bg == -1 || ACTWIN.curx < 0 || ACTWIN.cury < 0)
+ bg = DEFAULT_BACK;
+
+ if (bg == -3)
diff --git a/games/zoom/config_xft.diff b/games/zoom/patches/config_xft.diff
index 8b1d7100e9..8b1d7100e9 100644
--- a/games/zoom/config_xft.diff
+++ b/games/zoom/patches/config_xft.diff
diff --git a/games/zoom/patches/enable-antialiasing.patch b/games/zoom/patches/enable-antialiasing.patch
new file mode 100644
index 0000000000..f75c600604
--- /dev/null
+++ b/games/zoom/patches/enable-antialiasing.patch
@@ -0,0 +1,15 @@
+Description: Enable anti-aliasing by default
+Author: Stephen Kitt <skitt@debian.org>
+Bug-Debian: https://bugs.debian.org/813715
+
+--- a/src/zoomrc
++++ b/src/zoomrc
+@@ -25,7 +25,7 @@
+ font 9 "font3" symbolic
+
+ size 80,30
+- antialias no
++ antialias yes
+
+ colours (0,0,0), (255,0,0), (0,255,0), (255,255,0), (0,0,255), (255,0,255),
+ (0,255,255), (255,255,204),
diff --git a/games/zoom/remove_rice.diff b/games/zoom/patches/remove_rice.diff
index 1a9e3b7f2f..1a9e3b7f2f 100644
--- a/games/zoom/remove_rice.diff
+++ b/games/zoom/patches/remove_rice.diff
diff --git a/games/zoom/patches/restore-return.patch b/games/zoom/patches/restore-return.patch
new file mode 100644
index 0000000000..9412980e91
--- /dev/null
+++ b/games/zoom/patches/restore-return.patch
@@ -0,0 +1,33 @@
+commit 5ef19e08bbeff74096a1944ec8ba591cdab8cc55
+Author: Andrew Hunter <andrew@logicalshift.co.uk>
+Date: Sun Nov 13 21:20:23 2011 +0000
+
+ Restored a return statement that got deleted way back in changeset 1cd73ed without anybody (well, me) noticing.
+
+ The effect of this missing return statement was to make aread callbacks that return true continue as if they had returned false and randomly crash after they try to write to the (now freed) buffer.
+
+ Amazingly, this hasn't been reported up until now. I suspect that there are few or no cases where aread callbacks return a value other than zero.
+
+ Also added a paranoid buffer check, which is probably unnecessary but looks like good practice in any case.
+
+diff --git a/src/interp.c b/src/interp.c
+index 60b3e13..a5fa8fe 100644
+--- a/src/interp.c
++++ b/src/interp.c
+@@ -1057,6 +1057,7 @@ static void zcode_op_aread_5678(ZDWord* pc,
+ {
+ mem[1] = 0;
+ free(buf);
++ return;
+ }
+ }
+
+@@ -1151,7 +1152,7 @@ static void zcode_op_aread_5678(ZDWord* pc,
+ int x;
+
+ mem[1] = 0;
+- for (x=0; buf[x] != 0; x++)
++ for (x=0; buf[x] != 0 && x < bufLen; x++)
+ {
+ mem[1]++;
+ buf[x] = unicode_to_lower(buf[x]);
diff --git a/games/zoom/patches/series b/games/zoom/patches/series
new file mode 100644
index 0000000000..636b59b5a3
--- /dev/null
+++ b/games/zoom/patches/series
@@ -0,0 +1,8 @@
+config_xft.diff
+remove_rice.diff
+avoid-v6-set-colours-crash.patch
+acinclude.patch
+restore-return.patch
+enable-antialiasing.patch
+static-inline.patch
+zoomrc_in_etc.diff
diff --git a/games/zoom/patches/static-inline.patch b/games/zoom/patches/static-inline.patch
new file mode 100644
index 0000000000..4e5190ef4c
--- /dev/null
+++ b/games/zoom/patches/static-inline.patch
@@ -0,0 +1,45 @@
+commit 6b0ad57dd2c125c9126e9b7913560ad25709a36f
+Author: Andrew Hunter <andrew@logicalshift.co.uk>
+Date: Sat Mar 3 16:31:35 2012 +0000
+
+ Inline functions need to be marked as static in order to compile with LLVM
+
+diff --git a/src/interp.c b/src/interp.c
+index a5fa8fe..3d446fa 100644
+--- a/src/interp.c
++++ b/src/interp.c
+@@ -232,7 +232,7 @@ ZFrame* call_routine(ZDWord* pc, ZStack* stack, ZDWord start)
+ return newframe;
+ }
+
+-inline void store(ZStack* stack, int var, ZWord value)
++static inline void store(ZStack* stack, int var, ZWord value)
+ {
+ #ifdef DEBUG
+ printf_debug("Storing %i in Variable #%x\n", value, var);
+@@ -253,7 +253,7 @@ inline void store(ZStack* stack, int var, ZWord value)
+ }
+ }
+
+-inline void store_nopush(ZStack* stack, int var, ZWord value)
++static inline void store_nopush(ZStack* stack, int var, ZWord value)
+ {
+ #ifdef DEBUG
+ printf_debug("Storing %i in Variable #%x\n", value, var);
+diff --git a/src/tokenise.c b/src/tokenise.c
+index 5925169..fb442d0 100644
+--- a/src/tokenise.c
++++ b/src/tokenise.c
+@@ -154,9 +154,9 @@ ZDictionary* dictionary_cache(const ZUWord dict_pos)
+
+ int cache = 1;
+
+-inline ZUWord lookup_word(unsigned int* word,
+- int wordlen,
+- ZUWord dct)
++static inline ZUWord lookup_word(unsigned int* word,
++ int wordlen,
++ ZUWord dct)
+ {
+ ZByte packed[12];
+ int zscii_len;
diff --git a/games/zoom/patches/zoomrc_in_etc.diff b/games/zoom/patches/zoomrc_in_etc.diff
new file mode 100644
index 0000000000..760fb294a3
--- /dev/null
+++ b/games/zoom/patches/zoomrc_in_etc.diff
@@ -0,0 +1,12 @@
+diff -Naur zoom-1.1.5/src/rc.c zoom-1.1.5.patched/src/rc.c
+--- zoom-1.1.5/src/rc.c 2011-11-05 07:40:53.000000000 -0400
++++ zoom-1.1.5.patched/src/rc.c 2021-10-11 19:43:39.814078341 -0400
+@@ -41,7 +41,7 @@
+ rc_game* rc_defgame = NULL;
+
+ #ifdef DATADIR
+-# define ZOOMRC DATADIR "/zoomrc"
++# define ZOOMRC "/etc/zoom/zoomrc"
+ # define GAMEDIR DATADIR "/games"
+ #else
+ # define ZOOMRC "zoomrc"
diff --git a/games/zoom/slack-desc b/games/zoom/slack-desc
index 012f1d6fec..a675e847f0 100644
--- a/games/zoom/slack-desc
+++ b/games/zoom/slack-desc
@@ -8,10 +8,10 @@
|-----handy-ruler------------------------------------------------------|
zoom: zoom (play interactive fiction games)
zoom:
-zoom: Zoom is a player for Z-Code, TADS and HUGO stories or games. These
-zoom: are usually text adventures ('interactive fiction'), and were first
-zoom: created by Infocom with the Zork series of games. Throughout the
-zoom: 80's, Infocom released many interactive fiction stories before their
+zoom: Zoom is a player for Z-Code stories or games. These are usually
+zoom: text adventures ('interactive fiction'), and were first created
+zoom: by Infocom with the Zork series of games. Throughout the '80s,
+zoom: Infocom released many interactive fiction stories before their
zoom: ambitions to enter the database market finally brought them low.
zoom:
zoom:
diff --git a/games/zoom/zoom.1 b/games/zoom/zoom.1
index 5a6a787924..941f7a78bb 100644
--- a/games/zoom/zoom.1
+++ b/games/zoom/zoom.1
@@ -1,58 +1,80 @@
-.TH ZOOM "1" "November 2012" "SlackBuilds.org" "User Commands"
+.TH ZOOM "1" "October 2021" "SlackBuilds.org" "User Commands"
.SH NAME
-zoom \- interpreter for interactive fiction games
+zoom \- interpreter for Z\-Code interactive fiction games
.SH SYNOPSIS
.B zoom
-[\fIOPTION\fR...] [\fIstory-file\fR] [\fIsave-file\fR]
+[\fIOPTION\fR ...] [\fIstory-file\fR] [\fIsave-file\fR]
.SH DESCRIPTION
Interactive Fiction is a fancy name for 'text adventures', thought up by
a company called called 'Infocom' circa 1979.
.PP
-Zoom is an advanced player for interactive fiction stories written in four major formats:
-.SS Z\-Code
-The format used by Infocom in the 1980s for games including Zork and Trinity, as well as new games written using the Inform language.
-.SS Glulx
-A modern language intended to be the successor to Z\-Code.
-.SS TADS
-A modern language developed by Mike Roberts.
-.SS HUGO
-A modern language developed by The General Coffee Compnay.
+Zoom is an advanced player for interactive fiction stories written Z\-Code format.
+This is the format used by Infocom in the 1980s for games including Zork and Trinity, as well as new games written using the Inform language.
+.B zoom
+supports all versions of the Z-Machine, including version 6 with graphical resources (converted to Blorb format).
.SH OPTIONS
.TP
\fB\-D\fR, \fB\-\-debugmode\fR
-Enable source\-level debugger (requires gameinfo.dbg)
+Enable source\-level debugger (requires gameinfo.dbg).
.TP
\fB\-w\fR, \fB\-\-warnings\fR
Display interpreter warnings
.TP
\fB\-W\fR, \fB\-\-fatal\fR
-Warnings are fatal
+Make warnings fatal.
.TP
\fB\-?\fR, \fB\-\-help\fR
-Give this help list
+Give a list of command\-line options.
.TP
\fB\-\-usage\fR
-Give a short usage message
+Give a short usage message.
.TP
\fB\-V\fR, \fB\-\-version\fR
-Print program version
+Print program version.
.SH FILES
.TP
\fB/usr/share/zoom/games/\fR
-When zoom is called without a story-file argument, it presents a menu of
+When \fBzoom\fR is called without a story-file argument, it presents a menu of
the games found here, if any.
.TP
-\fB/usr/share/zoom/zoomrc\fR
-System\-wide config file, mostly for setting fonts and colors.
+\fB/etc/zoom/zoomrc\fR
+System\-wide config file, mostly for setting fonts and colors. Only
+used if \fB$HOME/.zoomrc\fR doesn't exist.
.TP
\fB$HOME/.zoomrc\fR
-Per\-user config file.
+Per\-user config file. If this file exists, it is used instead of
+the system config file, above. So for personalizing your settings, you
+will want to start out by copying \fB/etc/zoom/zoomrc\fR to \fB~/.zoomrc\fI.
+.PP
+Note that it's a \fIfatal error\fR if \fBzoom\fR can't read either of these
+config files!
+.SH NOTE
+If you were expecting to be able to play TADS, HUGO, or Glulx games with
+\fBzoom\fR, I hate to disappoint you... but the Linux build of \fBzoom\fR
+only supports Z\-Code. The \fIMacintosh\fR (OSX/Cocoa) build does support
+the other formats, but the support code would be difficult to port to
+Linux \fBzoom\fR. I incorrectly stated that the other formats were
+available in a previous version of this man page. Sorry about that.
+.SH BUGS
+Report bugs to bugs@logicalshift.co.uk.
+.PP
+There's one "bug" with this man page: it's installed in manual section 1.
+It should be section 6 (games), but there's a \fBzoom\fR(6) man page in the
+xscreensaver package, and we don't want to conflict with it.
+.SH AUTHOR
+Zoom was written by Andrew Hunter. See
+.nh
+\fB/usr/doc/zoom-@VERSION@/COPYING\fR
+.hy
+for license information.
+.PP
+This man page was written by B. Watson <urchlay@slackware.uk> for
+the SlackBuilds.org project. It's licensed under the WTFPL, so
+do WTF you want with it.
.SH "SEE ALSO"
+\fBzork\fR(6), \fBfrotz\fR(6), \fBfizmo\fR(6), \fBinform\fR(6).
+.PP
Full documentation is installed in
.nh
\fB/usr/doc/zoom-@VERSION@/manual/index.html\fR
.hy
-.SH BUGS
-Report bugs to bugs@logicalshift.co.uk.
-.SH AUTHOR
-Zoom was written by Andrew Hunter
diff --git a/games/zoom/zoom.SlackBuild b/games/zoom/zoom.SlackBuild
index 61e35e2e93..10c3487be5 100644
--- a/games/zoom/zoom.SlackBuild
+++ b/games/zoom/zoom.SlackBuild
@@ -1,17 +1,32 @@
-#!/bin/sh
+#!/bin/bash
# Slackware build script for zoom
-# Written by B. Watson (yalhcru@gmail.com)
+# Written by B. Watson (urchlay@slackware.uk)
# Licensed under the WTFPL. See http://www.wtfpl.net/txt/copying/ for details.
+# 20211011 bkw: BUILD=2
+# - binary in /usr/games.
+# - update man page.
+# - do NOT move man page to section 6, there's already a zoom(6), which
+# is part of xscreensaver.
+# - finally noticed that the Linux build of zoom does *not* play
+# TADS, HUGO, or Glulx games. The Mac OSX Cocoa build does, but the
+# extra code is in Objective C and doesn't look like it's portable
+# to non-Mac platforms. So update README, slack-desc, and the man
+# page to reflect that this is a Z-Code-only interpreter.
+# - add a few bugfix patches from Debian.
+# - new-style icons.
# 20170621 bkw: fix build for -current
+cd $(dirname $0) ; CWD=$(pwd)
+
PRGNAM=zoom
VERSION=${VERSION:-1.1.5}
BUILD=${BUILD:-1}
TAG=${TAG:-_SBo}
+PKGTYPE=${PKGTYPE:-tgz}
if [ -z "$ARCH" ]; then
case "$( uname -m )" in
@@ -21,7 +36,11 @@ if [ -z "$ARCH" ]; then
esac
fi
-CWD=$(pwd)
+if [ ! -z "${PRINT_PACKAGE_NAME}" ]; then
+ echo "$PRGNAM-$VERSION-$ARCH-$BUILD$TAG.$PKGTYPE"
+ exit 0
+fi
+
TMP=${TMP:-/tmp/SBo}
PKG=$TMP/package-$PRGNAM
OUTPUT=${OUTPUT:-/tmp}
@@ -45,26 +64,32 @@ rm -rf $PRGNAM-$VERSION
tar xvf $CWD/$PRGNAM-$VERSION.tar.gz
cd $PRGNAM-$VERSION
chown -R root:root .
-find -L . \
- \( -perm 777 -o -perm 775 -o -perm 750 -o -perm 711 -o -perm 555 -o -perm 511 \) \
- -exec chmod 755 {} \; -o \
- \( -perm 666 -o -perm 664 -o -perm 600 -o -perm 444 -o -perm 440 -o -perm 400 \) \
- -exec chmod 644 {} \;
-
-# gcc7 hates all the inline functions in interp.c.
-patch -p1 < $CWD/no_inline.diff
-
-# We don't need -funroll-loops and friends. They break the build on -current.
-patch -p1 < $CWD/remove_rice.diff
-
-# Modern Xft doesn't ship a xft-config script, hack the configure script
-# to use pkg-config.
-patch -p1 < $CWD/config_xft.diff
+find -L . -perm /111 -a \! -perm 755 -a -exec chmod 755 {} \+ -o \
+ \! -perm /111 -a \! -perm 644 -a -exec chmod 644 {} \+
+
+# 20211011 bkw: replace my old no_inline.patch with Debian's.
+# config_xft.diff, remove_rice.diff, zoomrc_in_etc.diff are mine. The
+# rest of patches/ came from Debian's zoom-player patchlevel 6.
+# This includes a couple of fixes for crashing bugs.
+for i in $( cat $CWD/patches/series ); do
+ echo "=== applying $i"
+ patch -p1 < $CWD/patches/$i
+done
+
+# 20211011 bkw: note to self: --enable-new-terp defines HAVE_COMPUTED_GOTOS
+# in config.h. Supposedly this might be faster on some architectures, and
+# slower on others. I don't enable this feature because:
+# - The games already run fast enough.
+# - The Debian packagers didn't enable it, so it's not likely to be
+# well-tested.
+# - I'd have to spend time/effort trying to figure out how to benchmark
+# the interpreter to see if it even made a difference.
CFLAGS="$SLKCFLAGS" \
CXXFLAGS="$SLKCFLAGS" \
./configure \
--prefix=/usr \
+ --bindir=/usr/games \
--sysconfdir=/etc \
--localstatedir=/var \
--mandir=/usr/man \
@@ -74,36 +99,47 @@ CXXFLAGS="$SLKCFLAGS" \
make
make install-strip DESTDIR=$PKG
-# enable antialiasing by default. The comment in the config file
-# doesn't seem to apply (it was written years ago).
-sed -i '/antialias/s,no,yes,' $PKG/usr/share/$PRGNAM/${PRGNAM}rc
-mv $PKG/usr/share/$PRGNAM/${PRGNAM}rc $PKG/usr/share/$PRGNAM/${PRGNAM}rc.new
+# Move config file to /etc, since we patched it for that.
+mkdir -p $PKG/etc/$PRGNAM
+mv $PKG/usr/share/$PRGNAM/${PRGNAM}rc $PKG/etc/$PRGNAM/${PRGNAM}rc.new
# If zoom is run with no arguments, it shows a menu of games from its
# default location. Let's make this the same location inform installs
-# its example games to.
+# its example games to (also, zork installs its games here).
mkdir -p $PKG/usr/share/zcode
ln -s ../zcode $PKG/usr/share/$PRGNAM/games
mkdir -p $PKG/usr/doc/$PRGNAM-$VERSION
rm -f manual/Makefile*
-cp -a \
- AUTHORS COPYING ChangeLog NEWS README THANKS TODO manual \
+cp -a AUTHORS COPYING ChangeLog NEWS README THANKS TODO manual \
$PKG/usr/doc/$PRGNAM-$VERSION
cat $CWD/$PRGNAM.SlackBuild > $PKG/usr/doc/$PRGNAM-$VERSION/$PRGNAM.SlackBuild
+# Icons extracted from src/macos/zoom-app.icns with icns2png from
+# the libicns package. There was no 48x48 or 64x64, so I scaled
+# the 128x128 one down with convert(1). I didn't include the 512x512
+# or 256x256 icons, AFAIK nothing uses icons that large (yet?).
+for i in $CWD/icons/*.png; do
+ px=$( basename $i | cut -d. -f1 )
+ size=${px}x${px}
+ dir=$PKG/usr/share/icons/hicolor/$size/apps
+ mkdir -p $dir
+ cat $i > $dir/$PRGNAM.png
+done
+
mkdir -p $PKG/usr/share/pixmaps/
-cat $CWD/$PRGNAM.png > $PKG/usr/share/pixmaps/$PRGNAM.png
+ln -s ../icons/hicolor/64x64/apps/$PRGNAM.png $PKG/usr/share/pixmaps/$PRGNAM.png
mkdir -p $PKG/usr/share/applications/
cat $CWD/$PRGNAM.desktop > $PKG/usr/share/applications/$PRGNAM.desktop
mkdir -p $PKG/usr/man/man1
-sed "s,@VERSION@,$VERSION,g" < $CWD/$PRGNAM.1 | gzip -9c > $PKG/usr/man/man1/$PRGNAM.1.gz
+sed "s,@VERSION@,$VERSION,g" < $CWD/$PRGNAM.1 \
+ | gzip -9c > $PKG/usr/man/man1/$PRGNAM.1.gz
mkdir -p $PKG/install
cat $CWD/slack-desc > $PKG/install/slack-desc
cat $CWD/doinst.sh > $PKG/install/doinst.sh
cd $PKG
-/sbin/makepkg -l y -c n $OUTPUT/$PRGNAM-$VERSION-$ARCH-$BUILD$TAG.${PKGTYPE:-tgz}
+/sbin/makepkg -l y -c n $OUTPUT/$PRGNAM-$VERSION-$ARCH-$BUILD$TAG.$PKGTYPE
diff --git a/games/zoom/zoom.desktop b/games/zoom/zoom.desktop
index dc8aa96e5f..3092acd3c7 100644
--- a/games/zoom/zoom.desktop
+++ b/games/zoom/zoom.desktop
@@ -4,7 +4,7 @@ Name=Zoom
GenericName=Game Engine
Comment=Player for Interactive Fiction Games
Icon=zoom
-Exec=zoom
+Exec=/usr/games/zoom
Terminal=false
Type=Application
Categories=Game;AdventureGame;
diff --git a/games/zoom/zoom.info b/games/zoom/zoom.info
index 56aa2dfb47..ed24cbbed0 100644
--- a/games/zoom/zoom.info
+++ b/games/zoom/zoom.info
@@ -1,10 +1,10 @@
PRGNAM="zoom"
VERSION="1.1.5"
-HOMEPAGE="http://www.logicalshift.co.uk/unix/zoom/"
-DOWNLOAD="http://www.ifarchive.org/if-archive/infocom/interpreters/zoom/zoom-1.1.5.tar.gz"
+HOMEPAGE="https://www.logicalshift.co.uk/unix/zoom/"
+DOWNLOAD="https://www.ifarchive.org/if-archive/infocom/interpreters/zoom/zoom-1.1.5.tar.gz"
MD5SUM="e24df12fd1bdfd0c4361d465bdceb949"
DOWNLOAD_x86_64=""
MD5SUM_x86_64=""
REQUIRES=""
MAINTAINER="B. Watson"
-EMAIL="yalhcru@gmail.com"
+EMAIL="urchlay@slackware.uk"
diff --git a/games/zork-mit/README b/games/zork-mit/README
new file mode 100644
index 0000000000..aa08501460
--- /dev/null
+++ b/games/zork-mit/README
@@ -0,0 +1,8 @@
+zork-mit (PDP/10 Zork from MIT, circa 1981)
+
+This is a modern C++-17 port of the final 616-point Zork, originally
+written in MDL at MIT around 1978-1981.
+
+See also: games/zork and games/dungeon. This version of Zork is newer
+than the Dungeon version that was ported to Fortran, but older than
+the commercial Zork games for PCs.
diff --git a/games/zork-mit/doinst.sh b/games/zork-mit/doinst.sh
new file mode 100644
index 0000000000..3e5691a052
--- /dev/null
+++ b/games/zork-mit/doinst.sh
@@ -0,0 +1,9 @@
+if [ -x /usr/bin/update-desktop-database ]; then
+ /usr/bin/update-desktop-database -q usr/share/applications >/dev/null 2>&1
+fi
+
+if [ -e usr/share/icons/hicolor/icon-theme.cache ]; then
+ if [ -x /usr/bin/gtk-update-icon-cache ]; then
+ /usr/bin/gtk-update-icon-cache usr/share/icons/hicolor >/dev/null 2>&1
+ fi
+fi
diff --git a/games/zork-mit/git2tarxz.sh b/games/zork-mit/git2tarxz.sh
new file mode 100644
index 0000000000..19735f712a
--- /dev/null
+++ b/games/zork-mit/git2tarxz.sh
@@ -0,0 +1,70 @@
+#!/bin/sh
+
+# Create source tarball from git repo, with generated version number.
+
+# NOTE: if you're copying this to use in another build, get rid of
+# the "rm -rf platform" or you might get surprised!
+
+# Takes one optional argument, which is the commit or tag to create a
+# tarball of. With no arg, HEAD is used.
+
+# Version number example: 0.0.1+20200227_ad7ec17
+
+# Notes:
+
+# Do not use this if you're packaging a release.
+
+# This script doesn't need to be run as root. It does need to be able
+# to write to the current directory it's run from.
+
+# Running this script twice for the same commit will NOT give identical
+# tarballs, even if the contents are identical. This is because tar
+# includes the current time in a newly-created tarball (plus there may
+# be other git-related reasons).
+
+# Once you've generated a tarball, you'll still need a place to host it.
+# Ask on the mailing list, if you don't have your own web server to
+# play with.
+
+## Config:
+# final tarball and slackbuild PRGNAM:
+PRGNAM=zork-mit
+
+# what it says on the tin:
+CLONE_URL=https://jclaar3@bitbucket.org/jclaar3/zork.git
+
+## End of config.
+
+set -e
+
+GITDIR=$( mktemp -dt $PRGNAM.git.XXXXXX )
+rm -rf $GITDIR
+git clone $CLONE_URL $GITDIR
+
+CWD="$( pwd )"
+cd $GITDIR
+
+if [ "$1" != "" ]; then
+ git reset --hard "$1" || exit 1
+fi
+
+GIT_SHA=$( git rev-parse --short HEAD )
+
+DATE=$( git log --date=format:%Y%m%d --format=%cd | head -1 )
+
+VERTAG=$( git tag -l | tail -1 )
+
+VERSION=${VERTAG}+${DATE}_${GIT_SHA}
+
+rm -rf .git
+find . -name .gitignore -print0 | xargs -0 rm -f
+
+cd "$CWD"
+rm -rf $PRGNAM-$VERSION $PRGNAM-$VERSION.tar.xz
+mv $GITDIR $PRGNAM-$VERSION
+tar cvfJ $PRGNAM-$VERSION.tar.xz $PRGNAM-$VERSION
+
+echo
+echo "Created tarball: $PRGNAM-$VERSION.tar.xz"
+echo "VERSION=\"$VERSION\""
+echo "MD5SUM=\"$( md5sum $PRGNAM-$VERSION.tar.xz | cut -d' ' -f1 )\""
diff --git a/games/zork-mit/icons/32.png b/games/zork-mit/icons/32.png
new file mode 100644
index 0000000000..c999632473
--- /dev/null
+++ b/games/zork-mit/icons/32.png
Binary files differ
diff --git a/games/zork-mit/icons/48.png b/games/zork-mit/icons/48.png
new file mode 100644
index 0000000000..1ed26fcc4d
--- /dev/null
+++ b/games/zork-mit/icons/48.png
Binary files differ
diff --git a/games/zork-mit/icons/64.png b/games/zork-mit/icons/64.png
new file mode 100644
index 0000000000..fd4bebba07
--- /dev/null
+++ b/games/zork-mit/icons/64.png
Binary files differ
diff --git a/games/zork-mit/slack-desc b/games/zork-mit/slack-desc
new file mode 100644
index 0000000000..c74f3ff4be
--- /dev/null
+++ b/games/zork-mit/slack-desc
@@ -0,0 +1,19 @@
+# HOW TO EDIT THIS FILE:
+# The "handy ruler" below makes it easier to edit a package description.
+# Line up the first '|' above the ':' following the base package name, and
+# the '|' on the right side marks the last column you can put a character in.
+# You must make exactly 11 lines for the formatting to be correct. It's also
+# customary to leave one space after the ':' except on otherwise blank lines.
+
+ |-----handy-ruler------------------------------------------------------|
+zork-mit: zork-mit (PDP/10 Zork from MIT, circa 1981)
+zork-mit:
+zork-mit: This is a modern C++-17 port of the final 616-point Zork, originally
+zork-mit: written in MDL at MIT around 1978-1981.
+zork-mit:
+zork-mit:
+zork-mit:
+zork-mit:
+zork-mit:
+zork-mit:
+zork-mit:
diff --git a/games/zork-mit/zork-mit.SlackBuild b/games/zork-mit/zork-mit.SlackBuild
new file mode 100644
index 0000000000..bd43f939fb
--- /dev/null
+++ b/games/zork-mit/zork-mit.SlackBuild
@@ -0,0 +1,101 @@
+#!/bin/bash
+
+# Slackware build script for zork-mit
+
+# Written by B. Watson (urchlay@slackware.uk)
+
+# Licensed under the WTFPL. See http://www.wtfpl.net/txt/copying/ for details.
+
+cd $(dirname $0) ; CWD=$(pwd)
+
+PRGNAM=zork-mit
+VERSION=${VERSION:-1.1.2+20220404_cc4406e}
+BUILD=${BUILD:-1}
+TAG=${TAG:-_SBo}
+PKGTYPE=${PKGTYPE:-tgz}
+
+if [ -z "$ARCH" ]; then
+ case "$( uname -m )" in
+ i?86) ARCH=i586 ;;
+ arm*) ARCH=arm ;;
+ *) ARCH=$( uname -m ) ;;
+ esac
+fi
+
+if [ ! -z "${PRINT_PACKAGE_NAME}" ]; then
+ echo "$PRGNAM-$VERSION-$ARCH-$BUILD$TAG.$PKGTYPE"
+ exit 0
+fi
+
+TMP=${TMP:-/tmp/SBo}
+PKG=$TMP/package-$PRGNAM
+OUTPUT=${OUTPUT:-/tmp}
+
+if [ "$ARCH" = "i586" ]; then
+ SLKCFLAGS="-O2 -march=i586 -mtune=i686"
+ LIBDIRSUFFIX=""
+elif [ "$ARCH" = "i686" ]; then
+ SLKCFLAGS="-O2 -march=i686 -mtune=i686"
+ LIBDIRSUFFIX=""
+elif [ "$ARCH" = "x86_64" ]; then
+ SLKCFLAGS="-O2 -fPIC"
+ LIBDIRSUFFIX="64"
+else
+ SLKCFLAGS="-O2"
+ LIBDIRSUFFIX=""
+fi
+
+set -e
+
+rm -rf $PKG
+mkdir -p $TMP $PKG $OUTPUT
+cd $TMP
+rm -rf $PRGNAM-v$VERSION
+tar xvf $CWD/$PRGNAM-v$VERSION.tar.xz
+cd $PRGNAM-v$VERSION
+chown -R root:root .
+find -L . -perm /111 -a \! -perm 755 -a -exec chmod 755 {} \+ -o \
+ \! -perm /111 -a \! -perm 644 -a -exec chmod 644 {} \+
+
+# No way to override cleanly, so:
+sed -i "/^CFLAGS/s,-Os,$SLKCFLAGS,g" */makefile
+
+# Fugly, but this works:
+make BOOSTLIB="-lboost_program_options \
+ -lboost_serialization \
+ -lboost_filesystem \
+ -lboost_system"
+
+install -s -D -m0755 -oroot -groot mdlfun/zork_linux $PKG/usr/games/$PRGNAM
+
+# Icons made by combining a color-shifted version of the MIT logo
+# with the Zork icons. The result isn't very pretty, but at least
+# it's distinctive. If you can make better icons, please do, I'll
+# include them here.
+for i in 32 48 64; do
+ size=${i}x${i}
+ dir=$PKG/usr/share/icons/hicolor/$size/apps
+ mkdir -p $dir
+ cat $CWD/icons/$i.png > $dir/$PRGNAM.png
+done
+mkdir -p $PKG/usr/share/pixmaps
+ln -s ../icons/hicolor/48x48/apps/$PRGNAM.png $PKG/usr/share/pixmaps/$PRGNAM.png
+
+# .desktop file made by SlackBuild author.
+mkdir -p $PKG/usr/share/applications
+cat $CWD/$PRGNAM.desktop > $PKG/usr/share/applications/$PRGNAM.desktop
+
+# As fascinating as it is, don't include the MDL programmer's manual
+# (MIT-LCS-TR-292.pdf) in the package. It's large and not useful for
+# players...
+PKGDOC=$PKG/usr/doc/$PRGNAM-$VERSION
+mkdir -p $PKGDOC
+cp -a README* dungeon-1981.jpg $PKGDOC
+cat $CWD/$PRGNAM.SlackBuild > $PKGDOC/$PRGNAM.SlackBuild
+
+mkdir -p $PKG/install
+cat $CWD/slack-desc > $PKG/install/slack-desc
+cat $CWD/doinst.sh > $PKG/install/doinst.sh
+
+cd $PKG
+/sbin/makepkg -l y -c n $OUTPUT/$PRGNAM-$VERSION-$ARCH-$BUILD$TAG.$PKGTYPE
diff --git a/games/zork-mit/zork-mit.desktop b/games/zork-mit/zork-mit.desktop
new file mode 100644
index 0000000000..dfc22b568a
--- /dev/null
+++ b/games/zork-mit/zork-mit.desktop
@@ -0,0 +1,9 @@
+[Desktop Entry]
+Version=1.0
+Name=Zork (MIT version)
+GenericName=Interactive Fiction Game
+Icon=zork-mit
+Exec=/usr/games/zork-mit
+Terminal=true
+Type=Application
+Categories=Game;AdventureGame;
diff --git a/games/zork-mit/zork-mit.info b/games/zork-mit/zork-mit.info
new file mode 100644
index 0000000000..3f44ac35a9
--- /dev/null
+++ b/games/zork-mit/zork-mit.info
@@ -0,0 +1,10 @@
+PRGNAM="zork-mit"
+VERSION="1.1.2+20220404_cc4406e"
+HOMEPAGE="https://bitbucket.org/jclaar3/zork/src/master/"
+DOWNLOAD="https://slackware.uk/~urchlay/src/zork-mit-v1.1.2+20220404_cc4406e.tar.xz"
+MD5SUM="790963e6a1b72a4dffdb126501078889"
+DOWNLOAD_x86_64=""
+MD5SUM_x86_64=""
+REQUIRES=""
+MAINTAINER="B. Watson"
+EMAIL="urchlay@slackware.uk"
diff --git a/games/zork/README b/games/zork/README
index fae4e15202..2294af2b01 100644
--- a/games/zork/README
+++ b/games/zork/README
@@ -8,13 +8,14 @@ Undiscovered Underground (aka "ztuu"). They are owned by Activision,
which released them as free downloads some time ago. The first 3 Zork
games were originally developed by Infocom.
-To actually play the games, you'll need a z-code interpreter. Currently
-available are frotz and fizmo (text) and zoom (X11). See
+To actually play the games, you'll need a z-code interpreter.
+Currently available are frotz and fizmo (text) and zoom (X11). See
README.interpreters for details. This build includes a shell script
wrapper so you can run the games from the XFCE or KDE desktop menu,
or by typing the game name (zork1, zork2, zork3, ztuu) from the shell,
provided you have at least one interpreter installed.
-This package includes the InvisiClues from the original games (as plain
-text, so beware of spoilers). There are also walkthroughs and downloadable
-PDF manuals for the first three games here: http://www.ironrealms.com/zork
+This package includes the InvisiClues from the original games (as
+plain text, so beware of spoilers). There are also walkthroughs
+and downloadable PDF manuals for the first three games here:
+http://www.ironrealms.com/zork
diff --git a/games/zork/desktop/zork1.desktop b/games/zork/desktop/zork1.desktop
index c20e8e4c19..ce9230ba1a 100644
--- a/games/zork/desktop/zork1.desktop
+++ b/games/zork/desktop/zork1.desktop
@@ -4,7 +4,7 @@ Name=Zork I
GenericName=Interactive Fiction Game
Comment=Zork: The Great Underground Empire
Icon=zork
-Exec=zork1
+Exec=/usr/games/zork1
Terminal=true
Type=Application
Categories=Game;AdventureGame;
diff --git a/games/zork/desktop/zork2.desktop b/games/zork/desktop/zork2.desktop
index 6b2100c38e..baa25b0ec3 100644
--- a/games/zork/desktop/zork2.desktop
+++ b/games/zork/desktop/zork2.desktop
@@ -4,7 +4,7 @@ Name=Zork II
GenericName=Interactive Fiction Game
Comment=Zork: The Wizard of Frobozz
Icon=zork
-Exec=zork2
+Exec=/usr/games/zork2
Terminal=true
Type=Application
Categories=Game;AdventureGame;
diff --git a/games/zork/desktop/zork3.desktop b/games/zork/desktop/zork3.desktop
index 8024742bb6..dd8fc76ea4 100644
--- a/games/zork/desktop/zork3.desktop
+++ b/games/zork/desktop/zork3.desktop
@@ -4,7 +4,7 @@ Name=Zork III
GenericName=Interactive Fiction Game
Comment=Zork: The Dungeon Master
Icon=zork
-Exec=zork3
+Exec=/usr/games/zork3
Terminal=true
Type=Application
Categories=Game;AdventureGame;
diff --git a/games/zork/desktop/ztuu.desktop b/games/zork/desktop/ztuu.desktop
index 280f54c1c2..d479fb38cd 100644
--- a/games/zork/desktop/ztuu.desktop
+++ b/games/zork/desktop/ztuu.desktop
@@ -4,7 +4,7 @@ Name=Zork TUU
GenericName=Interactive Fiction Game
Comment=Zork: The Undiscovered Underground
Icon=zork
-Exec=ztuu
+Exec=/usr/games/ztuu
Terminal=true
Type=Application
Categories=Game;AdventureGame;
diff --git a/games/zork/icons/32.png b/games/zork/icons/32.png
new file mode 100644
index 0000000000..86c51f5f18
--- /dev/null
+++ b/games/zork/icons/32.png
Binary files differ
diff --git a/games/zork/icons/48.png b/games/zork/icons/48.png
new file mode 100644
index 0000000000..ab5bee074a
--- /dev/null
+++ b/games/zork/icons/48.png
Binary files differ
diff --git a/games/zork/icons/64.png b/games/zork/icons/64.png
new file mode 100644
index 0000000000..beb5a44b87
--- /dev/null
+++ b/games/zork/icons/64.png
Binary files differ
diff --git a/games/zork/mkicons.sh b/games/zork/mkicons.sh
new file mode 100644
index 0000000000..905e1ab77f
--- /dev/null
+++ b/games/zork/mkicons.sh
@@ -0,0 +1,26 @@
+#!/bin/bash
+
+# 20211011 bkw: create zork icon, part of zork.SlackBuild.
+
+set -e
+
+CWD=$( pwd )
+mkdir -p $CWD/icons
+DIR=$( mktemp -d )
+cd $DIR
+
+wget http://www.ifarchive.org/if-archive/infocom/icons/ZorkLetters.zip
+unzip ZorkLetters.zip 'ZORK?.ICO'
+
+convert +append ZORKZ.ICO ZORKO.ICO zo.png
+convert +append ZORKR.ICO ZORKK.ICO rk.png
+convert -append zo.png rk.png $CWD/icons/64.png
+
+convert -resize 48x48 $CWD/icons/64.png $CWD/icons/48.png
+convert -resize 32x32 $CWD/icons/64.png $CWD/icons/32.png
+
+rm *.ICO *.png *.zip
+cd $CWD
+rmdir $DIR
+
+exit 0
diff --git a/games/zork/zork.SlackBuild b/games/zork/zork.SlackBuild
index e610011ec4..04def8d4c6 100644
--- a/games/zork/zork.SlackBuild
+++ b/games/zork/zork.SlackBuild
@@ -1,8 +1,8 @@
-#!/bin/sh
+#!/bin/bash
# Slackware build script for zork
-# Written by B. Watson (yalhcru@gmail.com)
+# Written by B. Watson (urchlay@slackware.uk)
# Licensed under the WTFPL. See http://www.wtfpl.net/txt/copying/ for details.
@@ -10,16 +10,29 @@
# files of course have their own version information, but at this late date
# they aren't going to ever change.
+# 20211011 bkw:
+# - move executables to /usr/games.
+# - new-style icons.
+# - man page.
+# - reflow readme-*.txt (with fmt -s).
+
# 20140219 bkw: fix .desktop files so they validate.
+cd $(dirname $0) ; CWD=$(pwd)
+
PRGNAM=zork
-VERSION=${VERSION:-20140219}
+VERSION=${VERSION:-20211011}
BUILD=${BUILD:-1}
TAG=${TAG:-_SBo}
+PKGTYPE=${PKGTYPE:-tgz}
ARCH=noarch
-CWD=$(pwd)
+if [ ! -z "${PRINT_PACKAGE_NAME}" ]; then
+ echo "$PRGNAM-$VERSION-$ARCH-$BUILD$TAG.$PKGTYPE"
+ exit 0
+fi
+
TMP=${TMP:-/tmp/SBo}
PKG=$TMP/package-$PRGNAM
OUTPUT=${OUTPUT:-/tmp}
@@ -33,53 +46,67 @@ rm -rf $PRGNAM-$VERSION
mkdir $PRGNAM-$VERSION
cd $PRGNAM-$VERSION
+PKGDOC=$PKG/usr/doc/$PRGNAM-$VERSION
+
# zork 1/2/3 are z-code version 3 (z3), uu is z5.
-mkdir -p $PKG/usr/share/zcode $PKG/usr/doc/$PRGNAM-$VERSION/invisiclues
+mkdir -p $PKG/usr/share/zcode $PKGDOC/invisiclues
for game in 1 2 3; do
rm -rf *
unzip -a -LL $CWD/zork$game.zip
cat data/zork$game.dat > $PKG/usr/share/zcode/zork$game.z3
- cat readme.txt > $PKG/usr/doc/$PRGNAM-$VERSION/readme-zork$game.txt
+ fmt -s readme.txt > $PKGDOC/readme-zork$game.txt
done
rm -rf *
unzip -a -LL $CWD/ztuu.zip
cat ztuu.z5 > $PKG/usr/share/zcode/ztuu.z5
-cat readme.txt > $PKG/usr/doc/$PRGNAM-$VERSION/readme-ztuu.txt
-cat invisiclues.txt > $PKG/usr/doc/$PRGNAM-$VERSION/invisiclues/ztuu.txt
-cat invisiclues.html > $PKG/usr/doc/$PRGNAM-$VERSION/invisiclues/ztuu.html
+fmt -s readme.txt > $PKGDOC/readme-ztuu.txt
+cat invisiclues.txt > $PKGDOC/invisiclues/ztuu.txt
+cat invisiclues.html > $PKGDOC/invisiclues/ztuu.html
# ztuu has invisiclues in the zip file, add the clues for 1/2/3 also
-cat $CWD/ZorkI.inv > $PKG/usr/doc/$PRGNAM-$VERSION/invisiclues/zork1.txt
-cat $CWD/ZorkII.inv > $PKG/usr/doc/$PRGNAM-$VERSION/invisiclues/zork2.txt
-cat $CWD/ZorkIII.inv > $PKG/usr/doc/$PRGNAM-$VERSION/invisiclues/zork3.txt
+cat $CWD/ZorkI.inv > $PKGDOC/invisiclues/zork1.txt
+cat $CWD/ZorkII.inv > $PKGDOC/invisiclues/zork2.txt
+cat $CWD/ZorkIII.inv > $PKGDOC/invisiclues/zork3.txt
-cat $CWD/README.interpreters > $PKG/usr/doc/$PRGNAM-$VERSION/README.interpreters
-cat $CWD/$PRGNAM.SlackBuild > $PKG/usr/doc/$PRGNAM-$VERSION/$PRGNAM.SlackBuild
+cat $CWD/README.interpreters > $PKGDOC/README.interpreters
+cat $CWD/$PRGNAM.SlackBuild > $PKGDOC/$PRGNAM.SlackBuild
# Script wrapper and .desktop files written for this SlackBuild
mkdir -p \
- $PKG/usr/share/zork \
- $PKG/usr/bin \
- $PKG/usr/share/applications
+ $PKG/usr/share/games/zork \
+ $PKG/usr/games \
+ $PKG/usr/man/man6 \
+ $PKG/usr/share/applications \
+ $PKG/usr/share/pixmaps
-install -m0755 $CWD/zork.sh $PKG/usr/share/zork/zorkwrapper.sh
+install -m0755 $CWD/zorkwrapper.sh $PKG/usr/share/games/zork/zorkwrapper.sh
+gzip -9c < $CWD/zorkwrapper.sh.6 > $PKG/usr/man/man6/zorkwrapper.sh.6.gz
for game in zork1 zork2 zork3 ztuu; do
- ln -s ../share/zork/zorkwrapper.sh $PKG/usr/bin/$game
+ ln -s ../share/games/zork/zorkwrapper.sh $PKG/usr/games/$game
+ ln -s zorkwrapper.sh.6.gz $PKG/usr/man/man6/$game.6.gz
cat $CWD/desktop/$game.desktop > $PKG/usr/share/applications/$game.desktop
done
-ln -s ../share/zork/zorkwrapper.sh $PKG/usr/bin/$PRGNAM
+# zork1 => zork, so we have an exe and a man page matching the package name.
+ln -s zorkwrapper.sh.6.gz $PKG/usr/man/man6/$PRGNAM.6.gz
+ln -s ../share/games/zork/zorkwrapper.sh $PKG/usr/games/$PRGNAM
+
+# Icons created with mkicons.sh, q.v.
+for i in $CWD/icons/*.png; do
+ px=$( basename $i | cut -d. -f1 )
+ size=${px}x${px}
+ dir=$PKG/usr/share/icons/hicolor/$size/apps
+ mkdir -p $dir
+ cat $i > $dir/$PRGNAM.png
+done
-# Icon converted from Z.ICO here:
-# http://www.ifarchive.org/if-archive/infocom/icons/ZorkLetters.zip
-mkdir -p $PKG/usr/share/pixmaps
-cat $CWD/$PRGNAM.png > $PKG/usr/share/pixmaps/$PRGNAM.png
+ln -s ../icons/hicolor/48x48/apps/$PRGNAM.png $PKG/usr/share/pixmaps/$PRGNAM.png
mkdir -p $PKG/install
sed "s,@VERSION@,$VERSION," $CWD/slack-desc > $PKG/install/slack-desc
cat $CWD/doinst.sh > $PKG/install/doinst.sh
cd $PKG
-/sbin/makepkg -l y -c n $OUTPUT/$PRGNAM-$VERSION-$ARCH-$BUILD$TAG.${PKGTYPE:-tgz}
+/sbin/makepkg -l y -c n $OUTPUT/$PRGNAM-$VERSION-$ARCH-$BUILD$TAG.$PKGTYPE
diff --git a/games/zork/zork.info b/games/zork/zork.info
index 467d955584..4a7bd7a863 100644
--- a/games/zork/zork.info
+++ b/games/zork/zork.info
@@ -1,5 +1,5 @@
PRGNAM="zork"
-VERSION="20140219"
+VERSION="20211011"
HOMEPAGE="http://www.infocom-if.org/"
DOWNLOAD="http://infocom.elsewhere.org/scheyen/Download/zork1.zip \
http://infocom.elsewhere.org/scheyen/Download/zork2.zip \
@@ -19,4 +19,4 @@ DOWNLOAD_x86_64=""
MD5SUM_x86_64=""
REQUIRES=""
MAINTAINER="B. Watson"
-EMAIL="yalhcru@gmail.com"
+EMAIL="urchlay@slackware.uk"
diff --git a/games/zork/zork.png b/games/zork/zork.png
deleted file mode 100644
index 911641be09..0000000000
--- a/games/zork/zork.png
+++ /dev/null
Binary files differ
diff --git a/games/zork/zork.sh b/games/zork/zorkwrapper.sh
index 507091bbf7..507091bbf7 100644
--- a/games/zork/zork.sh
+++ b/games/zork/zorkwrapper.sh
diff --git a/games/zork/zorkwrapper.sh.6 b/games/zork/zorkwrapper.sh.6
new file mode 100644
index 0000000000..0f576e33bd
--- /dev/null
+++ b/games/zork/zorkwrapper.sh.6
@@ -0,0 +1,103 @@
+.\" Man page generated from reStructuredText.
+.
+.
+.nr rst2man-indent-level 0
+.
+.de1 rstReportMargin
+\\$1 \\n[an-margin]
+level \\n[rst2man-indent-level]
+level margin: \\n[rst2man-indent\\n[rst2man-indent-level]]
+-
+\\n[rst2man-indent0]
+\\n[rst2man-indent1]
+\\n[rst2man-indent2]
+..
+.de1 INDENT
+.\" .rstReportMargin pre:
+. RS \\$1
+. nr rst2man-indent\\n[rst2man-indent-level] \\n[an-margin]
+. nr rst2man-indent-level +1
+.\" .rstReportMargin post:
+..
+.de UNINDENT
+. RE
+.\" indent \\n[an-margin]
+.\" old: \\n[rst2man-indent\\n[rst2man-indent-level]]
+.nr rst2man-indent-level -1
+.\" new: \\n[rst2man-indent\\n[rst2man-indent-level]]
+.in \\n[rst2man-indent\\n[rst2man-indent-level]]u
+..
+.TH "ZORKWRAPPER.SH" 6 "2021-10-11" "20211011" "SlackBuilds.org"
+.SH NAME
+zorkwrapper.sh \- play Infocom Zork games
+.\" RST source for zorkwrapper.sh(6) man page. Convert with:
+.
+.\" rst2man.py zorkwrapper.sh.rst > zorkwrapper.sh.6
+.
+.\" rst2man.py comes from the SBo development/docutils package.
+.
+.SH SYNOPSIS
+.nf
+\fBzork\fP
+\fBzork2\fP
+\fBzork3\fP
+\fBztuu\fP
+.fi
+.sp
+.SH DESCRIPTION
+.sp
+\fBzorkwrapper.sh\fP runs the Infocom Zork games. It\(aqs installed via
+symlinks in the /usr/games directory, so each game can be run by
+simply typing its name.
+.sp
+Supported games:
+.INDENT 0.0
+.TP
+.B \fBzork\fP
+Zork I: The Great Underground Empire
+.TP
+.B \fBzork2\fP
+Zork II: The Wizard of Frobozz
+.TP
+.B \fBzork3\fP
+Zork III: The Dungeon Master
+.TP
+.B \fBztuu\fP
+Zork: The Undiscovered Underground
+.UNINDENT
+.sp
+The games are run with the first interpreter found, from the following list:
+.INDENT 0.0
+.INDENT 3.5
+\fBfizmo\fP, \fBfrotz\fP, \fBzoom\fP\&.
+.UNINDENT
+.UNINDENT
+.SH OPTIONS
+.sp
+There are no options or arguments.
+.SH FILES
+.sp
+\fB/usr/share/games/zork/zorkwrapper.sh\fP is the master copy of the script,
+which gets symlinked to the game names in \fB/usr/games\fP\&.
+.sp
+\fB/usr/share/zcode/\fP contains the Z\-Machine files:
+.INDENT 0.0
+.INDENT 3.5
+\fBzork1.z3\fP, \fBzork2.z3\fP, \fBzork3.z3\fP, \fBztuu.z5\fP
+.UNINDENT
+.UNINDENT
+.SH AUTHORS
+.sp
+\fBzorkwrapper.sh\fP and this man page were written for the
+SlackBuilds.org project by B. Watson, and are licensed under the WTFPL.
+.sp
+The Zork games are the property of Activision, which released them
+as free\-to\-use downloads. See /usr/doc/zork\-20211011/readme\-*.txt
+for license information.
+.SH SEE ALSO
+.sp
+\fBfizmo\fP(6), \fBfrotz\fP(6), \fBzoom\fP(6)
+.sp
+\fI\%http://www.infocom\-if.org/\fP
+.\" Generated by docutils manpage writer.
+.
diff --git a/games/zork/zorkwrapper.sh.rst b/games/zork/zorkwrapper.sh.rst
new file mode 100644
index 0000000000..8c052a0270
--- /dev/null
+++ b/games/zork/zorkwrapper.sh.rst
@@ -0,0 +1,84 @@
+.. RST source for zorkwrapper.sh(6) man page. Convert with:
+.. rst2man.py zorkwrapper.sh.rst > zorkwrapper.sh.6
+.. rst2man.py comes from the SBo development/docutils package.
+
+.. |version| replace:: 20211011
+.. |date| date::
+
+==============
+zorkwrapper.sh
+==============
+
+-----------------------
+play Infocom Zork games
+-----------------------
+
+:Manual section: 6
+:Manual group: SlackBuilds.org
+:Date: |date|
+:Version: |version|
+
+SYNOPSIS
+========
+
+| **zork**
+| **zork2**
+| **zork3**
+| **ztuu**
+
+DESCRIPTION
+===========
+
+**zorkwrapper.sh** runs the Infocom Zork games. It's installed via
+symlinks in the /usr/games directory, so each game can be run by
+simply typing its name.
+
+Supported games:
+
+**zork**
+ Zork I: The Great Underground Empire
+
+**zork2**
+ Zork II: The Wizard of Frobozz
+
+**zork3**
+ Zork III: The Dungeon Master
+
+**ztuu**
+ Zork: The Undiscovered Underground
+
+The games are run with the first interpreter found, from the following list:
+
+ **fizmo**, **frotz**, **zoom**.
+
+OPTIONS
+=======
+
+There are no options or arguments.
+
+FILES
+=====
+
+**/usr/share/games/zork/zorkwrapper.sh** is the master copy of the script,
+which gets symlinked to the game names in **/usr/games**.
+
+**/usr/share/zcode/** contains the Z-Machine files:
+
+ **zork1.z3**, **zork2.z3**, **zork3.z3**, **ztuu.z5**
+
+AUTHORS
+=======
+
+**zorkwrapper.sh** and this man page were written for the
+SlackBuilds.org project by B. Watson, and are licensed under the WTFPL.
+
+The Zork games are the property of Activision, which released them
+as free-to-use downloads. See /usr/doc/zork-|version|/readme-\*.txt
+for license information.
+
+SEE ALSO
+========
+
+**fizmo**\(6), **frotz**\(6), **zoom**\(6)
+
+http://www.infocom-if.org/
diff --git a/games/zsdx/zsdx.SlackBuild b/games/zsdx/zsdx.SlackBuild
index 6eb000808f..917529d6a2 100644
--- a/games/zsdx/zsdx.SlackBuild
+++ b/games/zsdx/zsdx.SlackBuild
@@ -1,4 +1,4 @@
-#!/bin/sh
+#!/bin/bash
# Slackware build script for Zelda: Mystery of Solarus DX
@@ -22,14 +22,24 @@
# OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF THIS SOFTWARE, EVEN IF
# ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
+cd $(dirname $0) ; CWD=$(pwd)
+
PRGNAM=zsdx
VERSION=${VERSION:-1.12.2}
BUILD=${BUILD:-1}
TAG=${TAG:-_SBo}
+PKGTYPE=${PKGTYPE:-tgz}
ARCH=noarch
-CWD=$(pwd)
+# If the variable PRINT_PACKAGE_NAME is set, then this script will report what
+# the name of the created package would be, and then exit. This information
+# could be useful to other scripts.
+if [ ! -z "${PRINT_PACKAGE_NAME}" ]; then
+ echo "$PRGNAM-$VERSION-$ARCH-$BUILD$TAG.$PKGTYPE"
+ exit 0
+fi
+
TMP=${TMP:-/tmp/SBo}
PKG=$TMP/package-$PRGNAM
OUTPUT=${OUTPUT:-/tmp}
@@ -70,4 +80,4 @@ cat $CWD/slack-desc > $PKG/install/slack-desc
cat $CWD/doinst.sh > $PKG/install/doinst.sh
cd $PKG
-/sbin/makepkg -l y -c n $OUTPUT/$PRGNAM-$VERSION-$ARCH-$BUILD$TAG.${PKGTYPE:-tgz}
+/sbin/makepkg -l y -c n $OUTPUT/$PRGNAM-$VERSION-$ARCH-$BUILD$TAG.$PKGTYPE
diff --git a/games/zseal/README b/games/zseal/README
index 001a18bc38..ac2e3d5d2e 100644
--- a/games/zseal/README
+++ b/games/zseal/README
@@ -1,18 +1,18 @@
-zseal
-open source client for FICS Timeseal v2 for Linux/Unix systems
+zseal (open source client for FICS chess server)
-Timeseal is a protocol for network lag reporting and compensation used by the FICS chess
-server (freechess.org). Version 2 of the protocol provides better delay stats as the server
-actively pings the client periodically. FICS's FTP repository was taken down a few years
-ago and was never put back on.
-Since then, there has been nowhere to download a trustable timeseal client for Linux systems.
+Timeseal is a protocol for network lag reporting and compensation used
+by the FICS chess server (freechess.org). Version 2 of the protocol
+provides better delay stats as the server actively pings the client
+periodically. FICS's FTP repository was taken down a few years ago
+and was never put back on. Since then, there has been nowhere to
+download a trustable timeseal client for Linux systems.
-
-To use with xboard, append "-icshelper zseal" to your normal xboard command line.
+To use with xboard, append "-icshelper zseal" to your normal xboard
+command line:
xboard -ics -icshost freechess.org -icsport 5000 -icshelper zseal
-
-Assuming Slackware's gnuchess package is already installed on your system,
-the install script will integrate and enable zseal in eboard automatically.
-(Otherwise, follow the instructions for eboard configuration in /usr/doc/zseal-1.0/README.)
+Assuming Slackware's gnuchess package is already installed on
+your system, the install script will integrate and enable zseal in
+eboard automatically. Otherwise, follow the instructions for eboard
+configuration in /usr/doc/zseal-1.0/README.
diff --git a/games/zseal/slack-desc b/games/zseal/slack-desc
index ff3737a177..4811d3f043 100644
--- a/games/zseal/slack-desc
+++ b/games/zseal/slack-desc
@@ -12,8 +12,8 @@ zseal: An open source client for FICS Timeseal v2 for Linux/Unix systems.
zseal:
zseal:
zseal: (C) 2016 Felipe Bergo (Pulga @ FICS), fbergo at gmail dot com
-zseal: https://github.com/fbergo/zseal
+zseal: https://github.com/fbergo/zseal
+zseal:
zseal:
-zseal:
zseal:
zseal:
diff --git a/games/zseal/zseal.SlackBuild b/games/zseal/zseal.SlackBuild
index 3bb875b3f3..a0fb62aa65 100644
--- a/games/zseal/zseal.SlackBuild
+++ b/games/zseal/zseal.SlackBuild
@@ -1,4 +1,4 @@
-#!/bin/sh
+#!/bin/bash
#
# Slackware build script for zseal (an open-source implementation of Timeseal v2 for FICS.)
#
@@ -22,10 +22,13 @@
# OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF THIS SOFTWARE, EVEN IF
# ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
+cd $(dirname $0) ; CWD=$(pwd)
+
PRGNAM=zseal
VERSION=${VERSION:-1.0}
BUILD=${BUILD:-1}
TAG=${TAG:-_SBo}
+PKGTYPE=${PKGTYPE:-tgz}
if [ -z "$ARCH" ]; then
case "$( uname -m )" in
@@ -46,7 +49,14 @@ case "$ARCH" in
read -t 10 PLACEHOLDER ;;
esac
-CWD=$(pwd)
+# If the variable PRINT_PACKAGE_NAME is set, then this script will report what
+# the name of the created package would be, and then exit. This information
+# could be useful to other scripts.
+if [ ! -z "${PRINT_PACKAGE_NAME}" ]; then
+ echo "$PRGNAM-$VERSION-$ARCH-$BUILD$TAG.$PKGTYPE"
+ exit 0
+fi
+
TMP=${TMP:-/tmp/SBo}
PKG=$TMP/package-$PRGNAM
OUTPUT=${OUTPUT:-/tmp}
@@ -107,4 +117,4 @@ mkdir -p $PKG/install
cat $CWD/slack-desc > $PKG/install/slack-desc
cd $PKG
-/sbin/makepkg -l y -c n $OUTPUT/$PRGNAM-$VERSION-$ARCH-$BUILD$TAG.${PKGTYPE:-tgz}
+/sbin/makepkg -l y -c n $OUTPUT/$PRGNAM-$VERSION-$ARCH-$BUILD$TAG.$PKGTYPE
diff --git a/games/zsnes/0012-Fix-build-with-gcc-4.7.patch b/games/zsnes/0012-Fix-build-with-gcc-4.7.patch
deleted file mode 100644
index 2c29f5be43..0000000000
--- a/games/zsnes/0012-Fix-build-with-gcc-4.7.patch
+++ /dev/null
@@ -1,24 +0,0 @@
-From: Etienne Millon <etienne.millon@gmail.com>
-Date: Thu, 12 Apr 2012 18:01:45 +0200
-Subject: Fix build with gcc 4.7
-
-Headers in the new C++ library do not implicitly import unistd.h, so it is
-necessary to do it in the source.
-
-Bug-Debian: http://bugs.debian.org/cgi-bin/bugreport.cgi?bug=667429
----
- src/tools/depbuild.cpp | 1 +
- 1 file changed, 1 insertion(+)
-
-diff --git a/src/tools/depbuild.cpp b/src/tools/depbuild.cpp
-index 1e4bbc5..ea0854c 100644
---- a/src/tools/depbuild.cpp
-+++ b/src/tools/depbuild.cpp
-@@ -25,6 +25,7 @@ This program generates dependencies for all C/C++/Assembly files
- #include <string>
- #include <cstdio>
- #include <cstdlib>
-+#include <unistd.h>
- using namespace std;
-
- #include "fileutil.h"
diff --git a/games/zsnes/README b/games/zsnes/README
index 303d2ae76e..ad29c79ef8 100644
--- a/games/zsnes/README
+++ b/games/zsnes/README
@@ -3,11 +3,23 @@ zsnes (SNES emulator)
ZSNES is a Super Nintendo emulator programmed by zsKnight and _Demo_.
On April 2, 2001 the ZSNES project was GPL'ed and its source released
to the public. It currently runs on Windows, Linux, FreeBSD, and DOS.
-Remember that this is a public beta so don't expect this to run on
-your machine.
-
-Note to 64-bit users: Since zsnes can't be compiled for 64-bit, a
-"statified" 32-bit static binary is used. This allows running zsnes on
-a pure 64-bit system, but *without* OpenGL support (meaning the maximum
-window size is 640x480). If you use multilib, you can get OpenGL support
-by building a 32-bit native zsnes package instead.
+
+The original zsnes developers' last release was 1.51, in 2007. This
+build is for xyproto's fork, which is still maintained as of 2023, and
+has several bugfixes and minor enhancements.
+
+Build options (environment variables):
+
+- AO=no - disable libao for audio output. Removes all audio output
+drivers except SDL. Probably not useful.
+
+- DEBUGGER=no - disable the built-in debugger. May give a slight speed
+boost on old/slow systems.
+
+Note to x86_64 users: zsnes can't be built for 64-bit, and it's no
+longer practical to provide a static binary as was done in the past.
+It should be possible to build zsnes if you install multilib, though
+the SlackBuild maintainer hasn't tested this.
+
+Note to ARM/aarch64 users: because zsnes is partially written in x86
+assembly, it can't be built for ARM.
diff --git a/games/zsnes/doinst.sh b/games/zsnes/doinst.sh
index 392c12adb9..65c7e2eeb9 100644
--- a/games/zsnes/doinst.sh
+++ b/games/zsnes/doinst.sh
@@ -1,4 +1,9 @@
if [ -x /usr/bin/update-desktop-database ]; then
- /usr/bin/update-desktop-database -q usr/share/applications
+ /usr/bin/update-desktop-database -q usr/share/applications >/dev/null 2>&1
fi
+if [ -e usr/share/icons/hicolor/icon-theme.cache ]; then
+ if [ -x /usr/bin/gtk-update-icon-cache ]; then
+ /usr/bin/gtk-update-icon-cache -f usr/share/icons/hicolor >/dev/null 2>&1
+ fi
+fi
diff --git a/games/zsnes/sbo.diff b/games/zsnes/sbo.diff
new file mode 100644
index 0000000000..97a8fbbe3a
--- /dev/null
+++ b/games/zsnes/sbo.diff
@@ -0,0 +1,71 @@
+diff -Naur zsnes-2.0.12/Makefile zsnes-2.0.12.patched/Makefile
+--- zsnes-2.0.12/Makefile 2023-05-03 08:02:58.000000000 -0400
++++ zsnes-2.0.12.patched/Makefile 2023-11-14 03:21:25.391574152 -0500
+@@ -408,10 +408,10 @@
+ @echo "LDFLAGS = $(LDFLAGS)"
+
+ install:
+- install -Dm755 zsnes '$(DESTDIR)$(PREFIX)/bin/zsnes'
++ install -s -Dm755 zsnes '$(DESTDIR)$(PREFIX)/games/zsnes'
+ for ICON_SIZE in 16x16 32x32 48x48 64x64 128x128; do \
+ install -Dm644 icons/$${ICON_SIZE}x32.png "$(DESTDIR)$(PREFIX)/share/icons/hicolor/$$ICON_SIZE/apps/io.github.xyproto.zsnes.png" ; \
+ done
+- install -Dm755 linux/zsnes.desktop '$(DESTDIR)$(PREFIX)/share/applications/io.github.xyproto.zsnes.desktop'
+- install -Dm755 linux/io.github.xyproto.zsnes.metainfo.xml -t '$(DESTDIR)$(PREFIX)/share/metainfo'
+- install -Dm644 man/zsnes.1 '$(DESTDIR)$(PREFIX)/share/man/man1/zsnes.1'
++ install -Dm644 linux/zsnes.desktop '$(DESTDIR)$(PREFIX)/share/applications/io.github.xyproto.zsnes.desktop'
++ install -Dm644 linux/io.github.xyproto.zsnes.metainfo.xml -t '$(DESTDIR)$(PREFIX)/share/metainfo'
++ install -Dm644 man/zsnes.1 '$(DESTDIR)$(PREFIX)/man/man6/zsnes.6'
+diff -Naur zsnes-2.0.12/linux/zsnes.desktop zsnes-2.0.12.patched/linux/zsnes.desktop
+--- zsnes-2.0.12/linux/zsnes.desktop 2023-05-03 08:02:58.000000000 -0400
++++ zsnes-2.0.12.patched/linux/zsnes.desktop 2023-11-14 03:21:25.392574152 -0500
+@@ -3,8 +3,8 @@
+ Type=Application
+ Name=ZSNES
+ Comment=Super Nintendo emulator
+-Exec=zsnes %f
+-TryExec=zsnes
++Exec=/usr/games/zsnes %f
++TryExec=/usr/games/zsnes
+ Icon=io.github.xyproto.zsnes
+ Terminal=false
+ StartupNotify=false
+diff -Naur zsnes-2.0.12/man/zsnes.1 zsnes-2.0.12.patched/man/zsnes.1
+--- zsnes-2.0.12/man/zsnes.1 2023-05-03 08:02:58.000000000 -0400
++++ zsnes-2.0.12.patched/man/zsnes.1 2023-11-14 03:24:07.337558911 -0500
+@@ -1,4 +1,4 @@
+-.TH "ZSNES 2.0.12" 1
++.TH ZSNES "6" "November 2023" "2.0.12" "SlackBuilds.org"
+
+ .SH NAME
+ ZSNES - Super Nintendo console emulator
+@@ -10,7 +10,15 @@
+ .B ZSNES
+ is an emulator for the Super Nintendo video game console. It is written in a combination of x86 assembly, C, C++, and PSR. It is currently available on Windows, DOS, x86 Linux, x86 Mac OS X, and x86 BSD.
+
+-Visit http://www.zsnes.com/ for the latest updates.
++Visit https://github.com/xyproto/zsnes for the latest updates.
++
++.B Note:
++This man page hasn't been updated in a long time; see the output
++of
++.B
++zsnes --help
++for a complete, up-to-date list of options. Also, some of the URLs
++listed here no longer work.
+
+ .SH OPTIONS
+ Note: Many of these options can also be set in the GUI.
+@@ -204,10 +212,10 @@
+ http://zsnes-docs.sf.net/
+ .TP
+ ZSNES IRC:
+-#zsnes on irc.freenode.net
++#zsnes on irc.libera.chat
+ .TP
+ ZSNES Docs IRC:
+-#zsnes-docs on irc.freenode.net
++#zsnes-docs on irc.libera.chat
+
+ .SH "COPYRIGHT NOTICE"
+ Copyright \(co 1997-2008 ZSNES Team
diff --git a/games/zsnes/slack-desc b/games/zsnes/slack-desc
index 0c4a74c255..d74e01afa7 100644
--- a/games/zsnes/slack-desc
+++ b/games/zsnes/slack-desc
@@ -11,9 +11,9 @@ zsnes:
zsnes: ZSNES is a Super Nintendo emulator programmed by zsKnight and _Demo_.
zsnes: On April 2, 2001 the ZSNES project was GPL'ed and its source released
zsnes: to the public. It currently runs on Windows, Linux, FreeBSD, and DOS.
-zsnes: Remember that this is a public beta so don't expect this to run on
-zsnes: your machine.
+zsnes: This is xyproto's fork, still maintained as of 2023.
zsnes:
-zsnes: Homepage: http://www.zsnes.com
+zsnes: Build options: AO=@A@, DEBUGGER=@D@
zsnes:
+zsnes: Homepage: https://github.com/xyproto/zsnes
zsnes:
diff --git a/games/zsnes/zsnes-1.51-libpng15.patch b/games/zsnes/zsnes-1.51-libpng15.patch
deleted file mode 100644
index b32c309675..0000000000
--- a/games/zsnes/zsnes-1.51-libpng15.patch
+++ /dev/null
@@ -1,12 +0,0 @@
-Use existing png_set_IHDR() and stop accessing PNG structure members directly
-
---- src/zip/zpng.c
-+++ src/zip/zpng.c
-@@ -129,7 +129,6 @@
- png_set_IHDR(png_ptr, info_ptr, width, height, 8,
- PNG_COLOR_TYPE_RGB, PNG_INTERLACE_NONE,
- PNG_COMPRESSION_TYPE_DEFAULT, PNG_FILTER_TYPE_DEFAULT);
-- info_ptr->color_type = PNG_COLOR_TYPE_RGB;
-
- //Allocate an array of scanline pointers
- row_pointers = (png_bytep*)malloc(height*sizeof(png_bytep));
diff --git a/games/zsnes/zsnes.SlackBuild b/games/zsnes/zsnes.SlackBuild
index 17bd115979..40508e9927 100644
--- a/games/zsnes/zsnes.SlackBuild
+++ b/games/zsnes/zsnes.SlackBuild
@@ -1,38 +1,27 @@
-#!/bin/sh
+#!/bin/bash
# Slackware build script for zsnes
-# Copyright (c) 2008, Antonio Hernández Blas <email removed>
-# Copyright (c) 2010, 2012, Carlos Corbacho <email removed>
-# Copyright (c) 2018, B. Watson <yalhcru@gmail.com>
-# All rights reserved.
-#
-# Redistribution and use in source and binary forms, with or without
-# modification, are permitted provided that the following conditions are met:
-# 1.- Redistributions of source code must retain the above copyright
-# notice, this list of conditions and the following disclaimer.
-#
-# THIS SOFTWARE IS PROVIDED BY THE AUTHOR ``AS IS'' AND ANY
-# EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE IMPLIED
-# WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE ARE
-# DISCLAIMED. IN NO EVENT SHALL THE AUTHOR BE LIABLE FOR ANY
-# DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES
-# (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES;
-# LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND
-# ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT
-# (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF THIS
-# SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
-
-# 20180123 bkw: Finally, 64-bit support! Sort-of. Using a dirty hack.
-# Also, move binary to /usr/games and man page to section 6.
+# Written by B. Watson (urchlay@slackware.uk)
+
+# Licensed under the WTFPL. See http://www.wtfpl.net/txt/copying/ for details.
+
+# Note: this is a completely new-from-template znes.SlackBuild,
+# written from scratch, for the "LTS" 2.x fork from xyproto. It shares
+# no code with the old zsnes.SlackBuild for the 1.51 release.
+
+# TODO: build a static 32-bit binary for x86_64 users. Can't be done
+# on Slackware (we don't have static X11, SDL, png16, nor GL libs),
+# but maybe it could be done on some other distro (one that uses musl,
+# maybe), then hosted as a DOWNLOAD_X86_64.
+
+cd $(dirname $0) ; CWD=$(pwd)
PRGNAM=zsnes
-VERSION=${VERSION:-1.51b}
-BUILD=${BUILD:-4}
+VERSION=${VERSION:-2.0.12}
+BUILD=${BUILD:-1}
TAG=${TAG:-_SBo}
-
-ZSNESSRC="$(echo $VERSION | tr -d .)src"
-ZSNESDIR="_$(echo $VERSION | tr . _)"
+PKGTYPE=${PKGTYPE:-tgz}
if [ -z "$ARCH" ]; then
case "$( uname -m )" in
@@ -42,103 +31,90 @@ if [ -z "$ARCH" ]; then
esac
fi
-CWD=$(pwd)
+# No SLKCFLAGS here. Upstream's got a set of flags they've tested with,
+# and most of the code's in asm anyway.
+case "$ARCH" in
+ i?86) ;;
+ x86_64) MULTI=yes ;;
+ *) BADARCH=yes ;;
+esac
+
+# Hang on to this for use in error message, below.
+OLDARCH="$ARCH"
+
+# Always uses MMX extensions so i686 is correct.
+# PRINT_PACKAGE_NAME and the actual package name will always say i686.
+ARCH="i686"
+
+if [ ! -z "${PRINT_PACKAGE_NAME}" ]; then
+ echo "$PRGNAM-$VERSION-$ARCH-$BUILD$TAG.$PKGTYPE"
+ exit 0
+fi
+
+if [ "$MULTI" = "yes" ]; then
+ echo "=== Attempting multilib build on $OLDARCH..."
+ CTEST=$TMP/`mcookie`.c
+ echo 'main(){}' > $CTEST
+ if ! gcc -w -m32 -o /dev/null $CTEST 2>/dev/null; then
+ echo "*** You don't have multilib installed, bailing."
+ exit 1
+ fi
+ echo "=== Multilib gcc is installed..."
+ rm -f $CTEST
+fi
+
+if [ "$BADARCH" = "yes" ]; then
+ echo "*** Sorry, $PRGNAM can't be built on $OLDARCH." ; exit 1
+fi
+
TMP=${TMP:-/tmp/SBo}
PKG=$TMP/package-$PRGNAM
OUTPUT=${OUTPUT:-/tmp}
-if [ "$ARCH" = "i586" ]; then
- SLKCFLAGS="-O2 -march=i586 -mtune=i686"
-elif [ "$ARCH" = "i686" ]; then
- SLKCFLAGS="-O2 -march=i686 -mtune=i686"
-elif [ "$ARCH" = "x86_64" ]; then
- echo "=== $ARCH detected, using statified binary"
-else
- printf "\n Error: $PRGNAM won't compile on $ARCH\n\n"
- exit 1
-fi
-
set -e
rm -rf $PKG
-mkdir -p $TMP $PKG/usr $OUTPUT
+mkdir -p $TMP $PKG $OUTPUT
cd $TMP
rm -rf $PRGNAM-$VERSION
-tar xvf $CWD/$PRGNAM$ZSNESSRC.tar.bz2
-# Fix the directory tree in zsnes:
-mv $PRGNAM$ZSNESDIR $PRGNAM-$VERSION
-mv $PRGNAM-$VERSION/src/* $PRGNAM-$VERSION
+tar xvf $CWD/$PRGNAM-$VERSION.tar.gz
cd $PRGNAM-$VERSION
-
chown -R root:root .
-find -L . \
- \( -perm 777 -o -perm 775 -o -perm 750 -o -perm 711 -o -perm 555 -o -perm 511 \) \
- -exec chmod 755 {} \; -o \
- \( -perm 666 -o -perm 664 -o -perm 600 -o -perm 444 -o -perm 440 -o -perm 400 \) \
- -exec chmod 644 {} \;
-
-if [ "$ARCH" = "x86_64" ]; then
- # Can't compile, so use a statified binary. This was prepared
- # by compiling zsnes with the same configure flags as below,
- # plus --disable-opengl, then converting with:
- # $ statifier \
- # --set=LD_PRELOAD=/usr/lib/libudev.so:/usr/lib/libaoss.so:/usr/lib/libasound.so \
- # zsnes zsnes.static
- # Unfortunately this won't work with OpenGL because the shared libs
- # are driver-specific: I could preload the nvidia driver, but the
- # result would only work on systems that use nvidia (not AMD or intel,
- # or even nouveau).
- mkdir -p $PKG/usr/games $PKG/usr/doc/$PRGNAM-$VERSION $PKG/usr/man/man1
- xz -d < $CWD/$PRGNAM.static.xz > $PKG/usr/games/$PRGNAM
- chmod 755 $PKG/usr/games/$PRGNAM
-
- # Docs and man page still come from the source.
- cp -a docs/* $PKG/usr/doc/$PRGNAM-$VERSION
- cp -a linux/$PRGNAM.1 $PKG/usr/man/man1
-else
- # GCC 4.7 fixes from Debian
- cat $CWD/0012-Fix-build-with-gcc-4.7.patch | patch -p2 --verbose
-
- # Fix for libpng16 (thanks to Arch Linux)
- # https://projects.archlinux.org/svntogit/community.git/plain/trunk/zsnes-1.51-libpng15.patch?h=packages/zsnes
- patch -p1 < $CWD/zsnes-1.51-libpng15.patch
-
- CFLAGS="$SLKCFLAGS" \
- CXXFLAGS="$SLKCFLAGS" \
- force_arch="$ARCH" \
- ./configure \
- --prefix=/usr \
- --enable-release \
- --disable-cpucheck \
- --disable-debugger
-
- CFLAGS="$SLKCFLAGS" \
- CXXFLAGS="$SLKCFLAGS" \
- force_arch="$ARCH" \
- make
- make install DESTDIR=$PKG
- mv $PKG/usr/bin $PKG/usr/games # configure ignores --bindir, grr!
- strip $PKG/usr/games/$PRGNAM
-fi
-
-# Man page belongs in section 6, since this is a game.
-mkdir -p $PKG/usr/man/man6
-sed '/^\.TH/s,1$,6,' $PKG/usr/man/man1/$PRGNAM.1 | \
- gzip -9c > $PKG/usr/man/man6/$PRGNAM.6.gz
-rm -rf $PKG/usr/man/man1
-
-# Add a .desktop file and icon for good menu integration
-mkdir -p $PKG/usr/share/applications $PKG/usr/share/pixmaps
-install -m 0644 $CWD/zsnes.desktop $PKG/usr/share/applications/zsnes.desktop
-install -m 0644 $CWD/zsnes.png $PKG/usr/share/pixmaps/zsnes.png
-
-mkdir -p $PKG/usr/doc/$PRGNAM-$VERSION
-cp -a docs/* $PKG/usr/doc/$PRGNAM-$VERSION
-cat $CWD/$PRGNAM.SlackBuild > $PKG/usr/doc/$PRGNAM-$VERSION/$PRGNAM.SlackBuild
+find -L . -perm /111 -a \! -perm 755 -a -exec chmod 755 {} + -o \
+ \! -perm /111 -a \! -perm 644 -a -exec chmod 644 {} +
+
+# Patch does these things:
+# - Install binary to /usr/games
+# - Fix install permissions for icon, .desktop, metainfo (no +x).
+# - Install man page to /usr/man (not /usr/share/man)
+# - Change the section in the man page to 6, install in man6.
+# - Use the github URL in the man page, not zsnes.com.
+# - Use full path to binary in .desktop file.
+# I wanted to build a static binary, but Slackware doesn't ship a
+# full set of static libs, plus glibc's getpwnam() and getpwuid()
+# are used (which use dlopen() to load a shared lib at runtime).
+patch -p1 < $CWD/sbo.diff
+
+# Build options.
+# Disabling WITH_AO doesn't seem particularly useful, but allow it.
+# Disabling WITH_DEBUGGER might make sense for slow systems.
+A=no ; D=no
+[ "${AO:-yes}" = "yes" ] && ARGS+="WITH_AO=yes " && A=yes
+[ "${DEBUGGER:-yes}" = "yes" ] && ARGS+="WITH_DEBUGGER=yes " && D=yes
+echo "::: running: make $ARGS"
+
+make $ARGS
+make install DESTDIR=$PKG
+gzip -9 $PKG/usr/man/man*/*
+
+PKGDOC=$PKG/usr/doc/$PRGNAM-$VERSION
+mkdir -p $PKGDOC
+cp -a COPYING* README* TODO* $PKGDOC
+cat $CWD/$PRGNAM.SlackBuild > $PKGDOC/$PRGNAM.SlackBuild
mkdir -p $PKG/install
-cat $CWD/slack-desc > $PKG/install/slack-desc
+sed -e "s,@A@,$A," -e "s,@D@,$D," < $CWD/slack-desc > $PKG/install/slack-desc
cat $CWD/doinst.sh > $PKG/install/doinst.sh
cd $PKG
-/sbin/makepkg -l y -c n $OUTPUT/$PRGNAM-$VERSION-$ARCH-$BUILD$TAG.${PKGTYPE:-tgz}
+/sbin/makepkg -l y -c n $OUTPUT/$PRGNAM-$VERSION-$ARCH-$BUILD$TAG.$PKGTYPE
diff --git a/games/zsnes/zsnes.desktop b/games/zsnes/zsnes.desktop
deleted file mode 100644
index 5d956ff6c4..0000000000
--- a/games/zsnes/zsnes.desktop
+++ /dev/null
@@ -1,12 +0,0 @@
-[Desktop Entry]
-Name=ZSNES
-Comment=SNES Emulator
-Exec=zsnes
-Icon=zsnes
-Terminal=false
-Type=Application
-Categories=Game;Emulator;
-StartupNotify=false
-GenericName=ZSNES Emulator
-X-KDE-StartupNotify=false
-X-DCOP-ServiceType=Multi
diff --git a/games/zsnes/zsnes.info b/games/zsnes/zsnes.info
index 6d36e1575e..4677393f02 100644
--- a/games/zsnes/zsnes.info
+++ b/games/zsnes/zsnes.info
@@ -1,12 +1,10 @@
PRGNAM="zsnes"
-VERSION="1.51b"
-HOMEPAGE="http://www.zsnes.com"
-DOWNLOAD="http://zsnes.sf.net/zsnes151bsrc.tar.bz2"
-MD5SUM="904ee432f378609176ed30c01cf6ea28"
-DOWNLOAD_x86_64="http://zsnes.sf.net/zsnes151bsrc.tar.bz2 \
- https://slackware.uk/~urchlay/src/zsnes.static.xz"
-MD5SUM_x86_64="904ee432f378609176ed30c01cf6ea28 \
- c2289a3cbe04b62fda1f4b896c04b275"
+VERSION="2.0.12"
+HOMEPAGE="https://github.com/xyproto/zsnes"
+DOWNLOAD="https://github.com/xyproto/zsnes/archive/2.0.12/zsnes-2.0.12.tar.gz"
+MD5SUM="6c28a252c887f1d697c1baa960a1db98"
+DOWNLOAD_x86_64=""
+MD5SUM_x86_64=""
REQUIRES=""
MAINTAINER="B. Watson"
-EMAIL="yalhcru@gmail.com"
+EMAIL="urchlay@slackware.uk"
diff --git a/games/zsnes/zsnes.png b/games/zsnes/zsnes.png
deleted file mode 100644
index 24c47f4a93..0000000000
--- a/games/zsnes/zsnes.png
+++ /dev/null
Binary files differ
diff --git a/games/zsxd/zsxd.SlackBuild b/games/zsxd/zsxd.SlackBuild
index 6c2e98850b..1d5291ebc8 100644
--- a/games/zsxd/zsxd.SlackBuild
+++ b/games/zsxd/zsxd.SlackBuild
@@ -1,4 +1,4 @@
-#!/bin/sh
+#!/bin/bash
# Slackware build script for Zelda: Mystery of Solarus XD
@@ -22,14 +22,24 @@
# OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF THIS SOFTWARE, EVEN IF
# ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
+cd $(dirname $0) ; CWD=$(pwd)
+
PRGNAM=zsxd
VERSION=${VERSION:-1.12.2}
BUILD=${BUILD:-1}
TAG=${TAG:-_SBo}
+PKGTYPE=${PKGTYPE:-tgz}
ARCH=noarch
-CWD=$(pwd)
+# If the variable PRINT_PACKAGE_NAME is set, then this script will report what
+# the name of the created package would be, and then exit. This information
+# could be useful to other scripts.
+if [ ! -z "${PRINT_PACKAGE_NAME}" ]; then
+ echo "$PRGNAM-$VERSION-$ARCH-$BUILD$TAG.$PKGTYPE"
+ exit 0
+fi
+
TMP=${TMP:-/tmp/SBo}
PKG=$TMP/package-$PRGNAM
OUTPUT=${OUTPUT:-/tmp}
@@ -69,4 +79,4 @@ cat $CWD/slack-desc > $PKG/install/slack-desc
cat $CWD/doinst.sh > $PKG/install/doinst.sh
cd $PKG
-/sbin/makepkg -l y -c n $OUTPUT/$PRGNAM-$VERSION-$ARCH-$BUILD$TAG.${PKGTYPE:-tgz}
+/sbin/makepkg -l y -c n $OUTPUT/$PRGNAM-$VERSION-$ARCH-$BUILD$TAG.$PKGTYPE
diff --git a/games/ztools/README b/games/ztools/README
index 2c17e52536..4497c3c99d 100644
--- a/games/ztools/README
+++ b/games/ztools/README
@@ -11,6 +11,6 @@ zrename - rename z-code story files according to their z-machine version
zcheck and zdebugtool have been renamed, as "check" and "debugtool" are
very generic names, likely to conflict with some other package.
-zcut, zdebugtool, and zrename are normally distributed separately. They're
-included in this build because they're too small to justify separate
-builds, yet too useful for a Z-Code developer to do without.
+zcut, zdebugtool, and zrename are normally distributed separately.
+They're included in this build because they're too small to justify
+separate builds, yet too useful for a Z-Code developer to do without.
diff --git a/games/ztools/ztools.SlackBuild b/games/ztools/ztools.SlackBuild
index d2a8713afb..8f6bbf5464 100644
--- a/games/ztools/ztools.SlackBuild
+++ b/games/ztools/ztools.SlackBuild
@@ -1,15 +1,20 @@
-#!/bin/sh
+#!/bin/bash
# Slackware build script for ztools
-# Written by B. Watson (yalhcru@gmail.com)
+# Written by B. Watson (urchlay@slackware.uk)
# Licensed under the WTFPL. See http://www.wtfpl.net/txt/copying/ for details.
+# 20211010 bkw: BUILD=2, fix -current build (lha => lhasa caused breakage)
+
+cd $(dirname $0) ; CWD=$(pwd)
+
PRGNAM=ztools
VERSION=${VERSION:-7.3.1}
-BUILD=${BUILD:-1}
+BUILD=${BUILD:-2}
TAG=${TAG:-_SBo}
+PKGTYPE=${PKGTYPE:-tgz}
if [ -z "$ARCH" ]; then
case "$( uname -m )" in
@@ -19,7 +24,11 @@ if [ -z "$ARCH" ]; then
esac
fi
-CWD=$(pwd)
+if [ ! -z "${PRINT_PACKAGE_NAME}" ]; then
+ echo "$PRGNAM-$VERSION-$ARCH-$BUILD$TAG.$PKGTYPE"
+ exit 0
+fi
+
TMP=${TMP:-/tmp/SBo}
PKG=$TMP/package-$PRGNAM
OUTPUT=${OUTPUT:-/tmp}
@@ -52,19 +61,15 @@ mkdir -p $PRGNAM-$VERSION
cd $PRGNAM-$VERSION
# extract 'em all first. None of these have a top-level dir in
-# their archive. Also DebugTools was lha'ed on an Amiga, causing
-# filename weirdness (Makefile => srcMakefile, etc).
+# their archive.
mkdir -p $PRGNAM zcut zdebugtool
( cd $PRGNAM && tar xvf $CWD/$PRGNAM$TARVER.tar.gz )
( cd zcut && unzip $CWD/zcut$ZCUTVER.zip )
-( cd zdebugtool && lha x $CWD/DebugTool_$ZDEBUGVER.lha && rename src '' src* )
+( cd zdebugtool && lha x $CWD/DebugTool_$ZDEBUGVER.lha )
chown -R root:root .
-find -L . \
- \( -perm 777 -o -perm 775 -o -perm 750 -o -perm 711 -o -perm 555 -o -perm 511 \) \
- -exec chmod 755 {} \; -o \
- \( -perm 666 -o -perm 664 -o -perm 600 -o -perm 444 -o -perm 440 -o -perm 400 \) \
- -exec chmod 644 {} \;
+find -L . -perm /111 -a \! -perm 755 -a -exec chmod 755 {} \+ -o \
+ \! -perm /111 -a \! -perm 644 -a -exec chmod 644 {} \+
BINDIR=$PKG/usr/bin
DOCDIR=$PKG/usr/doc/$PRGNAM-$VERSION
@@ -101,13 +106,13 @@ cd zcut
ln -s zcut.1.gz $MANDIR/unmfm.1.gz
cd ..
-cd zdebugtool
+cd zdebugtool/src
patch -p1 < $PATCHDIR/zdebugtool-compilefix.diff
make CFLAGS="$SLKCFLAGS"
install -s -m0755 zdebugtool $BINDIR
- # man page reconstituted from preformatted DebugTools.man
+ # man page reconstituted from preformatted DebugTool.man
gzip -9c < $CWD/zdebugtool.1 > $MANDIR/zdebugtool.1.gz
-cd ..
+cd ../..
# Also include my own modest z-code utility. It replaces the zren.exe
# that ships with zcut.
@@ -120,4 +125,4 @@ mkdir -p $PKG/install
cat $CWD/slack-desc > $PKG/install/slack-desc
cd $PKG
-/sbin/makepkg -l y -c n $OUTPUT/$PRGNAM-$VERSION-$ARCH-$BUILD$TAG.${PKGTYPE:-tgz}
+/sbin/makepkg -l y -c n $OUTPUT/$PRGNAM-$VERSION-$ARCH-$BUILD$TAG.$PKGTYPE
diff --git a/games/ztools/ztools.info b/games/ztools/ztools.info
index 97115177b6..de214450ff 100644
--- a/games/ztools/ztools.info
+++ b/games/ztools/ztools.info
@@ -1,9 +1,9 @@
PRGNAM="ztools"
VERSION="7.3.1"
-HOMEPAGE="http://ifarchive.org/indexes/if-archiveXinfocomXtoolsXztools.html"
-DOWNLOAD="http://ifarchive.org/if-archive/infocom/tools/ztools/ztools731.tar.gz \
- http://www.ifarchive.org/if-archive/infocom/tools/zcut12.zip \
- http://www.ifarchive.org/if-archive/infocom/tools/DebugTool_111.lha \
+HOMEPAGE="https://ifarchive.org/indexes/if-archiveXinfocomXtoolsXztools.html"
+DOWNLOAD="https://ifarchive.org/if-archive/infocom/tools/ztools/ztools731.tar.gz \
+ https://www.ifarchive.org/if-archive/infocom/tools/zcut12.zip \
+ https://www.ifarchive.org/if-archive/infocom/tools/DebugTool_111.lha \
https://slackware.uk/~urchlay/src/zrename"
MD5SUM="f5e6abb7011817e48debee828895a500 \
c815ced0706fc6454bea18d0046c5afe \
@@ -13,4 +13,4 @@ DOWNLOAD_x86_64=""
MD5SUM_x86_64=""
REQUIRES=""
MAINTAINER="B. Watson"
-EMAIL="yalhcru@gmail.com"
+EMAIL="urchlay@slackware.uk"
diff --git a/games/ztrack/ztrack.SlackBuild b/games/ztrack/ztrack.SlackBuild
index fddf5c536c..ffe33337b2 100644
--- a/games/ztrack/ztrack.SlackBuild
+++ b/games/ztrack/ztrack.SlackBuild
@@ -1,11 +1,14 @@
-#!/bin/sh
+#!/bin/bash
# Slackware build script for ztrack
# Written by Dan-Simon Myrland <dansimon@radiotube.org>
+cd $(dirname $0) ; CWD=$(pwd)
+
PRGNAM=ztrack
VERSION=${VERSION:-1.0}
BUILD=${BUILD:-1}
TAG=${TAG:-_SBo}
+PKGTYPE=${PKGTYPE:-tgz}
if [ -z "$ARCH" ]; then
case "$( uname -m )" in
@@ -15,7 +18,14 @@ if [ -z "$ARCH" ]; then
esac
fi
-CWD=$(pwd)
+# If the variable PRINT_PACKAGE_NAME is set, then this script will report what
+# the name of the created package would be, and then exit. This information
+# could be useful to other scripts.
+if [ ! -z "${PRINT_PACKAGE_NAME}" ]; then
+ echo "$PRGNAM-$VERSION-$ARCH-$BUILD$TAG.$PKGTYPE"
+ exit 0
+fi
+
TMP=${TMP:-/tmp/SBo}
PKG=$TMP/package-$PRGNAM
OUTPUT=${OUTPUT:-/tmp}
@@ -68,4 +78,4 @@ mkdir -p $PKG/install
cat $CWD/slack-desc > $PKG/install/slack-desc
cd $PKG
-/sbin/makepkg -l y -c n $OUTPUT/$PRGNAM-$VERSION-$ARCH-$BUILD$TAG.${PKGTYPE:-tgz}
+/sbin/makepkg -l y -c n $OUTPUT/$PRGNAM-$VERSION-$ARCH-$BUILD$TAG.$PKGTYPE