Re: Questions about Gutenprint

Solomon Peachy via Gimp-print-devel <[email protected]> Tue, 3 Jun 2025 07:33:18 -0400
Newsgroups gmane.linux.printing.gimp-print.devel
Message-ID <[email protected]>
--===============3776299390374892068==
Content-Type: multipart/signed; micalg=pgp-sha512;
	protocol="application/pgp-signature"; boundary="5irF3AEQb7VMUXYO"
Content-Disposition: inline


--5irF3AEQb7VMUXYO
Content-Type: text/plain; charset=utf-8
Content-Disposition: inline
Content-Transfer-Encoding: quoted-printable

On Sun, Jun 01, 2025 at 02:34:05PM +0300, =D7=A9=D7=97=D7=A8 =D7=91=D7=9F =
=D7=97=D7=9E=D7=95 wrote:
> However, since my target environment is Windows, I am trying to determine
> whether Gutenprint or any related components (e.g., via a CUPS-on-Windows
> setup, or exporting PPD capabilities to another stack) could be feasible =
in
> my case. Alternatively, I=E2=80=99m considering using the Windows Print S=
pooler and
> Win32 API with the manufacturers=E2=80=99 official drivers, potentially m=
odifying
> DEVMODE settings to toggle the cutter programmatically.

Serious question: Why Windows?  It is an objectively poor platform for=20
this sort of thing, especially if you deliberately try to bypass=20
Windows' own printing infrastructure.

(Meanwhile, DNP's Windows drivers for these printers fully support 2x6"=20
 strips, and I assume there is a programmic way for applications to=20
 request specific print options when using the Windows printing APIs)

>    Do you believe Gutenprint (or any part of its architecture) can be
>    effectively used on Windows to enable the kind of strip cutting I need?

It's certainly _possible_ but it's creating a lot of extra work for yoursel=
f.

(I can't comment on the technical ability of CUPS to run _natively_=20
 under Windows but I know of folks that (1) manually generate rendered=20
 files using their application or (2) invoke the Gutenprint CUPS filter=20
 under Windows to produce rendered files and then (3) use the=20
 selphy_print backend to handle communication with the printer.  In all=20
 cases their application handles queueing/spooling/state.  They only did=20
 this because they had a large legacy codebase that they considered infeasi=
ble
 to port)

>    Is there any way to leverage the Gutenprint drivers or PPD logic outsi=
de
>    of CUPS (e.g., as a reference for building Windows-compatible workflow=
s)?

In the sense that the source code for all of this is provided under=20
F/OSS terms, it's usable as a reference.  But you can cross-compile the=20
binaries to run under Windows and execute them directly.  PPDs are still=20
used for figuring out and specifying configurable options even if you=20
don't use the rest of the CUPS infrastructure (eg for spooling etc)

>    In your experience, does the Windows Print Spooler/DEVMODE approach
>    offer enough control to reliably achieve 2x6 cutting, or is Gutenprint=
 (via
>    CUPS/Linux) a more stable route?

I'm not familiar with the nuances of Windows's printing APIs, but I have=20
to imagine it is more "reliable" or "stable" to use the infrastructure=20
that Windows provides versus effectively rolling your own custom=20
approach. (Assuming that it can provide the technical capabilities you=20
require)

Meanwhile, as Till already pointed out, another approach is to run=20
CUPS+Gutenprint natively under WSL, which is effectively a full-featured=20
Linux VM running under Windows.  That still leaves the question of how=20
your photobooth application would interact with the printer, but it is=20
my understanding that the latest Windows 11 release provides a native=20
IPP print client, and if that's not viable for whatever reason there are=20
multiple third-party IPP client libraries. Or you could also roll your=20
own minimal interface using curl or some other http library.

(This is because CUPS provides a usable IPP experience for "classic"=20
PPD-based printer drivers.  Though there are some annoying bugs if=20
you're not on the latest release..)

Best of luck,

 - Solomon
--=20
Solomon Peachy			      pizza at shaftnet dot org (email&xmpp)
                                      @pizza:shaftnet dot org   (matrix)
Dowling Park, FL                      speachy (libera.chat)

--5irF3AEQb7VMUXYO
Content-Type: application/pgp-signature; name=signature.asc

-----BEGIN PGP SIGNATURE-----

iQIzBAABCgAdFiEE3H5Sx9DyiyB5hnENrGLLO/XVulEFAmg+3XwACgkQrGLLO/XV
ulHh3xAAqfGpNwhLC7GYia7cOT1/HhGyvkJmxrpQcB/c4Q9YDpa355GBvUm1N1zW
5H6oUZL1o2IXXCv2Zw/o8Bugi79RjA00hF4G/xqrEq9fm+NyBZ10MYRzUM1ddtNJ
f+iSPDfAJiLDeDlMc39QtAj5QVIvZ/QkJLsecXDHr/Q5bzda26qyixiazJhFke7e
ouEt/zx96SAVk4x1zeQbry9jarLaZddoh/XemHWOIfHoyy4Ng926SyPWVzmsGKNf
LPyypM/6UtfZk6TWpM7XVRQXnsVSOoGnQppDFsZyGyrXbMbdQHE2pgwngWlcVsy2
8YacaJdxLBOC6ctPOsXK0FNT0v0cVfUM6L7r5G+WOPnbr4BM892fBuJnXaOqmC2O
w0RAjk8kqlg7rWXFRAc0wqAi8w4Ng9lqPzsXKV5Kkux5hSo6C/R+cbVdg0Cewyqe
o1NO9iP9lVgHe99BFhMPacNBe7ogHvI2IzmxhDhbAwMsZCFozTp3vNXlDonijjJo
DrvMyvJY1Z//2ndhMCEGCNwIHL4IYG+GNF5DpuwOkOG6K91jHSrzBpKiTJzLHm/U
6NJoSjeHLWSyST5iH7zeU45iJypEFxIjAWkIByKvT27NK8CZ4irc/ybBgi7qtsbf
G5LAWQgSgxA6DS7ILxdYrH+qetajSBMh001SqhQePlK/B6Eg4tI=
=7YhP
-----END PGP SIGNATURE-----

--5irF3AEQb7VMUXYO--


--===============3776299390374892068==
Content-Type: text/plain; charset="us-ascii"
MIME-Version: 1.0
Content-Transfer-Encoding: 7bit
Content-Disposition: inline


--===============3776299390374892068==
Content-Type: text/plain; charset="us-ascii"
MIME-Version: 1.0
Content-Transfer-Encoding: 7bit
Content-Disposition: inline

_______________________________________________
Gimp-print-devel mailing list
[email protected]
https://lists.sourceforge.net/lists/listinfo/gimp-print-devel

--===============3776299390374892068==--