NixOS에서 파일이 어떤(설치되지 않은) 패키지에 속해 있는지 확인하는 방법은 무엇입니까?

NixOS에서 파일이 어떤(설치되지 않은) 패키지에 속해 있는지 확인하는 방법은 무엇입니까?

나는nix 패키지 관리자존재하다닉 OS. 파일을 제공하는 패키지를 설치하고 싶다고 가정해 보겠습니다 libgtk-x11-2.0.so.0. 이 파일을 제공하는 패키지를 찾는 방법은 다음과 같습니다.기타 GNU/Linux 배포판?

현재는 파일을 검색하여 해당 파일이 어떤 패키지에 속해 있는지 알아내고 Nix 저장소에서 해당 패키지를 찾아야 하지만 좀 더 관용적인 접근 방식을 원합니다.

답변1

닉스 인덱스그게 당신이 필요한 전부입니다.

색인을 설치하고 빌드합니다.

nix-env -iA nixos.nix-index
nix-index

켜다 libgtk-x11-2.0.so.0:

nix-locate -w libgtk-x11-2.0.so.0

산출:

(zed.out)                                             0 s /nix/store/bc4mngklj2j7hmm21jra4641x4pm9r8z-node-webkit-env/lib/libgtk-x11-2.0.so.0
(thrust.out)                                          0 s /nix/store/wzg0k4i2cy0qsm3hwxlywxxbga019hbq-env-thrust/lib/libgtk-x11-2.0.so.0
(nwjs_0_12.out)                                       0 s /nix/store/js6klvzjfi5q4djmwb0bqzfb4x0vzm6g-nwjs-env/lib/libgtk-x11-2.0.so.0
(node_webkit_0_11.out)                                0 s /nix/store/30vm6a7bmc56ckl575rqassw60ccxjpg-node-webkit-env/lib/libgtk-x11-2.0.so.0
(mumble_overlay.out)                                  0 s /nix/store/wayx023w1nslqg2z0c5v4n0b4jxn5n06-gtk+-2.24.31/lib/libgtk-x11-2.0.so.0
gnome2.gtk.out                                        0 s /nix/store/3iqchhncghm5s458lzy99c3prfymrnp2-gtk+-2.24.31/lib/libgtk-x11-2.0.so.0

마지막 줄은 gtk+-2.24.31속성 경로가 있는 패키지 에 gnome2.gtk이 파일이 포함되어 있음을 나타냅니다.

답변2

문서를 보면 이 작업을 수행하는 쉬운 방법이 없는 것 같습니다.

yum 기반 배포판에서는 이 작업을 수행할 수 있고 yum provides $file, apt-get 배포판에서는 apt-file을 설치하여 이 작업을 수행할 수 있지만 apt-file $file저는 nix-env -q.

관련 정보