Commit graph

988 commits

Author SHA1 Message Date
Ray Strode
9451b4d129 Make sure to clean up ptm when detaching
Otherwise we hit an assert next time we attach
2009-03-19 09:39:18 -04:00
William Jon McCann
4631059c02 don't create a new splash every time show is called
Reuse the existing splash.
2009-03-18 18:54:56 -04:00
Jonathan Greig
59a7196c4a Fix build when ENABLE_FADE_OUT is defined in spinfinity
The variable "i" wasn't be declared, but was being used to
loop.
2009-03-16 11:00:31 -04:00
Ray Strode
b7357a90cf Support "splash" in addition to "rhgb" on kernel command line
We used "rhgb" because that's what Fedora users were used to
instinctively removing when graphical boot messes up.  This
isn't a very intuitive (or very upstream-y) name though.

Now we check for "rhgb" or "splash"
2009-03-13 10:11:19 -04:00
Charlie Brej
a0f63466b9 When setting term to buffered without an attributes_saved, use generated ones.
A local term_attributes was constructed but not used.
2009-03-11 11:04:49 +00:00
Charlie Brej
5d4b4d58d0 Initialise state->showing_details at show_splash
Only effects us when running without rhgb in the kernel line, by having to
press Esc twice to get the default splash.
2009-03-11 10:53:07 +00:00
Ray Strode
9e3324a465 Reset to text mode anytime we're about to print text
If we don't then someone during boot up may change
out from raw when we aren't looking.

Maybe we should use TIOCSLCKTRMIOS to prevent that
from happening? Or maybe we should bypass the tty
for input entirely and use evdev?
2009-03-10 14:46:59 -04:00
Ray Strode
546fbdc0b8 Remove event handlers on destroy in plugins
This is because we can end up in scenarios
where a plugin gets destroyed, and readded
without getting hidden in between.
2009-03-09 12:28:27 -04:00
Ray Strode
2b0d185546 Factor handler registration code out into separate functions in plugins
This will make it easier to unregister the handlers from both
hide and destroy
2009-03-09 12:28:25 -04:00
Charlie Brej
cdd49aac43 Fix password entry dialogue in fade-in plugin.
Previously ply-entry was crashing with an assertion "entry->loop == NULL"
whenever the entry was updated. The change is basicly a copy of the working
version from spinfinity.
2009-03-09 14:51:08 +00:00
Ray Strode
4e1004c19d exit plymouth-set-default-plugin cleanly when --rebuild-initrd isn't given 2009-03-06 18:03:28 -05:00
Ray Strode
ad01f5d20c Don't average the previous boot time with current boot time
It's not always an improvement and it will always be worse
the second boot of a persistent live image.
2009-03-06 17:06:16 -05:00
Ray Strode
ade8cf4879 Always allocate our own pty master when attaching
Previously, we'd let the caller pass one in, but
I don't think there's much point in allowing that.
2009-03-05 14:40:31 -05:00
Ray Strode
c758b71fac Allow -1 to get passed to ply-terminal-session
This is coming from the drop-nash branch.  It lets
the caller of plymouth not have to create a pty master.
2009-03-05 14:38:28 -05:00
William Jon McCann
f9fe54e890 make the glow plugin use its own icons
Since the plugins may be packaged separately it isn't
kosher to share another plugins icons.
2009-03-04 17:27:04 -05:00
William Jon McCann
75372420ea fix the help text for the color stops
Make the help text use the proper argument name.
2009-03-04 17:10:57 -05:00
William Jon McCann
d449949c65 add a glow plugin
This plugin will progress through a sequence of images until
the progress reaches 90% complete.  At that point it will run
an animation sequence.
2009-03-04 17:10:24 -05:00
William Jon McCann
85823e5295 add a simple progress sequence helper
This is similar to the progress bar except that it uses a
sequence of images for the stages of the progress.
2009-03-04 17:10:24 -05:00
William Jon McCann
94303471c0 add simple one time animation helper
This will play a sequence of images from beginning to end at
a fixed frame rate.  It differs from the throbber in that it starts
at the 0th image and does not repeat.
2009-03-04 17:10:19 -05:00
William Jon McCann
bc38d7f667 use the height in the max height comparison
Fixes what was likely a copy/paste bug.
2009-03-03 22:28:57 -05:00
William Jon McCann
2d382570be use the configured colors for the gradient
Use the colors specified at configure time instead of
hard-coded values.
2009-03-03 21:54:53 -05:00
William Jon McCann
a46239affe fix the trace messages when enabling/disabling logging
The sense of the messages was reversed.
2009-02-26 09:41:58 -05:00
William Jon McCann
d68840ca3e remove spurious disabling of console redirection
Revert accidental commit from:
6b9011d164
2009-02-26 09:41:58 -05:00
William Jon McCann
e1a644b69f add option to enable more compiler warnings
Compiler warnings are helpful for finding latent bugs.
2009-02-26 09:41:57 -05:00
William Jon McCann
26d9f676dd add way to detect if an option was set or not
With integer options there's no obvious value to mean "unset" like there is for
string types (and to a lesser extent boolean types), so this commit
adds a mechanism.
2009-02-26 09:41:57 -05:00
William Jon McCann
80b2ed52c0 add debug command line option
Used to override the kernel command line and enabled debugging
2009-02-26 09:41:57 -05:00
William Jon McCann
268292baf8 add a message display method
Useful for showing messages like "Shutting down..." etc. A plugin
may choose not to support this feature.
2009-02-26 09:41:57 -05:00
William Jon McCann
483c39508e add no-daemon command line option
Useful for debugging and running under gdb
2009-02-26 09:41:56 -05:00
William Jon McCann
f555438a24 add a mode commandline option
Initially supports modes: boot, shutdown.  This allows the
progress cache to be loaded from the appropriate file.
2009-02-26 09:41:56 -05:00
William Jon McCann
a3fd5f2e21 add command line parsing to daemon
If for no other reason than to handle --help.
2009-02-26 09:41:56 -05:00
William Jon McCann
b117701702 allow the progress cache file to be configurable
This will enable using separate cache files for different plymouth modes.
2009-02-26 09:41:56 -05:00
William Jon McCann
cfc62e5b97 improve the layout of the help output
Left align descriptions and group subcommands.
2009-02-26 09:41:56 -05:00
Ray Strode
b9e20bb7ba Fix leak in ply-boot-server
This commit fixes a memory leak
in an error path of ply_boot_connection_read_request.
2009-02-24 13:38:11 -05:00
Ray Strode
e1619f36bf Fix heap corruptor in ply-boot-server
This fixes a memory corruption bug that
cropped up during a round of leak fixes
a while back.
2009-02-24 13:38:11 -05:00
Charlie Brej
631b14c1b7 In plymouth-set-default-plugin on reset make sure we do not set label.so as a
default splash plugin.
2009-02-24 09:27:53 +00:00
Charlie Brej
6aa4d82760 Add hashtable and bitarray functionality
Hashtable uses the bitarray to mark the used/dead places in the hash data array.
The hashtable functions follow the general gist of the glib ones. To create a
hashtable you supply the hashing and comparison functions. Examples of direct
and string based indexing are supplied. Hashtable is a single word because there
is no hash_somethingelse but the name may change soon. Notice the compare
function returns a signed int difference rather than an equal bool. This is
because it may be an idea to later migrate the collision system to a tree
sub-structure (currently it is a linear array search with an incrementing step
size).
2009-01-03 22:18:24 +00:00
Charlie Brej
42abc98157 Allow client request answers to be greater than 255 characters.
The new limit is 2^32. This only affects the replies to the client. Data sent
along with requests (e.g. password prompt) remain limited to <256 characters.

