Wibbly Stuff

Recent development on Fedora Utils

Fedora Utils is a project to make using Fedora easier. It has evolved from being just a simple post-install script to a tweaking utility with a plugin system. While the project haven't gained much attention, the attention it received is enough to keep me developing it.


All the recent development is for making development easier. The new plugin system was written from scratch in the aim of keeping Fedora Utils modular and make plugin development much easier, available for testing from the experimental branch. It needs some testing though.

To try the experimental version, just type the following in terminal,

git clone git@github.com:satya164/fedorautils.git
cd fedorautils
git checkout experimental
sudo ./fedorautils


A plugin is now as simple as writing just a bash script. in fact any bash script can be converted to a Fedora Utils plugin easily.

The simplest plugin included in Fedora Utils is perhaps the add_sudoer.util.sh plugin used to add the current user to the list of sudoers. The code is,

# Name: Setup sudo for current user
# Command: add_sudoer
# Value: True

The plugin just invokes the command add_sudoer. The add_sudoer command is included in the core Fedora Utils library, which does the rest of the work.

You can define custom commands as bash functions inside the plugin file. You can also use lots of commands built into the Fedora Utils library to make development easier. The additional info for Fedora Utils are just comments, so the plugin can be easily turned into a normal bash script containing a set of functions. Additional info on plugins can b found in the Fedora Utils wiki.

So does it mean that we are focusing more on the plugin functionality than the initial goal of being a post-install script? I think the plugin functionality deserves the attention as it makes maintenance easier. That means I can more easily update, fix bugs or add new functionality which was not possible previously. And that also means I won't forget modifying something somewhere required due to addition of the new functionality and make the script buggy. The plugin functionality also makes Fedora Utils different, a little more than just a post-install script. With little effort, you can turn Fedora Utils to anything you want having a simple zenity interface, not just a post-install script.