mirror of
https://gitlab.com/gabmus/envision.git
synced 2025-07-18 06:51:37 +00:00
feat: command line option to skip dependency checks
This commit is contained in:
parent
984cbd7d32
commit
be4c50f020
2 changed files with 19 additions and 1 deletions
|
@ -103,6 +103,9 @@ pub struct App {
|
||||||
|
|
||||||
#[tracker::do_not_track]
|
#[tracker::do_not_track]
|
||||||
wivrn_conf_editor: Option<Controller<WivrnConfEditor>>,
|
wivrn_conf_editor: Option<Controller<WivrnConfEditor>>,
|
||||||
|
|
||||||
|
#[tracker::do_not_track]
|
||||||
|
skip_depcheck: bool,
|
||||||
}
|
}
|
||||||
|
|
||||||
#[derive(Debug)]
|
#[derive(Debug)]
|
||||||
|
@ -460,7 +463,7 @@ impl SimpleComponent for App {
|
||||||
// no listed deps for opencomp
|
// no listed deps for opencomp
|
||||||
}
|
}
|
||||||
jobs.extend(get_build_opencomposite_jobs(&profile, clean_build));
|
jobs.extend(get_build_opencomposite_jobs(&profile, clean_build));
|
||||||
if !missing_deps.is_empty() {
|
if !(self.skip_depcheck || missing_deps.is_empty()) {
|
||||||
missing_deps.sort_unstable();
|
missing_deps.sort_unstable();
|
||||||
missing_deps.dedup(); // dedup only works if sorted, hence the above
|
missing_deps.dedup(); // dedup only works if sorted, hence the above
|
||||||
let distro = LinuxDistro::get();
|
let distro = LinuxDistro::get();
|
||||||
|
@ -731,6 +734,9 @@ impl SimpleComponent for App {
|
||||||
if opts.start {
|
if opts.start {
|
||||||
sender.input(Msg::DoStartStopXRService)
|
sender.input(Msg::DoStartStopXRService)
|
||||||
}
|
}
|
||||||
|
if opts.skip_depcheck {
|
||||||
|
self.skip_depcheck = true;
|
||||||
|
}
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
@ -821,6 +827,7 @@ impl SimpleComponent for App {
|
||||||
restart_xrservice: false,
|
restart_xrservice: false,
|
||||||
libmonado: None,
|
libmonado: None,
|
||||||
wivrn_conf_editor: None,
|
wivrn_conf_editor: None,
|
||||||
|
skip_depcheck: false,
|
||||||
};
|
};
|
||||||
let widgets = view_output!();
|
let widgets = view_output!();
|
||||||
|
|
||||||
|
|
|
@ -11,12 +11,14 @@ use gtk4::{
|
||||||
pub struct CmdLineOpts {
|
pub struct CmdLineOpts {
|
||||||
pub start: bool,
|
pub start: bool,
|
||||||
pub profile_uuid: Option<String>,
|
pub profile_uuid: Option<String>,
|
||||||
|
pub skip_depcheck: bool,
|
||||||
}
|
}
|
||||||
|
|
||||||
impl CmdLineOpts {
|
impl CmdLineOpts {
|
||||||
const OPT_START: (&'static str, char) = ("start", 'S');
|
const OPT_START: (&'static str, char) = ("start", 'S');
|
||||||
const OPT_LIST_PROFILES: (&'static str, char) = ("list-profiles", 'l');
|
const OPT_LIST_PROFILES: (&'static str, char) = ("list-profiles", 'l');
|
||||||
const OPT_PROFILE: (&'static str, char) = ("profile", 'p');
|
const OPT_PROFILE: (&'static str, char) = ("profile", 'p');
|
||||||
|
const OPT_SKIP_DEPCHECK: (&'static str, char) = ("skip-dependency-check", 'd');
|
||||||
|
|
||||||
pub fn init(app: &impl IsA<Application>) {
|
pub fn init(app: &impl IsA<Application>) {
|
||||||
app.add_main_option(
|
app.add_main_option(
|
||||||
|
@ -43,6 +45,14 @@ impl CmdLineOpts {
|
||||||
"Switch to the profile indicated by the UUID",
|
"Switch to the profile indicated by the UUID",
|
||||||
None,
|
None,
|
||||||
);
|
);
|
||||||
|
app.add_main_option(
|
||||||
|
Self::OPT_SKIP_DEPCHECK.0,
|
||||||
|
glib::Char::try_from(Self::OPT_SKIP_DEPCHECK.1).unwrap(),
|
||||||
|
glib::OptionFlags::IN_MAIN,
|
||||||
|
glib::OptionArg::None,
|
||||||
|
"Skip dependency checks when building profiles",
|
||||||
|
None,
|
||||||
|
);
|
||||||
}
|
}
|
||||||
|
|
||||||
/// returns true if the application should quit
|
/// returns true if the application should quit
|
||||||
|
@ -67,6 +77,7 @@ impl CmdLineOpts {
|
||||||
Ok(None) => None,
|
Ok(None) => None,
|
||||||
Ok(Some(variant)) => Some(variant),
|
Ok(Some(variant)) => Some(variant),
|
||||||
},
|
},
|
||||||
|
skip_depcheck: opts.contains(Self::OPT_SKIP_DEPCHECK.0),
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
Loading…
Add table
Add a link
Reference in a new issue