summaryrefslogtreecommitdiff
path: root/guix
AgeCommit message (Collapse)Author
2016-09-12build-system/gnu: Do not patch symlinks in the source.Ludovic Courtès
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.
2016-09-07utils: 'wrap-program' produces only one wrapper file.Ludovic Courtès
* 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.
2016-09-02Merge branch 'master' into core-updatesLudovic Courtès
2016-09-01build-system/gnu: 'strip' phase lists files in sorted order.Ludovic Courtès
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.
2016-09-01guix build: Rewrite '--with-input' in terms of 'package-input-rewriting'.Ludovic Courtès
* guix/scripts/build.scm (transform-package-inputs): Rewrite in terms of 'package-input-rewriting'.
2016-09-01packages: Add 'package-input-rewriting'.Ludovic Courtès
* guix/packages.scm (package-input-rewriting): New procedure. * tests/packages.scm ("package-input-rewriting"): New test. * doc/guix.texi (Defining Packages): Document it. (Package Transformation Options): Add cross-reference.
2016-08-31services: shepherd: Add 'shepherd-service-upgrade', from 'guix system'.Ludovic Courtès
* guix/scripts/system.scm (service-upgrade): Move to... * gnu/services/shepherd.scm (shepherd-service-upgrade): ... here. * tests/system.scm ("service-upgrade: nothing to do", "service-upgrade: one unchanged, one upgraded, one new", "service-upgrade: service depended on is not unloaded", "service-upgrade: obsolete services that depend on each other"): Move to... * tests/services.scm: ... here. Adjust to 'service-upgrade' rename.
2016-08-31guix system: Do not unload services depended on.Ludovic Courtès
Reported by Mark H Weaver <mhw@netris.org> at <https://lists.gnu.org/archive/html/guix-devel/2016-08/msg01470.html>. * guix/scripts/system.scm (service-upgrade)[live-service-required?]: New procedure. [obsolete?]: Use it. * tests/system.scm ("service-upgrade: service depended on is not unloaded", "service-upgrade: obsolete services that depend on each other"): New tests.
2016-08-31guix system: Use 'shepherd-service-lookup-procedure' in 'service-upgrade'.Ludovic Courtès
* guix/scripts/system.scm (service-upgrade)[essential?]: SERVICE is now a <live-service>. [lookup-target, lookup-live, running?, stopped, obsolete?]: New procedures. [to-load, to-unload]: Use them. TO-UNLOAD is now a list of <live-service>. (call-with-service-upgrade-info): Extract symbols from TO-UNLOAD. * tests/system.scm ("service-upgrade: one unchanged, one upgraded, one new"): Adjust accordingly.
2016-08-31guix system: Extract and test the service upgrade procedure.Ludovic Courtès
* guix/scripts/system.scm (service-upgrade): New procedure, with code from... (call-with-service-upgrade-info): ... here. Use it. * tests/system.scm (live-service, service-upgrade): New variables. ("service-upgrade: nothing to do", "service-upgrade: one unchanged, one upgraded, one new"): New tests.
2016-08-31services: herd: Provide <live-service> objects.Ludovic Courtès
* gnu/services/herd.scm (<live-service>): New record type. (current-services): Change to return a single value: #f or a list of <live-service>. * guix/scripts/system.scm (call-with-service-upgrade-info): Adjust accordingly. * gnu/tests/base.scm (run-basic-test)["shepherd services"]: Adjust accordingly.
2016-08-30build: Add wrap-qt-program.David Craven
* guix/build/qt-utils.scm (wrap-qt-program): New file. * Makefile.am (MODULES): Add it.
2016-08-30import: hackage: Default to https urls.ng0
* guix/import/hackage.scm (hackage-source-url, hackage-cabal-url): Use https for hackage.haskell.org.
2016-08-30import: cpan: Use tls to query api.metacpan.org.ng0
* guix/import/cpan.scm (module->dist-name, cpan-fetch-module): Use tls for api.metacpan.org. Signed-off-by: Eric Bavier <bavier@member.fsf.org>
2016-08-29Merge branch 'master' into core-updatesLeo Famulari
2016-08-30guix: ruby-build-system: Add replace-git-ls-files.Ben Woodcroft
* guix/build/ruby-build-system.scm (replace-git-ls-files): New variable. (%standard-phases): Add it.
2016-08-30guix: ruby-build-system: Build compiled gems reproducibly.Ben Woodcroft
* guix/build/ruby-build-system.scm (log-file-deletion): New procedure. (install): Remove files containing non-reproducible elements. Print when each file is deleted.
2016-08-29Merge remote-tracking branch 'origin/master' into core-updatesEfraim Flashner
2016-08-28guix: lint: Check descriptions for trademark signs.Eric Bavier
* guix/scripts/lint.scm (check-description-style): Emit a warning if trademark signs found in description. * tests/lint.scm (description: may not contain trademark signs): Add test.
2016-08-28guix scripts: Disable grafting on dry runs.Roel Janssen
* guix/scripts/archive.scm, guix/scripts/build.scm, guix/scripts/environment.scm, guix/scripts/system.scm, guix/scripts/package.scm: Disable grafting when a dry-run parameter is given.
2016-08-28import: Importers return prefixed licenses.David Craven
* guix/import/utils.scm (define-module): Import licenses with license: prefix. (string->licenses): Use prefixed licenses. (license->symbol): Return symbols with the prefix license:. * guix/tests/pypi.scm (pypi->guix-package): Update test cases. * guix/tests/gem.scm (gem->guix-package): Update test case.
2016-08-27base64: Restore original license header.Christopher Allan Webber
When incorporating a copyleft licensed program with a lax licensed program, it is correct to preserve the original license notice. See also: https://www.softwarefreedom.org/resources/2007/gpl-non-gpl-collaboration.html * guix/base64.scm: Restored original license header.
2016-08-23profiles: gtk-icon-themes: Use 'gtk-update-icon-cache' from 'gtk+:bin'.宋文武
This is a followup to commit 7b808d7. * guix/profiles.scm (gtk-icon-themes): Use 'gtk-update-icon-cache' from the "bin" output of gtk+ package.
2016-08-20system: Fix 'guix system' when root fs is named by UUID.Mark H Weaver
Fixes <https://bugs.gnu.org/23881>. * guix/scripts/system.scm (previous-grub-entries) (display-system-generation): Handle the case where the root device is specified by UUID.
2016-08-19edit: Do not honor 'GUIX_BUILD_OPTIONS'.Ludovic Courtès
* guix/scripts/edit.scm (guix-edit)[parse-arguments]: New procedure. Use it.
2016-08-17Merge branch 'master' into core-updatesLeo Famulari
2016-08-16ant-build-system: Fix typo.Leo Famulari
* guix/build-system/ant.scm (ant-build): Fix typo.
2016-08-12profiles: xdg-mime-database: Run the hook when have GLib based applications.宋文武
* guix/profiles.scm (xdg-mime-database): Run the hook when GLIB is referenced by the manifest. Add SHARED-MIME-INFO to the mime packages of `update-mime-database'.
2016-08-10utils: Fix 'modify-phases' docstring.Taylan Ulrich Bayırlı/Kammer
* guix/build/utils.scm (modify-phases): Fix the documentation string.
2016-08-10packages: Use '--no-backup-if-mismatch' for patching.Alex Kost
Suggested-by: Ludovic Courtès <ludo@gnu.org> * guix/packages.scm (patch-and-repack)[build]: Use '--no-backup-if-mismatch' patch flag to avoid making *.orig files.
2016-08-09grafts: Make grafting faster.Mark H Weaver
* 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.
2016-08-05download: Add download.kde.org to kde mirrors.David Craven
* guix/download.scm (%mirrors)[kde]: Add download.kde.org.
2016-08-04ui: Remove dependency on (gnu system file-systems).Ludovic Courtès
* guix/ui.scm (specification->file-system-mapping): Move to... * gnu/system/file-systems.scm (specification->file-system-mapping): ... here.
2016-08-04Merge branch 'core-updates'Mark H Weaver
2016-08-04Revert "Merge branch 'core-updates'"Mark H Weaver
This reverts commit 455859a50f88f625d13fc2f304111f02369b366b.
2016-08-02guix system: Fix the Shepherd error handling fix.Ludovic Courtès
This is a followup to aa1e73a996ad170fecac848f203528aeb3d2173e. * guix/scripts/system.scm (with-shepherd-error-handling): Return two values when an exception is caught.
2016-08-02guix system: Properly report Shepherd errors when upgrading services.Ludovic Courtès
Fixes regression introduced in 8bf92e3904cb656d4c2160fc8befebaf21a65492. Reported by myglc2 <myglc2@gmail.com> in <http://bugs.gnu.org/24135>. * guix/scripts/system.scm (with-shepherd-error-handling): Rename 'body' to 'mbody'. Expand to a monadic procedure that runs MBODY.
2016-08-02lint: 'inputs-should-be-native' checks for extra-cmake-modules and qttools.David Craven
* guix/scripts/lint.scm (check-inputs-should-be-native): Warn when extra-cmake-modules or qttools isn't a native-input.
2016-08-02gnu-maintenance: Add KDE updater.David Craven
* guix/gnu-maintenance.scm (kde-package?, latest-kde-release): New private functions. (%kde-updater): New public variable. * guix/scripts/refresh.scm (list-updaters): Add %kde-updater. * doc/guix.texi (Invoking guix refresh): Mention the new updater.
2016-08-02download: Add KDE mirrors.David Craven
* guix/download.scm (%mirrors)[kde]: Add kde mirrors.
2016-08-01Merge branch 'core-updates'Ludovic Courtès
2016-08-01publish: Do not compress already-compressed files.Ludovic Courtès
* guix/scripts/publish.scm (narinfo-string): Force %NO-COMPRESSION when STORE-PATH matches 'compressed-file?'. * guix/utils.scm (compressed-file?): New procedure. * tests/publish.scm ("/*.narinfo for a compressed file"): New test.
2016-07-31Merge branch 'master' into core-updatesMark H Weaver
2016-07-31download: Add mirror.hydra.gnu.org as a content-addressed mirror.Ludovic Courtès
* guix/download.scm (%content-addressed-mirrors): Add 'mirror.hydra.gnu.org'.
2016-07-31download: Pass the raw file name to content-addressed mirrors.Ludovic Courtès
* guix/build/download.scm (url-fetch)[content-addressed-uris]: Call 'strip-store-file-name' on FILE before passing it to 'make-url'.
2016-07-30emacs: Disable grafts when dry-run is enabled.Alex Kost
* emacs/guix-main.scm (process-package-actions): Set grafting according to 'dry-run?'. * guix/scripts.scm (build-package): Disable grafts when 'dry-run?' is #t. Co-authored-by: Ludovic Courtès <ludo@gnu.org>
2016-07-29Merge branch 'master' into core-updatesMark H Weaver
2016-07-29size: Fix corner case with multiple items on the command line.Ludovic Courtès
Fixes 'guix size foo bar' when 'foo' is in the local store and 'bar' isn't, which could lead to an incomplete requisite list. * guix/scripts/size.scm (requisites*): Partition ITEMS according to 'valid-path?'. Use 'substitutable-requisites' only on invalid items.
2016-07-28Merge branch 'master' into core-updatesLeo Famulari
2016-07-28Merge branch 'master' into core-updatesMark H Weaver