Age | Commit message (Expand) | Author |
2013-01-22 | packages: Remove redundant test for inputs-as-procedures....* guix/packages.scm (package-derivation)[expand-input]: Remove redundant
test when the input is a procedure.
| Ludovic Courtès |
2013-01-20 | download: Add HTTPS support....* guix/build/download.scm: Autoload (gnutls).
(tls-wrap): New procedure.
(open-connection-for-uri): Add support for `https'. Wrap the socket
with `tls-wrap' in that case.
(url-fetch): Add `https'.
* guix/download.scm (gnutls-derivation): New procedure.
(url-fetch)[need-gnutls?]: New variable.
Call `gnutls-derivation' when NEED-GNUTLS? is true, and add its output
to the `GUILE_LOAD_PATH' env. var. in that case.
| Ludovic Courtès |
2013-01-20 | packages: Have `package-derivation' return a <derivation> as a second value....* guix/packages.scm (cache): Change the `drv' argument to `thunk'.
Memoize all the return values of THUNK.
(cached-derivation): Remove.
(cached): New macro.
(package-derivation): Use `cached' instead of `(or (cached-derivation) …)'.
* doc/guix.texi (Defining Packages): Update accordingly.
| Ludovic Courtès |
2013-01-19 | gnu: Add Freetype....licenses: Add freetype license.
* gnu/packages/freetype.scm: New file.
* guix/licenses.scm (freetype): New variable.
* Makefile.am (MODULES): Add freetype.scm.
| Andreas Enge |
2013-01-18 | licenses: Add 'vim'....* guix/licenses.scm (vim): New variable.
| Andreas Enge |
2013-01-18 | distro: Change the module name space to (gnu ...)....* distro: Rename to...
* gnu: ... this. Update module names accordingly.
* Makefile.am: Adjust accordingly.
* po/POTFILES.in: Likewise.
* distro.scm: Search for files under /gnu/packages instead of
/distro/packages.
* gnu/packages/base.scm (ld-wrapper-boot3): Likewise.
| Ludovic Courtès |
2013-01-17 | packages: Change `base32' to allow non-literal strings....* guix/packages.scm (base32): Allow arguments that are not literal strings.
| Ludovic Courtès |
2013-01-16 | doc: Start documenting derivations....* doc/guix.texi (Defining Packages): Add cross-reference to
"Derivations".
(The Store): Add `build-derivations'.
(Derivations): Populate.
| Ludovic Courtès |
2013-01-15 | doc: Start documenting (guix store)....* doc/guix.texi (The Store): Populate.
(Introduction): Add cross-reference. Change "package store" to "the
store".
| Ludovic Courtès |
2013-01-15 | licenses: Add 'psfl'....* guix/licenses.scm (psfl): New variable.
| Nikita Karetnikov |
2013-01-15 | build-system/gnu: Allow the `source' argument to be #f....* guix/build-system/gnu.scm (gnu-build): Allow SOURCE to be #f.
| Ludovic Courtès |
2013-01-14 | snix: When unable to determine the version number, leave the URI unchanged....* guix/snix.scm (snix-derivation->guix-package)[pretty-uri]: When
VERSION is #f, return URI.
| Ludovic Courtès |
2013-01-13 | licenses: Add 'openldap2.8'....* guix/licenses.scm (openldap2.8): New variable.
| Andreas Enge |
2013-01-13 | store: In `open-connection', process all the server's stderr....* guix/store.scm (open-connection): Loop until `process-stderr' returns #t.
| Ludovic Courtès |
2013-01-11 | Merge branch 'core-updates'...Conflicts:
guix/build/union.scm
| Ludovic Courtès |
2013-01-11 | download: Abbreviate URLs when displaying the progress report....* guix/build/download.scm (uri-abbreviation): New procedure.
(ftp-fetch, http-fetch): Use it instead of `uri->string' when calling
`progress-proc'. Reported by Andreas Enge.
| Ludovic Courtès |
2013-01-10 | build-system/gnu: Improve support for "lib" outputs; support "doc" outputs....* guix/build/gnu-build-system.scm (configure)[package-name]: New
procedure.
When LIBDIR is true and INCLUDEDIR is false, add
--includedir=LIBDIR/include.
Add support for --docdir when a "doc" output exists.
| Ludovic Courtès |
2013-01-09 | union: Detect collisions, and delete duplicate leaves....* guix/build/union.scm (delete-duplicate-leaves): New procedure.
(union-build)[leaf=?, resolve-collision]: New procedures.
Use `delete-duplicate-leaves' on the result of `tree-union'.
* tests/union.scm ("delete-duplicate-leaves, default",
"delete-duplicate-leaves, file names"): New tests.
| Ludovic Courtès |
2013-01-09 | derivations: Fix `derivation-prerequisites-to-build' when outputs are there....Before it would list inputs not built, even if the outputs of the given
derivation were already available.
* guix/derivations.scm (derivation-prerequisites-to-build): Add
`outputs' keyword parameter.
[built?, derivation-built?]: New procedures.
[loop]: Add `sub-drvs' parameter. Use `derivation-built?' to check if
the SUB-DRVS of DRV are built before checking its inputs.
| Ludovic Courtès |
2013-01-08 | gnu-maintenance: Add `latest-release' and related tools....* guix/gnu-maintenance.scm (ftp-server/directory, releases,
version-string>?, latest-release, gnu-package-name->name+version): New
procedures.
(%package-name-rx): New variable.
| Ludovic Courtès |
2013-01-07 | snix: Use (guix licenses) variables....* guix/snix.scm (snix-derivation->guix-package)[license-variable]: New
procedure.
Use it to determine the variable name for the license.
| Ludovic Courtès |
2013-01-07 | snix: Gracefully handle `null' in Nix build inputs....* guix/snix.scm (snix-derivation->guix-package)[convert-inputs]:
Gracefully handle `null' as an input.
| Ludovic Courtès |
2013-01-06 | download: Report the progress of HTTP downloads....* guix/build/download.scm (http-fetch): Rename `bv' to `bv-or-port'.
Use `http-get*' followed by `dump-port' when the former is available,
and pass a progress procedure to `dump-port'.
| Ludovic Courtès |
2013-01-06 | download: Report the progress of FTP downloads....* guix/build/download.scm (progress-proc): New procedure.
(ftp-fetch): Call `ftp-size' on URI. Use `progress-proc', and pass
the result to `dump-port', along with #:buffer-size.
| Ludovic Courtès |
2013-01-06 | ftp-client: Add `ftp-size'....* guix/ftp-client.scm (ftp-size): New procedure.
| Ludovic Courtès |
2013-01-06 | Merge branch 'master' into core-updates...Conflicts:
build-aux/download.scm
distro/packages/autotools.scm
distro/packages/base.scm
distro/packages/bootstrap.scm
distro/packages/lsh.scm
distro/packages/make-bootstrap.scm
distro/packages/ncurses.scm
distro/packages/perl.scm
tests/derivations.scm
tests/union.scm
| Ludovic Courtès |
2013-01-06 | Update license headers....Change all license headers, except guix/build/* and ld-wrapper.scm, with
this code:
(use-modules (guix build utils)
(srfi srfi-1))
(fluid-set! %default-port-encoding "UTF-8")
(substitute* (remove (lambda (f)
(or (string-contains f ".tar.")
(string-contains f ".git/")
(string-contains f ".so")
(string-suffix? ".o" f)
(string-suffix? ".a" f)
(string-suffix? ".go" f)
(string-suffix? ".pdf" f)
(string-suffix? ".png" f)
(string-suffix? ".info" f)
(equal? (basename f) "guix-daemon")
(equal? (basename f) "nix-setuid-helper")
(string-contains f "nix-upstream/")
(string-contains f "distro/packages/bootstrap/")))
(find-files "." "\\.[a-z]+$"))
(("^([[:graph:]]+) This file is part of Guix." _ comment-start)
(string-append comment-start " This file is part of GNU Guix."))
(("^([[:graph:]]+) Guix --- Nix package management.*" _ comment-start)
(string-append comment-start
" GNU Guix --- Functional package management for GNU\n"))
(("^([[:graph:]]+) Guix is " _ comment-start)
(string-append comment-start " GNU Guix is "))
(("^([[:graph:]]+) along with Guix." _ comment-start)
(string-append comment-start " along with GNU Guix."))
(("^([[:graph:]]+) Copyright \\(C\\)" _ comment-start)
(string-append comment-start " Copyright ©")))
Change headers using C-style comments manually.
| Ludovic Courtès |
2013-01-05 | derivations: Add `derivation-path->output-paths'....* guix/derivations.scm (derivation-path->output-paths): New procedure.
* tests/derivations.scm ("multiple-output derivation"): Test it.
| Ludovic Courtès |
2013-01-05 | Update license headers of builder-side code....Change license headers with this script:
(use-modules (guix build utils))
(fluid-set! %default-port-encoding "UTF-8")
(substitute* (cons "distro/packages/ld-wrapper.scm"
(find-files "guix/build" "\\.scm$"))
(("^([[:graph:]]+) This file is part of Guix." _ comment-start)
(string-append comment-start " This file is part of GNU Guix."))
(("^([[:graph:]]+) Guix --- Nix package management.*" _ comment-start)
(string-append comment-start
" GNU Guix --- Functional package management for GNU\n"))
(("^([[:graph:]]+) Guix is " _ comment-start)
(string-append comment-start " GNU Guix is "))
(("^([[:graph:]]+) along with Guix." _ comment-start)
(string-append comment-start " along with GNU Guix."))
(("^([[:graph:]]+) Copyright \\(C\\)" _ comment-start)
(string-append comment-start " Copyright ©")))
* distro/packages/ld-wrapper.scm, guix/build/download.scm,
guix/build/gnu-build-system.scm, guix/build/union.scm,
guix/build/utils.scm: Update license headers.
| Ludovic Courtès |
2013-01-05 | utils: Add `which'....* guix/build/utils.scm (which): New procedure.
* distro/packages/lsh.scm (lsh): Use `which' instead of `search-path'.
* distro/packages/perl.scm (perl): Likewise.
* distro/packages/attr.scm (attr): Likewise.
| Ludovic Courtès |
2013-01-05 | ui: Factorize bug-report information in `--help'....* guix/config.scm.in (%guix-home-page-url): New variable.
* guix/ui.scm (show-bug-report-information): New procedure.
* guix-build.in (show-help): Use it.
* guix-download.in (show-help): Likewise.
* guix-import.in (show-help): Likewise.
* guix-package.in (show-help): Likewise.
| Ludovic Courtès |
2013-01-01 | utils: Use binary I/O primitives for `remove-store-references'....* guix/build/utils.scm (fold-port-matches)[get-char]: New procedure.
(remove-store-references): Use `put-u8' and `put-bytevector'.
| Ludovic Courtès |
2013-01-01 | build-system/gnu: Add `static-package'....* distro/packages/make-bootstrap.scm (static-package): Move to...
* guix/build-system/gnu.scm (static-package): ... here. New procedure.
| Ludovic Courtès |
2013-01-01 | build-system/gnu: Add support for the "bin" output....* guix/build/gnu-build-system.scm (configure): Add support for "bin"
output.
| Ludovic Courtès |
2012-12-31 | utils: Restore the mtime/atime of patched files....* guix/build/utils.scm (set-file-time): New procedure.
(patch-shebang): New `keep-mtime?' parameter; call `set-file-time'
when it's true.
(patch-makefile-SHELL): Likewise.
| Ludovic Courtès |
2012-12-30 | build-system/gnu: enable test-target during the check phase...* guix/build-system/gnu.scm: add variable test-target
| Andreas Enge |
2012-12-21 | build-system/gnu: Patch shebangs in all the source; patch SHELL in makefiles....* guix/build/utils.scm (call-with-ascii-input-file): New procedure.
(patch-shebang): Use it.
(patch-makefile-SHELL): New procedure.
* guix/build/gnu-build-system.scm (patch-source-shebangs): Patch all the
files, not just executables; remove `po/Makefile.in.in' patching.
(patch-generated-files): Rename to...
(patch-generated-file-shebangs): ... this. Patch executables and
makefiles.
(%standard-phases): Adjust accordingly.
* distro/packages/autotools.scm (libtool): Remove call to `patch-shebang'.
* distro/packages/base.scm (gcc-4.7): Likewise.
(guile-final): Remove hack to skip `test-command-line-encoding2'.
* distro/packages/bash.scm (bash): Remove `pre-configure-phase'.
* distro/packages/readline.scm (readline): Likewise.
* distro/packages/ncurses.scm (ncurses): Remove `pre-install-phase'.
| Ludovic Courtès |
2012-12-20 | build-system/gnu: Patch shebangs after `configure'....* guix/build/gnu-build-system.scm (patch-generated-files): New
procedure.
(%standard-phases): Add it after `configure'.
| Ludovic Courtès |
2012-12-20 | build-system/gnu: Report the execution time of each phase....* guix/build/gnu-build-system.scm (gnu-build): Report the success or
failure of each phase and its execution time.
| Ludovic Courtès |
2012-12-20 | utils: Add a `progress' parameter to `dump-port'....* guix/build/utils.scm (dump-port): Add a `progress' keyword parameter.
Call it after each transfer.
| Ludovic Courtès |
2012-12-19 | build-system/gnu: Change the order of `patch-source-shebangs' and `patch'....* guix/build/gnu-build-system.scm (patch-source-shebangs): Add a newline
after the "SHELL =" line in po/Makefile.in.in.
(%standard-phases): Move `patch-source-shebangs' after `patch'.
| Ludovic Courtès |
2012-12-17 | download: Remove unreachable SourceForge mirror....* guix/download.scm (%mirrors)[sourceforge]: Remove kent.dl.*, which is
unreachable.
| Ludovic Courtès |
2012-12-17 | download: Correctly detect "No route to host" conditions....* guix/build/download.scm (open-connection-for-uri): Delete addrinfos
with the same address. Always open SOCK_STREAM/IPPROTO_IP sockets.
Fix the error handler's condition to determine what to do.
Reported by Nikita Karetnikov <nikita.karetnikov@gmail.com> at
<http://lists.gnu.org/archive/html/bug-guix/2012-12/msg00150.html>.
| Ludovic Courtès |
2012-12-15 | build-system/gnu: Patch shebangs in executable source files....This allows many packages to build in a chroot that lacks /bin and
thus /bin/sh.
* guix/build/gnu-build-system.scm (patch-source-shebangs): New
procedure.
(%standard-phases): Add it.
* guix/build/utils.scm (executable-file?): New procedure.
* distro/packages/perl.scm (perl): Don't use /bin/sh to run `Configure'.
| Ludovic Courtès |
2012-12-15 | build-system/gnu: Make the error port line-buffered....* guix/build/gnu-build-system.scm (gnu-build): Make the error port
line-buffered.
| Ludovic Courtès |
2012-12-15 | utils: Make the buffer size of `dump-port' a parameter....* guix/build/utils.scm (dump-port): Make `buffer-size' a keyword
parameter.
| Ludovic Courtès |
2012-12-15 | Merge branch 'master' into core-updates...Conflicts:
distro/packages/multiprecision.scm
| Ludovic Courtès |
2012-12-14 | download: Work around (web client) bug <http://bugs.gnu.org/13095>....* guix/build/download.scm: Annihilate `shutdown' in (web client).
| Ludovic Courtès |
2012-12-13 | build: Fix default value of `%state-directory'....* guix/config.scm.in (%state-directory): Append `/nix'.
Reported by Andreas Enge <andreas@enge.fr>.
| Ludovic Courtès |
2012-12-13 | build-system/gnu: Avoid using /bin/sh....* guix/build/gnu-build-system.scm (configure): Add `inputs' keyword
parameter. Take Bash from there, falling back to /bin/sh. Set
`CONFIG_SHELL' and `SHELL' to that Bash. Run "bash ./configure"
instead of just "./configure".
* distro/packages/bootstrap.scm (%bootstrap-inputs): Add "bash".
* distro/packages/base.scm (gcc-boot0-wrapped): Use "bash" from
%BOOT1-INPUTS instead of /bin/sh.
| Ludovic Courtès |