From caef1f56e99ba963254ff2bb30c9ea062d5f21d8 Mon Sep 17 00:00:00 2001 From: Emery Hemingway Date: Fri, 26 Feb 2016 11:29:48 +0100 Subject: [PATCH] import https://nixos.org/wiki/Raspberry_Pi_2 Fixes https://github.com/NixOS/nixpkgs/issues/13175 --- raspberry_pi/rpi2.nix | 58 +++++++++++++++++++++++++++++++++++++++++++ 1 file changed, 58 insertions(+) create mode 100644 raspberry_pi/rpi2.nix diff --git a/raspberry_pi/rpi2.nix b/raspberry_pi/rpi2.nix new file mode 100644 index 0000000..5744885 --- /dev/null +++ b/raspberry_pi/rpi2.nix @@ -0,0 +1,58 @@ +/** 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, ...}: + +{ + 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 = { + platform = pkgs.platforms.raspberrypi2; + allowUnfree = true; + }; + + nix.buildCores = 4; + nix.binaryCaches = [ ]; +} \ No newline at end of file