This commit is contained in:
2026-04-10 15:45:53 +04:00
commit 95f3f072da
24 changed files with 3526 additions and 0 deletions
+93
View File
@@ -0,0 +1,93 @@
{ lib, pkgs, ... }:
{
specialisation.el2.configuration = {
hardware.deviceTree = {
overlays = lib.mkAfter [
{
name = "x1e-el2";
dtboFile = "${pkgs.slbounce}/share/slbounce/dtbo/x1e-el2.dtbo";
}
];
};
boot.kernelParams = [ "id_aa64mmfr0.ecv=1" ];
systemd.services.el2-boot-indicator = {
description = "EL2 boot indicator (blink Caps Lock LED)";
wantedBy = [ "multi-user.target" ];
after = [ "multi-user.target" ];
serviceConfig = {
Type = "oneshot";
RemainAfterExit = true;
};
script = ''
LED=$(find /sys/class/leds -name "*capslock*" 2>/dev/null | head -1)
if [ -z "$LED" ]; then
LED=$(find /sys/class/leds -name "*kbd*" 2>/dev/null | head -1)
fi
if [ -n "$LED" ]; then
for i in 1 2 3 4 5; do
echo 1 > "$LED/brightness" 2>/dev/null || true
sleep 0.3
echo 0 > "$LED/brightness" 2>/dev/null || true
sleep 0.3
done
echo 1 > "$LED/brightness" 2>/dev/null || true
fi
'';
};
};
boot = {
initrd.extraFirmwarePaths = [
"ath12k/WCN7850/hw2.0/amss.bin"
"ath12k/WCN7850/hw2.0/board-2.bin"
"ath12k/QCN9274/hw2.0/board-2.bin"
"ath12k/QCN9274/hw2.0/firmware-2.bin"
"ath12k/WCN7850/hw2.0/m3.bin"
"qcom/x1e80100/microsoft/Romulus/adsp_dtbs.elf"
"qcom/x1e80100/microsoft/Romulus/adspr.jsn"
"qcom/x1e80100/microsoft/Romulus/adsps.jsn"
"qcom/x1e80100/microsoft/Romulus/adspua.jsn"
"qcom/x1e80100/microsoft/Romulus/battmgr.jsn"
"qcom/x1e80100/microsoft/Romulus/cdsp_dtbs.elf"
"qcom/x1e80100/microsoft/Romulus/cdspr.jsn"
"qcom/x1e80100/microsoft/Romulus/qcadsp8380.mbn"
"qcom/x1e80100/microsoft/Romulus/qccdsp8380.mbn"
"qcom/x1e80100/microsoft/qcdxkmsuc8380.mbn"
"qcom/gen70500_sqe.fw"
"qcom/gen70500_sqe.fw.zst"
"qcom/gen70500_gmu.bin"
];
kernelParams = [
"clk_ignore_unused"
"pd_ignore_unused"
"iomem=relaxed"
];
supportedFilesystems = {
btrfs = true;
zfs = lib.mkForce false;
cifs = lib.mkForce false;
};
consoleLogLevel = 7;
loader.systemd-boot = {
edk2-uefi-shell.enable = true;
extraFiles = {
"EFI/systemd/drivers/slbouncea64.efi" = "${pkgs.slbounce}/share/slbounce/slbounce.efi";
"tcblaunch.exe" = "${pkgs.tcblaunch}/share/tcblaunch/tcblaunch.exe";
"sltest.efi" = "${pkgs.slbounce}/share/slbounce/sltest.efi";
"dtbhack.efi" = "${pkgs.slbounce}/share/slbounce/dtbhack.efi";
"firmware/qcom/x1e80100/microsoft/Romulus/qcadsp8380.mbn" =
"${pkgs.x1e80100-firmware}/lib/firmware/qcom/x1e80100/microsoft/Romulus/qcadsp8380.mbn";
"firmware/qcom/x1e80100/microsoft/Romulus/adsp_dtbs.elf" =
"${pkgs.x1e80100-firmware}/lib/firmware/qcom/x1e80100/microsoft/Romulus/adsp_dtbs.elf";
"firmware/qcom/x1e80100/microsoft/Romulus/qccdsp8380.mbn" =
"${pkgs.x1e80100-firmware}/lib/firmware/qcom/x1e80100/microsoft/Romulus/qccdsp8380.mbn";
"firmware/qcom/x1e80100/microsoft/Romulus/cdsp_dtbs.elf" =
"${pkgs.x1e80100-firmware}/lib/firmware/qcom/x1e80100/microsoft/Romulus/cdsp_dtbs.elf";
};
};
};
}