SlideShare ist ein Scribd-Unternehmen logo
1 von 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

Weitere ähnliche Inhalte

Was ist angesagt?

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
 

Was ist angesagt? (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
 

Ähnlich wie 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
 

Ähnlich wie 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
 

Kürzlich hochgeladen

Breaking the Kubernetes Kill Chain: Host Path Mount
Breaking the Kubernetes Kill Chain: Host Path MountBreaking the Kubernetes Kill Chain: Host Path Mount
Breaking the Kubernetes Kill Chain: Host Path MountPuma Security, LLC
 
Maximizing Board Effectiveness 2024 Webinar.pptx
Maximizing Board Effectiveness 2024 Webinar.pptxMaximizing Board Effectiveness 2024 Webinar.pptx
Maximizing Board Effectiveness 2024 Webinar.pptxOnBoard
 
Transforming Data Streams with Kafka Connect: An Introduction to Single Messa...
Transforming Data Streams with Kafka Connect: An Introduction to Single Messa...Transforming Data Streams with Kafka Connect: An Introduction to Single Messa...
Transforming Data Streams with Kafka Connect: An Introduction to Single Messa...HostedbyConfluent
 
Neo4j - How KGs are shaping the future of Generative AI at AWS Summit London ...
Neo4j - How KGs are shaping the future of Generative AI at AWS Summit London ...Neo4j - How KGs are shaping the future of Generative AI at AWS Summit London ...
Neo4j - How KGs are shaping the future of Generative AI at AWS Summit London ...Neo4j
 
Handwritten Text Recognition for manuscripts and early printed texts
Handwritten Text Recognition for manuscripts and early printed textsHandwritten Text Recognition for manuscripts and early printed texts
Handwritten Text Recognition for manuscripts and early printed textsMaria Levchenko
 
Kotlin Multiplatform & Compose Multiplatform - Starter kit for pragmatics
Kotlin Multiplatform & Compose Multiplatform - Starter kit for pragmaticsKotlin Multiplatform & Compose Multiplatform - Starter kit for pragmatics
Kotlin Multiplatform & Compose Multiplatform - Starter kit for pragmaticscarlostorres15106
 
Key Features Of Token Development (1).pptx
Key  Features Of Token  Development (1).pptxKey  Features Of Token  Development (1).pptx
Key Features Of Token Development (1).pptxLBM Solutions
 
08448380779 Call Girls In Diplomatic Enclave Women Seeking Men
08448380779 Call Girls In Diplomatic Enclave Women Seeking Men08448380779 Call Girls In Diplomatic Enclave Women Seeking Men
08448380779 Call Girls In Diplomatic Enclave Women Seeking MenDelhi Call girls
 
Install Stable Diffusion in windows machine
Install Stable Diffusion in windows machineInstall Stable Diffusion in windows machine
Install Stable Diffusion in windows machinePadma Pradeep
 
Enhancing Worker Digital Experience: A Hands-on Workshop for Partners
Enhancing Worker Digital Experience: A Hands-on Workshop for PartnersEnhancing Worker Digital Experience: A Hands-on Workshop for Partners
Enhancing Worker Digital Experience: A Hands-on Workshop for PartnersThousandEyes
 
08448380779 Call Girls In Civil Lines Women Seeking Men
08448380779 Call Girls In Civil Lines Women Seeking Men08448380779 Call Girls In Civil Lines Women Seeking Men
08448380779 Call Girls In Civil Lines Women Seeking MenDelhi Call girls
 
How to Remove Document Management Hurdles with X-Docs?
How to Remove Document Management Hurdles with X-Docs?How to Remove Document Management Hurdles with X-Docs?
How to Remove Document Management Hurdles with X-Docs?XfilesPro
 
WhatsApp 9892124323 ✓Call Girls In Kalyan ( Mumbai ) secure service
WhatsApp 9892124323 ✓Call Girls In Kalyan ( Mumbai ) secure serviceWhatsApp 9892124323 ✓Call Girls In Kalyan ( Mumbai ) secure service
WhatsApp 9892124323 ✓Call Girls In Kalyan ( Mumbai ) secure servicePooja Nehwal
 
Scaling API-first – The story of a global engineering organization
Scaling API-first – The story of a global engineering organizationScaling API-first – The story of a global engineering organization
Scaling API-first – The story of a global engineering organizationRadu Cotescu
 
08448380779 Call Girls In Greater Kailash - I Women Seeking Men
08448380779 Call Girls In Greater Kailash - I Women Seeking Men08448380779 Call Girls In Greater Kailash - I Women Seeking Men
08448380779 Call Girls In Greater Kailash - I Women Seeking MenDelhi Call girls
 
Benefits Of Flutter Compared To Other Frameworks
Benefits Of Flutter Compared To Other FrameworksBenefits Of Flutter Compared To Other Frameworks
Benefits Of Flutter Compared To Other FrameworksSoftradix Technologies
 
From Event to Action: Accelerate Your Decision Making with Real-Time Automation
From Event to Action: Accelerate Your Decision Making with Real-Time AutomationFrom Event to Action: Accelerate Your Decision Making with Real-Time Automation
From Event to Action: Accelerate Your Decision Making with Real-Time AutomationSafe Software
 
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
 
FULL ENJOY 🔝 8264348440 🔝 Call Girls in Diplomatic Enclave | Delhi
FULL ENJOY 🔝 8264348440 🔝 Call Girls in Diplomatic Enclave | DelhiFULL ENJOY 🔝 8264348440 🔝 Call Girls in Diplomatic Enclave | Delhi
FULL ENJOY 🔝 8264348440 🔝 Call Girls in Diplomatic Enclave | Delhisoniya singh
 
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 WorkerThousandEyes
 

Kürzlich hochgeladen (20)

Breaking the Kubernetes Kill Chain: Host Path Mount
Breaking the Kubernetes Kill Chain: Host Path MountBreaking the Kubernetes Kill Chain: Host Path Mount
Breaking the Kubernetes Kill Chain: Host Path Mount
 
Maximizing Board Effectiveness 2024 Webinar.pptx
Maximizing Board Effectiveness 2024 Webinar.pptxMaximizing Board Effectiveness 2024 Webinar.pptx
Maximizing Board Effectiveness 2024 Webinar.pptx
 
Transforming Data Streams with Kafka Connect: An Introduction to Single Messa...
Transforming Data Streams with Kafka Connect: An Introduction to Single Messa...Transforming Data Streams with Kafka Connect: An Introduction to Single Messa...
Transforming Data Streams with Kafka Connect: An Introduction to Single Messa...
 
Neo4j - How KGs are shaping the future of Generative AI at AWS Summit London ...
Neo4j - How KGs are shaping the future of Generative AI at AWS Summit London ...Neo4j - How KGs are shaping the future of Generative AI at AWS Summit London ...
Neo4j - How KGs are shaping the future of Generative AI at AWS Summit London ...
 
Handwritten Text Recognition for manuscripts and early printed texts
Handwritten Text Recognition for manuscripts and early printed textsHandwritten Text Recognition for manuscripts and early printed texts
Handwritten Text Recognition for manuscripts and early printed texts
 
Kotlin Multiplatform & Compose Multiplatform - Starter kit for pragmatics
Kotlin Multiplatform & Compose Multiplatform - Starter kit for pragmaticsKotlin Multiplatform & Compose Multiplatform - Starter kit for pragmatics
Kotlin Multiplatform & Compose Multiplatform - Starter kit for pragmatics
 
Key Features Of Token Development (1).pptx
Key  Features Of Token  Development (1).pptxKey  Features Of Token  Development (1).pptx
Key Features Of Token Development (1).pptx
 
08448380779 Call Girls In Diplomatic Enclave Women Seeking Men
08448380779 Call Girls In Diplomatic Enclave Women Seeking Men08448380779 Call Girls In Diplomatic Enclave Women Seeking Men
08448380779 Call Girls In Diplomatic Enclave Women Seeking Men
 
Install Stable Diffusion in windows machine
Install Stable Diffusion in windows machineInstall Stable Diffusion in windows machine
Install Stable Diffusion in windows machine
 
Enhancing Worker Digital Experience: A Hands-on Workshop for Partners
Enhancing Worker Digital Experience: A Hands-on Workshop for PartnersEnhancing Worker Digital Experience: A Hands-on Workshop for Partners
Enhancing Worker Digital Experience: A Hands-on Workshop for Partners
 
08448380779 Call Girls In Civil Lines Women Seeking Men
08448380779 Call Girls In Civil Lines Women Seeking Men08448380779 Call Girls In Civil Lines Women Seeking Men
08448380779 Call Girls In Civil Lines Women Seeking Men
 
How to Remove Document Management Hurdles with X-Docs?
How to Remove Document Management Hurdles with X-Docs?How to Remove Document Management Hurdles with X-Docs?
How to Remove Document Management Hurdles with X-Docs?
 
WhatsApp 9892124323 ✓Call Girls In Kalyan ( Mumbai ) secure service
WhatsApp 9892124323 ✓Call Girls In Kalyan ( Mumbai ) secure serviceWhatsApp 9892124323 ✓Call Girls In Kalyan ( Mumbai ) secure service
WhatsApp 9892124323 ✓Call Girls In Kalyan ( Mumbai ) secure service
 
Scaling API-first – The story of a global engineering organization
Scaling API-first – The story of a global engineering organizationScaling API-first – The story of a global engineering organization
Scaling API-first – The story of a global engineering organization
 
08448380779 Call Girls In Greater Kailash - I Women Seeking Men
08448380779 Call Girls In Greater Kailash - I Women Seeking Men08448380779 Call Girls In Greater Kailash - I Women Seeking Men
08448380779 Call Girls In Greater Kailash - I Women Seeking Men
 
Benefits Of Flutter Compared To Other Frameworks
Benefits Of Flutter Compared To Other FrameworksBenefits Of Flutter Compared To Other Frameworks
Benefits Of Flutter Compared To Other Frameworks
 
From Event to Action: Accelerate Your Decision Making with Real-Time Automation
From Event to Action: Accelerate Your Decision Making with Real-Time AutomationFrom Event to Action: Accelerate Your Decision Making with Real-Time Automation
From Event to Action: Accelerate Your Decision Making with Real-Time Automation
 
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
 
FULL ENJOY 🔝 8264348440 🔝 Call Girls in Diplomatic Enclave | Delhi
FULL ENJOY 🔝 8264348440 🔝 Call Girls in Diplomatic Enclave | DelhiFULL ENJOY 🔝 8264348440 🔝 Call Girls in Diplomatic Enclave | Delhi
FULL ENJOY 🔝 8264348440 🔝 Call Girls in Diplomatic Enclave | Delhi
 
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
 

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