SlideShare uma empresa Scribd logo
1 de 20
Using Eclipse to Build a
          Linux Distribution

    Andrew Overholt,
    Severin Gehwolf

    EclipseCon, March 23, 2011


1                Andrew Overholt, Severin Gehwolf
What This Talk is About...

    ●   Looking behind the scenes: Fedora
    ●   An Eclipse-based solution for the Fedora packaging
        problem




2                         Andrew Overholt, Severin Gehwolf
Linux Distributions. There Are Many of Them...




3                 Andrew Overholt, Severin Gehwolf
We Will Focus on Fedora




4                Andrew Overholt, Severin Gehwolf
Who Are The People Behind Fedora?

    ●   Software engineers
    ●   Packagers
    ●   Designers
    ●   Volunteers
    ●   Students
    ●   You?




5                            Andrew Overholt, Severin Gehwolf
OK, So What Exactly Is Fedora?

    ●   An operating system, a collection of applications. Many
        applications.
    ●   One application, for example Eclipse, may be provided
        by a collection of packages (RPMs)
    ●   Example: Eclipse                      eclipse-rpm-editor-0.6.0-1.fc14.x86_64.rpm




               - Platform
               - RCP
               - JDT
               - SWT
               ...

6                           Andrew Overholt, Severin Gehwolf
How Are Packages Created?

    ●   Ingredients:
         ●   Upstream sources
         ●   Spec file (package name, files part of a package,
             description, instructions how to build from sources, etc.)
         ●   Patches for upstream sources
              ●   All items above are kept in a Git repository
         ●   Build system
         ●   Update system




7                                 Andrew Overholt, Severin Gehwolf
Overview of Fedora Infrastructure
                                                Updates system
                                                - bug fixes
                                                - security fixes




                          F15       F16      F13




                                                                   Sources
                                                                   repository
    Git repositories:
    - Spec file
    - Patches
                        Build system:
                        - build RPMs on trusted
                          machine from known sources

8                         Andrew Overholt, Severin Gehwolf
What Our Tool Tries to Solve?
    ●   Remember, we have seen...
         ●   By whom Fedora is created (Fedora community)
         ●   What Fedora is
         ●   How Fedora is created, but ...
    ●   Many contributors are also developers of upstream
        projects
    ●   Some use Eclipse for their work already
    ●   No existing GUI tool for Fedora packaging and
        interaction with infrastructure
    ●   Packaging work with existing tools is cumbersome,
        hard for newcomers to pick up.
9                              Andrew Overholt, Severin Gehwolf
The Solution: Fedora Meets Eclipse




                      +

10                Andrew Overholt, Severin Gehwolf
Eclipse Fedora Packager

     ●   Spec File Editor
     ●   Git integration (using EGit, JGit)
     ●   Easy interaction with Fedora packaging infrastructure
     ●   Increase productivity by speeding up Fedora
         packaging work




11                           Andrew Overholt, Severin Gehwolf
Eclipse Fedora Packager Architecture




                    Eclipse Fedora Packager


      JGit   EGit            CVS             ChangeLog   RPM Editor

               Eclipse Platform, RCP, Equinox




12                    Andrew Overholt, Severin Gehwolf
Typical Workflow: Import a Package




13                Andrew Overholt, Severin Gehwolf
Spec File Editor




14                 Andrew Overholt, Severin Gehwolf
Local Builds




15             Andrew Overholt, Severin Gehwolf
Build System




16             Andrew Overholt, Severin Gehwolf
Updates System




17               Andrew Overholt, Severin Gehwolf
Future Work

     ●   Bugzilla integration (Mylyn)
     ●   RCP app
     ●   Eclipse Fedora Packager perspective
     ●   A lot more cool new features :)




18                           Andrew Overholt, Severin Gehwolf
Getting Involved...

                            Web/Trac:
            https://fedorahosted.org/eclipse-fedorapackager/


                         p2 Update Site:
