Fryboyter

Fd - Finden einmal anders

Wer Linux nutzt wird früher oder später auf den Befehl find stoßen. Mit diesem lassen sich, wie der Name schon vermuten lässt, Sachen wie Dateien finden. Vor ein paar Wochen bin ich nun auf die Alternative fd gestoßen, welche gar nicht mal so schlecht ist.

Nehmen wir mal an, wir haben den Ordner "Projekt" auf der Festplatte. In diesem befindet sich eine Datei die wir dringend brauchen und  von der wir nur wissen, dass sie den Namen README hat. Aber nicht ob .md, .doc. oder .txt. Mit find würde man wohl in das Projekt-Verzeichnis wechseln und dort find . -iname 'README*' ausführen. Bei fd reicht schon in das Verzeichnis zu wechseln und fd README auszuführen (wer will kann natürlich auch das Verzeichnis angeben. Zum Beispiel find README /home/nutzer/Projekt). Fd sucht hier automatisch rekursiv alles in dem irgenwie README vorkommt. Somit wird zum Beispiel README.md oder README.gz gefunden. Aber auch Verzeichnisse wie ./README/Anleitung.doc. Wer nur nach Dateien suchen will, kann den Parameter -tf verwenden. Wenn nur Verzeichnisse gesucht werden sollen -td.

Nehmen wir als nächstes Beispiel einmal an, wir suchen nach einer Datei von der wir nur wissen, dass Sie die Endung .md hat. Mit find würde mal wohl find . -type f -name '*.md' nutzen. Mit fd reicht fd *.md.

Das sind jetzt nur einmal zwei Beispiele in denen ich fd find vorziehen würde. Ist fd nun ein vollwertiger Ersatz für find? Definitiv nicht. Denn Sachen wie find -inum 123456789 sind unter fd nicht möglich. Aber für das allgemeine Suchen von Dateien reicht fd locker aus. Zudem ist fd auch deutlich schneller beim Liefern der Suchergebnisse als find. Hat fd auch Nachteile? Kommt wohl auf die eigene Sichtweise an. Fd sollte zum einen in keiner Standardinstallation zu finden sein. Zum anderen wird als Abhängigkeit zum Erstellen von fd Rust benötigt. Die schlägt, zumindest unter Arch, mit etwa mehr als 240 MB zu buche. Rust kann man allerdings hinterher gefahrlos wieder entfernen.


Vorschau auf den neuen Matrix-Client Riot

Der eine oder andere wird es schon mitbekommen haben, dass ich in Punkto Messenger große Hoffungen in der Protokoll Matrix lege. Der offizielle Client Riot war bisher aber immer ein großer Kritikpunkt bei vielen Nutzern.

Anfang 2018 haben die Entwickler von Matrix / Riot 5 Millionen von Status erhalten. Diese Summe sollte unter anderem in die Verbesserung des Referenz-Client Riot investiert werden. Heute wurden nun die ersten Screenshots des neuen Clients veröffentlicht.

Wer nichts mit dem offiziellen Client anfangen kann, kann ich zum Beispiel die alternativen Clients Quaternionnheko oder fractal ansehen. Diese sind vom Funktionsumfang her aber meist noch eingeschränkt, so dass bei nheko beispielsweise die Verschlüsselung noch nicht implementiert ist.


ZSH-Alias mit Platzhalter

Derzeit teste ich mal wieder AUR-Helper. Da ich mir die Paramenter usw. nicht merken will, lege ich ich normalerweise Aliase an. Für das Suchen im AUR wäre ein möglicher Alias zum Beispiel alias aurs='trizen -Ssa'. Derzeit teste ich den AUR-Helper aurman.

Hier wäre der Befehl nur im AUR nach Paketen zu suchen aurman -Ss Suchbegriff --aur. Da in diesem Fall der Suchbegriff mitten im Befehl steht klappt ein Alias wie aurs='aurman -Ss --aur' nicht wirklich. In den Alias einen Platzhalter zu packen (aurs='aurman -Ss $1 --aur') funktioniert ebenfalls nicht. Die Lösung hierfür ist kein Alias sondern eine Funktion.

Hierfür legen wir uns am besten ein extra Verzeichnis im Home-Verzeichnis an. Beispielswese .zfunc. In diesem erstellen wir nun die Datei aursearch und füllen diese mit folgendem Inhalt und speichern diese anschließend.

function aurs() {
aurman -Ss $1 --aur
}

Anstelle von aurs geben wir den Namen ein über den wir die Funktion aufrufen wollen. Da bei mir die Aliase für den AUR-Helper normalerweise aurs (suchen), auri (installiere) und auru (aktualisieren) lauten habe ich mich hier für aurs entschieden.

Damit die Funktion automatisch zur Verfügung steht öffnen wir nun noch die Konfigurationsdatei von zsh (normalerweise .zshrc) und fügen dort folgende Zeile ein.

source ~/.zfunc/aursearch

Hierbei ist zu beachten dass man den Namen der Datei angibt und nicht den Befehl mit dem man die Funktion ausführt.

Von nun an kann man nun mittels aurs Suchbegriff im AUR nach Paketen suchen. Eventuell vorhanden Aliase mit dem gleichen Namen sollte man aber vorher löschen bzw. auskommentieren.,


Man kann mir nun verschlüsselte E-Mails senden

Ich wurde heute nach meinem öffentlichen PGP-Schüssel gefragt mit dem man mir verschlüsselte E-Mails zukommen lassen kann. Da das die erste Anfrage seit Jahren war, musste ich erst einmal passen, da es die Adresse für die ich damals einen Schlüssel erstellt habe, nicht mehr existiert.

