summaryrefslogtreecommitdiff
path: root/guix/packages.scm
Commit message (Collapse)AuthorAge
...
| * packages: Mark 'replacement' as an "innate" field.Ludovic Courtès2017-07-03
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | Suggested by Mark H Weaver at <https://lists.gnu.org/archive/html/guix-devel/2017-06/msg00355.html>. * guix/packages.scm (<package>)[replacement]: Mark as "innate". * gnu/packages/base.scm (glibc-2.25-patched, glibc-2.24) (glibc-2.23, glibc-2.22, glibc-2.21, glibc-locales): Remove 'replacement' field, which was set to #f. * gnu/packages/commencement.scm (perl-boot0): Likewise. * gnu/packages/fontutils.scm (graphite2/fixed): Likewise. * gnu/packages/ghostscript.scm (ghostscript/fixed): Likewise. * gnu/packages/gnupg.scm (libgcrypt-1.7.8): Likewise. * gnu/packages/guile.scm (guile-2.0/fixed, guile-2.2): Likewise. * gnu/packages/icu4c.scm (icu4c/fixed): Likewise. * gnu/packages/image.scm (libpng-apng): Likewise. * gnu/packages/make-bootstrap.scm (%guile-static): Likewise. * gnu/packages/pcre.scm (pcre/fixed): Likewise. * gnu/packages/perl.scm (perl/fixed): Likewise. * gnu/packages/ruby.scm (ruby-2.3, ruby-2.2, ruby-2.1) (ruby-1.8): Likewise. * gnu/packages/tls.scm (gnutls-3.5.13, gnutls/guile-2.2): Likewise. * gnu/packages/xml.scm (expat-2.2.1): Likewise.
* | Merge branch 'master' into core-updatesMark H Weaver2017-06-26
|\|
| * gnu: Move contents of zip module into compression module.Arun Isaac2017-06-20
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | * gnu/packages/zip.scm (zip, unzip, zziplib, perl-zip): Move to... * gnu/packages/compression.scm: ...here. * gnu/packages/zip.scm: Delete file. * gnu/local.mk (GNU_SYSTEM_MODULES): Unregister deleted file. * po/packages/POTFILES.in: Unregister deleted file. * gnu/packages/{audio, avr, bioinformatics, busybox, cdrom, ci, compression, docbook, documentation, fonts, fpga, game-development, games, gl, gnome, gnuzilla, graphics, guile, haskell, image, java, kodi, ldc, libreoffice, markup, maths, mc, monitoring, music, php, pretty-print, python, scheme, smalltalk, statistics, synergy, tex, textutils, video, web-browsers, xml, zip}.scm, guix/build-system/{ant, font}.scm, guix/{download, packages}.scm: Adapt module import.
* | Merge branch 'master' into core-updatesMark H Weaver2017-06-18
|\|
| * packages: Patches can be any lowerable object.Ludovic Courtès2017-06-15
| | | | | | | | | | * guix/packages.scm (patch-and-repack)[instantiate-patch]: Replace 'origin?' with 'struct?'.
* | Merge branch 'master' into core-updatesRicardo Wurmus2017-05-24
|\|
| * packages: Add aarch64-linux to %supported-systems.Efraim Flashner2017-05-23
| | | | | | | | | | * guix/packages.scm (%supported-systems): Add aarch64-linux. (%hydra-supported-systems): Remove aarch64-linux.
| * Add package/inherit.Mark H Weaver2017-05-02
| | | | | | | | * guix/packages.scm (package/inherit): New public macro.
| * packages: Add 'package-mapping' and base 'package-input-rewriting' on it.Ludovic Courtès2017-04-05
| | | | | | | | | | | | | | * guix/packages.scm (package-mapping): New procedure. (package-input-rewriting): Rewrite in terms of 'package-mapping'. * tests/packages.scm ("package-mapping"): New test. * doc/guix.texi (Defining Packages): Document it.
| * packages: Catch invalid input errors for structs.Ludovic Courtès2017-04-04
| | | | | | | | | | | | | | | | | | Reported by Thomas Sigurdsen <thomas.sigurdsen@gmail.com> at <https://lists.gnu.org/archive/html/help-guix/2017-04/msg00007.html>. * guix/packages.scm (expand-input): Add 'guard' form around call to 'package-source-derivation'. * tests/packages.scm (dummy): New test.
* | packages: Enable threaded compression of source tarballs.Leo Famulari2017-04-15
|/ | | | | | | This provides a ~2x speedup when using 4 threads. * guix/packages.scm (patch-and-repack)[build]: Invoke xz with '--threads=0' when re-packing tarballs.
* packages: Remove "mips64el-linux" from '%hydra-supported-systems'.Ludovic Courtès2017-03-29
| | | | * guix/packages.scm (%hydra-supported-systems): Remove "mips64el-linux".
* packages: Remove 'define-memoized/v' and use 'mlambdaq' instead.Ludovic Courtès2017-01-28
| | | | | | | * guix/packages.scm (define-memoized/v): Remove. (package-transitive-supported-systems): Use 'mlambdaq' instead of 'define-memoized/v'. (package-input-rewriting)[replace]: Likewise.
* packages: Add 'package-upstream-name' and use it.Ludovic Courtès2017-01-28
| | | | | | | * 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.
* Merge branch 'master' into core-updatesMark H Weaver2016-10-17
|\
| * packages: 'package-grafts' applies grafts on replacement.Ludovic Courtès2016-10-14
| | | | | | | | | | | | | | | | | | | | Partly fixes <http://bugs.gnu.org/24418>. * guix/packages.scm (input-graft): Compute 'new' with #:graft? #t. (input-cross-graft): Likewise. * tests/packages.scm ("package-grafts, indirect grafts, cross"): Comment out. ("replacement also grafted"): New test.
* | Merge branch 'master' into core-updatesLudovic Courtès2016-09-30
|\|
| * gexp: Store compilers in a hash table for O(1) lookup.Ludovic Courtès2016-09-10
| | | | | | | | | | | | | | | | | | | | | | | | | | * guix/gexp.scm (<gexp-compiler>)[predicate]: Remove. [type]: New field. (%gexp-compilers): Turn into a hash table. (register-compiler!, lookup-compiler, lookup-expander): Adjust accordingly. (define-gexp-compiler): Replace 'predicate' by 'record-type'. (derivation-compiler, local-file-compiler, plain-file-compiler) (computed-file-compiler, program-file-compiler, scheme-file-compiler) (file-append-compiler): Adjust accordingly. * guix/packages.scm (package-compiler, origin-compiler): Likewise.
| * packages: Add 'package-superseded' and associated support.Ludovic Courtès2016-09-06
| | | | | | | | | | | | | | | | | | | | | | | | | | | | This provides a way to mark a package as superseded by another one. Upgrades replace superseded packages with their replacement. * guix/packages.scm (package-superseded, deprecated-package): New procedures. * gnu/packages.scm (%find-package): Check for 'package-superseded'. * guix/scripts/package.scm (transaction-upgrade-entry)[supersede]: New procedure. Call it when 'package-superseded' is true. * tests/guix-build.sh: Add test for a superseded package. * tests/packages.scm ("package-superseded") ("transaction-upgrade-entry, superseded package"): New tests.
* | Merge branch 'master' into core-updatesLudovic Courtès2016-09-02
|\|
| * packages: Add 'package-input-rewriting'.Ludovic Courtès2016-09-01
| | | | | | | | | | | | | | * 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.
* | packages: Use '--no-backup-if-mismatch' for patching.Alex Kost2016-08-10
|/ | | | | | | 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.
* packages: Add 'hidden-package'.Ludovic Courtès2016-07-28
| | | | | | * guix/packages.scm (hidden-package, hidden-package?): New procedures. * gnu/packages.scm (fold-packages): Filter out 'hidden-package?'. * tests/packages.scm ("hidden-package"): New test.
* packages: <origin> no longer has an 'imported-modules' field.Ludovic Courtès2016-07-12
| | | | | | | | | * guix/packages.scm (<origin>)[imported-modules]: Remove. (patch-and-repack): Remove #:imported-modules. Use 'with-imported-modules'. Remove #:modules argument to 'gexp->derivation'. (origin->derivation): Adjust accordingly. * doc/guix.texi (origin Reference): Adjust accordingly.
* packages: Disambiguate 'modules' and 'imported-modules' in <origin>.Ludovic Courtès2016-06-16
| | | | | | | | | | | | | The two mistakes made here (confusion between 'modules' and 'imported-modules') were canceling each other. * guix/packages.scm (patch-and-repack): Use IMPORTED-MODULES, not MODULES, as the base of the module list passed as #:modules to 'gexp->derivation'. (origin->derivation): Pass IMPORTED-MODULES, not MODULES, as the #:imported-modules argument of 'patch-and-repack'. * gnu/packages/engineering.scm (fastcap)[source]: Add 'imported-modules' field.
* packages: The 'source' can be any lowerable object.Ludovic Courtès2016-06-15
| | | | | | | | | | | * guix/packages.scm (expand-input): Use 'struct?' instead of 'origin?' when matching SOURCE. (package-source-derivation): Use 'lower-object' instead of 'origin->derivation'. * tests/packages.scm ("package-source-derivation, local-file"): New test. * doc/guix.texi (package Reference): Update 'source' documentation accordingly.
* packages: 'origin->derivation' expects an origin and nothing else.Ludovic Courtès2016-06-15
| | | | | | * guix/packages.scm (origin->derivation): Rename 'source' parameter to 'origin'. Move cases where SOURCE is a string to... (package-source-derivation): ... here.
* packages: Recognize the '.Z' extension.Ludovic Courtès2016-06-15
| | | | | | Reported by thomasd on #guix. * guix/packages.scm (patch-and-repack)[decompression-type]: Add "Z".
* packages: Cache the result of 'input-grafts'.Ludovic Courtès2016-03-08
| | | | | | | | | | | This reduces the wall-clock time of guix environment gnutls --pure -E true by ~35%. * guix/packages.scm (%graft-cache): New variable. (input-graft): Use 'cached' to cache to %GRAFT-CACHE.
* packages: Cache the result of 'package->bag'.Ludovic Courtès2016-03-08
| | | | | | | | | | | This reduces the wall-clock time of guix environment gnutls --pure -E true by ~25%. * guix/packages.scm (%bag-cache): New variable. (package->bag): Use 'cached' to cache things to %BAG-CACHE.
* packages: Generalize the 'cached' macro.Ludovic Courtès2016-03-08
| | | | | | * guix/packages.scm (cache): Rename to... (cache!): ... this. Add 'cache' parameter, and use it. (cached): Add a rule to allow the cache to be specified.
* packages: The result of 'bag-grafts' does not contain duplicates.Ludovic Courtès2016-03-05
| | | | * guix/packages.scm (bag-grafts): Add call to 'delete-duplicates'.
* grafts: Graft recursively.Ludovic Courtès2016-03-01
| | | | | | | | | | | | | | | | | | | | | | Fixes <http://bugs.gnu.org/22139>. * guix/grafts.scm (graft-derivation): Rename to... (graft-derivation/shallow): ... this. (graft-origin-file-name, item->deriver, non-self-references) (cumulative-grafts, graft-derivation): New procedures * tests/grafts.scm ("graft-derivation, grafted item is a direct dependency"): Clarify title. Use 'grafted' instead of 'graft' to refer to the grafted derivation. ("graft-derivation, grafted item is an indirect dependency") ("graft-derivation, no dependencies on grafted output"): New tests. * guix/packages.scm (input-graft): Change to take a package instead of an input. (input-cross-graft): Likewise. (fold-bag-dependencies): New procedure. (bag-grafts): Rewrite in terms of 'fold-bag-dependencies'. * tests/packages.scm ("package-derivation, indirect grafts"): Comment out. * doc/guix.texi (Security Updates): Mention run-time dependencies and recursive grafting.
* grafts: 'name' parameter of 'graft-derivation' is now optional.Ludovic Courtès2016-02-22
| | | | | | | | * guix/grafts.scm (graft-derivation): Name 'name' a keyword parameter. * guix/packages.scm (package-derivation, package-cross-derivation): Adjust accordingly. * tests/grafts.scm ("graft-derivation"): Likewise. * tests/packages.scm ("package-derivation, indirect grafts"): Likewise.
* derivations: Move grafts to (guix grafts).Ludovic Courtès2016-02-22
| | | | | | | | | | | | * guix/derivations.scm (<graft>, graft-derivation, %graft?) (set-grafting): Move to... * guix/grafts.scm: ... here. New file. * guix/gexp.scm, guix/packages.scm, tests/packages.scm, guix/scripts/build.scm: Use it. * Makefile.am (MODULES): Add it. (SCM_TESTS): Add tests/grafts.scm. * tests/derivations.scm ("graft-derivation"): Move to... * tests/grafts.scm: ... here. New file.
* packages: Use '@' in package record printers.Mathieu Lirzin2016-01-28
| | | | | | | * guix/packages.scm <package>: Use '@' in record printer. * guix/import/cabal.scm <cabal-package>: Likewise * guix/import/elpa.scm <elpa-package>: Likewise. * tests/packages.scm: Adapt to it.
* packages: Add 'package-transitive-native-search-paths'.Ludovic Courtès2015-12-20
| | | | | | | * guix/packages.scm (package-transitive-native-search-paths): New procedure. * tests/packages.scm ("package-transitive-native-search-paths"): New test.
* packages: Use locales from the /X.Y sub-directory of the locale package.Ludovic Courtès2015-10-04
| | | | | | | This is a followup to commit f2d7bbb. * guix/packages.scm (patch-and-repack)[build]: Append "/X.Y" to LOCPATH.
* Use "normalized codesets" everywhere.Ludovic Courtès2015-10-04
| | | | | | | | | | | | | | | In other words, change "xx_YY.UTF-8" to "xx_YY.utf8". * guix/profiles.scm (ca-certificate-bundle): Use "en_US.utf8" instead of "en_US.UTF-8". * guix/packages.scm (patch-and-repack): Likewise. * guix/build/gnu-build-system.scm (install-locale): Likewise. * guix/build-system/gnu.scm (gnu-build, gnu-cross-build): Likewise. * gnu/packages/python.scm (python-ipython): Likewise. * gnu/packages/gawk.scm (gawk): Likewise. * build-aux/hydra/demo-os.scm: Likewise. * gnu/packages/guile.scm (guile-ncurses)[arguments]: Remove 'change-locale' phase.
* Merge branch 'master' into core-updatesMark H Weaver2015-09-22
|\
| * guix: packages: Add origin-actual-file-name.Eric Bavier2015-09-14
| | | | | | | | | | | | | | | | * guix/scripts/graph.scm (uri->file-name, node-full-name): Move origin file name logic to... * guix/packages.scm (origin-actual-file-name): ...here. * tests/packages.scm ("origin-actual-file-name") ("origin-actual-file-name, file-name"): New tests.
* | Merge branch 'master' into core-updatesLudovic Courtès2015-09-13
|\|
| * guix: packages: Add transitive-input-references.Eric Bavier2015-09-10
| | | | | | | | | | | | | | * guix/packages.scm (transitive-input-references): New procedure. * gnu/packages/version-control.scm (package-transitive-propagated-labels*) (package-propagated-input-refs): Delete. (git)[arguments]: Adjust to transitive-input-references.
* | packages: Build tarballs in sorted order even if tar doesn't support it.Mark H Weaver2015-09-06
| | | | | | | | | | | | | | | | This is a followup to commit 92226a470ddc980e54863632e5b179bf40444bd7. * guix/packages.scm (patch-and-repack)[build]: Determine if tar supports the "--sort=name" option using a run-time test. If not supported, generate the sorted file list with 'find-files' and pass it to tar using "--files-from".
* | packages: Define '%hurd-systems'.Ludovic Courtès2015-09-04
| | | | | | | | * guix/packages.scm (%hurd-systems): New variable.
* | Build tarballs with deterministic file ordering.Mark H Weaver2015-09-03
| | | | | | | | | | | | | | | | * guix/packages.scm (patch-and-repack)[build], gnu/system/install.scm (self-contained-tarball)[build], gnu/packages/make-bootstrap.scm (tarball-package), gnu/packages/admin.scm (isc-dhcp), gnu/packages/video.scm (avidemux): Pass "--sort=name" to 'tar'.
* | packages: Add 'armhf-linux' to '%hydra-supported-systems'.Mark H Weaver2015-09-02
|/ | | | | * guix/packages.scm (%hydra-supported-systems): Do not remove 'armhf-linux' from it. It is now equal to '%supported-systems'.
* packages: patch-and-repack: Build tarballs deterministically.Mark H Weaver2015-07-14
| | | | | * guix/packages.scm (patch-and-repack)[build]: When invoking 'tar' to repack the archive, pass "--mtime=@0", "--owner=root:0", and "--group=root:0".
* packages: Rewrite 'transitive-inputs' to be linear and remove duplicates.Ludovic Courtès2015-07-12
| | | | | | | | | | | | | | | | | | | | | | | There were two issues: 1. Use of 'delete-duplicates', which is quadratic, was a serious problem for closures with lots of propagated inputs, such as that of the 'hydra' package (several minutes for 'guix build hydra -n'!). 2. The 'delete-duplicates' call essentially had no effect since duplicate inputs typically had a different label and were thus kept. For instance, (bag-transitive-inputs (package->bag inkscape)) would return 216 items whereas (delete-duplicates (map cdr THAT)) contains only 67 items. The new implementation returns 67 items in this case. For 'hydra', we're down from 42211 items to 361, and roughly 13s for 'guix build hydra'. * guix/packages.scm (transitive-inputs): Rewrite as a breadth-first traversal. Remove duplicate propagated inputs. * tests/packages.scm ("package-transitive-inputs", "package->bag, propagated inputs"): Adjust to use simple labels for propagated inputs, without "/". ("package-transitive-inputs, no duplicates"): New test.
* Merge branch 'master' into core-updatesMark H Weaver2015-06-14
|\ | | | | | | | | | | Conflicts: gnu/packages/commencement.scm gnu/packages/xml.scm