push sheeet
Some checks failed
Periodic Merges (6h) / master → staging-nixos (push) Failing after 12m50s
Periodic Merges (6h) / master → staging-next (push) Failing after 12m54s
Periodic Merges (24h) / merge-base(master,staging) → haskell-updates (push) Failing after 11m54s
Periodic Merges (6h) / staging-next → staging (push) Failing after 12m13s
Periodic Merges (24h) / staging-next-25.05 → staging-25.05 (push) Failing after 13m24s
Periodic Merges (24h) / release-25.05 → staging-next-25.05 (push) Failing after 14m28s

This commit is contained in:
Dark Steveneq
2025-10-09 14:15:47 +02:00
commit 646b892680
49168 changed files with 5897842 additions and 0 deletions

142
pkgs/by-name/tt/tt-metal/deps.nix generated Normal file
View File

@@ -0,0 +1,142 @@
{ fetchFromGitHub }:
{
yaml-cpp = fetchFromGitHub {
owner = "jbeder";
repo = "yaml-cpp";
tag = "0.8.0";
hash = "sha256-J87oS6Az1/vNdyXu3L7KmUGWzU0IAkGrGMUUha+xDXI=";
};
googletest = fetchFromGitHub {
owner = "google";
repo = "googletest";
tag = "v1.13.0";
hash = "sha256-LVLEn+e7c8013pwiLzJiiIObyrlbBHYaioO/SWbItPQ=";
};
reflect = fetchFromGitHub {
owner = "boost-ext";
repo = "reflect";
tag = "v1.2.6";
hash = "sha256-qjy5KyAm7/WeCyxMu/5QrBVjDSJPs0q/ZPyQwXp0WLA=";
};
fmt = fetchFromGitHub {
owner = "fmtlib";
repo = "fmt";
tag = "11.1.4";
hash = "sha256-sUbxlYi/Aupaox3JjWFqXIjcaQa0LFjclQAOleT+FRA=";
};
enchantum = fetchFromGitHub {
owner = "ZXShady";
repo = "enchantum";
rev = "8ca5b0eb7e7ebe0252e5bc6915083f1dd1b8294e";
hash = "sha256-q2bbNAMpNJYedekEDtTQ2qI2+GPdkTsuxAHCBaAnuTA=";
};
range-v3 = fetchFromGitHub {
owner = "ericniebler";
repo = "range-v3";
tag = "0.12.0";
hash = "sha256-bRSX91+ROqG1C3nB9HSQaKgLzOHEFy9mrD2WW3PRBWU=";
};
pybind11 = fetchFromGitHub {
owner = "pybind";
repo = "pybind11";
tag = "v2.13.6";
hash = "sha256-SNLdtrOjaC3lGHN9MAqTf51U9EzNKQLyTMNPe0GcdrU=";
};
nlohmann_json = fetchFromGitHub {
owner = "nlohmann";
repo = "json";
tag = "v3.11.3";
hash = "sha256-7F0Jon+1oWL7uqet5i1IgHX0fUw/+z0QwEcA3zs5xHg=";
};
xtl = fetchFromGitHub {
owner = "xtensor-stack";
repo = "xtl";
tag = "0.8.0";
hash = "sha256-hhXM2fG3Yl4KeEJlOAcNPVLJjKy9vFlI63lhbmIAsT8=";
};
xtensor = fetchFromGitHub {
owner = "xtensor-stack";
repo = "xtensor";
tag = "0.26.0";
hash = "sha256-gAGLb5NPT4jiIpXONqY+kalxKCFKFXlNqbM79x1lTKE=";
};
xtensor-blas = fetchFromGitHub {
owner = "xtensor-stack";
repo = "xtensor-blas";
tag = "0.22.0";
hash = "sha256-Lg6MjJbZUCMqv4eSiZQrLfJy/86RWQ9P85UfeIQJ6bk=";
};
benchmark = fetchFromGitHub {
owner = "google";
repo = "benchmark";
tag = "v1.9.1";
hash = "sha256-5xDg1duixLoWIuy59WT0r5ZBAvTR6RPP7YrhBYkMxc8=";
};
taskflow = fetchFromGitHub {
owner = "taskflow";
repo = "taskflow";
tag = "v3.7.0";
hash = "sha256-q2IYhG84hPIZhuogWf6ojDG9S9ZyuJz9s14kQyIc6t0=";
};
simd-everywhere = fetchFromGitHub {
owner = "simd-everywhere";
repo = "simde";
tag = "v0.8.2";
hash = "sha256-igjDHCpKXy6EbA9Mf6peL4OTVRPYTV0Y2jbgYQuWMT4=";
};
msgpack = fetchFromGitHub {
owner = "msgpack";
repo = "msgpack-c";
tag = "cpp-6.1.0";
hash = "sha256-VqzFmm3MmMhWyooOsz1d9gwwbn/fnnxpkCFwqKR6los=";
};
tokenizers-cpp = fetchFromGitHub {
owner = "mlc-ai";
repo = "tokenizers-cpp";
rev = "55d53aa38dc8df7d9c8bd9ed50907e82ae83ce66";
hash = "sha256-CkW8S6LHHOY+tz3hHoWBzwGb3f25LFp41F/jH4pdKI4=";
};
spdlog = fetchFromGitHub {
owner = "gabime";
repo = "spdlog";
tag = "v1.15.2";
hash = "sha256-9RhB4GdFjZbCIfMOWWriLAUf9DE/i/+FTXczr0pD0Vg=";
};
tt-logger = fetchFromGitHub {
owner = "tenstorrent";
repo = "tt-logger";
tag = "v1.1.5";
hash = "sha256-lw8L4pCAGObCkiuF/JFC9PmcQgwmJZOOo1cbaUMvo+I=";
};
nanomsg = fetchFromGitHub {
owner = "nanomsg";
repo = "nng";
tag = "v1.8.0";
hash = "sha256-E2uosZrmxO3fqwlLuu5e36P70iGj5xUlvhEb+1aSvOA=";
};
flatbuffers = fetchFromGitHub {
owner = "google";
repo = "flatbuffers";
tag = "v24.3.25";
hash = "sha256-uE9CQnhzVgOweYLhWPn2hvzXHyBbFiFVESJ1AEM3BmA=";
};
libuv = fetchFromGitHub {
owner = "libuv";
repo = "libuv";
tag = "v1.48.0";
hash = "sha256-U68BmIQNpmIy3prS7LkYl+wvDJQNikoeFiKh50yQFoA=";
};
cxxopts = fetchFromGitHub {
owner = "jarro2783";
repo = "cxxopts";
rev = "dbf4c6a66816f6c3872b46cc6af119ad227e04e1";
hash = "sha256-2Z8DT9ihlmbiqCi8gcNzW4C5AUh4xCrpCKrGbRYcreQ=";
};
nanobind = fetchFromGitHub {
owner = "wjakob";
repo = "nanobind";
tag = "v2.7.0";
fetchSubmodules = true;
hash = "sha256-ex5svqDp9XJtiNCxu0249ORL6LbG679U6PvKQaWANmE=";
};
}

View File

