I've just set up a CentOS 6.5 64-bit VM with CUPS (1.4.2) and Samba (3.6.9) and can print from my Windows 7 64-bit machine quite happily.
The shared printer is a Kyocera FS-2100DN, for which I downloaded a PPD file from the Kyocera website, and I was able to use the Kyocera universal KX driver set version 611118 to add the shared printer to my own machine, but when I use the Server Properties dialogue from Windows, I can't upload drivers to the print$ share so that others can add the printer using point and print.
I've checked, and I can create/upload files to the print$ share, and I've temporarily turned off SELinux to test this.
The error, though, is:
The folder you specified doesn't contain a compatible software driver for your device
This driver was exactly what I used to install the printer (shared from the Samba machine) on my own PC, so it definitely is a driver for the printer.
Where can I go from here to get the x86 and x64 drivers onto the Samba server?
I know this is a late reply, but I just experienced this same situation, determined the problem, and found a solution. The issue is that the Kyocera drivers .inf files are formatted incorrectly for Samba.
When you download the drivers and look in the folders you will find the
OEMSETUP.inf
file (which you probably selected when trying to upload the driver to the print$ share through print management or print server properties dialog). It varies but you will most likely see instructions for installing drivers for NTx86.5.1, NTx86.6.0, NTamd64.5.1, NTamd64.6.0 (and ia which I assume is for Itanium). The "5.1 & 6.0" part is what causes Samba problems. Here is what I did to solve it;OEMSETUP.inf
file in text editorNT<...>
sections from[Manufacturer]
section.Replace it with just
NTx86
andNTamd64
.So this...
becomes
Find the Model Sections right below this and you should see groups labeled like,
[Kyocera NTx86.5.1]
and[Kyocera.NTx86.6.0]
and so on.Just delete the whole model sections for anything with a
.5.1
in it.The sections that have
.6.0
in them, simple remove the.6.0
so that instead of[Kyocera.NTx86.6.0]
it reads[Kyocera.NTx86]
Save the file (in the original directory).
Go back to print management, add driver, select the x64 and x86 boxes, select have disk, select newly saved .inf file. (Note that it seems you have to have both x64/x86 drivers to actually select the driver in the printers properties)
You should now see the list of print drivers and you should be able to click through and install them.
Note that because you are editing the .inf file the digital signature will no longer be valid so you will get some warnings. Obviously since we made the changes I wasn't do concerned about them. I also assume that if you needed to install the 5.1 versions then you could follow the same instructions, but instead of removing the
.5.1
model sections you would change those to just readNTx86
andNTamd64
(and instead delete the.6.0
sections). I didn't need to do that however so I didn't test it. Also, I'm pretty sure there are other sections of the file that don't get used because of the changes I made and could also be deleted (like the section commented as "install Section for NT5.1 (XP)"), but I didn't bother trying to "minimize" the file once I determined the cause of the problem and got the drivers installed.I don't have reputation so can't post pictures for you.