• Aucun résultat trouvé

Qu est ce qu un Développeur Debian? Comment le devient on?

N/A
N/A
Protected

Academic year: 2022

Partager "Qu est ce qu un Développeur Debian? Comment le devient on?"

Copied!
66
0
0

Texte intégral

(1)

Qu’est‐ce qu’un Développeur Debian ?

Comment le devient‐on ?

(2)

20 Septembre 2012

Jeudi du libre Debian Developer ?

Sylvestre Ledru

Présentation du speaker : Utilisateur de Debian depuis 2001

Impliqué depuis 2006

Aussi Ubuntu Developer

Développeur de Scilab depuis 2006 Co-fondateur de Scilab Enterprises Community manager pour IRILL

(3)

20 Septembre 2012

Jeudi du libre Debian Developer ?

Sylvestre Ledru

C'est quoi une distribution (Linux ou autre) ?

(4)

20 Septembre 2012

Jeudi du libre Debian Developer ?

Sylvestre Ledru

Dans le passé

Deux acteurs :

Upstream

L'utilisateur

La compilation était faite sur chaque machine par chaque utilisateur

(5)

20 Septembre 2012

Jeudi du libre Debian Developer ?

Sylvestre Ledru

Dans le passé

1) Téléchargement de l'archive 2) Décompresser l'archive

3) ./configure 4) make

5) make install

Pénible

Dépendences de compilation non disponible

Souvent des erreurs (symbol not found)

Bug de compilation

Ca ne passe pas à l'échelle

(Debian = 3000 nouvelles versions par mois)

(6)

20 Septembre 2012

Jeudi du libre Debian Developer ?

Sylvestre Ledru

Maintenant

(7)

20 Septembre 2012

Jeudi du libre Debian Developer ?

Sylvestre Ledru

Grâce aux distributions

Trois acteurs :

Upstream

La distribution

L'utilisateur

(8)

20 Septembre 2012

Jeudi du libre Debian Developer ?

Sylvestre Ledru

Simplification de la gestion des logiciels

Le travail de compilation est fait en amont par des packagers

Offre un contexte d'installation et de configuration Le packager, « expert », sert d'interface avec

upstream.

(9)

20 Septembre 2012

Jeudi du libre Debian Developer ?

Sylvestre Ledru

C'est quoi Debian ?

(10)

20 Septembre 2012

Jeudi du libre Debian Developer ?

Sylvestre Ledru

Un logo super cool !

(11)

20 Septembre 2012

Jeudi du libre Debian Developer ?

Sylvestre Ledru

Distribution créée en 93 par Ian Murdock Objectifs :

Rendre GNU/Linux compétitif face aux OS commerciaux

(12)

20 Septembre 2012

Jeudi du libre Debian Developer ?

Sylvestre Ledru

Ca, c'est fait ! Ca, c'est fait !

(13)

20 Septembre 2012

Jeudi du libre Debian Developer ?

Sylvestre Ledru

Autres objectifs :

Facile d'installation

Construit de manière collaborative par des experts logiciels

Conçu en respectant l'esprit GNU

(14)

20 Septembre 2012

Jeudi du libre Debian Developer ?

Sylvestre Ledru

Une des plus grande bibliothèque : 49 317 packages binaires

2.0 2.1 2.2 3.0 3.1 4.0 5.0 6.0

0 5000 10000 15000 20000 25000 30000

Source packages Binary packages

(15)

20 Septembre 2012

Jeudi du libre Debian Developer ?

Sylvestre Ledru

Une release tous les ~24 mois

Une douzaine d'architectures officielles :

alpha, amd64, arm, armel, armhf, hppa, hurd- i386, i386, ia64, kfreebsd-amd64, kfreebsd-

i386, m68k, mips, mipsel, powerpc, ppc64, s390, s390x, sh4, sparc, sparc64

(16)

20 Septembre 2012

Jeudi du libre Debian Developer ?

Sylvestre Ledru

Prochaine release : wheezy

Probablement début de l'année 2013 Actuellement en freeze

(17)

20 Septembre 2012

Jeudi du libre Debian Developer ?

Sylvestre Ledru

(18)

20 Septembre 2012

Jeudi du libre Debian Developer ?

Sylvestre Ledru

Organisation du projet

(19)

20 Septembre 2012

Jeudi du libre Debian Developer ?

Sylvestre Ledru

Debian est une entitée indépendante :

Pas d'employé

