liminix

Unnamed repository; edit this file 'description' to name the repository.
Log | Files | Refs | README | LICENSE

qemu.nix (1523B)


      1 { config, pkgs, ... }:
      2 {
      3   imports = [
      4     ../../modules/outputs/jffs2.nix
      5   ];
      6   config = {
      7     kernel = {
      8       src = pkgs.pkgsBuildBuild.fetchurl {
      9         name = "linux.tar.gz";
     10         url = "https://cdn.kernel.org/pub/linux/kernel/v5.x/linux-5.15.71.tar.gz";
     11         hash = "sha256-yhO2cXIeIgUxkSZf/4aAsF11uxyh+UUZu6D1h92vCD8=";
     12       };
     13       config = {
     14         MTD = "y";
     15         MTD_BLOCK = "y";
     16         MTD_CMDLINE_PARTS = "y";
     17         MTD_PHRAM = "y";
     18 
     19         VIRTIO_MENU = "y";
     20         PCI = "y";
     21         VIRTIO_PCI = "y";
     22         BLOCK = "y";
     23         VIRTIO_BLK = "y";
     24         VIRTIO_NET = "y";
     25       };
     26     };
     27     hardware =
     28       let
     29         mac80211 =  pkgs.mac80211.override {
     30           drivers = ["mac80211_hwsim"];
     31           klibBuild = config.system.outputs.kernel.modulesupport;
     32         };
     33       in {
     34         defaultOutput = "vmroot";
     35         rootDevice = "/dev/mtdblock0";
     36         dts.src = pkgs.lib.mkDefault null;
     37         flash.eraseBlockSize = 65536;
     38         networkInterfaces =
     39           let inherit (config.system.service.network) link;
     40           in {
     41             wan = link.build {
     42               devpath = "/devices/pci0000:00/0000:00:13.0/virtio0";
     43               ifname = "wan";
     44             };
     45             lan = link.build {
     46               devpath = "/devices/pci0000:00/0000:00:14.0/virtio1";
     47               ifname = "lan";
     48             };
     49 
     50             wlan_24 = link.build {
     51               ifname = "wlan0";
     52               dependencies = [ mac80211 ];
     53             };
     54           };
     55       };
     56   };
     57 }