SlideShare a Scribd company logo
1 of 44
Download to read offline
Modularity & Generational Core
by Petr Šabata and Adam Šamalík
The future of Fedora?
Distributions
are great!
Why are distros great?
Ship packaged software
Dependencies included
Integrated and tested
Patched for security vulnerabilities
Distros have a life span
Everything is supported for
the same time!
but
... which is fine,
Applications are
released at their
own pace.
(independent of the distribution)
And applications can
come in multiple
versions.
(different variants or different generations)
But distributions
ship just a single
version of an
application for each
release.
(mostly because of conflicting dependencies)
So how to choose
the right version?
Fast updates
& latest versions? Slow
updates
&
stable
versions?
What is better?
That's right!
All of them!
But howto include multiple
versions?
(providing multiple versions of software in a distribution)
Option one:
Fast track + LTS
Option two:
Software
Collections
(providing multiple versions of software in a distribution)
Option three:
Linux
Containers
(providing multiple versions of software in a distribution)
Option four:
Modularity!
(providing multiple versions of software in a distribution)
Introducing tiny
system called
Base Runtime
Includes the kernel, glibc, and other basic tools and
libraries with proven long-term ABI stability.
Software runs on
Base Runtime
as a Module.
Similar concept to Android or iPhone apps.
Modules are groups
of packages with
a purpose.
Like a database, Firefox, or a LAMP stack.
Anatomy of a Module
Modules are defined
by a modulemd file.
Defining its components, an API, a build recipe,
and install profiles.
"Stop it! We want to see some code, Adam!"
document: modulemd
version: 1
data:
# An ID of the module.
name: foo
stream: stream-name
version: 20160927144203
# What's the module about?
summary: An example module
description: >
A module for the demonstration of the metadata format. Also,
the obligatory lorem ipsum dolor sit amet goes right here.
# How can I use it? How can I change it? Can I sell it?
license:
module:
- MIT
content:
- Beerware
- GPLv2+
# Where does it live?
references:
community: http://www.example.com/
documentation: http://www.example.com/
tracker: http://www.example.com/
Modules are built
in the Factory 2.0
Modules are
delivered as various
artifacts.
Like an RPM repository, Linux Container, Flatpak,
OSTree, ISO, etc.
Running modules
RPMs? Containers?
I don't care!
$ dnf install httpd
$ dnf install httpd
...
$ vim /etc/httpd/configuration.file
$ dnf install httpd
...
$ vim /etc/httpd/configuration.file
...
$ vim /var/www/index.html
$ dnf install httpd
...
$ vim /etc/httpd/configuration.file
...
$ vim /var/www/index.html
...
$ systemctl start httpd
$ dnf install httpd
...
$ vim /etc/httpd/configuration.file
...
$ vim /var/www/index.html
...
$ systemctl start httpd
#.... few days later ....
$ dnf update
No changes to the
current user
workflow!
How
that works?
We focus on the package
Don't build distro
versions...
Build module streams!
Modules come in
multiple streams.
Major versions or variants of an application.
You choose
the right streams
before installation.
Or get an iso with pre-selected streams - similar to the
current situation.
DNF keeps your
system updated
while preserving
compatibility.
So "$ dnf update" works!
...so that will the
modular distro!
https://fedoraproject.org/wiki/Modularity

More Related Content

What's hot

Linux Interview Questions Quiz
Linux Interview Questions QuizLinux Interview Questions Quiz
Linux Interview Questions Quiz
Utkarsh Sengar
 
Sample Website
Sample WebsiteSample Website
Sample Website
Matt R
 
You think you're not a target? A tale of three developers...
You think you're not a target? A tale of three developers...You think you're not a target? A tale of three developers...
You think you're not a target? A tale of three developers...
Speck&Tech
 

What's hot (20)

Linux Interview Questions Quiz
Linux Interview Questions QuizLinux Interview Questions Quiz
Linux Interview Questions Quiz
 
Linux Kernel Introduction
Linux Kernel IntroductionLinux Kernel Introduction
Linux Kernel Introduction
 
Open source alternatives to proprietary software
Open source alternatives to proprietary softwareOpen source alternatives to proprietary software
Open source alternatives to proprietary software
 
