Ext4 is supported under FreeBSD via fuse only
One must must take care with ext4. Ext4 is a journalised filesystem (not EXT2 so more recommendable for portable data, and there is a native kernel module support in FreeBSD), as such it can raise issues when writing such volume with a non native OS. Journalisation is not supported and so this can corrupt the journal with a potential loss of data.
In fact journalisation can be deactivated on ext4. So for a mobile drive formatted in EXT4 it is recommended to deactivate the journal via the linux tunefs command. This is exactly the same problem with NTFS, and many people ignore that.
As far as NTFS is used only on non native OS, journal is not activated, so there is apparently no problem, but if the volume is connected further to a Windows machine, this machine could activate the journal, and there is always a little risk when returning to a nix machine. If the file system is dirty, writing on it with a nix machine and it may invalidate the journal, and so returning to a windows machine it will be impossible to recover the data with the journal.
sysutils/fusefs-ext4fuse : in read only mode (very interesting to prevent any risk of data corruption if the filesystem is journalised)
sysutils/fusefs-ext2 : looking to the description, this port seems to support ext2, ext3, ext4 in read and write mode
sysutills/fusfefs-lkl : via linux kernel as a library. This port supports in read and write mode BTFRS, XFS, EXT3, EXT4
The last port has been marked as broken quite recently, as FreeBSD switched to GCC6 as the new default.
Anyway, uncommentting the IGNORE line in the Makefile and compiling with GCC 5 seems to work
The port build for me... it would just need some further check to verify if it is working properly
make USE_GCC=5 install
or
make USE_GCC=5 NO_IGNORE="yes" install
(so no need to modify the Makefile)
There is absolutely no interest to port EXT4 to FreeBSD. In fact EXT4 is a very limited filesystem targeting workstation ONLY. BSD flavors generally target servers, big data... this is the reason why for many years BSD kept on using the Unix File System, while Linux was creating ten thousand of vaporware filesystems, and so later FreeBSD decided to integrate ZFS, which is also as UFS a big data filesystem.
You know what ? Ext4 is just a little toy with no interest for OS targeting primarily servers.
Just look at the Wikipedia... and you will see the very big difference between UFS, ZFS... engineered for big data, and... EXT4
XFS would be far more interesting (there was a kernel module in read only support, but since FreeBSD 11, XFS has been dropped, only fuse ports are available)
Hammer from Dragonfly seems to be promising if I remember some famous words of a member of this forum Oko
At this moment BTFRS is still... very experimental compared to ZFS... offered only by some Linux flavor as OpenSuse, but.... dropped by Red Hat. So BTFRS is quite controversial at this moment.
And finally.... Linux is Linux, Windows is Windows, FreeBSD is FreeBSD... there is from my point of view no interest to try to make them the same.
And remember that many people choose Linux because they hate Windows.... some people choose BSD because they hate Linux.
First, the BSD license and the GPL are totally different. This is just not only a little difference, and this does explain the "war" between the Linux (GPL) world and the BSD World.
The real and the only real FREE license is BSD, MIT.... not GPL
FreeBSD is built according to its own philosophy and we all love this philosophy, so we don't want that FreeBSD becomes one day a kind of Linux. If this day happens, I would migrate to OpenBSD, DragonFly or NetBSD