Thu May 17 19:39:02 2018 UTC

Produce a customised ISO

[NOTE IMPORTANT] All the commands should be entered as root

Installation of a NuTyX system

The "LFS" variable MUST be defined

In this demonstration the chroot will be in the "/ISO-NuTyX" directory, but you may choose a different name.

export LFS=/ISO-NuTyX

The "NUTYX_TMP" variable SHOULD be defined

It is a directory where you want to clone a temporary NuTyX repository. Here it is "/mnt/nutyx_tmp" but you may choose a different directory.

export NUTYX_TMP=/mnt/nutyx_tmp

Make sure you have all the tools installed

If you are running a NuTyX system you can use:

cards install git cdrkit syslinux libisoburn grub-efi dosfstools

Clone the "NuTyX" git repository

Change to the directory where you want to download a temporary NuTyX repository: e.g. `cd /mnt`

git clone git://github.com/NuTyX/base-sysV.git $NUTYX_TMP

Install the NuTyX base system

install-nutyx

Copy necessary files for the iso

cp -av $NUTYX_TMP/iso $LFS/ISO

Generate the ISO

Enter the chroot

install-nutyx -ec

Put the kernel and the initrd in the right place

mkinitramfs `basename /lib/modules/*` -nf

In Option, install the EFI's installation packages

get efibootmgr dosfstools

In Option, install wifi and mouse support

get wireless-tools wpa-supplicant gpm gpm.service

In Option, install locales to enjoy NuTyX in your own language

for i in da de es fi fr it nl ru sv tr pt
do
  for j in dialog util-linux sudo
  do
    cards install $j.$i
  done
done

In Option, install all the extras packages you want

get ...

Flush the binary archives

cards purge

Generate the squashfs files

for dir in opt bin etc lib lib64 root run sbin usr var home
do
  [ -f /ISO/boot/$dir.squashfs ] && rm /ISO/boot/$dir.squashfs
  mksquashfs /$dir /ISO/boot/$dir.squashfs
done

Quit the NuTyX chroot

exit

Generate the ISO

bash $NUTYX_TMP/scripts/mkiso

Conclusion

The size should not be greater than 300 MB if you didn't add any optional packages. You will find the iso image in the $LFS directory.

ls $LFS
bin etc lib NuTyX_x86_64-20160917.iso root srv usr boot 
home lib64 NuTyX_x86_64-20160917.md5sum
run sys var dev ISO mnt proc sbin tmp

Create a bootable USB-Stick

Insert your USB-Stick and check the disk. Run:

fdisk -l
........
Disk /dev/sdb: 960.8 MiB ......

Create a bootable USB-Stick specifying the correct filename and disk (replace sdX with your USB disk)

[Important] Following command will remove all existing data on the USB key.
dd if=$LFS/NuTyX_x86_64-20160917.iso of=/dev/sdX bs=4M
sync