treewide: only ever set unmergable options via lib.mkDefault
Also extract documentation from raspberry-pi/2/ profile.
This commit is contained in:
parent
a74c9bdaf8
commit
3743ae21f5
|
@ -1,3 +1,5 @@
|
|||
{ lib, ... }:
|
||||
|
||||
{
|
||||
boot = {
|
||||
initrd.kernelModules = [ "ata_piix" ];
|
||||
|
@ -15,12 +17,12 @@
|
|||
hardware.opengl.driSupport = false;
|
||||
|
||||
services.xserver = {
|
||||
enable = true;
|
||||
defaultDepth = 24;
|
||||
videoDriver = "intel";
|
||||
autorun = true;
|
||||
enable = lib.mkDefault true;
|
||||
defaultDepth = lib.mkDefault 24;
|
||||
videoDrivers = [ "intel" ];
|
||||
autorun = lib.mkDefault true;
|
||||
synaptics = {
|
||||
enable = true;
|
||||
enable = lib.mkDefault true;
|
||||
dev = "/dev/input/event8";
|
||||
};
|
||||
};
|
||||
|
|
|
@ -1,9 +1,8 @@
|
|||
{ config, pkgs, ... }:
|
||||
{ lib, ... }:
|
||||
|
||||
{
|
||||
hardware.cpu.intel.updateMicrocode = true;
|
||||
hardware.cpu.intel.updateMicrocode = lib.mkDefault true;
|
||||
|
||||
# see https://github.com/NixOS/nixpkgs/issues/18356
|
||||
# found buggy driver with method https://wiki.ubuntu.com/DebuggingKernelSuspend
|
||||
# https://github.com/NixOS/nixpkgs/issues/18356
|
||||
boot.blacklistedKernelModules = [ "nouveau" ];
|
||||
}
|
||||
|
|
|
@ -1,8 +1,8 @@
|
|||
{ ... }:
|
||||
{ lib, ... }:
|
||||
|
||||
{
|
||||
# to use the type cover in the initrd
|
||||
boot.kernelModules = [ "hid-microsoft" ];
|
||||
|
||||
networking.wireless.enable = true;
|
||||
networking.wireless.enable = lib.mkDefault true;
|
||||
}
|
||||
|
|
19
raspberry-pi/2/README.txt
Normal file
19
raspberry-pi/2/README.txt
Normal file
|
@ -0,0 +1,19 @@
|
|||
imported from https://nixos.org/wiki/Raspberry_Pi_2 **
|
||||
|
||||
# Status
|
||||
The code in master as of June 2015 should be able to prepare a bootable NixOS for Raspberry PI 2.
|
||||
|
||||
There are still some drawbacks:
|
||||
|
||||
NixOS does not provide a /boot/config.txt (the FAT32 partition).
|
||||
Making NixOS work in the Raspberry PI 2 is mainly the result of the recent work of ambro718, Dezgeg and viric (#nixos@irc.freenode.net).
|
||||
|
||||
# Download
|
||||
If you want to test, you can flash this 4GB SD image (DOS partition table + fat32 + ext4 rootfs):
|
||||
magnet:?xt=urn:btih:0def3f6acb3bceddb22cb24098f58e40e2853ec2&dn=rpi2-nixos-4b09501f2-img.xz&tr=udp%3A%2F%2Fopen.demonii.com%3A1337&tr=udp%3A%2F%2Ftracker.openbittorrent.com%3A80
|
||||
|
||||
Then you should be able to nixos-rebuild any configuration.nix changes.
|
||||
|
||||
The image is the result of a "nixos-install" alone. No root password has been set, and it does not include a nixpkgs checkout or channel.
|
||||
|
||||
In fact I (viric) created the FS into a NBD, not a real SD, to create this image.
|
|
@ -1,64 +1,32 @@
|
|||
/** imported from https://nixos.org/wiki/Raspberry_Pi_2 **
|
||||
|
||||
# Status
|
||||
The code in master as of June 2015 should be able to prepare a bootable NixOS for Raspberry PI 2.
|
||||
|
||||
There are still some drawbacks:
|
||||
|
||||
NixOS does not provide a /boot/config.txt (the FAT32 partition).
|
||||
Making NixOS work in the Raspberry PI 2 is mainly the result of the recent work of ambro718, Dezgeg and viric (#nixos@irc.freenode.net).
|
||||
|
||||
# Download
|
||||
If you want to test, you can flash this 4GB SD image (DOS partition table + fat32 + ext4 rootfs):
|
||||
magnet:?xt=urn:btih:0def3f6acb3bceddb22cb24098f58e40e2853ec2&dn=rpi2-nixos-4b09501f2-img.xz&tr=udp%3A%2F%2Fopen.demonii.com%3A1337&tr=udp%3A%2F%2Ftracker.openbittorrent.com%3A80
|
||||
|
||||
Then you should be able to nixos-rebuild any configuration.nix changes.
|
||||
|
||||
The image is the result of a "nixos-install" alone. No root password has been set, and it does not include a nixpkgs checkout or channel.
|
||||
|
||||
In fact I (viric) created the FS into a NBD, not a real SD, to create this image.
|
||||
|
||||
*/
|
||||
|
||||
{ pkgs, config, lib, ...}:
|
||||
{ lib, pkgs, ...}:
|
||||
|
||||
{
|
||||
boot.consoleLogLevel = 7;
|
||||
boot.loader.grub.enable = false;
|
||||
boot.loader.generationsDir.enable = false;
|
||||
boot.loader.raspberryPi.enable = true;
|
||||
boot.loader.raspberryPi.version = 2;
|
||||
boot.extraTTYs = [ "ttyAMA0" ];
|
||||
boot.kernelPackages = pkgs.linuxPackages_rpi;
|
||||
boot.kernelParams = [
|
||||
#"coherent_pool=6M"
|
||||
#"smsc95xx.turbo_mode=N"
|
||||
"dwc_otg.lpm_enable=0"
|
||||
"console=ttyAMA0,115200"
|
||||
"rootwait"
|
||||
#"console=tty1"
|
||||
"elevator=deadline"
|
||||
];
|
||||
|
||||
# cpufrequtils doesn't build on ARM
|
||||
powerManagement.enable = false;
|
||||
|
||||
services.xserver.enable = false;
|
||||
services.openssh.enable = true;
|
||||
|
||||
services.nixosManual.enable = false;
|
||||
|
||||
nixpkgs.config = {
|
||||
# Since https://github.com/NixOS/nixpkgs/commit/f0b634c7e838cdd65ac6f73933c99af3f38d0fa8
|
||||
nixpkgs.config.platform = lib.systems.platforms.raspberrypi2;
|
||||
# Earlier than that, use this:
|
||||
# platform = pkgs.platforms.raspberrypi2;
|
||||
# Also be aware of this issue if you're encountering infinite recursion:
|
||||
# https://github.com/NixOS/nixpkgs/issues/24170
|
||||
|
||||
allowUnfree = true;
|
||||
boot = {
|
||||
consoleLogLevel = lib.mkDefault 7;
|
||||
extraTTYs = [ "ttyAMA0" ];
|
||||
kernelPackages = lib.mkDefault pkgs.linuxPackages_rpi;
|
||||
kernelParams = [
|
||||
"dwc_otg.lpm_enable=0"
|
||||
"console=ttyAMA0,115200"
|
||||
"rootwait"
|
||||
"elevator=deadline"
|
||||
];
|
||||
loader = {
|
||||
grub.enable = lib.mkDefault false;
|
||||
generationsDir.enable = lib.mkDefault false;
|
||||
raspberryPi = {
|
||||
enable = lib.mkDefault true;
|
||||
version = lib.mkDefault 2;
|
||||
};
|
||||
};
|
||||
};
|
||||
|
||||
nix.buildCores = 4;
|
||||
nix.binaryCaches = [ ];
|
||||
|
||||
nixpkgs.config.platform = lib.systems.platforms.raspberrypi2;
|
||||
|
||||
# cpufrequtils doesn't build on ARM
|
||||
powerManagement.enable = lib.mkDefault false;
|
||||
|
||||
services.openssh.enable = lib.mkDefault true;
|
||||
}
|
||||
|
|
|
@ -1,9 +1,7 @@
|
|||
{ config, pkgs, ... }:
|
||||
|
||||
{
|
||||
environment.systemPackages = with pkgs; [
|
||||
ipmitool
|
||||
];
|
||||
environment.systemPackages = with pkgs; [ ipmitool ];
|
||||
|
||||
boot.kernelModules = [ "jc42" "ipmi_devintf" "ipmi_si" "tpm_rng" ];
|
||||
|
||||
|
|
Loading…
Reference in a new issue