http://fedorapeople.org/~jerboaa/eclipse-fedorapackager-p2-composite-repo/


                            Mailing list:
 https://admin.fedoraproject.org/mailman/listinfo/eclipse-packager-devel


                                    Git:
         git://git.fedorahosted.org/git/eclipse-
                    fedorapackager.git


19                          Andrew Overholt, Severin Gehwolf
Thank You!




     Questions?



20   Andrew Overholt, Severin Gehwolf

Mais conteúdo relacionado

Mais procurados

Git Version Control System
Git Version Control SystemGit Version Control System
Git Version Control SystemKMS Technology
 
Nxp nfc pn553 porting on nexus 5 x for android oreo hands on ( ar00c0.8.1.0)
Nxp nfc pn553 porting on nexus 5 x for android oreo hands on ( ar00c0.8.1.0)Nxp nfc pn553 porting on nexus 5 x for android oreo hands on ( ar00c0.8.1.0)
Nxp nfc pn553 porting on nexus 5 x for android oreo hands on ( ar00c0.8.1.0)Roger Yen
 
Embedded Recipes 2018 - Yoctoception: Containers in the embedded world - Jéré...
Embedded Recipes 2018 - Yoctoception: Containers in the embedded world - Jéré...Embedded Recipes 2018 - Yoctoception: Containers in the embedded world - Jéré...
Embedded Recipes 2018 - Yoctoception: Containers in the embedded world - Jéré...Anne Nicolas
 
Git Introduction Tutorial
Git Introduction TutorialGit Introduction Tutorial
Git Introduction TutorialThomas Rausch
 
Brief tutorial on Git
Brief tutorial on GitBrief tutorial on Git
Brief tutorial on Git聖文 鄭
 
The everyday developer's guide to version control with Git
The everyday developer's guide to version control with GitThe everyday developer's guide to version control with Git
The everyday developer's guide to version control with GitE Carter
 
Version Control with Git
Version Control with GitVersion Control with Git
Version Control with GitLuigi De Russis
 
Git One Day Training Notes
Git One Day Training NotesGit One Day Training Notes
Git One Day Training Notesglen_a_smith
 
News from Git in Eclipse - EclipseCon EU - 2016-10-26
News from Git in Eclipse - EclipseCon EU - 2016-10-26News from Git in Eclipse - EclipseCon EU - 2016-10-26
News from Git in Eclipse - EclipseCon EU - 2016-10-26msohn
 
Helios in Action: Git at Eclipse
Helios in Action: Git at EclipseHelios in Action: Git at Eclipse
Helios in Action: Git at EclipseChris Aniszczyk
 
Let the contribution begin (EST futures)
Let the contribution begin  (EST futures)Let the contribution begin  (EST futures)
Let the contribution begin (EST futures)SeongJae Park
 
Rise of the Machines - Automate your Development
Rise of the Machines - Automate your DevelopmentRise of the Machines - Automate your Development
Rise of the Machines - Automate your DevelopmentSven Peters
 
Gitlab Training with GIT and SourceTree
Gitlab Training with GIT and SourceTreeGitlab Training with GIT and SourceTree
Gitlab Training with GIT and SourceTreeTeerapat Khunpech
 
GIT presentation
GIT presentationGIT presentation
GIT presentationNaim Latifi
 

Mais procurados (20)

Git Version Control System
Git Version Control SystemGit Version Control System
Git Version Control System
 
Nxp nfc pn553 porting on nexus 5 x for android oreo hands on ( ar00c0.8.1.0)
Nxp nfc pn553 porting on nexus 5 x for android oreo hands on ( ar00c0.8.1.0)Nxp nfc pn553 porting on nexus 5 x for android oreo hands on ( ar00c0.8.1.0)
Nxp nfc pn553 porting on nexus 5 x for android oreo hands on ( ar00c0.8.1.0)
 
Did you git yet?
Did you git yet?Did you git yet?
Did you git yet?
 
Embedded Recipes 2018 - Yoctoception: Containers in the embedded world - Jéré...
Embedded Recipes 2018 - Yoctoception: Containers in the embedded world - Jéré...Embedded Recipes 2018 - Yoctoception: Containers in the embedded world - Jéré...
Embedded Recipes 2018 - Yoctoception: Containers in the embedded world - Jéré...
 
