nixpkgs/pkgs/applications/terminal-emulators/sakura/default.nix
2023-11-27 02:17:53 +01:00

74 lines
1.8 KiB
Nix

{ lib
, stdenv
, fetchFromGitHub
, cmake
, glib
, gtk3
, gettext
, pango
, makeWrapper
, pcre2
, perl
, pkg-config
, vte
, nixosTests
}:
stdenv.mkDerivation (finalAttrs: {
pname = "sakura";
version = "3.8.7";
src = fetchFromGitHub {
owner = "dabisu";
repo = "sakura";
rev = "SAKURA_${lib.replaceStrings [ "." ] [ "_" ] finalAttrs.version}";
hash = "sha256-mDYwqRPezHEgLyZlJQ6taTQiP9HDWmN09mapfp7/TPs=";
};
nativeBuildInputs = [
cmake
gettext
makeWrapper
perl
pkg-config
];
buildInputs = [
glib
gtk3
pango
pcre2
vte
];
strictDeps = true;
# Set path to gsettings-schemata so sakura knows where to find colorchooser,
# fontchooser etc.
postFixup = ''
wrapProgram $out/bin/sakura \
--suffix XDG_DATA_DIRS : ${gtk3}/share/gsettings-schemas/${gtk3.name}/
'';
passthru.tests.test = nixosTests.terminal-emulators.sakura;
meta = {
homepage = "https://www.pleyades.net/david/projects/sakura";
description = "A terminal emulator based on GTK and VTE";
longDescription = ''
sakura is a terminal emulator based on GTK and VTE. It's a terminal
emulator with few dependencies, so you don't need a full GNOME desktop
installed to have a decent terminal emulator. Current terminal emulators
based on VTE are gnome-terminal, XFCE Terminal, TermIt and a small
sample program included in the vte sources. The differences between
sakura and the last one are that it uses a notebook to provide several
terminals in one window and adds a contextual menu with some basic
options. No more no less.
'';
license = lib.licenses.gpl2Only;
maintainers = with lib.maintainers; [ astsmtl codyopel AndersonTorres ];
platforms = lib.platforms.linux;
mainProgram = "sakura";
};
})