Ludovic Courtès
b50c5b7418
pull: Add a compilation progress report.
...
* guix/build/pull.scm (report-build-progress): New procedure.
(p-for-each): Add #:progress parameter.
[loop]: Keep track of the number of completed processes. Tail-call
PROGRESS at each loop iteration.
(build-guix): Add #:debug-port parameter. Use it for verbose
messages. Change 'tar' flags to 'xf'. Around 'compile-file' call,
bind CURRENT-WARNING-PORT to DEBUG-PORT.
* guix/scripts/pull.scm (unpack): Add #:verbose? parameter.
[builder]: Pass #:debug-port to 'build-guix'.
(guix-pull): Leave CURRENT-BUILD-OUTPUT-PORT unchanged. Pass
#:verbose? to 'unpack'.
2014-09-05 23:11:04 +02:00
Eric Bavier
1145938496
utils: Clean trailing whitespace at end of SHELL
...
* guix/build/utils.scm (patch-makefile-SHELL): Remove trailing whitespace.
2014-09-05 00:02:19 -05:00
Ludovic Courtès
6fd1a79674
vm: Move store copy handling to (guix build store-copy).
...
* gnu/build/vm.scm (read-reference-graph, populate-store): Move to...
* guix/build/store-copy.scm: ... here. New file.
* Makefile.am (MODULES): Add it.
* gnu/system/vm.scm (expression->derivation-in-linux-vm): Adjust default
#:modules values accordingly.
* tests/gexp.scm ("gexp->derivation, store copy"): New test.
2014-09-04 23:24:54 +02:00
Ludovic Courtès
b21a1c5a18
linux-initrd: Move Linux module tree flattening to another derivation.
...
* gnu/system/linux-initrd.scm (expression->initrd)[string->regexp]:
Remove.
Use 'flat-linux-module-directory'. Remove the equivalent logic from
'builder'.
(flat-linux-module-directory): New procedure.
2014-09-04 22:51:04 +02:00
Ludovic Courtès
39c4563aea
profiles: Use a real arrow to denote upgrades in ASCII.
...
Suggested by Alex Kost.
* guix/profiles.scm (right-arrow): Fall back to "->".
* tests/profiles.scm ("manifest-show-transaction"): Adjust accordingly.
2014-09-04 21:35:57 +02:00
Alex Kost
457f60fa06
Add Emacs user interface.
...
* configure.ac (emacsuidir): New variable.
(AC_CONFIG_FILES): Add 'emacs/guix-init.el', 'emacs/guix-helper.scm'.
* Makefile.am: Include 'emacs.am'.
* emacs.am: New file.
* doc/emacs.texi: New file.
* doc/guix.texi: Include 'emacs.texi'.
* emacs/guix-backend.el: New file.
* emacs/guix-base.el: New file.
* emacs/guix-helper.scm.in: New file.
* emacs/guix-history.el: New file.
* emacs/guix-info.el: New file.
* emacs/guix-init.el.in: New file.
* emacs/guix-list.el: New file.
* emacs/guix-main.scm: New file.
* emacs/guix-utils.el: New file.
* emacs/guix.el: New file.
2014-09-03 23:50:35 +04:00
Ludovic Courtès
a423555d3c
gnu: datamash: Fix license.
...
* gnu/packages/datamash.scm (datamash)[license]: Change to GPL3+.
2014-09-03 15:43:07 +02:00
Ludovic Courtès
fbb3555809
linux-initrd: Factorize cpio archive creation.
...
* gnu/build/linux-initrd.scm: New file.
* gnu-system.am (GNU_SYSTEM_MODULES): Add it.
* gnu/system/linux-initrd.scm (expression->initrd): Use (gnu build
linux-initrd) and 'write-cpio-archive' instead of the inlined code.
2014-09-03 15:43:07 +02:00
Ludovic Courtès
e2f4b305d0
Move part of (gnu build linux-boot) to (gnu build file-systems).
...
* gnu/build/linux-boot.scm (%ext2-endianness, %ext2-sblock-magic,
%ext2-sblock-creator-os, %ext2-sblock-uuid, %ext2-sblock-volume-name,
read-ext2-superblock, ext2-superblock-uuid,
ext2-superblock-volume-name, disk-partitions,
partition-label-predicate, find-partition-by-label,
canonicalize-device-spec, MS_RDONLY, MS_NOSUID, MS_NODEV, MS_NOEXEC,
MS_BIND, MS_MOVE, bind-mount, check-file-system,
mount-flags->bit-mask, mount-file-system): Move to...
* gnu/build/file-systems.scm: ... here. New file.
* gnu-system.am (GNU_SYSTEM_MODULES): Add it.
* gnu/services/base.scm: Use (gnu build file-systems).
* gnu/services/dmd.scm (dmd-configuration-file): Likewise.
* gnu/system.scm (operating-system-activation-script): Likewise.
* gnu/system/linux-initrd.scm (base-initrd): Likewise.
* gnu/system/vm.scm (expression->derivation-in-linux-vm): Likewise.
2014-09-03 15:43:07 +02:00
Ludovic Courtès
8a9e21d1f7
Rename (gnu build linux-initrd) to (gnu build linux-boot).
...
* gnu/build/linux-initrd.scm: Rename to...
* gnu/build/linux-boot.scm: ... this.
* gnu-system.am (GNU_SYSTEM_MODULES): Adjust accordingly.
* gnu/build/activation.scm, gnu/build/vm.scm, gnu/services/base.scm,
gnu/services/dmd.scm, gnu/system.scm, gnu/system/linux-initrd.scm,
gnu/system/vm.scm: Adjust accordingly.
2014-09-03 15:43:07 +02:00
Ludovic Courtès
548f7a8fa2
Move operating system helpers from (guix build …) to (gnu build …).
...
* guix/build/activation.scm, guix/build/install.scm,
guix/build/linux-initrd.scm, guix/build/vm.scm: Move to...
* gnu/build: ... here.
* Makefile.am (MODULES): Remove the above guix/build/ files.
* gnu-system.am (GNU_SYSTEM_MODULES): Add the above gnu/build/ files
here.
* gnu/services/base.scm, gnu/services/dmd.scm, gnu/system.scm,
gnu/system/linux-initrd.scm, gnu/system/vm.scm,
guix/scripts/system.scm: Adjust to the new module names.
2014-09-03 15:43:07 +02:00
Ludovic Courtès
141360b5b2
doc: Mention 'guix lint' and '--list-dependent' in 'HACKING'.
...
* HACKING (Submitting Patches): Mention 'guix lint' and 'guix refresh
--list-dependent'.
2014-09-03 15:43:07 +02:00
Ludovic Courtès
b002e9d08e
guix lint: Remove "guix lint: " prefix from warnings.
...
This allows editors to parse warnings correctly.
* guix/scripts/lint.scm (emit-warning): Use 'format' instead of
'warning', to avoid the "guix lint: " prefix in messages.
* tests/lint.scm (call-with-warnings): Indent.
2014-09-03 15:43:07 +02:00
David Thompson
52bd0810a8
gnu: Add postgresql.
...
* gnu/packages/postgresql.scm: New file.
* gnu-system.am (GNU_SYSTEM_MODULES): Add it.
2014-09-03 07:47:47 -04:00
Cyril Roelandt
b4f5e0e87c
scripts: add guix lint
...
* guix/scripts/lint.scm: New file. Defines a 'lint' tool for Guix packages.
* tests/lint.scm: New file.
* Makefile.am (MODULES, SCM_TESTS): Add them.
* po/guix/Makevars: Update appropriately.
* po/guix/POTFILES.in: Update appropriately.
* doc/guix.texi: Document "guix lint".
2014-09-03 02:07:07 +02:00
Cyril Roelandt
5e3b388b51
Move specification->package to gnu/packages.scm.
...
* guix/scripts/build.scm (specification->package): Move from here...
* gnu/packages.scm: ... to here.
2014-09-03 02:07:07 +02:00
Ludovic Courtès
3af2d27eb3
daemon: Do not use 'vfork'.
...
This fixes random EBADF errors in the daemon on ancient Linux kernels
such as version 2.6.32.
* config-daemon.ac: Remove detection of 'vfork'.
2014-09-02 22:52:45 +02:00
Marek Benc
bf2a56f8ec
gnu: Add nvi.
...
* gnu/packages/nvi.scm: New file.
* gnu/packages/patches/nvi-assume-preserve-path.patch: New file.
* gnu-system.am: Add them.
Signed-off-by: Ludovic Courtès <ludo@gnu.org>
2014-09-02 21:32:30 +02:00
Ludovic Courtès
9a91476431
profiles: Report version numbers in a separate column.
...
* guix/profiles.scm (manifest-show-transaction)[package-strings,
upgrade-strings]: Show version number in separate column. Show OUTPUT
in first column, and only when it's different from "out".
2014-09-02 21:25:57 +02:00
Ludovic Courtès
ef8993e2dc
profiles: Report the old and new version number in upgrades.
...
* guix/profiles.scm (manifest-lookup): New procedure.
(manifest-installed?): Use it.
(manifest-transaction-effects): Return a pair of entries for upgrades.
(right-arrow): New procedure.
(manifest-show-transaction)[upgrade-string, →]: New variables.
Report upgrades using 'upgrade-string'.
* tests/profiles.scm ("manifest-show-transaction"): New test.
("manifest-transaction-effects"): Match UPGRADE against a pair.
2014-09-02 21:12:59 +02:00
Ludovic Courtès
fa747b27fc
doc: Update "Installing Guix from Guix".
...
* README: Make 'guix package' command line more readable. Mention
--localstatedir.
2014-09-02 17:44:56 +02:00
Ludovic Courtès
8b8ea80781
gnu: ucommon: Update to 6.1.10.
...
* gnu/packages/telephony.scm (ucommon): Update to 6.1.10.
2014-09-02 00:01:38 +02:00
Ludovic Courtès
86da684c3d
gnu: libtasn1: Update to 4.1.
...
* gnu/packages/gnutls.scm (libtasn1): Update to 4.1.
2014-09-02 00:01:11 +02:00
Ludovic Courtès
f0214ece31
gnu: datamash: Update to 1.0.6.
...
* gnu/packages/datamash.scm (datamash): Update to 1.0.6.
2014-09-01 23:57:05 +02:00
Ludovic Courtès
7239e41196
gnu: parallel: Update to 20140822.
...
* gnu/packages/parallel.scm (parallel): Update to 20140822.
2014-09-01 23:56:01 +02:00
Ludovic Courtès
5c97df3ae6
gnu: help2man: Update to 1.46.1.
...
* gnu/packages/man.scm (help2man): Update to 1.46.1.
2014-09-01 23:55:23 +02:00
Ludovic Courtès
ad14d9e79d
doc: Clarify system installation and configuration details.
...
Reported by leth on #guix.
* doc/guix.texi (System Installation): Suggest running 'reboot' instead
of 'umount /mnt'.
(Initial RAM Disk): Add xref to SRFI-26.
2014-09-01 23:25:44 +02:00
Ludovic Courtès
e23f14fe0c
sync-with-upstream: Generate 'nix/AUTHORS'.
...
* nix/sync-with-upstream: Use 'git shortlog' to generate nix/AUTHORS.
2014-09-01 23:00:42 +02:00
Ludovic Courtès
deae6e9e6f
Thank Frederico.
2014-08-31 22:20:20 +02:00
Ludovic Courtès
d474d5d0c6
gnu: gcc-toolchain: Inherit GCC's search path specifications.
...
Reported by Federico Beffa <beffa@ieee.org>.
* gnu/packages/commencement.scm (gcc-toolchain): Add
'native-search-paths' and 'search-paths' fields.
2014-08-31 22:18:47 +02:00
Ludovic Courtès
4720f524fc
guix package: Fix search path lookup when an obsolete version is installed.
...
Before that, 'guix package --search-paths' would not work if, say,
'foo-0.2' is installed but the distro provides 'foo-0.3'.
* guix/scripts/package.scm (search-path-environment-variables)[manifest-entry->package]:
Handle the case where 'find-best-packages-by-name' returns '().
2014-08-31 22:17:56 +02:00
Ludovic Courtès
ab3893d713
daemon: Rename '--disable-store-optimization' to '--disable-deduplication'.
...
* nix/nix-daemon/guix-daemon.cc (GUIX_OPT_DISABLE_STORE_OPTIMIZATION):
Rename to...
(GUIX_OPT_DISABLE_DEDUPLICATION): ... this. Adjust user accordingly.
(options): Add "disable-deduplication". Make
"disable-store-optimization" a hidden alias.
* doc/guix.texi (Invoking guix-daemon): Adjust to new option name. Add
index entry. Improve description.
2014-08-31 14:44:40 +02:00
Ludovic Courtès
44d43c7a85
daemon: Really enable automatic deduplication by default.
...
* nix/nix-daemon/guix-daemon.cc (main): Set 'autoStoreOptimise' to
true. Add 'printMsg' call.
* tests/derivations.scm ("identical files are deduplicated"): New test.
2014-08-31 14:44:34 +02:00
Ludovic Courtès
79601521fc
profiles: Compute transaction effects in a functional way.
...
* guix/profiles.scm (manifest-transaction-effects): New procedure.
(manifest-show-transaction): Use it instead of locally computing it.
* tests/profiles.scm (glibc): New variable.
("manifest-transaction-effects"): New test.
2014-08-30 21:52:32 +02:00
Mark H Weaver
6646747c02
gnu: gawk: Patch /usr/bin/file in extension/configure on MIPS.
...
* gnu/packages/gawk.scm (gawk): When building for MIPS, patch /usr/bin/file in
extension/configure.
2014-08-29 18:31:57 -04:00
Ludovic Courtès
b9a31d90e9
offload: Ignore EEXIST when registering a .drv as a GC root.
...
Fixes <http://bugs.gnu.org/18115 >.
Reported by Mark H Weaver <mhw@netris.org>.
* guix/scripts/offload.scm (register-gc-root)[script]: Wrap 'symlink'
call in "catch 'system-error", and ignore EEXIST errors.
2014-08-29 14:53:15 +02:00
Ludovic Courtès
b1e48f222b
offload: Ignore unreachable machines.
...
Fixes <http://bugs.gnu.org/18070 >.
Reported by Andreas Enge <andreas@enge.fr>.
* guix/scripts/offload.scm (remote-pipe): Augment docstring.
(machine-load): Return +inf.0 instead of 1 if MACHINE does not respond
or responds badly.
2014-08-29 14:37:58 +02:00
Ludovic Courtès
00b7776c0d
gnu: Add nss-mdns.
...
* gnu/packages/avahi.scm (nss-mdns): New variable.
2014-08-29 14:13:26 +02:00
Mark H Weaver
b5ef82e064
gnu: Add missing import to (gnu packages base).
...
* gnu/packages/base.scm: Import (gnu packages base).
2014-08-28 15:34:17 -04:00
Mark H Weaver
c00a9fbfef
Merge branch 'master' into core-updates
...
Conflicts:
gnu/packages/base.scm
2014-08-28 14:22:15 -04:00
Mark H Weaver
dd16424466
doc: %final-inputs is now in (gnu packages commencement).
...
* doc/guix.texi (Bootstrapping): Adjust the text to reflect that
'%final-inputs' is now in (gnu packages commencement).
2014-08-28 13:59:49 -04:00
Mark H Weaver
9e9cb0c7ba
hydra: Adjust to (gnu packages commencement) split from (gnu packages base).
...
* build-aux/hydra/gnu-system.scm: Import (gnu packages commencement).
2014-08-28 13:57:08 -04:00
John Darrington
ba5324c30e
gnu: Add perl-archive-zip.
...
* gnu/packages/perl.scm (perl-archive-zip): New variable.
2014-08-28 18:56:16 +02:00
John Darrington
b1da9f82a8
gnu: Add bison-2.7
...
* gnu/packages/bison.scm (bison-2.7): New variable.
Bison 3.x and 2.x are incompatible. Some programs require 2.x
2014-08-28 18:56:13 +02:00
Eric Bavier
83291101c3
utils: Preserve makefile shell arguments during patch.
...
* guix/build/utils.scm (patch-makefile-SHELL): Preserve shell arguments.
2014-08-28 11:16:19 -05:00
Ludovic Courtès
c23372131d
gnu: libwebsockets: Update to 1.3.
...
* gnu/packages/web.scm (libwebsockets): Update to 1.3. Switch to
CMAKE-BUILD-SYSTEM. Remove #:phases parameter and add #:tests?.
Remove AUTOCONF, AUTOMAKE, and LIBTOOL from 'native-inputs'.
2014-08-28 11:38:12 +02:00
Ludovic Courtès
12507a3ee6
gnu: Add Guile-Charting.
...
* gnu/packages/guile.scm (guile-charting): New variable.
2014-08-28 10:09:28 +02:00
Ludovic Courtès
49710cea4c
gnu: guile-cairo: Propagate Cairo.
...
* gnu/packages/gtk.scm (guile-cairo): Move CAIRO to 'propagated-inputs'.
2014-08-28 10:06:48 +02:00
Ludovic Courtès
bdb36958fb
gnu: Split (gnu packages base), adding (gnu packages commencement).
...
* gnu/packages/base.scm (gnu-make-boot0, diffutils-boot0,
findutils-boot0, %boot0-inputs, nix-system->gnu-triplet, boot-triplet,
binutils-boot0, gcc-boot0, perl-boot0, linux-libre-headers-boot0,
texinfo-boot0, %boot1-inputs, glibc-final-with-bootstrap-bash,
cross-gcc-wrapper, static-bash-for-glibc, glibc-final,
gcc-boot0-wrapped, %boot2-inputs, binutils-final, libstdc++,
gcc-final, ld-wrapper-boot3, %boot3-inputs, bash-final, %boot4-inputs,
guile-final, gnu-make-final, ld-wrapper, coreutils-final, grep-final,
%boot5-inputs, %final-inputs, canonical-package, gcc-toolchain,
gcc-toolchain-4.8, gcc-toolchain-4.9): Move to...
* gnu/packages/commencement.scm: ... here. New file.
* gnu-system.am (GNU_SYSTEM_MODULES): Add it.
* build-aux/check-final-inputs-self-contained.scm: Adjust accordingly.
* gnu/packages/cross-base.scm: Likewise.
* gnu/packages/make-bootstrap.scm: Likewise.
* guix/build-system/cmake.scm (cmake-build): Likewise.
* guix/build-system/gnu.scm (standard-packages, gnu-build,
gnu-cross-build): Likewise.
* guix/build-system/perl.scm (perl-build): Likewise.
* guix/build-system/python.scm (python-build): Likewise.
* guix/build-system/trivial.scm (guile-for-build): Likewise.
* guix/download.scm (url-fetch): Likewise.
* guix/gexp.scm (default-guile): Likewise.
* guix/git-download.scm (git-fetch): Likewise.
* guix/monads.scm (run-with-store): Likewise.
* guix/packages.scm (default-guile): Likewise.
* guix/scripts/package.scm (guix-package): Likewise.
* guix/scripts/refresh.scm: Likewise.
* guix/svn-download.scm (svn-fetch): Likewise.
* tests/builders.scm (%bootstrap-inputs, %bootstrap-search-paths):
Likewise.
* tests/packages.scm ("GNU Make, bootstrap"): Likewise.
* tests/guix-package.sh: Likewise.
* gnu/services/base.scm: Use 'canonical-package' instead of xxx-final.
* gnu/services/xorg.scm: Likewise.
* gnu/system/vm.scm: Likewise.
* guix/scripts/pull.scm (guix-pull): Likewise.
2014-08-28 09:21:54 +02:00
Ludovic Courtès
5c3eb14e07
linux-initrd: Wait a bit longer for partitions to appear.
...
Reported by Sveltana on #guix.
* guix/build/linux-initrd.scm (canonicalize-device-spec): Increase
MAX-TRIALS. Add "waiting for partition" 'format' call.
2014-08-28 09:21:21 +02:00