-=-=-- DrakX is a very big project, and it needs special setups to work. The purpose of this file is to explain how you can setup your box to make it compile and run. -=-=-- Beware, don't try this on a production machine with important data. -------------------------------------------------------------------------- Sources installation: First grab the gi.tar.bz2 archive and untar it in your home directory, for example from DrakX-*.src.rpm on your Mandrake Linux distribution. Fix a few things: % find gi -name "*/CVS/root/*" | xargs perl -pi -e 's/prigaux/anoncvs/' Then, log yourself into the cvs: % export CVS_RSH=ssh % export CVSROOT=:ext:anoncvs@cvs.mandrakesoft.com:/cooker % cvs checkout gi � � � � (the passwd is: 'cvs') And update the gi package: % cvs update -P -d gi -------------------------------------------------------------------------- Preparing the compilation process: (1) target directory Create a top level directory called /export and give write permissions to the user/group that will be compiling DrakX. �It is also suggested that you copy a recent Mandrake Linux CD in there. (You don't have to put have all the RPMS...) ; you'll need roughly 1.5 Gbytes for a full install. (It is possible to not have a copy of Mandrake Linux there, if all you desire is to compile gi) (2) support directories You will need to create a top level /RPMS directory. �This directory needs to be populated with the following RPMS: locales-ja locales-ko locales-zh GI needs to be informed about which kernel(s) is/are to be used. Most of the time, no manual install is needed. Just be sure to have the BOOT kernel(s) in /RPMS, and typing make later on will extract the package(s) and build stuff from it. FYI, for each kernel, directories will be populated as follows: gi/kernel/all.kernels/2.6.0 containing all files from the said kernel RPM package gi/kernel/all.modules/2.6.0 containing all modules, and special files containing modules for stage1 (*.mar) gi/kernel/all.modules/ containing a special file containing modules for stage1 (*.cz*) Note: the modules must not be in compressed form (*.gz *.bz2 etc) (3) required rpm packages You need quite a number of rpm packages installed on your system to build gi properly. Roughly: emacs gcc make glibc-devel glibc-static-devel perl-devel XFree86 XFree86-FBDev XFree86-VGA16 XFree86-devel libglib-devel libgtk+-devel perl-GTK ldetect ldetect-devel ldetect-lst ldetect-lst-devel libslang-devel libnewt-devel e2fsprogs libext2fs2-devel dosfstools rpm-devel rpmtools libbzip2_1 libbzip2_1-devel libncurses5 libncurses5-devel setserial telnet parted raidtools pciutils mt-st gpart reiserfsprogs jfsprogs xfsprogs extipl pcmcia-cs gettext perl-Gtk2 perl-Glib perl-XML-Parser ash imlib fb2png ntfsprogs lm_sensors galaxy-gnome perl-PerlIO-gzip brltty lvm2 mkcd perl-URPM glibc-i18ndata You may need a few others I forgot to mention. If the compilation fails, try to understand the message and install any necessary remaining package. (4) NEVER build or run Drakx as root. �Install sudo and setup the following permissions in /etc/sudoers: user ALL=(root) NOPASSWD:/usr/bin/patch,NOPASSWD:/bin/rpm,NOPASSWD:/bin/mount,NOPASSWD:/bin/cp,NOPASSWD:/bin/umount,NOPASSWD:/usr/bin/install,NOPASSWD:/bin/rm,NOPASSWD:/bin/mv,NOPASSWD:/bin/tar,NOPASSWD:/bin/cpio,NOPASSWD:/bin/chown,NOPASSWD:/bin/mkdir,NOPASSWD:/usr/bin/strip,NOPASSWD:/bin/mknod (5) pray [gc@obiwan ~/cvs/gi] make --------------------------------------------------------------------------- The comments written with #- are automatically stripped out at install. --------------------------------------------------------------------------- testing all: � go to the perl-install directory and execute ./install2 --testing � NEVER execute DrakX as root! You might need to allow all users � to read the block devices of your hard-disks, though (chmod a+w � /dev/hda* for example). Here is how I (dams) made it work on my computer. ------------------------------------------------- - get the sources - install the librairies needed included newt-devel gtk+-devel popt-devel popt gtk-engines - cd path/to/gi - make - mkdir /usr/share/gtk - ln -s path/to/gi/perl-install/share/themes /usr/share/gtk - ln -s path/to/gi/perl-install/share/step-* /usr/share - ln -s path/to/gi/perl-install/share/help.xpm /usr/share - ln -s path/to/gi/perl-install/share/isdn* /etc/sysconfdir/network-scripts - have a cd architecture linked on /export - ln -s /export /tmp/rhimage - export PERL_INSTALL_TEST=1 - cd path/to/gi/perl-install - gendistrib --noclean --distrib /export - ./install2 in root (dangerous) or chmod a+r /dev/hd* and ./install2 in user address all bugreports to dave@null.com info has been added by sunny@opencurve.org