Nix
code:install
# sudoが必要
. /home/ec2-user/.nix-profile/etc/profile.d/nix.sh
pure, lazy, functional language
宣言型DSL
Package Manager
アップグレード時、パッケージは上書きされない。ロールバックが可能。
パッケージが互いに依存しない
容量は多くとる
パッケージはここで検索
-----------------
/nix/store以下にインストールされる
コンパイラが参照しない
独立
/nix/store/b6gvzjyb2pg0kjfwrjmg1vfhh54ad73z-firefox-33.1/
-------------------------------------
nix-collect-garbage
profileに参照されないパッケージの削除
nix-env -qaP 'fire.*'
パッケージを検索
.が必要
nix-env -iA thunderbird
インストール
nix-env -e thunderbird
アンインストール
nix-channel --update nixos
NixOS channelを最新バージョンにアップデート
nix-channel --update
channel全体のアップデート?
nix-env -u '*'
新しいバージョンが存在するすべてのパッケージをアップグレード
nix-env --rollback
ロールバック
nix-collect-garbage
未使用のパッケージが全て削除される。
ロールバックできなくなるはず。
nix-env -q
インストール済みのパッケージを表示
Channel
nix-channel --list
channelリストを表示
nix-channel --add https://nixos.org/channels/nixpkgs-unstable <name>
nix-channelを追加 <name>は任意の名前
------------------
profile
Transparent source/binary deployment
キャッシュを参照する。ハッシュ値
haskell