unofficial mirror of guix-devel@gnu.org 
 help / color / mirror / code / Atom feed
* guix system: error: service 'ssh-daemon' requires 'networking', which is undefined
@ 2016-07-15 12:24 Jan Synáček
  2016-07-15 15:05 ` Alex Kost
  0 siblings, 1 reply; 19+ messages in thread
From: Jan Synáček @ 2016-07-15 12:24 UTC (permalink / raw)
  To: guix-devel

Hello,

I'm trying to create a testing vm with sshd inside. My config:

(use-modules (gnu))
(use-modules (gnu services ssh))

(operating-system
  (host-name "guix-vm")
  (timezone "Europe/Prague")
  (locale "en_US.UTF-8")

  (bootloader (grub-configuration (device "/dev/sda")))
  (file-systems (cons (file-system
                        (device "my-root")
                        (title 'label)
                        (mount-point "/")
                        (type "ext4"))
                      %base-file-systems))

  (users (cons (user-account
                (name "jsynacek")
                (group "users")
                (supplementary-groups '("wheel"))
                (home-directory "/home/jsynacek"))
               %base-user-accounts))

  ;;(packages (%base-packages))
  (services (cons* (lsh-service #:port-number 22
                                #:daemonic? #t
                                #:root-login? #t) %base-services)))


$ guix system vm guix-system-cfg.scm
guix system: error: service 'ssh-daemon' requires 'networking', which
is undefined

What am I missing? The error message is extremely unhelpful for
someone who doesn't know what it actually means.

Cheers,
-- 
Jan Synáček

^ permalink raw reply	[flat|nested] 19+ messages in thread

* Re: guix system: error: service 'ssh-daemon' requires 'networking', which is undefined
@ 2016-07-15 12:39 David Craven
  2016-07-15 12:58 ` Jan Synáček
  2016-07-15 16:50 ` Ludovic Courtès
  0 siblings, 2 replies; 19+ messages in thread
From: David Craven @ 2016-07-15 12:39 UTC (permalink / raw)
  To: guix-devel, jan.synacek

Hi Jan,

> What am I missing? The error message is extremely unhelpful for
> someone who doesn't know what it actually means.

Try adding the dhcp-client-service.

Cheers
David

^ permalink raw reply	[flat|nested] 19+ messages in thread

* Re: guix system: error: service 'ssh-daemon' requires 'networking', which is undefined
  2016-07-15 12:39 guix system: error: service 'ssh-daemon' requires 'networking', which is undefined David Craven
@ 2016-07-15 12:58 ` Jan Synáček
  2016-07-15 14:27   ` Vincent Legoll
  2016-07-15 16:50 ` Ludovic Courtès
  1 sibling, 1 reply; 19+ messages in thread
From: Jan Synáček @ 2016-07-15 12:58 UTC (permalink / raw)
  To: guix-devel

On Fri, Jul 15, 2016 at 2:39 PM, David Craven <david@craven.ch> wrote:
> Hi Jan,
>
>> What am I missing? The error message is extremely unhelpful for
>> someone who doesn't know what it actually means.
>
> Try adding the dhcp-client-service.

That worked, thank you! I guess it would be nice to improve the error
message to point out what is (or may be) needed.

-- 
Jan Synáček

^ permalink raw reply	[flat|nested] 19+ messages in thread

* Re: guix system: error: service 'ssh-daemon' requires 'networking', which is undefined
  2016-07-15 12:58 ` Jan Synáček
@ 2016-07-15 14:27   ` Vincent Legoll
  2016-07-17  6:50     ` Jan Synáček
  0 siblings, 1 reply; 19+ messages in thread
From: Vincent Legoll @ 2016-07-15 14:27 UTC (permalink / raw)
  To: Jan Synáček; +Cc: guix-devel

Would a static-networking-service or wicd-service workaround that problem too ?

-- 
Vincent Legoll

^ permalink raw reply	[flat|nested] 19+ messages in thread

* Re: guix system: error: service 'ssh-daemon' requires 'networking', which is undefined
  2016-07-15 12:24 Jan Synáček
@ 2016-07-15 15:05 ` Alex Kost
  0 siblings, 0 replies; 19+ messages in thread
