unofficial mirror of guix-devel@gnu.org 
 help / color / mirror / code / Atom feed
* Add Package Mercurial
@ 2013-09-27 13:04 Arne Babenhauserheide (IMK)
  2013-09-27 19:20 ` Ludovic Courtès
  0 siblings, 1 reply; 8+ messages in thread
From: Arne Babenhauserheide (IMK) @ 2013-09-27 13:04 UTC (permalink / raw)
  To: guix-devel


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

Hi,

I include the patch and file for adding Mercurial to version-tracking.

I cannot test it right now, because the package requires a new version
of guix, but guix pull does not work. But since I’ll be away till
tuesday, I want to get it out of my
unfinished-business-need-to-care-for-that list.

The patch is in git diff format with commit message, so I hope you can
apply it.

Best wishes,
Arne
-- 
Doktorand
Gruppe: GHG

Raum: 435/410
Tel.: +49 721 608-22885
arne.babenhauserheide@kit.edu

Karlsruher Institut für Technologie
IMK-ASF
Postfach 36 40
76021 Karlsruhe

[-- Attachment #1.2: 0xA70DA09E.asc --]
[-- Type: application/pgp-keys, Size: 1893 bytes --]

[-- Warning: decoded text below may be mangled, UTF-8 assumed --]
[-- Attachment #1.3: add-mercurial.diff --]
[-- Type: text/x-patch; name="add-mercurial.diff", Size: 1388 bytes --]

# HG changeset patch
# User Arne Babenhauserheide <arne.babenhauserheide@kit.edu>
# Date 1380276186 -7200
#      Fri Sep 27 12:03:06 2013 +0200
# Node ID a034a79b8daff0be283971de80116dcb594ac2f4
# Parent  dc6b27bf766ba543f64a38fab93ea9bcee6eb165
gnu: Add mercurial.

* gnu/packages/version-control.scm (mercurial): New variable.

diff --git a/gnu/packages/version-control.scm b/gnu/packages/version-control.scm
--- a/gnu/packages/version-control.scm
+++ b/gnu/packages/version-control.scm
@@ -112,6 +112,27 @@
    (license gpl2)
    (home-page "http://git-scm.com/")))
 
+(define-public mercurial
+  (package
+    (name "mercurial")
+    (version "2.7.1")
+    (source
+     (origin
+      (method url-fetch)
+      (uri (string-append "http://mercurial.selenic.com/release/mercurial-" 
+                          version ".tar.gz"))
+      (sha256
+       (base32
+        "121m8f7vmipmdg00cnzdz2rjkgydh28mwfirqkrbs5fv089vywl4"))))
+    (build-system python-build-system)
+    (home-page "http://mercurial.selenic.com")
+    (synopsis "Decentralized version control system")
+    (description
+     "Mercurial is a free, distributed source control management tool.
+It efficiently handles projects of any size
+and offers an easy and intuitive interface.")
+    (license gpl2+)))
+
 (define-public subversion
   (package
     (name "subversion")

[-- Warning: decoded text below may be mangled, UTF-8 assumed --]
[-- Attachment #1.4: version-control.scm --]
[-- Type: text/x-scheme; name="version-control.scm", Size: 9267 bytes --]

;;; GNU Guix --- Functional package management for GNU
;;; Copyright © 2013 Nikita Karetnikov <nikita@karetnikov.org>
;;; Copyright © 2013 Cyril Roelandt <tipecaml@gmail.com>
;;; Copyright © 2013 Ludovic Courtès <ludo@gnu.org>
;;; Copyright © 2013 Andreas Enge <andreas@enge.fr>
;;;
;;; This file is part of GNU Guix.
;;;
;;; GNU Guix is free software; you can redistribute it and/or modify it
;;; under the terms of the GNU General Public License as published by
;;; the Free Software Foundation; either version 3 of the License, or (at
;;; your option) any later version.
;;;
;;; GNU Guix is distributed in the hope that it will be useful, but
;;; WITHOUT ANY WARRANTY; without even the implied warranty of
;;; MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the
;;; GNU General Public License for more details.
;;;
;;; You should have received a copy of the GNU General Public License
;;; along with GNU Guix.  If not, see <http://www.gnu.org/licenses/>.

(define-module (gnu packages version-control)
  #:use-module ((guix licenses) #:select (asl2.0 gpl1+ gpl2 gpl2+ gpl3+))
  #:use-module (guix packages)
  #:use-module (guix download)
  #:use-module (guix build-system gnu)
  #:use-module (guix build-system python)
  #:use-module (guix build utils)
  #:use-module ((gnu packages gettext)
                #:renamer (symbol-prefix-proc 'guix:))
  #:use-module (gnu packages apr)
  #:use-module (gnu packages curl)
  #:use-module (gnu packages nano)
  #:use-module (gnu packages openssl)
  #:use-module (gnu packages perl)
  #:use-module (gnu packages python)
  #:use-module (gnu packages sqlite)
  #:use-module (gnu packages system)
  #:use-module (gnu packages xml)
  #:use-module (gnu packages emacs)
  #:use-module (gnu packages compression))

(define-public bazaar
  (package
    (name "bazaar")
    (version "2.5.1")
    (source
     (origin
      (method url-fetch)
      (uri (string-append "https://launchpad.net/bzr/2.5/" version
                          "/+download/bzr-" version ".tar.gz"))
      (sha256
       (base32
        "10krjbzia2avn09p0cdlbx2wya0r5v11w5ymvyl72af5dkx4cwwn"))))
    (build-system python-build-system)
    (inputs
     ;; Note: 'tools/packaging/lp-upload-release' and 'tools/weavemerge.sh'
     ;; require Zsh.
     `(("gettext" ,guix:gettext)))
    (arguments
     `(#:tests? #f ; no test target
       #:python ,python-2)) ; Python 3 apparently not yet supported, see
                            ; https://answers.launchpad.net/bzr/+question/229048
    (home-page "https://gnu.org/software/bazaar")
    (synopsis "Decentralized revision control system")
    (description
     "GNU Bazaar is a distributed version control system, which supports both
central version control and distributed version control.  Developers can
organize their workspace in whichever way they want.  It is possible to work
from a command line or use a GUI application.")
    (license gpl2+)))

(define-public git
  (package
   (name "git")
   (version "1.8.4")
   (source (origin
            (method url-fetch)
            (uri (string-append "http://git-core.googlecode.com/files/git-"
                                version ".tar.gz"))
            (sha256
             (base32
              "156bwqqgaw65rsvbb4wih5jfg94bxyf6p16mdwf0ky3f4ln55s2i"))))
   (build-system gnu-build-system)
   (inputs
    `(("curl" ,curl)
      ("expat" ,expat)
      ("gettext" ,guix:gettext)
      ("openssl" ,openssl)
      ("perl" ,perl)
      ("python" ,python-2) ; CAVEAT: incompatible with python-3 according to INSTALL
      ("zlib" ,zlib)))
   (arguments
    `(#:make-flags `("V=1") ; more verbose compilation
      #:test-target "test"
      #:tests? #f ; FIXME: Many tests are failing
      #:phases
       (alist-replace
        'configure
        (lambda* (#:key #:allow-other-keys #:rest args)
          (let ((configure (assoc-ref %standard-phases 'configure)))
            (and (apply configure args)
                 (substitute* "Makefile"
                   (("/bin/sh") (which "sh"))
                   (("/usr/bin/perl") (which "perl"))
                   (("/usr/bin/python") (which "python"))))))
         %standard-phases)))
   (synopsis "Distributed version control system")
   (description
    "Git is a free distributed version control system designed to handle
everything from small to very large projects with speed and efficiency.")
   (license gpl2)
   (home-page "http://git-scm.com/")))

(define-public mercurial
  (package
    (name "mercurial")
    (version "2.7.1")
    (source
     (origin
      (method url-fetch)
      (uri (string-append "http://mercurial.selenic.com/release/mercurial-" 
                          version ".tar.gz"))
      (sha256
       (base32
        "121m8f7vmipmdg00cnzdz2rjkgydh28mwfirqkrbs5fv089vywl4"))))
    (build-system python-build-system)
    (home-page "http://mercurial.selenic.com")
    (synopsis "Decentralized version control system")
    (description
     "Mercurial is a free, distributed source control management tool.
It efficiently handles projects of any size
and offers an easy and intuitive interface.")
    (license gpl2+)))

(define-public subversion
  (package
    (name "subversion")
    (version "1.7.8")
    (source (origin
             (method url-fetch)
             (uri (string-append "http://archive.apache.org/dist/subversion/subversion-"
                                 version ".tar.bz2"))
             (sha256
              (base32
               "11inl9n1riahfnbk1fax0dysm2swakzhzhpmm2zvga6fikcx90zw"))))
    (build-system gnu-build-system)
    (inputs
      `(("apr" ,apr)
        ("apr-util" ,apr-util)
        ("perl" ,perl)
        ("python" ,python-2) ; incompatible with Python 3 (print syntax)
        ("sqlite" ,sqlite)
        ("zlib" ,zlib)))
    (home-page "http://subversion.apache.org/")
    (synopsis "Subversion, a revision control system")
    (description
     "Subversion exists to be universally recognized and adopted as an
open-source, centralized version control system characterized by its
reliability as a safe haven for valuable data; the simplicity of its model and
usage; and its ability to support the needs of a wide variety of users and
projects, from individuals to large-scale enterprise operations.")
    (license asl2.0)))

(define-public rcs
  (package
    (name "rcs")
    (version "5.9.0")
    (source (origin
             (method url-fetch)
             (uri (string-append "mirror://gnu/rcs/rcs-"
                                 version ".tar.xz"))
             (sha256
              (base32
               "0w26vsx732dcmb5qfhlkkzvrk1sx6d74qibrn914n14j0ci90jcq"))))
    (build-system gnu-build-system)
    (home-page "http://www.gnu.org/software/rcs/")
    (synopsis "Per-file local revision control system")
    (description
     "The GNU Revision Control System (RCS) manages multiple revisions of
files. RCS automates the storing, retrieval, logging, identification, and
merging of revisions.  RCS is useful for text that is revised frequently,
including source code, programs, documentation, graphics, papers, and form
letters.")
    (license gpl3+)))

(define-public cvs
  (package
    (name "cvs")
    (version "1.12.13")
    (source (origin
             (method url-fetch)
             (uri (string-append
                   "http://ftp.gnu.org/non-gnu/cvs/source/feature/"
                   version "/cvs-" version ".tar.bz2"))
             (sha256
              (base32
               "0pjir8cwn0087mxszzbsi1gyfc6373vif96cw4q3m1x6p49kd1bq"))))
    (build-system gnu-build-system)
    (arguments
     ;; XXX: The test suite looks flawed, and the package is obsolete anyway.
     '(#:tests? #f))
    (inputs `(("zlib" ,zlib)
              ("nano" ,nano)))                    ; the default editor
    (home-page "http://cvs.nongnu.org")
    (synopsis "Historical centralized version control system")
    (description
     "CVS is a version control system, an important component of Source
Configuration Management (SCM).  Using it, you can record the history of
sources files, and documents.  It fills a similar role to the free software
RCS, PRCS, and Aegis packages.")
    (license gpl1+)))

(define-public vc-dwim
  (package
    (name "vc-dwim")
    (version "1.7")
    (source (origin
             (method url-fetch)
             (uri (string-append "mirror://gnu/vc-dwim/vc-dwim-"
                                 version ".tar.xz"))
             (sha256
              (base32
               "094pjwshvazlgagc254in2xvrp93vhcj0kb5ms17qs7sch99x9z2"))))
    (build-system gnu-build-system)
    (inputs `(("perl" ,perl)
              ("inetutils" ,inetutils)     ; for `hostname', used in the tests
              ("emacs" ,emacs)))           ; for `ctags'
    (home-page "http://www.gnu.org/software/vc-dwim/")
    (synopsis "Version-control-agnostic ChangeLog diff and commit tool")
    (description
     "vc-dwim is a version-control-agnostic ChangeLog diff and commit
tool. vc-chlog is a helper tool for writing GNU-style ChangeLog entries.")
    (license gpl3+)))

[-- Attachment #1.5: arne_babenhauserheide.vcf --]
[-- Type: text/x-vcard, Size: 366 bytes --]

begin:vcard
fn:Arne Babenhauserheide
n:Babenhauserheide;Arne
org:KIT;GHG,  IMK-ASF
adr;quoted-printable:;;Geb=C3=A4ude 435, Raum 410, Campus Nord;Karlsruhe;BW;76021;Deutschland
email;internet:arne.babenhauserheide@kit.edu
title:Doktorand
tel;work:+49 721 608-22885
x-mozilla-html:FALSE
url:http://www.imk-asf.kit.edu/874_1194.php
version:2.1
end:vcard


[-- Attachment #2: OpenPGP digital signature --]
[-- Type: application/pgp-signature, Size: 555 bytes --]

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

* Re: Add Package Mercurial
  2013-09-27 13:04 Add Package Mercurial Arne Babenhauserheide (IMK)
@ 2013-09-27 19:20 ` Ludovic Courtès
  2013-10-01 12:46   ` Arne Babenhauserheide (IMK)
  0 siblings, 1 reply; 8+ messages in thread
From: Ludovic Courtès @ 2013-09-27 19:20 UTC (permalink / raw)
  To: Arne Babenhauserheide (IMK); +Cc: guix-devel

"Arne Babenhauserheide (IMK)" <arne.babenhauserheide@kit.edu> skribis:

> I include the patch and file for adding Mercurial to version-tracking.

Nice!

> The patch is in git diff format with commit message, so I hope you can
> apply it.

The patch is not in ‘git format-patch’ format, which makes it more
tedious for us to deal with it.

I understand Git may not be your favorite VCS, but we’d be grateful if
you could facilitate our work.

I tried building it and it fails:

--8<---------------cut here---------------start------------->8---
starting phase `build'
running "python setup.py" with command "build" and parameters ()
setup.py with python3 needs --c2to3 (experimental)
phase `build' failed after 1 seconds
--8<---------------cut here---------------end--------------->8---

Presumably Mercurial uses a different build system different from
“python setup.py”, no?

Thanks,
Ludo’.

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

* Re: Add Package Mercurial
  2013-09-27 19:20 ` Ludovic Courtès
@ 2013-10-01 12:46   ` Arne Babenhauserheide (IMK)
  2013-10-01 13:24     ` Ludovic Courtès
  0 siblings, 1 reply; 8+ messages in thread
From: Arne Babenhauserheide (IMK) @ 2013-10-01 12:46 UTC (permalink / raw)
  To: Ludovic Courtès; +Cc: guix-devel@gnu.org


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

Dear Guix hackers,

Am 27.09.2013 21:20, schrieb Ludovic Courtès:
>> The patch is in git diff format with commit message, so I hope you can
>> apply it.
> 
> The patch is not in ‘git format-patch’ format, which makes it more
> tedious for us to deal with it.
> 
> I understand Git may not be your favorite VCS, but we’d be grateful if
> you could facilitate our work.

I could push it to a git-repo from which you can pull.

I tried using git format-patch but I just gave up in frustration when I
could not find out how to take out files when amending a commit.

--snip more git frustration which cost me ~15 minutes right now--

The only ways I intend to work with git are via emacs vc-mode or via
hg-git. So either you can take non-amended series of commits with
repeated corrections (emacs vc-mode), you can take regular diffs or you
pull from a git-repo (hg-git). Or I have to give up on contributing,
because I don’t want to hurt my brain any more with the git cli.

> I tried building it and it fails:
> 
> --8<---------------cut here---------------start------------->8---
> starting phase `build'
> running "python setup.py" with command "build" and parameters ()
> setup.py with python3 needs --c2to3 (experimental)
> phase `build' failed after 1 seconds
> --8<---------------cut here---------------end--------------->8---
> 
> Presumably Mercurial uses a different build system different from
> “python setup.py”, no?

Ah, that looks like it’s a python3 issue. The easy workaround would be
to just disable python3 for hg (as for the other python-vcs’).

Best wishes,
Arne
-- 
Doktorand
Gruppe: GHG

Raum: 435/410
Tel.: +49 721 608-22885
arne.babenhauserheide@kit.edu

Karlsruher Institut für Technologie
IMK-ASF
Postfach 36 40
76021 Karlsruhe

[-- Attachment #1.2: 0xA70DA09E.asc --]
[-- Type: application/pgp-keys, Size: 1893 bytes --]

[-- Attachment #1.3: arne_babenhauserheide.vcf --]
[-- Type: text/x-vcard, Size: 366 bytes --]

begin:vcard
fn:Arne Babenhauserheide
n:Babenhauserheide;Arne
org:KIT;GHG,  IMK-ASF
adr;quoted-printable:;;Geb=C3=A4ude 435, Raum 410, Campus Nord;Karlsruhe;BW;76021;Deutschland
email;internet:arne.babenhauserheide@kit.edu
title:Doktorand
tel;work:+49 721 608-22885
x-mozilla-html:FALSE
url:http://www.imk-asf.kit.edu/874_1194.php
version:2.1
end:vcard


[-- Attachment #2: OpenPGP digital signature --]
[-- Type: application/pgp-signature, Size: 555 bytes --]

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

* Re: Add Package Mercurial
  2013-10-01 12:46   ` Arne Babenhauserheide (IMK)
@ 2013-10-01 13:24     ` Ludovic Courtès
  2013-10-01 13:41       ` Arne Babenhauserheide (IMK)
  0 siblings, 1 reply; 8+ messages in thread
From: Ludovic Courtès @ 2013-10-01 13:24 UTC (permalink / raw)
  To: Arne Babenhauserheide (IMK); +Cc: guix-devel@gnu.org

"Arne Babenhauserheide (IMK)" <arne.babenhauserheide@kit.edu> skribis:

> Am 27.09.2013 21:20, schrieb Ludovic Courtès:
>>> The patch is in git diff format with commit message, so I hope you can
>>> apply it.
>> 
>> The patch is not in ‘git format-patch’ format, which makes it more
>> tedious for us to deal with it.
>> 
>> I understand Git may not be your favorite VCS, but we’d be grateful if
>> you could facilitate our work.

[...]

> The only ways I intend to work with git are via emacs vc-mode or via
> hg-git. So either you can take non-amended series of commits with
> repeated corrections (emacs vc-mode), you can take regular diffs or you
> pull from a git-repo (hg-git). Or I have to give up on contributing,
> because I don’t want to hurt my brain any more with the git cli.

FWIW I never use the Git CLI, only Magit (in Emacs), so you may want to
try that one.

>> I tried building it and it fails:
>> 
>> --8<---------------cut here---------------start------------->8---
>> starting phase `build'
>> running "python setup.py" with command "build" and parameters ()
>> setup.py with python3 needs --c2to3 (experimental)
>> phase `build' failed after 1 seconds
>> --8<---------------cut here---------------end--------------->8---
>> 
>> Presumably Mercurial uses a different build system different from
>> “python setup.py”, no?
>
> Ah, that looks like it’s a python3 issue. The easy workaround would be
> to just disable python3 for hg (as for the other python-vcs’).

Would you like to send an updated patch, in whatever form you can
handle?

Thanks,
Ludo’.

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

* Re: Add Package Mercurial
  2013-10-01 13:24     ` Ludovic Courtès
@ 2013-10-01 13:41       ` Arne Babenhauserheide (IMK)
  2013-10-01 22:04         ` Ludovic Courtès
  0 siblings, 1 reply; 8+ messages in thread
From: Arne Babenhauserheide (IMK) @ 2013-10-01 13:41 UTC (permalink / raw)
  To: Ludovic Courtès; +Cc: guix-devel@gnu.org


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

Hi,

I attached an adapted version of the patch reusing the solution from Bazaar.

Best wishes,
Arne

Am 01.10.2013 15:24, schrieb Ludovic Courtès:
> FWIW I never use the Git CLI, only Magit (in Emacs), so you may want to
> try that one.

I thought about that. Is it already compatible with Mercurial (so the
investment would not only help fringe usecases)?

Best wishes,
Arne
-- 
Doktorand
Gruppe: GHG

Raum: 435/410
Tel.: +49 721 608-22885
arne.babenhauserheide@kit.edu

Karlsruher Institut für Technologie
IMK-ASF
Postfach 36 40
76021 Karlsruhe

[-- Warning: decoded text below may be mangled, UTF-8 assumed --]
[-- Attachment #1.2: add-mercurial.diff --]
[-- Type: text/x-patch; name="add-mercurial.diff", Size: 1543 bytes --]

# HG changeset patch
# User Arne Babenhauserheide <arne.babenhauserheide@kit.edu>
# Date 1380634471 -7200
#      Tue Oct 01 15:34:31 2013 +0200
# Node ID d190622d428db9728e41abaa4ba63d40c06e943a
# Parent  a34f735e8b79e33072e37f2d1a8a750b0fb24a40
gnu: Add mercurial.

* gnu/packages/version-control.scm (mercurial): New variable.

diff --git a/gnu/packages/version-control.scm b/gnu/packages/version-control.scm
--- a/gnu/packages/version-control.scm
+++ b/gnu/packages/version-control.scm
@@ -180,6 +180,32 @@
    (license gpl2)
    (home-page "http://git-scm.com/")))
 
+
+(define-public mercurial
+  (package
+    (name "mercurial")
+    (version "2.7.1")
+    (source
+     (origin
+      (method url-fetch)
+      (uri (string-append "http://mercurial.selenic.com/release/mercurial-" 
+                          version ".tar.gz"))
+      (sha256
+       (base32
+        "121m8f7vmipmdg00cnzdz2rjkgydh28mwfirqkrbs5fv089vywl4"))))
+    (build-system python-build-system)
+    (arguments
+     `(#:python ,python-2)) ; Restrict to python2, as python 3 would require
+                            ; the argument --c2to3
+    (home-page "http://mercurial.selenic.com")
+    (synopsis "Decentralized version control system")
+    (description
+     "Mercurial is a free, distributed source control management tool.
+It efficiently handles projects of any size
+and offers an easy and intuitive interface.")
+    (license gpl2+)))
+
+
 (define-public subversion
   (package
     (name "subversion")

[-- Attachment #1.3: 0xA70DA09E.asc --]
[-- Type: application/pgp-keys, Size: 1893 bytes --]

[-- Attachment #1.4: arne_babenhauserheide.vcf --]
[-- Type: text/x-vcard, Size: 366 bytes --]

begin:vcard
fn:Arne Babenhauserheide
n:Babenhauserheide;Arne
org:KIT;GHG,  IMK-ASF
adr;quoted-printable:;;Geb=C3=A4ude 435, Raum 410, Campus Nord;Karlsruhe;BW;76021;Deutschland
email;internet:arne.babenhauserheide@kit.edu
title:Doktorand
tel;work:+49 721 608-22885
x-mozilla-html:FALSE
url:http://www.imk-asf.kit.edu/874_1194.php
version:2.1
end:vcard


[-- Attachment #2: OpenPGP digital signature --]
[-- Type: application/pgp-signature, Size: 555 bytes --]

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

* Re: Add Package Mercurial
  2013-10-01 13:41       ` Arne Babenhauserheide (IMK)
@ 2013-10-01 22:04         ` Ludovic Courtès
  2013-10-11 14:52           ` Arne Babenhauserheide
  0 siblings, 1 reply; 8+ messages in thread
From: Ludovic Courtès @ 2013-10-01 22:04 UTC (permalink / raw)
  To: Arne Babenhauserheide (IMK); +Cc: guix-devel@gnu.org

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

Hi,

"Arne Babenhauserheide (IMK)" <arne.babenhauserheide@kit.edu> skribis:

> I attached an adapted version of the patch reusing the solution from Bazaar.

Thanks.  I had to add #:tests? #f so that it would build (because
‘python setup.py test’ is not supported):


[-- Warning: decoded text below may be mangled, UTF-8 assumed --]
[-- Attachment #2: Type: text/x-patch, Size: 1274 bytes --]

diff --git a/gnu/packages/version-control.scm b/gnu/packages/version-control.scm
index 04a6ae2..bc24eba 100644
--- a/gnu/packages/version-control.scm
+++ b/gnu/packages/version-control.scm
@@ -180,6 +180,34 @@ everything from small to very large projects with speed and efficiency.")
    (license gpl2)
    (home-page "http://git-scm.com/")))
 
+
+(define-public mercurial
+  (package
+    (name "mercurial")
+    (version "2.7.1")
+    (source
+     (origin
+      (method url-fetch)
+      (uri (string-append "http://mercurial.selenic.com/release/mercurial-" 
+                          version ".tar.gz"))
+      (sha256
+       (base32
+        "121m8f7vmipmdg00cnzdz2rjkgydh28mwfirqkrbs5fv089vywl4"))))
+    (build-system python-build-system)
+    (arguments
+     `(;; Restrict to python2, as python 3 would require
+       ;; the argument --c2to3
+       #:python ,python-2
+       #:tests? #f))
+    (home-page "http://mercurial.selenic.com")
+    (synopsis "Decentralized version control system")
+    (description
+     "Mercurial is a distributed source control management tool.
+It efficiently handles projects of any size and offers an easy and intuitive
+interface.")
+    (license gpl2+)))
+
+
 (define-public subversion
   (package
     (name "subversion")

[-- Attachment #3: Type: text/plain, Size: 452 bytes --]


But that’s not great.  Do you know how to run the test suite?

> Am 01.10.2013 15:24, schrieb Ludovic Courtès:
>> FWIW I never use the Git CLI, only Magit (in Emacs), so you may want to
>> try that one.
>
> I thought about that. Is it already compatible with Mercurial (so the
> investment would not only help fringe usecases)?

Magit is Git-only; there’s Monky, which mimics the basic functionality
of Magit, but for hg.

Ludo’.

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

* Re: Add Package Mercurial
  2013-10-01 22:04         ` Ludovic Courtès
@ 2013-10-11 14:52           ` Arne Babenhauserheide
  2013-10-11 20:19             ` Ludovic Courtès
  0 siblings, 1 reply; 8+ messages in thread
From: Arne Babenhauserheide @ 2013-10-11 14:52 UTC (permalink / raw)
  To: Ludovic Courtès; +Cc: guix-devel@gnu.org


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

Hi,

I adapted the patch: Disabled tests and added a FIXME note which links
to the required nose testing framework.

I hope it’s fit for getting into guix, now.
(it’s attached and inline)

Best wishes,
Arne

$ hg export --git tip
# HG changeset patch
# User Arne Babenhauserheide <arne.babenhauserheide@kit.edu>
# Date 1381502708 -7200
#      Fri Oct 11 16:45:08 2013 +0200
# Node ID 4e60285e8bf65478dccd96d8304f7c026a364e18
# Parent  a34f735e8b79e33072e37f2d1a8a750b0fb24a40
gnu: Add mercurial.

* gnu/packages/version-control.scm (mercurial): New variable.

diff --git a/gnu/packages/version-control.scm
b/gnu/packages/version-control.scm
--- a/gnu/packages/version-control.scm
+++ b/gnu/packages/version-control.scm
@@ -180,6 +180,36 @@
    (license gpl2)
    (home-page "http://git-scm.com/")))

+
+(define-public mercurial
+  (package
+    (name "mercurial")
+    (version "2.7.1")
+    (source
+     (origin
+      (method url-fetch)
+      (uri (string-append "http://mercurial.selenic.com/release/mercurial-"
+                          version ".tar.gz"))
+      (sha256
+       (base32
+        "121m8f7vmipmdg00cnzdz2rjkgydh28mwfirqkrbs5fv089vywl4"))))
+    (build-system python-build-system)
+    (arguments
+     `(;; Restrict to python2, as python 3 would require
+       ;; the argument --c2to3
+       #:python ,python-2
+       ;; FIXME: Disabled tests because they require the nose unit
+       ;; testing framework: https://nose.readthedocs.org/en/latest/
+       #:tests? #f))
+    (home-page "http://mercurial.selenic.com")
+    (synopsis "Decentralized version control system")
+    (description
+     "Mercurial is a free, distributed source control management tool.
+It efficiently handles projects of any size
+and offers an easy and intuitive interface.")
+    (license gpl2+)))
+
+
 (define-public subversion
   (package
     (name "subversion")


Am 02.10.2013 00:04, schrieb Ludovic Courtès:
> Hi,
> 
> "Arne Babenhauserheide (IMK)" <arne.babenhauserheide@kit.edu> skribis:
> 
>> I attached an adapted version of the patch reusing the solution from Bazaar.
> 
> Thanks.  I had to add #:tests? #f so that it would build (because
> ‘python setup.py test’ is not supported):
> 


[-- Attachment #1.2: version-control-add-mercurial-4e60285e8bf6.diff --]
[-- Type: text/plain, Size: 1643 bytes --]

# HG changeset patch
# User Arne Babenhauserheide <arne.babenhauserheide@kit.edu>
# Date 1381502708 -7200
#      Fri Oct 11 16:45:08 2013 +0200
# Node ID 4e60285e8bf65478dccd96d8304f7c026a364e18
# Parent  a34f735e8b79e33072e37f2d1a8a750b0fb24a40
gnu: Add mercurial.

* gnu/packages/version-control.scm (mercurial): New variable.

diff --git a/gnu/packages/version-control.scm b/gnu/packages/version-control.scm
--- a/gnu/packages/version-control.scm
+++ b/gnu/packages/version-control.scm
@@ -180,6 +180,36 @@
    (license gpl2)
    (home-page "http://git-scm.com/")))
 
+
+(define-public mercurial
+  (package
+    (name "mercurial")
+    (version "2.7.1")
+    (source
+     (origin
+      (method url-fetch)
+      (uri (string-append "http://mercurial.selenic.com/release/mercurial-"
+                          version ".tar.gz"))
+      (sha256
+       (base32
+        "121m8f7vmipmdg00cnzdz2rjkgydh28mwfirqkrbs5fv089vywl4"))))
+    (build-system python-build-system)
+    (arguments
+     `(;; Restrict to python2, as python 3 would require
+       ;; the argument --c2to3
+       #:python ,python-2
+       ;; FIXME: Disabled tests because they require the nose unit
+       ;; testing framework: https://nose.readthedocs.org/en/latest/
+       #:tests? #f))
+    (home-page "http://mercurial.selenic.com")
+    (synopsis "Decentralized version control system")
+    (description
+     "Mercurial is a free, distributed source control management tool.
+It efficiently handles projects of any size
+and offers an easy and intuitive interface.")
+    (license gpl2+)))
+
+
 (define-public subversion
   (package
     (name "subversion")

[-- Attachment #2: OpenPGP digital signature --]
[-- Type: application/pgp-signature, Size: 555 bytes --]

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

* Re: Add Package Mercurial
  2013-10-11 14:52           ` Arne Babenhauserheide
@ 2013-10-11 20:19             ` Ludovic Courtès
  0 siblings, 0 replies; 8+ messages in thread
From: Ludovic Courtès @ 2013-10-11 20:19 UTC (permalink / raw)
  To: Arne Babenhauserheide; +Cc: guix-devel@gnu.org

Arne Babenhauserheide <arne.babenhauserheide@kit.edu> skribis:

> I adapted the patch: Disabled tests and added a FIXME note which links
> to the required nose testing framework.

[...]

> $ hg export --git tip
> # HG changeset patch
> # User Arne Babenhauserheide <arne.babenhauserheide@kit.edu>
> # Date 1381502708 -7200
> #      Fri Oct 11 16:45:08 2013 +0200
> # Node ID 4e60285e8bf65478dccd96d8304f7c026a364e18
> # Parent  a34f735e8b79e33072e37f2d1a8a750b0fb24a40
> gnu: Add mercurial.
>
> * gnu/packages/version-control.scm (mercurial): New variable.

Applied, thanks!

Ludo’.

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

end of thread, other threads:[~2013-10-11 20:24 UTC | newest]

Thread overview: 8+ messages (download: mbox.gz / follow: Atom feed)
-- links below jump to the message on this page --
2013-09-27 13:04 Add Package Mercurial Arne Babenhauserheide (IMK)
2013-09-27 19:20 ` Ludovic Courtès
2013-10-01 12:46   ` Arne Babenhauserheide (IMK)
2013-10-01 13:24     ` Ludovic Courtès
2013-10-01 13:41       ` Arne Babenhauserheide (IMK)
2013-10-01 22:04         ` Ludovic Courtès
2013-10-11 14:52           ` Arne Babenhauserheide
2013-10-11 20:19             ` Ludovic Courtès

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).