@@ -0,0 +1,96 @@
{
lib,
stdenv,
fetchFromGitHub,
fetchurl,
callPackage,
pkg-config,
cmake,
ninja,
boost,
numactl,
mpi,
hwloc,
python3,
}:
stdenv.mkDerivation (finalAttrs: {
pname = "tt-metal";
version = "0.62.2";
src = fetchFromGitHub {
owner = "tenstorrent";
repo = "tt-metal";
tag = "v${finalAttrs.version}";
fetchSubmodules = true;
hash = "sha256-ZIUjZLifRVmpWpG8Ty+I+pwgpIf5r9gJkI8ULTau4OE=";
};
cpm = fetchurl {
url = "https://github.com/cpm-cmake/CPM.cmake/releases/download/v0.40.2/CPM.cmake";
hash = "sha256-yM3DLAOBZTjOInge1ylk3IZLKjSjENO3EEgSpcotg10=";
};
sfpi = callPackage ./sfpi.nix { };
postUnpack = ''
mkdir -p "$sourceRoot/runtime"
ln -s "$sfpi" "$sourceRoot/runtime/sfpi"
'';
postPatch = ''
cp $cpm cmake/CPM.cmake
cp $cpm tt_metal/third_party/umd/cmake/CPM.cmake
'';
cmakeFlags = [
(lib.cmakeBool "FETCHCONTENT_FULLY_DISCONNECTED" true)
(lib.cmakeBool "CPM_USE_LOCAL_PACKAGES" true)
(lib.cmakeFeature "VERSION_NUMERIC" finalAttrs.version)
];
preConfigure = ''
mkdir -p build/_deps
${lib.concatMapAttrsStringSep "\n"
(name: src: "cp -r --no-preserve=ownership,mode ${src} build/_deps/${name}-src")
(
import ./deps.nix {
inherit fetchFromGitHub;
}
)
}
cp $cpm build/_deps/tt-logger-src/cmake/CPM.cmake
'';
# CMake install fails because "$out/include/tt-logger" tree does not exist.
preInstall = ''
mkdir -p $out/include
cp -r ../build/_deps/tt-logger-src/include/tt-logger $out/include/tt-logger
'';
enableParallelBuilding = true;
nativeBuildInputs = [
cmake
ninja
pkg-config
python3
];
buildInputs = [
numactl
boost
mpi
hwloc
];
# Fixes the parallel hook crashing in the fixupPhase with no error.
noAuditTmpdir = true;
meta = {
description = "TT-NN operator library, and TT-Metalium low level kernel programming model";
homepage = "https://github.com/tenstorrent/tt-metal";
maintainers = with lib.maintainers; [ RossComputerGuy ];
license = with lib.licenses; [ asl20 ];
platforms = lib.platforms.linux;
};
})

View File

@@ -0,0 +1,49 @@
{
lib,
stdenv,
fetchurl,
runCommand,
autoPatchelfHook,
ncurses,
isl_0_23,
mpfr,
libmpc,
xz,
}:
let
version = "7.1.0";
in
runCommand "sfpi-${version}"
{
inherit version;
nativeBuildInputs = [
autoPatchelfHook
];
buildInputs = [
ncurses
isl_0_23
mpfr
libmpc
xz
];
src =
{
aarch64-linux = fetchurl {
url = "https://github.com/tenstorrent/sfpi/releases/download/v${version}/sfpi_${version}_aarch64.txz";
hash = "sha256-MzI159hiitk1iyeGfQaDOQZhqGjfafpCMz6zmM3HrYs=";
};
x86_64-linux = fetchurl {
url = "https://github.com/tenstorrent/sfpi/releases/download/v${version}/sfpi_${version}_x86_64.txz";
hash = "sha256-rQfFveg1ht+jLfk3ZOJadX26+ODE3WW5E0/18eIl7RQ=";
};
}
."${stdenv.hostPlatform.system}" or (throw "SFPI does not support ${stdenv.hostPlatform.system}");
}
''
runPhase unpackPhase
cp -r ../"$sourceRoot" "$out"
runPhase fixupPhase
''

View File

@@ -0,0 +1,35 @@
{
lib,
fetchFromGitHub,
buildGoModule,
installShellFiles,
}:
buildGoModule rec {
pname = "tt";
version = "0.4.2";
src = fetchFromGitHub {
owner = "lemnos";
repo = "tt";
rev = "v${version}";
hash = "sha256-vKh19xYBeNqvVFilvA7NeQ34RM5VnwDs+Hu/pe3J0y4=";
};
vendorHash = "sha256-edY2CcZXOIed0+7IA8kr4lAfuSJx/nHtmc734XzT4z4=";
nativeBuildInputs = [ installShellFiles ];
postInstall = ''
mv $out/bin/src $out/bin/tt
installManPage tt.1.gz
'';
meta = {
description = "Typing test in the terminal written in Go";
homepage = "https://github.com/lemnos/tt";
license = lib.licenses.mit;
mainProgram = "tt";
maintainers = with lib.maintainers; [ vinetos ];
};
}

View File

