Initial commit

This commit is contained in:
Jakub Bidžan 2025-07-31 21:25:25 +02:00
parent 31bea10343
commit 1ef58f4454
21 changed files with 431 additions and 0 deletions

View file

@ -0,0 +1 @@
DIST bleak-1.0.1.tar.gz 115135 BLAKE2B f662dd5d1745e1378bd1911d7122a082b2d24e3cdc07694e5e25d6f8d76b177921851054a9f7f1c6ace033df46aa2e447193f19942f66c5f70e349c3fd5810bf SHA512 1440dea23b3a9e1f56cc76251de7c4ca8c9087f83c848151a19631f4fabfcf38aac06256c842a6ecdb9ffc1125460313868809675ab21ba0e34adc5e0d8142c5

View file

@ -0,0 +1,22 @@
# Copyright 1999-2025 Gentoo Authors
# Distributed under the terms of the GNU General Public License v2
EAPI=8
DISTUTILS_USE_PEP517=poetry
PYTHON_COMPAT=( python3_{12..14} )
inherit distutils-r1 pypi
DESCRIPTION="Bluetooth Low Energy platform Agnostic Klient"
HOMEPAGE="https://github.com/hbldh/bleak"
LICENSE="MIT"
SLOT="0"
KEYWORDS="amd64 x86 arm64"
RDEPEND="dev-python/dbus-fast[${PYTHON_USEDEP}]"
BDEPEND="test? ( dev-python/pytest-asyncio[${PYTHON_USEDEP}] )"
distutils_enable_tests pytest

View file

@ -0,0 +1 @@
DIST dotmap-1.3.30.tar.gz 12391 BLAKE2B f6e5713704d2f7c828c0a373174348900ebe39b72fd85456ed374a62f474c67e916b5956afeec246d8a6e9253b08c5e495c781d2915cecb38bee0d0b256810d2 SHA512 8e6d3e4419c3dbd1c0a3209dfc7bcda859bf547ab3fe88471c04a7f4c34219c9ca13b848788e6a24c6d3ece539f9ba0a16600f7941abdbd99c4e6d0badf4af27

View file

@ -0,0 +1,21 @@
# Copyright 1999-2025 Gentoo Authors
# Distributed under the terms of the GNU General Public License v2
EAPI=8
PYTHON_COMPAT=( python3_{10..13} )
DISTUTILS_USE_PEP517=setuptools
inherit distutils-r1
DESCRIPTION="Python dictionary with dot notation access"
HOMEPAGE="https://github.com/drgrib/dotmap https://pypi.org/project/dotmap/"
SRC_URI="https://files.pythonhosted.org/packages/source/d/dotmap/dotmap-${PV}.tar.gz"
LICENSE="MIT"
SLOT="0"
KEYWORDS="~amd64 ~x86 arm64"
RDEPEND="${PYTHON_DEPS}"
DEPEND="${RDEPEND}"
BDEPEND="dev-python/setuptools[${PYTHON_USEDEP}]"
S="${WORKDIR}/${P}"

View file

@ -0,0 +1,13 @@
cat << EOF > /var/db/repos/jextra/dev-python/dotmap/metadata.xml
<?xml version="1.0" encoding="UTF-8"?>
<!DOCTYPE pkgmetadata SYSTEM "https://www.gentoo.org/dtd/metadata.dtd">
<pkgmetadata>
<maintainer>
<email>your.email@example.com</email>
<name>Your Name</name>
</maintainer>
<longdescription>
DotMap is a Python library that provides a dictionary-like object with dot notation access.
</longdescription>
</pkgmetadata>
EOF

View file

@ -0,0 +1 @@
DIST v0.4.6.tar.gz 10317 BLAKE2B 5f81549c59ecef1201b4224a38b76f52a7b855a23c4e9ce15c294a442a60c331b1155b528bb94e9787a6071d7631a26b8985112e686465341692fa573601d47f SHA512 d0c803a36069974f5e023237346781f4bd727bb7f177abe37a071dcc63dd12c9759f52278123f10270d583d2ac3ac857eefc96895671d6afe3bf4b33b6f38826

View file

