RPM-CONFIG(5)

BEZEICHNUNG
rpm-config - Laufzeit-Makro-Konfiguration für rpm

ÜBERSICHT
NAME WERT

DATEIEN
/usr/lib/rpm/macros
/usr/lib/rpm/macros.d/macros.*
/usr/lib/rpm/platform/{Zielplattform}/macros
/usr/lib/rpm/fileattrs/*.attr
/usr/lib/rpm/<Anbieter>/macros
/etc/rpm/macros.*
/etc/rpm/macros
/etc/rpm/{Zielplattform}/macros
~/.config/rpm/macros

BESCHREIBUNG
Der primäre Konfigurationsmechanismus in rpm(8) arbeitet mit Makros (siehe rpm-macros(7)). Beim Start liest rpm eine Reihe von Makrodateien (rpm-macrofile(5)), wie im macro-Pfad definiert.

Jede Datei oder jedes glob(7)-Muster im durch Doppelpunkte getrennten macro-Pfad wird sequenziell von rpm für Makrodefinitionen gelesen. %{_target} wird auf die erkannte <Architektur>-<OS>-Plattform erweitert. Tilden werden auf den Wert der Umgebungsvariablen HOME erweitert.

Falls ein Makro mehrfach definiert ist, erhält der letzte Eintrag den Vorzug. Der Standard-Makro-Pfad verwendet dies zur Bestimmung der folgenden Hierarchie der Einstellungen:
1.  Generische Grundeinstellungen von rpm
2.  Plattformspezifische Grundeinstellungen von rpm
3.  Anbieter- bzw. distributionsspezifische Einstellungen
4.  Rechnerspezifische Einstellungen
5.  Benutzerspezifische Einstellungen
6.  Einstellungen für Außerkraftsetzungen in der Befehlszeile

Der Standard-Makropfad kann mit rpm --showrc|grep (haMacro überprüft werden.

In älteren RPM-Versionen lautete der Pfad der benutzerspezifischen Makros ~/.rpmmacros. Dieser Pfad wird weiterhin verarbeitet, sofern er existiert und das neue Konfigurationsverzeichnis nicht existiert.

KONFIGURATION
Für die Teile der rpm-Laufzeitumgebung werden folgende Konfigurationseinstellungen unterstützt (im Gegensatz zum reinen Bau von Paketen):

%_color_output MODUS
    Modus für die farbige Darstellung der Ausgabe. Zulässige Werte sind never und auto.

%_db_backend BACKEND
    Das zu verwendende Datenbank-Backend. Mögliche Werte für BACKEND sind:
    •   dummy: Dummy-Backend (keine echte Funktionalität)
    •   bdb_ro: Berkeley DB (schreibgeschützt)
    •   ndb: Native Datenbank (keine externen Abhängigkeiten)
    •   sqlite: Sqlite-Datenbank

%_dbpath VERZEICHNIS
    Der Ort der rpm-Datenbankdatei(en).

%_excludedocs WERT
    Boolescher Wert (d. h. 1 == »ja«, 0 == »nein«), welcher steuert, ob Dateien installiert werden sollen, die als %doc markiert sind.

%_flush_io WERT
    Datei-E/A während Transaktionen leeren (was bei mechanischen Festplatten zu erheblichen Leistungseinbußen führt). Mögliche Werte sind 1 zum Aktivieren und 0 zum Deaktivieren.

%_group_path PFAD
    Ort der group(5)-Dateien als durch Doppelpunkte getrennte Liste

%_httpport PORT
    Der Port des HTTP-Proxy-Servers (wird für FTP/HTTP verwendet).

%_httpproxy RECHNERNAME
    Der Rechnername des HTTP-Proxy-Servers (wird für FTP/HTTP verwendet).

%_install_langs LOCALES
    Eine durch Doppelpunkte getrennte Liste der zu installierenden Locales; all bedeutet, dass alle Locale-spezifischen Dateien installiert werden.

%_install_script_path Pfad
    Der Pfad, der in die Umgebungsvariable PATH eingefügt wurde, bevor %pre/%post usw. ausgeführt wurde.

%_keyring BACKEND
    Der Typ des zu verwendenden Schlüsselbundes. Mögliche Werte für BACKEND sind:
    •   fs: ASCII-Textdateien in einem Verzeichnis
    •   openpgp: Gemeinsames OpenPGP-Zertifikatverzeichnis
    •   rpmdb: Pseudo-Pakete in der rpmdb

%_keyringpath VERZEICHNIS
    Der Pfad zum Schlüsselbund für die Nicht-RPMDB-Varianten.

%_minimize_writes WERT
    Minimiert die Schreibvorgänge bei Transaktionen (auf Kosten häufigerer Lesevorgänge), um zum Beispiel SSD-Festplatten zu entlasten (EXPERIMENTELL). Mögliche Werte sind:
    •   0: deaktiviert
    •   1: aktiviert
    •   -1: (oder nicht definiert) Automatische Erkennung auf Plattformen, die dies unterstützen, anderenfalls deaktiviert als Standard

%_netsharedpath PFAD
    Eine durch Doppelpunkte getrennte Liste von Pfaden, wo keine Dateien installiert werden sollten. Üblicherweise sind dies Einhängepunkte von Netzwerkdateisystemen.

%_passwd_path PFAD
    Ort der passwd(5)-Dateien als durch Doppelpunkte getrennte Liste

%_pkgverify_digests HASH-ALGORITHMEN
    Eine durch Doppelpunkte getrennte Liste von Hash-Algorithmen zur Berechnung von Hashs für die gesamten Paketdateien während der Überprüfung. Die berechneten Hashs werden im Schalter Packagedigests der Pakete in der rpmdb gespeichert, die entsprechenden Algorithmen im Schalter Packagedigestalgos. Es werden keine Paket-Hashs berechnet oder gespeichert, wenn --noverify während der Paketinstallation verwendet wird.

%_pkgverify_flags VERIFIZIERUNGSSCHALTER
    Schalter zur Verifizierung von Transaktionspaketen, die zur feingranularen Steuerung der %_pkgverify_level-Aktion verwendet werden. Wird auf 0x0 gesetzt, um die volle Kompatibilität mit v4-Paketen zu gewährleisten.

%_pkgverify_level MODUS
    Erzwungener Paketüberprüfungsmodus in Transaktionen, wobei MODUS einer der folgenden Werte ist:
    •   all: erfordert gültige Hashes und Signaturen
    •   signature: erfordert gültige Signaturen
    •   digest: erfordert gültige Hashes
    •   keine: veraltetes rpm-Verhalten, nichts erforderlich

%_prefer_color WERT
    Paketkonfliktlösung bei Transaktionen, an denen zwei Architekturen beteiligt sind. Siehe auch %_transaction_color. Mögliche Werte sind:
    •   0: deaktiviert
    •   1: 32-bit-Pakete bevorzugen
    •   2: 64-bit-Pakete bevorzugen

%__plugindir VERZEICHNIS
    Verzeichnis für Transaktions-Erweiterungen.

%_query_all_fmt FORMAT
    Standard-Ausgabeformat für rpm(8)-Abfrageaktionen, wie in rpm-queryformat(7) beschrieben. Prozentzeichen müssen maskiert werden, z.B. %%{nevra}.

%_rpmlock_path DATEI
    Der Pfad der Datei, die für die Fcntl-Sperre der Transaktion verwendet wird.

%_tmppath PFAD
    Das Verzeichnis, in dem temporäre Dateien erstellt werden.

%__urlhelpercmd AUSFÜHRBARE-DATEI
    Die ausführbare Datei zum Abrufen ferner Dateien.

%__urlhelperopts OPTIONEN
    Allgemeine Optionen, die an den %__urlhelpercmd-Befehl übergeben werden sollen.

%__urlhelper_localopts OPTIONEN
    Benutzer-/rechnerspezifische Optionen, die an den %__urlhelpercmd-Befehl übergeben werden sollen.

%__urlhelper_proxyopts OPTIONEN
    Proxy-Optionen, die an den %__urlhelpercmd-Befehl übergeben werden sollen.

%_urlhelper BEFEHL
    Vollständiger Befehl (mit Optionen) zum Abrufen von fernen Dateien. Normalerweise aus den %__urlhelper*-Makros mit doppeltem Unterstrich zusammengesetzt.

%_transaction_color WERT
    Paket- und Dateikonfliktverhalten bei Transaktionen, an denen zwei Architekturen beteiligt sind. Siehe auch%_prefer_color. Mögliche Werte sind:
    •   0: »Farben« nicht berücksichtigen, nur Architektur-Kompatibilitätszuweisung verwenden
    •   1: nur 32-bit-Pakete erlauben
    •   2: nur 64-bit-Pakete erlauben
    •   3: erlauben, dass 32- und 64-bit-Pakete Dateien gemeinsam nutzen

%_vsflags_erase VERIFIZIERUNGSSCHALTER
    Beim Löschen oder Aktualisieren von Paketen verwendete Transaktionsüberprüfungsschalter.

%_vsflags_install VERIFIZIERUNGSSCHALTER
    Bei der Installation von Paketen verwendete Transaktionsüberprüfungsschalter.

%_vsflags_query VERIFIZIERUNGSSCHALTER
    Bei der Abfrage von Paketen verwendete Transaktionsüberprüfungsschalter.

%_vsflags_rebuilddb VERIFIZIERUNGSSCHALTER
    Bei der Neuerstellung der Datenbank verwendete Transaktionsüberprüfungsschalter.

%_vsflags_verify VERIFIZIERUNGSSCHALTER
    Beim Überprüfen von Paketen verwendete Transaktionsüberprüfungsschalter.

  Überprüfungsschalter
Hash-/Signaturüberprüfungsschalter für verschiedene rpm-Aktionen werden durch eine Bitmaske namens VERIFIZIERUNGSSCHALTER gesteuert. Diese Schalter steuern verschiedene Aspekte der digitalen Prüfsummen- und Signaturprüfung beim Lesen von rpm-Paketdateien und deren Kopfdaten.

Die VERIFIZIERUNGSSCHALTER werden durch bitweises ODER der einzelnen Schalter gebildet:
•   0x00001 (RPMVSF_NOHDRCHK): keine Kopfdaten aus rpmdb(8) überprüfen
•   0x00100 (RPMVSF_NOSHA1HEADER): SHA1-Hash nicht überprüfen
•   0x00200 (RPMVSF_NOSHA256HEADER): SHA256-Hash nicht überprüfen
•   0x00400 (RPMVSF_NODSAHEADER): DSA-Signatur(en) der Kopfdaten nicht überprüfen
•   0x00800 (RPMVSF_NORSAHEADER): RSA-Signatur(en) der Kopfdaten nicht überprüfen
•   0x01000 (RPMVSF_NOOPENPGP): OpenPGP-Signatur(en) der Kopfdaten nicht überprüfen
•   0x02000 (RPMVSF_NOSHA3_256HEADER): SHA3_256-Hash nicht überprüfen
•   0x04000 (RPMVSF_NOSHA512PAYLOAD): Nutzdaten-SHA512-Hash des Pakets nicht überprüfen
•   0x08000 (RPMVSF_NOSHA3_256PAYLOAD): Nutzdaten-SHA3_256-Hash des Pakets nicht überprüfen
•   0x10000 (RPMVSF_NOSHA256PAYLOAD): Nutzdaten-SHA256-Hash des Pakets nicht überprüfen
•   0x20000 (RPMVSF_NOMD5): veralteten Kopfdaten-und-Nutzlast-MD5-Hash des Pakets nicht überprüfen
•   0x40000 (RPMVSF_NODSA): veraltete Kopfdaten-und-Nutzlast-DSA-Signatur des Pakets nicht überprüfen
•   0x80000 (RPMVSF_NORSA): veraltete Kopfdaten-und-Nutzlast-RSA-Signatur des Pakets nicht überprüfen

Die Python-Bindings von RPM können beim Arbeiten mit diesen Werten hilfreich sein, zum Beispiel:
    >>> import rpm
    >>> hex(rpm.RPMVSF_NOSHA1HEADER)
    '0x100'
    >>> hex(rpm.RPMVSF_NOSHA1HEADER|rpm.RPMVSF_NOMD5)
    '0x20100'
    >>>

  Hash-Algorithmen
Die folgenden HASH-ALGORITHMEN sind rpm bekannt, ihre Verfügbarkeit kann jedoch je nach Baukonfiguration von rpm und den zugrunde liegenden Bibliotheken variieren:
•   1: MD5 (veraltet)
•   2: SHA1 (veraltet)
•   8: SHA256
•   9: SHA384
•   10: SHA512
•   12: SHA3-256
•   14: SHA3-512

UMGEBUNGSVARIABLEN
Falls die Umgebungsvariable XDG_CONFIG_HOME gesetzt ist, ersetzt sie ~/.config im RPM-Makro-Pfad.

SIEHE AUCH
rpm(8), rpm-common(8), rpm-macrofile(5), rpm-rpmrc(5), rpm-macros(7)

ÜBERSETZUNG
Die deutsche Übersetzung dieser Handbuchseite wurde von Mario Blättermann <mario.blaettermann@gmail.com> erstellt.

Diese Übersetzung ist Freie Dokumentation; lesen Sie die GNU General Public License Version 3 (https://www.gnu.org/licenses/gpl-3.0.html) oder neuer bezüglich der Copyright-Bedingungen. Es wird KEINE HAFTUNG übernommen.

Wenn Sie Fehler in der Übersetzung dieser Handbuchseite finden, schicken Sie bitte eine E-Mail an die Mailingliste der Übersetzer: debian-l10n-german@lists.debian.org.