Deployment Assistant Tool for IGEL Thin Clients (DATI)
(C) 2013 cloud-client.info - Michael Hoting
Version: 1.08
Release Date: 12.12.2013
Requirements: HDD 5MByte (with optional downloaded Help Files)
Operating System: Any current Microsoft Windows OS

Supported IGEL Operating Systems
IGEL Universal Desktop ES
IGEL Universal Desktop W7
IGEL Universal Desktop LX 4.x.x (x86) and 1.x.x (ARM)
IGEL Universal Desktop OS (4.x.x)
IGEL Linux (5.x.x)
IGEL Universal Desktop OS V2 (5.x.x)

General Informations - Terms of use - License
The use of this tool (incl. the generated results) in public presentations, for comparing the IGEL products with other solutions or a public release in any other form is not permitted without the written permission by the author.
Universal Desktop and Universal Management Suite is a registered Trademark of IGEL Technology.
cloud-client.info is not responsible for any damage or loss caused by using this tool or the generated results/scripts!
There is no license or similar required to use the Deployment Assistant Tool for IGEL Thin Clients (DATI).
The Deployment Assistant Tool for IGEL Thin Clients (DATI) source code will not be provided and is not available in general.
Please read also the warranty information below!
EMail: This email address is being protected from spambots. You need JavaScript enabled to view it.
cloud-client.info do not provide any courses or support for Linux scripting or the IGEL Windows LUNA Scriptlanguage!
If you have done a donation to cloud-client.info we may will answer some of your questions but do not expect a two hour online session or something similar.
IGEL Windows partial update note
This tool provide you the ability to create Partial Updates for Windows based IGEL Thin Clients in a simple way.
IGEL Linux custom partition integration script engine (ILISE) note

Who should use ILISE?

