Releases Life and DogeOS packages. #66
Workflow file for this run
This file contains hidden or bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
| # SPDX-License-Identifier: AGPL-3.0 | |
| # | |
| # release.yaml | |
| # | |
| # ------------------------------------------------------------ | |
| # Copyright © 2024, 2025 | |
| # 2026 Guilherme Janczak, | |
| # Robert Kirkman, | |
| # Pellegrino Prevete | |
| # | |
| # All rights reserved | |
| # ------------------------------------------------------------ | |
| # | |
| # This program is free software: you can redistribute it | |
| # and/or modify it under the terms of the GNU Affero | |
| # General Public License as published by the Free Software | |
| # Foundation, either version 3 of the License, or | |
| # (at your option) any later version. | |
| # | |
| # This program is distributed in the hope that it will be useful, | |
| # but WITHOUT ANY WARRANTY; without even the implied warranty of | |
| # MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the | |
| # GNU Affero General Public License for more details. | |
| # | |
| # You should have received a copy of the GNU Affero | |
| # General Public License along with this program. | |
| # If not, see <https://www.gnu.org/licenses/>. | |
| name: | |
| release-build | |
| run-name: | |
| Releases Life and DogeOS packages. | |
| permissions: | |
| contents: | |
| write | |
| on: | |
| release: | |
| types: | |
| [published] | |
| jobs: | |
| # This is what is currently necessary to make termux-docker work with GHA. | |
| termux_release: | |
| name: | |
| Life and DogeOS Android base (Termux) binary packages. | |
| strategy: | |
| matrix: | |
| include: | |
| - runner: | |
| ubuntu-24.04-arm | |
| platform: | |
| android | |
| platform_target: | |
| termux | |
| architecture: | |
| aarch64 | |
| - runner: | |
| ubuntu-24.04 | |
| platform: | |
| android | |
| platform_target: | |
| termux | |
| architecture: | |
| i686 | |
| - runner: | |
| ubuntu-24.04-arm | |
| platform: | |
| android | |
| platform_target: | |
| termux | |
| architecture: | |
| arm | |
| - runner: | |
| ubuntu-24.04 | |
| platform: | |
| android | |
| platform_target: | |
| termux | |
| architecture: | |
| x86_64 | |
| runs-on: | |
| ${{ matrix.runner }} | |
| # prepare writable volume prefix mount for actions/upload-artifact, | |
| # based on the higher-profile workaround for 32-bit GNU/Linux containers explained here | |
| # https://github.com/actions/upload-artifact/issues/616#issuecomment-2350667347 | |
| container: | |
| image: | |
| termux/termux-docker:${{ matrix.architecture }} | |
| volumes: | |
| - /tmp/node20:/__e/node20 | |
| # approximate environment variables for actions that can't be forced to use entrypoint.sh | |
| env: | |
| GH_TOKEN: | |
| ${{ github.token }} | |
| GITHUB_TOKEN: | |
| ${{ github.token }} | |
| TERMUX_MAIN_PACKAGE_FORMAT: | |
| debian | |
| TERMUX_VERSION: | |
| 50 | |
| ANDROID_ROOT: | |
| /system | |
| ANDROID_DATA: | |
| /data | |
| PREFIX: | |
| /data/data/com.termux/files/usr | |
| HOME: | |
| /data/data/com.termux/files/home | |
| PATH: | |
| /data/data/com.termux/files/usr/bin | |
| TMPDIR: | |
| /data/data/com.termux/files/usr/tmp | |
| LANG: | |
| en_US.UTF-8 | |
| TZ: | |
| UTC | |
| steps: | |
| - name: | |
| Set 'pkg' command to use the packages-cf.termux.dev mirror. | |
| run: | | |
| ln \ | |
| -sf \ | |
| "${PREFIX}/etc/termux/mirrors/default" \ | |
| "${PREFIX}/etc/termux/chosen_mirrors" | |
| - name: | |
| Upgrade Termux debian environment. | |
| run: | | |
| /entrypoint.sh \ | |
| bash \ | |
| -c \ | |
| "yes | pkg upgrade -y" | |
| # actions/checkout will "think" that termux's tar binary isn't executable if it doesn't have | |
| # executable bit actually set for all users, since even though that permissions restriction | |
| # doesn't actually apply to the root user (at least on Android), GitHub Actions' internal | |
| # source code doesn't "care" and would refuse to run the binary anyway. | |
| # relevant internal source code of GitHub Actions: | |
| # https://github.com/actions/toolkit/blob/930c89072712a3aac52d74b23338f00bb0cfcb24/packages/io/src/io-util.ts#L167-L177 | |
| - name: | |
| Fixes executable bit for all binaries in "${PREFIX}/bin" for all users. | |
| run: | | |
| chmod \ | |
| -R \ | |
| "o+x" \ | |
| "${PREFIX}/bin" | |
| - name: | |
| Installs bionic-libc NodeJS to force compatibility with actions/checkout and actions/upload-artifact. | |
| run: | | |
| /entrypoint.sh \ | |
| pkg \ | |
| install \ | |
| -y \ | |
| "nodejs-lts" | |
| ln \ | |
| -sf \ | |
| "${PREFIX}/bin" \ | |
| "/__e/node20/bin" | |
| - uses: | |
| actions/checkout@v4.2.2 | |
| - name: | |
| Fixes permissions of repository after actions/checkout, which ran as root user, while entrypoint.sh activates system user (1000). | |
| run: | | |
| chown \ | |
| -R \ | |
| "1000:1000" \ | |
| "${PWD}" | |
| - name: | |
| Setup user's home. | |
| run: | | |
| # Setup home | |
| /entrypoint.sh \ | |
| mkdir \ | |
| -p \ | |
| "${HOME}" | |
| - name: | |
| Installs Python. | |
| run: | | |
| /entrypoint.sh \ | |
| pkg \ | |
| install \ | |
| -y \ | |
| "python" | |
| /entrypoint.sh \ | |
| pkg \ | |
| install \ | |
| -y \ | |
| "python-pip" | |
| /entrypoint.sh \ | |
| pip \ | |
| install \ | |
| "build" | |
| /entrypoint.sh \ | |
| pip \ | |
| install \ | |
| "installer" | |
| /entrypoint.sh \ | |
| pip \ | |
| install \ | |
| "setuptools" | |
| /entrypoint.sh \ | |
| pip \ | |
| install \ | |
| "flit-core" | |
| /entrypoint.sh \ | |
| pip \ | |
| install \ | |
| "cython" | |
| /entrypoint.sh \ | |
| pip \ | |
| install \ | |
| "multidict" | |
| # - name: | |
| # Installs Rust. | |
| # run: | | |
| # env | |
| # _arch="$( \ | |
| # uname \ | |
| # -m)" \ | |
| # export \ | |
| # _arch="$( \ | |
| # uname \ | |
| # -m)" && \ | |
| # /entrypoint.sh \ | |
| # echo \ | |
| # "Architecture: ${_arch}" && \ | |
| # if [[ "$(uname -m)" == "armv7l" || \ | |
| # "$(uname -m)" == "armv8l" ]]; then \ | |
| # _rust="rust-std-armv7-linux-androideabi" \ | |
| # fi \ | |
| # if [[ "${RUNNER_ARCH}" == "X64" ]]; then \ | |
| # _rust="rust" && \ | |
| # export \ | |
| # _rust="${_rust}" \ | |
| # fi \ | |
| # if [[ "$(uname -m)" == "i686" || \ | |
| # "$(uname -m)" == "aarch64" ]]; then \ | |
| # _rust="rust" && \ | |
| # export \ | |
| # _rust="${_rust}" \ | |
| # fi && \ | |
| # /entrypoint.sh \ | |
| # apt \ | |
| # install \ | |
| # -y \ | |
| # "rust" \ | |
| # "rust-std-armv7-linux-androideabi" | |
| - name: | |
| Installs Git. | |
| run: | | |
| /entrypoint.sh \ | |
| pkg \ | |
| install \ | |
| -y \ | |
| "gh" \ | |
| "git" \ | |
| "jq" \ | |
| "tree" \ | |
| "which" \ | |
| "unzip" | |
| # - name: | |
| # Installs Capnproto. | |
| # run: | | |
| # /entrypoint.sh \ | |
| # pkg \ | |
| # install \ | |
| # -y \ | |
| # "capnproto" | |
| - name: | |
| Installs Pacman. | |
| run: | | |
| /entrypoint.sh \ | |
| pkg \ | |
| install \ | |
| -y \ | |
| "pacman" \ | |
| "termux-keyring" \ | |
| "tree" \ | |
| "tsu" | |
| # Init keyring | |
| /entrypoint.sh \ | |
| pacman-key \ | |
| --init | |
| - name: | |
| Installs 'build essential' ahah. | |
| run: | | |
| /entrypoint.sh \ | |
| pkg \ | |
| install \ | |
| -y \ | |
| binutils \ | |
| bsdtar \ | |
| file \ | |
| build-essential | |
| - name: | |
| Install docutils. | |
| run: | | |
| /entrypoint.sh \ | |
| pip \ | |
| install \ | |
| "docutils" | |
| - name: | |
| Installs make. | |
| run: | | |
| /entrypoint.sh \ | |
| pkg \ | |
| install \ | |
| -y \ | |
| "make" | |
| - name: | |
| Installs meson. | |
| run: | | |
| /entrypoint.sh \ | |
| pip \ | |
| install \ | |
| "meson" | |
| - name: | |
| Installs Crash Bash Library. | |
| run: | | |
| /entrypoint.sh git \ | |
| clone \ | |
| --branch="libcrash-bash" \ | |
| --single-branch \ | |
| --depth=1 \ | |
| "https://github.com/themartiancompany/fur" \ | |
| "${HOME}/fur" | |
| /entrypoint.sh \ | |
| rm \ | |
| "${HOME}/fur/termux/any/"*".pkg.tar."*".sig" | |
| /entrypoint.sh \ | |
| pacman \ | |
| -Udd \ | |
| --noconfirm \ | |
| "${HOME}/fur/termux/any/"*".pkg.tar."* | |
| /entrypoint.sh \ | |
| rm \ | |
| -rf \ | |
| "${HOME}/fur" | |
| - name: | |
| Installs Fur. | |
| run: | | |
| /entrypoint.sh \ | |
| git \ | |
| clone \ | |
| --branch="fur" \ | |
| --single-branch \ | |
| --depth=1 \ | |
| "https://github.com/themartiancompany/fur" \ | |
| "${HOME}/fur" || \ | |
| true | |
| /entrypoint.sh \ | |
| rm \ | |
| -rf \ | |
| "${HOME}/fur/termux/any/"*".pkg.tar."*".sig" | |
| /entrypoint.sh \ | |
| pacman \ | |
| -Udd \ | |
| --noconfirm \ | |
| "${HOME}/fur/termux/any/"*".pkg.tar."* | |
| /entrypoint.sh \ | |
| rm \ | |
| -rf \ | |
| "${HOME}/fur" | |
| /entrypoint.sh \ | |
| pacman \ | |
| -Ql \ | |
| "fur" | |
| /entrypoint.sh \ | |
| pkg \ | |
| install \ | |
| -y \ | |
| "coreutils" || \ | |
| true | |
| cat \ | |
| "/entrypoint.sh" | |
| export \ | |
| LD_PRELOAD="/data/data/com.termux/files/usr/lib/libtermux-exec.so" \ | |
| SHELL="/data/data/com.termux/files/usr/bin/bash"; \ | |
| /entrypoint.sh \ | |
| termux-fix-shebang \ | |
| "/data/data/com.termux/files/usr/bin/fur"; \ | |
| /entrypoint.sh \ | |
| bash \ | |
| -c \ | |
| "exec fur -v -h" | |
| - name: | |
| Installs Python Pygments. | |
| run: | | |
| /entrypoint.sh \ | |
| pip \ | |
| -v \ | |
| install \ | |
| "pygments" | |
| - name: | |
| Installs latest Crash Bash Library. | |
| run: | | |
| /entrypoint.sh \ | |
| git \ | |
| clone \ | |
| "https://github.com/themartiancompany/crash-bash" \ | |
| "${HOME}/crash-bash" | |
| cd \ | |
| "${HOME}/crash-bash" | |
| /entrypoint.sh \ | |
| mkdir \ | |
| -p \ | |
| "/data/data/com.termux/files/usr/lib/libcrash-bash" | |
| /entrypoint.sh \ | |
| make \ | |
| -C \ | |
| "${HOME}/crash-bash" \ | |
| DESTDIR="/data/data/com.termux/files" \ | |
| PREFIX="/usr" \ | |
| install | |
| - name: | |
| Installs latest Reallymakepkg. | |
| run: | | |
| /entrypoint.sh \ | |
| pacman \ | |
| -Rdd \ | |
| --noconfirm \ | |
| "reallymakepkg" || \ | |
| true | |
| /entrypoint.sh \ | |
| git \ | |
| clone \ | |
| "https://github.com/themartiancompany/reallymakepkg" \ | |
| "${HOME}/reallymakepkg-src" || \ | |
| true | |
| /entrypoint.sh \ | |
| make \ | |
| DESTDIR="/data/data/com.termux/files" \ | |
| PREFIX="/usr" \ | |
| -C \ | |
| "${HOME}/reallymakepkg-src" \ | |
| install-scripts | |
| /entrypoint.sh \ | |
| termux-fix-shebang \ | |
| "$(which \ | |
| "reallymakepkg")"; \ | |
| /entrypoint.sh \ | |
| termux-fix-shebang \ | |
| "$(which \ | |
| "recipe-get")"; \ | |
| /entrypoint.sh \ | |
| termux-fix-shebang \ | |
| "$(which \ | |
| "platform-get")"; \ | |
| /entrypoint.sh \ | |
| termux-fix-shebang \ | |
| "$(which \ | |
| "package-info-get")"; \ | |
| /entrypoint.sh \ | |
| termux-fix-shebang \ | |
| "$(which \ | |
| "version-split")"; \ | |
| /entrypoint.sh \ | |
| make \ | |
| DESTDIR="/data/data/com.termux/files" \ | |
| PREFIX="/usr" \ | |
| -C \ | |
| "${HOME}/reallymakepkg-src" \ | |
| install-configs || \ | |
| true | |
| /entrypoint.sh \ | |
| install \ | |
| -vDm644 \ | |
| "${HOME}/reallymakepkg-src/configs/makepkg.android.conf" \ | |
| "/data/data/com.termux/files/usr/etc/reallymakepkg/makepkg.android.conf" | |
| /entrypoint.sh \ | |
| pkg \ | |
| install \ | |
| -y \ | |
| binutils \ | |
| bsdtar \ | |
| file \ | |
| build-essential | |
| - name: | |
| Installs latest gl-dl. | |
| run: | | |
| /entrypoint.sh \ | |
| git \ | |
| clone \ | |
| --single-branch \ | |
| --depth=1 \ | |
| "https://github.com/themartiancompany/gl-dl" \ | |
| "${HOME}/gl-dl-src" || \ | |
| true | |
| cd \ | |
| "${HOME}/gl-dl-src" | |
| /entrypoint.sh \ | |
| make \ | |
| DESTDIR="/data/data/com.termux/files" \ | |
| PREFIX="/usr" \ | |
| install-scripts | |
| /entrypoint.sh \ | |
| termux-fix-shebang \ | |
| "$(which \ | |
| "gl-dl")"; \ | |
| /entrypoint.sh \ | |
| gl-dl \ | |
| -v \ | |
| -h | |
| - name: | |
| Installs make. | |
| run: | | |
| /entrypoint.sh \ | |
| pkg \ | |
| install \ | |
| -y \ | |
| "make" | |
| - name: | |
| Installs LibEVM. | |
| run: | | |
| /entrypoint.sh \ | |
| fur \ | |
| -v \ | |
| -p \ | |
| "pacman" \ | |
| -d \ | |
| "libevm" | |
| /entrypoint.sh \ | |
| rm \ | |
| -rf \ | |
| "${HOME}/fur/termux/any/"*".pkg.tar."*".sig" | |
| /entrypoint.sh \ | |
| pacman \ | |
| -Udd \ | |
| --noconfirm \ | |
| "${HOME}/fur/termux/any/"*".pkg.tar."* | |
| /entrypoint.sh \ | |
| rm \ | |
| -rf \ | |
| "${HOME}/fur" | |
| - name: | |
| Installs latest EVM GNUPG. | |
| run: | | |
| /entrypoint.sh \ | |
| git \ | |
| clone \ | |
| --single-branch \ | |
| --depth=1 \ | |
| "https://github.com/themartiancompany/evm-gnupg" \ | |
| "${HOME}/evm-gnupg-src" || \ | |
| true | |
| cd \ | |
| "${HOME}/evm-gnupg-src"; \ | |
| /entrypoint.sh \ | |
| make \ | |
| -C \ | |
| "${HOME}/evm-gnupg-src" \ | |
| DESTDIR="/data/data/com.termux/files" \ | |
| PREFIX="/usr" \ | |
| install-scripts | |
| /entrypoint.sh \ | |
| termux-fix-shebang \ | |
| "$(which \ | |
| "evm-gpg")"; \ | |
| - name: | |
| Installs latest Gur. | |
| run: | | |
| /entrypoint.sh \ | |
| pkg \ | |
| install \ | |
| -y \ | |
| "gh" | |
| /entrypoint.sh \ | |
| git \ | |
| clone \ | |
| --branch="master" \ | |
| --single-branch \ | |
| --depth=1 \ | |
| "https://github.com/themartiancompany/gur" \ | |
| "${HOME}/gur-src" || \ | |
| true | |
| cd \ | |
| "${HOME}/gur-src"; \ | |
| /entrypoint.sh \ | |
| make \ | |
| -C \ | |
| "${HOME}/gur-src" \ | |
| DESTDIR="/data/data/com.termux/files" \ | |
| PREFIX="/usr" \ | |
| install-scripts | |
| /entrypoint.sh \ | |
| termux-fix-shebang \ | |
| "$(which \ | |
| "gur")"; \ | |
| - name: | |
| Installs latest Fur. | |
| run: | | |
| /entrypoint.sh \ | |
| git \ | |
| clone \ | |
| --branch="main" \ | |
| --single-branch \ | |
| "https://github.com/themartiancompany/fur" \ | |
| "${HOME}/fur-src" || \ | |
| true | |
| # /entrypoint.sh \ | |
| # git \ | |
| # -C \ | |
| # "${HOME}/fur-src" \ | |
| # checkout \ | |
| # "7298b4939aca69ca6bd4c483267cf436c5047962" | |
| cd \ | |
| "${HOME}/fur-src"; \ | |
| /entrypoint.sh \ | |
| make \ | |
| -C \ | |
| "${HOME}/fur-src" \ | |
| DESTDIR="/data/data/com.termux/files" \ | |
| PREFIX="/usr" \ | |
| install-fur | |
| /entrypoint.sh \ | |
| termux-fix-shebang \ | |
| "$(which \ | |
| "fur")"; \ | |
| /entrypoint.sh \ | |
| fur \ | |
| -v \ | |
| -h | |
| - name: | |
| Installs Termux Keyring. | |
| run: | | |
| /entrypoint.sh \ | |
| fur \ | |
| -v \ | |
| -p \ | |
| "pacman" \ | |
| -D \ | |
| "n" \ | |
| -T \ | |
| "termux-keyring" | |
| /entrypoint.sh \ | |
| pacman-key \ | |
| --init || \ | |
| true | |
| /entrypoint.sh \ | |
| pacman \ | |
| -Sy || \ | |
| true | |
| - name: | |
| Installs Filesystem. | |
| env: | |
| GH_TOKEN: | |
| ${{ github.token }} | |
| run: | | |
| /entrypoint.sh \ | |
| fur \ | |
| -v \ | |
| -p \ | |
| "pacman" \ | |
| -m \ | |
| "github" \ | |
| -t \ | |
| "tree" \ | |
| -D \ | |
| "n" \ | |
| -T \ | |
| "filesystem" | |
| - name: | |
| Installs Coreutils. | |
| run: | | |
| /entrypoint.sh \ | |
| pacman \ | |
| -Sy \ | |
| --noconfirm \ | |
| --overwrite="*" \ | |
| "coreutils" || \ | |
| true | |
| - uses: | |
| actions/checkout@v4.2.2 | |
| - name: | |
| Installs EVM Chains Info. | |
| run: | | |
| /entrypoint.sh \ | |
| platform-get \ | |
| -v | |
| cat \ | |
| "/entrypoint.sh" | |
| which \ | |
| "fur" | |
| /entrypoint.sh \ | |
| fur \ | |
| -v \ | |
| -h | |
| $(which \ | |
| "fur") \ | |
| -v \ | |
| -h || \ | |
| true | |
| /entrypoint.sh \ | |
| fur \ | |
| -v \ | |
| -p \ | |
| "pacman" \ | |
| -m \ | |
| "github" \ | |
| -t \ | |
| "tree" \ | |
| -T \ | |
| "evm-chains-info" || \ | |
| true | |
| - name: | |
| Installs EVM Chains Explorers. | |
| run: | | |
| /entrypoint.sh \ | |
| fur \ | |
| -v \ | |
| -p \ | |
| "pacman" \ | |
| "evm-chains-explorers" | |
| # - name: | |
| # Installs LibEVM. | |
| # run: | | |
| # /entrypoint.sh \ | |
| # fur \ | |
| # -v \ | |
| # -p \ | |
| # "pacman" \ | |
| # -d \ | |
| # "libevm" | |
| # /entrypoint.sh \ | |
| # rm \ | |
| # "${HOME}/fur/termux/any/"*".pkg.tar."*".sig" | |
| # /entrypoint.sh \ | |
| # pacman \ | |
| # -Udd \ | |
| # --noconfirm \ | |
| # "${HOME}/fur/termux/any/"*".pkg.tar."* | |
| # /entrypoint.sh \ | |
| # rm \ | |
| # -rf \ | |
| # "${HOME}/fur" | |
| # - name: | |
| # Installs EVM Contracts Tools. | |
| # run: | | |
| # /entrypoint.sh \ | |
| # fur \ | |
| # -v \ | |
| # -p \ | |
| # "pacman" \ | |
| # -d \ | |
| # "evm-contracts-tools" | |
| # /entrypoint.sh \ | |
| # rm \ | |
| # "${HOME}/fur/termux/any/"*".pkg.tar."*".sig" | |
| # /entrypoint.sh \ | |
| # pacman \ | |
| # -Udd \ | |
| # --noconfirm \ | |
| # "${HOME}/fur/termux/any/"*".pkg.tar."* | |
| # /entrypoint.sh \ | |
| # rm \ | |
| # -rf \ | |
| # "${HOME}/fur" | |
| # - name: | |
| # Installs EVM Wallet. | |
| # run: | | |
| # /entrypoint.sh \ | |
| # fur \ | |
| # -v \ | |
| # -p \ | |
| # "pacman" \ | |
| # -d \ | |
| # "evm-wallet" | |
| # /entrypoint.sh \ | |
| # rm \ | |
| # "${HOME}/fur/termux/any/"*".pkg.tar."*".sig" | |
| # /entrypoint.sh \ | |
| # pacman \ | |
| # -Udd \ | |
| # --noconfirm \ | |
| # "${HOME}/fur/termux/any/"*".pkg.tar."* | |
| # /entrypoint.sh \ | |
| # rm \ | |
| # -rf \ | |
| # "${HOME}/fur" | |
| # - name: | |
| # Installs Key Gen. | |
| # run: | | |
| # /entrypoint.sh \ | |
| # fur \ | |
| # -v \ | |
| # -p \ | |
| # "pacman" \ | |
| # -d \ | |
| # "key-gen" | |
| # /entrypoint.sh \ | |
| # rm \ | |
| # "${HOME}/fur/termux/any/"*".pkg.tar."*".sig" | |
| # /entrypoint.sh \ | |
| # pacman \ | |
| # -Udd \ | |
| # --noconfirm \ | |
| # "${HOME}/fur/termux/any/"*".pkg.tar."* | |
| # /entrypoint.sh \ | |
| # rm \ | |
| # -rf \ | |
| # "${HOME}/fur" | |
| # - name: | |
| # Installs EVMFS. | |
| # run: | | |
| # /entrypoint.sh \ | |
| # fur \ | |
| # -v \ | |
| # -p \ | |
| # "pacman" \ | |
| # -d \ | |
| # "evmfs" | |
| # /entrypoint.sh \ | |
| # rm \ | |
| # "${HOME}/fur/termux/any/"*".pkg.tar."*".sig" | |
| # /entrypoint.sh \ | |
| # pacman \ | |
| # -Udd \ | |
| # --noconfirm \ | |
| # "${HOME}/fur/termux/any/"*".pkg.tar."* | |
| # /entrypoint.sh \ | |
| # rm \ | |
| # -rf \ | |
| # "${HOME}/fur" | |
| # - name: | |
| # Installs Aspe. | |
| # run: | | |
| # /entrypoint.sh \ | |
| # fur \ | |
| # -v \ | |
| # -p \ | |
| # "pacman" \ | |
| # -d \ | |
| # "lur" | |
| # /entrypoint.sh \ | |
| # rm \ | |
| # "${HOME}/fur/termux/any/"*".pkg.tar."*".sig" | |
| # /entrypoint.sh \ | |
| # pacman \ | |
| # -Udd \ | |
| # --noconfirm \ | |
| # "${HOME}/fur/termux/any/"*".pkg.tar."* | |
| # /entrypoint.sh \ | |
| # rm \ | |
| # -rf \ | |
| # "${HOME}/fur" | |
| # - name: | |
| # Installs Lur. | |
| # run: | | |
| # /entrypoint.sh \ | |
| # fur \ | |
| # -v \ | |
| # -p \ | |
| # "pacman" \ | |
| # -d \ | |
| # "lur" | |
| # /entrypoint.sh \ | |
| # rm \ | |
| # "${HOME}/fur/termux/any/"*".pkg.tar."*".sig" | |
| # /entrypoint.sh \ | |
| # pacman \ | |
| # -Udd \ | |
| # --noconfirm \ | |
| # "${HOME}/fur/termux/any/"*".pkg.tar."* | |
| # /entrypoint.sh \ | |
| # rm \ | |
| # -rf \ | |
| # "${HOME}/fur" | |
| # - name: | |
| # Installs Meson. | |
| # run: | | |
| # /entrypoint.sh \ | |
| # fur \ | |
| # -v \ | |
| # -p \ | |
| # "pacman" \ | |
| # -d \ | |
| # "meson" | |
| # /entrypoint.sh \ | |
| # rm \ | |
| # "${HOME}/fur/termux/any/"*".pkg.tar."*".sig" | |
| # /entrypoint.sh \ | |
| # pacman \ | |
| # -Udd \ | |
| # --noconfirm \ | |
| # "${HOME}/fur/termux/any/"*".pkg.tar."* | |
| # /entrypoint.sh \ | |
| # rm \ | |
| # -rf \ | |
| # "${HOME}/fur" | |
| - name: | |
| Setup. | |
| run: | | |
| # pkg/pip need to be prefixed with /entrypoint.sh | |
| # because GHA overrode the entrypoint. | |
| /entrypoint.sh \ | |
| pkg \ | |
| install \ | |
| -y \ | |
| "clang" \ | |
| "jq" \ | |
| "ninja" | |
| # This doesn't work | |
| # /entrypoint.sh \ | |
| # gpg \ | |
| # --homedir \ | |
| # "/data/data/com.termux/files/usr/etc/pacman.d/gnupg" \ | |
| # --recv-keys \ | |
| # "998DE27318E867EA976BA877389CEED64573DFCA" | |
| # One needs to manually install the | |
| # termux-keyring pacman package if | |
| # in the Termux Debian environment. | |
| # /entrypoint.sh \ | |
| # pacman \ | |
| # -Sy \ | |
| # termux-keyring | |
| # /entrypoint.sh \ | |
| # pacman-key \ | |
| # --init | |
| # /entrypoint.sh \ | |
| # pip \ | |
| # install \ | |
| # "meson" | |
| - name: | |
| Read pkgbase. | |
| run: | | |
| export \ | |
| _pkgbase="$( \ | |
| _evmfs="false" \ | |
| /entrypoint.sh \ | |
| recipe-get \ | |
| "PKGBUILD" \ | |
| "pkgbase")" | |
| export \ | |
| _pkgname="$( \ | |
| _evmfs="false" \ | |
| /entrypoint.sh \ | |
| recipe-get \ | |
| "PKGBUILD" \ | |
| "pkgname")" | |
| - name: | |
| Installs build dependencies. | |
| env: | |
| GH_TOKEN: | |
| ${{ secrets.GITHUB_TOKEN }} | |
| run: | | |
| _evmfs="false" \ | |
| recipe-get \ | |
| -v \ | |
| -o \ | |
| "array" \ | |
| -d \ | |
| " " \ | |
| "PKGBUILD" \ | |
| "makedepends" | |
| _evmfs="false" \ | |
| recipe-get \ | |
| -o \ | |
| "array" \ | |
| -d \ | |
| " " \ | |
| "PKGBUILD" \ | |
| "makedepends" > \ | |
| "${HOME}/makedepends" | |
| for _pkg in $(cat "${HOME}/makedepends"); do \ | |
| _depend_name="$( \ | |
| /entrypoint.sh \ | |
| version-split \ | |
| "${_pkg}" \ | |
| "name")" | |
| SHELL="bash" \ | |
| /entrypoint.sh \ | |
| pacman \ | |
| --verbose \ | |
| -S \ | |
| --noconfirm \ | |
| "${_depend_name}" \ | |
| --overwrite="*" || \ | |
| true | |
| done | |
| for _pkg in $(cat "${HOME}/makedepends"); do \ | |
| _depend_name="$( \ | |
| /entrypoint.sh \ | |
| version-split \ | |
| "${_pkg}" \ | |
| "name")" | |
| /entrypoint.sh \ | |
| fur \ | |
| -v \ | |
| -t \ | |
| "ci" \ | |
| -m \ | |
| "github" \ | |
| -p \ | |
| "pacman" \ | |
| "${_pkg}" || \ | |
| true | |
| done | |
| - name: | |
| Builds the Android package. | |
| run: | | |
| /entrypoint.sh \ | |
| recipe-get \ | |
| -v \ | |
| "PKGBUILD" \ | |
| "pkgbase" || \ | |
| true | |
| export \ | |
| _pkgbase="$( \ | |
| /entrypoint.sh \ | |
| recipe-get \ | |
| "PKGBUILD" \ | |
| "pkgbase")" | |
| _pkgbase="$( \ | |
| /entrypoint.sh \ | |
| recipe-get \ | |
| "PKGBUILD" \ | |
| "pkgbase")" && \ | |
| /entrypoint.sh \ | |
| mkdir \ | |
| -p \ | |
| "${HOME}/${_pkgbase}-build" && \ | |
| _arch="$( \ | |
| uname \ | |
| -m)" && \ | |
| /entrypoint.sh \ | |
| arch="${_arch}" \ | |
| TERMUX_VERSION=50 \ | |
| _evmfs="false" \ | |
| _git="false" \ | |
| _git_service="github" \ | |
| recipe-get \ | |
| -v \ | |
| "PKGBUILD" \ | |
| "source" | |
| ln \ | |
| -s \ | |
| "/bin/true" \ | |
| "/system/bin/true" || \ | |
| true | |
| ln \ | |
| -s \ | |
| "/system/bin/true" \ | |
| "/data/data/com.termux/files/usr/bin/true" || \ | |
| true | |
| /entrypoint.sh \ | |
| arch="${_arch}" \ | |
| TERMUX_VERSION=50 \ | |
| _evmfs="false" \ | |
| _git="false" \ | |
| _git_service="github" \ | |
| recipe-get \ | |
| -v \ | |
| "PKGBUILD" \ | |
| "sha256sums" && \ | |
| /entrypoint.sh \ | |
| TERMUX_VERSION=50 \ | |
| arch="${_arch}" \ | |
| _evmfs="false" \ | |
| _git="false" \ | |
| _git_service="github" \ | |
| reallymakepkg \ | |
| -v \ | |
| -w \ | |
| "${HOME}/${_pkgbase}-build" \ | |
| -u \ | |
| -- \ | |
| -df \ | |
| --nocheck \ | |
| --skippgpcheck | |
| /entrypoint.sh \ | |
| echo \ | |
| "Home: ${HOME}" | |
| echo \ | |
| "Packages found:" | |
| find \ | |
| "${PWD}" \ | |
| -iname \ | |
| "*pkg.tar*" | |
| bash \ | |
| ".github/android-arm32-fix" | |
| # - name: | |
| # Installs the package. | |
| # run: | | |
| # export \ | |
| # _pkgname="$( \ | |
| # /entrypoint.sh \ | |
| # recipe-get \ | |
| # "PKGBUILD" \ | |
| # "pkgname")" | |
| # /entrypoint.sh \ | |
| # pacman \ | |
| # -Rdd \ | |
| # --noconfirm \ | |
| # ${_pkgname} || \ | |
| # true | |
| # /entrypoint.sh \ | |
| # pacman \ | |
| # -Udd \ | |
| # --noconfirm \ | |
| # $(find \ | |
| # "${PWD}" \ | |
| # -iname \ | |
| # "*.pkg.tar.*") | |
| - name: | |
| version | |
| run: | | |
| /entrypoint.sh \ | |
| _evmfs="false" \ | |
| _git_service="github" \ | |
| makepkg \ | |
| --nobuild \ | |
| -df \ | |
| --skippgpcheck | |
| echo \ | |
| "::set-output name=version::$( \ | |
| /entrypoint.sh \ | |
| _evmfs="false" \ | |
| recipe-get \ | |
| "PKGBUILD" \ | |
| "pkgver")-$( \ | |
| /entrypoint.sh \ | |
| _evmfs="false" \ | |
| recipe-get \ | |
| "PKGBUILD" \ | |
| "pkgrel")" | |
| id: | |
| version | |
| - name: | |
| Upload Termux package. | |
| uses: | |
| actions/upload-release-asset@v1 | |
| env: | |
| GITHUB_TOKEN: | |
| ${{ secrets.GITHUB_TOKEN }} | |
| with: | |
| upload_url: | |
| ${{ github.event.release.upload_url }} | |
| # ${{ steps.create_release.outputs.upload_url }} | |
| asset_path: | |
| "pacman-${{ steps.version.outputs.version }}-${{ matrix.architecture }}.pkg.tar.xz" | |
| asset_name: | |
| "dogeos-android-pacman-${{ steps.version.outputs.version }}-${{ matrix.architecture }}.pkg.tar.xz" | |
| asset_content_type: | |
| application/gzip | |
| arch_release: | |
| name: | |
| Life and DogeOS GNU Base (Arch Linux) binary packages. | |
| strategy: | |
| matrix: | |
| include: | |
| - runner: | |
| ubuntu-24.04 | |
| platform: | |
| gnu | |
| platform_target: | |
| arch | |
| architecture: | |
| x86_64 | |
| container_architecture: | |
| amd64 | |
| runs-on: | |
| ${{ matrix.runner }} | |
| # prepare writable volume prefix mount | |
| # for actions/upload-artifact, | |
| # based on the higher-profile workaround | |
| # for 32-bit GNU/Linux containers explained here | |
| # https://github.com/actions/upload-artifact/issues/616#issuecomment-2350667347 | |
| container: | |
| image: | |
| archlinux:base-devel | |
| volumes: | |
| - /tmp/node20:/__e/node20 | |
| # approximate environment variables for actions | |
| # that can't be forced to use entrypoint.sh | |
| env: | |
| # TERMUX_MAIN_PACKAGE_FORMAT: | |
| # debian | |
| # ANDROID_ROOT: | |
| # /system | |
| # ANDROID_DATA: | |
| # /data | |
| PREFIX: | |
| /usr | |
| # HOME: | |
| # /data/data/com.termux/files/home | |
| PATH: | |
| /usr/bin | |
| # TMPDIR: | |
| # /data/data/com.termux/files/usr/tmp | |
| LANG: | |
| en_US.UTF-8 | |
| TZ: | |
| UTC | |
| steps: | |
| - name: | |
| Upgrade Arch environment. | |
| run: | | |
| pacman \ | |
| -Syu \ | |
| --noconfirm | |
| - name: | |
| Installs NodeJS to force compatibility with actions/checkout and actions/upload-artifact. | |
| run: | | |
| pacman \ | |
| -S \ | |
| --noconfirm \ | |
| "nodejs-lts-jod" || \ | |
| true | |
| ln \ | |
| -sf \ | |
| "${PREFIX}/bin" \ | |
| "/__e/node20/bin" | |
| - name: | |
| Setups container. | |
| run: | | |
| pacman \ | |
| -S \ | |
| --noconfirm \ | |
| "github-cli" \ | |
| "git" \ | |
| "jq" \ | |
| "python" \ | |
| "python-docutils" \ | |
| "python-pip" \ | |
| "python-build" \ | |
| "tree" \ | |
| "unzip" | |
| - uses: | |
| actions/checkout@v4.2.2 | |
| - name: | |
| Fixes executable bit for all binaries in "${PREFIX}/bin" for all users. | |
| run: | | |
| chmod \ | |
| -R \ | |
| "o+x" \ | |
| "${PREFIX}/bin" | |
| - name: | |
| Shows info. | |
| run: | | |
| printf \ | |
| "%s\n" \ | |
| "ID: '$(id)'." \ | |
| "Home: '${HOME}'." \ | |
| "Current directory: '${PWD}'." \ | |
| "Contents of the directory '${PWD}':" | |
| ls \ | |
| "${PWD}" | |
| tree \ | |
| -L \ | |
| 2 \ | |
| "/" | |
| - name: | |
| Installs Crash Bash Library. | |
| run: | | |
| git \ | |
| clone \ | |
| --branch="libcrash-bash" \ | |
| --single-branch \ | |
| --depth=1 \ | |
| "https://github.com/themartiancompany/fur" \ | |
| "${HOME}/fur" | |
| rm \ | |
| "${HOME}/fur/arch/any/"*".pkg.tar."*".sig" | |
| pacman \ | |
| -Udd \ | |
| --noconfirm \ | |
| "${HOME}/fur/arch/any/"*".pkg.tar."* | |
| rm \ | |
| -rf \ | |
| "${HOME}/fur" | |
| - name: | |
| Installs Fur. | |
| run: | | |
| git \ | |
| clone \ | |
| --branch="fur" \ | |
| --single-branch \ | |
| --depth=1 \ | |
| "https://github.com/themartiancompany/fur" \ | |
| "${HOME}/fur" | |
| rm \ | |
| "${HOME}/fur/arch/any/"*".pkg.tar."*".sig" | |
| pacman \ | |
| -Udd \ | |
| --noconfirm \ | |
| "${HOME}/fur/arch/any/"*".pkg.tar."* | |
| rm \ | |
| -rf \ | |
| "${HOME}/fur" | |
| - name: | |
| Installs Inteppacman. | |
| run: | | |
| pacman \ | |
| -S \ | |
| --noconfirm \ | |
| "tree" | |
| fur \ | |
| -v \ | |
| -p \ | |
| "pacman" \ | |
| -d \ | |
| "inteppacman" | |
| rm \ | |
| "${HOME}/fur/arch/any/"*".pkg.tar."*".sig" | |
| tree \ | |
| "${HOME}" | |
| pacman \ | |
| -Udd \ | |
| --noconfirm \ | |
| "${HOME}/fur/arch/any/"*".pkg.tar."* | |
| rm \ | |
| -rf \ | |
| "${HOME}/fur" | |
| - name: | |
| Installs Reallymakepkg. | |
| run: | | |
| fur \ | |
| -v \ | |
| -d \ | |
| "reallymakepkg" | |
| rm \ | |
| "${HOME}/fur/arch/any/"*".pkg.tar."*".sig" | |
| tree \ | |
| "${HOME}" | |
| pacman \ | |
| -Udd \ | |
| --noconfirm \ | |
| "${HOME}/fur/arch/any/"*".pkg.tar."* | |
| rm \ | |
| -rf \ | |
| "${HOME}/fur" | |
| - name: | |
| Installs Node Run. | |
| run: | | |
| fur \ | |
| -v \ | |
| -d \ | |
| "node-run" | |
| rm \ | |
| "${HOME}/fur/arch/any/"*".pkg.tar."*".sig" | |
| pacman \ | |
| -Udd \ | |
| --noconfirm \ | |
| "${HOME}/fur/arch/any/"*".pkg.tar."* | |
| rm \ | |
| -rf \ | |
| "${HOME}/fur" | |
| - name: | |
| Installs LibcrashJS. | |
| run: | | |
| fur \ | |
| -v \ | |
| -d \ | |
| "libcrash-js" | |
| rm \ | |
| "${HOME}/fur/arch/any/"*".pkg.tar."*".sig" | |
| tree \ | |
| "${HOME}" | |
| pacman \ | |
| -Udd \ | |
| --noconfirm \ | |
| "${HOME}/fur/arch/any/"*".pkg.tar."* | |
| rm \ | |
| -rf \ | |
| "${HOME}/fur" | |
| - name: | |
| Installs EVM Chains. | |
| run: | | |
| fur \ | |
| -v \ | |
| -d \ | |
| "evm-chains" | |
| rm \ | |
| "${HOME}/fur/arch/any/"*".pkg.tar."*".sig" | |
| pacman \ | |
| -Udd \ | |
| --noconfirm \ | |
| "${HOME}/fur/arch/any/"*".pkg.tar."* | |
| rm \ | |
| -rf \ | |
| "${HOME}/fur" | |
| - name: | |
| Installs Python AIOEtherscan. | |
| run: | | |
| fur \ | |
| -v \ | |
| -d \ | |
| "python-aioetherscan" | |
| rm \ | |
| "${HOME}/fur/arch/${{ matrix.architecture }}/"*".pkg.tar."*".sig" | |
| pacman \ | |
| -Udd \ | |
| --noconfirm \ | |
| "${HOME}/fur/arch/${{ matrix.architecture }}/"*".pkg.tar."* | |
| rm \ | |
| -rf \ | |
| "${HOME}/fur" | |
| - name: | |
| Installs Node Ethers. | |
| run: | | |
| fur \ | |
| -v \ | |
| -d \ | |
| "nodejs-ethers" | |
| rm \ | |
| "${HOME}/fur/arch/any/"*".pkg.tar."*".sig" | |
| pacman \ | |
| -Udd \ | |
| --noconfirm \ | |
| "${HOME}/fur/arch/any/"*".pkg.tar."* | |
| rm \ | |
| -rf \ | |
| "${HOME}/fur" | |
| - name: | |
| Installs EVM Chains Info. | |
| run: | | |
| fur \ | |
| -v \ | |
| -d \ | |
| "evm-chains-info" | |
| rm \ | |
| "${HOME}/fur/arch/any/"*".pkg.tar."*".sig" | |
| pacman \ | |
| -Udd \ | |
| --noconfirm \ | |
| "${HOME}/fur/arch/any/"*".pkg.tar."* | |
| rm \ | |
| -rf \ | |
| "${HOME}/fur" | |
| - name: | |
| Installs EVM Chains Explorers. | |
| run: | | |
| fur \ | |
| -v \ | |
| -d \ | |
| "evm-chains-explorers" | |
| rm \ | |
| "${HOME}/fur/arch/any/"*".pkg.tar."*".sig" | |
| pacman \ | |
| -Udd \ | |
| --noconfirm \ | |
| "${HOME}/fur/arch/any/"*".pkg.tar."* | |
| rm \ | |
| -rf \ | |
| "${HOME}/fur" | |
| - name: | |
| Installs LibEVM. | |
| run: | | |
| fur \ | |
| -v \ | |
| -d \ | |
| "libevm" | |
| rm \ | |
| "${HOME}/fur/arch/any/"*".pkg.tar."*".sig" | |
| pacman \ | |
| -Udd \ | |
| --noconfirm \ | |
| "${HOME}/fur/arch/any/"*".pkg.tar."* | |
| rm \ | |
| -rf \ | |
| "${HOME}/fur" | |
| - name: | |
| Installs EVM Wallet. | |
| run: | | |
| fur \ | |
| -v \ | |
| -d \ | |
| "evm-wallet" | |
| rm \ | |
| "${HOME}/fur/arch/any/"*".pkg.tar."*".sig" | |
| pacman \ | |
| -Udd \ | |
| --noconfirm \ | |
| "${HOME}/fur/arch/any/"*".pkg.tar."* | |
| rm \ | |
| -rf \ | |
| "${HOME}/fur" | |
| - name: | |
| Installs EVM Contracts ABI Get. | |
| run: | | |
| fur \ | |
| -v \ | |
| -d \ | |
| "evm-contracts-abi-get" | |
| rm \ | |
| "${HOME}/fur/arch/${{ matrix.architecture }}/"*".pkg.tar."*".sig" | |
| pacman \ | |
| -Udd \ | |
| --noconfirm \ | |
| "${HOME}/fur/arch/${{ matrix.architecture }}/"*".pkg.tar."* | |
| rm \ | |
| -rf \ | |
| "${HOME}/fur" | |
| - name: | |
| Installs EVM Contracts Tools. | |
| run: | | |
| fur \ | |
| -v \ | |
| -d \ | |
| "evm-contracts-tools" | |
| rm \ | |
| "${HOME}/fur/arch/any/"*".pkg.tar."*".sig" | |
| pacman \ | |
| -Udd \ | |
| --noconfirm \ | |
| "${HOME}/fur/arch/any/"*".pkg.tar."* | |
| rm \ | |
| -rf \ | |
| "${HOME}/fur" | |
| - name: | |
| Installs Key Gen. | |
| run: | | |
| fur \ | |
| -v \ | |
| -d \ | |
| "key-gen" | |
| rm \ | |
| "${HOME}/fur/termux/any/"*".pkg.tar."*".sig" | |
| pacman \ | |
| -Udd \ | |
| --noconfirm \ | |
| "${HOME}/fur/termux/any/"*".pkg.tar."* | |
| rm \ | |
| -rf \ | |
| "${HOME}/fur" | |
| - name: | |
| Installs EVMFS. | |
| run: | | |
| fur \ | |
| -v \ | |
| -d \ | |
| "evmfs" | |
| rm \ | |
| "${HOME}/fur/arch/any/"*".pkg.tar."*".sig" | |
| pacman \ | |
| -Udd \ | |
| --noconfirm \ | |
| "${HOME}/fur/arch/any/"*".pkg.tar."* | |
| rm \ | |
| -rf \ | |
| "${HOME}/fur" | |
| # - name: | |
| # Installs EVM Contracts Source Index. | |
| # run: | | |
| # fur \ | |
| # -v \ | |
| # -d \ | |
| # "evm-contracts-source-index-git" | |
| # rm \ | |
| # "${HOME}/fur/arch/any/"*".pkg.tar."*".sig" | |
| # pacman \ | |
| # -Udd \ | |
| # --noconfirm \ | |
| # "${HOME}/fur/arch/any/"*".pkg.tar."* | |
| # rm \ | |
| # -rf \ | |
| # "${HOME}/fur" | |
| - name: | |
| Installs Aspe. | |
| run: | | |
| fur \ | |
| -v \ | |
| -d \ | |
| "aspe" | |
| rm \ | |
| "${HOME}/fur/arch/any/"*".pkg.tar."*".sig" | |
| pacman \ | |
| -Udd \ | |
| --noconfirm \ | |
| "${HOME}/fur/arch/any/"*".pkg.tar."* | |
| rm \ | |
| -rf \ | |
| "${HOME}/fur" | |
| - name: | |
| Installs Lur. | |
| run: | | |
| fur \ | |
| -v \ | |
| -d \ | |
| "lur" | |
| rm \ | |
| "${HOME}/fur/arch/any/"*".pkg.tar."*".sig" | |
| pacman \ | |
| -Udd \ | |
| --noconfirm \ | |
| "${HOME}/fur/arch/any/"*".pkg.tar."* | |
| rm \ | |
| -rf \ | |
| "${HOME}/fur" | |
| - name: | |
| Installs Ur. | |
| run: | | |
| fur \ | |
| -v \ | |
| -d \ | |
| "ur" | |
| rm \ | |
| "${HOME}/fur/arch/any/"*".pkg.tar."*".sig" | |
| pacman \ | |
| -Udd \ | |
| --noconfirm \ | |
| "${HOME}/fur/arch/any/"*".pkg.tar."* | |
| rm \ | |
| -rf \ | |
| "${HOME}/fur" | |
| - name: | |
| Setups an user. This is something which exists on the Ur for a reason. | |
| run: | | |
| mkdir \ | |
| -p \ | |
| "/home/user/lur" | |
| useradd \ | |
| user | |
| chmod \ | |
| 700 \ | |
| "/home/user" | |
| chown \ | |
| -R \ | |
| "user:user" \ | |
| "/home/user" | |
| chown \ | |
| -R \ | |
| "user:user" \ | |
| "${PWD}" | |
| - name: | |
| Installs latest Crash Bash Library. | |
| run: | | |
| git \ | |
| clone \ | |
| "https://github.com/themartiancompany/crash-bash" | |
| cd \ | |
| "crash-bash" | |
| mkdir \ | |
| -p \ | |
| "/usr/lib/libcrash-bash" | |
| make \ | |
| PREFIX="/usr" \ | |
| install | |
| - name: | |
| Installs latest Reallymakepkg. | |
| run: | | |
| pacman \ | |
| -Rdd \ | |
| --noconfirm \ | |
| "reallymakepkg" | |
| git \ | |
| clone \ | |
| --branch="main" \ | |
| --single-branch \ | |
| --depth=1 \ | |
| "https://github.com/themartiancompany/reallymakepkg" \ | |
| "${HOME}/reallymakepkg-src" || \ | |
| true | |
| git \ | |
| -C \ | |
| "${HOME}/reallymakepkg-src" \ | |
| log | \ | |
| head \ | |
| -n \ | |
| 20 | |
| cd \ | |
| "${HOME}/reallymakepkg-src" | |
| make \ | |
| -C \ | |
| "${HOME}/reallymakepkg-src" \ | |
| PREFIX="/usr" \ | |
| install-scripts | |
| make \ | |
| -C \ | |
| "${HOME}/reallymakepkg-src" \ | |
| PREFIX="/usr" \ | |
| install-configs || \ | |
| true | |
| install \ | |
| -vDm644 \ | |
| "${HOME}/reallymakepkg-src/configs/makepkg.gnu.conf" \ | |
| "/etc/reallymakepkg/makepkg.gnu.conf" | |
| - name: | |
| Installs latest EVM GNUPG. | |
| run: | | |
| git \ | |
| clone \ | |
| --single-branch \ | |
| --depth=1 \ | |
| "https://github.com/themartiancompany/evm-gnupg" \ | |
| "${HOME}/evm-gnupg-src" || \ | |
| true | |
| cd \ | |
| "${HOME}/evm-gnupg-src" | |
| make \ | |
| PREFIX="/usr" \ | |
| install-scripts | |
| - name: | |
| Installs latest gl-dl. | |
| run: | | |
| git \ | |
| clone \ | |
| --single-branch \ | |
| --depth=1 \ | |
| "https://github.com/themartiancompany/gl-dl" \ | |
| "${HOME}/gl-dl-src" || \ | |
| true | |
| cd \ | |
| "${HOME}/gl-dl-src" | |
| make \ | |
| PREFIX="/usr" \ | |
| install-scripts | |
| - name: | |
| Installs latest Gur. | |
| run: | | |
| git \ | |
| clone \ | |
| --branch="master" \ | |
| --single-branch \ | |
| --depth=1 \ | |
| "https://github.com/themartiancompany/gur" \ | |
| "${HOME}/gur-src" || \ | |
| true | |
| make \ | |
| -C \ | |
| "${HOME}/gur-src" \ | |
| PREFIX="/usr" \ | |
| install-scripts | |
| - name: | |
| Installs latest Fur. | |
| run: | | |
| git \ | |
| clone \ | |
| --branch="main" \ | |
| --single-branch \ | |
| --depth=1 \ | |
| "https://github.com/themartiancompany/fur" \ | |
| "${HOME}/fur-src" || \ | |
| true | |
| cd \ | |
| "${HOME}/fur-src" | |
| make \ | |
| PREFIX="/usr" \ | |
| install-fur | |
| - name: | |
| Read pkgbase. | |
| run: | | |
| export \ | |
| _pkgbase="$( \ | |
| _evmfs="false" \ | |
| recipe-get \ | |
| "PKGBUILD" \ | |
| "pkgbase")" | |
| export \ | |
| _pkgname="$( \ | |
| _evmfs="false" \ | |
| recipe-get \ | |
| "PKGBUILD" \ | |
| "pkgname")" | |
| - name: | |
| Installs build dependencies. | |
| env: | |
| GH_TOKEN: | |
| ${{ secrets.GITHUB_TOKEN }} | |
| run: | | |
| ls | |
| _evmfs="false" \ | |
| _git="false" \ | |
| _git_service="github" \ | |
| recipe-get \ | |
| -o \ | |
| "array" \ | |
| -d \ | |
| " " \ | |
| "PKGBUILD" \ | |
| "makedepends" | |
| _evmfs="false" \ | |
| _git_service="github" \ | |
| recipe-get \ | |
| -o \ | |
| "array" \ | |
| -d \ | |
| " " \ | |
| "PKGBUILD" \ | |
| "makedepends" > \ | |
| "${HOME}/makedepends" | |
| # ( _evmfs="false" \ | |
| # recipe-get \ | |
| # -o \ | |
| # "array" \ | |
| # -d \ | |
| # " " \ | |
| # "PKGBUILD" \ | |
| # "makedepends" || \ | |
| # true ) > \ | |
| # "makedepends" | |
| export \ | |
| _makedepends="$( \ | |
| cat \ | |
| "${HOME}/makedepends")" | |
| echo \ | |
| "Build dependencies found: '$_makedepends'." | |
| for _pkg in "jq" $(cat "${HOME}/makedepends"); do \ | |
| echo \ | |
| "Extracting package name from '${_pkg}' with version-split."; \ | |
| version-split \ | |
| -v \ | |
| "${_pkg}" \ | |
| "name" || \ | |
| true; \ | |
| export \ | |
| _depend_name="$( \ | |
| version-split \ | |
| "${_pkg}" \ | |
| "name" || \ | |
| true)"; \ | |
| echo \ | |
| "Installing '${_depend_name}' with pacman."; \ | |
| pacman \ | |
| -S \ | |
| --noconfirm \ | |
| "${_depend_name}" \ | |
| --overwrite="*" || \ | |
| true | |
| done | |
| for _pkg in $(cat "${HOME}/makedepends"); do \ | |
| _depend_name="$( \ | |
| version-split \ | |
| "${_pkg}" \ | |
| "name" || \ | |
| true)"; \ | |
| echo \ | |
| "Installing '${_depend_name}' with fur."; \ | |
| fur \ | |
| -v \ | |
| -t \ | |
| "ci" \ | |
| -m \ | |
| "github" \ | |
| -p \ | |
| "pacman" \ | |
| "${_depend_name}" || \ | |
| true | |
| done | |
| - name: | |
| Builds the Arch package. | |
| run: | | |
| _evmfs="false" \ | |
| _git_service="github" \ | |
| recipe-get \ | |
| -v \ | |
| "PKGBUILD" \ | |
| "pkgbase" | |
| export \ | |
| _pkgbase="$( \ | |
| _evmfs="false" \ | |
| _git_service="github" \ | |
| recipe-get \ | |
| "PKGBUILD" \ | |
| "pkgbase")" && \ | |
| su \ | |
| -c \ | |
| "cd ${PWD} && _evmfs="false" _git="false" _git_service="github" reallymakepkg -v -u -w '/home/user/${_pkgbase}-build' -- -df --nocheck --skippgpcheck && ls -lsh" - \ | |
| "user" | |
| - name: | |
| Fix naming issue with architecture. | |
| run: | | |
| export \ | |
| _pkgname="$( \ | |
| _evmfs="false" \ | |
| _git_service="github" \ | |
| recipe-get \ | |
| "PKGBUILD" \ | |
| "pkgname")" \ | |
| _pkgver="$( \ | |
| _evmfs="false" \ | |
| _git_service="github" \ | |
| recipe-get \ | |
| "PKGBUILD" \ | |
| "pkgver")" \ | |
| _pkgrel="$( \ | |
| _evmfs="false" \ | |
| _git_service="github" \ | |
| recipe-get \ | |
| "PKGBUILD" \ | |
| "pkgrel")" && \ | |
| mv \ | |
| "${_pkgname}-${_pkgver}-${_pkgrel}-x86_64pkg.tar.xz" \ | |
| "${_pkgname}-${_pkgver}-${_pkgrel}-x86_64.pkg.tar.xz" || \ | |
| true | |
| # - name: | |
| # Installs the package. | |
| # run: | | |
| # pacman \ | |
| # -Rdd \ | |
| # --noconfirm \ | |
| # fur || \ | |
| # true | |
| # pacman \ | |
| # -Rdd \ | |
| # --noconfirm \ | |
| # fur-docs || \ | |
| # true | |
| # pacman \ | |
| # -Udd \ | |
| # --noconfirm \ | |
| # $(find \ | |
| # "${PWD}" \ | |
| # -iname \ | |
| # "*.pkg.tar.*") | |
| - name: | |
| version | |
| run: | | |
| echo \ | |
| "::set-output name=version::$( \ | |
| _evmfs="false" \ | |
| recipe-get \ | |
| "PKGBUILD" \ | |
| "pkgver")-$( \ | |
| _evmfs="false" \ | |
| recipe-get \ | |
| "PKGBUILD" \ | |
| "pkgrel")" | |
| id: | |
| version | |
| - name: | |
| Uploads Arch package. | |
| uses: | |
| actions/upload-release-asset@v1 | |
| env: | |
| GITHUB_TOKEN: | |
| ${{ secrets.GITHUB_TOKEN }} | |
| with: | |
| upload_url: | |
| ${{ github.event.release.upload_url }} | |
| # ${{ steps.create_release.outputs.upload_url }} | |
| asset_path: | |
| "pacman-${{ steps.version.outputs.version }}-${{ matrix.architecture }}.pkg.tar.xz" | |
| asset_name: | |
| "dogeos-gnu-pacman-${{ steps.version.outputs.version }}-${{ matrix.architecture }}.pkg.tar.xz" | |
| asset_content_type: | |
| application/gzip | |
| msys2_release: | |
| name: | |
| Life and DogeOS Windows base packages (CI). | |
| strategy: | |
| matrix: | |
| include: | |
| - { sys: | |
| mingw64, | |
| env: | |
| x86_64, | |
| arch: | |
| x86_64 } | |
| runs-on: | |
| windows-latest | |
| defaults: | |
| run: | |
| shell: | |
| msys2 {0} | |
| steps: | |
| - uses: | |
| msys2/setup-msys2@v2 | |
| with: | |
| msystem: | |
| ${{ matrix.sys }} | |
| update: | |
| true | |
| install: | |
| base-devel | |
| dos2unix | |
| mingw-w64-${{ matrix.env }}-github-cli | |
| git | |
| mingw-w64-${{ matrix.env }}-jq | |
| mingw-w64-${{ matrix.env }}-gcc | |
| mingw-w64-${{ matrix.env }}-nodejs | |
| python-docutils | |
| unzip | |
| - name: | |
| Upgrade Arch environment. | |
| run: | | |
| pacman \ | |
| -Syu \ | |
| --noconfirm | |
| - name: | |
| Installs Crash Bash Library. | |
| run: | | |
| git \ | |
| clone \ | |
| --branch="libcrash-bash" \ | |
| --single-branch \ | |
| --depth=1 \ | |
| "https://github.com/themartiancompany/fur" \ | |
| "${HOME}/fur" | |
| rm \ | |
| "${HOME}/fur/arch/any/"*".pkg.tar."*".sig" | |
| pacman \ | |
| -Udd \ | |
| --noconfirm \ | |
| "${HOME}/fur/arch/any/"*".pkg.tar."* | |
| rm \ | |
| -rf \ | |
| "${HOME}/fur" | |
| - name: | |
| Installs Fur. | |
| run: | | |
| git \ | |
| clone \ | |
| --branch="fur" \ | |
| --single-branch \ | |
| --depth=1 \ | |
| "https://github.com/themartiancompany/fur" \ | |
| "${HOME}/fur" | |
| rm \ | |
| "${HOME}/fur/arch/any/"*".pkg.tar."*".sig" | |
| pacman \ | |
| -Udd \ | |
| --noconfirm \ | |
| "${HOME}/fur/arch/any/"*".pkg.tar."* | |
| rm \ | |
| -rf \ | |
| "${HOME}/fur" | |
| - name: | |
| Installs Inteppacman. | |
| run: | | |
| pacman \ | |
| -S \ | |
| --noconfirm \ | |
| "tree" | |
| fur \ | |
| -v \ | |
| -p \ | |
| "pacman" \ | |
| -d \ | |
| "inteppacman" | |
| rm \ | |
| "${HOME}/fur/arch/any/"*".pkg.tar."*".sig" | |
| tree \ | |
| "${HOME}" | |
| pacman \ | |
| -Udd \ | |
| --noconfirm \ | |
| "${HOME}/fur/arch/any/"*".pkg.tar."* | |
| rm \ | |
| -rf \ | |
| "${HOME}/fur" | |
| - name: | |
| Installs Reallymakepkg. | |
| run: | | |
| fur \ | |
| -v \ | |
| -d \ | |
| "reallymakepkg" | |
| rm \ | |
| "${HOME}/fur/arch/any/"*".pkg.tar."*".sig" | |
| tree \ | |
| "${HOME}" | |
| pacman \ | |
| -Udd \ | |
| --noconfirm \ | |
| "${HOME}/fur/arch/any/"*".pkg.tar."* | |
| rm \ | |
| -rf \ | |
| "${HOME}/fur" | |
| - name: | |
| Installs latest Crash Bash Library. | |
| run: | | |
| git \ | |
| clone \ | |
| "https://github.com/themartiancompany/crash-bash" | |
| cd \ | |
| "crash-bash" | |
| mkdir \ | |
| -p \ | |
| "/usr/lib/libcrash-bash" | |
| make \ | |
| PREFIX="/usr" \ | |
| install | |
| - name: | |
| Installs latest Reallymakepkg. | |
| run: | | |
| pacman \ | |
| -Rdd \ | |
| --noconfirm \ | |
| "reallymakepkg"; \ | |
| git \ | |
| clone \ | |
| --branch \ | |
| "main" \ | |
| --single-branch \ | |
| "https://github.com/themartiancompany/reallymakepkg" \ | |
| "${HOME}/reallymakepkg-src" || \ | |
| true | |
| cd \ | |
| "${HOME}/reallymakepkg-src" | |
| make \ | |
| -C \ | |
| "${HOME}/reallymakepkg-src" \ | |
| PREFIX="/usr" \ | |
| install-scripts | |
| install \ | |
| -vDm644 \ | |
| "${HOME}/reallymakepkg-src/configs/makepkg.gnu.conf" \ | |
| "/etc/reallymakepkg/makepkg.gnu.conf" | |
| - name: | |
| Installs latest EVM GNUPG. | |
| run: | | |
| git \ | |
| clone \ | |
| --single-branch \ | |
| --depth=1 \ | |
| "https://github.com/themartiancompany/evm-gnupg" \ | |
| "${HOME}/evm-gnupg-src" || \ | |
| true | |
| cd \ | |
| "${HOME}/evm-gnupg-src" | |
| make \ | |
| PREFIX="/usr" \ | |
| install-scripts | |
| - name: | |
| Installs latest gl-dl. | |
| run: | | |
| git \ | |
| clone \ | |
| --single-branch \ | |
| --depth=1 \ | |
| "https://github.com/themartiancompany/gl-dl" \ | |
| "${HOME}/gl-dl-src" || \ | |
| true | |
| cd \ | |
| "${HOME}/gl-dl-src" | |
| make \ | |
| PREFIX="/usr" \ | |
| install-scripts | |
| - name: | |
| Installs latest Gur. | |
| run: | | |
| git \ | |
| clone \ | |
| --branch="master" \ | |
| --single-branch \ | |
| --depth=1 \ | |
| "https://github.com/themartiancompany/gur" \ | |
| "${HOME}/gur-src" || \ | |
| true | |
| make \ | |
| PREFIX="/usr" \ | |
| -C \ | |
| "${HOME}/gur-src" \ | |
| install-scripts | |
| - name: | |
| Installs latest Fur. | |
| run: | | |
| git \ | |
| clone \ | |
| --branch="main" \ | |
| --single-branch \ | |
| --depth=1 \ | |
| "https://github.com/themartiancompany/fur" \ | |
| "${HOME}/fur-src" || \ | |
| true | |
| cd \ | |
| "${HOME}/fur-src" | |
| make \ | |
| PREFIX="/usr" \ | |
| install-fur | |
| # - name: | |
| # Installs Rust. | |
| # run: | | |
| # pacman \ | |
| # -Ss \ | |
| # --noconfirm \ | |
| # cargo | |
| - name: | |
| Fixes CRLF on Windows. | |
| run: | | |
| git \ | |
| config \ | |
| --global \ | |
| "core.autocrlf" \ | |
| "false" | |
| - uses: | |
| actions/checkout@v3 | |
| - name: | |
| Installs recent EVM GNUPG. | |
| env: | |
| GITHUB_TOKEN: | |
| ${{ secrets.GITHUB_TOKEN }} | |
| run: | | |
| pacman \ | |
| -S \ | |
| --noconfirm \ | |
| "mingw-w64-${{ matrix.env }}-github-cli" | |
| bash \ | |
| ".github/gur-mini" \ | |
| "themartiancompany" \ | |
| "evm-gnupg" \ | |
| "0.0.0.0.0.0.0.0.1.1.1.1.1.1-15" | |
| # git \ | |
| # clone \ | |
| # --single-branch \ | |
| # --depth=1 \ | |
| # "https://github.com/themartiancompany/evm-gnupg" \ | |
| # "${HOME}/evm-gnupg-src" || \ | |
| # true | |
| # cd \ | |
| # "${HOME}/evm-gnupg-src" | |
| # make \ | |
| # -C \ | |
| # "${HOME}/evm-gnupg-src" \ | |
| # PREFIX="/usr" \ | |
| # install-scripts | |
| - name: | |
| Installs build dependencies. | |
| env: | |
| GH_TOKEN: | |
| ${{ secrets.GITHUB_TOKEN }} | |
| run: | | |
| pacman \ | |
| -Ss \ | |
| "npm" || \ | |
| true | |
| mkdir \ | |
| -p \ | |
| "/root/package.orig" | |
| cp \ | |
| -v \ | |
| -r \ | |
| "${PWD}/"* \ | |
| "/root/package.orig" | |
| dos2unix \ | |
| "PKGBUILD" | |
| _evmfs="false" \ | |
| _git_service="github" \ | |
| recipe-get \ | |
| -v \ | |
| -o \ | |
| "array" \ | |
| -d \ | |
| " " \ | |
| "PKGBUILD" \ | |
| "makedepends" || \ | |
| true | |
| _evmfs="false" \ | |
| _git_service="github" \ | |
| "recipe-get" \ | |
| -o \ | |
| "array" \ | |
| -d \ | |
| " " \ | |
| "PKGBUILD" \ | |
| "makedepends" > \ | |
| "${HOME}/makedepends"; \ | |
| # ( _evmfs="false" \ | |
| # recipe-get \ | |
| # -o \ | |
| # "array" \ | |
| # -d \ | |
| # " " \ | |
| # "PKGBUILD" \ | |
| # "makedepends" > \ | |
| # "${HOME}/makedepends" | |
| for _pkg in $(cat "${HOME}/makedepends"); do \ | |
| _mingw_name="mingw-w64-${{ matrix.env }}-${_pkg}"; \ | |
| export \ | |
| _pkgs_mingw="${_pkgs_mingw} ${_mingw_name}"; \ | |
| echo \ | |
| "${_mingw_name}" >> \ | |
| "${HOME}/makedepends-mingw"; \ | |
| done | |
| for _pkg in $(cat "${HOME}/makedepends"); do \ | |
| _depend_name="$( \ | |
| version-split \ | |
| "${_pkg}" \ | |
| "name")"; \ | |
| echo \ | |
| "Installing '${_depend_name}' with pacman."; \ | |
| pacman \ | |
| -S \ | |
| --noconfirm \ | |
| "${_depend_name}" \ | |
| --overwrite="*" || \ | |
| true; \ | |
| done | |
| for _pkg in $(cat "${HOME}/makedepends-mingw"); do \ | |
| _depend_name="$( \ | |
| version-split \ | |
| "${_pkg}" \ | |
| "name")"; \ | |
| echo \ | |
| "Installing mingw '${_depend_name}' build dependency with pacman."; \ | |
| pacman \ | |
| -S \ | |
| --noconfirm \ | |
| "${_depend_name}" \ | |
| --overwrite="*" || \ | |
| true; \ | |
| done | |
| for _pkg in $(cat "${HOME}/makedepends"); do \ | |
| _depend_name="$( \ | |
| version-split \ | |
| "${_pkg}" \ | |
| "name")"; \ | |
| echo \ | |
| "Installing '${_depend_name}' with fur."; \ | |
| fur \ | |
| -v \ | |
| -t \ | |
| "ci" \ | |
| -m \ | |
| "github" \ | |
| -p \ | |
| "pacman" \ | |
| "${_depend_name}" || \ | |
| true; \ | |
| done | |
| for _pkg in $(cat "${HOME}/makedepends-mingw"); do \ | |
| _depend_name="$( \ | |
| version-split \ | |
| "${_pkg}" \ | |
| "name")"; \ | |
| echo \ | |
| "Installing MinGW '${_depend_name}' build dependency with fur."; \ | |
| fur \ | |
| -v \ | |
| -t \ | |
| "ci" \ | |
| -m \ | |
| "github" \ | |
| -p \ | |
| "pacman" \ | |
| "${_depend_name}" || \ | |
| true; \ | |
| done | |
| - uses: | |
| actions/checkout@v3 | |
| - name: | |
| Builds the Windows package. | |
| run: | | |
| mkdir \ | |
| -p \ | |
| "/root/temp" | |
| # sha256sum \ | |
| # "arch-meson" | |
| # dos2unix \ | |
| # "arch-meson" | |
| # sha256sum \ | |
| # "${PWD}/"* || \ | |
| # true | |
| # cp \ | |
| # -v \ | |
| # -r \ | |
| # "${PWD}/* \ | |
| # "/root/temp" || \ | |
| # true | |
| # dos2unix \ | |
| # "PKGBUILD" || \ | |
| # true | |
| # recipe-get \ | |
| # -v \ | |
| # "PKGBUILD" \ | |
| # "sha256sums" | |
| # cp \ | |
| # "PKGBUILD" \ | |
| # "PKGBUILD.windows" | |
| # cp \ | |
| # -v \ | |
| # -r \ | |
| # "/root/temp/"* \ | |
| # "." | |
| # mv \ | |
| # "PKGBUILD.windows" \ | |
| # "PKGBUILD" | |
| # rm \ | |
| # -rf \ | |
| # "/root/temp" | |
| # export \ | |
| # _pkgbase="$( \ | |
| # recipe-get \ | |
| # "PKGBUILD" \ | |
| # "pkgbase")" | |
| # echo \ | |
| # "$(uname \ | |
| # -o)" | |
| # _evmfs="false" \ | |
| # _git_service="github" \ | |
| # recipe-get \ | |
| # -v \ | |
| # "PKGBUILD" \ | |
| # "source" | |
| # _evmfs="false" \ | |
| # _git_service="github" \ | |
| # recipe-get \ | |
| # -v \ | |
| # "PKGBUILD" \ | |
| # "sha256sums" | |
| # PKGEXT='.pkg.tar.xz' \ | |
| # _evmfs="false" \ | |
| # _git="false" \ | |
| # _git_service="github" \ | |
| export \ | |
| _oldpwd="${PWD}" && \ | |
| cd \ | |
| "/root/package.orig"; \ | |
| dos2unix \ | |
| "PKGBUILD"; \ | |
| cp \ | |
| -v \ | |
| -r \ | |
| "PKGBUILD" \ | |
| "${_oldpwd}/PKGBUILD"; \ | |
| cd \ | |
| "${_oldpwd}"; \ | |
| export \ | |
| _pkgbase="$( \ | |
| recipe-get \ | |
| "PKGBUILD" \ | |
| "pkgbase")" && \ | |
| arch="${_arch}" \ | |
| _evmfs="false" \ | |
| _git="false" \ | |
| _git_service="github" \ | |
| reallymakepkg \ | |
| -v \ | |
| -w \ | |
| "${HOME}/${_pkgbase}-build" \ | |
| -u \ | |
| -- \ | |
| -df \ | |
| --nocheck \ | |
| --skippgpcheck | |
| # makepkg \ | |
| # -df \ | |
| # --nocheck \ | |
| # --skippgpcheck; \ | |
| ls \ | |
| -lsh | |
| - name: | |
| Fix naming issue with architecture. | |
| run: | | |
| export \ | |
| _pkgname="$( \ | |
| _evmfs="false" \ | |
| _git_service="github" \ | |
| recipe-get \ | |
| "PKGBUILD" \ | |
| "pkgname")" \ | |
| _pkgver="$( \ | |
| _evmfs="false" \ | |
| _git_service="github" \ | |
| recipe-get \ | |
| "PKGBUILD" \ | |
| "pkgver")" \ | |
| _pkgrel="$( \ | |
| _evmfs="false" \ | |
| _git_service="github" \ | |
| recipe-get \ | |
| "PKGBUILD" \ | |
| "pkgrel")" && \ | |
| mv \ | |
| "${_pkgname}-${_pkgver}-${_pkgrel}-x86_64pkg.tar.xz" \ | |
| "${_pkgname}-${_pkgver}-${_pkgrel}-x86_64.pkg.tar.xz" || \ | |
| true | |
| # _evmfs="false" \ | |
| # _git_service="github" \ | |
| # reallymakepkg \ | |
| # -v \ | |
| # -w \ | |
| # "${HOME}/${_pkgbase}-build" \ | |
| # -u \ | |
| # -- \ | |
| # -df \ | |
| # --nocheck \ | |
| # --skippgpcheck | |
| find \ | |
| "${PWD}" \ | |
| -iname \ | |
| "*.pkg.tar.*" | |
| # - name: | |
| # Installs the package. | |
| # run: | | |
| # echo \ | |
| # "env position: $(command -v env)" | |
| # pacman \ | |
| # -Rdd \ | |
| # --noconfirm \ | |
| # fur || \ | |
| # true | |
| # pacman \ | |
| # -Rdd \ | |
| # --noconfirm \ | |
| # fur-docs || \ | |
| # true | |
| # pacman \ | |
| # -Udd \ | |
| # --noconfirm \ | |
| # --overwrite="*" \ | |
| # $(find \ | |
| # "${PWD}" \ | |
| # -iname \ | |
| # "*.pkg.tar.*") | |
| - name: | |
| version | |
| run: | | |
| echo \ | |
| "::set-output name=version::$( \ | |
| export \ | |
| _evmfs="false" && \ | |
| recipe-get \ | |
| "PKGBUILD" \ | |
| "pkgver")-$( \ | |
| export \ | |
| _evmfs="false" && \ | |
| recipe-get \ | |
| "PKGBUILD" \ | |
| "pkgrel")" | |
| id: | |
| version | |
| - name: | |
| Upload Windows package. | |
| uses: | |
| actions/upload-release-asset@v1 | |
| env: | |
| GITHUB_TOKEN: | |
| ${{ secrets.GITHUB_TOKEN }} | |
| with: | |
| upload_url: | |
| ${{ github.event.release.upload_url }} | |
| # ${{ steps.create_release.outputs.upload_url }} | |
| asset_path: | |
| "pacman-${{ steps.version.outputs.version }}-${{ matrix.arch }}.pkg.tar.xz" | |
| asset_name: | |
| "dogeos-windows-pacman-${{ steps.version.outputs.version }}-${{ matrix.arch }}.pkg.tar.xz" | |
| asset_content_type: | |
| application/gzip | |
| # This is the ideal way termux-docker would work with GHA. | |
| broken-ideal: | |
| if: | |
| false | |
| runs-on: | |
| ubuntu-latest | |
| container: | |
| termux/termux-docker:x86_64 | |
| steps: | |
| - name: | |
| setup | |
| run: | | |
| pkg \ | |
| install \ | |
| -y \ | |
| "ninja" \ | |
| "clang" \ | |
| /entrypoint.sh \ | |
| pip \ | |
| install \ | |
| "meson" | |
| /entrypoint.sh \ | |
| pip \ | |
| install \ | |
| "poetry" | |
| /entrypoint.sh \ | |
| pip \ | |
| install \ | |
| "build" | |
| /entrypoint.sh \ | |
| pip \ | |
| install \ | |
| "installer" | |
| /entrypoint.sh \ | |
| pip \ | |
| install \ | |
| "setuptools" | |
| - uses: | |
| actions/checkout@v3.3.0 | |
| - name: | |
| Builds the package. | |
| run: | |
| touch \ | |
| artifact | |
| - uses: | |
| actions/upload-artifact@v3.1.2 | |
| if: | |
| always() | |
| with: | |
| name: | |
| artifact | |
| path: | |
| artifact | |
| # github.event.release.upload_url |