Wie füge ich dwm Patches hinzu?

2516
Zachary Alfakir

Ich verstehe nicht, wie man dwm Patches hinzufügt, ich lasse Ubuntu laufen und habe git installiert. Soll ich nur die .diff-Datei in eine neue Datei im Verzeichnis kopieren / einfügen und tun git apply pertag.diff? Seien Sie bitte sehr deutlich, da ich hoffnungslos verloren bin.

0

1 Antwort auf die Frage

0
John Bensin

Ja, das ist so ziemlich alles. Suckless.org enthält Anweisungen zum Anwenden von Patches auf DWM . Die Vorgehensweise ist ziemlich einfach. Ich werde jedoch noch ein paar Details hinzufügen. Ich gehe davon aus, dass Sie dwm aus dem Quellcode erstellen, da Sie dies tun müssen, um Patches zu installieren.

  1. Speichern Sie den Patch irgendwo in Ihrem Quellverzeichnis und führen Sie ihn aus git apply pertag.diff.

  2. Wenn der Patch neue Dateien hinzugefügt hat, führen Sie ihn aus git add <name of new file>, um sie dem Repository hinzuzufügen. Wenn keine neuen Dateien hinzugefügt wurden, ignorieren Sie dies. Wenn Sie neue Dateien hinzugefügt haben, führen Sie git commit -adie Änderungen aus.

  3. Dwm neu erstellen. Wenn Sie dwm als root make clean installerstellen /build/dwm, führen Sie den Befehl vom obersten Ordner in dwm aus. (Wenn Sie beispielsweise die Quelle heruntergeladen haben, führen Sie den Befehl in diesem Ordner aus). Es ist der Ordner mit dem Makefile. Wenn Sie dwm als Benutzer ohne Rootberechtigung erstellen / installieren, führen Sie einfach makeden Quellordner aus.

  4. Wenn Sie Ihr System bereits für die Verwendung von dwm eingerichtet haben, indem Sie es entweder als root installieren oder als normaler Benutzer erstellen und auf die Kopie des Benutzers verweisen, müssen Sie keine Konfiguration wiederholen. Starten Sie einfach dwm neu und der Patch sollte funktionieren.


Noch ein paar Details. Technisch gesehen müssen Sie keine Änderungen am git-Repository vornehmen, aber ich mache das immer, weil ich meine Kopie von dwm in seinem eigenen Repository verwalte und Patches, Änderungen von Entwicklern usw. darin einführe und sie dann zusammenführe notwendig.

Einige nützliche Tipps:

  1. Wenn Sie vor dem Anwenden sehen möchten, was der Patch tut, laden Sie ihn herunter und führen Sie ihn aus git apply --stat pertag.diff. Dies zeigt Ihnen, welche Dateien der Patch ändert.

  2. Wenn Sie den Patch testen möchten, wenden Sie ihn git applywie oben beschrieben an, aber übernehmen Sie die Änderungen nicht . Testen Sie die Änderungen (dwm neu starten / neu erstellen, neue Funktion verwenden usw.). Wenn Sie die Änderungen rückgängig machen möchten, führen Sie dann die Änderungen aus git apply -R pertag.diff.

Ich kopiere und füge den Code [this] (http://dwm.suckless.org/patches/dwm-10e232f9ace7-pertag.diff) in eine Datei mit dem Namen pertag.diff ein. Dabei wird 'git apply' ausgeführt, aber es gibt 'fatal' aus : korrupter Patch in Zeile 181` Ich verwende dwm-6.0 unter Ubuntu 12.04 LTS. Gibt es eine Lösung für dieses Problem? Zachary Alfakir vor 10 Jahren 0
@ZacharyAlfakir Wo haben Sie den Patch heruntergeladen? Der Fehler bedeutet genau das, was er sagt; Der Patch ist beschädigt, daher muss die Datei einen Fehler enthalten, entweder weil sie von Anfang an falsch entworfen wurde oder weil Sie eine beschädigte / beschädigte Version der Datei heruntergeladen haben. John Bensin vor 10 Jahren 0
Ich habe von diesem Link kopiert / eingefügt (http://dwm.suckless.org/patches/dwm-10e232f9ace7-pertag.diff). Zachary Alfakir vor 10 Jahren 0
@ZacharyAlfakir Warum nicht einfach mit der rechten Maustaste auf den Link und "Datei speichern unter ..." (oder das entsprechende in Ihrem Webbrowser) klicken? Ich schlage vor, Sie versuchen die [dwm-Mailingliste] (http://suckless.org/community). John Bensin vor 10 Jahren 0
Ich habe andere Patches ausprobiert und es scheint, dass jeder Patch, den ich versuche, besagt, dass die letzte Zeile beschädigt ist. Zachary Alfakir vor 10 Jahren 0
@ZacharyAlfakir Haben Sie in der dwm-Mailingliste, die ich verlinkt habe, gefragt? Wenn Sie dort nachfragen und genau angeben, was Sie zum Einrichten Ihres dwm-Systems, Ihrer Versionsnummer usw. getan haben, können diese Ihnen möglicherweise helfen. Ich kann Patches perfekt auf meine dwm-Installation anwenden, sodass ich Ihr Problem nicht reproduzieren kann. John Bensin vor 10 Jahren 0