Commit Graph

8725 Commits

Author SHA1 Message Date
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
Ludovic Courtès 23afe939a2 system: pam: Use 'computed-file' instead of 'gexp->derivation'.
* gnu/system/linux.scm (pam-service->configuration): Use 'computed-file'
  instead of 'gexp->derivation'.
  (pam-services->directory): Likewise.
* gnu/system.scm (etc-directory): Adjust accordingly.
2015-10-10 22:46:15 +02:00
Ludovic Courtès e1c153e0ab gexp: Add 'scheme-file'.
* guix/gexp.scm (<scheme-file>): New record type.
  (scheme-file, scheme-file-compiler): New procedures.
* tests/gexp.scm ("scheme-file"): New test.
* doc/guix.texi (G-Expressions): Document 'scheme-file'.
2015-10-10 22:46:15 +02:00
Ludovic Courtès b893f1aec3 services: nscd-service: Fit everything into <nscd-configuration>.
* gnu/services/base.scm (<nscd-configuration>)[glibc, name-services]:
  New fields.
  (nscd-service): Remove #:glibc and #:name-services parameters.  Adjust
  body to take those from CONFIG.
* gnu/services/desktop.scm (%desktop-services): Adjust accordingly.
* doc/guix.texi (Base Services): Adjust accordingly.
  (Name Service Switch): Adjust example.
2015-10-10 22:46:14 +02:00
Ludovic Courtès 66e4f01c60 services: mingetty-service: Use <mingetty-configuration> objects.
* gnu/services/base.scm (<mingetty-configuration>): New record type.
  (mingetty-service): Expect a single <mingetty-configuration> instead
  of keyword arguments.
  (%base-services): Adjust accordingly.
* gnu/system/install.scm (installation-services): Likewise.
* doc/guix.texi (Base Services): Adjust accordingly.
2015-10-10 22:46:14 +02:00
Ludovic Courtès be1c2c54d9 system: Make service procedures non-monadic.
* gnu/services/avahi.scm (configuration-file): Use 'plain-file' instead
  of 'text-file'.
  (avahi-service): Turn into a regular procedure that returns a <service>.
* gnu/services/base.scm (root-file-system-service, file-system-service,
  user-unmount-service, user-processes-service, host-name-service,
  console-keymap-service, console-font-service, mingetty-service,
  nscd.conf-file, nscd-service): Likewise.
  (%default-syslog.conf): New variable.
  (syslog-service): Use it.  Turn into a regular procedure.
  (guix-service, udev-rules-union, kvm-udev-rule, udev-service,
  device-mapping-service, swap-service): Likewise.
* gnu/services/databases.scm (%default-postgres-hba,
  %default-postgres-ident): Use 'plain-file' instead of 'text-file'.
  (%default-postgres-config): Use 'mixed-text-file' instead of
  'text-file*'.
  (postgresql-service):  Use 'program-file' instead of 'gexp->script'.
  Turn into a regular procedure.
* gnu/services/desktop.scm (dbus-configuration-directory): Use
  'computed-file' instead of 'gexp->derivation'.
  (upower-configuration-file, geoclue-configuration-file,
  elogind-configuration-file): Use 'plain-file' instead of 'text-file'.
  (dbus-service, upower-service, colord-service, geoclue-service,
  polkit-service, elogind-service): Turn into regular procedures.
  (%desktop-services): Remove use of 'mlet' when iterating on
  %BASE-SERVICES.
* gnu/services/lirc.scm (lirc-service): Turn into a regular procedure.
* gnu/services/networking.scm (static-networking-service,
  dhcp-client-service, ntp-service, tor-service, bitlbee-service,
  wicd-service): Likewise.
* gnu/services/ssh.scm (lsh-service): Likewise.
* gnu/services/web.scm (nginx-service): Likewise.
* gnu/services/xorg.scm (xorg-configuration-file): Use 'mixed-text-file'
  instead of 'text-file*'.
  (xorg-start-command, slim-service): Turn into regular procedures.
  (xinitrc): Use 'program-file' instead of 'gexp->script'.
