Maemo 5
    Developer Workshop



    Thomas Perl
    2010-01-22


                    
Übersicht
    ●   Nokia 770, N800 und N810
    ●   Maemo.org community und Mer
    ●   Sprachen, Toolkits und Frameworks
 ...
Nokia 770, N800 und N810
    ●   “Internet Tablets”
    ●   Mai 2005: Nokia 770
    ●   Jänner 2007: N800
    ●   Oktober ...
Maemo.org community
    ●   Open Source – Software für Maemo
    ●   Services
        ●   bugs.maemo.org (Offizieller Bug-...
Mer
    ●   Open-Source “Distribution” von Maemo 5
    ●   Proprietäre Teile durch Open Source-
        Implementierung er...
Sprachen, Toolkits und Frameworks
    ●   GTK+/Hildon: C, C++, Python (PyMaemo)
    ●   Qt-Support: C++, Python (PyQt4, Py...
Maemo 5 SDK
    ●   SDK Installer (URL siehe Wiki-Seite)
    ●   Ohne Linux: VM (zB Ubuntu-Image)
    ●   UI, Desktop, Com...
..und IDEs?
    ●   PluThon
        ●   Eclipse-Plugin für Python/Maemo
        ●   Direktes “Deployment” auf das Gerät (S...
Debian-Packaging
    ●   Apps werden als “.deb”-Pakete geliefert
    ●   Handling von Abhängigkeiten, Konflikten,
        ...
Optification
    ●   256MB OneNAND: Kernel + Root-FS
    ●   32GB eMMC
        ●   2 GB /home (ext3)
        ●   ca. 29 GB...
Publishen auf maemo.org (1/2)
    ●   Maemo.org Extras Repository
    ●   QA-Prozess
        ●   10 Tage Quarantäne
      ...
Publishen auf maemo.org (2/2)
                                                        Build­Fehler: E­Mail
               ...
On-Device Development (1/2)
    ●   Man nehme:
        ●   Python + UI Bindings (PyGTK oder PyQt4)
        ●   Vim (oder: ...
On-Device Development (2/2)




                  
Credits
    ●   Mer Photo: Meizirkki
        http://picasaweb.google.com/meizirkki/MerOnTheTouchBook
    ●   Maemo Extras ...
Upcoming SlideShare
Loading in...5
×

Maemo 5 Developer Workshop @ Metalab

1,712

Published on

2010-01-22

Published in: Technology
0 Comments
0 Likes
Statistics
Notes
  • Be the first to comment

  • Be the first to like this

No Downloads
Views
Total Views
1,712
On Slideshare
0
From Embeds
0
Number of Embeds
1
Actions
Shares
0
Downloads
29
Comments
0
Likes
0
Embeds 0
No embeds

No notes for slide

Maemo 5 Developer Workshop @ Metalab

  1. 1. Maemo 5 Developer Workshop Thomas Perl 2010-01-22    
  2. 2. Übersicht ● Nokia 770, N800 und N810 ● Maemo.org community und Mer ● Sprachen, Toolkits und Frameworks ● Maemo 5 SDK ● Debian Packaging und /optification ● Publishen auf maemo.org ● On-Device Development    
  3. 3. Nokia 770, N800 und N810 ● “Internet Tablets” ● Mai 2005: Nokia 770 ● Jänner 2007: N800 ● Oktober 2007: N810    
  4. 4. Maemo.org community ● Open Source – Software für Maemo ● Services ● bugs.maemo.org (Offizieller Bug-Tracker) ● talk.maemo.org (Forum) ● garage.maemo.org (Projekt-Hosting) ● maemo.org/packages (Extras QA) ● #maemo, #mer auf Freenode ● Bester Einstiegspunkt zum Entwickeln    
  5. 5. Mer ● Open-Source “Distribution” von Maemo 5 ● Proprietäre Teile durch Open Source- Implementierung ersetzen (wo möglich) ● Support für nicht-Maemo-Geräte    
  6. 6. Sprachen, Toolkits und Frameworks ● GTK+/Hildon: C, C++, Python (PyMaemo) ● Qt-Support: C++, Python (PyQt4, PySide) ● Sonstiges: Haskell, Perl, Ruby, Prolog, … ● Für Spiele: OpenGL ES, SDL, PyGame ● Für Multimedia: GStreamer ● Mehr? → Pakete in Debian (armel)    
  7. 7. Maemo 5 SDK ● SDK Installer (URL siehe Wiki-Seite) ● Ohne Linux: VM (zB Ubuntu-Image) ● UI, Desktop, Compile-“targets” (armel, x86) ● MADDE (Technology Preview) ● Cross-compiler ● Für Linux (32- u. 64-bit), Windows, Mac OS X ● ...oder direkt am Gerät ohne SDK (später)    
  8. 8. ..und IDEs? ● PluThon ● Eclipse-Plugin für Python/Maemo ● Direktes “Deployment” auf das Gerät (SSH) ● Qt Creator ● Qt-Anwendung designen und entwickeln ● Source mit Scratchbox (armel) kompilieren    
  9. 9. Debian-Packaging ● Apps werden als “.deb”-Pakete geliefert ● Handling von Abhängigkeiten, Konflikten, Upgrades, etc.. (“apt-get”) ● Siehe: Wiki, Debian Policy Manual ● Maemo-spezifische Erweiterungen (Programmname, Icon für App Manager, ...) ● Alternativen: PyPackager oder py2deb    
  10. 10. Optification ● 256MB OneNAND: Kernel + Root-FS ● 32GB eMMC ● 2 GB /home (ext3) ● ca. 29 GB /home/user/MyDocs (vfat) ● /opt ist Symlink auf /home/opt/ ● Programme müssen nach “/opt” installiert werden, um Platz zu sparen ● Helper-Tool: maemo-optify    
  11. 11. Publishen auf maemo.org (1/2) ● Maemo.org Extras Repository ● QA-Prozess ● 10 Tage Quarantäne ● 10 Karma-Punkte (Thumbs up: +1, down: -4) ● Funktionalität, Illegale Inhalte, Usability, Stromverbrauch, Optification, Security Risks, fehlende URL zum Bugtracker(!)    
  12. 12. Publishen auf maemo.org (2/2) Build­Fehler: E­Mail mit Details, Rejected Build OK: Import in Source­Paket maemo.org Maemo Extras­Devel (Debian, .dsc) Autobuilder Paket darf ins Extras QA Process Entwickler entscheidet, wann Extras­Repository (10 Tage, 10 Karma­Punkte) Paket nach Extras­Testing kommt    
  13. 13. On-Device Development (1/2) ● Man nehme: ● Python + UI Bindings (PyGTK oder PyQt4) ● Vim (oder: QEmacs, PyGTKEditor, ...) ● Wenn man Zeit hat: GCC für C-Entwicklung ● Per X-Terminal geht das so: apt-get install python-gtk2 python-hildon    
  14. 14. On-Device Development (2/2)    
  15. 15. Credits ● Mer Photo: Meizirkki http://picasaweb.google.com/meizirkki/MerOnTheTouchBook ● Maemo Extras QA Process - Icons GNOME Icon Theme ● PyGTKEditor Screenshot: Khertan http://khertan.net/2009/11/ ● 770, N800, N810, N900 Photos: Nokia http://www.nokia.com/press/media_resources ● Maemo.org Logo: Maemo Community    
  1. A particular slide catching your eye?

    Clipping is a handy way to collect important slides you want to go back to later.

×