2021-06-28 23:13:55 +00:00
|
|
|
{ lib
|
|
|
|
, stdenv
|
2021-12-06 16:07:01 +00:00
|
|
|
, fetchFromGitHub
|
2020-11-03 02:18:15 +00:00
|
|
|
, cmake
|
2021-06-28 23:13:55 +00:00
|
|
|
, glib
|
2020-11-03 02:18:15 +00:00
|
|
|
, gtk3
|
2023-07-15 17:15:38 +00:00
|
|
|
, gettext
|
|
|
|
, pango
|
2021-06-28 23:13:55 +00:00
|
|
|
, makeWrapper
|
|
|
|
, pcre2
|
2020-11-03 02:18:15 +00:00
|
|
|
, perl
|
2021-06-28 23:13:55 +00:00
|
|
|
, pkg-config
|
2020-11-03 02:18:15 +00:00
|
|
|
, vte
|
2022-03-30 09:31:56 +00:00
|
|
|
, nixosTests
|
2020-11-03 02:18:15 +00:00
|
|
|
}:
|
|
|
|
|
2023-07-15 17:15:38 +00:00
|
|
|
stdenv.mkDerivation (finalAttrs: {
|
2020-11-03 02:18:15 +00:00
|
|
|
pname = "sakura";
|
2023-07-15 17:15:38 +00:00
|
|
|
version = "3.8.7";
|
2020-11-03 02:18:15 +00:00
|
|
|
|
2021-12-06 16:07:01 +00:00
|
|
|
src = fetchFromGitHub {
|
|
|
|
owner = "dabisu";
|
2023-07-15 17:15:38 +00:00
|
|
|
repo = "sakura";
|
|
|
|
rev = "SAKURA_${lib.replaceStrings [ "." ] [ "_" ] finalAttrs.version}";
|
|
|
|
hash = "sha256-mDYwqRPezHEgLyZlJQ6taTQiP9HDWmN09mapfp7/TPs=";
|
2020-11-03 02:18:15 +00:00
|
|
|
};
|
|
|
|
|
2021-06-28 23:13:55 +00:00
|
|
|
nativeBuildInputs = [
|
|
|
|
cmake
|
2023-07-15 17:15:38 +00:00
|
|
|
gettext
|
2021-06-28 23:13:55 +00:00
|
|
|
makeWrapper
|
|
|
|
perl
|
|
|
|
pkg-config
|
|
|
|
];
|
2020-11-03 02:18:15 +00:00
|
|
|
|
2021-06-28 23:13:55 +00:00
|
|
|
buildInputs = [
|
|
|
|
glib
|
|
|
|
gtk3
|
2023-07-15 17:15:38 +00:00
|
|
|
pango
|
2021-06-28 23:13:55 +00:00
|
|
|
pcre2
|
|
|
|
vte
|
|
|
|
];
|
2020-11-03 02:18:15 +00:00
|
|
|
|
2023-07-15 17:15:38 +00:00
|
|
|
strictDeps = true;
|
|
|
|
|
2021-06-28 23:13:55 +00:00
|
|
|
# Set path to gsettings-schemata so sakura knows where to find colorchooser,
|
|
|
|
# fontchooser etc.
|
2021-12-06 16:07:01 +00:00
|
|
|
postFixup = ''
|
2020-11-03 02:18:15 +00:00
|
|
|
wrapProgram $out/bin/sakura \
|
|
|
|
--suffix XDG_DATA_DIRS : ${gtk3}/share/gsettings-schemas/${gtk3.name}/
|
|
|
|
'';
|
|
|
|
|
2022-03-30 09:31:56 +00:00
|
|
|
passthru.tests.test = nixosTests.terminal-emulators.sakura;
|
|
|
|
|
2023-07-15 17:15:38 +00:00
|
|
|
meta = {
|
2020-11-03 02:18:15 +00:00
|
|
|
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.
|
|
|
|
'';
|
2023-07-15 17:15:38 +00:00
|
|
|
license = lib.licenses.gpl2Only;
|
|
|
|
maintainers = with lib.maintainers; [ astsmtl codyopel AndersonTorres ];
|
|
|
|
platforms = lib.platforms.linux;
|
2024-01-02 11:29:13 +00:00
|
|
|
mainProgram = "sakura";
|
2020-11-03 02:18:15 +00:00
|
|
|
};
|
2023-07-15 17:15:38 +00:00
|
|
|
})
|