summaryrefslogtreecommitdiff
path: root/guix
AgeCommit message (Expand)Author
2015-09-02graph: Add '--expression'....* guix/scripts/graph.scm (%options, show-help): Add '--expression'. (guix-graph): Call 'read/eval-package-expression' for 'expression' pairs in OPTS. * tests/guix-graph.sh: Add tests. * doc/guix.texi (Invoking guix graph): Document it. Ludovic Courtès
2015-09-02guix: Add GUST font license 1.0....* guix/licenses.scm (gfl1.0): New variable. Ricardo Wurmus
2015-09-01import: gem: Fix minor bug and add unit test....* guix/import/gem.scm (make-gem-sexp): Properly handle an empty list of licenses. When rendering a list of licenses, cons 'list onto the front of the expression. * tests/gem.scm: New file. * Makefile.am (SCM_TESTS): Add it. David Thompson
2015-08-31build: Add R build system....* guix/build-system/r.scm: New file. * guix/build/r-build-system: New file. * Makefile.am (MODULES): Add new files. * doc/guix.texi (Build Systems): Document r-build-system. Ricardo Wurmus
2015-08-31import: Add 'cran' importer....* guix/import/cran.scm: New file. * guix/scripts/import.scm: Add "cran" to 'importers'. * guix/scripts/import/cran.scm: New file. * tests/cran.scm: New file. * Makefile.am (MODULES): Add 'guix/import/cran.scm' and 'guix/scripts/import/cran.scm'. (SCM_TESTS): Add 'tests/cran.scm'. * doc/guix.texi (Invoking guix import): Document it. * po/guix/POTFILES.in: Add 'guix/scripts/import/cran.scm'. Ricardo Wurmus
2015-08-30ui: Add 'run-guix'....* guix/ui.scm (guix-main): Move the code to run guix command line to ... (run-guix): ...here. New procedure. Export it. Alex Kost
2015-08-30guix graph: Export node types and <node-type> accessors....* guix/scripts/graph.scm (%node-types, node-type, node-type?, node-type-identifier, node-type-label, node-type-edges, node-type-convert, node-type-name, node-type-description): Export. Alex Kost
2015-08-30guix lint: Export checkers and <lint-checker> accessors....* guix/scripts/lint.scm (%checkers, lint-checker, lint-checker?, lint-checker-name, lint-checker-description, lint-checker-check): Export. Alex Kost
2015-08-29download: Keep a single copy of the mirror file....This saves ~10% on 'guix build inkscape -Sd'. * guix/download.scm (%mirror-file): New variable. (url-fetch): Remove #:mirrors parameter. Remove 'mirror-file'; refer to '%mirror-file' instead. Ludovic Courtès
2015-08-29refresh: Add missing newline in warning message....Reported by karhunkynsi on #guix. * guix/scripts/refresh.scm (update-package): Add missing newline in string literal passed to 'warning'. Ludovic Courtès
2015-08-29download: Keep only 2 store items for all the downloads....This significantly reduces churn in the store. It also reduces run time of 'guix build inkscape -Sd' by ~10%. * guix/download.scm (url-fetch)[mirror-file]: New variable. [builder]: Get URL from the "guix download url" env. var. Get the mirrors from MIRROR-FILE. Pass #:script-name and #:env-vars to 'gexp->derivation'. Ludovic Courtès
2015-08-29gexp: Add #:script-name parameter to 'gexp->derivation'....* guix/gexp.scm (gexp->derivation): Add #:script-name parameter. * doc/guix.texi (G-Expressions): Document it. Ludovic Courtès
2015-08-29monads: Inline the procedure returned by liftN....* guix/monads.scm (define-lift): Turn into a macro that open-codes the result of its lift. Ludovic Courtès
2015-08-27import: Add Ruby gem importer....* gnu/scripts/import.scm (importers): Add "gem". * gnu/import/gem.scm: New file. * gnu/scripts/import/gem.scm: New file. * Makefile.am (MODULES): Add them. * guix.texi ("invoking guix import"): Document it. David Thompson
2015-08-27import: pypi: Move generally useful procedures to utils module....* guix/import/pypi.scm (make-pypi-sexp): Factorize license to symbol conversion code. (string->license, snake-case, guix-hash-url): Move from here... * guix/import/utils.scm: ... to here. (license->symbol): New procedure. David Thompson
2015-08-27Add 'guix graph'....* guix/scripts/graph.scm, tests/graph.scm, tests/guix-graph.sh, doc/images/coreutils-bag-graph.dot, doc/images/coreutils-graph.dot: New files. * Makefile.am (MODULES): Add guix/scripts/graph.scm. (SH_TESTS): Add tests/guix-graph.sh. (SCM_TESTS): Add tests/graph.scm. * doc.am (DOT_FILES, DOT_VECTOR_GRAPHICS): New variables. (EXTRA_DIST): Use them. (dist_infoimage_DATA): Use $(DOT_FILES). (pdf-local, info-local, ps-local): Likewise. * doc/guix.texi (Packages with Multiple Outputs): Add cross-reference to 'guix graph'. (Invoking guix gc): Likewise. (Invoking guix graph): New section. Ludovic Courtès
2015-08-27gexp: Add 'lower-object'....* guix/gexp.scm (lower-object): New procedure. (lower-inputs, lower-references, gexp->sexp): Use it. * tests/gexp.scm ("lower-object"): New test. * doc/guix.texi (G-Expressions): Document it. Ludovic Courtès
2015-08-24guix package: -s shows outputs....* guix/ui.scm (package->recutils): Print "outputs:". Mark H Weaver
2015-08-20profiles: Remove duplicate entries in 'etc/profile'....Reported by Andy Wingo at <http://lists.gnu.org/archive/html/guix-devel/2015-08/msg00109.html>. * guix/profiles.scm (profile-derivation)[builder]: Delete duplicates in SEARCH-PATHS. Ludovic Courtès
2015-08-20guix: Add Sleepycat license....* guix/licenses.scm (sleepycat): New variable. Ricardo Wurmus
2015-08-19scripts: package: Add --install-from-file option....* guix/scripts/package.scm (show-help): Add help text for --install-from-file option. (%options): Add --install-from-file option. * tests/guix-package.sh: Test it. * doc/guix.texi ("invoking guix package"): Document it. * doc/package-hello.scm: New file. * doc.am (EXTRA_DIST): Add it. David Thompson
2015-08-19size: Get the item's size from the daemon rather than compute it....This removes all I/O, which obviously makes things faster. * guix/scripts/size.scm (file-size, store-item-exists?): Remove. (query-path-info*): New procedure. (file-size*): Rename to... (file-size): ... this; adjust caller. Use 'query-path-info*' instead of 'file-size'. Ludovic Courtès
2015-08-19lint: Add 'formatting' checker....* guix/scripts/lint.scm (report-tabulations, report-trailing-white-space, report-long-line, report-formatting-issues, check-formatting): New procedures. (%formatting-reporters): New variable. (%checkers): Add 'formatting' checker. * tests/lint.scm ("formatting: tabulation", "formatting: trailing white space", "formatting: long line", "formatting: alright"): New tests. * doc/guix.texi (Invoking guix lint): Mention the 'formatting' checker. Ludovic Courtès
2015-08-18build: ruby: Rewrite build system to use gem archives....Co-Authored-By: Pjotr Prins <pjotr.public01@thebird.nl> * guix/build-system/ruby.scm (lower): Remove git dependency. (rubygems-uri): New procedure. * guix/build/ruby-build-system (gitify): Delete. (unpack): Use 'gem unpack' utility. (check): Add docstring. (build): Repack modified gem. (install): Rebuild unpacked gem and install it. (%standard-phases): Remove gitify and build phases. * gnu/packages/ruby.scm (ruby-hoe, ruby-rake-compiler, ruby-i18n, ruby-rspec-support, ruby-rspec-core, ruby-diff-lcs-for-rspec, ruby-rspec-expectations, ruby-rspec-mocks, ruby-rspec, bundler, ruby-useragent, ruby-bacon, ruby-arel, ruby-connection-pool, ruby-net-http-persistent, ruby-minitest, ruby-minitest-sprint, ruby-minitest-bacon, ruby-daemons, ruby-git, ruby-slop, ruby-multipart-post): Convert to new build system. * doc/guix.texi (ruby-build-system): Document the gem archive requirement. David Thompson
2015-08-17syscalls: setns: Skip binding if there is no such C function....On systems with a glibc prior to 2.14, the 'setns' function is not available. Thanks to Eric Bavier for reporting the issue. * guix/build/syscalls.scm (setns): Wrap with 'false-if-exception'. David Thompson
2015-08-10import: elpa: Fix typo....Reported by Eric Dvorsak <eric@dvorsak.fr> on #guix. * guix/scripts/import/elpa.scm (%default-options): Remove redundant quote which led to an error if --archive option was not specified. Alex Kost
2015-08-06python-build-system: Fix 'get-python-version'....* guix/build/python-build-system.scm (get-python-version): Rewrite to handle multiple-digit version number components. Mark H Weaver
2015-08-01build: emacs: Fix bug and improvement robustness....* guix/build/emacs-build-system.scm (emacs-inputs): Fix matching pattern. (patch-el-files): Improve regexp pattern. Federico Beffa
2015-08-01import: elpa: Improve error message reporting....* guix/import/elpa.scm (filter-dependencies): Fix bug. (call-with-downloaded-file): Add optional parameter 'error-thunk'. (fetch-package-description): Use it. Federico Beffa
2015-07-25syscalls: Add 'network-interfaces', which wraps libc's 'getifaddrs'....Based on discussions with Rohan Prinja <rohan.prinja@gmail.com>. * guix/build/syscalls.scm (<interface>): New record type. (write-interface, values->interface, unfold-interface-list, network-interfaces, free-ifaddrs): New procedures. (ifaddrs): New C struct. (%struct-ifaddrs-type, %sizeof-ifaddrs): New macros. * tests/syscalls.scm ("network-interfaces returns one or more interfaces", "network-interfaces returns \"lo\""): New tests. Ludovic Courtès
2015-07-25syscalls: 'define-c-struct' properly align reads....* guix/build/syscalls.scm (alignof*, align): New macros. (write-types, read-types): Use 'align' to compute the actual offset to read/write a value of TYPE0. Ludovic Courtès
2015-07-25syscalls: 'read-socket-address' gracefully handles unsupported families....* guix/build/syscalls.scm (PF_PACKET, AF_PACKET): New variables. (read-socket-address): Make 'index' optional. Return (vector FAMILY) when FAMILY is neither AF_INET nor AF_INET6. Ludovic Courtès
2015-07-25syscalls: 'define-c-struct' distinguishes pointers from integers....* guix/build/syscalls.scm (read-type): Add special-case for when TYPE is '*. Ludovic Courtès
2015-07-25syscalls: Rename 'network-interfaces' and 'all-network-interfaces'....* guix/build/syscalls.scm (network-interfaces): Rename to... (network-interface-names): ... this. (all-network-interfaces): Rename to... (all-network-interface-names): ... this. * gnu/services/networking.scm (dhcp-client-service): Adjust accordingly. * tests/syscalls.scm ("all-network-interfaces"): Rename to... ("all-network-interface-names"): ... this, and adjust accordingly. ("network-interfaces"): Rename to... ("network-interface-names"): ... this, and adjust accordingly. Ludovic Courtès
2015-07-23Fix typos in translatable strings....Reported by Anders Jonsson <anders.jonsson@norsjovallen.se>. * gnu/packages/backup.scm, gnu/packages/databases.scm, gnu/packages/linux.scm, gnu/packages/perl.scm, gnu/packages/web.scm, guix/scripts/lint.scm, guix/scripts/publish.scm: Fix typos in translatable strings. Ludovic Courtès
2015-07-22size: Add '--substitute-urls' option....* guix/scripts/size.scm (show-help, %options): Add --substitute-urls. (%default-options): Add 'substitute-urls'. (guix-size): Honor it. * doc/guix.texi (Invoking guix size): Document it. Ludovic Courtès
2015-07-22derivations: Improve docstring of 'substitution-oracle'....* guix/derivations.scm (substitution-oracle): Improve docstring. Ludovic Courtès
2015-07-22derivations: Improve complexity of 'substitution-oracle'....* guix/derivations.scm (substitution-oracle): Use a final 'concatenate' instead of repeated 'append's. Ludovic Courtès
2015-07-22import: hackage: Remove reference to unbound variable....* guix/scripts/import/hackage.scm (guix-import-hackage): Fix error message for imports from stdin, which referred to unbound variable 'package-name'. Ludovic Courtès
2015-07-22size: Remove leftover 'pk'....* guix/scripts/size.scm (profile->page-map): Remove leftover 'pk'. Ludovic Courtès
2015-07-21import: pypi: Improve warning message....* guix/import/pypi.scm (guess-requirements): Add missing newline and quotes in warning. Ludovic Courtès
2015-07-19Merge branch 'core-updates'Mark H Weaver
2015-07-20publish: Do not load archive content in memory....Previously, before replying to a /nar/* request, 'guix publish' would first build up the whole nar into memory (as a consequence of <http://bugs.gnu.org/21093>), which obviously doesn't scale. * guix/scripts/publish.scm (render-nar): Return STORE-PATH instead of a procedure that calls 'write-file'. (sans-content-length): New procedure. (http-write): For 'x-nix-archive', don't call '%http-write'. Instead, call 'write-file' right from here, using BODY as the file name. Ludovic Courtès
2015-07-19Merge branch 'master' into core-updatesMark H Weaver
2015-07-19publish: Serve /nar requests in a separate thread....* guix/scripts/publish.scm (%http-write): New variable. (http-write): New procedure. (concurrent-http-server): New variable. (run-publish-server): Use it. Ludovic Courtès
2015-07-18build-system/ruby: Add #:gem-flags parameter....* guix/build-system/ruby.scm (build): add 'gem-flags' key * guix/build/ruby-build-system.scm (build): use 'gem-flags' key * doc/guix.texi (Build Systems): Mention #:gem-flags. Co-authored-by: Ludovic Courtès <ludo@gnu.org> pjotrp
2015-07-18publish: Write hashes in nix-base32 format....* guix/scripts/publish.scm (narinfo-string): Use 'bytevector->nix-base32-string', not 'bytevector->base32-string'. Ludovic Courtès
2015-07-17syscalls: Struct deserializer can now return arbitrary objects....* guix/build/syscalls.scm (read-types): Add RETURN and VALUES parameters. (define-c-struct): Add WRAP-FIELDS parameter and pass it to 'read-types'. (sockaddr-in, sockaddr-in6): Add first argument that uses 'make-socket-address'. (read-socket-address): Remove 'match' on the result of 'read-sockaddr-in' and 'read-sockaddr-in6'. Ludovic Courtès
2015-07-17download: Remove spurious warning about 'https_proxy'....* guix/build/download.scm (open-connection-for-uri)[with-https-proxy]: Warn about 'https_proxy' only when 'getenv' returns a non-empty string. Ludovic Courtès
2015-07-17licenses: Add Fontana's copyleft-next....* guix/licenses.scm (copyleft-next): New variable. Ludovic Courtès