summaryrefslogtreecommitdiffstats
path: root/pyfirstaidkit
Commit message (Collapse)AuthorAgeFilesLines
* Improve the user experienceMartin Sivak2010-08-242-3/+7
| | | | | | - Expert tab is hidden by default - Config dialog checks the format of entered values - Example plugin for dialogs updated
* Fix flow initialization, use deepcopy to create copied flow structuresMartin Sivak2010-08-231-2/+2
|
* Add List/Config question (something similar to about:config) and Gtk GUI for itMartin Sivak2010-08-231-0/+23
|
* Add support for flow title in plugin.Tomas Mlcoch2010-08-161-2/+36
|
* Refactor the gtk question code and add preliminary support for failed ↵Martin Sivak2010-06-231-0/+1
| | | | (exception) issues
* Add a finer grained possibility to interrupt execution and do some tweaks in ↵Martin Sivak2010-06-212-8/+24
| | | | Gtk UI
* Update paths in default configurationMartin Sivak2010-03-021-2/+3
| | | | Add /usr/share prefixes for architecture independent data
* Add question support.Miloslav Trmač2009-07-172-3/+110
| | | | Signed-off-by: Martin Sivak <msivak@redhat.com>
* * Replace Reports(round) by Reports(silent) to avoid a lock around allMiloslav Trmač2009-07-171-28/+11
| | | | | | | | | | | | | | | | | | | | | | | | queue operations, which causes an automatic deadlock on a: get a: ... lock _queue_lock a: ... block on _queue b: put b: ... block on _queue_lock Because nobody reads from the main queue that used round = True, this doesn't change application behavior. * Drop return value of Reports.put, it is always None anyway. * Fix self._mailboxes locking: instead of try: lock ... finally: unlock it needs to be lock try: ... finally: unlock
* Fix Reports.notifyAllMiloslav Trmač2009-07-171-1/+1
| | | | Signed-off-by: Martin Sivak <msivak@redhat.com>
* Fix the reporting some more (inreplyto fixes)Martin Sivak2009-07-171-2/+2
|
* Make END message more generic, so the plugins can use it to signal the end ↵Martin Sivak2009-07-142-28/+28
| | | | of answer
* Make the answer mailboxes a proper Reporting objects so we can use all the ↵Martin Sivak2009-07-141-14/+64
| | | | standard methods of message construction
* Reset the flags before the root checkMartin Sivak2008-11-201-1/+3
|
* Various small fixes.Joel Andres Granados2008-11-195-25/+45
| | | | | | | | | | | | | | | | | | | | | | | | | | Makefile: 1. Cut counts from 1 not 0. 2. Create the "about" info in the makefile instead of spec file. 3. Put subdirs and about targets into one build target. firstaidkit.spec: 1. Erase the about creation from here. 2. Erase the fedora 7 specific stuff. 3. Call make build. 4. xserver plugin does not need rhpl nor rhpxl anymore. 5. Actually include the COPYING file where the about says it is. configuration.py: 1. Change the default backup dir from /tmp/fakbackup to /tmp. /tmp/fakbackup caused some file permission strangeness when a non root user executed fak after root had executed it. This can still occur, but it will be left like this as the user should not execute fak in non root anyway. logging: plugins.py,interpreter.py. __init__.py 1. Always use the reporting object when possible. 2. Add time stamp and level of message to log messages.
* backup.pyJoel Andres Granados2008-10-241-12/+3
| | | | | Put the reverting logic into the main Backup class. This will allow future classes that inherit from Backup to have this attribute.
* GrubPlugin:Joel Andres Granados2008-10-241-2/+2
| | | | | | | | | | | | | | Parse the arguments correctly for grub plugin. Set the internal variables correctly for grub plguin. Use the internal variavels when deciding which dev to install to. plugin.py: user lstrip instead of just strip to take off the first part of the argument string. This still has an issue as the strip does not strip strings but strips away all the characters listed in the str. At the moment its working because the args always begin with "-" and the plugin names dont have "-" in their names. but this might be a problem in the future.
* Create a new argument (reverting) for the BackupPersistent constructor.Joel Andres Granados2008-10-241-0/+10
| | | | | | | It is necessary to differentiate between calling the BackupPersistent class for backup purposes or for reverting purposes. Also the grub revert function and the firstaidkitrevert file changed to address the new changes.
* Add the revert functionality to firstaidkit.Joel Andres Granados2008-10-241-0/+2
| | | | | | | | | | | | | | | | | | | | | This introduces new requirements to the plugins. 1. If a plugin wants to be revertable it must implement the revert function. This function will be accessible from the plugins top most namespace. The same place where get_plugin is. 2. For the plugin's backend directory to be easily found, the plugin must give the backend its module name as an id. In this way when the user specifies in the revert command line plugin 'x', the revert class will go to the backup directory in search for a directory called the same way as the module of 'x'. 3. If the plugin developer does not want to use the system of backup dir naming, there is a second way how to specify the backup dir. The plugin must specify a function getBackupId(), that will return the id of the backup space that can be used for the backup dir search. Backup spaces that fail to comply with these directive will be ignored.
* Error during deleting the metadata file is not fatalMartin Sivak2008-09-081-1/+4
|
* Enable prer flow argumentsMartin Sivak2008-09-081-5/+8
|
* Delete the metadata file when using the "normal" Backup class.Joel Andres Granados2008-08-081-0/+1
|
* Make the argument passing more general.Joel Andres Granados2008-08-081-2/+8
| | | | | | It is possible for the plugin name to have a space. when this occured it threw off the argument detecting logic. This new way of detecting the plugin name is more general.
* A time stamp in the backup directory name will help to differentiate them.Joel Andres Granados2008-08-081-1/+4
|
* We don't need the cleanup_persistent function any more.Joel Andres Granados2008-08-081-5/+3
|
* Print the persistent backup space path at the endMartin Sivak2008-08-081-1/+1
|
* Save metadata in Persistent cleanupMartin Sivak2008-08-081-0/+1
|
* Save metadata in backups, so we can write a restore toolMartin Sivak2008-08-081-0/+27
|
* Manage the persistent backup with a class of its own.Joel Andres Granados2008-08-081-5/+7
|
* Fix typo.Joel Andres Granados2008-08-081-1/+1
|
* Make backup.rootpath = "" when user defines fullpath.Joel Andres Granados2008-08-081-0/+4
| | | | | | This is more an esthetic change. Now, when the user defines the fullpath the rootpath will be "" and not have some other value that does not relate to the fullpath.
* Add the possibility to pass arguments to plugins.Joel Andres Granados2008-08-081-2/+7
| | | | | | | | Given that firstaidkit is fully automated we need a way to modify the plugin behaviour from the initial command. This makes it easy for the plugin developer to get a string with some arguments for his plugin. It is up to the plugin developer to parse the string. The arguments will be accessible through self._args variable.
* Create a new backup directory every time, unless the user tells us otherwise.Joel Andres Granados2008-08-073-9/+21
| | | | | | Use tempfile to create safe backup directories. User should define backup.fullpath if he wants to override the default behaviour. User can also choose the directory where the backup directory goes.
* Do the persistent backup space in better wayMartin Sivak2008-08-071-10/+13
|
* Add PersistentBackup spaceMartin Sivak2008-08-071-4/+18
|
* Initial commit for the Grub plugin.Joel Andres Granados2008-08-071-0/+11
| | | | | Nothing was used from the original grub plugin. For now they will both coexists in the code.
* Direct the failure in prepare to the clean step.Joel Andres Granados2008-08-071-2/+4
| | | | | | This is the better way of doing things. If the prepare step is a failure we cannot ensure the sate that the plugin expects. Its best to go to clean and exit with no changes.
* Add PLUGIN as the default value for level in the reporting functions.Joel Andres Granados2008-08-071-23/+26
| | | | | This will make life much easier for the plugin developers. Now there is no need to specify level inside the plugin.
* Be more expressive in the error messages.Joel Andres Granados2008-07-151-14/+12
| | | | | | | | - This patch will append an "FAK_ERROR" string to the error message. This will help them to be noticed when the user encounters them in the log or the stdout. - Create parent error class that has all the common qualities for the error classes.
* Catch the exception where the user configures a plugin that is not found.Joel Andres Granados2008-07-152-3/+5
|
* Name the path var by ignoring the first 4 chars.Joel Andres Granados2008-07-151-1/+1
|
* Separate the paths that hold the place where frontend lives.Joel Andres Granados2008-07-151-1/+1
|
* Be sure to use the "\" character when coding a string in multiple lines.Joel Andres Granados2008-07-142-2/+2
| | | | | | | | | | | | | | This behavior is prefered to enclosing the string with parenthesis. When using "\" remember to close the strings with quotation marks to have a clean output. Prefered: message = "long string " \ "end of long string" Not prefered: message = ("long string " "end of long string"
* Avoid the situation in which we use the erased dictionary to iterate on.Joel Andres Granados2008-07-141-1/+2
|
* These file was missed in the previous format checks.Joel Andres Granados2008-07-142-17/+27
|
* Fix typo.Joel Andres Granados2008-07-141-1/+1
|
* Avoid the ugly space left by adding "\" to a string separation.Joel Andres Granados2008-07-145-35/+35
| | | | | | | | | | | | | | | When deviding a string into two lines one must use pythons automatic string concatenation (python concatenates strings that are in different line but are inside parenthesis). Do not use the "\" in the string as this will cause strange and unwanted output. Yes: print("long string" "rest of string") No: print("long string \ rest of string")
* Put the header and footer for the print information function in the FAKInfo ↵Joel Andres Granados2008-07-142-3/+7
| | | | | | | class. The only condition to lookout for is that the fd must have a write function implemented. By default the stdout is used.
* Fix the format of the firstaidkit file.Joel Andres Granados2008-07-1412-210/+358
| | | | | | | | | | | | | - Indendtation should be 4 spaces. There was a function indented with 8 spaces. - Lines should be shorted than 80 chars. It just looks pretty :) Think of terminals whith only 80 char of length. Think of debuging in rescue mode. - Change also the print statements. Just getting ready for python 3000. - Get some spaces between elifs - There should not be any lines ending in spaces. - This can all be read in the python code conventions http://www.python.org/dev/peps/pep-0008/
* Handle the situation where /var/log/ directory is not present.Joel Andres Granados2008-07-111-0/+1
|