0
0
mirror of https://github.com/cucumber-sp/yandex-music-linux.git synced 2024-12-23 22:22:59 +03:00
Repacked Electron client of Yandex Music for Linux
Go to file
2024-02-18 19:35:55 +00:00
.github/workflows Switch generate_packages to Python 2024-02-18 22:34:35 +03:00
nix version_info format change 2024-02-18 21:00:32 +03:00
patches Patching fix 2024-02-14 14:16:35 +03:00
templates Use electron 27 version for arch (fix render issues) 2024-02-18 18:56:22 +03:00
utility Update packages to Beta 5.0.11 2024-02-18 19:35:55 +00:00
.gitignore Deb packages build script 2024-01-31 16:47:17 +03:00
build_deb.sh version_info format change 2024-02-18 21:00:32 +03:00
flake.lock Update packages to Beta 5.0.11 2024-02-17 00:32:12 +00:00
flake.nix Update packages to Beta 5.0.11 2024-02-17 00:32:12 +00:00
LICENSE.md Swtiched to .asar + PKGBUILD generation 2024-01-29 21:41:52 +03:00
PKGBUILD Use electron 27 version for arch (fix render issues) 2024-02-18 18:56:22 +03:00
README.md Rename to yandex-music 2024-02-14 14:07:10 +03:00
repack.sh Rename to yandex-music 2024-02-14 14:07:10 +03:00

yandex-music-linux

About

Native YandexMusic client for Linux. Built using repacking of Windows client (Electron app).

Table of content

Screenshots

image image

Installation

Arch Linux


AUR

You can obtain the latest version of package from AUR using one of the AUR Helpers. Then install it with yandex-music as package name.

For this example I will use yay

yay -S yandex-music

Binary package file

Download prebuilt binary package from Releases section.

Then you can install it with the following command

pacman -U yandex-music-<version>-any.pkg.tar.zst

Debian/Ubuntu


APT

Package is currently unavailable at APT. We're still working on it

Binary package file

Download prebuilt binary package from Releases section.

Then you can install it with the following command

dpkg -i yandex-music_<version>_<arch>.deb

Manual Build

Prerequisites

That's the list of packages you might need to install to be able to manually build the app. However, you should remember that it might be different for your distro/machine.

- nodejs
- npm
- jq
- 7z (p7zip)
- unzip
- python

In addition you will need to install Asar tool with npm. I recommend install it globally with the following command

npm install -g @electron/asar

Last step is to download original client .exe file. You can get it yourself or take link to the latest version from ./utility/version_info.json file.


Extract app only

If you only want to get extracted app project with applied patches, you can use the following command:

sh repack.sh -x [-o OUTPUT_DIR default=./app] <YM.exe>

ASAR archive

.asar is archive file that containes all electron app resources and information, but doesn't hold Electron binaries. If you have .asar file you can launch app using electron <app>.asar. You can build this archive with the following command:

sh repack.sh [-o OUTPUT_DIR default=./app] <YM.exe>

Arch Linux

You can build pacman package file manually using PKGBUILD file from the this repository. Run following commands in folder with PKGBUILD file inside to get .pkg.tar.zst package:

pacman -S electron libpulse
makepkg

Debian/Ubuntu

You can build .deb binary package using the following command:

sh build_deb.sh  [-a <x64|armv7l|arm64|all> default=x64]

Run with nix

The yandex-music package has unlicensed license, so you need to have allowUnfree option enabled.

Run with flakes

Execute next to build and run yandex music directly from github

nix run github:cucumber-sp/yandex-music-linux

Run old style

Execute next in this repository to build yandex-music package without using flakes.

nix-build --expr '(import <nixpkgs> {}).callPackage ./nix {}'

Install to NixOS

This flake exports modules list. Append it to your system modules and add yandex-music package to environment.systemPackages.