README 4.87 KB
Newer Older
1 2 3
This GFXBoot theme is based on openSUSE's GFXBoot implementation,
thus it is released under the same license terms.

4
Hamara modifications by
5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 36 37 38 39 40 41 42 43 44 45 46 47 48 49 50 51 52 53 54 55 56 57 58 59 60 61 62 63 64 65 66 67 68 69 70 71 72 73 74 75 76 77 78 79 80 81 82 83 84 85 86 87 88 89 90 91 92 93 94 95 96 97 98 99 100 101 102 103 104 105 106 107 108 109 110 111 112 113 114 115 116 117 118 119 120 121 122 123 124 125 126 127 128 129 130 131 132 133 134 135

Amardeep Singh <amardeep@techblue.co.uk>


HOW-TO
---------------------------------------------------------------

* Compiling

First you need to make sure you have CPIO and GFXBOOT installed

Run 'make' for creating the theme, this will generate a folder called 'isolinux', just copy the folder into 
the Hamara Live profile, inside makeiso/files/master-template , replacing completely 
the folder 'isolinux' and all it's contents.

Run 'make clean' for cleaning completely the build


* Tweaking

MAIN FOLDER:

config: This is the master config file. Sets some variables for many parts of the theme.

-------------

DATA FOLDER: This folder contains the graphics, the binaries and the configuration files for isolinux

about.txt: If this file is present, the "F1" key doesn't lead directly to the help system
but it shows first some "About" text- Once the user press F1, this key gets assigned to help.

backXXXxXXX.jpg backgrounds for several resolutions

*.c32 *.cat *.bin memtest: those are binary modules. It is recommended to update the modules
time to time from your syslinux local package but ensuring it still works. The provided
isolinux.bin and gfxboot.c32 are special versions for Hamara,  so it is not recommended to 
change those, else you may loose some features.

isolinux.cfg: This is the master config file for the menu entries. Any option after "showopts" is 
shown in the "boot options" line in the menu, however, the rest is also passed to the kernel. You
can either use direct tags as "Start_Live_System" (notice that gfxboot will replace "_" by " ") or
a tag defined in the POT like txt_start. You should define later in the src code the tags you want to
translate in the src/*.ini files.

isolinux.msg: This is the menu shown in text mode in case Isolinux fails to load GFXBoot. You should
use directly the same labels or tags for booting into the several options.

pci.ids: This file is a database about PCI devices, used by the provided Hardware Detection Tool and
may be updated time to time from here: http://pciids.sourceforge.net/v2.2/pci.ids

text.jpg: Fade-in text image shown in the Welcome splash.

timer_a.jpg: Timeout spinner for the main menu

welcome.jpg: Splash background

WARNING: All the graphics need to have some special bits set, else GFXBoot will show just black images,
fortunately Kolourpaint saves the files using exactly the format we need, so in case you run into
troubles, open the file with Kolourpaint, save it again, and you will have a working image for GFXBoot.

--------------

FONTS FOLDER: This folder contains any font used in the menu, should be UTF+8 compatible and have
a complete set for the worldwide set of languages, it is not recommended to change the font as the
supplied one is the most complete you may find anywhere regarding language support.

--------------

HELP FOLDER: This folder contains the html templates for generating the help system.
TODO: make this folder translatable using translate-toolkit's html2po and many magic :)

--------------

KEYMAPS FOLDER: this folder have xkb keymap files directly from X.Org. you shouldn't remove or 
tweak nothing as it have support for every known keyboard already.

--------------

PO FOLDER: Translation files for the main menu. Inside the "bin" folder you will find the several
helpers for adding and removing strings to the POT. It is heavily recommended to use an automated 
system like Transifex, so you need only to update the POT file online, then fetch the translations
using the provided ./sync-transifex to update the rest of languages.

---------------

SCREENSHOT FOLDER: Includes several screenshot with the current theme. As we create Git branches
for each release, this folder will show the theme used for this branch.

-----------------


SCRIPTS FOLDER: This folder contains any special script used during the bootup for catching the 
parameters passed by GFXBoot to the kernel, it is here just for reference so in case a theme need 
some special tweaking.

----------------

SRC FOLDER: This folder contains the main source code for the menu, you need to have GFXBoot
and CPIO installed in order to compile it.

bsplash.inc: Source code for the Welcome splash.

button.inc: Source code for drawing buttons.

common.inc: The main menu generator and handling, parses gfxboot.cfg

dia_*.inc: Those files have the several dialogs source code.

gfxboot.cfg: Master config file.

help.inc: Handles the help system.

keytables.inc: Handles the keyboard settings.

locale.inc Handles the locale settings.

main.bc: bit-compiling includes file.

menu.inc: Generates the main menu.

panel.inc: Generates the bottom panel.

system.inc: Abstracted low-level functions.

timeout.inc: Handles the timeout spinner.

windows.inc: Draws the main window.

xmenu.inc: Several functions for drawing the menu elements.