package fat-filesystem

  1. Overview
  2. Docs
Pure OCaml implementation of the FAT filesystem

Install

Dune Dependency

Authors

Maintainers

Sources

fat-filesystem-0.15.1.tbz
sha256=6211952a8dd008ab7d02cdb3a6545a65a5ff8047e71dd8ce48a09fb500fe10a3
sha512=cddfa7e43dbd6ecab23113b3136c91f60c3890efc773603e6a3c3dd531c19e437a8e10b0923e1ce7fbc1d2ca77e6f098040e94678f79f04cec98c56ecef4b5cd

Description

This library has two purposes:

  1. to allow the easy preparation of bootable disk images containing mirage kernels
  2. to provide a simple key=value layer for MirageOS applications

Tags

org:mirage org:xapi-project

Published: 11 Apr 2022

README

Pure OCaml implementation of the FAT filesystem

This library has two purposes:

  1. primary: to allow the easy preparation of bootable disk images containing Mirage kernels

  2. secondary: to provide a simple key=value store for Mirage applications

Note that "filesystems" are inherently legacy systems which modern Mirage applications will not use directly. The most likely use for this library is in booting a Mirage application via some kind of disk image.

Known limitations

  • can only make FAT16 filesystems

  • no VFAT support

  • no exFAT support (see #78)

  • corrupts under concurrent writes

PRs welcome to address any of these limitations!

Dependencies (14)

  1. fmt >= "0.8.7"
  2. astring
  3. cmdliner >= "1.1.0"
  4. re >= "1.7.2"
  5. io-page >= "2.4.0"
  6. mirage-kv >= "4.0.0" & < "5.0.0"
  7. mirage-block-unix >= "2.13.0"
  8. mirage-block >= "3.0.0"
  9. lwt >= "2.4.3"
  10. rresult
  11. ppx_cstruct
  12. cstruct >= "6.0.0"
  13. dune >= "1.0"
  14. ocaml >= "4.06.0"

Dev Dependencies (2)

  1. alcotest with-test
  2. mirage-block-combinators with-test

Used by (2)

  1. mirage-www >= "1.1.0"
  2. xe-unikernel-upload

Conflicts

None