all messages for Guix-related lists mirrored at yhetil.org
 help / color / mirror / code / Atom feed
* [bug#30328] [PATCH] gnu: Add emacs-browse-at-remote-gnu.
@ 2018-02-02 21:44 Oleg Pykhalov
  2018-02-06 15:26 ` Ludovic Courtès
  0 siblings, 1 reply; 7+ messages in thread
From: Oleg Pykhalov @ 2018-02-02 21:44 UTC (permalink / raw)
  To: 30328

* gnu/packages/emacs.scm (emacs-browse-at-remote-gnu): New public variable.
* gnu/packages/patches/emacs-browse-at-remote-gnu-add-support-for-gnu-repositories.patch: New file.
* gnu/local.mk (dist_patch_DATA): Add this.
---
 gnu/local.mk                                       |  1 +
 gnu/packages/emacs.scm                             | 10 ++++
 ...mote-gnu-add-support-for-gnu-repositories.patch | 59 ++++++++++++++++++++++
 3 files changed, 70 insertions(+)
 create mode 100644 gnu/packages/patches/emacs-browse-at-remote-gnu-add-support-for-gnu-repositories.patch

diff --git a/gnu/local.mk b/gnu/local.mk
index 6fdea16c8..088ddee85 100644
--- a/gnu/local.mk
+++ b/gnu/local.mk
@@ -617,6 +617,7 @@ dist_patch_DATA =						\
   %D%/packages/patches/elfutils-tests-ptrace.patch		\
   %D%/packages/patches/elixir-disable-failing-tests.patch	\
   %D%/packages/patches/einstein-build.patch			\
+  %D%/packages/patches/emacs-browse-at-remote-gnu-add-support-for-gnu-repositories.patch	\
   %D%/packages/patches/emacs-exec-path.patch			\
   %D%/packages/patches/emacs-fix-scheme-indent-function.patch	\
   %D%/packages/patches/emacs-json-reformat-fix-tests.patch	\
diff --git a/gnu/packages/emacs.scm b/gnu/packages/emacs.scm
index 9523f14da..827469217 100644
--- a/gnu/packages/emacs.scm
+++ b/gnu/packages/emacs.scm
@@ -6470,6 +6470,16 @@ github/gitlab (or bitbucket) by calling @code{browse-at-remote} command.
 It supports dired buffers and opens them in tree mode at destination.")
       (license license:gpl3+))))
 
+(define-public emacs-browse-at-remote-gnu
+  (package
+    (inherit emacs-browse-at-remote)
+    (name "emacs-browse-at-remote-gnu")
+    (source
+     (origin
+       (inherit (package-source emacs-browse-at-remote))
+       (patches (search-patches "emacs-browse-at-remote-gnu\
+-add-support-for-gnu-repositories.patch"))))))
+
 (define-public emacs-tiny
   (package
     (name "emacs-tiny")
diff --git a/gnu/packages/patches/emacs-browse-at-remote-gnu-add-support-for-gnu-repositories.patch b/gnu/packages/patches/emacs-browse-at-remote-gnu-add-support-for-gnu-repositories.patch
new file mode 100644
index 000000000..b90017fdb
--- /dev/null
+++ b/gnu/packages/patches/emacs-browse-at-remote-gnu-add-support-for-gnu-repositories.patch
@@ -0,0 +1,59 @@
+Copyright © 2018 Oleg Pykhalov <go.wigust@gmail.com>
+
+This patch adds a support for Git repositories hosted on git.savannah.gnu.org.
+
+Upstream bug URL:
+
+https://github.com/rmuslimov/browse-at-remote/pull/46
+
+From cd2ccdaef8b1d97337d790175f71cc3dbcfcff64 Mon Sep 17 00:00:00 2001
+From: Oleg Pykhalov <go.wigust@gmail.com>
+Date: Fri, 26 Jan 2018 00:05:30 +0300
+Subject: [PATCH] Add support for repositories that are hosted on gnu cgit
+
+---
+ browse-at-remote.el | 21 ++++++++++++++++++++-
+ 1 file changed, 20 insertions(+), 1 deletion(-)
+
+diff --git a/browse-at-remote.el b/browse-at-remote.el
+index 66967b3..e210d18 100644
+--- a/browse-at-remote.el
++++ b/browse-at-remote.el
+@@ -44,7 +44,8 @@
+ (defcustom browse-at-remote-remote-type-domains
+   '(("bitbucket.org" ."bitbucket")
+     ("github.com" . "github")
+-    ("gitlab.com" . "gitlab"))
++    ("gitlab.com" . "gitlab")
++    ("git.savannah.gnu.org" . "gnu"))
+   "Alist of domain patterns to remote types."
+ 
+   :type '(alist :key-type (string :tag "Domain")
+@@ -199,6 +200,24 @@ If HEAD is detached, return nil."
+     (if (fboundp formatter)
+         formatter nil)))
+ 
++(defun browse-at-remote-gnu-format-url (repo-url)
++  "Get a gnu formatted URL."
++  (replace-regexp-in-string
++   (concat "https://" (car (rassoc "gnu" browse-at-remote-remote-type-domains))
++           "/\\(git\\).*\\'")
++   "cgit" repo-url nil nil 1))
++
++(defun browse-at-remote--format-region-url-as-gnu (repo-url location filename &optional linestart lineend)
++  "URL formatter for gnu."
++  (let ((repo-url (browse-at-remote-gnu-format-url repo-url)))
++    (cond
++     (linestart (format "%s.git/tree/%s?h=%s#n%d" repo-url filename location linestart))
++     (t (format "%s.git/tree/%s?h=%s" repo-url filename location)))))
++
++(defun browse-at-remote--format-commit-url-as-gnu (repo-url commithash)
++  "Commit URL formatted for gnu"
++  (format "%s.git/commit/?id=%s" (browse-at-remote-gnu-format-url repo-url) commithash))
++
+ (defun browse-at-remote--format-region-url-as-github (repo-url location filename &optional linestart lineend)
+   "URL formatted for github."
+   (cond
+-- 
+2.15.1
+
-- 
2.15.1

^ permalink raw reply related	[flat|nested] 7+ messages in thread

* [bug#30328] [PATCH] gnu: Add emacs-browse-at-remote-gnu.
  2018-02-02 21:44 [bug#30328] [PATCH] gnu: Add emacs-browse-at-remote-gnu Oleg Pykhalov
@ 2018-02-06 15:26 ` Ludovic Courtès
  2018-02-06 16:47   ` Oleg Pykhalov
  0 siblings, 1 reply; 7+ messages in thread
From: Ludovic Courtès @ 2018-02-06 15:26 UTC (permalink / raw)
  To: Oleg Pykhalov; +Cc: 30328

Oleg Pykhalov <go.wigust@gmail.com> skribis:

> * gnu/packages/emacs.scm (emacs-browse-at-remote-gnu): New public variable.
> * gnu/packages/patches/emacs-browse-at-remote-gnu-add-support-for-gnu-repositories.patch: New file.
> * gnu/local.mk (dist_patch_DATA): Add this.

[...]

> +(define-public emacs-browse-at-remote-gnu
> +  (package
> +    (inherit emacs-browse-at-remote)
> +    (name "emacs-browse-at-remote-gnu")
> +    (source
> +     (origin
> +       (inherit (package-source emacs-browse-at-remote))
> +       (patches (search-patches "emacs-browse-at-remote-gnu\
> +-add-support-for-gnu-repositories.patch"))))))

What about simply adding the patch to ‘emacs-browse-at-remote’ if it’s
committed upstream way?

Also please make the .patch file name a bit shorter; see ‘guix lint’.

OK with these changes, thanks!

Ludo’.

^ permalink raw reply	[flat|nested] 7+ messages in thread

* [bug#30328] [PATCH] gnu: Add emacs-browse-at-remote-gnu.
  2018-02-06 15:26 ` Ludovic Courtès
@ 2018-02-06 16:47   ` Oleg Pykhalov
  2018-02-07  9:18     ` Ludovic Courtès
  0 siblings, 1 reply; 7+ messages in thread
From: Oleg Pykhalov @ 2018-02-06 16:47 UTC (permalink / raw)
  To: Ludovic Courtès; +Cc: 30328

[-- Attachment #1: Type: text/plain, Size: 1209 bytes --]

Hello Ludovic,

Thank you for review!

ludo@gnu.org (Ludovic Courtès) writes:
 
  > What about simply adding the patch to ‘emacs-browse-at-remote’ if
  > it’s committed upstream way?

I'm sorry, what do you mean by “committed upstream way”?

I kinda agree to move the patch to ‘emacs-browse-at-remote’, but if
somebody want to upgrade it, maybe he will need to recreate a patch.

WDYT?

  > Also please make the .patch file name a bit shorter; see ‘guix lint’.

Ouch, I missed this because of “GUIX_PACKAGE_PATH”.  Usually I unset
this when prepare a package for Guix collection, but forget this time.
--8<---------------cut here---------------start------------->8---
$ ./pre-inst-env env guix lint emacs-browse-at-remote-gnu

$ ./pre-inst-env env GUIX_PACKAGE_PATH= guix lint emacs-browse-at-remote-gnu
/home/natsu/src/guix-wip-emacs-browse-at-remote-gnu/gnu/packages/emacs.scm:6474:2:
emacs-browse-at-remote-gnu@0.9.0-1.31dcf77:
emacs-browse-at-remote-gnu-add-support-for-gnu-repositories.patch: file
name is too long
fetching CVE database for 2018...nu@0.9.0-1.31dcf77 [cve]...
--8<---------------cut here---------------end--------------->8---

Oleg.

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

^ permalink raw reply	[flat|nested] 7+ messages in thread

* [bug#30328] [PATCH] gnu: Add emacs-browse-at-remote-gnu.
  2018-02-06 16:47   ` Oleg Pykhalov
@ 2018-02-07  9:18     ` Ludovic Courtès
  2018-02-07 16:37       ` Oleg Pykhalov
  0 siblings, 1 reply; 7+ messages in thread
From: Ludovic Courtès @ 2018-02-07  9:18 UTC (permalink / raw)
  To: Oleg Pykhalov; +Cc: 30328

Hi Oleg,

Oleg Pykhalov <go.wigust@gmail.com> skribis:

> ludo@gnu.org (Ludovic Courtès) writes:
>  
>   > What about simply adding the patch to ‘emacs-browse-at-remote’ if
>   > it’s committed upstream way?
>
> I'm sorry, what do you mean by “committed upstream way”?

I mean that the patch for Savannah support is already in the repository
of ‘browse-at-remote’, isn’t it?  Which is to say that the next version
of ‘browse-at-remote’ will have that functionality.

> I kinda agree to move the patch to ‘emacs-browse-at-remote’, but if
> somebody want to upgrade it, maybe he will need to recreate a patch.

(“He” or “she”.)

I don’t know, won’t the next ‘browse-at-remote’ include it?

>   > Also please make the .patch file name a bit shorter; see ‘guix lint’.
>
> Ouch, I missed this because of “GUIX_PACKAGE_PATH”.  Usually I unset
> this when prepare a package for Guix collection, but forget this time.
>
> $ ./pre-inst-env env guix lint emacs-browse-at-remote-gnu
>
> $ ./pre-inst-env env GUIX_PACKAGE_PATH= guix lint emacs-browse-at-remote-gnu
> /home/natsu/src/guix-wip-emacs-browse-at-remote-gnu/gnu/packages/emacs.scm:6474:2:
> emacs-browse-at-remote-gnu@0.9.0-1.31dcf77:
> emacs-browse-at-remote-gnu-add-support-for-gnu-repositories.patch: file
> name is too long
> fetching CVE database for 2018...nu@0.9.0-1.31dcf77 [cve]...

Oh I see, interesting.

The output of ‘guix lint’ seems to be messy, too.

Thanks,
Ludo’.

^ permalink raw reply	[flat|nested] 7+ messages in thread

* [bug#30328] [PATCH] gnu: Add emacs-browse-at-remote-gnu.
  2018-02-07  9:18     ` Ludovic Courtès
@ 2018-02-07 16:37       ` Oleg Pykhalov
  2018-02-07 21:41         ` Ludovic Courtès
  0 siblings, 1 reply; 7+ messages in thread
From: Oleg Pykhalov @ 2018-02-07 16:37 UTC (permalink / raw)
  To: Ludovic Courtès; +Cc: 30328

[-- Attachment #1: Type: text/plain, Size: 879 bytes --]

ludo@gnu.org (Ludovic Courtès) writes:

  >>   > What about simply adding the patch to ‘emacs-browse-at-remote’ if
  >>   > it’s committed upstream way?
  >>
  >> I'm sorry, what do you mean by “committed upstream way”?
  >
  > I mean that the patch for Savannah support is already in the repository
  > of ‘browse-at-remote’, isn’t it?

Technically it is there.

  > Which is to say that the next version of ‘browse-at-remote’ will
  > have that functionality.
  >
  > I don’t know, won’t the next ‘browse-at-remote’ include it?

I hope so, but I cannot answer for them (upstream).
 
  > The output of ‘guix lint’ seems to be messy, too.

Do you mean “filled”?  Sorry for that.


So, what will our strategy be?  Stay close to upstream by making a new
package with patch or patching the original package?


Oleg.

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

^ permalink raw reply	[flat|nested] 7+ messages in thread

* [bug#30328] [PATCH] gnu: Add emacs-browse-at-remote-gnu.
  2018-02-07 16:37       ` Oleg Pykhalov
@ 2018-02-07 21:41         ` Ludovic Courtès
  2018-02-09 19:26           ` Oleg Pykhalov
  0 siblings, 1 reply; 7+ messages in thread
From: Ludovic Courtès @ 2018-02-07 21:41 UTC (permalink / raw)
  To: Oleg Pykhalov; +Cc: 30328

Oleg Pykhalov <go.wigust@gmail.com> skribis:

> ludo@gnu.org (Ludovic Courtès) writes:
>
>   >>   > What about simply adding the patch to ‘emacs-browse-at-remote’ if
>   >>   > it’s committed upstream way?
>   >>
>   >> I'm sorry, what do you mean by “committed upstream way”?
>   >
>   > I mean that the patch for Savannah support is already in the repository
>   > of ‘browse-at-remote’, isn’t it?
>
> Technically it is there.

Good.

>   > Which is to say that the next version of ‘browse-at-remote’ will
>   > have that functionality.
>   >
>   > I don’t know, won’t the next ‘browse-at-remote’ include it?
>
> I hope so, but I cannot answer for them (upstream).

Well if it’s already in their repo, let’s assume it’ll be in the next
version.

>   > The output of ‘guix lint’ seems to be messy, too.
>
> Do you mean “filled”?  Sorry for that.

Several lines appear to overlap.

> So, what will our strategy be?  Stay close to upstream by making a new
> package with patch or patching the original package?

Patch the ‘emacs-browse-at-remote’ package, I’d say.

Sounds good?

Thanks,
Ludo’.

^ permalink raw reply	[flat|nested] 7+ messages in thread

* [bug#30328] [PATCH] gnu: Add emacs-browse-at-remote-gnu.
  2018-02-07 21:41         ` Ludovic Courtès
@ 2018-02-09 19:26           ` Oleg Pykhalov
  0 siblings, 0 replies; 7+ messages in thread
From: Oleg Pykhalov @ 2018-02-09 19:26 UTC (permalink / raw)
  To: Ludovic Courtès; +Cc: 30328, 30328-done

[-- Attachment #1: Type: text/plain, Size: 408 bytes --]

Hello Ludovic,

ludo@gnu.org (Ludovic Courtès) writes:
 
  > Well if it’s already in their repo, let’s assume it’ll be in the next
  > version.

I would say it's not in the their repo, but like in their mailing list.
 
  > Patch the ‘emacs-browse-at-remote’ package, I’d say.

OK.

Pushed as 61995dce5038dc801bca5a3ea1419ced2c6bd69c

I'll close the bug report.

Thanks,
Oleg.

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

^ permalink raw reply	[flat|nested] 7+ messages in thread

end of thread, other threads:[~2018-02-09 19:28 UTC | newest]

Thread overview: 7+ messages (download: mbox.gz / follow: Atom feed)
-- links below jump to the message on this page --
2018-02-02 21:44 [bug#30328] [PATCH] gnu: Add emacs-browse-at-remote-gnu Oleg Pykhalov
2018-02-06 15:26 ` Ludovic Courtès
2018-02-06 16:47   ` Oleg Pykhalov
2018-02-07  9:18     ` Ludovic Courtès
2018-02-07 16:37       ` Oleg Pykhalov
2018-02-07 21:41         ` Ludovic Courtès
2018-02-09 19:26           ` Oleg Pykhalov

Code repositories for project(s) associated with this external index

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

This is an external index of several public inboxes,
see mirroring instructions on how to clone and mirror
all data and code used by this external index.