diff --git a/games-util/xone/Manifest b/games-util/xone/Manifest index f953cab..62dfe65 100644 --- a/games-util/xone/Manifest +++ b/games-util/xone/Manifest @@ -1,2 +1,3 @@ DIST xone-0.3.tar.gz 50561 BLAKE2B d5ca9849923e1b0532417a8983c429c2d8314c1122a4d89d6ab613b2d14b6cf9ce6d22879b83f41df1c34d4f87f3a4c74e610b54060d52a8e57db4c9b65b0edc SHA512 14177661de9b7530298773c230d178d444f51fe15c8a5329855cabdf88e11f205ef8dd4d7e49a201950c4db27d84ae32919fc8c35820aefe16e5c6f3d84533d3 +DIST xone-0.3_p20230517.tar.gz 50602 BLAKE2B b1427d7eb31934765b250e82f1e3859bab1ef3ea4ad2d79d94b9531130bb49a95a31ee95a5353b369df1d0ff363d3128c0740db64cc4dd3650e675fb116bdc3f SHA512 78cd605a5d56c8230e8800dd43f9f423da52d896625242669480211a4105bbce3364669b742f678b6b48ecd3bc42ad2982d46fe0c6e99ec8e05b69a47c5c88ab DIST xone-driver-201707-1cd6a87c-623f-4407-a52d-c31be49e925c_e19f60808bdcbfbd3c3df6be3e71ffc52e43261e.cab 199891 BLAKE2B f531a9f4b8220ee4501431b308ee6e29a8dea26467020df25b7fa22228543cc560e1170d13b1cb3490c64c48bf610e3fb7ddfb743e4a2028f5980e02d0c36790 SHA512 0906debd6c1f4706348ec1b1cbf233ea2c45bbc0b8882593740964036808722f5bb701f43da803320609e02072cd16dada572d337fd4c05cc1cf6dde6fd38908 diff --git a/games-util/xone/xone-0.3_p20230517.ebuild b/games-util/xone/xone-0.3_p20230517.ebuild new file mode 100644 index 0000000..06324ae --- /dev/null +++ b/games-util/xone/xone-0.3_p20230517.ebuild @@ -0,0 +1,68 @@ +# Copyright 1999-2023 Gentoo Authors +# Distributed under the terms of the GNU General Public License v2 + +EAPI=8 + +inherit linux-mod-r1 + +COMMIT="bbf0dcc484c3f5611f4e375da43e0e0ef08f3d18" +XONE_DRIVER_VERSION="201707-1cd6a87c-623f-4407-a52d-c31be49e925c_e19f60808bdcbfbd3c3df6be3e71ffc52e43261e" + +DESCRIPTION="Linux kernel driver for Xbox One and Xbox Series X|S accessories" +HOMEPAGE="https://github.com/medusalix/xone" +SRC_URI=" + mirror+https://github.com/medusalix/xone/archive/${COMMIT}.tar.gz -> ${P}.tar.gz + http://download.windowsupdate.com/c/msdownload/update/driver/drvs/${XONE_DRIVER_VERSION:0:4}/${XONE_DRIVER_VERSION:4:2}/${XONE_DRIVER_VERSION:7}.cab + -> ${PN}-driver-${XONE_DRIVER_VERSION}.cab +" +S="${WORKDIR}/${PN}-${COMMIT}" + +LICENSE="GPL-2 MS-TOU" +SLOT="0" +KEYWORDS="~amd64" + +RESTRICT="bindist mirror test" + +BDEPEND="app-arch/cabextract" + +CONFIG_CHECK="SND CFG80211 INPUT_FF_MEMLESS USB POWER_SUPPLY LEDS_CLASS HID" +MODULES_KERNEL_MIN=4.15 + +src_unpack() { + unpack ${P}.tar.gz + + cabextract -F FW_ACC_00U.bin -d "${S}" "${DISTDIR}/${PN}-driver-${XONE_DRIVER_VERSION}.cab" > /dev/null \ + || die "Failed to unpack driver" +} + +src_prepare() { + cp "${FILESDIR}/Makefile" "${S}" || die + eapply_user +} + +src_compile() { + local modlist=( + xone-wired=kernel/drivers/input/joystick + xone-dongle=kernel/drivers/input/joystick + xone-gip=kernel/drivers/input/joystick + xone-gip-gamepad=kernel/drivers/input/joystick + xone-gip-headset=kernel/drivers/input/joystick + xone-gip-chatpad=kernel/drivers/input/joystick + xone-gip-guitar=kernel/drivers/input/joystick + + ) + + linux-mod-r1_src_compile +} + +src_install() { + linux-mod-r1_src_install + + einfo "Installing module blacklist" + insinto /etc/modprobe.d/ + newins "${S}"/install/modprobe.conf xone-blacklist.conf + + einfo "Installing Microsoft binary firmware" + insinto /lib/firmware/ + newins "${S}"/FW_ACC_00U.bin xow_dongle.bin +}