← Back to context

Comment by lucasoshiro

1 year ago

Nice. But I would like it better if the effort was to support ext4, BtrFS, NTFS and other popular filesystems from the Linux and Windows world...

Apple recently made FSKit a supported/documented API, which should allow third-parties to add support for other filesystems: https://developer.apple.com/documentation/fskit?language=obj...

  • 3rd party supporting a file system would be one of the last things on a list of all software I’d ever want a 3rd party writing instead of the OS maker.

    Nightmare to evaluate the options, pure stress testing the options, difficult to know if it didn’t mess something up.

    • >3rd party supporting a file system would be one of the last things on a list of all software I’d ever want a 3rd party writing instead of the OS maker.

      Given how many people use FUSE, Paragon NTFS for Mac, and similar tools, you're hardly totally representative.

      10 replies →

    • That being said: FSKit is a userspace API. In that respect, it's a lot better than filesystem code running in the kernel - it can't crash your computer or corrupt data on other filesystems, and it's much more tightly sandboxed if it gets exploited.

      1 reply →

    • What would Apple's incentive be to support Btrfs, Ext4, XFS or ZFS ?

      Btrfs, Ext4 and XFS are all under GPLv3, which may or may not be a problem for Apple, but "just in case".

      They tried with ZFS, but couldn't strike a deal with Sun/Oracle, so instead invented APFS.

      Apple already delivers a stable filesystem. It may not be "best of breed", but it works, as billions of devices runs on it every day with zero problems.

    • I'd be happy for VeraCrypt not to have to rely on MacFuse which requires I go turn off some very low-level protection to even use. It sounds like this makes that possible.

      I don't really understand your objection to be honest. Drivers for storage are common on other platforms

  • Is it actually supported and usable now? I seem to recall it spending a lot of time in a "half-documented and not actually available" state.

  • Thanks for sharing about this! I didn't know, and I like to use (or at least play with) some third-party filesystems on macOS.

This article describes a new disk image format (on which a filesystem can be put, APFS in the article), not a filesystem, or did I misunderstand?

edit: added the word "image", which I apparently forgot to type. Mentioning the edition because otherwise it would make an answer to this comment difficult to understand.

  • This is a new disk image format. Not even a disk format. For virtualizing a disk.

    On which you can put a filesystem, yes.

    There seems to be an extraordinary amount of confusion in many of the comments, I don't know why.

  • Yeah and OP was asking, why was effort spent on a disk image format rather than a file system. Seems like a reasonable question to ask.

    • I don't think the question would make much sense. Why did Apple do X and not Y (unrelated to X) is not an interesting question. It would seem close to whataboutism. They were willing to spend money on X. They are not willing to spend money on Y. Or, they didn't think about doing Y. Or, they needed X. They haven't needed Y. Apple want fast VMs and also they haven't needed Btrfs. What insight can you get? There's no relation between the two. You'd get the same insight by asking "Why didn't Apple implement Btrfs?", but by linking the two in the same question, you are kinda implying there's a link.

      But the question would have been highly relevant had Apple developed a new FS, and disk images and FS do seem related at first. I didn't want to assume whataboutism, so I figured OP was possibly confused because this is likely, and I wanted to give them a hint without bluntly asking whether they confused things. I could have, really there's no harm in being confused, nor in asking whether someone was confused.

ext4 and Btrfs are only well supported on Linux; they are not universal standards.

NTFS was only supported well on Windows until recently; but extensions like NTFS Encryption (BitLocker) are still Windows only. Mac still does not let you write to an NTFS volume.

APFS and HFS+ are obviously Apple file systems.

FreeBSD does not support ext4 or Btrfs well; but instead prefers UFS2 or ZFS despite also being an open-source Unix-inspired OS.

The world runs on proprietary or non-universal file systems with CDFS (ISO 9660), FAT, and exFAT being the sole exceptions.

  • Is there a single filesystem in the world (besides "simple" ones like FAT) that both has an open standard AND is licensed in a "usable" codebase (MIT or other "non-copyleft" license)?

  • > NTFS was only supported well on Windows until recently

    I remember using ntfs-3g without any issues on my first Linux laptop 15 years ago. So that's not really "recently".

    • I intentionally excluded unofficial or third party software, as almost anything is supported if you’re brave enough. The quality of said drivers also wildly varies.

      Until 4 years ago, nothing was good enough for the upstream Linux kernel.

      1 reply →

  • if Mac also supported Linux file formats they would get closer to universal, though? we can't get to that world without these individual steps.

    creating a new non universal one is backing away from it

    • Does this even matter, if you can copy/mount files over a network?

      What are potential use cases where you'd want to support those additional file systems? External drives?

      3 replies →

    • Even FreeBSD can't be bothered to do a good job supporting Linux file systems. They're basically proprietary siloed file systems like the rest, even if code is available. Linux, meanwhile, can't be bothered to support either of FreeBSD's file systems officially. UFS2 is hardly patented anymore, but Linux doesn't care beyond read-only support.

      Being open-source, and even being in a popular open-source project, does not make a standard, or even imply inferiority to those who do not implement it.

      https://xkcd.com/927/

      2 replies →

  • [flagged]

    • A. You're flagged for graphic, inappropriate, and triggering language.

      B. Oracle sued Google for a decade over whether a minor number of APIs were copyrighted in Java; do you think Apple's eager to embrace their technology regardless of license? Heck, even Ubuntu wasn't willing to make that bet.

      C. Guess how much official licenses for those fancy file systems cost.

      D. ZFS, and other fancy file systems, are not known for low RAM and CPU usage. In a server, this does not matter; but it's pretty important for anything on a battery.

Does anybody else think that it would make sense for Apple and Microsoft to just get in a room and horse trade a few things like this, if they cared about user experience? Cross-license both APFS and NTFS, and share any internal documentation under NDA so that external drives can use modern formats with safety features like journaling without locking users in.

Oh wait, I just answered my question.

  • I suspect there wouldn't be an agreement on a minimum set of features for a modern filesystem, even just for external disks, even if you limited it to flash storage devices to avoid all the complexities of spinning platter latency.

    After all, there's no such agreement on Linux either - we just have all the Linux vendor options available.

    • Let me clarify, I don't expect two vendors like that to merge filesystem specs. I just think they should have first-class support for reading and writing on each others' default (NTFS and APFS) filesystems because the alternative is that a user who has a hard drive full of their important documents can't switch between Mac and PC without buying 100% more storage with which to do a complicated filesystem-migration exercise -- and let's be honest, only an absolute nerd (like us) would even understand what that is. Others would just plug in the NTFS disk to the Mac, see the popup saying "unreadable," shrug and give up (or worst case, format it not understanding that means erasing).

      This is the kind of thing a reasonable government would just tell them they had to do by virtue of being a fully locked-in duopoly, just like they should tell Apple and Google that users should be able to choose to install an alternat app store.

  • This is a disk image format so why not VHD? It seems like it's open enough and supports what a virtual disk needs what do we gain with yet another file that's a disk type?