1 /15 Design and Implementation of the Custom Debian Distributions Toolkit (CDDT) 17 February 2006 Sergio Talens-Oliag II Open Source World.

Slides:



Advertisements
Similar presentations
Agile Software Distribution
Advertisements

CS 501 : An Introduction to SCM & GForge An Introduction to SCM & GForge Lin Guo
Low level CASE: Source Code Management. Source Code Management  Also known as Configuration Management  Source Code Managers are tools that: –Archive.
Working with SharePoint Document Libraries. What are document libraries? Document libraries are collections of files that you can share with team members.
Package Managers What are they and why we use them.
1 of 5 This document is for informational purposes only. MICROSOFT MAKES NO WARRANTIES, EXPRESS OR IMPLIED, IN THIS DOCUMENT. © 2007 Microsoft Corporation.
Version Control with git. Version Control Version control is a system that records changes to a file or set of files over time so that you can recall.
Leading Edge Climbing Equipment
1 Introduction to Tool chains. 2 Tool chain for the Sitara Family (but it is true for other ARM based devices as well) A tool chain is a collection of.
Mining Large Software Compilations over Time Another Perspective on Software Evolution: Gregorio Robles, Jesus M. Gonzalez-Barahona, Martin Michlmayr,
Installing and maintaining clusters of FreeBSD servers using PXE and Rsync Cor Bosman XS4ALL
Linux Operations and Administration
Erlware For Managing Distribution and Build Erlang User Conference 2007.
WP4-install task report WP4 workshop Barcelona project conference 5/03 German Cancio.
Linux Last Update Copyright Kenneth M. Chipps Ph.D. 1.
10/1/2015 Chapter 2 Installing Windows XP Professional.
Linux Package Management Dr. Michael L. Collard 1.
Working with Ubuntu Linux Track 2 Workshop June 2010 Pago Pago, American Samoa.
Managing User Desktops with Group Policy
Introduction to Linux ( I ) Sidney Fong 4 th Feb 2006.
Module 6: Configuring User Environments Using Group Policy.
CVS – concurrent versions system Network Management Workshop intERlab at AIT Thailand March 11-15, 2008.
CVS – concurrent versions system AROC Guatemala July 19-23, 2010 Guatemala City, Guatemala.
Semi-Automatic patch upgrade kit
Maite Barroso - 10/05/01 - n° 1 WP4 PM9 Deliverable Presentation: Interim Installation System Configuration Management Prototype
A Mirror Engine Computer Science Capstone Tobias Hertkorn.
Silberschatz, Galvin and Gagne ©2011 Operating System Concepts Essentials – 8 th Edition Chapter 2: The Linux System Part 1.
Integrating and Extending Workflow 8 AA301 Carl Sykes Ed Heaney.
11 DEPLOYING AN UPDATE MANAGEMENT INFRASTRUCTURE Chapter 6.
Building programs LinuxChix-KE. What happens in your CPU? ● It executes a small set of instructions called "machine code" ● Each instruction is just a.
9/21/04 James Gallagher Server Installation and Testing: Hands-on ● Install the CGI server with the HDF and FreeForm handlers ● Link data so the server.
Customising Debian 1 /21 RMLL, Nancy, Jul 6, 2006 Enrico Zini Jul 6, slides Enrico Zini Customising Debian.
1 Remote Installation Service Windows 2003 Server Prof. Abdul Hameed.
1 Free Electrons. Kernel, drivers and embedded Linux development, consulting, training and support. http//free-electrons.com SSH Thomas Petazzoni Free.
Debtags, and what you can do with it today 1 /15 Fosdem, Brussels, February 25, :56 Enrico Zini Feb 25, slides Enrico.
What type of project? I tried three type of project and the only one I managed to obtain the results I wanted was this one. It is more flexible and much.
Upgrade-advisor DebConf9 Caceres, Extremadura, Spain Frank lin Piat
Automating Xen Virtual Machine Deployment Kris Buytaert
Packaging Software for Debian Roberto C. Sánchez Ohio Linuxfest Saturday, September 29, 2007.
Architecture Review 10/11/2004
SharePoint 101 – An Overview of SharePoint 2010, 2013 and Office 365
Lab 07 Cisco Routers.
Chuan-kai Lin Drake Diedrich Google Inc.
Customising Debian Working with the Greather Debian world Oct 19, 2006
Development Environment
John Metz and Jeff Potts Michigan’s A. E. R. Annual Conference 2017
Linux Security Presenter: Dolev Farhi |
LINUX WINDOWS Vs..
CARA 3.10 Major New Features
70-293: MCSE Guide to Planning a Microsoft Windows Server 2003 Network, Enhanced Chapter 6: Planning, Configuring, And Troubleshooting WINS.
Lesson 3: Customizing Document Elements
IEEE Std 1074: Standard for Software Lifecycle
Chapter 7 Installing Program &Backup Tool
Managing Software.
THE ARCHITECTURE AND FUNCTIONALITIES OF SELECTED MODULES.
Sponsored by the RMS Center
Microsoft Office 2013 Coming to a PC near you!.
LINUX WINDOWS Vs..
More Scripting & Chapter 11
Tech Inside Extended Document Management System (EDMS)
University of Texas Rio Grande Valley Systems Administration CSCI 6175
Yoel Kortick Senior Librarian
Chapter 2: The Linux System Part 1
Understanding Linux and the BASH shell v
FreeBSD ports & packages
Geant4 Documentation Geant4 Workshop 4 October 2002 Dennis Wright
Introduction of PTM (Planning Tracking & Management) Tool - developed by Meridian Technology 29/05/2019.
MIS 385/MBA 664 Systems Implementation with DBMS/ Database Management
Module 02 Operating Systems
Presentation transcript:

