guix-devel
[Top][All Lists]
Advanced

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

Re: [PATCH] gnu: Add cool-retro-term.


From: Petter
Subject: Re: [PATCH] gnu: Add cool-retro-term.
Date: Mon, 24 Apr 2017 14:30:26 +0200

Hi Chris,

> 
> By the way, the output of 'guix lint' points out the following:

Oh lint, I had forgotten about that.

> --8<---------------cut here---------------start------------->8---
> [0] address@hidden:~/guix
> $ ./pre-inst-env guix lint cool-retro-term
> gnu/packages/terminals.scm:493:5: address@hidden
> 9f: sentences in description should be followed by two spaces; 
> possible infraction at 117                                    
> checking address@hidden [inputs-should-be-nati
> checking address@hidden [inputs-should-not-be-
> gnu/packages/terminals.scm:490:14: address@hidden
> 19f: synopsis should be less than 80 characters long          
> [0] address@hidden:~/guix
> $
> --8<---------------cut here---------------end--------------->8---
> 
> Think you could submit one more patch to tidy up those?  Anyway, I
> can't commit your patch (I don't have commit access), but somebody
> else probably can.

I sure can. Thanks for helping out!

I lowercased the Cool-retro-term abbreviation, (crt). I think it's a
little better, but no strong feelings.

What do you think of adding `crt` as an alternative name
for the binary? I see it's been briefly discussed here,
https://github.com/Swordfish90/cool-retro-term/issues/258

> Love this contribution, by the way.  I'm sending an email from within
> CRT right now...!  :-)

Glad you enjoy it! I'm fond of it too, it makes the whole terminal
experience more engaging/alive or something :)

Unfortunately it has the capasity to introduce lag in my entire system.
F.ex. scrolling and changing tabs in Icecat would take noticeable time
with the default effects settings. I've adjusted them a bit, and
got the lag under control. Is this the case for you as well? I'm on an
x200.

Best,
Petter


From 553902e8a736f356bdc5c7a5bf28e339f9f5cde6 Mon Sep 17 00:00:00 2001
From: Petter <address@hidden>
Date: Sun, 23 Apr 2017 13:46:41 +0200
Subject: [PATCH] gnu: Add cool-retro-term.

* gnu/packages/terminals.scm (cool-retro-term): New variable.
---
 gnu/packages/terminals.scm | 62
  ++++++++++++++++++++++++++++++++++++++++++++++ 1 file changed, 62
  insertions(+)

diff --git a/gnu/packages/terminals.scm b/gnu/packages/terminals.scm
index 979278a53..e53062b16 100644
--- a/gnu/packages/terminals.scm
+++ b/gnu/packages/terminals.scm
@@ -7,6 +7,7 @@
 ;;; Copyright © 2016, 2017 José Miguel Sánchez García
<address@hidden> ;;; Copyright © 2017 Tobias Geerinckx-Rice
<address@hidden> ;;; Copyright © 2017 Ricardo Wurmus <address@hidden>
+;;; Copyright © 2017 Petter <address@hidden>
 ;;;
 ;;; This file is part of GNU Guix.
 ;;;
@@ -49,6 +50,7 @@
   #:use-module (gnu packages xdisorg)
   #:use-module (gnu packages xml)
   #:use-module (gnu packages docbook)
+  #:use-module (gnu packages qt)
   #:use-module (srfi srfi-26))
 
 (define-public tilda
@@ -433,3 +435,63 @@ its embedding program should provide it to draw on
its behalf.  It avoids calling @code{malloc} during normal running
state, allowing it to be used in embedded kernel situations.")
     (license license:expat)))
+
+(define-public cool-retro-term
+  (let ((commit "e48719fa44e5307df71dbd0fad234f8a6a53f863")
+        (revision "1"))
+  (package
+    (name "cool-retro-term")
+    (version (string-append "1.0.0-" revision "." (string-take commit
7)))
+    (source (origin
+              (method git-fetch)
+              (modules '((guix build utils)))
+              (file-name (string-append name "-" version "-checkout"))
+              (uri (git-reference
+                    (url (string-append
"https://github.com/Swordfish90/"; name))
+                    (commit commit)
+                    (recursive? #t)))
+              (sha256
+               (base32
"1sgqbirninkvgwchr35zgn5vzqvsmrf3cp7lqady1xgrawb8lsz3"))))
+    (build-system gnu-build-system)
+    (inputs
+     `(("qt" ,qt)))
+    (arguments
+     `(#:phases
+       (modify-phases %standard-phases
+         (replace 'configure
+                  (lambda* (#:key outputs #:allow-other-keys)
+                    (let ((out (assoc-ref outputs "out")))
+                      (substitute* '("qmltermwidget/qmltermwidget.pro")
+                        (("INSTALL_DIR = \\$\\$\\[QT_INSTALL_QML\\]")
+                         (string-append "INSTALL_DIR = " out "/qml")))
+                      (substitute* '("app/app.pro")
+                        (("target.path \\+= /usr")
+                         (string-append "target.path += " out))
+                        (("icon32.path = /usr/share")
+                         (string-append "icon32.path = " out "/share"))
+                        (("icon64.path = /usr/share")
+                         (string-append "icon64.path = " out "/share"))
+                        (("icon128.path = /usr/share")
+                         (string-append "icon128.path = " out
"/share"))
+                        (("icon256.path = /usr/share")
+                         (string-append "icon256.path = " out
"/share")))
+                      (zero? (system* "qmake")))))
+         (add-before 'install 'fix-Makefiles
+                  (lambda* (#:key outputs #:allow-other-keys)
+                    (let ((out (assoc-ref outputs "out")))
+                      (substitute* '("Makefile")
+                        (("\\$\\(INSTALL_ROOT\\)/usr") out)))))
+         (add-after 'install 'wrap-executable
+                    (lambda* (#:key outputs #:allow-other-keys)
+                      (let* ((out (assoc-ref outputs "out")))
+                        (wrap-program (string-append out
"/bin/cool-retro-term")
+                          `("QML2_IMPORT_PATH" ":" prefix
+                            (,(string-append out "/qml"))))))))))
+    (synopsis "Terminal emulator mimicking old cathode ray tube (CRT)
+screens")
+    (description
+     "Cool-retro-term (crt) is a terminal emulator which mimics the
look and +feel of the old cathode ray tube (CRT) screens.  It has been
designed to be +eye-candy, customizable, and reasonably lightweight.")
+    (home-page "https://github.com/Swordfish90/cool-retro-term";)
+    (license (list license:gpl2 license:gpl3)))))
-- 
2.12.2

Attachment: 0001-gnu-Add-cool-retro-term.patch
Description: Text Data

Attachment: pgp8iPorKeoxr.pgp
Description: OpenPGP digital signature


reply via email to

[Prev in Thread] Current Thread [Next in Thread]