new-lg4ff: init at 0.3.3

+69
+28
nixos/modules/hardware/new-lg4ff.nix
··· 1 + { pkgs, lib, config, ... }: 2 + 3 + with lib; 4 + 5 + let 6 + cfg = config.hardware.new-lg4ff; 7 + in { 8 + options.hardware.new-lg4ff = { 9 + enable = mkOption { 10 + type = types.bool; 11 + default = false; 12 + description = '' 13 + Enables improved Linux module drivers for Logitech driving wheels. 14 + This will replace the existing in-kernel hid-logitech modules. 15 + Works most notably on the Logitech G25, G27, G29 and Driving Force (GT). 16 + ''; 17 + }; 18 + }; 19 + 20 + config = { 21 + boot = { 22 + extraModulePackages = [ pkgs.new-lg4ff ]; 23 + kernelModules = [ "hid-logitech-new" ]; 24 + }; 25 + }; 26 + 27 + meta.maintainers = with lib.maintainers; [ matthiasbenaets ]; 28 + }
+1
nixos/modules/module-list.nix
··· 66 66 ./hardware/network/ath-user-regd.nix 67 67 ./hardware/network/b43.nix 68 68 ./hardware/network/intel-2200bg.nix 69 + ./hardware/new-lg4ff.nix 69 70 ./hardware/nitrokey.nix 70 71 ./hardware/opengl.nix 71 72 ./hardware/openrazer.nix
+36
pkgs/os-specific/linux/new-lg4ff/default.nix
··· 1 + { lib, stdenv, kernel, fetchFromGitHub }: 2 + 3 + stdenv.mkDerivation rec { 4 + pname = "new-lg4ff"; 5 + version = "0.3.3"; 6 + 7 + src = fetchFromGitHub { 8 + owner = "berarma"; 9 + repo = "new-lg4ff"; 10 + rev = "${version}"; 11 + sha256 = "+05xDpNI4m6wTS+YPgA0fP4iM10nMOZOtCrdQxpevBU="; 12 + }; 13 + 14 + preBuild = '' 15 + substituteInPlace Makefile --replace "modules_install" "INSTALL_MOD_PATH=$out modules_install" 16 + sed -i '/depmod/d' Makefile 17 + sed -i "10i\\\trmmod hid-logitech 2> /dev/null || true" Makefile 18 + sed -i "11i\\\trmmod hid-logitech-new 2> /dev/null || true" Makefile 19 + ''; 20 + 21 + nativeBuildInputs = kernel.moduleBuildDependencies; 22 + 23 + makeFlags = [ 24 + "KVERSION=${kernel.modDirVersion}" 25 + "KDIR=${kernel.dev}/lib/modules/${kernel.modDirVersion}/build" 26 + ]; 27 + 28 + meta = with lib; { 29 + description = "Experimental Logitech force feedback module for Linux"; 30 + homepage = "https://github.com/berarma/new-lg4ff"; 31 + license = licenses.gpl2Only; 32 + maintainers = with maintainers; [ matthiasbenaets ]; 33 + platforms = platforms.linux; 34 + broken = stdenv.isAarch64; 35 + }; 36 + }
+4
pkgs/top-level/all-packages.nix
··· 23057 23057 stdenv = gcc11Stdenv; 23058 23058 }; 23059 23059 23060 + new-lg4ff = callPackage ../os-specific/linux/new-lg4ff { 23061 + inherit (linuxPackages) kernel; 23062 + }; 23063 + 23060 23064 nmon = callPackage ../os-specific/linux/nmon { }; 23061 23065 23062 23066 hwdata = callPackage ../os-specific/linux/hwdata { };