Commit Graph

8648 Commits (80a67734834a0981ca65cf1757a7d8408d02f1fd)

Author SHA1 Message Date
Ludovic Courtès 80a6773483 services: Add 'dmd-service-back-edges'.
* gnu/services/dmd.scm (dmd-service-back-edges): New procedure.
* tests/services.scm ("dmd-service-back-edges"): New test.
2015-10-14 21:39:06 +02:00
Ludovic Courtès c5d735f798 services: Prefix <dmd-service> accessors with 'dmd-'.
* gnu/services/dmd.scm (<dmd-service>): Prefix accessor identifiers with
  'dmd-', as was intended.  Update users accordingly.
2015-10-14 21:39:06 +02:00
Ludovic Courtès d6c3267a32 guix system: Add 'extension-graph' command.
* guix/scripts/system.scm (service-node-label, service-node-type,
  export-extension-graph): New procedures.
  (guix-system)[parse-sub-command]: Add 'extension-graph'.
  Honor it.
  (show-help): Add 'extension-graph'.
* doc/guix.texi (Invoking guix system): Document it.
  (Service Composition): Add cross-reference.
2015-10-14 21:39:05 +02:00
Ludovic Courtès a64cd7b65f graph: 'export-graph' takes a #:reverse-edges? parameter.
* guix/scripts/graph.scm (export-graph): Add #:reverse-edges? parameter
  and honor it.
2015-10-14 21:39:05 +02:00
Ludovic Courtès 00184239c3 services: 'dmd-service-type' takes a service name.
* gnu/services/dmd.scm (dmd-service-type): Add 'service-name'
  parameter.
* gnu/services/base.scm, gnu/services/networking.scm,
  gnu/system/install.scm: Adjust callers.
2015-10-14 21:39:05 +02:00
Ludovic Courtès 5152d13b51 services: Export 'service-back-edges'.
* gnu/services.scm: Export 'service-back-edges' and <service-type>
  accessors.
* tests/services.scm ("service-back-edges"): New test.
2015-10-14 21:39:05 +02:00
Ludovic Courtès 87cd0dba2f build-system/gnu: dist-package: Use 'autoconf-wrapper'.
* guix/build-system/gnu.scm (dist-package): Use AUTOCONF-WRAPPER instead
  of AUTOCONF.
2015-10-14 21:39:05 +02:00
Ludovic Courtès a6785b96ff hydra: Add Graphviz and help2man as inputs to the Guix job set.
* build-aux/hydra/guix.scm (tarball-package): Add GRAPHVIZ and HELP2MAN
  to 'native-inputs' of GUIX.
2015-10-14 21:39:05 +02:00
Ben Woodcroft d9c44e9c6a gnu: diamond: Restrict supported systems to x86_64-linux.
* gnu/packages/bioinformatics.scm (diamond) [supported-systems]: Restrict to
  x86_64-linux.
2015-10-14 20:02:25 +03:00
Alex Kost 6159943851 gnu: abbaye: Use 'sdl-union'.
* gnu/packages/games.scm (abbaye)[inputs]: Use 'sdl-union'.
  [arguments]: Adjust 'set-sdl-paths' phase accordingly.
2015-10-14 19:20:59 +03:00
Alex Kost 17fa842b79 emacs: devel: Add indentation rules.
Suggested by Ludovic Courtès <ludo@gnu.org>.

* emacs/guix-devel.el: Add indentation rules for Guix macros/procedures.
  (guix-devel-scheme-indent): New macro.
  (guix-devel-indent-package): New function.
2015-10-14 19:20:28 +03:00
Mark H Weaver 9f7ae77fe2 gnu: icecat: Update to 38.3.0-gnu1.
* gnu/packages/patches/icecat-CVE-2015-4473-partial.patch,
  gnu/packages/patches/icecat-CVE-2015-4482.patch,
  gnu/packages/patches/icecat-CVE-2015-4488.patch,
  gnu/packages/patches/icecat-CVE-2015-4489.patch,
  gnu/packages/patches/icecat-CVE-2015-4491.patch,
  gnu/packages/patches/icecat-CVE-2015-4492.patch,
  gnu/packages/patches/icecat-CVE-2015-4495.patch,
  gnu/packages/patches/icecat-enable-acceleration-and-webgl.patch,
  gnu/packages/patches/icecat-libvpx-1.4.patch: Delete files.
