Build Your Own Linux Distribution
Total Page:16
File Type:pdf, Size:1020Kb
Build Your Own Linux Distribution . during lunch break Michal Hruˇseck´y openSUSE Community Multiplier Team [email protected] Creating a distribution Distributions characteristics What we need to create our own distribution: Installation wizard Configuration utilities Branding Default configuration Package management Packages and their settings ... 3/20 c Novell Inc. All Right Reserved How to create distribution We want it fast and we don't want to work hard Let's use the others !!! And let's start with LiveCD 4/20 c Novell Inc. All Right Reserved Work to do What can we skip: Installation wizard Configuration utilities Package management Not necessary for LiveCD. What we need: Branding Default configuration Packages and their settings 5/20 c Novell Inc. All Right Reserved Closer look Branding: Just a different default theme We need to adjust/add packages Default configuration: We need to adjust packages Packages and their settings. =) Everything is about packages 6/20 c Novell Inc. All Right Reserved Conclusion We need quite a lot packages but we don't want to work on them by ourself. =) Let's fork Here it comes, let's use work done by somebody else So we need to get a lot of packages, maintain them easily and to be able to collaborate with other packagers =) openSUSE Build Service And we need something to create our LiveCD from our packages =) SUSE Studio 7/20 c Novell Inc. All Right Reserved openSUSE Build Service Build Service To build and publish packages... free and open platform for building packages for various distributions like openSUSE, Fedora, Ubuntu,... RPM and DEB packages are supported crossbuild for various hardware platforms (PPC, MIPS, arm) is also possible provide web based interface provide HTTP(S) based API provide command line client osc in Python 9/20 c Novell Inc. All Right Reserved Collaboration Features Project or package owners can grant write access to the others. However it has some disadvanatges: Unknown contributors have no write access Even people with write access might want a review of their changes People with write access to the project can change any package in project Anybody can send any request requests can create/delete/modify package request are rewieved by project maintainers and accepted/declined anybobody can contribute 10/20 c Novell Inc. All Right Reserved Modifying package osc linkpac server:database mysql home:-miska- osc co home:-miska- mysql cd home:-miska-/mysql quilt setup mysql.spec quilt push -a quilt new mysql-5.1.36-superfast-patch.patch quilt add mysys/mf_keycache.c quilt refresh -p0 osc add mysql-5.1.36-awesome-patch.patch osc commit osc sr 11/20 c Novell Inc. All Right Reserved Usefull osc commands linkpac agregatepac branch add rm build maintainer sr 12/20 c Novell Inc. All Right Reserved Contributing to the Factory Contributing to the Factory Factory is open =) anybody can contribute 1 Choose package 2 Create/modify it in your own branch 3 Send submit request to the appropriate devel project 4 Build reputation 5 Get maintainership of your package in devel project 6 After fullfiling all project dependent rules, submit package to the factory 7 Fix all problems reported 8 Go to 6 9 Congratulation, you are maintaining package in factory 14/20 c Novell Inc. All Right Reserved SUSE Studio Purpose Web based application for creating custom images. Creating a tuned server appliance Creating a live CD or DVD with your packages and software Creating a ready-to-run virtual appliance Creating a live USB key and carry your Linux system with you wherever you go Creating custom/specialized deployable image ... Advantages: User friendly and easy to use Simple but powerfull 16/20 c Novell Inc. All Right Reserved Example of usage - openSUSE Rescue CD Let's get back to making our own distribution. We know how to maintain our own packages/repositories =)All that is left is to create our own distribution Let's create openSUSE Rescue CD!!! Using openSUSE Buildservice and SUSE Studio 17/20 c Novell Inc. All Right Reserved openSUSE Rescue CD - Basic Idea How will openSUSE Rescue CD look like. We've don't have any resources In fact we've got one end user and his lunch break ) Let's base it on openSUSE 11.1 We want something different ) Let's include applications we may need ) Let's use Contrib for some additional packages ) Let's use different splash screen as a branding As we've got an ordinary end user we need a simple way how to create it ) Let's use SUSE Studio 18/20 c Novell Inc. All Right Reserved Getting account Login using OpenID No additional account Registration still needed Registration takes some time as resources are limited 15GB available for appliances Appliances older then 7 days may be deleted Let's see how it works !!! 19/20 c Novell Inc. All Right Reserved Questions? 20/20 c Novell Inc. All Right Reserved.