Giter Club home page Giter Club logo

Comments (4)

userdocs avatar userdocs commented on May 9, 2024 1

What you can do is use your own release naming via cloning the repo and using this action file matrix

https://github.com/userdocs/qbittorrent-nox-static/blob/master/.github/workflows/matrix_multi_build_and_release.yml

This are the lines that is naming renaming and uploading the release asset

https://github.com/userdocs/qbittorrent-nox-static/blob/master/.github/workflows/matrix_multi_build_and_release.yml#L92
https://github.com/userdocs/qbittorrent-nox-static/blob/master/.github/workflows/matrix_multi_build_and_release.yml#L98

from qbittorrent-nox-static.

userdocs avatar userdocs commented on May 9, 2024

Hi and i am glad you like it.

I currently use the naming convention defined by the supported multi arch build platform Which is Alpine Linux and you can see it here https://alpinelinux.org/downloads/

image

This is so that I don't have one scheme that I need to rename to just work with Alpine. I won't change that unless Alpine changes it's own naming schemes as it just makes the multibuild part very complex having to rename things just to work with their repository urls.

If you tell me what it is specifically you need I can maybe provide a switch based workaround?

I assume it is the naming of the output file itself?

x86_64-icu-qbittorrent-nox > amd64-icu-qbittorrent-nox

I cannot see how changing it internally would help buildx. So can you be specific about what you need?

from qbittorrent-nox-static.

martadinata666 avatar martadinata666 commented on May 9, 2024

yes, as you assume, it just the output name x86_64-icu-qbittorrent-nox > amd64-icu-qbittorrent-nox

So this is my dockerfile sample of ffmpeg-static

FROM registry.gitlab.com/dedyms/debian:latest
ARG DATE
ARG TARGETARCH
ARG BUILDPLATFORM
RUN echo "i am running on $BUILDPLATFORM, building for $TARGETARCH"
ENV FFMPEG_BUILD_DATE=$DATE
RUN apt update && apt install -y --no-install-recommends wget xz-utils && apt clean && rm -rf /var/lib/apt/lists*
USER $CONTAINERUSER
WORKDIR /home/$CONTAINERUSER
RUN wget https://johnvansickle.com/ffmpeg/builds/ffmpeg-git-$TARGETARCH-static.tar.xz && \
    tar -xf ffmpeg-git-$TARGETARCH-static.tar.xz && \
    ls -alh && \
    mv ffmpeg-git-$DATE-$TARGETARCH-static/ffmpeg .local/bin/ && \
    mv ffmpeg-git-$DATE-$TARGETARCH-static/ffprobe .local/bin/ && \
    rm -rf ffmpeg-git-$DATE-$TARGETARCH-static

So following the docker buildx command

docker buildx build --push --platform linux/arm64,linux/amd64 --build-arg DATE=$DATE -t "$CI_REGISTRY_IMAGE" -t "$CI_DOCKERHUB_REGISTRY_IMAGE" -t "$CI_REGISTRY_IMAGE:$DATE" -t "$CI_DOCKERHUB_REGISTRY_IMAGE:$DATE" . -f Dockerfile

The TARGETARCH will result amd64 or arm64 based on platform, then it will download based on the name, ffmpeg-git-amd64-static.tar.xz or ffmpeg-git-arm64-static.tar.xz. That's my insight on this.

from qbittorrent-nox-static.

martadinata666 avatar martadinata666 commented on May 9, 2024

thanks for the suggestion, the reason i closed this because i found that Dockerfile can use if condition based on TARGETARCH to download respective binaries.

RUN if [ "${TARGETARCH}" = "amd64" ]; then \
        wget https://github.com/userdocs/qbittorrent-nox-static/releases/download/release-$QBVERSION\_v$LIBTORRENT/x86_64-qbittorrent-nox && \
        mv ./x86_64-qbittorrent-nox /home/$CONTAINERUSER/.local/bin/qbittorrent-nox; \
    fi;

RUN if [ "${TARGETARCH}" = "arm64" ]; then \
        wget https://github.com/userdocs/qbittorrent-nox-static/releases/download/release-$QBVERSION\_v$LIBTORRENT/aarch64-qbittorrent-nox && \
        mv ./aarch64-qbittorrent-nox /home/$CONTAINERUSER/.local/bin/qbittorrent-nox; \
    fi;

Again, thanks for the binary release it really helps.

from qbittorrent-nox-static.

Related Issues (20)

Recommend Projects

  • React photo React

    A declarative, efficient, and flexible JavaScript library for building user interfaces.

  • Vue.js photo Vue.js

    🖖 Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.

  • Typescript photo Typescript

    TypeScript is a superset of JavaScript that compiles to clean JavaScript output.

  • TensorFlow photo TensorFlow

    An Open Source Machine Learning Framework for Everyone

  • Django photo Django

    The Web framework for perfectionists with deadlines.

  • D3 photo D3

    Bring data to life with SVG, Canvas and HTML. 📊📈🎉

Recommend Topics

  • javascript

    JavaScript (JS) is a lightweight interpreted programming language with first-class functions.

  • web

    Some thing interesting about web. New door for the world.

  • server

    A server is a program made to process requests and deliver data to clients.

  • Machine learning

    Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.

  • Game

    Some thing interesting about game, make everyone happy.

Recommend Org

  • Facebook photo Facebook

    We are working to build community through open source technology. NB: members must have two-factor auth.

  • Microsoft photo Microsoft

    Open source projects and samples from Microsoft.

  • Google photo Google

    Google ❤️ Open Source for everyone.

  • D3 photo D3

    Data-Driven Documents codes.