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.
79 lines
1.8 KiB
79 lines
1.8 KiB
# Copyright 1999-2024 Gentoo Authors
|
|
# Distributed under the terms of the GNU General Public License v2
|
|
|
|
EAPI=8
|
|
|
|
inherit go-module systemd
|
|
|
|
DESCRIPTION="Keybase client"
|
|
HOMEPAGE="https://keybase.io/"
|
|
|
|
if [[ ${PV} == *9999 ]]; then
|
|
EGIT_REPO_URI="https://github.com/keybase/client.git"
|
|
inherit git-r3
|
|
else
|
|
SRC_URI="https://github.com/keybase/client/archive/refs/tags/v${PV}.tar.gz -> ${P}.tar.gz"
|
|
SRC_URI+=" https://dev.gentoo.org/~nicolasbock/${P}-deps.tar.xz"
|
|
KEYWORDS="~amd64 ~arm64 ~x86"
|
|
fi
|
|
|
|
LICENSE="Apache-2.0 BSD BSD-2 LGPL-3 MIT MPL-2.0"
|
|
SLOT="0"
|
|
IUSE="fuse"
|
|
|
|
RDEPEND="
|
|
app-crypt/gnupg
|
|
fuse? (
|
|
~app-crypt/kbfs-${PV}
|
|
)
|
|
"
|
|
|
|
src_unpack() {
|
|
default
|
|
if [[ ${PV} == *9999 ]]; then
|
|
git-r3_src_unpack
|
|
GOMODCACHE="${S}/go/go-mod"
|
|
pushd "${S}/go" || die
|
|
ego mod download
|
|
popd || die
|
|
else
|
|
ln -vs "client-${PV}" "${P}" || die
|
|
mkdir -vp "${S}/src/github.com/keybase" || die
|
|
ln -vs "${S}" "${S}/src/github.com/keybase/client" || die
|
|
fi
|
|
}
|
|
|
|
src_compile() {
|
|
pushd go/keybase || die
|
|
ego build -tags production -o "${T}/keybase"
|
|
popd || die
|
|
}
|
|
|
|
src_test() {
|
|
pushd go/keybase || die
|
|
ego test
|
|
popd || die
|
|
}
|
|
|
|
src_install() {
|
|
dobin "${T}/keybase"
|
|
dobin "${S}/packaging/linux/run_keybase"
|
|
systemd_douserunit "${S}/packaging/linux/systemd/keybase.service"
|
|
insinto "/opt/keybase"
|
|
doins "${S}/packaging/linux/crypto_squirrel.txt"
|
|
dodir "/opt/keybase"
|
|
}
|
|
|
|
pkg_postinst() {
|
|
elog "Start/Restart keybase: run_keybase"
|
|
if ! use fuse; then
|
|
elog " Note that without USE=fuse the kbfs package will not"
|
|
elog " be installed automatically. Either install it manually"
|
|
elog " or export KEYBASE_NO_KBFS=1 in your shell to avoid"
|
|
elog " failures when executing run_keybase."
|
|
fi
|
|
elog "Run the service: keybase service"
|
|
elog "Run the client: keybase login"
|
|
ewarn "Note that the user keybasehelper is obsolete and can be removed"
|
|
}
|