Mirror of NixOS-hardware
You can not select more than 25 topics Topics must start with a letter or number, can include dashes ('-') and can be up to 35 characters long.
Jörg Thalheim cc353d439e
Merge pull request #176 from Mic92/flakes
3 days ago
.github/workflows replace travis with github action 2 weeks ago
acer/aspire/4810t treewide: mark things that have to be done 2 years ago
airis/n990 treewide: abstract away common configs into common/ 2 years ago
apple apple: Add support for MacBook Air 3,X (#91) 8 months ago
asus asus/m60j-jx041v: drop (README only) 2 years ago
audio-gd treewide: mark things that have to be done 2 years ago
beagleboard/pocketbeagle beagleboard/pocketbeagle: init 1 year ago
common pc/laptop: remove redundant cpuFreqGovernor setting 1 month ago
dell Merge pull request #174 from bbigras/9343 3 days ago
google/pixelbook google/pixelbook: init 2 months ago
inversepath/usbarmory inversepath/usbarmory: fix evaluation 2 years ago
lenovo lenovo/thinkpad/x1/7th-gen: init 1 month ago
microsoft treewide: mark things that have to be done 2 years ago
pcengines/apu pcengines/apu: expose GRUB over serial 1 year ago
purism/librem Create separate directories for librem 13v3 and 15v3 3 months ago
raspberry-pi/2 Add parallel test runner 4 months ago
samsung/np900x3c treewide: mark things that have to be done 2 years ago
supermicro treewide: only ever set unmergable options via lib.mkDefault 2 years ago
tests tests: hide evaluation command behind verbose flag 1 month ago
toshiba/swanky toshiba/swanky: switch to default kernels 1 year ago
tuxedo/infinitybook/v4 Add InfinityBook v4 (#159) 2 months ago
.gitignore Add .gitignore adapted from NixPkgs 3 years ago
CODEOWNERS dell/xps/13-9380: init (#97) 1 year ago
CONTRIBUTING.md Suggestions for CONTRIBUTING 1 year ago
COPYING LICENSE -> COPYING 1 year ago
README.md add flake support 3 days ago
default.nix add dummy default.nix 1 year ago
flake.nix add flake support 3 days ago

README.md

NixOS profiles to optimize settings for different hardware.

Setup

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
];

Adding via 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/flakes/flake.nix
        nixos-hardware.nixosModules.dell-xps-13-9380
      ];
    };
  };
}

List of Profiles

See code for all available configurations.

Model Path
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 12,1 <nixos-hardware/apple/macbook-pro/12-1>
BeagleBoard PocketBeagle <nixos-hardware/beagleboard/pocketbeagle>
Dell Latitude 3480 <nixos-hardware/dell/latitude/3480>
Dell XPS E7240 <nixos-hardware/dell/e7240>
Dell XPS 13 7390 <nixos-hardware/dell/xps/13-7390>
Dell XPS 13 9343 <nixos-hardware/dell/xps/13-9343>
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 9550 <nixos-hardware/dell/xps/15-9550>
Dell XPS 15 9560 <nixos-hardware/dell/xps/15-9560>
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>
Google Pixelbook <nixos-hardware/google/pixelbook>
Inverse Path USB armory <nixos-hardware/inversepath/usbarmory>
Lenovo IdeaPad Z510 <nixos-hardware/lenovo/ideapad/z510>
Lenovo ThinkPad E495 <nixos-hardware/lenovo/thinkpad/e495>
Lenovo ThinkPad L13 <nixos-hardware/lenovo/thinkpad/l13>
Lenovo ThinkPad P53 <nixos-hardware/lenovo/thinkpad/p53>
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 T440s <nixos-hardware/lenovo/thinkpad/t440s>
Lenovo ThinkPad T440p <nixos-hardware/lenovo/thinkpad/t440p>
Lenovo ThinkPad T450s <nixos-hardware/lenovo/thinkpad/t450s>
Lenovo ThinkPad T460s <nixos-hardware/lenovo/thinkpad/t460s>
Lenovo ThinkPad T470s <nixos-hardware/lenovo/thinkpad/t470s>
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 X140e <nixos-hardware/lenovo/thinkpad/x140e>
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 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 Extreme Gen 2 <nixos-hardware/lenovo/thinkpad/x1-extreme/gen2>
Microsoft Surface Pro 3 <nixos-hardware/microsoft/surface-pro/3>
PC Engines APU <nixos-hardware/pcengines/apu>
Raspberry Pi 2 <nixos-hardware/raspberry-pi/2>
Samsung Series 9 NP900X3C <nixos-hardware/samsung/np900x3c>
Purism Librem 13v3 <nixos-hardware/purism/librem/13v3>
[Purism Librem 15v3][] <nixos-hardware/purism/librem/15v3>
Supermicro A1SRi-2758F <nixos-hardware/supermicro/a1sri-2758f>
Supermicro X10SLL-F <nixos-hardware/supermicro/x10sll-f>
Toshiba Chromebook 2 swanky <nixos-hardware/toshiba/swanky>
Tuxedo InfinityBook v4 <nixos-hardware/tuxedo/infinitybook/v4>

How to contribute a new device profile

  1. Add your device profile expression in the appropriate directory
  2. Link it in the table in README.md
  3. Run ./tests/run.py to test it. The test script script will parse all the profiles from the README.md