Suspend's userspace user interface appeared in 2.1.7 as a "Possibly broken developer option". It allows you put the user interface of software suspend into a userspace process which offers a great deal of flexibility as to what can be done. The great thing is NO kernel fbsplash patch is required!

Remember, User interface progress reporting (Splash and even the text UI a little)may slow down suspend/resume.

To get things going, you'll need the following:

Steps:

  1. Patch, compile and boot your kernel with Software Suspend 2.
  2. Download the userui sources, extract, and compile them by typing "make", and "make install". This will install suspend2ui_text and suspend2ui_fbsplash into "/usr/local/sbin" by default. suspend2ui_fbsplash will only compile if you have all the relevant libraries and dev files (libpng, libz, libjpeg, libmng and the libfreetype6-dev files).
  3. In your hibernate script, put the path to the suspend2ui_text or suspend2ui_fbsplash binary into /proc/software_suspend/userui_program. For example, in the hibernate.conf configuration file usually located in /etc/hibernate, add or uncomment the line

    ProcSetting userui_program /usr/local/sbin/suspend2ui_text 
    

    If you have your own custom script, use

    echo /usr/local/sbin/suspend2ui_text > /proc/software_suspend/userui_program
    
    .
  4. (This step is somewhat optional - if you omit it, you simply will not have a user interface for the first portion of resuming).
    Add the suspend2ui_text or suspend2ui_fbsplash binary to your initrd image and set your initrd script to set the userui_program path appropriately (if it is in a different location in the initrd image).

  5. (This step for fbsplash only).
    Extract the fbsplash theme into /etc/splash/, and make a symlink from /etc/splash/suspend2 to the theme you want to use for suspending. eg "ln -s emergence /etc/splash/suspend2"

  6. Login on a console as root, and run "/usr/local/sbin/suspend2ui_text -t" (or suspend2ui_fbsplash -t ) to check that everything goes to plan. This runs the user interface in test mode. If it doesn't work here, it's unlikely to work when suspending.
  7. Suspend!

Troubleshooting:

  1. On Fedora Core if you cannot compile userui due to

    cannot find -lmng 
    

    error, install libmng-static package.
    Other packages required: lcms-devel, ...
    You can download compiled packages at http://mhensler.de/swsusp/.

  2. Main userUI page

Please report any bugs to either the suspend2-devel mailing list or bernard@blackham.com.au

None: UserUIHowto (last edited 2006-04-07 03:48:55 by canllaith)