user.rs 795 B

1234567891011121314151617181920212223
  1. use anyhow::Result;
  2. use dadk_user::dadk_user_main;
  3. use crate::{console::user::UserCommand, context::DADKExecContext};
  4. pub(super) fn run(ctx: &DADKExecContext, cmd: &UserCommand) -> Result<()> {
  5. let config_dir = ctx.user_config_dir()?;
  6. let cache_root_dir = ctx.cache_root_dir()?;
  7. let sysroot_dir = ctx.sysroot_dir()?;
  8. let dadk_user_action: dadk_user::context::Action = cmd.clone().into();
  9. let context = dadk_user::context::DadkUserExecuteContextBuilder::default()
  10. .sysroot_dir(sysroot_dir)
  11. .config_dir(config_dir)
  12. .action(dadk_user_action)
  13. .thread_num(1)
  14. .cache_dir(cache_root_dir)
  15. .target_arch(ctx.target_arch())
  16. .build()
  17. .expect("Failed to build execute context");
  18. dadk_user_main(context);
  19. Ok(())
  20. }