diff --git a/mathematica.xml b/mathematica.xml
new file mode 100644
index 0000000000000000000000000000000000000000..e64f9eb1dbad72b9243a4739deffe642f539da5b
--- /dev/null
+++ b/mathematica.xml
@@ -0,0 +1,41 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<packages>
+<package id="mathematica" name="Mathematica" revision="%version%.1" reboot="false" priority="0">
+ 
+  <variable name="major" value="12" />
+  <variable name="minor" value="0" />
+  <variable name="sub" value="0" />
+  <variable name="version" value="%major%.%minor%.%sub%" />
+  <check type="uninstall" condition="versiongreaterorequal" path="Wolfram Mathematica %major% .+" value="%version%" />
+
+  <install cmd='%SOFTWARE%\wolfram\mathematica\%version%\setup.exe /verysilent /suppressmsgboxes' />
+
+  <install cmd='cmd /c copy %SOFTWARE%\wolfram\mathematica\mathpass "%programfiles%\Wolfram Research\Mathematica\%major%.%minor%\Configuration\Licensing\mathpass" '/>
+
+  <upgrade cmd='cmd /c taskkill /f /im "wolframkernel.exe"'>
+    <exit code='128'/>
+  </upgrade>
+
+  <upgrade cmd='cmd /c taskkill /f /im "mathematica.exe"'>
+    <exit code='128'/>
+  </upgrade>
+
+  <upgrade include="remove" />
+  <upgrade include="install" />
+
+  <!-- uninstall old versions if they exist -->
+  <remove cmd='"%ProgramFiles%\Wolfram Research\Mathematica\11.1\SystemFiles\UninstallFiles\Windows\unins000.exe" /VERYSILENT /suppressmsgboxes'>
+    <condition>
+      <check type="file" condition="exists" path="%ProgramFiles%\Wolfram Research\Mathematica\11.1\SystemFiles\UninstallFiles\Windows\unins000.exe" />
+    </condition>
+  </remove>
+
+  <!-- Uninstall this Mathematica -->
+  <remove cmd='"%ProgramFiles%\Wolfram Research\Mathematica\%major%.%minor%\SystemFiles\UninstallFiles\Windows\unins000.exe" /VERYSILENT /suppressmsgboxes'>
+    <condition>
+      <check type="file" condition="exists" path="%ProgramFiles%\Wolfram Research\Mathematica\%major%.%minor%\SystemFiles\UninstallFiles\Windows\unins000.exe" />
+    </condition>
+  </remove>
+
+</package>
+</packages>