commit: e9cd77576774faf558ce427f5cdac93ed8dc115d Author: Julien Roy <julien <AT> jroy <DOT> ca> AuthorDate: Mon Jan 13 16:18:02 2025 +0000 Commit: Julien Roy <julien <AT> jroy <DOT> ca> CommitDate: Mon Jan 13 16:42:58 2025 +0000 URL: https://gitweb.gentoo.org/repo/proj/guru.git/commit/?id=e9cd7757
app-admin/vaultwarden: add 1.32.7 Closes: https://bugs.gentoo.org/944476 Signed-off-by: Julien Roy <julien <AT> jroy.ca> app-admin/vaultwarden/Manifest | 3 + app-admin/vaultwarden/vaultwarden-1.32.7.ebuild | 137 ++++++++++++++++++++++++ 2 files changed, 140 insertions(+) diff --git a/app-admin/vaultwarden/Manifest b/app-admin/vaultwarden/Manifest index 12188a027..b220395d9 100644 --- a/app-admin/vaultwarden/Manifest +++ b/app-admin/vaultwarden/Manifest @@ -11,3 +11,6 @@ DIST vaultwarden-1.32.4.tar.gz 619528 BLAKE2B 7c559b984f889c86c9902e9bd07e6b6374 DIST vaultwarden-1.32.5-docs.tar.xz 703140 BLAKE2B 6bca8f3e03b73d2bc921cc7f91df7bf5199a6267f7cd34e5f183d04d29d29aeb6d6973c61611ee4a18bbe2e8d3627682c018a3af2411497c140f772c977bae5b SHA512 2e865e3cc68a58227b2d5d99fd2292a4f6ddecce3dccbda99c896a1a83afd2020d0252f2104988099a8f564e20b67e2b09ce82923594bf6bafa2c91736ee057b DIST vaultwarden-1.32.5-vendor.tar.xz 57885072 BLAKE2B 50d29fb4eee5031802ab8309017a288c7f08bcbdbfe7c0ed4e2008f716956a91dadcdbcebc177baa6663e10298e7e1638ac1077efb8bdcb36a5d7172a2ce282c SHA512 9f015a5b0a26eab7d5425ed2de6a6a7ebec3ccce78531db6cd625495fe17a750c0a748d98040ebccb48e04360f7515b40fb1bfa7cd75db63f0e0ce6a4e43584e DIST vaultwarden-1.32.5.tar.gz 623393 BLAKE2B 61bdf57c16f9eb7940c399bf29dbc06b8a46b5821ba1bc77745b0f9a81fc259acbb08c9a70bba7dbf03a8ebbc3e080fe07f76f97e13036b2b57beffea29e1ec2 SHA512 671988090220aa974900c83025b4e7c1fdb92975786126bdc86def6c04aa2485cc456157d2570a058d8496c2141d15edfa6615b0f481c769a054efcae7373869 +DIST vaultwarden-1.32.7-docs.tar.xz 703140 BLAKE2B 6bca8f3e03b73d2bc921cc7f91df7bf5199a6267f7cd34e5f183d04d29d29aeb6d6973c61611ee4a18bbe2e8d3627682c018a3af2411497c140f772c977bae5b SHA512 2e865e3cc68a58227b2d5d99fd2292a4f6ddecce3dccbda99c896a1a83afd2020d0252f2104988099a8f564e20b67e2b09ce82923594bf6bafa2c91736ee057b +DIST vaultwarden-1.32.7-vendor.tar.xz 57393432 BLAKE2B 1dccb4ea8887de90b5dbdb56aa40f4f5d9d670c0b5b1adc19eebd48da05768bb7518fd04638b3630228761474d1ff5015001ca47a94d0ab0677d3ca426837d48 SHA512 6642638c4689b86f68ac7571bcc97139d201c84aa1bfefe78b1ccdb1bd2a6ff758f123a46c1eef14fc95888220ac184d9c911ed0ef18da352a2a80650a65e064 +DIST vaultwarden-1.32.7.tar.gz 628227 BLAKE2B aaf782cdea3c5ad1aca31ec7e40e70df731377d4f8bbd8b752a7aea1b26660feb69c65101fc4597bcbb48d37931e946a45a05d76be3050a538a04f78664db1df SHA512 906f082c9609a52161156b0f5330c197971ffae51d308f8df86f34841b91293394518079e353b06914e5a762555cda37038faa607d1c4893530fdd196688d196 diff --git a/app-admin/vaultwarden/vaultwarden-1.32.7.ebuild b/app-admin/vaultwarden/vaultwarden-1.32.7.ebuild new file mode 100644 index 000000000..53e5a280f --- /dev/null +++ b/app-admin/vaultwarden/vaultwarden-1.32.7.ebuild @@ -0,0 +1,137 @@ +# Copyright 1999-2025 Gentoo Authors +# Distributed under the terms of the GNU General Public License v2 + +EAPI=8 + +# https://github.com/dani-garcia/vaultwarden/issues/4649 +RUST_MAX_VER="1.83.0" + +inherit cargo check-reqs readme.gentoo-r1 systemd tmpfiles + +DESCRIPTION="Unofficial Bitwarden compatible password manager server written in Rust" +HOMEPAGE="https://github.com/dani-garcia/vaultwarden" + +if [[ ${PV} == 9999* ]]; then + inherit git-r3 + EGIT_REPO_URI="https://github.com/dani-garcia/vaultwarden.git" +else + SRC_URI=" + https://github.com/dani-garcia/vaultwarden/archive/refs/tags/${PV}.tar.gz -> ${P}.tar.gz + https://jroy.ca/dist/${P}-vendor.tar.xz -> ${P}-vendor.tar.xz + https://jroy.ca/dist/${P}-wiki.tar.xz -> ${P}-docs.tar.xz + " + KEYWORDS="~amd64" +fi + +LICENSE="AGPL-3" +# Dependent crate licenses +LICENSE+=" 0BSD Apache-2.0 BSD ISC MIT MPL-2.0 Unicode-3.0" + +SLOT="0" +IUSE="cli mysql postgres +sqlite web" +REQUIRED_USE="|| ( mysql postgres sqlite )" + +RDEPEND=" + acct-user/vaultwarden + acct-group/vaultwarden + dev-libs/openssl:= + cli? ( || ( app-admin/bitwarden-cli app-admin/bitwarden-cli-bin ) ) + mysql? ( dev-db/mysql-connector-c:= ) + postgres? ( dev-db/postgresql:* ) + sqlite? ( dev-db/sqlite:3 ) + web? ( || ( www-apps/vaultwarden-web www-apps/vaultwarden-web-bin ) ) +" + +DEPEND="${RDEPEND}" +BDEPEND="virtual/pkgconfig" + +QA_FLAGS_IGNORED="usr/bin/${PN}" +QA_PRESTRIPPED="usr/bin/${PN}" +ECARGO_VENDOR="${WORKDIR}/vendor" + +PATCHES=( + "${FILESDIR}"/vaultwarden-envfile-1.30.3.patch +) + +CHECKREQS_MEMORY=3G +CHECKREQS_DISK_BUILD=2G + +DOC_CONTENTS="\n + Configuration file: /etc/${PN}.env\n + Data directory: /var/lib/${PN}\n + \n + MySQL & PostgreSQL users must set DATABASE_URL in config\n + \n + Default server: http://0.0.0.0:8000\n + Admin interface: http://0.0.0.0:8000/admin +" + +pkg_setup() { + check-reqs_pkg_setup + rust_pkg_setup +} + +src_unpack() { + if [[ ${PV} == 9999* ]]; then + # clone vaultwarden + git-r3_src_unpack + + # clone vaultwarden.wiki + EGIT_REPO_URI="https://github.com/dani-garcia/vaultwarden.wiki.git" + EGIT_CHECKOUT_DIR="${WORKDIR}/${PN}.wiki" + git-r3_src_unpack + + cargo_live_src_unpack + else + cargo_src_unpack + mkdir "${CARGO_HOME}/gentoo" || die + ln -s "${WORKDIR}/vendor/"* "${CARGO_HOME}/gentoo/" || die + sed -i "${ECARGO_HOME}/config.toml" \ + -e 's/work\/vendor/work\/cargo_home\/gentoo/' \ + -e '/source.crates-io/d' \ + -e '/replace-with = "gentoo"/d' \ + -e '/local-registry = "\/nonexistent"/d' \ + || die + cat "${WORKDIR}/vendor/vendor-config.toml" >> "${ECARGO_HOME}/config.toml" || die + fi +} + +src_prepare() { + default + use web && { sed -i -e 's|^WEB_VAULT_ENABLED=false|WEB_VAULT_ENABLED=true|g;' .env.template || die; } +} + +src_configure() { + local myfeatures=( + $(usev sqlite) + $(usev mysql) + $(usev postgres postgresql ) + ) + cargo_src_configure +} + +src_compile() { + # https://github.com/dani-garcia/vaultwarden/blob/main/build.rs + [[ ${PV} != 9999* ]] && export VW_VERSION="${PV}" + cargo_src_compile --no-default-features +} + +src_install() { + dobin target/*/*/"${PN}" + systemd_newunit "${FILESDIR}"/vaultwarden-1.30.3.service "${PN}".service + newinitd "${FILESDIR}"/vaultwarden-1.30.3.initd "${PN}" + newtmpfiles "${FILESDIR}"/vaultwarden-tmpfiles-1.30.3.conf "${PN}".conf + insinto /etc + newins .env.template "${PN}".env + dosym -r /etc/"${PN}".env /etc/conf.d/"${PN}" + keepdir /var/lib/"${PN}" + + readme.gentoo_create_doc + einstalldocs + dodoc -r ../"${PN}".wiki/* +} + +pkg_postinst() { + tmpfiles_process "${PN}".conf + readme.gentoo_print_elog +}
