guix: build: Add transitive source building.
* guix/scripts/build.scm (%options, options->derivations): Add --sources
option.
* doc/guix.texi (Invoking guix build): Document --sources option.
* tests/guix-build.sh: Add tests.
guix: packages: Add package-direct-sources and package-transitive-sources.
* guix/tests.scm (dummy-origin): New syntax.
* guix/packages.scm (package-direct-sources)
(package-transitive-sources): New procedures.
* tests/packages.scm ("package-direct-sources, no source")
("package-direct-sources, #f source")
("package-direct-sources, not input source", "package-direct-sources")
("package-transitive-sources"): Test them.
install: Add bash-completion to the packages.
* gnu/system/install.scm (installation-os)[packages]: Add
BASH-COMPLETION.
profiles: Store search paths in manifests.
Discussed in <http://bugs.gnu.org/20255>.
* guix/packages.scm (sexp->search-path-specification): New variable.
* guix/profiles.scm (<manifest-entry>)[search-paths]: New field.
(package->manifest-entry): Initialize it.
(manifest->gexp): Match it. Wrap #$deps in (propagated-inputs ...).
Emit (search-paths ...). Increment version.
(find-package): New procedure.
(sexp->manifest)[infer-search-paths]: New procedure.
Use it to initialize the 'search-paths' field for versions 0 and 1.
Add case for version 2.
* guix/scripts/package.scm (search-path-environment-variables)[manifest-entry->package]:
Remove.
Use 'manifest-entry-search-paths' instead of 'manifest-entry->package'
plus 'package-native-search-paths'.
* tests/profiles.scm ("profile-manifest, search-paths"): New test.
Merge branch 'core-updates'
hydra: Update Guix job set.
* build-aux/hydra/guix.scm (tarball-package): Remove 'nix-checkout'
parameter. Remove 'arguments', 'native-inputs', and 'location'
fields. Adjust caller accordingly.
(hydra-jobs): Remove 'nix-checkout'.
build-system/gnu: 'dist-package' preserves the package's native inputs.
* guix/build-system/gnu.scm (dist-package)[native-inputs]: Preserve P's
native-inputs.
build-system/gnu: Adjust to removal of a "bin" output for Libtool.
* guix/build-system/gnu.scm (dist-package): Change libtool:bin input to
just libtool.
gnu: gcj: Remove broken symlink and conflicting files.
* gnu/packages/gcc.scm (gcj)[arguments]: Add a build phase to remove a broken
symlink and generic stump binaries.
gnu: mesa: Update to 10.5.4.
* gnu/packages/gl.scm (mesa): Update version to 10.5.4. Add libxvmc to
inputs. Remove python, gettext, flex, and bison from native-inputs. Remove
hack that was necessary to prevent rebuilding parts of the build system.
gnu: mesa: Add libva input.
There is a circular dependency between Mesa and libVA, so we use a
libva-no-mesa package that builds libVA without GLX and EGL support, and use
that for building Mesa.
* gnu/packages/gl.scm (libva-for-mesa): New variable.
(mesa): Add as input.
gnu: linux-libre: Update to 4.0.1.
* gnu/packages/linux.scm (linux-libre): Update to 4.0.1.
gnu: ebook: Drop circular inclusion of the module into itself.
* gnu/packages/ebook.scm: Do not import (gnu packages ebook).
services: Add console-keymap service.
* gnu/services/base.scm (console-keymap-service): New procedure.
* doc/guix.texi (Base Services): Document it.
Co-authored-by: 宋文武 <iyzsong@gmail.com>
bash completion: Complete long options with no short variant.
* etc/completion/bash/guix (_guix_complete_option): Change grep regexp
to match options that don't have a short option name.
gnu: polkit-qt: Add $libdir to RUNPATH.
* gnu/packages/polkit.scm (polkit-qt)[arguments]: Add
#:configure-flags.
check-available-binaries: Use %HYDRA-SUPPORTED-SYSTEMS.
* build-aux/check-available-binaries.scm: Use %HYDRA-SUPPORTED-SYSTEMS
instead of %SUPPORTED-SYSTEMS.
gnu: mariadb: Remove now unneeded workaround.
This has been redundant since 21e583d.
* gnu/packages/databases.scm (mariadb)[arguments]: Remove LDFLAGS
definition.
list-packages: Add status link only for systems supported on Hydra.
* build-aux/list-packages.scm (package->sxml)[status]:
Intersect (package-transitive-supported-systems package) with
%HYDRA-SUPPORTED-SYSTEMS.
packages: Add '%hydra-supported-systems'.
* build-aux/hydra/gnu-system.scm (%hydra-supported-systems): Remove.
* guix/packages.scm (%hydra-supported-systems): New variable.