[PATCH] gnu: Add darcs.

  • Done
  • quality assurance status badge
Details
2 participants
  • contact.ng0
  • Kei Kebreau
Owner
unassigned
Submitted by
contact.ng0
Severity
normal
C
C
contact.ng0 wrote on 24 Feb 2017 22:04
(address . guix-patches@gnu.org)(name . ng0)(address . ng0@we.make.ritual.n0.is)
20170224210418.13734-1-contact.ng0@cryptolab.net
From: ng0 <ng0@we.make.ritual.n0.is>

* gnu/packages/version-control.scm (darcs): New variable.
---
gnu/packages/version-control.scm | 93 ++++++++++++++++++++++++++++++++++++++++
1 file changed, 93 insertions(+)

Toggle diff (117 lines)
diff --git a/gnu/packages/version-control.scm b/gnu/packages/version-control.scm
index 5c371b0ba..0cf19db2f 100644
--- a/gnu/packages/version-control.scm
+++ b/gnu/packages/version-control.scm
@@ -35,6 +35,7 @@
#:use-module (guix git-download)
#:use-module (guix build-system cmake)
#:use-module (guix build-system gnu)
+ #:use-module (guix build-system haskell)
#:use-module (guix build-system python)
#:use-module (guix build-system trivial)
#:use-module (gnu packages apr)
@@ -50,6 +51,7 @@
#:use-module (gnu packages flex)
#:use-module (gnu packages gettext)
#:use-module (gnu packages groff)
+ #:use-module (gnu packages haskell)
#:use-module (gnu packages linux)
#:use-module (gnu packages nano)
#:use-module (gnu packages ncurses)
@@ -1301,3 +1303,94 @@ a built-in wiki, built-in file browsing, built-in tickets system, etc.")
(description "Stagit creates static pages for git repositories, the results can
be served with a HTTP file server of your choice.")
(license license:expat)))
+
+;; Darcs has no https support: http://irclog.perlgeek.de/darcs/2016-09-17
+;; http://darcs.net/manual/Configuring_darcs.html#SECTION00440070000000000000
+;; and results of search engines will show that if the protocol is http, https
+;; is never mentioned.
+(define-public darcs
+ (package
+ (name "darcs")
+ (version "2.12.4")
+ (source
+ (origin
+ (method url-fetch)
+ (uri (string-append "https://hackage.haskell.org/package/darcs/"
+ "darcs-" version ".tar.gz"))
+ (sha256
+ (base32
+ "0jfwiwl5k8wspciq1kpmvh5yap4japrf97s9pvhcybxxhaj3ds28"))))
+ (build-system haskell-build-system)
+ (arguments
+ `(#:configure-flags '("-fpkgconfig" "-fcurl" "-flibiconv" "-fthreaded"
+ "-fnetwork-uri" "-fhttp" "--flag=executable"
+ "--flag=library")
+ #:tests? #f)) ; 20 failing shell tests out of over 400
+ (inputs
+ `(("ghc-cmdargs" ,ghc-cmdargs)
+ ("ghc-split" ,ghc-split)
+ ("ghc-test-framework-quickcheck2" ,ghc-test-framework-quickcheck2)
+ ("ghc-test-framework-hunit" ,ghc-test-framework-hunit)
+ ("ghc-test-framework" ,ghc-test-framework)
+ ("ghc-quickcheck" ,ghc-quickcheck)
+ ("ghc-findbin" ,ghc-findbin)
+ ("ghc-hunit" ,ghc-hunit)
+ ("ghc-array" ,ghc-array)
+ ("ghc-async" ,ghc-async)
+ ("ghc-attoparsec" ,ghc-attoparsec)
+ ("ghc-base16-bytestring" ,ghc-base16-bytestring)
+ ("ghc-binary" ,ghc-binary)
+ ("ghc-bytestring-builder" ,ghc-bytestring-builder)
+ ("ghc-cryptohash" ,ghc-cryptohash)
+ ("ghc-data-ordlist" ,ghc-data-ordlist)
+ ("ghc-directory" ,ghc-directory)
+ ("ghc-fgl" ,ghc-fgl)
+ ("ghc-system-filepath" ,ghc-system-filepath)
+ ("ghc-graphviz" ,ghc-graphviz)
+ ("ghc-hashable" ,ghc-hashable)
+ ("ghc-haskeline" ,ghc-haskeline)
+ ("ghc-html" ,ghc-html)
+ ("ghc-mmap" ,ghc-mmap)
+ ("ghc-mtl" ,ghc-mtl)
+ ("ghc-old-time" ,ghc-old-time)
+ ("ghc-parsec" ,ghc-parsec)
+ ("ghc-process" ,ghc-process)
+ ("ghc-random" ,ghc-random)
+ ("ghc-regex-applicative" ,ghc-regex-applicative)
+ ("ghc-regex-compat-tdfa" ,ghc-regex-compat-tdfa)
+ ("ghc-sandi" ,ghc-sandi)
+ ("ghc-shelly" ,ghc-shelly)
+ ("ghc-tar" ,ghc-tar)
+ ("ghc-transformers-compat" ,ghc-transformers-compat)
+ ("ghc-unix-compat" ,ghc-unix-compat)
+ ("ghc-utf8-string" ,ghc-utf8-string)
+ ("ghc-vector" ,ghc-vector)
+ ("ghc-zip-archive" ,ghc-zip-archive)
+ ("ghc-zlib" ,ghc-zlib)
+ ("ghc-http" ,ghc-http)
+ ("curl" ,curl)
+ ("ghc" ,ghc)
+ ("ncurses" ,ncurses)
+ ("perl" ,perl)
+ ("libiconv" ,libiconv)
+ ("ghc-network" ,ghc-network)
+ ("ghc-network-uri" ,ghc-network-uri)))
+ (native-inputs
+ `(("pkg-config" ,pkg-config)))
+ (home-page "http://darcs.net")
+ (synopsis "Distributed Revision Control System")
+ (description
+ "Darcs is a revision control system. It is:
+
+@enumerate
+@item Distributed: Every user has access to the full command set, removing boundaries
+between server and client or committer and non-committers.
+@item Interactive: Darcs is easy to learn and efficient to use because it asks you
+questions in response to simple commands, giving you choices in your work flow.
+You can choose to record one change in a file, while ignoring another. As you update
+from upstream, you can review each patch name, even the full diff for interesting
+patches.
+@item Smart: Originally developed by physicist David Roundy, darcs is based on a
+unique algebra of patches called @url{http://darcs.net/Theory,Patchtheory}.
+@end enumerate")
+ (license license:gpl2)))
--
2.11.1
N
(address . 25866@debbugs.gnu.org)
20170224211731.xz4pbx2u27djpyng@wasp
Attachment: file
K
K
Kei Kebreau wrote on 10 Apr 2017 23:28
(address . 25866-done@debbugs.gnu.org)
878tn854vm.fsf@openmailbox.org
ng0 <contact.ng0@cryptolab.net> writes:

Toggle quote (145 lines)
> On 17-02-24 21:04:18, contact.ng0@cryptolab.net wrote:
>> From: ng0 <ng0@we.make.ritual.n0.is>
>>
>> * gnu/packages/version-control.scm (darcs): New variable.
>
> For previous discussion, QA, etc use the archives starting September.
> It is good-as-is, the last problem is a problem caused by the unresolved
> <https://bugs.gnu.org/25240> directly or indirectly, and can not be
> fixed by this package (darcs) alone at this point.
>
> For the version, it depends on so many haskell packages with fixed
> versions, that I know these work for the version I packaged, which is
> one below recent release now. I want this to be added first as it is
> proven to work and build.
>
> Leo, I compared http://paste.lisp.org/display/339879 with my branch and
> the changes I had were locally, your paste was older than my version :)
> Cosmetic fixes mostly.
>
>> ---
>> gnu/packages/version-control.scm | 93 ++++++++++++++++++++++++++++++++++++++++
>> 1 file changed, 93 insertions(+)
>>
>> diff --git a/gnu/packages/version-control.scm b/gnu/packages/version-control.scm
>> index 5c371b0ba..0cf19db2f 100644
>> --- a/gnu/packages/version-control.scm
>> +++ b/gnu/packages/version-control.scm
>> @@ -35,6 +35,7 @@
>> #:use-module (guix git-download)
>> #:use-module (guix build-system cmake)
>> #:use-module (guix build-system gnu)
>> + #:use-module (guix build-system haskell)
>> #:use-module (guix build-system python)
>> #:use-module (guix build-system trivial)
>> #:use-module (gnu packages apr)
>> @@ -50,6 +51,7 @@
>> #:use-module (gnu packages flex)
>> #:use-module (gnu packages gettext)
>> #:use-module (gnu packages groff)
>> + #:use-module (gnu packages haskell)
>> #:use-module (gnu packages linux)
>> #:use-module (gnu packages nano)
>> #:use-module (gnu packages ncurses)
>> @@ -1301,3 +1303,94 @@ a built-in wiki, built-in file browsing, built-in tickets system, etc.")
>> (description "Stagit creates static pages for git repositories, the results can
>> be served with a HTTP file server of your choice.")
>> (license license:expat)))
>> +
>> +;; Darcs has no https support: http://irclog.perlgeek.de/darcs/2016-09-17
>> +;; http://darcs.net/manual/Configuring_darcs.html#SECTION00440070000000000000
>> +;; and results of search engines will show that if the protocol is http, https
>> +;; is never mentioned.
>> +(define-public darcs
>> + (package
>> + (name "darcs")
>> + (version "2.12.4")
>> + (source
>> + (origin
>> + (method url-fetch)
>> + (uri (string-append "https://hackage.haskell.org/package/darcs/"
>> + "darcs-" version ".tar.gz"))
>> + (sha256
>> + (base32
>> + "0jfwiwl5k8wspciq1kpmvh5yap4japrf97s9pvhcybxxhaj3ds28"))))
>> + (build-system haskell-build-system)
>> + (arguments
>> + `(#:configure-flags '("-fpkgconfig" "-fcurl" "-flibiconv" "-fthreaded"
>> + "-fnetwork-uri" "-fhttp" "--flag=executable"
>> + "--flag=library")
>> + #:tests? #f)) ; 20 failing shell tests out of over 400
>> + (inputs
>> + `(("ghc-cmdargs" ,ghc-cmdargs)
>> + ("ghc-split" ,ghc-split)
>> + ("ghc-test-framework-quickcheck2" ,ghc-test-framework-quickcheck2)
>> + ("ghc-test-framework-hunit" ,ghc-test-framework-hunit)
>> + ("ghc-test-framework" ,ghc-test-framework)
>> + ("ghc-quickcheck" ,ghc-quickcheck)
>> + ("ghc-findbin" ,ghc-findbin)
>> + ("ghc-hunit" ,ghc-hunit)
>> + ("ghc-array" ,ghc-array)
>> + ("ghc-async" ,ghc-async)
>> + ("ghc-attoparsec" ,ghc-attoparsec)
>> + ("ghc-base16-bytestring" ,ghc-base16-bytestring)
>> + ("ghc-binary" ,ghc-binary)
>> + ("ghc-bytestring-builder" ,ghc-bytestring-builder)
>> + ("ghc-cryptohash" ,ghc-cryptohash)
>> + ("ghc-data-ordlist" ,ghc-data-ordlist)
>> + ("ghc-directory" ,ghc-directory)
>> + ("ghc-fgl" ,ghc-fgl)
>> + ("ghc-system-filepath" ,ghc-system-filepath)
>> + ("ghc-graphviz" ,ghc-graphviz)
>> + ("ghc-hashable" ,ghc-hashable)
>> + ("ghc-haskeline" ,ghc-haskeline)
>> + ("ghc-html" ,ghc-html)
>> + ("ghc-mmap" ,ghc-mmap)
>> + ("ghc-mtl" ,ghc-mtl)
>> + ("ghc-old-time" ,ghc-old-time)
>> + ("ghc-parsec" ,ghc-parsec)
>> + ("ghc-process" ,ghc-process)
>> + ("ghc-random" ,ghc-random)
>> + ("ghc-regex-applicative" ,ghc-regex-applicative)
>> + ("ghc-regex-compat-tdfa" ,ghc-regex-compat-tdfa)
>> + ("ghc-sandi" ,ghc-sandi)
>> + ("ghc-shelly" ,ghc-shelly)
>> + ("ghc-tar" ,ghc-tar)
>> + ("ghc-transformers-compat" ,ghc-transformers-compat)
>> + ("ghc-unix-compat" ,ghc-unix-compat)
>> + ("ghc-utf8-string" ,ghc-utf8-string)
>> + ("ghc-vector" ,ghc-vector)
>> + ("ghc-zip-archive" ,ghc-zip-archive)
>> + ("ghc-zlib" ,ghc-zlib)
>> + ("ghc-http" ,ghc-http)
>> + ("curl" ,curl)
>> + ("ghc" ,ghc)
>> + ("ncurses" ,ncurses)
>> + ("perl" ,perl)
>> + ("libiconv" ,libiconv)
>> + ("ghc-network" ,ghc-network)
>> + ("ghc-network-uri" ,ghc-network-uri)))
>> + (native-inputs
>> + `(("pkg-config" ,pkg-config)))
>> + (home-page "http://darcs.net")
>> + (synopsis "Distributed Revision Control System")
>> + (description
>> + "Darcs is a revision control system. It is:
>> +
>> +@enumerate
>> +@item Distributed: Every user has access to the full command set, removing boundaries
>> +between server and client or committer and non-committers.
>> +@item Interactive: Darcs is easy to learn and efficient to use because it asks you
>> +questions in response to simple commands, giving you choices in your work flow.
>> +You can choose to record one change in a file, while ignoring another. As you update
>> +from upstream, you can review each patch name, even the full diff for interesting
>> +patches.
>> +@item Smart: Originally developed by physicist David Roundy, darcs is based on a
>> +unique algebra of patches called @url{http://darcs.net/Theory,Patchtheory}.
>> +@end enumerate")
>> + (license license:gpl2)))
>> --
>> 2.11.1
>>
>>
>>
>>

Pushed to master after a small discussion on IRC.
-----BEGIN PGP SIGNATURE-----

iQIzBAEBCAAdFiEEg7ZwOtzKO2lLzi2m5qXuPBlGeg0FAljr+Q0ACgkQ5qXuPBlG
eg3YtRAAxQmnyNNRwy9CeBN0Uq2BktcvbNWuV0Xf3bt9pstyGbHd2T/FkVsG25U+
OZL45hvkdzXtD/vIu2fjZVQT1oTbUK7DztSIFagZaye/6X9l/fDAuPr9mUBJAZ3D
jLveplukiUrtdpA6eRUnat4X1cTWeH8HPnY+bHQ32aB3gx/92SthwnvQu/Km2If2
6ynAEKWJZIOadNe5uiLXHJHXqjYnx/gM1wmy36aKaVhRBdHTddL2tIiR19vs8sUZ
MmE1RxKFrCbE1DdqZqnQeYMGhaV7+ncCDR+qaguSUwzuSnBlO39/XIaUQZHamFlQ
9DvbVodiG5MZ85x6BoYBnM7Iy02JP8U0OtUDPAzNDRdL4RtKJTV56mVBPkfJQZiC
WegprfEoDUVDgBRILqij07GrzdQ2i+ZoOz1M5ooY52eURDh66yIvGfJpp7WHW3l6
raJQOHvs9JFuRW6v14Ur08BEsIGLWsL8ePw7+GBvaejfGeWQcF1Rav6g6xjt3z8c
6Pn5qIWTqX20ko3NLv+JWVnNneg5NP6VLrGv94bf2sDzBsFBgbG/ZwDIiZVciZWI
XjcsbW7wQgabcknSttBIyB+EGaOqFXFT4a0DkrU5aWrzzRZqqtjQ1TbPwqBEcMQT
wuMHCe0lFi8Ke4V7+hUDC5eOZBE7CR6Ow5inN4hUGZsUDanOT3w=
=74A1
-----END PGP SIGNATURE-----

Closed
?
Your comment

This issue is archived.

To comment on this conversation send an email to 25866@debbugs.gnu.org

To respond to this issue using the mumi CLI, first switch to it
mumi current 25866
Then, you may apply the latest patchset in this issue (with sign off)
mumi am -- -s
Or, compose a reply to this issue
mumi compose
Or, send patches to this issue
mumi send-email *.patch