@ -0,0 +1,29 @@
EAPI=8
DISTUTILS_USE_PEP517=setuptools
PYTHON_COMPAT=( python3_{10..13} )
inherit distutils-r1
DESCRIPTION="A simple Python wrapper to print color messages in the terminal"
HOMEPAGE="https://github.com/xy3/print-color"
SRC_URI="https://github.com/xy3/print-color/archive/refs/tags/v0.4.6.tar.gz"
LICENSE="MIT"
SLOT="0"
KEYWORDS="~amd64 ~x86 ~arm64"
IUSE="test"
RDEPEND=""
DEPEND="${RDEPEND}
test? (
dev-python/pytest[${PYTHON_USEDEP}]
)
"
RESTRICT="!test? ( test )"
python_test() {
# Run pytest for testing
${EPYTHON} -m pytest -v tests || die "Tests failed with ${EPYTHON}"
}

View file

@ -0,0 +1 @@
DIST pypubsub-4.0.3.gh.tar.gz 174033 BLAKE2B 65fcd960ce2f0548f152546faa7a98055a823414c453b475d6ade339f55e72a60dcb8d627f6272cc844d181f772b76dba4e53b2ecc521bb05420abc09f6c30d2 SHA512 cf9aca44e91a5d0e5ecf6739deabf2980f9464395c89e3c5335c5248e47c570701e0534bb660c5005325a994d9f8e7f261f36bc8bea74cfc7eb760b73c572652

View file

@ -0,0 +1,32 @@
# Copyright 1999-2023 Gentoo Authors
# Distributed under the terms of the GNU General Public License v2
EAPI=8
DISTUTILS_USE_PEP517=setuptools
PYTHON_COMPAT=( python3_{10..13} )
inherit distutils-r1
DESCRIPTION="Python Publish-Subscribe Package"
HOMEPAGE="https://github.com/schollii/pypubsub https://pypi.org/project/PyPubSub/"
MY_PN="pypubsub"
SRC_URI="https://github.com/schollii/${MY_PN}/archive/refs/tags/v${PV}.tar.gz -> ${P}.gh.tar.gz"
S="${WORKDIR}/${MY_PN}-${PV}"
LICENSE="BSD"
SLOT="0"
KEYWORDS="amd64 arm arm64 x86"
IUSE="test"
RESTRICT="!test? ( test )"
DOCS="README.rst"
BDEPEND="
test? (
dev-python/pytest[${PYTHON_USEDEP}]
)"
python_test() {
py.test -v -v || die
}
distutils_enable_tests pytest

View file

@ -0,0 +1 @@
DIST pyqrcode-1.2.1.gh.tar.gz 63404 BLAKE2B b192c55f3e6fb5c6d2c5f245d34fc909fbaaa582586a2a60526a98fb83079136358a0012d98e0772fb73eecb5133fecb643525fae05de8eede10b6f7a6662f08 SHA512 87a307e57d470153b37cccd3e79c8e04fc8de63cc7ffce313a7cc7d7e7f53b2979125ac3680a4b261fe0eeffd476e7934fa189a679f9370d690113811cc750b8

View file

@ -0,0 +1,36 @@
# Copyright 1999-2023 Gentoo Authors
# Distributed under the terms of the GNU General Public License v2
EAPI=8
PYTHON_COMPAT=( python3_{10..13} )
DISTUTILS_USE_PEP517=setuptools
inherit distutils-r1
# upstream doesn't do tags
EGIT_COMMIT="674a77b5eaf850d063f518bd90c243ee34ad6b5d"
DESCRIPTION="A pure Python QR code generator with SVG, EPS, PNG and terminal output"
HOMEPAGE="https://github.com/mnooner256/pyqrcode/ https://pypi.org/project/PyQRCode/"
SRC_URI="https://github.com/mnooner256/pyqrcode/archive/${EGIT_COMMIT}.tar.gz -> ${P}.gh.tar.gz"
S=${WORKDIR}/${PN}-${EGIT_COMMIT}
LICENSE="BSD"
SLOT="0"
KEYWORDS="amd64 arm arm64 x86"
IUSE="png test"
RESTRICT="!test? ( test )"
RDEPEND="png? ( dev-python/pypng[${PYTHON_USEDEP}] )"
BDEPEND="
test? ( dev-python/pypng[${PYTHON_USEDEP}] )
"
src_prepare() {
# don't pull in tkinter for one test
sed -i -e 's:test_xbm_with_tkinter:_&:' \
tests/test_xbm.py || die
distutils-r1_src_prepare
}

