|
|
|
@ -1,20 +1,26 @@ |
|
|
|
|
{ lib, stdenv, fetchurl, ffmpeg, ffmpegSupport ? true, makeWrapper }: |
|
|
|
|
{ lib, stdenv, pkgs, fetchurl, ffmpeg, ffmpegSupport ? true, makeWrapper, nixosTests }: |
|
|
|
|
|
|
|
|
|
with lib; |
|
|
|
|
|
|
|
|
|
stdenv.mkDerivation rec { |
|
|
|
|
pname = "navidrome"; |
|
|
|
|
version = "0.45.1"; |
|
|
|
|
pname = "navidrome-bin"; |
|
|
|
|
version = "0.46.0"; |
|
|
|
|
|
|
|
|
|
src = fetchurl { |
|
|
|
|
url = "https://github.com/deluan/navidrome/releases/download/v${version}/navidrome_${version}_Linux_x86_64.tar.gz"; |
|
|
|
|
sha256 = "sha256-TZcXq51sKoeLPmcRpv4VILDmS6dsS7lxlJzTDH0tEWM="; |
|
|
|
|
}; |
|
|
|
|
|
|
|
|
|
src = fetchurl (if pkgs.system == "x86_64-linux" |
|
|
|
|
then { |
|
|
|
|
url = "https://github.com/navidrome/navidrome/releases/download/v${version}/navidrome_${version}_Linux_x86_64.tar.gz"; |
|
|
|
|
sha256 = "sha256-baBSQZnlcC5zq7wKWbia8xEMqZuCgkn/zyQWwtfHn/w="; |
|
|
|
|
} |
|
|
|
|
else { |
|
|
|
|
url = "https://github.com/navidrome/navidrome/releases/download/v${version}/navidrome_${version}_Linux_arm64.tar.gz"; |
|
|
|
|
sha256 = "sha256-Km58BMc2ngv6CLqXkNpDIxC+nFb/fbvz7iBF0/xNcsU="; |
|
|
|
|
}); |
|
|
|
|
|
|
|
|
|
nativeBuildInputs = [ makeWrapper ]; |
|
|
|
|
|
|
|
|
|
unpackPhase = '' |
|
|
|
|
tar xvf $src navidrome |
|
|
|
|
tar xvf $src navidrome |
|
|
|
|
''; |
|
|
|
|
|
|
|
|
|
installPhase = '' |
|
|
|
@ -31,11 +37,13 @@ stdenv.mkDerivation rec { |
|
|
|
|
--prefix PATH : ${makeBinPath (optional ffmpegSupport ffmpeg)} |
|
|
|
|
''; |
|
|
|
|
|
|
|
|
|
passthru.tests.navidrome = nixosTests.navidrome; |
|
|
|
|
|
|
|
|
|
meta = { |
|
|
|
|
description = "Navidrome Music Server and Streamer compatible with Subsonic/Airsonic"; |
|
|
|
|
homepage = "https://www.navidrome.org/"; |
|
|
|
|
license = licenses.gpl3Only; |
|
|
|
|
platforms = [ "x86_64-linux" ]; |
|
|
|
|
platforms = [ "x86_64-linux" "aarch64-linux" ]; |
|
|
|
|
maintainers = with maintainers; [ aciceri ]; |
|
|
|
|
}; |
|
|
|
|
} |
|
|
|
|