Install this version:
emerge -a =games-util/open-steam-controller-9999
If this version is masked, you can unmask it using the autounmask tool or standard emerge options:
autounmask =games-util/open-steam-controller-9999
Or alternatively:
emerge --autounmask-write -a =games-util/open-steam-controller-9999
| Version | EAPI | Keywords | Slot |
|---|---|---|---|
| 9999 | 8 | 0 |
# Copyright 2026 Gentoo Authors
# Distributed under the terms of the GNU General Public License v2
EAPI=8
RUST_MIN_VER="1.88.0"
inherit cargo desktop git-r3 linux-info udev xdg
DESCRIPTION="Tray application for the Steam Controller (2026) without Steam"
HOMEPAGE="https://github.com/LennardKittner/OpenSteamController"
EGIT_REPO_URI="https://github.com/LennardKittner/OpenSteamController.git"
LICENSE="MIT"
# Dependent crate licenses
LICENSE+="
0BSD Apache-2.0 Apache-2.0-with-LLVM-exceptions BSD BSD-2
CC0-1.0 ISC LGPL-2.1+ MPL-2.0 Unicode-3.0 Unlicense WTFPL-2 ZLIB
"
SLOT="0"
KEYWORDS=""
RESTRICT="test"
DEPEND="
dev-libs/hidapi
dev-libs/libusb:1
sys-apps/dbus
virtual/libudev
"
RDEPEND="${DEPEND}"
BDEPEND="
virtual/pkgconfig
virtual/rust
"
QA_FLAGS_IGNORED="usr/bin/open-steam-controller"
pkg_setup() {
linux-info_pkg_setup
rust_pkg_setup
}
pkg_pretend() {
local CONFIG_CHECK="~INPUT_UINPUT"
[[ ${MERGE_TYPE} != buildonly ]] && check_extra_config
}
src_unpack() {
git-r3_src_unpack
cargo_live_src_unpack
}
# FIXME: wait for https://github.com/LennardKittner/OpenSteamController/pull/2 being merged.
src_prepare() {
default
sed -i 's/Categories=Game, Utility/Categories=Game;Utility/' \
open-steam-controller.desktop || die
}
src_install() {
cargo_src_install
udev_dorules "${S}/99-open-steam-controller.rules"
domenu "${S}/open-steam-controller.desktop"
}
pkg_postinst() {
udev_reload
xdg_desktop_database_update
}
pkg_postrm() {
udev_reload
xdg_desktop_database_update
}
dev-libs/hidapi dev-libs/libusb:1 sys-apps/dbus virtual/libudev
dev-libs/hidapi dev-libs/libusb:1 sys-apps/dbus virtual/libudev
virtual/pkgconfig virtual/rust