Commit Graph

3292 Commits

Author SHA1 Message Date
Ludovic Courtès 8ad49499b9 build: Support running the test suite from a directory with symlinks.
Fixes <http://bugs.gnu.org/17935>.
Reported by Alex Kost <alezost@gmail.com>.

* test-env.in: Canonicalize $NIX_STORE_DIR, and remove
  $NIX_IGNORE_SYMLINK_STORE setting.
* tests/guix-register.sh: Likewise, canonicalize $new_store_dir and
  $new_store and leave $NIX_IGNORE_SYMLINK_STORE unchanged.
2014-07-05 19:15:08 +02:00
John Darrington 8731e52749 gnu: Add maxima.
* gnu/packages/maths.scm (maxima): New variable.
2014-07-05 16:16:03 +02:00
John Darrington f842bbed19 gnu: Add gcl.
* gnu-system.am (GNU_SYSTEM_MODULES): Add new package.
* gnu/packages/lisp.scm: New file.
2014-07-05 16:15:59 +02:00
Taylan Ulrich Bayirli/Kammer 6879fe235c guix package: Try $LOGNAME in addition to $USER.
Fixes <http://bugs.gnu.org/17946>.

Notoriously, cron jobs may set LOGNAME only and not USER.  See
e.g. crontab(5) under Debian 7 (wheezy).

* guix/scripts/package.scm (%profile-directory)
(guix-package): Also try LOGNAME if USER is unset.

Signed-off-by: Ludovic Courtès <ludo@gnu.org>
2014-07-05 15:09:43 +02:00
Ludovic Courtès 3e39b916b6 Thank Taylan and Alex. 2014-07-05 15:02:42 +02:00
Ludovic Courtès 88371f0d7d guix package: Do the right thing for '-p ~/.guix-profile'.
Fixes <http://bugs.gnu.org/17939>.
Reported by Taylan Ulrich Bayirli/Kammer <taylanbayirli@gmail.com>.

* guix/scripts/package.scm (canonicalize-profile): New procedure.
  (%options): Use it for --profile.
* tests/guix-package.sh: Add test.
2014-07-05 14:56:08 +02:00
Ludovic Courtès e84d8b30d9 vm: Enable QEMU support in the freestanding VM image.
* gnu/system/vm.scm (system-qemu-image): Add 'initrd' field.
2014-07-04 19:01:22 +02:00
Ludovic Courtès 3a100e7934 gnu: Avoid circular dependency among modules.
Reported by Alex Kost <alezost@gmail.com>.

* gnu/packages/python.scm: Don't use #:select for (gnu packages zip).
2014-07-04 15:09:39 +02:00
John Darrington 12c0f32a3f gnu: Add gegl and gimp
* gnu/packages/gimp.scm (gegl, gimp): New variables.
2014-07-04 06:53:50 +02:00
Ludovic Courtès 8451a568f4 doc: Document user accounts and user groups.
* doc/guix.texi (File Systems): Fix typo.
  (User Accounts): Populate.
2014-07-03 23:36:01 +02:00
Ludovic Courtès e3ced65af0 linux-initrd: Use 'call-with-error-handling' when booting.
* guix/build/linux-initrd.scm (canonicalize-device-spec): When label
  resolution fails, call 'error' instead of 'format' + 'start-repl'.
  (boot-system): Wrap most of body in 'call-with-error-handling'.
  Remove 'catch' around 'primitive-load' call.
2014-07-03 22:44:14 +02:00
Ludovic Courtès dccab4df20 linux-initrd: Remove unused local procedure.
* guix/build/linux-initrd.scm (boot-system)[resolve]: Remove.
2014-07-03 22:24:56 +02:00
Ludovic Courtès 615215a535 gnu: Add youtube-dl.
* gnu/packages/video.scm (youtube-dl): New variable.
2014-07-03 22:21:53 +02:00
Ludovic Courtès 113daf6270 doc: Write about file system configuration.
* doc/guix.texi (Using the Configuration System): Change 'guix system
  boot' to 'guix system reconfigure'.
  (File Systems, User Accounts, Services): New nodes.
2014-07-02 23:42:06 +02:00
Ludovic Courtès d266b79332 linux-initrd: Gracefully handle lack of or invalid ext2 superblocks.
Reported by David Thompson <dthompson2@worcester.edu>.

