Sign Up
Log In
Log In
or
Sign Up
Places
All Projects
Status Monitor
Collapse sidebar
home:Masgalor:Vaultwarden
vaultwarden
vaultwarden.spec
Overview
Repositories
Revisions
Requests
Users
Attributes
Meta
File vaultwarden.spec of Package vaultwarden
%define pkg_name vaultwarden Name: %{pkg_name} Version: 1.30.5 Release: 0 License: AGPL-3.0 Summary: Unofficial Bitwarden compatible server written in Rust Url: https://github.com/dani-garcia/vaultwarden Group: Applications/System Source0: %{pkg_name}-%{version}.tar.gz Source1: vendor.tar.xz Source2: rust-1.76.0-x86_64-unknown-linux-gnu.tar.gz Source10: %{pkg_name}.service Source11: %{pkg_name}.logrotate Source100: %{pkg_name}.cfg BuildRequires: systemd BuildRequires: tar BuildRequires: sed BuildRequires: git BuildRequires: pkgconfig(openssl) %if 0%{?fedora} || 0%{?rhel_version} > 700 || 0%{?centos_version} > 700 BuildRequires: sqlite-devel BuildRequires: mariadb-connector-c-devel BuildRequires: libpq-devel %endif %if 0%{?centos_version} == 700 || 0%{?rhel_version} == 700 BuildRequires: sqlite-devel BuildRequires: mariadb-devel %endif %if 0%{?sle_version} || 0%{?suse_version} BuildRequires: sqlite3-devel BuildRequires: libmariadb-devel BuildRequires: libpqxx-devel %endif %if 0%{?centos_version} == 700 BuildRequires: libpqxx-devel %endif %if 0%{?sle_version} || 0%{?rhel_version} == 700 BuildRequires: postgresql-devel %endif %if 0%{?fedora} || 0%{?rhel_version} || 0%{?centos_version} Requires(pre): shadow-utils %else Requires(pre): shadow %endif Requires: systemd %if 0%{?fedora} || 0%{?rhel_version} > 700 || 0%{?centos_version} > 700 Requires: mariadb-connector-c Requires: libpq %endif %if 0%{?centos_version} == 700 || 0%{?rhel_version} == 700 Requires: postgresql-libs Requires: mariadb-libs %endif %if 0%{?sle_version} || 0%{?suse_version} Requires: libmariadb3 Requires: libpq5 %endif Conflicts: bitwarden Conflicts: bitwarden-rs %if ! 0%{?rhel_version} == 700 && ! 0%{?centos_version} == 700 Recommends: %{pkg_name}-webvault Suggests: logrotate Provides: bitwarden Provides: bitwarden-rs %endif BuildRoot: %{_tmppath}/%{pkg_name}-%{version}-%{release}-root %{?systemd_ordering} %description Alternative implementation of the Bitwarden server API written in Rust and compatible with upstream Bitwarden clients, perfect for self-hosted deployment where running the official resource-heavy service might not be ideal. %prep %{__tar} -xf %{SOURCE0} --strip-components 1 %{__tar} -xf %{SOURCE1} %{__tar} -xf %{SOURCE2} %build ./rust*/install.sh --components=cargo,rustc,rust-std-x86_64-unknown-linux-gnu --disable-ldconfig --prefix=%{_builddir}/rust export PATH=%{_builddir}/rust/bin:$PATH cargo build --features sqlite,mysql,postgresql --offline --release --target-dir %{_builddir}/%{pkg_name}-%{version}/target %{__sed} -i 's#<sed-target-1>#%{_bindir}#' %{SOURCE10} %{__sed} -i 's#<sed-target-2>#%{_sysconfdir}/%{pkg_name}#' %{SOURCE10} %{__sed} -i 's#<sed-target-3>#%{_sharedstatedir}/%{pkg_name}#' %{SOURCE10} %{__sed} -i 's#<sed-target-4>#%{_sysconfdir}/%{pkg_name}#' %{SOURCE10} %{__sed} -i 's#<sed-target-1>#%{_localstatedir}/log/%{pkg_name}#' %{SOURCE11} %{__sed} -i 's#<sed-target-1>#%{_sharedstatedir}/%{pkg_name}#' %{SOURCE100} %{__sed} -i 's#<sed-target-2>#%{_datarootdir}/%{pkg_name}/web-vault#' %{SOURCE100} %{__sed} -i 's#<sed-target-3>#%{_localstatedir}/log/%{pkg_name}#' %{SOURCE100} %install install -m 755 -d %{buildroot}%{_bindir} install -m 750 -d %{buildroot}%{_sharedstatedir}/%{pkg_name} install -m 750 -d %{buildroot}%{_localstatedir}/log/%{pkg_name} install -m 755 -d %{buildroot}%{_sbindir} install -m 750 -d %{buildroot}%{_sysconfdir}/%{pkg_name} install -D -m 750 %{_builddir}/%{pkg_name}-%{version}/target/release/%{pkg_name} %{buildroot}%{_bindir}/%{pkg_name} install -D -m 644 %{SOURCE10} %{buildroot}%{_unitdir}/%{pkg_name}.service install -D -m 644 %{SOURCE11} %{buildroot}%{_sysconfdir}/logrotate.d/%{pkg_name} install -D -m 640 %{SOURCE100} %{buildroot}%{_sysconfdir}/%{pkg_name}/%{pkg_name}.cfg %{__ln_s} -f %{_sbindir}/service %{buildroot}%{_sbindir}/rc%{pkg_name} %check %pre %systemd_pre %{pkg_name}.service getent group %{pkg_name} >/dev/null || groupadd -r %{pkg_name} getent passwd %{pkg_name} >/dev/null || useradd -r -g %{pkg_name} -d %{_sharedstatedir}/%{pkg_name} -s /sbin/nologin -c "user for %{pkg_name}" %{pkg_name} exit 0 %preun %systemd_preun %{pkg_name}.service %post %systemd_post %{pkg_name}.service systemctl enable %{pkg_name}.service systemctl start %{pkg_name}.service %postun %systemd_postun %{pkg_name}.service %files %defattr(-,root,root,-) %{_unitdir}/%{pkg_name}.service %{_sbindir}/rc%{pkg_name} %config(noreplace) %{_sysconfdir}/logrotate.d/%{pkg_name} %dir %attr(750,%{pkg_name},%{pkg_name}) %{_sysconfdir}/%{pkg_name} %config(noreplace) %attr(-,%{pkg_name},%{pkg_name}) %{_sysconfdir}/%{pkg_name}/* %dir %attr(750,%{pkg_name},%{pkg_name}) %{_sharedstatedir}/%{pkg_name}/ %dir %attr(750,%{pkg_name},%{pkg_name}) %{_localstatedir}/log/%{pkg_name}/ %attr(550,%{pkg_name},%{pkg_name}) %{_bindir}/%{pkg_name}
Locations
Projects
Search
Status Monitor
Help
OpenBuildService.org
Documentation
API Documentation
Code of Conduct
Contact
Support
@OBShq
Terms
openSUSE Build Service is sponsored by
The Open Build Service is an
openSUSE project
.
Sign Up
Log In
Places
Places
All Projects
Status Monitor