From: Alex Kost @ 2016-07-15 15:05 UTC (permalink / raw)
  To: Jan Synáček; +Cc: guix-devel

Jan Synáček (2016-07-15 15:24 +0300) wrote:

> $ guix system vm guix-system-cfg.scm
> guix system: error: service 'ssh-daemon' requires 'networking', which
> is undefined
>
> What am I missing? The error message is extremely unhelpful for
> someone who doesn't know what it actually means.

This means you need to specify a service that provides 'networking'.

Along with 'dhcp-client-service' (as David mentioned), also
'static-networking-service', 'wicd-service', 'network-manager-service'
and 'connman-service' provide 'networking' (I'm not sure if all of them
are in a good working shape though).  See
<https://www.gnu.org/software/guix/manual/html_node/Networking-Services.html>

Error messages and documentation are not perfect, the patches are always
welcome :-)

-- 
Alex

^ permalink raw reply	[flat|nested] 19+ messages in thread

* Re: guix system: error: service 'ssh-daemon' requires 'networking', which is undefined
  2016-07-15 12:39 guix system: error: service 'ssh-daemon' requires 'networking', which is undefined David Craven
  2016-07-15 12:58 ` Jan Synáček
@ 2016-07-15 16:50 ` Ludovic Courtès
  2016-07-15 18:04   ` Tobias Geerinckx-Rice
  1 sibling, 1 reply; 19+ messages in thread
From: Ludovic Courtès @ 2016-07-15 16:50 UTC (permalink / raw)
  To: David Craven; +Cc: guix-devel

David Craven <david@craven.ch> skribis:

>> What am I missing? The error message is extremely unhelpful for
>> someone who doesn't know what it actually means.
>
> Try adding the dhcp-client-service.

Indeed.  The message is telling that the Shepherd service that provides
‘ssh-daemon’ also requires the ‘networking’ Shepherd service, but that
nothing in your OS config provides such a service.

Services that provide ‘networking’ include ‘dhcp-client-service’,
‘wicd-service’, and ‘connman-service’.

We could improve the error message by showing the location of the
‘ssh-daemon’ Shepherd service definition, though it may be better (but
more difficult) to show the location of the instantiation of the
corresponding service (the ‘(lsh-service)’ line in your config file.)

Thoughts?

Ludo’.

^ permalink raw reply	[flat|nested] 19+ messages in thread

* Re: guix system: error: service 'ssh-daemon' requires 'networking', which is undefined
  2016-07-15 16:50 ` Ludovic Courtès
@ 2016-07-15 18:04   ` Tobias Geerinckx-Rice
  2016-07-19 12:43     ` Ludovic Courtès
  0 siblings, 1 reply; 19+ messages in thread
From: Tobias Geerinckx-Rice @ 2016-07-15 18:04 UTC (permalink / raw)
  To: ludo; +Cc: guix-devel

On 2016-07-15 18:50, ludo@gnu.org wrote:
> We could improve the error message by showing the location of the
> ‘ssh-daemon’ Shepherd service definition, though it may be better (but
> more difficult) to show the location of the instantiation of the
> corresponding service (the ‘(lsh-service)’ line in your config file.)

That would certainly be nice. As a newcomer (points at self), simply
scanning error messages for keywords/file locations can lead nowhere
until you learn to read what Guix is *actually* trying to say.

> Thoughts?

The message ‘which is undefined’ itself is still rather cryptic: the
first time I got it, I assumed my git checkout was broken. How about
something closer to ‘which is not provided by any operating-system
services’?

But, like, better.

Kind regards,

T G-R

