Veröffentlichung des Paketmanagers APT 3.0.0

Ein Release des APT-Tools 3.0.0 (Advanced Package Tool) wurde erstellt, das Änderungen aus dem experimentellen 2.9-Zweig integriert. Die neue Version wurde in den branch Debian Unstable angenommen und wird in naher Zukunft in das Debian Testing-Repository integriert, wo das Release Debian 13 entwickelt wird. Dort wird bereits der experimentelle APT-Zweig 2.9 verwendet, und sie wird auch in die Paketdatenbank von Ubuntu aufgenommen.

Zu den wichtigsten Änderungen zählen:

  • Die Benutzeroberfläche wurde überarbeitet, um eine übersichtlichere Darstellung der Abhängigkeiten zu bieten, die bei der Installation von Paketen heruntergeladen werden müssen. Während zuvor Pakete mit Abhängigkeiten in einer durchgehenden Liste angezeigt wurden, werden sie jetzt in Spalten im Stil des Befehls „ls -C“ dargestellt, wobei verschiedene Ausgabebereiche in unterschiedlichen Farben hervorgehoben sind (zum Beispiel werden zu entfernende Pakete rot markiert und zu installierende Pakete grün). Doppelte Erwähnungen zusätzlicher und neuer Pakete wurden entfernt (die Sektionen „NEW packages“ und „additional packages“ wurden zusammengeführt). Für die Farbverwaltung wurden die Einstellungen „APT::Color::*“ und „APT::Configuration::color“ sowie die Optionen „—color“ und „—no-color“ hinzugefügt.
    Veröffentlichung des Paketmanagers APT 3.0.0
  • Die automatische Seitenaufteilung für die Ausgaben der Befehle „show“, „policy“, „list“, „search“ und „showsrc“ wurde implementiert. Die Seitenaufteilung wird über die Einstellung Binary::apt::Pager aktiviert, und die Anwendung zur Seitenaufteilung wird über die Umgebungsvariable PAGER festgelegt.
  • Eine verbesserte Abhängigkeitsauflösung mit dem Solver3-Engine wurde implementiert (aktiviert über die Option „—solver 3.0“), bei der ein Rückverfolgunsgalgorithmus zur Lösung von Konflikten zwischen Abhängigkeiten eingesetzt wird. Die neue Engine bietet zudem eine verbesserte Versionsauswahl, unterstützt mehrstufige Updates, erhöht die Leistung (apt-test wird jetzt doppelt so schnell ausgeführt), hat die Option „—no-strict-pinning“ für die Installation experimenteller Versionen hinzugefügt, schütz vor der manuellen Deinstallation installierter Pakete und erhöht die Aggressivität bei der automatischen Entfernung ungenutzter Abhängigkeiten. Zudem wurden klarere Erklärungen für Fehler im Zusammenhang mit Abhängigkeiten hinzugefügt, die für gewöhnliche Benutzer verständlicher sind.
  • Die Verwendung des Tools apt-key zur Verwaltung der Schlüssel, die für die Überprüfung digitaler Paketunterschriften verwendet werden, wurde eingestellt. Das Tool apt-key wurde vor einigen Jahren aufgrund des Übergangs von einem alten Modell zur Integritätsprüfung von Paketen, das ein gemeinsames Schlüsselbund (/etc/apt/trusted.gpg) verwendete und keine Schlüsselbindung an Repositories hatte, als veraltet erklärt. Das bedeutet, dass ein Schlüssel, der für ein bestimmtes Drittanbieter-Repository hinzugefügt wurde, zur Überprüfung von Paketen in allen Repositories geeignet war. Der neue Schlüsselverwaltungsansatz ersetzt apt-key und sieht die Trennung der Schlüsselspeicher für jedes Repository (/etc/apt/trusted.gpg.d/ oder /etc/apt/keyrings/) vor.
  • Die Möglichkeit, das Tool sqv aus dem Sequoia-Projekt zur Überprüfung digitaler Unterschriften anstelle von gpgv zu verwenden, wurde hinzugefügt. In die Liste der Pfade für den Aufruf von gpg wurde das in Rust geschriebene Tool gpg-sq aufgenommen, das dieselben Argumente wie das Tool gpg akzeptiert, jedoch dessen Funktionalität über Sequoia, einer OpenPGP-Implementierung in Rust, simuliert. Der Aufruf von gpg-sq hat eine höhere Priorität als gpg, d. h., um gpg-sq anstelle von gpg zu verwenden, genügt es, das entsprechende Paket zu installieren.
  • Ein Krypto-Backend wurde für die OpenSSL-Bibliothek hinzugefügt, die GnuTLS und Gcrypt ersetzt.
  • Die Zuordnung von Schlüsseltäten zu Dateierweiterungen wurde sichergestellt: Die Erweiterung „.asc“ ist mit ASCII-armierten Schlüsseln verbunden, „.gpg“ immer mit binären Schlüsseln, während alle anderen Dateierweiterungen einen Fehler auslösen. Beispielsweise muss die Datei mit dem Schlüssel „/etc/apt/keyrings/winehq-archive.key“ in „/etc/apt/keyrings/winehq-archive.gpg“ umbenannt und der Pfad in der Datei „/etc/apt/sources.list.d/“ korrigiert werden. Die Unterstützung für die selbstständige Überprüfung von Schlüsselringen (keyring) und die Durchführung der Dearmor-Operation (Umwandlung eines Schlüssels im ASCII-armierten Format in ein binäres Format) wurde implementiert, ohne auf apt-key zugreifen zu müssen.
  • Viele Funktionen wurden auf die Nutzung der Klasse „std::string“ anstelle von „const char *“ umgestellt (die im C++17-Standard definierte Klasse std::string_view, die effizienter mit Zeichenfolgen arbeitet, da sie Referenzen auf vorhandene Daten verwendet und unnötiges Kopieren von Daten vermeidet, solange sie nicht im Code verwendet wird).
  • Ein abstraktes Interface für die Arbeit mit Hashes wurde vorgeschlagen, das im Rahmen der Bemühungen zur Ablösung der engen Bindung an eine bestimmte Kryptografie-Bibliothek umgesetzt wurde.
  • Im Ausgabe der Kommandozeile „apt show —full“ wurden Informationen zur Paketbindung (Pinning) hinzugefügt, die aus den Feldern APT-Pin, APT-Candidate und APT-Release stammen.
  • Es wird offiziell empfohlen, die Dateien im Verzeichnis /etc/apt/sources.list.d/ nach dem aktuellen Anbieter in Kleinbuchstaben zu benennen ("$(dpkg-vendor —query Vendor | tr A-Z a-z).sources").
  • Im pkgDepCache wurde die Unterstützung für Transaktionen und Aktualisierungszähler hinzugefügt.
  • Die Option „—comment“ wurde hinzugefügt, um einen Kommentar zu hinterlassen, der in der Historie der ausgeführten Operationen gespeichert wird.
  • Die Unterstützung für den HTTP-Header Retry-After wurde hinzugefügt, um das Wiederaufnehmen unterbrochener Downloads zu optimieren.
  • Zur Kommandozeile „apt list“ wurde die Option „—target-release“ hinzugefügt.
  • Ein neues Fehlermeldungslevel „audit“ wurde hinzugefügt, das über die Option „—audit“ aktiviert werden kann.