Auch wenn ich in der Praxis vermutlich wenig bis gar keine verschlüsselten E-Mails erhalten werde, habe ich für die im Impressum genannte E-Mail-Adresse ein PGP-Schlüsselpaar erstellt. Den öffentlichen Schlüssel kann man hier herunterladen. Auf einen Keyserver werde ich nichts hochladen, da ich beim letzten mal schneller Spam erhalten habe als ich die Adresse samt öffentlichen Schlüssel veröffentlicht habe. Der Fingerprint des Schlüssels lautet 288B 8E32 5378 AC5B A3D0  C76F E235 C466 7179 7AE4.


Ich bin kein Ideologie-Depp

Gestern hatte ich über IRC mal wieder eine Diskussion geführt, warum man Linux bzw. OSS im Allgemeinen nutzt bzw. nutzen soll. Im Laufe der Diskussion hat sich erneut herauskristallisiert, dass ich zwar Respekt vor Stallman habe aber mir seine Ansichten trotzdem größtenteils am Arsch vorbeigehen. Bin ich nun ein schlechter Mensch?

Gefühlt gehöre ich irgendwie zur Minderheit der Nutzer von Linux bzw. OSS die dies einfach aus rein technischen Gründen tun. Zum Beispiel weil eben nach dem Bekanntwerden von Sicherheitslücken sehr schnell Updates angeboten werden. Oft schneller als die Medien reagieren können. Und man diese notfalls auch abseits der Paketverwaltung einspielen kann. Trotzdem setzte ich in bestimmten Fällen auch einfach auf proprietäre Lösungen. Anstelle der quelloffenen Nouveau-Treiber nutze ich die proprietären Treiber von Nvidia. Wieso? Weil ich auch unter Linux zocke. Zum Beispiel CS:GO. Und da sind die Treiber von Nvidia einfach derzeit besser. Punkt. Ein weiteres Beispiel wäre der Editor. Ja es gibt eine Arsch voll quelloffener Editoren unter Linux. Aber egal welchen ich teste, ich lande trotzdem immer wieder bei Sublime Text. Das hat in dem Fall nicht einmal unbedingt etwas mit dem Funktionsumfang zu tun sondern einfach etwas mit dem "Look & Feel". Genauso wie ich eben Vivaldi anstelle von Firefox bevorzuge. Bei Vivaldi muss ich mir nicht x Erweiterungen installieren. Er funktioniert größtenteils einfach "out of the box" wie ich es will.

Sehr oft wird als Argument für Linux bzw. OSS die Freiheit angegeben. Aber spätestens wenn es um die Lizenz diverser Programme geht, hört diese Freiheit scheinbar bei vielen auf. Meiner Meinung nach sollte man auch als Nutzer von OSS oder Linux die Freiheit haben auch nicht quelloffene Software zu nutzen. Ich finde, dass eine Nutzung von 80 Prozent OSS und 20 Prozent CSS immer noch besser ist als 100 Prozent CSS. Wobei auch einen Nutzung von 100 Prozent CSS nicht zwangsläufig "böse" ist.

Und quelloffene Software kann sicherer sein als nicht quelloffene  Software. Aber die letzen Jahre haben gezeigt, dass auch in quelloffener Software Sicherheitslücken über Jahre unentdeckt bleiben. Nur weil man theoretisch die Möglichkeit hat den Quellcode zu prüfen bedeutet es ja noch lange nicht, dass es auch jemand macht. Bzw. dass dieser auch alle Probleme entdeckt. Genauso wie eben nicht jeder Entwickler von nicht quelloffener Software automatisch ein Backdoor oder eine Spionagefunktion einbaut. Unterm Strich ist es also für den durchschnittlichen Nutzer eine Sache des Vertrauens. Vertraue ich nun quelloffenen Code den ich selbst nicht beurteilen kann und der vielleicht auch nicht von anderen mit mehr Ahnung geprüft wird? Oder vertraue ich Leuten wie Tetzchner (Chef von Vivaldi) die mir bisher keinen Anlass gegeben haben ihnen zu misstrauen?

Gerade in der heutigen Zeit sollte man natürlich immer misstrauisch sein (z. B. https://github.com/canonical-websites/snapcraft.io/issues/651). Aber man sollte vielleicht auch öfters einfach mal etwas tolleranter gegenüber anderen Nutzern sein. Es wäre schön, wenn es mal eine Zeit geben würde, in der ich mich nicht verdeitigen müsste, wieso ich Sublime Text anstelle eines anderen quelloffenen Editors nutze. Oder wenn ich mir mal keine dummen Sprüche anhören muss nur weil ich Distribution X nutze. Unterm Strich sollten wir Nutzer von Linux / OSS doch eigentlich alle an einem Strang ziehen. Statt dessen führen viele einfach nur einen lächerlichen Kleinkrieg. Distribution gegen Distribution. Editor gegen Editor. DE gegen DE. Warum versuchen wir nich einfach gemeinsam etwas zu verbessern? Warum müssen wir wegen jedem Scheiß einen Fork erstellen anstelle sich auf einen Mittelweg zu einigen? Und warum können wir nicht einfach akzeptieren, dass es auch Nutzer gibt die Linux / OSS nicht nutzen können oder einfach nicht nutzen wollen? Oder das man eben anstelle von Plasma Gnome nutzt? Auch das ist ein Teil von Freiheit. Und gerade das ist doch eigentlich wichtig.

In diesem Sinne. Be nice or go away.