^ permalink raw reply	[flat|nested] 19+ messages in thread

* Re: guix system: error: service 'ssh-daemon' requires 'networking', which is undefined
  2016-07-15 14:27   ` Vincent Legoll
@ 2016-07-17  6:50     ` Jan Synáček
  0 siblings, 0 replies; 19+ messages in thread
From: Jan Synáček @ 2016-07-17  6:50 UTC (permalink / raw)
  To: Vincent Legoll; +Cc: guix-devel

On Fri, Jul 15, 2016 at 4:27 PM, Vincent Legoll
<vincent.legoll@gmail.com> wrote:
> Would a static-networking-service or wicd-service workaround that problem too ?

The static-networking-service does help as well. I haven't tried
wicd-service, it seems to require a dbus service of some sort and is
not really what I wanted.

Cheers,
-- 
Jan Synáček

^ permalink raw reply	[flat|nested] 19+ messages in thread

* Re: guix system: error: service 'ssh-daemon' requires 'networking', which is undefined
  2016-07-15 18:04   ` Tobias Geerinckx-Rice
@ 2016-07-19 12:43     ` Ludovic Courtès
  2016-07-21  6:30       ` Jan Synáček
  0 siblings, 1 reply; 19+ messages in thread
From: Ludovic Courtès @ 2016-07-19 12:43 UTC (permalink / raw)
  To: Tobias Geerinckx-Rice; +Cc: guix-devel

Tobias Geerinckx-Rice <me@tobias.gr> skribis:

> On 2016-07-15 18:50, ludo@gnu.org wrote:
>> We could improve the error message by showing the location of the
>> ‘ssh-daemon’ Shepherd service definition, though it may be better (but
>> more difficult) to show the location of the instantiation of the
>> corresponding service (the ‘(lsh-service)’ line in your config file.)
>
> That would certainly be nice. As a newcomer (points at self), simply
> scanning error messages for keywords/file locations can lead nowhere
> until you learn to read what Guix is *actually* trying to say.
>
>> Thoughts?
>
> The message ‘which is undefined’ itself is still rather cryptic: the
> first time I got it, I assumed my git checkout was broken. How about
> something closer to ‘which is not provided by any operating-system
> services’?

I improved the message along these lines in commit
2c2ec261a8d3c37e5147038f47ad24c57cde4134, let me know what you think.

To be more concrete about other improvements, here’s what should be
feasible (but needs to be discussed to see whether it’s actually
helpful):

  1. Display the location of the Shepherd service definition:

       gnu/services/ssh.scm:160:4: 'ssh-daemon' requires 'networking'…

     Trivial to implement, but the downside is that the user doesn’t
     really care about this file.

  2. Same, but also show some sort of a stack trace (but not an actual
     Scheme stack trace) showing where this Shepherd service comes from:

       gnu/services/ssh.scm:160:4: 'ssh-daemon' requires 'networking'…
       gnu/services/ssh.scm:117:30: … in extension of service 'shepherd'
       gnu/services/ssh.scm:228:2: … while folding service 'lsh’ instantiated here

     The problem is that, currently, we’d get the location of the
     (service …) form, which is in the ‘lsh-service’ procedure, in
     gnu/services/ssh.scm.

     It may be hard to come up with intelligible messages, and there’s a
     risk that showing too many lines of messages would be
     counterproductive.

Thoughts?

Ludo’.

^ permalink raw reply	[flat|nested] 19+ messages in thread

* Re: guix system: error: service 'ssh-daemon' requires 'networking', which is undefined
  2016-07-19 12:43     ` Ludovic Courtès
