これは私の最初の回答の更新版であり、NixOS 15.09で動作するはずです。nix-devメーリングリストの助けを借りてNixOS 14.04をインストールした初期バージョンと比較して、小さな変更が含まれています。
初期設定
次のようにパーティション分割されたMac OS 10.9およびハードドライブを搭載したMacBook 5,1(2008):
a)「EFI」というラベルの付いた200MB EFIシステムパーティション。
b)Mac OSで使用される2つのパーティション(10.9)。
c)「nixos」および「home」というラベルの付いた2つの空のext4パーティション、および「swap」というラベルの付いたLinuxスワップパーティション。
次のツールを使用しました。
以下が印刷したパーティションテーブル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
ケーブルイーサネットインターネット接続。
MBRでFATとしてフォーマットされNIXOS_ISO
、NixOS 15.09 64ビットISOイメージ(Live CDまたはMinimal)のコンテンツのコピー(ドラッグアンドドロップ)が付いたFATとしてフォーマットされたUSBドライブ。
設置
Alt/Option再起動時にキーを押し、USB EFI Bootを選択して、USBドライブから起動します。「root」として(パスワードなしで)ログインします。インターネット接続が機能していることを確認してください。インストールにはインターネット接続が必要です。
実行する
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
追加
nixpkgs.config.allowUnfree = true;
生成された/mnt/etc/nixos/configuration.nixファイル内。
実行する
nixos-install
リブート:
reboot
起動中
(これは14.04での私の経験でした。)
再起動後、コンピューターはNixOSで起動しました。今度はAlt/Optionキーを押したまま、再起動しました。ブートメニューには、見た目が同じ「EFIブート」アイテムが2つ表示されていました。それらの1つはMac OSであり、もう1つはNixOSであることが判明しました。(奇妙な-Mac OSのあるものがMac OSパーティションにちなんで命名される前。)わかりました。
好奇心からEFIシステムパーティションのコンテンツをマウントして検査しました。
§ 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
/ EFI / APPLEとそのコンテンツ以外のすべては、NixOSのインストールによって作成されています。
Mac OSをデフォルトに戻す
(これは14.04での私の経験でした。)
Mac OSを再びデフォルトにしOption、Mac OSパーティションにちなんで名付けられた-keyブートメニューで対応するアイテムを作成するには、Mac OSの[システム環境設定...]> [起動ディスク]に移動し、Mac OSのパーティションを選択します。奇妙なことに、管理者パスワードを2回入力する必要があり、パーティションは選択されたまま表示されませんでしたが、それ以外は機能しました。
その他の指示
常にgummibootメニューを表示するにはboot.loader.gummiboot.timeout
、configuration.nixで設定するだけで十分です。
nVidiaグラフィックカードを適切に構成するために、オープンソースのnouveauドライバーを使用することになりました。
services.xserver.videoDrivers = [ "nouveau" ];
苦情はありません。"nvidia"
代わりにプロプライエタリを使用すると、テキストコンソールが機能しません。
NixOS 16.09のアップデート。NixOS 16.09を搭載したマシンでservices.xserver.videoDrivers
は、すべてが正常に機能するためにconfiguration.nixでオプションは不要であり、実際、glmark2 OpenGLベンチマークで行ったいくつかのテストによると、グラフィックパフォーマンスが著しく低下することがわかりました。また"nvidia"
、Nix OS 14.04で見たものとは反対に、選択するとグラフィカルモードが壊れるが、テキストコンソールが残ることも観察しました。これは私には少し奇妙に見えますが、これは私が観察したことなので、このオプションをconfiguration.nixから削除しました。
applesmcモジュールをロードするために(たとえば、突然のモーションセンサー用)、以下をconfiguration.nixに追加することが提案されました:
boot.kernelModules = [ "applesmc" ];
備考と観察
MacBookのNixOSでこれまでに確認した唯一の「問題」は、NixOSを実行するとラップトップが通常Mac OS 10.9よりも5〜10℃高温になることです。これは、Mac上のLinuxの通常の問題です。
別のインストール手順へのリンク