netradiant-custom/download-gamepacks.sh
Garux 4cefcfb0a0 Fix/add gamepacks links; workarounds for some games
Updating routes.
Merge pull request #1 from NeonKnightOA/patch-2

Updating routes.
Adding remaining gamepacks with respective links and setups.
Merge pull request #2 from NeonKnightOA/patch-3

Adding remaining gamepacks with respective links and setups.
Last route fixing and updating. My bad.
Merge pull request #4 from NeonKnightOA/patch-4

Last route fixing and updating. My bad.
Last update. It is now in its own project.
Merge pull request #5 from NeonKnightOA/patch-5

Last update. It is now in its own project.
From the Xonotic version of NetRadiant (update to the Unvanquished pack).
Merge pull request #6 from NeonKnightOA/patch-6

From the Xonotic version of NetRadiant (update to the Unvanquished pa…
Even more updates and gamepacks brought from Gitlab.

Thanks to @illwieckz for this.
Even more updates + workarounds for some games.
Last of @illwieckz updates to the packs.
Merge pull request #8 from NeonKnightOA/patch-7

Even more updates and gamepacks brought from Gitlab.
Merge pull request #9 from NeonKnightOA/patch-8

Even more updates + workarounds for some games.
Merge pull request #10 from NeonKnightOA/patch-9

Last of @illwieckz updates to the packs.
2017-10-17 12:19:10 +03:00

179 lines
5.5 KiB
Bash
Executable File

#!/bin/sh
# Usage:
# sh download-gamepack.sh
# LICENSEFILTER=GPL BATCH=1 sh download-gamepack.sh
: ${GIT:=git}
: ${SVN:=svn}
: ${WGET:=wget}
: ${ECHO:=echo}
: ${MKDIR:=mkdir}
: ${RM_R:=rm -f -r}
: ${MV:=mv}
: ${UNZIPPER:=unzip}
set -e
extra_urls()
{
if [ -f "$1/extra-urls.txt" ]; then
while IFS=" " read -r FILE URL; do
$WGET -O "$1/$FILE" "$URL"
done < "$1/extra-urls.txt"
fi
}
pack()
{
pack=$1; shift
license=$1; shift
sourcetype=$1; shift
source=$1; shift
if [ -d "games/$pack" ]; then
$ECHO "Updating $pack..."
case "$sourcetype" in
svn)
$SVN update "games/$pack" "$@" || true
;;
zip1)
$RM_R zipdownload
$MKDIR zipdownload
cd zipdownload
$WGET "$source" "$@" || true
$UNZIPPER *.zip || true
cd ..
$RM_R "games/$pack"
$MKDIR "games/$pack"
$MV zipdownload/*/* "games/$pack/" || true
$RM_R zipdownload
;;
gitdir)
$RM_R "games/$pack"
cd games
$GIT archive --remote="$source" --prefix="$pack/" "$2":"$1" | tar xvf - || true
cd ..
;;
git)
cd "games/$pack"
$GIT pull || true
cd ../..
;;
esac
extra_urls "games/$pack"
return
fi
$ECHO
$ECHO "Available pack: $pack"
$ECHO " License: $license"
$ECHO " Download via $sourcetype from $source"
$ECHO
case " $PACKFILTER " in
" ")
;;
*" $pack "*)
;;
*)
$ECHO "Pack $pack rejected because it is not in PACKFILTER."
return
;;
esac
case " $LICENSEFILTER " in
" ")
;;
*" $license "*)
;;
*)
$ECHO "Pack $pack rejected because its license is not in LICENSEFILTER."
return
;;
esac
case "$BATCH" in
'')
while :; do
$ECHO "Download this pack? (y/n)"
read -r P
case "$P" in
y*)
break
;;
n*)
return
;;
esac
done
;;
*)
;;
esac
$ECHO "Downloading $pack..."
case "$sourcetype" in
svn)
$SVN checkout "$source" "games/$pack" "$@" || true
;;
zip1)
$RM_R zipdownload
$MKDIR zipdownload
cd zipdownload
$WGET "$source" "$@" || true
$UNZIPPER *.zip || true
cd ..
$MKDIR "games/$pack"
$MV zipdownload/*/* "games/$pack/" || true
$RM_R zipdownload
;;
gitdir)
cd games
$GIT archive --remote="$source" --prefix="$pack/" "$2":"$1" | tar xvf - || true
cd ..
;;
git)
cd games
$GIT clone "$source" "$pack" || true
cd ..
;;
esac
extra_urls "games/$pack"
good=false
for D in "games/$pack"/*.game; do
if [ -d "$D" ]; then
good=true
fi
done
$good || rm -rf "$D"
}
mkdir -p games
pack DarkPlacesPack GPL svn svn://svn.icculus.org/gtkradiant-gamepacks/DarkPlacesPack/branches/1.5/
pack Doom3Pack proprietary svn svn://svn.icculus.org/gtkradiant-gamepacks/Doom3Pack/branches/1.5/
pack ETPack proprietary svn svn://svn.icculus.org/gtkradiant-gamepacks/ETPack/branches/1.5/
pack Heretic2Pack proprietary svn svn://svn.icculus.org/gtkradiant-gamepacks/Her2Pack/branches/1.5/
pack JediAcademyPack proprietary svn svn://svn.icculus.org/gtkradiant-gamepacks/JAPack/branches/1.5/
pack NeverballPack proprietary zip1 http://ingar.intranifty.net/files/netradiant/gamepacks/NeverballPack.zip
pack NexuizPack GPL gitdir git://git.icculus.org/divverent/nexuiz.git misc/netradiant-NexuizPack master
#pack OpenArenaPack unknown zip1 http://ingar.satgnu.net/files/netradiant/gamepacks/OpenArenaPack.zip
pack OpenArenaPack GPL git https://github.com/NeonKnightOA/oagamepack.git
pack OsirionPack GPL zip1 http://ingar.intranifty.net/files/netradiant/gamepacks/OsirionPack.zip
pack PreyPack proprietary svn svn://svn.icculus.org/gtkradiant-gamepacks/PreyPack/trunk/
pack Q3Pack proprietary svn svn://svn.icculus.org/gtkradiant-gamepacks/Q3Pack/trunk/ -r29
pack Quake2Pack proprietary svn svn://svn.icculus.org/gtkradiant-gamepacks/Q2Pack/branches/1.5/
pack Quake4Pack proprietary svn svn://svn.icculus.org/gtkradiant-gamepacks/Q4Pack/branches/1.5/
#pack QuakePack proprietary zip1 http://ingar.intranifty.net/files/netradiant/gamepacks/QuakePack.zip
pack QuakePack GPL zip1 http://ingar.intranifty.net/files/netradiant/gamepacks/Quake1Pack.zip
#pack Quake2WorldPack GPL svn svn://jdolan.dyndns.org/quake2world/trunk/gtkradiant
pack QuetooPack GPL svn svn://svn.icculus.org/gtkradiant-gamepacks/QuetooPack/branches/1.5/
#pack TremulousPack proprietary svn svn://svn.icculus.org/gtkradiant-gamepacks/TremulousPack/branches/1.5/
pack TremulousPack proprietary zip1 http://ingar.intranifty.net/files/netradiant/gamepacks/TremulousPack.zip
pack TurtleArenaPack proprietary git https://github.com/Turtle-Arena/turtle-arena-radiant-pack.git
pack UFOAIPack proprietary svn svn://svn.icculus.org/gtkradiant-gamepacks/UFOAIPack/branches/1.5/
#pack UnvanquishedPack unknown zip1 http://ingar.intranifty.net/gtkradiant/files/gamepacks/UnvanquishedPack.zip
pack UnvanquishedPack BSD svn https://github.com/Unvanquished/unvanquished-mapeditor-support.git/trunk/build/netradiant
#pack WarsowPack GPL svn https://svn.bountysource.com/wswpack/trunk/netradiant/games/WarsowPack/
#pack WarsowPack GPL zip1 http://ingar.intranifty.net/files/netradiant/gamepacks/WarsowPack.zip
pack WarsowPack GPL git https://github.com/Warsow/NetRadiantPack.git
pack WolfPack proprietary svn svn://svn.icculus.org/gtkradiant-gamepacks/WolfPack/branches/1.5/
pack XonoticPack GPL git https://gitlab.com/xonotic/netradiant-xonoticpack.git