summary refs log tree commit diff
path: root/pkgs/applications/terminal-emulators/cool-retro-term/default.nix
diff options
context:
space:
mode:
authorAndersonTorres <torres.anderson.85@protonmail.com>2020-10-27 22:38:58 -0300
committerAndersonTorres <torres.anderson.85@protonmail.com>2020-10-28 10:22:39 -0300
commit2bb3a9da24ca60d9f5bed69f679a1ec50dbdf997 (patch)
tree23f671aff1d1de5a1530a39004fc373e045a4504 /pkgs/applications/terminal-emulators/cool-retro-term/default.nix
parentc3feda093d342da8f12ac710f64ac341812bb455 (diff)
downloadnixpkgs-2bb3a9da24ca60d9f5bed69f679a1ec50dbdf997.tar
nixpkgs-2bb3a9da24ca60d9f5bed69f679a1ec50dbdf997.tar.gz
nixpkgs-2bb3a9da24ca60d9f5bed69f679a1ec50dbdf997.tar.bz2
nixpkgs-2bb3a9da24ca60d9f5bed69f679a1ec50dbdf997.tar.lz
nixpkgs-2bb3a9da24ca60d9f5bed69f679a1ec50dbdf997.tar.xz
nixpkgs-2bb3a9da24ca60d9f5bed69f679a1ec50dbdf997.tar.zst
nixpkgs-2bb3a9da24ca60d9f5bed69f679a1ec50dbdf997.zip
A directory-category for terminal emulators
This is a mostly cosmetical commit, in the sense it doesn't change the contents
of any package, but reorganizes the overall Nixpkgs expressions.

Terminal emulators are an ubiquitous tool for any Unix user; even the beginners
are routinely familiarized to it. And, manifestly, there are many
implementations of terminal emulators out there, from those traditionally made
in C and C++ to those written in Haskell and Go.

Terminal emulators deserve more highlight. This commit does that by creating a
category for them.
Diffstat (limited to 'pkgs/applications/terminal-emulators/cool-retro-term/default.nix')
-rw-r--r--pkgs/applications/terminal-emulators/cool-retro-term/default.nix46
1 files changed, 46 insertions, 0 deletions
diff --git a/pkgs/applications/terminal-emulators/cool-retro-term/default.nix b/pkgs/applications/terminal-emulators/cool-retro-term/default.nix
new file mode 100644
index 00000000000..739ad07adbf
--- /dev/null
+++ b/pkgs/applications/terminal-emulators/cool-retro-term/default.nix
@@ -0,0 +1,46 @@
+{ stdenv, fetchFromGitHub, mkDerivation, qtbase, qtquick1, qmltermwidget
+, qtquickcontrols, qtgraphicaleffects, qmake }:
+
+mkDerivation rec {
+  version = "1.1.1";
+  pname = "cool-retro-term";
+
+  src = fetchFromGitHub {
+    owner = "Swordfish90";
+    repo = "cool-retro-term";
+    rev = version;
+    sha256 = "0mird4k88ml6y61hky2jynrjmnxl849fvhsr5jfdlnv0i7r5vwi5";
+  };
+
+  patchPhase = ''
+    sed -i -e '/qmltermwidget/d' cool-retro-term.pro
+  '';
+
+  buildInputs = [ qtbase qtquick1 qmltermwidget qtquickcontrols qtgraphicaleffects ];
+  nativeBuildInputs = [ qmake ];
+
+  installFlags = [ "INSTALL_ROOT=$(out)" ];
+
+  preFixup = ''
+    mv $out/usr/share $out/share
+    mv $out/usr/bin $out/bin
+    rmdir $out/usr
+  '' + stdenv.lib.optionalString stdenv.isDarwin ''
+    ln -s $out/bin/cool-retro-term.app/Contents/MacOS/cool-retro-term $out/bin/cool-retro-term
+  '';
+
+  enableParallelBuilding = true;
+
+  meta = {
+    description = "Terminal emulator which mimics the old cathode display";
+    longDescription = ''
+      cool-retro-term is a terminal emulator which tries to mimic the look and
+      feel of the old cathode tube screens. It has been designed to be
+      eye-candy, customizable, and reasonably lightweight.
+    '';
+    homepage = "https://github.com/Swordfish90/cool-retro-term";
+    license = stdenv.lib.licenses.gpl3Plus;
+    platforms = with stdenv.lib.platforms; linux ++ darwin;
+    maintainers = with stdenv.lib.maintainers; [ skeidel ];
+  };
+}