]> git.ipfire.org Git - thirdparty/plymouth.git/commitdiff
main: add an 'updates' mode for installing offline updates
authorRichard Hughes <richard@hughsie.com>
Thu, 7 Jun 2012 18:55:19 +0000 (19:55 +0100)
committerRay Strode <rstrode@redhat.com>
Fri, 8 Jun 2012 22:14:39 +0000 (18:14 -0400)
https://bugs.freedesktop.org/show_bug.cgi?id=50847

src/libply-splash-core/ply-boot-splash-plugin.h
src/main.c
src/plugins/splash/script/script-lib-plymouth.c

index 7da9a5d4d038bbe7de95ff762514d14485e4d7c2..107bf9901c0f3aced97d509d38ded3de192f14b9 100644 (file)
@@ -38,6 +38,7 @@ typedef enum
 {
   PLY_BOOT_SPLASH_MODE_BOOT_UP,
   PLY_BOOT_SPLASH_MODE_SHUTDOWN,
+  PLY_BOOT_SPLASH_MODE_UPDATES,
 } ply_boot_splash_mode_t;
 
 typedef struct _ply_boot_splash_plugin ply_boot_splash_plugin_t;
index 23ddaefea94bbb7f6dbb53202d92bcf2aafbe9ae..b9daf69ff60ffc835399dbaaeb68d320e61afeee 100644 (file)
@@ -61,7 +61,8 @@
 
 typedef enum {
   PLY_MODE_BOOT,
-  PLY_MODE_SHUTDOWN
+  PLY_MODE_SHUTDOWN,
+  PLY_MODE_UPDATES
 } ply_mode_t;
 
 typedef struct 
@@ -569,6 +570,9 @@ get_cache_file_for_mode (ply_mode_t mode)
     case PLY_MODE_SHUTDOWN:
       filename = SHUTDOWN_DURATION_FILE;
       break;
+    case PLY_MODE_UPDATES:
+      filename = NULL;
+      break;
     default:
       fprintf (stderr, "Unhandled case in %s line %d\n", __FILE__, __LINE__);
       abort ();
@@ -590,6 +594,7 @@ get_log_file_for_mode (ply_mode_t mode)
       filename = PLYMOUTH_LOG_DIRECTORY "/boot.log";
       break;
     case PLY_MODE_SHUTDOWN:
+    case PLY_MODE_UPDATES:
       filename = _PATH_DEVNULL;
       break;
     default:
@@ -613,6 +618,7 @@ get_log_spool_file_for_mode (ply_mode_t mode)
       filename = PLYMOUTH_SPOOL_DIRECTORY "/boot.log";
       break;
     case PLY_MODE_SHUTDOWN:
+    case PLY_MODE_UPDATES:
       filename = NULL;
       break;
     default:
@@ -2354,6 +2360,8 @@ main (int    argc,
     {
       if (strcmp (mode_string, "shutdown") == 0)
         state.mode = PLY_MODE_SHUTDOWN;
+      else if (strcmp (mode_string, "updates") == 0)
+        state.mode = PLY_MODE_UPDATES;
       else
         state.mode = PLY_MODE_BOOT;
 
index 94f164a238adb5478034eb0f9fefbf6573a902bb..5c648a6fca573ac25936053aebe2deebae0b2f07 100644 (file)
@@ -61,6 +61,9 @@ static script_return_t plymouth_get_mode (script_state_t *state,
       case PLY_BOOT_SPLASH_MODE_SHUTDOWN:
         obj = script_obj_new_string ("shutdown");
         break;
+      case PLY_BOOT_SPLASH_MODE_UPDATES:
+        obj = script_obj_new_string ("updates");
+        break;
       default:
         obj = script_obj_new_string ("unknown");
         break;