Devsummit 2010
Devsummit 2010Devsummit 2010
Devsummit 2010
 
Deep drive into rust programming language
Deep drive into rust programming languageDeep drive into rust programming language
Deep drive into rust programming language
 
Extrabacon's sploit core
Extrabacon's sploit coreExtrabacon's sploit core
Extrabacon's sploit core
 
Linux a free and open source operating system
Linux a free and open source operating systemLinux a free and open source operating system
Linux a free and open source operating system
 
Sample Website
Sample WebsiteSample Website
Sample Website
 
An introduction to MAC RBAC and LSM
An introduction to MAC RBAC and LSMAn introduction to MAC RBAC and LSM
An introduction to MAC RBAC and LSM
 
Linux 4.6 and memory protections
Linux 4.6 and memory protectionsLinux 4.6 and memory protections
Linux 4.6 and memory protections
 
Rust Programming Language
Rust Programming LanguageRust Programming Language
Rust Programming Language
 
Getting started with AppArmor
Getting started with AppArmorGetting started with AppArmor
Getting started with AppArmor
 
Build Scripts And Inno Setup
Build Scripts And Inno SetupBuild Scripts And Inno Setup
Build Scripts And Inno Setup
 
Linux Simple Introduction
Linux Simple IntroductionLinux Simple Introduction
Linux Simple Introduction
 
Getting started with GrSecurity
Getting started with GrSecurityGetting started with GrSecurity
Getting started with GrSecurity
 
Why Rust? - Matthias Endler - Codemotion Amsterdam 2016
Why Rust? - Matthias Endler - Codemotion Amsterdam 2016Why Rust? - Matthias Endler - Codemotion Amsterdam 2016
Why Rust? - Matthias Endler - Codemotion Amsterdam 2016
 
Introduction to FOSS world
Introduction to FOSS worldIntroduction to FOSS world
Introduction to FOSS world
 
Introduction to linux
Introduction to linuxIntroduction to linux
Introduction to linux
 
You think you're not a target? A tale of three developers...
You think you're not a target? A tale of three developers...You think you're not a target? A tale of three developers...
You think you're not a target? A tale of three developers...
 
Ubuntu
UbuntuUbuntu
Ubuntu
 

Viewers also liked

CIRRICULUM VITEA OF C L HORNE 2017
CIRRICULUM VITEA OF C L HORNE 2017CIRRICULUM VITEA OF C L HORNE 2017
CIRRICULUM VITEA OF C L HORNE 2017
Christi Horne
 
Freenas Tutorial EuroBSDCon 2012
Freenas Tutorial EuroBSDCon 2012Freenas Tutorial EuroBSDCon 2012
Freenas Tutorial EuroBSDCon 2012
Dru Lavigne
 
Network attached storage
Network attached storageNetwork attached storage
Network attached storage
ashutosh rai
 

Viewers also liked (19)

Resume16
Resume16Resume16
Resume16
 
CIRRICULUM VITEA OF C L HORNE 2017
CIRRICULUM VITEA OF C L HORNE 2017CIRRICULUM VITEA OF C L HORNE 2017
CIRRICULUM VITEA OF C L HORNE 2017
 
The Future of Embedded and IoT Security: Kaspersky Operating System
The Future of Embedded and IoT Security: Kaspersky Operating SystemThe Future of Embedded and IoT Security: Kaspersky Operating System
The Future of Embedded and IoT Security: Kaspersky Operating System
 
SAINI SARKAR
SAINI SARKARSAINI SARKAR
SAINI SARKAR
 
Programming The Arduino Due in Rust
Programming The Arduino Due in RustProgramming The Arduino Due in Rust
Programming The Arduino Due in Rust
 
Reversing Google Protobuf protocol
Reversing Google Protobuf protocolReversing Google Protobuf protocol
Reversing Google Protobuf protocol
 
Embedded Rust – Rust on IoT devices
Embedded Rust – Rust on IoT devicesEmbedded Rust – Rust on IoT devices
Embedded Rust – Rust on IoT devices
 
Courrier remerciements
Courrier remerciementsCourrier remerciements
Courrier remerciements
 
Curriculum power point
Curriculum power pointCurriculum power point
Curriculum power point
 
