niemeyer icon indicating copy to clipboard operation
niemeyer copied to clipboard

[Discussion] Hard drivers / partitioning / boot entries

Open PedroHLC opened this issue 5 years ago • 3 comments

The following work should cover at least these scenarios:

  1. A user with an empty driver, installing Linux for the first time, creating partitions and selecting mount points.
  2. A user with other oses installed, wanting to open space (delete/resize/move partition) and install arch.
  3. A user who wants to remove an already installed Linux setup and replace it.
  4. Someone who has an MBR or GPT disk and want to convert its disk to the other one before installing.
  5. Someone searching for security and wanting cryptographic setups.
  6. UEFI scenarios where /boot can be a new EFI partition or share the same used by another os. Also, I've seen laptops who only support NTFS as EFI partitions, and when reusing the user must be notified about the empty space needed for setup.
  7. An advanced user who likes to use ZFS or another volume-based filesystem.

So, I thought about a multiple-steps wizard presenting these steps:

  1. The users first have to select if he'll be using ZFS, LUKS or none.
  2. On this screen, the user is presented with all partitions/volumes on all disks, picking which ones he wants to remove.
  3. On this screen, the user is requested about converting its disks' partitions tables (MBR->GPT, GPT-MBR, Nothing->{MBR, GPT})
  4. The user may shrink partitions/vol
  5. The user may move partitions/vol
  6. The user may grow partitions/vol
  7. The user may create new partitions (here we can ask him about using dm-crypt or volumes)
  8. The user may set partitions types and flags
  9. The user may format partitions (mkfs)
  10. The user can pick mount points

NOTE: The ZFS work can be delayed, but it's better to count it in when deciding how to do the implementation, making it easy to be added later...

PedroHLC avatar Oct 10 '19 16:10 PedroHLC

By #12 it looks like this: like this

PedroHLC avatar Oct 15 '19 13:10 PedroHLC

In #12 a minimal interface was added, and applying the changes is already possible, but It's far from perfect yet...

PedroHLC avatar Oct 16 '19 22:10 PedroHLC

I would like to see support for ZFS, BtrFS and StratisD somehow. Maybe LUKS too, but no clue how to interface that well...

PedroHLC avatar Mar 29 '20 15:03 PedroHLC