Active Topics

 


Reply
Thread Tools
Posts: 44 | Thanked: 14 times | Joined on Mar 2010
#21
fatalsaint, that's great! thanks! will have much more questions in the future though...
 
Posts: 3,428 | Thanked: 2,856 times | Joined on Jul 2008
#22
Originally Posted by MaxJP View Post
fatalsaint, that's great! thanks! will have much more questions in the future though...
Like many others.. I strongly recommend you (ie: people) attempt to discover answers first, ask questions only after your search ability fails you.

3 of those links I provided are tutorials or wiki's hosted right here at Maemo.org.

I don't mind helping people, but you have to be willing to do the work too
__________________
If I've helped you or you use any of my packages feel free to help me out.
-----------------------------------------------------------------------------------
Maintaining:
pyRadio - Pandora Radio on your N900, N810 or N800!
 
YoDude's Avatar
Posts: 2,869 | Thanked: 1,784 times | Joined on Feb 2007 @ Po' Bo'. PA
#23
Originally Posted by fatalsaint View Post
I, personally, develop in Python using the QT4 bindings. This is called PyQt4.

This can easily be developed directly on the device itself (N900), and it can be developed without any SDK or scratchbox or emulating environment on your Desktop PC. All you need, is the proper PyQt4 development apps on your system (Linux is easiest IMHO. Not sure how Windows PyQt4 is.)

Write the code, copy the files to N900, and run. No compiling, no converting, no hassel. And if you aren't doing anything weird (like dbus calls to an FM Transmitter your PC doesn't have..) then you can actually run the app right on your desktop, make sure it runs right, and then copy it to the N900 and watch it instantly become "Maemo-ized" for you.

As far as how to code for the N900... there are plenty of Tutorials covering that already.
Beyond that... what do you then do when it is time to package for distribution? I am not understanding this "Maemo-ized for you".


Originally Posted by pycage View Post
The problem with developing for Maemo is not setting up the SDK or getting started with tutorials, but lack or scattered nature of comprehensive documentation.

There is no single place where you can find all documentation, and some stuff isn't even properly documented, and you have to read source code files (if Google finds them) or reverse-engineer. It's often a lot of trial and error.

For exercise, try to find out how to play a video in a window with MAFW and control the volume. Apart from what I've now written in Python (hey, am I the only one using MAFW in open source? It seems so...) you won't find much. But you'll find how to extend MAFW with new plugins (oh great). I'm really thinking about filing bug reports against the often useless state of even the Nokia-official developer documentation.
You can waste hours and days on reverse-engineering and trial-and-error.
That last bit is the story of my life.

If I take a look at a couple of very lightweight and simple applets like Thomas Perl's Superfly.fm you find that an awful lot of repetitive work had to go into "packaging" this useful example that is basically just a desktop file and a icon.
Through reverse-engineering and trial-and-error I can produce other useful lightweight applets based on his excellent example but I can't simply share these with other members without going "rouge" and perhaps exposing new and inexperienced users to the underbelly of the beast.

>> http://talk.maemo.org/showpost.php?p...0&postcount=16

If we go further and look at Nokia's own "OVI Store" desktop applet...

Code:
[Desktop Entry]
Encoding=UTF-8
Version=1.0
Name=tana_ap_ovi_store
Comment=Open Ovi store in new window
Exec=dbus-send --print-reply --dest=com.nokia.osso_browser /com/nokia/osso_browser/request com.nokia.osso_browser.open_new_window string:http://link.ovi.mobi/n900ovistore
Icon=general_ovi_store
Terminal=false
Type=Application
Categories=System;TerminalEmulator;
X-HildonDesk-ShowInToolbar=true
#X-Osso-Service=xterm
X-Osso-Type=application/x-executable
...we see a way with which to code our most frequently used web "Bookmarks" into smaller and easier to manage desktop shortcuts and no longer have to rely on the flakier shortcuts that are added from a browser session.

As I also posted in another thread, I would have liked to have seen simple tools developed for Maemo that did not require the installation and maintenance of a different desktop OS for me in order to compile lightweight Web apps into distributable .deb files. Especially when those Web apps only consist of an icon, a desktop file, and maybe a css script.

I seem to have hundreds of these things now that I can not correctly share because of this. I'm sure others have plenty more and a collection of these could have been an equivalent response to 80% of what can be found in Apples store.

The best example of this I could think of are desktop files and icons for common Google Mobile services web pages. If these were made easily available so that members consistently landed on the same page, we could then have started a community garage page and updated these applets with CSS use-ability scripts that could have been developed in this forum like we did once upon a time in Diablo.

>> http://talk.maemo.org/showthread.php?t=24752

...and lastly:

Originally Posted by MaxJP View Post
Heh. I've expected these kind of reaction... Thanks andraeseus1 for understanding. I can't really give a specific answer because I don't know what to ask, I'm just a high school kid trying to learn programming... I have done some research, but the terms they used i just do not understand. I know some people might say if I'm don't even know the basic, why are you even bother to make apps for N900?

"well in order to develop for the n900 you need to download and install this program or that software. start off with something simple like x,y,z, and get your feet wet. there is a lot more info on basic programing tools at www.whatever"

Something like these would help me a lot.

Thanks guys.
When I first saw this thread I prepared and was about to post the attached image but didn't for fear that it could have been interpreted as another "smart *****" reply and your thread would have deteriorated into yet another off topic, rumination about the quality of posts on this forum and whatnot.

I'm glad this thread didn't go that way and you received replies from members such as fatalsaint , pycage, and qwerty12 who are all held (along with many others ) in high regard by less productive members such as myself.
Attached Images
 
