Add the ability to run custom scripts inside ubiquity-dm

Bug #1017580 reported by Kent Baxley
10
This bug affects 1 person
Affects Status Importance Assigned to Milestone
ubiquity (Ubuntu)
Fix Released
Wishlist
Unassigned
Precise
Fix Released
Wishlist
Stéphane Graber

Bug Description

[rational]
Not a bugfix but something that seems to be important for OEMs. As 12.04.1 is the current LTS release, it seems worth including. The code itself is pretty clean and self contained.

[test case]
1) sudo stop lightdm
2) sudo stop ubiquity
3) Dump a script in /usr/lib/ubiquity/dm-scripts/{install|oem}
4) sudo start lightdm

5) Check that the script is indeed executed

[regression potential]
The feature isn't used in Ubuntu itself so I'm not expecting any breakage there, it could be that something in the added code goes wrong but that'd be specific to the OEM usecase where one of these scripts is present.

In our work on certain OEM projects we found that it has been beneficial to run simple, custom scripts inside of ubiquity-dm.

For example, we have a python script that we have currently been running during OOBE / OEM-config as a ubiquity plugin that plays an animation during firstboot before the language page loads. This has worked OK, but, there is a long gap between the ubuntu splash screen and when the animation fires up.

In order to cut down on this gap, we found that if we run the script inside of ubiquity-dm it really tightens up the amount of time that it takes for the video to start playing. In the meantime, the rest of OOBE loads up in the background and the user is immediately presented with the language page as soon as the animation finishes up. In many cases, there is little to no gap anymore between splash screen and animation kickoff.

This led us to propose a patch to ubiquity that will allow a user to place a simple, custom script of their choosing into either a /usr/lib/ubiquity/dm-scripts/install or /usr/lib/ubiquity/dm-scripts/oem directory. Depending on whether the user wants to run the scripts in either ubiuquity-proper or oem-config, some logic was added to the ubiquity-dm script to walk the above directory paths and launch any scripts located in the respective directory.

I will be attaching my launchpad branch that contains the requested changes for uqbiquity. Any improvements, suggestions are welcome. I would ultimately also like to get this into precise -proposed.

Thanks.

Related branches

Changed in ubiquity (Ubuntu):
importance: Undecided → Wishlist
status: New → Triaged
Revision history for this message
Mario Limonciello (superm1) wrote :

in general I think this patch looks good, but can you submit it against the proper branch?

It should be submitted against this branch:
https://code.launchpad.net/~ubuntu-installer/ubiquity/trunk

Changed in ubiquity (Ubuntu Precise):
status: New → Triaged
importance: Undecided → Wishlist
Revision history for this message
Kent Baxley (kentb) wrote :

Thanks, Mario. I've submitted against the proper branch. Please let me know if you need anything else. Thanks.

Colin Watson (cjwatson)
Changed in ubiquity (Ubuntu):
status: Triaged → Fix Committed
Revision history for this message
Launchpad Janitor (janitor) wrote :

This bug was fixed in the package ubiquity - 2.11.11

---------------
ubiquity (2.11.11) quantal-proposed; urgency=low

  [ Kent Baxley ]
  * Add the ability to run simple, custom scripts in ubiquity-dm
    (LP: #1017580).

  [ Colin Watson ]
  * Fix excision of code in hw-detect that creates
    /usr/lib/finish-install.d/30hw-detect (not necessary or useful in
    ubiquity, but accidentally broken way back in ubiquity 1.1.0).
  * Temporarily add shell tracing through part of hw-detect in the hope of
    diagnosing LP #1023036.
 -- Colin Watson <email address hidden> Wed, 11 Jul 2012 11:36:20 +0100

Changed in ubiquity (Ubuntu):
status: Fix Committed → Fix Released
description: updated
description: updated
Changed in ubiquity (Ubuntu Precise):
status: Triaged → In Progress
assignee: nobody → Stéphane Graber (stgraber)
Revision history for this message
Brian Murray (brian-murray) wrote : Please test proposed package

Hello Kent, or anyone else affected,

Accepted ubiquity into precise-proposed. The package will build now and be available at http://launchpad.net/ubuntu/+source/ubiquity/2.10.18 in a few hours, and then in the -proposed repository.

Please help us by testing this new package. See https://wiki.ubuntu.com/Testing/EnableProposed for documentation how to enable and use -proposed. Your feedback will aid us getting this update out to other Ubuntu users.

If this package fixes the bug for you, please change the bug tag from verification-needed to verification-done. If it does not, change the tag to verification-failed. In either case, details of your testing will help us make a better decision.

Further information regarding the verification process can be found at https://wiki.ubuntu.com/QATeam/PerformingSRUVerification . Thank you in advance!

Changed in ubiquity (Ubuntu Precise):
status: In Progress → Fix Committed
tags: added: verification-needed
Revision history for this message
Stéphane Graber (stgraber) wrote :

ubiquity-dm seems to work fine and my test hook was properly executed on startup (using install hook).

tags: added: verification-done
removed: verification-needed
Revision history for this message
Launchpad Janitor (janitor) wrote :

This bug was fixed in the package ubiquity - 2.10.19

---------------
ubiquity (2.10.19) precise-proposed; urgency=low

  * Automatic update of included source packages: base-installer
    1.122ubuntu7.1, debian-installer-utils 1.88ubuntu2.1, flash-kernel
    2.28ubuntu42.2. (one-time update from precise-proposed) (LP: #1021293)
 -- Stephane Graber <email address hidden> Mon, 30 Jul 2012 10:36:51 -0400

Changed in ubiquity (Ubuntu Precise):
status: Fix Committed → Fix Released
To post a comment you must log in.
This report contains Public information  
Everyone can see this information.

Other bug subscribers

Remote bug watches

Bug watches keep track of this bug in other bug trackers.