diff options
author | Shane Chen | 2019-04-17 17:08:23 +0800 |
---|---|---|
committer | Shane Chen | 2019-05-01 21:03:15 +0800 |
commit | cafd47f4589ac56ea10d7322ca78961056aa1a84 (patch) | |
tree | d48821897784c526c781e84452d615d9da818ddc /PKGBUILD | |
parent | aec6c02d1a3644c5fd69fc47ade4298464c3876b (diff) | |
download | aur-cafd47f4589ac56ea10d7322ca78961056aa1a84.tar.gz |
domjudge: new upstream release 7.0.0
Diffstat (limited to 'PKGBUILD')
-rw-r--r-- | PKGBUILD | 124 |
1 files changed, 92 insertions, 32 deletions
@@ -1,42 +1,102 @@ # Maintainer: Andrzej Giniewicz <gginiu@gmail.com> -pkgname=domjudge -pkgver=5.1.2 +pkgbase=domjudge +pkgname=('domjudge-domserver' 'domjudge-docs' 'domjudge-judgehost' 'domjudge-submit') +pkgver=7.0.0 pkgrel=1 -pkgdesc="programming contest jury system" -arch=('i686' 'x86_64') -url="http://domjudge.sourceforge.net/" +pkgdesc="an automated judge system to run programming contests" +arch=("$CARCH") +url="http://www.domjudge.org/" license=('GPL') -depends=('php-apache' 'mysql' 'texlive-core' 'libcgroup' 'curl' 'jsoncpp') -makedepends=('boost') -optdepends=('phpmyadmin: to access database in an emergency' - 'ntp: to keep judgehosts clocks in sync' - 'beep: for notification of errors') -install='domjudge.install' - -source=(http://www.domjudge.org/releases/domjudge-$pkgver.tar.gz - domjudge-judgehostd.service jsoncpp.patch) -md5sums=('a200a53f86596a8e89c76bbc014c1e66' - '93cd5b10fc2636b664f2c17b4f34436f' - '69e8aef0a5f9394fd0a4f42785d0732e') +makedepends=('boost' 'composer' 'inetutils' 'libcgroup' 'git' 'jsoncpp') +optdepends=( + 'mysql: to run database on current host' + 'phpmyadmin: to access database in an emergency' + 'ntp: to keep judgehosts clocks in sync' + 'beep: for notification of errors') +source=( + "https://www.domjudge.org/releases/domjudge-$pkgver.tar.gz" + domjudge-domserver.conf + domjudge-judgehost.conf + domjudge-judgehostd.service + domjudge-judgehostd@.service + domjudge-cgroup.service) +sha256sums=('d794b313c622f16aca3e7bc2779b7b474ef271efff99546a5c309973e85c6dcf' + 'c0dfd31c0d19856df324057ffb4f81d50fe765c48026d419ceaea71864663532' + '06faeeea3e3abda5a53a9ae150c6289cd49062c9a22129436640d11a9948eed5' + '9ed301acc46bcc4de0ac38fc7fa9abe13912deb64ff549dd68ada54b9158f680' + '2b88ea6555d1887f4e27a863be151326955a2687c6388e81512517a56d009334' + 'd0a921ca8f81b3550acc8fa27713624ca39540090c943293242dcc9cd85b8049') build() { - cd "$srcdir"/domjudge-$pkgver - patch -p0 < ../jsoncpp.patch - ./configure --enable-fhs --enable-cgroups --prefix=/usr \ - --sysconfdir=/etc --localstatedir=/var \ - --enable-submitclient=http,dolstra \ - --with-domjudge-user=root --with-webserver-group=http - make all + cd "$srcdir/domjudge-$pkgver" + domserver_lib="/usr/lib/domserver" + judgehost_lib="/usr/lib/judgehost" + domserver_var="/var/lib/domserver" + judgehost_var="/var/lib/judgehost" + ./configure --enable-fhs --prefix=/usr\ + --bindir=/usr/bin\ + --sbindir=/usr/bin\ + --libexecdir=/usr/libexec\ + --sysconfdir=/etc\ + --sharedstatedir=/var\ + --localstatedir=/var\ + --libdir=/usr/lib\ + --includedir=/usr/include\ + --datarootdir=/var/lib\ + --with-domserver_etcdir=/etc/domserver\ + --with-domserver_webappdir=$domserver_var/webapp\ + --with-domserver_sqldir=$domserver_var/sql\ + --with-domserver_libdir=$domserver_lib\ + --with-domserver_libvendordir=$domserver_lib/vendor\ + --with-domserver_libsubmitdir=$domserver_lib/submit\ + --with-domserver_rundir=$domserver_var/run\ + --with-domserver_logdir=/var/log/domserver\ + --with-domserver_submitdir=$domserver_var/submissions\ + --with-judgehost_etcdir=/etc/judgehost\ + --with-judgehost_libdir=$judgehost_lib\ + --with-judgehost_libvendordir=$judgehost_lib/vendor\ + --with-judgehost_libjudgedir=$judgehost_lib/judge\ + --with-judgehost_logdir=/var/log/judgehost\ + --with-judgehost_rundir=$judgehost_var/run\ + --with-judgehost_judgedir=$judgehost_var/judgings\ + --with-domjudge-user=512 --with-webserver-group=http\ + --with-runuser=domjudge-run --with-rungroup=domjudge-run + make all +} + +package_domjudge-submit() { + arch=("$CARCH") + depends=('curl' 'jsoncpp' 'file') + install -Dm 755 "$srcdir/domjudge-$pkgver/submit/submit" "$pkgdir/usr/bin/submit" } -package() { - cd "$srcdir"/domjudge-$pkgver - make install-{domserver,judgehost,docs} DESTDIR="$pkgdir"/ - rm -rf "$pkgdir"/tmp - install -D -m 440 "$pkgdir"/etc/domjudge/sudoers-domjudge "$pkgdir"/etc/sudoers.d/domjudge - sed -s "s/^root/domjudge/g" -i "$pkgdir"/etc/sudoers.d/domjudge - rm "$pkgdir"/etc/domjudge/{restapi.secret,sudoers-domjudge,dbpasswords.secret} - install -D "$srcdir"/domjudge-judgehostd.service "$pkgdir"/etc/systemd/system/domjudge-judgehostd.service +package_domjudge-domserver() { + arch=('any') + depends=('curl' 'php' 'php-gd' 'php-intl' 'unzip' 'zip' 'apache') + install=domjudge-domserver.install + cd "$srcdir/domjudge-$pkgver" + make install-domserver DESTDIR="$pkgdir"/ + install -Dm 644 "$srcdir/domjudge-domserver.conf" "$pkgdir/usr/lib/sysusers.d/domjudge-domserver.conf" } +package_domjudge-docs() { + arch=('any') + depends=('php') + cd "$srcdir/domjudge-$pkgver" + make install-docs DESTDIR="$pkgdir"/ +} + +package_domjudge-judgehost() { + arch=("$CARCH") + depends=('libcgroup' 'curl' 'php' 'unzip' 'zip' 'lsof') + cd "$srcdir/domjudge-$pkgver" + make install-judgehost DESTDIR="$pkgdir"/ + install -Dm 644 "$srcdir/domjudge-judgehostd.service" "$pkgdir/usr/lib/systemd/system/domjudge-judgehostd.service" + install -Dm 644 "$srcdir/domjudge-judgehostd@.service" "$pkgdir/usr/lib/systemd/system/domjudge-judgehostd@.service" + install -Dm 644 "$srcdir/domjudge-cgroup.service" "$pkgdir/usr/lib/systemd/system/domjudge-cgroup.service" + install -Dm 644 "$srcdir/domjudge-judgehost.conf" "$pkgdir/usr/lib/sysusers.d/domjudge-judgehost.conf" + sed -i 's/512/domjudge/g' "$pkgdir/etc/judgehost/sudoers-domjudge" + mkdir -p "$pkgdir/etc/sudoers.d" + ln -s "/etc/judgehost/sudoers-domjudge" "$pkgdir/etc/sudoers.d/domjudge" +} |