diff --git a/dev-libs/lexbor/Manifest b/dev-libs/lexbor/Manifest
index 09850cd04a..4e28c28e19 100644
--- a/dev-libs/lexbor/Manifest
+++ b/dev-libs/lexbor/Manifest
@@ -1 +1 @@
-DIST lexbor-2.3.0.tar.gz 4213726 BLAKE2B d0124822d5ada65495adf7db5323bdd7e73d92e33bd737aa13b337168129b653bddac7871f42ee3f81861e6ebb873a5bdf41bd4bbe0de0696e3c1c6e1db4c165 SHA512 add1832f2e1927538206329703cd717fb30cb6ae2f52e1a0042961062cbcafd2e3ce4437ee2081ad7b2d51c6b63b910be06987e47c4a7007321db52b2812e515
+DIST lexbor-2.4.0.tar.gz 4245007 BLAKE2B 9aa9a568e9c251272f8ed161c4fa0d1d11456a43f06c896128fdf38647f7f0ac9bb59ef6961b69a98c5f8efd23fe45d1c4fe7e196f84072d7e1301c648edf29a SHA512 c12a04df5852464e6448a771ca6914ae5eeec48d84f0d199d034b65260edf49a7c47bbd8c910e1bf62b2592237a352368d1640660b2c55c5e5cd355c79782350
diff --git a/dev-libs/lexbor/lexbor-2.3.0.ebuild b/dev-libs/lexbor/lexbor-2.4.0.ebuild
similarity index 100%
rename from dev-libs/lexbor/lexbor-2.3.0.ebuild
rename to dev-libs/lexbor/lexbor-2.4.0.ebuild
diff --git a/dev-python/daff/daff-1.3.46.ebuild b/dev-python/daff/daff-1.3.46.ebuild
index a303fac882..50c220d2c0 100644
--- a/dev-python/daff/daff-1.3.46.ebuild
+++ b/dev-python/daff/daff-1.3.46.ebuild
@@ -3,7 +3,7 @@
EAPI=8
-PYTHON_COMPAT=( python3_{10..12} pypy3 )
+PYTHON_COMPAT=( python3_{10..13} pypy3 )
DISTUTILS_USE_PEP517=setuptools
inherit distutils-r1 pypi
diff --git a/dev-python/pyftdi/Manifest b/dev-python/pyftdi/Manifest
new file mode 100644
index 0000000000..0b4047c313
--- /dev/null
+++ b/dev-python/pyftdi/Manifest
@@ -0,0 +1 @@
+DIST pyftdi-0.55.4.gh.tar.gz 186949 BLAKE2B 4d680ff38bbb3b1abb320398fa7543f9524e52511ea3fbfcf08d00d1e69c345ad71341c3de5204c69c1023d6974fdefd763bf61d693e88a3154f2c710f5ab070 SHA512 3998572f1af781327678d99ab89ee33bda42bea6320cf62ed4e65a3c6a891754f8f17763482e0d852bff9c73ab80af8c2df8c71ed70af9079512680064b24ede
diff --git a/dev-python/pyftdi/metadata.xml b/dev-python/pyftdi/metadata.xml
new file mode 100644
index 0000000000..423b6dd2ec
--- /dev/null
+++ b/dev-python/pyftdi/metadata.xml
@@ -0,0 +1,30 @@
+
+
+
+
+ vowstar@gmail.com
+ Huang Rui
+
+
+ pyftdi
+ eblot/pyftdi
+
+ Emmanuel Blot
+ emmanuel.blot@free.fr
+
+ https://github.com/eblot/pyftdi/issues
+
+
+ PyFtdi aims at providing a user-space driver for popular FTDI devices,
+ implemented in pure Python language.
+ PyFtdi supports various features, including UART/Serial USB conversion with
+ speeds up to 12Mbps, depending on the FTDI device. It also offers
+ GPIO/Bitbang functionality, supporting 8-bit asynchronous,
+ 8-bit synchronous, and 8-/16-bit MPSSE modes. For SPI and I2C, PyFtdi
+ provides master capabilities with simultaneous GPIO support, managing up to
+ 12 pins per port for SPI and up to 14 pins for I2C. Additionally, it
+ includes basic JTAG master functions, EEPROM access (though some parameters
+ are read-only), and experimental CBUS support on selected devices with
+ 4 pins per port.
+
+
diff --git a/dev-python/pyftdi/pyftdi-0.55.4.ebuild b/dev-python/pyftdi/pyftdi-0.55.4.ebuild
new file mode 100644
index 0000000000..8d90560055
--- /dev/null
+++ b/dev-python/pyftdi/pyftdi-0.55.4.ebuild
@@ -0,0 +1,39 @@
+# Copyright 1999-2024 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 pypi
+
+DESCRIPTION="PyFtdi provides a user-space driver for FTDI devices"
+HOMEPAGE="https://github.com/eblot/pyftdi"
+SRC_URI="https://github.com/eblot/${PN}/archive/refs/tags/v${PV}.tar.gz -> ${P}.gh.tar.gz"
+
+LICENSE="BSD"
+SLOT="0"
+KEYWORDS="~amd64 ~arm64 ~riscv ~x86"
+IUSE="test"
+RESTRICT="!test? ( test )"
+
+RDEPEND="
+ dev-python/pyusb[${PYTHON_USEDEP}]
+ dev-python/pyserial[${PYTHON_USEDEP}]
+"
+
+DEPEND="${RDEPEND}"
+
+BDEPEND="
+ test? (
+ dev-python/ruamel-yaml[${PYTHON_USEDEP}]
+ )
+"
+
+python_test() {
+ FTDI_LOGLEVEL=WARNING
+ FTDI_DEBUG=on
+ FTDI_VIRTUAL=off "${EPYTHON}" pyftdi/tests/mockusb.py || die
+ FTDI_VIRTUAL=on "${EPYTHON}" pyftdi/tests/gpio.py || die
+ FTDI_VIRTUAL=on "${EPYTHON}" pyftdi/tests/eeprom_mock.py || die
+}
diff --git a/gui-apps/wl-clip-persist/wl-clip-persist-0.4.3.ebuild b/gui-apps/wl-clip-persist/wl-clip-persist-0.4.3-r1.ebuild
similarity index 96%
rename from gui-apps/wl-clip-persist/wl-clip-persist-0.4.3.ebuild
rename to gui-apps/wl-clip-persist/wl-clip-persist-0.4.3-r1.ebuild
index f202c7cd36..0f89e3fb9d 100644
--- a/gui-apps/wl-clip-persist/wl-clip-persist-0.4.3.ebuild
+++ b/gui-apps/wl-clip-persist/wl-clip-persist-0.4.3-r1.ebuild
@@ -117,7 +117,7 @@ HOMEPAGE="https://github.com/Linus789/wl-clip-persist"
SRC_URI="
${CARGO_CRATE_URIS}
- https://github.com/Linus789/wl-clip-persist/archive/refs/tags/v${PV}.tar.gz -> ${P}.tar.gz
+ https://github.com/Linus789/${PN}/archive/refs/tags/v${PV}.tar.gz -> ${P}.tar.gz
"
LICENSE="MIT"
diff --git a/gui-apps/wl-clip-persist/wl-clip-persist-9999.ebuild b/gui-apps/wl-clip-persist/wl-clip-persist-9999.ebuild
index 416764a237..e17ced9879 100644
--- a/gui-apps/wl-clip-persist/wl-clip-persist-9999.ebuild
+++ b/gui-apps/wl-clip-persist/wl-clip-persist-9999.ebuild
@@ -8,7 +8,7 @@ inherit cargo git-r3
DESCRIPTION="Keep Wayland clipboard even after programs close"
HOMEPAGE="https://github.com/Linus789/wl-clip-persist"
-EGIT_REPO_URI="https://github.com/Linus789/wl-clip-persist.git"
+EGIT_REPO_URI="https://github.com/Linus789/${PN}.git"
LICENSE="MIT"
# Dependent crate licenses
diff --git a/kde-misc/plasma5-wallpapers-dynamic/Manifest b/kde-misc/plasma5-wallpapers-dynamic/Manifest
deleted file mode 100644
index d629edfe64..0000000000
--- a/kde-misc/plasma5-wallpapers-dynamic/Manifest
+++ /dev/null
@@ -1 +0,0 @@
-DIST plasma5-wallpapers-dynamic-3.3.9.tar.gz 353147 BLAKE2B 509684832d27207d014c8317b2aa0d1dc7b6d9ce6098cfce0f99cc83002c9d981ff92961b4bc706a8ab55afdff6bfd9008d4f7ce4987fd9b1044a3e46f830485 SHA512 8b575b7aec8c314a882096a7fc5ece8963db0ef7fbda7a6032d9a54422cbbec05e61e89e7e3b6a929a88eced167c1d889936f2a190d5fb66474609a354dd225e
diff --git a/kde-misc/plasma5-wallpapers-dynamic/metadata.xml b/kde-misc/plasma5-wallpapers-dynamic/metadata.xml
deleted file mode 100644
index 48d5c3c3c8..0000000000
--- a/kde-misc/plasma5-wallpapers-dynamic/metadata.xml
+++ /dev/null
@@ -1,22 +0,0 @@
-
-
-
-
- plasma5-wallpapers-dynamic is wallpaper plugin for KDE Plasma 5, allowing you to import and use dynamic wallpapers, setting the wallpaper based on the time of day.
-
- Command line tools are provided to import heic wallpapers and package custom wallpapers.
-
-
- Reagan Bohan
- xbjfk.github@gmail.com
-
-
-
- Vlad Zahorodnii
- vladzzag@gmail.com
-
- https://github.com/zzag/plasma5-wallpapers-dynamic/wiki
- https://github.com/zzag/plasma5-wallpapers-dynamic/issues
- zzag/plasma5-wallpapers-dynamic
-
-
diff --git a/kde-misc/plasma5-wallpapers-dynamic/plasma5-wallpapers-dynamic-3.3.9.ebuild b/kde-misc/plasma5-wallpapers-dynamic/plasma5-wallpapers-dynamic-3.3.9.ebuild
deleted file mode 100644
index 7ed315fdef..0000000000
--- a/kde-misc/plasma5-wallpapers-dynamic/plasma5-wallpapers-dynamic-3.3.9.ebuild
+++ /dev/null
@@ -1,39 +0,0 @@
-# Copyright 1999-2022 Gentoo Authors
-# Distributed under the terms of the GNU General Public License v2
-
-EAPI=8
-
-KFMIN="5.66.0"
-QTMIN="5.12.0"
-inherit ecm
-
-DESCRIPTION="A KDE Plasma wallpaper plugin to set your wallpaper based on the time of day."
-HOMEPAGE="https://github.com/zzag/plasma5-wallpapers-dynamic"
-
-if [[ ${PV} == 9999 ]]; then
- EGIT_REPO_URI="https://github.com/zzag/plasma5-wallpapers-dynamic.git"
- inherit git-r3
-else
- SRC_URI="https://github.com/zzag/plasma5-wallpapers-dynamic/archive/${PV}.tar.gz -> ${P}.tar.gz"
- KEYWORDS="~amd64 ~arm64 ~ppc64 ~x86"
-fi
-
-LICENSE="CC0-1.0 BSD CC-BY-SA-4.0 GPL-3+ LGPL-3+"
-SLOT="0"
-
-DEPEND="
- >=dev-qt/qtconcurrent-${QTMIN}:5
- >=dev-qt/qtcore-${QTMIN}:5
- >=dev-qt/qtdbus-${QTMIN}:5
- >=dev-qt/qtgui-${QTMIN}:5
- >=dev-qt/qtpositioning-${QTMIN}:5
- >=dev-qt/qtdeclarative-${QTMIN}:5
- >=kde-frameworks/kconfig-${KFMIN}:5
- >=kde-frameworks/ki18n-${KFMIN}:5
- >=kde-frameworks/kpackage-${KFMIN}:5
- >=kde-plasma/libplasma-${KFMIN}:5
- >=media-libs/libheif-1.3.0
- >=kde-frameworks/kirigami-${KFMIN}:5
- media-libs/libexif
-"
-RDEPEND="${DEPEND}"
diff --git a/kde-misc/plasma5-wallpapers-dynamic/plasma5-wallpapers-dynamic-9999.ebuild b/kde-misc/plasma5-wallpapers-dynamic/plasma5-wallpapers-dynamic-9999.ebuild
deleted file mode 100644
index b70cdf76af..0000000000
--- a/kde-misc/plasma5-wallpapers-dynamic/plasma5-wallpapers-dynamic-9999.ebuild
+++ /dev/null
@@ -1,40 +0,0 @@
-# Copyright 1999-2022 Gentoo Authors
-# Distributed under the terms of the GNU General Public License v2
-
-EAPI=8
-
-KFMIN="5.66.0"
-QTMIN="5.12.0"
-
-inherit ecm
-
-DESCRIPTION="A KDE Plasma wallpaper plugin to set your wallpaper based on the time of day."
-HOMEPAGE="https://github.com/zzag/plasma5-wallpapers-dynamic"
-
-if [[ ${PV} == 9999 ]]; then
- inherit git-r3
- EGIT_REPO_URI="https://github.com/zzag/plasma5-wallpapers-dynamic.git"
-else
- SRC_URI="https://github.com/zzag/plasma5-wallpapers-dynamic/archive/${PV}.tar.gz -> ${P}.tar.gz"
- KEYWORDS="~amd64 ~arm64 ~ppc64 ~x86"
-fi
-
-LICENSE="GPL-3 LGPL-3 MIT"
-SLOT="0"
-
-DEPEND="
- >=dev-qt/qtconcurrent-${QTMIN}:5
- >=dev-qt/qtcore-${QTMIN}:5
- >=dev-qt/qtdbus-${QTMIN}:5
- >=dev-qt/qtgui-${QTMIN}:5
- >=dev-qt/qtpositioning-${QTMIN}:5
- >=dev-qt/qtdeclarative-${QTMIN}:5
- >=kde-frameworks/kconfig-${KFMIN}:5
- >=kde-frameworks/ki18n-${KFMIN}:5
- >=kde-frameworks/kpackage-${KFMIN}:5
- >=kde-plasma/libplasma-${KFMIN}:5
- >=media-libs/libheif-1.3.0
- >=kde-frameworks/kirigami-${KFMIN}:5
- media-libs/libexif
-"
-RDEPEND="${DEPEND}"
diff --git a/net-p2p/ipfs-desktop-bin/ipfs-desktop-bin-0.39.0.ebuild b/net-p2p/ipfs-desktop-bin/ipfs-desktop-bin-0.39.0.ebuild
index e704736415..08a18198e8 100644
--- a/net-p2p/ipfs-desktop-bin/ipfs-desktop-bin-0.39.0.ebuild
+++ b/net-p2p/ipfs-desktop-bin/ipfs-desktop-bin-0.39.0.ebuild
@@ -47,6 +47,7 @@ QA_PREBUILT="*"
src_prepare(){
default
unpacker "${S}/usr/share/doc/ipfs-desktop/changelog.gz"
+ sed -i 's|/opt/IPFS Desktop/ipfs-desktop|/usr/bin/ipfs-desktop|g' "${S}/usr/share/applications/ipfs-desktop.desktop" | die
}
src_install(){
# clean up build-in kubo
diff --git a/net-voip/gnome-calls/gnome-calls-47.0-r1.ebuild b/net-voip/gnome-calls/gnome-calls-47.0-r1.ebuild
new file mode 100644
index 0000000000..e7fc9b7594
--- /dev/null
+++ b/net-voip/gnome-calls/gnome-calls-47.0-r1.ebuild
@@ -0,0 +1,133 @@
+# Copyright 1999-2024 Gentoo Authors
+# Distributed under the terms of the GNU General Public License v2
+
+EAPI=8
+
+inherit vala meson gnome2-utils optfeature systemd virtualx xdg
+
+MY_PN="${PN#gnome-}"
+MY_P="${MY_PN}-v${PV}"
+LCU_V="0.2.1"
+DESCRIPTION="Phone dialer and call handler"
+HOMEPAGE="https://gitlab.gnome.org/GNOME/calls"
+GITLAB="https://gitlab.gnome.org"
+SRC_URI="
+ ${GITLAB}/GNOME/${MY_PN}/-/archive/v${PV}/${MY_P}.tar.bz2
+ ${GITLAB}/World/Phosh/libcall-ui/-/archive/v${LCU_V}/libcall-ui-v${LCU_V}.tar.bz2
+"
+S="${WORKDIR}/${MY_P}"
+
+LICENSE="CC0-1.0 CC-BY-SA-4.0 GPL-3+ LGPL-2+ LGPL-2.1+"
+SLOT="0"
+KEYWORDS="~amd64 ~arm64"
+IUSE="gtk-doc man"
+
+COMMON_DEPEND="
+ app-crypt/libsecret
+ dev-libs/feedbackd
+ dev-libs/folks:=
+ >=dev-libs/glib-2.74:2
+ dev-libs/gom
+ dev-libs/libgee:0.8=
+ dev-libs/libpeas:2
+ gnome-extra/evolution-data-server:=[vala]
+ >=gui-libs/gtk-4.12:4
+ >=gui-libs/libadwaita-1.5:1
+ media-libs/gstreamer:1.0
+ media-sound/callaudiod
+ net-libs/sofia-sip[glib]
+ net-misc/modemmanager:=
+"
+RDEPEND="${COMMON_DEPEND}
+ gnome-base/librsvg:2
+"
+DEPEND="${COMMON_DEPEND}
+ test? (
+ media-libs/gst-plugins-base:1.0
+ media-libs/gst-plugins-good:1.0
+ media-plugins/gst-plugins-srtp:1.0
+ )
+"
+BDEPEND="
+ $(vala_depend)
+ dev-libs/glib:2
+ dev-libs/libxml2
+ dev-util/gdbus-codegen
+ dev-util/glib-utils
+ sys-devel/gettext
+ gtk-doc? ( dev-util/gtk-doc )
+ man? ( dev-python/docutils )
+"
+
+src_unpack() {
+ default
+
+ cd "${S}" || die
+ rmdir subprojects/libcall-ui || die
+ mv "${WORKDIR}"/libcall-ui-v${LCU_V} subprojects/libcall-ui || die
+}
+
+src_prepare() {
+ default
+ vala_setup
+}
+
+src_configure() {
+ local emesonargs=(
+ $(meson_use gtk-doc gtk_doc)
+ $(meson_use man manpages)
+ $(meson_use test tests)
+ -Dsystemd_user_unit_dir="$(systemd_get_userunitdir)"
+ )
+ meson_src_configure
+}
+
+src_test() {
+ local tests=(
+ calls:call
+ calls:contacts
+ calls:emergency-call-types
+ calls:dbus
+ calls:manager
+ calls:media
+ calls:origin
+ calls:plugins
+ calls:provider
+ calls:sdp-crypto
+ calls:settings
+ calls:srtp
+ calls:ui-call
+ calls:util
+
+ # TODO:
+ # All tests pass, but the runner doesn't exit and gets timed out
+ #calls:application
+
+ # TODO:
+ # not ok /Calls/Ringer/accept_call
+ # GLib-GObject-FATAL-CRITICAL: cannot register existing type 'LfbEvent'
+ #calls:ringer
+
+ # TODO:
+ # hangs at /Calls/SIP/calls_direct_call
+ #calls:sip
+ )
+
+ virtx meson_src_test "${tests[@]}"
+}
+
+pkg_postinst() {
+ xdg_pkg_postinst
+ gnome2_schemas_update
+
+ optfeature "SIP support" "\
+ media-libs/gst-plugins-base:1.0 \
+ media-libs/gst-plugins-good:1.0 \
+ media-plugins/gst-plugins-srtp:1.0 \
+ "
+}
+
+pkg_postrm() {
+ xdg_pkg_postrm
+ gnome2_schemas_update
+}
diff --git a/profiles/package.mask b/profiles/package.mask
index dc43156fda..867e2bb319 100644
--- a/profiles/package.mask
+++ b/profiles/package.mask
@@ -18,6 +18,12 @@
# New entries go on top.
+# David Roman (2024-11-13)
+# dev-schemes/guile-3.0.9 has been removed from ::guru
+# No maintainer.
+# Removal on 2025-01-13
+gui-apps/riverguile
+
# Eli Schwartz (2024-11-12)
# Duplicate of dev-python/cchardet. Unused by any packages.
# Removal on 2024-12-12
@@ -86,11 +92,6 @@ games-engines/easyrpg-player
# Removal on 2024-11-13.
www-apps/librarian
-# David Roman (2024-10-08)
-# Depends on libplasma:5::gentoo, which has been dropped
-# Removal on 2024-11-08
-kde-misc/plasma5-wallpapers-dynamic
-
# Takuya Wakazono (2024-10-02)
# Depends on