From mboxrd@z Thu Jan 1 00:00:00 1970 Received: from eggs.gnu.org ([2001:4830:134:3::10]:37676) by lists.gnu.org with esmtp (Exim 4.71) (envelope-from ) id 1dsF3n-000573-N3 for guix-patches@gnu.org; Wed, 13 Sep 2017 17:19:04 -0400 Received: from Debian-exim by eggs.gnu.org with spam-scanned (Exim 4.71) (envelope-from ) id 1dsF3m-00047R-Be for guix-patches@gnu.org; Wed, 13 Sep 2017 17:19:03 -0400 Received: from debbugs.gnu.org ([208.118.235.43]:58516) by eggs.gnu.org with esmtps (TLS1.0:RSA_AES_128_CBC_SHA1:16) (Exim 4.71) (envelope-from ) id 1dsF3m-00047B-8W for guix-patches@gnu.org; Wed, 13 Sep 2017 17:19:02 -0400 Received: from Debian-debbugs by debbugs.gnu.org with local (Exim 4.84_2) (envelope-from ) id 1dsF3l-0005Ne-RT for guix-patches@gnu.org; Wed, 13 Sep 2017 17:19:01 -0400 Subject: [bug#28452] [PATCH 0/6] On-line doc and search for services Resent-Message-ID: Received: from eggs.gnu.org ([2001:4830:134:3::10]:37069) by lists.gnu.org with esmtp (Exim 4.71) (envelope-from ) id 1dsF36-00052A-44 for guix-patches@gnu.org; Wed, 13 Sep 2017 17:18:21 -0400 Received: from Debian-exim by eggs.gnu.org with spam-scanned (Exim 4.71) (envelope-from ) id 1dsF34-0003PI-TQ for guix-patches@gnu.org; Wed, 13 Sep 2017 17:18:20 -0400 From: Ludovic =?UTF-8?Q?Court=C3=A8s?= Date: Wed, 13 Sep 2017 23:17:56 +0200 Message-Id: <20170913211756.4843-1-ludo@gnu.org> MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit List-Id: List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , Errors-To: guix-patches-bounces+kyle=kyleam.com@gnu.org Sender: "Guix-patches" To: 28452@debbugs.gnu.org Hello! This patch series adds a new ‘guix system search’ command to search through the available services types: --8<---------------cut here---------------start------------->8--- $ ./pre-inst-env guix system search anony network name: tor location: gnu/services/networking.scm:670:2 extends: shepherd-root account activate description: Run the Tor (https://torproject.org) anonymous networking daemon. relevance: 9 name: static-networking location: gnu/services/networking.scm:248:2 extends: shepherd-root etc description: Turn up the specified network interfaces upon startup, with the given IP + address, gateway, netmask, and so on. The value for services of this type is a list of + `static-networking' objects, one per network interface. relevance: 6 name: network-manager location: gnu/services/networking.scm:947:4 extends: shepherd-root dbus polkit activate profile description: Run NetworkManager (https://wiki.gnome.org/Projects/NetworkManager), a + network management daemon that aims to simplify wired and wireless networking. relevance: 6 [...] --8<---------------cut here---------------end--------------->8--- I think this can be pretty useful. It also works with service types that have #f as their ‘description’ field, which is the vast majority of them (help welcome!). Possible improvements and related things: • Display each field and value of the default value of services. • Add ‘guix system edit’ or ‘guix edit --service’? • Add a web UI to browse services. Comments welcome! Ludo’. Ludovic Courtès (6): ui: Generalize relevance computation. services: Add a description and location for each service type. services: Add 'fold-service-types'. guix system: Add 'search' command. services: base: Add descriptions. services: networking: Add descriptions. Makefile.am | 1 + doc/guix.texi | 42 ++++++++++++ gnu/services.scm | 37 ++++++++++- gnu/services/base.scm | 85 ++++++++++++++++++++---- gnu/services/networking.scm | 55 +++++++++++++--- guix/scripts/package.scm | 21 +----- guix/scripts/system.scm | 13 +++- guix/scripts/system/search.scm | 144 +++++++++++++++++++++++++++++++++++++++++ guix/ui.scm | 44 +++++++++++++ po/guix/POTFILES.in | 1 + po/packages/POTFILES.in | 2 + tests/guix-system.sh | 6 +- 12 files changed, 403 insertions(+), 48 deletions(-) create mode 100644 guix/scripts/system/search.scm -- 2.14.1