SlideShare une entreprise Scribd logo
1  sur  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

Contenu connexe

Tendances

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
 

Tendances (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
 

Similaire à 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
 

Similaire à 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
 

Dernier

Take control of your SAP testing with UiPath Test Suite
Take control of your SAP testing with UiPath Test SuiteTake control of your SAP testing with UiPath Test Suite
Take control of your SAP testing with UiPath Test SuiteDianaGray10
 
Scale your database traffic with Read & Write split using MySQL Router
Scale your database traffic with Read & Write split using MySQL RouterScale your database traffic with Read & Write split using MySQL Router
Scale your database traffic with Read & Write split using MySQL RouterMydbops
 
How to Effectively Monitor SD-WAN and SASE Environments with ThousandEyes
How to Effectively Monitor SD-WAN and SASE Environments with ThousandEyesHow to Effectively Monitor SD-WAN and SASE Environments with ThousandEyes
How to Effectively Monitor SD-WAN and SASE Environments with ThousandEyesThousandEyes
 
The State of Passkeys with FIDO Alliance.pptx
The State of Passkeys with FIDO Alliance.pptxThe State of Passkeys with FIDO Alliance.pptx
The State of Passkeys with FIDO Alliance.pptxLoriGlavin3
 
What is DBT - The Ultimate Data Build Tool.pdf
What is DBT - The Ultimate Data Build Tool.pdfWhat is DBT - The Ultimate Data Build Tool.pdf
What is DBT - The Ultimate Data Build Tool.pdfMounikaPolabathina
 
2024 April Patch Tuesday
2024 April Patch Tuesday2024 April Patch Tuesday
2024 April Patch TuesdayIvanti
 
Time Series Foundation Models - current state and future directions
Time Series Foundation Models - current state and future directionsTime Series Foundation Models - current state and future directions
Time Series Foundation Models - current state and future directionsNathaniel Shimoni
 
The Future Roadmap for the Composable Data Stack - Wes McKinney - Data Counci...
The Future Roadmap for the Composable Data Stack - Wes McKinney - Data Counci...The Future Roadmap for the Composable Data Stack - Wes McKinney - Data Counci...
The Future Roadmap for the Composable Data Stack - Wes McKinney - Data Counci...Wes McKinney
 
UiPath Community: Communication Mining from Zero to Hero
UiPath Community: Communication Mining from Zero to HeroUiPath Community: Communication Mining from Zero to Hero
UiPath Community: Communication Mining from Zero to HeroUiPathCommunity
 
DevEX - reference for building teams, processes, and platforms
DevEX - reference for building teams, processes, and platformsDevEX - reference for building teams, processes, and platforms
DevEX - reference for building teams, processes, and platformsSergiu Bodiu
 
Enhancing User Experience - Exploring the Latest Features of Tallyman Axis Lo...
Enhancing User Experience - Exploring the Latest Features of Tallyman Axis Lo...Enhancing User Experience - Exploring the Latest Features of Tallyman Axis Lo...
Enhancing User Experience - Exploring the Latest Features of Tallyman Axis Lo...Scott Andery
 
Data governance with Unity Catalog Presentation
Data governance with Unity Catalog PresentationData governance with Unity Catalog Presentation
Data governance with Unity Catalog PresentationKnoldus Inc.
 
Generative AI for Technical Writer or Information Developers
Generative AI for Technical Writer or Information DevelopersGenerative AI for Technical Writer or Information Developers
Generative AI for Technical Writer or Information DevelopersRaghuram Pandurangan
 
Use of FIDO in the Payments and Identity Landscape: FIDO Paris Seminar.pptx
Use of FIDO in the Payments and Identity Landscape: FIDO Paris Seminar.pptxUse of FIDO in the Payments and Identity Landscape: FIDO Paris Seminar.pptx
Use of FIDO in the Payments and Identity Landscape: FIDO Paris Seminar.pptxLoriGlavin3
 
TrustArc Webinar - How to Build Consumer Trust Through Data Privacy
TrustArc Webinar - How to Build Consumer Trust Through Data PrivacyTrustArc Webinar - How to Build Consumer Trust Through Data Privacy
TrustArc Webinar - How to Build Consumer Trust Through Data PrivacyTrustArc
 
Generative Artificial Intelligence: How generative AI works.pdf
Generative Artificial Intelligence: How generative AI works.pdfGenerative Artificial Intelligence: How generative AI works.pdf
Generative Artificial Intelligence: How generative AI works.pdfIngrid Airi González
 
Emixa Mendix Meetup 11 April 2024 about Mendix Native development
Emixa Mendix Meetup 11 April 2024 about Mendix Native developmentEmixa Mendix Meetup 11 April 2024 about Mendix Native development
Emixa Mendix Meetup 11 April 2024 about Mendix Native developmentPim van der Noll
 
A Framework for Development in the AI Age
A Framework for Development in the AI AgeA Framework for Development in the AI Age
A Framework for Development in the AI AgeCprime
 
Merck Moving Beyond Passwords: FIDO Paris Seminar.pptx
Merck Moving Beyond Passwords: FIDO Paris Seminar.pptxMerck Moving Beyond Passwords: FIDO Paris Seminar.pptx
Merck Moving Beyond Passwords: FIDO Paris Seminar.pptxLoriGlavin3
 
Connecting the Dots for Information Discovery.pdf
Connecting the Dots for Information Discovery.pdfConnecting the Dots for Information Discovery.pdf
Connecting the Dots for Information Discovery.pdfNeo4j
 

Dernier (20)

Take control of your SAP testing with UiPath Test Suite
Take control of your SAP testing with UiPath Test SuiteTake control of your SAP testing with UiPath Test Suite
Take control of your SAP testing with UiPath Test Suite
 
Scale your database traffic with Read & Write split using MySQL Router
Scale your database traffic with Read & Write split using MySQL RouterScale your database traffic with Read & Write split using MySQL Router
Scale your database traffic with Read & Write split using MySQL Router
 
How to Effectively Monitor SD-WAN and SASE Environments with ThousandEyes
How to Effectively Monitor SD-WAN and SASE Environments with ThousandEyesHow to Effectively Monitor SD-WAN and SASE Environments with ThousandEyes
How to Effectively Monitor SD-WAN and SASE Environments with ThousandEyes
 
The State of Passkeys with FIDO Alliance.pptx
The State of Passkeys with FIDO Alliance.pptxThe State of Passkeys with FIDO Alliance.pptx
The State of Passkeys with FIDO Alliance.pptx
 
What is DBT - The Ultimate Data Build Tool.pdf
What is DBT - The Ultimate Data Build Tool.pdfWhat is DBT - The Ultimate Data Build Tool.pdf
What is DBT - The Ultimate Data Build Tool.pdf
 
2024 April Patch Tuesday
2024 April Patch Tuesday2024 April Patch Tuesday
2024 April Patch Tuesday
 
Time Series Foundation Models - current state and future directions
Time Series Foundation Models - current state and future directionsTime Series Foundation Models - current state and future directions
Time Series Foundation Models - current state and future directions
 
The Future Roadmap for the Composable Data Stack - Wes McKinney - Data Counci...
The Future Roadmap for the Composable Data Stack - Wes McKinney - Data Counci...The Future Roadmap for the Composable Data Stack - Wes McKinney - Data Counci...
The Future Roadmap for the Composable Data Stack - Wes McKinney - Data Counci...
 
UiPath Community: Communication Mining from Zero to Hero
UiPath Community: Communication Mining from Zero to HeroUiPath Community: Communication Mining from Zero to Hero
UiPath Community: Communication Mining from Zero to Hero
 
DevEX - reference for building teams, processes, and platforms
DevEX - reference for building teams, processes, and platformsDevEX - reference for building teams, processes, and platforms
DevEX - reference for building teams, processes, and platforms
 
Enhancing User Experience - Exploring the Latest Features of Tallyman Axis Lo...
Enhancing User Experience - Exploring the Latest Features of Tallyman Axis Lo...Enhancing User Experience - Exploring the Latest Features of Tallyman Axis Lo...
Enhancing User Experience - Exploring the Latest Features of Tallyman Axis Lo...
 
Data governance with Unity Catalog Presentation
Data governance with Unity Catalog PresentationData governance with Unity Catalog Presentation
Data governance with Unity Catalog Presentation
 
Generative AI for Technical Writer or Information Developers
Generative AI for Technical Writer or Information DevelopersGenerative AI for Technical Writer or Information Developers
Generative AI for Technical Writer or Information Developers
 
Use of FIDO in the Payments and Identity Landscape: FIDO Paris Seminar.pptx
Use of FIDO in the Payments and Identity Landscape: FIDO Paris Seminar.pptxUse of FIDO in the Payments and Identity Landscape: FIDO Paris Seminar.pptx
Use of FIDO in the Payments and Identity Landscape: FIDO Paris Seminar.pptx
 
TrustArc Webinar - How to Build Consumer Trust Through Data Privacy
TrustArc Webinar - How to Build Consumer Trust Through Data PrivacyTrustArc Webinar - How to Build Consumer Trust Through Data Privacy
TrustArc Webinar - How to Build Consumer Trust Through Data Privacy
 
Generative Artificial Intelligence: How generative AI works.pdf
Generative Artificial Intelligence: How generative AI works.pdfGenerative Artificial Intelligence: How generative AI works.pdf
Generative Artificial Intelligence: How generative AI works.pdf
 
Emixa Mendix Meetup 11 April 2024 about Mendix Native development
Emixa Mendix Meetup 11 April 2024 about Mendix Native developmentEmixa Mendix Meetup 11 April 2024 about Mendix Native development
Emixa Mendix Meetup 11 April 2024 about Mendix Native development
 
A Framework for Development in the AI Age
A Framework for Development in the AI AgeA Framework for Development in the AI Age
A Framework for Development in the AI Age
 
Merck Moving Beyond Passwords: FIDO Paris Seminar.pptx
Merck Moving Beyond Passwords: FIDO Paris Seminar.pptxMerck Moving Beyond Passwords: FIDO Paris Seminar.pptx
Merck Moving Beyond Passwords: FIDO Paris Seminar.pptx
 
Connecting the Dots for Information Discovery.pdf
Connecting the Dots for Information Discovery.pdfConnecting the Dots for Information Discovery.pdf
Connecting the Dots for Information Discovery.pdf
 

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