система фильтрации, преобразующая данные печати в формат, понятный принтеру
Back-end — система, отправляющая данные на устройства печати.
CUPS использует IPP (англ.Internet Printing Protocol) в качестве основы для управления заданиями и очередями. По умолчанию используется TCP-порт 631. Система также имеет собственный веб-интерфейс для администрирования. CUPS является свободным программным обеспечением и распространяется в соответствии с GNU GPL и GNU LGPL второй версии. В настоящее время CUPS является стандартом де-факто в UNIX-подобных операционных системах.
Разработка CUPS началась в 1997 году, а первая публичная бета-версия появилась через два года. Изначально CUPS использовал протокол LPD, но через некоторое время LPD был заменён на Internet Printing Protocol. CUPS был быстро принят как система печати по умолчанию в нескольких дистрибутивах Linux, на текущий момент применяется в большинстве дистрибутивов. В марте 2002 года, корпорация Apple приняла CUPS как систему печати для своей операционной системы Mac OS X 10.2, а в феврале 2007 наняла главного разработчика CUPS и приобрела права на исходный код.[4]
В декабре 2019 года, основатель проекта CUPS уволился из компании Apple[5].
Проект OpenPrinting, при поддержке организации Linux Foundation, приступил к развитию форка системы печати CUPS.[6][7]
Наиболее активное участие в разработке форка принимает Майкл Свит (Michael R Sweet), изначальный автор CUPS.[8]
В виду отсутствия интереса компании Apple к поддержанию системы печати CUPS, Проект OpenPrinting принял решение взять сопровождение кода CUPS в свои руки.[9]
Разработчики OpenPrinting заявили о продолжении разработки независимо от Apple и рекомендовали рассматривать их ответвление[6] в качестве основного проекта. Будущие версии форка CUPS будут выходить с сохранением имени проекта и без ранее используемого суффикса «opX».
CUPS и Microsoft Windows
Несмотря на то, что в последних версиях Windows предусмотрена поддержка CUPS, часто используются совместно CUPS и Samba, что требует экспорта драйверов для Windows при помощи Samba, либо установки драйверов для соответствующего принтера на клиентском компьютере с Windows. Используется такое сочетание, так как часто драйверы для Windows имеют бо́льшую функциональность, чем драйверы для CUPS.
Администрирование
CUPS имеет встроенный веб-интерфейс администрирования, который работает через IPP. Для вызова панели администрирования обычно используется URLhttp://localhost:631. Таким образом, администрирование может осуществляться средствами любого веб-браузера. Однако, существует также множество графических средств настройки CUPS. Например, среда GNOME содержит утилиту gnome-cups-manager, позволяющую администрировать CUPS, а в среде KDE используются средства администрирования, специфичные для различных дистрибутивов.