mirror of
				https://github.com/bartvdbraak/dotfiles.git
				synced 2025-10-30 07:09:09 +00:00 
			
		
		
		
	Add initial test to run with the new driver install
This commit is contained in:
		
							parent
							
								
									ecfb278d2a
								
							
						
					
					
						commit
						6d38dc0cb4
					
				
					 2 changed files with 60 additions and 1 deletions
				
			
		|  | @ -3,15 +3,24 @@ | |||
| # to /etc/nixos/configuration.nix instead. | ||||
| { config, lib, pkgs, modulesPath, ... }: | ||||
| 
 | ||||
| let | ||||
|   yt6801Overlay = (final: prev: { | ||||
|     yt6801-driver = import ./yt6801-driver.nix { | ||||
|       inherit (pkgs) lib stdenv fetchurl kernel bc nukeReferences; | ||||
|     }; | ||||
|   }); | ||||
| in | ||||
| { | ||||
|   imports = | ||||
|     [ (modulesPath + "/installer/scan/not-detected.nix") | ||||
|     ]; | ||||
|   nixpkgs.overlays = [ yt6801Overlay ]; | ||||
| 
 | ||||
|   boot.initrd.availableKernelModules = [ "nvme" "xhci_pci" "thunderbolt" "usb_storage" "sd_mod" "sdhci_pci" ]; | ||||
|   boot.initrd.kernelModules = [ ]; | ||||
|   boot.kernelModules = [ "kvm-amd" ]; | ||||
|   boot.extraModulePackages = [ ]; | ||||
|   boot.extraModulePackages = [ pkgs.yt6801-driver ]; | ||||
|   environment.systemPackages = with pkgs; [ yt6801-driver ]; | ||||
| 
 | ||||
|   fileSystems."/" = | ||||
|     { device = "/dev/disk/by-uuid/c7cf28c3-5744-45cc-8a81-456d24e44b7a"; | ||||
|  |  | |||
							
								
								
									
										50
									
								
								tongfang/nixos/yt6801-driver.nix
									
										
									
									
									
										Normal file
									
								
							
							
						
						
									
										50
									
								
								tongfang/nixos/yt6801-driver.nix
									
										
									
									
									
										Normal file
									
								
							|  | @ -0,0 +1,50 @@ | |||
| { lib, stdenv, fetchurl, kernel, bc, nukeReferences }: | ||||
| 
 | ||||
| stdenv.mkDerivation rec { | ||||
|   pname = "yt6801-driver"; | ||||
|   version = "${kernel.version}-unstable-2024-10-25"; | ||||
| 
 | ||||
|   src = fetchurl { | ||||
|     url = "https://www.motor-comm.com/Public/Uploads/uploadfile/files/20240812/yt6801-linux-driver-1.0.29.zip"; | ||||
|     sha256 = "1r8r463y140vrkilkciba16864cfcm35kdqpby50bs8dwmw84gm3"; | ||||
|   }; | ||||
| 
 | ||||
|   nativeBuildInputs = [ stdenv.lib.makeWrapper bc nukeReferences ] ++ kernel.moduleBuildDependencies; | ||||
|   hardeningDisable = [ "pic" "format" ]; | ||||
| 
 | ||||
|   postPatch = '' | ||||
|     substituteInPlace ./yt_nic_install.sh \ | ||||
|       --replace "/lib/modules" "$out/lib/modules" \ | ||||
|       --replace "/sbin/depmod" "# depmod" | ||||
| 
 | ||||
|     substituteInPlace ./src/Makefile \ | ||||
|       --replace "/lib/modules" "$out/lib/modules/${kernel.modDirVersion}" \ | ||||
|       --replace "kernel/drivers/net/ethernet/motorcomm" "$out/lib/modules/${kernel.modDirVersion}/kernel/drivers/net/ethernet/motorcomm" | ||||
|   ''; | ||||
| 
 | ||||
|   makeFlags = [ | ||||
|     "ARCH=${stdenv.hostPlatform.linuxArch}" | ||||
|     ("KERNELDIR=${kernel.dev}/lib/modules/${kernel.modDirVersion}/build") | ||||
|     ("EXTRA_CFLAGS=-Wall -g -I${kernel.dev}/include") | ||||
|   ] ++ lib.optionals (stdenv.hostPlatform != stdenv.buildPlatform) [ | ||||
|     "CROSS_COMPILE=${stdenv.cc.targetPrefix}" | ||||
|   ]; | ||||
| 
 | ||||
|   preInstall = '' | ||||
|     mkdir -p "$out/lib/modules/${kernel.modDirVersion}/kernel/drivers/net/ethernet/motorcomm" | ||||
|   ''; | ||||
| 
 | ||||
|   postInstall = '' | ||||
|     nuke-refs $out/lib/modules/*/kernel/drivers/net/ethernet/motorcomm/*.ko | ||||
|   ''; | ||||
| 
 | ||||
|   enableParallelBuilding = true; | ||||
| 
 | ||||
|   meta = with lib; { | ||||
|     description = "Motorcomm yt6801 Network Interface Card (NIC) driver"; | ||||
|     homepage = "https://www.motor-comm.com/"; | ||||
|     license = licenses.gpl2Only; | ||||
|     platforms = platforms.linux; | ||||
|     maintainers = with maintainers; [ bartvdbraak ]; | ||||
|   }; | ||||
| } | ||||
		Loading…
	
	Add table
		Add a link
		
	
		Reference in a new issue