Git training with Devaamo
Git training with DevaamoGit training with Devaamo
Git training with Devaamo
 
Git Introduction Tutorial
Git Introduction TutorialGit Introduction Tutorial
Git Introduction Tutorial
 
Brief tutorial on Git
Brief tutorial on GitBrief tutorial on Git
Brief tutorial on Git
 
Bringing Tizen to a Raspberry Pi 2 Near You
Bringing Tizen to a Raspberry Pi 2 Near YouBringing Tizen to a Raspberry Pi 2 Near You
Bringing Tizen to a Raspberry Pi 2 Near You
 
The everyday developer's guide to version control with Git
The everyday developer's guide to version control with GitThe everyday developer's guide to version control with Git
The everyday developer's guide to version control with Git
 
Git in Eclipse
Git in EclipseGit in Eclipse
Git in Eclipse
 
Version Control with Git
Version Control with GitVersion Control with Git
Version Control with Git
 
Git One Day Training Notes
Git One Day Training NotesGit One Day Training Notes
Git One Day Training Notes
 
News from Git in Eclipse - EclipseCon EU - 2016-10-26
News from Git in Eclipse - EclipseCon EU - 2016-10-26News from Git in Eclipse - EclipseCon EU - 2016-10-26
News from Git in Eclipse - EclipseCon EU - 2016-10-26
 
Helios in Action: Git at Eclipse
Helios in Action: Git at EclipseHelios in Action: Git at Eclipse
Helios in Action: Git at Eclipse
 
Let the contribution begin (EST futures)
Let the contribution begin  (EST futures)Let the contribution begin  (EST futures)
Let the contribution begin (EST futures)
 
Git advanced
Git advancedGit advanced
Git advanced
 
Introduction git
Introduction gitIntroduction git
Introduction git
 
Rise of the Machines - Automate your Development
Rise of the Machines - Automate your DevelopmentRise of the Machines - Automate your Development
Rise of the Machines - Automate your Development
 
Gitlab Training with GIT and SourceTree
Gitlab Training with GIT and SourceTreeGitlab Training with GIT and SourceTree
Gitlab Training with GIT and SourceTree
 
GIT presentation
GIT presentationGIT presentation
GIT presentation
 

Semelhante a Using Eclipse to Build a Linux Distribution

Python dev tool introduction
Python dev tool introductionPython dev tool introduction
Python dev tool introductionCody Liu
 
Developing Android Platform Tools
Developing Android Platform ToolsDeveloping Android Platform Tools
Developing Android Platform ToolsOpersys inc.
 
Repositories as Code
Repositories as CodeRepositories as Code
Repositories as CodeKris Buytaert
 
What's new with tooling for Spring, Grails, and the Cloud
What's new with tooling for Spring, Grails, and the CloudWhat's new with tooling for Spring, Grails, and the Cloud
What's new with tooling for Spring, Grails, and the Cloudmartinlippert
 
Wrangling 3rd Party Installers from Puppet
Wrangling 3rd Party Installers from PuppetWrangling 3rd Party Installers from Puppet
Wrangling 3rd Party Installers from PuppetPuppet
 
FusionInventory at LSM/RMLL 2012
FusionInventory at LSM/RMLL 2012FusionInventory at LSM/RMLL 2012
FusionInventory at LSM/RMLL 2012Nouh Walid
 
Deploying and maintaining your software with RPM/APT
Deploying and maintaining your software with RPM/APTDeploying and maintaining your software with RPM/APT
Deploying and maintaining your software with RPM/APTJoshua Thijssen
 
.NET on Linux: Entity Framework Core 1.0
.NET on Linux: Entity Framework Core 1.0.NET on Linux: Entity Framework Core 1.0
.NET on Linux: Entity Framework Core 1.0All Things Open
 
The current state of OpenIndiana Hipster project
The current state of OpenIndiana Hipster projectThe current state of OpenIndiana Hipster project
The current state of OpenIndiana Hipster projectAlexander Pyhalov
 
