summarylogtreecommitdiffstats
path: root/PKGBUILD
diff options
context:
space:
mode:
Diffstat (limited to 'PKGBUILD')
-rw-r--r--PKGBUILD131
1 files changed, 69 insertions, 62 deletions
diff --git a/PKGBUILD b/PKGBUILD
index 1f6952e0c199..8fe60fc9a264 100644
--- a/PKGBUILD
+++ b/PKGBUILD
@@ -11,12 +11,14 @@ validpgpkeys=('748231EBCBD808A14F5E85D28C004C2F93481F6B')
pkgname=('nquakesv')
pkgver=1.4
-pkgrel=3
+pkgrel=2
pkgdesc="The easiest, quickest, and most popular QuakeWorld server."
url="http://nquake.com/"
license=('GPL2' 'custom')
-depends=('unzip' 'ezquake' 'python')
-conflicts=('nquake')
+#depends=('unzip' 'ezquake' 'python')
+depends=('unzip' 'python')
+makedepends=('dos2unix')
+#conflicts=('nquake')
arch=('any')
install=nquakesv.install
_pkgname=nquake
@@ -36,13 +38,21 @@ source=("${_nQ_MIRROR}/sv-gpl.zip"
"CC0-1.0::https://creativecommons.org/publicdomain/zero/1.0/legalcode.txt"
"nquakesv.run"
"README.arch"
+ "dirtree.lst"
+ "linktree.lst"
+ "nquakesv-init.py"
+ "nquakesv@.service"
"sv-gpl.zip.sig"
"sv-non-gpl.zip.sig"
"CC0-1.0.sig"
"qsw106.zip.sig"
"sv-configs.zip.sig"
"nquakesv.run.sig"
- "README.arch.sig")
+ "README.arch.sig"
+ "dirtree.lst.sig"
+ "linktree.lst.sig"
+ "nquakesv-init.py.sig"
+ "nquakesv@.service")
source_x86_64=("${_nQ_MIRROR}/sv-bin-x64.zip"
"sv-bin-x64.zip.sig")
@@ -60,13 +70,21 @@ fi
noextract=('qsw106.zip'
"sv-bin-x${BITNESS}.zip")
-sha512sums=('6a07601f56aec5d88b3463c09c4482a2d76e5d7efd8ddc24c1b4e9b662152f62070dbb5409c1a801560872c725b5b8b1d41437b7b99c74bdcc1ae88d2be91121'
- '21e6ef7a58c03e342b501a345fd777472b9d109a95201fa859c99d626845d01cf90d0ce6c42f76f5878795f1bcd549128250b9f8e82fceedb8b1f6534b9a1e32'
- '32df717a4a8f121358243333c30d8d0e5d43ee04f3ee8175a894199b8932e90ebedc6b687c25207c6191dbf25363307f09f8c1dc767b58e254e015c150217384'
- '93d6879712f7bdd56e3ab8f018810bb66a2d4d89e7dfcabf53668eaf23dd984959a1fbe4ecaa743e98b9be2b65de5b2746529b195c78b0c1ff0996e32d8fdd1b'
- '1eb4436f8d58766cbe99db97e5e8c0db8a706376afd291c337de1ba7a6b066d3791dc85ad034bdd54ea336bed6e6e8e7a037d8b04b2773c9c7517b9d9921d1fa'
- 'e7dac93556d63c994d37f2361a48408c924426b81395cacb3229acb3020df66dce62e5734686fba44cc7581567e28e5345f6d7a5638c0c97b8effdab78756111'
- 'b083d3884c9885ab402e58c95ec3b5288ee06afce2bab83af1610c9d2ee174ce7b77748647499cb82d9a3f4686d936e9a91b5feccae0818addd236907952c3d1'
+sha512sums=('6a07601f56aec5d88b3463c09c4482a2d76e5d7efd8ddc24c1b4e9b662152f62070dbb5409c1a801560872c725b5b8b1d41437b7b99c74bdcc1ae88d2be91121' # sv-gpl.zip
+ '21e6ef7a58c03e342b501a345fd777472b9d109a95201fa859c99d626845d01cf90d0ce6c42f76f5878795f1bcd549128250b9f8e82fceedb8b1f6534b9a1e32' # sv-non-gpl.zip
+ '32df717a4a8f121358243333c30d8d0e5d43ee04f3ee8175a894199b8932e90ebedc6b687c25207c6191dbf25363307f09f8c1dc767b58e254e015c150217384' # qsw106.zip
+ '93d6879712f7bdd56e3ab8f018810bb66a2d4d89e7dfcabf53668eaf23dd984959a1fbe4ecaa743e98b9be2b65de5b2746529b195c78b0c1ff0996e32d8fdd1b' # sv-configs.zip
+ '1eb4436f8d58766cbe99db97e5e8c0db8a706376afd291c337de1ba7a6b066d3791dc85ad034bdd54ea336bed6e6e8e7a037d8b04b2773c9c7517b9d9921d1fa' # CC0-1.0
+ '61fdec91aeee6b773d451b7407bca55fba5cd152654385b208c9a63c4e92c9f3fba2d8ad45b09585134ba5e1e7f6796c4ad706e5e564bbf3617026994cf30822' # nquakesv.run
+ 'b083d3884c9885ab402e58c95ec3b5288ee06afce2bab83af1610c9d2ee174ce7b77748647499cb82d9a3f4686d936e9a91b5feccae0818addd236907952c3d1' # README.arch
+ '2bd1a5f1aaec1332f1812d416568f8cd6d1506166f6863743e5c66c83ad5cc74e2415470c28b9f75cb2e20f04c51b930474bbb8073f2f47cb63765cfb144fda3' # dirtree.lst
+ '562b17c114f4bc92116acce9a41dbb3d1031ae4ab5ae844e42a61ad3304ae95c86c299069c34966681af44516b5c58b05133441715f2cf4234697a9b3f58c250' # linktree.lst
+ '21d279b5494d2cd777693eade8dde35c5ba7a6dba395828153d1b390ee768fb3ccb57d4b9c4a1dd5bc47d061a3242d9d659c23f310360c76cff95962baaf9a86' # nquakesv-init.py
+ '157cba05212f59c978a0d08f98fbd2f8b888f43d185db655f4517f70470eb304fcdfcfca26c01a244f3cbd2fd79290461971ca8109ae1ce59129fa6ba89f1347' # nquakesv@.service
+ 'SKIP' # onwards are .sig files
+ 'SKIP'
+ 'SKIP'
+ 'SKIP'
'SKIP'
'SKIP'
'SKIP'
@@ -75,10 +93,10 @@ sha512sums=('6a07601f56aec5d88b3463c09c4482a2d76e5d7efd8ddc24c1b4e9b662152f62070
'SKIP'
'SKIP')
-sha512sums_x86_64=('eab8feab5148ef9c3d3a8c644cbc7b621b9132c73e1b25cd62eb28a47e9e0ffd9500b665b22c015c9aca2db10a316a5669e7d8569ddaec0a9610e9c477dc225c'
- 'SKIP')
-sha512sums_i686=('c4b32e5f409a603adea54206b0ebbebb1b7907d7a56065e7730ca01931de33258e6f859d3d9805ffaf8dff9bcedea26e8455a016fa36b6d08eaf1540b8bbacad'
- 'SKIP')
+sha512sums_x86_64=('eab8feab5148ef9c3d3a8c644cbc7b621b9132c73e1b25cd62eb28a47e9e0ffd9500b665b22c015c9aca2db10a316a5669e7d8569ddaec0a9610e9c477dc225c' # sv-bin-x64.zip
+ 'SKIP') # "".sig
+sha512sums_i686=('c4b32e5f409a603adea54206b0ebbebb1b7907d7a56065e7730ca01931de33258e6f859d3d9805ffaf8dff9bcedea26e8455a016fa36b6d08eaf1540b8bbacad' # sv-bin-x86.zip
+ 'SKIP') # "".sig
prepare () {
unzip -o -j "qsw106.zip" "ID1/PAK0.PAK"
@@ -90,48 +108,57 @@ prepare () {
}
package () {
-### BASE ##
- # Most of these files are in gpl.zip
- install -d -m 0750 ${pkgdir}/opt/quake/{id1,qw}
- install -d -m 0750 ${pkgdir}/usr/share/${pkgname}
- install -d -m 0750 ${pkgdir}/usr/share/doc/${pkgname}
- install -d -m 0750 ${pkgdir}/usr/share/licenses/${pkgname}
+### SELF-PROVIDED ###
install -d -m 0755 ${pkgdir}/usr/bin
+ install -d -m 0755 ${pkgdir}/usr/share/doc/${pkgname}
+ install -d -m 0755 ${pkgdir}/usr/share/${pkgname}
+ install -d -m 0755 ${pkgdir}/usr/share/${pkgname}/qtv
+ install -d -m 0755 ${pkgdir}/usr/share/licenses/${pkgname}
+ install -d -m 0755 ${pkgdir}/usr/share/${pkgname}/qw/maps
+ install -D -m 0755 ${srcdir}/${pkgname}.run ${pkgdir}/usr/bin/${pkgname}
+ install -D -m 0755 ${srcdir}/${pkgname}-init.py ${pkgdir}/usr/bin/${pkgname}-init
+ install -D -m 0644 ${srcdir}/README.arch ${pkgdir}/usr/share/doc/${pkgname}/README.arch
+ install -D -m 0644 ${srcdir}/CC0-1.0 ${pkgdir}/usr/share/licenses/${pkgname}/CC0-1.0
+ install -D -m 0644 ${srcdir}/dirtree.lst ${pkgdir}/usr/share/${pkgname}/dirtree.lst
+ install -D -m 0644 ${srcdir}/linktree.lst ${pkgdir}/usr/share/${pkgname}/linktree.lst
+
+### NQUAKE-PROVIDED ##
# Implement the following in ezQuake
#chgrp games ${pkgdir}/usr/bin/ezquake
#chmod 0750 ${pkgdir}/usr/bin/ezquake
# And the Business-End(TM). Do the thing.
- install -D -m 0775 ${srcdir}/nquakesv.run ${pkgdir}/usr/bin/${pkgname}
install -D -m 0775 ${srcdir}/mvdsv ${pkgdir}/usr/share/${pkgname}/mvdsv
install -D -m 0775 ${srcdir}/qwfwd/qwfwd.bin ${pkgdir}/usr/share/${pkgname}/qwfwd
install -D -m 0775 ${srcdir}/qtv/qtv.bin ${pkgdir}/usr/share/${pkgname}/quaketv
- install -D -m 0644 ${srcdir}/README.arch ${pkgdir}/usr/share/doc/${pkgname}/README.arch
- cp -a ${srcdir}/logs ${pkgdir}/usr/share/${pkgname}/.
-
-## DEMO DATA ##
- install -D -m 0644 ${srcdir}/PAK0.PAK ${pkgdir}/opt/quake/id1/pak0.pak.DEMO
+ install -D -m 0644 ${srcdir}/PAK0.PAK ${pkgdir}/usr/share/${pkgname}/id1/pak0.pak.DEMO
install -D -m 0644 ${srcdir}/LICINFO.TXT ${pkgdir}/usr/share/doc/${pkgname}/quake_shareware_license_info.txt
install -D -m 0644 ${srcdir}/README.TXT ${pkgdir}/usr/share/doc/${pkgname}/quake_shareware_readme.txt
install -D -m 0644 ${srcdir}/SLICNSE.TXT ${pkgdir}/usr/share/licenses/${pkgname}/quake_shareware.txt
-
-## NON-FREE ##
- # Most of these files are in non-gpl.zip
- install -d -m 0755 ${pkgdir}/usr/share/${pkgname}/qw/maps
cp -a ${srcdir}/qw/maps/* ${pkgdir}/usr/share/${pkgname}/qw/maps/.
- install -D -m 0644 ${srcdir}/id1/maps/b_exbox2.bsp ${pkgdir}/usr/share/${pkgname}/id1/maps/b_exbox2.bsp
- cp -a ${srcdir}/CC0-1.0 ${pkgdir}/usr/share/licenses/${pkgname}/.
# And the Business-End(TM). Do the thing.
cp -a ${srcdir}/README ${pkgdir}/usr/share/doc/${pkgname}/readme.txt # nQuake FAQ, credits, etc.
- install -d -m 0755 ${pkgdir}/usr/share/${pkgname}/cfgs/
- install -d -m 0755 ${pkgdir}/usr/share/${pkgname}/modes/
- mv ${srcdir}/ktx/configs/* ${pkgdir}/usr/share/${pkgname}/cfgs/.
- mv ${srcdir}/ktx/modes/* ${pkgdir}/usr/share/${pkgname}/modes/.
- rmdir ${srcdir}/ktx/configs
- mv ${srcdir}/ktx/mvdsv.cfg ${pkgdir}/usr/share/${pkgname}/cfgs/mvdsv-server.cfg
- mv ${srcdir}/ktx/ktx.cfg ${pkgdir}/usr/share/${pkgname}/cfgs/ktx-server.cfg
- mv ${srcdir}/ktx/matchless.cfg ${pkgdir}/usr/share/${pkgname}/cfgs/matchless-server.cfg
- find ${pkgdir}/usr/share/${pkgname}/cfgs -type f -exec chmod 0644 '{}' \;
+
+## KTX ##
+ # Most of these files are in sv-gpl.zip and sv-non-gpl.zip. some are in sv-bin-x${BITNESS}.zip
+ cp -a ${srcdir}/ktx ${pkgdir}/usr/share/${pkgname}/.
+
+## QTV ##
+ cp -a ${srcdir}/qtv/qtv ${pkgdir}/usr/share/${pkgname}/qtv/.
+ install -D -m 0644 ${srcdir}/qtv/qtv.cfg ${pkgdir}/usr/share/${pkgname}/qtv/qtv.cfg
+
+## QWFWD ##
+ install -D -m 0644 ${srcdir}/qwfwd/qwfwd.cfg ${pkgdir}/usr/share/${pkgname}/qwfwd.d/qwfwd.cfg
+
+### CLEANUP ###
+ # TODO: We can remove the makedepends on unix2dos if we use sed for this, but i'd need to do some testing
+ for i in '*.txt' '*.cfg' 'README';
+ do
+ find ${pkgdir}/ -type f -iname "${i}" -exec unix2dos -q '{}' \;
+ done
+ find ${pkgdir}/ -type f -iname "*.sh" -delete
+ rm ${pkgdir}/usr/share/${pkgname}/ktx/portx.cfg
+ rm ${pkgdir}/usr/share/${pkgname}/ktx/demos/demoshere
### FORTRESS ##
# TODO
@@ -151,25 +178,5 @@ package () {
# # And the Business-End(TM). Do the thing.
# cp -a ${srcdir}/arena ${pkgdir}/opt/quake/. # The entire mod
# cp -a ${srcdir}/prox ${pkgdir}/opt/quake/. # QuakeProxy, I think?
-## KTX ##
- # Most of these files are in sv-gpl.zip and sv-non-gpl.zip. some are in sv-bin-x${BITNESS}.zip
- cp -a ${srcdir}/ktx ${pkgdir}/usr/share/${pkgname}/.
- # Let's clean up a bit.
- for f in portx server pwd ban_ip vip_ip;
- do
- rm ${pkgdir}/usr/share/${pkgname}/ktx/${f}.cfg
- done
-## QTV ##
- cp -a ${srcdir}/qtv/qtv ${pkgdir}/usr/share/${pkgname}/.
- install -D -m 0644 ${srcdir}/qtv/qtv.cfg ${pkgdir}/usr/share/${pkgname}/qtv/qtv.cfg
-## QWFWD ##
- install -D -m 0644 ${srcdir}/qwfwd/qwfwd.cfg ${pkgdir}/usr/share/${pkgname}/qwfwd.d/qwfwd.cfg
-
-## FINISHING TOUCHES ##
- # Security is worthless without a modicum of usability. We're kind of stepping on other packagers' toes here, but... c'est la vie.
- # Remind me to submit a patch to https://aur.archlinux.org/packages/ezquake/ (and incorporate into ezquake-git, which I maintain).
- # Scratch that, ezquake uses "users" group. Works for me!
- chgrp -R users ${pkgdir}/usr/share/${pkgname}/
- chgrp users ${pkgdir}/usr/share/${pkgname}
}