2023-09-12 08:44:05 -06:00
|
|
|
{ lib
|
|
|
|
, stdenv
|
2024-01-12 07:05:43 -07:00
|
|
|
, fetchurl
|
2023-09-12 08:44:05 -06:00
|
|
|
, pkgs
|
|
|
|
, go-font
|
|
|
|
, ...
|
2023-07-11 09:12:50 -06:00
|
|
|
}:
|
2022-09-21 13:07:37 -06:00
|
|
|
stdenv.mkDerivation rec {
|
|
|
|
pname = "zutty";
|
2024-01-12 07:05:43 -07:00
|
|
|
version = "unstable-2024-01-10";
|
|
|
|
rev = "8453f9f251dfcc14e0ba2d819b5367cbc5c9c47e";
|
2022-09-21 13:07:37 -06:00
|
|
|
|
2024-01-12 07:05:43 -07:00
|
|
|
src = fetchurl {
|
|
|
|
url = "https://git.hq.sig7.se/zutty.git/snapshot/${rev}.tar.gz";
|
|
|
|
hash = "sha256-iRAr1QEZj1UvKBHRJmhZkbEq/Uq0gEAMNTtCpx/nz5w=";
|
2022-09-21 13:07:37 -06:00
|
|
|
};
|
|
|
|
|
2023-09-12 08:44:05 -06:00
|
|
|
patches = [ ./zutty_go.diff ];
|
2022-09-21 13:07:37 -06:00
|
|
|
|
|
|
|
nativeBuildInputs = with pkgs; [
|
|
|
|
gcc
|
|
|
|
pkg-config
|
2023-01-09 06:06:23 -07:00
|
|
|
python3
|
2022-09-21 13:07:37 -06:00
|
|
|
wafHook
|
|
|
|
xorg.libXmu
|
|
|
|
libGL
|
|
|
|
];
|
|
|
|
|
2023-09-12 08:44:05 -06:00
|
|
|
buildInputs = with pkgs; [ freetype fontconfig ];
|
2022-09-21 13:07:37 -06:00
|
|
|
|
|
|
|
prePatch = ''
|
2022-09-21 13:53:51 -06:00
|
|
|
substituteInPlace src/options.h \
|
|
|
|
--replace "/usr/share/fonts" "${go-font}/share/fonts"
|
2022-09-21 13:07:37 -06:00
|
|
|
'';
|
|
|
|
|
|
|
|
postInstall = ''
|
|
|
|
mkdir -p $out/share/applications/
|
|
|
|
for size in 16 32 48 64 96 128; do
|
|
|
|
mkdir -p $out/share/icons/hicolor/''${size}x''${size}/apps/
|
|
|
|
cp icons/zutty_''${size}x''${size}.png \
|
|
|
|
$out/share/icons/hicolor/''${size}x''${size}/apps/zutty.png
|
|
|
|
done
|
|
|
|
cp icons/zutty.desktop $out/share/applications/
|
|
|
|
'';
|
|
|
|
|
|
|
|
meta = with lib; {
|
2023-07-11 09:12:50 -06:00
|
|
|
description = "X terminal emulator rendering through OpenGL ES Compute Shaders";
|
2022-09-21 13:07:37 -06:00
|
|
|
longDescription = ''
|
|
|
|
Zutty is a terminal emulator for the X Window System, functionally
|
|
|
|
similar to several other X terminal emulators such as xterm, rxvt and
|
|
|
|
countless others. It is also similar to other, much more modern,
|
|
|
|
GPU-accelerated terminal emulators such as Alacritty and Kitty. What
|
|
|
|
really sets Zutty apart is its radically simple, yet extremely
|
|
|
|
efficient rendering implementation, coupled with a sufficiently
|
|
|
|
complete feature set to make it useful for a wide range of users.
|
|
|
|
'';
|
2022-09-26 10:50:16 -06:00
|
|
|
homepage = "https://tomscii.sig7.se/zutty/";
|
2022-09-21 13:07:37 -06:00
|
|
|
license = licenses.gpl3;
|
|
|
|
platforms = platforms.linux;
|
2023-09-12 08:44:05 -06:00
|
|
|
maintainers = with maintainers; [ qbit ];
|
2022-09-21 13:07:37 -06:00
|
|
|
};
|
|
|
|
}
|