| # debian.sh --arch 'arm64' out/ 'sid' '@1763337600' |
| RUN /bin/sh -c apt update -y && apt upgrade -y # buildkit |
| RUN /bin/sh -c apt install -y curl wget zsh neovim openssh-client zsh-syntax-highlighting sudo tree git unzip # buildkit |
| RUN /bin/sh -c mkdir /code # buildkit |
| RUN /bin/sh -c chmod 777 /code # buildkit |
| RUN /bin/sh -c useradd -ms /usr/bin/zsh affine # buildkit |
| WORKDIR /home/affine |
| RUN /bin/sh -c echo "affine ALL=(ALL) NOPASSWD: ALL" >> /etc/sudoers # buildkit |
| USER affine |
| RUN /bin/sh -c mkdir ~/bin # buildkit |
| RUN /bin/sh -c wget https://raw.githubusercontent.com/ohmyzsh/ohmyzsh/refs/heads/master/tools/install.sh -O - | zsh # buildkit |
| RUN /bin/sh -c sed -i 's/robbyrussell/fino-time/g' .zshrc # buildkit |
| RUN /bin/sh -c echo 'export PATH=/home/affine/bin:$PATH' >> .zshrc # buildkit |
| RUN /bin/sh -c echo 'export HISTFILE=/Downloads/docker-histfile' >> .zshrc # buildkit |
| RUN /bin/sh -c mkdir -p .ssh/ # buildkit |
| COPY secrets/ssh_1.pub secrets/ssh_1 .ssh/ # buildkit |
| COPY secrets/ssh_2.pub secrets/ssh_2 .ssh/ # buildkit |
| COPY assets/ssh_client_config .ssh/config # buildkit |
| COPY secrets/.netrc .netrc # buildkit |
| RUN /bin/sh -c echo "alias nextcloudcmd=nextcloudcmd -n ~/.netrc" >> .zshrc # buildkit |
| COPY assets/message /msg # buildkit |
| RUN /bin/sh -c echo "cat /msg" >> .zshrc # buildkit |
| RUN /bin/sh -c mkdir -p .config # buildkit |
| COPY assets/.vim .vim # buildkit |
| COPY assets/nvim-small .config/nvim # buildkit |
| COPY assets/.gitconfig .gitconfig # buildkit |
| COPY assets/gitconfig /workies_gitconfig # buildkit |
| RUN /bin/sh -c curl -fLo ~/.local/share/nvim/site/autoload/plug.vim --create-dirs https://raw.githubusercontent.com/junegunn/vim-plug/master/plug.vim # buildkit |
| USER root |
| RUN /bin/sh -c chown -R affine:affine .vim # buildkit |
| RUN /bin/sh -c chown affine:affine /workies_gitconfig # buildkit |
| RUN /bin/sh -c chown affine:affine .gitconfig # buildkit |
| USER affine |
| RUN /bin/sh -c nvim --headless +'PlugInstall --sync' +qa # buildkit |
| USER root |
| RUN /bin/sh -c apt clean # buildkit |
| USER affine |
| ENTRYPOINT ["/usr/bin/zsh" "--login"] |
| USER root |
| RUN /bin/sh -c apt install gcc docker-cli python3 openjdk-21-jdk gradle nodejs npm python3-pip -y # buildkit |
| RUN /bin/sh -c groupadd -g 964 docker # buildkit |
| RUN /bin/sh -c usermod -a -G docker affine # buildkit |
| RUN /bin/sh -c rm -rf /home/affine/.config/nvim # buildkit |
| RUN /bin/sh -c rm -rf /home/affine/.local # buildkit |
| RUN /bin/sh -c pip install -U nginx-language-server --break-system-packages --no-cache-dir # buildkit |
| RUN /bin/sh -c pip install -U nginxfmt --break-system-packages --no-cache-dir # buildkit |
| RUN /bin/sh -c pip install -U python-lsp-server --break-system-packages --no-cache-dir # buildkit |
| USER affine |
| RUN /bin/sh -c curl --proto '=https' --tlsv1.2 -sSf https://sh.rustup.rs | sh -s -- --default-toolchain none -y # buildkit |
| ENV PATH=/home/affine/.cargo/bin:/usr/local/sbin:/usr/local/bin:/usr/sbin:/usr/bin:/sbin:/bin |
| RUN /bin/sh -c rustup toolchain install nightly # buildkit |
| RUN /bin/sh -c rustup component add rust-analyzer # buildkit |
| RUN /bin/sh -c rustup target add wasm32-wasip2 # buildkit |
| COPY assets/.tmux.conf .tmux.conf # buildkit |
| COPY assets/nvim-large .config/nvim # buildkit |
| USER root |
| RUN /bin/sh -c chown -R affine:affine .config # buildkit |
| USER affine |
| RUN /bin/sh -c curl -fLo ~/.local/share/nvim/site/autoload/plug.vim --create-dirs https://raw.githubusercontent.com/junegunn/vim-plug/master/plug.vim # buildkit |
| RUN /bin/sh -c echo "installing nvim plugins..." # buildkit |
| RUN /bin/sh -c nvim --headless +'PlugInstall --sync' +qa # buildkit |
| RUN /bin/sh -c echo "installing coc extensions..." # buildkit |
| RUN /bin/sh -c nvim --headless +CocInstall coc-clangd +qa # buildkit |
| RUN /bin/sh -c nvim --headless +CocInstall coc-docker +qa # buildkit |
| RUN /bin/sh -c nvim --headless +CocInstall coc-go +qa # buildkit |
| RUN /bin/sh -c nvim --headless +CocInstall coc-golines +qa # buildkit |
| RUN /bin/sh -c nvim --headless +CocInstall coc-json +qa # buildkit |
| RUN /bin/sh -c nvim --headless +CocInstall coc-lua +qa # buildkit |
| RUN /bin/sh -c nvim --headless +CocInstall coc-markdownlint +qa # buildkit |
| RUN /bin/sh -c nvim --headless +CocInstall coc-markdown-preview-enhanced +qa # buildkit |
| RUN /bin/sh -c nvim --headless +CocInstall coc-pylsp +qa # buildkit |
| RUN /bin/sh -c nvim --headless +CocInstall coc-rust-analyzer +qa # buildkit |
| RUN /bin/sh -c nvim --headless +CocInstall coc-toml +qa # buildkit |
| RUN /bin/sh -c nvim --headless +CocInstall coc-markdownlint +qa # buildkit |
| RUN /bin/sh -c wget https://dl.google.com/android/repository/commandlinetools-linux-13114758_latest.zip -O /tmp/cmdtls.zip # buildkit |
| RUN /bin/sh -c unzip /tmp/cmdtls.zip -d ~/android_sdk # buildkit |
| RUN /bin/sh -c rm -rf /tmp/cmdtls.zip # buildkit |
| RUN /bin/sh -c echo "export PATH=$PATH:$HOME/android_sdk/cmdline-tools/bin" # buildkit |
| ENV PATH=/home/affine/.cargo/bin:/usr/local/sbin:/usr/local/bin:/usr/sbin:/usr/bin:/sbin:/bin:/home/affine/android_sdk/cmdline-tools/bin |
| RUN /bin/sh -c yes | sdkmanager --sdk_root=~/android_sdk "sources;android-16" # buildkit |
| RUN /bin/sh -c yes | sdkmanager --sdk_root=~/android_sdk "platforms;android-16" # buildkit |
| RUN /bin/sh -c yes | sdkmanager --sdk_root=~/android_sdk "ndk;28.2.13676358" # buildkit |
| RUN /bin/sh -c yes | sdkmanager --sdk_root=~/android_sdk "build-tools;36.1.0" # buildkit |
| USER root |
| RUN /bin/sh -c apt install -y gdb strace tmux clangd gopls inetutils-telnet nmap bear clang docker-compose htop rsync docker-buildx nodejs man-db manpages kubectl valgrind lsof libpcre2-dev libssl-dev libssl-doc make golang-go # buildkit |
| RUN /bin/sh -c apt clean # buildkit |
| USER affine |
| ENTRYPOINT ["/usr/bin/zsh" "--login"] |