Skip to content

droyo/styx

Folders and files

NameName
Last commit message
Last commit date

Latest commit

bf55d75 · Oct 11, 2022
Sep 15, 2022
Aug 6, 2019
Jun 7, 2020
Nov 30, 2015
Apr 28, 2018
Sep 24, 2015
Sep 24, 2016
Sep 12, 2016
Oct 14, 2021
Apr 17, 2020
Sep 12, 2016
Sep 12, 2016
Aug 17, 2016
Oct 14, 2021
Oct 14, 2021
Oct 15, 2016
Oct 14, 2021
Aug 6, 2019
Sep 15, 2019
Sep 15, 2022
Jun 7, 2020
Feb 20, 2019
Oct 14, 2021
Oct 8, 2016

Repository files navigation

build status GoDoc

This repo provides Go packages for writing 9P2000 file servers. One such example is jsonfs, which serves a JSON-encoded file as a file tree. Currently, only server functionality is provided, though a client is planned -- see plan9port, v9fs for client implementations.

9P2000 provides a lightweight, stateful protocol for using hierarchical APIs. The styx package attempts to expose, rather than hide, this statefulness; user sessions are handled by, and tied to the lifetime of, a single function.

WARNING: WORK IN PROGRESS

This is a work-in-progress on a high-level library for writing 9P servers and clients. While it has reached a point where it can be used to write working file systems, the high-level API and its implementation are still subject to change. For now, please vendor this dependency if you would choose to use it.

This repository provides the following packages:

  • styxproto: Low-level decoder and encoder for 9P2000 messages.
  • styx: high-level server package akin to net/http
  • styxauth - various styx.AuthFunc implementations

Of these, styxproto is the most stable. The styx package is still in an experimental stage.

About

Go library for the 9P filesystem protocol

Resources

License

Stars

Watchers

Forks

Releases

No releases published

Packages

No packages published