View file

@ -0,0 +1 @@
DIST pytap2-2.3.0.tar.gz 6591 BLAKE2B 3253e38e219b85301dd50dd445d1e1570891b8e7de7bb73ba2acf3916dd12f18fede1dd4e659f1f513d9ff4ed5eacb9d8d8ce87d8d10889bed169a48d282564a SHA512 3b5640f54b43b7350262bec09b744eca6f435564d1dc18d1228043eddf490ff4014689426e3015e3bd21890e66f274708aaabe9732bfb5deea8732c8e7f2e6d1

View file

@ -0,0 +1,30 @@
# Copyright 2023-2025 Gentoo Authors
# Distributed under the terms of the GNU General Public License v2
EAPI=8
PYTHON_COMPAT=( python3_{8..13} )
DISTUTILS_USE_PEP517=setuptools
inherit distutils-r1
DESCRIPTION="Object oriented interface to Linux TUN/TAP devices"
HOMEPAGE="https://github.com/johnthagen/pytap2 https://pypi.org/project/pytap2/"
SRC_URI="mirror://pypi/${PN:0:1}/${PN}/${P}.tar.gz"
LICENSE="MIT"
SLOT="0"
KEYWORDS="~amd64 ~x86 arm64"
RDEPEND="
${PYTHON_DEPS}
sys-apps/net-tools
"
BDEPEND="
${RDEPEND}
test? (
dev-python/pytest[${PYTHON_USEDEP}]
)
"
distutils_enable_tests pytest

View file

@ -0,0 +1 @@
DIST timeago-1.0.16.tar.gz 25637 BLAKE2B fbcd615a3005a1cc1c1c767ad32e25f64e0d9ce416c361649cc3920423b164b5cea9954b432913ee13d41b7c36d3c4f9d555121f948d85ff8ffcaa3bd544088b SHA512 1106abe17cfb34324ee9194141598698abbe1c0ed36273d449fdc9047aa42e369845be0041bdffc4470f00602df20bf981de3ad16f10c22d65de4c0a41d65e73

View file

@ -0,0 +1,28 @@
# Copyright 2025 Gentoo Authors
# Distributed under the terms of the GNU General Public License v2
EAPI=8
PYTHON_COMPAT=( python2_7 python3_{4..13} )
DISTUTILS_USE_PEP517=no
inherit distutils-r1
DESCRIPTION="A simple Python library to format datetime with '*** time ago' statements"
HOMEPAGE="https://github.com/hustcc/timeago"
SRC_URI="https://github.com/hustcc/timeago/archive/refs/tags/${PV}.tar.gz -> ${P}.tar.gz"
LICENSE="MIT"
SLOT="0"
KEYWORDS="~amd64 ~x86"
IUSE=""
DEPEND=""
RDEPEND="${DEPEND}"
BDEPEND="dev-python/setuptools[${PYTHON_USEDEP}]"
S="${WORKDIR}/${P}/src"
pkg_setup() {
python_setup
}

View file

