Hamish Coleman
615f87dd2b
Remove the last manually maintained list from the Makefile - all lists of rules are now generated from the Descriptions.txt
2017-07-03 19:02:49 +08:00
Hamish Coleman
c0b2178942
Remove most of the variables from the autoexec.bat template
...
Instead use a *.report file for each component and add data as we
go, culminating in the built image simply catting the report to the
screen to show the user what is about to occur.
This is on the path towards removing all variables from the autoexec
template - which would make it simpler to reuse the same template for
other commands (e.g the x200 series does not use dosflash.exe)
2017-07-03 18:17:54 +08:00
Hamish Coleman
409f88c75c
Rename the FL2 copy script to make it clear that it deals with ISO files - and use the same naming as the IMG copy script
2017-07-03 17:43:53 +08:00
Hamish Coleman
bafb93e668
Add example macros to special case the x200 ISO image - which has two FL2 files
2017-07-03 17:23:15 +08:00
Hamish Coleman
f2401e68e9
the mtools mdel command has no option to ignore failure, which makes an ugly error show when non UEFI images are processed (like the x200 ones)
2017-07-03 17:20:44 +08:00
Hamish Coleman
2d87c9daff
Wrap the rule_IMG_extract macro with failsafe tmp files
2017-07-03 14:43:28 +08:00
Hamish Coleman
72558c31a3
Quick hack to fix bug with ISO images that have multiple FL2 files
2017-07-03 14:43:05 +08:00
Hamish Coleman
ffe384c17d
Cleanup old make rules - no longer used
2017-07-03 14:42:30 +08:00
Hamish Coleman
b9b1e2977f
use the Descriptions file to generate most of the static rules
2017-07-03 14:12:42 +08:00
Hamish Coleman
ae52989189
Remove the last set of the *.slice files and replace them with a script that can generically extract all currently known firmware images from their FL2 files
2017-07-01 09:22:52 +08:00
Hamish Coleman
d0c011aecf
Remove the .orig from all the Descriptions.txt entries - this will make it easier to create automatic rules in the future
2017-06-30 11:36:36 +08:00
Hamish Coleman
258c3542f1
Remove accidental duplicate rule
2017-06-30 11:17:07 +08:00
Hamish Coleman
e6a5dbec6f
Remove an overzelous checksum check - which also fixes a bug, since it was checking the wrong file anyway
2017-06-30 09:19:35 +08:00
Hamish Coleman
4926788cd1
Merge branch 'ypid-fix-x260-and-x270'
2017-06-30 09:11:25 +08:00
Hamish Coleman
64112afd75
Ensure that the iso extract targets dont ever pause for interactive input
2017-06-30 09:00:15 +08:00
Hamish Coleman
02e0f1b052
Add a TODO note
2017-06-29 14:13:05 +08:00
Robin Schneider
e5f5b685f6
Remove x260.R02HT29W.img target which is not yet usable and confusing
2017-06-29 07:59:13 +02:00
Hamish Coleman
e5537cfdb0
Make the .txt.orig downloader more generic.
...
As two examples - When looking at the release notes for the x200 laptop,
they have the same "uc" name as the cdrom image. The release notes for
the x270 laptop also has the same name as the cdrom image, but they use
neither the "uc" nor the "us" suffixes.
So, it seemed simplest to be the least smart and just download whatever
matches the cdrom image name.
This has the drawback that we sometimes end up with text files that tell
you how to use the windows .exe installer - but I am hoping that the
people reading these release notes will be able to realise that not all
instructions should be followed...
2017-06-29 13:01:44 +08:00
Hamish Coleman
43506237f0
Allow the makefile to explicitly specify to copyFL2 which FL2 file should be worked on
2017-06-29 12:51:03 +08:00
Hamish Coleman
ff38536430
Merge branch 'ypid-add_mount_and_extract_target'
2017-06-29 11:52:08 +08:00
Hamish Coleman
f28d0a1984
Update the docs with details on how extracting the ISO contents works.
...
This also documents the new .extract make targets and moves the direct
loopback mount option entirely into the documentation. It has been
moved because I want to discourage people from using it - I consider
it to be a higher risk with no good return for this risk.
2017-06-29 11:47:21 +08:00
Hamish Coleman
73d2a249a0
Remove the fix-hdd-image patch files and replace them with a generic MBR fixer script
2017-06-25 20:10:56 +08:00
Robin Schneider
32a071e67f
Remove -m
from mcopy
calls used for extracting
2017-06-24 21:54:38 +02:00
Robin Schneider
d3186b5a4a
Add a Makefile target to mount or extract the fat16 fs embedded in ISOs
2017-06-24 21:53:12 +02:00
Hamish Coleman
8eb3d4f571
Rearrange the clean target so we dont recursively delete things
2017-06-23 09:23:11 +08:00
Hamish Coleman
5dbd7f4362
Remove unneeded quotes
2017-06-22 20:15:27 +08:00
Hamish Coleman
94538c3e16
Merge branch 'ypid-add-txt-dl-target'
2017-06-22 20:14:43 +08:00
Hamish Coleman
89e3f0a660
Also support downloading release notes for newer systems, where this is no us/uc crazy naming
2017-06-22 20:12:20 +08:00
Hamish Coleman
ee51f748b8
Verify if txt notes match a known iso
2017-06-22 19:47:00 +08:00
Hamish Coleman
b11165457f
Add a check that the correct qemu hard drive patch exists
2017-06-20 15:59:22 +08:00
Hamish Coleman
4cbc329c4a
Add rm-on-fail to the hexpatch script, allowing more confidence that repeated make invocations will not accidentally succeed
2017-06-20 15:58:55 +08:00
Hamish Coleman
93f327106e
Merge pull request #29 from ypid/fix-docs
...
Fix spelling
2017-06-20 15:28:55 +08:00
Hamish Coleman
91b41539dc
Merge pull request #28 from ypid/clean-.d
...
Ensure DEPSDIR (.d) is removed on `make clean` as well
2017-06-20 15:27:13 +08:00
Hamish Coleman
5b9b1f6d8b
Merge branch 'ypid-nicer_patch_mv'
2017-06-20 14:49:02 +08:00
Hamish Coleman
df8930dfdc
Remove superfluous else case
2017-06-20 14:48:16 +08:00
Hamish Coleman
c7e03d0ae9
With the FL2 slice files gone, update some of the hacking notes
2017-06-20 14:40:43 +08:00
Hamish Coleman
e3d2a200bd
Note that we are too strict with some of the checksums, add the mec tools checks which might replace the checksum
2017-06-20 14:36:59 +08:00
Robin Schneider
a7c0a2e67f
Fix spelling
...
git ls-files -z "$(git rev-parse --show-toplevel)" | xargs --null -I '{}' find '{}' -type f -print0 | xargs --null sed --in-place --regexp-extended 's/dependancy/dependency/g;'
2017-06-18 00:01:19 +02:00
Robin Schneider
a641f33032
Ensure DEPSDIR (.d) is removed on make clean
as well
...
Important because of "The slice.deps targets basically do not handle
add/del/change of the *.slice files."
2017-06-17 21:05:44 +02:00
Robin Schneider
b3a453d3b7
Fix x260 and x270 ec firmware extract
2017-06-17 20:48:20 +02:00
Robin Schneider
397cbf906a
Add simple filename validation before attempting to download
2017-06-16 14:17:19 +02:00
Robin Schneider
179dc64a98
Don’t disable/enable patches which are already in their desired state
...
Avoids `mv` fail and in turn `make` fail.
```
for i in *.img.d; do mv $i/006_battery_validate.patch $i/006_battery_validate.patch.OFF; done
mv: cannot stat 't430.G1HT35WW.img.d/006_battery_validate.patch': No such file or directory
mv: cannot stat 't430s.G7HT39WW.img.d/006_battery_validate.patch': No such file or directory
mv: cannot stat 't530.G4HT39WW.img.d/006_battery_validate.patch': No such file or directory
mv: cannot stat 'w530.G4HT39WW.img.d/006_battery_validate.patch': No such file or directory
mv: cannot stat 'x230.G2HT35WW.img.d/006_battery_validate.patch': No such file or directory
mv: cannot stat 'x230t.GCHT25WW.img.d/006_battery_validate.patch': No such file or directory
Makefile:126: recipe for target 'patch_disable_battery' failed
make: *** [patch_disable_battery] Error 1
```
2017-06-16 13:48:53 +02:00
Hamish Coleman
2487dcb625
Update makefile table sort order to make a little more sense
2017-06-16 19:40:59 +08:00
Hamish Coleman
e92da3082b
Minor documentation updates
2017-06-16 19:40:37 +08:00
Hamish Coleman
0ac064a329
Merge pull request #22 from ypid/add_QEMU_OPTIONS
...
Allow to configure QEMU_OPTIONS to disable -enable-kvm
2017-06-16 19:03:09 +08:00
Robin Schneider
241b00df51
Allow to configure QEMU_OPTIONS to disable -enable-kvm
...
Not all environments have access to KVM support. For example if you
already work inside a VM (Qubes OS).
2017-06-16 11:51:27 +02:00
Robin Schneider
ec0383fdbe
Add makefile target to download README text file for ISO images
2017-06-16 11:50:53 +02:00
Hamish Coleman
bd80d6bc6b
Stop using the *.FL2.slice files - replace them with mcopy.
...
Note that this has the disadvantage that the resulting patched ISO images
are no longer easily diffable - the sectors used to store the patched
firmware will be changed by the mcopy program.
Since it turns out that the ISO image diff files were basically never
used, this is not a big issue - it mainly makes it harder to do QA on
the output.
2017-06-16 17:37:42 +08:00
Hamish Coleman
47b3a6a1b2
Make the rule defines slightly better named and slightly better commented
2017-06-16 17:13:03 +08:00
Hamish Coleman
7e614e9da5
BUG: fix the deps on the creation of the batch files
2017-06-16 17:12:02 +08:00
Hamish Coleman
f78f9c2419
Make unknown files cause an error immediately
2017-06-16 16:36:27 +08:00
Hamish Coleman
61cdddaa9a
Remove the many little .sha1 files and add this information to the description file
2017-06-16 15:24:54 +08:00
Hamish Coleman
c666443e40
Use a script to describe files
2017-06-16 13:22:28 +08:00
Hamish Coleman
3c42a4eea3
Move all scripts into their own dir
2017-06-16 12:19:53 +08:00
Hamish Coleman
453e9e67a5
Replace lots of little description files with one big one
2017-06-15 19:56:38 +08:00
Hamish Coleman
e3aff27cc3
Remove the automated list_iso as it duplicates the more flexible list_laptops output
2017-06-15 18:47:42 +08:00
Hamish Coleman
fd3ba888c7
Update t430 to use bios 2.72 (G1ETB2WW) ISO (no EC changes) - fixes issue #19
2017-06-15 18:12:39 +08:00
Hamish Coleman
1222b329b6
Quick doc bug fix - thanks Tasurinchi
2017-06-09 10:08:42 +08:00
Evey Quirk
e4f056d8ea
Update x230 to latest bios iso, no EC changes
2017-06-03 06:01:30 +00:00
Hamish Coleman
114299e6c7
Add makefile helper targets for enabling and disabling patchsets, then document all this
2017-01-31 13:50:58 +08:00
Hamish Coleman
56d8061814
New version of radare puts project files in a slightly different spot
2016-12-22 13:59:01 +08:00
Hamish Coleman
0eabb0b9f4
BUG: fix a command execution order issue - the make 'shell' command was expanded before the geteltorito command, which meant that there was no file for stat to use
2016-08-11 17:28:07 +10:00
Hamish Coleman
01ad8a01f6
BUG: fix incorrectly updated line (see #9 )
...
This fixes an issue introduced with 48b019b660
2016-08-05 14:56:28 +10:00
Hamish Coleman
92d3542567
Make the 'clean' target useful for rebuilding with different patches applied
2016-07-19 14:52:03 +10:00
Hamish Coleman
53df7d5a8e
The t430 ISO images are slightly larger than all the other ones, so the hdd image fix does not apply. Fix this by selecting the patch to use based on the size of the hdd image
2016-07-14 11:18:45 +10:00
Hamish Coleman
708a5c18bc
Remove the UEFI updater to ensure it doesnt get accidentally used. Update instructions to state that you need to boot with legacy mode
2016-06-22 11:02:06 +10:00
Hamish Coleman
48b019b660
Update the base image of the t430 patch to use the latest lenovo release (no EC changes in this version)
2016-06-06 17:12:48 +10:00
Hamish Coleman
2a16826e37
Make sure the build info gets shown as the last messages - for img output as well as iso.
2016-06-06 11:59:57 +10:00
Hamish Coleman
f44a0c212f
Show the build strings at the end of the build
2016-06-06 11:40:23 +10:00
Hamish Coleman
eaac31d226
Add the checksum of the built FL2 to the details shown
2016-06-06 11:32:27 +10:00
Hamish Coleman
894dfa4344
Add a build info line to the displayed batch file
2016-06-06 11:16:02 +10:00
Hamish Coleman
e25ba35146
Make the builds fully reproducable
2016-06-04 15:03:29 +10:00
Hamish Coleman
0e4b155ce8
Try to improve presentation of multiple versions and patch types
2016-06-03 13:01:04 +10:00
Phil Ashby
63fd87d1c0
Added T430 BIOS 2.57, plus battery patch
2016-06-02 22:44:14 +01:00
Hamish Coleman
c7ccad9614
Centralise the mtools config flag - which makes it impossible to forget to add
2016-05-28 23:35:51 +10:00
Hamish Coleman
c382909865
Add one more file to the clean target
2016-05-28 22:28:35 +10:00
Hamish Coleman
e7ac46c9ee
BUG: add some forgotten mtools options
2016-05-28 22:24:43 +10:00
Hamish Coleman
678ec494fc
Add a simple clean target
2016-05-28 22:21:22 +10:00
Hamish Coleman
10003c54a0
Remove one of the temp file hacks now mec-tools is upgraded
2016-05-28 17:46:10 +10:00
Hamish Coleman
2fdb758f6b
BUG: repeated failing makes could generate bad output.
...
This is a quick fix to address two issues:
* Firstly, if the mec-tools mec_encrypt binary cannot be compiled,
gcc still produces an output file - it is a non executable "precompiled
header" file. I assume there is a bug in the mec-tools makefile
logic, which I will look for later.
* Secondly, because I am using stdout for file generation, many commands
will still produce an output file even when they fail. This output file
then looks "good" to the make command, which will carry on to do the
next step.
Since fixing the failed commands in my Makefile makes things more robust
in general, it also avoids the compile issue with the mec-tools.
2016-05-26 17:10:52 +10:00
Hamish Coleman
eef19f110b
BUG: Fix use of wrong path separator char in dosflash command
2016-05-24 11:30:08 +10:00
Hamish Coleman
35b8918138
Update code and instructions to default to using USB disk image files
2016-05-20 13:15:18 +10:00
Hamish Coleman
1b2eb85661
Hide the internal lenovo iso name in favor of friendly ISO names
2016-05-20 11:24:23 +10:00
Hamish Coleman
5d3665d67a
Add a radare project for the x260
2016-04-29 20:36:28 +10:00
Hamish Coleman
66a696aa3b
BUG: Fix mtools check errors reported by brchan on thinkpads forum
...
It seems that mtools behaves differently with different versions and
that some versions react badly to the FAT16 image used in the Lenovo
ISO updates.
mcopy -o -i g5uj28us.iso@@71680 g5uj28us.iso.bat ::AUTOEXEC.BAT
Total number of sectors (64195) not a multiple of sectors per track (32)!
Add mtools_skip_check=1 to your .mtoolsrc file to skip this test
adding the skip_check environment variable simply ignores this error...
2016-04-28 13:09:15 +10:00
Hamish Coleman
f3508131a4
DRY: Factor out two psuedo rules into central places by using functions - however, this is a little hacky...
2016-04-28 13:08:24 +10:00
Hamish Coleman
cf708bcc22
Add t530 support - this appears to share the EC firmware with the w530
2016-04-27 18:44:21 +10:00
Hamish Coleman
ebd8eef3af
Add x230t support
2016-04-27 18:10:49 +10:00
Hamish Coleman
b6900ae694
Quick hack to help address the stale deps files
2016-04-27 17:22:04 +10:00
Hamish Coleman
09ba9623c9
Add t430s bootable ISO
2016-04-27 13:06:19 +10:00
Hamish Coleman
30b18aa01c
Add t430 bootable ISO
2016-04-27 12:57:53 +10:00
Hamish Coleman
27fb4c48f7
Add w530 ISO output
2016-04-27 12:47:42 +10:00
Hamish Coleman
f8627901fd
Add a helper target to burn an ISO to a CDRW
2016-04-27 12:47:10 +10:00
Hamish Coleman
82b0d245c5
Add an empty line to make output look nice
2016-04-27 12:46:47 +10:00
Hamish Coleman
229f54a028
Autogenerate the list of available bootable ISO images
2016-04-27 11:54:10 +10:00
Hamish Coleman
2f51844966
Update readme and descriptive make targets - again, hopefully making them simpler
2016-04-27 11:43:31 +10:00
Hamish Coleman
6829138024
Add a warning and some details to the auto flash batch file
2016-04-27 11:28:21 +10:00
Hamish Coleman
d8feed7eee
Make the maintenance of the makefile simpler by moving a whole lot of static deps into a simple dependancy generator
2016-04-27 11:16:19 +10:00
Hamish Coleman
09be98fb8c
Change dosflash extractor to use mtools and to be generic across multiple ISO images
2016-04-27 11:05:14 +10:00
Hamish Coleman
bf0c946300
Add a bootable ISO image target for x230
2016-04-27 00:43:48 +10:00