I am trying to configure a 12 nvme drives as a single pool with 3 parity and 1 spare.
Manually - zpool create POOL draid3:8d:1s:12c - works fine - a.k.a 12 drives
while trying to use the GUI, if I set 8 data drives and 1 spare - and get a minimal requirement of 13 drives
Not sure what you are missing in the GUI to be honest.
DRAID3:8d:1s:12c looks fine.
I would not use DRAID for 12 drives.
Especially not for NVME drives that have a short resilver time. Which is the whole point of using dRAID instead of RAIDZ.
dRAID has a some pretty significant downsides. Like the fixed stripe width.
In your scenario, assuming your nvme drives use ashift 12, in a redundancy group of eight data disks using 4k sector disks, the minimum allocation size is 32k. Any files smaller than 32k still fill an entire stripe, with zeroes appended to the write to fill the entire stripe. So every single file will at least use 32k!
TrueNAS recommends dRAID for setups using more than 100 drives. I think the number +100 is a little bit high. Source
Spares are also mostly good for a remote system you can’t easily access. Otherwise they are a waste of money and electricity.
I would instead create two 6 wide RAIDZ2,
or 12 wide RAIDZ2,
or 4 three way mirrors.