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
...

Gentoo를 사용한 예는 다음과 같습니다:

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.

특정 버전 설치에 대해 자세히 알아보기여기.

편집하다:

주석 처리되지 않은 내 Arch 시스템에서는 다음과 같이 표시됩니다 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]설치하기 전에 메시지가 표시됩니다 .

관련 정보