Difference between revisions of "Linux System BuildISO"

From Wiki [en] OpenMandriva
Jump to: navigation, search
m (+ Category)
(add omdv-build-iso)
Line 10: Line 10:
 
** atm they're public readable, so you will be fine
 
** atm they're public readable, so you will be fine
  
=== Building an ISO ===
+
=== Building an ISO in user space ===
  
 
Steps to take:
 
Steps to take:
  
git clone https://$USER@abf.rosalinux.ru/openmandriva/iso-build-tools.git
+
1. Install omdv-build-iso rpm package
./iso-build-tools/MATRIX
+
<pre>
 +
urpmi omdv-build-iso
 +
</pre>
 +
 
 +
2. Run as root <b>omdv-build-iso.sh</b> with arguments
 +
<pre>
 +
omdv-build-iso.sh --arch=x86_64 --tree=cooker --version=2015.0 --release_id=alpha --type=minimal
 +
</pre>
 +
 
 +
List of allowed arguments:
 +
<pre>
 +
--arch= Architecture of packages: i586, x86_64
 +
--tree= Branch of software repository: cooker, openmandriva2014.0
 +
--versio=n Version for software repository: 2015.0, 2014.1, 2014.0
 +
--release_id= Release identifer: alpha, beta, rc, final
 +
--type= User environment type on ISO: kde4, mate, lxqt, minimal, icewm, hawaii, xfce4
 +
--displaymanager= Display Manager used in desktop environemt: kdm, gdm, lightdm, sddm, xdm
 +
--debug Enable debug output
 +
</pre>
 +
 
 +
3. Your ISO will be available in <b>/var/tmp/</b> directory
 +
 
 +
==== Building a custom ISO in user space ====
 +
You may want to build your own custom iso, by preparing new file in <b>/usr/share/omdv-build-iso/iso-pkg-lists-* </b>
 +
 
 +
Use '''cooker''' environment:
 +
<pre>
 +
/usr/share/omdv-build-iso/iso-pkg-lists-cooker/omdv-YOURNAME.lst
 +
</pre>
 +
 
 +
Use '''openmandriva2014.0''' environment:
 +
<pre>
 +
/usr/share/omdv-build-iso/iso-pkg-lists-openmandriva2014.0/omdv-YOURNAME.lst
 +
</pre>
 +
 
 +
In your file you can include already existing files:
 +
<pre>
 +
%include .///omdv_core.lst
 +
</pre>
 +
 
 +
Or you may add directly packages you would like to have on your iso
 +
<pre>
 +
basesystem-minimal
 +
task-x11
 +
</pre>
 +
 
 +
Building your custom iso is simple, make sure you added as '''--type= your file name''' with package list:
 +
<pre>
 +
omdv-build-iso.sh --arch=x86_64 --tree=cooker --version=2015.0 --release_id=alpha --type=YOURNAME
 +
</pre>
  
(Replace $USER with your username if applicable)
 
  
Some words on the current state of the process:
 
<bero> If all goes well, that produces an iso
 
  
 
=== Testing your result ===
 
=== Testing your result ===

Revision as of 00:19, 12 January 2015

ISO Building


This is just a very rough sketch on what to do. However these points may give you a start.

Preparation

  • You'll need at least read access to the OpenMandriva repositories at ABF
    • atm they're public readable, so you will be fine

Building an ISO in user space

Steps to take:

1. Install omdv-build-iso rpm package

urpmi omdv-build-iso

2. Run as root omdv-build-iso.sh with arguments

omdv-build-iso.sh --arch=x86_64 --tree=cooker --version=2015.0 --release_id=alpha --type=minimal

List of allowed arguments:

--arch= Architecture of packages: i586, x86_64
--tree= Branch of software repository: cooker, openmandriva2014.0
--versio=n Version for software repository: 2015.0, 2014.1, 2014.0
--release_id= Release identifer: alpha, beta, rc, final
--type= User environment type on ISO: kde4, mate, lxqt, minimal, icewm, hawaii, xfce4
--displaymanager= Display Manager used in desktop environemt: kdm, gdm, lightdm, sddm, xdm
--debug Enable debug output

3. Your ISO will be available in /var/tmp/ directory

Building a custom ISO in user space

You may want to build your own custom iso, by preparing new file in /usr/share/omdv-build-iso/iso-pkg-lists-*

Use cooker environment:

/usr/share/omdv-build-iso/iso-pkg-lists-cooker/omdv-YOURNAME.lst

Use openmandriva2014.0 environment:

/usr/share/omdv-build-iso/iso-pkg-lists-openmandriva2014.0/omdv-YOURNAME.lst

In your file you can include already existing files:

%include .///omdv_core.lst

Or you may add directly packages you would like to have on your iso

basesystem-minimal
task-x11

Building your custom iso is simple, make sure you added as --type= your file name with package list:

omdv-build-iso.sh --arch=x86_64 --tree=cooker --version=2015.0 --release_id=alpha --type=YOURNAME


Testing your result

If everything went well, you end up having some iso you'd like to try out for sure.

You can either install it on real hardware (if you're really feeling lucky). Or you might prefer trying it out in an emulator. This is a quick example on how that might work on a properly configured 64bit host system. You should get familar with qemu/kvm when trying this at home, though. Good thing is, if qemu/kvm already is installed on your system you won't need root.

create a disk image, first:

qemu-img create omv-alpha20130513.img 10G

then remember how your iso has been named and start the installation:

aoss qemu-system-x86_64 -enable-kvm -hda omv-alpha20130513.img  \
          -cdrom iso/OpenMandriva.alpha.20130515.x86_64.iso -m 1024 \
          -vga std -net nic -net user -soundhw ac97 -boot d

If asked during installation, please select the ssh-server to be started at boot.


after the installation you will be able to boot to your machine with the following command:

aoss qemu-system-x86_64 -enable-kvm -hda omv-alpha20130513.img  \
          -cdrom iso/OpenMandriva.alpha.20130515.x86_64.iso -m 2048 \
          -vga std -net nic -net user,hostfwd=tcp::2222-:22 -soundhw ac97

After setting your root and user passwords you will be able to reach your guest OS by ssh if you enabled the ssh-server before. On the host system type:

ssh localhost -p 2222