diff --git a/dev-python/flask-restx/Manifest b/dev-python/flask-restx/Manifest
new file mode 100644
index 000000000..06c18a220
--- /dev/null
+++ b/dev-python/flask-restx/Manifest
@@ -0,0 +1 @@
+DIST flask-restx-0.5.1.tar.gz 5282772 BLAKE2B a3094a44b24d1eadbda2143df9bad125b1f63379177150e7b83fe679614b8751fa3c6f944ab7bddd81d5483c282f0601f966288c648763b913b87bbdb6ec721e SHA512 6eb357b2650862aa8f1181808967b573b8956d24d38f32280a286d204191ba30eb661f058699b0f768c5778297ed28480ab7781b153a5035e66bb62d16f1421b
diff --git a/dev-python/flask-restx/flask-restx-0.5.1.ebuild b/dev-python/flask-restx/flask-restx-0.5.1.ebuild
new file mode 100644
index 000000000..fd9f9ffff
--- /dev/null
+++ b/dev-python/flask-restx/flask-restx-0.5.1.ebuild
@@ -0,0 +1,30 @@
+# Copyright 1999-2022 Gentoo Authors
+# Distributed under the terms of the GNU General Public License v2
+
+EAPI=8
+
+PYTHON_COMPAT=( python3_{9..10} )
+
+#MY_PN="flask-restx"
+#MY_P="${MY_PN}-${PV}"
+
+inherit distutils-r1
+
+DESCRIPTION="Fully featured framework for fast, easy and documented API development"
+HOMEPAGE="https://github.com/python-restx/flask-restx"
+SRC_URI="mirror://pypi/${P:0:1}/${PN}/${P}.tar.gz"
+
+LICENSE="MIT"
+SLOT="0"
+KEYWORDS="amd64 ~arm64 x86"
+IUSE="test"
+
+RDEPEND="dev-python/aniso8601[${PYTHON_USEDEP}]
+ dev-python/jsonschema[${PYTHON_USEDEP}]
+ >=dev-python/flask-0.10[${PYTHON_USEDEP}]
+ dev-python/werkzeug[${PYTHON_USEDEP}]
+ dev-python/pytz[${PYTHON_USEDEP}]
+ dev-python/six[${PYTHON_USEDEP}]"
+
+DEPEND="${RDEPEND}"
+REQUIRED_USE="${PYTHON_REQUIRED_USE}"
diff --git a/dev-python/flask-restx/metadata.xml b/dev-python/flask-restx/metadata.xml
new file mode 100644
index 000000000..ace7c2d3a
--- /dev/null
+++ b/dev-python/flask-restx/metadata.xml
@@ -0,0 +1,8 @@
+
+
+
+
+ unknown@pentoo.ch
+ Author Unknown
+
+
diff --git a/dev-python/jwt/jwt-1.1.0.ebuild b/dev-python/jwt/jwt-1.1.0-r1.ebuild
similarity index 83%
rename from dev-python/jwt/jwt-1.1.0.ebuild
rename to dev-python/jwt/jwt-1.1.0-r1.ebuild
index b157699be..e0a9fd704 100644
--- a/dev-python/jwt/jwt-1.1.0.ebuild
+++ b/dev-python/jwt/jwt-1.1.0-r1.ebuild
@@ -16,4 +16,5 @@ SLOT="0"
KEYWORDS="amd64 ~arm64 x86"
IUSE=""
-RDEPEND=">dev-python/cryptography-2.9.2[${PYTHON_USEDEP}]"
+RDEPEND="!dev-python/pyjwt
+ >dev-python/cryptography-2.9.2[${PYTHON_USEDEP}]"
diff --git a/net-wireless/wifipumpkin3/Manifest b/net-wireless/wifipumpkin3/Manifest
index 8a2ee3d79..26849782b 100644
--- a/net-wireless/wifipumpkin3/Manifest
+++ b/net-wireless/wifipumpkin3/Manifest
@@ -1,2 +1,2 @@
DIST wifipumpkin3-1.1.2_p2.tar.gz 4781386 BLAKE2B 0e39e0a1a4baf7fef0cdd56a467962b9a5fbba2c14d7d08972ac2726a21ea9e0f4d8ec1d2b3f8286fa85d08b8e4f644dbe1c014d838dde9744b7218120fe35bc SHA512 71db54918102eeacc315da5f1ec87c93a94b59b6508369b8f0a92ac24a5136416e7b3da949a364c378f5617cf3cc8ae77e8bd269daab6849127fbe6f2f1fc7bb
-DIST wifipumpkin3-1.1.3_p1.tar.gz 4683510 BLAKE2B d6a43067bad57dad17005bfab0ff936db1e98f54541f25982ae68f83a6faef8b20c260b82172cb8a1c36689078a95384c12f7e8df5ff8c21f50b059974a4e8a9 SHA512 70375dad9ca27175fad3e7f70cab0fe574dfde1d06e94d6ef5833705accabc072a6adc01745bb37339590330b128ba1a8b39da12e624c6ec4228f35d636944b4
+DIST wifipumpkin3-1.1.3_p2.tar.gz 4682012 BLAKE2B 1a19a127999083489c598a0529bca5704dab331f98d07c6a48cee191351a78d55b490332021582c58db8f0ce0de49992935e64e53db2784bddc40236ee214c62 SHA512 dc712452dadd99cd1fe1a769325da7289c3f5cbf1df8975dd59abe8b03bcfc02bce1035f9826d1f81880eb50e782d847be87acc2a5d66c81f011d4ae596db223
diff --git a/net-wireless/wifipumpkin3/files/191.patch b/net-wireless/wifipumpkin3/files/191.patch
new file mode 100644
index 000000000..47e6922b9
--- /dev/null
+++ b/net-wireless/wifipumpkin3/files/191.patch
@@ -0,0 +1,25 @@
+From 21941bbf18c9cf6c1d2aba882395d2ccf9bbfa51 Mon Sep 17 00:00:00 2001
+From: Anton Bolshakov
+Date: Mon, 4 Jul 2022 11:41:28 +0800
+Subject: [PATCH] typos in the config_dir_packager_data
+
+comma is missing, and "data" folder is missing
+---
+ wifipumpkin3/core/utility/constants.py | 4 ++--
+ 1 file changed, 2 insertions(+), 2 deletions(-)
+
+diff --git a/wifipumpkin3/core/utility/constants.py b/wifipumpkin3/core/utility/constants.py
+index 438152d..4c91633 100644
+--- a/wifipumpkin3/core/utility/constants.py
++++ b/wifipumpkin3/core/utility/constants.py
+@@ -25,8 +25,8 @@
+ wp3_path_data = f"{wp3_setup_packager_path}/data"
+
+ config_dir_packager_data = [
+- f"{wp3_path_data}/config"
+- f"/usr/share/wifipumpkin3/config", # for .deb kali linux
++ f"{wp3_path_data}/config",
++ f"/usr/share/wifipumpkin3/data/config", # for .deb kali linux
+ f"/usr/wifipumpkin3/data/config", # for .deb debian general
+ ]
+
diff --git a/net-wireless/wifipumpkin3/files/192.patch b/net-wireless/wifipumpkin3/files/192.patch
new file mode 100644
index 000000000..cece8814a
--- /dev/null
+++ b/net-wireless/wifipumpkin3/files/192.patch
@@ -0,0 +1,93 @@
+From e34695527dff6f6b0feef093cfcaf41e93e2c26c Mon Sep 17 00:00:00 2001
+From: Anton Bolshakov
+Date: Mon, 4 Jul 2022 12:02:05 +0800
+Subject: [PATCH 1/2] config/setup.py: check if copy_tree was sucessful
+
+it would be better to check for the exit error code, but I didn't find it.
+---
+ wifipumpkin3/core/config/setup.py | 35 +++++++++++++++++++++----------
+ 1 file changed, 24 insertions(+), 11 deletions(-)
+
+diff --git a/wifipumpkin3/core/config/setup.py b/wifipumpkin3/core/config/setup.py
+index 3678524..9aaee7a 100644
+--- a/wifipumpkin3/core/config/setup.py
++++ b/wifipumpkin3/core/config/setup.py
+@@ -1,4 +1,3 @@
+-
+ import os
+ from distutils.dir_util import copy_tree
+ import wifipumpkin3.core.utility.constants as C
+@@ -10,25 +9,39 @@
+
+ def create_user_dir_config():
+ user_config_dir = C.user_config_dir
++ copy_sucessful = False
++
+ if not os.path.isdir(user_config_dir):
+ print(
+ display_messages(
+ "creating config user dir on: {}".format(
+- setcolor(user_config_dir, color="red")
++ setcolor(user_config_dir, color="orange")
+ ),
+ info=True,
+ )
+ )
+- os.makedirs(user_config_dir, exist_ok=True)
+ # force copy all files `config` to user_config_dir
+ for folder in C.config_dir_packager_data:
+ if os.path.isdir(folder):
++ os.makedirs(user_config_dir, exist_ok=True)
+ copy_tree(folder, user_config_dir + "/config")
+- exit(print(
+- display_messages(
+- "the user config has been create {}, please restart the wp3!".format(
+- setcolor("sucessfully", color="green")
+- ),
+- sucess=True,
+- )
+- ))
+\ No newline at end of file
++ copy_sucessful = true
++
++ if (copy_sucessful):
++ exit(print(
++ display_messages(
++ "the user config has been created {}, please restart the wp3".format(
++ setcolor("sucessfully", color="green")
++ ),
++ sucess=True,
++ )
++ ))
++ else:
++ exit(print(
++ display_messages(
++ "the user config has {} been created, please investigate!".format(
++ setcolor("not", color="red")
++ ),
++ error=True,
++ )
++ ))
+
+From 20348a1b956aac25857762438cfe822536a493e1 Mon Sep 17 00:00:00 2001
+From: Anton Bolshakov
+Date: Mon, 4 Jul 2022 12:05:24 +0800
+Subject: [PATCH 2/2] Update setup.py
+
+---
+ wifipumpkin3/core/config/setup.py | 2 +-
+ 1 file changed, 1 insertion(+), 1 deletion(-)
+
+diff --git a/wifipumpkin3/core/config/setup.py b/wifipumpkin3/core/config/setup.py
+index 9aaee7a..c064e4e 100644
+--- a/wifipumpkin3/core/config/setup.py
++++ b/wifipumpkin3/core/config/setup.py
+@@ -25,7 +25,7 @@ def create_user_dir_config():
+ if os.path.isdir(folder):
+ os.makedirs(user_config_dir, exist_ok=True)
+ copy_tree(folder, user_config_dir + "/config")
+- copy_sucessful = true
++ copy_sucessful=True
+
+ if (copy_sucessful):
+ exit(print(
diff --git a/net-wireless/wifipumpkin3/wifipumpkin3-1.1.3_p1.ebuild b/net-wireless/wifipumpkin3/wifipumpkin3-1.1.3_p2.ebuild
similarity index 81%
rename from net-wireless/wifipumpkin3/wifipumpkin3-1.1.3_p1.ebuild
rename to net-wireless/wifipumpkin3/wifipumpkin3-1.1.3_p2.ebuild
index 79a067386..c5c654ba8 100644
--- a/net-wireless/wifipumpkin3/wifipumpkin3-1.1.3_p1.ebuild
+++ b/net-wireless/wifipumpkin3/wifipumpkin3-1.1.3_p2.ebuild
@@ -4,7 +4,6 @@
EAPI=8
MY_PV="${PV/_p/-R}"
-#DISTUTILS_USE_SETUPTOOLS=rdepend
PYTHON_COMPAT=( python3_{9..10} )
inherit distutils-r1
@@ -15,8 +14,7 @@ SRC_URI="https://github.com/P0cL4bs/wifipumpkin3/archive/refs/tags/v${MY_PV}.tar
LICENSE="GPL-3"
SLOT="0"
-#https://github.com/P0cL4bs/wifipumpkin3/issues/189
-#KEYWORDS="~amd64 ~x86"
+KEYWORDS="~amd64 ~x86"
IUSE="tools"
@@ -39,8 +37,8 @@ RDEPEND="${PYTHON_DEPS}
dev-python/flask[${PYTHON_USEDEP}]
dev-python/requests[${PYTHON_USEDEP}]
dev-python/beautifulsoup4[${PYTHON_USEDEP}]
- dev-python/jwt[${PYTHON_USEDEP}]
- dev-python/flask-restful[${PYTHON_USEDEP}]
+ dev-python/pyjwt[${PYTHON_USEDEP}]
+ dev-python/flask-restx[${PYTHON_USEDEP}]
dev-python/markupsafe[${PYTHON_USEDEP}]
dev-python/werkzeug[${PYTHON_USEDEP}]
@@ -57,15 +55,18 @@ DEPEND="${RDEPEND}"
S="${WORKDIR}/${PN}-${MY_PV}"
src_prepare() {
+ #https://github.com/P0cL4bs/wifipumpkin3/pull/191
+ eapply "${FILESDIR}"/191.patch
+ eapply "${FILESDIR}"/192.patch
+
+ #FIXME: give up, fix all deps
+ echo "netifaces" > requirements.txt
#relax deps
# sed -e 's|==.*||' -i requirements.txt || die "sed failed"
# sed -e 's|scapy.*$|scapy|' -i requirements.txt || die "sed failed"
- #FIXME: give up, fix all names here:
- echo "netifaces" > requirements.txt
-
- #this directory is not available during installation
- sed '/^create_user_dir_config()/d' -i setup.py || die "sed failed"
+ #https://github.com/P0cL4bs/wifipumpkin3/issues/189
+ sed -e 's|wifipumpkin3/data/|share/wifipumpkin3/data/|' -i setup.py || die "sed failed"
eapply_user
}
diff --git a/profiles/pentoo/base/package.accept_keywords/dev-python b/profiles/pentoo/base/package.accept_keywords/dev-python
index 804221776..4567d54e1 100644
--- a/profiles/pentoo/base/package.accept_keywords/dev-python
+++ b/profiles/pentoo/base/package.accept_keywords/dev-python
@@ -334,7 +334,7 @@ dev-python/playsound
~dev-python/libarchive-c-2.7
~dev-python/scapy-http-1.8
~dev-python/service_identity-16.0.0
-=dev-python/loguru-0.5*
+=dev-python/loguru-0.6*
#required by rfcat
=dev-python/pyside2-5.14*