about summary refs log tree commit diff
path: root/nixpkgs/pkgs/applications/office/wordgrinder
diff options
context:
space:
mode:
Diffstat (limited to 'nixpkgs/pkgs/applications/office/wordgrinder')
-rw-r--r--nixpkgs/pkgs/applications/office/wordgrinder/default.nix59
1 files changed, 59 insertions, 0 deletions
diff --git a/nixpkgs/pkgs/applications/office/wordgrinder/default.nix b/nixpkgs/pkgs/applications/office/wordgrinder/default.nix
new file mode 100644
index 000000000000..4271e3d17aa2
--- /dev/null
+++ b/nixpkgs/pkgs/applications/office/wordgrinder/default.nix
@@ -0,0 +1,59 @@
+{ stdenv, fetchFromGitHub, pkgconfig, makeWrapper
+, lua52Packages, libXft, ncurses, ninja, readline, zlib }:
+
+stdenv.mkDerivation rec {
+  name = "wordgrinder-${version}";
+  version = "0.7.2";
+
+  src = fetchFromGitHub {
+    repo = "wordgrinder";
+    owner = "davidgiven";
+    rev = "${version}";
+    sha256 = "08lnq5wmspfqdjmqm15gizcq0xr7mg4h62qhvwj63v0sd6ks1cal";
+  };
+
+  makeFlags = [
+    "PREFIX=$(out)"
+    "LUA_INCLUDE=${lua52Packages.lua}/include"
+    "LUA_LIB=${lua52Packages.lua}/lib/liblua.so"
+  ];
+
+  preBuild = stdenv.lib.optionalString stdenv.isLinux ''
+    makeFlagsArray+=('XFT_PACKAGE=--cflags={} --libs={-lX11 -lXft}')
+  '';
+
+  dontUseNinjaBuild = true;
+  dontUseNinjaInstall = true;
+
+  nativeBuildInputs = [
+    pkgconfig
+    makeWrapper
+    ninja
+  ];
+
+  buildInputs = [
+    libXft
+    lua52Packages.lua
+    ncurses
+    readline
+    zlib
+  ];
+
+  # To be able to find <Xft.h>
+  NIX_CFLAGS_COMPILE = stdenv.lib.optionalString stdenv.isLinux "-I${libXft.dev}/include/X11";
+
+  # Binaries look for LuaFileSystem library (lfs.so) at runtime
+  postInstall = ''
+    wrapProgram $out/bin/wordgrinder --set LUA_CPATH "${lua52Packages.luafilesystem}/lib/lua/5.2/lfs.so";
+  '' + stdenv.lib.optionalString stdenv.isLinux ''
+    wrapProgram $out/bin/xwordgrinder --set LUA_CPATH "${lua52Packages.luafilesystem}/lib/lua/5.2/lfs.so";
+  '';
+
+  meta = with stdenv.lib; {
+    description = "Text-based word processor";
+    homepage = https://cowlark.com/wordgrinder;
+    license = licenses.mit;
+    maintainers = with maintainers; [ matthiasbeyer ];
+    platforms = with stdenv.lib.platforms; linux ++ darwin;
+  };
+}