Protobuf & Code Generation + Go-Kit
Protobuf & Code Generation + Go-KitProtobuf & Code Generation + Go-Kit
Protobuf & Code Generation + Go-Kit
 
Amahi 5.0 Screenshots
Amahi 5.0 ScreenshotsAmahi 5.0 Screenshots
Amahi 5.0 Screenshots
 
Freenas Tutorial EuroBSDCon 2012
Freenas Tutorial EuroBSDCon 2012Freenas Tutorial EuroBSDCon 2012
Freenas Tutorial EuroBSDCon 2012
 
Macro VBA Excel2010 by A'Rong
Macro VBA Excel2010 by A'RongMacro VBA Excel2010 by A'Rong
Macro VBA Excel2010 by A'Rong
 
Introduction to FreeNAS development by John Hixson
Introduction to FreeNAS development by John HixsonIntroduction to FreeNAS development by John Hixson
Introduction to FreeNAS development by John Hixson
 
Nas Ashok1
Nas Ashok1Nas Ashok1
Nas Ashok1
 
Network attached storage
Network attached storageNetwork attached storage
Network attached storage
 
Building open source storage for enterprise
Building open source storage for enterpriseBuilding open source storage for enterprise
Building open source storage for enterprise
 
Home Lab Fundamentals - The Why's and How's
Home Lab Fundamentals - The Why's and How'sHome Lab Fundamentals - The Why's and How's
Home Lab Fundamentals - The Why's and How's
 
Raspberry Pi Python Rover
Raspberry Pi Python RoverRaspberry Pi Python Rover
Raspberry Pi Python Rover
 

Similar to Fedora Modularity

Fos sintro pres-dav
Fos sintro pres-davFos sintro pres-dav
Fos sintro pres-dav
Parin Sharma
 
Introduction to Software Build Technology
Introduction to Software Build TechnologyIntroduction to Software Build Technology
Introduction to Software Build Technology
Philip Johnson
 
Exploit Frameworks
Exploit FrameworksExploit Frameworks
Exploit Frameworks
phanleson
 
OSCamp Kubernetes 2024 | Zero-Touch OS-Infrastruktur für Container und Kubern...
OSCamp Kubernetes 2024 | Zero-Touch OS-Infrastruktur für Container und Kubern...OSCamp Kubernetes 2024 | Zero-Touch OS-Infrastruktur für Container und Kubern...
OSCamp Kubernetes 2024 | Zero-Touch OS-Infrastruktur für Container und Kubern...
NETWAYS
 
Intro To Linux
Intro To LinuxIntro To Linux
Intro To Linux
techlug
 
