packages/PKGBUILD

82 lines
2.6 KiB
Bash
Raw Normal View History

2019-10-12 10:31:58 +00:00
# Maintainer: Daniel Moch <daniel@danielmoch.com>
# Contributor: Jean Lucas <jean@4ray.co>
2019-04-13 02:45:33 +00:00
# Contributor: Fredrick Brennan <copypaste@kittens.ph>
2017-04-07 09:36:31 +00:00
pkgname=mastodon
2020-05-15 15:22:34 +00:00
pkgver=3.1.4
2020-05-13 02:23:11 +00:00
pkgrel=1
2019-04-13 02:45:33 +00:00
pkgdesc='Self-hosted social media and network server based on ActivityPub and OStatus'
2018-11-27 04:55:32 +00:00
arch=(x86_64)
url=https://github.com/tootsuite/mastodon
license=(AGPL3)
2018-06-27 01:07:24 +00:00
depends=(ffmpeg
imagemagick
2018-11-27 04:55:32 +00:00
libidn
2018-06-27 01:07:24 +00:00
libpqxx
libxml2
libxslt
2019-04-13 02:45:33 +00:00
libyaml
2020-05-13 02:23:11 +00:00
nodejs
2018-06-27 01:07:24 +00:00
postgresql
redis
ruby-bundler
protobuf
2019-10-12 10:31:58 +00:00
yarn
2020-04-04 13:43:49 +00:00
zlib)
2020-04-04 13:48:15 +00:00
makedepends=(git)
2019-04-13 02:45:33 +00:00
backup=(etc/mastodon.conf)
2017-04-11 13:51:26 +00:00
install=mastodon.install
source=(https://github.com/tootsuite/mastodon/archive/v$pkgver.tar.gz
2019-04-13 02:45:33 +00:00
mastodon.target
mastodon.sysusers.d
mastodon.tmpfiles.d)
2020-05-15 15:22:34 +00:00
sha512sums=('14353e32ae68ad5799dd6387a4d8f9f744a1c60fb6809435e1153683168fa0450d1f710e8aef6c3e9cb09744c2b5ca567c901e5f5d0fe7bd9baa851a5de1d664'
2019-04-13 02:45:33 +00:00
'c9820c2a83d08bd5d842a78e924682db97ebd5c7291b682603ad30dafcdcc5816c13e717ad39554f042b9d9ed71ab902ce3f604952264a900a72612ee8060acb'
'4ee4210bde391e6dc782cb7c14f2cb968c95ad541aa0efcf843a811f8cc5f0d1067ee3c8346bb412aa9fd1dd5a8bd05a4524df7dc4a106957009853dd237074a'
'73493680845e690d0cfd769fbbe68978c0a615602375078aea945ca1f1011404eb4b64972aec7a6e5efa720fb425d91b3f30025391c38ccf77e070ccb391e710')
prepare() {
cd mastodon-$pkgver
# Allow use of any bundler
sed -i -e '/BUNDLED/,+1d' Gemfile.lock
# Allow use of higher Node minor versions
sed -i 's/"node": "/&^/' package.json
}
2018-06-19 19:29:37 +00:00
build() {
cd mastodon-$pkgver
2020-04-04 13:43:49 +00:00
bundle config set deployment 'true'
bundle config set without 'development test'
2020-05-13 02:23:11 +00:00
bundle install -j$(getconf _NPROCESSORS_ONLN)
2018-06-19 19:29:37 +00:00
yarn install --pure-lockfile
}
package() {
2019-04-13 02:45:33 +00:00
install -d "$pkgdir"/{var/lib,etc}
cp -a mastodon-$pkgver "$pkgdir"/var/lib/mastodon
2019-04-13 02:45:33 +00:00
# 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
2019-10-12 11:26:54 +00:00
ln -s /usr/bin/node "$pkgdir"/var/lib/mastodon/node
2020-04-04 13:43:49 +00:00
2019-04-13 02:45:33 +00:00
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
for f in mastodon-*.service; do
sed -e '0,/home/s/home/var\/lib/' \
-e 's/\/live//' \
-e 's/=\/usr\/bin/=\/var\/lib\/mastodon/' \
-e 's/home\/mastodon\/.rbenv\/shims/usr\/bin/' \
-i $f
done
install -Dm 644 mastodon-*.service -t "$pkgdir"/usr/lib/systemd/system
2018-06-19 19:29:37 +00:00
}