+++ /dev/null
-FROM debian:buster-slim AS builder
-RUN apt-get update && apt-get install -y cmake gcc g++ git libreadline-dev make
-WORKDIR /app
-ENTRYPOINT git clone --recursive --depth 1 https://codeberg.org/armaan/gen-shell.git /app
-CMD cmake --configure . && cmake --build .
-
-FROM debian:buster-slim AS run
-RUN apt-get update && apt-get install -y cpp libreadline7 libncurses6
-WORKDIR /app
-COPY --from=builder /app/src/gen-shell .
-ENTRYPOINT ./gen-shell -c $command -b $before_command -a $after_command -p $custom_prompt
## Installation
### From a binary
-Binaries can be downloaded [from here](https://build.bhojwani.org/job/gen-shell/lastSuccessfulBuild/artifact/build/src/gen-shell). NB: 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.
+Binaries can be downloaded from the refs tab above. 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:
+Dependencies:
- cmake (2.8 or higher)
- make
- - gcc
- g++ (sometimes packaged as gcc-c++ or gcc-g++)
- - cpp (any somewhat recent version is fine)
- - libreadline development files (7 or 8 is fine, 5 is untested) (optional, but highly reccomended)
+ - libreadline development files (7 or 8 is fine, 5 is untested) (optional, but highly recommended)
-On a Debian or Ubuntu based distribution, you can install these dependencies with this command:
```bash
-sudo apt update && sudo apt install cmake make gcc g++ cpp libreadline-dev
-```
-Then download and build gen shell:
-```bash
-git clone --recursive https://codeberg.org/armaan/gen-shell
+git clone https://git.sr.ht/~armaan/gen-shell
cd gen-shell
cmake .
sudo make install
```
-### Docker
-You can also run gen-shell in docker. Simply use
-```bash
-docker run -it -e command=<command> -e before_command=<before command> -e after_command=<after command> -e custom_prompt=<custom prompt> armaanb/gen-shell
-```
-Or to build the docker container locally, run:
-```bash
-git clone --recursive https:/codeberg.org/armaan/gen-shell
-cd gen-shell
-docker build gen-shell:latest .
-```
-This method ensures that you have the latest version, and also lets you modify the code in the docker image
-
## 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).
-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. It is added as a submodule in the root folder of this repository.
+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.