Two new functions have been added to the ply-utils (ply_read_uint32 and
ply_write_uint32) which receive/transmit 32bit numbers on FD streams.

AFAICT in function ply_boot_client_process_incoming_replies the answer was not
NUL terminated, which may have caused some of the password error bugs.
2009-01-03 21:33:56 +00:00
Charlie Brej
d602f686a1 Optionally pause progress while asking for a password or a question
The "Rework input methods" commit broke the pausing of the progress bar during
password entry. This commit reimplements that functionality but this time the
pausing is optional, applied with a --pause-progress parameter. The client
program sends the (un)pause commands before/after the password requests.
The default is currently to not pause but that may change quite soon.

This also fixes a couple minor bugs and formatting from "Rework input methods".
Also changed "progress-pause" to "pause-progress" to make it more human
intuitive.
2009-01-03 19:41:21 +00:00
Charlie Brej
e2404b991a Make Ctrl+C and Ctrl+D cause the password/question entry to quit
When asking for a password or a question, if the user presses Ctrl+C or Ctrl+D
the backend will reply a NULL. This is interprited as a "Stop asking me". The
client will not repeat the request (even if number of retries hasn't been
reached) and quit with an error exit_status.
2009-01-03 15:58:39 +00:00
Charlie Brej
9d0670ebd2 Add progress-pause/unpause commands to halt the progress bar
Progress bar expansion was previously halted on password entry. Now the
progress can be halted whenever the system wishes. This can be useful when the
system notices there is a big task which is normally not present during normal
boots e.g. fsck.
2008-12-28 18:34:25 +00:00
Charlie Brej
b65d7dcf3e Rework of the input methods
Previously the splash plugins would deal with password entry, which would mean
that code was repeated and upon splash unload the password entry would be lost.
Now the keyboard strokes are processed with outside the splash, and the plugins
only deal with showing an appropriate user interface. As well as password
entry, the system can ask questions with non hidden text entry and sensing of
keystrokes.
2008-12-19 14:16:33 +00:00
Charlie Brej
66edc73d26 Ensure ply-buffer data block always terminates with a '\0'
In some instances, ply-buffer did not terminate the data block with a '\0'.
Doing so allows the data to be used as a string. Additionally it now tries
harder to deal with very long additions to the buffer by repeatedly expanding
the capacity and dealing with appends larger than the maximum buffer size.
2008-12-17 12:07:57 +00:00
Ray Strode
468f52ae50 Post release bump to 0.7.0 2008-11-25 14:21:04 -05:00
Ray Strode
29157abbb1 Allow NULL to be passed to ply_image_free()
free() allows NULL so there is no reason ply_image_free
shouldn't.  This also papers over a bug in the solar
plugin that we haven't been able to identify yet.
2008-11-24 17:42:11 -05:00
Charles Brej
b2d8a601f2 Merge branch 'master' of ssh://git.freedesktop.org/git/plymouth 2008-11-21 17:00:46 +00:00
Charles Brej
a2369d8e89 When fail when a command parser command is not in list then fail.
Previously it returned the last in the list.
2008-11-21 16:58:25 +00:00
Ray Strode
711636ec6a Call --reset when giving default plugin if needed
Previously, we tried to do this but failed because
of a buggy conditional.
2008-11-21 11:49:53 -05:00
Ray Strode
9435d6cc22 Update .gitignore
There were a few bits of noise in git-status output
2008-11-19 21:31:08 -05:00
Ray Strode
27b8689403 word wrap README 2008-11-19 15:58:38 -05:00
Ray Strode
3d46c0c269 Update README to reflect current state of things
Some of the file paths and other information were out of date.
2008-11-19 15:56:28 -05:00