adding media-gfx/realesrgan-ncnn-vulkan and cryptography/cryptography-3.4.7-r3
This commit is contained in:
parent
ea7416abf4
commit
f91ae4cc8e
81
dev-python/cryptography/cryptography-3.4.7-r3.ebuild
Normal file
81
dev-python/cryptography/cryptography-3.4.7-r3.ebuild
Normal file
@ -0,0 +1,81 @@
|
||||
# Copyright 1999-2022 Gentoo Authors
|
||||
# Distributed under the terms of the GNU General Public License v2
|
||||
|
||||
EAPI=8
|
||||
|
||||
DISTUTILS_USE_PEP517=setuptools
|
||||
PYTHON_COMPAT=( python3_{8..11} pypy3 )
|
||||
PYTHON_REQ_USE="threads(+)"
|
||||
|
||||
inherit distutils-r1 multiprocessing
|
||||
|
||||
VEC_P=cryptography_vectors-${PV}
|
||||
DESCRIPTION="Library providing cryptographic recipes and primitives"
|
||||
HOMEPAGE="
|
||||
https://github.com/pyca/cryptography/
|
||||
https://pypi.org/project/cryptography/
|
||||
"
|
||||
SRC_URI="
|
||||
mirror://pypi/${PN:0:1}/${PN}/${P}.tar.gz
|
||||
test? ( mirror://pypi/c/cryptography_vectors/${VEC_P}.tar.gz )
|
||||
"
|
||||
|
||||
LICENSE="|| ( Apache-2.0 BSD )"
|
||||
SLOT="0"
|
||||
KEYWORDS="amd64 arm arm64 ppc ppc64 ~riscv ~s390 sparc x86 ~ppc-macos ~x64-macos ~sparc-solaris ~sparc64-solaris ~x64-solaris ~x86-solaris"
|
||||
|
||||
RDEPEND="
|
||||
$(python_gen_cond_dep '
|
||||
>=dev-python/cffi-1.8:=[${PYTHON_USEDEP}]
|
||||
' 'python*')
|
||||
"
|
||||
BDEPEND="
|
||||
test? (
|
||||
>=dev-python/hypothesis-1.11.4[${PYTHON_USEDEP}]
|
||||
dev-python/iso8601[${PYTHON_USEDEP}]
|
||||
dev-python/pretend[${PYTHON_USEDEP}]
|
||||
dev-python/pyasn1-modules[${PYTHON_USEDEP}]
|
||||
dev-python/pytz[${PYTHON_USEDEP}]
|
||||
dev-python/pytest-subtests[${PYTHON_USEDEP}]
|
||||
dev-python/pytest-xdist[${PYTHON_USEDEP}]
|
||||
)
|
||||
"
|
||||
|
||||
distutils_enable_tests pytest
|
||||
|
||||
DEPEND="
|
||||
>=dev-libs/openssl-1.0.2o-r6:0=
|
||||
"
|
||||
RDEPEND+=${DEPEND}
|
||||
|
||||
PATCHES=(
|
||||
"${FILESDIR}/${P}-py310.patch"
|
||||
)
|
||||
|
||||
src_prepare() {
|
||||
default
|
||||
|
||||
# avoid automagic dependency on dev-libs/openssl[sslv3]
|
||||
# https://bugs.gentoo.org/789450
|
||||
export CPPFLAGS="${CPPFLAGS} -DOPENSSL_NO_SSL3_METHOD=1"
|
||||
|
||||
# work around availability macros not supported in GCC (yet)
|
||||
if [[ ${CHOST} == *-darwin* ]] ; then
|
||||
local darwinok=0
|
||||
[[ ${CHOST##*-darwin} -ge 16 ]] && darwinok=1
|
||||
sed -e 's/__builtin_available(macOS 10\.12, \*)/'"${darwinok}"'/' \
|
||||
-i src/_cffi_src/openssl/src/osrandom_engine.c || die
|
||||
fi
|
||||
|
||||
# this version does not really use Rust, it just creates a dummy
|
||||
# extension to break stuff
|
||||
export CRYPTOGRAPHY_DONT_BUILD_RUST=1
|
||||
sed -e 's:from setuptools_rust import RustExtension:pass:' \
|
||||
-e '/setup_requires/d' \
|
||||
-i setup.py || die
|
||||
}
|
||||
|
||||
python_test() {
|
||||
local -x PYTHONPATH=${PYTHONPATH}:${WORKDIR}/${VEC_P}
|
||||
epytest -n "$(makeopts_jobs "${MAKEOPTS}" "$(get_nproc)")"
|
||||
}
|
301
dev-python/cryptography/files/cryptography-3.4.7-py310.patch
Normal file
301
dev-python/cryptography/files/cryptography-3.4.7-py310.patch
Normal file
@ -0,0 +1,301 @@
|
||||
diff --git a/src/cryptography/exceptions.py b/src/cryptography/exceptions.py
|
||||
index f5860590..3bd98d82 100644
|
||||
--- a/src/cryptography/exceptions.py
|
||||
+++ b/src/cryptography/exceptions.py
|
||||
@@ -3,10 +3,10 @@
|
||||
# for complete details.
|
||||
|
||||
|
||||
-from enum import Enum
|
||||
+from cryptography import utils
|
||||
|
||||
|
||||
-class _Reasons(Enum):
|
||||
+class _Reasons(utils.Enum):
|
||||
BACKEND_MISSING_INTERFACE = 0
|
||||
UNSUPPORTED_HASH = 1
|
||||
UNSUPPORTED_CIPHER = 2
|
||||
diff --git a/src/cryptography/hazmat/primitives/_serialization.py b/src/cryptography/hazmat/primitives/_serialization.py
|
||||
index 96a5ed9b..160a6b89 100644
|
||||
--- a/src/cryptography/hazmat/primitives/_serialization.py
|
||||
+++ b/src/cryptography/hazmat/primitives/_serialization.py
|
||||
@@ -3,13 +3,14 @@
|
||||
# for complete details.
|
||||
|
||||
import abc
|
||||
-from enum import Enum
|
||||
+
|
||||
+from cryptography import utils
|
||||
|
||||
# This exists to break an import cycle. These classes are normally accessible
|
||||
# from the serialization module.
|
||||
|
||||
|
||||
-class Encoding(Enum):
|
||||
+class Encoding(utils.Enum):
|
||||
PEM = "PEM"
|
||||
DER = "DER"
|
||||
OpenSSH = "OpenSSH"
|
||||
@@ -18,14 +19,14 @@ class Encoding(Enum):
|
||||
SMIME = "S/MIME"
|
||||
|
||||
|
||||
-class PrivateFormat(Enum):
|
||||
+class PrivateFormat(utils.Enum):
|
||||
PKCS8 = "PKCS8"
|
||||
TraditionalOpenSSL = "TraditionalOpenSSL"
|
||||
Raw = "Raw"
|
||||
OpenSSH = "OpenSSH"
|
||||
|
||||
|
||||
-class PublicFormat(Enum):
|
||||
+class PublicFormat(utils.Enum):
|
||||
SubjectPublicKeyInfo = "X.509 subjectPublicKeyInfo with PKCS#1"
|
||||
PKCS1 = "Raw PKCS#1"
|
||||
OpenSSH = "OpenSSH"
|
||||
@@ -34,7 +35,7 @@ class PublicFormat(Enum):
|
||||
UncompressedPoint = "X9.62 Uncompressed Point"
|
||||
|
||||
|
||||
-class ParameterFormat(Enum):
|
||||
+class ParameterFormat(utils.Enum):
|
||||
PKCS3 = "PKCS3"
|
||||
|
||||
|
||||
diff --git a/src/cryptography/hazmat/primitives/kdf/kbkdf.py b/src/cryptography/hazmat/primitives/kdf/kbkdf.py
|
||||
index ac36474f..75fe7d51 100644
|
||||
--- a/src/cryptography/hazmat/primitives/kdf/kbkdf.py
|
||||
+++ b/src/cryptography/hazmat/primitives/kdf/kbkdf.py
|
||||
@@ -4,7 +4,6 @@
|
||||
|
||||
|
||||
import typing
|
||||
-from enum import Enum
|
||||
|
||||
from cryptography import utils
|
||||
from cryptography.exceptions import (
|
||||
@@ -19,11 +18,11 @@ from cryptography.hazmat.primitives import constant_time, hashes, hmac
|
||||
from cryptography.hazmat.primitives.kdf import KeyDerivationFunction
|
||||
|
||||
|
||||
-class Mode(Enum):
|
||||
+class Mode(utils.Enum):
|
||||
CounterMode = "ctr"
|
||||
|
||||
|
||||
-class CounterLocation(Enum):
|
||||
+class CounterLocation(utils.Enum):
|
||||
BeforeFixed = "before_fixed"
|
||||
AfterFixed = "after_fixed"
|
||||
|
||||
diff --git a/src/cryptography/hazmat/primitives/serialization/pkcs7.py b/src/cryptography/hazmat/primitives/serialization/pkcs7.py
|
||||
index bcd9e330..57aac7e3 100644
|
||||
--- a/src/cryptography/hazmat/primitives/serialization/pkcs7.py
|
||||
+++ b/src/cryptography/hazmat/primitives/serialization/pkcs7.py
|
||||
@@ -3,8 +3,8 @@
|
||||
# for complete details.
|
||||
|
||||
import typing
|
||||
-from enum import Enum
|
||||
|
||||
+from cryptography import utils
|
||||
from cryptography import x509
|
||||
from cryptography.hazmat.backends import _get_backend
|
||||
from cryptography.hazmat.primitives import hashes, serialization
|
||||
@@ -35,7 +35,7 @@ _ALLOWED_PRIVATE_KEY_TYPES = typing.Union[
|
||||
]
|
||||
|
||||
|
||||
-class PKCS7Options(Enum):
|
||||
+class PKCS7Options(utils.Enum):
|
||||
Text = "Add text/plain MIME type"
|
||||
Binary = "Don't translate input data into canonical MIME format"
|
||||
DetachedSignature = "Don't embed data in the PKCS7 structure"
|
||||
diff --git a/src/cryptography/utils.py b/src/cryptography/utils.py
|
||||
index ef0fc443..9e571cfd 100644
|
||||
--- a/src/cryptography/utils.py
|
||||
+++ b/src/cryptography/utils.py
|
||||
@@ -4,6 +4,7 @@
|
||||
|
||||
|
||||
import abc
|
||||
+import enum
|
||||
import inspect
|
||||
import sys
|
||||
import typing
|
||||
@@ -162,3 +163,13 @@ int_from_bytes = deprecated(
|
||||
"int_from_bytes is deprecated, use int.from_bytes instead",
|
||||
DeprecatedIn34,
|
||||
)
|
||||
+
|
||||
+
|
||||
+# Python 3.10 changed representation of enums. We use well-defined object
|
||||
+# representation and string representation from Python 3.9.
|
||||
+class Enum(enum.Enum):
|
||||
+ def __repr__(self):
|
||||
+ return f"<{self.__class__.__name__}.{self._name_}: {self._value_!r}>"
|
||||
+
|
||||
+ def __str__(self):
|
||||
+ return f"{self.__class__.__name__}.{self._name_}"
|
||||
diff --git a/src/cryptography/x509/base.py b/src/cryptography/x509/base.py
|
||||
index 5505fa3b..e3846c33 100644
|
||||
--- a/src/cryptography/x509/base.py
|
||||
+++ b/src/cryptography/x509/base.py
|
||||
@@ -7,9 +7,9 @@ import abc
|
||||
import datetime
|
||||
import os
|
||||
import typing
|
||||
-from enum import Enum
|
||||
|
||||
from cryptography.hazmat._types import _PRIVATE_KEY_TYPES, _PUBLIC_KEY_TYPES
|
||||
+from cryptography import utils
|
||||
from cryptography.hazmat.backends import _get_backend
|
||||
from cryptography.hazmat.primitives import hashes, serialization
|
||||
from cryptography.hazmat.primitives.asymmetric import (
|
||||
@@ -66,7 +66,7 @@ def _convert_to_naive_utc_time(time: datetime.datetime) -> datetime.datetime:
|
||||
return time
|
||||
|
||||
|
||||
-class Version(Enum):
|
||||
+class Version(utils.Enum):
|
||||
v1 = 0
|
||||
v3 = 2
|
||||
|
||||
diff --git a/src/cryptography/x509/certificate_transparency.py b/src/cryptography/x509/certificate_transparency.py
|
||||
index d51bee92..d80f051a 100644
|
||||
--- a/src/cryptography/x509/certificate_transparency.py
|
||||
+++ b/src/cryptography/x509/certificate_transparency.py
|
||||
@@ -5,15 +5,16 @@
|
||||
|
||||
import abc
|
||||
import datetime
|
||||
-from enum import Enum
|
||||
|
||||
+from cryptography import utils
|
||||
|
||||
-class LogEntryType(Enum):
|
||||
+
|
||||
+class LogEntryType(utils.Enum):
|
||||
X509_CERTIFICATE = 0
|
||||
PRE_CERTIFICATE = 1
|
||||
|
||||
|
||||
-class Version(Enum):
|
||||
+class Version(utils.Enum):
|
||||
v1 = 0
|
||||
|
||||
|
||||
diff --git a/src/cryptography/x509/extensions.py b/src/cryptography/x509/extensions.py
|
||||
index 6cae016a..742f1fa2 100644
|
||||
--- a/src/cryptography/x509/extensions.py
|
||||
+++ b/src/cryptography/x509/extensions.py
|
||||
@@ -8,7 +8,6 @@ import datetime
|
||||
import hashlib
|
||||
import ipaddress
|
||||
import typing
|
||||
-from enum import Enum
|
||||
|
||||
from cryptography import utils
|
||||
from cryptography.hazmat._der import (
|
||||
@@ -634,7 +633,7 @@ class DistributionPoint(object):
|
||||
crl_issuer = utils.read_only_property("_crl_issuer")
|
||||
|
||||
|
||||
-class ReasonFlags(Enum):
|
||||
+class ReasonFlags(utils.Enum):
|
||||
unspecified = "unspecified"
|
||||
key_compromise = "keyCompromise"
|
||||
ca_compromise = "cACompromise"
|
||||
@@ -978,7 +977,7 @@ class TLSFeature(ExtensionType):
|
||||
return hash(tuple(self._features))
|
||||
|
||||
|
||||
-class TLSFeatureType(Enum):
|
||||
+class TLSFeatureType(utils.Enum):
|
||||
# status_request is defined in RFC 6066 and is used for what is commonly
|
||||
# called OCSP Must-Staple when present in the TLS Feature extension in an
|
||||
# X.509 certificate.
|
||||
diff --git a/src/cryptography/x509/name.py b/src/cryptography/x509/name.py
|
||||
index a579aa21..9069a9f4 100644
|
||||
--- a/src/cryptography/x509/name.py
|
||||
+++ b/src/cryptography/x509/name.py
|
||||
@@ -3,14 +3,13 @@
|
||||
# for complete details.
|
||||
|
||||
import typing
|
||||
-from enum import Enum
|
||||
|
||||
from cryptography import utils
|
||||
from cryptography.hazmat.backends import _get_backend
|
||||
from cryptography.x509.oid import NameOID, ObjectIdentifier
|
||||
|
||||
|
||||
-class _ASN1Type(Enum):
|
||||
+class _ASN1Type(utils.Enum):
|
||||
UTF8String = 12
|
||||
NumericString = 18
|
||||
PrintableString = 19
|
||||
diff --git a/src/cryptography/x509/ocsp.py b/src/cryptography/x509/ocsp.py
|
||||
index 1c5de73e..bcf210c1 100644
|
||||
--- a/src/cryptography/x509/ocsp.py
|
||||
+++ b/src/cryptography/x509/ocsp.py
|
||||
@@ -6,8 +6,8 @@
|
||||
import abc
|
||||
import datetime
|
||||
import typing
|
||||
-from enum import Enum
|
||||
|
||||
+from cryptography import utils
|
||||
from cryptography import x509
|
||||
from cryptography.hazmat.primitives import hashes, serialization
|
||||
from cryptography.x509.base import (
|
||||
@@ -27,12 +27,12 @@ _OIDS_TO_HASH = {
|
||||
}
|
||||
|
||||
|
||||
-class OCSPResponderEncoding(Enum):
|
||||
+class OCSPResponderEncoding(utils.Enum):
|
||||
HASH = "By Hash"
|
||||
NAME = "By Name"
|
||||
|
||||
|
||||
-class OCSPResponseStatus(Enum):
|
||||
+class OCSPResponseStatus(utils.Enum):
|
||||
SUCCESSFUL = 0
|
||||
MALFORMED_REQUEST = 1
|
||||
INTERNAL_ERROR = 2
|
||||
@@ -58,7 +58,7 @@ def _verify_algorithm(algorithm):
|
||||
)
|
||||
|
||||
|
||||
-class OCSPCertStatus(Enum):
|
||||
+class OCSPCertStatus(utils.Enum):
|
||||
GOOD = 0
|
||||
REVOKED = 1
|
||||
UNKNOWN = 2
|
||||
diff --git a/tests/test_cryptography_utils.py b/tests/test_cryptography_utils.py
|
||||
index 6b795e0c..803997ac 100644
|
||||
--- a/tests/test_cryptography_utils.py
|
||||
+++ b/tests/test_cryptography_utils.py
|
||||
@@ -2,6 +2,7 @@
|
||||
# 2.0, and the BSD License. See the LICENSE file in the root of this repository
|
||||
# for complete details.
|
||||
|
||||
+import enum
|
||||
import typing
|
||||
|
||||
import pytest
|
||||
@@ -51,3 +52,13 @@ class TestCachedProperty(object):
|
||||
assert len(accesses) == 1
|
||||
assert t.t == 14
|
||||
assert len(accesses) == 1
|
||||
+
|
||||
+
|
||||
+def test_enum():
|
||||
+ class TestEnum(utils.Enum):
|
||||
+ value = "something"
|
||||
+
|
||||
+ assert issubclass(TestEnum, enum.Enum)
|
||||
+ assert isinstance(TestEnum.value, enum.Enum)
|
||||
+ assert repr(TestEnum.value) == "<TestEnum.value: 'something'>"
|
||||
+ assert str(TestEnum.value) == "TestEnum.value"
|
3
media-gfx/realesrgan-ncnn-vulkan/Manifest
Normal file
3
media-gfx/realesrgan-ncnn-vulkan/Manifest
Normal file
@ -0,0 +1,3 @@
|
||||
DIST realesrgan-ncnn-vulkan-0.2.0.zip 46931474 BLAKE2B c16c05c343501272f5b4df6db7e7f8c592c4f8c8170ca0a0181c4433d1889ddea702d65fc134013bdaca302eeeab6e5b6d6fbad407adb7a2afa0acbefd6f4eca SHA512 f462692524f3a85261714fe182e7f0c680101eb48558ae644df25145df5bbbe65f154ca0fcb8364dae2a2e1a362ac24df1869756d2e567ea6a4f767009213e9f
|
||||
DIST v0.2.0.zip 146717 BLAKE2B c0bb925c86b51f8c76b7cc7033d49b46e9a66f396e05bc334297933a01448c513a7e00d7eacc84bea5ca2c32706982d5bbcb59cd97823150ccc3a0b29a8e87a6 SHA512 1be70ebd9ec2e9feeb1dc616bd8401f46c5aae8d2f758ff725bfe2ef949cc90cf647bedbb81e4df45b4a21752ad82ca92af6a5df63166a27372ad17904742b26
|
||||
EBUILD realesrgan-ncnn-vulkan-0.2.0.ebuild 1504 BLAKE2B 99c7386443296abf660f533369447e60cc182191373a2bbff36874e61b07a06fe42b1a176955c769c2dba5e0108020a7fe2c3bbf2309545053ce9fd1f7bc8a67 SHA512 eb572cb2cf5ed6e502b67a9a05f8312674d1112d695715038597115366b529319b9221e149a4da51d17178139433dafe980a73a4d0773817458ace57229e8317
|
@ -0,0 +1,59 @@
|
||||
# Copyright 1999-2022 Gentoo Authors
|
||||
# Distributed under the terms of the GNU General Public License v2
|
||||
|
||||
# Big thank you to whoever made the original waifu2x-ncnn-vulkan ebuild, which I took and modified using the existing AUR PKGBUILD as reference
|
||||
# https://aur.archlinux.org/cgit/aur.git/tree/PKGBUILD?h=realesrgan-ncnn-vulkan
|
||||
|
||||
EAPI=8
|
||||
|
||||
inherit cmake
|
||||
|
||||
DESCRIPTION="NCNN implementation of Real-ESRGAN"
|
||||
HOMEPAGE="https://github.com/xinntao/Real-ESRGAN"
|
||||
SRC_URI="https://github.com/xinntao/Real-ESRGAN-ncnn-vulkan/archive/refs/tags/v0.2.0.zip https://github.com/xinntao/Real-ESRGAN/releases/download/v0.2.5.0/realesrgan-ncnn-vulkan-20220424-ubuntu.zip -> ${P}.zip"
|
||||
S="${WORKDIR}/Real-ESRGAN-ncnn-vulkan-0.2.0"
|
||||
|
||||
|
||||
LICENSE="MIT"
|
||||
SLOT="0"
|
||||
KEYWORDS="~amd64 ~x86"
|
||||
|
||||
BDEPEND="app-arch/unzip"
|
||||
|
||||
RDEPEND="
|
||||
dev-libs/ncnn:=[vulkan]
|
||||
media-libs/libwebp:=
|
||||
media-libs/vulkan-loader"
|
||||
DEPEND="
|
||||
${RDEPEND}
|
||||
dev-util/glslang
|
||||
dev-util/vulkan-headers"
|
||||
|
||||
src_prepare() {
|
||||
CMAKE_USE_DIR=${S}/src
|
||||
cmake_src_prepare
|
||||
|
||||
# Update all paths to match installation for models.
|
||||
sed "/PATHSTR\|model path/s|models-|${EPREFIX}/usr/share/${PN}/models-|" \
|
||||
-i src/main.cpp || die
|
||||
}
|
||||
|
||||
src_configure() {
|
||||
local mycmakeargs=(
|
||||
-DGLSLANG_TARGET_DIR="${ESYSROOT}"/usr/$(get_libdir)/cmake
|
||||
-DUSE_SYSTEM_NCNN=ON
|
||||
-DUSE_SYSTEM_WEBP=ON
|
||||
-DCMAKE_INSTALL_PREFIX=/usr
|
||||
)
|
||||
|
||||
cmake_src_configure
|
||||
}
|
||||
|
||||
src_install() {
|
||||
dobin "${BUILD_DIR}"/realesrgan-ncnn-vulkan
|
||||
|
||||
insinto /usr/share/${PN}
|
||||
doins -r "${WORKDIR}"/models
|
||||
|
||||
einstalldocs
|
||||
}
|
Loading…
Reference in New Issue
Block a user