summaryrefslogtreecommitdiff
path: root/guix/build
Commit message (Collapse)AuthorAge
* syscalls: C struct writer correctly handles pointer fields.Ludovic Courtès2016-11-16
| | | | * guix/build/syscalls.scm (write-type): Add case for '*.
* Merge branch 'core-updates'Ludovic Courtès2016-11-13
|\
| * Merge branch 'master' into core-updatesMark H Weaver2016-10-19
| |\
| * \ Merge branch 'master' into core-updatesMark H Weaver2016-10-12
| |\ \
| * \ \ Merge branch 'master' into core-updatesLeo Famulari2016-10-05
| |\ \ \
| * \ \ \ Merge branch 'master' into core-updatesLeo Famulari2016-10-03
| |\ \ \ \
| * | | | | build-system/gnu: Add 'patch-dot-desktop-files' phase.John Darrington2016-10-01
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | * guix/build/gnu-build-system.scm (patch-dot-desktop-files): New procedure. (%standard-phases): Add it. Co-authored-by: Ludovic Courtès <ludo@gnu.org>
| * | | | | Merge branch 'master' into core-updatesLudovic Courtès2016-09-30
| |\ \ \ \ \
| * | | | | | build-system/gnu: Do not patch symlinks in the source.Ludovic Courtès2016-09-12
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | This is a followup to 13a9feb5b64fd819eaed38a17da0284bbe2b8d9. * guix/build/gnu-build-system.scm (patch-source-shebangs): Remove call to 'remove'. Pass a second argument to 'find-files' to filter out symlinks; pass #:stat lstat. (patch-generated-file-shebangs): Likewise, and also filter out non-executable files.
| * | | | | | utils: 'wrap-program' produces only one wrapper file.Ludovic Courtès2016-09-07
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | * guix/build/utils.scm (wrap-program)[wrapper-file-name] [next-wrapper-number, wrapper-target]: Remove. [wrapped-file, already-wrapped?]: New variables. [last-line]: New procedure. Use it to append to PROG when a wrapper already exists. * tests/build-utils.scm ("wrap-program, one input, multiple calls"): Adjust the list of files to delete.
| * | | | | | Merge branch 'master' into core-updatesLudovic Courtès2016-09-02
| |\ \ \ \ \ \
| * | | | | | | build-system/gnu: 'strip' phase lists files in sorted order.Ludovic Courtès2016-09-01
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | This fixes a bug whereby the choice between stripping 'libfoo.so.0.1.2' and stripping 'libfoo.so' (the symlink) would be non-deterministic. * guix/build/gnu-build-system.scm (strip)[strip-dir]: Use 'find-files' instead of 'file-system-fold' so that files are picked in deterministic order.
| * | | | | | | Merge branch 'master' into core-updatesLeo Famulari2016-08-29
| |\ \ \ \ \ \ \
| * | | | | | | | utils: Fix 'modify-phases' docstring.Taylan Ulrich Bayırlı/Kammer2016-08-10
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | * guix/build/utils.scm (modify-phases): Fix the documentation string.
* | | | | | | | | download: Verify TLS certificates unless asked not to.Ludovic Courtès2016-11-07
| |_|_|_|_|_|_|/ |/| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | Fixes <http://bugs.gnu.org/24466>. Reported by Leo Famulari <leo@famulari.name>. * guix/build/download.scm (%x509-certificate-directory): New variable. (make-credendials-with-ca-trust-files, peer-certificate) (assert-valid-server-certificate, print-tls-certificate-error): New procedures. Add 'print-tls-certificate-error' as an exception printer for 'tls-certificate-error'. (tls-wrap): Add #:verify-certificate? parameter and honor it. (open-connection-for-uri): Likewise. (http-fetch): Likewise. (url-fetch): Likewise. * guix/download.scm (url-fetch)[builder]: Pass #:verify-certificate? #f. * guix/scripts/lint.scm (probe-uri): Add case for 'tls-certificate-error'. (validate-uri): Likewise. * doc/guix.texi (Invoking guix download): Mention 'SSL_CERT_DIR'.
* | | | | | | | grafts: Remove unnecessary 'umask' call.Ludovic Courtès2016-10-17
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | This is a followup to d72267863382041b84a9712eea354882be72ef55. * guix/build/graft.scm (rewrite-directory): Remove 'umask' call.
* | | | | | | | Revert "guix: python-build-system: Fix an outdated comment."Mark H Weaver2016-10-13
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | This reverts commit 635a7af45d6e2105ad65d1a9531126cc232a2a50.
* | | | | | | | guix: python-build-system: Fix an outdated comment.Hartmut Goebel2016-10-13
| |_|_|_|_|_|/ |/| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | The python-build-system uses phases the build and install, but not configure. So the old comment was plain wrong since Sept. 2013, when the build phase has been added.
* | | | | | | grafts: Always make directories #o755.Ludovic Courtès2016-10-10
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | Fixes <http://bugs.gnu.org/22954>. Reported by Albin <albin@fripost.org> and Jeffrey Serio <serio.jeffrey@gmail.com>. * guix/build/graft.scm (mkdir-p*): New procedure. (rewrite-directory): Use it instead of 'mkdir-p'.
* | | | | | | bournish: Add 'reboot' command.Ludovic Courtès2016-10-10
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | Suggested by Ricardo Wurmus. * guix/build/bournish.scm (reboot-command): New procedure. (%commands): Add it.
* | | | | | | build-system: Add asdf-build-system.Andy Patterson2016-10-08
| |_|_|_|_|/ |/| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | * guix/build-system/asdf.scm: New file. * guix/build/asdf-build-system.scm: New file. * guix/build/lisp-utils.scm: New file. * Makefile.am (MODULES): Add them. * doc/guix.texi (Build Systems): Document 'asdf-build-system'. Signed-off-by: 宋文武 <iyzsong@gmail.com>
* | | | | | grafts: Allow the replacement to have a different name.Ludovic Courtès2016-10-03
| |_|_|_|/ |/| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | * 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.
* | | | | build: Improve Guile 2.2 compatibility.Taylan Ulrich Bayırlı/Kammer2016-09-29
| |_|_|/ |/| | | | | | | | | | | | | | | | | | | * build-aux/compile-all.scm (compile-file*): Ensure loading of compilation related modules before going parallel. * guix/build/pull.scm (build-guix): Ditto.
* | | | syscalls: Use #:return-errno? when it is available.Ludovic Courtès2016-09-06
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | * 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'.
* | | | file-systems: Always use (guix build syscalls).Ludovic Courtès2016-09-05
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | * 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'.
* | | | guix: ant-build-system: Fix pattern for collecting jar files.Hartmut Goebel2016-09-03
| |_|/ |/| | | | | | | | | | | | | | | | | | | | The former pattern included the "jar" binary. * guix/build/ant-build-system.scm (generate-classpath): Change pattern. Suggested by: Ricardo Wurmus <rekado@elephly.net>
* | | build: Add wrap-qt-program.David Craven2016-08-30
| |/ |/| | | | | | | * guix/build/qt-utils.scm (wrap-qt-program): New file. * Makefile.am (MODULES): Add it.
* | guix: ruby-build-system: Add replace-git-ls-files.Ben Woodcroft2016-08-30
| | | | | | | | | | * guix/build/ruby-build-system.scm (replace-git-ls-files): New variable. (%standard-phases): Add it.
* | guix: ruby-build-system: Build compiled gems reproducibly.Ben Woodcroft2016-08-30
|/ | | | | | * guix/build/ruby-build-system.scm (log-file-deletion): New procedure. (install): Remove files containing non-reproducible elements. Print when each file is deleted.
* grafts: Make grafting faster.Mark H Weaver2016-08-09
| | | | | | | | | | | * 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.
* download: Pass the raw file name to content-addressed mirrors.Ludovic Courtès2016-07-31
| | | | | * guix/build/download.scm (url-fetch)[content-addressed-uris]: Call 'strip-store-file-name' on FILE before passing it to 'make-url'.
* Merge branch 'master' into core-updatesLeo Famulari2016-07-22
|\ | | | | | | | | | | | | | | | | 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.
| * pull: Install (guix config) module to override the user's one.Ludovic Courtès2016-07-20
| | | | | | | | | | | | | | | | | | | | | | | | | | * 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).
| * download: Prepare to support the 'guix publish' /file URLs.Ludovic Courtès2016-07-20
| | | | | | | | | | | | | | * guix/download.scm (%content-addressed-mirrors): Add 'file' parameter to the lambda. * guix/build/download.scm (url-fetch)[content-addressed-uris]: Adjust accordingly.
* | Merge branch 'master' into core-updatesLudovic Courtès2016-07-20
|\|
| * guix: Support authentication when fetching from SVN.Ricardo Wurmus2016-07-03
| | | | | | | | | | | | | | | | * 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.
| * download: Use basic authentication when userinfo is present in URI.David Thompson2016-06-29
| | | | | | | | | | | | | | * 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.
| * bournish: Add 'wc' command.Efraim Flashner2016-06-23
| | | | | | | | | | | | | | | | | | * 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>
| * build: emacs: Search for elisp in "share/emacs/site-lisp".Alex Kost2016-06-22
| | | | | | | | | | | | * 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.
* | Merge branch 'master' into core-updatesLudovic Courtès2016-06-27
| |
* | Merge branch 'master' into core-updatesLudovic Courtès2016-06-17
|\|
| * guix: Add downloader for Mercurial repositories.Ricardo Wurmus2016-06-15
| | | | | | | | | | | | * guix/build/hg.scm: New file. * guix/hg-download.scm: New file. * Makefile.am (MODULES): Add them.
| * syscalls: Use 'syscall->procedure' everywhere.Ludovic Courtès2016-06-13
| | | | | | | | | | * guix/build/syscalls.scm (mkdtemp!, setns, %ioctl, network-interfaces): (free-ifaddrs): Use 'syscall->procedure'.
| * utils: 'with-atomic-file-output' calls 'fdatasync'.Ludovic Courtès2016-06-13
| | | | | | | | | | | | | | | | | | 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'.
* | Merge branch 'master' into core-updatesLudovic Courtès2016-06-07
|\|
| * bournish: Allow compilation of multiple expressions.Ludovic Courtès2016-06-06
| | | | | | | | | | | | | | * 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.
| * bournish: Handle EOF in the reader.Ludovic Courtès2016-06-06
| | | | | | | | * guix/build/bournish.scm (read-bournish): Add case for EOF.
| * build: emacs: Handle sources that are a single elisp file.David Thompson2016-05-30
| | | | | | | | | | | | * guix/build/emacs-build-system.scm (gnu:unpack) (store-file->elisp-source-file, unpack): New procedures. (%standard-phases): Use the new unpack procedure.
| * download: Default to a 10s connection establishment timeout.Ludovic Courtès2016-05-27
| | | | | | | | | | | | | | | | * 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'.
| * download: Use URI objects for content-addressed mirrors.Ludovic Courtès2016-05-27
| | | | | | | | | | | | | | | | 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'.