Age | Commit message (Expand) | Author |
2016-07-28 | guix package: Suggest prefix search path settings....* guix/scripts/package.scm (build-and-use-profile): Pass #:kind 'prefix
to 'display-search-paths'.
| Ludovic Courtès |
2016-07-28 | packages: Add 'hidden-package'....* guix/packages.scm (hidden-package, hidden-package?): New procedures.
* gnu/packages.scm (fold-packages): Filter out 'hidden-package?'.
* tests/packages.scm ("hidden-package"): New test.
| Ludovic Courtès |
2016-07-27 | zlib: Protect against non-empty port internal buffers....* guix/zlib.scm (make-gzip-input-port)[gzfile]: Error out
if (drain-input port) returns a non-empty string.
* guix/zlib.scm (make-gzip-output-port)[gzfile]: Call 'force-output'.
| Ludovic Courtès |
2016-07-27 | zlib: Clarify when 'gzread!' can return zero....* guix/zlib.scm (gzread!): Augment docstring to clarify when zero is
returned (based on reading zlib code).
(make-gzip-input-port)[read!]: Remove scary comment.
| Ludovic Courtès |
2016-07-26 | profiles: Output in 'package->manifest-entry' defaults to "out"....Fixes <http://bugs.gnu.org/24029>.
Reported by Dylan Jeffers <sapientech@openmailbox.org>.
* guix/profiles.scm (package->manifest-entry): Change #:output to
default to "out".
(packages->manifest): Add 'package?' in second 'match' clause.
* tests/profiles.scm ("package->manifest-entry defaults to \"out\""):
New test.
| Ludovic Courtès |
2016-07-26 | environment: Set 'GUIX_ENVIRONMENT' to the profile....* guix/scripts/environment.scm (create-environment): Set
'GUIX_ENVIRONMENT' to PROFILE.
* tests/guix-environment.sh: Test it.
* doc/guix.texi (Invoking guix environment): Document it.
| Ludovic Courtès |
2016-07-26 | import: pypi: Correctly handle new-style URLs....Fixes <http://bugs.gnu.org/23997>.
* guix/import/pypi.scm (guix-package->pypi-name): Rewrite using
'basename' and 'hyphen-package-name->name+version'.
* tests/pypi.scm ("guix-package->pypi-name, old URL style")
("guix-package->pypi-name, new URL style"): New tests.
| Ludovic Courtès |
2016-07-25 | profiles: Add fonts-dir-file hook....* guix/profiles.scm (fonts-dir-file): New procedure.
(%default-profile-hooks): Add it.
| Alex Kost |
2016-07-24 | lint: 'inputs-should-be-native' checks for intltool, itstool and glib:bin....* guix/scripts/lint.scm (check-inputs-should-be-native): Warn when intltool,
itstool or glib:bin isn't a native-input.
* tests/lint.scm (inputs: glib:bin is probably a native input): Add test.
Co-authored-by: Ludovic Courtès <ludo@gnu.org>
| David Craven |
2016-07-24 | download: Add SourceForge load balancer....* guix/download.scm (%mirrors)[sourceforge]: Add canonical load balancer for
sourceforge.net.
Signed-off-by: Leo Famulari <leo@famulari.name>
| Alex Griffin |
2016-07-20 | pull: Install (guix config) module to override the user's one....* build-aux/build-self.scm (zlib, gzip, bzip2, xz): New variables.
(build)[storedir, localstatedir, sysconfdir, sbindir]: New variables.
[builder]: Pass them to 'build-guix'.
* guix/build/pull.scm (build-guix): Add #:system, #:storedir,
#:localstatedir, #:sysconfdir, #:sbindir, #:package-name,
#:package-version, #:bug-report-address, #:home-page-url, #:libgcrypt,
#:zlib, #:gzip, #:bzip2, and #:xz. Remove #:gcrypt.
Instantiate all the substitution variables in (guix config). Remove
code to delete OUT/guix/config.{scm,go}.
* guix/config.scm.in: Add note about (guix script pull).
| Ludovic Courtès |
2016-07-20 | config: Export the raw installation directories....* guix/config.scm.in (%storedir, %localstatedir)
(%sysconfdir, %sbindir): New variables.
(%store-directory): Use %STOREDIR.
(%state-directory): Use %LOCALSTATEDIR.
(%config-directory): Use %SYSCONFDIR.
(%guix-register-program): Use %SBINDIR.
| Ludovic Courtès |
2016-07-20 | download: Prepare to support the 'guix publish' /file URLs....* guix/download.scm (%content-addressed-mirrors): Add 'file' parameter
to the lambda.
* guix/build/download.scm (url-fetch)[content-addressed-uris]: Adjust
accordingly.
| Ludovic Courtès |
2016-07-20 | publish: Handle '/file' URLs, for content-addressed files....* guix/scripts/publish.scm (render-content-addressed-file): New procedure.
(http-write): Add 'application/octet-stream' case.
(make-request-handler): Add /file/NAME/sha256/HASH URLs.
* tests/publish.scm ("/file/NAME/sha256/HASH")
("/file/NAME/sha256/INVALID-NIX-BASE32-STRING")
("/file/NAME/sha256/INVALID-HASH"): New tests.
* doc/guix.texi (Invoking guix publish): Mention the /file URLs.
| Ludovic Courtès |
2016-07-20 | derivations: Export 'fixed-output-path'....* guix/derivations.scm (fixed-output-path): Change 'output',
'hash-algo', and 'recursive?' to keyword parameters. Export.
(derivation): Adjust accordingly.
| Ludovic Courtès |
2016-07-19 | publish: Keep compression disabled when zlib is missing....Reported by David Thompson.
* guix/scripts/publish.scm (%options)[--compression]: Warn if LEVEL > 0
and zlib is missing, and return RESULT.
| Ludovic Courtès |
2016-07-19 | publish: Add '--compression'....* guix/scripts/publish.scm (show-help, %options): Add '--compression'.
(<compression>): New record type.
(%no-compression, %default-gzip-compression): New variables.
(%default-options): Add 'compression' key.
(narinfo-string): Add #:compression parameter and honor it.
(render-narinfo): Likewise.
(render-nar): Likewise.
<top level>: Add call to 'declare-header!'.
(swallow-zlib-error): New macro.
(nar-response-port): New procedure.
(http-write): Add call to 'force-output'. Use 'nar-response-port'
instead of 'response-port'. Use 'swallow-zlib-error'.
(make-request-handler): Add #:compression parameter and honor it. Add
"nar/gzip" URL handler.
(run-publish-server): Add #:compression parameter and honor it.
(guix-publish): Honor --compression.
* tests/publish.scm (http-get-port, wait-until-ready): New procedures.
<top level>: Run main server with "-C0". Call 'wait-until-ready'.
("/nar/gzip/*", "/*.narinfo with compression"): New tests.
* doc/guix.texi (Invoking guix publish): Document it.
| Ludovic Courtès |
2016-07-19 | Add (guix zlib)....* guix/zlib.scm, tests/zlib.scm: New files.
* Makefile.am (MODULES): Add guix/zlib.scm.
(SCM_TESTS): Add tests/zlib.scm.
* m4/guix.m4 (GUIX_LIBGCRYPT_LIBDIR): New macro.
* configure.ac (LIBGCRYPT_LIBDIR): Use it. Define and substitute
'LIBZ'.
* guix/config.scm.in (%libz): New variable.
| Ludovic Courtès |
2016-07-16 | guix gc: Display of saved space for garbage collection....Fixes <http://bugs.gnu.org/23979>.
* guix/scripts/gc.scm (guix-gc): Display freed bytes.
Signed-off-by: Vincent Legoll <vincent.legoll@idgrilles.fr>
Signed-off-by: Ludovic Courtès <ludo@gnu.org>
| Vincent Legoll |
2016-07-16 | build: Substitute URLs now default to "mirror.hydra.gnu.org" alone....* config-daemon.ac: Remove "hydra.gnu.org" from 'guix_substitute_urls'.
* guix/store.scm (%default-substitute-urls): Remove "hydra.gnu.org".
| Ludovic Courtès |
2016-07-14 | records: Improve reporting of invalid field specifiers....Fixes <http://bugs.gnu.org/23969>.
Reported by Vincent Legoll <vincent.legoll@gmail.com>.
* guix/records.scm (report-invalid-field-specifier): New procedure.
* tests/records.scm ("define-record-type* & wrong field specifier"): New
test.
| Ludovic Courtès |
2016-07-14 | challenge: Disable grafting....* guix/scripts/challenge.scm (guix-challenge): Set %GRAFT? to #f.
| Ludovic Courtès |
2016-07-14 | substitute: Gracefully handle trailing slashes in URLs....Previously, using something like
"--substitute-urls=http://example.org///" would lead to a
'cache-narinfo!' call with #f as its second argument.
It would also do the wrong thing for URLs with a non-empty initial path
component, such as "http://example.org/foo/bar".
* guix/scripts/substitute.scm (fetch-narinfos)[handle-narinfo-response]:
Add call to 'basename' for PATH.
| Ludovic Courtès |
2016-07-13 | lint: 'validate-uri' reports suspiciously small 200 responses....* guix/scripts/lint.scm (validate-uri): Upon 200 http-response, check
the 'response-content-length' and emit a warning when it is <= 1000.
* tests/lint.scm (call-with-http-server): Add 'data' parameter.
(with-http-server): Likewise.
(%long-string): New variable.
("home-page: 200"): Pass %LONG-STRING to 'with-http-server'.
("home-page: 404", "source: 200", "source: 404"): Likewise.
("home-page: 200 but short length"): New test.
("source: 200 but short length"): New test.
| Ludovic Courtès |
2016-07-13 | download: Attempt to update SourceForge mirror URLs....* guix/download.scm (%mirrors)[sourceforge]: End in "/project" instead
of "/sourceforge". Remove a couple of dangling URLs.
| Ludovic Courtès |
2016-07-12 | packages: <origin> no longer has an 'imported-modules' field....* guix/packages.scm (<origin>)[imported-modules]: Remove.
(patch-and-repack): Remove #:imported-modules. Use
'with-imported-modules'. Remove #:modules argument to
'gexp->derivation'.
(origin->derivation): Adjust accordingly.
* doc/guix.texi (origin Reference): Adjust accordingly.
| Ludovic Courtès |
2016-07-12 | gexp: Remove more uses of #:modules....* guix/scripts/system.scm (switch-to-system): Adjust comment.
* tests/gexp.scm ("gexp->derivation #:references-graphs"): Use
'with-imported-modules' instead of #:modules.
* tests/grafts.scm ("graft-derivation, preserve empty directories"):
Likewise.
| Ludovic Courtès |
2016-07-12 | gexp: 'program-file' and 'gexp->script' no longer have #:modules....* guix/gexp.scm (<program-file>)[modules]: Remove.
(program-file): Remove #:modules and adjust accordingly.
(program-file-compiler): Likewise.
(gexp->script): Likewise.
| Ludovic Courtès |
2016-07-12 | gexp: 'computed-file' no longer has a #:modules parameter....* guix/gexp.scm (<computed-file>)[modules]: Remove.
(computed-file): Remove #:modules.
(computed-file-compiler): Likewise.
* doc/guix.texi (G-Expressions): Adjust accordingly.
| Ludovic Courtès |
2016-07-12 | download: Use 'with-imported-modules'....* guix/cvs-download.scm (cvs-fetch): Use 'with-imported-modules' instead
of the #:modules argument of 'gexp->derivation'.
* guix/download.scm (url-fetch): Likewise.
* guix/git-download.scm (git-fetch): Likewise.
* guix/hg-download.scm (hg-fetch): Likewise.
* guix/svn-download.scm (svn-fetch): Likewise.
| Ludovic Courtès |
2016-07-12 | profiles: Use 'with-imported-modules'....* guix/profiles.scm (info-dir-file): Use 'with-imported-modules' instead
of the #:module argument to 'gexp->derivation'.
(ghc-package-cache-file): Likewise.
(ca-certificate-bundle): Likewise.
(gtk-icon-themes): Likewise.
(xdg-desktop-database): Likewise.
(xdg-mime-database): Likewise.
(profile-derivation): Likewise.
| Ludovic Courtès |
2016-07-12 | gexp: 'gexp->file' emits code to set '%load-path'....* guix/gexp.scm (gexp->file): Add #:set-load-path? parameter and honor it.
* gnu/system.scm (operating-system-parameters-file): Pass
#:set-load-path? #f.
* doc/guix.texi (G-Expressions): Adjust accordingly.
| Ludovic Courtès |
2016-07-12 | gexp: Factorize load-path-setting expression....* guix/gexp.scm (load-path-expression): New procedure.
(gexp->script): Use it.
| Ludovic Courtès |
2016-07-12 | gexp: Add 'with-imported-modules' macro....* guix/gexp.scm (<gexp>)[modules]: New field.
(gexp-modules): New procedure.
(gexp->derivation): Use it and append the result to %MODULES.
Update docstring to mark #:modules as deprecated.
(current-imported-modules, with-imported-modules): New macros.
(gexp): Pass CURRENT-IMPORTED-MODULES as second argument to 'gexp'.
(gexp->script): Use and honor 'gexp-modules'; define '%modules'.
* tests/gexp.scm ("gexp->derivation & with-imported-modules")
("gexp->derivation & nested with-imported-modules")
("gexp-modules & ungexp", "gexp-modules & ungexp-splicing"):
New tests.
("program-file"): Use 'with-imported-modules'. Remove #:modules
argument to 'program-file'.
* doc/guix.texi (G-Expressions): Document 'with-imported-modules'.
Mark #:modules of 'gexp->derivation' as deprecated.
* emacs/guix-devel.el: Add syntax for 'with-imported-modules'.
(guix-devel-keywords): Add it.
* .dir-locals.el: Likewise.
| Ludovic Courtès |
2016-07-12 | gexp: Keep only a single 'references' field....The distinction between native inputs and "normal" inputs can already be
determined by looking at the 'native?' field of <gexp-input>. The extra
'natives' field of <gexp> added complexity for no good reason.
* guix/gexp.scm (<gexp>)[natives]: Remove.
(write-gexp): Remove use of 'gexp-native-references'.
(gexp-inputs)[native-input?]: New procedure.
Use it.
(gexp->sexp)[reference->sexp]: Honor N? for input lists.
Remove use of 'gexp-native-references'.
(gexp)[collect-native-escapes]: Remove.
Simplify.
| Ludovic Courtès |
2016-07-03 | import: cpan: Use our mirrors for 'https' URLs....* guix/import/cpan.scm (fix-source-url): New procedure.
(cpan-module->sexp): Use it to construct our source-url.
* tests/cpan.scm: Add tests for fix-source-url.
Signed-off-by: Ludovic Courtès <ludo@gnu.org>
| Alex Sassmannshausen |
2016-07-03 | guix: Support authentication when fetching from SVN....* guix/svn-download.scm (<svn-reference>): Add fields for optional
credentials.
(svn-fetch): Pass credentials to build-side "svn-fetch".
* guix/build/svn.scm (svn-fetch): Pass optional credentials to svn
command.
| Ricardo Wurmus |
2016-07-02 | download: Update CPAN mirrors....* guix/download.scm (%mirrors)[cpan]: Remove enstimac.fr, which seems
dead; add ibcp.fr.
| Ludovic Courtès |
2016-06-29 | download: Use basic authentication when userinfo is present in URI....* guix/download.scm (url-fetch): Include (guix base64) module on the
build-side.
* guix/build/download.scm (http-fetch): Add "Authorization" header when
userinfo is present in the URI.
| David Thompson |
2016-06-26 | daemon: Rename 'NIX_CONF_DIR' to 'GUIX_CONFIGURATION_DIRECTORY'....Partly fixes <http://bugs.gnu.org/22459>.
Reported by Jeff Mickey <j@codemac.net> and David Craven <david@craven.ch>.
* nix/libstore/globals.cc (Settings::processEnvironment()): Change
'NIX_CONF_DIR' to 'GUIX_CONFIGURATION_DIRECTORY'.
* nix/local.mk (libstore_a_CPPFLAGS): Likewise.
* guix/config.scm.in (%config-directory): Likewise.
* build-aux/test-env.in: Likewise.
* gnu/packages/patches/hydra-automake-1.15.patch: Likewise.
Signed-off-by: Ludovic Courtès <ludo@gnu.org>
| David Craven |
2016-06-25 | import: pypi: do not fail when 'run_requires' is missing from the metadata....* guix/import/pypi.scm (read-wheel-metadata): do not crash when 'run_requires'
is missing from the metadata.
| Cyril Roelandt |
2016-06-25 | guix: python-build-system: Change pypi-uri to use https://pypi.io....* guix/build-system/python.scm (pypi-uri): Use https://pypi.io.
* gnu/packages/python.scm (python-twisted)[uri]: Remove https://pypi.io.
| 宋文武 |
2016-06-25 | utils: 'cache-directory' always appends "/guix"....Fixes <http://bugs.gnu.org/23836>.
Fixes a regression introduced in f10dcbf1a92c147a2fedba6f774afa6a7013fcdf.
Reported by myglc2 <myglc2@gmail.com>.
* guix/utils.scm (cache-directory): Always append "/guix".
| Ludovic Courtès |
2016-06-23 | bournish: Add 'wc' command....* guix/build/bournish.scm (lines+chars, file-exists?*, wc-print)
(wc-l-print, wc-c-print, wc-command, wc-command-implementation)
(wc-l-command-implementation, wc-c-command-implementation): New procedures.
(%commands): Add 'wc'.
Co-authored-by: Ludovic Courtès <ludo@gnu.org>
| Efraim Flashner |
2016-06-22 | substitute: Use ~/.cache when invoked by an unprivileged user....This is a followup to ea0c6e0507a6997f12a4f29d0445b51cf53bd81e.
* guix/scripts/substitute.scm (%narinfo-cache-directory): Use
'cache-directory' when (getuid) returns non-zero.
(cache-narinfo!): Remove 'catch'.
| Ludovic Courtès |
2016-06-22 | utils: 'cache-directory' honors 'XDG_CACHE_HOME'....* guix/utils.scm (cache-directory): Honor 'XDG_CACHE_HOME', not
'XDG_CONFIG_HOME'.
| Ludovic Courtès |
2016-06-22 | build: emacs: Search for elisp in "share/emacs/site-lisp"....* guix/build/emacs-build-system.scm (emacs-inputs-el-directories):
Add ".../share/emacs/site-lisp" directory to the returned result as
elisp files can also be placed there.
| Alex Kost |
2016-06-20 | gexp: Use a relative file name....This is a followup to cbbbb7be0fbaa11ff75bce92f2d82131ff8db104.
* guix/gexp.scm (%utils-module): Use a file name relative to this file
instead of using 'search-path'.
| Ludovic Courtès |
2016-06-20 | utils: 'current-source-directory' gracefully handles lack of source info....* guix/utils.scm (current-source-directory): Add case for when FILE-NAME
is #f.
| Ludovic Courtès |
2016-06-20 | utils: 'current-source-directory' resolves relative file names at run time....* guix/utils.scm (absolute-dirname): New procedure.
(current-source-directory): Emit code to use it instead of calling
'search-path'.
| Ludovic Courtès |