Default cache directory of cat-avatar-generator-service

  • Open
  • quality assurance status badge
One participant
  • Evgeny Pisemsky
Submitted by
Evgeny Pisemsky
Evgeny Pisemsky wrote on 14 Feb 2023 04:10
(address .

The cache directory must:

1. End with a slash (due to implementation of the php script).
2. Exist or be created manually.
3. Be writeable by php-fpm.

The current default value doesn't meet these requirements and leads to
broken caching and errors in php-fpm log.

The simplest solution is to change it to /tmp/, but for obvious
reasons it is not suitable for production use.

However, since this service is described as demonstration, I would
prefer unsafe default over broken (for now).

Also the requirements above should probably be mentioned in the
documentation of the service.
Evgeny Pisemsky wrote on 30 Nov 2023 17:38
[PATCH] services: cat-http-server: Fix cat-avatar-generator-service.
(address .
Here is the simplest patch that changes cache directory to /tmp/ and
makes this service work with the recently added monsterid package.
From d6778a511cd5c41755a8ba9853d0e9db8dd47997 Mon Sep 17 00:00:00 2001
Message-ID: <>
From: Evgeny Pisemsky <>
Date: Thu, 30 Nov 2023 19:30:50 +0300
Subject: [PATCH] services: cat-http-server: Fix cat-avatar-generator-service.

* gnu/services/web.scm (cat-avatar-generator-service): Change default cache
directory of the service and make it compatible with the monsterid package.

Change-Id: I94b4b2d8b01e8502222e4fd2a6aea247d6480312
doc/guix.texi | 3 ++-
gnu/services/web.scm | 5 +++--
2 files changed, 5 insertions(+), 3 deletions(-)

Toggle diff (48 lines)
diff --git a/doc/guix.texi b/doc/guix.texi
index 1fd2e21608..95a2f05633 100644
--- a/doc/guix.texi
+++ b/doc/guix.texi
@@ -31752,7 +31752,7 @@ Web Services
the hash of a user's email address.
@deffn {Procedure} cat-avatar-generator-service @
- [#:cache-dir "/var/cache/cat-avatar-generator"] @
+ [#:cache-dir "/tmp/"] @
[#:package cat-avatar-generator] @
[#:configuration (nginx-server-configuration)]
Returns an nginx-server-configuration that inherits @code{configuration}. It
@@ -31764,6 +31764,7 @@ Web Services
A simple setup for cat-avatar-generator can look like this:
(services (cons* (cat-avatar-generator-service
+ #:package monsterid
(server-name '(""))))
diff --git a/gnu/services/web.scm b/gnu/services/web.scm
index 818226a4f7..47ca1e6968 100644
--- a/gnu/services/web.scm
+++ b/gnu/services/web.scm
@@ -1158,7 +1158,7 @@ (define* (nginx-php-location
(define* (cat-avatar-generator-service
- (cache-dir "/var/cache/cat-avatar-generator")
+ (cache-dir "/tmp/")
(package cat-avatar-generator)
(configuration (nginx-server-configuration)))
@@ -1175,7 +1175,8 @@ (define* (cat-avatar-generator-service
(nginx-location-configuration-body base)))))
(nginx-server-configuration-locations configuration)))
(root #~(string-append #$package
- "/share/web/cat-avatar-generator"))))))
+ "/share/web/"
+ #$(package-name package)))))))
(define-record-type* <hpcguix-web-configuration>

base-commit: c12cf2fb63bc2a5b0c5419a372ff6fff76a28a3b