Add more options
authorMichael Spang <mspang@csclub.uwaterloo.ca>
Thu, 31 Dec 2009 02:31:53 +0000 (21:31 -0500)
committerMichael Spang <mspang@csclub.uwaterloo.ca>
Tue, 9 Mar 2010 00:13:54 +0000 (19:13 -0500)
Signed-off-by: Michael Spang <mspang@csclub.uwaterloo.ca>
inapt.8
inapt.cc

diff --git a/inapt.8 b/inapt.8
index 271e023..1c2ecef 100644 (file)
--- a/inapt.8
+++ b/inapt.8
@@ -32,18 +32,30 @@ Display a usage message.
 .B \-p, \-\-profile \fIprofile_name\fR
 Display a usage message.
 .TP
-.B \-d
-Enable debugging output.
+.B \-l, \-\-update
+Update the package listings.
+.TP
+.B \-u, \-\-upgrade
+Upgrade packages.
+.TP
+.B \-e, \-\-clean
+Clean the package cache.
+.TP
+.B \-c, \-\-check
+No action; check to see if the configuration is correct.
 .TP
 .B \-s, \-\-simulate
-No action; perform a simulation of events that would occur but do not actually change the system.
+No action; perform a simulation of events that would occur.
 .TP
-.B \-u, \-\-purge
+.B \-\-purge
 Use purge instead of remove for anything that would be removed.
 .TP
 .B \-o, \-\-option \fIconfig_string\fR
 Set a Configuration Option; This will set an arbitrary configuration option. The syntax is -o Foo::Bar=bar.  -o and --option can be used
 multiple times to set different options.
+.TP
+.B \-d
+Enable debugging output.
 
 .SH PROFILES
 To allow the same configuration file to be used on many machines,
index 3e106fe..c522e0e 100644 (file)
--- a/inapt.cc
+++ b/inapt.cc
@@ -25,7 +25,12 @@ char *prog = NULL;
 static struct option opts[] = {
     { "help", 0, NULL, 'h' },
     { "simulate", 0, NULL, 's' },
-    { "purge", 0, NULL, 'u' },
+    { "profile", 0, NULL, 'p' },
+    { "update", 0, NULL, 'l' },
+    { "upgrade", 0, NULL, 'u' },
+    { "check", 0, NULL, 'c' },
+    { "purge", 0, NULL, '!' },
+    { "clean", 0, NULL, 'e' },
     { "option", 0, NULL, 'o' },
     { NULL, 0, NULL, '\0' },
 };
@@ -432,21 +437,33 @@ int main(int argc, char *argv[]) {
     std::set<std::string> profiles;
 
     prog = xstrdup(basename(argv[0]));
-    while ((opt = getopt_long(argc, argv, "p:o:sdh", opts, NULL)) != -1) {
+    while ((opt = getopt_long(argc, argv, "?hp:slucedo:", opts, NULL)) != -1) {
         switch (opt) {
-            case 'p':
-                profiles.insert(optarg);
-                break;
             case '?':
             case 'h':
                 usage();
                 break;
+            case 'p':
+                profiles.insert(optarg);
+                break;
             case 's':
                 _config->Set("Inapt::Simulate", true);
                 break;
-            case 'u':
+            case '!':
                 _config->Set("Inapt::Purge", true);
                 break;
+            case 'l':
+                _config->Set("Inapt::Update", true);
+                break;
+            case 'u':
+                _config->Set("Inapt::Upgrade", true);
+                break;
+            case 'c':
+                _config->Set("Inapt::Check", true);
+                break;
+            case 'e':
+                _config->Set("Inapt::Clean", true);
+                break;
             case 'd':
                 debug_level++;
                 break;