config/shared/platform/orangepi5plus.nix

61 lines
1.4 KiB
Nix

{
config,
lib,
pkgs,
modulesPath,
...
}: let
crossPkgs = pkgs.pkgsCross.aarch64-multiplatform;
in {
boot = {
kernelPackages = let
branch = "6.8";
version = "${branch}-rc1";
in
crossPkgs.linuxPackagesFor (crossPkgs.buildLinux {
inherit version;
modDirVersion = version;
src = builtins.fetchTarball {
url = "https://git.kernel.org/torvalds/t/linux-${version}.tar.gz";
sha256 = "0rnrd1iy73vkrablx6rqlmxv9bv9zjfh6zj09aqca9rr5h8iz1p3";
};
kernelPatches = [
{
name = "orangepi-5-plus-collabora-v${version}";
patch = ./orangepi5plus/rk3588-v${version}.patch;
}
];
extraMeta.branch = branch;
});
loader = {
grub.enable = false;
generic-extlinux-compatible.enable = true;
};
initrd.kernelModules = ["ahci_dwc" "phy_rockchip_naneng_combphy"];
consoleLogLevel = 7;
};
hardware.deviceTree.name = "rockchip/rk3588s-orangepi-5-plus.dtb";
fileSystems = {
"/" = {
device = "/dev/disk/by-label/nixos";
fsType = "ext4";
options = ["noatime"];
};
};
system.build = {
sdImage = import "${modulesPath}/../lib/make-disk-image.nix" {
name = "orangepi5-sd-image";
copyChannel = false;
inherit config lib pkgs;
};
uboot = crossPkgs.callPackage ../../hacks/orangepi5/uboot {};
};
}