fc1df595d7cfaa77a79b9a45602c757bfbdacd13
[samba.git] / docs / textdocs / PRINTER_DRIVER.txt
1 !==
2 !== PRINTER_DRIVER.txt for Samba release 1.9.18 08 Jan 1998
3 !==
4 ==========================================================================
5         Supporting the famous PRINTER$ share
6  
7         Jean-Francois.Micouleau@utc.fr, 10/26/97
8         modified by herb@sgi.com 1/2/98
9
10 ===========================================================================
11
12 Disclaimer:
13
14         This ONLY works with Windows 95
15         It does NOT work with Windows NT 4
16
17
18 Goal:
19
20         When you click on a samba shared printer, you can now install the driver
21         automatically onto the Windows 95 machine, as you would from an NT server.
22         
23 How To:
24
25         It's a three step config.
26         
27         First, create a new directory, where you will put the driver files, and
28         make a share in smb.conf pointing to it.
29
30         Example:
31         
32                 [printer$]
33                   path=/usr/local/samba/printer
34                   public=yes
35                   writable=no
36                   browseable=yes
37
38         Second, you have to build the list of the drivers required for a specific
39         printer. This is the most complicated thing to do. Get the files
40         'msprint.inf' and 'msprint2.inf' from Windows 95, the easiest way is to
41         grab them from a working Windows 95 computer. They are usually located
42         in 'c:\windows\inf'. Look in them for the printer you have. Run the new
43         program 'mkprinterdef' with the file name and the printer name as
44         parameters.
45         Example:
46                 
47         mkprinterdef msprint.def "Apple LaserWriter" >>/usr/local/samba/lib/printers.def
48          
49         The program will print out a list of required files to stderr.
50         Copy all the files listed into the directory you created in step 1     
51         
52         Third, you need to add 2 new parameters in smb.conf. One is in the
53         [global] section, called 'printer driver file' pointing to the file description,
54         and the other in each printer share, called 'printer driver location' pointing
55         to where the client will get the drivers. Don't forget to set correctly
56         the printer driver parameter to the Windows printer name.
57         Example:
58         
59                 [global]
60                   printer driver file=/usr/local/samba/lib/printers.def
61
62                 [lp]
63                    comment = My old printer laser
64                    browseable = yes
65                    printable = yes
66                    public = yes
67                    writable = no
68                    create mode = 0700
69                    printer driver=Apple LaserWriter
70                    printer driver location=\\%h\PRINTER$
71
72         %h will expand to the computer name, and PRINTER$ is the name of the
73         share created in step one.
74         
75         
76 If it doesn't work for you, don't send flame ! It worked for me. In case of
77 trouble don't hesitate to send me a mail with your smb.conf file and 
78 printers.def
79
80
81 *******  added by herb@sgi.com
82
83 For those of you who like to know the details, and in case I have guessed
84 wrong on some of the fields - The following is the format of the entries 
85 in the printers.def file: (entries are 1 single line - they are split here 
86 for readability)
87
88 <Long Printer Name>:<Driver File Name>:<Data File Name>:<Help File Name>:
89 <Language Monitor Name>:<Default Data Type>:<Comma Separated list of Files>
90
91 The <Help File Name> and the <Language Monitor Name> can be empty.
92 If no <Driver File Name> or <Data File Name> are specified in the inf file,
93 these will default to the section name for the printer.