People with an unterstanding of Linux in general who wants to extend the IGEL Linux solution quite simple.
What is ILISE doing?
The idea behind ILISE is quite simple, take a folder structure from an extracted Debian Linux (.deb) package and include it into the IGEL Linux write protected file system during the boot time by creating a script.
Why should i use ILISE?
Including one file is quite simple but if you want to deploy a more complex application, driver or whatever you have to write a lot of lines to do this, this is where ILISE comes in place to generate very fast a integration script.
What should i know before using ILISE?
1) In general all scripts needs to be reviewed! 
2) Point the script engine to the folder where the binaries are located which should be deployed to the IGEL Linux!
Please Note: If you create the script as executable shell script (ilise.sh) in the content folder do not forget that you need to change the userrights for the file to allow execution like "chmod 777 /custom/contentfolder/ilise.sh" if not already done thru a custom command like "chmod -R 777 /custom/contentfolder".
Most important as first step, point ILISE to the folder where the files and folders are located that you want to deploy to the IGEL Linux. Subfolder are supported and mostly required. A typical folder structure looks like this:
IMPORTANT: The folder structure in MYCONTENT should be similar to the linux file system folder structure to prevent integration issues!!!
In this case MYCONTENT is the primary folder and you should point ILISE to this folder, all subfolder and files will be recognized by ILISE and included into the script. This folder structure is typical for linux and when you download a Linux Ubuntu package from http://www.ubuntuupdates.org/ and extract it to your HDD this folder structure will be created during the extraction.
To extract a .deb package (file fro http://www.ubuntuupdates.org/) you can use 7-Zip or WinRAR, extract the content to a new empty folder (MYCONTENT in the sample). The structure should look in the same way and ILISE will include the structure from your MYCONTENT folder in the IGEL Linux File System->Make sure that this is similar to prevent errors!
If you generate the shell script you will see the result in the editor, you can copy this script to the clipboard for use with the IGEL Universal Management Suite or you can generate a shell script (ilise.sh) which will be created in the MYCONTENT folder. This script can be executed during the IGEL Linux boottime and stays only in the deployed folder (for example: /custom/MYCONTENT/ilise.sh), the script will not be included into the IGEL Linux filesystem!
What type of .deb packages should i download?
Download and deploy packages for the Ubuntu Precise Release (IGEL Linux Version 4.x.x) x86 only, deployment of 64 Bit packages is not possible!
Can i deploy packages to the UD2 Multimedia (ARM Architecture)?
In general yes but you need to download ARM packages for Ubuntu and these packages are rare, if you only deploy certificates/graphics or simple scripts (none executable binary files) it should work but you have no change to run a x86 Application on an ARM Device.
Do i have create different packages for the IGEL Universal Desktop LX and the IGEL Universal Desktop OS?
No, you can use the same package for both IGEL Linux Versions (except the UD2 Multimedia).
Can i add extentions to the generated script?
If you want to add own extensions to the script you can add a "MyScript Area", this area alway will be located at the end of the script and will not be overwritten by the generator. There is only one protected area available per script and do not modify the header for the MyScript Area, otherwise your own script content is not protected anymore!
Attention: If you are using the ILISE "Force file integration" Option existing files in the IGEL Linux will be overwritten, this can be useful but it can also create Version conflicts and as a result not working functions or a not stable IGEL Linux, be very serious if using this option and test it very very serious!
Header for MyScript Area in ILISE:
#ILISE-MyScript Area
Please Note: All changes done in the script will be overwritten by the ILISE Generator as soon you generate a new integration script and if the changes are not done in the MyScript Area. The MyScript Area will be also removed if you load a script or reset ILISE back to defaults.
You can also load a generated script now, the script must be available with the filename ilise.sh in the content folder. If you have edited the ilise.sh script with an Windows Tool and the tool converted the script to the DOS format it will not work on a Linux anymore, you can fix this by loading and saving the script with ILISE again; ILISE is able to determine and fix DOS/Linux format issues automaticly but ILISE will not check or fix general syntax issues at all if you have done own changes to the script!
In the Editor you can use CTRL+ALT+C to copy and CTRL+ALT+V to insert text.
You can copy the generated script to the clipboard for use with the IGEL Universal Management Suite. If you're using the MyScript Area we recommend to always create the shell script, this enables you to keep your own modification for later use and if you want to add changes to it very easy.
It's possible to define often used code as snipplet (up to 15 snipplets are supported), you can store the snipplet code in the DATI subfolder ilisesnipplets.
Each snipplet is a simple .txt file, you can create own snipplets in DOS (via Notepad) or Linux (via VI) format. ILISE will convert you scriptlets to the right format automaticly. Please do not use empty lines to your snipplets, ILISE can handle it but during the execution on the Thin Client it can produce errors. Some sample sniplets are available in the snipplet folder. The snipplets will be added always to the end of the script if a MyScript Area is available. You can also add comments like (#My Script comment) to the snipplets, see also in the sample snipplets.
The ILISE Find and Replace function will replace all found strings in the script, this includes the generated part and the MyScript area. This can be useful if you want to perform a lot of changes in one step. The changes in the MyScript Area are permanent, changes in the generated script part will be overwritten once a new integration script is generated. Empty find and replace stings are not allowed by default.
How can i deploy a custom partition package?
After you have created the archive (.tar.bz2 or .tbz) file and the .inf file place these two files on a Webserver.
Now configure the IGEL Linux thru a profile or the local IGEL Setup, the following things needs to be configured:
1) Enable the custom partition in System->Firmware Customization->Custom Partition->Partition and enter the Size (for example 20MB) and the mount point, the mount point must be the same identical to the "CP target Mount Point" in the ILISE settings.
2) Enter a new download in System->Firmware Customization->Custom Partition->Download that points to the created .inf file on your webserver, if you are using the Microsoft IIS server make sure that .inf and .bz2/.tbz are added to the MIME Types, otherwise the IIS will not offer the file(s) as download and you will receive a error at the IGEL (File is not a archive... Bla Bla..).
3) If you have copied the generated Script to the Clipboard you can enter it System->Firmware Customization->Custom Commands->Desktop Commands->Custom Command Desktop Final (recommended by CCI). As alternative you can also execute the ilise.sh script from here, in this case you should enter:
chmod 777 /custom/MYCONTENT/ilise.sh
You can also execute the ilise.sh if using a command line for trouble shooting, a command line session can be created in the IGEL Settings->Accessories->Terminal Session. chmod 777 for the ilise.sh script is required to make the script excutable in the Linux system.
4) Excute the deployed application by using a Custom Application Session which can be configured in System->Firmware Customization->Custom Application or by using a command line session (see 3).
There are other ways to perform an integration/start of an application but i will only point to the most recommended one.
Please Note: A deployed application could require other applications or Linux .deb packages, ILISE will not verify dependencies to other package; this is your job. :-)

