This site contains the official documentation for BGINFO4X. The project site is located here.
Bug reporting and suggestions are welcomed. Please, use the Forums.
BGINFO for X, also called BGINFO4X , is a clone of the popular program BGINFO for Microsoft Windows created by Sysinternals.
BGINFO4X is designed for pretty print useful information (CPU model, Hostname, IP address, OS version, Office version, and much more ...) on your desktop background or wallpaper. See the screenshots to see BGINFO4X in action.
Please, find additional information in the Documentation
BGINFO for X and for Windows, also called BGINFO4X , is a clone of the popular program BGINFO for Microsoft Windows created by Sysinternals.
BGINFO4X is designed for pretty print useful information (CPU model, Hostname, IP address, OS version, Office version, and much more ...) on your desktop background or wallpaper. See the screenshots to see BGINFO4X in action.
BGINFO4X has two modes of functionality: The IMMODE and the RTMODE.
This is the Default mode for version 2.2 and up.
This mode uses the ImageMagick suite to write desktop information directly on your wallpaper.
This mode is very powerful in the generation of images. And extract of the features allowed are:
* Format conversion: convert an image from one format to another (e.g. PNG to JPEG). * Transform: resize, rotate, crop, flip or trim an image. * Transparency: render portions of an image invisible. * Draw: add shapes or text to an image. * Decorate: add a border or frame to an image. * Special effects: blur, sharpen, threshold, or tint an image. * Text & comments: insert descriptive or artistic text in an image. * Image identification: describe the format and attributes of an image. * Composite: overlap one image over another. * Virtual pixel support: convenient access to pixels outside the image region.
Find more information about the ImageMagick features here
Find more information about ImageMagick here
This mode is a deprecated mode, and is only useful in some very technical cases.
This mode uses less CPU, can "tail -f" a file on your desktop, and the DISPLAY can be exported to a remote machine.
This mode uses root-tail to write desktop information directly in your X-Window.
Find more information about root-tail here
Note: it is necessary to have X-windows installed to work with this mode. So, this mode doesn't work with Windows, except if your are using CYGWIN.
Usually, all the operating systems support both modules. Check here for the compatibility matrix.
BGINFO4X is a modular system, that comes with a set of configurable FUNCTION FILES:
The following image shows the relationship between the FUNCTION FILES and the WALLPAPER printed:
The Operating System is detected automatically and the associated FUNCTION FILES, located in their corresponding subfolder, are executed.
The following table summarizes this concept:
OS FOUND | SUBFOLDER LOCATION | FUNCTION FILES |
---|---|---|
WINDOWS | CUSTOM/CLIENT/WINDOWS | HEADER.CONF; OUT.CONF; ALARM.CONF; SCRIPT.CONF |
LINUX | CUSTOM/CLIENT/LINUX | HEADER.CONF; OUT.CONF; ALARM.CONF; SCRIPT.CONF |
MACOSX | CUSTOM/CLIENT/MACOSX | HEADER.CONF; OUT.CONF; ALARM.CONF; SCRIPT.CONF |
BSD | CUSTOM/CLIENT/BSD | HEADER.CONF; OUT.CONF; ALARM.CONF; SCRIPT.CONF |
CYGWIN | CUSTOM/CLIENT/CYGWIN | HEADER.CONF; OUT.CONF; ALARM.CONF; SCRIPT.CONF |
OTHEROS | CUSTOM/CLIENT/OTHEROS | HEADER.CONF; OUT.CONF; ALARM.CONF; SCRIPT.CONF |
To see all the the Operating Systems supported click here
Customizing BGINFO4X is done through the CUSTOM FILES, located in the CUSTOM/CONF subfolder of your installation program.
The following table summarizes this concept:
FILE | SUBFOLDER LOCATION | Description |
---|---|---|
BGINFO4X.CONF | CUSTOM/CONF | Main configuration file. |
IMMODE.CONF | CUSTOM/CONF | Imaging wallpaper configuration file. |
RTMODE.CONF | CUSTOM/CONF | Root-tail (deprecated) configuration file. |
These configuration files, use a very simple estructure: VARIABLE="VALUE". Note that the "VALUE" comes always between quotes. These variables are also called often tunables.
The more useful tunables in this file are:
Tunable | Value | Description |
---|---|---|
TIMER | ["0"-"seconds"] | Refresh screen timer in seconds. For example, to refresh each 5 minutes (300 seconds), use TIMER="300". |
STOPLOOP | ["0"-"loopnumber"] | Stop BGINFO4X after the desired loop. For example, to never stop, use STOPLOOP="0". |
HTMLEXPORT | ["YES"/"NO"] | Export the information to an HTML file. For example, to export your data to HTML, use HTMLEXPORT="YES". |
The more useful tunables in this file are:
Tunable | Value | Description |
---|---|---|
CORPORATEWALLPAPER | ["YES"/"NO"] | Force the use of a Corporate Wallpaper. |
CORPORATELOGO | ["YES"/"NO"] | Use a Corporate Logo. |
BGWALLPAPER_GRAVITY | ["Cardinal points"] | Location of the BGINFO4X wallpaper. For example, to position the image to the SouthEast, use BGWALLPAPER_GRAVITY="SouthEast". |
To see all the configurable options and possible values, edit your CUSTOM FILE or continue reading this manual.
BGINFO4X comes with the following command line options: {--version | --stop | --stopall | --debugall | --checksoftinstalled | --help}
Backup your previous version of BGINFO4X in a safe place
Install BGINFO4X
Prerequisite: NetFramework2 installed.
Download the latest version of the .msi Windows package
Execute the msi package as an Administrator
Accept the End-User GPL License
Choose your Destination Folder
Install BGINFO4X
Launch BGINFO4X
Program Files Overview
Restore your backed-up data (CUSTOM/CONF and CUSTOM/CLIENT/WINDOWS).
Starting the program automatically
Configuring BGINFO4X
Editing CUSTOM FILES and FUNCTION FILES:
After finishing the installation you can deploy BGINFO4X faster in your enterprise, basically with two methods:
See the results
Requirements:
Backup your previous version of BGINFO4X in a safe place
Install BGINFO4X
On a Unix Terminal, install the prerequisites:
Download the latest version of BGINFO4X.
Copy the downloaded file to a'/tmp' folder.
On a Unix Terminal, install BGINFO4X:
Restore your backed-up data (CUSTOM/CONF and CUSTOM/CLIENT/LINUX).
Start the main program:
Starting the program automatically
Configuring BGINFO4X
See the results
Backup your previous version of BGINFO4X in a safe place
Install BGINFO4X
On a Unix Terminal, install the prerequisites:
Download the latest version of BGINFO4X.
Copy the downloaded file to a'/tmp' folder.
On a Unix Terminal, install BGINFO4X:
Restore your backed-up data (CUSTOM/CONF and CUSTOM/CLIENT/LINUX).
Start the main program:
Starting the program automatically
Configuring BGINFO4X
See the results
Backup your previous version of BGINFO4X in a safe place
Install BGINFO4X
On a Unix Terminal, install the prerequisites:
Download the latest version of BGINFO4X.
Copy the downloaded file to a'/tmp' folder.
On a Unix Terminal, install BGINFO4X:
Restore your backed-up data (CUSTOM/CONF and CUSTOM/CLIENT/LINUX).
Start the main program:
Starting the program automatically
Configuring BGINFO4X
Backup your previous version of BGINFO4X in a safe place
Install BGINFO4X
On a Unix Terminal, install the prerequisites:
Download the latest version of BGINFO4X.
Copy the downloaded file to a'/tmp' folder.
On a Unix Terminal, install BGINFO4X:
Restore your backed-up data (CUSTOM/CONF and CUSTOM/CLIENT/LINUX).
Start the main program:
Starting the program automatically
Configuring BGINFO4X
Backup your previous version of BGINFO4X in a safe place
Install BGINFO4X
On a Unix Terminal, install the prerequisites:
Download the latest version of BGINFO4X.
Copy the downloaded file to a'/tmp' folder.
On a Unix Terminal, install BGINFO4X:
Restore your backed-up data (CUSTOM/CONF and CUSTOM/CLIENT/LINUX).
Start the main program:
Starting the program automatically
Configuring BGINFO4X
Backup your previous version of BGINFO4X in a safe place
Install BGINFO4X
On a Unix Terminal, install the prerequisites:
Download the latest version of BGINFO4X.
Copy the downloaded file to a'/tmp' folder.
On a Unix Terminal, install BGINFO4X:
Restore your backed-up data (CUSTOM/CONF and CUSTOM/CLIENT/LINUX).
Start the main program:
Starting the program automatically
Configuring BGINFO4X
Backup your previous version of BGINFO4X in a safe place
Install BGINFO4X
On a Unix Terminal, install the prerequisites:
Download the latest version of BGINFO4X.
Copy the downloaded file to a'/tmp' folder.
On a Unix Terminal, install BGINFO4X:
Restore your backed-up data (CUSTOM/CONF and CUSTOM/CLIENT/LINUX).
Start the main program:
Starting the program automatically
Configuring BGINFO4X
Notes:
If you are a normal user, install BGINFO4X as explained earlier.
Installing BGINFO4X on Cygwin is only useful if you want to use the RTMODE, or if you already have Cygwin installed, normally on a Server.
If you want to monitor a remote BGINFO4X, you can install VcXsrv from http://sourceforge.net/projects/vcxsrv/
Cygwin/X is installed via Cygwin's setup.exe (administration permissions are required) and the installation process is documented in the Cygwin/X User's Guide. Whether or not you already have Cygwin installed, you can add Cygwin/X to your installation by downloading the latest setup.exe, running setup, and selecting the required packages. Check for detailed instructions in http://x.cygwin.com/ (Downloading and Installing).
Add the following Cygwin/X Extra Packages
X11: (contains the XServer package)
ImageMagick: (contains the ImageMagick package)
sysvinit: (contains the necessary pidof command)
psmisc: (contains the necessary killall command)
Add the required recommended dependencies:
Install Root-tail (RTMODE)
Compile Root-tail from Source: Download it from http://oldhome.schmorp.de/marc/root-tail.html or http://www.goof.com/pcg/marc/root-tail.html. Copy the downloaded file to a Cygwin '/tmp' folder (C:\cygwin\tmp).
Open a Cygwin Terminal:
Notes about xmkmf: Programs which use the X Windowing System, in addition to needing to know which UNIX features are available, also need to know certain facts about the X installation. These include such things as the locations of X header and library files, programs, fonts, and the font file format used. Rather than having each X program needing its own configure script to search for this information, the X Windowing System takes a different approach. X installations come with a program called xmkmf, which stands for `X-MaKe-MakeFile'. This program knows the answers to all the typical questions asked by X program distributions. It reads a Makefile template which contains slots where these answers need to be filled in, and from it generates a Makefile.
Now root-tail is installed and ready to use. Check it:
/usr/bin/root-tail
Notes about root-tail: Installing root-tail from Cygwin-Ports is not supported. Basically, the port is not created. If you know how to create the port, please create it. Community will thanks to you.
Backup your previous version of BGINFO4X in a safe place
Install BGINFO4X
Copy the downloaded file to a'/tmp' folder.
On a Unix Terminal, install BGINFO4X:
$ cd /usr/local/bin/BGINFO4X
Restore your backed-up data (CUSTOM/CONF and CUSTOM/CLIENT/CYGWIN).
Start the main program:
Starting the program automatically
Configuring BGINFO4X
Backup your previous version of BGINFO4X in a safe place
Install BGINFO4X
On a Unix Terminal, install the prerequisites:
Download the latest version of BGINFO4X.
Copy the downloaded file to a'/tmp' folder.
On a Unix Terminal, install BGINFO4X:
Restore your backed-up data (CUSTOM/CONF and CUSTOM/CLIENT/LINUX).
Start the main program:
Starting the program automatically
Configuring BGINFO4X
By default, the BGINFO4X data is exported to an HTML Report (HTMLEXPORT="YES").
To save all the BGINFO4X data loops (BGID), you need to change the variable HTMLDELETE="NO".
If you want to change some other behaviour, or some color, logo, ... please check the export options.
BGINFO4X data can also be exported to a CSV file, easily opened with any spreadsheet.
To export your data to a CSV file, you need to change the variable CSVEXPORT="YES".
If you want to change some other behaviour, or some color, logo, ... please check the export options.
BGINFO4X data can be inserted into a SQLITE3 database. This can be useful in embbedded systems, industrial machines, or any server where you want to log data.
By default, sqlite3 and SqliteStudio GUI is installed on the Windows version. In this manner, you can easily deploy the sqlite solution.
To export your data to a SQLITE database, you need to change the variable SQLITEEXPORT="YES".
If you want to change some other behaviour, or some color, logo, ... please check the export options.
In the CUSTOM/CONF folder of your installation, you will find the main files that can be customized.
Find more information here.
In the CUSTOM/CLIENT folder of your installation, you will find the functions files for your operating system.
Find more information here.
It is very easy, backup your CUSTOM folder in a safe place.
It is very easy, restore your CUSTOM folder to the installation folder.
Download the latest BGINFO4X release. Backup your CUSTOM folder.
Install BGINFO4X for your operating system. Find more information here.
Restore your CUSTOM folder.
This is not supported and not recommended, and basically it depends of your network speed and the I/O of your remote disks. To test it, copy the install folder BGINFO4X on the remote server, share it, and execute the BGINFO4X launcher on the clients.
The network paradigm must be solved with BGINFO4X Server, not with network shares or UNC paths.
This happens if the wallpaper can't be get or set.
Use the CUSTOM/CONF/IMMODE.CONF file, and locate the values $OSFAMILY_GET/$OSFAMILY_SET.
Then find the command for your distro that can get/set the wallpaper.
* For example, in UBUNTU 11.x or lower: UBUNTU_GET="gconftool-2 --get /desktop/gnome/background/picture_filename" UBUNTU_SET="gconftool-2 --type string --set /desktop/gnome/background/picture_filename $WALLPAPER" * For example, in UBUNTU Unity: UBUNTU_GET="gconftool-2 --get /desktop/gnome/background/picture_filename" UBUNTU_SET="gsettings set org.gnome.desktop.background picture-uri file://$WALLPAPER" The variable $WALLPAPER is obtained by the program if the get is well done. Share your comments/problems: use the [Forums](http://sourceforge.net/p/bginfo4x/discussion/) or open a [Ticket](http://sourceforge.net/p/bginfo4x/tickets/). **Note**: If CORPORATEWALLPAPER=NO (not set), then the folder of your wallpaper must be writable! Do a sudo chmod 777 -R to the folder or assign the necessary permissions.
Edit your BGINFO4X.CONF custom file, and search for the variable STOPLOOP.
Assign the value STOPLOOP="1". BGINFO4X will stop just after the first loop.
As explained earlier, the variable STOPLOOP will stop BGINFO4X just after the desired loop number.
The wallpaper will be printed and then BGINFO4X will be stopped.
For example, if you want to stop just after loop number 5, use STOPLOOP="5".
Assign STOPLOOP="0", for an endless loop of BGINFO4X. This is the default and recommended option.
To check the effect of any CONF parameter changed, you can issue the following commad:
> ./BGINFO4X.sh --reload
This commad reloads BGINFO4X immediately, killing the sleep timer, and reloading all the config files.
Yes, use the CORPORATESOLIDCOLOR="YES" tunable and the CORPORATESOLIDCOLORTYPE that you want: "SOLID COLOR (CANVAS), GRADIENT, PLASMA".
Note: On BGCLIENT you must provide the size of the resulting wallpaper (match your screen resolution for best results). On BGSERVER that should be automatically.
For example:
CORPORATESOLIDCOLORTYPE="-size 1280x1024 canvas:tomato"
CORPORATESOLIDCOLORTYPE="-size 1280x1024 canvas:red"
CORPORATESOLIDCOLORTYPE="-size 1280x1024 gradient:green-yellow"
CORPORATESOLIDCOLORTYPE="-size 1280x1024 gradient:white-blue"
CORPORATESOLIDCOLORTYPE="-size 1280x1024 plasma:yellow-red"
CORPORATESOLIDCOLORTYPE="-size 1280x1024 plasma:yellow-green"
Be aware that Gradient and Plasma are high cpu intensive.
Find more information here
You can use shadows only for your HEADER. Edit the following variable in IMMODE.CONF:
DRAW_HEADERFILE="-fill white -draw \\"text -3,-3 ' BGINFO4X for Windows !'\\""
Note: Match the text with the text of your HEADER.CONF. GRAVITY_HEADERFILE tunable must be set to some value as "NorthWest".
You can use a transparent shadow as a background rectangle.
For exemple, to create a transparent HEADER, edit the following variable in IMMODE.CONF:
BACKGROUND_HEADERFILE="rgba(0,255,255,0.25)"
For exemple, to create a transparent OUTFILE, edit the following variable in IMMODE.CONF:
BACKGROUND_HEADERFILE="rgba(0,255,255,0.25)"
Play with RGB and the alpha channel (transparency).
You can use Pango as an HTML Markup language. Find more information about the attributes here
Edit the following variables in IMMODE.CONF:
CONVERT_DIRECTIVE_OUTFILE="pango" #Uses pango
GRAVITY_OUTFILE="East" #Lets You justify the text to the left.
GRAVITY_OUTFILE="NorthWest" #Lets You justify the text to the right.
In CUSTOM/CLIENT/WINDOWS, find the file OUT-PANGO.CONF as an example about how to format the functions.
See the results:
.
If you use RDP against a remote machine, and you can not see the background, there are two things that you need to check.
First off, your RDP client (Remote Desktop Connection client) must have the remote wallpaper setting enabled. For example, in XP, open the Remote Desktop Connection file and click the Experience tab. Place a check in the option Desktop background. This allows the client to see enabled desktop wallpapers. Logoff and logon again.
Second, if you work in a company, check for Group Policy. Now browse to Local Computer Policy -> Computer Configuration -> Administrative Templates -> Windows Components -> Terminal Services. From the list, modify: Always show desktop on connection to Enabled and Enforce Removal of Remote Desktop Wallpaper to Disabled.
Log out of your remote desktop connection and login again, making sure your RDP client has desktop wallpaper enabled. Now you should be able to right click the desktop and apply wallpaper normally. If this is the case, BGINFO4X for Windows can work as expected, and the wallpaper will be changed on the RDP session.
To tail a file you can use the CUSTOM functions scripts:
Edit the file CUSTOM/$OSFAMILY/SCRIPT.CONF: uncomment the line CUSTOM/FUNCTIONS/$OSFAMILY/Script2.sh
The Script2.sh has the main functionallity to tail a file on your screen.
To find the value of the variable TAILID, use RTMODE and check it in the debug.out file.
This script is distibuted as an example, and is not directly supported by BGINFO4X.
The Script1.sh only tests that Script2.sh tails a file. Uncomment it when tested.
Note: To tail a file the recommended MODE is IMMODE. If RTMODE is used, some extra flickers can occur on the screen, but it works equally.
No, it's not. You can execute BGINFO4X on a machine without using X-WINDOWS, and see the output locally or on a remote machine (this is useful if you have an industrial machine or an embedded system).
To see the output locally, check for the EXPORT files: HTML Report, CSV file or SQLITE database.
To see the output on a remote machine, you need an X-Server started and the "xhost +" command issued. Note: to see the output on a remote machine you need to use RTMODE.
On the client machine, where you run BGINFO4X:
On the remote machine, if you are using Windows, install an X-Server:
On the remote machine, if you have Cygwin/X installed:
Edit the file C:\cygwin\etc\X11\system.XWinrc. Search the "menu apps" and add the following sentences:
Open a Cygwin Terminal and Start the X-Win Server :
Right Click on the X-Win Server Icon and enable the Remote Display:
See the output:
You can do this only if your local BGINFO4X is using IMMODE. If RTMODE is used, both outputs (local and remote) will be overlapped.
To display the result of a remote machine, you need an X-Server installed and correctly configured (xhost+ enabled) as explained earlier.
BGINFO4X uses Bash as a default language.
Bash was chosen due to their ubiquity on different platfforms, even on embeded systems.
Yes. To use the Bash Shell, doble-click on the BGINFO4X Bash Shell.bat and a new bash window will appear.
The BGINFO4X for Windows is a portable edition of MSYS (Mynimal System) where:
Yes, you can use powershell to output your usual functions(OUT.CONF,ALARM.CONF) or as a separated script launched by the BGINFO4X Scripting Module(SCRIPT.CONF).
For example, to output (Win32_Computersystem information) your functions, edit the corresponding OUT.CONF (CUSTOM/CLIENT/WINDOWS/OUT.CONF). Add a line like:
PowerShell Works: X | powershell -Command "& {get-wmiObject Win32_Computersystem | Format-Table Model}" | tail -n3
You will get an output on the screen like this one:
For example, to alarm (GetEventLog by EventID) your functions , edit the corresponding ALARM.CONF (CUSTOM/CLIENT/CYGWIN/ALARM.CONF). Add a line like:
Alarm EventID10009: X if [ "]
echo "\n" | powershell -Command '& Get-EventLog System -Entrytype Error | Where-Object {$_.EventID -match 10009}' | wc -l
" -eq 0 ; then echo ""; exit 0; else echo "echo "\n" | powershell -Command '& Get-EventLog System -Entrytype Error | Where-Object {$_.EventID -match 10009}'
"; exit 1; fi
Note: echo "\n" is necessary to return the prompt to the cygwin shell if you are using CYGWIN.
For example, to launch a Powershell script, edit the corresponding SCRIPT.CONF (CUSTOM/CLIENT/WINDOWS/SCRIPT.CONF). Add a line like:
powershell CUSTOM/CLIENT/WINDOWS/Script4-powershell.PS1 &
You will get an output on the console like this one:
Index Time EntryType Source InstanceID Message
----- ---- --------- ------ ---------- -------
81056 ene 11 11:21 Error DCOM 3221235481 Can't find ...
Note: To permit the use of Powershell scripts on your system. execute a cmd (runas an Administrator):
> Powershell Set-ExecutionPolicy Unrestricted
Note: If you want some interactive answer, remove the background command "&", but be aware that BGINFO4X will wait until a response is done or the program exits.
Yes, you can use WHS/VBScript for output your functions(OUT.CONF,ALARM.CONF) or as a separated script launched by the BGINFO4X Scripting Module(SCRIPT.CONF).
CScript(command script) is supported for output your funcions and by the BGINFO4X Scripting Module:
CScript Works: X cscript //NoLogo CUSTOM/CLIENT/WINDOWS/Script3-cscript.vbe
You will get an output on the screen like this one:
cscript //NoLogo CUSTOM/CLIENT/WINDOWS/Script3-cscript.vbe &
You will get an output on the console like this one:
Hello, I'm BGINFO4X via Windows Scripting Host - CScript
Note: If you want some interactive answer, remove the background command "&", but be aware that BGINFO4X will wait until a response is done or the program exits.
For example, to launch a WScript script, edit the corresponding SCRIPT.CONF (CUSTOM/CLIENT/WINDOWS/SCRIPT.CONF). Add a line like:
> wscript CUSTOM/CLIENT/WINDOWS/Script4-wscript.vbe & You will get an output on the console like this one:
Output")
Note: If you want some interactive answer, remove the background command "&", but be aware that BGINFO4X will wait until a response is done or the program exits.
Note: Using WScript works, but can generate some fork issues if messageboxs are not pressed. Use a TIMEOUT to terminate them before BGINFO4X loops or ask the cause to the forums.
Yes, JScript is supported. See the WHS FAQ as example.
Yes, you can use Windows Management Instrumentation (WMI). You can also use WMI with PowerShell or with Windows Scripting Host (Visual Basic Script), as explained before.
You can also use WMIC, as explained here:
http://4x4w.blogspot.com.es/2013/12/wmi-commands-with-bginfo4x.html
Yes, you can use Windows Registry Functions for output your functions(OUT.CONF,ALARM.CONF) or as a separated script launched by the BGINFO4X Scripting Module(SCRIPT.CONF).
reg ADD "HKEY_CURRENT_USER\Software\Microsoft\Notepad" //v StatusBar //d 5 //f
The main tool used is the regtool provided by cygwin. For more information refer to: regtool -h or http://cygwin.com/cygwin-ug-net/using-utils.html#regtool
For example, to get a registry value and output on the screen, edit the corresponding OUT.CONF (CUSTOM/FUNCTIONS/CYGWIN/OUT.CONF). Add a line like:
> Get Registry Value: X regtool.exe -w -v get "/HKEY_CURRENT_USER/Software/Microsoft/Notepad/StatusBar"
You will get an output on the console like this one:
Output")
For example, to set a value launching an Script, add an entry in SCRIPT.CONF (CUSTOM/FUNCTIONS/CYGWIN/SCRIPT.CONF). Add a line like:
> CUSTOM/FUNCTIONS/$OSFAMILY/Script7-registry.sh & The content of this script is similar to: > regtool.exe -w -v set "/HKEY_CURRENT_USER/Software/Microsoft/Notepad/StatusBar" 1 &
Yes, you can use PERL for output your functions(OUT.CONF,ALARM.CONF) or as a separated script launched by the BGINFO4X Scripting Module(SCRIPT.CONF).
For example, to output your functions in UBUNTU, edit the corresponding OUT.CONF (CUSTOM/FUNCTIONS/UBUNTU/OUT.CONF). Add a line like:
PERL Works: X perl CUSTOM/CLIENT/LINUX/Script3.pl
You will get an output on the screen like this one:
For example, to launch a PERL script in UBUNTU, edit the corresponding SCRIPT.CONF (CUSTOM/FUNCTIONS/UBUNTU/SCRIPT.CONF). Add a line like:
perl CUSTOM/CLIENT/LINUX/Script7.pl &
You will get an output on the console like this one:
Hello, I'm BGINFO4X via PERL.
Note: If you want some interactive answer, remove the background command "&", but be aware that BGINFO4X will wait until a response is done or the program exits.
Yes, you can use Python if it is installed. Take the PERL FAQ as example.
If you need some assistance, ask the forum for help.
Yes, you can use KiXtart if it is installed. Take the PERL FAQ as example.
If you need some assistance, ask the forum for help.
Yes, you can use AutoIt if it is installed. Take the PERL FAQ as example.
If you need some assistance, ask the forum for help.
Yes, you can use AutoHotkey if it is installed. Take the PERL FAQ as example.
If you need some assistance, ask the forum for help.
BGINFO4X uses osascript itself to GET/SET the Wallpaper, so the AppleScript is fully supported.
Yes, you can use them if they are installed. Take the PERL FAQ as example.
If you need some assistance, ask the forum for help.
Yes, you can use any tool capable of output something in a console.
The tool can be an external tool or a proprietary developed tool.
Remember: Values comes always between quotes. First value is the Default.
Tunable | Possible values | Explanation |
---|---|---|
SECUREMODE | "OFF" / "ON" | Show / Don't show information on the screen. |
MODE | "IMMODE" / "RTMODE" / "BOTH" | ImageMagick Mode / Root-tail Mode / Both Modes. |
TIMER | "45" / "[0-infinite]" | Timer (in seconds) between refresh screens. |
STOPLOOP | "0" / "[0-loopNumber]" | Stop BGINFO4X after the desired loop number. 0-Don't stop. |
IMORDER | "HEADER-OUT-ALARM / "*" | Order of the output. Combine HEADER;OUT;ALARM in any order. Remember the dash separator. |
IMHEADEROUT | "ON" / "OFF" | Show/Don't show HEADER on the screen. |
IMOUTOUT | "ON" / "OFF" | Show / Don't show OUT Functions on the screen. |
IMALARMOUT | "ON" / "OFF" | Show / Don't show ALARM Functions on the screen. |
IMSCRIPTOUT | "ON" / "OFF" | Enable / Disable execution of SCRIPTS. |
Tunable | Possible values | Explanation |
---|---|---|
DATEFORMATEXPORT | "+[%F][%H:%M:%S:%N]" / "*" | Date format for the exporting functions. |
EXPORTFOLDER | "EXPORT" / "*" | Export folder (don't finish it with /). |
HTMLEXPORT | "YES" / "NO" | Export / don't export to HTML. |
HTMLDELETE | "NO" / "YES" | Don't save all historic data. |
HTMLFILE | "BGINFO4X.html" / "*" | HTML file name. |
HTMLDIVFILE | "BGINFO4Xdiv.html" / "*" | HTMLDIV file name. |
HTMLLOGOFILE | "../BASE/IMAGES/BGINFO4X-Camel50x50.gif" / "*" | HTML logo for the report. |
HTMLCOLORROW1 | "#FFA189" / "*" | HTML COLOR for the odd rows. |
HTMLCOLORROW2 | "#FFD3C9" / "*" | HTML COLOR for the even rows. |
HTMLCOLOROUT | "#24ca46" / "*" | HTML COLOR for the OUT rows. |
HTMLCOLORALARM | "#FF0000" / "*" | HTML COLOR for the ALARM rows. |
HTMLCOLORSCRIPT | "#3399CC" / "*" | HTML COLOR for the SCRIPT rows. |
CSVEXPORT | "NO" / "YES" | Export / don't export to CSV. |
CSVDELETE | "NO" / "YES" | Save all historic data. |
CSVSEPARATOR | "#" / "*" | CSV separator. |
CSVOUTFILE | "BGINFO4XOUT.csv" / "*" | CSV file for the OUT functions. |
CSVALARMFILE | "BGINFO4XALARM.csv" / "*" | CSV file for the ALARM functions. |
CSVSCRIPTFILE | "BGINFO4XSCRIPT.csv" / "*" | CSV file for the SCRIPT functions. |
SQLITEEXPORT | "NO" / "YES" | Export / don't export to sqlite3. |
SQLITESEPARATOR | "#" / "*" | SQLITE separator. |
SQLITEFILE | "BGINFO4XSQLITE.sql" / "*" | SQLITE import file. |
SQLITEDB | "BGINFO4XSQLITE.db" / "*" | SQLITE database is created or opened if exists. |
SQLITETB | "bginfo4x" / "*" | SQLITE table name. |
Tunable | Possible values | Explanation |
---|---|---|
_DATEFORMAT | "+[%F][%H:%M:%S:%N]" / "*" | Date format for the debugging command date. |
_POSIX | "OFF" / "ON" | Enable POSIX. Don't use this function, problems arise. |
_SETVX | "OFF" / "ON" | Enable -VX bash option. |
_DEBUG_HEADERSTART | "ON" / "OFF" | Enabling the debug for HEADERS. |
_DEBUG_HEADERSTART_SCREEN | "ON" / "OFF" | Enabling the debug on terminal for HEADERS. |
_DEBUG_HEADEREND | "ON" / "OFF" | Enabling the debug for HEADERS. |
_DEBUG_HEADEREND_SCREEN | "ON" / "OFF" | Enabling the debug on terminal for HEADERS. |
_DEBUG_INFO | "ON" / "OFF" | Enabling the debug for INFO. |
_DEBUG_INFO_SCREEN | "ON" / "OFF" | Enabling the debug on terminal for INFO. |
_DEBUG_WARNING | "ON" / "OFF" | Enabling the debug for WARNING. |
_DEBUG_WARNING_SCREEN | "ON" / "OFF" | Enabling the debug on terminal for WARNING. |
_DEBUG_ERROR | "ON" / "OFF" | Enabling the debug for ERROR. |
_DEBUG_ERROR_SCREEN | "ON" / "OFF" | Enabling the debug on terminal for ERROR. |
_DEBUGBG | "ON" / "OFF" | Enabling the debug for BGINFO4X.sh. |
_DEBUGBG_SCREEN | "ON" / "OFF" | Enabling the debug on terminal for BGINFO4X.sh. |
_DEBUGOF | "ON" / "OFF" | Enabling the debug for OF.sh. |
_DEBUGOF_SCREEN | "ON" / "OFF" | Enabling the debug on terminal for OF.sh. |
_DEBUGRT | "ON" / "OFF" | Enabling the debug for RT.sh. |
_DEBUGRT_SCREEN | "ON" / "OFF" | Enabling the debug on terminal for RT.sh. |
_DEBUGIM | "ON" / "OFF" | Enabling the debug for IM.sh. |
_DEBUGIM_SCREEN | "ON" / "OFF" | Enabling the debug on terminal for IM.sh. |
_DEBUGPM | "ON" / "OFF" | Enabling the debug for PM.sh. |
_DEBUGPM_SCREEN | "ON" / "OFF" | Enabling the debug on terminal for PM.sh. |
_DEBUGPMALL | "ON" / "OFF" | Enabling the debug for PMALL in PM.sh. |
_DEBUGPMALL_SCREEN | "ON" / "OFF" | Enabling the debug on terminal for PMALL in PM.sh. |
_DEBUGCS | "ON" / "OFF" | Enabling the debug for CS.sh. |
_DEBUGCS_SCREEN | "ON" / "OFF" | Enabling the debug on terminal for CS.sh. |
_DEBUGFT | "ON" / "OFF" | Enabling the debug for FT.sh. |
_DEBUGFT_SCREEN | "ON" / "OFF" | Enabling the debug on terminal for FT.sh. |
_DEBUGEX | "ON" / "OFF" | Enabling the debug for EX.sh. |
_DEBUGEX_SCREEN | "ON" / "OFF" | Enabling the debug on terminal for EX.sh. |
_DEBUGKA | "ON" / "OFF" | Enabling the debug for KA.sh. |
_DEBUGKA_SCREEN | "ON" / "OFF" | Enabling the debug on terminal for KA.sh. |
_DEBUGDB | "ON" / "OFF" | Enabling the debug for DB.sh. |
_DEBUGDB_SCREEN | "ON" / "OFF" | Enabling the debug on terminal for DB.sh. |
Tunable | Possible values | Explanation |
---|---|---|
HEADERFILE | "CUSTOM/FUNCTIONS/$OSFAMILY/HEADER.CONF" / "*" | Header file. |
FTOUTFILE | "CUSTOM/FUNCTIONS/$OSFAMILY/OUT.CONF" / "*" | Out functions file. |
FTALARMFILE | "CUSTOM/FUNCTIONS/$OSFAMILY/ALARM.CONF" / "*" | Alarm functions file. |
FTSCRIPTFILE | "CUSTOM/FUNCTIONS/$OSFAMILY/SCRIPT.CONF" / "*" | Script functions file. |
Tunable | Explanation | Command used |
---|---|---|
WINDOWS_GET | Gets the wallpaper for the Operating System. Note that cut -d 'Z' cuts REG_SZ, and sed remove ALL the LEADING SPACES and TABS! | "reg QUERY \"HKEY_CURRENT_USER\Control Panel\Desktop\" //v Wallpaper \ |
WINDOWS_SET | Sets the wallpaper for the Operating System. | "3rdParty/WallpaperChanger/WallpaperChanger.exe \"${WALLPAPER}\" 2 \"${GETWALLPAPERFOLDER}/\" ; cp \"${GETWALLPAPERFOLDER}\wallpaper.bmp\" \"${GETWALLPAPERFOLDER}\BG_$GETWALLPAPERFILE\" ; reg ADD \"HKEY_CURRENT_USER\Control Panel\Desktop\" //v Wallpaper //d \"${WALLPAPER}\" //f" |
UBUNTU_GET | Gets the wallpaper for the Operating System. | "gconftool-2 --get /desktop/gnome/background/picture_filename" |
UBUNTU_SET | Sets the wallpaper for the Operating System. | "gsettings set org.gnome.desktop.background picture-uri file://\"${WALLPAPER}\"" |
MACOSX_GET | Gets the wallpaper for the Operating System. | "defaults read com.apple.Desktop Background \ grep -m 1 \"ImageFilePath\" \ cut -d= -f2- \ sed 's/\"*//g' \ sed 's/;//g' \ sed 's/^ //g' " |
MACOSX_SET | Sets the wallpaper for the Operating System. | "osascript -e \"tell application \\"Finder\\" to set desktop picture to POSIX file \\"${WALLPAPER}\\"\"" |
SUSE_GET | Gets the wallpaper for the Operating System. | "-" |
SUSE_SET | Sets the wallpaper for the Operating System. | "-" |
BSD_GET | Gets the wallpaper for the Operating System. | "-" |
BSD_SET | Sets the wallpaper for the Operating System. | "-" |
CYGWIN_GET | Gets the wallpaper for the Operating System. | "regtool.exe -w -v get \"/HKEY_CURRENT_USER/Control Panel/Desktop/Wallpaper\"" |
CYGWIN_SET | Sets the wallpaper for the Operating System. | "3rdParty/WallpaperChanger/WallpaperChanger.exe \"${WALLPAPER}\" 2 \"${GETWALLPAPERFOLDER}/\" ; cp \"${GETWALLPAPERFOLDER}/wallpaper.bmp\" \"${GETWALLPAPERFOLDER}/BG_$GETWALLPAPERFILE\" ; regtool.exe -w -v set \"/HKEY_CURRENT_USER/Control Panel/Desktop/Wallpaper\" \"${WALLPAPER}\"" |
RASPBERRYPI_GET | Gets the wallpaper for the Operating System. | "grep -i \"^wallpaper=\" $HOME/.config/pcmanfm/pi/pcmanfm.conf |
RASPBERRYPI_SET | Sets the wallpaper for the Operating System. | "pcmanfm -w \"${WALLPAPER}\"" |
OTHEROS_GET | If OTHER Operating System is found, gets the wallpaper specified by this command. | "${UBUNTU_GET}" |
OTHEROS_SET | If OTHER Operating System is found, sets the wallpaper specified by this command. | "${UBUNTU_SET}" |
FORCE_WALLPAPER | Force the use of the WALLPAPER. The WALLPAPER is found via the two next followings commands. | "NO" / "YES" |
FORCEOS_GET | If NO Operating System is found, gets the wallpaper specified by this command. | "mateconftool-2 --get /desktop/mate/background/picture_filename" |
FORCEOS_SET | If NO Operating System is found, sets the wallpaper specified by this command. | "mateconftool-2 -t string -s /desktop/mate/background/picture_filename \"${WALLPAPER}\"" |
Tunable | Possible values | Explanation |
---|---|---|
CLSSCREEN | "OFF" / "ON" | Don't force / force and empty root-tail on the screen for cleaning it. |
CLSSLEEP_AFTERRT | "0" / "[0-3600]" | Sleep seconds after killing RT (if exists): the screen should be cleaned. |
CLSSLEEP_AFTERCLS | "0" / "[0-3600]" | Sleep seconds after printing an empty-sreen: the screen should be cleaned. |
REMOTEDISPLAY | "NO"/ "YES" | If you want to export your DISPLAY to a REMOTE MACHINE use "YES". For LOCAL root-tail use "NO". |
REMOTEDISPLAYIP | "REMOTEIP:0.0" | IP address and scren where you want to send the root-tail. The display can be exported to any IP address where XServer is running. |
STARTXWIN_CYGWIN | "/bin/run.exe -p /usr/X11R6/bin XWin -clipboard -screen 0 800x600+400+300 -swcursor -hostintitle -resize=randr -emulate3buttons -silent-dup-error" | The command that launches the XWin server if the OS found is CYGWIN. |
STARTXWIN_CYGWIN_DISPLAY | "localhost:0.0" | The display of the local cygwin XWin server. |
STARTXWIN_CYGWIN_DELAY | "5" / "[5-3600]" | The necessary delay in seconds for starting XWin server with CYGWIN. |
Tunable | Possible values | Explanation |
---|---|---|
POSITION | "LU" / "LU"/"LD"/"LC"/"RU"/"RD"/"RC"/"MC"/"CUSTOM" | L=Left; R=Right; U=Up; D=Down; MC=Middle Center |
XAXISCUSTOM | -50" | Use this if CUSTOM is set. |
YAXISCUSTOM | +30" | Use this if CUSTOM is set. |
RTORDER | HEADER-OUT-ALARM" / "HEADER-OUT-ALARM"/"HEADER-ALARM-OUT"/"OUT-HEADER-ALARM"/"OUT-ALARM-HEADER"/"ALARM-HEADER-OUT"/"ALARM-OUT-HEADER" | Order of the output. Combine HEADER;OUT;ALARM in any order. Remember the dash separator. |
RTHEADEROUT | "ON" / "OFF" | Show/Don't show HEADER on the screen. |
RTOUTOUT | "ON" / "OFF" | Show/Don't show OUT Functions on the screen. |
RTALARMOUT | "ON" / "OFF" | Show/Don't show OUT Functions on the screen. |
RTSCRIPTOUT | "ON" / "OFF" | Enable/Disable execution of SCRIPTS. |
Tunable | Possible values | Explanation |
---|---|---|
HEADERFILECOLOR | "white" / "any color" | Use COLOR for the HEADER. http://oldhome.schmorp.de/marc/root-tail.html |
OUTFILECOLOR | "blue" / "any color" | Use COLOR fot the OUT. http://oldhome.schmorp.de/marc/root-tail.html |
ALARMFILECOLOR | "red" / "any color" | User COLOR for the ALARM. http://oldhome.schmorp.de/marc/root-tail.html |
WORDWRAP | "YES" / "NO" | http://oldhome.schmorp.de/marc/root-tail.html |
JUSTIFY | "YES" / "NO" | http://oldhome.schmorp.de/marc/root-tail.html |
MINSPACE | "YES" / "NO" | http://oldhome.schmorp.de/marc/root-tail.html |
SHADE | "NO" / "YES" | http://oldhome.schmorp.de/marc/root-tail.html |
OUTLINE | "NO" /"YES" | http://oldhome.schmorp.de/marc/root-tail.html |
FRAME | "NO" / "YES" | http://oldhome.schmorp.de/marc/root-tail.html |
Tunable | Explanation | Command used |
---|---|---|
WINDOWS_ID | The Window ID for the OS | "echo 0" |
UBUNTU_ID | The Window ID for the OS. ID is HARDCODED to 0 by root-tail if nautilus is detected! | "echo 0" |
SUSE_ID | The Window ID for the OS | "${XWININFO} -tree -root \ ${GREP} ${HRES}"x"${VRES} \ ${GREP} -i "plasma" \ ${GREP} -i "desktop" \ ${AWK} '{print \$1}'" |
MACOSX_ID | The Window ID for the OS | "${XWININFO} -tree -root \ ${GREP} -A3 children \ $TAIL -1 \ ${AWK} '{print \$1}'" |
BSD_ID | The Window ID for the OS | "echo 0" |
CYGWIN_ID | The Window ID for the OS | "echo 0" |
RASPBERRYPI_ID | The Window ID for the OS | "${XWININFO} -tree -root \ ${GREP} ${HRES}"x"${VRES} \ ${GREP} -i "pcmanfm" \ ${AWK} '{print \$1}'" |
FEDORA_ID | The Window ID for the OS | "echo 0" |
CENTOS_ID | The Window ID for the OS | "echo 0" |
OTHEROS_ID | The Window ID for the OS | "echo 0" |
FORCE_ID | Force the use of the id. The id is found via the command FORCEOS_ID. | "NO" / "YES" |
FORCEOS_ID | The Window ID for the OS | "${XWININFO} -tree -root \ ${GREP} ${HRES}"x"${VRES} \ ${GREP} -A1 -i "caja" \ ${TAIL} -1 \ ${AWK} '{print \$1}'" |
Tunable | Possible values | Explanation |
---|---|---|
FN_FIXED_HEADER | "YES" | Use monospaced font, like typewriter (Font: WIDTHxHEIGHT: 8x16/10x20/12x24). |
FN_WIDTH_HEADER | "12" / "*" | Font WIDTH in pixels. |
FN_HEIGHT_HEADER | "24" / "*" | Font HEIGHT in pixels. |
FN_FIXED_HEADER | "NO" | NO: Use xfontsel to verify the parameters. Examples: example: -ascender-droid-regular-i-normal--0-0-0-0-p-0-iso8859-1; '--------------' |
FNDRY | "*" | The type foundry that digitized and supplied the font data. |
FMLY | "*" | The name of the typographic style (for example, `courier'). |
WGHT | "*" | The weight of the font, or its nominal blackness, the degree of boldness or thickness of its characters. Values include heavy', bold', medium', light', and `thin'. |
SLANT | "*" | The posture of the font, usually r' (for roman', or upright), i' ( italic', slanted upward to the right and differing in shape from the roman counterpart), or o' ( oblique', slanted but with the shape of the roman counterpart). |
SWDTH | "*" | The proportionate width of the characters in the font, or its nominal width, such as normal', condensed', extended', narrow', and `wide'. |
ADSTYL | "*" | Any additional style descriptions the particular font takes, such as serif' (fonts that have small strokes drawn on the ends of each line in the character) or sans serif' (fonts that omit serifs |
PXLSZ | "*" | The height, in pixels, of the type. Also called body size. |
PTSZ | "*" | The height, in points, of the type. |
RESX | "*" | The horizontal screen resolution the font was designed for, in dpi ("dots per inch"). |
RESY | "*" | The vertical screen resolution the font was designed for, in dpi. |
SPC | "*" | The kind of spacing used by the font (its escapement class); either p' (a proportional font containing characters with varied spacing), m' (a monospaced font containing characters with constant spacing), or `c' (a character cell font containing characters with constant spacing and constant height). |
AVGWDTH | "*" | The average width of the characters used in the font, in 1/10th pixel units. |
RGSTRY | "*" | The international standards body, or registry, that owns the encoding. |
ENCDNG | "*" | The registered name of this character set, or its encoding. |
BGINFO4X is installed in an easy folder structure:
Folder Name | Meaning |
---|---|
BGINFO4X.sh | Contains the Main BGINFO4X Program |
BIN/ | Program's shell scripts |
BASE/ | Internal configuration folder |
CUSTOM/ | Operating system functions |
DOC/ | Documentation folder |
3rdParty/ | Auxiliary programs |
This folder contains the following internal configuration files:
File | Description |
---|---|
BGINFO4X.SETTINGS | Internal settings for BGINFO4X |
BGINFO4X.EC | Errror codes for BGINFO4X |
DB.CONF | Debug settings for BGINFO4X |
FT.CONF | Functions configuration file for BGINFO4X |
FT.OSFAMILY | Internal settings for BGINFO4X |
OF.OUTFILES | Outfiles definition for BGINFO4X |
PM.OPTIONS | Roottail default settings for BGINFO4X |
This file contains the main settings for BGINFO4X.
Contains the BGINFO4X version number and the location of the CUSTOM FILES:
Tunable | Value |
---|---|
BGVERSION | "3.0.6" |
CUSTOMFILE | "CUSTOM/CONF/BGINFO4X.CONF" |
CUSTOMFILEIMMODE | "CUSTOM/CONF/IMMODE.CONF" |
CUSTOMFILERTMODE | "CUSTOM/CONF/RTMODE.CONF" |
The other tunables will be overwritted during the execution of the program, but they are necessary anyway.
This file contains the list of the error codes and the displayed messages.
An example is shown here:
_PARAMERROR_TXT="#ERROR: A parameter \$1 is mandatory for the function"
This file contains the debug settings for the all the programs.
If you want debug a particular script to the main debugfile, pun "ON" on the variable.
If you want debug a particular script to the terminal, put "ON" an the *_SCREEN variable.
This file is the main Functions configuration file.
Contains the location of the FUNCTION FILES:
Tunable | Value |
---|---|
HEADERFILE | "CUSTOM/$BGSERVER/$OSFAMILY$OSSUBFAMILY/HEADER.CONF" |
FTOUTFILE | "CUSTOM/$BGSERVER/$OSFAMILY$OSSUBFAMILY/OUT.CONF" |
FTALARMFILE | "CUSTOM/$BGSERVER/$OSFAMILY$OSSUBFAMILY/ALARM.CONF" |
FTSCRIPTFILE | "CUSTOM/$BGSERVER/$OSFAMILY$OSSUBFAMILY/SCRIPT.CONF" |
Depending of your Operating system, family and subfamily found, one file or another will be executed.
This file lists the OSFAMILYs supported. There is Nothing to configure. If a new family is found, it will we added here.
This file contains the definition of the Outfiles generated during the execution of the program.
This file contains defualt settings necessary for roottail.
This folder contains internal program images: logos, backgrounds and icons.
The CUSTOM/ subfolder conatins the following folders:
Folder Name | Meaning |
---|---|
CONF/ | The Main CUSTOM files configuration folder |
CLIENT/ | The Client Functions Files folder |
SERVER/ | The Server Functions Files folder |
IMAGES/ | Image Repository for BGINFO4X |
This subfolder contains the CUSTOM FILES files for BGINFO4X
Find more information here
This subfolder contains the FUNCTION FILES files for BGINFO4X
Find more information here
If you don't like this functions or need others, what you have to do is comment them with an #.
Afterwards, add your prefered functions as desired.
This subfolder contains the FUNCTION FILES files for BGINFO4X when BGSERVER is active.
This subfolder contains images for BGINFO4X. For example, it contains the wallpaper location (CORPORATEWALLPAPERFILE) if the variable CORPORATEWALLPAPER is set to "YES"
This folder contains general documents (licenses, release notes, readme, ...).
This folder contains third party programs, necessary to run BGINFO4X in some operating systems or to enhance its features.
This table contains an overview of the shell scripts located in the BIN/ subfolder:
ShellScript | Description |
---|---|
IM.sh | The ImageMagick mode launcher |
FT.sh | FuncTions file: the output is generated via these functions |
RT.sh | RootTail: starts the main root-tail routines |
PM.sh | ParaMeters: gets the main root-tail parameters |
EX.sh | Export functions |
OF.sh | OutFiles: functions that control the outfiles |
CS.sh | ChesckSoftware: check for the necessary software to function properly |
DB.sh | DeBug: functions file for debugging the program |
KA.sh | KillAll: functions to kill the launched programs |
support/ | Support folder files |
The User Data folder is located inside $HOME in Unix or inside $USERPROFILE in Windows. A subfolder called BGINFOX/EXPORT is created.
This folder contains the different exported files generated during the execution of the program.
These options are: HTML, CSV, SQLITE (embedded database).
Saving data to centralized database will be possible throughout BGINFO4X Server.
The temporary folder is located in $TMP in Unix or in $TEMP in Windows. If requested by the debug functions, you can find troubleshooting files there.
Inside the temporary folder, a subfolder is created by each user that launches BGINFO4X.
This folder has the form: BGINFO4X/$USER, and contains all the temporary files used during the execution of the program and contains also some troubleshooting files like: requiredenvironment.log, softinstalled.log, debug.log, and pids.pid.
If you are interested in the development of BGINFO4X or the development of BGINFO4X Server, send an email to bginfo4x@sourceforge.net.
These are the main development lines:
1.0: Beta development versions. Never has been published.
2.0: The first public release, with lots of features.
5.0: This TODO line includes the development of BGINFO4X Server, as a Web application.
+3.1.8: Major improvements - KA.sh -> Kill old program's before start by PIDBASHFILE. Switching ps -ef to ps -f.
+3.1.6: Major improvements - CS.sh -> CS.CONF removed. We load the programs from the arrays: _CSCONFDOWN & _CSCONFUP.
+3.1.4: Major improvements - CS.sh -> We always recreate softinstalled.out to be sure all is ever ok.
+3.1.2: Major improvements - DB.sh -> Moving all the logs to $OUTUSERFOLDER.
+3.1.0: Major improvements - DB.sh -> REQUIREDENVIRONMENTFILE, evaluatets to $TMP. We need to manage also $TMPDIR.
+3.0.9.8: Major improvements - CreateFolder_OF "$TMPFOLDER" first to manage permissions "-m 777" when root starts first the program.
+3.0.9.6: Minor improvements - distro.sh -> adapting it to create a Debian package distribution. Cleaning DOC folders.
+3.0.9.4: Minor improvements - Moving SOFT folder -> TMP.
+3.0.9.2: Major improvements - Cleaning DB.sh (preparing environment). Performance improvement (2s).
+3.0.9.0: Minor improvements - Updating IM to ImageMagick-6.8.7-0-Q16-x86-windows
+3.0.8.8: Minor improvements - Wix -> Target="[INSTALLDIR]BGINFO4X for Windows-hiddenconsole.bat" Show="minimized". ProgramFolder restructure.
+3.0.8.6: Minor improvements - Removing Something changed in IMMODE. We always reprint. Performance improvement.
+3.0.8.4: Minor improvements - Changing $TR '\n' to "echo -n" in FT.sh. Performance improvement.
+3.0.8.2: Minor improvements - Changing $TR '/' '\' by bash substring replacement in IM.sh. Performance improvement.
+3.0.6.8: Major improvements - "--reload" option. ReloadConfig Shortcut msi.
+3.0.6.6: Minor improvements - $HOME/BGINFO4X/BASE/CONF/OUT moved to $HOME/BGINFO4X/SOFT. Remove CRLF from IMMODE.CONF. Check CRLF. Chech +x *.sh on distro.
+3.0.6.4: Minor improvements - EXPORTFOLDER reviewed to $HOME/$APPDATA/.BGINFO4X/EXPORT. $APPDATA null on unix. .BGINFO4X to hide on linux.
+3.0.6.2: Minor improvements - WRPIDFILE called only on the first instance.
+3.0.4.4: Major improvements - $TMP not evaluated correctly in DB.sh. Linux distro not functioning. Generating a new release.
+3.0.4.2: Minor improvements - SQLITE escape problems in windows.
+3.0.2.8: Minor improvements - Adapting WIX without NTFS exceptions and with heat -ag.
+3.0.2.6: Minor improvements - Moving EXPORT to $USERPROFILE. Adapting code.
+3.0.2.4: Minor improvements - Moving $HOME to $USERPROFILE in /etc/profile. Securing Output user files.
+3.0.2.3: Major improvements - Moving /OUT folder to the usual $TMP folder ($TMPDIR if defined or $TMP=/tmp in Unix ; %TMP% or %TEMP% in Windows).
+3.0.2.2: Minor improvements - Adding SQLITESTUDIO-2.1.4 in /BGBINARIES. Adding msmtp in /BGBINARIES.
+3.0.2.1: Minor improvements - Adding echo "$ALARMRESULT" | "$TR" '\n' ' ' in FT.sh to remove \n in multiline (ex: Monitoring SQL with BGINFO4X).
+3.0.2: Major improvements - Implementing NTFS&MSYS for multiuser environment (Write permissions). Adding $USERFOUND in getNEWWALLPAPER_IM. Adding BASE/CONF/OUT.
+3.0.1: Minor improvements - Removing IMMODE.CONF: cp \"${GETWALLPAPERFOLDER}/wallpaper.bmp\" \"${GETWALLPAPERFOLDER}/BG_$GETWALLPAPERFILE\" ;
+2.8.9: Major improvements - Permissions Full Control on INSTALLDIR, so UAC has no efect.
+2.8.8: Minor improvements - Check .NetFramework 2.0 minimun. Add BGINFO4X Hidden in Start All Users Profile.
+2.8.7: Minor improvements - Adding ApplicationProgramsFolder in .msi. Install scope=machine.
+2.8.6: Minor improvements - First .msi test release. Launch BGINFO4X when finished installation. Add Unix Bash in Desktop.
+2.8.5: Minor improvements - Test WixToolset.
+2.8.3.9: Major improvements - Support for ARM and RASPBERRYPI. 60% perfromance improved on Windows.
+2.8.3.8: Major improvements - Adding BGSERVER options in BGINFOX.CONF. Breaking the BGINFO4X.CONF in 3 conf files.
+2.8.3.7: Minor improvements - getOSSUBFAMILY added. trOSSUBFAMILY_FT added. Folder simplification: removing EC.
+2.8.3.6: Minor improvements - Performance: getCUSTOMVARIABLE_FT -> Removing grep | cut |. Working with arrays. -2 seconds.
+2.8.3.5: Minor improvements - Performance: Removing rmOLDFILES; Replacing rmFILE_OF by clFILE_OF (builtin echo). -1 second.
+2.8.3.4: Minor improvements - Performance: Add shopt -u sourcepath. Add "source ./filename" in the source files (so no search in PATH is necessary).
+2.8.3.3: Minor improvements - Performance: Substitute which in CS.CONF by bash builtin type. 13s -> 2s
+2.8.3.2: Major improvements - BGMODE="BGLOCAL/BGSERVER" options added. BGLOCAL reduced to main families.
+2.8.3.1: Minor improvements - CDIRECTIVE: draw bug solved.
+2.8.2.3: Major improvements - Support for username with accents-diacritics. Modified inputrc.default.
+2.8.2.2: Minor improvements - New CENTOS and RASPBERRYPI branch.
+2.8.2.1: Minor improvements - WinProductName.exe update to 0.9.1 (W2012 support).
+2.8.1.9: Minor improvements - HTML iframe compatible with IExplorer. Javascript needed.
+2.8.1.8: Minor improvements - Change convert by montage in additionalIMAGE_IM.
+2.8.1.7: Minor improvements - Ordering BGINFO4X.CONF. Adding support for Windows 2012 with cmd.exe /c "..." in MINGW.
+2.8.1.6: Minor improvements - Adding STOPLOOP.
+2.8.1.5: Minor improvements - Creating a CUSTOM.CONF that points to the config file BGINFO4X.CONF (UNC paths supported).
+2.8.1.4: Minor improvements - Creating a HEADERFILE for each OS.
+2.8.1.3: Minor improvements - FUNCTIONS folder MINGW and DARWIN renamed to WINDOWS and MACOSX.
+2.8.1.2: Minor improvements - CYGWIN: Cleaning OUT functions. Review preferred font: Verdana-Italic. Review SCRIPTS.
+2.8.1: Minor improvements - SQLITEEXPORT variable can be modified in live mode.
+2.7.9: Major improvements - Rebuilding FT.sh to use new EXPORT functions. Use of evalCOMMAND_OF in its functions.
+2.7.8: Major improvements - Removing sql support in the client (mysql and sql). It will be added in BGINFO4X Server.
+2.7.7: Minor improvements - Adding local variables in OF.sh
+2.7.6: Minor improvements - Cleaning processFT_FT. Rebuilding checkSOFTINSTALLED_CS and adding --version option.
+2.7.5: Minor improvements - Adding additionalImage_IM. Cleaning FIRSTCHAR: replacing by substring instead of "CUT -c1-1".
+2.7.4: Minor improvements - Loading contents in checkSOFTINSTALLED_CS < $_CSCONF, -5seconds improvement.
+2.7.3: Minor improvements - Quoting variables from files to support spaces. The correct form is \"VARIABLE\" , it is not necessary to quote inside the quotes.
+2.7.2: Minor improvements - Adding checkFOLDEREXIST_OF in checkFOLDERWRITABLE_OF.
+2.7.1: Minor improvements - Adding looping functions.
+2.7.0: Minor improvements - Changing subrelease numbering: incrementing one by one.
+2.6.9: Minor improvements - Modifiying IM.sh, so FORCEOS_SET use CORPORATEWALLPAPER if forced to YES.
+2.6.8: Minor improvements - getCUSTOMVARIABLE_FT bug if the line has comments like: VARIABLE="value" #comment.
+2.6.7: Minor improvements - Bug found in IM: convert.exe: no images defined `test7.png' @ error/convert.c/ConvertImageCommand/3068.
+2.6.6: Major improvements - Replacing set wallpaper in DARWIN with AppleScript (osascript). Supporting this language.
+2.6.5: Minor improvements - Cleaning functions: replacing COMMAND=$(echo ..) for COMMAND="xxx".
+2.6.4: Major improvements - MSYS initial development. Creating a portable edition with also SQL clients.
+2.6.3: Minor improvements - MACOS doesn't refresh the screen if the file has changed but has the same name.
+2.6.2: Minor improvements - Check root-tail removed from default install. Checked only with RTMODE.
+2.6.1: Minor improvements - Creating support folder.
+2.5.9: Minor improvements - Cleaning code.
+2.5.7: Major improvements - MAC, MACOS, MACOSX ready.
+2.5.5: Major improvements - Powershell scripting supported.
+2.5.3: Minor improvements - OS detection improved.
+2.5.1: Major improvements - Cleaning code: sourcing and reloadVariables redefined.
+2.4.9: Minor improvements - RTMODE, cleaning RT redefined.
+2.4.7: Minor improvements - RTMODE, Recalcultaing the geometry supported.
+2.4.5: Major improvements - Simplifying the folder strucutre.
+2.4.3: Minor improvements - Cleaning code: eval functions added and standarizedd.
+2.4.1: Major improvements - Debug by levels of INFO, WARNING, ERROR is now possible.
+2.3.9: Minor improvements - Cleaning code. Tested on: Windows XP, Windows 2003, Windows 7, and Windows 2008.
+2.3.7: Minor improvements - Debug only RTMODE and IMMODE.
+2.3.5: Minor improvements - Imagemagick functions improved.
+2.3.3: Minor improvements - OS cygwin detection improved.
+2.3.1: Minor improvements - Solving some bugs in IMMODE.
+2.2.9: Minor improvements - Adding a corporate logo.
+2.2.7: Minor improvements - RTMODE, Redimensioning the X-Window supported.
+2.2.5: Minor improvements - Exporting bugs solved.
+2.2.3: Minor improvements - Forcing a corporate wallpaper possible.
+2.2.1: Major improvements - Simplifying the structure. BASE functions deleted.
+2.1.9: Minor improvements - Solving some bugs.
+2.1.7: Minor improvements - Cleaning code.
+2.1.5: Major improvements - IMMODE almost ready. Switching default mode to IMMODE.
+2.1.3: Minor improvements - Starting KDE support. Not published.
+2.1.1: Minor improvements - Add functions to tail a file as the original root-tail does.
+2.0.9: Major improvements - Creating the CUSTOM folder.
+2.0.7: Major improvements - Creating the BASE folder.
+2.0.5: Major improvements - Creating the BIN folder.
+2.0.3: Minor improvements - Renaming functions from functions.PACKET to function.PACKET.
+2.0.1: Minor improvements. Starting development of the IMMODE.
1.x.x: Development releases, never published.
Note: Odd-sub releases never published.
BGINFO4X Server
Web Interface
Client Management:
Database Management:
Additional Modules:
Reporting Management:
GUI Tool
The project started as a concept-clone of BGINFO for Windows, but in this case for Linux, Unix or MACOSX.
After some initial research on the network, some programs were found (like Conky), but these programs didn't meet the Author's expectations.
When the MATT scripts were found (2005-12-21_125126_bginfo.zip) in the SysInternals forums, (http://forum.sysinternals.com/bginfo-for-linux-distros_topic2700.html), the main seed was born.
A new better interface should be created: the project started and the first BGINFO4X release based on root-tail was delivered (RTMODE). But root-tail has some "bugs or ugly" behaviors and is not supported natively in Windows.
The IMMODE was born: the program switched the the classical BGINFO solution modifying the underlaying image (http://www.zinox.com/node/142).
This evolved in supporting also natively Microsoft Windows, based on the Minimal System MSYS as a feautured bash shell.
BGINFO4X is released as GNU General Public License, version 3 (GPL-3.0)
Find more information in http://www.gnu.org/licenses/