gentoo-overlay/sys-fs/stratisd/stratisd-2.3.0.ebuild

205 lines
3.8 KiB
Bash

# Copyright 1999-2019 Gentoo Authors
# Distributed under the terms of the GNU General Public License v2
EAPI=7
CRATES="
addr2line-0.14.0
adler-0.2.3
aho-corasick-0.7.15
ansi_term-0.11.0
atty-0.2.14
autocfg-0.1.6
autocfg-1.0.1
backtrace-0.3.54
base64-0.13.0
bindgen-0.54.0
bitflags-1.2.1
bit-set-0.5.2
bit-vec-0.6.2
block-buffer-0.9.0
build_const-0.2.1
byteorder-1.3.4
cc-1.0.63
cexpr-0.4.0
cfg-if-0.1.10
cfg-if-1.0.0
chrono-0.4.19
clang-sys-0.29.3
clap-2.33.3
cloudabi-0.0.3
cpuid-bool-0.1.2
crc-1.8.1
dbus-0.8.1
devicemapper-0.28.1
digest-0.9.0
either-1.6.1
env_logger-0.7.1
env_logger-0.8.2
errno-0.2.7
errno-dragonfly-0.1.1
error-chain-0.12.4
fnv-1.0.7
fuchsia-cprng-0.1.1
gcc-0.3.55
generic-array-0.14.4
getrandom-0.1.15
gimli-0.23.0
glob-0.3.0
hermit-abi-0.1.17
humantime-1.3.0
humantime-2.0.1
itertools-0.9.0
itoa-0.4.6
lazycell-1.3.0
lazy_static-1.4.0
libc-0.2.80
libcryptsetup-rs-0.4.2
libcryptsetup-rs-sys-0.1.4
libdbus-sys-0.2.1
libloading-0.5.2
libmount-0.1.15
libudev-0.2.0
libudev-sys-0.1.4
log-0.4.11
loopdev-0.2.1
matches-0.1.8
memchr-2.3.4
miniz_oxide-0.4.3
nix-0.14.0
nix-0.18.0
nom-5.1.2
num-integer-0.1.44
num-traits-0.2.14
object-0.22.0
opaque-debug-0.3.0
peeking_take_while-0.1.2
pest-2.1.3
pkg-config-0.3.19
ppv-lite86-0.2.10
proc-macro2-1.0.24
proptest-0.10.1
quick-error-1.2.2
quote-1.0.7
rand-0.6.5
rand-0.7.3
rand_chacha-0.1.1
rand_chacha-0.2.2
rand_core-0.3.1
rand_core-0.4.2
rand_core-0.5.1
rand_hc-0.1.0
rand_hc-0.2.0
rand_isaac-0.1.1
rand_jitter-0.1.4
rand_os-0.1.3
rand_pcg-0.1.2
rand_xorshift-0.1.1
rand_xorshift-0.2.0
rdrand-0.4.0
redox_syscall-0.1.18
regex-1.4.2
regex-syntax-0.6.21
remove_dir_all-0.5.3
rustc-demangle-0.1.18
rustc-hash-1.1.0
rusty-fork-0.3.0
ryu-1.0.5
semver-0.11.0
semver-0.9.0
semver-parser-0.10.1
semver-parser-0.7.0
serde-1.0.117
serde_derive-1.0.117
serde_json-1.0.59
sha-1-0.9.2
shlex-0.1.1
strsim-0.8.0
syn-1.0.48
tempfile-3.1.0
termcolor-1.1.1
termios-0.3.3
textwrap-0.11.0
thread_local-1.0.1
time-0.1.44
timerfd-1.1.1
typenum-1.12.0
ucd-trie-0.1.3
unicode-width-0.1.8
unicode-xid-0.2.1
uuid-0.7.4
uuid-0.8.1
vec_map-0.8.2
version_check-0.9.2
void-1.0.2
wait-timeout-0.2.0
wasi-0.10.0+wasi-snapshot-preview1
wasi-0.9.0+wasi-snapshot-preview1
which-3.1.0
winapi-0.3.9
winapi-i686-pc-windows-gnu-0.4.0
winapi-util-0.1.3
winapi-x86_64-pc-windows-gnu-0.4.0
"
inherit cargo systemd
DESCRIPTION="Linux local storage management tool that aims to enable easy use of advanced storage features such as thin provisioning, snapshots, and pool-based management and monitoring."
HOMEPAGE="https://stratis-storage.github.io/"
SRC_URI="https://github.com/stratis-storage/${PN}/archive/v${PV}.tar.gz -> ${P}.tar.gz
$(cargo_crate_uris ${CRATES})"
LICENSE="MPL-2.0"
SLOT="0"
KEYWORDS="~amd64 ~x86"
IUSE="elibc_musl"
BDEPEND="
>=virtual/rust-1.43.0
sys-devel/clang
"
DEPEND="
sys-apps/dbus
virtual/udev
dev-libs/libpcre
>=sys-fs/cryptsetup-2.3
>=sys-apps/util-linux-2.32
"
RDEPEND="
${DEPEND}
sys-fs/xfsprogs
sys-block/thin-provisioning-tools
"
QA_FLAGS_IGNORED="/sbin/stratisd /usr/libexec/stratisd"
PATCHES=(
# Until feature will be released. https://github.com/stratis-storage/project/issues/161
${FILESDIR}/0001-disable-xfs-uuid-change-after-snapshot-create.patch
# Until issue will be fixed. https://github.com/stratis-storage/stratisd/issues/1470 https://github.com/stratis-storage/stratisd/issues/1780
${FILESDIR}/0002-duplicate_check-disable.patch
)
src_configure() {
# patch systemd config
sed -i 's,/usr/libexec,/usr/bin,g' stratisd.service
# patch dbus config
sed -i 's,/usr/libexec,/usr/bin,g' org.storage.stratis2.service
cargo_src_configure --all-features
}
src_install() {
cargo_src_install
einstalldocs
dodoc -r docs/.
newinitd "${FILESDIR}/init.d.stratisd-r3" stratisd
systemd_dounit "${S}/stratisd.service"
insinto /etc/dbus-1/system.d
doins ${S}/stratisd.conf
}