36 lines
1.3 KiB
Nix
36 lines
1.3 KiB
Nix
{ config, pkgs, lib, ... }:
|
|
|
|
{
|
|
imports = [
|
|
./petitboot
|
|
];
|
|
|
|
boot.loader.petitboot.enable = lib.mkForce true;
|
|
|
|
# Fails to rebuild unless grub is explicitly disabled
|
|
boot.loader.grub.enable = lib.mkForce false;
|
|
|
|
# TODO: Can this be removed? Presumably anything built with 25.11 / unstable
|
|
# or later will be on a kernel >6.6
|
|
# Use kernel >6.6 The devicetree is missing from kernel versions older than this.
|
|
boot.kernelPackages = lib.mkIf (lib.versionOlder pkgs.linux.version "6.6") (lib.mkDefault pkgs.linuxPackages_latest);
|
|
|
|
# TODO: Debug why removing this breaks booting from petitboot
|
|
boot.supportedFilesystems = lib.mkForce ["btrfs" "cifs" "f2fs" "jfs" "ntfs" "reiserfs" "vfat" "xfs"];
|
|
|
|
# TODO: Some of these could potentially be omitted, check which ones are
|
|
# actually necessary for disk access to function
|
|
boot.initrd.availableKernelModules = [
|
|
# Only nvme emitted when using nixos-generate-config on my odroid-m1
|
|
"nvme"
|
|
# "nvme-core"
|
|
# "phy-rockchip-naneng-combphy"
|
|
# "phy-rockchip-snps-pcie3"
|
|
];
|
|
|
|
# Petitboot uses this port and baud rate on the board's serial port. It's
|
|
# probably good to keep the options same for the running kernel for serial
|
|
# console access to work well.
|
|
boot.kernelParams = ["console=ttyS2,1500000"];
|
|
hardware.deviceTree.name = "rockchip/rk3568-odroid-m1.dtb";
|
|
}
|