Problem:
Although Chrome installs successfully, and it appears to be correct, the debug.log in %windir%\temp\CR_RANDOM.tmp shows a warning:
WARNING:master_preferences.cc(63)] Failed to parse master prefs file: Line: 1, column: 722, Unexpected token.
Column 722 in my master_preferences file is right after the "r" in: "welcome_page_on_os_upgrade_enabled":false
Chrome works, I believe I'm seeing the behavior I expect to see, but I don't know what it doesn't like
Master Preferences Build Process:
Configure master_preferences file to my linking
{
"bookmark_bar":{
"show_on_all_tabs":true
},
"browser":{
"check_default_browser":false,
"show_home_button":true
},
"distribution":{
"allow_downgrade":true,
"create_all_shortcuts":false,
"disable_logging":false,
"do_not_create_any_shortcuts":true,
"do_not_create_desktop_shortcut":true,
"do_not_create_quick_launch_shortcut":true,
"do_not_create_taskbar_shortcut":false,
"do_not_launch_chrome":true,
"do_not_register_for_update_launch":true,
"make_chrome_default":false,
"make_chrome_default_for_user":false,
"msi":true,
"require_eula":false,
"suppress_default_browser_prompt_for_version":true,
"suppress_first_run_bubble":true,
"suppress_first_run_default_browser_prompt":true,
"system_level":true,
"verbose_logging":true,
"welcome_page_on_os_upgrade_enabled":false,
"show_welcome_page":false,
"skip_first_run_ui":true
},
"homepage":"http://my.custom.page.org/",
"homepage_is_newtabpage":false,
"session":{
"restore_on_startup":4,
"startup_urls":[
"http://my.custom.page.org/"
]
},
"sync_promo":{
"show_on_first_run_allowed":false,
"startup_count":1,
"user_skipped":true,
"view_count":1
}
}
Validate JSON (e.g.: via jslint)
Remove spaces, tabs, crlf's etc. so its on a single line
Re-validate JSON
The master_preferences file is complete.
Deployment Process:
Create MST
Create new MSI property called MASTER_PREFERENCES
Add percent-encoded single-line master_preferences content to MASTER_PREFERENCES MSI property
Modify BuildInstallCommand CustomAction to reference the MSI property (e.g.: /silent /install "[ProductTag]" /installsource enterprisemsi[OptOmahaArgs] /appargs "appguid={8A69D345-D564-463c-AFF1-A69D9E530F96}&installerdata=[MASTER_PREFERENCES]")
Deploy via msiexec calling the transform
Installation is successful (return/exit code is 0)
Chrome is present and it runs, home page is set, no nonsense displayed to user on initial launch etc.