linux-surface / surface-uefi-firmware

UEFI firmware updates for surface using fwupd. WIP, be careful.
104 stars 9 forks source link

basename: missing operand #14

Closed kachapman closed 3 years ago

kachapman commented 3 years ago

Hello! I am stuck on one of the steps for changing the firmware. The part where the .msi package is extracted and turned into cabs. I'm trying to install last mays update, because I dont want the current one. The .msi file referenced is one directory up, in the Downloads folder. Here is my output:

zionad@ken-sb2-linux:~/Downloads/surface-uefi-firmware$ ./repack.sh -m cab -f ../SurfaceBook2_Win10_17763_20.061.12854.0.msi -o out ==> Found Model: SurfaceBook2 ==> Unpacking driver package ./repack.sh: 137: cd: can't cd to out/SurfaceBook2/* basename: missing operand Try 'basename --help' for more information. basename: missing operand Try 'basename --help' for more information. basename: missing operand Try 'basename --help' for more information. cp: missing destination file operand after '/tmp/tmp.zpREAXzvqo/firmware.bin' Try 'cp --help' for more information. cp: missing destination file operand after '/tmp/tmp.zpREAXzvqo/firmware.cat' Try 'cp --help' for more information. cp: missing destination file operand after '/tmp/tmp.zpREAXzvqo/firmware.inf' Try 'cp --help' for more information.

It creates an out folder in the surface-uefi-firmware directory with a SurfaceBook2 subfolder and SurfaceBook2*{MSVER}.cab

Thanks!

kachapman commented 3 years ago

Looks like it was an issue with not having enough disk space. After unpacking, and attempting to install the old firmware, I now get this error:

zionad@ken-sb2-linux:~/Desktop/surface-uefi-firmware/out/SurfaceBook2$ fwupdmgr install SurfaceBook2_SurfaceUEFI_390.3192.768.0.cab --allow-older Decompressing… [] Authenticating… [ - ] Authenticating… [] missing signed bootloader for secure boot: /usr/libexec/fwupd/efi/fwupdx64.efi.signed cannot be found

kachapman commented 3 years ago

Ok I have success!

The key to getting passed the signed bootloader error is to just turn off secure boot temporarily during the patching process and then turn it back on afterwards.