diff options
author | William Di Luigi | 2015-09-02 21:53:15 +0200 |
---|---|---|
committer | William Di Luigi | 2015-09-02 22:07:46 +0200 |
commit | 045a0e29f13121d20f8a230cd2932b29e3f2bd6c (patch) | |
tree | 0577620380bed29e58e4bcc8be5a8eb2d28a14af /PKGBUILD | |
parent | 45b8345f0b027230ffeffc853b6f8cde3174176f (diff) | |
download | aur-045a0e29f13121d20f8a230cd2932b29e3f2bd6c.tar.gz |
Update package
Diffstat (limited to 'PKGBUILD')
-rw-r--r-- | PKGBUILD | 88 |
1 files changed, 62 insertions, 26 deletions
@@ -1,53 +1,89 @@ # Maintainer: William Di Luigi <williamdiluigi@gmail.com> -# -# https://github.com/wil93/aur/tree/master/cms-git + +# chosen at random +CMSUSER_GID=26950 pkgname=cms-git -pkgver=1.3.0 -pkgrel=2 +pkgver=r3151.608a8e4 +pkgrel=1 pkgdesc="CMS, or Contest Management System, is a distributed system for running and (to some extent) organizing a programming contest." arch=('any') url="http://cms-dev.github.io/" license=('AGPL3') depends=( - 'postgresql' 'postgresql-libs' 'python2' 'python2-setuptools' - 'python2-tornado' 'python2-psycopg2' 'python2-sqlalchemy' 'python2-psutil' - 'python2-netifaces' 'python2-crypto' 'python2-pytz' 'python2-six' - 'iso-codes' 'shared-mime-info' 'python2-beautifulsoup3' 'python2-mechanize' - 'python2-mock' 'python2-requests' 'python2-werkzeug' 'python2-gevent' - 'python2-coverage' 'libcgroup' 'patool-py2' + 'isolate' 'postgresql' 'postgresql-libs' 'python2' 'iso-codes' 'shared-mime-info' ) optdepends=( 'fpc: support for Pascal submissions' 'sgi-stl-doc: support for STL documentation inside the contest' - 'python2-yaml: support for cmsMake (for tasks in the "italian format")' ) -makedepends=('git') +makedepends=( + 'git' + 'python-virtualenv' +) provides=('cms') conflicts=('cms') +install=$pkgname.install source=( 'git://github.com/cms-dev/cms.git' - 'cms.patch' ) sha256sums=( 'SKIP' - 'edb4e5c5da138a4598d1c728e9e02041fcb0acfdb84911ba9aeefb85488fb323' ) -prepare() { - cd "cms" - patch -p1 -i $srcdir/cms.patch - sed "s|MAKEPKG_INSTALL_ROOT|$pkgdir|g" -i setup.py -} - -build() { - cd "cms" - git submodule update --init - python2 setup.py build +pkgver() { + cd cms + printf "r%s.%s" "$(git rev-list --count HEAD)" "$(git rev-parse --short HEAD)" } package() { - cd "cms" - python2 setup.py install --prefix="/usr" --root="$pkgdir" + cd cms + + # Configuration files + install -D -m660 -g$CMSUSER_GID config/cms.conf.sample $pkgdir/usr/lib/cms/cms.conf + install -D -m660 -g$CMSUSER_GID config/cms.ranking.conf.sample $pkgdir/usr/lib/cms/cms.ranking.conf + + # Logs and cache directories + install -d -m770 -g$CMSUSER_GID $pkgdir/var/log/cms + install -d -m770 -g$CMSUSER_GID $pkgdir/var/cache/cms + + # I'm not even sure if this is needed at all + install -d -m770 -g$CMSUSER_GID $pkgdir/var/lib/cms + + # testlib.h + install -D -m644 cmscontrib/loaders/polygon/testlib.h $pkgdir/usr/include/cms/testlib.h + + # Prepare virtual environment + virtualenv -p python2 $pkgdir/usr/lib/cms/venv + source $pkgdir/usr/lib/cms/venv/bin/activate + pip install -r requirements.txt + + # Install the cms python package + python setup.py install + + # This will hopefully go away with https://github.com/cms-dev/cms/issues/281 + install -d $pkgdir/usr/bin + for cmd in \ + cmsContestWebServer cmsResourceService cmsScoringService cmsDropDB \ + cmsPrintingService cmsInitDB cmsAdminWebServer cmsWorker cmsChecker \ + cmsEvaluationService cmsProxyService cmsRankingWebServer cmsLogService \ + cmsSpoolExporter cmsTestFileCacher cmsAdaptContest cmsAddTask cmsMake \ + cmsYamlImporter cmsRunTests cmsRWSHelper cmsRemoveTask cmsAddUser \ + cmsContestExporter cmsDumpUpdater cmsDumpExporter cmsYamlReimporter \ + cmsContestImporter cmsAddContest cmsComputeComplexity cmsRemoveUser \ + cmsDumpImporter cmsReplayContest + do + ln -s /usr/lib/cms/venv/bin/$cmd $pkgdir/usr/bin/$cmd + done + + # The following will also go away eventually (I hope :/) + install -d $pkgdir/var/local/log + install -d $pkgdir/var/local/cache + install -d $pkgdir/var/local/lib + install -d $pkgdir/var/local/run + ln -s /var/log/cms $pkgdir/var/local/log/cms + ln -s /var/cache/cms $pkgdir/var/local/cache/cms + ln -s /var/lib/cms $pkgdir/var/local/lib/cms + ln -s /var/run/cms $pkgdir/var/local/run/cms } |