Compare commits

...

25 commits

Author SHA1 Message Date
Nunya Bidness 8ad5340e87
Merge 43a5076c0c into 24084931d8 2025-11-06 13:38:39 -05:00
Jörg Thalheim 24084931d8
Merge pull request #1661 from HyprGirl/master
asus/zephyrus/ga401iv: init
2025-11-06 11:05:22 +00:00
Jörg Thalheim 3e24540eb9
Merge pull request #1663 from concatime/feat/add-only-wireless-firmwares
raspberry-pi/4: add only wireless firmwares
2025-11-06 11:04:51 +00:00
Jörg Thalheim bd47664211
Merge pull request #1667 from concatime/feat/add-genet-module-to-initrd-if-netboot
raspberry-pi/4: add genet module to initrd if netboot
2025-11-06 11:04:33 +00:00
Jörg Thalheim be02d168e7
Merge pull request #1657 from NixOS/no-instantiate
speed up ci
2025-11-06 11:03:32 +00:00
Jörg Thalheim f34ca8045a mnt/reform: stop doing ifd 2025-11-06 11:27:57 +01:00
Jörg Thalheim ec18896955 librem/5r4/u-boot: update and use newer compiler 2025-11-06 11:21:16 +01:00
Jörg Thalheim 64269645d4 star64: add missing names to kernel patches 2025-11-06 11:14:48 +01:00
Jörg Thalheim d1ad892e3b helios4: add missing names to kernel patches 2025-11-06 11:14:03 +01:00
Issam E. Maghni ec135126c1 raspberry-pi/4: add genet module to initrd if netboot
This module is required to have Ethernet in initial RAM disk.

It solves the issue encountered in this thread:
https://discourse.nixos.org/t/netboot-into-nfs-root-instead-of-the-fat-netboot-ramdisk/8556/2
2025-11-05 19:31:43 -05:00
Issam E. Maghni 2a3a409ac5 raspberry-pi/4: add only wireless firmwares 2025-11-04 15:28:35 -05:00
Jörg Thalheim 01e8e18d9d format flake.nix after nixpkgs bump 2025-11-04 13:04:34 +01:00
Romana d60ba4a306
Merge branch 'NixOS:master' into master 2025-11-03 22:54:14 +00:00
Romana 5723dff2cd
add ga401iv to readme and flake.nix 2025-11-03 19:59:38 +01:00
Romana 5e6ecb961a
asus-zephyrus-ga401iv: Add config for 2020 model of ga401 2025-11-03 03:45:34 +01:00
Jörg Thalheim f6299de29d bump nixpkgs 2025-10-30 14:29:33 +01:00
Jörg Thalheim caacab410f speed up ci: run nix-eval-jobs with no-instantiate 2025-10-30 14:07:00 +01:00
Nunya Bidness 43a5076c0c
Merge branch 'master' into master 2025-07-15 03:17:55 -05:00
Nunya Bidness c0b045c56b
Merge branch 'NixOS:master' into master 2025-07-07 19:25:48 -05:00
adama 0ab582d919 Updated readme with proper formatting 2025-03-05 19:30:49 -06:00
Nunya Bidness 8d304935f7
Merge branch 'NixOS:master' into pikonmodular 2025-02-22 03:17:42 -06:00
Nunya Bidness ede8dad8ed Added readme 2025-02-22 03:10:35 -06:00
Nunya Bidness be6c17d1f5 Removed opinionated setting of thermalda 2025-02-22 03:09:00 -06:00
Nunya Bidness eff85ec002 Removed hdd, Added hidpi, Organized imports 2025-02-22 02:18:00 -06:00
Nunya Bidness 6c2aafaef3 Added configuration for HP Omen 15-ek1013dx 2025-02-18 01:04:42 -06:00
13 changed files with 159 additions and 41 deletions

View file

