config/release: rework of create_installstick.bat, thanks to ilya

Signed-off-by: Stephan Raue <stephan@openelec.tv>
This commit is contained in:
Stephan Raue 2011-09-14 18:21:04 +02:00
parent a3bc835397
commit c13fb977a8

View File

@ -1,114 +1,169 @@
@ECHO OFF
TITLE OpenELEC USB Installer
mode con:cols=67 lines=17
COLOR 17
SET DRIVE=
:checkPrivileges
mkdir "%windir%\OEAdminCheck"
if '%errorlevel%' == '0' (
rmdir "%windir%\OEAdminCheck" & goto gotPrivileges
) else ( goto getPrivileges )
:getPrivileges
CLS
ECHO.
ECHO OpenELEC.tv USB Installer
ECHO.
ECHO OpenELEC.tv USB Installer
ECHO.
ECHO.
ECHO ******************************************************
ECHO.
ECHO This will wipe any data off your chosen drive
ECHO Please read the instructions and use very carefully...
ECHO *****************************************************************
ECHO.
ECHO Administrator Rights are required for USB Stick creation
ECHO Invoking UAC for Privilege Escalation
ECHO.
ECHO *****************************************************************
ECHO.
ECHO ******************************************************
ECHO.
ECHO.
ECHO. Are you running this USB Wizard for the first time
ECHO. on Windows 7 or Windows Vista? [Y/N]
ECHO.
ECHO.
SET /P OS= --
IF "%OS%"=="n" GOTO INSTALL
IF "%OS%"=="N" GOTO INSTALL
ECHO Set UAC = CreateObject^("Shell.Application"^) > "%temp%\OEgetPrivileges.vbs"
ECHO UAC.ShellExecute %0, "", "", "runas", 1 >> "%temp%\OEgetPrivileges.vbs"
"%temp%\OEgetPrivileges.vbs"
exit /B
:NOTES
CLS
ECHO.
ECHO ******************************************************
ECHO.
ECHO.
ECHO Due to UAC in Windows 7 / Windows Vista we need to run
ECHO syslinux.exe as 'Administrator'
ECHO.
ECHO After pressing any key the folder containing syslinux.exe
ECHO will pop up automatically.
ECHO.
ECHO 1. Right click on syslinux.exe
ECHO 2. Click on 'Properties'
ECHO 3. Change to the 'Compatibility' tab
ECHO 4. Check the 'Run this program as an administrator' checkbox
ECHO.
ECHO.
ECHO.
ECHO ******************************************************
ECHO.
ECHO Press any key to open the syslinux directory
ECHO.
pause >NUL
explorer "%CD%\3rdparty\syslinux\win32"
ECHO When finished changing the administrator rights,
ECHO please press any key to continue with the installation
pause >NUL
GOTO :INSTALL
:gotPrivileges
if exist "%temp%\OEgetPrivileges.vbs" ( del "%temp%\OEgetPrivileges.vbs" )
pushd "%CD%"
CD /D "%~dp0"
:INSTALL
:HashCheck
3rdparty\md5sum\md5sum.exe -c "%CD%\target\SYSTEM.md5"
IF ERRORLEVEL 1 GOTO BADMD5
IF ERRORLEVEL 1 GOTO BadMD5
3rdparty\md5sum\md5sum.exe -c "%CD%\target\KERNEL.md5"
IF ERRORLEVEL 1 GOTO BADMD5
IF ERRORLEVEL 1 GOTO BadMD5
:InstallOE
CLS
ECHO.
ECHO OpenELEC.tv USB Installer
ECHO.
ECHO OpenELEC.tv USB Installer
ECHO.
ECHO.
ECHO ******************************************************
ECHO.
ECHO This will wipe any data off your chosen drive
ECHO Please read the instructions and use very carefully...
ECHO *****************************************************************
ECHO.
ECHO ******************************************************
ECHO This WILL wipe ALL data off the selected drive
ECHO Please use carefully...
ECHO.
ECHO *****************************************************************
ECHO.
ECHO.
:SelectDrive
ECHO Enter USB Drive letter
ECHO eg. d:
ECHO.
SET /P DRIVE= --
if %DRIVE%!==! goto INSTALL
format %DRIVE% /V:OPENELEC /Q /FS:FAT32
3rdparty\syslinux\win32\syslinux.exe -f -m -a %DRIVE%
ECHO Copying necessary files to %DRIVE%
copy target\* %DRIVE%
copy Autorun.inf %DRIVE%
copy CHANGELOG %DRIVE%
copy INSTALL %DRIVE%
copy README %DRIVE%
copy RELEASE %DRIVE%
copy openelec.ico %DRIVE%
FOR /F "tokens=5" %%G IN ('vol %DRIVE% ^|find "-"') DO SET DRIVEUUID=%%G
echo DEFAULT linux > %DRIVE%\syslinux.cfg
echo PROMPT 0 >> %DRIVE%\syslinux.cfg
echo. >> %DRIVE%\syslinux.cfg
echo LABEL linux >> %DRIVE%\syslinux.cfg
echo KERNEL /KERNEL >> %DRIVE%\syslinux.cfg
echo APPEND boot=LABEL=OPENELEC installer quiet >> %DRIVE%\syslinux.cfg
GOTO END
IF NOT DEFINED DRIVE goto InvalidDrive
if %DRIVE%==c: goto InvalidDrive
if %DRIVE%==C: goto InvalidDrive
:BADMD5
CLS
ECHO.
ECHO.
ECHO ***** OpenELEC.tv failed md5 check - Installation will quit *****
ECHO OpenELEC.tv USB Installer
ECHO.
ECHO.
ECHO *****************************************************************
ECHO.
ECHO Installing OpenELEC to %DRIVE%
ECHO Please wait approximately 20 seconds...
ECHO.
ECHO *****************************************************************
ECHO.
ECHO.
ECHO.
ECHO Your original download was probably corrupt.
ECHO Please visit www.openelec.tv and get another copy
ECHO.
ECHO.
ECHO. | >NUL format %DRIVE% /V:OPENELEC /Q /FS:FAT32 /X
IF ERRORLEVEL 1 goto InvalidDrive
>NUL 3rdparty\syslinux\win32\syslinux.exe -f -m -a %DRIVE%
>NUL copy target\* %DRIVE%
>NUL copy Autorun.inf %DRIVE%
>NUL copy CHANGELOG %DRIVE%
>NUL copy INSTALL %DRIVE%
>NUL copy README %DRIVE%
>NUL copy RELEASE %DRIVE%
>NUL copy openelec.ico %DRIVE%
FOR /F "tokens=5" %%G IN ('vol %DRIVE% ^|find "-"') DO SET DRIVEUUID=%%G
ECHO DEFAULT linux > %DRIVE%\syslinux.cfg
ECHO PROMPT 0 >> %DRIVE%\syslinux.cfg
ECHO. >> %DRIVE%\syslinux.cfg
ECHO LABEL linux >> %DRIVE%\syslinux.cfg
ECHO KERNEL /KERNEL >> %DRIVE%\syslinux.cfg
ECHO APPEND boot=LABEL=OPENELEC installer quiet >> %DRIVE%\syslinux.cfg
GOTO END
:InvalidDrive
CLS
ECHO.
ECHO.
ECHO OpenELEC.tv USB Installer
ECHO.
ECHO.
ECHO *****************************************************************
ECHO.
ECHO Invalid Drive Selected...
ECHO Please confirm the drive letter of your USB stick
ECHO.
ECHO *****************************************************************
ECHO.
ECHO.
GOTO SelectDrive
:BadMD5
CLS
ECHO.
ECHO.
ECHO OpenELEC.tv USB Installer
ECHO.
ECHO.
ECHO *****************************************************************
ECHO.
ECHO OpenELEC.tv failed md5 check - Installation will now quit
ECHO.
ECHO Your original download is probably corrupt
ECHO Please visit www.openelec.tv and download another copy
ECHO.
ECHO *****************************************************************
ECHO.
ECHO.
ECHO.
PAUSE
EXIT
:END
CLS
ECHO.
ECHO.
ECHO OpenELEC.tv USB Installer
ECHO.
ECHO.
ECHO *****************************************************************
ECHO.
ECHO The OpenELEC USB Installer has been successfully copied to %DRIVE%
ECHO Please boot your HTPC off this USB stick
ECHO.
ECHO *****************************************************************
ECHO.
ECHO.
ECHO.
ECHO.
SET DRIVE=
SET OS=
SET DRIVEUUID=
SET DRIVEUUID=
PAUSE