summaryrefslogtreecommitdiff
path: root/community/elasticsearch/PKGBUILD
blob: 150a9376d9957fc5ac9b6edec1e1427cc06af310 (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
# $Id: PKGBUILD 104999 2014-01-29 16:48:56Z mtorromeo $
# Maintainer: Massimiliano Torromeo <massimiliano.torromeo@gmail.com>
# Contributor: Marcello "mererghost" Rocha <https://github.com/mereghost>
# Refactored by Blaž "Speed" Hrastnik <https://github.com/archSeer>

pkgname=elasticsearch
pkgver=0.90.10
pkgrel=2
pkgdesc="Distributed RESTful search engine built on top of Lucene"
arch=('i686' 'x86_64')
url="http://www.elasticsearch.org/"
license=('APACHE')
depends=('java-runtime' 'bash')
install='elasticsearch.install'
source=(
  "http://download.elasticsearch.org/$pkgname/$pkgname/$pkgname-$pkgver.tar.gz"
  elasticsearch.service
  elasticsearch@.service
  elasticsearch-tmpfile.conf
)

backup=('etc/elasticsearch/elasticsearch.yml'
        'etc/elasticsearch/logging.yml')

prepare() {
  cd "$srcdir/$pkgname-$pkgver"

  for script in plugin elasticsearch; do
    sed 's|^ES_HOME=.*dirname.*|ES_HOME=/usr/share/elasticsearch|' \
      -i bin/$script

    for java in jre jdk; do
      sed "/^CDPATH/i [ -f /etc/profile.d/$java.sh ] && . /etc/profile.d/$java.sh" \
        -i bin/$script
    done
  done

  sed 's|$ES_HOME/lib|/usr/lib/elasticsearch|g' -i bin/elasticsearch.in.sh bin/plugin

  echo -e '\nJAVA_OPTS="$JAVA_OPTS -Des.path.conf=/etc/elasticsearch"' >> bin/elasticsearch.in.sh

  sed -e 's/# \(path\.conf: \).*$/\1\/etc\/elasticsearch/' \
    -e '0,/# \(path\.data: \).*$/s//\1\/var\/lib\/elasticsearch/' \
    -e 's/# \(path\.work: \).*$/\1\/tmp\/elasticsearch/' \
    -e 's/# \(path\.logs: \).*$/\1\/var\/log\/elasticsearch/' \
    -i config/elasticsearch.yml
}

package() {
  cd "$srcdir/$pkgname-$pkgver"
  install -dm755 "$pkgdir/etc/elasticsearch"
  install -dm755 "$pkgdir/var/lib/elasticsearch"
  install -dm755 "$pkgdir/var/log/elasticsearch"

  if [ $CARCH = 'x86_64' ]; then
    install -Dm644 lib/sigar/libsigar-amd64-linux.so "$pkgdir/usr/lib/elasticsearch/sigar/libsigar-amd64-linux.so"
  else
    install -Dm644 lib/sigar/libsigar-x86-linux.so "$pkgdir/usr/lib/elasticsearch/sigar/libsigar-x86-linux.so"
  fi
  cp lib/sigar/sigar*.jar "$pkgdir/usr/lib/elasticsearch/sigar/"
  cp lib/*.jar "$pkgdir/usr/lib/elasticsearch/"

  cp config/* "$pkgdir/etc/elasticsearch/"

  install -Dm755 bin/elasticsearch "$pkgdir/usr/bin/elasticsearch"
  install -Dm755 bin/plugin "$pkgdir/usr/bin/elasticsearch-plugin"
  install -Dm644 bin/elasticsearch.in.sh "$pkgdir/usr/share/elasticsearch/elasticsearch.in.sh"

  install -Dm644 "$srcdir/elasticsearch.service" "$pkgdir/usr/lib/systemd/system/elasticsearch.service"
  install -Dm644 "$srcdir/elasticsearch@.service" "$pkgdir/usr/lib/systemd/system/elasticsearch@.service"

  install -Dm644 "$srcdir/elasticsearch-tmpfile.conf" "$pkgdir/usr/lib/tmpfiles.d/elasticsearch.conf"
}

sha256sums=('78c87f600878a6cab41c1d447f6a40b25892a59f8fb49da11392a682884fb8df'
            '09a4027780d73103c26f311c64774dcbc47b5e1d54789c1f2d9c697f518f2eeb'
            'e3dd705bec204b8572456344b90c4773f867965a1215c22b6e9518f0aa268a2d'
            '48b5a876e14819270c85f8ca626a011e01d10a2728758ced9a4d5bcf5c1fd23f')