LAS16-200: Firmware summit - Tianocore Progress and Status
LAS16-200:  Firmware summit - Tianocore Progress and StatusLAS16-200:  Firmware summit - Tianocore Progress and Status
LAS16-200: Firmware summit - Tianocore Progress and StatusLinaro
 
Does Cowgirl Dream of Red Swirl?
Does Cowgirl Dream of Red Swirl?Does Cowgirl Dream of Red Swirl?
Does Cowgirl Dream of Red Swirl?Hideki Yamane
 
Multiconf - Python Configuration API
Multiconf - Python Configuration APIMulticonf - Python Configuration API
Multiconf - Python Configuration APIlarshni
 
BKK16-310 The HiKey AOSP collaborative experience
BKK16-310 The HiKey AOSP collaborative experience BKK16-310 The HiKey AOSP collaborative experience
BKK16-310 The HiKey AOSP collaborative experience Linaro
 
Hyperscale SIG Introduction
Hyperscale SIG IntroductionHyperscale SIG Introduction
Hyperscale SIG IntroductionDavide Cavalca
 
Free Sorftware Research at Irill (highlights)
Free Sorftware Research at Irill (highlights)Free Sorftware Research at Irill (highlights)
Free Sorftware Research at Irill (highlights)Roberto Di Cosmo
 
How to became a Gentoo developer
How to became a Gentoo developerHow to became a Gentoo developer
How to became a Gentoo developeralice ferrazzi
 
Automated Configuration of Firmware
Automated Configuration of FirmwareAutomated Configuration of Firmware
Automated Configuration of FirmwareMichael Arnold
 
Diagnostics of a Linux System
Diagnostics of a Linux SystemDiagnostics of a Linux System
Diagnostics of a Linux SystemNovell
 
Buildout: creating and deploying repeatable applications in python
Buildout: creating and deploying repeatable applications in pythonBuildout: creating and deploying repeatable applications in python
Buildout: creating and deploying repeatable applications in pythonCodeSyntax
 

Semelhante a Using Eclipse to Build a Linux Distribution (20)

Python dev tool introduction
Python dev tool introductionPython dev tool introduction
Python dev tool introduction
 
Developing Android Platform Tools
Developing Android Platform ToolsDeveloping Android Platform Tools
Developing Android Platform Tools
 
Repositories as Code
Repositories as CodeRepositories as Code
Repositories as Code
 
What's new with tooling for Spring, Grails, and the Cloud
What's new with tooling for Spring, Grails, and the CloudWhat's new with tooling for Spring, Grails, and the Cloud
What's new with tooling for Spring, Grails, and the Cloud
 
Wrangling 3rd Party Installers from Puppet
Wrangling 3rd Party Installers from PuppetWrangling 3rd Party Installers from Puppet
Wrangling 3rd Party Installers from Puppet
 
FusionInventory at LSM/RMLL 2012
FusionInventory at LSM/RMLL 2012FusionInventory at LSM/RMLL 2012
FusionInventory at LSM/RMLL 2012
 
RPM Factory for RDO
RPM Factory for RDORPM Factory for RDO
RPM Factory for RDO
 
Deploying and maintaining your software with RPM/APT
Deploying and maintaining your software with RPM/APTDeploying and maintaining your software with RPM/APT
Deploying and maintaining your software with RPM/APT
 
.NET on Linux: Entity Framework Core 1.0
.NET on Linux: Entity Framework Core 1.0.NET on Linux: Entity Framework Core 1.0
.NET on Linux: Entity Framework Core 1.0
 
The current state of OpenIndiana Hipster project
The current state of OpenIndiana Hipster projectThe current state of OpenIndiana Hipster project
The current state of OpenIndiana Hipster project
 
LAS16-200: Firmware summit - Tianocore Progress and Status
LAS16-200:  Firmware summit - Tianocore Progress and StatusLAS16-200:  Firmware summit - Tianocore Progress and Status
LAS16-200: Firmware summit - Tianocore Progress and Status
 