@ -0,0 +1,64 @@
# Copyright 1999-2025 Gentoo Authors
# Distributed under the terms of the GNU General Public License v2
EAPI=8
PYTHON_COMPAT=( python3_13 )
inherit meson python-single-r1 git-r3
DESCRIPTION="GUI client to control a Meshtastic device over Serial, Bluetooth, or TCP/IP"
HOMEPAGE="https://gitlab.com/kop316/gtk-meshtastic-client/"
EGIT_REPO_URI="https://gitlab.com/kop316/gtk-meshtastic-client.git"
LICENSE="GPL-3+"
SLOT="0"
KEYWORDS="amd64 x86 arm64"
IUSE=""
REQUIRED_USE="${PYTHON_REQUIRED_USE}"
DEPEND="
${PYTHON_DEPS}
dev-libs/gobject-introspection
gui-libs/libadwaita[introspection]
>=gui-libs/gtk-4.10:4[introspection]
x11-libs/pango[introspection]
media-libs/libshumate[introspection]
$(python_gen_cond_dep '
dev-python/pygobject[${PYTHON_USEDEP}]
media-radio/meshtastic[${PYTHON_USEDEP}]
dev-python/dotmap[${PYTHON_USEDEP}]
dev-python/pyqrcode[${PYTHON_USEDEP}]
')
dev-util/desktop-file-utils
"
RDEPEND="
${PYTHON_DEPS}
dev-libs/glib:2
x11-libs/gdk-pixbuf:2
dev-libs/gobject-introspection
gui-libs/libadwaita[introspection]
>=gui-libs/gtk-4.10:4[introspection]
>=x11-libs/pango-1.44.0[introspection]
media-libs/libshumate[introspection]
$(python_gen_cond_dep '
>=dev-python/pygobject-3.36[${PYTHON_USEDEP},cairo]
media-radio/meshtastic[${PYTHON_USEDEP}]
dev-python/dotmap[${PYTHON_USEDEP}]
')
"
BDEPEND="
${PYTHON_DEPS}
$(python_gen_cond_dep '
dev-python/meson-python[${PYTHON_USEDEP}]
')
dev-util/desktop-file-utils
"
src_configure() {
meson_src_configure
}
src_install() {
meson_src_install
python_optimiz

View file

@ -0,0 +1,2 @@
DIST gtk-meshtastic-client-1.2.tar.gz 2253578 BLAKE2B ac3a5c8cf36528ed26570ead8d8135f2262833a453112517b372104dea3191f07f73fbb1a1005cda1811bf0886c3b4617038a2c7586498baf494dda51c423873 SHA512 7b29977e0c6e4f95211afe4a36c9ddd0485cf02ed5658e0e4dcfcafbe5e4cb1cd9d32cbd95789a36b2ee0a1f5d5a6acb424bf4485319bc80d9e844afc4889ac3
DIST meshtastic-2.5.1.tar.gz 361093 BLAKE2B 52a06c7141089a6a7311057934c124b6a478efc567e06ae401c1876ebd17c89aea43b316f02539e6bf1b7de91adf73ad6203f4e3e847efac03de20d333f09b3f SHA512 c9c9cb13602eef1847db0f04b2cb47b7d1fbc4cb6a23d1756a62eadfad00d05a6c13117a73978db07aa3ee16f51712e1b5d17eec77c06b3fea348fe58c3491da

View file

@ -0,0 +1,142 @@
# Copyright 1999-2025 Gentoo Authors
# Distributed under the terms of the GNU General Public License v2
EAPI=8
PYTHON_COMPAT=( python3_{10..13} )
DISTUTILS_USE_PEP517=poetry
inherit distutils-r1 meson
DESCRIPTION="Python CLI and API for Meshtastic devices, with optional GUI client"
HOMEPAGE="https://github.com/meshtastic/python https://gitlab.com/kop316/gtk-meshtastic-client/"
GUI_PV="1.2" # Verify this version exists at https://gitlab.com/kop316/gtk-meshtastic-client/-/tags
SRC_URI="
https://github.com/meshtastic/python/archive/refs/tags/${PV}.tar.gz -> ${P}.tar.gz
gui? ( https://gitlab.com/kop316/gtk-meshtastic-client/-/archive/${GUI_PV}/gtk-meshtastic-client-${GUI_PV}.tar.gz )
"
LICENSE="GPL-3"
SLOT="0"
KEYWORDS="~amd64 ~x86 ~arm64"
IUSE="gui minimal +qrcode +tun"
DEPEND="
${PYTHON_DEPS}
>=dev-python/bleak-1.0.1[${PYTHON_USEDEP}]
>=dev-python/packaging-25.0[${PYTHON_USEDEP}]
>=dev-python/platformdirs-4.3.8[${PYTHON_USEDEP}]
>=dev-python/protobuf-6.31.1[${PYTHON_USEDEP}]
>=dev-python/pyserial-3.5-r2[${PYTHON_USEDEP}]
>=dev-python/pyyaml-6.0.2[${PYTHON_USEDEP}]
>=dev-python/requests-2.32.4[${PYTHON_USEDEP}]
>=dev-python/setuptools-80.9.0-r1[${PYTHON_USEDEP}]
>=dev-python/tabulate-0.9.0-r1[${PYTHON_USEDEP}]
>=dev-python/build-1.2.2_p1-r2[${PYTHON_USEDEP}]
>=dev-python/dotmap-1.3.0[${PYTHON_USEDEP}]
>=dev-python/pypubsub-4.0.3[${PYTHON_USEDEP}]
!minimal? ( dev-python/print-color[${PYTHON_USEDEP}] )
qrcode? ( >=dev-python/pyqrcode-1.2.1[${PYTHON_USEDEP}] )
tun? ( >=dev-python/pytap2-2.3.0[${PYTHON_USEDEP}] )
gui? (
dev-libs/gobject-introspection
gui-libs/libadwaita[introspection]
>=gui-libs/gtk-4.10:4[introspection]
x11-libs/pango[introspection]
media-libs/libshumate[introspection]
$(python_gen_cond_dep '
dev-python/pygobject[${PYTHON_USEDEP}]
dev-python/dotmap[${PYTHON_USEDEP}]
dev-python/pyqrcode[${PYTHON_USEDEP}]
')
)
"
RDEPEND="
${PYTHON_DEPS}
>=dev-python/bleak-1.0.1[${PYTHON_USEDEP}]
>=dev-python/packaging-25.0[${PYTHON_USEDEP}]
>=dev-python/platformdirs-4.3.8[${PYTHON_USEDEP}]
>=dev-python/protobuf-6.31.1[${PYTHON_USEDEP}]
>=dev-python/pyserial-3.5-r2[${PYTHON_USEDEP}]
>=dev-python/pyyaml-6.0.2[${PYTHON_USEDEP}]
>=dev-python/requests-2.32.4[${PYTHON_USEDEP}]
>=dev-python/setuptools-80.9.0-r1[${PYTHON_USEDEP}]
>=dev-python/tabulate-0.9.0-r1[${PYTHON_USEDEP}]
>=dev-python/build-1.2.2_p1-r2[${PYTHON_USEDEP}]
>=dev-python/dotmap-1.3.0[${PYTHON_USEDEP}]
>=dev-python/pypubsub-4.0.3[${PYTHON_USEDEP}]
!minimal? ( dev-python/print-color[${PYTHON_USEDEP}] )
qrcode? ( >=dev-python/pyqrcode-1.2.1[${PYTHON_USEDEP}] )
tun? ( >=dev-python/pytap2-2.3.0[${PYTHON_USEDEP}] )
gui? (
dev-libs/glib:2
x11-libs/gdk-pixbuf:2
dev-libs/gobject-introspection
gui-libs/libadwaita[introspection]
>=gui-libs/gtk-4.10:4[introspection]
>=x11-libs/pango-1.44.0[introspection]
media-libs/libshumate[introspection]
$(python_gen_cond_dep '
>=dev-python/pygobject-3.36[${PYTHON_USEDEP},cairo]
dev-python/dotmap[${PYTHON_USEDEP}]
')
)
"
BDEPEND="
${PYTHON_DEPS}
dev-python/poetry-core[${PYTHON_USEDEP}]
dev-python/wheel[${PYTHON_USEDEP}]
dev-python/installer[${PYTHON_USEDEP}]
gui? (
$(python_gen_cond_dep '
dev-python/meson-python[${PYTHON_USEDEP}]
')
dev-util/desktop-file-utils
)
"
S="${WORKDIR}/python-${PV}"
src_unpack() {
default
if use gui; then
mv "${WORKDIR}/gtk-meshtastic-client-${GUI_PV}" "${WORKDIR}/gtk-meshtastic-client" || die
fi
}
src_prepare() {
default
distutils-r1_src_prepare
}
src_configure() {
if use gui; then
# Configure GUI build in a separate build directory
mkdir -p "${WORKDIR}/gui-build" || die
pushd "${WORKDIR}/gui-build" || die
ECONF_SOURCE="${WORKDIR}/gtk-meshtastic-client" meson_src_configure
popd || die
fi
}
src_compile() {
distutils-r1_src_compile
if use gui; then
pushd "${WORKDIR}/gui-build" || die
meson_src_compile
popd || die
fi
}
src_install() {
distutils-r1_src_install
dodoc README.md
if use gui; then
pushd "${WORKDIR}/gui-build" || die
meson_src_install
python_optimize
popd || die
fi
}

3
metadata/layout.conf Normal file
View file

@ -0,0 +1,3 @@
masters = gentoo
thin-manifests = true
sign-manifests = false

1
profiles/eapi Normal file
View file

@ -0,0 +1 @@
8

1
profiles/repo_name Normal file
View file

@ -0,0 +1 @@
tailwhip