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.
This commit is contained in:
AndersonTorres
2020-10-28 10:22:39 -03:00
parent c3feda093d
commit 2bb3a9da24
60 changed files with 48 additions and 38 deletions
@@ -0,0 +1,22 @@
{ callPackage }:
{
autocomplete-all-the-things = callPackage ./urxvt-autocomplete-all-the-things { };
bidi = callPackage ./urxvt-bidi { };
font-size = callPackage ./urxvt-font-size { };
perl = callPackage ./urxvt-perl { };
perls = callPackage ./urxvt-perls { };
resize-font = callPackage ./urxvt-resize-font { };
tabbedex = callPackage ./urxvt-tabbedex { };
theme-switch = callPackage ./urxvt-theme-switch { };
vtwheel = callPackage ./urxvt-vtwheel { };
}
@@ -0,0 +1,27 @@
{ stdenv, fetchFromGitHub }:
stdenv.mkDerivation rec {
pname = "urxvt-autocomplete-all-the-things";
version = "1.6.0";
src = fetchFromGitHub {
owner = "Vifon";
repo = "autocomplete-ALL-the-things";
rev = version;
sha256 = "06xd59c6gd9rglwq4km93n2p078k7v4x300lqrg1f32vvnjvs7sr";
};
installPhase = ''
mkdir -p $out/lib/urxvt/perl
cp autocomplete-ALL-the-things $out/lib/urxvt/perl
'';
meta = with stdenv.lib; {
description = "urxvt plugin allowing user to easily complete arbitrary text";
homepage = "https://github.com/Vifon/autocomplete-ALL-the-things";
license = licenses.gpl3;
maintainers = with maintainers; [ nickhu ];
platforms = with platforms; unix;
};
}
@@ -0,0 +1,27 @@
{ lib, fetchurl, perlPackages, pkgconfig, fribidi }:
perlPackages.buildPerlPackage rec {
pname = "urxvt-bidi";
version = "2.15";
src = fetchurl {
url = "mirror://cpan/authors/id/K/KA/KAMENSKY/Text-Bidi-${version}.tar.gz";
sha256 = "1w65xbi4mw5acsrpv3phyzv82ghb29kpbb3b1b1gcinlfxl6f61m";
};
nativeBuildInputs = [ pkgconfig perlPackages.ExtUtilsPkgConfig ];
buildInputs = [ fribidi ];
postInstall = ''
install -Dm555 misc/bidi "$out/lib/urxvt/perl/bidi"
'';
passthru.perlPackages = [ "self" ];
meta = with lib; {
description = "Text::Bidi Perl package using fribidi, providing a urxvt plugin";
homepage = "https://github.com/mkamensky/Text-Bidi";
maintainers = with maintainers; [ doronbehar ];
platforms = with platforms; unix;
};
}
@@ -0,0 +1,30 @@
{ stdenv, fetchFromGitHub, xrdb, xlsfonts }:
stdenv.mkDerivation {
name = "urxvt-font-size-2015-05-22";
dontPatchShebangs = true;
src = fetchFromGitHub {
owner = "majutsushi";
repo = "urxvt-font-size";
rev = "fd5b09c10798c6723bbf771d4d8881cf6563bc69";
sha256 = "16m3kkypg3y00x597zx05zy167a0kaqpawz0l591wzb2bv1dz55z";
};
installPhase = ''
substituteInPlace font-size \
--replace "xrdb -merge" "${xrdb}/bin/xrdb -merge" \
--replace "xlsfonts" "${xlsfonts}/bin/xlsfonts"
mkdir -p $out/lib/urxvt/perl
cp font-size $out/lib/urxvt/perl
'';
meta = with stdenv.lib; {
description = "Change the urxvt font size on the fly";
homepage = "https://github.com/majutsushi/urxvt-font-size";
license = licenses.mit;
maintainers = with maintainers; [ cstrahan ];
platforms = with platforms; unix;
};
}
@@ -0,0 +1,29 @@
{ stdenv, fetchFromGitHub, wmctrl }:
stdenv.mkDerivation {
name = "urxvt-perl-2015-01-16";
src = fetchFromGitHub {
owner = "effigies";
repo = "urxvt-perl";
rev = "c3beb9ff09a7139591416c61f8e9458c8a23bea5";
sha256 = "1w1p8ng7bwq5hnaprjl1zf073y5l3hdsj7sz7cll6isjswcm6r0s";
};
installPhase = ''
substituteInPlace fullscreen \
--replace "wmctrl" "${wmctrl}/bin/wmctrl"
mkdir -p $out/lib/urxvt/perl
cp fullscreen $out/lib/urxvt/perl
cp newterm $out/lib/urxvt/perl
'';
meta = with stdenv.lib; {
description = "Perl extensions for the rxvt-unicode terminal emulator";
homepage = "https://github.com/effigies/urxvt-perl";
license = licenses.gpl3;
maintainers = with maintainers; [ cstrahan ];
platforms = with platforms; unix;
};
}
@@ -0,0 +1,29 @@
{ stdenv, fetchFromGitHub }:
stdenv.mkDerivation rec {
pname = "urxvt-perls";
version = "2.3";
src = fetchFromGitHub {
owner = "muennich";
repo = "urxvt-perls";
rev = version;
sha256 = "0xvwfw7965ghhd9g6rl6y6fgpd444l46rjqmlgg0rfjypbh6c0p1";
};
installPhase = ''
mkdir -p $out/lib/urxvt/perl
cp keyboard-select $out/lib/urxvt/perl
cp deprecated/clipboard \
deprecated/url-select \
$out/lib/urxvt/perl
'';
meta = with stdenv.lib; {
description = "Perl extensions for the rxvt-unicode terminal emulator";
homepage = "https://github.com/muennich/urxvt-perls";
license = licenses.gpl2;
maintainers = with maintainers; [ abbradar ];
platforms = with platforms; unix;
};
}
@@ -0,0 +1,27 @@
{ stdenv, fetchFromGitHub }:
stdenv.mkDerivation {
pname = "urxvt-resize-font";
version = "2019-10-05";
dontPatchShebangs = true;
src = fetchFromGitHub {
owner = "simmel";
repo = "urxvt-resize-font";
rev = "e966a5d77264e9263bfc8a51e160fad24055776b";
sha256 = "18ab3bsfdkzzh1n9fpi2al5bksvv2b7fjmvxpx6fzqcy4bc64vkh";
};
installPhase = ''
mkdir -p $out/lib/urxvt/perl
cp resize-font $out/lib/urxvt/perl
'';
meta = with stdenv.lib; {
description = "URxvt Perl extension for resizing the font";
homepage = "https://github.com/simmel/urxvt-resize-font";
license = licenses.mit;
maintainers = with maintainers; [ rnhmjoj ];
platforms = platforms.unix;
};
}
@@ -0,0 +1,24 @@
{ stdenv, fetchFromGitHub, perl }:
stdenv.mkDerivation rec {
pname = "urxvt-tabbedex";
version = "19.21";
src = fetchFromGitHub {
owner = "mina86";
repo = "urxvt-tabbedex";
rev = "v${version}";
sha256 = "06msd156h6r8ss7qg66sjz5jz8613qfq2yvp0pc24i6mxzj8vl77";
};
nativeBuildInputs = [ perl ];
installFlags = [ "PREFIX=$(out)" ];
meta = with stdenv.lib; {
description = "Tabbed plugin for rxvt-unicode with many enhancements (mina86's fork)";
homepage = "https://github.com/mina86/urxvt-tabbedex";
maintainers = with maintainers; [ abbradar ];
platforms = with platforms; unix;
};
}
@@ -0,0 +1,28 @@
{ stdenv, fetchFromGitHub }:
stdenv.mkDerivation rec {
rev = "cfcbcc3dd5a5b09a3fec0f6a1fea95f4a36a48c4";
name = "urxvt-theme-switch-2014-12-21_rev${builtins.substring 0 1 rev}";
dontPatchShebangs = true;
src = fetchFromGitHub {
owner = "felixr";
repo = "urxvt-theme-switch";
inherit rev;
sha256 = "0x27m1vdqprn3lqpwgxvffill7prmaj6j9rhgvkvi13mzl5wmlli";
};
installPhase = ''
mkdir -p $out/lib/urxvt/perl
sed -i -e "s|/usr/bin/env||" color-themes
cp color-themes $out/lib/urxvt/perl
'';
meta = with stdenv.lib; {
description = "urxvt plugin that allows to switch color themes during runtime";
homepage = "https://github.com/felixr/urxvt-theme-switch";
license = "CCBYNC";
maintainers = with maintainers; [ ];
platforms = with platforms; unix;
};
}
@@ -0,0 +1,27 @@
{ stdenv, fetchgit, perl }:
stdenv.mkDerivation {
name = "rxvt-unicode-vtwheel-0.3.2";
src = fetchgit {
url = "https://aur.archlinux.org/urxvt-vtwheel.git";
rev = "36d3e861664aeae36a45f96100f10f8fe2218035";
sha256 = "1h3vrsbli5q9kr84j5ijbivlhpwlh3l8cv233pg362v2zz4ja8i7";
};
installPhase = ''
sed -i 's|#! perl|#! ${perl}/bin/perl|g' vtwheel
mkdir -p $out/lib/urxvt/perl
cp vtwheel $out/lib/urxvt/perl
'';
meta = with stdenv.lib; {
description = "Pass mouse wheel commands to secondary screens (screen, less, nano, etc)";
homepage = "https://aur.archlinux.org/packages/urxvt-vtwheel";
license = licenses.mit;
maintainers = with maintainers; [ danbst ];
platforms = with platforms; unix;
};
}