Age | Commit message (Expand) | Author |
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 |
2017-01-30 | store: Add 'add-data-to-store'....* guix/serialization.scm (write-bytevector): New procedure.
(write-string): Rewrite in terms of 'write-bytevector'.
* guix/store.scm (write-arg): Add 'bytevector' case.
(add-data-to-store): New procedure, from former 'add-text-to-store'.
(add-text-to-store): Rewrite in terms of 'add-data-to-store'.
* tests/store.scm ("add-data-to-store"): New test.
| Ludovic Courtès |
2017-01-28 | build-system/python: 'package-with-explicit-python' uses 'eq?' memoization....* guix/build-system/python.scm (package-with-explicit-python): Use
'mlambdaq' instead of 'mlambda'. This does not change the <package>
graph and has no visible impact on performance.
| Ludovic Courtès |
2017-01-28 | gnu-maintenance: 'gnu-package?' uses 'eq?' memoization....* guix/gnu-maintenance.scm (gnu-package?): Use 'mlambdaq' instead of
'mlambda'.
| Ludovic Courtès |
2017-01-28 | packages: Remove 'define-memoized/v' and use 'mlambdaq' instead....* guix/packages.scm (define-memoized/v): Remove.
(package-transitive-supported-systems): Use 'mlambdaq' instead of
'define-memoized/v'.
(package-input-rewriting)[replace]: Likewise.
| Ludovic Courtès |
2017-01-28 | Use 'mlambda' instead of 'memoize'....* gnu/packages.scm (find-newest-available-packages): Use 'mlambda'
instead of (memoize (lambda ...) ...).
* gnu/packages/bootstrap.scm (package-with-bootstrap-guile): Likewise.
* guix/build-system/gnu.scm (package-with-explicit-inputs)[rewritten-input]:
Likewise.
* guix/build-system/python.scm (package-with-explicit-python)[transform]:
Likewise.
* guix/derivations.scm (derivation->string): Likewise.
* guix/gnu-maintenance.scm (gnu-package?): Likewise.
* guix/modules.scm (module-file-dependencies): Likewise.
* guix/scripts/graph.scm (standard-package-set): Likewise.
* guix/scripts/lint.scm (official-gnu-packages*): Likewise.
* guix/store.scm (store-regexp*): Likewise.
* guix/utils.scm (location): Likewise.
| Ludovic Courtès |
2017-01-28 | Add (guix memoization)....* guix/combinators.scm (memoize): Remove.
* guix/memoization.scm: New file.
* Makefile.am (MODULES): Add it.
* gnu/packages.scm, gnu/packages/bootstrap.scm,
guix/build-system/gnu.scm, guix/build-system/python.scm,
guix/derivations.scm, guix/gnu-maintenance.scm,
guix/import/cran.scm, guix/import/elpa.scm,
guix/modules.scm, guix/scripts/build.scm,
guix/scripts/graph.scm, guix/scripts/lint.scm,
guix/store.scm, guix/utils.scm: Adjust imports accordingly.
| Ludovic Courtès |
2017-01-28 | packages: Add 'package-upstream-name' and use it....* guix/packages.scm (package-upstream-name): New procedure.
* guix/gnu-maintenance.scm (gnu-package?, ftp-server/directory)
(latest-release*, latest-gnome-release)
(latest-kde-release): Use it instead of the inline expression.
| Ludovic Courtès |
2017-01-28 | import: github: Better tolerate unexpected file extensions....* guix/import/github.scm (find-extension): Add ".tbz".
(updated-github-url): When 'find-extension' returns #f, use "" for EXT.
| Ludovic Courtès |