Logo

Issues

Mar - Oct 2005

Feb 2005
Jan 2005
Dec 2004
Nov 2004
Oct 2004
Sept 2004
Aug 2004
July 2004


Links

Syllable
OSNews

March - October 2005 Newsletter

Syllable is an open source desktop operating system, with its own kernel, GUI and libraries. The Syllable Development Newsletters are condensed reports on the project's activity -- highlighting progress made and other project updates. For previous issues, please see the links on the left of this page.

There were 2,189 posts to the Syllable mailing lists between March and October 2005 (inclusive). It's been several months since the last issue, due to the author being busy elsewhere, but this issue catches up on all the major developments since. And there's plenty to read about -- the OS is making great strides, with new features, drivers, software and updates all over the map! Read on to see what's been happening...

Contents




1. New PDF reader

PDF, the well-known document format developed by Adobe, has become something of a standard for transferring files between different operating systems -- MS Word documents can get mangled when opened in a different word processor. Prolific Syllable coder Arno Klenke announced his port of Xpdf, a popular PDF reader for UNIX-like systems. His post to the mailing list:

The first beta of xpdf 3.0 is now available for syllable. Please note that it doesn't support all the features of the xfree version yet. The binary is available here:

http://www.liqwyd.com/arno/xpdf-beta1.zip

The sources are also available:

http://www.liqwyd.com/arno/xpdf-beta1.src.zip

To build them you need to build and install freetype 2.1.3 (!) first because newer versions won't work. Just download the source, replace the config files with the ones provided by Builder and install it to somewhere like /usr/freetype_xpdf/. Now unpack the xpdf sources and build it with:

./configure --with-freetype2-includes=/usr/freetype_xpdf/include/freetype2
make xpdf

If you look through the sources you will see that all the core and rendering code of xpdf is completely OS independent and so it was very easy to port this application. As always, please report any bugs!

Project lead Kristian Van Der Vliet tested it out on a 256-page document, and found it to be fast and reliable. Marlon Pause was impressed too. Shortly after, Arno announced beta 2 of Xpdf, which can be downloaded from here.



2. SDL port and various apps

SDL, the Simple Directmedia Library, is used widely on UNIX flavours for games, emulators and multimedia software. Being lightweight and with no large dependencies, it's the ideal choice of library for coding graphic and sound-intensive software -- and with such a weight of software behind it, a Syllable port was more than welcome. In June, Arno Klenke announced to the core developers for testing:

I have seen many requests for a real SDL port and so I just did it. The basic support was really easy and fast to do (basic port was running after just an hour) because I could use a lot of code from the BeOS driver. Currently video and audio is supported. And yes, sdlquake and sdlquake2 are running, although sdlquake is slower than in linux and also than the native Syllable port.

Naturally, this brought much cheer. The SDL port suddenly opened up the OS to a whole wealth of software (just browse around freshmeat.net for programs built on SDL -- there are hundreds). Later on, Arno notified his work to the community:

To avoid doing duplicate work I now announce that I have an almost complete port of sdl (video and sound) which already runs quake, quake 2 and bochs. It will be released with Syllable 0.5.7.

In November, Mike Saunders started porting various SDL programs to Syllable, most of which he made available on his website. These include DOSBox, SuperTux and early work on ZSNES -- plus a build of SDL that also included SDL_mixer and SDL_image, as used by many apps.




3. Whisper rewrite

Whisper is Syllable's email client, written by Kristian Van Der Vliet. The original version, although workable, was in need of many updates so Vanders decided to rewrite the program from scratch. His initial post about the first preview version:

Following on from the release of 0.5.6a, I'm happy to announce the release of Whisper 1.0, Alpha 1

Whisper 1.0 is a total re-write of the client (libpop3 & libsmtp remain, with more bug-fixes) Whisper is now more robust, faster and built to be a real email client, with all the features you'd expect to find.

Being an alpha, Whisper is incomplete, but Alpha 1 does already feature:
  • MIME support, including support for attachments (Receiving and sending)
  • Faster mailbox loading
  • Hierachical mail folders
  • SMTP and "POP3 before SMTP" authentication
  • POP3, with multiple POP3 accounts
Admittedly, not much on the surface, but far better than previous versions of Whisper!

This was followed three months later by alpha 2, which included massively improved attachment support, new toolbars, GUI cleanups and a multitude of small additions. Vanders also supplied a screenshot. In early October, he announced the third alpha:

Whisper Alpha 3 is out now. Get it from

http://www.liqwyd.com/syllable/whisper-alpha3.bin.zip
http://www.liqwyd.com/syllable/whisper-alpha3.src.zip

