Spark MSI - Group Policy Fixed

Hello all

I have figure out all of my issues with installing Spark using the MSI and Group Policy.

For a long time I have been working to solve the last of my issues which is Spark was requiring admin rights for the user for the first run…

I have solved that…

Basic steps:

  1. Create admin install

  2. edit msi using orca

  3. create new transform

  4. add 2 new custom actions

a. first action adds full control for the local group “Users” to the %programfiles%\spark folder

cacls.exe “[ProgramFilesFolder]Spark” /E /G Users:F

b. sencond aciion adds full control for the local group “Users” to the %programfiles%\spark\lib folder

cacls.exe “[ProgramFilesFolder]Spark\lib” /E /G Users:F

  1. add the custom actions to the install sequence

  2. save the transform

  3. create the GPO to push using the admin image and trnasform file.

If anyone wants more details let me know…

I also used the same transform to remove the desktop icon…

Thanks methodadmin for posting this. I can’t believe the MSI doesn’t do this by default…

We decided to simply give Domain Users full permissions to the %Program Files%\Spark folder at the domain-level.

The whole point of deploying an MSI is so you don’t have to configure stuff like this…

How do you add those two commands to the msi?

cacls.exe “[ProgramFilesFolder]Spark” /E /G Users:F

cacls.exe “[ProgramFilesFolder]Spark\lib” /E /G Users:F

I tried doing it with InstEd, like ORCA, but I can not seem to get it to work. I added two CustomAction rows, gave them names, but was not sure what to put for Source or Target. I have tried a few different combinations of things but it does not work. Oh and I added those custom actions to InstallExecuteSequence as the last two things and then saved the transform as a new MSI.

Sorry for the late reply…

To create the custom actions…

Action Name: Can be anything unique…

Type: 0x0022

Source: SystemFolder

Target: put the command here

I also had to add “SystemFolder” to the “Directory” table

Directory Name: SystemFolder

Directory_Parent: windows_DIR

DefaultDir: .:System32

target_path: SystemFolder

Then add the 2 action names you created above to the “InstallExecuteSequence” table…

Hope it helps…

This worked great! Thanks so much methodadmin!