diff --git a/pkgs/applications/audio/youtube-music/default.nix b/pkgs/applications/audio/youtube-music/default.nix new file mode 100644 index 000000000000..ac28733c81bc --- /dev/null +++ b/pkgs/applications/audio/youtube-music/default.nix @@ -0,0 +1,36 @@ +{ lib, fetchurl, appimageTools, }: + +let + pname = "youtube-music"; + version = "1.17.0"; + + src = fetchurl { + url = "https://github.com/th-ch/youtube-music/releases/download/v${version}/YouTube-Music-${version}.AppImage"; + sha256 = "sha256-3QNmCek6UD0WNaqalIksYWLHGfMgetLRLi8mEM1J39I="; + }; + + appimageContents = appimageTools.extract { inherit pname version src; }; +in +appimageTools.wrapType2 rec { + inherit pname version src; + + extraInstallCommands = '' + mv $out/bin/{${pname}-${version},${pname}} + install -m 444 \ + -D ${appimageContents}/youtube-music.desktop \ + -t $out/share/applications + substituteInPlace \ + $out/share/applications/youtube-music.desktop \ + --replace 'Exec=AppRun' 'Exec=${pname}' + cp -r ${appimageContents}/usr/share/icons $out/share + ''; + + meta = with lib; { + description = "Electron wrapper around YouTube Music"; + homepage = "https://th-ch.github.io/youtube-music/"; + license = licenses.mit; + sourceProvenance = with sourceTypes; [ fromSource ]; + platforms = platforms.linux; + maintainers = [ maintainers.aacebedo ]; + }; +} diff --git a/pkgs/top-level/all-packages.nix b/pkgs/top-level/all-packages.nix index ed862d2d99a1..2a925f653290 100644 --- a/pkgs/top-level/all-packages.nix +++ b/pkgs/top-level/all-packages.nix @@ -33224,6 +33224,8 @@ with pkgs; youtube-dl-light = with python3Packages; toPythonApplication youtube-dl-light; + youtube-music = callPackage ../applications/audio/youtube-music { }; + yt-dlp = with python3Packages; toPythonApplication yt-dlp; yt-dlp-light = with python3Packages; toPythonApplication yt-dlp-light;