German Translation
parent
6140cd3270
commit
bd03668597
@ -0,0 +1 @@
|
|||||||
|
title: Amethyst
|
@ -0,0 +1,25 @@
|
|||||||
|
---
|
||||||
|
title: Config Schlüssel
|
||||||
|
---
|
||||||
|
|
||||||
|
## [base]
|
||||||
|
|
||||||
|
| Key | Description | Default |
|
||||||
|
| ------------------------- | --------------------------------------------------------------------------------------------------------------- | ------- |
|
||||||
|
| `pacdiff_warn` | Ob der Benutzer vor `vimdiff` für `pacdiff` gewarnt werden soll | `true` |
|
||||||
|
| `paccache_keep` | Wie viele Versionen (Anzahl der Downloads eines Pakets in den Cache) eines Pakets Sie im Cache behalten möchten | `0` |
|
||||||
|
| `paccache_keep_ins_pkgs` | Installierte Pakete von der Löschung aus dem Cache ausschließen | `true` |
|
||||||
|
| `aur_verification_prompt` | Bei `true` wird der Benutzer gefragt, ob er das AUR für eine Operation verwenden möchte. | `true` |
|
||||||
|
|
||||||
|
## [extra]
|
||||||
|
|
||||||
|
| Key | Description | Default |
|
||||||
|
| ----------- | ------------------------------------------------------------------------------------------------------- | ------- |
|
||||||
|
| `uwu` | Macht den Output von Amethyst... "knuffiger" | `false` |
|
||||||
|
| `uwu_debug` | Macht Debug und Traces `uwu`ed. Bitte senden Sie uns niemals Debug-Protokolle, wenn dies aktiviert ist. | `false` |
|
||||||
|
|
||||||
|
## [bin]
|
||||||
|
|
||||||
|
| Key | Description | Default |
|
||||||
|
| ------ | ------------------------------------------------------------------------------ | -------- |
|
||||||
|
| `sudo` | Der zu verwendende Pfad für `sudo` (oder beliebige `sudo`-ähnliche Funktionen) | `'sudo'` |
|
@ -0,0 +1,41 @@
|
|||||||
|
---
|
||||||
|
title: Erste Schritte
|
||||||
|
weight: 20
|
||||||
|
---
|
||||||
|
|
||||||
|
Amethyst ist ein schneller, effizienter und leichter AUR-Helfer und Pacman Wrapper. Entwickelt für Crystal, kompatibel mit jeder Arch-basierten Linux Distribution.
|
||||||
|
![Amethyst demo](/demos/ame.png)
|
||||||
|
|
||||||
|
## Installation
|
||||||
|
|
||||||
|
### Crystal Linux
|
||||||
|
|
||||||
|
Amethyst ist automatisch auf Crystal Linux installiert
|
||||||
|
|
||||||
|
### Nicht-Crystal Distributionen
|
||||||
|
|
||||||
|
1. `sudo pacman -S --needed base-devel pacman-contrib cargo`
|
||||||
|
2. `git clone https://github.com/crystal-linux/pkgbuild.amethyst`
|
||||||
|
3. `cd pkgbuild.amethyst && makepkg -si`
|
||||||
|
|
||||||
|
Es ist auch unter der AUR unter dem Namen [`ame`](https://aur.archlinux.org/packages/ame).
|
||||||
|
|
||||||
|
## Benutzung
|
||||||
|
|
||||||
|
Amethyst unterstützt "Subcommands" und Pacman-styled flags. Lese die [Detailierte Benutzung](usage) für mehr Informationen.
|
||||||
|
|
||||||
|
## Configurieren
|
||||||
|
|
||||||
|
Sie können Amethyst mithilfe der Datei `~/.config/ame/config.toml` konfigurieren, die automatisch erstellt wird. Jeder Schlüssel wird in [Config Schlüssel](config) erklärt.
|
||||||
|
|
||||||
|
```toml
|
||||||
|
# ~/.config/ame/config.toml
|
||||||
|
|
||||||
|
[base]
|
||||||
|
pacdiff_warn = true
|
||||||
|
paccache_keep = 0
|
||||||
|
paccache_keep_ins_pkgs = true
|
||||||
|
|
||||||
|
[bin]
|
||||||
|
sudo = 'sudo'
|
||||||
|
```
|
@ -0,0 +1,31 @@
|
|||||||
|
---
|
||||||
|
title: Detailierte Benutzung
|
||||||
|
weight: 10
|
||||||
|
---
|
||||||
|
|
||||||
|
### Allgemeine Benutzung
|
||||||
|
|
||||||
|
| Aktion | FreeBSD pkg-styled alias | Pacman-styled flags |
|
||||||
|
| ------------------------------------ | ------------------------ | ------------------- |
|
||||||
|
| Installier ein Paket | ame ins/install | ame -S |
|
||||||
|
| Deinstallier ein Paket | ame rm/remove | ame -R/-Rs |
|
||||||
|
| Update bzw. upgrade ein Paket | ame upg/upgrade | ame -Syu |
|
||||||
|
| Suche ein Paket | ame sea/search | ame -Ss |
|
||||||
|
| Abfrage der Paketliste | ame qu/query | ame -Q |
|
||||||
|
| Zeigt die Informationeneines Paketes | ame inf/info | ame -Qi |
|
||||||
|
| Reinige den pacman cache | ame cl/clean | ame -Sc |
|
||||||
|
| Schau nach .pacnew | ame di/diff | ame -D |
|
||||||
|
|
||||||
|
### Übersicht der Exit-Codes
|
||||||
|
|
||||||
|
| Exit Code (i32) | Begründung |
|
||||||
|
| --------------- | --------------------------------------------------------------------------------- |
|
||||||
|
| 1 | Ausführen von ame als UID 0 / root |
|
||||||
|
| 2 | Erstellung von Pfaden fehlgeschlagen |
|
||||||
|
| 3 | Eine oder mehrere erforderliche Paketabhängigkeiten konnten nicht gefunden werden |
|
||||||
|
| 4 | Benutzer hat die Installation eines Paketes abgebrochen |
|
||||||
|
| 5 | Pacman-Fehler bei der Installation von Paketen |
|
||||||
|
| 6 | Git-Fehler |
|
||||||
|
| 7 | Makepkg-Fehler |
|
||||||
|
| 8 | Konfigurationsdatei konnte nicht geparst werden |
|
||||||
|
| 63 | Sonstiger Fehler |
|
@ -0,0 +1,2 @@
|
|||||||
|
title: Crystal Linux
|
||||||
|
weight: 10
|
@ -0,0 +1,5 @@
|
|||||||
|
---
|
||||||
|
title: Erste Schritte
|
||||||
|
---
|
||||||
|
|
||||||
|
Wilkommen in den Dokumentationen von Crystal-Linux!
|
@ -0,0 +1,58 @@
|
|||||||
|
---
|
||||||
|
title: Wie bekommt man Wayland zum funktonieren mit einer NVIDIA Grafikkarte
|
||||||
|
---
|
||||||
|
|
||||||
|
Manchmal deaktiviert GDM GNOME Wayland, wenn es erkennt, dass Sie einen NVIDIA-Grafikprozessor besitzen. Wenn Sie die Aktivierung von GNOME Wayland erzwingen möchten, müssen Sie zunächst DRM [Kernel-Modus-Einstellung](https://wiki.archlinux.org/title/Kernel_mode_setting) (KMS) für den NVIDIA-Treiber aktivieren, damit Wayland ausgeführt werden kann. Dazu müssen Sie einen Kernel-Parameter hinzufügen, um dem NVIDIA-Treiber mitzuteilen, dass er KMS aktivieren soll. Der Kernelparameter, den Sie hinzufügen müssen, lautet `nvidia_drm.modeset=1`.
|
||||||
|
|
||||||
|
## GRUB
|
||||||
|
|
||||||
|
Wenn Sie z. B. GRUB verwenden, sollte es eine Datei namens `/etc/default/grub` geben. In dieser Datei sollte es eine Zeile geben, die wie folgt aussieht:
|
||||||
|
|
||||||
|
```
|
||||||
|
GRUB_CMDLINE_LINUX_DEFAULT="loglevel=3 quiet"
|
||||||
|
```
|
||||||
|
|
||||||
|
Sie wollen den neuen Kernel-Parameter am Ende der Zeile, zwischen den Anführungszeichen, einfügen. Parameter werden durch Leerzeichen getrennt, also fügen Sie nach dem letzten Parameter ein Leerzeichen ein und fügen den Parameter dort an. Stellen Sie sicher, dass Sie die Datei mit Superuser-Rechten (mit `sudo`) bearbeiten, sonst erhalten Sie einen Fehler beim Schreiben der Datei.
|
||||||
|
|
||||||
|
### Beispiel
|
||||||
|
|
||||||
|
```
|
||||||
|
GRUB_CMDLINE_LINUX_DEFAULT="loglevel=3 quiet nvidia_drm.modeset=1"
|
||||||
|
```
|
||||||
|
|
||||||
|
Nachdem Sie den Kernelparameter hinzugefügt haben, müssen Sie sicherstellen, dass GRUB weiß, dass Sie Ihre Kernelparameter geändert haben. Zu diesem Zweck müssen Sie Ihre GRUB-Konfigurationsdatei neu erstellen. Um Ihre GRUB-Konfigurationsdatei neu zu erstellen, führen Sie `sudo grub-mkconfig -o /boot/grub/grub.cfg` aus. Ihre GRUB-Konfiguration sollte dann den neuen Kernel-Parameter enthalten und Sie können ihn verwenden, indem Sie Ihr System neu starten.
|
||||||
|
|
||||||
|
## Was ist zu tun, nachdem Sie den Kernel-Parameter hinzugefügt haben?
|
||||||
|
|
||||||
|
Nachdem Sie den Kernel-Parameter hinzugefügt und neu gestartet haben, ist dies möglicherweise alles, was Sie tun müssen, damit GNOME Wayland funktioniert. Prüfen Sie, ob Sie auf GNOME Wayland zugreifen können, und wenn nicht, versuchen Sie diese anderen Schritte.
|
||||||
|
|
||||||
|
Starten Sie danach neu und prüfen Sie, ob GNOME Wayland funktioniert. Wenn es immer noch nicht funktioniert, müssen Sie einige Module zu Ihrem initramfs hinzufügen, um die Bootmodi frühzeitig einzustellen. Es sollte eine Datei (in Arch-basierten Distributionen) namens `/etc/mkinitcpio.conf` geben. In dieser Datei sollte es eine Zeile `MODULES` geben. In dieser Zeile sollten sich einige Klammern befinden. Zwischen den Klammern können Sie Kernelmodule hinzufügen, die Sie in Ihr initramfs einbauen möchten (jedes Modul wird durch ein Leerzeichen getrennt). Wir wollen einige NVIDIA-Module zu unserem initramfs hinzufügen, damit sie zu Beginn des Bootvorgangs geladen werden können. Fügen Sie also diese Module zu der Datei hinzu. Stellen Sie sicher, dass Sie diese Datei mit Superuser-Rechten bearbeiten.
|
||||||
|
|
||||||
|
```
|
||||||
|
nvidia nvidia_modeset nvidia_uvm nvidia_drm
|
||||||
|
```
|
||||||
|
|
||||||
|
### Beispiel
|
||||||
|
|
||||||
|
```
|
||||||
|
MODULES=(nvidia nvidia_modeset nvidia_uvm nvidia_drm)
|
||||||
|
```
|
||||||
|
|
||||||
|
Und danach müssen Sie Ihr initramfs neu generieren. Führen Sie dazu diesen Befehl aus.
|
||||||
|
|
||||||
|
```
|
||||||
|
sudo mkinitcpio -P
|
||||||
|
```
|
||||||
|
|
||||||
|
### Removing the gdm udev that disables wayland
|
||||||
|
|
||||||
|
GDM verwendet einige Chipsatz-abhängige [udev Regeln](https://gitlab.gnome.org/GNOME/gdm/-/blob/main/data/61-gdm.rules.in), um festzustellen, ob es die Verwendung von Xorg erzwingen soll, anstatt Ihnen die Verwendung von Wayland zu ermöglichen. Wenn Sie Wayland erzwingen wollen, führen Sie diesen Befehl aus.
|
||||||
|
|
||||||
|
```
|
||||||
|
sudo ln -s /dev/null /etc/udev/rules.d/61-gdm.rules
|
||||||
|
```
|
||||||
|
|
||||||
|
Dieser Befehl sollte die udev-Regeln von GDM mit _nichts_ verlinken. Die Regeln in `/etc/udev/rules.d/` sollten die Regeln in `/usr/lib/udev/rules.d` überschreiben (die vom Paket selbst ausgeliefert und von Ihrem Paketmanager verwaltet werden).
|
||||||
|
Danach starten Sie neu und GNOME Wayland _sollte_ funktionieren!
|
||||||
|
|
||||||
|
Wenn es dann immer noch nicht funktioniert, unterstützt Ihr Grafikprozessor Wayland möglicherweise nicht mit den proprietären NVIDIA-Treibern. Es gibt keine andere Lösung als die Verwendung des Nouveau-Treibers, der nicht alles unterstützt, was der proprietäre NVIDIA-Treiber tut.
|
@ -0,0 +1 @@
|
|||||||
|
title: Malachite
|
@ -0,0 +1,129 @@
|
|||||||
|
---
|
||||||
|
title: Gemeinsame Merkmale der Modi
|
||||||
|
---
|
||||||
|
|
||||||
|
## Was du wissen musst
|
||||||
|
|
||||||
|
Malachite ist im Repository-Modus ziemlich umfangreich, im Workspace-Modus dagegen nicht so sehr.
|
||||||
|
|
||||||
|
Das liegt natürlich nicht daran, dass ich faul bin und den Arbeitsbereich-Modus hasse oder so, es gibt einfach nicht
|
||||||
|
nicht viel _hinzufügen_.
|
||||||
|
|
||||||
|
Werfen wir nun einen Blick auf diese Beispiel-Konfigurationsdatei.
|
||||||
|
|
||||||
|
```toml
|
||||||
|
# mlc.toml
|
||||||
|
|
||||||
|
[base]
|
||||||
|
mode = "workspace"
|
||||||
|
smart_pull = true
|
||||||
|
|
||||||
|
[mode.workspace]
|
||||||
|
git_info = true
|
||||||
|
colorblind = true
|
||||||
|
|
||||||
|
[repositories]
|
||||||
|
repos = [
|
||||||
|
"foo:repo1:2",
|
||||||
|
"foo:repo2/testing",
|
||||||
|
"bar:baz!",
|
||||||
|
"bar:qux/testing!:1",
|
||||||
|
]
|
||||||
|
|
||||||
|
[repositories.urls]
|
||||||
|
foo = "https://example.org/{}.git"
|
||||||
|
bar = "https://example.org/other/{}.git"
|
||||||
|
```
|
||||||
|
|
||||||
|
Das wird auf den ersten Blick sehr verwirrend aussehen, aber haben Sie Vertrauen in mich.
|
||||||
|
|
||||||
|
In diesem Dokument wird nur das behandelt, was man für **beide** Modi wissen muss.
|
||||||
|
Speziellere Anleitungen werden für jeden Modus am Ende dieser Seite verlinkt.
|
||||||
|
|
||||||
|
Beginnen wir mit den Grundlagen
|
||||||
|
|
||||||
|
## Basis-Konfiguration
|
||||||
|
|
||||||
|
Die Basiskonfiguration definiert einige gemeinsame Parameter für alle Malachite-Modi.
|
||||||
|
|
||||||
|
```toml
|
||||||
|
[base]
|
||||||
|
mode = "workspace"
|
||||||
|
smart_pull = true
|
||||||
|
```
|
||||||
|
|
||||||
|
In diesem Ausschnitt definieren wir "mode" als "workspace".
|
||||||
|
|
||||||
|
base.mode" kann in Malachite immer nur eine der Optionen "workspace" oder "repository" sein, und definiert, Trommelwirbel...
|
||||||
|
Der Modus, in dem er arbeitet. Wenn er auf etwas anderes als diese 2 Modi eingestellt ist, stürzt er ab.
|
||||||
|
|
||||||
|
Ebenfalls in diesem Ausschnitt definiert ist `smart_pull`, das steuert, ob intelligent gezogen werden soll.
|
||||||
|
|
||||||
|
Das bedeutet, dass Malachite anstelle eines einfachen `git pull` in jedem Repository, Malachite
|
||||||
|
wird:
|
||||||
|
|
||||||
|
- Führt zuerst `git remote update` aus, um neue Remotes vom Source zu holen.
|
||||||
|
- Dann wird ausgeführt `git status` und analysiert die Ausgabe, um festzustellen, ob der aktuelle Zweig im Rückstand ist
|
||||||
|
- Wenn der aktuelle Zweig im Rückstand ist, wird ein reguläres `git pull` ausgeführt, das die bereits aktualisierten Remote ausnutzt.
|
||||||
|
|
||||||
|
Theoretisch beschleunigt dies die Dinge nur um einen winzigen Betrag (man denke an Millisekunden, wirklich). Wo diese Funktion jedoch glänzt,
|
||||||
|
ist im Repository-Modus, wo es hilfreiche Automatisierungsfunktionen wie `build_on_update` ermöglicht.
|
||||||
|
|
||||||
|
Trotzdem ist es empfehlenswert, diese Funktion zu aktivieren, um die Geschwindigkeit zu erhöhen, und sie nur zu deaktivieren, wenn sie Probleme verursacht.
|
||||||
|
Ich persönlich hatte in der Vergangenheit noch nie Probleme damit, aber wer weiß, was alles passieren kann. Wir reden hier über Git.
|
||||||
|
|
||||||
|
### Repositories-Konfiguration
|
||||||
|
|
||||||
|
Die Konfiguration der Repositories ist realistisch gesehen das, was Malachite intern zu Butter werden lässt.
|
||||||
|
Sie ist der ganze und deshalb haben wir versucht, ein kleines, aber feines System zu entwickeln, mit dem man viele Pakete zu erleichtern,
|
||||||
|
ohne jede URL eine Million Mal eingeben zu müssen.
|
||||||
|
|
||||||
|
```toml
|
||||||
|
[repositories]
|
||||||
|
repos = [
|
||||||
|
"foo:repo1:2",
|
||||||
|
"foo:repo2/testing",
|
||||||
|
"bar:baz!",
|
||||||
|
"bar:qux/testing!:1",
|
||||||
|
]
|
||||||
|
|
||||||
|
[repositories.urls]
|
||||||
|
foo = "https://example.org/{}.git"
|
||||||
|
bar = "https://example.org/other/{}.git"
|
||||||
|
```
|
||||||
|
|
||||||
|
Der Weg wie das funktioniert ist einfach:
|
||||||
|
|
||||||
|
- Wir haben 2 URLs im Schlüssel `repositories.urls`.
|
||||||
|
- Jedem `repo` im Schlüssel `repositories.repos` ist ein Bezeichner vorangestellt.
|
||||||
|
- Wenn die Nummer `foo` ist, wird die URL mit der ID `foo` eingefügt.
|
||||||
|
- Insbesondere wird in der URL der Name des definierten `repo` anstelle der Teilzeichenkette `%repo%` eingefügt.
|
||||||
|
|
||||||
|
### Moment mal, was sind die besonderen Symbole????
|
||||||
|
|
||||||
|
Ich bin froh, dass Sie gefragt haben!
|
||||||
|
|
||||||
|
- Wenn Sie einen bestimmten Zweig klonen wollen, verwenden Sie einfach den Begrenzer `/`. Um das Repository `foo` auf den Zweig `bar` zu klonen, verwenden Sie `id:foo/bar`.
|
||||||
|
- Wenn Sie wollen, dass ein bestimmtes Paket zuerst gebaut wird, verwenden Sie Instanzen von `!`, um die Priorität festzulegen. Dies wird später auf der Seite [Repository Mode](REPOSITORY_MODE.md) erklärt.
|
||||||
|
|
||||||
|
Das letzte `:` Trennzeichen ist völlig optional und verhält sich je nach Modus unterschiedlich:
|
||||||
|
|
||||||
|
- Im Repository-Modus definiert es den gewünschten Commit-Hash/Rev/Tag zum Auschecken beim Klonen des Repositorys
|
||||||
|
- Im Arbeitsbereich-Modus definiert es die gewünschte Tiefe, um das Repository zu klonen, was bei großen Git-Repositories wie `nixpkgs` nützlich ist.
|
||||||
|
|
||||||
|
Das war's buchstäblich!
|
||||||
|
|
||||||
|
## Modus-spezifische Konfig.
|
||||||
|
|
||||||
|
Für modusspezifische Konfigurationen, schauen Sie sich die folgenden Links an!
|
||||||
|
|
||||||
|
- [Workspace Mode](WORKSPACE_MODE.md)
|
||||||
|
- [Repository Mode](REPOSITORY_MODE.md)
|
||||||
|
|
||||||
|
## Beispiel
|
||||||
|
|
||||||
|
Funktionierende Konfigurationsbeispiele für beide Modi sind im Verzeichnis [examples](../examples) verfügbar!
|
||||||
|
|
||||||
|
## Verwendung
|
||||||
|
|
||||||
|
Alternativ können Sie sich auch den [Usage](usage) Guide ansehen!
|
@ -0,0 +1,35 @@
|
|||||||
|
---
|
||||||
|
title: Detailierte Benutzung
|
||||||
|
---
|
||||||
|
|
||||||
|
Arbeiten Sie härter, machen Sie es besser!
|
||||||
|
|
||||||
|
## Globale Flags
|
||||||
|
|
||||||
|
| Flag | Description |
|
||||||
|
| ----------------- | ------------------------------------------------------------------------------------------------------------------------------------------------------- |
|
||||||
|
| `--verbose`, `-v` | Gibt viele Debug-Informationen an `stderr` aus. Wenn etwas nicht funktioniert, hilft es uns sehr, wenn Sie uns die Ausgabe mit dieser Funktion schicken |
|
||||||
|
| `--exclude`, `-x` | Schließt das angegebene Paket von der aktuellen Operation aus. Kann mehrfach verwendet werden. |
|
||||||
|
|
||||||
|
## Grundlegende Befehle
|
||||||
|
|
||||||
|
| Action | Command | Extra Flags |
|
||||||
|
| ------------------------------------------------------------------------------------------------------------ | ----------------------------------------- | -------------------------------------------------------------------------------------------------------------------------------- |
|
||||||
|
| Erstellen Sie ein Paket/Pakete. | `mlc build <package>` [all if left empty] | `--no-regen`: Regeneriert das Repository nach dem Build nicht |
|
||||||
|
| Erzeuge pacman repository | `mlc repo-gen` | |
|
||||||
|
| Lokale Repos/PKGBUILDs aktualisieren | `mlc pull/update` [all if left empty] | `--no-regen`: Wenn `mode.repository.build_on_update` `true` ist, wird das Repository nach der Paketerneuerung nicht neu erstellt |
|
||||||
|
| Konfigurationsdatei erstellen und/oder öffnen | `mlc conf` | |
|
||||||
|
| Initialisiert Repo/Workspace basierend auf der Konfiguration in mlc.toml | `mlc clone/init` | |
|
||||||
|
| Zeigt eine Infotafel/Übersicht über das aktuelle Projektarchiv an | `mlc info/status` | |
|
||||||
|
| Setzt das Malachite-Repository zurück, indem es alle Verzeichnisse löscht und `mlc.toml` und `.git` auslässt | `mlc clean/reset` | `--force`: Entfernen unsauberer Verzeichnisse (unstaged, untracked, etc.) |
|
||||||
|
|
||||||
|
## Exit Codes
|
||||||
|
|
||||||
|
| AppExitCode (named Enum) | Exit code (i32) | Error Description |
|
||||||
|
| ------------------------ | --------------- | ---------------------------------------------------------------------------------------------------------------------------------- |
|
||||||
|
| `RunAsRoot` | `1` | Malachit wurde als Root ausgeführt. Hiervon wird dringend abgeraten. Und zwar so sehr, dass es sich weigert, ausgeführt zu werden. |
|
||||||
|
| `PkgsNotFound` | `2` | Es wurden keine Pakete für den gewünschten Vorgang angegeben/gefunden |
|
||||||
|
| `DirNotEmpty` | `3` | Es wurde versucht, ein Malachite-Repository in einem nicht leeren Verzeichnis zu erstellen |
|
||||||
|
| `ConfigParseError` | `4` | Die Konfigurationsdatei konnte nicht geparst werden |
|
||||||
|
| `RepoParseError` | `5` | Die Repository-Informationen konnten nicht geparst werden |
|
||||||
|
| `RepoNotClean` | `6` | Das Git-Repository ist nicht sauber und kann nicht ohne `--force` entfernt werden |
|
Loading…
Reference in New Issue