diff options
Diffstat (limited to 'nixpkgs/pkgs/applications/audio/espeak/edit.nix')
-rw-r--r-- | nixpkgs/pkgs/applications/audio/espeak/edit.nix | 60 |
1 files changed, 60 insertions, 0 deletions
diff --git a/nixpkgs/pkgs/applications/audio/espeak/edit.nix b/nixpkgs/pkgs/applications/audio/espeak/edit.nix new file mode 100644 index 000000000000..0b9fa3dfbe54 --- /dev/null +++ b/nixpkgs/pkgs/applications/audio/espeak/edit.nix @@ -0,0 +1,60 @@ +{ lib, stdenv, fetchurl, pkg-config, unzip, portaudio, wxGTK, sox }: + +stdenv.mkDerivation rec { + name = "espeakedit-1.48.03"; + + src = fetchurl { + url = "mirror://sourceforge/espeak/${name}.zip"; + sha256 = "0x8s7vpb7rw5x37yjzy1f98m4f2csdg89libb74fm36gn8ly0hli"; + }; + + nativeBuildInputs = [ pkg-config unzip ]; + buildInputs = [ portaudio wxGTK ]; + + # TODO: + # Uhm, seems like espeakedit still wants espeak-data/ in $HOME, even thought + # it should use $espeak/share/espeak-data. Have to contact upstream to get + # this fixed. + # + # Workaround: + # cp -r $(nix-build -A espeak)/share/espeak-data ~ + # chmod +w ~/espeak-data + + patches = [ + ./gcc6.patch + ./espeakedit-fix-makefile.patch + ./espeakedit-configurable-sox-path.patch + ./espeakedit-configurable-path-espeak-data.patch + ./espeakedit-gcc6.patch + ]; + + postPatch = '' + # Disable -Wall flag because it's noisy + sed -i "s/-Wall//g" src/Makefile + + # Fixup paths (file names from above espeak-configurable* patches) + for file in src/compiledata.cpp src/readclause.cpp src/speech.h; do + sed -e "s|@sox@|${sox}/bin/sox|" \ + -e "s|@prefix@|$out|" \ + -i "$file" + done + '' + lib.optionalString (portaudio.api_version == 19) '' + cp src/portaudio19.h src/portaudio.h + ''; + + buildPhase = '' + make -C src + ''; + + installPhase = '' + mkdir -p "$out/bin" + cp src/espeakedit "$out/bin" + ''; + + meta = with lib; { + description = "Phoneme editor for espeak"; + homepage = "http://espeak.sourceforge.net/"; + license = licenses.gpl3Plus; + platforms = platforms.linux; + }; +} |