[sf-lug] Best way to install a .exe firmware updater

Akkana Peck akkana at shallowsky.com
Sat Nov 23 15:46:34 PST 2019


Michael Paoli writes:
> Not that it's at all best solution, however ...
> I did some years back, temporarily set up a VM
> running some Microsoft Windows, atop a physical host that was
> running Linux ... and without all the license key issues

I do have a Windows inside VirtualBox.

I thought that would let me do things like create a "Windows to Go"
USB stick; but all the methods I've tried of creating a W2G stick
fail in VirtualBox for one reason or another (apparently VB isn't
100% reliable in the way it writes to USB sticks, nor in the way it
shares files with Windows).

So I borrowed a real Windows box and used it to make a W2G stick
using Rufus. But the USB stick was so slow that after more than an
hour it still hadn't finished booting. I used shift-F10 to get a
command shell and tried running the exe anyway, and it ran without
errors but apparently didn't run properly (the trackpad problem is
still there). I may try repeating that with a faster USB stick.

> So ... that could well be means to run .exe, and under read Microsoft
> Operating system.

Unfortunately I don't think running a firmware updater under
VirtualBox works, because Windows can't see the actual trackpad
hardware, just VB's emulated mouse:

> But alas, if the .exe is expecting to talk to real hardware (e.g. firmware
> upgrade), that method might be useless for that purpose

Exactly.

> running the .exe then at least gives one an easy way to extract it.
> Some .exe files also, are self-extracting ZIP files - in which case sometimes
> ZIP utilities (e.g. unzip) can be used to extract the contents.

That's a good point. I just ran it in Windows inside Virtualbox, and
it extracted a couple of image files plus a synreflash.exe. Maybe
that's something I could run under FreeDOS even though I can't run
the original .exe.

> ----- Forwarded message from Ken Shaffer <kenshaffer80 at gmail.com> -----
>   For the real-Windows approach, I have used Macrium Reflect (free
> copy) to successfully copy a running Windows system (to a smaller
> SDD). Might be an easy way to generate a throw-away copy of Windows
> just for the flash.

My husband tried running that on his Windows box, but when I booted
from the resulting flash drive, it turned out to be a Windows
installer/updater, which isn't enough to actually run Windows programs.
Programs like Rufus and maybe Wintousb seem to produce something
closer to useful, though so far neither one has actually worked yet.

Rick Moen writes:
> Quoting Akkana Peck (akkana at shallowsky.com):
> 
> > The Gen 7 is a great Linux laptop, with only a couple of problems:
> > in particular, a glitchy trackpad addressed by a firmware update
> > that Lenovo only distributes as a .exe.
> 
> So, you're reasonably certain that's a _Windows_ 64-bit executable, and
> not a DOS one?  

Lenovo says it's for Windows 64-bit, but file says:
n2hgc06w.exe: PE32 executable (GUI) Intel 80386, for MS Windows 
So apparently it's a 32-bit Windows executable.

I tried FreeDOS today, and it said "This program must be run under
Win32". Googling that along with FreeDOS, it sounds like that
generally means the program requires Windows libraries that FreeDOS
doesn't have.

> So, if I had such a laptop and needed to run a Windows or DOS-based
> firmware updater utility, I'd bite the bullet and (1) get a HD or SSD
> that can be temporarily devoted to this purpose, (2) set it to be the
> primary boot device (probably requires removing or disconnecting the
> Linux drive), and (3) install real native MS-Windows on it.  Then

In truth, I have the original SSD and can swap that in if it comes
to it. I was really hoping to find another way, largely because I've
been wanting to use that nice fast SSD as a backup/external disk
instead of something that sits around uselessly 99% of the time just
in case I need to run a firmware updater.

> That having been said, does Linux Vendor Firmware Service yet support
> the Gen 7?
> https://www.omgubuntu.co.uk/2018/08/lvfs-lenovo-firmware-updates-linux
> 
> Hmm, searching https://fwupd.org/ it appears you might be in luck.

That seemed like a strong selling point when I was comparing models.
But it looks like it only applies to a few parts of the system.
Being able to do BIOS updates is great, but apparently most of
the hardware on the system doesn't use this system.
fwupdmgr get-updates shows several updates available but nothing
that looks related to the trackpad.

I suppose I should try installing what's there just on general
principle. Though I'm having "one of those days" today: when I
plugged in a backup drive that was working fine yesterday, the
partition table was completely gone (!) and although testdisk was
able to recover the partitions, I haven't yet found a way to recover
the filesystems that were there. (No errors in dmesg.) And just now
when I tried to fire up Virtualbox, it couldn't run Windows because
the .vbox file had somehow gotten truncated since the last time I
ran it. (Fortunately it was on the second backup drive.) It's been
one of those everything- going-wrong days. Probably not the best day
to try my first BIOS update.

        ...Akkana



More information about the sf-lug mailing list