@ 2016-07-21  6:30       ` Jan Synáček
  2016-07-21  8:48         ` Vincent Legoll
  2016-07-21 13:00         ` Ludovic Courtès
  0 siblings, 2 replies; 19+ messages in thread
From: Jan Synáček @ 2016-07-21  6:30 UTC (permalink / raw)
  To: Ludovic Courtès; +Cc: guix-devel

On Tue, Jul 19, 2016 at 2:43 PM, Ludovic Courtès <ludo@gnu.org> wrote:
> I improved the message along these lines in commit
> 2c2ec261a8d3c37e5147038f47ad24c57cde4134, let me know what you think.
>
> To be more concrete about other improvements, here’s what should be
> feasible (but needs to be discussed to see whether it’s actually
> helpful):
>
>   1. Display the location of the Shepherd service definition:
>
>        gnu/services/ssh.scm:160:4: 'ssh-daemon' requires 'networking'…
>
>      Trivial to implement, but the downside is that the user doesn’t
>      really care about this file.
>
>   2. Same, but also show some sort of a stack trace (but not an actual
>      Scheme stack trace) showing where this Shepherd service comes from:
>
>        gnu/services/ssh.scm:160:4: 'ssh-daemon' requires 'networking'…
>        gnu/services/ssh.scm:117:30: … in extension of service 'shepherd'
>        gnu/services/ssh.scm:228:2: … while folding service 'lsh’ instantiated here
>
>      The problem is that, currently, we’d get the location of the
>      (service …) form, which is in the ‘lsh-service’ procedure, in
>      gnu/services/ssh.scm.
>
>      It may be hard to come up with intelligible messages, and there’s a
>      risk that showing too many lines of messages would be
>      counterproductive.
>
> Thoughts?

From a regular user's point of view, this still misses the point,
which I originally attempted to make. I suggest an error message like
this:

'ssh-daemon' requires 'networking', try adding
'static-networking-service' or 'dhcp-client-service' to system
services

Or something like that. The point is, make it clear that "requires
networking" means adding at least one service to the operating
system's services and make at least one suggestion. Definitely a step
forward to user friendliness.

Cheers,
-- 
Jan Synáček

^ permalink raw reply	[flat|nested] 19+ messages in thread

* Re: guix system: error: service 'ssh-daemon' requires 'networking', which is undefined
  2016-07-21  6:30       ` Jan Synáček
@ 2016-07-21  8:48         ` Vincent Legoll
  2016-07-21 12:54           ` Ludovic Courtès
  2016-07-21 13:00         ` Ludovic Courtès
  1 sibling, 1 reply; 19+ messages in thread
From: Vincent Legoll @ 2016-07-21  8:48 UTC (permalink / raw)
  To: Jan Synáček; +Cc: guix-devel

> From a regular user's point of view, this still misses the point,
> which I originally attempted to make. I suggest an error message like
> this:
>
> 'ssh-daemon' requires 'networking', try adding
> 'static-networking-service' or 'dhcp-client-service' to system
> services
>
> Or something like that. The point is, make it clear that "requires
> networking" means adding at least one service to the operating
> system's services and make at least one suggestion. Definitely a step
> forward to user friendliness.

I concur, from a simple end-user, sometimes guix error messages are
at best cryptic. It looks like the messages are expecting the user to be
an experienced scheme coder. If guix wants to get more users, that
experience should be enhanced.

Backtraces are great for debugging, not as user interface.

I say that as a 20+ years experienced software engineer, so imagine someone
coming from windows or macos... :-)

Don't take those remarks too harshly, this is just my newbiesque point of
view, it should hopefully change as I mature, and I hope to be able to
contribute
something to help those pain points...

-- 
Vincent Legoll

^ permalink raw reply	[flat|nested] 19+ messages in thread

* Re: guix system: error: service 'ssh-daemon' requires 'networking', which is undefined
  2016-07-21  8:48         ` Vincent Legoll
