unofficial mirror of guix-patches@gnu.org 
 help / color / mirror / code / Atom feed
From: Oleg Pykhalov <go.wigust@gmail.com>
To: "Ludovic Courtès" <ludo@gnu.org>
Cc: 32141@debbugs.gnu.org
Subject: [bug#32141] [PATCH] services: Add ddclient service.
Date: Wed, 25 Jul 2018 10:22:50 +0300	[thread overview]
Message-ID: <87effrpynp.fsf@gmail.com> (raw)
In-Reply-To: <20180713145854.12250-1-go.wigust@gmail.com>

[-- Attachment #1: Type: text/plain, Size: 2949 bytes --]

Hello Ludovic,

Thank you for review.

ludo@gnu.org (Ludovic Courtès) writes:

> Oleg Pykhalov <go.wigust@gmail.com> skribis:
>
>> * gnu/services/dns.scm (ddclient-configuration, opaque-ddclient-configuration,
>> ddclient-service-type): New variables.
>> (uglify-field-name, serialize-field, serialize-boolean, serialize-integer,
>> serialize-string, serialize-list, serialize-extra-options,
>> ddclient-activation, ddclient-shepherd-service,
>> generate-ddclient-documentation, generate-opaque-ddclient-documentation): New
>> procedures.
>> * doc/guix.texi (DNS Services): Document it.
>
> [...]
>
>> +@subsubheading ddclient Service
>> +
>> +@cindex ddclient
>> +@uref{https://sourceforge.net/projects/ddclient/, ddclient} is an address
>> +updating utility for dynamic DNS services.
>
> It would be nice to expound a bit, like:
>
>   The ddclient service described below runs the ddclient daemon, which
>   takes care of automatically updating DNS entries for service providers
>   such as DynDNS.com.

OK.  I improved little bit with “such as @uref{https://dyn.com/dns/,
Dyn}.” if you don't mind.

> Also, is there a better home page?

I think no.  I found http://ddclient.sf.net/ in Debian package recipe
[1], but ‘curl -Ik --location http://ddclient.sf.net/’ returns a
https://sourceforge.net/p/ddclient/wiki/Home/ URI.

> Otherwise LGTM!
>
>> +    (list (shepherd-service
>> +           (provision '(ddclient))
>> +           (documentation "Run ddclient daemon.")
>> +           (start #~(make-forkexec-constructor
>> +                     (list #$(file-append ddclient "/bin/ddclient")
>> +                           "-foreground" "-file" "/etc/ddclient/ddclient.conf"
>> +                           "-debug" "-verbose")
>> +                     #:pid-file #$pid
>> +                     #:environment-variables
>> +                     (list "SSL_CERT_DIR=/run/current-system/profile\
>> +/etc/ssl/certs"
>> +                           "SSL_CERT_FILE=/run/current-system/profile\
>> +/etc/ssl/certs/ca-certificates.crt")))
>> +           (stop #~(make-kill-destructor))))))
>
> Does it run as root?  If there’s no option to run it (mostly) as
> non-root, perhaps it would make sense to try using
> ‘make-forkexec-constructor/container’ here (as a separate patch.)
>
> WDYT?

It did run as root.  I've succeeded to run it with ‘ddclient’ user.


Also, the generated ‘ddclient.conf’ which contains secrets is stored in
the store.  I probably should change the ‘ddclient-activation’ procedure

--8<---------------cut here---------------start------------->8---
(copy-file #$(plain-file "ddclient.conf" config-str) file)
--8<---------------cut here---------------end--------------->8---

to a procedure which writes ‘config-str’ to the file without storing it
somewhere else.  WDYT?


[1]  https://packages.debian.org/stretch/ddclient

[-- Attachment #2: signature.asc --]
[-- Type: application/pgp-signature, Size: 832 bytes --]

  reply	other threads:[~2018-07-25  7:24 UTC|newest]

Thread overview: 7+ messages / expand[flat|nested]  mbox.gz  Atom feed  top
2018-07-13 14:58 [bug#32141] [PATCH] services: Add ddclient service Oleg Pykhalov
2018-07-19  9:40 ` Ludovic Courtès
2018-07-25  7:22   ` Oleg Pykhalov [this message]
2018-07-26  8:51     ` Ludovic Courtès
2018-08-01 17:27       ` Oleg Pykhalov
2018-08-27 11:22         ` Ludovic Courtès
2018-08-29 22:45           ` bug#32141: " Oleg Pykhalov

Reply instructions:

You may reply publicly to this message via plain-text email
using any one of the following methods:

* Save the following mbox file, import it into your mail client,
  and reply-to-all from there: mbox

  Avoid top-posting and favor interleaved quoting:
  https://en.wikipedia.org/wiki/Posting_style#Interleaved_style

  List information: https://guix.gnu.org/

* Reply using the --to, --cc, and --in-reply-to
  switches of git-send-email(1):

  git send-email \
    --in-reply-to=87effrpynp.fsf@gmail.com \
    --to=go.wigust@gmail.com \
    --cc=32141@debbugs.gnu.org \
    --cc=ludo@gnu.org \
    /path/to/YOUR_REPLY

  https://kernel.org/pub/software/scm/git/docs/git-send-email.html

* If your mail client supports setting the In-Reply-To header
  via mailto: links, try the mailto: link
Be sure your reply has a Subject: header at the top and a blank line before the message body.
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).