branch master updated: doc: Add Guix Days 2020 notes on "The Perfect Setup".

2020-02-17 Thread Pierre Neidhardt
This is an automated email from the git hooks/post-receive script.

ambrevar pushed a commit to branch master
in repository maintenance.

The following commit(s) were added to refs/heads/master by this push:
 new 4b2000a  doc: Add Guix Days 2020 notes on "The Perfect Setup".
4b2000a is described below

commit 4b2000ad12111e146ab43db2cdcac0b7805d763a
Author: Pierre Neidhardt 
AuthorDate: Mon Feb 17 11:59:17 2020 +0100

doc: Add Guix Days 2020 notes on "The Perfect Setup".

* doc/guix-days-2020/perfect-setup.org: New file.
---
 doc/guix-days-2020/perfect-setup.org | 149 +++
 1 file changed, 149 insertions(+)

diff --git a/doc/guix-days-2020/perfect-setup.org 
b/doc/guix-days-2020/perfect-setup.org
new file mode 100644
index 000..c70260c
--- /dev/null
+++ b/doc/guix-days-2020/perfect-setup.org
@@ -0,0 +1,149 @@
+* The Perfect Setup
+
+The manual mentions a "Perfect Setup" which is a rather pompous title
+considering the many shortcomings it currently has! :)
+
+Let's list the main pain points below and some suggestions on how to fix them.
+
+** Too Emacsy
+
+Most tools for hacking Guix imply the use of Emacs.  Even Guile-Studio is Emacs
+under the hood.  This is the source of a few problems:
+
+- Emacs has a steep learning curve which may overwhelm newcomers and thus deter
+  Guix adoption.
+
+- Non-Emacs users may want to stick to their favourite editor.
+
+We need to work on integrating Guix with Vim, etc.
+
+** Emacs-guix.el does not work with channels
+
+https://github.com/alezost/guix.el/issues/34
+
+** Recommended Emacs packages
+
+We could add this to The Perfect Setup:
+
+- Magit
+
+- Yasnippet to automate the redaction of commit message.
+  Add this to your Emacs config:
+
+  #+begin_src elisp
+  (when (require 'yasnippet nil 'noerror)
+(yas-global-mode 1)
+(add-to-list 'yas-snippet-dirs
+ (expand-file-name "etc/snippets" "~/projects/guix")))
+  #+end_src
+
+- guix.el
+  Try the development commands as well as the log modes.
+
+- Helm / Ivy with =imenu= (fixed in Emacs 27) to browse package definitions
+  (fuzzy live search).
+
+  Fix for Emacs <27 here: https://github.com/alezost/emacs-config
+
+- engine-mode.el to browse the mailing lists from Emacs:
+
+  #+begin_src elisp
+(defun engine-eww-function (url  _)
+  (interactive)
+  (eww url))
+
+(defengine guix-devel
+  
"https://lists.gnu.org/archive/cgi-bin/namazu.cgi?idxname=guix-devel=Search=%s;
+  :keybinding "gud"
+  :browser 'engine-eww-function)
+
+(defengine guix-help
+  
"https://lists.gnu.org/archive/cgi-bin/namazu.cgi?idxname=help-guix=Search!=%s;
+  :keybinding "guh"
+  :browser 'engine-eww-function)
+  #+end_src
+
+- debbugs.el to browse and apply patches from Emacs.
+  Try =debbugs-gnu-bugs= to go to a given bug number directly.
+  Also try =debbugs-org= and the following snippet:
+
+  #+begin_src elisp
+(defun guix-debbugs-gnu ( severities packages archivedp suppress tags)
+  "Like `debbugs-gnu' but for the Guix project."
+  (interactive)
+  (let ((debbugs-gnu-default-packages '("guix-patches" "guix")))
+(if (called-interactively-p)
+(call-interactively 'debbugs-gnu)
+  (debbugs-gnu severities packages archivedp suppress tags
+  #+end_src
+
+  To apply patches, mark the corresponding emails then press press "|"
+  (gnus-summary-pipe-output) and type =cd ~/guix && git am= (change the path as
+  appropriate).
+
+- Geiser for Guile hacking.  You need to tell Emacs to add the checkouts of 
Guix
+  and the channels that you use in order to load hack a Guix-related module 
from
+  the REPL.
+
+  #+begin_src elisp
+  (dolist (dir '("~/projects/guix" "~/projects/my-guix-channel"))
+(when (file-directory-p dir)
+  (add-to-list 'geiser-guile-load-path dir)))
+  #+end_src
+
+  Geiser needs more work, in particular:
+
+  https://gitlab.com/jaor/geiser/issues/293
+  https://gitlab.com/jaor/geiser/issues/294
+  https://gitlab.com/jaor/geiser/issues/295
+  https://gitlab.com/jaor/geiser/issues/296
+
+  Something that many Guix hackers didn't seem to know: on error you can 
display
+  the backtrace with all local values for all the frames with
+
+  #+begin_src scheme
+  ,backtrace #:full? #t
+  #+end_src
+
+  or
+
+  #+begin_src scheme
+  ,bt #:full? #t
+  #+end_src
+
+  It's cumbersome to write though and it would be nicer to implement
+  https://gitlab.com/jaor/geiser/issues/295.
+
+- Paredit, Parinfer, Lispy, symex
+
+  While =paredit= is the most famous package for enhanced Lisp editing, the
+  other ones might be more modern and worth checking out.
+  For instance, have a look at the demos for Lisp:
+
+  https://github.com/abo-abo/lispy#demos
+
+** Configuration sharing hub
+
+We don't really have a way of sharing Guix tips and configurations.
+
+For now, all we have is
+
+- https://old.reddit.

01/02: doc: Fix typos in Guix Days 2020 "Parameterized packages".

2020-02-17 Thread Pierre Neidhardt
ambrevar pushed a commit to branch master
in repository maintenance.

commit 26ea4ab4c6789ab971016f90665cd15d37386e4b
Author: Pierre Neidhardt 
AuthorDate: Mon Feb 17 11:22:49 2020 +0100

doc: Fix typos in Guix Days 2020 "Parameterized packages".

* doc/guix-days-2020/parameterized-packages-guix-days: Do it.
---
 .../parameterized-packages-guix-days.org   | 24 +++---
 1 file changed, 12 insertions(+), 12 deletions(-)

diff --git a/doc/guix-days-2020/parameterized-packages-guix-days.org 
b/doc/guix-days-2020/parameterized-packages-guix-days.org
index 96f2921..e1aead5 100644
--- a/doc/guix-days-2020/parameterized-packages-guix-days.org
+++ b/doc/guix-days-2020/parameterized-packages-guix-days.org
@@ -1,10 +1,10 @@
 * Parameterized Packages
 ** Definititions
 *** USE flags
-The inspiration for Parameterized Packages in guix largely comes from
+The inspiration for Parameterized Packages in Guix largely comes from
 Gentoo Linux, which is well known for its powerful 
[[https://wiki.gentoo.org/wiki/USE_flag][USE flags]], which
 allow the end user to customize various properties of the package
-build process. Common USE flags include *X*, for enabling X11 support,
+build process.  Common USE flags include *X*, for enabling X11 support,
 *dbus* to toggle dbus integration, and *debug* to enable debugging
 support.
 
@@ -22,40 +22,40 @@ any combination of parameters.
 ** Integration with Functional Builds
 A common problem with Gentoo USE flags occurs when packages in a user
 profile themselves depend the same package, only with conflicting USE
-flags set. Fortunately, guix's functional package builds allow us to
+flags set.  Fortunately, Guix's functional package builds allow us to
 have multiple versions of a package in the store that differ only in
 the parameter set.
 *** Hackability / customizability
-An easy interface for package customization would further guix's goal
+An easy interface for package customization would further Guix's goal
 of being a hackable package manager.
 ** Disadvantages
 *** Complexity
 The flipside of increased expressiveness in package definitions is
 increased complexity. As the number of parameters grows, there is a
 explosion in the number of possible parameter combinations. This means
-that guix may be unable to test all possibile parameter combinations
-available to the end user. 
+that Guix may be unable to test all possibile parameter combinations
+available to the end user.
 *** Substitutes
 When a user customizes their package parameters, they are creating a
 distinct version of the package that will have a unique store
-hash. Therefore unless guix dedicates resources to building
+hash.  Therefore unless Guix dedicates resources to building
 substitutes for common package parameters, they will have to compile
 everything themselves.
 ** Questions / Discussions
 *** Dealing with propagation
 We agreed that we want to to develop an alternative approach to the
-Gentoo USE flag system. Guix packages should be able to declare which
+Gentoo USE flag system.  Guix packages should be able to declare which
 parameters that they understand, and in addition we believe that guix
 packages should explicitly declare which parameters are allowed to
-propagate to any dependencies of the package. If a parameter is not
+propagate to any dependencies of the package.  If a parameter is not
 allowed to propagate, then when the dependencies are evaluated, they
 will not see that the parameter has been set, instead falling back to
-the parameter default. In addition, packages will not be able to set
+the parameter default.  In addition, packages will not be able to set
 any additional parameters for their dependencies that the user has not
 already declared.
-*** Technical Considerations
+*** Technical considerations
  Host instead of build side
 Because we want to support parameters that can add additional
 dependencies to the package, the parameter handling logic needs to
-occur on the host side. One possibility suggested was for the
+occur on the host side.  One possibility suggested was for the
 parameters to be evaluated when the package is lowered into a bag.



02/02: doc: Add "Readability" section to Guix Days 2020 "Parameterized packages".

2020-02-17 Thread Pierre Neidhardt
ambrevar pushed a commit to branch master
in repository maintenance.

commit c374a8fd9aec1ae0d2699d0793a44b40c7846c94
Author: Pierre Neidhardt 
AuthorDate: Mon Feb 17 11:26:24 2020 +0100

doc: Add "Readability" section to Guix Days 2020 "Parameterized packages".

* doc/guix-days-2020/parameterized-packages-guix-days: Do it.
---
 doc/guix-days-2020/parameterized-packages-guix-days.org | 4 
 1 file changed, 4 insertions(+)

diff --git a/doc/guix-days-2020/parameterized-packages-guix-days.org 
b/doc/guix-days-2020/parameterized-packages-guix-days.org
index e1aead5..4a30ca4 100644
--- a/doc/guix-days-2020/parameterized-packages-guix-days.org
+++ b/doc/guix-days-2020/parameterized-packages-guix-days.org
@@ -35,6 +35,10 @@ increased complexity. As the number of parameters grows, 
there is a
 explosion in the number of possible parameter combinations. This means
 that Guix may be unable to test all possibile parameter combinations
 available to the end user.
+*** Readability
+To apply a parameter to a package definition, we need a bunch of ~(if
+flag-is-set ...)~.  This can make the package definitions significantly more
+cumboersome to read.  Helper macros or functions could help to some extent.
 *** Substitutes
 When a user customizes their package parameters, they are creating a
 distinct version of the package that will have a unique store



branch master updated (d5d410a -> c374a8f)

2020-02-17 Thread Pierre Neidhardt
ambrevar pushed a change to branch master
in repository maintenance.

from d5d410a  hydra: web: Update gwl-snapshot.
 new 26ea4ab  doc: Fix typos in Guix Days 2020 "Parameterized packages".
 new c374a8f  doc: Add "Readability" section to Guix Days 2020 
"Parameterized packages".

The 2 revisions listed above as "new" are entirely new to this
repository and will be described in separate emails.  The revisions
listed as "add" were already present in the repository and have only
been added to this reference.


Summary of changes:
 .../parameterized-packages-guix-days.org   | 28 --
 1 file changed, 16 insertions(+), 12 deletions(-)



branch master updated: talks: fosdem2020-search-discovery: Finalize.

2020-01-31 Thread Pierre Neidhardt
This is an automated email from the git hooks/post-receive script.

ambrevar pushed a commit to branch master
in repository maintenance.

The following commit(s) were added to refs/heads/master by this push:
 new fe8f739  talks: fosdem2020-search-discovery: Finalize.
fe8f739 is described below

commit fe8f73971d452b43fc29ea29839a74f2a372261c
Author: Pierre Neidhardt 
AuthorDate: Fri Jan 31 18:17:12 2020 +0100

talks: fosdem2020-search-discovery: Finalize.

* talks/fosdem-2020/search-discovery/search-discovery.org: Edit.
---
 .../search-discovery/search-discovery.org  | 99 --
 1 file changed, 53 insertions(+), 46 deletions(-)

diff --git a/talks/fosdem-2020/search-discovery/search-discovery.org 
b/talks/fosdem-2020/search-discovery/search-discovery.org
index 8c025ae..a459de4 100644
--- a/talks/fosdem-2020/search-discovery/search-discovery.org
+++ b/talks/fosdem-2020/search-discovery/search-discovery.org
@@ -1,6 +1,7 @@
 #+AUTHOR: Pierre Neidhardt
 #+EMAIL: m...@ambrevar.xyz
-#+TITLE: Search & discover packages and services with GNU Guix
+#+TITLE: Search & discover packages and services
+#+SUBTITLE: with GNU Guix
 
 #+OPTIONS: reveal_single_file:t
 
@@ -11,11 +12,12 @@
 #+REVEAL_PLUGINS: (highlight)
 #+REVEAL_THEME: night
 
-#+REVEAL_MAX_SCALE: 0.6
+# #+REVEAL_MAX_SCALE: 0.6
 
 #+REVEAL_TITLE_SLIDE_BACKGROUND: ./images/Guix_logo_noname.svg.png
 #+REVEAL_TITLE_SLIDE_BACKGROUND_SIZE: 550px
 
+#+TODO: Zoom out title.
 #+TODO: Talk about guile?
 
 * Sharing matters
@@ -25,13 +27,15 @@
 # : The power of the data that other[s] have collected is locked up and we 
need to
 # : get it unlocked so we can tackle those huge problems.
 
-: A lot of the state of knowledge of the human race at the moment is on 
databases,
-: often sitting in their computers, and actually, currently not shared.
+#+begin_quote
+A lot of the state of knowledge of the human race at the moment is on 
databases,
+often sitting in their computers, and actually, currently not shared.
+#+end_quote
 
 -- Tim Berners-Lee
 "The next web" (2009)
 
-#+begin_notes
+#+BEGIN_NOTES
 In 2009, TBL gave a speech on "The next web".
 
 Sharing matters:
@@ -43,13 +47,13 @@ Sharing matters:
 Today we are at the free software conference where everyone understands this 
and
 yet, I would argue, that we are still not that good at sharing.  A lot of time
 and effort goes to waste.
-#+end_notes
+#+END_NOTES
 
-* Sharing is nothing without searching
+* Sharing is nothing without discoverability
 
-Efficient sharing means equally efficiant discovery.
+Efficient sharing means equally efficient discovery.
 
-#+begin_notes
+#+BEGIN_NOTES
 How do we find the program that we are looking for?
 Let me rephrase: How do we find the program that does the job for us?
 
@@ -58,9 +62,9 @@ We don't expect to program them: we expect to run a program 
and get the job done
 
 User experience question: when first confronted with a computer, how do we know
 which program to run? => Tribal knowledge (e.g. VLC is famous because it's 
famous).
-#+end_notes
+#+END_NOTES
 
-* Dotfiles, or "Yet another home-made service"
+* Dotfiles, or "Yet another home-made service"?
 
 #+TODO: Take data from GitHub, gitlab "dotfiles" repositories
 
@@ -73,20 +77,20 @@ 
https://github.com/search?o=desc=dotfiles=stars=Repositories
 
 # TODO: Average of ??? lines.
 
-#+begin_notes
+#+BEGIN_NOTES
 Show of hands: who has spent too much time on their dotfiles?
 
 What is a dotfile really?  It's just another home-made service.
 
 Just like a program, it gets the job done.  And when start thinking this way, 
we
 start realizing that it's only a blurred line between services and packages.
-#+end_notes
+#+END_NOTES
 
 * First-class services
 
 Or "The end of dotfiles!"
 
-#+begin_notes
+#+BEGIN_NOTES
 My claim: we can put an end to dotfiles!
 
 Rephrase: An end to "egoistic un-reusable dotfiles".
@@ -97,9 +101,9 @@ Dream: Just need to declare which program and services you 
want to use and your
 are done.  This could tailor to your most specific needs.
 
 Service example: daily backup of my data with rsync+ssh/vpn.
-#+end_notes
+#+END_NOTES
 
-* Example
+** Example
 
 # TODO: Finish service example
 #+begin_src scheme
@@ -115,103 +119,100 @@ Service example: daily backup of my data with 
rsync+ssh/vpn.
 
 # TODO: More examples?
 
-* Recipe for first-class services
+** Recipe for first-class services
 
 Just use GNU Guix and GNU Shepherd!
 
 - Shepherd services drag Guix dependent packages automatically.
 - Can be installed everywhere.
 
-#+begin_notes
+#+BEGIN_NOTES
 It's hard to fix it for every distribution.
 Since Guix is universal, it fixes it for everyone.
-#+end_notes
+#+END_NOTES
 
 * A flood of packages and services
 
-Nix has some 40,000+ packages.
+Nix: 40,000+ packages.
 
-Guix is getting there: 12,000 as of FOSDEM 2020.
+Guix: 12,000+ packages, 140+ services.
 
-#+begin_notes
+#+BE

branch master updated: talks: fosdem2020-search-discovery: Finish up outline.

2020-01-16 Thread Pierre Neidhardt
This is an automated email from the git hooks/post-receive script.

ambrevar pushed a commit to branch master
in repository maintenance.

The following commit(s) were added to refs/heads/master by this push:
 new c397b00  talks: fosdem2020-search-discovery: Finish up outline.
c397b00 is described below

commit c397b008768c8183fb3e9762e44afd4a321aedf7
Author: Pierre Neidhardt 
AuthorDate: Thu Jan 16 11:15:26 2020 +0100

talks: fosdem2020-search-discovery: Finish up outline.

* talks/fosdem-2020/search-discovery/search-discovery.org: Do it.
---
 .../search-discovery/search-discovery.org  | 135 +++--
 1 file changed, 96 insertions(+), 39 deletions(-)

diff --git a/talks/fosdem-2020/search-discovery/search-discovery.org 
b/talks/fosdem-2020/search-discovery/search-discovery.org
index 7fdba48..8c025ae 100644
--- a/talks/fosdem-2020/search-discovery/search-discovery.org
+++ b/talks/fosdem-2020/search-discovery/search-discovery.org
@@ -16,16 +16,38 @@
 #+REVEAL_TITLE_SLIDE_BACKGROUND: ./images/Guix_logo_noname.svg.png
 #+REVEAL_TITLE_SLIDE_BACKGROUND_SIZE: 550px
 
-#+TODO: Talk about guile.
+#+TODO: Talk about guile?
 
-* How do we search?
+* Sharing matters
 
 # https://www.ted.com/talks/tim_berners_lee_the_next_web/transcript
 
-# TODO: Fill in the quote on linking web data.
-"..."
--- Tim Berners Lee
-"The Next Web" (2009)
+# : The power of the data that other[s] have collected is locked up and we 
need to
+# : get it unlocked so we can tackle those huge problems.
+
+: A lot of the state of knowledge of the human race at the moment is on 
databases,
+: often sitting in their computers, and actually, currently not shared.
+
+-- Tim Berners-Lee
+"The next web" (2009)
+
+#+begin_notes
+In 2009, TBL gave a speech on "The next web".
+
+Sharing matters:
+
+- Transparency and better understanding of the world.
+- Don't waste time.
+- Don't waste effort.
+
+Today we are at the free software conference where everyone understands this 
and
+yet, I would argue, that we are still not that good at sharing.  A lot of time
+and effort goes to waste.
+#+end_notes
+
+* Sharing is nothing without searching
+
+Efficient sharing means equally efficiant discovery.
 
 #+begin_notes
 How do we find the program that we are looking for?
@@ -36,16 +58,20 @@ We don't expect to program them: we expect to run a program 
and get the job done
 
 User experience question: when first confronted with a computer, how do we know
 which program to run? => Tribal knowledge (e.g. VLC is famous because it's 
famous).
-
-Speak for Guix-specific improvements, but also more general research.
 #+end_notes
 
 * Dotfiles, or "Yet another home-made service"
 
 #+TODO: Take data from GitHub, gitlab "dotfiles" repositories
-??? "dotfiles" repositories across GitHub, GitLab...
 
-Average of ??? lines.
+https://github.com/search?o=desc=dotfiles=stars=Repositories
+
+130 K "dotfiles" repositories on GitHub.
+
+# https://github.com/search?utf8=%E2%9C%93==Repositories
+# 49 M users: 1 "dotfiles" every 377 users.
+
+# TODO: Average of ??? lines.
 
 #+begin_notes
 Show of hands: who has spent too much time on their dotfiles?
@@ -89,6 +115,18 @@ Service example: daily backup of my data with rsync+ssh/vpn.
 
 # TODO: More examples?
 
+* Recipe for first-class services
+
+Just use GNU Guix and GNU Shepherd!
+
+- Shepherd services drag Guix dependent packages automatically.
+- Can be installed everywhere.
+
+#+begin_notes
+It's hard to fix it for every distribution.
+Since Guix is universal, it fixes it for everyone.
+#+end_notes
+
 * A flood of packages and services
 
 Nix has some 40,000+ packages.
@@ -100,48 +138,37 @@ Services don't have well known names.
 
 How do we find our way around this mess?
 
-More general problem: search programs / services is hard.
+More general problem: search packages / services is hard.
 #+end_notes
 
-* GNU Guix and GNU Shepherd
-
-- Can be installed everywhere.
-- Shepherd services drag Guix dependent packages automatically.
-
 * Problem 1: File search
 
 SQLite databases from substitute servers.
 
-* Problem 2: Package parameters
+#+begin_notes
+Nix can do this, Guix cannot.
+We need to fix this.
+#+end_notes
+
+* Problem 2: Gentoo "USE flags"
 
 # TODO: Really talk about this?
-"Gentoo USE flags"
 
-Example: FFmpeg compiled with AAC encoding
+# TODO: Better USE flag example.
+Example: FFmpeg compiled with AAC codec
 
 * Problem 3: User interface
 
-- Command line of course...
-- ...But also GUI!
-
 # TODO: Videos?  Demo with Helm?
 
-#+begin_notes
-Live, fuzzy search that "does what you mean."
-Understands if you are looking for a service, file, application.
-#+end_notes
-
-* The Art of Searching
-
-- À-la "web search-engine".
-- Databases: Wikidata
-- Smart search engines: Xapian?
+Accessibility means "good GUI!"
 
 #+begin_notes
-Wikidata is

branch master updated: talks: fosdem2020-search-discovery: Mention current work.

2020-01-15 Thread Pierre Neidhardt
This is an automated email from the git hooks/post-receive script.

ambrevar pushed a commit to branch master
in repository maintenance.

The following commit(s) were added to refs/heads/master by this push:
 new 6894f93  talks: fosdem2020-search-discovery: Mention current work.
6894f93 is described below

commit 6894f93f47e850d26d1ff215e702ac839030524c
Author: Pierre Neidhardt 
AuthorDate: Wed Jan 15 22:39:21 2020 +0100

talks: fosdem2020-search-discovery: Mention current work.

* talks/fosdem-2020/search-discovery/search-discovery.org: Add "Work" 
section.
---
 talks/fosdem-2020/search-discovery/search-discovery.org | 12 
 1 file changed, 12 insertions(+)

diff --git a/talks/fosdem-2020/search-discovery/search-discovery.org 
b/talks/fosdem-2020/search-discovery/search-discovery.org
index d40d7fc..7fdba48 100644
--- a/talks/fosdem-2020/search-discovery/search-discovery.org
+++ b/talks/fosdem-2020/search-discovery/search-discovery.org
@@ -155,3 +155,15 @@ We don't want to include tags in a permanent databases:
 - Too subjective.
 - Evolves over time depending on the latest trends.
 #+end_notes
+
+* Current work
+
+For Guix:
+
+- File index
+- GUI
+- Smarter search
+- User services
+- Community contribution integration
+
+# TODO: Mention NLNet?



branch master updated: talks: fosdem2020-search-discovery: Add draft.

2020-01-15 Thread Pierre Neidhardt
This is an automated email from the git hooks/post-receive script.

ambrevar pushed a commit to branch master
in repository maintenance.

The following commit(s) were added to refs/heads/master by this push:
 new 15cbddd  talks: fosdem2020-search-discovery: Add draft.
15cbddd is described below

commit 15cbddd52023752b0bdde63d9ffc58b6a2503c1e
Author: Pierre Neidhardt 
AuthorDate: Wed Jan 15 22:00:26 2020 +0100

talks: fosdem2020-search-discovery: Add draft.

* talks/fosdem-2020/search-discovery/search-discovery.org: New file.
---
 .../images/Guix_logo_noname.svg.png| Bin 0 -> 62720 bytes
 .../search-discovery/search-discovery.org  | 157 +
 2 files changed, 157 insertions(+)

diff --git a/talks/fosdem-2020/search-discovery/images/Guix_logo_noname.svg.png 
b/talks/fosdem-2020/search-discovery/images/Guix_logo_noname.svg.png
new file mode 100644
index 000..817364f
Binary files /dev/null and 
b/talks/fosdem-2020/search-discovery/images/Guix_logo_noname.svg.png differ
diff --git a/talks/fosdem-2020/search-discovery/search-discovery.org 
b/talks/fosdem-2020/search-discovery/search-discovery.org
new file mode 100644
index 000..d40d7fc
--- /dev/null
+++ b/talks/fosdem-2020/search-discovery/search-discovery.org
@@ -0,0 +1,157 @@
+#+AUTHOR: Pierre Neidhardt
+#+EMAIL: m...@ambrevar.xyz
+#+TITLE: Search & discover packages and services with GNU Guix
+
+#+OPTIONS: reveal_single_file:t
+
+#+OPTIONS: toc:nil
+
+#+REVEAL_ROOT: http://cdn.jsdelivr.net/reveal.js/3.0.0/
+# #+REVEAL_TRANS: page
+#+REVEAL_PLUGINS: (highlight)
+#+REVEAL_THEME: night
+
+#+REVEAL_MAX_SCALE: 0.6
+
+#+REVEAL_TITLE_SLIDE_BACKGROUND: ./images/Guix_logo_noname.svg.png
+#+REVEAL_TITLE_SLIDE_BACKGROUND_SIZE: 550px
+
+#+TODO: Talk about guile.
+
+* How do we search?
+
+# https://www.ted.com/talks/tim_berners_lee_the_next_web/transcript
+
+# TODO: Fill in the quote on linking web data.
+"..."
+-- Tim Berners Lee
+"The Next Web" (2009)
+
+#+begin_notes
+How do we find the program that we are looking for?
+Let me rephrase: How do we find the program that does the job for us?
+
+What do we expect from computers?
+We don't expect to program them: we expect to run a program and get the job 
done.
+
+User experience question: when first confronted with a computer, how do we know
+which program to run? => Tribal knowledge (e.g. VLC is famous because it's 
famous).
+
+Speak for Guix-specific improvements, but also more general research.
+#+end_notes
+
+* Dotfiles, or "Yet another home-made service"
+
+#+TODO: Take data from GitHub, gitlab "dotfiles" repositories
+??? "dotfiles" repositories across GitHub, GitLab...
+
+Average of ??? lines.
+
+#+begin_notes
+Show of hands: who has spent too much time on their dotfiles?
+
+What is a dotfile really?  It's just another home-made service.
+
+Just like a program, it gets the job done.  And when start thinking this way, 
we
+start realizing that it's only a blurred line between services and packages.
+#+end_notes
+
+* First-class services
+
+Or "The end of dotfiles!"
+
+#+begin_notes
+My claim: we can put an end to dotfiles!
+
+Rephrase: An end to "egoistic un-reusable dotfiles".
+
+Everyone can start upstreaming their dotfiles configurations and share them.
+
+Dream: Just need to declare which program and services you want to use and your
+are done.  This could tailor to your most specific needs.
+
+Service example: daily backup of my data with rsync+ssh/vpn.
+#+end_notes
+
+* Example
+
+# TODO: Finish service example
+#+begin_src scheme
+  (backup-service-type
+   (backup-configuration
+(host "123.123.123.123")
+(port "")
+(method rsync+vpn)
+(folders
+ '(("/path/folder1" "/target/destination1")
+   ("/path/folder1" "/target/destination2")
+#+end_src
+
+# TODO: More examples?
+
+* A flood of packages and services
+
+Nix has some 40,000+ packages.
+
+Guix is getting there: 12,000 as of FOSDEM 2020.
+
+#+begin_notes
+Services don't have well known names.
+
+How do we find our way around this mess?
+
+More general problem: search programs / services is hard.
+#+end_notes
+
+* GNU Guix and GNU Shepherd
+
+- Can be installed everywhere.
+- Shepherd services drag Guix dependent packages automatically.
+
+* Problem 1: File search
+
+SQLite databases from substitute servers.
+
+* Problem 2: Package parameters
+
+# TODO: Really talk about this?
+"Gentoo USE flags"
+
+Example: FFmpeg compiled with AAC encoding
+
+* Problem 3: User interface
+
+- Command line of course...
+- ...But also GUI!
+
+# TODO: Videos?  Demo with Helm?
+
+#+begin_notes
+Live, fuzzy search that "does what you mean."
+Understands if you are looking for a service, file, application.
+#+end_notes
+
+* The Art of Searching
+
+- À-la "web search-engine".
+- Databases: Wikidata
+- Smart sea

branch master updated (52d73e6 -> bb2359c)

2019-10-28 Thread Pierre Neidhardt
ambrevar pushed a change to branch master
in repository guix-artwork.

  from  52d73e6   website: gnu-statement: Add one signatory.
   new  bb2359c   website: profiles-in-practice: Fix more typos.

The 1 revisions listed above as "new" are entirely new to this
repository and will be described in separate emails.  The revisions
listed as "adds" were already present in the repository and have only
been added to this reference.


Summary of changes:
 website/posts/profiles-in-practice.md | 4 ++--
 1 file changed, 2 insertions(+), 2 deletions(-)



01/01: website: profiles-in-practice: Fix more typos.

2019-10-28 Thread Pierre Neidhardt
ambrevar pushed a commit to branch master
in repository guix-artwork.

commit bb2359c592f3acd51a57367422c2561b4ab14c80
Author: Pierre Neidhardt 
Date:   Mon Oct 28 09:04:14 2019 +0100

website: profiles-in-practice: Fix more typos.

* website/posts/profiles-in-practice.md: Fix more typos.
---
 website/posts/profiles-in-practice.md | 4 ++--
 1 file changed, 2 insertions(+), 2 deletions(-)

diff --git a/website/posts/profiles-in-practice.md 
b/website/posts/profiles-in-practice.md
index e0c8115..7d32f5b 100644
--- a/website/posts/profiles-in-practice.md
+++ b/website/posts/profiles-in-practice.md
@@ -8,7 +8,7 @@ tags: Functional package management, Reproducibility, User 
interfaces, Customiza
 
 Guix provides a very useful feature that may be quite foreign to newcomers:
 *profiles*.  They are a way to group package installations together and all 
users
-on a same system are free to use as many profiles as they want.
+on the same system are free to use as many profiles as they want.
 
 Whether you're a developer or not, you may find that multiple profiles bring 
you
 great power and flexibility.  While they shift the paradigm somewhat compared 
to
@@ -199,7 +199,7 @@ the profile is loaded, you've got two options:
 
 -   Either export the variable manually, e.g.
 
-export MANPATH=/path/to/profile${MANPATH:+:}$MANPATH"
+export MANPATH=/path/to/profile${MANPATH:+:}$MANPATH
 
 -   Or include `man-db` to the profile manifest.
 



01/01: website: Add post about "profiles in practice".

2019-10-24 Thread Pierre Neidhardt
ambrevar pushed a commit to branch master
in repository guix-artwork.

commit 19c472e8c476aee835c46dc2a88a05634aa9abcd
Author: Pierre Neidhardt 
Date:   Thu Oct 24 10:50:54 2019 +0200

website: Add post about "profiles in practice".

* website/posts/profiles-in-practice.md: New file.
---
 website/posts/profiles-in-practice.md | 356 ++
 1 file changed, 356 insertions(+)

diff --git a/website/posts/profiles-in-practice.md 
b/website/posts/profiles-in-practice.md
new file mode 100644
index 000..42df1a6
--- /dev/null
+++ b/website/posts/profiles-in-practice.md
@@ -0,0 +1,356 @@
+title: Guix Profiles in Practice
+date: 2019-10-24
+author: Pierre Neidhardt
+tags: Functional package management, Reproducibility, User interfaces, 
Customization, Software development, Cookbook
+---
+
+*Note: An updated version of this article is available in the 
[cookbook](https://guix.gnu.org/cookbook/en/).*
+
+Guix provides a very useful feature that may be quite foreign to newcomers:
+*profiles*.  They are a way to group package installations together and all 
users
+on a same system are free to use as many profiles as they want.
+
+Whether you're a developer or not, you may find that multiple profiles bring 
you
+great power and flexibility.  While they shift the paradigm somewhat compared 
to
+*traditional package managers*, they are very convenient to use once you've
+understood how to set them up.
+
+If you are familiar with Python's `virtualenv`, you can think of a profile as a
+kind of universal `virtualenv` that can hold any kind of software whatsoever, 
not
+just Python software.  Furthermore, profiles are self-sufficient: they capture
+all the runtime dependencies which guarantees that all programs within a 
profile
+will always work at any point in time.
+
+Multiple profiles have many benefits:
+
+-   Clean semantic separation of the various packages a user needs for 
different contexts.
+
+-   Multiple profiles can be made available into the environment either on 
login
+or within a dedicated shell.
+
+-   Profiles can be loaded on demand.  For instance, the user can use multiple
+shells, each of them running different profiles.
+
+-   Isolation: Programs from one profile will not use programs from the other, 
and
+they user can even install different versions of the same programs to the 
two
+profiles without conflict.
+
+-   Deduplication: Profiles share dependencies that happens to be the exact 
same.
+This makes multiple profiles storage-efficient.
+
+-   Reproducible: when used with declarative manifests, a profile can be fully
+specified by the Guix commit that was active when it was set up.  This 
means
+that the exact same profile can be [set up anywhere, 
anytime](https://guix.gnu.org/blog/2018/multi-dimensional-transactions-and-rollbacks-oh-my/),
 with just the
+commit information.  See the section on [5](#org98fddee).
+
+-   Easier upgrades and maintenance: Multiple profiles make it easy to keep
+package listings at hand and make upgrades completely friction-less.
+
+Concretely, here follows some typical profiles:
+
+-   The dependencies of a project you are working on.
+
+-   Your favourite programming language libraries.
+
+-   Laptop-specific programs (like `powertop`) that you don't need on a 
desktop.
+
+-   TeXlive (this one can be really useful when you need to install just one
+package for this one document you've just received over email).
+
+-   Games.
+
+Let's dive in the set up!
+
+
+# Basic setup with manifests
+
+A Guix profile can be set up *via* a so-called *manifest specification* that 
looks like
+this:
+
+```scheme
+(specifications->manifest
+  '("package-1"
+;; Version 1.3 of package-2.
+"package-2@1.3"
+;; The "lib" output of package-3.
+"package-3:lib"
+; ...
+"package-N"))
+```
+
+See [(guix) Invoking guix 
package](https://guix.gnu.org/manual/en/html_node/Invoking-guix-package.html) 
for the syntax details.
+
+We can create a manifest specification per profile and install them this way:
+
+```scheme
+GUIX_EXTRA_PROFILES=$HOME/.guix-extra-profiles
+mkdir -p "$GUIX_EXTRA_PROFILES"/my-project # if it does not exist yet
+guix package --manifest=/path/to/guix-my-project-manifest.scm 
--profile="$GUIX_EXTRA_PROFILES"/my-project/my-project
+```
+
+Here we set an arbitrary variable `GUIX_EXTRA_PROFILES` to point to the 
directory
+where we will store our profiles in the rest of this article.
+
+Placing all your profiles in a single directory, with each profile getting its
+own sub-directory, is somewhat cleaner.  This way, each sub-directory will
+contain all the symlinks for precisely one profile.  Besides, "looping over
+profiles" becomes obvious from any programming language (e.g. a shell script) 
by
+simply looping over the sub-d

branch master updated (404b56b -> 19c472e)

2019-10-24 Thread Pierre Neidhardt
ambrevar pushed a change to branch master
in repository guix-artwork.

  from  404b56b   website: Add sway window manager to front page.
   new  19c472e   website: Add post about "profiles in practice".

The 1 revisions listed above as "new" are entirely new to this
repository and will be described in separate emails.  The revisions
listed as "adds" were already present in the repository and have only
been added to this reference.


Summary of changes:
 website/posts/profiles-in-practice.md | 356 ++
 1 file changed, 356 insertions(+)
 create mode 100644 website/posts/profiles-in-practice.md



branch master updated (da47d3e -> 6a5b1e4)

2019-07-01 Thread Pierre Neidhardt
ambrevar pushed a change to branch master
in repository maintenance.

  from  da47d3e   doc: Add roadmap.
   new  6a5b1e4   doc: Comment on the possibility to specify a URL for 
config.scm.

The 1 revisions listed above as "new" are entirely new to this
repository and will be described in separate emails.  The revisions
listed as "adds" were already present in the repository and have only
been added to this reference.


Summary of changes:
 doc/ROADMAP.org | 1 +
 1 file changed, 1 insertion(+)



01/01: doc: Comment on the possibility to specify a URL for config.scm.

2019-07-01 Thread Pierre Neidhardt
ambrevar pushed a commit to branch master
in repository maintenance.

commit 6a5b1e4adaf735f1f6a1d49a98addc60a0e520e4
Author: Pierre Neidhardt 
Date:   Mon Jul 1 15:53:56 2019 +0200

doc: Comment on the possibility to specify a URL for config.scm.

* doc/ROADMAP.org (gnu installer): Do it.
---
 doc/ROADMAP.org | 1 +
 1 file changed, 1 insertion(+)

diff --git a/doc/ROADMAP.org b/doc/ROADMAP.org
index 917c66b..5f04ac2 100644
--- a/doc/ROADMAP.org
+++ b/doc/ROADMAP.org
@@ -14,6 +14,7 @@ to discuss it on guix-de...@gnu.org!
 ** TODO grafts and profile hooks run as “build continuations” 
<https://bugs.gnu.org/28310>
 ** TODO ‘package-derivation’ made faster
 ** TODO (gnu installer) UI can be used to edit config.scm
+Maybe leave the possibility to specify a file, or even a URL?
 ** TODO ‘guix system status’ shows info about the current status
 ** TODO packages can be 
[[https://lists.gnu.org/archive/html/guix-devel/2019-05/msg00285.html][parameterized]]
 ** TODO web application to [re]configure a Guix System



branch master updated (37c2348 -> fb860c2)

2019-06-26 Thread Pierre Neidhardt
ambrevar pushed a change to branch master
in repository maintenance.

  from  37c2348   hydra: nginx: No longer redirect /nar/guix requests.
   new  fb860c2   talks: Add IPFS-Camp talk.

The 1 revisions listed above as "new" are entirely new to this
repository and will be described in separate emails.  The revisions
listed as "adds" were already present in the repository and have only
been added to this reference.


Summary of changes:
 .../ipfs-camp-2019/images/Guix_logo_noname.svg.png | Bin 0 -> 62720 bytes
 talks/ipfs-camp-2019/ipfs-camp.org | 140 +
 2 files changed, 140 insertions(+)
 create mode 100644 talks/ipfs-camp-2019/images/Guix_logo_noname.svg.png
 create mode 100644 talks/ipfs-camp-2019/ipfs-camp.org



01/01: talks: Add IPFS-Camp talk.

2019-06-26 Thread Pierre Neidhardt
ambrevar pushed a commit to branch master
in repository maintenance.

commit fb860c24bf8f802d7822a2429bf59e0b729a3b20
Author: Pierre Neidhardt 
Date:   Wed Jun 26 14:18:10 2019 +0200

talks: Add IPFS-Camp talk.

* talks/ipfs-camp-2019: New directory.
---
 .../ipfs-camp-2019/images/Guix_logo_noname.svg.png | Bin 0 -> 62720 bytes
 talks/ipfs-camp-2019/ipfs-camp.org | 140 +
 2 files changed, 140 insertions(+)

diff --git a/talks/ipfs-camp-2019/images/Guix_logo_noname.svg.png 
b/talks/ipfs-camp-2019/images/Guix_logo_noname.svg.png
new file mode 100644
index 000..817364f
Binary files /dev/null and 
b/talks/ipfs-camp-2019/images/Guix_logo_noname.svg.png differ
diff --git a/talks/ipfs-camp-2019/ipfs-camp.org 
b/talks/ipfs-camp-2019/ipfs-camp.org
new file mode 100644
index 000..478537f
--- /dev/null
+++ b/talks/ipfs-camp-2019/ipfs-camp.org
@@ -0,0 +1,140 @@
+#+AUTHOR: Pierre Neidhardt
+#+EMAIL: m...@ambrevar.xyz
+#+TITLE: IPFS & Guix
+# #+TITLE: Package distribution using IPFS on Guix
+
+#+OPTIONS: reveal_single_file:t
+
+#+OPTIONS: toc:nil
+
+#+REVEAL_ROOT: http://cdn.jsdelivr.net/reveal.js/3.0.0/
+# #+REVEAL_TRANS: page
+#+REVEAL_PLUGINS: (highlight)
+#+REVEAL_THEME: night
+
+#+REVEAL_MAX_SCALE: 0.6
+
+#+REVEAL_TITLE_SLIDE_BACKGROUND: ./images/Guix_logo_noname.svg.png
+#+REVEAL_TITLE_SLIDE_BACKGROUND_SIZE: 550px
+
+
+#+BEGIN_NOTES
+*IMPORTANT:* Read https://github.com/ipfs/roadmap
+*IMPORTANT:* Read https://github.com/ipfs/package-managers#readme
+#+END_NOTES
+
+* IPFS
+#+ATTR_REVEAL: :frag (appear)
+
+Enhances accessibility to knowledge...
+
+#+ATTR_REVEAL: :frag (appear)
+...But stays blind to generated data.
+
+* GNU Guix in short
+
+Homepage: https://guix.gnu.org/
+
+A functional package manager focusing on (among others):
+
+- Reproducibility
+  - https://reproducible-builds.org/
+- Bootstrappability
+  - GNU Mes: https://www.gnu.org/software/mes/
+  - Stage0: https://github.com/oriansj/stage0
+
+** Guix package substitutes
+
+#+BEGIN_NOTES
+Explain "Guix store".
+#+END_NOTES
+
+- A few build farms with limited throughput.
+- Content delivery networks help (CDN).
+
+Can we do better?
+
+* IPFS & Guix: BFFs of the 21st century
+
+# ** A common issue: augmenting trust in digital information
+# - IPFS: Unalterable references to arbitrary data
+# - Guix: Maximal transparency in software builds
+
+- What IPFS can do for Guix:
+
+  - Distribute Guix substitutes.
+  - Unify references to source data.
+
+- What Guix can provide for IPFS:
+
+  - Maximal transparency in software builds.
+  (Or any generated data?)
+
+* Dreams of a (not so distant) future
+
+** The dream: All Guix stores become substitute servers
+
+P2P FTW!
+
+** Deeper dream: All data lives in IPFS
+
+No local filesystem, no Guix store.
+
+Installing an application amounts to /pinning/ it.
+
+#+BEGIN_NOTES
+A personal computing device only stores references to information that its 
owner
+cares about.
+
+If we don't mind depending on IPFS, we don't need the Guix store any
+more. Package installation would amount to local pinning. Anyone could then
+build a package anywhere (home directory, ...) and just add it to IPFS.
+
+(Local storage would be used as a cache for efficiency)
+#+END_NOTES
+
+** Abstract dream: All computations are equal
+
+No distinction between "software builds" and everything else.
+
+
+#+BEGIN_NOTES
+Software builds are just a special case.
+Examples: scientific computing, compression, generation...
+
+Since that also eliminates the technical
+constraints of the store, the same mechanism could be used for any kind
+of data processing, with the results stored in IPFS. Reproducibility of
+any kind of computation via Guix, with building software just an
+important special case.
+#+END_NOTES
+
+#+BEGIN_NOTES
+From https://github.com/ipfs/roadmap:
+
+The rift between the web and the OS is finally healed. The OS and local 
programs
+and WebApps merge. They are not just indistinguishable, they are the same
+thing. "Installing" becomes pinning applications to the local computer. 
"Saving"
+things locally is also just pinning. The browser and the OS are no longer
+distinguishable. The entire OS data itself is modelled on top of IPLD, and the
+internal FileSystem is IPFS (or something on top, like unixfs). The OS and
+programs can manipulate IPLD data structures natively. The entire state of the
+OS itself can be represented and stored as IPLD. The OS can be frozen or
+snapshotted, and then resumed. A computer boots from the same OS hash,
+drastically reducing attack surface.
+#+END_NOTES
+
+#+BEGIN_NOTES
+Further discussion:
+
+All data comes with provenance tracking:
+
+- Computations are tracked via Guix.
+- Human input is logged (interactivity) or version controlled.
+#+END_NOTES
+
+* Next step?
+
+- IPFS wants YAPM (Yet Another Package Manager).
+
+- IPFS wants WebOS.



branch master updated (27373cc -> 29f0bb0)

2019-01-17 Thread Pierre Neidhardt
ambrevar pushed a change to branch master
in repository maintenance.

  from  27373cc   doc: Update 1.0 roadmap.
   new  29f0bb0   doc: Update 1.0 roadmap.

The 1 revisions listed above as "new" are entirely new to this
repository and will be described in separate emails.  The revisions
listed as "adds" were already present in the repository and have only
been added to this reference.


Summary of changes:
 doc/1.0.org | 4 ++--
 1 file changed, 2 insertions(+), 2 deletions(-)



01/01: doc: Update 1.0 roadmap.

2019-01-17 Thread Pierre Neidhardt
ambrevar pushed a commit to branch master
in repository maintenance.

commit 29f0bb0355b2deddfb78f994cfefbc32f06cc827
Author: Pierre Neidhardt 
Date:   Thu Jan 17 12:33:08 2019 +0100

doc: Update 1.0 roadmap.

* doc/1.0.org: Update.
---
 doc/1.0.org | 4 ++--
 1 file changed, 2 insertions(+), 2 deletions(-)

diff --git a/doc/1.0.org b/doc/1.0.org
index dd0415f..11a04cb 100644
--- a/doc/1.0.org
+++ b/doc/1.0.org
@@ -1,5 +1,5 @@
 #+TITLE: Roadmap for Guix 1.0, 2018
-#+SEQ_TODO: MAYBE TODO DONE CANCELED
+#+SEQ_TODO: MAYBE TODO | DONE CANCELED
 #+STARTUP: hidestars
 
 * 'guix pull' & co.
@@ -55,4 +55,4 @@ bandwidth, or simply lack of time), so we need to work out 
the set of strictly
 required TeXlive packages for each package depending on TeXlive.
 We need to package the missing individual TeXlive packages in those unions.
 https://lists.gnu.org/archive/html/help-guix/2018-05/msg00218.html
-** TODO Fix truncated/repeating utf-8 man pages 
<https://debbugs.gnu.org/cgi/bugreport.cgi?bug=30785>
+** DONE Fix truncated/repeating utf-8 man pages 
<https://debbugs.gnu.org/cgi/bugreport.cgi?bug=30785>



branch master updated (063a094 -> 509a276)

2018-11-19 Thread Pierre Neidhardt
ambrevar pushed a change to branch master
in repository guix-artwork.

  from  063a094   website: packaging-tutorial: Add license.
   new  509a276   website: packaging-tutorial: Fix typos.

The 1 revisions listed above as "new" are entirely new to this
repository and will be described in separate emails.  The revisions
listed as "adds" were already present in the repository and have only
been added to this reference.


Summary of changes:
 website/posts/packaging-tutorial.md | 13 +++--
 1 file changed, 7 insertions(+), 6 deletions(-)



01/01: website: packaging-tutorial: Fix typos.

2018-11-19 Thread Pierre Neidhardt
ambrevar pushed a commit to branch master
in repository guix-artwork.

commit 509a276c2e07b923ee1de53450fa57f7917ed09c
Author: Pierre Neidhardt 
Date:   Mon Nov 19 14:56:38 2018 +0100

website: packaging-tutorial: Fix typos.

* website/posts/packaging-tutorial.md: Fix typos.
---
 website/posts/packaging-tutorial.md | 13 +++--
 1 file changed, 7 insertions(+), 6 deletions(-)

diff --git a/website/posts/packaging-tutorial.md 
b/website/posts/packaging-tutorial.md
index bf220d6..13ea60c 100644
--- a/website/posts/packaging-tutorial.md
+++ b/website/posts/packaging-tutorial.md
@@ -185,7 +185,7 @@ gpg:  There is no indication that the signature 
belongs to the owner.
 Primary key fingerprint: 8ED3 96E3 7E38 D471 A005  30D3 A955 3245 FDE9 B739
 ```
 
-Now you can happily run
+You can then happily run
 
 ```sh
 $ guix package --install-from-file=my-hello.scm
@@ -225,7 +225,7 @@ is, the line reserved for user input.  See [the Guile 
manual](https://www.gnu.or
 the REPL.
 
 -   Scheme syntax boils down to a tree of expressions (or *s-expression* in 
Lisp
-lingo).  An expression can be a literal such numbers and strings, or a
+lingo).  An expression can be a literal such as numbers and strings, or a
 compound which is a parenthesized list of compounds and literals.  `#t` and
 `#f` stand for the booleans "true" and "false", respectively.
 
@@ -379,8 +379,9 @@ But first, let's look at other possibilities.
 
 ### Local file
 
-This is what we previously did with `my-hello`.  Now that we know more Scheme,
-let's explain the leading chunks.  As stated in `guix package --help`:
+This is what we previously did with `my-hello`.  With the Scheme basics we've
+covered, we are now able to explain the leading chunks.  As stated in `guix
+package --help`:
 
 ```sh
 -f, --install-from-file=FILE
@@ -1076,12 +1077,12 @@ See the [Guix 
homepage](https://www.gnu.org/software/guix/contact/) for informat
 
 # Conclusion
 
-This tutorial was an showcase of the sophisticated package management that Guix
+This tutorial was a showcase of the sophisticated package management that Guix
 boasts.  At this point we have mostly restricted this introduction to the
 `gnu-build-system` which is a core abstraction layer on which more advanced
 abstractions are based.
 
-Now where do we go from here?  Next we ought to dissect the innards of the 
build
+Where do we go from here?  Next we ought to dissect the innards of the build
 system by removing all abstractions, using the `trivial-build-system`: this
 should give us a thorough understanding of the process before investigating 
some
 more advanced packaging techniques and edge cases.



01/01: gnu: ccl: Include x86-headers and remove missing "contrib" folder.

2018-11-18 Thread Pierre Neidhardt
ambrevar pushed a commit to branch master
in repository guix.

commit d22ba64276c0bbacb77d0670635f67f053a16c6b
Author: Pierre Neidhardt 
Date:   Sun Nov 18 10:38:54 2018 +0100

gnu: ccl: Include x86-headers and remove missing "contrib" folder.

* gnu/packages/lisp.scm (ccl): Include x86-headers and remove missing 
"contrib" folder.
---
 gnu/packages/lisp.scm | 8 ++--
 1 file changed, 6 insertions(+), 2 deletions(-)

diff --git a/gnu/packages/lisp.scm b/gnu/packages/lisp.scm
index 9fb25a1..dcdd551 100644
--- a/gnu/packages/lisp.scm
+++ b/gnu/packages/lisp.scm
@@ -530,8 +530,12 @@ statistical profiler, a code coverage tool, and many other 
extensions.")
(install-file kernel libdir)
(install-file heap libdir)
 
-   (let ((dirs '("lib" "library" "examples" "contrib"
- "tools" "objc-bridge")))
+   (let ((dirs '("lib" "library" "examples" "tools" "objc-bridge"
+ ,(match (%current-system)
+("x86_64-linux"
+ "x86-headers64")
+("i686-linux"
+ "x86-headers")
  (for-each copy-recursively
dirs
(map (cut string-append libdir <>) dirs)))



branch master updated (f8cba3f -> d22ba64)

2018-11-18 Thread Pierre Neidhardt
ambrevar pushed a change to branch master
in repository guix.

  from  f8cba3f   gnu: mesa: Stay on RTTI-less LLVM.
   new  d22ba64   gnu: ccl: Include x86-headers and remove missing 
"contrib" folder.

The 1 revisions listed above as "new" are entirely new to this
repository and will be described in separate emails.  The revisions
listed as "adds" were already present in the repository and have only
been added to this reference.


Summary of changes:
 gnu/packages/lisp.scm | 8 ++--
 1 file changed, 6 insertions(+), 2 deletions(-)



07/07: gnu: go-github-com-aarzilli-golua: Fix for go-1.11.

2018-11-12 Thread Pierre Neidhardt
ambrevar pushed a commit to branch master
in repository guix.

commit 5c4758415d4b2565d3ec4a6d89c525d85dafb53a
Author: Pierre Neidhardt 
Date:   Sun Nov 11 22:28:05 2018 +0100

gnu: go-github-com-aarzilli-golua: Fix for go-1.11.

* gnu/packages/golang.scm (go-github-com-aarzilli-golua)[arguments]: Fix 
for go-1.11.
[native-inputs]: Remove lua.
[propagated-inputs]: Add lua.
---
 gnu/packages/golang.scm | 30 --
 1 file changed, 16 insertions(+), 14 deletions(-)

diff --git a/gnu/packages/golang.scm b/gnu/packages/golang.scm
index 2fd8bf4..38df23a 100644
--- a/gnu/packages/golang.scm
+++ b/gnu/packages/golang.scm
@@ -2152,26 +2152,28 @@ generate ANSI colored strings.")
   (base32
"1d9hr29i36cza98afj3g6rs3l7xbkprwzz0blcxsr9dd7nak20di"
   (build-system go-build-system)
-  (native-inputs
+  ;; From go-1.10 onward, "pkg" compiled libraries are not re-used, so
+  ;; when this package required as input for another one, it will have to
+  ;; be built again.  Thus its CGO requirements must be made available in
+  ;; the environment, that is, they must be propagated.
+  (propagated-inputs
`(("lua" ,lua)))
   (arguments
`(#:unpack-path "github.com/aarzilli/golua"
  #:import-path "github.com/aarzilli/golua/lua"
  #:phases
  (modify-phases %standard-phases
-   (replace 'build
- (lambda* (#:key import-path #:allow-other-keys)
-   (invoke "go" "install"
-   "-v"  ; print the name of packages as they are compiled
-   "-x"  ; print each command as it is invoked
-   "-ldflags=-s -w" ; strip the symbol table and debug
-   "-tags" "llua" ; Latest Lua on Guix does not have a 
version number.
-   import-path)))
-   (replace 'check
- (lambda* (#:key import-path #:allow-other-keys)
-   (invoke "go" "test"
-   "-tags" "llua" ; Latest Lua on Guix does not have a 
version number.
-   import-path))
+   ;; While it's possible to fix the CGO_LDFLAGS with the "-tags"
+   ;; command line argument, go-1.10+ does not re-use the produced pkg
+   ;; for dependencies, which means we would need to propagate the
+   ;; same "-tags" argument to all golua referrers.  A substitution is
+   ;; more convenient here.  We also need to propagate the lua
+   ;; dependency to make it available to referrers.
+   (add-after 'unpack 'fix-lua-ldflags
+ (lambda _
+   (substitute* "src/github.com/aarzilli/golua/lua/lua.go"
+ (("#cgo linux,!llua,!luaa LDFLAGS: -llua5.3")
+  "#cgo linux,!llua,!luaa LDFLAGS: -llua")))
   (home-page "https://github.com/aarzilli/golua;)
   (synopsis "Go Bindings for the Lua C API")
   (description "This package provides @code{lua}, a Go module that can



03/07: gnu: go-github-com-prometheus-common-expfmt: Fix tests for go-1.11.

2018-11-12 Thread Pierre Neidhardt
ambrevar pushed a commit to branch master
in repository guix.

commit 46a37b5966298e26d91d2a660c3f2c84f111f826
Author: Pierre Neidhardt 
Date:   Tue Nov 6 18:09:16 2018 +0100

gnu: go-github-com-prometheus-common-expfmt: Fix tests for go-1.11.

* gnu/packages/syncthing.scm (go-github-com-prometheus-common-expfmt): Fix 
tests for go-1.11.
---
 gnu/packages/syncthing.scm | 9 -
 1 file changed, 8 insertions(+), 1 deletion(-)

diff --git a/gnu/packages/syncthing.scm b/gnu/packages/syncthing.scm
index 5d681b8..46211d2 100644
--- a/gnu/packages/syncthing.scm
+++ b/gnu/packages/syncthing.scm
@@ -1097,7 +1097,14 @@ message streaming.")
   (string-append (assoc-ref outputs "out")
  
"/src/github.com/prometheus/common/expfmt/testdata/")
   ".*\\.gz$"))
-   #t)
+   #t))
+   (replace 'check
+ ;; Tests don't pass "vet" on go-1.11.  See
+ ;; https://github.com/syncthing/syncthing/issues/5311.
+ (lambda* (#:key import-path #:allow-other-keys)
+   (invoke "go" "test"
+   "-vet=off"
+   import-path))
   (propagated-inputs
`(("go-github-com-golang-protobuf-proto"
   ,go-github-com-golang-protobuf-proto)



04/07: gnu: go-github-com-audriusbutkevicius-cli: Fix tests for go-1.11.

2018-11-12 Thread Pierre Neidhardt
ambrevar pushed a commit to branch master
in repository guix.

commit d4780c82387f226658bc8bf073ce8610bf37433b
Author: Pierre Neidhardt 
Date:   Tue Nov 6 18:10:09 2018 +0100

gnu: go-github-com-audriusbutkevicius-cli: Fix tests for go-1.11.

* gnu/packages/syncthing.scm (go-github-com-audriusbutkevicius-cli): Fix 
tests for go-1.11.
---
 gnu/packages/syncthing.scm | 11 ++-
 1 file changed, 10 insertions(+), 1 deletion(-)

diff --git a/gnu/packages/syncthing.scm b/gnu/packages/syncthing.scm
index 46211d2..7e4ff0e 100644
--- a/gnu/packages/syncthing.scm
+++ b/gnu/packages/syncthing.scm
@@ -900,7 +900,16 @@ the current goroutine's ID.")
   "0bg26pfg25vr16jmczig2m493mja2nxjxyswz3hha7avxw20rpi5"
   (build-system go-build-system)
   (arguments
-   '(#:import-path "github.com/AudriusButkevicius/cli"))
+   '(#:import-path "github.com/AudriusButkevicius/cli"
+ ;; Tests don't pass "vet" on go-1.11.  See
+ ;; https://github.com/AudriusButkevicius/cli/pull/1.
+ #:phases
+ (modify-phases %standard-phases
+   (replace 'check
+ (lambda* (#:key import-path #:allow-other-keys)
+   (invoke "go" "test"
+   "-vet=off"
+   import-path))
   (synopsis "Library for building command-line interfaces in Go")
   (description "This package provides a library for building command-line
 interfaces in Go.")



06/07: gnu: go-github-com-wtolson-go-taglib: Fix tests and build for go-1.11.

2018-11-12 Thread Pierre Neidhardt
ambrevar pushed a commit to branch master
in repository guix.

commit 46a4ae2212d72d38dc55188e35a7441964694f91
Author: Pierre Neidhardt 
Date:   Tue Nov 6 18:11:21 2018 +0100

gnu: go-github-com-wtolson-go-taglib: Fix tests and build for go-1.11.

* gnu/packages/golang.scm (go-github-com-wtolson-go-taglib)[arguments]: Fix 
tests for go-1.11.
[native-inputs]: Remove pkg-config and taglib.
[propagated-inputs]: Add pkg-config and taglib.
---
 gnu/packages/golang.scm | 17 +++--
 1 file changed, 15 insertions(+), 2 deletions(-)

diff --git a/gnu/packages/golang.scm b/gnu/packages/golang.scm
index 5b84ced..2fd8bf4 100644
--- a/gnu/packages/golang.scm
+++ b/gnu/packages/golang.scm
@@ -2419,11 +2419,24 @@ and lookup requests.  Browse requests are not supported 
yet.")
   (base32
"1cpjqnrviwflz150g78iir5ndrp3hh7a93zbp4dwbg6sb2q141p2"
   (build-system go-build-system)
-  (native-inputs
+  ;; From go-1.10 onward, "pkg" compiled libraries are not re-used, so
+  ;; when this package required as input for another one, it will have to
+  ;; be built again.  Thus its CGO requirements must be made available in
+  ;; the environment, that is, they must be propagated.
+  (propagated-inputs
`(("pkg-config" ,pkg-config)
  ("taglib" ,taglib)))
   (arguments
-   `(#:import-path "github.com/wtolson/go-taglib"))
+   `(#:import-path "github.com/wtolson/go-taglib"
+ ;; Tests don't pass "vet" on go-1.11.  See
+ ;; https://github.com/wtolson/go-taglib/issues/12.
+ #:phases
+ (modify-phases %standard-phases
+   (replace 'check
+ (lambda* (#:key import-path #:allow-other-keys)
+   (invoke "go" "test"
+   "-vet=off"
+   import-path))
   (home-page "https://github.com/wtolson/go-taglib;)
   (synopsis "Go wrapper for taglib")
   (description "Go wrapper for taglib")



05/07: gnu: go-gopkg.in-asn1-ber.v1: Fix tests for go-1.11.

2018-11-12 Thread Pierre Neidhardt
ambrevar pushed a commit to branch master
in repository guix.

commit 66fa8f0f77ac26766e5547ffdaa67cf6c261bd8e
Author: Pierre Neidhardt 
Date:   Tue Nov 6 18:10:42 2018 +0100

gnu: go-gopkg.in-asn1-ber.v1: Fix tests for go-1.11.

* gnu/packages/syncthing.scm (go-gopkg.in-asn1-ber.v1): Fix tests for 
go-1.11.
---
 gnu/packages/syncthing.scm | 11 ++-
 1 file changed, 10 insertions(+), 1 deletion(-)

diff --git a/gnu/packages/syncthing.scm b/gnu/packages/syncthing.scm
index 7e4ff0e..c29c88a 100644
--- a/gnu/packages/syncthing.scm
+++ b/gnu/packages/syncthing.scm
@@ -1267,7 +1267,16 @@ Prometheus HTTP API.")
 "1y8bvzbxpw0lfnn7pbcdwzqj4l90qj6xf88dvv9pxd9yl5g6cskx"
 (build-system go-build-system)
 (arguments
- '(#:import-path "gopkg.in/asn1-ber.v1"))
+ '(#:import-path "gopkg.in/asn1-ber.v1"
+   ;; Tests don't pass "vet" on go-1.11.  See
+   ;; https://github.com/go-asn1-ber/asn1-ber/issues/20.
+   #:phases
+   (modify-phases %standard-phases
+ (replace 'check
+   (lambda* (#:key import-path #:allow-other-keys)
+ (invoke "go" "test"
+ "-vet=off"
+ import-path))
 (synopsis "ASN.1 BER encoding and decoding in Go")
 (description "This package provides ASN.1 BER encoding and decoding in the
 Go language.")



branch master updated (6c84390 -> 5c47584)

2018-11-12 Thread Pierre Neidhardt
ambrevar pushed a change to branch master
in repository guix.

  from  6c84390   guix system: Invoking 'guix system init' twice keeps 
timestamps zeroed.
   new  9a65a05   gnu: go: Update default to 1.11.
   new  0fd115d   build-system/go: Plan removal of the pkg folder for 
go-1.11 onward.
   new  46a37b5   gnu: go-github-com-prometheus-common-expfmt: Fix tests 
for go-1.11.
   new  d4780c8   gnu: go-github-com-audriusbutkevicius-cli: Fix tests for 
go-1.11.
   new  66fa8f0   gnu: go-gopkg.in-asn1-ber.v1: Fix tests for go-1.11.
   new  46a4ae2   gnu: go-github-com-wtolson-go-taglib: Fix tests and build 
for go-1.11.
   new  5c47584   gnu: go-github-com-aarzilli-golua: Fix for go-1.11.

The 7 revisions listed above as "new" are entirely new to this
repository and will be described in separate emails.  The revisions
listed as "adds" were already present in the repository and have only
been added to this reference.


Summary of changes:
 gnu/packages/golang.scm| 49 +++---
 gnu/packages/syncthing.scm | 31 +++---
 guix/build/go-build-system.scm |  3 +++
 3 files changed, 63 insertions(+), 20 deletions(-)



01/07: gnu: go: Update default to 1.11.

2018-11-12 Thread Pierre Neidhardt
ambrevar pushed a commit to branch master
in repository guix.

commit 9a65a052016572b61e3c4247fcdf9e0478656f71
Author: Pierre Neidhardt 
Date:   Sun Nov 11 22:02:18 2018 +0100

gnu: go: Update default to 1.11.

* gnu/packages/golang.scm (go): Update default to 1.11.
---
 gnu/packages/golang.scm | 2 +-
 1 file changed, 1 insertion(+), 1 deletion(-)

diff --git a/gnu/packages/golang.scm b/gnu/packages/golang.scm
index e49372d..5b84ced 100644
--- a/gnu/packages/golang.scm
+++ b/gnu/packages/golang.scm
@@ -528,7 +528,7 @@ in the style of communicating sequential processes 
(@dfn{CSP}).")
  (setenv "GOGC" "400")
  #t)
 
-(define-public go go-1.9)
+(define-public go go-1.11)
 
 (define-public go-github-com-alsm-ioprogress
   (let ((commit "063c3725f436e7fba0c8f588547bee21ffec7ac5")



02/07: build-system/go: Plan removal of the pkg folder for go-1.11 onward.

2018-11-12 Thread Pierre Neidhardt
ambrevar pushed a commit to branch master
in repository guix.

commit 0fd115d536d59e5160329546f09943c278b15cdb
Author: Pierre Neidhardt 
Date:   Sun Nov 11 22:03:08 2018 +0100

build-system/go: Plan removal of the pkg folder for go-1.11 onward.

* guix/build/go-build-system.scm (install): New comment.
---
 guix/build/go-build-system.scm | 3 +++
 1 file changed, 3 insertions(+)

diff --git a/guix/build/go-build-system.scm b/guix/build/go-build-system.scm
index 6be0167..022d4fe 100644
--- a/guix/build/go-build-system.scm
+++ b/guix/build/go-build-system.scm
@@ -204,6 +204,9 @@ respectively."
 $GOPATH/pkg, so we have to copy them into the output directory manually.
 Compiled executable files should have already been installed to the store based
 on $GOBIN in the build phase."
+  ;; TODO: From go-1.10 onward, the pkg folder should not be needed (see
+  ;; https://lists.gnu.org/archive/html/guix-devel/2018-11/msg00208.html).
+  ;; Remove it?
   (when (file-exists? "pkg")
 (copy-recursively "pkg" (string-append (assoc-ref outputs "out") "/pkg")))
   #t)



branch master updated (89c7894 -> 0ead0b4)

2018-11-11 Thread Pierre Neidhardt
ambrevar pushed a change to branch master
in repository guix.

  from  89c7894   gnu: faust-2: Update to 2.5.23.
   new  50ee7e9   gnu: gtk-doc: Use local docbook-xsl.
   new  0ead0b4   gnu: webkitgtk: Include documentation.

The 2 revisions listed above as "new" are entirely new to this
repository and will be described in separate emails.  The revisions
listed as "adds" were already present in the repository and have only
been added to this reference.


Summary of changes:
 gnu/packages/gtk.scm|  8 +++-
 gnu/packages/webkit.scm | 29 -
 2 files changed, 35 insertions(+), 2 deletions(-)



02/02: gnu: webkitgtk: Include documentation.

2018-11-11 Thread Pierre Neidhardt
ambrevar pushed a commit to branch master
in repository guix.

commit 0ead0b4d2c025ad1b4a293fb6cbb8a578b7dd87d
Author: Pierre Neidhardt 
Date:   Fri Nov 9 19:18:55 2018 +0100

gnu: webkitgtk: Include documentation.

* gnu/packages/webkit.scm (webkitgtk): Include documentation.
---
 gnu/packages/webkit.scm | 29 -
 1 file changed, 28 insertions(+), 1 deletion(-)

diff --git a/gnu/packages/webkit.scm b/gnu/packages/webkit.scm
index d1890c8..dfff53c 100644
--- a/gnu/packages/webkit.scm
+++ b/gnu/packages/webkit.scm
@@ -4,6 +4,7 @@
 ;;; Copyright © 2015 Ricardo Wurmus 
 ;;; Copyright © 2015, 2016, 2017, 2018 Mark H Weaver 
 ;;; Copyright © 2018 Tobias Geerinckx-Rice 
+;;; Copyright © 2018 Pierre Neidhardt 
 ;;;
 ;;; This file is part of GNU Guix.
 ;;;
@@ -31,6 +32,7 @@
   #:use-module (gnu packages base)
   #:use-module (gnu packages bison)
   #:use-module (gnu packages databases)
+  #:use-module (gnu packages docbook)
   #:use-module (gnu packages enchant)
   #:use-module (gnu packages flex)
   #:use-module (gnu packages gcc)
@@ -66,11 +68,13 @@
(base32
 "147r7an41920zl4x9srdva7fxvw2znjin5ldjkhay1cndv9gih0m"
 (build-system cmake-build-system)
+(outputs '("out" "doc"))
 (arguments
  '(#:tests? #f ; no tests
#:build-type "Release" ; turn off debugging symbols to save space
#:configure-flags (list
   "-DPORT=GTK"
+  "-DENABLE_GTKDOC=ON" ; No doc by default
   (string-append ; uses lib64 by default
"-DLIB_INSTALL_DIR="
(assoc-ref %outputs "out") "/lib")
@@ -87,7 +91,28 @@
   ;; XXX Disable WOFF2 ‘web fonts’.  These were never
   ;; supported in our previous builds.  Enabling them
   ;; requires building libwoff2 and possibly woff2dec.
-  "-DUSE_WOFF2=OFF")))
+  "-DUSE_WOFF2=OFF")
+   #:phases
+   (modify-phases %standard-phases
+ (add-after 'unpack 'patch-gtk-doc-scan
+   (lambda* (#:key inputs #:allow-other-keys)
+ (substitute* 
"Source/WebKit/WebProcess/InjectedBundle/API/gtk/DOM/docs/webkitdomgtk-docs.sgml"
+   (("http://www.oasis-open.org/docbook/xml/4.1.2/docbookx.dtd;)
+(string-append (assoc-ref inputs "docbook-xml")
+   "/xml/dtd/docbook/docbookx.dtd")))
+ (substitute* 
"Source/WebKit/UIProcess/API/gtk/docs/webkit2gtk-docs.sgml"
+   (("http://www.oasis-open.org/docbook/xml/4.1.2/docbookx.dtd;)
+(string-append (assoc-ref inputs "docbook-xml")
+   "/xml/dtd/docbook/docbookx.dtd")))
+ #t))
+ (add-after 'install 'move-doc-files
+   (lambda* (#:key outputs #:allow-other-keys)
+ (let ((out (assoc-ref outputs "out"))
+   (doc (assoc-ref outputs "doc")))
+   (mkdir-p (string-append doc "/share"))
+   (rename-file (string-append out "/share/gtk-doc")
+(string-append doc "/share/gtk-doc"))
+   #t))
 (native-inputs
  `(("bison" ,bison)
("gettext" ,gettext-minimal)
@@ -97,6 +122,8 @@
("perl" ,perl)
("pkg-config" ,pkg-config)
("python" ,python-2) ; incompatible with Python 3 (print syntax)
+   ("gtk-doc" ,gtk-doc) ; For documentation generation
+   ("docbook-xml" ,docbook-xml) ; For documentation generation
("ruby" ,ruby)))
 (propagated-inputs
  `(("gtk+" ,gtk+)



01/02: gnu: gtk-doc: Use local docbook-xsl.

2018-11-11 Thread Pierre Neidhardt
ambrevar pushed a commit to branch master
in repository guix.

commit 50ee7e93fcd881d3bf996954bcd5176aa7c54d21
Author: Pierre Neidhardt 
Date:   Fri Nov 9 19:17:05 2018 +0100

gnu: gtk-doc: Use local docbook-xsl.

* gnu/packages/gtk.scm (gtk-doc): Use local docbook-xsl.
---
 gnu/packages/gtk.scm | 8 +++-
 1 file changed, 7 insertions(+), 1 deletion(-)

diff --git a/gnu/packages/gtk.scm b/gnu/packages/gtk.scm
index 640bd75..0d62b80 100644
--- a/gnu/packages/gtk.scm
+++ b/gnu/packages/gtk.scm
@@ -19,6 +19,7 @@
 ;;; Copyright © 2017 Marius Bakke 
 ;;; Copyright © 2018 Alex Vong 
 ;;; Copyright © 2018 Arun Isaac 
+;;; Copyright © 2018 Pierre Neidhardt 
 ;;;
 ;;; This file is part of GNU Guix.
 ;;;
@@ -1411,7 +1412,12 @@ information.")
(string-append (assoc-ref inputs "docbook-xsl")
   "/xml/xsl/docbook-xsl-"
   ,(package-version docbook-xsl)
-  "/html/chunk.xsl")))
+  "/html/chunk.xsl"))
+  
(("http://docbook.sourceforge.net/release/xsl/current/common/en.xml;)
+   (string-append (assoc-ref inputs "docbook-xsl")
+  "/xml/xsl/docbook-xsl-"
+  ,(package-version docbook-xsl)
+  "/common/en.xml")))
  #t))
  (add-after 'patch-gtk-doc-scan 'patch-test-out
(lambda _



02/02: gnu: Add emacs-gtk-look.

2018-11-09 Thread Pierre Neidhardt
ambrevar pushed a commit to branch master
in repository guix.

commit ddd925f608bf7bf9af367447ef937e92d531a941
Author: Pierre Neidhardt 
Date:   Fri Nov 9 11:32:25 2018 +0100

gnu: Add emacs-gtk-look.

* gnu/packages/emacs.scm (emacs-gtk-look): New variable.
---
 gnu/packages/emacs.scm | 38 ++
 1 file changed, 38 insertions(+)

diff --git a/gnu/packages/emacs.scm b/gnu/packages/emacs.scm
index 3c7d902..c6008e6 100644
--- a/gnu/packages/emacs.scm
+++ b/gnu/packages/emacs.scm
@@ -12500,3 +12500,41 @@ fix its formatting.  @command{clang-format} is a tool 
that formats C/C++/Obj-C
 code according to a set of style options, see
 @url{http://clang.llvm.org/docs/ClangFormatStyleOptions.html}.;)
   (license license:gpl3+
+
+(define-public emacs-gtk-look
+  (package
+(name "emacs-gtk-look")
+(version "29")
+(source (origin
+  (method url-fetch)
+  (uri "https://download.tuxfamily.org/user42/gtk-look.el;)
+  (sha256
+   (base32
+"14p2nwrd51cr1v06fxbjjn6jdrkf9d6vcxhmscm0kl677s25ypsp"
+(build-system emacs-build-system)
+(arguments
+ `(#:phases
+   (modify-phases %standard-phases
+ (add-after 'unpack 'configure
+   (lambda _
+ ;; File is read-only.
+ (chmod "gtk-look.el" #o644)
+ (emacs-substitute-variables "gtk-look.el"
+   ("gtk-lookup-devhelp-indices"
+'(list (expand-file-name 
"~/.guix-profile/share/gtk-doc/html/*/*.devhelp*"
+ #t)
+(home-page "http://user42.tuxfamily.org/gtk-look/index.html;)
+(synopsis "Find and display HTML documentation for GTK, GNOME and Glib")
+(description "@command{gtk-look} finds and displays HTML documentation for
+GTK, GNOME and Glib functions and variables in Emacs, similar to what
+info-lookup-symbol does for info files (C-h S).  The documentation is expected
+to be devhelp indexes with HTML files.  The location of the indexes can be
+customized.  In addition to C code development @command{gtk-look} is good for
+
+@itemize
+@item @command{perl-gtk2}, recognising class funcs like
+@command{Gtk2::Label->new} and bare method names like @command{set_text}.
+@item @command{guile-gnome}, recognising methods like @command{set-text} and
+classes like @command{}.
+@end itemize\n")
+(license license:gpl3+)))



01/02: gnu: Add xmlrpc-c.

2018-11-09 Thread Pierre Neidhardt
ambrevar pushed a commit to branch master
in repository guix.

commit 2cce23bfb8fbb57c3f11780a939d74b5bd9ed3a2
Author: Pierre Neidhardt 
Date:   Fri Nov 9 11:31:17 2018 +0100

gnu: Add xmlrpc-c.

* gnu/packages/xml.scm (xmlrpc-c): New variable.
---
 gnu/packages/xml.scm | 38 ++
 1 file changed, 38 insertions(+)

diff --git a/gnu/packages/xml.scm b/gnu/packages/xml.scm
index c1f14d7..347ac87 100644
--- a/gnu/packages/xml.scm
+++ b/gnu/packages/xml.scm
@@ -19,6 +19,7 @@
 ;;; Copyright © 2017 Alex Vong 
 ;;; Copyright © 2017 Petter 
 ;;; Copyright © 2017 Stefan Reichör 
+;;; Copyright © 2018 Pierre Neidhardt 
 ;;;
 ;;; This file is part of GNU Guix.
 ;;;
@@ -39,6 +40,7 @@
   #:use-module (gnu packages)
   #:use-module (gnu packages autotools)
   #:use-module (gnu packages compression)
+  #:use-module (gnu packages curl)
   #:use-module (gnu packages gnupg)
   #:use-module (gnu packages java)
   #:use-module (gnu packages gnuzilla)
@@ -2095,3 +2097,39 @@ derivations of regular expressions.")
  "The Haskell XML Toolbox bases on the ideas of HaXml and HXML, but
 introduces a more general approach for processing XML with Haskell.")
 (license license:expat)))
+
+(define-public xmlrpc-c
+  (package
+(name "xmlrpc-c")
+(version "1.43.08")
+(source (origin
+ (method url-fetch)
+ (uri (string-append 
"mirror://sourceforge/xmlrpc-c/Xmlrpc-c%20Super%20Stable/"
+ version "/xmlrpc-c-" version ".tgz"))
+ (sha256
+  (base32
+   "18zwbj6i2hpcn5riiyp8i6rml0sfv60dd7phw1x8g4r4lj2bbxf9"
+(build-system gnu-build-system)
+(inputs
+ `(("curl" ,curl)))
+(native-inputs
+ `(;; For tools, if ever needed.
+   ("perl" ,perl)))
+(arguments
+ `(#:make-flags ; Add $libdir to the RUNPATH of all the executables.
+   (list (string-append "LDFLAGS_PERSONAL=-Wl,-rpath=" %output "/lib"))
+   #:phases
+   (modify-phases %standard-phases
+ (add-after 'unpack 'fix-/bin/sh-in-tests
+   (lambda _
+ (substitute* "GNUmakefile"
+   (("#! /bin/sh") (which "sh")))
+ #t)
+(home-page "http://xmlrpc-c.sourceforge.net/;)
+(synopsis "Lightweight RPC library based on XML and HTTP")
+(description
+ "XML-RPC is a quick-and-easy way to make procedure calls over the 
Internet.
+It converts the procedure call into an XML document, sends it to a remote
+server using HTTP, and gets back the response as XML.  This library provides a
+modular implementation of XML-RPC for C and C++.")
+(license (list license:psfl license:expat



branch master updated (97f33b0 -> ddd925f)

2018-11-09 Thread Pierre Neidhardt
ambrevar pushed a change to branch master
in repository guix.

  from  97f33b0   gnu: guile-newt: Update to revision 1.
   new  2cce23b   gnu: Add xmlrpc-c.
   new  ddd925f   gnu: Add emacs-gtk-look.

The 2 revisions listed above as "new" are entirely new to this
repository and will be described in separate emails.  The revisions
listed as "adds" were already present in the repository and have only
been added to this reference.


Summary of changes:
 gnu/packages/emacs.scm | 38 ++
 gnu/packages/xml.scm   | 38 ++
 2 files changed, 76 insertions(+)



branch master updated (e340725 -> 2705780)

2018-11-08 Thread Pierre Neidhardt
ambrevar pushed a change to branch master
in repository guix.

  from  e340725   gnu: kodi: Update to 18.0b5.
   new  2705780   gnu: Add emacs-clang-format.

The 1 revisions listed above as "new" are entirely new to this
repository and will be described in separate emails.  The revisions
listed as "adds" were already present in the repository and have only
been added to this reference.


Summary of changes:
 gnu/packages/emacs.scm | 37 +
 1 file changed, 37 insertions(+)



01/01: gnu: Add emacs-clang-format.

2018-11-08 Thread Pierre Neidhardt
ambrevar pushed a commit to branch master
in repository guix.

commit 2705780f3f4d15740cbd9d54a5133aced15a7200
Author: Pierre Neidhardt 
Date:   Thu Nov 8 13:08:26 2018 +0100

gnu: Add emacs-clang-format.

* gnu/packages/emacs.scm (emacs-clang-format): New variable.
---
 gnu/packages/emacs.scm | 37 +
 1 file changed, 37 insertions(+)

diff --git a/gnu/packages/emacs.scm b/gnu/packages/emacs.scm
index 4821c18..3c7d902 100644
--- a/gnu/packages/emacs.scm
+++ b/gnu/packages/emacs.scm
@@ -12463,3 +12463,40 @@ correctly.")
 @item helm-slime-repl-history: Select an input from the SLIME REPL history and 
insert it.
 @end itemize\n")
   (license license:gpl3+
+
+(define-public emacs-clang-format
+  (let ((commit "5556c31528af2661bed3011bd63ffc0ed44e18a0"))
+(package
+  (name "emacs-clang-format")
+  (version (git-version "0.0.0" "1" commit))
+  (source (origin
+(method git-fetch)
+(uri (git-reference
+  (url "https://github.com/emacsorphanage/clang-format;)
+  (commit commit)))
+(file-name (git-file-name name version))
+(sha256
+ (base32
+  "0ynvnp3vrcpngmwakb23xv4xn7jbkg43s196q7pg9nkl13x4n2nq"
+  (build-system emacs-build-system)
+  (inputs
+   `(("clang" ,clang)))
+  (arguments
+   `(#:phases
+ (modify-phases %standard-phases
+   (add-after 'unpack 'configure
+ (lambda* (#:key inputs #:allow-other-keys)
+   (let ((clang (assoc-ref inputs "clang")))
+ ;; Repo is read-only.
+ (chmod "clang-format.el" #o644)
+ (emacs-substitute-variables "clang-format.el"
+   ("clang-format-executable"
+(string-append clang "/bin/clang-format"
+   #t)
+  (home-page "https://github.com/emacsorphanage/clang-format;)
+  (synopsis "Format code using clang-format")
+  (description "This package allows to filter code through clang-format to
+fix its formatting.  @command{clang-format} is a tool that formats C/C++/Obj-C
+code according to a set of style options, see
+@url{http://clang.llvm.org/docs/ClangFormatStyleOptions.html}.;)
+  (license license:gpl3+



branch master updated (695db2f -> 426ffb8)

2018-11-05 Thread Pierre Neidhardt
ambrevar pushed a change to branch master
in repository guix.

  from  695db2f   gnu: Add emacs-helm-slime.
   new  426ffb8   gnu: emacs-mu4e-conversation: Update to 20181105.

The 1 revisions listed above as "new" are entirely new to this
repository and will be described in separate emails.  The revisions
listed as "adds" were already present in the repository and have only
been added to this reference.


Summary of changes:
 gnu/packages/emacs.scm | 6 +++---
 1 file changed, 3 insertions(+), 3 deletions(-)



01/01: gnu: emacs-mu4e-conversation: Update to 20181105.

2018-11-05 Thread Pierre Neidhardt
ambrevar pushed a commit to branch master
in repository guix.

commit 426ffb830ab3977cbfc7fa6282d2ba54cfbdf695
Author: Pierre Neidhardt 
Date:   Mon Nov 5 20:22:06 2018 +0100

gnu: emacs-mu4e-conversation: Update to 20181105.

* gnu/packages/emacs.scm (emacs-mu4e-conversation): Update to 20181105.
---
 gnu/packages/emacs.scm | 6 +++---
 1 file changed, 3 insertions(+), 3 deletions(-)

diff --git a/gnu/packages/emacs.scm b/gnu/packages/emacs.scm
index 3114a2e..4821c18 100644
--- a/gnu/packages/emacs.scm
+++ b/gnu/packages/emacs.scm
@@ -11746,10 +11746,10 @@ file.")
   (deprecated-package "emacs-wgrep-helm" emacs-wgrep))
 
 (define-public emacs-mu4e-conversation
-  (let ((commit "223cc66e99c7665326e3d991d6d383cb0d7512bb"))
+  (let ((commit "54368a009474276247bdf39683e25ea68ae1f943"))
 (package
   (name "emacs-mu4e-conversation")
-  (version (git-version "20180722" "2" commit))
+  (version (git-version "20181105" "3" commit))
   (source
(origin
  (method url-fetch)
@@ -11760,7 +11760,7 @@ file.")
  (file-name (string-append name "-" version "-checkout"))
  (sha256
   (base32
-   "1ivy7pihhma465hi25p1y45dyi8h52nsm2m0cvizj5sw36jw0n81"
+   "1zqnp1d3cxyvzsd76d5iw40lkif19k9svlbhqy6dvqiaqm0jbd15"
   (build-system emacs-build-system)
   (propagated-inputs
`(("mu" ,mu)))



branch master updated (c9f3d38 -> 695db2f)

2018-11-05 Thread Pierre Neidhardt
ambrevar pushed a change to branch master
in repository guix.

  from  c9f3d38   gnu: linux-libre: Update to 4.19.1.
   new  695db2f   gnu: Add emacs-helm-slime.

The 1 revisions listed above as "new" are entirely new to this
repository and will be described in separate emails.  The revisions
listed as "adds" were already present in the repository and have only
been added to this reference.


Summary of changes:
 gnu/packages/emacs.scm | 30 ++
 1 file changed, 30 insertions(+)



01/01: gnu: Add emacs-helm-slime.

2018-11-05 Thread Pierre Neidhardt
ambrevar pushed a commit to branch master
in repository guix.

commit 695db2f98a9099aaea9289f3a34c43e8d120d8b5
Author: Pierre Neidhardt 
Date:   Mon Nov 5 13:58:04 2018 +0100

gnu: Add emacs-helm-slime.

* gnu/packages/emacs.scm (emacs-helm-slime): New variable.
---
 gnu/packages/emacs.scm | 30 ++
 1 file changed, 30 insertions(+)

diff --git a/gnu/packages/emacs.scm b/gnu/packages/emacs.scm
index d5ad38d..3114a2e 100644
--- a/gnu/packages/emacs.scm
+++ b/gnu/packages/emacs.scm
@@ -12433,3 +12433,33 @@ correctly.")
   (synopsis "Color ANSI codes in the REPL of SLIME")
   (description "Color ANSI codes in the REPL of SLIME")
   (license license:gpl2+
+
+(define-public emacs-helm-slime
+  (let ((commit "9980925f3e5f6ac5a30369d2a544e82006a79c76"))
+(package
+  (name "emacs-helm-slime")
+  (version (git-version "0.0.0" "1" commit))
+  (source (origin
+(method git-fetch)
+(uri (git-reference
+  (url "https://github.com/emacs-helm/helm-slime;)
+  (commit commit)))
+(file-name (git-file-name name version))
+(sha256
+ (base32
+  "0xa07gpfkzwn522x9573mq5mfxvbawdgd0m93gqj6w5a14wk8zzh"
+  (build-system emacs-build-system)
+  (propagated-inputs
+   `(("emacs-helm" ,emacs-helm)
+ ("emacs-slime" ,emacs-slime)))
+  (home-page "https://github.com/emacs-helm/helm-slime;)
+  (synopsis "Helm for SLIME, the Superior Lisp Interaction Mode for Emacs")
+  (description "Helm-SLIME defines a few new commands:
+
+@itemize
+@item helm-slime-complete: Select a symbol from the SLIME completion systems.
+@item helm-slime-list-connections: Yet another slime-list-connections with 
Helm.
+@item: helm-slime-apropos: Yet another slime-apropos with Helm.
+@item helm-slime-repl-history: Select an input from the SLIME REPL history and 
insert it.
+@end itemize\n")
+  (license license:gpl3+



branch master updated (30012b7 -> 97b7b96)

2018-11-04 Thread Pierre Neidhardt
ambrevar pushed a change to branch master
in repository guix.

  from  30012b7   gnu: myrepos: Wrap the webcheckout binary.
   new  97b7b96   gnu: go-github-com-urfave-cli: Remove duplicate 
declaration.

The 1 revisions listed above as "new" are entirely new to this
repository and will be described in separate emails.  The revisions
listed as "adds" were already present in the repository and have only
been added to this reference.


Summary of changes:
 gnu/packages/golang.scm | 25 -
 1 file changed, 25 deletions(-)



01/01: gnu: go-github-com-urfave-cli: Remove duplicate declaration.

2018-11-04 Thread Pierre Neidhardt
ambrevar pushed a commit to branch master
in repository guix.

commit 97b7b96efc2a65f2805567191237451b34e4d966
Author: Pierre Neidhardt 
Date:   Sun Nov 4 23:31:08 2018 +0100

gnu: go-github-com-urfave-cli: Remove duplicate declaration.

* gnu/packages/golang.scm (go-github-com-urfave-cli): Remove duplicate 
declaration.
---
 gnu/packages/golang.scm | 25 -
 1 file changed, 25 deletions(-)

diff --git a/gnu/packages/golang.scm b/gnu/packages/golang.scm
index 82e8173..e49372d 100644
--- a/gnu/packages/golang.scm
+++ b/gnu/packages/golang.scm
@@ -1572,31 +1572,6 @@ Features include:
 optimized for performance yet simple to use.")
   (license license:expat
 
-(define-public go-github-com-urfave-cli
-  (let ((commit "cfb38830724cc34fedffe9a2a29fb54fa9169cd1")
-(revision "0"))
-(package
-  (name "go-github-com-urfave-cli")
-  (version (git-version "0.0.0" revision commit))
-  (source
-   (origin
- (method git-fetch)
- (uri (git-reference
-   (url "https://github.com/urfave/cli.git;)
-   (commit commit)))
- (file-name (git-file-name name version))
- (sha256
-  (base32
-   "0y6f4sbzkiiwrxbl15biivj8c7qwxnvm3zl2dd3mw4wzg4x10ygj"
-  (build-system go-build-system)
-  (arguments
-   '(#:import-path "github.com/urfave/cli"))
-  (home-page "https://github.com/urfave/cli;)
-  (synopsis "Library for building command-line interfaces in Go")
-  (description "This package provides a library for building command-line
-interfaces in Go.")
-  (license license:expat
-
 (define-public go-github-com-blang-semver
   (let ((commit "60ec3488bfea7cca02b021d106d9911120d25fe9")
 (revision "0"))



01/01: gnu: git: Add "subtree" output.

2018-10-27 Thread Pierre Neidhardt
ambrevar pushed a commit to branch master
in repository guix.

commit 1316413558e288c577d132bee41adcce4bc1e24a
Author: Pierre Neidhardt 
Date:   Thu Oct 25 19:31:38 2018 +0200

gnu: git: Add "subtree" output.

* gnu/packages/version-control.scm (git)[outputs]: Add "subtree".
---
 gnu/packages/version-control.scm | 35 ++-
 1 file changed, 34 insertions(+), 1 deletion(-)

diff --git a/gnu/packages/version-control.scm b/gnu/packages/version-control.scm
index 44b9769..ccb1f5d 100644
--- a/gnu/packages/version-control.scm
+++ b/gnu/packages/version-control.scm
@@ -166,7 +166,11 @@ as well as the classic centralized workflow.")
 version ".tar.xz"))
   (sha256
(base32
-"1vn6pi9yvw7rnb9dvi1yjrvv39fqd1m9mwbaffqwizs3gaf91br7"))
+"1vn6pi9yvw7rnb9dvi1yjrvv39fqd1m9mwbaffqwizs3gaf91br7"
+  ;; For subtree documentation.
+  ("asciidoc" ,asciidoc)
+  ("docbook-xsl" ,docbook-xsl)
+  ("xmlto" ,xmlto)))
(inputs
 `(("curl" ,curl)
   ("expat" ,expat)
@@ -198,6 +202,7 @@ as well as the classic centralized workflow.")
   "send-email"; for git-send-email
   "svn"   ; git-svn
   "credential-netrc"  ; git-credential-netrc
+  "subtree"   ; git-subtree
   "gui")) ; gitk, git gui
(arguments
 `(#:make-flags `("V=1";more verbose compilation
@@ -256,6 +261,26 @@ as well as the classic centralized workflow.")
 ;; Add the "PM.stamp" to avoid "no rule to make target".
 (call-with-output-file "perl/PM.stamp" (const #t))
 #t))
+(add-after 'build 'build-subtree
+  (lambda* (#:key inputs #:allow-other-keys)
+(with-directory-excursion "contrib/subtree"
+  (substitute* "Makefile"
+;; Apparently `xmlto' does not bother to looks up the 
stylesheets
+;; specified in the XML, unlike the above substitution.  
Instead it
+;; uses a hard-coded URL.  Work around it here, but if this is
+;; common perhaps we should hardcode this path in xmlto itself.
+(("\\$\\(XMLTO\\) -m \\$\\(MANPAGE_XSL\\) man")
+ (string-append "$(XMLTO) -x "
+(string-append (assoc-ref inputs "docbook-xsl")
+   "/xml/xsl/docbook-xsl-"
+   ,(package-version docbook-xsl))
+"/manpages/docbook.xsl -m $(MANPAGE_XSL) 
man")))
+  (invoke "make")
+  (invoke "make" "install")
+  (invoke "make" "install-doc")
+  (substitute* "git-subtree"
+(("/bin/sh") (which "sh"
+#t))
 (add-before 'check 'patch-tests
   (lambda _
 (let ((store-directory (%store-directory)))
@@ -317,6 +342,14 @@ as well as the classic centralized workflow.")
 `("PERL5LIB" ":" prefix
   (,(string-append (assoc-ref outputs "out") "/share/perl5"
   #t)))
+(add-after 'install 'install-subtree
+  (lambda* (#:key outputs #:allow-other-keys)
+(let ((subtree (assoc-ref outputs "subtree")))
+  (install-file "contrib/subtree/git-subtree"
+(string-append subtree "/bin"))
+  (install-file "contrib/subtree/git-subtree.1"
+(string-append subtree "/share/man/man1"))
+  #t)))
 (add-after 'install 'split
   (lambda* (#:key inputs outputs #:allow-other-keys)
 ;; Split the binaries to the various outputs.



branch master updated (abc98e3 -> 1316413)

2018-10-27 Thread Pierre Neidhardt
ambrevar pushed a change to branch master
in repository guix.

  from  abc98e3   services: httpd: Allow using it with PHP.
   new  1316413   gnu: git: Add "subtree" output.

The 1 revisions listed above as "new" are entirely new to this
repository and will be described in separate emails.  The revisions
listed as "adds" were already present in the repository and have only
been added to this reference.


Summary of changes:
 gnu/packages/version-control.scm | 35 ++-
 1 file changed, 34 insertions(+), 1 deletion(-)



01/03: gnu: Add next-browser (DRAFT).

2018-10-25 Thread Pierre Neidhardt
ambrevar pushed a commit to branch wip-next4
in repository guix.

commit 48c6349cec7fbd776417bc060f835a783e2b3157
Author: Pierre Neidhardt 
Date:   Tue Aug 21 18:14:52 2018 +0200

gnu: Add next-browser (DRAFT).

*  (next-browser (DRAFT)): New variable.
---
 gnu/packages/web-browsers.scm | 80 ++-
 1 file changed, 79 insertions(+), 1 deletion(-)

diff --git a/gnu/packages/web-browsers.scm b/gnu/packages/web-browsers.scm
index 2c2767d..deedc74 100644
--- a/gnu/packages/web-browsers.scm
+++ b/gnu/packages/web-browsers.scm
@@ -25,6 +25,7 @@
 (define-module (gnu packages web-browsers)
   #:use-module ((guix licenses) #:prefix license:)
   #:use-module (guix packages)
+  #:use-module (guix utils)
   #:use-module (gnu packages)
   #:use-module (gnu packages compression)
   #:use-module (gnu packages databases)
@@ -35,6 +36,7 @@
   #:use-module (gnu packages gnupg)
   #:use-module (gnu packages libevent)
   #:use-module (gnu packages libidn)
+  #:use-module (gnu packages lisp)
   #:use-module (gnu packages lua)
   #:use-module (gnu packages gnome)
   #:use-module (gnu packages ncurses)
@@ -48,6 +50,8 @@
   #:use-module (gnu packages webkit)
   #:use-module (gnu packages xorg)
   #:use-module (guix download)
+  #:use-module (guix git-download)
+  #:use-module (guix build-system asdf)
   #:use-module (guix build-system gnu)
   #:use-module (guix build-system glib-or-gtk)
   #:use-module (guix build-system python))
@@ -309,7 +313,7 @@ access.")
 '(16 24 32 48 64 128 256 512))
(install-file "icons/qutebrowser.svg"
  (string-append hicolor "/scalable/apps"))
-   
+
(substitute* "qutebrowser.desktop"
  (("Exec=qutebrowser")
   (string-append "Exec=" out "/bin/qutebrowser")))
@@ -320,3 +324,77 @@ access.")
 (description "qutebrowser is a keyboard-focused browser with a minimal
 GUI.  It is based on PyQt5 and QtWebKit.")
 (license license:gpl3+)))
+
+(define-public next-browser-core
+  (let ((commit "fb6511ba82295f724b753d184fa066d7b6ab"))
+(package
+  (name "next-browser-core")
+  (version (git-version "0.0.8" "1" commit))
+  (source (origin
+(method git-fetch)
+(uri (git-reference
+  (url "https://github.com/atlas-engineer/next;)
+  (commit commit)))
+;; (patches
+;;  (search-patches "next-fix-duplicate-function.patch"))
+(sha256
+ (base32
+  "0cmnl02gaxa4kmss75x748kv5k6rbl0rablvnr3p7d2h44cb5yj3"))
+(file-name (git-file-name name version
+  (build-system asdf-build-system/sbcl)
+  ;; TODO: Move Common Lisp libraries to "native-inputs"?
+  ;; TODO: Does runtime depends on gsettings-desktop-schemas and 
glib-networking?
+  (inputs
+   `(("alexandria" ,sbcl-alexandria)
+ ("cl-strings" ,sbcl-cl-strings)
+ ("cl-string-match" ,sbcl-cl-string-match)
+ ("puri" ,sbcl-puri)
+ ("queues.simple-queue" ,sbcl-queues.simple-queue)
+ ("cl-sqlite" ,sbcl-cl-sqlite)
+ ("parenscript" ,sbcl-parenscript)
+ ("cl-json" ,sbcl-cl-json)
+ ("unix-opts" ,sbcl-unix-opts)))
+  (arguments
+   `( ;; #:tests? #f
+ #:asd-file "next/next.asd"
+ #:asd-system-name "next"))
+  (home-page "http://next.atlas.engineer/;)
+  (synopsis "Emacs-inspired web browser in extensible in Common Lisp")
+  (description "Next is a keyboard-oriented, extensible web-browser 
inspired
+by Emacs and designed for power users.  The application has familiar
+key-bindings, is fully configurable and extensible in Lisp.")
+  (license license:expat
+
+(define-public next-browser
+  (package
+(inherit next-browser-core)
+(name "next-browser")
+(outputs '("out" "lib"))
+(inputs
+ `(("next" ,next-browser-core)
+   ("cl-cffi-gtk" ,sbcl-cl-cffi-gtk)
+   ("cl-webkit" ,sbcl-cl-webkit)
+   ("lparallel" ,sbcl-lparallel)))
+(arguments
+ (substitute-keyword-arguments (package-arguments next-browser-core)
+   ((#:asd-system-name _ #f) "next/gtk")
+   ((#:phases phases '%standard-phases)
+`(modify-phases ,phases
+   (add-before 'cleanup 'move-bundle
+ (lambda* (#:key outputs #:allow-other-keys)
+   (define lib (assoc-ref outputs "lib"))
+   (define actual-fasl (string-append
+lib
+ 

branch wip-next4 created (now c178e33)

2018-10-25 Thread Pierre Neidhardt
ambrevar pushed a change to branch wip-next4
in repository guix.

at  c178e33   next (FIX name)

This branch includes the following new commits:

   new  48c6349   gnu: Add next-browser (DRAFT).
   new  da1278e   next-browser (FIX ferada)
   new  c178e33   next (FIX name)

The 3 revisions listed above as "new" are entirely new to this
repository and will be described in separate emails.  The revisions
listed as "adds" were already present in the repository and have only
been added to this reference.




02/03: next-browser (FIX ferada)

2018-10-25 Thread Pierre Neidhardt
ambrevar pushed a commit to branch wip-next4
in repository guix.

commit da1278e97233fd38277f935b8cc33196ecb19cf4
Author: Pierre Neidhardt 
Date:   Thu Oct 25 09:47:22 2018 +0200

next-browser (FIX ferada)
---
 gnu/packages/web-browsers.scm | 10 --
 1 file changed, 4 insertions(+), 6 deletions(-)

diff --git a/gnu/packages/web-browsers.scm b/gnu/packages/web-browsers.scm
index deedc74..a0db4a7 100644
--- a/gnu/packages/web-browsers.scm
+++ b/gnu/packages/web-browsers.scm
@@ -326,17 +326,15 @@ GUI.  It is based on PyQt5 and QtWebKit.")
 (license license:gpl3+)))
 
 (define-public next-browser-core
-  (let ((commit "fb6511ba82295f724b753d184fa066d7b6ab"))
+  (let ((commit "984961706a64d6168d551d4ac9be089bfc3444f2"))
 (package
   (name "next-browser-core")
   (version (git-version "0.0.8" "1" commit))
   (source (origin
 (method git-fetch)
 (uri (git-reference
-  (url "https://github.com/atlas-engineer/next;)
+  (url "https://github.com/ferada/next;)
   (commit commit)))
-;; (patches
-;;  (search-patches "next-fix-duplicate-function.patch"))
 (sha256
  (base32
   "0cmnl02gaxa4kmss75x748kv5k6rbl0rablvnr3p7d2h44cb5yj3"))
@@ -356,9 +354,9 @@ GUI.  It is based on PyQt5 and QtWebKit.")
  ("unix-opts" ,sbcl-unix-opts)))
   (arguments
`( ;; #:tests? #f
- #:asd-file "next/next.asd"
+ #:asd-file "next.asd"
  #:asd-system-name "next"))
-  (home-page "http://next.atlas.engineer/;)
+  (home-page "https://next.atlas.engineer/;)
   (synopsis "Emacs-inspired web browser in extensible in Common Lisp")
   (description "Next is a keyboard-oriented, extensible web-browser 
inspired
 by Emacs and designed for power users.  The application has familiar



03/03: next (FIX name)

2018-10-25 Thread Pierre Neidhardt
ambrevar pushed a commit to branch wip-next4
in repository guix.

commit c178e339684f80bca6823c55fcf8b0218b110e3a
Author: Pierre Neidhardt 
Date:   Thu Oct 25 16:08:04 2018 +0200

next (FIX name)
---
 gnu/packages/web-browsers.scm | 24 
 1 file changed, 12 insertions(+), 12 deletions(-)

diff --git a/gnu/packages/web-browsers.scm b/gnu/packages/web-browsers.scm
index a0db4a7..e252531 100644
--- a/gnu/packages/web-browsers.scm
+++ b/gnu/packages/web-browsers.scm
@@ -325,19 +325,19 @@ access.")
 GUI.  It is based on PyQt5 and QtWebKit.")
 (license license:gpl3+)))
 
-(define-public next-browser-core
-  (let ((commit "984961706a64d6168d551d4ac9be089bfc3444f2"))
+(define-public next-core
+  (let ((commit "6564e3c4b487882a1ba36d120268c8a62a7dbfc0"))
 (package
-  (name "next-browser-core")
+  (name "next-core")
   (version (git-version "0.0.8" "1" commit))
   (source (origin
 (method git-fetch)
 (uri (git-reference
-  (url "https://github.com/ferada/next;)
+  (url "https://github.com/atlas-engineer/next;)
   (commit commit)))
 (sha256
  (base32
-  "0cmnl02gaxa4kmss75x748kv5k6rbl0rablvnr3p7d2h44cb5yj3"))
+  "02higawx0fqc7fwxa91pvjywag5dgz7dydqiqdxkxah9y2zzk9p3"))
 (file-name (git-file-name name version
   (build-system asdf-build-system/sbcl)
   ;; TODO: Move Common Lisp libraries to "native-inputs"?
@@ -363,18 +363,18 @@ by Emacs and designed for power users.  The application 
has familiar
 key-bindings, is fully configurable and extensible in Lisp.")
   (license license:expat
 
-(define-public next-browser
+(define-public next
   (package
-(inherit next-browser-core)
-(name "next-browser")
+(inherit next-core)
+(name "next")
 (outputs '("out" "lib"))
 (inputs
- `(("next" ,next-browser-core)
+ `(("next" ,next-core)
("cl-cffi-gtk" ,sbcl-cl-cffi-gtk)
("cl-webkit" ,sbcl-cl-webkit)
("lparallel" ,sbcl-lparallel)))
 (arguments
- (substitute-keyword-arguments (package-arguments next-browser-core)
+ (substitute-keyword-arguments (package-arguments next-core)
((#:asd-system-name _ #f) "next/gtk")
((#:phases phases '%standard-phases)
 `(modify-phases ,phases
@@ -383,7 +383,7 @@ key-bindings, is fully configurable and extensible in 
Lisp.")
(define lib (assoc-ref outputs "lib"))
(define actual-fasl (string-append
 lib
-"/lib/sbcl/next/source/next-gtk.fasl"))
+"/lib/sbcl/source/next-gtk.fasl"))
(define expected-fasl (string-append
   lib
   "/lib/sbcl/gtk--system.fasl"))
@@ -392,7 +392,7 @@ key-bindings, is fully configurable and extensible in 
Lisp.")
(add-after 'create-symlinks 'build-program
  (lambda* (#:key outputs #:allow-other-keys)
(build-program
-(string-append (assoc-ref outputs "out") "/bin/next-browser")
+(string-append (assoc-ref outputs "out") "/bin/next")
 outputs
 #:entry-program '((next:start) 0)
 #:dependencies '("next-gtk"))



01/03: gnu: Add go-github-com-kr-fs.

2018-10-24 Thread Pierre Neidhardt
ambrevar pushed a commit to branch master
in repository guix.

commit 5b6c3ad0cda0f50843cbaaafc27c0482109b1e23
Author: Pierre Neidhardt 
Date:   Wed Oct 24 14:39:35 2018 +0200

gnu: Add go-github-com-kr-fs.

* gnu/packages/golang.scm (go-github-com-kr-fs): New variable.
---
 gnu/packages/golang.scm | 24 
 1 file changed, 24 insertions(+)

diff --git a/gnu/packages/golang.scm b/gnu/packages/golang.scm
index 9b46907..60d3ee7 100644
--- a/gnu/packages/golang.scm
+++ b/gnu/packages/golang.scm
@@ -3310,3 +3310,27 @@ fast and distributable command line applications in an 
expressive way.")
   (description "A simple log library, for when you don't really care to
 have super fancy logs.")
   (license license:expat
+
+(define-public go-github-com-kr-fs
+  (let ((commit "1455def202f6e05b95cc7bfc7e8ae67ae5141eba")
+(revision "0"))
+(package
+  (name "go-github-com-kr-fs")
+  (version (git-version "0.1.0" revision commit))
+  (source
+   (origin
+ (method git-fetch)
+ (uri (git-reference
+   (url "https://github.com/kr/fs.git;)
+   (commit commit)))
+ (file-name (git-file-name name version))
+ (sha256
+  (base32
+   "11zg176x9hr9q7fsk95r6q0wf214gg4czy02slax4x56n79g6a7q"
+  (build-system go-build-system)
+  (arguments
+   '(#:import-path "github.com/kr/fs"))
+  (home-page "https://github.com/kr/fs;)
+  (synopsis "Filesystem-related functions for Go")
+  (description "Package fs provides filesystem-related functions.")
+  (license license:bsd-3



03/03: gnu: Add gx-go.

2018-10-24 Thread Pierre Neidhardt
ambrevar pushed a commit to branch master
in repository guix.

commit 96b4977a1924ca648a3cceb15443539104d294f1
Author: Pierre Neidhardt 
Date:   Wed Oct 24 14:41:09 2018 +0200

gnu: Add gx-go.

* gnu/packages/ipfs.scm (gx-go): New variable.
---
 gnu/packages/ipfs.scm | 50 ++
 1 file changed, 50 insertions(+)

diff --git a/gnu/packages/ipfs.scm b/gnu/packages/ipfs.scm
index 09366a0..f40c118 100644
--- a/gnu/packages/ipfs.scm
+++ b/gnu/packages/ipfs.scm
@@ -160,3 +160,53 @@ powerful and simple.")
 (arguments
  '(#:unpack-path "github.com/whyrusleeping/gx"
#:import-path "github.com/whyrusleeping/gx/gxutil"
+
+(define-public gx-go
+  (package
+(name "gx-go")
+(version "1.9.0")
+(source
+ (origin
+   (method git-fetch)
+   (uri (git-reference
+ (url "https://github.com/whyrusleeping/gx-go;)
+ (commit (string-append "v" version
+   (file-name (git-file-name name version))
+   (sha256
+(base32
+ "0fdy4b3ymqw6hzvvjwq37mfrdmizc8lxm53axw93n3x6118na9jc"
+(build-system go-build-system)
+(arguments
+ '(#:import-path "github.com/whyrusleeping/gx-go"))
+(native-inputs
+ `(("go-github-com-whyrusleeping-gx-util" 
,go-github-com-whyrusleeping-gx-util)
+   ("go-github-com-kr-fs" ,go-github-com-kr-fs)
+   ("go-github-com-gxed-hashland-keccakpg" 
,go-github-com-gxed-hashland-keccakpg)
+   ("go-github-com-ipfs-go-ipfs-api" ,go-github-com-ipfs-go-ipfs-api)
+   ("go-github-com-ipfs-go-ipfs-cmdkit-files" 
,go-github-com-ipfs-go-ipfs-cmdkit-files)
+   ("go-github-com-libp2p-go-flow-metrics" 
,go-github-com-libp2p-go-flow-metrics)
+   ("go-github-com-libp2p-go-libp2p-crypto" 
,go-github-com-libp2p-go-libp2p-crypto)
+   ("go-github-com-libp2p-go-libp2p-metrics" 
,go-github-com-libp2p-go-libp2p-metrics)
+   ("go-github-com-libp2p-go-libp2p-peer" 
,go-github-com-libp2p-go-libp2p-peer)
+   ("go-github-com-libp2p-go-libp2p-protocol" 
,go-github-com-libp2p-go-libp2p-protocol)
+   ("go-github-com-minio-blake2b-simd" ,go-github-com-minio-blake2b-simd)
+   ("go-github-com-minio-sha256-simd" ,go-github-com-minio-sha256-simd)
+   ("go-github-com-mitchellh-go-homedir" 
,go-github-com-mitchellh-go-homedir)
+   ("go-github-com-mr-tron-base58" ,go-github-com-mr-tron-base58)
+   ("go-github-com-multiformats-go-multiaddr" 
,go-github-com-multiformats-go-multiaddr)
+   ("go-github-com-multiformats-go-multiaddr-net" 
,go-github-com-multiformats-go-multiaddr-net)
+   ("go-github-com-multiformats-go-multihash" 
,go-github-com-multiformats-go-multihash)
+   ("go-github-com-spaolacci-murmur3" ,go-github-com-spaolacci-murmur3)
+   ("go-github-com-whyrusleeping-tar-utils" 
,go-github-com-whyrusleeping-tar-utils)
+   ("go-golang-org-x-crypto-union" ,(go-golang-org-x-crypto-union))
+   ("go-github-com-btcsuite-btcd-btcec" ,go-github-com-btcsuite-btcd-btcec)
+   ("go-github-com-gogo-protobuf-proto" ,go-github-com-gogo-protobuf-proto)
+   ("go-github-com-sabhiram-go-gitignore" 
,go-github-com-sabhiram-go-gitignore)
+   ("go-github-com-urfave-cli" ,go-github-com-urfave-cli)
+   ("go-github-com-whyrusleeping-progmeter" 
,go-github-com-whyrusleeping-progmeter)
+   ("go-github-com-whyrusleeping-stump" 
,go-github-com-whyrusleeping-stump)))
+(home-page "https://github.com/whyrusleeping/gx-go;)
+(synopsis "Golang subtool for the @command{gx} package manager")
+(description "A subtool for the @command{gx} package manager for packages
+written in Go.")
+(license license:expat)))



02/03: gnu: Add go-github-com-whyrusleeping-gx-util.

2018-10-24 Thread Pierre Neidhardt
ambrevar pushed a commit to branch master
in repository guix.

commit e82ae6730240f6533d565dbae49401ba073ed872
Author: Pierre Neidhardt 
Date:   Wed Oct 24 14:40:06 2018 +0200

gnu: Add go-github-com-whyrusleeping-gx-util.

* gnu/packages/ipfs.scm (go-github-com-whyrusleeping-gx-util): New variable.
---
 gnu/packages/ipfs.scm | 8 
 1 file changed, 8 insertions(+)

diff --git a/gnu/packages/ipfs.scm b/gnu/packages/ipfs.scm
index 85fd6ac..09366a0 100644
--- a/gnu/packages/ipfs.scm
+++ b/gnu/packages/ipfs.scm
@@ -152,3 +152,11 @@ that are shared between @command{go-ipfs/commands} and its 
rewrite
 distributed, content addressed filesystem IPFS.  It aims to be flexible,
 powerful and simple.")
   (license license:expat
+
+(define-public go-github-com-whyrusleeping-gx-util
+  (package
+(inherit gx)
+(name "go-github-com-whyrusleeping-gx-util")
+(arguments
+ '(#:unpack-path "github.com/whyrusleeping/gx"
+   #:import-path "github.com/whyrusleeping/gx/gxutil"



branch master updated (96bdf90 -> 96b4977)

2018-10-24 Thread Pierre Neidhardt
ambrevar pushed a change to branch master
in repository guix.

  from  96bdf90   gnu: dotherside: Update home-page.
   new  5b6c3ad   gnu: Add go-github-com-kr-fs.
   new  e82ae67   gnu: Add go-github-com-whyrusleeping-gx-util.
   new  96b4977   gnu: Add gx-go.

The 3 revisions listed above as "new" are entirely new to this
repository and will be described in separate emails.  The revisions
listed as "adds" were already present in the repository and have only
been added to this reference.


Summary of changes:
 gnu/packages/golang.scm | 24 
 gnu/packages/ipfs.scm   | 58 +
 2 files changed, 82 insertions(+)



04/04: gx-download (DRAFT)

2018-10-24 Thread Pierre Neidhardt
ambrevar pushed a commit to branch wip-ipfs2
in repository guix.

commit 376a9fa08fa3ffb5a5ab0980acf75abdfc797486
Author: Pierre Neidhardt 
Date:   Wed Oct 17 18:56:38 2018 +0200

gx-download (DRAFT)
---
 guix/build/gx.scm|  60 +++
 guix/gx-download.scm | 131 +++
 2 files changed, 191 insertions(+)

diff --git a/guix/build/gx.scm b/guix/build/gx.scm
new file mode 100644
index 000..4ba0197
--- /dev/null
+++ b/guix/build/gx.scm
@@ -0,0 +1,60 @@
+;;; GNU Guix --- Functional package management for GNU
+;;; Copyright © 2018 Pierre Neidhardt 
+;;;
+;;; This file is part of GNU Guix.
+;;;
+;;; GNU Guix is free software; you can redistribute it and/or modify it
+;;; under the terms of the GNU General Public License as published by
+;;; the Free Software Foundation; either version 3 of the License, or (at
+;;; your option) any later version.
+;;;
+;;; GNU Guix is distributed in the hope that it will be useful, but
+;;; WITHOUT ANY WARRANTY; without even the implied warranty of
+;;; MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the
+;;; GNU General Public License for more details.
+;;;
+;;; You should have received a copy of the GNU General Public License
+;;; along with GNU Guix.  If not, see <http://www.gnu.org/licenses/>.
+
+(define-module (guix build gx)
+  #:use-module (guix build utils)
+  #:use-module (ice-9 popen)
+  #:export (gx-fetch))
+
+;;; Commentary:
+;;;
+;;; This is the build-side support code of (guix gx-download).  It allows a
+;;; gx hash to be fetched.
+;;;
+;;; Code:
+
+(define* (gx-fetch hash directory
+   #:key (gx-command "gx"))
+  "Fetch IPFS HASH into DIRECTORY.  HASH must be a valid IPFS hash.
+Return #t on success, #f otherwise."
+
+  (mkdir-p directory)
+
+  (with-directory-excursion directory
+;; TODO: Silence verbose output.
+
+;; Initialization is interactive, but we can shut it up by piping it to
+;; nothing.
+(let ((port (open-pipe* OPEN_WRITE gx-command "init")))
+  (display "\n" port)
+  (if (not (eqv? 0 (status:exit-val (close-pipe port
+  (error "Cannot initialize gx package")))
+
+;; Fetch to the "vendor" directory.
+(let ((port (open-pipe* OPEN_WRITE gx-command "import" "--local" hash)))
+  (display "N\n" port)
+  (if (not (eqv? 0 (status:exit-val (close-pipe port
+  (error "Cannot import gx package")))
+
+(delete-file "package.json")
+(mkdir-p   "gx/ipfs")
+(rename-file (string-append  "vendor/gx/ipfs/" hash) (string-append 
"gx/ipfs/" hash))
+(delete-file-recursively "vendor")
+#t))
+
+;;; gx.scm ends here
diff --git a/guix/gx-download.scm b/guix/gx-download.scm
new file mode 100644
index 000..4acf7bf
--- /dev/null
+++ b/guix/gx-download.scm
@@ -0,0 +1,131 @@
+;;; GNU Guix --- Functional package management for GNU
+;;; Copyright © 2018 Pierre Neidhardt 
+;;;
+;;; This file is part of GNU Guix.
+;;;
+;;; GNU Guix is free software; you can redistribute it and/or modify it
+;;; under the terms of the GNU General Public License as published by
+;;; the Free Software Foundation; either version 3 of the License, or (at
+;;; your option) any later version.
+;;;
+;;; GNU Guix is distributed in the hope that it will be useful, but
+;;; WITHOUT ANY WARRANTY; without even the implied warranty of
+;;; MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the
+;;; GNU General Public License for more details.
+;;;
+;;; You should have received a copy of the GNU General Public License
+;;; along with GNU Guix.  If not, see <http://www.gnu.org/licenses/>.
+
+(define-module (guix gx-download)
+  #:use-module (guix gexp)
+  #:use-module (guix store)
+  #:use-module (guix monads)
+  #:use-module (guix records)
+  #:use-module (guix packages)
+  #:use-module (guix utils)
+  #:use-module (guix modules)
+  ;; #:autoload   (guix build-system gnu) (standard-packages)
+  #:use-module (ice-9 match)
+  #:use-module (ice-9 vlist)
+  #:use-module (srfi srfi-1)
+  #:export (gx-reference
+gx-reference?
+gx-reference-hash
+
+gx-fetch
+gx-version
+gx-file-name))
+
+;;; Commentary:
+;;;
+;;; An  method that uses gx to fetch a specific hash over IPFS.
+;;; See https://github.com/whyrusleeping/gx.
+;;; The hash is specified with a  object.
+;;;
+;;; Code:
+
+(define-record-type* 
+  gx-reference make-gx-reference
+  gx-reference?
+  (hash gx-reference-hash))
+
+(define (gx-package)
+  "Return the default gx package."
+  (let ((distro (resolve-interface '(gnu packages ipfs
+(module-ref distro 'gx)))
+
+(define* (gx-fetch ref hash-algo hash
+#:optional name
+#:key (system (%current-system)) (guile (default-guile))
+(

01/04: go-ipfs (DRAFT)

2018-10-24 Thread Pierre Neidhardt
ambrevar pushed a commit to branch wip-ipfs2
in repository guix.

commit f28254d0c48e5d199051c0e776f2b2538173c763
Author: Pierre Neidhardt 
Date:   Wed Oct 24 12:29:32 2018 +0200

go-ipfs (DRAFT)
---
 gnu/packages/ipfs.scm | 52 +++
 1 file changed, 52 insertions(+)

diff --git a/gnu/packages/ipfs.scm b/gnu/packages/ipfs.scm
index 85fd6ac..4e9661e 100644
--- a/gnu/packages/ipfs.scm
+++ b/gnu/packages/ipfs.scm
@@ -152,3 +152,55 @@ that are shared between @command{go-ipfs/commands} and its 
rewrite
 distributed, content addressed filesystem IPFS.  It aims to be flexible,
 powerful and simple.")
   (license license:expat
+
+(define-public go-ipfs
+  (let ((commit
+  "9bf4e4145ea897ced2f9aa2087296b3beda6e941")
+(revision "0"))
+(package
+  (name "go-ipfs")
+  (version (git-version "0.4.17" revision commit))
+  (source
+(origin
+  (method git-fetch)
+  (uri (git-reference
+ (url "https://github.com/ipfs/go-ipfs.git;)
+ (commit commit)))
+  (file-name (git-file-name name version))
+  (sha256
+(base32
+  "01zqll453gbjjfkm6jvpp49i1al8ic3pdg3ivqhyiilcsmhf8b8i"
+  (build-system go-build-system)
+  (arguments
+   ;; install_unsupported:
+   ;;  @echo "note: this command has yet to be tested to build in the 
system you are using"
+   ;;  @echo "installing gx"
+   ;;  go get -v -u github.com/whyrusleeping/gx
+   ;;  go get -v -u github.com/whyrusleeping/gx-go
+   ;;  @echo check gx and gx-go
+   ;;  gx -v && gx-go -v
+   ;;  @echo downloading dependencies
+   ;;  gx install --global
+   ;;  @echo "installing go-ipfs"
+   ;;  go install -v -tags nofuse ./cmd/ipfs
+   '(#:import-path "github.com/ipfs/go-ipfs/cmd/ipfs"
+ #:unpack-path "github.com/ipfs/go-ipfs"
+ #:phases
+ (modify-phases %standard-phases
+   (add-before 'reset-gzip-timestamps 'make-gzip-archive-writable
+ (lambda* (#:key outputs #:allow-other-keys)
+   (map (lambda (file)
+  (make-file-writable file))
+(find-files
+ (assoc-ref outputs "out")
+ ".*\\.gz$"))
+   #t)
+  (native-inputs `())
+  (home-page "https://ipfs.io;)
+  (synopsis "IPFS implementation in Go ")
+  (description "IPFS is a global, versioned, peer-to-peer filesystem.  It
+combines good ideas from Git, BitTorrent, Kademlia, SFS, and the Web.  It is
+like a single bittorrent swarm, exchanging git objects.  IPFS provides an
+interface as simple as the HTTP web, but with permanence built in.  You can
+also mount the world at /ipfs.")
+  (license license:expat



03/04: gnu: ipfs-go-ipfs-cmdkit (DRAFT)

2018-10-24 Thread Pierre Neidhardt
ambrevar pushed a commit to branch wip-ipfs2
in repository guix.

commit b90dc0641033db1273a392faea61f82e9aeb1e85
Author: Pierre Neidhardt 
Date:   Wed Oct 17 15:39:12 2018 +0200

gnu: ipfs-go-ipfs-cmdkit (DRAFT)
---
 gnu/packages/ipfs.scm | 25 +
 1 file changed, 25 insertions(+)

diff --git a/gnu/packages/ipfs.scm b/gnu/packages/ipfs.scm
index 4e9661e..fbe5724 100644
--- a/gnu/packages/ipfs.scm
+++ b/gnu/packages/ipfs.scm
@@ -20,9 +20,34 @@
   #:use-module ((guix licenses) #:prefix license:)
   #:use-module (guix packages)
   #:use-module (guix git-download)
+  #:use-module (guix gx-download)
   #:use-module (guix build-system go)
   #:use-module (gnu packages golang))
 
+(define-public ipfs-go-ipfs-cmdkit
+  (let ((ipfs-hash "QmSP88ryZkHSRn1fnngAaV2Vcn63WUJzAavnRM9CVdU1Ky"))
+(package
+  (name "ipfs-go-ipfs-cmdkit")
+  (version (gx-version "1.1.3" "1" ipfs-hash))
+  (source
+   (origin
+ (method gx-fetch)
+ (uri (gx-reference (hash ipfs-hash)))
+ (file-name (gx-file-name name version))
+ (sha256
+  (base32
+   "0qk6fshgdmhp8dip2ksm13j6nywi41m9mn0czkvmw6b697z85l2r"
+  (build-system go-build-system)
+  (arguments
+   `(#:unpack-path ,(string-append "gx/ipfs/" ipfs-hash "/go-ipfs-config")
+ #:import-path ,(string-append "gx/ipfs/" ipfs-hash 
"/go-ipfs-config")))
+  (home-page
+   "https://github.com/ipfs/go-ipfs-cmdkit;)
+  (synopsis "Shared types, functions and values for go-ipfs")
+  (description "@command{cmdkit} offers some types, functions and values
+that are shared between @command{go-ipfs/commands} and its rewrite 
@command{go-ipfs-cmds}.")
+  (license license:expat
+
 (define-public go-github-com-ipfs-go-ipfs-cmdkit-files
   (let ((commit
   "386fcf8f18a185ec121676665fe2d9574496048d")



02/04: import: Add Go importer

2018-10-24 Thread Pierre Neidhardt
ambrevar pushed a commit to branch wip-ipfs2
in repository guix.

commit 6eaa449d63afa217c590f0520bea043ab1f6e107
Author: Pierre Neidhardt 
Date:   Wed Oct 17 15:38:21 2018 +0200

import: Add Go importer
---
 Makefile.am   |  10 +-
 doc/guix.texi |   9 +-
 guix/import/gopkg.scm | 356 ++
 guix/scripts/import.scm   |   2 +-
 guix/scripts/import/gopkg.scm |  99 
 5 files changed, 470 insertions(+), 6 deletions(-)

diff --git a/Makefile.am b/Makefile.am
index 1acf0b1..ab67221 100644
--- a/Makefile.am
+++ b/Makefile.am
@@ -188,8 +188,9 @@ MODULES =   \
   guix/import/cabal.scm\
   guix/import/cran.scm \
   guix/import/hackage.scm  \
-  guix/import/elpa.scm \
-  guix/import/texlive.scm  \
+  guix/import/elpa.scm \
+  guix/import/texlive.scm  \
+  guix/import/gopkg.scm\
   guix/scripts.scm \
   guix/scripts/download.scm\
   guix/scripts/perform-download.scm\
@@ -214,8 +215,9 @@ MODULES =   \
   guix/scripts/import/gnu.scm  \
   guix/scripts/import/nix.scm  \
   guix/scripts/import/hackage.scm  \
-  guix/scripts/import/elpa.scm \
-  guix/scripts/import/texlive.scm  \
+  guix/scripts/import/elpa.scm \
+  guix/scripts/import/texlive.scm  \
+  guix/scripts/import/gopkg.scm\
   guix/scripts/environment.scm \
   guix/scripts/publish.scm \
   guix/scripts/edit.scm\
diff --git a/doc/guix.texi b/doc/guix.texi
index 12346c4..1112b81 100644
--- a/doc/guix.texi
+++ b/doc/guix.texi
@@ -20,7 +20,7 @@ Copyright @copyright{} 2014, 2015, 2016 Alex Kost@*
 Copyright @copyright{} 2015, 2016 Mathieu Lirzin@*
 Copyright @copyright{} 2014 Pierre-Antoine Rault@*
 Copyright @copyright{} 2015 Taylan Ulrich Bayırlı/Kammer@*
-Copyright @copyright{} 2015, 2016, 2017 Leo Famulari@*
+Copyright @copyright{} 2015, 2016, 2017, 2018 Leo Famulari@*
 Copyright @copyright{} 2015, 2016, 2017, 2018 Ricardo Wurmus@*
 Copyright @copyright{} 2016 Ben Woodcroft@*
 Copyright @copyright{} 2016, 2017, 2018 Chris Marusich@*
@@ -7179,6 +7179,13 @@ Import metadata from the crates.io Rust package 
repository
 @cindex OCaml
 Import metadata from the @uref{https://opam.ocaml.org/, OPAM} package
 repository used by the OCaml community.
+
+@item gopkg
+@cindex gopkg
+@cindex Golang
+@cindex Go
+Import metadata from the @uref{https://gopkg.in/, gopkg} package
+versioning service used by some Go software.
 @end table
 
 The structure of the @command{guix import} code is modular.  It would be
diff --git a/guix/import/gopkg.scm b/guix/import/gopkg.scm
new file mode 100644
index 000..204bf18
--- /dev/null
+++ b/guix/import/gopkg.scm
@@ -0,0 +1,356 @@
+;;; GNU Guix --- Functional package management for GNU
+;;; Copyright © 2018 Pierre-Antoine Rouby 
+;;;
+;;; This file is part of GNU Guix.
+;;;
+;;; GNU Guix is free software; you can redistribute it and/or modify it
+;;; under the terms of the GNU General Public License as published by
+;;; the Free Software Foundation; either version 3 of the License, or (at
+;;; your option) any later version.
+;;;
+;;; GNU Guix is distributed in the hope that it will be useful, but
+;;; WITHOUT ANY WARRANTY; without even the implied warranty of
+;;; MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the
+;;; GNU General Public License for more details.
+;;;
+;;; You should have received a copy of the GNU General Public License
+;;; along with GNU Guix.  If not, see <http://www.gnu.org/licenses/>.
+
+(define-module (guix import gopkg)
+  #:use-module (ice-9 match)
+  #:use-module (ice-9 regex)
+  #:use-module ((ice-9 rdelim) #:select (read-line))
+  #:use-module (srfi srfi-11)
+  #:use-module (texinfo string-utils) ; transform-string
+  #:use-module (gcrypt hash)
+  ;; #:use-module (guix hash)
+  #:use-module (guix base32)
+  #:use-module (guix serialization)
+  #:use-module (guix utils)
+  #:use-module (guix build utils)
+  #:use-module ((guix licenses) #:prefix license:)
+  #:export (gopkg->guix-package))
+
+(define (vcs-file? file stat)
+  ;; TODO: Factorize
+  (case (stat:type stat)
+((directory)
+ (member (basename file) '(".bzr" ".git" ".hg" ".svn" "CVS")))
+((regular)
+ ;; Git sub-modules have a '.git' file that is a regular text file.
+ (string=? (basename file) ".git"))
+(else
+ #f)))
+
+(define (file->hash-base32 file)
+  "Return hash of FILE in nix base32 sha256 format.  If FILE is a directory,
+exclude vcs f

branch wip-ipfs2 created (now 376a9fa)

2018-10-24 Thread Pierre Neidhardt
ambrevar pushed a change to branch wip-ipfs2
in repository guix.

at  376a9fa   gx-download (DRAFT)

This branch includes the following new commits:

   new  f28254d   go-ipfs (DRAFT)
   new  6eaa449   import: Add Go importer
   new  b90dc06   gnu: ipfs-go-ipfs-cmdkit (DRAFT)
   new  376a9fa   gx-download (DRAFT)

The 4 revisions listed above as "new" are entirely new to this
repository and will be described in separate emails.  The revisions
listed as "adds" were already present in the repository and have only
been added to this reference.




12/34: gnu: Add go-github-com-minio-sha256-simd.

2018-10-24 Thread Pierre Neidhardt
ambrevar pushed a commit to branch master
in repository guix.

commit ff2d11c3ce8dc1fb3715bffbc058fa4ab6b1
Author: Pierre Neidhardt 
Date:   Wed Oct 24 11:37:14 2018 +0200

gnu: Add go-github-com-minio-sha256-simd.

* gnu/packages/golang.scm (go-github-com-minio-sha256-simd): New variable.
---
 gnu/packages/golang.scm | 36 
 1 file changed, 36 insertions(+)

diff --git a/gnu/packages/golang.scm b/gnu/packages/golang.scm
index 1cc10d5..1631c0b 100644
--- a/gnu/packages/golang.scm
+++ b/gnu/packages/golang.scm
@@ -2696,3 +2696,39 @@ Although this package was primarily written for btcd, it 
has intentionally
 been designed so it can be used as a standalone package for any projects
 needing to use secp256k1 elliptic curve cryptography.")
   (license license:isc
+
+(define-public go-github-com-minio-sha256-simd
+  (let ((commit "51976451ce1942acbb55707a983ed232fa027110")
+(revision "0"))
+(package
+  (name "go-github-com-minio-sha256-simd")
+  (version (git-version "0.0.0" revision commit))
+  (source
+   (origin
+ (method git-fetch)
+ (uri (git-reference
+   (url "https://github.com/minio/sha256-simd.git;)
+   (commit commit)))
+ (file-name (git-file-name name version))
+ (sha256
+  (base32
+   "0kaxvpidf6ygkkb06vi95pirll31jnmywhyalfjvf7djhim2wr8f"
+  (build-system go-build-system)
+  (arguments
+   '(#:import-path "github.com/minio/sha256-simd"))
+  (home-page "https://github.com/minio/sha256-simd;)
+  (synopsis "Accelerate SHA256 computations in pure Go")
+  (description "Accelerate SHA256 computations in pure Go using AVX512 and
+AVX2 for Intel and ARM64 for ARM.  On AVX512 it provides an up to 8x
+improvement (over 3 GB/s per core) in comparison to AVX2.
+
+This package is designed as a replacement for @command{crypto/sha256}.  For
+Intel CPUs it has two flavors for AVX512 and AVX2 (AVX/SSE are also
+supported).  For ARM CPUs with the Cryptography Extensions, advantage is taken
+of the SHA2 instructions resulting in a massive performance improvement.
+
+This package uses Golang assembly.  The AVX512 version is based on the Intel's
+\"multi-buffer crypto library for IPSec\" whereas the other Intel
+implementations are described in \"Fast SHA-256 Implementations on Intel
+Architecture Processors\" by J. Guilford et al.")
+  (license license:asl2.0



33/34: gnu: Add go-github-com-ipfs-go-ipfs-api.

2018-10-24 Thread Pierre Neidhardt
ambrevar pushed a commit to branch master
in repository guix.

commit 566f13f8452a707e3cd7c5c3c86911d84b20bbcf
Author: Pierre Neidhardt 
Date:   Wed Oct 24 12:20:45 2018 +0200

gnu: Add go-github-com-ipfs-go-ipfs-api.

* gnu/packages/ipfs.scm (go-github-com-ipfs-go-ipfs-api): New variable.
---
 gnu/packages/ipfs.scm | 48 
 1 file changed, 48 insertions(+)

diff --git a/gnu/packages/ipfs.scm b/gnu/packages/ipfs.scm
index ff446da..812fcf6 100644
--- a/gnu/packages/ipfs.scm
+++ b/gnu/packages/ipfs.scm
@@ -50,3 +50,51 @@
 that are shared between @command{go-ipfs/commands} and its rewrite
 @command{go-ipfs-cmds}.")
   (license license:expat
+
+(define-public go-github-com-ipfs-go-ipfs-api
+  (let ((commit
+  "dafc2a13a4389ac1a6c2786e34ab70a4f26d3a3f")
+(revision "0"))
+(package
+  (name "go-github-com-ipfs-go-ipfs-api")
+  (version (git-version "1.3.1" revision commit))
+  (source
+   (origin
+ (method git-fetch)
+ (uri (git-reference
+   (url "https://github.com/ipfs/go-ipfs-api.git;)
+   (commit commit)))
+ (file-name (git-file-name name version))
+ (sha256
+  (base32
+   "06kibnwb037sqynk99j07wm8alvxwx3bari9gdax4jv93396kycj"
+  (build-system go-build-system)
+  (arguments
+   '(#:import-path "github.com/ipfs/go-ipfs-api"
+ ;; TODO: Tests fail, might need network access.
+ #:tests? #f))
+  (native-inputs
+   `(("go-github-com-ipfs-go-ipfs-cmdkit-files" 
,go-github-com-ipfs-go-ipfs-cmdkit-files)
+ ("go-github-com-libp2p-go-libp2p-metrics" 
,go-github-com-libp2p-go-libp2p-metrics)
+ ("go-github-com-libp2p-go-flow-metrics" 
,go-github-com-libp2p-go-flow-metrics)
+ ("go-github-com-libp2p-go-libp2p-peer" 
,go-github-com-libp2p-go-libp2p-peer)
+ ("go-github-com-libp2p-go-libp2p-protocol" 
,go-github-com-libp2p-go-libp2p-protocol)
+ ("go-github-com-libp2p-go-libp2p-crypto" 
,go-github-com-libp2p-go-libp2p-crypto)
+ ("go-github-com-mitchellh-go-homedir" 
,go-github-com-mitchellh-go-homedir)
+ ("go-github-com-multiformats-go-multiaddr" 
,go-github-com-multiformats-go-multiaddr)
+ ("go-github-com-multiformats-go-multiaddr-net" 
,go-github-com-multiformats-go-multiaddr-net)
+ ("go-github-com-btcsuite-btcd-btcec" 
,go-github-com-btcsuite-btcd-btcec)
+ ("go-github-com-gogo-protobuf-proto" 
,go-github-com-gogo-protobuf-proto)
+ ("go-github-com-minio-blake2b-simd" ,go-github-com-minio-blake2b-simd)
+ ("go-github-com-minio-sha256-simd" ,go-github-com-minio-sha256-simd)
+ ("go-github-com-mr-tron-base58" ,go-github-com-mr-tron-base58)
+ ("go-github-com-multiformats-go-multihash" 
,go-github-com-multiformats-go-multihash)
+ ("go-golang-org-x-crypto-union" ,(go-golang-org-x-crypto-union))
+ ("go-github-com-spaolacci-murmur3" ,go-github-com-spaolacci-murmur3)
+ ("go-github-com-gxed-hashland-keccakpg" 
,go-github-com-gxed-hashland-keccakpg)
+ ("go-github-com-whyrusleeping-tar-utils" 
,go-github-com-whyrusleeping-tar-utils)
+ ("go-github-com-cheekybits-is" ,go-github-com-cheekybits-is)))
+  (home-page "https://github.com/ipfs/go-ipfs-api;)
+  (synopsis "Unofficial Go interface to IPFS's HTTP API")
+  (description "An unofficial Go interface to IPFS's HTTP API")
+  (license license:expat



02/34: gnu: Move go-golang-org-x-crypto-union from syncthing.scm to golang.scm

2018-10-24 Thread Pierre Neidhardt
ambrevar pushed a commit to branch master
in repository guix.

commit 830dc25176349112c759ba3986c721089e9ec605
Author: Pierre Neidhardt 
Date:   Wed Oct 24 10:57:43 2018 +0200

gnu: Move go-golang-org-x-crypto-union from syncthing.scm to golang.scm

* gnu/packages/syncthing.scm (go-golang-org-x-crypto-union): Delete.
* gnu/packages/golang.scm (go-golang-org-x-crypto-union): Add.
---
 gnu/packages/golang.scm| 42 +-
 gnu/packages/syncthing.scm | 38 --
 2 files changed, 41 insertions(+), 39 deletions(-)

diff --git a/gnu/packages/golang.scm b/gnu/packages/golang.scm
index 9c81534..f59ddd1 100644
--- a/gnu/packages/golang.scm
+++ b/gnu/packages/golang.scm
@@ -36,6 +36,7 @@
   #:use-module (guix git-download)
   #:use-module (guix packages)
   #:use-module (guix build-system gnu)
+  #:use-module (guix build-system trivial)
   #:use-module (guix build-system go)
   #:use-module (gnu packages admin)
   #:use-module (gnu packages gcc)
@@ -47,7 +48,8 @@
   #:use-module (gnu packages mp3)
   #:use-module (ice-9 match)
   #:use-module (srfi srfi-1)
-  #:export (go-github-com-gogo-protobuf-union))
+  #:export (go-github-com-gogo-protobuf-union)
+  #:export (go-golang-org-x-crypto-union))
 
 ;; According to https://golang.org/doc/install/gccgo, gccgo-4.8.2 includes a
 ;; complete go-1.1.2 implementation, gccgo-4.9 includes a complete go-1.2
@@ -988,6 +990,44 @@ Tiny Encryption Algorithm (XTEA) block cipher.")
   (home-page "https://go.googlesource.com/crypto/;)
   (license license:bsd-3
 
+;; Go searches for library modules by looking in the GOPATH environment
+;; variable.  This variable is a list of paths.  However, Go does not
+;; keep searching on GOPATH if it tries and fails to import a module.
+;; So, we use a union for packages sharing a namespace.
+(define* (go-golang-org-x-crypto-union #:optional
+(packages (list 
go-golang-org-x-crypto-blowfish
+
go-golang-org-x-crypto-bcrypt
+go-golang-org-x-crypto-tea
+go-golang-org-x-crypto-xtea
+
go-golang-org-x-crypto-pbkdf2
+
go-golang-org-x-crypto-twofish
+
go-golang-org-x-crypto-cast5
+
go-golang-org-x-crypto-salsa20)))
+  (package
+(name "go-golang-org-x-crypto")
+(version (package-version go-golang-org-x-crypto-bcrypt))
+(source #f)
+(build-system trivial-build-system)
+(arguments
+ '(#:modules ((guix build union))
+   #:builder (begin
+   (use-modules (ice-9 match)
+(guix build union))
+   (match %build-inputs
+ (((names . directories) ...)
+  (union-build (assoc-ref %outputs "out")
+   directories)
+  #t)
+(inputs (map (lambda (package)
+   (list (package-name package) package))
+ packages))
+(synopsis "Union of the Go x crypto libraries")
+(description "A union of the Golang cryptographic libraries.  A
+union is required because `go build` assumes that all of the headers and
+libraries are in the same directory.")
+(home-page (package-home-page go-golang-org-x-crypto-bcrypt))
+(license (package-license go-golang-org-x-crypto-bcrypt
+
 (define-public go-golang-org-x-net-ipv4
   (let ((commit "d866cfc389cec985d6fda2859936a575a55a3ab6")
 (revision "1"))
diff --git a/gnu/packages/syncthing.scm b/gnu/packages/syncthing.scm
index 0fe1d3d..48b52d2 100644
--- a/gnu/packages/syncthing.scm
+++ b/gnu/packages/syncthing.scm
@@ -728,44 +728,6 @@ generation.")
   (home-page "https://github.com/vitrun/qart;)
   (license bsd-3
 
-;; Go searches for library modules by looking in the GOPATH environment
-;; variable.  This variable is a list of paths.  However, Go does not
-;; keep searching on GOPATH if it tries and fails to import a module.
-;; So, we use a union for packages sharing a namespace.
-(define* (go-golang-org-x-crypto-union #:optional
-(packages (list 
go-golang-org-x-crypto-blowfish
-
go-golang-org-x-crypto-bcrypt
-go-golang-org-x-crypto-tea
-go-golang-org-x-crypto-xtea
-
go-golang-org-x-crypto-pbkdf2
-
go-golang-org-x-crypto-twofish
- 

13/34: gnu: Add go-github-com-libp2p-go-libp2p-crypto.

2018-10-24 Thread Pierre Neidhardt
ambrevar pushed a commit to branch master
in repository guix.

commit 71f3680499d578946193af3db08f19688fb48ce7
Author: Pierre Neidhardt 
Date:   Wed Oct 24 11:38:54 2018 +0200

gnu: Add go-github-com-libp2p-go-libp2p-crypto.

* gnu/packages/golang.scm (go-github-com-libp2p-go-libp2p-crypto): New 
variable.
---
 gnu/packages/golang.scm | 30 ++
 1 file changed, 30 insertions(+)

diff --git a/gnu/packages/golang.scm b/gnu/packages/golang.scm
index 1631c0b..4ee4a01 100644
--- a/gnu/packages/golang.scm
+++ b/gnu/packages/golang.scm
@@ -2732,3 +2732,33 @@ This package uses Golang assembly.  The AVX512 version 
is based on the Intel's
 implementations are described in \"Fast SHA-256 Implementations on Intel
 Architecture Processors\" by J. Guilford et al.")
   (license license:asl2.0
+
+(define-public go-github-com-libp2p-go-libp2p-crypto
+  (let ((commit "7240b40a3ddc47c4d17c15baabcbe45e5219171b")
+(revision "0"))
+(package
+  (name "go-github-com-libp2p-go-libp2p-crypto")
+  (version (git-version "2.0.1" revision commit))
+  (source
+   (origin
+ (method git-fetch)
+ (uri (git-reference
+   (url "https://github.com/libp2p/go-libp2p-crypto.git;)
+   (commit commit)))
+ (file-name (git-file-name name version))
+ (sha256
+  (base32
+   "0qwpy57qv5143l9dlfwfvpqsxdd2i4zwnawx1w4pmgxxim3nw1wb"
+  (build-system go-build-system)
+  (arguments
+   '(#:import-path "github.com/libp2p/go-libp2p-crypto"))
+  (native-inputs
+   `(("go-golang-org-x-crypto-ed25519" ,go-golang-org-x-crypto-ed25519)
+ ("go-github-com-btcsuite-btcd-btcec" 
,go-github-com-btcsuite-btcd-btcec)
+ ("go-github-com-gogo-protobuf-proto" 
,go-github-com-gogo-protobuf-proto)
+ ("go-github-com-minio-sha256-simd" ,go-github-com-minio-sha256-simd)))
+  (home-page
+   "https://github.com/libp2p/go-libp2p-crypto;)
+  (synopsis "Various cryptographic utilities used by IPFS")
+  (description "Various cryptographic utilities used by IPFS")
+  (license license:expat



10/34: gnu: Add go-github-com-btcsuite-btclog.

2018-10-24 Thread Pierre Neidhardt
ambrevar pushed a commit to branch master
in repository guix.

commit 171c3259fc47fd7c2ba3814bfffd4d716016cb6e
Author: Pierre Neidhardt 
Date:   Wed Oct 24 11:11:28 2018 +0200

gnu: Add go-github-com-btcsuite-btclog.

* gnu/packages/golang.scm (go-github-com-btcsuite-btclog): New variable.
---
 gnu/packages/golang.scm | 26 ++
 1 file changed, 26 insertions(+)

diff --git a/gnu/packages/golang.scm b/gnu/packages/golang.scm
index 2bea557..6447e28 100644
--- a/gnu/packages/golang.scm
+++ b/gnu/packages/golang.scm
@@ -2632,3 +2632,29 @@ includes offsets, byte values in hex, and ASCII output 
(only when using Dump
 style).
 @end itemize\n")
   (license license:isc
+
+(define-public go-github-com-btcsuite-btclog
+  (let ((commit "84c8d2346e9fc8c7b947e243b9c24e6df9fd206a")
+(revision "0"))
+(package
+  (name "go-github-com-btcsuite-btclog")
+  (version (git-version "0.0.3" revision commit))
+  (source
+   (origin
+ (method git-fetch)
+ (uri (git-reference
+   (url "https://github.com/btcsuite/btclog.git;)
+   (commit commit)))
+ (file-name (git-file-name name version))
+ (sha256
+  (base32
+   "02dl46wcnfpg9sqvg0ipipkpnd7lrf4fnvb9zy56jqa7mfcwc7wk"
+  (build-system go-build-system)
+  (arguments
+   '(#:import-path "github.com/btcsuite/btclog"))
+  (home-page "https://github.com/btcsuite/btclog;)
+  (synopsis "Subsystem aware logger for Go")
+  (description "Package @command{btclog} defines a logger interface and
+provides a default implementation of a subsystem-aware leveled logger
+implementing the same interface.")
+  (license license:isc



18/34: gnu: Add go-github-com-multiformats-go-multihash.

2018-10-24 Thread Pierre Neidhardt
ambrevar pushed a commit to branch master
in repository guix.

commit 2e42e587b43106980dbd8a6bfee2fd644c1a7f53
Author: Pierre Neidhardt 
Date:   Wed Oct 24 11:48:27 2018 +0200

gnu: Add go-github-com-multiformats-go-multihash.

* gnu/packages/golang.scm (go-github-com-multiformats-go-multihash): New 
variable.
---
 gnu/packages/golang.scm | 31 +++
 1 file changed, 31 insertions(+)

diff --git a/gnu/packages/golang.scm b/gnu/packages/golang.scm
index d8126d8..ab78038 100644
--- a/gnu/packages/golang.scm
+++ b/gnu/packages/golang.scm
@@ -2875,3 +2875,34 @@ MurmurHash revision (aka MurmurHash3).
 Reference algorithm has been slightly hacked as to support the streaming mode
 required by Go's standard Hash interface.")
   (license license:bsd-3
+
+(define-public go-github-com-multiformats-go-multihash
+  (let ((commit "97cdb562a04c6ef66d8ed40cd62f8fbcddd396d6")
+(revision "0"))
+(package
+  (name "go-github-com-multiformats-go-multihash")
+  (version (git-version "1.0.8" revision commit))
+  (source
+   (origin
+ (method git-fetch)
+ (uri (git-reference
+   (url "https://github.com/multiformats/go-multihash.git;)
+   (commit commit)))
+ (file-name (git-file-name name version))
+ (sha256
+  (base32
+   "02wd9akrwy4y5m0nig9m24p14bjjgb4n1djydrq8cm4yhbvjrrk0"
+  (build-system go-build-system)
+  (arguments
+   '(#:import-path "github.com/multiformats/go-multihash"))
+  (native-inputs
+   `(("go-github-com-mr-tron-base58" ,go-github-com-mr-tron-base58)
+ ("go-github-com-gxed-hashland-keccakpg" 
,go-github-com-gxed-hashland-keccakpg)
+ ("go-github-com-minio-blake2b-simd" ,go-github-com-minio-blake2b-simd)
+ ("go-github-com-minio-sha256-simd" ,go-github-com-minio-sha256-simd)
+ ("go-github-com-spaolacci-murmur3" ,go-github-com-spaolacci-murmur3)
+ ("go-golang-org-x-crypto-union" ,(go-golang-org-x-crypto-union
+  (home-page "https://github.com/multiformats/go-multihash;)
+  (synopsis "Multihash implementation in Go")
+  (description "Multihash implementation in Go.")
+  (license license:expat



27/34: gnu: Add go-github-com-sabhiram-go-gitignore.

2018-10-24 Thread Pierre Neidhardt
ambrevar pushed a commit to branch master
in repository guix.

commit 20f48e4b5da6b0ea818a10651900ed62315348e2
Author: Pierre Neidhardt 
Date:   Wed Oct 24 12:05:02 2018 +0200

gnu: Add go-github-com-sabhiram-go-gitignore.

* gnu/packages/golang.scm (go-github-com-sabhiram-go-gitignore): New 
variable.
---
 gnu/packages/golang.scm | 27 +++
 1 file changed, 27 insertions(+)

diff --git a/gnu/packages/golang.scm b/gnu/packages/golang.scm
index d1b5c86..f614c41 100644
--- a/gnu/packages/golang.scm
+++ b/gnu/packages/golang.scm
@@ -3181,3 +3181,30 @@ as conversion to and from @command{net.Addr}.")
 - because testing panics is ugly.
 @end itemize\n")
   (license license:expat
+
+(define-public go-github-com-sabhiram-go-gitignore
+  (let ((commit "d3107576ba9425fc1c85f4b3569c4631b805a02e")
+(revision "0"))
+(package
+  (name "go-github-com-sabhiram-go-gitignore")
+  (version (git-version "1.0.2" revision commit))
+  (source
+   (origin
+ (method git-fetch)
+ (uri (git-reference
+   (url "https://github.com/sabhiram/go-gitignore.git;)
+   (commit commit)))
+ (file-name (git-file-name name version))
+ (sha256
+  (base32
+   "1rdwyxgcsiwgmlqnc3k6h300mzlvjc3j21np4yh1h476wc8dvl0l"
+  (build-system go-build-system)
+  (arguments
+   '(#:import-path
+ "github.com/sabhiram/go-gitignore"))
+  (native-inputs
+   `(("go-github-com-stretchr-testify" ,go-github-com-stretchr-testify)))
+  (home-page "https://github.com/sabhiram/go-gitignore;)
+  (synopsis "Gitignore parser for Go")
+  (description "A @command{.gitignore} parser for Go.")
+  (license license:expat



30/34: gnu: Add go-github-com-whyrusleeping-progmeter.

2018-10-24 Thread Pierre Neidhardt
ambrevar pushed a commit to branch master
in repository guix.

commit 38566e975ec9a743f724efecd9829ebf630f6806
Author: Pierre Neidhardt 
Date:   Wed Oct 24 12:11:41 2018 +0200

gnu: Add go-github-com-whyrusleeping-progmeter.

* gnu/packages/golang.scm (go-github-com-whyrusleeping-progmeter): New 
variable.
---
 gnu/packages/golang.scm | 25 +
 1 file changed, 25 insertions(+)

diff --git a/gnu/packages/golang.scm b/gnu/packages/golang.scm
index 34d6011..de4e3f2 100644
--- a/gnu/packages/golang.scm
+++ b/gnu/packages/golang.scm
@@ -3260,3 +3260,28 @@ fast and distributable command line applications in an 
expressive way.")
   (description "A library to query JSON objects marshalled into
 @command{map[string]interface{}}.")
   (license license:expat
+
+(define-public go-github-com-whyrusleeping-progmeter
+  (let ((commit "f3e57218a75b913eff88d49a52c1debf9684ea04")
+(revision "0"))
+(package
+  (name "go-github-com-whyrusleeping-progmeter")
+  (version (git-version "0.0.0" revision commit))
+  (source
+   (origin
+ (method git-fetch)
+ (uri (git-reference
+   (url "https://github.com/whyrusleeping/progmeter.git;)
+   (commit commit)))
+ (file-name (git-file-name name version))
+ (sha256
+  (base32
+   "0xs8rz6yhpvj9512c5v3b8dwr2kivywnyyfxzdfbr6fy1xc8zskb"
+  (build-system go-build-system)
+  (arguments
+   '(#:import-path
+ "github.com/whyrusleeping/progmeter"))
+  (home-page "https://github.com/whyrusleeping/progmeter;)
+  (synopsis "Progress meter for Go")
+  (description "Progress meter for Go.")
+  (license license:expat



20/34: gnu: Add go-github-com-libp2p-go-libp2p-protocol.

2018-10-24 Thread Pierre Neidhardt
ambrevar pushed a commit to branch master
in repository guix.

commit 43a5c177379f580b804f843ace179d68a8b7fc03
Author: Pierre Neidhardt 
Date:   Wed Oct 24 11:51:19 2018 +0200

gnu: Add go-github-com-libp2p-go-libp2p-protocol.

* gnu/packages/golang.scm (go-github-com-libp2p-go-libp2p-protocol): New 
variable.
---
 gnu/packages/golang.scm | 25 +
 1 file changed, 25 insertions(+)

diff --git a/gnu/packages/golang.scm b/gnu/packages/golang.scm
index 4c36f1e..4b2c30f 100644
--- a/gnu/packages/golang.scm
+++ b/gnu/packages/golang.scm
@@ -2941,3 +2941,28 @@ required by Go's standard Hash interface.")
   (synopsis "PKI based identities for use in go-libp2p")
   (description "PKI based identities for use in @command{go-libp2p}.")
   (license license:expat
+
+(define-public go-github-com-libp2p-go-libp2p-protocol
+  (let ((commit "b29f3d97e3a2fb8b29c5d04290e6cb5c5018004b")
+(revision "0"))
+(package
+  (name "go-github-com-libp2p-go-libp2p-protocol")
+  (version (git-version "1.0.0" revision commit))
+  (source
+   (origin
+ (method git-fetch)
+ (uri (git-reference
+   (url "https://github.com/libp2p/go-libp2p-protocol.git;)
+   (commit commit)))
+ (file-name (git-file-name name version))
+ (sha256
+  (base32
+   "1xgjfnx9zcqglg9li29wdqywsp8hz22wx6phns9zscni2jsfidld"
+  (build-system go-build-system)
+  (arguments
+   '(#:import-path
+ "github.com/libp2p/go-libp2p-protocol"))
+  (home-page "https://github.com/libp2p/go-libp2p-protocol;)
+  (synopsis "Type for protocol strings in Golang")
+  (description "Just a type for protocol strings.  Nothing more.")
+  (license license:expat



28/34: gnu: Add go-github-com-urfave-cli.

2018-10-24 Thread Pierre Neidhardt
ambrevar pushed a commit to branch master
in repository guix.

commit b5bb0b500bf0bc14bbb5d554a75d4f46f1d74795
Author: Pierre Neidhardt 
Date:   Wed Oct 24 12:07:04 2018 +0200

gnu: Add go-github-com-urfave-cli.

* gnu/packages/golang.scm (go-github-com-urfave-cli): New variable.
---
 gnu/packages/golang.scm | 26 ++
 1 file changed, 26 insertions(+)

diff --git a/gnu/packages/golang.scm b/gnu/packages/golang.scm
index f614c41..e07bf6c 100644
--- a/gnu/packages/golang.scm
+++ b/gnu/packages/golang.scm
@@ -3208,3 +3208,29 @@ as conversion to and from @command{net.Addr}.")
   (synopsis "Gitignore parser for Go")
   (description "A @command{.gitignore} parser for Go.")
   (license license:expat
+
+(define-public go-github-com-urfave-cli
+  (let ((commit "934abfb2f102315b5794e15ebc7949e4ca253920")
+(revision "0"))
+(package
+  (name "go-github-com-urfave-cli")
+  (version (git-version "1.19.1" revision commit))
+  (source
+   (origin
+ (method git-fetch)
+ (uri (git-reference
+   (url "https://github.com/urfave/cli.git;)
+   (commit commit)))
+ (file-name (git-file-name name version))
+ (sha256
+  (base32
+   "0c5r8pgj3k48dfcwj8lw3cxkwkl8vh0fhvz5snfdwd0bcxdqx1yq"
+  (build-system go-build-system)
+  (arguments
+   '(#:import-path "github.com/urfave/cli"))
+  (home-page "https://github.com/urfave/cli;)
+  (synopsis "Simple, fast, and fun package for building command line apps 
in Go")
+  (description "@command{cli} is a simple, fast, and fun package for
+building command line apps in Go.  The goal is to enable developers to write
+fast and distributable command line applications in an expressive way.")
+  (license license:expat



03/34: gnu: Add go-golang-org-x-crypto-ed25519.

2018-10-24 Thread Pierre Neidhardt
ambrevar pushed a commit to branch master
in repository guix.

commit 7eb0ad380b655b3d8869ea3aab1c6e33ec2cf669
Author: Pierre Neidhardt 
Date:   Wed Oct 24 10:58:49 2018 +0200

gnu: Add go-golang-org-x-crypto-ed25519.

* gnu/packages/golang.scm (go-golang-org-x-crypto-ed25519): New variable.
---
 gnu/packages/golang.scm | 12 
 1 file changed, 12 insertions(+)

diff --git a/gnu/packages/golang.scm b/gnu/packages/golang.scm
index f59ddd1..e204269 100644
--- a/gnu/packages/golang.scm
+++ b/gnu/packages/golang.scm
@@ -990,6 +990,18 @@ Tiny Encryption Algorithm (XTEA) block cipher.")
   (home-page "https://go.googlesource.com/crypto/;)
   (license license:bsd-3
 
+(define-public go-golang-org-x-crypto-ed25519
+  (package
+(inherit go-golang-org-x-crypto-bcrypt)
+(name "go-golang-org-x-crypto-ed25519")
+(arguments
+ (substitute-keyword-arguments (package-arguments 
go-golang-org-x-crypto-bcrypt)
+   ((#:import-path _)
+"golang.org/x/crypto/ed25519")))
+(synopsis "ED25519 in Go")
+(description "This package provides a Go implementation of the ED25519
+signature algorithm.")))
+
 ;; Go searches for library modules by looking in the GOPATH environment
 ;; variable.  This variable is a list of paths.  However, Go does not
 ;; keep searching on GOPATH if it tries and fails to import a module.



29/34: gnu: Add go-github-com-whyrusleeping-json-filter.

2018-10-24 Thread Pierre Neidhardt
ambrevar pushed a commit to branch master
in repository guix.

commit 7bd9020e48467fb05950c84eaf29460b449d7c1c
Author: Pierre Neidhardt 
Date:   Wed Oct 24 12:08:48 2018 +0200

gnu: Add go-github-com-whyrusleeping-json-filter.

* gnu/packages/golang.scm (go-github-com-whyrusleeping-json-filter): New 
variable.
---
 gnu/packages/golang.scm | 26 ++
 1 file changed, 26 insertions(+)

diff --git a/gnu/packages/golang.scm b/gnu/packages/golang.scm
index e07bf6c..34d6011 100644
--- a/gnu/packages/golang.scm
+++ b/gnu/packages/golang.scm
@@ -3234,3 +3234,29 @@ as conversion to and from @command{net.Addr}.")
 building command line apps in Go.  The goal is to enable developers to write
 fast and distributable command line applications in an expressive way.")
   (license license:expat
+
+(define-public go-github-com-whyrusleeping-json-filter
+  (let ((commit "ff25329a9528f01c5175414f16cc0a6a162a5b8b")
+(revision "0"))
+(package
+  (name "go-github-com-whyrusleeping-json-filter")
+  (version (git-version "0.0.0" revision commit))
+  (source
+   (origin
+ (method git-fetch)
+ (uri (git-reference
+   (url "https://github.com/whyrusleeping/json-filter.git;)
+   (commit commit)))
+ (file-name (git-file-name name version))
+ (sha256
+  (base32
+   "0cai0drvx4c8j686l908vpcsz3mw3vxi3ziz94b0f3c5ylpj07j7"
+  (build-system go-build-system)
+  (arguments
+   '(#:import-path
+ "github.com/whyrusleeping/json-filter"))
+  (home-page "https://github.com/whyrusleeping/json-filter;)
+  (synopsis "Library to query JSON objects marshalled into 
map[string]interface")
+  (description "A library to query JSON objects marshalled into
+@command{map[string]interface{}}.")
+  (license license:expat



15/34: gnu: Add go-github-com-gxed-hashland-keccakpg.

2018-10-24 Thread Pierre Neidhardt
ambrevar pushed a commit to branch master
in repository guix.

commit 27d59d8bf5ed9a6560f15951395d03f05dc8d645
Author: Pierre Neidhardt 
Date:   Wed Oct 24 11:43:17 2018 +0200

gnu: Add go-github-com-gxed-hashland-keccakpg.

* gnu/packages/golang.scm (go-github-com-gxed-hashland-keccakpg): New 
variable.
---
 gnu/packages/golang.scm | 26 ++
 1 file changed, 26 insertions(+)

diff --git a/gnu/packages/golang.scm b/gnu/packages/golang.scm
index 795ab29..87a1cd6 100644
--- a/gnu/packages/golang.scm
+++ b/gnu/packages/golang.scm
@@ -2789,3 +2789,29 @@ Architecture Processors\" by J. Guilford et al.")
 trivial @command{big.Int} encoding benchmark results in 6 times faster
 encoding and 8 times faster decoding.")
   (license license:expat
+
+(define-public go-github-com-gxed-hashland-keccakpg
+  (let ((commit "d9f6b97f8db22dd1e090fd0bbbe98f09cc7dd0a8")
+(revision "0"))
+(package
+  (name "go-github-com-gxed-hashland-keccakpg")
+  (version (git-version "0.0.0" revision commit))
+  (source
+   (origin
+ (method git-fetch)
+ (uri (git-reference
+   (url "https://github.com/gxed/hashland.git;)
+   (commit commit)))
+ (file-name (git-file-name name version))
+ (sha256
+  (base32
+   "1q23y4lacsz46k9gmgfw4iwwydw36j2601rbidmmswl94grpc386"
+  (build-system go-build-system)
+  (arguments
+   '(#:unpack-path "github.com/gxed/hashland"
+ #:import-path "github.com/gxed/hashland/keccakpg"))
+  (home-page "https://github.com/gxed/hashland;)
+  (synopsis "Implements the Keccak (SHA-3) hash algorithm in Go")
+  (description "Package @command{keccak} implements the Keccak (SHA-3)
+hash algorithm.  See http://keccak.noekeon.org.;)
+  (license license:expat



branch master updated (569adff -> 202c1b9)

2018-10-24 Thread Pierre Neidhardt
ambrevar pushed a change to branch master
in repository guix.

  from  569adff   gnu: pcsc-lite: Update to 1.8.24.
   new  5787e15   gnu: Move go-github-com-gogo-protobuf* from syncthing.scm 
to golang.scm
   new  830dc25   gnu: Move go-golang-org-x-crypto-union from syncthing.scm 
to golang.scm
   new  7eb0ad3   gnu: Add go-golang-org-x-crypto-ed25519.
   new  a9010ea   gnu: Add go-golang-org-x-crypto-ripemd160.
   new  6fa257c   gnu: Add go-golang-org-x-crypto-blake2s.
   new  19789c8   gnu: Add go-golang-org-x-crypto-sha3.
   new  48a279e   gnu: go-golang-org-x-crypto-union: Wrap all crypto 
packages.
   new  386bd7b   gnu: Add go-github-com-libp2p-go-flow-metrics.
   new  6a95e3a   gnu: Add go-github-com-davecgh-go-spew.
   new  171c325   gnu: Add go-github-com-btcsuite-btclog.
   new  d5599af   gnu: Add go-github-com-btcsuite-btcd-btcec.
   new  ff2d11c   gnu: Add go-github-com-minio-sha256-simd.
   new  71f3680   gnu: Add go-github-com-libp2p-go-libp2p-crypto.
   new  15272a5   gnu: Add go-github-com-mr-tron-base58.
   new  27d59d8   gnu: Add go-github-com-gxed-hashland-keccakpg.
   new  90f2a84   gnu: Add go-github-com-minio-blake2b-simd.
   new  9a7f157   gnu: Add go-github-com-spaolacci-murmur3.
   new  2e42e58   gnu: Add go-github-com-multiformats-go-multihash.
   new  1db1e3c   gnu: Add go-github-com-libp2p-go-libp2p-peer.
   new  43a5c17   gnu: Add go-github-com-libp2p-go-libp2p-protocol.
   new  77d8a91   gnu: Add go-github-com-libp2p-go-libp2p-metrics.
   new  8cb9128   gnu: Add go-github-com-mitchellh-go-homedir.
   new  e53121b   gnu: Add go-github-com-multiformats-go-multiaddr.
   new  66fb6e2   gnu: Add go-github-com-multiformats-go-multiaddr-net.
   new  38d346d   gnu: Add go-github-com-whyrusleeping-tar-utils.
   new  ad8d463   gnu: Add go-github-com-cheekybits-is.
   new  20f48e4   gnu: Add go-github-com-sabhiram-go-gitignore.
   new  b5bb0b5   gnu: Add go-github-com-urfave-cli.
   new  7bd9020   gnu: Add go-github-com-whyrusleeping-json-filter.
   new  38566e9   gnu: Add go-github-com-whyrusleeping-progmeter.
   new  56eb7bd   gnu: Add go-github-com-whyrusleeping-stump.
   new  247b1bd   gnu: Add go-github-com-ipfs-go-ipfs-cmdkit-files.
   new  566f13f   gnu: Add go-github-com-ipfs-go-ipfs-api.
   new  202c1b9   gnu: Add gx.

The 34 revisions listed above as "new" are entirely new to this
repository and will be described in separate emails.  The revisions
listed as "adds" were already present in the repository and have only
been added to this reference.


Summary of changes:
 gnu/local.mk   |   1 +
 gnu/packages/golang.scm| 964 -
 gnu/packages/ipfs.scm  | 154 
 gnu/packages/syncthing.scm | 132 ---
 4 files changed, 1118 insertions(+), 133 deletions(-)
 create mode 100644 gnu/packages/ipfs.scm



09/34: gnu: Add go-github-com-davecgh-go-spew.

2018-10-24 Thread Pierre Neidhardt
ambrevar pushed a commit to branch master
in repository guix.

commit 6a95e3a3a4c97f20b66483b6bd7cac82ddfa0497
Author: Pierre Neidhardt 
Date:   Wed Oct 24 11:07:38 2018 +0200

gnu: Add go-github-com-davecgh-go-spew.

* gnu/packages/golang.scm (go-github-com-davecgh-go-spew): New variable.
---
 gnu/packages/golang.scm | 40 
 1 file changed, 40 insertions(+)

diff --git a/gnu/packages/golang.scm b/gnu/packages/golang.scm
index 6c8754b..2bea557 100644
--- a/gnu/packages/golang.scm
+++ b/gnu/packages/golang.scm
@@ -2592,3 +2592,43 @@ generation features.  This code generation is used to 
achieve:
   (description "A simple alternative to rcrowley's @command{go-metrics}
 that's a lot faster (and only does simple bandwidth metrics).")
   (license license:expat
+
+(define-public go-github-com-davecgh-go-spew
+  (let ((commit "d8f796af33cc11cb798c1aaeb27a4ebc5099927d")
+(revision "0"))
+(package
+  (name "go-github-com-davecgh-go-spew")
+  (version (git-version "0.0.0" revision commit))
+  (source
+   (origin
+ (method git-fetch)
+ (uri (git-reference
+   (url "https://github.com/davecgh/go-spew.git;)
+   (commit commit)))
+ (file-name (git-file-name name version))
+ (sha256
+  (base32
+   "19z27f306fpsrjdvkzd61w1bdazcdbczjyjck177g33iklinhpvx"
+  (build-system go-build-system)
+  (arguments
+   '(#:unpack-path "github.com/davecgh/go-spew"
+ #:import-path "github.com/davecgh/go-spew/spew"))
+  (home-page "https://github.com/davecgh/go-spew;)
+  (synopsis "Deep pretty printer for Go data structures to aid in 
debugging")
+  (description "Package @command{spew} implements a deep pretty printer
+for Go data structures to aid in debugging.
+
+A quick overview of the additional features spew provides over the built-in 
printing facilities for Go data types are as follows:
+
+@itemize
+@item Pointers are dereferenced and followed.
+@item Circular data structures are detected and handled properly.
+@item Custom Stringer/error interfaces are optionally invoked, including on
+unexported types.
+@item Custom types which only implement the Stringer/error interfaces via a
+pointer receiver are optionally invoked when passing non-pointer variables.
+@item Byte arrays and slices are dumped like the hexdump -C command which
+includes offsets, byte values in hex, and ASCII output (only when using Dump
+style).
+@end itemize\n")
+  (license license:isc



31/34: gnu: Add go-github-com-whyrusleeping-stump.

2018-10-24 Thread Pierre Neidhardt
ambrevar pushed a commit to branch master
in repository guix.

commit 56eb7bd33c7c698253be91a932ed3cc8fc85ab6f
Author: Pierre Neidhardt 
Date:   Wed Oct 24 12:12:40 2018 +0200

gnu: Add go-github-com-whyrusleeping-stump.

* gnu/packages/golang.scm (go-github-com-whyrusleeping-stump): New variable.
---
 gnu/packages/golang.scm | 25 +
 1 file changed, 25 insertions(+)

diff --git a/gnu/packages/golang.scm b/gnu/packages/golang.scm
index de4e3f2..9b46907 100644
--- a/gnu/packages/golang.scm
+++ b/gnu/packages/golang.scm
@@ -3285,3 +3285,28 @@ fast and distributable command line applications in an 
expressive way.")
   (synopsis "Progress meter for Go")
   (description "Progress meter for Go.")
   (license license:expat
+
+(define-public go-github-com-whyrusleeping-stump
+  (let ((commit "206f8f13aae1697a6fc1f4a55799faf955971fc5")
+(revision "0"))
+(package
+  (name "go-github-com-whyrusleeping-stump")
+  (version (git-version "0.0.0" revision commit))
+  (source
+   (origin
+ (method git-fetch)
+ (uri (git-reference
+   (url "https://github.com/whyrusleeping/stump.git;)
+   (commit commit)))
+ (file-name (git-file-name name version))
+ (sha256
+  (base32
+   "1s40qdppjnk8gijk7x6kbviiqz62nz3h6gic2q9cwcmq8r5isw7n"
+  (build-system go-build-system)
+  (arguments
+   '(#:import-path "github.com/whyrusleeping/stump"))
+  (home-page "https://github.com/whyrusleeping/stump;)
+  (synopsis "Very basic logging package for Go")
+  (description "A simple log library, for when you don't really care to
+have super fancy logs.")
+  (license license:expat



23/34: gnu: Add go-github-com-multiformats-go-multiaddr.

2018-10-24 Thread Pierre Neidhardt
ambrevar pushed a commit to branch master
in repository guix.

commit e53121b36f64bb677127f6814e87e875e0d7ff7b
Author: Pierre Neidhardt 
Date:   Wed Oct 24 11:57:39 2018 +0200

gnu: Add go-github-com-multiformats-go-multiaddr.

* gnu/packages/golang.scm (go-github-com-multiformats-go-multiaddr): New 
variable.
---
 gnu/packages/golang.scm | 42 ++
 1 file changed, 42 insertions(+)

diff --git a/gnu/packages/golang.scm b/gnu/packages/golang.scm
index ad914d5..0c5eb6c 100644
--- a/gnu/packages/golang.scm
+++ b/gnu/packages/golang.scm
@@ -3044,3 +3044,45 @@ package cannot cross compile.  But 99% of the time the 
use for
 the current user without cgo.  This library does that, enabling
 cross-compilation.")
   (license license:expat
+
+(define-public go-github-com-multiformats-go-multiaddr
+  (let ((commit "fe1c46f8be5af4aff4db286e08839295bd922efb")
+(revision "0"))
+(package
+  (name "go-github-com-multiformats-go-multiaddr")
+  (version (git-version "1.3.0" revision commit))
+  (source
+   (origin
+ (method git-fetch)
+ (uri (git-reference
+   (url "https://github.com/multiformats/go-multiaddr.git;)
+   (commit commit)))
+ (file-name (git-file-name name version))
+ (sha256
+  (base32
+   "0p5f8h098a4yjjmzsgqs7vhx1iqifb8izwg3559cr4h7clkpzznh"
+  (build-system go-build-system)
+  (arguments
+   '(#:import-path
+ "github.com/multiformats/go-multiaddr"))
+  (native-inputs
+   `(("go-github-com-multiformats-go-multihash" 
,go-github-com-multiformats-go-multihash)
+ ("go-github-com-gxed-hashland-keccakpg" 
,go-github-com-gxed-hashland-keccakpg)
+ ("go-github-com-minio-blake2b-simd" ,go-github-com-minio-blake2b-simd)
+ ("go-github-com-minio-sha256-simd" ,go-github-com-minio-sha256-simd)
+ ("go-github-com-mr-tron-base58" ,go-github-com-mr-tron-base58)
+ ("go-github-com-spaolacci-murmur3" ,go-github-com-spaolacci-murmur3)
+ ("go-golang-org-x-crypto-union" ,(go-golang-org-x-crypto-union
+  (home-page "https://github.com/multiformats/go-multiaddr;)
+  (synopsis "Composable and future-proof network addresses")
+  (description "Multiaddr is a standard way to represent addresses that
+does the following:
+
+@itemize
+@item Support any standard network protocols.
+@item Self-describe (include protocols).
+@item Have a binary packed format.
+@item Have a nice string representation.
+@item Encapsulate well.
+@end itemize\n")
+  (license license:expat



25/34: gnu: Add go-github-com-whyrusleeping-tar-utils.

2018-10-24 Thread Pierre Neidhardt
ambrevar pushed a commit to branch master
in repository guix.

commit 38d346dcc6ae84bcf17c57989816848051d89028
Author: Pierre Neidhardt 
Date:   Wed Oct 24 12:01:08 2018 +0200

gnu: Add go-github-com-whyrusleeping-tar-utils.

* gnu/packages/golang.scm (go-github-com-whyrusleeping-tar-utils): New 
variable.
---
 gnu/packages/golang.scm | 25 +
 1 file changed, 25 insertions(+)

diff --git a/gnu/packages/golang.scm b/gnu/packages/golang.scm
index afad3aa..3b35437 100644
--- a/gnu/packages/golang.scm
+++ b/gnu/packages/golang.scm
@@ -3124,3 +3124,28 @@ common functions in stdlib's @command{net} package.  
This means wrappers of
 standard net symbols like @command{net.Dial} and @command{net.Listen}, as well
 as conversion to and from @command{net.Addr}.")
   (license license:expat
+
+(define-public go-github-com-whyrusleeping-tar-utils
+  (let ((commit "8c6c8ba81d5c71fd69c0f48dbde4b2fb422b6dfc")
+(revision "0"))
+(package
+  (name "go-github-com-whyrusleeping-tar-utils")
+  (version (git-version "0.0.0" revision commit))
+  (source
+   (origin
+ (method git-fetch)
+ (uri (git-reference
+   (url "https://github.com/whyrusleeping/tar-utils.git;)
+   (commit commit)))
+ (file-name (git-file-name name version))
+ (sha256
+  (base32
+   "14jjdw3yics0k467xsyk388684wdpi0bbx8nqj0y4pqxa0s0in6s"
+  (build-system go-build-system)
+  (arguments
+   '(#:import-path
+ "github.com/whyrusleeping/tar-utils"))
+  (home-page "https://github.com/whyrusleeping/tar-utils;)
+  (synopsis "Tar utilities extracted from go-ipfs codebase")
+  (description "Tar utilities extracted from @command{go-ipfs} codebase.")
+  (license license:expat



16/34: gnu: Add go-github-com-minio-blake2b-simd.

2018-10-24 Thread Pierre Neidhardt
ambrevar pushed a commit to branch master
in repository guix.

commit 90f2a8480518555a2eb3b8fa0cb3616fdab0ccb8
Author: Pierre Neidhardt 
Date:   Wed Oct 24 11:45:20 2018 +0200

gnu: Add go-github-com-minio-blake2b-simd.

* gnu/packages/golang.scm (go-github-com-minio-blake2b-simd): New variable.
---
 gnu/packages/golang.scm | 32 
 1 file changed, 32 insertions(+)

diff --git a/gnu/packages/golang.scm b/gnu/packages/golang.scm
index 87a1cd6..6174f75 100644
--- a/gnu/packages/golang.scm
+++ b/gnu/packages/golang.scm
@@ -2815,3 +2815,35 @@ encoding and 8 times faster decoding.")
   (description "Package @command{keccak} implements the Keccak (SHA-3)
 hash algorithm.  See http://keccak.noekeon.org.;)
   (license license:expat
+
+(define-public go-github-com-minio-blake2b-simd
+  (let ((commit "3f5f724cb5b182a5c278d6d3d55b40e7f8c2efb4")
+(revision "0"))
+(package
+  (name "go-github-com-minio-blake2b-simd")
+  (version (git-version "0.0.0" revision commit))
+  (source
+   (origin
+ (method git-fetch)
+ (uri (git-reference
+   (url "https://github.com/minio/blake2b-simd.git;)
+   (commit commit)))
+ (file-name (git-file-name name version))
+ (sha256
+  (base32
+   "0b6jbnj62c0gmmfd4zdmh8xbg01p80f13yygir9xprqkzk6fikmd"
+  (build-system go-build-system)
+  (arguments
+   '(#:import-path "github.com/minio/blake2b-simd"))
+  (home-page "https://github.com/minio/blake2b-simd;)
+  (synopsis "Fast hashing in pure Go of BLAKE2b with SIMD instructions")
+  (description "This package was initially based on the pure go BLAKE2b
+implementation of Dmitry Chestnykh and merged with the (cgo dependent) AVX
+optimized BLAKE2 implementation (which in turn is based on the official
+implementation.  It does so by using Go's Assembler for amd64 architectures
+with a golang only fallback for other architectures.
+
+In addition to AVX there is also support for AVX2 as well as SSE.  Best
+performance is obtained with AVX2 which gives roughly a 4X performance
+increase approaching hashing speeds of 1GB/sec on a single core.")
+  (license license:asl2.0



17/34: gnu: Add go-github-com-spaolacci-murmur3.

2018-10-24 Thread Pierre Neidhardt
ambrevar pushed a commit to branch master
in repository guix.

commit 9a7f1575713be1050eedc611047b9603fdbd1bf6
Author: Pierre Neidhardt 
Date:   Wed Oct 24 11:46:42 2018 +0200

gnu: Add go-github-com-spaolacci-murmur3.

* gnu/packages/golang.scm (go-github-com-spaolacci-murmur3): New variable.
---
 gnu/packages/golang.scm | 28 
 1 file changed, 28 insertions(+)

diff --git a/gnu/packages/golang.scm b/gnu/packages/golang.scm
index 6174f75..d8126d8 100644
--- a/gnu/packages/golang.scm
+++ b/gnu/packages/golang.scm
@@ -2847,3 +2847,31 @@ In addition to AVX there is also support for AVX2 as 
well as SSE.  Best
 performance is obtained with AVX2 which gives roughly a 4X performance
 increase approaching hashing speeds of 1GB/sec on a single core.")
   (license license:asl2.0
+
+(define-public go-github-com-spaolacci-murmur3
+  (let ((commit "f09979ecbc725b9e6d41a297405f65e7e8804acc")
+(revision "0"))
+(package
+  (name "go-github-com-spaolacci-murmur3")
+  (version (git-version "1.1" revision commit))
+  (source
+   (origin
+ (method git-fetch)
+ (uri (git-reference
+   (url "https://github.com/spaolacci/murmur3.git;)
+   (commit commit)))
+ (file-name (git-file-name name version))
+ (sha256
+  (base32
+   "1lv3zyz3jy2d76bhvvs8svygx66606iygdvwy5cwc0p5z8yghq25"
+  (build-system go-build-system)
+  (arguments
+   '(#:import-path "github.com/spaolacci/murmur3"))
+  (home-page "https://github.com/spaolacci/murmur3;)
+  (synopsis "Native MurmurHash3 Go implementation")
+  (description "Native Go implementation of Austin Appleby's third
+MurmurHash revision (aka MurmurHash3).
+
+Reference algorithm has been slightly hacked as to support the streaming mode
+required by Go's standard Hash interface.")
+  (license license:bsd-3



01/34: gnu: Move go-github-com-gogo-protobuf* from syncthing.scm to golang.scm

2018-10-24 Thread Pierre Neidhardt
ambrevar pushed a commit to branch master
in repository guix.

commit 5787e152302c580ea4cbb79291633eed2e743777
Author: Pierre Neidhardt 
Date:   Wed Oct 24 10:46:05 2018 +0200

gnu: Move go-github-com-gogo-protobuf* from syncthing.scm to golang.scm

* gnu/packages/syncthing.scm (go-github-com-gogo-protobuf,
  go-github-com-gogo-protobuf-protoc-gen-gogo,
  go-github-com-gogo-protobuf-union): Delete.

* gnu/packages/golang.scm (go-github-com-gogo-protobuf,
  go-github-com-gogo-protobuf-protoc-gen-gogo,
  go-github-com-gogo-protobuf-union): Add.
---
 gnu/packages/golang.scm| 125 -
 gnu/packages/syncthing.scm |  94 --
 2 files changed, 124 insertions(+), 95 deletions(-)

diff --git a/gnu/packages/golang.scm b/gnu/packages/golang.scm
index f140574..9c81534 100644
--- a/gnu/packages/golang.scm
+++ b/gnu/packages/golang.scm
@@ -46,7 +46,8 @@
   #:use-module (gnu packages lua)
   #:use-module (gnu packages mp3)
   #:use-module (ice-9 match)
-  #:use-module (srfi srfi-1))
+  #:use-module (srfi srfi-1)
+  #:export (go-github-com-gogo-protobuf-union))
 
 ;; According to https://golang.org/doc/install/gccgo, gccgo-4.8.2 includes a
 ;; complete go-1.1.2 implementation, gccgo-4.9 includes a complete go-1.2
@@ -2348,3 +2349,125 @@ and lookup requests.  Browse requests are not supported 
yet.")
   (synopsis "Go wrapper for taglib")
   (description "Go wrapper for taglib")
   (license license:unlicense
+
+(define* (go-github-com-gogo-protobuf-union
+   #:optional (packages (list go-github-com-gogo-protobuf
+  
go-github-com-gogo-protobuf-protoc-gen-gogo)))
+  (package
+(name "go-github-com-gogo-protobuf-union")
+(version (package-version go-github-com-gogo-protobuf))
+(source #f)
+(build-system trivial-build-system)
+(arguments
+ '(#:modules ((guix build union))
+   #:builder (begin
+   (use-modules (ice-9 match)
+(guix build union))
+   (match %build-inputs
+ (((names . directories) ...)
+  (union-build (assoc-ref %outputs "out")
+   directories)
+  #t)
+(inputs (map (lambda (package)
+   (list (package-name package) package))
+ packages))
+(synopsis "Union of Go protobuf libraries")
+(description "This is a union of Go protobuf libraries")
+(home-page (package-home-page go-github-com-gogo-protobuf))
+(license (package-license go-github-com-gogo-protobuf
+
+(define-public go-github-com-gogo-protobuf
+  (let ((commit "160de10b2537169b5ae3e7e221d28269ef40d311")
+(revision "2"))
+(package
+  (name "go-github-com-gogo-protobuf")
+  (version (git-version "0.5" revision commit))
+  (source (origin
+(method git-fetch)
+(uri (git-reference
+  (url "https://github.com/gogo/protobuf;)
+  (commit commit)))
+(file-name (git-file-name name version))
+(sha256
+ (base32
+  "0hxq28sgxym04rv0q40gpwkh4ni359q21hq3g78wwxwx4qfd4zwm"
+  (build-system go-build-system)
+  (arguments
+   `(#:import-path "github.com/gogo/protobuf/proto"
+ #:unpack-path "github.com/gogo/protobuf"))
+  (propagated-inputs
+   `(("go-github-com-gogo-protobuf-protoc-gen-gogo"
+  ,go-github-com-gogo-protobuf-protoc-gen-gogo)))
+  (synopsis "Protocol Buffers for Go with Gadgets")
+  (description "Gogoprotobuf is a fork of golang/protobuf with extra code
+generation features.  This code generation is used to achieve:
+@itemize
+@item fast marshalling and unmarshalling
+@item more canonical Go structures
+@item goprotobuf compatibility
+@item less typing by optionally generating extra helper code
+@item peace of mind by optionally generating test and benchmark code
+@item other serialization formats
+@end itemize")
+  (home-page "https://github.com/gogo/protobuf;)
+  (license license:bsd-3
+
+(define-public go-github-com-gogo-protobuf-protoc-gen-gogo
+  (let ((commit "efccd33a0c20aa078705571d5ddbfa14c8395a63")
+(revision "0"))
+(package
+  (name "go-github-com-gogo-protobuf-protoc-gen-gogo")
+  (version (git-version "0.2" revision commit))
+  (source (origin
+(method git-fetch)
+(uri (git-reference
+  (url "https://github.com/gogo/protobuf;)
+  (commit commit)))
+(file-name (git-file-name name version))
+ 

22/34: gnu: Add go-github-com-mitchellh-go-homedir.

2018-10-24 Thread Pierre Neidhardt
ambrevar pushed a commit to branch master
in repository guix.

commit 8cb912817363a87ae9d6e3ec858a3f7aa715a913
Author: Pierre Neidhardt 
Date:   Wed Oct 24 11:56:01 2018 +0200

gnu: Add go-github-com-mitchellh-go-homedir.

* gnu/packages/golang.scm (go-github-com-mitchellh-go-homedir): New 
variable.
---
 gnu/packages/golang.scm | 39 +++
 1 file changed, 39 insertions(+)

diff --git a/gnu/packages/golang.scm b/gnu/packages/golang.scm
index 29181ed..ad914d5 100644
--- a/gnu/packages/golang.scm
+++ b/gnu/packages/golang.scm
@@ -3005,3 +3005,42 @@ required by Go's standard Hash interface.")
   (description "A connection wrapper for @command{go-libp2p} that provides 
bandwidth
 statistics for wrapped connections.")
   (license license:expat
+
+(define-public go-github-com-mitchellh-go-homedir
+  (let ((commit "ae18d6b8b3205b561c79e8e5f69bff09736185f4")
+(revision "0"))
+(package
+  (name "go-github-com-mitchellh-go-homedir")
+  (version (git-version "1.0.0" revision commit))
+  (source
+   (origin
+ (method git-fetch)
+ (uri (git-reference
+   (url "https://github.com/mitchellh/go-homedir.git;)
+   (commit commit)))
+ (file-name (git-file-name name version))
+ (sha256
+  (base32
+   "0f0z0aa4wivk4z1y503dmnw0k0g0g403dly8i4q263gfshs82sbq"
+  (build-system go-build-system)
+  (arguments
+   (quote (#:import-path "github.com/mitchellh/go-homedir"
+   ;; TODO: Tests fail because it tries to access home.
+   #:tests? #f)))
+  (home-page "https://github.com/mitchellh/go-homedir;)
+  (synopsis "Go library for detecting and expanding the user's home 
directory without cgo")
+  (description "This is a Go library for detecting the user's home
+directory without the use of @command{cgo}, so the library can be used in
+cross-compilation environments.
+
+Usage is simple, just call homedir.Dir() to get the home directory for a user,
+and homedir.Expand() to expand the @command{~} in a path to the home
+directory.
+
+Why not just use @command{os/user}?  The built-in @command{os/user} package
+requires cgo on Darwin systems.  This means that any Go code that uses that
+package cannot cross compile.  But 99% of the time the use for
+@command{os/user} is just to retrieve the home directory, which we can do for
+the current user without cgo.  This library does that, enabling
+cross-compilation.")
+  (license license:expat



06/34: gnu: Add go-golang-org-x-crypto-sha3.

2018-10-24 Thread Pierre Neidhardt
ambrevar pushed a commit to branch master
in repository guix.

commit 19789c8b91c5879b6cd13ed5dc0793e0edd66a33
Author: Pierre Neidhardt 
Date:   Wed Oct 24 11:00:00 2018 +0200

gnu: Add go-golang-org-x-crypto-sha3.

* gnu/packages/golang.scm (go-golang-org-x-crypto-sha3): New variable.
---
 gnu/packages/golang.scm | 13 +
 1 file changed, 13 insertions(+)

diff --git a/gnu/packages/golang.scm b/gnu/packages/golang.scm
index 3c63925..c114431 100644
--- a/gnu/packages/golang.scm
+++ b/gnu/packages/golang.scm
@@ -1026,6 +1026,19 @@ hash algorithm.")))
 (description "This package provides a Go implementation of the BLAKE2s
 hash algorithm.")))
 
+(define-public go-golang-org-x-crypto-sha3
+  (package
+(inherit go-golang-org-x-crypto-bcrypt)
+(name "go-golang-org-x-crypto-sha3")
+(arguments
+ (substitute-keyword-arguments (package-arguments 
go-golang-org-x-crypto-bcrypt)
+   ((#:import-path _)
+"golang.org/x/crypto/sha3")))
+(synopsis "SHA-3 in Go")
+(description "This package provides a Go implementation of the SHA-3
+fixed-output-length hash functions and the SHAKE variable-output-length hash
+functions defined by FIPS-202.")))
+
 ;; Go searches for library modules by looking in the GOPATH environment
 ;; variable.  This variable is a list of paths.  However, Go does not
 ;; keep searching on GOPATH if it tries and fails to import a module.



24/34: gnu: Add go-github-com-multiformats-go-multiaddr-net.

2018-10-24 Thread Pierre Neidhardt
ambrevar pushed a commit to branch master
in repository guix.

commit 66fb6e292a5a315a62810031e16ecfe30cb88d7d
Author: Pierre Neidhardt 
Date:   Wed Oct 24 12:00:03 2018 +0200

gnu: Add go-github-com-multiformats-go-multiaddr-net.

* gnu/packages/golang.scm (go-github-com-multiformats-go-multiaddr-net): 
New variable.
---
 gnu/packages/golang.scm | 38 ++
 1 file changed, 38 insertions(+)

diff --git a/gnu/packages/golang.scm b/gnu/packages/golang.scm
index 0c5eb6c..afad3aa 100644
--- a/gnu/packages/golang.scm
+++ b/gnu/packages/golang.scm
@@ -3086,3 +3086,41 @@ does the following:
 @item Encapsulate well.
 @end itemize\n")
   (license license:expat
+
+(define-public go-github-com-multiformats-go-multiaddr-net
+  (let ((commit "1cb9a0e8a6de3c8a10f6cee60d01d793603c4f7e")
+(revision "0"))
+(package
+  (name "go-github-com-multiformats-go-multiaddr-net")
+  (version (git-version "1.6.3" revision commit))
+  (source
+   (origin
+ (method git-fetch)
+ (uri (git-reference
+   (url "https://github.com/multiformats/go-multiaddr-net.git;)
+   (commit commit)))
+ (file-name (git-file-name name version))
+ (sha256
+  (base32
+   "1ypgi47xdz3bh8lh7f8cmk7w3ql9g4izx5l3kzdg9gda1xn5zxq3"
+  (build-system go-build-system)
+  (arguments
+   (quote (#:import-path "github.com/multiformats/go-multiaddr-net"
+   ;; TODO: Tests fail because they try to access the network.
+   #:tests? #f)))
+  (native-inputs
+   `(("go-github-com-multiformats-go-multiaddr" 
,go-github-com-multiformats-go-multiaddr)
+ ("go-github-com-multiformats-go-multihash" 
,go-github-com-multiformats-go-multihash)
+ ("go-github-com-gxed-hashland-keccakpg" 
,go-github-com-gxed-hashland-keccakpg)
+ ("go-github-com-minio-blake2b-simd" ,go-github-com-minio-blake2b-simd)
+ ("go-github-com-minio-sha256-simd" ,go-github-com-minio-sha256-simd)
+ ("go-github-com-mr-tron-base58" ,go-github-com-mr-tron-base58)
+ ("go-github-com-spaolacci-murmur3" ,go-github-com-spaolacci-murmur3)
+ ("go-golang-org-x-crypto-union" ,(go-golang-org-x-crypto-union
+  (home-page "https://github.com/multiformats/go-multiaddr-net;)
+  (synopsis "Multiaddress net tools")
+  (description "This package provides Multiaddr specific versions of
+common functions in stdlib's @command{net} package.  This means wrappers of
+standard net symbols like @command{net.Dial} and @command{net.Listen}, as well
+as conversion to and from @command{net.Addr}.")
+  (license license:expat



34/34: gnu: Add gx.

2018-10-24 Thread Pierre Neidhardt
ambrevar pushed a commit to branch master
in repository guix.

commit 202c1b97034ed1ea9fa8fea449d0806c05e3998f
Author: Pierre Neidhardt 
Date:   Wed Oct 24 12:25:31 2018 +0200

gnu: Add gx.

* gnu/packages/ipfs.scm (gx): New variable.
---
 gnu/packages/ipfs.scm | 54 +++
 1 file changed, 54 insertions(+)

diff --git a/gnu/packages/ipfs.scm b/gnu/packages/ipfs.scm
index 812fcf6..85fd6ac 100644
--- a/gnu/packages/ipfs.scm
+++ b/gnu/packages/ipfs.scm
@@ -98,3 +98,57 @@ that are shared between @command{go-ipfs/commands} and its 
rewrite
   (synopsis "Unofficial Go interface to IPFS's HTTP API")
   (description "An unofficial Go interface to IPFS's HTTP API")
   (license license:expat
+
+(define-public gx
+  (let ((commit
+  "89338e509426d2895f20086685cf4c77d64cc5df")
+(revision "0"))
+(package
+  (name "gx")
+  (version (git-version "0.14.0" revision commit))
+  (source
+   (origin
+ (method git-fetch)
+ (uri (git-reference
+   (url "https://github.com/whyrusleeping/gx.git;)
+   (commit commit)))
+ (file-name (git-file-name name version))
+ (sha256
+  (base32
+   "08gh04jln8rxpq0j4fm4chjap162wp8cjwj9szbvj9c7123s42rd"
+  (build-system go-build-system)
+  (arguments
+   '(#:import-path "github.com/whyrusleeping/gx"))
+  (native-inputs
+   `(("go-github-com-blang-semver" ,go-github-com-blang-semver)
+ ("go-github-com-gxed-hashland-keccakpg" 
,go-github-com-gxed-hashland-keccakpg)
+ ("go-github-com-ipfs-go-ipfs-api" ,go-github-com-ipfs-go-ipfs-api)
+ ("go-github-com-ipfs-go-ipfs-cmdkit-files" 
,go-github-com-ipfs-go-ipfs-cmdkit-files)
+ ("go-github-com-libp2p-go-flow-metrics" 
,go-github-com-libp2p-go-flow-metrics)
+ ("go-github-com-libp2p-go-libp2p-crypto" 
,go-github-com-libp2p-go-libp2p-crypto)
+ ("go-github-com-libp2p-go-libp2p-metrics" 
,go-github-com-libp2p-go-libp2p-metrics)
+ ("go-github-com-libp2p-go-libp2p-peer" 
,go-github-com-libp2p-go-libp2p-peer)
+ ("go-github-com-libp2p-go-libp2p-protocol" 
,go-github-com-libp2p-go-libp2p-protocol)
+ ("go-github-com-minio-blake2b-simd" ,go-github-com-minio-blake2b-simd)
+ ("go-github-com-minio-sha256-simd" ,go-github-com-minio-sha256-simd)
+ ("go-github-com-mitchellh-go-homedir" 
,go-github-com-mitchellh-go-homedir)
+ ("go-github-com-mr-tron-base58" ,go-github-com-mr-tron-base58)
+ ("go-github-com-multiformats-go-multiaddr" 
,go-github-com-multiformats-go-multiaddr)
+ ("go-github-com-multiformats-go-multiaddr-net" 
,go-github-com-multiformats-go-multiaddr-net)
+ ("go-github-com-multiformats-go-multihash" 
,go-github-com-multiformats-go-multihash)
+ ("go-github-com-spaolacci-murmur3" ,go-github-com-spaolacci-murmur3)
+ ("go-github-com-whyrusleeping-tar-utils" 
,go-github-com-whyrusleeping-tar-utils)
+ ("go-golang-org-x-crypto-union" ,(go-golang-org-x-crypto-union))
+ ("go-github-com-btcsuite-btcd-btcec" 
,go-github-com-btcsuite-btcd-btcec)
+ ("go-github-com-gogo-protobuf-proto" 
,go-github-com-gogo-protobuf-proto)
+ ("go-github-com-sabhiram-go-gitignore" 
,go-github-com-sabhiram-go-gitignore)
+ ("go-github-com-urfave-cli" ,go-github-com-urfave-cli)
+ ("go-github-com-whyrusleeping-json-filter" 
,go-github-com-whyrusleeping-json-filter)
+ ("go-github-com-whyrusleeping-progmeter" 
,go-github-com-whyrusleeping-progmeter)
+ ("go-github-com-whyrusleeping-stump" 
,go-github-com-whyrusleeping-stump)))
+  (home-page "https://github.com/whyrusleeping/gx;)
+  (synopsis "Package management tool using IPFS")
+  (description "@command{gx} is a packaging tool built around the
+distributed, content addressed filesystem IPFS.  It aims to be flexible,
+powerful and simple.")
+  (license license:expat



19/34: gnu: Add go-github-com-libp2p-go-libp2p-peer.

2018-10-24 Thread Pierre Neidhardt
ambrevar pushed a commit to branch master
in repository guix.

commit 1db1e3c79efd6c61632a68a003d0979d0ad5b35f
Author: Pierre Neidhardt 
Date:   Wed Oct 24 11:49:53 2018 +0200

gnu: Add go-github-com-libp2p-go-libp2p-peer.

* gnu/packages/golang.scm (go-github-com-libp2p-go-libp2p-peer): New 
variable.
---
 gnu/packages/golang.scm | 35 +++
 1 file changed, 35 insertions(+)

diff --git a/gnu/packages/golang.scm b/gnu/packages/golang.scm
index ab78038..4c36f1e 100644
--- a/gnu/packages/golang.scm
+++ b/gnu/packages/golang.scm
@@ -2906,3 +2906,38 @@ required by Go's standard Hash interface.")
   (synopsis "Multihash implementation in Go")
   (description "Multihash implementation in Go.")
   (license license:expat
+
+(define-public go-github-com-libp2p-go-libp2p-peer
+  (let ((commit "993d742bc29dcf4894b7730ba610fd78900be76c")
+(revision "0"))
+(package
+  (name "go-github-com-libp2p-go-libp2p-peer")
+  (version (git-version "2.3.8" revision commit))
+  (source
+   (origin
+ (method git-fetch)
+ (uri (git-reference
+   (url "https://github.com/libp2p/go-libp2p-peer.git;)
+   (commit commit)))
+ (file-name (git-file-name name version))
+ (sha256
+  (base32
+   "1h96qjdi0i1wbr0jliap2903mycphas3ny0zdrm77yca9plcnphh"
+  (build-system go-build-system)
+  (arguments
+   '(#:import-path "github.com/libp2p/go-libp2p-peer"))
+  (native-inputs
+   `(("go-github-com-libp2p-go-libp2p-crypto" 
,go-github-com-libp2p-go-libp2p-crypto)
+ ("go-github-com-gogo-protobuf-proto" 
,go-github-com-gogo-protobuf-proto)
+ ("go-github-com-minio-sha256-simd" ,go-github-com-minio-sha256-simd)
+ ("go-github-com-minio-blake2b-simd" ,go-github-com-minio-blake2b-simd)
+ ("go-github-com-btcsuite-btcd-btcec" 
,go-github-com-btcsuite-btcd-btcec)
+ ("go-github-com-mr-tron-base58" ,go-github-com-mr-tron-base58)
+ ("go-github-com-multiformats-go-multihash" 
,go-github-com-multiformats-go-multihash)
+ ("go-github-com-gxed-hashland-keccakpg" 
,go-github-com-gxed-hashland-keccakpg)
+ ("go-github-com-spaolacci-murmur3" ,go-github-com-spaolacci-murmur3)
+ ("go-golang-org-x-crypto-union" ,(go-golang-org-x-crypto-union
+  (home-page "https://github.com/libp2p/go-libp2p-peer;)
+  (synopsis "PKI based identities for use in go-libp2p")
+  (description "PKI based identities for use in @command{go-libp2p}.")
+  (license license:expat



08/34: gnu: Add go-github-com-libp2p-go-flow-metrics.

2018-10-24 Thread Pierre Neidhardt
ambrevar pushed a commit to branch master
in repository guix.

commit 386bd7ba393297f440c198eb6d5611ff8c73d875
Author: Pierre Neidhardt 
Date:   Wed Oct 24 11:04:46 2018 +0200

gnu: Add go-github-com-libp2p-go-flow-metrics.

* gnu/packages/golang.scm (go-github-com-libp2p-go-flow-metrics): New 
variable.
---
 gnu/packages/golang.scm | 28 
 1 file changed, 28 insertions(+)

diff --git a/gnu/packages/golang.scm b/gnu/packages/golang.scm
index a9bb4e6..6c8754b 100644
--- a/gnu/packages/golang.scm
+++ b/gnu/packages/golang.scm
@@ -2564,3 +2564,31 @@ generation features.  This code generation is used to 
achieve:
   (synopsis "XXX")
   (description "XXX")
   (license license:expat
+
+(define-public go-github-com-libp2p-go-flow-metrics
+  (let ((commit "7e5a55af485341567f98d6847a373eb5ddcdcd43")
+(revision "0"))
+(package
+  (name "go-github-com-libp2p-go-flow-metrics")
+  (version (git-version "0.2.0" revision commit))
+  (source
+   (origin
+ (method git-fetch)
+ (uri (git-reference
+   (url "https://github.com/libp2p/go-flow-metrics.git;)
+   (commit commit)))
+ (file-name (git-file-name name version))
+ (sha256
+  (base32
+   "1p87iyk6q6f3g3xkncssx400qlld8f2z93qiz8m1f97grfyhjif1"
+  (build-system go-build-system)
+  (arguments
+   `(#:import-path "github.com/libp2p/go-flow-metrics"
+ ;; TODO: Tests hang.
+ #:tests? #f))
+  (home-page
+   "https://github.com/libp2p/go-flow-metrics;)
+  (synopsis "Simple library for tracking flow metrics")
+  (description "A simple alternative to rcrowley's @command{go-metrics}
+that's a lot faster (and only does simple bandwidth metrics).")
+  (license license:expat



04/34: gnu: Add go-golang-org-x-crypto-ripemd160.

2018-10-24 Thread Pierre Neidhardt
ambrevar pushed a commit to branch master
in repository guix.

commit a9010ead4c727e3dfd3ebd04fabcc915d54f799d
Author: Pierre Neidhardt 
Date:   Wed Oct 24 10:59:38 2018 +0200

gnu: Add go-golang-org-x-crypto-ripemd160.

* gnu/packages/golang.scm (go-golang-org-x-crypto-ripemd160): New variable.
---
 gnu/packages/golang.scm | 12 
 1 file changed, 12 insertions(+)

diff --git a/gnu/packages/golang.scm b/gnu/packages/golang.scm
index e204269..66f2b72 100644
--- a/gnu/packages/golang.scm
+++ b/gnu/packages/golang.scm
@@ -1002,6 +1002,18 @@ Tiny Encryption Algorithm (XTEA) block cipher.")
 (description "This package provides a Go implementation of the ED25519
 signature algorithm.")))
 
+(define-public go-golang-org-x-crypto-ripemd160
+  (package
+(inherit go-golang-org-x-crypto-bcrypt)
+(name "go-golang-org-x-crypto-ripemd160")
+(arguments
+ (substitute-keyword-arguments (package-arguments 
go-golang-org-x-crypto-bcrypt)
+   ((#:import-path _)
+"golang.org/x/crypto/ripemd160")))
+(synopsis "RIPEMD-160 in Go")
+(description "This package provides a Go implementation of the RIPEMD-160
+hash algorithm.")))
+
 ;; Go searches for library modules by looking in the GOPATH environment
 ;; variable.  This variable is a list of paths.  However, Go does not
 ;; keep searching on GOPATH if it tries and fails to import a module.



21/34: gnu: Add go-github-com-libp2p-go-libp2p-metrics.

2018-10-24 Thread Pierre Neidhardt
ambrevar pushed a commit to branch master
in repository guix.

commit 77d8a9179268c3295957b213a8e36c93687b6399
Author: Pierre Neidhardt 
Date:   Wed Oct 24 11:52:24 2018 +0200

gnu: Add go-github-com-libp2p-go-libp2p-metrics.

* gnu/packages/golang.scm (go-github-com-libp2p-go-libp2p-metrics): New 
variable.
---
 gnu/packages/golang.scm | 39 +++
 1 file changed, 39 insertions(+)

diff --git a/gnu/packages/golang.scm b/gnu/packages/golang.scm
index 4b2c30f..29181ed 100644
--- a/gnu/packages/golang.scm
+++ b/gnu/packages/golang.scm
@@ -2966,3 +2966,42 @@ required by Go's standard Hash interface.")
   (synopsis "Type for protocol strings in Golang")
   (description "Just a type for protocol strings.  Nothing more.")
   (license license:expat
+
+(define-public go-github-com-libp2p-go-libp2p-metrics
+  (let ((commit "a10ff6e75dae3c868023867e8caa534a04bdc624")
+(revision "0"))
+(package
+  (name "go-github-com-libp2p-go-libp2p-metrics")
+  (version (git-version "2.1.6" revision commit))
+  (source
+   (origin
+ (method git-fetch)
+ (uri (git-reference
+   (url "https://github.com/libp2p/go-libp2p-metrics.git;)
+   (commit commit)))
+ (file-name (git-file-name name version))
+ (sha256
+  (base32
+   "05wy0cq4h6yg9bzgapcvm2criwriicbswx80ma82gyn4a9fdrk8m"
+  (build-system go-build-system)
+  (arguments
+   '(#:import-path "github.com/libp2p/go-libp2p-metrics"))
+  (native-inputs
+   `(("go-github-com-libp2p-go-flow-metrics" 
,go-github-com-libp2p-go-flow-metrics)
+ ("go-github-com-libp2p-go-libp2p-peer" 
,go-github-com-libp2p-go-libp2p-peer)
+ ("go-github-com-libp2p-go-libp2p-protocol" 
,go-github-com-libp2p-go-libp2p-protocol)
+ ("go-github-com-libp2p-go-libp2p-crypto" 
,go-github-com-libp2p-go-libp2p-crypto)
+ ("go-github-com-mr-tron-base58" ,go-github-com-mr-tron-base58)
+ ("go-github-com-multiformats-go-multihash" 
,go-github-com-multiformats-go-multihash)
+ ("go-github-com-btcsuite-btcd-btcec" 
,go-github-com-btcsuite-btcd-btcec)
+ ("go-github-com-gogo-protobuf-proto" 
,go-github-com-gogo-protobuf-proto)
+ ("go-github-com-gxed-hashland-keccakpg" 
,go-github-com-gxed-hashland-keccakpg)
+ ("go-github-com-minio-blake2b-simd" ,go-github-com-minio-blake2b-simd)
+ ("go-github-com-minio-sha256-simd" ,go-github-com-minio-sha256-simd)
+ ("go-github-com-spaolacci-murmur3" ,go-github-com-spaolacci-murmur3)
+ ("go-golang-org-x-crypto-union" ,(go-golang-org-x-crypto-union
+  (home-page "https://github.com/libp2p/go-libp2p-metrics;)
+  (synopsis "Connection wrapper for go-libp2p that provides bandwidth 
metrics")
+  (description "A connection wrapper for @command{go-libp2p} that provides 
bandwidth
+statistics for wrapped connections.")
+  (license license:expat



11/34: gnu: Add go-github-com-btcsuite-btcd-btcec.

2018-10-24 Thread Pierre Neidhardt
ambrevar pushed a commit to branch master
in repository guix.

commit d5599afadf9026079ef5bf34af9d1b111731b81b
Author: Pierre Neidhardt 
Date:   Wed Oct 24 11:30:32 2018 +0200

gnu: Add go-github-com-btcsuite-btcd-btcec.

* gnu/packages/golang.scm (go-github-com-btcsuite-btcd-btcec): New variable.
---
 gnu/packages/golang.scm | 38 ++
 1 file changed, 38 insertions(+)

diff --git a/gnu/packages/golang.scm b/gnu/packages/golang.scm
index 6447e28..1cc10d5 100644
--- a/gnu/packages/golang.scm
+++ b/gnu/packages/golang.scm
@@ -2658,3 +2658,41 @@ style).
 provides a default implementation of a subsystem-aware leveled logger
 implementing the same interface.")
   (license license:isc
+
+(define-public go-github-com-btcsuite-btcd-btcec
+  (let ((commit "67e573d211ace594f1366b4ce9d39726c4b19bd0")
+(revision "0"))
+(package
+  (name "go-github-com-btcsuite-btcd-btcec")
+  (version (git-version "0.12.0-beta" revision commit))
+  (source
+   (origin
+ (method git-fetch)
+ (uri (git-reference
+   (url "https://github.com/btcsuite/btcd.git;)
+   (commit commit)))
+ (file-name (git-file-name name version))
+ (sha256
+  (base32
+   "04s92gsy71w1jirlr5lkk9y6r5cparbas7nmf6ywbp7kq7fn8ajn"
+  (build-system go-build-system)
+  (arguments
+   '(#:unpack-path "github.com/btcsuite/btcd"
+ #:import-path "github.com/btcsuite/btcd/btcec"))
+  (native-inputs
+   `(("go-github-com-davecgh-go-spew" ,go-github-com-davecgh-go-spew)))
+  (home-page "https://github.com/btcsuite/btcd;)
+  (synopsis "Elliptic curve cryptography to work with Bitcoin")
+  (description "Package @command{btcec} implements elliptic curve
+cryptography needed for working with Bitcoin (secp256k1 only for now).  It is
+designed so that it may be used with the standard crypto/ecdsa packages
+provided with Go.  A comprehensive suite of test is provided to ensure proper
+functionality.  Package @command{btcec} was originally based on work from
+ThePiachu which is licensed under the same terms as Go, but it has
+signficantly diverged since then.  The @command{btcsuite} developers original
+is licensed under the liberal ISC license.
+
+Although this package was primarily written for btcd, it has intentionally
+been designed so it can be used as a standalone package for any projects
+needing to use secp256k1 elliptic curve cryptography.")
+  (license license:isc



26/34: gnu: Add go-github-com-cheekybits-is.

2018-10-24 Thread Pierre Neidhardt
ambrevar pushed a commit to branch master
in repository guix.

commit ad8d4637400f3120320f8012d12065ab48291f3a
Author: Pierre Neidhardt 
Date:   Wed Oct 24 12:03:27 2018 +0200

gnu: Add go-github-com-cheekybits-is.

* gnu/packages/golang.scm (go-github-com-cheekybits-is): New variable.
---
 gnu/packages/golang.scm | 32 
 1 file changed, 32 insertions(+)

diff --git a/gnu/packages/golang.scm b/gnu/packages/golang.scm
index 3b35437..d1b5c86 100644
--- a/gnu/packages/golang.scm
+++ b/gnu/packages/golang.scm
@@ -3149,3 +3149,35 @@ as conversion to and from @command{net.Addr}.")
   (synopsis "Tar utilities extracted from go-ipfs codebase")
   (description "Tar utilities extracted from @command{go-ipfs} codebase.")
   (license license:expat
+
+(define-public go-github-com-cheekybits-is
+  (let ((commit "68e9c0620927fb5427fda3708222d0edee89eae9")
+(revision "0"))
+(package
+  (name "go-github-com-cheekybits-is")
+  (version (git-version "0.0.0" revision commit))
+  (source
+   (origin
+ (method git-fetch)
+ (uri (git-reference
+   (url "https://github.com/cheekybits/is.git;)
+   (commit commit)))
+ (file-name (git-file-name name version))
+ (sha256
+  (base32
+   "1mkbyzhwq3rby832ikq00nxv3jnckxsm3949wkxd8ya9js2jmg4d"
+  (build-system go-build-system)
+  (arguments
+   '(#:import-path "github.com/cheekybits/is"))
+  (home-page "https://github.com/cheekybits/is;)
+  (synopsis "Mini testing helper for Go")
+  (description "A mini testing helper for Go.
+
+@itemize
+@item It has a simple interface (@command{is.OK} and @command{is.Equal}).
+@item It plugs into existing Go toolchain (uses @command{testing.T}).
+@item It's obvious for newcomers.
+@item It also gives you @command{is.Panic} and @command{is.PanicWith} helpers
+- because testing panics is ugly.
+@end itemize\n")
+  (license license:expat



05/34: gnu: Add go-golang-org-x-crypto-blake2s.

2018-10-24 Thread Pierre Neidhardt
ambrevar pushed a commit to branch master
in repository guix.

commit 6fa257cca7b4496d066eb8b730a0634e601c4809
Author: Pierre Neidhardt 
Date:   Wed Oct 24 10:59:50 2018 +0200

gnu: Add go-golang-org-x-crypto-blake2s.

* gnu/packages/golang.scm (go-golang-org-x-crypto-blake2s): New variable.
---
 gnu/packages/golang.scm | 12 
 1 file changed, 12 insertions(+)

diff --git a/gnu/packages/golang.scm b/gnu/packages/golang.scm
index 66f2b72..3c63925 100644
--- a/gnu/packages/golang.scm
+++ b/gnu/packages/golang.scm
@@ -1014,6 +1014,18 @@ signature algorithm.")))
 (description "This package provides a Go implementation of the RIPEMD-160
 hash algorithm.")))
 
+(define-public go-golang-org-x-crypto-blake2s
+  (package
+(inherit go-golang-org-x-crypto-bcrypt)
+(name "go-golang-org-x-crypto-blake2s")
+(arguments
+ (substitute-keyword-arguments (package-arguments 
go-golang-org-x-crypto-bcrypt)
+   ((#:import-path _)
+"golang.org/x/crypto/blake2s")))
+(synopsis "BLAKE2s in Go")
+(description "This package provides a Go implementation of the BLAKE2s
+hash algorithm.")))
+
 ;; Go searches for library modules by looking in the GOPATH environment
 ;; variable.  This variable is a list of paths.  However, Go does not
 ;; keep searching on GOPATH if it tries and fails to import a module.



07/34: gnu: go-golang-org-x-crypto-union: Wrap all crypto packages.

2018-10-24 Thread Pierre Neidhardt
ambrevar pushed a commit to branch master
in repository guix.

commit 48a279ee14ac5a285185168f72041418550371fa
Author: Pierre Neidhardt 
Date:   Wed Oct 24 11:00:12 2018 +0200

gnu: go-golang-org-x-crypto-union: Wrap all crypto packages.

* gnu/packages/golang.scm (go-golang-org-x-crypto-union): Include
go-golang-org-x-crypto-ed25519, go-golang-org-x-crypto-ripemd160,
go-golang-org-x-crypto-blake2s, go-golang-org-x-crypto-sha3 in union.
---
 gnu/packages/golang.scm | 6 +-
 1 file changed, 5 insertions(+), 1 deletion(-)

diff --git a/gnu/packages/golang.scm b/gnu/packages/golang.scm
index c114431..a9bb4e6 100644
--- a/gnu/packages/golang.scm
+++ b/gnu/packages/golang.scm
@@ -1051,7 +1051,11 @@ functions defined by FIPS-202.")))
 
go-golang-org-x-crypto-pbkdf2
 
go-golang-org-x-crypto-twofish
 
go-golang-org-x-crypto-cast5
-
go-golang-org-x-crypto-salsa20)))
+
go-golang-org-x-crypto-salsa20
+
go-golang-org-x-crypto-ed25519
+
go-golang-org-x-crypto-ripemd160
+
go-golang-org-x-crypto-blake2s
+
go-golang-org-x-crypto-sha3)))
   (package
 (name "go-golang-org-x-crypto")
 (version (package-version go-golang-org-x-crypto-bcrypt))



01/01: gnu: sbcl-parse-float: Remove comment about license.

2018-10-23 Thread Pierre Neidhardt
ambrevar pushed a commit to branch master
in repository guix.

commit d89872f95567c4f263f3cf97aa0474dfff1973bc
Author: Pierre Neidhardt 
Date:   Tue Oct 23 20:36:58 2018 +0200

gnu: sbcl-parse-float: Remove comment about license.

* gnu/packages/lisp.scm (sbcl-parse-float): The license really is public 
domain.
---
 gnu/packages/lisp.scm | 1 -
 1 file changed, 1 deletion(-)

diff --git a/gnu/packages/lisp.scm b/gnu/packages/lisp.scm
index 89ccdb7..7964aa3 100644
--- a/gnu/packages/lisp.scm
+++ b/gnu/packages/lisp.scm
@@ -2663,7 +2663,6 @@ pattern-matching-like, but a char-by-char procedural 
parser.")
"This package exports the following function to parse floating-point
 values from a string in Common Lisp.")
   (home-page "https://github.com/soemraws/parse-float;)
-  ;; TODO: Missing license?
   (license license:public-domain
 
 (define-public cl-parse-float



branch master updated (bf076d8 -> d89872f)

2018-10-23 Thread Pierre Neidhardt
ambrevar pushed a change to branch master
in repository guix.

  from  bf076d8   gnu: Add libstatgrab.
   new  d89872f   gnu: sbcl-parse-float: Remove comment about license.

The 1 revisions listed above as "new" are entirely new to this
repository and will be described in separate emails.  The revisions
listed as "adds" were already present in the repository and have only
been added to this reference.


Summary of changes:
 gnu/packages/lisp.scm | 1 -
 1 file changed, 1 deletion(-)



branch master updated (7625c21 -> 063a094)

2018-10-22 Thread Pierre Neidhardt
ambrevar pushed a change to branch master
in repository guix-artwork.

  from  7625c21   website: packaging-tutorial: Fix typos
   new  063a094   website: packaging-tutorial: Add license.

The 1 revisions listed above as "new" are entirely new to this
repository and will be described in separate emails.  The revisions
listed as "adds" were already present in the repository and have only
been added to this reference.


Summary of changes:
 website/posts/packaging-tutorial.md | 9 +
 1 file changed, 9 insertions(+)



01/01: website: packaging-tutorial: Add license.

2018-10-22 Thread Pierre Neidhardt
ambrevar pushed a commit to branch master
in repository guix-artwork.

commit 063a094b8984cb952d7dbf78f1b4424019107fc5
Author: Pierre Neidhardt 
Date:   Mon Oct 22 12:58:43 2018 +0200

website: packaging-tutorial: Add license.

* website/posts/packaging-tutorial.md: Add license.
---
 website/posts/packaging-tutorial.md | 9 +
 1 file changed, 9 insertions(+)

diff --git a/website/posts/packaging-tutorial.md 
b/website/posts/packaging-tutorial.md
index 8684fa9..bf220d6 100644
--- a/website/posts/packaging-tutorial.md
+++ b/website/posts/packaging-tutorial.md
@@ -1106,6 +1106,15 @@ hopefully we will see your contributions soon!
 by Andreas Enge
 
 
+# Notices
+
+[![CC-BY-SA](https://i.creativecommons.org/l/by-sa/4.0/88x31.png "CC-BY-SA
+4.0")](http://creativecommons.org/licenses/by-sa/4.0/)
+
+This work is licensed under a Creative Commons Attribution-ShareAlike 4.0
+International License.
+
+
  About GNU Guix
 
 [GNU Guix](https://www.gnu.org/software/guix) is a transactional package



branch master updated (3a69b59 -> 673364c)

2018-10-21 Thread Pierre Neidhardt
ambrevar pushed a change to branch master
in repository guix.

  from  3a69b59   gnu: rng-tools: Update to 6.6.
   new  673364c   gnu: Add emacs-slime-repl-ansi-color.

The 1 revisions listed above as "new" are entirely new to this
repository and will be described in separate emails.  The revisions
listed as "adds" were already present in the repository and have only
been added to this reference.


Summary of changes:
 gnu/packages/emacs.scm | 20 
 1 file changed, 20 insertions(+)



01/01: gnu: Add emacs-slime-repl-ansi-color.

2018-10-21 Thread Pierre Neidhardt
ambrevar pushed a commit to branch master
in repository guix.

commit 673364cd3a7848067dc3ecb69c7f8a4f3a28f6d5
Author: Pierre Neidhardt 
Date:   Sun Oct 21 19:49:10 2018 +0200

gnu: Add emacs-slime-repl-ansi-color.

* gnu/packages/emacs.scm (emacs-slime-repl-ansi-color): New variable.
---
 gnu/packages/emacs.scm | 20 
 1 file changed, 20 insertions(+)

diff --git a/gnu/packages/emacs.scm b/gnu/packages/emacs.scm
index 1069b9e..47e984e 100644
--- a/gnu/packages/emacs.scm
+++ b/gnu/packages/emacs.scm
@@ -12386,3 +12386,23 @@ have special meaning.  It is also handy for aligning 
text across long vertical
 distances.  Multi-column characters, such as @kbd{TAB} are treated
 correctly.")
 (license license:gpl2+)))
+
+(define-public emacs-slime-repl-ansi-color
+  (let ((commit "ad03263f5d4de473bc173b64a6fc3dc1106393d7"))
+(package
+  (name "emacs-slime-repl-ansi-color")
+  (version (git-version "0.0.0" "1" commit))
+  (source (origin
+(method git-fetch)
+(uri (git-reference
+  (url 
"https://github.com/deadtrickster/slime-repl-ansi-color;)
+  (commit commit)))
+(file-name (git-file-name name version))
+(sha256
+ (base32
+  "0bpg7gxz310x7bnlg324c507sxc5gxwwz6h64h6kdq141r73vbi4"
+  (build-system emacs-build-system)
+  (home-page "https://github.com/deadtrickster/slime-repl-ansi-color;)
+  (synopsis "Color ANSI codes in the REPL of SLIME")
+  (description "Color ANSI codes in the REPL of SLIME")
+  (license license:gpl2+



branch master updated (74e8651 -> 7625c21)

2018-10-21 Thread Pierre Neidhardt
ambrevar pushed a change to branch master
in repository guix-artwork.

  from  74e8651   website: packaging-tutorial: Fix broken English in the 
conclusion.
   new  7625c21   website: packaging-tutorial: Fix typos

The 1 revisions listed above as "new" are entirely new to this
repository and will be described in separate emails.  The revisions
listed as "adds" were already present in the repository and have only
been added to this reference.


Summary of changes:
 website/posts/packaging-tutorial.md | 4 ++--
 1 file changed, 2 insertions(+), 2 deletions(-)



01/01: website: packaging-tutorial: Fix typos

2018-10-21 Thread Pierre Neidhardt
ambrevar pushed a commit to branch master
in repository guix-artwork.

commit 7625c21f5b0dd524758d2fdbba74ddbbcd0a1d85
Author: Pierre Neidhardt 
Date:   Sun Oct 21 11:51:32 2018 +0200

website: packaging-tutorial: Fix typos

* website/posts/packaging-tutorial.md: Fix typos.
---
 website/posts/packaging-tutorial.md | 4 ++--
 1 file changed, 2 insertions(+), 2 deletions(-)

diff --git a/website/posts/packaging-tutorial.md 
b/website/posts/packaging-tutorial.md
index decc20c..8684fa9 100644
--- a/website/posts/packaging-tutorial.md
+++ b/website/posts/packaging-tutorial.md
@@ -158,7 +158,7 @@ following redirection to 
`https://mirror.ibcp.fr/pub/gnu/hello/hello-2.10.tar.gz
 0ssi1wpaf7plaswqqjwigppsg5fyh99vdlb9kzl7c9lng89ndq1i
 ```
 
-In this specific case that the output tells us which mirror was chosen.
+In this specific case the output tells us which mirror was chosen.
 If the result of the above command is not the same as in the above snippet,
 update your `my-hello` declaration accordingly.
 
@@ -205,7 +205,7 @@ time to introduce the minimum we need from the language 
before we can proceed.
 
 # A Scheme crash-course
 
-As we've seen above, basic packages don't require much Scheme knowledge, if 
none
+As we've seen above, basic packages don't require much Scheme knowledge, if
 at all.  But as you progress and your desire to write more and more complex
 packages grows, it will become both necessary and empowering to hone your 
Lisper
 skills.



  1   2   3   4   5   >