Subject: bug#33105: cups Can't create temporary file or stopped "Filter failed"

From: [email-masked] (Ludovic Courtès)
Date: Wed, 24 Oct 2018 14:52:22 +0200

Hi Oleg,

Oleg Pykhalov <[email-masked]> skribis:

> I read gnu/services/cups.scm and found that the /var/spool/cups/
> directory should be owned by ‘lp’ user:
>
> (define %cups-activation
>   ;; Activation gexp.
>   (with-imported-modules '((guix build utils))
>     #~(begin
>         (use-modules (guix build utils))
>         (define (mkdir-p/perms directory owner perms)
>           (mkdir-p directory)
>           (chown "/var/run/cups" (passwd:uid owner) (passwd:gid owner))
>           ;; ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
>           (chmod directory perms))
>         ;; …
>         (let ((user (getpwnam "lp")))
>           ;; …
>           (mkdir-p/perms "/var/spool/cups/tmp" user #o755) ; <----------
>           ;; …
>           ))))
>
>
>
> Maybe we should make /var/spool/cups/tmp directory owned by ‘lp’ user,
> too?  WDYT?
>
> Test page was printed successfully with:
>
> $ sudo ls -ld /var/spool/cups/tmp
> drwxr-xr-x 2 lp lp 4096 Oct 20 21:20 /var/spool/cups/tmp

I don’t know the answer :-), but from what you’re saying, it looks like
making /var/spool/cups/tmp ‘lp’-owned is the right thing.

If it works for you, I guess you can go ahead!

Ludo’.