# Maintainer: Sergej Pupykin <pupykin.s+arch@gmail.com>
# Contributor: Federico Cuello <fedux@fedux.com.ar>

pkgname=redmine
pkgver=6.0.5
pkgrel=1
pkgdesc="A flexible project management web application written using Ruby on Rails framework."
arch=('x86_64')
url="https://www.redmine.org"
license=('GPL2')
depends=(
  imagemagick
  libxml2
  libxslt
  ruby
)
makedepends=(
  mariadb-libs
  postgresql-libs
  ruby-bundler
  ruby-erb
  sqlite
  systemd
)
optdepends=('apache: A supported application server'
            'nginx: A supported application server'
            'mysql: MySQL database support'
            'postgresql: PostgreSQL database support'
            'sqlite: SQLite database support')
source=("$url/releases/$pkgname-$pkgver.tar.gz"
	"Gemfile.local"
	"redmine.service")
sha512sums=('03e6d655283cfb00cd286e2e0c7868791e4c6982da65076026648f25d12ba3b00d51b6c46f4c3fde0b91250cf7f950e2270cc480f8758928e3742f3a5063b497'
            'dff9cdfaa296130003cdc92822e924bea164ba6a7405893887cc3b87e8f84325b499c884853d13c33fe00613a776d6b84cfdf8a5240a6130fbf7c6eb1bd9b39b'
            'e8cf8b47fdc51f01cbbcfde2b822e9c57eb3989ada116cd2ffe6982d9947feca30f256221e018babc3afedb9c62c65ff158bb024259ebfabc30d719b90692166')

build() {
    cd "$srcdir"/redmine-$pkgver

    sed -i "/ruby '/d" Gemfile
    cp "${srcdir}"/Gemfile.local Gemfile.local
    bundle config set force_ruby_platform true
    bundle config build.nokogiri --use-system-libraries "-- --with-cflags='$(ruby -r rbconfig -e 'print RbConfig::CONFIG["CFLAGS"]') -Wno-incompatible-pointer-types'"
#    bundle config set without 'development test'
#    bundle config set no-cache 'true'
#    bundle config set deployment 'true'
    bundle lock
    bundle install --no-cache --deployment --without development test
}

package() {
    install -dm 755 "$pkgdir"/usr/share/webapps/

    rm "$srcdir"/redmine-$pkgver/vendor/bundle/ruby/3*/extensions/*/*/*/{mkmf.log,gem_make.out}
    rm -rf "$srcdir"/redmine-$pkgver/vendor/bundle/ruby/3*/gems/*/ext/

    cp -a --no-preserve=ownership "$srcdir"/redmine-$pkgver "$pkgdir"/usr/share/webapps/redmine

    install -Dm0644 "${srcdir}"/redmine.service "${pkgdir}"/usr/lib/systemd/system/redmine.service

    cd "$pkgdir"/usr/share/webapps/redmine
    rm -rf files log
    install -dm0755 -o http -g http "$pkgdir"/var/lib/redmine/files
    install -dm0755 -o http -g http "$pkgdir"/var/log/redmine
    mv tmp "$pkgdir"/var/lib/redmine/tmp
    chown -R http:http "$pkgdir"/var/lib/redmine/tmp
    ln -s /var/log/redmine log
    ln -s /var/lib/redmine/files files
    ln -s /var/lib/redmine/tmp tmp
}