* gnu/system/install.scm (cow-store-service,
  configuration-template-service): Turn into regular procedures.
* gnu/system.scm (other-file-system-services, device-mapping-services,
  swap-services, essential-services, operating-system-services,
  user-shells, operating-system-accounts): Remove now unnecessary
  'mlet' and turn into regular procedures.
  (operating-system-etc-directory, operating-system-activation-script,
  operating-system-boot-script): Adjust accordingly.
* doc/guix.texi (Base Services, Networking Services, X Window, Desktop
  Services, Database Services, Web Services, Various Services, Name
  Service Switch): Adjust accordingly.
2015-10-10 22:46:14 +02:00
Ludovic Courtès ce8a6dfc43 services: 'mingetty-service' no longer takes monadic values.
* gnu/services/base.scm (mingetty-service): Change default value of
  #:motd from a monadic value to a <plain-file>.  Assume MOTD to be a
  file-like object.  Assume LOGIN-PROGRAM is a gexp or #f.
  (%base-services): Use 'plain-file' instead of 'text-file' for motd.
* gnu/system/linux.scm (unix-pam-service): Update docstring to mention
  that MOTD is a file-like object.
* doc/guix.texi (Base Services): Adjust 'mingetty-service' documentation
  accordingly.
* gnu/system/install.scm (installation-services): Adjust accordingly.
  (log-to-info): Use 'program-file' instead of 'gexp->script'.
2015-10-10 22:46:14 +02:00
Ludovic Courtès b751cde36b gexp: Add 'mixed-text-file'.
* guix/gexp.scm (mixed-text-file): New procedure.
* tests/gexp.scm ("mixed-text-file"): New test.
* doc/guix.texi (G-Expressions): Document it.
2015-10-10 22:46:14 +02:00
Ludovic Courtès 15a01c7220 gexp: Add 'program-file'.
* guix/gexp.scm (<program-file>): New record type.
  (program-file, program-file-compiler): New procedures.
* tests/gexp.scm ("program-file"): New test.
* doc/guix.texi (G-Expressions): Document it.
2015-10-10 22:46:14 +02:00
Ludovic Courtès 919370291f gexp: Add 'computed-file'.
* guix/gexp.scm (<computed-file>): New record type.
  (computed-file, computed-file-compiler): New procedures.
* tests/gexp.scm ("lower-object, computed-file"): New test.
* doc/guix.texi (G-Expressions): Document 'computed-file'.
2015-10-10 22:46:14 +02:00
David Thompson a72ccbc251 build: container: Fix call-with-clean-exit.
Before, call-with-clean-exit would *always* return an exit code of 1.

* gnu/build/linux-container.scm (call-with-clean-exit): Exit with status
  code of 0 if thunk does not throw an exception.
* tests/containers.scm: Add test.
2015-10-10 09:00:49 -04:00
Cyril Roelandt f5a21dc4cf gnu: Add python-bandit.
* gnu/packages/openstack.scm (python-bandit, python2-bandit): New variables.
2015-10-10 03:20:49 +02:00
Cyril Roelandt 7787ef76b6 gnu: Update python-fixtures
* gnu/packages/python.scm (python-fixtures): Update.
* gnu/packages/python.scm (python-fixtures-0.3.16,
  python2-fixtures-0.3.16, python-pbr-0.11,
  python2-pbr-0.11): New variables.
* gnu/packages/python.scm (python-testrepository): Use python-fxitures-0.3.16
  instead of python-fixtures in the inputs.