The big change is the addition of import/export support, and plugins to import from Outlook Express .dbx, Outlook .pst and UNIX mbox and export to UNIX mbox

I've also fixed a couple of bugs; no more garbage at the end of your outgoing emails and no more "Failed to connect to server" if you try to check your email more than once. I've also made further tweaks to multipart handling so Whisper should be even better at deciding which parts to show you, which to hide from you and which to attach and inline for you.




4. Syllable 0.5.7

On the 28th of August, Syllable 0.5.7 arrived. This is due to be one of the last 0.5 releases before the 0.6 series starts, when the API will have settled. Developers can then begin coding applications on top of less-frequently changing foundations. Vanders posted to the list:

After an epic battle which involved recompiling all of Syllable, a week of testing, a near-fatal mistake involving "format" and a long weekend of headaches, Syllable 0.5.7 is finally available for download!

The biggest change in this release has already been discussed; everything has been recompiled against the new libc, and we have broken binary compatability through the removal of all the old libgui/libatheos/libsyllable versions.

There are also some new drivers, new GUI classes, new bug fixes, and no doubt, new bugs.

Those of you who are upgrading from a previous release should note that the upgrade is almost as big as a new installation; almost everything will be updated. This has not been heavily tested and although I am sure it will work in most cases, it is not guaranteed to break old or very complex configurations. Those of you with more simple installations may wish to consider simply re-installing from scratch. Anyway, download, install, recompile, test, play, have fun!

Highlights from the changelog: new Savage video driver; i810 audio and rtl8139 network driver updates; icons shown while dragging; DM_BLEND support for line drawing; new shutdown process; ColdFish music player updates; 'Launch' utility; new login screen; and more.




5. Moving towards 0.6.0

Syllable 0.6.0 will be a major release for the project, as it'll be the bedrock on which many new developments can take place. The goal is to have stable foundations (particularly the API), making it easier for coders to write apps and add new features without everything breaking. In mid-September, Vanders outlined his plans:

I feel I need to set out a basic plan of getting from 0.5.7 into 0.6.0 with the minimum of fuss. I don't want us to lose the momentum we've found over the last few weeks. So here goes what I see as required, in cronological order:

  • o Get grep & sed built against the new Glibc, which kills the last dependencies on the old libc in the base install.
  • o Update Glibc (I'm building what will be 2.3.5 right now, which is ~2 months behind current CVS)
  • o Get all the toolchain packages rebuilt against Glibc:
    * Gcc 3.4 (Done, but we should consider Gcc 4.x)
    * Binutils 2.15
    * m4
    * make
    * Automake
    * Autoconf
    * nasm
    * gawk
    * Ruby
  • o Get the rest of the dev. tools rebuilt:
    * CVS
    * OpenSSH (Required for CVS)
    * Diffutils
    * Patch
    * Doxygen
  • o Drop the old Glibc from the system at this point
  • o Rebuild the rest of the useful packages

At this point we should be in a position to release 0.6.0, which will not require the old Glibc.

Daniel Gryniewicz suggested waiting for GCC 4 to stabilise first, based on problems he'd seen in bleeding-edge Linux distros, while Arno Klenke announced another batch of updates:

I am now using an appserver which stores the windows as bitmaps in the video memory!

Current status:

Done:
  • *TopLayer class that manages the backbuffers of the windows (works perfectly)
  • *Some methods in the DisplayDriver class that implement the video memory manager (in early stage but seems to work)
  • *Converted the sis3xx and i855 driver to the slightly changed driver interface (no hardware cursor, BltBitmap has some new parameters) and added support to handle the video memory bitmaps (basically just the source/destination offset and pitch registers have to be set correctly).
  • *Support for more cards of the 6x00 and 7x00 series in the geforce driver (driver already released)
  • *Synced sis driver with the xfree driver. Untested support for the sis 761 and the xgi volari cards
  • *Untested support for the i915/i945 chipset in the i855 driver
  • *I hope I have fixed the appserver-crash-on-window-close bug




6. Other news and updates

And3mD posted about the beta release of his file manager:

I've released And3mD Commander 1.00 beta 1. What do you think about it?

I have some problems with english, can someone check english translation: http://and3mdcommander.prv.pl/download/and3mdcmd_eng-1.00b1.cd

Download: http://and3mdcommander.prv.pl/download/and3mdcommander-1-00-b-1.zip

WWW Site: http://and3mdcommander.prv.pl

Screenshot: http://and3mdcommander.prv.pl/screenshots/s01cmd100b1.png

Meanwhile, Vanders noted that AEdit 2.1 was finally in the CVS tree. Arno Klenke was also making progress on adding ACPI support to Syllable -- already able to read the status of laptop batteries.



Newsletter edited by Mike Saunders.