Compare commits

..

1 commit

Author SHA1 Message Date
NAHO 776d4c139b
Merge 947ab43745 into e4c6ee69e7 2025-11-06 00:37:06 +01:00
11 changed files with 41 additions and 94 deletions

View file

@ -117,8 +117,7 @@ See code for all available configurations.
| [Asus ROG Strix G713IE](asus/rog-strix/g713ie) | `<nixos-hardware/asus/rog-strix/g713ie>` | `asus-rog-strix-g713ie` | | [Asus ROG Strix G713IE](asus/rog-strix/g713ie) | `<nixos-hardware/asus/rog-strix/g713ie>` | `asus-rog-strix-g713ie` |
| [Asus ROG Strix G733QS](asus/rog-strix/g733qs) | `<nixos-hardware/asus/rog-strix/g733qs>` | `asus-rog-strix-g733qs` | | [Asus ROG Strix G733QS](asus/rog-strix/g733qs) | `<nixos-hardware/asus/rog-strix/g733qs>` | `asus-rog-strix-g733qs` |
| [Asus ROG Strix X570-E GAMING](asus/rog-strix/x570e) | `<nixos-hardware/asus/rog-strix/x570e>` | `asus-rog-strix-x570e` | | [Asus ROG Strix X570-E GAMING](asus/rog-strix/x570e) | `<nixos-hardware/asus/rog-strix/x570e>` | `asus-rog-strix-x570e` |
| [Asus ROG Zephyrus G14 GA401IV (2020)](asus/zephyrus/ga401iv) | `<nixos-hardware/asus/zephyrus/ga401iv>` | `asus-zephyrus-ga401iv` | | [Asus ROG Zephyrus G14 GA401](asus/zephyrus/ga401) | `<nixos-hardware/asus/zephyrus/ga401>` | `asus-zephyrus-ga401` |
| [Asus ROG Zephyrus G14 GA401 (2021)](asus/zephyrus/ga401) | `<nixos-hardware/asus/zephyrus/ga401>` | `asus-zephyrus-ga401` |
| [Asus ROG Zephyrus G14 GA402](asus/zephyrus/ga402) | `<nixos-hardware/asus/zephyrus/ga402>` | `asus-zephyrus-ga402` | | [Asus ROG Zephyrus G14 GA402](asus/zephyrus/ga402) | `<nixos-hardware/asus/zephyrus/ga402>` | `asus-zephyrus-ga402` |
| [Asus ROG Zephyrus G14 GA402X\* (2023)](asus/zephyrus/ga402x/amdgpu) | `<nixos-hardware/asus/zephyrus/ga402x/amdgpu>` | `asus-zephyrus-ga402x-amdgpu` | | [Asus ROG Zephyrus G14 GA402X\* (2023)](asus/zephyrus/ga402x/amdgpu) | `<nixos-hardware/asus/zephyrus/ga402x/amdgpu>` | `asus-zephyrus-ga402x-amdgpu` |
| [Asus ROG Zephyrus G14 GA402X\* (2023)](asus/zephyrus/ga402x/nvidia) | `<nixos-hardware/asus/zephyrus/ga402x/nvidia>` | `asus-zephyrus-ga402x-nvidia` | | [Asus ROG Zephyrus G14 GA402X\* (2023)](asus/zephyrus/ga402x/nvidia) | `<nixos-hardware/asus/zephyrus/ga402x/nvidia>` | `asus-zephyrus-ga402x-nvidia` |

View file

@ -11,6 +11,7 @@ let
mkEnableOption mkEnableOption
mkIf mkIf
mkMerge mkMerge
version
versionAtLeast versionAtLeast
; ;

View file

