1{
2 lib,
3 stdenv,
4 buildPythonPackage,
5 fetchPypi,
6 setuptools,
7 tkinter,
8 supercollider,
9}:
10
11buildPythonPackage rec {
12 pname = "foxdot";
13 version = "0.9.0";
14 pyproject = true;
15
16 src = fetchPypi {
17 inherit pname version;
18 hash = "sha256-9dIaqrGcYpZeWlRlymRvG9YnTRav0zktfmUpFBlN/7E=";
19 };
20
21 build-system = [ setuptools ];
22
23 dependencies = [
24 tkinter
25 ]
26 # we currently build SuperCollider only on Linux
27 # but FoxDot is totally usable on macOS with the official SuperCollider binary
28 ++ lib.optionals stdenv.hostPlatform.isLinux [ supercollider ];
29
30 # Requires a running SuperCollider instance
31 doCheck = false;
32
33 meta = with lib; {
34 description = "Live coding music with SuperCollider";
35 mainProgram = "FoxDot";
36 homepage = "https://foxdot.org/";
37 license = licenses.cc-by-sa-40;
38 maintainers = with maintainers; [ mrmebelman ];
39 };
40}