Age | Commit message (Expand) | Author |
2016-10-03 | grafts: Allow the replacement to have a different name....* guix/build/graft.scm (replace-store-references): REPLACEMENT is now
the full string, not just the hash.
(rewrite-directory)[hash-mapping](valid-suffix?): Remove.
(hash+suffix): Rename to...
(hash+rest): ... this. Change to return the whole string as the second
element of the list. Adjust 'match-lambda' expression accordingly;
check whether the string length of the origin and replacement match.
* tests/grafts.scm ("graft-derivation, grafted item uses a different
name"): New test.
* doc/guix.texi (Security Updates): Update sentence on the name/version
restriction.
| Ludovic Courtès |
2016-09-29 | build: Improve Guile 2.2 compatibility....* build-aux/compile-all.scm (compile-file*): Ensure loading of
compilation related modules before going parallel.
* guix/build/pull.scm (build-guix): Ditto.
| Taylan Ulrich Bayırlı/Kammer |
2016-09-06 | syscalls: Use #:return-errno? when it is available....* guix/build/syscalls.scm (errno): Do not export.
(syscall->procedure): Change to return a procedure that returns both the
value and errno. Use #:return-errno? where available.
(mount, umount, swapon, swapoff, mkdtemp!, fdatasync, statfs)
(clone, setns, pivot-root, fcntl-flock, network-interface-names)
(network-interface-flags, set-network-interface-flags)
(set-network-interface-address, network-interface-address):
(network-interfaces, tcgetattr, tcsetattr, terminal-window-size): Adjust
accordingly using 'let-values'.
| Ludovic Courtès |
2016-09-05 | file-systems: Always use (guix build syscalls)....* gnu/build/file-systems.scm: Use (guix build syscalls)
unconditionally. Override the 'mount' and 'umount' bindings
when (guile) provides them.
(MS_RDONLY, MS_NOSUID, MS_NODEV, MS_NOEXEC, MS_REMOUNT)
(MS_BIND, MS_MOVE): Remove.
* guix/build/syscalls.scm (%libc-errno-pointer): Add
'false-if-exception' around 'dynamic-func'.
| Ludovic Courtès |
2016-09-03 | guix: ant-build-system: Fix pattern for collecting jar files....The former pattern included the "jar" binary.
* guix/build/ant-build-system.scm (generate-classpath): Change pattern.
Suggested by: Ricardo Wurmus <rekado@elephly.net>
| Hartmut Goebel |
2016-08-30 | build: Add wrap-qt-program....* guix/build/qt-utils.scm (wrap-qt-program): New file.
* Makefile.am (MODULES): Add it.
| David Craven |
2016-08-30 | guix: ruby-build-system: Add replace-git-ls-files....* guix/build/ruby-build-system.scm (replace-git-ls-files): New variable.
(%standard-phases): Add it.
| Ben Woodcroft |
2016-08-30 | guix: ruby-build-system: Build compiled gems reproducibly....* guix/build/ruby-build-system.scm (log-file-deletion): New procedure.
(install): Remove files containing non-reproducible elements. Print when each
file is deleted.
| Ben Woodcroft |
2016-08-09 | grafts: Make grafting faster....* guix/build/graft.scm (replace-store-references): Reimplement for
faster grafting. Use binary I/O instead of textual I/O. Replace
'mapping' argument (an alist) with 'replacement-table' (a vhash).
(rewrite-directory): Adapt to mapping argument change in
'replace-store-references'. Remove 'with-fluids' that previously set
'%default-port-encoding' to #f, since we now use binary I/O.
(define-inline, hash-length): New macros.
(nix-base32-char?): New variable.
| Mark H Weaver |
2016-07-31 | download: Pass the raw file name to content-addressed mirrors....* guix/build/download.scm (url-fetch)[content-addressed-uris]: Call
'strip-store-file-name' on FILE before passing it to 'make-url'.
| Ludovic Courtès |
2016-07-22 | Merge branch 'master' into core-updates...Resolved conflicts:
* gnu/packages/scheme.scm: Conflict in import of (guix licenses). On master,
"#:hide (openssl)" was used. On core-updates, "#:select (some licenses)" was
used. The latter won the conflict.
* gnu/packages/version-control.scm (git)[arguments]: Whitespace conflict
in 'install-shell-completion.
| Leo Famulari |
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 | 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 | Merge branch 'master' into core-updates | Ludovic Courtès |
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-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-27 | Merge branch 'master' into core-updates | 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 | 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-17 | Merge branch 'master' into core-updates | Ludovic Courtès |
2016-06-15 | guix: Add downloader for Mercurial repositories....* guix/build/hg.scm: New file.
* guix/hg-download.scm: New file.
* Makefile.am (MODULES): Add them.
| Ricardo Wurmus |
2016-06-13 | syscalls: Use 'syscall->procedure' everywhere....* guix/build/syscalls.scm (mkdtemp!, setns, %ioctl, network-interfaces):
(free-ifaddrs): Use 'syscall->procedure'.
| Ludovic Courtès |
2016-06-13 | utils: 'with-atomic-file-output' calls 'fdatasync'....Suggested by Danny Milosavljevic <dannym@scratchpost.org>
at <https://lists.gnu.org/archive/html/guix-devel/2016-06/msg00456.html>.
* guix/build/syscalls.scm (fdatasync): New procedure.
* guix/utils.scm (with-atomic-file-output): Use it. Use 'close-port'
instead of 'close'.
| Ludovic Courtès |
2016-06-07 | Merge branch 'master' into core-updates | Ludovic Courtès |
2016-06-06 | bournish: Allow compilation of multiple expressions....* guix/build/bournish.scm (%bournish-language): Add a joiner to SCHEME.
Compile only to Scheme.
* tests/bournish.scm: New file.
* Makefile.am (SCM_TESTS): Add it.
| Ludovic Courtès |
2016-06-06 | bournish: Handle EOF in the reader....* guix/build/bournish.scm (read-bournish): Add case for EOF.
| Ludovic Courtès |
2016-05-30 | build: emacs: Handle sources that are a single elisp file....* guix/build/emacs-build-system.scm (gnu:unpack)
(store-file->elisp-source-file, unpack): New procedures.
(%standard-phases): Use the new unpack procedure.
| David Thompson |
2016-05-27 | download: Default to a 10s connection establishment timeout....* guix/build/download.scm (ftp-fetch): Add #:timeout and pass it to
'ftp-open'.
(http-fetch): Add #:timeout and pass it to 'open-connection-for-uri' and
in recursive calls.
(url-fetch): Add #:timeout and pass it to 'http-fetch' and 'ftp-fetch'.
| Ludovic Courtès |
2016-05-27 | download: Use URI objects for content-addressed mirrors....This fixes a bug whereby 'http-fetch' would be passed a string instead
of a URI object.
* guix/build/download.scm (url-fetch): Rename 'content-addressed-urls'
to 'content-addressed-uris', and call 'string->uri'.
| Ludovic Courtès |
2016-05-25 | guix: ruby-build-system: Extract gemspec during 'extract-gemspec'....* guix/build/ruby-build-system.scm (build): Move extraction from here ...
(extract-gemspec): ... to here. New variable.
(first-gemspec): New variable.
(%standard-phases): Add 'extract-gemspec' phase.
| Ben Woodcroft |
2016-05-24 | graft: Fail when one of the threads raises an exception....Fixes <http://bugs.gnu.org/23581>.
* guix/build/graft.scm (exit-on-exception): New procedure.
(rewrite-directory): Use it to wrap REWRITE-LEAF.
| Ludovic Courtès |
2016-05-23 | union: Compare inode numbers in 'file=?'....* guix/build/union.scm (file=?): Compare the inode of ST1 and ST2.
| Ludovic Courtès |
2016-05-23 | Merge branch 'master' into core-updates | Ludovic Courtès |
2016-05-21 | grafts: Rename files whose name matches a graft....Fixes <http://bugs.gnu.org/23132>.
Reported by Mark H Weaver <mhw@netris.org>.
* guix/build/graft.scm (rename-matching-files): New procedure.
(rewrite-directory): Use it.
* tests/grafts.scm ("graft-derivation, renaming"): New test.
| Ludovic Courtès |
2016-05-21 | grafts: Preserve empty directories when grafting....* guix/build/graft.scm (rewrite-directory)[rewrite-leaf]: Add case for
'directory.
Pass #:directories? #t to 'find-files'.
| Ludovic Courtès |
2016-05-20 | ant-build-system: Add unpack phase....* guix/build/ant-build-system.scm (unpack): New procedure.
(%standard-phases): Use it.
| Ricardo Wurmus |
2016-05-16 | build: Accept dates with space-padded hour field....* guix/build/download.scm: Replace "parse-rfc-822-date" from the (web
http) module.
| Ricardo Wurmus |
2016-05-14 | download: Support content-addressed mirrors....* guix/download.scm (%content-addressed-mirrors)
(%content-addressed-mirror-file): New variables.
* guix/download.scm (url-fetch)[builder]: Define
'value-from-environment. Pass #:hashes and
#:content-addressed-mirrors to 'url-fetch'.
Define "guix download hashes" environment variable.
* guix/build/download.scm (url-fetch): Add #:content-addressed-mirrors
and #:hashes.
[content-addressed-urls]: New variable.
Use it.
| Ludovic Courtès |
2016-05-13 | Merge branch 'master' into core-updates | Leo Famulari |
2016-05-06 | syscalls: Use 'define-c-struct' for 'fcntl-flock'....* guix/build/syscalls.scm (%struct-flock): Use 'define-c-struct'.
(fcntl-flock): Use 'write-flock!' and 'make-bytevector' instead of
'make-c-struct'.
| Ludovic Courtès |
2016-05-06 | utils: Move 'fcntl-flock' to (guix build syscalls)....* guix/utils.scm (%struct-flock, F_SETLKW, F_SETLK, F_xxLCK)
(fcntl-flock): Move to...
* guix/build/syscalls.scm: ... here. New variables.
* guix/nar.scm: Adjust imports accordingly.
* tests/utils.scm ("fcntl-flock wait", "fcntl-flock non-blocking"): Move
to...
* tests/syscalls.scm: ... here. New tests.
(temp-file): New variable.
| Ludovic Courtès |
2016-05-03 | syscalls: Wrap TCSA* constants in 'tcsetattr-action' macro....* guix/build/syscalls.scm (tcsetattr-action): New macro.
(TCSANOW, TCSADRAIN, TCSAFLUSH): Remove.
(tcsetattr): Adjust docstring accordingly.
* tests/syscalls.scm ("tcsetattr"): Adjust accordingly.
| Ludovic Courtès |
2016-05-02 | Merge branch 'master' into core-updates | Mathieu Lirzin |
2016-05-02 | syscalls: Add 'tcgetattr' and 'tcsetattr' bindings....* guix/build/syscalls.scm (bits->symbols-body, define-bits)
(local-flags): New macros.
(TCSANOW, TCSADRAIN, TCSAFLUSH): New variables.
(<termios>): New record type.
(%termios): New C structure.
(tcgetattr, tcsetattr): New procedures.
* tests/syscalls.scm ("tcgetattr ENOTTY", "tcgetattr")
("tcsetattr"): New tests.
| Ludovic Courtès |
2016-05-02 | syscalls: Implement arrays in 'define-c-struct' and use it....* guix/build/syscalls.scm (sizeof*, alignof*, write-type, read-type):
Add support for (array ...) forms.
* guix/build/syscalls.scm (<file-system>)[spare0, spare1]: Remove.
[spare]: New field.
* guix/build/syscalls.scm (%statfs)[identifier]: Change to (array int 2).
[spare0, spare1]: Remove.
[spare]: New field.
| Ludovic Courtès |
2016-04-30 | syscalls: 'statfs' explicitly binds 'statfs64'....* guix/build/syscalls.scm (statfs): Explicitly bind "statfs64".
| Ludovic Courtès |
2016-04-30 | syscalls: statfs: Add missing 'mount-flags' field of 'struct statfs'....* guix/build/syscalls.scm (<file-system>)[mount-flags]: New field.
[spare2]: Remove.
(%statfs): Likewise.
| Ludovic Courtès |
2016-04-25 | syscalls: 'terminal-columns' catches EINVAL on the TIOCGWINSZ ioctl....Reported by Mark H Weaver <mhw@netris.org>.
* guix/build/syscalls.scm (terminal-columns): Tolerate EINVAL.
* tests/syscalls.scm ("terminal-window-size ENOTTY"): Likewise.
| Ludovic Courtès |
2016-04-25 | syscalls: Add 'statfs'....* guix/build/syscalls.scm (<file-system>): New record type.
(fsword): New macro.
(%statfs): New C struct.
(statfs): New procedure.
| Ludovic Courtès |
2016-04-25 | syscalls: 'define-c-struct' computes the struct size....* guix/build/syscalls.scm (struct-alignment, struct-size): New macros.
(define-c-struct): Add 'size' parameter and honor it.
(sockaddr-in, sockaddr-in6, ifaddrs, winsize): Adjust accordingly.
(%struct-ifaddrs-type, %sizeof-ifaddrs, winsize-struct): Remove.
(terminal-window-size): Use 'make-bytevector' instead of 'make-c-struct'.
| Ludovic Courtès |