Arch Linux에서 [사용 가능한] 패키지 버전을 나열하는 방법은 무엇입니까?

Arch Linux에서 [사용 가능한] 패키지 버전을 나열하는 방법은 무엇입니까?

목록 작성 방법을 알고 싶습니다.모두최신 버전뿐만 아니라 Arch Linux에서 해당 패키지의 사용 가능한 버전(설치 및 제거). 나는 Gentoo( eix <package>), CentOS/Suse/Redhat/...( yum list <package>) 및 Debian( apt-cache policy <package>)을 알고 있습니다. 이전에 Arch에서 이 작업을 수행한 적이 있지만 방법은 기억나지 않습니다. 내가 원하는 패키지는 다음과 같습니다.아니요팩맨 캐시에 있습니다.

Arch를 사용하면 다음과 같은 이점이 있습니다.

$ pacman -Ss gcc
core/gcc 6.2.1-1 (base-devel)
    The GNU Compiler Collection - C and C++ frontends
core/gcc-ada 6.2.1-1
    Ada front-end for GCC (GNAT)
core/gcc-fortran 6.2.1-1
...

젠투의 예는 다음과 같습니다:

eix gcc
...
[I] sys-devel/gcc
     Available versions:  
     (2.95.3) ~*2.95.3-r10^s
     (3.3.6) ~3.3.6-r1^s
     (3.4.6) 3.4.6-r2^s
     (4.0.4) **4.0.4^s
     (4.1.2) 4.1.2^s
     (4.2.4) ~4.2.4-r1^s
     (4.3.6) 4.3.6-r1^s
     (4.4.7) 4.4.7^s
     (4.5.4) 4.5.4^s
     (4.6.4) 4.6.4^s
     (4.7)  4.7.4^s
     (4.8)  ~4.8.0^s ~4.8.1-r1^s ~4.8.2^s 4.8.3^s 4.8.4^s 4.8.5^s
     (4.9)  ~*4.9.0^s ~*4.9.1^s ~4.9.2^s ~4.9.3^s
     (5.1)  **5.1.0^s
     (5.2)  **5.2.0^s
       {altivec awt boundschecking cilk +cxx d debug doc fixed-point +fortran gcj go graphite hardened libssp mudflap multilib multislot +nls nopie nossp +nptl objc objc++ objc-gc +openmp regression-test +sanitize vanilla}
     Installed versions:  4.8.5(4.8)^s(10:57:39 02/09/15)(cxx fortran multilib nls nptl openmp sanitize -altivec -awt -debug -doc -fixed-point -gcj -go -graphite -hardened -libssp -mudflap -multislot -nopie -nossp -objc -objc++ -objc-gc -regression-test -vanilla)
     Homepage:            http://gcc.gnu.org/
     Description:         The GNU Compiler Collection
...

사용 가능한 모든 GCC 버전이 여기에 나열되어 있으며, 설치된 버전은 역색 비디오로 강조 표시되어 있습니다(여기에는 표시되지 않음). 이것을 실행 중인 시스템에 설치된 GCC 버전은 4.8.5입니다.

그렇다면 Arch Linux에서는 어떻게 해야 할까요?


편집하다: 더 이상 내 컴퓨터에 Arch가 없지만 정확성을 높이기 위해 몇 가지 세부 정보를 추가해야 한다고 생각했습니다. 그때 내가 원했던 건 [어떻게]가 아니었어다운그레이드세트. 나에게 필요한 것은 내가 원하는 패키지의 사용 가능한 버전 목록을 아는 것입니다.업그레이드, 뿐만 아니라최신버전. 예를 들어, (업그레이드 당시) 패키지의 최신 버전에 버그가 있다는 것을 알고 이전 버전을 사용해 보고 싶을 때(현재 설치된 버전에서 업그레이드되는 경우) 유용합니다. 내 시스템).

답변1

간단한 예를 통해 pacman -Ss <package>다음 정보를 확인할 수 있습니다.

↪ LC_ALL=en_US.utf8 pacman -Ss evince
testing/evince 3.22.0+1+gc1dd9eb-1 (gnome) [installed: 3.20.1-2]
Document viewer (PDF, Postscript, djvu, tiff, dvi, XPS, SyncTex support with gedit, comics books (cbr,cbz,cb7 and cbt))
extra/evince 3.20.1-2 (gnome) [installed]
Document viewer (PDF, Postscript, djvu, tiff, dvi, XPS, SyncTex support with gedit, comics books (cbr,cbz,cb7 and cbt))

귀하의 질문에 대한 예를 업데이트하십시오.

Arch Linux에서는 (비공식 저장소를 사용하지 않는 한) 두 가지 버전의 사용 가능한 패키지만 가질 수 있습니다. 하나는 core/extra/community/multilib 저장소 중 하나에 있는 안정 버전이고 다른 하나는 테스트 중인 버전입니다.

정말로 이전 패키지를 설치하고 싶다면 해당 패키지를 찾을 수 있는 몇 가지 옵션이 있습니다.

  1. 사용아치 리눅스 아카이브이전 버전의 패키지를 찾으십시오.

  2. 다음 도구 중 하나를 사용하십시오.다운그레이드예를 들어 agetpkg -l gcc또는 downgrader gcc.

Arch Linux의 패키지는 일반적으로 종속성에 대한 버전 경계를 지정하지 않습니다.일부 업그레이드는 지원되지 않습니다, 따라서 특정 패키지의 이전 버전을 설치하는 것은 좋은 생각이 아닙니다.

답변2

~에서아치 리눅스 위키(내 강조점):

이전 버전과 새 버전 보기사용 가능한 패키지, 해당 "VerbosePkgLists"줄 의 주석 처리를 해제하세요./etc/pacman.conf.

특정 버전 설치에 대한 추가 정보여기.

편집하다:

코멘트가 없는 내 아치 시스템의 모습은 다음과 같습니다 VerbosePkgLists.

sudo pacman -Sy firefox
:: Synkroniserar paketdatabasen...
 core är senaste versionen
 extra är senaste versionen
 community är senaste versionen
löser beroenden...
Söker efter paket med konflikter...

Paket (1)      Gammal Version  Ny Version  Nettoskillnad  Hämtningsstorlek

extra/firefox  48.0.2-1        49.0.1-1        -0,35 MiB         39,82 MiB

Total hämtningsstorlek:     39,82 MiB
Total installationsstorlek:  89,81 MiB
Nettouppgraderingsstorlek:   -0,35 MiB

:: Fortsätt med installation? [Y/n] 

내 시스템은 (분명히) 스웨덴어이지만 " Gammal Version"는 을 의미하고 Old version" Ny Version"는 을 의미합니다 New version. 위에서 볼 수 있듯이 [Y/n]설치하기 전에 메시지가 표시됩니다.

관련 정보