Einsteinium
Download
- Description:
-
Einsteinium provides smarter monitoring of applications and system services for Haiku. It will restart applications and system services that quit or crash, gather statistics on application usage and provide customizable ranked lists of applications.
The two major functions Einsteinium provides are:
-
Restarting applications and system services that quit or crash
-
Gathering data on application usage to provide customizable ranked lists of applications
Einsteinium is divided into four applications:
Einsteinium Daemon:
This is a background application (daemon) that watches all the applications which are running. The daemon detects when an application quits or crashes, and can perform one of three options; automatically restart the app, provide a prompt to ask you whether the app should be restarted, or allow the app to quit and do nothing. The Einsteinium Daemon determines the appropriate action to take for each app by the settings you specify.
Einsteinium Engine:
The Engine is another background application that captures data on every application that runs. Using this data, the Engine will create statistics on application usage (for example number of times an application has been launched, total running time, etc). These statistics are used to create ranked lists of applications based on certain criteria.
Einsteinium Launcher:
The Launcher is a simple application launcher, and is a working example of how to use the Engine to create application lists. The Launcher resides in the Deskbar tray as an icon. When you click the icon a menu of applications is displayed, and each item in the menu can be clicked to launch that application. The Launcher queries the Engine to create the list of applications ranked by specified criteria that you define. This allows you to have an application launcher with applications ordered the way you want them.
Einsteinium Preferences:
This is the preferences application that allows you to adjust settings for the Engine, Daemon and Launcher.
-
- Submitted On:
- 22 Jan 2012
- Submitted By:
- Brian Hill (Perelandra)
- Submitted On:
- 22 Jan 2012
- File Size:
- 543.15 Kb
- Downloads:
- 28
- License:
- BSD
- File Version:
- 1.0.0
- File Author:
- Brian Hill
- File HomePage:
- Click to visit site
- Rating:
-
Total Votes:1
Top Downloads in 30 Days
Latest Hardware
Search Files
Newest Files
| May 20 |
|
| May 19 |
|
| May 12 |
|
| May 8 |
|
| May 6 |
|


Comments
Unfortunately, the preferences app crashes in newer nightly builds, because of layout kit changes, I assume. You may want to try compiling under a nightly and see if it still also works for alpha3. It does for my two small tools.
Regards,
Humdinger
I did not make the daemon a background app (yet) because those are among the very last processes that are closed out when the system shuts down. So as a background app the daemon throws many warnings during a system shutdown because it sees all the applications quitting. So to resolve this (for now) I made it a regular app so it will be among the first processes to quit. I need to figure out a way to detect that a system shutdown is in progress, so the daemon can shut itself down quickly. Any ideas anyone?
I did download the latest nightly and found it does not come with the xml2 or sqlite3 libraries which are dependancies of Einsteinium. I can try to figure out how to install these (I didn't see them in the optional packages list) and add code to the installer script to install these packages if they aren't found.
xml and sqlite should be in the WebPositive package. It's not installed in nightlies by default to save size.
Regards,
Humdinger
But this message is first sent to non-background apps, so a background app will not known why all apps are quitting on shutdown until the shutdown process switch to quit background apps.
AFAICT, there is no API to check is a shutdown is in progress.
As Humdinger pointed out, the Preferences application may not run on newer nightly builds because of changes to the layout API. I have built the Preferences app on a recent nightly build and uploaded it to the following location:
https://sourceforge.net/projects/esforhaiku/files/Nightly_Build_Files
For any files uploaded here I will include the nightly build revision number used to build the files in the package file name.
If the file above does not work on other nightly builds you can download the source and build the application that is not working. For example to build the Preferences app use the following commands:
Code:
installoptionalpackage subversion
svn co https: //esforhaiku.svn.sourceforge.net/svnroot/esforhaiku/tags/1.0.0
cd 1.0.0/src/Preferences
make
cp -f Einsteinium_Preferences /boot/apps/Einsteinium
Note: Remove the space after the "https:" in the above code- I couldn't get the post to display the full url otherwise.
Please reply with any comments or questions about this.
I've been running Einsteinium for some time now and I found that I don't use it to re-start applications at all. :)
But another part of the app looks promising to me: the launching of most used apps. Doing that from a normal menu in the Deskbar replicant is very cumbersome, however.
Do you actively work on Einsteinium's Launcher and would like to get a more detailed feature request? If so, where to should I send it?
Thanks!
Regards,
Humdinger
What is your preferred method of launching applications?
Any feature requests or issues can be submitted by email to me with my profile page, or if you have a sourceforge account they can be submitted here:
https://sourceforge.net/tracker/?group_id=307900
I use my very own QuickLaunch. :)
Quote:
I've been mock-uping a bit and will file a feature request on sourceforge presently. Thanks!
Regards,
Humdinger
Anyway: here's the text I wanted to post. The mockup is at http://imagebin.org/196918 .
Instead of a simple menu of the launcher replicant in the Deskbar, having a more usable representation of most used apps in a seperate window would be fantastic. I have attached a mockup.
Basically it's like on some websites that show the most searched strings by representing the text in different sizes; most searched, biggest font.
I suggest to sort the apps' icons in a spiral, going from biggest icon (most used) to smallest (fewest used). Navigation is either by mouse or keyboard (cursor-right or down vs. cursor-left or up). Clicking an icon or hitting enter starts the app and hides/closes the Launcher window. The mockup lacks an indication of the currently selected icon...
In that mockup, I added two more tabs that could represent Deskbar's "Recent folders" and "Recent documents". Would be a nice additional feature that would fit in nicely. Navigation is via tab-key.
You could add another tab with "Settings", where you could put either the Einsteinium preferences directly or a link to them and only have Launcher related stuff like showing labels or not or max/min icon size etc.
I'd really love to have a launcher app, that's better navigatable via keyboard and optically pleasing. :)
Does anyone else have suggestions?
One thing you should be aware of is localization. That is, you can't just query for all apps starting with the input-string. You'd have to query all apps first, then get their localized name, then filter for the input-string if the Locale prefs have set the option to translate names in Tracker/Deskbar.
I always wanted to look into that for QuickLaunch, but don't find time/motivation...
Also, in my above mockup: I think I'd be nicer if a selection box stays fixed and the icons are moved under it. That also solves the maybe confusing navigation of a circle/spiral with cursor keys: it's always just left/right.
Regards,
Humdinger
I found that having Einsteinium running in the background while building a Haiku image slowed down my mouse pointer and keyboard input. I suspect that Einsteinium is pretty busy in that situation, because the build process constantly launches and quits various commands.
After assigning a lower priority to Einsteinium's threads via ProcessController, it all calmed down.
Regards,
Humdinger
RSS feed for comments to this post