@@ -372,6 +372,14 @@ pub(crate) struct InstallToFilesystemOpts {
372372
373373 #[ clap( flatten) ]
374374 pub ( crate ) config_opts : InstallConfigOpts ,
375+
376+ #[ clap( long) ]
377+ #[ cfg( feature = "composefs-backend" ) ]
378+ pub ( crate ) composefs_native : bool ,
379+
380+ #[ cfg( feature = "composefs-backend" ) ]
381+ #[ clap( flatten) ]
382+ pub ( crate ) compoesfs_opts : InstallComposefsOpts ,
375383}
376384
377385#[ derive( Debug , Clone , clap:: Parser , PartialEq , Eq ) ]
@@ -1861,7 +1869,17 @@ pub(crate) async fn install_to_filesystem(
18611869 // IMPORTANT: and hence anything that is done before MUST BE IDEMPOTENT.
18621870 // IMPORTANT: In practice, we should only be gathering information before this point,
18631871 // IMPORTANT: and not performing any mutations at all.
1864- let state = prepare_install ( opts. config_opts , opts. source_opts , opts. target_opts , None ) . await ?;
1872+ let state = prepare_install (
1873+ opts. config_opts ,
1874+ opts. source_opts ,
1875+ opts. target_opts ,
1876+ #[ cfg( feature = "composefs-backend" ) ]
1877+ opts. composefs_native . then_some ( opts. compoesfs_opts ) ,
1878+ #[ cfg( not( feature = "composefs-backend" ) ) ]
1879+ None ,
1880+ )
1881+ . await ?;
1882+
18651883 // And the last bit of state here is the fsopts, which we also destructure now.
18661884 let mut fsopts = opts. filesystem_opts ;
18671885
@@ -2129,6 +2147,14 @@ pub(crate) async fn install_to_existing_root(opts: InstallToExistingRootOpts) ->
21292147 source_opts : opts. source_opts ,
21302148 target_opts : opts. target_opts ,
21312149 config_opts : opts. config_opts ,
2150+ #[ cfg( feature = "composefs-backend" ) ]
2151+ composefs_native : false ,
2152+ #[ cfg( feature = "composefs-backend" ) ]
2153+ compoesfs_opts : InstallComposefsOpts {
2154+ insecure : false ,
2155+ bootloader : Bootloader :: Grub ,
2156+ uki_addon : None ,
2157+ } ,
21322158 } ;
21332159
21342160 install_to_filesystem ( opts, true , cleanup) . await
0 commit comments