* gnu/packages/patches/icecat-avoid-bundled-includes.patch: New file.
* gnu-system.am (dist_patch_DATA): Add new patch.  Remove the deleted ones.
* gnu/packages/gnuzilla.scm (icecat): Update to 38.3.0-gnu1.
  [source]: Add new patch.  Remove the deleted ones.
  [inputs]: Add libxcomposite.
  [arguments]: Add 'ensure-no-mtimes-pre-1980' phase.  Adapt
  'remove-h264parse-from-blacklist' and
  'arrange-to-link-libxul-with-libraries-it-might-dlopen' phases to the
  new version.
2015-10-14 01:41:56 -04:00
Alex Kost 837294b7a4 gnu: geiser: Update to 0.8.1.
* gnu/packages/emacs.scm (geiser): Update to 0.8.1.
2015-10-13 22:30:07 +03:00
Ricardo Wurmus 5ff6575b08 gnu: python-rpy2: Add "zlib" to native-inputs.
* gnu/packages/python.scm (python-rpy2)[native-inputs]: Add "zlib".
2015-10-13 17:36:47 +02:00
Ricardo Wurmus ba8a082493 gnu: python-scipy, python2-scipy: Update to 0.16.0.
* gnu/packages/python.scm (python-scipy, python2-scipy): Update to
  0.16.0.
2015-10-13 16:36:40 +02:00
Ricardo Wurmus dd86c0d10c gnu: python-scipy, python2-scipy: Propagate Python inputs.
* gnu/packages/python.scm (python-scipy)[inputs]: Move "python-numpy",
  "python-matplotlib", and "python-pyparsing" to propagated-inputs; move
  "python-nose" and "python-sphinx" to native-inputs.
  [propagated-inputs]: New field.
  [native-inputs]: Move "python-nose" and "python-sphinx" from inputs
  field here.
  (python2-scipy): Modify propagated-inputs instead of inputs field.
2015-10-13 16:35:48 +02:00
Ricardo Wurmus 331a1cd727 gnu: icedtea6: Update to 1.13.8.
* gnu/packages/java.scm (icedtea6): Update to 1.13.8.
2015-10-13 13:45:51 +02:00
Ricardo Wurmus d4bf4c8f3e gnu: icedtea6: Replace "ant-bootstrap" with "ant".
* gnu/packages/java.scm (icedtea6)[native-inputs]: Replace
  "ant-bootstrap" with "ant".
  [arguments]: Remove steps to unpack and use "ant-bootstrap".
  (icedtea7)[native-inputs]: Remove explicit references to
  "ant-bootstrap" and "ant".
2015-10-13 13:45:51 +02:00
Ricardo Wurmus 60eb5614d1 gnu: ant: Build with GCJ.
* gnu/packages/java.scm (ant)[native-inputs]: Replace "icedtea6" with
  "gcj".
2015-10-13 13:45:51 +02:00
Ricardo Wurmus 397dbde8ff gnu: gcj-4.8, gcj: Update to default GCC version.
* gnu/packages/gcc.scm (gcj-4.8): Inherit from "gcc" package and rename
  variable to...
  (gcj): ...this new variable.
  (ecj-bootstrap-4.8): Rename variable to...
  (ecj-bootstrap): ...this, updating to version 4.9.
* gnu/packages/java.scm (icedtea6)[native-inputs]: Replace "gcj-4.8"
  with "gcj".
* gnu/packages/music.scm (tuxguitar)[native-inputs]: Likewise.
2015-10-13 13:45:51 +02:00
Alex Kost aec05972ce gnu: abbaye: Use 'modify-phases'.
* gnu/packages/games.scm (abbaye)[arguments]: Use 'modify-phases'.
2015-10-13 13:29:11 +03:00
Alex Kost 2e2ed3cbf9 gnu: Add manaplus.
* gnu/packages/games.scm (manaplus): New variable.
2015-10-13 13:29:11 +03:00
Ludovic Courtès b3e2a5af9f build-system/python: Memoize the results of 'package-with-python2'.
Fixes <http://bugs.gnu.org/21675>.
Reported by Cyril Roelandt <tipecaml@gmail.com>.

