doc: Add subsections to 'Invoking guix build'.
* doc/guix.texi (Invoking guix build): Add example. Shuffle options in
the new subsections below.
(Common Build Options, Additional Build Options): New nodes.
(Invoking guix archive): Refer to "Common Build Options".
(Invoking guix environment): Likewise.
(Invoking guix system): Likewise.
fixlet
guix build: Transformations operate on single objects.
* guix/scripts/build.scm (transform-package-source): Return a procedure
that expects a single object rather than a list of packages.
(options->transformation): Rewrite to precompute the list of applicable
transformations and to return a procedure that expects a single object
rather than a list of objects.
(options->derivations): Adjust accordingly.
* tests/scripts-build.scm: New file.
* Makefile.am (SCM_TESTS): Add it.
install: Make it clear that we refer to the root by label.
* gnu/system/install.scm (installation-os): Use (title 'label) for the
root file system.
build: Use the right section and source for man pages.
* doc.am (HELP2MANFLAGS): New variable.
(gen_man): Use it.
gnu: Add pinball.
* gnu/packages/games.scm (pinball): New variable.
* gnu/packages/patches/pinball-const-fix.patch,
gnu/packages/patches/pinball-cstddef.patch,
gnu/packages/patches/pinball-missing-separators.patch,
gnu/packages/patches/pinball-src-deps.patch,
gnu/packages/patches/pinball-system-ltdl.patch: New patches.
* gnu-system.am (dist_patch_DATA): Add them.
gnu: python-apsw: Update to 3.9.2-r1.
* gnu/packages/python.scm (python-apsw): Update to 3.9.2-r1.
[source]: Change to pypi uri syntax.
gnu: wayland: Build documentation.
* gnu/packages/freedesktop.scm (wayland)[native-inputs]: Add graphviz.
gnu: python-pillow: Update to 3.1.0.
* gnu/packages/python.scm (python-pillow): Update to 3.1.0.
[source]: Change to pypi uri syntax.
gnu: Add aseprite.
* gnu/packages/game-development.scm (aseprite): New variable.
gnu: Add allegro-4.
* gnu/packages/game-development.scm (allegro-4): New variable.
license: Add giftware.
* guix/licenses.scm (giftware): New variable.
gnu: obs: Update to 0.13.0.
* gnu/packages/video.scm (obs): Upgrade to 0.13.0.
gnu: perl-tk: Update to 804.033.
* gnu/packages/tcl.scm (perl-tk): Update to 804.033.
[source]: Remove patch.
* gnu/packages/patches/perl-tk-x11-discover.patch: Remove file.
* gnu-system.am (dist_patch_DATA): Remove patch.
gnu: weechat: Update to 1.4.
* gnu/packages/weechat.scm (weechat): Update to 1.4.
gnu: pumpa: Update to 0.9.2.
* gnu/packages/pumpio.scm (pumpa): Update to 0.9.2.
[source]: Add 'file-name' field.
build: Generate man pages after compiling Guile objects.
This reduces compilation time since scripts are not compiled twice.
When building with 'make -j4' from a clean repository on an Intel
i5-2540M, compilation time gets from:
real 4m48.708s
user 17m29.892s
sys 0m9.596s
down to:
real 2m23.399s
user 6m48.604s
sys 0m6.420s
* doc.am (subcommand-manual-target): Delete function.
(SUBCOMMANDS): Delete variable.
(sub_command_mans, gen_man): New variables.
(dist_man1_MANS): Add $(sub_commands_mans).
(doc/guix-%.1): New target for sub-commands man pages. It ensures that
man pages are built only after compiling Guile objects.
(doc/guix-daemon.1): Use $(gen_man). Build only if BUILD_DAEMON.
(doc/guix.1): Use $(gen_man). Add $(sub_command_mans) prerequisite.
Co-authored-by: Mathieu Lirzin <mthl@gnu.org>
Rename 'dmd' to 'shepherd' in comments and strings.
* build-aux/hydra/demo-os.scm (operating-system)[issue]: Point to
shepherd instead of dmd.
* ROADMAP: Likewise.
* gnu/build/install.scm (directives): Adjust comment.
guix system: Rename 'dmd-graph' to 'shepherd-graph'.
* doc/images/dmd-graph.dot: Rename to...
* doc/images/shepherd-graph.dot: ... this.
* doc.am (DOT_FILES): Adjust accordingly.
* guix/scripts/system.scm (dmd-service-node-label)
(dmd-service-node-type, export-dmd-graph): Rename to...
(shepherd-service-node-label, shepherd-service-node-type)
(export-shepherd-graph): ... this.
(show-help, process-action, process-command): Rename 'dmd-graph' to
'shepherd-graph'.
* emacs/guix-command.el (guix-command-additional-execute-arguments)
(guix-command-special-executors): Likewise.
* doc/guix.texi: Likewise.
* doc/emacs.texi (Emacs Popup Interface): Likewise.
services: Rename 'dmd' services to 'shepherd'.
* gnu/services/shepherd.scm (dmd-root-service-type, %dmd-root-service)
(dmd-service-type, <dmd-service>, dmd-service, dmd-service?)
(make-dmd-service, dmd-service-documentation, dmd-service-provision)
(dmd-service-requirement, dmd-service-respawn, dmd-service-start)
(dmd-service-stop, dmd-service-auto-start?, dmd-service-modules)
(dmd-service-imported-modules, dmd-service-file-name, dmd-service-file)
(dmd-service-back-edges): Rename to...
(shepherd-root-service-type, %shepherd-root-service, shepherd-service-type)
(<shepherd-service>, shepherd-service, shepherd-service?)
(make-shepherd-service, shepherd-service-documentation)
(shepherd-service-provision, shepherd-service-requirement)
(shepherd-service-respawn, shepherd-service-start)
(shepherd-service-stop, shepherd-service-auto-start?)
(shepherd-service-modules, shepherd-service-imported-modules)
(shepherd-service-file-name, shepherd-service-file)
(shepherd-service-back-edges): ...this
* gnu/services.scm: Adjust comments.
* gnu/services/avahi.scm (avahi-dmd-service): Rename to...
(avahi-shepherd-service): ... this.
* gnu/services/base.scm (%root-file-system-dmd-service)
(file-system->dmd-service-name, mapped-device->dmd-service-name)
(dependency->dmd-service-name, file-system-dmd-service)
(mingetty-dmd-service, nscd-dmd-service, guix-dmd-service)
(guix-publish-dmd-service, udev-dmd-service, gpm-dmd-service): Rename to...
(%root-file-system-shepherd-service)
(file-system->shepherd-service-name, mapped-device->shepherd-service-name)
(dependency->shepherd-service-name, file-system-shepherd-service)
(mingetty-shepherd-service, nscd-shepherd-service, guix-shepherd-service)
(guix-publish-shepherd-service, udev-shepherd-service)
(gpm-shepherd-service): ... this.
* gnu/services/databases.scm (postgresql-dmd-service): Rename to...
(postgresql-shepherd-service): ... this.
* gnu/services/desktop.scm (upower-dmd-service, elogind-dmd-service):
Rename to...
(upower-shepherd-service, elogind-shepherd-service): ... this.
* gnu/services/dbus.scm (dbus-dmd-service): Rename to...
(dbus-shepherd-service): ... this.
* gnu/services/lirc.scm (lirc-dmd-service): Rename to...
(lirc-shepherd-service): ... this.
* gnu/services/mail.scm (dovecot-dmd-service): Rename to...
(dovecot-shepherd-service): ... this.
* gnu/services/networking.scm (ntp-dmd-service, tor-dmd-service)
(bitlbee-dmd-service, wicd-dmd-service, network-manager-dmd-service): Rename to...
(dbus-shepherd-service): ... this.
* gnu/services/ssh.scm (lsh-dmd-service): Rename to...
(lsh-shepherd-service): ... this.
* gnu/services/web.scm (nginx-dmd-service): Rename to...
(nginx-shepherd-service): ... this.
* gnu/services/xorg.scm (slim-dmd-service): Rename to...
(slim-shepherd-service): ... this.
* gnu/system.scm (essential-services): Use '%shepherd-root-service'.
* gnu/system/install.scm (cow-store-service-type): Adjust accordingly.
* guix/scripts/system.scm (dmd-service-node-label, dmd-service-node-type)
(export-dmd-graph): Likewise.
* tests/guix-system.sh: Likewise.
* tests/services.scm ("dmd-service-back-edges"): Rename to...
("shepherd-service-back-edges"): Adjust accordingly.
* doc/guix.texi: Likewise.
* doc/images/service-graph.dot: Use 'shepherd' service name.
services: xorg: Use 'shepherd' instead of 'dmd'.
* gnu/services/xorg.scm (slim-configuration-dmd): Rename to...
(slim-configuration-shepherd): ... this.
(slim-shepherd-service): Adjust accordingly.
(slim-service): Take 'shepherd' keyword argument.