MKCD

MKCD distribution disc builder

Florent Villard

This manual is free software; you may redistribute it and/or modify it under the terms of the GNU General Public License as published by the Free Software Foundation; either version 2, or (at your option) any later version.

This is distributed in the hope that it will be useful, but without any warranty; without even the implied warranty of merchantability or fitness for a particular purpose. See the GNU General Public License for more details.

A copy of the GNU General Public License is available as /usr/share/common-licences/GPL in the Debian GNU/Linux distribution or on the World Wide Web at The GNU Public Licence. You can also obtain it by writing to the Free Software Foundation, Inc., 59 Temple Place - Suite 330, Boston, MA 02111-1307, USA.

Jul. 08, 2002


Table of Contents

I. Prerequisites
1. Installation
Required files for an installation
Optional files
Configuration files
2. Building a distribution by hand
Set up the fixed part
Split the packages
Generate dependencies files
3. Automatization
Package sorting
Package splitting
II. Basic use
4. Standard discs set
One standard installation disc
Several disc set
5. Update discs
Basic disc without installation
Installation updates disc
III. Advanced Use
IV. Work to do

Prerequisites

Installation

Short description of the install and important files.

Required files for an installation

I will focused on disc based installation, there are some few differences for network and other type of installation medias. The required files to make a installation disc are located in /Mandrake/mdkinst and /Mandrake/base/

Optional files

Configuration files

in /:

  • VERSION

in Mandrake/base/

  • compssUser
  • compss
  • compssUsers
  • depslist.ordered
  • filelist
  • hdlist.cz
  • hdlists
  • mdkinst_stage2.bz2
  • pkglist.cooker
  • pkglist.cooker.bz2
  • provides
  • rescue_stage2.bz2
  • rpmslist
  • rpmsrate
  • srclist.cooker
  • srclist.cooker.bz2

Building a distribution by hand

Steps to build manually a set of installation discs

Building a distribution by hand is kind of easy in theory, just have to copy the required installation files in a repository, populate /Mandrake/RPMS with packages, write some config files about how many packages directories will be used, generate the dependencies files with gendistrib, build the ISO images and that's it.

Set up the fixed part

Split the packages

Generate dependencies files

Automatization

Part that can be done automatically

Package sorting

Package splitting

Basic use

Standard discs set

One standard installation disc

Cooker
LIST 1 input/cooker/main
/cooker/i586/Mandrake/base/RPMS /cooker/SRPMS

DISC 1 681000000 COOKER0101 DISC 1 Installation CD (x86)
dir rpms Mandrake/RPMS
generic --synthesis rpms 1
advertising en/image1.png en/image2.png en/image3.png
advertising -l de de/image1.png de/image2.png de/image3.png
advertising -l fr fr/image1.png fr/image2.png fr/image3.png
installation -o 50,3,0.1 --synthesis -l fr,en,de -t Cooker-i586 -i /cooker/i586/ 1/rpms
boot -b -d Boot images/cdrom.img -f /cooker/i586/images

INSTALL section,force
SYSTEM section,rate 20
MySQL-bench exclude
svgalib limit,regexp
netscape-navigator noalternatives,ignore,nosrc
netscape regexp,nosrc
mandrake_doc regexp,nosrc
kdebase force
kde-i18n rate 10,regexp,nosrc
koffice-i18n rate 10,regexp,nosrc
koffice force
.*drake regexp,rate 20
drak.* regexp,rate 20
abiword rate 10
tuxracer rate 10
vim-minimal force
drakfirsttime force
kdebase-nsplugins rate 4
locales force,regexp
kernel(.*(linus|mosix|xfs)) regexp,noalternatives
kernel(?!.*(source)) regexp,force
kernel-source rate 10
.* regexp

Several disc set

Update discs

Standard distribution with updated packages

Basic disc without installation

Installation updates disc

Advanced Use

Work to do