@ 2016-07-21 12:54           ` Ludovic Courtès
  0 siblings, 0 replies; 19+ messages in thread
From: Ludovic Courtès @ 2016-07-21 12:54 UTC (permalink / raw)
  To: Vincent Legoll; +Cc: guix-devel

Vincent Legoll <vincent.legoll@gmail.com> skribis:

>> From a regular user's point of view, this still misses the point,
>> which I originally attempted to make. I suggest an error message like
>> this:
>>
>> 'ssh-daemon' requires 'networking', try adding
>> 'static-networking-service' or 'dhcp-client-service' to system
>> services
>>
>> Or something like that. The point is, make it clear that "requires
>> networking" means adding at least one service to the operating
>> system's services and make at least one suggestion. Definitely a step
>> forward to user friendliness.
>
> I concur, from a simple end-user, sometimes guix error messages are
> at best cryptic. It looks like the messages are expecting the user to be
> an experienced scheme coder. If guix wants to get more users, that
> experience should be enhanced.
>
> Backtraces are great for debugging, not as user interface.

Examples please!  :-)

I think we agree on the goal.  Guix is rarely supposed to show
backtraces; when it does, it may be a bug that needs to be reported and
fixed.  The fresh eye of new users is invaluable in pinpointing such
problems!

Thanks,
Ludo’.

^ permalink raw reply	[flat|nested] 19+ messages in thread

* Re: guix system: error: service 'ssh-daemon' requires 'networking', which is undefined
  2016-07-21  6:30       ` Jan Synáček
  2016-07-21  8:48         ` Vincent Legoll
@ 2016-07-21 13:00         ` Ludovic Courtès
  2016-07-21 13:35           ` Vincent Legoll
  2016-07-21 13:36           ` Jan Synáček
  1 sibling, 2 replies; 19+ messages in thread
From: Ludovic Courtès @ 2016-07-21 13:00 UTC (permalink / raw)
  To: Jan Synáček; +Cc: guix-devel

Jan Synáček <jan.synacek@gmail.com> skribis:

> On Tue, Jul 19, 2016 at 2:43 PM, Ludovic Courtès <ludo@gnu.org> wrote:
>> I improved the message along these lines in commit
>> 2c2ec261a8d3c37e5147038f47ad24c57cde4134, let me know what you think.
>>
>> To be more concrete about other improvements, here’s what should be
>> feasible (but needs to be discussed to see whether it’s actually
>> helpful):
>>
>>   1. Display the location of the Shepherd service definition:
>>
>>        gnu/services/ssh.scm:160:4: 'ssh-daemon' requires 'networking'…
>>
>>      Trivial to implement, but the downside is that the user doesn’t
>>      really care about this file.
>>
>>   2. Same, but also show some sort of a stack trace (but not an actual
>>      Scheme stack trace) showing where this Shepherd service comes from:
>>
>>        gnu/services/ssh.scm:160:4: 'ssh-daemon' requires 'networking'…
>>        gnu/services/ssh.scm:117:30: … in extension of service 'shepherd'
>>        gnu/services/ssh.scm:228:2: … while folding service 'lsh’ instantiated here
>>
>>      The problem is that, currently, we’d get the location of the
>>      (service …) form, which is in the ‘lsh-service’ procedure, in
>>      gnu/services/ssh.scm.
>>
>>      It may be hard to come up with intelligible messages, and there’s a
>>      risk that showing too many lines of messages would be
>>      counterproductive.
>>
>> Thoughts?

Just to be clear, the message we now have is:

  service 'ssh-daemon' requires 'networking', which is not provided by any service

> From a regular user's point of view, this still misses the point,
> which I originally attempted to make. I suggest an error message like
> this:
>
> 'ssh-daemon' requires 'networking', try adding
> 'static-networking-service' or 'dhcp-client-service' to system
> services
>
> Or something like that. The point is, make it clear that "requires
> networking" means adding at least one service to the operating
> system's services and make at least one suggestion. Definitely a step
> forward to user friendliness.

So I think you’re saying that, in addition to the error message, you’d
like suggestions.

