-
-
Notifications
You must be signed in to change notification settings - Fork 1.5k
New issue
Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.
By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.
Already on GitHub? Sign in to your account
Microwin ISO downloader #2581
Microwin ISO downloader #2581
Conversation
@MyDrift-user, please update your branch since #2575 got merged |
Well then, it downloaded the Spanish version (and the wrong one at that) even though I chose the English version. I'll investigate it: And, after downloading, it can't find it for some reason. I'll investigate that as well. By the way, you should remove the architecture drop-down as Windows 11 is only 64-bit, unless you want to add Windows 10 support |
@CodingWonders infos for u:
|
We could use a function that returns an appropriate language string based on the CultureInfo for the selected item. Something like this for culture detection: .NET power combined with PowerShell! Note
Absolute paths will work better in my opinion, in case the user doesn't want to save the downloaded ISO to the current working directory.
Not true. While Windows 11 still supports 32-bit applications (and let's be honest, Microsoft will support them for years to come), it's not available on 32-bit systems. The final version for such architecture is Windows 10 And, by the way, it should be 32-bit instead of 86-bit if we finally decide to add support for Windows 10 |
The Issue is tha Fido works that way, it does it like that. I've made an Issue on it's repo asking if he is okay with adding an output path parameter to the script but he rejected it due to the script primarily being for Rufus. I am personally not able to understand how he fetches the final link entirely, so I won't work on an inhouse solution using this method as of now. |
We may not have to modify anything about Fido. Let it download to Right now I can't work on this because I'm adding a WIP parser for culture codes so that we can make dealing with languages in Fido easier. I'll comment back with more details regarding that |
Well, the language parser works: Code: & $fidopath -Win 'Windows 11' -Rel $sync["ISORelease"].SelectedItem -Arch $rel -Lang "$(Get-FidoLangFromCulture -langName `"$($sync.ISOLanguage.SelectedItem)`")"
...
function Get-FidoLangFromCulture {
param (
[Parameter(Mandatory, Position = 0)] [string] $langName
)
switch -Wildcard ($langName)
{
"ar*" { return "Arabic" }
"pt-BR" { return "Brazilian Portuguese" }
"bg*" { return "Bulgarian" }
{($_ -eq "zh-CH") -or ($_ -like "zh-Hans*") -or ($_ -eq "zh-SG") -or ($_ -eq "zh-CHS")} { return "Chinese (Simplified)" }
{($_ -eq "zh") -or ($_ -eq "zh-Hant") -or ($_ -eq "zh-HK") -or ($_ -eq "zh-MO") -or ($_ -eq "zh-TW") -or ($_ -eq "zh-CHT")} { return "Chinese (Traditional)" }
"hr*" { return "Croatian" }
"cs*" { return "Czech" }
"da*" { return "Danish" }
"nl*" { return "Dutch" }
"en-US" { return "English" }
{($_ -like "en*") -and ($_ -ne "en-US")} { return "English International" }
"et*" { return "Estonian" }
"fi*" { return "Finnish" }
{($_ -like "fr*") -and ($_ -ne "fr-CA")} { return "French" }
"fr-CA" { return "French Canadian" }
"de*" { return "German" }
"el*" { return "Greek" }
"he*" { return "Hebrew" }
"hu*" { return "Hungarian" }
"it*" { return "Italian" }
"ja*" { return "Japanese" }
"ko*" { return "Korean" }
"lv*" { return "Latvian" }
"lt*" { return "Lituanian" }
"nb*" { return "Norwegian" }
"pl*" { return "Polish" }
{($_ -like "pt*") -and ($_ -ne "pt-BR")} { return "Portuguese" }
"ro*" { return "Romanian" }
"ru*" { return "Russian" }
"sr-Latn*" { return "Serbian Latin" }
"sk*" { return "Slovak" }
"sl*" { return "Slovenian" }
{($_ -like "es*") -and ($_ -ne "es-MX")} { return "Spanish" }
"es-MX" { return "Spanish (Mexico)" }
"sv*" { return "Swedish" }
"th*" { return "Thai" }
"tr*" { return "Turkish" }
"uk*" { return "Ukrainian" }
default { return "English" }
}
}
Now, you need to be a bit prudent with Microsoft's service, as it can stop letting you (temporarily), so I had to use my phone as a wireless hotspot: Check this issue for more information: pbatard/Fido#52 |
7805fe4
to
cfb9edb
Compare
- call ed with default windows edition (Home/Pro/Edu) - fix language combobox logic - add @CodingWonders 's "Get-FidoLangFromCulture" - hide comboboxes if manual ISO selection is toggled
- added | Out-Null to combobox item additions to prevent unneeded console output
- using ToggleButtonOnColor for Radiobuttons - add theme color ToggleButtonOffColor and use where needed
remove (United States) bc it is wrong and not accepted by fido/ms
- add ToggleButtonOffColor to all themes
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
This is good for an initial implementation
BIG NOTE TO ALL CONTRIBUTORS INTERESTED: If you use Microsoft's service too many times a day with Fido, you will be banned from the software download service (both the website and any ISO download tool that uses its underpinnings) with the following error message for (at least) a day: You can get past this by connecting your system to a different device (it could be another router or a mobile hotspot), but it's best to wait for a day, or just not use Fido too many times. Make sure that users know about this |
Another way of downloading the ISO without having this Issue would be auto downloading & managing the Media Creation tool. AveYo has a pretty good way of doing this that we could adapt as an in house solution. |
@MyDrift-user, that seems like a good idea but, for now, we could use Fido for the introduction. We could later do a whole revamp that uses AveYo's solution. I think that depends on the reliability of this method. Since end-users will be downloading ISOs once (maybe twice), this could work fine. However, it could present those issues if you make that script go further. What do you think? |
Yeah for the testing I have gotten the "Cooldown" many times, but after 1 to 1.5 days it always worked again. For now this is sufficient. I also don't think it is going to make issues on normal usage. |
Should I make the ISO download the second option? people would not always want to download the ISO bc they already have one or for other reasons? |
@MyDrift-user, yes. You should make it a secondary option. Sorry for not answering sooner - I was testing MicroWin on Windows 10 |
Done, updated images in description aswell |
Already noticed |
Type of Change
Description
Testing
Autoselects newest Windows Release, takes language & arch from current system but can be modified.
Still gives users the chance to use their own ISOs
Downloads fine and instantly proceeds with mounting it after download has finished:
Fido also gives a progress bar for the download:
rewritten instruction:
Checklist