summarylogtreecommitdiffstats
diff options
context:
space:
mode:
authorJean Lucas2019-12-23 13:57:15 -0500
committerJean Lucas2019-12-23 13:57:15 -0500
commit3ff45e46c5e81b85f614f8135840bb5a5caaba28 (patch)
tree7a82afb0f51c17c27915b4182bb8f9c891dd798b
parent8dc321780ec7762f5e7c25378111a41e5979d81c (diff)
downloadaur-3ff45e46c5e81b85f614f8135840bb5a5caaba28.tar.gz
2.4.0
-rw-r--r--.SRCINFO41
-rw-r--r--PKGBUILD106
-rw-r--r--mksnapshot_crash_fix.patch20
-rw-r--r--rethinkdb-tmpfile.conf1
-rw-r--r--rethinkdb.install14
-rw-r--r--rethinkdb.sysusers1
-rw-r--r--rethinkdb.sysusers.d1
-rw-r--r--rethinkdb.tmpfiles.d2
-rw-r--r--rethinkdb@.service (renamed from rethinkdb.service)1
9 files changed, 96 insertions, 91 deletions
diff --git a/.SRCINFO b/.SRCINFO
index b2aeed7daf86..1de0a79be8b0 100644
--- a/.SRCINFO
+++ b/.SRCINFO
@@ -1,33 +1,32 @@
pkgbase = rethinkdb
- pkgdesc = Distributed powerful and scalable NoSQL database
- pkgver = 2.3.6
- pkgrel = 5
- url = https://www.rethinkdb.com/
+ pkgdesc = Distributed NoSQL database for realtime applications
+ pkgver = 2.4.0
+ pkgrel = 1
+ url = https://www.rethinkdb.com
install = rethinkdb.install
arch = x86_64
- license = APACHE
+ license = Apache
makedepends = boost
makedepends = python2
- makedepends = wget
depends = protobuf
- depends = ncurses
depends = curl
- depends = openssl-1.0
+ noextract = node-v6.11.0.tar.gz
options = !emptydirs
backup = etc/rethinkdb/instances.d/default.conf
- source = https://download.rethinkdb.com/dist/rethinkdb-2.3.6.tgz
- source = https://download.rethinkdb.com/dist/rethinkdb-2.3.6.tgz.asc
- source = rethinkdb-tmpfile.conf
- source = rethinkdb.service
- source = rethinkdb.sysusers
- source = mksnapshot_crash_fix.patch::https://github.com/rethinkdb/rethinkdb/commit/871bd3705a1f29c4ab07a096d562a4b06231a97c.patch
- validpgpkeys = 3B87619DF812A63A8C1005C30742918E5C8DA04A
- sha512sums = 653177750f7439fa1d61a121e488d578be1eab90f87c7d17ad52b9793d8543f22bbe98f8d501c2ab2d7048c65118096430fe7bde945d87c7a3228905af801af2
- sha512sums = SKIP
- sha512sums = 5996f72b8e08aac80285373e8e1b5a664177e9d0e8d13e5638c6b821fe5b7a0368001fbfa9ef3f6709dabf0616abcabea40adc4808d176572f8f99b7a3255bae
- sha512sums = 95e352cb941ea37b1dc3ddf4c8eaf0c8ef80b32e7a3cccf0e6fdefb92f0af83cfa47e3e6354d0397d7dc63c3c3cd87a8cb600f7b970c20fa6a65b832be219650
- sha512sums = 974eda083410f400766833588e775c6f054fa16fd31ca80328dcacd985969db2aadfe71ad6cb91ffac89992de7efe94d90f0b3e960e9ccf4858ac962df663236
- sha512sums = f49bc92ecdd6d93bf89bd816268569f839daf0b289c44b7bede195b26ef53c2efd4ab6fb03ef0086d0a9e347210cd385755eff7e44b50d304a400d513addd5bf
+ source = https://download.rethinkdb.com/dist/rethinkdb-2.4.0.tgz
+ source = https://nodejs.org/dist/v6.11.0/node-v6.11.0.tar.gz
+ source = rethinkdb@.service
+ source = rethinkdb.sysusers.d
+ source = rethinkdb.tmpfiles.d
+ source = mksnapshot_crash_fix.patch
+ source = v8_g++7_build_fix.patch::https://github.com/nodejs/node/commit/66c1197f3aefd5b9f36533e6b617f2046acc2c0f.patch
+ sha512sums = a0301f4eee6652307ca8481a658b4494fa2b3d2151ab14afca94f50d004271be51cb487a082944c1803473086d60282fdcc53c24e793f7051088d2a3596cf1fe
+ sha512sums = a298232f6393735f2d459eb23f78089dd7eb1bae4907dfe61b286ceb8f93d3131c2dd45f09643089d00e2a4bef0f35739c9c8984f88b34c0ab515793f38eda46
+ sha512sums = d0e86e86010fafcfdad7a58fe9ed9e93deefb1ab803aa283f60cccaf7a0ee11990c59b9ab01872b1c97b08418d7b53064e938b428e50a310442b32aa385277d9
+ sha512sums = cab680a7e765e0a844b72ab3a57f19f3268d9a717bbe19230bd79537f0424179a56037c368326d2173a4a9cde075a67c85ce9b5a32733afb7d44806df1eac0ac
+ sha512sums = 112bc0f9ecfdfae6efba5d8cc3f773085b3f345d33d350188dc70609c425e6c656a0a3069ae5c66cdc684a94fd442e990a88c0ca8d1875f085f660c76c3d7250
+ sha512sums = 8deea735b2c7b6fc0221a49e818d4347869330fa9e35a94c15d54f7bc64ac0b8a573906fea6cc64c05a177f3065c96d8b4d0e2a3724b6137d7f12ba7a7b419f7
+ sha512sums = 346020fea3e10628c687dd89fc2d9aec97e1b6734fd83828d390b4187c96c085a6e99efedb8b2f87491a4c1237de06c73aee0d0671c259935eedaddcf7f505f1
pkgname = rethinkdb
diff --git a/PKGBUILD b/PKGBUILD
index 3de6b7a76182..fab77205c833 100644
--- a/PKGBUILD
+++ b/PKGBUILD
@@ -1,80 +1,78 @@
-# Maintainer: Anatol Pomozov <anatol.pomozov@gmail.com>
+# Maintainer: Jean Lucas <jean@4ray.co>
+# Contributor: Anatol Pomozov <anatol.pomozov@gmail.com>
# Contributor: Massimiliano Torromeo <massimiliano.torromeo@gmail.com>
# Contributor: Sigmund Lahn <sigmund@lahn.no>
pkgname=rethinkdb
-pkgver=2.3.6
-_tag=rethinkdb-$pkgver
-pkgrel=5
-pkgdesc='Distributed powerful and scalable NoSQL database'
+pkgver=2.4.0
+_node=6.11.0
+pkgrel=1
+pkgdesc='Distributed NoSQL database for realtime applications'
arch=(x86_64)
-url='https://www.rethinkdb.com/'
-license=(APACHE)
-depends=(protobuf ncurses curl openssl-1.0)
-makedepends=(boost python2 wget)
+url=https://www.rethinkdb.com
+license=(Apache)
+depends=(protobuf curl)
+makedepends=(boost python2)
backup=(etc/rethinkdb/instances.d/default.conf)
install=rethinkdb.install
options=(!emptydirs)
source=(
- https://download.rethinkdb.com/dist/$_tag.tgz
- https://download.rethinkdb.com/dist/$_tag.tgz.asc
- rethinkdb-tmpfile.conf
- rethinkdb.service
- rethinkdb.sysusers
- mksnapshot_crash_fix.patch::https://github.com/rethinkdb/rethinkdb/commit/871bd3705a1f29c4ab07a096d562a4b06231a97c.patch
+ https://download.rethinkdb.com/dist/$pkgname-$pkgver.tgz
+ https://nodejs.org/dist/v$_node/node-v$_node.tar.gz
+ rethinkdb@.service
+ rethinkdb.sysusers.d
+ rethinkdb.tmpfiles.d
+ mksnapshot_crash_fix.patch
+ v8_g++7_build_fix.patch::https://github.com/nodejs/node/commit/66c1197f3aefd5b9f36533e6b617f2046acc2c0f.patch
)
-sha512sums=('653177750f7439fa1d61a121e488d578be1eab90f87c7d17ad52b9793d8543f22bbe98f8d501c2ab2d7048c65118096430fe7bde945d87c7a3228905af801af2'
- 'SKIP'
- '5996f72b8e08aac80285373e8e1b5a664177e9d0e8d13e5638c6b821fe5b7a0368001fbfa9ef3f6709dabf0616abcabea40adc4808d176572f8f99b7a3255bae'
- '95e352cb941ea37b1dc3ddf4c8eaf0c8ef80b32e7a3cccf0e6fdefb92f0af83cfa47e3e6354d0397d7dc63c3c3cd87a8cb600f7b970c20fa6a65b832be219650'
- '974eda083410f400766833588e775c6f054fa16fd31ca80328dcacd985969db2aadfe71ad6cb91ffac89992de7efe94d90f0b3e960e9ccf4858ac962df663236'
- 'f49bc92ecdd6d93bf89bd816268569f839daf0b289c44b7bede195b26ef53c2efd4ab6fb03ef0086d0a9e347210cd385755eff7e44b50d304a400d513addd5bf')
-validpgpkeys=('3B87619DF812A63A8C1005C30742918E5C8DA04A') # RethinkDB Packaging <packaging@rethinkdb.com>
+noextract=(node-v$_node.tar.gz)
+sha512sums=('a0301f4eee6652307ca8481a658b4494fa2b3d2151ab14afca94f50d004271be51cb487a082944c1803473086d60282fdcc53c24e793f7051088d2a3596cf1fe'
+ 'a298232f6393735f2d459eb23f78089dd7eb1bae4907dfe61b286ceb8f93d3131c2dd45f09643089d00e2a4bef0f35739c9c8984f88b34c0ab515793f38eda46'
+ 'd0e86e86010fafcfdad7a58fe9ed9e93deefb1ab803aa283f60cccaf7a0ee11990c59b9ab01872b1c97b08418d7b53064e938b428e50a310442b32aa385277d9'
+ 'cab680a7e765e0a844b72ab3a57f19f3268d9a717bbe19230bd79537f0424179a56037c368326d2173a4a9cde075a67c85ce9b5a32733afb7d44806df1eac0ac'
+ '112bc0f9ecfdfae6efba5d8cc3f773085b3f345d33d350188dc70609c425e6c656a0a3069ae5c66cdc684a94fd442e990a88c0ca8d1875f085f660c76c3d7250'
+ '8deea735b2c7b6fc0221a49e818d4347869330fa9e35a94c15d54f7bc64ac0b8a573906fea6cc64c05a177f3065c96d8b4d0e2a3724b6137d7f12ba7a7b419f7'
+ '346020fea3e10628c687dd89fc2d9aec97e1b6734fd83828d390b4187c96c085a6e99efedb8b2f87491a4c1237de06c73aee0d0671c259935eedaddcf7f505f1')
prepare() {
- cd $_tag
+ # There are a ton of hard dependencies on Python 2
+ # Let's KISS and pretend `python` points to Python 2
+ mkdir bin
+ ln -s /usr/bin/python2 bin/python
- # fix for https://github.com/rethinkdb/rethinkdb/issues/5757
- patch -p1 < ../mksnapshot_crash_fix.patch
+ cd $pkgname-$pkgver
- sed \
- -e 's|#!/usr/bin/python|#!/usr/bin/python2|' \
- -e 's|#!/usr/bin/env python|#!/usr/bin/env python2|' \
- -i scripts/*.py external/v8_*/tools/*.py
- sed -e 's|exec python|exec python2|g' -i external/v8_*/build/gyp/gyp
- sed -e 's|\bpython\b|python2|g' -i external/v8_*/{Makefile,*/*.gyp,*/*.gypi,*/*/*.gyp}
+ patch -p0 < ../mksnapshot_crash_fix.patch
-}
+ PATH="$srcdir"/bin:$PATH ./configure \
+ --prefix=/usr \
+ --sysconfdir=/etc \
+ --localstatedir=/var \
+ --allow-fetch
-build() {
- cd $_tag
- export PYTHON=/usr/bin/python2
- CXX=g++-5 ./configure --fetch v8 --fetch jemalloc --dynamic all --enable-precompiled-web --prefix=/usr --sysconfdir=/etc --localstatedir=/var CXXFLAGS="$CXXFLAGS -I/usr/include/openssl-1.0" LDFLAGS="$LDFLAGS -L/usr/lib/openssl-1.0"
- make ALLOW_WARNINGS=1
+ # Manually fetch the Node version used, so we can patch it
+ cd external
+ tar zxfp ../../node-v$_node.tar.gz
+ mv node{-v,_}$_node
+ cd node_$_node
+ patch -p1 < "$srcdir"/v8_g++7_build_fix.patch
}
-check() {
- cd $_tag
-
- # these tests are flaky and extremely slow in Arch chroot
- # make build/release/rethinkdb-unittest
- # ./build/release/rethinkdb-unittest --gtest_filter=-RDBBtree.*:RDBInterrupt.*
- # some tests might be flaky on btrfs filesystem
+build() {
+ cd $pkgname-$pkgver
+ PATH="$srcdir"/bin:$PATH make -j`nproc`
}
package() {
- cd $_tag
- make DESTDIR="$pkgdir" install
+ cd $pkgname-$pkgver
- install -Dm644 "$srcdir"/rethinkdb.sysusers "$pkgdir"/usr/lib/sysusers.d/rethinkdb.conf
- install -Dm644 "$srcdir"/rethinkdb-tmpfile.conf "$pkgdir"/usr/lib/tmpfiles.d/rethinkdb.conf
- install -Dm644 "$srcdir"/rethinkdb.service "$pkgdir"/usr/lib/systemd/system/rethinkdb@.service
+ make DESTDIR="$pkgdir" install
+ rm -r "$pkgdir"/etc/init.d
- # create 'default' database instance
mv "$pkgdir"/etc/rethinkdb/default.conf.sample "$pkgdir"/etc/rethinkdb/instances.d/default.conf
- sed -e 's|# directory=/var/lib/rethinkdb|directory=/var/lib/rethinkdb|' \
- -i "$pkgdir"/etc/rethinkdb/instances.d/default.conf
+ sed -r 's#\# (directory=.*)#\1#' -i "$pkgdir"/etc/rethinkdb/instances.d/default.conf
- # Arch uses systemd, no need for init.d scripts
- rm -r "$pkgdir"/etc/init.d
+ install -Dm 644 ../rethinkdb@.service -t "$pkgdir"/usr/lib/systemd/system
+ install -Dm 644 ../rethinkdb.sysusers.d "$pkgdir"/usr/lib/sysusers.d/rethinkdb.conf
+ install -Dm 644 ../rethinkdb.tmpfiles.d "$pkgdir"/usr/lib/tmpfiles.d/rethinkdb.conf
}
diff --git a/mksnapshot_crash_fix.patch b/mksnapshot_crash_fix.patch
new file mode 100644
index 000000000000..12f158617c72
--- /dev/null
+++ b/mksnapshot_crash_fix.patch
@@ -0,0 +1,20 @@
+--- mk/support/pkg/v8.sh
++++ mk/support/pkg/v8.sh
+@@ -155,7 +155,7 @@
+ if [[ "$arch" = "ppc64" ]]; then
+ arch_gypflags="$arch_gypflags -Duse_system_icu=1"
+ fi
+- pkg_make $arch.$mode CXX=$CXX LINK=$CXX LINK.target=$CXX GYPFLAGS="-Dwerror= $arch_gypflags" V=1
++ pkg_make $arch.$mode CXX=$CXX LINK=$CXX LINK.target=$CXX GYPFLAGS="-Dwerror= -Dv8_use_snapshot=false $arch_gypflags" V=1
+ for lib in `find "$build_dir/out/$arch.$mode" -maxdepth 1 -name \*.a` `find "$build_dir/out/$arch.$mode/obj.target" -name \*.a`; do
+ name=`basename $lib`
+ cp $lib "$install_dir/lib/${name/.$arch/}"
+@@ -168,7 +168,7 @@
+ # These are the necessary libraries recommended by the docs:
+ # https://developers.google.com/v8/get_started#hello
+ if [[ "$ARCH" != "ppc64le" ]]; then
+- for lib in libv8_{base,libbase,snapshot,libplatform}; do
++ for lib in libv8_{base,libbase,nosnapshot,libplatform}; do
+ echo "$install_dir/lib/$lib.a"
+ done
+ for lib in libicu{i18n,uc,data}; do
diff --git a/rethinkdb-tmpfile.conf b/rethinkdb-tmpfile.conf
deleted file mode 100644
index 694501e8ab55..000000000000
--- a/rethinkdb-tmpfile.conf
+++ /dev/null
@@ -1 +0,0 @@
-d /run/rethinkdb 0755 rethinkdb rethinkdb - \ No newline at end of file
diff --git a/rethinkdb.install b/rethinkdb.install
index 18f506b7919b..b822a08cd773 100644
--- a/rethinkdb.install
+++ b/rethinkdb.install
@@ -1,15 +1,3 @@
post_install() {
- if [ -d /var/lib/rethinkdb ]; then
- echo "Database directory '/var/lib/rethinkdb' already exists. If you want to recreate default database then delete the directory and run 'rethinkdb create -d /var/lib/rethinkdb/default'."
- fi
-
- if [ ! -d /var/lib/rethinkdb/default ]; then
- mkdir -p /var/lib/rethinkdb
- /usr/bin/rethinkdb create -d /var/lib/rethinkdb/default
- fi
- chown -R rethinkdb:rethinkdb /var/lib/rethinkdb
-}
-
-post_remove() {
- echo "RethinkDB data directory '/var/lib/rethinkdb' is left untouched. Remove it if you really sure you won't need your data in the future."
+ echo "To create the default database, run 'sudo -u rethinkdb rethinkdb create -d /var/lib/rethinkdb/default'"
}
diff --git a/rethinkdb.sysusers b/rethinkdb.sysusers
deleted file mode 100644
index 3e2bfb5c41d1..000000000000
--- a/rethinkdb.sysusers
+++ /dev/null
@@ -1 +0,0 @@
-u rethinkdb - "Rethinkdb daemon user" /var/lib/rethinkdb
diff --git a/rethinkdb.sysusers.d b/rethinkdb.sysusers.d
new file mode 100644
index 000000000000..dd8531de5933
--- /dev/null
+++ b/rethinkdb.sysusers.d
@@ -0,0 +1 @@
+u rethinkdb - "RethinkDB daemon user" /var/lib/rethinkdb
diff --git a/rethinkdb.tmpfiles.d b/rethinkdb.tmpfiles.d
new file mode 100644
index 000000000000..4c053e34a1f3
--- /dev/null
+++ b/rethinkdb.tmpfiles.d
@@ -0,0 +1,2 @@
+d /var/lib/rethinkdb - rethinkdb rethinkdb
+d /run/rethinkdb - rethinkdb rethinkdb
diff --git a/rethinkdb.service b/rethinkdb@.service
index 9c9bbedd4cd7..7e73c618cb21 100644
--- a/rethinkdb.service
+++ b/rethinkdb@.service
@@ -3,7 +3,6 @@ Description=RethinkDB database server for instance '%i'
[Service]
User=rethinkdb
-Group=rethinkdb
ExecStart=/usr/bin/rethinkdb serve --config-file /etc/rethinkdb/instances.d/%i.conf
KillMode=process
PrivateTmp=true