Does Cowgirl Dream of Red Swirl?
Does Cowgirl Dream of Red Swirl?Does Cowgirl Dream of Red Swirl?
Does Cowgirl Dream of Red Swirl?
 
Multiconf - Python Configuration API
Multiconf - Python Configuration APIMulticonf - Python Configuration API
Multiconf - Python Configuration API
 
BKK16-310 The HiKey AOSP collaborative experience
BKK16-310 The HiKey AOSP collaborative experience BKK16-310 The HiKey AOSP collaborative experience
BKK16-310 The HiKey AOSP collaborative experience
 
Hyperscale SIG Introduction
Hyperscale SIG IntroductionHyperscale SIG Introduction
Hyperscale SIG Introduction
 
Free Sorftware Research at Irill (highlights)
Free Sorftware Research at Irill (highlights)Free Sorftware Research at Irill (highlights)
Free Sorftware Research at Irill (highlights)
 
How to became a Gentoo developer
How to became a Gentoo developerHow to became a Gentoo developer
How to became a Gentoo developer
 
Automated Configuration of Firmware
Automated Configuration of FirmwareAutomated Configuration of Firmware
Automated Configuration of Firmware
 
Diagnostics of a Linux System
Diagnostics of a Linux SystemDiagnostics of a Linux System
Diagnostics of a Linux System
 
Buildout: creating and deploying repeatable applications in python
Buildout: creating and deploying repeatable applications in pythonBuildout: creating and deploying repeatable applications in python
Buildout: creating and deploying repeatable applications in python
 

Último

Developer Data Modeling Mistakes: From Postgres to NoSQL
Developer Data Modeling Mistakes: From Postgres to NoSQLDeveloper Data Modeling Mistakes: From Postgres to NoSQL
Developer Data Modeling Mistakes: From Postgres to NoSQLScyllaDB
 
Gen AI in Business - Global Trends Report 2024.pdf
Gen AI in Business - Global Trends Report 2024.pdfGen AI in Business - Global Trends Report 2024.pdf
Gen AI in Business - Global Trends Report 2024.pdfAddepto
 
H2O.ai CEO/Founder: Sri Ambati Keynote at Wells Fargo Day
H2O.ai CEO/Founder: Sri Ambati Keynote at Wells Fargo DayH2O.ai CEO/Founder: Sri Ambati Keynote at Wells Fargo Day
H2O.ai CEO/Founder: Sri Ambati Keynote at Wells Fargo DaySri Ambati
 
Commit 2024 - Secret Management made easy
Commit 2024 - Secret Management made easyCommit 2024 - Secret Management made easy
Commit 2024 - Secret Management made easyAlfredo García Lavilla
 
Human Factors of XR: Using Human Factors to Design XR Systems
Human Factors of XR: Using Human Factors to Design XR SystemsHuman Factors of XR: Using Human Factors to Design XR Systems
Human Factors of XR: Using Human Factors to Design XR SystemsMark Billinghurst
 
SAP Build Work Zone - Overview L2-L3.pptx
SAP Build Work Zone - Overview L2-L3.pptxSAP Build Work Zone - Overview L2-L3.pptx
SAP Build Work Zone - Overview L2-L3.pptxNavinnSomaal
 
Powerpoint exploring the locations used in television show Time Clash
Powerpoint exploring the locations used in television show Time ClashPowerpoint exploring the locations used in television show Time Clash
Powerpoint exploring the locations used in television show Time Clashcharlottematthew16
 
Transcript: New from BookNet Canada for 2024: BNC CataList - Tech Forum 2024
Transcript: New from BookNet Canada for 2024: BNC CataList - Tech Forum 2024Transcript: New from BookNet Canada for 2024: BNC CataList - Tech Forum 2024
Transcript: New from BookNet Canada for 2024: BNC CataList - Tech Forum 2024BookNet Canada
 
DSPy a system for AI to Write Prompts and Do Fine Tuning
DSPy a system for AI to Write Prompts and Do Fine TuningDSPy a system for AI to Write Prompts and Do Fine Tuning
DSPy a system for AI to Write Prompts and Do Fine TuningLars Bell
 
