From bed08974f66c5949d8bf07da563dcf426f47c395 Mon Sep 17 00:00:00 2001 From: Larry Du Date: Mon, 17 Feb 2025 06:42:46 +0000 Subject: refactor: Renamed 'tools' to 'docker_tools' --- docker_tools/Dockerfile | 20 ++++++++++++++++++++ docker_tools/README.md | 12 ++++++++++++ docker_tools/build.sh | 1 + docker_tools/config/README | 2 ++ docker_tools/config/nvim/.gitignore | 2 ++ docker_tools/config/tmux/.gitignore | 2 ++ docker_tools/devbox.sh | 1 + docker_tools/docker-compose.yml | 15 +++++++++++++++ 8 files changed, 55 insertions(+) create mode 100644 docker_tools/Dockerfile create mode 100644 docker_tools/README.md create mode 100644 docker_tools/build.sh create mode 100644 docker_tools/config/README create mode 100644 docker_tools/config/nvim/.gitignore create mode 100644 docker_tools/config/tmux/.gitignore create mode 100644 docker_tools/devbox.sh create mode 100644 docker_tools/docker-compose.yml (limited to 'docker_tools') diff --git a/docker_tools/Dockerfile b/docker_tools/Dockerfile new file mode 100644 index 0000000..7a3b20c --- /dev/null +++ b/docker_tools/Dockerfile @@ -0,0 +1,20 @@ +FROM verilator/verilator:latest + +# Install python3 + pip3 for fusesoc +RUN apt-get update \ + && DEBIAN_FRONTEND=noninteractive \ + && apt-get install --no-install-recommends -y \ + curl \ + python3 \ + python3-pip \ + vim \ + neovim \ + tmux \ + && apt-get clean \ + && rm -rf /var/lib/apt/lists/* + +RUN pip3 install --upgrade fusesoc + +WORKDIR /work + +ENTRYPOINT [ "/bin/bash", "-l", "-c" ] diff --git a/docker_tools/README.md b/docker_tools/README.md new file mode 100644 index 0000000..630e576 --- /dev/null +++ b/docker_tools/README.md @@ -0,0 +1,12 @@ +# Docker environment setup +This docker container has everything you need to develop. + +To build the docker image, run +``` +./build.sh +``` +To enter the work environment. +``` +./devbox.sh +``` +The config directory mounts to the .config directory in root, for you to add your vim/nvim/tmux configurations. diff --git a/docker_tools/build.sh b/docker_tools/build.sh new file mode 100644 index 0000000..75a00cd --- /dev/null +++ b/docker_tools/build.sh @@ -0,0 +1 @@ +docker build -t devbox:latest . diff --git a/docker_tools/config/README b/docker_tools/config/README new file mode 100644 index 0000000..530a7de --- /dev/null +++ b/docker_tools/config/README @@ -0,0 +1,2 @@ +# Configuration files for your favorite programs +Put all of your config files in here, if you want to add new programs, add new mounts to the docker compose and new programs to the docker file. diff --git a/docker_tools/config/nvim/.gitignore b/docker_tools/config/nvim/.gitignore new file mode 100644 index 0000000..d6b7ef3 --- /dev/null +++ b/docker_tools/config/nvim/.gitignore @@ -0,0 +1,2 @@ +* +!.gitignore diff --git a/docker_tools/config/tmux/.gitignore b/docker_tools/config/tmux/.gitignore new file mode 100644 index 0000000..d6b7ef3 --- /dev/null +++ b/docker_tools/config/tmux/.gitignore @@ -0,0 +1,2 @@ +* +!.gitignore diff --git a/docker_tools/devbox.sh b/docker_tools/devbox.sh new file mode 100644 index 0000000..afd7513 --- /dev/null +++ b/docker_tools/devbox.sh @@ -0,0 +1 @@ +docker compose run --rm dev_environment /bin/bash diff --git a/docker_tools/docker-compose.yml b/docker_tools/docker-compose.yml new file mode 100644 index 0000000..e7977d9 --- /dev/null +++ b/docker_tools/docker-compose.yml @@ -0,0 +1,15 @@ +services: + dev_environment: + container_name: devbox + image: devbox:latest + + # Allow for interactive terminal + stdin_open: true + tty: true + + # Mount to repository + volumes: + - ../:/work + - ./config/nvim:/root/.config/nvim + - ./config/tmux:/root/.config/tmux + -- cgit v1.2.3