* guix/build/linux-initrd.scm (read-ext2-superblock): Add
  'superblock-size' variable.  Read with 'get-bytevector-n!' instead of
  'getbytevector-n', and make sure we read exactly SUPERBLOCK-SIZE
  bytes.
2014-07-02 12:18:36 +02:00
Ludovic Courtès 0f28ee3487 gnu: pdf: Add PoDoFo.
* gnu/packages/pdf.scm (podofo): New variable.
2014-07-02 09:50:04 +02:00
Cyrill Schenkel 3cf118a110 gnu: Add cmatrix.
* gnu/packages/games.scm (cmatrix):  New variable.

Signed-off-by: Ludovic Courtès <ludo@gnu.org>
2014-07-01 17:29:55 +02:00
Cyrill Schenkel ed02caff89 gnu: Add node.
* gnu-system.am (GNU_SYSTEM_MODULES): Add new package.
* gnu/packages/node.scm: New file.

Signed-off-by: Ludovic Courtès <ludo@gnu.org>
2014-07-01 10:32:09 +02:00
Ludovic Courtès f33e2d78b7 services: Add lshd service.
* gnu/services/ssh.scm: New file.
* gnu-system.am (GNU_SYSTEM_MODULES): Add it.
2014-07-01 09:23:32 +02:00
Ludovic Courtès 060238ae64 linux-initrd: Rename 'qemu-initrd' to 'base-initrd'.
* gnu/system/linux-initrd.scm (qemu-initrd): Rename to...
  (base-initrd): ... this.
* gnu/system.scm (<operating-system>)[initrd]: Update accordingly.
* gnu/system/vm.scm (expression->derivation-in-linux-vm,
  system-disk-image, virtualized-operating-system): Likewise.
2014-07-01 09:23:32 +02:00
Ludovic Courtès 4fc96187b9 linux-initrd: Disable QEMU networking by default.
* gnu/system/linux-initrd.scm (qemu-initrd): Remove default value for
  #:qemu-networking?.
* gnu/system/vm.scm (expression->derivation-in-linux-vm): Pass
  #:qemu-networking? #t.
  (system-disk-image): Remove #:qemu-networking? #f.
  (virtualized-operating-system): Pass #:qemu-networking? #t.
2014-07-01 09:23:32 +02:00
Ludovic Courtès 24e0160a4a linux-initrd: Make the virtio kernel modules optional.
* gnu/system/linux-initrd.scm (qemu-initrd): Add #:virtio? parameter.
  Use it.
* gnu/system/vm.scm (expression->derivation-in-linux-vm): Pass
  'qemu-initrd' #:virtio?.
  (virtualized-operating-system): Likewise.
2014-07-01 09:23:32 +02:00
Eric Bavier cafc3f5ad7 gnu: Add jrnl, python-pycrypto, python-keyring, python-parsedatetime, and python-tzlocal.
* gnu/packages/jrnl.scm: New file.
* gnu-system.am (GNU_SYSTEM_MODULES): Add it.
* gnu/packages/python.scm (python-pycrypto, python-keyring,
  python-dateutil-2, python-parsedatetime, python-tzlocal): New
  variables.
2014-06-30 11:26:42 -05:00
Eric Bavier 71639e1f17 guix: Add CC0 license.
* guix/licenses.scm (cc0): New variable.
2014-06-30 11:26:42 -05:00
Eric Bavier a480bc4157 gnu: Add behave, python-six, python-enum34, python-parse-type, and python-parse.
* gnu/packages/python.scm (python-six, python-enum34, python-parse-type,
  python-parse, behave): New variables.
2014-06-30 11:26:41 -05:00
John Darrington b804c61e6f gnu: Add goffice and gnumeric
gnu/packages/gnome.scm (goffice, gnumeric): New variables.
2014-06-30 13:34:22 +02:00
Ludovic Courtès 1ddbd9fd71 guix-register: Add explicit libgcrypt initialization.
* nix/guix-register/guix-register.cc (main): Add calls to
  'gcry_check_version' and 'gcry_control', to appease libgcrypt.
2014-06-29 23:53:18 +02:00
Ludovic Courtès 1abb614051 Add Cyrill to AUTHORS. 2014-06-29 22:38:38 +02:00
Cyrill Schenkel 009c5b5cdc gnu: Add ncmpcpp.
* gnu/packages/mpd.scm (ncmpcpp): New variable.