Anypoint Exchange: It’s Not Just a Repo!
Anypoint Exchange: It’s Not Just a Repo!Anypoint Exchange: It’s Not Just a Repo!
Anypoint Exchange: It’s Not Just a Repo!Manik S Magar
 
Ensuring Technical Readiness For Copilot in Microsoft 365
Ensuring Technical Readiness For Copilot in Microsoft 365Ensuring Technical Readiness For Copilot in Microsoft 365
Ensuring Technical Readiness For Copilot in Microsoft 3652toLead Limited
 
What's New in Teams Calling, Meetings and Devices March 2024
What's New in Teams Calling, Meetings and Devices March 2024What's New in Teams Calling, Meetings and Devices March 2024
What's New in Teams Calling, Meetings and Devices March 2024Stephanie Beckett
 
Leverage Zilliz Serverless - Up to 50X Saving for Your Vector Storage Cost
Leverage Zilliz Serverless - Up to 50X Saving for Your Vector Storage CostLeverage Zilliz Serverless - Up to 50X Saving for Your Vector Storage Cost
Leverage Zilliz Serverless - Up to 50X Saving for Your Vector Storage CostZilliz
 
Hyperautomation and AI/ML: A Strategy for Digital Transformation Success.pdf
Hyperautomation and AI/ML: A Strategy for Digital Transformation Success.pdfHyperautomation and AI/ML: A Strategy for Digital Transformation Success.pdf
Hyperautomation and AI/ML: A Strategy for Digital Transformation Success.pdfPrecisely
 
SIP trunking in Janus @ Kamailio World 2024
SIP trunking in Janus @ Kamailio World 2024SIP trunking in Janus @ Kamailio World 2024
SIP trunking in Janus @ Kamailio World 2024Lorenzo Miniero
 
Streamlining Python Development: A Guide to a Modern Project Setup
Streamlining Python Development: A Guide to a Modern Project SetupStreamlining Python Development: A Guide to a Modern Project Setup
Streamlining Python Development: A Guide to a Modern Project SetupFlorian Wilhelm
 
Story boards and shot lists for my a level piece
Story boards and shot lists for my a level pieceStory boards and shot lists for my a level piece
Story boards and shot lists for my a level piececharlottematthew16
 
Nell’iperspazio con Rocket: il Framework Web di Rust!
Nell’iperspazio con Rocket: il Framework Web di Rust!Nell’iperspazio con Rocket: il Framework Web di Rust!
Nell’iperspazio con Rocket: il Framework Web di Rust!Commit University
 
How AI, OpenAI, and ChatGPT impact business and software.
How AI, OpenAI, and ChatGPT impact business and software.How AI, OpenAI, and ChatGPT impact business and software.
How AI, OpenAI, and ChatGPT impact business and software.Curtis Poe
 

Último (20)

Developer Data Modeling Mistakes: From Postgres to NoSQL
Developer Data Modeling Mistakes: From Postgres to NoSQLDeveloper Data Modeling Mistakes: From Postgres to NoSQL
Developer Data Modeling Mistakes: From Postgres to NoSQL
 
Gen AI in Business - Global Trends Report 2024.pdf
Gen AI in Business - Global Trends Report 2024.pdfGen AI in Business - Global Trends Report 2024.pdf
Gen AI in Business - Global Trends Report 2024.pdf
 
H2O.ai CEO/Founder: Sri Ambati Keynote at Wells Fargo Day
H2O.ai CEO/Founder: Sri Ambati Keynote at Wells Fargo DayH2O.ai CEO/Founder: Sri Ambati Keynote at Wells Fargo Day
H2O.ai CEO/Founder: Sri Ambati Keynote at Wells Fargo Day
 
DMCC Future of Trade Web3 - Special Edition
DMCC Future of Trade Web3 - Special EditionDMCC Future of Trade Web3 - Special Edition
DMCC Future of Trade Web3 - Special Edition
 
