Check-in [41f2ddf18a]
Overview
Comment: | Fix UTF-8 BOM, SecPolicy for .BAT, and MSI registration for silent windows installers. |
---|---|
Downloads: | Tarball | ZIP archive | SQL archive |
Timelines: | family | ancestors | descendants | both | trunk |
Files: | files | file ages | folders |
SHA1: |
41f2ddf18a00c10e0e6125c40ec667ee |
User & Date: | mario on 2016-11-19 13:13:46 |
Other Links: | manifest | tags |
Context
2016-11-19
| ||
13:14 | Normalize all broken plugins with status: broken, and priority: obsolete check-in: 8e52a0479a user: mario tags: trunk | |
13:13 | Fix UTF-8 BOM, SecPolicy for .BAT, and MSI registration for silent windows installers. check-in: 41f2ddf18a user: mario tags: trunk | |
13:13 | Make *.pls default again for exportcat. check-in: b14e5127d9 user: mario tags: trunk | |
Changes
Modified dev/install_python_gtk.bat from [3293957a26] to [8de551208f].
1 | @echo off | > | | > | 1 2 3 4 5 | @echo off cls PowerShell Set-ExecutionPolicy -ExecutionPolicy ByPass -Scope CurrentUser PowerShell -File \usr\share\streamtuner2\dev\install_python_gtk.ps1 PowerShell Set-ExecutionPolicy -ExecutionPolicy Undefined -Scope CurrentUser |
Modified dev/install_python_gtk.ps1 from [c17079b444] to [97c592f59a].
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 | <# # # Run as post-install script for .exe package # # - downloads Python + Gtk # - some python libraries # - and runs their respective installers # - crafts streamtuner2 desktop shortcut # #> $TEMP = $env:TEMP $PYTHON = "C:\Python27" #-- what $files = @( | > > > > > > > > > > > > > > > > > > > > > > | | | 1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 36 37 38 39 40 41 42 43 44 45 46 47 | <# # # Run as post-install script for .exe package # # - downloads Python + Gtk # - some python libraries # - and runs their respective installers # - crafts streamtuner2 desktop shortcut # #> [CmdletBinding()] Param( ) function Test-IsElevated { [CmdletBinding()] param( ) [Security.Principal.WindowsPrincipal] $Identity = [Security.Principal.WindowsIdentity]::GetCurrent() $Identity.IsInRole([Security.Principal.WindowsBuiltInRole]::Administrator) } if(!(Test-IsElevated)) { Write-Host "If you run this script in non-elevated mode you will not be able to uninstall Python from control panel." Write-Host "" Write-Host "Do you want to proceed?" $y = Read-Host "y/n" if ($y -notmatch "y|Y|1") { exit; } } $TEMP = $env:TEMP $PYTHON = "C:\Python27" #-- what $files = @( "https://www.python.org/ftp/python/2.7.12/python-2.7.12.msi#qb", "http://ftp.gnome.org/pub/GNOME/binaries/win32/pygtk/2.24/pygtk-all-in-one-2.24.2.win32-py2.7.msi#qbex", "$PYTHON\Scripts\easy_install.exe requests", "https://pypi.python.org/packages/3d/ee/affbc53073a951541b82a0ba2a70de266580c00f94dd768a60f125b04fca/lxml-2.3.win32-py2.7.exe", "https://pypi.python.org/packages/62/71/8ac1f5c0251e51714d20e4b102710d5eee1683c916616129552b0a025ba5/pyquery-1.2.17-py2.py3-none-any.whl#noexec", "$PYTHON\Scripts\pip.exe install $TEMP\pyquery-1.2.17-py2.py3-none-any.whl", "http://effbot.org/downloads/PIL-1.1.7.win32-py2.7.exe" ) |
︙ | ︙ | |||
39 40 41 42 43 44 45 46 47 48 49 50 51 52 53 54 55 56 57 | Write-Host "Downloading packages..." #-- process ForEach ($url in $files) { echo "`n[[[ $url ]]]" #` chdir($TEMP); if ($url -match "https?://.+") { $file = [regex]::match($url, "/([^/]+?)([\?\#]|$)").Groups[1].Value; # download $wget = New-Object System.Net.WebClient $wget.DownloadFile($url, "$TEMP\$file"); # run if ($url -match ".+#noexec") { Write-Host "(skipping)" } | > > > > > > > | > | > > > > > > > > | 61 62 63 64 65 66 67 68 69 70 71 72 73 74 75 76 77 78 79 80 81 82 83 84 85 86 87 88 89 90 91 92 93 94 95 96 97 98 99 100 101 102 103 104 | Write-Host "Downloading packages..." #-- process ForEach ($url in $files) { echo "`n[[[ $url ]]]" #` chdir($TEMP); $regPath = "HKLM:\Software\WOW6432Node\Microsoft\Windows\CurrentVersion\Uninstall" if(!(Test-Path $regPath)) { $regPath = "HKLM:\Software\Microsoft\Windows\CurrentVersion\Uninstall" } $regValueName = "WindowsInstaller" $regValue = "0" if ($url -match "https?://.+") { $file = [regex]::match($url, "/([^/]+?)([\?\#]|$)").Groups[1].Value; # download $wget = New-Object System.Net.WebClient $wget.DownloadFile($url, "$TEMP\$file"); # run if ($url -match ".+#noexec") { Write-Host "(skipping)" } elseif ($url -match ".+.msi#qb$") { Write-Host "Installing Python 2.7.12 ..." Start-Process -Wait msiexec -ArgumentList /i,"$TEMP\$file", " /qb" $registryPath = $regPath+"\{9DA28CE5-0AA5-429E-86D8-686ED898C665}" Set-ItemProperty -Path $registryPath -Name $regValueName -Value $regValue } elseif ($url -match ".+.msi#qbex$") { Write-Host "Installing PyGtk 2.24.2 ..." Start-Process -Wait msiexec -ArgumentList /i,"$TEMP\$file", " TARGETDIR=C:\Python27 ADDLOCAL=ALL REMOVE=PythonExtensionModulePyGtkSourceview2,PythonExtensionModulePyGoocanvas,PythonExtensionModulePyRsvg,DevelopmentTools /qb" $registryPath = $regPath+"\{09F82967-D26B-48AC-830E-33191EC177C8}" Set-ItemProperty -Path $registryPath -Name $regValueName -Value $regValue } elseif ($url -match ".+.exe$") { Start-Process -Wait "$TEMP\$file" } else { & "$TEMP\$file" } |
︙ | ︙ | |||
74 75 76 77 78 79 80 | #-- make ST2 .lnk $WshShell = New-Object -ComObject WScript.Shell $Shortcut = $WshShell.CreateShortcut("$Home\Desktop\Streamtuner2.lnk") $Shortcut.TargetPath = "$PYTHON\pythonw.exe" $Shortcut.Arguments = "c:\usr\bin\streamtuner2" $Shortcut.Save() | > > > > > > > > | 112 113 114 115 116 117 118 119 120 121 122 123 124 125 126 | #-- make ST2 .lnk $WshShell = New-Object -ComObject WScript.Shell $Shortcut = $WshShell.CreateShortcut("$Home\Desktop\Streamtuner2.lnk") $Shortcut.TargetPath = "$PYTHON\pythonw.exe" $Shortcut.Arguments = "c:\usr\bin\streamtuner2" $Shortcut.Save() function Test-IsElevated { [CmdletBinding()] param( ) [Security.Principal.WindowsPrincipal] $Identity = [Security.Principal.WindowsIdentity]::GetCurrent() $Identity.IsInRole([Security.Principal.WindowsBuiltInRole]::Administrator) } |