Hello,
It's fully open-source (license is basically public domain dedication). Of course it is not _the_ FN-DSA, since the draft standard is not published yet; I will modify the code to align it with the actual standard when it goes live.
The code is both portable and optimized, and meant for seamless integration (e.g. it is "no_std" to be compatible with bare-metal embedded system; it detects CPU support of AVX2 at runtime and fallbacks to non-AVX2 code if necessary). On 64-bit x86 and ARMv8, native floating point support is used; integer emulation is used otherwise. All internal behaviour (in particular rounding) should be strictly identical on all platforms. Performance is about the same as that of C code (keygen is faster because it's the ntrugen implementation; verification is faster because I put some extra AVX2 in there).
Apart from the "original Falcon" behaviour (as per the round 3 submission), I followed a variant that incorporates some recent suggestions: including the public key hash into that which is signed; support of external pre-hashing with proper domain separation (i.e. the use of a hash and the OID of the hash functions are including); support for an arbitrary domain-separation context; regeneration of the 40-byte random nonce in case of a restart during signing. All these seem "obviously fine" (they cannot decrease security) and I mimicked the way it is done in ML-DSA. In any case, as stated above, I'll align with the standard when published.
Thomas