Major repository cleanup and enhancement

- Reorganize documentation: moved old docs to docs/ directory
- Add comprehensive README.md with build options and usage guide
- Add detailed CONTRIBUTING.md with help content management guide
- Create Makefile for automated building and testing
- Add Dockerfile.scratch for building from Ubuntu 20.04 base
- Enhance all Dockerfiles with PowerShell + PSScriptAnalyzer
- Add modern shells: zsh (with plugins) and fish (with config)
- Add modern CLI tools: fd-find, ripgrep, fzf
- Create comprehensive help system with cheat/TLDR/fish completions
- Add helper scripts for help content management and coverage checking
- Fix Dockerfile.remnux script references
- Support three build variants: upstream (REMnux), scratch (Ubuntu), kali

Build options:
  - make build-upstream: Fast, uses REMnux upstream (recommended)
  - make build-scratch: Full control, builds from Ubuntu 20.04
  - make build-kali: Legacy Kali Linux base

Features:
  - PowerShell with PSScriptAnalyzer module
  - Modern shells (zsh, fish) with custom configurations
  - Enhanced help system (cheat sheets, TLDR pages, fish completions)
  - Help coverage checking and bulk import tools
  - Comprehensive documentation for users and contributors
This commit is contained in:
Tobias Kessels
2025-10-01 11:45:56 +02:00
parent 6bfcfd7935
commit b98aaee3e0
27 changed files with 5000 additions and 62 deletions

View File

@@ -0,0 +1,53 @@
# This Docker image encapsulates the REMnux v7 distro on Ubuntu 20.04 (focal).
# For details about REMnux, including how you can run it on a physical system
# or as a virtual machine, see https://REMnux.org.
#
# You can run this image as a container using a command such as:
#
# docker run --rm -it remnux/remnux-distro /bin/bash
#
# To map a local directory into the container's /home/remnux/files directory,
# you could use a command lile this by supplying the appropriate directory name:
#
# docker run --rm -it -v <local_directory>:/home/remnux/files remnux/remnux-distro /bin/bash
#
# If you'd like to access the container using SSH, you can invoke it like this by
# mapping your local TCP port 22 to the container's internal TCP port 22. In this example,
# the container will remain active in the background:
#
# docker run -d -p 22:22 remnux/remnux-distro
#
# If you're going to run this container in a remote cloud, be sure to change the default
# password and otherwise harden the system according to your requirements.
#
# If you're planning to use Cutter inside the container, you'll need to include the
# --privileged parameter when invoking Docker.
#
FROM ubuntu:20.04
LABEL description="REMnux® is a Linux toolkit for reverse-engineering and analyzing malicious software."
LABEL maintainer="Lenny Zeltser (@lennyzeltser, zeltser.com)"
LABEL version="v2025.30.1"
ARG CAST_VER=0.16.22
USER root
WORKDIR /tmp
RUN export DEBIAN_FRONTEND=noninteractive && \
apt-get update && \
apt-get install -y wget gnupg git && \
wget https://github.com/ekristen/cast/releases/download/v${CAST_VER}/cast-v${CAST_VER}-linux-amd64.deb && \
dpkg -i /tmp/cast-v${CAST_VER}-linux-amd64.deb && \
cast install --mode cloud --user remnux remnux && \
rm -rf /root/.cache/* && \
unset DEBIAN_FRONTEND
RUN rm /tmp/cast-v${CAST_VER}-linux-amd64.deb
ENV TERM=linux
WORKDIR /home/remnux
RUN mkdir /var/run/sshd
EXPOSE 22
CMD ["/usr/sbin/sshd", "-D"]