_ _ _ (_) | | _| |_ _ ____| |__ _ _ (_ _) |/ ___) _ \| | | | | |_| ( (___| | | | |_| | \__)_|\____)_| |_|\__ | (____/ Tichy copyright 2008 Guillaume Chereau (charlie@openmoko.org) This file is part of Tichy. Tichy is free software: you can redistribute it and/or modify it under the terms of the GNU General Public License as published by the Free Software Foundation, either version 3 of the License, or (at your option) any later version. Tichy is distributed in the hope that it will be useful, but WITHOUT ANY WARRANTY; without even the implied warranty of MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU General Public License for more details. You should have received a copy of the GNU General Public License along with Tichy. If not, see . == ABOUT == This is a python applets manager. My goal is to make a very simple environment for people who want to write applications for OpenMoko. The approach is very different from what we can get in the currents available images for OM. I came to the conclusion that the current way of writing applications for desktop computer is not suitable for mobile phone, where applications need to be very tightly connected to each other. The main ideas of tichy are : * Everything is written in python (Or cython/pyrex if we need speed). So there is no choice of the language here, all the applets have to be written in python. It is still possible to start external applications, but they won't be able to communicate with the rest of the system. * All the applications run in the same python interpreter. Once again it is possible to start external applications that will run in separate process, but they won't be able to communicate with the system. * Everything is plug-in. Even the most fundamental services (like file browser, keyboard, etc) are defined into plug-in. * Support for tasklets ! This point is in fact very important to me. Many applications will need to wait for events, but I don't want to use threads, because it is too heavy and complicated to use for normal application. The solution is to use callbacks. But code using callbacks can be ugly when we do sequential operations ; Except if the language we use support re-entrant function, that can be used to construct tasklets. For me this is THE killer feature of tichy. == INSTALL == This is just a testing version, there is no installation Just copy this directory anywhere, cd into "test/", and run "./tichy" To make it run faster, you can compile the cython version of the gui module : Go into ./tichy/guic type: make That should create all the .so files, then the execution is much faster. == RUN ON OPENMOKO == This is a little bit tricky, I won't explain the steps in details, contact me if you have problems # Get the FSO image # Install python-pygame # Compile the files in guic using OM Toolchain # Copy everything on the OM # export DISPLAY=:0 # export SDL_VIDEODRIVER=x11 # because framebuffer doesn't work yet :( # go into tichy/test # ./tichy == AUTHORS == Guillaume "Charlie" Chereau, main developer. charlie@openmoko.org Michael "Goodwill", openmoko /a/ webhippo.org