Guix를 통해 설치된 모든 패키지를 나열하는 방법은 무엇입니까? 우분투에서는 이것이 통과될 것입니다 dpkg -l
.
답변1
guix package --list-installed
( guix package -I
)는 모든 Linux 배포판에 설치된 패키지를 나열하는 데 유효한 답변입니다.통과패키지 관리자 guix
.
그러나 그것은 동일하지 않습니다 dpkg -l
. 왜일까요?
dpkg -l
시스템에 설치된 모든 패키지가 나열됩니다... , ... guix
을 통해 apt
설치된 패키지에 대한 정보를 얻을 수 없습니다. dpkg
자체적으로 설치된 패키지에만 액세스할 수 있습니다.guix
GuixSD에서
GuixSD에는 사전 설치된 패키지가 함께 제공됩니다. 또한 guix package --list-installed
시스템 전체 패키지를 나열하려면 옵션을 설정해야 합니다 --profile
.
guix package --list-installed --profile=/run/current-system/profile |awk '{print $1}'
예를 들어:
$ guix package --list-installed=zile
$
아무것도 반환하지 않습니다.
하지만:
$ guix package --list-installed --profile=/run/current-system/profile |awk '/zile/ {print $1,$2}'
zile 2.4.14
패키지 관리(emacs 모드):
답변2
당신은 그것을 사용할 수 있습니다
guix package --list-installed
설치된 모든 패키지를 나열합니다. | grep name
해당 목록에서 "이름"을 검색하려면 끝에 을 추가하세요.
답변3
guix
사용자 또는 시스템 프로필에 설치된 패키지를 나열하는 방법에 대한 다른 답변은 정확하지만 종속성을 충족하기 위해 설치된 다른 패키지가 있습니다. 이러한 패키지는 나열되지 않지만 guix package
상점에 설치됩니다.
비교를 위해 dpkg -l
종속성을 충족하기 위해 특별히 설치되었거나 자동으로 설치되었는지 여부에 관계없이 설치된 모든 패키지가 나열됩니다. 처음에는 일반적인 이해를 위해 비슷한 목록을 찾고 나중에는 드라이버 패키지가 사용되었는지 알 수 없었지만 드라이버 패키지가 존재하는지 확인하고 싶었을 때 비슷한 목록을 찾았습니다.
모든 패키지가 스토어에 설치되므로 어떤 디렉터리가 존재하는지 /gnu/store
확인하여 어떤 패키지가 설치되어 있는지 확인할 수 있습니다. 나 자신을 위해 /gnu/store
이름에 대시가 있는 디렉터리를 즉시 찾은 다음 첫 번째 대시 앞 부분을 잘라내어 알파벳순으로 정렬하고 중복 항목을 제거하는 다음 명령을 생각해 냈습니다 . 이것은 지금까지 얻을 수 있는 설치된 패키지 중 가장 가까운 목록입니다.
$ find /gnu/store/ -maxdepth 1 -type d -iname '*-*' | cut -d '-' -f 2- | sort | uniq
물론, 이것은 이 모든 것을 숨기고 사용자가 표시되는 패키지에만 관심을 가질 수 있도록 하는 Guix의 훌륭한 기능입니다 guix package --list-installed
.