Is it possible to make Ubuntu 20.04 boot faster?

I'm sorry if my question is rather newbie, because it is - but I've never bothered to tweak my Linux much. I've managed to get my Manjaro (not without some external help) cut boot time to 8-10s (by systemd-analyze) and I'd like to maybe try the same thing with Ubuntu but I am not sure what should I do and if it is possible. By all means it is not extremely slow but there is a major drawback on my nvme SSD since I've been using Manjaro which was up and ready in 10s and now it takes about 25s to get ready with Ubuntu. While the Manjaro was slow because of the grub timeout, Ubuntu has grub set to 0 by default - that one I've checked.

Here's my systemd-analyze and systemd-analyze blame - if anything else is needed I'll provide it:

systemd-analyze
Startup finished in 8.390s (firmware) + 4.976s (loader) + 2.131s (kernel) + 9.071s (userspace) = 24.570s 
graphical.target reached after 9.039s in userspace

systemd-analyze blame
7.076s NetworkManager-wait-online.service                   
5.821s plymouth-quit-wait.service                           
5.041s bolt.service                                         
1.753s grub-common.service                                  
1.727s apport.service                                       
1.159s snapd.service                                        
1.047s systemd-logind.service                               
1.032s networkd-dispatcher.service                          
 996ms accounts-daemon.service                              
 824ms udisks2.service                                      
 595ms polkit.service                                       
 590ms avahi-daemon.service                                 
 563ms bluetooth.service                                    
 539ms NetworkManager.service                               
 438ms switcheroo-control.service                           
 395ms dev-nvme0n1p2.device                                 
 365ms ModemManager.service                                 
 328ms thermald.service                                     
 314ms gdm.service                                          
 311ms wpa_supplicant.service                               
 300ms upower.service                                       
 253ms grub-initrd-fallback.service                         
 242ms e2scrub_reap.service                                 
 240ms gpu-manager.service                                  
 224ms rsyslog.service                                      
 224ms dev-loop1.device                                     
 223ms dev-loop0.device                                     
 184ms snap-snap\x2dstore-467.mount                         
 183ms snap-snapd-8542.mount                                
 182ms snap-gtk\x2dcommon\x2dthemes-1506.mount              
 173ms [email protected]                                    
 170ms dev-loop2.device                                     
 154ms pppd-dns.service                                     
 128ms systemd-resolved.service                             
 127ms systemd-backlight@backlight:intel_backlight.service  
 119ms alsa-restore.service                                 
 118ms systemd-timesyncd.service                            
 106ms dev-loop4.device                                     
 104ms systemd-user-sessions.service                        
 103ms swapfile.swap                                        
 101ms snap-gnome\x2d3\x2d34\x2d1804-36.mount

(...)

And here's systemd-analyze critical-chain:

graphical.target @9.039s
└─multi-user.target @9.039s
  └─kerneloops.service @8.974s +63ms
    └─network-online.target @8.969s
      └─NetworkManager-wait-online.service @1.891s +7.076s
        └─NetworkManager.service @1.340s +539ms
          └─dbus.service @1.311s
            └─basic.target @1.232s
              └─sockets.target @1.232s
                └─snapd.socket @1.226s +5ms
                  └─sysinit.target @1.210s
                    └─systemd-backlight@backlight:intel_backlight.service @1.082s +127ms
                      └─system-systemd\x2dbacklight.slice @921ms
                        └─system.slice @433ms
                          └─-.slice @433ms


           

I am using a NVMe SSD to boot. And have 20.04 Kubuntu installed. I also change grub to 3 sec delay from default of 10 sec, just to have time to press a key if needed.

fred@z170-focal-k:~$ systemd-analyze
Startup finished in 2.667s (kernel) + 5.167s (userspace) = 7.834s 
graphical.target reached after 5.155s in userspace

Turned off NetworkManager-wait with systemctl:

systemctl disable NetworkManager-wait-online.service

https://forums.linuxmint.com/viewtopic.php?t=282437

Changed from quiet splash to noplymouth, will see boot process rather than Ubuntu logo. Sometimes you then can see what process is hanging system, also. Even though not using raid nor encryption, installing drivers supposedly helps.

sed -i '/GRUB_TIMEOUT=/ s/10/3/' /etc/default/grub
sed -i '/GRUB_CMDLINE_LINUX_DEFAULT/ s/"quiet splash"/"noplymouth"/' /etc/default/grub
sudo update-grub
sudo apt install libblockdev-crypto2 libblockdev-mdraid2, 

turned off printer when rebooting,

removed all snaps, prefer .debs for most apps

sudo apt autoremove --purge snapd

If UEFI firmware update not supported (yet) and no thunderbolt, one of my systems also does not have bluetooth, so I also uninstall that on that system only

sudo apt-get purge fwupd
systemctl status bolt
boltctl list
systemctl mask bolt.service
sudo apt-get autoremove blueman bluez-utils bluez bluetooth 

Many with slow boot issues have reinstalled an have a reference in fstab to a bad UUID. Best to confirm all UUIDs are correct.

lsblk -o name,fstype,size,label,mountpoint,uuid | egrep -v "^loop"
cat /etc/fstab

Only if swap partition & reformatted this could be wrong UUID.

 cat /etc/initramfs-tools/conf.d/resume

Be sure to mount partitions with noatime.

UUID=54029c4f-0cbe-413e-80ce-78a4995b0551 /   ext4 noatime,errors=remount-ro  0  1

More details:

slow boot boot 19.10 (tried almost everything)

What does NetworkManager-wait-online.service do?

Ubuntu 16.04 slow boot (apt-daily.service)

How to remove fwupd.service from boot?

Do I really need apt-daily.service and apt-daily-upgrade.service?

https://ubuntuforums.org/showthread.php?t=2436900&p=13932499#post13932499

Ubuntu 15.04 network manager causing slow boot