<feed xmlns='http://www.w3.org/2005/Atom'>
<title>guix/gnu/services, branch koszko</title>
<subtitle>Wojtek's customized Guix</subtitle>
<id>https://git.koszko.org/guix/atom?h=koszko</id>
<link rel='self' href='https://git.koszko.org/guix/atom?h=koszko'/>
<link rel='alternate' type='text/html' href='https://git.koszko.org/guix/'/>
<updated>2025-05-26T12:07:29Z</updated>
<entry>
<title>services: openvpn: Allow configuring the `mssfix' option in client.</title>
<updated>2025-05-26T12:07:29Z</updated>
<author>
<name>W. Kosior</name>
<email>koszko@koszko.org</email>
</author>
<published>2025-03-21T08:50:55Z</published>
<link rel='alternate' type='text/html' href='https://git.koszko.org/guix/commit/?id=6315fd97c890d7babf60b2bde1844f78b5c60d11'/>
<id>urn:sha1:6315fd97c890d7babf60b2bde1844f78b5c60d11</id>
<content type='text'>
This is useful for clients in networks where UDP packet fragmentation doesn't
work.

* gnu/services/vpn.scm (maybe-mtu?): New variable.
(serialize-maybe-mtu): New variable.
(openvpn-client-configuration)[mssfix]: New field.

Change-Id: I8262a8ac8bda9ea76e7398ba421bba4437732ebe
</content>
</entry>
<entry>
<title>services: openvpn: Allow the client to hardcode DNS servers to use.</title>
<updated>2025-05-26T12:07:29Z</updated>
<author>
<name>W. Kosior</name>
<email>koszko@koszko.org</email>
</author>
<published>2025-03-04T16:25:02Z</published>
<link rel='alternate' type='text/html' href='https://git.koszko.org/guix/commit/?id=0ba7acf648e77b33150260d4e0e1db974a4447df'/>
<id>urn:sha1:0ba7acf648e77b33150260d4e0e1db974a4447df</id>
<content type='text'>
* gnu/services/vpn.scm (%ipv4-regex): New variable.
(dhcp-option-dns-list?): New variable.
(serialize-dhcp-option-dns-list): New variable.
(openvpn-client-configuration)[dns]: New field.

Change-Id: Ic4e8184f47bf3f1d5b683c4dc737f6abba8d2f9e
</content>
</entry>
<entry>
<title>services: openvpn: Allow putting arbitrary text server's ccd config.</title>
<updated>2025-05-26T12:07:29Z</updated>
<author>
<name>W. Kosior</name>
<email>koszko@koszko.org</email>
</author>
<published>2025-02-17T11:27:08Z</published>
<link rel='alternate' type='text/html' href='https://git.koszko.org/guix/commit/?id=aa5224cb3e7265cfb42bf739ebec7f9aa6f72d1c'/>
<id>urn:sha1:aa5224cb3e7265cfb42bf739ebec7f9aa6f72d1c</id>
<content type='text'>
* gnu/services/vpn.scm (verbatim-text?): New variable.
(serialize-verbatim-text): New variable.
(openvpn-ccd-configuration)[opaque-configuration]: New field.

Change-Id: I1becf66bb2e41237595e45cd23c20800d3ffe239
</content>
</entry>
<entry>
<title>services: openvpn: Allow OpenVPN client to dictate route(s) it sets.</title>
<updated>2025-05-26T12:07:29Z</updated>
<author>
<name>W. Kosior</name>
<email>koszko@koszko.org</email>
</author>
<published>2025-02-17T11:25:32Z</published>
<link rel='alternate' type='text/html' href='https://git.koszko.org/guix/commit/?id=25bef3d8ca0cfd03f2c4f7846162ca42956831ec'/>
<id>urn:sha1:25bef3d8ca0cfd03f2c4f7846162ca42956831ec</id>
<content type='text'>
* gnu/services/vpn.scm (maybe-ip-mask?): New variable.
(serialize-maybe-ip-mask): New variable.
(pull-route?): New variable.
(serialize-pull-route): New variable.
(openvpn-client-configuration)[pull-route?]: New field.
(openvpn-client-configuration)[route]: New field.

Change-Id: Ief6390e905612420ad249c9ecd80a46caad2e378
</content>
</entry>
<entry>
<title>services: openvpn: Allow using up/down scripts bundled with OpenVPN.</title>
<updated>2025-05-26T12:07:29Z</updated>
<author>
<name>W. Kosior</name>
<email>koszko@koszko.org</email>
</author>
<published>2024-09-20T10:20:02Z</published>
<link rel='alternate' type='text/html' href='https://git.koszko.org/guix/commit/?id=330fa06c0240101c67bfd974bf6a3e81e8aad2bd'/>
<id>urn:sha1:330fa06c0240101c67bfd974bf6a3e81e8aad2bd</id>
<content type='text'>
This is useful for example to pull DNS settings from the server.

* gnu/services/vpn.scm (use-up-down-scripts?): New variable.
(serialize-use-up-down-scripts): New variable.
(make-up-down-config-options): New variable.
(make-script-security-cli-options): New variable.
(openvpn-client-configuration)[use-up-down-scripts?]: New field.
(openvpn-config-file): Serialize that field.
(openvpn-shepherd-service): Pass `--script-security' option to daemon.

