From daea151020eea970e020457014c2b352356d6b47 Mon Sep 17 00:00:00 2001 From: MisterSheeple <27652712+MisterSheeple@users.noreply.github.com> Date: Sat, 4 Nov 2023 05:51:44 +0000 Subject: [PATCH 1/4] Upgrade Dockerfile to Ubuntu 22.04 as 18.04 is EOL --- Dockerfile | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/Dockerfile b/Dockerfile index 40af996f..84f4a868 100644 --- a/Dockerfile +++ b/Dockerfile @@ -1,4 +1,4 @@ -FROM ubuntu:18.04 as build +FROM ubuntu:22.04 as build RUN apt-get update && \ apt-get install -y \ From 8f2061861d6ed8220b60208302c07c542c91ee9b Mon Sep 17 00:00:00 2001 From: MisterSheeple <27652712+MisterSheeple@users.noreply.github.com> Date: Wed, 8 Nov 2023 01:38:01 +0000 Subject: [PATCH 2/4] Add missing package that fixes breakage --- Dockerfile | 1 + 1 file changed, 1 insertion(+) diff --git a/Dockerfile b/Dockerfile index 84f4a868..51cc559f 100644 --- a/Dockerfile +++ b/Dockerfile @@ -3,6 +3,7 @@ FROM ubuntu:22.04 as build RUN apt-get update && \ apt-get install -y \ binutils-mips-linux-gnu \ + bsdextrautils \ build-essential \ git \ pkgconf \ From 680629ed9867753a465a59db4fd31a4a19c70cc3 Mon Sep 17 00:00:00 2001 From: MisterSheeple <27652712+MisterSheeple@users.noreply.github.com> Date: Wed, 8 Nov 2023 07:01:10 +0000 Subject: [PATCH 3/4] Make the example command less archaic and easier to read --- Dockerfile | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/Dockerfile b/Dockerfile index 51cc559f..dc0cbca2 100644 --- a/Dockerfile +++ b/Dockerfile @@ -13,5 +13,5 @@ RUN mkdir /sm64 WORKDIR /sm64 ENV PATH="/sm64/tools:${PATH}" -CMD echo 'usage: docker run --rm --mount type=bind,source="$(pwd)",destination=/sm64 sm64 make VERSION=us -j4\n' \ - 'see https://github.com/n64decomp/sm64/blob/master/README.md for advanced usage' +CMD echo 'Usage: docker run --rm -v ${PWD}:/sm64 sm64 make VERSION=us -j4\n' \ + 'See https://github.com/n64decomp/sm64/blob/master/README.md for more information' From ba50572fef177c45d0c19553cb2c5a6ab13dc2cc Mon Sep 17 00:00:00 2001 From: MisterSheeple <27652712+MisterSheeple@users.noreply.github.com> Date: Wed, 8 Nov 2023 07:04:32 +0000 Subject: [PATCH 4/4] Update Docker instructions in README specifically: - Replace Mac and Linux commands with a single example command that should work on Windows, Mac, and Linux. --- README.md | 10 ++-------- 1 file changed, 2 insertions(+), 8 deletions(-) diff --git a/README.md b/README.md index e708a8b8..dda4e237 100644 --- a/README.md +++ b/README.md @@ -139,15 +139,9 @@ docker build -t sm64 . To build, mount the local filesystem into the Docker container and build the ROM with `docker run sm64 make`. -##### macOS example for (U): +##### Example: ``` -docker run --rm --mount type=bind,source="$(pwd)",destination=/sm64 sm64 make VERSION=us -j4 -``` - -##### Linux example for (U): -For a Linux host, Docker needs to be instructed which user should own the output files: -``` -docker run --rm --mount type=bind,source="$(pwd)",destination=/sm64 --user $UID:$GID sm64 make VERSION=us -j4 +docker run --rm -v ${PWD}:/sm64 sm64 make VERSION=us -j4 ``` Resulting artifacts can be found in the `build` directory.