@ -1,38 +0,0 @@
{ lib, ... }:
{
imports = [
../../../common/cpu/amd
../../../common/cpu/amd/pstate.nix
../../../common/gpu/amd
../../../common/gpu/nvidia/prime.nix
../../../common/gpu/nvidia/turing
../../../common/pc/laptop
../../../common/pc/ssd
];
hardware.nvidia = {
# Enable DRM kernel mode setting
# This will also cause "PCI-Express Runtime D3 Power Management" to be enabled by default
modesetting.enable = lib.mkDefault true;
# Dynamic boost is available on ampere GPUs and newer, not this laptop
dynamicBoost.enable = lib.mkDefault false;
prime = {
amdgpuBusId = "PCI:4:0:0";
nvidiaBusId = "PCI:1:0:0";
};
};
services = {
asusd.enable = lib.mkDefault true;
udev.extraHwdb = ''
evdev:name:*:dmi:bvn*:bvr*:bd*:svnASUS*:pn*:*
KEYBOARD_KEY_ff31007c=f20 # fixes mic mute button
KEYBOARD_KEY_ff3100b2=home # Set fn+LeftArrow as Home
KEYBOARD_KEY_ff3100b3=end # Set fn+RightArrow as End
'';
};
}

View file

@ -88,7 +88,6 @@
asus-zenbook-ux535 = import ./asus/zenbook/ux535; asus-zenbook-ux535 = import ./asus/zenbook/ux535;
asus-zenbook-ux481-intelgpu = import ./asus/zenbook/ux481/intelgpu; asus-zenbook-ux481-intelgpu = import ./asus/zenbook/ux481/intelgpu;
asus-zenbook-ux481-nvidia = import ./asus/zenbook/ux481/nvidia; asus-zenbook-ux481-nvidia = import ./asus/zenbook/ux481/nvidia;
asus-zephyrus-ga401iv = import ./asus/zephyrus/ga401iv;
asus-zephyrus-ga401 = import ./asus/zephyrus/ga401; asus-zephyrus-ga401 = import ./asus/zephyrus/ga401;
asus-zephyrus-ga402 = import ./asus/zephyrus/ga402; asus-zephyrus-ga402 = import ./asus/zephyrus/ga402;
asus-zephyrus-ga402x = import ./asus/zephyrus/ga402x; asus-zephyrus-ga402x = import ./asus/zephyrus/ga402x;
@ -427,16 +426,16 @@
common-cpu-amd-zenpower = import ./common/cpu/amd/zenpower.nix; common-cpu-amd-zenpower = import ./common/cpu/amd/zenpower.nix;
common-cpu-amd-raphael-igpu = import ./common/cpu/amd/raphael/igpu.nix; common-cpu-amd-raphael-igpu = import ./common/cpu/amd/raphael/igpu.nix;
common-cpu-intel = import ./common/cpu/intel; common-cpu-intel = import ./common/cpu/intel;
common-gpu-intel-comet-lake = deprecated "992" "common-gpu-intel-comet-lake" ( common-gpu-intel-comet-lake =
import ./common/gpu/intel/comet-lake deprecated "992" "common-gpu-intel-comet-lake"
); (import ./common/gpu/intel/comet-lake);
common-cpu-intel-cpu-only = import ./common/cpu/intel/cpu-only.nix; common-cpu-intel-cpu-only = import ./common/cpu/intel/cpu-only.nix;
common-gpu-intel-kaby-lake = deprecated "992" "common-gpu-intel-kaby-lake" ( common-gpu-intel-kaby-lake =
import ./common/gpu/intel/kaby-lake deprecated "992" "common-gpu-intel-kaby-lake"
); (import ./common/gpu/intel/kaby-lake);
common-gpu-intel-sandy-bridge = deprecated "992" "common-gpu-intel-sandy-bridge" ( common-gpu-intel-sandy-bridge =
import ./common/gpu/intel/sandy-bridge deprecated "992" "common-gpu-intel-sandy-bridge"
); (import ./common/gpu/intel/sandy-bridge);
common-gpu-amd = import ./common/gpu/amd; common-gpu-amd = import ./common/gpu/amd;
common-gpu-amd-sea-islands = import ./common/gpu/amd/sea-islands; common-gpu-amd-sea-islands = import ./common/gpu/amd/sea-islands;
common-gpu-amd-southern-islands = import ./common/gpu/amd/southern-islands; common-gpu-amd-southern-islands = import ./common/gpu/amd/southern-islands;

View file

