diff --git a/pkgs/applications/audio/strawberry/default.nix b/pkgs/applications/audio/strawberry/default.nix new file mode 100644 index 000000000000..60da75d3c7ed --- /dev/null +++ b/pkgs/applications/audio/strawberry/default.nix @@ -0,0 +1,91 @@ +{ mkDerivation +, stdenv +, lib +, fetchFromGitHub +, cmake +, pkgconfig +, alsaLib +, boost +, chromaprint +, fftw +, gnutls +, libcdio +, libmtp +, libpthreadstubs +, libtasn1 +, libXdmcp +, pcre +, protobuf +, sqlite +, taglib +, libpulseaudio ? null +, libselinux ? null +, libsepol ? null +, p11_kit ? null +, utillinux ? null +, qtbase +, qtx11extras +, qttools +, withGstreamer ? true +, gst_all_1 ? null +, withVlc ? true +, vlc ? null +}: + +mkDerivation rec { + pname = "strawberry"; + version = "0.6.3"; + + src = fetchFromGitHub { + owner = "jonaski"; + repo = pname; + rev = version; + sha256 = "01j5jzzicy895kg9sjy46lbcm5kvf3642d3q5wwb2fyvyq1fbcv0"; + }; + + buildInputs = [ + alsaLib + boost + chromaprint + fftw + gnutls + libcdio + libmtp + libpthreadstubs + libtasn1 + libXdmcp + pcre + protobuf + sqlite + taglib + qtbase + qtx11extras + ] + ++ lib.optionals stdenv.isLinux [ + libpulseaudio + libselinux + libsepol + p11_kit + utillinux + ] + ++ lib.optionals withGstreamer (with gst_all_1; [ + gstreamer + gst-plugins-base + gst-plugins-good + ]) + ++ lib.optional withVlc vlc; + + nativeBuildInputs = [ cmake pkgconfig qttools ]; + + cmakeFlags = [ + "-DUSE_SYSTEM_TAGLIB=ON" + ]; + + meta = with lib; { + description = "Music player and music collection organizer"; + license = licenses.gpl2; + maintainers = with maintainers; [ peterhoeg ]; + # upstream says darwin should work but they lack maintainers as of 0.6.3 + platforms = platforms.linux; + }; +} diff --git a/pkgs/top-level/all-packages.nix b/pkgs/top-level/all-packages.nix index 04b813c61a44..cf515c0560e5 100644 --- a/pkgs/top-level/all-packages.nix +++ b/pkgs/top-level/all-packages.nix @@ -2821,6 +2821,8 @@ in sonobuoy = callPackage ../applications/networking/cluster/sonobuoy { }; + strawberry = libsForQt5.callPackage ../applications/audio/strawberry { }; + tealdeer = callPackage ../tools/misc/tealdeer { }; teamocil = callPackage ../tools/misc/teamocil { };