Before this change, the command:

  guix build python2-oslo.utils -n --no-substitutes

would take 17.5s.  After, it is down to 2.9s.
Likewise, the command:

  guix graph python2-bandit | grep python2-setuptools.*Helve| wc -l

would return 412 nodes before, all functionally equivalent, and returns
a single one now.

* guix/build-system/python.scm (package-with-explicit-python): Remove
  'p' parameter.  Change to return a one-argument memoizing procedure.
  (package-with-python2): Adjust accordingly.
2015-10-13 00:06:11 +02:00
Ludovic Courtès c80f1559eb hydra: Update demo OS to new service interface.
* build-aux/hydra/demo-os.scm: Import (gnu services dbus); remove
  arguments to 'dbus-service'.
2015-10-13 00:06:11 +02:00
Ludovic Courtès cc9c1f3935 doc: Update "Name Service Switch" to new service framework.
* gnu/services/avahi.scm (avahi-service): Mention the extension of
  nscd.
* doc/guix.texi (Networking Services): Update accordingly.
  (Name Service Switch): Remove '%my-base-services' example and
  explanation.
2015-10-13 00:06:11 +02:00
David Thompson 92e75d1e9a gnu: geiser: Update to 0.8.
* gnu/packages/emacs.scm (geiser): Update to 0.8.
2015-10-12 16:46:54 -04:00
Ludovic Courtès adc90e0eac Merge branch 'core-updates' 2015-10-12 21:42:06 +02:00
Ricardo Wurmus a8bc747ae1 gnu: lilypond: Hardcode path to "gs" executable.
* gnu/packages/music.scm (lilypond)[arguments]: Add build phase
  "hardcode-path-to-gs".
2015-10-12 21:31:54 +02:00
Ricardo Wurmus 2b10eb489c gnu: Add python-traitlets.
* gnu/packages/python.scm (python-traitlets, python2-traitlets): New
  variables.
2015-10-12 16:08:18 +02:00
Ricardo Wurmus ddc7d8ed18 gnu: Add python-ipython-genutils.
* gnu/packages/python.scm (python-ipython-genutils,
  python2-ipython-genutils): New variables.
2015-10-12 16:08:18 +02:00
Ricardo Wurmus cd6e5189c8 gnu: Add python-simplegeneric.
* gnu/packages/python.scm (python-simplegeneric, python2-simplegeneric):
  New variables.
2015-10-12 16:08:18 +02:00
Ricardo Wurmus 0d34e01b62 gnu: Add python-pickleshare.
* gnu/packages/python.scm (python-pickleshare, python2-pickleshare): New
  variables.
2015-10-12 16:08:18 +02:00
Ricardo Wurmus b74270eedb gnu: Add python-pathpy.
* gnu/packages/python.scm (python-pathpy, python2-pathpy): New
  variables.
2015-10-12 16:08:18 +02:00
Ricardo Wurmus 6784f2e3fe gnu: Add python-pytest-runner.
* gnu/packages/python.scm (python-pytest-runner, python2-pytest-runner):
  New variables.
2015-10-12 16:08:18 +02:00
Ricardo Wurmus 229ad120d4 gnu: Add python-setuptools-scm.
* gnu/packages/python.scm (python-setuptools-scm,
  python2-setuptools-scm): New variables.
2015-10-12 16:08:18 +02:00
Ricardo Wurmus cb6d5c5468 gnu: Add python-pexpect.
* gnu/packages/python.scm (python-pexpect, python2-pexpect): New
  variables.
2015-10-12 16:08:18 +02:00
Ricardo Wurmus db94f8c734 gnu: bwa: Disable on non-x86_64.
* gnu/packages/bioinformatics.scm (bwa)[supported-systems]: Add field.
2015-10-12 15:50:33 +02:00
Alex Kost 40e94665d4 gnu: sdl-union: Wrap into a procedure and export it.
Suggested by Ludovic Courtès <ludo@gnu.org>.

* gnu/packages/sdl.scm (sdl-union): Make it a procedure returning
  'sdl-union' package.
  (guile-sdl): Use it.
