From 1b1c96ff94fc455d9f658395b738c30eb7fc2e16 Mon Sep 17 00:00:00 2001 From: Armaan Bhojwani <3fb650a9-b47e-4604-a282-1dd91953b2ee@anonaddy.me> Date: Thu, 29 Oct 2020 21:56:52 -0400 Subject: [PATCH] switched docker to debian-slim --- Dockerfile | 8 ++++---- README.md | 19 ++++++++++--------- 2 files changed, 14 insertions(+), 13 deletions(-) diff --git a/Dockerfile b/Dockerfile index e771d9e..82f372d 100644 --- a/Dockerfile +++ b/Dockerfile @@ -1,12 +1,12 @@ -FROM centos:8 AS builder -RUN dnf -y install cmake gcc gcc-c++ git readline-devel make +FROM debian:buster-slim AS builder +RUN apt-get update && apt-get install -y cmake gcc g++ git libreadline-dev make RUN git clone https://codeberg.org/armaan/gen-shell.git /app WORKDIR /app RUN cmake --configure . RUN cmake --build . -FROM centos:8 -RUN dnf -y install readline cpp +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 $CMD diff --git a/README.md b/README.md index db4eee2..11f0511 100644 --- a/README.md +++ b/README.md @@ -1,6 +1,6 @@ # gen-shell ![Jenkins](https://img.shields.io/jenkins/build?jobUrl=https%3A%2F%2Fbuild.bhojwani.org%2Fjob%2Fgen-shell%2F) -=== WORK IN PROGRSS === +=== 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. ## Usage @@ -8,16 +8,17 @@ Just put the command that you want to repeat as the argument ## 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 should 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 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 source If you would like to avoid this, you can build from source. Doing so requires: - - CMake - - g++ - - libreadline development files - -```bash + - cmake + - 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 cd gen-shell cmake . @@ -29,6 +30,6 @@ Or if you don't have root access, you can subsitute the last line with ### Docker You can also run gen-shell in docker. Simply use -```bash +``` docker run -it -e CMD= armaanb/gen-shell:latest ``` -- 2.39.2