Liste der GNU-Pakete

Diese Liste der GNU-Pakete listet relevante Softwarepakete, welche für die Free Software Foundation (kurz FSF) entwickelt wurden – oder von ihr betreut werden – als Teil des GNU-Projekts, auf. GNU ist ein unixoides Betriebssystem, das vollständig aus freier Software besteht. Viele dieser Software-Pakete werden zusammen mit dem Linux-Kernel genutzt und bilden damit ein komplett funktionstüchtiges Computerbetriebssystem.

Definition eines GNU-Paketes

Richard Stallman kennzeichnete im Jahr 2013 neun Aspekte, die im Allgemeinen ein GNU-Paket ausmachen,[1] aber er bemerkte dabei auch, dass es durchaus die Möglichkeit zur Flexibilität und für Ausnahmen dieser Regeln gibt, wenn triftige Gründe bestehen:[2]

  1. Die Entwickler müssen behaupten, dass es ein GNU-Paket ist.
  2. Das Paket sollte über ftp.gnu.org, oder einer anderen Seite, die freien Zugang für alle anbietet, verbreitet werden.
  3. Die Website des GNU-Paketes sollte die GNU-Website sein.
  4. Die Entwickler müssen besonderen Augenmerk darauf legen, dass ihre Software auch mit anderen GNU-Paketen gut zusammen arbeitet.
  5. Die Dokumentation sollte im Texinfo-Format, oder in einem Format, das sich leicht nach Texinfo konvertieren lässt, gespeichert sein.
  6. Im Paket sollte GNU Guile für die Erweiterungssprachen genutzt werden. Ausnahmen sind jedoch erlaubt.
  7. Im Paket sollte keine unfreie Software empfohlen werden und auch auf keine unfreie Dokumentation oder unfreie Software verwiesen werden.
  8. Im Paket muss die GNU-Terminologie genutzt werden, wie zum Beispiel GNU/Linux für das Betriebssystem und den Begriff „freie Software“ anstatt „Open Source“.
  9. Der Maintainer sollte kontaktierbar sein, zumindest hin und wieder, um Probleme in der Software oder Kompatibilitätsprobleme besprechen zu können.

Basissystem

Es gibt kein offizielles „Basissystem“ vom GNU-Betriebssystem. GNU wurde konzipiert, um Unix’ Betriebssystem in den 1980er Jahren zu ersetzen. Es nutze den POSIX-Standard nur als Richtlinie, da dessen Definition ein weit größeres „Basissystem“ ergeben würde. Die folgende Liste ist eine kleine Zusammenstellung von GNU-Paketen, die man am ehesten als „Kern“-Pakete bezeichnen könnte – entgegen den weiter unten aufgeführten Pakete. Natürlich ist diese Auflistung diskutabel (einschließlich plotutils und ausschließlich C-Standard-Bibliothek).

Name Beschreibung liefert Version[Notiz 1]
bash GNUs UNIX-kompatible Shell bash 5.1 (7. Dezember 2020)
coreutils Basisbefehle fileutils: chgrp, chown, chmod, cp, dd, df, dir, du, ln, ls, mkdir, mkfifo, mknod, mv, rm etc.

textutils: cat, cksum, head, tail, md5sum, nl, od, pr, tsort, join, wc, tac, paste etc.
shellutils: basename, chroot, date, dirname, echo, env, groups, hostname, nice, nohup, printf, sleep etc.

