flake

nixos-hardware

nixos-hardware

Flake
README.md

NixOS profiles to optimize settings for different hardware.

Setup

Using channels

Add and update nixos-hardware channel:

$ sudo nix-channel --add https://github.com/NixOS/nixos-hardware/archive/master.tar.gz nixos-hardware
$ sudo nix-channel --update

Then import an appropriate profile path from the table below. For example, to enable ThinkPad X220 profile, your imports in /etc/nixos/configuration.nix should look like:

imports = [
  <nixos-hardware/lenovo/thinkpad/x220>
  ./hardware-configuration.nix
];

New updates to the expressions here will be fetched when you update the channel.

Using nix flakes support

There is also experimental flake support. In your /etc/nixos/flake.nix add the following:

{
  description = "NixOS configuration with flakes";
  inputs.nixos-hardware.url = "github:NixOS/nixos-hardware/master";

  outputs = { self, nixpkgs, nixos-hardware }: {
    # replace <your-hostname> with your actual hostname
    nixosConfigurations.<your-hostname> = nixpkgs.lib.nixosSystem {
      # ...
      modules = [
        # ...
        # add your model from this list: https://github.com/NixOS/nixos-hardware/blob/master/flake.nix
        nixos-hardware.nixosModules.dell-xps-13-9380
      ];
    };
  };
}

Using fetchGit

You can fetch the git repository directly:

imports = [
  "${builtins.fetchGit { url = "https://github.com/NixOS/nixos-hardware.git"; }}/lenovo/thinkpad/x220"
];

Unlike the channel, this will update the git repository on a rebuild. However, you can easily pin to a particular revision if you desire more stability.

How to contribute a new device profile

See CONTRIBUTING.md.

List of Profiles

See code for all available configurations.

