Re: [PATCH 42/42] gnu: Add darcs.
On Fri, Sep 23, 2016 at 02:27:28AM -0400, Leo Famulari wrote: > On Wed, Sep 21, 2016 at 08:27:47AM +, ng0 wrote: > > ;; > > http://darcs.net/manual/Configuring_darcs.html#SECTION00440070 > > Based on that link to the Darcs manual, my understanding is that users > must provide Darcs with a set of URL handlers in the form of shell > invocations in environment variables. I was wrong; those variables are no longer used by Darcs. HTTPS should "just work". Here I am using Darcs from Debian Stretch: $ darcs clone --debug-http https://dev.seek-together.space/s/fr33domlover/r/vervis * Trying 188.120.157.6... * Connected to dev.seek-together.space (188.120.157.6) port 443 (#0) * found 173 certificates in /etc/ssl/certs/ca-certificates.crt * found 692 certificates in /etc/ssl/certs * ALPN, offering http/1.1 * SSL connection using TLS1.2 / ECDHE_RSA_AES_256_GCM_SHA384 *server certificate verification OK *server certificate status verification SKIPPED *common name: dev.seek-together.space (matched) *server certificate expiration date OK *server certificate activation date OK *certificate public key: RSA *certificate version: #3 *subject: CN=dev.seek-together.space *start date: Tue, 09 Aug 2016 12:20:00 GMT *expire date: Mon, 07 Nov 2016 12:20:00 GMT *issuer: C=US,O=Let's Encrypt,CN=Let's Encrypt Authority X3 *compression: NULL * ALPN, server did not agree to a protocol > GET /s/fr33domlover/r/vervis/_darcs/prefs/motd HTTP/1.1 Host: dev.seek-together.space User-Agent: darcs/2.12.0 libcurl/7.47.0 Accept: */* Cache-Control: max-age=600 [... et cetera ...] But, with the WIP Guix package, our libcurl does not find the certificate store: $ darcs clone --debug-http https://dev.seek-together.space/s/fr33domlover/r/vervis * Trying 188.120.157.6... * TCP_NODELAY set * Connected to dev.seek-together.space (188.120.157.6) port 443 (#0) * ALPN, offering http/1.1 * SSL connection using TLS1.2 / ECDHE_RSA_AES_256_GCM_SHA384 * server certificate verification failed. CAfile: none CRLfile: none * Curl_http_done: called premature == 1 * Closing connection 0 * Hostname dev.seek-together.space was found in DNS cache * Trying 188.120.157.6... * TCP_NODELAY set * Connected to dev.seek-together.space (188.120.157.6) port 443 (#1) * ALPN, offering http/1.1 * SSL connection using TLS1.2 / ECDHE_RSA_AES_256_GCM_SHA384 * server certificate verification failed. CAfile: none CRLfile: none * Curl_http_done: called premature == 1 * Closing connection 1 * Hostname dev.seek-together.space was found in DNS cache * Trying 188.120.157.6... * TCP_NODELAY set * Connected to dev.seek-together.space (188.120.157.6) port 443 (#2) * ALPN, offering http/1.1 * SSL connection using TLS1.2 / ECDHE_RSA_AES_256_GCM_SHA384 * server certificate verification failed. CAfile: none CRLfile: none * Curl_http_done: called premature == 1 * Closing connection 2 darcs failed: Not a repository: https://dev.seek-together.space/s/fr33domlover/r/vervis (Peer certificate cannot be authenticated with given CA certificates) HINT: Do you have the right URI for the repository?
Re: [PATCH 42/42] gnu: Add darcs.
Leo Famulariwrites: > On Fri, Sep 23, 2016 at 08:08:37PM +, ng0 wrote: >> Leo Famulari writes: >> >> > On Fri, Sep 23, 2016 at 09:12:33AM +, ng0 wrote: >> >> I also think for reference we should keep the versions of packages it >> >> needs as they are so many. On the other hand hackage keeps the list of >> >> dependencies and versions of those, so... should I send a patch removing >> >> these comments? >> > >> > I think it's better to say how to learn that information. What's there >> > now will become obsolete sooner or later, and it's not clear to me how I >> > could update the information. >> > >> >> That's just taken directly from hackage and/or the initial error output >> and/or the haskell setup file. >> >> Should I adjust it? For me the source is 'normal' you find this >> information when you look for the application: >> https://hackage.haskell.org/package/darcs-2.12.4 > > It looks like hackage provides that version information for many of > their packages. So, I don't think we need to include it in our Darcs > package. > I Agree. You might want to check on (inputs (ghc)) as I have not checked again if this is already provided by the build-system. From 2367b485b7fad2b3220610c01e71acc781a83220 Mon Sep 17 00:00:00 2001 From: ng0 Date: Sun, 4 Sep 2016 16:10:02 + Subject: [PATCH] gnu: Add darcs. * gnu/packages/version-control.scm (darcs): New variable. --- gnu/packages/version-control.scm | 96 +++- 1 file changed, 95 insertions(+), 1 deletion(-) diff --git a/gnu/packages/version-control.scm b/gnu/packages/version-control.scm index 29559bd..082640d 100644 --- a/gnu/packages/version-control.scm +++ b/gnu/packages/version-control.scm @@ -10,7 +10,7 @@ ;;; Copyright © 2015 Kyle Meyer ;;; Copyright © 2015 Ricardo Wurmus ;;; Copyright © 2016 Leo Famulari -;;; Copyright © 2016 ng0 +;;; Copyright © 2016 ng0 ;;; ;;; This file is part of GNU Guix. ;;; @@ -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) @@ -1249,3 +1251,95 @@ 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#SECTION00440070 +;; 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") + ;; 20 failing shell tests out of over 400. We seem to be unable to + ;; get the file which should show us more about the failures. + #:tests? #f)) +(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) +
Re: [PATCH 42/42] gnu: Add darcs.
On Fri, Sep 23, 2016 at 08:08:37PM +, ng0 wrote: > Leo Famulariwrites: > > > On Fri, Sep 23, 2016 at 09:12:33AM +, ng0 wrote: > >> I also think for reference we should keep the versions of packages it > >> needs as they are so many. On the other hand hackage keeps the list of > >> dependencies and versions of those, so... should I send a patch removing > >> these comments? > > > > I think it's better to say how to learn that information. What's there > > now will become obsolete sooner or later, and it's not clear to me how I > > could update the information. > > > > That's just taken directly from hackage and/or the initial error output > and/or the haskell setup file. > > Should I adjust it? For me the source is 'normal' you find this > information when you look for the application: > https://hackage.haskell.org/package/darcs-2.12.4 It looks like hackage provides that version information for many of their packages. So, I don't think we need to include it in our Darcs package.
Re: [PATCH 42/42] gnu: Add darcs.
Leo Famulariwrites: > On Fri, Sep 23, 2016 at 09:12:33AM +, ng0 wrote: >> I also think for reference we should keep the versions of packages it >> needs as they are so many. On the other hand hackage keeps the list of >> dependencies and versions of those, so... should I send a patch removing >> these comments? > > I think it's better to say how to learn that information. What's there > now will become obsolete sooner or later, and it's not clear to me how I > could update the information. > That's just taken directly from hackage and/or the initial error output and/or the haskell setup file. Should I adjust it? For me the source is 'normal' you find this information when you look for the application: https://hackage.haskell.org/package/darcs-2.12.4 -- ng0
Re: [PATCH 42/42] gnu: Add darcs.
On Fri, Sep 23, 2016 at 09:12:33AM +, ng0 wrote: > I also think for reference we should keep the versions of packages it > needs as they are so many. On the other hand hackage keeps the list of > dependencies and versions of those, so... should I send a patch removing > these comments? I think it's better to say how to learn that information. What's there now will become obsolete sooner or later, and it's not clear to me how I could update the information.
Re: [PATCH 42/42] gnu: Add darcs.
Leo Famulariwrites: > On Tue, Sep 20, 2016 at 09:44:49PM -0400, Leo Famulari wrote: >> On Sun, Sep 18, 2016 at 04:10:22PM +, ng0 wrote: >> > * gnu/packages/version-control.scm (darcs): New variable. > > I just pushed most of the patches in this series, except for darcs, with > the changes I suggested. Many thanks! > I did not push the darcs patch itself yet. I will look into that later > today. > > I also did not push ghc-directory@1.2.2.0 because it is unused. > Okay. I think in darcs the configure flags can be shortened to 2 lines if the -f instead of --flag is used, as explained on the hackage page, but this is just cosmetic. I also think for reference we should keep the versions of packages it needs as they are so many. On the other hand hackage keeps the list of dependencies and versions of those, so... should I send a patch removing these comments? -- ng0
Re: [PATCH 42/42] gnu: Add darcs.
On Tue, Sep 20, 2016 at 09:44:49PM -0400, Leo Famulari wrote: > On Sun, Sep 18, 2016 at 04:10:22PM +, ng0 wrote: > > * gnu/packages/version-control.scm (darcs): New variable. I just pushed most of the patches in this series, except for darcs, with the changes I suggested. I did not push the darcs patch itself yet. I will look into that later today. I also did not push ghc-directory@1.2.2.0 because it is unused.
Re: [PATCH 42/42] gnu: Add darcs.
Leo Famulariwrites: > On Sun, Sep 18, 2016 at 04:10:22PM +, ng0 wrote: >> * gnu/packages/version-control.scm (darcs): New variable. > >> +;; Darcs has no https support: http://irclog.perlgeek.de/darcs/2016-09-17 >> +;; >> http://darcs.net/manual/Configuring_darcs.html#SECTION00440070 >> +;; 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 > > When the test suite fails, it provides a path to the log of the test > suite. I built with --keep-failed to inspect the log, but the file does > not exist. > > Since the test suite is not passing, and there is no log of the tests, > it's hard to decide what to do :) Strange. Can you add a comment for this in the package, so we can fix it eventually? > Does this darcs package work for your use case? Does anyone have advice? > Additionally: Should the complete commented inputs go? They are parts of base of ghc, but then again they display what ghc needs. So far I was able to "darcs get http://pijul.org;, I have not signed up at a darcs hosting to push, I thought someone will report a bug when a feature of darcs is broken. My use case worked. For all the other packages: The changes are okay for me. For @ version: The error message Guix throws should be extended. I am doing "-" versions, but I've also seen "@" versions in the code and was confused by the message guix gave me so I switched them to @. Thanks for reviewing this huge bundle! -- ng0
Re: [PATCH 42/42] gnu: Add darcs.
On Sun, Sep 18, 2016 at 04:10:22PM +, ng0 wrote: > * gnu/packages/version-control.scm (darcs): New variable. > +;; Darcs has no https support: http://irclog.perlgeek.de/darcs/2016-09-17 > +;; http://darcs.net/manual/Configuring_darcs.html#SECTION00440070 > +;; 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 When the test suite fails, it provides a path to the log of the test suite. I built with --keep-failed to inspect the log, but the file does not exist. Since the test suite is not passing, and there is no log of the tests, it's hard to decide what to do :) Does this darcs package work for your use case? Does anyone have advice?