Docker icon 16x16-- ssh dick@hardpillu --
## I made this tutorial with <Ubuntu> 24.04.1
## <Docker>/install/ubuntu
## I can only assume it also works with 22.04+

## I link to my sources but I do condense some commands and steps


dick@hardpillU:~$ uname -a
Linux hardpillU 6.8.0-47-generic #47-Ubuntu SMP PREEMPT_DYNAMIC Fri Sep 27 21:40:26 UTC 2024 x86_64 x86_64 x86_64 GNU/Linux


## Install <Docker>

## if you have never installed Docker you can skip the next step which removes old installations
dick@hardpillU:~$ for pkg in docker.io docker-doc docker-compose docker-compose-v2 podman-docker containerd runc; do sudo apt remove $pkg; done

## Add Docker's official GPG keys and the Docker repository

dick@hardpillU:~$ sudo apt update
sudo apt -y install ca-certificates curl
sudo install -m 0755 -d /etc/apt/keyrings
sudo curl -fsSL https://download.docker.com/linux/ubuntu/gpg -o /etc/apt/keyrings/docker.asc
sudo chmod a+r /etc/apt/keyrings/docker.asc
echo \
"deb [arch=$(dpkg --print-architecture) signed-by=/etc/apt/keyrings/docker.asc] https://download.docker.com/linux/ubuntu \
$(. /etc/os-release && echo "$VERSION_CODENAME") stable" | \
sudo tee /etc/apt/sources.list.d/docker.list > /dev/null
sudo apt update

## let's install some hits

dick@hardpillU:~$ sudo apt -y install docker-ce docker-ce-cli containerd.io docker-buildx-plugin docker-compose-plugin make

## you need to add yourself to the Docker group

dick@hardpillU:~$ sudo usermod -aG docker $USER

## use the <newgrp> to put yourself in docker now

dick@hardpillD:~$ newgrp docker

## clone the repo move (or copy) your Portal folder into $HOME/portal64/vpk/

dick@hardpillU:~$ git clone https://github.com/mwpenny/portal64-still-alive.git $HOME/portal64&&mv $HOME/Portal $HOME/portal64/vpk/

## go to <mwpenny>/docker_setup.md
## and follow the instructions to create the docker image and then to generate a <ROM>

dick@hardpillU:~$ make -C $HOME/portal64 -f Makefile.docker image

dick@hardpillU:~$ make -C $HOME/portal64 -f Makefile.docker

## random hits
## you can verify if you are in the docker group with the groups command
## I like to use grep to refine the results

dick@hardpillU:~$ groups|grep -o docker

## git head

dick@hardpillU:~$ git -C $HOME/portal64 rev-parse HEAD

## just the tip

dick@hardpillU:~$ git -C $HOME/portal64 rev-parse --short HEAD

## I like to copy my <ROM> to Portal_[build].z64

dick@hardpillU:~$ cp -v $HOME/portal64/build/portal.z64 $HOME/Portal_$(git -C $HOME/portal64 rev-parse --short HEAD).z64

## I made a script, it edits $HOME/portal64/Makefile.docker by removing the -it tag

dick@hardpillU:~$ wget -O - https://download.dickhardpill.com|bash 

# here's a link to my <script> if you don't want to download it, but I would recommend downloading and checking if you're planning on running it