about summary refs log tree commit diff
path: root/pkgs/applications
diff options
context:
space:
mode:
authorJustin Humm <justin.humm@posteo.de>2020-02-17 23:04:05 +0100
committerJustin Humm <justin.humm@posteo.de>2020-07-20 18:32:03 +0200
commit2811cf8bd85f2908852ea267db11fd637f7ae054 (patch)
treef8e9343b471eecdfbfe3c96d69c0fe041d663560 /pkgs/applications
parente303532eabc81d52ea79bc04f2e463bf931451b4 (diff)
fontpreview: init at 1.0.6
Diffstat (limited to 'pkgs/applications')
-rw-r--r--pkgs/applications/misc/fontpreview/default.nix40
1 files changed, 40 insertions, 0 deletions
diff --git a/pkgs/applications/misc/fontpreview/default.nix b/pkgs/applications/misc/fontpreview/default.nix
new file mode 100644
index 0000000000000..1d4e4d3e00feb
--- /dev/null
+++ b/pkgs/applications/misc/fontpreview/default.nix
@@ -0,0 +1,40 @@
+{ stdenv, lib, fetchFromGitHub, makeWrapper, xdotool, fzf, imagemagick, sxiv, getopt }:
+
+stdenv.mkDerivation rec {
+  pname = "fontpreview";
+  version = "1.0.6";
+
+  src = fetchFromGitHub {
+    owner = "sdushantha";
+    repo = pname;
+    rev = version;
+    sha256 = "0g3i2k6n2yhp88rrcf0hp6ils7836db7hx73hw9qnpcbmckz0i4w";
+  };
+
+  nativeBuildInputs = [ makeWrapper ];
+
+  preInstall = "mkdir -p $out/bin";
+
+  installFlags = [ "PREFIX=$(out)" ];
+
+  postInstall = ''
+    wrapProgram $out/bin/fontpreview \
+      --prefix PATH : ${lib.makeBinPath [ xdotool fzf imagemagick sxiv getopt ]}
+  '';
+
+  meta = with stdenv.lib; {
+    homepage = "https://github.com/sdushantha/fontpreview";
+    description = "Highly customizable and minimal font previewer written in bash";
+    longDescription = ''
+      fontpreview is a commandline tool that lets you quickly search for fonts
+      that are installed on your machine and preview them. The fuzzy search
+      feature is provided by fzf and the preview is generated with imagemagick
+      and then displayed using sxiv. This tool is highly customizable, almost
+      all of the variables in this tool can be changed using the commandline
+      flags or you can configure them using environment variables.
+    '';
+    license = licenses.mit;
+    platforms = platforms.unix;
+    maintainers = [ maintainers.erictapen ];
+  };
+}