yash-rs icon indicating copy to clipboard operation
yash-rs copied to clipboard

Make System API independent of nix

Open magicant opened this issue 1 year ago • 0 comments

As long as we re-export items from the nix crate to use in the yash_env::System API, the correctness of our semantic versioning is at the discretion of the nix crate. To put the API under our own control, we should avoid re-exporting items from the external crate.

  • Errno
    • [x] #356
    • [x] #391
  • AtFlags
    • [x] #392
  • FdFlag
    • [x] #393
  • OFlag
    • [x] #389
  • Signal
    • [x] ~~#365~~ #367
    • [x] Remove conversion between signal::Number and Signal https://github.com/magicant/yash-rs/blob/c47a0294e6eb1efba23e3d6eb91c926fb2738cb7/yash-env/src/system/virtual/signal.rs#L342 #368
  • SigSet
    • [x] #368
  • SigmaskHow
    • [x] #394
  • FileStat
    • [ ] TBD
  • SFlag
    • [ ] TBD
  • TimeSpec
    • [ ] TBD
  • WaitStatus
    • [ ] TBD
  • Mode
    • [x] #389
      • Eliminate nix::sys::stat::Mode from yash_env::System
      • Move yash_env::system::virtual::Mode to yash_env::system::Mode
    • [x] Apply umask when creating a file in virtual system d496420d2aad27ca824cd24cd94a77963a5d9e74
    • [x] ~~Consider moving Mode formatting from yash_builtin::umask::format to yash_env::*~~
      • Unresolved question: How should we format the set-user-ID, set-group-ID, and sticky bits?

magicant avatar Mar 22 '24 15:03 magicant