34 lines
		
	
	
	
		
			1.3 KiB
		
	
	
	
		
			Nix
		
	
	
	
	
	
			
		
		
	
	
			34 lines
		
	
	
	
		
			1.3 KiB
		
	
	
	
		
			Nix
		
	
	
	
	
	
| {
 | |
|   inputs = {
 | |
|     nixpkgs.url = "github:nixos/nixpkgs/nixos-23.05";
 | |
|   };
 | |
| 
 | |
|   outputs = { self, nixpkgs }:
 | |
|     let
 | |
|       system = "x86_64-linux";
 | |
|       crossSystem = "aarch64-linux";
 | |
|       pkgs = import nixpkgs {
 | |
|         inherit system;
 | |
|         crossSystem = {
 | |
|           gcc.cpu = "cortex-a53";
 | |
|           config = "aarch64-unknown-linux-gnu";
 | |
|           linux-kernel = {
 | |
|             DTB = true;
 | |
|             autoModules = true;
 | |
|             baseConfig = "defconfig";
 | |
|             extraConfig = "# Raspberry Pi 3 stuff. Not needed for   s >= 4.10.\nARCH_BCM2835 y\nBCM2835_MBOX y\nBCM2835_WDT y\nRASPBERRYPI_FIRMWARE y\nRASPBERRYPI_POWER y\nSERIAL_8250_BCM2835AUX y\nSERIAL_8250_EXTENDED y\nSERIAL_8250_SHARE_IRQ y\n\n# Cavium ThunderX stuff.\nPCI_HOST_THUNDER_ECAM y\n\n# Nvidia Tegra stuff.\nPCI_TEGRA y\n\n# The default (=y) forces us to have the XHCI firmware available in initrd,\n# which our initrd builder can't currently do easily.\nUSB_XHCI_TEGRA m\n";
 | |
|             name = "aarch64-multiplatform";
 | |
|             preferBuiltin = true;
 | |
|             target = "Image";
 | |
|           };
 | |
|         };
 | |
|       };
 | |
|     in
 | |
|     {
 | |
|       nixosConfigurations.triviOS = nixpkgs.lib.nixosSystem {
 | |
|         system = crossSystem;
 | |
|         modules = [ ./triviOS ];
 | |
|       };
 | |
|       formatter.${system} = pkgs.pkgsBuildBuild.nixpkgs-fmt;
 | |
|     };
 | |
| }
 | 
