Searching informations (was Re: dsme, Re: Would like to know the status of (was RE: Corporate ownership of open source projects [LWN]))
Thats a great site for searching the archives BTW, thanks! Allow me another plug for tabletSearch: http://www.google.com/coop/cse?cx=014783630360138230012%3A5hwd9yj0uno This is a Google Custom Search Engine (CSE) that I put up and maintain. It allows specific searches for Maemo/NIT-related information; I find it extremely handy whenever I look for anything in this domain. As an example of your needs, just search for dsme and look at the results :-) In addition, I also made a plugin for the Internet Search Applet on the Hildon Home screen. You can get it here: http://tomch.com/wp/?page_id=63 Best regards -Tom ___ maemo-developers mailing list maemo-developers@maemo.org https://lists.maemo.org/mailman/listinfo/maemo-developers
Re: application icon on task navigator
I wrote a sort of tutorial in the maemo wiki: http://maemo.org/community/wiki/packagebuildingwithoutlinuxusingpypackager/ This solution works for me (even altough I still don't get it what the icons and their sizes SHOULD be and WHY:-) Best regards Tom I asked a similar question earlier this month, and got an email reply that the icon specified in the dekstop file with the Icon= should work but didn't. In addition to the application manager there are at least three places where an application icon appears, with different sizes. (1) In the Task Navigator (64) (2) In the Application Switcher - most recently launched (26?) (3) In the Application Switcher - all running (40?) There are also at least four different places where I've seen other application place icons themselves when installed: /usr/share/icons/hicolor/26x26/hildon /usr/share/icons/hicolor/40x40/hildon /usr/share/icons/hicolor/scalable/hildon /usr/share/pixmaps I've put icons in all of them. But still the application switcher shows the generic blocks. Any suggestions would be much appreciated. -- Want an e-mail address like mine? Get a free e-mail account today at www.mail.com! ___ maemo-developers mailing list maemo-developers@maemo.org https://lists.maemo.org/mailman/listinfo/maemo-developers
Re: Application manager category view proposals
What about improving search? Are categories useful at all for finding things? I'd prefer good browsing over searching. The N810's keyboard's good, but it's not as convenient. What about something in-between? Again and again, I find myself trying to use an intuitive, but alas non-existing feature in the list view: Let me press a key on the keyboard (e.g. n) and jump to the first package whos name begins with that letter (nako) (In fact, this might even or rather concern the list control of hildon/gtk itself, or not?) Best regards -Tom ___ maemo-developers mailing list maemo-developers@maemo.org https://lists.maemo.org/mailman/listinfo/maemo-developers
Re: Contribution code, ...
Great link - it worked for me (Switzerland)... :-) Thanks to Nokia for the generous discount! -Tom Hi, Via http://direct.nokia.com/countries.aspx?model=N810 Cheers, Jan On Jan 3, 2008 6:08 PM, Aniello Del Sorbo [EMAIL PROTECTED] wrote: Damn the Italian one is still not accepting it!!! How did you make it work ? Via direct shop in Belgium or thru nseries.com ? On Jan 3, 2008 5:57 PM, Jan Jansen [EMAIL PROTECTED] wrote: Hi all, Just checkout http://www.jan-jansen.be Cheers, Jan ___ maemo-developers mailing list maemo-developers@maemo.org https://lists.maemo.org/mailman/listinfo/maemo-developers
Re: Is it possible to make a well-behaved pyGame app with maemo-python ?
Exactly my feelings. Compared to development on Palm or Windows Mobile, this is hell :-) I spent 2-3 evenings on mClock, and at least a dozen on the packaging etc. Something else: make sure your service name is something like com.nokia.yourapp, and NOT com.yourdomainname.yourapp or so... And in the osso context, only connect to the yourapp part of the service, not the full service name... Oh darn... -Tom Thomas D. Waelti wrote : However, I have been unable to adapt the mClock example for the service file successfully. As soon as I reference the X-Osso- Service value in the desktop file, I get a lengthy Loading... banner and nothing else, even though I call osso.Context() early in my code. I must be missing something still... Does the service really load your app? Try to launch the application manually from xterm using the same command that you wrote into the service file. Does it come up then? Yes, it's exactly the same line as in the .desktop file, and it does load the app by itself. This is all very frustrating. I think it's bad for the app portfolio of the tablet, and its users in general, when amateur programmers like me have to spend hours after their program is finished, just to understand how to put its icon in a menu and actually get it launched from there... all because of an arcane and somewhat under-documented packaging system that's only really grokable if you have a good experience of Linux and Gnome beforehand. I'm willing to persevere, but I guess most normal people trying to port their useful or fun little python app to their tablet would have given up by now. Also, I've noticed that when pressing the Home button, in the task list the app has the correct icon by is listed as unknown, although the code does call pygame.display.set_caption(). Is there a hack for this too ? No, this is a known bug. Somewhere between SDL and Hildon, this information gets lost. Identical on all pygame apps. (NOT in Pymaemo, see my bug report in https://garage.maemo.org/tracker/index.php?func=detailaid=1597group_ id=40atid=229) Thanks for that -- at least I can stop worrying about that particular bit ! :-) ___ maemo-developers mailing list maemo-developers@maemo.org https://lists.maemo.org/mailman/listinfo/maemo-developers ___ maemo-developers mailing list maemo-developers@maemo.org https://lists.maemo.org/mailman/listinfo/maemo-developers
Re: Is it possible to make a well-behaved pyGame app with maemo-python ?
Please check my article in the wiki: http://maemo.org/community/wiki/packagebuildingwithoutlinuxusingpypackager/ Hope it helps (even if you don't use pypackager) Best regards -Tom By well-behaved I mean an app which appears as an icon in the taskbar like a proper Hildon app. I have copied and modified .desktop and .service files of such apps made with PyGTK, but pyGame seems different. If the .desktop doesn't reference an osso service, the app starts from the menu, but there is no icon in the taskbar (and no xx is starting during launch). If it does, the xx is starting message appears for some time, but the app never starts. Is it possible to get this right ? If so, is there a Howto somewhere ? Yes, it's indeed possible. Kagu ( http://www.kagumedia.com ) is a pygame app; you might want to check it out. I suspect http://maemo.org/community/wiki/gamedevelopment/#7179b7084dd3339e00887 9a088142aae may also be helpful. ___ maemo-developers mailing list maemo-developers@maemo.org https://lists.maemo.org/mailman/listinfo/maemo-developers
Re: maemo downloads - be prepared
While revamping, please make sure to correctly configure the MIME types on your server. Currently, you have the file extension .deb wrongly configured as mime-type application/x-archive. This makes it impossible for Opera to directly open a package through the programs manger after downloading. Therefore, please change the MIME type for .deb to application/x-debian-package - it will ease the installation of downloaded files a lot. Thank you very much -Tom We plan to launch the revamped http://maemo.org/downloads this week. We are just polishing the last details. Some things application developers need to know to be prepared: - The main page will feature OS2007/Bora software as default, but not for long. The OS2008 category will be already activated and ready to receive submissions. This will be the default page as soon as the N810 is out. fyi tablet users will see apps for the OS they are using automatically. - Screenshots are widely featured in the downloads main page, category listings and searches. If you app doesn't have a screenshot it will feature a gray rectangle with an ?. - Functional install file is the main criteria to sort listings. If you provide it your app will go up. If you don't your app will go down. - Stable / Beta / Alpha quality will be printed in bold in the application pages. Make sure the quality level assigned corresponds to the last version uploaded. ___ maemo-developers mailing list maemo-developers@maemo.org https://lists.maemo.org/mailman/listinfo/maemo-developers
Re: Making my app. appear on the Navigator menu
Thank you very much for your valuable feedback! You need to provide D-BUS service only if: - You handle D-BUS messages in general (e.g. because you don't want the caller of your application to care about whether your program is already running or not) - You want to prevent user from (accidentally) running several instances of your program at the same time But shouldn't most applications provide a D-BUS service so that they can receive system messages (low battery, shutdown, screen blanking) and gracefully handle them? (kind of best practice??) And no, my Icon doesn't yet show up in the tasks - but at least I can see and launch it from the Extras menu :-) [...] And with that comes my other issue: the infowindow keeps being in the foreground for at least 20 seconds even if the app has finished loading long ago. Annoying. Both issues are because the WM_CLASS provided by your application window and the one specified in its .desktop file do not match. Therefore Maemo Task Navigator cannot match what was started from the menu and the window the application opened. Therefore the startup banner doesn't go away and your window doesn't show up in the tasks. [...] Gtk sets WM_CLASS automatically to the application (binary) name, so this is usually only a problem for non-Gtk apps, e.g. SDL games. See: https://bugs.maemo.org/show_bug.cgi?id=24 http://lists.maemo.org/pipermail//maemo-developers/2006- March/003513.html Whew - this clears it up. mClock currently is a pure Pygame thing, so that's why the WM_CLASS was needed. Now I understand. I was confused because: - I read somewhere about the use of WM_CLASS not being necessary anymore - Some apps I dissected had the WM_Class in their .desktop file, but nowhere in their app code, so it seemed unused (probably because they were GTK apps) So I now fixed this and the icon shows up in the TN. Cool :-) However, the TN still doesn't know the NAME of my app! (Fortunately, I'm not alone with this problem - UKMP has the same issue as I saw by coincidence) -When in normal mode, pressing the Home icon brings up TN with my mClock icon, but named as unknown -When in Fullscreen mode, pressing the Home icon brings up TN with my mClock icon, but named as unnamed (just like with UKMP) What is missing now? How can I tell TN the name of my App? Thanks again! -Tom ___ maemo-developers mailing list maemo-developers@maemo.org https://lists.maemo.org/mailman/listinfo/maemo-developers
Re: Making my app. appear on the Navigator menu
I can really feel with David, as I encountered exactly the same issues when developing mClock during the last few weeks. While the N800 motivated me enough to plunge into Linux development, some issues around the Hildon Dekstop and D-Bus were indeed extremely frustrating. The problem I'm having now is understanding what I'm supposed to do to fix this. Having looked at all of the documentation I've listed above, I began reading [...] i suggest you convert the energy you put in writing those long emails into reading carefully http://maemo.org/development/documentation/tutorials/Maemo_tutorial_bo ra.html http://maemo.org/development/documentation/how-tos/3- x/howto_new_application_bora.html My biggest problem is that all of the instructions I've read so far insist on giving me examples, and I can't pick out which things are relevant to me and which are not. [...] studying maemopad is a good exercise to understand what's going on (apt-get source maemopad), it worked for me. Isn't this a very non-efficient way to achieve something, especially if someone's needs differ a bit? Normally, there should be enough basic documentation covering a theme, and the example would then show the real-world application of it. The docs you quote are a good start - but not sufficient, as they only show how, but don't tell why - which is crucial to understand the area and be able to resolve problems. D-BUS service file is installed in “/usr/share/dbus-1/services/” and maemo GUI needs to be restarted with “af-sb-init.sh restart” before D-BUS daemon recognizes it. But isn't this only valid for Scratchbox? IIRC, I can't do this in xterm on my N800. My app still doesn't properly connect to the D-Bus, even altough I did exactly like the examples tell me (PyMaemo doc) and how I could observe in various examples that I dissected. I believe this has something to do with services keeping running even after an uninstall of a service file or with services not getting up and running even properly. (I did a lot of installs/uninstalls of my app) Any offers of help? Or is this going to be another of my questions that disappears into a black hole never to get answered? Using PyPackager (www.khertan.net ), I build my simple .debs directly on the device. Makes it much easier to get started in a simple way. -The yourappname.desktop file must go to usr\share\applications\hildon -The yourappname.service file must go to usr\share\dbus-1\services -Put a yourapp.png (26x26 pix) under usr\share\pixmaps Install OpenSSH, then connect as root to the device. Now SFTP through the directories, download what interests you and look at it. This way, you can also control if your files ended up where you wanted them... The N800 is an interesting piece of kit, but without MUCH better documentation and properly integrated development tools, it is too expensive to write for and more trouble than it's worth. welcome to the embedded world, no you're no more under windows sitting comfortably behind visual studio's brilliant debugger :) Even if this is the embedded world, stuff must become much better documented if Nokia wants to gain more support from developers. One thing Microsoft excels at is in documentation, example code and support (you get what you are paying for ;-) In the end, it is the maturity, ease-of-use and extent of the available software that makes a platform successful. Right now, its is still too hard for the less-than-hardcore devs to get up and running on Maemo. Which is a shame, because the concept and the device are fantastic IMHO. But then, this is a young platform that is still ripening... In my example, I had the code for mClock done after a few hours, thanks to the ease of use of Python with Pygame (even if it was my first ever Python app). OTOH, I literally wasted more than double that time in trying to get the D-Bus service to properly work with my app. And no, my Icon doesn't yet show up in the tasks - but at least I can see and launch it from the Extras menu :-) [Currently, my app doesn't seem to connect to it anymore, as I can't seem to stop the screen blanking with display_blanking_pause; even altough I had it up and running one evening... However, I DO launch the app using the D-Bus service (at least I get the mClock is loading... info window when starting it from the desktop and the app comes up. And with that comes my other issue: the infowindow keeps being in the foreground for at least 20 seconds even if the app has finished loading long ago. Annoying. (Another long mail, but at least this shows the energy and enthusiasm available :-) Best regards -Tom ___ maemo-developers mailing list maemo-developers@maemo.org https://lists.maemo.org/mailman/listinfo/maemo-developers
osso.Context vs. PyGame: osso.DeviceState(context).display_blanking_pause() issue
Some of you might have seen the screenshot of my (work-in-progress) Python-based maemoClock application on the itt forum However, I've now wasted too many evenings trying to fix a strange issue and would be very glad for any help/ideas: I'm trying to use the osso.DeviceState(context).display_blanking_pause() in Python to keep the screen from dimming and blanking. However, while the following codesnippet works on Benoit's (pygtkeditor) IT, it just won't work on my N800, freshly flashed, Python 2.5 installed :-( Here is the relevant code prototype: ## #!/usr/bin/python import pygame from pygame.locals import * import os import datetime import math import osso import gobject #from sun import * EVT_STEP = pygame.USEREVENT EVT_STEPSCREEN = pygame.USEREVENT+1 backBottom = pygame.Surface((800, 80)) # Class that handles all display stuff class display: def __init__(self): pygame.init() pygame.display.set_caption('maemoClock') self.scale = False self.screen = pygame.display.set_mode((800,480),FULLSCREEN,16) self.back = pygame.Surface((800, 480)) def UpdateTime(self):#Simply write time and date onto the screen #Reset bottom to black self.screen.blit(backBottom, (0,400)) #Update time font = pygame.font.Font(None, 96) theTime = datetime.datetime.now().strftime(%X) theDate = datetime.datetime.now().strftime(%a %d %b) textTime = font.render(theTime, 1, (128, 128, 255, 192)) textDate = font.render(theDate, 1, (128, 128, 255, 192)) self.screen.blit(textTime, (0,self.screen.get_height()-textTime.get_height())) self.screen.blit(textDate, (self.screen.get_width()-textDate.get_width(),self.screen.get_height()-textTime.get_height())) #Update display pygame.display.flip() #Display- def keepDisplayOn(device_state): print keepDisplayOn() at + datetime.datetime.now().strftime(%X) if device_state is not None: device_state.display_blanking_pause() print display_blanking_pause() at + datetime.datetime.now().strftime(%X) return True#or gobject will stop calling the timeout_add def main(): osso_ctxt = osso.Context(com.tomch.maemoclock, 0.1, False) applic = osso.Application(osso_ctxt) device_state = osso.DeviceState(osso_ctxt) d = display() d.UpdateTime() pygame.time.set_timer(EVT_STEP, 1000)#Update the seconds display every second pygame.time.set_timer(EVT_STEPSCREEN, 8000) #Re-activate the screen every 8 seconds pygame.mouse.set_visible(False) #disable the cursor # Wait for user input while True: event = pygame.event.wait() if (event.type == KEYUP) and (event.key == 287): # Fullscreen button / F6 : Toggle fullscreen pygame.display.toggle_fullscreen() elif (event.type == EVT_STEP): #Timer-Event d.UpdateTime() elif (event.type == EVT_STEPSCREEN) : #Timer-Event keepDisplayOn(device_state) elif (event.type == MOUSEBUTTONDOWN): #Touchscreen-Event break print Event + str(event.type) if __name__ == '__main__': main() ## While the events get called, nothing ever happens with the display on my N800 - it simply keeps dimming and blanking... OTOH, If I call the display_blanking_pause() in the main() loop, the call will work (for once). So the API does work. If I play around with the examples from the wiki doc (osso_test_device_blank_pause.py, osso_test_device_on.py), they both work, too. However, once I start shifting the timer from a gobject.timeout_add to an pygame.time.set_timer, the calls to display_blanking_pause (in the function called by the timer) won't do anything anymore. My guess is that I'm somehow losing the osso.context. Helpy anbody? Does that code snippet work on your device, keeping your screen from dimming and blanking? Anybody who can explain what is happening? Thanks! -Tom (desperate, bordering towards madness :-) ___ maemo-developers mailing list maemo-developers@maemo.org https://lists.maemo.org/mailman/listinfo/maemo-developers