# Maintainer: Lain Iwakura # Contributor: Bjoern Franke pkgname=mastodon-glitch-soc-redis pkgver=4.3.2 pkgrel=1 pkgdesc='A glitchy but lovable microblogging server' arch=(any) url=https://github.com/glitch-soc/mastodon license=(AGPL3) provides=(mastodon) conflicts=(mastodon) depends=(ffmpeg git libidn libpqxx libvips libxml2 libxslt libyaml nodejs postgresql protobuf ruby-bundler sudo redis zlib) backup=(etc/mastodon.conf) install=mastodon.install options=(!strip) source=(https://github.com/glitch-soc/mastodon/archive/v$pkgver.tar.gz mastodon.target mastodon.sysusers.d mastodon.tmpfiles.d devise_pam.patch) sha512sums=('d0c4a174a3dfa35a3208067430d00b708d68e8a6343eef28369d26d2ca208bf6a6e0240ab85f2e843d4ad9e08e11a5163ee2615d8a3c75f41eeb67105e991f7f' 'bbce4ff9142265fc7d5f7669637c112240bc6d1b39dedf212faf8acb09fb9b4b2acc07038df5e790c60baff51bc44ffef9318f9fce043c6831ae5e5f02fea5a6' '4ee4210bde391e6dc782cb7c14f2cb968c95ad541aa0efcf843a811f8cc5f0d1067ee3c8346bb412aa9fd1dd5a8bd05a4524df7dc4a106957009853dd237074a' '27c4eb01d462c525b59e5808a3b2501b63a34425752128388fbde82f7eb5944b20d2f8d8b1be8ed8adb165cab4cfb8e13f90215f20989ca671a0422ffa37001f' '7b2ac9917a6d077152425ce59e2cd97df11730d197b87da324b1e0dc29042de5c11530e4d530f1775ca75fc4a06bccb6a5154feb42c8503b5830ecb46e306b7a') prepare() { cd mastodon-$pkgver patch -p1 < ../devise_pam.patch } build() { cd mastodon-$pkgver sed -i '/husky install/d' package.json # Stop husky from hijacking git hooks bundle config set deployment true bundle config without 'development test' bundle config with 'pam_authentication' bundle config set frozen false bundle add erb bundle install -j$(getconf _NPROCESSORS_ONLN) corepack enable --install-directory . yarn ./yarn install # https://aur.archlinux.org/packages/mastodon?O=0#comment-986425 cd vendor/bundle/ruby/*/gems/ox-*/ext/ox make cp ox.so ../../lib } package() { install -d "$pkgdir"/{var/lib,etc} cp -a mastodon-$pkgver "$pkgdir"/var/lib/mastodon # Put the config file in /etc and link to it touch "$pkgdir"/etc/mastodon.conf ln -s /etc/mastodon.conf "$pkgdir"/var/lib/mastodon/.env.production ln -s /usr/bin/node "$pkgdir"/var/lib/mastodon/node install -Dm 644 mastodon.target -t "$pkgdir"/usr/lib/systemd/system install -Dm 644 mastodon.sysusers.d "$pkgdir"/usr/lib/sysusers.d/mastodon.conf install -Dm 644 mastodon.tmpfiles.d "$pkgdir"/usr/lib/tmpfiles.d/mastodon.conf cd mastodon-$pkgver/dist # Fix path discrepancies sed -e 's/home\/mastodon\/live/var\/lib\/mastodon/g' \ -e 's/home\/mastodon\/.rbenv\/shims/usr\/bin/' \ -i mastodon-*.service sed -e 's/home\/mastodon\/live/var\/lib\/mastodon/g' \ -i nginx.conf install -Dm 644 mastodon-*.service -t "$pkgdir"/usr/lib/systemd/system }