summaryrefslogtreecommitdiff
path: root/user
diff options
context:
space:
mode:
authorA. Wilcox <awilcox@wilcox-tech.com>2018-12-29 21:59:07 +0000
committerA. Wilcox <awilcox@wilcox-tech.com>2018-12-29 21:59:07 +0000
commit1d5bbfe40b832dccae70c9c3570e4e165f15d8ad (patch)
treeed952e2b60755e98a21270db253e7e0af6642510 /user
parentc999dc9826ec3ac419865778b19f4ba2e710a50f (diff)
parente4a73a3d14a57d6ba40fccb850ee3b27a4e9f962 (diff)
downloadpackages-1d5bbfe40b832dccae70c9c3570e4e165f15d8ad.tar.gz
packages-1d5bbfe40b832dccae70c9c3570e4e165f15d8ad.tar.bz2
packages-1d5bbfe40b832dccae70c9c3570e4e165f15d8ad.tar.xz
packages-1d5bbfe40b832dccae70c9c3570e4e165f15d8ad.zip
Merge branch 'add-certbot' into 'master'
Add certbot and dependencies This branch brings Certbot support to Adélie Linux. Tests were supported in packages where it was reasonable, avoiding long dependency chains (AKA rabbit holes). Some highlights: * Effort was made to ensure everything worked with Python 3; * Python 2.x-only libraries were worked around or removed from dependencies where possible; * Packages were made to defer to system files (such as zoneinfo and ca-cert files) where possible; * Packages were added in dependency-stack order; all dependencies for a package should've been added before the higher level package. There are a lot of packages here, so there may be some edge cases that the runtime testing of certbot did not catch. I was able to successfully receive a brand new wildcard + bare domain (SAN) Let's Encrypt certificate and serve a website over the network to a machine running Firefox 63.0.1. **EDIT 2018-11-28:** I've gone through each APKBUILD and addressed the common pitfalls I noticed in addition to the comments already issued. Packages were version-bumped where possible. See merge request !113
Diffstat (limited to 'user')
-rw-r--r--user/certbot/APKBUILD44
-rw-r--r--user/py3-asn1crypto/APKBUILD33
-rw-r--r--user/py3-certifi/APKBUILD30
-rw-r--r--user/py3-certifi/use-system-certs.patch13
-rw-r--r--user/py3-chardet/APKBUILD29
-rw-r--r--user/py3-configargparse/APKBUILD37
-rw-r--r--user/py3-configargparse/python3.patch11
-rw-r--r--user/py3-configobj/APKBUILD29
-rw-r--r--user/py3-cryptography/APKBUILD29
-rw-r--r--user/py3-future/APKBUILD29
-rw-r--r--user/py3-idna/APKBUILD34
-rw-r--r--user/py3-josepy/APKBUILD28
-rw-r--r--user/py3-mock/APKBUILD29
-rw-r--r--user/py3-openssl/APKBUILD29
-rw-r--r--user/py3-parsedatetime/APKBUILD29
-rw-r--r--user/py3-pbr/APKBUILD29
-rw-r--r--user/py3-pysocks/APKBUILD29
-rw-r--r--user/py3-pyyaml/APKBUILD32
-rw-r--r--user/py3-requests-toolbelt/APKBUILD29
-rw-r--r--user/py3-requests/APKBUILD30
-rw-r--r--user/py3-rfc3339/APKBUILD30
-rw-r--r--user/py3-tz/APKBUILD34
-rw-r--r--user/py3-tz/zoneinfo-fix.patch13
-rw-r--r--user/py3-tz/zoneinfo-noinstall.patch20
-rw-r--r--user/py3-urllib3/APKBUILD30
-rw-r--r--user/py3-zope-component/APKBUILD28
-rw-r--r--user/py3-zope-event/APKBUILD33
-rw-r--r--user/py3-zope-interface/APKBUILD32
28 files changed, 802 insertions, 0 deletions
diff --git a/user/certbot/APKBUILD b/user/certbot/APKBUILD
new file mode 100644
index 000000000..5c0ba42d9
--- /dev/null
+++ b/user/certbot/APKBUILD
@@ -0,0 +1,44 @@
+# Contributor: zlg <zlg+adelie@zlg.space>
+# Maintainer: zlg <zlg+adelie@zlg.space>
+pkgname=certbot
+pkgver=0.28.0
+pkgrel=0
+pkgdesc="The EFF's reference ACME client"
+url="https://certbot.eff.org/"
+arch="noarch"
+license="Apache-2.0"
+depends="python3 py3-acme py3-configargparse py3-mock py3-configobj py3-cryptography
+ py3-parsedatetime py3-rfc3339 py3-tz py3-zope-component py3-zope-interface
+ coverage"
+# define acme deps here and add them to makedepends
+# so they get pulled in when bootstrapping.
+_depends_acme="python3 py3-cryptography py3-josepy py3-mock py3-openssl py3-requests
+ py3-requests-toolbelt py3-rfc3339 py3-six py3-tz"
+makedepends="python3-dev $_depends_acme"
+subpackages="py3-acme:acme"
+source="certbot-$pkgver.tar.gz::https://github.com/certbot/certbot/archive/v$pkgver.tar.gz"
+
+build() {
+ cd "$builddir"
+ python3 setup.py build
+}
+
+check() {
+ cd "$builddir"
+ python3 setup.py check
+}
+
+package() {
+ cd "$builddir"
+ python3 setup.py install --prefix=/usr --root="$pkgdir"
+}
+
+acme() {
+ pkgdesc="ACME protocol implementation for Python"
+ depends="$_depends_acme"
+ cd "$builddir"/acme
+ python3 setup.py build
+ python3 setup.py install --prefix=/usr --root="$subpkgdir"
+}
+
+sha512sums="07c9bbad52acebc60e48d79619e4f12818d67c3b0f41ffa4fcd02098fb9da245e4006418f54c51c2e4bb9aaa01a21f7a083c9eb092f533e6676ed75ae8667a54 certbot-0.28.0.tar.gz"
diff --git a/user/py3-asn1crypto/APKBUILD b/user/py3-asn1crypto/APKBUILD
new file mode 100644
index 000000000..fc90861c4
--- /dev/null
+++ b/user/py3-asn1crypto/APKBUILD
@@ -0,0 +1,33 @@
+# Contributor: André Klitzing <aklitzing@gmail.com>
+# Maintainer: zlg <zlg+adelie@zlg.space>
+pkgname=py3-asn1crypto
+_pkgname=${pkgname#py3-}
+pkgver=0.24.0
+pkgrel=0
+pkgdesc="Python ASN.1 library with a focus on performance and a pythonic API"
+url="https://github.com/wbond/asn1crypto"
+arch="noarch"
+license="MIT"
+depends="python3"
+makedepends="python3-dev"
+subpackages=""
+source="$_pkgname-$pkgver.tar.gz::https://github.com/wbond/asn1crypto/archive/$pkgver.tar.gz"
+builddir="$srcdir/$_pkgname-$pkgver"
+
+build() {
+ cd "$builddir"
+ python3 setup.py build
+}
+
+check() {
+ cd "$builddir"
+ python3 run.py tests
+}
+
+package() {
+ mkdir -p "$pkgdir"
+ cd "$builddir"
+ python3 setup.py install --prefix=/usr --root="$pkgdir"
+}
+
+sha512sums="426cc380903b4dd7aadd7b831e3a11ee3442c961a33b856d4aa8d9060e829f2e0ad905a60c4d6504569718fe2cee01d9be31628c89ef030bc34281e381c898e8 asn1crypto-0.24.0.tar.gz"
diff --git a/user/py3-certifi/APKBUILD b/user/py3-certifi/APKBUILD
new file mode 100644
index 000000000..f4fa5f71e
--- /dev/null
+++ b/user/py3-certifi/APKBUILD
@@ -0,0 +1,30 @@
+# Maintainer: zlg <zlg+adelie@zlg.space>
+pkgname=py3-certifi
+_pkgname=${pkgname#py3-}
+pkgver=2018.10.15
+pkgrel=0
+pkgdesc="Python package for providing Mozilla's CA Bundle"
+url="https://pypi.org/project/certifi"
+arch="noarch"
+options="!check" # no tests
+license="MPL-2.0"
+depends="python3 ca-certificates"
+makedepends="python3-dev"
+subpackages=""
+source="https://files.pythonhosted.org/packages/source/${_pkgname:0:1}/$_pkgname/$_pkgname-$pkgver.tar.gz
+ use-system-certs.patch"
+builddir="$srcdir/$_pkgname-$pkgver"
+
+build() {
+ cd "$builddir"
+ python3 setup.py build
+}
+
+package() {
+ mkdir -p "$pkgdir"
+ cd "$builddir"
+ python3 setup.py install --prefix=/usr --root="$pkgdir"
+}
+
+sha512sums="3324ae6c4b99dda6f48aa9f0918fe045a19b19b26fcfdcca4be93ec967b9e4112d863c982686837b327f1663e308250d56ea337caeeeeb96579e08b20fca92df certifi-2018.10.15.tar.gz
+1de38c55102b41bc91870b4810de89d8b0cffd61ba14257fe6c8445173b8b44153f2736050772eb63dd0a755890afe0f2d27516bbd39f05bf4016a4e29eebb67 use-system-certs.patch"
diff --git a/user/py3-certifi/use-system-certs.patch b/user/py3-certifi/use-system-certs.patch
new file mode 100644
index 000000000..bf315aa2f
--- /dev/null
+++ b/user/py3-certifi/use-system-certs.patch
@@ -0,0 +1,13 @@
+--- a/certifi/core.py 2018-01-18 12:27:24.000000000 -0800
++++ b/certifi/core.py 2018-11-20 18:08:48.230610538 -0800
+@@ -19,9 +19,7 @@
+
+
+ def where():
+- f = os.path.dirname(__file__)
+-
+- return os.path.join(f, 'cacert.pem')
++ return "/etc/ssl/certs/ca-certificates.crt"
+
+
+ def old_where():
diff --git a/user/py3-chardet/APKBUILD b/user/py3-chardet/APKBUILD
new file mode 100644
index 000000000..cf07aea4c
--- /dev/null
+++ b/user/py3-chardet/APKBUILD
@@ -0,0 +1,29 @@
+# Contributor: <xmingske@gmail.com>
+# Maintainer: zlg <zlg+adelie@zlg.space>
+pkgname=py3-chardet
+_pkgname=${pkgname#py3-}
+pkgver=3.0.4
+pkgrel=0
+pkgdesc="The Universal Character Encoding Detector"
+url="https://github.com/chardet/chardet/"
+arch="noarch"
+options="!check" # tests use hypothesis; deep rabbit hole
+license="LGPL-2.1-only"
+depends="python3"
+makedepends="python3-dev"
+subpackages=""
+source="https://files.pythonhosted.org/packages/source/${_pkgname:0:1}/$_pkgname/$_pkgname-$pkgver.tar.gz"
+builddir="$srcdir/$_pkgname-$pkgver"
+
+build() {
+ cd "$builddir"
+ python3 setup.py build
+}
+
+package() {
+ mkdir -p "$pkgdir"
+ cd "$builddir"
+ python3 setup.py install --prefix=/usr --root="$pkgdir" --optimize=1
+}
+
+sha512sums="61a03b23447a2bfe52ceed4dd1b9afdb5784da1933a623776883ee9f297e341f633e27f0ce0230bd5fdc5fdb5382105ab42736a74a417ddeb9f83af57455dba5 chardet-3.0.4.tar.gz"
diff --git a/user/py3-configargparse/APKBUILD b/user/py3-configargparse/APKBUILD
new file mode 100644
index 000000000..2cb311647
--- /dev/null
+++ b/user/py3-configargparse/APKBUILD
@@ -0,0 +1,37 @@
+# Contributor: Carlo Landmeter <clandmeter@gmail.com>
+# Contributor: Jakub Jirutka <jakub@jirutka.cz>
+# Contributor: Stuart Cardall <developer@it-offshore.co.uk>
+# Maintainer: zlg <zlg+adelie@zlg.space>
+pkgname=py3-configargparse
+_pkgname=ConfigArgParse
+pkgver=0.13.0
+pkgrel=0
+pkgdesc="A drop-in replacement for argparse"
+url="https://github.com/bw2/ConfigArgParse"
+arch="noarch"
+license="MIT"
+depends="python3"
+makedepends="python3-dev python3-tests"
+subpackages=""
+source="$pkgname-$pkgver.tar.gz::https://github.com/bw2/$_pkgname/archive/$pkgver.tar.gz
+ python3.patch"
+builddir="$srcdir/$_pkgname-$pkgver"
+
+build() {
+ cd "$builddir"
+ python3 setup.py build
+}
+
+check() {
+ cd "$builddir"
+ python3 setup.py test
+}
+
+package() {
+ mkdir -p "$pkgdir"
+ cd "$builddir"
+ python3 setup.py install --prefix=/usr --root="$pkgdir"
+}
+
+sha512sums="797c5edbc51353797204152b5c908ddb4e883a98f247430448d774957fd841286ea1a3cb87db3186e683a65f566cfce0a815e4bd558b9c823d9226d856341ca9 py3-configargparse-0.13.0.tar.gz
+df324cbc12d0d5cf3cf8bfe494e358d366d8a7891183e9a7922d5331f86e30cbe5810b709ad93dfd41f33cd08c1d87371b9aa13c92d7637d4459d83db41be33f python3.patch"
diff --git a/user/py3-configargparse/python3.patch b/user/py3-configargparse/python3.patch
new file mode 100644
index 000000000..b102e166f
--- /dev/null
+++ b/user/py3-configargparse/python3.patch
@@ -0,0 +1,11 @@
+--- a/setup.py 2018-02-04 10:00:01.000000000 -0800
++++ b/setup.py 2018-11-20 21:08:21.339299614 -0800
+@@ -78,7 +78,7 @@
+ 'ordereddict',
+ ])
+ tests_require.extend([
+- 'unittest2',
++ 'unittest',
+ ])
+
+
diff --git a/user/py3-configobj/APKBUILD b/user/py3-configobj/APKBUILD
new file mode 100644
index 000000000..6077aa8ec
--- /dev/null
+++ b/user/py3-configobj/APKBUILD
@@ -0,0 +1,29 @@
+# Contributor: Leonardo Arena <rnalrd@alpinelinux.org>
+# Maintainer: zlg <zlg+adelie@zlg.space>
+pkgname=py3-configobj
+_pkgname=${pkgname#py3-}
+pkgver=5.0.6
+pkgrel=0
+pkgdesc="Python library for reading and writing of configuration files (ini)"
+url="https://github.com/DiffSK/configobj"
+arch="noarch"
+options="!check" # no tests
+license="BSD-3-Clause"
+depends="python3 py3-six"
+makedepends="python3-dev"
+subpackages=""
+source="$pkgname-$pkgver.tar.gz::https://github.com/DiffSK/configobj/archive/v$pkgver.tar.gz"
+
+builddir="$srcdir"/$_pkgname-$pkgver
+
+build() {
+ cd "$builddir"
+ python3 setup.py build
+}
+
+package() {
+ cd "$builddir"
+ python3 setup.py install --prefix=/usr --root="$pkgdir"
+}
+
+sha512sums="326eb86e362f281ebf07abcb1cf7616abb270c482eafe842371cda8708245ca5e8262f1644b7164664ecc10e9004ed061c9de18cd233a657d4697dbc3ba3c59d py3-configobj-5.0.6.tar.gz"
diff --git a/user/py3-cryptography/APKBUILD b/user/py3-cryptography/APKBUILD
new file mode 100644
index 000000000..0c42cdc67
--- /dev/null
+++ b/user/py3-cryptography/APKBUILD
@@ -0,0 +1,29 @@
+# Contributor: August Klein <amatcoder@gmail.com>
+# Maintainer: zlg <zlg+adelie@zlg.space>
+pkgname=py3-cryptography
+_pkgname=${pkgname#py3-}
+pkgver=2.4.2
+pkgrel=0
+pkgdesc="A package which provides cryptographic recipes and primitives"
+url="https://pypi.python.org/pypi/cryptography"
+arch="all"
+options="!check" # tests want hypothesis; deep rabbit hole
+license="Apache-2.0 OR BSD-3-Clause"
+depends="python3 py3-cffi py3-idna py3-asn1crypto py3-six"
+makedepends="python3-dev libffi-dev openssl-dev"
+subpackages=""
+source="https://files.pythonhosted.org/packages/source/${_pkgname:0:1}/$_pkgname/$_pkgname-$pkgver.tar.gz"
+builddir="$srcdir/$_pkgname-$pkgver"
+
+build() {
+ cd "$builddir"
+ python3 setup.py build
+}
+
+package() {
+ mkdir -p "$pkgdir"
+ cd "$builddir"
+ python3 setup.py install --prefix=/usr --root="$pkgdir"
+}
+
+sha512sums="800735fa86e9ad0f8517328d47e55dc79a2b86d8c7539ee2921c526085782d8dad5559bbee84f7effb42275503fa9a984b099a688c530c92f5672c423c0f1a28 cryptography-2.4.2.tar.gz"
diff --git a/user/py3-future/APKBUILD b/user/py3-future/APKBUILD
new file mode 100644
index 000000000..f6f6b1fcc
--- /dev/null
+++ b/user/py3-future/APKBUILD
@@ -0,0 +1,29 @@
+# Contributor: Francesco Colista <fcolista@alpinelinux.org>
+# Maintainer: zlg <zlg+adelie@zlg.space>
+pkgname=py3-future
+_pkgname=python-future
+pkgver=0.15.2
+pkgrel=0
+pkgdesc="Easy, clean, reliable Python 2/3 compatibility"
+url="http://python-future.org/"
+arch="noarch"
+options="!check" # tries to access network
+license="MIT"
+depends="python3"
+makedepends="python3-dev"
+subpackages=""
+source="$pkgname-$pkgver.tar.gz::https://github.com/PythonCharmers/$_pkgname/archive/v$pkgver.tar.gz"
+builddir="$srcdir/$_pkgname-$pkgver"
+
+build() {
+ cd "$builddir"
+ python3 setup.py build
+}
+
+package() {
+ mkdir -p "$pkgdir"
+ cd "$builddir"
+ python3 setup.py install --prefix=/usr --root="$pkgdir"
+}
+
+sha512sums="96365f3c97f801e045d0957509ce05269e72f411202e4af0f9ddff08e5d385e25d73c9a5ad3080d157fd9fed65483a2a355f05d75ab15b19c4777e93c180f70b py3-future-0.15.2.tar.gz"
diff --git a/user/py3-idna/APKBUILD b/user/py3-idna/APKBUILD
new file mode 100644
index 000000000..ecf2f5ce3
--- /dev/null
+++ b/user/py3-idna/APKBUILD
@@ -0,0 +1,34 @@
+# Contributor: Carlo Landmeter <clandmeter@gmail.com>
+# Contributor: Francesco Colista <fcolista@alpinelinux.org>
+# Maintainer: zlg <zlg+adelie@zlg.space>
+pkgname=py3-idna
+_pkgname=${pkgname#py3-}
+pkgver=2.7
+pkgrel=0
+pkgdesc="IDNA 2008 and UTS #46 for Python"
+url="https://github.com/kjd/idna"
+arch="noarch"
+license="BSD-3-Clause AND Python-2.0 AND Unicode-TOU"
+depends="python3"
+makedepends="python3-dev"
+subpackages=""
+source="idna-$pkgver.tar.gz::https://github.com/kjd/idna/archive/v$pkgver.tar.gz"
+builddir="$srcdir/$_pkgname-$pkgver"
+
+build() {
+ cd "$builddir"
+ python3 setup.py build
+}
+
+check() {
+ cd "$builddir"
+ python3 setup.py test
+}
+
+package() {
+ mkdir -p "$pkgdir"
+ cd "$builddir"
+ python3 setup.py install --prefix=/usr --root="$pkgdir"
+}
+
+sha512sums="6fcfd9aec25d6ca14a72e5e236d612ec9aba81aa41e31001bd4cf3cc5499ac133e05bf8393fc2e5d54ea7602ba6601c87e7a219339d9a4979198572d78cf4987 idna-2.7.tar.gz"
diff --git a/user/py3-josepy/APKBUILD b/user/py3-josepy/APKBUILD
new file mode 100644
index 000000000..511139b5b
--- /dev/null
+++ b/user/py3-josepy/APKBUILD
@@ -0,0 +1,28 @@
+# Contributor: Francesco Colista <fcolista@alpinelinux.org>
+# Maintainer: zlg <zlg+adelie@zlg.space>
+pkgname=py3-josepy
+_pkgname=${pkgname#py3-}
+pkgver=1.1.0
+pkgrel=0
+pkgdesc="JOSE protocol implementation in Python"
+url="https://github.com/jezdez/josepy"
+arch="noarch"
+options="!check" # needs flake8, another rabbit hole
+license="Apache-2.0"
+depends="python3 py3-six py3-cryptography py3-openssl"
+makedepends="python3-dev libffi-dev"
+subpackages=""
+source="$_pkgname-$pkgver.tar.gz::https://github.com/certbot/$_pkgname/archive/v$pkgver.tar.gz"
+builddir="$srcdir/$_pkgname-$pkgver"
+
+build() {
+ cd "$builddir"
+ python3 setup.py build
+}
+
+package() {
+ mkdir -p "$pkgdir"
+ cd "$builddir"
+ python3 setup.py install --prefix=/usr --root="$pkgdir"
+}
+sha512sums="86533e896c7ca35f035ebb9e3667e36511c6ba693c7e056a0fdc28bec282643ade2eb5223271a7a6a4110b70b82ee5b788cfded8946f0c1133ecb050ca457b77 josepy-1.1.0.tar.gz"
diff --git a/user/py3-mock/APKBUILD b/user/py3-mock/APKBUILD
new file mode 100644
index 000000000..26248b73f
--- /dev/null
+++ b/user/py3-mock/APKBUILD
@@ -0,0 +1,29 @@
+# Contributor: Fabian Affolter <fabian@affolter-engineering.ch>
+# Maintainer: zlg <zlg+adelie@zlg.space>
+pkgname=py3-mock
+_pkgname=${pkgname#py3-}
+pkgver=2.0.0
+pkgrel=0
+pkgdesc="A Python Mocking and Patching Library for Testing"
+url="https://github.com/testing-cabal/mock"
+arch="noarch"
+options="!check" # tries to import mock-2, uses nose
+license="BSD-2-Clause"
+depends="python3 py3-pbr py3-six"
+makedepends="python3-dev"
+subpackages=""
+source="$pkgname-$pkgver.tar.gz::https://files.pythonhosted.org/packages/source/${_pkgname:0:1}/$_pkgname/$_pkgname-$pkgver.tar.gz"
+builddir="$srcdir/$_pkgname-$pkgver"
+
+build() {
+ cd "$builddir"
+ python3 setup.py build
+}
+
+package() {
+ mkdir -p "$pkgdir"
+ cd "$builddir"
+ python3 setup.py install --prefix=/usr --root="$pkgdir"
+}
+
+sha512sums="a08007651b749d2843b94f5045d74c122958888290aea21930455538a854e6b04c07115e21d82edde996154bf597d7a8784a2f4213cbabc49a98dec22dd92238 py3-mock-2.0.0.tar.gz"
diff --git a/user/py3-openssl/APKBUILD b/user/py3-openssl/APKBUILD
new file mode 100644
index 000000000..ecab996e1
--- /dev/null
+++ b/user/py3-openssl/APKBUILD
@@ -0,0 +1,29 @@
+# Contributor: Natanael Copa <ncopa@alpinelinux.org>
+# Maintainer: zlg <zlg+adelie@zlg.space>
+pkgname=py3-openssl
+_pkgname=pyOpenSSL
+pkgver=18.0.0
+pkgrel=0
+pkgdesc="Python wrapper module around the OpenSSL library"
+url="https://github.com/pyca/pyopenssl"
+arch="noarch"
+options="!check" # tries to include execinfo.h, uses network
+license="Apache-2.0"
+depends="python3 py3-cryptography py3-six"
+makedepends="python3-dev"
+subpackages=""
+source="https://files.pythonhosted.org/packages/source/${_pkgname:0:1}/$_pkgname/$_pkgname-$pkgver.tar.gz"
+builddir="$srcdir/$_pkgname-$pkgver"
+
+build() {
+ cd "$builddir"
+ python3 setup.py build
+}
+
+package() {
+ mkdir -p "$pkgdir"
+ cd "$builddir"
+ python3 setup.py install --prefix=/usr --root="$pkgdir"
+}
+
+sha512sums="7106d4116243a164c1f458ad495564c2cf3a46b4b0fbb1d452b4174ead4409bc9c783c3a4674231ed3c26ecf588077b01dadbdefe033d5e7251a61531c6f6c15 pyOpenSSL-18.0.0.tar.gz"
diff --git a/user/py3-parsedatetime/APKBUILD b/user/py3-parsedatetime/APKBUILD
new file mode 100644
index 000000000..777e90df7
--- /dev/null
+++ b/user/py3-parsedatetime/APKBUILD
@@ -0,0 +1,29 @@
+# Contributor: Carlo Landmeter <clandmeter@gmail.com>
+# Contributor: Roberto Oliveira <robertoguimaraes8@gmail.com>
+# Maintainer: zlg <zlg+adelie@zlg.space>
+pkgname=py3-parsedatetime
+_pkgname=parsedatetime
+pkgver=2.4
+pkgrel=0
+pkgdesc="Parse human-readable date/time strings"
+url="https://github.com/bear/parsedatetime"
+arch="noarch"
+options="!check" # flake8, mccabe
+license="Apache-2.0"
+depends="python3 py3-future"
+makedepends="python3-dev"
+source="$_pkgname-$pkgver.tar.gz::https://github.com/bear/$_pkgname/archive/v$pkgver.tar.gz"
+
+builddir="$srcdir/$_pkgname-$pkgver"
+
+build() {
+ cd "$builddir"
+ python3 setup.py build
+}
+
+package() {
+ cd "$builddir"
+ python3 setup.py install --prefix=/usr --root="$pkgdir"
+}
+
+sha512sums="0fd8bfa3411476a20d8874b44036bc162735fb7865d39ca98b0a608daec39daac47100314279dbf66229ec333821492744f7505315d955f58216fdaa75cbf046 parsedatetime-2.4.tar.gz"
diff --git a/user/py3-pbr/APKBUILD b/user/py3-pbr/APKBUILD
new file mode 100644
index 000000000..2bbf0283c
--- /dev/null
+++ b/user/py3-pbr/APKBUILD
@@ -0,0 +1,29 @@
+# Contributor: Francesco Colista <fcolista@alpinelinux.org>
+# Maintainer: zlg <zlg+adelie@zlg.space>
+pkgname=py3-pbr
+_pkgname=${pkgname#py3-}
+pkgver=5.1.1
+pkgrel=0
+pkgdesc="Python Build Reasonableness"
+url="https://pypi.org/project/pbr"
+arch="noarch"
+options="!check" # needs fixtures, git, hacking, sphinx, stestr, test{resources,scenarios,tools}
+license="Apache-2.0"
+depends="python3"
+makedepends="python3-dev"
+subpackages=""
+source="https://files.pythonhosted.org/packages/source/${_pkgname:0:1}/$_pkgname/$_pkgname-$pkgver.tar.gz"
+builddir="$srcdir/$_pkgname-$pkgver"
+
+build() {
+ cd "$builddir"
+ python3 setup.py build
+}
+
+package() {
+ mkdir -p "$pkgdir"
+ cd "$builddir"
+ python3 setup.py install --prefix=/usr --root="$pkgdir"
+}
+
+sha512sums="cd6f8bdc6db80841e948dbb278423556861aa681b970050a40c920dd00e32704a29cfdd28aabd4d14e0e577fff1bc816f0646a62c9450d0d85233ab5802606f1 pbr-5.1.1.tar.gz"
diff --git a/user/py3-pysocks/APKBUILD b/user/py3-pysocks/APKBUILD
new file mode 100644
index 000000000..131e9e353
--- /dev/null
+++ b/user/py3-pysocks/APKBUILD
@@ -0,0 +1,29 @@
+# Contributor: zlg <zlg+adelie@zlg.space>
+# Maintainer: zlg <zlg+adelie@zlg.space>
+pkgname=py3-pysocks
+_pkgname=PySocks
+pkgver=1.6.8
+pkgrel=0
+pkgdesc="SOCKS client module for Python"
+url="https://github.com/Anorov/PySocks"
+arch="noarch"
+options="!check" # relies on bundled x86_64 binary (3proxy), psutil, flake8
+license="BSD-3-Clause"
+depends="python3"
+makedepends="python3-dev py3-atomicwrites py3-attrs py3-more-itertools
+ py3-pluggy py3-py py3-pytest"
+subpackages=""
+source="https://files.pythonhosted.org/packages/source/${_pkgname:0:1}/$_pkgname/$_pkgname-$pkgver.tar.gz"
+builddir="$srcdir/PySocks-$pkgver"
+
+build() {
+ cd "$builddir"
+ python3 setup.py build
+}
+
+package() {
+ cd "$builddir"
+ python3 setup.py install --prefix=/usr --root="$pkgdir"
+}
+
+sha512sums="9b544cf11464142a5f347cd5688b48422249363a425ccf3887117152f2f1969713674c4bba714242432ae85f3d62e03edeb9cb7b73ebd225ed3b47b3da6896d5 PySocks-1.6.8.tar.gz"
diff --git a/user/py3-pyyaml/APKBUILD b/user/py3-pyyaml/APKBUILD
new file mode 100644
index 000000000..8af1d75f1
--- /dev/null
+++ b/user/py3-pyyaml/APKBUILD
@@ -0,0 +1,32 @@
+# Contributor: zlg <zlg+adelie@zlg.space>
+# Maintainer: zlg <zlg+adelie@zlg.space>
+pkgname=py3-pyyaml
+_pkgname=PyYAML
+pkgver=3.13
+pkgrel=0
+pkgdesc="YAML parser and emitter for Python"
+url="https://pyyaml.org/wiki/PyYAML"
+arch="all"
+license="MIT"
+depends="python3 yaml"
+makedepends="python3-dev yaml yaml-dev"
+subpackages=""
+source="http://pyyaml.org/download/pyyaml/$_pkgname-$pkgver.tar.gz"
+builddir="$srcdir/$_pkgname-$pkgver"
+
+build() {
+ cd "$builddir"
+ python3 setup.py build
+}
+
+check() {
+ cd "$builddir"
+ python3 setup.py test
+}
+
+package() {
+ cd "$builddir"
+ python3 setup.py install --prefix=/usr --root="$pkgdir"
+}
+
+sha512sums="93642286d0317e2fe970632c36d38ce6030f7cabcf971f28e3a1054f07390fcee5baaf7f167e7c9690dbd7b2adc61f5b7d75a218ace0abca34ff8815486cfdd7 PyYAML-3.13.tar.gz"
diff --git a/user/py3-requests-toolbelt/APKBUILD b/user/py3-requests-toolbelt/APKBUILD
new file mode 100644
index 000000000..80d5353e6
--- /dev/null
+++ b/user/py3-requests-toolbelt/APKBUILD
@@ -0,0 +1,29 @@
+# Contributor: Roberto Oliveira <robertoguimaraes8@gmail.com>
+# Maintainer: zlg <zlg+adelie@zlg.space>
+pkgname=py3-requests-toolbelt
+_pkgname=${pkgname##*-}
+pkgver=0.8.0
+pkgrel=0
+pkgdesc="Useful classes and functions to be used with python-requests"
+url="https://github.com/requests/toolbelt"
+arch="noarch"
+options="!check" # needs betamax
+license="Apache-2.0"
+depends="python3"
+makedepends="python3-dev"
+subpackages=""
+source="$pkgname-$pkgver.tar.gz::https://github.com/requests/$_pkgname/archive/$pkgver.tar.gz"
+builddir="$srcdir/$_pkgname-$pkgver"
+
+build() {
+ cd "$builddir"
+ python3 setup.py build
+}
+
+package() {
+ mkdir -p "$pkgdir"
+ cd "$builddir"
+ python3 setup.py install --prefix=/usr --root="$pkgdir"
+}
+
+sha512sums="55bf93d386442f5deb81eabd85812ffd49e98ff88c0bb96e15271efd84deb7c5d854a2cdc81c989a7d74870e8a218fc968d080052d9ca7cd9733a2378ea9c2f5 py3-requests-toolbelt-0.8.0.tar.gz"
diff --git a/user/py3-requests/APKBUILD b/user/py3-requests/APKBUILD
new file mode 100644
index 000000000..68a449743
--- /dev/null
+++ b/user/py3-requests/APKBUILD
@@ -0,0 +1,30 @@
+# Contributor: Peter Bui <pnutzh4x0r@gmail.com>
+# Contributor: William Pitcock <nenolod@dereferenced.org>
+# Maintainer: zlg <zlg+adelie@zlg.space>
+pkgname=py3-requests
+_pkgname=${pkgname#py3-}
+pkgver=2.19.1
+pkgrel=0
+pkgdesc="A HTTP request library for Python"
+url="http://www.python-requests.org/"
+arch="noarch"
+license="Apache-2.0"
+options="!check" # tests connect to remote sites
+depends="python3 py3-chardet py3-idna py3-certifi py3-urllib3"
+makedepends="python3-dev"
+subpackages=""
+source="https://files.pythonhosted.org/packages/source/${_pkgname:0:1}/$_pkgname/$_pkgname-$pkgver.tar.gz"
+builddir="$srcdir/$_pkgname-$pkgver"
+
+build() {
+ cd "$builddir"
+ python3 setup.py build
+}
+
+package() {
+ mkdir -p "$pkgdir"
+ cd "$builddir"
+ python3 setup.py install --prefix=/usr --root="$pkgdir"
+}
+
+sha512sums="deef2662227497b472f6e7eb7f0ee468c772069fc66552f71d80e5a12af62a187f8bc6a8a78531915e824c7f277d0db61c1534c89d13d473f68504f0bd6edf47 requests-2.19.1.tar.gz"
diff --git a/user/py3-rfc3339/APKBUILD b/user/py3-rfc3339/APKBUILD
new file mode 100644
index 000000000..ae6c517af
--- /dev/null
+++ b/user/py3-rfc3339/APKBUILD
@@ -0,0 +1,30 @@
+# Contributor: Carlo Landmeter <clandmeter@gmail.com>
+# Contributor: Roberto Oliveira <robertoguimaraes8@gmail.com>
+# Maintainer: zlg <zlg+adelie@zlg.space>
+pkgname=py3-rfc3339
+_pkgname=pyRFC3339
+pkgver=1.1
+pkgrel=0
+pkgdesc="Generate and parse RFC 3339 timestamps"
+url="https://pypi.python.org/pypi/pyRFC3339"
+arch="noarch"
+options="!check" # needs nose
+license="MIT"
+depends="python3 py3-tz"
+makedepends="python3-dev"
+subpackages=""
+source="https://files.pythonhosted.org/packages/source/${_pkgname:0:1}/$_pkgname/$_pkgname-$pkgver.tar.gz"
+builddir="$srcdir/$_pkgname-$pkgver"
+
+build() {
+ cd "$builddir"
+ python3 setup.py build
+}
+
+package() {
+ mkdir -p "$pkgdir"
+ cd "$builddir"
+ python3 setup.py install --prefix=/usr --root="$pkgdir"
+}
+
+sha512sums="958b7761fab590aa42bb57a955c5d834441f717796a452b60df21663099dcf2fc046afe60f8157fd0f1edfd95c5e9c9c5349ab10ca4078d210fc63d848496a2f pyRFC3339-1.1.tar.gz"
diff --git a/user/py3-tz/APKBUILD b/user/py3-tz/APKBUILD
new file mode 100644
index 000000000..6dc33045e
--- /dev/null
+++ b/user/py3-tz/APKBUILD
@@ -0,0 +1,34 @@
+# Contributor: Peter Bui <pnutzh4x0r@gmail.com>
+# Contributor: Fabian Affolter <fabian@affolter-engineering.ch>
+# Maintainer: zlg <zlg+adelie@zlg.space>
+pkgname=py3-tz
+_pkgname=pytz
+pkgver=2018.5
+pkgrel=0
+pkgdesc="Timezone definitions for Python"
+url="http://pytz.sourceforge.net/"
+arch="noarch"
+license="MIT"
+options="!check" # flake8, sphinx
+depends="python3 tzdata"
+makedepends="python3-dev unzip"
+subpackages=""
+source="https://pypi.io/packages/source/${_pkgname:0:1}/$_pkgname/$_pkgname-$pkgver.tar.gz
+ zoneinfo-noinstall.patch
+ zoneinfo-fix.patch"
+builddir="$srcdir/$_pkgname-$pkgver"
+
+build() {
+ cd "$builddir"
+ python3 setup.py build
+}
+
+package() {
+ mkdir -p "$pkgdir"
+ cd "$builddir"
+ python3 setup.py install --prefix=/usr --root="$pkgdir"
+}
+
+sha512sums="35b6bdd25b8e57c693da4379c2032401ef3cf290a57d8448c67dcaf1491a21d27ff25d932ef3ec3a51e31fbb7541e081073f292867a7d1ad47904b69dc7e4863 pytz-2018.5.tar.gz
+be61b829014be0d0d7db0c544481d378a95324c1f5968cbbcd7887c6ee8ce52a0b47ae734e16fc5fb2429d8d49c8ef199b6b3b7194f9e654699bb73ab8f3a10d zoneinfo-noinstall.patch
+a09467dbb00c1ab9f7e7527d9b020a6d913b8da2380a5359e782f27ccf9ec4dd4f50bfc92c95dc2e793904242c8139793c15e78e651d2777fb3b3abc48fcd640 zoneinfo-fix.patch"
diff --git a/user/py3-tz/zoneinfo-fix.patch b/user/py3-tz/zoneinfo-fix.patch
new file mode 100644
index 000000000..a0a3a1190
--- /dev/null
+++ b/user/py3-tz/zoneinfo-fix.patch
@@ -0,0 +1,13 @@
+Patch pulled from Gentoo. Forces package to use system tzinfo
+--- a/pytz/__init__.py
++++ b/pytz/__init__.py
+@@ -91,8 +91,7 @@
+ if zoneinfo_dir is not None:
+ filename = os.path.join(zoneinfo_dir, *name_parts)
+ else:
+- filename = os.path.join(os.path.dirname(__file__),
+- 'zoneinfo', *name_parts)
++ filename = os.path.join('/usr/share/zoneinfo', *name_parts)
+ if not os.path.exists(filename):
+ # http://bugs.launchpad.net/bugs/383171 - we avoid using this
+ # unless absolutely necessary to help when a broken version of
diff --git a/user/py3-tz/zoneinfo-noinstall.patch b/user/py3-tz/zoneinfo-noinstall.patch
new file mode 100644
index 000000000..a41e0a6cc
--- /dev/null
+++ b/user/py3-tz/zoneinfo-noinstall.patch
@@ -0,0 +1,20 @@
+Patch pulled from Gentoo. Prevents installation of pkg tzinfo files
+--- a/setup.py
++++ b/setup.py
+@@ -15,15 +15,8 @@
+ memail = 'stuart@stuartbishop.net'
+ packages = ['pytz']
+ resources = ['zone.tab', 'locales/pytz.pot']
+-for dirpath, dirnames, filenames in os.walk(os.path.join('pytz', 'zoneinfo')):
+- # remove the 'pytz' part of the path
+- basepath = dirpath.split(os.path.sep, 1)[1]
+- resources.extend([os.path.join(basepath, filename)
+- for filename in filenames])
+ package_data = {'pytz': resources}
+
+-assert len(resources) > 10, 'zoneinfo files not found!'
+-
+ setup(
+ name='pytz',
+ version=pytz.VERSION,
+
diff --git a/user/py3-urllib3/APKBUILD b/user/py3-urllib3/APKBUILD
new file mode 100644
index 000000000..e97b7032b
--- /dev/null
+++ b/user/py3-urllib3/APKBUILD
@@ -0,0 +1,30 @@
+# Contributor: Yura Kushnir <kushnir.yura@gmail.com>
+# Contributor: Francesco Colista <fcolista@alpinelinux.org>
+# Maintainer: zlg <zlg+adelie@zlg.space>
+pkgname=py3-urllib3
+_pkgname=${pkgname#py3-}
+pkgver=1.23
+pkgrel=0
+pkgdesc="HTTP library with thread-safe connection pooling, file post, and more"
+url="https://github.com/shazow/urllib3"
+arch="noarch"
+options="!check" # needs tornado
+license="MIT"
+depends="python3 py3-certifi py3-cryptography py3-idna py3-openssl py3-pysocks"
+makedepends="python3-dev"
+subpackages=""
+source="$pkgname-$pkgver.tar.gz::https://github.com/shazow/urllib3/archive/$pkgver.tar.gz"
+builddir="$srcdir/$_pkgname-$pkgver"
+
+build() {
+ cd "$builddir"
+ python3 setup.py build
+}
+
+package() {
+ mkdir -p "$pkgdir"
+ cd "$builddir"
+ python3 setup.py install --prefix=/usr --root="$pkgdir"
+}
+
+sha512sums="1d9eccdd2f939a1029fb6e49c45409b3a493f38b5880bba45a6e8a8088c0478190807b1fe7341b22abe363809ef41c5367de831de9618bcc62f34cb9f0cbc7af py3-urllib3-1.23.tar.gz"
diff --git a/user/py3-zope-component/APKBUILD b/user/py3-zope-component/APKBUILD
new file mode 100644
index 000000000..e915703cf
--- /dev/null
+++ b/user/py3-zope-component/APKBUILD
@@ -0,0 +1,28 @@
+# Contributor: Fabian Affolter <fabian@affolter-engineering.ch>
+# Maintainer: zlg <zlg+adelie@zlg.space>
+pkgname=py3-zope-component
+_pkgname=zope.component
+pkgver=4.5
+pkgrel=0
+pkgdesc="Zope Component Architecture"
+url="https://pypi.python.org/pypi/zope.component"
+arch="noarch"
+options="!check" # needs nose
+license="ZPL-2.1"
+depends="python3 py3-zope-interface py3-zope-event"
+makedepends="python3-dev"
+subpackages=""
+source="$_pkgname-$pkgver.tar.gz::https://github.com/zopefoundation/zope.component/archive/$pkgver.tar.gz"
+builddir="$srcdir"/$_pkgname-$pkgver
+
+build() {
+ cd "$builddir"
+ python3 setup.py build
+}
+
+package() {
+ cd "$builddir"
+ python3 setup.py install --prefix=/usr --root="$pkgdir"
+}
+
+sha512sums="cca873bcb62b6eb60825c55fa8fe9704e505c9bec90f851921545d543c23e3995cc9d70ab9e7b8cc6b37853bbcffd09c93891f675ff113e68b56e23d8b28c912 zope.component-4.5.tar.gz"
diff --git a/user/py3-zope-event/APKBUILD b/user/py3-zope-event/APKBUILD
new file mode 100644
index 000000000..d03bc400e
--- /dev/null
+++ b/user/py3-zope-event/APKBUILD
@@ -0,0 +1,33 @@
+# Contributor: Carlo Landmeter <clandmeter@gmail.com>
+# Maintainer: zlg <zlg+adelie@zlg.space>
+pkgname=py3-zope-event
+_pkgname=zope.event
+pkgver=4.4
+pkgrel=0
+pkgdesc="Event publishing / dispatch, used by Zope Component Architecture"
+url="https://github.com/zopefoundation/zope.event"
+arch="noarch"
+options="!check" # needs nose
+license="ZPL-2.1"
+depends="python3"
+makedepends="python3-dev"
+source="$_pkgname-$pkgver.tar.gz::https://github.com/zopefoundation/$_pkgname/archive/$pkgver.tar.gz"
+
+builddir="$srcdir"/$_pkgname-$pkgver
+
+build() {
+ cd "$builddir"
+ python3 setup.py build
+}
+
+check() {
+ cd "$builddir"
+ python3 setup.py test
+}
+
+package() {
+ cd "$builddir"
+ python3 setup.py install --prefix=/usr --root="$pkgdir"
+}
+
+sha512sums="653273d021a43dca6d77900a3e2928f1621fd9c47a536ddd186e00b601670a4ac72042a1eadf18cf9912609025b491cee41508e8eb53bf2dc2ada2c5d3d5bb70 zope.event-4.4.tar.gz"
diff --git a/user/py3-zope-interface/APKBUILD b/user/py3-zope-interface/APKBUILD
new file mode 100644
index 000000000..b5e612068
--- /dev/null
+++ b/user/py3-zope-interface/APKBUILD
@@ -0,0 +1,32 @@
+# Contributor: Natanael Copa <ncopa@alpinelinux.org>
+# Maintainer: zlg <zlg+adelie@zlg.space>
+pkgname=py3-zope-interface
+_pkgname=zope.interface
+pkgver=4.6.0
+pkgrel=0
+pkgdesc="Separate distribution of the zope.interface package used in Zope"
+url="https://zopeinterface.readthedocs.io"
+arch="all"
+license="ZPL-2.1"
+depends="python3 py3-zope-event"
+makedepends="python3-dev"
+subpackages=""
+source="https://files.pythonhosted.org/packages/source/${_pkgname:0:1}/$_pkgname/$_pkgname-$pkgver.tar.gz"
+builddir="$srcdir/$_pkgname-$pkgver"
+
+build() {
+ cd "$builddir"
+ python3 setup.py build
+}
+
+check() {
+ cd "$builddir"
+ python3 setup.py test
+}
+
+package() {
+ cd "$builddir"
+ python3 setup.py install --prefix=/usr --root="$pkgdir"
+}
+
+sha512sums="cb82144f0b228dd4d2f7cbfba130ee190265bf809d4e928262935c3b5551a3a298df4eba2dfe7ecde96fed27f39f59ab95e9c11f3eadf0fdc13f61b5c046f78f zope.interface-4.6.0.tar.gz"