TUTORIAL - Endeavour OS: Duck Taped! (Manjaro Architect + LV's + LUKS)

An user-friendly, pictorial-tutorial inspired by user @2000 detailing steps required to successfully install Endeavour OS (EOS) in an LV(s) + LUKS environment with help from Manjaro Architect.

Manjaro Architect (M-A for short) is a simpler means to install Manjaro linux for power-users. A series of packaged scripts, baked into Manjaro .iso’s. Here’s a small demonstration of its usefulness beyond intended purpose.



What’s Needed:

  • 2 flash drives.
    • One for Manjaro Architect and EOS Live sessions, the other for EOS install.
  • Machine where you’ll be installing Endeavour OS.


Preparation Steps

  1. Create an Endeavour OS Live USB/CD using USB #1, boot it.

  1. Install EOS to USB #2. Erase Disk (USB #2). Tick the box that says Encrypt System. Enter a simple passphrase, it’s temporary.

  1. Configure the system until you’ve reached the confirmation screen. Make sure everything is correct.


  1. Format USB #1 and create Manjaro Architect live USB. LINK TO ISO

  2. IMPORTANT! Make sure to boot USB #1 on machine intended for Endeavour OS install only.!



The Ropes

  1. Once you have arrived at the desktop, launch Manjaro Architect and follow the steps.

  • The next 22 images are self-explanatory. M-A makes it hard to get lost.
  1. Partition Disk


  1. LUKS Encryption.




  1. Logical Volume Management (LVM)


  1. Mount

  1. Mount / (Root)


  1. Mount /home





  1. Mount /boot/efi


Endeavour Switch

Moving our USB #2 EOS installation from earlier to destination disk.

  • PLEASE NOTE: Don’t forget to keep the M-A window open.

  1. Plug-in USB #2 and launch the file manager (Dolphin). Select USB #2 from the sidebar and unlock it using the same passphrase from Preparation Steps > Step # 2.

  1. Once unlocked, Copy the path in the Dolphin search bar. For example:
/run/media/manjaro/384792d8-lea5-B33f-8bb9-9ad2403fba77/
  • PLEASE NOTE!: Yours will be different!

  1. Because our disk is chrooted-in by M-A in /mnt/, all we need to do now is “syncEOS to it. Open a terminal window, then run:
sudo rsync -avA /PATH/TO/UNLOCKED/USB-#2/ /mnt/
  1. When finished, close the M-A window then boot back into M-A (USB #1). Set USB #2 asside, we won’t be needing it anymore.
  • PLEASE NOTE: Do not attempt to boot into EOS, it is broken.


Last Mount

Manjaro Architect can only do so much (As it is). Additional changes must be made for EOS to be bootable.


  1. Relaunch Manjaro Architect. Navigate to: Prepare Installation > LUKS Encryption > Open Encrypted Partition.




  1. Mount / (Root) and /home Logical Volumes (LVs) on disk. To do so go Back, navigate to: Prepare Installation > Mount Partitions.




Duck Tape

Final touches, so everything sticks togethere!


  1. Go Back, navigate to: Install Desktop System > Install Bootloader.


  1. Unlock using the same passphrase from The Ropes > LUKS Encryption > 4th picture down (.i.e.. Strong Passphrase)

  1. FSTAB: Go Back, navigate to: Install Desktop System > Configure Base > Generate FSTAB

  1. crypttab: Go Back, navigate to: Install Desktop System > Review Configuration Files > crypttab.

  • Open a terminal window, then run:
sudo cryptsetup luksUUID /dev/sda2
  • Identify your encrypted block device by running lsblk -p (e.g. /dev/sda2)
NAME                                  
/dev/sda
├─/dev/sda1
└─/dev/sda2
  └─/dev/mapper/cryptroot

Return to M-A and select crypttab. Remove everything in the uncommented line, leaving only this:

# <name>             <device>                       <password> <options>
cryptroot UUID=YOUR-LUKS-UUID-GOES-HERE /crypto_keyfile.bin luks

  1. mkinitcpio: Select mkinitcpio from the Review Configuration Files list. Scrolls down to HOOKS= and add the lvm2 hook to the line:
HOOKS="base udev autodetect modconf block keyboard keymap encrypt lvm2 filesystems"

  1. grub: Select grub from the Review Configuration Files list. Clear everything between quiet and loglevel=3 parameters following GRUB_CMDLINE_LINUX_DEFAULT="




Finished!

  1. Exit Installer and boot to disk.

  1. Enter passphrase, you’re done!


NOTES

Any changes/updates made to this tutorial will go here!


09/06/19 - In the future, #ENABLE_CRYPTODISK=Y will need to be uncommented once EOS’s Calamares assimilates /etc/default/grub default entries.


  • EOS’s /etc/default/grub is somewhat messy by default. GRUB_CMDLINE_LINUX_DEFAULT=" edit here is partly due to this. Duplicate, out of place entries at the bottom:
5 Likes

Thank you for the work you’ve put in this tutorial.

1 Like

Hopefully it can be of use. Thorough tutorials is everything a newcomer needs sometimes.

Users of Manjaro, or any Arch distro, can use it to switch. LV's make it extremely easy.

I replace EOS in my test machines this way. Purge root LV and reinstall. :grimacing:

1 Like

@Bryanpwo should I make a separate post?

Just post it in the bug report area.:wink:

1 Like

I’ve been long waitin for this. This is great great work, thanks a lot :slight_smile:

1 Like

Very glad I could be of service! :slightly_smiling_face:

EOS boot entry label may be “manjaro”, as it is hardcoded into the scripts.

You can remove it using sudo efibootmgr -bB XXXX, where XXXX represents the four digits following the manjaro entry. To list all entries simply run sudo efibootmgr.

Here comes an lvm noob question: can we also have a swap under LV along with / and /home?

1 Like

Manjaro Architect allows for creation of a swap LV or swapfile relatively easily.

Instead of creating 2 LV’s for / and /home, create a third one for swap and partition accordingly. After mounting /, M-A will ask if there’s a “swapfile” or swap partition you’d like to mount. Select your swap LV, format it as ext4, and resume the tutorial. :crazy_face:

1 Like

@Computer thank you very much for your prompt answer. It seems it is as simple as partitioning during a typical installation :upside_down_face:

1 Like