exp_1_20bca1108(kashish_dixit.docx
exp_1_20bca1108(kashish_dixit.docxexp_1_20bca1108(kashish_dixit.docx
exp_1_20bca1108(kashish_dixit.docx
ApkaAmitbro
 

Similar to Fedora Modularity (20)

Fos sintro pres-dav
Fos sintro pres-davFos sintro pres-dav
Fos sintro pres-dav
 
Foss Presentation
Foss PresentationFoss Presentation
Foss Presentation
 
Introduction to Software Build Technology
Introduction to Software Build TechnologyIntroduction to Software Build Technology
Introduction to Software Build Technology
 
Open Source Software You Can Use
Open Source Software You Can UseOpen Source Software You Can Use
Open Source Software You Can Use
 
Linux internals v4
Linux internals v4Linux internals v4
Linux internals v4
 
What is the Secure Supply Chain and the Current State of the PHP Ecosystem
What is the Secure Supply Chain and the Current State of the PHP EcosystemWhat is the Secure Supply Chain and the Current State of the PHP Ecosystem
What is the Secure Supply Chain and the Current State of the PHP Ecosystem
 
Exploit Frameworks
Exploit FrameworksExploit Frameworks
Exploit Frameworks
 
Linux
LinuxLinux
Linux
 
nullcon 2011 - Fuzzing with Complexities
nullcon 2011 - Fuzzing with Complexitiesnullcon 2011 - Fuzzing with Complexities
nullcon 2011 - Fuzzing with Complexities
 
Subversion
SubversionSubversion
Subversion
 
Basic orientation to Linux
Basic orientation to LinuxBasic orientation to Linux
Basic orientation to Linux
 
BUD17-104: Scripting Languages in IoT: Challenges and Approaches
BUD17-104: Scripting Languages in IoT: Challenges and ApproachesBUD17-104: Scripting Languages in IoT: Challenges and Approaches
BUD17-104: Scripting Languages in IoT: Challenges and Approaches
 
FFmpeg - the universal multimedia toolkit
FFmpeg - the universal multimedia toolkitFFmpeg - the universal multimedia toolkit
FFmpeg - the universal multimedia toolkit
 
OSCamp Kubernetes 2024 | Zero-Touch OS-Infrastruktur für Container und Kubern...
OSCamp Kubernetes 2024 | Zero-Touch OS-Infrastruktur für Container und Kubern...OSCamp Kubernetes 2024 | Zero-Touch OS-Infrastruktur für Container und Kubern...
OSCamp Kubernetes 2024 | Zero-Touch OS-Infrastruktur für Container und Kubern...
 
The Lives of Others: Open-Source Development Practices Elsewhere
The Lives of Others: Open-Source Development Practices ElsewhereThe Lives of Others: Open-Source Development Practices Elsewhere
The Lives of Others: Open-Source Development Practices Elsewhere
 
Using Open Source for Enterprise
Using Open Source for EnterpriseUsing Open Source for Enterprise
Using Open Source for Enterprise
 
Purdue CS354 Operating Systems 2008
Purdue CS354 Operating Systems 2008Purdue CS354 Operating Systems 2008
Purdue CS354 Operating Systems 2008
 
Intro To Linux
Intro To LinuxIntro To Linux
Intro To Linux
 
exp_1_20bca1108(kashish_dixit.docx
exp_1_20bca1108(kashish_dixit.docxexp_1_20bca1108(kashish_dixit.docx
exp_1_20bca1108(kashish_dixit.docx
 
Jalimo Slides Linuxtag2008
Jalimo Slides Linuxtag2008Jalimo Slides Linuxtag2008
Jalimo Slides Linuxtag2008
 

Recently uploaded

Cloud Frontiers: A Deep Dive into Serverless Spatial Data and FME
Cloud Frontiers:  A Deep Dive into Serverless Spatial Data and FMECloud Frontiers:  A Deep Dive into Serverless Spatial Data and FME
Cloud Frontiers: A Deep Dive into Serverless Spatial Data and FME
Safe Software
 
Cloud Frontiers: A Deep Dive into Serverless Spatial Data and FME
Cloud Frontiers:  A Deep Dive into Serverless Spatial Data and FMECloud Frontiers:  A Deep Dive into Serverless Spatial Data and FME
Cloud Frontiers: A Deep Dive into Serverless Spatial Data and FME
Safe Software
 

Recently uploaded (20)

Cyberprint. Dark Pink Apt Group [EN].pdf
Cyberprint. Dark Pink Apt Group [EN].pdfCyberprint. Dark Pink Apt Group [EN].pdf
Cyberprint. Dark Pink Apt Group [EN].pdf
 
Ransomware_Q4_2023. The report. [EN].pdf
Ransomware_Q4_2023. The report. [EN].pdfRansomware_Q4_2023. The report. [EN].pdf
Ransomware_Q4_2023. The report. [EN].pdf
 
"I see eyes in my soup": How Delivery Hero implemented the safety system for ...
"I see eyes in my soup": How Delivery Hero implemented the safety system for ..."I see eyes in my soup": How Delivery Hero implemented the safety system for ...
"I see eyes in my soup": How Delivery Hero implemented the safety system for ...
 
Polkadot JAM Slides - Token2049 - By Dr. Gavin Wood
Polkadot JAM Slides - Token2049 - By Dr. Gavin WoodPolkadot JAM Slides - Token2049 - By Dr. Gavin Wood
Polkadot JAM Slides - Token2049 - By Dr. Gavin Wood
 
Cloud Frontiers: A Deep Dive into Serverless Spatial Data and FME
Cloud Frontiers:  A Deep Dive into Serverless Spatial Data and FMECloud Frontiers:  A Deep Dive into Serverless Spatial Data and FME
Cloud Frontiers: A Deep Dive into Serverless Spatial Data and FME
 
Strategies for Landing an Oracle DBA Job as a Fresher
Strategies for Landing an Oracle DBA Job as a FresherStrategies for Landing an Oracle DBA Job as a Fresher
Strategies for Landing an Oracle DBA Job as a Fresher
 
Boost Fertility New Invention Ups Success Rates.pdf
Boost Fertility New Invention Ups Success Rates.pdfBoost Fertility New Invention Ups Success Rates.pdf
Boost Fertility New Invention Ups Success Rates.pdf
 
Emergent Methods: Multi-lingual narrative tracking in the news - real-time ex...
Emergent Methods: Multi-lingual narrative tracking in the news - real-time ex...Emergent Methods: Multi-lingual narrative tracking in the news - real-time ex...
Emergent Methods: Multi-lingual narrative tracking in the news - real-time ex...
 
Manulife - Insurer Transformation Award 2024
Manulife - Insurer Transformation Award 2024Manulife - Insurer Transformation Award 2024
Manulife - Insurer Transformation Award 2024
 
Navigating the Deluge_ Dubai Floods and the Resilience of Dubai International...
Navigating the Deluge_ Dubai Floods and the Resilience of Dubai International...Navigating the Deluge_ Dubai Floods and the Resilience of Dubai International...
Navigating the Deluge_ Dubai Floods and the Resilience of Dubai International...
 
TrustArc Webinar - Unlock the Power of AI-Driven Data Discovery
TrustArc Webinar - Unlock the Power of AI-Driven Data DiscoveryTrustArc Webinar - Unlock the Power of AI-Driven Data Discovery
TrustArc Webinar - Unlock the Power of AI-Driven Data Discovery
 
Apidays New York 2024 - Scaling API-first by Ian Reasor and Radu Cotescu, Adobe
Apidays New York 2024 - Scaling API-first by Ian Reasor and Radu Cotescu, AdobeApidays New York 2024 - Scaling API-first by Ian Reasor and Radu Cotescu, Adobe
Apidays New York 2024 - Scaling API-first by Ian Reasor and Radu Cotescu, Adobe
 
Apidays New York 2024 - The value of a flexible API Management solution for O...
Apidays New York 2024 - The value of a flexible API Management solution for O...Apidays New York 2024 - The value of a flexible API Management solution for O...
Apidays New York 2024 - The value of a flexible API Management solution for O...
 
Spring Boot vs Quarkus the ultimate battle - DevoxxUK
Spring Boot vs Quarkus the ultimate battle - DevoxxUKSpring Boot vs Quarkus the ultimate battle - DevoxxUK
Spring Boot vs Quarkus the ultimate battle - DevoxxUK
 
Exploring Multimodal Embeddings with Milvus
Exploring Multimodal Embeddings with MilvusExploring Multimodal Embeddings with Milvus
Exploring Multimodal Embeddings with Milvus
 
Corporate and higher education May webinar.pptx
Corporate and higher education May webinar.pptxCorporate and higher education May webinar.pptx
Corporate and higher education May webinar.pptx
 
AWS Community Day CPH - Three problems of Terraform
AWS Community Day CPH - Three problems of TerraformAWS Community Day CPH - Three problems of Terraform
AWS Community Day CPH - Three problems of Terraform
 
How to Troubleshoot Apps for the Modern Connected Worker
How to Troubleshoot Apps for the Modern Connected WorkerHow to Troubleshoot Apps for the Modern Connected Worker
How to Troubleshoot Apps for the Modern Connected Worker
 
Connector Corner: Accelerate revenue generation using UiPath API-centric busi...
Connector Corner: Accelerate revenue generation using UiPath API-centric busi...Connector Corner: Accelerate revenue generation using UiPath API-centric busi...
Connector Corner: Accelerate revenue generation using UiPath API-centric busi...
 
Cloud Frontiers: A Deep Dive into Serverless Spatial Data and FME
Cloud Frontiers:  A Deep Dive into Serverless Spatial Data and FMECloud Frontiers:  A Deep Dive into Serverless Spatial Data and FME
Cloud Frontiers: A Deep Dive into Serverless Spatial Data and FME
 

Fedora Modularity