Change-Id: I1141dd0b9bf5956f13cf1552c2718b0a7035fa86
</content>
</entry>
<entry>
<title>services: shepherd: Allow extensions to alter shepherd root config.</title>
<updated>2025-05-26T12:07:28Z</updated>
<author>
<name>W. Kosior</name>
<email>koszko@koszko.org</email>
</author>
<published>2025-02-17T11:35:07Z</published>
<link rel='alternate' type='text/html' href='https://git.koszko.org/guix/commit/?id=ada6a31a83e9adad4fc55bdd176fbddd556fec2e'/>
<id>urn:sha1:ada6a31a83e9adad4fc55bdd176fbddd556fec2e</id>
<content type='text'>
This, in particular, enables system administrator to use a
different (modified) shepherd package for the init.

* gnu/services/shepherd.scm (shepherd-root-service-type)[extend]: When an
extension is a procedure, do not treat it as an extra shepherd service to
append.  Instead, pass the resulting config through it.

Change-Id: I39c394ab0798b7a1f8d373c19becf01c4870d10b
</content>
</entry>
<entry>
<title>services: Allow specifying user and group for knot resolver.</title>
<updated>2025-05-26T12:07:28Z</updated>
<author>
<name>W. Kosior</name>
<email>koszko@koszko.org</email>
</author>
<published>2024-09-04T18:50:17Z</published>
<link rel='alternate' type='text/html' href='https://git.koszko.org/guix/commit/?id=f73d53f17beeabb5b327e7735cae79a0cd2216ff'/>
<id>urn:sha1:f73d53f17beeabb5b327e7735cae79a0cd2216ff</id>
<content type='text'>
Kresd used to start as root and create cache files with root ownership before
dropping privileges.  This made unprivileged kres-cache-gc (in a separate
service) fail when trying to read them.  The new default is to start both as
`knot-resolver', with configuration fields that allow overriding this default.

* gnu/services/dns.scm (&lt;knot-resolver-configuration&gt;)[user]: New field.
  (&lt;knot-resolver-configuration&gt;)[group]: New field.
  (knot-resolver-shepherd-services): Pass the user&amp;group from config to forkexec
  constructors.

Change-Id: Id06a8eca140fdca14995a03e910f521d5f4636e5
</content>
</entry>
<entry>
<title>services: Update cron service to use `privileged-program' API.</title>
<updated>2025-05-26T12:07:27Z</updated>
<author>
<name>W. Kosior</name>
<email>koszko@koszko.org</email>
</author>
<published>2024-09-04T18:43:07Z</published>
<link rel='alternate' type='text/html' href='https://git.koszko.org/guix/commit/?id=2ba93846b7db2ef446ea8d7a660f7d853f7e60d4'/>
<id>urn:sha1:2ba93846b7db2ef446ea8d7a660f7d853f7e60d4</id>
<content type='text'>
Uses of deprecated `setuid-program' get replaced with new
`privileged-program'.

* gnu/services/mcron.scm (cron-daemon-setuid-programs): Use
  `privileged-program'.
  (cron-daemon-service-type): Extend `privileged-program-service-type'.

Change-Id: I819bf75a0bb23c9b2e97ebcb144ca8adb81a9dde
</content>
</entry>
<entry>
<title>gnu: mcron: Add traditional cron service.</title>
<updated>2025-05-26T12:07:27Z</updated>
<author>
<name>W. Kosior</name>
<email>koszko@koszko.org</email>
</author>
<published>2024-05-26T22:52:23Z</published>
<link rel='alternate' type='text/html' href='https://git.koszko.org/guix/commit/?id=4dc69657aafa5374596266ce1adfacc805753e9a'/>
<id>urn:sha1:4dc69657aafa5374596266ce1adfacc805753e9a</id>
<content type='text'>
TODO: write good changelog entry
Change-Id: Ib1e8f1afcbaae302eac51883e3b02a1d2c32a89e
</content>
</entry>
<entry>
<title>services: Add epicyon-service-type.</title>
<updated>2025-05-26T12:07:25Z</updated>
<author>
<name>W. Kosior</name>
<email>koszko@koszko.org</email>
</author>
<published>2024-07-13T10:11:19Z</published>
<link rel='alternate' type='text/html' href='https://git.koszko.org/guix/commit/?id=b8cad0f63633baa783d0017297696c4f7ac27f92'/>
<id>urn:sha1:b8cad0f63633baa783d0017297696c4f7ac27f92</id>
<content type='text'>
* gnu/services/web.scm (define-module): Use `util-linux' from `(gnu packages
  linux)'.
  [#:export]: Export new service type as well as configuration constructor,
  predicate and getters.
  (&lt;epicyon-configuration&gt;): New variable.
  (epicyon-activation): New procedure.
  (%epicyon-passwd): New variable.
  (%ensure-epicyon-overlay-unmounted): New variable.
  (epicyon-shepherd-services): New procedure.
  (epicyon-service-type): New variable.

Change-Id: I9e786594b75b588099d3b9f6b0ab5663903c9db4
</content>
</entry>
</feed>