2015-10-12 11:31:01 +03:00
Alex Kost 0f6139b1b5 gnu: Add physfs.
* gnu/packages/game-development.scm (physfs): New variable.
2015-10-12 11:00:59 +03:00
Alex Kost ad8b83bda0 emacs: Add 'guix-devel-build-package-source'.
Suggested by Ludovic Courtès <ludo@gnu.org>.

* guix/scripts.scm (build-package-source): New procedure.
* emacs/guix-devel.el (guix-devel-build-package-source): New command.
  (guix-devel-keys-map): Add key binding for it.
* doc/emacs.texi (Emacs Development): Document it.
2015-10-12 10:59:31 +03:00
Christopher Allan Webber 9d373377c9 gnu: guile: Add guile-wisp.
* gnu/packages/guile.scm (guile-wisp): New variable.
2015-10-11 21:30:12 -04:00
Ludovic Courtès 7f39e181df services: polkit: Use the right executable name for PAM.
* gnu/services/desktop.scm (%polkit-pam-services): Change "polkit-1" to
  "polkitd", which is the actual name of the executable.
2015-10-11 22:28:10 +02:00
Ludovic Courtès 2da4f2dd8e services: upower: Remove unused "upower" account.
* gnu/services/desktop.scm (%upower-accounts): Remove.
  (%upower-activation): Remove references to the "upower" account.
  (upower-service-type): Remove extension of ACCOUNT-SERVICE-TYPE.
2015-10-11 22:28:10 +02:00
Ricardo Wurmus c23c50c734 gnu: Add MARS.
* gnu/packages/games.scm (mars): New variable.
* gnu/packages/patches/mars-install.patch: New file.
* gnu/packages/patches/mars-sfml-2.3.patch: New file.
* gnu-system.am (dist_patch_DATA): Add them.
2015-10-11 15:52:59 +02:00
Alex Kost eb52419266 doc: Fix typo.
* doc/guix.texi (Defining Services): Fix typo.
2015-10-11 12:18:54 +03:00
宋文武 f18bd3f64c gnu: wicd: Install 'index.theme' file in the right place.
This is a followup to 800d8d.

* gnu/packages/wicd.scm (wicd)[arguments]: Install a copy of 'index.theme'
  from 'hicolor-icon-theme' into $out/share/icons/hicolor.
2015-10-11 09:56:56 +08:00
Mark H Weaver ed01970389 gnu: gnupg: Update to 2.1.9.
* gnu/packages/gnupg.scm (gnupg): Update to 2.1.9.
2015-10-10 17:17:16 -04:00
Ludovic Courtès 0adfe95a3e services: Introduce extensible services.
This patch rewrites GuixSD services to make them extensible.

* gnu-system.am (GNU_SYSTEM_MODULES): Add gnu/services/dbus.scm.
* gnu/services.scm (<service>): Replace with new record type.
  (<service-extension>, <service-type>): New record types.
  (write-service-type, compute-boot-script, second-argument): New
  procedures.
  (%boot-service, boot-service-type): New variables.
  (file-union, directory-union, modprobe-wrapper,
  activation-service->script, activation-script,
  gexps->activation-gexp): New procedures.
  (activation-service-type, %activation-service): New variables.
  (etc-directory, files->etc-directory, etc-service): New procedures.
  (etc-service-type, setuid-program-service, firmware-service-type): New
  variables.
  (firmware->activation-gexp): New procedure.
  (&service-error, &missing-target-service-error,
  &ambiguous-target-service-error): New condition types.
  (service-back-edges, fold-services): New procedures.
* gnu/services/avahi.scm (<avahi-configuration>): New record type.
  (configuration-file): Replace keyword parameters with a single
  'config' parameter.
  (%avahi-accounts, %avahi-activation, avahi-service-type): New
  variables.
  (avahi-dmd-service): New procedure.
  (avahi-service): Rewrite using 'service' and 'avahi-configuration'.