9.0 (24. September 2021)
cpio Archivierungsprogramm cpio 2.13 (6. November 2019)
diffutils beinhaltet Werkzeuge zum Vergleichen von Dokumenten diff, cmp, diff3, sdiff 3.8 (21. August 2021)
findutils beinhaltet Suchwerkzeuge find, locate, xargs 4.9.0 (2. Februar 2022)
finger Nutzerinformation n. a. 1.37 (28. Oktober 1992)
grep sucht nach Strings in Dokumenten grep 3.7 (14. August 2021)
groff Dokumentverarbeitungssystem groff 1.22.4 (23. Dezember 2018)
GRUB GRand Unified Bootloader grub 2.06 (8. Juni 2021)
gzip Komprimierungsprogramm (gzip) gzip 1.12 (7. April 2022)
HURD[Notiz 2] Mikrokernel-basierende Zusammenstellung aus Servern, die die gleichen Funktionen ausüben wie der UNIX-Kernel n. a. 0.9 (18. Dezember 2016)
inetutils nützliches Werkzeug für Networking ftp, telnet, rsh, rlogin, tftp 2.2 (1. September 2021)
Linux-libre Ein „entblobter“ Kernel des Linux-Kernels. Dieser besteht komplett aus freier Software. n. a. 5.17 (21. März 2022)
plotutils nützliches Werkzeug um unterschiedliche Geräte anzusprechen graph, libplot, libplotter 2.6 (27. September 2009)
readline Nützliche Bibliothek zum Lesen von Befehlszeilen readline 8.1 (7. Dezember 2020)
screen ein Terminalmultiplexer screen 4.9.0 (1. Februar 2022)
sed Stream-Editor sed 4.8 (15. Januar 2020)
sysutils[Notiz 3] system utilities dient zur Verwaltung von Nutzer, Gruppen, Passwörter und Shells add-shell, chage, chfn, chgroup, chgrpmem, chpasswd, chsh, chuser, cppw, expiry, gpasswd, grpck, gshadow, hwclock, isosize, last, lastlog, login, lsage, lsgroup, lsuser, mkgroup, mkuser, nologin, passwd, pwck, remove-shell, rmgroup, rmuser, setpwnam, vipw, wall, write 0.1.6[3] (2009)
tar Archivierungsprogramm, welches mit vielen verschiedenen Formaten umgehen und diese auch erstellen kann. tar 1.34 (13. Februar 2021)
texinfo Dokumentationssystem zum Erstellen von online und gedruckten Handbüchern info, makeinfo, texindex 6.8 (3. Juli 2021)
time Programm zum Feststellen der Ausführungszeit eines Befehls time 1.9 (12. März 2018)

Anmerkungen

  1. Hierbei handelt es sich um stabile Versionen. Es gibt aber Distributionen (z. B. Gentoo Linux), die bereits Entwicklungsversionen nutzen, da stabile Versionen schon veraltet sein könnten.
  2. Da HURD noch in aktiver Entwicklung ist, gibt es derzeit noch keine stabile Version. HURD wird durch Versionskontrollsysteme verteilt.
  3. Zurzeit gibt es noch keine stabile Version. Die jetzige Version ist noch Alpha und somit noch nicht für den Produktiveinsatz geeignet.

Programme für die Software-Entwicklung

Die Software, die unterhalb aufgelistet wird, ist im Allgemeinen für Software-Entwickler und Programmierer nützlich.

GNU Toolchain

Hauptartikel: GNU Toolchain

Weitere Bibliothek und Frameworks

Die folgenden Programmbibliotheken und Frameworks werden oft in Kombination mit den Basiswerkzeugketten darüber verwendet:

Für Bibliotheken, die speziell dafür ausgerichtet sind, GUI zu implementieren, siehe Grafische Benutzeroberfläche.

Weitere Compiler und Interpreter

Die folgenden Pakete bieten Compiler und Interpreter für Programmiersprachen, die über die der GNU Compiler Collection hinaus reichen, an:

  • CLISPANSI Common-Lisp-Implementation (Compiler, Debugger, und Interpreter)
  • Gawk – GNU-awk-Implementation
  • GnuCOBOL – COBOL-Implementation
  • GNU Common Lisp – Implementation von Common Lisp
  • GNU MDK – Ein Entwicklungsbaukasten zum Programmieren in MIX
  • GNU Pascal – Pascal-Compiler
  • GNU Smalltalk – ANSI Smalltalk-98 Implementation (Interpreter und Klassenbibliothek)
  • MIT/GNU Scheme – Interpreter, Compiler und Bibliothek für die Scheme-Programmiersprache entwickelt am MIT
  • SmartEiffel – GNU Eiffel-Compiler
  • GNU Mes – Scheme Interpreter und C–Compiler zum Bootstrapping des GNU System.

Andere Entwicklerwerkzeuge

  • Data Display DebuggerFront-end debugger für verschiedene Debugger (ddd)
  • GNU arch – verteiltes Revisionskontrollsystem (missbilligt zu Gunsten von GNU Bazaar)
  • GNU AutoGen – active tier-style Werkzeug für automatische Codegenerierung
  • GNU Bazaar – verteiltes Revisionskontrollsystem
  • GNU cflow – generiert C-Fließdiagramme
  • GNU cppi – kennzeichnet C-Präprozessor-Richtlinien in Dateien und um deren Schachtelung zu spiegeln
  • GNU Fontutils – Font-Verwaltungswerkzeuge
  • GNU gperf – „perfect hash function generator“ generiert Hashfunktionen
  • GNU indent – Programm zum Einrücken von C- und C++-Quelltexten
  • GNU SASL – moderne C-Bibliothek

