# gen-shell
-![Jenkins](https://img.shields.io/jenkins/build?jobUrl=https%3A%2F%2Fbuild.bhojwani.org%2Fjob%2Fgen-shell%2F)
-=== WORK IN PROGRESS ===
-A simple way to turn any command into a shell with arrow key/history suppoert. This is a fork of [taskshell](https://github.com/GothenburgBitFactory/taskshell) with a highly reduce codebase.
+[![builds.sr.ht status](https://builds.sr.ht/~armaan/gen-shell/commits/.build.yml.svg)](https://builds.sr.ht/~armaan/gen-shell/commits/.build.yml?)
+
+A simple way to turn any command into a shell with arrow key/history support (if compiled with libreadline). Forked from [taskshell](https://github.com/GothenburgBitFactory/taskshell).
## Usage
-Just put the command that you want to repeat as the argument
+See `gen-shell --help`
## Installation
-### Binaries
-Binaries can be downloaded [from here](https://build.bhojwani.org/job/gen-shell/lastSuccessfulBuild/artifact/build/src/gen-shell). Note that these binaries are compiled against libreadline7, so if your system only has libreadline8, you can symlink 8 to 7 with `sudo ln -s /usr/lib/x86_64-linux-gnu/libreadline.so.8.0 /usr/lib/x86_64-linux-gnu/libreadline.so.7`. This isn't a great solution, but it gets the job done.
+### From a binary
+Binaries can be downloaded from [here](https://builds.sr.ht/~armaan/gen-shell/commits/.build.yml). NB: these binaries are compiled against libreadline version 8
### From source
-If you would like to avoid this, you can build from source. Doing so requires:
- - cmake
+Dependencies:
+ - cmake (2.8 or higher)
- make
- - gcc
- g++ (sometimes packaged as gcc-c++ or gcc-g++)
- - cpp 11 or higher
- - libreadline development files (7 or 8 is fine)
-```
-git clone https://codeberg.org/armaan/gen-shell
+ - libreadline development files (7 or 8 is fine, 5 is untested) (optional, but highly recommended)
+
+```bash
+git clone https://git.sr.ht/~armaan/gen-shell
cd gen-shell
cmake .
-make
-sudo cp src/gen-shell /usr/bin/
+sudo make install
```
-Or if you don't have root access, you can subsitute the last line with
-`cp src/gen-shell ~/.local/bin`
+## License
+Following suit from taskshell, gen-shell is MIT licensed by Armaan Bhojwani, 2020. Gen-shell is forked from taskshell, which was developed by [these people](https://github.com/GothenburgBitFactory/taskshell/blob/master/AUTHORS).
-### Docker
-You can also run gen-shell in docker. Simply use
-```
-docker run -it -e CMD=<command to run> armaanb/gen-shell:latest
-```
+Gen-shell uses the [Sarge library](https://github.com/MayaPosch/Sarge) for parsing command-line arguments. Sarge was written by Maya Posch and is BSD 3-Clause licensed.