diff --git a/pkgs/applications/audio/musikcube/default.nix b/pkgs/applications/audio/musikcube/default.nix new file mode 100644 index 000000000000..0c076946b927 --- /dev/null +++ b/pkgs/applications/audio/musikcube/default.nix @@ -0,0 +1,56 @@ +{ cmake +, pkg-config +, alsaLib +, boost +, curl +, fetchFromGitHub +, ffmpeg +, lame +, libev +, libmicrohttpd +, ncurses +, pulseaudio +, stdenv +, taglib +, systemdSupport ? stdenv.isLinux, systemd +}: + +stdenv.mkDerivation rec { + pname = "musikcube"; + version = "0.90.1"; + + src = fetchFromGitHub { + owner = "clangen"; + repo = pname; + rev = version; + sha256 = "1ff2cgbllrl2pl5zfbf0cd9qbf6hqpwr395sa1k245ar4f1rfwpg"; + }; + + # https://github.com/clangen/musikcube/issues/339 + patches = [ ./dont-strip.patch ]; + + nativeBuildInputs = [ + cmake + pkg-config + ]; + buildInputs = [ + alsaLib + boost + curl + ffmpeg + lame + libev + libmicrohttpd + ncurses + pulseaudio + taglib + ] ++ stdenv.lib.optional systemdSupport systemd; + + meta = with stdenv.lib; { + description = "A fully functional terminal-based music player, library, and streaming audio server"; + homepage = "https://musikcube.com/"; + maintainers = [ maintainers.aanderse ]; + license = licenses.bsd3; + platforms = platforms.all; + }; +} diff --git a/pkgs/applications/audio/musikcube/dont-strip.patch b/pkgs/applications/audio/musikcube/dont-strip.patch new file mode 100644 index 000000000000..b7385dcddba9 --- /dev/null +++ b/pkgs/applications/audio/musikcube/dont-strip.patch @@ -0,0 +1,14 @@ +diff --git a/CMakeLists.txt b/CMakeLists.txt +index a3e02666..7c43c7e6 100644 +--- a/CMakeLists.txt ++++ b/CMakeLists.txt +@@ -370,9 +370,3 @@ endif() + # they don't yet exist! + add_custom_target(postbuild ALL DEPENDS musikcube musikcubed) + add_custom_command(TARGET postbuild POST_BUILD COMMAND cmake .) +- +-# strip binaries in release mode +-if (CMAKE_BUILD_TYPE MATCHES Release) +- message(STATUS "stripping binaries...") +- add_custom_command(TARGET postbuild POST_BUILD COMMAND "${CMAKE_SOURCE_DIR}/strip-nix.sh") +-endif() diff --git a/pkgs/top-level/all-packages.nix b/pkgs/top-level/all-packages.nix index d3fac637ca8d..55b8ab6a163b 100644 --- a/pkgs/top-level/all-packages.nix +++ b/pkgs/top-level/all-packages.nix @@ -20035,6 +20035,8 @@ in leftwm = callPackage ../applications/window-managers/leftwm { }; + musikcube = callPackage ../applications/audio/musikcube {}; + pinboard-notes-backup = haskell.lib.overrideCabal (haskell.lib.generateOptparseApplicativeCompletion "pnbackup" haskellPackages.pinboard-notes-backup)