0
0
mirror of https://github.com/cucumber-sp/yandex-music-linux.git synced 2024-12-23 22:22:59 +03:00
This commit is contained in:
Maxim Slipenko 2024-01-31 23:13:22 +03:00
parent 639fe0a0cf
commit b235da76bd
3 changed files with 83 additions and 0 deletions

51
.github/workflows/build.sh vendored Executable file
View File

@ -0,0 +1,51 @@
#!/bin/bash
if [ -f /etc/os-release ]; then
. /etc/os-release
OS=$NAME
elif [ -f /etc/lsb-release ]; then
. /etc/lsb-release
OS=$DISTRIB_ID
else
OS=$(uname -s)
fi
case $OS in
"Ubuntu")
echo Ubuntu
apt-get update
apt-get install -y jq curl p7zip-full nodejs npm unzip
npm install -g @electron/asar
./build_deb.sh
mkdir dist
mv deb/*.deb dist
;;
"Arch Linux")
echo "Arch Linux"
pacman -Syy --noconfirm
pacman -S --noconfirm git sudo base-devel p7zip nodejs jq npm electron libpulse
# fix access
mkdir /.npm
chown -R 65534:65534 "/.npm"
# fix "asar: command not found"
npm install -g @electron/asar
# fix makepkg from non-root
mkdir /home/build
chgrp nobody /home/build
chmod g+ws /home/build
setfacl -m u::rwx,g::rwx /home/build
setfacl -d --set u::rwx,g::rwx,o::- /home/build
chown nobody .
sudo -u nobody makepkg --log
mkdir dist
mv *.pkg.tar.zst dist
;;
"NixOS")
# TODO
;;
*)
echo "Operating system is not recognized."
;;
esac

32
.github/workflows/build.yml vendored Normal file
View File

@ -0,0 +1,32 @@
name: Build
on:
pull_request:
branches:
- '*'
push:
branches:
- 'main'
jobs:
build:
strategy:
matrix:
container:
- ubuntu:22.04
- archlinux:latest
runs-on: ubuntu-latest
container:
image: ${{ matrix.container }}
steps:
- name: Checkout
uses: actions/checkout@v4
- name: Build
run: ./.github/workflows/build.sh
- name: Upload artifact
uses: actions/upload-artifact@v4
with:
path: ./dist/*

0
build_deb.sh Normal file → Executable file
View File