Commit Graph

3492 Commits

Author SHA1 Message Date
Ludovic Courtès 3485716fd9 install: Make /var/db and /mnt.
* guix/build/install.scm (directives): Add /var/db and /mnt.
2014-07-13 16:37:47 +02:00
Ludovic Courtès 8e42796bdc guix system: Convert to monadic style.
* guix/scripts/system.scm (references*, topologically-sorted*,
  show-what-to-build*): New procedures.
  (copy-closure): Turn into a monadic procedure.
  (install): Likewise, and adjust parameter list.
  (switch-to-system): Likewise.
  (system-derivation-for-action, grub.cfg, maybe-build, perform-action):
  New procedures.
  (guix-system): Use them.
2014-07-13 16:37:11 +02:00
Ludovic Courtès 66670cf39c vm: Add support for i686.
Partially fixes <http://bugs.gnu.org/18002>.
Reported by David Thompson <dthompson2@worcester.edu>.

* guix/build/vm.scm (qemu-command): Add optional 'system' parameter.
  Special-case "^i[3456]86$".
* gnu/system/vm.scm (system-qemu-image/shared-store-script): Use it.
2014-07-13 16:37:11 +02:00
John Darrington ae9cb418df gnu: Add chess and xboard.
* gnu/packages/games.scm (xboard, chess): New variables.
2014-07-13 16:04:34 +02:00
Ludovic Courtès 927097effd services: Add Tor service.
* gnu/services/networking.scm (tor-service): New procedure.
* doc/guix.texi (Networking Services): Document it.
* build-aux/hydra/demo-os.scm: Use it.  Add TOR and TORSOCKS to
  'packages'.
2014-07-12 23:17:54 +02:00
Ludovic Courtès 8897603ad0 services: networking: Set interfaces up; delete default route only when needed.
* gnu/services/networking.scm (static-networking-service): Use -i, -A,
  and --up with Inetutils' ifconfig.  Do 'route del -net default' only
  when GATEWAY is true.
2014-07-12 23:17:54 +02:00
Ludovic Courtès 89a0d00a38 system: Add 'which' to the base packages.
* gnu/system.scm (%base-packages): Add WHICH.
2014-07-12 23:17:54 +02:00
Ludovic Courtès 4a3b3b073a services: Provide a 'loopback' service by default.
* gnu/services/networking.scm (static-networking-service): Add
  #:provision parameter; use it.
* gnu/services/base.scm (%base-services): Call
  'static-networking-service' for "lo".
2014-07-12 23:17:53 +02:00
Ludovic Courtès f111b327a9 system: Remove erroneous system binding in profile maker.
Partly fixes <http://bugs.gnu.org/18002>.
Reported by David Thompson <dthompson2@worcester.edu>.

* gnu/system.scm (union): Remove #:system parameter, which was unused.
2014-07-12 23:17:53 +02:00
Ludovic Courtès 5d0984595c gexp: Resolve the default system at '>>=' time.
Partly fixes <http://bugs.gnu.org/18002>.
Reported by David Thompson <dthompson2@worcester.edu>.

* guix/gexp.scm (gexp->derivation): Change #:system to default #f.
  Use (%current-system) from within the 'mlet*'.
* tests/gexp.scm ("gexp->derivation, default system"): New test.
2014-07-12 23:17:53 +02:00
Ludovic Courtès f62435e286 monads: Fix 'mapm' so that effects happen from left to right.
* guix/monads.scm (mapm): Don't reverse LST, so that items are processed
  from left to right.  Bind the result of 'foldm' and reverse it.
* tests/monads.scm ("sequence"): Change 'frob' so it performs its side
  effect within an 'mlet' body.  Adjust call accordingly.
2014-07-12 23:17:53 +02:00
John Darrington c2150d9ace gnu: Add links.
* gnu-system.am (GNU_SYSTEM_MODULES): Add new file.
* gnu/packages/links.scm: New file.
2014-07-12 06:44:26 +02:00
Ludovic Courtès ef5dd60a3f doc: Start writing about services.
* doc/guix.texi (Using the Configuration System): Remove details about
  '%base-services', and link to "Services".
  (Services): Add introductory text.
  (Base Services, Networking Services, X Window): New nodes.
2014-07-11 23:20:48 +02:00
Ludovic Courtès 51da7ca095 services: Use more Texinfo markup in docstrings.
* gnu/services/base.scm (host-name-service): Use Texinfo markup.
  (mingetty-service): Comment on #:allow-empty-passwords?.  Improve
  markup.
  (syslog-service, guix-service): Use Texinfo markup.
* gnu/services/networking.scm (static-networking-service): Likewise.
* gnu/services/xorg.scm (slim-service): Likewise.
2014-07-11 23:20:48 +02:00
Ludovic Courtès da417ffe3b system: Allow root to use 'groupadd' & co. without authenticating.
This fixes a bug whereby, if #:allow-root-passwords was #f, 'groupadd'
would ask for a password.  This is particularly problematic during
activation.

