Thursday 26 March 2009

The reason why...

The main reason why I scrap up my blogs with a lot of variety topics is that I need to get a confirmation about the whatever I learn by just scribbling, just as we did in the school days. So here instead of scribbling it down on some piece of paper which may vanish away anytime, I just type away something that I recently learnt. It brings about such a sweet feeling, you are making online notes on a specific topic, creating online contents for a audience and various other varsities that exists today in the web world.

Most of my posts are more likely to be in some kind of dogmatic or say... instruction mode... But then the readers here should realize that I'm just a student making notes. Its rightly said by someone "If you can explain what you have learnt, then I say, you have learnt in the real sense". The fact is undeniable that the proces of making such notes by the way of explaining someone makes your knowledge level not only pervasive but also serves as a great positive purpose for the people in the neighbourhood who are more likely to be interested in the topic looking for some solutions, ideas or a second opinion.

I've always believed in writing it down...no matter how least we may feel the importance of it. I remember the words of the Principal of my high school.."...a faint ink is always better than a sharp memory". So here I am. Please contribute and post your comments for a better perspective.

Wednesday 25 March 2009

Back to Application Packaging.

I'd expressed about "MSI packaging" in the post dated back 14th of June 2007 on what I think about the same. I'm back with a bit more understanding. I thought of putting all those in words here.

In my simple sense, it helps you to get an application installed in target machine as I mentioned earlier too. Usually when we say "package", we tend to think something beyond technical frontline. Simply pu up, a package is a collection of files and directories in a defined format. You could say its a application software... delivered in units or an archive or store of files and directories required for the software product or something. This work as per my perception begins after the entire application code is ready. A s/w product is required to be built into one or more packages so that it can be easily transferred to a distribution medium; for eg: AD's Group Policy (I think so but not very sure). Once distributed s/w product can be mass produced and can be installed by administrators.

In its 1st Step, we need to Create pkginfo file. This file is an ASCII file that describes the features of the package and the information which controls the flow of installation. Each entry in the pkginfo file is a line that establishes the value of a parameter in the following form:
PARAM= "value"

Some of the mandatory parameters are: ARCH, VERSION, PKG, CATEGORY and NAME.

ARCH (Specifies Package Architecture) is a set of alphanumeric tokens which indicates the architecture associated with the package. pkgmk produces an installable package to be used as input to the 'pkgadd' command. The package contents are in the directory structure format.


VERSION (Specifies Package Version) parameter in the pkginfo file identifies the version of the package.


PKG (Package Abrreviation) is just the short name or Abbreviation for the package that is defined within the parameters of PKG in pkginfo file. It should be further bound within certain characteristics. I'll discuss that when I'm clear on that part.


CATEGORY (Defines Package Category) parameter in the pkginfo file precisely specifies to which categories a particular package belongs to. A package should belong to atleast either "System" or "Application" category. If a package belongs to more than one category, we need to specify the categories in a comma-separated list.


NAME (Defines the Package Name) is the full name of the package which as rightly assumed, is defined by NAME parameter in the pkginfo file. Specifying complete package names precisely is very important as system administrators often use package names to determine whether a package needs to be installed.


Lets steer a bit further and look ahead,

How to Create a pkginfo File
  1. Using your favorite text editor, create a file named "pkginfo". You can create this file anywhere on your system.

  2. Edit the file and define the five required parameters. The five required parameters are: ARCH, VERSION, PKG, CATEGORY and NAME.

  3. Add any optional parameters to the file.

  4. Save your changes and quit the editor.

This was not even a gyst. Let me go through, study and I'll be back again on this topic soon with my humble explanation; expecting to get the feedbacks and lessons which would surely share to my knowledge level too.