mzwing

mzwing

Every moment we spent together is well worth recalling.
github
tg_channel
x
email
pixiv
bilibili
gitlab
zhihu
facebook
instagram

NixOSの探求(1):事前知識

NixOS はこの驚くべき Linux ディストリビューションであり、私は以前からその名前を聞いていましたが、最近まで「正常に使用できる」段階に到達することができず、本当に苦しめられました。

NixOS インストールイメージの選択について#

NixOS の stable バージョンはローリングリリースではありませんが、channel を変更することで簡単にローリングアップデートを行うことができます。一方、unstable はデフォルトでローリングリリースです。

ただし、NixOS のダウンロードページには unstable のダウンロードがありません!そのため、stable インストールイメージを使用して unstable をインストールするために channel を変更する必要があります。

NixOS はインストールイメージを使用してのみインストールできるわけではありません。コミュニティはnix-infectというプログラムを提供しており、ほとんどのクラウドサーバープラットフォームを直接 NixOS に置き換えることができます。公式の Nix プログラムも別のパーティションに NixOS をインストールすることができます(ただし、私はテストしていません)。ネットワークブートをサポートしているユーザーには、netboot.xyzからのネットワークブートオプションも提供されています。

注意:sci による情報によると、nix-infect は openvz プラットフォームでは使用できません。代わりにnixos-openvzを使用してください。

中国本土からインストールする場合、インストールイメージを使用してインストールすることを選択する場合は、強くお勧めしますデスクトップイメージ(Gnome と KDE が選択可能)を使用することで、グラフィカルインターフェース、firefox、および pxy(実際の目的(x))を使用でき、後続のインストールはインストールイメージのキャッシュから直接ファイルを取得します(もちろん、pxy の達人であれば無視しても構いません)。

理解する必要がある nix 構文#

実際、多くはありません。英語が読めれば大丈夫です。公式の設定には多くの英語のコメントがありますので、理解できなくても大丈夫です(x)。

一言で言っておくと、この言語の入門は非常に簡単ですが、上級者になるのは本当に難しいです。

nix の代入は es6 とほぼ同じです、すべてlet xxx = "xxx";のようになります。

オブジェクトは少し奇妙で、{ xxx: "xxx" }ではなく、{ xxx = "xxx"; };です。例:

let a.b.c = 1;
# 出力:
a = { b = { c = 1; }; };
読み込み中...
文章は、創作者によって署名され、ブロックチェーンに安全に保存されています。