diff options
author | Markus Richter | 2018-07-12 01:17:59 +0200 |
---|---|---|
committer | Markus Richter | 2018-07-12 01:17:59 +0200 |
commit | 90705dea9ed7e2ce0ea8438499c314238b6a3a10 (patch) | |
tree | 573b602c5b12435ade9342679fb11291272c7c3f | |
download | aur-90705dea9ed7e2ce0ea8438499c314238b6a3a10.tar.gz |
initial commit
-rw-r--r-- | .SRCINFO | 28 | ||||
-rw-r--r-- | PKGBUILD | 51 | ||||
-rw-r--r-- | bitwarden_rs.env | 23 | ||||
-rw-r--r-- | bitwarden_rs.install | 44 | ||||
-rw-r--r-- | bitwarden_rs.service | 22 |
5 files changed, 168 insertions, 0 deletions
diff --git a/.SRCINFO b/.SRCINFO new file mode 100644 index 000000000000..15486656fc0e --- /dev/null +++ b/.SRCINFO @@ -0,0 +1,28 @@ +pkgbase = bitwarden_rs-git + pkgdesc = A lightweight implementation of the bitwarden-server using rust and sqlite. Does NOT include the web-interface. + pkgver = r161.869352c + pkgrel = 1 + url = https://github.com/dani-garcia/bitwarden_rs + install = bitwarden_rs.install + arch = i686 + arch = x86_64 + arch = armv7h + arch = aarch64 + license = GPLv3 + makedepends = rust-nightly + makedepends = cargo-nightly + provides = bitwarden_rs + conflicts = bitwarden_rs + conflicts = bitwarden_rs-vault-git + conflicts = bitwarden_rs-vault + source = git+https://github.com/dani-garcia/bitwarden_rs.git + source = bitwarden_rs.install + source = bitwarden_rs.env + source = bitwarden_rs.service + sha512sums = SKIP + sha512sums = ea6ac7d915887078d7e091b99d53f2ee6fbf11ad5a80e04309263e7b06ce43de6e90e69ad62e3c99eaf81f825aebe930bf45888041225a156d74f324dfa10578 + sha512sums = 77536fee00f85378f54e7d0fd7e94d4f7c8142195cebd8bfabe032c99864908a2ffdcfcdf77bc90e58a9e66455d7eb0418a66b9f6ad87da3e5d6a107f0546476 + sha512sums = 773dc0830b4eaf3a1d4134a52a6157e6a94265c6212ae8cc24b9584f9c444b9a0f822325f487ce9c23c363f743f1f64f269352f030e98e336816aee0a68048f6 + +pkgname = bitwarden_rs-git + diff --git a/PKGBUILD b/PKGBUILD new file mode 100644 index 000000000000..b3699bdc59cb --- /dev/null +++ b/PKGBUILD @@ -0,0 +1,51 @@ +# Maintainer: Markus Richter <mqus at disroot dot org> + +pkgname=bitwarden_rs-git +_pkgbase=bitwarden_rs +pkgver=r161.869352c +pkgrel=1 +pkgdesc="A lightweight implementation of the bitwarden-server using rust and sqlite. Does NOT include the web-interface." +arch=('i686' 'x86_64' 'armv7h' 'aarch64') +url="https://github.com/dani-garcia/bitwarden_rs" +license=('GPLv3') +groups=() +makedepends=('rust-nightly' 'cargo-nightly') +provides=("$_pkgbase") +conflicts=("$_pkgbase" "${_pkgbase}-vault-git" "${_pkgbase}-vault") +replaces=() +backup=() +options=() +install=bitwarden_rs.install +source=('git+https://github.com/dani-garcia/bitwarden_rs.git' + "${_pkgbase}.install" + "${_pkgbase}.env" + "${_pkgbase}.service") +noextract=() +sha512sums=('SKIP' + 'ea6ac7d915887078d7e091b99d53f2ee6fbf11ad5a80e04309263e7b06ce43de6e90e69ad62e3c99eaf81f825aebe930bf45888041225a156d74f324dfa10578' + '77536fee00f85378f54e7d0fd7e94d4f7c8142195cebd8bfabe032c99864908a2ffdcfcdf77bc90e58a9e66455d7eb0418a66b9f6ad87da3e5d6a107f0546476' + '773dc0830b4eaf3a1d4134a52a6157e6a94265c6212ae8cc24b9584f9c444b9a0f822325f487ce9c23c363f743f1f64f269352f030e98e336816aee0a68048f6') + + +pkgver() { + cd "$srcdir/$_pkgbase" + ( set -o pipefail + git describe --long 2>/dev/null | sed 's/\([^-]*-g\)/r\1/;s/-/./g' || + printf "r%s.%s" "$(git rev-list --count HEAD)" "$(git rev-parse --short HEAD)" + ) +} + +build() { + #build bitwarden_rs + cd "$srcdir/$_pkgbase" + cargo build --release +} + +package() { + # setup systemd service + install -D -m 0644 "$srcdir/bitwarden_rs.service" "$pkgdir/usr/lib/systemd/system/bitwarden_rs.service" + # copy default config file + install -D -m 0644 "$srcdir/bitwarden_rs.env" "$pkgdir/etc/bitwarden_rs.env" + # copy binary + install -D -m0755 "$srcdir/$_pkgbase/target/release/bitwarden_rs" "$pkgdir/usr/bin/bitwarden_rs" +} diff --git a/bitwarden_rs.env b/bitwarden_rs.env new file mode 100644 index 000000000000..ca04a2544ad2 --- /dev/null +++ b/bitwarden_rs.env @@ -0,0 +1,23 @@ +# Environment-variables to configure bitwarden_rs + +# --- Bitwarden config + +# DATA_FOLDER = data +# RSA_KEY_FILENAME = data/rsa_key +# DATABASE_URL = data/db.sqlite3 +# ICON_CACHE_FOLDER = data/icon_cache +# ATTACHMENTS_FOLDER = data/attachments +# LOCAL_ICON_EXTRACTOR = false +# SIGNUPS_ALLOWED = true +# PASSWORD_ITERATIONS = 100000 + +# --- Web-Vault-config + +# Web-Vault can not be enabled because of missing files. +WEB_VAULT_ENABLED = false +# WEB_VAULT_FOLDER = web-vault/ + +# --- Rocket-config +# ROCKET_PORT = 8000 +# ROCKET_LISTEN = localhost +# ... See https://api.rocket.rs/rocket/config/index.html for more options, e.g. TLS. diff --git a/bitwarden_rs.install b/bitwarden_rs.install new file mode 100644 index 000000000000..3a6f11fe9511 --- /dev/null +++ b/bitwarden_rs.install @@ -0,0 +1,44 @@ +post_install() { + # Create users and data directory + + echo "Adding user bitwarden_rs and creating data directory /var/lib/bitwarden_rs ..." + useradd -Ur -s /usr/bin/nologin bitwarden_rs + mkdir -p /var/lib/bitwarden_rs -m 0750 + chown bitwarden_rs:bitwarden_rs /var/lib/bitwarden_rs + # Add service file + systemctl --quiet daemon-reload + + + echo "##########" + echo "# " + echo "# Remember to configure the server via its environment-variables under /etc/bitwarden_rs.env" + echo "# After that, start/enable the server via 'systemctl enable bitwarden_rs.service --now'" + echo "#" + echo "##########" + +# systemctl --quiet preset bitwarden_rs.service +} + +post_upgrade() { + systemctl --quiet daemon-reload + echo "##########" + echo "# " + echo "# Remember to restart the bitwarden via 'systemctl restart bitwarden_rs.service', if neccessary." + echo "#" + echo "##########" + +} + +pre_remove() { + systemctl --quiet --no-reload disable --now bitwarden_rs.service +} + +post_remove() { + systemctl --quiet daemon-reload + echo "##########" + echo "# " + echo "# Remember to remove the user/group bitwarden_rs, if neccessary." + echo "# All server data in /var/lib/bitwarden_rs was NOT deleted!" + echo "#" + echo "##########" +} diff --git a/bitwarden_rs.service b/bitwarden_rs.service new file mode 100644 index 000000000000..ff6e7a7a8061 --- /dev/null +++ b/bitwarden_rs.service @@ -0,0 +1,22 @@ +[Unit] +Description=Bitwarden Server (Rust Edition) +Documentation=https://github.com/dani-garcia/bitwarden_rs +After=network.target + +[Service] +User=bitwarden_rs +Group=bitwarden_rs +EnvironmentFile=/etc/bitwarden_rs.env +ExecStart=/usr/bin/bitwarden_rs +LimitNOFILE=1048576 +LimitNPROC=64 +PrivateTmp=true +PrivateDevices=true +ProtectHome=true +ProtectSystem=strict +WorkingDirectory=/var/lib/bitwarden_rs +ReadWriteDirectories=/var/lib/bitwarden_rs +AmbientCapabilities=CAP_NET_BIND_SERVICE + +[Install] +WantedBy=multi-user.target |