DMARC is looking at the “From:” header of the message.
As the “From:” header of the message has the domain name “unidef.net”, DMARC and it’s alignment will be validated according to “unidef.net”.
Since the SMTP MAIL FROM (Envelope From, Return-Path, etc.) that the SPF checks are done with, is on a completely different domain, “nongnu.org”, you CANNOT pass the SPF part of DMARC.
You’re always going to fail the SPF alignment, even if the SPF checks are passing, because the two domains aren’t equal.