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 für Spezialgebiete
- Schwierig zu installieren
- Schwierig zu betreuen
- Schwer zu benutzen (teilweise fehlen GUIs)
- Ungewöhnliche Lizenzen
- Vom ursprünglichen Autor nicht weiter betreut
- Portierungsprobleme (Architektur, Byteorder, 32/64Bit)
- 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 (1)
- Debian-Junior
- Start: Anfang 2000
- Initiator: Ben
Armstrong <synrg@debian.org>
- Erstes internes Projekt - im Prinzip wurde hier die Idee geboren
- 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: 2002
- Initiator: Raphaël
Hertzog <hertzog@debian.org>
Nachfolger gesucht
- Reintegration von Abspaltungen von Debian
|
(Seite 11) |
Geschichte der Debian internen Projekte (2)
- Demudi
- Start: Seit längerem separates Projekt
- Initiator: Marco
Trevisani <marco@centrotemporeale.it>
- Reintegration einer Abspaltung von Debian
- Debian-Desktop
- Start: Oktober 2002
- Initiator: Colin Walters <marco@centrotemporeale.it>
- Viele gemeinsame Punkte mit anderen internen Projekten
|
(Seite 12) |
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 13) |
Debian-Edu
Debian für die Bildung
- Debian zur optimalen Distribution für Bildung machen
- Vereinigung verschiedener Initiativen rund um freie Software
für die Ausbildung
- Integration von Änderungen der Französischen Debian Education distribution
in Debian
- Kooperation mit dem Debian-basierten SkoleLinux
- Kooperation mit anderen Bildung-orientierten Projekten (wie
Seul, Ofset, KdeEdu)
- Projekt gestartet (Mailinlist, aber noch keine Web-Seite)
- Neuer Projektleiter gesucht
|
(Seite 14) |
Debian-Med
Debian im Gesundheitswesen
- Wurde bereits hier auf dem Linuxtag vorgestellt
- 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
- Schaffen einer generellen Infrastruktur für medizinisch
orientierte Nutzer
- Ermöglichung der Integration freier medizinischer Software,
durch Kooperation mit Autoren
|
(Seite 15) |
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 16) |
Debian-Desktop
Debian GNU/Linux für alle
- bestmögliches Betriebssystem für Privat- und Firmen-Arbeitsplätze
- Motto: "Software, die einfach funktioniert"
- Optimales Zusammenspiel von Debian mit Desktops wie Gnome / KDE
- Einfache Bedienung für Anfänger ohne Einschränkung der Flexibilität für Experten
- Einfache Konfiguration (Hardware-Erkennung)
- Internationalisierung
|
(Seite 17) |
Warum nicht von Debian abspalten?
|
(Seite 18) |
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.
- Entwickler haben Freiheit, Visionen zu verwirklichen, ohne
Einschränkung durch Firmeninteressen
- Auf diese Weise kann jeder Entwickler Einfluß auf die
Entwicklung von Debian nehmen - er muß es einfach nur
in Angriff nehmen
|
(Seite 19) |
Technische Gründe für die Anpassungsfähigkeit
- Wesentliche Eigenschaften von Debian:
- 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 20) |
Technologie (1): Meta-Pakete
- Sammlung spezifischer Software
- Keine Suche nach verfügbarer Software erforderlich
- Nutzer muß nicht die lange Liste der Debian-Pakete im
einzelnen 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 21) |
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 22) |
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 23) |
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 24) |
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?-->
&rarr Cool!
|
(Seite 25) |
Textbasierte Nutzerschnittstellen
tasksel
- Debian Task Installations-Werkzeug
- Endbenutzer-Abschnitt enthält einen Eintrag für jedes interne Projekt
- Einfache Installation
|
(Seite 26) |
Graphische Nutzerschnittstellen (1)
gnome-apt
|
(Seite 27) |
Graphische Nutzerschnittstellen (2)
synaptic
→ Die Filter von Synaptic sind eine sehr
nützliche Hilfe.
|
(Seite 28) |
Web-Schnittstellen (1)
Web-Suche
|
(Seite 29) |
Web-Schnittstellen (2)
Package Tracking System
→ Derzeit auch nicht wirklich naheliegend,
doch mit dem Package Tracking System vertraut zu werden ist 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 30) |
Package Tracking System
|
(Seite 31) |
Web-Schnittstellen (3)
/usr/share/doc/junior-doc/examples/scripts/list-junior
→ Momentan kein wirkliches Werkzeug aber guter Ausgangspunkt
|
(Seite 32) |
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 33) |
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
- Keine allgemeine Übereinkunft, doch 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 34) |
Technologie (2): Nutzermenüs
- Erstellung einer Liste von Projektnutzern mittels debconf um Gruppen wie junior
und med in /etc/group zu
verwalten
- Diese Nutzer erhalten ein extra Menü
- 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 35) |
Werkzeuge zur Nutzermenü-Verwaltung
Das Paket med-common enthält debconf Befehle um Projekt-Nutzer zu verwalten
|
(Seite 36) |
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 37) |
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 38) |
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 39) |
Zukunft
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 40) |
Zukunft
Debian-Desktop
- Befruchtung aller anderen internen Projekte, da Endanwender
im allgemeinen im Mittelpunkt steht
- Weiterentwicklung des Debian-Installers
|
(Seite 41) |
Weitere Informationen
|
(Seite 42) |