🏡 index : ~doyle/chartered.git

author Jordan Doyle <jordan@doyle.la> 2021-09-10 2:10:51.0 +01:00:00
committer Jordan Doyle <jordan@doyle.la> 2021-09-10 2:10:51.0 +01:00:00
commit
cd40f03b298fcf84c6d42d4ab5233077d6822996 [patch]
tree
a51faa8bd57981cde990dd1fa5bd9dbfd1aa8ba5
parent
7a14d33d8d84b199fb5819f9ca610d8329a97cbe
download
cd40f03b298fcf84c6d42d4ab5233077d6822996.tar.gz

readme



Diff

 README.md | 19 +++++++------------
 1 file changed, 7 insertions(+), 12 deletions(-)

diff --git a/README.md b/README.md
index e9617d6..8e3a029 100644
--- a/README.md
+++ a/README.md
@@ -1,21 +1,16 @@
# chartered

a little dig at creating a private cargo repository with authenticated downloads, the plan is to have git connect to
a git server we setup that we can serve a fake index from generated just for the authenticated user that we can embed
authentication credentials into.

i've got git connecting to this server and attempting to communicate with it after sending a little bit of hard-coded
preamble.

next steps:

- ~reverse engineer & create tokio codec for the git protocol~ **now successfully generating a repo, tree & blob in memory git clients can understand!**
- clean up all the hacked-together code and package it all up into a nice library for generating git commit objects etc
- ~serve cargo manifest over git (how does git handle 'force pushes' from server -> client? lets see how they like it for once, i'm sick of people picking on servers all the time)~ **turns out, very well - they've helpfully included the --force flag in their `git fetch` call so we can serve a completely different commit on every pull if we wanted to and not have to worry about conflicts**
- serve .crate files over http using auth tokens we generated while serving the manifest

[open tasks](https://github.com/w4/chartered/issues)

#### fine grained permissions per user per crate

#### open q's
- VISIBLE
- PUBLISH_VERSION
- YANK_VERSION
- MANAGE_USERS

maybe it'd be better to use git directly and create an index on the filesystem just for the user? seems less fun though
(support for groups coming)