**CUPS** (önceden **Common UNIX Printing System'in** kısaltması ), bir bilgisayarın bir yazdırma sunucusu olarak hareket etmesine imkan sağlayan Unix benzeri bilgisayar işletim sistemleri için modüler bir yazdırma sistemidir. CUPS çalıştıran bir bilgisayar, istemci bilgisayarlardan yazdırma işlerini kabul edebilen, bunları işleyebilen ve uygun yazıcıya gönderebilen bir ana bilgisayardır.

CUPS, bir yazdırma biriktiricisi ve zamanlayıcıdan, yazdırma verilerini yazıcının anlayacağı bir biçime dönüştüren bir filtre sisteminden ve bu verileri yazdırma aygıtına gönderen bir arka uç sisteminden oluşur. CUPS, yazdırma işlerini ve kuyrukları yönetmek için temel olarak İnternet Printing Protocol (IPP) kullanır. Ayrıca System V ve Berkeley yazdırma sistemleri için geleneksel komut satırı arabirimlerini sağlar ve Berkeley yazdırma sisteminin Line Printer Daemon protokolü için destek ve Server Message Block (SMB) protokolü için sınırlı destek sağlar. Sistem yöneticileri, metin dosyalarını Adobe'nin PostScript Printer Description (PPD) formatında düzenleyerek CUPS'nin sağladığı aygıt sürücülerini yapılandırabilir. CUPS'yi yapılandırabilen farklı platformlar için bir dizi kullanıcı arabirimi vardır ve yerleşik bir web tabanlı arabirime sahiptir. CUPS, Apache Lisansı altında sağlanan ücretsiz bir yazılımdır .

Tarih
-----

Easy Software Products'ın sahibi olan Michael Sweet, 1997'de CUPS geliştirmeye başladı ve ilk genel betalar 1999'da ortaya çıktı. CUPS'nin orijinal tasarımı Line Printer Daemon protokolünü (LPD) kullandı, ancak LPD'deki sınırlamalar ve satıcı uyumsuzlukları nedeniyle bunun yerine Internet Printing Protocol (IPP) seçildi. CUPS başlangıçta "The Common UNIX Printing System" olarak adlandırıldı. Bu ad, UNIX ticari markasıyla ilgili yasal sebepler nedeniyle CUPS 1.4 ile başlayarak yalnızca "CUPS" olarak kısaltılmıştır. CUPS, çoğu Linux dağıtımı için varsayılan yazdırma sistemi olarak hızla benimsendi. Mart 2002'de Apple Inc. Mac OS X 10.2 için yazdırma sistemi olarak CUPS'u benimsedi. Şubat 2007'de Apple Inc. baş geliştirici Michael Sweet'i işe aldı ve CUPS kaynak kodunu satın aldı. 20 Aralık 2019'da Michael Sweet, blogunda Apple'dan ayrıldığını duyurdu. 2020'de OpenPrinting organizasyonu projeyi çatalladı ve Michael Sweet üzerinde çalışmaya devam etti.

Genel bakış
-----------

CUPS, yazdırma işlerinin yazıcılara standart bir şekilde gönderilmesini sağlayan bir mekanizma sağlar. Yazdırma verileri, işleri, yazdırma işini yazıcının anlayacağı bir biçime dönüştüren bir *filtre sistemine* gönderen bir *programlayıcıya*  gider. Filtre sistemi daha sonra verileri bir *arka* uca, yani yazdırma verilerini bir aygıta veya ağ bağlantısına gönderen özel bir filtreye iletir. Sistem, verileri hedef yazıcıya uygun bir biçime dönüştürmek için PostScript'i ve verilerin rasterleştirilmesini kapsamlı bir şekilde kullanır.

CUPS, baskı sunucusunda çok sayıda veri formatını işleyebilen standart ve modülerleştirilmiş bir baskı sistemi sunar. CUPS'den önce, kendi yazıcı dillerini ve formatlarını kullanan piyasadaki çok çeşitli yazıcıları barındıracak standart bir yazıcı yönetim sistemi bulmak zordu. Örneğin, System V ve Berkeley yazdırma sistemleri birbirleriyle büyük ölçüde uyumsuzdu ve programın veri biçimini yazdırılabilir bir biçime dönüştürmek için karmaşık komut dosyalarına ve geçici çözümlere ihtiyaç duyuyorlardı. Genellikle yazıcıya gönderilen dosya biçimini algılayamadılar ve bu nedenle veri akışını otomatik ve doğru bir şekilde dönüştüremediler. Ayrıca, merkezi bir sunucu yerine bireysel iş istasyonlarında veri dönüştürme işlemi gerçekleştirilmiştir.

CUPS, yazıcı üreticilerinin ve yazıcı sürücüsü geliştiricilerinin, yazdırma sunucusunda yerel olarak çalışan sürücüleri daha kolay oluşturmasına olanak tanır. İşlem, sunucuda gerçekleşir ve diğer Unix yazdırma sistemlerinden daha kolay ağ tabanlı yazdırmaya olanak tanır. Samba yüklendiğinde, kullanıcılar uzak Windows bilgisayarlarındaki yazıcıları adresleyebilir ve ağ üzerinden yazdırmak için genel PostScript sürücüleri kullanılabilir.

### Scheduler

CUPS scheduler, HTTP/1.1 üzerinden İnternet Yazdırma Protokolü'nü (IPP) uygular. Bir yardımcı uygulama (cups-lpd), Line Printer Daemon protokolü (LPD) isteklerini IPP'ye dönüştürür. Zamanlayıcı aynı zamanda yazdırma işlerini yönetmek, sunucunun konfigürasyonunu yapmak ve CUPS ile ilgili dokümantasyon için web tabanlı bir arayüz sağlar.

Bir *yetkilendirme* modülü, hangi IPP ve HTTP mesajlarının sistemden geçebileceğini kontrol eder. IPP/HTTP paketleri yetkilendirildikten sonra, gelen bağlantıları dinleyen ve işleyen *istemci* modülüne gönderilir. İstemci modülü, web tabanlı yazıcıları, sınıfları ve iş durumu izleme ve yönetimini desteklemek için gerektiğinde harici CGI programlarını yürütmekten de sorumludur. Bu modül isteklerini işledikten sonra, bir istemcinin HTTP sunucusunda herhangi bir erişim denetimini veya kimlik doğrulamasını atlamasını önlemek için Tekdüzen Kaynak Tanımlayıcı (URI) doğrulaması gerçekleştiren *IPP* modülüne gönderir. URI, bir ağdaki soyut veya fiziksel bir kaynağa atıfta bulunmak için kullanılabilecek bir adı veya adresi belirten bir metin dizesidir .

Zamanlayıcı, yazıcı sınıflarına izin verir. Uygulamalar, bir sınıftaki yazıcı gruplarına istek göndererek, zamanlayıcının işi o sınıftaki ilk uygun yazıcıya yönlendirmesine olanak tanır. Bir *iş* modülü, yazdırma işlerini yönetir, bunları son dönüştürme ve yazdırma için filtreye ve arka uç işlemlerine gönderir ve bu işlemlerden gelen durum mesajlarını izler.

CUPS programlayıcı, yapılandırma dosyalarını ayrıştıran, CUPS veri yapılarını başlatan ve CUPS programını başlatan ve durduran bir *yapılandırma* modülü kullanır. Yapılandırma modülü, yapılandırma dosyası işleme sırasında CUPS hizmetlerini durduracak ve ardından işleme tamamlandığında hizmeti yeniden başlatacaktır.

Bir *günlük kaydı* modülü, erişim, hata ve sayfa günlük dosyaları için zamanlayıcı olaylarının günlüğünü işler. *Ana* modül, istemci bağlantıları için zaman aşımlarını ve G/Ç isteklerinin gönderilmesini, sinyallerin izlenmesini, alt işlem hatalarının ve çıkışlarının ele alınmasını ve gerektiğinde sunucu yapılandırma dosyalarının yeniden yüklenmesini yönetir.

Zamanlayıcı tarafından kullanılan diğer modüller şunları içerir:

* Yazdırma verilerini bir yazdırma aygıtı için uygun bir biçime dönüştüren filtreleme işleminde kullanılan Çok Amaçlı İnternet Posta Uzantıları (MIME) türünü ve dönüştürme veritabanını işleyen *MIME* modülü;
* Postscript Yazıcı Açıklaması (PPD) dosyalarının bir listesini işleyen bir *PPD* modülü;
* sistemde mevcut olan cihazların listesini yöneten bir *cihaz* modülü;
* CUPS içindeki yazıcıları ve PPD'leri yöneten bir *yazıcı* modülü.

### Filtre sistemi

 CUPS, kullanıcıların CUPS sunucusuna farklı veriler göndermesine ve bu verilerin yazıcının anlayacağı ve yazdırabileceği bir biçime dönüştürülmesine olanak tanır.
CUPS, baskı sunucusunda çeşitli veri biçimlerini işleyebilir. Yazdırma işi verilerini bir dizi *filtre* aracılığıyla yazıcının son diline/biçimine dönüştürür. Dosya biçimlerini tanımlamak için MIME türlerini kullanır.

#### MIME veritabanları

CUPS sistemi, yazdırma işini zamanlayıcıya atadıktan sonra, CUPS filtre sistemine geçirilir. Bu, verileri yazıcı için uygun bir biçime dönüştürür. Başlatma sırasında, CUPS arka plan programı iki MIME veritabanı yükler: CUPS'nin veri kabul edebileceği bilinen dosya türlerini tanımlayan `mime.types` ve her bir belirli MIME türünü işleyen programları tanımlayan `mime.convs` .

`mime.types` dosyası sözdizimine sahiptir:

`mimetype { [file-extensions] | [pattern-match] }`

Örneğin, bir HTML dosyasını algılamak için aşağıdaki giriş uygulanabilir:

`text/html html htm \`

`printable(0,1024) + (string(0," <HTML> ") string(0,"<!` `DOCTYPE"))`
İkinci satır, dosyadaki metnin ilk kilobaytının yazdırılabilir karakterler içerdiğini ve bu karakterlerin HTML işaretlemesi içerdiğini belirleyerek dosya içeriğini belirtilen MIME türüyle eşleştirir. Yukarıdaki model eşleşirse, filtre sistemi dosyayı MIME tipi metin/html olarak işaretler.

`mime.convs` dosyası sözdizimine sahiptir:

`source destination cost program`

*Kaynak* alan, `mime.types` dosyası aranarak belirlenen MIME türünü belirtirken, *hedef* alan istenen çıktı türünü listeler ve hangi programın kullanılması gerektiğini belirler. Bu aynı zamanda `mime.types` dosyasından alınır. *Maliyet* alanı, bir dosyayı dönüştürürken filtre setlerinin seçiminde yardımcı olur. Son alan olan *program*, veri dönüştürmeyi gerçekleştirmek için hangi filtre programının kullanılacağını belirler.

Bazı örnekler:

```
metin/düz uygulama/postscript 50 texttops
application/vnd.cups-postscript application/vnd.cups-raster 50 pstoraster
image/* application/vnd.cups-postscript 50 imagetops
image/* application/vnd.cups-raster 50 imagetoraster
```

#### Filtreleme işlemi

Filtreleme işlemi, altı bağımsız değişkenle önceden biçimlendirilmiş girdi verilerini alarak çalışır:

1. yazdırma işinin iş kimliği
2. Kullanıcı adı
3. iş adı
4. yazdırılacak kopya sayısı
5. herhangi bir yazdırma seçeneği
6. dosya adı (ancak standart girdiden yeniden yönlendirildiyse bu gereksizdir).

Daha sonra MIME veritabanlarının kullanımı yoluyla girilen verinin türünü ve kullanılacak filtreyi belirler; örneğin, görüntü verileri belirli bir filtre aracılığıyla algılanır ve işlenir ve HTML verileri başka bir filtre aracılığıyla algılanır ve işlenir.

CUPS, sağlanan verileri PostScript verilerine veya doğrudan tarama verilerine dönüştürebilir. PostScript verilerine dönüştürülürse, ön filtre adı verilen ve PostScript verilerini başka bir PostScript dönüştürücü aracılığıyla çalıştıran ek bir *filtre* uygulanır, böylece yazdırılacak sayfa aralıklarını seçme, *n* -up modunu ayarlama ve diğer aygıt- belirli şeyler. Ön filtreleme yapıldıktan sonra, veriler PostScript yazıcı kullanılıyorsa doğrudan bir CUPS arka ucuna gönderilebilir veya linuxprinting.org tarafından Foomatic gibi başka bir filtreye geçirilebilir. Alternatif olarak, PostScript'i bir ara *CUPS-raster* biçimine dönüştüren Ghostscript'e geçirilebilir. Ara tarama formatı daha sonra tarama verilerini yazıcıya özel formata dönüştüren son bir filtreye geçirilir. CUPS ile birlikte gelen varsayılan filtreler şunları içerir:

* PCL'ye raster
* ESC/P veya ESC/P2'ye raster (bir Epson yazıcı dili, artık büyük ölçüde yeni ESC/P-Raster formatının yerini almıştır)
* Dymo'ya raster (başka bir yazıcı şirketi).
* Zebra Programlama Dili veya ZPL'ye raster (bir Zebra Technologies yazıcı dili)

(2009 (2009) itibarıyla) other proprietary languages like GDI or SPL (Samsung Printer Language) are supported by Splix, a raster to SPL translator.

Bununla birlikte, birkaç başka alternatif CUPS ile entegre olabilir. HPLIP (önceden HP-IJS olarak bilinir), HP yazıcılar için Linux+CUPS sürücüleri sağlar, Gutenprint (önceden Gimp-Print olarak bilinir), (çoğunlukla) mürekkep püskürtmeli yazıcılar için bir dizi yüksek kaliteli yazıcı sürücüsüdür ve TurboPrint for Linux başka bir ürün yelpazesine sahiptir. çok çeşitli yazıcılar için kaliteli yazıcı sürücüleri.

### Arka uçlar

Arka uçlar, CUPS'nin yazıcılara veri gönderme yöntemleridir. CUPS için kullanılabilen birkaç arka uç vardır: paralel, seri ve USB bağlantı noktaları, cup-pdf  PDF Sanal Yazdırma ve ayrıca IPP, JetDirect (AppSocket), Line Printer Daemon ("LPD") aracılığıyla çalışan ağ arka uçları ve SMB protokolleri .

CUPS 1.4'teki yeni bir `mdns` arka ucu, Bonjour ( DNS-SD ) tabanlı yazıcı keşfi sağlar. CUPS 1.6'da, Avahi kullanılarak Bonjour yazıcı keşfi ve paylaşımı da desteklenir.

Uyumluluk
---------

CUPS, hem System V hem de Berkeley yazdırma komutlarını sağlar, böylece kullanıcılar CUPS aracılığıyla yazdırma için geleneksel komutlarla devam edebilirler. CUPS, standart IPP bağlantı noktası olan 631 numaralı bağlantı noktasını (TCP ve UDP) kullanır ve isteğe bağlı olarak LPD yazdırmayı desteklemek için cup-lpd yardımcı programını kullanan inetd, launchd, Solaris Service Management Facility veya xinetd tarafından 515 numaralı bağlantı noktasında kullanılır. CUPS kurulduğunda, `lp` System V yazdırma sistemi komutu ve `lpr` Berkeley yazdırma sistemi komutları uyumlu programlar olarak yüklenir. Bu, CUPS için standart bir arabirim sağlar ve bu yazdırma sistemlerine dayanan mevcut uygulamalarla maksimum uyumluluğa izin verir.

Kullanıcı arayüzü araçları
--------------------------

CUPS kurulumuna yardımcı olacak çeşitli araçlar mevcuttur.

### CUPS web tabanlı yönetim arayüzü

 CUPS web tabanlı arayüz
 CUPS web tabanlı arayüzde yazıcı bilgileri
Tüm platformlarda CUPS, 631 numaralı bağlantı noktasında çalışan web tabanlı bir yönetim arabirimine sahiptir. Özellikle yazdırma işlerini izlemesi ve uzaktan yazdırma kuyrukları ve yazıcılar eklemesi gereken kuruluşlara yardımcı olur.

CUPS 1.0, web tarayıcıları için basit bir sınıf, iş ve yazıcı izleme arabirimi sağladı.

CUPS 1.1, bu arayüzü, kullanıcıların sınıfları, işleri ve yazıcıları eklemesine, değiştirmesine, silmesine, yapılandırmasına ve kontrol etmesine izin veren gelişmiş bir yönetim arayüzü ile değiştirdi.

CUPS 1.2 ve sonraki sürümleri, daha iyi okunabilirlik ve tasarım, otomatik olarak keşfedilen yazıcılar için destek ve sistem günlüklerine ve gelişmiş ayarlara daha iyi erişim sağlayan yenilenmiş bir web arayüzü sağlar.

### GNOME

 Sürüm 40'tan itibaren GNOME Ayarları
GNOME 3'ten başlayarak GNOME'da CUPS yazdırma, GNOME Çekirdek Uygulamalarının bir parçası olan Ayarlar uygulamasında ele alınmıştır. GUI, CUPS yazıcıları ekleyebilir ve CUPS yazıcılarını ve kuyruklarını yönetebilir. GNOME 3'ten önce, bu görevleri gerçekleştirmek için GNOME Yazdırma Ayarları (eski adıyla CUPS Manager) kullanılıyordu.

GNOME'un araç takımı GTK+, 2006'da piyasaya sürülen 2.10 sürümünde CUPS'ye dayalı entegre baskı desteği içeriyordu.

### KDE

 KDEPrint
KDE için KDEPrint iskeleti, CUPS arayüzü olarak işlev gören ve sınıfların, yazdırma kuyruklarının ve yazdırma işlerinin yönetimine izin veren çeşitli GUI araçları içerir; diğer özelliklerin yanı sıra yeni yazıcılar eklemeye yardımcı olacak bir yazıcı sihirbazı içerir. KDEPrint ilk olarak KDE 2.2'de ortaya çıktı.

KDEPrint, en iyi desteklenenlerden biri olan CUPS ile birkaç farklı yazdırma platformunu destekler. KDE, *qtcups'taki* önceki bir yazdırma desteği sürümünün yerini almıştır ve bu KDE modülüyle geriye dönük olarak uyumludur. (2009 (2009) itibarıyla) Bir diyalog kutusu programı olan *kprinter*, işleri yazdırma aygıtına göndermek için ana araç olarak hizmet eder; komut satırından da başlatılabilir. KDEPrint, herhangi bir işi CUPS'ye teslim edilmeden önce önceden filtrelemek veya dosyaları PDF'ye dönüştürmek gibi işleri tek başına ele almak için bir sistem içerir. Bu filtreler, bir çift Desktop/ XML dosyası tarafından tanımlanır.

KDEPrint'in ana bileşenleri şunları içerir:

* yazıcı özelliklerinin değiştirilmesine izin veren bir Yazdırma İletişim kutusu
* Yazıcı Ekleme Sihirbazı aracılığıyla yazıcı ekleme ve kaldırma gibi yazıcıların yönetimine izin veren bir Yazdırma Yöneticisi
* bekletme/bırakma, iptal etme ve başka bir yazıcıya taşıma gibi yazıcı işlerini yöneten bir İş Görüntüleyici/Yöneticisi
* bir CUPS yapılandırma modülü (KDE'ye entegre)

### Mac OS X

Mac OS X 10.5'te yazıcılar, Sistem Tercihleri'ndeki Yazdırma ve Faks panelinde ve yazdırma kuyruklarını görüntüleyen ve yazıcılar kurulduktan sonra ek yapılandırmaya izin veren yazıcı proxy uygulamalarında yapılandırılır. Mac OS X'in önceki sürümlerinde, Yazdırma ve Faks tercih bölmesinin önceki sürümlerinde bulunmayan yapılandırma seçeneklerini sağlayan Yazıcı Kurulum Yardımcı Programı da vardı. 

### PrinterSetup

PrinterSetup sistemi CUPS kuyruklarını yönetebilir. Her bir yazdırma kuyruğunu açıklamak için bir metin dosyası atama yaklaşımını benimser. Bu 'PrinterSetupFiles' daha sonra 'PrinterSetupLists' adı verilen diğer metin dosyalarına eklenebilir. Bu, yazıcıların mantıksal olarak gruplandırılmasını sağlar. (2009 (2009) itibarıyla) PrinterSetup projesi emekleme aşamasında kalır.

### Red Hat Linux/Fedora

 Fedora, CUPS tabanlı yazıcıları değiştirebilen bir yazdırma yöneticisi sağlar
Red Hat Linux 9 ile başlayarak, Red Hat, CUPS tabanlı ve GNOME'a entegre edilmiş entegre bir yazdırma yöneticisi sağladı. Bu, Microsoft Windows'un kullandığına benzer bir kullanıcı arabirimi aracılığıyla yazıcıların eklenmesine izin verdi; burada yeni bir yazıcı *ekleme sihirbazı* kullanılarak yeni bir yazıcı eklenebiliyordu, ayrıca yüklü yazıcıların listesini içeren bir pencerede varsayılan yazıcı özelliklerini değiştiriyordu. İşler ayrıca bir yazdırma yöneticisi kullanılarak başlatılıp durdurulabilir ve yazıcı simgesine sağ tıklandığında açılan bir bağlam menüsü kullanılarak yazıcı duraklatılabilir.

Eric Raymond, *The Luxury of Cehalet* adlı eserinde bu sistemi eleştirmiştir. Raymond, CUPS'yi Fedora Core 1 yazdırma yöneticisini kullanarak yüklemeye çalışmıştı, ancak bunu sezgisel bulmadı; arayüz tasarımcılarını kullanıcının bakış açısıyla tasarlamadıkları için eleştirdi. Yazıcı kuyrukları fikrinin açık olmadığını çünkü kullanıcılar kendi yerel bilgisayarlarında kuyruklar oluşturduklarını, ancak bu kuyruklar aslında CUPS sunucusunda oluşturulduğunu buldu.

Ayrıca, ağ bağlantılı CUPS (IPP), ağ bağlantılı Unix ( LPD ), ağ bağlantılı Windows ( SMB ), ağ bağlantılı Novell ( NCP ) veya ağ bağlantılı JetDirect arasından seçim yapabileceği için çok sayıda sıra tipi seçeneği kafa karıştırıcı buldu. Yardım dosyasını tek başına yararsız ve kullanıcının ihtiyaçlarıyla büyük ölçüde alakasız buldu. Raymond, Linux masaüstlerinde kullanıcı arayüzü tasarımının yeniden düşünülmesi ve daha dikkatli bir tasarım gerektirdiğini göstermek için CUPS'u genel bir konu olarak kullandı. dedi ki:

> Buradaki büyük sorun, yapılandırma sihirbazının tüm onaylanmış ritüelleri (standartlaştırılmış tıklama düğmelerine sahip GUI, bir tarayıcıda açılır yardım, vb.) yapmasıdır, ancak bunların elde etmesi beklenen merkezi özniteliğe sahip olmamasıdır: keşfedilebilirlik. Yani, arayüzdeki her noktanın, daha sonra ne yapacağınızı öğrenebileceğiniz istemleri ve kendisine bağlı eylemlerin kalitesi. Projeniz bu kaliteye sahip mi?
> 
> 

### ESP Print Pro

CUPS'un orijinal yaratıcıları olan Easy Software Products, bir görsel arayüz oluşturdu, birçok yazıcı için destek sağladı ve bir PostScript RIP uyguladı. ESP Print Pro, Windows, UNIX ve Linux üzerinde çalıştı, ancak artık mevcut değil ve bu ürün için destek 31 Aralık 2007'de sona erdi.

Ayrıca bakınız
--------------

* Foomatic
* Gutenprint
* HP Linux Imaging and Printing
* Lp (Unix)
* LPRng
* Scanner Access Now Easy
* Spooling
* Xprint

Kaynakça
--------

1. ↑  "Release 2.3.3" 21 Eylül 2022 tarihinde Wayback Machine sitesinde arşivlendi.. April 27, 2020. Retrieved April 27, 2020.
2. ↑  "Release 2.3.3" 20 Eylül 2022 tarihinde Wayback Machine sitesinde arşivlendi..
3. ↑  "CUPS 2" 20 Eylül 2022 tarihinde Wayback Machine sitesinde arşivlendi..
4. ↑  "CUPS Software License Agreement" 10 Kasım 2017 tarihinde Wayback Machine sitesinde arşivlendi..
5. ↑  "Releases · OpenPrinting/cups". *GitHub* (İngilizce). 22 Kasım 2021 tarihinde kaynağından arşivlendi. Erişim tarihi: 3 Şubat 2022.
6. ↑  "A Bright New Future for Printing on Linux". *Linux Today*. 9 Haziran 1999. 5 Ekim 2007 tarihinde kaynağından arşivlendi.  Yazar `|ad1=` eksik `|soyadı1=` (yardım)
7. ↑  "The Future Brightens for Linux Printing". *Linux Today*. 11 Haziran 1999. 8 Ocak 2005 tarihinde kaynağından arşivlendi.  Yazar `|ad1=` eksik `|soyadı1=` (yardım)
8. ↑  "CUPS Presentation at 2012 Open Printing Summit" (PDF). 24 Nisan 2012. 14 Şubat 2017 tarihinde kaynağından (PDF) arşivlendi.
9. ↑  "CUPS Licensed for Use in Apple Operating Systems!". *Easy Software Products*. 1 Mart 2002. 8 Aralık 2015 tarihinde kaynağından arşivlendi.
10. ↑  "Thoughts on Leaving Apple..." *www.msweet.org*. 6 Şubat 2020 tarihinde kaynağından arşivlendi.
11. ↑  Michael Sweet (17 Ekim 2020). "Add an OpenPrinting changes file". *CUPS (OpenPrinting fork) repository*. GitHub. 4 Ağustos 2021 tarihinde kaynağından arşivlendi.
12. 1 2 3 4  "CUPS Design Description". *CUPS documentation*. Apple Inc. 29 Mayıs 2020 tarihinde kaynağından arşivlendi. Erişim tarihi: 31 Aralık 2020.
13. ↑  "Authorization". *Easy Software Products*. CUPS Software Design. 10 Ocak 2007 tarihinde kaynağından arşivlendi. Erişim tarihi: 9 Ocak 2007.
14. ↑  "Authorisation". *Easy Software Products*. CUPS Software Administrators Manual. 10 Ocak 2007 tarihinde kaynağından arşivlendi. Erişim tarihi: 9 Ocak 2007.
15. ↑  "IPP". *Easy Software Products*. CUPS Software Design. 10 Ocak 2007 tarihinde kaynağından arşivlendi. Erişim tarihi: 9 Ocak 2007.
16. ↑  "Classes". *Easy Software Products*. CUPS Software Administrators Manual. 6 Ocak 2007 tarihinde kaynağından arşivlendi. Erişim tarihi: 9 Ocak 2007.
17. ↑  "Jobs". *Easy Software Products*. CUPS Software Administrators Manual. 6 Ocak 2007 tarihinde kaynağından arşivlendi. Erişim tarihi: 9 Ocak 2007.
18. ↑  "Configuration". *Easy Software Products*. CUPS Software Design. 10 Ocak 2007 tarihinde kaynağından arşivlendi. Erişim tarihi: 9 Ocak 2007.
19. ↑  "Logging". *Easy Software Products*. CUPS Software Design. 10 Ocak 2007 tarihinde kaynağından arşivlendi. Erişim tarihi: 9 Ocak 2007.
20. ↑  "MIME". *Easy Software Products*. CUPS Software Design. 10 Ocak 2007 tarihinde kaynağından arşivlendi. Erişim tarihi: 9 Ocak 2007.
21. ↑  "PPD". *Easy Software Products*. CUPS Software Design. 10 Ocak 2007 tarihinde kaynağından arşivlendi. Erişim tarihi: 9 Ocak 2007.
22. ↑  "Devices". *Easy Software Products*. CUPS Software Design. 10 Ocak 2007 tarihinde kaynağından arşivlendi. Erişim tarihi: 9 Ocak 2007.
23. ↑  "Printers". *Easy Software Products*. CUPS Software Design. 10 Ocak 2007 tarihinde kaynağından arşivlendi. Erişim tarihi: 9 Ocak 2007.
24. ↑  "Filters". *Easy Software Products*. CUPS Software Administrators Manual. 6 Ocak 2007 tarihinde kaynağından arşivlendi. Erişim tarihi: 9 Ocak 2007.
25. 1 2  "Filters". *Easy Software Products*. CUPS Software Design. 10 Ocak 2007 tarihinde kaynağından arşivlendi. Erişim tarihi: 9 Ocak 2007.
26. ↑  "File Typing and Filtering". *Easy Software Products*. CUPS Software Administrators Manual. 6 Ocak 2007 tarihinde kaynağından arşivlendi. Erişim tarihi: 9 Ocak 2007.
27. ↑  "mime.types". *Easy Software Products*. CUPS Software Administrators Manual. 6 Ocak 2007 tarihinde kaynağından arşivlendi. Erişim tarihi: 9 Ocak 2007.
28. ↑  "mime.convs". *Easy Software Products*. CUPS Software Administrators Manual. 6 Ocak 2007 tarihinde kaynağından arşivlendi. Erişim tarihi: 9 Ocak 2007.
29. ↑  "pstops". *Easy Software Products*. CUPS Software Administrators Manual. 10 Ocak 2007 tarihinde kaynağından arşivlendi. Erişim tarihi: 9 Ocak 2007.
30. ↑  The MIME type for the CUPS raster format is application/vnd.cups-raster.
31. ↑  "SPL driver for UNIX". *splix.sourceforge.net*. 2 Haziran 2007 tarihinde kaynağından arşivlendi.
32. ↑  "Debian - Details of package cups-pdf in wheezy". 1 Mayıs 2015 tarihinde kaynağından arşivlendi.
33. ↑  "What's New in CUPS 1.4". 2 Kasım 2012 tarihinde kaynağından arşivlendi.
34. ↑  "What's New in CUPS 1.6". 4 Ekim 2012 tarihinde kaynağından arşivlendi.
35. ↑  "Managing Printers from the Web". CUPS Software Administrators Manual. 25 Aralık 2004 tarihinde kaynağından arşivlendi.
36. ↑  "Handling printing in GNOME Red Hat Enterprise Linux 8". *Red Hat Customer Portal* (İngilizce). Red Hat. 24 Eylül 2020 tarihinde kaynağından arşivlendi. Erişim tarihi: 12 Mayıs 2021.
37. ↑  "gnome-cups-manager". 15 Eylül 2014 tarihinde kaynağından arşivlendi.
38. ↑  "KDEPrint Homepage". n.d. 9 Mayıs 2008 tarihinde kaynağından arşivlendi. Erişim tarihi: 2 Nisan 2008.
39. ↑  "Printer Setup is in a prototyping phase". *Lucid Information Systems*. 28 Ağustos 2008 tarihinde kaynağından arşivlendi.
40. ↑  "The Luxury of Ignorance: An Open-Source Horror Story". 28 Mayıs 2010 tarihinde kaynağından arşivlendi.
41. ↑  "Easy Software Products' ESP Print Pro". 19 Haziran 2009 tarihinde kaynağından arşivlendi.

Konuyla ilgili yayınlar
-----------------------

* CUPS Filtreleme Sisteminin Tasarımı — Mac OS X ("Jaguar") bağlamı dahil 18 Aralık 2006 tarihinde Wayback Machine sitesinde arşivlendi.. *LinuxPrinting.org*. 5 Ocak 2005'te erişildi.
* KDE. *KDEPrint bilgileri*. KDE-baskı web sitesi. 14 Ocak 2005'te erişildi.
* Linux'ta Yazıcılar Nasıl Yönetilir 4 Mart 2016 tarihinde Wayback Machine sitesinde arşivlendi. Linux.com, 2015-04-27.

Dış bağlantılar
---------------

* "CUPS". Freecode.
* OpenPrinting 20 Eylül 2022 tarihinde Wayback Machine sitesinde arşivlendi.
* Universal Plug and Play – Printer Device V 1.0 and Printer Basic Service V 1.0

| * g
* t
* d
Özgür ve açık kaynak kodlu yazılım |
| --- |
| Genel | 
* Açık ve kapalı kaynakların karşılaştırılması
* Özgür yazılım için alternatif terimler
* Kaynak kod barındırma servislerinin karşılaştırılması
* Eski özel yazılımlar
* Özgür ve açık kaynak kodlu Android uygulamaları
* Özgür ve açık kaynak kodlu yazılım paketleri
* Özgür yazılım
* Özgür yazılım etkinlikleri
* Özgür yazılım projesi dizinleri
* Özgür yazılım web uygulamaları
* Gratis versus libre
* Uzun süreli destek
* Açık kaynak
* Anahat
* SPDX

 |
| Yazılım listesi | 
* Android yazılımları
* Çözücüler
* İşletim sistemleri
* Oyunlar
* Programlama dilleri
* Ses yazılımları
* Web uygulamaları

 |
| Tarihçe | 
* GNU
* Haiku
* Linux
* Mozilla

 |
| Topluluk | 
* Açık kaynak yazılım hareketi
* Özgür yazılım hareketi
* Kuruluşlar
* Etkinlikler
* Yazılım Özgürlüğü Günü
* LibrePlanet

 |
| Lisanslar | 
* Apache
* Artistik
* Beerware
* Boost
* BSD
* CC0
* GNU GPL
* GNU LGPL
* ISC
* MIT
* MPL
* Ms-PL/RL
* WTFPL
* zlib

 |
| Lisans türleri ve standartlar | 
* Özgür ve açık kaynak kodlu yazılım lisanslarının karşılaştırılması
* Katılımcı Lisans Sözleşmesi
* Copyfree
* Copyleft
* Debian Özgür Yazılım Yönergeleri
* Özgür Kültür İşleri Tanımı
* Özgür lisans
* Özgür Yazılım Tanımı
* Açık Kaynak Tanımı
* Açık kaynak lisansı
* Hoşgörülü özgür yazılım lisansı
* Kamu malı

 |
| Zorluklar | 
* İkili leke
* Dijital haklar yönetimi
* Özgür ve açık kaynak kodlu grafik aygıtı sürücüsü
* Donanım kısıtlamaları
* Lisansın yayılması
* Mozilla yazılım markalanması
* Sahipli yazılım
* SCO–Linux tartışmaları
* Güvenli önyükleme
* Yazılım patentleri
* Yazılım güvenliği
* Güvenilir bilişim

 |
| İlgili başlıklar | 
* *Özgür Yazılım, Özgür Toplum*
* *Katedral ve Pazar*
* Çatallama
* Linux dağıtımı
* Microsoft'un Açık Teknik Şartname Sözü
* *Revolution OS*

 |
| 
* Kategori Kategori \*Commons sayfası Commons

 |