Der Vortrag richtet sich an Zuhörer, die an der Philosophie
Debian-interner Projekte und der dabei eingesetzten Techniken, um die
Projekte zu verwalten, interessiert sind. Es wird im Detail erläutert,
warum diese Projekte keine Abspaltungen ("forks") von Debian sind,
sondern vollständig in die Debian GNU/Linux Distribution integriert
sind und welche Vorteile durch diesen Ansatz erzielt werden. Das
Konzept der Meta-Pakete und Nutzer-Rollen basierter Menüs wird
eingehend behandelt.
Der Vortrag richtet sich an ein technisch interessiertes Publikum.
Debian Interne Projekte
Debian-Edu
DeMuDi
|
(Seite 1) |
Überblick
- Was ist Debian?
- Was sind Debian interne Projekte?
- Debian - adaptierbar für jeden Zweck?
- Technologie
- Dokumentation
- Zukunft
|
(Seite 2) |
Was ist Debian?
- Linux ist einfach nur der Kern des Betriebssystems.
- Benötigt werden darüber hinaus eine große Zahl von Anwendungen.
- Solche Sammlungen von Software um den Linux-Kern wird als
Distribution bezeichnet.
- Firmen, die solche Distributionen zusammenstellen werden
Distributor genannt.
- Sie erwirtschaften Geld durch den Verkauf dieser Distribution,
durch Nutzerunterstützung und -schulung.
- Beispiele für solche Distributoren sind Mandrake, RedHat, Suse und andere.
- Debian ist einfach einer dieser Distributoren.
|
(Seite 3) |
Verzeihung.
Das war nicht korrekt.
|
(Seite 4) |
Das Debian-Projekt ist eine Gemeinschaft von Individuen die in
Gemeinschaftsarbeit ein freies Betriebssystem entwickeln. Dieses
Betriebssystem, das wir entwickelt haben, wird
Debian GNU/Linux,
genannt, oder einfach nur Debian.
Weiterhin wird daran gearbeitet, Debian mit anderen Kerneln
anzubieten, hauptsächlich für Hurd. Andere mögliche Kernel sind BSD
und auch Ports für MS Windows sind geplant.
|
(Seite 5) |
Netzwerk des Vertrauens
|
(Seite 6) |
Unterschiede zu anderen Distributionen
- Debian ist keine Firma sondern eine Organisation.
- Debian verkauft nichts.
- Debian Mitglieder (sogenannte Entwickler) sind Freiwillige.
- Die Entwickler arbeiten an dem gemeinsamen Ziel: Das
bestmögliche Betriebssystem herzustellen.
- Debian ist die größte Sammlung sofort installierbarer freier
Software im Internet
- Es gibt zwei Möglichkeiten Debian GNU/Linux zu beziehne:
- Es kann bei verschiedenen anderen Distributoren auf
CD erworben werden
- Kostenlose Installation direkt aus dem Web
- Der letzte Weg ist der übliche und es gibt äußerst praktische
Programme, die das sehr flexibel unterstützen.
|
(Seite 7) |
Was sind Debian interne Projekte?
- Debian besteht aus etwa 10000 Programm-Paketen
- In der Regel sind Nutzer jedoch nur an einer Untermenge all
dieser Pakete interessiert
- Interne Projekte sorgen für spezielle Nutzergruppen mit
unterschiedlichen Fähigkeiten und Interessen
- Es sind nicht nur praktische Sammlungen von spezifischen
Programm-Paketen sondern es wird auch für leichte Installation
und Konfiguration Sorge getragen.
- Keine Abspaltung ("fork") von Debian
→ Grundidee: Es wird keine separate
Distribution erstellt, sondern Debian für einen speziellen Zweck angepaßt.
|
(Seite 8) |
Motivation
- Profil der ins Auge gefaßten Nutzer:
- Geringe technische Kompetenz
- Nicht in der Lage, Programme so wie sie direkt von den
Autoren angeboten werden mit akzeptablem Aufwand zu installieren
- Kein Interesse an der Administration
- Interesse begrenzt auf eine definierte Untermenge der
verfügbaren freien Software
- Bedarf für leichte Bedienbarkeit
- Exakt beschreibbare Sicherheitsanforderungen
- Weitere denkbare Projekte:
- Behörden
- Büro
- Unternehmen / Finanzbuchhaltung
- ???
|
(Seite 9) |
Status freier Software auf Speizialgebieten
- Schwierig zu installieren
- Schwierig zu betreuen
- Schwer zu benutzen weil teilweise graphische Oberflächen fehlen
- Ungewöhnliche Lizenzen
- Vom ursprünglichen Autor nicht weiter betreut
- Portierungsprobleme (Hardware-Architekturen, Byte-Reihenfolge, 32 vis 64 Bit)
- Datenformate nicht austauschbar
- Parallele Entwicklung ein und derselben Funktionalität
- Die verwendeten Software-Werkzeuge sind teilweise nicht für den
Verwendungszweck geeignet
→ Fehlen einer Integrationsumgebung
|
(Seite 10) |
Geschichte der Debian internen Projekte
- Debian-Junior
- Start: Anfang 2000
- Initiator: Ben
Armstrong <synrg@debian.org>
- Freigabe im momentan offiziellen Debian mit dem Codenamen Woody
- Debian-Med
- Start: Anfang 2002
- Initiator: Andreas
Tille <tille@debian.org>
- Ideen von Debian-Junior wurden adaptiert und neue
Funktionen hinzugefügt
- Debian-Edu
- Start: Momentan
- Initiator: Raphaël
Hertzog <hertzog@debian.org>
- Reintegration einer Abspaltung von Debian
- Demudi
- Start: Im Begriff zu starten
- Initiator: Marco
Trevisani <marco@centrotemporeale.it>
- Reintegration einer Abspaltung von Debian
|
(Seite 11) |
Debian-Junior
Debian für Kinder von 1 bis 99
- Debian zu einem System entwickeln, daß Kinder aller
Altersgruppen nutzen möchten
- Es soll so schön werden, daß Kinder es mögen
- Es soll als Spielwiese für Experimente dienen
- Es sollen nicht nur Spiele zur Verfügung gestellt werden,
sondern auch für Qualitätsstandards bei diesen Spielen gesorgt
werden
- Das Hauptaugenmerk liegt auf kleinen Kindern, ältere sollten so
gut mit Debian umgehen können, daß keine speziellen Anpassungen
mehr nötig sind
|
(Seite 12) |
Debian-Med
Debian im Gesundheitswesen
- Integrierte Softwareumgebung für alle medizinischen Aufgaben
- Besonderes Augenmerk gilt der Qualität der Programm-Pakete des
medizinischen Bereichs, die bereits in Debian integriert sind.
- Erstellen von Paketen mit medizinischer Software, die in Debian
im Moment noch fehlen und Integration in Debian
- Schaffen einer generellen Infrastruktur für medizinisch
orientierte Nutzer
- Bemühungen, die Qualität freier medizinischer Software, die noch nicht in
Debian enthalten ist zu erhöhen, um eine Integration in Debian zu
ermöglichen
|
(Seite 13) |
Debian-Edu
Debian für die Bildung
- Debian soll die für die Bildung am besten geeignete
Distribution werden
- Vereinigung verschiedener Initiativen rund um freie Software
für die Ausbildung (die oft schon auf Abspaltungen von Debian
basieren)
- Integration von Änderungen der Französischen Debian Education distribution
in Debian
- Kooperation mit dem Debian-basierten SkoleLinux in Norwegen
- Kooperation mit anderen Bildung-orientierten Projekten (wie
Seul, Ofset, KdeEdu)
- Projekt im Start begriffen, Mailing-Liste und Web-Seite in Vorbereitung
|
(Seite 14) |
DeMuDi
Debian Multimedia Distribution
- Noch nicht offiziell als internes Projekt bekanntgegeben doch
der Projektkoordinator bereitet gerade die notwendigen Schritte vor
- Orientiert auf Musik und Multimedia
- Debian GNU/Linux soll die Plattform der Wahl für Musiker und
Multimedia-Künstler werden
- DeMuDi ist Teil eines von der Europäischen Union geförderten
Projekts namens AGNULA
- Der Initiator ist im Moment noch kein Debian Entwickler doch es
ist durchaus möglich, auch schon in diesem Stadium für Debian zu
arbeiten
|
(Seite 15) |
Warum nicht einfach von Debian abspalten?
|
(Seite 16) |
Debian - adaptierbar für jeden Zweck?
- Entwickelt von etwa 1000 Freiwilligen
- Flexibel, da nicht an kommerzielle Interessen gebunden
- Strenge Regeln ("Policy") sorgen dafür, daß alle Bestandteile
miteinander harmonieren
- Gemeinsames Interesse jedes einzelnen Entwicklers, das beste
Betriebssystem für sich selbst zu erhalten
- Entwickler haben im "realen Leben" Kinder oder arbeiten im
medizinischen Umfeld etc.
- Im Gegensatz zu Angestellten von Firmen hat jeder einzelne
Entwickler die Freiheit und die Möglichkeit, seine Visionen zu
verwirklichen.
- Auf diese Weise kann jeder Entwickler Einfluß auf die
Entwicklung von Debian nehmen - er muß es einfach nur
in Angriff nehmen
|
(Seite 17) |
Technische Gründe für die Anpassungsfähigkeit
- Focus on
- Sicherheit
- Stabilität
- Qualität
- Sorgfältiges Testen (BTS)
- Kontinuität (Erhalten alter Konfigurationen)
- Funktionale Paketverwaltungswerkzeuge
- Unterstützung von 11 Hardware Architekturen (Automatische
Erzeugung von Paketen für: alpha, arm, hppa, i386, ia64, m68k, mips, mipsel,
powerpc, s390, sparc)
|
(Seite 18) |
Technologie (1): Meta-Pakete
- Sammlung spezifischer Software
- Keine Suche nach verfügbarer Software erforderlich
- Nutzer muß nicht ide lange Lister von Debian-Paketen im
einzelnen User durchforsten
- Leichte Vergleichbarkeit von Software mit gleicher
Funktionalität
- Schutz vor versehentlichem Löschen benötigter Pakete
- Konflikte zu inkompatiblen Paketen
- Vereinfachte Installation
- Geringer Aufwand für die Administration
- Angepaßte Konfiguration innerhalb von Meta-Paketen
- Berücksichtigung spezieller Bedürfnisse von Projekt-Nutzern
- Dokumentations-Pakete
- Packen und Erzeugen relevanter Dokumentation
- Übersetzung
|
(Seite 19) |
Handhabung von Meta-Paketen
- Überblick über
- Kommandozeilen-Werkzeuge
- Textbasierte Nutzerschnittstellen
Sie kennen dselect?
→ Vergessen Sie's!
- Graphische Nutzerschnittstellen
- Web-Schnittstellen
- Hinweise für die Administration
- Zukünftige Entwicklung
|
(Seite 20) |
Kommandozeilen-Werkzeuge (1)
apt-cache
Suche nach relevanten Stichworten in Paketbeschreibungen
~> apt-cache search med | grep '^med-'
med-bio - Debian Med Bio-Informatik-Pakete
med-common - Debian-Med-Projekt: gemeinsames Paket
med-common-dev - Debian Med Project common files for developing meta packages
med-dent - Medizinische Debian-Pakete für die Zahnarztpraxis
med-doc - Debian Pakete mit medizinischen Dokumentationen
med-imaging-dev - Debian Med packages for medical image development
med-tools - Debian Med - verschiedene Programe
med-bio-contrib - Debian Med bioinformatics packages (contrib and non-free)
med-imaging - Debian Med Imaging Packete
|
→ Kein wirklich naheliegendes Vorgehen im Moment
|
(Seite 21) |
Kommandozeilen-Werkzeuge (2)
grep-dctrl
~> grep-dctrl -r ': med-' /var/lib/dpkg/available | grep -v '^[ SIMAVF]' | grep -v '^Pri'
Package: med-dent
Depends: odontolinux, galeon | www-browser
Description: Debian Med packages for dental practice
Package: med-imaging-dev
Depends: librumba-dev, libgtkimreg-dev
Description: Debian Med packages for medical image development
Package: med-doc
Depends: doc-linux-html | doc-linux-text, resmed-doc, galeon | www-browser
Description: Debian Med documentation packages
Package: med-tools
Depends: mencal
Description: Debian Med several tools
Package: med-common-dev
Depends: debconf (>= 0.5)
Description: Debian Med Project common files for developing meta packages
Package: med-imaging
Depends: rumbaview, paul
Description: Debian Med imaging packages
Package: med-common
Depends: adduser, debconf (>= 0.5), menu
Description: Debian-Med-Projekt: gemeinsames Paket
Package: med-bio
Depends: bugsx, fastdnaml, fastlink, garlic, njplot, readseq, tree-puzzle
Description: Debian Med bioinformatics packages
Package: med-bio-contrib
Depends: clustalw, clustalx, molphy, phylip, seaview, treetool
Description: Debian Med bioinformatics packages (contrib and non-free)
|
→ Auch etwas kryptisch
|
(Seite 22) |
Kommandozeilen-Werkzeuge (3)
auto-apt
~> sudo auto-apt update
put: 880730 files, 1074158 entries
put: 903018 files, 1101981 entries
~> auto-apt -x -y run
Entering auto-apt mode: /bin/bash
Exit the command to leave auto-apt mode.
bash-2.05b$ less /usr/share/doc/med-bio/copyright
Reading Package Lists... Done
Building Dependency Tree... Done
The following extra packages will be installed:
bugsx fastlink readseq
The following NEW packages will be installed:
bugsx fastlink med-bio readseq
0 packages upgraded, 4 newly installed, 0 to remove and 183 not upgraded.
Need to get 0B/1263kB of archives. After unpacking 2008kB will be used.
Reading changelogs... Done
Selecting previously deselected package bugsx.
(Reading database ... 133094 files and directories currently installed.)
Unpacking bugsx (from .../b/bugsx/bugsx_1.08-6_i386.deb) ...
Selecting previously deselected package fastlink.
Unpacking fastlink (from .../fastlink_4.1P-fix81-2_i386.deb) ...
Selecting previously deselected package med-bio.
Unpacking med-bio (from .../med-bio_0.4-1_all.deb) ...
Setting up bugsx (1.08-6) ...
Setting up fastlink (4.1P-fix81-2) ...
Setting up med-bio (0.4-1) ...
localepurge: checking for new locale files ...
localepurge: processing locale files ...
localepurge: processing man pages ...
This package is Copyright 2002 by Andreas Tille <tille@debian.org>
This software is licensed under the GPL.
On Debian systems, the GPL can be found at /usr/share/common-licenses/GPL.
/usr/share/doc/med-bio/copyright (END)
|
&rarr Ist das nicht eine feine Sache?
|
(Seite 23) |
Textbasierte Nutzerschnittstellen
tasksel
- Debian Task Installations-Werkzeug
- Endbenutzer-Abschnitt enthält einen Eintrag für jedes interne Projekt
- Einfache Installation
|
(Seite 24) |
Graphische Nutzerschnittstellen (1)
gnome-apt
|
(Seite 25) |
Graphische Nutzerschnittstellen (2)
synaptic
→ Die Filter von Synaptic sind eine sehr
nützliche Hilfe.
|
(Seite 26) |
Web-Schnittstellen (1)
Web-Suche
|
(Seite 27) |
Web-Schnittstellen (2)
Package Tracking System
→ Derzeit auch nicht wirklich naheliegend,
doch mit dem Package Tracking System vertraut zu werden is ein
zusätzlicher Vorteil :-)
- Kürzlich entwickeltes Web-Werkzeug
- Äußerst nützliche Hilfe beim Beobachten des Status von Paketen
- Unterstützt das Abonnement interessanter Pakete
|
(Seite 28) |
Package Tracking System
|
(Seite 29) |
Web interfaces (3)
/usr/share/doc/junior-doc/examples/scripts/list-junior
→ Im Moment noch kein wirkliches Werkzeug
aber ein guter Ausgangspunkt
|
(Seite 30) |
Zukünftige Handhabung von Meta-Paketen
- Offensichtlich gibt es im Moment noch nicht die cleveren
Werkzeuge, wie das für Debian üblich ist.
- Werkzeuge, die den Cache von Apt direkt nach Meta-Paketen
durchsuchen, müssen noch geschrieben werden.
- Es muß noch eine Übereinkunft für ein zusätzliches Flag für die
debian/control Datei in der Policy
getroffen werden
- Festlegung eines Satzes von Stichworten für jedes interne
Projekt und schreiben eines Werkzeugs, um diese komfortabel zu suchen
|
(Seite 31) |
Werkzeuge für die Entwicklung von Meta-Paketen
- Das Bauen von Meta-Paketen ist mehr oder weniger gleich für
jedes Paket
- Dieser Vorgang sollte parameterisiert und durch Werkzeuge
unterstützt werden, um es zu
- Vereinfachen
- die Fehleranfälligkeit zu reduzieren
- Es gibt noch keine allgemeine Übereinkunft innerhalb der
internen Projekte darüber, doch zumindest das Debian-Med Projekt
benutzt med-common-dev für das Bauen
von Meta-Paketen
- Jedes Debian-Med Paket build-depends von diesem Paket, das
Vorlagen und Werkzeuge für das Bauen von Meta-Paketen und auch
einige Beispiele enthält
|
(Seite 32) |
Technologie (2): Nutzermenüs
- Erstellung einer Liste von Projektnutzern mittels debconf um Gruppen wie junior
und med in /etc/group zu verwalten
- Andere Nutzer werden nicht mit diesen zusätzlichen Menüs belästigt
- Ein Befehl update-subproject zum
aktualisieren der Nutzermenüs nach der Installation neuer
Pakete oder dem hinzufügen von Nutzern zu diesen Gruppen wird
zur Verfügung gestellt
- Die aktuellen Debian-Med Pakete vermitteln einen Eindruck von
diesen Menüs
|
(Seite 33) |
Werkzeuge für die Nutzermenü-Verwaltung
Das Paket med-common enthält debconf Befehle um Projekt-Nutzer zu verwalten
|
(Seite 34) |
Generelle Neugestaltung des Debian Menüsystems
- Derzeit wird das Debian Menüsystem vollkommen neu geschrieben
- Debian Pakete aktualisieren das allgemeine Menü nach ihrer Installation
automatisch
- Wichtige Eigenschaften wie Nutzer-Rollen und Übersetzung werden hinzugefügt
- Plan: Meta-Pakete werden Rollen-spezifische Menüeinträge
enthalten, die für die jeweiligen Nutzer aktualisiert werden
- Ermöglichen einer sauberen Verwaltung von Mehrbenutzersystemen
|
(Seite 35) |
Dokumentation
- Alle internen Projekte legen besonderen Wert auf Dokumentation und
Übersetzung weil die ins Auge gefaßten Nutzer dafür großen
Bedarf haben
- Immer einen Blick wert: <project>-doc
Pakete!
- Ben Armstrong hat ein Debian Sub-Projekt HOWTO:
begonnen. Es erklärt ganz allgemein, wie ein Debian internes Projekt zu
beginnen und zu betreuen ist.
|
(Seite 36) |
Zukunft
Debian-Junior
- Erste Freigabe mit Debian Woody
- In der Task-Auswahlliste der Installations CD enthalten
Debian-Med
- Erste Schritte
- Einige Meta-Pakete fertig
- Großes Interesse von Entwicklern und Nutzern
- Erste Version für Sarge geplant
- Knoppix basierte Live-CD
|
(Seite 37) |
Future
Debian-Edu
- Erstellen einer Webseite und einer Mailing-Liste
- Integration von Paketen und Techniken aus bildungsorientierten
Distributionen, die noch nicht in Debian enthalten sind
- Bereitstellung von CDs mit dem neuen Debian-Installer
DeMuDi
- Wie bei Debian-Edu
- Förderung wirklich freier Multimedia-Software (Patent-Probleme, Lizenzen, etc.)
|
(Seite 38) |
Weitere Informationen
|
(Seite 39) |