diff --git a/.gitignore b/.gitignore new file mode 100644 index 0000000..fa015d5 --- /dev/null +++ b/.gitignore @@ -0,0 +1,2 @@ +*.exe +/data/ \ No newline at end of file diff --git a/control b/control index f8fbcca..8def667 100644 --- a/control +++ b/control @@ -1,26 +1,13 @@ [Product] type: localboot -id: mdg-visual-studio-code -name: MDG Visual Studio Code -description: VSCode ist eine von Microsoft entwickelte, weit verbreitete Entwicklungsumgebung mit Unterstützung für eine Vielzahl an Erweiterungen. Der Großteil des Programms ist quelloffen. -advice: Erweiterungen werden im Verzeichnes %USERPROFILE%\.vscode\extensions und somit im Windows-Profil des Nutzers installiert. -version: 1.50.1 +id: mdg-git-client +name: MDG Git Client +description: Git ist ein kostenloses und quelloffenes Versionskontrollsystem. Git ist unter der GPL v2 lizensiert. +version: 2.29.1 packageVersion: 1.0 setupScript: install.ins uninstallScript: remove.ins -[ProductDependency] -action: setup -requiredProduct: microsoft-dot-net-framework -requiredStatus: installed -requirementType: before - -[ProductProperty] -name: desktopshortcut -type: bool -description: Verknüpfung auf dem Windows Desktop erstellen -default: False - [ProductProperty] name: contextmenuentry type: bool diff --git a/install.ins b/install.ins index b6da981..ea2b03f 100644 --- a/install.ins +++ b/install.ins @@ -1,14 +1,12 @@ [Initial] -Message=Installiere MDG Visual Studio Code... +Message=Installiere MDG Git Client... DefVar $Version$ DefVar $ExitCode$ DefVar $CreateContextMenuEntry$ DefVar $ContextMenuArguments$ -DefVar $CreateDesktopShortcut$ -DefVar $DesktopShortcutArgument$ [Aktionen] -ShowBitmap "%ScriptPath%\logo.png" "MDG Visual Studio Code" +ShowBitmap "%ScriptPath%\logo.png" "MDG Git Client" Sub_GetProperties Sub_ConfigureProperties Sub_PrepareInstall @@ -18,34 +16,35 @@ Sub_HandleExitCode [Sub_GetProperties] Set $Version$ = GetValue("productversion", GetProductMap) Set $CreateContextMenuEntry$ = GetProductProperty("contextmenuentry", "false") -Set $CreateDesktopShortcut$ = GetProductProperty("desktopshortcut", "false") [Sub_ConfigureProperties] if ($CreateContextMenuEntry$ = "true") - Set $ContextMenuArguments$ = ", addcontextmenufiles, addcontextmenufolders" + Set $ContextMenuArguments$ = ",ext,ext\shellhere,ext\guihere" else - Set $ContextMenuArguments$ = ", !addcontextmenufiles, !addcontextmenufolders" -endif - -if ($CreateDesktopShortcut$ = "true") - Set $DesktopShortcutArgument$ = ", desktopicon" -else - Set $DesktopShortcutArgument$ = ", !desktopicon" + Set $ContextMenuArguments$ = "" endif [Sub_PrepareInstall] -if (processIsRunning("Code.exe")) - comment "Killing Process..." - Killtask "Code.exe" +; Kill gpg-agent +if (processIsRunning("gpg-agent.exe")) + comment "Killing gpg-agent..." + Killtask "gpg-agent.exe" sleepSeconds 3 endif -[WinBatch_Setup] -%ScriptPath%\data\VSCodeSetup-x64-$Version$.exe /VERYSILENT /SUPPRESSMSGBOXES /MERGETASKS="!runcode$ContextMenuArguments$$DesktopShortcutArgument$" /LOG="%opsiLogDir%\vscode-install.log" +; Kill ssh-agent +if (processIsRunning("ssh-agent.exe")) + comment "Killing ssh-agent..." + Killtask "ssh-agent.exe" + sleepSeconds 3 +endif -; VERYSILENT unterdrückt das Installationsfenster -; SUPPRESSMSGBOXES unterdrückt Benachrichtigungsfenster -; MERGETASKS verhindert das automatische Starten des Programms nach der Installation + + +[WinBatch_Setup] +%ScriptPath%\data\Git-$Version$-64-bit.exe /VERYSILENT /SUPPRESSMSGBOXES /NORESTART /NOCANCEL /SP- /COMPONENTS="icons,icons\quicklaunch,assoc,assoc_sh,gitlfs$ContextMenuArguments$" /LOG="%opsiLogDir%\git-client-install.log" + +; See Components under https://github.com/git-for-windows/build-extra/blob/HEAD/installer/install.iss [Sub_HandleExitCode] ; check return code diff --git a/logo.png b/logo.png new file mode 100644 index 0000000..082d8e0 Binary files /dev/null and b/logo.png differ diff --git a/remove.ins b/remove.ins index 8c22542..6759f50 100644 --- a/remove.ins +++ b/remove.ins @@ -1,25 +1,42 @@ [Initial] -Message=Deinstalliere MDG Visual Studio Code... +Message=Deinstalliere MDG Git Client... DefVar $ExitCode$ +DefVar $UninstallExecutablePath$ [Aktionen] -ShowBitmap "%ScriptPath%\logo.png" "MDG Visual Studio Code" +ShowBitmap "%ScriptPath%\logo.png" "MDG Git Client" Sub_PrepareRemove WinBatch_Setup +Files_Cleanup Sub_HandleExitCode [Sub_PrepareRemove] -if (processIsRunning("Code.exe")) - comment "Killing Process..." - Killtask "Code.exe" +; Kill gpg-agent +if (processIsRunning("gpg-agent.exe")) + comment "Killing gpg-agent..." + Killtask "gpg-agent.exe" + sleepSeconds 3 +endif + +; Retrieve Uninstall executable Path +Set $UninstallExecutablePath$ = getRegistryValue("HKEY_LOCAL_MACHINE\SOFTWARE\Microsoft\Windows\CurrentVersion\Uninstall\Git_is1", "UninstallString","64bit") + +; Kill ssh-agent +if (processIsRunning("ssh-agent.exe")) + comment "Killing ssh-agent..." + Killtask "ssh-agent.exe" sleepSeconds 3 endif [WinBatch_Setup] -"%ProgramFiles64Dir%\Microsoft VS Code\unins000.exe" /VERYSILENT /SUPPRESSMSGBOXES /LOG="%opsiLogDir%\vscode-uninstall.log" +if not ($UninstallExecutablePath$ = "") + if FileExists ($UninstallExecutablePath$) + $UninstallExecutablePath$ /VERYSILENT /SUPPRESSMSGBOXES /LOG="%opsiLogDir%\git-client-uninstall.log" + endif +endif -; VERYSILENT unterdrückt das Installationsfenster -; SUPPRESSMSGBOXES unterdrückt Benachrichtigungsfenster +[Files_Cleanup] +delete -sf "%ProgramFilesDir%\Git\" [Sub_HandleExitCode] ; check return code