aboutsummaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
-rw-r--r--archfi121
1 files changed, 97 insertions, 24 deletions
diff --git a/archfi b/archfi
index bc73005..0e4abef 100644
--- a/archfi
+++ b/archfi
@@ -12,7 +12,11 @@
# referance : https://wiki.archlinux.org/index.php/Installation_guide
+<<<<<<< HEAD
apptitle="Arch Linux Fast Install (archfi) - Version: 2019.01.01.20.34.17 (GPLv3)"
+=======
+apptitle="Arch Linux Fast Install (archfi) - Version: 2019.01.10.23.04.13 (GPLv3)"
+>>>>>>> src
baseurl=https://raw.githubusercontent.com/MatMoul/archfi/master
skipfont="0"
@@ -243,9 +247,15 @@ diskpartautodos(){
sleep 1
echo ""
pressanykey
- bootdev=$device"1"
- swapdev=$device"2"
- rootdev=$device"3"
+ if [ "${device::8}" == "/dev/nvm" ]; then
+ bootdev=$device"p1"
+ swapdev=$device"p2"
+ rootdev=$device"p3"
+ else
+ bootdev=$device"1"
+ swapdev=$device"2"
+ rootdev=$device"3"
+ fi
efimode="0"
fi
fi
@@ -277,9 +287,15 @@ diskpartautogpt(){
sgdisk $device -n=4:0:0
echo ""
pressanykey
- bootdev=$device"2"
- swapdev=$device"3"
- rootdev=$device"4"
+ if [ "${device::8}" == "/dev/nvm" ]; then
+ bootdev=$device"p2"
+ swapdev=$device"p3"
+ rootdev=$device"p4"
+ else
+ bootdev=$device"2"
+ swapdev=$device"3"
+ rootdev=$device"4"
+ fi
efimode="0"
fi
fi
@@ -309,9 +325,15 @@ diskpartautoefi(){
sgdisk $device -n=4:0:0
echo ""
pressanykey
- bootdev=$device"1"
- swapdev=$device"3"
- rootdev=$device"4"
+ if [ "${device::8}" == "/dev/nvm" ]; then
+ bootdev=$device"p1"
+ swapdev=$device"p3"
+ rootdev=$device"p4"
+ else
+ bootdev=$device"1"
+ swapdev=$device"3"
+ rootdev=$device"4"
+ fi
efimode="1"
fi
fi
@@ -341,9 +363,15 @@ diskpartautoefiusb(){
echo -e "r\nh\n3\nN\n\nY\nN\nw\nY\n" | gdisk $device
echo ""
pressanykey
- bootdev=$device"1"
- swapdev=
- rootdev=$device"4"
+ if [ "${device::8}" == "/dev/nvm" ]; then
+ bootdev=$device"p1"
+ swapdev=
+ rootdev=$device"p4"
+ else
+ bootdev=$device"1"
+ swapdev=
+ rootdev=$device"4"
+ fi
efimode="2"
fi
fi
@@ -440,6 +468,13 @@ selectparts(){
msg=$msg"root : "$rootdev"\n"
msg=$msg"home : "$homedev"\n\n"
if (whiptail --backtitle "$apptitle" --title "$txtselectpartsmenu" --yesno "$msg" 0 0) then
+ isnvme=0
+ if [ "${bootdev::8}" == "/dev/nvm" ]; then
+ isnvme=1
+ fi
+ if [ "${rootdev::8}" == "/dev/nvm" ]; then
+ isnvme=1
+ fi
mountmenu
fi
}
@@ -778,7 +813,10 @@ archmenu(){
options+=("${txtgenerate//%1/crypttab}" "")
fi
if [ "$luksroot" = "1" ]; then
- options+=("${txtgenerate//%1/mkinitcpio.conf}" "(encrypt hooks)")
+ options+=("${txtgenerate//%1/mkinitcpio.conf-luks}" "(encrypt hooks)")
+ fi
+ if [ "$isnvme" = "1" ]; then
+ options+=("${txtgenerate//%1/mkinitcpio.conf-nvme}" "(nvme module)")
fi
options+=("${txtedit//%1/fstab}" "($txtoptional)")
options+=("${txtedit//%1/crypttab}" "($txtoptional)")
@@ -822,22 +860,38 @@ archmenu(){
nextitem="${txtgenerate//%1/crypttab}"
else
if [ "$luksroot" = "1" ]; then
- nextitem="${txtgenerate//%1/mkinitcpio.conf}"
+ nextitem="${txtgenerate//%1/mkinitcpio.conf-luks}"
else
- nextitem="$txtbootloader"
+ if [ "$isnvme" = "1" ]; then
+ nextitem="${txtgenerate//%1/mkinitcpio.conf-nvme}"
+ else
+ nextitem="$txtbootloader"
+ fi
fi
fi
;;
"${txtgenerate//%1/crypttab}")
archgencrypttab
if [ "$luksroot" = "1" ]; then
- nextitem="${txtgenerate//%1/mkinitcpio.conf}"
+ nextitem="${txtgenerate//%1/mkinitcpio.conf-luks}"
+ else
+ if [ "$isnvme" = "1" ]; then
+ nextitem="${txtgenerate//%1/mkinitcpio.conf-nvme}"
+ else
+ nextitem="$txtbootloader"
+ fi
+ fi
+ ;;
+ "${txtgenerate//%1/mkinitcpio.conf-luks}")
+ archgenmkinitcpioluks
+ if [ "$isnvme" = "1" ]; then
+ nextitem="${txtgenerate//%1/mkinitcpio.conf-nvme}"
else
nextitem="$txtbootloader"
fi
;;
- "${txtgenerate//%1/mkinitcpio.conf}")
- archgenmkinitcpio
+ "${txtgenerate//%1/mkinitcpio.conf-nvme}")
+ archgenmkinitcpionvme
nextitem="$txtbootloader"
;;
"${txtedit//%1/fstab}")
@@ -1077,13 +1131,20 @@ archgencrypttab(){
pressanykey
}
-archgenmkinitcpio(){
+archgenmkinitcpioluks(){
clear
echo "sed -i \"s/block filesystems/block encrypt filesystems/g\" /mnt/etc/mkinitcpio.conf"
sed -i "s/block filesystems/block encrypt filesystems/g" /mnt/etc/mkinitcpio.conf
archchroot genmkinitcpio
pressanykey
}
+archgenmkinitcpionvme(){
+ clear
+ echo "sed -i \"s/MODULES=()/MODULES=(nvme)/g\" /mnt/etc/mkinitcpio.conf"
+ sed -i "s/MODULES=()/MODULES=(nvme)/g" /mnt/etc/mkinitcpio.conf
+ archchroot genmkinitcpio
+ pressanykey
+}
archeditmkinitcpio(){
$EDITOR /mnt/etc/mkinitcpio.conf
@@ -1324,9 +1385,16 @@ archsyslinuxinstall(){
additionalpkg=$additionalpkg"efibootmgr "
fi
- if [ "$(parted ${realrootdev::8} print|grep gpt)" != "" ]; then
- echo "$txtsyslinuxaddgptfdisk"
- additionalpkg=$additionalpkg"gptfdisk "
+ if [ "$isnvme" = "1" ]; then
+ if [ "$(parted ${realrootdev::(-2)} print|grep gpt)" != "" ]; then
+ echo "$txtsyslinuxaddgptfdisk"
+ additionalpkg=$additionalpkg"gptfdisk "
+ fi
+ else
+ if [ "$(parted ${realrootdev::8} print|grep gpt)" != "" ]; then
+ echo "$txtsyslinuxaddgptfdisk"
+ additionalpkg=$additionalpkg"gptfdisk "
+ fi
fi
if [ "$bootdev" != "" ]; then
@@ -1371,9 +1439,14 @@ archsyslinuxinstallbootloaderchroot(){
archsyslinuxinstallbootloaderefichroot(){
if [ ! "$1" = "none" ]; then
echo "cp -r /usr/lib/syslinux/efi64/* /boot/syslinux"
- echo "efibootmgr --create --disk ${1::8} --part ${1:(-1)} --loader /syslinux/syslinux.efi --label "Syslinux" --verbose"
cp -r /usr/lib/syslinux/efi64/* /boot/syslinux
- efibootmgr --create --disk ${1::8} --part ${1:(-1)} --loader /syslinux/syslinux.efi --label "Syslinux" --verbose
+ if [ "${1::8}" == "/dev/nvm" ]; then
+ echo "efibootmgr --create --disk ${1::(-2)} --part ${1:(-1)} --loader /syslinux/syslinux.efi --label "Syslinux" --verbose"
+ efibootmgr --create --disk ${1::(-2)} --part ${1:(-1)} --loader /syslinux/syslinux.efi --label "Syslinux" --verbose
+ else
+ echo "efibootmgr --create --disk ${1::8} --part ${1:(-1)} --loader /syslinux/syslinux.efi --label "Syslinux" --verbose"
+ efibootmgr --create --disk ${1::8} --part ${1:(-1)} --loader /syslinux/syslinux.efi --label "Syslinux" --verbose
+ fi
isvbox=$(lspci | grep "VirtualBox G")
if [ "$isvbox" ]; then
echo "VirtualBox detected, creating startup.nsh..."