summarylogtreecommitdiffstats
path: root/PKGBUILD
blob: de19a3421253360628f27f63bb6e695dfe9f1e95 (plain)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
102
103
104
105
106
107
108
109
110
111
112
113
114
115
116
117
118
119
120
121
122
123
124
125
126
127
128
129
130
131
132
133
134
135
136
# Maintainer: dreieck (https://aur.archlinux.org/account/dreieck)

_pkgbase=chrome-pass
pkgbase="${_pkgbase}-git"
pkgname=(
  # "${_pkgbase}-git"
  "${_pkgbase}-hostapp-git"
  "${_pkgbase}-docfiles-git"
)
pkgver=0.5.0+4.r78.20240215.bdccc83
_mainver="$(sed -E 's|^([^\.]*\.[^\.]*\.[^.+_]*)[\.+_]?.*$|\1|' <<<"${pkgver}")"
_nextver="$(awk -F. '{print $1"."$2"."$3+1}' <<<"${_mainver}")"
pkgrel=1
pkgdesc="Interface programme for the chrome extension 'chrome-pass' for zx2c4's 'pass' password manager."
arch=(
  'any'
)
url="https://github.com/hsanson/chrome-pass"
license=("MIT")
depends=()
makedepends=(
  'git'
  'python>=3'
  'python-build'
  'python-installer'
  'python-wheel'
)
source=(
  "${_pkgbase}::git+${url}.git"
  'chrome-pass-hostapp.install'
)
sha256sums=(
  'SKIP'
  '2d6c3d84a8db2ab15fa0cd17abdd258dbf93b17fe5f9ab8a8521bd077cad2701'
)

prepare() {
  cd "${srcdir}/${_pkgbase}"

  git log > "${srcdir}/git.log"
}

pkgver() {
  cd "${srcdir}/${_pkgbase}"

  _ver="$(git describe --tags | sed -E -e 's|^[vV]||' -e 's|-g[0-9a-f]+$||' | tr '-' '+')"
  _rev="$(git rev-list --count HEAD)"
  _date="$(git log -1 --date=format:"%Y%m%d" --format="%ad")"
  _hash="$(git rev-parse --short HEAD)"

  if [ -z "${_ver}" ]; then
    error "Could not determine version."
    return 1
  else
    printf '%s' "${_ver}.r${_rev}.${_date}.${_hash}"
  fi
}


build() {
  cd "${srcdir}/${_pkgbase}/application"

  python -m build --wheel --no-isolation
}

# package_chrome-pass-git() {
#   pkgdesc="Chrome extension for zx2c4's 'pass' password manager."
#   depends=(
#     "chrome-pass-hostapp>=${_mainver}"
#     "chrome-pass-hostapp<${_nextver}"
#   )
#   optdepends=(
#     "chromium>=50: To make use of this extension. (Can also be any other chromium-based browser like google chrome or vivaldi)."
#     "chrome-pass-docfiles: The documentation files from the source repository of this software."
#   )
#   provides=(
#     "chrome-pass=${pkgver}"
#   )
#   conflicts=(
#     "chrome-pass"
#   )
# 
#   cd "${srcdir}/${_pkgbase}"
#   install -Dvm644 LICENSE "${pkgdir}/usr/share/licenses/${pkgname}/LICENSE"
# }

package_chrome-pass-hostapp-git() {
  pkgdesc="Interface programme needed by the 'chrome-pass' chrome extension for zx2c4's 'pass' password manager."
  depends=(
    "pass"
    "pinentry"
    "python>=3"
    "python-gnupg"
  )
  optdepends=(
    "chrome-pass>=${_mainver}: The browser extension this hostapp is for (can be installed as Arch Linux package or by the user via chrome webstore)."
    "chrome-pass<${_nextver}"
    "chrome-pass-docfiles: The documentation files from the source repository of this software."
  )
  provides=(
    "chrome-pass-hostapp=${pkgver}"
  )
  conflicts=(
    "chrome-pass-hostapp"
  )
  install='chrome-pass-hostapp.install'

  cd "${srcdir}/${_pkgbase}/application"
  export PYTHONHASHSEED=0
  python -m installer --destdir="${pkgdir}" dist/*.whl

  cd "${srcdir}/${_pkgbase}"
  install -Dvm644 LICENSE "${pkgdir}/usr/share/licenses/${pkgname}/LICENSE"
}

package_chrome-pass-docfiles-git() {
  pkgdesc="Documentation files for 'chrome-pass' and 'chrome-pass-hostapp'."
  depends=()
  optdepends=(
    "chrome-pass: The software this documentation is for."
    "chrome-pass-hostapp: The software this documentation is for."
  )
  provides=(
    "chrome-pass-docfiles=${pkgver}"
  )
  conflicts=(
    "chrome-pass-docfiles"
  )

  cd "${srcdir}/${_pkgbase}"
  for _docfile in CHANGELOG.adoc README.md; do
    install -D -v -m644 "${_docfile}"               "${pkgdir}/usr/share/doc/${_pkgbase}/${_docfile}"
  done
  install -Dvm644 LICENSE "${pkgdir}/usr/share/licenses/${pkgname}/LICENSE"
  ln -svr "${pkgdir}/usr/share/licenses/${pkgname}/LICENSE" "${pkgdir}/usr/share/doc/${_pkgbase}/LICENSE"
}