* gnu/services/base.scm (%root-file-system-dmd-service,
  root-file-system-service-type): New variables.
  (root-file-system-service): Use them.
  (file-system->dmd-service-name): New procedure.
  (file-system-service-type): New variable.
  (file-system-service): Use it.  Replace keyword parameters with a
  single 'file-system' object.
  (user-unmount-service-type): New variable.
  (user-unmount-service): Use it.
  (user-processes-service-type): New variable.
  (user-processes-service): Use it.
  (host-name-service-type): New variable.
  (host-name-service): Use it.
  (console-keymap-service-type): New variable.
  (console-keymap-service): Use it.
  (console-font-service-type): New variable.
  (console-font-service): Use it.
  (mingetty-pam-service, mingetty-dmd-service): New procedures.
  (mingetty-service-type): New variable.
  (mingetty-service): Use it.
  (nscd-dmd-service): New procedure.
  (nscd-activation, nscd-service-type): New variables.
  (nscd-service): Use the latter.
  (syslog-service-type): New variable.
  (syslog-service): Use it.
  (<guix-configuration>): New record type.
  (%default-guix-configuration): New variable.
  (guix-dmd-service, guix-accounts, guix-activation): New procedures.
  (guix-service-type): New variable.
  (guix-service): Replace list of keyword parameters with a single
  'config' parameter.  Rewrite using 'service'.
  (<udev-configuration>): New record type.
  (udev-dmd-service): New procedure.
  (udev-service-type): New variable.
  (udev-service): Use it.
  (device-mapping-service-type): New variable.
  (device-mapping-service): Use it.
  (swap-service-type): New variable.
  (swap-service): Use it.
* gnu/services/databases.scm (<postgresql-configuration>): New record
  type.
  (%postgresql-accounts, postgresql-activation): New variables.
  (postgresql-dmd-service): New procedure.
  (postgresql-service): Rewrite using 'service' and
  'postgresql-configuration'.
* gnu/services/dbus.scm: New file.
* gnu/services/desktop.scm (dbus-configuration-directory, dbus-service):
  Remove.
  (wrapped-dbus-service): New procedure.
  (<upower-configuration>): New record type.
  (upower-configuration-file): Replace keyword parameters with single
  <upower-configuration> parameter.
  (%upower-accounts, %upower-activation): New variables.
  (upower-dbus-service, upower-dmd-service): New procedures.
  (upower-service-type): New variable.
  (upower-service): Rewrite using 'service' and 'upower-configuration'.
  (%colord-activation, %colord-accounts): New variables.
  (colord-dmd-service): New procedure.
  (colord-service-type): New variable.
  (colord-service): Rewrite using 'service'.
  (<geoclue-configuration>): New record type.
  (geoclue-configuration-file): Replace keyword parameters with a single
  'config' parameter.
  (geoclue-dbus-service, geoclue-dmd-service): New procedures.
  (%geoclue-accounts, geoclue-service-type): New variables.
  (geoclue-service): Rewrite using 'service' and
  'geoclue-configuration'.
  (%polkit-accounts, %polkit-pam-services, polkit-service-type): New
  variables.
  (polkit-dmd-service): New procedure.
  (polkit-service): Rewrite using 'service'.
  (<elogind-configuration>)[elogind]: New field.
  (elogind-dmd-service): New procedure.
  (elogind-service-type): New variable.
  (elogind-service): Rewrite using 'service'.
  (%desktop-services): Remove argument to 'dbus-service'.  Remove 'map'
  over %BASE-SERVICES.
* gnu/services/dmd.scm (dmd-boot-gexp): New procedure.
  (dmd-root-service-type, %dmd-root-service): New variables.
  (dmd-service-type): New macro.
  (<dmd-service>): New record type.
* gnu/services/lirc.scm (<lirc-configuration>): New record type.
  (%lirc-activation): New variable.
  (lirc-dmd-service): New procedure.
  (lirc-service-type): New variable.
  (lirc-service): Rewrite using 'service' and 'lirc-configuration'.
* gnu/services/networking.scm (<static-networking>): New record type.
  (static-networking-service-type): New variable.
  (static-networking-service): Rewrite using 'service' and
  'static-networking'.
  (dhcp-client-service-type): New variable.
  (dhcp-client-service): Rewrite using 'service'.
  (<ntp-configuration>): New record type.
  (ntp-dmd-service): New procedure.
  (ntp-service-type): New variable.
  (ntp-service): New procedure.
  (%tor-accounts, tor-service-type): New variable.
  (tor-dmd-service): New procedure.
  (tor-service): Rewrite using 'service'.
  (<bitlbee-configuration>): New record type.
  (bitlbee-dmd-service): New procedure.
  (%bitlbee-accounts, %bitlbee-activation, bitlbee-service-type): New
  variables.
  (bitlbee-service): Rewrite using 'service'.
  (%wicd-activation): New variable.
  (wicd-dmd-service): New procedure.
  (wicd-service-type): New variable.
  (wicd-service): Rewrite using 'service'.