ModelPath
Acer Aspire 4810T<nixos-hardware/acer/aspire/4810t>
Airis N990<nixos-hardware/airis/n990>
Apple MacBook Air 3,X<nixos-hardware/apple/macbook-air/3>
Apple MacBook Air 4,X<nixos-hardware/apple/macbook-air/4>
Apple MacBook Air 6,X<nixos-hardware/apple/macbook-air/6>
Apple MacBook Pro 10,1<nixos-hardware/apple/macbook-pro/10-1>
Apple MacBook Pro 11,5<nixos-hardware/apple/macbook-pro/11-5>
Apple MacBook Pro 12,1<nixos-hardware/apple/macbook-pro/12-1>
Asus ROG Strix G733QS<nixos-hardware/asus/rog-strix/g733qs>
Asus ROG Zephyrus G14 GA401<nixos-hardware/asus/zephyrus/ga401>
Asus ROG Zephyrus G15 GA503<nixos-hardware/asus/zephyrus/ga503>
Asus TUF FX504GD<nixos-hardware/asus/fx504gd>
BeagleBoard PocketBeagle<nixos-hardware/beagleboard/pocketbeagle>
Dell G3 3779<nixos-hardware/dell/g3/3779>
Dell Inspiron 5509<nixos-hardware/dell/inspiron/5509>
Dell Inspiron 5515<nixos-hardware/dell/inspiron/5515>
Dell Inspiron 7405<nixos-hardware/dell/inspiron/7405>
Dell Latitude 3480<nixos-hardware/dell/latitude/3480>
Dell Latitude 5520<nixos-hardware/dell/latitude/5520>
Dell Latitude 7490<nixos-hardware/dell/latitude/7490>
Dell Poweredge R7515<nixos-hardware/dell/poweredge/r7515>
Dell Precision 5530<nixos-hardware/dell/precision/5530>
Dell XPS 13 7390<nixos-hardware/dell/xps/13-7390>
Dell XPS 13 9310<nixos-hardware/dell/xps/13-9310>
Dell XPS 13 9343<nixos-hardware/dell/xps/13-9343>
Dell XPS 13 9350<nixos-hardware/dell/xps/13-9350>
Dell XPS 13 9360<nixos-hardware/dell/xps/13-9360>
Dell XPS 13 9370<nixos-hardware/dell/xps/13-9370>
Dell XPS 13 9380<nixos-hardware/dell/xps/13-9380>
Dell XPS 15 7590<nixos-hardware/dell/xps/15-7590>
Dell XPS 15 9500, nvidia<nixos-hardware/dell/xps/15-9500/nvidia>
Dell XPS 15 9500<nixos-hardware/dell/xps/15-9500>
Dell XPS 15 9550, nvidia<nixos-hardware/dell/xps/15-9550/nvidia>
Dell XPS 15 9550<nixos-hardware/dell/xps/15-9550>
Dell XPS 15 9560, intel only<nixos-hardware/dell/xps/15-9560/intel>
Dell XPS 15 9560, nvidia only<nixos-hardware/dell/xps/15-9560/nvidia>
Dell XPS 15 9560<nixos-hardware/dell/xps/15-9560>
Dell XPS 17 9700, intel<nixos-hardware/dell/xps/17-9700/intel
Dell XPS 17 9700, nvidia<nixos-hardware/dell/xps/17-9700/nvidia>
Dell XPS 17 9710, intel only<nixos-hardware/dell/xps/17-9710/intel>
Dell XPS E7240<nixos-hardware/dell/e7240>
Framework<nixos-hardware/framework>
Framework 12th Gen Intel Core<nixos-hardware/framework/12th-gen-intel>
FriendlyARM NanoPC-T4<nixos-hardware/friendlyarm/nanopc-t4>
GPD MicroPC<nixos-hardware/gpd/micropc>
Google Pixelbook<nixos-hardware/google/pixelbook>
HP Elitebook 2560p<nixos-hardware/hp/elitebook/2560p>
Intel NUC 8i7BEH<nixos-hardware/intel/nuc/8i7beh>
Lenovo IdeaPad Gaming 3 15arh05<nixos-hardware/lenovo/ideapad/15arh05>
Lenovo IdeaPad Z510<nixos-hardware/lenovo/ideapad/z510>
Lenovo Legion 5 15arh05h<nixos-hardware/lenovo/legion/15arh05h>
Lenovo Legion 7 Slim 15ach6<nixos-hardware/lenovo/legion/15ach6>
Lenovo ThinkPad E14 (AMD)<nixos-hardware/lenovo/thinkpad/e14/amd>
Lenovo ThinkPad E14 (Intel)<nixos-hardware/lenovo/thinkpad/e14/intel>
Lenovo ThinkPad E470<nixos-hardware/lenovo/thinkpad/e470>
Lenovo ThinkPad E495<nixos-hardware/lenovo/thinkpad/e495>
Lenovo ThinkPad L13 Yoga<nixos-hardware/lenovo/thinkpad/l13/yoga>
Lenovo ThinkPad L13<nixos-hardware/lenovo/thinkpad/l13>
Lenovo ThinkPad L14 (AMD)<nixos-hardware/lenovo/thinkpad/l14/amd>
Lenovo ThinkPad L14 (Intel)<nixos-hardware/lenovo/thinkpad/l14/intel>
Lenovo ThinkPad P1 Gen 3<nixos-hardware/lenovo/thinkpad/p1/3th-gen>
Lenovo ThinkPad P14s AMD Gen 2<nixos-hardware/lenovo/thinkpad/p14s/amd/gen2>
Lenovo ThinkPad P16s AMD Gen 1<nixos-hardware/lenovo/thinkpad/p16s/amd/gen1>
Lenovo ThinkPad P1<nixos-hardware/lenovo/thinkpad/p1>
Lenovo ThinkPad P50<nixos-hardware/lenovo/thinkpad/p50>
Lenovo ThinkPad P51<nixos-hardware/lenovo/thinkpad/p51>
Lenovo ThinkPad P52<nixos-hardware/lenovo/thinkpad/p52>
Lenovo ThinkPad P53<nixos-hardware/lenovo/thinkpad/p53>
Lenovo ThinkPad T14 AMD Gen 1<nixos-hardware/lenovo/thinkpad/t14/amd/gen1>
Lenovo ThinkPad T14 AMD Gen 2<nixos-hardware/lenovo/thinkpad/t14/amd/gen2>
Lenovo ThinkPad T14 AMD Gen 3<nixos-hardware/lenovo/thinkpad/t14/amd/gen3>
Lenovo ThinkPad T14<nixos-hardware/lenovo/thinkpad/t14>
Lenovo ThinkPad T14s AMD Gen 1<nixos-hardware/lenovo/thinkpad/t14s/amd/gen1>
Lenovo ThinkPad T14s<nixos-hardware/lenovo/thinkpad/t14s>
Lenovo ThinkPad T410<nixos-hardware/lenovo/thinkpad/t410>
Lenovo ThinkPad T420<nixos-hardware/lenovo/thinkpad/t420>
Lenovo ThinkPad T430<nixos-hardware/lenovo/thinkpad/t430>
Lenovo ThinkPad T440p<nixos-hardware/lenovo/thinkpad/t440p>
Lenovo ThinkPad T440s<nixos-hardware/lenovo/thinkpad/t440s>
Lenovo ThinkPad T450s<nixos-hardware/lenovo/thinkpad/t450s>
Lenovo ThinkPad T460<nixos-hardware/lenovo/thinkpad/t460>
Lenovo ThinkPad T460p<nixos-hardware/lenovo/thinkpad/t460p>
Lenovo ThinkPad T460s<nixos-hardware/lenovo/thinkpad/t460s>
Lenovo ThinkPad T470s<nixos-hardware/lenovo/thinkpad/t470s>
Lenovo ThinkPad T480<nixos-hardware/lenovo/thinkpad/t480>
Lenovo ThinkPad T480s<nixos-hardware/lenovo/thinkpad/t480s>
Lenovo ThinkPad T490<nixos-hardware/lenovo/thinkpad/t490>
Lenovo ThinkPad T495<nixos-hardware/lenovo/thinkpad/t495>
Lenovo ThinkPad T550<nixos-hardware/lenovo/thinkpad/t550>
Lenovo ThinkPad T590<nixos-hardware/lenovo/thinkpad/t590>
Lenovo ThinkPad X1 Yoga<nixos-hardware/lenovo/thinkpad/x1/yoga>
Lenovo ThinkPad X1 (6th Gen)<nixos-hardware/lenovo/thinkpad/x1/6th-gen>
Lenovo ThinkPad X1 (7th Gen)<nixos-hardware/lenovo/thinkpad/x1/7th-gen>
Lenovo ThinkPad X1 (9th Gen)<nixos-hardware/lenovo/thinkpad/x1/9th-gen>
Lenovo ThinkPad X1 Extreme Gen 2<nixos-hardware/lenovo/thinkpad/x1-extreme/gen2>
Lenovo ThinkPad X1 Extreme Gen 4<nixos-hardware/lenovo/thinkpad/x1-extreme/gen4>
Lenovo ThinkPad X13 Yoga<nixos-hardware/lenovo/thinkpad/x13/yoga>
Lenovo ThinkPad X13<nixos-hardware/lenovo/thinkpad/x13>
Lenovo ThinkPad X140e<nixos-hardware/lenovo/thinkpad/x140e>
Lenovo ThinkPad X200s<nixos-hardware/lenovo/thinkpad/x200s>
Lenovo ThinkPad X220<nixos-hardware/lenovo/thinkpad/x220>
Lenovo ThinkPad X230<nixos-hardware/lenovo/thinkpad/x230>
Lenovo ThinkPad X250<nixos-hardware/lenovo/thinkpad/x250>
Lenovo ThinkPad X260<nixos-hardware/lenovo/thinkpad/x260>
Lenovo ThinkPad X270<nixos-hardware/lenovo/thinkpad/x270>
Lenovo ThinkPad X280<nixos-hardware/lenovo/thinkpad/x280>
Lenovo ThinkPad Z Series<nixos-hardware/lenovo/thinkpad/z>
Lenovo ThinkPad Z13<nixos-hardware/lenovo/thinkpad/z/z13>
MSI GS60 2QE<nixos-hardware/msi/gs60>
MSI GL62/CX62<nixos-hardware/msi/gl62>
Microsoft Surface Pro 3<nixos-hardware/microsoft/surface-pro/3>
Microsoft Surface Range<nixos-hardware/microsoft/surface>
Omen en00015p<nixos-hardware/omen/en00015p>
One-Netbook OneNetbook 4<nixos-hardware/onenetbook/4>
PC Engines APU<nixos-hardware/pcengines/apu>
PINE64 Pinebook Pro<nixos-hardware/pine64/pinebook-pro>
Purism Librem 13v3<nixos-hardware/purism/librem/13v3>
Purism Librem 15v3<nixos-hardware/purism/librem/15v3>
Raspberry Pi 2<nixos-hardware/raspberry-pi/2>
Raspberry Pi 4<nixos-hardware/raspberry-pi/4>
Samsung Series 9 NP900X3C<nixos-hardware/samsung/np900x3c>
Supermicro A1SRi-2758F<nixos-hardware/supermicro/a1sri-2758f>
Supermicro M11SDV-8C-LN4F<nixes-hardware/supermicro/m11sdv-8c-ln4f>
Supermicro X10SLL-F<nixos-hardware/supermicro/x10sll-f>
Supermicro X12SCZ-TLN4F<nixos-hardware/supermicro/x12scz-tln4f>
System76 (generic)<nixos-hardware/system76>
System76 Darter Pro 6<nixos-hardware/system76/darp6>
Toshiba Chromebook 2 swanky<nixos-hardware/toshiba/swanky>
Tuxedo InfinityBook v4<nixos-hardware/tuxedo/infinitybook/v4>.