Nutzerprogramme

Die Software, die hier aufgelistet wird, ist im Allgemeinen nützlich für Nutzer, die sich im Speziellen nicht sehr mit Softwareentwicklung beschäftigen.

Grafische Benutzeroberfläche

Die folgenden Pakete bieten GUIs Desktopumgebungen, Fenstermanager und die dazugehörigen Grafikbibliotheken.

  • GIMP – GNU Image Manipulation Program, ein Bitmap-Bildereditor (ähnlich Photoshop)
  • GTK+ – GIMP Toolkit, beinhaltet GTK+, GDK und GLib Set aus Bibliotheken (genützt von GIMP und GNOME)
  • Gnome – GNU Network Object Model Environment, die offizielle GNU-Desktopplattform
  • GNUstep – Implementation der Cocoa-/OpenStep-Bibliotheken und Entwicklungswerkzeuge für grafische Applikationen
  • Window Maker – Fenstermanager für die GNUstep-Umgebung

Generelle Systemadministration

  • GNU Accounting Utils – Palette an Werkzeugen, welche Statistiken von Nutzern und Prozessen liefert (last, ac, accton, lastcomm, sa, dump-utmp, dump-acct).
  • GNU Ddrescue – Dateienwiederherstellungswerkzeug
  • GNU Emacs – Implementation eines Emacs-Editor
  • GNU fcrypt – On-the-fly-Verschlüsselung
  • GNU Guix – Paketverwaltung und Distribution des GNU-Systems
  • GNU libextractor – Metadatengewinnungsbibliothek und Werkzeug
  • GNU mtools – Sammlung von Werkzeugen um MS-DOS-Disketten zu bearbeiten
  • GNU nanoTexteditor
  • GNU parallel – Shell-Werkzeug zum Ausführen paralleler Aufgaben
  • GNU Parted – Festplattenpartitionierungsprogramm
  • GNU Privacy GuardPGP-Verschlüsselungsersatz
  • GNU Stow – Installationsverwaltung von Softwarepaketen
  • pexec – Shell-Werkzeug zum Ausführern paralleler Aufgaben

Datenbanken

  • GnowSys – Kernel für semantische Berechnungen
  • GNU dbm (GDBM)
  • GNU Ferret – Freies Entitätsbeziehungen- und Reverse-Engineering-Werkzeug, ein SQL-Datenbank-Designer

Wissenschaftliche Software

  • GMPLangzahlarithmetik numerische Programmkalkulationsbibliothek
  • GNU Archimedes – TCAD-Software für Halbleitergerätesimulationen
  • Gnucap – Programm zur Schaltungssimulation
  • GNU datamesh – Programmiersprache und Kommandozeilenwerkzeug für statistische Berechnungen
  • GNU Electric – EDA-Software zum Zeichnen von Schaltplänen und integrierten Schaltkreisen
  • GNU Octave – Programm für numerische Berechnungen
  • GSL – GNU Scientific Library
  • GNU Units – dient zur Umwandlung von Einheiten
  • PSPP – Statistikprogramm ähnlich SPSS
  • R – Programmiersprache und Softwareumgebung für statistische Berechnungen und Grafiken
  • XaoS – fraktaler Zoomer

Internet

