diff --git a/Dockerfile b/Dockerfile index a88dabfe..0c67b544 100644 --- a/Dockerfile +++ b/Dockerfile @@ -7,3 +7,5 @@ RUN pacman -Syyu git --noconfirm RUN pacman -Syyu python-pip --noconfirm RUN pacman -Syyu python-crcmod --noconfirm WORKDIR /app +COPY . . +RUN git submodule update --init --recursive \ No newline at end of file diff --git a/compile-with-docker.bat b/compile-with-docker.bat index ed33d31f..8c3cf90c 100644 --- a/compile-with-docker.bat +++ b/compile-with-docker.bat @@ -1,4 +1,4 @@ @echo off docker build -t uvk5 . -docker run --rm -v %CD%:/app uvk5 /bin/bash -c "cd /app && git submodule update --init --recursive && make -s clean && make -s" -pause +docker run --rm -v %CD%\compiled-firmware:/app/compiled-firmware uvk5 /bin/bash -c "cd /app && make clean && make && cp f4hwn* compiled-firmware/" +pause \ No newline at end of file diff --git a/compile-with-docker.sh b/compile-with-docker.sh index 6112059b..083a086f 100755 --- a/compile-with-docker.sh +++ b/compile-with-docker.sh @@ -25,32 +25,30 @@ fi custom() { echo "🔧 Custom compilation..." - docker run --rm -v "${PWD}:/app" --user $(id -u):$(id -g) "$IMAGE_NAME" /bin/bash -c "\ - cd /app && git submodule update --init --recursive && make -s clean && make -s \ + docker run --rm -v "$FIRMWARE_DIR:/app/compiled-firmware" "$IMAGE_NAME" /bin/bash -c "\ + rm -f ./compiled-firmware/* && cd /app && make -s \ EDITION_STRING=Custom \ TARGET=f4hwn.custom \ - && mv f4hwn.custom* compiled-firmware/ \ - && make -s clean" + && cp f4hwn.custom* compiled-firmware/" } standard() { echo "📦 Standard compilation..." - docker run --rm -v "${PWD}:/app" --user $(id -u):$(id -g) "$IMAGE_NAME" /bin/bash -c "\ - cd /app && git submodule update --init --recursive && make -s clean && make -s \ + docker run --rm -v "$FIRMWARE_DIR:/app/compiled-firmware" "$IMAGE_NAME" /bin/bash -c "\ + rm -f ./compiled-firmware/* && cd /app && make -s \ ENABLE_SPECTRUM=0 \ ENABLE_FMRADIO=0 \ ENABLE_AIRCOPY=0 \ ENABLE_NOAA=0 \ EDITION_STRING=Standard \ TARGET=f4hwn.standard \ - && mv f4hwn.standard* compiled-firmware/ \ - && make -s clean" + && cp f4hwn.standard* compiled-firmware/" } bandscope() { echo "📺 Bandscope compilation..." - docker run --rm -v "${PWD}:/app" --user $(id -u):$(id -g) "$IMAGE_NAME" /bin/bash -c "\ - cd /app && git submodule update --init --recursive && make -s clean && make -s \ + docker run --rm -v "$FIRMWARE_DIR:/app/compiled-firmware" "$IMAGE_NAME" /bin/bash -c "\ + rm -f ./compiled-firmware/* && cd /app && make -s \ ENABLE_SPECTRUM=1 \ ENABLE_FMRADIO=0 \ ENABLE_VOX=0 \ @@ -63,14 +61,13 @@ bandscope() { ENABLE_FEAT_F4HWN_RESCUE_OPS=0 \ EDITION_STRING=Bandscope \ TARGET=f4hwn.bandscope \ - && mv f4hwn.bandscope* compiled-firmware/ \ - && make -s clean" + && cp f4hwn.bandscope* compiled-firmware/" } broadcast() { echo "📻 Broadcast compilation..." - docker run --rm -v "${PWD}:/app" --user $(id -u):$(id -g) "$IMAGE_NAME" /bin/bash -c "\ - cd /app && git submodule update --init --recursive && make -s clean && make -s \ + docker run --rm -v "$FIRMWARE_DIR:/app/compiled-firmware" "$IMAGE_NAME" /bin/bash -c "\ + cd /app && make -s \ ENABLE_SPECTRUM=0 \ ENABLE_FMRADIO=1 \ ENABLE_VOX=1 \ @@ -83,14 +80,13 @@ broadcast() { ENABLE_FEAT_F4HWN_RESCUE_OPS=0 \ EDITION_STRING=Broadcast \ TARGET=f4hwn.broadcast \ - && mv f4hwn.broadcast* compiled-firmware/ \ - && make -s clean" + && cp f4hwn.broadcast* compiled-firmware/" } basic() { echo "☘️ Basic compilation..." - docker run --rm -v "${PWD}:/app" --user $(id -u):$(id -g) "$IMAGE_NAME" /bin/bash -c "\ - cd /app && git submodule update --init --recursive && make -s clean && make -s \ + docker run --rm -v "$FIRMWARE_DIR:/app/compiled-firmware" "$IMAGE_NAME" /bin/bash -c "\ + cd /app && make -s \ ENABLE_SPECTRUM=1 \ ENABLE_FMRADIO=1 \ ENABLE_VOX=0 \ @@ -109,14 +105,13 @@ basic() { ENABLE_FEAT_F4HWN_RESCUE_OPS=0 \ EDITION_STRING=Basic \ TARGET=f4hwn.basic \ - && mv f4hwn.basic* compiled-firmware/ \ - && make -s clean" + && cp f4hwn.basic* compiled-firmware/" } rescueops() { echo "🚨 RescueOps compilation..." - docker run --rm -v "${PWD}:/app" --user $(id -u):$(id -g) "$IMAGE_NAME" /bin/bash -c "\ - cd /app && git submodule update --init --recursive && make -s clean && make -s \ + docker run --rm -v "$FIRMWARE_DIR:/app/compiled-firmware" "$IMAGE_NAME" /bin/bash -c "\ + cd /app && make -s \ ENABLE_SPECTRUM=0 \ ENABLE_FMRADIO=0 \ ENABLE_VOX=1 \ @@ -129,14 +124,13 @@ rescueops() { ENABLE_FEAT_F4HWN_RESCUE_OPS=1 \ EDITION_STRING=RescueOps \ TARGET=f4hwn.rescueops \ - && mv f4hwn.rescueops* compiled-firmware/ \ - && make -s clean" + && cp f4hwn.rescueops* compiled-firmware/" } game() { echo "🎮 Game compilation..." - docker run --rm -v "${PWD}:/app" --user $(id -u):$(id -g) "$IMAGE_NAME" /bin/bash -c "\ - cd /app && git submodule update --init --recursive && make -s clean && make -s \ + docker run --rm -v "$FIRMWARE_DIR:/app/compiled-firmware" "$IMAGE_NAME" /bin/bash -c "\ + cd /app && make -s \ ENABLE_SPECTRUM=0 \ ENABLE_FMRADIO=1 \ ENABLE_VOX=0 \ @@ -148,8 +142,7 @@ game() { ENABLE_FEAT_F4HWN_RESCUE_OPS=0 \ EDITION_STRING=Game \ TARGET=f4hwn.game \ - && mv f4hwn.game* compiled-firmware/ \ - && make -s clean" + && cp f4hwn.game* compiled-firmware/" } # ------------------ MENU ------------------