summaryrefslogtreecommitdiffstats
path: root/games
diff options
context:
space:
mode:
Diffstat (limited to 'games')
-rw-r--r--games/0ad-data/0ad-data.SlackBuild15
-rw-r--r--games/0ad-data/0ad-data.info6
-rw-r--r--games/0ad-data/README5
-rw-r--r--games/0ad/0ad.SlackBuild47
-rw-r--r--games/0ad/0ad.info8
-rw-r--r--games/0ad/README7
-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-desc (renamed from games/vcmi-resolutions/slack-desc)22
-rw-r--r--games/7kaa/7kaa.SlackBuild6
-rw-r--r--games/7kaa/7kaa.info6
-rw-r--r--games/Chatbot-Eliza/Chatbot-Eliza.SlackBuild26
-rw-r--r--games/Chatbot-Eliza/Chatbot-Eliza.info6
-rw-r--r--games/CorsixTH/CorsixTH.SlackBuild11
-rw-r--r--games/CorsixTH/CorsixTH.info8
-rw-r--r--games/CorsixTH/slack-desc4
-rw-r--r--games/FlightGear-data/FlightGear-data.SlackBuild3
-rw-r--r--games/FlightGear-data/FlightGear-data.info8
-rw-r--r--games/FlightGear-data/README2
-rw-r--r--games/FlightGear/FlightGear.SlackBuild17
-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/README6
-rw-r--r--games/KAdventure/KAdventure.SlackBuild33
-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.SlackBuild89
-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/etlegacy-from-source/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.SlackBuild14
-rw-r--r--games/OpenJK/OpenJK.info2
-rw-r--r--games/OpenRA/OpenRA.SlackBuild30
-rw-r--r--games/OpenRA/OpenRA.info16
-rw-r--r--games/OpenRA/fetch-thirdparty-deps.sh.new18
-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.SlackBuild2
-rw-r--r--games/QuickNES-Core/QuickNES-Core.SlackBuild13
-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-desc (renamed from games/z26/slack-desc)22
-rw-r--r--games/RetroArch/README5
-rw-r--r--games/RetroArch/RetroArch.SlackBuild23
-rw-r--r--games/RetroArch/RetroArch.info6
-rw-r--r--games/RetroArch/gles.patch32
-rw-r--r--games/SLADE/SLADE.SlackBuild85
-rw-r--r--games/SLADE/SLADE.info10
-rw-r--r--games/Scorched3D/Scorched3D.SlackBuild13
-rw-r--r--games/Sokoban/Sokoban.info6
-rw-r--r--games/SpaceCadetPinball/README24
-rw-r--r--games/SpaceCadetPinball/SpaceCadetPinball.SlackBuild (renamed from games/glPortal/glPortal.SlackBuild)63
-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.SlackBuild29
-rw-r--r--games/SpaceZero/SpaceZero.desktop5
-rw-r--r--games/SpaceZero/SpaceZero.info2
-rw-r--r--games/UrbanTerror/UrbanTerror.SlackBuild53
-rw-r--r--games/VASSAL/VASSAL.SlackBuild2
-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.SlackBuild53
-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/abuse/README12
-rw-r--r--games/abuse/abuse-0.8-sound_fix.patch12
-rw-r--r--games/abuse/abuse.SlackBuild81
-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.SlackBuild94
-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.SlackBuild12
-rw-r--r--games/adl/adl.info2
-rw-r--r--games/adl/fixman.sh2
-rw-r--r--games/advancemame/advancemame.SlackBuild29
-rw-r--r--games/advancemame/advancemame.info8
-rw-r--r--games/advancemame/compilefix.diff24
-rw-r--r--games/advancemame/joverride.dat.xzbin8640 -> 0 bytes
-rw-r--r--games/advancescan/advancescan.SlackBuild2
-rw-r--r--games/advancescan/advancescan.info2
-rw-r--r--games/ags/ags.SlackBuild26
-rw-r--r--games/ags/ags.info8
-rw-r--r--games/aisleriot/aisleriot.SlackBuild53
-rw-r--r--games/aisleriot/aisleriot.info6
-rw-r--r--games/aisleriot/guile3.diff20
-rw-r--r--games/aklabeth/aklabeth.SlackBuild2
-rw-r--r--games/aklabeth/aklabeth.info2
-rw-r--r--games/alephone/alephone.SlackBuild9
-rw-r--r--games/alephone/alephone.info8
-rw-r--r--games/alephone/doinst.sh6
-rw-r--r--games/alienarena/alienarena-7.66-no-qglBlitFramebufferEXT.patch41
-rw-r--r--games/alienarena/alienarena.SlackBuild34
-rw-r--r--games/an/an.SlackBuild12
-rw-r--r--games/an/an.info6
-rw-r--r--games/angband/README6
-rw-r--r--games/angband/angband.SlackBuild65
-rw-r--r--games/angband/angband.desktop2
-rw-r--r--games/angband/angband.info10
-rw-r--r--games/antares/antares.SlackBuild16
-rw-r--r--games/antimicro/README22
-rw-r--r--games/antimicro/antimicro.info10
-rw-r--r--games/antimicrox/README19
-rw-r--r--games/antimicrox/antimicrox.SlackBuild (renamed from games/antimicro/antimicro.SlackBuild)65
-rw-r--r--games/antimicrox/antimicrox.desktop18
-rw-r--r--games/antimicrox/antimicrox.info10
-rw-r--r--games/antimicrox/doinst.sh (renamed from games/antimicro/doinst.sh)6
-rw-r--r--games/antimicrox/slack-desc19
-rw-r--r--games/ardentryst/ardentryst.info6
-rw-r--r--games/armagetronad/armagetronad.SlackBuild15
-rw-r--r--games/armagetronad/doinst.sh8
-rw-r--r--games/arnold-cpc/arnold-cpc.SlackBuild25
-rw-r--r--games/arnold-cpc/arnold-cpc.desktop2
-rw-r--r--games/arx-libertatis/arx-libertatis.SlackBuild23
-rw-r--r--games/arx-libertatis/arx-libertatis.info8
-rw-r--r--games/arx-libertatis/doinst.sh6
-rw-r--r--games/asc/asc.SlackBuild2
-rw-r--r--games/asc/asc.info2
-rw-r--r--games/assaultcube-reloaded/assaultcube-reloaded.SlackBuild19
-rw-r--r--games/assaultcube-reloaded/assaultcube-reloaded.info10
-rw-r--r--games/assaultcube/assaultcube.SlackBuild8
-rw-r--r--games/asteroidsinfinity/asteroidsinfinity.SlackBuild2
-rw-r--r--games/asteroidsinfinity/asteroidsinfinity.info4
-rw-r--r--games/astromenace/astromenace.SlackBuild6
-rw-r--r--games/astromenace/astromenace.info8
-rw-r--r--games/atari++/atari++.SlackBuild5
-rw-r--r--games/atari++/atari++.info8
-rw-r--r--games/atari800/atari800.SlackBuild33
-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.SlackBuild2
-rw-r--r--games/atari800_roms/atari800_roms.info2
-rw-r--r--games/barrage/barrage.SlackBuild6
-rw-r--r--games/bastet/bastet.SlackBuild2
-rw-r--r--games/bastet/bastet.info2
-rw-r--r--games/beetle-psx-libretro/README39
-rw-r--r--games/beetle-psx-libretro/beetle-psx-libretro.SlackBuild108
-rw-r--r--games/beetle-psx-libretro/beetle-psx-libretro.info10
-rw-r--r--games/beetle-psx-libretro/slack-desc19
-rw-r--r--games/berusky-data/berusky-data.info2
-rw-r--r--games/berusky/berusky.SlackBuild33
-rw-r--r--games/berusky/berusky.desktop4
-rw-r--r--games/berusky/berusky.info6
-rw-r--r--games/berusky2-data/berusky2-data.SlackBuild6
-rw-r--r--games/berusky2-data/berusky2-data.info8
-rw-r--r--games/berusky2/berusky2.SlackBuild22
-rw-r--r--games/berusky2/berusky2.desktop11
-rw-r--r--games/berusky2/berusky2.info8
-rw-r--r--games/blasphemer/README24
-rw-r--r--games/blasphemer/blasphemer.SlackBuild (renamed from games/vcmi-wog/vcmi-wog.SlackBuild)30
-rw-r--r--games/blasphemer/blasphemer.info10
-rw-r--r--games/blasphemer/slack-desc19
-rw-r--r--games/blobwars/README13
-rw-r--r--games/blobwars/blobwars.SlackBuild33
-rw-r--r--games/blobwars/doinst.sh5
-rw-r--r--games/blobwars/slack-desc18
-rw-r--r--games/bloodcm/README13
-rw-r--r--games/bloodcm/bloodcm.SlackBuild70
-rw-r--r--games/bloodcm/bloodcm.info10
-rw-r--r--games/bloodfrontier/bloodfrontier.SlackBuild6
-rw-r--r--games/bluemoon/bluemoon.SlackBuild6
-rw-r--r--games/bluez-sixaxis/bluez-sixaxis.SlackBuild9
-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.SlackBuild20
-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/gens-gs/doinst.sh)0
-rw-r--r--games/boosteroid/slack-desc19
-rw-r--r--games/boswars/boswars.SlackBuild6
-rw-r--r--games/boswars/boswars.info6
-rw-r--r--games/brickout/brickout.SlackBuild2
-rw-r--r--games/brickout/brickout.info2
-rw-r--r--games/briquolo/briquolo.SlackBuild35
-rw-r--r--games/brutalchess/brutalchess.info4
-rw-r--r--games/bstone/bstone.6311
-rw-r--r--games/bstone/bstone.SlackBuild6
-rw-r--r--games/bstone/bstone.info8
-rw-r--r--games/bstone/bstone.rst288
-rw-r--r--games/burgerspace/burgerspace.SlackBuild11
-rw-r--r--games/burgerspace/burgerspace.info8
-rw-r--r--games/burgerspace/doinst.sh6
-rw-r--r--games/bzflag/bzflag.SlackBuild15
-rw-r--r--games/bzflag/bzflag.info10
-rw-r--r--games/bzflag/slack-desc2
-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.SlackBuild2
-rw-r--r--games/ceferino/ceferino.info2
-rw-r--r--games/cgames/cgames.SlackBuild40
-rw-r--r--games/cgames/cgames.info6
-rw-r--r--games/cgmadness/cgmadness.SlackBuild36
-rw-r--r--games/cgmadness/cgmadness.desktop2
-rw-r--r--games/cgoban/cgoban.SlackBuild6
-rw-r--r--games/chessx/chessx.SlackBuild10
-rw-r--r--games/chessx/chessx.info8
-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.SlackBuild2
-rw-r--r--games/chexquest3/chexquest3.info2
-rw-r--r--games/chocolate-doom/chocolate-doom.SlackBuild2
-rw-r--r--games/chocolate-doom/chocolate-doom.info2
-rw-r--r--games/chocolate_duke3D/README16
-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.SlackBuild124
-rw-r--r--games/chocolate_duke3D/chocolate_duke3D.info10
-rw-r--r--games/chocolate_duke3D/slack-desc19
-rw-r--r--games/circuslinux/circuslinux.SlackBuild7
-rw-r--r--games/circuslinux/circuslinux.info2
-rw-r--r--games/ckmame/ckmame.SlackBuild17
-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.SlackBuild6
-rw-r--r--games/clonekeen/clonekeen.desktop4
-rw-r--r--games/clonekeen/clonekeen.info4
-rw-r--r--games/colem/colem.SlackBuild2
-rw-r--r--games/colem/colem.info2
-rw-r--r--games/commandergenius/commandergenius.SlackBuild5
-rw-r--r--games/commandergenius/commandergenius.info8
-rw-r--r--games/connectagram/connectagram.SlackBuild6
-rw-r--r--games/cosmic_assault/cosmic_assault.SlackBuild31
-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.SlackBuild2
-rw-r--r--games/cosmosmash/cosmosmash.info2
-rw-r--r--games/cowsay/cowsay.SlackBuild30
-rw-r--r--games/cowsay/cowsay.SlackBuild.patch91
-rw-r--r--games/cowsay/cowsay.info6
-rw-r--r--games/cpat/cpat.SlackBuild18
-rw-r--r--games/crack-attack/crack-attack.SlackBuild18
-rw-r--r--games/crawl/README (renamed from games/stone_soup/README)0
-rw-r--r--games/crawl/crawl.SlackBuild (renamed from games/stone_soup/stone_soup.SlackBuild)32
-rw-r--r--games/crawl/crawl.desktop (renamed from games/stone_soup/stone_soup.desktop)2
-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/stone_soup/doinst.sh)0
-rw-r--r--games/crawl/slack-desc19
-rw-r--r--games/crimson/crimson.SlackBuild6
-rw-r--r--games/crispy-doom/README4
-rw-r--r--games/crispy-doom/crispy-doom.SlackBuild17
-rw-r--r--games/crispy-doom/crispy-doom.info8
-rw-r--r--games/crossfire-client/crossfire-client.SlackBuild6
-rw-r--r--games/crossfire-client/crossfire-client.info6
-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/curseofwar/curseofwar.SlackBuild4
-rw-r--r--games/curseofwar/curseofwar.info6
-rw-r--r--games/cutemaze/cutemaze.SlackBuild6
-rw-r--r--games/cuyo/cuyo.SlackBuild6
-rw-r--r--games/cyphesis/cyphesis.SlackBuild2
-rw-r--r--games/d1x-rebirth/d1x-rebirth.SlackBuild43
-rw-r--r--games/d1x-rebirth/d1x-rebirth.info6
-rw-r--r--games/d2x-rebirth/d2x-rebirth.SlackBuild44
-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.SlackBuild59
-rw-r--r--games/darkplaces/darkplaces.desktop4
-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/defendguin.SlackBuild52
-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.SlackBuild71
-rw-r--r--games/desmume/desmume.info12
-rw-r--r--games/desmume/doinst.sh6
-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.SlackBuild36
-rw-r--r--games/dfarc/doinst.sh9
-rw-r--r--games/dgen/dgen.SlackBuild25
-rw-r--r--games/dice/dice.SlackBuild25
-rw-r--r--games/dice/dice.info2
-rw-r--r--games/digger/digger.SlackBuild5
-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/README34
-rw-r--r--games/dolphin-emu/doinst.sh5
-rw-r--r--games/dolphin-emu/dolphin-emu.SlackBuild93
-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/domination.SlackBuild16
-rw-r--r--games/domination/domination.info10
-rw-r--r--games/doom_shareware_data/doom_shareware_data.SlackBuild2
-rw-r--r--games/doom_shareware_data/doom_shareware_data.info2
-rw-r--r--games/doomretro/README16
-rw-r--r--games/doomretro/doomretro.SlackBuild80
-rw-r--r--games/doomretro/doomretro.info10
-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.SlackBuild48
-rw-r--r--games/doomsday/doomsday.info6
-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.SlackBuild56
-rw-r--r--games/doomseeker/doomseeker.info10
-rw-r--r--games/ds-models/README36
-rw-r--r--games/ds-models/ds-models.SlackBuild40
-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.sh (renamed from games/transfusion/doinst.sh)0
-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/dunelegacy.SlackBuild7
-rw-r--r--games/dunelegacy/dunelegacy.info4
-rw-r--r--games/dungeon/dungeon.SlackBuild2
-rw-r--r--games/dungeon/dungeon.info2
-rw-r--r--games/dustrac/dustrac.SlackBuild19
-rw-r--r--games/dustrac/dustrac.info10
-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/edgar/edgar.SlackBuild33
-rw-r--r--games/edgar/edgar.info6
-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.desktop (renamed from games/eduke32/eduke32.desktop)3
-rw-r--r--games/eduke32/desktop/fury.desktop8
-rw-r--r--games/eduke32/desktop/mapster32.desktop (renamed from games/eduke32/mapster32.desktop)5
-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.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/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.SlackBuild43
-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.SlackBuild25
-rw-r--r--games/eduke32_shareware_data/eduke32_shareware_data.info2
-rw-r--r--games/eduke32_shareware_data/slack-desc2
-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/ember.info12
-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/endgame-singularity.info2
-rw-r--r--games/endgame-singularity/slack-desc2
-rw-r--r--games/endless-sky/endless-sky.SlackBuild9
-rw-r--r--games/endless-sky/endless-sky.info6
-rw-r--r--games/enigma-marbles/README16
-rw-r--r--games/enigma-marbles/doinst.sh (renamed from games/ember/doinst.sh)1
-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.SlackBuild2
-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.SlackBuild (renamed from games/ember/ember.SlackBuild)95
-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-desc (renamed from games/ember/slack-desc)22
-rw-r--r--games/etlegacy-from-source/README25
-rw-r--r--games/etlegacy-from-source/etlegacy-from-source.SlackBuild196
-rw-r--r--games/etlegacy-from-source/etlegacy-from-source.info16
-rw-r--r--games/etlegacy-from-source/files/etlegacy.desktop9
-rw-r--r--games/etlegacy-from-source/files/etlegacy.svg100
-rw-r--r--games/etlegacy-from-source/files/get_tarball_from_git.sh25
-rw-r--r--games/etlegacy-from-source/files/openurl.sh15
-rw-r--r--games/etlegacy-from-source/slack-desc19
-rw-r--r--games/etlegacy/README8
-rw-r--r--games/etlegacy/doinst.sh7
-rw-r--r--games/etlegacy/etlegacy.SlackBuild47
-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.svg100
-rw-r--r--games/eureka/README2
-rw-r--r--games/eureka/eureka.SlackBuild32
-rw-r--r--games/eureka/eureka.info2
-rw-r--r--games/ezquake/README7
-rw-r--r--games/ezquake/doinst.sh (renamed from games/steem/doinst.sh)1
-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/f1spirit.SlackBuild6
-rw-r--r--games/fceux/README2
-rw-r--r--games/fceux/fceux.SlackBuild12
-rw-r--r--games/fceux/fceux.info6
-rw-r--r--games/ffgo/doinst.sh2
-rw-r--r--games/ffgo/ffgo.SlackBuild14
-rw-r--r--games/ffgo/ffgo.info8
-rw-r--r--games/fgo/doinst.sh2
-rw-r--r--games/fgo/fgo.SlackBuild13
-rw-r--r--games/fgo/fgo.info2
-rw-r--r--games/fifengine/8072f18a9bf4e75c3e1b197b6ccda11e82954460.patch25
-rw-r--r--games/fifengine/d14f232f4cd9a00b05d6872957070e8c020f515d.patch22
-rw-r--r--games/fifengine/fifengine.SlackBuild6
-rw-r--r--games/fifengine/fifengine.info6
-rw-r--r--games/fillets-ng/fillets-ng.SlackBuild6
-rw-r--r--games/fizmo/fizmo.SlackBuild2
-rw-r--r--games/fizmo/fizmo.info2
-rw-r--r--games/flare-game/flare-game.SlackBuild5
-rw-r--r--games/flare-game/flare-game.info6
-rw-r--r--games/flare/flare.SlackBuild5
-rw-r--r--games/flare/flare.info6
-rw-r--r--games/foobillardplus/foobillardplus.info2
-rw-r--r--games/fortune-dharma/fortune-dharma.SlackBuild16
-rw-r--r--games/fortune-dune/fortune-dune.SlackBuild2
-rw-r--r--games/fortune-dune/fortune-dune.info2
-rw-r--r--games/fortune-farscape/fortune-farscape.SlackBuild2
-rw-r--r--games/fortune-farscape/fortune-farscape.info2
-rw-r--r--games/fortune-futurama/fortune-futurama.SlackBuild2
-rw-r--r--games/fortune-futurama/fortune-futurama.info2
-rw-r--r--games/fortune-game_of_thrones/fortune-game_of_thrones.SlackBuild14
-rw-r--r--games/fortune-game_of_thrones/fortune-game_of_thrones.info2
-rw-r--r--games/fortune-noobfarm/fortune-noobfarm.SlackBuild2
-rw-r--r--games/fortune-noobfarm/fortune-noobfarm.info2
-rw-r--r--games/fortune-slackware/fortune-slackware.SlackBuild2
-rw-r--r--games/fortune-slackware/fortune-slackware.info2
-rw-r--r--games/fortune-starwars/fortune-starwars.SlackBuild2
-rw-r--r--games/fortune-starwars/fortune-starwars.info2
-rw-r--r--games/fortune_doctor_who/fortune_doctor_who.SlackBuild7
-rw-r--r--games/fortune_doctor_who/fortune_doctor_who.info2
-rw-r--r--games/fortune_firefly/README2
-rw-r--r--games/fortune_firefly/fortune_firefly.SlackBuild35
-rw-r--r--games/fortune_firefly/fortune_firefly.info10
-rw-r--r--games/freeblocks/freeblocks.SlackBuild2
-rw-r--r--games/freeblocks/freeblocks.info2
-rw-r--r--games/freeciv/freeciv.SlackBuild20
-rw-r--r--games/freeciv/freeciv.info6
-rw-r--r--games/freedink/README2
-rw-r--r--games/freedink/README.SBo (renamed from games/freedink/README.SlackBuild)12
-rw-r--r--games/freedoom/freedoom.SlackBuild5
-rw-r--r--games/freedoom/freedoom.info12
-rw-r--r--games/freedroid/freedroid.SlackBuild36
-rw-r--r--games/freedroid/freedroid.desktop4
-rw-r--r--games/freedroidrpg/freedroidrpg.SlackBuild25
-rw-r--r--games/freedroidrpg/freedroidrpg.desktop2
-rw-r--r--games/freeminer/freeminer.SlackBuild51
-rw-r--r--games/freeminer/freeminer.info6
-rw-r--r--games/freeorion/freeorion.SlackBuild23
-rw-r--r--games/freeorion/freeorion.info8
-rw-r--r--games/freeorion/ftb.patch103
-rw-r--r--games/frogatto/fbsd-fixes.patch113
-rw-r--r--games/frogatto/frogatto-boost-1.70.patch37
-rw-r--r--games/frogatto/frogatto.SlackBuild17
-rw-r--r--games/frogatto/frogatto.info2
-rw-r--r--games/frogatto/slack-desc2
-rw-r--r--games/frotz/frotz.SlackBuild11
-rw-r--r--games/frotz/frotz.info8
-rw-r--r--games/frozen-bubble/frozen-bubble.info2
-rw-r--r--games/fs-uae-arcade/fs-uae-arcade.SlackBuild6
-rw-r--r--games/fs-uae-launcher/fs-uae-launcher.SlackBuild6
-rw-r--r--games/fs-uae/fs-uae.SlackBuild12
-rw-r--r--games/fs-uae/fs-uae.info6
-rw-r--r--games/fs2open/fs2open.SlackBuild32
-rw-r--r--games/fs2open/fs2open.info2
-rw-r--r--games/fuse-emulator/fuse-emulator.SlackBuild4
-rw-r--r--games/fuse-emulator/fuse-emulator.info8
-rw-r--r--games/galaxyv2/galaxyv2.SlackBuild4
-rw-r--r--games/galaxyv2/galaxyv2.info6
-rw-r--r--games/garden/garden.SlackBuild21
-rw-r--r--games/gargoyle/doinst.sh10
-rw-r--r--games/gargoyle/gargoyle.SlackBuild48
-rw-r--r--games/gargoyle/gargoyle.info8
-rw-r--r--games/gbrainy/gbrainy.SlackBuild9
-rw-r--r--games/gbrainy/gbrainy.info10
-rw-r--r--games/gemrb/gemrb.SlackBuild7
-rw-r--r--games/gemrb/gemrb.info6
-rw-r--r--games/gens-gs/README16
-rw-r--r--games/gens-gs/gens-gs.SlackBuild98
-rw-r--r--games/gens-gs/gens-gs.info10
-rw-r--r--games/gens-gs/gens-gtk.patch187
-rw-r--r--games/ggmud/ggmud-wrapper.sh8
-rw-r--r--games/ggmud/ggmud.SlackBuild37
-rw-r--r--games/ggmud/ggmud.desktop4
-rw-r--r--games/ggmud/ggmud.info6
-rw-r--r--games/gl-117/gl-117.SlackBuild6
-rw-r--r--games/glPortal/README10
-rw-r--r--games/glPortal/bullet286.patch38
-rw-r--r--games/glPortal/glPortal.info18
-rw-r--r--games/glPortal/slack-desc19
-rw-r--r--games/glbsp/glbsp.SlackBuild2
-rw-r--r--games/glbsp/glbsp.info4
-rw-r--r--games/glob2/glob2.SlackBuild9
-rw-r--r--games/glob2/patches/c++14.patch (renamed from games/glob2/c++14.patch)0
-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.SlackBuild6
-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/gnonogram-controller.diff.txt22
-rw-r--r--games/gnonograms/gnonograms.SlackBuild21
-rw-r--r--games/gnubg/gnubg.SlackBuild15
-rw-r--r--games/gnubg/gnubg.info8
-rw-r--r--games/gnurobbo/gnurobbo.SlackBuild23
-rw-r--r--games/gnuski/gnuski.SlackBuild2
-rw-r--r--games/golly/golly.SlackBuild49
-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/gottet/README4
-rw-r--r--games/gottet/gottet.SlackBuild7
-rw-r--r--games/gottet/gottet.info2
-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-desc (renamed from games/antimicro/slack-desc)22
-rw-r--r--games/gtkballs/gtkballs.info2
-rw-r--r--games/gtklife/gtklife.SlackBuild8
-rw-r--r--games/gtklife/gtklife.info10
-rw-r--r--games/gzdoom-legacy/gzdoom-legacy.SlackBuild2
-rw-r--r--games/gzdoom-legacy/gzdoom-legacy.info2
-rw-r--r--games/gzdoom/README15
-rw-r--r--games/gzdoom/gcc13-missing-includes.diff60
-rw-r--r--games/gzdoom/gzdoom.SlackBuild16
-rw-r--r--games/gzdoom/gzdoom.info8
-rw-r--r--games/hack-of-life/doinst.sh9
-rw-r--r--games/hack-of-life/hack-of-life.SlackBuild25
-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/hatari.SlackBuild25
-rw-r--r--games/hatari/hatari.info8
-rw-r--r--games/hatari/manpage.2.3.1.diff2
-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.diff2
-rw-r--r--games/hatari_tos_roms/hatari_tos_roms.SlackBuild16
-rw-r--r--games/hatari_tos_roms/hatari_tos_roms.info8
-rw-r--r--games/haxima-nazghul/README3
-rw-r--r--games/haxima-nazghul/haxima-nazghul.SlackBuild40
-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/hedgewars.SlackBuild71
-rw-r--r--games/hedgewars/hedgewars.info10
-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/heretic_shareware_data/heretic_shareware_data.SlackBuild2
-rw-r--r--games/heretic_shareware_data/heretic_shareware_data.info2
-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.SlackBuild6
-rw-r--r--games/hexen_demo_data/hexen_demo_data.SlackBuild2
-rw-r--r--games/hexen_demo_data/hexen_demo_data.info2
-rw-r--r--games/hexen_demo_data/slack-desc4
-rw-r--r--games/hexglass/hexglass.SlackBuild31
-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-flags.diff66
-rw-r--r--games/higan/higan-paths.diff61
-rw-r--r--games/higan/higan.SlackBuild52
-rw-r--r--games/higan/higan.desktop8
-rw-r--r--games/higan/higan.info12
-rw-r--r--games/higan/icarus.desktop8
-rw-r--r--games/higan/includes.diff8
-rw-r--r--games/hnefatafl/hnefatafl.SlackBuild6
-rw-r--r--games/ho1/ho1.info4
-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/README6
-rw-r--r--games/icebreaker/icebreaker.SlackBuild45
-rw-r--r--games/icebreaker/icebreaker.desktop6
-rw-r--r--games/icebreaker/icebreaker.info8
-rw-r--r--games/ifm/ifm.SlackBuild41
-rw-r--r--games/img2xterm/img2xterm.SlackBuild2
-rw-r--r--games/img2xterm/img2xterm.info2
-rw-r--r--games/instead/instead.SlackBuild2
-rw-r--r--games/instead/instead.info6
-rw-r--r--games/ioquake3/ioquake3.SlackBuild2
-rw-r--r--games/ioquake3/ioquake3.info6
-rw-r--r--games/javacpc/javacpc.SlackBuild8
-rw-r--r--games/javacpc/javacpc.info8
-rw-r--r--games/javacpc/javacpc.sh2
-rw-r--r--games/jezzball-kazzmir/jezzball-kazzmir.SlackBuild2
-rw-r--r--games/jezzball-kazzmir/jezzball-kazzmir.info2
-rw-r--r--games/jfsw/README13
-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.desktop (renamed from games/jfsw/jfsw.desktop)2
-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.SlackBuild221
-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.SlackBuild49
-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.SlackBuild55
-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.SlackBuild55
-rw-r--r--games/jfsw_registered_data/jfsw_registered_data.info2
-rw-r--r--games/jfsw_twin_dragon/jfsw_twin_dragon.SlackBuild5
-rw-r--r--games/jfsw_twin_dragon/jfsw_twin_dragon.info2
-rw-r--r--games/jfsw_wanton_destruction/jfsw_wanton_destruction.SlackBuild5
-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-desc (renamed from games/gens-gs/slack-desc)22
-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-desc (renamed from games/bloodcm/slack-desc)22
-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.SlackBuild7
-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/README4
-rw-r--r--games/jzintv/README_ROMs.txt50
-rw-r--r--games/jzintv/jzintv.SlackBuild22
-rw-r--r--games/jzintv/jzintv.info10
-rw-r--r--games/kardsgt/doinst.sh6
-rw-r--r--games/kardsgt/kardsgt.SlackBuild37
-rw-r--r--games/kardsgt/kardsgt.desktop2
-rw-r--r--games/kardsgt/kardsgt.info2
-rw-r--r--games/kildclient/kildclient.SlackBuild11
-rw-r--r--games/kildclient/kildclient.info8
-rw-r--r--games/koules/koules.SlackBuild14
-rw-r--r--games/koules/koules.info2
-rw-r--r--games/koules/koules.kde2
-rw-r--r--games/koules/patches/joystickdevs.diff21
-rw-r--r--games/koules/slack-desc1
-rw-r--r--games/larn/larn.SlackBuild37
-rw-r--r--games/larn/larn.info8
-rw-r--r--games/larn/slack-desc6
-rw-r--r--games/lbreakouthd/README10
-rw-r--r--games/lbreakouthd/doinst.sh9
-rw-r--r--games/lbreakouthd/lbreakouthd.SlackBuild (renamed from games/wmquake/wmquake.SlackBuild)63
-rw-r--r--games/lbreakouthd/lbreakouthd.info10
-rw-r--r--games/lbreakouthd/slack-desc19
-rw-r--r--games/lgogdownloader/lgogdownloader.SlackBuild24
-rw-r--r--games/lgogdownloader/lgogdownloader.info6
-rw-r--r--games/lightyears/lightyears.info4
-rw-r--r--games/lincity-ng/lincity-ng.SlackBuild6
-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.SlackBuild77
-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/lmarbles.SlackBuild2
-rw-r--r--games/lmarbles/lmarbles.info6
-rw-r--r--games/lmpc/lmpc.info2
-rw-r--r--games/lutris/README4
-rw-r--r--games/lutris/lutris.SlackBuild54
-rw-r--r--games/lutris/lutris.info12
-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.SlackBuild9
-rw-r--r--games/madbomber/madbomber.SlackBuild2
-rw-r--r--games/madbomber/madbomber.info2
-rw-r--r--games/maelstrom/maelstrom.SlackBuild2
-rw-r--r--games/maelstrom/maelstrom.info2
-rw-r--r--games/maelstrom/maelstrom_addon_package.pl2
-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.SlackBuild234
-rw-r--r--games/mame/mame.info8
-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.SlackBuild15
-rw-r--r--games/mame2000-libretro/mame2000-libretro.info6
-rw-r--r--games/manaplus/doinst.sh6
-rw-r--r--games/manaplus/manaplus.SlackBuild12
-rw-r--r--games/manaplus/manaplus.info10
-rw-r--r--games/mangband/mangband.SlackBuild14
-rw-r--r--games/marathon-data/marathon-data.SlackBuild8
-rw-r--r--games/marathon-data/marathon-data.info8
-rw-r--r--games/marathon-infinity-data/marathon-infinity-data.SlackBuild8
-rw-r--r--games/marathon-infinity-data/marathon-infinity-data.info8
-rw-r--r--games/marathon2-data/marathon2-data.SlackBuild8
-rw-r--r--games/marathon2-data/marathon2-data.info8
-rw-r--r--games/mari0/mari0.SlackBuild2
-rw-r--r--games/mari0/mari0.info2
-rw-r--r--games/mars/mars.SlackBuild20
-rw-r--r--games/mednafen/README4
-rw-r--r--games/mednafen/mednafen.SlackBuild34
-rw-r--r--games/mednafen/mednafen.info6
-rw-r--r--games/mednafen/slack-desc2
-rw-r--r--games/mednaffe/mednaffe.SlackBuild8
-rw-r--r--games/mednaffe/mednaffe.info8
-rw-r--r--games/megaglest/megaglest.SlackBuild14
-rw-r--r--games/megamario/doinst.sh6
-rw-r--r--games/megamario/megamario.SlackBuild6
-rw-r--r--games/megamario/megamario.info4
-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-desc (renamed from games/sumwars/slack-desc)22
-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-desc (renamed from games/wmquake/slack-desc)22
-rw-r--r--games/mfe/mfe.SlackBuild6
-rw-r--r--games/mgba/doinst.sh4
-rw-r--r--games/mgba/mgba.SlackBuild9
-rw-r--r--games/mgba/mgba.info6
-rw-r--r--games/micropolis/doinst.sh5
-rw-r--r--games/micropolis/micropolis.SlackBuild5
-rw-r--r--games/micropolis/micropolis.info2
-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-desc (renamed from games/vcmi-core/slack-desc)22
-rw-r--r--games/minetest/gcc11.patch21
-rw-r--r--games/minetest/minetest.SlackBuild6
-rw-r--r--games/minetest/minetest.info10
-rw-r--r--games/minetest_game/minetest_game.SlackBuild6
-rw-r--r--games/minetest_game/minetest_game.info8
-rw-r--r--games/mininim/mininim.SlackBuild16
-rw-r--r--games/mininim/mininim.info2
-rw-r--r--games/miscom/miscom.SlackBuild2
-rw-r--r--games/miscom/miscom.info2
-rw-r--r--games/mog/mog.info2
-rw-r--r--games/moon-buggy/moon-buggy.SlackBuild6
-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.SlackBuild53
-rw-r--r--games/mrboom/mrboom.info8
-rw-r--r--games/mrboom/slack-desc2
-rw-r--r--games/mrrescue/mrrescue.SlackBuild2
-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/nFlood/nFlood.SlackBuild20
-rw-r--r--games/nFlood/nFlood.info2
-rw-r--r--games/naev/bfd.diff19
-rw-r--r--games/naev/naev.SlackBuild34
-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.SlackBuild27
-rw-r--r--games/nblood/nblood.info8
-rw-r--r--games/ncursesoflife/ncursesoflife.SlackBuild5
-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.SlackBuild64
-rw-r--r--games/nestopia/nestopia.info10
-rw-r--r--games/neverball/Makefile.diff12
-rw-r--r--games/neverball/neverball.SlackBuild38
-rw-r--r--games/nevernoid/nevernoid.SlackBuild3
-rw-r--r--games/nevernoid/nevernoid.info2
-rw-r--r--games/nevernoid/nevernoid.wrapper2
-rw-r--r--games/nexuiz/README10
-rw-r--r--games/nexuiz/nexuiz.SlackBuild29
-rw-r--r--games/nexuiz/nexuiz.info2
-rw-r--r--games/nexuiz/slack-desc10
-rw-r--r--games/ninvaders/ninvaders.SlackBuild24
-rw-r--r--games/nlarn/nlarn.SlackBuild27
-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.SlackBuild73
-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.SlackBuild2
-rw-r--r--games/notpacman/notpacman.info2
-rw-r--r--games/nottetris2/nottetris2.SlackBuild12
-rw-r--r--games/nottetris2/nottetris2.info2
-rw-r--r--games/nsuds/nsuds.SlackBuild41
-rw-r--r--games/nuvie/nuvie.SlackBuild27
-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/o2em/README5
-rw-r--r--games/o2em/doinst.sh1
-rw-r--r--games/o2em/o2em.6 (renamed from games/o2em/o2em.1)8
-rw-r--r--games/o2em/o2em.SlackBuild55
-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/oblige-legacy4.SlackBuild14
-rw-r--r--games/oblige-legacy4/oblige-legacy4.info4
-rw-r--r--games/oblige/oblige.SlackBuild14
-rw-r--r--games/oblige/oblige.info4
-rw-r--r--games/odamex/README7
-rw-r--r--games/odamex/doinst.sh5
-rw-r--r--games/odamex/odamex.SlackBuild37
-rw-r--r--games/odamex/odamex.info12
-rw-r--r--games/odamex/use_bundled_portmidi.diff20
-rw-r--r--games/oolite/oolite.SlackBuild22
-rw-r--r--games/oolite/oolite.info2
-rw-r--r--games/open-adventure/doinst.sh6
-rw-r--r--games/open-adventure/open-adventure.SlackBuild24
-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/openclonk/findreadline.patch42
-rw-r--r--games/openclonk/openclonk.SlackBuild22
-rw-r--r--games/openclonk/openclonk.info10
-rw-r--r--games/opendune/opendune.SlackBuild2
-rw-r--r--games/opendune/opendune.info2
-rw-r--r--games/openjazz/openjazz.SlackBuild2
-rw-r--r--games/openjazz/openjazz.info2
-rw-r--r--games/openlierox/doinst.sh6
-rw-r--r--games/openlierox/git2tarxz.sh52
-rw-r--r--games/openlierox/openlierox.SlackBuild55
-rw-r--r--games/openlierox/openlierox.info8
-rw-r--r--games/openmortal/openmortal.SlackBuild2
-rw-r--r--games/openmortal/openmortal.info4
-rw-r--r--games/openmsx-catapult/openmsx-catapult.SlackBuild4
-rw-r--r--games/openmsx-catapult/openmsx-catapult.info8
-rw-r--r--games/openmsx-debugger/openmsx-debugger.SlackBuild6
-rw-r--r--games/openmsx-debugger/openmsx-debugger.info6
-rw-r--r--games/openmsx/openmsx.SlackBuild4
-rw-r--r--games/openmsx/openmsx.info6
-rw-r--r--games/openmw/openmw.SlackBuild2
-rw-r--r--games/openmw/openmw.info6
-rw-r--r--games/opensonic/loggcompat.diff48
-rw-r--r--games/opensonic/opensonic.SlackBuild21
-rw-r--r--games/opensonic/opensonic.info6
-rw-r--r--games/opensurge/README7
-rw-r--r--games/opensurge/doinst.sh3
-rw-r--r--games/opensurge/opensurge.SlackBuild (renamed from games/sumwars/sumwars.SlackBuild)29
-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.SlackBuild50
-rw-r--r--games/openttd/openttd.info18
-rw-r--r--games/opentyrian/opentyrian.SlackBuild60
-rw-r--r--games/opentyrian/opentyrian.info12
-rw-r--r--games/openyahtzee/openyahtzee.SlackBuild2
-rw-r--r--games/openyahtzee/openyahtzee.info2
-rw-r--r--games/ostrichriders/ostrichriders.SlackBuild2
-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/pacman-arena.SlackBuild2
-rw-r--r--games/pacman-arena/pacman-arena.info2
-rw-r--r--games/pacman/README3
-rw-r--r--games/pacman/pacman.SlackBuild4
-rw-r--r--games/pangzero/pangzero.SlackBuild2
-rw-r--r--games/pangzero/pangzero.info4
-rw-r--r--games/pcgen/README10
-rw-r--r--games/pcgen/pcgen.SlackBuild61
-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.SlackBuild18
-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.SlackBuild133
-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/penguin-command/manpage.diff2
-rw-r--r--games/penguin-command/penguin-command.SlackBuild2
-rw-r--r--games/penguin-command/penguin-command.info2
-rw-r--r--games/pengupop/pengupop.SlackBuild6
-rw-r--r--games/pentagram/README37
-rw-r--r--games/pentagram/pentagram.6 (renamed from games/pentagram/pentagram.1)14
-rw-r--r--games/pentagram/pentagram.SlackBuild51
-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/pioneer/README13
-rw-r--r--games/pioneer/alignment.patch22
-rw-r--r--games/pioneer/pioneer.SlackBuild48
-rw-r--r--games/pioneer/pioneer.info10
-rw-r--r--games/pioneer/save-compat.diff13
-rw-r--r--games/pipewalker/pipewalker.info4
-rw-r--r--games/planetblupi/planetblupi.SlackBuild45
-rw-r--r--games/planetblupi/planetblupi.info8
-rw-r--r--games/pokerth/patches/pokerth-1.1.2-boost-1.73-placeholders.patch18
-rw-r--r--games/pokerth/patches/pokerth-1.1.2-newer-protobuf.patch40
-rw-r--r--games/pokerth/pokerth.SlackBuild7
-rw-r--r--games/pokerth/pokerth.info6
-rw-r--r--games/pom1/pom1.SlackBuild14
-rw-r--r--games/pom1/pom1.info4
-rw-r--r--games/powerslave_demo_data/powerslave_demo_data.SlackBuild5
-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.SlackBuild91
-rw-r--r--games/ppsspp/ppsspp.desktop9
-rw-r--r--games/ppsspp/ppsspp.info18
-rw-r--r--games/ppsspp/slack-desc2
-rw-r--r--games/prboom-plus/README9
-rw-r--r--games/prboom-plus/doinst.sh10
-rw-r--r--games/prboom-plus/prboom-plus.SlackBuild18
-rw-r--r--games/prboom-plus/prboom-plus.info8
-rw-r--r--games/prboom/prboom.SlackBuild36
-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/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.SlackBuild (renamed from games/vcmi-resolutions/vcmi-resolutions.SlackBuild)48
-rw-r--r--games/protonup/protonup.info10
-rw-r--r--games/protonup/slack-desc19
-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.SlackBuild78
-rw-r--r--games/puzzles/puzzles.info12
-rw-r--r--games/pybik/pybik.SlackBuild37
-rw-r--r--games/pybik/pybik.info2
-rw-r--r--games/pychess/pychess.SlackBuild6
-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.SlackBuild47
-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/pillow6.patch47
-rw-r--r--games/pysolfc/pysolfc.SlackBuild115
-rw-r--r--games/pysolfc/pysolfc.info16
-rw-r--r--games/qmc2/qmc2.SlackBuild6
-rw-r--r--games/qtads/qtads.SlackBuild6
-rw-r--r--games/qtads/qtads.info8
-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.SlackBuild145
-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/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/quakeforge/quakeforge.SlackBuild4
-rw-r--r--games/quakespasm/quakespasm.SlackBuild6
-rw-r--r--games/quakespasm/quakespasm.info6
-rw-r--r--games/quarry/quarry.SlackBuild6
-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.SlackBuild77
-rw-r--r--games/qzdl/qzdl.info8
-rw-r--r--games/qzdoom/compilefix.diff34
-rw-r--r--games/qzdoom/qzdoom.SlackBuild20
-rw-r--r--games/qzdoom/qzdoom.info2
-rw-r--r--games/redeclipse/redeclipse.SlackBuild14
-rw-r--r--games/rejoystick/README15
-rw-r--r--games/rejoystick/rejoystick.184
-rw-r--r--games/rejoystick/rejoystick.SlackBuild43
-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.SlackBuild42
-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.SlackBuild43
-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/gcc.patch24
-rw-r--r--games/rlvm/rlvm.SlackBuild79
-rw-r--r--games/roadfighter/roadfighter.info2
-rw-r--r--games/robotfindskitten/robotfindskitten.SlackBuild4
-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.SlackBuild5
-rw-r--r--games/rocksndiamonds/rocksndiamonds.SlackBuild19
-rw-r--r--games/rogue/ncurses.patch10
-rw-r--r--games/rogue/rogue.SlackBuild22
-rw-r--r--games/rogue/rogue.desktop11
-rw-r--r--games/rogue/rogue.info8
-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/rott.SlackBuild8
-rw-r--r--games/rott/rott.info2
-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-desc (renamed from games/z26v3/slack-desc)22
-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.SlackBuild12
-rw-r--r--games/sauerbraten/sauerbraten.info6
-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.SlackBuild36
-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/scummvm/README11
-rw-r--r--games/scummvm/doinst.sh6
-rw-r--r--games/scummvm/fix-fluidsynth2-build.diff27
-rw-r--r--games/scummvm/scummvm.SlackBuild35
-rw-r--r--games/scummvm/scummvm.info10
-rw-r--r--games/sdlpop/sdlpop.SlackBuild5
-rw-r--r--games/sdlpop/sdlpop.info8
-rw-r--r--games/simsu/simsu.SlackBuild10
-rw-r--r--games/simsu/simsu.info6
-rw-r--r--games/skulltag/README8
-rw-r--r--games/skulltag/skulltag.SlackBuild8
-rw-r--r--games/skulltag/skulltag.info2
-rw-r--r--games/sl/README4
-rw-r--r--games/sl/sl.SlackBuild14
-rw-r--r--games/sl/sl.info8
-rw-r--r--games/smashbattle/README13
-rw-r--r--games/smc/smc.SlackBuild17
-rw-r--r--games/smc/smc.info4
-rw-r--r--games/smokinguns/smokinguns.SlackBuild14
-rw-r--r--games/smokinguns/smokinguns.info4
-rw-r--r--games/sms_sdl/doinst.sh5
-rw-r--r--games/sms_sdl/sms_sdl.SlackBuild6
-rw-r--r--games/sms_sdl/sms_sdl.info2
-rw-r--r--games/snes9x/2afe4a11d43e8767cbeb90372177d4b580384e9a.patch29
-rw-r--r--games/snes9x/ChangeLog.old71
-rw-r--r--games/snes9x/README37
-rw-r--r--games/snes9x/b383b94c8c94e3a28b09e7dd3d72cac2a783ba55.patch28
-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.SlackBuild202
-rw-r--r--games/snes9x/snes9x.info14
-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.SlackBuild19
-rw-r--r--games/snes9x2010/snes9x2010.info6
-rw-r--r--games/solarus-quest-editor/README12
-rw-r--r--games/solarwolf/doinst.sh6
-rw-r--r--games/solarwolf/solarwolf.SlackBuild64
-rw-r--r--games/solarwolf/solarwolf.info4
-rw-r--r--games/speed-dreams/README8
-rw-r--r--games/speed-dreams/speed-dreams-params-conversion.patch22
-rw-r--r--games/speed-dreams/speed-dreams.SlackBuild15
-rw-r--r--games/speed-dreams/speed-dreams.info18
-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/doinst.sh7
-rw-r--r--games/srb2/srb2.SlackBuild38
-rw-r--r--games/srb2/srb2.info14
-rw-r--r--games/starfighter/doinst.sh2
-rw-r--r--games/steam/README13
-rw-r--r--games/steam/doinst.sh4
-rw-r--r--games/steam/steam.SlackBuild4
-rw-r--r--games/steam/steam.info6
-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/slack-desc19
-rw-r--r--games/steem/steem.6218
-rw-r--r--games/steem/steem.SlackBuild115
-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/stella.SlackBuild13
-rw-r--r--games/stella/stella.info8
-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.SlackBuild36
-rw-r--r--games/stockfish/stockfish.info10
-rw-r--r--games/stone_soup/slack-desc19
-rw-r--r--games/stone_soup/stone_soup.info10
-rw-r--r--games/stratagus/README13
-rw-r--r--games/stratagus/stratagus.SlackBuild8
-rw-r--r--games/stratagus/stratagus.info2
-rw-r--r--games/stuntrally/stuntrally.SlackBuild44
-rw-r--r--games/sumeria/sumeria.SlackBuild12
-rw-r--r--games/sumeria/sumeria.info2
-rw-r--r--games/sumwars/README7
-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.SlackBuild27
-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/gcc12.patch11
-rw-r--r--games/supertux/missing-include-for-FLT_EPSILON.patch13
-rw-r--r--games/supertux/slack-desc6
-rw-r--r--games/supertux/supertux-0.6.2_rc1-boost-1.73.patch25
-rw-r--r--games/supertux/supertux.SlackBuild9
-rw-r--r--games/supertux/supertux.info12
-rw-r--r--games/supertuxkart/ftbfs_sdl.patch100
-rw-r--r--games/supertuxkart/gcc13-1.patch155
-rw-r--r--games/supertuxkart/gcc13-2.patch72
-rw-r--r--games/supertuxkart/supertuxkart.SlackBuild19
-rw-r--r--games/supertuxkart/supertuxkart.info6
-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/syobonaction.SlackBuild2
-rw-r--r--games/syobonaction/syobonaction.info2
-rw-r--r--games/taipan/taipan.SlackBuild2
-rw-r--r--games/taipan/taipan.info2
-rw-r--r--games/talkfilters/talkfilters.SlackBuild4
-rw-r--r--games/tanglet/tanglet.SlackBuild18
-rw-r--r--games/tanglet/tanglet.info6
-rw-r--r--games/tbftss/doinst.sh2
-rw-r--r--games/teeworlds/teeworlds.SlackBuild4
-rw-r--r--games/teeworlds/teeworlds.info10
-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.sh (renamed from games/z26v3/doinst.sh)8
-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.SlackBuild6
-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.SlackBuild28
-rw-r--r--games/tome-ah/tome-ah.info6
-rw-r--r--games/tome-ah/tome-gcu.sh (renamed from games/tome-ah/tome.sh)6
-rw-r--r--games/tome-ah/tome-gtk2.sh6
-rw-r--r--games/tome-ah/tome-x11.sh6
-rw-r--r--games/tome/aur-tome4.patch457
-rw-r--r--games/tome/tome.SlackBuild17
-rw-r--r--games/tome/tome.info10
-rw-r--r--games/tong/tong.SlackBuild6
-rw-r--r--games/torcs/README2
-rw-r--r--games/torcs/doinst.sh5
-rw-r--r--games/torcs/torcs.SlackBuild42
-rw-r--r--games/torcs/torcs.desktop2
-rw-r--r--games/torcs/torcs.info4
-rw-r--r--games/trackballs/trackballs.SlackBuild8
-rw-r--r--games/trackballs/trackballs.info8
-rw-r--r--games/transfusion/README19
-rw-r--r--games/transfusion/slack-desc19
-rw-r--r--games/transfusion/transfusion.SlackBuild73
-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.SlackBuild34
-rw-r--r--games/trigger-rally/trigger-rally.info64
-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/tty-solitaire/tty-solitaire.SlackBuild16
-rw-r--r--games/tuxnes/README24
-rw-r--r--games/tuxnes/tuxnes.SlackBuild11
-rw-r--r--games/typespeed/typespeed.SlackBuild11
-rw-r--r--games/typhoon_2001/README18
-rw-r--r--games/typhoon_2001/typhoon_20016
-rw-r--r--games/typhoon_2001/typhoon_2001.SlackBuild16
-rw-r--r--games/typhoon_2001/typhoon_2001.info2
-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.SlackBuild96
-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/man/uforadiant.62
-rw-r--r--games/ufoai/ufoai.SlackBuild7
-rw-r--r--games/ufoai/ufoai.info2
-rw-r--r--games/uligo/README7
-rw-r--r--games/ultimatestunts/ultimatestunts.SlackBuild7
-rw-r--r--games/unknown-horizons/unknown-horizons.info2
-rw-r--r--games/unnethack/unnethack.SlackBuild40
-rw-r--r--games/unnethack/unnethack.info8
-rw-r--r--games/unvanquished/90-mmap_min_addr.conf5
-rw-r--r--games/unvanquished/README11
-rw-r--r--games/unvanquished/cmakelists.patch59
-rw-r--r--games/unvanquished/doinst.sh20
-rw-r--r--games/unvanquished/slack-desc19
-rw-r--r--games/unvanquished/unvanquished.SlackBuild189
-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/doinst.sh6
-rw-r--r--games/uqm/uqm.SlackBuild6
-rw-r--r--games/uqm/uqm.info4
-rw-r--r--games/uqm_3domusic/uqm_3domusic.SlackBuild2
-rw-r--r--games/uqm_3domusic/uqm_3domusic.info4
-rw-r--r--games/uqm_remixes/uqm_remixes.SlackBuild2
-rw-r--r--games/uqm_remixes/uqm_remixes.info4
-rw-r--r--games/uqm_voice/uqm_voice.SlackBuild2
-rw-r--r--games/uqm_voice/uqm_voice.info4
-rw-r--r--games/ut2004/README11
-rw-r--r--games/ut2004/ut2004.SlackBuild2
-rw-r--r--games/vbam/README45
-rw-r--r--games/vbam/slack-desc16
-rw-r--r--games/vbam/vbam.SlackBuild161
-rw-r--r--games/vbam/vbam.info10
-rw-r--r--games/vcmi-core/README3
-rw-r--r--games/vcmi-core/vcmi-core.info10
-rw-r--r--games/vcmi-resolutions/README3
-rw-r--r--games/vcmi-resolutions/vcmi-resolutions.info10
-rw-r--r--games/vcmi-wog/README3
-rw-r--r--games/vcmi-wog/vcmi-wog.info10
-rw-r--r--games/vcmi/vcmi.SlackBuild17
-rw-r--r--games/vcmi/vcmi.info8
-rw-r--r--games/vectoroids/doinst.sh9
-rw-r--r--games/vectoroids/vectoroids.SlackBuild7
-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/patches/ordered_pointer_comparison.diff129
-rw-r--r--games/vegastrike/vegastrike.SlackBuild3
-rw-r--r--games/vera/douninst.sh21
-rw-r--r--games/vera/vera.SlackBuild6
-rw-r--r--games/vera/vera.info2
-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/vitaquake2-libretro/vitaquake2-libretro.SlackBuild11
-rw-r--r--games/vitaquake2-libretro/vitaquake2-libretro.info6
-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/vkQuake.SlackBuild9
-rw-r--r--games/vkQuake/vkQuake.info10
-rw-r--r--games/vms-empire/vms-empire.SlackBuild35
-rw-r--r--games/voxelands/README9
-rw-r--r--games/voxelands/voxelands.SlackBuild12
-rw-r--r--games/voxelands/voxelands.info8
-rw-r--r--games/wadext/README6
-rw-r--r--games/wadext/slack-desc (renamed from games/qtsixa/slack-desc)22
-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.SlackBuild26
-rw-r--r--games/wargus/wargus.info4
-rw-r--r--games/wargus/wartool.ffmpeg.diff129
-rw-r--r--games/warsow/warsow.SlackBuild14
-rw-r--r--games/warzone2100/README7
-rw-r--r--games/warzone2100/warzone2100.SlackBuild14
-rw-r--r--games/warzone2100/warzone2100.info6
-rw-r--r--games/waterCloset/README5
-rw-r--r--games/waterCloset/doinst.sh5
-rw-r--r--games/waterCloset/waterCloset.SlackBuild31
-rw-r--r--games/waterCloset/waterCloset.info2
-rw-r--r--games/wesnoth/README9
-rw-r--r--games/wesnoth/wesnoth.SlackBuild15
-rw-r--r--games/wesnoth/wesnoth.info6
-rw-r--r--games/wmquake/README22
-rw-r--r--games/wmquake/wmquake.info10
-rw-r--r--games/wmquake/wmquake.sh12
-rw-r--r--games/wolf4sdl/README7
-rw-r--r--games/wolf4sdl/datadir.diff.gzbin2109 -> 0 bytes
-rw-r--r--games/wolf4sdl/desktop/wolf4sdl-spear-demo.desktop (renamed from games/wolf4sdl/wolf4sdl-spear-demo.desktop)2
-rw-r--r--games/wolf4sdl/desktop/wolf4sdl-spear-full.desktop (renamed from games/wolf4sdl/wolf4sdl-spear-full.desktop)2
-rw-r--r--games/wolf4sdl/desktop/wolf4sdl-wolf3d-demo.desktop (renamed from games/wolf4sdl/wolf4sdl-wolf3d-demo.desktop)2
-rw-r--r--games/wolf4sdl/desktop/wolf4sdl-wolf3d-full.desktop (renamed from games/wolf4sdl/wolf4sdl-wolf3d-full.desktop)2
-rw-r--r--games/wolf4sdl/exename.diff.gzbin626 -> 0 bytes
-rw-r--r--games/wolf4sdl/git2tarxz.sh52
-rw-r--r--games/wolf4sdl/icons/128.pngbin27544 -> 6206 bytes
-rw-r--r--games/wolf4sdl/icons/16.pngbin870 -> 785 bytes
-rw-r--r--games/wolf4sdl/icons/22.pngbin0 -> 1150 bytes
-rw-r--r--games/wolf4sdl/icons/32.pngbin2388 -> 1506 bytes
-rw-r--r--games/wolf4sdl/icons/48.pngbin4073 -> 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.644
-rw-r--r--games/wolf4sdl/wolf4sdl.SlackBuild59
-rw-r--r--games/wolf4sdl/wolf4sdl.info10
-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.SlackBuild2
-rw-r--r--games/wordwarvi/wordwarvi.info2
-rw-r--r--games/worldofgoo/README6
-rw-r--r--games/worldofpadman/worldofpadman.SlackBuild112
-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.SlackBuild (renamed from games/vcmi-core/vcmi-core.SlackBuild)48
-rw-r--r--games/x16emu/x16emu.info10
-rw-r--r--games/xarchon/xarchon.SlackBuild2
-rw-r--r--games/xarchon/xarchon.info2
-rw-r--r--games/xcowsay/xcowsay.SlackBuild8
-rw-r--r--games/xcowsay/xcowsay.info8
-rw-r--r--games/xcpc/slack-desc2
-rw-r--r--games/xcpc/xcpc.SlackBuild2
-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/xonotic/0d3d1f2655901776b2fc3e911eb78478412f789a.diff31
-rw-r--r--games/xonotic/README10
-rw-r--r--games/xonotic/xonotic-sdl.desktop (renamed from games/etlegacy/files/etlegacy.desktop)9
-rw-r--r--games/xonotic/xonotic.SlackBuild33
-rw-r--r--games/xonotic/xonotic.info8
-rw-r--r--games/xroar-roms/xroar-roms.SlackBuild12
-rw-r--r--games/xroar-roms/xroar-roms.info8
-rw-r--r--games/xroar/README8
-rw-r--r--games/xroar/README_SBo.txt19
-rw-r--r--games/xroar/douninst.sh27
-rw-r--r--games/xroar/icons/22.pngbin0 -> 1534 bytes
-rw-r--r--games/xroar/icons/64.pngbin0 -> 3866 bytes
-rw-r--r--games/xroar/slack-desc6
-rw-r--r--games/xroar/xroar.SlackBuild20
-rw-r--r--games/xroar/xroar.info10
-rw-r--r--games/xskat/xskat.SlackBuild6
-rw-r--r--games/xspacewarp/xspacewarp.SlackBuild2
-rw-r--r--games/xspacewarp/xspacewarp.info2
-rw-r--r--games/xu4/README16
-rw-r--r--games/xu4/README-SBo.txt50
-rw-r--r--games/xu4/disable_alt_x.diff24
-rw-r--r--games/xu4/gcc7.patch90
-rw-r--r--games/xu4/icons/16.pngbin1513 -> 1232 bytes
-rw-r--r--games/xu4/icons/22.pngbin0 -> 1474 bytes
-rw-r--r--games/xu4/icons/32.pngbin2649 -> 2565 bytes
-rw-r--r--games/xu4/icons/48.pngbin4643 -> 0 bytes
-rw-r--r--games/xu4/icons/64.pngbin6928 -> 0 bytes
-rw-r--r--games/xu4/profile_path.diff47
-rw-r--r--games/xu4/xu4.6 (renamed from games/xu4/u4.6)30
-rw-r--r--games/xu4/xu4.SlackBuild140
-rw-r--r--games/xu4/xu4.desktop (renamed from games/xu4/u4.desktop)4
-rw-r--r--games/xu4/xu4.info18
-rw-r--r--games/xye/README12
-rw-r--r--games/xye/xye.SlackBuild6
-rw-r--r--games/yabause/README6
-rw-r--r--games/yabause/qt-5.11.patch47
-rw-r--r--games/yabause/yabause.SlackBuild17
-rw-r--r--games/yae/yae.SlackBuild2
-rw-r--r--games/yae/yae.info2
-rw-r--r--games/yahtzee/yahtzee.SlackBuild11
-rw-r--r--games/yahtzee/yahtzee.info4
-rw-r--r--games/yamagi-quake2/README13
-rw-r--r--games/yamagi-quake2/yamagi-quake2.SlackBuild14
-rw-r--r--games/yamagi-quake2/yamagi-quake2.info20
-rw-r--r--games/yar/doinst.sh6
-rw-r--r--games/yar/yar.SlackBuild5
-rw-r--r--games/yar/yar.info4
-rw-r--r--games/yetris/yetris.info2
-rw-r--r--games/z26/README16
-rw-r--r--games/z26/statify.sh22
-rw-r--r--games/z26/z26.SlackBuild100
-rw-r--r--games/z26/z26.info12
-rw-r--r--games/z26v3/README24
-rw-r--r--games/z26v3/fixsegfault.diff.gzbin253 -> 0 bytes
-rw-r--r--games/z26v3/z26v3.SlackBuild101
-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.SlackBuild58
-rw-r--r--games/zaz/zaz.rst122
-rw-r--r--games/zdbsp/zdbsp.SlackBuild2
-rw-r--r--games/zdbsp/zdbsp.info2
-rw-r--r--games/zdoom/zdoom.SlackBuild6
-rw-r--r--games/zdoom/zdoom.info2
-rw-r--r--games/zelda-roth-se/README13
-rw-r--r--games/zennode/zennode.SlackBuild2
-rw-r--r--games/zennode/zennode.info2
-rw-r--r--games/znake/znake.SlackBuild24
-rw-r--r--games/zod-engine/zod-engine.SlackBuild7
-rw-r--r--games/zod-engine/zod-engine.info2
-rw-r--r--games/zoom/zoom.12
-rw-r--r--games/zoom/zoom.SlackBuild2
-rw-r--r--games/zoom/zoom.info2
-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-desc (renamed from games/vcmi-wog/slack-desc)22
-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/zork.SlackBuild2
-rw-r--r--games/zork/zork.info2
-rw-r--r--games/zseal/README26
-rw-r--r--games/zseal/slack-desc4
-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.SlackBuild192
-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/ztools/ztools.SlackBuild2
-rw-r--r--games/ztools/ztools.info2
1886 files changed, 35551 insertions, 11833 deletions
diff --git a/games/0ad-data/0ad-data.SlackBuild b/games/0ad-data/0ad-data.SlackBuild
index c1f57312e3..c9a70929ef 100644
--- a/games/0ad-data/0ad-data.SlackBuild
+++ b/games/0ad-data/0ad-data.SlackBuild
@@ -2,7 +2,7 @@
#
# 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.
@@ -28,7 +28,7 @@ cd $(dirname $0) ; CWD=$(pwd)
PRGNAM=0ad-data
DATANAM=0ad
-VERSION=${VERSION:-0.0.25}
+VERSION=${VERSION:-r28035}
RELEASE=${RELEASE:-alpha}
ARCH=noarch
BUILD=${BUILD:-1}
@@ -51,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 \
@@ -62,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
diff --git a/games/0ad-data/0ad-data.info b/games/0ad-data/0ad-data.info
index 614962f3a1..6065c561ab 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.25"
+VERSION="r28035"
HOMEPAGE="https://play0ad.com/"
-DOWNLOAD="http://releases.wildfiregames.com/0ad-0.0.25-alpha-unix-data.tar.xz"
-MD5SUM="475bcfd1c61b0a4a459e351a3cf5b489"
+DOWNLOAD="https://ponce.cc/slackware/sources/repo/0ad-r28035-alpha-unix-data.tar.xz"
+MD5SUM="103758c3fdd8df505d40f8d7eb3b039f"
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 7ebbab8d82..d79e586be8 100644
--- a/games/0ad/0ad.SlackBuild
+++ b/games/0ad/0ad.SlackBuild
@@ -2,7 +2,7 @@
#
# 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,23 +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.25}
+VERSION=${VERSION:-r28035}
RELEASE=${RELEASE:-alpha}
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
-
TMP=${TMP:-/tmp/SBo}
PKG=$TMP/package-$PRGNAM
OUTPUT=${OUTPUT:-/tmp}
@@ -53,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=""
@@ -88,27 +89,35 @@ export CFLAGS="$SLKCFLAGS"
export CXXFLAGS="$SLKCFLAGS -DU_USING_ICU_NAMESPACE=1"
export LDFLAGS="-L/usr/lib${LIBDIRSUFFIX}"
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"
-# Fix boost names, include paths and remove isystem
+# 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,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
+#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.
+#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
+sed -i '/Pyrogenesis/i #include <iomanip>' source/ps/Util.cpp
+
+CXX=clang++ \
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
@@ -132,8 +141,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
diff --git a/games/0ad/0ad.info b/games/0ad/0ad.info
index 29ba3a3751..f1aaf3606a 100644
--- a/games/0ad/0ad.info
+++ b/games/0ad/0ad.info
@@ -1,10 +1,10 @@
PRGNAM="0ad"
-VERSION="0.0.24b"
+VERSION="r28035"
HOMEPAGE="https://play0ad.com/"
-DOWNLOAD="http://releases.wildfiregames.com/0ad-0.0.25-alpha-unix-build.tar.xz"
-MD5SUM="bb12aeb3276bdce614bd47a268058f31"
+DOWNLOAD="https://ponce.cc/slackware/sources/repo/0ad-r28035-alpha-unix-build.tar.xz"
+MD5SUM="45c9ebe38e0578c6eade09da81b10105"
DOWNLOAD_x86_64=""
MD5SUM_x86_64=""
-REQUIRES="0ad-data enet fmt gloox miniupnpc"
+REQUIRES="0ad-data enet fmt gloox miniupnpc wxWidgets"
MAINTAINER="Tim Dickson"
EMAIL="dickson.tim@googlemail.com"
diff --git a/games/0ad/README b/games/0ad/README
index 8af134503e..6af05415e6 100644
--- a/games/0ad/README
+++ b/games/0ad/README
@@ -1,8 +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
-
-v0.0.23b is the last version to run on stock slackware 14.2 as newer
-versions require at least gcc 7 or newer to compile.
+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/vcmi-resolutions/slack-desc b/games/2048-in-terminal/slack-desc
index 92f9f162dc..8084389e53 100644
--- a/games/vcmi-resolutions/slack-desc
+++ b/games/2048-in-terminal/slack-desc
@@ -6,14 +6,14 @@
# 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:
+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/7kaa/7kaa.SlackBuild b/games/7kaa/7kaa.SlackBuild
index ebaecc0d59..1f6dc3ed96 100644
--- a/games/7kaa/7kaa.SlackBuild
+++ b/games/7kaa/7kaa.SlackBuild
@@ -2,7 +2,7 @@
# 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
@@ -25,7 +25,7 @@
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}
@@ -70,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 . \
diff --git a/games/7kaa/7kaa.info b/games/7kaa/7kaa.info
index 9e4904fd47..09a3e895a5 100644
--- a/games/7kaa/7kaa.info
+++ b/games/7kaa/7kaa.info
@@ -1,8 +1,8 @@
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="enet"
diff --git a/games/Chatbot-Eliza/Chatbot-Eliza.SlackBuild b/games/Chatbot-Eliza/Chatbot-Eliza.SlackBuild
index 31f9e2a079..29debbd031 100644
--- a/games/Chatbot-Eliza/Chatbot-Eliza.SlackBuild
+++ b/games/Chatbot-Eliza/Chatbot-Eliza.SlackBuild
@@ -2,16 +2,34 @@
# 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}
+VERSION=${VERSION:-1.08}
BUILD=${BUILD:-2}
TAG=${TAG:-_SBo}
PKGTYPE=${PKGTYPE:-tgz}
@@ -67,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
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 5fbe8a61b0..742cc60bdc 100644
--- a/games/CorsixTH/CorsixTH.SlackBuild
+++ b/games/CorsixTH/CorsixTH.SlackBuild
@@ -2,7 +2,7 @@
# 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,14 +22,10 @@
# 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: 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).
-
cd $(dirname $0) ; CWD=$(pwd)
PRGNAM=CorsixTH
-VERSION=${VERSION:-0.63}
+VERSION=${VERSION:-0.66}
BUILD=${BUILD:-1}
TAG=${TAG:-_SBo}
PKGTYPE=${PKGTYPE:-tgz}
@@ -83,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 {} \;
+# 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 \
diff --git a/games/CorsixTH/CorsixTH.info b/games/CorsixTH/CorsixTH.info
index e03e6ebef2..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="lua"
+REQUIRES="lua-filesystem lua-lpeg"
MAINTAINER="Nick Smallbone"
EMAIL="nick@smallbone.se"
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 7a672ea01f..633c292e97 100644
--- a/games/FlightGear-data/FlightGear-data.SlackBuild
+++ b/games/FlightGear-data/FlightGear-data.SlackBuild
@@ -26,7 +26,7 @@ cd $(dirname $0) ; CWD=$(pwd)
PRGNAM=FlightGear-data
SRCNAM=FlightGear
-VERSION=${VERSION:-2020.3.8}
+VERSION=${VERSION:-2020.3.19}
BUILD=${BUILD:-1}
TAG=${TAG:-_SBo}
PKGTYPE=${PKGTYPE:-tgz}
@@ -52,7 +52,6 @@ rm -rf $PKG
mkdir -p $TMP $PKG/usr/share $OUTPUT
cd $PKG/usr/share
tar xvf $CWD/$SRCNAM-$VERSION-data.txz
-tar xvf $CWD/$SRCNAM-$VERSION-update-data.txz
mv fgdata FlightGear
chown -R root:root .
find -L . \
diff --git a/games/FlightGear-data/FlightGear-data.info b/games/FlightGear-data/FlightGear-data.info
index 3c487723c2..d13c72f8c5 100644
--- a/games/FlightGear-data/FlightGear-data.info
+++ b/games/FlightGear-data/FlightGear-data.info
@@ -1,10 +1,8 @@
PRGNAM="FlightGear-data"
-VERSION="2020.3.8"
+VERSION="2020.3.19"
HOMEPAGE="http://www.flightgear.org/"
-DOWNLOAD="https://downloads.sourceforge.net/flightgear/FlightGear-2020.3.8-data.txz \
- https://downloads.sourceforge.net/flightgear/FlightGear-2020.3.8-update-data.txz"
-MD5SUM="031fa7df94cf59636f610625c807880b \
- e91a20612a197f0e11e2641390c18203"
+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 295a6c2ba1..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 files total nearly 2G in size, so please be patient
+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 324fd5570a..8b9365f1b6 100644
--- a/games/FlightGear/FlightGear.SlackBuild
+++ b/games/FlightGear/FlightGear.SlackBuild
@@ -28,7 +28,7 @@ cd $(dirname $0) ; CWD=$(pwd)
PRGNAM=FlightGear
SRCNAM=flightgear
-VERSION=${VERSION:-2020.3.8}
+VERSION=${VERSION:-2020.3.19}
BUILD=${BUILD:-1}
TAG=${TAG:-_SBo}
PKGTYPE=${PKGTYPE:-tgz}
@@ -106,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
@@ -114,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
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 af164ada24..d7bf1df1d6 100644
--- a/games/FlightGear/FlightGear.info
+++ b/games/FlightGear/FlightGear.info
@@ -1,8 +1,8 @@
PRGNAM="FlightGear"
-VERSION="2020.3.8"
+VERSION="2020.3.19"
HOMEPAGE="http://www.flightgear.org/"
-DOWNLOAD="https://downloads.sourceforge.net/flightgear/flightgear-2020.3.8.tar.bz2"
-MD5SUM="1d03d5f85ae25fb6470e41fa3d94a408"
+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 3bcf50ca3b..798e5c06c1 100644
--- a/games/FlightGear/README
+++ b/games/FlightGear/README
@@ -6,9 +6,9 @@ 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.)
-If you prefer, you can install either fgo or ffgo as a more basic
-launcher. They will launch fgfs directly without the '--launcher'
-parameter.
+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.
flite is an optional dependency for voice communication (autodetected
at build time).
diff --git a/games/KAdventure/KAdventure.SlackBuild b/games/KAdventure/KAdventure.SlackBuild
index 79ba3f7a9c..38145d7a00 100644
--- a/games/KAdventure/KAdventure.SlackBuild
+++ b/games/KAdventure/KAdventure.SlackBuild
@@ -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.
+# 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}
@@ -38,9 +42,6 @@ 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
@@ -75,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 ..
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 8e63396d60..0e0dfc5425 100644
--- a/games/KoboDeluxe/KoboDeluxe.SlackBuild
+++ b/games/KoboDeluxe/KoboDeluxe.SlackBuild
@@ -2,27 +2,29 @@
# Slackware build script for Kobo Deluxe
-# Written by Rubén Llorente <porting@use.startmail.com>
-
-# This script is of public domain. It can be distributed, modified and used as desired.
-
-# 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 Rubén Llorente <email removed>
+# Updated and maintained by B. Watson <urchlay@slackware.uk>
+
+# Licensed under the WTFPL. See http://www.wtfpl.net/txt/copying/ for details.
+
+# 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}
@@ -34,9 +36,6 @@ 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
@@ -66,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" \
@@ -95,18 +103,25 @@ 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
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/etlegacy-from-source/doinst.sh b/games/LucasChess/doinst.sh
index 5fb28930db..5fb28930db 100644
--- a/games/etlegacy-from-source/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 d02fdf034b..9c70755b5d 100644
--- a/games/OpenJK/OpenJK.SlackBuild
+++ b/games/OpenJK/OpenJK.SlackBuild
@@ -38,9 +38,6 @@ 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
@@ -75,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
@@ -90,6 +87,8 @@ if [ "$BUILDJO" = "yes" ]; then
JOARGS="-DBuildJK2SPEngine=On -DBuildJK2SPGame=On -DBuildJK2SPRdVanilla=On"
fi
+SLKCFLAGS+=" -fcommon"
+
mkdir -p build
cd build
cmake \
@@ -99,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
diff --git a/games/OpenJK/OpenJK.info b/games/OpenJK/OpenJK.info
index 87e5099891..b384a2844c 100644
--- a/games/OpenJK/OpenJK.info
+++ b/games/OpenJK/OpenJK.info
@@ -1,7 +1,7 @@
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=""
diff --git a/games/OpenRA/OpenRA.SlackBuild b/games/OpenRA/OpenRA.SlackBuild
index 060cdd3e65..139b218864 100644
--- a/games/OpenRA/OpenRA.SlackBuild
+++ b/games/OpenRA/OpenRA.SlackBuild
@@ -2,7 +2,7 @@
# 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
@@ -25,7 +25,7 @@
cd $(dirname $0) ; CWD=$(pwd)
PRGNAM=OpenRA
-VERSION=${VERSION:-20190314}
+VERSION=${VERSION:-20210321}
BUILD=${BUILD:-1}
TAG=${TAG:-_SBo}
PKGTYPE=${PKGTYPE:-tgz}
@@ -49,6 +49,10 @@ 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"
@@ -71,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 . \
@@ -88,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
diff --git a/games/OpenRA/OpenRA.info b/games/OpenRA/OpenRA.info
index ef12bb2ec9..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 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/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 35ea251a1b..7ed7653ec5 100644
--- a/games/PyLotRO/PyLotRO.SlackBuild
+++ b/games/PyLotRO/PyLotRO.SlackBuild
@@ -31,7 +31,7 @@ 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
diff --git a/games/QuickNES-Core/QuickNES-Core.SlackBuild b/games/QuickNES-Core/QuickNES-Core.SlackBuild
index a140a48723..dfeccb7e12 100644
--- a/games/QuickNES-Core/QuickNES-Core.SlackBuild
+++ b/games/QuickNES-Core/QuickNES-Core.SlackBuild
@@ -26,7 +26,8 @@ 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}
@@ -59,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 \
@@ -73,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 \
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/z26/slack-desc b/games/RMG/slack-desc
index bf46319d60..9971748dec 100644
--- a/games/z26/slack-desc
+++ b/games/RMG/slack-desc
@@ -6,14 +6,14 @@
# 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:
+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 a28a566233..5524a5a8f6 100644
--- a/games/RetroArch/README
+++ b/games/RetroArch/README
@@ -19,7 +19,7 @@ RetroArch will require at least one of the libretro cores to play any
games.
Optional dependencies:
- jack libsixel mbedtls miniupnpc nvidia-cg-toolkit
+ jack libsixel mbedtls nvidia-cg-toolkit
To build debugging symbols for RetroArch use:
DEBUG=yes ./RetroArch.SlackBuild
@@ -30,9 +30,6 @@ 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
diff --git a/games/RetroArch/RetroArch.SlackBuild b/games/RetroArch/RetroArch.SlackBuild
index ca735ed16a..cb58796421 100644
--- a/games/RetroArch/RetroArch.SlackBuild
+++ b/games/RetroArch/RetroArch.SlackBuild
@@ -3,7 +3,7 @@
# 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,15 @@
# 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}
@@ -39,9 +43,6 @@ 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
@@ -76,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=
@@ -109,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"
@@ -143,11 +141,6 @@ 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"
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 3731abc950..10dd631409 100644
--- a/games/SLADE/SLADE.SlackBuild
+++ b/games/SLADE/SLADE.SlackBuild
@@ -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
@@ -34,7 +49,7 @@
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}
@@ -47,9 +62,6 @@ 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
@@ -88,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
diff --git a/games/SLADE/SLADE.info b/games/SLADE/SLADE.info
index 1cced91b36..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 FreeImage"
+REQUIRES="wxGTK3 fmt SFML ftgl FreeImage p7zip lua"
MAINTAINER="B. Watson"
-EMAIL="yalhcru@gmail.com"
+EMAIL="urchlay@slackware.uk"
diff --git a/games/Scorched3D/Scorched3D.SlackBuild b/games/Scorched3D/Scorched3D.SlackBuild
index b714c53e65..106970d142 100644
--- a/games/Scorched3D/Scorched3D.SlackBuild
+++ b/games/Scorched3D/Scorched3D.SlackBuild
@@ -22,6 +22,9 @@
# 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
@@ -32,15 +35,12 @@ 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
-# 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
@@ -77,9 +77,9 @@ 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
@@ -100,6 +100,7 @@ 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 \
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/glPortal/glPortal.SlackBuild b/games/SpaceCadetPinball/SpaceCadetPinball.SlackBuild
index a2341e17ea..2fd48cf4a7 100644
--- a/games/glPortal/glPortal.SlackBuild
+++ b/games/SpaceCadetPinball/SpaceCadetPinball.SlackBuild
@@ -1,8 +1,8 @@
#!/bin/bash
-# Slackware build script for glPortal
+# Slackware build script for SpaceCadetPinball
-# Copyright 2017 Jeremy Hansen <jebrhansen+SBo -at- gmail.com>
+# Copyright 2023 Jeremy Hansen jebrhansen+SBo@gmail.com
# All rights reserved.
#
# Redistribution and use of this script, with or without modification, is
@@ -21,20 +21,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.
-
cd $(dirname $0) ; CWD=$(pwd)
-PRGNAM=glPortal
-VERSION=${VERSION:-c3d5e47}
-SRCVER=${SRCVER:-c3d5e47c5151360c09d0d84f66d9c0e3c2051251}
-DATAVER=${DATAVER:-d391875c9110ed2b04b9014b3ab6a587c2aa921d}
-SPECVER=${SPECVER:-2bcaa5de0e6cae58e53008efcc8a9ec5f2f8ba92}
-CPPGUIVER=${CPPGUIVER:-f45a7b94da031914a86e1823d5affc512cc9de66}
-VHACDVER=${VHACDVER:-537b2413299a5a7d22a4aa0f9f26901b0f38daf2}
+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 ;;
@@ -43,9 +41,6 @@ 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
@@ -77,18 +72,6 @@ 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 \
@@ -96,35 +79,47 @@ 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 {} \;
-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++/ ..
+ -DCMAKE_BUILD_TYPE=Release ..
make
- make install DESTDIR=$PKG
+ make install/strip DESTDIR=$PKG
cd ..
-# Remove bogus static lib
-rm $PKG/usr/bin/libVHACD_LIB.a
+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 \
- COMPILE.md CONTRIBUTE.md CONTRIBUTORS.md LICENSE.md README.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/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 911f5e7ad6..4b6a5483d8 100644
--- a/games/SpaceZero/SpaceZero.SlackBuild
+++ b/games/SpaceZero/SpaceZero.SlackBuild
@@ -22,12 +22,22 @@
# 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}
@@ -39,9 +49,6 @@ 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
@@ -76,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
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/UrbanTerror/UrbanTerror.SlackBuild b/games/UrbanTerror/UrbanTerror.SlackBuild
index a3092d25b5..8a208e6928 100644
--- a/games/UrbanTerror/UrbanTerror.SlackBuild
+++ b/games/UrbanTerror/UrbanTerror.SlackBuild
@@ -31,12 +31,20 @@ 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
@@ -51,13 +59,6 @@ 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}
@@ -80,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
@@ -90,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/
diff --git a/games/VASSAL/VASSAL.SlackBuild b/games/VASSAL/VASSAL.SlackBuild
index a3d612203c..dc1dc7380d 100644
--- a/games/VASSAL/VASSAL.SlackBuild
+++ b/games/VASSAL/VASSAL.SlackBuild
@@ -25,7 +25,7 @@
cd $(dirname $0) ; CWD=$(pwd)
PRGNAM=VASSAL
-VERSION=${VERSION:-3.5.7}
+VERSION=${VERSION:-3.6.5}
BUILD=${BUILD:-1}
TAG=${TAG:-_SBo}
PKGTYPE=${PKGTYPE:-tgz}
diff --git a/games/VASSAL/VASSAL.info b/games/VASSAL/VASSAL.info
index 885db3c5e7..b309fe29f5 100644
--- a/games/VASSAL/VASSAL.info
+++ b/games/VASSAL/VASSAL.info
@@ -1,10 +1,10 @@
PRGNAM="VASSAL"
-VERSION="3.5.7"
+VERSION="3.6.5"
HOMEPAGE="http://www.vassalengine.org/"
-DOWNLOAD="https://github.com/vassalengine/vassal/releases/download/3.5.7/VASSAL-3.5.7-linux.tar.bz2"
-MD5SUM="93940c23e91cd57323b2e9379fb8ddd3"
+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 69d0f5120e..31f5b1cba6 100644
--- a/games/ZEsarUX/ZEsarUX.SlackBuild
+++ b/games/ZEsarUX/ZEsarUX.SlackBuild
@@ -2,7 +2,7 @@
# 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
@@ -25,7 +25,7 @@
cd $(dirname $0) ; CWD=$(pwd)
PRGNAM=ZEsarUX
-VERSION=${VERSION:-6.0}
+VERSION=${VERSION:-10.10}
BUILD=${BUILD:-1}
TAG=${TAG:-_SBo}
PKGTYPE=${PKGTYPE:-tgz}
@@ -38,9 +38,6 @@ 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
@@ -65,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
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/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 d021fcb05b..c6c40eb882 100644
--- a/games/abuse/abuse.SlackBuild
+++ b/games/abuse/abuse.SlackBuild
@@ -1,8 +1,8 @@
#!/bin/bash
-#
-# Slackware build script for Abuse
-#
-# Written by Rex Hauser <thundermachinegun[AT]gmail.com>
+
+# 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,12 +21,26 @@
# 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}
@@ -38,9 +52,6 @@ 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
@@ -50,11 +61,6 @@ 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=""
@@ -75,42 +81,49 @@ 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
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 72a27330be..cdf87fb06a 100644
--- a/games/ace/ace.SlackBuild
+++ b/games/ace/ace.SlackBuild
@@ -2,27 +2,44 @@
# 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
-# 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
@@ -32,8 +49,8 @@ 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"
@@ -55,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
-
-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/COPYING docs/intro.html docs/toolkit.html $PKG/usr/doc/$PRGNAM-$VERSION
-cat $CWD/$PRGNAM.SlackBuild > $PKG/usr/doc/$PRGNAM-$VERSION/$PRGNAM.SlackBuild
+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
+
+PKGDOC=$PKG/usr/doc/$PRGNAM-$VERSION
+mkdir -p $PKGDOC
+cp -a AUTHORS ChangeLog NEWS README docs/* $PKGDOC
+cat $CWD/$PRGNAM.SlackBuild > $PKGDOC/$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
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 72f54fe701..df2911a7f0 100644
--- a/games/adl/adl.SlackBuild
+++ b/games/adl/adl.SlackBuild
@@ -2,19 +2,17 @@
# 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
@@ -30,7 +28,7 @@ cd $(dirname $0) ; CWD=$(pwd)
PRGNAM=adl
VERSION=${VERSION:-20110628}
-BUILD=${BUILD:-1}
+BUILD=${BUILD:-2}
TAG=${TAG:-_SBo}
PKGTYPE=${PKGTYPE:-tgz}
@@ -195,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"
diff --git a/games/adl/adl.info b/games/adl/adl.info
index 5ddcb5f2cc..a69b8cbdba 100644
--- a/games/adl/adl.info
+++ b/games/adl/adl.info
@@ -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/advancemame/advancemame.SlackBuild b/games/advancemame/advancemame.SlackBuild
index aa9c18385a..9384419a66 100644
--- a/games/advancemame/advancemame.SlackBuild
+++ b/games/advancemame/advancemame.SlackBuild
@@ -4,10 +4,12 @@
# 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
@@ -28,8 +30,8 @@
cd $(dirname $0) ; CWD=$(pwd)
PRGNAM=advancemame
-VERSION=${VERSION:-3.9}
-BUILD=${BUILD:-2}
+VERSION=${VERSION:-3.10}
+BUILD=${BUILD:-1}
TAG=${TAG:-_SBo}
PKGTYPE=${PKGTYPE:-tgz}
@@ -73,15 +75,8 @@ 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 {} \+
-
-# 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"
@@ -94,9 +89,6 @@ PKGDOC=$PKG/usr/doc/$PRGNAM-$VERSION
# but the link fails. advancemame already builds about 8-10x as fast as
# mame without it, so not worth worrying about this.
-# 20211004 bkw: upstream commit f8688cae needed for -current.
-patch -p1 < $CWD/compilefix.diff
-
CFLAGS="$SLKCFLAGS" \
CXXFLAGS="$SLKCFLAGS" \
./configure \
@@ -117,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
@@ -131,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:
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/compilefix.diff b/games/advancemame/compilefix.diff
deleted file mode 100644
index ddf815a4b7..0000000000
--- a/games/advancemame/compilefix.diff
+++ /dev/null
@@ -1,24 +0,0 @@
-diff --git a/src/drivers/cavepgm.c b/src/drivers/cavepgm.c
-index 38d3dae8..df6e97ab 100644
---- a/src/drivers/cavepgm.c
-+++ b/src/drivers/cavepgm.c
-@@ -287,7 +287,7 @@ Notes:
- #include "timer.h"
-
-
--UINT16 *pgm_mainram, *pgm_bg_videoram, *pgm_tx_videoram, *pgm_videoregs, *pgm_rowscrollram;
-+extern UINT16 *pgm_mainram, *pgm_bg_videoram, *pgm_tx_videoram, *pgm_videoregs, *pgm_rowscrollram;
- static UINT8 *z80_mainram;
- static UINT32 *arm7_shareram;
- static UINT32 arm7_latch;
-@@ -852,8 +852,8 @@ static void expand_32x32x5bpp(void)
- /* This function expands the sprite colour data (in the A Roms) from 3 pixels
- in each word to a byte per pixel making it easier to use */
-
--UINT8 *pgm_sprite_a_region;
--size_t pgm_sprite_a_region_allocate;
-+extern UINT8 *pgm_sprite_a_region;
-+extern size_t pgm_sprite_a_region_allocate;
-
- static void expand_colourdata(void)
- {
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 6e7691c0cb..3ed72022ac 100644
--- a/games/advancescan/advancescan.SlackBuild
+++ b/games/advancescan/advancescan.SlackBuild
@@ -4,7 +4,7 @@
# 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.
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 c490b1ff82..ab08d344b7 100644
--- a/games/ags/ags.SlackBuild
+++ b/games/ags/ags.SlackBuild
@@ -26,7 +26,7 @@
cd $(dirname $0) ; CWD=$(pwd)
PRGNAM=ags
-VERSION=${VERSION:-3.5.1.12}
+VERSION=${VERSION:-3.6.1.23}
BUILD=${BUILD:-1}
TAG=${TAG:-_SBo}
PKGTYPE=${PKGTYPE:-tgz}
@@ -39,9 +39,6 @@ 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
@@ -52,16 +49,19 @@ PKG=$TMP/package-$PRGNAM
OUTPUT=${OUTPUT:-/tmp}
if [ "$ARCH" = "i586" ]; then
- SLKCFLAGS="-O2 -march=i586 -mtune=i686"
+ 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
@@ -71,21 +71,21 @@ rm -rf $PKG
rm -rf $TMP/$PRGNAM-$VERSION
mkdir -p $TMP $PKG $OUTPUT
cd $TMP
-tar xvf $CWD/$PRGNAM-v.${VERSION}.tar.gz
-cd $PRGNAM-v.$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 {} \+
CFLAGS="$SLKCFLAGS" \
CXXFLAGS="$SLKCFLAGS" \
make --directory=Engine
mkdir -p $PKG/usr/bin
-cp Engine/ags $PKG/usr/bin
+install -s -m0755 Engine/ags $PKG/usr/bin
mkdir -p $PKG/usr/doc/$PRGNAM-$VERSION
cp -a README.md $PKG/usr/doc/$PRGNAM-$VERSION
diff --git a/games/ags/ags.info b/games/ags/ags.info
index 77f788e021..f094e76463 100644
--- a/games/ags/ags.info
+++ b/games/ags/ags.info
@@ -1,10 +1,10 @@
PRGNAM="ags"
-VERSION="3.5.1.12"
+VERSION="3.6.1.23"
HOMEPAGE="https://github.com/adventuregamestudio/ags"
-DOWNLOAD="https://github.com/adventuregamestudio/ags/archive/v.3.5.1.12/ags-v.3.5.1.12.tar.gz"
-MD5SUM="3a7c897468f38dfa25420540d82efb64"
+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="dumb"
+REQUIRES="SDL2_sound"
MAINTAINER="Yth - Arnaud"
EMAIL="yth@ythogtha.org"
diff --git a/games/aisleriot/aisleriot.SlackBuild b/games/aisleriot/aisleriot.SlackBuild
index 060db98fd1..3c2ec3a275 100644
--- a/games/aisleriot/aisleriot.SlackBuild
+++ b/games/aisleriot/aisleriot.SlackBuild
@@ -2,7 +2,7 @@
# 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
@@ -25,8 +25,8 @@
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}
@@ -38,9 +38,6 @@ 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
@@ -70,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 . \
@@ -79,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
@@ -107,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
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 7bd84baa32..4783e9e786 100644
--- a/games/aklabeth/aklabeth.SlackBuild
+++ b/games/aklabeth/aklabeth.SlackBuild
@@ -2,7 +2,7 @@
# 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.
diff --git a/games/aklabeth/aklabeth.info b/games/aklabeth/aklabeth.info
index 7dfddc7da8..24f564636d 100644
--- a/games/aklabeth/aklabeth.info
+++ b/games/aklabeth/aklabeth.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/alephone/alephone.SlackBuild b/games/alephone/alephone.SlackBuild
index f5ee5c4bc6..cc44600a50 100644
--- a/games/alephone/alephone.SlackBuild
+++ b/games/alephone/alephone.SlackBuild
@@ -2,10 +2,13 @@
# 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
@@ -17,7 +20,7 @@
cd $(dirname $0) ; CWD=$(pwd)
PRGNAM=alephone
-VERSION=${VERSION:-20210408}
+VERSION=${VERSION:-20240119}
BUILD=${BUILD:-1}
TAG=${TAG:-_SBo}
PKGTYPE=${PKGTYPE:-tgz}
@@ -96,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
diff --git a/games/alephone/alephone.info b/games/alephone/alephone.info
index a6aa093373..c352b1c174 100644
--- a/games/alephone/alephone.info
+++ b/games/alephone/alephone.info
@@ -1,10 +1,10 @@
PRGNAM="alephone"
-VERSION="20210408"
+VERSION="20240119"
HOMEPAGE="https://alephone.lhowon.org/"
-DOWNLOAD="https://github.com/Aleph-One-Marathon/alephone/releases/download/release-20210408/AlephOne-20210408.tar.bz2"
-MD5SUM="f65d4923a931984ec354a4b5373e1303"
+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 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
index 1f07e24f46..981a4769a3 100644
--- a/games/alienarena/alienarena-7.66-no-qglBlitFramebufferEXT.patch
+++ b/games/alienarena/alienarena-7.66-no-qglBlitFramebufferEXT.patch
@@ -1,22 +1,19 @@
-diff -up alienarena-7.66/source/ref_gl/r_shadowmaps.c.no-qglBlitFramebufferEXT alienarena-7.66/source/ref_gl/r_shadowmaps.c
---- alienarena-7.66/source/ref_gl/r_shadowmaps.c.no-qglBlitFramebufferEXT 2013-11-05 14:46:37.611487279 -0500
-+++ alienarena-7.66/source/ref_gl/r_shadowmaps.c 2013-11-05 15:00:47.510933729 -0500
-@@ -95,12 +95,12 @@ void R_CheckFBOExtensions (void)
-
- //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;
-- }
-- }
-+ // if(gl_state.hasFBOblit) {
-+ // if(!qglBlitFramebufferEXT) {
-+ // Com_Printf("glBlitFramebufferEXT not found...\n");
-+ // gl_state.hasFBOblit = false;
-+ // }
-+ //}
- }
-
-
+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 a5ec68d686..fa690a79c9 100644
--- a/games/alienarena/alienarena.SlackBuild
+++ b/games/alienarena/alienarena.SlackBuild
@@ -22,11 +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:
+# - 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}
@@ -38,9 +43,6 @@ 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
@@ -75,16 +77,20 @@ 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 \
+ -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: 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" \
@@ -103,17 +109,19 @@ 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 -m 0644 $CWD/$PRGNAM.desktop $PKG/usr/share/applications
-cp -a 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
diff --git a/games/an/an.SlackBuild b/games/an/an.SlackBuild
index b92e940f78..f41e6ff2cb 100644
--- a/games/an/an.SlackBuild
+++ b/games/an/an.SlackBuild
@@ -2,10 +2,14 @@
# 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
@@ -38,16 +42,12 @@ 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
@@ -63,7 +63,7 @@ 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 /111 -a \! -perm 755 -a -exec chmod 755 {} \+ -o \
diff --git a/games/an/an.info b/games/an/an.info
index 6e2876b909..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="https://deb.debian.org/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/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 e6dbc5bbd3..1601a24c8b 100644
--- a/games/angband/angband.SlackBuild
+++ b/games/angband/angband.SlackBuild
@@ -2,32 +2,26 @@
# 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}
@@ -39,9 +33,6 @@ 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
@@ -71,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 \
@@ -95,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
@@ -113,9 +101,10 @@ 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
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 a46a00c228..3e485c7d33 100644
--- a/games/antares/antares.SlackBuild
+++ b/games/antares/antares.SlackBuild
@@ -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.
+# 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}
@@ -38,9 +41,6 @@ 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
@@ -61,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
@@ -90,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
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.info b/games/antimicro/antimicro.info
deleted file mode 100644
index 4890aba69c..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=""
-MAINTAINER="Klaatu"
-EMAIL="klaatu@member.fsf.org"
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/antimicro/antimicro.SlackBuild b/games/antimicrox/antimicrox.SlackBuild
index 672156bd11..868ba7e13e 100644
--- a/games/antimicro/antimicro.SlackBuild
+++ b/games/antimicrox/antimicrox.SlackBuild
@@ -1,5 +1,5 @@
#!/bin/bash
-# Slackware build script for antimicro
+# Slackware build script for antimicrox
# Copyright 2015-2016 Klaatu Wellington, NZ
#
# GNU All-Permissive License
@@ -8,14 +8,22 @@
# 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=antimicro
-VERSION=${VERSION:-2.23}
-BUILD=${BUILD:-1}
+PRGNAM=antimicrox
+VERSION=${VERSION:-3.2.2}
+BUILD=${BUILD:-2}
TAG=${TAG:-_SBo}
PKGTYPE=${PKGTYPE:-tgz}
-QT=${QT:-4}
DOCDIR=${DOCDIR:-/usr/doc}
MANDIR=${MANDIR:-/usr/man}
@@ -27,9 +35,6 @@ 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
@@ -64,39 +69,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 {} \+
+
+# 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
-QT_SELECT=`echo $QT` cmake \
+cmake \
-DCMAKE_C_FLAGS:STRING="$SLKCFLAGS" \
-DCMAKE_CXX_FLAGS:STRING="$SLKCFLAGS" \
- -DUSE_SDL_2=ON \
+ -DAPPDATA=OFF \
+ -DCMAKE_INSTALL_MANDIR=$MANDIR \
-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
+# fix hardcoded path
+sed -i 's,share/man,man,' other/cmake_install.cmake
+make
+make install/strip DESTDIR=$PKG
+cd ..
-cat other/$PRGNAM.desktop > $PKG/usr/share/applications/$PRGNAM.desktop
+# 20220408 bkw: do not want!
+rm -rf $PKG/usr/share/doc
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
+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
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/antimicro/doinst.sh b/games/antimicrox/doinst.sh
index 9a8ded3c60..9424ce43ff 100644
--- a/games/antimicro/doinst.sh
+++ b/games/antimicrox/doinst.sh
@@ -5,3 +5,9 @@ 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.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 b2ab18d1a1..40f3cc31c2 100644
--- a/games/armagetronad/armagetronad.SlackBuild
+++ b/games/armagetronad/armagetronad.SlackBuild
@@ -21,11 +21,15 @@
# 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.1.0}
-BUILD=${BUILD:-1}
+BUILD=${BUILD:-2}
TAG=${TAG:-_SBo}
PKGTYPE=${PKGTYPE:-tgz}
@@ -37,9 +41,6 @@ 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
@@ -74,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
@@ -118,7 +119,7 @@ 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 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
diff --git a/games/armagetronad/doinst.sh b/games/armagetronad/doinst.sh
index c21aa1ca2c..0bd54d40c6 100644
--- a/games/armagetronad/doinst.sh
+++ b/games/armagetronad/doinst.sh
@@ -1,17 +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
+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 ab7717623f..1b72bb0e4e 100644
--- a/games/arnold-cpc/arnold-cpc.SlackBuild
+++ b/games/arnold-cpc/arnold-cpc.SlackBuild
@@ -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.
+# 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}
@@ -42,9 +49,6 @@ 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
@@ -79,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 \
@@ -99,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
@@ -118,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
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.SlackBuild b/games/arx-libertatis/arx-libertatis.SlackBuild
index 31c64b575e..b19ee4f364 100644
--- a/games/arx-libertatis/arx-libertatis.SlackBuild
+++ b/games/arx-libertatis/arx-libertatis.SlackBuild
@@ -2,7 +2,7 @@
# 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,12 +22,14 @@
# 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.2_dev_2019_07_22}
-SRCVER=$(echo $VERSION | tr _ - )
-BUILD=${BUILD:-1}
+VERSION=${VERSION:-1.2.1}
+BUILD=${BUILD:-2}
TAG=${TAG:-_SBo}
PKGTYPE=${PKGTYPE:-tgz}
@@ -39,9 +41,6 @@ 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
@@ -70,15 +69,15 @@ set -e
rm -rf $PKG
mkdir -p $TMP $PKG $OUTPUT
cd $TMP
-rm -rf $PRGNAM-$SRCVER
-tar xvf $CWD/$PRGNAM-$SRCVER.tar.xz
-cd $PRGNAM-$SRCVER
+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 \
+ -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
diff --git a/games/arx-libertatis/arx-libertatis.info b/games/arx-libertatis/arx-libertatis.info
index 1f39a8a936..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.2_dev_2019_07_22"
+VERSION="1.2.1"
HOMEPAGE="http://arx-libertatis.org"
-DOWNLOAD="https://arx-libertatis.org/files/snapshots/arx-libertatis-1.2-dev-2019-07-22/arx-libertatis-1.2-dev-2019-07-22.tar.xz"
-MD5SUM="eda328e8cf753678e924b3bd9c629d79"
+DOWNLOAD="https://arx-libertatis.org/files/arx-libertatis-1.2.1.tar.xz"
+MD5SUM="e5bc9482dada975b6b8a2dc5451f3671"
DOWNLOAD_x86_64=""
MD5SUM_x86_64=""
-REQUIRES="glm 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 e585f89aac..739fbb9009 100644
--- a/games/asc/asc.SlackBuild
+++ b/games/asc/asc.SlackBuild
@@ -90,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 \
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/assaultcube-reloaded/assaultcube-reloaded.SlackBuild b/games/assaultcube-reloaded/assaultcube-reloaded.SlackBuild
index 0f66d7f7ea..ddaf08d934 100644
--- a/games/assaultcube-reloaded/assaultcube-reloaded.SlackBuild
+++ b/games/assaultcube-reloaded/assaultcube-reloaded.SlackBuild
@@ -2,7 +2,7 @@
# 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
@@ -26,7 +26,7 @@ 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}
@@ -39,9 +39,6 @@ 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
@@ -71,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 \
diff --git a/games/assaultcube-reloaded/assaultcube-reloaded.info b/games/assaultcube-reloaded/assaultcube-reloaded.info
index d802a6ea33..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="enet"
+REQUIRES=""
MAINTAINER="Dimitris Zlatanidis"
-EMAIL="d.zlatanidis@gmail.com"
+EMAIL="dslackw@gmail.com"
diff --git a/games/assaultcube/assaultcube.SlackBuild b/games/assaultcube/assaultcube.SlackBuild
index 97faa8a51f..9af7a40f28 100644
--- a/games/assaultcube/assaultcube.SlackBuild
+++ b/games/assaultcube/assaultcube.SlackBuild
@@ -22,10 +22,10 @@
# 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}
@@ -33,7 +33,7 @@ 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
@@ -51,8 +51,8 @@ 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
diff --git a/games/asteroidsinfinity/asteroidsinfinity.SlackBuild b/games/asteroidsinfinity/asteroidsinfinity.SlackBuild
index 075aba90ff..a317e9e6df 100644
--- a/games/asteroidsinfinity/asteroidsinfinity.SlackBuild
+++ b/games/asteroidsinfinity/asteroidsinfinity.SlackBuild
@@ -2,7 +2,7 @@
# 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.
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 a4e0a090c2..e1efecf581 100644
--- a/games/astromenace/astromenace.SlackBuild
+++ b/games/astromenace/astromenace.SlackBuild
@@ -2,7 +2,7 @@
# 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
@@ -25,7 +25,7 @@
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}
@@ -79,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 {} \;
+sed -i s/\#include\ \<cmath\>/\#include\ \<cmath\>\\n\#include\ \<cstdint\>/ ./src/core/model3d/model3d.cpp
+
cmake ./ # create Makefile
make # build game
diff --git a/games/astromenace/astromenace.info b/games/astromenace/astromenace.info
index 883d632b4e..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"
MAINTAINER="Dimitris Zlatanidis"
-EMAIL="d.zlatanidis@gmail.com"
+EMAIL="dslackw@gmail.com"
diff --git a/games/atari++/atari++.SlackBuild b/games/atari++/atari++.SlackBuild
index 5d07ec5530..cc50ec00a1 100644
--- a/games/atari++/atari++.SlackBuild
+++ b/games/atari++/atari++.SlackBuild
@@ -2,10 +2,11 @@
# 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*
@@ -15,7 +16,7 @@
cd $(dirname $0) ; CWD=$(pwd)
PRGNAM=atari++
-VERSION=${VERSION:-1.84}
+VERSION=${VERSION:-1.85}
BUILD=${BUILD:-1}
TAG=${TAG:-_SBo}
PKGTYPE=${PKGTYPE:-tgz}
diff --git a/games/atari++/atari++.info b/games/atari++/atari++.info
index aa55b189c1..a10699fd20 100644
--- a/games/atari++/atari++.info
+++ b/games/atari++/atari++.info
@@ -1,10 +1,10 @@
PRGNAM="atari++"
-VERSION="1.84"
+VERSION="1.85"
HOMEPAGE="http://www.xl-project.com/"
-DOWNLOAD="http://www.xl-project.com/download/atari++_1.84.tar.gz"
-MD5SUM="569288245236971b7f6115812fb745b1"
+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/atari800/atari800.SlackBuild b/games/atari800/atari800.SlackBuild
index df5506c710..a4d603a8f3 100644
--- a/games/atari800/atari800.SlackBuild
+++ b/games/atari800/atari800.SlackBuild
@@ -2,10 +2,20 @@
# 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.
@@ -23,7 +33,7 @@
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}
@@ -120,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
@@ -129,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
@@ -144,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
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 77a164bc2c..7cd1df91b1 100644
--- a/games/atari800_roms/atari800_roms.SlackBuild
+++ b/games/atari800_roms/atari800_roms.SlackBuild
@@ -2,7 +2,7 @@
# 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.
diff --git a/games/atari800_roms/atari800_roms.info b/games/atari800_roms/atari800_roms.info
index fdf8e5e198..2b22d3e76e 100644
--- a/games/atari800_roms/atari800_roms.info
+++ b/games/atari800_roms/atari800_roms.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/barrage/barrage.SlackBuild b/games/barrage/barrage.SlackBuild
index 2fc577503d..7fae58da38 100644
--- a/games/barrage/barrage.SlackBuild
+++ b/games/barrage/barrage.SlackBuild
@@ -14,7 +14,7 @@ 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
@@ -32,8 +32,8 @@ 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"
diff --git a/games/bastet/bastet.SlackBuild b/games/bastet/bastet.SlackBuild
index 7e73f97d9b..501b36cd6b 100644
--- a/games/bastet/bastet.SlackBuild
+++ b/games/bastet/bastet.SlackBuild
@@ -2,7 +2,7 @@
# 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.
diff --git a/games/bastet/bastet.info b/games/bastet/bastet.info
index 243af18ed8..7d3b927fe6 100644
--- a/games/bastet/bastet.info
+++ b/games/bastet/bastet.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/beetle-psx-libretro/README b/games/beetle-psx-libretro/README
new file mode 100644
index 0000000000..8f9444318f
--- /dev/null
+++ b/games/beetle-psx-libretro/README
@@ -0,0 +1,39 @@
+Mednafen PSX (Beetle PSX) is a Sony PlayStation1 video game system
+emulator that can be used as a libretro core. It is a libretro port of
+Mednafen PlayStation.
+
+Mednafen-PSX requires the following BIOS image files for operation:
+
+* scph5500.bin (MD5 sum: 8dd7d5296a650fac7319bce665a6a53c) NTSC-J
+* scph5501.bin (MD5 sum: 490f666e1afb15b7362b406ed1cea246) NTSC-U
+* scph5502.bin (MD5 sum: 32736f17079d0b2b7024407c39bd3050) PAL
+
+The bios names are case sensitive.
+
+The scph7003.bin BIOS image is the same as scph5501.bin, but will need
+to be renamed to scph5501.bin to be used.
+
+Mednafen can load CD-ROM games from a ripped/dumped copy of the
+disc such as CUE+BIN, CloneCD "CCD/IMG/SUB" rips and cdrdao "TOC"
+files. For games with more than one CD create a M3U file(plain-text,
+".m3u" extension) and enter the filenames of the CUE/TOC/CCD files.
+
+Beetle PSX can use an OpenGL or Vulkan renderer instead of the
+accurate software renderer. This will require support in the libretro
+frontend, video card and driver.
+
+To switch between OpenGL and Vulkan renderers configure the video
+driver in RetroArch. This can be done in the menu at 'Settings >
+Drivers > Video Driver'.
+
+To build the OpenGL renderer use:
+ OPENGL=1 ./beetle-psx-libretro.SlackBuild
+
+To build the Vulkan renderer use:
+ VULKAN=1 ./beetle-psx-libretro.SlackBuild
+
+To build both the OpenGL and Vulkan renderers use:
+ HW=1 ./beetle-psx-libretro.SlackBuild
+
+To build the debugging symbols use:
+ DEBUG=1 ./beetle-psx-libretro.SlackBuild
diff --git a/games/beetle-psx-libretro/beetle-psx-libretro.SlackBuild b/games/beetle-psx-libretro/beetle-psx-libretro.SlackBuild
new file mode 100644
index 0000000000..d4788f604b
--- /dev/null
+++ b/games/beetle-psx-libretro/beetle-psx-libretro.SlackBuild
@@ -0,0 +1,108 @@
+#!/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
+# 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=beetle-psx-libretro
+LIBNAM=mednafen_psx_libretro
+VERSION=${VERSION:-2022.02.11_88929ae}
+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}
+
+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.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 {} \;
+
+[ "${DEBUG:=0}" != 0 ] && DEBUG=1
+[ "${HW:-0}" != 0 ] && { OPENGL=1; VULKAN=1; }
+[ "${OPENGL:=0}" != 0 ] && OPENGL=1
+[ "${VULKAN:=0}" != 0 ] && VULKAN=1
+
+if [ $OPENGL != 0 ] || [ $VULKAN != 0 ]; then
+ LIBNAM="$(printf %s "$LIBNAM" | sed 's/psx/psx_hw/')"
+fi
+
+make \
+ DEBUG=$DEBUG \
+ VULKAN_DEBUG=$DEBUG \
+ HAVE_OPENGL=$OPENGL \
+ HAVE_VULKAN=$VULKAN \
+ GIT_VERSION="${VERSION#*_}"
+
+install -Dm0644 $LIBNAM.so $PKG/usr/lib${LIBDIRSUFFIX}/libretro/$LIBNAM.so
+
+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/parallel-psx
+for DOCDIR in . parallel-psx; do
+ for DOC in COPYING README.md; do
+ cp -a $DOCDIR/$DOC $PKG/usr/doc/$PRGNAM-$VERSION/$DOCDIR
+ done
+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/beetle-psx-libretro/beetle-psx-libretro.info b/games/beetle-psx-libretro/beetle-psx-libretro.info
new file mode 100644
index 0000000000..5e013141b3
--- /dev/null
+++ b/games/beetle-psx-libretro/beetle-psx-libretro.info
@@ -0,0 +1,10 @@
+PRGNAM="beetle-psx-libretro"
+VERSION="2022.02.11_88929ae"
+HOMEPAGE="https://www.libretro.com/"
+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="khronosschoty"
+EMAIL="khronosschoty@posteo.org"
diff --git a/games/beetle-psx-libretro/slack-desc b/games/beetle-psx-libretro/slack-desc
new file mode 100644
index 0000000000..c4d2bc1506
--- /dev/null
+++ b/games/beetle-psx-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------------------------------------------------------|
+beetle-psx-libretro: beetle-psx-libretro (libretro fork of Mednafen PSX)
+beetle-psx-libretro:
+beetle-psx-libretro: Mednafen PSX (Beetle PSX) is a Sony PlayStation1 video game system
+beetle-psx-libretro: emulator that can be used as a libretro core. It is a libretro port
+beetle-psx-libretro: of Mednafen PlayStation.
+beetle-psx-libretro:
+beetle-psx-libretro: Homepage: https://www.libretro.com/
+beetle-psx-libretro:
+beetle-psx-libretro:
+beetle-psx-libretro:
+beetle-psx-libretro:
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 e33e213886..89a7d5ce93 100644
--- a/games/berusky/berusky.SlackBuild
+++ b/games/berusky/berusky.SlackBuild
@@ -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:
+# - 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}
@@ -38,9 +44,6 @@ 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
@@ -73,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
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 9e9390b1bd..cfaf5376de 100644
--- a/games/berusky2-data/berusky2-data.SlackBuild
+++ b/games/berusky2-data/berusky2-data.SlackBuild
@@ -2,7 +2,7 @@
# 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
@@ -26,7 +26,7 @@ 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}
@@ -71,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 . \
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 1eb6f1f0e3..a7925e511b 100644
--- a/games/berusky2/berusky2.SlackBuild
+++ b/games/berusky2/berusky2.SlackBuild
@@ -2,7 +2,7 @@
# 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
@@ -25,7 +25,7 @@
cd $(dirname $0) ; CWD=$(pwd)
PRGNAM=berusky2
-VERSION=${VERSION:-20170630_974e2e5}
+VERSION=${VERSION:-0.12}
BUILD=${BUILD:-1}
TAG=${TAG:-_SBo}
PKGTYPE=${PKGTYPE:-tgz}
@@ -38,9 +38,6 @@ 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
@@ -70,7 +67,7 @@ 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 . \
@@ -79,12 +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\" \
@@ -92,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
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 7db48900d1..7f74f09e96 100644
--- a/games/berusky2/berusky2.info
+++ b/games/berusky2/berusky2.info
@@ -1,10 +1,10 @@
PRGNAM="berusky2"
-VERSION="20170630_974e2e5"
+VERSION="0.12"
HOMEPAGE="http://anakreon.cz/?q=node/2"
-DOWNLOAD="http://ponce.cc/slackware/sources/repo/berusky2-20170630_974e2e5.tar.xz"
-MD5SUM="f4a1306eeff8a38591898cafa6d1934d"
+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/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/vcmi-wog/vcmi-wog.SlackBuild b/games/blasphemer/blasphemer.SlackBuild
index 579d630bea..e1a1134f36 100644
--- a/games/vcmi-wog/vcmi-wog.SlackBuild
+++ b/games/blasphemer/blasphemer.SlackBuild
@@ -1,8 +1,8 @@
#!/bin/bash
-# Slackware build script for vcmi-wog
+# Slackware build script for blasphemer
-# Copyright 2015-2021 Petar Petrov slackalaxy@gmail.com
+# Copyright 2022 Bloyburt
# All rights reserved.
#
# Redistribution and use of this script, with or without modification, is
@@ -24,9 +24,8 @@
cd $(dirname $0) ; CWD=$(pwd)
-PRGNAM=vcmi-wog
-SRCNAM=wog
-VERSION=${VERSION:-20121203}
+PRGNAM=blasphemer
+VERSION=${VERSION:-0.1.8}
BUILD=${BUILD:-1}
TAG=${TAG:-_SBo}
PKGTYPE=${PKGTYPE:-tgz}
@@ -51,22 +50,19 @@ rm -rf $PKG
mkdir -p $TMP $PKG $OUTPUT
cd $TMP
rm -rf $PRGNAM-$VERSION
-mkdir $PRGNAM-$VERSION
-cd $PRGNAM-$VERSION
-unzip $CWD/$SRCNAM.zip
+mkdir -p $PRGNAM-$VERSION
+cd $TMP/$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/share/games/doom $PKG/usr/doc/$PRGNAM-$VERSION
-mkdir -p $PKG/usr/share/vcmi
-cp -a Mods $PKG/usr/share/vcmi
+unzip $CWD/blasphem-$VERSION.zip && unzip $CWD/blasphdm-$VERSION.zip
+chown -R root:root .
+chmod 644 *
+cp *.wad $PKG/usr/share/games/doom
+cd -
-mkdir -p $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
mkdir -p $PKG/install
cat $CWD/slack-desc > $PKG/install/slack-desc
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/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 476d700f53..4d3f7b65b6 100644
--- a/games/blobwars/blobwars.SlackBuild
+++ b/games/blobwars/blobwars.SlackBuild
@@ -9,11 +9,16 @@
# 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}
@@ -25,9 +30,6 @@ 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
@@ -61,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
@@ -71,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 -Wno-error=format-truncation=" 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
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 b5e02f39f8..0000000000
--- a/games/bloodcm/README
+++ /dev/null
@@ -1,13 +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".
diff --git a/games/bloodcm/bloodcm.SlackBuild b/games/bloodcm/bloodcm.SlackBuild
deleted file mode 100644
index a0f146fad8..0000000000
--- a/games/bloodcm/bloodcm.SlackBuild
+++ /dev/null
@@ -1,70 +0,0 @@
-#!/bin/bash
-
-# 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.
-
-cd $(dirname $0) ; CWD=$(pwd)
-
-PRGNAM=bloodcm
-VERSION=${VERSION:-12.2016}
-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
-
-# 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
diff --git a/games/bloodcm/bloodcm.info b/games/bloodcm/bloodcm.info
deleted file mode 100644
index 9707d9903c..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="https://slackware.uk/~urchlay/src/38-blood-crossmatching"
-MD5SUM="62c3371f353c07ed0bd42c96a37f7d08"
-DOWNLOAD_x86_64=""
-MD5SUM_x86_64=""
-REQUIRES="eduke32"
-MAINTAINER="B. Watson"
-EMAIL="yalhcru@gmail.com"
diff --git a/games/bloodfrontier/bloodfrontier.SlackBuild b/games/bloodfrontier/bloodfrontier.SlackBuild
index 9b2bedf924..172a6cffa9 100644
--- a/games/bloodfrontier/bloodfrontier.SlackBuild
+++ b/games/bloodfrontier/bloodfrontier.SlackBuild
@@ -19,7 +19,7 @@ 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
@@ -37,8 +37,8 @@ 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
diff --git a/games/bluemoon/bluemoon.SlackBuild b/games/bluemoon/bluemoon.SlackBuild
index 972411cb90..37045ee706 100644
--- a/games/bluemoon/bluemoon.SlackBuild
+++ b/games/bluemoon/bluemoon.SlackBuild
@@ -14,7 +14,7 @@ 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
@@ -32,8 +32,8 @@ 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"
diff --git a/games/bluez-sixaxis/bluez-sixaxis.SlackBuild b/games/bluez-sixaxis/bluez-sixaxis.SlackBuild
index 7e3d24b605..2175761999 100644
--- a/games/bluez-sixaxis/bluez-sixaxis.SlackBuild
+++ b/games/bluez-sixaxis/bluez-sixaxis.SlackBuild
@@ -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,
@@ -26,7 +26,7 @@ cd $(dirname $0) ; CWD=$(pwd)
PRGNAM=bluez-sixaxis
SRCNAM=bluez
VERSION=${VERSION:-5.58}
-BUILD=${BUILD:-1}
+BUILD=${BUILD:-2}
TAG=${TAG:-_SBo}
PKGTYPE=${PKGTYPE:-tgz}
@@ -53,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=""
@@ -117,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
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 6ac77f7727..15d75aec69 100644
--- a/games/bomberclone/bomberclone.SlackBuild
+++ b/games/bomberclone/bomberclone.SlackBuild
@@ -22,11 +22,17 @@
# 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}
@@ -38,9 +44,6 @@ 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
@@ -75,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" \
@@ -90,6 +93,7 @@ LDFLAGS="-lm" \
--mandir=/usr/man \
--docdir=/usr/doc/$PRGNAM-$VERSION \
--disable-werror \
+ --bindir=/usr/games \
--build=$ARCH-slackware-linux
make
@@ -102,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
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/gens-gs/doinst.sh b/games/boosteroid/doinst.sh
index 5fb28930db..5fb28930db 100644
--- a/games/gens-gs/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 b03f8ca4a9..44bbcdd8fa 100644
--- a/games/boswars/boswars.SlackBuild
+++ b/games/boswars/boswars.SlackBuild
@@ -2,7 +2,7 @@
# 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
@@ -25,9 +25,9 @@
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}
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/brickout/brickout.SlackBuild b/games/brickout/brickout.SlackBuild
index d70f2307c8..dce8c072f4 100644
--- a/games/brickout/brickout.SlackBuild
+++ b/games/brickout/brickout.SlackBuild
@@ -2,7 +2,7 @@
# 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.
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 2d28673072..3fd3ffd236 100644
--- a/games/briquolo/briquolo.SlackBuild
+++ b/games/briquolo/briquolo.SlackBuild
@@ -8,25 +8,29 @@
# 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
-# 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
@@ -36,8 +40,8 @@ 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"
@@ -58,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
@@ -69,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
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/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 56ac327034..1c518cdd88 100644
--- a/games/bstone/bstone.SlackBuild
+++ b/games/bstone/bstone.SlackBuild
@@ -2,10 +2,12 @@
# 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.
@@ -25,7 +27,7 @@
cd $(dirname $0) ; CWD=$(pwd)
PRGNAM=bstone
-VERSION=${VERSION:-1.2.11}
+VERSION=${VERSION:-1.2.12}
BUILD=${BUILD:-1}
TAG=${TAG:-_SBo}
PKGTYPE=${PKGTYPE:-tgz}
diff --git a/games/bstone/bstone.info b/games/bstone/bstone.info
index 71be8f68b8..257a6a6c63 100644
--- a/games/bstone/bstone.info
+++ b/games/bstone/bstone.info
@@ -1,12 +1,12 @@
PRGNAM="bstone"
-VERSION="1.2.11"
+VERSION="1.2.12"
HOMEPAGE="https://bibendovsky.github.io/bstone/"
-DOWNLOAD="https://github.com/bibendovsky/bstone/archive/v1.2.11/bstone-1.2.11.tar.gz \
+DOWNLOAD="https://github.com/bibendovsky/bstone/archive/v1.2.12/bstone-1.2.12.tar.gz \
https://archive.org/download/BlakeStoneAliensOfGold/1bs30.zip"
-MD5SUM="2b8d6a48a20ae0dfeb942550fbf9721a \
+MD5SUM="5975da0506152a67d955d2d768d241ae \
a63c88fc5b399ffb5ed42dc215321f36"
DOWNLOAD_x86_64=""
MD5SUM_x86_64=""
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/burgerspace/burgerspace.SlackBuild b/games/burgerspace/burgerspace.SlackBuild
index 555d79e3cd..0531ccde0c 100644
--- a/games/burgerspace/burgerspace.SlackBuild
+++ b/games/burgerspace/burgerspace.SlackBuild
@@ -2,14 +2,16 @@
# 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.4}
+VERSION=${VERSION:-1.9.5}
BUILD=${BUILD:-1}
TAG=${TAG:-_SBo}
PKGTYPE=${PKGTYPE:-tgz}
@@ -80,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
diff --git a/games/burgerspace/burgerspace.info b/games/burgerspace/burgerspace.info
index 60aaee180f..a731394bba 100644
--- a/games/burgerspace/burgerspace.info
+++ b/games/burgerspace/burgerspace.info
@@ -1,10 +1,10 @@
PRGNAM="burgerspace"
-VERSION="1.9.4"
+VERSION="1.9.5"
HOMEPAGE="http://perso.b2b2c.ca/~sarrazip/dev/burgerspace.html"
-DOWNLOAD="https://slackware.uk/~urchlay/src/burgerspace-1.9.4.tar.gz"
-MD5SUM="c942143065bcb5ee235fb69df4389a7b"
+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 09f29a08af..069dd3ea7d 100644
--- a/games/bzflag/bzflag.SlackBuild
+++ b/games/bzflag/bzflag.SlackBuild
@@ -2,7 +2,8 @@
# 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
@@ -27,14 +28,14 @@
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
@@ -52,8 +53,8 @@ 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"
@@ -100,9 +101,11 @@ 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
diff --git a/games/bzflag/bzflag.info b/games/bzflag/bzflag.info
index d3d7f4c30c..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=""
-MAINTAINER="Martin Lefebvre"
-EMAIL="dadexter@gmail.com"
+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/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 f48388ebd0..2f2778a591 100644
--- a/games/ceferino/ceferino.SlackBuild
+++ b/games/ceferino/ceferino.SlackBuild
@@ -2,7 +2,7 @@
# 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.
diff --git a/games/ceferino/ceferino.info b/games/ceferino/ceferino.info
index 3e14733065..2561989a0d 100644
--- a/games/ceferino/ceferino.info
+++ b/games/ceferino/ceferino.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/cgames/cgames.SlackBuild b/games/cgames/cgames.SlackBuild
index e65efe8fe7..9fdb59635a 100644
--- a/games/cgames/cgames.SlackBuild
+++ b/games/cgames/cgames.SlackBuild
@@ -2,7 +2,7 @@
# 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,11 +22,16 @@
# 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}
@@ -38,9 +43,6 @@ 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
@@ -75,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" \
@@ -91,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
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 407695dea3..01df210cbf 100644
--- a/games/cgmadness/cgmadness.SlackBuild
+++ b/games/cgmadness/cgmadness.SlackBuild
@@ -4,11 +4,17 @@
# 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}
@@ -20,9 +26,6 @@ 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
@@ -57,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 \
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 304fd6742b..8aeae3b784 100644
--- a/games/cgoban/cgoban.SlackBuild
+++ b/games/cgoban/cgoban.SlackBuild
@@ -18,7 +18,7 @@ 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
@@ -36,8 +36,8 @@ 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"
diff --git a/games/chessx/chessx.SlackBuild b/games/chessx/chessx.SlackBuild
index 78b148ad79..214568d130 100644
--- a/games/chessx/chessx.SlackBuild
+++ b/games/chessx/chessx.SlackBuild
@@ -25,8 +25,8 @@
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}
@@ -79,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
@@ -97,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
diff --git a/games/chessx/chessx.info b/games/chessx/chessx.info
index 56a3a63f8f..ef855c006d 100644
--- a/games/chessx/chessx.info
+++ b/games/chessx/chessx.info
@@ -1,8 +1,8 @@
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=""
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 e32855f153..3683c71d8b 100644
--- a/games/chexquest3/chexquest3.SlackBuild
+++ b/games/chexquest3/chexquest3.SlackBuild
@@ -2,7 +2,7 @@
# 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.
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 1d34510710..a1482a9a97 100644
--- a/games/chocolate-doom/chocolate-doom.SlackBuild
+++ b/games/chocolate-doom/chocolate-doom.SlackBuild
@@ -2,7 +2,7 @@
# 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.
diff --git a/games/chocolate-doom/chocolate-doom.info b/games/chocolate-doom/chocolate-doom.info
index 6724c68128..bb2ddce85b 100644
--- a/games/chocolate-doom/chocolate-doom.info
+++ b/games/chocolate-doom/chocolate-doom.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_duke3D/README b/games/chocolate_duke3D/README
deleted file mode 100644
index 3b9ef785b6..0000000000
--- a/games/chocolate_duke3D/README
+++ /dev/null
@@ -1,16 +0,0 @@
-chocolate_duke3D (Faithful Duke Nukem 3D port)
-
-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 20d22e3ee9..0000000000
--- a/games/chocolate_duke3D/chocolate_duke3D.SlackBuild
+++ /dev/null
@@ -1,124 +0,0 @@
-#!/bin/bash
-
-# 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)
-
-# 20211004 bkw: look at upstream again, the only new commit makes the
-# build include the bundled enet headers instead of the system ones,
-# which we *don't* want. So, don't bother updating again.
-
-# 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.
-
-cd $(dirname $0) ; CWD=$(pwd)
-
-PRGNAM=chocolate_duke3D
-VERSION=${VERSION:-20150902_dd8db65}
-COMMIT=${COMMIT:-dd8db653e08cc3029a84dbfd36b2c927a8d3e8fc}
-BUILD=${BUILD:-1}
-TAG=${TAG:-_SBo}
-PKGTYPE=${PKGTYPE:-tgz}
-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
-
-if [ ! -z "${PRINT_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-$COMMIT
-unzip $CWD/$PRGNAM-$COMMIT.zip
-cd $PRGNAM-$COMMIT
-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 {} \+
-
-# 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
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/circuslinux/circuslinux.SlackBuild b/games/circuslinux/circuslinux.SlackBuild
index 8746ed81c0..c1fed43f13 100644
--- a/games/circuslinux/circuslinux.SlackBuild
+++ b/games/circuslinux/circuslinux.SlackBuild
@@ -2,16 +2,18 @@
# 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}
@@ -83,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
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 7b027985e8..ad5a84ca79 100644
--- a/games/ckmame/ckmame.SlackBuild
+++ b/games/ckmame/ckmame.SlackBuild
@@ -22,6 +22,9 @@
# 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
@@ -32,15 +35,12 @@ 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
-# 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
@@ -50,8 +50,8 @@ 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
@@ -69,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 \
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 07cbd121c9..576da09235 100644
--- a/games/clonekeen/clonekeen.SlackBuild
+++ b/games/clonekeen/clonekeen.SlackBuild
@@ -2,15 +2,17 @@
# 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}
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 3d9b8b4285..70cd44cd65 100644
--- a/games/clonekeen/clonekeen.info
+++ b/games/clonekeen/clonekeen.info
@@ -1,6 +1,6 @@
PRGNAM="clonekeen"
VERSION="8.4"
-HOMEPAGE="http://clonekeen.sourceforge.net/"
+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"
@@ -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 2566fcceeb..59c8f932a6 100644
--- a/games/colem/colem.SlackBuild
+++ b/games/colem/colem.SlackBuild
@@ -2,7 +2,7 @@
# 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.
diff --git a/games/colem/colem.info b/games/colem/colem.info
index 2ba42f6541..b05f92ab75 100644
--- a/games/colem/colem.info
+++ b/games/colem/colem.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/commandergenius/commandergenius.SlackBuild b/games/commandergenius/commandergenius.SlackBuild
index 76a03b6a1f..da1693a581 100644
--- a/games/commandergenius/commandergenius.SlackBuild
+++ b/games/commandergenius/commandergenius.SlackBuild
@@ -2,10 +2,11 @@
# 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
@@ -35,7 +36,7 @@
cd $(dirname $0) ; CWD=$(pwd)
PRGNAM=commandergenius
-VERSION=${VERSION:-3.0.8}
+VERSION=${VERSION:-3.2.0}
BUILD=${BUILD:-1}
TAG=${TAG:-_SBo}
PKGTYPE=${PKGTYPE:-tgz}
diff --git a/games/commandergenius/commandergenius.info b/games/commandergenius/commandergenius.info
index 11c3284ad2..763aa3049c 100644
--- a/games/commandergenius/commandergenius.info
+++ b/games/commandergenius/commandergenius.info
@@ -1,10 +1,10 @@
PRGNAM="commandergenius"
-VERSION="3.0.8"
+VERSION="3.2.0"
HOMEPAGE="https://gitlab.com/Dringgstein/Commander-Genius"
-DOWNLOAD="https://gitlab.com/Dringgstein/Commander-Genius/-/archive/v3.0.8/Commander-Genius-v3.0.8.tar.bz2"
-MD5SUM="f4890bdc83636ba19db3a8333f2d69ac"
+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=""
MAINTAINER="B. Watson"
-EMAIL="yalhcru@gmail.com"
+EMAIL="urchlay@slackware.uk"
diff --git a/games/connectagram/connectagram.SlackBuild b/games/connectagram/connectagram.SlackBuild
index cc75259635..9ed7fc2d12 100644
--- a/games/connectagram/connectagram.SlackBuild
+++ b/games/connectagram/connectagram.SlackBuild
@@ -37,7 +37,7 @@ 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
@@ -55,8 +55,8 @@ 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"
diff --git a/games/cosmic_assault/cosmic_assault.SlackBuild b/games/cosmic_assault/cosmic_assault.SlackBuild
index a6782f51ce..b09074ffd6 100644
--- a/games/cosmic_assault/cosmic_assault.SlackBuild
+++ b/games/cosmic_assault/cosmic_assault.SlackBuild
@@ -2,15 +2,22 @@
# 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}
@@ -39,6 +46,20 @@ 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 {} \+
+# 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
install -m0755 $CWD/$PRGNAM.sh $PKG/usr/games/$PRGNAM
@@ -46,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
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 048c2afc15..c8e12d3d65 100644
--- a/games/cosmosmash/cosmosmash.SlackBuild
+++ b/games/cosmosmash/cosmosmash.SlackBuild
@@ -2,7 +2,7 @@
# 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.
diff --git a/games/cosmosmash/cosmosmash.info b/games/cosmosmash/cosmosmash.info
index 20759e77b8..61aabdbcdd 100644
--- a/games/cosmosmash/cosmosmash.info
+++ b/games/cosmosmash/cosmosmash.info
@@ -7,4 +7,4 @@ 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 581d482f13..3e04332fa9 100644
--- a/games/cowsay/cowsay.SlackBuild
+++ b/games/cowsay/cowsay.SlackBuild
@@ -4,7 +4,7 @@
# 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
@@ -27,15 +27,12 @@
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 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
@@ -60,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
@@ -73,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
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 4fc56f8a34..b2717f91b2 100644
--- a/games/cpat/cpat.SlackBuild
+++ b/games/cpat/cpat.SlackBuild
@@ -2,11 +2,15 @@
# 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}
@@ -18,9 +22,6 @@ 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
@@ -55,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" \
@@ -79,7 +82,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 -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
diff --git a/games/crack-attack/crack-attack.SlackBuild b/games/crack-attack/crack-attack.SlackBuild
index a9dfab6547..1d97535a9b 100644
--- a/games/crack-attack/crack-attack.SlackBuild
+++ b/games/crack-attack/crack-attack.SlackBuild
@@ -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.
+# 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}
@@ -40,9 +43,6 @@ 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
@@ -77,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
@@ -100,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
diff --git a/games/stone_soup/README b/games/crawl/README
index 7ccc57b260..7ccc57b260 100644
--- a/games/stone_soup/README
+++ b/games/crawl/README
diff --git a/games/stone_soup/stone_soup.SlackBuild b/games/crawl/crawl.SlackBuild
index 48173ad877..dd6dac8db6 100644
--- a/games/stone_soup/stone_soup.SlackBuild
+++ b/games/crawl/crawl.SlackBuild
@@ -2,7 +2,7 @@
# Slackware build script for Dungeon Crawl Stone Soup
-# Copyright 2021, SlackBuilds.org Project, David Melik, Spokane, WA, USA
+# Copyright 2024, SlackBuilds.org Project, David Melik, Spokane, WA, USA
# All rights reserved.
#
# Redistribution and use of this script, with or without modification, is
@@ -24,11 +24,12 @@
cd $(dirname $0) ; CWD=$(pwd)
-PRGNAM=stone_soup
-VERSION=${VERSION:-0.26.0}
+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
@@ -38,9 +39,6 @@ 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
@@ -69,9 +67,9 @@ 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
+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 \
@@ -80,16 +78,16 @@ find -L . \
-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 \
+ # 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 $TARGET install \
+ make install \
prefix=/usr \
COPY_FONTS=1 \
DATADIR=/usr/share/games/crawl \
@@ -98,11 +96,11 @@ cd source
SDL2=1 \
TILES=1
make clean
- make $TARGET \
+ make \
prefix=/usr \
DATADIR=/usr/share/games/crawl \
SAVEDIR='~/.crawl/'
-cp crawl $PKG/usr/games/crawl-ascii
+ cp crawl $PKG/usr/games/crawl-ascii
cd ..
find $PKG -print0 | xargs -0 file | grep -e "executable" -e "shared object" | grep ELF \
@@ -112,8 +110,8 @@ 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
+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 \
diff --git a/games/stone_soup/stone_soup.desktop b/games/crawl/crawl.desktop
index 409b16bfb8..d5d1d60cce 100644
--- a/games/stone_soup/stone_soup.desktop
+++ b/games/crawl/crawl.desktop
@@ -5,4 +5,4 @@ Exec=crawl
Terminal=true
Type=Application
Categories=Game;
-Icon=stone_soup_icon-32x32
+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/stone_soup/doinst.sh b/games/crawl/doinst.sh
index 5fb28930db..5fb28930db 100644
--- a/games/stone_soup/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 5ef973c555..610223dc96 100644
--- a/games/crimson/crimson.SlackBuild
+++ b/games/crimson/crimson.SlackBuild
@@ -14,7 +14,7 @@ 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
@@ -32,8 +32,8 @@ 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"
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 c40f403e8e..f0f4cbd804 100644
--- a/games/crispy-doom/crispy-doom.SlackBuild
+++ b/games/crispy-doom/crispy-doom.SlackBuild
@@ -26,7 +26,7 @@
cd $(dirname $0) ; CWD=$(pwd)
PRGNAM=crispy-doom
-VERSION=${VERSION:-5.10.1}
+VERSION=${VERSION:-6.0}
BUILD=${BUILD:-1}
TAG=${TAG:-_SBo}
PKGTYPE=${PKGTYPE:-tgz}
@@ -86,9 +86,6 @@ CFLAGS="$SLKCFLAGS" \
CXXFLAGS="$SLKCFLAGS" \
./configure \
--prefix=/usr \
- --libdir=/usr/lib${LIBDIRSUFFIX} \
- --sysconfdir=/etc \
- --localstatedir=/var \
--mandir=/usr/man \
--docdir=/usr/doc/$PRGNAM \
--bindir=/usr/games \
@@ -103,12 +100,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
-# Crispy-doom creates its own doc directory, so we'll use that and rename it:
+# Remove unnecessary GNOME screensaver desktop entry:
+rm -rf $PKG/usr/share/applications/screensavers
+
mv $PKG/usr/doc/$PRGNAM $PKG/usr/doc/$PRGNAM-$VERSION
-cp -n ChangeLog *.md $PKG/usr/doc/$PRGNAM-$VERSION || true
+( 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
-# We'll rename the doc/crispy-heretic folder as well for consistency:
-mv $PKG/usr/doc/crispy-heretic $PKG/usr/doc/crispy-heretic-$VERSION
mkdir -p $PKG/install
cat $CWD/slack-desc > $PKG/install/slack-desc
diff --git a/games/crispy-doom/crispy-doom.info b/games/crispy-doom/crispy-doom.info
index 11c73df371..b081645215 100644
--- a/games/crispy-doom/crispy-doom.info
+++ b/games/crispy-doom/crispy-doom.info
@@ -1,8 +1,8 @@
PRGNAM="crispy-doom"
-VERSION="5.10.1"
-HOMEPAGE="http://www.chocolate-doom.org/wiki/index.php/Crispy_Doom"
-DOWNLOAD="https://github.com/fabiangreffrath/crispy-doom/archive/crispy-doom-5.10.1.tar.gz"
-MD5SUM="c23f11a1cd7ae70613b1a213116f7dcb"
+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=""
diff --git a/games/crossfire-client/crossfire-client.SlackBuild b/games/crossfire-client/crossfire-client.SlackBuild
index e5608e3eed..caeecc18be 100644
--- a/games/crossfire-client/crossfire-client.SlackBuild
+++ b/games/crossfire-client/crossfire-client.SlackBuild
@@ -2,7 +2,7 @@
# 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
@@ -25,7 +25,7 @@
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}
@@ -70,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 . \
diff --git a/games/crossfire-client/crossfire-client.info b/games/crossfire-client/crossfire-client.info
index 3fe2bc62f3..1d931a282c 100644
--- a/games/crossfire-client/crossfire-client.info
+++ b/games/crossfire-client/crossfire-client.info
@@ -1,8 +1,8 @@
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="lua"
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/curseofwar/curseofwar.SlackBuild b/games/curseofwar/curseofwar.SlackBuild
index 3faf7ed7e3..8c8b80a33c 100644
--- a/games/curseofwar/curseofwar.SlackBuild
+++ b/games/curseofwar/curseofwar.SlackBuild
@@ -2,7 +2,7 @@
# 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
@@ -25,7 +25,7 @@
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}
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 7dff27b156..0585d1535e 100644
--- a/games/cutemaze/cutemaze.SlackBuild
+++ b/games/cutemaze/cutemaze.SlackBuild
@@ -37,7 +37,7 @@ 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
@@ -55,8 +55,8 @@ 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"
diff --git a/games/cuyo/cuyo.SlackBuild b/games/cuyo/cuyo.SlackBuild
index 8824eb01f7..436206cfc7 100644
--- a/games/cuyo/cuyo.SlackBuild
+++ b/games/cuyo/cuyo.SlackBuild
@@ -32,7 +32,7 @@ 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
@@ -50,8 +50,8 @@ 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"
diff --git a/games/cyphesis/cyphesis.SlackBuild b/games/cyphesis/cyphesis.SlackBuild
index e6f3e25d3c..2070421837 100644
--- a/games/cyphesis/cyphesis.SlackBuild
+++ b/games/cyphesis/cyphesis.SlackBuild
@@ -84,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} \
diff --git a/games/d1x-rebirth/d1x-rebirth.SlackBuild b/games/d1x-rebirth/d1x-rebirth.SlackBuild
index ab164d91dd..f917151022 100644
--- a/games/d1x-rebirth/d1x-rebirth.SlackBuild
+++ b/games/d1x-rebirth/d1x-rebirth.SlackBuild
@@ -23,10 +23,15 @@
# 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:-20230520_695e8b9}
BUILD=${BUILD:-1}
TAG=${TAG:-_SBo}
PKGTYPE=${PKGTYPE:-tgz}
@@ -39,9 +44,6 @@ 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
@@ -70,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
@@ -103,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
diff --git a/games/d1x-rebirth/d1x-rebirth.info b/games/d1x-rebirth/d1x-rebirth.info
index 86cc4465ae..488e219d16 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="20230520_695e8b9"
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-20230520_695e8b9.tar.xz"
+MD5SUM="20daa2377b7cd13ada79b12da2b762d4"
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 d0d89ee7e3..1145e2fe58 100644
--- a/games/d2x-rebirth/d2x-rebirth.SlackBuild
+++ b/games/d2x-rebirth/d2x-rebirth.SlackBuild
@@ -23,10 +23,15 @@
# 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:-20230520_695e8b9}
BUILD=${BUILD:-1}
TAG=${TAG:-_SBo}
PKGTYPE=${PKGTYPE:-tgz}
@@ -39,9 +44,6 @@ 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
@@ -70,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
@@ -106,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
diff --git a/games/d2x-rebirth/d2x-rebirth.info b/games/d2x-rebirth/d2x-rebirth.info
index da4a2ed0a2..a35c67c150 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="20230520_695e8b9"
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-20230520_695e8b9.tar.xz"
+MD5SUM="20daa2377b7cd13ada79b12da2b762d4"
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 1fcf44a837..b53414e2bc 100644
--- a/games/darkplaces/darkplaces.SlackBuild
+++ b/games/darkplaces/darkplaces.SlackBuild
@@ -22,11 +22,16 @@
# 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}
@@ -38,9 +43,6 @@ 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
@@ -55,13 +57,10 @@ 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" = "i586" ]; then
SLKCFLAGS="-O2 -march=i586 -mtune=i686"
@@ -79,7 +78,6 @@ else
# might not work at all, but we could try :)
SLKCFLAGS="-O2"
BINARCH=$ARCH
- SOURCE="YES"
fi
set -e
@@ -96,28 +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 {} \+
-( cd darkplaces
- patch -p1 < $CWD/gcc11.patch )
+( cd darkplaces ; patch -p1 < $CWD/gcc11.patch )
-if [ "$SOURCE" != "NO" ]; then
- cd $PRGNAM
- make OPTIM_RELEASE="$SLKCFLAGS" release
- cd -
-fi
+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
@@ -125,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
@@ -135,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
@@ -159,12 +148,6 @@ 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
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/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/defendguin.SlackBuild b/games/defendguin/defendguin.SlackBuild
index 553834ab9d..1b9c0a22a0 100644
--- a/games/defendguin/defendguin.SlackBuild
+++ b/games/defendguin/defendguin.SlackBuild
@@ -2,14 +2,19 @@
# 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}
@@ -48,29 +53,52 @@ 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 {} \+
+find -L . -perm /111 -a \! -perm 755 -a -exec chmod 755 {} + -o \
+ \! -perm /111 -a \! -perm 644 -a -exec chmod 644 {} +
+
+# Cruft removal:
+rm -f data/images/{l2r.sh,loader/loading-orig.bmp.gz,*/*.sh}
-patch -p1 < $CWD/install_paths.diff
+# 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
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 da11d5fcc0..45531361b6 100644
--- a/games/desmume/desmume.SlackBuild
+++ b/games/desmume/desmume.SlackBuild
@@ -2,7 +2,7 @@
# 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,10 +22,31 @@
# 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:-20210409_e8f619c}
+VERSION=${VERSION:-0.9.13}
BUILD=${BUILD:-1}
TAG=${TAG:-_SBo}
PKGTYPE=${PKGTYPE:-tgz}
@@ -38,9 +59,6 @@ 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
@@ -52,38 +70,31 @@ 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
+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.?z
-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 {} \;
-
-# https://github.com/TASVideos/desmume
+find -L . -perm /111 -a \! -perm 755 -a -exec chmod 755 {} + -o \
+ \! -perm /111 -a \! -perm 644 -a -exec chmod 644 {} +
-cd $PRGNAM/src/frontend/posix
-mkdir build
-cd build
+cd $PRGNAM
+mkdir -p src/frontend/posix/build
+cd src/frontend/posix/build
CFLAGS="$SLKCFLAGS" \
CXXFLAGS="$SLKCFLAGS" \
meson .. \
@@ -100,15 +111,17 @@ cd build
"${NINJA:=ninja}"
DESTDIR=$PKG $NINJA install
-cd ../../../..
+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
-find $PKG/usr/man -type f -exec gzip -9 {} \;
+gzip -9 $PKG/usr/man/man*/*
-mkdir -p $PKG/usr/doc/$PRGNAM-$VERSION
-cp -a \
- AUTHORS ChangeLog COPYING README README.LIN doc/ds*.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 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
diff --git a/games/desmume/desmume.info b/games/desmume/desmume.info
index 9043529e4b..46bd5c010a 100644
--- a/games/desmume/desmume.info
+++ b/games/desmume/desmume.info
@@ -1,10 +1,10 @@
PRGNAM="desmume"
-VERSION="20210409_e8f619c"
+VERSION="0.9.13"
HOMEPAGE="http://desmume.org/"
-DOWNLOAD="http://ponce.cc/slackware/sources/repo/desmume-20210409_e8f619c.tar.xz"
-MD5SUM="b723d4f67ba3831b452d5a27542b4f03"
+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="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/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 c7efc1dcf9..d8ae3f1107 100644
--- a/games/dfarc/dfarc.SlackBuild
+++ b/games/dfarc/dfarc.SlackBuild
@@ -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.
+# 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}
@@ -38,9 +46,6 @@ 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
@@ -84,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" \
@@ -103,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
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 d16d4a1dbb..8b6a965422 100644
--- a/games/dgen/dgen.SlackBuild
+++ b/games/dgen/dgen.SlackBuild
@@ -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.
+# 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}
@@ -39,9 +44,6 @@ 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
@@ -76,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 \
@@ -92,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
diff --git a/games/dice/dice.SlackBuild b/games/dice/dice.SlackBuild
index 4443ae7974..ca24cd3de7 100644
--- a/games/dice/dice.SlackBuild
+++ b/games/dice/dice.SlackBuild
@@ -3,25 +3,26 @@
# 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
-# 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
@@ -31,8 +32,8 @@ 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,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
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 c101420443..f8496d4c4b 100644
--- a/games/digger/digger.SlackBuild
+++ b/games/digger/digger.SlackBuild
@@ -39,6 +39,11 @@ if [ -z "$ARCH" ]; then
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}
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 e9eac0b60f..362efdb681 100644
--- a/games/dolphin-emu/README
+++ b/games/dolphin-emu/README
@@ -1,12 +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.
-
-Optional dependencies: SFML, portaudio, soil, miniupnpc, soundtouch,
-wxGTK3, gtest, and embedtls
-
-Optional dependencies (not on SBo): xxhash
+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!
+
+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.
+
+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.
+
+Discord Rich Presence is disabled by default, to enable Discord
+functionality, pass DISCORD=ON to the build script.
+
+If you would like to disable Gameboy Advance controller support, pass
+USEMGBA=OFF to the build script. This will remove the mgba dependecy.
+
+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 48b5ac42ac..95732087f6 100644
--- a/games/dolphin-emu/dolphin-emu.SlackBuild
+++ b/games/dolphin-emu/dolphin-emu.SlackBuild
@@ -2,6 +2,7 @@
# 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.
#
@@ -25,7 +26,20 @@
cd $(dirname $0) ; CWD=$(pwd)
PRGNAM=dolphin-emu
-VERSION=${VERSION:-20210406_5322256}
+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}
@@ -38,9 +52,6 @@ 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
@@ -49,6 +60,7 @@ 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"
@@ -69,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 \
@@ -79,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
@@ -106,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
diff --git a/games/dolphin-emu/dolphin-emu.info b/games/dolphin-emu/dolphin-emu.info
index ec31d42594..4ede3dd7ef 100644
--- a/games/dolphin-emu/dolphin-emu.info
+++ b/games/dolphin-emu/dolphin-emu.info
@@ -1,10 +1,24 @@
PRGNAM="dolphin-emu"
-VERSION="20210406_5322256"
-HOMEPAGE="https://dolphin-emu.org/"
+VERSION="5.0.20059"
+HOMEPAGE="https://dolphin-emu.org"
DOWNLOAD="UNSUPPORTED"
MD5SUM=""
-DOWNLOAD_x86_64="http://ponce.cc/slackware/sources/repo/dolphin-20210406_5322256.tar.xz"
-MD5SUM_x86_64="d0d228fd5b4d3f55a37a779132c7cfa7"
-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/domination.SlackBuild b/games/domination/domination.SlackBuild
index 743309faa3..d698208061 100644
--- a/games/domination/domination.SlackBuild
+++ b/games/domination/domination.SlackBuild
@@ -2,13 +2,15 @@
# 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.
@@ -19,8 +21,8 @@
cd $(dirname $0) ; CWD=$(pwd)
PRGNAM=domination
-VERSION=${VERSION:-1.2.3}
-BUILD=${BUILD:-2}
+VERSION=${VERSION:-1.2.9}
+BUILD=${BUILD:-1}
TAG=${TAG:-_SBo}
PKGTYPE=${PKGTYPE:-tgz}
ARCH=noarch
@@ -52,10 +54,12 @@ 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
@@ -94,6 +98,8 @@ 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
diff --git a/games/domination/domination.info b/games/domination/domination.info
index 88b1b78015..5d9c4d49f6 100644
--- a/games/domination/domination.info
+++ b/games/domination/domination.info
@@ -1,10 +1,10 @@
PRGNAM="domination"
-VERSION="1.2.3"
+VERSION="1.2.9"
HOMEPAGE="http://domination.sourceforge.net/"
-DOWNLOAD="https://downloads.sourceforge.net/project/domination/Domination/1.2.3/Domination_1.2.3.zip"
-MD5SUM="5a29abcc8f6fe5c6da574bb00cb61e2b"
+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/doom_shareware_data.SlackBuild b/games/doom_shareware_data/doom_shareware_data.SlackBuild
index 46f4523410..91114747e7 100644
--- a/games/doom_shareware_data/doom_shareware_data.SlackBuild
+++ b/games/doom_shareware_data/doom_shareware_data.SlackBuild
@@ -2,7 +2,7 @@
# 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.
diff --git a/games/doom_shareware_data/doom_shareware_data.info b/games/doom_shareware_data/doom_shareware_data.info
index 2f5497a0b6..3ee8b39ef8 100644
--- a/games/doom_shareware_data/doom_shareware_data.info
+++ b/games/doom_shareware_data/doom_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/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 8b8e2ceb57..46311d8b64 100644
--- a/games/doomretro/doomretro.SlackBuild
+++ b/games/doomretro/doomretro.SlackBuild
@@ -3,7 +3,7 @@
# 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,13 @@
# 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.
@@ -38,7 +45,7 @@
cd $(dirname $0) ; CWD=$(pwd)
PRGNAM=doomretro
-VERSION=${VERSION:-4.2.3}
+VERSION=${VERSION:-4.9.2}
BUILD=${BUILD:-1}
TAG=${TAG:-_SBo}
PKGTYPE=${PKGTYPE:-tgz}
@@ -76,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.
@@ -89,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 \
@@ -109,17 +158,22 @@ 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
+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
-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
+# 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
diff --git a/games/doomretro/doomretro.info b/games/doomretro/doomretro.info
index e822117936..bb63fc2cbf 100644
--- a/games/doomretro/doomretro.info
+++ b/games/doomretro/doomretro.info
@@ -1,10 +1,12 @@
PRGNAM="doomretro"
-VERSION="4.2.3"
+VERSION="4.9.2"
HOMEPAGE="https://www.doomretro.com"
-DOWNLOAD="https://github.com/bradharding/doomretro/archive/v4.2.3/doomretro-4.2.3.tar.gz"
-MD5SUM="809a9f73b7892dca8e4103867fe85c93"
+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=""
MAINTAINER="B. Watson"
-EMAIL="yalhcru@gmail.com"
+EMAIL="urchlay@slackware.uk"
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 e700db93a2..87ce49015a 100644
--- a/games/doomsday/doomsday.SlackBuild
+++ b/games/doomsday/doomsday.SlackBuild
@@ -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
@@ -48,7 +53,7 @@ cd $(dirname $0) ; CWD=$(pwd)
PRGNAM=doomsday
VERSION=${VERSION:-2.3.1}
-BUILD=${BUILD:-1}
+BUILD=${BUILD:-2}
TAG=${TAG:-_SBo}
PKGTYPE=${PKGTYPE:-tgz}
@@ -60,9 +65,6 @@ 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
@@ -95,11 +97,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 {} \+
# build amethyst
mkdir -p build-amethyst
@@ -111,10 +110,9 @@ cd build-amethyst
-DCMAKE_BUILD_TYPE=Release \
../doomsday/tools/amethyst
make
- make install DESTDIR=$PKG
+ make install/strip DESTDIR=$PKG
cd ..
-# already provided by the assimp package
mkdir -p build
cd build
cmake \
@@ -123,19 +121,35 @@ cd build
-DCMAKE_INSTALL_PREFIX=/usr \
-DCMAKE_BUILD_TYPE=Release ..
make
- make install DESTDIR=$PKG
+ make install/strip DESTDIR=$PKG
cd ..
+mv $PKG/usr/bin $PKG/usr/games
+
+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
+
# already provided by the assimp package
rm -fR $PKG/usr/include/assimp
-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
-
# manually install man pages
+rm -rf $PKG/usr/share/man
mkdir -p $PKG/usr/man/man6
-for i in doomsday doomsday-server doomsday-shell-text; do
- gzip -c9 doomsday/doc/$i.6 > $PKG/usr/man/man6/$i.6.gz
+for i in doomsday/doc/*.6; do
+ gzip -9c < $i > $PKG/usr/man/man6/$( basename $i ).gz
done
mkdir -p $PKG/usr/doc
diff --git a/games/doomsday/doomsday.info b/games/doomsday/doomsday.info
index 033f20f5a4..7d8c36efaf 100644
--- a/games/doomsday/doomsday.info
+++ b/games/doomsday/doomsday.info
@@ -1,10 +1,10 @@
PRGNAM="doomsday"
VERSION="2.3.1"
-HOMEPAGE="http://dengine.net"
-DOWNLOAD="http://downloads.sourceforge.net/deng/doomsday-2.3.1.tar.gz"
+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="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 12624c8b64..172e10f1fc 100644
--- a/games/doomseeker/doomseeker.SlackBuild
+++ b/games/doomseeker/doomseeker.SlackBuild
@@ -2,10 +2,16 @@
# 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
@@ -18,7 +24,7 @@
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}
@@ -33,9 +39,6 @@ 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
@@ -73,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
@@ -94,30 +94,46 @@ 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
-
-cp -a LICENSE *.md $PKG/usr/doc/$PRGNAM-$VERSION
-cat $CWD/$PRGNAM.SlackBuild > $PKG/usr/doc/$PRGNAM-$VERSION/$PRGNAM.SlackBuild
+# 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 $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
diff --git a/games/doomseeker/doomseeker.info b/games/doomseeker/doomseeker.info
index f0d98bd7e0..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=""
MAINTAINER="B. Watson"
-EMAIL="yalhcru@gmail.com"
+EMAIL="urchlay@slackware.uk"
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 8e048ee7b6..c5da9ad9b4 100644
--- a/games/ds-models/ds-models.SlackBuild
+++ b/games/ds-models/ds-models.SlackBuild
@@ -2,30 +2,37 @@
# 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.
-# 20140324 bkw:
-# Updated for version r15
-# fixed typos in README
-# fixed .def files for recent gzdoom
+# 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
+
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 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
@@ -35,13 +42,11 @@ 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."
@@ -51,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
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/transfusion/doinst.sh b/games/duckstation/doinst.sh
index 5fb28930db..5fb28930db 100644
--- a/games/transfusion/doinst.sh
+++ b/games/duckstation/doinst.sh
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/dunelegacy.SlackBuild b/games/dunelegacy/dunelegacy.SlackBuild
index 2a5231442a..fd44e19c28 100644
--- a/games/dunelegacy/dunelegacy.SlackBuild
+++ b/games/dunelegacy/dunelegacy.SlackBuild
@@ -2,10 +2,11 @@
# 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
@@ -14,7 +15,7 @@ cd $(dirname $0) ; CWD=$(pwd)
PRGNAM=dunelegacy
VERSION=${VERSION:-0.96.4}
-BUILD=${BUILD:-2}
+BUILD=${BUILD:-3}
TAG=${TAG:-_SBo}
PKGTYPE=${PKGTYPE:-tgz}
@@ -86,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
diff --git a/games/dunelegacy/dunelegacy.info b/games/dunelegacy/dunelegacy.info
index c5fa5c4988..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/"
+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="eawpats"
MAINTAINER="B. Watson"
-EMAIL="yalhcru@gmail.com"
+EMAIL="urchlay@slackware.uk"
diff --git a/games/dungeon/dungeon.SlackBuild b/games/dungeon/dungeon.SlackBuild
index ef639c011a..1a43f9f554 100644
--- a/games/dungeon/dungeon.SlackBuild
+++ b/games/dungeon/dungeon.SlackBuild
@@ -2,7 +2,7 @@
# 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.
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 01460d41a5..00f32deed1 100644
--- a/games/dustrac/dustrac.SlackBuild
+++ b/games/dustrac/dustrac.SlackBuild
@@ -3,6 +3,7 @@
# 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,11 @@
# 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}
@@ -39,9 +40,6 @@ 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
@@ -76,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" \
@@ -93,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
diff --git a/games/dustrac/dustrac.info b/games/dustrac/dustrac.info
index 64769d6c6b..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=""
-MAINTAINER="Larry Hajali"
-EMAIL="larryhaja[at]gmail[dot]com"
+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/edgar/edgar.SlackBuild b/games/edgar/edgar.SlackBuild
index ee2752626c..4571631b3c 100644
--- a/games/edgar/edgar.SlackBuild
+++ b/games/edgar/edgar.SlackBuild
@@ -2,7 +2,7 @@
# 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,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 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.34}
+VERSION=${VERSION:-1.37}
BUILD=${BUILD:-1}
TAG=${TAG:-_SBo}
PKGTYPE=${PKGTYPE:-tgz}
@@ -38,9 +43,6 @@ 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
@@ -51,6 +53,7 @@ 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=""
@@ -71,29 +74,27 @@ rm -rf $PKG
mkdir -p $TMP $PKG $OUTPUT
cd $TMP
rm -rf $PRGNAM-$VERSION
-tar xvf $CWD/$PRGNAM-$VERSION-1.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 {} \+
+
# 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
diff --git a/games/edgar/edgar.info b/games/edgar/edgar.info
index b8662a68e5..40f23f6234 100644
--- a/games/edgar/edgar.info
+++ b/games/edgar/edgar.info
@@ -1,8 +1,8 @@
PRGNAM="edgar"
-VERSION="1.34"
+VERSION="1.37"
HOMEPAGE="https://www.parallelrealities.co.uk/games/edgar/"
-DOWNLOAD="https://github.com/riksweeney/edgar/archive/1.34/edgar-1.34-1.tar.gz"
-MD5SUM="571d554720287038f0b4ed63ec840142"
+DOWNLOAD="https://github.com/riksweeney/edgar/archive/1.37/edgar-1.37.tar.gz"
+MD5SUM="4c176a1301759999e1cae96ad836565c"
DOWNLOAD_x86_64=""
MD5SUM_x86_64=""
REQUIRES=""
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/eduke32.desktop b/games/eduke32/desktop/eduke32.desktop
index 2190c3cc97..858b4d2dde 100644
--- a/games/eduke32/eduke32.desktop
+++ b/games/eduke32/desktop/eduke32.desktop
@@ -1,9 +1,8 @@
[Desktop Entry]
Name=EDuke32
GenericName=Duke Nukem 3D Engine
-Comment=EDuke32 Duke Nukem 3D Engine
Icon=eduke32
-Exec=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/mapster32.desktop b/games/eduke32/desktop/mapster32.desktop
index 432e44e25f..280f04f486 100644
--- a/games/eduke32/mapster32.desktop
+++ b/games/eduke32/desktop/mapster32.desktop
@@ -1,9 +1,8 @@
[Desktop Entry]
Name=Mapster32
-GenericName=Duke Nukem 3D Editor
-Comment=Mapster32 Duke Nukem 3D Editor
+GenericName=Duke Nukem 3D Map Editor
Icon=eduke32
-Exec=mapster32
+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 373d4f78d1..a15f7f6145 100644
--- a/games/eduke32/eduke32.SlackBuild
+++ b/games/eduke32/eduke32.SlackBuild
@@ -2,10 +2,34 @@
# 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
@@ -27,19 +51,11 @@
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}
-# 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}
@@ -52,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
-install -D -m0755 $PRGNAM $PKG/usr/libexec/$PRGNAM/$PRGNAM
-install -D -m0755 mapster32 $PKG/usr/libexec/$PRGNAM/mapster32
+# eduke32 and mapster:
+runmake
+
+# voidsw and wangulator:
+runmake sw
+
+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
@@ -147,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
@@ -163,9 +202,7 @@ 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
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/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 633ba90673..cf88dd2230 100644
--- a/games/eduke32_hires_pack/eduke32_hires_pack.SlackBuild
+++ b/games/eduke32_hires_pack/eduke32_hires_pack.SlackBuild
@@ -2,22 +2,30 @@
# 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 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
@@ -27,9 +35,7 @@ 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
@@ -39,34 +45,23 @@ 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
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 f2596a1f40..bafb1465b4 100644
--- a/games/eduke32_shareware_data/eduke32_shareware_data.SlackBuild
+++ b/games/eduke32_shareware_data/eduke32_shareware_data.SlackBuild
@@ -2,22 +2,23 @@
# 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 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
@@ -39,12 +40,16 @@ 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
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/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/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/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/endgame-singularity.info b/games/endgame-singularity/endgame-singularity.info
index 8e73012209..a80c0a5dcb 100644
--- a/games/endgame-singularity/endgame-singularity.info
+++ b/games/endgame-singularity/endgame-singularity.info
@@ -5,6 +5,6 @@ DOWNLOAD="https://github.com/singularity/singularity/releases/download/v1.00/sin
MD5SUM="160d6dc6ed1e48e7b54053f10b4ba733"
DOWNLOAD_x86_64=""
MD5SUM_x86_64=""
-REQUIRES="pygame numpy3 polib"
+REQUIRES="python3-pygame python3-numpy polib"
MAINTAINER="CRTS"
EMAIL="crts [at] gmx [dot] net"
diff --git a/games/endgame-singularity/slack-desc b/games/endgame-singularity/slack-desc
index 9093432358..84773ffccf 100644
--- a/games/endgame-singularity/slack-desc
+++ b/games/endgame-singularity/slack-desc
@@ -6,7 +6,7 @@
# customary to leave one space after the ':' except on otherwise blank lines.
|-----handy-ruler------------------------------------------------------|
-endgame-singularity: Endgame: Singularity (Simulation)
+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
diff --git a/games/endless-sky/endless-sky.SlackBuild b/games/endless-sky/endless-sky.SlackBuild
index f54652f193..0a7f749c64 100644
--- a/games/endless-sky/endless-sky.SlackBuild
+++ b/games/endless-sky/endless-sky.SlackBuild
@@ -23,7 +23,7 @@
cd $(dirname $0) ; CWD=$(pwd)
PRGNAM=endless-sky
-VERSION=${VERSION:-0.9.14}
+VERSION=${VERSION:-0.10.6}
BUILD=${BUILD:-1}
TAG=${TAG:-_SBo}
PKGTYPE=${PKGTYPE:-tgz}
@@ -48,7 +48,7 @@ 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"
@@ -59,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=""
@@ -93,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
diff --git a/games/endless-sky/endless-sky.info b/games/endless-sky/endless-sky.info
index 3a7c397187..3e794b19b9 100644
--- a/games/endless-sky/endless-sky.info
+++ b/games/endless-sky/endless-sky.info
@@ -1,8 +1,8 @@
PRGNAM="endless-sky"
-VERSION="0.9.14"
+VERSION="0.10.6"
HOMEPAGE="http://endless-sky.github.io/"
-DOWNLOAD="https://github.com/endless-sky/endless-sky/archive/v0.9.14/endless-sky-0.9.14.tar.gz"
-MD5SUM="8ebb2453bd0a70f37c60ff638b04fe8e"
+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=""
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/ember/doinst.sh b/games/enigma-marbles/doinst.sh
index aea0f894eb..0fb9c8b686 100644
--- a/games/ember/doinst.sh
+++ b/games/enigma-marbles/doinst.sh
@@ -11,3 +11,4 @@ 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/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 04c9acca8c..c1be21208c 100644
--- a/games/enigma/enigma.SlackBuild
+++ b/games/enigma/enigma.SlackBuild
@@ -5,7 +5,7 @@
# 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.
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/ember/ember.SlackBuild b/games/epsxe/epsxe.SlackBuild
index 43296d2174..097617f572 100644
--- a/games/ember/ember.SlackBuild
+++ b/games/epsxe/epsxe.SlackBuild
@@ -1,8 +1,9 @@
#!/bin/bash
-# Slackware build script for ember
+# Slackware build script for epsxe
-# Copyright 2014-2016 Dimitris Zlatanidis Orestiada, Greece
+# 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
@@ -22,13 +23,17 @@
# 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=ember
-VERSION=${VERSION:-0.7.2}
+PRGNAM=epsxe
+VERSION=${VERSION:-2.0.5}
BUILD=${BUILD:-2}
TAG=${TAG:-_SBo}
-PKGTYPE=${PKGTYPE:-tgz}
+PKGTYPE=${PKGTYPE:-tgz}
if [ -z "$ARCH" ]; then
case "$( uname -m )" in
@@ -46,7 +51,7 @@ if [ ! -z "${PRINT_PACKAGE_NAME}" ]; then
exit 0
fi
-TMP=${TMP:-/tmp/SBo}
+tmp=${TMP:-/tmp/SBo}
PKG=$TMP/package-$PRGNAM
OUTPUT=${OUTPUT:-/tmp}
@@ -59,6 +64,7 @@ elif [ "$ARCH" = "i686" ]; then
elif [ "$ARCH" = "x86_64" ]; then
SLKCFLAGS="-O2 -fPIC"
LIBDIRSUFFIX="64"
+ TARGET="_x64"
else
SLKCFLAGS="-O2"
LIBDIRSUFFIX=""
@@ -67,70 +73,51 @@ fi
set -e
rm -rf $PKG
-mkdir -p $TMP $PKG $OUTPUT $PKG
+mkdir -p $TMP $PKG $OUTPUT
cd $TMP
rm -rf $PRGNAM-$VERSION
-tar xvf $CWD/$PRGNAM-$VERSION.tar.bz2
+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 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 ..
+ -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
-mkdir -p $PKG/usr/share/pixmaps/
-install -D -m644 media/$PRGNAM.png $PKG/usr/share/pixmaps/$PRGNAM.svg
+# Add application launcher
+mkdir -p $PKG/usr/share/applications
+cp $CWD/$PRGNAM.desktop $PKG/usr/share/applications/$PRGNAM.desktop
-sed -i 's/#plugindir/plugindir/g' $PKG/etc/ember/ember.conf
+# 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
-if [ "$ARCH" = "x86_64" ]; then
- sed -i 's/usr\/lib/usr\/lib64/g' $PKG/etc/ember/ember.conf
-fi
+# 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 AUTHORS COPYING ChangeLog INSTALL NEWS README.md $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
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/ember/slack-desc b/games/epsxe/slack-desc
index 8d128b949d..4b1f88bc88 100644
--- a/games/ember/slack-desc
+++ b/games/epsxe/slack-desc
@@ -6,14 +6,14 @@
# 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:
+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-from-source/README b/games/etlegacy-from-source/README
deleted file mode 100644
index 4d6185212f..0000000000
--- a/games/etlegacy-from-source/README
+++ /dev/null
@@ -1,25 +0,0 @@
-Wolfenstein Enemy Territory: Legacy is a project that aims to create
-a fully compatible client and server for the popular online FPS game
-Wolfenstein: Enemy Territory.
-
-It's based on its source code released under the GPLv3 license.
-
-The main goal of this project is to fix bugs, remove old dependencies
-and make it playable on all major operating systems while still
-remaining compatible with the ET 2.60b version and as many of its mods
-as possible.
-
-This script builds the server with omni-bot support (x86 32bit only).
-(http://www.omni-bot.com/)
-
-To play you *need* also the data files from the original game
-(etlegacy-data).
-
-* WARNING *
-
-To have a client/server compatible with the existing ones (to play
-on the existing online servers), build it on/for a 32bit platform.
-
-This version of the game is built from source: the resulting package
-conflicts with the etlegacy SlackBuild you can find on SBo so install
-only one of the two.
diff --git a/games/etlegacy-from-source/etlegacy-from-source.SlackBuild b/games/etlegacy-from-source/etlegacy-from-source.SlackBuild
deleted file mode 100644
index 461b382532..0000000000
--- a/games/etlegacy-from-source/etlegacy-from-source.SlackBuild
+++ /dev/null
@@ -1,196 +0,0 @@
-#!/bin/bash
-
-# Slackware build script for etlegacy-from-source
-# Copyright 2013-2020 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=etlegacy-from-source
-SRCNAM=etlegacy
-VERSION=${VERSION:-20201029_886f0ef}
-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}
-
-w_omnibot=1
-if [ "$ARCH" = "i386" ]; then
- SLKCFLAGS="-O2 -march=i386 -mtune=i686"
-elif [ "$ARCH" = "i686" ]; then
- SLKCFLAGS="-O2 -march=i686 -mtune=core2"
-elif [ "$ARCH" = "x86_64" ]; then
- SLKCFLAGS="-O2 -fPIC"
- w_omnibot=0
-else
- SLKCFLAGS="-O2"
- w_omnibot=0
-fi
-
-set -e # Exit on most errors
-
-rm -rf $PKG
-mkdir -p $TMP $PKG $OUTPUT
-cd $TMP
-rm -rf $SRCNAM-$VERSION
-tar xvf $CWD/$SRCNAM-$VERSION.tar.?z*
-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 {} \;
-
-# Fix location of the omnibot.zip, man install path
-# and leave the relative path to binaries off
-sed -i "s|share/man|man|" CMakeLists.txt
-sed -i "s|^\.\/etl|etl|" misc/etl_bot.sh misc/etlded_bot.sh
-
-mkdir -p build/legacy
-cd build
- cp -a $CWD/omnibot-linux-latest.tar.gz legacy/
- cp -a $CWD/wolfadmin.tar.gz legacy/
- # We have to use bundled lua and sdl
- cmake \
- -DCMAKE_C_FLAGS_RELEASE:STRING="$SLKCFLAGS" \
- -DCMAKE_CXX_FLAGS_RELEASE:STRING="$SLKCFLAGS" \
- -DCMAKE_INSTALL_PREFIX="/usr" \
- -DINSTALL_DEFAULT_BINDIR="bin" \
- -DINSTALL_DEFAULT_MODDIR="share/$SRCNAM" \
- -DINSTALL_DEFAULT_BASEDIR="/usr/share/$SRCNAM" \
- -DBUILD_CLIENT=1 \
- -DBUILD_SERVER=1 \
- -DBUILD_MOD=1 \
- -DBUILD_MOD_PK3=1 \
- -DBUILD_PAK3_PK3=1 \
- -DFEATURE_CURL=1 \
- -DFEATURE_OGG_VORBIS=1 \
- -DFEATURE_THEORA=1 \
- -DFEATURE_OPENAL=1 \
- -DFEATURE_FREETYPE=1 \
- -DFEATURE_TRACKER=0 \
- -DFEATURE_GETTEXT=1 \
- -DFEATURE_JANSSON=0 \
- -DFEATURE_DBMS=1 \
- -DFEATURE_LUA=1 \
- -DFEATURE_MULTIVIEW=1 \
- -DFEATURE_EDV=1 \
- -DFEATURE_ANTICHEAT=1 \
- -DFEATURE_RATING=1 \
- -DFEATURE_AUTOUPDATE=0 \
- -DFEATURE_LUASQL=1 \
- -DFEATURE_OMNIBOT=$w_omnibot \
- -DINSTALL_EXTRA=1 \
- -DINSTALL_OMNIBOT=$w_omnibot \
- -DINSTALL_GEOIP=1 \
- -DINSTALL_WOLFADMIN=1 \
- -DCROSS_COMPILE32=0 \
- -DFEATURE_OGG_VORBIS=1 \
- -DFEATURE_FREETYPE=1 \
- -DFEATURE_AUTOUPDATE=0 \
- -DFEATURE_IPV6=0 \
- -DFEATURE_GETTEXT=1 \
- -DFEATURE_RENDERER2=1 \
- -DFEATURE_RENDERER_GLES=0 \
- -DRENDERER_DYNAMIC=1 \
- -DBUNDLED_LIBS=1 \
- -DBUNDLED_SDL=1 \
- -DBUNDLED_LUA=1 \
- -DBUNDLED_OGG_VORBIS=1 \
- -DBUNDLED_THEORA=1 \
- -DBUNDLED_SQLITE3=1 \
- -DBUNDLED_JANSSON=0 \
- -DBUNDLED_ZLIB=1 \
- -DBUNDLED_MINIZIP=1 \
- -DBUNDLED_CURL=1 \
- -DBUNDLED_OPENAL=1 \
- -DBUNDLED_JPEG=1 \
- -DBUNDLED_GLEW=0 \
- -DBUNDLED_FREETYPE=1 \
- -DCMAKE_BUILD_TYPE=Release ..
-
- # JIC, sanitize the just-uncompressed stuff
- chown -R root:root legacy
- find -L legacy \
- \( -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
-cd ..
-
-# Move man pages in the proper place
-mv $PKG/usr/share/man $PKG/usr/man
-
-# Install a script to open urls, and move two scripts to launch the client and
-# the dedicated server with omnibot support in the binaries folder
-install -m 0755 $CWD/files/openurl.sh $PKG/usr/bin/openurl.sh
-mv $PKG/usr/share/$SRCNAM/etl*.sh $PKG/usr/bin/
-chmod 755 $PKG/usr/bin/etl*.sh
-
-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
-
-# Install an icon, a desktop file and man pages
-install -m 0644 -D $CWD/files/$SRCNAM.svg \
- $PKG/usr/share/pixmaps/$SRCNAM.svg
-install -m 0644 -D $CWD/files/$SRCNAM.desktop \
- $PKG/usr/share/applications/$SRCNAM.desktop
-mkdir -p $PKG/usr/man/man6
-gzip -9 -c docs/linux/man/man6/etl.6 > $PKG/usr/man/man6/etl.6.gz
-gzip -9 -c docs/linux/man/man6/etlded.6 > $PKG/usr/man/man6/etlded.6.gz
-
-mkdir -p $PKG/usr/doc/$PRGNAM-$VERSION
-mv \
- $PKG/usr/share/$SRCNAM/*.txt \
- $PKG/usr/doc/$PRGNAM-$VERSION
-cp 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
diff --git a/games/etlegacy-from-source/etlegacy-from-source.info b/games/etlegacy-from-source/etlegacy-from-source.info
deleted file mode 100644
index 5555554ed3..0000000000
--- a/games/etlegacy-from-source/etlegacy-from-source.info
+++ /dev/null
@@ -1,16 +0,0 @@
-PRGNAM="etlegacy-from-source"
-VERSION="20201029_886f0ef"
-HOMEPAGE="http://www.etlegacy.com"
-DOWNLOAD="http://ponce.cc/slackware/sources/repo/etlegacy-20201029_886f0ef.tar.xz \
- http://ponce.cc/slackware/sources/repo/omnibot-linux-latest.tar.gz \
- http://ponce.cc/slackware/sources/repo/wolfadmin.tar.gz \
- http://ponce.cc/slackware/sources/repo/GeoIP.dat.gz"
-MD5SUM="e3104a3206e1d1ae0f02466e31df3bca \
- eddeb7d4033cebc269d00e06bbccbfb6 \
- c919afd544c1a0e9a08d5a0128247214 \
- 5ac81d5de50c557be104e4c43f851c36"
-DOWNLOAD_x86_64=""
-MD5SUM_x86_64=""
-REQUIRES="%README% etlegacy-data zenity"
-MAINTAINER="Matteo Bernardini"
-EMAIL="ponce@slackbuilds.org"
diff --git a/games/etlegacy-from-source/files/etlegacy.desktop b/games/etlegacy-from-source/files/etlegacy.desktop
deleted file mode 100644
index 2618c0c13e..0000000000
--- a/games/etlegacy-from-source/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-from-source/files/etlegacy.svg b/games/etlegacy-from-source/files/etlegacy.svg
deleted file mode 100644
index 51754d1889..0000000000
--- a/games/etlegacy-from-source/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/etlegacy-from-source/files/get_tarball_from_git.sh b/games/etlegacy-from-source/files/get_tarball_from_git.sh
deleted file mode 100644
index a0f1819819..0000000000
--- a/games/etlegacy-from-source/files/get_tarball_from_git.sh
+++ /dev/null
@@ -1,25 +0,0 @@
-rm -fR /tmp/tmp-etlegacy
-mkdir -p /tmp/tmp-etlegacy
-cd /tmp/tmp-etlegacy
-git clone git://github.com/etlegacy/etlegacy.git
-cd etlegacy
-git submodule init
-git submodule update
-cd libs
-git archive master > ../../libs.tar
-cd ..
-COMMIT=$( git log -1 | head -1 | cut -c 8-14 )
-COMMDATE=$( git log -1 --date=short | grep ^Date | awk '{print $2}' | sed 's/-//g' )
-rm -f /tmp/etlegacy-${COMMDATE}_${COMMIT}.tar.xz
-git archive master > ../src.tar
-cd ..
-mkdir etlegacy-${COMMDATE}_${COMMIT}
-cd etlegacy-${COMMDATE}_${COMMIT}
-tar xf ../src.tar
-cd libs
-tar xf ../../libs.tar
-cd ..
-cd ..
-rm -f src.tar libs.tar scripts.tar
-tar Jcf /tmp/etlegacy-${COMMDATE}_${COMMIT}.tar.xz etlegacy-${COMMDATE}_${COMMIT}
-echo "/tmp/etlegacy-${COMMDATE}_${COMMIT}.tar.xz done."
diff --git a/games/etlegacy-from-source/files/openurl.sh b/games/etlegacy-from-source/files/openurl.sh
deleted file mode 100644
index 274f12d08d..0000000000
--- a/games/etlegacy-from-source/files/openurl.sh
+++ /dev/null
@@ -1,15 +0,0 @@
-#!/bin/sh
-# use this script to customize the way the engine should open URLs
-
-for test_browser in firefox seamonkey opera
-do
- browser=`which $test_browser`
- if [ "x$browser" != "x" ]
- then
- $browser -remote "openURL($1,new-window)" || $browser "$1"
- exit
- fi
-done
-# xterm -e lynx "$1"
-
-exit 0
diff --git a/games/etlegacy-from-source/slack-desc b/games/etlegacy-from-source/slack-desc
deleted file mode 100644
index e6866b09b8..0000000000
--- a/games/etlegacy-from-source/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------------------------------------------------------|
-etlegacy-from-source: etlegacy-from-source (collaborative FPS)
-etlegacy-from-source:
-etlegacy-from-source: Wolfenstein Enemy Territory : Legacy is a project that aims to create
-etlegacy-from-source: a fully compatible client and server for the popular online FPS game
-etlegacy-from-source: Wolfenstein: Enemy Territory.
-etlegacy-from-source: It's based on its source code released under the GPLv3 license.
-etlegacy-from-source: The main goal of this project is to fix bugs, remove old dependencies
-etlegacy-from-source: and make it playable on all major operating systems while still
-etlegacy-from-source: remaining compatible with the ET 2.60b version and as many of its mods
-etlegacy-from-source: as possible. This version is built from source.
-etlegacy-from-source: homepage: http://www.etlegacy.com/
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 7fb448fb6d..5320f26836 100644
--- a/games/etlegacy/etlegacy.SlackBuild
+++ b/games/etlegacy/etlegacy.SlackBuild
@@ -1,7 +1,7 @@
#!/bin/bash
# Slackware build script for etlegacy
-# Copyright 2013-2019 Matteo Bernardini <ponce@slackbuilds.org>, Pisa, Italy
+# Copyright 2013-2024 Matteo Bernardini <ponce@slackbuilds.org>, Pisa, Italy
# All rights reserved.
#
# Redistribution and use of this script, with or without modification, is
@@ -24,22 +24,27 @@
cd $(dirname $0) ; CWD=$(pwd)
PRGNAM=etlegacy
-VERSION=${VERSION:-2.76}
+VERSION=${VERSION:-2.82.0}
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
-# 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 [ "$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
@@ -54,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 . \
@@ -64,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
diff --git a/games/etlegacy/etlegacy.info b/games/etlegacy/etlegacy.info
index 520b7051ec..83415083af 100644
--- a/games/etlegacy/etlegacy.info
+++ b/games/etlegacy/etlegacy.info
@@ -1,10 +1,10 @@
PRGNAM="etlegacy"
-VERSION="2.76"
+VERSION="2.82.0"
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="https://ponce.cc/slackware/sources/repo/etlegacy/etlegacy-v2.82.0-i386.tar.gz"
+MD5SUM="0b1a73b1d0b30805d4990aff6067385b"
+DOWNLOAD_x86_64="https://ponce.cc/slackware/sources/repo/etlegacy/etlegacy-v2.82.0-x86_64.tar.gz"
+MD5SUM_x86_64="18fe1febf6fe32954a6d504b56b35d4a"
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.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 5098397fb5..a45c8836f7 100644
--- a/games/eureka/README
+++ b/games/eureka/README
@@ -4,5 +4,5 @@ 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 85bba4722d..b9da7267a7 100644
--- a/games/eureka/eureka.SlackBuild
+++ b/games/eureka/eureka.SlackBuild
@@ -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:
@@ -35,7 +42,7 @@ 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}
@@ -56,19 +63,7 @@ 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
@@ -90,6 +85,7 @@ sed -i -e 's,\<bin\>,games,g' \
Makefile
LINKER_FLAGS="\
+ -Wl,-s \
-lfltk \
-lfltk_images \
-lfltk_gl \
@@ -103,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
diff --git a/games/eureka/eureka.info b/games/eureka/eureka.info
index 6aedadfdb3..cad591d7a6 100644
--- a/games/eureka/eureka.info
+++ b/games/eureka/eureka.info
@@ -7,4 +7,4 @@ DOWNLOAD_x86_64=""
MD5SUM_x86_64=""
REQUIRES="fltk"
MAINTAINER="B. Watson"
-EMAIL="yalhcru@gmail.com"
+EMAIL="urchlay@slackware.uk"
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/steem/doinst.sh b/games/ezquake/doinst.sh
index 140e332222..392c12adb9 100644
--- a/games/steem/doinst.sh
+++ b/games/ezquake/doinst.sh
@@ -1,3 +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/f1spirit.SlackBuild b/games/f1spirit/f1spirit.SlackBuild
index 8b4c798ad7..e43bcf79ac 100644
--- a/games/f1spirit/f1spirit.SlackBuild
+++ b/games/f1spirit/f1spirit.SlackBuild
@@ -14,7 +14,7 @@ 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
@@ -32,8 +32,8 @@ 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"
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 d8ab3875be..f856ad9b91 100644
--- a/games/fceux/fceux.SlackBuild
+++ b/games/fceux/fceux.SlackBuild
@@ -25,7 +25,7 @@
cd $(dirname $0) ; CWD=$(pwd)
PRGNAM=fceux
-VERSION=${VERSION:-2.4.0}
+VERSION=${VERSION:-2.6.6}
BUILD=${BUILD:-1}
TAG=${TAG:-_SBo}
PKGTYPE=${PKGTYPE:-tgz}
@@ -70,7 +70,7 @@ 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 . \
@@ -79,9 +79,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 man pages
-sed -i 's,share/man/man6,man/man6,g' src/CMakeLists.txt
-
# Fix incorrect version name
sed -i 's/-interim git//g' src/version.h
@@ -92,12 +89,15 @@ cd build
-DCMAKE_CXX_FLAGS:STRING="$SLKCFLAGS" \
-DCMAKE_INSTALL_PREFIX=/usr \
-DLIB_SUFFIX=${LIBDIRSUFFIX} \
- -DMAN_INSTALL_DIR=/usr/man \
+ -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
diff --git a/games/fceux/fceux.info b/games/fceux/fceux.info
index 305157ce7c..31e6be5bd4 100644
--- a/games/fceux/fceux.info
+++ b/games/fceux/fceux.info
@@ -1,8 +1,8 @@
PRGNAM="fceux"
-VERSION="2.4.0"
+VERSION="2.6.6"
HOMEPAGE="http://fceux.com/web/home.html"
-DOWNLOAD="http://downloads.sourceforge.net/fceultra/fceux-2.4.0.tar.gz"
-MD5SUM="373ddc61b8e9557f1e8ba27a8ff10697"
+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="libminizip"
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 b2d5954637..c6de50dbd5 100644
--- a/games/ffgo/ffgo.SlackBuild
+++ b/games/ffgo/ffgo.SlackBuild
@@ -2,7 +2,7 @@
# 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
@@ -26,7 +26,8 @@ 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}
@@ -39,16 +40,13 @@ 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
TMP=${TMP:-/tmp/SBo}
-PKG=${PKG:-$TMP/package-$PRGNAM}
+PKG=$TMP/package-$PRGNAM
OUTPUT=${OUTPUT:-/tmp}
if [ "$ARCH" = "x86_64" ]; then
@@ -63,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 .
@@ -78,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
diff --git a/games/ffgo/ffgo.info b/games/ffgo/ffgo.info
index c2aabc356e..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"
+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 592b0f91d3..25c3dc73ac 100644
--- a/games/fgo/fgo.SlackBuild
+++ b/games/fgo/fgo.SlackBuild
@@ -26,7 +26,7 @@ cd $(dirname $0) ; CWD=$(pwd)
PRGNAM=fgo
VERSION=${VERSION:-1.5.5}
-BUILD=${BUILD:-2}
+BUILD=${BUILD:-3}
TAG=${TAG:-_SBo}
PKGTYPE=${PKGTYPE:-tgz}
@@ -38,16 +38,13 @@ 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
TMP=${TMP:-/tmp/SBo}
-PKG=${PKG:-$TMP/package-$PRGNAM}
+PKG=$TMP/package-$PRGNAM
OUTPUT=${OUTPUT:-/tmp}
set -e
@@ -56,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
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/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 df22d4889e..bc226b6f94 100644
--- a/games/fifengine/fifengine.SlackBuild
+++ b/games/fifengine/fifengine.SlackBuild
@@ -25,7 +25,7 @@
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}
@@ -70,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 . \
@@ -79,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 \
diff --git a/games/fifengine/fifengine.info b/games/fifengine/fifengine.info
index deb3aeb938..18cf364446 100644
--- a/games/fifengine/fifengine.info
+++ b/games/fifengine/fifengine.info
@@ -1,8 +1,8 @@
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="tinyxml fifechan"
diff --git a/games/fillets-ng/fillets-ng.SlackBuild b/games/fillets-ng/fillets-ng.SlackBuild
index 8c0e72e57d..594cc6ec34 100644
--- a/games/fillets-ng/fillets-ng.SlackBuild
+++ b/games/fillets-ng/fillets-ng.SlackBuild
@@ -33,7 +33,7 @@ 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
@@ -51,8 +51,8 @@ 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"
diff --git a/games/fizmo/fizmo.SlackBuild b/games/fizmo/fizmo.SlackBuild
index cc43c2b105..c3bbe58841 100644
--- a/games/fizmo/fizmo.SlackBuild
+++ b/games/fizmo/fizmo.SlackBuild
@@ -2,7 +2,7 @@
# 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.
diff --git a/games/fizmo/fizmo.info b/games/fizmo/fizmo.info
index 739a540c1a..f47d2e8f0f 100644
--- a/games/fizmo/fizmo.info
+++ b/games/fizmo/fizmo.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/flare-game/flare-game.SlackBuild b/games/flare-game/flare-game.SlackBuild
index 31f88467b3..906c918c24 100644
--- a/games/flare-game/flare-game.SlackBuild
+++ b/games/flare-game/flare-game.SlackBuild
@@ -26,7 +26,7 @@
cd $(dirname $0) ; CWD=$(pwd)
PRGNAM=flare-game
-VERSION=${VERSION:-1.12}
+VERSION=${VERSION:-1.14}
BUILD=${BUILD:-1}
TAG=${TAG:-_SBo}
PKGTYPE=${PKGTYPE:-tgz}
@@ -60,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=""
diff --git a/games/flare-game/flare-game.info b/games/flare-game/flare-game.info
index 23f3b1378c..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.12"
+VERSION="1.14"
HOMEPAGE="https://github.com/flareteam/flare-game"
-DOWNLOAD="https://github.com/flareteam/flare-game/archive/v1.12/flare-game-1.12.tar.gz"
-MD5SUM="23c327ef7613d20642cc24ad80e69573"
+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 cfb9a4193f..d19675e21e 100644
--- a/games/flare/flare.SlackBuild
+++ b/games/flare/flare.SlackBuild
@@ -27,7 +27,7 @@ cd $(dirname $0) ; CWD=$(pwd)
PRGNAM=flare
SRCNAM=$PRGNAM-engine
-VERSION=${VERSION:-1.12}
+VERSION=${VERSION:-1.14}
BUILD=${BUILD:-1}
TAG=${TAG:-_SBo}
PKGTYPE=${PKGTYPE:-tgz}
@@ -61,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=""
diff --git a/games/flare/flare.info b/games/flare/flare.info
index 6bf98c0876..707ca651f0 100644
--- a/games/flare/flare.info
+++ b/games/flare/flare.info
@@ -1,8 +1,8 @@
PRGNAM="flare"
-VERSION="1.12"
+VERSION="1.14"
HOMEPAGE="https://flarerpg.org/"
-DOWNLOAD="https://github.com/flareteam/flare-engine/archive/v1.12/flare-engine-1.12.tar.gz"
-MD5SUM="f0352b87030824683265c111efc8f2ba"
+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=""
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-dharma/fortune-dharma.SlackBuild b/games/fortune-dharma/fortune-dharma.SlackBuild
index 2dca054eb2..1d087abd84 100644
--- a/games/fortune-dharma/fortune-dharma.SlackBuild
+++ b/games/fortune-dharma/fortune-dharma.SlackBuild
@@ -33,9 +33,6 @@ 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
@@ -47,18 +44,25 @@ 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
diff --git a/games/fortune-dune/fortune-dune.SlackBuild b/games/fortune-dune/fortune-dune.SlackBuild
index 7496725785..702f5266f9 100644
--- a/games/fortune-dune/fortune-dune.SlackBuild
+++ b/games/fortune-dune/fortune-dune.SlackBuild
@@ -2,7 +2,7 @@
# 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.
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 20c019bd68..d8b0d2ce92 100644
--- a/games/fortune-farscape/fortune-farscape.SlackBuild
+++ b/games/fortune-farscape/fortune-farscape.SlackBuild
@@ -2,7 +2,7 @@
# 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.
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 867a747160..ad997e268d 100644
--- a/games/fortune-futurama/fortune-futurama.SlackBuild
+++ b/games/fortune-futurama/fortune-futurama.SlackBuild
@@ -2,7 +2,7 @@
# 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.
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 9e951f91b9..af7d15ca68 100644
--- a/games/fortune-game_of_thrones/fortune-game_of_thrones.SlackBuild
+++ b/games/fortune-game_of_thrones/fortune-game_of_thrones.SlackBuild
@@ -2,13 +2,15 @@
# 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
@@ -16,14 +18,7 @@ VERSION=${VERSION:-20210128}
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
+ARCH=noarch
if [ ! -z "${PRINT_PACKAGE_NAME}" ]; then
echo "$PRGNAM-$VERSION-$ARCH-$BUILD$TAG.$PKGTYPE"
@@ -33,7 +28,6 @@ fi
TMP=${TMP:-/tmp/SBo}
PKG=$TMP/package-$PRGNAM
OUTPUT=${OUTPUT:-/tmp}
-ARCH=noarch
set -e
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 a1a7c36a64..b6f7757f45 100644
--- a/games/fortune-game_of_thrones/fortune-game_of_thrones.info
+++ b/games/fortune-game_of_thrones/fortune-game_of_thrones.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-noobfarm/fortune-noobfarm.SlackBuild b/games/fortune-noobfarm/fortune-noobfarm.SlackBuild
index 18eaaa51dc..664a8e2f23 100644
--- a/games/fortune-noobfarm/fortune-noobfarm.SlackBuild
+++ b/games/fortune-noobfarm/fortune-noobfarm.SlackBuild
@@ -2,7 +2,7 @@
# 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.
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 9de3e2473c..bb0b5e61c2 100644
--- a/games/fortune-slackware/fortune-slackware.SlackBuild
+++ b/games/fortune-slackware/fortune-slackware.SlackBuild
@@ -2,7 +2,7 @@
# 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.
diff --git a/games/fortune-slackware/fortune-slackware.info b/games/fortune-slackware/fortune-slackware.info
index c57691b86b..a255a5164a 100644
--- a/games/fortune-slackware/fortune-slackware.info
+++ b/games/fortune-slackware/fortune-slackware.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-starwars/fortune-starwars.SlackBuild b/games/fortune-starwars/fortune-starwars.SlackBuild
index 51634b12cb..1955069006 100644
--- a/games/fortune-starwars/fortune-starwars.SlackBuild
+++ b/games/fortune-starwars/fortune-starwars.SlackBuild
@@ -2,7 +2,7 @@
# 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.
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 2d44387d74..2ca1571e48 100644
--- a/games/fortune_doctor_who/fortune_doctor_who.SlackBuild
+++ b/games/fortune_doctor_who/fortune_doctor_who.SlackBuild
@@ -2,10 +2,12 @@
# 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
@@ -13,6 +15,7 @@ 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"
@@ -23,8 +26,6 @@ TMP=${TMP:-/tmp/SBo}
PKG=$TMP/package-$PRGNAM
OUTPUT=${OUTPUT:-/tmp}
-ARCH=noarch
-
set -e
rm -rf $PKG
diff --git a/games/fortune_doctor_who/fortune_doctor_who.info b/games/fortune_doctor_who/fortune_doctor_who.info
index c58de480d8..894a8dbdb5 100644
--- a/games/fortune_doctor_who/fortune_doctor_who.info
+++ b/games/fortune_doctor_who/fortune_doctor_who.info
@@ -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 620d7a49a5..8ece1bbfa1 100644
--- a/games/fortune_firefly/README
+++ b/games/fortune_firefly/README
@@ -1,6 +1,6 @@
fortune_firefly (fortunes from the TV series "Firefly")
-This package contains fortunes from the TV series "Firefly", and it's
+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
diff --git a/games/fortune_firefly/fortune_firefly.SlackBuild b/games/fortune_firefly/fortune_firefly.SlackBuild
index 40698ef4a2..56d6d217f9 100644
--- a/games/fortune_firefly/fortune_firefly.SlackBuild
+++ b/games/fortune_firefly/fortune_firefly.SlackBuild
@@ -2,10 +2,16 @@
# 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.
@@ -17,8 +23,10 @@
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}
@@ -36,20 +44,21 @@ 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
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/freeblocks/freeblocks.SlackBuild b/games/freeblocks/freeblocks.SlackBuild
index 02efeb850c..f4eb13abc7 100644
--- a/games/freeblocks/freeblocks.SlackBuild
+++ b/games/freeblocks/freeblocks.SlackBuild
@@ -2,7 +2,7 @@
# 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.
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 7236365fd0..a5bf1ae724 100644
--- a/games/freeciv/freeciv.SlackBuild
+++ b/games/freeciv/freeciv.SlackBuild
@@ -30,8 +30,8 @@
cd $(dirname $0) ; CWD=$(pwd)
PRGNAM=freeciv
-VERSION=${VERSION:-2.6.5}
-SRCVERSION=${SRCVERSION:-2.6.5}
+VERSION=${VERSION:-3.1.0}
+SRCVERSION=${SRCVERSION:-3.1.0}
BUILD=${BUILD:-1}
TAG=${TAG:-_SBo}
PKGTYPE=${PKGTYPE:-tgz}
@@ -44,9 +44,6 @@ 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
@@ -65,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=""
@@ -76,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 . \
@@ -93,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 \
@@ -109,14 +110,13 @@ 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
diff --git a/games/freeciv/freeciv.info b/games/freeciv/freeciv.info
index c8b7b708e2..b57bd89161 100644
--- a/games/freeciv/freeciv.info
+++ b/games/freeciv/freeciv.info
@@ -1,8 +1,8 @@
PRGNAM="freeciv"
-VERSION="2.6.5"
+VERSION="3.1.0"
HOMEPAGE="http://www.freeciv.org"
-DOWNLOAD="http://files.freeciv.org/stable/freeciv-2.6.5.tar.bz2"
-MD5SUM="c78af06440e93d813812199223da14a1"
+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 aabe16a08e..96b7507c2f 100644
--- a/games/freedink/README
+++ b/games/freedink/README
@@ -6,7 +6,7 @@ which are available at
https://www.dinknetwork.com
-For optional dependencies see README.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.SlackBuild b/games/freedink/README.SBo
index b1ab0dfb94..44abdf08f7 100644
--- a/games/freedink/README.SlackBuild
+++ b/games/freedink/README.SBo
@@ -1,13 +1,11 @@
Known build issues:
-------------------
-- Parallel compilation may result in a failed build.
+- 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 'fluidsynth' and 'fluid-soundfont'
- have been installed. IMPORTANT: MIDIs will only play correctly
- if 'fluidsynth' is installed BEFORE 'SDL2_mixer' is compiled. If
- 'fluidsynth' has been installed after 'SDL2_mixer' then 'SDL2_mixer'
- must be uninstalled, rebuild and reinstalled again.
+- 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:
@@ -32,7 +30,7 @@ Known runtime issues:
Optional dependencies:
----------------------
-- Recommended: 'fluidsynth' and 'fluid-soundfont'.
+- Recommended: 'fluid-soundfont'.
See above for possible issues.
- 'upx'
diff --git a/games/freedoom/freedoom.SlackBuild b/games/freedoom/freedoom.SlackBuild
index 6dd0b8f3ae..7ae7d0f201 100644
--- a/games/freedoom/freedoom.SlackBuild
+++ b/games/freedoom/freedoom.SlackBuild
@@ -2,10 +2,11 @@
# 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
@@ -14,7 +15,7 @@
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}
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 36929350d0..48fab00352 100644
--- a/games/freedroid/freedroid.SlackBuild
+++ b/games/freedroid/freedroid.SlackBuild
@@ -22,11 +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.
+# - 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}
@@ -38,9 +44,6 @@ 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
@@ -75,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 \
@@ -90,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
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 55cef4147f..ccd3a497d2 100644
--- a/games/freedroidrpg/freedroidrpg.SlackBuild
+++ b/games/freedroidrpg/freedroidrpg.SlackBuild
@@ -23,6 +23,11 @@
# 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
@@ -40,9 +45,6 @@ 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
@@ -74,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 \
@@ -90,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
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 56978278f5..58ec97f5c7 100644
--- a/games/freeminer/freeminer.SlackBuild
+++ b/games/freeminer/freeminer.SlackBuild
@@ -23,11 +23,28 @@
# 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}
@@ -40,9 +57,6 @@ 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
@@ -72,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 \
@@ -105,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
diff --git a/games/freeminer/freeminer.info b/games/freeminer/freeminer.info
index 24ce2b9e9b..548a70a541 100644
--- a/games/freeminer/freeminer.info
+++ b/games/freeminer/freeminer.info
@@ -1,8 +1,8 @@
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="luajit irrlicht enet msgpack-c jsoncpp"
diff --git a/games/freeorion/freeorion.SlackBuild b/games/freeorion/freeorion.SlackBuild
index d410122213..348cfa811f 100644
--- a/games/freeorion/freeorion.SlackBuild
+++ b/games/freeorion/freeorion.SlackBuild
@@ -2,7 +2,7 @@
# 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
@@ -26,10 +26,13 @@
# 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.10.1}
+VERSION=${VERSION:-0.5}
BUILD=${BUILD:-1}
TAG=${TAG:-_SBo}
PKGTYPE=${PKGTYPE:-tgz}
@@ -42,9 +45,6 @@ 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
@@ -54,6 +54,7 @@ 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=""
@@ -79,11 +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 {} \;
-
-patch -p0 < $CWD/ftb.patch
+ -o -perm 440 -o -perm 400 \) -exec chmod 644 {} \+
# tell cmake to use clang
export CC=/usr/bin/clang
@@ -97,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
diff --git a/games/freeorion/freeorion.info b/games/freeorion/freeorion.info
index 14f4c641bc..12fa253c7d 100644
--- a/games/freeorion/freeorion.info
+++ b/games/freeorion/freeorion.info
@@ -1,10 +1,10 @@
PRGNAM="freeorion"
-VERSION="0.4.10.1"
+VERSION="0.5"
HOMEPAGE="http://www.freeorion.org"
-DOWNLOAD="https://github.com/freeorion/freeorion/archive/v0.4.10.1/freeorion-0.4.10.1.tar.gz"
-MD5SUM="6c1f5a2508bb60a6503709b355246488"
+DOWNLOAD="https://github.com/freeorion/freeorion/archive/v0.5/freeorion-0.5.tar.gz"
+MD5SUM="8c4a083e20df334caa0f7040e79f1cc5"
DOWNLOAD_x86_64=""
MD5SUM_x86_64=""
REQUIRES=""
MAINTAINER="Dimitris Zlatanidis"
-EMAIL="d.zlatanidis@gmail.com"
+EMAIL="dslackw@gmail.com"
diff --git a/games/freeorion/ftb.patch b/games/freeorion/ftb.patch
deleted file mode 100644
index 5b888eca76..0000000000
--- a/games/freeorion/ftb.patch
+++ /dev/null
@@ -1,103 +0,0 @@
---- UI/CombatReport/GraphicalSummary.cpp 2021-07-10 14:11:25.281161865 -0500
-+++ UI/CombatReport/GraphicalSummary.cpp 2021-07-10 14:11:34.010981701 -0500
-@@ -409,91 +409,6 @@
- m_y_axis_label->MoveTo(GG::Pt(-m_y_axis_label->MinUsableSize().x / 2 - AXIS_WIDTH, Height()/2 - m_y_axis_label->Height()/2));
- }
-
-- void DrawArrow(GG::Pt begin, GG::Pt end) {
-- double head_width = 5.0;
-- // A vector (math) of the arrow we wish to draw
-- GG::Pt direction = end - begin;
-- double length = sqrt(1.0*(Value(direction.x)*Value(direction.x) +
-- Value(direction.y)*Value(direction.y)));
-- if (length == 0) {
-- return;
-- }
--
-- // The point in the main line of the arrow,
-- // paraller to which the head ends
-- // \.
-- // \.
-- // --------h-->
-- // /.
-- // /.
-- // h is at the handle
-- GG::Pt handle;
-- // How much to move off the handle to get to
-- // the end point of one of the head lines
-- GG::X delta_x;
-- GG::Y delta_y;
--
-- if (direction.x != 0 && direction.y != 0) {
-- // In a skewed arrow we need
-- // a bit of geometry to figure out the head
-- double x = Value(direction.x);
-- double y = Value(direction.y);
-- double normalizer = head_width / sqrt(1 + x*x / (y*y));
-- delta_x = GG::X(normalizer);
-- delta_y = GG::Y(- x / y * normalizer);
--
-- handle = end - GG::Pt((head_width / length) * direction.x, (head_width / length) * direction.y);
-- } else if (direction.x == 0) {
-- // Vertical arrow
-- handle = end;
-- handle.y -= boost::math::sign(Value(direction.y))*GG::Y(head_width);
-- delta_x = GG::X(head_width);
-- delta_y = GG::Y0;
-- } else {
-- //horizontal arrow
-- handle = end;
-- handle.x -= boost::math::sign(Value(direction.x)) * GG::X(head_width);
-- delta_x = GG::X0;
-- delta_y = GG::Y(head_width);
-- }
--
-- GG::Pt left_head = handle;
-- GG::Pt right_head = handle;
--
-- left_head.x += delta_x;
-- left_head.y += delta_y;
-- // The other line is on the opposite side of the handle
-- right_head.x -= delta_x;
-- right_head.y -= delta_y;
--
-- GG::glColor(GG::CLR_WHITE);
-- glLineWidth(2);
-- glDisable(GL_TEXTURE_2D);
--
-- GG::GL2DVertexBuffer verts;
-- verts.reserve(6);
-- verts.store(Value(begin.x), Value(begin.y));
-- verts.store(Value(end.x), Value(end.y));
-- verts.store(Value(end.x), Value(end.y));
-- verts.store(Value(left_head.x), Value(left_head.y));
-- verts.store(Value(end.x), Value(end.y));
-- verts.store(Value(right_head.x),Value(right_head.y));
-- verts.activate();
--
-- glDrawArrays(GL_LINES, 0, verts.size());
--
-- glEnable(GL_TEXTURE_2D);
-- }
--
-- void Render() override {
-- // Draw the axes outside th3e client area
-- GG::Pt begin(ClientUpperLeft().x - AXIS_WIDTH/2, ClientLowerRight().y + AXIS_HEIGHT/2);
-- GG::Pt x_end(ClientLowerRight().x, begin.y);
-- GG::Pt y_end(begin.x, ClientUpperLeft().y);
-- DrawArrow(begin, x_end);
-- DrawArrow(begin, y_end);
-- }
--
- void SizeMove(const GG::Pt& ul, const GG::Pt& lr) override {
- GG::Wnd::SizeMove(ul, lr);
- DoLayout();
---- universe/Conditions.cpp 2021-07-10 14:11:05.049579392 -0500
-+++ universe/Conditions.cpp 2021-07-10 14:13:39.582389758 -0500
-@@ -1,5 +1,6 @@
- #include "Conditions.h"
-
-+#include <cfloat>
- #include "../util/Logger.h"
- #include "../util/Random.h"
- #include "../util/i18n.h"
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 0f24518542..6e555d740e 100644
--- a/games/frogatto/frogatto.SlackBuild
+++ b/games/frogatto/frogatto.SlackBuild
@@ -38,9 +38,6 @@ 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
@@ -72,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 \
@@ -79,8 +77,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 {} \;
+# 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,,' Makefile
+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 \
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/frotz.SlackBuild b/games/frotz/frotz.SlackBuild
index 147c52fdbb..aad8cf468e 100644
--- a/games/frotz/frotz.SlackBuild
+++ b/games/frotz/frotz.SlackBuild
@@ -3,12 +3,19 @@
# Slackware build script for frotz
# Originally written for Slackware 12.2 by Beej Jorgensen <email
-# removed>, heavily modified by B. Watson <yalhcru@gmail.com> since
+# removed>, heavily modified by B. Watson <urchlay@slackware.uk> since
# then.
# Original had no license. This modified version is released under the
# WTFPL. See http://www.wtfpl.net/txt/copying/ for details.
+# 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.
@@ -34,7 +41,7 @@
cd $(dirname $0) ; CWD=$(pwd)
PRGNAM=frotz
-VERSION=${VERSION:-2.53}
+VERSION=${VERSION:-2.54}
BUILD=${BUILD:-1}
TAG=${TAG:-_SBo}
PKGTYPE=${PKGTYPE:-tgz}
diff --git a/games/frotz/frotz.info b/games/frotz/frotz.info
index bb6a954721..cd0755974e 100644
--- a/games/frotz/frotz.info
+++ b/games/frotz/frotz.info
@@ -1,10 +1,10 @@
PRGNAM="frotz"
-VERSION="2.53"
+VERSION="2.54"
HOMEPAGE="https://davidgriffith.gitlab.io/frotz/"
-DOWNLOAD="https://gitlab.com/DavidGriffith/frotz/-/archive/2.53/frotz-2.53.tar.bz2"
-MD5SUM="02c61ce6de7cd8635f99cb1bc17971e8"
+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/frozen-bubble/frozen-bubble.info b/games/frozen-bubble/frozen-bubble.info
index 33f9703776..b90de1d9d9 100644
--- a/games/frozen-bubble/frozen-bubble.info
+++ b/games/frozen-bubble/frozen-bubble.info
@@ -1,7 +1,7 @@
PRGNAM="frozen-bubble"
VERSION="git_20170702_d6a0291"
HOMEPAGE="http://www.frozen-bubble.org/"
-DOWNLOAD="http://www.liwjatan.at/files/src/frozen-bubble/frozen-bubble-git_20170702_d6a0291.tar.lz"
+DOWNLOAD="https://sources.liwjatan.org/frozen-bubble/frozen-bubble-git_20170702_d6a0291.tar.lz"
MD5SUM="f04690d91e2dba3838e5dc9ce7708f8a"
DOWNLOAD_x86_64=""
MD5SUM_x86_64=""
diff --git a/games/fs-uae-arcade/fs-uae-arcade.SlackBuild b/games/fs-uae-arcade/fs-uae-arcade.SlackBuild
index 6c19beb3a0..1dcf6e3cd2 100644
--- a/games/fs-uae-arcade/fs-uae-arcade.SlackBuild
+++ b/games/fs-uae-arcade/fs-uae-arcade.SlackBuild
@@ -35,7 +35,7 @@ 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
@@ -53,8 +53,8 @@ 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"
diff --git a/games/fs-uae-launcher/fs-uae-launcher.SlackBuild b/games/fs-uae-launcher/fs-uae-launcher.SlackBuild
index 3cf9c85eb5..827be4a626 100644
--- a/games/fs-uae-launcher/fs-uae-launcher.SlackBuild
+++ b/games/fs-uae-launcher/fs-uae-launcher.SlackBuild
@@ -35,7 +35,7 @@ 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
@@ -53,8 +53,8 @@ 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"
diff --git a/games/fs-uae/fs-uae.SlackBuild b/games/fs-uae/fs-uae.SlackBuild
index 14ddbb08e4..99aaf1d416 100644
--- a/games/fs-uae/fs-uae.SlackBuild
+++ b/games/fs-uae/fs-uae.SlackBuild
@@ -25,10 +25,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.
+# 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}
@@ -41,9 +44,6 @@ 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
@@ -78,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" \
diff --git a/games/fs-uae/fs-uae.info b/games/fs-uae/fs-uae.info
index 2cd75ad93e..be52b342ba 100644
--- a/games/fs-uae/fs-uae.info
+++ b/games/fs-uae/fs-uae.info
@@ -1,8 +1,8 @@
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="libmpeg2"
diff --git a/games/fs2open/fs2open.SlackBuild b/games/fs2open/fs2open.SlackBuild
index e05dacb755..b95be31e07 100644
--- a/games/fs2open/fs2open.SlackBuild
+++ b/games/fs2open/fs2open.SlackBuild
@@ -22,6 +22,11 @@
# 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
@@ -38,9 +43,6 @@ 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
@@ -75,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/
@@ -93,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
@@ -109,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
diff --git a/games/fs2open/fs2open.info b/games/fs2open/fs2open.info
index 1937a793bc..48f53d7802 100644
--- a/games/fs2open/fs2open.info
+++ b/games/fs2open/fs2open.info
@@ -1,7 +1,7 @@
PRGNAM="fs2open"
VERSION="ac2b864"
HOMEPAGE="https://github.com/scp-fs2open/fs2open.github.com"
-DOWNLOAD="https://schmatzler.de/my_slackbuilds/fs2open/fs2open-ac2b864.tar.gz \
+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"
diff --git a/games/fuse-emulator/fuse-emulator.SlackBuild b/games/fuse-emulator/fuse-emulator.SlackBuild
index 33e1adbcdf..d68d85f7fc 100644
--- a/games/fuse-emulator/fuse-emulator.SlackBuild
+++ b/games/fuse-emulator/fuse-emulator.SlackBuild
@@ -2,7 +2,7 @@
# 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
@@ -26,7 +26,7 @@ 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}
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 da109c81c4..10b7939991 100644
--- a/games/galaxyv2/galaxyv2.SlackBuild
+++ b/games/galaxyv2/galaxyv2.SlackBuild
@@ -2,7 +2,7 @@
# 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
@@ -25,7 +25,7 @@
cd $(dirname $0) ; CWD=$(pwd)
PRGNAM=galaxyv2
-VERSION=${VERSION:-1.85}
+VERSION=${VERSION:-1.86}
BUILD=${BUILD:-1}
TAG=${TAG:-_SBo}
PKGTYPE=${PKGTYPE:-tgz}
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/garden/garden.SlackBuild b/games/garden/garden.SlackBuild
index 7ddd5dbe09..f63e9a9a0f 100644
--- a/games/garden/garden.SlackBuild
+++ b/games/garden/garden.SlackBuild
@@ -25,6 +25,8 @@
# (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
@@ -35,15 +37,12 @@ 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
-# 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
@@ -53,8 +52,8 @@ 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,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" \
@@ -91,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
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 d399272e6a..bf1b7293ab 100644
--- a/games/gargoyle/gargoyle.SlackBuild
+++ b/games/gargoyle/gargoyle.SlackBuild
@@ -7,8 +7,8 @@
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}
@@ -23,9 +23,6 @@ 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
@@ -44,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=""
@@ -60,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 -fpermissive" \
- -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
@@ -88,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
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 ce85d85774..c025a9a598 100644
--- a/games/gbrainy/gbrainy.SlackBuild
+++ b/games/gbrainy/gbrainy.SlackBuild
@@ -4,7 +4,7 @@
# 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
@@ -27,7 +27,7 @@
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}
@@ -40,9 +40,6 @@ 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
@@ -104,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
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/gemrb.SlackBuild b/games/gemrb/gemrb.SlackBuild
index bd51d86333..7dcdf1eb4b 100644
--- a/games/gemrb/gemrb.SlackBuild
+++ b/games/gemrb/gemrb.SlackBuild
@@ -26,7 +26,8 @@
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}
@@ -71,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 . \
@@ -101,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
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 707df07c40..0000000000
--- a/games/gens-gs/gens-gs.SlackBuild
+++ /dev/null
@@ -1,98 +0,0 @@
-#!/bin/bash
-# Slackware build script for gens-gs
-# Written by Steven Pledger <spledger91@yahoo.com>
-
-cd $(dirname $0) ; CWD=$(pwd)
-
-PRGNAM=gens-gs
-VERSION=${VERSION:-r7}
-BUILD=${BUILD:-1}
-TAG=${TAG:-_SBo}
-PKGTYPE=${PKGTYPE:-tgz}
-
-if [ -z "$ARCH" ]; then
- case "$( uname -m )" in
- i?86) ARCH=i486 ;;
- 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" = "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
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/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 6750a1ce21..2f746f1b22 100644
--- a/games/ggmud/ggmud.SlackBuild
+++ b/games/ggmud/ggmud.SlackBuild
@@ -22,10 +22,22 @@
# 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}
@@ -38,9 +50,6 @@ 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
@@ -74,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" \
@@ -101,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/
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 721b38344e..dbc6a540e9 100644
--- a/games/gl-117/gl-117.SlackBuild
+++ b/games/gl-117/gl-117.SlackBuild
@@ -14,7 +14,7 @@ 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
@@ -32,8 +32,8 @@ 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"
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.info b/games/glPortal/glPortal.info
deleted file mode 100644
index 5d6d374739..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 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/glbsp.SlackBuild b/games/glbsp/glbsp.SlackBuild
index 8ff894c6c7..d171dc9277 100644
--- a/games/glbsp/glbsp.SlackBuild
+++ b/games/glbsp/glbsp.SlackBuild
@@ -2,7 +2,7 @@
# 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.
diff --git a/games/glbsp/glbsp.info b/games/glbsp/glbsp.info
index 6fb4262c42..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/"
+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=""
MAINTAINER="B. Watson"
-EMAIL="yalhcru@gmail.com"
+EMAIL="urchlay@slackware.uk"
diff --git a/games/glob2/glob2.SlackBuild b/games/glob2/glob2.SlackBuild
index eadc44f02c..c1593d6670 100644
--- a/games/glob2/glob2.SlackBuild
+++ b/games/glob2/glob2.SlackBuild
@@ -79,10 +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/c++14.patch
+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
diff --git a/games/glob2/c++14.patch b/games/glob2/patches/c++14.patch
index 6465f659af..6465f659af 100644
--- a/games/glob2/c++14.patch
+++ b/games/glob2/patches/c++14.patch
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 f2943a7fc5..b0e92d6f57 100644
--- a/games/glxosd/glxosd.SlackBuild
+++ b/games/glxosd/glxosd.SlackBuild
@@ -35,7 +35,7 @@ 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
@@ -53,8 +53,8 @@ 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"
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/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 f20fd4eb77..4048c10cd8 100644
--- a/games/gnonograms/gnonograms.SlackBuild
+++ b/games/gnonograms/gnonograms.SlackBuild
@@ -31,28 +31,25 @@ 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
-
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"
@@ -76,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 \
diff --git a/games/gnubg/gnubg.SlackBuild b/games/gnubg/gnubg.SlackBuild
index e1fa06c88d..307598ed5e 100644
--- a/games/gnubg/gnubg.SlackBuild
+++ b/games/gnubg/gnubg.SlackBuild
@@ -25,19 +25,11 @@
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}
-# 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 +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=""
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/gnurobbo/gnurobbo.SlackBuild b/games/gnurobbo/gnurobbo.SlackBuild
index a5b37f66b5..5eb59a3f79 100644
--- a/games/gnurobbo/gnurobbo.SlackBuild
+++ b/games/gnurobbo/gnurobbo.SlackBuild
@@ -22,11 +22,16 @@
# 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}
@@ -38,9 +43,6 @@ 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
@@ -75,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
@@ -89,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 \
diff --git a/games/gnuski/gnuski.SlackBuild b/games/gnuski/gnuski.SlackBuild
index 61f24026db..5219026331 100644
--- a/games/gnuski/gnuski.SlackBuild
+++ b/games/gnuski/gnuski.SlackBuild
@@ -14,7 +14,7 @@ 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
diff --git a/games/golly/golly.SlackBuild b/games/golly/golly.SlackBuild
index ed03a34006..431f32c005 100644
--- a/games/golly/golly.SlackBuild
+++ b/games/golly/golly.SlackBuild
@@ -3,7 +3,7 @@
# 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.
@@ -38,7 +41,7 @@
cd $(dirname $0) ; CWD=$(pwd)
PRGNAM=golly
-VERSION=${VERSION:-4.0}
+VERSION=${VERSION:-4.2}
BUILD=${BUILD:-1}
TAG=${TAG:-_SBo}
PKGTYPE=${PKGTYPE:-tgz}
@@ -51,9 +54,6 @@ 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
@@ -90,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 ..
@@ -126,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
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 f28b82e214..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"
+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/gottet/README b/games/gottet/README
index 2e2af20cf8..6815fc1445 100644
--- a/games/gottet/README
+++ b/games/gottet/README
@@ -1,3 +1,7 @@
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 924aa28664..4db31b808c 100644
--- a/games/gottet/gottet.SlackBuild
+++ b/games/gottet/gottet.SlackBuild
@@ -4,10 +4,15 @@
# Originally written 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)
# Licensed under the WTFPL. See http://www.wtfpl.net/txt/copying/ for details.
+# 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.
+
# 20211008 bkw:
# - relicensed with permission from Ryan.
# - update for v1.2.0. qt5 now in Slackware...
diff --git a/games/gottet/gottet.info b/games/gottet/gottet.info
index d606753ff9..e9a1e2683c 100644
--- a/games/gottet/gottet.info
+++ b/games/gottet/gottet.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/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/antimicro/slack-desc b/games/gtetrinet/slack-desc
index b2e069eb29..89db12ef66 100644
--- a/games/antimicro/slack-desc
+++ b/games/gtetrinet/slack-desc
@@ -6,14 +6,14 @@
# 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:
+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/gtkballs.info b/games/gtkballs/gtkballs.info
index d5858d6e02..8e04df3577 100644
--- a/games/gtkballs/gtkballs.info
+++ b/games/gtkballs/gtkballs.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/gtklife/gtklife.SlackBuild b/games/gtklife/gtklife.SlackBuild
index 6278d7f70b..840b1b726e 100644
--- a/games/gtklife/gtklife.SlackBuild
+++ b/games/gtklife/gtklife.SlackBuild
@@ -2,10 +2,12 @@
# 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.
@@ -14,8 +16,8 @@
cd $(dirname $0) ; CWD=$(pwd)
PRGNAM=gtklife
-VERSION=${VERSION:-5.2}
-BUILD=${BUILD:-3}
+VERSION=${VERSION:-5.3}
+BUILD=${BUILD:-1}
TAG=${TAG:-_SBo}
PKGTYPE=${PKGTYPE:-tgz}
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/gzdoom-legacy/gzdoom-legacy.SlackBuild b/games/gzdoom-legacy/gzdoom-legacy.SlackBuild
index d2ab9ef85a..9c9d407413 100644
--- a/games/gzdoom-legacy/gzdoom-legacy.SlackBuild
+++ b/games/gzdoom-legacy/gzdoom-legacy.SlackBuild
@@ -2,7 +2,7 @@
# 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.
diff --git a/games/gzdoom-legacy/gzdoom-legacy.info b/games/gzdoom-legacy/gzdoom-legacy.info
index 9fb9150273..180287e61d 100644
--- a/games/gzdoom-legacy/gzdoom-legacy.info
+++ b/games/gzdoom-legacy/gzdoom-legacy.info
@@ -7,4 +7,4 @@ DOWNLOAD_x86_64=""
MD5SUM_x86_64=""
REQUIRES="fmodapi"
MAINTAINER="B. Watson"
-EMAIL="yalhcru@gmail.com"
+EMAIL="urchlay@slackware.uk"
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/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 780f2f6f31..0a599804e2 100644
--- a/games/gzdoom/gzdoom.SlackBuild
+++ b/games/gzdoom/gzdoom.SlackBuild
@@ -2,10 +2,14 @@
# 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:
@@ -36,7 +40,7 @@
cd $(dirname $0) ; CWD=$(pwd)
PRGNAM=gzdoom
-VERSION=${VERSION:-4.7.0}
+VERSION=${VERSION:-4.10.0}
BUILD=${BUILD:-1}
TAG=${TAG:-_SBo}
PKGTYPE=${PKGTYPE:-tgz}
@@ -84,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).
@@ -101,6 +109,10 @@ 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
cmake \
diff --git a/games/gzdoom/gzdoom.info b/games/gzdoom/gzdoom.info
index cc474393e8..96cbbf7bc5 100644
--- a/games/gzdoom/gzdoom.info
+++ b/games/gzdoom/gzdoom.info
@@ -1,10 +1,10 @@
PRGNAM="gzdoom"
-VERSION="4.7.0"
+VERSION="4.10.0"
HOMEPAGE="http://gzdoom.drdteam.org/"
-DOWNLOAD="https://github.com/coelckers/gzdoom/archive/g4.7.0/gzdoom-g4.7.0.tar.gz"
-MD5SUM="1b858a2ef68f04c2c9f0ba7592cb73bd"
+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="zmusic"
MAINTAINER="B. Watson"
-EMAIL="yalhcru@gmail.com"
+EMAIL="urchlay@slackware.uk"
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 b81f718388..b92dbde447 100644
--- a/games/hack-of-life/hack-of-life.SlackBuild
+++ b/games/hack-of-life/hack-of-life.SlackBuild
@@ -2,7 +2,7 @@
# 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,11 +12,14 @@
# 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}
@@ -28,9 +31,6 @@ 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
@@ -91,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
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/hatari.SlackBuild b/games/hatari/hatari.SlackBuild
index 323348c868..6dab2b4c9b 100644
--- a/games/hatari/hatari.SlackBuild
+++ b/games/hatari/hatari.SlackBuild
@@ -2,10 +2,17 @@
# 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.
@@ -66,7 +73,7 @@
cd $(dirname $0) ; CWD=$(pwd)
PRGNAM=hatari
-VERSION=${VERSION:-2.3.1}
+VERSION=${VERSION:-2.5.0}
BUILD=${BUILD:-1}
TAG=${TAG:-_SBo}
PKGTYPE=${PKGTYPE:-tgz}
@@ -84,7 +91,7 @@ if [ ! -z "${PRINT_PACKAGE_NAME}" ]; then
exit 0
fi
-TMP=${TMP-/tmp/SBo}
+TMP=${TMP:-/tmp/SBo}
PKG=$TMP/package-$PRGNAM
OUTPUT=${OUTPUT:-/tmp}
@@ -169,6 +176,8 @@ sed -i \
# /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 \
@@ -199,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
@@ -228,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 )
diff --git a/games/hatari/hatari.info b/games/hatari/hatari.info
index 19d933a9c0..0d379dc3c0 100644
--- a/games/hatari/hatari.info
+++ b/games/hatari/hatari.info
@@ -1,10 +1,10 @@
PRGNAM="hatari"
-VERSION="2.3.1"
+VERSION="2.5.0"
HOMEPAGE="https://hatari.tuxfamily.org/"
-DOWNLOAD="https://download.tuxfamily.org/hatari/2.3.1/hatari-2.3.1.tar.bz2"
-MD5SUM="52f572328edc575db17e54d4fd2d3a20"
+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
index 50629bd64e..f33a6118c5 100644
--- a/games/hatari/manpage.2.3.1.diff
+++ b/games/hatari/manpage.2.3.1.diff
@@ -97,7 +97,7 @@ diff -Naur hatari-2.3.0/doc/hatari.1 hatari-2.3.0.patched/doc/hatari.1
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
-+<yalhcru@gmail.com> for the SlackBuilds.org project to fix some formatting.
++<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
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 0269253476..e559d5496b 100644
--- a/games/hatari/manpage.diff
+++ b/games/hatari/manpage.diff
@@ -97,7 +97,7 @@ diff -Naur hatari-2.3.0/doc/hatari.1 hatari-2.3.0.patched/doc/hatari.1
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
-+<yalhcru@gmail.com> for the SlackBuilds.org project to fix some formatting.
++<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
diff --git a/games/hatari_tos_roms/hatari_tos_roms.SlackBuild b/games/hatari_tos_roms/hatari_tos_roms.SlackBuild
index 7d6124f867..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/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:
@@ -23,7 +26,7 @@
cd $(dirname $0) ; CWD=$(pwd)
PRGNAM=hatari_tos_roms
-VERSION=${VERSION:-20140825}
+VERSION=${VERSION:-20230107}
ARCH=noarch
BUILD=${BUILD:-1}
TAG=${TAG:-_SBo}
@@ -34,7 +37,7 @@ if [ ! -z "${PRINT_PACKAGE_NAME}" ]; then
exit 0
fi
-TMP=${TMP-/tmp/SBo}
+TMP=${TMP:-/tmp/SBo}
PKG=$TMP/package-$PRGNAM
OUTPUT=${OUTPUT:-/tmp}
@@ -60,6 +63,11 @@ 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
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/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 d1ac8c62cf..b936cd36a3 100644
--- a/games/haxima-nazghul/haxima-nazghul.SlackBuild
+++ b/games/haxima-nazghul/haxima-nazghul.SlackBuild
@@ -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.
+# 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}
@@ -39,9 +44,6 @@ 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
@@ -76,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
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/hedgewars.SlackBuild b/games/hedgewars/hedgewars.SlackBuild
index 70ea97aafa..5a004ef5f1 100644
--- a/games/hedgewars/hedgewars.SlackBuild
+++ b/games/hedgewars/hedgewars.SlackBuild
@@ -2,7 +2,7 @@
# 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,6 +22,18 @@
# 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
@@ -29,7 +41,7 @@
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}
@@ -42,9 +54,6 @@ 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
@@ -77,14 +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 {} +
-patch -p1 < $CWD/fpc-3.2.0.patch
-patch -p1 < $CWD/include.qpainterpath.diff
+SLKCFLAGS+=" -fcommon"
mkdir -p build
cd build
@@ -93,24 +98,42 @@ 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 ..
-# Include the man page.
-mkdir -p $PKG/usr/man/man6
-cp $TMP/$PRGNAM-src-$VERSION/man/hedgewars.6 $PKG/usr/man/man6
+# It's a game, so:
+mv $PKG/usr/bin $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
+# 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/*
-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
+# Include the man page.
+mkdir -p $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/*
+
+# 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
+
+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
diff --git a/games/hedgewars/hedgewars.info b/games/hedgewars/hedgewars.info
index 6400dd214a..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"
-MAINTAINER="Rubén Llorente"
-EMAIL="porting@use.startmail.com"
+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/heretic_shareware_data/heretic_shareware_data.SlackBuild b/games/heretic_shareware_data/heretic_shareware_data.SlackBuild
index 169d0af786..38343a4fdf 100644
--- a/games/heretic_shareware_data/heretic_shareware_data.SlackBuild
+++ b/games/heretic_shareware_data/heretic_shareware_data.SlackBuild
@@ -2,7 +2,7 @@
# 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.
diff --git a/games/heretic_shareware_data/heretic_shareware_data.info b/games/heretic_shareware_data/heretic_shareware_data.info
index f66d2869ec..ba196fe3f9 100644
--- a/games/heretic_shareware_data/heretic_shareware_data.info
+++ b/games/heretic_shareware_data/heretic_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/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 1fe982d0eb..b71dc67207 100644
--- a/games/hex-a-hop/hex-a-hop.SlackBuild
+++ b/games/hex-a-hop/hex-a-hop.SlackBuild
@@ -14,7 +14,7 @@ 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
@@ -32,8 +32,8 @@ 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"
diff --git a/games/hexen_demo_data/hexen_demo_data.SlackBuild b/games/hexen_demo_data/hexen_demo_data.SlackBuild
index 7569263b8c..b3d7c31b23 100644
--- a/games/hexen_demo_data/hexen_demo_data.SlackBuild
+++ b/games/hexen_demo_data/hexen_demo_data.SlackBuild
@@ -2,7 +2,7 @@
# 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.
diff --git a/games/hexen_demo_data/hexen_demo_data.info b/games/hexen_demo_data/hexen_demo_data.info
index b1742d1651..31b403180e 100644
--- a/games/hexen_demo_data/hexen_demo_data.info
+++ b/games/hexen_demo_data/hexen_demo_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/hexen_demo_data/slack-desc b/games/hexen_demo_data/slack-desc
index 36a80fd0b0..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 and gzdoom 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 f4b45dd157..6e1487a744 100644
--- a/games/hexglass/hexglass.SlackBuild
+++ b/games/hexglass/hexglass.SlackBuild
@@ -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.
+# 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}
@@ -38,9 +48,6 @@ 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
@@ -75,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
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-flags.diff b/games/higan/higan-flags.diff
index 890a2c0bc2..aaca8d0e2f 100644
--- a/games/higan/higan-flags.diff
+++ b/games/higan/higan-flags.diff
@@ -1,23 +1,49 @@
-From 6d0f100d25fecae89a48c76f55371730a51c10fe Mon Sep 17 00:00:00 2001
-From: Maxime Gauduin <alucryd@archlinux.org>
-Date: Wed, 18 Mar 2020 17:08:25 +0100
-Subject: [PATCH] use system flags
-
----
- nall/GNUmakefile | 3 ++-
- 1 file changed, 2 insertions(+), 1 deletion(-)
-
-diff --git a/nall/GNUmakefile b/nall/GNUmakefile
-index 67fb3a15..fddec93d 100755
---- a/nall/GNUmakefile
-+++ b/nall/GNUmakefile
-@@ -127,7 +127,8 @@ endif
+diff -rupN higan_v106-source.orig/higan/GNUmakefile higan_v106-source/higan/GNUmakefile
+--- higan_v106-source.orig/higan/GNUmakefile 2017-12-27 23:12:21.263872763 +0100
++++ higan_v106-source/higan/GNUmakefile 2017-12-27 23:12:30.243627883 +0100
+@@ -1,4 +1,4 @@
+-build := optimize
++build := release
+ include ../nall/GNUmakefile
- # linux settings
- ifeq ($(platform),linux)
-- options += -ldl
-+ flags += ${CXXFLAGS}
-+ options += ${LDFLAGS} -ldl
+ binary := application
+@@ -26,7 +26,6 @@ else ifneq ($(filter $(platform),linux b
+ flags += -fopenmp
+ link += -fopenmp
+ ifeq ($(binary),application)
+- flags += -march=native
+ link += -Wl,-export-dynamic
+ link += -lX11 -lXext
+ else ifeq ($(binary),library)
+diff -rupN higan_v106-source.orig/icarus/GNUmakefile higan_v106-source/icarus/GNUmakefile
+--- higan_v106-source.orig/icarus/GNUmakefile 2017-12-27 23:12:21.280538976 +0100
++++ higan_v106-source/icarus/GNUmakefile 2017-12-27 23:12:30.243627883 +0100
+@@ -1,4 +1,4 @@
+-build := optimize
++build := release
+ include ../nall/GNUmakefile
+ include ../hiro/GNUmakefile
+
+diff -rupN higan_v106-source.orig/nall/GNUmakefile higan_v106-source/nall/GNUmakefile
+--- higan_v106-source.orig/nall/GNUmakefile 2017-12-27 23:12:21.283872217 +0100
++++ higan_v106-source/nall/GNUmakefile 2017-12-27 23:12:44.326577547 +0100
+@@ -40,8 +40,8 @@ cflags := -x c -std=c11
+ objcflags := -x objective-c -std=c11
+ cppflags := -x c++ -std=c++14
+ objcppflags := -x objective-c++ -std=c++14
+-flags :=
+-link :=
++flags := $(CXXFLAGS)
++link := $(LDFLAGS)
+
+ # compiler detection
+ ifeq ($(compiler),)
+@@ -120,7 +120,7 @@ ifeq ($(threaded),true)
endif
- # bsd settings
+ # paths
+-prefix := $(HOME)/.local
++prefix := /usr
+
+ # function rwildcard(directory, pattern)
+ rwildcard = \
diff --git a/games/higan/higan-paths.diff b/games/higan/higan-paths.diff
index 65fe4a24eb..dcb3eaf89d 100644
--- a/games/higan/higan-paths.diff
+++ b/games/higan/higan-paths.diff
@@ -1,43 +1,26 @@
-kFrom c0495ce121ab0c3eeffdf08614e18bd4f0c455f2 Mon Sep 17 00:00:00 2001
-From: Maxime Gauduin <alucryd@archlinux.org>
-Date: Wed, 18 Mar 2020 12:19:31 +0100
-Subject: [PATCH] use more sensible paths
-
----
- higan/target-higan/higan.cpp | 5 ++---
- icarus/icarus.cpp | 3 +--
- 2 files changed, 3 insertions(+), 5 deletions(-)
-
-diff --git a/higan/target-higan/higan.cpp b/higan/target-higan/higan.cpp
-index 1ce9b991..7d1ae122 100644
---- a/higan/target-higan/higan.cpp
-+++ b/higan/target-higan/higan.cpp
-@@ -43,11 +43,10 @@ auto nall::main(Arguments arguments) -> void {
- Path::data = document["data"].text();
- }
- if(!directory::exists(Path::templates)) {
-- Path::templates = {Path::userData(), "higan/"};
-- directory::create(Path::templates);
-+ Path::templates = {Path::sharedData(), "higan/Templates/"};
- }
- if(!directory::exists(Path::data)) {
-- Path::data = {Path::user(), "higan/"};
-+ Path::data = {Path::userData(), "higan/Systems/"};
- directory::create(Path::data);
- }
- file::write({Path::settings, "paths.bml"}, string{
-diff --git a/icarus/icarus.cpp b/icarus/icarus.cpp
-index 95435f38..a46744e5 100644
---- a/icarus/icarus.cpp
-+++ b/icarus/icarus.cpp
-@@ -8,8 +8,7 @@ auto locate(string name) -> string {
- string location = {Path::program(), name};
+diff -rupN higan_v106-source.orig/higan/target-tomoko/tomoko.cpp higan_v106-source/higan/target-tomoko/tomoko.cpp
+--- higan_v106-source.orig/higan/target-tomoko/tomoko.cpp 2017-12-27 23:48:31.103245742 +0100
++++ higan_v106-source/higan/target-tomoko/tomoko.cpp 2017-12-27 23:49:19.728586352 +0100
+@@ -11,6 +11,9 @@ auto locate(string name) -> string {
+ location = {Path::config(), "higan/", name};
if(inode::exists(location)) return location;
-- directory::create({Path::userData(), "icarus/"});
-- return {Path::userData(), "icarus/", name};
-+ return {Path::sharedData(), "icarus/", name};
++ location = {Path::shared(), "higan/", name};
++ if(inode::exists(location)) return location;
++
+ directory::create({Path::local(), "higan/"});
+ return {Path::local(), "higan/", name};
}
+diff -rupN higan_v106-source.orig/icarus/icarus.cpp higan_v106-source/icarus/icarus.cpp
+--- higan_v106-source.orig/icarus/icarus.cpp 2017-12-27 23:48:31.109912227 +0100
++++ higan_v106-source/icarus/icarus.cpp 2017-12-27 23:49:02.672384569 +0100
+@@ -11,6 +11,9 @@ auto locate(string name) -> string {
+ location = {Path::config(), "icarus/", name};
+ if(inode::exists(location)) return location;
- auto operator+=(string& lhs, const string& rhs) -> string& {
-
++ location = {Path::shared(), "icarus/", name};
++ if(inode::exists(location)) return location;
++
+ directory::create({Path::local(), "icarus/"});
+ return {Path::local(), "icarus/", name};
+ }
diff --git a/games/higan/higan.SlackBuild b/games/higan/higan.SlackBuild
index f87d355ba2..31cd37b92a 100644
--- a/games/higan/higan.SlackBuild
+++ b/games/higan/higan.SlackBuild
@@ -5,7 +5,7 @@
# 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.
@@ -34,7 +44,7 @@
# This update would not have happened without assistance and moral support
# from Yossi Ne'eman. Thanks!
# - Take over maintenance.
-# - Update for v110.
+# - Update for v106.
# - Use the gtk frontend, not the *broken* qt one.
# - Make OpenAL dep optional & autodetected (and OPENAL=no to force-disable).
# - Add OSS (default no) and PULSE (default yes) env vars.
@@ -49,8 +59,8 @@
cd $(dirname $0) ; CWD=$(pwd)
PRGNAM=higan
-VERSION=${VERSION:-110}
-BUILD=${BUILD:-1}
+VERSION=${VERSION:-106}
+BUILD=${BUILD:-3}
TAG=${TAG:-_SBo}
PKGTYPE=${PKGTYPE:-tgz}
@@ -62,9 +72,6 @@ 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
@@ -109,12 +116,12 @@ chown -R root:root .
# for its support files if they're not found in ~/.local/share/higan.
patch -p1 -i $CWD/higan-flags.diff
patch -p1 -i $CWD/higan-paths.diff
+# 20240131 KEC: gcc-13.x compatibility
+patch -p1 -i $CWD/includes.diff
# 20181212 bkw: audio system stuff. Upstream doesn't give us a way to
# disable these on the make command line, but hacking this file works:
-HACKFILE=higan/target-higan/GNUmakefile
-
-sed 's|/usr/local/lib/qt5/bin/moc|moc-qt5|' -i hiro/GNUmakefile
+HACKFILE=higan/target-tomoko/GNUmakefile
# Who actually uses OSS?
if [ "${OSS:-no}" = "no" ]; then
@@ -142,13 +149,13 @@ CXXFLAGS="$SLKCFLAGS" \
make -C icarus \
prefix=/usr \
platform=linux \
- hiro=qt5
+ hiro=gtk
CXXFLAGS="$SLKCFLAGS" \
make -C $PRGNAM \
prefix=/usr \
platform=linux \
- hiro=qt5
+ hiro=gtk
mkdir -p $PKG/usr/games \
$PKG/usr/share/applications \
@@ -156,9 +163,20 @@ 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/target-higan/resource/$PRGNAM.desktop $PKG/usr/share/applications/
-install -m 644 $PRGNAM/target-higan/resource/$PRGNAM.png $PKG/usr/share/pixmaps/
-cp -dr $PRGNAM/System/* $PKG/usr/share/$PRGNAM/
+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
@@ -168,8 +186,10 @@ for i in $PRGNAM icarus; do
gzip -9c < $CWD/$i.6 > $PKG/usr/man/man6/$i.6.gz
done
+# Sadly there are no docs in v106. I found a docs/ dir in git, but it's not
+# in the release 7z archive. Apparently this is because the git archive is
+# somehow unofficial...?
mkdir -p $PKG/usr/doc/$PRGNAM-$VERSION
-cp *.md $PKG/usr/doc/$PRGNAM-$VERSION
cat $CWD/$PRGNAM.SlackBuild > $PKG/usr/doc/$PRGNAM-$VERSION/$PRGNAM.SlackBuild
mkdir -p $PKG/install
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 17051ccc54..641ed69c61 100644
--- a/games/higan/higan.info
+++ b/games/higan/higan.info
@@ -1,10 +1,10 @@
PRGNAM="higan"
-VERSION="110"
-HOMEPAGE="https://byuu.org/emulation/higan/"
-DOWNLOAD="https://github.com/higan-emu/higan/archive/v110/higan-110.tar.gz"
-MD5SUM="e2e2073f93b522365579108442af9de4"
+VERSION="106"
+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=""
+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/higan/includes.diff b/games/higan/includes.diff
new file mode 100644
index 0000000000..09b1a5bc2b
--- /dev/null
+++ b/games/higan/includes.diff
@@ -0,0 +1,8 @@
+--- higan-106.orig/nall/arithmetic/natural.hpp 2024-01-31 09:12:37.166634947 +0900
++++ higan-106/nall/arithmetic/natural.hpp 2024-01-31 09:12:58.147526383 +0900
+@@ -1,3 +1,5 @@
++#include <stdexcept>
++
+ #define ConcatenateType(Size) uint##Size##_t
+ #define DeclareType(Size) ConcatenateType(Size)
+
diff --git a/games/hnefatafl/hnefatafl.SlackBuild b/games/hnefatafl/hnefatafl.SlackBuild
index 9dd8e94549..0f0f89e0fa 100644
--- a/games/hnefatafl/hnefatafl.SlackBuild
+++ b/games/hnefatafl/hnefatafl.SlackBuild
@@ -27,7 +27,7 @@ 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
@@ -45,8 +45,8 @@ 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"
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/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 6b85aa885e..11a7c5b304 100644
--- a/games/icebreaker/README
+++ b/games/icebreaker/README
@@ -4,5 +4,7 @@ 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.
-The binary is installed setgid games: not a serious security risk, but
-something to be aware of, if you're paranoid.
+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/icebreaker.SlackBuild b/games/icebreaker/icebreaker.SlackBuild
index 0962874f0e..c9c939155b 100644
--- a/games/icebreaker/icebreaker.SlackBuild
+++ b/games/icebreaker/icebreaker.SlackBuild
@@ -2,10 +2,13 @@
# 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.
@@ -19,8 +22,8 @@
cd $(dirname $0) ; CWD=$(pwd)
PRGNAM=icebreaker
-VERSION=${VERSION:-1.9.7}
-BUILD=${BUILD:-3}
+VERSION=${VERSION:-2.2.1}
+BUILD=${BUILD:-1}
TAG=${TAG:-_SBo}
PKGTYPE=${PKGTYPE:-tgz}
@@ -61,41 +64,57 @@ 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 /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 \
bindir=/usr/games \
- highscoredir=/var/games/$PRGNAM \
OPTIMIZE="$SLKCFLAGS"
strip $PRGNAM
+
make -j1 install \
prefix=$PKG/usr \
mandir=$PKG/usr/man \
- bindir=$PKG/usr/games \
- highscoredir=$PKG/var/games/$PRGNAM
+ bindir=$PKG/usr/games
gzip -9 $PKG/usr/man/man6/$PRGNAM.6
-mkdir -p $PKG/usr/doc/$PRGNAM-$VERSION
-cp ChangeLog LICENSE README README.themes 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 32 48; do
+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}_48.bmp $dir/$PRGNAM.png
+ convert -resize $size ${PRGNAM}_128.png $dir/$PRGNAM.png
done
mkdir -p $PKG/usr/share/pixmaps
diff --git a/games/icebreaker/icebreaker.desktop b/games/icebreaker/icebreaker.desktop
index bbdc6de6da..116f82fd11 100644
--- a/games/icebreaker/icebreaker.desktop
+++ b/games/icebreaker/icebreaker.desktop
@@ -1,7 +1,9 @@
[Desktop Entry]
Name=IceBreaker
-Exec=/usr/games/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/ifm/ifm.SlackBuild b/games/ifm/ifm.SlackBuild
index d96ea9aa3b..32c609df33 100644
--- a/games/ifm/ifm.SlackBuild
+++ b/games/ifm/ifm.SlackBuild
@@ -4,25 +4,27 @@
# 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
-# 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
@@ -32,8 +34,8 @@ 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"
@@ -57,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 \
@@ -73,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
diff --git a/games/img2xterm/img2xterm.SlackBuild b/games/img2xterm/img2xterm.SlackBuild
index d2911a0268..2af35db25d 100644
--- a/games/img2xterm/img2xterm.SlackBuild
+++ b/games/img2xterm/img2xterm.SlackBuild
@@ -2,7 +2,7 @@
# 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.
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/instead/instead.SlackBuild b/games/instead/instead.SlackBuild
index 72b5334f69..815748ffe0 100644
--- a/games/instead/instead.SlackBuild
+++ b/games/instead/instead.SlackBuild
@@ -6,7 +6,7 @@
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}
diff --git a/games/instead/instead.info b/games/instead/instead.info
index 665401a94e..a5ad990a24 100644
--- a/games/instead/instead.info
+++ b/games/instead/instead.info
@@ -1,8 +1,8 @@
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"
diff --git a/games/ioquake3/ioquake3.SlackBuild b/games/ioquake3/ioquake3.SlackBuild
index 8ef8896f5f..d9f4c75c51 100644
--- a/games/ioquake3/ioquake3.SlackBuild
+++ b/games/ioquake3/ioquake3.SlackBuild
@@ -25,7 +25,7 @@
cd $(dirname $0) ; CWD=$(pwd)
PRGNAM=ioquake3
-VERSION=${VERSION:-1.36_05180e3}
+VERSION=${VERSION:-1.36_70d07d9}
BUILD=${BUILD:-1}
TAG=${TAG:-_SBo}
PKGTYPE=${PKGTYPE:-tgz}
diff --git a/games/ioquake3/ioquake3.info b/games/ioquake3/ioquake3.info
index 1f62913319..34a1fd1a0a 100644
--- a/games/ioquake3/ioquake3.info
+++ b/games/ioquake3/ioquake3.info
@@ -1,9 +1,9 @@
PRGNAM="ioquake3"
-VERSION="1.36_05180e3"
+VERSION="1.36_70d07d9"
HOMEPAGE="https://ioquake3.org/"
-DOWNLOAD="https://www.dropbox.com/s/k84alghs7f6urwg/ioquake3-1.36_05180e3.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="c85b8539dc99d05c9650dbda3f65f6f0 \
+MD5SUM="211357efe03602500bb6568f28a2bb54 \
c71fdddccb20e8fc393d846e9c61d685"
DOWNLOAD_x86_64=""
MD5SUM_x86_64=""
diff --git a/games/javacpc/javacpc.SlackBuild b/games/javacpc/javacpc.SlackBuild
index 1e4f148a73..2d730241e6 100644
--- a/games/javacpc/javacpc.SlackBuild
+++ b/games/javacpc/javacpc.SlackBuild
@@ -2,7 +2,7 @@
# 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
@@ -26,7 +26,7 @@ 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}
@@ -85,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
@@ -98,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
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/jezzball-kazzmir.SlackBuild b/games/jezzball-kazzmir/jezzball-kazzmir.SlackBuild
index 5de311229d..4e3840af0f 100644
--- a/games/jezzball-kazzmir/jezzball-kazzmir.SlackBuild
+++ b/games/jezzball-kazzmir/jezzball-kazzmir.SlackBuild
@@ -2,7 +2,7 @@
# 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.
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/jfsw/README b/games/jfsw/README
index 3dbf282d0a..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,10 +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.
+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.
@@ -33,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/jfsw.desktop b/games/jfsw/desktop/jfsw.desktop
index 39fa3cba51..2ec32e83d0 100644
--- a/games/jfsw/jfsw.desktop
+++ b/games/jfsw/desktop/jfsw.desktop
@@ -1,7 +1,7 @@
[Desktop Entry]
Name=JFShadowWarrior
Icon=jfsw
-Exec=/usr/games/sw
+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 60820b2643..76891e34b8 100644
--- a/games/jfsw/jfsw.SlackBuild
+++ b/games/jfsw/jfsw.SlackBuild
@@ -2,11 +2,24 @@
# 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,24 +36,11 @@
# - 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}
@@ -52,9 +52,6 @@ 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
@@ -80,135 +77,109 @@ 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
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 cf0cb37dd8..082c20f498 100644
--- a/games/jfsw_demo_data/jfsw_demo_data.SlackBuild
+++ b/games/jfsw_demo_data/jfsw_demo_data.SlackBuild
@@ -2,10 +2,18 @@
# 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.
@@ -15,13 +23,10 @@ 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 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
@@ -33,32 +38,26 @@ 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
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 31798e3ce8..ff3a9f2582 100644
--- a/games/jfsw_hires_pack/jfsw_hires_pack.SlackBuild
+++ b/games/jfsw_hires_pack/jfsw_hires_pack.SlackBuild
@@ -2,22 +2,26 @@
# 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 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
@@ -27,34 +31,31 @@ 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
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 ee2335e04f..04dbe21d91 100644
--- a/games/jfsw_registered_data/jfsw_registered_data.SlackBuild
+++ b/games/jfsw_registered_data/jfsw_registered_data.SlackBuild
@@ -2,7 +2,7 @@
# 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,6 +10,11 @@
# 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
@@ -19,7 +24,7 @@ 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}
@@ -30,9 +35,7 @@ ZIPNAME1="$SRCNAM.zip"
ZIPNAME2="Shadow%20Warrior%20%28USA%29.zip"
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
@@ -62,36 +65,26 @@ 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
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 59d8cc8223..6ffcb13d7a 100644
--- a/games/jfsw_twin_dragon/jfsw_twin_dragon.SlackBuild
+++ b/games/jfsw_twin_dragon/jfsw_twin_dragon.SlackBuild
@@ -2,7 +2,7 @@
# 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.
@@ -16,9 +16,6 @@ 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
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 da7819c618..b0cddcd0aa 100644
--- a/games/jfsw_wanton_destruction/jfsw_wanton_destruction.SlackBuild
+++ b/games/jfsw_wanton_destruction/jfsw_wanton_destruction.SlackBuild
@@ -2,7 +2,7 @@
# 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.
@@ -27,9 +27,6 @@ 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
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/gens-gs/slack-desc b/games/jg-cega/slack-desc
index d1aa3e53f0..fb2262abdb 100644
--- a/games/gens-gs/slack-desc
+++ b/games/jg-cega/slack-desc
@@ -6,14 +6,14 @@
# 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:
+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/bloodcm/slack-desc b/games/jg-mgba/slack-desc
index ca7591a158..34afb2fb51 100644
--- a/games/bloodcm/slack-desc
+++ b/games/jg-mgba/slack-desc
@@ -6,14 +6,14 @@
# 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.
+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 65cf59a06b..8b8beb086b 100644
--- a/games/jin/jin.SlackBuild
+++ b/games/jin/jin.SlackBuild
@@ -1,4 +1,4 @@
-#!/bin/bash
+#!/bin/bash -e
# Slackware build script for jin
#
@@ -27,8 +27,6 @@
# 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
@@ -40,9 +38,6 @@ PKGTYPE=${PKGTYPE:-tgz}
# Independent of architecture so will throw it into /opt
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
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 6f73e37c5b..7db13058b2 100644
--- a/games/jzintv/README
+++ b/games/jzintv/README
@@ -4,5 +4,5 @@ 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. See README_ROMs.txt for
-details on the ROM images and how to include them in the package.
+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/README_ROMs.txt b/games/jzintv/README_ROMs.txt
deleted file mode 100644
index 93edd8db9b..0000000000
--- a/games/jzintv/README_ROMs.txt
+++ /dev/null
@@ -1,50 +0,0 @@
-TL;DR version: if you want the ROMs to be included in the package,
-find the file "intv.zip" (and optionally "intv_ecs.zip") somewhere on
-the internet and place it in the SlackBuild directory, before running
-the script.
-
-Long version:
-
-By default, 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 MAME/MESS emulator.
-
-For the Intellivision console, there are 2 ROM images, usually
-found in a file called "intv.zip". Contents:
-
-exec.bin, 8192 bytes, md5sum 62e761035cb657903761800f4437b8af
-grom.bin, 2048 bytes, md5sum 0cd5946c6473e42e8e4c2137785e427f
-
-If you also want to emulate the Computer Module (aka the Entertainment
-Computer System), you'll also need its ROM, usually found in a file
-called "intv_ecs.zip". Contents:
-
-ecs.bin, 24576 bytes, md5sum 2e72a9a2b897d330a35c8b07a6146c52
-
-*or*, split into 3 files:
-
-ecs_rom.20, 8192 bytes, md5sum 52f0bbbaff9ca21e619eb0ad5d85f9fb
-ecs_rom.70, 8192 bytes, md5sum 83efe70ebb42e3ded46ac76d851838a0
-ecs_rom.e0, 8192 bytes, md5sum ee2d7856f667ed66430be88871d86c39
-
-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.
-
-If you want to include the ROM images in the package, place either
-the zip file(s) (intv.zip, and intv_ecs.zip if you need it) or the
-unzipped contents in the SlackBuild directory... or if you have them
-installed already in a previous jzintv package, or if you have them in
-/usr/share/games/mame/roms, the script will find them there also. You
-can also export JZINTV_ROM_PATH in the environment, to find the ROMs
-there.
-
-If you'd rather install the ROMs manually: build the package without
-them, install it, then copy them to /usr/share/games/jzintv/rom. If
-your ECS ROM is split into 3 files, join them with a command like:
-
-cat ecs_rom.20 ecs_rom.70 ecs_rom.e0 > ecs.bin
-
-jzintv looks for the .bin files, not the .zip file(s).
diff --git a/games/jzintv/jzintv.SlackBuild b/games/jzintv/jzintv.SlackBuild
index 2bd23bf867..b830b3b65c 100644
--- a/games/jzintv/jzintv.SlackBuild
+++ b/games/jzintv/jzintv.SlackBuild
@@ -2,10 +2,14 @@
# 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.
@@ -17,7 +21,7 @@ cd $(dirname $0) ; CWD=$(pwd)
PRGNAM=jzintv
VERSION=${VERSION:-r1025}
-BUILD=${BUILD:-2}
+BUILD=${BUILD:-3}
TAG=${TAG:-_SBo}
PKGTYPE=${PKGTYPE:-tgz}
@@ -61,8 +65,8 @@ rm -rf $PRGNAM-$VERSION
tar xvf $CWD/$PRGNAM-$VERSION.tar.?z*
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 {} \+
+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.
@@ -110,10 +114,12 @@ 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
sed "14s/:/: $ROMS/" $CWD/slack-desc > $PKG/install/slack-desc
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/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 50148083d8..ee2d759cdf 100644
--- a/games/kardsgt/kardsgt.SlackBuild
+++ b/games/kardsgt/kardsgt.SlackBuild
@@ -2,15 +2,25 @@
# 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}
@@ -22,9 +32,6 @@ 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
@@ -50,6 +57,8 @@ fi
set -e
+source /etc/profile.d/qt4.sh
+
rm -rf $PKG
mkdir -p $TMP $PKG $OUTPUT
cd $TMP
@@ -57,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 \
@@ -82,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
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 f89ee4cc9e..6c06daed5a 100644
--- a/games/kildclient/kildclient.SlackBuild
+++ b/games/kildclient/kildclient.SlackBuild
@@ -27,14 +27,14 @@
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
@@ -52,8 +52,8 @@ 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"
@@ -81,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 \
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/koules/koules.SlackBuild b/games/koules/koules.SlackBuild
index bad144a18b..e02b060475 100644
--- a/games/koules/koules.SlackBuild
+++ b/games/koules/koules.SlackBuild
@@ -2,7 +2,7 @@
# 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,13 +10,17 @@
# 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:-3}
+BUILD=${BUILD:-4}
TAG=${TAG:-_SBo}
PKGTYPE=${PKGTYPE:-tgz}
@@ -81,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
@@ -90,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
diff --git a/games/koules/koules.info b/games/koules/koules.info
index cbd2e26131..dca04116ce 100644
--- a/games/koules/koules.info
+++ b/games/koules/koules.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/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 0873f9c9b3..2f028fb312 100644
--- a/games/koules/slack-desc
+++ b/games/koules/slack-desc
@@ -17,4 +17,3 @@ koules: an original idea. First version of Koules was developed from
koules: scratch by Jan Hubicka in July 1995.
koules:
koules:
-koules:
diff --git a/games/larn/larn.SlackBuild b/games/larn/larn.SlackBuild
index 4e844eff63..722dc3a9f5 100644
--- a/games/larn/larn.SlackBuild
+++ b/games/larn/larn.SlackBuild
@@ -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.
+# 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}
@@ -38,9 +48,6 @@ 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
@@ -71,28 +78,32 @@ 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
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/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/wmquake/wmquake.SlackBuild b/games/lbreakouthd/lbreakouthd.SlackBuild
index c9cdeffb5d..99f74b7cf2 100644
--- a/games/wmquake/wmquake.SlackBuild
+++ b/games/lbreakouthd/lbreakouthd.SlackBuild
@@ -1,13 +1,10 @@
#!/bin/bash
-# Slackware build script for wmquake
-#
-# Copyright 2015 Gethyn ThomasQuail <email removed>
+# Slackware build script for lbreakouthd
+
+# Copyright 2023-2024 Johannes Schoepfer, Germany
# 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:
#
@@ -25,23 +22,11 @@
# 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
-
cd $(dirname $0) ; CWD=$(pwd)
-PRGNAM=wmquake
-VERSION=${VERSION:-1.1}
-BUILD=${BUILD:-2}
+PRGNAM=lbreakouthd
+VERSION=${VERSION:-1.1.7}
+BUILD=${BUILD:-1}
TAG=${TAG:-_SBo}
PKGTYPE=${PKGTYPE:-tgz}
@@ -53,9 +38,6 @@ 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
@@ -74,21 +56,9 @@ elif [ "$ARCH" = "i686" ]; then
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
@@ -102,22 +72,29 @@ 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 CFLAGS="$SLKCFLAGS"
+CFLAGS="$SLKCFLAGS" \
+./configure \
+ --prefix=/usr \
+ --libdir=/usr/lib${LIBDIRSUFFIX} \
+ --sysconfdir=/etc \
+ --localstatedir=/var/lib/lgames \
+ --build=$ARCH-slackware-linux
-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
+make
+make install-strip DESTDIR=$PKG
mkdir -p $PKG/usr/doc/$PRGNAM-$VERSION
-cp -a README.* $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 78c1063579..23ac536b3f 100644
--- a/games/lgogdownloader/lgogdownloader.SlackBuild
+++ b/games/lgogdownloader/lgogdownloader.SlackBuild
@@ -28,22 +28,19 @@
cd $(dirname $0) ; CWD=$(pwd)
PRGNAM=lgogdownloader
-VERSION=${VERSION:-3.8}
+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
-# 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
@@ -53,8 +50,8 @@ 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,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=""
@@ -91,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
@@ -101,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
diff --git a/games/lgogdownloader/lgogdownloader.info b/games/lgogdownloader/lgogdownloader.info
index 74e2933b09..8045dabb70 100644
--- a/games/lgogdownloader/lgogdownloader.info
+++ b/games/lgogdownloader/lgogdownloader.info
@@ -1,8 +1,8 @@
PRGNAM="lgogdownloader"
-VERSION="3.8"
+VERSION="3.12"
HOMEPAGE="https://sites.google.com/site/gogdownloader/home/"
-DOWNLOAD="https://sites.google.com/site/gogdownloader/lgogdownloader-3.8.tar.gz"
-MD5SUM="f684d8641f68550b14ab7f0f43cbf0f9"
+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 rhash tinyxml2"
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 7733e72460..2405857084 100644
--- a/games/lincity-ng/lincity-ng.SlackBuild
+++ b/games/lincity-ng/lincity-ng.SlackBuild
@@ -14,7 +14,7 @@ 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
@@ -32,8 +32,8 @@ 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"
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 14b78e0112..b2090469ea 100644
--- a/games/liquidwar6/liquidwar6.SlackBuild
+++ b/games/liquidwar6/liquidwar6.SlackBuild
@@ -2,20 +2,29 @@
# 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
@@ -26,9 +35,6 @@ 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
@@ -60,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} \
@@ -87,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/*
@@ -110,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
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/lmarbles.SlackBuild b/games/lmarbles/lmarbles.SlackBuild
index 535ff4e8ea..0d9de0c265 100644
--- a/games/lmarbles/lmarbles.SlackBuild
+++ b/games/lmarbles/lmarbles.SlackBuild
@@ -2,7 +2,7 @@
# 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.
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/lmpc/lmpc.info b/games/lmpc/lmpc.info
index d5014ea5dd..645cd2343f 100644
--- a/games/lmpc/lmpc.info
+++ b/games/lmpc/lmpc.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/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 73ddf9f8b9..da2c7c69d8 100644
--- a/games/lutris/lutris.SlackBuild
+++ b/games/lutris/lutris.SlackBuild
@@ -3,7 +3,7 @@
# 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
@@ -26,7 +26,7 @@
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}
@@ -35,23 +35,38 @@ if [ -z "$ARCH" ]; then
case "$( uname -m )" in
i?86) ARCH=i586 ;;
arm*) ARCH=arm ;;
+ aarch64) ARCH=$( uname -m ) ;;
*) 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=${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
@@ -59,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 \
@@ -68,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
diff --git a/games/lutris/lutris.info b/games/lutris/lutris.info
index 909d77969a..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="python3-PyYAML"
-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/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 16248d4ad1..3aa7ff6414 100644
--- a/games/m64py/m64py.SlackBuild
+++ b/games/m64py/m64py.SlackBuild
@@ -26,7 +26,7 @@ cd $(dirname $0) ; CWD=$(pwd)
PRGNAM=m64py
VERSION=${VERSION:-0.2.5}
-BUILD=${BUILD:-1}
+BUILD=${BUILD:-2}
TAG=${TAG:-_SBo}
PKGTYPE=${PKGTYPE:-tgz}
@@ -34,14 +34,10 @@ if [ -z "$ARCH" ]; then
case "$( uname -m )" in
i?86) ARCH=i586 ;;
arm*) ARCH=arm ;;
- # Unless $ARCH is already set, use uname -m for all other archs:
*) 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
@@ -80,6 +76,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 -p0 < $CWD/fix_setup_py.patch
+patch -p1 < $CWD/fix_core_dump_by_int_cast.patch
+
python3 setup.py install --root=$PKG
find $PKG -print0 | xargs -0 file | grep -e "executable" -e "shared object" | grep ELF \
diff --git a/games/madbomber/madbomber.SlackBuild b/games/madbomber/madbomber.SlackBuild
index 09bbfc84b5..c67bb08a74 100644
--- a/games/madbomber/madbomber.SlackBuild
+++ b/games/madbomber/madbomber.SlackBuild
@@ -2,7 +2,7 @@
# 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.
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.SlackBuild b/games/maelstrom/maelstrom.SlackBuild
index 50dab5c12e..88cddc94c8 100644
--- a/games/maelstrom/maelstrom.SlackBuild
+++ b/games/maelstrom/maelstrom.SlackBuild
@@ -2,7 +2,7 @@
# 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.
diff --git a/games/maelstrom/maelstrom.info b/games/maelstrom/maelstrom.info
index 513868512e..dca67703d6 100644
--- a/games/maelstrom/maelstrom.info
+++ b/games/maelstrom/maelstrom.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_addon_package.pl b/games/maelstrom/maelstrom_addon_package.pl
index e376a1e0a3..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
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 417c44ae37..3526c37b91 100644
--- a/games/mame/mame.SlackBuild
+++ b/games/mame/mame.SlackBuild
@@ -2,13 +2,32 @@
# 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:
@@ -29,7 +48,7 @@
cd $(dirname $0) ; CWD=$(pwd)
PRGNAM=mame
-VERSION=${VERSION:-0.214}
+VERSION=${VERSION:-0.264}
BUILD=${BUILD:-1}
TAG=${TAG:-_SBo}
PKGTYPE=${PKGTYPE:-tgz}
@@ -42,32 +61,25 @@ 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
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/
@@ -90,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
@@ -104,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
@@ -122,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=""
@@ -164,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:
@@ -198,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.
@@ -230,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
@@ -255,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 support stuff.
+cp -a artwork bgfx plugins samples hash ctrlr $SHAREDIR
-# Install the artwork and bgfx stuff (needed for 'video bgfx' in mame.ini).
-cp -a artwork bgfx $PKG/usr/share/games/$PRGNAM
+# 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.," \
diff --git a/games/mame/mame.info b/games/mame/mame.info
index 036e368391..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=""
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 39d69694d1..f3e1d7a1d5 100644
--- a/games/mame2000-libretro/mame2000-libretro.SlackBuild
+++ b/games/mame2000-libretro/mame2000-libretro.SlackBuild
@@ -3,7 +3,7 @@
# 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
@@ -27,7 +27,8 @@ 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}
@@ -60,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 \
@@ -74,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 \
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 5f2d4a2032..3e3ce9247d 100644
--- a/games/manaplus/manaplus.SlackBuild
+++ b/games/manaplus/manaplus.SlackBuild
@@ -1,6 +1,6 @@
#!/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
@@ -23,7 +23,7 @@
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}
@@ -68,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 . \
@@ -99,6 +99,12 @@ 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
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 b65c8889d6..62e98df78b 100644
--- a/games/mangband/mangband.SlackBuild
+++ b/games/mangband/mangband.SlackBuild
@@ -22,6 +22,8 @@
# 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
@@ -40,9 +42,6 @@ fi
set -e
-# 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
@@ -75,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 \
@@ -91,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
diff --git a/games/marathon-data/marathon-data.SlackBuild b/games/marathon-data/marathon-data.SlackBuild
index 1c845c406a..2177b66938 100644
--- a/games/marathon-data/marathon-data.SlackBuild
+++ b/games/marathon-data/marathon-data.SlackBuild
@@ -2,16 +2,20 @@
# 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:-20210408}
+VERSION=${VERSION:-20240119}
BUILD=${BUILD:-1}
TAG=${TAG:-_SBo}
PKGTYPE=${PKGTYPE:-tgz}
diff --git a/games/marathon-data/marathon-data.info b/games/marathon-data/marathon-data.info
index 0ee3f37620..cd4a68e4f0 100644
--- a/games/marathon-data/marathon-data.info
+++ b/games/marathon-data/marathon-data.info
@@ -1,10 +1,10 @@
PRGNAM="marathon-data"
-VERSION="20210408"
+VERSION="20240119"
HOMEPAGE="https://alephone.lhowon.org/"
-DOWNLOAD="https://github.com/Aleph-One-Marathon/alephone/releases/download/release-20210408/Marathon-20210408-Data.zip"
-MD5SUM="f3d4b264147eb497534ddb05671a34ac"
+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-infinity-data/marathon-infinity-data.SlackBuild b/games/marathon-infinity-data/marathon-infinity-data.SlackBuild
index 7f181085e0..bd1cb15bf6 100644
--- a/games/marathon-infinity-data/marathon-infinity-data.SlackBuild
+++ b/games/marathon-infinity-data/marathon-infinity-data.SlackBuild
@@ -2,16 +2,20 @@
# 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:-20210408}
+VERSION=${VERSION:-20240119}
BUILD=${BUILD:-1}
TAG=${TAG:-_SBo}
PKGTYPE=${PKGTYPE:-tgz}
diff --git a/games/marathon-infinity-data/marathon-infinity-data.info b/games/marathon-infinity-data/marathon-infinity-data.info
index b6acef6831..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="20210408"
+VERSION="20240119"
HOMEPAGE="https://alephone.lhowon.org/"
-DOWNLOAD="https://github.com/Aleph-One-Marathon/alephone/releases/download/release-20210408/MarathonInfinity-20210408-Data.zip"
-MD5SUM="65f37366d47935c8041012af1fd945bd"
+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/marathon2-data/marathon2-data.SlackBuild b/games/marathon2-data/marathon2-data.SlackBuild
index 933722331c..0d137a4497 100644
--- a/games/marathon2-data/marathon2-data.SlackBuild
+++ b/games/marathon2-data/marathon2-data.SlackBuild
@@ -2,16 +2,20 @@
# 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:-20210408}
+VERSION=${VERSION:-20240119}
BUILD=${BUILD:-1}
TAG=${TAG:-_SBo}
PKGTYPE=${PKGTYPE:-tgz}
diff --git a/games/marathon2-data/marathon2-data.info b/games/marathon2-data/marathon2-data.info
index c065de8f71..707a68b4bb 100644
--- a/games/marathon2-data/marathon2-data.info
+++ b/games/marathon2-data/marathon2-data.info
@@ -1,10 +1,10 @@
PRGNAM="marathon2-data"
-VERSION="20210408"
+VERSION="20240119"
HOMEPAGE="https://alephone.lhowon.org/"
-DOWNLOAD="https://github.com/Aleph-One-Marathon/alephone/releases/download/release-20210408/Marathon2-20210408-Data.zip"
-MD5SUM="7b79ee9b56205627c82f4e2e8b8a8004"
+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/mari0.SlackBuild b/games/mari0/mari0.SlackBuild
index 54ded2084d..ef1fab57c7 100644
--- a/games/mari0/mari0.SlackBuild
+++ b/games/mari0/mari0.SlackBuild
@@ -2,7 +2,7 @@
# 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.
diff --git a/games/mari0/mari0.info b/games/mari0/mari0.info
index a76ba3cca6..c9cb20dd0d 100644
--- a/games/mari0/mari0.info
+++ b/games/mari0/mari0.info
@@ -7,4 +7,4 @@ 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 817c37b895..26e8022862 100644
--- a/games/mars/mars.SlackBuild
+++ b/games/mars/mars.SlackBuild
@@ -22,6 +22,8 @@
# 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
@@ -41,9 +43,6 @@ 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
@@ -69,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
@@ -99,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
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 427baa241d..63fa730469 100644
--- a/games/mednafen/mednafen.SlackBuild
+++ b/games/mednafen/mednafen.SlackBuild
@@ -1,9 +1,10 @@
#!/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
@@ -26,7 +27,7 @@
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}
@@ -39,9 +40,6 @@ 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
@@ -76,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 \
@@ -106,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 \
@@ -130,7 +113,6 @@ CXXFLAGS="$SLKCFLAGS" \
--sysconfdir=/etc \
--localstatedir=/var \
--mandir=/usr/man \
- --disable-debugger \
--with-external-lzo \
--build=$ARCH-slackware-linux
@@ -138,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.*
diff --git a/games/mednafen/mednafen.info b/games/mednafen/mednafen.info
index 4da4413732..88ad3717d2 100644
--- a/games/mednafen/mednafen.info
+++ b/games/mednafen/mednafen.info
@@ -1,8 +1,8 @@
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=""
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/mednaffe.SlackBuild b/games/mednaffe/mednaffe.SlackBuild
index c9909b8023..ba04dc1fe8 100644
--- a/games/mednaffe/mednaffe.SlackBuild
+++ b/games/mednaffe/mednaffe.SlackBuild
@@ -2,10 +2,12 @@
# 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.
@@ -15,8 +17,8 @@
cd $(dirname $0) ; CWD=$(pwd)
PRGNAM=mednaffe
-VERSION=${VERSION:-0.9.1}
-BUILD=${BUILD:-2}
+VERSION=${VERSION:-0.9.2}
+BUILD=${BUILD:-1}
TAG=${TAG:-_SBo}
PKGTYPE=${PKGTYPE:-tgz}
diff --git a/games/mednaffe/mednaffe.info b/games/mednaffe/mednaffe.info
index 280e2cc7c2..c5af3f1a0a 100644
--- a/games/mednaffe/mednaffe.info
+++ b/games/mednaffe/mednaffe.info
@@ -1,10 +1,10 @@
PRGNAM="mednaffe"
-VERSION="0.9.1"
+VERSION="0.9.2"
HOMEPAGE="https://github.com/AmatCoder/mednaffe"
-DOWNLOAD="https://github.com/AmatCoder/mednaffe/releases/download/0.9.1/mednaffe-0.9.1.tar.gz"
-MD5SUM="45e094397c227fc018a1e0f758fd139b"
+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/megaglest/megaglest.SlackBuild b/games/megaglest/megaglest.SlackBuild
index 3401809f47..b1797cf35b 100644
--- a/games/megaglest/megaglest.SlackBuild
+++ b/games/megaglest/megaglest.SlackBuild
@@ -22,6 +22,8 @@
# 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.
@@ -87,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.
@@ -98,6 +106,8 @@ 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" \
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 063b32c654..96e96f64c0 100644
--- a/games/megamario/megamario.SlackBuild
+++ b/games/megamario/megamario.SlackBuild
@@ -2,10 +2,12 @@
# 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).
@@ -14,7 +16,7 @@ cd $(dirname $0) ; CWD=$(pwd)
PRGNAM=megamario
VERSION=${VERSION:-1.7}
-BUILD=${BUILD:-2}
+BUILD=${BUILD:-3}
TAG=${TAG:-_SBo}
PKGTYPE=${PKGTYPE:-tgz}
diff --git a/games/megamario/megamario.info b/games/megamario/megamario.info
index 0b994fe04e..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"
+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/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/sumwars/slack-desc b/games/melonds/slack-desc
index 8541ece536..8d83245dce 100644
--- a/games/sumwars/slack-desc
+++ b/games/melonds/slack-desc
@@ -6,14 +6,14 @@
# 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:
+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/wmquake/slack-desc b/games/mesen-x/slack-desc
index aad346111e..d83db9b130 100644
--- a/games/wmquake/slack-desc
+++ b/games/mesen-x/slack-desc
@@ -6,14 +6,14 @@
# 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:
+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 ed84ef1478..d25268bb66 100644
--- a/games/mfe/mfe.SlackBuild
+++ b/games/mfe/mfe.SlackBuild
@@ -14,7 +14,7 @@ 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
@@ -32,8 +32,8 @@ 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
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 dc193bba63..21b682123d 100644
--- a/games/mgba/mgba.SlackBuild
+++ b/games/mgba/mgba.SlackBuild
@@ -3,7 +3,7 @@
# Slackware build script for mgba
# Copyright 2015 Dugan Chen Canada
-# Copyright 2019-2021 Ruoh-Shoei LIN
+# Copyright 2019-2022 Ruoh-Shoei LIN
# All rights reserved.
#
# Redistribution and use of this script, with or without modification, is
@@ -26,7 +26,7 @@
cd $(dirname $0) ; CWD=$(pwd)
PRGNAM=mgba
-VERSION=${VERSION:-0.9.0}
+VERSION=${VERSION:-0.10.2}
BUILD=${BUILD:-1}
TAG=${TAG:-_SBo}
PKGTYPE=${PKGTYPE:-tgz}
@@ -51,9 +51,6 @@ 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=""
@@ -94,6 +91,8 @@ cd build
-DCMAKE_INSTALL_LIBDIR:PATH=lib$LIBDIRSUFFIX \
-DMANDIR=man \
-DUSE_DISCORD_RPC=OFF \
+ -DENABLE_SCRIPTING=OFF \
+ -DBUILD_UPDATER=OFF \
-DBUILD_QT=${QT:-on} \
-DCMAKE_BUILD_TYPE=Release ..
make
diff --git a/games/mgba/mgba.info b/games/mgba/mgba.info
index 8fac518ec0..ffdda4c9f4 100644
--- a/games/mgba/mgba.info
+++ b/games/mgba/mgba.info
@@ -1,8 +1,8 @@
PRGNAM="mgba"
-VERSION="0.9.0"
+VERSION="0.10.2"
HOMEPAGE="https://mgba.io/"
-DOWNLOAD="https://github.com/mgba-emu/mgba/archive/0.9.0/mgba-0.9.0.tar.gz"
-MD5SUM="8ec54054bf7270d78dab0eb0090626ed"
+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=""
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 8c05a6f5e5..bd09100122 100644
--- a/games/micropolis/micropolis.SlackBuild
+++ b/games/micropolis/micropolis.SlackBuild
@@ -2,7 +2,7 @@
# 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 <email removed>
@@ -25,13 +25,14 @@
# 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:-4}
+BUILD=${BUILD:-5}
TAG=${TAG:-_SBo}
PKGTYPE=${PKGTYPE:-tgz}
diff --git a/games/micropolis/micropolis.info b/games/micropolis/micropolis.info
index dd4282ae9f..421105662d 100644
--- a/games/micropolis/micropolis.info
+++ b/games/micropolis/micropolis.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/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/vcmi-core/slack-desc b/games/minecraft/slack-desc
index 0d6d4aff82..ee518b9b2e 100644
--- a/games/vcmi-core/slack-desc
+++ b/games/minecraft/slack-desc
@@ -6,14 +6,14 @@
# 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:
+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/gcc11.patch b/games/minetest/gcc11.patch
deleted file mode 100644
index bb37cdf31e..0000000000
--- a/games/minetest/gcc11.patch
+++ /dev/null
@@ -1,21 +0,0 @@
-From 7c2826cbc0f36027d4a9781f433150d1c5d0d03f Mon Sep 17 00:00:00 2001
-From: lhofhansl <larsh@apache.org>
-Date: Thu, 6 May 2021 10:24:30 -0700
-Subject: [PATCH] Fix build for newer versions of GCC (#11246)
-
----
- src/clientiface.h | 1 +
- 1 file changed, 1 insertion(+)
-
-diff --git a/src/clientiface.h b/src/clientiface.h
-index cc5292b71bf9..dfd97674137c 100644
---- a/src/clientiface.h
-+++ b/src/clientiface.h
-@@ -31,6 +31,7 @@ with this program; if not, write to the Free Software Foundation, Inc.,
- #include <list>
- #include <vector>
- #include <set>
-+#include <memory>
- #include <mutex>
-
- class MapBlock;
diff --git a/games/minetest/minetest.SlackBuild b/games/minetest/minetest.SlackBuild
index 4563795705..cbccd8ebd2 100644
--- a/games/minetest/minetest.SlackBuild
+++ b/games/minetest/minetest.SlackBuild
@@ -2,7 +2,7 @@
# 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
@@ -25,7 +25,7 @@
cd $(dirname $0) ; CWD=$(pwd)
PRGNAM=minetest
-VERSION=${VERSION:-5.4.1}
+VERSION=${VERSION:-5.8.0}
BUILD=${BUILD:-1}
TAG=${TAG:-_SBo}
PKGTYPE=${PKGTYPE:-tgz}
@@ -79,8 +79,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 {} \;
-patch -p1 < $CWD/gcc11.patch
-
# Fix man page path
sed -i "s/share\/man/man/" CMakeLists.txt
diff --git a/games/minetest/minetest.info b/games/minetest/minetest.info
index 6aaa220910..2278eebd83 100644
--- a/games/minetest/minetest.info
+++ b/games/minetest/minetest.info
@@ -1,10 +1,10 @@
PRGNAM="minetest"
-VERSION="5.4.1"
+VERSION="5.8.0"
HOMEPAGE="http://minetest.net/"
-DOWNLOAD="https://github.com/minetest/minetest/archive/5.4.1/minetest-5.4.1.tar.gz"
-MD5SUM="1814139a9b82aa07ad89867095224b4d"
+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="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 231a42634f..2510bb3225 100644
--- a/games/minetest_game/minetest_game.SlackBuild
+++ b/games/minetest_game/minetest_game.SlackBuild
@@ -2,7 +2,7 @@
# 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
@@ -25,8 +25,8 @@
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}
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/mininim.SlackBuild b/games/mininim/mininim.SlackBuild
index 5009da6161..7854b43ee9 100644
--- a/games/mininim/mininim.SlackBuild
+++ b/games/mininim/mininim.SlackBuild
@@ -2,10 +2,24 @@
# 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.
diff --git a/games/mininim/mininim.info b/games/mininim/mininim.info
index e5304777db..62996ca361 100644
--- a/games/mininim/mininim.info
+++ b/games/mininim/mininim.info
@@ -7,4 +7,4 @@ DOWNLOAD_x86_64=""
MD5SUM_x86_64=""
REQUIRES="gnulib allegro"
MAINTAINER="B. Watson"
-EMAIL="yalhcru@gmail.com"
+EMAIL="urchlay@slackware.uk"
diff --git a/games/miscom/miscom.SlackBuild b/games/miscom/miscom.SlackBuild
index 22f579d200..a337173058 100644
--- a/games/miscom/miscom.SlackBuild
+++ b/games/miscom/miscom.SlackBuild
@@ -2,7 +2,7 @@
# 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.
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.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 9508e02d00..6bc1d6a87b 100644
--- a/games/moon-buggy/moon-buggy.SlackBuild
+++ b/games/moon-buggy/moon-buggy.SlackBuild
@@ -35,7 +35,7 @@ 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
@@ -53,8 +53,8 @@ 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"
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 94864b1d4a..3b4d4f1c46 100644
--- a/games/mrboom/mrboom.SlackBuild
+++ b/games/mrboom/mrboom.SlackBuild
@@ -2,7 +2,7 @@
# 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
@@ -25,13 +25,12 @@
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
@@ -41,9 +40,6 @@ 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
@@ -62,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=""
@@ -78,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 \
diff --git a/games/mrboom/mrboom.info b/games/mrboom/mrboom.info
index 213abf9023..c6bd0c2a97 100644
--- a/games/mrboom/mrboom.info
+++ b/games/mrboom/mrboom.info
@@ -1,10 +1,8 @@
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 libminizip"
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/mrrescue.SlackBuild b/games/mrrescue/mrrescue.SlackBuild
index 6e39e2760e..7803da1cbf 100644
--- a/games/mrrescue/mrrescue.SlackBuild
+++ b/games/mrrescue/mrrescue.SlackBuild
@@ -2,7 +2,7 @@
# 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.
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/nFlood/nFlood.SlackBuild b/games/nFlood/nFlood.SlackBuild
index b1130d02a3..e5613bc8b0 100644
--- a/games/nFlood/nFlood.SlackBuild
+++ b/games/nFlood/nFlood.SlackBuild
@@ -22,6 +22,11 @@
# 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
@@ -38,9 +43,6 @@ 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
@@ -75,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
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/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 eacd4496c3..a19a38bdbe 100644
--- a/games/naev/naev.SlackBuild
+++ b/games/naev/naev.SlackBuild
@@ -21,11 +21,16 @@
# 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}
@@ -37,9 +42,6 @@ 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
@@ -71,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 \
@@ -92,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 \
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 18c361cc61..9a104127d4 100644
--- a/games/nblood/nblood.SlackBuild
+++ b/games/nblood/nblood.SlackBuild
@@ -2,7 +2,7 @@
# 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,15 @@
# 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}
@@ -29,9 +34,6 @@ 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
@@ -65,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
@@ -116,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
diff --git a/games/nblood/nblood.info b/games/nblood/nblood.info
index d00dc5855e..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=""
MAINTAINER="B. Watson"
-EMAIL="yalhcru@gmail.com"
+EMAIL="urchlay@slackware.uk"
diff --git a/games/ncursesoflife/ncursesoflife.SlackBuild b/games/ncursesoflife/ncursesoflife.SlackBuild
index b562303cbb..3b309dc5d3 100644
--- a/games/ncursesoflife/ncursesoflife.SlackBuild
+++ b/games/ncursesoflife/ncursesoflife.SlackBuild
@@ -2,7 +2,7 @@
# 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.
@@ -22,9 +22,6 @@ 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
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 9839bc4696..64ee868f93 100644
--- a/games/nestopia/nestopia.SlackBuild
+++ b/games/nestopia/nestopia.SlackBuild
@@ -3,13 +3,37 @@
# 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}
@@ -22,9 +46,6 @@ 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
@@ -61,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" ;;
- *) GTK="--disable-gui" ;;
-esac
-
CFLAGS="$SLKCFLAGS" \
CXXFLAGS="$SLKCFLAGS" \
./configure \
@@ -83,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
diff --git a/games/nestopia/nestopia.info b/games/nestopia/nestopia.info
index 16a31c358b..22b14ef0eb 100644
--- a/games/nestopia/nestopia.info
+++ b/games/nestopia/nestopia.info
@@ -1,10 +1,8 @@
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=""
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/neverball.SlackBuild b/games/neverball/neverball.SlackBuild
index 96ca1b59ae..9b01469ff3 100644
--- a/games/neverball/neverball.SlackBuild
+++ b/games/neverball/neverball.SlackBuild
@@ -2,11 +2,11 @@
# 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:
#
@@ -35,15 +35,12 @@ 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
-# 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
@@ -53,8 +50,8 @@ 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,21 +81,19 @@ find -L . \
patch -p1 < $CWD/gcc10.patch
-# Patch Makefile to change data directory and to make it compile
-# with appropriate flags
-patch -p1 < $CWD/Makefile.diff || exit 1
-
-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
@@ -112,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
@@ -126,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
diff --git a/games/nevernoid/nevernoid.SlackBuild b/games/nevernoid/nevernoid.SlackBuild
index 556e5a9359..4ca6e9daa9 100644
--- a/games/nevernoid/nevernoid.SlackBuild
+++ b/games/nevernoid/nevernoid.SlackBuild
@@ -2,7 +2,7 @@
# 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.
@@ -97,6 +97,7 @@ 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
diff --git a/games/nevernoid/nevernoid.info b/games/nevernoid/nevernoid.info
index 0fa58c465a..5c95130543 100644
--- a/games/nevernoid/nevernoid.info
+++ b/games/nevernoid/nevernoid.info
@@ -11,4 +11,4 @@ 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 ec957362d1..ebb2164aa7 100644
--- a/games/nexuiz/nexuiz.SlackBuild
+++ b/games/nexuiz/nexuiz.SlackBuild
@@ -2,10 +2,7 @@
# 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,11 +22,16 @@
# 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}
@@ -43,9 +45,6 @@ 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
@@ -56,16 +55,10 @@ 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
@@ -83,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
@@ -98,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:
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 22ae02f6e0..9ed36cbb53 100644
--- a/games/ninvaders/ninvaders.SlackBuild
+++ b/games/ninvaders/ninvaders.SlackBuild
@@ -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.
+# 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}
@@ -38,9 +42,6 @@ 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
@@ -75,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
diff --git a/games/nlarn/nlarn.SlackBuild b/games/nlarn/nlarn.SlackBuild
index d17e0b66d7..bd83cd25ae 100644
--- a/games/nlarn/nlarn.SlackBuild
+++ b/games/nlarn/nlarn.SlackBuild
@@ -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.
+# 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}
@@ -38,9 +42,6 @@ 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
@@ -75,26 +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"
# set our CFLAGS, disable -Werror and use ncurses6-config
sed -i -e "s|-Werror ||" -e "s|-O2|$SLKCFLAGS|" -e "s|ncurses5|ncurses6|" 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
+# 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
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 02e4ef4005..99a3cdf2d9 100644
--- a/games/noteye/noteye.SlackBuild
+++ b/games/noteye/noteye.SlackBuild
@@ -2,14 +2,26 @@
# 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}
@@ -22,9 +34,6 @@ 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
@@ -62,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
@@ -78,16 +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
-
-# store the writable high score file in /var, not /usr/share.
-sed -i 's,"hydrascores.sav","/var/games/hydrascores.sav",' hydra/hydra.cpp
+# fix underlinking.
+sed -i '/-lGLU *\$(TGT) *$/s,$, -lSDL2,' src/Makefile
-# use clang++ as the code won't build with gcc >= 5.x
-sed -i 's|g++ |clang++ |' src/Makefile
+# 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
@@ -97,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
@@ -126,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
@@ -146,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
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 daae6a1b8c..42959504f3 100644
--- a/games/notpacman/notpacman.SlackBuild
+++ b/games/notpacman/notpacman.SlackBuild
@@ -2,7 +2,7 @@
# 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.
diff --git a/games/notpacman/notpacman.info b/games/notpacman/notpacman.info
index 33c3e1cd8f..1c6cd3773d 100644
--- a/games/notpacman/notpacman.info
+++ b/games/notpacman/notpacman.info
@@ -7,4 +7,4 @@ 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 0d10ca10fe..f761b01a89 100644
--- a/games/nottetris2/nottetris2.SlackBuild
+++ b/games/nottetris2/nottetris2.SlackBuild
@@ -2,7 +2,7 @@
# 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,11 +12,13 @@
# 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}
@@ -52,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
diff --git a/games/nottetris2/nottetris2.info b/games/nottetris2/nottetris2.info
index 2431044150..332682dfdc 100644
--- a/games/nottetris2/nottetris2.info
+++ b/games/nottetris2/nottetris2.info
@@ -7,4 +7,4 @@ DOWNLOAD_x86_64=""
MD5SUM_x86_64=""
REQUIRES="love-legacy072"
MAINTAINER="B. Watson"
-EMAIL="yalhcru@gmail.com"
+EMAIL="urchlay@slackware.uk"
diff --git a/games/nsuds/nsuds.SlackBuild b/games/nsuds/nsuds.SlackBuild
index ff5bdb9389..ad5b426249 100644
--- a/games/nsuds/nsuds.SlackBuild
+++ b/games/nsuds/nsuds.SlackBuild
@@ -2,11 +2,21 @@
# 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}
@@ -18,10 +28,6 @@ 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
@@ -56,26 +62,37 @@ 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
diff --git a/games/nuvie/nuvie.SlackBuild b/games/nuvie/nuvie.SlackBuild
index 2c9c6e4d7a..454930a881 100644
--- a/games/nuvie/nuvie.SlackBuild
+++ b/games/nuvie/nuvie.SlackBuild
@@ -22,6 +22,10 @@
# 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
@@ -38,9 +42,6 @@ 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
@@ -75,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" \
@@ -89,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
@@ -99,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
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/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.6
index f065163635..6de8e2c234 100644
--- a/games/o2em/o2em.1
+++ b/games/o2em/o2em.6
@@ -1,4 +1,4 @@
-.TH O2EM "1" "January 2011" "SlackBuilds.org" "User Commands"
+.TH O2EM "6" "Nov 2021" "1.18" "SlackBuilds.org"
.SH NAME
o2em \- Emulator for Odyssey II and VideoPac+ systems
.SH SYNOPSIS
@@ -151,7 +151,7 @@ Enables/Disables the O2 keyboard input of the keys used by
joystick emulation
.SH FILES
.TP
-\fB/usr/bin/o2em\fR
+\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
@@ -162,7 +162,7 @@ to ~/.o2em).
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
+\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
@@ -183,7 +183,7 @@ o2rom.bin (md5sum 562d5ebf9e030a40d6fabfc2f33139fd)
These are the same files used by MESS, except o2rom.bin is called
o2bios.rom by MESS.
.TP
-\fB/usr/share/o2em/voice\fR
+\fB/usr/share/games/o2em/voice\fR
Voice samples, used to emulate the Odyssey2's speech synthesis chip.
.TP
\fB~/.o2em/\fR
diff --git a/games/o2em/o2em.SlackBuild b/games/o2em/o2em.SlackBuild
index 896b9b60c0..7eb2119b4d 100644
--- a/games/o2em/o2em.SlackBuild
+++ b/games/o2em/o2em.SlackBuild
@@ -2,15 +2,22 @@
# 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}
@@ -22,9 +29,6 @@ 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
@@ -55,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
@@ -71,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
@@ -102,18 +103,24 @@ 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
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/oblige-legacy4.SlackBuild b/games/oblige-legacy4/oblige-legacy4.SlackBuild
index 6876cd43e4..80bf4403e7 100644
--- a/games/oblige-legacy4/oblige-legacy4.SlackBuild
+++ b/games/oblige-legacy4/oblige-legacy4.SlackBuild
@@ -2,10 +2,12 @@
# 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)
@@ -30,7 +32,7 @@ cd $(dirname $0) ; CWD=$(pwd)
PRGNAM=oblige-legacy4
VERSION=${VERSION:-4.28b}
-BUILD=${BUILD:-3}
+BUILD=${BUILD:-4}
TAG=${TAG:-_SBo}
PKGTYPE=${PKGTYPE:-tgz}
@@ -120,9 +122,11 @@ ln -s ../icons/hicolor/48x48/apps/$PRGNAM.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
-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
diff --git a/games/oblige-legacy4/oblige-legacy4.info b/games/oblige-legacy4/oblige-legacy4.info
index 67f4a32c2a..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/"
+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/oblige.SlackBuild b/games/oblige/oblige.SlackBuild
index e9deb08bd0..cbb0ef26b0 100644
--- a/games/oblige/oblige.SlackBuild
+++ b/games/oblige/oblige.SlackBuild
@@ -2,10 +2,12 @@
# 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.
@@ -46,7 +48,7 @@ cd $(dirname $0) ; CWD=$(pwd)
PRGNAM=oblige
VERSION=${VERSION:-7.70}
-BUILD=${BUILD:-2}
+BUILD=${BUILD:-3}
TAG=${TAG:-_SBo}
PKGTYPE=${PKGTYPE:-tgz}
@@ -140,10 +142,12 @@ 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
-sed "s,Exec=,Exec=/usr/games/," \
- < 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
diff --git a/games/oblige/oblige.info b/games/oblige/oblige.info
index d733ec3971..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/"
+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/odamex/README b/games/odamex/README
index 0305146680..548ac5bb2e 100644
--- a/games/odamex/README
+++ b/games/odamex/README
@@ -5,9 +5,10 @@ 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" [note: music not working in -current as of October
-2021].
+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
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 f11f34eb62..9a52a368f5 100644
--- a/games/odamex/odamex.SlackBuild
+++ b/games/odamex/odamex.SlackBuild
@@ -2,10 +2,23 @@
# 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...
@@ -27,7 +40,7 @@
cd $(dirname $0) ; CWD=$(pwd)
PRGNAM=odamex
-VERSION=${VERSION:-0.9.5}
+VERSION=${VERSION:-10.4.0}
BUILD=${BUILD:-1}
TAG=${TAG:-_SBo}
PKGTYPE=${PKGTYPE:-tgz}
@@ -40,9 +53,6 @@ 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
@@ -80,7 +90,7 @@ 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 .
@@ -89,6 +99,14 @@ chown -R root:root .
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.
@@ -96,6 +114,10 @@ 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"
+
rm -rf build
mkdir -p build
cd build
@@ -105,7 +127,8 @@ cd build
-DCMAKE_INSTALL_PREFIX=/usr \
-DCMAKE_INSTALL_BINDIR=games \
-DwxWidgets_CONFIG_EXECUTABLE=$WXCONFIG \
- -DUSE_SDL12=ON \
+ -DUSE_SDL12=$SDL12ARG \
+ -DNO_AG-ODALAUNCH_TARGET=ON \
-DCMAKE_BUILD_TYPE=Release ..
make VERBOSE=1
cd ..
diff --git a/games/odamex/odamex.info b/games/odamex/odamex.info
index 30e02d3f8c..facad2dc17 100644
--- a/games/odamex/odamex.info
+++ b/games/odamex/odamex.info
@@ -1,12 +1,12 @@
PRGNAM="odamex"
-VERSION="0.9.5"
+VERSION="10.4.0"
HOMEPAGE="https://odamex.net/"
-DOWNLOAD="https://downloads.sourceforge.net/odamex/odamex-src-0.9.5.tar.bz2 \
- https://downloads.sourceforge.net/odamex/odamex-win32-0.9.5.zip"
-MD5SUM="2facffaf15bc2892aafd74a0630f9ee0 \
- 2e53f5a238a032439ee83504607206f7"
+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/oolite/oolite.SlackBuild b/games/oolite/oolite.SlackBuild
index e93dc5ce54..3734a5cf98 100644
--- a/games/oolite/oolite.SlackBuild
+++ b/games/oolite/oolite.SlackBuild
@@ -2,7 +2,7 @@
# 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,6 +22,8 @@
# 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
@@ -38,9 +40,6 @@ 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
@@ -69,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 \
@@ -79,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
diff --git a/games/oolite/oolite.info b/games/oolite/oolite.info
index d83bfa7d18..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"
+REQUIRES="gnustep-base"
MAINTAINER="Johannes Schoepfer"
EMAIL="slackbuilds@schoepfer.info"
diff --git a/games/open-adventure/doinst.sh b/games/open-adventure/doinst.sh
index 9a8ded3c60..9424ce43ff 100644
--- a/games/open-adventure/doinst.sh
+++ b/games/open-adventure/doinst.sh
@@ -5,3 +5,9 @@ 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 378a539601..c5c438dfb1 100644
--- a/games/open-adventure/open-adventure.SlackBuild
+++ b/games/open-adventure/open-adventure.SlackBuild
@@ -2,10 +2,14 @@
# 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.
@@ -19,8 +23,8 @@
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}
@@ -43,16 +47,12 @@ 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:
@@ -84,6 +84,9 @@ 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.
@@ -104,18 +107,21 @@ mkdir -p $PKG/usr/share/applications $PKG/usr/share/pixmaps
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
- convert -background none -resize $size $EXE.svg $dir/$EXE.png
+ 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 NEWS *.adoc TODO $PKG/usr/doc/$PRGNAM-$VERSION
+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
diff --git a/games/open-adventure/open-adventure.info b/games/open-adventure/open-adventure.info
index 203436a961..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"
+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/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 70cd359aa6..cbb50438e3 100644
--- a/games/openclonk/openclonk.SlackBuild
+++ b/games/openclonk/openclonk.SlackBuild
@@ -2,7 +2,7 @@
# 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
@@ -25,7 +25,7 @@
cd $(dirname $0) ; CWD=$(pwd)
PRGNAM=openclonk
-VERSION=${VERSION:-7.0}
+VERSION=${VERSION:-8.1}
BUILD=${BUILD:-1}
TAG=${TAG:-_SBo}
PKGTYPE=${PKGTYPE:-tgz}
@@ -38,9 +38,6 @@ 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
@@ -70,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 {} \;
-
-patch -p1 < $CWD/findreadline.patch
+ -o -perm 440 -o -perm 400 \) -exec chmod 644 {} \+
+
+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
diff --git a/games/openclonk/openclonk.info b/games/openclonk/openclonk.info
index ce873397d7..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 libupnp"
+REQUIRES="freealut miniupnpc"
MAINTAINER="Dimitris Zlatanidis"
-EMAIL="d.zlatanidis@gmail.com"
+EMAIL="dslackw@gmail.com"
diff --git a/games/opendune/opendune.SlackBuild b/games/opendune/opendune.SlackBuild
index ae32068b31..0605b301f8 100644
--- a/games/opendune/opendune.SlackBuild
+++ b/games/opendune/opendune.SlackBuild
@@ -2,7 +2,7 @@
# 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.
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/openjazz/openjazz.SlackBuild b/games/openjazz/openjazz.SlackBuild
index d9d38e62e1..f2111e974c 100644
--- a/games/openjazz/openjazz.SlackBuild
+++ b/games/openjazz/openjazz.SlackBuild
@@ -2,7 +2,7 @@
# 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.
diff --git a/games/openjazz/openjazz.info b/games/openjazz/openjazz.info
index 312488afc0..bbd262cb69 100644
--- a/games/openjazz/openjazz.info
+++ b/games/openjazz/openjazz.info
@@ -9,4 +9,4 @@ DOWNLOAD_x86_64=""
MD5SUM_x86_64=""
REQUIRES="libmodplug"
MAINTAINER="B. Watson"
-EMAIL="yalhcru@gmail.com"
+EMAIL="urchlay@slackware.uk"
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/openlierox.SlackBuild b/games/openlierox/openlierox.SlackBuild
index 2aaea0ba5f..9d6f96de32 100644
--- a/games/openlierox/openlierox.SlackBuild
+++ b/games/openlierox/openlierox.SlackBuild
@@ -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:
+# - 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:-20170313_3825306}
+VERSION=${VERSION:-20200424_d316c14}
BUILD=${BUILD:-1}
TAG=${TAG:-_SBo}
PKGTYPE=${PKGTYPE:-tgz}
@@ -38,9 +46,6 @@ 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
@@ -70,42 +75,58 @@ 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.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 {} \;
+ -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
diff --git a/games/openlierox/openlierox.info b/games/openlierox/openlierox.info
index f3115748bd..86a6897bb3 100644
--- a/games/openlierox/openlierox.info
+++ b/games/openlierox/openlierox.info
@@ -1,10 +1,10 @@
PRGNAM="openlierox"
-VERSION="20170313_3825306"
+VERSION="20200424_d316c14"
HOMEPAGE="http://www.openlierox.net/"
-DOWNLOAD="http://ponce.cc/slackware/sources/repo/openlierox-20170313_3825306.tar.xz"
-MD5SUM="7540eab45506561ccae1e75cf42a8fdd"
+DOWNLOAD="https://slackware.uk/~urchlay/src/openlierox-20200424_d316c14.tar.xz"
+MD5SUM="c1559d7f041fe2a94b41c62dff1d81d7"
DOWNLOAD_x86_64=""
MD5SUM_x86_64=""
-REQUIRES="HawkNL freealut"
+REQUIRES="freealut"
MAINTAINER="Dimitris Zlatanidis"
EMAIL="d.zlatanidis@gmail.com"
diff --git a/games/openmortal/openmortal.SlackBuild b/games/openmortal/openmortal.SlackBuild
index aef85a9523..a13e88a0af 100644
--- a/games/openmortal/openmortal.SlackBuild
+++ b/games/openmortal/openmortal.SlackBuild
@@ -2,7 +2,7 @@
# 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.
diff --git a/games/openmortal/openmortal.info b/games/openmortal/openmortal.info
index 3a224892ff..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/"
+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/openmsx-catapult/openmsx-catapult.SlackBuild b/games/openmsx-catapult/openmsx-catapult.SlackBuild
index 26140573f5..8f9963f387 100644
--- a/games/openmsx-catapult/openmsx-catapult.SlackBuild
+++ b/games/openmsx-catapult/openmsx-catapult.SlackBuild
@@ -3,7 +3,7 @@
# 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
@@ -26,7 +26,7 @@
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}
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 801f301da1..8571cdf66c 100644
--- a/games/openmsx-debugger/openmsx-debugger.SlackBuild
+++ b/games/openmsx-debugger/openmsx-debugger.SlackBuild
@@ -2,7 +2,7 @@
# 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
@@ -26,8 +26,8 @@ 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}
diff --git a/games/openmsx-debugger/openmsx-debugger.info b/games/openmsx-debugger/openmsx-debugger.info
index 991622e340..e8bb0159aa 100644
--- a/games/openmsx-debugger/openmsx-debugger.info
+++ b/games/openmsx-debugger/openmsx-debugger.info
@@ -1,8 +1,8 @@
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=""
diff --git a/games/openmsx/openmsx.SlackBuild b/games/openmsx/openmsx.SlackBuild
index 463af66af4..008d8b8447 100644
--- a/games/openmsx/openmsx.SlackBuild
+++ b/games/openmsx/openmsx.SlackBuild
@@ -3,7 +3,7 @@
# 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
@@ -26,7 +26,7 @@
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}
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 0df65bd9c9..86d3777fde 100644
--- a/games/openmw/openmw.SlackBuild
+++ b/games/openmw/openmw.SlackBuild
@@ -25,7 +25,7 @@
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}
diff --git a/games/openmw/openmw.info b/games/openmw/openmw.info
index 1bfabdc6da..27e8c25e59 100644
--- a/games/openmw/openmw.info
+++ b/games/openmw/openmw.info
@@ -1,8 +1,8 @@
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 unshield OpenSceneGraph MyGUI bullet"
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 d766ac22c0..4c76cdd8cd 100644
--- a/games/opensonic/opensonic.SlackBuild
+++ b/games/opensonic/opensonic.SlackBuild
@@ -22,6 +22,8 @@
# 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
@@ -33,15 +35,12 @@ 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
-# 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
@@ -51,8 +50,8 @@ 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"
@@ -76,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
@@ -105,7 +108,7 @@ 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
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/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/sumwars/sumwars.SlackBuild b/games/opensurge/opensurge.SlackBuild
index 14c89a2456..fbf5ba19b9 100644
--- a/games/sumwars/sumwars.SlackBuild
+++ b/games/opensurge/opensurge.SlackBuild
@@ -1,8 +1,8 @@
#!/bin/bash
-# Slackware build script for sumwars
+# Slackware build script for opensurge
-# Copyright 2014-2016 Dimitris Zlatanidis Orestiada, Greece
+# Copyright 2022 Johannes Schoepfer, Germany
# All rights reserved.
#
# Redistribution and use of this script, with or without modification, is
@@ -24,11 +24,10 @@
cd $(dirname $0) ; CWD=$(pwd)
-PRGNAM=sumwars
-VERSION=${VERSION:-0.5.8}
-SRCVERSION=$VERSION-src
+PRGNAM=opensurge
+VERSION=${VERSION:-0.6.0.3}
BUILD=${BUILD:-1}
-TAG=${TAG:-_SBo}
+TAG=${TAG:-_SBo}
PKGTYPE=${PKGTYPE:-tgz}
if [ -z "$ARCH" ]; then
@@ -39,9 +38,6 @@ 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
@@ -49,7 +45,7 @@ fi
TMP=${TMP:-/tmp/SBo}
PKG=$TMP/package-$PRGNAM
-OUTPUT=${OUTPUT:-/tmp}
+OUTPUT=${OUTPUT:-/tmp}
if [ "$ARCH" = "i586" ]; then
SLKCFLAGS="-O2 -march=i586 -mtune=i686"
@@ -71,7 +67,7 @@ rm -rf $PKG
mkdir -p $TMP $PKG $OUTPUT
cd $TMP
rm -rf $PRGNAM-$VERSION
-tar xvf $CWD/$PRGNAM-$SRCVERSION.tar.bz2
+tar xvf $CWD/$PRGNAM-$VERSION.tar.gz
cd $PRGNAM-$VERSION
chown -R root:root .
find -L . \
@@ -85,7 +81,6 @@ 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
@@ -95,14 +90,10 @@ 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
+cp -a \
+ LICENSE *.md \
+ $PKG/usr/doc/$PRGNAM-$VERSION
cat $CWD/$PRGNAM.SlackBuild > $PKG/usr/doc/$PRGNAM-$VERSION/$PRGNAM.SlackBuild
mkdir -p $PKG/install
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 61dfe18d94..f7e8f0912e 100644
--- a/games/openttd/openttd.SlackBuild
+++ b/games/openttd/openttd.SlackBuild
@@ -4,7 +4,7 @@
# 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
@@ -27,18 +27,18 @@
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
@@ -63,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"
@@ -89,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 . \
@@ -98,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 -DU_USING_ICU_NAMESPACE=1" \
-./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
@@ -127,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
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/opentyrian.SlackBuild b/games/opentyrian/opentyrian.SlackBuild
index 8a4ed2f577..b13ff1a8e6 100644
--- a/games/opentyrian/opentyrian.SlackBuild
+++ b/games/opentyrian/opentyrian.SlackBuild
@@ -2,10 +2,13 @@
# 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
@@ -16,7 +19,7 @@
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}
@@ -61,29 +64,33 @@ 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 /111 -a \! -perm 755 -a -exec chmod 755 {} \+ -o \
\! -perm /111 -a \! -perm 644 -a -exec chmod 644 {} \+
-sed -i 's,/usr/share,/usr/share/games,' src/file.c
+# 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
-mkdir -p \
- $PKG/usr/games \
- $PKG/usr/share/games/$PRGNAM/data \
- $PKG/usr/man/man6 \
- $PKG/usr/share/pixmaps \
- $PKG/usr/share/applications \
- $PKG/usr/doc/$PRGNAM-$VERSION \
- $PKG/install
+DOCDIR=/usr/doc/$PRGNAM-$VERSION
+PKGDOC=$PKG/$DOCDIR
-SLKCFLAGS+=" -fcommon"
-sed -i "s,-g0,$SLKCFLAGS," Makefile
-sed -i "s,-g3.*\$,$SLKCFLAGS," Makefile
-make
+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
-install -s $PRGNAM $PKG/usr/games
+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
@@ -95,32 +102,25 @@ 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/games/$PRGNAM/data
cd -
-for i in linux/icons/*.png; do
- px=$( basename $i | cut -d. -f1 | cut -d- -f2 )
- 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
gzip -9c < linux/man/$PRGNAM.6 > $PKG/usr/man/man6/$PRGNAM.6.gz
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
diff --git a/games/opentyrian/opentyrian.info b/games/opentyrian/opentyrian.info
index b4df0329c8..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="https://www.camanis.net/opentyrian/releases/opentyrian-2.1.20130907-src.tar.gz \
- https://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/openyahtzee/openyahtzee.SlackBuild b/games/openyahtzee/openyahtzee.SlackBuild
index f6d7b88bed..5df8a49d98 100644
--- a/games/openyahtzee/openyahtzee.SlackBuild
+++ b/games/openyahtzee/openyahtzee.SlackBuild
@@ -2,7 +2,7 @@
# 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.
diff --git a/games/openyahtzee/openyahtzee.info b/games/openyahtzee/openyahtzee.info
index d8dc01deb5..5e49993e54 100644
--- a/games/openyahtzee/openyahtzee.info
+++ b/games/openyahtzee/openyahtzee.info
@@ -7,4 +7,4 @@ 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 5c6fdd8070..249cc203b3 100644
--- a/games/ostrichriders/ostrichriders.SlackBuild
+++ b/games/ostrichriders/ostrichriders.SlackBuild
@@ -2,7 +2,7 @@
# 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.
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/pacman-arena.SlackBuild b/games/pacman-arena/pacman-arena.SlackBuild
index ee1e7b0d1a..f0266e595b 100644
--- a/games/pacman-arena/pacman-arena.SlackBuild
+++ b/games/pacman-arena/pacman-arena.SlackBuild
@@ -2,7 +2,7 @@
# 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.
diff --git a/games/pacman-arena/pacman-arena.info b/games/pacman-arena/pacman-arena.info
index cc817a99a9..a6599c766c 100644
--- a/games/pacman-arena/pacman-arena.info
+++ b/games/pacman-arena/pacman-arena.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/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 3ef28dfa8f..8bcaae7a52 100644
--- a/games/pacman/pacman.SlackBuild
+++ b/games/pacman/pacman.SlackBuild
@@ -3,7 +3,7 @@
# 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
@@ -104,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
diff --git a/games/pangzero/pangzero.SlackBuild b/games/pangzero/pangzero.SlackBuild
index 54633656f6..56c12ffc19 100644
--- a/games/pangzero/pangzero.SlackBuild
+++ b/games/pangzero/pangzero.SlackBuild
@@ -2,7 +2,7 @@
# 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.
diff --git a/games/pangzero/pangzero.info b/games/pangzero/pangzero.info
index 19518c4ecf..92aacae2a0 100644
--- a/games/pangzero/pangzero.info
+++ b/games/pangzero/pangzero.info
@@ -2,11 +2,11 @@ PRGNAM="pangzero"
VERSION="1.4.1+git20121103"
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://deb.debian.org/debian/pool/main/p/pangzero/pangzero_1.4.1+git20121103-3.debian.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/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 b3f6e31266..4fdc5fa9b5 100644
--- a/games/pcgen/pcgen.SlackBuild
+++ b/games/pcgen/pcgen.SlackBuild
@@ -1,6 +1,6 @@
#!/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,24 +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="noarch"
+ARCH="x86_64"
-# 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
+U="$( uname -m )"
+if [ "$ARCH" != "$U" ]; then
+ cat <<EOF
+*********************************************************************
+$0: building $ARCH package on a $U system.
+
+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
+
TMP=${TMP:-/tmp/SBo}
PKG=$TMP/package-$PRGNAM
OUTPUT=${OUTPUT:-/tmp}
@@ -37,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
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 3d94b42ff6..114f966ca9 100644
--- a/games/pcsx-rearmed/pcsx-rearmed.SlackBuild
+++ b/games/pcsx-rearmed/pcsx-rearmed.SlackBuild
@@ -3,7 +3,7 @@
# 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
@@ -26,8 +26,9 @@
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}
@@ -40,9 +41,6 @@ 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
@@ -60,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 \
@@ -75,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 \
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 d14eaca56f..e225fc106f 100644
--- a/games/pcsx2/pcsx2.SlackBuild
+++ b/games/pcsx2/pcsx2.SlackBuild
@@ -2,7 +2,7 @@
# 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
@@ -25,7 +25,18 @@
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}
@@ -38,9 +49,6 @@ 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
@@ -49,29 +57,45 @@ 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 \
@@ -79,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
diff --git a/games/pcsx2/pcsx2.info b/games/pcsx2/pcsx2.info
index e30b7df61f..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="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/penguin-command/manpage.diff b/games/penguin-command/manpage.diff
index 7aeeb6c202..4574ceebce 100644
--- a/games/penguin-command/manpage.diff
+++ b/games/penguin-command/manpage.diff
@@ -29,4 +29,4 @@ diff -Naur penguin-command-1.6.11/penguin-command.6 penguin-command-1.6.11.patch
.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 <yalhcru@gmail.com>.
++updated by B. Watson <urchlay@slackware.uk>.
diff --git a/games/penguin-command/penguin-command.SlackBuild b/games/penguin-command/penguin-command.SlackBuild
index 38b6ea42f8..7c13c73329 100644
--- a/games/penguin-command/penguin-command.SlackBuild
+++ b/games/penguin-command/penguin-command.SlackBuild
@@ -2,7 +2,7 @@
# 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.
diff --git a/games/penguin-command/penguin-command.info b/games/penguin-command/penguin-command.info
index ee71ba22c0..74b572ca98 100644
--- a/games/penguin-command/penguin-command.info
+++ b/games/penguin-command/penguin-command.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/pengupop/pengupop.SlackBuild b/games/pengupop/pengupop.SlackBuild
index 5aee222502..0fb6d8c069 100644
--- a/games/pengupop/pengupop.SlackBuild
+++ b/games/pengupop/pengupop.SlackBuild
@@ -32,7 +32,7 @@ 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
@@ -50,8 +50,8 @@ 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"
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.6
index c1f23fa6aa..c68f708891 100644
--- a/games/pentagram/pentagram.1
+++ b/games/pentagram/pentagram.6
@@ -1,4 +1,4 @@
-.TH pentagram 1 "29 Oct 2011" "20110229_svn" "Pentagram"
+.TH pentagram 6 "02 Nov 2021" "20110229_svn" "SlackBuilds.org"
.SH NAME
\fBpentagram\fR \- A reimplemented engine for the game
@@ -43,13 +43,14 @@ Config and savegame data.
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.
+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/pentagram
+.B /usr/share/games/pentagram
This is the default location where
.B pentagram
looks for the Ultima 8 data files. This directory should contain
@@ -80,8 +81,9 @@ 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.
+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)
diff --git a/games/pentagram/pentagram.SlackBuild b/games/pentagram/pentagram.SlackBuild
index fe8fc58c1b..dc0d6a5581 100644
--- a/games/pentagram/pentagram.SlackBuild
+++ b/games/pentagram/pentagram.SlackBuild
@@ -2,15 +2,21 @@
# 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}
@@ -22,9 +28,6 @@ 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
@@ -57,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
@@ -83,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,
@@ -113,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
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/pioneer/README b/games/pioneer/README
index 389b6706af..e19fd95e46 100644
--- a/games/pioneer/README
+++ b/games/pioneer/README
@@ -8,16 +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
+
+OpenGL core profile version 3.1 or newer is a runtime dependency. To
+determine what version of OpenGL is installed, use:
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 83daea8051..d7d399338f 100644
--- a/games/pioneer/pioneer.SlackBuild
+++ b/games/pioneer/pioneer.SlackBuild
@@ -3,6 +3,7 @@
# 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
@@ -25,8 +26,7 @@
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}
@@ -53,16 +53,12 @@ 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
@@ -87,27 +83,28 @@ else
RELEASE=Release
fi
+# Fix save compatibility (#5798).
+patch -p0 < $CWD/save-compat.diff
+
GLEW=OFF
LUA=OFF
pkg-config --exists glew && GLEW=ON
-
-# 20210214 bkw: cmake can't easily be told to ignore lua 5.1 on a
-# system where both 5.1 and 5.2 are installed. In that case, we'll
-# use the bundled lua source. Note that there's no problem with 5.3,
-# as cmake seems to search for them in order.
-pkg-config --exists lua5.2 && ! pkg-config --exists lua && LUA=ON
-
-# Workaround 32-bit build failure
-# https://github.com/pioneerspacesim/pioneer/issues/4691
-patch -p1 < $CWD/alignment.patch
+pkg-config --exists lua5.2 && LUA=ON
# 20210214 bkw: prevent the build from writing to /root/, without
# breaking ccache if it's in use.
-mkdir -p tmphome
+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
cmake \
@@ -115,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
@@ -128,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
diff --git a/games/pioneer/pioneer.info b/games/pioneer/pioneer.info
index 81cb877e8d..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="assimp"
-MAINTAINER="Hunter Sezen"
-EMAIL="orbea@riseup.net"
+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.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 f7b7cdc625..50fba689fc 100644
--- a/games/planetblupi/planetblupi.SlackBuild
+++ b/games/planetblupi/planetblupi.SlackBuild
@@ -23,10 +23,11 @@
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
@@ -59,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=""
@@ -79,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
diff --git a/games/planetblupi/planetblupi.info b/games/planetblupi/planetblupi.info
index 564c7a3a27..38db5bb805 100644
--- a/games/planetblupi/planetblupi.info
+++ b/games/planetblupi/planetblupi.info
@@ -1,8 +1,10 @@
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 SDL_kitchensink"
diff --git a/games/pokerth/patches/pokerth-1.1.2-boost-1.73-placeholders.patch b/games/pokerth/patches/pokerth-1.1.2-boost-1.73-placeholders.patch
deleted file mode 100644
index 8044977c10..0000000000
--- a/games/pokerth/patches/pokerth-1.1.2-boost-1.73-placeholders.patch
+++ /dev/null
@@ -1,18 +0,0 @@
-diff -Naur pokerth-1.1.2-rc.orig/src/net/common/serveracceptwebhelper.cpp pokerth-1.1.2-rc/src/net/common/serveracceptwebhelper.cpp
---- pokerth-1.1.2-rc.orig/src/net/common/serveracceptwebhelper.cpp 2017-08-16 14:24:03.000000000 +0200
-+++ pokerth-1.1.2-rc/src/net/common/serveracceptwebhelper.cpp 2020-06-23 14:13:56.395204000 +0200
-@@ -58,10 +58,10 @@
-
- m_webSocketServer->init_asio(m_ioService.get());
-
-- m_webSocketServer->set_validate_handler(boost::bind(boost::mem_fn(&ServerAcceptWebHelper::validate), this, _1));
-- m_webSocketServer->set_open_handler(boost::bind(boost::mem_fn(&ServerAcceptWebHelper::on_open), this, _1));
-- m_webSocketServer->set_close_handler(boost::bind(boost::mem_fn(&ServerAcceptWebHelper::on_close), this, _1));
-- m_webSocketServer->set_message_handler(boost::bind(boost::mem_fn(&ServerAcceptWebHelper::on_message), this, _1, _2));
-+ m_webSocketServer->set_validate_handler(boost::bind(boost::mem_fn(&ServerAcceptWebHelper::validate), this, boost::placeholders::_1));
-+ m_webSocketServer->set_open_handler(boost::bind(boost::mem_fn(&ServerAcceptWebHelper::on_open), this, boost::placeholders::_1));
-+ m_webSocketServer->set_close_handler(boost::bind(boost::mem_fn(&ServerAcceptWebHelper::on_close), this, boost::placeholders::_1));
-+ m_webSocketServer->set_message_handler(boost::bind(boost::mem_fn(&ServerAcceptWebHelper::on_message), this, boost::placeholders::_1, boost::placeholders::_2));
-
- m_webSocketServer->listen(serverPort);
- m_webSocketServer->start_accept();
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 d2d8fbd8e0..338635b115 100644
--- a/games/pokerth/pokerth.SlackBuild
+++ b/games/pokerth/pokerth.SlackBuild
@@ -2,7 +2,7 @@
# Slackware build script for pokerth.
-# Copyright 2020 Matteo Bernardini <ponce@slackbuilds.org>
+# 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.
@@ -29,7 +29,7 @@
cd $(dirname $0) ; CWD=$(pwd)
PRGNAM=pokerth
-VERSION=${VERSION:-20200721_a333185}
+VERSION=${VERSION:-20230930_ecf031e}
BUILD=${BUILD:-1}
TAG=${TAG:-_SBo}
PKGTYPE=${PKGTYPE:-tgz}
@@ -86,7 +86,8 @@ find -L . \
( 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 )
-patch -p1 < $CWD/patches/pokerth-1.1.2-boost-1.73-placeholders.patch
+
+patch -p1 < $CWD/patches/pokerth-1.1.2-newer-protobuf.patch
qmake-qt5 QMAKE_CFLAGS_ISYSTEM= -spec linux-g++ pokerth.pro
make
diff --git a/games/pokerth/pokerth.info b/games/pokerth/pokerth.info
index e02f2401d2..fe6981d55a 100644
--- a/games/pokerth/pokerth.info
+++ b/games/pokerth/pokerth.info
@@ -1,8 +1,8 @@
PRGNAM="pokerth"
-VERSION="20200721_a333185"
+VERSION="20230930_ecf031e"
HOMEPAGE="https://www.pokerth.net"
-DOWNLOAD="http://ponce.cc/slackware/sources/repo/pokerth-20200721_a333185.tar.xz"
-MD5SUM="b96da9a09589dd45e7cf576c7190bdb1"
+DOWNLOAD="https://ponce.cc/slackware/sources/repo/pokerth-20230930_ecf031e.tar.xz"
+MD5SUM="e6cf4a9441832f6657afe89186dff7a2"
DOWNLOAD_x86_64=""
MD5SUM_x86_64=""
REQUIRES="libgsasl libircclient tinyxml protobuf3"
diff --git a/games/pom1/pom1.SlackBuild b/games/pom1/pom1.SlackBuild
index 7fe6c77e40..bc8567ef44 100644
--- a/games/pom1/pom1.SlackBuild
+++ b/games/pom1/pom1.SlackBuild
@@ -2,11 +2,13 @@
# 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.
@@ -18,7 +20,7 @@ cd $(dirname $0) ; CWD=$(pwd)
PRGNAM=pom1
VERSION=${VERSION:-1.0.0}
-BUILD=${BUILD:-2}
+BUILD=${BUILD:-3}
TAG=${TAG:-_SBo}
PKGTYPE=${PKGTYPE:-tgz}
@@ -93,6 +95,9 @@ 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
@@ -112,11 +117,6 @@ rm -rf $PKG/usr/share/doc
mkdir -p $PKG/usr/man/man6
gzip -9c < $CWD/$PRGNAM.6 > $PKG/usr/man/man6/$PRGNAM.6.gz
-# 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
-
mv $PKG/usr/games/$PRGNAM-$VERSION $PKG/usr/games/$PRGNAM
cp -a COPYING $PKG/usr/doc/$PRGNAM-$VERSION
diff --git a/games/pom1/pom1.info b/games/pom1/pom1.info
index 277426b455..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/"
+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/powerslave_demo_data/powerslave_demo_data.SlackBuild b/games/powerslave_demo_data/powerslave_demo_data.SlackBuild
index ac7bcbe1e5..58a2a2cce3 100644
--- a/games/powerslave_demo_data/powerslave_demo_data.SlackBuild
+++ b/games/powerslave_demo_data/powerslave_demo_data.SlackBuild
@@ -2,7 +2,7 @@
# 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.
@@ -21,9 +21,6 @@ PKGTYPE=${PKGTYPE:-tgz}
ARCH=noarch
SRCNAM=pwrslave
-# 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
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 6381eadcf4..7282983268 100644
--- a/games/ppsspp/ppsspp.SlackBuild
+++ b/games/ppsspp/ppsspp.SlackBuild
@@ -3,7 +3,7 @@
# 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,16 +23,10 @@
# OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF THIS SOFTWARE, EVEN IF
# ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
-# 20210218 bkw: modified by SlackBuilds.org. Use correct filenames
-# in the github URLs for the 'submodules'. This is needed because
-# we don't get to decide what user-agent the user downloads files
-# with. If the Content-Disposition header is honored (e.g. files
-# downloaded with a web browser), this build failed.
-
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}
@@ -77,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/glslang-d0850f8*.tar.gz \
- -C ext/glslang --strip-components=1
-tar -xvf $CWD/ppsspp-lang-1c64b8f*.tar.gz \
- -C assets/lang --strip-components=1
-tar -xvf $CWD/SPIRV-Cross-a1f7c8d*.tar.gz \
- -C ext/SPIRV-Cross --strip-components=1
-tar -xvf $CWD/armips-7885552*.tar.gz \
- -C ext/armips --strip-components=1
-tar -xvf $CWD/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 \
@@ -104,64 +81,50 @@ 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
+# Build the internal ffmpeg (it's the only one supported by upstream)
+( cd ffmpeg
+ ./linux_x86-64.sh )
-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_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_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
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 8d28ab5a69..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/glslang-d0850f875ec392a130ccf00018dab458b546f27c.tar.gz \
- https://github.com/hrydgard/ppsspp-lang/archive/1c64b8fbd3cb6bd87935eb53f302f7de6f86e209/ppsspp-lang-1c64b8fbd3cb6bd87935eb53f302f7de6f86e209.tar.gz \
- https://github.com/KhronosGroup/SPIRV-Cross/archive/a1f7c8dc8ea2f94443951ee27003bffa562c1f13/SPIRV-Cross-a1f7c8dc8ea2f94443951ee27003bffa562c1f13.tar.gz \
- https://github.com/Kingcom/armips/archive/7885552b208493a6a0f21663770c446c3ba65576/armips-7885552b208493a6a0f21663770c446c3ba65576.tar.gz \
- https://github.com/hrydgard/ppsspp-ffmpeg/archive/55147e5f33f5ae4904f75ec082af809267122b94/ppsspp-ffmpeg-55147e5f33f5ae4904f75ec082af809267122b94.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=""
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 8269961fd1..2cd75e32f9 100644
--- a/games/prboom-plus/README
+++ b/games/prboom-plus/README
@@ -14,8 +14,10 @@ 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 dependency, autodetected:
+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 ***
@@ -26,3 +28,8 @@ 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 1798871c25..373411b1ad 100644
--- a/games/prboom-plus/prboom-plus.SlackBuild
+++ b/games/prboom-plus/prboom-plus.SlackBuild
@@ -3,10 +3,16 @@
# 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
@@ -26,7 +32,7 @@
cd $(dirname $0) ; CWD=$(pwd)
PRGNAM=prboom-plus
-VERSION=${VERSION:-2.6.1um}
+VERSION=${VERSION:-2.6.66}
BUILD=${BUILD:-1}
TAG=${TAG:-_SBo}
PKGTYPE=${PKGTYPE:-tgz}
@@ -80,6 +86,11 @@ find -L . -perm /111 -a \! -perm 755 -a -exec chmod 755 {} \+ -o \
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
@@ -88,6 +99,8 @@ if [ "${BANDAID:-yes}" = "yes" ]; then
# 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,' \
@@ -129,6 +142,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
diff --git a/games/prboom-plus/prboom-plus.info b/games/prboom-plus/prboom-plus.info
index 3296e63a1d..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.6.1um"
+VERSION="2.6.66"
HOMEPAGE="http://prboom-plus.sourceforge.net"
-DOWNLOAD="https://github.com/coelckers/prboom-plus/archive/v2.6.1um/prboom-plus-2.6.1um.tar.gz"
-MD5SUM="e887e6032912be38a8c3d47ef1c78194"
+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=""
MAINTAINER="B. Watson"
-EMAIL="yalhcru@gmail.com"
+EMAIL="urchlay@slackware.uk"
diff --git a/games/prboom/prboom.SlackBuild b/games/prboom/prboom.SlackBuild
index 9744eb1ba1..546afa13ce 100644
--- a/games/prboom/prboom.SlackBuild
+++ b/games/prboom/prboom.SlackBuild
@@ -22,6 +22,11 @@
# 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
@@ -32,15 +37,12 @@ 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
-# 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
@@ -50,8 +52,8 @@ 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,6 +66,8 @@ else
LIBDIRSUFFIX=""
fi
+set -e
+
rm -rf $PKG
mkdir -p $TMP $PKG $OUTPUT
cd $TMP || exit 1
@@ -73,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
@@ -94,17 +100,15 @@ 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
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/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/vcmi-resolutions/vcmi-resolutions.SlackBuild b/games/protonup/protonup.SlackBuild
index 924b777da5..f1e5c8d4f2 100644
--- a/games/vcmi-resolutions/vcmi-resolutions.SlackBuild
+++ b/games/protonup/protonup.SlackBuild
@@ -1,8 +1,8 @@
#!/bin/bash
-# Slackware build script for vcmi-resolutions
+# Slackware build script for protonup
-# Copyright 2015-2021 Petar Petrov slackalaxy@gmail.com
+# Copyright 2022 Damian Perticone, Berisso, Argentina
# All rights reserved.
#
# Redistribution and use of this script, with or without modification, is
@@ -24,18 +24,21 @@
cd $(dirname $0) ; CWD=$(pwd)
-PRGNAM=vcmi-resolutions
-SRCNAM=vcmi
-VERSION=${VERSION:-20141001}
+PRGNAM=protonup
+VERSION=${VERSION:-0.1.4}
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
+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
@@ -43,7 +46,21 @@ fi
TMP=${TMP:-/tmp/SBo}
PKG=$TMP/package-$PRGNAM
-OUTPUT=${OUTPUT:-/tmp}
+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
@@ -51,10 +68,8 @@ rm -rf $PKG
mkdir -p $TMP $PKG $OUTPUT
cd $TMP
rm -rf $PRGNAM-$VERSION
-mkdir $PRGNAM-$VERSION
+tar xvf $CWD/$PRGNAM-$VERSION.tar.gz
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 \
@@ -62,10 +77,13 @@ 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/vcmi/Mods/vcmi
-cp -a vcmi/Mods $PKG/usr/share/vcmi/Mods/vcmi
+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
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/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 3280ed5483..8b9cead670 100644
--- a/games/puzzles/puzzles.SlackBuild
+++ b/games/puzzles/puzzles.SlackBuild
@@ -1,27 +1,53 @@
#!/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
-# 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.
+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
@@ -31,8 +57,8 @@ 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,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 )
-
-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
+ -o -perm 440 -o -perm 400 \) -exec chmod 644 {} \;
+
+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
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 8f6af0f366..488b8202b8 100644
--- a/games/pybik/pybik.SlackBuild
+++ b/games/pybik/pybik.SlackBuild
@@ -22,6 +22,13 @@
# 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
@@ -38,9 +45,6 @@ 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
@@ -75,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
diff --git a/games/pybik/pybik.info b/games/pybik/pybik.info
index 83ebad073b..da667825f8 100644
--- a/games/pybik/pybik.info
+++ b/games/pybik/pybik.info
@@ -1,7 +1,7 @@
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=""
diff --git a/games/pychess/pychess.SlackBuild b/games/pychess/pychess.SlackBuild
index 6c0616ba6e..4aaeb5bf1a 100644
--- a/games/pychess/pychess.SlackBuild
+++ b/games/pychess/pychess.SlackBuild
@@ -2,7 +2,7 @@
# 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
@@ -25,7 +25,7 @@
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}
@@ -70,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 . \
diff --git a/games/pychess/pychess.info b/games/pychess/pychess.info
index 653135633e..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=""
+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 381301c658..2c6b58633b 100644
--- a/games/pysolfc-extra-cardsets/pysolfc-extra-cardsets.SlackBuild
+++ b/games/pysolfc-extra-cardsets/pysolfc-extra-cardsets.SlackBuild
@@ -2,23 +2,23 @@
# 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
-# 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
@@ -37,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 .
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/pillow6.patch b/games/pysolfc/pillow6.patch
deleted file mode 100644
index 80f0f1868e..0000000000
--- a/games/pysolfc/pillow6.patch
+++ /dev/null
@@ -1,47 +0,0 @@
-From fa20e7f834a1385f383f09a3aa8f4fb4bb86da18 Mon Sep 17 00:00:00 2001
-From: Shlomi Fish <shlomif@shlomifish.org>
-Date: Fri, 5 Apr 2019 17:13:13 +0300
-Subject: [PATCH] Try fixing issue #108 - compat with pillow 6.0
-
-See https://github.com/shlomif/PySolFC/issues/108 .
----
- pysollib/mfxutil.py | 2 +-
- pysollib/ui/tktile/tkutil.py | 11 +++--------
- 2 files changed, 4 insertions(+), 9 deletions(-)
-
-diff --git a/pysollib/mfxutil.py b/pysollib/mfxutil.py
-index a0d0aed4..f461ed10 100644
---- a/pysollib/mfxutil.py
-+++ b/pysollib/mfxutil.py
-@@ -51,7 +51,7 @@
- from PIL import PpmImagePlugin # noqa: F401
- Image._initialized = 2
- USE_PIL = False
--if TOOLKIT == 'tk' and Image and Image.VERSION >= '1.1.7':
-+if TOOLKIT == 'tk' and Image:
- USE_PIL = True
-
- # debug
-diff --git a/pysollib/ui/tktile/tkutil.py b/pysollib/ui/tktile/tkutil.py
-index af43130a..0319e6d3 100644
---- a/pysollib/ui/tktile/tkutil.py
-+++ b/pysollib/ui/tktile/tkutil.py
-@@ -353,15 +353,10 @@ def shadowImage(image, color='#3896f8', factor=0.3):
- if not hasattr(image, '_pil_image'):
- return None
- im = image._pil_image
-- if Image.VERSION >= '1.1.7':
-- # use an alpha image
-- sh = Image.new('RGBA', im.size, color)
-- sh.putalpha(100)
-- out = Image.composite(sh, im, im)
-- return PIL_Image(image=out)
-+ # use an alpha image
- sh = Image.new('RGBA', im.size, color)
-- tmp = Image.blend(im, sh, factor)
-- out = Image.composite(tmp, im, im)
-+ sh.putalpha(100)
-+ out = Image.composite(sh, im, im)
- return PIL_Image(image=out)
-
-
diff --git a/games/pysolfc/pysolfc.SlackBuild b/games/pysolfc/pysolfc.SlackBuild
index 7bfc1d74c0..50886fe3dd 100644
--- a/games/pysolfc/pysolfc.SlackBuild
+++ b/games/pysolfc/pysolfc.SlackBuild
@@ -2,27 +2,22 @@
# 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,16 +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
@@ -62,9 +57,6 @@ 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
@@ -76,36 +68,35 @@ 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 {} \+
-
-patch -p1 < $CWD/pillow6.patch
-
-# 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
@@ -117,14 +108,16 @@ 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
diff --git a/games/pysolfc/pysolfc.info b/games/pysolfc/pysolfc.info
index c853cad8cd..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=""
+REQUIRES="configobj python3-attrs"
MAINTAINER="B. Watson"
-EMAIL="yalhcru@gmail.com"
+EMAIL="urchlay@slackware.uk"
diff --git a/games/qmc2/qmc2.SlackBuild b/games/qmc2/qmc2.SlackBuild
index fbfacce690..1aa4f1be84 100644
--- a/games/qmc2/qmc2.SlackBuild
+++ b/games/qmc2/qmc2.SlackBuild
@@ -32,7 +32,7 @@ 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
@@ -50,8 +50,8 @@ 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"
diff --git a/games/qtads/qtads.SlackBuild b/games/qtads/qtads.SlackBuild
index 81a2722790..5de063950f 100644
--- a/games/qtads/qtads.SlackBuild
+++ b/games/qtads/qtads.SlackBuild
@@ -2,10 +2,12 @@
# 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
@@ -14,7 +16,7 @@
cd $(dirname $0) ; CWD=$(pwd)
PRGNAM=qtads
-VERSION=${VERSION:-3.2.0}
+VERSION=${VERSION:-3.4.0}
BUILD=${BUILD:-1}
TAG=${TAG:-_SBo}
PKGTYPE=${PKGTYPE:-tgz}
diff --git a/games/qtads/qtads.info b/games/qtads/qtads.info
index c76e18842e..c0c67eae0e 100644
--- a/games/qtads/qtads.info
+++ b/games/qtads/qtads.info
@@ -1,10 +1,10 @@
PRGNAM="qtads"
-VERSION="3.2.0"
+VERSION="3.4.0"
HOMEPAGE="https://github.com/realnc/qtads"
-DOWNLOAD="https://github.com/realnc/qtads/releases/download/v3.2.0/qtads-3.2.0-source.tar.xz"
-MD5SUM="7cf50061c0323b17bd49cd9801068eb9"
+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=""
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 cec7a99d30..0000000000
--- a/games/qtsixa/qtsixa.SlackBuild
+++ /dev/null
@@ -1,145 +0,0 @@
-#!/bin/bash
-
-# 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.
-
-cd $(dirname $0) ; CWD=$(pwd)
-
-PRGNAM=qtsixa
-VERSION=${VERSION:-1.5.1}
-BUILD=${BUILD:-1}
-TAG=${TAG:-_SBo}
-PKGTYPE=${PKGTYPE:-tgz}
-
-SRCNAM=QtSixA
-
-if [ -z "$ARCH" ]; then
- case "$( uname -m )" in
- i?86) ARCH=i486 ;;
- 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" = "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
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/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/quakeforge/quakeforge.SlackBuild b/games/quakeforge/quakeforge.SlackBuild
index b283900269..47792429f4 100644
--- a/games/quakeforge/quakeforge.SlackBuild
+++ b/games/quakeforge/quakeforge.SlackBuild
@@ -6,7 +6,7 @@ cd $(dirname $0) ; CWD=$(pwd)
PRGNAM=quakeforge
VERSION=${VERSION:-0.7.0}
-BUILD=${BUILD:-2}
+BUILD=${BUILD:-3}
TAG=${TAG:-_SBo}
PKGTYPE=${PKGTYPE:-tgz}
@@ -98,6 +98,8 @@ 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
diff --git a/games/quakespasm/quakespasm.SlackBuild b/games/quakespasm/quakespasm.SlackBuild
index bf1ea1f095..8139ffc37a 100644
--- a/games/quakespasm/quakespasm.SlackBuild
+++ b/games/quakespasm/quakespasm.SlackBuild
@@ -2,7 +2,7 @@
# Slackware build script for quakespasm
-# Copyright 2018 Matteo Bernardini <ponce@slackbuilds.org>, Pisa, Italy
+# Copyright 2018-2023 Matteo Bernardini <ponce@slackbuilds.org>, Pisa, Italy
# All rights reserved.
#
# Redistribution and use of this script, with or without modification, is
@@ -25,7 +25,7 @@
cd $(dirname $0) ; CWD=$(pwd)
PRGNAM=quakespasm
-VERSION=${VERSION:-0.93.1}
+VERSION=${VERSION:-0.95.1}
BUILD=${BUILD:-1}
TAG=${TAG:-_SBo}
PKGTYPE=${PKGTYPE:-tgz}
@@ -69,7 +69,7 @@ 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.gz
cd $PRGNAM-$VERSION
chown -R root:root .
find -L . \
diff --git a/games/quakespasm/quakespasm.info b/games/quakespasm/quakespasm.info
index 3d8a2cab75..69473df54d 100644
--- a/games/quakespasm/quakespasm.info
+++ b/games/quakespasm/quakespasm.info
@@ -1,8 +1,8 @@
PRGNAM="quakespasm"
-VERSION="0.93.1"
+VERSION="0.95.1"
HOMEPAGE="https://quakespasm.sourceforge.net"
-DOWNLOAD="https://downloads.sourceforge.net/quakespasm/quakespasm-0.93.1.tgz"
-MD5SUM="cfb60350081c5526d2bb3320280c1f8c"
+DOWNLOAD="https://downloads.sourceforge.net/quakespasm/quakespasm-0.95.1.tar.gz"
+MD5SUM="5445eaab666b1a8c229c4900dc9f8542"
DOWNLOAD_x86_64=""
MD5SUM_x86_64=""
REQUIRES=""
diff --git a/games/quarry/quarry.SlackBuild b/games/quarry/quarry.SlackBuild
index 297e397d1c..9b6db85b12 100644
--- a/games/quarry/quarry.SlackBuild
+++ b/games/quarry/quarry.SlackBuild
@@ -32,7 +32,7 @@ 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
@@ -50,8 +50,8 @@ 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"
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 52e4050d45..2f478bb37b 100644
--- a/games/qzdl/qzdl.SlackBuild
+++ b/games/qzdl/qzdl.SlackBuild
@@ -26,6 +26,13 @@
# 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
@@ -35,7 +42,7 @@
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}
@@ -48,9 +55,6 @@ 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
@@ -80,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
@@ -114,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
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/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 6a7e6c9fd5..bcebcba2aa 100644
--- a/games/qzdoom/qzdoom.SlackBuild
+++ b/games/qzdoom/qzdoom.SlackBuild
@@ -2,13 +2,17 @@
# 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.
@@ -34,7 +38,7 @@ cd $(dirname $0) ; CWD=$(pwd)
PRGNAM=qzdoom
VERSION=${VERSION:-2.1.0}
-BUILD=${BUILD:-2}
+BUILD=${BUILD:-3}
TAG=${TAG:-_SBo}
PKGTYPE=${PKGTYPE:-tgz}
@@ -46,9 +50,6 @@ 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
@@ -86,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.
diff --git a/games/qzdoom/qzdoom.info b/games/qzdoom/qzdoom.info
index b8e6554ce8..3a9fc199b4 100644
--- a/games/qzdoom/qzdoom.info
+++ b/games/qzdoom/qzdoom.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/redeclipse/redeclipse.SlackBuild b/games/redeclipse/redeclipse.SlackBuild
index 964239fcc3..c4f99a397e 100644
--- a/games/redeclipse/redeclipse.SlackBuild
+++ b/games/redeclipse/redeclipse.SlackBuild
@@ -23,12 +23,15 @@
# 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}
@@ -40,9 +43,6 @@ 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
@@ -90,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
@@ -115,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
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 75787ecac2..08c3ee8515 100644
--- a/games/rejoystick/rejoystick.SlackBuild
+++ b/games/rejoystick/rejoystick.SlackBuild
@@ -2,27 +2,36 @@
# 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
-# 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
@@ -32,8 +41,8 @@ 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"
@@ -55,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 \
@@ -77,14 +84,16 @@ 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
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 e8271e461c..c4497e69ca 100644
--- a/games/residualvm/residualvm.SlackBuild
+++ b/games/residualvm/residualvm.SlackBuild
@@ -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.
+# 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}
@@ -38,9 +41,6 @@ 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
@@ -70,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" \
@@ -91,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 \
@@ -115,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
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 7eb0e6b2e5..f6da7d4892 100644
--- a/games/retux/retux.SlackBuild
+++ b/games/retux/retux.SlackBuild
@@ -2,14 +2,18 @@
# 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.
@@ -19,16 +23,13 @@
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
-# 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
@@ -46,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:
@@ -58,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 \
@@ -76,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
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 cd46434362..83217500ae 100644
--- a/games/rezerwar/rezerwar.SlackBuild
+++ b/games/rezerwar/rezerwar.SlackBuild
@@ -4,6 +4,8 @@
# 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
@@ -12,14 +14,6 @@ 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
-
TMP=${TMP:-/tmp/SBo}
PKG=$TMP/package-$PRGNAM
OUTPUT=${OUTPUT:-/tmp}
@@ -32,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
@@ -51,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
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/gcc.patch b/games/rlvm/gcc.patch
deleted file mode 100644
index fc4bedfb69..0000000000
--- a/games/rlvm/gcc.patch
+++ /dev/null
@@ -1,24 +0,0 @@
-From 668863d2222b962ee8e7d9829e972ef05c990302 Mon Sep 17 00:00:00 2001
-From: Elliot Glaysher <glaysher@umich.edu>
-Date: Sun, 22 May 2016 10:29:27 -0700
-Subject: [PATCH] Theoretical compile fix for gcc 4 series.
-
-Adds <iostream> to GraphicsObject.
-
-Closes #76.
----
- src/systems/base/graphics_object.cc | 1 +
- 1 file changed, 1 insertion(+)
-
-diff --git a/src/systems/base/graphics_object.cc b/src/systems/base/graphics_object.cc
-index 9490b3b0..af22177d 100644
---- a/src/systems/base/graphics_object.cc
-+++ b/src/systems/base/graphics_object.cc
-@@ -36,6 +36,7 @@
- #include <boost/serialization/shared_ptr.hpp>
-
- #include <algorithm>
-+#include <iostream>
- #include <numeric>
- #include <sstream>
- #include <string>
diff --git a/games/rlvm/rlvm.SlackBuild b/games/rlvm/rlvm.SlackBuild
index 074eecda2f..b369a6d296 100644
--- a/games/rlvm/rlvm.SlackBuild
+++ b/games/rlvm/rlvm.SlackBuild
@@ -23,11 +23,25 @@
# 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}
@@ -39,9 +53,6 @@ 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
@@ -56,7 +67,6 @@ SRC_FLDR=$PRGNAM-$VERSION/
set -e
-
rm -fr $TMP/$SRC_FLDR $PKG
mkdir -p $TMP $PKG $OUTPUT
cd $TMP
@@ -65,49 +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 {} \;
-
-# From upstream
-patch -p1 < $CWD/gcc.patch
-
-scons --release
+ -o -perm 440 -o -perm 400 \) -exec chmod 644 {} \+
-mkdir -p ${PKG}/usr/games ${PKG}/usr/bin
-cp build/release/rlvm $PKG/usr/games
+# 20220502 bkw: in case someone don't have /usr/games in $PATH:
+sed -i '/^Exec/s,=,=/usr/games/,' src/platforms/gtk/rlvm.desktop
-(
- cd $PKG/usr/bin
- ln -s /usr/games/rlvm rlvm
-)
+# 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
-cp -R build/locale/* $PKG/usr/share
+# 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/applications
-cp src/platforms/gtk/rlvm.desktop $PKG/usr/share/applications
-
-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
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 5b9fadded2..a51029214a 100644
--- a/games/robotfindskitten/robotfindskitten.SlackBuild
+++ b/games/robotfindskitten/robotfindskitten.SlackBuild
@@ -25,8 +25,8 @@
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}
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 a545a0a235..18bc84dbb9 100644
--- a/games/roccat-tools/roccat-tools.SlackBuild
+++ b/games/roccat-tools/roccat-tools.SlackBuild
@@ -22,7 +22,7 @@
# 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.
@@ -112,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 -isystem /usr/include/harfbuzz" \
-DCMAKE_INSTALL_PREFIX=/usr \
+ -DCMAKE_C_FLAGS="$(pkg-config --cflags harfbuzz)" \
$HW \
$LUA \
-DCMAKE_BUILD_TYPE=Release ..
diff --git a/games/rocksndiamonds/rocksndiamonds.SlackBuild b/games/rocksndiamonds/rocksndiamonds.SlackBuild
index db1bee0ea5..3b35d152c6 100644
--- a/games/rocksndiamonds/rocksndiamonds.SlackBuild
+++ b/games/rocksndiamonds/rocksndiamonds.SlackBuild
@@ -22,6 +22,8 @@
# 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
@@ -32,15 +34,12 @@ 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
-# 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
@@ -50,8 +49,8 @@ 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
@@ -71,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 \
@@ -100,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
diff --git a/games/rogue/ncurses.patch b/games/rogue/ncurses.patch
deleted file mode 100644
index b0e8735914..0000000000
--- a/games/rogue/ncurses.patch
+++ /dev/null
@@ -1,10 +0,0 @@
---- ./mdport.c 2016-07-23 11:24:54.000000000 +0900
-+++ ./mdport.c 2021-04-10 21:46:28.000004331 +0900
-@@ -84,6 +84,7 @@
- #include <curses.h> /* AIX requires curses.h be included before term.h */
-
- #if defined(HAVE_TERM_H)
-+#define NCURSES_INTERNALS
- #include <term.h>
- #elif defined(HAVE_NCURSES_TERM_H)
- #include <ncurses/term.h>
diff --git a/games/rogue/rogue.SlackBuild b/games/rogue/rogue.SlackBuild
index 95da05d7ce..a63d465e4a 100644
--- a/games/rogue/rogue.SlackBuild
+++ b/games/rogue/rogue.SlackBuild
@@ -2,7 +2,7 @@
# 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,12 @@
# 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}
@@ -38,9 +40,6 @@ 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
@@ -70,17 +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 {} \;
-
-# Patching for ncurses include statement
-patch -p1 < $CWD/ncurses.patch
+ -exec chmod 644 {} \+
CFLAGS="$SLKCFLAGS" \
CXXFLAGS="$SLKCFLAGS" \
@@ -89,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
@@ -109,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
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/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/rott.SlackBuild b/games/rott/rott.SlackBuild
index 030515a094..65efbe4aa9 100644
--- a/games/rott/rott.SlackBuild
+++ b/games/rott/rott.SlackBuild
@@ -2,10 +2,12 @@
# 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.
@@ -14,7 +16,7 @@ cd $(dirname $0) ; CWD=$(pwd)
PRGNAM=rott
VERSION=${VERSION:-1.1.2}
-BUILD=${BUILD:-1}
+BUILD=${BUILD:-3}
TAG=${TAG:-_SBo}
PKGTYPE=${PKGTYPE:-tgz}
@@ -116,7 +118,7 @@ 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
+ convert -resize $size! $CWD/$PRGNAM.png $dir/$PRGNAM.png
done
ln -s ../icons/hicolor/48x48/apps/$PRGNAM.png $PKG/usr/share/pixmaps/$PRGNAM.png
diff --git a/games/rott/rott.info b/games/rott/rott.info
index e934ac7437..aac23bdf06 100644
--- a/games/rott/rott.info
+++ b/games/rott/rott.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/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/z26v3/slack-desc b/games/rpcs3/slack-desc
index 7d795e12e7..79070f7342 100644
--- a/games/z26v3/slack-desc
+++ b/games/rpcs3/slack-desc
@@ -6,14 +6,14 @@
# 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:
+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 2b5e4744ac..a87eb684fa 100644
--- a/games/sauerbraten/sauerbraten.SlackBuild
+++ b/games/sauerbraten/sauerbraten.SlackBuild
@@ -1,4 +1,4 @@
-#!/bin/sh
+#!/bin/bash
# Slackware build script for sauerbraten
@@ -32,18 +32,20 @@
# 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:-2020_12_27}
+VERSION=${VERSION:-2020_12_29}
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
@@ -61,8 +63,8 @@ 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
diff --git a/games/sauerbraten/sauerbraten.info b/games/sauerbraten/sauerbraten.info
index 8b5e61047b..b4f4e3200f 100644
--- a/games/sauerbraten/sauerbraten.info
+++ b/games/sauerbraten/sauerbraten.info
@@ -1,8 +1,8 @@
PRGNAM="sauerbraten"
-VERSION="2020_12_27"
+VERSION="2020_12_29"
HOMEPAGE="http://www.sauerbraten.org/"
-DOWNLOAD="http://downloads.sourceforge.net/sauerbraten/sauerbraten_2020_12_27_linux.tar.bz2"
-MD5SUM="7935ee9ac241a255056f595ca203b4ed"
+DOWNLOAD="http://downloads.sourceforge.net/sauerbraten/sauerbraten_2020_12_29_linux.tar.bz2"
+MD5SUM="b50d018f7dd6259f1fc12b56028a51b5"
DOWNLOAD_x86_64=""
MD5SUM_x86_64=""
REQUIRES=""
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 784ae2b004..c218dabe8b 100644
--- a/games/scid_vs_pc/scid_vs_pc.SlackBuild
+++ b/games/scid_vs_pc/scid_vs_pc.SlackBuild
@@ -23,11 +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:
+# - 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}
@@ -39,9 +47,6 @@ 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
@@ -75,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
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/scummvm/README b/games/scummvm/README
index 907cfb8ecc..db102cf764 100644
--- a/games/scummvm/README
+++ b/games/scummvm/README
@@ -1,8 +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.
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 268f100592..00a21a1f7b 100644
--- a/games/scummvm/scummvm.SlackBuild
+++ b/games/scummvm/scummvm.SlackBuild
@@ -23,10 +23,16 @@
# 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}
@@ -39,9 +45,6 @@ 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
@@ -60,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
@@ -82,10 +86,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 {} \;
-# 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
@@ -97,19 +97,12 @@ LDFLAGS="-fuse-ld=$linker" \
--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)
@@ -119,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
diff --git a/games/scummvm/scummvm.info b/games/scummvm/scummvm.info
index bb2af9ad60..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="http://ponce.cc/slackware/sources/repo/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/sdlpop.SlackBuild b/games/sdlpop/sdlpop.SlackBuild
index 9f93dd4301..45e6ecc8ef 100644
--- a/games/sdlpop/sdlpop.SlackBuild
+++ b/games/sdlpop/sdlpop.SlackBuild
@@ -2,10 +2,11 @@
# 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.
@@ -23,7 +24,7 @@
cd $(dirname $0) ; CWD=$(pwd)
PRGNAM=sdlpop
-VERSION=${VERSION:-1.22}
+VERSION=${VERSION:-1.23}
BUILD=${BUILD:-1}
TAG=${TAG:-_SBo}
PKGTYPE=${PKGTYPE:-tgz}
diff --git a/games/sdlpop/sdlpop.info b/games/sdlpop/sdlpop.info
index 5eaa68d318..93b46958e5 100644
--- a/games/sdlpop/sdlpop.info
+++ b/games/sdlpop/sdlpop.info
@@ -1,10 +1,10 @@
PRGNAM="sdlpop"
-VERSION="1.22"
+VERSION="1.23"
HOMEPAGE="http://www.popot.org/get_the_games.php?game=SDLPoP"
-DOWNLOAD="https://github.com/NagyD/SDLPoP/archive/v1.22/SDLPoP-1.22.zip"
-MD5SUM="c5992b9aa8b71ffd36985ad10ec7564c"
+DOWNLOAD="https://github.com/NagyD/SDLPoP/archive/v1.23/SDLPoP-1.23.zip"
+MD5SUM="ca18e54fb55790b409555f5ccc347f64"
DOWNLOAD_x86_64=""
MD5SUM_x86_64=""
REQUIRES=""
MAINTAINER="B. Watson"
-EMAIL="yalhcru@gmail.com"
+EMAIL="urchlay@slackware.uk"
diff --git a/games/simsu/simsu.SlackBuild b/games/simsu/simsu.SlackBuild
index 5c9f077100..96c9c8259d 100644
--- a/games/simsu/simsu.SlackBuild
+++ b/games/simsu/simsu.SlackBuild
@@ -4,7 +4,7 @@
# 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
@@ -27,7 +27,7 @@
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}
@@ -68,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
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/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/skulltag.SlackBuild b/games/skulltag/skulltag.SlackBuild
index f7adcb1df6..542b18d7de 100644
--- a/games/skulltag/skulltag.SlackBuild
+++ b/games/skulltag/skulltag.SlackBuild
@@ -2,17 +2,18 @@
# 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:-3}
+BUILD=${BUILD:-4}
TAG=${TAG:-_SBo}
PKGTYPE=${PKGTYPE:-tgz}
@@ -84,6 +85,9 @@ mkdir -p \
$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
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/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 28c2550ad2..6d21e079e3 100644
--- a/games/sl/sl.SlackBuild
+++ b/games/sl/sl.SlackBuild
@@ -4,7 +4,7 @@
# 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
@@ -27,14 +27,14 @@
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
@@ -52,8 +52,8 @@ 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 +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 . \
@@ -94,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
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/smc/smc.SlackBuild b/games/smc/smc.SlackBuild
index 90f565dcc4..3f05ae23fc 100644
--- a/games/smc/smc.SlackBuild
+++ b/games/smc/smc.SlackBuild
@@ -5,14 +5,9 @@
# 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
-
-# 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.
+# 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).
# 20211026 bkw: BUILD=3
# - new-style icons (extracted from the windows .ico file).
@@ -34,7 +29,7 @@ cd $(dirname $0) ; CWD=$(pwd)
PRGNAM=smc
VERSION=${VERSION:-20140328}
-BUILD=${BUILD:-2}
+BUILD=${BUILD:-4}
TAG=${TAG:-_SBo}
PKGTYPE=${PKGTYPE:-tgz}
@@ -83,6 +78,8 @@ find -L . -perm /111 -a \! -perm 755 -a -exec chmod 755 {} \+ -o \
./autogen.sh
+export PKG_CONFIG_PATH=/opt/CEGUI0.7/lib$LIBDIRSUFFIX/pkgconfig
+
CFLAGS="$SLKCFLAGS" \
CXXFLAGS="$SLKCFLAGS" \
./configure \
@@ -92,7 +89,7 @@ CXXFLAGS="$SLKCFLAGS" \
--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,
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 ecba34fc37..4a63e6ac0c 100644
--- a/games/smokinguns/smokinguns.SlackBuild
+++ b/games/smokinguns/smokinguns.SlackBuild
@@ -30,7 +30,18 @@ BUILD=${BUILD:-1}
TAG=${TAG:-_SBo}
PKGTYPE=${PKGTYPE:-tgz}
-ARCH=i386 # i386 binary only
+# 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
@@ -84,6 +95,7 @@ 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
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/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.SlackBuild b/games/sms_sdl/sms_sdl.SlackBuild
index e88784700e..b4faea9300 100644
--- a/games/sms_sdl/sms_sdl.SlackBuild
+++ b/games/sms_sdl/sms_sdl.SlackBuild
@@ -2,10 +2,12 @@
# 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.
@@ -30,7 +32,7 @@ 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}
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/snes9x/2afe4a11d43e8767cbeb90372177d4b580384e9a.patch b/games/snes9x/2afe4a11d43e8767cbeb90372177d4b580384e9a.patch
new file mode 100644
index 0000000000..cb08f0d87a
--- /dev/null
+++ b/games/snes9x/2afe4a11d43e8767cbeb90372177d4b580384e9a.patch
@@ -0,0 +1,29 @@
+From 2afe4a11d43e8767cbeb90372177d4b580384e9a Mon Sep 17 00:00:00 2001
+From: BearOso <bearoso@gmail.com>
+Date: Mon, 1 May 2023 11:38:54 -0500
+Subject: [PATCH] CI acting funky. See if this fixes it.
+
+---
+ vulkan/vulkan_context.hpp | 4 +++-
+ 1 file changed, 3 insertions(+), 1 deletion(-)
+
+diff --git a/vulkan/vulkan_context.hpp b/vulkan/vulkan_context.hpp
+index cfc29eda2..33ec20c5f 100644
+--- a/vulkan/vulkan_context.hpp
++++ b/vulkan/vulkan_context.hpp
+@@ -7,6 +7,8 @@
+ #undef WINVER
+ #define WINVER 0x599
+ #endif
++#include <cstdio>
++#include <cstdint>
+ #include "vk_mem_alloc.hpp"
+ #include "vulkan/vulkan.hpp"
+ #include "vulkan_swapchain.hpp"
+@@ -64,4 +66,4 @@ class Context
+ vk::CommandBuffer one_time_use_cmd;
+ };
+
+-} // namespace Vulkan
+\ No newline at end of file
++} // namespace Vulkan
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 859bd56325..7685488ec1 100644
--- a/games/snes9x/README
+++ b/games/snes9x/README
@@ -6,7 +6,10 @@ 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).
+
+When you first run snes9x-gtk:
- 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
@@ -16,24 +19,30 @@ When you first run snes9x:
- 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).
+ 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:
-- This is not the latest release of snes9x. Version 1.60 crashes under
- pre-15.0 Slackware-current, so version 1.59 is packaged here. This
- will be revisited sometime after Slackware 15.0 is released.
-
- The package can optionally include the snes9x libretro core, for use
with RetroArch. By default, the core will be built if RetroArch is
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.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/b383b94c8c94e3a28b09e7dd3d72cac2a783ba55.patch b/games/snes9x/b383b94c8c94e3a28b09e7dd3d72cac2a783ba55.patch
new file mode 100644
index 0000000000..af1866533e
--- /dev/null
+++ b/games/snes9x/b383b94c8c94e3a28b09e7dd3d72cac2a783ba55.patch
@@ -0,0 +1,28 @@
+From b383b94c8c94e3a28b09e7dd3d72cac2a783ba55 Mon Sep 17 00:00:00 2001
+From: BearOso <bearoso@gmail.com>
+Date: Sun, 30 Apr 2023 17:18:39 -0500
+Subject: [PATCH] slang: Fix CI build.
+
+---
+ vulkan/slang_shader.hpp | 3 ++-
+ 1 file changed, 2 insertions(+), 1 deletion(-)
+
+diff --git a/vulkan/slang_shader.hpp b/vulkan/slang_shader.hpp
+index 8af9f48d9..6e24bcd8d 100644
+--- a/vulkan/slang_shader.hpp
++++ b/vulkan/slang_shader.hpp
+@@ -1,6 +1,7 @@
+ #pragma once
+ #include <string>
+ #include <vector>
++#include <cstdint>
+
+ struct SlangShader
+ {
+@@ -101,4 +102,4 @@ struct SlangShader
+ int ubo_binding;
+ std::vector<Uniform> uniforms;
+ std::vector<Sampler> samplers;
+-};
+\ No newline at end of file
++};
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 eb4fdf4f2a..a48e38a0a1 100644
--- a/games/snes9x/snes9x.SlackBuild
+++ b/games/snes9x/snes9x.SlackBuild
@@ -2,81 +2,31 @@
# 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.
-# 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.
+# 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.59}
-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
i?86) ARCH=i586 ;;
@@ -94,6 +44,8 @@ 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=""
@@ -114,62 +66,73 @@ 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.
-tar xvf $CWD/$PRGNAM-$VERSION.tar.?z \
- --wildcards --exclude '*/win32/*' \
- --exclude '*/macosx/*' --exclude '*/unix/*'
+# 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/*'
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
+patch -p1 < $CWD/2afe4a11d43e8767cbeb90372177d4b580384e9a.patch
+patch -p1 < $CWD/b383b94c8c94e3a28b09e7dd3d72cac2a783ba55.patch
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
-# 20211012 bkw: we can now build with gtk+3
-if [ "${GTK3:-yes}" = "yes" ]; then
- GTKDEFS="-D gtk3=true -D gtk2=false"
-else
- GTKDEFS="-D gtk3=false -D gtk2=true"
+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 build
-cd build
- CFLAGS="$SLKCFLAGS" \
- CXXFLAGS="$SLKCFLAGS" \
- meson .. \
- $PULSEOPT $OSSOPT \
- $GTKDEFS \
- --buildtype=release \
- --infodir=/usr/info \
- --libdir=/usr/lib${LIBDIRSUFFIX} \
- --localstatedir=/var \
- --mandir=/usr/man \
- --prefix=/usr \
- --sysconfdir=/etc
- "${NINJA:=ninja}" -v
- DESTDIR=$PKG $NINJA install
- mv $PKG/usr/bin $PKG/usr/games
-cd ..
+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
@@ -188,30 +151,57 @@ 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
diff --git a/games/snes9x/snes9x.info b/games/snes9x/snes9x.info
index 38e6780a01..fda41c81b4 100644
--- a/games/snes9x/snes9x.info
+++ b/games/snes9x/snes9x.info
@@ -1,10 +1,16 @@
PRGNAM="snes9x"
-VERSION="1.59"
+VERSION="1.62.3"
HOMEPAGE="https://github.com/snes9xgit/snes9x"
-DOWNLOAD="https://github.com/snes9xgit/snes9x/archive/1.59/snes9x-1.59.tar.gz"
-MD5SUM="eab4e3123366711e4bcb014fa87d7ead"
+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=""
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 7b75437e56..b6113dcb95 100644
--- a/games/snes9x2010/snes9x2010.SlackBuild
+++ b/games/snes9x2010/snes9x2010.SlackBuild
@@ -3,7 +3,7 @@
# 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
@@ -27,7 +27,8 @@ 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}
@@ -55,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 \
@@ -74,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 \
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/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/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 372ff15ecd..09f0cef254 100644
--- a/games/solarwolf/solarwolf.SlackBuild
+++ b/games/solarwolf/solarwolf.SlackBuild
@@ -2,25 +2,37 @@
# 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}
-
-if [ -z "$ARCH" ]; then
- case "$( uname -m )" in
- i?86) ARCH=i586 ;;
- arm*) ARCH=arm ;;
- *) ARCH=$( uname -m ) ;;
- esac
-fi
+ARCH=noarch
if [ ! -z "${PRINT_PACKAGE_NAME}" ]; then
echo "$PRGNAM-$VERSION-$ARCH-$BUILD$TAG.$PKGTYPE"
@@ -31,20 +43,6 @@ 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
@@ -63,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
@@ -76,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
diff --git a/games/solarwolf/solarwolf.info b/games/solarwolf/solarwolf.info
index 39a7cbb779..e9c2bfe699 100644
--- a/games/solarwolf/solarwolf.info
+++ b/games/solarwolf/solarwolf.info
@@ -5,6 +5,6 @@ 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-params-conversion.patch b/games/speed-dreams/speed-dreams-params-conversion.patch
deleted file mode 100644
index 16bd19d2f7..0000000000
--- a/games/speed-dreams/speed-dreams-params-conversion.patch
+++ /dev/null
@@ -1,22 +0,0 @@
---- src/libs/tgf/params.cpp.orig 2017-02-14 10:32:38.701066427 +0100
-+++ src/libs/tgf/params.cpp 2017-02-14 10:33:19.425879383 +0100
-@@ -3809,7 +3809,7 @@
- if( lastSlash != NULL && key )
- {
- *key = lastSlash + 1;
-- lastSlash = '\0';
-+ lastSlash = NULL;
- }
- else if( key )
- {
---- src/libs/tgfclient/openalmusicplayer.cpp.orig 2017-02-14 13:14:10.870735828 +0100
-+++ src/libs/tgfclient/openalmusicplayer.cpp 2017-02-14 13:15:11.592684153 +0100
-@@ -171,7 +171,7 @@
- {
- char pcm[BUFFERSIZE];
- int size = 0;
-- const char* error = '\0';
-+ const char* error = NULL;
-
- if (!_stream->read(pcm, BUFFERSIZE, &size, error)) {
- GfLogError("OpenALMusicPlayer: Stream read error: %s\n", error);
diff --git a/games/speed-dreams/speed-dreams.SlackBuild b/games/speed-dreams/speed-dreams.SlackBuild
index 04e05a0b7e..16a75f8448 100644
--- a/games/speed-dreams/speed-dreams.SlackBuild
+++ b/games/speed-dreams/speed-dreams.SlackBuild
@@ -3,10 +3,13 @@
# 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}
@@ -21,9 +24,6 @@ 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
@@ -63,12 +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 {} \;
-
-# Thanks fedora
-patch -p0 < $CWD/speed-dreams-params-conversion.patch
+ -o -perm 440 -o -perm 400 \) -exec chmod 644 {} \+
mkdir build
cd build
diff --git a/games/speed-dreams/speed-dreams.info b/games/speed-dreams/speed-dreams.info
index 8f9160537f..bb41a53e4c 100644
--- a/games/speed-dreams/speed-dreams.info
+++ b/games/speed-dreams/speed-dreams.info
@@ -1,14 +1,14 @@
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="enet plib OpenSceneGraph"
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 787eab902a..77adb970a9 100644
--- a/games/spring/spring.SlackBuild
+++ b/games/spring/spring.SlackBuild
@@ -21,27 +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}
-# 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}
@@ -54,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
@@ -71,25 +103,42 @@ 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
diff --git a/games/spring/spring.info b/games/spring/spring.info
index c031842bf5..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 p7zip jdk bullet"
+REQUIRES="DevIL p7zip zulu-openjdk8 bullet"
MAINTAINER="Juan Pablo Cordova E."
EMAIL="jpcordovae@gmail.com"
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 fd71b32e67..526ac57f9a 100644
--- a/games/srb2/srb2.SlackBuild
+++ b/games/srb2/srb2.SlackBuild
@@ -2,14 +2,19 @@
# 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.2.8}
+VERSION=${VERSION:-2.2.11}
BUILD=${BUILD:-1}
TAG=${TAG:-_SBo}
PKGTYPE=${PKGTYPE:-tgz}
@@ -22,9 +27,6 @@ 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
@@ -81,7 +83,11 @@ find -L . -perm /111 -a \! -perm 755 -a -exec chmod 755 {} \+ -o \
( cd assets
mkdir installer
cd installer
- unzip $CWD/SRB2-v$VERSION-Full.zip '*.dta' '*.pk3'
+
+ # 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
@@ -90,6 +96,12 @@ find -L . -perm /111 -a \! -perm 755 -a -exec chmod 755 {} \+ -o \
sed -i 's,usr/games,usr/share/games,g' \
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
cmake \
@@ -98,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
@@ -108,11 +121,22 @@ mkdir -p $PKG/usr/games $PKG/usr/share/games/SRB2 \
$PKG/usr/share/pixmaps $PKG/usr/share/applications \
$PKG/usr/doc/$PRGNAM-$VERSION
# 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
+
+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
diff --git a/games/srb2/srb2.info b/games/srb2/srb2.info
index 5f3e15f020..4fc21718b3 100644
--- a/games/srb2/srb2.info
+++ b/games/srb2/srb2.info
@@ -1,12 +1,12 @@
PRGNAM="srb2"
-VERSION="2.2.8"
+VERSION="2.2.11"
HOMEPAGE="https://www.srb2.org/"
-DOWNLOAD="https://github.com/STJr/SRB2/archive/SRB2_release_2.2.8/SRB2-SRB2_release_2.2.8.tar.gz \
- https://github.com/STJr/SRB2/releases/download/SRB2_release_2.2.8/SRB2-v2.2.8-Full.zip"
-MD5SUM="24485b3fac77cc2de5ff164f29da81f1 \
- 46df8c6d29c1bca8c82af434e8f64313"
+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=""
+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/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 f0ee091cea..4d9e5c94de 100644
--- a/games/steam/steam.SlackBuild
+++ b/games/steam/steam.SlackBuild
@@ -4,7 +4,7 @@
# Copyright 2016 Talos Thoren
# All rights reserved.
-# Copyright 2019-21 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
@@ -27,7 +27,7 @@
cd $(dirname $0) ; CWD=$(pwd)
PRGNAM=steam
-VERSION=${VERSION:-1.0.0.72}
+VERSION=${VERSION:-1.0.0.78}
BUILD=${BUILD:-1}
TAG=${TAG:-_SBo}
PKGTYPE=${PKGTYPE:-tgz}
diff --git a/games/steam/steam.info b/games/steam/steam.info
index c52aadd35c..129cf91e91 100644
--- a/games/steam/steam.info
+++ b/games/steam/steam.info
@@ -1,8 +1,8 @@
PRGNAM="steam"
-VERSION="1.0.0.72"
+VERSION="1.0.0.78"
HOMEPAGE="https://store.steampowered.com/"
-DOWNLOAD="https://repo.steampowered.com/steam/archive/precise/steam_1.0.0.72.tar.gz"
-MD5SUM="53c8ec53d0efd81490f9a2827af6366a"
+DOWNLOAD="https://repo.steampowered.com/steam/archive/precise/steam_1.0.0.78.tar.gz"
+MD5SUM="455f7ad91d850c1819299eb82d3b2758"
DOWNLOAD_x86_64=""
MD5SUM_x86_64=""
REQUIRES="zenity"
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/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 57312a37a5..0000000000
--- a/games/steem/steem.SlackBuild
+++ /dev/null
@@ -1,115 +0,0 @@
-#!/bin/bash
-
-# 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.
-
-cd $(dirname $0) ; CWD=$(pwd)
-
-PRGNAM=steem
-VERSION=${VERSION:-3.2}
-BUILD=${BUILD:-3}
-TAG=${TAG:-_SBo}
-PKGTYPE=${PKGTYPE:-tgz}
-
-# 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
-
-# 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
-
-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
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/stella.SlackBuild b/games/stella/stella.SlackBuild
index 601285b238..746c38af04 100644
--- a/games/stella/stella.SlackBuild
+++ b/games/stella/stella.SlackBuild
@@ -6,7 +6,11 @@
# 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.
@@ -56,7 +60,7 @@
cd $(dirname $0) ; CWD=$(pwd)
PRGNAM=stella
-VERSION=${VERSION:-6.5.3}
+VERSION=${VERSION:-6.7.1}
BUILD=${BUILD:-1}
TAG=${TAG:-_SBo}
PKGTYPE=${PKGTYPE:-tgz}
@@ -80,16 +84,12 @@ 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
@@ -100,6 +100,7 @@ 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 {} \+
diff --git a/games/stella/stella.info b/games/stella/stella.info
index 3e51b91aaf..bea5596596 100644
--- a/games/stella/stella.info
+++ b/games/stella/stella.info
@@ -1,10 +1,10 @@
PRGNAM="stella"
-VERSION="6.5.3"
+VERSION="6.7.1"
HOMEPAGE="https://stella-emu.github.io/"
-DOWNLOAD="https://github.com/stella-emu/stella/releases/download/6.5.3/stella-6.5.3-src.tar.xz"
-MD5SUM="3c8834a80fe3bbc77854101f3f9088c0"
+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=""
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 944ce0bacd..5753faa630 100644
--- a/games/stockfish/stockfish.SlackBuild
+++ b/games/stockfish/stockfish.SlackBuild
@@ -2,7 +2,7 @@
# 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
@@ -25,7 +25,7 @@
cd $(dirname $0) ; CWD=$(pwd)
PRGNAM=stockfish
-VERSION=${VERSION:-11}
+VERSION=${VERSION:-16.1}
BUILD=${BUILD:-1}
TAG=${TAG:-_SBo}
PKGTYPE=${PKGTYPE:-tgz}
@@ -38,9 +38,6 @@ 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
@@ -52,16 +49,12 @@ 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
@@ -70,41 +63,36 @@ 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
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/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.info b/games/stone_soup/stone_soup.info
deleted file mode 100644
index 2d8f9c073b..0000000000
--- a/games/stone_soup/stone_soup.info
+++ /dev/null
@@ -1,10 +0,0 @@
-PRGNAM="stone_soup"
-VERSION="0.26.0"
-HOMEPAGE="http://crawl.develz.org/"
-DOWNLOAD="https://github.com/crawl/crawl/releases/download/0.26.0/stone_soup-0.26.0-nodeps.tar.xz"
-MD5SUM="7d1db2ddad8dc5e7b1ceaa90ead3e48b"
-DOWNLOAD_x86_64=""
-MD5SUM_x86_64=""
-REQUIRES="lua python3-PyYAML"
-MAINTAINER="David Melik"
-EMAIL="dchmelik@gmail.com"
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 d7aaac7302..99b74a19c2 100644
--- a/games/stratagus/stratagus.SlackBuild
+++ b/games/stratagus/stratagus.SlackBuild
@@ -2,7 +2,7 @@
# 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.
@@ -43,9 +43,6 @@ 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
@@ -85,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 \
diff --git a/games/stratagus/stratagus.info b/games/stratagus/stratagus.info
index 217fc84527..d5cfe03044 100644
--- a/games/stratagus/stratagus.info
+++ b/games/stratagus/stratagus.info
@@ -7,4 +7,4 @@ DOWNLOAD_x86_64=""
MD5SUM_x86_64=""
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 85464c4464..bcec5d68ee 100644
--- a/games/stuntrally/stuntrally.SlackBuild
+++ b/games/stuntrally/stuntrally.SlackBuild
@@ -22,12 +22,16 @@
# 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}
@@ -39,9 +43,11 @@ 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.
+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
@@ -51,20 +57,6 @@ 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
@@ -76,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/
@@ -89,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
diff --git a/games/sumeria/sumeria.SlackBuild b/games/sumeria/sumeria.SlackBuild
index 75f4331baf..96f631bec8 100644
--- a/games/sumeria/sumeria.SlackBuild
+++ b/games/sumeria/sumeria.SlackBuild
@@ -2,17 +2,19 @@
# 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}
@@ -35,16 +37,12 @@ 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
@@ -52,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
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/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 31bfb0c66a..d73b533763 100644
--- a/games/supermariowar/supermariowar.SlackBuild
+++ b/games/supermariowar/supermariowar.SlackBuild
@@ -2,16 +2,18 @@
# 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}
@@ -24,9 +26,6 @@ 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
@@ -36,7 +35,7 @@ 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"
@@ -60,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.
@@ -83,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 \
@@ -103,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
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/gcc12.patch b/games/supertux/gcc12.patch
new file mode 100644
index 0000000000..f5e7392c3c
--- /dev/null
+++ b/games/supertux/gcc12.patch
@@ -0,0 +1,11 @@
+diff -upr SuperTux-v0.6.3-Source.orig/external/partio_zip/zip_manager.cpp SuperTux-v0.6.3-Source/external/partio_zip/zip_manager.cpp
+--- SuperTux-v0.6.3-Source.orig/external/partio_zip/zip_manager.cpp 2021-12-23 01:01:58.000000000 +0200
++++ SuperTux-v0.6.3-Source/external/partio_zip/zip_manager.cpp 2022-06-13 15:20:45.305976668 +0300
+@@ -47,6 +47,7 @@ extern "C"{
+ #include <stdexcept>
+ #include <cstring>
+ #include <string>
++#include <memory>
+
+ #include "zip_manager.hpp"
+
diff --git a/games/supertux/missing-include-for-FLT_EPSILON.patch b/games/supertux/missing-include-for-FLT_EPSILON.patch
new file mode 100644
index 0000000000..44bc370a74
--- /dev/null
+++ b/games/supertux/missing-include-for-FLT_EPSILON.patch
@@ -0,0 +1,13 @@
+diff --git a/src/supertux/game_session.cpp b/src/supertux/game_session.cpp
+index 41de52e..a8ebfc9 100644
+--- a/src/supertux/game_session.cpp
++++ b/src/supertux/game_session.cpp
+@@ -14,6 +14,8 @@
+ // You should have received a copy of the GNU General Public License
+ // along with this program. If not, see <http://www.gnu.org/licenses/>.
+
++#include <cfloat>
++
+ #include "supertux/game_session.hpp"
+
+ #include "audio/sound_manager.hpp"
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-0.6.2_rc1-boost-1.73.patch b/games/supertux/supertux-0.6.2_rc1-boost-1.73.patch
deleted file mode 100644
index 55fa95b70f..0000000000
--- a/games/supertux/supertux-0.6.2_rc1-boost-1.73.patch
+++ /dev/null
@@ -1,25 +0,0 @@
-From dec7fb943c532f855e5c0ae2eb39d2d82a46a506 Mon Sep 17 00:00:00 2001
-From: Lars Wendler <polynomial-c@gentoo.org>
-Date: Sat, 9 May 2020 03:04:02 +0200
-Subject: [PATCH] Fix build with boost-1.73
-
----
- src/editor/object_settings.hpp | 2 ++
- 1 file changed, 2 insertions(+)
-
-diff --git a/src/editor/object_settings.hpp b/src/editor/object_settings.hpp
-index bc9049a94..15b77b1e4 100644
---- a/src/editor/object_settings.hpp
-+++ b/src/editor/object_settings.hpp
-@@ -22,6 +22,8 @@
-
- #include "editor/object_option.hpp"
-
-+#include <algorithm>
-+
- class Color;
- enum class Direction;
- enum class WalkMode;
---
-2.26.2
-
diff --git a/games/supertux/supertux.SlackBuild b/games/supertux/supertux.SlackBuild
index a6f59d02d8..26795a4bbd 100644
--- a/games/supertux/supertux.SlackBuild
+++ b/games/supertux/supertux.SlackBuild
@@ -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:
@@ -27,9 +29,9 @@
cd $(dirname $0) ; CWD=$(pwd)
PRGNAM=supertux
-VERSION=${VERSION:-0.6.2_rc.1}
+VERSION=${VERSION:-0.6.3}
SRCVERSION=$(echo $VERSION | tr _ - )
-BUILD=${BUILD:-1}
+BUILD=${BUILD:-2}
TAG=${TAG:-_SBo}
PKGTYPE=${PKGTYPE:-tgz}
@@ -82,7 +84,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/supertux-0.6.2_rc1-boost-1.73.patch
+patch -p1 < $CWD/gcc12.patch
+patch -p1 < $CWD/missing-include-for-FLT_EPSILON.patch
mkdir -p build
cd build
diff --git a/games/supertux/supertux.info b/games/supertux/supertux.info
index 8990cb9784..05ef0681d9 100644
--- a/games/supertux/supertux.info
+++ b/games/supertux/supertux.info
@@ -1,10 +1,10 @@
PRGNAM="supertux"
-VERSION="0.6.2_rc.1"
+VERSION="0.6.3"
HOMEPAGE="https://github.com/SuperTux/supertux"
-DOWNLOAD="https://github.com/SuperTux/supertux/releases/download/v0.6.2-rc.1/SuperTux-v0.6.2-rc.1-Source.tar.gz"
-MD5SUM="e4f1b5b112b729bfda801d058d09b7c0"
+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="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/ftbfs_sdl.patch b/games/supertuxkart/ftbfs_sdl.patch
deleted file mode 100644
index 3bd2d83fb5..0000000000
--- a/games/supertuxkart/ftbfs_sdl.patch
+++ /dev/null
@@ -1,100 +0,0 @@
-Author: Benau <Benau@users.noreply.github.com>
-Description: Fix compilation with latest SDL
-Origin: upstream, https://github.com/supertuxkart/stk-code/commit/61833c9
-Bug-Debian: https://bugs.debian.org/980606
-
---- a/src/input/gamepad_config.cpp
-+++ b/src/input/gamepad_config.cpp
-@@ -32,8 +32,7 @@
- #include "input/sdl_controller.hpp"
- #include <array>
-
--static_assert(SDL_CONTROLLER_BUTTON_MAX - 1 == SDL_CONTROLLER_BUTTON_DPAD_RIGHT, "non continous name");
--enum AxisWithDirection
-+enum AxisWithDirection : unsigned
- {
- SDL_CONTROLLER_AXIS_LEFTX_RIGHT = SDL_CONTROLLER_BUTTON_MAX,
- SDL_CONTROLLER_AXIS_LEFTX_LEFT,
-@@ -140,56 +139,56 @@
- core::stringw GamepadConfig::getBindingAsString(const PlayerAction action) const
- {
- #ifndef SERVER_ONLY
-- std::array<core::stringw, SDL_CONTROLLER_AXIS_WITH_DIRECTION_AND_BUTTON_MAX> readable =
-+ std::map<unsigned, core::stringw> readable =
- {{
-- "A", // SDL_CONTROLLER_BUTTON_A
-- "B", // SDL_CONTROLLER_BUTTON_B
-- "X", // SDL_CONTROLLER_BUTTON_X
-- "Y", // SDL_CONTROLLER_BUTTON_Y
-+ { SDL_CONTROLLER_BUTTON_A, "A" },
-+ { SDL_CONTROLLER_BUTTON_B, "B" },
-+ { SDL_CONTROLLER_BUTTON_X, "X" },
-+ { SDL_CONTROLLER_BUTTON_Y, "Y" },
- // I18N: name of buttons on gamepads
-- _("Back"), // SDL_CONTROLLER_BUTTON_BACK
-+ { SDL_CONTROLLER_BUTTON_BACK, _("Back") },
- // I18N: name of buttons on gamepads
-- _("Guide"), // SDL_CONTROLLER_BUTTON_GUIDE
-+ { SDL_CONTROLLER_BUTTON_GUIDE, _("Guide") },
- // I18N: name of buttons on gamepads
-- _("Start"), // SDL_CONTROLLER_BUTTON_START
-+ { SDL_CONTROLLER_BUTTON_START, _("Start") },
- // I18N: name of buttons on gamepads
-- _("Left thumbstick press"), // SDL_CONTROLLER_BUTTON_LEFTSTICK
-+ { SDL_CONTROLLER_BUTTON_LEFTSTICK, _("Left thumbstick press") },
- // I18N: name of buttons on gamepads
-- _("Right thumbstick press"), // SDL_CONTROLLER_BUTTON_RIGHTSTICK
-+ { SDL_CONTROLLER_BUTTON_RIGHTSTICK, _("Right thumbstick press") },
- // I18N: name of buttons on gamepads
-- _("Left shoulder"), // SDL_CONTROLLER_BUTTON_LEFTSHOULDER
-+ { SDL_CONTROLLER_BUTTON_LEFTSHOULDER, _("Left shoulder") },
- // I18N: name of buttons on gamepads
-- _("Right shoulder"), // SDL_CONTROLLER_BUTTON_RIGHTSHOULDER
-+ { SDL_CONTROLLER_BUTTON_RIGHTSHOULDER, _("Right shoulder") },
- // I18N: name of buttons on gamepads
-- _("DPad up"), // SDL_CONTROLLER_BUTTON_DPAD_UP
-+ { SDL_CONTROLLER_BUTTON_DPAD_UP, _("DPad up") },
- // I18N: name of buttons on gamepads
-- _("DPad down"), // SDL_CONTROLLER_BUTTON_DPAD_DOWN
-+ { SDL_CONTROLLER_BUTTON_DPAD_DOWN, _("DPad down") },
- // I18N: name of buttons on gamepads
-- _("DPad left"), // SDL_CONTROLLER_BUTTON_DPAD_LEFT
-+ { SDL_CONTROLLER_BUTTON_DPAD_LEFT, _("DPad left") },
- // I18N: name of buttons on gamepads
-- _("DPad right"), // SDL_CONTROLLER_BUTTON_DPAD_RIGHT
-+ { SDL_CONTROLLER_BUTTON_DPAD_RIGHT, _("DPad right") },
-
- // Below are extensions after SDL2 header SDL_CONTROLLER_BUTTON_MAX
- // I18N: name of buttons on gamepads
-- _("Left thumbstick right"), // SDL_CONTROLLER_AXIS_LEFTX_RIGHT
-+ { SDL_CONTROLLER_AXIS_LEFTX_RIGHT, _("Left thumbstick right") },
- // I18N: name of buttons on gamepads
-- _("Left thumbstick left"), // SDL_CONTROLLER_AXIS_LEFTX_LEFT
-+ { SDL_CONTROLLER_AXIS_LEFTX_LEFT, _("Left thumbstick left") },
- // I18N: name of buttons on gamepads
-- _("Left thumbstick down"), // SDL_CONTROLLER_AXIS_LEFTY_DOWN
-+ { SDL_CONTROLLER_AXIS_LEFTY_DOWN, _("Left thumbstick down") },
- // I18N: name of buttons on gamepads
-- _("Left thumbstick up"), // SDL_CONTROLLER_AXIS_LEFTY_UP
-+ { SDL_CONTROLLER_AXIS_LEFTY_UP, _("Left thumbstick up") },
- // I18N: name of buttons on gamepads
-- _("Right thumbstick right"), // SDL_CONTROLLER_AXIS_RIGHTX_RIGHT
-+ { SDL_CONTROLLER_AXIS_RIGHTX_RIGHT, _("Right thumbstick right") },
- // I18N: name of buttons on gamepads
-- _("Right thumbstick left"), // SDL_CONTROLLER_AXIS_RIGHTX_LEFT
-+ { SDL_CONTROLLER_AXIS_RIGHTX_LEFT, _("Right thumbstick left") },
- // I18N: name of buttons on gamepads
-- _("Right thumbstick down"), // SDL_CONTROLLER_AXIS_RIGHTY_DOWN
-+ { SDL_CONTROLLER_AXIS_RIGHTY_DOWN, _("Right thumbstick down") },
- // I18N: name of buttons on gamepads
-- _("Right thumbstick up"), // SDL_CONTROLLER_AXIS_RIGHTY_UP
-+ { SDL_CONTROLLER_AXIS_RIGHTY_UP, _("Right thumbstick up") },
- // I18N: name of buttons on gamepads
-- _("Left trigger"), // SDL_CONTROLLER_AXIS_TRIGGERLEFT_UP
-+ { SDL_CONTROLLER_AXIS_TRIGGERLEFT_UP, _("Left trigger") },
- // I18N: name of buttons on gamepads
-- _("Right trigger") // SDL_CONTROLLER_AXIS_TRIGGERRIGHT_UP
-+ { SDL_CONTROLLER_AXIS_TRIGGERRIGHT_UP, _("Right trigger") }
- }};
-
- const Binding &b = getBinding(action);
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 3064298b7c..dca8d9ebc8 100644
--- a/games/supertuxkart/supertuxkart.SlackBuild
+++ b/games/supertuxkart/supertuxkart.SlackBuild
@@ -5,7 +5,7 @@
# 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
@@ -29,8 +29,8 @@ 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}
@@ -42,9 +42,6 @@ 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
@@ -87,12 +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 {} \+
-# Thanks debian!
-patch -p1 < $CWD/ftbfs_sdl.patch
+# 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
diff --git a/games/supertuxkart/supertuxkart.info b/games/supertuxkart/supertuxkart.info
index 7a370c6d6d..371cac655e 100644
--- a/games/supertuxkart/supertuxkart.info
+++ b/games/supertuxkart/supertuxkart.info
@@ -1,8 +1,8 @@
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=""
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/syobonaction.SlackBuild b/games/syobonaction/syobonaction.SlackBuild
index e2e3012803..ba799b9743 100644
--- a/games/syobonaction/syobonaction.SlackBuild
+++ b/games/syobonaction/syobonaction.SlackBuild
@@ -2,7 +2,7 @@
# 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.
diff --git a/games/syobonaction/syobonaction.info b/games/syobonaction/syobonaction.info
index 5019abdbcb..02941485d8 100644
--- a/games/syobonaction/syobonaction.info
+++ b/games/syobonaction/syobonaction.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/taipan/taipan.SlackBuild b/games/taipan/taipan.SlackBuild
index c27b7acc3c..0ad7166d01 100644
--- a/games/taipan/taipan.SlackBuild
+++ b/games/taipan/taipan.SlackBuild
@@ -2,7 +2,7 @@
# 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.
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 f0819feebb..fb646ab79f 100644
--- a/games/talkfilters/talkfilters.SlackBuild
+++ b/games/talkfilters/talkfilters.SlackBuild
@@ -6,7 +6,7 @@ cd $(dirname $0) ; CWD=$(pwd)
PRGNAM=talkfilters
VERSION=${VERSION:-2.3.8}
-BUILD=${BUILD:-1}
+BUILD=${BUILD:-2}
TAG=${TAG:-_SBo}
PKGTYPE=${PKGTYPE:-tgz}
@@ -81,6 +81,8 @@ 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
diff --git a/games/tanglet/tanglet.SlackBuild b/games/tanglet/tanglet.SlackBuild
index 623e0c3888..10b9312d2b 100644
--- a/games/tanglet/tanglet.SlackBuild
+++ b/games/tanglet/tanglet.SlackBuild
@@ -27,25 +27,25 @@
# 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
-# 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
@@ -55,8 +55,8 @@ 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"
@@ -80,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
diff --git a/games/tanglet/tanglet.info b/games/tanglet/tanglet.info
index 14e1739ba4..3baa6c85c8 100644
--- a/games/tanglet/tanglet.info
+++ b/games/tanglet/tanglet.info
@@ -1,8 +1,8 @@
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=""
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/teeworlds/teeworlds.SlackBuild b/games/teeworlds/teeworlds.SlackBuild
index 6af4f5652a..ac69048da9 100644
--- a/games/teeworlds/teeworlds.SlackBuild
+++ b/games/teeworlds/teeworlds.SlackBuild
@@ -2,7 +2,7 @@
# 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
@@ -25,7 +25,7 @@
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}
diff --git a/games/teeworlds/teeworlds.info b/games/teeworlds/teeworlds.info
index 6e89145e39..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"
+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.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/z26v3/doinst.sh b/games/tint/doinst.sh
index 9a8ded3c60..7023b60665 100644
--- a/games/z26v3/doinst.sh
+++ b/games/tint/doinst.sh
@@ -1,7 +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
-
-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/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 0272923ba9..e31a542721 100644
--- a/games/tintin/tintin.SlackBuild
+++ b/games/tintin/tintin.SlackBuild
@@ -31,7 +31,7 @@ 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
@@ -49,8 +49,8 @@ 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"
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 dac4f1b996..1ec74828d4 100644
--- a/games/tome-ah/tome-ah.SlackBuild
+++ b/games/tome-ah/tome-ah.SlackBuild
@@ -2,7 +2,7 @@
# 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
@@ -25,12 +25,14 @@
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}
-SRCVER=$(echo $VERSION | tr _ -)
+GITVER="$( echo $VERSION | cut -d_ -f2 )"
+
+SRCNAM=tome2
if [ -z "$ARCH" ]; then
case "$( uname -m )" in
@@ -71,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 \
@@ -94,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
@@ -108,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
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.sh b/games/tome-ah/tome-gcu.sh
index d71e45b553..b0cc67e6c7 100644
--- a/games/tome-ah/tome.sh
+++ b/games/tome-ah/tome-gcu.sh
@@ -1,6 +1,6 @@
#!/bin/sh
-USERDIR=$(pwd)
+#USERDIR=$(pwd)
GAMES_TOME=/usr/share/games/tome-ah/bin
cd $GAMES_TOME
-exec ${GAMES_TOME}/tome "$@"
-cd $USERDIR
+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/aur-tome4.patch b/games/tome/aur-tome4.patch
new file mode 100644
index 0000000000..7c24269af3
--- /dev/null
+++ b/games/tome/aur-tome4.patch
@@ -0,0 +1,457 @@
+diff -Naur orig/build/runner.lua new/build/runner.lua
+--- orig/build/runner.lua 2014-05-19 10:42:12.000000000 +0200
++++ new/build/runner.lua 2020-10-30 23:01:51.861023690 +0100
+@@ -24,28 +24,28 @@
+ files { "../src/runner/main.c", "../src/getself.c" }
+ links { "m" }
+
+- configuration "linux"
++ filter "system:linux"
+ links { "dl", "SDL", "SDL_ttf", "SDL_image", "SDL_mixer", "GL", "GLU", "m", "pthread" }
+- defines { [[TENGINE_HOME_PATH='".t-engine"']], 'SELFEXE_LINUX' }
++ defines { [[TENGINE_HOME_PATH=".t-engine"]], 'SELFEXE_LINUX' }
+
+- configuration "bsd"
++ filter "system:bsd"
+ links { "SDL", "SDL_ttf", "SDL_image", "SDL_mixer", "GL", "GLU", "m", "pthread" }
+- defines { [[TENGINE_HOME_PATH='".t-engine"']], 'SELFEXE_BSD' }
++ defines { [[TENGINE_HOME_PATH=".t-engine"]], 'SELFEXE_BSD' }
+
+- configuration "windows"
++ filter "system:windows"
+ links { "mingw32", "SDLmain", "SDL", "SDL_ttf", "SDL_image", "SDL_mixer", "OPENGL32", "GLU32", "wsock32" }
+- defines { [[TENGINE_HOME_PATH='"T-Engine"']], 'SELFEXE_WINDOWS' }
++ defines { [[TENGINE_HOME_PATH="T-Engine"]], 'SELFEXE_WINDOWS' }
+ prebuildcommands { "windres ../src/windows/icon.rc -O coff -o ../src/windows/icon.res" }
+ linkoptions { "../src/windows/icon.res" }
+
+- configuration "macosx"
+- defines { [[TENGINE_HOME_PATH='".t-engine"']], "USE_TENGINE_MAIN", 'SELFEXE_MACOSX' }
++ filter "system:macosx"
++ defines { [[TENGINE_HOME_PATH=".t-engine"]], "USE_TENGINE_MAIN", 'SELFEXE_MACOSX' }
+ linkoptions { "-framework SDL", "-framework SDL_image", "-framework SDL_ttf", "-framework SDL_mixer", "-framework Cocoa", "-framework OpenGL" }
+ links { "IOKit" }
+
+- configuration {"Debug"}
++ filter {"Debug"}
+ postbuildcommands { "cp ../bin/Debug/t-engine ../t-engine", }
+- configuration {"Release"}
++ filter {"Release"}
+ postbuildcommands { "cp ../bin/Release/t-engine ../t-engine", }
+
+ project "te4runner"
+@@ -58,19 +58,19 @@
+ files { "../src/runner/runner.c", "../src/physfs.c", "../src/auxiliar.c" }
+ links { "runner-physfs", "runner-lua", "m" }
+
+- configuration "linux"
+- defines { [[TENGINE_HOME_PATH='".t-engine"']], 'SELFEXE_LINUX' }
+- configuration "bsd"
+- defines { [[TENGINE_HOME_PATH='".t-engine"']], 'SELFEXE_BSD' }
+-
+- configuration "windows"
+- defines { [[TENGINE_HOME_PATH='"T-Engine"']], 'SELFEXE_WINDOWS' }
+- configuration "macosx"
+- defines { [[TENGINE_HOME_PATH='".t-engine"']], "USE_TENGINE_MAIN", 'SELFEXE_MACOSX' }
++ filter "system:linux"
++ defines { [[TENGINE_HOME_PATH=".t-engine"]], 'SELFEXE_LINUX' }
++ filter "system:bsd"
++ defines { [[TENGINE_HOME_PATH=".t-engine"]], 'SELFEXE_BSD' }
++
++ filter "system:windows"
++ defines { [[TENGINE_HOME_PATH="T-Engine"]], 'SELFEXE_WINDOWS' }
++ filter "system:macosx"
++ defines { [[TENGINE_HOME_PATH=".t-engine"]], "USE_TENGINE_MAIN", 'SELFEXE_MACOSX' }
+
+- configuration {"Debug"}
++ filter {"Debug"}
+ postbuildcommands { "cp ../bin/Debug/te4runner.tec ../", }
+- configuration {"Release"}
++ filter {"Release"}
+ postbuildcommands { "cp ../bin/Release/te4runner.tec ../", }
+
+ project "runner-physfs"
+@@ -83,13 +83,13 @@
+
+ files { "../src/physfs/*.c", "../src/zlib/*.c", "../src/physfs/archivers/*.c", }
+
+- configuration "linux"
++ filter "system:linux"
+ files { "../src/physfs/platform/unix.c", "../src/physfs/platform/posix.c", }
+- configuration "bsd"
++ filter "system:bsd"
+ files { "../src/physfs/platform/unix.c", "../src/physfs/platform/posix.c", }
+- configuration "windows"
++ filter "system:windows"
+ files { "../src/physfs/platform/windows.c", }
+- configuration "macosx"
++ filter "system:macosx"
+ files { "../src/physfs/platform/macosx.c", "../src/physfs/platform/posix.c", }
+ includedirs { "/Library/Frameworks/SDL.framework/Headers" }
+
+diff -Naur orig/build/te4core.lua new/build/te4core.lua
+--- orig/build/te4core.lua 2019-10-03 15:35:43.000000000 +0200
++++ new/build/te4core.lua 2020-10-30 23:05:15.066698600 +0100
+@@ -40,11 +40,11 @@
+ links { "physfs", "lua".._OPTIONS.lua, "fov", "luasocket", "luaprofiler", "lpeg", "tcodimport", "lxp", "expatstatic", "luamd5", "luazlib", "luabitop", "te4-bzip", "te4-wfc", "utf8proc" }
+ if _OPTIONS.discord then defines { "DISCORD_TE4" } end
+ defines { "_DEFAULT_VIDEOMODE_FLAGS_='SDL_HWSURFACE|SDL_DOUBLEBUF'" }
+- defines { [[TENGINE_HOME_PATH='".t-engine"']], "TE4CORE_VERSION="..TE4CORE_VERSION }
++ defines { [[TENGINE_HOME_PATH=".t-engine"]], "TE4CORE_VERSION="..TE4CORE_VERSION }
+ buildoptions { "-O3" }
+
+- if _OPTIONS.relpath=="32" then linkoptions{"-Wl,-rpath -Wl,\\\$\$ORIGIN/lib "} end
+- if _OPTIONS.relpath=="64" then linkoptions{"-Wl,-rpath -Wl,\\\$\$ORIGIN/lib64 "} end
++ if _OPTIONS.relpath=="32" then linkoptions{"-Wl,-rpath -Wl,\\$$ORIGIN/lib "} end
++ if _OPTIONS.relpath=="64" then linkoptions{"-Wl,-rpath -Wl,\\$$ORIGIN/lib64 "} end
+
+ if _OPTIONS.relpath == "32" then defines{"TE4_RELPATH32"} end
+ if _OPTIONS.relpath == "64" then defines{"TE4_RELPATH64"} end
+@@ -63,7 +63,7 @@
+ prelinkcommands { "i686-pc-mingw32-ranlib ../bin/Debug/*.a" }
+ end
+
+- configuration "macosx"
++ filter "system:macosx"
+ files { "../src/mac/SDL*" }
+ includedirs {
+ "/System/Library/Frameworks/OpenGL.framework/Headers",
+@@ -84,7 +84,7 @@
+ "/usr/local/include",
+ "/usr/local/opt/libpng12/include",
+ }
+- defines { "USE_TENGINE_MAIN", 'SELFEXE_MACOSX', [[TENGINE_HOME_PATH='"/Library/Application Support/T-Engine/"']] }
++ defines { "USE_TENGINE_MAIN", 'SELFEXE_MACOSX', [[TENGINE_HOME_PATH="/Library/Application Support/T-Engine/"]] }
+ linkoptions {
+ "-framework Cocoa",
+ "-framework OpenGL",
+@@ -108,9 +108,9 @@
+ targetdir "."
+ links { "IOKit" }
+
+- configuration "windows"
++ filter "system:windows"
+ links { "mingw32", "SDL2main", "SDL2", "SDL2_ttf", "SDL2_image", "OpenAL32", "vorbisfile", "opengl32", "glu32", "wsock32", "png" }
+- defines { [[TENGINE_HOME_PATH='"T-Engine"']], 'SELFEXE_WINDOWS' }
++ defines { [[TENGINE_HOME_PATH="T-Engine"]], 'SELFEXE_WINDOWS' }
+ if _OPTIONS.wincross then
+ prebuildcommands { "i686-pc-mingw32-windres ../src/windows/icon.rc -O coff -o ../src/windows/icon.res" }
+ else
+@@ -118,33 +118,33 @@
+ end
+ linkoptions { "../src/windows/icon.res" }
+ linkoptions { "-mwindows" }
+- defines { [[TENGINE_HOME_PATH='"T-Engine"']], 'SELFEXE_WINDOWS' }
++ defines { [[TENGINE_HOME_PATH="T-Engine"]], 'SELFEXE_WINDOWS' }
+
+- configuration "linux"
++ filter "system:linux"
+ libdirs {"/opt/SDL-2.0/lib/"}
+ links { "dl", "SDL2", "SDL2_ttf", "SDL2_image", "png", "openal", "vorbisfile", "GL", "GLU", "m", "pthread" }
+ linkoptions { "-Wl,-E" }
+- defines { [[TENGINE_HOME_PATH='".t-engine"']], 'SELFEXE_LINUX' }
++ defines { [[TENGINE_HOME_PATH=".t-engine"]], 'SELFEXE_LINUX' }
+ if steamlin64 then steamlin64() end
+
+- configuration "bsd"
++ filter "system:bsd"
+ libdirs {"/usr/local/lib/"}
+ links { "SDL2", "SDL2_ttf", "SDL2_image", "png", "openal", "vorbisfile", "GL", "GLU", "m", "pthread" }
+- defines { [[TENGINE_HOME_PATH='".t-engine"']], 'SELFEXE_BSD' }
++ defines { [[TENGINE_HOME_PATH=".t-engine"]], 'SELFEXE_BSD' }
+
+- configuration {"Debug"}
++ filter {"Debug"}
+ if _OPTIONS.wincross then
+ postbuildcommands { "cp ../bin/Debug/t-engine.exe ../", }
+ else
+- if os.get() ~= "macosx" then postbuildcommands { "cp ../bin/Debug/t-engine ../", }
++ if os.target() ~= "macosx" then postbuildcommands { "cp ../bin/Debug/t-engine ../", }
+ else postbuildcommands { "cp ../build/t-engine.app/Contents/MacOS/t-engine ../mac/base_app/Contents/MacOS", }
+ end
+ end
+- configuration {"Release"}
++ filter {"Release"}
+ if _OPTIONS.wincross then
+ postbuildcommands { "cp ../bin/Release/t-engine.exe ../", }
+ else
+- if os.get() ~= "macosx" then postbuildcommands { "cp ../bin/Release/t-engine ../", }
++ if os.target() ~= "macosx" then postbuildcommands { "cp ../bin/Release/t-engine ../", }
+ else postbuildcommands { "cp ../build/t-engine.app/Contents/MacOS/t-engine ../mac/base_app/Contents/MacOS", }
+ end
+ end
+@@ -165,13 +165,13 @@
+
+ files { "../src/physfs/*.c", "../src/zlib/*.c", "../src/physfs/archivers/*.c", }
+
+- configuration "linux"
++ filter "system:linux"
+ files { "../src/physfs/platform/unix.c", "../src/physfs/platform/posix.c", }
+- configuration "bsd"
++ filter "system:bsd"
+ files { "../src/physfs/platform/unix.c", "../src/physfs/platform/posix.c", }
+- configuration "windows"
++ filter "system:windows"
+ files { "../src/physfs/platform/windows.c", }
+- configuration "macosx"
++ filter "system:macosx"
+ files { "../src/physfs/platform/macosx.c", "../src/physfs/platform/posix.c", }
+ includedirs { "/Library/Frameworks/SDL2.framework/Headers" }
+
+@@ -230,7 +230,7 @@
+ defines { "LJ_ABI_SOFTFP=0" }
+ end
+
+- configuration {"Debug"}
++ filter {"Debug"}
+ if _OPTIONS.wincross then
+ postbuildcommands {
+ 'gcc -MMD -MP -DGLEW_STATIC -DLUAJIT_TARGET=LUAJIT_ARCH_x86 -DLJ_ARCH_HASFPU=1 -DLJ_ABI_SOFTFP=0 -I../src -I../src/luasocket -I../src/fov -I../src/expat -I../src/lxp -I../src/libtcod_import -I../src/physfs -I../src/zlib -I../src/bzip2 -I../src/luajit2/src -I../src/luajit2/dynasm -g -m32 -ggdb -o "../obj/Debug/minilua/minilua.cross.o" -c "../src/luajit2/src/host/minilua.c"',
+@@ -238,7 +238,7 @@
+ }
+ end
+ postbuildcommands { "cp ../bin/Debug/minilua ../src/luajit2/src/host/", }
+- configuration {"Release"}
++ filter {"Release"}
+ if _OPTIONS.wincross then
+ postbuildcommands {
+ 'gcc -MMD -MP -DGLEW_STATIC -DLUAJIT_TARGET=LUAJIT_ARCH_x86 -DLJ_ARCH_HASFPU=1 -DLJ_ABI_SOFTFP=0 -I../src -I../src/luasocket -I../src/fov -I../src/expat -I../src/lxp -I../src/libtcod_import -I../src/physfs -I../src/zlib -I../src/bzip2 -I../src/luajit2/src -I../src/luajit2/dynasm -g -m32 -ggdb -o "../obj/Release/minilua/minilua.cross.o" -c "../src/luajit2/src/host/minilua.c"',
+@@ -332,7 +332,7 @@
+
+ files { "../src/luajit2/src/host/buildvm*.c" }
+
+- configuration {"Debug"}
++ filter {"Debug"}
+ if _OPTIONS.wincross then
+ postbuildcommands {
+ 'gcc -MMD -MP -DGLEW_STATIC -DLUAJIT_TARGET=LUAJIT_ARCH_x86 -DLJ_ARCH_HASFPU=1 -DLJ_ABI_SOFTFP=0 -I../src -I../src/luasocket -I../src/fov -I../src/expat -I../src/lxp -I../src/libtcod_import -I../src/physfs -I../src/zlib -I../src/bzip2 -I../src/luajit2/src -I../src/luajit2/dynasm -g -m32 -ggdb -o "../obj/Debug/buildvm/buildvm_lib.cross.o" -c "../src/luajit2/src/host/buildvm_lib.c"',
+@@ -344,7 +344,7 @@
+ }
+ end
+ postbuildcommands { "cp ../bin/Debug/buildvm ../src/luajit2/src/", }
+- configuration {"Release"}
++ filter {"Release"}
+ if _OPTIONS.wincross then
+ postbuildcommands {
+ 'gcc -MMD -MP -DGLEW_STATIC -DLUAJIT_TARGET=LUAJIT_ARCH_x86 -DLJ_ARCH_HASFPU=1 -DLJ_ABI_SOFTFP=0 -I../src -I../src/luasocket -I../src/fov -I../src/expat -I../src/lxp -I../src/libtcod_import -I../src/physfs -I../src/zlib -I../src/bzip2 -I../src/luajit2/src -I../src/luajit2/dynasm -g -m32 -ggdb -o "../obj/Release/buildvm/buildvm_lib.cross.o" -c "../src/luajit2/src/host/buildvm_lib.c"',
+@@ -367,7 +367,7 @@
+ files { "../src/luajit2/src/*.c", "../src/luajit2/src/*.s", "../src/luajit2/src/lj_vm.s", "../src/luajit2/src/lj_bcdef.h", "../src/luajit2/src/lj_ffdef.h", "../src/luajit2/src/lj_ffdef.h", "../src/luajit2/src/lj_libdef.h", "../src/luajit2/src/lj_recdef.h", "../src/luajit2/src/lj_folddef.h" }
+ excludes { "../src/luajit2/src/buildvm*.c", "../src/luajit2/src/luajit.c", "../src/luajit2/src/ljamalg.c" }
+
+- configuration "linux"
++ filter "system:linux"
+ if not _OPTIONS["no-cleanup-jit2"] then
+ local list = "../src/luajit2/src/lib_base.c ../src/luajit2/src/lib_math.c ../src/luajit2/src/lib_bit.c ../src/luajit2/src/lib_string.c ../src/luajit2/src/lib_table.c ../src/luajit2/src/lib_io.c ../src/luajit2/src/lib_os.c ../src/luajit2/src/lib_package.c ../src/luajit2/src/lib_debug.c ../src/luajit2/src/lib_jit.c ../src/luajit2/src/lib_ffi.c"
+ prebuildcommands{
+@@ -381,7 +381,7 @@
+ }
+ end
+
+- configuration "bsd"
++ filter "system:bsd"
+ if not _OPTIONS["no-cleanup-jit2"] then
+ local list = "../src/luajit2/src/lib_base.c ../src/luajit2/src/lib_math.c ../src/luajit2/src/lib_bit.c ../src/luajit2/src/lib_string.c ../src/luajit2/src/lib_table.c ../src/luajit2/src/lib_io.c ../src/luajit2/src/lib_os.c ../src/luajit2/src/lib_package.c ../src/luajit2/src/lib_debug.c ../src/luajit2/src/lib_jit.c ../src/luajit2/src/lib_ffi.c"
+ prebuildcommands{
+@@ -395,7 +395,7 @@
+ }
+ end
+
+- configuration "macosx"
++ filter "system:macosx"
+ local list = "../src/luajit2/src/lib_base.c ../src/luajit2/src/lib_math.c ../src/luajit2/src/lib_bit.c ../src/luajit2/src/lib_string.c ../src/luajit2/src/lib_table.c ../src/luajit2/src/lib_io.c ../src/luajit2/src/lib_os.c ../src/luajit2/src/lib_package.c ../src/luajit2/src/lib_debug.c ../src/luajit2/src/lib_jit.c ../src/luajit2/src/lib_ffi.c"
+ prebuildcommands{
+ "../src/luajit2/src/buildvm -m machasm -o ../src/luajit2/src/lj_vm.s",
+@@ -407,7 +407,7 @@
+ "../src/luajit2/src/buildvm -m folddef -o ../src/luajit2/src/lj_folddef.h ../src/luajit2/src/lj_opt_fold.c",
+ }
+
+- configuration "windows"
++ filter "system:windows"
+ if not _OPTIONS["no-cleanup-jit2"] then
+ local list = "../src/luajit2/src/lib_base.c ../src/luajit2/src/lib_math.c ../src/luajit2/src/lib_bit.c ../src/luajit2/src/lib_string.c ../src/luajit2/src/lib_table.c ../src/luajit2/src/lib_io.c ../src/luajit2/src/lib_os.c ../src/luajit2/src/lib_package.c ../src/luajit2/src/lib_debug.c ../src/luajit2/src/lib_jit.c ../src/luajit2/src/lib_ffi.c"
+ prebuildcommands{
+@@ -429,7 +429,7 @@
+ targetname "luasocket"
+ buildoptions { "-O2" }
+
+- configuration "not windows"
++ filter "system:not windows"
+ files {
+ "../src/luasocket/auxiliar.c",
+ "../src/luasocket/buffer.c",
+@@ -445,7 +445,7 @@
+ "../src/luasocket/usocket.c",
+ "../src/luasocket/mime.c",
+ }
+- configuration "windows"
++ filter "system:windows"
+ files {
+ "../src/luasocket/auxiliar.c",
+ "../src/luasocket/buffer.c",
+@@ -583,21 +583,21 @@
+ buildoptions { "-O3", "-std=c++11" }
+ cppconfig("web")
+
+- if _OPTIONS.relpath=="32" then linkoptions{"-Wl,-rpath -Wl,\\\$\$ORIGIN "} end
+- if _OPTIONS.relpath=="64" then linkoptions{"-Wl,-rpath -Wl,\\\$\$ORIGIN "} end
++ if _OPTIONS.relpath=="32" then linkoptions{"-Wl,-rpath -Wl,\\$$ORIGIN "} end
++ if _OPTIONS.relpath=="64" then linkoptions{"-Wl,-rpath -Wl,\\$$ORIGIN "} end
+
+ files { "../src/web-cef3/*.cpp", }
+
+- configuration "macosx"
++ filter "system:macosx"
+ defines { 'SELFEXE_MACOSX' }
+ libdirs {"/Users/darkmac/libs/CEF/cef_binary_3.1547.1597_macosx64/xcodebuild/Release/", "/Users/darkmac/libs/CEF/cef_binary_3.1547.1597_macosx64/Release/"}
+ includedirs {"/Users/darkmac/libs/CEF/cef_binary_3.1547.1597_macosx64/include/", "/Users/darkmac/libs/CEF/cef_binary_3.1547.1597_macosx64/"}
+ links { "cef", "cef_dll_wrapper" }
+
+- configuration "windows"
++ filter "system:windows"
+ defines { 'SELFEXE_WINDOWS' }
+
+- configuration "linux"
++ filter "system:linux"
+ buildoptions{"-Wall -pthread -I/usr/include/gtk-2.0 -I/usr/lib64/gtk-2.0/include -I/usr/include/atk-1.0 -I/usr/include/cairo -I/usr/include/gdk-pixbuf-2.0 -I/usr/include/pango-1.0 -I/usr/include/glib-2.0 -I/usr/lib64/glib-2.0/include -I/usr/include/pixman-1 -I/usr/include/freetype2 -I/usr/include/libpng15 -I/usr/include/libdrm"}
+ libdirs {"/opt/cef3/1547/out/Release/obj.target/", "/opt/cef3/1547/Release/"}
+ includedirs {"/opt/cef3/1547/include/", "/opt/cef3/1547/"}
+@@ -619,19 +619,19 @@
+ "../src/web-cef3/spawn.cpp",
+ }
+
+- configuration "macosx"
++ filter "system:macosx"
+ defines { 'SELFEXE_MACOSX' }
+ libdirs {"/Users/darkmac/libs/CEF/cef_binary_3.1547.1597_macosx64/xcodebuild/Release/", "/Users/darkmac/libs/CEF/cef_binary_3.1547.1597_macosx64/Release/"}
+ includedirs {"/Users/darkmac/libs/CEF/cef_binary_3.1547.1597_macosx64/include/", "/Users/darkmac/libs/CEF/cef_binary_3.1547.1597_macosx64/"}
+ links { "cef", "cef_dll_wrapper" }
+
+- configuration "linux"
++ filter "system:linux"
+ buildoptions{"-Wall -pthread -I/usr/include/gtk-2.0 -I/usr/lib64/gtk-2.0/include -I/usr/include/atk-1.0 -I/usr/include/cairo -I/usr/include/gdk-pixbuf-2.0 -I/usr/include/pango-1.0 -I/usr/include/glib-2.0 -I/usr/lib64/glib-2.0/include -I/usr/include/pixman-1 -I/usr/include/freetype2 -I/usr/include/libpng15 -I/usr/include/libdrm"}
+ libdirs {"/opt/cef3/1547/out/Release/obj.target/", "/opt/cef3/1547/Release/"}
+ includedirs {"/opt/cef3/1547/include/", "/opt/cef3/1547/"}
+ links { "cef", "cef_dll_wrapper" }
+- if _OPTIONS.relpath=="32" then linkoptions{"-Wl,-rpath -Wl,\\\$\$ORIGIN/lib "} end
+- if _OPTIONS.relpath=="64" then linkoptions{"-Wl,-rpath -Wl,\\\$\$ORIGIN/lib64 "} end
++ if _OPTIONS.relpath=="32" then linkoptions{"-Wl,-rpath -Wl,\\$$ORIGIN/lib "} end
++ if _OPTIONS.relpath=="64" then linkoptions{"-Wl,-rpath -Wl,\\$$ORIGIN/lib64 "} end
+ defines { 'SELFEXE_LINUX' }
+ end
+
+@@ -641,7 +641,7 @@
+
+ if _OPTIONS.discord and not _OPTIONS['discord-nolib'] then
+ project "te4-discord"
+- configuration "linux"
++ filter "system:linux"
+ kind "SharedLib"
+ language "C++"
+ targetname "discord-rpc"
+@@ -654,11 +654,11 @@
+ files { "../src/discord-rpc/src/discord-rpc.cpp", "../src/discord-rpc/src/rpc_connection.cpp", "../src/discord-rpc/src/serialization.cpp", }
+ files { "../src/discord-rpc/src/connection_unix.cpp", "../src/discord-rpc/src/discord_register_linux.cpp", }
+
+- configuration "windows"
++ filter "system:windows"
+ kind "SharedLib"
+ -- Empty
+
+- configuration "macosx"
++ filter "system:macosx"
+ kind "SharedLib"
+ -- Empty
+ end
+diff -Naur orig/premake5.lua new/premake5.lua
+--- orig/premake5.lua 2019-09-13 11:46:14.000000000 +0200
++++ new/premake5.lua 2020-10-30 23:04:41.500196031 +0100
+@@ -1,6 +1,6 @@
+ dofile("build/options.lua")
+
+-solution "TEngine"
++workspace "TEngine"
+ configurations { "Debug", "Release" }
+ objdir "obj"
+ defines {"GLEW_STATIC"}
+@@ -30,7 +30,7 @@
+ }
+ else
+ includedirs {
+- "/opt/SDL-2.0/include/SDL2",
++ "/usr/include/SDL2",
+ "/usr/include/GL",
+ }
+ end
+@@ -42,7 +42,7 @@
+ dofile("steamworks/build/steam-def.lua")
+ end
+
+-configuration "bsd"
++filter "system:bsd"
+ libdirs {
+ "/usr/local/lib",
+ }
+@@ -51,7 +51,7 @@
+ }
+
+ if _OPTIONS.wincross then
+-configuration "windows"
++filter "system:windows"
+ libdirs {
+ "/Test/xcompile/local//lib",
+ }
+@@ -60,7 +60,7 @@
+ "/Test/xcompile/local/include",
+ }
+ else
+-configuration "windows"
++filter "system:windows"
+ libdirs {
+ "/c/code/SDL/lib",
+ }
+@@ -72,7 +72,7 @@
+ end
+
+ cppconfig = function(what)
+- if os.get() == "macosx" then
++ if os.target() == "macosx" then
+ if what == "web" then
+ buildoptions { "-stdlib=libstdc++" }
+ linkoptions { "-stdlib=libstdc++" }
+@@ -84,9 +84,8 @@
+ -- links { "stdc++" }
+ end
+
+-configuration "macosx"
+- premake.gcc.cc = 'clang'
+- premake.gcc.cxx = 'clang++'
++filter "system:macosx"
++ toolset("clang")
+
+ buildoptions { "-isysroot /Applications/Xcode.app/Contents/Developer/Platforms/MacOSX.platform/Developer/SDKs/MacOSX10.7.sdk", "-mmacosx-version-min=10.7" }
+ includedirs {
+@@ -95,9 +94,9 @@
+ "/Library/Frameworks/SDL2_ttf.framework/Headers",
+ }
+
+-configuration "Debug"
++filter "Debug"
+ defines { }
+- flags { "Symbols" }
++ symbols "On"
+ buildoptions { "-ggdb" }
+ -- buildoptions { "-O3" }
+ targetdir "bin/Debug"
+@@ -105,9 +104,10 @@
+ if _OPTIONS.pedantic then buildoptions { "-Wall" } end
+ defines {"TE4_LUA_ALLOW_GENERIC_IO"}
+
+-configuration "Release"
++filter "Release"
+ defines { "NDEBUG=1" }
+- flags { "Optimize", "NoFramePointer" }
++ optimize "On"
++ omitframepointer "On"
+ buildoptions { "-O2" }
+ targetdir "bin/Release"
+
diff --git a/games/tome/tome.SlackBuild b/games/tome/tome.SlackBuild
index d7d371fea5..b31b3aa0b6 100644
--- a/games/tome/tome.SlackBuild
+++ b/games/tome/tome.SlackBuild
@@ -2,7 +2,7 @@
# 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
@@ -26,7 +26,7 @@ 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}
@@ -39,9 +39,6 @@ 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
@@ -78,15 +75,15 @@ 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
+cp premake4.lua premake5.lua
+patch -p1 < $CWD/aur-tome4.patch
# build game
-premake4 gmake
+premake5 gmake
env -u ARCH make
find $PKG -print0 | xargs -0 file | grep -e "executable" -e "shared object" | grep ELF \
diff --git a/games/tome/tome.info b/games/tome/tome.info
index 854e79a042..506961c8cf 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"
+REQUIRES="premake5"
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 9212317e27..dce67c8f88 100644
--- a/games/tong/tong.SlackBuild
+++ b/games/tong/tong.SlackBuild
@@ -15,7 +15,7 @@ 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
@@ -33,8 +33,8 @@ 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"
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 5907061aa9..1949a33f8d 100644
--- a/games/torcs/torcs.SlackBuild
+++ b/games/torcs/torcs.SlackBuild
@@ -2,17 +2,18 @@
# 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}
@@ -24,9 +25,6 @@ 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
@@ -59,11 +57,8 @@ 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
@@ -85,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
@@ -110,8 +111,15 @@ 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
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 d6608edba2..cad5b4bd50 100644
--- a/games/trackballs/trackballs.SlackBuild
+++ b/games/trackballs/trackballs.SlackBuild
@@ -2,10 +2,11 @@
# 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)
@@ -18,7 +19,7 @@
cd $(dirname $0) ; CWD=$(pwd)
PRGNAM=trackballs
-VERSION=${VERSION:-1.3.3}
+VERSION=${VERSION:-1.3.4}
BUILD=${BUILD:-1}
TAG=${TAG:-_SBo}
PKGTYPE=${PKGTYPE:-tgz}
@@ -40,9 +41,6 @@ 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=""
diff --git a/games/trackballs/trackballs.info b/games/trackballs/trackballs.info
index a6ed5be6a5..39a5ed71e8 100644
--- a/games/trackballs/trackballs.info
+++ b/games/trackballs/trackballs.info
@@ -1,10 +1,10 @@
PRGNAM="trackballs"
-VERSION="1.3.3"
+VERSION="1.3.4"
HOMEPAGE="https://trackballs.github.io/"
-DOWNLOAD="https://github.com/trackballs/trackballs/archive/v1.3.3/trackballs-1.3.3.tar.gz"
-MD5SUM="404c325211f7ea13339a693c91aa6bf2"
+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=""
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 7d6e366df4..0000000000
--- a/games/transfusion/transfusion.SlackBuild
+++ /dev/null
@@ -1,73 +0,0 @@
-#!/bin/bash
-
-# 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.
-
-cd $(dirname $0) ; CWD=$(pwd)
-
-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}
-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
-
-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
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 adde6a0dd1..8847d81223 100644
--- a/games/trigger-rally/trigger-rally.SlackBuild
+++ b/games/trigger-rally/trigger-rally.SlackBuild
@@ -2,7 +2,8 @@
# 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
@@ -25,22 +26,19 @@
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
-# 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
@@ -50,8 +48,8 @@ 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 +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 \
@@ -80,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
@@ -104,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
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.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/tty-solitaire/tty-solitaire.SlackBuild b/games/tty-solitaire/tty-solitaire.SlackBuild
index 10f64534c3..f85739727e 100644
--- a/games/tty-solitaire/tty-solitaire.SlackBuild
+++ b/games/tty-solitaire/tty-solitaire.SlackBuild
@@ -22,6 +22,8 @@
# 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
@@ -38,9 +40,6 @@ 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
@@ -75,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" \
@@ -87,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
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 40e4bea2b3..f387ced9c4 100644
--- a/games/tuxnes/tuxnes.SlackBuild
+++ b/games/tuxnes/tuxnes.SlackBuild
@@ -2,7 +2,7 @@
# 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)
@@ -20,9 +20,6 @@ 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
@@ -57,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.
@@ -73,7 +70,7 @@ autoheader
automake -a
autoconf
-CFLAGS="$SLKCFLAGS -fno-strict-aliasing" \
+CFLAGS="$SLKCFLAGS -fno-strict-aliasing -fcommon" \
./configure \
--prefix=/usr \
--sysconfdir=/etc \
diff --git a/games/typespeed/typespeed.SlackBuild b/games/typespeed/typespeed.SlackBuild
index d3bb2e2a0b..71718857e2 100644
--- a/games/typespeed/typespeed.SlackBuild
+++ b/games/typespeed/typespeed.SlackBuild
@@ -2,6 +2,8 @@
# 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
@@ -18,9 +20,6 @@ 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
@@ -55,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" \
diff --git a/games/typhoon_2001/README b/games/typhoon_2001/README
index 18d5bcc347..de2c27a94b 100644
--- a/games/typhoon_2001/README
+++ b/games/typhoon_2001/README
@@ -1,15 +1,15 @@
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.
+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 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/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 3807ca82bc..fe73e942b0 100644
--- a/games/typhoon_2001/typhoon_2001.SlackBuild
+++ b/games/typhoon_2001/typhoon_2001.SlackBuild
@@ -1,7 +1,7 @@
#!/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,6 +11,11 @@
# 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.
@@ -20,7 +25,7 @@ cd $(dirname $0) ; CWD=$(pwd)
PRGNAM=typhoon_2001
VERSION=${VERSION:-r3992}
-BUILD=${BUILD:-2}
+BUILD=${BUILD:-4}
TAG=${TAG:-_SBo}
PKGTYPE=${PKGTYPE:-tgz}
@@ -38,6 +43,8 @@ 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
@@ -58,11 +65,12 @@ 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 \
+ $PKGDOC \
$PKG/install \
$PKG/usr/games
-cp -a readme_linux.txt $PKG/usr/doc/$PRGNAM-$VERSION
+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
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/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 608d7eb405..0000000000
--- a/games/ucr/ucr.SlackBuild
+++ /dev/null
@@ -1,96 +0,0 @@
-#!/bin/bash
-
-# 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.
-
-cd $(dirname $0) ; CWD=$(pwd)
-
-PRGNAM=ucr
-VERSION=${VERSION:-0.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 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}
-
-# 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
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/man/uforadiant.6 b/games/ufoai/man/uforadiant.6
index 7ddc3977e0..d30368419a 100644
--- a/games/ufoai/man/uforadiant.6
+++ b/games/ufoai/man/uforadiant.6
@@ -37,7 +37,7 @@ This file is included in the 0ufos.pk3 in your system wide UFO:AI installation d
.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 <yalhcru@gmail.com> for the SlackBuilds.org
+modified slightly by B. Watson <urchlay@slackware.uk> for the SlackBuilds.org
project.
.SH "SEE ALSO"
diff --git a/games/ufoai/ufoai.SlackBuild b/games/ufoai/ufoai.SlackBuild
index 1a3ceef558..bece5c6714 100644
--- a/games/ufoai/ufoai.SlackBuild
+++ b/games/ufoai/ufoai.SlackBuild
@@ -3,7 +3,7 @@
# Slackware build script for ufoai
# Written by Joze Zobec <email removed>
-# Now maintained by B. Watson <yalhcru@gmail.com>
+# 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
@@ -16,6 +16,8 @@
# (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF THIS
# SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
+# 20220430 bkw: BUILD=4: strip game.so.
+
# 20211017 bkw: BUILD=3
# - fix build on -current again:
# - disable building with BFD.
@@ -51,7 +53,7 @@ cd $(dirname $0) ; CWD=$(pwd)
PRGNAM=ufoai
VERSION=${VERSION:-2.5}
-BUILD=${BUILD:-3}
+BUILD=${BUILD:-4}
TAG=${TAG:-_SBo}
PKGTYPE=${PKGTYPE:-tgz}
@@ -168,6 +170,7 @@ make lang
# 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
diff --git a/games/ufoai/ufoai.info b/games/ufoai/ufoai.info
index 27468ac4be..0fc8ada144 100644
--- a/games/ufoai/ufoai.info
+++ b/games/ufoai/ufoai.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/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/ultimatestunts/ultimatestunts.SlackBuild b/games/ultimatestunts/ultimatestunts.SlackBuild
index 434db16ffa..273667e0af 100644
--- a/games/ultimatestunts/ultimatestunts.SlackBuild
+++ b/games/ultimatestunts/ultimatestunts.SlackBuild
@@ -2,7 +2,7 @@
# 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
@@ -39,9 +39,6 @@ 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
@@ -89,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
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 f749debd65..5b8d3c440d 100644
--- a/games/unnethack/unnethack.SlackBuild
+++ b/games/unnethack/unnethack.SlackBuild
@@ -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, 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}
@@ -39,9 +45,6 @@ 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
@@ -67,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 \
@@ -95,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
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/90-mmap_min_addr.conf b/games/unvanquished/90-mmap_min_addr.conf
deleted file mode 100644
index 5ec0f225c5..0000000000
--- a/games/unvanquished/90-mmap_min_addr.conf
+++ /dev/null
@@ -1,5 +0,0 @@
-# 90-mmap_min_addr.conf
-
-# Part of SlackBuilds.org games/unvanquished. See its README for details.
-
-vm.mmap_min_addr = 65536
diff --git a/games/unvanquished/README b/games/unvanquished/README
deleted file mode 100644
index 22a39fc7cd..0000000000
--- a/games/unvanquished/README
+++ /dev/null
@@ -1,11 +0,0 @@
-unvanquished (FPS/RTS Game - Aliens vs. Humans)
-
-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.
-
-Note: this package sets the sysctl variable 'vm.mmap_min_addr' to 65536.
-For more information, see:
-https://sysctl-explorer.net/vm/mmap_min_addr/
-https://wiki.debian.org/mmap_min_addr
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 5a7175642d..0000000000
--- a/games/unvanquished/doinst.sh
+++ /dev/null
@@ -1,20 +0,0 @@
-if [ -x /usr/bin/update-desktop-database ]; then
- /usr/bin/update-desktop-database -q usr/share/applications >/dev/null 2>&1
-fi
-
-[ -x /sbin/sysctl ] && /sbin/sysctl -p etc/sysctl.d/90-mmap_min_addr.conf >/dev/null 2>&1
-
-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 62fa8c2b1c..0000000000
--- a/games/unvanquished/unvanquished.SlackBuild
+++ /dev/null
@@ -1,189 +0,0 @@
-#!/bin/bash
-
-# 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.
-
-# 20210216 bkw: modified by SlackBuilds.org, BUILD=2:
-# - add -fpermissive to get it to compile
-# - include the complete game data (*.pk3 files) so the game actually runs
-# - add sysctl stuff to let the game actually start up
-# Apparently this build never worked and nobody noticed.
-
-cd $(dirname $0) ; CWD=$(pwd)
-
-PRGNAM=unvanquished
-VERSION=${VERSION:-0.50.0}
-BUILD=${BUILD:-2}
-TAG=${TAG:-_SBo}
-PKGTYPE=${PKGTYPE:-tgz}
-
-SRCNAM=Unvanquished
-
-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
-
-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 -fpermissive" \
- -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 game data
-mkdir -p $PKG/usr/share/games/$PRGNAM/pkg
-unzip $CWD/${PRGNAM}_$VERSION.zip '*/pkg/*'
-cp -a ${PRGNAM}_$VERSION/pkg/* $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
-
-# 20210216 bkw: sysctl is needed per
-# https://github.com/Unvanquished/Unvanquished/issues/944
-# It actually makes the game start up.
-mkdir -p $PKG/etc/sysctl.d
-cat $CWD/90-mmap_min_addr.conf > $PKG/etc/sysctl.d/90-mmap_min_addr.conf
-
-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/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 5e6fa53335..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 \
- https://github.com/Unvanquished/Unvanquished/releases/download/v0.50.0/unvanquished_0.50.0.zip \
- http://ponce.cc/slackware/sources/repo/unvanquished/linux32-4.tar.bz2"
-MD5SUM="d9279452fb1a6747f830660b444e7b20 \
- 591662c094a39be954af2e9167e1f075 \
- dd2cb5419bac9a1b81a8a996312e33ff"
-DOWNLOAD_x86_64="http://ponce.cc/slackware/sources/repo/unvanquished/v0.50.0.tar.gz \
- https://github.com/Unvanquished/Unvanquished/releases/download/v0.50.0/unvanquished_0.50.0.zip \
- http://ponce.cc/slackware/sources/repo/unvanquished/linux64-4.tar.bz2"
-MD5SUM_x86_64="d9279452fb1a6747f830660b444e7b20 \
- 591662c094a39be954af2e9167e1f075 \
- 2ba12c71625919ddc282172b74fa4887"
-REQUIRES="GeoIP 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/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/uqm.SlackBuild b/games/uqm/uqm.SlackBuild
index 3fdb3f3a3d..461c59a213 100644
--- a/games/uqm/uqm.SlackBuild
+++ b/games/uqm/uqm.SlackBuild
@@ -2,10 +2,12 @@
# 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
@@ -20,7 +22,7 @@ cd $(dirname $0) ; CWD=$(pwd)
PRGNAM=uqm
VERSION=${VERSION:-0.8.0}
-BUILD=${BUILD:-1}
+BUILD=${BUILD:-2}
TAG=${TAG:-_SBo}
PKGTYPE=${PKGTYPE:-tgz}
diff --git a/games/uqm/uqm.info b/games/uqm/uqm.info
index 07e1149a8e..178c47132f 100644
--- a/games/uqm/uqm.info
+++ b/games/uqm/uqm.info
@@ -1,6 +1,6 @@
PRGNAM="uqm"
VERSION="0.8.0"
-HOMEPAGE="http://sc2.sourceforge.net/"
+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 \
@@ -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/uqm_3domusic/uqm_3domusic.SlackBuild b/games/uqm_3domusic/uqm_3domusic.SlackBuild
index 97f993a264..89c3902274 100644
--- a/games/uqm_3domusic/uqm_3domusic.SlackBuild
+++ b/games/uqm_3domusic/uqm_3domusic.SlackBuild
@@ -2,7 +2,7 @@
# 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.
diff --git a/games/uqm_3domusic/uqm_3domusic.info b/games/uqm_3domusic/uqm_3domusic.info
index a136a0e4b1..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.8.0"
-HOMEPAGE="http://sc2.sourceforge.net/"
+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 d1b83be6c9..a247b55365 100644
--- a/games/uqm_remixes/uqm_remixes.SlackBuild
+++ b/games/uqm_remixes/uqm_remixes.SlackBuild
@@ -2,7 +2,7 @@
# 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.
diff --git a/games/uqm_remixes/uqm_remixes.info b/games/uqm_remixes/uqm_remixes.info
index cd47276aa3..5bb7214031 100644
--- a/games/uqm_remixes/uqm_remixes.info
+++ b/games/uqm_remixes/uqm_remixes.info
@@ -1,6 +1,6 @@
PRGNAM="uqm_remixes"
VERSION="0.8.0"
-HOMEPAGE="http://sc2.sourceforge.net/"
+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 \
@@ -13,4 +13,4 @@ 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 be19aa7a01..b052cb90fa 100644
--- a/games/uqm_voice/uqm_voice.SlackBuild
+++ b/games/uqm_voice/uqm_voice.SlackBuild
@@ -2,7 +2,7 @@
# 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.
diff --git a/games/uqm_voice/uqm_voice.info b/games/uqm_voice/uqm_voice.info
index c9322d2b25..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/"
+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 3f66c8608a..fac92c09aa 100644
--- a/games/ut2004/ut2004.SlackBuild
+++ b/games/ut2004/ut2004.SlackBuild
@@ -36,7 +36,7 @@ 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
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 ba17cf9af8..975d4f5837 100644
--- a/games/vbam/vbam.SlackBuild
+++ b/games/vbam/vbam.SlackBuild
@@ -2,25 +2,42 @@
# 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.
@@ -46,7 +63,7 @@
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}
@@ -54,9 +71,6 @@ 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 ;;
@@ -65,9 +79,6 @@ 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
@@ -107,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
@@ -118,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' \
@@ -137,20 +192,50 @@ cd build
make install DESTDIR=$PKG
cd ..
-strip $PKG/usr/games/$SRCNAM
-ln -s $SRCNAM $PKG/usr/games/$PRGNAM
+# 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
-gzip $PKG/usr/man/man6/$SRCNAM.6
-ln -s $SRCNAM.6.gz $PKG/usr/man/man6/$PRGNAM.6.gz
-
-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
diff --git a/games/vbam/vbam.info b/games/vbam/vbam.info
index e25af905d6..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="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/vcmi-core.info b/games/vcmi-core/vcmi-core.info
deleted file mode 100644
index 9d6a2c6b1d..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="Yth - Arnaud"
-EMAIL="yth@ythogtha.org"
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/vcmi-resolutions.info b/games/vcmi-resolutions/vcmi-resolutions.info
deleted file mode 100644
index 8fa484ba16..0000000000
--- a/games/vcmi-resolutions/vcmi-resolutions.info
+++ /dev/null
@@ -1,10 +0,0 @@
-PRGNAM="vcmi-resolutions"
-VERSION="20141001"
-HOMEPAGE="http://forum.vcmi.eu/viewtopic.php?p=13121"
-DOWNLOAD="http://download.vcmi.eu/mods/repository/vcmi.zip"
-MD5SUM="8a92757943ffca0e97830f0b2ac7d7a3"
-DOWNLOAD_x86_64=""
-MD5SUM_x86_64=""
-REQUIRES="vcmi"
-MAINTAINER="Yth - Arnaud"
-EMAIL="yth@ythogtha.org"
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/vcmi-wog.info b/games/vcmi-wog/vcmi-wog.info
deleted file mode 100644
index ea656ed8f9..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="Yth - Arnaud"
-EMAIL="yth@ythogtha.org"
diff --git a/games/vcmi/vcmi.SlackBuild b/games/vcmi/vcmi.SlackBuild
index 672b08b3d1..ac152b82d8 100644
--- a/games/vcmi/vcmi.SlackBuild
+++ b/games/vcmi/vcmi.SlackBuild
@@ -26,13 +26,11 @@
cd $(dirname $0) ; CWD=$(pwd)
PRGNAM=vcmi
-VERSION=${VERSION:-0.99_gite219e1f}
+VERSION=${VERSION:-1.4.5}
BUILD=${BUILD:-1}
TAG=${TAG:-_SBo}
PKGTYPE=${PKGTYPE:-tgz}
-COMMIT="e219e1febf8defac6d89065a11fdf807a0217142"
-
if [ -z "$ARCH" ]; then
case "$( uname -m )" in
i?86) ARCH=i586 ;;
@@ -62,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=""
@@ -72,9 +73,9 @@ set -e
rm -rf $PKG
mkdir -p $TMP $PKG $OUTPUT
cd $TMP
-rm -rf ${PRGNAM}-${COMMIT}
-tar xvf $CWD/${PRGNAM}-${COMMIT}.tar.gz
-cd ${PRGNAM}-${COMMIT}
+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 \
@@ -94,6 +95,7 @@ cd build
-DLIB_DIR=lib${LIBDIRSUFFIX} \
-DFORCE_BUNDLED_FL=FALSE \
-DENABLE_TEST=OFF \
+ -Wno-dev \
-DCMAKE_BUILD_TYPE=Release ..
make
make install DESTDIR=$PKG
@@ -101,9 +103,10 @@ 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
diff --git a/games/vcmi/vcmi.info b/games/vcmi/vcmi.info
index a8ae56259e..81c72b2fb7 100644
--- a/games/vcmi/vcmi.info
+++ b/games/vcmi/vcmi.info
@@ -1,10 +1,10 @@
PRGNAM="vcmi"
-VERSION="0.99_gite219e1f"
+VERSION="1.4.5"
HOMEPAGE="http://forum.vcmi.eu/portal.php"
-DOWNLOAD="https://github.com/vcmi/vcmi/archive/e219e1f/vcmi-e219e1febf8defac6d89065a11fdf807a0217142.tar.gz"
-MD5SUM="fa65fc779466a974a44389fd233a9e0f"
+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="fuzzylite libminizip"
+REQUIRES="fuzzylite libminizip tbb luajit"
MAINTAINER="Yth - Arnaud"
EMAIL="yth@ythogtha.org"
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/vectoroids.SlackBuild b/games/vectoroids/vectoroids.SlackBuild
index 7e62898809..ccf58afd80 100644
--- a/games/vectoroids/vectoroids.SlackBuild
+++ b/games/vectoroids/vectoroids.SlackBuild
@@ -2,10 +2,11 @@
# 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
@@ -13,7 +14,7 @@ cd $(dirname $0) ; CWD=$(pwd)
PRGNAM=vectoroids
VERSION=${VERSION:-1.1.0}
-BUILD=${BUILD:-2}
+BUILD=${BUILD:-3}
TAG=${TAG:-_SBo}
PKGTYPE=${PKGTYPE:-tgz}
@@ -72,6 +73,7 @@ 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
@@ -103,6 +105,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
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/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/vegastrike.SlackBuild b/games/vegastrike/vegastrike.SlackBuild
index f70910b130..3e46300e89 100644
--- a/games/vegastrike/vegastrike.SlackBuild
+++ b/games/vegastrike/vegastrike.SlackBuild
@@ -22,6 +22,8 @@
# 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
@@ -99,6 +101,7 @@ 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
diff --git a/games/vera/douninst.sh b/games/vera/douninst.sh
index f452accdaa..1bef502028 100644
--- a/games/vera/douninst.sh
+++ b/games/vera/douninst.sh
@@ -1,17 +1,6 @@
-# 20211015 bkw: I was going to have a douninst.sh that runs
-# /usr/bin/install-info --delete /usr/info/xroar.info.gz /usr/info/dir
-# but this won't work because removepkg has already deleted
-# /usr/info/xroar.info.gz before it runs douninst.sh. And you can't
-# use install-info to remove stuff *by name* from /usr/info/dir;
-# the info file must actually exist.
-# So the script has to manually remove the entry from the info dir,
-# and the Emulators section if it's become empty.
-
-if [ -e usr/info/dir ]; then
- # Remove the entry first:
- sed -i '/^\* V\.E\.R.\A\.:/d' usr/info/dir
- # If the Dictionaries section is empty now, remove it too:
- if grep -A1 '^Dictionaries$' usr/info/dir | tail -1 | grep -q '^$'; then
- sed -i '/^Dictionaries$/,+1d' usr/info/dir
- 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/vera/vera.SlackBuild b/games/vera/vera.SlackBuild
index 7aaa438640..6c2eca316d 100644
--- a/games/vera/vera.SlackBuild
+++ b/games/vera/vera.SlackBuild
@@ -2,10 +2,12 @@
# 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.
@@ -22,7 +24,7 @@ cd $(dirname $0) ; CWD=$(pwd)
PRGNAM=vera
VERSION=${VERSION:-1.24}
-BUILD=${BUILD:-2}
+BUILD=${BUILD:-3}
TAG=${TAG:-_SBo}
PKGTYPE=${PKGTYPE:-tgz}
diff --git a/games/vera/vera.info b/games/vera/vera.info
index c18a8e83e3..1ca7aa9e8d 100644
--- a/games/vera/vera.info
+++ b/games/vera/vera.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/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/vitaquake2-libretro/vitaquake2-libretro.SlackBuild b/games/vitaquake2-libretro/vitaquake2-libretro.SlackBuild
index 4533a5be96..07d7a0b456 100644
--- a/games/vitaquake2-libretro/vitaquake2-libretro.SlackBuild
+++ b/games/vitaquake2-libretro/vitaquake2-libretro.SlackBuild
@@ -2,7 +2,7 @@
# 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
@@ -25,7 +25,8 @@
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}
@@ -70,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 \
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/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/vkQuake.SlackBuild b/games/vkQuake/vkQuake.SlackBuild
index 693524623b..b083a5a943 100644
--- a/games/vkQuake/vkQuake.SlackBuild
+++ b/games/vkQuake/vkQuake.SlackBuild
@@ -25,7 +25,7 @@
cd $(dirname $0) ; CWD=$(pwd)
PRGNAM=vkQuake
-VERSION=${VERSION:-1.05.2}
+VERSION=${VERSION:-1.30.1}
BUILD=${BUILD:-1}
TAG=${TAG:-_SBo}
PKGTYPE=${PKGTYPE:-tgz}
@@ -78,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
@@ -88,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
diff --git a/games/vkQuake/vkQuake.info b/games/vkQuake/vkQuake.info
index dd16e7b183..c434fe3f89 100644
--- a/games/vkQuake/vkQuake.info
+++ b/games/vkQuake/vkQuake.info
@@ -1,10 +1,10 @@
PRGNAM="vkQuake"
-VERSION="1.05.2"
+VERSION="1.30.1"
HOMEPAGE="https://github.com/Novum/vkQuake"
DOWNLOAD="UNSUPPORTED"
MD5SUM=""
-DOWNLOAD_x86_64="https://github.com/Novum/vkQuake/archive/1.05.2/vkQuake-1.05.2.tar.gz"
-MD5SUM_x86_64="1f832dd12c5ce03387e9e5b651b32846"
-REQUIRES=""
+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 2a598a05f4..643d4e9401 100644
--- a/games/vms-empire/vms-empire.SlackBuild
+++ b/games/vms-empire/vms-empire.SlackBuild
@@ -22,11 +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, 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}
@@ -38,9 +44,6 @@ 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
@@ -75,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
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 327e9a1c19..997e071086 100644
--- a/games/voxelands/voxelands.SlackBuild
+++ b/games/voxelands/voxelands.SlackBuild
@@ -26,14 +26,14 @@
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
@@ -51,8 +51,8 @@ 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,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 \
diff --git a/games/voxelands/voxelands.info b/games/voxelands/voxelands.info
index c905cca131..8200d5bbbf 100644
--- a/games/voxelands/voxelands.info
+++ b/games/voxelands/voxelands.info
@@ -1,8 +1,8 @@
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="irrlicht"
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/qtsixa/slack-desc b/games/wadext/slack-desc
index da6ea44334..a7d1601014 100644
--- a/games/qtsixa/slack-desc
+++ b/games/wadext/slack-desc
@@ -6,14 +6,14 @@
# 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:
+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 0a4d71bc1e..7d00b7dfac 100644
--- a/games/wargus/wargus.SlackBuild
+++ b/games/wargus/wargus.SlackBuild
@@ -2,17 +2,22 @@
# 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}
@@ -24,9 +29,6 @@ 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
@@ -62,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 \
@@ -84,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."
diff --git a/games/wargus/wargus.info b/games/wargus/wargus.info
index 0d3daa3628..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 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/warsow/warsow.SlackBuild b/games/warsow/warsow.SlackBuild
index f54a9898fb..de586e6a7e 100644
--- a/games/warsow/warsow.SlackBuild
+++ b/games/warsow/warsow.SlackBuild
@@ -24,6 +24,8 @@
# 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
@@ -38,9 +40,6 @@ case "$( uname -m )" in
*) 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
@@ -85,11 +84,16 @@ 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}/"
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 aef3005b2f..e7f643a08f 100644
--- a/games/warzone2100/warzone2100.SlackBuild
+++ b/games/warzone2100/warzone2100.SlackBuild
@@ -34,7 +34,7 @@
cd $(dirname $0) ; CWD=$(pwd)
PRGNAM=warzone2100
-VERSION=${VERSION:-4.2.1}
+VERSION=${VERSION:-4.4.2}
BUILD=${BUILD:-1}
TAG=${TAG:-_SBo}
PKGTYPE=${PKGTYPE:-tgz}
@@ -68,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=""
@@ -92,20 +95,23 @@ mkdir -p build
cd build
cmake \
-DCMAKE_C_FLAGS:STRING="$SLKCFLAGS" \
- -DCMAKE_CXX_FLAGS:STRING="$SLKCFLAGS" \
+ -DCMAKE_CXX_FLAGS:STRING="$SLKCFLAGS -Wno-error=alloc-zero -Wno-error=array-bounds" \
-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
diff --git a/games/warzone2100/warzone2100.info b/games/warzone2100/warzone2100.info
index 32d7798a3e..87da2e7dbc 100644
--- a/games/warzone2100/warzone2100.info
+++ b/games/warzone2100/warzone2100.info
@@ -1,8 +1,8 @@
PRGNAM="warzone2100"
-VERSION="4.2.1"
+VERSION="4.4.2"
HOMEPAGE="https://wz2100.net"
-DOWNLOAD="https://github.com/Warzone2100/warzone2100/releases/download/4.2.1/warzone2100_src.tar.xz"
-MD5SUM="6c981de1566e2fc67a4faca39f83159d"
+DOWNLOAD="https://github.com/Warzone2100/warzone2100/releases/download/4.4.2/warzone2100_src.tar.xz"
+MD5SUM="095026d76fa3957e513d9012ebf4376a"
DOWNLOAD_x86_64=""
MD5SUM_x86_64=""
REQUIRES="physfs"
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 12746df47e..c97048f28b 100644
--- a/games/waterCloset/waterCloset.SlackBuild
+++ b/games/waterCloset/waterCloset.SlackBuild
@@ -9,12 +9,19 @@
# 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}
@@ -26,9 +33,6 @@ 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
@@ -57,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
diff --git a/games/waterCloset/waterCloset.info b/games/waterCloset/waterCloset.info
index 5614988911..1bf7943b7b 100644
--- a/games/waterCloset/waterCloset.info
+++ b/games/waterCloset/waterCloset.info
@@ -1,7 +1,7 @@
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=""
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 a585dfc7db..3af210423e 100644
--- a/games/wesnoth/wesnoth.SlackBuild
+++ b/games/wesnoth/wesnoth.SlackBuild
@@ -4,7 +4,7 @@
# 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
@@ -29,7 +29,7 @@
cd $(dirname $0) ; CWD=$(pwd)
PRGNAM=wesnoth
-VERSION=${VERSION:-1.14.17}
+VERSION=${VERSION:-1.16.11}
BUILD=${BUILD:-1}
TAG=${TAG:-_SBo}
PKGTYPE=${PKGTYPE:-tgz}
@@ -42,9 +42,6 @@ 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
@@ -86,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 \
@@ -105,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
diff --git a/games/wesnoth/wesnoth.info b/games/wesnoth/wesnoth.info
index 0486871ecb..c64864bc2c 100644
--- a/games/wesnoth/wesnoth.info
+++ b/games/wesnoth/wesnoth.info
@@ -1,8 +1,8 @@
PRGNAM="wesnoth"
-VERSION="1.14.17"
+VERSION="1.16.11"
HOMEPAGE="http://www.wesnoth.org"
-DOWNLOAD="http://downloads.sourceforge.net/wesnoth/wesnoth-1.14.17.tar.bz2"
-MD5SUM="5ef1d8045fd52f17852b726826c5c52a"
+DOWNLOAD="http://downloads.sourceforge.net/wesnoth/wesnoth-1.16.11.tar.bz2"
+MD5SUM="926fce1f3b89e9cf409437a4b78802e6"
DOWNLOAD_x86_64=""
MD5SUM_x86_64=""
REQUIRES=""
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/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 6a20c5e875..3ac421ec9e 100644
--- a/games/wolf4sdl/README
+++ b/games/wolf4sdl/README
@@ -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/wolf4sdl-spear-demo.desktop b/games/wolf4sdl/desktop/wolf4sdl-spear-demo.desktop
index 0d93ff5086..7777b6b19c 100644
--- a/games/wolf4sdl/wolf4sdl-spear-demo.desktop
+++ b/games/wolf4sdl/desktop/wolf4sdl-spear-demo.desktop
@@ -2,6 +2,6 @@
Type=Application
Name=Wolf3D Spear of Destiny (Demo)
Icon=wolf4sdl
-Exec=/usr/games/wolf4sdl-spear-demo --windowed-mouse --res 960 720
+Exec=/usr/games/wolf4sdl-spear-demo
Terminal=false
Categories=Game;ActionGame;
diff --git a/games/wolf4sdl/wolf4sdl-spear-full.desktop b/games/wolf4sdl/desktop/wolf4sdl-spear-full.desktop
index f231f6c1e1..055c3eee81 100644
--- a/games/wolf4sdl/wolf4sdl-spear-full.desktop
+++ b/games/wolf4sdl/desktop/wolf4sdl-spear-full.desktop
@@ -2,6 +2,6 @@
Type=Application
Name=Wolf3D Spear of Destiny (Full Version)
Icon=wolf4sdl
-Exec=/usr/games/wolf4sdl-spear-full --windowed-mouse --res 960 720
+Exec=/usr/games/wolf4sdl-spear-full
Terminal=false
Categories=Game;ActionGame;
diff --git a/games/wolf4sdl/wolf4sdl-wolf3d-demo.desktop b/games/wolf4sdl/desktop/wolf4sdl-wolf3d-demo.desktop
index de0e76225b..9c9e850ce2 100644
--- a/games/wolf4sdl/wolf4sdl-wolf3d-demo.desktop
+++ b/games/wolf4sdl/desktop/wolf4sdl-wolf3d-demo.desktop
@@ -2,6 +2,6 @@
Type=Application
Name=Wolfenstein 3D (Demo)
Icon=wolf4sdl
-Exec=/usr/games/wolf4sdl-wolf3d-demo --windowed-mouse --res 960 720
+Exec=/usr/games/wolf4sdl-wolf3d-demo
Terminal=false
Categories=Game;ActionGame;
diff --git a/games/wolf4sdl/wolf4sdl-wolf3d-full.desktop b/games/wolf4sdl/desktop/wolf4sdl-wolf3d-full.desktop
index b6d62ef2c6..83752d7852 100644
--- a/games/wolf4sdl/wolf4sdl-wolf3d-full.desktop
+++ b/games/wolf4sdl/desktop/wolf4sdl-wolf3d-full.desktop
@@ -2,6 +2,6 @@
Type=Application
Name=Wolfenstein 3D (Full Version)
Icon=wolf4sdl
-Exec=/usr/games/wolf4sdl-wolf3d-full --windowed-mouse --res 960 720
+Exec=/usr/games/wolf4sdl-wolf3d-full
Terminal=false
Categories=Game;ActionGame;
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
index 04cf9b9c6f..018dc8de48 100644
--- a/games/wolf4sdl/icons/128.png
+++ b/games/wolf4sdl/icons/128.png
Binary files differ
diff --git a/games/wolf4sdl/icons/16.png b/games/wolf4sdl/icons/16.png
index 98efb19983..7632b41ad0 100644
--- a/games/wolf4sdl/icons/16.png
+++ 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
index 01d716cae7..8deb831fd0 100644
--- a/games/wolf4sdl/icons/32.png
+++ b/games/wolf4sdl/icons/32.png
Binary files differ
diff --git a/games/wolf4sdl/icons/48.png b/games/wolf4sdl/icons/48.png
index e3b560ba10..01e8c8d95f 100644
--- a/games/wolf4sdl/icons/48.png
+++ 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.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 b09ba8af91..70b54d0409 100644
--- a/games/wolf4sdl/wolf4sdl.SlackBuild
+++ b/games/wolf4sdl/wolf4sdl.SlackBuild
@@ -2,17 +2,25 @@
# 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}
-BUILD=${BUILD:-2}
+VERSION=${VERSION:-2.0+20210408_f31f41a}
+BUILD=${BUILD:-1}
TAG=${TAG:-_SBo}
PKGTYPE=${PKGTYPE:-tgz}
@@ -54,18 +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 /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
@@ -78,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,
@@ -90,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
@@ -98,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
@@ -106,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
@@ -126,8 +152,7 @@ for i in {wolf,spear}-{demo,full}; do
ln -s $PRGNAM.6.gz $PKGMAN6/$PRGNAM-$i.6.gz
done
-# Icons extracted from macosx/wolf4sdl.icns with icns2png.
-# 48.png scaled down from 512.png with 'convert -resize'.
+# 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 )
@@ -141,15 +166,15 @@ mkdir -p $PKG/usr/share/applications $PKG/usr/share/pixmaps
ln -s ../icons/hicolor/48x48/apps/$PRGNAM.png $PKG/usr/share/pixmaps/$PRGNAM.png
# .desktop files written for this build.
-cp $CWD/*.desktop $PKG/usr/share/applications/
+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
diff --git a/games/wolf4sdl/wolf4sdl.info b/games/wolf4sdl/wolf4sdl.info
index f80883524a..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 \
+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="303f340598bfbe3440523c1ddb9f52e8 \
+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 5c7949373c..e00930f81a 100644
--- a/games/wordwarvi/wordwarvi.SlackBuild
+++ b/games/wordwarvi/wordwarvi.SlackBuild
@@ -2,7 +2,7 @@
# 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.
diff --git a/games/wordwarvi/wordwarvi.info b/games/wordwarvi/wordwarvi.info
index 0a80d673d2..109ff99aa2 100644
--- a/games/wordwarvi/wordwarvi.info
+++ b/games/wordwarvi/wordwarvi.info
@@ -7,4 +7,4 @@ 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/worldofpadman/worldofpadman.SlackBuild b/games/worldofpadman/worldofpadman.SlackBuild
index 1252b38663..29b81315e5 100644
--- a/games/worldofpadman/worldofpadman.SlackBuild
+++ b/games/worldofpadman/worldofpadman.SlackBuild
@@ -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.
+# 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}
@@ -34,15 +43,20 @@ 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
-# 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 [ "$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
@@ -65,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
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/vcmi-core/vcmi-core.SlackBuild b/games/x16emu/x16emu.SlackBuild
index 957b68130c..410b85f618 100644
--- a/games/vcmi-core/vcmi-core.SlackBuild
+++ b/games/x16emu/x16emu.SlackBuild
@@ -1,8 +1,8 @@
#!/bin/bash
-# Slackware build script for vcmi-core
-
-# Copyright 2015-2021 Petar Petrov slackalaxy@gmail.com
+# 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
@@ -11,7 +11,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,
@@ -24,14 +24,19 @@
cd $(dirname $0) ; CWD=$(pwd)
-PRGNAM=vcmi-core
-SRCNAM=core
-VERSION=${VERSION:-20130724}
-BUILD=${BUILD:-2}
+PRGNAM=x16emu
+VERSION=${VERSION:-r46}
+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
+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
@@ -45,15 +50,17 @@ TMP=${TMP:-/tmp/SBo}
PKG=$TMP/package-$PRGNAM
OUTPUT=${OUTPUT:-/tmp}
-set -e
+set -eu
+
+if [ "$ARCH" != "x86_64" ]; then
+ printf "%s is not supported...\n" "$ARCH"
+ exit 1
+fi
rm -rf $PKG
-mkdir -p $TMP $PKG $OUTPUT
-cd $TMP
-rm -rf $PRGNAM-$VERSION
-mkdir $PRGNAM-$VERSION
-cd $PRGNAM-$VERSION
-unzip $CWD/$SRCNAM.zip
+mkdir -p $TMP $PKG/opt/$PRGNAM $OUTPUT
+cd $PKG/opt/$PRGNAM
+unzip $CWD/${PRGNAM}_linux-${ARCH}-${VERSION}.zip
chown -R root:root .
find -L . \
@@ -62,13 +69,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 {} \;
-mkdir -p $PKG/usr/share/vcmi
-[ -d Mods ] && cp -a Mods $PKG/usr/share/vcmi
+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
-# This is already in the vcmi package
-[ -d $PKG/usr/share/vcmi/Mods/vcmi/Data/s ] && rm -rf $PKG/usr/share/vcmi/Mods/vcmi/Data/s
+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
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/xarchon.SlackBuild b/games/xarchon/xarchon.SlackBuild
index 5c447c9a06..b973243601 100644
--- a/games/xarchon/xarchon.SlackBuild
+++ b/games/xarchon/xarchon.SlackBuild
@@ -2,7 +2,7 @@
# 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.
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 7f30b85d3c..1db1890291 100644
--- a/games/xcowsay/xcowsay.SlackBuild
+++ b/games/xcowsay/xcowsay.SlackBuild
@@ -2,10 +2,12 @@
# 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.
@@ -25,8 +27,8 @@
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}
diff --git a/games/xcowsay/xcowsay.info b/games/xcowsay/xcowsay.info
index b868fc0c63..f7014ca927 100644
--- a/games/xcowsay/xcowsay.info
+++ b/games/xcowsay/xcowsay.info
@@ -1,10 +1,10 @@
PRGNAM="xcowsay"
-VERSION="1.5.1"
+VERSION="1.6"
HOMEPAGE="https://www.doof.me.uk/xcowsay/"
-DOWNLOAD="https://github.com/nickg/xcowsay/releases/download/r1.5.1/xcowsay-1.5.1.tar.gz"
-MD5SUM="e57cfd50979de8cd590968a8d3230eaa"
+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 dd336b9f8d..0915b27400 100644
--- a/games/xcpc/xcpc.SlackBuild
+++ b/games/xcpc/xcpc.SlackBuild
@@ -25,7 +25,7 @@
cd $(dirname $0) ; CWD=$(pwd)
PRGNAM=xcpc
-VERSION=${VERSION:-20070122}
+VERSION=${VERSION:-0.37.0}
BUILD=${BUILD:-1}
TAG=${TAG:-_SBo}
PKGTYPE=${PKGTYPE:-tgz}
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/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/etlegacy/files/etlegacy.desktop b/games/xonotic/xonotic-sdl.desktop
index 2618c0c13e..fe5b8e4832 100644
--- a/games/etlegacy/files/etlegacy.desktop
+++ b/games/xonotic/xonotic-sdl.desktop
@@ -1,9 +1,8 @@
[Desktop Entry]
-Name=ETLegacy
-Comment=ET: Legacy (Collaborative online FPS)
-Exec=etl
-Icon=etl
-Terminal=false
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 a2e3c220be..5c08a58476 100644
--- a/games/xonotic/xonotic.SlackBuild
+++ b/games/xonotic/xonotic.SlackBuild
@@ -25,8 +25,8 @@
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}
@@ -38,9 +38,6 @@ 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
@@ -85,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 \
@@ -99,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
@@ -111,19 +104,27 @@ 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
diff --git a/games/xonotic/xonotic.info b/games/xonotic/xonotic.info
index 9479e96ae8..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=""
MAINTAINER="S. S. Bolokanar"
-EMAIL="sbolokanov@abv.bg"
+EMAIL="bolokanar@bulgars.org"
diff --git a/games/xroar-roms/xroar-roms.SlackBuild b/games/xroar-roms/xroar-roms.SlackBuild
index 3bf8c6ceae..7bc0d9aac9 100644
--- a/games/xroar-roms/xroar-roms.SlackBuild
+++ b/games/xroar-roms/xroar-roms.SlackBuild
@@ -2,7 +2,7 @@
# 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,11 +11,13 @@
# 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
@@ -45,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
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/README b/games/xroar/README
index 984eac16fd..35880e4f6a 100644
--- a/games/xroar/README
+++ b/games/xroar/README
@@ -1,9 +1,9 @@
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
diff --git a/games/xroar/README_SBo.txt b/games/xroar/README_SBo.txt
index ec19bf5505..0f685f6196 100644
--- a/games/xroar/README_SBo.txt
+++ b/games/xroar/README_SBo.txt
@@ -1,20 +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
=====================
-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 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.
+ 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.
diff --git a/games/xroar/douninst.sh b/games/xroar/douninst.sh
index cc363b1b71..bd5d05ef99 100644
--- a/games/xroar/douninst.sh
+++ b/games/xroar/douninst.sh
@@ -1,17 +1,16 @@
-# 20211015 bkw: I was going to have a douninst.sh that runs
-# /usr/bin/install-info --delete /usr/info/xroar.info.gz /usr/info/dir
-# but this won't work because removepkg has already deleted
-# /usr/info/xroar.info.gz before it runs douninst.sh. And you can't
-# use install-info to remove stuff *by name* from /usr/info/dir;
-# the info file must actually exist.
-# So the script has to manually remove the entry from the info dir,
-# and the Emulators section if it's become empty.
+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/info/dir ]; then
- # Remove the entry first:
- sed -i '/^\* XRoar:/d' usr/info/dir
- # If the Emulators section is empty now, remove it too:
- if grep -A1 '^Emulators$' usr/info/dir | tail -1 | grep -q '^$'; then
- sed -i '/^Emulators$/,+1d' usr/info/dir
+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/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/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 f4bd852f12..422b078b3d 100644
--- a/games/xroar/xroar.SlackBuild
+++ b/games/xroar/xroar.SlackBuild
@@ -2,10 +2,20 @@
# 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
@@ -22,7 +32,7 @@
cd $(dirname $0) ; CWD=$(pwd)
PRGNAM=xroar
-VERSION=${VERSION:-0.37.1}
+VERSION=${VERSION:-1.5.4}
BUILD=${BUILD:-1}
TAG=${TAG:-_SBo}
PKGTYPE=${PKGTYPE:-tgz}
@@ -126,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
@@ -153,6 +166,7 @@ mkdir -p $PKG/usr/share/xroar/roms
# 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}
diff --git a/games/xroar/xroar.info b/games/xroar/xroar.info
index 0d3928ba49..4c83eafd13 100644
--- a/games/xroar/xroar.info
+++ b/games/xroar/xroar.info
@@ -1,10 +1,10 @@
PRGNAM="xroar"
-VERSION="0.37.1"
-HOMEPAGE="http://www.6809.org.uk/dragon/xroar.shtml"
-DOWNLOAD="http://www.6809.org.uk/xroar/dl/xroar-0.37.1.tar.gz"
-MD5SUM="2063beee92be8370706d09422c2d9970"
+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/xskat/xskat.SlackBuild b/games/xskat/xskat.SlackBuild
index fc1022ce3c..caa18ebcd6 100644
--- a/games/xskat/xskat.SlackBuild
+++ b/games/xskat/xskat.SlackBuild
@@ -35,7 +35,7 @@ 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
@@ -53,8 +53,8 @@ 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"
diff --git a/games/xspacewarp/xspacewarp.SlackBuild b/games/xspacewarp/xspacewarp.SlackBuild
index 27305a04a2..8cc8d3cbe6 100644
--- a/games/xspacewarp/xspacewarp.SlackBuild
+++ b/games/xspacewarp/xspacewarp.SlackBuild
@@ -5,7 +5,7 @@
# 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 <yalhcru@gmail.com>.
+# Now maintained by B. Watson <urchlay@slackware.uk>.
# Licensed under the WTFPL. See http://www.wtfpl.net/txt/copying/ for details.
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/xu4/README b/games/xu4/README
index 9d3b15967e..9fe84a50f7 100644
--- a/games/xu4/README
+++ b/games/xu4/README
@@ -10,11 +10,12 @@ 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
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
@@ -24,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/disable_alt_x.diff b/games/xu4/disable_alt_x.diff
deleted file mode 100644
index 62f18c3f76..0000000000
--- a/games/xu4/disable_alt_x.diff
+++ /dev/null
@@ -1,24 +0,0 @@
-diff -Naur xu4-20130612_svn/src/event_sdl.cpp xu4-20130612_svn.patched/src/event_sdl.cpp
---- xu4-20130612_svn/src/event_sdl.cpp 2013-06-12 19:34:25.000000000 -0400
-+++ xu4-20130612_svn.patched/src/event_sdl.cpp 2021-10-12 03:38:36.048487922 -0400
-@@ -43,7 +43,7 @@
- case U4_META + 'q': /* Cmd+q */
- case U4_META + 'x': /* Cmd+x */
- #endif
-- case U4_ALT + 'x': /* Alt+x */
-+ // case U4_ALT + 'x': /* Alt+x */
- #if defined(WIN32)
- case U4_ALT + U4_FKEY + 3:
- #endif
-diff -Naur xu4-20130612_svn/src/game.cpp xu4-20130612_svn.patched/src/game.cpp
---- xu4-20130612_svn/src/game.cpp 2013-06-12 19:34:24.000000000 -0400
-+++ xu4-20130612_svn.patched/src/game.cpp 2021-10-12 03:33:55.794513398 -0400
-@@ -1205,7 +1205,7 @@
- screenMessage("Quit & Save...\n%d moves\n", c->saveGame->moves);
- if (c->location->context & CTX_CAN_SAVE_GAME) {
- gameSave();
-- screenMessage("Press Alt-x to quit\n");
-+ screenMessage("Close window to quit\n");
- }
- else screenMessage("%cNot here!%c\n", FG_GREY, FG_WHITE);
-
diff --git a/games/xu4/gcc7.patch b/games/xu4/gcc7.patch
deleted file mode 100644
index 29f2cceee4..0000000000
--- a/games/xu4/gcc7.patch
+++ /dev/null
@@ -1,90 +0,0 @@
---- xu4-20130612_svn/src/image_sdl.cpp.orig 2017-07-07 05:16:49.443617174 +0700
-+++ xu4-20130612_svn/src/image_sdl.cpp 2017-07-07 05:25:40.763657058 +0700
-@@ -349,7 +349,7 @@
- unsigned int y_finish = std::min(int(bottom), oy + span + 1);
- for (y = y_start; y < y_finish; ++y) {
-
-- int divisor = 1 + span * 2 - abs(ox - x) - abs(oy - y);
-+ int divisor = 1 + span * 2 - std::abs((long int) (ox - x)) - std::abs((long int) (oy - y));
-
- unsigned int r, g, b, a;
- getPixel(x, y, r, g, b, a);
---- xu4-20130612_svn/src/map.cpp.orig 2017-07-07 05:26:04.108658810 +0700
-+++ xu4-20130612_svn/src/map.cpp 2017-07-07 05:28:17.857668850 +0700
-@@ -123,14 +123,14 @@
- if (map && map->border_behavior == Map::BORDER_WRAP) {
- MapCoords me = *this;
-
-- if (abs(me.x - c.x) > abs(me.x + map->width - c.x))
-+ if (std::abs((long int) (me.x - c.x)) > std::abs((long int) (me.x + map->width - c.x)))
- me.x += map->width;
-- else if (abs(me.x - c.x) > abs(me.x - map->width - c.x))
-+ else if (std::abs((long int) (me.x - c.x)) > std::abs((long int) (me.x - map->width - c.x)))
- me.x -= map->width;
-
-- if (abs(me.y - c.y) > abs(me.y + map->width - c.y))
-+ if (std::abs((long int) (me.y - c.y)) > std::abs((long int) (me.y + map->width - c.y)))
- me.y += map->height;
-- else if (abs(me.y - c.y) > abs(me.y - map->width - c.y))
-+ else if (std::abs((long int) (me.y - c.y)) > std::abs((long int) (me.y - map->width - c.y)))
- me.y -= map->height;
-
- dx = me.x - c.x;
---- xu4-20130612_svn/src/person.cpp.orig 2017-07-07 05:28:34.604670107 +0700
-+++ xu4-20130612_svn/src/person.cpp 2017-07-07 05:29:29.432674223 +0700
-@@ -221,7 +221,7 @@
- eventHandler->pushController(&getPlayerCtrl);
- int player = getPlayerCtrl.waitFor();
- if (player != -1) {
-- string player_str = to_string(player+1);
-+ string player_str = to_string((long int) player+1);
- script->setVar(script->getInputName(), player_str);
- }
- else script->unsetVar(script->getInputName());
---- xu4-20130612_svn/src/script.cpp.orig 2017-07-07 05:29:46.242675485 +0700
-+++ xu4-20130612_svn/src/script.cpp 2017-07-07 05:31:00.015681023 +0700
-@@ -44,7 +44,7 @@
-
- Script::Variable::Variable(const int &v) : set(true) {
- i_val = v;
-- s_val = to_string(v);
-+ s_val = to_string((long int) v);
- }
-
- int& Script::Variable::getInt() { return i_val; }
-@@ -503,7 +503,7 @@
- }
- // Get the current iterator for our loop
- else if (item == "iterator")
-- prop = to_string(this->iterator);
-+ prop = to_string((long int) this->iterator);
- else if ((pos = item.find("show_inventory:")) < item.length()) {
- pos = item.find(":");
- string itemScript = item.substr(pos+1);
-@@ -611,7 +611,7 @@
- if (content.empty())
- errorWarning("Error: empty math() function");
-
-- prop = to_string(mathValue(content));
-+ prop = to_string((long int) mathValue(content));
- }
-
- /**
-@@ -643,7 +643,7 @@
-
- /* generate a random number */
- else if (funcName == "random")
-- prop = to_string(xu4_random((int)strtol(content.c_str(), NULL, 10)));
-+ prop = to_string((long int) xu4_random((int)strtol(content.c_str(), NULL, 10)));
-
- /* replaced with "true" if content is empty, or "false" if not */
- else if (funcName == "isempty") {
-@@ -1391,7 +1391,7 @@
- string children_results;
-
- mathParseChildren(current, &children_results);
-- *result = to_string(mathValue(children_results));
-+ *result = to_string((long int) mathValue(children_results));
- }
- }
- }
diff --git a/games/xu4/icons/16.png b/games/xu4/icons/16.png
index d96bf37a3f..eaf6639060 100644
--- a/games/xu4/icons/16.png
+++ 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
index bc594186b6..460a88a8d3 100644
--- a/games/xu4/icons/32.png
+++ b/games/xu4/icons/32.png
Binary files differ
diff --git a/games/xu4/icons/48.png b/games/xu4/icons/48.png
deleted file mode 100644
index 43b3509bbe..0000000000
--- a/games/xu4/icons/48.png
+++ /dev/null
Binary files differ
diff --git a/games/xu4/icons/64.png b/games/xu4/icons/64.png
deleted file mode 100644
index 8f5f6b38b6..0000000000
--- a/games/xu4/icons/64.png
+++ /dev/null
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/u4.6 b/games/xu4/xu4.6
index 5ccf1d4bd6..b406722ab1 100644
--- a/games/xu4/u4.6
+++ b/games/xu4/xu4.6
@@ -1,10 +1,10 @@
-.TH u4 6 "12 Oct 2021" "Version 1.1+svn" "XU4 Manual"
+.TH xu4 6 "January 13 2023" "Version 1.2.1" "SlackBuilds.org"
.SH NAME
-\fBu4\fR \- A modern reimplementation of the classic Ultima IV role\-playing game.
+\fBxu4\fR \- A modern reimplementation of the classic Ultima IV role\-playing game.
.SH SYNOPSIS
-.B u4
+.B xu4
.RI [ options ]
.SH DESCRIPTION
@@ -14,12 +14,12 @@ 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.
+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
-\fBu4\fR accepts the following options:
+\fBxu4\fR accepts the following options:
.TP
.B "\-f, \-\-fullscreen"
Run in fullscreen mode.
@@ -29,13 +29,15 @@ 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
+.I HQX
+.I xBR-lv2
.TP
.B "\-i, \-skipintro"
Skip the intro, and go directly into the game.
-This option requires the existance of a valid saved 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
@@ -46,13 +48,13 @@ have e.g. different screen resolutions.
Use quotation marks around profile names that
include spaces.
All profiles are stored in the
-.I ~/.xu4/profiles
+.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"
-Quiet mode \- no music.
+Disable audio.
.TP
.B \-scale <n>
Scale the original graphics by a factor of <n>.
@@ -62,7 +64,7 @@ Factor <n> must be 1, 2, 3, 4, or 5.
Verbose output; prints out information useful for
trouble\-shooting.
.SH KEYBOARD CONTROLS
-XU4 is played entirely with the keyboard. To make choices from menus,
+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.
@@ -177,13 +179,13 @@ ARROW KEYS
Control movement. North/South/East/West
.SH FILES
.TP
-.B ~/.xu4/
+.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 ~/.xu4/profiles/<profname>/
+.B ~/.config/xu4/profiles/<profname>/
When using the \fB\-p <profname>\fR option, config and savegame data are
stored here instead.
.SH AUTHORS
diff --git a/games/xu4/xu4.SlackBuild b/games/xu4/xu4.SlackBuild
index 443875df22..d336245419 100644
--- a/games/xu4/xu4.SlackBuild
+++ b/games/xu4/xu4.SlackBuild
@@ -2,10 +2,23 @@
# 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.
@@ -13,14 +26,11 @@
# - disable Alt-x keystroke (it crashes the game).
# - "Press Alt-x to quit" => "Close window to quit".
-# TODO: make Alt-x stop crashing the game. It seems to work correctly
-# only at the main menu, not while playing. Disabled it for now.
-
cd $(dirname $0) ; CWD=$(pwd)
PRGNAM=xu4
-VERSION=${VERSION:-20130612_svn}
-BUILD=${BUILD:-3}
+VERSION=${VERSION:-1.3}
+BUILD=${BUILD:-1}
TAG=${TAG:-_SBo}
PKGTYPE=${PKGTYPE:-tgz}
@@ -41,18 +51,15 @@ 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
@@ -61,45 +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 /111 -a \! -perm 755 -a -exec chmod 755 {} \+ -o \
\! -perm /111 -a \! -perm 644 -a -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
+# 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
-
-# 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
-
-# Patch for GCC 7
-patch -p1 < $CWD/gcc7.patch
-
-# 20211012 bkw: work around a bug. Disable Alt-X as it crashes the
-# game. Tell the user to close the window to quit, instead.
-patch -p1 < $CWD/disable_alt_x.diff
+# 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
-# 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 bindir=$PKG/usr/games 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
@@ -111,54 +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/
+cat $CWD/xu4.desktop > $PKG/usr/share/applications/xu4.desktop
-# 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
+# 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
-# 20211012 bkw: new-style icon...
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
+ dir=$HICOLOR/$size/apps
mkdir -p $dir
cat $i > $dir/u4.png
done
-rm -f $PKG/usr/share/pixmaps/u4.png
-ln -s ../icons/hicolor/64x64/apps/u4.png $PKG/usr/share/pixmaps/u4.png
-
-# 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
+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
@@ -168,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.
@@ -186,14 +170,10 @@ 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/games/$PRGNAM
-
# I also hate binaries that take options but have no man pages, so here's
-# the one I made. Enjoy.
+# 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/u4.6 | gzip -9c - > $PKG/usr/man/man6/u4.6.gz
-ln -s u4.6.gz $PKG/usr/man/man6/$PRGNAM.6.gz
+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
diff --git a/games/xu4/u4.desktop b/games/xu4/xu4.desktop
index cbe5634486..ce36a0b610 100644
--- a/games/xu4/u4.desktop
+++ b/games/xu4/xu4.desktop
@@ -1,8 +1,8 @@
[Desktop Entry]
Name=Ultima 4
Comment=Ultima 4 (xu4)
-Exec=/usr/games/u4
-Icon=u4
+Exec=xu4
+Icon=xu4
Terminal=false
Type=Application
Categories=Game;RolePlaying;
diff --git a/games/xu4/xu4.info b/games/xu4/xu4.info
index 4678af5b50..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 \
- https://web.archive.org/web/20091209235819/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 38bb8011c0..38cfa45449 100644
--- a/games/xye/xye.SlackBuild
+++ b/games/xye/xye.SlackBuild
@@ -34,7 +34,7 @@ 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
@@ -52,8 +52,8 @@ 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"
diff --git a/games/yabause/README b/games/yabause/README
index 4bba665f10..4401f14ad6 100644
--- a/games/yabause/README
+++ b/games/yabause/README
@@ -11,11 +11,5 @@ Yabause is a Sega Saturn emulator. It has the following features:
Optional dependencies: gtkglext, mini18n
-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
-
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 a3e6b94a6e..8e5e155aee 100644
--- a/games/yabause/yabause.SlackBuild
+++ b/games/yabause/yabause.SlackBuild
@@ -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.
+# 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}
@@ -38,9 +41,6 @@ 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
@@ -75,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
@@ -95,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" \
diff --git a/games/yae/yae.SlackBuild b/games/yae/yae.SlackBuild
index 991fa3eb03..ac1b0bb8c8 100644
--- a/games/yae/yae.SlackBuild
+++ b/games/yae/yae.SlackBuild
@@ -2,7 +2,7 @@
# 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.
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/yahtzee/yahtzee.SlackBuild b/games/yahtzee/yahtzee.SlackBuild
index 1e5e4fa944..d64d6f6e05 100644
--- a/games/yahtzee/yahtzee.SlackBuild
+++ b/games/yahtzee/yahtzee.SlackBuild
@@ -2,17 +2,18 @@
# 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}
@@ -35,16 +36,12 @@ 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
@@ -59,6 +56,8 @@ 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 "/^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
# lot of Slackware machines, trying to init SDL in the console just causes
diff --git a/games/yahtzee/yahtzee.info b/games/yahtzee/yahtzee.info
index d89fb2a7d9..8eea819e9d 100644
--- a/games/yahtzee/yahtzee.info
+++ b/games/yahtzee/yahtzee.info
@@ -2,9 +2,9 @@ PRGNAM="yahtzee"
VERSION="1.6"
HOMEPAGE="https://www.muppetlabs.com/~breadbox/software/yahtzee.html"
DOWNLOAD="https://www.muppetlabs.com/~breadbox/pub/software/yahtzee-1.6.tar.gz"
-MD5SUM="6ad1c98eb0136ac378425d469d270060"
+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 332a2481ba..952fe1fd28 100644
--- a/games/yamagi-quake2/README
+++ b/games/yamagi-quake2/README
@@ -1,9 +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.
-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 b527fd4281..abc859acb3 100644
--- a/games/yamagi-quake2/yamagi-quake2.SlackBuild
+++ b/games/yamagi-quake2/yamagi-quake2.SlackBuild
@@ -27,14 +27,14 @@
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
@@ -131,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
@@ -157,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
@@ -183,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
diff --git a/games/yamagi-quake2/yamagi-quake2.info b/games/yamagi-quake2/yamagi-quake2.info
index 2791ade450..43d998de0d 100644
--- a/games/yamagi-quake2/yamagi-quake2.info
+++ b/games/yamagi-quake2/yamagi-quake2.info
@@ -1,14 +1,14 @@
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=""
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/yar.SlackBuild b/games/yar/yar.SlackBuild
index d76e2fc3fb..e3e32ecc2d 100644
--- a/games/yar/yar.SlackBuild
+++ b/games/yar/yar.SlackBuild
@@ -2,10 +2,11 @@
# 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
@@ -13,7 +14,7 @@ cd $(dirname $0) ; CWD=$(pwd)
PRGNAM=yar
VERSION=${VERSION:-0.99}
-BUILD=${BUILD:-3}
+BUILD=${BUILD:-4}
TAG=${TAG:-_SBo}
PKGTYPE=${PKGTYPE:-tgz}
diff --git a/games/yar/yar.info b/games/yar/yar.info
index 714177aad1..e46621647c 100644
--- a/games/yar/yar.info
+++ b/games/yar/yar.info
@@ -1,10 +1,10 @@
PRGNAM="yar"
VERSION="0.99"
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/yar-0.99.tar.gz"
+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/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/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 4534915c20..0000000000
--- a/games/z26/z26.SlackBuild
+++ /dev/null
@@ -1,100 +0,0 @@
-#!/bin/bash
-
-# 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
-
-cd $(dirname $0) ; CWD=$(pwd)
-
-PRGNAM=z26
-VERSION=${VERSION:-2.13}
-BUILD=${BUILD:-2}
-TAG=${TAG:-_SBo}
-PKGTYPE=${PKGTYPE:-tgz}
-
-# 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
-
-if [ ! -z "${PRINT_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
- 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 /111 -a \! -perm 755 -a -exec chmod 755 {} \+ -o \
- \! -perm /111 -a \! -perm 644 -a -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
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/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/z26v3.SlackBuild b/games/z26v3/z26v3.SlackBuild
deleted file mode 100644
index 703bb17408..0000000000
--- a/games/z26v3/z26v3.SlackBuild
+++ /dev/null
@@ -1,101 +0,0 @@
-#!/bin/bash
-
-# 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.
-
-cd $(dirname $0) ; CWD=$(pwd)
-
-PRGNAM=z26v3
-VERSION=${VERSION:-3.02.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}
-
-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
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 cf8e102690..0000000000
--- a/games/z26v3/z26v3.info
+++ /dev/null
@@ -1,10 +0,0 @@
-PRGNAM="z26v3"
-VERSION="3.02.01"
-HOMEPAGE="https://www.whimsey.com/z26/z26.html"
-DOWNLOAD="https://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 b6ff797b11..66bbc814d1 100644
--- a/games/zaz/zaz.SlackBuild
+++ b/games/zaz/zaz.SlackBuild
@@ -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.
+# 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}
@@ -38,9 +46,6 @@ 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
@@ -50,7 +55,6 @@ TMP=${TMP:-/tmp/SBo}
PKG=$TMP/package-$PRGNAM
OUTPUT=${OUTPUT:-/tmp}
-
if [ "$ARCH" = "i586" ]; then
SLKCFLAGS="-O2 -march=i586 -mtune=i686"
LIBDIRSUFFIX=""
@@ -74,31 +78,47 @@ 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
-
-find $PKG | xargs 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 ChangeLog INSTALL NEWS README \
- $PKG/usr/doc/$PRGNAM-$VERSION
-cat $CWD/$PRGNAM.SlackBuild > $PKG/usr/doc/$PRGNAM-$VERSION/$PRGNAM.SlackBuild
+make install-strip DESTDIR=$PKG
+
+mkdir -p $PKG/usr/man/man6
+gzip -9c < $CWD/$PRGNAM.6 > $PKG/usr/man/man6/$PRGNAM.6.gz
+
+# 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
+
+# 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
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/zdbsp/zdbsp.SlackBuild b/games/zdbsp/zdbsp.SlackBuild
index d03c2ec31e..5295a57d6b 100644
--- a/games/zdbsp/zdbsp.SlackBuild
+++ b/games/zdbsp/zdbsp.SlackBuild
@@ -2,7 +2,7 @@
# 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.
diff --git a/games/zdbsp/zdbsp.info b/games/zdbsp/zdbsp.info
index 84d2170c8d..239d5cce3c 100644
--- a/games/zdbsp/zdbsp.info
+++ b/games/zdbsp/zdbsp.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/zdoom/zdoom.SlackBuild b/games/zdoom/zdoom.SlackBuild
index 443ff986ab..b2ac55d48e 100644
--- a/games/zdoom/zdoom.SlackBuild
+++ b/games/zdoom/zdoom.SlackBuild
@@ -4,10 +4,11 @@
# 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.
@@ -147,7 +148,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" \
diff --git a/games/zdoom/zdoom.info b/games/zdoom/zdoom.info
index 3ee0e8333e..c604a2817e 100644
--- a/games/zdoom/zdoom.info
+++ b/games/zdoom/zdoom.info
@@ -7,4 +7,4 @@ DOWNLOAD_x86_64=""
MD5SUM_x86_64=""
REQUIRES="fmodapi"
MAINTAINER="B. Watson"
-EMAIL="yalhcru@gmail.com"
+EMAIL="urchlay@slackware.uk"
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/zennode/zennode.SlackBuild b/games/zennode/zennode.SlackBuild
index 3a8ac56258..64b75d0e16 100644
--- a/games/zennode/zennode.SlackBuild
+++ b/games/zennode/zennode.SlackBuild
@@ -2,7 +2,7 @@
# 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.
diff --git a/games/zennode/zennode.info b/games/zennode/zennode.info
index 128cf9dab6..75c01a1b85 100644
--- a/games/zennode/zennode.info
+++ b/games/zennode/zennode.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/znake/znake.SlackBuild b/games/znake/znake.SlackBuild
index bf2c7651f2..06c8cfd0c8 100644
--- a/games/znake/znake.SlackBuild
+++ b/games/znake/znake.SlackBuild
@@ -22,6 +22,11 @@
# 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
@@ -38,9 +43,6 @@ 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
@@ -75,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
diff --git a/games/zod-engine/zod-engine.SlackBuild b/games/zod-engine/zod-engine.SlackBuild
index a69b2ccbea..a59c3ed47c 100644
--- a/games/zod-engine/zod-engine.SlackBuild
+++ b/games/zod-engine/zod-engine.SlackBuild
@@ -2,7 +2,7 @@
# 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
@@ -26,7 +26,7 @@ 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}
@@ -83,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/
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/zoom.1 b/games/zoom/zoom.1
index 276fbade73..941f7a78bb 100644
--- a/games/zoom/zoom.1
+++ b/games/zoom/zoom.1
@@ -68,7 +68,7 @@ Zoom was written by Andrew Hunter. See
.hy
for license information.
.PP
-This man page was written by B. Watson <yalhcru@gmail.com> for
+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"
diff --git a/games/zoom/zoom.SlackBuild b/games/zoom/zoom.SlackBuild
index 70b2eb3495..10c3487be5 100644
--- a/games/zoom/zoom.SlackBuild
+++ b/games/zoom/zoom.SlackBuild
@@ -2,7 +2,7 @@
# 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.
diff --git a/games/zoom/zoom.info b/games/zoom/zoom.info
index aaa1d552a6..ed24cbbed0 100644
--- a/games/zoom/zoom.info
+++ b/games/zoom/zoom.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/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/vcmi-wog/slack-desc b/games/zork-mit/slack-desc
index 33f7ac74c3..c74f3ff4be 100644
--- a/games/vcmi-wog/slack-desc
+++ b/games/zork-mit/slack-desc
@@ -6,14 +6,14 @@
# 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:
+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/zork.SlackBuild b/games/zork/zork.SlackBuild
index 9a9458000a..04def8d4c6 100644
--- a/games/zork/zork.SlackBuild
+++ b/games/zork/zork.SlackBuild
@@ -2,7 +2,7 @@
# 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.
diff --git a/games/zork/zork.info b/games/zork/zork.info
index 4374960e32..4a7bd7a863 100644
--- a/games/zork/zork.info
+++ b/games/zork/zork.info
@@ -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/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/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 1f4fc9f8e5..40508e9927 100644
--- a/games/zsnes/zsnes.SlackBuild
+++ b/games/zsnes/zsnes.SlackBuild
@@ -2,41 +2,27 @@
# 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}
PKGTYPE=${PKGTYPE:-tgz}
-ZSNESSRC="$(echo $VERSION | tr -d .)src"
-ZSNESDIR="_$(echo $VERSION | tr . _)"
-
if [ -z "$ARCH" ]; then
case "$( uname -m )" in
i?86) ARCH=i586 ;;
@@ -45,109 +31,89 @@ 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.
+# 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
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/ztools/ztools.SlackBuild b/games/ztools/ztools.SlackBuild
index 88dd2f47c6..8f6bbf5464 100644
--- a/games/ztools/ztools.SlackBuild
+++ b/games/ztools/ztools.SlackBuild
@@ -2,7 +2,7 @@
# 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.
diff --git a/games/ztools/ztools.info b/games/ztools/ztools.info
index a41f1fe083..de214450ff 100644
--- a/games/ztools/ztools.info
+++ b/games/ztools/ztools.info
@@ -13,4 +13,4 @@ DOWNLOAD_x86_64=""
MD5SUM_x86_64=""
REQUIRES=""
MAINTAINER="B. Watson"
-EMAIL="yalhcru@gmail.com"
+EMAIL="urchlay@slackware.uk"