User:Hemant goyal

From OLPC
Jump to navigation Jump to search


@ goyal.hemant
gmail.com
IRC Nick: hemantg
#sugar
Server: freenode
Nuvola apps kworldclock.png This user's time zone is UTC+5:30.

Hemant Goyal

About

I am an undergraduate student at Netaji Subhas Institute of Technology [1], majoring in Information Technology. I have been accepted as a Google Summer of Code Student for my project Integration of Speech Synthesis in Sugar Environment [2]. Previously I was involved with the OLPC community as a volunteer and Summer of Content Intern.

Personal Website: hemantg's personal website lists some of the work that he has done [3].

Google Summer of Code Weekly Updates

Week Ending - Jun 10, 2008

Executive Summary

In this period, I worked on the RPM package of speech-dispatcher and fixed several shell scripts and subtle problems with the package. I spent the week discussing the design and implementation of each Use Case [4]. A potential problem with speechd API has been identified and it has been decided that the speechd API be modified suitably and that we request speech-dispatcher community to accept the patch and ship it upstream. The priority tasks for the next week are : RPM package completion, speechd API modification, sugar speech settings preservation.

RPM Packaging update

speech-dispatcher RPM package

In the past two weeks I have primarily worked on fixing various directory and file ownership issues for the RPM package. I worked on the init script for auto-starting the speech-dispatcher daemon, and fixing certain scriptlets for the installation of speech-dispatcher. Finally, I am also working to get sponsored from the Fedora Maintainers community so that I can build the speech-dispatcher package in the Red Hat build system. I wrote two informal reviews of new RPM packages for this purpose.

The changelogs for the RPM packaging are given below -:

  • Sat Jun 07 2008 Hemant Goyal <goyal.hemant@gmail.com> 0.6.6-8
    • converted speech-dispatcher-cs.info to UTF-8 encoding
    • removed multiple file listings of /usr/lib/python2.5/site-packages/speechd/_test.py and fixed its mode
    • added init script as a SOURCE instead as a patch
    • duplicate Requires have now been removed
    • Timestamping of files has now been added
    • Install script fixed
    • init script fixed
  • Tue Jun 03 2008 Hemant Goyal <goyal.hemant@gmail.com> 0.6.6-7
    • changed license of base package to GPLv2+ and GPL
    • changed license of all other packages to GPLv2+
    • fixed install sequence using cleaner for loop and pushd and popd commands
    • added init script for speech-dispatcher daemon
    • added COPYING to doc in base package
    • removed comment after /sbin/ldconfig
    • resolved rpmlint errors for base package [except UTF-8 encoding error for (cs) documentation file]
    • renamed long_message to spd_long_message and run_test to spd_run_test
    • reset mode of _test.py to 0755

For older changelogs you can access http://www.nsitonline.in/hemant/stuff/speechd-rpm/speech-dispatcher.spec

Design Considerations

speechd python API

We have discovered a potential problem with the python bindings for speech-dispatcher which force the clients to use threads when speechd API is used along with pyGTK applications. The entire discussion with the speechd and pyGTK community is available here : http://www.mail-archive.com/pygtk@daa.com.au/msg15868.html and http://lists.freebsoft.org/pipermail/speechd/2008q2/001200.html

Several solutions have been proposed -:

  • continue using threads - not a good idea
  • modify the speechd client API to use gobject_io_add to monitor socket activity. (tomeu and daf have given examples of how this can be done here : http://pastebin.be/11938)
ideas for speech-dispatcher sugar default settings preservation

We are currently analyzing the possible ways to store the sugar speech settings -:

  • a decision has been taken that /etc/speech-dispatcher/speechd.conf will not be modified
  • sugar will maintain its own default parameters file that will be read when sugar is started up.
  • a decision about how other clients can use and access the sugar default settings still needs to be taken

Thanks

erikos is mentoring me on this project. tomeu, eben, and daf have also been helping me through the project design and various coding problems that I have faced. My thanks are also due to SJ for keeping us updated about the GSoC programme requirements. Kudos to all of you for being so helpful!

Cheers!