@@ -0,0 +1,34 @@
{
lib,
stdenvNoCC,
fetchFromGitHub,
}:
stdenvNoCC.mkDerivation rec {
pname = "TT2020";
version = "0.2.1";
src = fetchFromGitHub {
owner = "ctrlcctrlv";
repo = "TT2020";
rev = "v${version}";
hash = "sha256-eAJzaookHcQ/7QNq/HUKA/O2liyKynJNdo6QuZ1Bv6k=";
};
installPhase = ''
runHook preInstall
install -Dm644 -t $out/share/fonts/truetype dist/*.ttf
install -Dm644 -t $out/share/fonts/woff2 dist/*.woff2
runHook postInstall
'';
meta = with lib; {
description = "Advanced, open source, hyperrealistic, multilingual typewriter font for a new decade";
homepage = "https://ctrlcctrlv.github.io/TT2020";
license = licenses.ofl;
maintainers = with maintainers; [ sikmir ];
platforms = platforms.all;
};
}

View File

@@ -0,0 +1,15 @@
--- a/Makefile
+++ b/Makefile
@@ -8,10 +8,10 @@
INSDIR = /usr/bin
ttaenc: $(patsubst %.c, %.o, $(wildcard *.c))
- gcc $^ -o $@ $(CFLAGS)
+ $(CC) $^ -o $@ $(CFLAGS)
%.o: %.c
- gcc -c $(CFLAGS) $<
+ $(CC) -c $(CFLAGS) $<
install:
[ -d "$(INSDIR)" ] || mkdir $(INSDIR)

View File

@@ -0,0 +1,44 @@
{
stdenv,
lib,
fetchurl,
}:
stdenv.mkDerivation (finalAttrs: {
pname = "ttaenc";
version = "3.4.1";
src = fetchurl {
url = "mirror://sourceforge/tta/ttaenc-${finalAttrs.version}-src.tgz";
sha256 = "sha256-ssnIsBWsxYZPCCoBV/LgnFEX0URTIctheOkltEi+PcY=";
};
patches = [
./makefile.patch # Use stdenv's CC
./ttaenc-inline.patch # Patch __inline used into always_inline for both GCC and clang
];
makeFlags = [ "INSDIR=$(out)/bin" ];
preBuild = ''
# From the Makefile, with `-msse` removed, since we have those on by x86_64 by default.
makeFlagsArray+=(CFLAGS="-Wall -O2 -fomit-frame-pointer -funroll-loops -fforce-addr -falign-functions=4")
'';
postInstall = ''
# Copy docs
install -dm755 "$out/share/doc/ttaenc"
install -m644 "ChangeLog-${finalAttrs.version}" README "$out/share/doc/ttaenc"
'';
meta = {
description = "Lossless compressor for multichannel 8, 16 and 24 bits audio data, with the ability of password data protection";
homepage = "https://sourceforge.net/projects/tta/";
license = with lib.licenses; [
gpl3Only
lgpl3Only
];
platforms = lib.platforms.unix;
mainProgram = "ttaenc";
maintainers = with lib.maintainers; [ natsukagami ];
};
})

View File

@@ -0,0 +1,10 @@
--- a/ttaenc.c
+++ b/ttaenc.c
@@ -10,6 +10,7 @@
*/
#include "ttaenc.h"
+#define __inline static inline __attribute__((always_inline))
/******************* static variables and structures *******************/

View File

@@ -0,0 +1,53 @@
{
lib,
fetchFromGitHub,
rustPlatform,
testers,
ttags,
}:
let
version = "0.4.2";
in
rustPlatform.buildRustPackage {
pname = "ttags";
inherit version;
src = fetchFromGitHub {
owner = "npezza93";
repo = "ttags";
rev = "${version}";
hash = "sha256-z0IxGdveMtCXmCKD4jp/BEA6mtTl4CitIrVhM6BtHzA=";
};
cargoHash = "sha256-XgtBcEVfeR0yYKJkpFfA8pXk1S1fg+2QS8o7n9G1CXU=";
passthru.tests.version = testers.testVersion {
package = ttags;
command = "ttags --version";
version = version;
};
meta = with lib; {
description = "Generate tags using tree-sitter";
mainProgram = "ttags";
longDescription = ''
ttags generates tags (similar to ctags) for various
languages, using tree-sitter.
Can be run as a language server that updates the tags
for a file when it is saved.
Supported languages:
- Haskell
- JavaScript
- Nix
- Ruby
- Rust
- Swift
'';
homepage = "https://github.com/npezza93/ttags";
license = licenses.mit;
maintainers = with maintainers; [ mrcjkb ];
platforms = platforms.all;
};
}

View File

@@ -0,0 +1,27 @@
{
lib,
buildGoModule,
fetchFromGitHub,
}:
buildGoModule rec {
pname = "ttchat";
version = "0.1.10";
src = fetchFromGitHub {
owner = "atye";
repo = "ttchat";
rev = "v${version}";
hash = "sha256-Ezlqji/j6nyCzc1jrfB1MZR4ugKAa5D5CL6wfuP6PsY=";
};
vendorHash = "sha256-6GcbEGC1O+lcTO+GsaVXOO69yIHMPywXJy7OFX15/eI=";
meta = with lib; {
description = "Connect to a Twitch channel's chat from your terminal";
homepage = "https://github.com/atye/ttchat";
license = licenses.asl20;
maintainers = [ ];
mainProgram = "ttchat";
};
}

View File

@@ -0,0 +1,28 @@
{
lib,
rustPlatform,
fetchFromGitHub,
}:
rustPlatform.buildRustPackage rec {
pname = "ttdl";
version = "4.12.0";
src = fetchFromGitHub {
owner = "VladimirMarkelov";
repo = "ttdl";
rev = "v${version}";
sha256 = "sha256-nA5fX8NZko49ctgwJOt0A07/7SFyM5I2840zeBZnFCs=";
};
cargoHash = "sha256-yCEdsxoKxudI7ae8Lz+8TAFblJSSB4tSD3GLdT6VtFI=";
meta = {
description = "CLI tool to manage todo lists in todo.txt format";
homepage = "https://github.com/VladimirMarkelov/ttdl";
changelog = "https://github.com/VladimirMarkelov/ttdl/blob/v${version}/changelog";
license = with lib.licenses; [ mit ];
maintainers = with lib.maintainers; [ _3JlOy-PYCCKUi ];
mainProgram = "ttdl";
};
}

View File

@@ -0,0 +1,31 @@
{
lib,
stdenvNoCC,
fetchzip,
}:
stdenvNoCC.mkDerivation rec {
pname = "ttf-envy-code-r";
version = "PR7";
src = fetchzip {
url = "http://download.damieng.com/fonts/original/EnvyCodeR-${version}.zip";
hash = "sha256-pJqC/sbNjxEwbVf2CVoXMBI5zvT3DqzRlKSqFT8I2sM=";
};
installPhase = ''
runHook preInstall
install -Dm644 *.ttf -t $out/share/fonts/truetype
install -Dm644 *.txt -t $out/share/doc/${pname}
runHook postInstall
'';
meta = with lib; {
homepage = "https://damieng.com/blog/tag/envy-code-r";
description = "Free scalable coding font by DamienG";
license = licenses.unfree;
maintainers = [ ];
};
}

View File

@@ -0,0 +1,31 @@
{
lib,
stdenvNoCC,
fetchurl,
}:
stdenvNoCC.mkDerivation rec {
pname = "ttf-indic";
version = "0.2";
src = fetchurl {
url = "https://www.indlinux.org/downloads/files/indic-otf-${version}.tar.gz";
hash = "sha256-ZFmg1JanAf3eeF7M+yohrXYSUb0zLgNSFldEMzkhXnI=";
};
installPhase = ''
runHook preInstall
install -m444 -Dt $out/share/fonts/truetype OpenType/*.ttf
runHook postInstall
'';
meta = {
homepage = "https://www.indlinux.org/wiki/index.php/Downloads";
description = "Indic Opentype Fonts collection";
license = lib.licenses.gpl2Only;
maintainers = [ lib.maintainers.akssri ];
platforms = lib.platforms.all;
};
}

View File

@@ -0,0 +1,37 @@
{
lib,
stdenvNoCC,
fetchzip,
}:
stdenvNoCC.mkDerivation rec {
pname = "ttf-tw-moe";
version = "2020-11-14";
src = fetchzip {
url = "https://github.com/Jiehong/TW-fonts/archive/${version}.zip";
hash = "sha256-9gy8xO93ViIPmpg1du0DbXVCR2FowourLH8nP9d6HK0=";
};
installPhase = ''
runHook preInstall
install -Dm644 *.ttf -t $out/share/fonts/truetype
runHook postInstall
'';
meta = with lib; {
homepage = "http://www.moe.gov.tw/";
description = "Set of KAI and SONG fonts from the Ministry of Education of Taiwan";
version = version;
longDescription = ''
Installs 2 TTF fonts: MOESongUN and TW-MOE-Std-Kai.
Both are provided by the Ministry of Education of Taiwan; each character's shape
closely follows the official recommendation, and can be used as for teaching purposes.
'';
license = licenses.cc-by-nd-30;
maintainers = [ maintainers.jiehong ];
platforms = platforms.all;
};
}

View File

@@ -0,0 +1,98 @@
diff -Naur ttf2pt1-3.4.4-orig/Makefile ttf2pt1-3.4.4/Makefile
--- ttf2pt1-3.4.4-orig/Makefile 2007-07-15 20:06:50.000000000 -0600
+++ ttf2pt1-3.4.4/Makefile 2007-07-15 20:12:40.000000000 -0600
@@ -9,7 +9,7 @@
#
# Use GNU C even if it's not the default compiler
#
-#CC=gcc
+CC=gcc
#
# Use the standard ANSI C compiler on HP-UX even if it's not default
#
@@ -60,18 +60,18 @@
# (if the include and lib directory do not match your installation,
# modify them), also uncomment LIBS_FT
#
-#CFLAGS_FT = -DUSE_FREETYPE -I/usr/local/include/freetype2 -I/usr/local/include
+CFLAGS_FT = -DUSE_FREETYPE -I/usr/include/freetype2 -I/usr/include
#
# The FreeType-2 library flags (disabled by default)
-LIBS_FT=
+#LIBS_FT=
# To enable use of the FreeType-2 library
# (if the include and lib directory do not match your installation,
# modify them), also uncomment CFLAGS_FT
#
-#LIBS_FT= -L/usr/local/lib -lfreetype
+LIBS_FT= -L/usr/lib -lfreetype
#
# The flags for C compiler for the Autotrace library (disabled by default).
@@ -120,18 +120,18 @@
# Installation-related stuff
#
# The base dir for installation and subdirs in it
-INSTDIR = /usr/local
+INSTDIR = /usr
# for binaries
BINDIR = $(INSTDIR)/bin
# for binaries of little general interest
LIBXDIR = $(INSTDIR)/libexec/ttf2pt1
# for scripts, maps/encodings etc.
SHAREDIR = $(INSTDIR)/share/ttf2pt1
-MANDIR = $(INSTDIR)/man
+MANDIR = $(INSTDIR)/share/man
# owner and group of installed files
OWNER = root
-GROUP = bin
+GROUP = root
# After you have configured the Makefile, comment out the following
# definition:
@@ -244,17 +244,19 @@
chmod -R go-w $(SHAREDIR)
scripts/inst_file ttf2pt1 $(BINDIR)/ttf2pt1 $(OWNER) $(GROUP) 0755
[ -f $(BINDIR)/t1asm ] || scripts/inst_file t1asm $(LIBXDIR)/t1asm $(OWNER) $(GROUP) 0755
- sed 's|^TTF2PT1_BINDIR=$$|TTF2PT1_BINDIR=$(BINDIR)|;\
- s|^TTF2PT1_LIBXDIR=$$|TTF2PT1_LIBXDIR=$(LIBXDIR)|;\
- s|^TTF2PT1_SHAREDIR=$$|TTF2PT1_SHAREDIR=$(SHAREDIR)|;' <scripts/convert >cvt.tmp
+ sed -e 's|^TTF2PT1_BINDIR=$$|TTF2PT1_BINDIR=$(BINDIR)|' \
+ -e 's|^TTF2PT1_LIBXDIR=$$|TTF2PT1_LIBXDIR=$(LIBXDIR)|' \
+ -e 's|^TTF2PT1_SHAREDIR=$$|TTF2PT1_SHAREDIR=$(SHAREDIR)|' \
+ <scripts/convert >cvt.tmp
scripts/inst_file cvt.tmp $(BINDIR)/ttf2pt1_convert $(OWNER) $(GROUP) 0755
scripts/inst_file cvt.tmp $(SHAREDIR)/scripts/convert $(OWNER) $(GROUP) 0755
rm cvt.tmp
scripts/inst_file scripts/x2gs $(BINDIR)/ttf2pt1_x2gs $(OWNER) $(GROUP) 0755
for i in $(MANS1); do { \
- sed 's|TTF2PT1_BINDIR|$(BINDIR)|;\
- s|TTF2PT1_LIBXDIR|$(LIBXDIR)|;\
- s|TTF2PT1_SHAREDIR|$(SHAREDIR)|;' <$$i >$(MANDIR)/man1/$$i \
+ sed -e 's|TTF2PT1_BINDIR|$(BINDIR)|' \
+ -e 's|TTF2PT1_LIBXDIR|$(LIBXDIR)|' \
+ -e 's|TTF2PT1_SHAREDIR|$(SHAREDIR)|' \
+ <$$i >$(MANDIR)/man1/$$i \
&& chown $(OWNER) $(MANDIR)/man1/$$i \
&& chgrp $(GROUP) $(MANDIR)/man1/$$i \
&& chmod 0644 $(MANDIR)/man1/$$i \
diff -Naur ttf2pt1-3.4.4-orig/ft.c ttf2pt1-3.4.4/ft.c
--- ttf2pt1-3.4.4-orig/ft.c 2007-07-15 20:23:43.000000000 -0600
+++ ttf2pt1-3.4.4/ft.c 2007-07-15 20:24:02.000000000 -0600
@@ -12,6 +12,7 @@
#include <stdlib.h>
#include <ctype.h>
#include <sys/types.h>
+#include <ft2build.h>
#include <freetype/freetype.h>
#include <freetype/ftglyph.h>
#include <freetype/ftsnames.h>

View File

@@ -0,0 +1,59 @@
{
lib,
stdenv,
fetchurl,
perl,
freetype,
fetchpatch,
}:
stdenv.mkDerivation (finalAttrs: {
pname = "ttf2pt1";
version = "3.4.4";
src = fetchurl {
url = "mirror://sourceforge/ttf2pt1/ttf2pt1-${finalAttrs.version}.tgz";
sha256 = "1l718n4k4widx49xz7qrj4mybzb8q67kp2jw7f47604ips4654mf";
};
preConfigure = ''
find -type f | xargs sed -i 's@/usr/bin/perl@${perl}/bin/perl@'
mkdir -p $out
sed -e 's/chown/true/' \
-e 's/chgrp/true/' \
-e 's@^CFLAGS_FT =.*@CFLAGS_FT=-DUSE_FREETYPE -I${freetype.dev}/include/freetype2@' \
-i scripts/{inst_dir,inst_file} Makefile
makeFlags="INSTDIR=$out OWNER=`id -u`"
'';
buildInputs = [ freetype ];
nativeBuildInputs = [ perl ];
patches = [
./gentoo-makefile.patch # also contains the freetype patch
# fix build with c99
# https://src.fedoraproject.org/rpms/ttf2pt1/c/070de5269475785d27ae7996513bee12cb9a0f53
(fetchpatch {
url = "https://src.fedoraproject.org/rpms/ttf2pt1/raw/070de5269475785d27ae7996513bee12cb9a0f53/f/ttf2pt1-c99.patch";
hash = "sha256-7+RnExqxED+fUJSj3opfYi0eQ5zqswOZnKjQMvlF020=";
})
# fix build with gcc14
# https://src.fedoraproject.org/rpms/ttf2pt1/c/1ebb612acb7088095c6bd7242209f0ce848895fb
./ttf2pt1-gcc14.patch
];
meta = {
description = "True Type to Postscript Type 3 converter, fpdf";
homepage = "https://ttf2pt1.sourceforge.net/index.html";
license = with lib.licenses; [
gpl2Plus
{
fullName = "ttf2pt1 License";
url = "https://git.altlinux.org/gears/t/ttf2pt1.git?p=ttf2pt1.git;a=blob;f=ttf2pt1/COPYRIGHT;h=75e8f38e5a7638ee7d23892c86442ddcc35f4761;hb=f3cdb9f16159edf8115dc81520be9af791e846b2";
}
];
platforms = lib.platforms.linux;
};
})

View File

@@ -0,0 +1,47 @@
diff --git a/ft.c b/ft.c
index 4ca1ca6..3ae9ac9 100644
--- a/ft.c
+++ b/ft.c
@@ -457,7 +457,7 @@ static double lastx, lasty;
static int
outl_moveto(
- FT_Vector *to,
+ const FT_Vector *to,
void *unused
)
{
@@ -477,7 +477,7 @@ outl_moveto(
static int
outl_lineto(
- FT_Vector *to,
+ const FT_Vector *to,
void *unused
)
{
@@ -493,8 +493,8 @@ outl_lineto(
static int
outl_conicto(
- FT_Vector *control1,
- FT_Vector *to,
+ const FT_Vector *control1,
+ const FT_Vector *to,
void *unused
)
{
@@ -514,9 +514,9 @@ outl_conicto(
static int
outl_cubicto(
- FT_Vector *control1,
- FT_Vector *control2,
- FT_Vector *to,
+ const FT_Vector *control1,
+ const FT_Vector *control2,
+ const FT_Vector *to,
void *unused
)
{

View File

@@ -0,0 +1,25 @@
{
lib,
stdenvNoCC,
fetchurl,
}:
stdenvNoCC.mkDerivation rec {
pname = "ttf-bitstream-vera";
version = "1.10";
src = fetchurl {
url = "mirror://gnome/sources/${pname}/${lib.versions.majorMinor version}/${pname}-${version}.tar.bz2";
hash = "sha256-21sn33u7MYA269t1rNPpjxvW62YI+3CmfUeM0kPReNw=";
};
installPhase = ''
runHook preInstall
install -m444 -Dt $out/share/fonts/truetype *.ttf
runHook postInstall
'';
meta = { };
}

View File

@@ -0,0 +1,65 @@
{
stdenv,
lib,
fetchurl,
pkg-config,
autoreconfHook,
perl,
freetype,
harfbuzz,
libsForQt5,
enableGUI ? true,
}:
stdenv.mkDerivation (finalAttrs: {
version = "1.8.4";
pname = "ttfautohint";
src = fetchurl {
url = "mirror://savannah/freetype/ttfautohint-${finalAttrs.version}.tar.gz";
hash = "sha256-iodhF/puv9L/4bNoKpqYyALA9HGJ9X09tLmXdCBoMuE=";
};
postPatch =
lib.optionalString stdenv.hostPlatform.isLinux ''
echo "${finalAttrs.version}" > VERSION
''
+ lib.optionalString stdenv.hostPlatform.isDarwin ''
substituteInPlace configure --replace-fail "macx-g++" "macx-clang"
'';
nativeBuildInputs = [
pkg-config
perl
]
++ lib.optionals stdenv.hostPlatform.isLinux [ autoreconfHook ]
++ lib.optionals enableGUI [ libsForQt5.qt5.wrapQtAppsHook ];
buildInputs = [
freetype
harfbuzz
]
++ lib.optionals enableGUI [ libsForQt5.qt5.qtbase ];
configureFlags = [
''--with-qt=${if enableGUI then "${libsForQt5.qt5.qtbase}/lib" else "no"}''
]
++ lib.optionals (!enableGUI) [ "--without-doc" ];
enableParallelBuilding = true;
meta = {
description = "Automatic hinter for TrueType fonts";
mainProgram = "ttfautohint";
longDescription = ''
A library and two programs which take a TrueType font as the
input, remove its bytecode instructions (if any), and return a
new font where all glyphs are bytecode hinted using the
information given by FreeTypes auto-hinting module.
'';
homepage = "https://www.freetype.org/ttfautohint";
license = lib.licenses.gpl2Plus; # or the FreeType License (BSD + advertising clause)
maintainers = [ ];
platforms = lib.platforms.unix;
};
})

View File

@@ -0,0 +1,35 @@
{
fetchCrate,
lib,
rustPlatform,
}:
rustPlatform.buildRustPackage rec {
pname = "ttfb";
version = "1.15.0";
src = fetchCrate {
inherit pname version;
hash = "sha256-OOVqCWeF5cHMweEGWYIiWWWsw1QlNDFgnia05Qxo7uo=";
};
cargoHash = "sha256-4Nsg5/66enMgAfPrUQHuhOTTwG2OWyyvKMHIhPnlHko=";
# The bin feature activates all dependencies of the binary. Otherwise,
# only the library is build.
buildFeatures = [ "bin" ];
meta = {
description = "CLI-Tool to measure the TTFB (time to first byte) of HTTP(S) requests";
mainProgram = "ttfb";
longDescription = ''
ttfb measure the TTFB (time to first byte) of HTTP(S) requests. This includes data
of intermediate steps, such as the relative and absolute timings of DNS lookup, TCP
connect, and TLS handshake.
'';
homepage = "https://github.com/phip1611/ttfb";
changelog = "https://github.com/phip1611/ttfb/blob/v${version}/CHANGELOG.md";
license = with lib.licenses; [ mit ];
maintainers = with lib.maintainers; [ phip1611 ];
};
}

View File

@@ -0,0 +1,47 @@
{
lib,
stdenv,
fetchurl,
}:
stdenv.mkDerivation rec {
pname = "tthsum";
version = "1.3.2";
src = fetchurl {
url = "http://tthsum.devs.nu/pkg/tthsum-${version}.tar.bz2";
sha256 = "0z6jq8lbg9rasv98kxfs56936dgpgzsg3yc9k52878qfw1l2bp59";
};
installPhase = ''
mkdir -p $out/bin $out/share/man/man1
cp share/tthsum.1.gz $out/share/man/man1
cp obj-unix/tthsum $out/bin
'';
doCheck = !stdenv.hostPlatform.isDarwin;
meta = with lib; {
broken = stdenv.hostPlatform.isDarwin;
description = "Md5sum-alike program that works with Tiger/THEX hashes";
longDescription = ''
tthsum generates or checks TTH checksums (root of the THEX hash
tree). The Merkle Hash Tree, invented by Ralph Merkle, is a hash
construct that exhibits desirable properties for verifying the
integrity of files and file subranges in an incremental or
out-of-order fashion. tthsum uses the Tiger hash algorithm for
both the internal and the leaf nodes.
The specification of the Tiger hash algorithm is at:
http://www.cs.technion.ac.il/~biham/Reports/Tiger/
The specification of the THEX algorithm is at:
http://adc.sourceforge.net/draft-jchapweske-thex-02.html
'';
homepage = "http://tthsum.devs.nu/";
license = licenses.gpl3Plus;
maintainers = [ maintainers.ebzzry ];
platforms = platforms.unix;
mainProgram = "tthsum";
};
}

View File

@@ -0,0 +1,54 @@
{
lib,
stdenv,
fetchFromGitHub,
boost,
lv2,
python3,
wafHook,
}:
stdenv.mkDerivation (finalAttrs: {
pname = "ttl2c";
version = "1.0.1";
src = fetchFromGitHub {
owner = "lvtk";
repo = "ttl2c";
rev = "b64e425f38399a0d18d1252694d6d6980c800841";
hash = "sha256-Vy3UoMnr9SIMw0pZfyuLjDHf/Gzgn5g3V0fGTIypQyM=";
};
# remove outdated vendored waf
postPatch = ''
rm waf
'';
nativeBuildInputs = [
python3
wafHook
];
buildInputs = [
boost
lv2
];
enableParallelBuilding = true;
meta = {
description = "C header generator for LV2 plugins";
mainProgram = "ttl2c";
homepage = "https://lvtk.org/";
license = lib.licenses.gpl3Plus;
maintainers = with lib.maintainers; [
bot-wxt1221
fliegendewurst
];
platforms = lib.platforms.unix;
badPlatforms = [
"x86_64-darwin"
"aarch64-darwin"
];
};
})

View File

@@ -0,0 +1,78 @@
diff --git a/Makefile b/Makefile
index e65b64c..52af5ed 100644
--- a/Makefile
+++ b/Makefile
@@ -41,8 +41,9 @@ all: ttmkfdir
.cpp.o:
libtool --mode=compile $(CXX) $(CXXFLAGS) -o $@ -c $^
+# ulgy hack for libtool to find .o files !!
ttmkfdir: ttmkfdir.o directory.o commandline.o ttf.o encoding.o parser.o builtin.o
- libtool --mode=link $(CXX) -o $@ $^ $(LDFLAGS)
+ libtool --mode=link $(CXX) -o $@ ./.libs/ttmkfdir.o ./.libs/directory.o ./.libs/commandline.o ./.libs/ttf.o ./.libs/encoding.o ./.libs/parser.o ./.libs/builtin.o $(LDFLAGS)
parser.cpp: encoding.l
flex -i -8 -o$@ $<
diff --git a/encoding.cpp b/encoding.cpp
index 9035d35..b4e9733 100644
--- a/encoding.cpp
+++ b/encoding.cpp
@@ -2,7 +2,9 @@
#include <cstdio>
#include <cstdlib>
#include <cstring>
-#include "freetype/freetype.h"
+#include <ft2build.h>
+#include FT_FREETYPE_H
+#include <freetype/ftsnames.h>
#include "ttmkfdir.h"
#include "encoding.h"
diff --git a/encoding.h b/encoding.h
index fc618bc..e01518f 100644
--- a/encoding.h
+++ b/encoding.h
@@ -6,7 +6,8 @@
#include <map>
#include <string>
-#include "freetype/freetype.h"
+#include <ft2build.h>
+#include FT_FREETYPE_H
#include "util.h"
diff --git a/ttf.cpp b/ttf.cpp
index 1dda774..97b37f3 100644
--- a/ttf.cpp
+++ b/ttf.cpp
@@ -239,7 +239,7 @@ Face::FontFamilyName (void) const
for (i = 0; i < n; i++) {
if ((fterror = FT_Get_Sfnt_Name (face, i, &NamePtr)) != FT_Err_Ok) {
std::cout << "Warning: Can't SFNT name : " << FileName << "(" << fterror << ")" << std::endl;
- return;
+ return 0;
};
platform = NamePtr.platform_id;
encoding = NamePtr.encoding_id;
diff --git a/ttf.h b/ttf.h
index 4261ef8..c4a0f1f 100644
--- a/ttf.h
+++ b/ttf.h
@@ -3,13 +3,14 @@
#define TTF_H__
#include <string>
+#include <ft2build.h>
+#include FT_FREETYPE_H
#include "freetype/freetype.h"
#include "freetype/tttables.h"
#include "freetype/ftsnames.h"
#include "freetype/ttnameid.h"
#include "freetype/fterrors.h"
-#include "freetype/ftmodule.h"
-
+#include "freetype/ftmodapi.h"
#include "util.h"
#include "encoding.h"

View File

@@ -0,0 +1,61 @@
{
lib,
stdenv,
fetchurl,
freetype,
libtool,
flex,
bison,
pkg-config,
}:
stdenv.mkDerivation {
pname = "ttf-mkfontdir";
version = "3.0.9-6";
src = fetchurl {
url = "http://mirror.fsf.org/trisquel/pool/main/t/ttmkfdir/ttmkfdir_3.0.9.orig.tar.gz";
sha256 = "0n6bmmndmp4c1myisvv7cby559gzgvwsw4rfw065a3f92m87jxiq";
};
# all the patches up from ttmkfdir-3.0.9/Makefile should be reviewed by someone
# who knows more about C/C++ ..
patches = [
(fetchurl {
url = "http://mirror.fsf.org/trisquel/pool/main/t/ttmkfdir/ttmkfdir_3.0.9-6.diff.gz";
sha256 = "141kxaf2by8nf87hqyszaxi0n7nnmswr1nh2i5r5bsvxxmaj9633";
})
./cstring.patch # also fixes some other compilation issues (freetype includes)
];
# cross-compilation fixes:
# - fix libtool, the reason it does not work in nativeBuildInputs is complicated
# see https://github.com/NixOS/nixpkgs/pull/192878 for more info
# - freetype-config doesn't properly support cross-compilation, but is just a thin
# wrapper around pkg-config anyways
postPatch = ''
substituteInPlace Makefile \
--replace "libtool " "${libtool}/bin/libtool --tag=CXX " \
--replace "freetype-config" "${stdenv.cc.targetPrefix}pkg-config freetype2"
'';
makeFlags = [
"DESTDIR=${placeholder "out"}"
"BINDIR=/bin"
"CXX=${stdenv.cc.targetPrefix}c++"
];
nativeBuildInputs = [
flex
bison
pkg-config
];
buildInputs = [ freetype ];
meta = {
description = "Create fonts.dir for TTF font directory";
platforms = lib.platforms.linux;
mainProgram = "ttmkfdir";
};
}

View File

@@ -0,0 +1,63 @@
{
"depends": [
{
"method": "fetchzip",
"packages": [
"asciigraph"
],
"path": "/nix/store/q3m2aqlzzrx4jj5akbf8rah0gp40ya2v-source",
"ref": "master",
"rev": "9f51fc4e94d0960ab63fa6ea274518159720aa69",
"sha256": "1n8cx5vl26ppjsn889zmfpa37yhlxahy2va4bqp6q4v4r1dl1h14",
"srcDir": "src",
"url": "https://github.com/nimbackup/asciigraph/archive/9f51fc4e94d0960ab63fa6ea274518159720aa69.tar.gz"
},
{
"method": "fetchzip",
"packages": [
"illwill"
],
"path": "/nix/store/k3sxzm7qnkgnwkrfd8hc3gkwzbayb1h1-source",
"ref": "v0.4.1",
"rev": "2736d9e0eb6b2bf32cd2fdb8226407a388362cd1",
"sha256": "0hiic5yjsaw6sgl1jzmfpm5g6a5ckzmd29c3pzg30glchn2g94sk",
"srcDir": "",
"url": "https://github.com/johnnovak/illwill/archive/99a120f7f69868b94f5d35ce7e21dd12535de70c.tar.gz"
},
{
"method": "fetchzip",
"packages": [
"jsony"
],
"path": "/nix/store/ila4vdklhqs6h14gwyx71yrjbzwf54g3-source",
"rev": "non_quoted_key",
"sha256": "03xg2psxk765rfbf77q0hw5p9j1lzx5aqgz0j6arknw6r3zjrvrm",
"srcDir": "src",
"url": "https://github.com/inv2004/jsony/archive/non_quoted_key.tar.gz"
},
{
"method": "fetchzip",
"packages": [
"parsetoml"
],
"path": "/nix/store/nrgl7ks2x3svv6pkdxzr97d6jbd3zhlr-source",
"ref": "v0.7.1",
"rev": "6e5e16179fa2db60f2f37d8b1af4128aaa9c8aaf",
"sha256": "0lsgzbjlgd0h9859yn864y9h9h1v4f5jjk81yvfnlkc9zbwb5kfa",
"srcDir": "src",
"url": "https://github.com/NimParsers/parsetoml/archive/6e5e16179fa2db60f2f37d8b1af4128aaa9c8aaf.tar.gz"
},
{
"method": "fetchzip",
"packages": [
"zippy"
],
"path": "/nix/store/zcd2hmjxlkp1bpb7c9xrpg153ssj3w0b-source",
"ref": "0.10.16",
"rev": "a99f6a7d8a8e3e0213b3cad0daf0ea974bf58e3f",
"sha256": "16qdnyql8d7nm7nwwpq0maflm3p6cpbb2jfaqx6xkld9xkc9lsbv",
"srcDir": "src",
"url": "https://github.com/guzba/zippy/archive/a99f6a7d8a8e3e0213b3cad0daf0ea974bf58e3f.tar.gz"
}
]
}

View File

@@ -0,0 +1,43 @@
{
lib,
buildNimPackage,
fetchFromGitHub,
testers,
}:
buildNimPackage (finalAttrs: {
pname = "ttop";
version = "1.5.7";
src = fetchFromGitHub {
owner = "inv2004";
repo = "ttop";
rev = "v${finalAttrs.version}";
hash = "sha256-JdUoVP/R3epkx53kMdIflDEuFuJRzCxQY1BgsyVItqM=";
};
lockFile = ./lock.json;
nimFlags = [
"-d:NimblePkgVersion=${finalAttrs.version}"
];
passthru.tests = {
version = testers.testVersion {
package = finalAttrs.finalPackage;
};
};
meta = with lib; {
description = "Top-like system monitoring tool";
homepage = "https://github.com/inv2004/ttop";
changelog = "https://github.com/inv2004/ttop/releases/tag/${finalAttrs.src.rev}";
license = licenses.mit;
platforms = platforms.linux;
maintainers = with maintainers; [
figsoda
sikmir
];
mainProgram = "ttop";
};
})

View File

@@ -0,0 +1,193 @@
{
lib,
python3,
fetchFromGitHub,
espeak-ng,
tts,
addBinToPathHook,
writableTmpDirAsHomeHook,
}:
python3.pkgs.buildPythonApplication rec {
pname = "coqui-tts";
version = "0.26.2";
pyproject = true;
src = fetchFromGitHub {
owner = "idiap";
repo = "coqui-ai-TTS";
tag = "v${version}";
hash = "sha256-U/U3aXFvqnaV/Msy5wyzAKCUw9XUNplugig6nv5nfZY=";
};
postPatch =
let
relaxedConstraints = [
"bnunicodenormalizer"
"coqpit-config"
"cython"
"gruut"
"inflect"
"librosa"
"mecab-python3"
"numba"
"numpy"
"unidic-lite"
"trainer"
"spacy\\[ja\\]"
"transformers"
];
in
''
sed -r -i \
${lib.concatStringsSep "\n" (
map (package: ''-e 's/${package}\s*[<>=]+[^"]+/${package}/g' \'') relaxedConstraints
)}
pyproject.toml
'';
nativeBuildInputs = with python3.pkgs; [
cython
numpy
packaging
setuptools
hatchling
];
propagatedBuildInputs = with python3.pkgs; [
anyascii
bangla
bnnumerizer
bnunicodenormalizer
coqpit
einops
encodec
flask
fsspec
g2pkk
gdown
gruut
inflect
jamo
jieba
k-diffusion
librosa
matplotlib
mecab-python3
nltk
numba
packaging
pandas
pypinyin
pysbd
scipy
soundfile
tensorflow
torch
torchaudio
tqdm
trainer
transformers
unidic-lite
webrtcvad
spacy
monotonic-alignment-search
];
postInstall = ''
cp -r TTS/server/templates/ $out/${python3.sitePackages}/TTS/server
'';
# tests get stuck when run in nixpkgs-review, tested in passthru
doCheck = false;
passthru.tests.pytest = tts.overridePythonAttrs (_: {
doCheck = true;
});
nativeCheckInputs =
with python3.pkgs;
[
espeak-ng
pytestCheckHook
]
++ [
addBinToPathHook
writableTmpDirAsHomeHook
];
preCheck = ''
# use the installed TTS in $PYTHONPATH instead of the one from source to also have cython modules.
mv TTS{,.old}
for file in $(grep -rl 'python TTS/bin' tests); do
substituteInPlace "$file" \
--replace "python TTS/bin" "${python3.interpreter} $out/${python3.sitePackages}/TTS/bin"
done
'';
disabledTests = [
# Requires network access to download models
"test_korean_text_to_phonemes"
"test_models_offset_0_step_3"
"test_models_offset_1_step_3"
"test_models_offset_2_step_3"
"test_run_all_models"
"test_synthesize"
"test_voice_cloning"
"test_voice_conversion"
"test_multi_speaker_multi_lingual_model"
"test_single_speaker_model"
# Mismatch between phonemes
"test_text_to_ids_phonemes_with_eos_bos_and_blank"
# Takes too long
"test_parametrized_wavernn_dataset"
];
disabledTestPaths = [
# phonemes mismatch between espeak-ng and gruuts phonemizer
"tests/text_tests/test_phonemizer.py"
# no training, it takes too long
"tests/aux_tests/test_speaker_encoder_train.py"
"tests/tts_tests2/test_align_tts_train.py"
"tests/tts_tests2/test_fast_pitch_speaker_emb_train.py"
"tests/tts_tests2/test_fast_pitch_train.py"
"tests/tts_tests2/test_fastspeech_2_speaker_emb_train.py"
"tests/tts_tests2/test_fastspeech_2_train.py"
"tests/tts_tests2/test_glow_tts_d-vectors_train.py"
"tests/tts_tests2/test_glow_tts_speaker_emb_train.py"
"tests/tts_tests2/test_glow_tts_train.py"
"tests/tts_tests/test_neuralhmm_tts_train.py"
"tests/tts_tests/test_overflow_train.py"
"tests/tts_tests/test_speedy_speech_train.py"
"tests/tts_tests/test_tacotron2_d-vectors_train.py"
"tests/tts_tests/test_tacotron2_speaker_emb_train.py"
"tests/tts_tests/test_tacotron2_train.py"
"tests/tts_tests/test_tacotron_train.py"
"tests/tts_tests/test_vits_d-vectors_train.py"
"tests/tts_tests/test_vits_multilingual_speaker_emb_train.py"
"tests/tts_tests/test_vits_multilingual_train-d_vectors.py"
"tests/tts_tests/test_vits_speaker_emb_train.py"
"tests/tts_tests/test_vits_train.py"
"tests/vocoder_tests/test_wavegrad_train.py"
"tests/vocoder_tests/test_parallel_wavegan_train.py"
"tests/vocoder_tests/test_fullband_melgan_train.py"
"tests/vocoder_tests/test_hifigan_train.py"
"tests/vocoder_tests/test_multiband_melgan_train.py"
"tests/vocoder_tests/test_melgan_train.py"
"tests/vocoder_tests/test_wavernn_train.py"
# only a feed forward test, but still takes too long
"tests/tts_tests/test_overflow.py"
];
passthru = {
inherit python3;
};
meta = with lib; {
homepage = "https://github.com/idiap/coqui-ai-TTS";
changelog = "https://github.com/idiap/coqui-ai-TTS/releases/tag/${src.tag}";
description = "Deep learning toolkit for Text-to-Speech, battle-tested in research and production";
license = licenses.mpl20;
teams = [ teams.tts ];
};
}

View File

@@ -0,0 +1,51 @@
{
lib,
stdenv,
fetchFromGitHub,
cmake,
perl,
pkg-config,
openssl,
curl,
libusb1,
protobufc,
enableUnsafe ? false,
}:
stdenv.mkDerivation {
pname = "ttwatch";
version = "2020-06-24";
src = fetchFromGitHub {
owner = "ryanbinns";
repo = "ttwatch";
rev = "260aff5869fd577d788d86b546399353d9ff72c1";
sha256 = "0yd2hs9d03gfvwm1vywpg2qga6x5c74zrj665wf9aa8gmn96hv8r";
};
nativeBuildInputs = [
cmake
perl
pkg-config
];
buildInputs = [
openssl
curl
libusb1
protobufc
];
cmakeFlags = lib.optionals enableUnsafe [ "-Dunsafe=on" ];
preFixup = ''
chmod +x $out/bin/ttbin2mysports
'';
meta = with lib; {
homepage = "https://github.com/ryanbinns/ttwatch";
description = "Linux TomTom GPS Watch Utilities";
maintainers = with maintainers; [ dotlambda ];
license = licenses.mit;
platforms = with platforms; linux;
};
}

View File

@@ -0,0 +1,46 @@
{
lib,
stdenv,
fetchFromGitHub,
fetchpatch,
ncurses,
pkg-config,
}:
stdenv.mkDerivation {
pname = "tty-clock";
version = "2.3+unstable=2021-04-07";
src = fetchFromGitHub {
owner = "xorg62";
repo = "tty-clock";
# Use unreleased version to pull in fix for ncurses-6.3
rev = "9e00c32098524c30dac4dab701f7e33f8bc7c880";
sha256 = "14jrzz06jr29887bxgad1x6kd26c2fnqrc26864wqm3838fpcqw0";
};
patches = [
# Pull upstream patch pending inclusion fir more ncurses-6.3 fixes:
# https://github.com/xorg62/tty-clock/pull/100
(fetchpatch {
name = "ncurses-6.2.patch";
url = "https://github.com/xorg62/tty-clock/commit/4cfd73080da1964557484da620c401745d73881c.patch";
sha256 = "13pj1v6yrfc4vynsa746974kixfxxsy2jzzpl73c8bp7msr9d3md";
})
];
nativeBuildInputs = [ pkg-config ];
buildInputs = [ ncurses ];
makeFlags = [ "PREFIX=$(out)" ];
meta = with lib; {
broken = stdenv.hostPlatform.isDarwin;
homepage = "https://github.com/xorg62/tty-clock";
license = licenses.bsd3;
description = "Digital clock in ncurses";
platforms = platforms.all;
maintainers = [ maintainers.koral ];
mainProgram = "tty-clock";
};
}

View File

@@ -0,0 +1,34 @@
{
lib,
buildGoModule,
fetchFromGitHub,
}:
buildGoModule rec {
pname = "tty-share";
version = "2.4.1";
src = fetchFromGitHub {
owner = "elisescu";
repo = "tty-share";
rev = "v${version}";
sha256 = "sha256-+Bh39WtzReOmHcvpGbNfEdBqw7ZL9Vhxu5d337CMc/M=";
};
# Upstream has a `./vendor` directory with all deps which we rely upon.
vendorHash = null;
ldflags = [
"-s"
"-w"
"-X main.version=${version}"
];
meta = with lib; {
homepage = "https://tty-share.com";
description = "Share terminal via browser for remote work or shared sessions";
license = licenses.mit;
maintainers = with maintainers; [ andys8 ];
mainProgram = "tty-share";
};
}

View File

@@ -0,0 +1,38 @@
{
lib,
stdenv,
fetchFromGitHub,
ncurses,
}:
stdenv.mkDerivation (finalAttrs: {
pname = "tty-solitaire";
version = "1.4.1";
src = fetchFromGitHub {
owner = "mpereira";
repo = "tty-solitaire";
tag = "v${finalAttrs.version}";
hash = "sha256-8lEF1P2aKh0D4moCu54Z4Tv9xLFkZJzFuXJLo7oF9MQ=";
};
postPatch = ''
sed -i -e '/^CFLAGS *?= *-g *$/d' Makefile
'';
buildInputs = [ ncurses ];
makeFlags = [
"CC=${stdenv.cc.targetPrefix}cc"
"PREFIX=${placeholder "out"}"
];
meta = {
description = "Klondike Solitaire in your ncurses terminal";
license = lib.licenses.mit;
homepage = "https://github.com/mpereira/tty-solitaire";
platforms = ncurses.meta.platforms;
maintainers = [ ];
mainProgram = "ttysolitaire";
};
})

View File

@@ -0,0 +1,56 @@
{
lib,
stdenv,
fetchFromGitHub,
pkg-config,
cmake,
xxd,
openssl,
libwebsockets,
json_c,
libuv,
zlib,
nixosTests,
}:
stdenv.mkDerivation rec {
pname = "ttyd";
version = "1.7.7";
src = fetchFromGitHub {
owner = "tsl0922";
repo = "ttyd";
tag = version;
sha256 = "sha256-7e08oBKU7BMZ8328qCfNynCSe7LVZ88+iQZRRKl2YkY=";
};
nativeBuildInputs = [
pkg-config
cmake
xxd
];
buildInputs = [
openssl
libwebsockets
json_c
libuv
zlib
];
outputs = [
"out"
"man"
];
passthru.tests = {
inherit (nixosTests) ttyd;
};
meta = {
description = "Share your terminal over the web";
homepage = "https://github.com/tsl0922/ttyd";
license = lib.licenses.mit;
maintainers = [ lib.maintainers.thoughtpolice ];
platforms = lib.platforms.all;
mainProgram = "ttyd";
};
}

View File

@@ -0,0 +1,45 @@
{
lib,
stdenv,
fetchFromGitHub,
makeWrapper,
imagemagick,
xorg,
}:
stdenv.mkDerivation rec {
pname = "ttygif";
version = "1.6.0";
src = fetchFromGitHub {
owner = "icholy";
repo = "ttygif";
rev = version;
sha256 = "sha256-GsMeVR2wNivQguZ6B/0v39Td9VGHg+m3RtAG9DYkNmU=";
};
makeFlags = [
"CC:=$(CC)"
"PREFIX=${placeholder "out"}"
];
nativeBuildInputs = [ makeWrapper ];
postInstall = ''
wrapProgram $out/bin/ttygif \
--prefix PATH : ${
lib.makeBinPath [
imagemagick
xorg.xwd
]
}
'';
meta = with lib; {
homepage = "https://github.com/icholy/ttygif";
description = "Convert terminal recordings to animated gifs";
platforms = platforms.unix;
license = licenses.mit;
maintainers = with maintainers; [ moaxcp ];
mainProgram = "ttygif";
};
}

View File

@@ -0,0 +1,32 @@
{
lib,
stdenv,
fetchFromGitHub,
cmake,
}:
stdenv.mkDerivation rec {
pname = "ttylog";
version = "0.31";
src = fetchFromGitHub {
owner = "rocasa";
repo = "ttylog";
rev = version;
sha256 = "0c746bpjpa77vsr88fxk8h1803p5np1di1mpjf4jy5bv5x3zwm07";
};
nativeBuildInputs = [ cmake ];
meta = with lib; {
homepage = "https://ttylog.sourceforge.net";
description = "Simple serial port logger";
longDescription = ''
A serial port logger which can be used to print everything to stdout
that comes from a serial device.
'';
license = licenses.gpl2Plus;
platforms = platforms.linux;
mainProgram = "ttylog";
};
}

View File

@@ -0,0 +1,31 @@
{
lib,
rustPlatform,
fetchFromGitHub,
}:
rustPlatform.buildRustPackage rec {
pname = "ttyper";
version = "1.6.0";
src = fetchFromGitHub {
owner = "max-niederman";
repo = "ttyper";
rev = "v${version}";
hash = "sha256-g4OD4Mc3KHN9rrzM+9JvN2xTnSojGQy6yptdGj3zgW4=";
};
cargoHash = "sha256-M8LG/rZLFRUztniCmUuyj5mdzH3qUKoj02uUQ2zlq8M=";
meta = with lib; {
description = "Terminal-based typing test";
homepage = "https://github.com/max-niederman/ttyper";
changelog = "https://github.com/max-niederman/ttyper/releases/tag/${src.rev}";
license = licenses.mit;
maintainers = with maintainers; [
figsoda
max-niederman
];
mainProgram = "ttyper";
};
}

View File

@@ -0,0 +1,38 @@
{
lib,
stdenv,
fetchFromGitHub,
ncurses,
pkg-config,
}:
stdenv.mkDerivation rec {
pname = "ttyplot";
version = "1.7.4";
src = fetchFromGitHub {
owner = "tenox7";
repo = "ttyplot";
rev = version;
hash = "sha256-hWjjl11NGhbv0VrLpdJ/W+a8tJPjg8OtUTKgDIqpsfs=";
};
nativeBuildInputs = [
pkg-config
];
buildInputs = [
ncurses
];
makeFlags = [ "PREFIX=$(out)" ];
meta = with lib; {
description = "Simple general purpose plotting utility for tty with data input from stdin";
homepage = "https://github.com/tenox7/ttyplot";
license = licenses.asl20;
platforms = platforms.all;
maintainers = with maintainers; [ lassulus ];
mainProgram = "ttyplot";
};
}

View File

@@ -0,0 +1,73 @@
{
lib,
stdenv,
rustPlatform,
fetchFromGitHub,
pkg-config,
versionCheckHook,
nix-update-script,
# Runtime deps:
alsa-lib,
udev,
libGL,
vulkan-headers,
vulkan-loader,
}:
rustPlatform.buildRustPackage rec {
pname = "ttysvr";
version = "0.3.4";
src = fetchFromGitHub {
owner = "cxreiff";
repo = "ttysvr";
tag = "v${version}";
hash = "sha256-W8IglZVvhFqn0TH1ZBGWERizCxCQ+C4SckYFLCzB3yc=";
};
cargoHash = "sha256-iMzHoB1nfRDDSpHBrwKzW64fw7aYqh7uB14idbHTKH0=";
nativeBuildInputs = [
pkg-config
];
buildInputs = [
alsa-lib
udev
libGL
vulkan-headers
vulkan-loader
];
postFixup = lib.optionalString stdenv.hostPlatform.isLinux ''
patchelf $out/bin/ttysvr \
--add-rpath ${
lib.makeLibraryPath [
libGL
vulkan-loader
]
}
'';
nativeInstallCheckInputs = [
versionCheckHook
];
versionCheckProgramArg = "--version";
doInstallCheck = true;
passthru = {
updateScript = nix-update-script { };
};
meta = {
description = "Screen saver for your terminal";
homepage = "https://github.com/cxreiff/ttysvr";
changelog = "https://github.com/cxreiff/ttysvr/releases/tag/v${version}";
license = with lib.licenses; [
asl20
mit
];
maintainers = with lib.maintainers; [ griffi-gh ];
mainProgram = "ttysvr";
platforms = with lib.platforms; linux;
};
}