I like the idea.  However, in this specific case, I’m not sure how to
achieve it: ‘guix system’ doesn’t know about all the Shepherd services
that can possibly exist, so it cannot tell you that the ‘networking’ is
provided if you add ‘dhcp-client-service’ or whatnot to your config
file.

I understand these are not details one cares about as a user, at least
at first glance.  But this limits what we can do.

Thanks,
Ludo’.

^ permalink raw reply	[flat|nested] 19+ messages in thread

* Re: guix system: error: service 'ssh-daemon' requires 'networking', which is undefined
  2016-07-21 13:00         ` Ludovic Courtès
@ 2016-07-21 13:35           ` Vincent Legoll
  2016-07-21 13:57             ` Jan Synáček
  2016-07-21 13:36           ` Jan Synáček
  1 sibling, 1 reply; 19+ messages in thread
From: Vincent Legoll @ 2016-07-21 13:35 UTC (permalink / raw)
  To: Ludovic Courtès; +Cc: guix-devel

> Just to be clear, the message we now have is:
>
>   service 'ssh-daemon' requires 'networking', which is not provided by any service

"which is currently not provided by any service"

So that there's a hint that what the user has to search for is in the
currently not
activated services.

Is there a simple command line that would list such services ?

herd list --type=networking

or something like that, that would make for the almost-perfect suggestion...

-- 
Vincent Legoll

^ permalink raw reply	[flat|nested] 19+ messages in thread

* Re: guix system: error: service 'ssh-daemon' requires 'networking', which is undefined
  2016-07-21 13:00         ` Ludovic Courtès
  2016-07-21 13:35           ` Vincent Legoll
@ 2016-07-21 13:36           ` Jan Synáček
  1 sibling, 0 replies; 19+ messages in thread
From: Jan Synáček @ 2016-07-21 13:36 UTC (permalink / raw)
  To: Ludovic Courtès; +Cc: guix-devel

On Thu, Jul 21, 2016 at 3:00 PM, Ludovic Courtès <ludo@gnu.org> wrote:
> Jan Synáček <jan.synacek@gmail.com> skribis:
>
>> On Tue, Jul 19, 2016 at 2:43 PM, Ludovic Courtès <ludo@gnu.org> wrote:
>>> I improved the message along these lines in commit
>>> 2c2ec261a8d3c37e5147038f47ad24c57cde4134, let me know what you think.
>>>
>>> To be more concrete about other improvements, here’s what should be
>>> feasible (but needs to be discussed to see whether it’s actually
>>> helpful):
>>>
>>>   1. Display the location of the Shepherd service definition:
>>>
>>>        gnu/services/ssh.scm:160:4: 'ssh-daemon' requires 'networking'…
>>>
>>>      Trivial to implement, but the downside is that the user doesn’t
>>>      really care about this file.
>>>
>>>   2. Same, but also show some sort of a stack trace (but not an actual
>>>      Scheme stack trace) showing where this Shepherd service comes from:
>>>
>>>        gnu/services/ssh.scm:160:4: 'ssh-daemon' requires 'networking'…
>>>        gnu/services/ssh.scm:117:30: … in extension of service 'shepherd'
>>>        gnu/services/ssh.scm:228:2: … while folding service 'lsh’ instantiated here
>>>
>>>      The problem is that, currently, we’d get the location of the
>>>      (service …) form, which is in the ‘lsh-service’ procedure, in
>>>      gnu/services/ssh.scm.
>>>
>>>      It may be hard to come up with intelligible messages, and there’s a
>>>      risk that showing too many lines of messages would be
>>>      counterproductive.
>>>
>>> Thoughts?
>
> Just to be clear, the message we now have is:
>
>   service 'ssh-daemon' requires 'networking', which is not provided by any service
>> From a regular user's point of view, this still misses the point,
>> which I originally attempted to make. I suggest an error message like
>> this:
>>
>> 'ssh-daemon' requires 'networking', try adding
>> 'static-networking-service' or 'dhcp-client-service' to system
>> services
>>
>> Or something like that. The point is, make it clear that "requires
>> networking" means adding at least one service to the operating
>> system's services and make at least one suggestion. Definitely a step
>> forward to user friendliness.
>
> So I think you’re saying that, in addition to the error message, you’d
> like suggestions.

Yes!

> I like the idea.  However, in this specific case, I’m not sure how to
> achieve it: ‘guix system’ doesn’t know about all the Shepherd services
> that can possibly exist, so it cannot tell you that the ‘networking’ is
> provided if you add ‘dhcp-client-service’ or whatnot to your config
> file.

For some reason, I thought it was already possible to ask for services
that require some functionality, like networking for example (you know
what service symbols are defined and you also know which of them
provide 'networking', no?). I'm probably missing something. In this
case, it might be a good improvement to add such thing to the API.

Cheers,
-- 
Jan Synáček

^ permalink raw reply	[flat|nested] 19+ messages in thread

* Re: guix system: error: service 'ssh-daemon' requires 'networking', which is undefined
  2016-07-21 13:35           ` Vincent Legoll
