1{
2 lib,
3 stdenv,
4 fetchFromGitHub,
5 cmake,
6 libGL,
7 xorg,
8}:
9
10stdenv.mkDerivation (finalAttrs: {
11 pname = "libprojectm";
12 version = "4.1.4";
13
14 src = fetchFromGitHub {
15 owner = "projectM-visualizer";
16 repo = "projectm";
17 tag = "v${finalAttrs.version}";
18 hash = "sha256-gf1k9iSDARp6/M2/Po1wdOEY6y/QG2nq5uhSFU6bxAM=";
19 fetchSubmodules = true;
20 };
21
22 nativeBuildInputs = [
23 cmake
24 ];
25
26 buildInputs = [
27 libGL
28 xorg.libX11
29 ];
30
31 strictDeps = true;
32
33 meta = {
34 description = "Cross-platform Milkdrop-compatible Music Visualization Library";
35 homepage = "https://github.com/projectM-visualizer/projectm";
36 license = lib.licenses.lgpl21Plus;
37 maintainers = with lib.maintainers; [ fgaz ];
38 platforms = lib.platforms.all;
39 longDescription = ''
40 The open-source project that reimplements the esteemed Winamp Milkdrop by
41 Geiss in a more modern, cross-platform reusable library.
42 Read an audio input and produces mesmerizing visuals, detecting tempo, and
43 rendering advanced equations into a limitless array of user-contributed visualizations.
44 '';
45 };
46})