タグ付けされた質問 「nix」

4
configuration.nixにインストールするNixパッケージの名前を見つける方法は?
nix-envの--query操作を使用してインストールするパッケージを検索するとします。 $ nix-env -qa 'aspell.*en' aspell-dict-en-7.1-0 /etc/nixos/configuration.nixNixOSのメイン構成ファイルにこのパッケージ名を記述します。 environment.systemPackages = with pkgs; [ aspell-dict-en ]; それでも、構成sudo nixos-rebuild switchを更新し、宣言的に指定されたすべてのシステム全体のパッケージをインストールするNixOSコマンドを実行すると、エラーで中断します。 error: undefined variable ‘aspell-dict-en’ at /etc/nixos/configuration.nix:44:5 すべてではありませんが、多くのパッケージでは、nix-env返される名前とenvironment.systemPackages構成オプションで指定する名前が異なることを知っていますが、ロジックは理解していません。見つけたパッケージをインストールするにはどうすればよいnix-envですか?
21 nixos  nix 

3
NixOS / nixpkgsのローカルリポジトリを作成するにはどうすればよいですか?
Nixパッケージのローカルリポジトリを作成するために見つけたすべての手順には、メインnixpkgsリポジトリのローカルクローンを作成して追加することが含まれます。 ローカルアドオンパッケージのみを含む小さなリポジトリを作成する方法はありますか?

1
/etc/nixos/configuration.nixを個別のモジュールに分割する方法は?
非常に単純なNixOS設定ファイルがあるとします: { config, pkgs, ... }: { imports = [ # Include the results of the hardware scan. ./hardware-configuration.nix ]; # SOME STUFF environment.systemPackages = with pkgs; [ emacs gitFull ]; # SOME STUFF } NixOSがモジュールシステムを実装し、モジュールが.nixファイルであることを知っています。すべての.nixファイルには、有効なNix式(関数またはセットなど)が含まれている必要があります。これは、NixOS構成ファイル/etc/nixos/configuration.nix自体がモジュールであり、Nix式を含むことを意味します。 また、別のモジュールのNix式を、使用しているモジュールから見えるようにするために、組み込みimport関数を使用できることも知っています。 システムパッケージの宣言(emacsとを含むリストgitFull)をfile に分割しますpackages.nix。NixOS構成ファイルを個別のモジュールに分割するにはどうすればよいですか?
14 nixos  nix 

2
NixOSでファイルがどの(インストールされていない)パッケージに属しているかを調べる方法は?
私が使用していますニックスパッケージマネージャを上NixOS。ファイルを提供するパッケージをインストールするとしますlibgtk-x11-2.0.so.0。他のGNU / Linuxディストリビューションと同様に、このファイルを提供するパッケージを見つけるにはどうすればよいですか? 現在、ファイルをグーグル検索し、どのパッケージが属しているかを把握し、Nixリポジトリで対応するパッケージを見つける必要がありますが、より慣用的な方法が必要です。

1
NixOSに1回限りのパッケージをインストールするにはどうすればよいですか?
NixOSボックスを持っているので、nixos-16.03チャンネルを続けます。マシンをほぼ安定した状態に保ちたいので、nixos-unstableチャネルに切り替えないようにしたいと思っています。 ただし、そのチャネルで利用可能なものよりも新しいバージョンのパッケージをインストールする必要があります(nodejs-6_xこの場合)。マニュアルには、ワンクリックインストールについて説明するセクションがあります。ただし、http://hydra.nixos.orgのHydraサーバーは、そのセクションで説明.nixpkgされているnix-install-packageツールで使用されるファイルを提供していないようです。 wikiには、パッケージをカスタマイズできるプロセス(このページはパッケージの変更と呼ばれます)も記載されています。これは、目的に使用できると思われますが、ツールを使用するのではなく、ツールと戦っているようです。 私はこれについてもIRCでM-Ralith質問しました(私の無知な質問に辛抱強く答えてくれてありがとう!)、それを適用する方法がよくわかりませんでした。「nixpkgs設定でsrcとバージョンをオーバーライドする」というアドバイスがありました。これ.nixpkgs/configuration.nixは、サブスクライブされたチャネル(nixos-16.03)でnix式を記述してパッケージのプロパティをオーバーライドできるように思えます。チャネルに存在しないパッケージについて尋ねたところ、アドバイスは「srcとversionをオーバーライドするだけでなく、パッケージ全体を指定すること」でした。これは、パッケージのnix式全体を複製する必要があることを意味します。私は興味を持っている。nix-env インストールしたい別のチャネルに存在するパッケージが現在のチャネルに残っている場合、もっと良い方法はありますか?みたいなことができるようになったような気がしますnix-build <url> | nix-env -i。理想的なのは、これをインストールすることですが、現在のチャネルが追いついた場合に後でアップグレードされるのを妨げる可能性のある構成はありません。
9 nixos  nix  nixpkgs 

3
Nix:Haskellパッケージのインストール時に単体テストをスキップする
Nixを使用して、限られたリソースを持つ共有ホストの自宅(バイナリパッケージではない)にパッケージをインストールしています。git-annexをインストールしようとしています。依存関係の1つであるhaskell-lensを構築すると、単体テストは大量のメモリを消費するため、強制終了してインストールが失敗します。 単体テストをスキップしてパッケージをインストールする方法はありますか?私はCabalビルダーを見て、falseにhaskell-packages.nix設定することでテストを無効にできるように思えenableCheckPhaseます。で次のことを試しました~/.nixpkgs/config.nixが、テストはまだ実行されています。 { packageOverrides = pkgs: with pkgs; { # ...other customizations... haskellPackages = haskellPackages.override { extension = self : super : { self.lens = self.disableTest self.lens; }; }; }; }

2
実行時にnixによってインストールされたライブラリを使用する方法
私が使用しているnix私はルートじゃないシステムで「シングルユーザモード」で(私のnixのセットアップの説明については以下を参照)。 システムに存在しないライブラリに動的にリンクされているバイナリの1つをすばやく実行したいと思っていました。 だから、私はライブラリをインストールしましたnix: $ nix-env -qa 'gmp' gmp-4.3.2 gmp-5.1.3 $ nix-env -i gmp-5.1.3 しかし、ライブラリはまだリンカによって見つかりません: $ ldd -r ../valencies ../valencies: /lib64/libc.so.6: version `GLIBC_2.15' not found (required by ../valencies) ../valencies: /lib64/libc.so.6: version `GLIBC_2.14' not found (required by ../valencies) linux-vdso.so.1 => (0x00007fffbbf28000) /usr/local/lib/libsnoopy.so (0x00007f4dcfbdc000) libgmp.so.10 => not found libffi.so.5 => /usr/lib64/libffi.so.5 (0x00007f4dcf9cc000) libm.so.6 …

1
Nixがgitをgit-fullにアップグレードしないようにする
UbuntuでNixを使用して、いくつかのパッケージの最新バージョンを作成しています。そのうちの1つはgitです。私が実行するとnix-env -u、これが起こります: % nix-env -u --dry-run '*' (dry run; not doing anything) upgrading `git-1.8.5.4' to `git-1.9.0-full' これは私が欲しいものではありません-私はバージョンgit-1.9.0よりプレーンバージョンを好み-fullます。でプレーンバージョンに手動でアップグレードできることはわかっていますが、自分のやりたいnix-env -i git-1.9.0ことnix-env -uを実行する方法はありますか?
弊社のサイトを使用することにより、あなたは弊社のクッキーポリシーおよびプライバシーポリシーを読み、理解したものとみなされます。
Licensed under cc by-sa 3.0 with attribution required.