|
|
@ -28,40 +28,119 @@ close(SWIM); |
|
|
|
|
|
|
|
push(@required_files,@extra_files); |
|
|
|
|
|
|
|
# This creates a tweaked runlevel.conf which is easier then trying to figure |
|
|
|
# out which symlinks to use in /etc/rc?d. |
|
|
|
|
|
|
|
|
|
|
|
open(DEBIAN,">$template_dir/Debian-test.yard") |
|
|
|
or die "Couldn't open $?\n"; |
|
|
|
open(FILERC,"/etc/runlevel.conf") or die "No runlevel.conf: $?\n"; |
|
|
|
@filerc = <FILERC>; |
|
|
|
close(FILERC); |
|
|
|
|
|
|
|
print DEBIAN stuff(); |
|
|
|
|
|
|
|
|
|
|
|
my @file_rc; |
|
|
|
foreach (@required_files) { |
|
|
|
if (-e && !-d) { |
|
|
|
if (-e && !-d) { |
|
|
|
if ($ARGV[0] eq "doc") { |
|
|
|
print DEBIAN "$_\n"; |
|
|
|
} |
|
|
|
else { |
|
|
|
if (! m,/usr/share/info|/usr/share/man|/usr/share/doc,) { |
|
|
|
print DEBIAN "$_\n"; |
|
|
|
} |
|
|
|
} |
|
|
|
|
|
|
|
if (m,/etc/init\.d,) { |
|
|
|
foreach my $filerc (@filerc) { |
|
|
|
push(@file_rc,$filerc) if $filerc =~ /$_/; |
|
|
|
} |
|
|
|
} |
|
|
|
} |
|
|
|
} |
|
|
|
close(DEBIAN); |
|
|
|
|
|
|
|
|
|
|
|
# This creates a tweaked runlevel.conf which is easier then trying to figure |
|
|
|
# out which symlinks to use in /etc/rc?d. |
|
|
|
|
|
|
|
open(MY_FILERC,">$home_yard_replacements/etc/runlevel.conf") |
|
|
|
or die "Couldn't open $home_yard_replacements/etc/runlevel.conf: $?\n"; |
|
|
|
my @sortedrc = map { $_->[1] } |
|
|
|
sort { $a->[0] <=> $b->[0] } |
|
|
|
map { [ (split(/\s/,$_))[0], $_ ] } |
|
|
|
@file_rc; |
|
|
|
print MY_FILERC @sortedrc; |
|
|
|
close(MY_FILERC); |
|
|
|
|
|
|
|
sub stuff { |
|
|
|
|
|
|
|
$stuff = << "STUFF"; |
|
|
|
# This template creates a complete Debian system which is more streamlined than |
|
|
|
# the base.tgz used for normal installations. Once everything is made, you can |
|
|
|
# use user-mode-linux to tweak the system, as well as apt. make-debain |
|
|
|
# generates all the information you need, you will need swim and file-rc |
|
|
|
# installed, and you will have to be running a Debian system to make this |
|
|
|
# template. |
|
|
|
# This template creates a complete Debian system which is more streamlined |
|
|
|
# than the base.tgz used for normal installations. Once everything is made, |
|
|
|
# you can use user-mode-linux to tweak the system, as well as apt. |
|
|
|
# Make-debian generates all the information you need, you will need swim and |
|
|
|
# file-rc installed, and you will have to be running a Debian system to make |
|
|
|
# this template. Make-debian ditches info, man, and doc files by default, |
|
|
|
# use the "doc" option to make documentation. |
|
|
|
# |
|
|
|
# Note: Things slow down noticeably when the buffer gets too big in the |
|
|
|
# verbosity box so consider closing it with the slider for faster generation. |
|
|
|
|
|
|
|
# The STUFF NEEDED in order for init to work. |
|
|
|
/etc/runlevel.conf <= Replacements/etc/runlevel.conf |
|
|
|
/etc/init.d/rc |
|
|
|
/etc/init.d/rcS |
|
|
|
/etc/inittab <= Replacements/etc/inittab.debian |
|
|
|
/etc/default/rcS |
|
|
|
|
|
|
|
# Stuff to save to return init to old state prior to file-rc |
|
|
|
/etc/init.d/rc.links |
|
|
|
/etc/init.d/rcS.links |
|
|
|
/usr/sbin/update-rc.d.links |
|
|
|
|
|
|
|
# The information needed so that dpkg can work. |
|
|
|
# Important stuff |
|
|
|
/etc/fstab <= ./Replacements/etc/fstab.new |
|
|
|
/etc/passwd* |
|
|
|
/etc/group* |
|
|
|
|
|
|
|
# The information needed so that dpkg can work. |
|
|
|
/var/lib/dpkg/diversions <= Replacements/var/lib/dpkg/diversions |
|
|
|
/var/lib/dpkg/cmethopt |
|
|
|
/var/lib/dpkg/lock |
|
|
|
/var/lib/dpkg/status <= Replacements/var/lib/dpkg/status |
|
|
|
/var/lib/dpkg/methods/disk |
|
|
|
/var/lib/dpkg/methods/floppy |
|
|
|
/var/lib/dpkg/methods/mnt |
|
|
|
/var/lib/dpkg/info |
|
|
|
/var/lib/dpkg/updates |
|
|
|
/var/lib/dpkg/alternatives |
|
|
|
|
|
|
|
# Devices |
|
|
|
/dev/MAKEDEV # a link |
|
|
|
/dev/mem |
|
|
|
/dev/kmem |
|
|
|
/dev/null |
|
|
|
/dev/zero |
|
|
|
/dev/ram* |
|
|
|
/dev/console |
|
|
|
/dev/tty[0-9] |
|
|
|
/dev/hd[abcd]* |
|
|
|
/dev/ttyS[0-9] |
|
|
|
/dev/fd0* |
|
|
|
/dev/sd* |
|
|
|
/dev/cdrom |
|
|
|
/dev/modem |
|
|
|
/dev/pts* |
|
|
|
/dev/ptmx |
|
|
|
/dev/initctl |
|
|
|
/dev/urandom |
|
|
|
/dev/ubd0 <= Replacements/dev/ubd0 |
|
|
|
|
|
|
|
# Empty directories |
|
|
|
/mnt |
|
|
|
/proc |
|
|
|
/tmp |
|
|
|
/var/tmp |
|
|
|
/var/run |
|
|
|
/var/lock |
|
|
|
/var/log |
|
|
|
|
|
|
|
## ALL the REQUIRED files generated by make-debian |
|
|
|
STUFF |
|
|
|