CUPS-GENPPD(8)

πŸŽ€ CUPS-GENPPD(8) πŸŽ€

okay bestie, so you found the page for cups-genppd β€” it's from the Gutenprint Manual Pages, and it's literally the tool that makes PPD files for CUPS. sit down, grab a snack, let's go πŸ’…


✨ NAME ✨

cups-genppd β€” generate Gutenprint PPD files for use with CUPS πŸ’–


🌸 SYNOPSIS 🌸

cups-genppd [-c localedir] [-l locale] [-p prefix] [-q] [-v] model1
[model2, ...modeln]
cups-genppd -L [-c localedir]
cups-genppd -M [-v]
cups-genppd -h
cups-genppd -V

πŸ¦‹ DESCRIPTION πŸ¦‹

okay so cups-genppd generates Gutenprint PPD files for use with CUPS. that's the whole vibe. ✨

the default behavior β€” like, if you just run it with no command β€” is to output PPD files for all the models of printer that the Gutenprint printer driver library supports. all of them. the whole roster. πŸ‘‘

you can restrict the models though: just list either the driver names or the full names of the printers you want PPD files for, after any options. and yes, you can mix and match β€” driver name here, full name there. we love flexibility 🫢

also!! the PPD files can be localised β€” that is, translated β€” so they use your native language instead of US English. and there are commands specifically to find out what printer models and languages are supported, so you're never guessing. icon behavior, honestly.


πŸ“ EXAMPLES πŸ“

cups-genppd -v bjc-6200 'Epson Stylus Photo 1280' 'HP DeskJet 850C'

verbosely generate three PPD files β€” listing the driver name in the first case, and the full name in the second. see? mixing works. slay.

LANG=de_DE genppd -p ppd -c /usr/share/locale

generate PPDs for all available models, in directory ppd, using the locale data found under /usr/share/locale. the language to use is taken from the environment (de_DE). lowkey elegant.

cups-genppd -L -c /usr/local/share/locale

list available languages using the locale data found under /usr/local/share/locale.

cups-genppd -M -v

list available drivers, with long model descriptions. verbose queen πŸ’…


πŸ’œ COMMANDS πŸ’œ

  • -h β€” show a help message. baby's first flag 🍼
  • -L β€” list available translations (message catalogs). and listen: if a locale is used for which there isn't a corresponding translation, then US English will be used. no cap, that's the fallback.
  • -M β€” list available printer models. by default only driver names are listed; if verbose mode is used, the full model name will also be printed. so -v really said "and I'll give you the long version too" ✨
  • -V β€” show version information and defaults.
the default behavior is to output PPDs if no command is given. just so we're clear 🫢

🌈 OPTIONS 🌈

  • -c localedir β€” use localedir as the base directory for locale data.
  • -l locale β€” output PPDs translated with messages for locale. ⚠️ important: locale must be a locale as shown by locale -a. for example, the de translation is used by the de_DE locale; de alone will not work. it's giving "close enough" but it is not close enough, bestie πŸ’€
  • -p prefix β€” output PPDs in directory prefix. directories are not recursively created β€” so make the folder yourself first, okay? πŸ™ˆ
  • -q β€” Quiet mode. 🀫
  • -v β€” Verbose mode. πŸ“£
  • models β€” a list of printer models, either the driver or quoted full name. quotes matter, iykyk πŸŽ€

🧚 SEE ALSO 🧚

CUPS Software Administrators Manual, http://localhost:631/documentation.html


Copyright Β© 1992-2002 Michael Sweet (mike@easysw.com)

This program is free software; you can redistribute it and/or modify it under the terms of the GNU General Public License, version 2, as published by the Free Software Foundation.

This manual page was written by Roger Leigh (rleigh@debian.org).


and that's the whole page, bestie πŸ’– huge shoutout to Version 5.3.5, dated 12 Mar 2025 β€” that's the footer energy, that's the sign-off, mwah πŸ˜˜πŸŽ€

πŸ“¦ where this page comes from