luizgavalda.aur

Ansible AUR-Helfer

Ansible-Modul zur Verwendung einiger Arch User Repository (AUR) Helfer sowie makepkg.

Die folgenden Helfer werden unterstützt und automatisch ausgewählt, falls vorhanden, in der unten aufgeführten Reihenfolge:

makepkg wird verwendet, wenn kein Helfer gefunden wurde oder wenn er ausdrücklich angegeben wird:

Optionen

Parameter Wahlmöglichkeiten/Standard Kommentare
name Name oder Liste der Namen der zu installierenden oder zu aktualisierenden Pakete.
state present, latest Gewünschter Zustand des Pakets, 'present' überspringt Vorgänge, wenn das Paket bereits installiert ist.
upgrade ja, nein Ob das gesamte System aktualisiert werden soll oder nicht.
use auto, yay, paru, pacaur, trizen, pikaur, aurman, makepkg Das zu verwendende Tool, 'auto' verwendet den ersten bekannten Helfer und makepkg als Fallback.
extra_args null Eine Liste zusätzlicher Argumente, die direkt an das Tool übergeben werden. Kann nicht im 'auto'-Modus verwendet werden.
aur_only ja, nein Einschränkung der Helferoperation auf das AUR.
local_pkgbuild Lokales Verzeichnis mit PKGBUILD, null Nur gültig mit makepkg oder pikaur. Lade das Paket nicht vom AUR herunter. Baue das Paket mit einem lokalen PKGBUILD und den anderen Build-Dateien.
skip_pgp_check ja, nein Nur gültig mit makepkg. Überspringe die PGP-Signaturprüfung der Quelldatei, nützlich beim Installieren von Paketen, wenn GnuPG nicht richtig konfiguriert ist.
ignore_arch ja, nein Nur gültig mit makepkg. Ignoriere ein fehlendes oder unvollständiges Arch-Feld, nützlich, wenn das PKGBUILD nicht das Arch-Feld (arch=('yourarch')) hat.

Hinweis

  • Entweder name oder upgrade ist erforderlich, beide können nicht zusammen verwendet werden.
  • Im use=auto Modus wird makepkg als Fallback verwendet, wenn kein bekannter Helfer gefunden wird.

Installation

AUR-Paket

Das ansible-aur-git Paket ist im AUR verfügbar.

Hinweis: Das Modul wird in /usr/share/ansible/plugins/modules installiert, das ist einer der Standard-Pfad für Modulsammlungen.

Manuelle Installation

Klonen Sie einfach das ansible-aur Repository in Ihr benutzerdefiniertes Modulverzeichnis:

git clone https://github.com/luizgavalda/ansible-aur.git ~/.ansible/plugins/modules/aur

Ansible Galaxy

ansible-aur ist in Galaxy verfügbar, das ein Hub für das Teilen von Ansible-Inhalten ist. Um es herunterzuladen, verwenden Sie:

ansible-galaxy install luizgavalda.aur

Hinweis: Wenn dieses Modul von Ansible Galaxy installiert wird, müssen Sie es ausdrücklich in Ihrem Playbook auflisten:

# playbook.yml
- hosts: localhost
  roles:
  - luizgavalda.aur
  tasks:
  - aur: name=package_name

oder in Ihrer Rolle:

# meta/main.yml
dependencies:
- luizgavalda.aur
# tasks/main.yml
- aur: name=package_name

Nutzung

Hinweise

  • Der Umfang dieses Moduls ist die Installation und Aktualisierung aus dem AUR; für die Paketentfernung oder für Aktualisierungen aus den Repositories wird empfohlen, das offizielle pacman Modul zu verwenden.
  • Der Parameter --needed des Helfers wird systematisch verwendet, das bedeutet, wenn ein Paket aktuell ist, wird es nicht gebaut und neu installiert.

Erstellen Sie den "aur_builder" Benutzer

Während Ansible erwartet, sich als root über SSH zu verbinden, erlauben makepkg oder AUR-Helfer nicht, Vorgänge als root auszuführen. Sie schlagen mit "Sie können diese Operation nicht als root ausführen" fehl. Daher wird empfohlen, einen Benutzer zu erstellen, der kein root ist, aber kein Passwort mit pacman in sudoers benötigt, nennen wir ihn aur_builder.

Dieser Benutzer kann in einer Ansible-Aufgabe mit den folgenden Aktionen erstellt werden:

- user:
    name: aur_builder
    create_home: no
    group: wheel
- lineinfile:
    path: /etc/sudoers.d/11-install-aur_builder
    line: 'aur_builder ALL=(ALL) NOPASSWD: /usr/bin/pacman'
    create: yes
    validate: 'visudo -cf %s'

Beispiele

Verwenden Sie es in einer Aufgabe, wie in den folgenden Beispielen:

# Installieren Sie trizen mit makepkg, überspringen, wenn es bereits installiert ist
- aur: name=trizen use=makepkg state=present
  become: yes
  become_user: aur_builder

# Installieren Sie package_name mithilfe des ersten bekannten Helfers
- aur: name=package_name
  become: yes
  become_user: aur_builder

# Installieren Sie package_name_1 und package_name_2 mit yay
- aur:
    use: yay
    name:
      - package_name_1
      - package_name_2

# Aktualisieren Sie das System mit yay, nur auf AUR-Pakete agieren.
# Hinweis: Die Abhängigkeitsauflösung schließt immer noch Repository-Pakete ein.
- aur: upgrade=yes use=yay aur_only=yes

# Installieren Sie gnome-shell-extension-caffeine-git mit pikaur und einem lokalen PKGBUILD.
# Überspringen, wenn es bereits installiert ist
- aur:
    name: gnome-shell-extension-caffeine-git
    use: pikaur
    local_pkgbuild: {{ role_path }}/files/gnome-shell-extension-caffeine-git
    state: present
  become: yes
  become_user: aur_builder
Über das Projekt

Ansible module to use some Arch User Repository (AUR) helpers as well as makepkg.

Installieren
ansible-galaxy install luizgavalda.aur
GitHub Repository
Lizenz
gpl-3.0
Downloads
1.7k
Besitzer