[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]
Re: Extending 'guix download'
From: |
Ludovic Courtès |
Subject: |
Re: Extending 'guix download' |
Date: |
Mon, 02 Feb 2015 23:00:39 +0100 |
User-agent: |
Gnus/5.13 (Gnus v5.13) Emacs/24.4 (gnu/linux) |
David Thompson <address@hidden> skribis:
> I'm looking for thoughts about what the CLI should look like for an
> improved 'guix download' that is capable of downloading git repos, svn
> repos, etc. in addition to files over HTTP.
(It handles any scheme supported by ‘url-fetch’, which includes
mirror:// etc.)
> There could be to be additional context-sensitive switches to specify
> details beyond a URL. For example, git repos need a commit SHA.
>
> guix download --method=git --commit=74217b9 address@hidden/foo/foo.git
>
> Or perhaps more flags aren't needed and we can use a specific order of
> arguments:
>
> guix download --method=git address@hidden/foo/foo.git 74217b9
>
> Or we could create subcommands for each download method:
>
> guix download git address@hidden/foo/foo.git 74217b9
That would be useful. Option #3 is too verbose IMO. I have a slight
preference for #2.
The question is more whether the implementation could automatically map
command-line arguments to objects (‘git-reference’, ‘svn-reference’,
etc.), or if we’d rather go for something custom.
The former might be nice but might result in a clumsy CLI; the latter is
less elegant but might allow for a nicer CLI.
WDYT?
Ludo’.