Zusätzlich können die Änderungen, die in der experimentellen APT 2.7 Zweig aufgetreten sind (die Entwicklung des Zweigs 2.7 ist nahtlos in die Entwicklung des Zweigs 2.9 übergegangen), vermerkt werden, die in Debian 13 verfügbar sein werden (in Debian 12 wird die APT 2.6-Version verwendet):

  • Die Unterstützung für Snapshots, gesteuert durch die Option „—snapshot“ („-S“), wurde hinzugefügt. Damit können Sie auf Repository-Server zugreifen, die Snapshots unterstützen, und einen bestimmten Zustand des Repository-Archivs auswählen. Zum Beispiel, indem Sie „—snapshot 20250405T081400Z“ angeben, können Sie mit einem Snapshot des Repository-Zustands arbeiten, der am 5. April 2025 um 08:14:00 erfasst wurde. Snapshots werden im Abschnitt APT::Snapshot in den sources-list-Dateien konfiguriert.
  • Die Option „—update“ („-U“) wurde implementiert, die es während der Ausführung von Installations- oder Upgrade-Befehlen (apt install oder apt upgrade) ermöglicht, automatisch den Befehl „apt update“ auszuführen, um die Indizes vor dem Öffnen des Caches und der Verarbeitung der sources.list zu synchronisieren.
  • Der Befehl ‚dist-clean‘ wurde hinzugefügt, um die im Cache gespeicherten Pakete und Listen der heruntergeladenen Pakete zu entfernen.

Quelle: opennet.ru

Kaufen Sie zuverlässiges Hosting für Websites mit DDoS-Schutz, VPS VDS-Servern 🔥 Kaufen Sie zuverlässiges Hosting für Websites mit DDoS-Schutz, VPS VDS-Servern | ProHoster