74 lines
2.3 KiB
Nix
74 lines
2.3 KiB
Nix
{ lib
|
|
, stdenv
|
|
, fetchzip
|
|
, cmake
|
|
, libtirpc
|
|
, ncurses
|
|
}:
|
|
|
|
stdenv.mkDerivation rec {
|
|
pname = "teapot";
|
|
version = "2.3.0";
|
|
|
|
src = fetchzip {
|
|
name = "${pname}-${version}";
|
|
url = "https://www.syntax-k.de/projekte/teapot/${pname}-${version}.tar.gz";
|
|
sha256 = "sha256-wzAwZwOMeTsuR5LhfjspGdejT6X1V8YJ8B7v9pcbxaY=";
|
|
};
|
|
|
|
patches = [
|
|
# include a local file in order to make cc happy
|
|
./001-fix-warning.patch
|
|
# remove the ENABLE_HELP target entirely - lyx and latex are huge!
|
|
./002-remove-help.patch
|
|
];
|
|
|
|
nativeBuildInputs = [
|
|
cmake
|
|
];
|
|
|
|
buildInputs = [
|
|
libtirpc
|
|
ncurses
|
|
];
|
|
|
|
# By no known reason libtirpc is not detected
|
|
NIX_CFLAGS_COMPILE = [ "-I${libtirpc.dev}/include/tirpc" ];
|
|
NIX_LDFLAGS = [ "-ltirpc" ];
|
|
|
|
cmakeConfigureFlags = [
|
|
"-DENABLE_HELP=OFF"
|
|
];
|
|
|
|
meta = with lib; {
|
|
homepage = "https://www.syntax-k.de/projekte/teapot/";
|
|
description = "Table Editor And Planner, Or: Teapot!";
|
|
longDescription = ''
|
|
Teapot is a compact spreadsheet software originally written by Michael
|
|
Haardt. It features a (n)curses-based text terminal interface, and
|
|
recently also a FLTK-based GUI.
|
|
|
|
These days, it may seem pointless having yet another spreadsheet program
|
|
(and one that doesn't even know how to load Microsoft Excel files). Its
|
|
compact size (130k for the ncurses executable, 140k for the GUI
|
|
executable, 300k for the self-contained Windows EXE) and the fact that it
|
|
can run across serial lines and SSH sessions make it an interesting choice
|
|
for embedded applications and as system administration utility, even more
|
|
so since it has a batch processing mode and comes with example code for
|
|
creating graphs from data sets.
|
|
|
|
Another interesting feature is its modern approach to spread sheet theory:
|
|
It sports true three-dimensional tables and iterative expressions. And
|
|
since it breaks compatibility with the usual notions of big spreadsheet
|
|
packages, it can also throw old syntactic cruft over board which many
|
|
spreadsheets still inherit from the days of VisiCalc on ancient CP/M
|
|
systems.
|
|
'';
|
|
license = licenses.gpl3Plus;
|
|
maintainers = with maintainers; [ AndersonTorres ];
|
|
platforms = platforms.unix;
|
|
};
|
|
}
|
|
# TODO: patch/fix FLTK building
|
|
# TODO: add documentation from
|