diff --git a/windows-installer/install-essencials.sh b/windows-installer/install-essencials.sh new file mode 100755 index 0000000000000000000000000000000000000000..6f979680d4b576e8dc2e3b5e75a439e525fb56c4 --- /dev/null +++ b/windows-installer/install-essencials.sh @@ -0,0 +1,52 @@ +#!/bin/bash + +REQUIRED_PKGS="wine gcc-mingw-w64 p7zip-full" +pkgs_to_install="" +for pkg in $REQUIRED_PKGS; do + if ! dpkg --get-selections $pkg | grep -q -w install$; then + pkgs_to_install="$pkgs_to_install $pkg" + fi +done + +test -z $pkgs_to_install || sudo apt-get install $pkgs_to_install -y + +required_wine_pkgs="/tmp/nsis-2.45.exe /tmp/python-2.7.5.msi /tmp/py2exe.exe /tmp/pywin32.exe /tmp/wmi.exe" + +declare -A path=(["/tmp/nsis-2.45.exe"]=~/.wine/drive_c/Program\ Files/NSIS + ["/tmp/python-2.7.5.msi"]=~/.wine/drive_c/Python27 + ["/tmp/py2exe.exe"]=~/.wine/drive_c/Python27/Lib/site-packages/py2exe + ["/tmp/pywin32.exe"]=~/.wine/drive_c/Python27/Lib/site-packages/pywin32.version.txt + ["/tmp/wmi.exe"]=~/.wine/drive_c/Python27/Lib/site-packages/wmi.pyc ) + +declare -A url=(["/tmp/nsis-2.45.exe"]="http://unsis.googlecode.com/files/nsis-2.45.1-Unicode-setup.exe" + ["/tmp/python-2.7.5.msi"]="http://www.python.org/ftp/python/2.7.5/python-2.7.5.msi" + ["/tmp/py2exe.exe"]="http://downloads.sourceforge.net/project/py2exe/py2exe/0.6.9/py2exe-0.6.9.win32-py2.7.exe?r=http%3A%2F%2Fsourceforge.net%2Fprojects%2Fpy2exe%2Ffiles%2Fpy2exe%2F0.6.9%2F&ts=1377212687&use_mirror=ufpr" + ["/tmp/pywin32.exe"]="http://downloads.sourceforge.net/project/pywin32/pywin32/Build%20218/pywin32-218.win32-py2.7.exe?r=http%3A%2F%2Fsourceforge.net%2Fsettings%2Fmirror_choices%3Fprojectname%3Dpywin32%26filename%3Dpywin32%2FBuild%2520218%2Fpywin32-218.win32-py2.7.exe&ts=1391792648&use_mirror=ufpr" + ["/tmp/wmi.exe"]="https://pypi.python.org/packages/any/W/WMI/WMI-1.4.9.win32.exe#md5=31ef47dc10ff13a81a0cb8e6a98a0819" ) + +declare -A wineop=(["/tmp/nsis-2.45.exe"]="" + ["/tmp/python-2.7.5.msi"]="msiexec /i" + ["/tmp/py2exe.exe"]="" + ["/tmp/pywin32.exe"]="" + ["/tmp/wmi.exe"]="" ) + +for pkg in $required_wine_pkgs; do + if ! test -e "${path["${pkg}"]}"; then + wget ${url["${pkg}"]} -O "${pkg}" + wine ${wineop[${pkg}]} $pkg + fi +done + +if ! test -f "$(dirname $0)/7zS.sfx";then + mkdir -p "/tmp/7z-extra" + wget "http://downloads.sourceforge.net/project/sevenzip/7-Zip/9.22/7z922_extra.7z?r=http%3A%2F%2Fstackoverflow.com%2Fquestions%2F8087595%2Fwhat-is-the-difference-between-7zips-7z-sfx-and-7zsd-sfx&ts=1391616467&use_mirror=ufpr" -O "/tmp/7z-extra/7z-extra.7z" + 7z e "/tmp/7z-extra/7z-extra.7z" -o"/tmp/7z-extra" -y + cp "/tmp/7z-extra/7zS.sfx" "$(dirname $0)/" +fi + +if ! test -f ~/.wine/drive_c/Program\ Files/NSIS/Unicode/Plugins/KillProcDLL.dll; then + mkdir -p "/tmp/KillProcDLL" + wget "http://downloads.sourceforge.net/project/findkillprocuni/bin/KillProcDLL%20Unicode%20bin.zip?r=http%3A%2F%2Fsourceforge.net%2Fprojects%2Ffindkillprocuni%2Ffiles%2Fbin%2F&ts=1395250878&use_mirror=ufpr" -O "/tmp/KillProcDLL.zip" + unzip -u -d "/tmp/KillProcDLL" "/tmp/KillProcDLL.zip" + cp "/tmp/KillProcDLL/KillProcDLL.dll" ~/.wine/drive_c/Program\ Files/NSIS/Unicode/Plugins/ +fi \ No newline at end of file