"If the device was unplugged or experienced an abrupt power outage or pulled power cord, wait at least 15 seconds before attempting to boot from USB."
what?
oh right I need to install TCP/IP onto my windows 95 machine first
lemme find my win95 floppies
the curl download failed with a connection reset after 17 minutes and 20gb!
so I tell curl to resume it, and... the server starts over from the beginning.
MICROSOFT'S STUPID SERVER DOESN'T SUPPORT THE RANGE HEADER
anger canceled, I was just misreading curl. it did resume.
so again, why doesn't microsoft's official tool do this?
currently on attempt #8
#7 made it to 17gb (of 22gb)!
bad idea: I already MITM'd this once.
I download the file with curl and stick it on a local fast server. Then I set up mitmproxy to silently rewrite requests to their shitty server to my local one, which will be an actual server that works and doesn't randomly drop connections once out of EVERY FUCKING TIME
annoyingly I already deleted the file I downloaded earlier.
(I'm juggling laserdisc archival files right now, so my laptop has a VERY full hard drive, and I thought I was done with that file when it failed verification)
my first attempt and curling it stalled at 16mb.
not gigabytes, megabytes.
hey microsoft could I mail you some blank floppies and you just return 'em with the file on it? that might be easier at this point
I have downloaded the file and I'm now copying it onto my local server.
why didn't I just download it on my local server in the first place, so I wouldn't have to copy it across my house's network?
good question.
okay the files all moved locally so I can just make mitmproxy point it at the different URL. but I think I have been screaming at this problem enough for one day, so I'm going to stop for tonight.
the surface hub has not defeated me yet, I fight on
I lied. mitmproxy is now redirected to my local server, and Surface IT Tool is downloading from it.
annoyingly slowly, actually. Only 51Mbps? this is 22gb!
(it's probably because mitmproxy is handling all the bytes instead of letting nginx do it)
okay I have made a recovery disk by using the MITM download hack
how much do you want to bet this thing won't even boot?
it boots! it's now recovering
this may finally get us incrementally closer to a version of windows that actually works
So instead you've got these instructions, which do not work:
https://learn.microsoft.com/en-us/surface-hub/surface-hub-2s-migrate-os
because the way it suggests to make a recovery image doesn't create a recovery image this locked-down fucker will boot.
Only the Surface IT Tools recovery images will boot, and Surface IT Tools can't download files worth shit, so good fucking luck getting that 22gb image
also the Surface IT Tool verifies _something_ (I wasn't able to confirm what) with the microsoft servers before it'll write you an image, even if you have the image already downloaded.
So I highly suspect this method will break in the future
@mjg59 @foone Do you – by chance – know if it's also possible to administer the UEFI from Linux (sry, to hijack the thread)?
I haven't seen anything like this so far and I wonder if I just overlooked it. I have seen some tooling to do things like this from Windows for hardware from some vendors, but no tooling for all UEFI.
But I imagine this to be a standardized interface (with UEFI) and kinda expect that it could be possible. I just never really found the time to look more in depth.
that's a kind of security nightmare so Linux doesn't give arbitrary access that way (it's a long story). Could it be standardised? Absolutely. Nobody's done the work, though :(
Ah okay, so my expectation is correct, but I probably could not accidentally stumble over anything because the work hasn't been done, yet. I assume this is kernel upstream work?
Is it considered a security nightmare on Windows or on Linux? Because I assume it wouldn't be if it would be protected by a proper privilege security boundary.
You can set new boot entries (so you can configure boot from USB even if you don't have config for that)
Okay, the USB thing is nice.
In my setup I still have Grub in-between, therefore some of this kind of control can be exercised this way.
And I imagine the fwupdmgr to use this to directly reboot into its firmware updater.
you can install new keys if they're appropriately signed
Is that the same functionality that fwupdmgr uses to update db, dbx and friends? Or do they do this from their FW updater EFI binary? Because this sounds like one could directly update kek and the others?
[email protected] for (not) making a microsoft account
@foone it's a touchscreen, right? Get some UnDuneII going on there: https://liquidream.itch.io/undune2
Or the holy grail for me (and the reason I looked at these big Surface things a while ago) is to get some touch-enabled The Incredible Machine play going.
🏆 Crikey! (and very well done.) 3:O)>
@foone clearly you now have to reverse engineer the network communications it tries to have with skype and setup a Potemkin Skype Server on your network!
That sleep's not gonna come any time soon 😄
Can you use one of the Windows boot/rescue tools to boot from external media and then reset the password on the admin account?
Aw, hell. I thought the second one actually installed/updated Windows on the hub, and you just couldn't use it because of the problems with both accounts.
How long until you're looking at NetBSD or something? 😏