2015-10-10 03:20:49 +02:00
Cyril Roelandt 643725a155 gnu: Add python-pip.
* gnu/packages/python.scm (python-pip, python2-pip): New variables.
2015-10-10 03:20:44 +02:00
Ludovic Courtès 28eb956dfe Thank Chris. 2015-10-09 20:57:24 +02:00
Ludovic Courtès ca34fc317f build: Fix libgcrypt detection on FHS systems.
Reported by Christopher Allan Webber <cwebber@dustycloud.org>.

* m4/guix.m4 (GUIX_LIBGCRYPT_LIBDIR): Add "grep -e -L" to the pipeline
  to account for cases where the output of "libgcrypt-config --libs"
  lacks a -L flag.
* configure.ac: When 'GUIX_LIBGCRYPT_LIBDIR' returns the empty string,
  set LIBGCRYPT_LIBDIR to "no".
* config-daemon.ac: Add missing space.
2015-10-09 20:57:24 +02:00
David Thompson 1de2fe95e0 scripts: environment: Use system* instead of system.
This allows for direct program invokation without needing a shell to act
as a command interpreter.

* guix/scripts/environment.scm (%default-shell): New variable.
  (show-help): Adjust description.  Remove '--exec' reference.
  (%default-options): Use '%default-shell'.
  (%options): Adjust '--exec' to run command via the default shell.
  (parse-args): New procedure.
  (guix-environment): Use 'parse-args'.  Use 'system*' instead of
  'system'.
* tests/guix-environment.sh: Add test for '--' command invokation.
* doc/guix.texi ("Invoking guix environment"): Use new syntax.  Remove
  '--exec' documentation.
2015-10-09 12:17:01 -04:00
David Thompson bbd00d2012 utils: Add split procedure.
* guix/utils.scm (split): New procedure.
* tests/utils.scm: Add tests.
2015-10-09 12:17:01 -04:00
Alex Kost b94ef11a53 emacs: Add 'guix-devel-lint-package'
Suggested by Ludovic Courtès <ludo@gnu.org>.

* emacs/guix-devel.el (guix-devel-setup-repl): Add a workaround for
  'guix-warning-port'.
  (guix-devel-lint-package): New command.
  (guix-devel-keys-map): Add key binding for it.
* doc/emacs.texi (Emacs Development): Document it.
2015-10-09 16:17:45 +03:00
Alex Kost e04741f160 lint: Export 'run-checkers'.
* guix/scripts/lint.scm (run-checkers): Export.  Make 'checkers'
  argument optional.
2015-10-09 16:17:45 +03:00
Alex Kost 5952111cc0 emacs: Add 'guix-devel-with-definition'.
* emacs/guix-devel.el (guix-devel-with-definition): New macro.
  (guix-devel-build-package-definition): Use it.
  (guix-devel-emacs-font-lock-keywords): New variable.
2015-10-09 16:17:45 +03:00
Alex Kost 5a60d56975 emacs: Fix 'guix-devel-setup-repl'.
Setting up guix ports needs to be done in Geiser REPL synchronously,
otherwise this operation may not be finished before the further
evaluating of guile code.

* emacs/guix-guile.el (guix-guile-prompt?): New function.
* emacs/guix-geiser.el (guix-geiser-eval-in-repl-synchronously): New
  function.
* emacs/guix-devel.el (guix-devel-setup-repl): Use it.
2015-10-09 16:17:45 +03:00
Alex Kost 7c786db4fb emacs: Fix 'guix-build-log-phase-toggle-all'.
* emacs/guix-build-log.el (guix-build-log-phase-toggle-all): Handle the
  case when there are no characters before the first phase:
  'guix-build-log-next-phase' moves to the second phase in such a case,
  and the toggling is not done properly, so use 're-search-forward'
  instead.
2015-10-09 16:17:45 +03:00
Alex Kost 88908d55e0 emacs: devel: Fix 'modify-phases' highlighting.
* emacs/guix-devel.el (guix-devel-modify-phases-font-lock-pre): Handle
  the case when 'modify-phases' is commented.
2015-10-09 16:17:44 +03:00