From 56c0b0383268d7637f591aceef8836c9a71406f5 Mon Sep 17 00:00:00 2001 From: Andreas Wiese Date: Sun, 29 Aug 2021 23:00:06 +0200 Subject: [PATCH] navidrome-bin: init at 0.45.1 This is basically copied from nixpkgs-unstable's navidrome derivation but updated to current version. I'd prefer building this from source, but currently only manage to build the backend-only version without the web UI, as building both requires somehow building a node.js package inside a Go package. --- default.nix | 2 ++ flake.nix | 1 + pkgs/navidrome-bin/default.nix | 41 ++++++++++++++++++++++++++++++++++ 3 files changed, 44 insertions(+) create mode 100644 pkgs/navidrome-bin/default.nix diff --git a/default.nix b/default.nix index da125bd..29ff595 100644 --- a/default.nix +++ b/default.nix @@ -16,6 +16,8 @@ in rec { chrysalis-bin = callPackage ./pkgs/chrysalis-bin { }; + navidrome-bin = callPackage ./pkgs/navidrome-bin { }; + ryzenadj = callPackage ./pkgs/ryzenadj { }; ryzen_smu = callPackage ./pkgs/ryzen_smu { kernel = pkgs.linux; }; diff --git a/flake.nix b/flake.nix index 0de7308..b218481 100644 --- a/flake.nix +++ b/flake.nix @@ -38,6 +38,7 @@ } // prev.lib.optionalAttrs (prev.system == "x86_64-linux") { inherit (localPkgs) chrysalis-bin + navidrome-bin ryzenadj ryzen_smu ; diff --git a/pkgs/navidrome-bin/default.nix b/pkgs/navidrome-bin/default.nix new file mode 100644 index 0000000..f78f100 --- /dev/null +++ b/pkgs/navidrome-bin/default.nix @@ -0,0 +1,41 @@ +{ lib, stdenv, fetchurl, ffmpeg, ffmpegSupport ? true, makeWrapper }: + +with lib; + +stdenv.mkDerivation rec { + pname = "navidrome"; + version = "0.45.1"; + + src = fetchurl { + url = "https://github.com/deluan/navidrome/releases/download/v${version}/navidrome_${version}_Linux_x86_64.tar.gz"; + sha256 = "sha256-TZcXq51sKoeLPmcRpv4VILDmS6dsS7lxlJzTDH0tEWM="; + }; + + nativeBuildInputs = [ makeWrapper ]; + + unpackPhase = '' + tar xvf $src navidrome + ''; + + installPhase = '' + runHook preInstall + + mkdir -p $out/bin + cp navidrome $out/bin + + runHook postInstall + ''; + + postFixup = '' + wrapProgram $out/bin/navidrome \ + --prefix PATH : ${makeBinPath (optional ffmpegSupport ffmpeg)} + ''; + + meta = { + description = "Navidrome Music Server and Streamer compatible with Subsonic/Airsonic"; + homepage = "https://www.navidrome.org/"; + license = licenses.gpl3Only; + platforms = [ "x86_64-linux" ]; + maintainers = with maintainers; [ aciceri ]; + }; +}