* gnu/services/ssh.scm (<lsh-configuration>): New record type.
  (activation): Rename to...
  (lsh-initialization): ... this.
  (lsh-activation, lsh-dmd-service, lsh-pam-services): New procedures.
  (lsh-service-type): New variable.
  (lsh-service): Rewrite using 'service' and 'lsh-configuration'.
* gnu/services/web.scm (<nginx-configuration>): New record type.
  (%nginx-accounts): New variable.
  (nginx-activation, nginx-dmd-service): New procedures.
  (nginx-service-type): New variable.
  (nginx-service): Rewrite using 'service' and 'nginx-configuration'.
* gnu/services/xorg.scm (<slim-configuration>): New record type.
  (slim-pam-service, slim-dmd-service): New procedures.
  (slim-service-type): New variable.
  (slim-service): Rewrite using 'service' and 'slim-configuration'.
* gnu/system.scm (file-union): Remove.
  (other-file-system-services): Adjust to new 'file-system-service'
  signature.
  (essential-services): Add #:container? parameter.  Add
  %DMD-ROOT-SERVICE, %ACTIVATION-SERVICE, and calls to
  'pam-root-service', 'account-service', 'operating-system-etc-service',
  and a SETUID-PROGRAM-SERVICE instance.
  (operating-system-services): Pass #:container? to 'essential-services.
  (etc-directory): Remove.
  (operating-system-etc-service): New procedure.  Rewrite as a call to
  'etc-service'.
  (operating-system-accounts): Change to not return accounts required by
  services.
  (operating-system-etc-directory): Rewrite as a call to 'fold-services'
  and 'etc-directory'.
  (user-group->gexp, user-account->gexp, modprobe-wrapper): Remove.
  (operating-system-activation-script): Rewrite as a call to
  'fold-services' and 'activation-service->script'.
  (operating-system-boot-script): Likewise.
  (operating-system-derivation): Add call to 'lower-object'.
  (emacs-site-file, emacs-site-directory, shells-file): Change to use
  'computed-file' and 'scheme-file' instead of the monadic procedures.
* gnu/system/install.scm (cow-store-service-type): New variable.
  (cow-store-service): Rewrite using 'service'.
  (/etc/configuration-files): New procedure.
  (configuration-template-service-type,
  %configuration-template-service): New variables.
  (configuration-template-service): Remove.
  (installation-services): Adjust accordingly.  Adjust argument to
  'guix-service'.
* gnu/system/linux.scm (/etc-entry, pam-root-service): New procedures.
  (pam-root-service-type): New variable.
* gnu/system/shadow.scm (user-group->gexp, user-account->gexp,
  account-activation, etc-skel, account-service): New procedures.
  (account-service-type): New variable.
* tests/services.scm: New file.
* doc/guix.texi (Base Services, Desktop Services): Adjust accordingly.
  (Defining Services): Rewrite.
* doc/images/service-graph.dot: New file.
* doc.am (DOT_FILES): Add it.
* po/guix/POTFILES.in: Add gnu/services.scm.
2015-10-10 22:55:15 +02:00
Ludovic Courtès e79467f63a system: Account skeleton API is non-monadic.
* gnu/system/shadow.scm (default-skeletons): Use the non-monadic
  procedures and turn into a regular procedure.
  (skeleton-directory): Likewise.
* gnu/system.scm (etc-directory): Adjust accordingly.
2015-10-10 22:46:15 +02:00
Ludovic Courtès f3f427c2e9 guix system: Add '--derivation'.
* guix/scripts/system.scm (perform-action): Add #:derivations-only?
  parameter and honor it.
  (show-help, %options): Add '--derivation'.
  (guix-system): Pass #:derivations-only? to 'perform-action'.
* tests/guix-system.sh: Test it.
* doc/guix.texi (Invoking guix system): Document it.
2015-10-10 22:46:15 +02:00