Julian Bouzas Software Engineer Pipewire: the New Multimedia

Total Page:16

File Type:pdf, Size:1020Kb

Julian Bouzas Software Engineer Pipewire: the New Multimedia PipeWire: The New Multimedia Service Now Ready for #utomotive Julian Bouzas Software Engineer Open First $i %&m Julian ● Multimedia Team at Collabora since 2019 ● PipeWire and Wireplumber Developer ● julian bou!as@collabora com 2 What is PipeWire' (resh multimedia service for )inu* ● Originall% meant for video onl%: Pulse(udio &or )ideo *PulseVideo) ● No- generic multimedia service for both )ideo and (udio ● )ideo Capture' – Cameras – /raphic Sources *Wa%land1 Vulkan, OpenG3 + ● (udio Playbac2 and Capture' – Microphone and Speakers – 4luetooth devices # Wh" do we need PipeWire' ● 6ni7es bot. Pulse(udio and 8ac2 audio servers1 $reatl% simpli&%in$ t.e 3inu9 Multimedia 0tac2 ● Permissions' 0upports containers li2e Flatpa2 and does not rel% on video and audio user $roups ● 3o- latenc%' can .andle ver% small bu:ers si!es *e $ ;2 samples+ ● Flexible' e9ternal 0ession Mana$er adaptable to an% use cases 5 Stac+ < Compati-ilit" #P%s on top of PipeWire ● (30( applications – PipeWire PCM plugin ● Pulse(udio applications – >eplacement for libpulse.so and libpulse-mainloop?glib.so ● 8(C@ applications – >eplacement for libjac2 so = #rchitecture and .esign ● Modular wit. Plu$ins ● Grap. based li2e G0treamer' Nodes, Ports and Links ● Multi-Process' – Daemon processes most o& t.e data *nodes can also run in the clients to avoid stalling+ – Bxternal session mana$er con7gures and links the nodes ● Fully based on its internal and 0imple Plu$in API library (SP(+ – Bxtremely simple and li$.t-ei$.t $eneric purpose multimedia librar% – Mostl% header?only C library -ith no other dependencies *$lib1 /0treamer1 etc. + A Performance and E/cienc" ● 0tatic code desi$n approach – (lmost no mallocs ● 6ses modern 3inux (PCs – mem&d & dmabu& to !ero?cop% device bu:ers – event&d & timer&d &or schedulin$ ● 3o- CP6 Usa$e and lo-?latency real-time capable 9 ,P0 0sage against Pulse#udio ● Eard-are' Cntel(>+ Core*TM+ i7?#==0 CPU @ ; #0/E! ● 0ource' PipeWire ● PipeWire .andles bu:er si!es o& ;2 samples1 Pulse(udio underruns 10 ,P0 0sage against J#,1 ● Eard-are' Cntel(>+ Core*TM+ i7?#==0 CPU @ ; #0/E! ● 0ource' PipeWire ● PipeWire .andles bu:er si!es o& ;2 samples1 8(C@ underruns 11 Securit" ● B9ternal 0ession Mana$er $rants permissions to applications ● ,odes can be onl% visible &or some applications ● Type o& Permissions' – *>+ >ead: )isible, Capture data – *W+ Write: Play data – *F+ E9ecute: allo- e9ecuting methods on objects *e $. 0etup &ormat on nodes) 12 E*ternal Session Manager ● ,ot included in t.e PipeWire project ● Creates and Con7$ures Devices to emit ne- ,odes ● 0ets up ,odes *Format1 Ports1 etc + ● Creates lin2s based on its polic% lo$ic -.en a client connects ● /rants securit% and access control to clients *applications+ ● 3aunc.ed b% t.e PipeWire daemon at startup 1; ,urrent Status ● )ersion 0 ; 5 released in May 2020 and distributed in Fedora ;2 – Plenty o& 8(CK applications alread% -orkin$ -it. PipeWire – Man% Pulse(udio apps -ork as -ell – 4luetoot. startin$ to be &ully supported1 needs more testin$ – Musical Cnstrument Di$ital Cnter&ace *MCDC+ -or2s – Plans to replace Pulse(udio soon – )ideo capture &rom )#32 devices -or2s -ell – Wa%land screencastin$ &rom -eston1 $nome?s.ell1 and -lroots supported ● (dopted b% (/3 *(utomotive /rade 3inu9+ as t.e core audio &rame-or2 1# Who started this ● Author: Wim Taymans – Well-kno-n old /Streamer developer & e9-maintainer – Sponsored b%' >ed Hat ● Embraced by PulseAudio developers – Seen as the ne9t $eneration of PulseAudio ● Welcomed by ALSA and JACK developers ● License: MIT PipeWire .2T tool ● Generates DOT $rap.s ● 6sa$e' – G p--dot p- dot Hoptions] ● Options' – ??all (sho-s all object types' nodes1 devices1 ports1 clients1 etc + – ?-smart *onl% sho-s lin2ed objects) – ?-details *sho- all object properties) 1< PipeWire in the #utomotive Industr" Wh" PipeWire suits #utomotive ● Problem: Device handlin$ in connected cars is comple9' – Plent% of speakers and cameras – Multiple audio streams' >adio1 Bmer$enc%1 ,avi$ation, Communication. – Phone calls over 4luetoot. ● 0olution: PipeWire wit. a flexible external 0ession Mana$er – Custom polic% logic – Custom hard-are pipelines – Eard-are control abstraction – 0ecurit% 1A WirePlum-er ● First e9ternal session mana$er implementation &or PipeWire ● Ori$inall% planned &or Bmbedded only *(utomotive+ ● Now $eneric and &ull% &eatured 0ession Mana$er &or bot. Bmbedded and Desktop ● 4ased on /Object to support -ritin$ bindin$s in ot.er lan$ua$es' >ust1 P%t.on1 36( 19 %ntroduction of new 2-3ects ● Bndpoint' object t.at .andles PipeWire nodes – (udio Soft-are DSP Endpoint – Simple Node Endpoint ● 0tream' connection points o& an Bndpoint ● 0ession' set o& Bndpoints – )ideo Session – (udio Session 20 Software .SP e*ample 21 $ardware .SP Example 22 WirePlum-er .esign ● Provides an lib-ireplumber (PC t.at ma2es eas% -ritin$ WirePlumber modules and even ot.er session mana$ers ● Modular desi$n 2; WirePlum-er Modules ● Monitor – monitors devices and creates nodes -.en enabled ● ClientPermissions – $rants permissions to clients -.en connected ● Con7$Bndpoint – creates di:erent endpoints per nodes based on con7$uration 7les ● Con7$Polic% – lin2s endpoints based on con7$uration 7les 2# Bindings e*ample usages ● Pyt.onK>ust session mana$er to avoid use o& low level PipeWire (PC and objects ● WirePlumber Module t.at interprets 36( files &or Luic2 and easy custom polic% lo$ic 25 WirePlum-er 4ersions ● v0 1 0 *Jul 2019+' used in (/3 Eapp% Ealibut A 0 0 ● v0 1 2 *Oct 2019+' used in (/3 Eapp% Ealibut A 0 2 ● v0 2 0 *Dec 2019+' used in bot. (/3 Eapp% Ealibut A 0 5 and (/3 Ctc.y Cce7sh 9 0 0 ● v0 ; 0 *June 2020+' First version -it. Des2top 0upport 2< (uture !elease ● 0upport &or 4indin$s in ot.er lan$ua$es ● Clean t.e (PC and ma2e it stable *almost t.ere+ ● Cmprove Documentation ● More unit tests and e9amples 2= Who started this ● Author: George Kiagiadakis – 0ponsored b%' Collabora ● Welcomed by PipeWire developers ● Git repository: – .ttps'KK$itlab &reedes2top or$KPipeWireK-ireplumber ● Documentation: – .ttps'KKPipeWire pa$es &reedes2top or$K-ireplumber ● License: MIT Showtime Than+ "ou for watching ● 8oin us on I>C at Mpipewire on Freenode ● .ttps'KK$itlab freedes2top.or$/pipe-ire ● julian bou!as"collabora.com ;0.
Recommended publications
  • Linux Sound Subsystem Documentation Release 4.13.0-Rc4+
    Linux Sound Subsystem Documentation Release 4.13.0-rc4+ The kernel development community Sep 05, 2017 CONTENTS 1 ALSA Kernel API Documentation 1 1.1 The ALSA Driver API ............................................ 1 1.2 Writing an ALSA Driver ........................................... 89 2 Designs and Implementations 145 2.1 Standard ALSA Control Names ...................................... 145 2.2 ALSA PCM channel-mapping API ..................................... 147 2.3 ALSA Compress-Offload API ........................................ 149 2.4 ALSA PCM Timestamping ......................................... 152 2.5 ALSA Jack Controls ............................................. 155 2.6 Tracepoints in ALSA ............................................ 156 2.7 Proc Files of ALSA Drivers ......................................... 158 2.8 Notes on Power-Saving Mode ....................................... 161 2.9 Notes on Kernel OSS-Emulation ..................................... 161 2.10 OSS Sequencer Emulation on ALSA ................................... 165 3 ALSA SoC Layer 171 3.1 ALSA SoC Layer Overview ......................................... 171 3.2 ASoC Codec Class Driver ......................................... 172 3.3 ASoC Digital Audio Interface (DAI) .................................... 174 3.4 Dynamic Audio Power Management for Portable Devices ...................... 175 3.5 ASoC Platform Driver ............................................ 180 3.6 ASoC Machine Driver ............................................ 181 3.7 Audio Pops
    [Show full text]
  • The GNOME Census: Who Writes GNOME?
    The GNOME Census: Who writes GNOME? Dave Neary & Vanessa David, Neary Consulting © Neary Consulting 2010: Some rights reserved Table of Contents Introduction.........................................................................................3 What is GNOME?.............................................................................3 Project governance...........................................................................3 Why survey GNOME?.......................................................................4 Scope and methodology...................................................................5 Tools and Observations on Data Quality..........................................7 Results and analysis...........................................................................10 GNOME Project size.......................................................................10 The Long Tail..................................................................................11 Effects of commercialisation..........................................................14 Who does the work?.......................................................................15 Who maintains GNOME?................................................................17 Conclusions........................................................................................22 References.........................................................................................24 Appendix 1: Modules included in survey...........................................25 2 Introduction What
    [Show full text]
  • Features Ask Klaus!
    FEATURES Ask Klaus! Klaus Knopper answers your Linux questions Thanks for reading this, Klaus; it really means a lot to me that you take time to help out the Linux community. Mark Mina If I’m not completely mistaken (having no such model for test- ing), the main challenge with this note- AskBy Klaus Knopper Klaus! book really seems to be the graphics Knoppix Install adapter, which is a hybrid Intel + ATI/ Hello, Klaus. I have been using your AMD RadeonHD 6550M. You will most OS version 6.4 as supplied on the likely need a new kernel (at least 2.6.38 DVD with the January 2011 Linux Maga- or 2.6.39) with the Radeon DRM module zine. I like it so much that I would like to and Xorg 1.10 with the xorg-video- install it on the hard drive on one of my radeon driver, which is currently in De- machines. I have looked through the bian/ unstable. This is quite distro-inde- files but cannot find a way to install it. pendent; the most recently released ones Can you please advise? I am not on the will be the best candidates. Internet but hope to be on in the next You may also succeed by switching off couple of months. Best Regards, John one of the graphics chipsets in the BIOS Stirling and explicitly configuring the other in Xorg. The Intel version may be a good A Knoppix harddisk install option candidate. For Knoppix, try to boot with: exists in the Preferences menu with the “0wn” (“zero work needed”) knoppix xmodule=intel utility.
    [Show full text]
  • The Next-Gen Apertis Application Framework 1 Contents
    The next-gen Apertis application framework 1 Contents 2 Creating a vibrant ecosystem ....................... 2 3 The next-generation Apertis application framework ........... 3 4 Application runtime: Flatpak ....................... 4 5 Compositor: libweston ........................... 6 6 Audio management: PipeWire and WirePlumber ............ 7 7 Session management: systemd ....................... 7 8 Software distribution: hawkBit ...................... 8 9 Evaluation .................................. 8 10 Focus on the development user experience ................ 12 11 Legacy Apertis application framework 13 12 High level implementation plan for the next-generation Apertis 13 application framework 14 14 Flatpak on the Apertis images ...................... 15 15 The Apertis Flatpak application runtime ................. 15 16 Implement a new reference graphical shell/compositor ......... 16 17 Switch to PipeWire for audio management ................ 16 18 AppArmor support ............................. 17 19 The app-store ................................ 17 20 As a platform, Apertis needs a vibrant ecosystem to thrive, and one of the 21 foundations of such ecosystem is being friendly to application developers and 22 product teams. Product teams and application developers are more likely to 23 choose Apertis if it offers flows for building, shipping, and updating applications 24 that are convenient, cheap, and that require low maintenance. 25 To reach that goal, a key guideline is to closely align to upstream solutions 26 that address those needs and integrate them into Apertis, to provide to appli- 27 cation authors a framework that is made of proven, stable, complete, and well 28 documented components. 29 The cornerstone of this new approach is the adoption of Flatpak, the modern 30 application system already officially supported on more than 20 Linux distribu- 1 31 tions , including Ubuntu, Fedora, Red Hat Enterprise, Alpine, Arch, Debian, 32 ChromeOS, and Raspian.
    [Show full text]
  • Pipewire: a Low-Level Multimedia Subsystem
    Proceedings of the 18th Linux Audio Conference (LAC-20), SCRIME, Université de Bordeaux, France, November 25–27, 2020 PIPEWIRE: A LOW-LEVEL MULTIMEDIA SUBSYSTEM Wim Taymans ∗ Principal Software Engineer Red Hat, Spain [email protected] ABSTRACT 2. LINUX AUDIO LANDSCAPE PipeWire is a low-level multimedia library and daemon that facili- Audio support on Linux first appeared with the Open Sound System tates negotiation and low-latency transport of multimedia content be- (OSS) [6] and was until the 2.4 kernel the only audio API available tween applications, filters and devices. It is built using modern Linux on Linux. It was based around the standard Unix open/close/read- infrastructure and has both performance and security as its core de- /write/ioctl system calls. sign guidelines. The goal is to provide services such as JACK and OSS was replaced by the Advanced Linux Sound Architecture PulseAudio on top of this common infrastructure. PipeWire is media (ALSA) [7]from Linux 2.5. ALSA improved on the OSS API and agnostic and supports arbitrary compressed and uncompressed for- included a user space library that abstracted many of the hardware mats. A common audio infrastructure with backwards compatibility details. The ALSA user-space library also includes a plugin infras- that can support Pro Audio and Desktop Audio use cases can poten- tructure that can be used to create new custom devices and plugins. tially unify the currently fractured audio landscape on Linux desk- Unfortunately, the plugin system is quite static and requires editing tops and workstations and give users and developers a much better of configuration files.
    [Show full text]
  • Audio on Linux: End of a Golden Age?
    Audio on Linux: End of a Golden Age? Lars-Peter Clausen – Analog Devices Agenda ● History – Major transitions in software and hardware architecture ● Present – A look at the current situation – Are we in a golden age? ● Future – What major transitions lie ahead of us – How are we going to react to them? Interdependent vs. Modular Interdependent ● No clear boundaries defined between sub- modules ● Different sub-modules are aware of each others internals – Creates dependencies ● Parts can't be upgraded or modified independently of each other Modular ● Partitioning in sub-modules ● Clearly defined functions and interfaces ● Parts can be changed independently of each other – Drop-in replacements ● Constraint by the interface History Humble Beginnings PC Speaker (Beeper) ● Found in all IBM compatible PCs – Present in the first IBM PC 5150 (1981) ● Has only two states – Toggling a specific frequency generates a tone (PWM) ● Magnetic or Piezoelectric plate ● In Linux supported by the input framework Extending Features Soundblaster ● First widespread consumer sound card – Soundblaster 1.0 release in 1989 ● Primarily synthesizer based ● Mono PCM channel ● Became defacto standard for consumer sound cards – Many applications expected a sound blaster interface – Other manufacturers included a Soundblaster compatibility mode in their hardware Audio on Linux Open Sound System (OSS) Open Sound System (OSS) ● Used to be default audio subsystem in v2.4 ● /dev/dsp interface – To playback audio use write() – To capture audio use read() – Some IOCTLs for
    [Show full text]
  • Referência Debian I
    Referência Debian i Referência Debian Osamu Aoki Referência Debian ii Copyright © 2013-2021 Osamu Aoki Esta Referência Debian (versão 2.85) (2021-09-17 09:11:56 UTC) pretende fornecer uma visão geral do sistema Debian como um guia do utilizador pós-instalação. Cobre muitos aspetos da administração do sistema através de exemplos shell-command para não programadores. Referência Debian iii COLLABORATORS TITLE : Referência Debian ACTION NAME DATE SIGNATURE WRITTEN BY Osamu Aoki 17 de setembro de 2021 REVISION HISTORY NUMBER DATE DESCRIPTION NAME Referência Debian iv Conteúdo 1 Manuais de GNU/Linux 1 1.1 Básico da consola ................................................... 1 1.1.1 A linha de comandos da shell ........................................ 1 1.1.2 The shell prompt under GUI ......................................... 2 1.1.3 A conta root .................................................. 2 1.1.4 A linha de comandos shell do root ...................................... 3 1.1.5 GUI de ferramentas de administração do sistema .............................. 3 1.1.6 Consolas virtuais ............................................... 3 1.1.7 Como abandonar a linha de comandos .................................... 3 1.1.8 Como desligar o sistema ........................................... 4 1.1.9 Recuperar uma consola sã .......................................... 4 1.1.10 Sugestões de pacotes adicionais para o novato ................................ 4 1.1.11 Uma conta de utilizador extra ........................................ 5 1.1.12 Configuração
    [Show full text]
  • Flatpak a Desktop Version of Containers
    Flatpak a desktop version of containers Alexander Larsson, Red Hat What is Flatpak? A distribution-independent, Linux-based application distribution and deployment mechanism for desktop applications distribution-independent ● run on any distribution ● build on any distribution ● Any version of the distribution Linux-based ● Flatpak runs only on Linux ● Uses linux-specific features ● However, needs to run on older kernel ● Current minimum target – RHEL 7 – Ubuntu 16.04 (Xenial) – Debian 9 (Stretch) Distribution mechanism ● Built in support for install ● Built in support for updates ● Anyone can set up a repository Deployment mechanism ● Run apps in a controlled environment – “container” ● Sandbox for improved security – Default sandbox is very limited – Apps can ask for more permissions Desktop application ● Focus on GUI apps ● No root permissions ● Automatically integrates with desktop ● App lifetimes are ad-hoc and transient ● Nothing assumes a “sysadmin” being available How is flatpak different from containers Filesystem layout Docker requirements ● Examples: – REST API micro-service – Website back-end ● Few dependencies, all hand-picked ● Runs as a daemon user ● Writes to nonstandard locations in file-system ● Not a lot of integration with host – DNS – Port forwarding – Volumes for data ● No access to host filesystem ● Updates are managed Docker layout ● One image for the whole fs – Bring your own dependencies – Layout up to each app ● Independent of host filesystem layout Flatpak requirements ● Examples – Firefox – Spotify – gedit
    [Show full text]
  • Minecraft Bedrock Launcher Documentation
    Minecraft Bedrock Launcher Documentation MrARM & contributors Jul 27, 2021 Contents: 1 Getting started 1 1.1 AppImage................................................1 1.2 Flatpak..................................................1 1.3 macOS..................................................2 1.4 Source build...............................................2 1.5 Getting help...............................................2 2 Frequently Asked Questions 3 2.1 Do I need to own Minecraft: Pocket Edition to play?..........................3 2.2 Does it work on Windows 7 / 8?.....................................3 2.3 How does it work?............................................4 2.4 Where are my worlds?..........................................4 2.5 Can I use resource packs?........................................4 2.6 Why would I want to use this projects server, instead of the official one?................4 3 Troubleshooting 5 3.1 Extracting APKs.............................................6 3.2 AppImage................................................6 3.3 Controller.................................................6 3.4 Game launcher..............................................7 3.5 Qt launcher UI..............................................9 4 Building from sources 11 4.1 Introduction (read first).......................................... 11 4.2 Compiling MSA (for Xbox Live).................................... 12 4.3 Compiling the game launcher...................................... 13 4.4 Compiling the Qt UI..........................................
    [Show full text]
  • The Pulseaudio Sound Server Linux.Conf.Au 2007
    Introduction What is PulseAudio? Usage Internals Recipes Outlook The PulseAudio Sound Server linux.conf.au 2007 Lennart Poettering [email protected] Universit¨atHamburg, Department Informatik University of Hamburg, Department of Informatics Hamburg, Germany January 17th, 2007 Lennart Poettering The PulseAudio Sound Server 2 What is PulseAudio? 3 Usage 4 Internals 5 Recipes 6 Outlook Introduction What is PulseAudio? Usage Internals Recipes Outlook Contents 1 Introduction Lennart Poettering The PulseAudio Sound Server 3 Usage 4 Internals 5 Recipes 6 Outlook Introduction What is PulseAudio? Usage Internals Recipes Outlook Contents 1 Introduction 2 What is PulseAudio? Lennart Poettering The PulseAudio Sound Server 4 Internals 5 Recipes 6 Outlook Introduction What is PulseAudio? Usage Internals Recipes Outlook Contents 1 Introduction 2 What is PulseAudio? 3 Usage Lennart Poettering The PulseAudio Sound Server 5 Recipes 6 Outlook Introduction What is PulseAudio? Usage Internals Recipes Outlook Contents 1 Introduction 2 What is PulseAudio? 3 Usage 4 Internals Lennart Poettering The PulseAudio Sound Server 6 Outlook Introduction What is PulseAudio? Usage Internals Recipes Outlook Contents 1 Introduction 2 What is PulseAudio? 3 Usage 4 Internals 5 Recipes Lennart Poettering The PulseAudio Sound Server Introduction What is PulseAudio? Usage Internals Recipes Outlook Contents 1 Introduction 2 What is PulseAudio? 3 Usage 4 Internals 5 Recipes 6 Outlook Lennart Poettering The PulseAudio Sound Server Introduction What is PulseAudio? Usage Internals Recipes Outlook Who Am I? Student (Computer Science) from Hamburg, Germany Core Developer of PulseAudio, Avahi and a few other Free Software projects http://0pointer.de/lennart/ [email protected] IRC: mezcalero Lennart Poettering The PulseAudio Sound Server Introduction What is PulseAudio? Usage Internals Recipes Outlook Introduction Lennart Poettering The PulseAudio Sound Server It’s a mess! There are just too many widely adopted but competing and incompatible sound systems.
    [Show full text]
  • Red Hat Enterprise Linux 7 7.8 Release Notes
    Red Hat Enterprise Linux 7 7.8 Release Notes Release Notes for Red Hat Enterprise Linux 7.8 Last Updated: 2021-03-02 Red Hat Enterprise Linux 7 7.8 Release Notes Release Notes for Red Hat Enterprise Linux 7.8 Legal Notice Copyright © 2021 Red Hat, Inc. The text of and illustrations in this document are licensed by Red Hat under a Creative Commons Attribution–Share Alike 3.0 Unported license ("CC-BY-SA"). An explanation of CC-BY-SA is available at http://creativecommons.org/licenses/by-sa/3.0/ . In accordance with CC-BY-SA, if you distribute this document or an adaptation of it, you must provide the URL for the original version. Red Hat, as the licensor of this document, waives the right to enforce, and agrees not to assert, Section 4d of CC-BY-SA to the fullest extent permitted by applicable law. Red Hat, Red Hat Enterprise Linux, the Shadowman logo, the Red Hat logo, JBoss, OpenShift, Fedora, the Infinity logo, and RHCE are trademarks of Red Hat, Inc., registered in the United States and other countries. Linux ® is the registered trademark of Linus Torvalds in the United States and other countries. Java ® is a registered trademark of Oracle and/or its affiliates. XFS ® is a trademark of Silicon Graphics International Corp. or its subsidiaries in the United States and/or other countries. MySQL ® is a registered trademark of MySQL AB in the United States, the European Union and other countries. Node.js ® is an official trademark of Joyent. Red Hat is not formally related to or endorsed by the official Joyent Node.js open source or commercial project.
    [Show full text]
  • Debian and Ubuntu
    Debian and Ubuntu Lucas Nussbaum lucas@{debian.org,ubuntu.com} lucas@{debian.org,ubuntu.com} Debian and Ubuntu 1 / 28 Why I am qualified to give this talk Debian Developer and Ubuntu Developer since 2006 Involved in improving collaboration between both projects Developed/Initiated : Multidistrotools, ubuntu usertag on the BTS, improvements to the merge process, Ubuntu box on the PTS, Ubuntu column on DDPO, . Attended Debconf and UDS Friends in both communities lucas@{debian.org,ubuntu.com} Debian and Ubuntu 2 / 28 What’s in this talk ? Ubuntu development process, and how it relates to Debian Discussion of the current state of affairs "OK, what should we do now ?" lucas@{debian.org,ubuntu.com} Debian and Ubuntu 3 / 28 The Ubuntu Development Process lucas@{debian.org,ubuntu.com} Debian and Ubuntu 4 / 28 Linux distributions 101 Take software developed by upstream projects Linux, X.org, GNOME, KDE, . Put it all nicely together Standardization / Integration Quality Assurance Support Get all the fame Ubuntu has one special upstream : Debian lucas@{debian.org,ubuntu.com} Debian and Ubuntu 5 / 28 Ubuntu’s upstreams Not that simple : changes required, sometimes Toolchain changes Bugfixes Integration (Launchpad) Newer releases Often not possible to do work in Debian first lucas@{debian.org,ubuntu.com} Debian and Ubuntu 6 / 28 Ubuntu Packages Workflow lucas@{debian.org,ubuntu.com} Debian and Ubuntu 7 / 28 Ubuntu Packages Workflow Ubuntu Karmic Excluding specific packages language-(support|pack)-*, kde-l10n-*, *ubuntu*, *launchpad* Missing 4% : Newer upstream
    [Show full text]