diff --git a/iso/boot/grub.cfg b/iso/boot/grub.cfg index 9cb7b70d..3bf2fa7e 100644 --- a/iso/boot/grub.cfg +++ b/iso/boot/grub.cfg @@ -29,7 +29,7 @@ set theme=/boot/grub/theme/1 # } menuentry --hotkey=i 'Press [Enter] to Install DAppNode' { set background_color=black - linux /install.amd/vmlinuz vga=788 FRONTEND_BACKGROUND=dark --- quiet + linux /install.amd/vmlinuz vga=788 nvme_core.default_ps_max_latency_us=0 FRONTEND_BACKGROUND=dark --- quiet initrd /install.amd/initrd.gz } # submenu --hotkey=a 'Advanced options ...' { diff --git a/iso/boot/txt.cfg b/iso/boot/txt.cfg index c3c5a656..da567ece 100644 --- a/iso/boot/txt.cfg +++ b/iso/boot/txt.cfg @@ -1,4 +1,4 @@ label install menu label ^Install kernel /install.amd/vmlinuz - append vga=788 initrd=/install.amd/initrd.gz FRONTEND_BACKGROUND=dark --- quiet + append vga=788 initrd=/install.amd/initrd.gz nvme_core.default_ps_max_latency_us=0 FRONTEND_BACKGROUND=dark --- quiet diff --git a/iso/boot/ubuntu/grub.cfg b/iso/boot/ubuntu/grub.cfg index 88c8305b..54f6a602 100644 --- a/iso/boot/ubuntu/grub.cfg +++ b/iso/boot/ubuntu/grub.cfg @@ -16,6 +16,6 @@ set theme=/boot/grub/themes/dappnode/theme.txt menuentry "Install Dappnode (over Ubuntu Server)" { set background_color=black set gfxpayload=keep # Maintain the graphical resolution through the booting - linux /casper/vmlinuz autoinstall vga=788 FRONTEND_BACKGROUND=dark --- # Added autoinstall to make it unattended + linux /casper/vmlinuz autoinstall vga=788 nvme_core.default_ps_max_latency_us=0 FRONTEND_BACKGROUND=dark --- # Added autoinstall to make it unattended initrd /casper/initrd -} \ No newline at end of file +} diff --git a/iso/preseeds/preseed.cfg b/iso/preseeds/preseed.cfg index 761f5075..af3cb41c 100644 --- a/iso/preseeds/preseed.cfg +++ b/iso/preseeds/preseed.cfg @@ -37,6 +37,9 @@ d-i preseed/late_command string \ in-target mkdir -p /usr/src/dappnode; \ cp -ar /cdrom/dappnode/* /target/usr/src/dappnode/; \ cp -a /cdrom/dappnode/scripts/rc.local /target/etc/rc.local; \ + mkdir -p /target/etc/default/grub.d; \ + echo 'GRUB_CMDLINE_LINUX_DEFAULT="$GRUB_CMDLINE_LINUX_DEFAULT nvme_core.default_ps_max_latency_us=0"' > /target/etc/default/grub.d/dappnode-nvme-power-save.cfg; \ + in-target update-grub; \ in-target chmod +x /usr/src/dappnode/scripts/dappnode_install_pre.sh; \ in-target chmod +x /usr/src/dappnode/scripts/static_ip.sh; \ in-target gpasswd -a $(getent passwd "1000" | cut -d: -f1) sudo; \ diff --git a/iso/preseeds/preseed_unattended.cfg b/iso/preseeds/preseed_unattended.cfg index cf7b58d4..c49598d7 100644 --- a/iso/preseeds/preseed_unattended.cfg +++ b/iso/preseeds/preseed_unattended.cfg @@ -77,6 +77,9 @@ d-i preseed/late_command string \ cp -a /etc/network/interfaces /target/etc/network/interfaces; \ cp -ar /cdrom/dappnode/* /target/usr/src/dappnode/; \ cp -a /cdrom/dappnode/scripts/rc.local /target/etc/rc.local; \ + mkdir -p /target/etc/default/grub.d; \ + echo 'GRUB_CMDLINE_LINUX_DEFAULT="$GRUB_CMDLINE_LINUX_DEFAULT nvme_core.default_ps_max_latency_us=0"' > /target/etc/default/grub.d/dappnode-nvme-power-save.cfg; \ + in-target update-grub; \ in-target chmod +x /usr/src/dappnode/scripts/dappnode_install_pre.sh; \ in-target touch /usr/src/dappnode/.firstboot; \ in-target /usr/src/dappnode/scripts/dappnode_install_pre.sh UPDATE diff --git a/iso/preseeds/ubuntu/autoinstall.yaml b/iso/preseeds/ubuntu/autoinstall.yaml index 4fb3eadc..e4302f7f 100644 --- a/iso/preseeds/ubuntu/autoinstall.yaml +++ b/iso/preseeds/ubuntu/autoinstall.yaml @@ -26,5 +26,11 @@ autoinstall: - "cp -a /cdrom/dappnode/scripts/rc.local /target/etc/rc.local" - "chmod +x /target/usr/src/dappnode/scripts/dappnode_install_pre.sh" - "touch /target/usr/src/dappnode/.firstboot" + - "mkdir -p /target/etc/default/grub.d" + - >- + echo 'GRUB_CMDLINE_LINUX_DEFAULT="$GRUB_CMDLINE_LINUX_DEFAULT + nvme_core.default_ps_max_latency_us=0"' + > /target/etc/default/grub.d/dappnode-nvme-power-save.cfg + - "curtin in-target --target=/target -- update-grub" - "cp -ar /etc/netplan/* /target/etc/netplan/" # Necessary for prerequisites - "curtin in-target --target=/target -- /usr/src/dappnode/scripts/dappnode_install_pre.sh UPDATE" diff --git a/iso/preseeds/ubuntu/autoinstall_unattended.yaml b/iso/preseeds/ubuntu/autoinstall_unattended.yaml index 0e4fd24e..f11ba695 100644 --- a/iso/preseeds/ubuntu/autoinstall_unattended.yaml +++ b/iso/preseeds/ubuntu/autoinstall_unattended.yaml @@ -40,6 +40,12 @@ autoinstall: - "cp -a /cdrom/dappnode/scripts/rc.local /target/etc/rc.local" - "chmod +x /target/usr/src/dappnode/scripts/dappnode_install_pre.sh" - "touch /target/usr/src/dappnode/.firstboot" + - "mkdir -p /target/etc/default/grub.d" + - >- + echo 'GRUB_CMDLINE_LINUX_DEFAULT="$GRUB_CMDLINE_LINUX_DEFAULT + nvme_core.default_ps_max_latency_us=0"' + > /target/etc/default/grub.d/dappnode-nvme-power-save.cfg + - "curtin in-target --target=/target -- update-grub" - "cp -ar /etc/netplan/* /target/etc/netplan/" # Necessary for prerequisites - "curtin in-target --target=/target -- /usr/src/dappnode/scripts/dappnode_install_pre.sh UPDATE" # TODO: Handle /etc/network/interfaces and /etc/network/devhotplug