aboutsummaryrefslogtreecommitdiff
path: root/README
blob: 1032972a3d16bf0cd005518709b50a91f99ac8fd (plain)
1
2
3
4
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
VERY EXPERIMENTAL
seems to work so far on amd64 and x86

DEPENDANCIES:
- bootsplash
- gcc/binutils
- bash

INSTALLATION:

put genkernel.conf in /etc

put genkernel executable in /usr/bin

put the rest of the files and directories in /usr/share/genkernel



PORTING:

To port to other arches:

cd /usr/share/genkernel
cp -Rp x86 ${myarch}
mkdir /usr/share/genkernel/pkg/${myarch}


modify what is needed in the /usr/share/genkernel/${myarch}
directory, this is all the arch-specific stuff, as well
as a generic kernel-config 


IMPORTANT KERNEL NOTES:
- You MUST have devfs turned on at this time, but you MUST NOT
  have "Automatically mount at boot" option turned on. 
- You MUST have /dev/pts turned on
- If you want Bootsplash, you MUST have VESAFB enabled for 2.6,
  other framebuffers won't work.  You MUST also enable
  "video mode selection support" and "Framebuffer Console support"
- To build a kernel with GenKernel you must have  
  "Block devices->Loopback device support"  
  "Block devices->RAM disk support"
- To boot genkernel properly, the kernel config must have
  RAM disk support and Initial RAM disk support.  You should
  also set your "Default RAM disk size to 8192"


BOOTING A KERNEL WITH INITRD:

GRUB:
real_root= needs to point to your root partition
root=  needs to point to the ramdisk (should stay at /dev/ram0)
init= needs to point to the linuxrc file to execute on the ramdisk
vga=  should be the resolution you want your screen at  0x317 indicates
      1024x768 - 16bpp   and you'll get a pretty bootsplash if configured properly


GRUB EXAMPLE ENTRY:
title=Linux 2.6.0 genkernel
root (hd0,0)
kernel (hd0,0)/boot/kernel-2.6.0-gentoo root=/dev/ram0 init=/linuxrc real_root=/dev/hda3 vga=0x317
initrd (hd0,0)/boot/initrd-2.6.0-gentoo