Compare commits
2 Commits
| Author | SHA1 | Date | |
|---|---|---|---|
|
|
0b5d9e44bd | ||
|
|
35668887a4 |
1
CONFIG/usr/share/mkinitramfs/bins/default
Symbolic link
1
CONFIG/usr/share/mkinitramfs/bins/default
Symbolic link
@@ -0,0 +1 @@
|
||||
../default-bins
|
||||
1
CONFIG/usr/share/mkinitramfs/mods/default
Symbolic link
1
CONFIG/usr/share/mkinitramfs/mods/default
Symbolic link
@@ -0,0 +1 @@
|
||||
../default-mods
|
||||
5
Makefile
5
Makefile
@@ -8,7 +8,7 @@
|
||||
# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
|
||||
# GNU General Public License for more details.
|
||||
|
||||
DEPENDS = coreutils,cpio,eudev,gzip,perl,psmisc,sed,util-linux
|
||||
DEPENDS = coreutils,cpio,dash,eudev,findutils,gzip,perl,psmisc,sed,util-linux
|
||||
ARCH = x86_64
|
||||
URL = http://snaplinux.org
|
||||
REPO = core
|
||||
@@ -37,5 +37,6 @@ clean:
|
||||
@rm -rvf $(ROOT) \
|
||||
$(SNAPINFO) \
|
||||
$(MANIFEST) \
|
||||
$(FILES)
|
||||
$(FILES) \
|
||||
$(CONFIG)
|
||||
|
||||
|
||||
26
SNAP/usher
26
SNAP/usher
@@ -1,26 +0,0 @@
|
||||
#!/bin/sh
|
||||
|
||||
set -e
|
||||
|
||||
case $1 in
|
||||
preinst)
|
||||
exit 0
|
||||
;;
|
||||
postinst)
|
||||
if [ ! -f /usr/share/mkinitramfs/bins/default ]; then
|
||||
cp /usr/share/mkinitramfs/default-bins \
|
||||
/usr/share/mkinitramfs/bins/default
|
||||
fi
|
||||
|
||||
if [ ! -f /usr/share/mkinitramfs/mods/default ]; then
|
||||
cp /usr/share/mkinitramfs/default-mods \
|
||||
/usr/share/mkinitramfs/mods/default
|
||||
fi
|
||||
;;
|
||||
prerm)
|
||||
exit 0
|
||||
;;
|
||||
postrm)
|
||||
exit 0
|
||||
;;
|
||||
esac
|
||||
@@ -18,16 +18,9 @@ rorw="ro"
|
||||
rootflags=
|
||||
rootdev=
|
||||
|
||||
[ -d /dev ] || mkdir -m 0755 /dev
|
||||
[ -d /root ] || mkdir -m 0700 /root
|
||||
[ -d /sys ] || mkdir /sys
|
||||
[ -d /proc ] || mkdir /proc
|
||||
[ -d /tmp ] || mkdir /tmp
|
||||
mkdir -p /var/lock
|
||||
|
||||
mount -n -t devtmpfs devtmpfs /dev
|
||||
mount -t proc -o nodev,noexec,nosuid proc /proc
|
||||
mount -t sysfs -o nodev,noexec,nosuid sysfs /sys
|
||||
mount -n -t proc proc /proc
|
||||
mount -n -t sysfs sysfs /sys
|
||||
mount -n -t tmpfs tmpfs /run
|
||||
|
||||
read -r cmdline < /proc/cmdline
|
||||
@@ -78,12 +71,10 @@ case "$root" in
|
||||
;;
|
||||
esac
|
||||
|
||||
echo > /sys/kernel/uevent_helper
|
||||
/sbin/udevd --daemon --resolve-names=never
|
||||
udevadm trigger
|
||||
udevadm settle
|
||||
|
||||
[ -n "$rootdelay" ] && sleep "$rootdelay"
|
||||
[ -f /etc/mdadm.conf ] && mdadm -As
|
||||
[ -x /sbin/vgchange ] && /sbin/vgchange --sysinit -a y
|
||||
|
||||
@@ -91,11 +82,8 @@ if [ -n "$zfs" ]; then
|
||||
zpool import rpool -N || error "Failed importing rpool"
|
||||
fi
|
||||
|
||||
if [ -n "$rootflags" ]; then
|
||||
rootflags="$rootflags,$rorw"
|
||||
else
|
||||
rootflags="$rorw"
|
||||
fi
|
||||
[ -n "$rootdelay" ] && sleep "$rootdelay"
|
||||
[ -n "$rootflags" ] && rootflags="$rootflags,$rorw" || rootflags="$rorw"
|
||||
|
||||
mkdir /.root
|
||||
|
||||
@@ -103,6 +91,6 @@ if ! mount -n -t "$rootfstype" -o "$rootflags" "$rootdev" /.root ; then
|
||||
error "Failed to mount root filesystem"
|
||||
fi
|
||||
|
||||
udevadm control --exit
|
||||
killall -w udevd
|
||||
|
||||
exec switch_root /.root "$init" "$@"
|
||||
|
||||
@@ -6,7 +6,7 @@ use warnings;
|
||||
use POSIX qw( uname );
|
||||
use Data::Dumper;
|
||||
|
||||
use constant VERSION => '0.5';
|
||||
use constant VERSION => '0.8';
|
||||
|
||||
sub build {
|
||||
my $kernel = shift;
|
||||
@@ -70,18 +70,17 @@ sub build {
|
||||
}
|
||||
}
|
||||
|
||||
if ( system( "cp -rp /lib/firmware $tmpdir/lib/firmware" ) ) {
|
||||
if ( system( "cp -a /lib/firmware $tmpdir/lib/firmware" ) ) {
|
||||
die( "Failed copying firmware\n" );
|
||||
}
|
||||
|
||||
if ( system( "cp -p /etc/modprobe.d/* $tmpdir/etc/modprobe.d" ) ) {
|
||||
if ( system( "cp -a /etc/modprobe.d $tmpdir/etc/modprobe.d" ) ) {
|
||||
die( "Failed copying data from modprobe.d\n" );
|
||||
}
|
||||
if ( system( "cp -rp /etc/udev/rules.d /etc/udev/udev.conf"
|
||||
. " $tmpdir/etc/udev" ) ) {
|
||||
if ( system( "cp -a /etc/udev $tmpdir/etc/udev" ) ) {
|
||||
die( "Failed copying udev data\n" );
|
||||
}
|
||||
if ( system( "cp -rp /lib/udev $tmpdir/lib/udev" ) ) {
|
||||
if ( system( "cp -a /lib/udev $tmpdir/lib/udev" ) ) {
|
||||
die( "Failed copying udev lib data\n" );
|
||||
}
|
||||
|
||||
@@ -225,11 +224,12 @@ for ( my $i = 0; $i <= $#ARGV; $i++ ) {
|
||||
}
|
||||
}
|
||||
|
||||
my $kernver = $ARGV[0] || ( uname() )[2];
|
||||
my $arg = $ARGV[0] || ( uname() )[2];
|
||||
my $kernels = getkern();
|
||||
my $bins = readlines( 'bins' );
|
||||
my $mods = readlines( 'mods' );
|
||||
my $libs = [];
|
||||
my $builds = [];
|
||||
|
||||
foreach my $bin ( @$bins ) {
|
||||
my $ldd = ldd( $bin );
|
||||
@@ -241,12 +241,22 @@ foreach my $bin ( @$bins ) {
|
||||
}
|
||||
}
|
||||
|
||||
if ( ! $kernels->{$kernver} ) {
|
||||
print STDERR "Unable to locate kernel version $kernver\n";
|
||||
if ( $arg eq 'all' ) {
|
||||
foreach my $kernver ( keys( %$kernels ) ) {
|
||||
push( @$builds, $kernels->{$kernver} );
|
||||
}
|
||||
}
|
||||
elsif ( ! $kernels->{$arg} ) {
|
||||
print STDERR "Unable to locate kernel version $arg\n";
|
||||
|
||||
exit 1;
|
||||
}
|
||||
else {
|
||||
push( @$builds, $kernels->{$arg} );
|
||||
}
|
||||
|
||||
print "Generating $kernels->{$kernver}{'initrd'}\n";
|
||||
build( $kernels->{$kernver}, $bins, $mods, $libs );
|
||||
print "Done\n";
|
||||
foreach my $kernel ( @$builds ) {
|
||||
print "Generating $kernel->{'initrd'}\n";
|
||||
build( $kernel, $bins, $mods, $libs );
|
||||
print "Done\n";
|
||||
}
|
||||
|
||||
Reference in New Issue
Block a user