diff --git a/gui-apps/darkman/Manifest b/gui-apps/darkman/Manifest
index e3787e9d1c..73cfa7c60a 100644
--- a/gui-apps/darkman/Manifest
+++ b/gui-apps/darkman/Manifest
@@ -1,2 +1,2 @@
-DIST darkman-2.0.1-deps.tar.xz 2361116 BLAKE2B 3bcf8b88ebf2e0f09816d31dad7bc2c6f44cc275931b99263e3f8b788d4a714a6c0760458054d8d1ea8d4c39fd28877e84f846dcf40099695f614aba5468728a SHA512 3adcb0655369151c942727088d4a3983b392ae3d2e7738ba7bfa81605af1f4c2a8a9d54797291b7864a6ec5572bc90ba935f5fd68d8557e2a09c3bd2864124de
-DIST darkman-v2.0.1.tar.bz2 25801 BLAKE2B 47170bbd92451d8ea8f6918755fa57d985ea43bc5a501b57e0e12ebda3274d06764d1ee3334df231f0774f36486fd5813e2b3e1515c16c18d9fb43c094fedb5f SHA512 8036e3470d22e1f689d8305cb3faf81a1fc2f0692afd8fb9657c2c22af417f25fd928189fcda42df7c053cb9129c90cdf11df64e6f597498af95f330de76f282
+DIST darkman-v2.2.0-vendor.tar.xz 202608 BLAKE2B 905fb545285084dc9836e1c89283cf53ebb403deedd69de604d2b75e459a77b99a95b84e17e3a378b94c5992c4dc3394ffc0e0676368110194f3373bbad06784 SHA512 9d2dfe5c70ace7fd6a1a8ae0c3e72bfd053ccb7cd12bfc7ba7c7005a263d01e2de72b4eef168e0196c4b31b94a4011f274884c3ebe36f3c95f8aab6f8e022de3
+DIST darkman-v2.2.0.tar.bz2 28192 BLAKE2B 075613f357e2b1fbf413f411714f6333eae5e9cbd9a2be1b594a075151484fb1b3ae58d81488adcd0b754b8dc941848447c2bed09da699ed709e979b2fddf5ee SHA512 94e2f75bfd19c36bdc5294d29d04feb1f2680bac714b1b76772e4d08f0fdbcded26d204c98ceacb823289e3413246392213575781a8302ab2ac38db31a4c050c
diff --git a/gui-apps/darkman/darkman-2.0.1-r1.ebuild b/gui-apps/darkman/darkman-2.0.1-r1.ebuild
deleted file mode 100644
index a5e896ee49..0000000000
--- a/gui-apps/darkman/darkman-2.0.1-r1.ebuild
+++ /dev/null
@@ -1,50 +0,0 @@
-# Copyright 2019-2024 Gentoo Authors
-# Distributed under the terms of the GNU General Public License v2
-
-EAPI=8
-
-inherit systemd go-module
-
-DESCRIPTION="Framework for dark and light mode transitions"
-HOMEPAGE="https://gitlab.com/WhyNotHugo/darkman"
-SRC_URI="https://gitlab.com/WhyNotHugo/${PN}/-/archive/v${PV}/${PN}-v${PV}.tar.bz2
- https://codeberg.org/amano-kenji-gentoo-overlay/${PN}/raw/branch/master/${P}-deps.tar.xz"
-
-S="${WORKDIR}/${PN}-v${PV}"
-
-LICENSE="ISC"
-SLOT="0"
-KEYWORDS="~amd64"
-IUSE="+man +examples"
-
-RDEPEND="app-misc/geoclue"
-BDEPEND="man? ( app-text/scdoc )"
-
-DOCS=( CHANGELOG.md README.md )
-
-src_compile() {
- ego build -v -x -o ${PN} -ldflags="-X main.Version=${PV}" ./cmd/${PN}
-
- if use man; then
- scdoc < ./${PN}.1.scd > ./${PN}.1 || die
- fi
-}
-
-src_install() {
- dobin ${PN}
-
- systemd_douserunit ${PN}.service
- doman ${PN}.1
-
- use examples && DOCS+=( examples/. )
- einstalldocs
-
- insinto /usr/share/dbus-1/services
- doins contrib/dbus/*
-
- insinto /usr/share/xdg-desktop-portal/portals/
- doins contrib/portal/darkman.portal
-
- dodir /etc/env.d/
- echo "XDG_DATA_DIRS=\"~/.local/share/\"" >> "${ED}"/etc/env.d/99darkman || die
-}
diff --git a/gui-apps/darkman/darkman-2.2.0.ebuild b/gui-apps/darkman/darkman-2.2.0.ebuild
new file mode 100644
index 0000000000..e176c0675e
--- /dev/null
+++ b/gui-apps/darkman/darkman-2.2.0.ebuild
@@ -0,0 +1,68 @@
+# Copyright 2019-2025 Gentoo Authors
+# Distributed under the terms of the GNU General Public License v2
+
+EAPI=8
+
+inherit desktop go-module optfeature shell-completion systemd
+
+DESCRIPTION="Framework for dark and light mode transitions"
+HOMEPAGE="https://gitlab.com/WhyNotHugo/darkman"
+SRC_URI="https://gitlab.com/WhyNotHugo/${PN}/-/archive/v${PV}/${PN}-v${PV}.tar.bz2
+ https://github.com/pkulev/riru/releases/download/1.0.0/${PN}-v${PV}-vendor.tar.xz"
+
+S="${WORKDIR}/${PN}-v${PV}"
+
+LICENSE="ISC"
+SLOT="0"
+KEYWORDS="~amd64"
+IUSE="examples"
+
+BDEPEND="app-text/scdoc"
+
+DOCS=( CHANGELOG.md README.md )
+
+src_compile() {
+ ego build -v -x -o ${PN} -ldflags="-X main.Version=${PV}" ./cmd/${PN}
+ scdoc < ./${PN}.1.scd > ./${PN}.1 || die
+ ./darkman completion bash > darkman.bash || die
+ ./darkman completion fish > darkman.fish || die
+ ./darkman completion zsh > darkman.zsh || die
+}
+
+src_test() {
+ ego test
+}
+
+src_install() {
+ dobin ${PN}
+ domenu darkman.desktop
+
+ newbashcomp darkman.bash darkman
+ dofishcomp darkman.fish
+ newzshcomp darkman.zsh _darkman
+
+ newinitd contrib/${PN}.openrc ${PN}
+ systemd_douserunit contrib/${PN}.service
+ doman ${PN}.1
+
+ use examples && DOCS+=( examples/. )
+ einstalldocs
+
+ insinto /usr/share/dbus-1/services
+ doins contrib/dbus/*
+
+ insinto /usr/share/xdg-desktop-portal/portals/
+ doins contrib/portal/darkman.portal
+}
+
+pkg_postinst() {
+ optfeature "determining the system's location" app-misc/geoclue
+
+ ewarn "The scripts' layout was changed in darkman 2.2.0:"
+ ewarn "- All scripts will get a mode (light or dark) as a first argument."
+ ewarn "- Scripts should be placed in \${XDG_DATA_HOME}/darkman/ or in a darkman directory"
+ ewarn " in any of the paths in \${XDG_DATA_DIRS}. Old layout is still supported,"
+ ewarn " but consider migrating now."
+ ewarn "You can look at the examples to merge your scripts using the mode value (make sure that"
+ ewarn "examples USE flag is enabled)."
+}
diff --git a/gui-apps/darkman/metadata.xml b/gui-apps/darkman/metadata.xml
index 348eb54083..2aba7e5ea1 100644
--- a/gui-apps/darkman/metadata.xml
+++ b/gui-apps/darkman/metadata.xml
@@ -5,6 +5,10 @@
mmk@levelnine.at
Michael Mair-Keimberger
+
+ kulyov.pavel@gmail.com
+ Pavel Kulyöv
+
WhyNotHugo/darkman