update system

This commit is contained in:
2026-02-16 14:57:54 +01:00
parent 1a1211a8fa
commit 0503faaf3b
10 changed files with 152 additions and 149 deletions

View File

@@ -1,60 +0,0 @@
{
lib,
stdenv,
kernel,
fetchFromGitHub,
linuxConsoleTools,
bash,
}:
stdenv.mkDerivation rec {
pname = "hid-fanatecff";
version = "0.2.1";
src = fetchFromGitHub {
owner = "gotzl";
repo = "hid-fanatecff";
rev = version;
hash = "sha256-M2jm8pyxHRiswV4iJEawo57GkJ2XOclIo3NxEFgK+q0=";
};
nativeBuildInputs = kernel.moduleBuildDependencies;
makeFlags = kernel.makeFlags ++ [
"KVERSION=${kernel.modDirVersion}"
"KERNEL_SRC=${kernel.dev}/lib/modules/${kernel.modDirVersion}/build"
"KBUILD_OUTPUT=${kernel.dev}/lib/modules/${kernel.modDirVersion}/build"
];
patchPhase = ''
runHook prePatch
substituteInPlace fanatec.rules \
--replace-fail "/bin/sh" "${bash}/bin/sh"
substituteInPlace fanatec.rules \
--replace-fail "/usr/bin/evdev-joystick" "${linuxConsoleTools}/bin/evdev-joystick"
runHook postPatch
'';
installPhase = ''
runHook preInstall
mkdir -p $out/etc/udev/rules.d
cp fanatec.rules $out/etc/udev/rules.d/99-fanatec.rules
mkdir -p $out/lib/modules/${kernel.modDirVersion}/kernel/drivers/hid
cp hid-fanatec.ko $out/lib/modules/${kernel.modDirVersion}/kernel/drivers/hid
runHook postInstall
'';
meta = with lib; {
description = "Driver to support FANATEC input devices, in particular ForceFeedback of various wheel-bases";
homepage = "https://github.com/gotzl/hid-fanatecff";
license = licenses.gpl2Only;
maintainers = with maintainers; [ theaninova ];
platforms = platforms.linux;
broken = stdenv.isAarch64;
};
}

View File

@@ -1,29 +0,0 @@
{
pkgs,
lib,
config,
...
}:
let
cfg = config.hardware.hid-fanatecff;
kernelPackage = pkgs.callPackage ./hid-fanatecff-pkg.nix {
kernel = config.boot.kernelPackages.kernel;
};
in
{
options.hardware.hid-fanatecff.enable = lib.mkEnableOption "the Linux kernel drivers for Fanatec wheel bases";
config = lib.mkIf cfg.enable {
boot = {
extraModulePackages = [ kernelPackage ];
kernelModules = [ "hid-fanatec" ];
};
services.udev.packages = [ kernelPackage ];
users.groups.games = { };
};
meta = {
maintainers = with lib.maintainers; [ theaninova ];
};
}