ILISE Linux Library clean up

If you deploy a package and you got an error like "libxyz.so.4 file is to short" or similar, this is related to the linux library handling. If several Version of a Linux library are available it can look like this.

libxyz.so.4 = Links to the real lib libxyz.so.4.3.1, 3.1 is the version in this sample.

If you deploy a package that contains the libxyz.so.4 and the libxyz.4.3.1 you will get a "file to short" error for this lib because in the way ILISE links the files linux is not able to point to the real library libxyz.so.4.3.1 and this is the reason for the error.

The clean up feature renames the libxyz.so.4.3.1 and removes the old libxyz.so.4 in a save way to prevent this issue, the clean up job needs to be done manual from the ILISE "Custom Partition Binaries" Menu. You can to this also manual and in any way you should verify the result.

If you start the task point it to the folder /your content/usr/lib or /your content/lib folder.

There is no warranty at all, use the application at your own risk! IGEL Technology and cloud-client.info don't provide any warranty related to the use of this tool. Test all results in advance!
This includes the generated results, please remember that no automatic generation tool can replace the human mind.
Test any result created by this tool in advance, we strongly recommend to use "virtual" Thin Clients if possible. 
Tested with: IGEL Universal Deskop ES 2.11.10x, IGEL Universal Desktop OS 4.12.150, IGEL Universal Desktop LX 4.12.150 and IGEL Universal Desktop ES W7 3.04.100
3rd Party Tools
3rd Party Tools are located in the DATI subfolder \helper, do not remove or replace the folder or the files located in the folder.
DATI is using the 7-Zip command line tool to create the .tar.bz2 file in the IGEL Linux Integration Script Engine (ILISE).
If you like our work and want to support us, please donate https://www.paypal.com/cgi-bin/webscr?cmd=_s-xclick&hosted_button_id=EGTTX7B49U56G

- Version 1.08
  Fixed ILISE directory mapping syntax to prevent double mappings
  Fixed ILISE create archive function if the folder name contains spaces (Engine freeze)
- Version 1.07
Added ILISE option to prevent the creation or link of any folders, only files will included into the existing folders in the IGEL Linux file system.
Added ILISE option to save/load the script generator options into/from the ilise.sh script.
Added ILISE option to add creation/user informations to the ilise.sh script.
Optimized DATI update check, DATI will check now if a internet connection is available before the update check runs.
Reworked ILISE Script Option handling (unset/disable not required/possible option).
- Version 1.06

Important: Please delete the dati.ini after update!

