Home Managerを使用してtarballをインストールする方法は?

Home Managerを使用してtarballをインストールする方法は?

私はnixに初めて触れたので、ソリューションの詳細な説明をいただきありがとうございます。

追加しようとしています。rnix-lsp私の家の構成として。 githubページの指示には、tarballのURLからnix-envコマンドを実行するように指示されていますが、どうすればよいかわかりません。

はわかりますが、fetchTarballどうすればいいかわかりませんhome.packages。次のように試してみました。

home.packages = [
    (import (fetchTarball “https://github.com/nix-community/rnix-lsp/archive/master.tar.gz”) {}; ).defaultNix
];

ただし、コレクションを呼び出そうとするとエラーが発生します。私が望むことをする方法はありますか?

具体的なエラーは次のとおりです。

error: attempt to call something which is not a function but a set, at /home/izzylan/.config/nixpkgs/home.nix:33:9

ベストアンサー1

ソースコードを調べて答えを直接見つけました。

import (fetchTarball “https://github.com/nix-community/rnix-lsp/archive/master.tar.gz”)

これがうまくいく理由

私たちは見ることができますホーム環境.nixホーム管理者は、home.packages予想されるタイプがnixpkgsモジュールで定義されているため、nixがどのように「パッケージ」を決定するかをtypes.package確認できます。types.nixそれから私達は見つけることができますパッケージタイプの定義次に、パッケージが派生しているか、保存パスを含む文字列が含まれていることを確認してください。

rnix-lspはすでにnixプロジェクトで、default.nixからフォークにそれ自身をエクスポートします。1それで私たちがしなければならないのは、それをtarballにダウンロードして設定にインポートすることだけです。home-managerその後、他のパッケージと同様にフォークをインポートしてビルドしてインストールします。


1技術的には、次のように定義されます。フレークflake.nixflake-compatを使用してフォークdefault.nixにエクスポートします。

おすすめ記事