Skip to content

Commit

Permalink
Fix segfault on launch without NetworkManager installed
Browse files Browse the repository at this point in the history
Signed-off-by: Vasiliy Stelmachenok <[email protected]>
  • Loading branch information
ventureoo committed Aug 27, 2024
1 parent 599224f commit 73fbaeb
Show file tree
Hide file tree
Showing 2 changed files with 16 additions and 8 deletions.
5 changes: 4 additions & 1 deletion src/main.rs
Original file line number Diff line number Diff line change
Expand Up @@ -313,7 +313,10 @@ fn build_ui(application: &gtk::Application) {
}
pages::create_appbrowser_page(&builder);
pages::create_tweaks_page(&builder);
pages::create_dnsconnections_page(&builder);

if Path::new("/usr/bin/nmcli").exists() {
pages::create_dnsconnections_page(&builder);
}

// Show the UI
main_window.show();
Expand Down
19 changes: 12 additions & 7 deletions src/pages.rs
Original file line number Diff line number Diff line change
Expand Up @@ -284,7 +284,7 @@ fn create_fixes_section(builder: &Builder) -> gtk::Box {
let remove_orphans_btn = create_gtk_button!("remove-orphans-title");
let clear_pkgcache_btn = create_gtk_button!("clear-pkgcache-title");
let rankmirrors_btn = create_gtk_button!("rankmirrors-title");
let dnsserver_btn = create_gtk_button!("dnsserver-title");

let install_gaming_btn = create_gtk_button!("install-gaming-title");
let install_snapper_btn = create_gtk_button!("install-snapper-title");
let install_spoof_dpi_btn = create_gtk_button!("install-spoof-dpi-title");
Expand Down Expand Up @@ -406,11 +406,6 @@ fn create_fixes_section(builder: &Builder) -> gtk::Box {
}
});
});
dnsserver_btn.connect_clicked(glib::clone!(@weak builder => move |_| {
let name = "dnsConnectionsBrowser";
let stack: gtk::Stack = builder.object("stack").unwrap();
stack.set_visible_child_name(&format!("{name}page"));
}));
install_spoof_dpi_btn.connect_clicked(move |_| {
let dialog_tx_spoof_dpi = dialog_tx_spoof.clone();
// Spawn child process in separate thread.
Expand Down Expand Up @@ -463,7 +458,17 @@ fn create_fixes_section(builder: &Builder) -> gtk::Box {
}
button_box_t.pack_end(&install_gaming_btn, true, true, 2);
button_box_frth.pack_end(&install_spoof_dpi_btn, true, true, 2);
button_box_frth.pack_end(&dnsserver_btn, true, true, 2);

if Path::new("/usr/bin/nmcli").exists() {
let dnsserver_btn = create_gtk_button!("dnsserver-title");
dnsserver_btn.connect_clicked(glib::clone!(@weak builder => move |_| {
let name = "dnsConnectionsBrowser";
let stack: gtk::Stack = builder.object("stack").unwrap();
stack.set_visible_child_name(&format!("{name}page"));
}));
button_box_frth.pack_end(&dnsserver_btn, true, true, 2);
}

button_box_f.set_halign(gtk::Align::Fill);
button_box_s.set_halign(gtk::Align::Fill);
button_box_t.set_halign(gtk::Align::Fill);
Expand Down

0 comments on commit 73fbaeb

Please sign in to comment.