ubuntuusers.de

Coreutils: gnu vs. rust

Status: Ungelöst | Ubuntu-Version: Nicht spezifiziert
Antworten |
Dieses Thema ist die Diskussion des Artikels Wiki/Vorlagen/Rust.

Ruth-Wies

Avatar von Ruth-Wies

Anmeldungsdatum:
12. April 2023

Beiträge: 984

Wohnort: im Exil ;(

Bevor man den in drölfzig Artikeln ändern muss, sollte man mal einen Text absprechen, der in alle bestehenden Artikeln der Coreutils eingefügt werden kann, der auf die verschiedene Herkunft ab 25.10 hinweist.

(minimaler) Vorschlag:

Ab Ubuntu 25.10 haben die rust-coreutils Einzug gehalten und sind Standard. Die bisherigen Baustelle/GNU Core Utilities bleiben parallel installiert.

Ruth-Wies

(Themenstarter)
Avatar von Ruth-Wies

Anmeldungsdatum:
12. April 2023

Beiträge: 984

Wohnort: im Exil ;(

Ich versuche noch einen Anlauf. Es geht um folgende Artikel:

  • basename – Verzeichnis und Suffix von Dateinamen entfernen

  • cat – Dateien aneinanderhängen und in die Standardausgabe schreiben

  • chgrp – Gruppenzugehörigkeit ändern

  • chmod – Zugriffsrechte einer Datei ändern

  • chown – Besitzverhältnisse einer Datei ändern

  • chroot – Wurzelverzeichnis wechseln

  • cp – Dateien und Verzeichnisse kopieren

  • cut – Teile jeder Zeile aus Dateien entfernen

  • date – Ausgeben oder Setzen von Systemdatum und -zeit

  • dd – Umwandeln und Kopieren einer Datei

  • df – Anzeige der Dateisystembelegung

  • dircolors – Farbeinstellungen für ls

  • dirname – letzte Komponente des Dateinamens entfernen

  • du – gibt den Platzverbrauch von Dateien an

  • echo – Eine Zeile Text anzeigen

  • Hashfunktionen – Prüfsummen berechnen und überprüfen

    • md5sum, sha1sum, sha256sum, sha512sum usw.

  • head – den ersten Teil von Dateien ausgeben

  • ln – Links (Verknüpfungen) zwischen Dateien erstellen

  • ls – Verzeichnisinhalte auflisten

  • mkdir – ein Verzeichnis erzeugen

  • mv – Dateien verschieben oder umbenennen

  • nice – ändere die Prozesspriorität

  • nohup – einen Befehl immun gegen Aufhängen laufen lassen, mit Ausgabe in ein Nicht-Terminal

  • paste – Zeilen von Dateien zusammenfügen

  • pwd – den Namen des aktuellen Arbeitsverzeichnisses ausgeben

  • rm – Dateien oder Verzeichnisse entfernen

  • rmdir – Ein Verzeichnis entfernen

  • seq – eine Zahlenfolge ausgeben

  • Shell/tee – von Standardeingabe lesen und in Standardausgabe und Dateien schreiben

  • shred – Eine Datei überschreiben, um den Inhalt zu verstecken und optional zu löschen

  • sleep – schläft für eine angegebene Anzahl von Sekunden

  • sort – Zeilen von Textdateien sortieren

  • split – Eine Datei in Stücke teilen

  • stat – Dateistatus ermitteln

  • sync – Zwischenspeicher der Dateisysteme auf die Festplatte schreiben

  • tail – Den letzten Teil von Dateien ausgeben

  • touch – Zeitstempel von Dateien ändern

  • tr – Zeichen umwandeln oder löschen

  • uname – Name und Informationen über den laufenden Kernel abfragen

  • uniq – doppelte Zeilen berichten oder entfernen

  • unlink – löscht einen Namen und unter Umständen die Datei, auf die dieser verweist

  • users – die Benutzernamen der am aktuellen Rechner derzeit angemeldeten Benutzer ausgebenden effektiven Benutzernamen ausgeben

  • wc – Anzahl der Zeilen, Wörter und Byte für jede Datei ausgeben

  • who – anzeigen, wer angemeldet ist

  • whoami – den effektiven Benutzernamen ausgeben

In allen sollte m. M. ein Hinweis rein, dass die guten, alten GNU Core Utilities nicht mehr Standard sind. Es ist schon eine Fleißaufgabe, einen Satz in alle 45 Artikel ein zu tragen. Sollte jemand damit nicht zufrieden sein, muss er wiederum 45 Artikel ändern. Deshalb wäre es sinnvoll, den Abschnitt vorher ab zu sprechen.

erweiterter Vorschlag:

Hinweis:

Dieser Artikel beschreibt das bekannte Programm aus den GNU Core Utilities. Seit Ubuntu 25.10 wird sowohl in Neuinstallationen als auch in durch Versionsaktualisierung angehobenen Systemen rust-coreutils parallel installiert und letztere sind Standard. Dies bedeutet, dass das hier Beschriebene von der vorgefundenen Situation abweichen kann.

Ruth-Wies

(Themenstarter)
Avatar von Ruth-Wies

Anmeldungsdatum:
12. April 2023

Beiträge: 984

Wohnort: im Exil ;(

Letzte Möglichkeit zur Diskussion. Morgen schreite ich zu Tat.

kB Team-Icon

Supporter, Wikiteam
Avatar von kB

Anmeldungsdatum:
4. Oktober 2007

Beiträge: 10348

Wohnort: Münster

Ruth-Wies schrieb:

Letzte Möglichkeit zur Diskussion. Morgen schreite ich zu Tat.

Gemach, junger Padawan!

Dein Anliegen ist durchaus valide und klug, aber Ungeduld führt ins Verderben.

Ein geschickter Ansatz könnte die Erstellung einer Textvorlage sein, die den abgesprochen Hinweis einfügt und auch passend formatiert. Dies hätte den Vorteil, dass der Inhalt später leicht zu ändern wäre.

kB Team-Icon

Supporter, Wikiteam
Avatar von kB

Anmeldungsdatum:
4. Oktober 2007

Beiträge: 10348

Wohnort: Münster

kB schrieb:

[…] Textvorlage

Ich habe eine solche erstellt, die einen parametrierbaren Text erstellt:

Hinweis:

Dieser Artikel beschreibt die alte Implementation des Programms aus dem Paket gnu-coreutils 🇬🇧. Ab Ubuntu 25.10 ist auch mit Paket rust-coreutils 🇬🇧 eine neue Implementierung in der Programmiersprache Rust für Ubuntu verfügbar, und ab Ubuntu Version 26.04 wird die Implementierung in Rust als Standard bevorzugt.

Die Implementierung in Rust strebt Funktionsgleichheit mit der alten Implementierung an. Es können aber kleine Abweichungen auftreten. Dies bedeutet, dass das hier Beschriebene von der am eigenen Rechner vorgefundenen Situation abweichen kann.

Die neue Vorlage wird so angewendet:

[[Vorlage( Rust, '', Paket, Rust-Paket, ab, Std-ab, Abweichungen ) ]] 

Beispiel:

[[Vorlage( Rust, '', gnu-coreutils, rust-coreutils, 25.10, 26.04 ) ]] 

Parameter können fehlen, müssen dann aber als Leerstring angegeben werden, weil die Parameter über ihre Position identifiziert werden.

Der erste Parameter muss leer sein, hier erfolgt später eine Erweiterung. Paket steht für den Namen des alten Paket, Rust-Paket für den Namen des Paketes mit der Rust-Implementierung. Die Versionsangaben bezeichnen die Ubuntu-Versionen, ab der das Rust-Paket verfügbar bzw. Standard ist. Der letzte Parameter kennzeichnet, ob bereits Abweichungen bekannt sind.

Über Details des generierten Textes können wir uns gerne noch unterhalten.

Ruth-Wies

(Themenstarter)
Avatar von Ruth-Wies

Anmeldungsdatum:
12. April 2023

Beiträge: 984

Wohnort: im Exil ;(

Oha, ich bin da jetzt ein bisschen gespalten. Einerseits hast du daran gedacht, aber wann es Standard ist, denn noch nicht alle rostigen Coreutils sind dies. 👍

Aber ab wann die verfügbar sind und wie die Pakete heißen – bleibt zumindest aktuell – gleich. Wie wahrscheinlich ist es, dass sich die Paketnamen oder Verfügbarkeit nochmal ändern? Und sollte es sich ändern, könnte man dann immer noch ran.

Ich würde auch nicht die Pakete verlinken, sondern die betreffenden Artikel; dazu wurden sie geschrieben und bringen mehr Info, als die Paketsuche. Außerdem waren die Programme bis 25.04 in den Paketen coreutils und rust-coreutils. Ab 25.10 ist coreutils aber nur ein Metapaket und die bekannten Werkzeuge sind im Paket gnu-coreutils untergebracht. 🙄 Das macht den Hinweis einfach nur unübersichtlich.

kB Team-Icon

Supporter, Wikiteam
Avatar von kB

Anmeldungsdatum:
4. Oktober 2007

Beiträge: 10348

Wohnort: Münster

Ruth-Wies schrieb:

Oha, ich bin da jetzt ein bisschen gespalten.

Da UU sehr gut mehrere von Deiner Art gebrauchen kann, sehe ich das jetzt nicht als Problem.

Einerseits hast du daran gedacht, aber wann es Standard ist, denn noch nicht alle rostigen Coreutils sind dies. 👍

Genau deshalb ist es parametrierbar. Wenn es für das jeweilige Programm (noch) nicht zutrifft, gibt man einfach keine Version an.

In werde den Text noch in Bezug auf diesen Aspekt nach schärfen.

Aber ab wann die verfügbar sind und wie die Pakete heißen – bleibt zumindest aktuell – gleich. […]

Was die Programme aus coreutils angeht, ja. Die Textvorlage soll aber auch für ähnliche Fälle anwendbar sein.

Ich würde auch nicht die Pakete verlinken, sondern die betreffenden Artikel

Sehe ich nicht so. Die Problematik, für die der Hinweis sensibilisieren soll, ist gekoppelt an de Existenz der Pakete und nicht n die Existenz von irgendwelchen Artikeln bei UU. Deshalb will ich für den Leser ein komfortables Werkzeug, mit dem er sich zum späteren Zeitpunkt über den Status dieser Pakete informieren kann.

kB Team-Icon

Supporter, Wikiteam
Avatar von kB

Anmeldungsdatum:
4. Oktober 2007

Beiträge: 10348

Wohnort: Münster

Die hoffentlich vorläufig endgültige Fassung der versprochenen Textvorlage ist nun verfügbar. Sie kann, je nach Parametrierung, sowohl im Artikel eines durch Rust ersetzten Programms als auch im Artikel des in Rust implementierten Programms angewendet werden und generiert Hinweise wie z.B.:

[[Vorlage( Rust ) ]]
[[Vorlage( Rust, 1 ) ]]
[[Vorlage( Rust, 1, '', rust-date, '', 29.06 ) ]]
[[Vorlage( Rust, '', '', rust-date, 28.10, 29.06 ) ]]
[[Vorlage( Rust, '', 'gnu-date', rust-date, 28.10, 29.06, 1 ) ]]

Hinweis:

Dieser Artikel beschreibt die alte Implementation des Programms.

Hinweis:

Dieser Artikel beschreibt die neue Implementierung in Rust des Programms..

Hinweis:

Dieser Artikel beschreibt die neue Implementierung in Rust des Programms aus dem Paket rust-date 🇬🇧. Diese Version wird bei Ubuntu ab 29.06 als Standard bevorzugt.

Hinweis:

Dieser Artikel beschreibt die alte Implementation des Programms. Ab Ubuntu 28.10 ist auch mit Paket rust-date 🇬🇧 eine neue Implementierung in der Programmiersprache Rust für Ubuntu verfügbar, und ab Ubuntu Version 29.06 wird die Implementierung in Rust als Standard bevorzugt.

Die Implementierung in Rust strebt Funktionsgleichheit mit der alten Implementierung an. Es können aber kleine Abweichungen auftreten. Dies bedeutet, dass das hier Beschriebene von der am eigenen Rechner vorgefundenen Situation abweichen kann.

Hinweis:

Dieser Artikel beschreibt die alte Implementation des Programms aus dem Paket gnu-date 🇬🇧. Ab Ubuntu 28.10 ist auch mit Paket rust-date 🇬🇧 eine neue Implementierung in der Programmiersprache Rust für Ubuntu verfügbar, und ab Ubuntu Version 29.06 wird die Implementierung in Rust als Standard bevorzugt.

Die Implementierung in Rust strebt Funktionsgleichheit mit der alten Implementierung an. Es wurden bereits kleine Abweichungen bekannt. Zur Zeit ist nicht vorhersehbar, ob diese Abweichungen bestehen bleiben. Dies bedeutet, dass das hier Beschriebene von der am eigenen Rechner vorgefundenen Situation abweichen kann.

Weitere Fragen beantwortet: Wiki/Sandkasten

Ruth-Wies

(Themenstarter)
Avatar von Ruth-Wies

Anmeldungsdatum:
12. April 2023

Beiträge: 984

Wohnort: im Exil ;(

@kB

Ich habe im Artikel zu basename wahrgenommen, wie du dir die Sache vorstellst. Da die Wiki/Vorlagen/coreutils falsche Zahlen (s. Diskussion zur Vorlage) enthält, trage ich das so nirgends ein.

Antworten |