diff mbox series

[bug#59640] gnu: Add tilix.

Message ID 3c98f0e06f5358f6b172f186e9bd6e5c01d71eaf.1673125726.git.efraim@flashner.co.il
State New
Headers show
Series [bug#59640] gnu: Add tilix. | expand

Commit Message

Efraim Flashner Jan. 7, 2023, 9:10 p.m. UTC
From: jgart <jgart@dismail.de>

* gnu/packages/terminals.scm (tilix): New variable.

Co-authored-by: Efraim Flashner <efraim@flashner.co.il>
---
 gnu/packages/terminals.scm | 53 +++++++++++++++++++++++++++++++++++++-
 1 file changed, 52 insertions(+), 1 deletion(-)


base-commit: d15972194aaef17fd1f7fd713d235c70794c9d4f
prerequisite-patch-id: 7e73a2ead7c6e84326cbb37aedbfed984cbe6ac3

Comments

jgart Jan. 7, 2023, 10:13 p.m. UTC | #1
Hi Efraim,

Thank you very much for fixing up and working on this patch. It is greatly appreciated!

Here's a screenshot of me running tilix on GNOME 42.4 after building the patch that you sent:

https://up.nixnet.services/wpex6t2q.png

I also ran the linter and just got

gnu/packages/terminals.scm:1351:5: tilix@1.9.5: label 'glib' does not match package name 'glib:bin'

But the above is a warning that can be ignored, correct?

all best,

jgart
Efraim Flashner Jan. 8, 2023, 11:08 a.m. UTC | #2
On Sat, Jan 07, 2023 at 10:13:56PM +0000, jgart wrote:
> Hi Efraim,
> 
> Thank you very much for fixing up and working on this patch. It is greatly appreciated!
> 
> Here's a screenshot of me running tilix on GNOME 42.4 after building the patch that you sent:
> 
> https://up.nixnet.services/wpex6t2q.png
> 
> I also ran the linter and just got
> 
> gnu/packages/terminals.scm:1351:5: tilix@1.9.5: label 'glib' does not match package name 'glib:bin'
> 
> But the above is a warning that can be ignored, correct?

That's right.

I pushed the patch with a few more minor changes. I think this makes it
our first package actually using dlang.
diff mbox series

Patch

diff --git a/gnu/packages/terminals.scm b/gnu/packages/terminals.scm
index 06b7b8b725..4832206fec 100644
--- a/gnu/packages/terminals.scm
+++ b/gnu/packages/terminals.scm
@@ -1,5 +1,5 @@ 
 ;;; GNU Guix --- Functional package management for GNU
-;;; Copyright © 2015, 2016, 2017, 2018, 2019, 2020, 2021 Efraim Flashner <efraim@flashner.co.il>
+;;; Copyright © 2015-2021, 2023 Efraim Flashner <efraim@flashner.co.il>
 ;;; Copyright © 2016 Mckinley Olsen <mck.olsen@gmail.com>
 ;;; Copyright © 2016, 2017, 2019 Alex Griffin <a@ajgrf.com>
 ;;; Copyright © 2016 David Craven <david@craven.ch>
@@ -32,6 +32,7 @@ 
 ;;; Copyright © 2021 Petr Hodina <phodina@protonmail.com>
 ;;; Copyright © 2022 Felipe Balbi <balbi@kernel.org>
 ;;; Copyright © 2022 ( <paren@disroot.org>
+;;; Copyright © 2022 jgart <jgart@dismail.de>
 ;;;
 ;;; This file is part of GNU Guix.
 ;;;
@@ -73,6 +74,7 @@  (define-module (gnu packages terminals)
   #:use-module (gnu packages crates-io)
   #:use-module (gnu packages crates-graphics)
   #:use-module (gnu packages crypto)
+  #:use-module (gnu packages dlang)
   #:use-module (gnu packages docbook)
   #:use-module (gnu packages fontutils)
   #:use-module (gnu packages freedesktop)
@@ -87,6 +89,7 @@  (define-module (gnu packages terminals)
   #:use-module (gnu packages image)
   #:use-module (gnu packages libcanberra)
   #:use-module (gnu packages libevent)
+  #:use-module (gnu packages libunwind)
   #:use-module (gnu packages linux)
   #:use-module (gnu packages man)
   #:use-module (gnu packages ncurses)
@@ -1310,6 +1313,54 @@  (define-public eternalterminal
 (define-public wterm
   (deprecated-package "wterm" foot))
 
+(define-public tilix
+  (package
+    (name "tilix")
+    (version "1.9.5")
+    (source
+      (origin
+        (method git-fetch)
+        (uri (git-reference
+               (url "https://github.com/gnunn1/tilix")
+               (commit version)))
+        (file-name (git-file-name name version))
+       (sha256
+        (base32 "1ij3ix6yhi8hicxvglrxjyyv8bch9birrgsr8ml6jfh3hvk4pxdh"))))
+    (build-system meson-build-system)
+    (arguments
+     `(#:glib-or-gtk? #t
+       #:phases
+       (modify-phases %standard-phases
+         (add-after 'unpack 'set-env-variables
+           (lambda _
+             (setenv "CC" ,(cc-for-target))))
+         (add-after 'unpack 'skip-gtk-update-icon-cache
+           (lambda _
+             (substitute* "meson_post_install.py"
+               (("gtk-update-icon-cache") (which "true"))))))))
+    (inputs
+     (list dbus
+           dconf
+           gsettings-desktop-schemas
+           gtk+
+           gtkd
+           libsecret
+           libunwind
+           vte))
+    (native-inputs
+     (list appstream
+           desktop-file-utils
+           gettext-minimal
+           (list glib "bin")
+           ldc
+           pkg-config
+           python-wrapper))
+    (home-page "https://gnunn1.github.io/tilix-web/")
+    (synopsis "Tiling terminal emulator following the Gnome Human Interface Guidelines")
+    (description "Tilix is a tiling terminal emulator following the
+Gnome Human Interface Guidelines.")
+    (license license:mpl2.0)))
+
 (define-public tio
   (package
     (name "tio")