mirror of
https://github.com/NixOS/nixos-hardware
synced 2024-11-23 03:19:42 +01:00
treewide: modules -> profiles, separate dirs, list in README (#29)
Enforce proper naming: all paths are lowercase and hyphen-separated, if there's a line of models (aspire, macbook-pro, thinkpad) it becomes a subdirectory. Documentation for profiles is moved to README files in respective directories. Add an Org mode table that lists all available profiles and their paths. Instead of fetching repo locally, use a Nix channel. Making hardware profiles read-only should improve quality and amount of participation long-term.
This commit is contained in:
parent
3f2fbacb21
commit
3c9f432a71
31 changed files with 53 additions and 28 deletions
24
README.md
24
README.md
|
@ -1,24 +0,0 @@
|
|||
A collection of NixOS modules covering hardware quirks.
|
||||
|
||||
## Usage
|
||||
The simplest way to use this repo for now is to clone locally and include by path:
|
||||
``` nix
|
||||
{ config, pkgs, ... }:
|
||||
|
||||
{
|
||||
imports =
|
||||
[ /home/user/nixos-hardware/acme/thunkpad-2000.nix ];
|
||||
}
|
||||
```
|
||||
|
||||
Modules should favor usability and stability, so performance hacks
|
||||
should be activated by an additional a NixOS option or conservative
|
||||
and performance configs can be declared in seperate modules.
|
||||
|
||||
Because modules can only be tested with the appropriate hardware,
|
||||
quality assurance is up to **you**.
|
||||
|
||||
## Simple tips and tricks
|
||||
|
||||
### Disable PC speaker
|
||||
```boot.blacklistedKernelModules = [ "pcspkr" ];```
|
47
README.org
Normal file
47
README.org
Normal file
|
@ -0,0 +1,47 @@
|
|||
NixOS profiles covering hardware quirks.
|
||||
|
||||
Add a new channel:
|
||||
|
||||
: $ sudo nix-channel --add https://github.com/NixOS/nixos-hardware/archive/master.tar.gz nixos-hardware
|
||||
: $ sudo nix-channel --update nixos-hardware
|
||||
|
||||
Then add an appropriate profile path to ~imports~ in
|
||||
~/etc/nixos/configuration.nix~. Currently available profiles:
|
||||
|
||||
| Model | Path |
|
||||
|---------------------------+--------------------------------------------|
|
||||
| Acer Aspire 4810T | ~<nixos-hardware/acer/aspire/4810t>~ |
|
||||
| Acer C720 | ~<nixos-hardware/acer/c720>~ |
|
||||
| Airis N990 | ~<nixos-hardware/airis/n990>~ |
|
||||
| Apple MacBook Pro 10,1 | ~<nixos-hardware/apple/macbook-pro/10-1>~ |
|
||||
| Apple MacBook Pro 12,1 | ~<nixos-hardware/apple/macbook-pro/12-1>~ |
|
||||
| Dell XPS 15 9550 | ~<nixos-hardware/dell/xps/15-9550>~ |
|
||||
| Inverse Path USB armory | ~<nixos-hardware/inversepath/usbarmory>~ |
|
||||
| Lenovo IdeaPad Z510 | ~<nixos-hardware/lenovo/ideapad/z510>~ |
|
||||
| Lenovo ThinkPad T410 | ~<nixos-hardware/lenovo/thinkpad/t410>~ |
|
||||
| Lenovo ThinkPad T440p | ~<nixos-hardware/lenovo/thinkpad/t440p>~ |
|
||||
| Lenovo ThinkPad T460s | ~<nixos-hardware/lenovo/thinkpad/t460s>~ |
|
||||
| Lenovo ThinkPad X140e | ~<nixos-hardware/lenovo/thinkpad/x140e>~ |
|
||||
| Lenovo ThinkPad X220 | ~<nixos-hardware/lenovo/thinkpad/x220>~ |
|
||||
| Microsoft Surface Pro 3 | ~<nixos-hardware/microsoft/surface-pro/3>~ |
|
||||
| Raspberry Pi 2 | ~<nixos-hardware/raspberry-pi/2>~ |
|
||||
| Samsung Series 9 NP900X3C | ~<nixos-hardware/samsung/np900x3c>~ |
|
||||
| Supermicro A1SRi-2758F | ~<nixos-hardware/supermicro/a1sri-2758f>~ |
|
||||
| Supermicro X10SLL-F | ~<nixos-hardware/supermicro/x10sll-f>~ |
|
||||
|
||||
For example, to enable ThinkPad X220 profile, your ~imports~ should look like:
|
||||
|
||||
: imports = [ <nixos-hardware/lenovo/thinkpad/x220> ./hardware-configuration.nix ];
|
||||
|
||||
Profiles should favor usability and stability, so performance hacks should be
|
||||
activated by an additional NixOS option or conservative and performance configs
|
||||
can be declared in seperate profiles.
|
||||
|
||||
Because profiles can only be tested with the appropriate hardware, quality
|
||||
assurance is up to *you*.
|
||||
|
||||
** Simple tips and tricks
|
||||
|
||||
*** Disable PC speaker
|
||||
|
||||
: boot.blacklistedKernelModules = [ "pcspkr" ];
|
|
@ -1,5 +1,7 @@
|
|||
# Use this module if you use a realtek 18812au based wifi dongle, like ASUS Wireless-AC1300
|
||||
|
||||
{ pkgs, ... }:
|
||||
|
||||
{
|
||||
boot.extraModulePackages = [ pkgs.linuxPackages.rtl8812au ];
|
||||
boot.kernelModules = [ "8812au" ];
|
||||
|
|
|
@ -1,7 +1,7 @@
|
|||
{ config, pkgs, ... }:
|
||||
|
||||
{
|
||||
imports = [ ./general-intel.nix ];
|
||||
imports = [ ../intel.nix ];
|
||||
|
||||
boot = {
|
||||
kernelParams = [
|
|
@ -1,7 +1,7 @@
|
|||
{ config, pkgs, ... }:
|
||||
|
||||
{
|
||||
imports = [ ./general-intel.nix ];
|
||||
imports = [ ../intel.nix ];
|
||||
|
||||
boot = {
|
||||
extraModprobeConfig = ''
|
|
@ -1,7 +1,7 @@
|
|||
{ config, lib, pkgs, ... }:
|
||||
|
||||
{
|
||||
imports = [ ./general.nix ];
|
||||
imports = [ ../common.nix ];
|
||||
|
||||
boot = {
|
||||
# wireless
|
|
@ -1,7 +1,7 @@
|
|||
{ config, pkgs, ... }:
|
||||
|
||||
{
|
||||
imports = [ ./general-intel.nix ];
|
||||
imports = [ ../intel.nix ];
|
||||
|
||||
# TPM chip countains a RNG
|
||||
security.rngd.enable = true;
|
Loading…
Reference in a new issue