hprofile - dynamic profiles for linux: hardware configurations; network connections; power management; usage patterns...
SourceForge.net Logo

Added goodies section
Version 2.0b2 released
FAQ updated
Version 2.0b1 released




What is it?

hprofile is a set of Bash shell scripts that help you manage profiles on Linux. Examples could be:

Manage multiple hardware configurations, for example if you boot your system both within VMWare and in a normal dualboot configuration, or if you have a laptop that that may or not be in a docking station.
Manage multiple network connections, for example if you connect to different networks at home and at work, or if you access multiple wireless networks.
Manage multiple power profiles, automatically scaling down your CPU speed, reducing the brightness of your display and turning off certain resource hungry services when your laptop is running on batteries, and turn it all back on again as soon as you plug in the power.

The possibilities really are endless. hprofile makes it very easy to define a "profile" consisting of a group of configuration (or other) files, anywhere in the file system, switching them around with a single command. You can also run arbitrary scripts when profiles are applied or "stopped", to start or stop services or configure your hardware. Individual users can even define their own files (in their home directory) to be switched and scripts to be run, to react when profiles are changed.

Best of all, hprofile is deceptively simple to use. Each type of profile has a directory where you define which files are to be switched around simply by naming them with a suffix of ".<profile name>" in a directory hierarchy which mirrors the rest of the file system. Scripts to be run when profiles are applied or "stopped" are kept in a separate directory, and all you need to do to make sure the script is run at the appropriate time is to name it "<profile name>.start" or "<profile name>.stop". The tarball comes with plenty of examples and a comprehensive manual (in the README file) to get you started.

Please see the FAQ and the README file for more details on what hprofile can do and how to do it.

Who is responsible?

hprofile was written by Martin Aspeli (optilude@gmx.net). Please send bug reports, comments and suggestions to the above address. I'm also very interested to hear how you're using hprofile, and how you've set it up on your system so I can expand this web site with more information for users with different distributions, hardware and needs.

Copyright (c) 2003-2004 Martin Aspeli