nixpkgs mirror (for testing)
github.com/NixOS/nixpkgs
nix
1{
2 lib,
3 stdenv,
4 fetchFromGitHub,
5 cmake,
6 glib,
7 gtk3,
8 gettext,
9 pango,
10 makeWrapper,
11 pcre2,
12 perl,
13 pkg-config,
14 vte,
15 nixosTests,
16}:
17
18stdenv.mkDerivation (finalAttrs: {
19 pname = "sakura";
20 version = "3.8.8";
21
22 src = fetchFromGitHub {
23 owner = "dabisu";
24 repo = "sakura";
25 rev = "SAKURA_${lib.replaceStrings [ "." ] [ "_" ] finalAttrs.version}";
26 hash = "sha256-YeZIYIfFgkK5nxMHq9mslrjIWTRAebhXyzXv5hTmOpI=";
27 };
28
29 nativeBuildInputs = [
30 cmake
31 gettext
32 makeWrapper
33 perl
34 pkg-config
35 ];
36
37 buildInputs = [
38 glib
39 gtk3
40 pango
41 pcre2
42 vte
43 ];
44
45 strictDeps = true;
46
47 # Set path to gsettings-schemata so sakura knows where to find colorchooser,
48 # fontchooser etc.
49 postFixup = ''
50 wrapProgram $out/bin/sakura \
51 --suffix XDG_DATA_DIRS : ${gtk3}/share/gsettings-schemas/${gtk3.name}/
52 '';
53
54 passthru.tests.test = nixosTests.terminal-emulators.sakura;
55
56 meta = {
57 homepage = "https://www.pleyades.net/david/projects/sakura";
58 description = "Terminal emulator based on GTK and VTE";
59 longDescription = ''
60 sakura is a terminal emulator based on GTK and VTE. It's a terminal
61 emulator with few dependencies, so you don't need a full GNOME desktop
62 installed to have a decent terminal emulator. Current terminal emulators
63 based on VTE are gnome-terminal, XFCE Terminal, TermIt and a small
64 sample program included in the vte sources. The differences between
65 sakura and the last one are that it uses a notebook to provide several
66 terminals in one window and adds a contextual menu with some basic
67 options. No more no less.
68 '';
69 license = lib.licenses.gpl2Only;
70 maintainers = with lib.maintainers; [
71 codyopel
72 ];
73 platforms = lib.platforms.linux;
74 mainProgram = "sakura";
75 };
76})