* gnu/system/linux.scm (rootok-pam-service): New procedure.
  (base-pam-services): Use it for all the user* and group* commands.
2014-07-11 23:20:48 +02:00
Ludovic Courtès f109696473 packages: Add printer for <origin>.
* guix/packages.scm (print-origin): New procedure.
  (<origin>): Add it as record type printer.
2014-07-11 23:20:48 +02:00
Eric Bavier 42e1394b11 gnu: texlive: Upgrade to 2014.
* gnu/packages/texlive.scm (texlive-extra-src, texlive-texmf-src,
  texlive): Upgrade to 2014.
  (texlive)[arguments]: Remove 'patch-perl-shebang' phase.
2014-07-11 10:58:56 -05:00
David Thompson 361046f7eb gnu: Add fish.
* gnu/packages/fish.scm: New file.
* gnu-system.am (GNU_SYSTEM_MODULES): Add it.
2014-07-11 08:11:07 -04:00
Ludovic Courtès 715956cc26 system: Add "netdev" group.
* gnu/system/shadow.scm (%base-groups): Add "netdev".
2014-07-11 00:27:27 +02:00
Ludovic Courtès cda3d81ea8 gnu: linux-libre: Remove '--strip-all' argument.
* gnu/packages/linux.scm (linux-libre)[arguments]: Remove
  #:strip-flags, which led to unloadable modules.  This reverts
  commit 9ca7eaa1.
  [build-phase]: Add INSTALL_MOD_STRIP=1.
2014-07-11 00:26:27 +02:00
Eric Bavier ca9ea1a849 gnu: glib: Fix build on i686.
* gnu/packages/patches/glib-tests-timer.patch: New patch.
* gnu-system.am (dist_patch_DATA): Add it.
* gnu/packages/glib.scm: Use it.
2014-07-10 17:03:42 -05:00
Eric Bavier 8360758d5c gnu: Remove overlooked patch.
* gnu-system.am (dist_patch_DATA): Remove patch deleted previously.
2014-07-10 16:43:17 -05:00
Ludovic Courtès 501de668f1 gnu: Add VTK.
* gnu/packages/vtk.scm: New file.
* gnu-system.am (GNU_SYSTEM_MODULES): Add it.
2014-07-10 21:34:07 +02:00
Ludovic Courtès a6eb1a95d6 gnu: plotutils: Propagate libXaw.
* gnu/packages/plotutils.scm (plotutils): Move LIBXAW to from 'inputs'
  to 'propagated-inputs'.
2014-07-10 13:05:47 +02:00
Ludovic Courtès 1650dd8a38 gnu: linux-libre: Fallback to 'defconfig' when there's no config file.
* gnu/packages/linux.scm (kernel-config): Return #f rather than error
  out in the default case.
  (linux-libre)[native-inputs]: Add "kconfig" input only when
  'kernel-config' returns true.
  [build-phase]: Adjust accordingly.
2014-07-10 13:03:46 +02:00
Ludovic Courtès 9ca7eaa134 gnu: linux-libre: Strip everything with '--strip-all'.
* gnu/packages/linux.scm (linux-libre)[arguments]: Add #:strip-flags.
2014-07-10 00:35:27 +02:00
Ludovic Courtès a94546ecc4 gnu: linux-libre: Add i686 and x86_64 full-blown configs.
Thanks to Jason Self <jself@gnu.org> for the kernel configs.

* gnu/packages/linux.scm (kernel-config): New procedure.
  (linux-libre)[build-phase]: Copy it to .config.  Reduce the list of
  things appended to .config.
  [native-inputs]: Add "kconfig" input.
* gnu/packages/linux-libre-i686.conf,
  gnu/packages/linux-libre-x86_64.conf: New files, from
  <http://jxself.org/x86-32.txt> and <http://jxself.org/x86-64.txt>.
* Makefile.am (KCONFIGS): New variable.
  (nobase_dist_guilemodule_DATA): Add it.
2014-07-10 00:35:27 +02:00
Ludovic Courtès ed09bb11cd services: udev: Improve synchronization when starting.
* gnu/services/base.scm (udev-service)[start]: Add 'wait-for-udevd', and
  call it before running 'udevadm trigger'.  Pass --action=add to
  'udevadm trigger'.  Call 'udevadm settle' after 'udevadm trigger'.
2014-07-10 00:35:27 +02:00
Ludovic Courtès 971436c6bd services: xorg: Remove optional sections from xorg.conf.
* gnu/services/xorg.scm (xorg-start-command)[xserver.conf]: Remove
  sections "Monitor", "InputClass", "ServerLayout", "Device", and
  "Screen".
2014-07-10 00:35:27 +02:00
Ludovic Courtès 8dbab7125a services: xorg: Require 'udev'.
* gnu/services/xorg.scm: Add 'udev' to the 'requirement' field.
2014-07-10 00:35:27 +02:00
Ludovic Courtès 0adb027b27 services: xorg: Add drivers to the default search path.
* gnu/services/xorg.scm (xorg-start-command)[xserver.conf]: Add
  'ModulePath' entries for xf86-video-{fbdev,cirrus,intel,mach64,nv} and
  xf86-input-{synaptics,vmmouse}.
