1 |
Hey Gentooers! |
2 |
|
3 |
|
4 |
*Intro* |
5 |
|
6 |
Gentoo Anaconda is a fork of Sabayon Anaconda which is a fork of |
7 |
Fedora/Red Hat Anaconda. Anaconda is an installer for Linux disros, |
8 |
originally for Fedora/RH but now it's distro-independent and many |
9 |
other distros use it as their installer. Sabayon is a binary distro |
10 |
based on Gentoo. |
11 |
|
12 |
*Progress so far* |
13 |
|
14 |
As the time allocated as the first term is almost up, things are |
15 |
likely to break in catastrophic ways, so watch out fellow developers |
16 |
;-) |
17 |
|
18 |
So far, most of the customs screens for Anaconda are done. I only have |
19 |
to finish the screen responsible for picking your USE flags, the |
20 |
screen for cron and syslog, and the screen for picking if you want an |
21 |
X server and if so, which DE/WM would you like. Then I have to fix a |
22 |
bug appearing at the end of the installation (I have had to modify the |
23 |
Sabayon's installation method files to fit Gentoo – I need to bring |
24 |
some of that code back). |
25 |
|
26 |
The USE, cron and syslog settings shouldn't take more than two or |
27 |
three hours each (the screens are already designed in Glade, I just |
28 |
need to code what they're meant to do and extend Anaconda's |
29 |
installation storage). X server will surely take some more time as |
30 |
it's not designed yet (only on paper). For now, however, only |
31 |
preliminary support for installing an X server will exist – I have |
32 |
plenty of time next term to polish off any problems remaining with |
33 |
installing Xorg and DEs/WMs. |
34 |
|
35 |
Saying that, I already have a list of issues that need to be taken |
36 |
care of next term (though they don't impede the workings of the |
37 |
installer, just making it easier to maintain). |
38 |
Right now Anaconda needs roughly 60 MB of extra space on the LiveDVD, |
39 |
excluding a stage3 tarball. This is because of several issues. One is |
40 |
that some packages on the LiveDVD are old and emerging Anaconda |
41 |
upgrades them (because they are a dependency). I also need to have an |
42 |
up-to-date Portage tree available (need to sync either before or |
43 |
during the installation) for picking a profile and USE flags, and in |
44 |
order to emerge the newest versions of packages instead of having the |
45 |
user have to upgrade all the packages after they reboot (even the |
46 |
handbook syncs the portage tree during installation!). Overall, I |
47 |
think a good estimate is roughly 400 MB of extra space will be |
48 |
required, including both stage3 tarballs (amd64 and i686). A Portage |
49 |
tree will have to be synced into the live tmpfs and this is also where |
50 |
the stage3 trees need to be extracted so we'll also need around 900 MB |
51 |
of tmpfs space for an unpacked stage3 and a fresh portage tree. Of |
52 |
course there's nothing stopping the installer from simply downloading |
53 |
an appropriate stage3 tree from a mirror. |
54 |
|
55 |
We could just put unpacked stage3 trees on the LiveDVD and use the |
56 |
Portage tree from the LiveDVD but if LiveDVDs are only released every |
57 |
year then there might be some huge discrepancies, esp. in fast-paced |
58 |
project. Imagine have to wait two days for Anaconda to install KDE on |
59 |
your computer, only to be told you have to wait another three days |
60 |
because a newer KDE was released two months ago. I am inviting |
61 |
everyone to discuss those issues. |
62 |
|
63 |
The possible solutions the above issues (not mutually exclusive): |
64 |
1. make a small overlay of all the packages Anaconda can install |
65 |
(there will only really be a few) and only sync that before the |
66 |
installation; |
67 |
2. pull a fresh stage3 from a mirror (only roughly 150 MB for amd64, |
68 |
probably a little bit less for i686), and instead of extracting it to |
69 |
the tmpfs and having Anaconda copy it later on the disk, have Anaconda |
70 |
extract it straight onto the new system image. |
71 |
|
72 |
I would love to hear many opinions regarding these issues. |
73 |
|
74 |
Get to work, we've only got a week left! ;-) |
75 |
|
76 |
~ wiktor |