__________________

SLN member # 009
 
w00t's Avatar
Posts: 1,055 | Thanked: 4,107 times | Joined on Oct 2009 @ Norway
#24
FWIW, if you (being anyone) need any help, I'm happy to mentor new Maemo developers, preferably on IRC (#maemo / #qt-maemo / #maemo-devel) or here on talk/via email.

My skills are primarily focused on Qt these days, but I've gotten around a lot and tinkered with just about everything, so if you get stuck, ask and I'll be happy to help.
__________________
i'm a Qt expert and former Jolla sailor (forever sailing, in spirit).
if you like, read more about me.
if you find me entertaining, or useful, thank me. if you don't, then tell me why.
 

The Following 6 Users Say Thank You to w00t For This Useful Post:
Posts: 272 | Thanked: 52 times | Joined on Jan 2010
#25
I had a go at python - pyqt.

I simply installed QT Designer, and designed my first screen using drag and drop, I then ran a command which I found in the development section which created a python code piece which you leave alone.

I then started writing a python app, just using python on my ubuntu machine to do the testing, I got it up to a certain point and copied it to my n900, it worked perfectly.

Although I then wanted to do other things I didn't know how to, I tried asking a few people who tried to point me in right direction but to be honest I got to a point where I'd had enough so my program only has limited functionality for now and only exists as a few .py files on my phone.

As far as i'm concerned anyway, install qt designer, install python and use your PC to test before you copy to your n900

Good luck!
 
Posts: 44 | Thanked: 14 times | Joined on Mar 2010
#26
Really! thanks guys! I'll "play" with the software now... Hehe, that's the way i discover things anyway... Btw, hope good people here don't stray too far from the topic, although i know my topic is very wide and general...
 
Posts: 3,428 | Thanked: 2,856 times | Joined on Jul 2008
#27
Originally Posted by YoDude View Post
Beyond that... what do you then do when it is time to package for distribution? I am not understanding this "Maemo-ized for you".
I originally used py2deb and it created my rules file for me that I now just manually edit, and I decided I wanted more control. When you are ready to package your program you create a specific filesystem structure.

I recommend grabbing py2deb, building an initial package with it, then copy the directory structure somewhere for you to edit and maintain as you go. It will create all these files below for you in the proper formats, then editing them is easier (vice creating them by hand).

Code:
yourapp-1.0
yourapp-1.0/debian
yourapp-1.0/debian/control
yourapp-1.0/debian/changelog
yourapp-1.0/debian/rules
yourapp-1.0/debian/copyright
yourapp-1.0/src
yourapp-1.0/src/opt
yourapp-1.0/src/opt/yourApp
yourapp-1.0/src/opt/yourApp/yourapp.py
Once this structure is properly in place, you simply run:
Code:
dpkg-buildpackage -rfakeroot
From yourapp-1.0 directory and it will create your deb file for you that you can install on the N900. Once it runs and installs (and removes) successfully on your N900, you can follow the procedures at the Extras Assistant to building your source tarball and upload it to the repositories.

Some places to start:
Here, here, Here, Here

As far as what I mean by "Maemo-ized", when you run a PyQt4 app in a normal Desktop things such as QDialog and Popup boxes are actual message boxes, squares with buttons on the screen. They are rollup windows in Maemo. Also, the background and all the colors go to black, whereas on a desktop they will be white by default. Menu's can look different on a desktop than in Maemo, etc.
__________________
If I've helped you or you use any of my packages feel free to help me out.
-----------------------------------------------------------------------------------
Maintaining:
pyRadio - Pandora Radio on your N900, N810 or N800!
 

The Following 2 Users Say Thank You to fatalsaint For This Useful Post:
daperl's Avatar
Posts: 2,427 | Thanked: 2,986 times | Joined on Dec 2007
#28
Originally Posted by pycage View Post
For exercise, try to find out how to play a video in a window with MAFW and control the volume. Apart from what I've now written in Python (hey, am I the only one using MAFW in open source? It seems so...) you won't find much.
Have you tried:

Code:
apt-get source mafw-test-gui
Combined with the documentation and the API, it's somewhat a Rosetta Stone, and I'm glad to see someone else is finally using MAFW!
__________________
N9: Go white or go home
 

The Following User Says Thank You to daperl For This Useful Post:
Posts: 402 | Thanked: 229 times | Joined on Nov 2009 @ Missouri, USA
#29
@fatalsaint: i felt the same way about py2deb and ended up creating a helper script to add whatever py2deb was missing - app manager icon, correct bugtracker info etc. if you are interested i can get that to you.

btw its imported directly into the setup script so i still need only do python setup.py
__________________
aspidites | blog | aspidites@inbox.com
 
Posts: 3,428 | Thanked: 2,856 times | Joined on Jul 2008
#30
Originally Posted by aspidites View Post
@fatalsaint: i felt the same way about py2deb and ended up creating a helper script to add whatever py2deb was missing - app manager icon, correct bugtracker info etc. if you are interested i can get that to you.

btw its imported directly into the setup script so i still need only do python setup.py
My biggest complaint with py2deb was I couldn't get it to properly maintain a changelog file in the right format.

I never even managed to try the bugtracker and app manager stuff in it because I gave up after wanting to keep my previous changelog stuff while adding new entries. I had a big string with \n's and stuff and it just didn't output right.
__________________
If I've helped you or you use any of my packages feel free to help me out.
-----------------------------------------------------------------------------------
Maintaining:
pyRadio - Pandora Radio on your N900, N810 or N800!
 
Reply

Tags
please don't, we're doomed


 
Forum Jump


All times are GMT. The time now is 20:47.