Eine Nutzerseite auf einer GNU-MediaGoblin-0.2.0–basierenden Website
  • GNU Alexandria – nutzt GNU Bayonne, um Zugang zu elektronischem Inhalt und Diensten für Blinde über das öffentliche Telefonnetzwerk zu ermöglichen
  • GNU Anubis – ausgehender Mail-Prozessor, der zwischen MUA und MTA sitzt
  • GNU FM – föderierte Musikgemeinschaftsplattform, wird üblicherweise in Verbindung mit Libre.fm genannt
  • GNU Mailman – elektronische Mailinglisten-Verwaltung
  • GNU MediaGoblin – dezentralisierte Mediaverteilung
  • GNU SocialVerteiltes Soziales Netzwerk, das als weiterführendes Projekt auf der Codebasis von StatusNet arbeitet
  • Gnu Sovix – PHP-basierendes Websiterevisionssystem
  • GNU wget – avancierte Dateienabfrage aus Netzwerken und dem Internet
  • GNUnet – dezentralisiertes Peer-to-Peer-Netzwerk, entworfen, um resistent gegen Zensur zu sein
  • GnuTLSTLS-Ersatzprotokoll
  • Gnuzilla – Version der Mozilla Application Suite, welche nur freie Software beinhaltet (z. B. den GNU-IceCat-Webbrowser)
  • lsh – Implementation des Secure-Shell-Protokolls Version 2
  • GNU LibreJS – ein Browser-Add-on, das nicht-freies und nicht-triviales JavaScript erkennt und blockiert[4]
  • GNU Artanis – GNU Artanis ist ein Web Application Framework (WAF), das in Guile Scheme geschrieben ist

Büro

  • GNU Aspell – Rechtschreibprüfung konzipiert als möglicher Ersatz für Ispell
  • GNU gcal – errechnet und druckt Kalender
  • GNU Miscfiles – mehrere Datendokumente, unter anderem Standardflughafen-, Land- und Sprachencodes
  • GNU Typist – mehrsprachiger Tipp-Tutor[5]
  • Gnumeric – Tabellenkalkulationsprogramm (Excel-kompatibel)
  • OcradOptical Character Recognition, kurz OCR

Multimedia

  • 3DLDF – Grafikpaket zum Erstellen von dreidimensionalen technischen Zeichnungen (vor allem für den Einbau in TeX-Dokumenten)
  • Dia – Vektorgrafikprogramm zum Erstellen von Diagrammen
  • Gnash – Player und Browser-Plugin für das Adobe-Flash-Dokumentenformat
  • GNU LibreDWG – Bibliothek zum Lesen und Schreiben von .dwg-Dokumenten (wird genützt in CAD-Programmen)
  • GNU LilyPond – freies Notensatzprogramm
  • GNU Maverik – Virtual Reality Microkernel
  • GNU Panorama – 3D-Framework, Raytracing

Spiele

  • GNU Backgammon – Backgammonspiel
  • GNUbik – Implementation des Rubik's-Cube-Puzzles
  • GNU Chess – Schach-Engine für die Nutzung von glChess, XBoard oder ähnlichem
  • GNU Go – Implementation des Brettspiels Go
  • GNU Jump – basiert auf Xjump; auch bekannt als SDL Jump
  • GNU Kart – Autorennspiel
  • GNU Robots – Spiel für Softwareentwickler
  • Liquid War – Kriegsspiel

Business-Programme

  • GNU Health – freies Gesundheits- und Krankenhausinformationssystem
  • GNUmed – medical practice Managementsoftware für den medizinischen Gebrauch
  • GnuCash – freies Buchhaltungsprogramm
  • GNU remotecontrol[6] – eine Webapplikation zur Verwaltung von Gebäudeautomationsgeräten

Schriftarten

  • GNU FreeFont – eine Familie von freien, quelloffenen Schriftarten aus dem GNU-Projekt[7]
  • GNU Typewriter – eine Schriftart, die für verschiedensten Dinge vom FSF verwendet wird[8]

Siehe auch

Portal: Freie Software – Übersicht zu Wikipedia-Inhalten zum Thema Freie Software

Einzelnachweise

  1. Re: On the subject of Git, Bazaar, and the future of Emacs development. 3. April 2013, abgerufen am 25. August 2014. 
  2. Re: On the subject of Git, Bazaar, and the future of Emacs development. 3. April 2013, abgerufen am 25. August 2014. 
  3. subversion repository NEWS file of sysutils Abgerufen am 23. Juli 2013.
  4. GNU LibreJS. The Free Software Foundation, abgerufen am 8. Dezember 2014. 
  5. Tim Marston: GNU Typist 2.9.3 released. info-gnu, 7. Juni 2013, abgerufen am 9. Juni 2013. 
  6. GNU remotecontrol. In: directory.fsf.org. FSF, 30. September 2013, abgerufen am 14. Mai 2020. 
  7. GNU FreeFont. GNU.org, abgerufen am 14. Mai 2020. 
  8. John Sullivan: Free software advocacy materials. Free Software Foundation, 27. April 2007, abgerufen am 14. Mai 2020. 
  • FSF/UNESCO Free Software Directory – Alle GNU-Pakete