[Top][All Lists]

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

Re: Our git just broke [PATCH]: gnu: Add stagit, adjust version-control.

From: ng0
Subject: Re: Our git just broke [PATCH]: gnu: Add stagit, adjust version-control.scm.
Date: Sun, 14 Aug 2016 18:24:45 +0000

Leo Famulari <address@hidden> writes:

> On Sat, Aug 13, 2016 at 10:41:59PM +1000, Ben Woodcroft wrote:
>> Hi,
>> I cannot currently build git on the master branch. I bisected and got to
>> this commit. I had a quick look but couldn't see what the problem was. The
>> new package builds fine. Can someone take a look please?
>> b3885778e8e438e8526a8ee9e96072fd00f5cae5 is the first bad commit
>> commit b3885778e8e438e8526a8ee9e96072fd00f5cae5
>> Author: ng0 <address@hidden>
>> Date:   Wed Aug 10 10:04:29 2016 +0000
>>     gnu: Add stagit.
>>     * gnu/packages/version-control.scm (stagit): New variable.
>>     Signed-off-by: Leo Famulari <address@hidden>
> Oops! I've reverted the commit.
> The variable expat is defined twice. We need to change
> version-control.scm to use a license prefix rather than selecting
> licenses.
> ng0, will you update version-control.scm to use a license prefix and
> re-send an updated stagit patch?

