Thursday, 15 May 2008

How Aspell-ml made me learn rpm-build command

Aspell-ml is the GNU Aspell Malayalam Dictionary Package. The malayalam worlist for this package in prepared by Santhosh Thottingal, member of Swathanthra Malayalam Computing (SMC). In Fedora, the aspell-ml package will be maintained by Rajeesh. K. Nambiar, SMC. He will also be the maintainer for Hunspell-ml.

Now lets move on to the story how Aspell-ml helped me to learn the rpmbuild command that is used to build a rpm?

Rajeesh, unfortunately had some problems with his Fedora machine and then I had no other options but to help him to rebuild the aspell-ml package, so that aspell-ml could get into Fedora asap. Rajeesh had promised to guide me well and provided the step by step instructions with each and every command to be used. I was very sure things would not quite work for me with IRC, hence moved on to phone support and used IRC only for the commands.

Steps I did to rebuild Aspell-ml:

1. First thing I had to do was install my test machine with F9.

2. Then I downloaded the spec and rpm from:
Spec URL:
http://download.savannah.nongnu.org/releases/smc/Spellchecker/aspell-ml.spec

SRPM URL:
http://download.savannah.gnu.org/releases/smc/Spellchecker/aspell-ml-0.03-2.fc9.src.rpm

3. I was then asked to create a folder called rpm-build with sub folders SPECS, SOURCES, RPMS, SRPMS in my home folder and moved the aspell spec file and srpm to SPEC and SRPMS respectively.

4. As per https://bugzilla.redhat.com/show_bug.cgi?id=403911, Parag's comment#19, we made changes in the spec file.

5. Rajeesh then typed in xchat the great command "rpmbuild -ba ~/rpm-build/SPECS/aspell-ml.spec. Ofcourse, when I copied and pasted it on the terminal, it didnt work cause, as usual I had not copied the command fully. This time I had missed the "c" in the word spec while copying that from xchat. Second trial showed we had to install the "rpm-build" package. With "yum install rpm-build" that was done and again I tried the rpm-build command crossing my fingers. Yes, this time I did it.. I told Rajeesh "+ exit 0".

6. Now that all was done, the files were ready to be uploaded back in the savannah. But there again things were not smooth, something else was waiting for me. I had only created an account for myself but had not updated my ssh and gpg keys. With Santhosh's and Rajeesh's help I could update my account (thanks to #smc-project), but could not upload the file as the rsync command showed some error with the public key. Even after several trials, I could not make it. So finally gave up and decided to send the files to the great Thottingal to upload it.

Aspell-ml package is all final and will be soon available in Fedora. Rajeesh's next package in Fedora will be Hunspell-ml. If his Fedora machine is yet to be fixed, I would be more than happy to help him build/rebuild this package too. Oops.. maybe I should put it the other way - Rajeesh would be more than happy to help me to do it. ;)

It was really a nice experience. I had no confusions as Rajeesh always typed in the command on IRC, and before pressing the enter button he would say "ഇതാ വരുന്നു കമാന്‍ഡ്" ("Here comes the command")

Hooo...!!! I blogged finally.......

5 comments:

രജീഷ് || നമ്പ്യാര്‍ said...

Ani,

In step#2, you forgot to mention downloading the tar ball from ftp://ftp.gnu.org/gnu/aspell/dict/ml/aspell6-ml-0.03-1.tar.bz2

ani said...

Thanks Rajeesh. Hmm.. so one mistake right?? Still, I guess I have an ok memory. :)

Rahul said...

Hi,

Instead of setting up a RPM build environment manually, there is a much easier way to do it:

# yum install rpmdevtools
# rpmdev-setuptree

The package also includes many incredibly useful utilities

# rpmdev [tab key]

and read the man pages to learn more. Good start anyway. Here is a little secret. I am hoping that language maintainers actually get to the state where they can atleast co-maintain the software packages they are most associated with.

Baiju M said...

Hi Ani,

Congrats for the first blog post !
Please continue it :)

jinsbond007 said...

hello,

Whenever am away, a lot of things happens in the irc!!!

Anyways, i like a small help, any idea how the dictionary program in GNOME works(please don tell me browse!!! too lazy!!!)? I got a friend who like to add malayalam support to it. But he needs a project to be done as big as a final year b tech project. So if it is that big just let me know. I will ask him to do. If something small, just ping me, i will try to fix it up.