From bc08e1e0dde1aa1c5f7645e8c50fe3a0d21cc23a Mon Sep 17 00:00:00 2001 From: Justin Wernick Date: Sat, 18 Feb 2023 21:24:19 +0200 Subject: Initial commit --- .gitignore | 1 + Cargo.lock | 7 +++++++ Cargo.toml | 8 ++++++++ readme.org | 27 +++++++++++++++++++++++++++ src/main.rs | 3 +++ 5 files changed, 46 insertions(+) create mode 100644 .gitignore create mode 100644 Cargo.lock create mode 100644 Cargo.toml create mode 100644 readme.org create mode 100644 src/main.rs diff --git a/.gitignore b/.gitignore new file mode 100644 index 0000000..ea8c4bf --- /dev/null +++ b/.gitignore @@ -0,0 +1 @@ +/target diff --git a/Cargo.lock b/Cargo.lock new file mode 100644 index 0000000..97cae35 --- /dev/null +++ b/Cargo.lock @@ -0,0 +1,7 @@ +# This file is automatically @generated by Cargo. +# It is not intended for manual editing. +version = 3 + +[[package]] +name = "shackle" +version = "0.1.0" diff --git a/Cargo.toml b/Cargo.toml new file mode 100644 index 0000000..dd069ae --- /dev/null +++ b/Cargo.toml @@ -0,0 +1,8 @@ +[package] +name = "shackle" +version = "0.1.0" +edition = "2021" + +# See more keys and their definitions at https://doc.rust-lang.org/cargo/reference/manifest.html + +[dependencies] diff --git a/readme.org b/readme.org new file mode 100644 index 0000000..a06c97f --- /dev/null +++ b/readme.org @@ -0,0 +1,27 @@ +#+TITLE: Shackle Shell + +A shell intended for restricted access on a version control repo server. + +This is intended as a replacement for [[https://git-scm.com/docs/git-shell][Git Shell]], but with the additional +commands I want to create new repos, rearrange things, etc built +in. + +It will also limit access to only git repos within the file hierarchy I use. + +Additionally, this may support passthrough for other version control system like +Pijul. + +* Roadmap + +- [ ] git fetch and git push +- [ ] interactive command prompt +- [ ] git init of both private and shared repos +- [ ] help command +- [ ] history (only within same session) +- [ ] listing of repos +- [ ] set repo descriptions +- [ ] set the main branch of a repo +- [ ] move a repo to a different group +- [ ] housekeeping git tasks (git fsck, git gc) +- [ ] pijul fetch and pijul push +- [ ] pijul support on other commands diff --git a/src/main.rs b/src/main.rs new file mode 100644 index 0000000..e7a11a9 --- /dev/null +++ b/src/main.rs @@ -0,0 +1,3 @@ +fn main() { + println!("Hello, world!"); +} -- cgit v1.2.3