@ -116,7 +116,8 @@ 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 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 Zephyrus G14 GA401](asus/zephyrus/ga401) | `<nixos-hardware/asus/zephyrus/ga401>` | `asus-zephyrus-ga401` |
| [Asus ROG Zephyrus G14 GA401IV (2020)](asus/zephyrus/ga401iv) | `<nixos-hardware/asus/zephyrus/ga401iv>` | `asus-zephyrus-ga401iv` |
| [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 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` |

View file

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

View file

@ -0,0 +1,38 @@
{ 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

@ -87,6 +87,7 @@
asus-zenbook-ux535 = import ./asus/zenbook/ux535;
asus-zenbook-ux481-intelgpu = import ./asus/zenbook/ux481/intelgpu;
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-ga402 = import ./asus/zephyrus/ga402;
asus-zephyrus-ga402x = import ./asus/zephyrus/ga402x;
@ -425,16 +426,16 @@
common-cpu-amd-zenpower = import ./common/cpu/amd/zenpower.nix;
common-cpu-amd-raphael-igpu = import ./common/cpu/amd/raphael/igpu.nix;
common-cpu-intel = import ./common/cpu/intel;
common-gpu-intel-comet-lake =
deprecated "992" "common-gpu-intel-comet-lake"
(import ./common/gpu/intel/comet-lake);
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-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"
(import ./common/gpu/intel/sandy-bridge);
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" (
import ./common/gpu/intel/sandy-bridge
);
common-gpu-amd = import ./common/gpu/amd;
common-gpu-amd-sea-islands = import ./common/gpu/amd/sea-islands;
common-gpu-amd-southern-islands = import ./common/gpu/amd/southern-islands;

View file

@ -5,6 +5,7 @@ let
# A patch to get both PWM fans working
# the patch has been successfully applied to 5.15 and 5.19
{
name = "mvebu-gpio-remove-hardcoded-timer-assignment";
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";
sha256 = "sha256-eQqMp0+MZd30zkl8DE89oB7czvyqCkfwF2k0EZ69jr0=";
@ -12,12 +13,14 @@ let
}
# support for Wake-On-Lan
{
name = "mvebu-gpio-add-wake-on-gpio-support";
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";
sha256 = "sha256-OrvnVCU55P0U78jdoxGRJvl29i+Rvq8AdEGSCCpxa2I=";
};
}
{
name = "helios4-dts-add-wake-on-lan-support";
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";
sha256 = "sha256-ai4161bTC22023eaVVWsvbk6fQKjkv0P4DQ4DA1Zgow=";

View file

@ -34,12 +34,17 @@ let
hash = "sha256-XiTuH40b3VJqzwygZzU0FcvMDj41Rq6IsMbm+3+QxDY=";
};
kernelPatches =
(map (patch: { inherit patch; }) (
lib.filesystem.listFilesRecursive "${reformDebianPackages}/linux/patches${lib.versions.majorMinor modDirVersion}"
))
++ [
# Use postPatch to apply patches from a directory without IFD
postPatch = ''
for patch in ${reformDebianPackages}/linux/patches${lib.versions.majorMinor modDirVersion}/*/*.patch; do
echo "Applying patch: $patch"
patch -p1 < "$patch"
done
'';
kernelPatches = [
{
name = "reform-dts";
patch = callPackage ./dtsPatch.nix {
inherit reformDebianPackages;
kernelSource = src;

View file

@ -0,0 +1,41 @@
# HP Omen 15-ek1013dx
## ACPI platform profiles
This config enables `hp-wmi`, which allows switch between cool, balanced, and performance modes on the platform EC, used by power management tools like `power-profile-daemon` and `tlp`.
# [Product support](https://support.hp.com/us-en/product/details/omen-15.6-inch-gaming-laptop-pc-15-ek1000/model/2100045567?sku=350D5UA)
```bash
$ lspci -nn
00:00.0 Host bridge [0600]: Intel Corporation 10th Gen Core Processor Host Bridge/DRAM Registers [8086:9b54] (rev 02)
00:01.0 PCI bridge [0604]: Intel Corporation 6th-10th Gen Core Processor PCIe Controller (x16) [8086:1901] (rev 02)
00:02.0 VGA compatible controller [0300]: Intel Corporation CometLake-H GT2 [UHD Graphics] [8086:9bc4] (rev 05)
00:12.0 Signal processing controller [1180]: Intel Corporation Comet Lake PCH Thermal Controller [8086:06f9]
00:14.0 USB controller [0c03]: Intel Corporation Comet Lake USB 3.1 xHCI Host Controller [8086:06ed]
00:14.2 RAM memory [0500]: Intel Corporation Comet Lake PCH Shared SRAM [8086:06ef]
00:14.3 Network controller [0280]: Intel Corporation Comet Lake PCH CNVi WiFi [8086:06f0]
00:15.0 Serial bus controller [0c80]: Intel Corporation Comet Lake PCH Serial IO I2C Controller #0 [8086:06e8]
00:15.1 Serial bus controller [0c80]: Intel Corporation Comet Lake PCH Serial IO I2C Controller #1 [8086:06e9]
00:16.0 Communication controller [0780]: Intel Corporation Comet Lake HECI Controller [8086:06e0]
00:17.0 RAID bus controller [0104]: Intel Corporation 82801 Mobile SATA Controller [RAID mode] [8086:282a]
00:1b.0 PCI bridge [0604]: Intel Corporation Comet Lake PCI Express Root Port #17 [8086:06c0] (rev f0)
00:1b.4 PCI bridge [0604]: Intel Corporation Comet Lake PCI Express Root Port #21 [8086:06ac] (rev f0)
00:1d.0 PCI bridge [0604]: Intel Corporation Device [8086:06b5] (rev f0)
00:1d.7 PCI bridge [0604]: Intel Corporation Device [8086:06b7] (rev f0)
00:1f.0 ISA bridge [0601]: Intel Corporation Comet Lake LPC Controller [8086:068d]
00:1f.3 Multimedia audio controller [0401]: Intel Corporation Comet Lake PCH cAVS [8086:06c8]
00:1f.4 SMBus [0c05]: Intel Corporation Comet Lake PCH SMBus Controller [8086:06a3]
00:1f.5 Serial bus controller [0c80]: Intel Corporation Comet Lake PCH SPI Controller [8086:06a4]
01:00.0 VGA compatible controller [0300]: NVIDIA Corporation GA104M [GeForce RTX 3070 Mobile / Max-Q] [10de:24dd] (rev a1)
01:00.1 Audio device [0403]: NVIDIA Corporation GA104 High Definition Audio Controller [10de:228b] (rev a1)
02:00.0 PCI bridge [0604]: Intel Corporation JHL7540 Thunderbolt 3 Bridge [Titan Ridge 2C 2018] [8086:15e7] (rev 06)
03:00.0 PCI bridge [0604]: Intel Corporation JHL7540 Thunderbolt 3 Bridge [Titan Ridge 2C 2018] [8086:15e7] (rev 06)
03:01.0 PCI bridge [0604]: Intel Corporation JHL7540 Thunderbolt 3 Bridge [Titan Ridge 2C 2018] [8086:15e7] (rev 06)
03:02.0 PCI bridge [0604]: Intel Corporation JHL7540 Thunderbolt 3 Bridge [Titan Ridge 2C 2018] [8086:15e7] (rev 06)
04:00.0 System peripheral [0880]: Intel Corporation JHL7540 Thunderbolt 3 NHI [Titan Ridge 2C 2018] [8086:15e8] (rev 06)
3a:00.0 USB controller [0c03]: Intel Corporation JHL7540 Thunderbolt 3 USB Controller [Titan Ridge 2C 2018] [8086:15e9] (rev 06)
3b:00.0 Non-Volatile memory controller [0108]: Toshiba Corporation XG6 NVMe SSD Controller [1179:011a]
3c:00.0 Ethernet controller [0200]: Realtek Semiconductor Co., Ltd. RTL8111/8168/8211/8411 PCI Express Gigabit Ethernet Controller [10ec:8168] (rev 16)
3d:00.0 SD Host controller [0805]: Genesys Logic, Inc GL9750 SD Host Controller [17a0:9750] (rev 01)
```

24
omen/15-ek1013dx/default.nix Executable file
View file

@ -0,0 +1,24 @@
{ lib, pkgs, ... }:
{
imports = [
../../common/cpu/intel/comet-lake
../../common/gpu/nvidia/prime.nix
../../common/gpu/nvidia/ampere
../../common/pc/laptop
../../common/pc/laptop/ssd
];
# Enables ACPI platform profiles
boot = lib.mkIf (lib.versionAtLeast pkgs.linux.version "6.1") {
kernelModules = [ "hp-wmi" ];
};
# Enables Wifi and Bluetooth
hardware.enableRedistributableFirmware = true;
hardware.nvidia.prime = {
nvidiaBusId = "PCI:1:0:0";
intelBusId = "PCI:0:2:0";
};
}

View file

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

View file

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

View file

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

View file

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

View file

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