78 lines
3.1 KiB
Bash
78 lines
3.1 KiB
Bash
pkgname=1password-beta
|
|
|
|
_tarver=8.12.34-29.BETA
|
|
case "${CARCH}" in
|
|
x86_64)
|
|
_archdir="x64"
|
|
;;
|
|
aarch64)
|
|
_archdir="arm64"
|
|
;;
|
|
esac
|
|
pkgver=${_tarver//-/_}
|
|
pkgrel=29.1
|
|
conflicts=('1password' '1password-beta-bin')
|
|
pkgdesc="Password manager and secure wallet"
|
|
arch=('x86_64' 'aarch64')
|
|
url='https://1password.com'
|
|
license=('LicenseRef-1Password-Proprietary')
|
|
options=(!strip)
|
|
install="1password.install"
|
|
source=()
|
|
sha256sums=()
|
|
source_x86_64=(https://downloads.1password.com/linux/tar/beta/x86_64/1password-${_tarver}.x64.tar.gz{,.sig})
|
|
source_aarch64=(https://downloads.1password.com/linux/tar/beta/aarch64/1password-${_tarver}.arm64.tar.gz{,.sig})
|
|
sha256sums_x86_64=('6894b283a534cf94b07903fb38966a0aab2e37f75ee3848ce340308819aadddb'
|
|
'8d4df4d0a80d2be7aad7d91ad964a750c8f32db5007261045003c191690c8246')
|
|
sha256sums_aarch64=('c77ce6ddf36dbd6054c64d91b7f644274d3218f465fd60e211d0296f6443124a'
|
|
'91c7249a1cf5e7924ef2810cb0cb1b893d8a9a424b373b433f45d7aaa5a8369b')
|
|
validpgpkeys=('3FEF9748469ADBE15DA7CA80AC2D62742012EA22')
|
|
|
|
package() {
|
|
depends=('hicolor-icon-theme' 'libgtk-3.so=0' 'nss' 'xdg-utils')
|
|
|
|
# Go to source directory
|
|
cd "1password-${_tarver}.${_archdir}"
|
|
|
|
# Install icons
|
|
resolutions=(32x32 64x64 256x256 512x512)
|
|
for resolution in "${resolutions[@]}"
|
|
do
|
|
install -Dm0644 "resources/icons/hicolor/${resolution}/apps/1password.png" \
|
|
"${pkgdir}/usr/share/icons/hicolor/${resolution}/apps/1password.png"
|
|
done
|
|
# Install desktop file
|
|
install -Dm0644 resources/1password.desktop -t "${pkgdir}"/usr/share/applications/
|
|
|
|
# Fill in policy kit file with a list of (the first 10) human users of the system.
|
|
export POLICY_OWNERS
|
|
POLICY_OWNERS="$(cut -d: -f1,3 /etc/passwd | grep -E ':[0-9]{4}$' | cut -d: -f1 | head -n 10 | sed 's/^/unix-user:/' | tr '\n' ' ')"
|
|
eval "cat <<EOF
|
|
$(cat ./com.1password.1Password.policy.tpl)
|
|
EOF" > ./com.1password.1Password.policy
|
|
|
|
# Install system unlock PolKit policy file
|
|
install -Dm0644 com.1password.1Password.policy -t "${pkgdir}"/usr/share/polkit-1/actions/
|
|
|
|
# Install examples
|
|
install -Dm0644 resources/custom_allowed_browsers -t "${pkgdir}"/usr/share/doc/1password/examples/
|
|
|
|
# Move package contents to /opt/1Password
|
|
cd "${srcdir}"
|
|
install -dm0755 "${pkgdir}"/opt
|
|
mv "1password-${_tarver}.${_archdir}" "${pkgdir}/opt/1Password"
|
|
|
|
# Cleanup un-needed files
|
|
rm "${pkgdir}"/opt/1Password/com.1password.1Password.policy "${pkgdir}"/opt/1Password/com.1password.1Password.policy.tpl "${pkgdir}"/opt/1Password/install_biometrics_policy.sh
|
|
rm -r "${pkgdir}"/opt/1Password/resources/icons/
|
|
rm "${pkgdir}"/opt/1Password/resources/1password.desktop "${pkgdir}"/opt/1Password/resources/custom_allowed_browsers
|
|
|
|
# Symlink /usr/bin executable to opt
|
|
install -dm0755 "${pkgdir}"/usr/bin
|
|
ln -s /opt/1Password/1password "${pkgdir}"/usr/bin/1password
|
|
|
|
# chrome-sandbox requires the setuid bit to be specifically set.
|
|
# See https://github.com/electron/electron/issues/17972
|
|
chmod 4755 "${pkgdir}"/opt/1Password/chrome-sandbox
|
|
}
|