적성 패키지와 데비안이 아닌 패키지에 대한 변경 로그를 제공할 수 있습니까?

적성 패키지와 데비안이 아닌 패키지에 대한 변경 로그를 제공할 수 있습니까?

apt 패키지의 변경 로그를 보려고 하면 aptitude오류가 자주 발생합니다 Cannot display changelog: Origin of <package> is unknown (maybe not an official Debian package ...). 여기서 "Debian"이라는 단어는 약간 오해의 소지가 있습니다. 왜냐하면 지금까지는 메인 파일에 나열된 소스에서 오는 패키지만 /etc/apt/sources.list"changelog"를 가질 수 있는 것으로 보이기 때문입니다 . 내가 아는 한 이것은 Ubuntu 패키지이며 해당 Debian 패키지에서 파생되었지만 패키지 버전에서 유래하고 http://archive.ubuntu.com/ubuntu/종종 ubuntu패키지 버전에 나타나므로 Ubuntu 관리자가 분산 바이너리를 다시 빌드했음을 나타냅니다.

man aptitude변경 로그는 두 곳에서 언급됩니다:

  1. 명령 설명에서 changelog:

    변경 로그

    각 소스 또는 바이너리 패키지에 대한 데비안 변경 로그를 다운로드하고 표시합니다.

  2. 환경 변수 설명에서 $PAGER:

    휴대용 소형 무선 호출기

    이 환경 변수가 설정되면 aptitude는 "aptitude Changelog"가 호출될 때 변경 로그를 표시하는 데 사용됩니다. 설정되지 않은 경우 기본값은 입니다 more.

aptitude데비안이 아닌 패키지의 변경 로그를 표시 하는 방법이 있습니까 ? /etc/apt/sources.list.d/*이 작업을 수행하기 위해 파일 에 추가할 수 있는 마법의 라인이 있습니까 ?

"데비안"이 아닌 패키지 제공자가 사용자에게 변경 로그를 제공할 수 있는 방법이 있습니까?

PS 동일한 상황이 적용되며 apt changelog오류 메시지와 함께 실패합니다.

E: Failed to fetch changelog:/<package>.changelog  Changelog unavailable for <package>-<version>

분명히, aptitude, apt changelogapt-listchanges모두 출력에 동일한 파일을 사용합니다.

답변1

로컬에서 완전히 사용할 수 없는 경우 변경 로그는 메타데이터 서비스에서 개별적으로 검색됩니다.https://metadata.ftp-master.debian.org/changelogs/데비안의 경우https://changelogs.ubuntu.com/changelogs/pool우분투의 경우. 동작은 구성된 소스에 따라 다르며 다음 명령을 사용하여 볼 수 있습니다.

apt-config dump Acquire::Changelogs

다른 저장소에서는 적절한 서비스와 구성 조각을 제공할 수 있지만 이를 수행하는 저장소는 없습니다.

Ubuntu에서 패키지는 잘린 변경 로그를 전송하므로 apt changelog항상 서버에서 변경 로그를 검색하려고 시도합니다.

특정 패키지에 대한 변경 로그를 검색하는 데 사용되는 URL은 다음을 통해 얻을 수 있습니다.

apt changelog --print-uris ...

aptitude다양한 구성 지시문을 사용하며 APT::Changelogs::Server메타데이터 서버를 가리키는 핵심입니다. 원산지에 따른 차별도 없습니다. 이로 인해 외부 저장소가 적절한 구성을 제공하기가 더 어려워집니다.

apt-listchanges다운로드한 패키지 파일에서 변경 로그를 추출합니다. 사용할 수 없는 경우 반환됩니다 apt-get changelog( 와 동일 apt changelog).

답변2

An은 apt changelog tar파일을 읽습니다 /usr/share/doc/tar/changelog.Debian. 그러면 패킷이 changelog.Debian규칙을 따르지 않으면 apt changelog쓸모가 없습니다.

답변3

"aptchangelogcurl" 명령은 항상 로컬 Changelog.gz 파일 대신 인터넷 사이트에서 변경 로그를 찾는다는 사실을 발견했습니다. 자세히 조사한 결과, 컬파카크지의 변경 로그 파일에 "#"으로 시작하는 두 개의 특수 라인이 추가되어 있는 것으로 나타났습니다. 올바른 방법(예: 규칙을 준수하지 않음). 이 두 줄을 삭제하거나 "#" 앞에 공백을 추가하면 로컬 Changelog.gz 파일이 검색됩니다.

관련 정보