User Tools

Site Tools


custom_handylinux

Building your own HandyLinux

Looking to customize HandyLinux to install on a machine to precise vocation ? You want to change the default applications ? You just want to see how it works in there?
You are in the right place. We will detail how to build HandyLinux.

Warnings

This page is intended for users familiar with Terminal and editing configuration files.

This page is not a live-build manual. For more informations, please visit the live-build main page by Debian

This page discribe the handylinux build process from a handylinux system or any Debian “Wheezy” (7.x) derivative

Installing the required packages

HandyLinux is built with the Debian live-build project. so you need build-packages. In a terminal, install dependencies :

sudo apt-get install live-build live-tools

other packages are needed depending on the options, but they will be installed during the construction process.

Retrieving sources

download archive

HandyLinux sources are freely available on the main gitorious page. To download sources, click on the “download” button to get the archive.
You will get an archive of of this type “15a3f24abf6f4c2bb6675b686f3e82975f8f13fe.tar.gz”. The alpha-numeric sequence is associated with the last published version.
Decompressing the archive, you get the source folder under the “handylinux-handylinux” form (name of the main project - name of deposit).

clone git repository

If you use the protocol “git” which allows you to update the sources directly from the source directory, you prefer to enter the following command in a terminal :

sudo apt-get install git && git clone git://gitorious.org/handylinux/handylinux.git

yoursources directory is here :)

the main advantage of git repository : you can build yourself the last handylinux release without waiting the official version.
HandyLinux is a collegial distribution an the dev is active… depending on the forum users. These demands are reflected in the sources for the next versions. Using git repositories, you are sure to get the latest version of handyLinux.
Bonus, once cloned, sources could be easily updated from a terminal with the following command :

git pull

Personalization

Here starts the customization of HandyLinux…
From now on, all commands are launched from the sources folder. In this folder wherever it is, you find two directories (auto & config) and a README file.

Applications

If you want to change the default applications, eliminating some unnecessary applications for you or add others, you are in the right place.
Note that if you change the applications in the HandyMenu, you may also read this section. The applications are added in 2 ways to HandyLinux. you can work on two files :

  • ~/config/package-lists/handylinux.list.chroot : the default script to install packages. Packages are classified by categories, empty line are ignored, comments must start with “#”.
    Warning : HandyLinux is configured to not install the “recommanded” packages during installation (to let the system as light as possible). Take care of the dependancies when modify this list.
    To install all recommended packages, edit ~/auto/config and replace –apt-recommends “false” by –apt-recommends “true … but your system will be bigger.
  • ~/config/hooks/handylinux.chroot : a little script installing external packages like skype, teamviewer or iscan drivers.

System options

architecture/repositories

Main options are included in the ~/auto/config-(4/6)86 scripts called by the 'Makefile' during the build process (depends on what release you want to build). For a full list of available options, in a terminal “man lb_config”.
Here is the default script for HandyLinux :

auto
#!/bin/sh
# build script - handylinux
# http://handylinux.org
###########################
lb config noauto \
    --mode "debian" \
    --system "live" \
    --architectures "i386" \
    --distribution "wheezy" \
    --linux-flavours "686-pae" \
    --archive-areas "main contrib non-free" \
    --security "true" \
    --updates "true" \
    --binary-filesystem "fat32" \
    --binary-images "iso-hybrid" \
    --apt-indices "true" \
    --apt-recommends "false" \
    --apt-secure "true" \
    --apt-source-archives "false" \
    --linux-package "linux-image" \
    --bootloader "syslinux" \
    --debian-installer "live" \
    --debian-installer-gui "true" \
    --iso-application "handylinux" \
    --iso-volume "handylinux" \
    --memtest "none" \
    --win32-loader "true" \
    --clean \
    --debug \
    --verbose \
    --source "false" \
	"${@}"

some details and available alternatives :

  • linux-flavours “686-pae” : processor options. set to “486” for old computers (before 2005)
  • archive-areas “main contrib non-free” : used archives. To build a 100% free HandyLinux, keep “main”. Note that somme packages have to be deleted ( see previous chapter )
  • apt-recommends “false” : don't install recommended packages. Set to “true” if you want those packages.
  • debian-installer “live” : install the live system in place of the default Debian environment.
  • debian-installer-gui “true” : allow graphical installation.
  • memtest “none” : no memory test from the liveCD/DVD. Set to “memtest86+” or “memtest86” to enable memory test.
  • clean : don(t create all build structure. only build necessary directories.
  • debug : displays full log.
  • verbose : as it says.
  • source “false” : don't make sources archive (all installed packages + specifics HandyLinux packages)

Default user directory

Les préférences du futur dossier utilisateur (en live et après installation) sont définies par le dossier ~/config/includes.chroot/etc/skel/. Tout ce que vous placerez dans ce dossier skel alias skeleton (squelette en anglais), se retrouvera dans le dossier utilisateur par défaut.

HandyMenu

Since HandyLinux-1.6, HandyMenu comes from the HandyLinux repository and allow you to configure it directly from a 'preferences' dialog interface. (thx manon :) )
handymenu is not configured from build source now.

Build it

To make release config easier, the build process is controled by a “Makefile”, so you have to install “make” first

sudo apt-get install make

Open a terminal, go to your sources directory then enter the build command :

make 686

to build a 686-pae release of HandyLinux. But if you want to install on old computers, you may prefer to launch

make 486

This comand runs the ~/auto/build script and read the ~/auto/config-(4/6)86 scripts to build your liveCD/DVD. All the process is written in a log file “handylinux-(4/6)86-20131105-2034.log” for consultation.
Tea time :)

Test it

If everything went well, you should obtain a “binary.hybrid.iso” ISO image.

Testing "in real"

You have to copy the ISO on your USB or DVD. DVD burning is easy, and to put your ISO, just follow instructions in this page.
You can now reboot your computer on your USB or DVD and test your own distro.

Testing "in virtual"

If you have a modern computer, you can use virtualization through VirtualBox.
To test your custom distro, you have to create a new virtual machine, configure it, and git it the address of your ISO.
VirtualBox includes a setup Wizard to easily create a virtual machine. More infos on this page.

HandyLinux-Maker

HandyLinux-Maker, it's you, it's me.
If you want your own HandyLinux, with your applications, your configuration, you could read the doc or ask someone else to build it.

If you are member of a GNU/Linux or free software oriented association, you can contact us on the forum to define your needs, your configuration, and build together your specific distribution.

custom_handylinux.txt · Last modified: 2017/01/14 03:01 (external edit)