@ 2016-07-21 13:57             ` Jan Synáček
  2016-07-21 14:39               ` Thompson, David
  0 siblings, 1 reply; 19+ messages in thread
From: Jan Synáček @ 2016-07-21 13:57 UTC (permalink / raw)
  To: Vincent Legoll; +Cc: guix-devel

On Thu, Jul 21, 2016 at 3:35 PM, Vincent Legoll
<vincent.legoll@gmail.com> wrote:
> Is there a simple command line that would list such services ?
>
> herd list --type=networking
>
> or something like that, that would make for the almost-perfect suggestion...

Yes! I'm glad we're saying the same, even though differently:)

-- 
Jan Synáček

^ permalink raw reply	[flat|nested] 19+ messages in thread

* Re: guix system: error: service 'ssh-daemon' requires 'networking', which is undefined
  2016-07-21 13:57             ` Jan Synáček
@ 2016-07-21 14:39               ` Thompson, David
  2016-07-21 15:35                 ` Andy Wingo
  0 siblings, 1 reply; 19+ messages in thread
From: Thompson, David @ 2016-07-21 14:39 UTC (permalink / raw)
  To: Jan Synáček; +Cc: guix-devel

On Thu, Jul 21, 2016 at 9:57 AM, Jan Synáček <jan.synacek@gmail.com> wrote:
> On Thu, Jul 21, 2016 at 3:35 PM, Vincent Legoll
> <vincent.legoll@gmail.com> wrote:
>> Is there a simple command line that would list such services ?
>>
>> herd list --type=networking
>>
>> or something like that, that would make for the almost-perfect suggestion...
>
> Yes! I'm glad we're saying the same, even though differently:)

This information is not knowable, sorry.  The set of possible services
outside of what is declared in the system configuration is infinite.

- Dave

^ permalink raw reply	[flat|nested] 19+ messages in thread

* Re: guix system: error: service 'ssh-daemon' requires 'networking', which is undefined
  2016-07-21 14:39               ` Thompson, David
@ 2016-07-21 15:35                 ` Andy Wingo
  2016-07-21 16:10                   ` Ludovic Courtès
  0 siblings, 1 reply; 19+ messages in thread
From: Andy Wingo @ 2016-07-21 15:35 UTC (permalink / raw)
  To: Thompson, David; +Cc: guix-devel

On Thu 21 Jul 2016 16:39, "Thompson, David" <dthompson2@worcester.edu> writes:

> On Thu, Jul 21, 2016 at 9:57 AM, Jan Synáček <jan.synacek@gmail.com> wrote:
>> On Thu, Jul 21, 2016 at 3:35 PM, Vincent Legoll
>> <vincent.legoll@gmail.com> wrote:
>>> Is there a simple command line that would list such services ?
>>>
>>> herd list --type=networking
>>>
>>> or something like that, that would make for the almost-perfect suggestion...
>>
>> Yes! I'm glad we're saying the same, even though differently:)
>
> This information is not knowable, sorry.  The set of possible services
> outside of what is declared in the system configuration is infinite.

