Skip to content

finnbear/fsquirrel

Folders and files

NameName
Last commit message
Last commit date

Latest commit

 

History

15 Commits
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 

Repository files navigation

fsquirrel

Documentation crates.io Build

A small library for stashing custom extended attribute key-value pairs into file metadata, avoiding the need for sidecar files.

These attributes are may be preserved when files are copied to a compatible file system, but are always discarded in cases such as uploading to the internet. More specifically:

  • On Windows and MacOS, fs::copy can preserve them.
  • On Linux, only /usr/bin/cp --preserve=xattr can preserve them.

Platform support

On Unix (Android, Linux, MacOS, FreeBSD, NetBSD), this is a wrapper around xattr, hard-coded to the user. namespace.

On Windows, this uses NTFS Alternate Data Streams. It's not compatible with OS/2 exended attributes.

Features

  • Get 🕳️🌰🐿️
  • Set 🐿️💨 🌰
  • Remove 🌰🐿️💨 🕳️
  • List 🥜🌰🥔

License

Licensed under either of

at your option.

Contribution

Unless you explicitly state otherwise, any contribution intentionally submitted for inclusion in the work by you, as defined in the Apache-2.0 license, shall be dual licensed as above, without any additional terms or conditions.

About

Cross-platform get/set extended file attributes 🌰🐿️

Topics

Resources

License

Stars

Watchers

Forks