[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]
Re: how to write services (was: Re: Teams)
From: |
Ricardo Wurmus |
Subject: |
Re: how to write services (was: Re: Teams) |
Date: |
Wed, 15 Jun 2022 15:53:31 +0200 |
User-agent: |
mu4e 1.6.10; emacs 28.1 |
catonano@gmail.com writes:
> Il giorno mer, 15/06/2022 alle 01.52 +0700, Blake Shaw ha scritto:
>>
>> I found the documentation to be a bit confusing (understandably, as
>> its new), but once the workflow snapped together its been amazing to
>> see how easy it is to create new services.
>
> This is something I'm specifically interested in
>
> In fact, I wrote this toot that got several boosts and likes but NO
> answer
> https://floss.social/web/@abbienormal/108378060174601402
I don’t know Odoo, but the general process is this:
- look up the relevant documentation of your application to figure out
what commands must be executed. Take note of any way to pass a
configuration file.
- copy an existing shepherd service. Maybe start with
gnu/services/audio.scm, because it’s pretty simple while not completely
trivial.
- adjust the commands and names.
In gnu/services/audio.scm you see the definition of mpd-service-type,
which is a *system* service that 1) adds a user account, 2) does some
one-shot preparation work, and 3) registers the mpd-shepherd-service.
mpd-shepherd-service is a procedure returning a shepherd service. The
service has a start and stop command. Adjust this for your service.
mpd-shepherd-service refers to its argument “config”, which is supposed
to be a Scheme configuration value. It’s just a record defined higher
up as <mpd-configuration>. mpd-config->file turns that Scheme value
into a string that can live in a file as the mpd configuration file.
This is pretty much all there is to it. Some services are simpler and
don’t need any one-shot setup, nor do they need system user accounts, so
they would just boil down to a shepherd service definition.
--
Ricardo
- Re: Teams, (continued)
- Re: Teams, Tobias Geerinckx-Rice, 2022/06/04
- Re: Teams, Josselin Poiret, 2022/06/05
- Re: Teams, Ludovic Courtès, 2022/06/06
- Re: Teams, Andrew Tropin, 2022/06/14
- Re: Teams, Blake Shaw, 2022/06/14
- how to write services (was: Re: Teams), catonano, 2022/06/15
- Re: how to write services (was: Re: Teams),
Ricardo Wurmus <=
- Re: how to write services (was: Re: Teams), Blake Shaw, 2022/06/15
- Re: how to write services (was: Re: Teams), Maxime Devos, 2022/06/15
- Message not available
- Re: how to write services (was: Re: Teams), Maxime Devos, 2022/06/15
- Message not available
- Re: how to write services (was: Re: Teams), Maxime Devos, 2022/06/15
- Message not available
- Re: how to write services (was: Re: Teams), Maxime Devos, 2022/06/15
- Re: how to write services (was: Re: Teams), Blake Shaw, 2022/06/15
- Re: how to write services (was: Re: Teams), Maxime Devos, 2022/06/16
- Re: how to write services (was: Re: Teams), catonano, 2022/06/16
- Re: how to write services (was: Re: Teams), Ricardo Wurmus, 2022/06/16
- Re: how to write services (was: Re: Teams), Brian Cully, 2022/06/16