아치 리눅스 실행 파일의 소스 파일을 찾습니다

아치 리눅스 실행 파일의 소스 파일을 찾습니다

/usr/bin/*특정 명령을 작성한 소스 파일(AUR을 통해 거기에 배치된 소스 파일을 의미함)을 쉽게 검색할 수 있는 방법이 있습니까 ? 이러한 파일을 검색하는 래퍼를 통해 명령을 실행할 수 있습니까 pacman? 아니면 Google에서 Git 페이지나 관리자 페이지로 이동해야 합니까?

~에 따르면이것apt-get source질문, 데비안 기반 배포판에 대한 유사한 명령을 찾고 있습니다 . 마찬가지로,에 따르면이것문제는 asp(이전 abs) 핵심 패키지에 이 기능에 대한 기반이 있었지만 asp exportAUR에서 구축된 기능으로 확장되지 않았다는 것입니다.

커뮤니티에 기여하고 싶습니다. AUR 소스 파일 확인 프로세스를 단순화하면 내 기술 수준과 전문 지식에 맞는 패키지를 선택하는 데 큰 도움이 될 것입니다. 수백 번은 아니더라도 이 작업을 수십 번 수행했을 것입니다. 내 도움이 필요하고 관심이 있거나 도움을 줄 수 있는 패키지를 찾기 전에.

답변1

당신이 찾고있는아치 건축 시스템:

Arch 빌드 시스템은 소스 코드에서 소프트웨어를 빌드하고 패키징하기 위한 포트와 유사한 시스템입니다. pacman은 ABS로 구축된 패키지를 포함하여 바이너리 패키지 관리를 위한 전문 Arch 도구인 반면, ABS는 소스 코드를 설치 가능한 .pkg.tar.xz 패키지로 컴파일하기 위한 도구 모음입니다.

아시다시피 이는 공식 저장소의 패키지에만 작동합니다. AUR에 포함된 패키지의 경우 AUR이 바이너리를 호스팅하지 않기 때문에 특정 도구가 필요하지 않으므로 간단히 필요한 빌드 파일( git clone)을 얻은 다음 빌드를 사용하기 전에 PKGBUILD를 확인하거나 수정하면 됩니다 makepkg.

답변2

~ $ pacman -Qi $(pacman -Qoq $(which ssh-add))
Name            : openssh
Version         : 8.9p1-1
Description     : Premier connectivity tool for remote login with the SSH protocol
Architecture    : x86_64
URL             : https://www.openssh.com/portable.html
Licenses        : custom:BSD
Groups          : None
Provides        : None
Depends On      : glibc  krb5  openssl  libedit  ldns  libxcrypt  libcrypt.so=2-64  zlib  pam
Optional Deps   : xorg-xauth: X11 forwarding [installed]
                  x11-ssh-askpass: input passphrase in X [installed]
                  libfido2: FIDO/U2F support
Required By     : gcr  gnome-keyring  openmpi
Optional For    : None
Conflicts With  : None
Replaces        : None
Installed Size  : 4.18 MiB
Packager        : Giancarlo Razzolini <[email protected]>
Build Date      : Wed 23 Feb 2022 18:48:29 GMT
Install Date    : Sun 27 Feb 2022 18:14:02 GMT
Install Reason  : Explicitly installed
Install Script  : Yes
Validated By    : Signature

에서 man pacman:

OPERATIONS
[...]
       -Q, --query
           Query the package database. This operation
           allows you to view installed packages and
           their files, as well as meta-information about
           individual packages (dependencies, conflicts,
           install date, build date, size). This can be
           run against the local package database or can
           be used on individual package files. In the
           first case, if no package names are provided
           in the command line, all installed packages
           will be queried. Additionally, various filters
           can be applied on the package list. See Query
           Options below.
[...]
QUERY OPTIONS (APPLY TO -Q)
[...]
       -i, --info
           Display information on a given package. The -p
           option can be used if querying a package file
           instead of the local database. Passing two
           --info or -i flags will also display the list
           of backup files and their modification states.

[...]
       -o, --owns <file>
           Search for packages that own the specified
           file(s). The path can be relative or absolute,
           and one or more files can be specified.
[...]
       -q, --quiet
           Show less information for certain query
           operations. This is useful when pacman’s
           output is processed in a script. Search will
           only show package names and not version,
           group, and description information; owns will
           only show package names instead of "file is
           owned by pkg" messages; group will only show
           package names and omit group names; list will
           only show files and omit package names; check
           will only show pairs of package names and
           missing files; a bare query will only show
           package names rather than names and versions.

관련 정보