Posted on 10-23-2015 10:29 AM
in order to get a xerox stapling feature to work so users can print and have the xerox staple pages together (via xerox features), I have to install a 10.6 xerox driver. (i am running no computer lower than 10.10)
When I manually ran the driver (to setup the printer for casper admin upload), i get an initial prompt from 'gatekeeper' for unidentified developer, so I just right click open and accept it to install. It went through its installation process and finishes.
When i print for the first time i receive; The software for the printer was installed incorrectly. Would you like it to be repaired?
I accept it to be 'repaired', enter admin privileges, repair takes place, and now i can print.
now the printer has been uploaded, driver uploaded also. I created a self service policy and run it, the printer gets added. The policy log shows that the driver installed successfully on the client computer. I then print a document and get the same; "The software for the printer was installed incorrectly. Would you like it to be repaired?"
anybody else see this or know what is happening?
other xerox drivers i install do not inform me of 'unidentified developer'??
do you think its happening because its a 10.6 driver and I'm running 10.10 ?
Solved! Go to Solution.
Posted on 10-27-2015 11:05 AM
@tcandela so the next step I would take is to try fixing those permissions on a machine that has the "Repair" problem and see if that fixes it. If it does, then you can add that step as a postflight script to your driver package, or as an After script in Casper.
Posted on 10-23-2015 10:37 AM
@tcandela, the "unidentified developer" error is simply coming up because of the age of the installer pkg. Back in the 10.6 days, Apple didn't require package signing, but started doing that sometime after Gatekeeper came out, or maybe a little before - I can't specifically recall now. Xerox just hasn't gone back to that older driver pkg and repackaged it with a proper signed dev certificate. If your Gatekeeper settings are set to "Mac App Store and identified developers", then you will get that warning each time you try to install a package that isn't signed.
As for the repair message, my guess here would be that is also happening because its an old installer. I'm not surprised that something created for 10.6 wouldn't install properly on 10.10 at this point. I'm not sure what its actually doing when it does the repair, but you may want to do either a before and after full snapshot in Composer, or use the Monitor System Changes option, and run through that process to see if it can capture what files are being created and/or modified. It might help you track down how to do the same changes in an automated way from a policy.
Posted on 10-23-2015 10:40 AM
@tcandela I would venture to guess your repair message is because permissions are wrong somewhere in the driver's folder/file. I would do as @mm2270 suggests and snapshot with Composer to figure out what folders are being manipulated and make sure the permissions are correct. Perhaps use a postinstall script or just on the Files And Process tab put the permissions fix in the "Execute Command" field.
Posted on 10-23-2015 01:16 PM
not sure exactly how to do this to check for what files/folders changed.
I created a normal snapshot, installed the driver, created the after snapshot
I then started to add the printer, when i specified the 'driver' to use
- that is when the pop-up that 'The software for the printer was installed incorrectly. Would you like it to be repaired?'
- before i clicked 'repair' i did 'Monitor File System Changes' and then clicked 'repair'
- after the repair completed i 'clicked' create package source
Modified files section has a lot of /Library/Printers most of them HP when I installed a Xerox
not sure if i did this correctly
I can't even do a search on the modified files for 'xerox', seems like searching is not allowed.
Posted on 10-23-2015 01:21 PM
@tcandela If you run Composer, tell it to watch for New and Modified Files, install the Xerox driver, and then let Composer scan (click "Install Complete" I think). Once Composer is done scanning and presents you with the list of files/folders, you can then see what needs to be checked for permissions. Does that make sense?
From there you can check a machine that has the software installed that is asking to repair, and verify the permissions on the two look right. Sorry if that is too confusing.
Posted on 10-23-2015 01:27 PM
Yeah, the trick here would be to FIRST do a regular installation of the printer driver on a box that has not had it before or at least not had the "repair" done. THEN run Composer and do a Before snapshot, open the printer driver to have it come up with the message to repair the software and allow it to go through that, and FINALLY go back to Composer immediately and do your After snapshot. You only want Composer looking for any changes that occurred as a consequence of doing the repair function. You will undoubtedly get other stuff showing up in the snapshot because the OS is constantly touching and modifying things, even when its just sitting idle. But the files that the driver is touching should hopefully be obvious or in obvious locations, like /Library/Printers/ or whatever.
EDIT: Or, you could also do it the way @stevewood has outlined as well. Either one should work, but the results will be different.
Posted on 10-23-2015 03:42 PM
@stevewood @mm2270 - I'm not actually, in the end, making a .pkg ?
I'm just checking file/folder changes, but stopping at the point when an actual .pkg/.dmg is actually made ?
so basically i'm not click "build new" .pkg/.dmg is what i'm saying
thanks
Posted on 10-23-2015 04:23 PM
@tcandela Correct, you're not trying to build an actual package, at least I wouldn't. You're just using Composer as a way to detect what the repair process from the driver is modifying and comparing it to a system that has not had the repairs done on it. It must be touching something, so hopefully it will get picked up during this process.
As I mentioned earlier, you could also use Composer's Monitor File System Changes function for this. It doesn't always work for this type of stuff, but worth a try initially if only because its lightyears faster than a before/after snapshot, especially since in this case you'd need to do a New and Modified snapshot which can take a while to create.
Posted on 10-26-2015 01:16 PM
not able to get any info on what is being repaired.
All i see is many references to /Library/Printers/Xerox/PDEs director
Posted on 10-26-2015 01:24 PM
@tcandela Huh? So, then the items in the PDE directory are likely what's being repaired. That folder usually contains .plugin files that the printers use. Most likely the permissions on them are out of whack after the out of date package is installed and needs to be fixed. You can use @stevewood's suggestion of comparing those files before and after repairs are done to see what the difference is. I'm willing to bet something is being changed. Otherwise, what is the "repair" doing?
Posted on 10-26-2015 01:25 PM
@tcandela I would check that folder on a machine that has not been repaired against a machine that has been repaired to see if the permissions are the same.
Posted on 10-27-2015 11:00 AM
@stevewood @mm2270 I copied the Xerox folder (XeroxOriginal) prior to running the 'Repair'. After the 'repair' I checked the permissions on the 'XeroxOriginal' vs the repaired 'Xerox'
it looks like the directories structure for XeroxOriginal are drwxrwxr_x while for the repaired Xerox it is drwxr_xr_x
while files in XeroxOrigianl are _rwxrwx_r_x files in XeroxOrigianl are _rwxr_x_r_x
so basically looks like the W access for Group has been removed.
Posted on 10-27-2015 11:05 AM
@tcandela so the next step I would take is to try fixing those permissions on a machine that has the "Repair" problem and see if that fixes it. If it does, then you can add that step as a postflight script to your driver package, or as an After script in Casper.
Posted on 10-27-2015 11:35 AM
yeah, i am thinking about doing a chmod 755 on all directories,subdirectories and files via script
would having W access really make a difference ??
currently its chmod 775 looks like it should be 755
Posted on 10-28-2015 01:07 PM
In the printer self service policy, I use a custom event to install the driver via script.
It's working, no driver 'Repair' pop-up appears !!!. here is what script it looks like
(i got the chmod lines in a google search)
jamf policy -event XeroxDriver3017104CustomEvent
cd /Library/Printers/Xerox
find . -type d -exec chmod 755 {} ;
find . -type f -exec chmod 755 {} ;
exit $?