Commit 2024 - Secret Management made easy
Commit 2024 - Secret Management made easyCommit 2024 - Secret Management made easy
Commit 2024 - Secret Management made easy
 
Human Factors of XR: Using Human Factors to Design XR Systems
Human Factors of XR: Using Human Factors to Design XR SystemsHuman Factors of XR: Using Human Factors to Design XR Systems
Human Factors of XR: Using Human Factors to Design XR Systems
 
SAP Build Work Zone - Overview L2-L3.pptx
SAP Build Work Zone - Overview L2-L3.pptxSAP Build Work Zone - Overview L2-L3.pptx
SAP Build Work Zone - Overview L2-L3.pptx
 
Powerpoint exploring the locations used in television show Time Clash
Powerpoint exploring the locations used in television show Time ClashPowerpoint exploring the locations used in television show Time Clash
Powerpoint exploring the locations used in television show Time Clash
 
Transcript: New from BookNet Canada for 2024: BNC CataList - Tech Forum 2024
Transcript: New from BookNet Canada for 2024: BNC CataList - Tech Forum 2024Transcript: New from BookNet Canada for 2024: BNC CataList - Tech Forum 2024
Transcript: New from BookNet Canada for 2024: BNC CataList - Tech Forum 2024
 
DSPy a system for AI to Write Prompts and Do Fine Tuning
DSPy a system for AI to Write Prompts and Do Fine TuningDSPy a system for AI to Write Prompts and Do Fine Tuning
DSPy a system for AI to Write Prompts and Do Fine Tuning
 
Anypoint Exchange: It’s Not Just a Repo!
Anypoint Exchange: It’s Not Just a Repo!Anypoint Exchange: It’s Not Just a Repo!
Anypoint Exchange: It’s Not Just a Repo!
 
Ensuring Technical Readiness For Copilot in Microsoft 365
Ensuring Technical Readiness For Copilot in Microsoft 365Ensuring Technical Readiness For Copilot in Microsoft 365
Ensuring Technical Readiness For Copilot in Microsoft 365
 
What's New in Teams Calling, Meetings and Devices March 2024
What's New in Teams Calling, Meetings and Devices March 2024What's New in Teams Calling, Meetings and Devices March 2024
What's New in Teams Calling, Meetings and Devices March 2024
 
Leverage Zilliz Serverless - Up to 50X Saving for Your Vector Storage Cost
Leverage Zilliz Serverless - Up to 50X Saving for Your Vector Storage CostLeverage Zilliz Serverless - Up to 50X Saving for Your Vector Storage Cost
Leverage Zilliz Serverless - Up to 50X Saving for Your Vector Storage Cost
 
Hyperautomation and AI/ML: A Strategy for Digital Transformation Success.pdf
Hyperautomation and AI/ML: A Strategy for Digital Transformation Success.pdfHyperautomation and AI/ML: A Strategy for Digital Transformation Success.pdf
Hyperautomation and AI/ML: A Strategy for Digital Transformation Success.pdf
 
SIP trunking in Janus @ Kamailio World 2024
SIP trunking in Janus @ Kamailio World 2024SIP trunking in Janus @ Kamailio World 2024
SIP trunking in Janus @ Kamailio World 2024
 
Streamlining Python Development: A Guide to a Modern Project Setup
Streamlining Python Development: A Guide to a Modern Project SetupStreamlining Python Development: A Guide to a Modern Project Setup
Streamlining Python Development: A Guide to a Modern Project Setup
 
Story boards and shot lists for my a level piece
Story boards and shot lists for my a level pieceStory boards and shot lists for my a level piece
Story boards and shot lists for my a level piece
 
Nell’iperspazio con Rocket: il Framework Web di Rust!
Nell’iperspazio con Rocket: il Framework Web di Rust!Nell’iperspazio con Rocket: il Framework Web di Rust!
Nell’iperspazio con Rocket: il Framework Web di Rust!
 
How AI, OpenAI, and ChatGPT impact business and software.
How AI, OpenAI, and ChatGPT impact business and software.How AI, OpenAI, and ChatGPT impact business and software.
How AI, OpenAI, and ChatGPT impact business and software.
 

