summaryrefslogtreecommitdiff
path: root/ceph-bin/PKGBUILD
blob: 168e8fe1b8703711ec156b05715c566f75f7dc07 (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
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
102
103
104
105
106
107
108
109
110
111
112
113
114
115
116
117
118
119
120
121
122
# Maintainer: Erich Eckner <arch at eckner dot net>
# Contributor: Paul Stemmet <aur@luxolus.com>

pkgbase='ceph-bin'
pkgname=('ceph-bin' 'ceph-libs-bin' 'ceph-mgr-bin')
pkgver=17.2.6.2
pkgrel=18
pkgdesc='Distributed, fault-tolerant storage platform delivering object, block, and file system'
arch=('x86_64')
url='https://ceph.com/'
license=('GPL')
options=('emptydirs')
_pkgver=${pkgver%.*}-${pkgver##*.}
_artifact=v${_pkgver}
source=("ceph-bin-${_pkgver}.tar.zst::https://github.com/bazaah/aur-ceph/releases/download/${_artifact}/ceph_linux_${arch}.tar.zstd"
        "ceph-libs-bin-${_pkgver}.tar.zst::https://github.com/bazaah/aur-ceph/releases/download/${_artifact}/ceph_libs_linux_${arch}.tar.zstd"
        "ceph-mgr-bin-${_pkgver}.tar.zst::https://github.com/bazaah/aur-ceph/releases/download/${_artifact}/ceph_mgr_linux_${arch}.tar.zstd")
sha512sums=('db38d454ef9fda99fbe9a0954ccb4a8a7b66537f5cb1998dd552161049a6750a82a218d6e95f2bbc2a501637bf13f2f2d0fd6a12b367733cd294364722ba236c'
            '2218b8d81ce8b94daa63ebd7674bd6d8e3da047ad46bbde1e1666eaa10d429a329ad1e6fa43d9f9d07ba5ce06b57dcc442ca3269eb482bffbb1c25d247d2ba1b'
            '029f5fd11f30800a78fdc1e4c6541c413be498b284271ef93886268fd47002f6505df698c64a8118f1c2dcef22081c4fcc79e6047db7202d66f2e3e132830742')
# Don't extract source archives
noextract=("${source[@]%%::*}")


package_ceph-libs-bin() {
  _pinned_dependencies=(
    'gcc-libs=14.1.1+r309+gbb34b7eda1f'
    'glibc>=2.36'
    'libblkid.so=1'
    'libcrypto.so=3'
    'libcurl.so=4'
    'libicuuc.so=75'
    'libssl.so=3'
    'libudev.so=1'
    'libz.so=1'
    'libzstd.so=1'
    'lz4=1:1.10.0'
  )
  if [ "${OS}" = 'arch' ]; then
    _pinned_dependencies+=(
      'libcryptsetup.so=12'
      'libexpat.so=1'
    )
  fi
  depends=('boost-libs' 'curl' 'glibc' 'keyutils' 'libutil-linux' 'bzip2' 'lz4' 'nss'
           'oath-toolkit' 'python' 'snappy' 'systemd-libs' 'fmt' 'cryptsetup'
           'lua' 'librdkafka' 'libaio' 'gperftools'
           'python-prettytable' 'python-yaml' 'python-setuptools' "${_pinned_dependencies[@]}")
  provides=("ceph-libs=${_pkgver}")
  conflicts=('ceph-libs')

  cd "${srcdir}"

  tar --exclude='.*' --zstd -xv -f ceph-libs-bin-${_pkgver}.tar.zst -C "${pkgdir}"
}

package_ceph-bin() {
  _pinned_dependencies=(
    'gcc-libs=14.1.1+r309+gbb34b7eda1f'
    'glibc>=2.36'
    'libblkid.so=1'
    'libcap-ng.so=0'
    'libcrypto.so=3'
    'libcurl.so=4'
    'libicuuc.so=75'
    'libkeyutils.so=1'
    'libncursesw.so=6'
    'libssl.so=3'
    'libudev.so=1'
    'libz.so=1'
    'lz4=1:1.10.0'
  )
  if [ "${OS}" = 'arch' ]; then
    _pinned_dependencies+=(
      'libcryptsetup.so=12'
      'libexpat.so=1'
      'libnl-3.so=200'
      'libnl-genl-3.so=200'
    )
  fi
  depends=("ceph-libs=${_pkgver}"
           'boost-libs' 'curl' 'fuse3' 'fmt' 'glibc' 'gperftools' 'java-runtime'
           'keyutils' 'libaio' 'libutil-linux' 'librdkafka' 'cryptsetup' 'libnl'
           'ncurses'
           'nss' 'oath-toolkit' 'python'
           'snappy' 'sudo' 'systemd-libs' 'lua' 'gawk' "${_pinned_dependencies[@]}")
  optdepends=('smartmontools: disk monitoring via S.M.A.R.T'
              'nvme-cli: disk monitoring for NVMe drives')
  provides=("ceph=${_pkgver}")
  conflicts=('ceph')

  cd "${srcdir}"

  tar --exclude='.*' --zstd -xv -f ceph-bin-${_pkgver}.tar.zst -C "${pkgdir}"
}

package_ceph-mgr-bin() {
  _pinned_dependencies=(
    'gcc-libs=14.1.1+r309+gbb34b7eda1f'
    'glibc>=2.36'
    'libsqlite3.so=0'
  )
  depends=("ceph=${_pkgver}" "ceph-libs=${_pkgver}"
           'bash' 'boost-libs' 'curl' 'gperftools' 'nss' 'fmt'
           'python' 'python-cherrypy' 'python-pecan' 'python-pyjwt' 'python-more-itertools'
           'python-numpy' 'python-scipy' 'python-six' 'python-coverage' 'python-pytest' 'python-dateutil'
           'python-prettytable' 'python-requests' 'python-pyopenssl' 'python-bcrypt' 'python-yaml'
           'python-werkzeug' 'python-jinja' "${_pinned_dependencies[@]}")
  optdepends=('python-influxdb: influx module'
              'python-kubernetes: rook module'
              'python-prometheus_client: prometheus module'
              'python-remoto: ssh module')
  provides=("ceph-mgr=${_pkgver}")
  conflicts=('ceph-mgr')
  options=('emptydirs' '!strip')

  cd "${srcdir}"

  tar --exclude='.*' --zstd -xv -f ceph-mgr-bin-${_pkgver}.tar.zst -C "${pkgdir}"
}

# vim:set ts=2 sw=2 et: