77 lines
2.3 KiB
YAML
77 lines
2.3 KiB
YAML
name: Multi Distro Build
|
|
|
|
on: workflow_dispatch
|
|
|
|
jobs:
|
|
arch-build:
|
|
runs-on: ubuntu-latest
|
|
container: archlinux:latest
|
|
steps:
|
|
- name: Install node
|
|
run: pacman -Syu --noconfirm nodejs npm
|
|
- name: Checkout repository
|
|
uses: actions/checkout@v4
|
|
- name: Install dependencies
|
|
run: |
|
|
pacman -S --noconfirm git python python-pip binutils
|
|
mv /lib/python3*/EXTERNALLY-MANAGED /tmp/
|
|
pip install --upgrade pip
|
|
pip install pyinstaller inquirerpy distro
|
|
- name: Build binary
|
|
run: |
|
|
pyinstaller --onefile --add-data "data/:data/" setup.py
|
|
cp dist/setup arch-setup
|
|
shell: bash
|
|
- name: Upload binary
|
|
uses: actions/upload-artifact@v3
|
|
with:
|
|
name: arch-setup
|
|
path: arch-setup
|
|
|
|
debian-build:
|
|
runs-on: ubuntu-latest
|
|
container: debian:stable-slim
|
|
steps:
|
|
- name: Install node
|
|
run: apt-get update && apt-get upgrade -y && apt-get install -y nodejs npm
|
|
- name: Checkout repository
|
|
uses: actions/checkout@v4
|
|
- name: Install dependencies
|
|
run: |
|
|
apt-get install -y git python3 python3-pip binutils
|
|
mv /usr/lib/python*/EXTERNALLY-MANAGED . /tmp/
|
|
pip install pyinstaller inquirerpy distro
|
|
- name: Build binary
|
|
run: |
|
|
pyinstaller --onefile --add-data "data/:data/" setup.py
|
|
cp dist/setup debian-setup
|
|
shell: bash
|
|
- name: Upload binary
|
|
uses: actions/upload-artifact@v3
|
|
with:
|
|
name: debian-setup
|
|
path: debian-setup
|
|
|
|
fedora-build:
|
|
runs-on: ubuntu-latest
|
|
container: fedora:latest
|
|
steps:
|
|
- name: Install node
|
|
run: dnf up -y && dnf install -y nodejs npm
|
|
- name: Checkout repository
|
|
uses: actions/checkout@v4
|
|
- name: Install dependencies
|
|
run: |
|
|
dnf install -y git python python-pip binutils
|
|
pip install inquirerpy distro pyinstaller
|
|
- name: Build binary
|
|
run: |
|
|
pyinstaller --onefile --add-data "data/:data/" setup.py
|
|
cp dist/setup fedora-setup
|
|
shell: bash
|
|
- name: Upload binary
|
|
uses: actions/upload-artifact@v3
|
|
with:
|
|
name: fedora-setup
|
|
path: fedora-setup
|