@ -0,0 +1,38 @@ |
|||
|
|||
disksdir="$build_rock/livecd" |
|||
|
|||
if [ -z "`which create_compressed_fs`" ] ; then |
|||
echo "Please make sure create_compressed_fs is installed! Rock Package: fake/cloop" |
|||
exit 1; |
|||
fi ; |
|||
|
|||
if [ -z "`which mkisofs`" ] ; then |
|||
echo "Please make mkisofs is installed! Rock Package: base/cdrtools" |
|||
exit 1; |
|||
fi; |
|||
|
|||
pkgloop |
|||
rm -rf $disksdir; mkdir -p $disksdir; chmod 700 $disksdir |
|||
|
|||
. scripts/parse-config |
|||
|
|||
. $base/target/$target/build_stage2.sh |
|||
|
|||
. $base/target/$target/build_stage1.sh |
|||
|
|||
if [ -f $base/target/$target/$arch/build.sh ]; then |
|||
. $base/target/$target/$arch/build.sh |
|||
fi |
|||
|
|||
echo_header "Creating ISO filesystem description." |
|||
cd $disksdir; rm -rf isofs; mkdir -p isofs |
|||
|
|||
echo_status "Creating livecd/isofs directory.." |
|||
ln 2nd_stage.img.z isofs/ |
|||
ln *.img initrd.gz isofs/ 2>/dev/null || true |
|||
|
|||
echo_status "Creating isofs.txt file .." |
|||
echo "DISK1 build/${ROCKCFG_ID}/ROCK/livecd/isofs/ ` |
|||
`${ROCKCFG_SHORTID}/" > ../isofs_generic.txt |
|||
cat ../isofs_*.txt > ../isofs.txt |
|||
|
|||
@ -0,0 +1,85 @@ |
|||
|
|||
echo_header "Creating initrd data:" |
|||
rm -rf $disksdir/initrd |
|||
mkdir -p $disksdir/initrd/{dev,proc,tmp,bin-static,mnt/cdrom,ramdisk,etc,ROCK} |
|||
cd $disksdir/initrd; ln -s bin-static sbin-static; ln -s . usr |
|||
# |
|||
echo_status "Create linuxrc binary." |
|||
diet $CC $base/target/$target/linuxrc.c -Wall \ |
|||
-DSTAGE_2_IMAGE="\"${ROCKCFG_SHORTID}/2nd_stage.img.z\"" \ |
|||
-o linuxrc |
|||
# |
|||
echo_status "Copy various helper applications." |
|||
cp ../2nd_stage/bin/{tar,gzip} bin-static/ |
|||
cp ../2nd_stage/sbin/hwscan bin-static/ |
|||
cp ../2nd_stage/usr/bin/gawk bin-static/ |
|||
for x in modprobe.static modprobe.static.old \ |
|||
insmod.static insmod.static.old |
|||
do |
|||
if [ -f ../2nd_stage/sbin/${x/.static/} ]; then |
|||
rm -f bin-static/${x/.static/} |
|||
cp -a ../2nd_stage/sbin/${x/.static/} bin-static/ |
|||
fi |
|||
if [ -f ../2nd_stage/sbin/$x ]; then |
|||
rm -f bin-static/$x bin-static/${x/.static/} |
|||
cp -a ../2nd_stage/sbin/$x bin-static/ |
|||
ln -sf $x bin-static/${x/.static/} |
|||
fi |
|||
done |
|||
# |
|||
echo_status "Copy scsi and network kernel modules." |
|||
for x in ../2nd_stage/lib/modules/*/kernel/drivers/net/*.{ko,o} ../2nd_stage/lib/modules/*/misc/cloop.{ko,o} ; do |
|||
# this test is needed in case there are only .o or only .ko files |
|||
if [ -f $x ]; then |
|||
xx=${x#../2nd_stage/} |
|||
mkdir -p $( dirname $xx ) ; cp $x $xx |
|||
strip --strip-debug $xx |
|||
fi |
|||
done |
|||
# |
|||
for x in ../2nd_stage/lib/modules/*/modules.{dep,pcimap,isapnpmap} ; do |
|||
cp $x ${x#../2nd_stage/} || echo "not found: $x" ; |
|||
done |
|||
# |
|||
for x in lib/modules/*/kernel/drivers/net lib/modules/*/misc; do |
|||
ln -s ${x#lib/modules/} lib/modules/ |
|||
done |
|||
rm -f lib/modules/[0-9]*/kernel/drivers/net/{dummy,ppp*}.{o,ko} |
|||
# |
|||
echo_status "Adding kiss shell for expert use of the initrd image." |
|||
cp $build_root/bin/kiss bin-static/ |
|||
cd .. |
|||
|
|||
echo_header "Creating initrd filesystem image: " |
|||
|
|||
ramdisk_size=4096 |
|||
|
|||
echo_status "Creating temporary files." |
|||
tmpdir=initrd_$$.dir; mkdir -p $disksdir/$tmpdir; cd $disksdir |
|||
dd if=/dev/zero of=initrd.img bs=1024 count=$ramdisk_size &> /dev/null |
|||
tmpdev="" |
|||
for x in /dev/loop/* ; do |
|||
if losetup $x initrd.img 2> /dev/null ; then |
|||
tmpdev=$x ; break |
|||
fi |
|||
done |
|||
if [ -z "$tmpdev" ] ; then |
|||
echo_error "No free loopback device found!" |
|||
rm -f $tmpfile ; rmdir $tmpdir; exit 1 |
|||
fi |
|||
echo_status "Using loopback device $tmpdev." |
|||
# |
|||
echo_status "Writing initrd image file." |
|||
mke2fs -m 0 -N 180 -q $tmpdev &> /dev/null |
|||
mount -t ext2 $tmpdev $tmpdir |
|||
rmdir $tmpdir/lost+found/ |
|||
cp -a initrd/* $tmpdir |
|||
umount $tmpdir |
|||
# |
|||
echo_status "Compressing initrd image file." |
|||
gzip -9 initrd.img |
|||
mv initrd{.img,}.gz |
|||
# |
|||
echo_status "Removing temporary files." |
|||
losetup -d $tmpdev |
|||
rm -rf $tmpdir |
|||
@ -0,0 +1,71 @@ |
|||
|
|||
set -e |
|||
taropt="--use-compress-program=bzip2 -xf" |
|||
|
|||
echo_header "Creating 2nd stage filesystem:" |
|||
mkdir -p $disksdir/2nd_stage |
|||
cd $disksdir/2nd_stage |
|||
mkdir -p mnt/source mnt/target ramdisk |
|||
|
|||
. $base/target/$target/default.pkgmap |
|||
|
|||
if [ -f ../../pkgs/bize.tar.bz2 -a ! -f ../../pkgs/mine.tar.bz2 ] ; then |
|||
packager=bize |
|||
else |
|||
packager=mine |
|||
fi |
|||
|
|||
package_map="+$ROCKCFG_DEFAULT_KERNEL +$packager $package_map" |
|||
|
|||
echo_status "Extracting the packages archives." |
|||
for x in $( ls ../../pkgs/*.tar.bz2 | tr . / | cut -f8 -d/ ) |
|||
do |
|||
if echo "" $package_map "" | grep -q " +$x " |
|||
then |
|||
echo_status "\`- Extracting $x.tar.bz2 ..." |
|||
tar --use-compress-program=bzip2 -xpf ../../pkgs/$x.tar.bz2 |
|||
elif ! echo "" $package_map "" | grep -q " -$x " |
|||
then |
|||
echo_error "\`- Not found in \$package_map: $x" |
|||
echo_error " ... fix target/$target/build.sh" |
|||
fi |
|||
done |
|||
# |
|||
echo_status "Saving boot/* - we do not need this on the 2nd stage ..." |
|||
rm -rf ../boot ; mkdir ../boot |
|||
mv boot/* ../boot/ |
|||
# |
|||
echo_status "Remove the stuff we do not need ..." |
|||
rm -rf home usr/{doc,man,info} |
|||
rm -rf var/adm/* var/adm var/mail |
|||
rm -rf usr/{include,src} usr/*-linux-gnu {,usr/}lib/*.{a,la,o} opt/*/lib/*.{a,la,o} |
|||
#for x in usr/lib/*/; do rm -rf ${x%/}; done |
|||
# |
|||
echo_status "Installing some terminfo databases ..." |
|||
tar $taropt ../../pkgs/ncurses.tar.bz2 \ |
|||
usr/share/terminfo/x/xterm usr/share/terminfo/a/ansi \ |
|||
usr/share/terminfo/n/nxterm usr/share/terminfo/l/linux \ |
|||
usr/share/terminfo/v/vt200 usr/share/terminfo/v/vt220 \ |
|||
usr/share/terminfo/v/vt100 usr/share/terminfo/s/screen |
|||
# |
|||
echo_status "Installing some keymaps ..." |
|||
tar $taropt ../../pkgs/kbd.tar.bz2 \ |
|||
usr/share/kbd/keymaps/amiga usr/share/kbd/keymaps/i386/qwerty \ |
|||
usr/share/kbd/keymaps/atari usr/share/kbd/keymaps/i386/qwertz \ |
|||
usr/share/kbd/keymaps/sun |
|||
find usr/share/kbd -name '*dvo*' -o -name '*az*' -o -name '*fgG*' | \ |
|||
xargs rm -rf |
|||
# |
|||
echo_status "Installing pci.ids ..." |
|||
tar $taropt ../../pkgs/pciutils.tar.bz2 \ |
|||
usr/share/pci.ids |
|||
echo_status "replacing some vital files for live useage ..." |
|||
cp -f $base/target/$target/fixedfiles/inittab etc/inittab |
|||
cp -f $base/target/$target/fixedfiles/login-shell sbin/login-shell |
|||
cp -f $base/target/$target/fixedfiles/system etc/rc.d/init.d/system |
|||
cp -f $base/target/$target/fixedfiles/XF86Config etc/X11/XF86Config |
|||
# |
|||
### DOC ### create_compressed_fs and mkisofs need to be in path !!! ### DOC ### |
|||
echo_status "Creating 2nd_stage.img.z image... (this takes some time)... " |
|||
cd .. ; ( mkisofs -R -l 2nd_stage | create_compressed_fs - 65536 > 2nd_stage.img.z ) > /dev/null 2>&1 |
|||
|
|||
@ -0,0 +1,50 @@ |
|||
# --- ROCK-COPYRIGHT-NOTE-BEGIN --- |
|||
# |
|||
# This copyright note is auto-generated by ./scripts/Create-CopyPatch. |
|||
# Please add additional copyright information _after_ the line containing |
|||
# the ROCK-COPYRIGHT-NOTE-END tag. Otherwise it might get removed by |
|||
# the ./scripts/Create-CopyPatch script. Do not edit this copyright text! |
|||
# |
|||
# ROCK Linux: rock-src/target/bootdisk/config.in |
|||
# ROCK Linux is Copyright (C) 1998 - 2003 Clifford Wolf |
|||
# |
|||
# This program is free software; you can redistribute it and/or modify |
|||
# it under the terms of the GNU General Public License as published by |
|||
# the Free Software Foundation; either version 2 of the License, or |
|||
# (at your option) any later version. A copy of the GNU General Public |
|||
# License can be found at Documentation/COPYING. |
|||
# |
|||
# Many people helped and are helping developing ROCK Linux. Please |
|||
# have a look at http://www.rocklinux.org/ and the Documentation/TEAM |
|||
# file for details. |
|||
# |
|||
# --- ROCK-COPYRIGHT-NOTE-END --- |
|||
|
|||
|
|||
. target/livecd/default.pkgsel |
|||
|
|||
ROCKCFG_LIVECD_USEKISS=1 |
|||
|
|||
ROCKCFGSET_CREATE_TARBZ2=1 |
|||
ROCKCFGSET_CREATE_GEM=0 |
|||
ROCKCFGSET_PKGFILE_VER=0 |
|||
|
|||
ROCKCFGSET_DIETLIBC=1 |
|||
ROCKCFGSET_DIETLIBC_DYN=0 |
|||
ROCKCFGSET_DIETLIBC_ALL=0 |
|||
ROCKCFGSET_DIETLIBC_modutils=1 |
|||
ROCKCFGSET_DIETLIBC_module_init_tools=1 |
|||
ROCKCFGSET_DIETLIBC_kiss=1 |
|||
ROCKCFGSET_DIETLIBC_gawk=1 |
|||
|
|||
ROCKCFGSET_PKG_TERMCAP_USEIT=1 |
|||
ROCKCFGSET_PKG_GCC2_NO_CHILL=1 |
|||
ROCKCFGSET_PKG_GCC3_NO_JAVA=1 |
|||
ROCKCFGSET_PKG_GCC33_NO_JAVA=1 |
|||
ROCKCFGSET_PKG_BASH_PROGCOMP=0 |
|||
|
|||
ROCKCFGSET_DO_REBUILD_STAGE=0 |
|||
ROCKCFGSET_CREATE_DOCS=0 |
|||
ROCKCFGSET_OPTSIZE=1 |
|||
ROCKCFGSET_LIMITCXX=0 |
|||
|
|||
@ -0,0 +1,197 @@ |
|||
package_map=' |
|||
+00-dirtree |
|||
+aterm |
|||
-bind |
|||
-bin86 |
|||
+bize |
|||
+devfsd |
|||
+dhcp |
|||
+dialog |
|||
+dump |
|||
-autoconf |
|||
-automake |
|||
+bash |
|||
+bc |
|||
-binutils |
|||
-bison |
|||
+bonnie++ |
|||
+bzip2 |
|||
+cracklib |
|||
-cron |
|||
+cloop |
|||
+cpio |
|||
+cpuburn |
|||
+cpuid |
|||
+curl |
|||
-diffutils |
|||
+disktype |
|||
-dietlibc |
|||
+e2fsprogs |
|||
+ed |
|||
+eject |
|||
+expat |
|||
+file |
|||
+coreutils |
|||
+findutils |
|||
-flex |
|||
+fbset |
|||
+gawk |
|||
+gcc3 |
|||
-gettext |
|||
+genromfs |
|||
+glibc23 |
|||
+grep |
|||
-groff |
|||
+grub |
|||
+gzip |
|||
+hdparm |
|||
+iproute2 |
|||
+iptables |
|||
+intel-rng |
|||
+jfsutils |
|||
+kbd |
|||
+kiss |
|||
+less |
|||
+lilo |
|||
-libtool |
|||
+libjpeg |
|||
+libpng |
|||
+libpcap |
|||
+libtiff |
|||
+libungif |
|||
-linux24 |
|||
-linux26 |
|||
-linux24-header |
|||
-linux26-header |
|||
-linux24-src |
|||
-linux26-src |
|||
+lrzsz |
|||
-m4 |
|||
-make |
|||
-man |
|||
-man-pages |
|||
+madm |
|||
+memtest86 |
|||
-mine |
|||
+minicom |
|||
+microcode_ctl |
|||
+mktemp |
|||
+mkdosfs |
|||
+modutils |
|||
+module-init-tools |
|||
+ncompress |
|||
+ncurses |
|||
+netkit-base |
|||
+net-tools |
|||
+nfs-utils |
|||
+ntfsprogs |
|||
+netkit-telnet |
|||
+netkit-ftp |
|||
+netkit-tftpA |
|||
+nvi |
|||
+openssh |
|||
+openssl |
|||
-patch |
|||
+parted |
|||
+popt |
|||
+perl5 |
|||
+procinfo |
|||
+procps |
|||
+portmap |
|||
+psmisc |
|||
+pciutils |
|||
+raidtools |
|||
+reiserfsprogs |
|||
+rsync |
|||
+rockplug |
|||
+screen |
|||
+sed |
|||
+setserial |
|||
+shadow |
|||
+sysfiles |
|||
+sysklogd |
|||
+sysvinit |
|||
+tar |
|||
+tcpdump |
|||
-termcap |
|||
-texinfo |
|||
+time |
|||
+unzip |
|||
+util-linux |
|||
-uml_utilities |
|||
+vim |
|||
+vlock |
|||
+wget |
|||
+wireless-tools |
|||
+xfree86 |
|||
+x86info |
|||
+zip |
|||
-zlib |
|||
+zsh |
|||
-rock-doc |
|||
-rock-src |
|||
+kdelibs |
|||
+arts |
|||
+glib |
|||
+gtkdoc |
|||
+openjade |
|||
+docbookx |
|||
+pkgconfig |
|||
+audiofile |
|||
+alsa |
|||
+alsa-driver |
|||
+fam |
|||
+freetype |
|||
+libart_lgpl23 |
|||
+libxml2 |
|||
+libxml |
|||
+libxslt |
|||
+mad |
|||
-bison |
|||
+esound |
|||
+tcp_wrappers |
|||
+ogg-vorbis |
|||
+pcre |
|||
+qt |
|||
+libmng |
|||
+python |
|||
+paragui |
|||
+libsdl |
|||
+libsdl_mixer |
|||
+libsdl_image |
|||
-nasm |
|||
+readline |
|||
+bdb33 |
|||
+bdb41 |
|||
+bdb42 |
|||
+gdbm |
|||
+gmp |
|||
+tcltk |
|||
+ruby |
|||
+swig |
|||
+guile |
|||
+numpy |
|||
+kdebase |
|||
+openmotif |
|||
+kdeaddons |
|||
+kdeadmin |
|||
+kdeartwork |
|||
+kdebindings |
|||
+kdeedu |
|||
+kdegames |
|||
+kdegraphics |
|||
+kdemultimedia |
|||
+kdenetwork |
|||
+kdepim |
|||
+kdesdk |
|||
+kdetoys |
|||
+kdeutils |
|||
+koffice |
|||
+koffice-i18n |
|||
+kde-i18n-de |
|||
+k3b |
|||
+cdrtools |
|||
+attr |
|||
+acl |
|||
-syslinux |
|||
' |
|||
@ -0,0 +1,235 @@ |
|||
# --- ROCK-COPYRIGHT-NOTE-BEGIN --- |
|||
# |
|||
# This copyright note is auto-generated by ./scripts/Create-CopyPatch. |
|||
# Please add additional copyright information _after_ the line containing |
|||
# the ROCK-COPYRIGHT-NOTE-END tag. Otherwise it might get removed by |
|||
# the ./scripts/Create-CopyPatch script. Do not edit this copyright text! |
|||
# |
|||
# ROCK Linux: rock-src/misc/pkgsel/minimal+xfree.in |
|||
# ROCK Linux is Copyright (C) 1998 - 2003 Clifford Wolf |
|||
# |
|||
# This program is free software; you can redistribute it and/or modify |
|||
# it under the terms of the GNU General Public License as published by |
|||
# the Free Software Foundation; either version 2 of the License, or |
|||
# (at your option) any later version. A copy of the GNU General Public |
|||
# License can be found at Documentation/COPYING. |
|||
# |
|||
# Many people helped and are helping developing ROCK Linux. Please |
|||
# have a look at http://www.rocklinux.org/ and the Documentation/TEAM |
|||
# file for details. |
|||
# |
|||
# --- ROCK-COPYRIGHT-NOTE-END --- |
|||
# |
|||
# TITLE: XFree86 + KDE minimum (almost) |
|||
|
|||
pkgfilter sed ' |
|||
|
|||
# Add strictly required packages |
|||
|
|||
/ 00-dirtree / { p; d; }; |
|||
/ aterm / { p; d; }; |
|||
/ bind / { p; d; }; |
|||
/ bin86 / { p; d; }; |
|||
/ bize / { p; d; }; |
|||
/ cpuburn / { p; d; }; |
|||
/ cpuid / { p; d; }; |
|||
/ devfsd / { p; d; }; |
|||
/ dhcp / { p; d; }; |
|||
/ dialog / { p; d; }; |
|||
/ dump / { p; d; }; |
|||
/ dietlibc / { p; d; }; |
|||
/ autoconf / { p; d; }; |
|||
/ automake / { p; d; }; |
|||
/ bash / { p; d; }; |
|||
/ bc / { p; d; }; |
|||
/ binutils / { p; d; }; |
|||
/ bison / { p; d; }; |
|||
/ bonnie++ / { p; d; }; |
|||
/ bzip2 / { p; d; }; |
|||
/ cracklib/ { p; d; }; |
|||
/ cron / { p; d; }; |
|||
/ cloop / { p; d; }; |
|||
/ cpio / { p; d; }; |
|||
/ curl / { p; d; }; |
|||
/ diffutils / { p; d; }; |
|||
/ disktype / { p; d; }; |
|||
/ e2fsprogs / { p; d; }; |
|||
/ ed / { p; d; }; |
|||
/ eject / { p; d; }; |
|||
/ expat / { p; d; }; |
|||
/ file / { p; d; }; |
|||
/ fbset / { p; d; }; |
|||
/ coreutils / { p; d; }; |
|||
/ findutils / { p; d; }; |
|||
/ flex / { p; d; }; |
|||
/ gawk / { p; d; }; |
|||
/ gcc3 / { p; d; }; |
|||
/ gettext / { p; d; }; |
|||
/ genromfs / { p; d; }; |
|||
/ glibc23 / { p; d; }; |
|||
/ grep / { p; d; }; |
|||
/ groff / { p; d; }; |
|||
/ grub / { p; d; }; |
|||
/ gzip / { p; d; }; |
|||
/ hdparm / { p; d; }; |
|||
/ intel-rng / { p; d; }; |
|||
/ iproute2 / { p; d; }; |
|||
/ iptables / { p; d; }; |
|||
/ jfsutils / { p; d; }; |
|||
/ kbd / { p; d; }; |
|||
/ kiss / { p; d; }; |
|||
/ less / { p; d; }; |
|||
/ lilo / { p; d; }; |
|||
/ libtool / { p; d; }; |
|||
/ libjpeg / { p; d; }; |
|||
/ libpng / { p; d; }; |
|||
/ libpcap / { p; d; }; |
|||
/ libtiff / { p; d; }; |
|||
/ libungif / { p; d; }; |
|||
/ linux24 / { p; d; }; |
|||
/ linux26 / { p; d; }; |
|||
/ linux.*-header / { p; d; }; |
|||
/ linux.*-src / { p; d; }; |
|||
/ lrzsz / { p; d; }; |
|||
/ m4 / { p; d; }; |
|||
/ make / { p; d; }; |
|||
/ man / { p; d; }; |
|||
/ man-pages / { p; d; }; |
|||
/ madm / { p; d; }; |
|||
/ memtest86 / { p; d; }; |
|||
/ mine / { p; d; }; |
|||
/ minicom / { p; d; }; |
|||
/ microcode_ctl / { p; d; }; |
|||
/ module-init-tools / { p; d; }; |
|||
/ mktemp / { p; d; }; |
|||
/ modutils / { p; d; }; |
|||
/ ncompress / { p; d; }; |
|||
/ ncurses / { p; d; }; |
|||
/ netkit-base / { p; d; }; |
|||
/ net-tools/ { p; d; }; |
|||
/ nfs-utils / { p; d; }; |
|||
/ ntfsprogs / { p; d; }; |
|||
/ netkit-telnet / { p; d; }; |
|||
/ netkit-ftp / { p; d; }; |
|||
/ netkit-tftp / { p; d; }; |
|||
/ nvi / { p; d; }; |
|||
/ openssh / { p; d; }; |
|||
/ openssl / { p; d; }; |
|||
/ patch / { p; d; }; |
|||
/ parted / { p; d; }; |
|||
/ popt / { p; d; }; |
|||
/ perl5 / { p; d; }; |
|||
/ procinfo / { p; d; }; |
|||
/ procps / { p; d; }; |
|||
/ portmap / { p; d; }; |
|||
/ psmisc / { p; d; }; |
|||
/ pciutils / { p; d; }; |
|||
/ raidtools / { p; d; }; |
|||
/ reiserfsprogs / { p; d; }; |
|||
/ rsync / { p; d; }; |
|||
/ rockplug / { p; d; }; |
|||
/ screen / { p; d; }; |
|||
/ syslinux / { p; d; }; |
|||
/ sed / { p; d; }; |
|||
/ setserial / { p; d; }; |
|||
/ shadow / { p; d; }; |
|||
/ sysfiles / { p; d; }; |
|||
/ sysklogd / { p; d; }; |
|||
/ sysvinit / { p; d; }; |
|||
/ tar / { p; d; }; |
|||
/ tcpdump / { p; d; }; |
|||
/ texinfo / { p; d; }; |
|||
/ time / { p; d; }; |
|||
/ unzip / { p; d; }; |
|||
/ util-linux / { p; d; }; |
|||
/ vim / { p; d; }; |
|||
/ vlock / { p; d; }; |
|||
/ wget / { p; d; }; |
|||
/ wireless-tools / { p; d; }; |
|||
/ xfree86 / { p; d; }; |
|||
/ x86info / { p; d; }; |
|||
/ zip / { p; d; }; |
|||
/ zlib / { p; d; }; |
|||
/ zsh/ { p; d; }; |
|||
|
|||
/ rock-doc / { p; d; }; |
|||
/ rock-src/ { p; d; }; |
|||
|
|||
# Some architecture-specifc-packages with missing deps |
|||
/ macosd / { s/^X /O / ; p; d; }; |
|||
|
|||
# Add architecture-specific-packages |
|||
/ alpha / { p; d; }; |
|||
/ mips / { p; d; }; |
|||
/ powerpc / { p; d; }; |
|||
/ sparc / { p; d; }; |
|||
/ x86 / { p; d; }; |
|||
|
|||
# kde-stuff |
|||
/ kdelibs / { p; d; }; |
|||
/ arts / { p; d; }; |
|||
/ glib / { p; d; }; |
|||
/ gtkdoc / { p; d; }; |
|||
/ openjade / { p; d; }; |
|||
/ docbookx / { p; d; }; |
|||
/ pkgconfig / { p; d; }; |
|||
/ audiofile / { p; d; }; |
|||
/ alsa / { p; d; }; |
|||
/ alsa-driver / { p; d; }; |
|||
/ fam / { p; d; }; |
|||
/ freetype / { p; d; }; |
|||
/ libart_lgpl23 / { p; d; }; |
|||
/ libxml2 / { p; d; }; |
|||
/ libxml / { p; d; }; |
|||
/ libxslt / { p; d; }; |
|||
/ mad / { p; d; }; |
|||
/ mkdosfs / { p; d; }; |
|||
/ bison / { p; d; }; |
|||
/ esound / { p; d; }; |
|||
/ tcp_wrappers / { p; d; }; |
|||
/ ogg-vorbis / { p; d; }; |
|||
/ pcre / { p; d; }; |
|||
/ qt / { p; d; }; |
|||
/ libmng / { p; d; }; |
|||
/ python / { p; d; }; |
|||
/ paragui / { p; d; }; |
|||
/ libsdl / { p; d; }; |
|||
/ libsdl_mixer / { p; d; }; |
|||
/ libsdl_image / { p; d; }; |
|||
/ nasm / { p; d; }; |
|||
/ readline / { p; d; }; |
|||
/ bdb33 / { p; d; }; |
|||
/ bdb41 / { p; d; }; |
|||
/ bdb42 / { p; d; }; |
|||
/ gdbm / { p; d; }; |
|||
/ gmp / { p; d; }; |
|||
/ tcltk / { p; d; }; |
|||
/ ruby / { p; d; }; |
|||
/ swig / { p; d; }; |
|||
/ guile / { p; d; }; |
|||
/ numpy / { p; d; }; |
|||
/ kdebase / { p; d; }; |
|||
/ openmotif / { p; d; }; |
|||
/ kdeaddons / { p; d; }; |
|||
/ kdeadmin / { p; d; }; |
|||
/ kdeartwork / { p; d; }; |
|||
/ kdebindings / { p; d; }; |
|||
/ kdeedu / { p; d; }; |
|||
/ kdegames / { p; d; }; |
|||
/ kdegraphics / { p; d; }; |
|||
/ kdemultimedia / { p; d; }; |
|||
/ kdenetwork / { p; d; }; |
|||
/ kdepim / { p; d; }; |
|||
/ kdesdk / { p; d; }; |
|||
/ kdetoys / { p; d; }; |
|||
/ kdeutils / { p; d; }; |
|||
/ koffice / { p; d; }; |
|||
/ koffice-i18n / { p; d; }; |
|||
/ kde-i18n-de / { p; d; }; |
|||
/ k3b / { p; d; }; |
|||
/ cdrtools / { p; d; }; |
|||
/ attr / { p; d; }; |
|||
/ acl / { p; d; }; |
|||
# Disabling the rest of packages |
|||
/.*/ { s/^X /O / ; p; d; };' |
|||
|
|||
@ -0,0 +1 @@ |
|||
4279863212 syslinux-2.08.tar.bz2 http://www.kernel.org/pub/linux/utils/boot/syslinux/ |
|||
@ -0,0 +1,573 @@ |
|||
# File generated by xf86config. |
|||
# and additional hand edited by Rene Rebe - ROCK Linux Project |
|||
# |
|||
# YOU MUST ONLY ADD A CARD SECTION AND MODIFY SOME MONITOR SETTINGS |
|||
# TO GET A WORKING X CONFIGURATION. |
|||
# |
|||
|
|||
# |
|||
# Copyright (c) 1999 by The XFree86 Project, Inc. |
|||
# |
|||
# Permission is hereby granted, free of charge, to any person obtaining a |
|||
# copy of this software and associated documentation files (the "Software"), |
|||
# to deal in the Software without restriction, including without limitation |
|||
# the rights to use, copy, modify, merge, publish, distribute, sublicense, |
|||
# and/or sell copies of the Software, and to permit persons to whom the |
|||
# Software is furnished to do so, subject to the following conditions: |
|||
# |
|||
# The above copyright notice and this permission notice shall be included in |
|||
# all copies or substantial portions of the Software. |
|||
# |
|||
# THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR |
|||
# IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY, |
|||
# FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL |
|||
# THE XFREE86 PROJECT BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER LIABILITY, |
|||
# WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM, OUT OF |
|||
# OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE |
|||
# SOFTWARE. |
|||
# |
|||
# Except as contained in this notice, the name of the XFree86 Project shall |
|||
# not be used in advertising or otherwise to promote the sale, use or other |
|||
# dealings in this Software without prior written authorization from the |
|||
# XFree86 Project. |
|||
# |
|||
|
|||
# ********************************************************************** |
|||
# Refer to the XF86Config(4/5) man page for details about the format of |
|||
# this file. |
|||
# ********************************************************************** |
|||
|
|||
# ********************************************************************** |
|||
# Module section -- this section is used to specify |
|||
# which dynamically loadable modules to load. |
|||
# ********************************************************************** |
|||
# |
|||
Section "Module" |
|||
|
|||
Load "dbe" # DBE (double buffer extension) |
|||
Load "ddc" # Display Data Channel extension |
|||
|
|||
# This loads the miscellaneous extensions module |
|||
SubSection "extmod" |
|||
Option "omit xfree86-dga" # don't initialise the DGA extension |
|||
Option "omit XFree86-VidModeExtension" # disable mode-switching-supoprt |
|||
EndSubSection |
|||
|
|||
# This loads the Type1 and FreeType font modules |
|||
Load "type1" |
|||
Load "freetype" |
|||
|
|||
# Load "glx" # GLX extension (OpenGL visuals) |
|||
# Load "dri" # Direct Rendering Interface extension (OpenGL) |
|||
|
|||
# Load "v4l" # Video 4 Linux extension (provides a xv adapter) |
|||
EndSection |
|||
|
|||
# this enabled normal users to use DRI - the Direct Rendering Extension. |
|||
# it is also possible to use a group to control access. |
|||
# |
|||
Section "DRI" |
|||
Mode 0666 |
|||
EndSection |
|||
|
|||
# ********************************************************************** |
|||
# Files section. This allows default font and rgb paths to be set |
|||
# ********************************************************************** |
|||
|
|||
Section "Files" |
|||
|
|||
# The location of the RGB database. Note, this is the name of the |
|||
# file minus the extension (like ".txt" or ".db"). There is normally |
|||
# no need to change the default. |
|||
|
|||
RgbPath "/usr/X11R6/lib/X11/rgb" |
|||
|
|||
# Multiple FontPath entries are allowed (which are concatenated together), |
|||
# as well as specifying multiple comma-separated entries in one FontPath |
|||
# command (or a combination of both methods) |
|||
# |
|||
# If you don't have a floating point coprocessor and emacs, Mosaic or other |
|||
# programs take long to start up, try moving the Type1 and Speedo directory |
|||
# to the end of this list (or comment them out). |
|||
# |
|||
|
|||
FontPath "/usr/X11R6/lib/X11/fonts/75dpi/:unscaled" |
|||
FontPath "/usr/X11R6/lib/X11/fonts/100dpi/:unscaled" |
|||
FontPath "/usr/X11R6/lib/X11/fonts/CID/" |
|||
FontPath "/usr/X11R6/lib/X11/fonts/PEX/" |
|||
FontPath "/usr/X11R6/lib/X11/fonts/Speedo/" |
|||
FontPath "/usr/X11R6/lib/X11/fonts/Type1/" |
|||
FontPath "/usr/X11R6/lib/X11/fonts/cyrillic/" |
|||
FontPath "/usr/X11R6/lib/X11/fonts/encodings/" |
|||
FontPath "/usr/X11R6/lib/X11/fonts/freefont/" |
|||
FontPath "/usr/X11R6/lib/X11/fonts/latin2/" |
|||
FontPath "/usr/X11R6/lib/X11/fonts/local/" |
|||
FontPath "/usr/X11R6/lib/X11/fonts/misc/" |
|||
FontPath "/usr/X11R6/lib/X11/fonts/sharefont" |
|||
FontPath "/usr/X11R6/lib/X11/fonts/TrueType" |
|||
|
|||
FontPath "/usr/share/ghostscript/fonts/" |
|||
|
|||
# The module search path. The default path is shown here. |
|||
|
|||
# ModulePath "/usr/X11R6/lib/modules" |
|||
|
|||
EndSection |
|||
|
|||
# ********************************************************************** |
|||
# Server flags section. |
|||
# ********************************************************************** |
|||
|
|||
Section "ServerFlags" |
|||
|
|||
# Uncomment this to cause a core dump at the spot where a signal is |
|||
# received. This may leave the console in an unusable state, but may |
|||
# provide a better stack trace in the core dump to aid in debugging |
|||
|
|||
# Option "NoTrapSignals" |
|||
|
|||
# Uncomment this to disable the <Crtl><Alt><BS> server abort sequence |
|||
# This allows clients to receive this key event. |
|||
|
|||
# Option "DontZap" |
|||
|
|||
# Uncomment this to disable the <Crtl><Alt><KP_+>/<KP_-> mode switching |
|||
# sequences. This allows clients to receive these key events. |
|||
|
|||
# Option "Dont Zoom" |
|||
|
|||
# Uncomment this to disable tuning with the xvidtune client. With |
|||
# it the client can still run and fetch card and monitor attributes, |
|||
# but it will not be allowed to change them. If it tries it will |
|||
# receive a protocol error. |
|||
|
|||
# Option "DisableVidModeExtension" |
|||
|
|||
# Uncomment this to enable the use of a non-local xvidtune client. |
|||
|
|||
# Option "AllowNonLocalXvidtune" |
|||
|
|||
# Uncomment this to disable dynamically modifying the input device |
|||
# (mouse and keyboard) settings. |
|||
|
|||
# Option "DisableModInDev" |
|||
|
|||
# Uncomment this to enable the use of a non-local client to |
|||
# change the keyboard or mouse settings (currently only xset). |
|||
|
|||
# Option "AllowNonLocalModInDev" |
|||
|
|||
EndSection |
|||
|
|||
# ********************************************************************** |
|||
# Input devices |
|||
# ********************************************************************** |
|||
|
|||
# ********************************************************************** |
|||
# Core keyboard's InputDevice section |
|||
# ********************************************************************** |
|||
|
|||
Section "InputDevice" |
|||
|
|||
Identifier "Keyboard1" |
|||
Driver "Keyboard" |
|||
|
|||
# For most OSs the protocol can be omitted (it defaults to "Standard"). |
|||
# When using XQUEUE (only for SVR3 and SVR4, but not Solaris), |
|||
# uncomment the following line. |
|||
|
|||
# Option "Protocol" "Xqueue" |
|||
|
|||
Option "AutoRepeat" "250 30" |
|||
|
|||
# Specify which keyboard LEDs can be user-controlled (eg, with xset(1)) |
|||
# Option "Xleds" "1 2 3" |
|||
|
|||
# Option "LeftAlt" "Meta" |
|||
# Option "RightAlt" "ModeShift" |
|||
|
|||
# To customise the XKB settings to suit your keyboard, modify the |
|||
# lines below (which are the defaults). For example, for a non-U.S. |
|||
# keyboard, you will probably want to use: |
|||
# Option "XkbModel" "pc102" |
|||
# If you have a US Microsoft Natural keyboard, you can use: |
|||
# Option "XkbModel" "microsoft" |
|||
# |
|||
# Then to change the language, change the Layout setting. |
|||
# For example, a german layout can be obtained with: |
|||
# Option "XkbLayout" "de" |
|||
# or: |
|||
# Option "XkbLayout" "de" |
|||
# Option "XkbVariant" "nodeadkeys" |
|||
# |
|||
# If you'd like to switch the positions of your capslock and |
|||
# control keys, use: |
|||
# Option "XkbOptions" "ctrl:swapcaps" |
|||
|
|||
# These are the default XKB settings for XFree86 |
|||
# Option "XkbRules" "xfree86" |
|||
# Option "XkbModel" "pc101" |
|||
# Option "XkbLayout" "us" |
|||
# Option "XkbVariant" "" |
|||
# Option "XkbOptions" "" |
|||
|
|||
# Option "XkbDisable" |
|||
|
|||
Option "XkbRules" "xfree86" |
|||
Option "XkbModel" "pc105" |
|||
# Option "XkbLayout" "de" # german keyboard layout |
|||
# Option "XkbVariant" "nodeadkeys" # normally not wanted |
|||
|
|||
EndSection |
|||
|
|||
|
|||
# ********************************************************************** |
|||
# Core Pointer's InputDevice section |
|||
# ********************************************************************** |
|||
|
|||
# auto-detected mouse |
|||
Section "InputDevice" |
|||
|
|||
# Identifier and driver |
|||
|
|||
Identifier "Mouse1" |
|||
Driver "mouse" |
|||
Option "Protocol" "Auto" |
|||
Option "Device" "/dev/input/mice" |
|||
|
|||
#Option "Emulate3Buttons" "true" # for a two button touch-pad |
|||
EndSection |
|||
|
|||
# for a normal ps2 mouse: |
|||
Section "InputDevice" |
|||
# |
|||
# Identifier and driver |
|||
# |
|||
Identifier "Mouse2" |
|||
Driver "mouse" |
|||
Option "Protocol" "Auto" |
|||
Option "Device" "/dev/misc/psaux" |
|||
|
|||
# #Option "Emulate3Buttons" "true" # for a two button touch-pad |
|||
EndSection |
|||
|
|||
# for a normal serial mouse |
|||
#Section "InputDevice" |
|||
# |
|||
# Identifier "Mouse1" |
|||
# Driver "mouse" |
|||
# Option "Protocol" "Microsoft" |
|||
# Option "Device" "/dev/tts/0" |
|||
# |
|||
# #Option "Emulate3Buttons" "true" # for a two button touch-pad |
|||
#EndSection |
|||
|
|||
# for a usb Logitech wheel mouse |
|||
#Section "InputDevice" |
|||
# |
|||
# Identifier "Mouse1" |
|||
# Driver "mouse" |
|||
# Option "Protocol" "IMPS/2" |
|||
# Option "Device" "/dev/input/mouse0" |
|||
# Option "Buttons" "5" |
|||
# Option "ZaxisMapping" "4 5" |
|||
# |
|||
#EndSection |
|||
|
|||
|
|||
# ********************************************************************** |
|||
# Other input device sections |
|||
# this is optional and is required only if you |
|||
# are using extended input devices. This is for example only. Refer |
|||
# to the XF86Config man page for a description of the options. |
|||
# ********************************************************************** |
|||
# |
|||
# Section "InputDevice" |
|||
# Identifier "Mouse2" |
|||
# Driver "mouse" |
|||
# Option "Protocol" "MouseMan" |
|||
# Option "Device" "/dev/mouse2" |
|||
# EndSection |
|||
# |
|||
# Section "InputDevice" |
|||
# Identifier "Spaceball" |
|||
# Driver "magellan" |
|||
# Option "Device" "/dev/cua0" |
|||
# EndSection |
|||
# |
|||
# Section "InputDevice" |
|||
# Identifier "Spaceball2" |
|||
# Driver "spaceorb" |
|||
# Option "Device" "/dev/cua0" |
|||
# EndSection |
|||
# |
|||
# Section "InputDevice" |
|||
# Identifier "Touchscreen0" |
|||
# Driver "microtouch" |
|||
# Option "Device" "/dev/ttyS0" |
|||
# Option "MinX" "1412" |
|||
# Option "MaxX" "15184" |
|||
# Option "MinY" "15372" |
|||
# Option "MaxY" "1230" |
|||
# Option "ScreenNumber" "0" |
|||
# Option "ReportingMode" "Scaled" |
|||
# Option "ButtonNumber" "1" |
|||
# Option "SendCoreEvents" |
|||
# EndSection |
|||
# |
|||
# Section "InputDevice" |
|||
# Identifier "Touchscreen1" |
|||
# Driver "elo2300" |
|||
# Option "Device" "/dev/ttyS0" |
|||
# Option "MinX" "231" |
|||
# Option "MaxX" "3868" |
|||
# Option "MinY" "3858" |
|||
# Option "MaxY" "272" |
|||
# Option "ScreenNumber" "0" |
|||
# Option "ReportingMode" "Scaled" |
|||
# Option "ButtonThreshold" "17" |
|||
# Option "ButtonNumber" "1" |
|||
# Option "SendCoreEvents" |
|||
# EndSection |
|||
|
|||
# Section "InputDevice" |
|||
# Identifier "Tablet1" |
|||
# Driver "summa" |
|||
# Option "Device" "/dev/ttyS0" |
|||
# Option "MinX" "231" |
|||
# Option "MaxX" "3868" |
|||
# Option "MinY" "3858" |
|||
# Option "MaxY" "272" |
|||
# Option "ScreenNumber" "0" |
|||
# Option "ReportingMode" "Scaled" |
|||
# Option "ButtonThreshold" "17" |
|||
# Option "ButtonNumber" "1" |
|||
# Option "SendCoreEvents" |
|||
# Option "BaudRate" "19200" |
|||
# Option "DataBits" "8" |
|||
# Option "StopBits" "1" |
|||
# Option "Parity" "Odd" |
|||
# Option "FlowControl" "Xoff" |
|||
# Option "VTime" "10" |
|||
# Option "VMin" "1" |
|||
# EndSection |
|||
|
|||
|
|||
# ********************************************************************** |
|||
# Monitor section |
|||
# ********************************************************************** |
|||
|
|||
# Any number of monitor sections may be present |
|||
|
|||
Section "Monitor" |
|||
|
|||
Identifier "Monitor1" |
|||
|
|||
# NOTE: THE VALUES HERE ARE EXAMPLES ONLY. REFER TO YOUR MONITOR'S |
|||
# USER MANUAL FOR THE CORRECT NUMBERS !! |
|||
|
|||
# normally uncomment this lines |
|||
# HorizSync 24.0 - 80.0 |
|||
# VertRefresh 50-100 |
|||
|
|||
# overwrite the screen dimensions (in mm) e.g. to get another virtual dpi |
|||
# value |
|||
# DisplaySize 345 260 |
|||
|
|||
# HorizSync is in kHz unless units are specified. |
|||
# HorizSync may be a comma separated list of discrete values, or a |
|||
# comma separated list of ranges of values. |
|||
# HorizSync 30-64 # multisync |
|||
# HorizSync 31.5, 35.2 # multiple fixed sync frequencies |
|||
# HorizSync 15-25, 30-50 # multiple ranges of sync frequencies |
|||
|
|||
# VertRefresh is in Hz unless units are specified. |
|||
# VertRefresh may be a comma separated list of discrete values, or a |
|||
# comma separated list of ranges of values. |
|||
# VertRefresh 50-100 |
|||
|
|||
# some mode examples 1,2 selfmade - 3 from fbset |
|||
# (only needed for low-level tricks, exotic Laptops or other LCD's) |
|||
# |
|||
# Mode "1152x900" |
|||
# DotClock 120 |
|||
# HTimings 1152 1200 1312 1528 |
|||
# VTimings 900 910 946 985 |
|||
# EndMode |
|||
# Mode "1152x900-2" |
|||
# DotClock 100 |
|||
# HTimings 1152 1200 1312 1528 |
|||
# VTimings 900 910 946 985 |
|||
# EndMode |
|||
# Mode "1152x864" |
|||
# DotClock 105.810 |
|||
# HTimings 1152 1184 1312 1504 |
|||
# VTimings 864 868 872 902 |
|||
# Flags "-HSync" "-VSync" |
|||
# EndMode |
|||
|
|||
# for framebuffer devices you might want to simply add |
|||
# the 'fbset -x' output here. |
|||
|
|||
EndSection |
|||
|
|||
|
|||
# ********************************************************************** |
|||
# Graphics device section |
|||
# ********************************************************************** |
|||
|
|||
# Any number of graphics device sections may be present |
|||
|
|||
Section "Device" |
|||
Identifier "Card1" |
|||
|
|||
# Use this for framebuffer devices - should work on most systems. |
|||
Driver "fbdev" |
|||
Option "fbdev" "/dev/fb/0" |
|||
|
|||
# Driver "vga" # mga, ati, nv, sis, vesa ... |
|||
# # Option "BackingStore" |
|||
|
|||
# # Some driver accept an UseFBDev option (e.g. radeon) to switch the |
|||
# # mode via the Linux framebuffer layer. Needed e.g. as workaround for |
|||
# # iBooks. |
|||
# # Option "UseFBDev" |
|||
|
|||
# # The BuID is only required for multi-monitor configs or some fbdev drivers |
|||
# # BusID "PCI:1:5:0" |
|||
# # Screen 0 # Screen of a dual-head mga card |
|||
|
|||
# # Option "NoHal" # do not use the binary-only Matrox HAL library |
|||
# # Option "AGPMode2x" |
|||
|
|||
EndSection |
|||
|
|||
# Matrox Millenium 4xx, Ati or NVidia second-head |
|||
#Section "Device" |
|||
# Identifier "Card2" |
|||
# Driver "mga" # or other dual-able cards like ati, nv |
|||
# # Option "BackingStore" |
|||
|
|||
# BusID "PCI:1:5:0" |
|||
# Screen 1 |
|||
# |
|||
# # Option "NoHal" # do not use the binary-only Matrox HAL library |
|||
# # Option "AGPMode2x" |
|||
|
|||
# # Option "Tv" "yes" |
|||
# # Option "TVStandard" "PAL" |
|||
# # Option "CableType" "SCART_COMPOSITE" |
|||
#EndSection |
|||
|
|||
# ********************************************************************** |
|||
# Screen sections |
|||
# ********************************************************************** |
|||
|
|||
# Any number of screen sections may be present. Each describes |
|||
# the configuration of a single screen. A single specific screen section |
|||
# may be specified from the X server command line with the "-screen" |
|||
# option. |
|||
Section "Screen" |
|||
Identifier "Screen1" |
|||
Device "Card1" |
|||
Monitor "Monitor1" |
|||
DefaultDepth 16 |
|||
|
|||
Subsection "Display" |
|||
Depth 4 |
|||
Modes "1024x768" "800x600" "640x480" |
|||
ViewPort 0 0 |
|||
EndSubsection |
|||
Subsection "Display" |
|||
Depth 8 |
|||
Modes "1024x768" "800x600" "640x400" |
|||
ViewPort 0 0 |
|||
EndSubsection |
|||
Subsection "Display" |
|||
Depth 16 |
|||
Modes "1024x768" "800x600" "640x480" |
|||
ViewPort 0 0 |
|||
EndSubsection |
|||
Subsection "Display" |
|||
Depth 24 |
|||
Modes "1024x768" "800x600" "640x480" |
|||
ViewPort 0 0 |
|||
EndSubsection |
|||
Subsection "Display" |
|||
Depth 32 |
|||
Modes "1024x768" "800x600" "640x480" |
|||
ViewPort 0 0 |
|||
EndSubsection |
|||
EndSection |
|||
|
|||
#Section "Screen" |
|||
# Identifier "Screen2" |
|||
# Device "Card2" |
|||
# Monitor "Monitor1" |
|||
# DefaultDepth 16 |
|||
# |
|||
# Subsection "Display" |
|||
# Depth 16 |
|||
# Modes "1024x768" "800x600" "640x480" |
|||
# ViewPort 0 0 |
|||
# EndSubsection |
|||
#EndSection |
|||
|
|||
#Section "Screen" |
|||
# Identifier "ScreenTV" |
|||
# Device "CardTV" |
|||
# Monitor "Monitor1" |
|||
# DefaultDepth 16 |
|||
# |
|||
# Subsection "Display" |
|||
# Depth 16 |
|||
# Modes "640x480" |
|||
# ViewPort 0 0 |
|||
# EndSubsection |
|||
#EndSection |
|||
|
|||
|
|||
# ********************************************************************** |
|||
# ServerLayout sections. |
|||
# ********************************************************************** |
|||
|
|||
# Any number of ServerLayout sections may be present. Each describes |
|||
# the way multiple screens are organised. A specific ServerLayout |
|||
# section may be specified from the X server command line with the |
|||
# "-layout" option. In the absence of this, the first section is used. |
|||
# When now ServerLayout section is present, the first Screen section |
|||
# is used alone. |
|||
|
|||
Section "ServerLayout" |
|||
|
|||
# The Identifier line must be present |
|||
Identifier "Simple Layout" |
|||
|
|||
# Each Screen line specifies a Screen section name, and optionally |
|||
# the relative position of other screens. The four names after |
|||
# primary screen name are the screens to the top, bottom, left and right |
|||
# of the primary screen. In this example, screen 2 is located to the |
|||
# right of screen 1. |
|||
|
|||
Screen "Screen1" #LeftOf "Screen2" |
|||
#Screen "Screen2" |
|||
#Screen "ScreenTV" |
|||
|
|||
# Each InputDevice line specifies an InputDevice section name and |
|||
# optionally some options to specify the way the device is to be |
|||
# used. Those options include "CorePointer", "CoreKeyboard" and |
|||
# "SendCoreEvents". |
|||
|
|||
InputDevice "Mouse1" "CorePointer" |
|||
InputDevice "Mouse2" "SendCoreEvents" |
|||
InputDevice "Keyboard1" "CoreKeyboard" |
|||
|
|||
# It is possible to specify secondary input devices which might not |
|||
# be pressend on X startup. Nice for laptops with temporary external |
|||
# mices ;-)! |
|||
|
|||
# InputDevice "Mouse2" "SendCoreEvents" |
|||
# InputDevice "Tablet1" |
|||
|
|||
EndSection |
|||
|
|||
@ -0,0 +1,84 @@ |
|||
# --- ROCK-COPYRIGHT-NOTE-BEGIN --- |
|||
# |
|||
# This copyright note is auto-generated by ./scripts/Create-CopyPatch. |
|||
# Please add additional copyright information _after_ the line containing |
|||
# the ROCK-COPYRIGHT-NOTE-END tag. Otherwise it might get removed by |
|||
# the ./scripts/Create-CopyPatch script. Do not edit this copyright text! |
|||
# |
|||
# ROCK Linux: rock-src/target/livecd/fixedfiles/inittab |
|||
# ROCK Linux is Copyright (C) 1998 - 2003 Clifford Wolf |
|||
# |
|||
# This program is free software; you can redistribute it and/or modify |
|||
# it under the terms of the GNU General Public License as published by |
|||
# the Free Software Foundation; either version 2 of the License, or |
|||
# (at your option) any later version. A copy of the GNU General Public |
|||
# License can be found at Documentation/COPYING. |
|||
# |
|||
# Many people helped and are helping developing ROCK Linux. Please |
|||
# have a look at http://www.rocklinux.org/ and the Documentation/TEAM |
|||
# file for details. |
|||
# |
|||
# --- ROCK-COPYRIGHT-NOTE-END --- |
|||
# |
|||
# See "man 5 inittab" for details. |
|||
# |
|||
|
|||
# The default runlevel. |
|||
id:2:initdefault: |
|||
|
|||
# /etc/rc.d executes the S and K scripts upon change |
|||
# of runlevel. |
|||
# |
|||
# Runlevels 0 and 6 are halt and reboot. |
|||
# Runlevels 1-5 are multi-user. |
|||
# Runlevel S is single user. |
|||
l0:0:wait:/etc/rc.d/rc |
|||
l1:1:wait:/etc/rc.d/rc |
|||
l2:2:wait:/etc/rc.d/rc |
|||
l3:3:wait:/etc/rc.d/rc |
|||
l4:4:wait:/etc/rc.d/rc |
|||
l5:5:wait:/etc/rc.d/rc |
|||
l6:6:wait:/etc/rc.d/rc |
|||
ls:S:wait:/etc/rc.d/rc |
|||
~~:S:wait:/sbin/sulogin |
|||
|
|||
# What to do when CTRL-ALT-DEL is pressed. |
|||
ca:12345:ctrlaltdel:/sbin/shutdown -r now |
|||
|
|||
# /sbin/agetty invocations for the runlevels. |
|||
# |
|||
# The "id" field MUST be the same as the last |
|||
# characters of the device (after "tty"). |
|||
# |
|||
# Format: |
|||
# <id>:<runlevels>:<action>:<process> |
|||
|
|||
# |
|||
# Maintenace Console on /dev/console |
|||
# |
|||
#1:12345:respawn:/sbin/agetty -L -i -I '\012\015\012Maintenance Console:\012' 9600 console linux |
|||
|
|||
# |
|||
# Virtual Consoles 1-6 |
|||
# |
|||
# to enable the SAK blocking feature add the options "-t 10 -s /etc/sakmsg" |
|||
# |
|||
# to clear the screen on ANSI terminals add the option "-I '\033[H\033[J'" |
|||
# |
|||
# there are 3 Issue files: |
|||
# /etc/issue ........ Simple login screen for consoles or terminals |
|||
# /etc/issue.ansi ... Login screen for ANSI consoles or terminals |
|||
# /etc/issue.net .... Login message for network connections |
|||
# |
|||
1:12345:respawn:/sbin/agetty -L -i -I '\012\015\012Maintenance Console:\012' -l /sbin/login-shell -n 38400 vc/1 linux |
|||
2:12345:respawn:/sbin/agetty -f /etc/issue.ansi -l /sbin/login-shell -n 38400 vc/2 linux |
|||
3:12345:respawn:/sbin/agetty -f /etc/issue.ansi -l /sbin/login-shell -n 38400 vc/3 linux |
|||
4:12345:respawn:/sbin/agetty -f /etc/issue.ansi -l /sbin/login-shell -n 38400 vc/4 linux |
|||
5:12345:respawn:/sbin/agetty -f /etc/issue.ansi -l /sbin/login-shell -n 38400 vc/5 linux |
|||
6:12345:respawn:/sbin/agetty -f /etc/issue.ansi -l /sbin/login-shell -n 38400 vc/6 linux |
|||
|
|||
# |
|||
# A X display manager (multiplexer) |
|||
# |
|||
X:5:respawn:/usr/X11/bin/startxdm |
|||
|
|||
@ -0,0 +1,3 @@ |
|||
#!/bin/sh |
|||
echo "root and rocker's password is 'rock'" |
|||
exec su - rocker -c "/bin/bash --login" |
|||
@ -0,0 +1,253 @@ |
|||
#!/bin/sh |
|||
# |
|||
# --- ROCK-COPYRIGHT-NOTE-BEGIN --- |
|||
# |
|||
# This copyright note is auto-generated by ./scripts/Create-CopyPatch. |
|||
# Please add additional copyright information _after_ the line containing |
|||
# the ROCK-COPYRIGHT-NOTE-END tag. Otherwise it might get removed by |
|||
# the ./scripts/Create-CopyPatch script. Do not edit this copyright text! |
|||
# |
|||
# ROCK Linux: rock-src/package/base/sysfiles/system.init |
|||
# ROCK Linux is Copyright (C) 1998 - 2003 Clifford Wolf |
|||
# |
|||
# This program is free software; you can redistribute it and/or modify |
|||
# it under the terms of the GNU General Public License as published by |
|||
# the Free Software Foundation; either version 2 of the License, or |
|||
# (at your option) any later version. A copy of the GNU General Public |
|||
# License can be found at Documentation/COPYING. |
|||
# |
|||
# Many people helped and are helping developing ROCK Linux. Please |
|||
# have a look at http://www.rocklinux.org/ and the Documentation/TEAM |
|||
# file for details. |
|||
# |
|||
# --- ROCK-COPYRIGHT-NOTE-END --- |
|||
# |
|||
# Desc: System bootup and shutdown |
|||
# Runlevel: 01 rcX rc1 rc2 rc3 rc4 rc5 |
|||
# |
|||
|
|||
title() { |
|||
local x w="$( stty size 2>/dev/null </dev/tty | cut -d" " -f2 )" |
|||
[ -z "$w" ] && w="$( stty size </dev/console | cut -d" " -f2 )" |
|||
for (( x=1; x<w; x++ )) do echo -n .; done |
|||
echo -e "\e[222G\e[3D v \r\e[36m$* \e[0m" |
|||
error=0 |
|||
} |
|||
|
|||
status() { |
|||
if [ $error -eq 0 ] |
|||
then |
|||
echo -e "\e[1A\e[222G\e[4D\e[32m :-)\e[0m" |
|||
else |
|||
echo -e "\e[1A\e[222G\e[4D\a\e[1;31m :-(\e[0m" |
|||
fi |
|||
} |
|||
|
|||
case "$1" in |
|||
start) |
|||
title "Runnind depmod ..." |
|||
/sbin/depmod -a || error=$? |
|||
status |
|||
|
|||
title "Mounting /sys, /dev/shm and /dev/pts." |
|||
mount -n /sys 2> /dev/null |
|||
mount -n /dev/shm || error=$? |
|||
mount -n /dev/pts 2> /dev/null |
|||
if [ -f /etc/conf/hardware ] ; then |
|||
. /etc/conf/hardware |
|||
fi |
|||
status |
|||
|
|||
title "Configuring the /dev filesystem ..." |
|||
sh /etc/conf/devfs || error=$? |
|||
status |
|||
|
|||
title "Configuring hardware by activating rockplug." |
|||
echo "/sbin/rockplug" > /proc/sys/kernel/hotplug |
|||
for file in /etc/rockplug/*.init ; do |
|||
[ -f $file ] && $file start |
|||
done |
|||
status |
|||
|
|||
title "Loading kernel modules and configuring the kernel." |
|||
sh /etc/conf/kernel || error=$? |
|||
|
|||
[ -f /etc/conf/clock ] && . /etc/conf/clock |
|||
if [ "$clock_tz" = localtime ] ; then |
|||
status |
|||
|
|||
title "Setting kernel clock to local time." |
|||
hwclock --hctosys --localtime || error=$? |
|||
fi |
|||
if [ "$clock_rtc" ] ; then |
|||
status |
|||
|
|||
title "Setting enhanced real time clock precision to $clock_rtc." |
|||
if [ -w /proc/sys/dev/rtc/max-user-freq ] ; then |
|||
echo $clock_rtc > /proc/sys/dev/rtc/max-user-freq || error=$? |
|||
else |
|||
echo "No /proc/sys/dev/rtc/max-user-freq found." |
|||
fi |
|||
fi |
|||
status |
|||
|
|||
title "Setting hostname to $(cat /etc/HOSTNAME)." |
|||
hostname "$(cat /etc/HOSTNAME)" || error=$? |
|||
status |
|||
|
|||
title "Refresh utmp, delete lock and tmp files and other stuff." |
|||
find /var/lock /var/run /tmp -mindepth 1 -print0 2> /dev/null | xargs --null rm -rf |
|||
rm -f /etc/nologin /nologin /fastboot ; touch /var/run/utmp |
|||
chmod 664 /var/run/utmp ; chown root:tty /var/run/utmp |
|||
status |
|||
|
|||
title "Writing /var/log/boot.msg." |
|||
klogd -f /var/log/boot.msg -o ; dmesg -n 3 |
|||
status |
|||
|
|||
title "Setting keyboard keymappings." |
|||
if [ -L /etc/default.keymap ] ; then |
|||
mapfile=$(ls -l /etc/default.keymap | sed 's,.* -> ,,') |
|||
loadkeys $mapfile || error=$? |
|||
elif [ -f /etc/default.keymap ] ; then |
|||
loadkeys /etc/default.keymap || error=$? |
|||
else |
|||
echo "No /etc/default.keymap found." |
|||
fi |
|||
status |
|||
|
|||
title "Setting keyboard repeat rate and delay time." |
|||
kbd_rate=30; kbd_delay=250 |
|||
[ -f /etc/conf/kbd ] && . /etc/conf/kbd |
|||
/usr/bin/kbdrate -r $kbd_rate -d $kbd_delay < /dev/console || error=$? |
|||
status |
|||
|
|||
title "Setting console screen font." |
|||
if [ -L /etc/default.vcfont ] ; then |
|||
fontfile=$(ls -l /etc/default.vcfont | sed 's,.* -> ,,') |
|||
setfont $fontfile || error=$? |
|||
elif [ -f /etc/default.vcfont ] ; then |
|||
setfont /etc/default.vcfont || error=$? |
|||
else |
|||
echo "No /etc/default.vcfont found." |
|||
fi |
|||
status |
|||
|
|||
title "Setting console terminal type and blank interval." |
|||
con_term=linux; con_blank=0 |
|||
[ -f /etc/conf/console ] && . /etc/conf/console |
|||
/usr/bin/setterm -term $con_term -blank $con_blank > /dev/console || error=$? |
|||
status |
|||
|
|||
title "Setting up loopback networking." |
|||
ip link set lo up || error=$? |
|||
ip addr add 127.0.0.1/8 dev lo || error=$? |
|||
ip route add 127/8 dev lo || error=$? |
|||
status |
|||
|
|||
title "Setting overflow UID and GID kernel parameters." |
|||
sysctl -w kernel.overflowuid=$(id -u nobody) > /dev/null || error=$? |
|||
sysctl -w kernel.overflowgid=$(id -g nobody) > /dev/null || error=$? |
|||
status |
|||
|
|||
title "Reading /etc/sysctl.conf file." |
|||
sysctl -p || error=$? |
|||
status |
|||
|
|||
title "Initializing kernel random number generator." |
|||
if [ -e /var/state/random-seed ] ; then |
|||
cat /var/state/random-seed >/dev/urandom || error=$? |
|||
fi |
|||
status |
|||
|
|||
title "Running ldconfig." |
|||
/sbin/ldconfig >/dev/null 2>&1 || error=$? |
|||
status |
|||
|
|||
title "Setting mixer devices Master and PCM to 65%." |
|||
/usr/bin/amixer sset PCM 20 >/dev/null 2>&1 || error=$? |
|||
/usr/bin/amixer sset PCM unmute >/dev/null 2>&1 || error=$? |
|||
/usr/bin/amixer sset Master 20 >/dev/null 2>&1 || error=$? |
|||
/usr/bin/amixer sset Master unmute >/dev/null 2>&1 || error=$? |
|||
status |
|||
;; |
|||
|
|||
stop) |
|||
title "Saving /var/log/init.msg and /var/log/boot.msg." |
|||
touch /var/log/init.msg /var/log/boot.msg || error=$? |
|||
mv /var/log/init.msg /var/log/init.old || error=$? |
|||
mv /var/log/boot.msg /var/log/boot.old || error=$? |
|||
status |
|||
|
|||
title "Writing a wtmp record." |
|||
if [ "$RUNLEVEL" = 0 ] ; then halt -w || error=$? |
|||
else reboot -w || error=$? ; fi |
|||
status |
|||
|
|||
title "Saving kernel random seed." |
|||
dd if=/dev/urandom of=/var/state/random-seed count=1 2> /dev/null |
|||
status |
|||
|
|||
title "Sending all processes a SIGTERM (15)." |
|||
killall5 -15 || error=$? ; sleep 5 |
|||
status |
|||
|
|||
title "Sending all processes a 2nd SIGTERM (15)." |
|||
killall5 -15 || error=$? ; sleep 5 |
|||
status |
|||
|
|||
title "Sending all processes a SIGKILL (9)." |
|||
killall5 -9 || error=$? ; sleep 5 |
|||
status |
|||
|
|||
title "Turning off swap devices." |
|||
swapoff -a || error=$? |
|||
sync ; sleep 1 |
|||
status |
|||
|
|||
title "Remounting sync/ro and umount filesystems." |
|||
cut -d' ' -f-3 /etc/mtab /proc/mounts | sort -k2 -u -r | \ |
|||
while read dev dir fs ; do |
|||
[ "$dir" = "/" ] && continue |
|||
[ "$dir" = "/dev" ] && continue |
|||
[ "$dir" = "/dev/shm" ] && continue |
|||
[ "$dir" = "/proc" ] && continue |
|||
[ "$dir" = "/sys" ] && continue |
|||
[ "$dir" = "/tmp" ] && continue |
|||
echo "Umounting $dev on $dir ($fs)." |
|||
mount -o remount,sync $dir |
|||
mount -o remount,ro $dir |
|||
umount $dir |
|||
done |
|||
status |
|||
|
|||
title "Unmounting remaining file systems." |
|||
grep -E -v '^none (/|[a-z]+:) ' /proc/mounts > /etc/mtab |
|||
sync ; sleep 1 ; sync |
|||
umount -vnra -t nodevfs,proc,sysfs,shm |
|||
mount -vn -o remount,sync / |
|||
mount -vn -o remount,ro / |
|||
sleep 1 ; sync ; sleep 1 |
|||
status |
|||
|
|||
command="" |
|||
[ "$RUNLEVEL" = 0 ] && command=halt |
|||
[ "$RUNLEVEL" = 6 ] && command=reboot |
|||
if [ -n "$command" ] ; then |
|||
echo "Going to $command the system ..." |
|||
$command -d -f -i -p |
|||
while true ; do sleep 1 ; done |
|||
fi |
|||
;; |
|||
|
|||
restart) |
|||
$0 stop; $0 start |
|||
;; |
|||
|
|||
*) |
|||
echo "Usage: $0 { start | stop }" |
|||
exit 1 ;; |
|||
|
|||
esac |
|||
|
|||
exit 0 |
|||
@ -0,0 +1,128 @@ |
|||
|
|||
# --- ROCK-COPYRIGHT-NOTE-BEGIN --- |
|||
# |
|||
# This copyright note is auto-generated by ./scripts/Create-CopyPatch. |
|||
# Please add additional copyright information _after_ the line containing |
|||
# the ROCK-COPYRIGHT-NOTE-END tag. Otherwise it might get removed by |
|||
# the ./scripts/Create-CopyPatch script. Do not edit this copyright text! |
|||
# |
|||
# ROCK Linux: rock-src/target/bootdisk/kernel.conf |
|||
# ROCK Linux is Copyright (C) 1998 - 2003 Clifford Wolf |
|||
# |
|||
# This program is free software; you can redistribute it and/or modify |
|||
# it under the terms of the GNU General Public License as published by |
|||
# the Free Software Foundation; either version 2 of the License, or |
|||
# (at your option) any later version. A copy of the GNU General Public |
|||
# License can be found at Documentation/COPYING. |
|||
# |
|||
# Many people helped and are helping developing ROCK Linux. Please |
|||
# have a look at http://www.rocklinux.org/ and the Documentation/TEAM |
|||
# file for details. |
|||
# |
|||
# --- ROCK-COPYRIGHT-NOTE-END --- |
|||
|
|||
# the useful magic rq |
|||
CONFIG_DEBUG_KERNEL=y |
|||
CONFIG_MAGIC_SYSRQ=y |
|||
|
|||
# will use alsa |
|||
CONFIG_SOUND=m |
|||
|
|||
# Console drivers |
|||
CONFIG_VGA_CONSOLE=y |
|||
CONFIG_VIDEO_SELECT=y |
|||
|
|||
# all fbs in-kernel |
|||
CONFIG_FB=y |
|||
CONFIG_DUMMY_CONSOLE=y |
|||
CONFIG_FB_RIVA=y |
|||
CONFIG_FB_CLGEN=y |
|||
CONFIG_FB_PM2=y |
|||
# CONFIG_FB_PM2_FIFO_DISCONNECT is not set |
|||
# CONFIG_FB_PM2_PCI is not set |
|||
CONFIG_FB_PM3=y |
|||
CONFIG_FB_CYBER2000=y |
|||
CONFIG_FB_VESA=y |
|||
#eek! this ovverides all others! evil! |
|||
CONFIG_FB_VGA16=n |
|||
CONFIG_FB_HGA=y |
|||
CONFIG_VIDEO_SELECT=y |
|||
CONFIG_FB_MATROX=y |
|||
CONFIG_FB_MATROX_MILLENIUM=y |
|||
CONFIG_FB_MATROX_MYSTIQUE=y |
|||
CONFIG_FB_MATROX_G450=y |
|||
CONFIG_FB_MATROX_G100=y |
|||
# CONFIG_FB_MATROX_I2C is not set |
|||
# CONFIG_FB_MATROX_MAVEN is not set |
|||
# CONFIG_FB_MATROX_PROC is not set |
|||
# CONFIG_FB_MATROX_MULTIHEAD is not set |
|||
CONFIG_FB_ATY=y |
|||
CONFIG_FB_ATY_GX=y |
|||
CONFIG_FB_ATY_CT=y |
|||
# CONFIG_FB_ATY_GENERIC_LCD is not set |
|||
CONFIG_FB_RADEON=y |
|||
CONFIG_FB_ATY128=y |
|||
CONFIG_FB_INTEL=y |
|||
CONFIG_FB_SIS=y |
|||
CONFIG_FB_SIS_300=y |
|||
CONFIG_FB_SIS_315=y |
|||
CONFIG_FB_NEOMAGIC=y |
|||
CONFIG_FB_3DFX=y |
|||
CONFIG_FB_VOODOO1=y |
|||
CONFIG_FB_TRIDENT=y |
|||
CONFIG_FB_IT8181=y |
|||
# CONFIG_FB_VIRTUAL is not set |
|||
CONFIG_FBCON_ADVANCED=y |
|||
CONFIG_FBCON_MFB=y |
|||
# CONFIG_FBCON_CFB2 is not set |
|||
CONFIG_FBCON_CFB4=y |
|||
CONFIG_FBCON_CFB8=y |
|||
CONFIG_FBCON_CFB16=y |
|||
CONFIG_FBCON_CFB24=y |
|||
CONFIG_FBCON_CFB32=y |
|||
# CONFIG_FBCON_AFB is not set |
|||
# CONFIG_FBCON_ILBM is not set |
|||
# CONFIG_FBCON_IPLAN2P2 is not set |
|||
# CONFIG_FBCON_IPLAN2P4 is not set |
|||
# CONFIG_FBCON_IPLAN2P8 is not set |
|||
CONFIG_FBCON_MAC=m |
|||
CONFIG_FBCON_VGA_PLANES=y |
|||
# CONFIG_FBCON_VGA is not set |
|||
CONFIG_FBCON_HGA=y |
|||
# CONFIG_FBCON_FONTWIDTH8_ONLY is not set |
|||
# CONFIG_FBCON_FONTS is not set |
|||
CONFIG_FONT_8x8=y |
|||
CONFIG_FONT_8x16=y |
|||
|
|||
# agp already needed for some vga cards |
|||
CONFIG_AGP=y |
|||
CONFIG_AGP_INTEL=y |
|||
CONFIG_AGP_I810=y |
|||
CONFIG_AGP_VIA=y |
|||
CONFIG_AGP_AMD=y |
|||
CONFIG_AGP_AMD_K8=y |
|||
CONFIG_AGP_SIS=y |
|||
CONFIG_AGP_ALI=y |
|||
CONFIG_AGP_SWORKS=y |
|||
CONFIG_AGP_NVIDIA=y |
|||
CONFIG_AGP_ATI=y |
|||
|
|||
# drm |
|||
CONFIG_DRM=m |
|||
CONFIG_DRM_NEW=m |
|||
CONFIG_DRM_TDFX=m |
|||
CONFIG_DRM_GAMMA=m |
|||
CONFIG_DRM_R128=m |
|||
CONFIG_DRM_RADEON=m |
|||
CONFIG_DRM_I810=m |
|||
CONFIG_DRM_I810_XFREE_41=m |
|||
CONFIG_DRM_I830=m |
|||
CONFIG_DRM_MGA=m |
|||
CONFIG_DRM_SIS=m |
|||
|
|||
# FireWire support |
|||
CONFIG_IEEE1394=y |
|||
CONFIG_IEEE1394_OHCI1394=y |
|||
# needed for fw cdrom boot |
|||
CONFIG_IEEE1394_SBP2=y |
|||
CONFIG_IEEE1394_ETH1394=m |
|||
@ -0,0 +1,23 @@ |
|||
# here we disable settings we'll most probably not need on the bootdisk |
|||
|
|||
echo "bootdisk target -> disabling some settings ..." |
|||
|
|||
sed -e "s/CONFIG_SOUND_\(.*\)=./# CONFIG_SOUND_\1 is not set/" \ |
|||
-e "s/CONFIG_VIDEO\(.*\)=./# CONFIG_VIDEO\1 is not set/" \ |
|||
-e "s/CONFIG_PHONE\(.*\)=./# CONFIG_PHONE\1 is not set/" \ |
|||
-e "s/CONFIG_RADIO\(.*\)=./# CONFIG_RADIO\1 is not set/" \ |
|||
-e "s/CONFIG_HAMRADIO\(.*\)=./# CONFIG_HAMRADIO\1 is not set/" \ |
|||
-e "s/CONFIG_ATM\(.*\)=./# CONFIG_ATM\1 is not set/" \ |
|||
-e "s/CONFIG_SMP\(.*\)=./# CONFIG_SMP\1 is not set/" \ |
|||
-e "s/CONFIG_PCI_NAMES\(.*\)=./# CONFIG_PCI_NAMES\1 is not set/" \ |
|||
-e "s/CONFIG_INPUT_JOYDEV\(.*\)=./# CONFIG_INPUT_JOYDEV\1 is not set/" \ |
|||
-e "s/CONFIG_ACPI\(.*\)=./# CONFIG_ACPI\1 is not set/" \ |
|||
-e "s/CONFIG_GAMEPORT\(.*\)=./# CONFIG_GAMEPORT\1 is not set/" \ |
|||
-e "s/CONFIG_IP_NF\(.*\)=./CONFIG_IP_NF\1=m/" \ |
|||
-e "s/# CONFIG_EMBEDDED is not set/CONFIG_EMBEDDED=y/" \ |
|||
-e "s/CONFIG_KALLSYMS=./# CONFIG_KALLSYMS is not set/" \ |
|||
-e "s/CONFIG_IOSCHED_AS=./# CONFIG_IOSCHED_AS is not set/" \ |
|||
$1 > .config.boot |
|||
|
|||
mv .config.boot $1 |
|||
|
|||
@ -0,0 +1,533 @@ |
|||
/* |
|||
* --- ROCK-COPYRIGHT-NOTE-BEGIN --- |
|||
* |
|||
* This copyright note is auto-generated by ./scripts/Create-CopyPatch. |
|||
* Please add additional copyright information _after_ the line containing |
|||
* the ROCK-COPYRIGHT-NOTE-END tag. Otherwise it might get removed by |
|||
* the ./scripts/Create-CopyPatch script. Do not edit this copyright text! |
|||
* |
|||
* ROCK Linux: rock-src/target/livecd/linuxrc.c |
|||
* ROCK Linux is Copyright (C) 1998 - 2003 Clifford Wolf |
|||
* |
|||
* This program is free software; you can redistribute it and/or modify |
|||
* it under the terms of the GNU General Public License as published by |
|||
* the Free Software Foundation; either version 2 of the License, or |
|||
* (at your option) any later version. A copy of the GNU General Public |
|||
* License can be found at Documentation/COPYING. |
|||
* |
|||
* Many people helped and are helping developing ROCK Linux. Please |
|||
* have a look at http://www.rocklinux.org/ and the Documentation/TEAM |
|||
* file for details. |
|||
* |
|||
* --- ROCK-COPYRIGHT-NOTE-END --- |
|||
* |
|||
* linuxrc.c is Copyright (C) 2003, 2004 Cliford Wolf and Rene Rebe |
|||
* |
|||
*/ |
|||
|
|||
#include <sys/mount.h> |
|||
#include <sys/swap.h> |
|||
#include <unistd.h> |
|||
#include <stdio.h> |
|||
#include <stdlib.h> |
|||
#include <string.h> |
|||
#include <dirent.h> |
|||
#include <sys/types.h> |
|||
#include <sys/wait.h> |
|||
#include <sys/stat.h> |
|||
#include <sys/klog.h> |
|||
#include <sys/utsname.h> |
|||
#include <dirent.h> |
|||
#include <fcntl.h> |
|||
#include <errno.h> |
|||
#include <stdarg.h> |
|||
|
|||
#ifndef MS_MOVE |
|||
# define MS_MOVE 8192 |
|||
#endif |
|||
|
|||
#ifndef STAGE_2_IMAGE |
|||
# define STAGE_2_IMAGE "2nd_stage.img.z" |
|||
#endif |
|||
|
|||
char mod_loader[50]; |
|||
char mod_dir[255]; |
|||
char mod_suffix[3]; |
|||
int mod_suffix_len=0; |
|||
|
|||
void mod_load_info(char *mod_loader, char *mod_dir, char *mod_suffix) { |
|||
struct utsname uts_name; |
|||
|
|||
if(uname(&uts_name) < 0) { |
|||
perror("unable to perform uname syscall correctly"); |
|||
return; |
|||
} else if(strcmp(uts_name.sysname, "Linux") != 0) { |
|||
printf("Your operating system is not supported ?!\n"); |
|||
return; |
|||
} |
|||
|
|||
strcpy(mod_loader, "/bin-static/insmod"); |
|||
strcpy(mod_dir, "/lib/modules/"); |
|||
strcat(mod_dir, uts_name.release); |
|||
|
|||
/* kernel module suffix for <= 2.4 is .o, .ko if above */ |
|||
if(uts_name.release[2] > '4') { |
|||
strcpy(mod_suffix, ".ko"); |
|||
} else { |
|||
strcpy(mod_suffix, ".o"); |
|||
} |
|||
|
|||
return; |
|||
} |
|||
|
|||
void doboot() |
|||
{ |
|||
if ( access("/sbin/init", R_OK) ) { perror("Can't find /sbin/init"); } |
|||
else { |
|||
execlp("/sbin/init","/sbin/init"); |
|||
} |
|||
} |
|||
|
|||
int trymount (const char* source, const char* target) |
|||
{ |
|||
return mount(source, target, "iso9660", MS_RDONLY, NULL) && |
|||
mount(source, target, "ext3", MS_RDONLY, NULL) && |
|||
mount(source, target, "ext2", MS_RDONLY, NULL) && |
|||
mount(source, target, "minix", MS_RDONLY, NULL) && |
|||
mount(source, target, "vfat", MS_RDONLY, NULL); |
|||
} |
|||
|
|||
void trywait(pid) |
|||
{ |
|||
if (pid < 0) perror("fork"); |
|||
else waitpid(pid, NULL, 0); |
|||
} |
|||
|
|||
#define tryexeclp(file, arg, ...) ( { \ |
|||
int pid; \ |
|||
\ |
|||
if ( (pid = fork()) == 0 ) { \ |
|||
execlp(file, arg, __VA_ARGS__); \ |
|||
perror(file); \ |
|||
exit(1); \ |
|||
} \ |
|||
\ |
|||
trywait(pid); \ |
|||
} ) |
|||
|
|||
/* check wether a file is a directory */ |
|||
int is_dir(const struct dirent *entry) { |
|||
struct stat tmpstat; |
|||
lstat(entry->d_name, &tmpstat); |
|||
return S_ISDIR(tmpstat.st_mode); |
|||
} |
|||
|
|||
/* this is used in the module loading system for sorting dirs before files */ |
|||
int dirs_first_sort(const struct dirent **a, const struct dirent **b) { |
|||
if(is_dir(*a)) { |
|||
if(is_dir(*b)) return 0; |
|||
else return 1; |
|||
} else if(is_dir(*b)) { |
|||
return -1; |
|||
} else return 0; |
|||
} |
|||
|
|||
/* this is used in the rm -r implementation */ |
|||
int no_dot_dirs_filter(const struct dirent *entry) { |
|||
if( is_dir(entry) && (!strcmp(entry->d_name,".") || !strcmp(entry->d_name,"..")) ) return 0; |
|||
else return 1; |
|||
} |
|||
|
|||
|
|||
/* my own rm -r implementation - :P */ |
|||
int rm_recursive(char* directory) { |
|||
struct dirent **namelist; |
|||
char oldcwd[256]; |
|||
int n, ret=0; |
|||
|
|||
getcwd(oldcwd, 256); |
|||
if(chdir(directory)) { |
|||
perror("chdir"); |
|||
exit(1); |
|||
} |
|||
|
|||
n = scandir(".", &namelist, no_dot_dirs_filter, dirs_first_sort); |
|||
if (n < 0) { |
|||
perror("scandir"); ret = -1; |
|||
} |
|||
|
|||
while(n--) { |
|||
if(is_dir(namelist[n])){ |
|||
if(rmdir(namelist[n]->d_name) != 0) { |
|||
rm_recursive(namelist[n]->d_name); |
|||
} |
|||
} else { |
|||
if(unlink(namelist[n]->d_name) != 0) { |
|||
perror("unable to remove file"); fflush(stdout); |
|||
ret = -1; |
|||
} |
|||
} |
|||
free(namelist[n]); |
|||
} |
|||
free(namelist); |
|||
|
|||
chdir(oldcwd); |
|||
if(rmdir(directory) != 0) { |
|||
perror("could not delete just-left meant-to-be-empty directory"); |
|||
ret = -1; |
|||
} |
|||
|
|||
return ret; |
|||
} |
|||
|
|||
/* symlink most files in /etc */ |
|||
int make_etc_symlinks() { |
|||
struct dirent **namelist; |
|||
char source[256], target[256], oldcwd[100]; |
|||
int n, ret=0; |
|||
|
|||
getcwd(oldcwd, 100); |
|||
chdir("/ROCK/etc"); |
|||
|
|||
n = scandir(".", &namelist, no_dot_dirs_filter, NULL); |
|||
if (n < 0) { |
|||
perror("scandir"); ret = -1; |
|||
} |
|||
|
|||
while(n--) { |
|||
snprintf(source, 256, "/ROCK/etc/%s",namelist[n]->d_name); |
|||
snprintf(target, 256, "/etc/%s",namelist[n]->d_name); |
|||
|
|||
if (symlink(source, target) != 0) { |
|||
printf("error in symlinking %s -> %s\n",source,target); |
|||
ret = -1; |
|||
} |
|||
|
|||
free(namelist[n]); |
|||
} |
|||
free(namelist); |
|||
|
|||
chdir(oldcwd); |
|||
|
|||
return ret; |
|||
} |
|||
|
|||
int getdevice(char* devstr, int devlen) |
|||
{ |
|||
char devicebase[20] = "/dev/cdroms/cdrom%d"; |
|||
char *devn[10]; |
|||
char devicefile[100]; |
|||
char filename[100]; |
|||
int tmp_nr, nr=0; |
|||
|
|||
for (tmp_nr = 0; tmp_nr < 10; ++tmp_nr) { |
|||
snprintf(devicefile, 100, devicebase, tmp_nr); |
|||
|
|||
if ( access (devicefile, R_OK) ) break; |
|||
|
|||
devn[nr++] = strdup (devicefile); |
|||
} |
|||
|
|||
if (!nr) { |
|||
printf("could not find a suitable cdrom device!\n"); |
|||
return -1; |
|||
} |
|||
|
|||
devn[nr] = NULL; |
|||
|
|||
snprintf(filename,100,"/mnt/cdrom/%s",STAGE_2_IMAGE); |
|||
|
|||
for (nr=0; devn[nr]; nr++) { |
|||
if(trymount(devn[nr],"/mnt/cdrom") == 0) { |
|||
if( access(filename, R_OK) ) continue; |
|||
strncpy(devstr, devn[nr], devlen); |
|||
return 0; |
|||
} |
|||
} |
|||
|
|||
printf("unable to find a device containing %s!\n", STAGE_2_IMAGE); |
|||
|
|||
return -1; |
|||
} |
|||
|
|||
int prepare_root() { |
|||
int ret = 0; |
|||
/* we need to set umask to 00 so we can set 777 perms */ |
|||
umask(00); |
|||
|
|||
/* simple symlinking */ |
|||
if(symlink("/ROCK/bin","/bin") != 0) { perror("/bin symlink FAILED"); ret=-1; } |
|||
if(symlink("/ROCK/sbin","/sbin") != 0) { perror("/sbin symlink FAILED"); ret=-1; } |
|||
if(symlink("/ROCK/boot","/boot") != 0) { perror("/boot symlink FAILED"); ret=-1; } |
|||
if(symlink("/ROCK/opt","/opt") != 0) { perror("/opt symlink FAILED"); ret=-1; } |
|||
|
|||
/* if /tmp isn't empty, this is gonna blow... */ |
|||
if(rmdir("/tmp") != 0) { perror("unable to remove old /tmp"); ret=-1; } |
|||
if(mkdir("/ramdisk/tmp", 0777) != 0) { perror("unable to create /ramdisk/tmp"); ret=-1; } |
|||
if(symlink("/ramdisk/tmp", "/tmp") != 0) { perror("/tmp symlink FAILED"); ret=-1; } |
|||
|
|||
if(mkdir("/ramdisk/home", 0755) != 0) { perror("unable to create /ramdisk/home"); ret=-1; } |
|||
if(symlink("/ramdisk/home", "/home") != 0) { perror("/home symlink FAILED"); ret=-1; } |
|||
|
|||
/* usr is just a symlink to / , that's why it works */ |
|||
if(unlink("/usr") != 0) { perror("unable to remove old /usr"); ret=-1; } |
|||
if(symlink("/ROCK/usr","/usr") != 0) { perror("/usr symlink FAILED"); ret=-1; } |
|||
|
|||
if(mkdir("/ramdisk/var", 0755) != 0) { perror("unable to create /ramdisk/var"); ret=-1; } |
|||
if(symlink("/ramdisk/var", "/var") != 0) { perror("/var symlink FAILED"); ret=-1; } |
|||
|
|||
if(rm_recursive("/lib") != 0) { printf("removal of /lib FAILED\n"); ret=-1; } |
|||
if(symlink("/ROCK/lib", "/lib") != 0) { perror("/lib symlink FAILED"); ret=-1; } |
|||
|
|||
if(unlink("/sbin-static") != 0) { perror("error removing /sbin-static"); ret=-1; } |
|||
if(rm_recursive("/bin-static") != 0) { printf("removal of /bin-static FAILED\n"); ret=-1; } |
|||
fflush(stdout); |
|||
|
|||
/* the /etc directory is a bit special */ |
|||
if(make_etc_symlinks() != 0) { printf("error while symlinking individual files in /etc!\n"); ret=-1; } |
|||
/* remove some files that either need to be writable or need to be replaced */ |
|||
if(unlink("/etc/mtab") != 0) { perror("unable to remove /etc/mtab!"); ret=-1; } |
|||
if(unlink("/etc/passwd") != 0) { perror("unable to remove /etc/passwd!"); ret=-1; } |
|||
if(unlink("/etc/group") != 0) { perror("unable to remove /etc/group!"); ret=-1; } |
|||
if(unlink("/etc/shadow") != 0) { perror("unable to remove /etc/shadow!"); ret=-1; } |
|||
if(unlink("/etc/X11") != 0) { perror("unable to remove /etc/X11 symlink!"); ret=-1; } |
|||
if(mkdir("/etc/X11",0755) != 0) { perror("unable to create /etc/X11!"); ret=-1; } |
|||
if(mkdir("/etc/X11/xkb",0755) != 0) { perror("unable to create /etc/X11/xkb!"); ret=-1; } |
|||
|
|||
/* etc/mtab must not contain a duplicate rootfs entry*/ |
|||
umask(022); |
|||
FILE* orig = fopen("/proc/mounts","r"); |
|||
FILE* mod = fopen("/etc/mtab","w"); |
|||
char buf[256]; |
|||
|
|||
while(fgets(buf, 256, orig) != NULL) { |
|||
if(memcmp(buf,"rootfs",6) == 0) continue; |
|||
else fputs(buf, mod); |
|||
} |
|||
fclose(orig); fclose(mod); buf[1]=0; |
|||
|
|||
/* add rocker to /etc/passwd and change root's home to /home/root */ |
|||
orig = fopen("/ROCK/etc/passwd","r"); |
|||
mod = fopen("/etc/passwd","w"); |
|||
while(fgets(buf, 256, orig) != NULL) { |
|||
if(memcmp(buf,"root",4) != 0) fputs(buf, mod); |
|||
else fputs("root:x:0:0:root:/home/root:/bin/bash\n",mod); |
|||
} |
|||
fputs("rocker:x:1000:100:ROCK Live CD User:/home/rocker:/bin/bash\n",mod); |
|||
fclose(orig); fclose(mod); buf[1]=0; |
|||
|
|||
/* add rocker to /etc/shadow */ |
|||
umask(066); |
|||
orig = fopen("/ROCK/etc/shadow","r"); |
|||
mod = fopen("/etc/shadow","w"); |
|||
while(fgets(buf, 256, orig) != NULL) { |
|||
if(memcmp(buf,"root",4) != 0) fputs(buf, mod); |
|||
else fputs("root:$1$1YssESn0$Y9LvBGGXpsZhjNKZ0x8OM/:12548::::::\n",mod); |
|||
} |
|||
fputs("rocker:$1$//TuI8QD$kTxVesUbGLNKuxILuK2UN/:12548:0:99999:7:::\n",mod); |
|||
fclose(orig); fclose(mod); buf[1]=0; |
|||
|
|||
/* add rocker to group 'sound' */ |
|||
int fnd = 0; |
|||
umask(022); |
|||
orig = fopen("/ROCK/etc/group","r"); |
|||
mod = fopen("/etc/group","w"); |
|||
while(fgets(buf, 256, orig) != NULL) { |
|||
if(memcmp(buf,"sound",5) != 0) fputs(buf, mod); |
|||
else { |
|||
fputs("sound:x:17:rocker\n",mod); |
|||
fnd = 1; |
|||
} |
|||
} |
|||
if(!fnd) fputs("sound:x:17:rocker\n",mod); |
|||
fclose(orig); fclose(mod); buf[1]=0; |
|||
|
|||
/* copy over XF86Config */ |
|||
orig = fopen("/ROCK/etc/X11/XF86Config","r"); |
|||
mod = fopen("/etc/X11/XF86Config","w"); |
|||
while(fgets(buf, 256, orig) != NULL) fputs(buf, mod); |
|||
fclose(orig); fclose(mod); buf[1]=0; |
|||
|
|||
/* copy over resolv.conf */ |
|||
unlink("/etc/resolv.conf"); |
|||
orig = fopen("/ROCK/etc/resolv.conf","r"); |
|||
mod = fopen("/etc/resolv.conf","w"); |
|||
while(fgets(buf, 256, orig) != NULL) fputs(buf, mod); |
|||
fclose(orig); fclose(mod); buf[1]=0; |
|||
|
|||
/* change modules.conf to place it's modules.dep in /etc */ |
|||
unlink("/etc/modules.conf"); |
|||
orig = fopen("/ROCK/etc/modules.conf","r"); |
|||
mod = fopen("/etc/modules.conf","w"); |
|||
while(fgets(buf, 256, orig) != NULL) fputs(buf, mod); |
|||
fputs("depfile=/etc/modules.dep\n",mod); |
|||
fputs("generic_stringfile=/etc/modules.generic_string\n",mod); |
|||
fputs("pcimapfile=/etc/modules.pcimap\n",mod); |
|||
fputs("isapnpmapfile=/etc/modules.isapnpmap\n",mod); |
|||
fputs("usbmapfile=/etc/modules.usbmap\n",mod); |
|||
fputs("parportmapfile=/etc/modules.parportmap\n",mod); |
|||
fputs("ieee1394mapfile=/etc/modules.ieee1394map\n",mod); |
|||
fputs("pnpbiosmapfile=/etc/modules.pnpbiosmap\n",mod); |
|||
fclose(orig); fclose(mod); buf[1]=0; |
|||
umask(00); |
|||
|
|||
/* we need to fix some things in /dev */ |
|||
if(chdir("/dev") != 0) { perror("could not chdir to /dev!"); ret=-1; } |
|||
unlink("fd"); /*no problem if this fails*/ |
|||
if(symlink("/proc/kcore","core") != 0) { perror("could not symlink /proc/kcore to /dev/core"); ret=-1; } |
|||
if(symlink("/proc/self/fd","fd") != 0) { perror("could not symlink /proc/self/fd to /dev/fd"); ret=-1; } |
|||
if(symlink("fd/0","stdin") != 0) { perror("could not symlink /dev/fd/0 to /dev/stdin"); ret=-1; } |
|||
if(symlink("fd/1","stdout") != 0) { perror("could not symlink /dev/fd/1 to /dev/stdout"); ret=-1; } |
|||
if(symlink("fd/2","stderr") != 0) { perror("could not symlink /dev/fd/2 to /dev/stderr"); ret=-1; } |
|||
if(chdir("/") != 0) { perror("could not chdir to /!"); ret=-1; } |
|||
|
|||
/* create needed directories in /var */ |
|||
if(mkdir("/var/run",0755) != 0 ) { perror("could not create /var/run"); ret=-1; } |
|||
if(mkdir("/var/lock",0755) != 0 ) { perror("could not create /var/lock"); ret=-1; } |
|||
if(mkdir("/var/tmp",0777) != 0 ) { perror("could not create /var/tmp"); ret=-1; } |
|||
if(mkdir("/var/log",0755) != 0 ) { perror("could not create /var/log"); ret=-1; } |
|||
if(mkdir("/var/lib",0755) != 0 ) { perror("could not create /var/lib"); ret=-1; } |
|||
if(mkdir("/var/lib/xkb",0755) != 0 ) { perror("could not create /var/lib/xkb"); ret=-1; } |
|||
if(symlink("/var/lib/xkb","/etc/X11/xkb/compiled")!=0) { perror("could not symlink /var/lib/xkb to /etc/X11/xkb/compiled"); ret=-1; } |
|||
if(mkdir("/var/rockplug",0755) != 0 ) { perror("could not create /var/rockplug"); ret=-1; } |
|||
if(mkdir("/var/rockplug/ieee1394",0755) != 0 ) { perror("could not create /var/rockplug/ieee1394"); ret=-1; } |
|||
if(mkdir("/var/rockplug/isapnp",0755) != 0 ) { perror("could not create /var/rockplug/isapnp"); ret=-1; } |
|||
if(mkdir("/var/rockplug/net",0755) != 0 ) { perror("could not create /var/rockplug/net"); ret=-1; } |
|||
if(mkdir("/var/rockplug/pci",0755) != 0 ) { perror("could not create /var/rockplug/pci"); ret=-1; } |
|||
if(mkdir("/var/rockplug/scsi",0755) != 0 ) { perror("could not create /var/rockplug/scsi"); ret=-1; } |
|||
if(mkdir("/var/rockplug/usb",0755) != 0 ) { perror("could not create /var/rockplug/usb"); ret=-1; } |
|||
/* add rocker's home, change owner */ |
|||
if(mkdir("/home/rocker",0755) != 0 ) { perror("could not create /home/rocker"); ret=-1; } |
|||
if(chown("/home/rocker",1000,100) != 0) { perror("could not chown /home/rocker to rocker:users"); ret=-1; } |
|||
/* root's home */ |
|||
if(mkdir("/home/root",0700) != 0 ) { perror("could not create /home/root"); ret=-1; } |
|||
|
|||
umask(022); |
|||
return ret; |
|||
} |
|||
|
|||
void load_ramdisk_file() { |
|||
char text[120], devicefile[100]; |
|||
char filename[100]; |
|||
int pid; |
|||
|
|||
strcpy(filename, STAGE_2_IMAGE); |
|||
|
|||
if (getdevice(devicefile, 100) < 0) |
|||
return; |
|||
|
|||
snprintf(text, 120, "file=/mnt/cdrom/%s", filename); |
|||
if ( (pid = fork()) == 0 ) { |
|||
printf("loading cloop..."); |
|||
execlp(mod_loader, mod_loader, "/lib/modules/misc/cloop.o", text); |
|||
perror("can't insmod cloop from"); |
|||
exit(1); |
|||
} |
|||
trywait(pid); |
|||
|
|||
if( access("/dev/cloop/0", R_OK) ) |
|||
{ perror("can't access /dev/cloop/0, check if cloop insmod was succesfull!"); return; } |
|||
|
|||
if( mount("/dev/cloop/0", "/ROCK", "iso9660", MS_RDONLY, NULL) ) |
|||
{ perror("Can't mount /dev/cloop/0 on /ROCK!"); return; } |
|||
|
|||
if ( mount("none", "/ramdisk", "tmpfs", 0, NULL) ) |
|||
{ perror("Can't mount /ramdisk"); return; } |
|||
|
|||
/* create symlinks for needed directories, create special files */ |
|||
if(prepare_root() == 0) doboot(); |
|||
|
|||
return; |
|||
} |
|||
|
|||
|
|||
|
|||
void autoload_modules() |
|||
{ |
|||
char line[200], cmd[200], module[200]; |
|||
int fd[2], rc; |
|||
FILE *f; |
|||
int pid; |
|||
|
|||
if (pipe(fd) <0) |
|||
{ perror("Can't create pipe"); return; } |
|||
|
|||
if ( (pid = fork()) == 0 ) { |
|||
dup2(fd[1],1); close(fd[0]); close(fd[1]); |
|||
execlp("gawk", "gawk", "-f", "/bin-static/hwscan", NULL); |
|||
printf("Can't start >>hwscan<< program with gawk!\n"); |
|||
exit(1); |
|||
} |
|||
|
|||
close(fd[1]); |
|||
f = fdopen(fd[0], "r"); |
|||
while ( fgets(line, 200, f) != NULL ) { |
|||
if ( sscanf(line, "%s %s", cmd, module) < 2 ) continue; |
|||
if ( !strcmp(cmd, "modprobe") || !strcmp(cmd, "insmod") ) { |
|||
printf("%s %s\n", cmd, module); |
|||
if ( (rc = fork()) == 0 ) { |
|||
execlp(cmd, cmd, module, NULL); |
|||
perror("Cant run modprobe/insmod"); |
|||
exit(1); |
|||
} |
|||
trywait(rc); |
|||
} |
|||
} |
|||
fclose(f); |
|||
trywait(pid); |
|||
} |
|||
|
|||
void exec_sh() |
|||
{ |
|||
int rc; |
|||
|
|||
printf ("Quit the shell to return to the stage 1 loader!\n"); |
|||
if ( (rc = fork()) == 0 ) { |
|||
execl("/bin-static/kiss", "kiss", "-E", NULL); |
|||
perror("kiss"); |
|||
_exit(1); |
|||
} |
|||
trywait(rc); |
|||
} |
|||
|
|||
int main() |
|||
{ |
|||
if ( mount("none", "/dev", "devfs", 0, NULL) && errno != EBUSY ) |
|||
perror("Can't mount /dev"); |
|||
|
|||
if ( mount("none", "/proc", "proc", 0, NULL) && errno != EBUSY ) |
|||
perror("Can't mount /proc"); |
|||
|
|||
/* Only print important stuff to console */ |
|||
klogctl(8, NULL, 3); |
|||
|
|||
mod_load_info(mod_loader, mod_dir, mod_suffix); |
|||
mod_suffix_len = strlen(mod_suffix); |
|||
|
|||
autoload_modules(); |
|||
|
|||
printf("\n\ |
|||
============================================\n\ |
|||
=== ROCK Linux 1st stage boot system ===\n\ |
|||
============================================\n\ |
|||
\n\ |
|||
The ROCK Linux live CD system boots up in two stages. You are now in\n\ |
|||
the first of this two stages and if everything goes right you will not\n\ |
|||
spend much time here. I will just try to load some drivers (if needed)\n\ |
|||
so the 2nd stage boot system can be loaded.\n"); |
|||
|
|||
load_ramdisk_file(); |
|||
|
|||
sleep(1); |
|||
|
|||
printf("\n\nYou are still here. that means i couldn't complete the automatic boot of\n"); |
|||
printf("stage2. Please refer to the errors reported above, you will now be dumped into a"); |
|||
printf("minimalistic static shell so you can have a look at what went wrong...\n"); |
|||
|
|||
if(access("/bin/kiss",R_OK) == 0) execl("/bin/kiss", "/bin/kiss", NULL); |
|||
if(access("/bin-static/kiss",R_OK) == 0) execl("/bin-static/kiss", "/bin-static/kiss", NULL); |
|||
|
|||
printf("\nCan't start a shell!!\n\nPlease send a bug report with your configuration to fake@rocklinux.org\n\n"); |
|||
return 0; |
|||
} |
|||
|
|||
@ -0,0 +1,5 @@ |
|||
|
|||
[ -e $confdir/$pkg.conf ] && . $confdir/$pkg.conf |
|||
|
|||
var_append confopt " " " --disable-nls" |
|||
|
|||
@ -0,0 +1,6 @@ |
|||
|
|||
[ -e $confdir/$pkg.conf ] && . $confdir/$pkg.conf |
|||
|
|||
var_append confopt " " "--disable-combined --enable-combined-rmmod \ |
|||
--enable-combined-modprobe" |
|||
|
|||
@ -0,0 +1,24 @@ |
|||
# --- ROCK-COPYRIGHT-NOTE-BEGIN --- |
|||
# |
|||
# This copyright note is auto-generated by ./scripts/Create-CopyPatch. |
|||
# Please add additional copyright information _after_ the line containing |
|||
# the ROCK-COPYRIGHT-NOTE-END tag. Otherwise it might get removed by |
|||
# the ./scripts/Create-CopyPatch script. Do not edit this copyright text! |
|||
# |
|||
# ROCK Linux: rock-src/target/livecd/preconfig.in |
|||
# ROCK Linux is Copyright (C) 1998 - 2003 Clifford Wolf |
|||
# |
|||
# This program is free software; you can redistribute it and/or modify |
|||
# it under the terms of the GNU General Public License as published by |
|||
# the Free Software Foundation; either version 2 of the License, or |
|||
# (at your option) any later version. A copy of the GNU General Public |
|||
# License can be found at Documentation/COPYING. |
|||
# |
|||
# Many people helped and are helping developing ROCK Linux. Please |
|||
# have a look at http://www.rocklinux.org/ and the Documentation/TEAM |
|||
# file for details. |
|||
# |
|||
# --- ROCK-COPYRIGHT-NOTE-END --- |
|||
|
|||
CFGTEMP_TARGETLIST="$CFGTEMP_TARGETLIST ` |
|||
`livecd Live_CD-ROM_system" |
|||
@ -0,0 +1,28 @@ |
|||
|
|||
syslinux_ver="`sed -n 's,.*syslinux-\(.*\).tar.*,\1,p' \ |
|||
$base/target/livecd/download.txt`" |
|||
|
|||
cd $disksdir |
|||
|
|||
echo_header "Creating isolinux setup:" |
|||
# |
|||
echo_status "Extracting isolinux boot loader." |
|||
mkdir -p isolinux |
|||
tar --use-compress-program=bzip2 \ |
|||
-xf $base/download/livecd/syslinux-$syslinux_ver.tar.bz2 \ |
|||
syslinux-$syslinux_ver/isolinux.bin -O > isolinux/isolinux.bin |
|||
# |
|||
echo_status "Creating isolinux config file." |
|||
cp $base/target/$target/x86/isolinux.cfg isolinux/ |
|||
cp $base/target/$target/x86/help?.txt isolinux/ |
|||
# |
|||
echo_status "Copy images to isolinux directory." |
|||
cp boot/memtest86.bin isolinux/memtest86 |
|||
cp initrd.gz boot/vmlinuz isolinux/ |
|||
# |
|||
cat > ../isofs_arch.txt <<- EOT |
|||
BOOT -b isolinux/isolinux.bin -c isolinux/boot.catalog |
|||
BOOTx -no-emul-boot -boot-load-size 4 -boot-info-table |
|||
DISK1 build/${ROCKCFG_ID}/ROCK/livecd/isolinux/ isolinux/ |
|||
EOT |
|||
|
|||
@ -0,0 +1,17 @@ |
|||
____ ___ ___ _ __ _ |
|||
| _ \ / _ \ / __| |/ / | | _ _ __ _ _ _ _ |
|||
| . _/| | | | | | '_/ | | |_| '_ \| | | | \/ | |
|||
| |\ \| |_| | |__| . \ | |__| | | | | `_' |> < |
|||
|_| \_\ ___/ \___|_|\_\ |____|_|_| |_|\___/|_/\_| |
|||
[============> http://www.rocklinux.org/ <============] |
|||
| L I V E CD | |
|||
+-------------+ |
|||
|
|||
Actions: |
|||
-------- |
|||
|
|||
<ENTER> Start live cd system |
|||
ramdisk options <Enter> Start live cd system with the given options |
|||
linux options <Enter> Boot the linux kernel with the given options |
|||
memtest86 <Enter> Boot the memtest86 mini-os |
|||
|
|||
@ -0,0 +1,17 @@ |
|||
|
|||
DEFAULT ramdisk |
|||
TIMEOUT 600 |
|||
PROMPT 1 |
|||
|
|||
DISPLAY help0.txt |
|||
|
|||
LABEL ramdisk |
|||
kernel vmlinuz |
|||
APPEND initrd=initrd.gz root=/dev/ram devfs=nocompat init=/linuxrc video=vesa:ywrap,mtrr vga=0x317 rw |
|||
|
|||
LABEL linux |
|||
kernel vmlinuz |
|||
|
|||
LABEL memtest86 |
|||
kernel memtest86 |
|||
|
|||