diff options
author | Lennart Poettering <lennart@poettering.net> | 2010-04-07 16:23:08 +0200 |
---|---|---|
committer | Lennart Poettering <lennart@poettering.net> | 2010-04-07 16:23:08 +0200 |
commit | edddf4ff8841951cdbb698f72a3f4f8554ce8d33 (patch) | |
tree | b20fbbc90f1c361a7cdafc35da68ce5417ea1395 /systemadm.vala | |
parent | 5e177ece179032d522d4058d21b885d49e59f5d5 (diff) |
vala: take command line args to control whether to talk to system or session systemd
Diffstat (limited to 'systemadm.vala')
-rw-r--r-- | systemadm.vala | 16 |
1 files changed, 13 insertions, 3 deletions
diff --git a/systemadm.vala b/systemadm.vala index bc4f9403e6..c761511c1c 100644 --- a/systemadm.vala +++ b/systemadm.vala @@ -22,6 +22,8 @@ using GLib; using DBus; using Pango; +static bool session = false; + public class LeftLabel : Label { public LeftLabel(string? text = null) { if (text != null) @@ -96,7 +98,6 @@ public class MainWindow : Window { notebook.append_page(job_vbox, new Label("Jobs")); job_vbox.set_border_width(12); - unit_model = new ListStore(6, typeof(string), typeof(string), typeof(string), typeof(string), typeof(string), typeof(Unit)); job_model = new ListStore(5, typeof(string), typeof(string), typeof(string), typeof(string), typeof(Job)); @@ -210,7 +211,7 @@ public class MainWindow : Window { bbox.pack_start(cancel_button, false, true, 0); - bus = Bus.get(BusType.SESSION); + bus = Bus.get(session ? BusType.SESSION : BusType.SYSTEM); manager = bus.get_object( "org.freedesktop.systemd1", @@ -514,14 +515,23 @@ public class MainWindow : Window { } } +static const OptionEntry entries[] = { + { "session", 0, 0, OptionArg.NONE, out session, "Connect to session bus", null }, + { "system", 0, OptionFlags.REVERSE, OptionArg.NONE, out session, "Connect to system bus", null }, + { null } +}; + int main (string[] args) { - Gtk.init(ref args); try { + Gtk.init_with_args(ref args, "[OPTION...]", entries, "systemadm"); + MainWindow window = new MainWindow(); window.show_all(); } catch (DBus.Error e) { message("%s", e.message); + } catch (GLib.Error e) { + message("%s", e.message); } Gtk.main(); |