Age | Commit message (Expand) | Author |
2015-09-08 | ui: Add package-description-string....Provide support for Texinfo's markup in package description.
* guix/ui.scm (%text-width): New parameter.
(texi->plain-text): New variable.
(package->recutils): Use them.
(package-description-string): New variable.
* emacs/guix-main.scm (%package-param-alist): Use it.
* gnu/packages/perl.scm (perl-devel-globaldestruction)
(perl-devel-lexalias, perl-exporter-lite): Adapt to Texinfo's markup.
* gnu/packages/python.scm (python2-empy): Likewise.
| Mathieu Lirzin |
2015-09-07 | build: container: Use the same clone flags as fork(3)....The intent is to make 'clone' behave a lot more like 'primitive-fork', which
calls clone(2) with SIGCHLD, CLONE_CHILD_CLEARTID, and CLONE_CHILD_SETTID
flags. Notably, running 'clone' at the REPL without these flags would break
the REPL beyond repair.
* guix/build/syscalls.scm (CLONE_CHILD_CLEARTID, CLONE_CHILD_SETTID): New
variables.
* gnu/build/linux-container.scm (namespaces->bit-mask): Add
CLONE_CHILD_CLEARTID and CLONE_CHILD_SETTID to bit mask.
| David Thompson |
2015-09-07 | build: ruby: Avoid long build directory names....Having the hash of the source gem in the source directory file name proved to
be problematic when running the test suite for the 'pg' gem that creates
UNIX-domain sockets in the source directory and exceeded the 108 character
limit on GNU/Linux systems.
* guix/build/ruby-build-system.scm (unpack): Rename unpacked gem directory to
"gem".
| David Thompson |
2015-09-06 | ui: Change 'P_' to return the empty string when passed the empty string....Reported by Mathieu Lirzin <mathieu.lirzin@etu.u-bordeaux.fr>
at <https://lists.gnu.org/archive/html/guix-devel/2015-09/msg00111.html>.
* guix/ui.scm (P_): Check whether MSGID is empty, and return it if it is.
| Ludovic Courtès |
2015-09-06 | licenses: Add CC-BY-SA and CC-BY....* guix/licenses.scm (cc-by-sa4.0, cc-by3.0): New variables.
| Ludovic Courtès |
2015-09-06 | lint: Add 'license' checker....* guix/scripts/lint.scm (check-license): New procedure.
(%checkers): Add 'license' checker.
* tests/lint.scm ("license: invalid license"): New test.
| Ludovic Courtès |
2015-09-06 | emacs-build-system: Fix a file name of info directory....* guix/build/emacs-build-system.scm (move-doc): Adjust to use
"/share/info" instead of its sub-directory.
| Alex Kost |
2015-09-05 | download: Disable offloading for downloads....* guix/download.scm (url-fetch): Use #:local-build? #t.
* guix/git-download.scm (git-fetch): Likewise.
| Ludovic Courtès |
2015-09-05 | build: syscalls: Properly handle clone errors....* guix/build/syscalls.scm (clone): Catch -1 return value and throw error.
| David Thompson |
2015-09-04 | monads: Fix 'liftN' fallback case....Reported by Andy Wingo <wingo@igalia.com>.
* guix/monads.scm (define-lift) <fallback case>: Add missing #'. Remove
extra formal parameter.
* tests/monads.scm ("lift"): Add test with 'lift1' as a procedure.
| Ludovic Courtès |
2015-09-04 | publish: Gracefully handle the lack of a deriver....* guix/scripts/publish.scm (narinfo-string): Catch 'system-error' around
'load-derivation' call; return BASE-INFO upon ENOENT. This allows us
to return the narinfo even if DERIVER is missing. Before that, the
exception would be uncaught, leading to 500 Internal Error on the
client side.
| Ludovic Courtès |
2015-09-02 | graph: Add '--expression'....* guix/scripts/graph.scm (%options, show-help): Add '--expression'.
(guix-graph): Call 'read/eval-package-expression' for 'expression'
pairs in OPTS.
* tests/guix-graph.sh: Add tests.
* doc/guix.texi (Invoking guix graph): Document it.
| Ludovic Courtès |
2015-09-02 | guix: Add GUST font license 1.0....* guix/licenses.scm (gfl1.0): New variable.
| Ricardo Wurmus |
2015-09-01 | import: gem: Fix minor bug and add unit test....* guix/import/gem.scm (make-gem-sexp): Properly handle an empty list of
licenses. When rendering a list of licenses, cons 'list onto the front of
the expression.
* tests/gem.scm: New file.
* Makefile.am (SCM_TESTS): Add it.
| David Thompson |
2015-08-31 | build: Add R build system....* guix/build-system/r.scm: New file.
* guix/build/r-build-system: New file.
* Makefile.am (MODULES): Add new files.
* doc/guix.texi (Build Systems): Document r-build-system.
| Ricardo Wurmus |
2015-08-31 | import: Add 'cran' importer....* guix/import/cran.scm: New file.
* guix/scripts/import.scm: Add "cran" to 'importers'.
* guix/scripts/import/cran.scm: New file.
* tests/cran.scm: New file.
* Makefile.am (MODULES): Add 'guix/import/cran.scm' and
'guix/scripts/import/cran.scm'.
(SCM_TESTS): Add 'tests/cran.scm'.
* doc/guix.texi (Invoking guix import): Document it.
* po/guix/POTFILES.in: Add 'guix/scripts/import/cran.scm'.
| Ricardo Wurmus |
2015-08-30 | ui: Add 'run-guix'....* guix/ui.scm (guix-main): Move the code to run guix command line to ...
(run-guix): ...here. New procedure. Export it.
| Alex Kost |
2015-08-30 | guix graph: Export node types and <node-type> accessors....* guix/scripts/graph.scm (%node-types, node-type, node-type?,
node-type-identifier, node-type-label, node-type-edges,
node-type-convert, node-type-name, node-type-description): Export.
| Alex Kost |
2015-08-30 | guix lint: Export checkers and <lint-checker> accessors....* guix/scripts/lint.scm (%checkers, lint-checker, lint-checker?,
lint-checker-name, lint-checker-description, lint-checker-check):
Export.
| Alex Kost |
2015-08-29 | download: Keep a single copy of the mirror file....This saves ~10% on 'guix build inkscape -Sd'.
* guix/download.scm (%mirror-file): New variable.
(url-fetch): Remove #:mirrors parameter.
Remove 'mirror-file'; refer to '%mirror-file' instead.
| Ludovic Courtès |
2015-08-29 | refresh: Add missing newline in warning message....Reported by karhunkynsi on #guix.
* guix/scripts/refresh.scm (update-package): Add missing newline in
string literal passed to 'warning'.
| Ludovic Courtès |
2015-08-29 | download: Keep only 2 store items for all the downloads....This significantly reduces churn in the store. It also reduces run time
of 'guix build inkscape -Sd' by ~10%.
* guix/download.scm (url-fetch)[mirror-file]: New variable.
[builder]: Get URL from the "guix download url" env. var. Get the mirrors
from MIRROR-FILE. Pass #:script-name and #:env-vars to 'gexp->derivation'.
| Ludovic Courtès |
2015-08-29 | gexp: Add #:script-name parameter to 'gexp->derivation'....* guix/gexp.scm (gexp->derivation): Add #:script-name parameter.
* doc/guix.texi (G-Expressions): Document it.
| Ludovic Courtès |
2015-08-29 | monads: Inline the procedure returned by liftN....* guix/monads.scm (define-lift): Turn into a macro that open-codes the result
of its lift.
| Ludovic Courtès |
2015-08-27 | import: Add Ruby gem importer....* gnu/scripts/import.scm (importers): Add "gem".
* gnu/import/gem.scm: New file.
* gnu/scripts/import/gem.scm: New file.
* Makefile.am (MODULES): Add them.
* guix.texi ("invoking guix import"): Document it.
| David Thompson |
2015-08-27 | import: pypi: Move generally useful procedures to utils module....* guix/import/pypi.scm (make-pypi-sexp): Factorize license to symbol
conversion code.
(string->license, snake-case, guix-hash-url): Move from here...
* guix/import/utils.scm: ... to here.
(license->symbol): New procedure.
| David Thompson |
2015-08-27 | Add 'guix graph'....* guix/scripts/graph.scm, tests/graph.scm, tests/guix-graph.sh,
doc/images/coreutils-bag-graph.dot, doc/images/coreutils-graph.dot: New
files.
* Makefile.am (MODULES): Add guix/scripts/graph.scm.
(SH_TESTS): Add tests/guix-graph.sh.
(SCM_TESTS): Add tests/graph.scm.
* doc.am (DOT_FILES, DOT_VECTOR_GRAPHICS): New variables.
(EXTRA_DIST): Use them.
(dist_infoimage_DATA): Use $(DOT_FILES).
(pdf-local, info-local, ps-local): Likewise.
* doc/guix.texi (Packages with Multiple Outputs): Add cross-reference to 'guix
graph'.
(Invoking guix gc): Likewise.
(Invoking guix graph): New section.
| Ludovic Courtès |
2015-08-27 | gexp: Add 'lower-object'....* guix/gexp.scm (lower-object): New procedure.
(lower-inputs, lower-references, gexp->sexp): Use it.
* tests/gexp.scm ("lower-object"): New test.
* doc/guix.texi (G-Expressions): Document it.
| Ludovic Courtès |
2015-08-24 | guix package: -s shows outputs....* guix/ui.scm (package->recutils): Print "outputs:".
| Mark H Weaver |
2015-08-20 | profiles: Remove duplicate entries in 'etc/profile'....Reported by Andy Wingo
at <http://lists.gnu.org/archive/html/guix-devel/2015-08/msg00109.html>.
* guix/profiles.scm (profile-derivation)[builder]: Delete duplicates in
SEARCH-PATHS.
| Ludovic Courtès |
2015-08-20 | guix: Add Sleepycat license....* guix/licenses.scm (sleepycat): New variable.
| Ricardo Wurmus |
2015-08-19 | scripts: package: Add --install-from-file option....* guix/scripts/package.scm (show-help): Add help text for --install-from-file
option.
(%options): Add --install-from-file option.
* tests/guix-package.sh: Test it.
* doc/guix.texi ("invoking guix package"): Document it.
* doc/package-hello.scm: New file.
* doc.am (EXTRA_DIST): Add it.
| David Thompson |
2015-08-19 | size: Get the item's size from the daemon rather than compute it....This removes all I/O, which obviously makes things faster.
* guix/scripts/size.scm (file-size, store-item-exists?): Remove.
(query-path-info*): New procedure.
(file-size*): Rename to...
(file-size): ... this; adjust caller. Use 'query-path-info*' instead of
'file-size'.
| Ludovic Courtès |
2015-08-19 | lint: Add 'formatting' checker....* guix/scripts/lint.scm (report-tabulations, report-trailing-white-space,
report-long-line, report-formatting-issues, check-formatting): New
procedures.
(%formatting-reporters): New variable.
(%checkers): Add 'formatting' checker.
* tests/lint.scm ("formatting: tabulation", "formatting: trailing white
space", "formatting: long line", "formatting: alright"): New tests.
* doc/guix.texi (Invoking guix lint): Mention the 'formatting' checker.
| Ludovic Courtès |
2015-08-18 | build: ruby: Rewrite build system to use gem archives....Co-Authored-By: Pjotr Prins <pjotr.public01@thebird.nl>
* guix/build-system/ruby.scm (lower): Remove git dependency.
(rubygems-uri): New procedure.
* guix/build/ruby-build-system (gitify): Delete.
(unpack): Use 'gem unpack' utility.
(check): Add docstring.
(build): Repack modified gem.
(install): Rebuild unpacked gem and install it.
(%standard-phases): Remove gitify and build phases.
* gnu/packages/ruby.scm (ruby-hoe, ruby-rake-compiler, ruby-i18n,
ruby-rspec-support, ruby-rspec-core, ruby-diff-lcs-for-rspec,
ruby-rspec-expectations, ruby-rspec-mocks, ruby-rspec, bundler,
ruby-useragent, ruby-bacon, ruby-arel, ruby-connection-pool,
ruby-net-http-persistent, ruby-minitest, ruby-minitest-sprint,
ruby-minitest-bacon, ruby-daemons, ruby-git, ruby-slop,
ruby-multipart-post): Convert to new build system.
* doc/guix.texi (ruby-build-system): Document the gem archive requirement.
| David Thompson |
2015-08-17 | syscalls: setns: Skip binding if there is no such C function....On systems with a glibc prior to 2.14, the 'setns' function is not available.
Thanks to Eric Bavier for reporting the issue.
* guix/build/syscalls.scm (setns): Wrap with 'false-if-exception'.
| David Thompson |
2015-08-10 | import: elpa: Fix typo....Reported by Eric Dvorsak <eric@dvorsak.fr> on #guix.
* guix/scripts/import/elpa.scm (%default-options): Remove redundant
quote which led to an error if --archive option was not specified.
| Alex Kost |
2015-08-06 | python-build-system: Fix 'get-python-version'....* guix/build/python-build-system.scm (get-python-version): Rewrite to handle
multiple-digit version number components.
| Mark H Weaver |
2015-08-01 | build: emacs: Fix bug and improvement robustness....* guix/build/emacs-build-system.scm (emacs-inputs): Fix matching pattern.
(patch-el-files): Improve regexp pattern.
| Federico Beffa |
2015-08-01 | import: elpa: Improve error message reporting....* guix/import/elpa.scm (filter-dependencies): Fix bug.
(call-with-downloaded-file): Add optional parameter 'error-thunk'.
(fetch-package-description): Use it.
| Federico Beffa |
2015-07-25 | syscalls: Add 'network-interfaces', which wraps libc's 'getifaddrs'....Based on discussions with Rohan Prinja <rohan.prinja@gmail.com>.
* guix/build/syscalls.scm (<interface>): New record type.
(write-interface, values->interface, unfold-interface-list,
network-interfaces, free-ifaddrs): New procedures.
(ifaddrs): New C struct.
(%struct-ifaddrs-type, %sizeof-ifaddrs): New macros.
* tests/syscalls.scm ("network-interfaces returns one or more interfaces",
"network-interfaces returns \"lo\""): New tests.
| Ludovic Courtès |
2015-07-25 | syscalls: 'define-c-struct' properly align reads....* guix/build/syscalls.scm (alignof*, align): New macros.
(write-types, read-types): Use 'align' to compute the actual offset to
read/write a value of TYPE0.
| Ludovic Courtès |
2015-07-25 | syscalls: 'read-socket-address' gracefully handles unsupported families....* guix/build/syscalls.scm (PF_PACKET, AF_PACKET): New variables.
(read-socket-address): Make 'index' optional. Return (vector FAMILY) when
FAMILY is neither AF_INET nor AF_INET6.
| Ludovic Courtès |
2015-07-25 | syscalls: 'define-c-struct' distinguishes pointers from integers....* guix/build/syscalls.scm (read-type): Add special-case for when TYPE is '*.
| Ludovic Courtès |
2015-07-25 | syscalls: Rename 'network-interfaces' and 'all-network-interfaces'....* guix/build/syscalls.scm (network-interfaces): Rename to...
(network-interface-names): ... this.
(all-network-interfaces): Rename to...
(all-network-interface-names): ... this.
* gnu/services/networking.scm (dhcp-client-service): Adjust accordingly.
* tests/syscalls.scm ("all-network-interfaces"): Rename to...
("all-network-interface-names"): ... this, and adjust accordingly.
("network-interfaces"): Rename to...
("network-interface-names"): ... this, and adjust accordingly.
| Ludovic Courtès |
2015-07-23 | Fix typos in translatable strings....Reported by Anders Jonsson <anders.jonsson@norsjovallen.se>.
* gnu/packages/backup.scm, gnu/packages/databases.scm,
gnu/packages/linux.scm, gnu/packages/perl.scm,
gnu/packages/web.scm, guix/scripts/lint.scm,
guix/scripts/publish.scm: Fix typos in translatable strings.
| Ludovic Courtès |
2015-07-22 | size: Add '--substitute-urls' option....* guix/scripts/size.scm (show-help, %options): Add --substitute-urls.
(%default-options): Add 'substitute-urls'.
(guix-size): Honor it.
* doc/guix.texi (Invoking guix size): Document it.
| Ludovic Courtès |
2015-07-22 | derivations: Improve docstring of 'substitution-oracle'....* guix/derivations.scm (substitution-oracle): Improve docstring.
| Ludovic Courtès |
2015-07-22 | derivations: Improve complexity of 'substitution-oracle'....* guix/derivations.scm (substitution-oracle): Use a final 'concatenate'
instead of repeated 'append's.
| Ludovic Courtès |
2015-07-22 | import: hackage: Remove reference to unbound variable....* guix/scripts/import/hackage.scm (guix-import-hackage): Fix error message for
imports from stdin, which referred to unbound variable 'package-name'.
| Ludovic Courtès |