Questa è una versione aggiornata della mia risposta iniziale, dovrebbe funzionare per NixOS 15.09. Contiene modifiche minori rispetto alla versione iniziale che ho usato per installare NixOS 14.04 con qualche aiuto dalla mailing list di nix-dev .
Configurazione iniziale
MacBook 5,1 (2008) con Mac OS 10.9 e disco rigido partizionati come segue:
a) 200 MB di partizione di sistema EFI etichettata "EFI".
b) Due partizioni utilizzate da Mac OS (10.9).
c) Due partizioni ext4 vuote etichettate "nixos" e "home" e una partizione Linux Swap etichettata "swap".
Ho usato i seguenti strumenti:
Fdisk GPT (da sotto Mac OS),
mkfs.ext4
(da sotto NixOS su un'unità USB avviabile),
mkswap
.
Ecco la mia tabella delle partizioni stampata da gdisk
:
Number Start (sector) End (sector) Size Code Name
1 40 409639 200.0 MiB EF00 EFI System Partition
2 409640 104603575 49.7 GiB AF00 Untitled
3 104865720 261418767 74.7 GiB AF00 Untitled
4 261680912 287071535 12.1 GiB 8302 home
5 287071536 307888927 9.9 GiB 8300 nixos
7 307888928 312581774 2.2 GiB 8200 swap
Connessione Internet via cavo Ethernet.
Un'unità USB formattata come FAT con MBR ed etichettata NIXOS_ISO
, con una copia (trascinata e rilasciata) del contenuto dell'immagine ISO 64.09 a 64 bit di NixOS (Live CD o Minimal).
L'etichetta dell'unità USB deve essere NIXOS_ISO
(ho provato FLASH
una volta, non ha funzionato).
Sembra che le immagini ISO di NixOS 15.09 non possano essere montate su Mac OS. Se l'immagine non può essere montata, è sufficiente estrarne il contenuto. Potrei estrarre il contenuto dell'immagine ISO con l' archiviatore di file Keka .
Installazione
Avviare dall'unità USB tenendo premuto il Alt/Optiontasto al riavvio e selezionando USB EFI Boot . Accedi come "root" (senza password). Assicurarsi che la connessione Internet funzioni. La connessione a Internet è necessaria per l'installazione.
Eseguire
swapon /dev/disk/by-label/swap
mount /dev/disk/by-label/nixos /mnt
mkdir /mnt/boot
mkdir /mnt/home
mount /dev/disk/by-label/EFI /mnt/boot
mount /dev/disk/by-label/home /mnt/home
nixos-generate-config --root /mnt
Inserisci
nixpkgs.config.allowUnfree = true;
nel file /mnt/etc/nixos/configuration.nix generato .
Eseguire
nixos-install
Reboot:
reboot
Avvio
( Questa è stata la mia esperienza con 14.04. )
Dopo il riavvio, il computer si è avviato in NixOS. Ho riavviato di nuovo, tenendo questa volta la Alt/Optionchiave. Il menu di avvio mostrava due elementi "EFI Boot" identici. Si è scoperto che uno di questi è Mac OS e l'altro è NixOS. (Strano - prima che quello con Mac OS prendesse il nome dalla partizione Mac OS.) Ok.
Ho montato e ispezionato il contenuto della partizione di sistema EFI per curiosità:
§ tree /Volumes/EFI/
.
├── EFI
│ ├── APPLE
│ │ ├── EXTENSIONS
│ │ │ └── Firmware.scap
│ │ └── FIRMWARE
│ │ └── MB51_007D_03B_LOCKED.scap
│ ├── Boot
│ │ └── BOOTX64.EFI
│ ├── gummiboot
│ │ └── gummibootx64.efi
│ └── nixos
│ ├── 5683z247xmsrh4lyr2hgpxwlb9gg5wyl-linux-3.12.20-bzImage.efi
│ └── mmjxbf6vwp5mwb384yfd6c8vkhd19gx8-initrd-initrd.efi
└── loader
├── entries
│ └── nixos-generation-1.conf
└── loader.conf
Tutto lì tranne / EFI / APPLE e il suo contenuto è stato creato dall'installazione di NixOS.
Ripristino delle impostazioni predefinite di Mac OS
( Questa è stata la mia esperienza con 14.04. )
Per ripristinare nuovamente l'impostazione predefinita di Mac OS e rendere l'elemento corrispondente nel Optionmenu di avvio -key che prende il nome dalla partizione Mac OS, è stato sufficiente accedere a Preferenze di Sistema ...> Disco di avvio in Mac OS e selezionare la partizione con Mac OS. Stranamente, è stato necessario inserire due volte la password dell'amministratore e la partizione non era ancora mostrata come selezionata, ma per il resto ha funzionato.
Altre istruzioni
Per vedere sempre il menu di gummiboot , è sufficiente impostare boot.loader.gummiboot.timeout
in configuration.nix .
Per configurare correttamente la mia scheda grafica nVidia , ho finito con il driver nouveau open-source :
services.xserver.videoDrivers = [ "nouveau" ];
Non ho lamentele a riguardo. Se "nvidia"
invece uso il proprietario , le console di testo non funzionano.
Aggiornamento per NixOS 16.09 . Ho osservato che sulla mia macchina con NixOS 16.09, l'opzione configurationservices.xserver.videoDrivers
non è necessaria per tutto per funzionare bene e che in effetti degrada notevolmente le prestazioni grafiche secondo alcuni test che ho fatto con il benchmark glmark2 OpenGL. Ho anche osservato che la selezione interrompe la modalità grafica ma lascia le console di testo, contrariamente a quanto osservato con Nix OS 14.04. Tutto questo mi sembra un po 'strano, ma questo è quello che ho osservato, quindi ho rimosso questa opzione dal mio configuration.nix ."nvidia"
Per caricare il modulo applemc (ad esempio per il sensore di movimento improvviso) mi è stato suggerito di aggiungere quanto segue a configuration.nix :
boot.kernelModules = [ "applesmc" ];
Osservazioni e osservazioni
L'unico "problema" con NixOS sul mio MacBook che ho osservato finora è che con NixOS il mio laptop di solito diventa più caldo di 5-10 ° C rispetto a Mac OS 10.9. Questo potrebbe essere un solito problema per Linux su un Mac .
Collegamenti a istruzioni di installazione alternative