Using Eclipse to Build a Linux Distribution

  • 1. Using Eclipse to Build a Linux Distribution Andrew Overholt, Severin Gehwolf EclipseCon, March 23, 2011 1 Andrew Overholt, Severin Gehwolf
  • 2. What This Talk is About... ● Looking behind the scenes: Fedora ● An Eclipse-based solution for the Fedora packaging problem 2 Andrew Overholt, Severin Gehwolf
  • 3. Linux Distributions. There Are Many of Them... 3 Andrew Overholt, Severin Gehwolf
  • 4. We Will Focus on Fedora 4 Andrew Overholt, Severin Gehwolf
  • 5. Who Are The People Behind Fedora? ● Software engineers ● Packagers ● Designers ● Volunteers ● Students ● You? 5 Andrew Overholt, Severin Gehwolf
  • 6. OK, So What Exactly Is Fedora? ● An operating system, a collection of applications. Many applications. ● One application, for example Eclipse, may be provided by a collection of packages (RPMs) ● Example: Eclipse eclipse-rpm-editor-0.6.0-1.fc14.x86_64.rpm - Platform - RCP - JDT - SWT ... 6 Andrew Overholt, Severin Gehwolf
  • 7. How Are Packages Created? ● Ingredients: ● Upstream sources ● Spec file (package name, files part of a package, description, instructions how to build from sources, etc.) ● Patches for upstream sources ● All items above are kept in a Git repository ● Build system ● Update system 7 Andrew Overholt, Severin Gehwolf
  • 8. Overview of Fedora Infrastructure Updates system - bug fixes - security fixes F15 F16 F13 Sources repository Git repositories: - Spec file - Patches Build system: - build RPMs on trusted machine from known sources 8 Andrew Overholt, Severin Gehwolf
  • 9. What Our Tool Tries to Solve? ● Remember, we have seen... ● By whom Fedora is created (Fedora community) ● What Fedora is ● How Fedora is created, but ... ● Many contributors are also developers of upstream projects ● Some use Eclipse for their work already ● No existing GUI tool for Fedora packaging and interaction with infrastructure ● Packaging work with existing tools is cumbersome, hard for newcomers to pick up. 9 Andrew Overholt, Severin Gehwolf
  • 10. The Solution: Fedora Meets Eclipse + 10 Andrew Overholt, Severin Gehwolf
  • 11. Eclipse Fedora Packager ● Spec File Editor ● Git integration (using EGit, JGit) ● Easy interaction with Fedora packaging infrastructure ● Increase productivity by speeding up Fedora packaging work 11 Andrew Overholt, Severin Gehwolf
  • 12. Eclipse Fedora Packager Architecture Eclipse Fedora Packager JGit EGit CVS ChangeLog RPM Editor Eclipse Platform, RCP, Equinox 12 Andrew Overholt, Severin Gehwolf
  • 13. Typical Workflow: Import a Package 13 Andrew Overholt, Severin Gehwolf
  • 14. Spec File Editor 14 Andrew Overholt, Severin Gehwolf
  • 15. Local Builds 15 Andrew Overholt, Severin Gehwolf
  • 16. Build System 16 Andrew Overholt, Severin Gehwolf
  • 17. Updates System 17 Andrew Overholt, Severin Gehwolf
  • 18. Future Work ● Bugzilla integration (Mylyn) ● RCP app ● Eclipse Fedora Packager perspective ● A lot more cool new features :) 18 Andrew Overholt, Severin Gehwolf
  • 19. Getting Involved... Web/Trac: https://fedorahosted.org/eclipse-fedorapackager/ p2 Update Site: http://fedorapeople.org/~jerboaa/eclipse-fedorapackager-p2-composite-repo/ Mailing list: https://admin.fedoraproject.org/mailman/listinfo/eclipse-packager-devel Git: git://git.fedorahosted.org/git/eclipse- fedorapackager.git 19 Andrew Overholt, Severin Gehwolf
  • 20. Thank You! Questions? 20 Andrew Overholt, Severin Gehwolf