mirror of
https://github.com/gentoo-mirror/gentoo.git
synced 2026-08-05 12:38:09 -07:00
app-shells/atuin: add 18.6.1
Signed-off-by: Arthur Zamarin <arthurzam@gentoo.org>
This commit is contained in:
@@ -2,3 +2,5 @@ DIST atuin-18.4.0-crates.tar.xz 51123080 BLAKE2B c7266f1e8379a506fe3c5d66130b6f9
|
||||
DIST atuin-18.4.0.tar.gz 641540 BLAKE2B 234066aee376311a2336b35baf9114d3f52a8d71a5613a9d1f5d449bfce1087be20d7ebf92c8198c79d55359f53ad377334e1ea8f622b6580c8f10d1fa53b4df SHA512 26728549a52cc37dfc4d2e42cae73d5a3bb0475233b2dc88dcb7446aba355b78970601e8693fcfa5eb19658b544b7c92f20bd9e19a1a75a1cef30bec27426e03
|
||||
DIST atuin-18.5.0-crates.tar.xz 43441568 BLAKE2B a6b3315429c441d1d4449ba962bad07320b8058a88269989e851d0925ff16ea1156ddee4b787a2bdbbeaf9d20445c3bd7157233b5ab032b1586c8e579f66d2b2 SHA512 57aeb6a361d11bb42d918ff9d55f2b7e73b487dfec3edf4f63726ed2b349e53d6450029a00a5c34a64f454d2f82b6084e554882125b62ee10b6c1d40b07fe7bf
|
||||
DIST atuin-18.5.0.tar.gz 664804 BLAKE2B 72044a3fbf06e57c08cd10d8d4a70b08807f0e078367dac84e5c5411946346041308ddef1d88b6ceb82e281ea08c1a48aae5e8446881e62c3666d2e8af3ceb6d SHA512 7f493ccd9c23b898e46238001752e20317be010bc2871cccf24f64770d5fbd3c45d6fba8e2143651f126f0119ef348fb543cb0017be6fd5738c6217bd6921eaf
|
||||
DIST atuin-18.6.1-crates.tar.xz 43525080 BLAKE2B 2b8eac104e61d506191d1027e1b73e09bdd177fb8d88fd50affdd57c146a7e57e1dcebc8ed524d4f052b4c9eb3df384324eb753ccf2535d0272c44166ad44b8b SHA512 2c4d54b83db7101ae81ea3c0965249dab0143e4175ca7632d36fd9d3f9e1f8d29284c18742b8d16f8b1c8b430e2f76cdc905778da2fda11c13bb9ceface60144
|
||||
DIST atuin-18.6.1.tar.gz 666475 BLAKE2B 64a072ce2cd683184f12886ffac94a580cddd09c5beb5f936cdecb3fe7afe7db2380529b9dc74cf7c967fa50a8d23491d571b3af8befad326ffef338a00096b1 SHA512 c1a75935ea4a5335315841e767c89cb2da5374449943497bbad8744e12fe2e64c49bb442f3987fd5cf4707dccfa2a066df3d7abcbf7a7ddadde29a6c9fcf5c56
|
||||
|
||||
141
app-shells/atuin/atuin-18.6.1.ebuild
Normal file
141
app-shells/atuin/atuin-18.6.1.ebuild
Normal file
@@ -0,0 +1,141 @@
|
||||
# Copyright 2023-2025 Gentoo Authors
|
||||
# Distributed under the terms of the GNU General Public License v2
|
||||
|
||||
EAPI=8
|
||||
|
||||
CRATES=" "
|
||||
RUST_MIN_VER="1.86"
|
||||
|
||||
inherit cargo readme.gentoo-r1 shell-completion systemd
|
||||
|
||||
DESCRIPTION="Shell history manager supporting encrypted synchronisation"
|
||||
HOMEPAGE="https://atuin.sh https://github.com/atuinsh/atuin"
|
||||
SRC_URI="https://github.com/atuinsh/${PN}/archive/refs/tags/v${PV}.tar.gz -> ${P}.tar.gz"
|
||||
SRC_URI+=" https://github.com/gentoo-crate-dist/atuin/releases/download/v${PV}/${P}-crates.tar.xz"
|
||||
|
||||
LICENSE="MIT"
|
||||
# Dependent crate licenses
|
||||
# - openssl for ring crate
|
||||
LICENSE+=" Apache-2.0 BSD Boost-1.0 ISC MIT MPL-2.0 Unicode-DFS-2016 openssl"
|
||||
SLOT="0"
|
||||
KEYWORDS="~amd64 ~arm64 ~riscv"
|
||||
IUSE="+client +daemon server test +sync"
|
||||
RESTRICT="!test? ( test )"
|
||||
REQUIRED_USE="
|
||||
|| ( client server )
|
||||
sync? ( client )
|
||||
test? ( client server sync )
|
||||
"
|
||||
DEPEND="dev-db/sqlite:3"
|
||||
RDEPEND="${DEPEND}
|
||||
server? ( acct-user/atuin )
|
||||
"
|
||||
BDEPEND="test? ( dev-db/postgresql )"
|
||||
|
||||
QA_FLAGS_IGNORED="usr/bin/${PN}"
|
||||
|
||||
DISABLE_AUTOFORMATTING=1
|
||||
|
||||
DOCS=( CONTRIBUTING.md CONTRIBUTORS README.md )
|
||||
|
||||
src_configure() {
|
||||
export LIBSQLITE3_SYS_USE_PKG_CONFIG=1
|
||||
local myfeatures=(
|
||||
$(usev client)
|
||||
$(usev daemon)
|
||||
$(usev server)
|
||||
$(usev sync)
|
||||
)
|
||||
cargo_src_configure --no-default-features
|
||||
}
|
||||
|
||||
src_compile() {
|
||||
cargo_src_compile
|
||||
|
||||
ATUIN_BIN="$(cargo_target_dir)/${PN}"
|
||||
|
||||
# Prepare shell completion generation
|
||||
mkdir completions || die
|
||||
local shell
|
||||
for shell in bash fish zsh; do
|
||||
"${ATUIN_BIN}" gen-completions \
|
||||
-s ${shell} \
|
||||
-o completions \
|
||||
|| die
|
||||
done
|
||||
|
||||
if ! use client; then
|
||||
return 0
|
||||
fi
|
||||
|
||||
mkdir shell-init || die
|
||||
for shell in bash fish zsh; do
|
||||
"${ATUIN_BIN}" init ${shell} > shell-init/${shell} || die
|
||||
done
|
||||
}
|
||||
|
||||
src_test() {
|
||||
local postgres_dir="${T}"/postgres
|
||||
initdb "${postgres_dir}" || die
|
||||
|
||||
local port=11123
|
||||
# -h '' → only socket connections allowed.
|
||||
postgres -D "${postgres_dir}" \
|
||||
-k "${postgres_dir}" \
|
||||
-p "${port}" &
|
||||
local postgres_pid=${!}
|
||||
|
||||
local timeout_secs=30
|
||||
timeout "${timeout_secs}" bash -c \
|
||||
'until printf "" >/dev/tcp/${0}/${1} 2>> "${T}/portlog"; do sleep 1; done' \
|
||||
localhost "${port}" || die "Timeout waiting for postgres port ${port} to become available"
|
||||
|
||||
psql -h localhost -p "${port}" -d postgres <<-EOF || die "Failed to configure postgres"
|
||||
create database atuin;
|
||||
create user atuin with encrypted password 'pass';
|
||||
grant all privileges on database atuin to atuin;
|
||||
\connect atuin
|
||||
grant all on schema public to atuin;
|
||||
EOF
|
||||
|
||||
# Subshell so that postgres_pid is in scope when the trap is executed.
|
||||
(
|
||||
cleanup() {
|
||||
kill "${postgres_pid}" || die "failed to send SIGTERM to postgres"
|
||||
}
|
||||
trap cleanup EXIT
|
||||
|
||||
ATUIN_DB_URI="postgres://atuin:pass@localhost:${port}/atuin" cargo_src_test
|
||||
)
|
||||
}
|
||||
|
||||
src_install() {
|
||||
dobin "${ATUIN_BIN}"
|
||||
|
||||
if use server; then
|
||||
systemd_dounit "${FILESDIR}/atuin.service"
|
||||
fi
|
||||
|
||||
dodoc -r "${DOCS[@]}"
|
||||
|
||||
newbashcomp "completions/${PN}.bash" "${PN}"
|
||||
dozshcomp "completions/_${PN}"
|
||||
dofishcomp "completions/${PN}.fish"
|
||||
|
||||
if use daemon; then
|
||||
systemd_douserunit "${FILESDIR}"/atuin-daemon.{service,socket}
|
||||
fi
|
||||
|
||||
if ! use client; then
|
||||
return 0
|
||||
fi
|
||||
|
||||
insinto "/usr/share/${PN}"
|
||||
doins -r shell-init
|
||||
|
||||
readme.gentoo_create_doc
|
||||
}
|
||||
|
||||
pkg_postinst() {
|
||||
readme.gentoo_print_elog
|
||||
}
|
||||
5
app-shells/atuin/files/README.gentoo
Normal file
5
app-shells/atuin/files/README.gentoo
Normal file
@@ -0,0 +1,5 @@
|
||||
Gentoo installs atuin's shell-init code under
|
||||
/usr/share/atuin/shell-init/
|
||||
Therefore, instead of using, e.g., 'eval \"\$(atuin init zsh)\"' in
|
||||
your .zshrc you can simply put \"source /usr/share/atuin/shell-init/zsh\"
|
||||
there, which avoids the cost of forking a process.
|
||||
Reference in New Issue
Block a user