@ -5,7 +5,6 @@ let
# A patch to get both PWM fans working # A patch to get both PWM fans working
# the patch has been successfully applied to 5.15 and 5.19 # the patch has been successfully applied to 5.15 and 5.19
{ {
name = "mvebu-gpio-remove-hardcoded-timer-assignment";
patch = pkgs.fetchpatch { patch = pkgs.fetchpatch {
url = "https://raw.githubusercontent.com/armbian/build/bd3466eef2106ea13e85e821f5d852ff97465e6c/patch/kernel/archive/mvebu-5.15/92-mvebu-gpio-remove-hardcoded-timer-assignment.patch"; url = "https://raw.githubusercontent.com/armbian/build/bd3466eef2106ea13e85e821f5d852ff97465e6c/patch/kernel/archive/mvebu-5.15/92-mvebu-gpio-remove-hardcoded-timer-assignment.patch";
sha256 = "sha256-eQqMp0+MZd30zkl8DE89oB7czvyqCkfwF2k0EZ69jr0="; sha256 = "sha256-eQqMp0+MZd30zkl8DE89oB7czvyqCkfwF2k0EZ69jr0=";
@ -13,14 +12,12 @@ let
} }
# support for Wake-On-Lan # support for Wake-On-Lan
{ {
name = "mvebu-gpio-add-wake-on-gpio-support";
patch = pkgs.fetchpatch { patch = pkgs.fetchpatch {
url = "https://raw.githubusercontent.com/armbian/build/bd3466eef2106ea13e85e821f5d852ff97465e6c/patch/kernel/archive/mvebu-5.15/92-mvebu-gpio-add_wake_on_gpio_support.patch"; url = "https://raw.githubusercontent.com/armbian/build/bd3466eef2106ea13e85e821f5d852ff97465e6c/patch/kernel/archive/mvebu-5.15/92-mvebu-gpio-add_wake_on_gpio_support.patch";
sha256 = "sha256-OrvnVCU55P0U78jdoxGRJvl29i+Rvq8AdEGSCCpxa2I="; sha256 = "sha256-OrvnVCU55P0U78jdoxGRJvl29i+Rvq8AdEGSCCpxa2I=";
}; };
} }
{ {
name = "helios4-dts-add-wake-on-lan-support";
patch = pkgs.fetchpatch { patch = pkgs.fetchpatch {
url = "https://raw.githubusercontent.com/armbian/build/bd3466eef2106ea13e85e821f5d852ff97465e6c/patch/kernel/archive/mvebu-5.15/94-helios4-dts-add-wake-on-lan-support.patch"; url = "https://raw.githubusercontent.com/armbian/build/bd3466eef2106ea13e85e821f5d852ff97465e6c/patch/kernel/archive/mvebu-5.15/94-helios4-dts-add-wake-on-lan-support.patch";
sha256 = "sha256-ai4161bTC22023eaVVWsvbk6fQKjkv0P4DQ4DA1Zgow="; sha256 = "sha256-ai4161bTC22023eaVVWsvbk6fQKjkv0P4DQ4DA1Zgow=";

View file

@ -34,23 +34,18 @@ let
hash = "sha256-XiTuH40b3VJqzwygZzU0FcvMDj41Rq6IsMbm+3+QxDY="; hash = "sha256-XiTuH40b3VJqzwygZzU0FcvMDj41Rq6IsMbm+3+QxDY=";
}; };
# Use postPatch to apply patches from a directory without IFD kernelPatches =
postPatch = '' (map (patch: { inherit patch; }) (
for patch in ${reformDebianPackages}/linux/patches${lib.versions.majorMinor modDirVersion}/*/*.patch; do lib.filesystem.listFilesRecursive "${reformDebianPackages}/linux/patches${lib.versions.majorMinor modDirVersion}"
echo "Applying patch: $patch" ))
patch -p1 < "$patch" ++ [
done {
''; patch = callPackage ./dtsPatch.nix {
inherit reformDebianPackages;
kernelPatches = [ kernelSource = src;
{ };
name = "reform-dts"; }
patch = callPackage ./dtsPatch.nix { ];
inherit reformDebianPackages;
kernelSource = src;
};
}
];
structuredExtraConfig = with lib.kernel; { structuredExtraConfig = with lib.kernel; {
# configuration options from https://source.mnt.re/reform/reform-debian-packages/-/blob/7f31ba3a6742d60d8d502c1d86e63ef5df3916bf/linux/config # configuration options from https://source.mnt.re/reform/reform-debian-packages/-/blob/7f31ba3a6742d60d8d502c1d86e63ef5df3916bf/linux/config

View file

@ -32,7 +32,6 @@ let
defconfig = "pine64_star64_defconfig"; defconfig = "pine64_star64_defconfig";
kernelPatches = [ kernelPatches = [
{ {
name = "keys-dh-fix";
patch = fetchpatch { patch = fetchpatch {
url = "https://github.com/torvalds/linux/commit/215bebc8c6ac438c382a6a56bd2764a2d4e1da72.diff"; url = "https://github.com/torvalds/linux/commit/215bebc8c6ac438c382a6a56bd2764a2d4e1da72.diff";
hash = "sha256-1ZqmVOkgcDBRkHvVRPH8I5G1STIS1R/l/63PzQQ0z0I="; hash = "sha256-1ZqmVOkgcDBRkHvVRPH8I5G1STIS1R/l/63PzQQ0z0I=";
@ -40,16 +39,12 @@ let
}; };
} }
{ {
name = "starfive-vin-sensor-fix";
patch = fetchpatch { patch = fetchpatch {
url = "https://github.com/starfive-tech/linux/pull/108/commits/9ae8cb751c4d1fd2146b279a8e67887590e9d07a.diff"; url = "https://github.com/starfive-tech/linux/pull/108/commits/9ae8cb751c4d1fd2146b279a8e67887590e9d07a.diff";
hash = "sha256-EY0lno+HkY5mradBUPII3qqu0xh+BVQRzveCQcaht0M="; hash = "sha256-EY0lno+HkY5mradBUPII3qqu0xh+BVQRzveCQcaht0M=";
}; };
} }
{ { patch = ./irq-desc-to-data.patch; }
name = "irq-desc-to-data";
patch = ./irq-desc-to-data.patch;
}
] ]
++ kernelPatches; ++ kernelPatches;

View file

@ -1,5 +1,6 @@
{ {
stdenv, stdenv,
gcc11Stdenv,
buildUBoot, buildUBoot,
fetchurl, fetchurl,
fetchFromGitLab, fetchFromGitLab,
@ -27,7 +28,7 @@ let
meta.license = lib.licenses.unfree; meta.license = lib.licenses.unfree;
}); });
arm-trusted-firmware-imx8mq = stdenv.mkDerivation (_fa: { arm-trusted-firmware-imx8mq = gcc11Stdenv.mkDerivation (_fa: {
pname = "arm-trusted-firmware-bl31"; pname = "arm-trusted-firmware-bl31";
version = "unstable-2020-07-08"; version = "unstable-2020-07-08";
src = fetchFromGitLab { src = fetchFromGitLab {
@ -39,7 +40,6 @@ let
}; };
enableParallelBuilding = true; enableParallelBuilding = true;
hardeningDisable = [ "all" ]; hardeningDisable = [ "all" ];
NIX_CFLAGS_COMPILE = "-Wno-error=array-bounds";
NIX_LDFLAGS = "--no-warn-rwx-segments"; NIX_LDFLAGS = "--no-warn-rwx-segments";
buildFlags = [ buildFlags = [
"PLAT=imx8mq" "PLAT=imx8mq"
@ -53,14 +53,14 @@ let
}); });
ubootLibrem5 = buildUBoot { ubootLibrem5 = buildUBoot {
version = "unstable-2025-03-25"; version = "unstable-2022-12-15";
defconfig = "librem5_defconfig"; defconfig = "librem5_defconfig";
src = fetchFromGitLab { src = fetchFromGitLab {
domain = "source.puri.sm"; domain = "source.puri.sm";
owner = "Librem5"; owner = "Librem5";
repo = "uboot-imx"; repo = "uboot-imx";
rev = "72fcd4ee36e0874daac734c1195263cd9ce9d981"; # this is the latest commit on the upstream/librem5 branch rev = "956aa590c93977992743b41c45d3c7ee5a024915"; # this is the latest commit on the upstream/librem5 branch
hash = "sha256-ymqZPuyyZoFTaCMQIJnuNs1fV0uVwJhyQdnGwv9m9lE="; hash = "sha256-MsIIlarN+WFFEzc0ptLAgS7BwJ6Cosy42xo0EwPn1AU=";
}; };
patches = [ ]; patches = [ ];
BL31 = "${arm-trusted-firmware-imx8mq}/bl31.bin"; BL31 = "${arm-trusted-firmware-imx8mq}/bl31.bin";

View file

@ -35,8 +35,7 @@
"vc4" "vc4"
"pcie_brcmstb" # required for the pcie bus to work "pcie_brcmstb" # required for the pcie bus to work
"reset-raspberrypi" # required for vl805 firmware to load "reset-raspberrypi" # required for vl805 firmware to load
] ];
++ lib.optional config.boot.initrd.network.enable "genet";
# Allow building kernel # Allow building kernel
initrd.systemd.tpm2.enable = false; initrd.systemd.tpm2.enable = false;
@ -56,5 +55,6 @@
} }
]; ];
hardware.firmware = [ pkgs.raspberrypiWirelessFirmware ]; # Required for the Wireless firmware
hardware.enableRedistributableFirmware = true;
} }

View file

@ -2,11 +2,11 @@
"nodes": { "nodes": {
"nixos-stable": { "nixos-stable": {
"locked": { "locked": {
"lastModified": 1761597516, "lastModified": 1755274400,
"narHash": "sha256-wxX7u6D2rpkJLWkZ2E932SIvDJW8+ON/0Yy8+a5vsDU=", "narHash": "sha256-rTInmnp/xYrfcMZyFMH3kc8oko5zYfxsowaLv1LVobY=",
"owner": "NixOS", "owner": "NixOS",
"repo": "nixpkgs", "repo": "nixpkgs",
"rev": "daf6dc47aa4b44791372d6139ab7b25269184d55", "rev": "ad7196ae55c295f53a7d1ec39e4a06d922f3b899",
"type": "github" "type": "github"
}, },
"original": { "original": {
@ -18,11 +18,11 @@
}, },
"nixos-unstable-small": { "nixos-unstable-small": {
"locked": { "locked": {
"lastModified": 1761789293, "lastModified": 1755375481,
"narHash": "sha256-zwQKLaUgHSpY6SvB/MDgPYRPomWAmbkS3Xfo6JvFVOA=", "narHash": "sha256-43PgCQFgFD1nM/7dncytV0c5heNHe/gXrEud18ZWcZU=",
"owner": "NixOS", "owner": "NixOS",
"repo": "nixpkgs", "repo": "nixpkgs",
"rev": "8d42228a0de7c23b012e2f7dd963425a372e1b0e", "rev": "35f1742e4f1470817ff8203185e2ce0359947f12",
"type": "github" "type": "github"
}, },
"original": { "original": {
@ -46,11 +46,11 @@
] ]
}, },
"locked": { "locked": {
"lastModified": 1761311587, "lastModified": 1750931469,
"narHash": "sha256-Msq86cR5SjozQGCnC6H8C+0cD4rnx91BPltZ9KK613Y=", "narHash": "sha256-0IEdQB1nS+uViQw4k3VGUXntjkDp7aAlqcxdewb/hAc=",
"owner": "numtide", "owner": "numtide",
"repo": "treefmt-nix", "repo": "treefmt-nix",
"rev": "2eddae033e4e74bf581c2d1dfa101f9033dbd2dc", "rev": "ac8e6f32e11e9c7f153823abc3ab007f2a65d3e1",
"type": "github" "type": "github"
}, },
"original": { "original": {

View file

@ -69,7 +69,6 @@ def run_eval_test(gcroot_dir: Path, jobs: int) -> list[str]:
failed_profiles = [] failed_profiles = []
cmd = [ cmd = [
"nix-eval-jobs", "nix-eval-jobs",
"--no-instantiate",
"--extra-experimental-features", "flakes", "--extra-experimental-features", "flakes",
"--option", "eval-cache", "false", "--option", "eval-cache", "false",
"--gc-roots-dir", "--gc-roots-dir",