From mboxrd@z Thu Jan 1 00:00:00 1970 Return-Path: Received: from smtp.gentoo.org (woodpecker.gentoo.org [140.211.166.183]) (using TLSv1.3 with cipher TLS_AES_256_GCM_SHA384 (256/256 bits) key-exchange X25519 server-signature RSA-PSS (4096 bits)) (No client certificate requested) by finch.gentoo.org (Postfix) with ESMTPS id 8BBA715820A for ; Mon, 07 Jul 2025 08:57:38 +0000 (UTC) Received: from lists.gentoo.org (bobolink.gentoo.org [140.211.166.189]) (using TLSv1.3 with cipher TLS_AES_256_GCM_SHA384 (256/256 bits) key-exchange x25519) (No client certificate requested) (Authenticated sender: relay-lists.gentoo.org@gentoo.org) by smtp.gentoo.org (Postfix) with ESMTPSA id 785A0341FC7 for ; Mon, 07 Jul 2025 08:57:38 +0000 (UTC) Received: from bobolink.gentoo.org (localhost [127.0.0.1]) by bobolink.gentoo.org (Postfix) with ESMTP id 6E3C31102F2; Mon, 07 Jul 2025 08:57:10 +0000 (UTC) Received: from smtp.gentoo.org (woodpecker.gentoo.org [140.211.166.183]) (using TLSv1.3 with cipher TLS_AES_256_GCM_SHA384 (256/256 bits) key-exchange x25519) (No client certificate requested) by bobolink.gentoo.org (Postfix) with ESMTPS id 65AE21102F2 for ; Mon, 07 Jul 2025 08:57:10 +0000 (UTC) Received: from oystercatcher.gentoo.org (oystercatcher.gentoo.org [148.251.78.52]) (using TLSv1.3 with cipher TLS_AES_256_GCM_SHA384 (256/256 bits) key-exchange x25519) (No client certificate requested) by smtp.gentoo.org (Postfix) with ESMTPS id 1FA67341F68 for ; Mon, 07 Jul 2025 08:57:10 +0000 (UTC) Received: from localhost.localdomain (localhost [IPv6:::1]) by oystercatcher.gentoo.org (Postfix) with ESMTP id 57F5D2EF8 for ; Mon, 07 Jul 2025 08:57:06 +0000 (UTC) From: "David Roman" To: gentoo-commits@lists.gentoo.org Content-Transfer-Encoding: 8bit Content-type: text/plain; charset=UTF-8 Reply-To: gentoo-dev@lists.gentoo.org, "David Roman" Message-ID: <1751874934.e89dd85459d3ad778e2702a3c327ee1d4a3fe57a.davidroman@gentoo> Subject: [gentoo-commits] repo/proj/guru:master commit in: app-misc/opentrack/ X-VCS-Repository: repo/proj/guru X-VCS-Files: app-misc/opentrack/metadata.xml app-misc/opentrack/opentrack-9999.ebuild X-VCS-Directories: app-misc/opentrack/ X-VCS-Committer: davidroman X-VCS-Committer-Name: David Roman X-VCS-Revision: e89dd85459d3ad778e2702a3c327ee1d4a3fe57a X-VCS-Branch: master Date: Mon, 07 Jul 2025 08:57:06 +0000 (UTC) Precedence: bulk List-Post: List-Help: List-Unsubscribe: List-Subscribe: List-Id: Gentoo Linux mail X-BeenThere: gentoo-commits@lists.gentoo.org X-Auto-Response-Suppress: DR, RN, NRN, OOF, AutoReply X-Archives-Salt: f788f73a-b64e-4676-abf4-ae52667f08ac X-Archives-Hash: 8fc939c5ff5dc675b5a91309218af3ee commit: e89dd85459d3ad778e2702a3c327ee1d4a3fe57a Author: Kai Krakow kaishome de> AuthorDate: Sat Jul 27 11:03:13 2024 +0000 Commit: David Roman gmail com> CommitDate: Mon Jul 7 07:55:34 2025 +0000 URL: https://gitweb.gentoo.org/repo/proj/guru.git/commit/?id=e89dd854 app-misc/opentrack: new package, add 9999 Closes: https://bugs.gentoo.org/912997 Signed-off-by: Kai Krakow kaishome.de> Part-of: https://github.com/gentoo/gentoo/pull/37646 Signed-off-by: Viorel Munteanu gentoo.org> app-misc/opentrack/metadata.xml | 29 +++++++++++ app-misc/opentrack/opentrack-9999.ebuild | 88 ++++++++++++++++++++++++++++++++ 2 files changed, 117 insertions(+) diff --git a/app-misc/opentrack/metadata.xml b/app-misc/opentrack/metadata.xml new file mode 100644 index 0000000000..8ad4ac5f8e --- /dev/null +++ b/app-misc/opentrack/metadata.xml @@ -0,0 +1,29 @@ + + + + + hurikhan77+bgo@gmail.com + Kai Krakow + + + proxy-maint@gentoo.org + Proxy Maintainers + + + + Build NeuralNet face tracker using a webcam as input device + (requires opencv openmp) + + + Enable webcam video driver via computer vision (required + for NeuralNet to work) + + + Support injecting a FreeTrack driver into a running wine prefix + + + + https://github.com/opentrack/opentrack/issues + opentrack/opentrack + + diff --git a/app-misc/opentrack/opentrack-9999.ebuild b/app-misc/opentrack/opentrack-9999.ebuild new file mode 100644 index 0000000000..1335dc6ed8 --- /dev/null +++ b/app-misc/opentrack/opentrack-9999.ebuild @@ -0,0 +1,88 @@ +# Copyright 2025 Gentoo Authors +# Distributed under the terms of the GNU General Public License v2 + +EAPI=8 + +inherit cmake desktop flag-o-matic toolchain-funcs + +DESCRIPTION="Head tracking software for MS Windows, Linux, and Apple OSX" +HOMEPAGE="https://github.com/opentrack/opentrack" + +if [[ ${PV} == 9999 ]] ; then + inherit git-r3 + EGIT_REPO_URI="https://github.com/opentrack/opentrack.git" +else + SRC_URI="https://github.com/opentrack/opentrack/archive/refs/tags/${P}.tar.gz" + KEYWORDS="~amd64" + S="${WORKDIR}/opentrack-${P}" +fi + +LICENSE="ISC" +SLOT="0" + +IUSE="neuralnet opencv openmp wine" + +REQUIRED_USE="neuralnet? ( openmp opencv )" + +DEPEND=" + dev-libs/libevdev + dev-libs/libusb:1 + dev-qt/qtbase:6[gui,network,widgets] + sys-process/procps:= + x11-libs/libX11 + neuralnet? ( sci-libs/onnxruntime-bin ) + opencv? ( media-libs/opencv:= ) + wine? ( virtual/wine ) +" +RDEPEND="${DEPEND}" + +pkg_pretend() { + [[ ${MERGE_TYPE} != binary ]] && use openmp && tc-check-openmp +} + +pkg_setup() { + [[ ${MERGE_TYPE} != binary ]] && use openmp && tc-check-openmp +} + +src_prepare() { + # work around hard-coded docs path + sed -e 's#share/doc/opentrack#share/doc/'${PF}'#g' \ + -i cmake/*.cmake || die + + cmake_src_prepare +} + +src_configure() { + use openmp && append-cxxflags -fopenmp && append-ldflags -fopenmp + + local mycmakeargs=( + $(cmake_use_find_package neuralnet ONNXRuntime) + $(cmake_use_find_package opencv OpenCV) + $(cmake_use_find_package openmp OpenMP) + ) + + # opentrack overwrites emerge cflags unconditionally: we can prevent + # that by pretending they've already been set + mycmakeargs+=( + -D__otr_compile_flags_set=TRUE + ) + + # HACK: "/opt/opentrack" allows its wine components to be visible in + # Valve's pressure-vessel which replaces /usr with the container runtime + use wine && mycmakeargs+=( + -DCMAKE_INSTALL_PREFIX=/opt/opentrack + -DOPENTRACK_WINE_ARCH="-m64" + -DSDK_WINE=$(usex wine ON OFF) + ) + + cmake_src_configure +} + +src_install() { + cmake_src_install + + use wine && dosym -r /opt/opentrack/bin/opentrack /usr/bin/opentrack + + newicon gui/images/opentrack.png opentrack.png + make_desktop_entry /usr/bin/opentrack OpenTrack /usr/share/pixmaps/opentrack.png Utility +}