1 /15 Design and Implementation of the Custom Debian Distributions Toolkit (CDDT) 17 February 2006 Sergio Talens-Oliag II Open Source World Conference Málaga 2006

2 /15 What is Debian? ● The Debian Project is an association of individuals who have made common cause to create a free operating system. ● This operating system is based on the Linux Kernel and the GNU tools and is called Debian GNU/Linux, or simply Debian for short. ● There is work in progress to support other Unix like kernels (Hurd, kFreeBSD,...)

3 /15 Derived Debian Distributions ● Operating System Distributions based on Debian: – deb package format – apt repositories with reduced package lists – Local packages and custom versions of official ones – Custom installers (PGI, Anaconda for Debian, etc.) ● Problems: – Duplication of the infrastructure already in Debian – Packages don't have to be Policy Compliant – Local changes don't come back to Debian

4 /15 Custom vs Derived Distributions ● Custom Debian Distributions are distributions derived from Debian that are 100% Debian. ● No fork from Debian: do not make a separate distribution but make Debian fit for special purpose needs instead. ● All CDD contribute to Debian and all Debian improvements contribute to all Custom Debian Distributions.

5 /15 Current Technologies ● Meta packages: – Dependencies on other Debian packages (essential): ● Use "Depends" for packages addressing an area of interest ● Use "Recommends" for further interesting packages ● Use "Suggests" for less important or non-free packages – Menu entries (recommended) – Configuration stuff (optional): ● debconf questions (pre-seeding) ● cfengine scripts – Special meta package: -common

6 /15 What is the CDDT? ● A toolkit that tries to standardize the way developers define their CDD and provides tools to distribute, install, update and manage the customized system ● The basic idea behind the toolkit is to allow the distribution of CDD in source or in binary form using a single deb package that contains a description of the CDD and all the meta data needed to install or generate an installer for it

7 /15 What has to be done to build and maintain a CDD ● Package selection: definition of tasks and their package dependencies ● Installation system: d-i support for CDD, pre- seeding, task selection and initial configuration ● System configuration: scripts to generate and maintain custom configuration files on package installation and upgrades ● Distribution maintenance: package and configuration updates, bug tracking, etc.

8 /15 The CDD Description ● For the toolkit, a CDD is defined as a set of tasks that can be used to install and configure packages on the system for a given purpose ● A task definition has to include: – a list of packages or tasks that have to be installed to provide the task's functionality – the information needed to configure those packages: pre-seeding (only useful for first installations) and scripts that generate and maintain the customized configuration files

9 /15 Sample Description Task: office-srv Architecture: all Description: Office Server Software for a typical Office Server Install-Task: true Include: incl/server-tasks Task: office-srv Task-Depends: base-srv, print-srv, web-srv Task: office-srv Depends: rsync, screen, ssh

10 /15 Toolkit packages: cddt-tools ● The package includes various programs: – cddt, originally designed to be the main developer tool, the current version parses the CDD description, generates dependency trees and prints them to build meta packages. In the future it will build and install the packages directly, now they are built manually using a cdbs rules file that calls a debhelper like script and are installed using apt – cddt-fakeapt, useful to test package installs, upgrades and removals on a fake environment – cddt-pkgtool, cddt-mkedeb, gettext tools, etc.

11 /15 Toolkit packages: cddt-runtime (1) ● The package includes various programs: – cddt.sh: shell script library that includes functions to implement front ends (using zenity, dialog or text), functions to load and replace variables on template files, functions to install files and templates, functions to enable and disable scripts using links, etc. – cddt-divert: installs and removes customized files. The program keeps copies of the original and replacement files and detects if a customized file has been modified.

12 /15 Toolkit packages: cddt-runtime (2) – cddt-apt / cddt-dpkg: execute the scripts installed on /etc/cddt/apt-scripts.d/ before and after dpkg. Before, revert customizations for packages that are going to be removed or upgraded. After, install customizations for new or upgraded packages – /etc/network/if-*.d/10cddt-net: execute the scripts installed on /etc/cddt/net-scripts.d/ when network interfaces are brought up or down – update-apt-scripts.d, update-net-scripts.d: enable or disable scripts on /etc/cddt/(apt|net)-scripts/

13 /15 Other packages ● cddt-installer: udeb to be included on d-i with one or more CDD udeb, used to choose the tasks to install, apply the corresponding pre-seedings and install any hooks needed for the second stage installer. Current systems use hand made udeb ; this package is not implemented yet and its design has to be reviewed because the etch d-i has removed the second stage installer ● cddt-doc: Documentation related to the system, not fully updated right now

14 /15 More information about the CDDT Mailing list Trac Project CDDT packages and papers lliurex-cdd packages apt-src zlxNEXT lliurexhttp://lliurex.net/zlx/

15 /15 That's all, folks !