private ComponentTask ChocolateyConfiguration() { Func <bool> prequisiteFunc = () => ComponentTasks.ElementAt(1).Value.Setup.SetupValidation.ElementAt(1).Task.Result; Action action = () => { Console.Out.WriteLine("Configuring Chocolatey to update apps at startup..."); Registry.SetValue( RegistryConstants.HKLM_RUN_PATH, "Chocolatey", SystemPathConstants.CmdPathCommand + "cup all --y --ignorechecksum" ); }; Func <bool> actionValidation = () => { bool configurationKeyValueExists = false; var chocolateyRunKeyValue = Registry.GetValue(RegistryConstants.HKLM_RUN_PATH, "Chocolatey", ""); if (chocolateyRunKeyValue != null) { configurationKeyValueExists = ((string)chocolateyRunKeyValue) .Equals(SystemPathConstants.CmdPathCommand + "cup all --y --ignorechecksum"); } return(configurationKeyValueExists); }; return(new ComponentTask(new SetupTask(prequisiteFunc, action, actionValidation, false), null)); }
private ComponentTask FirefoxConfiguration() { Func <bool> isFirefoxInstallSetupSuccessful = () => ComponentTasks.ElementAt(1).Value.Setup.SetupValidation.ElementAt(1).Task.Result; Action configureFirefox = () => { Console.Out.WriteLine("Copying Mozilla Firefox configuration files..."); File.Copy( Path.Combine(SetupProperties.Firefox, @"browser\override.ini"), Path.Combine(SetupProperties.Firefoxinstall, @"browser\override.ini"), true); File.Copy( Path.Combine(SetupProperties.Firefox, @"defaults\pref\autoconfig.js"), Path.Combine(SetupProperties.Firefoxinstall, @"defaults\pref\autoconfig.js"), true); File.Copy( Path.Combine(SetupProperties.Firefox, @"firefox.cfg"), SetupProperties.Firefoxinstall, true); Console.Out.WriteLine("Setting Mozilla Firefox as default browser..."); Process proc = new Process(); proc.StartInfo = new ProcessStartInfo( Path.Combine(SetupProperties.Firefoxinstall, @"uninstall\helper.exe"), "/SetAsDefaultAppGlobal"); proc.Start(); proc.WaitForExit(); proc.StartInfo = new ProcessStartInfo( Path.Combine(SetupProperties.Firefoxinstall, @"uninstall\helper.exe"), "/SetAsDefaultAppUser"); proc.Start(); proc.WaitForExit(); }; Func <bool> isFirefoxConfigured = () => File.Exists(Path.Combine(SetupProperties.Firefoxinstall, @"browser\override.ini")) && File.Exists(Path.Combine(SetupProperties.Firefoxinstall, @"defaults\pref\autoconfig.js")) && File.Exists(Path.Combine(SetupProperties.Firefoxinstall, @"firefox.cfg")); Action cleanupFirefoxConfiguration = () => { if (Directory.Exists(SetupProperties.Firefox)) { Directory.Delete(SetupProperties.Firefox); } }; Func <bool> isFirefoxConfigurationCleanupSuccessul = () => !Directory.Exists(SetupProperties.Firefox); return(new ComponentTask( new SetupTask(isFirefoxInstallSetupSuccessful, configureFirefox, isFirefoxConfigured, false), new CleanupTask(cleanupFirefoxConfiguration, isFirefoxConfigurationCleanupSuccessul))); }
public OS() : base("OS Configuration") { ComponentTasks.Add(1, ConfigurePowerOptions()); ComponentTasks.Add(2, ApplyContextMenuModifyingRegistryEdits()); ComponentTasks.Add(3, ApplyPerformanceImprovingRegistryEdits()); ComponentTasks.Add(4, CopyWindowsFiles()); ComponentTasks.Add(5, ScheduleStartupTasks()); }
public JavaX86() : base("Java 8 32-bit") { ComponentTasks.Add(1, JavaX86Installation()); }
public RS3() : base("RuneScape 3") { ComponentTasks.Add(1, RS3Installation()); }
public OSRS() : base("Old School RuneScape") { ComponentTasks.Add(1, OSRSInstallation()); }
public Chocolatey() : base("Chocolatey") { ComponentTasks.Add(1, ChocolateyInstallation()); ComponentTasks.Add(2, ChocolateyConfiguration()); }
public TBSetupCompletion() : base("Tinybot Installer Cleanup") { ComponentTasks.Add(1, SetRegistry_ScheduleTBInstallerDeletion()); }
public Firefox() : base("Mozilla Firefox") { ComponentTasks.Add(1, FirefoxInstallation()); ComponentTasks.Add(2, PinFirefoxToTaskbar()); ComponentTasks.Add(3, FirefoxConfiguration()); }
public WinRAR() : base("WinRAR") { ComponentTasks.Add(1, WinRARInstallation()); }
public VMWareTools() : base("VMWareTools") { ComponentTasks.Add(1, VMWareToolsInstallation()); }
public JavaX64() : base("Java 8 64-bit") { ComponentTasks.Add(1, JavaX64Installation()); }
public TeamViewer() : base("TeamViewer") { ComponentTasks.Add(1, TeamViewerInstallation()); }