summarylogtreecommitdiffstats
path: root/PKGBUILD
blob: 1b61491f7305757522491389964cbff9bb6d6b47 (plain)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
# Maintainer: Caleb Maclennan <caleb@alerque.com>

# Fedora spec: https://src.fedoraproject.org/rpms/pagure/blob/master/f/pagure.spec
# OpenSUSE spec: https://build.opensuse.org/package/view_file/openSUSE:Factory/pagure/pagure.spec?expand=1
# Mageia spec: http://svnweb.mageia.org/packages/cauldron/pagure/current/SPECS/pagure.spec?view=markup

pkgname=pagure
pkgver=5.8.1
pkgrel=0.1O
pkgdesc="A git-centered forge based on python using pygit2"
arch=("any")
url="https://pagure.io/$pkgname"
license=("GPL2")
_pydeps=('alembic'
         'arrow'
         'bcrypt'
         'binaryornot'
         'bleach'
         'blinker'
         'celery'
         'chardet'
         'cryptography'
         'docutils'
         'flask'
         'flask-wtf'
         'kitchen'
         'markdown'
         'munch'
         'pillow'
         'psutil'
         'pygit2'
         'openid'
         'openid-cla'
         'openid-teams'
         'redis'
         'requests'
         'six'
         'sqlalchemy'
         'straight.plugin'
         'wtforms')
depends=('git'
         'gitolite' # This is technically optional, but our packaging assumes it
         'libffi'
         'libgit2'
         'libjpeg'
         'python'
         "${_pydeps[@]/#/python-}"
         'redis')
makedepends=('python-setuptools')
checkdepends=('python-tox')
optdepends=('mariadb: MariaDB backend'
            'postgresql: PostgreSQL backend'
            'python-pg8000: Python driver for PostgreSQL'
            'python-psycopg2: Python driver for PostgreSQL'
            'python-mysqlclient: Python driver for MariaDB'
            'python-pymysql: Python driver for MariaDB')
backup=("etc/$pkgname/alembic.ini"
        "etc/$pkgname/pagure.cfg")
source=("https://releases.pagure.org/$pkgname/$pkgname-$pkgver.tar.gz"
        "https://src.fedoraproject.org/rpms/pagure/raw/master/f/0501-Revert-Add-a-upper-limit-to-sqlalchemy.patch")
install="$pkgname.install"
sha256sums=('5e150bad0a3f932d265cb59d46c8b6a532be0f757aab695a8c37df3f5f4db687'
            'c1da9e6ae2255f7896920ecb261f18c59f8ad6ba5726a8484f6287ae3962c854')

prepare() {
    cd "$pkgname-$pkgver"
    patch -p1 < "../${source[1]##*/}"
    local site_packages=$(python -c "import site; print(site.getsitepackages()[0])")
    sed -i -e "s#/usr/lib/pythonX.Y/site-packages#$site_packages#" files/pagure.conf
}

build() {
    cd "$pkgname-$pkgver"
    python setup.py build
}

check() {
    cd "$pkgname-$pkgver"
    tox
}

package() {
    cd "$pkgname-$pkgver"
    python setup.py install --root="$pkgdir" --optimize=1 --skip-build
    install -Dm644 -t "$pkgdir/usr/share/doc/$pkgname/" {README,UPGRADING}.rst
    install -Dm644 -T files/pagure.cfg.sample "$pkgdir"/etc/pagure/pagure.cfg
    install -Dm644 -t "$pkgdir"/etc/pagure/ files/alembic.ini
}