Signed-off-by: Ludovic Courtès <ludo@gnu.org>
2014-06-29 22:36:37 +02:00
Ludovic Courtès 081c5b2d66 services: udev: Make sure modules are found, and use "udevadm settle".
* gnu/services/base.scm (udev-service): Set $LINUX_MODULE_DIRECTORY.  In
  the parent, invoke "udevadm settle" before "udevadm trigger".
2014-06-29 22:06:29 +02:00
Ludovic Courtès 62f0a4792b system: Set $LINUX_MODULE_DIRECTORY as a function or /run/booted-system.
* gnu/system.scm (etc-directory): Remove #:kernel parameter.  Set
  LINUX_MODULE_DIRECTORY as a function or /run/booted-system.
  (operating-system-etc-directory): Update accordingly.
2014-06-29 22:02:42 +02:00
Ludovic Courtès 0918e64a49 doc: Improve wording and example in "Using the Configuration System".
* doc/guix.texi (Using the Configuration System): Make the intro more
  user-oriented.  Change example to return an operating system.  Fix
  typos.  Mention mandatory/optional fields.
2014-06-27 23:38:21 +02:00
Ludovic Courtès 5d69fb54fb gnu: guix: Use the development version by default.
* gnu/packages/package-management.scm (guix): Rename to...
  (guix-0.6): ... this.
  (guix-devel): Rename to...
  (guix): ... this.  Replace references to 'guix' by references to
  'guix-0.6'.
2014-06-27 23:38:19 +02:00
Ludovic Courtès 480af4d622 gnu: guix: Add development version.
* gnu/packages/package-management.scm (guix-devel): New variable.
2014-06-27 23:06:55 +02:00
Ludovic Courtès 6750877f46 git-download: Support recursive clones.
* guix/git-download.scm (<git-reference>)[recursive?]: New field.
  (git-fetch): Add 'inputs' variable.  Add it to the #:inputs argument
  of 'build-expression->derivation'.  Augment builder with call to
  'set-path-environment-variable', and pass #:recursive? to
  'git-fetch'.
* guix/build/git.scm (git-fetch): Add #:recursive? parameter.  Pass
  --recursive when RECURSIVE? is true, and delete all the '.git' files.
2014-06-27 23:04:48 +02:00
Ludovic Courtès 20b1d19e10 gnu: Adjust for (gnu packages image) merger.
* gnu/packages/aidc.scm: Use (gnu packages image).
2014-06-27 22:36:25 +02:00
Ludovic Courtès 459dd9eaf2 system: Add a 'system?' field to user accounts.
* gnu/system/shadow.scm (<user-account>)[system?]: New field.
* gnu/system.scm (user-account->gexp): Add it.
* guix/build/activation.scm (add-user): Add #:system? parameter and
  honor it.
  (activate-users+groups): Handle the 'system?' part of user tuples.
  Pass it to 'add-user'.  Don't create PROFILE-DIR when SYSTEM? is
  true.
* gnu/services/dbus.scm (dbus-service): Add 'system?' field for
  "messagebus" account.
* gnu/services/base.scm (guix-build-accounts): Likewise.
* gnu/services/avahi.scm (avahi-service): Likewise.
2014-06-27 19:06:08 +02:00
Ludovic Courtès f2c403eab6 system: Install /var/guix/profiles/system-1-link on new systems.
* guix/build/install.scm (directives): Add /var/guix/profiles/system.
  (populate-root-file-system): Add 'system' parameter.  Create
  /var/guix/profiles/system-1-link.
* guix/scripts/system.scm (install): Pass OS-DIR to
  'populate-root-file-system'.
* guix/build/vm.scm (initialize-root-partition): Add #:system-directory
  parameter, and pass it to 'populate-root-file-system'.
  (initialize-hard-disk): Add #:system-directory parameter, and pass it
  to 'initialize-root-partition'.
* gnu/system/vm.scm (qemu-image): Add #:os-derivation parameter and pass
  it to 'initialize-hard-disk'.
  (system-disk-image, system-qemu-image,
  system-qemu-image/shared-store): Pass #:os-derivation to 'qemu-image.
