My attempt at Ubiquity-Slideshow

Dylan McCall dylanmccall at
Mon Jan 28 19:59:55 GMT 2008

Not sure if the attachment went through. If not, I have the file (mentioned
in parent post) hosted over here:

-Dylan McCall

On Jan 27, 2008 12:24 PM, Dylan McCall <dylanmccall at> wrote:

> Hello everyone!
> For a while, I have been trying out various means of welcoming new users
> to Ubuntu, showing them around so they can share our excitement about it.
> Recently, I realized that a slideshow shown in Ubiquity fits the job
> perfectly!
> (See this forum thread: <
> >)
> -It is unobtrusive. Not a popup; no attention or input demanded
> whatsoever.
> -New users waiting for Ubuntu to install are still a bit lost, may be
> impatient.
> The slideshow should not really show people *how* to use Ubuntu, but what
> they can look for and expect to find. I think that is really all we need to
> do, since most of the included applications are very well done, do the point
> that they are self-explanatory. It is better that the user learns by using
> the software than by reading a scholarly tome which appears to them when
> they first log in.
> The slideshow here could even help to point out usability features such as
> translations or configurable font sizes.
> Yes, there is even a blueprint over on Launchpad:
> I went ahead and coded the thing. Progress so far is attached. I really
> like some of the suggestions in that blueprint, such as to mention the
> community aspect and places to get help. Mentioning the benefit of setting
> up an Ubuntu-powered home server could be good, too. Lots of possibilities
> :)
> One thing I think we should avoid like the plague is advertising the OS in
> there with claims like "now more secure!". The goal here should not be to
> sell Ubuntu, but to show a new user the things he can find in his new
> desktop so that he will feel more confident and more happy with the choice.
> We should not preach to the converted; we should *reward *the converted
> with a new and innovative desktop experience they can enjoy, understand and
> be a part of.
> Overview of the design:
> * Open Projector is an external application. Really just a Python script
> that displays a very open ended slideshow created following a particular
> format. Theoretically, this could be ported to Qt... although Glade could
> make that tricky. At the moment there is the gtk version
> (open-projector-gtk). This could go in a Debian package fairly happily.
> * I believe Open Projector could be quite easily integrated with another
> Python application such as the Ubiquity GTK front end.
> * Ubiquity-Slideshow would be a separate package (and project). Again,
> this is split into a few versions, with the only one presently existing
> being ubiquity-slideshow-ubuntu (dependent on open-projector-gtk).
> Ubiquity-Slideshow is the data for our slideshow that will be displayed with
> the Ubiquity installation progress. As you might have guessed, it is of the
> same format that Open Projector reads.
> The format used by Open Projector is convoluted, but also quite flexible.
> Slides are all Glade files, and indeed are made up of a bunch of GTK
> widgets. I chose this path because the slideshow has to be very accessible
> (desktop integrated!) and translatable. Glade makes both of those things
> easily possible while still offering a lot of flexibility to people making
> slides. (More reasons available if you want...). Each slide is actually
> placed inside its own directory, with that Glade file inside, likely called
> "". The Glade file must have a non-top-level container called
> "slide". That container and everything inside it will be read as the slide
> and displayed.
> Another thing Open Projector has is "Projectors". These rotate through and
> display slides inside their host container. ...And that is where the slide
> metaphor dies down. A slide can, if it wants, have a projector inside of it!
> The current gnome-app-install slide demonstrates this. The projector
> iterates through every slide inside of the folder its own slide is in. It
> reads some data from a folder called "_conf" to decide what order to display
> the slides in and how quickly to iterate through them.
> In the case of the Ubiquity GTK front-end, it would create a Projector
> whose host_widget is its own container and whose path is
> "/path/to/ubiquity-slideshow-ubuntu".
> Many example slides exist inside
> <Ubiquity-Slideshow/ubiquity-slideshow-ubuntu>. Of note are:
> * gnome-app-install. Embedded projector to display changing contents,
> alphabetical order set in _conf.
> * special:thanks. Some fancy GTK widgets. I think it could be interesting
> to demonstrate the wonderful drag & drop support we have with those widgets
> * special:welcome. GtkFixed container allowing for label that overlaps
> images. Also note that it displays first thanks to projector's
> _conf/slide_start.
> Still other things on the Todo list:
> -Timers for projectors default to an Automatic option (-1). Presently,
> this does nothing. It should cleverly time each slide to be [ (lifetime of
> parent slide) / (number of slides) ].
> -Translations are not in. Actually, I have no idea how to do this easily.
> Open Projector doesn't need translations, but Ubiquity-Slideshow does...
> although it is just some static data files. Will I have to do something
> manually, or is there a magical system that will figure it out?
> -Must jump to end of slideshow when signalled
> -Must switch slides, pause slideshow, hide slideshow when signalled.
> -Magic callbacks for slides, such as to launch external applications. They
> probably shouldn't be used (otherwise this could get untidy *fast*), but
> they would be nice to have.
> This is still detached from Ubiquity. That option will always exist, and
> that will probably be how this gets worked on since it's quicker than
> running through Ubiquity. Thus, I need to know what size we should expect
> the slides to be. Currently they are 640x480 pixels.
> Hopefully I didn't miss too much. That's probably my most concise overview
> yet!
> So, what needs to be done here is a lot of collaboration, pondering and
> suggesting:
> Firstly, we need slides. I am terrible at them, probably becuase I was not
> in a writing mood when I did the content, and because I am really bad at
> computer artwork. (I'm also still using Gutsy, which doesn't help).
> Secondly, there are some technical hurdles like translations that I cannot
> quite figure out, since I am still quite new to this development
> environment.
> Thirdly, I can't wrap my head around Debian packages. It probably wouldn't
> hurt to just package open-projector right along with Ubiquity's front-end
> (and ubiquity-slideshow), skipping the bother altogether while keeping
> things much simpler to look at.
> Lastly, this project needs a home. Is there a way to create a sub-project
> of Ubiquity for ubiquity-slideshow on Launchpad?
> Bye,
> -Dylan McCall
-------------- next part --------------
An HTML attachment was scrubbed...

More information about the Ubuntu-installer mailing list