@@ -249,10 +249,21 @@ pub(crate) struct InstallConfigOpts {
249
249
250
250
#[ derive( Debug , Clone , clap:: Parser , Serialize , Deserialize , PartialEq , Eq ) ]
251
251
pub ( crate ) struct InstallComposefsOpts {
252
+ /// If true, composefs backend is used, else ostree backend is used
253
+ #[ clap( long, default_value_t) ]
254
+ #[ serde( default ) ]
255
+ pub ( crate ) composefs_backend : bool ,
256
+
257
+ /// Make fs-verity validation optional in case the filesystem doesn't support it
252
258
#[ clap( long, default_value_t) ]
253
259
#[ serde( default ) ]
254
260
pub ( crate ) insecure : bool ,
255
261
262
+ /// The bootloader to use.
263
+ /// Currently supported:
264
+ ///
265
+ /// - systemd-boot
266
+ /// - grub
256
267
#[ clap( long, default_value_t) ]
257
268
#[ serde( default ) ]
258
269
pub ( crate ) bootloader : Bootloader ,
@@ -288,11 +299,6 @@ pub(crate) struct InstallToDiskOpts {
288
299
#[ serde( default ) ]
289
300
pub ( crate ) via_loopback : bool ,
290
301
291
- #[ clap( long) ]
292
- #[ serde( default ) ]
293
- #[ cfg( feature = "composefs-backend" ) ]
294
- pub ( crate ) composefs_native : bool ,
295
-
296
302
#[ clap( flatten) ]
297
303
#[ serde( flatten) ]
298
304
#[ cfg( feature = "composefs-backend" ) ]
@@ -373,10 +379,6 @@ pub(crate) struct InstallToFilesystemOpts {
373
379
#[ clap( flatten) ]
374
380
pub ( crate ) config_opts : InstallConfigOpts ,
375
381
376
- #[ clap( long) ]
377
- #[ cfg( feature = "composefs-backend" ) ]
378
- pub ( crate ) composefs_native : bool ,
379
-
380
382
#[ cfg( feature = "composefs-backend" ) ]
381
383
#[ clap( flatten) ]
382
384
pub ( crate ) compoesfs_opts : InstallComposefsOpts ,
@@ -446,7 +448,7 @@ pub(crate) struct State {
446
448
pub ( crate ) container_root : Dir ,
447
449
pub ( crate ) tempdir : TempDir ,
448
450
449
- // If Some, then --composefs_native is passed
451
+ // If Some, then --composefs-backend is passed
450
452
#[ cfg( feature = "composefs-backend" ) ]
451
453
pub ( crate ) composefs_options : Option < InstallComposefsOpts > ,
452
454
}
@@ -578,10 +580,10 @@ impl FromStr for MountSpec {
578
580
#[ cfg( all( feature = "install-to-disk" , feature = "composefs-backend" ) ) ]
579
581
impl InstallToDiskOpts {
580
582
pub ( crate ) fn validate ( & self ) -> Result < ( ) > {
581
- if !self . composefs_native {
582
- // Reject using --insecure without --composefs
583
+ if !self . composefs_opts . composefs_backend {
584
+ // Reject using --insecure without --composefs-backend
583
585
if self . composefs_opts . insecure != false {
584
- anyhow:: bail!( "--insecure must not be provided without --composefs" ) ;
586
+ anyhow:: bail!( "--insecure must not be provided without --composefs-backend " ) ;
585
587
}
586
588
}
587
589
@@ -1623,7 +1625,7 @@ pub(crate) async fn install_to_disk(mut opts: InstallToDiskOpts) -> Result<()> {
1623
1625
}
1624
1626
1625
1627
#[ cfg( feature = "composefs-backend" ) ]
1626
- let composefs_arg = if opts. composefs_native {
1628
+ let composefs_arg = if opts. composefs_opts . composefs_backend {
1627
1629
Some ( opts. composefs_opts )
1628
1630
} else {
1629
1631
None
@@ -1874,7 +1876,9 @@ pub(crate) async fn install_to_filesystem(
1874
1876
opts. source_opts ,
1875
1877
opts. target_opts ,
1876
1878
#[ cfg( feature = "composefs-backend" ) ]
1877
- opts. composefs_native . then_some ( opts. compoesfs_opts ) ,
1879
+ opts. compoesfs_opts
1880
+ . composefs_backend
1881
+ . then_some ( opts. compoesfs_opts ) ,
1878
1882
#[ cfg( not( feature = "composefs-backend" ) ) ]
1879
1883
None ,
1880
1884
)
@@ -2148,9 +2152,8 @@ pub(crate) async fn install_to_existing_root(opts: InstallToExistingRootOpts) ->
2148
2152
target_opts : opts. target_opts ,
2149
2153
config_opts : opts. config_opts ,
2150
2154
#[ cfg( feature = "composefs-backend" ) ]
2151
- composefs_native : false ,
2152
- #[ cfg( feature = "composefs-backend" ) ]
2153
2155
compoesfs_opts : InstallComposefsOpts {
2156
+ composefs_backend : true ,
2154
2157
insecure : false ,
2155
2158
bootloader : Bootloader :: Grub ,
2156
2159
uki_addon : None ,
0 commit comments