unofficial mirror of guix-patches@gnu.org 
 help / color / mirror / code / Atom feed
From: "Collin J. Doering" <collin@rekahsoft.ca>
To: Efraim Flashner <efraim@flashner.co.il>
Cc: 37365@debbugs.gnu.org
Subject: [bug#37365] [PATCH] - Amendment: Enable tests
Date: Thu, 12 Sep 2019 17:15:06 -0400	[thread overview]
Message-ID: <87k1ad2p45.fsf@rekahsoft.ca> (raw)
In-Reply-To: <20190911073719.GH977@E5400>


[-- Attachment #1.1: Type: text/plain, Size: 2266 bytes --]

Hi Efraim,

Firstly, thanks for taking the time to review this. I have attached
updated patches with your suggested changes.

On 11 Sep 2019 at 03:37, Efraim Flashner wrote:

> These should be two patches, the first one to add the ruby package and
> the second to add the zsh package.

Makes sense.

>
>> +         (replace 'install
>> +           (lambda* (#:key outputs #:allow-other-keys)
>> +             (let* ((out (assoc-ref outputs "out"))
>> +                    (install-path (string-append out "/share/zsh/plugins/zsh-autosuggestions")))
>> +               (mkdir-p install-path)
>> +               (invoke "make" "all")
>> +               (copy-file "zsh-autosuggestions.zsh" (string-append install-path "/zsh-autosuggestions.zsh"))
>> +               #t))))))
>
> I don't use zsh so I'm asking without knowing anything about the
> directory structure, is %out/share/zsh/plugins/zsh-autosuggestions the
> correct folder? The only folder I currently have after zsh is
> site-functions.
>
> (ins)efraim@E5400 ~$ tree .guix-profile/share/zsh/
> .guix-profile/share/zsh/
>  site-functions
>      _mpv -> /gnu/store/acrlmdnmrkivbdrry756pf9grsx2x814-mpv-0.29.1/share/zsh/site-functions/_mpv
>      _vifm -> /gnu/store/1l9b676paigfc3fx9r8h6h2k5d33wrhk-vifm-0.10.1/share/zsh/site-functions/_vifm
>      _wgetpaste -> /gnu/store/k5g3fa3i59yxy3n9vf8lm1nfbz5whq2i-wgetpaste-2.29/share/zsh/site-functions/_wgetpaste

I did some more looking into this (as I just copied what I saw done for
a few zsh plugin packages for archlinux). The directories you list above
(namely .../'share/zsh/site-functions/_...') are for zsh site-functions (begin
with an underscore) and not plugins that extend the functionality of zsh
(which will have to be sourced from the users `~/.zshrc`). Something
like this should do:

source ~/.guix-profile/share/zsh/plugins/zsh-autosuggestions/zsh-autosuggestions.zsh

Anyways, I think that `.../share/zsh/plugins/<plugin_name>/...` is a
good place for this (and any other zsh plugins). WDYT?

Finally, you will find an updated patch set attached to this email that
includes splitting the ruby package out into its own patch, as well as
minor touch up to be more consistent with naming throughout the rest of
the guix code base.

Kind regards,

[-- Attachment #1.2: signature.asc --]
[-- Type: application/pgp-signature, Size: 487 bytes --]

[-- Attachment #2: 0001-gnu-Add-ruby-rspec-wait.patch --]
[-- Type: text/x-patch, Size: 1957 bytes --]

From 00e3e91719ce049b04415bda07588357eb776d48 Mon Sep 17 00:00:00 2001
From: "Collin J. Doering" <collin@rekahsoft.ca>
Date: Thu, 12 Sep 2019 17:09:00 -0400
Subject: [PATCH 1/2] gnu: Add ruby-rspec-wait

* gnu/packages/ruby.scm (ruby-rspec-wait): New variable.

Signed-off-by: Collin J. Doering <collin@rekahsoft.ca>
---
 gnu/packages/ruby.scm | 27 +++++++++++++++++++++++++++
 1 file changed, 27 insertions(+)

diff --git a/gnu/packages/ruby.scm b/gnu/packages/ruby.scm
index ef9792bc0f..110e5e21ac 100644
--- a/gnu/packages/ruby.scm
+++ b/gnu/packages/ruby.scm
@@ -17,6 +17,7 @@
 ;;; Copyright © 2019 Mikhail Kirillov <w96k.ru@gmail.com>
 ;;; Copyright © 2019 Jelle Licht <jlicht@fsfe.org>
 ;;; Copyright © 2019 Brian Leung <bkleung89@gmail.com>
+;;; Copyright © 2019 Collin J. Doering <collin@rekahsoft.ca>
 ;;;
 ;;; This file is part of GNU Guix.
 ;;;
@@ -670,6 +671,32 @@ RSpec tests.")
     (home-page "https://github.com/dblock/rspec-rerun")
     (license license:expat)))
 
+(define-public ruby-rspec-wait
+  (package
+    (name "ruby-rspec-wait")
+    (version "0.0.9")
+    (source
+      (origin
+        (method url-fetch)
+        (uri (rubygems-uri "rspec-wait" version))
+        (sha256
+          (base32
+            "0gvj1bp5ccx001dyvcgk2j49s5sl6vs9fdaqqb08z3bd1554hsww"))))
+    (build-system ruby-build-system)
+    (arguments
+     '(#:phases (modify-phases %standard-phases
+                  (replace 'check
+                    (lambda _
+                      (invoke "rake" "spec"))))))
+    (native-inputs
+     `(("bundler" ,bundler)))
+    (propagated-inputs `(("ruby-rspec" ,ruby-rspec)))
+    (synopsis "Wait for conditions in RSpec")
+    (description "Wait for conditions in RSpec")
+    (home-page
+      "https://github.com/laserlemon/rspec-wait")
+    (license license:expat)))
+
 (define-public ruby-rspec
   (package
     (name "ruby-rspec")
-- 
2.23.0


[-- Attachment #3: 0001-gnu-Add-zsh-autosuggestions.patch --]
[-- Type: text/x-patch, Size: 3250 bytes --]

From 2497a3b3337b72ac932a0edad9c0729325a69870 Mon Sep 17 00:00:00 2001
From: "Collin J. Doering" <collin@rekahsoft.ca>
Date: Thu, 12 Sep 2019 17:09:07 -0400
Subject: [PATCH 2/2] gnu: Add zsh-autosuggestions

* gnu/packages/shellutils.scm (zsh-autosuggestions): New variable.

Signed-off-by: Collin J. Doering <collin@rekahsoft.ca>
---
 gnu/packages/shellutils.scm | 48 +++++++++++++++++++++++++++++++++++++
 1 file changed, 48 insertions(+)

diff --git a/gnu/packages/shellutils.scm b/gnu/packages/shellutils.scm
index f7542ea759..847cd931b3 100644
--- a/gnu/packages/shellutils.scm
+++ b/gnu/packages/shellutils.scm
@@ -5,6 +5,7 @@
 ;;; Copyright © 2017 Stefan Reichör <stefan@xsteve.at>
 ;;; Copyright © 2018 Tobias Geerinckx-Rice <me@tobias.gr>
 ;;; Copyright © 2018 Benjamin Slade <slade@jnanam.net>
+;;; Copyright © 2019 Collin J. Doering <collin@rekahsoft.ca>
 ;;;
 ;;; This file is part of GNU Guix.
 ;;;
@@ -33,11 +34,58 @@
   #:use-module (gnu packages ncurses)
   #:use-module (gnu packages readline)
   #:use-module (gnu packages pkg-config)
+  #:use-module (gnu packages ruby)
+  #:use-module (gnu packages tmux)
+  #:use-module (gnu packages shells)
   #:use-module (guix utils)
   #:use-module (guix build-system gnu)
   #:use-module (guix build-system go)
   #:use-module (guix build-system python))
 
+(define-public zsh-autosuggestions
+  (package
+    (name "zsh-autosuggestions")
+    (version "0.6.3")
+    (source (origin
+              (method git-fetch)
+              (uri (git-reference
+                    (url "https://github.com/zsh-users/zsh-autosuggestions.git")
+                    (commit (string-append "v" version))))
+              (file-name (git-file-name name version))
+              (sha256
+               (base32
+                "1h8h2mz9wpjpymgl2p7pc146c1jgb3dggpvzwm9ln3in336wl95c"))))
+    (build-system gnu-build-system)
+    (native-inputs
+     `(("tmux" ,tmux)
+       ("zsh" ,zsh)
+       ("ruby" ,ruby)
+       ("ruby-rspec" ,ruby-rspec)
+       ("ruby-rspec-wait" ,ruby-rspec-wait)
+       ("ruby-pry" ,ruby-pry)
+       ("ruby-byebug" ,ruby-byebug)))
+    (arguments
+     '(#:phases
+       (modify-phases %standard-phases
+         (delete 'configure)
+         (replace 'check ; Tests use ruby's bundler; instead execute rspec directly
+           (lambda _
+             (setenv "TMUX_TMPDIR" (getenv "TMPDIR"))
+             (setenv "SHELL" (which "zsh"))
+             (invoke "rspec")))
+         (replace 'install
+           (lambda* (#:key outputs #:allow-other-keys)
+             (let* ((out (assoc-ref outputs "out"))
+                    (zsh-plugins (string-append out "/share/zsh/plugins/zsh-autosuggestions")))
+               (invoke "make" "all")
+               (install-file "zsh-autosuggestions.zsh" zsh-plugins)
+               #t))))))
+    (synopsis "Fish-like autosuggestions for zsh")
+    (description
+     "Fish-like fast/unobtrusive autosuggestions for zsh.  It suggests commands as you type.")
+    (home-page "https://github.com/zsh-users/zsh-autosuggestions.git")
+    (license license:expat)))
+
 (define-public envstore
   (package
     (name "envstore")
-- 
2.23.0


[-- Attachment #4: Type: text/plain, Size: 93 bytes --]


-- 
Collin J. Doering

http://rekahsoft.ca
http://blog.rekahsoft.ca
http://git.rekahsoft.ca

  reply	other threads:[~2019-09-12 21:16 UTC|newest]

Thread overview: 7+ messages / expand[flat|nested]  mbox.gz  Atom feed  top
2019-09-10  3:14 [bug#37365] [PATCH] Add package zsh-autosuggestions Collin J. Doering
2019-09-10  3:27 ` [bug#37365] [PATCH] Ammendment - zsh-autosuggestions Collin J. Doering
2019-09-10 14:37 ` [bug#37365] [PATCH] - Amendment #2: and copyright line and sign message with gpg Collin J. Doering
2019-09-11  3:18 ` [bug#37365] [PATCH] - Amendment: Enable tests Collin J. Doering
2019-09-11  7:37   ` Efraim Flashner
2019-09-12 21:15     ` Collin J. Doering [this message]
2019-09-13 12:47       ` bug#37365: " Efraim Flashner

Reply instructions:

You may reply publicly to this message via plain-text email
using any one of the following methods:

* Save the following mbox file, import it into your mail client,
  and reply-to-all from there: mbox

  Avoid top-posting and favor interleaved quoting:
  https://en.wikipedia.org/wiki/Posting_style#Interleaved_style

  List information: https://guix.gnu.org/

* Reply using the --to, --cc, and --in-reply-to
  switches of git-send-email(1):

  git send-email \
    --in-reply-to=87k1ad2p45.fsf@rekahsoft.ca \
    --to=collin@rekahsoft.ca \
    --cc=37365@debbugs.gnu.org \
    --cc=efraim@flashner.co.il \
    /path/to/YOUR_REPLY

  https://kernel.org/pub/software/scm/git/docs/git-send-email.html

* If your mail client supports setting the In-Reply-To header
  via mailto: links, try the mailto: link
Be sure your reply has a Subject: header at the top and a blank line before the message body.
Code repositories for project(s) associated with this public inbox

	https://git.savannah.gnu.org/cgit/guix.git

This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox;
as well as URLs for read-only IMAP folder(s) and NNTP newsgroup(s).