summaryrefslogtreecommitdiff
path: root/source/installer
diff options
context:
space:
mode:
Diffstat (limited to 'source/installer')
-rw-r--r--source/installer/ChangeLog.txt7
-rwxr-xr-xsource/installer/build_installer.sh2
l---------source/installer/sources/initrd/etc/mounts1
-rw-r--r--source/installer/sources/initrd/etc/mtab0
-rwxr-xr-xsource/installer/sources/initrd/etc/rc.d/rc.S4
-rwxr-xr-xsource/installer/sources/initrd/usr/lib/setup/SeTpartitions32
-rwxr-xr-xsource/installer/sources/initrd/usr/lib/setup/setup6
7 files changed, 50 insertions, 2 deletions
diff --git a/source/installer/ChangeLog.txt b/source/installer/ChangeLog.txt
index 2433f889..d45c552e 100644
--- a/source/installer/ChangeLog.txt
+++ b/source/installer/ChangeLog.txt
@@ -1,3 +1,10 @@
+Wed Nov 28 05:31:04 UTC 2018
+ Activate LVM volumes at boot, not only when setup is run.
+ Make /etc/mtab a symlink to /proc/mounts on the installer.
+ On a freshly installed system, make /etc/mtab a symlink to /proc/mounts.
+ Include f2fs-tools on the installer.
+ Support installing on F2FS partitions.
++--------------------------+
Wed Oct 10 22:41:29 UTC 2018
Added Hyper-V keyboard and framebuffer modules.
+--------------------------+
diff --git a/source/installer/build_installer.sh b/source/installer/build_installer.sh
index a358e180..de380a5f 100755
--- a/source/installer/build_installer.sh
+++ b/source/installer/build_installer.sh
@@ -795,6 +795,7 @@ a/dosfstools \
a/e2fsprogs \
a/efivar \
a/etc \
+a/f2fs-tools \
a/gptfdisk \
a/grep \
a/gzip \
@@ -1088,6 +1089,7 @@ cp -fa${VERBOSE1} \
libcrypto*so* \
libcryptsetup*.so* \
libdevmapper*so* \
+ libf2fs.so* \
libfdisk.so* \
libgcc*so* \
libgcrypt*.so* \
diff --git a/source/installer/sources/initrd/etc/mounts b/source/installer/sources/initrd/etc/mounts
new file mode 120000
index 00000000..4c0a0948
--- /dev/null
+++ b/source/installer/sources/initrd/etc/mounts
@@ -0,0 +1 @@
+/proc/mounts \ No newline at end of file
diff --git a/source/installer/sources/initrd/etc/mtab b/source/installer/sources/initrd/etc/mtab
deleted file mode 100644
index e69de29b..00000000
--- a/source/installer/sources/initrd/etc/mtab
+++ /dev/null
diff --git a/source/installer/sources/initrd/etc/rc.d/rc.S b/source/installer/sources/initrd/etc/rc.d/rc.S
index 38317b4d..fcd5fea2 100755
--- a/source/installer/sources/initrd/etc/rc.d/rc.S
+++ b/source/installer/sources/initrd/etc/rc.d/rc.S
@@ -167,6 +167,10 @@ vgscan --mknodes 2> /tmp/foo
cat /tmp/foo | uniq
rm -f /tmp/foo
+# Activate LVM volumes:
+echo "Activating LVM volumes:"
+vgchange -ay
+
if [ -x /etc/rc.d/rc.font ]; then
/bin/sh /etc/rc.d/rc.font
fi
diff --git a/source/installer/sources/initrd/usr/lib/setup/SeTpartitions b/source/installer/sources/initrd/usr/lib/setup/SeTpartitions
index 34819701..279edd94 100755
--- a/source/installer/sources/initrd/usr/lib/setup/SeTpartitions
+++ b/source/installer/sources/initrd/usr/lib/setup/SeTpartitions
@@ -17,6 +17,24 @@ crunch () {
echo $STRING
}
+# make_f2fs( dev ) - Create a new f2fs filesystem on the named dev.
+# Parameters: dev Device node to format.
+make_f2fs() {
+ # get the size of the named partition
+ SIZE=`get_part_size $1`
+ # output a nice status message
+ dialog --title "FORMATTING" \
+ --backtitle "Formatting $1 with filesystem f2fs." \
+ --infobox "Formatting $1 \n\
+Size: $SIZE \n\
+Filesystem type: f2fs " 0 0
+ # do the format
+ if mount | grep "$1 " 1> $NDIR 2> $NDIR ; then
+ umount $1 2> $NDIR
+ fi
+ mkfs.f2fs -f $1 1> $REDIR 2> $REDIR
+}
+
# make_btrfs( dev ) - Create a new btrfs filesystem on the named dev.
# Parameters: dev Device node to format.
make_btrfs() {
@@ -220,7 +238,7 @@ to format this partition?" 12 70 3 \
# ask_fs( dev ) - Asks the user the type of filesystem to use for the named
# device. Answer in $TMP/return
ask_fs() {
- unset BTRFS EXT2 EXT3 JFS REISERFS XFS
+ unset BTRFS EXT2 EXT3 F2FS JFS REISERFS XFS
if grep -wq ext2 /proc/filesystems 1> $NDIR 2> $NDIR ; then
EXT2="Ext2 is the traditional Linux file system and is fast and stable. "
fi
@@ -238,6 +256,9 @@ ask_fs() {
if grep -wq btrfs /proc/filesystems 1> $NDIR 2> $NDIR ; then
BTRFS="Btrfs is a B-tree copy-on-write filesystem. "
fi
+ if grep -wq f2fs /proc/filesystems 1> $NDIR 2> $NDIR ; then
+ F2FS="F2FS is a Flash-Friendly File System. "
+ fi
# These last two will only be present if the user asked for a special kernel.
# They should probably be the default in that case.
if grep -wq jfs /proc/filesystems 1> $NDIR 2> $NDIR ; then
@@ -251,7 +272,7 @@ dialog --title "SELECT FILESYSTEM FOR $1" \\
--backtitle "Partition $1 will be formatted." \\
--default-item $DEFAULT --menu \\
"Please select the type of filesystem to use for the specified \\
-device. Here are descriptions of the available filesystems: $EXT2 $EXT3 $EXT4 $JFS $REISERFS $XFS" \\
+device. Here are descriptions of the available filesystems: $EXT2 $EXT3 $EXT4 $BTRFS $F2FS $JFS $REISERFS $XFS" \\
0 0 0 \\
EOF
if [ ! "$EXT2" = "" ]; then
@@ -272,6 +293,9 @@ EOF
if [ ! "$BTRFS" = "" ]; then
echo "\"btrfs\" \"Btrfs Copy-on-Write B-tree Filesystem\" \\" >> $TMP/tempscript
fi
+ if [ ! "$F2FS" = "" ]; then
+ echo "\"f2fs\" \"Flash-Friendly File System\" \\" >> $TMP/tempscript
+ fi
if [ ! "$XFS" = "" ]; then
echo "\"xfs\" \"SGI's Journaling Filesystem\" \\" >> $TMP/tempscript
fi
@@ -352,6 +376,8 @@ if [ ! "$DOFORMAT" = "No" ]; then
make_reiserfs $ROOT_DEVICE
elif [ "$ROOT_SYS_TYPE" = "btrfs" ]; then
make_btrfs $ROOT_DEVICE
+ elif [ "$ROOT_SYS_TYPE" = "f2fs" ]; then
+ make_f2fs $ROOT_DEVICE
elif [ "$ROOT_SYS_TYPE" = "jfs" ]; then
if [ "$DOFORMAT" = "Check" ]; then
make_jfs $ROOT_DEVICE "y"
@@ -454,6 +480,8 @@ EOF
make_reiserfs $NEXT_PARTITION
elif [ "$NEXT_SYS_TYPE" = "btrfs" ]; then
make_btrfs $NEXT_PARTITION
+ elif [ "$NEXT_SYS_TYPE" = "f2fs" ]; then
+ make_f2fs $NEXT_PARTITION
elif [ "$NEXT_SYS_TYPE" = "jfs" ]; then
if [ "$DOFORMAT" = "Check" ]; then
make_jfs $NEXT_PARTITION "y"
diff --git a/source/installer/sources/initrd/usr/lib/setup/setup b/source/installer/sources/initrd/usr/lib/setup/setup
index f30064a0..7932feca 100755
--- a/source/installer/sources/initrd/usr/lib/setup/setup
+++ b/source/installer/sources/initrd/usr/lib/setup/setup
@@ -304,6 +304,12 @@ to choose packages individually." 4 60
done
export MAKETAG;
sleep 1
+ # On a new system, make /etc/mtab a symlink to /proc/mounts:
+ if [ ! -r $T_PX/etc/mtab ]; then
+ mkdir -p $T_PX/etc
+ ( cd $T_PX/etc ; ln -sf /proc/mounts mtab )
+ fi
+ # Do the package install:
if [ -r $TMP/SeTCDdev ]; then # only try to remount media if it's a CD/DVD
slackinstall --device `cat $TMP/SeTCDdev` --promptmode $MODE --srcpath `cat $TMP/SeTDS` --mountpoint /var/log/mount --target $T_PX --series $SERIES
elif [ -r $TMP/SeTremotesvr ]; then