Features/FirstAidKit

From FedoraProject

< Features
Revision as of 08:31, 7 August 2008 by Jgranado (Talk | contribs)

Jump to: navigation, search

Contents

First Aid Kit

Summary

Firstaidkit is an automated recovery tool that brings together common recovery processes and applies them to a system. The way that Firstaidkit handles the recovery processes is by means of plugins. The idea being that a plugin will focus on a particular issue in the system, like grub, init scripts or Xserver. Firstaidkit is designed to automatically fix problems while focusing on maintaining user data integrity. In other words, Firstaidkit will try its best to fix your system while giving you the possibility to revert the changes.

Owner

  • Name: MartinSivak / JoelGranados FIXME: please link names to wiki home page

Current status

  • Targeted release: Fedora 10
  • Last updated: 2008-07-20 (version 1.2.1 is in rawhide)
  • Percentage of completion: 95% . The only thing that keeps me from putting 100% is the fact that we keep doing small changes to the backend. Additionally lots of plugins are still to come, but most, if not all, the backend work is done.

Detailed Description

For a long time, people have asked for a task based approach to rescuing their systems. Rescue mode is an okay start, but we can do a lot better by automating simple and common recovery tasks. Obvious things would be

  • dmraid rebuild and recovery
  • reinstall bootloader
  • recreate the initrd
  • reinstall some "base" packages

Implementing these as individual pieces rather than entirely tying them to anaconda would be the most beneficial way to do it. Then we can tie them together with a relatively simple "Fix my System" menu and also make use of them from a graphical version of the same on the LiveCD.

See the upstream project at https://fedorahosted.org/firstaidkit/

Benefit to Fedora

Makes it easier for users to rescue their systems in case of problems

Scope

  • FirstAidKit is planned as a package. It will be a pluggable application that can house all kinds of plugins. Each plugin will be one automated recovery task.

Test Plan

Testing

  • test features from old "rescue" mode to see that they still work or have equivalent functionality

FIXME--much more detail needed here, preferably steps that someone unfamiliar with the package can follow to complete testing.

User Experience

In case of any mishaps with the user's system. He/she should be able to run the rescue environment or livecd and use the FirstAidKit environment. Either by running an automated "Fix whatever is wrong with my system" process, or specific tasks from specific plugins for the more advanced user.

Dependencies

None for now.

Contingency Plan

FIXME--imost likely you can explain that this is not applicable because it is a new feature that is not depended on by other applications.

Documentation

Pydoc generated from the code to ease the plugin developer experience and user documentation.

Release Notes

FIXME--include rough draft of how the release note should read. Reusing some of the wording from the summary and description would work well.