diff --git a/acct-group/gemini/gemini-0.ebuild b/acct-group/gemini/gemini-0.ebuild
new file mode 100644
index 0000000000..35028819ce
--- /dev/null
+++ b/acct-group/gemini/gemini-0.ebuild
@@ -0,0 +1,10 @@
+# Copyright 2020 Gentoo Authors
+# Distributed under the terms of the GNU General Public License v2
+
+EAPI=7
+
+inherit acct-group
+
+KEYWORDS="~amd64"
+
+ACCT_GROUP_ID=-1
diff --git a/acct-group/gemini/metadata.xml b/acct-group/gemini/metadata.xml
new file mode 100644
index 0000000000..5533c93d75
--- /dev/null
+++ b/acct-group/gemini/metadata.xml
@@ -0,0 +1,8 @@
+
+
+
+
+ gentoo@tastytea.de
+ Ronny (tastytea) Gutbrod
+
+
diff --git a/acct-user/gemini/gemini-0.ebuild b/acct-user/gemini/gemini-0.ebuild
new file mode 100644
index 0000000000..390a1e4fe7
--- /dev/null
+++ b/acct-user/gemini/gemini-0.ebuild
@@ -0,0 +1,14 @@
+# Copyright 2020 Gentoo Authors
+# Distributed under the terms of the GNU General Public License v2
+
+EAPI=7
+
+inherit acct-user
+
+DESCRIPTION="User for gemini daemon"
+KEYWORDS="~amd64"
+
+ACCT_USER_ID=-1
+ACCT_USER_GROUPS=( gemini )
+
+acct-user_add_deps
diff --git a/acct-user/gemini/metadata.xml b/acct-user/gemini/metadata.xml
new file mode 100644
index 0000000000..5533c93d75
--- /dev/null
+++ b/acct-user/gemini/metadata.xml
@@ -0,0 +1,8 @@
+
+
+
+
+ gentoo@tastytea.de
+ Ronny (tastytea) Gutbrod
+
+
diff --git a/acct-user/sndiod/sndiod-0.ebuild b/acct-user/sndiod/sndiod-0.ebuild
index e1d52a2ad4..a25ed12fa0 100644
--- a/acct-user/sndiod/sndiod-0.ebuild
+++ b/acct-user/sndiod/sndiod-0.ebuild
@@ -9,6 +9,5 @@ DESCRIPTION="daemon user for sndio"
KEYWORDS="~amd64"
ACCT_USER_ID="-1"
ACCT_USER_GROUPS=( audio )
-ACCT_USER_HOME=/var/lib/sndio
acct-user_add_deps
diff --git a/dev-python/hstspreload/Manifest b/dev-python/hstspreload/Manifest
index fd2ccc5fa6..89a10ebb88 100644
--- a/dev-python/hstspreload/Manifest
+++ b/dev-python/hstspreload/Manifest
@@ -1 +1 @@
-DIST hstspreload-2020.5.19.tar.gz 883008 BLAKE2B 74bcd23dc34a4fe2ad7ddc16bb97e9307f49275d06fd275e4dbc09c63faf6e55d8d3efa9932c2b83bd367d456c271b305d511450f9c1de2b91d685ade77b8f4e SHA512 9e95ef0c49f739a3bb6b3dc48164ccc594eb0d2666a3c7eb3df0a971b0d334b8d9de66f3dace70870083df0826fb544fd4f297f7ab4cfaea46c029a6c63a4017
+DIST hstspreload-2020.5.27.tar.gz 885660 BLAKE2B 671442ac0c089c57eedfda2fff8176ac8d851ba18692fd9b17d95537eeb36dd174b58855cbef17ea90e73b8130147531f36248769dfc943e9fe0f75b94978b1d SHA512 fb61522978e32e24c3c603767e8e9885fbd6e093774b7aa8bdb1f982f49c61c80129a6222cdb91ab547ca121abfd645215ed7d23025be2b4759e9a0e281d919f
diff --git a/dev-python/hstspreload/hstspreload-2020.5.19.ebuild b/dev-python/hstspreload/hstspreload-2020.5.27.ebuild
similarity index 100%
rename from dev-python/hstspreload/hstspreload-2020.5.19.ebuild
rename to dev-python/hstspreload/hstspreload-2020.5.27.ebuild
diff --git a/dev-python/httpcore/Manifest b/dev-python/httpcore/Manifest
index 9fc05bcad0..579b3b552a 100644
--- a/dev-python/httpcore/Manifest
+++ b/dev-python/httpcore/Manifest
@@ -1,2 +1,2 @@
DIST httpcore-0.7.0.tar.gz 27932 BLAKE2B f3258a9f83a37bcf62422c6f6c5a911712afa1038378ef64aeda45c9b3e700d0e809e3526f2bc33633ce4dc827465d99298597a8b26b6cb13696f9663fcd5a87 SHA512 f5419ebbe6ff42e782bea127ca778de1d42637a15e0152d69e6b58ca7e3687d560a4b132781390a853595ec7d18a0fa567d5b752debbb7be7f5cc822a5eac3fd
-DIST httpcore-0.9.0.tar.gz 35349 BLAKE2B 8d543a9b8c0298a0c558ae0045dec82bdf3267acd1d683339a70fb5b8807a5c4600963a9b6c2634081f0d2c8a85015124d3ebdc58250f8a8e67c40d5a3a93d10 SHA512 b4369b8d9581521f68842431513c836ca6b2e08da54342fb7530f68e8e3bb906868858943243945c7591da175f760fcc291d2cba50b1cdb939f34bca962c80fc
+DIST httpcore-0.9.1.tar.gz 35371 BLAKE2B 8f7416c1e726892b152e7e9623790ac1e70b9142f45028b23df25f1d54b6f113f1a79839ec2a7d90b196197d53c880847526c2e47e07d52a0e104a9e2849bccf SHA512 5105ff0c19b8a4a34080e79aa1d191199131450e658fbe0949b091e5acfb9cd8b11033757a3bd7dd1490e5fb61352eb44d086babd70d22be33479befd16745fd
diff --git a/dev-python/httpcore/httpcore-0.9.0.ebuild b/dev-python/httpcore/httpcore-0.9.1.ebuild
similarity index 100%
rename from dev-python/httpcore/httpcore-0.9.0.ebuild
rename to dev-python/httpcore/httpcore-0.9.1.ebuild
diff --git a/dev-python/httpx/Manifest b/dev-python/httpx/Manifest
index 7cd7a928ac..c83eae7808 100644
--- a/dev-python/httpx/Manifest
+++ b/dev-python/httpx/Manifest
@@ -1,4 +1,4 @@
DIST httpx-0.11.1.tar.gz 177579 BLAKE2B a5722e997a79fd9b5c701a862abb4bf70458bf57057d2a9fb9a2dccdbbca2f4f54bf59e91437ed8ff452737a3b01d69dbf4efe3ef03d49e240bc5bf54e51ebea SHA512 4da80a0232092d2423fd95d4549df79d9885e6ce34af0480f1d5a4904c9ca0fdb725b600f603c482179ea3b7c6ee5b584a70b8c0722918ba28f1bcc5c48201ad
DIST httpx-0.12.1.tar.gz 186169 BLAKE2B 1b118081e55a5424eafdcf756cae8c1e9d72857d4fc24472cf118e4130bcb814e307f6fae52c0de61d89303cb1a876c8cda60fb98e138745a74712a1e7f2da08 SHA512 fe978a16f945e17a27815bc65f2adf36bd2a70b6e5e3c0ee8df83172d041c3084eaf99b10f7e015fc4a3de00ed081e83a54275256f9e85bf7cd32d553b316883
-DIST httpx-0.13.1.tar.gz 176011 BLAKE2B 9bbb8296a3acc6268a6d9cd577825543620ed9b2f577c7ee906f6d95bf3cec206b708b3d16eb9cc2f83d7a2eee32ec6bfced9ce3edb634689a61861d70753ab5 SHA512 f6647f1eaf406da93cf82de13e82a7b8f82af8101d939a33aeab40f17a4595875e2019f4c4591c45702cae99d861b50f4a60dcae4c7feb6ac28f0fde8eae8a87
+DIST httpx-0.13.2.tar.gz 175958 BLAKE2B 4a9e846a3539ab139eef2e25bd9484ea41eae30bf2ef5e6ad76588e3bf9e1793c5d0db4b722e2152c121aacf154dccb89895f2adbe1095436b858692f293dfbf SHA512 d1e2f296fb68125ff353e5705ab315b97742696455adbc420d73ec801f6360747104d1696e2a5f20438fa295e985f110a0cbc597f1580497bcb7df2365c824fd
DIST httpx-0.9.3.tar.gz 170954 BLAKE2B 420993bc556e510d8f0d1ff0f3f200d9dce98c1475d40a1f7f5047cd34600bade5e184485d88642169685bf903dedc46d988e608d1f93f718cdb550801c1bb8e SHA512 171e4ea2a19882c90ced9af995e5ecce1ff27308f95f027ddc7197a599624125d94f70f9f0a0672b6a04db0569f1eaa05a935fd8d43f517335fe26b30dc53d1a
diff --git a/dev-python/httpx/httpx-0.13.1.ebuild b/dev-python/httpx/httpx-0.13.2.ebuild
similarity index 97%
rename from dev-python/httpx/httpx-0.13.1.ebuild
rename to dev-python/httpx/httpx-0.13.2.ebuild
index 910989b9ef..57009b0c49 100644
--- a/dev-python/httpx/httpx-0.13.1.ebuild
+++ b/dev-python/httpx/httpx-0.13.2.ebuild
@@ -44,7 +44,8 @@ DEPEND="test? (
dev-python/pytest-asyncio[${PYTHON_USEDEP}]
dev-python/trio[${PYTHON_USEDEP}]
dev-python/trustme[${PYTHON_USEDEP}]
- dev-python/uvicorn[${PYTHON_USEDEP}] )"
+ dev-python/uvicorn[${PYTHON_USEDEP}]
+)"
distutils_enable_tests pytest
diff --git a/dev-python/outcome/outcome-1.0.1.ebuild b/dev-python/outcome/outcome-1.0.1.ebuild
index 6a5ecc6614..c50b00a6ed 100644
--- a/dev-python/outcome/outcome-1.0.1.ebuild
+++ b/dev-python/outcome/outcome-1.0.1.ebuild
@@ -3,7 +3,7 @@
EAPI=7
-PYTHON_COMPAT=( python3_{6,7} )
+PYTHON_COMPAT=( python3_{6,7,8} )
inherit distutils-r1
diff --git a/dev-python/tekore/Manifest b/dev-python/tekore/Manifest
index d7335cca39..51a503c7ca 100644
--- a/dev-python/tekore/Manifest
+++ b/dev-python/tekore/Manifest
@@ -1 +1,2 @@
DIST tekore-1.7.0.tar.gz 191852 BLAKE2B ca0be9e5b8f4e291de87d495098f295529c75457aca466627ab2d8973365a64b40f7a618883c0178ed6482ac4d62ef95d78341992404a4bbbec803fe939afcfb SHA512 a62b456621633e05edb39944e0cf36a0df092468c9e238f6028f8ea684613e37c32f5257d6fb681c758e01f451e2f3d0993f5fa9344463e9f12b5945add161b0
+DIST tekore-2.0.0.tar.gz 200852 BLAKE2B e4611083dd442e557b05924335ac2607aa02e9894e95d129bc78d5eff477c0eecf6ab797c6d683e64230a45cca7c301c02ec31f6a0c7430dd8375dbbad98ad6f SHA512 a1f9584ff3d43e160761a93f7150265e37f974a28aacb7071d29ccb10de769ad1cda7e402b94edec6207e08d5724b2c7a65ac1dbc8b4849b7819c3f6f15a8df0
diff --git a/dev-python/tekore/tekore-2.0.0.ebuild b/dev-python/tekore/tekore-2.0.0.ebuild
new file mode 100644
index 0000000000..da9463e9b9
--- /dev/null
+++ b/dev-python/tekore/tekore-2.0.0.ebuild
@@ -0,0 +1,45 @@
+# Copyright 1999-2020 Gentoo Authors
+# Distributed under the terms of the GNU General Public License v2
+
+EAPI=7
+
+PYTHON_COMPAT=( python3_{6,7} )
+
+inherit distutils-r1
+
+DESCRIPTION="Spotify Web API client"
+HOMEPAGE="https://tekore.readthedocs.io
+ https://github.com/felix-hilden/tekore"
+SRC_URI="https://github.com/felix-hilden/${PN}/archive/v${PV}.tar.gz -> ${P}.tar.gz"
+
+LICENSE="MIT"
+KEYWORDS="~amd64 ~x86"
+SLOT="0"
+
+RDEPEND="
+ dev-python/requests[${PYTHON_USEDEP}]
+ >=dev-python/httpx-0.11.1[${PYTHON_USEDEP}]
+ ${GEMSERV_LOGFILE:-/dev/null}"
+command_user="${GEMSERV_USER:-gemini}"
+command_background="true"
+
+depend() {
+ need net
+ use dns
+}
diff --git a/net-misc/gemserv/gemserv-0.3.1.ebuild b/net-misc/gemserv/gemserv-0.3.1.ebuild
new file mode 100644
index 0000000000..94250ce0da
--- /dev/null
+++ b/net-misc/gemserv/gemserv-0.3.1.ebuild
@@ -0,0 +1,142 @@
+# Copyright 2020 Gentoo Authors
+# Distributed under the terms of the GNU General Public License v2
+
+EAPI=7
+
+CRATES="
+ arc-swap-0.4.6
+ atty-0.2.14
+ autocfg-1.0.0
+ bitflags-1.2.1
+ bytes-0.5.4
+ cc-1.0.54
+ cfg-if-0.1.10
+ chrono-0.4.11
+ colored-1.9.3
+ foreign-types-0.3.2
+ foreign-types-shared-0.1.1
+ fuchsia-zircon-0.3.3
+ fuchsia-zircon-sys-0.3.3
+ futures-core-0.3.5
+ futures-macro-0.3.5
+ futures-task-0.3.5
+ futures-util-0.3.5
+ hermit-abi-0.1.13
+ idna-0.2.0
+ iovec-0.1.4
+ kernel32-sys-0.2.2
+ lazy_static-1.4.0
+ libc-0.2.71
+ log-0.4.8
+ matches-0.1.8
+ memchr-2.3.3
+ mime-0.3.16
+ mime_guess-2.0.3
+ mio-0.6.22
+ mio-named-pipes-0.1.6
+ mio-uds-0.6.8
+ miow-0.2.1
+ miow-0.3.4
+ net2-0.2.34
+ num-integer-0.1.42
+ num-traits-0.2.11
+ num_cpus-1.13.0
+ once_cell-1.4.0
+ openssl-0.10.29
+ openssl-sys-0.9.57
+ percent-encoding-2.1.0
+ pin-project-0.4.17
+ pin-project-internal-0.4.17
+ pin-project-lite-0.1.5
+ pin-utils-0.1.0
+ pkg-config-0.3.17
+ proc-macro-hack-0.5.16
+ proc-macro-nested-0.1.4
+ proc-macro2-1.0.17
+ quote-1.0.6
+ redox_syscall-0.1.56
+ serde-1.0.110
+ serde_derive-1.0.110
+ signal-hook-registry-1.2.0
+ simple_logger-1.6.0
+ slab-0.4.2
+ smallvec-1.4.0
+ socket2-0.3.12
+ syn-1.0.27
+ time-0.1.43
+ tokio-0.2.21
+ tokio-openssl-0.4.0
+ toml-0.5.6
+ unicase-2.6.0
+ unicode-bidi-0.3.4
+ unicode-normalization-0.1.12
+ unicode-xid-0.2.0
+ url-2.1.1
+ vcpkg-0.2.8
+ version_check-0.9.2
+ winapi-0.2.8
+ winapi-0.3.8
+ winapi-build-0.1.1
+ winapi-i686-pc-windows-gnu-0.4.0
+ winapi-x86_64-pc-windows-gnu-0.4.0
+ ws2_32-sys-0.2.1
+"
+
+inherit cargo git-r3 systemd
+
+EGIT_REPO_URI="https://git.sr.ht/~int80h/gemserv"
+EGIT_COMMIT="8ebe1becf124cf6143e3410d10cfb0fb760911e6"
+
+DESCRIPTION="A gemini Server written in rust"
+HOMEPAGE="
+ gemini://80h.dev/projects/gemserv/
+ https://git.sr.ht/~int80h/gemserv
+"
+SRC_URI="$(cargo_crate_uris ${CRATES})"
+
+LICENSE="Apache-2.0 BSD MIT MPL-2.0"
+SLOT="0"
+KEYWORDS="~amd64"
+
+RDEPEND="
+ >=dev-libs/openssl-1.1.0g
+ acct-user/gemini
+"
+DEPEND="${RDEPEND}"
+
+src_prepare() {
+ # Fix paths in systemd unit.
+ sed -i "s@/path/to/bin /path/to/config@${EPREFIX}/usr/bin/gemserv ${EPREFIX}/etc/gemserv/config.toml@" \
+ init-scripts/gemserv.service || die
+
+ # Fix paths in config.
+ sed -Ei 's@/path/to/(key|cert)@/etc/gemserv/\1.pem@' config.toml || die
+ # Fix typo in config.
+ sed -Ei 's@^proxy@proxy =@' config.toml || die
+
+ default
+}
+
+src_unpack() {
+ git-r3_src_unpack
+ cargo_src_unpack
+}
+
+src_install() {
+ cargo_src_install
+
+ einstalldocs
+
+ insinto etc/gemserv
+ insopts --group=gemini --mode=640
+ newins config.toml config.toml.example
+
+ systemd_dounit init-scripts/gemserv.service
+ newinitd "${FILESDIR}/${PN}.initd" "${PN}"
+}
+
+pkg_postinst() {
+ einfo "You can generate yourself a TLS certificate and key with:"
+ einfo "openssl req -x509 -newkey rsa:4096 -sha256 -days 3660 -nodes \\"
+ einfo " -keyout /etc/gemserv/key.pem -out /etc/gemserv/cert.pem"
+}
diff --git a/net-misc/gemserv/metadata.xml b/net-misc/gemserv/metadata.xml
new file mode 100644
index 0000000000..5533c93d75
--- /dev/null
+++ b/net-misc/gemserv/metadata.xml
@@ -0,0 +1,8 @@
+
+
+
+
+ gentoo@tastytea.de
+ Ronny (tastytea) Gutbrod
+
+