You can not select more than 25 topics Topics must start with a letter or number, can include dashes ('-') and can be up to 35 characters long.
gentoo-overlay/app-crypt/sequoia-sq/sequoia-sq-0.33.0.ebuild

528 lines
9.8 KiB

# Copyright 2021-2024 Gentoo Authors
# Distributed under the terms of the GNU General Public License v2
EAPI=8
CRATES="
addr2line@0.21.0
adler@1.0.2
aead@0.5.2
aes-gcm@0.10.3
aes@0.8.3
ahash@0.8.7
aho-corasick@1.1.2
aligned@0.4.1
allocator-api2@0.2.16
android-tzdata@0.1.1
android_system_properties@0.1.5
anstream@0.6.11
anstyle-parse@0.2.3
anstyle-query@1.0.2
anstyle-wincon@3.0.2
anstyle@1.0.4
anyhow@1.0.79
as-slice@0.2.1
ascii-canvas@3.0.0
assert_cmd@2.0.13
async-trait@0.1.77
autocfg@1.1.0
backtrace@0.3.69
base16ct@0.2.0
base64@0.21.7
base64ct@1.6.0
bindgen@0.68.1
bit-set@0.5.3
bit-vec@0.6.3
bitflags@1.3.2
bitflags@2.4.2
block-buffer@0.10.4
block-padding@0.3.3
blowfish@0.9.1
botan-sys@0.10.5
botan@0.10.7
bstr@1.9.0
buffered-reader@1.3.0
bumpalo@3.14.0
byteorder@1.5.0
bytes@1.5.0
bzip2-sys@0.1.11+1.0.8
bzip2@0.4.4
camellia@0.1.0
cast5@0.11.1
cc@1.0.83
cexpr@0.6.0
cfb-mode@0.8.2
cfg-if@1.0.0
chrono@0.4.31
cipher@0.4.4
clang-sys@1.7.0
clap@4.4.18
clap_builder@4.4.18
clap_complete@4.4.7
clap_derive@4.4.7
clap_lex@0.6.0
clap_mangen@0.2.17
cmac@0.7.2
colorchoice@1.0.0
const-oid@0.9.6
core-foundation-sys@0.8.6
core-foundation@0.9.4
cpufeatures@0.2.12
crc32fast@1.3.2
crossbeam-channel@0.5.11
crossbeam-deque@0.8.5
crossbeam-epoch@0.9.18
crossbeam-queue@0.3.11
crossbeam-utils@0.8.19
crossbeam@0.8.4
crunchy@0.2.2
crypto-bigint@0.5.5
crypto-common@0.1.6
ctr@0.9.2
curve25519-dalek-derive@0.1.1
curve25519-dalek@4.1.1
cvt@0.1.2
data-encoding@2.5.0
dbl@0.3.2
der@0.7.8
deranged@0.3.11
des@0.8.1
deunicode@1.4.2
diff@0.1.13
difflib@0.4.0
digest@0.10.7
dirs-next@2.0.0
dirs-sys-next@0.1.2
dirs-sys@0.4.1
dirs@5.0.1
doc-comment@0.3.3
dot-writer@0.1.3
dsa@0.6.2
dyn-clone@1.0.16
eax@0.5.0
ecb@0.1.2
ecdsa@0.16.9
ed25519-dalek@2.1.0
ed25519@2.2.3
either@1.9.0
elliptic-curve@0.13.8
ena@0.14.2
encoding_rs@0.8.33
endian-type@0.1.2
enum-as-inner@0.6.0
enumber@0.3.0
env_logger@0.10.2
equivalent@1.0.1
errno@0.3.8
fallible-iterator@0.3.0
fallible-streaming-iterator@0.1.9
fastrand@2.0.1
fd-lock@4.0.2
fehler-macros@1.0.0
fehler@1.0.0
ff@0.13.0
fiat-crypto@0.2.5
file_diff@1.0.0
filetime@0.2.23
fixedbitset@0.4.2
flate2@1.0.28
float-cmp@0.9.0
fnv@1.0.7
foreign-types-shared@0.1.1
foreign-types@0.3.2
form_urlencoded@1.2.1
fs2@0.4.3
fs_at@0.1.10
futures-channel@0.3.30
futures-core@0.3.30
futures-io@0.3.30
futures-macro@0.3.30
futures-sink@0.3.30
futures-task@0.3.30
futures-util@0.3.30
generator@0.7.5
generic-array@0.14.7
getopts@0.2.21
getrandom@0.2.12
ghash@0.5.0
gimli@0.28.1
git-testament-derive@0.2.0
git-testament@0.2.5
glob@0.3.1
globset@0.4.14
globwalk@0.8.1
group@0.13.0
h2@0.3.24
hashbrown@0.12.3
hashbrown@0.14.3
hashlink@0.8.4
heck@0.4.1
hermit-abi@0.3.4
hickory-client@0.24.0
hickory-proto@0.24.0
hickory-resolver@0.24.0
hkdf@0.12.4
hmac@0.12.1
hostname@0.3.1
html-escape@0.2.13
http-body@0.4.6
http@0.2.11
httparse@1.8.0
httpdate@1.0.3
humansize@2.1.3
humantime@2.1.0
hyper-tls@0.5.0
hyper@0.14.28
iana-time-zone-haiku@0.1.2
iana-time-zone@0.1.59
idea@0.5.1
idna@0.4.0
idna@0.5.0
ignore@0.4.22
indexmap@1.9.3
indexmap@2.1.0
inout@0.1.3
ipconfig@0.3.2
ipnet@2.9.0
is-terminal@0.4.10
itertools@0.10.5
itoa@1.0.10
js-sys@0.3.67
lalrpop-util@0.20.0
lalrpop@0.20.0
lazy_static@1.4.0
lazycell@1.3.0
libc@0.2.152
libloading@0.8.1
libm@0.2.8
libredox@0.0.1
libsqlite3-sys@0.27.0
line-col@0.2.1
linked-hash-map@0.5.6
linux-raw-sys@0.4.13
lock_api@0.4.11
log@0.4.20
loom@0.5.6
lru-cache@0.1.2
match_cfg@0.1.0
matchers@0.1.0
md-5@0.10.6
memchr@2.7.1
memsec@0.6.3
mime@0.3.17
minimal-lexical@0.2.1
miniz_oxide@0.7.1
mio@0.8.10
native-tls@0.2.11
nettle-sys@2.3.0
nettle@7.3.0
new_debug_unreachable@1.0.4
nibble_vec@0.1.0
nix@0.26.4
nom@7.1.3
normalize-line-endings@0.3.0
normpath@1.1.1
nu-ansi-term@0.46.0
num-bigint-dig@0.8.4
num-integer@0.1.45
num-iter@0.1.43
num-traits@0.2.17
num_cpus@1.16.0
object@0.32.2
once_cell@1.19.0
opaque-debug@0.3.0
openpgp-cert-d@0.3.1
openssl-macros@0.1.1
openssl-probe@0.1.5
openssl-sys@0.9.98
openssl@0.10.62
option-ext@0.2.0
overload@0.1.1
p256@0.13.2
parking_lot@0.12.1
parking_lot_core@0.9.9
peeking_take_while@0.1.2
pem-rfc7468@0.7.0
percent-encoding@2.3.1
pest@2.7.6
pest_derive@2.7.6
pest_generator@2.7.6
pest_meta@2.7.6
petgraph@0.6.4
phf_shared@0.10.0
pikchr@0.1.3
pin-project-lite@0.2.13
pin-utils@0.1.0
pkcs1@0.7.5
pkcs8@0.10.2
pkg-config@0.3.29
platforms@3.3.0
polyval@0.6.1
powerfmt@0.2.0
ppv-lite86@0.2.17
precomputed-hash@0.1.1
predicates-core@1.0.6
predicates-tree@1.0.9
predicates@3.1.0
primeorder@0.13.6
proc-macro2@1.0.76
pulldown-cmark@0.9.3
quick-error@1.2.3
quote@1.0.35
radix_trie@0.2.1
rand@0.8.5
rand_chacha@0.3.1
rand_core@0.6.4
rayon-core@1.12.1
rayon@1.8.1
redox_syscall@0.4.1
redox_users@0.4.4
regex-automata@0.1.10
regex-automata@0.4.3
regex-syntax@0.6.29
regex-syntax@0.7.5
regex-syntax@0.8.2
regex@1.10.2
remove_dir_all@0.8.2
reqwest@0.11.23
resolv-conf@0.7.0
rfc6979@0.4.0
ripemd@0.1.3
roadmap@0.5.0
roff@0.2.1
rpassword@7.3.1
rsa@0.9.6
rtoolbox@0.0.2
rusqlite@0.30.0
rustc-demangle@0.1.23
rustc-hash@1.1.0
rustc_version@0.4.0
rustix@0.38.30
rustversion@1.0.14
ryu@1.0.16
same-file@1.0.6
schannel@0.1.23
scoped-tls@1.0.1
scopeguard@1.2.0
sec1@0.7.3
security-framework-sys@2.9.1
security-framework@2.9.2
semver@1.0.21
sequoia-autocrypt@0.25.1
sequoia-cert-store@0.4.0
sequoia-net@0.28.0
sequoia-openpgp@1.17.0
sequoia-policy-config@0.6.0
sequoia-wot@0.9.0
serde-aux@4.4.0
serde@1.0.195
serde_derive@1.0.195
serde_json@1.0.111
serde_urlencoded@0.7.1
serde_yaml@0.8.26
serde_yaml@0.9.30
sha1collisiondetection@0.3.2
sha2@0.10.8
sharded-slab@0.1.7
shell-words@1.1.0
shlex@1.2.0
signature@2.2.0
siphasher@0.3.11
slab@0.4.9
slug@0.1.5
smallvec@1.13.0
smawk@0.3.2
socket2@0.5.5
spin@0.5.2
spki@0.7.3
stable_deref_trait@1.2.0
state@0.5.3
string_cache@0.8.7
strsim@0.10.0
subplot-build@0.9.0
subplot@0.9.0
subplotlib-derive@0.9.0
subplotlib@0.9.0
subtle@2.5.0
syn@1.0.109
syn@2.0.48
system-configuration-sys@0.5.0
system-configuration@0.5.1
tempfile-fast@0.3.4
tempfile@3.9.0
tera@1.19.1
term@0.7.0
termcolor@1.4.1
terminal_size@0.3.0
termtree@0.4.1
textwrap@0.15.2
thiserror-impl@1.0.56
thiserror@1.0.56
thread_local@1.1.7
time-core@0.1.2
time-macros@0.2.16
time@0.3.31
tiny-keccak@2.0.2
tinyvec@1.6.0
tinyvec_macros@0.1.1
tokio-macros@2.2.0
tokio-native-tls@0.3.1
tokio-util@0.7.10
tokio@1.35.1
toml@0.5.11
tower-service@0.3.2
tracing-attributes@0.1.27
tracing-core@0.1.32
tracing-log@0.2.0
tracing-subscriber@0.3.18
tracing@0.1.40
try-lock@0.2.5
twofish@0.7.1
typenum@1.17.0
ucd-trie@0.1.6
unescape@0.1.0
unic-char-property@0.9.0
unic-char-range@0.9.0
unic-common@0.9.0
unic-segment@0.9.0
unic-ucd-segment@0.9.0
unic-ucd-version@0.9.0
unicase@2.7.0
unicode-bidi@0.3.15
unicode-ident@1.0.12
unicode-linebreak@0.1.5
unicode-normalization@0.1.22
unicode-width@0.1.11
unicode-xid@0.2.4
universal-hash@0.5.1
unsafe-libyaml@0.2.10
url@2.5.0
utf8-width@0.1.7
utf8parse@0.2.1
valuable@0.1.0
vcpkg@0.2.15
version_check@0.9.4
wait-timeout@0.2.0
walkdir@2.4.0
want@0.3.1
wasi@0.11.0+wasi-snapshot-preview1
wasm-bindgen-backend@0.2.90
wasm-bindgen-futures@0.4.40
wasm-bindgen-macro-support@0.2.90
wasm-bindgen-macro@0.2.90
wasm-bindgen-shared@0.2.90
wasm-bindgen@0.2.90
web-sys@0.3.67
widestring@1.0.2
win-crypto-ng@0.5.1
winapi-i686-pc-windows-gnu@0.4.0
winapi-util@0.1.6
winapi-x86_64-pc-windows-gnu@0.4.0
winapi@0.3.9
windows-core@0.52.0
windows-sys@0.45.0
windows-sys@0.48.0
windows-sys@0.52.0
windows-targets@0.42.2
windows-targets@0.48.5
windows-targets@0.52.0
windows@0.48.0
windows_aarch64_gnullvm@0.42.2
windows_aarch64_gnullvm@0.48.5
windows_aarch64_gnullvm@0.52.0
windows_aarch64_msvc@0.42.2
windows_aarch64_msvc@0.48.5
windows_aarch64_msvc@0.52.0
windows_i686_gnu@0.42.2
windows_i686_gnu@0.48.5
windows_i686_gnu@0.52.0
windows_i686_msvc@0.42.2
windows_i686_msvc@0.48.5
windows_i686_msvc@0.52.0
windows_x86_64_gnu@0.42.2
windows_x86_64_gnu@0.48.5
windows_x86_64_gnu@0.52.0
windows_x86_64_gnullvm@0.42.2
windows_x86_64_gnullvm@0.48.5
windows_x86_64_gnullvm@0.52.0
windows_x86_64_msvc@0.42.2
windows_x86_64_msvc@0.48.5
windows_x86_64_msvc@0.52.0
winreg@0.50.0
x25519-dalek@2.0.0
xxhash-rust@0.8.8
yaml-rust@0.4.5
z-base-32@0.1.3
zerocopy-derive@0.7.32
zerocopy@0.7.32
zeroize@1.7.0
zeroize_derive@1.4.2
"
LLVM_MAX_SLOT=17
inherit cargo shell-completion llvm
DESCRIPTION="CLI of the Sequoia OpenPGP implementation"
HOMEPAGE="https://sequoia-pgp.org/ https://gitlab.com/sequoia-pgp/sequoia-sq"
SRC_URI="
https://gitlab.com/sequoia-pgp/sequoia-sq/-/archive/v${PV}/${PN}-v${PV}.tar.bz2
${CARGO_CRATE_URIS}
"
S="${WORKDIR}"/${PN}-v${PV}
LICENSE="LGPL-2.1+"
# Dependent crate licenses
LICENSE+="
Apache-2.0 BSD Boost-1.0 CC0-1.0 ISC LGPL-2+ MIT MIT-0 MPL-2.0
Unicode-DFS-2016
|| ( GPL-2 GPL-3 LGPL-3 )
"
SLOT="0"
KEYWORDS="amd64 ~ppc64"
QA_FLAGS_IGNORED="usr/bin/sq"
COMMON_DEPEND="
dev-db/sqlite:3
dev-libs/gmp:=
dev-libs/nettle:=
dev-libs/openssl:=
"
DEPEND="
${COMMON_DEPEND}
sys-devel/clang
"
RDEPEND="
${COMMON_DEPEND}
"
# Clang needed for bindgen
BDEPEND="
<sys-devel/clang-$((${LLVM_MAX_SLOT} + 1))
virtual/pkgconfig
>=virtual/rust-1.70
"
llvm_check_deps() {
has_version -b "sys-devel/clang:${LLVM_SLOT}"
}
src_compile() {
# Setting CARGO_TARGET_DIR is required to have the build system
# create the bash and zsh completion files.
CARGO_TARGET_DIR="${S}/target" cargo_src_compile
}
src_install() {
local asset_dir="${T}"/assets
ASSET_OUT_DIR="${asset_dir}" cargo_src_install
doman "${asset_dir}"/man-pages/*
local completion_dir="${asset_dir}"/shell-completions
newbashcomp "${completion_dir}"/sq.bash sq
dozshcomp "${completion_dir}"/_sq
dofishcomp "${completion_dir}"/sq.fish
}