contrib/grafana/Pkgfile

58 lines
2.0 KiB
Plaintext

# Description: The analytics platform for all your metrics
# URL: https://grafana.com/
# Maintainer: Tim Biermann, tbier at posteo dot de
# Depends on: fontconfig go git npm yarn
name=grafana
version=8.4.4
release=1
source=(https://github.com/grafana/grafana/archive/v$version/$name-$version.tar.gz
https://dl.grafana.com/oss/release/grafana-$version.linux-amd64.tar.gz
grafana.confd grafana.service)
build() {
# setup build env {{{
export LC_ALL=C
[ ! -d $PKGMK_SOURCE_DIR/yarn_cache ] && mkdir $PKGMK_SOURCE_DIR/yarn_cache
export YARN_CACHE_FOLDER=$PKGMK_SOURCE_DIR/yarn_cache
[ ! -d $PKGMK_SOURCE_DIR/npm_cache ] && mkdir $PKGMK_SOURCE_DIR/npm_cache
export npm_config_cache=$PKGMK_SOURCE_DIR/npm_cache
export NPM_CONFIG_PREFIX="$SRC/npm"
export PATH+=":$NPM_CONFIG_PREFIX/bin"
export CGO_LDFLAGS="${LDFLAGS}"
export CGO_CPPFLAGS="${CPPFLAGS}"
export CGO_CFLAGS="${CFLAGS}"
export CGO_CXXFLAGS="${CXXFLAGS}"
export GOFLAGS="-buildmode=pie -trimpath -modcacherw"
# }}}
# setup default paths {{{
sed -ri 's,^(\s*data\s*=).*,\1 /var/lib/grafana,' $name-$version/conf/defaults.ini
sed -ri 's,^(\s*plugins\s*=).*,\1 /var/lib/grafana/plugins,' $name-$version/conf/defaults.ini
sed -ri 's,^(\s*provisioning\s*=).*,\1 /var/lib/grafana/conf/provisioning,' $name-$version/conf/defaults.ini
sed -ri 's,^(\s*logs\s*=).*,\1 /var/log/grafana,' $name-$version/conf/defaults.ini
# }}}
cd $SRC/$name-$version
# build backend {{{
make build-go
go run build.go setup
go run build.go build
# }}}
# build frontend {{{
yarn install
NODE_ENV=production yarn run build
# }}}
install -Dm644 $SRC/$name.confd $PKG/etc/conf.d/$name
install -Dsm755 bin/linux-amd64/grafana-server $PKG/usr/bin/grafana-server
install -Dsm755 bin/linux-amd64/grafana-cli $PKG/usr/bin/grafana-cli
install -Dm644 conf/sample.ini $PKG/etc/grafana.ini
install -dm755 $PKG/usr/share/grafana
cp -r conf public $PKG/usr/share/$name/
## install rc file
install -Dm 755 $SRC/grafana.service $PKG/etc/rc.d/grafana
}
# vim: foldmethod=marker foldlevelstart=1