commit: 20ff020beb301d3920f20e3c48ba0c66df2ccba1 Author: Mathieu Roberge <robergem2008 <AT> gmail <DOT> com> AuthorDate: Wed Dec 24 20:52:06 2025 +0000 Commit: Mathieu Roberge <contact.techoraye <AT> gmail <DOT> com> CommitDate: Wed Dec 24 21:04:39 2025 +0000 URL: https://gitweb.gentoo.org/repo/proj/guru.git/commit/?id=20ff020b
app-misc/gentoo-update: add gentoo-update-0.1 from guru Update notifier and applier for Gentoo Linux with system tray support. Includes pre/post update task assistance with desktop notifications. Supports bash, zsh, and fish shell completions. Signed-off-by: Techoraye <techoraye <AT> example.com> Signed-off-by: Mathieu Roberge <robergem2008 <AT> gmail.com> app-misc/gentoo-update/Manifest | 1 + app-misc/gentoo-update/gentoo-update-0.1.ebuild | 94 +++++++++++++++++++++++++ app-misc/gentoo-update/metadata.xml | 42 +++++++++++ 3 files changed, 137 insertions(+) diff --git a/app-misc/gentoo-update/Manifest b/app-misc/gentoo-update/Manifest new file mode 100644 index 0000000000..42aa6bb331 --- /dev/null +++ b/app-misc/gentoo-update/Manifest @@ -0,0 +1 @@ +DIST gentoo-update-0.1.tar.gz 26624 SHA256 d665fb460f8d9c3209a5224dd88d0dacca44f51c97f89395dbab2a886a6e3174 diff --git a/app-misc/gentoo-update/gentoo-update-0.1.ebuild b/app-misc/gentoo-update/gentoo-update-0.1.ebuild new file mode 100644 index 0000000000..e94c07bb8b --- /dev/null +++ b/app-misc/gentoo-update/gentoo-update-0.1.ebuild @@ -0,0 +1,94 @@ +# Copyright 1999-2025 Gentoo Authors +# Distributed under the terms of the GNU General Public License v3 + +EAPI=8 + +inherit cmake + +DESCRIPTION="An update notifier & applier for Gentoo Linux that assists with pre/post update tasks" +HOMEPAGE="https://github.com/Techoraye/gentoo-update" +SRC_URI="https://github.com/Techoraye/gentoo-update/archive/v${PV}.tar.gz" + +S="${WORKDIR}/${PN}-${PV}" + +LICENSE="GPL-3" +SLOT="0" +KEYWORDS="~amd64 ~arm64 ~x86" +IUSE="notification python" + +DEPEND=" + >=dev-cpp/cpp-base:0 +" + +RDEPEND="${DEPEND} + notification? ( x11-libs/libnotify ) + python? ( + dev-python/pyqt6[gui] + ) + app-portage/gentoolkit + sys-apps/portage[python] +" + +src_configure() { + local mycmakeargs=( + -DCMAKE_INSTALL_LOCALSTATEDIR="${EPREFIX}/var" + ) + cmake_src_configure +} + +src_install() { + cmake_src_install + + # Install documentation + einstalldocs + + # Install configuration example + insinto /etc/gentoo-update + newins res/config/gentoo-update.conf.example gentoo-update.conf + + # Install shell completions + insinto /usr/share/bash-completion/completions + doins res/completions/gentoo-update.bash + + insinto /usr/share/zsh/site-functions + newins res/completions/gentoo-update.zsh _gentoo-update + + insinto /usr/share/fish/vendor_completions.d + doins res/completions/gentoo-update.fish + + # Install desktop entry files + insinto /usr/share/applications + doins res/desktop/gentoo-update.desktop + doins res/desktop/gentoo-update-tray.desktop + + # Install systemd units + insinto /etc/systemd/system + doins res/systemd/gentoo-update.service + doins res/systemd/gentoo-update.timer + doins res/systemd/gentoo-update-tray.service + + # Install OpenRC service + insinto /etc/init.d + newins res/openrc/gentoo-update gentoo-update +} + +pkg_postinst() { + elog "Gentoo-Update has been installed successfully!" + elog "" + elog "Usage: gentoo-update [OPTIONS]" + elog "" + elog "For help: gentoo-update --help" + elog "" + elog "Configuration file: ~/.config/gentoo-update/gentoo-update.conf" + elog "Generate default config: gentoo-update --gen-config" + elog "" + + if use python; then + elog "Python support enabled. You can use the system tray applet:" + elog " gentoo-update --tray" + fi + + if use notification; then + elog "Desktop notifications enabled." + fi +} diff --git a/app-misc/gentoo-update/metadata.xml b/app-misc/gentoo-update/metadata.xml new file mode 100644 index 0000000000..dde3f8a351 --- /dev/null +++ b/app-misc/gentoo-update/metadata.xml @@ -0,0 +1,42 @@ +<?xml version="1.0" encoding="UTF-8"?> +<!DOCTYPE pkgmetadata SYSTEM "http://www.gentoo.org/dtd/metadata.dtd"> +<pkgmetadata> + <maintainer type="person"> + <email>[email protected]</email> + <name>Mathieu Roberge (Techoraye)</name> + </maintainer> + <maintainer type="project"> + <email>[email protected]</email> + <name>Proxy Maintainers</name> + </maintainer> + + <upstream> + <remote-id type="github">Techoraye/gentoo-update</remote-id> + </upstream> + + <use> + <flag name="notification">Enable desktop notifications support via libnotify</flag> + <flag name="python">Enable system tray applet support with PyQt6</flag> + </use> + + <longdescription> + Gentoo-Update is a fast, efficient update notifier and applier for Gentoo Linux + written in C++. It assists users with important pre and post-update tasks. + + Features: + - Fast and efficient C++ implementation + - Automatic repository synchronization (optional) + - Display Gentoo news items + - Service status checking and management + - Highly configurable via configuration file + - Color-coded output with optional color disable + - Desktop notifications support + - Preserved rebuild detection + - Kernel update checking + - Configuration file change detection + - Package retention settings + - Manual pages and shell completions + - Support for both systemd and OpenRC + - System tray applet (optional with Python support) + </longdescription> +</pkgmetadata>