Pas de contraintes liés à un supérieur ou d'intérêts supérieurs

Décentralisé

=> Seule distribution majeure dans ce cas (Ubuntu, Fedora, OpenSuse, ...)

(20)

20 Septembre 2012

Jeudi du libre Debian Developer ?

Sylvestre Ledru

Organisation du projet

(21)

20 Septembre 2012

Jeudi du libre Debian Developer ?

Sylvestre Ledru

Mélange de démocratie (DPL)

et de doocratie (c'est celui qui fait qui décide)

(22)

20 Septembre 2012

Jeudi du libre Debian Developer ?

Sylvestre Ledru

Régi par trois documents principaux :

(23)

20 Septembre 2012

Jeudi du libre Debian Developer ?

Sylvestre Ledru

Le contrat social

Debian restera un projet entièrement libre.

Tous les nouveaux développements reviendront à la communauté.

La transparence est un bien acquis.

Les utilisateurs et le logiciel libre sont les priorités du projet.

Exceptions aux principes du logiciel libre (ie : non-free) prévus pour répondre à tous les besoins

(24)

20 Septembre 2012

Jeudi du libre Debian Developer ?

Sylvestre Ledru

Debian Free Software Guidelines (DFSG)

Free redistribution.

Inclusion of source code.

Allowing for modifications and derived works.

Integrity of the author's source code (as a compromise).

No discrimination against persons or groups.

No discrimination against fields of endeavor, like commercial use.

The license needs to apply to all to whom the program is redistributed.

License must not be specific to Debian, basically a reiteration of the previous point.

License must not contaminate other software.

The GPL, BSD, and Artistic licenses are examples of licenses considered free.

(25)

20 Septembre 2012

Jeudi du libre Debian Developer ?

Sylvestre Ledru

Constitution

Règles définissants les pouvoirs de chacun

Responsabilités

Rôles

Décris les méthodes de vote (Concordet)

...

(26)

20 Septembre 2012

Jeudi du libre Debian Developer ?

Sylvestre Ledru

Derivatives

(27)

20 Septembre 2012

Jeudi du libre Debian Developer ?

Sylvestre Ledru

Debian : Source de nombreuses derivatives

~ 140 distributions basées sur Debian

Assurances en terme de qualité et de licence

Système de base solide

Enorme base de packages

Un système universel, parfait pour les adaptations

(28)

20 Septembre 2012

Jeudi du libre Debian Developer ?

Sylvestre Ledru

Un exemple : Ubuntu

Cible : le desktop

Très populaire (beaucoup plus que Debian)

Se synchronise après chaque release contre Debian (testing ou unstable)

De nombreux DD sont aussi dev Ubuntu

Nouveaux packages uploadés dans Debian avant Ubuntu

(29)

20 Septembre 2012

Jeudi du libre Debian Developer ?

Sylvestre Ledru

Des nouvelles problématiques

(30)

20 Septembre 2012

Jeudi du libre Debian Developer ?

Sylvestre Ledru

Debian Developer ? Debian Maintainer ?

Contributeur ?

(31)

20 Septembre 2012

Jeudi du libre Debian Developer ?

Sylvestre Ledru

Projet ouvert et accessible à tous …

mais qui nécessite des compétences (et savoir RFTM)

(32)

20 Septembre 2012

Jeudi du libre Debian Developer ?

Sylvestre Ledru

Contributeur « lambda »

Soumettre des bugs = contribuer ! (surtout avec un patch associé)

Command : reportbug

(33)

20 Septembre 2012

Jeudi du libre Debian Developer ?

Sylvestre Ledru

Contributeur « lambda »

Traduction (site web, debconf, etc) Communication (DPN, etc)

...

(34)

20 Septembre 2012

Jeudi du libre Debian Developer ?

Sylvestre Ledru

Quelques statistiques

DD : 963

DD (no-upload) : 5

DM : 167

(35)

20 Septembre 2012

Jeudi du libre Debian Developer ?

Sylvestre Ledru

Web of trust ? Signature GPG

Clé signée par deux membres du projet

Permet un correspondance entre l'identité Internet et réelle

… nécessaire

(36)

20 Septembre 2012

Jeudi du libre Debian Developer ?

Sylvestre Ledru

Debian Maintainer

Donne un status officiel à des contributeurs débutants ou occasionnels

Relativement facile et rapide à obtenir mais …

Ne peut uploader que sur les packages dont il a autorité

(37)

20 Septembre 2012

Jeudi du libre Debian Developer ?

Sylvestre Ledru

Debian Maintainer

Doit passer par un DD pour un nouveau package N'a pas accès aux porterboxes

Pas d'adresse mail @debian.org Pas de droit de vote

(38)

20 Septembre 2012

Jeudi du libre Debian Developer ?

Sylvestre Ledru

Debian Maintainer

On devient DM sur recommandation d'un Debian Developer

… après avoir fait ses preuves

(39)

20 Septembre 2012

Jeudi du libre Debian Developer ?

Sylvestre Ledru

Devenir Debian Developer ? Processus : New Member (NM)

http://nm.debian.org/

(40)

20 Septembre 2012

Jeudi du libre Debian Developer ?

Sylvestre Ledru

Devenir Debian Developer ? Avoir été DM précédement

Besoin d'être recommandé officiellement par un DD

(41)

20 Septembre 2012

Jeudi du libre Debian Developer ?

Sylvestre Ledru

Devenir Debian Developer ?

Vérifications sur le travail précédement réalisé dans Debian

(42)

20 Septembre 2012

Jeudi du libre Debian Developer ?

Sylvestre Ledru

Série de questions :

Licences

Organisationnelles

=> Philosophy and Procedures

(43)

20 Septembre 2012

Jeudi du libre Debian Developer ?

Sylvestre Ledru

(44)

20 Septembre 2012

Jeudi du libre Debian Developer ?

Sylvestre Ledru

Série de questions (suite) :

Techniques

Exercices

=> Tasks and Skills

(45)

20 Septembre 2012

Jeudi du libre Debian Developer ?

Sylvestre Ledru

Acceptation (ou refus) par l'Application Manager (AM)

Validation par le DAM Création des comptes

=> Bien joué, vous êtes DD !

(46)

20 Septembre 2012

Jeudi du libre Debian Developer ?

Sylvestre Ledru

En quoi consiste le travail de Debian Developer ?

(47)

20 Septembre 2012

Jeudi du libre Debian Developer ?

Sylvestre Ledru

Packaging de nouvelles bibliothèques et programmes

(48)

20 Septembre 2012

Jeudi du libre Debian Developer ?

Sylvestre Ledru

Maintenance de ses packages :

Nouvelles versions

Correction de bugs (packaging ou upstream)

Ajout de fonctionnalités (ex : options –enable- jupiler)

Mise à jour des dépendances (transitions)

Mise à jour du packages suite aux changements de la policy

(49)

20 Septembre 2012

Jeudi du libre Debian Developer ?

Sylvestre Ledru

Reprise de packages orphelins (RFA)

$ wnpp-alert |grep ^O

$ wnpp-alert |grep ^O

O 487125 apt-rdepends -- Recursively lists package dependencies O 487125 apt-rdepends -- Recursively lists package dependencies

O 580680 enchant -- a wrapper library for various spell checkers O 580680 enchant -- a wrapper library for various spell checkers

O 636410 flip -- convert text file line endings between Unix and DOS formats O 636410 flip -- convert text file line endings between Unix and DOS formats

O 479397 gutenprint -- printer drivers for CUPS O 479397 gutenprint -- printer drivers for CUPS

O 543847 libcdaudio -- library for CDDA playback control O 543847 libcdaudio -- library for CDDA playback control

O 555893 libdiscid -- Library for creating MusicBrainz DiscIDs O 555893 libdiscid -- Library for creating MusicBrainz DiscIDs

O 674880 libgii -- General Input Interface runtime libraries O 674880 libgii -- General Input Interface runtime libraries

O 509815 libiodbc2 -- iODBC Driver Manager O 509815 libiodbc2 -- iODBC Driver Manager

O 628474 libofa -- Library for acoustic fingerprinting O 628474 libofa -- Library for acoustic fingerprinting O 646655 libvisual -- Audio visualization framework O 646655 libvisual -- Audio visualization framework

O 641060 libvisual-plugins -- Audio visualization framework plugins O 641060 libvisual-plugins -- Audio visualization framework plugins O 658774 openhackware -- OpenFirmware emulator for PowerPC O 658774 openhackware -- OpenFirmware emulator for PowerPC

O 668201 php-elisp -- emacs support for php files O 668201 php-elisp -- emacs support for php files

O 358521 sgml-data -- common SGML and XML data O 358521 sgml-data -- common SGML and XML data

O 666490 svgalib -- console SVGA display libraries O 666490 svgalib -- console SVGA display libraries

O 674887 vbetool -- run real-mode video BIOS code to alter hardware state O 674887 vbetool -- run real-mode video BIOS code to alter hardware state

O 652225 zvbi -- Vertical Blanking Interval (VBI) utilities O 652225 zvbi -- Vertical Blanking Interval (VBI) utilities

(50)

20 Septembre 2012

Jeudi du libre Debian Developer ?

Sylvestre Ledru

Aider d'autres DM/DD (RFH)

$ wnpp-alert |grep ^RFH

$ wnpp-alert |grep ^RFH

RFH 567955 apt-xapian-index -- maintenance tools for a Xapian index of Debian packages RFH 567955 apt-xapian-index -- maintenance tools for a Xapian index of Debian packages RFH 583826 chromium-browser -- Chromium browser

RFH 583826 chromium-browser -- Chromium browser

RFH 660685 gnupg -- GNU privacy guard - a free PGP replacement RFH 660685 gnupg -- GNU privacy guard - a free PGP replacement RFH 248397 grub2 -- GRand Unified Bootloader

RFH 248397 grub2 -- GRand Unified Bootloader

RFH 679249 libburn -- library to provide CD/DVD writing functions RFH 679249 libburn -- library to provide CD/DVD writing functions

RFH 534999 libcap2 -- support for getting/setting POSIX.1e capabilities RFH 534999 libcap2 -- support for getting/setting POSIX.1e capabilities

RFH 678382 libept -- High-level library for managing Debian package information RFH 678382 libept -- High-level library for managing Debian package information RFH 679254 libisofs -- library to create ISO9660 images

RFH 679254 libisofs -- library to create ISO9660 images RFH 419523 libreoffice -- office productivity suite

RFH 419523 libreoffice -- office productivity suite

RFH 527482 mtr -- Full screen ncurses and X11 traceroute tool RFH 527482 mtr -- Full screen ncurses and X11 traceroute tool RFH 354174 nas -- The Network Audio System

RFH 354174 nas -- The Network Audio System

RFH 512360 openldap -- OpenLDAP server, libraries, and utilities RFH 512360 openldap -- OpenLDAP server, libraries, and utilities

RFH 332498 openssl -- Secure Socket Layer (SSL) binary and related cryptographic tools RFH 332498 openssl -- Secure Socket Layer (SSL) binary and related cryptographic tools RFH 664595 php5 -- server-side, HTML-embedded scripting language

RFH 664595 php5 -- server-side, HTML-embedded scripting language RFH 589632 ppp -- Point-to-Point Protocol (PPP) - daemon

RFH 589632 ppp -- Point-to-Point Protocol (PPP) - daemon RFH 543541 quilt -- Tool to work with series of patches

RFH 543541 quilt -- Tool to work with series of patches

RFH 654116 screen -- terminal multiplexor with VT100/ANSI terminal emulation RFH 654116 screen -- terminal multiplexor with VT100/ANSI terminal emulation RFH 640976 serna-free -- Graphical XML editor

RFH 640976 serna-free -- Graphical XML editor

RFH 676314 spamassassin -- seeking co-maintainers RFH 676314 spamassassin -- seeking co-maintainers

RFH 660687 xml-core -- XML infrastructure and XML catalog file support RFH 660687 xml-core -- XML infrastructure and XML catalog file support

(51)

20 Septembre 2012

Jeudi du libre Debian Developer ?

Sylvestre Ledru

Porter Debian sur de nouvelles architectures.

Travaux récents sur s390x (ou raspberry, non officiel)

Problématique intéressante de bootstrap

(52)

20 Septembre 2012

Jeudi du libre Debian Developer ?

Sylvestre Ledru

Intégrer des nouveaux kernels dans Debian

Kfreebsd, HURD

Travaux autour du kernel Illumos (anciennement OpenSolaris)

(53)

20 Septembre 2012

Jeudi du libre Debian Developer ?

Sylvestre Ledru

Travail sur l'assurance qualité (QA)

Améliorer les outils de QA

Améliorer les sites web Debian

Rebuild de l'archive périodique (GRID 5000 ou Amazon EC2)

...

(54)

20 Septembre 2012

Jeudi du libre Debian Developer ?

Sylvestre Ledru

Participer à la Release Team

Travail sur la prochaine release

Correction de bugs critiques

Gestion des transitions

...

(55)

20 Septembre 2012

Jeudi du libre Debian Developer ?

Sylvestre Ledru

Infrastructure

Maintenir l'ensemble de la plateforme

Porterbox

Services du projet

(56)

20 Septembre 2012

Jeudi du libre Debian Developer ?

Sylvestre Ledru

Exemples de tâches dans Debian

(57)

20 Septembre 2012

Jeudi du libre Debian Developer ?

Sylvestre Ledru

Maintenance de Scilab et de ses dépendances

Packages : atlas, blas, lapack, arpack-ng, flexdock, jgraphx, jogl{1,2}, etc...

Bonne connaissance de leur fonctionnement et bugs

Plus d'impact d'utiliser mon adresse @debian.org

Profite des outils de QA de Debian

Intéressant pour mon employeur

(58)

20 Septembre 2012

Jeudi du libre Debian Developer ?

Sylvestre Ledru

Un de mes toy projects

Recompiler l'ensemble de Debian avec un nouveau compilateur C/C++/ObjC

Gcc : compilateur principal (unique?) dans Debian

Propose d'utiliser clang à la place (basé sur LLVM)

(59)

20 Septembre 2012

Jeudi du libre Debian Developer ?

Sylvestre Ledru

Mise en place d'une infrastructure parallèle

(60)

20 Septembre 2012

Jeudi du libre Debian Developer ?

Sylvestre Ledru

Mise à jour des build chains pour recompiler les packages avec un autre compilateur : /usr/bin/cc /

/usr/bin/c++

(61)

20 Septembre 2012

Jeudi du libre Debian Developer ?

Sylvestre Ledru

Découplage de gcc dans Debian

Discussion pour faire un objectif officiel du projet :

Intégration dans la policy Debian

En faire un release goal pour Jessie ou Jessie+1

(62)

20 Septembre 2012

Jeudi du libre Debian Developer ?

Sylvestre Ledru

Comment commencer ?

(63)

20 Septembre 2012

Jeudi du libre Debian Developer ?

Sylvestre Ledru

Start small !

Aider sur des packages RFA/RFH

Corriger des bugs

Proposer des nouveaux packages (mentor)

Trouver un mentor dans le projet Et surtout :

Don't panic !

Ne pas complexer !

(64)

20 Septembre 2012

Jeudi du libre Debian Developer ?

Sylvestre Ledru

Pour celà

Lire les docs

S'inscrire sur des listes de diffusion

Regarder comment Debian fonctionne (technique et social)

Participer à des conférences Debian

(65)

20 Septembre 2012

Jeudi du libre Debian Developer ?

Sylvestre Ledru

Pub : mini debconf à Paris

24 et 25 novembre 2012

A l'EPITA

Plus d'infos sur :

http://wiki.debconf.org/wiki/Miniconf-Paris/2012

FOSDEM : Cross distro room

Debconf 13 / Juillet 2013 : en Suisse

(66)

20 Septembre 2012

Jeudi du libre Debian Developer ?

Sylvestre Ledru

Questions ? Remarques ? Troll ? (+1)

Remerciement à Stefano Zacchiroli

Références

Documents relatifs

● Surtout connus par ses dérivés (e.g. Ubuntu) Debian pas vraiment fait pour être sexy. ● Comparer http://ubuntu.com

– si vous comptez faire cohabiter Windows et Linux sur le même ordinateur, gardez tous ces fichiers dans un répertoire tempo- raire de votre partition Windows.. – sinon, copiez tous

dpkg and the rpm binary are package processors (as well as other managers for other formats), provide largely the same functionality (see table 5.5): installation and removal,

Nous reviendrons plus en détail sur ce qu'est une distribution dans la section 1.5, « Rôle d'une distribution »page 25, mais nous pouvons pour l'instant considérer qu'il s'agit

La réponse est surprenante, dixit associations.gouv.fr :« Microsoft participera à l'analyse et à la création d'un répertoire national des bénévoles en cas de crise majeure ou

Cela me semble bien plus réaliste que la chimère d'un Internet (limité au Web) peuplé uniquement de jolis blogs gentils, œuvrant main dans la main sous l'égide de l'Etat, pour

Ce qui est une nouveauté en revanche, c'est la possibilité d'acheter sur ce site le numéro du mois et non plus seulement les anciens numéros.Ainsi, si vous ne trouvez pas

1 C'est une évidence, un nouveau modèle de recherche la technologie permet à de plus en plus de personnes de créer du contenu devra être créé, car sur le Web. Historiquement,