However... if you grovel the file system for files in the load path that
have a prefix of gnu/services named .scm and load their corresponding
module and filter out only the services and get their names, then that's
not all of them but it would be good enough :)

Andy

^ permalink raw reply	[flat|nested] 19+ messages in thread

* Re: guix system: error: service 'ssh-daemon' requires 'networking', which is undefined
  2016-07-21 15:35                 ` Andy Wingo
@ 2016-07-21 16:10                   ` Ludovic Courtès
  0 siblings, 0 replies; 19+ messages in thread
From: Ludovic Courtès @ 2016-07-21 16:10 UTC (permalink / raw)
  To: Andy Wingo; +Cc: guix-devel

Andy Wingo <wingo@igalia.com> skribis:

> On Thu 21 Jul 2016 16:39, "Thompson, David" <dthompson2@worcester.edu> writes:
>
>> On Thu, Jul 21, 2016 at 9:57 AM, Jan Synáček <jan.synacek@gmail.com> wrote:
>>> On Thu, Jul 21, 2016 at 3:35 PM, Vincent Legoll
>>> <vincent.legoll@gmail.com> wrote:
>>>> Is there a simple command line that would list such services ?
>>>>
>>>> herd list --type=networking
>>>>
>>>> or something like that, that would make for the almost-perfect suggestion...
>>>
>>> Yes! I'm glad we're saying the same, even though differently:)
>>
>> This information is not knowable, sorry.  The set of possible services
>> outside of what is declared in the system configuration is infinite.
>
> However... if you grovel the file system for files in the load path that
> have a prefix of gnu/services named .scm and load their corresponding
> module and filter out only the services and get their names, then that's
> not all of them but it would be good enough :)

The difficulty here is that we’re talking about Shepherd services, as
opposed to the generic “service” type in GuixSD (info "(guix) Service
Types and Services").

We can programmatically traverse all the existing service types exported
from (gnu services …), but we cannot list all the Shepherd services that
can exist.

Ludo’.

^ permalink raw reply	[flat|nested] 19+ messages in thread

end of thread, other threads:[~2016-07-21 16:10 UTC | newest]

Thread overview: 19+ messages (download: mbox.gz / follow: Atom feed)
-- links below jump to the message on this page --
2016-07-15 12:39 guix system: error: service 'ssh-daemon' requires 'networking', which is undefined David Craven
2016-07-15 12:58 ` Jan Synáček
2016-07-15 14:27   ` Vincent Legoll
2016-07-17  6:50     ` Jan Synáček
2016-07-15 16:50 ` Ludovic Courtès
2016-07-15 18:04   ` Tobias Geerinckx-Rice
2016-07-19 12:43     ` Ludovic Courtès
2016-07-21  6:30       ` Jan Synáček
2016-07-21  8:48         ` Vincent Legoll
2016-07-21 12:54           ` Ludovic Courtès
2016-07-21 13:00         ` Ludovic Courtès
2016-07-21 13:35           ` Vincent Legoll
2016-07-21 13:57             ` Jan Synáček
2016-07-21 14:39               ` Thompson, David
2016-07-21 15:35                 ` Andy Wingo
2016-07-21 16:10                   ` Ludovic Courtès
2016-07-21 13:36           ` Jan Synáček
  -- strict thread matches above, loose matches on Subject: below --
2016-07-15 12:24 Jan Synáček
2016-07-15 15:05 ` Alex Kost

Code repositories for project(s) associated with this public inbox

	https://git.savannah.gnu.org/cgit/guix.git

This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox;
as well as URLs for read-only IMAP folder(s) and NNTP newsgroup(s).