meson: Drop genkey target

In mkosi.images/system/mkosi.conf, we configure the certificate as
an extra tree so it's available inside the image. However, we pick up
the certificate from the top level repository directory and not from the
build directory where it is generated by the genkey meson target.

We currently have no way to access the build directory that mkosi was
invoked from when parsing the configuration file. Thus we have no way to
specify the correct location to the certificate when it's located in the
build directory.

For now, let's look for the key and certificate in the top level repository
root directory and drop the genkey target.

We don't have to change the Github Actions CI because it already runs genkey
manually before the image build (which is something we forgot to remove when
introducing the genkey target and is the reason this didn't cause issues before).
This commit is contained in:
Daan De Meyer 2024-06-28 09:58:56 +02:00
parent c1451cd2a2
commit b00f44c3cf

View file

@ -2655,12 +2655,6 @@ foreach executable : ['systemd-journal-remote', 'systemd-measure']
endforeach
if mkosi.found()
genkey = custom_target('genkey',
output : ['mkosi.key', 'mkosi.crt'],
command : [mkosi, '--force', 'genkey'],
depends : mkosi_depends,
)
custom_target('mkosi',
build_always_stale : true,
build_by_default: false,
@ -2672,14 +2666,10 @@ if mkosi.found()
'--output-dir', meson.current_build_dir() / 'mkosi.output',
'--cache-dir', meson.current_build_dir() / 'mkosi.cache',
'--build-dir', meson.current_build_dir() / 'mkosi.builddir',
'--secure-boot-key', meson.current_build_dir() / 'mkosi.key',
'--secure-boot-certificate', meson.current_build_dir() / 'mkosi.crt',
'--verity-key', meson.current_build_dir() / 'mkosi.key',
'--verity-certificate', meson.current_build_dir() / 'mkosi.crt',
'--force',
'build',
],
depends : mkosi_depends + [genkey],
depends : mkosi_depends,
)
endif