mirror of
https://github.com/cucumber-sp/yandex-music-linux.git
synced 2025-09-28 01:29:03 +03:00
Build Tarballs
This commit is contained in:
46
.github/workflows/build.sh
vendored
46
.github/workflows/build.sh
vendored
@@ -1,46 +0,0 @@
|
||||
#!/bin/bash
|
||||
|
||||
set -e
|
||||
|
||||
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
|
||||
"Arch Linux")
|
||||
echo "Arch Linux"
|
||||
pacman -Syy --noconfirm
|
||||
pacman -S --noconfirm git sudo base-devel p7zip nodejs jq asar electron27 libpulse dpkg unzip xdg-utils python
|
||||
# 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
|
||||
|
||||
mv ./src/app/yandex-music.asar dist/yandex-music.asar
|
||||
mv ./src/app/release_notes.json dist/release_notes.json
|
||||
|
||||
bash ./build_deb.sh -a all
|
||||
mv deb/*.deb dist
|
||||
;;
|
||||
"Ubuntu")
|
||||
echo NixOS
|
||||
export NIXPKGS_ALLOW_UNFREE=1
|
||||
nix build --impure
|
||||
;;
|
||||
*)
|
||||
echo "Operating system is not recognized."
|
||||
;;
|
||||
esac
|
30
.github/workflows/build.yml
vendored
30
.github/workflows/build.yml
vendored
@@ -21,20 +21,44 @@ jobs:
|
||||
container:
|
||||
image: archlinux:latest
|
||||
steps:
|
||||
- name: Install packages
|
||||
run: pacman -Syy --noconfirm && pacman -S --noconfirm git sudo base-devel p7zip nodejs jq asar electron27 libpulse dpkg unzip xdg-utils python
|
||||
|
||||
- name: Checkout
|
||||
uses: actions/checkout@v4
|
||||
with:
|
||||
ref: ${{ (inputs.ref || '') }}
|
||||
|
||||
- name: Build
|
||||
run: bash ./.github/workflows/build.sh
|
||||
- name: Create dist directory
|
||||
run: mkdir -p dist
|
||||
|
||||
- name: Upload Arch artifact
|
||||
- name: Fix permissions for build
|
||||
run: 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 .
|
||||
|
||||
- name: Make Arch package
|
||||
run: sudo -u nobody makepkg --log && mv *.pkg.tar.zst dist/
|
||||
|
||||
- name: Build tarball packages
|
||||
run: bash ./build_tarball.sh -a all && mv tar/* dist/
|
||||
|
||||
- name: Build Deb packages
|
||||
run: bash ./build_deb.sh -a all && mv deb/*.deb dist
|
||||
|
||||
- name: Retrieve Asar and release notes
|
||||
run: mv ./src/app/yandex-music.asar dist/yandex-music.asar && mv ./src/app/release_notes.json dist/release_notes.json
|
||||
|
||||
- name: Upload Arch artifacts
|
||||
uses: actions/upload-artifact@v4
|
||||
with:
|
||||
path: ./dist/*.pkg.tar.zst
|
||||
name: arch-packages
|
||||
|
||||
- name: Upload tarball artifacts
|
||||
uses: actions/upload-artifact@v4
|
||||
with:
|
||||
path: ./dist/*.tar.gz
|
||||
name: tar-packages
|
||||
|
||||
- name: Upload Deb artifact
|
||||
uses: actions/upload-artifact@v4
|
||||
with:
|
||||
|
Reference in New Issue
Block a user