1: ## Using Samsung provided drivers
3: It's not a great science as it almost works out-of-the-box. All you have to do is to download the driver from samsung web page and copy two files into specified directory of CUPS system.
5: The steps are as following:
7: 1. Download following file [Linux Driver for CUPS](http://org.downloadcenter.samsung.com/downloadfile/ContentsFile.aspx?CDSite=nl&CttFileID=1860607&CDCttType=DR&ModelType=N&ModelName=ML-1640/SEE&VPath=DR/200802/20080227113738171_UnifiedLinuxDriver.tar.gz).
10: 2. Extract the `*tar.gz` file, `cd` to the directory `cdroot` and copy the following files:
13: cp Linux/i386/at_root/usr/lib/cups/filter/rastertosamsungpcl /usr/pkg/libexec/cups/filter/
15: cp Linux/noarch/at_opt/share/ppd/ML-1640spl2.ppd /usr/pkg/share/cups/model/
18: 3. After that execute (or reboot the machine) `/etc/rc.d/cupds restart` and your **Samsung ML-1640** will work just out-of-the-box.
20: Enjoy !
22: ## Using a native driver
24: Nowadays, the best way to get a wide range of Samsung and Xerox laser printers working with CUPS is using the [Splix](http://splix.ap2c.org/) drivers. Since it's not in pkgsrc yet, you have to download and build it yourself.
27: $ wget http://ufpr.dl.sourceforge.net/sourceforge/splix/splix-2.0.0.tar.bz2 ;# or download from any sourceforge mirror
28: $ tar jxf splix-2.0.0.tar.bz2
29: $ cd splix-2.0.0
32: To build the driver we need CUPS (print/cups) and GNU Make (devel/gmake) installed from pkgsrc. Also, we can optionally disable JBIG support or install wip/jbigkit to fulfill its dependencies. In this example, I'm about to disable it
35: $ DISABLE_JBIG=1 gmake
36: $ su root -c 'gmake install'
39: Now the driver is installed, along with the PPD files. You can add the desired printer(s) the usual way.
CVSweb for NetBSD wikisrc <wikimaster@NetBSD.org> software: FreeBSD-CVSweb