From mboxrd@z Thu Jan 1 00:00:00 1970 From: Andy Wingo Subject: Re: [PATCH 3/3] gnu: Add CUPS service. Date: Sat, 08 Oct 2016 10:37:57 +0200 Message-ID: References: <20161007202424.26732-1-wingo@igalia.com> <20161007202424.26732-3-wingo@igalia.com> Mime-Version: 1.0 Content-Type: text/plain Return-path: Received: from eggs.gnu.org ([2001:4830:134:3::10]:40033) by lists.gnu.org with esmtp (Exim 4.71) (envelope-from ) id 1bsn9D-0007XS-82 for guix-devel@gnu.org; Sat, 08 Oct 2016 04:38:24 -0400 Received: from Debian-exim by eggs.gnu.org with spam-scanned (Exim 4.71) (envelope-from ) id 1bsn97-0004yY-Ef for guix-devel@gnu.org; Sat, 08 Oct 2016 04:38:22 -0400 Received: from pb-sasl2.pobox.com ([64.147.108.67]:64371 helo=sasl.smtp.pobox.com) by eggs.gnu.org with esmtp (Exim 4.71) (envelope-from ) id 1bsn97-0004xW-9E for guix-devel@gnu.org; Sat, 08 Oct 2016 04:38:17 -0400 Received: from sasl.smtp.pobox.com (unknown [127.0.0.1]) by pb-sasl2.pobox.com (Postfix) with ESMTP id 0313739088 for ; Sat, 8 Oct 2016 04:38:16 -0400 (EDT) Received: from pb-sasl2.nyi.icgroup.com (unknown [127.0.0.1]) by pb-sasl2.pobox.com (Postfix) with ESMTP id DB34139085 for ; Sat, 8 Oct 2016 04:38:15 -0400 (EDT) Received: from clucks (unknown [88.160.190.192]) (using TLSv1 with cipher ECDHE-RSA-AES256-SHA (256/256 bits)) (No client certificate requested) by pb-sasl2.pobox.com (Postfix) with ESMTPSA id 514FD39084 for ; Sat, 8 Oct 2016 04:38:14 -0400 (EDT) In-Reply-To: <20161007202424.26732-3-wingo@igalia.com> (Andy Wingo's message of "Fri, 7 Oct 2016 22:24:24 +0200") List-Id: "Development of GNU Guix and the GNU System distribution." List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , Errors-To: guix-devel-bounces+gcggd-guix-devel=m.gmane.org@gnu.org Sender: "Guix-devel" To: guix-devel@gnu.org On Fri 07 Oct 2016 22:24, Andy Wingo writes: > * gnu/services/cups.scm: New file. > * gnu/local.mk (GNU_SYSTEM_MODULES): Add gnu/services/cups.scm. > * doc/guix.texi (Printing Services): New section. With this, I can print :) Status: * There are no foomatic PPD's, as we have not packaged foomatic yet. Once that's packaged I think an easy way to add them would be to simply add that package to the default value of the cups-configuration "extensions" field. Or, make a service and add it to your services: (define (make-cups-extension name package) (service (service-type (name name) (extensions (list (service-extension cups-service-type identity)))) package)))))) (operating-system ... (services (cons (make-cups-extension 'foomatic foomatic) ...))) For now, cups-filters is the only extension installed by default. * (cups-service) should probably be added to the desktop-services. * The web interface is off by default; to turn it on you have to (cups-service (cups-configuration (web-interface? #t))) Probably should default to on, methinks. * I have tested adding a network printer via the web interface (http://localhost:631, also over https://localhost:631 if you add the self-signed cert exception), and printing to that printer. Works, it seems. * However printing test pages doesn't work! The way this works is that CUPS constructs a filter chain bannertopdf -> pdftopdf -> pdftoraster -> ... or something, and these are processes that are run sequentially, transforming a file. Well bannertopdf isn't finding the needed PDF. A bug. * The cups-filters change ends up causing the GTK's to rebuild, and this the graphical world. Bummer. I'll commit in a couple days if no objections. Andy