nixpkgs/pkgs/applications/audio/sfxr-qt/default.nix

Ignoring revisions in .git-blame-ignore-revs. Click here to bypass and see the normal blame view.

67 lines
1.4 KiB
Nix
Raw Normal View History

{ lib
, mkDerivation
, fetchFromGitHub
2022-03-20 18:30:49 +00:00
, fetchpatch
2018-10-30 11:56:57 +00:00
, cmake
, extra-cmake-modules
, qtbase
, qtquickcontrols2
2018-10-30 11:56:57 +00:00
, SDL
, python3
, catch2
2022-01-15 18:27:51 +00:00
, callPackage
2022-03-20 21:39:04 +00:00
, nixosTests
2018-10-30 11:56:57 +00:00
}:
mkDerivation rec {
pname = "sfxr-qt";
2022-03-20 18:30:49 +00:00
version = "1.5.0";
2018-10-30 11:56:57 +00:00
src = fetchFromGitHub {
owner = "agateau";
repo = "sfxr-qt";
rev = version;
2022-03-20 18:30:49 +00:00
sha256 = "sha256-Ce5NJe1f+C4pPmtenHYvtkxste+nPuxJoB+N7K2nyRo=";
2018-10-30 11:56:57 +00:00
fetchSubmodules = true;
};
postPatch = ''
cp ${catch2}/include/catch2/catch.hpp 3rdparty/catch2/single_include/catch2/catch.hpp
'';
2022-03-20 18:30:49 +00:00
# Remove on next release
patches = [(fetchpatch {
name = "sfxr-qr-missing-qpainterpath-include";
url = "https://github.com/agateau/sfxr-qt/commit/ef051f473654052112b647df987eb263e38faf47.patch";
sha256 = "sha256-bqMnxHUzdS5oG/2hfr5MvkpwrtZW+GTN5fS2WpV2W2c=";
})];
2018-10-30 11:56:57 +00:00
nativeBuildInputs = [
cmake
extra-cmake-modules
(python3.withPackages (pp: with pp; [ pyyaml jinja2 setuptools ]))
2018-10-30 11:56:57 +00:00
];
2018-10-30 11:56:57 +00:00
buildInputs = [
qtbase
qtquickcontrols2
2018-10-30 11:56:57 +00:00
SDL
];
doCheck = true;
2022-01-15 18:27:51 +00:00
passthru.tests = {
export-square-wave = callPackage ./test-export-square-wave {};
2022-03-20 21:39:04 +00:00
sfxr-qt-starts = nixosTests.sfxr-qt;
2022-01-15 18:27:51 +00:00
};
meta = with lib; {
2020-03-15 14:01:22 +00:00
homepage = "https://github.com/agateau/sfxr-qt";
2018-10-30 11:56:57 +00:00
description = "A sound effect generator, QtQuick port of sfxr";
mainProgram = "sfxr-qt";
2018-10-30 11:56:57 +00:00
license = licenses.gpl2;
maintainers = with maintainers; [ fgaz ];
platforms = platforms.linux;
};
}