2014-07-10 00:35:27 +02:00
Ludovic Courtès 378377eb43 services: xorg: Fix typo in font path.
* gnu/services/xorg.scm (xorg-start-command)[xserver.conf]: Fix typo in
  font path.
2014-07-10 00:35:27 +02:00
John Darrington 8fd3de0bbb gnu: Add sipwitch and dependent packages
* gnu-system.am (GNU_SYSTEM_MODULES): Add new file.
* gnu/packages/telephony.scm: New file.
2014-07-09 18:21:41 +02:00
Ludovic Courtès df2ce34385 guix system: Add '--system' option.
* guix/scripts/system.scm (switch-to-system): Add #:system parameter;
  pass it to 'run-with-store'.
  (%options): Add '--system'.
  (guix-system): Pass the 'system' option to 'run-with-store',
  'package-derivation', and 'switch-to-system' calls.
* doc/guix.texi (Invoking guix system): Document '--system' and
  '--image-size'.
2014-07-08 23:42:35 +02:00
Cyrill Schenkel 35dbbbe04c gnu: Add conkeror.
* gnu-system.am (GNU_SYSTEM_MODULES): Add new package.
* gnu/packages/conkeror.scm: New file.

Signed-off-by: Ludovic Courtès <ludo@gnu.org>
2014-07-08 17:57:32 +02:00
Mark H Weaver 3263b9b396 gnu: tor: Upgrade to 0.2.4.22.
* gnu/packages/tor.scm (tor): Upgrade to 0.2.4.22.
2014-07-08 09:12:50 -04:00
Ludovic Courtès 1c6b445b40 services: Update to use the dmd 0.2 API.
* gnu/services/avahi.scm (avahi-service)[start]: Wrap command in a
  list.
* gnu/services/dbus.scm (dbus-service)[start]: Likewise.
* gnu/services/ssh.scm (lsh-service): Likewise.
* gnu/services/base.scm (mingetty-service)[start]: Likewise.
  (nscd-service)[start]: Likewise.
  (syslog-service)[start]: Likewise.
  (guix-service)[start]: Likewise.
  (udev-service)[start]: Use 'exec-command' instead of 'execl'.
* gnu/services/xorg.scm (slim-service)[start]: Likewise, and use
  #:environment-variables.
2014-07-08 00:12:31 +02:00
Ludovic Courtès b3342b545a gnu: dmd: Update to 0.2.
* gnu/packages/admin.scm (dmd): Update to 0.2; remove 'patches'.
* gnu/packages/patches/dmd-getpw.patch,
  gnu/packages/patches/dmd-tests-longer-sleeps.patch: Remove.
* gnu-system.am (dist_patch_DATA): Adjust accordingly.
2014-07-08 00:12:30 +02:00
Ludovic Courtès ac47a7c240 gnu: linux-libre: Use the GNU + Freedo boot logo.
* gnu/packages/linux.scm (%boot-logo-patch): New variable.
  (linux-libre)[build-phase]: Apply it.
  [native-inputs]: Add it.
2014-07-08 00:12:30 +02:00
Mark H Weaver fa40e4d4ec gnu: bitlbee: Upgrade to 3.2.2.
* gnu/packages/messaging.scm (bitlbee): Upgrade to 3.2.2.  Remove patches.
  Use 'libotr' instead of 'libotr-3'.
* gnu/packages/patches/bitlbee-fix-tests.patch: Remove file.
* gnu/packages/patches/bitlbee-memset-fix.patch: Remove file.
* gnu-system.am (dist_patch_DATA): Remove patches.
2014-07-07 17:17:18 -04:00
Ludovic Courtès 59c51be290 build: Get the canonical $HOME name when testing 'guix package'.
* tests/guix-package.sh (HOME): Recompute using 'pwd -P'.
2014-07-06 21:26:11 +02:00
Ludovic Courtès 6171070bec build: Use the canonical srcdir/builddir in 'pre-inst-env'.
Fixes <http://bugs.gnu.org/17935>.

* pre-inst-env.in (abs_top_builddir, abs_top_srcdir): Use 'pwd -P'.
2014-07-06 19:13:12 +02:00
Ludovic Courtès c2d7747464 build: Remove empty element from $GUILE_LOAD_PATH.
* pre-inst-env.in (GUILE_LOAD_PATH): Remove extraneous colon.
2014-07-06 19:08:54 +02:00
Ludovic Courtès 8ee380ba3d gnu: gnupg: Update to 2.0.25 and 1.4.18.
* gnu/packages/gnupg.scm (gnupg): Update to 2.0.25.
  (gnupg-1): Update to 1.4.18.
2014-07-05 19:51:43 +02:00
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