summarylogtreecommitdiffstats
diff options
context:
space:
mode:
authorMarkus Richter2018-07-22 18:18:53 +0200
committerMarkus Richter2018-07-22 18:18:53 +0200
commite6e63202d96bf3ae92ad9ef35b2a5a96b2748a02 (patch)
tree88a9723a4cec73488a0c685c53fbf5063c8e703c
parent8204e730f4569442cdf9660036f99df1b5b6bd4c (diff)
downloadaur-e6e63202d96bf3ae92ad9ef35b2a5a96b2748a02.tar.gz
add first bitwarden-web vault v2.0
-rw-r--r--.SRCINFO37
-rw-r--r--0001-Change-Vault-Settings.patch14
-rw-r--r--0002-Set-Vault-Location.patch11
-rw-r--r--PKGBUILD83
-rw-r--r--bitwarden_rs-vault.install47
-rw-r--r--bitwarden_rs.install54
-rw-r--r--bitwarden_rs.service22
7 files changed, 80 insertions, 188 deletions
diff --git a/.SRCINFO b/.SRCINFO
index 29ce44ab135f..5d91498ce83d 100644
--- a/.SRCINFO
+++ b/.SRCINFO
@@ -1,36 +1,19 @@
pkgbase = bitwarden_rs-vault-git
- pkgdesc = An unofficial lightweight implementation of the bitwarden-server using rust and sqlite. Includes the web-interface 'vault'.
- pkgver = 0.10.0.r2.g55b7a3e
+ pkgdesc = Integrates the Vault Web-Interface into bitwarden_rs.
+ pkgver = v1.27.0.r355.g3544c96
pkgrel = 1
- url = https://github.com/dani-garcia/bitwarden_rs
- install = bitwarden_rs.install
- arch = i686
- arch = x86_64
- arch = armv7h
- arch = aarch64
- license = GPL3
- makedepends = rust-nightly
- makedepends = cargo-nightly
+ url = https://github.com/bitwarden/web
+ install = bitwarden_rs-vault.install
+ arch = any
+ license = AGPL3
makedepends = npm
- depends = openssl
- provides = bitwarden_rs
+ depends = bitwarden_rs
provides = bitwarden_rs-vault
- conflicts = bitwarden_rs
- conflicts = bitwarden_rs-git
conflicts = bitwarden_rs-vault
- backup = etc/bitwarden_rs.env
- source = git+https://github.com/dani-garcia/bitwarden_rs.git
- source = https://github.com/bitwarden/web/archive/v1.27.0.tar.gz
- source = 0001-Change-Vault-Settings.patch
- source = 0002-Set-Vault-Location.patch
- source = bitwarden_rs.install
- source = bitwarden_rs.service
+ source = git+https://github.com/bitwarden/web.git
+ source = bitwarden_rs-vault.install
sha512sums = SKIP
- sha512sums = 493588b8ec965775d0bcb58e5830d6c523131858957d5656d0480edcc93a45860606d190f0d0847ce529f43911efad4af7ca8bd2b0f21d12c05da333dcb1b4d5
- sha512sums = c2c8971abc23d874d8f822f59f1543c3f3a5bba106b146ec2065256c77209857e5915281de1b93efe8b937a1c172592e0c20b8ac1b50bf323eb54014b097156c
- sha512sums = 5fd4ca0f1a87170a6753b9fd4fa38b77a877a3415a936d08550ffe5dfac272974221e9d61c53b6391fff85dc6ced57113117fb0d27ba19bd07ef1b5424a2e44a
- sha512sums = f2987e720ec008372862b18479c48cd3be8c66ebe4eb2d8595b5bc238e6c18ccc7f82fd499e5ab0d701aaae60447d8e98fb8514eebe3ceac1fc4dd831974099c
- sha512sums = 773dc0830b4eaf3a1d4134a52a6157e6a94265c6212ae8cc24b9584f9c444b9a0f822325f487ce9c23c363f743f1f64f269352f030e98e336816aee0a68048f6
+ sha512sums = 5265612afd40cb757e7d6550ca902f9c02c558e7d03607a181df923374efdf9eff85296c216db7c96d9987eb1fe0834a7eb90de7dcd988c9f7443dc69b9469b1
pkgname = bitwarden_rs-vault-git
diff --git a/0001-Change-Vault-Settings.patch b/0001-Change-Vault-Settings.patch
deleted file mode 100644
index 145362c937a5..000000000000
--- a/0001-Change-Vault-Settings.patch
+++ /dev/null
@@ -1,14 +0,0 @@
---- settings.Production.json 2018-05-31 20:33:00.000000000 +0200
-+++ settings.Production.json 2018-07-11 23:39:12.479350252 +0200
-@@ -2,8 +2,8 @@
- "appSettings": {
- "apiUri": "/api",
- "identityUri": "/identity",
-- "iconsUri": "https://icons.bitwarden.com",
-- "stripeKey": "pk_live_bpN0P37nMxrMQkcaHXtAybJk",
-- "braintreeKey": "production_qfbsv8kc_njj2zjtyngtjmbjd"
-+ "iconsUri": "/icons",
-+ "stripeKey": "",
-+ "braintreeKey": ""
- }
- }
diff --git a/0002-Set-Vault-Location.patch b/0002-Set-Vault-Location.patch
deleted file mode 100644
index 00beaf1da121..000000000000
--- a/0002-Set-Vault-Location.patch
+++ /dev/null
@@ -1,11 +0,0 @@
---- .env 2018-07-12 12:10:14.679534090 +0200
-+++ .env 2018-07-12 12:21:34.165391938 +0200
-@@ -11,7 +11,7 @@
- # ATTACHMENTS_FOLDER=data/attachments
-
- ## Web vault settings
--# WEB_VAULT_FOLDER=web-vault/
-+WEB_VAULT_FOLDER=/usr/share/bitwarden_rs/vault/
- # WEB_VAULT_ENABLED=true
-
- ## Controls if new users can register
diff --git a/PKGBUILD b/PKGBUILD
index b3951bf6ba19..e192f626ec5d 100644
--- a/PKGBUILD
+++ b/PKGBUILD
@@ -1,77 +1,40 @@
# Maintainer: Markus Richter <mqus at disroot dot org>
pkgname=bitwarden_rs-vault-git
-_pkgbase=bitwarden_rs
-pkgver=0.10.0.r2.g55b7a3e
-_vaultver=1.27.0
+pkgver=v1.27.0.r355.g3544c96
pkgrel=1
-pkgdesc="An unofficial lightweight implementation of the bitwarden-server using rust and sqlite. Includes the web-interface 'vault'."
-arch=('i686' 'x86_64' 'armv7h' 'aarch64')
-url="https://github.com/dani-garcia/bitwarden_rs"
-license=('GPL3')
-groups=()
-makedepends=('rust-nightly' 'cargo-nightly' 'npm')
-depends=('openssl')
-provides=("$_pkgbase" "${_pkgbase}-vault")
-conflicts=("$_pkgbase" "${_pkgbase}-git" "${_pkgbase}-vault")
-replaces=()
-backup=('etc/bitwarden_rs.env')
-options=()
-install=bitwarden_rs.install
-source=('git+https://github.com/dani-garcia/bitwarden_rs.git'
- "https://github.com/bitwarden/web/archive/v$_vaultver.tar.gz"
- "0001-Change-Vault-Settings.patch"
- "0002-Set-Vault-Location.patch"
- "${_pkgbase}.install"
- "${_pkgbase}.service")
-noextract=()
+pkgdesc="Integrates the Vault Web-Interface into bitwarden_rs."
+arch=('any')
+url="https://github.com/bitwarden/web"
+license=('AGPL3')
+makedepends=('npm')
+depends=('bitwarden_rs')
+conflicts=("bitwarden_rs-vault")
+provides=('bitwarden_rs-vault')
+install=bitwarden_rs-vault.install
+source=("git+https://github.com/bitwarden/web.git"
+ "${pkgname%-git}.install")
sha512sums=('SKIP'
- '493588b8ec965775d0bcb58e5830d6c523131858957d5656d0480edcc93a45860606d190f0d0847ce529f43911efad4af7ca8bd2b0f21d12c05da333dcb1b4d5'
- 'c2c8971abc23d874d8f822f59f1543c3f3a5bba106b146ec2065256c77209857e5915281de1b93efe8b937a1c172592e0c20b8ac1b50bf323eb54014b097156c'
- '5fd4ca0f1a87170a6753b9fd4fa38b77a877a3415a936d08550ffe5dfac272974221e9d61c53b6391fff85dc6ced57113117fb0d27ba19bd07ef1b5424a2e44a'
- 'f2987e720ec008372862b18479c48cd3be8c66ebe4eb2d8595b5bc238e6c18ccc7f82fd499e5ab0d701aaae60447d8e98fb8514eebe3ceac1fc4dd831974099c'
- '773dc0830b4eaf3a1d4134a52a6157e6a94265c6212ae8cc24b9584f9c444b9a0f822325f487ce9c23c363f743f1f64f269352f030e98e336816aee0a68048f6')
-
+ '5265612afd40cb757e7d6550ca902f9c02c558e7d03607a181df923374efdf9eff85296c216db7c96d9987eb1fe0834a7eb90de7dcd988c9f7443dc69b9469b1')
pkgver() {
- cd "$srcdir/$_pkgbase"
- ( set -o pipefail
- git describe --long --tags 2>/dev/null | sed 's/\([^-]*-g\)/r\1/;s/-/./g' ||
- printf "r%s.%s" "$(git rev-list --count HEAD)" "$(git rev-parse --short HEAD)"
- )
-}
-prepare() {
- #follow https://github.com/dani-garcia/bitwarden_rs/blob/master/BUILD.md AND remove the package-lock to fix gulp execution (see https://github.com/gulpjs/gulp/issues/2162 )
- cd "$srcdir/web-$_vaultver"
- #fix gulp install
- rm package-lock.json
- #patch all
- patch -N -i "$srcdir/0001-Change-Vault-Settings.patch"
+ cd "$srcdir/web"
+ ( set -o pipefail
+ git describe --long --tags 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"
- patch -N -i "$srcdir/0002-Set-Vault-Location.patch"
- cargo build --release
-
#build vault webinterface
- cd "$srcdir/web-$_vaultver"
- npm install
- npx gulp dist:selfHosted
+ cd "$srcdir/web"
+ npm install --cache "${srcdir}/npm-cache"
+ npm run sub:init --cache "${srcdir}/npm-cache"
+ npm run dist:selfhost --cache "${srcdir}/npm-cache"
}
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/$_pkgbase/.env" "$pkgdir/etc/bitwarden_rs.env"
-
# install vault files
install -d "$pkgdir/usr/share/bitwarden_rs"
- cp -r "$srcdir/web-$_vaultver/dist" "$pkgdir/usr/share/bitwarden_rs/vault"
-
- # copy binary
- install -D -m0755 "$srcdir/$_pkgbase/target/release/bitwarden_rs" "$pkgdir/usr/bin/bitwarden_rs"
+ cp -r "$srcdir/web/build" "$pkgdir/usr/share/bitwarden_rs/vault"
}
diff --git a/bitwarden_rs-vault.install b/bitwarden_rs-vault.install
new file mode 100644
index 000000000000..199636f66a27
--- /dev/null
+++ b/bitwarden_rs-vault.install
@@ -0,0 +1,47 @@
+post_install() {
+ # Patch config to make bitwarden_rs aware of vault
+ echo "Trying to automatically reconfigure bitwarden_rs by patching /etc/bitwarden_rs.env ..."
+ echo '--- /etc/bitwarden_rs.env 2018-07-12 12:10:14.679534090 +0200
++++ /etc/bitwarden_rs.env 2018-07-12 12:21:34.165391938 +0200
+@@ -13,4 +13,4 @@
+ ## Web vault settings
+-# WEB_VAULT_FOLDER=web-vault/
++WEB_VAULT_FOLDER=/usr/share/bitwarden_rs/vault/
+-WEB_VAULT_ENABLED=false
++# WEB_VAULT_ENABLED=true
+
+'|patch /etc/bitwarden_rs.env >/dev/null
+
+ if [ $? -eq 0 ]; then
+ echo "Reconfiguring successful!, please restart bitwarden_rs.service!"
+ else
+ echo "Patching failed. Please insert the following two lines into /etc/bitwarden_rs.env (make sure that DOMAIN is (un)set correctly) and restart bitwarden_rs.service"
+ echo "WEB_VAULT_FOLDER=/usr/share/bitwarden_rs/vault/"
+ echo "WEB_VAULT_ENABLED=true"
+ fi
+
+}
+
+
+post_remove() {
+ # Patch config to disable vault
+ echo "Trying to automatically reconfigure bitwarden_rs by patching /etc/bitwarden_rs.env ..."
+ echo '--- /etc/bitwarden_rs.env 2018-07-12 12:10:14.679534090 +0200
++++ /etc/bitwarden_rs.env 2018-07-12 12:21:34.165391938 +0200
+@@ -13,4 +13,4 @@
+ ## Web vault settings
+-WEB_VAULT_FOLDER=/usr/share/bitwarden_rs/vault/
++# WEB_VAULT_FOLDER=web-vault/
+-# WEB_VAULT_ENABLED=true
++WEB_VAULT_ENABLED=false
+
+'|patch /etc/bitwarden_rs.env >/dev/null
+
+ if [ $? -eq 0 ]; then
+ echo "Reconfiguring successful!, please restart bitwarden_rs.service!"
+ else
+ echo "Patching failed. Please change /etc/bitwarden_rs.env to include the following two lines and restart bitwarden_rs.service"
+ echo "# WEB_VAULT_FOLDER=/usr/share/bitwarden_rs/vault/"
+ echo "WEB_VAULT_ENABLED=false"
+ fi
+}
diff --git a/bitwarden_rs.install b/bitwarden_rs.install
deleted file mode 100644
index 16ab32adaaad..000000000000
--- a/bitwarden_rs.install
+++ /dev/null
@@ -1,54 +0,0 @@
-post_install() {
- # Create users and data directory
-
- echo "Adding user bitwarden_rs and creating data directory /var/lib/bitwarden_rs ..."
- mkdir -p /var/lib/bitwarden_rs
- getent group bitwarden_rs &>/dev/null || groupadd -r bitwarden_rs >/dev/null
- getent passwd bitwarden_rs &>/dev/null || useradd -r -g bitwarden_rs -d /var/lib/bitwarden_rs -s /usr/bin/nologin bitwarden_rs >/dev/null
- chown bitwarden_rs:bitwarden_rs /var/lib/bitwarden_rs
- chmod 0750 /var/lib/bitwarden_rs
-
- # Load service file
- systemctl --quiet daemon-reload
-
- echo ""
- 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 "##########"
- echo ""
-
-}
-
-post_upgrade() {
- # Reload service file
- systemctl --quiet daemon-reload
- echo ""
- echo "##########"
- echo "#"
- echo "# Remember to restart the bitwarden via 'systemctl restart bitwarden_rs.service', if neccessary."
- echo "#"
- echo "##########"
- echo ""
-
-}
-
-pre_remove() {
- # Stop service
- systemctl --quiet --no-reload disable --now bitwarden_rs.service
-}
-
-post_remove() {
- # Unload service
- systemctl --quiet daemon-reload
- echo ""
- 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 "##########"
- echo ""
-}
diff --git a/bitwarden_rs.service b/bitwarden_rs.service
deleted file mode 100644
index ff6e7a7a8061..000000000000
--- a/bitwarden_rs.service
+++ /dev/null
@@ -1,22 +0,0 @@
-[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