Done. I tried to built all the packages in version-control to assure that
nothing breaks this time ...and it already breaks at
python2-tempest-lib-0.12.0 with:
tempest_lib.tests.test_rest_clientNon-zero exit code (2) from test listing.
error: testr failed (3)
phase `check' failed after 1.5 seconds

As python2-tempest-lib-0.12.0 is not in
gnu/packages/version-control.scm, we have a problem there. Someone
should check this package as shows
that it has been failing for some time now, it last build in january.

>From 41f1a8b707e20c76ff5d04747c0de370ab899521 Mon Sep 17 00:00:00 2001
From: ng0 <address@hidden>
Date: Wed, 10 Aug 2016 10:04:29 +0000
Subject: [PATCH] gnu: Add stagit.

* gnu/packages/version-control.scm (stagit): New variable.
Import (guix licenses) with "license:" prefix.
 gnu/packages/version-control.scm | 83 ++++++++++++++++++++++++++--------------
 1 file changed, 54 insertions(+), 29 deletions(-)

diff --git a/gnu/packages/version-control.scm b/gnu/packages/version-control.scm
index 960ed56..7d0a6b0 100644
--- a/gnu/packages/version-control.scm
+++ b/gnu/packages/version-control.scm
@@ -9,6 +9,7 @@
 ;;; Copyright © 2015, 2016 Efraim Flashner <address@hidden>
 ;;; Copyright © 2015 Kyle Meyer <address@hidden>
 ;;; Copyright © 2015 Ricardo Wurmus <address@hidden>
+;;; Coypright © 2016 ng0 <address@hidden>
 ;;; This file is part of GNU Guix.
@@ -26,10 +27,7 @@
 ;;; along with GNU Guix.  If not, see <>.
 (define-module (gnu packages version-control)
-  #:use-module ((guix licenses)
-                #:select (asl2.0 bsd-2 bsd-3
-                          gpl1+ gpl2 gpl2+ gpl3+ lgpl2.1
-                          public-domain x11-style))
+  #:use-module ((guix licenses) #:prefix license:)
   #:use-module (guix utils)
   #:use-module (guix packages)
   #:use-module (guix download)
@@ -107,7 +105,7 @@
      "GNU Bazaar is a version control system that allows you to record
 changes to project files over time.  It supports both a distributed workflow
 as well as the classic centralized workflow.")
-    (license gpl2+)))
+    (license license:gpl2+)))
 (define-public git
   ;; Keep in sync with 'git-manpages'!
@@ -275,7 +273,7 @@ as well as the classic centralized workflow.")
     "Git is a free distributed version control system designed to handle
 everything from small to very large projects with speed and efficiency.")
-   (license gpl2)
+   (license license:gpl2)
    (home-page "";)))
 (define-public git-manpages
@@ -365,7 +363,7 @@ command.")))
 provided as a re-entrant linkable library with a solid API, allowing you to
 write native speed custom Git applications in any language with bindings.")
     ;; GPLv2 with linking exception
-    (license gpl2)))
+    (license license:gpl2)))
 (define-public cgit
@@ -426,7 +424,7 @@ write native speed custom Git applications in any language 
with bindings.")
      "CGit is an attempt to create a fast web interface for the Git SCM, using
 a built-in cache to decrease server I/O pressure.")
-    (license gpl2)))
+    (license license:gpl2)))
 (define-public shflags
@@ -470,7 +468,7 @@ different versions of getopt on various OSes make writing 
portable shell
 scripts difficult.  shFlags instead provides an API that doesn't change across
 shell and OS versions so the script writer can be confident that the script
 will work.")
-    (license lgpl2.1)))
+    (license license:lgpl2.1)))
 (define-public git-flow
@@ -513,7 +511,7 @@ management strategy that helps developers keep track of 
features, hotfixes,
 and releases in bigger software projects.  The git-flow library of git
 subcommands helps automate some parts of the flow to make working with it a
 lot easier.")
-    (license bsd-2)))
+    (license license:bsd-2)))
 (define-public git-test-sequence
   (let ((commit "48e5a2f5a13a5f30452647237e23362b459b9c76"))
@@ -548,7 +546,7 @@ lot easier.")
        "git-test-sequence is similar to an automated git bisect except it’s
 linear.  It will test every change between two points in the DAG.  It will
 also walk each side of a merge and test those changes individually.")
-      (license (x11-style "file://LICENSE")))))
+      (license (license:x11-style "file://LICENSE")))))
 (define-public gitolite
@@ -604,7 +602,7 @@ also walk each side of a merge and test those changes 
      "Gitolite is an access control layer on top of Git, providing fine access
 control to Git repositories.")
-    (license gpl2)))
+    (license license:gpl2)))
 (define-public mercurial
@@ -631,7 +629,7 @@ control to Git repositories.")
      "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+)))
+    (license license:gpl2+)))
 (define-public neon
@@ -679,7 +677,7 @@ abstract interface to parsing XML using libxml2 or expat, 
and wrappers for
 simplifying handling XML HTTP response bodies;
 WebDAV metadata support, wrappers for PROPFIND and PROPPATCH to simplify
 property manipulation.")
-    (license gpl2+))) ; for documentation and tests; source under lgpl2.0+
+    (license license:gpl2+))) ; for documentation and tests; source under 
 (define-public subversion
@@ -746,7 +744,7 @@ 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)))
+    (license license:asl2.0)))
 (define-public rcs
@@ -769,7 +767,7 @@ file-by-file basis, in contrast to subsequent version 
control systems such as
 CVS, Subversion, and Git.  This can make it suitable for system
 administration files, for example, which are often inherently local to one
-    (license gpl3+)))
+    (license license:gpl3+)))
 (define-public cvs
@@ -797,7 +795,7 @@ machine.")
 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+)))
+    (license license:gpl1+)))
 (define-public cvs-fast-export
@@ -836,7 +834,7 @@ The program can also produce a visualization of the 
resulting commit directed
 acyclic graph (DAG) in the input format of @uref{,
 Graphviz}.  The package also includes @command{cvssync}, a tool for mirroring
 masters from remote CVS hosts.")
-    (license gpl2+)))
+    (license license:gpl2+)))
 (define-public vc-dwim
@@ -862,7 +860,7 @@ using version control at the same time, for example by 
printing a reminder
 when a file change has been described in the ChangeLog but the file has not
 been added to the VC.  vc-chlog scans changed files and generates
 standards-compliant ChangeLog entries based on the changes that it detects.")
-    (license gpl3+)))
+    (license license:gpl3+)))
 (define-public diffstat
@@ -883,7 +881,7 @@ standards-compliant ChangeLog entries based on the changes 
that it detects.")
      "Diffstat reads the output of 'diff' and displays a histogram of the
 insertions, deletions, and modifications per-file.  It is useful for reviewing
 large, complex patch files.")
-    (license (x11-style "file://COPYING"))))
+    (license (license:x11-style "file://COPYING"))))
 (define-public cssc
@@ -925,7 +923,7 @@ large, complex patch files.")
     (description  "GNU CSSC provides a replacement for the legacy Unix source
 code control system SCCS.  This allows old code still under that system to be
 accessed and migrated on modern systems.")
-    (license gpl3+)))
+    (license license:gpl3+)))
 ;; This package can unfortunately work only in -TEST mode, since Aegis
 ;; requires that it is installed setuid root.
@@ -1009,7 +1007,7 @@ changes to a program independently, and Aegis coordinates 
integrating these
 changes back into the master source of the program, with as little disruption
 as possible.  Resolution of contention for source files, a major headache for
 any project with more than one developer, is one of Aegis's major functions.")
-    (license gpl3+)))
+    (license license:gpl3+)))
 (define-public reposurgeon
@@ -1061,7 +1059,7 @@ and can thus be used to script production of very 
high-quality conversions
 from Subversion to any supported Distributed Version Control System (DVCS).")
     ;; Most files are distributed under bsd-2, except 'repocutter' which is
     ;; under bsd-3.
-    (license (list bsd-2 bsd-3))))
+    (license (list license:bsd-2 license:bsd-3))))
 (define-public tig
@@ -1087,7 +1085,7 @@ from Subversion to any supported Distributed Version 
Control System (DVCS).")
      "Tig is an ncurses text user interface for Git, primarily intended as
 a history browser.  It can also stage hunks for commit, or colorize the
 output of the 'git' command.")
-    (license gpl2+)))
+    (license license:gpl2+)))
 (define-public findnewest
@@ -1114,7 +1112,7 @@ output of the 'git' command.")
      "Recursively find the newest file in a file tree and print its
 modification time.")
-    (license bsd-2)))
+    (license license:bsd-2)))
 (define-public myrepos
@@ -1143,7 +1141,7 @@ modification time.")
 fetching updates) over a collection of version control repositories.  It
 supports a large number of version control systems: Git, Subversion,
 Mercurial, Bazaar, Darcs, CVS, Fossil, and Veracity.")
-    (license gpl2+)))
+    (license license:gpl2+)))
 (define-public git-annex-remote-hubic
@@ -1174,7 +1172,7 @@ Mercurial, Bazaar, Darcs, CVS, Fossil, and Veracity.")
      "This package allows you to use your hubic account as a \"special
 repository\" with git-annex.")
-    (license gpl3+)))
+    (license license:gpl3+)))
 (define-public fossil
@@ -1248,5 +1246,32 @@ repository\" with git-annex.")
      "Fossil is a distributed source control management system which supports
 access and administration over HTTP CGI or via a built-in HTTP server.  It has
 a built-in wiki, built-in file browsing, built-in tickets system, etc.")
-    (license (list public-domain        ;src/miniz.c, src/shell.c
-                   bsd-2))))
+    (license (list license:public-domain        ;src/miniz.c, src/shell.c
+                   license:bsd-2))))
+(define-public stagit
+  (package
+    (name "stagit")
+    (version "0.4")
+    (source (origin
+              (method url-fetch)
+              (uri (string-append "";
+                                  name "-" version ".tar.gz"))
+              (sha256
+               (base32
+                "0z5r06wqrfnsz24ci4hjqbd62svclvhkgzaq9npsyjcp6jnf7izc"))))
+    (build-system gnu-build-system)
+    (arguments
+     `(#:tests? #f ; no tests
+       #:make-flags (list "CC=gcc"
+                          (string-append "PREFIX=" %output))
+       #:phases
+       (modify-phases %standard-phases
+         (delete 'configure)))) ; no configure
+    (inputs
+     `(("libgit2" ,libgit2)))
+    (home-page "";)
+    (synopsis "Static git page generator")
+    (description "Stagit creates static pages for git repositories, the 
results can
+be served with a HTTP file server.")
+    (license license:expat)))

♥Ⓐ  ng0
For non-prism friendly talk find me on

reply via email to

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