summarylogtreecommitdiffstats
diff options
context:
space:
mode:
authorAmin Vakil2023-12-20 20:53:53 +0330
committerAmin Vakil2023-12-20 20:53:53 +0330
commite3e320e1f85481db8d6bac08315b63617e4ecdb8 (patch)
tree8625f7001c6fba84e6fa95acb4d037b75c70af77
parent7f7aabc9181001693553a254439e4263aa629ef1 (diff)
downloadaur-e3e320e1f85481db8d6bac08315b63617e4ecdb8.tar.gz
Improve installation
Adopted from https://gitlab.archlinux.org/archlinux/packaging/packages/ansible-core/-/commit/be410ed
-rw-r--r--.SRCINFO10
-rw-r--r--PKGBUILD26
2 files changed, 29 insertions, 7 deletions
diff --git a/.SRCINFO b/.SRCINFO
index f96aeb29b20a..d7b0402141a9 100644
--- a/.SRCINFO
+++ b/.SRCINFO
@@ -5,13 +5,19 @@ pkgbase = ansible-core-git
url = https://github.com/ansible/ansible
arch = any
license = GPL3
+ makedepends = python-build
+ makedepends = python-docutils
+ makedepends = python-installer
makedepends = python-setuptools
+ makedepends = python-straight.plugin
+ makedepends = python-wheel
makedepends = git
depends = python
- depends = python-yaml
+ depends = python-pyyaml
depends = python-paramiko
depends = python-jinja
depends = python-resolvelib
+ depends = python-typing-extensions
optdepends = sshpass: for ssh connections with password
optdepends = python-passlib: crypt values for vars_prompt
optdepends = python-netaddr: for the ipaddr filter
@@ -19,6 +25,8 @@ pkgbase = ansible-core-git
optdepends = python-pywinrm: connect to Windows machines
optdepends = python-dnspython: for dig lookup
optdepends = python-jmespath: json_query support
+ optdepends = python-pip: for module to manage Python libarary dependencies
+ optdepends = python-setuptools: for module to manage Python libarary dependencies
provides = ansible-core
provides = python-ansible
conflicts = ansible-core
diff --git a/PKGBUILD b/PKGBUILD
index b4968a86aefe..3b7eec0de868 100644
--- a/PKGBUILD
+++ b/PKGBUILD
@@ -15,7 +15,7 @@ pkgdesc='Radically simple IT automation platform'
arch=('any')
url='https://github.com/ansible/ansible'
license=('GPL3')
-depends=('python' 'python-yaml' 'python-paramiko' 'python-jinja' 'python-resolvelib')
+depends=('python' 'python-pyyaml' 'python-paramiko' 'python-jinja' 'python-resolvelib' 'python-typing-extensions')
provides=('ansible-core' 'python-ansible')
replaces=('ansible-core' 'python-ansible')
conflicts=('ansible-core' 'python-ansible')
@@ -25,12 +25,20 @@ optdepends=('sshpass: for ssh connections with password'
'python-systemd: log to journal'
'python-pywinrm: connect to Windows machines'
'python-dnspython: for dig lookup'
- 'python-jmespath: json_query support')
-makedepends=('python-setuptools' 'git')
+ 'python-jmespath: json_query support'
+ 'python-pip: for module to manage Python libarary dependencies'
+ 'python-setuptools: for module to manage Python libarary dependencies')
+makedepends=('python-build' 'python-docutils' 'python-installer' 'python-setuptools' 'python-straight.plugin' 'python-wheel' 'git')
backup=('etc/ansible/ansible.cfg')
source=($pkgname::git+https://github.com/ansible/ansible.git)
sha512sums=('SKIP')
+prepare() {
+ cd "$pkgname"
+ # remove the resolvelib upper boundary (at least for < 0.9.0): https://github.com/ansible/ansible/pull/79399
+ sed -e 's/resolvelib.*/resolvelib/' -i requirements.txt
+}
+
pkgver() {
cd "$pkgname"
printf "r%s.%s" "$(git rev-list --count HEAD)" "$(git rev-parse --short HEAD)"
@@ -38,11 +46,17 @@ pkgver() {
build() {
cd "${srcdir}"/${pkgname}
- python setup.py build
+ python -m build --wheel --no-isolation
+
+ make docs
}
package() {
cd ${pkgname}
- python setup.py install -O1 --root="${pkgdir}"
- install -Dm644 COPYING "${pkgdir}"/usr/share/doc/${pkgname}/COPYING
+ python -m installer --destdir="$pkgdir" dist/*.whl
+
+ install -Dm644 COPYING -t "${pkgdir}"/usr/share/doc/${pkgname}/
+ install -Dm644 examples/ansible.cfg -t "${pkgdir}"/etc/ansible/
+ install -Dm644 examples/{ansible.cfg,hosts} -t "${pkgdir}"/usr/share/ansible/doc/examples/
+ install -Dm644 docs/man/man1/*.1 -t "${pkgdir}"/usr/share/man/man1/
}