Age | Commit message (Expand) | Author |
2017-03-16 | pack: Allow for "-S /opt/foo="....Reported by Andy Wingo.
* guix/scripts/pack.scm (%options): Use 'string-split' instead of
'string-tokenize'.
| Ludovic Courtès |
2017-03-16 | pack: Honor symlinks in the Docker back-end....* guix/docker.scm (symlink-source, topmost-component): New procedures.
(build-docker-image): Add #:symlinks parameter and honor it. Remove
hard-coded /bin symlink.
* guix/scripts/pack.scm (docker-image): Pass #:symlinks to
'build-docker-image'.
| Ludovic Courtès |
2017-03-16 | docker: Build images in a reproducible fashion....* guix/docker.scm (%tar-determinism-options): New variable.
(build-docker-image): Use it on the two 'tar' invocations.
| Ludovic Courtès |
2017-03-16 | pack: Use a fixed timestamp in Docker images....* guix/docker.scm (build-docker-image): Add #:creation-time parameter.
Use SRFI-19 'date->string' instead of 'strftime' et al.
* guix/scripts/pack.scm (docker-image)[build]: Pass #:creation-time to
'build-docker-image'.
| Ludovic Courtès |
2017-03-16 | pack: Add '--format' option and Docker output support....* guix/docker.scm: Remove dependency on (guix store) and (guix utils).
Use (guix build store-copy). Load (json) lazily.
(build-docker-image): Remove #:system. Add #:closure, #:compressor, and
'image' parameters. Use 'uname' to determine the architecture. Remove
use of 'call-with-temporary-directory'. Use 'read-reference-graph' to
compute ITEMS. Honor #:compressor.
* guix/scripts/pack.scm (docker-image): New procedure.
(%default-options): Add 'format'.
(%formats): New variable.
(%options, show-help): Add '--format'.
(guix-pack): Honor '--format'.
* guix/scripts/archive.scm: Remove '--format' option. This reverts
commits 1545a012cb7cd78e25ed99ecee26df457be590e9,
01445711db6771cea6122859c3f717f130359f55, and
03476a23ff2d4175b7d3c808726178f764359bec.
* doc/guix.texi (Invoking guix pack): Document '--format'.
(Invoking guix archive): Remove documentation of '--format'.
| Ludovic Courtès |
2017-03-16 | pack: Honor command-line options related to the store....* guix/scripts/pack.scm (guix-pack): Call
'set-build-options-from-command-line'.
| Ludovic Courtès |
2017-03-16 | memoization: Micro-optimize code produced by 'define-cache-procedure'....* guix/memoization.scm (%nothing): Remove.
(define-cache-procedure): Make '%nothing' a local variable, with a
literal list.
| Ludovic Courtès |
2017-03-16 | gexp: Add '=>' syntax to import computed modules....* guix/gexp.scm (imported-files)[file-pair]: Add case for pairs where
the cdr is not a string.
(imported-modules): Support '=>' syntax in MODULES.
* tests/gexp.scm ("imported-files with file-like objects")
("gexp->derivation & with-imported-module & computed module"): New tests.
* doc/guix.texi (G-Expressions): Document '=>' syntax for
'with-imported-modules'.
| Ludovic Courtès |
2017-03-16 | utils: Move base16 procedures to (guix base16)....* guix/utils.scm (bytevector->base16-string, base16-string->bytevector):
Move to...
* guix/base16.scm: ... here. New file.
* tests/utils.scm ("bytevector->base16-string->bytevector"): Move to...
* tests/base16.scm: ... here. New file.
* Makefile.am (MODULES): Add guix/base16.scm.
(SCM_TESTS): Add tests/base16.scm.
* build-aux/download.scm, guix/derivations.scm,
guix/docker.scm, guix/import/snix.scm, guix/pk-crypto.scm,
guix/scripts/authenticate.scm, guix/scripts/download.scm,
guix/scripts/hash.scm, guix/store.scm, tests/hash.scm,
tests/pk-crypto.scm: Adjust imports accordingly.
| Ludovic Courtès |
2017-03-15 | syscalls: Adjust 'clone' to Guile 2.2....Before that, something like:
(call-with-container
(lambda ()
(match (primitive-fork)
…)))
would hang in 'primitive-fork' as the child process (the one started in
the container) would try to pthread_join the finalization thread in
'stop_finalization_thread' in libguile, not knowing that this thread is
nonexistent.
* guix/build/syscalls.scm (%set-automatic-finalization-enabled?!): New
procedure.
(without-automatic-finalization): New macro.
(clone): Wrap PROC call in 'without-automatic-finalization'.
| Ludovic Courtès |
2017-03-15 | zlib: Don't rely on EBADF being ignored by 'fport_close'....In 2.2, 'fport_close' no longer swallows EBADF and instead raises a
'system-error' for this. This commit adjusts for 2.2.
* guix/zlib.scm (close-procedure): Remove.
(make-gzip-input-port): Use 'port->fdes' instead of 'fileno'.
Use 'gzclose' instead of 'close-procedure'.
(make-gzip-output-port): Likewise.
* tests/zlib.scm ("compression/decompression pipe"): Don't check whether
PARENT is closed using 'port-closed?'. Instead, use 'seek' on the
underlying FD and check for EBADF.
| Ludovic Courtès |
2017-03-14 | pack: Add unit test....* guix/scripts/pack.scm (self-contained-tarball): Add #:tar option.
[build](tar-supports-sort?): New variable. Use it.
* tests/pack.scm: New file.
* Makefile.am (SCM_TESTS): Add it.
| Ludovic Courtès |
2017-03-14 | pack: Use maximum compression; use '-n' for gzip....* guix/scripts/pack.scm (<compressor>)[tar-option]: Remove.
[command]: New field.
(%compressors): Provide complete commands. Use '-9' or equivalent for
each compressor; use '-n' for gzip.
(self-contained-tarball)[build]: Adjust accordingly.
| Ludovic Courtès |
2017-03-14 | pack: Add '--symlink'....* guix/scripts/pack.scm (self-contained-tarball): Add #:symlinks
parameter.
[build](symlink->directives): New procedure
(directives): New variable.
Add call to 'evaluate-populate-directive'. Pass the directories among
DIRECTIVES to 'tar'.
(%default-options): Add 'symlinks'.
(%options, show-help): Add '--symlink'.
(guix-pack): Honor it.
* gnu/build/install.scm (evaluate-populate-directive): Export.
* doc/guix.texi (Invoking guix pack): Document it.
| Ludovic Courtès |
2017-03-14 | pack: Add '--localstatedir' option....* guix/scripts/pack.scm (self-contained-tarball): Add #:localstatedir?
parameter and honor it.
(%options, show-help): Add '--localstatedir'.
(guix-pack): Honor it.
* gnu/build/install.scm (populate-single-profile-directory): Add
#:register? parameter and honor it.
* doc/guix.texi (Binary Installation): Use '--localstatedir' in
example.
(Invoking guix pack): Document it.
| Ludovic Courtès |
2017-03-14 | upstream: Avoid '_' as a pattern variable in 'match'....* guix/upstream.scm (lookup-updater): Don't use '_' as a pattern
variable.
| Ludovic Courtès |
2017-03-13 | download: Export '%x509-certificate-directory'....* guix/build/download.scm (%x509-certificate-directory): Export, as
expected by (guix scripts pull) since commit
7e81d699de7a2c924a048175516fe1ac3820d8e6.
| Ludovic Courtès |
2017-03-12 | pull: Default to HTTPS....* guix/scripts/pull.scm (%snapshot-url): Use HTTPS.
(guix-pull): Authenticate against LE-CERTS when URL is from Savannah.
| Marius Bakke |
2017-03-12 | syscalls: Adjust 'define-bits' to macro literal semantics of 2.2....* guix/build/syscalls.scm (define-bits): Do not define NAMES... as
top-level variables since that prevents literal matches in 2.2.
Instead, determine constant values at expansion time.
| Ludovic Courtès |
2017-03-12 | Add 'guix pack'....* gnu/system/install.scm (self-contained-tarball): Move to...
* guix/scripts/pack.scm: ... here. New file.
* doc/guix.texi (Binary Installation): Mention 'guix pack'.
(Invoking guix pack): New node.
* build-aux/make-binary-tarball.scm: Remove.
* Makefile.am (MODULES): Add guix/scripts/pack.scm.
(EXTRA_DIST): Remove build-aux/make-binary-tarball.scm.
(guix-binary.%.tar.xz): Rewrite using 'guix pack'.
* build-aux/hydra/gnu-system.scm (tarball-jobs): Adjust accordingly.
| Ludovic Courtès |
2017-03-09 | gexp: Expose functions to allow creating derivation builders....* guix/gexp.scm: Add load-path-expression and gexp-modules to the public
interface of the module. See <http://bugs.gnu.org/26023>.
| Roel Janssen |
2017-03-09 | utils: Use an idiom compatible with both 2.0 and 2.2....Fixes a regression introduced in 7447aa36e16fb77f75df4d3369db9c942615632e.
Reported by Ricardo Wurmus.
* guix/utils.scm: Revert 7447aa36e16fb77f75df4d3369db9c942615632e. Use
#:prefix for (ice-9 iconv) to support both 2.0 and 2.2.
| Ludovic Courtès |
2017-03-08 | utils: Make sure to use the right 'bytevector->string'....In Guile 2.2, (rnrs io ports) exports 'bytevector->string', which
conflicts with that of (ice-9 iconv).
* guix/utils.scm: Hide 'bytevector->string' from (rnrs io ports).
| Ludovic Courtès |
2017-03-08 | ui: Don't use '%default-port-encoding' to set the encoding of string ports....* guix/ui.scm (right-arrow): Call 'set-port-encoding!' to set PORT's
encoding; remove use of 'with-fluids'. This is for compatibility with
Guile 2.2 where the encoding of string ports is not influenced by
%DEFAULT-PORT-ENCODING.
* tests/ui.scm ("show-manifest-transaction"): Likewise.
| Ludovic Courtès |
2017-03-08 | ui: Avoid '_' as a pattern variable in 'match'....* guix/ui.scm (fill-paragraph): Don't use '_' as a pattern variable
since that is shadowed by the top-level '_' binding on Guile 2.2.
(show-manifest-transaction): Likewise.
| Ludovic Courtès |
2017-03-08 | download: Update the Savannah mirror list....* guix/download.scm (%mirrors) <savannah>: Remove centervenus.com, which
seems to be broken. Add download-mirror.sv.gnu.org as a last resort.
| Ludovic Courtès |
2017-03-08 | guix archive: Allow compilation with Guile 2.2....* guix/scripts/archive.scm (export-from-store): Avoid shadowing the
top-level '_'.
| Ludovic Courtès |
2017-03-07 | gnu: bash: Use the bootstrap Guile in 'url-fetch/reset-patch-level'....Fixes <http://bugs.gnu.org/25775>.
Reported by Sirgazil, Ricardo Wurmus, Andy Wingo, and others.
* guix/download.scm (in-band-download): Always use GUILE. This reverts
9f05908fb1e3707cae593d94688748294717a546.
* gnu/packages/bash.scm (url-fetch/reset-patch-level): Remove #:guile.
Pass %BOOTSTRAP-GUILE as #:guile to 'url-fetch'. Remove #:guile-for-build
argument in 'gexp->derivation' call.
| Ludovic Courtès |
2017-03-03 | Merge branch 'python-tests' | Marius Bakke |
2017-03-03 | build-system/cargo: Export %cargo-build-system-modules....* guix/build-system/cargo.scm (%cargo-build-system-modules): Export.
| Danny Milosavljevic |
2017-02-27 | Merge branch 'master' into python-tests | Marius Bakke |
2017-02-23 | download: Provide a fall-back guile for older daemons....Fixes <http://bugs.gnu.org/25775>.
* guix/download.scm (in-band-download): Use %bootstrap-guile as a
fall-back when using older daemons that do not have a built-in
downloader.
Written-by: Ricardo Wurmus <rekado@elephly.net>
| Leo Famulari |
2017-02-14 | build: dub-build-system: Don't use "dub run" at all....It doesn't make sense to run non-test executables (which is what "dub run"
would do).
The "check" function already invokes "dub test" and that's enough.
* guix/build/dub-build-system.scm (build): Remove "dub run" invocation.
| Danny Milosavljevic |
2017-02-14 | import: stackage: Avoid using (guix ui) in importer code....* guix/import/stackage.scm (stackage->guix-package, stackage-lts-info-fetch):
Raise 'message' condition instead of using 'leave' from (guix ui).
* guix/scripts/import/stackage.scm (guix-import-stackage): Handle conditions.
| Federico Beffa |
2017-02-13 | Merge branch 'master' into python-tests | Marius Bakke |
2017-02-10 | gnu: Add dub-build-system....* guix/build-system/dub.scm: New file.
* guix/build/dub-build-system.scm: New file.
* Makefile.am (MODULES): Add them.
* doc/guix.texi: Add section for dub-build-system.
| Danny Milosavljevic |
2017-02-09 | git-download: Add 'git-predicate'....* guix/git-download.scm (git-predicate): New procedure.
* gnu/packages/package-management.scm (current-guix): Use it.
(make-git-predicate): Remove.
| Mathieu Lirzin |
2017-02-09 | import: hackage: Handle unknown packages gracefully....* guix/import/hackage.scm (hackage-fetch): Add 'guard'.
| Federico Beffa |
2017-02-09 | import: Add stackage importer and updater....* guix/import/stackage.scm: New file.
* guix/scripts/import/stackage.scm: New file.
* Makefile.am (MODULES): Add new files.
* guix/scripts/import.scm (importers): Add "stackage".
* guix/scripts/refresh.scm (%updaters): Add %stackage-updater.
* doc/guix.texi (Invoking 'guix import'): Document the importer.
(Invoking 'guix refresh'): Add stackage to option --type valid values.
* guix/import/hackage.scm (guix-package->hackage-name, hackage-fetch,
hackage-source-url, hackage-cabal-url, hackage-package?): Export them.
| Federico Beffa |
2017-02-09 | import: json: Explicitly ask for JSON data....* guix/import/json.scm (json-fetch): Add #:headers to http-fetch call.
| Federico Beffa |
2017-02-08 | import: pypi: Correctly handle multiple-URL origins....Fixes <https://bugs.gnu.org/25635>.
Reported by Sergei Trofimovich <slyfox@inbox.ru>.
* guix/import/pypi.scm (guix-package->pypi-name)[url->pypi-name]: New
procedure.
Rewrite body to match lists in addition to strings.
* tests/pypi.scm ("guix-package->pypi-name, several URLs"): New test.
| Ludovic Courtès |
2017-02-08 | profiles: gtk-im-modules: Fix for gtk3....Gtk+3 now have multiple outputs, so the gtk-query-immodules-3.0 should be find
in output "bin" instead of "out".
* guix/profiles.scm (gtk-im-modules): Pass the path of gtk-query-immodules-x.x
as 'query' argument to the 'build' procedure.
Signed-off-by: 宋文武 <iyzsong@member.fsf.org>
| Ying Huang |
2017-02-07 | file-systems: Add '%network-configuration-files' and '%network-file-mappings'....* gnu/system/file-systems.scm (%network-configuration-files)
(%network-file-mappings): New variables.
* guix/scripts/environment.scm (%network-configuration-files): Remove.
(launch-environment/container): Refer to '%network-file-mappings'
instead of calling 'filter-map'.
| Ludovic Courtès |
2017-02-03 | file-systems: Add 'file-system-mapping->bind-mount'....* gnu/system/file-systems.scm (file-system-mapping->bind-mount): New
procedure.
* gnu/system/linux-container.scm (mapping->file-system): Remove.
(containerized-operating-system)[mapping->fs]: Use
'file-system-mapping->bind-mount' instead of 'mapping->file-system'.
* guix/scripts/environment.scm (launch-environment/container): Likewise.
| Ludovic Courtès |
2017-02-02 | build: r-build-system: Use deterministic built date....Fixes <http://bugs.gnu.org/25598>.
* guix/build/r-build-system.scm (install): Pass "--built-timestamp" option to
make build deterministic.
| Ricardo Wurmus |
2017-02-01 | download: Add GNOME mirror....* guix/download.scm (%mirrors): Add "https://download.gnome.org".
| Ludovic Courtès |
2017-02-01 | download: Add ‘url-fetch/zipbomb’....From this suggestion by Ludovic Courtès:
<http://lists.gnu.org/archive/html/guix-devel/2016-09/msg01983.html>
* guix/download.scm (url-fetch/zipbomb): New procedure.
| Tobias Geerinckx-Rice |
2017-02-01 | download: url-fetch/tarball: Make ‘name’ truly optional....* guix/download.scm (url-fetch/tarbomb): Fall back to ‘file-name’ if
‘name’ is #f, like the regular ‘url-fetch’ does.
* gnu/packages/bioinformatics.scm (muscle)[source]: Remove ‘file-name’.
* gnu/packages/engineering.scm (fastcap)[source]: Likewise.
* gnu/packages/scheme.scm (scmutils)[source]: Likewise.
| Tobias Geerinckx-Rice |
2017-01-31 | lint: Use the "@" syntax for versioned packages in warnings....* guix/scripts/lint.scm (emit-warning): Use the "@" syntax.
| Ludovic Courtès |
2017-01-30 | environment: Fix setting writable? on networking related files...* guix/scripts/environment.scm (launch-environment/container): Include the
file name in the call to string=? when deciding if the file should be
writable.
Signed-off-by: Ludovic Courtès <ludo@gnu.org>
| Christopher Baines |