unofficial mirror of guix-patches@gnu.org 
 help / color / mirror / code / Atom feed
From: Christopher Baines <mail@cbaines.net>
To: Leo Famulari <leo@famulari.name>
Cc: 30214@debbugs.gnu.org
Subject: [bug#30214] [PATCH 10/10] gnu: Add mongo-tools.
Date: Tue, 23 Jan 2018 19:59:53 +0000	[thread overview]
Message-ID: <87shaw5osm.fsf@cbaines.net> (raw)
In-Reply-To: <20180122220133.GF15170@jasmine.lan>

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


Leo Famulari <leo@famulari.name> writes:

> On Mon, Jan 22, 2018 at 09:08:30PM +0000, Christopher Baines wrote:
>> * gnu/packages/databases.scm (mongo-tools): New variable.
>
> Can you add some comments explaining the following section?
>
>> +         (replace 'build
>> +           (lambda* (#:key inputs outputs #:allow-other-keys)
>> +             (let ((bash (which "bash"))

bash here is unused, I forget where it came from. I'll remove it.

>> +                   (out (assoc-ref outputs "out")))
>> +                (let build ((tools
>> +                             '("bsondump" "mongodump" "mongoexport" "mongofiles"
>> +                               "mongoimport" "mongooplog" "mongorestore"
>> +                               "mongostat" "mongotop")))
>> +                  (if (null? tools)
>> +                      #t
>> +                      (if (let* ((tool (car tools))
>> +                                 (command
>> +                                  `("go" "install" "-v"
>> +                                    "-tags=\"ssl sasl\""
>> +                                    "-ldflags"
>
> This -ldflags argument avoids the go-build-system's default ldflags,
> which strip the debugging symbols. Okay if that's what you intended.

The build phase is a bit of guesswork from me, plus some prior art in
the mongo-tools README [1] and the Debian package rules file [2]. I
think I got the -ldflags from the latter. It sounds like stripping debug
symbols is a good default behaviour, but I'm only guessing as to what
this means.

1: https://github.com/mongodb/mongo-tools#building-tools
2: https://anonscm.debian.org/cgit/pkg-mongodb/mongo-tools.git/tree/debian/rules

>> +                                    "-extldflags=-Wl,-z,now,-z,relro"
>> +                                    ,(string-append
>> +                                      "src/github.com/mongodb/mongo-tools/"
>> +                                      tool "/main/" tool ".go"))))
>> +                            (simple-format #t "build: running ~A\n"
>> +                                           (string-join command))
>> +                            (zero? (apply system* command)))
>> +                          (build (cdr tools))
>> +                          #f)))))))))
>
> Do you think the go-build-system should accept some sort of #:make-flags
> argument to simplify this sort of thing?

Maybe, but I'm not sure of how many other packages will be similar to
mongo-tools.

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

  reply	other threads:[~2018-01-23 20:01 UTC|newest]

Thread overview: 53+ messages / expand[flat|nested]  mbox.gz  Atom feed  top
2018-01-22 20:51 [bug#30214] [PATCH]: Add mongo-tools Christopher Baines
2018-01-22 21:08 ` [bug#30214] [PATCH 01/10] gnu: Add go-golang.org-x-crypto-ssh-terminal Christopher Baines
2018-01-22 21:08   ` [bug#30214] [PATCH 02/10] gnu: Add go-github.com-howeyc-gopass Christopher Baines
2018-01-22 21:53     ` Leo Famulari
2018-01-23 19:45       ` Christopher Baines
2018-01-23 20:51         ` Leo Famulari
2018-01-27 15:16           ` Christopher Baines
2018-01-22 21:08   ` [bug#30214] [PATCH 03/10] gnu: Add go-github.com-jessevdk-go-flags Christopher Baines
2018-01-22 21:54     ` Leo Famulari
2018-01-23 19:51       ` Christopher Baines
2018-01-23 20:29         ` Leo Famulari
2018-01-23 20:34           ` Christopher Baines
2018-01-23 20:44             ` Leo Famulari
2018-01-27 15:15               ` Christopher Baines
2018-01-22 21:08   ` [bug#30214] [PATCH 04/10] gnu: Add go-gopkg.in-check.v1 Christopher Baines
2018-01-22 21:08   ` [bug#30214] [PATCH 05/10] gnu: Add daemontools Christopher Baines
2018-01-22 21:57     ` Leo Famulari
2018-01-23 19:54       ` Christopher Baines
2018-01-23 20:30         ` Leo Famulari
2018-01-22 21:08   ` [bug#30214] [PATCH 06/10] gnu: Add go-gopkg.in-mgo.v2 Christopher Baines
2018-01-22 21:08   ` [bug#30214] [PATCH 07/10] gnu: Add go-gopkg.in-tomb.v2 Christopher Baines
2018-01-22 21:08   ` [bug#30214] [PATCH 08/10] gnu: Add go-github.com-mattn-go-runewidth Christopher Baines
2018-01-22 21:08   ` [bug#30214] [PATCH 09/10] gnu: Add go-github.com-nsf-termbox-go Christopher Baines
2018-01-22 21:08   ` [bug#30214] [PATCH 10/10] gnu: Add mongo-tools Christopher Baines
2018-01-22 22:01     ` Leo Famulari
2018-01-23 19:59       ` Christopher Baines [this message]
2018-01-23 20:44         ` Leo Famulari
2018-01-22 21:52   ` [bug#30214] [PATCH 01/10] gnu: Add go-golang.org-x-crypto-ssh-terminal Leo Famulari
2018-01-23 19:42     ` Christopher Baines
2018-01-22 21:51 ` [bug#30214] [PATCH]: Add mongo-tools Leo Famulari
2018-01-23 19:41   ` Christopher Baines
2018-01-23 20:21 ` [bug#30214] [PATCH 01/10] gnu: Add go-golang.org-x-crypto-ssh-terminal Christopher Baines
2018-01-23 20:21   ` [bug#30214] [PATCH 02/10] gnu: Add go-github.com-howeyc-gopass Christopher Baines
2018-01-23 20:21   ` [bug#30214] [PATCH 03/10] gnu: Add go-github.com-jessevdk-go-flags Christopher Baines
2018-01-23 20:21   ` [bug#30214] [PATCH 04/10] gnu: Add go-gopkg.in-check.v1 Christopher Baines
2018-01-23 20:21   ` [bug#30214] [PATCH 05/10] gnu: Add daemontools Christopher Baines
2018-01-23 20:21   ` [bug#30214] [PATCH 06/10] gnu: Add go-gopkg.in-mgo.v2 Christopher Baines
2018-01-23 20:21   ` [bug#30214] [PATCH 07/10] gnu: Add go-gopkg.in-tomb.v2 Christopher Baines
2018-01-23 20:22   ` [bug#30214] [PATCH 08/10] gnu: Add go-github.com-mattn-go-runewidth Christopher Baines
2018-01-23 20:22   ` [bug#30214] [PATCH 09/10] gnu: Add go-github.com-nsf-termbox-go Christopher Baines
2018-01-23 20:22   ` [bug#30214] [PATCH 10/10] gnu: Add mongo-tools Christopher Baines
2018-01-27 15:00 ` [bug#30214] [PATCH 01/10] gnu: Add go-golang.org-x-crypto-ssh-terminal Christopher Baines
2018-01-27 15:00   ` [bug#30214] [PATCH 02/10] gnu: Add go-github.com-howeyc-gopass Christopher Baines
2018-01-27 15:00   ` [bug#30214] [PATCH 03/10] gnu: Add go-github.com-jessevdk-go-flags Christopher Baines
2018-01-27 15:00   ` [bug#30214] [PATCH 04/10] gnu: Add go-gopkg.in-check.v1 Christopher Baines
2018-01-27 15:00   ` [bug#30214] [PATCH 05/10] gnu: Add daemontools Christopher Baines
2018-01-27 15:00   ` [bug#30214] [PATCH 06/10] gnu: Add go-gopkg.in-mgo.v2 Christopher Baines
2018-01-27 15:00   ` [bug#30214] [PATCH 07/10] gnu: Add go-gopkg.in-tomb.v2 Christopher Baines
2018-01-27 15:00   ` [bug#30214] [PATCH 08/10] gnu: Add go-github.com-mattn-go-runewidth Christopher Baines
2018-01-27 15:00   ` [bug#30214] [PATCH 09/10] gnu: Add go-github.com-nsf-termbox-go Christopher Baines
2018-01-27 15:00   ` [bug#30214] [PATCH 10/10] gnu: Add mongo-tools Christopher Baines
2018-01-29 21:52   ` [bug#30214] [PATCH 01/10] gnu: Add go-golang.org-x-crypto-ssh-terminal Leo Famulari
2018-01-30  7:49     ` bug#30214: " Christopher Baines

Reply instructions:

You may reply publicly to this message via plain-text email
using any one of the following methods:

* Save the following mbox file, import it into your mail client,
  and reply-to-all from there: mbox

  Avoid top-posting and favor interleaved quoting:
  https://en.wikipedia.org/wiki/Posting_style#Interleaved_style

  List information: https://guix.gnu.org/

* Reply using the --to, --cc, and --in-reply-to
  switches of git-send-email(1):

  git send-email \
    --in-reply-to=87shaw5osm.fsf@cbaines.net \
    --to=mail@cbaines.net \
    --cc=30214@debbugs.gnu.org \
    --cc=leo@famulari.name \
    /path/to/YOUR_REPLY

  https://kernel.org/pub/software/scm/git/docs/git-send-email.html

* If your mail client supports setting the In-Reply-To header
  via mailto: links, try the mailto: link
Be sure your reply has a Subject: header at the top and a blank line before the message body.
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).