0
0
mirror of https://github.com/cucumber-sp/yandex-music-linux.git synced 2024-12-25 06:44:38 +03:00
yandex-music-linux/.github/workflows/build.sh

51 lines
1.2 KiB
Bash
Raw Normal View History

2024-01-31 23:13:22 +03:00
#!/bin/bash
set -e
2024-01-31 23:13:22 +03:00
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 npm electron libpulse dpkg unzip
2024-01-31 23:13:22 +03:00
# 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
2024-01-31 23:13:22 +03:00
mkdir dist
mv *.pkg.tar.zst dist
2024-02-02 19:05:07 +03:00
mv ./src/app/yandexmusic.asar dist/yandexmusic.asar
sh ./build_deb.sh -a all
mv deb/*.deb dist
;;
"Ubuntu")
echo NixOS
export NIXPKGS_ALLOW_UNFREE=1
nix build --impure
2024-01-31 23:13:22 +03:00
;;
*)
echo "Operating system is not recognized."
;;
esac