summaryrefslogtreecommitdiff
path: root/lines-theme
diff options
context:
space:
mode:
authorAurélien COUDERC <zecoucou@free.fr>2017-01-09 14:55:02 +0000
committerAurélien COUDERC <zecoucou@free.fr>2017-01-09 14:55:02 +0000
commitb5c5317fd09fe52896a5b0935e6677c034b45b00 (patch)
tree0bcfb97afd6392d7610ffa77492d56b79c6a101a /lines-theme
parent4767a2e56a4890301a8d099814a829c48a6a72dc (diff)
Plymouth/{softWaves,Lines,Joy}: provide fsckd progress support. (Closes: #850181)
Diffstat (limited to 'lines-theme')
-rw-r--r--lines-theme/plymouth/lines.script23
1 files changed, 23 insertions, 0 deletions
diff --git a/lines-theme/plymouth/lines.script b/lines-theme/plymouth/lines.script
index e666480..ee0a110 100644
--- a/lines-theme/plymouth/lines.script
+++ b/lines-theme/plymouth/lines.script
@@ -473,6 +473,12 @@ fun message_callback (message)
local.label.is_fake = is_fake;
label = get_message_label(message, is_fake, is_action_line);
label.z = 10000;
+
+ # Get the message without the "fsckd-cancel-msg" prefix as we don't support i18n
+ substring = "fsckd-cancel-msg:";
+ keys = StringString(message, substring);
+ if (keys != NULL)
+ message = StringCopy(message, keys + StringLength(substring), NULL);
setup_message (message, label.x, label.y, label.z, is_action_line);
if (prompt_active && local.is_action_line)
@@ -980,6 +986,23 @@ fun update_status_callback (status) {
}
+ # systemd-fsckd pass fsckd:<number_devices>:<progress>:<l10n_string>
+ if (update_strings[0] == "fsckd") {
+ number_devices = StringToInteger(update_strings[1]);
+
+ if (number_devices > 0) {
+ label = update_strings[3];
+
+ progress_label = get_fsck_label (label, 0);
+ progress_label.sprite = Sprite (progress_label.image);
+ progress_label.sprite.SetPosition(progress_label.x, progress_label.y, 1);
+ progress_label.sprite.SetOpacity (1);
+ } else {
+ if (progress_label.sprite)
+ progress_label.sprite.SetOpacity (0);
+ }
+ }
+
}
Plymouth.SetUpdateStatusFunction (update_status_callback);