1 { lib, fetchFromGitHub, python3Packages, wrapQtAppsHook }:
3 python3Packages.buildPythonApplication rec {
7 src = fetchFromGitHub {
11 sha256 = "sha256-xKgyBV/Qc+9PgXyxcT0xG1GXLC6KnjavJ/0SUE+9VSY=";
14 nativeBuildInputs = (with python3Packages; [ numpy cython scipy ]) ++
17 propagatedBuildInputs = with python3Packages; [
30 # Remove version constraints from Python dependencies in setup.py
31 sed -i -E "s/\"([A-Za-z0-9]+)(=|>|<)=[0-9\.]+\"/\"\1\"/g" setup.py
35 makeWrapperArgs+=("''${qtWrapperArgs[@]}")
39 substituteInPlace $out/share/applications/friture.desktop --replace usr/bin/friture friture
41 for size in 16 32 128 256 512
43 mkdir -p $out/share/icons/hicolor/$size\x$size
44 cp $src/resources/images/friture.iconset/icon_$size\x$size.png $out/share/icons/hicolor/$size\x$size/friture.png
46 mkdir -p $out/share/icons/hicolor/scalable/apps/
47 cp $src/resources/images-src/window-icon.svg $out/share/icons/hicolor/scalable/apps/friture.svg
51 description = "A real-time audio analyzer";
52 mainProgram = "friture";
53 homepage = "https://friture.org/";
54 license = licenses.gpl3;
55 platforms = platforms.linux; # fails on Darwin
56 maintainers = with maintainers; [ laikq alyaeanyx ];