2014-06-27 19:06:08 +02:00
John Darrington dff624230a gnu: Add talkfilters.
* gnu/packages/games.scm (talkfilters): New variable.
2014-06-27 17:53:40 +02:00
John Darrington 51d3dcea42 gnu: Add qrencode.
* gnu/packages/aidc.scm (qrencode): New variable.
2014-06-27 17:53:40 +02:00
David Thompson e55354b87e gnu: Consolidate libjpeg, libpng, and libtiff into one module.
* gnu/packages/image.scm: New file.
* gnu-system.am (GNU_SYSTEM_MODULES): Add image.scm and remove libjpeg.scm,
  libpng.scm, and libtiff.scm.
* gnu/packages/libjpeg.scm, gnu/packages/libpng.scm, gnu/packages/libtiff.scm:
  Delete files.
* gnu/packages/emacs.scm gnu/packages/games.scm, gnu/packages/gd.scm,
  gnu/packages/geeqie.scm, gnu/packages/ghostscript.scm,
  gnu/packages/gimp.scm, gnu/packages/gnome.scm, gnu/packages/gnunet.scm,
  gnu/packages/gnustep.scm, gnu/packages/gnuzilla.scm,
  gnu/packages/graphviz.scm, gnu/packages/gtk.scm,
  gnu/packages/imagemagick.scm, gnu/packages/inkscape.scm,
  gnu/packages/netpbm.scm, gnu/packages/pdf.scm, gnu/packages/plotutils.scm,
  gnu/packages/qemu.scm, gnu/packages/qt.scm, gnu/packages/scheme.scm,
  gnu/packages/sdl.scm, gnu/packages/slim.scm, gnu/packages/tcl.scm,
  gnu/packages/texlive.scm, gnu/packages/video.scm, gnu/packages/xiph.scm,
  gnu/packages/xorg.scm: Use (gnu packages image) module.
2014-06-27 06:27:53 -04:00
David Thompson dc55b8b234 gnu: Enable libvpx support in ffmpeg.
* gnu/packages/video.scm (ffmpeg): Add libvpx input.
2014-06-27 06:22:49 -04:00
Ludovic Courtès 8a6d273137 system: Adjust the set of fields with default values.
* gnu/system.scm (<operating-system>)[file-systems]: Remove default.
  [locale]: Add default value.
2014-06-27 00:12:40 +02:00
Ludovic Courtès b25937e318 guix system: Add 'reconfigure' action.
* guix/scripts/system.scm (%system-profile): New variable.
  (switch-to-system, previous-grub-entries): New procedures.
  (unless-file-not-found): New macro.
  (show-help): Add 'reconfigure'.
  (guix-system): Handle it.
* gnu/system.scm: Export 'operating-system-activation-script'.
* doc/guix.texi (Invoking guix system): Document it.
2014-06-27 00:12:40 +02:00
Ludovic Courtès f01efec09a activation: Preserve /etc/groups upon reboots.
This is a followup to e2fcc23.  The /etc/group file would be cleared
when booting.

* guix/build/activation.scm (activate-users+groups)[touch]: Rewrite so
  it does not wipe out FILE's contents.
2014-06-27 00:12:40 +02:00
Ludovic Courtès c1202fb1f9 guix {system,offload}: Improve reporting of syntax errors.
* guix/scripts/system.scm (read-operating-system) <catch handler>: Add
  case for 'syntax-error'.  Correct message for default case.
* guix/scripts/offload.scm (build-machines) <catch handler>: Add case
  for 'syntax-error'.
* tests/guix-system.sh: New file.
* Makefile.am (SH_TESTS): Add it.
2014-06-27 00:12:40 +02:00
David Thompson 80b77646a4 gnu: Add libsodium.
* gnu-system.am (GNU_SYSTEM_MODULES): Add crypto.scm.
* gnu/packages/crypto.scm: New file.
2014-06-26 17:53:29 -04:00
David Thompson 7025a035df gnu: Add guile-opengl.
* gnu/packages/gl.scm (guile-opengl): New variable.
2014-06-26 17:52:44 -04:00
David Thompson d0ed39be55 gnu: Add libvpx.
* gnu/packages/video.scm (libvpx): New variable.
2014-06-26 17:51:40 -04:00
John Darrington 091befba64 gnu: Add new package barcode
* gnu/packages/aidc.scm: New file.
* gnu-system.am (GNU_SYSTEM_MODULES): Add it.
2014-06-26 19:49:09 +02:00