Added Option to configure automatic Update check for DATI during the application starts.
Improved Update Check feature.
ILISE added Linux Libary clean up, see in this ReadMe.txt for more information's.
ILISE "Create .tar.bz2" button will now also create the .inf file in one step, you still have seperate options for archive/.inf files in the ILISE Menu if required.
Fixed issue with the "Show Warnings" Option, the setting was ignored sometimes.
Fixed ILISE issue that protects an automatic generated script to be overwritten by the generator if no MyScript Area exists.
Fixed wrong commandline in the ILISE "write custom session" snipplet
Fixed ILISE issue that a .tar.bz2/.tbz archive was created successfull message shows up but the file wasn't created.
Added check to verify that all files are added by LISE to a generated script (Only if the "Dynamic file integration folder based" option is not used)
Fixed ILISE issue if a folder contains one or more subfolders and some files are not identified/added correctly to the script.
Fixed ILISE .tar.bz2 / .tbz switch.
- Version 1.05
ILISE has now a drop down menu that contains several features/options.
ILISE allows to edit the generated integration shell script now.
ILISE can now add a protected MyScript Area for your own extensions, this area will not be overwritten by the script engine.
ILISE can now load already created shell scripts (ilise.sh) if available in the content folder for the custom partition package.
ILISE now supports up to 15 custom code snipplets to be added to the ILISE MyScript Area.
Added find and replace function to ILISE, find and replace will modify all lines generated by ILISE and the MyScript Area by default.
Added "Reset Settings Option" to ILISE.
Fixed a small display issue with the ILISE Tooltip's.
Added Cloud-Client.info Website URL's to Info Menu.
Updated URL to IGEL's LUNA Script Language Manual for Windows Embedded Partial Updates, URL can be modified in the dati.ini if changed again.
Added Cloud-Client.info Whitepaper related to Linux custom partition basics as Helpfile (optional download).
New Feature: Help Download Tool, DATI will now offer the download and include of missing Helpfiles / Whitepapers.
Added change path option to ILISE for the 7za.exe if required or 7za.exe is located in an other folder
ILISE can now create .tar.bz2 or .tbz files (configured thru ILISE options), .tbz format/extension is used by IGEL Technology.
ILISE will now check that 7za.exe is available in the configured/default folder before creating a .tar.bz2/.tbz archive.
Custom Partition Package .inf file creator can now select .tar.bz2 and .tbz files to create the required .inf file.
Added Print Script feature to ILISE for the purpose of documentation, this will print the generated script incl. the MyScript Area.
Added DATI .ini file, the .ini file will be created if not exists and contains configuration settings for DATI.
Optimized code and graphics, dati.exe size reduced from 364KB to less then 220KB without loosing any features.
- Version 1.04
ILISE is nearly final (RC)
ILISE can now also write the Linux integration script as Linux executable shell script (ilise.sh) in the custom partition content folder.
Fixed issue with the Partial Update->Deploy several files from one folder function (always one file was not copied).
Fixed issue for ILISE if the content folder has no subdirectorys to prevent a not valid // script entry.
ILISE can now create a .tar.bz2 archive based on the set content folder for the custom partition.
Added some options to the ILISE script engine.
Added helper folder for add-on tools (currently 7-Zip command line tool is added to create the .tar.bz2 file).
Optimized ILISE Engine to provide a better user experience incl. a status Windows and User messages/warnings.
Added Tooltip's to all features in ILISE.
Updated cloud-client.info logo for the info window.
Reworked ReadMe.txt (The file you are reading at the moment...)
- Version 1.03
Included IGEL Linux custom partition integration script engine (Beta/Early Release).
Fixed display issue in the delete registry entry sub window for Windows Partial Updates.
Reworked sub window handling for better user experience.
Changed cloud-client.info icon and gfx to new 2013 design.
- Version 1.02
Support for Microsoft .msu update packages.
- Version 1.01
Added LX support to create a .inf file based on a tar.bz2 packet for deployment.
- Version 1.0 (March 2012)
First release incl. a whitepaper as manual.
Added Update check.



Manual for Windows based Thin Client deployments:  http://www.cloud-client.info/cms/index.php/menu-whitepaper/wp-igel/20-windows-es-partial-update

Update: The IGEL Linux Integration Script Engine (ILISE) coming with DATI Version 1.06 is fully compatible to IGEL Linux V4 and V5.

  Get our toolbar!  Subscribe to my videos
© 2013 cloud-client.info