Page 1 of 3 123 LastLast
Results 1 to 10 of 24

Thread: Why you should develop your plugin for nGhost3

  1. #1
    licensed to kill - FKA kev000
    Auto Apps:loading...
    tripzero's Avatar
    Join Date
    Aug 2006
    Location
    16.40618, 120.61106
    Posts
    2,560

    Why you should develop your plugin for nGhost3

    nGhost3 is in current development: the SDK is making great progress, nGhost3 has a unique, innovative design. These are a few reasons why you should stop developing for that old, non-innovative, non-free frontend, and write it for nGhost3 instead. Check out the nGhost3 on-screen-keyboard test example:

    [media]http://www.youtube.com/watch?v=BvAyKoRyeh4[/media]

    nGhost3 is unique
    uniqueness doesn't equal better, but in this case, it does. nGhost3 is not a frontend like RR, CF, SD, it's a complete mobile framework. It runs on Linux and Macs, and it looks awesome! That's why it's better to write for nGhost3 than it is for the other three.

    One more, because nGhost3 is Linux based, it runs on everything that Linux runs on. nGhost3 is not only targeting your carpc, but also smart phones and other mobile devices. This means your plugin has multiple avenues to get users.

    nGhost3 has a documented SDK
    Creating a plugin for nGhost is easy. Not only because documentation exists but because the interfaces are nice C++ classes. When you use the toolkit, you automatically have a UI built for mobile use. nGhost takes care of the theme and the skinning for you so you just write code.

    nGhost3 is innovative
    nGhost3 is not like CF, SD, or RR... nGhost3 is an innovative Operating System analogous to Google's Android and Moblin. It's a true, multi-process mobile desktop. Plugins are developed as a plugin, but they run in their own process space. The integration is so tight, you can't even tell that each "plugin" is running in its own window. Look at this demo of moblin2 which demonstrates the idea, and the also shares the same underlying OpenGL graphics accelerated GUI (aka clutter):

    [media]http://www.youtube.com/watch?v=vsCpIeLLoT8[/media]

    Can you tell they are completely different apps? Probably not. You can't reproduce that with windows, you can't copy that unless you own the shell, which MS doesn't want you to own. Silly, but true.

    nGhost3 is free

    nGhost3 is LGPL licensed. This means that it is not only freeware, but also free to hack on, free to change, free as in freedom. It's not going to rip off your code, become closed source and then implement "protective" features that treat you like a thief. nGhost is free and will always be free. It's license guarantees and secures its freeness.

    So upgrade your awesomeness today, start developing for nGhost3!!
    Former author of LinuxICE, nghost, nobdy.
    Current author of Automotive Message Broker (AMB).
    Works on Tizen IVI. Does not represent anyone or anything but himself.

  2. #2
    Confusion Master
    Auto Apps:loading...
    Enforcer's Avatar
    Join Date
    Sep 2003
    Location
    If you go down to the woods today, You're sure of
    Posts
    14,618
    Do you have an SDK, with some easy Hello World type examples.


    Also can these plugins be built using MS Visual Studio (preferably VB.net)

  3. #3
    Mo' Programming Mo' Problems
    Auto Apps:loading...
    Sonicxtacy02's Avatar
    Join Date
    Sep 2004
    Location
    Woodbridge, VA
    Posts
    8,161
    Blog Entries
    51
    Quote Originally Posted by Enforcer View Post
    Do you have an SDK, with some easy Hello World type examples.


    Also can these plugins be built using MS Visual Studio (preferably VB.net)
    Diddo! Looks promising but i'm an absolute nube with anything linux.
    mp3Car.com Senior Tech Blogger (Want a product reviewed? Contact me.)
    Find my plugins on the MP3Car App Store!
    Follow Me on Twitter or Facebook
    Live mp3Car Facebook Chat

  4. #4
    licensed to kill - FKA kev000
    Auto Apps:loading...
    tripzero's Avatar
    Join Date
    Aug 2006
    Location
    16.40618, 120.61106
    Posts
    2,560
    Quote Originally Posted by Enforcer View Post
    Do you have an SDK, with some easy Hello World type examples.


    Also can these plugins be built using MS Visual Studio (preferably VB.net)

    There are some c++ examples in the source:
    http://nghost.svn.sourceforge.net/vi.../lib/examples/

    most of the headers are documented. It's still early development, but I hope we will have automatic doc generation into html files soon.

    texture is the simplest and kb is probably the most complex.

    Clutter has bindings for .NET, so VB.NET/C# should be possible. If there is interest in .NET support, I will write the theme engine and skin parser in .NET as well as the harness and plugin interfaces.

    Alternatively, you don't have to use the ng3 theme engine/ skinning engine at all. The beauty of this ideology is that you can use any language and can still talk with the other plugins through the IPC mechanism: DBus.
    Former author of LinuxICE, nghost, nobdy.
    Current author of Automotive Message Broker (AMB).
    Works on Tizen IVI. Does not represent anyone or anything but himself.

  5. #5
    Newbie
    Join Date
    Jun 2009
    Posts
    1
    Hi kev000, great job!

    Where can we get the nGhost3, I found two foled on svn gn3 and nghost3, I guess ng3 is the correct one as it's the most recent one, is this correct?

    I check out ng3 and tried to compile on jaunty but I get the following error:

    Code:
    libtool: compile:  g++ -DHAVE_CONFIG_H -I. -I/home/mon/development/workspace/ng3/lib/clutter -I../.. -DQT_SHARED -I/usr/include/qt4 -I/usr/include/qt4/QtCore -pthread -D_REENTRANT -I/usr/include/clutter-0.9 -I/usr/include/cairo -I/usr/include/pango-1.0 -I/usr/include/gtk-2.0 -I/usr/include/pixman-1 -I/usr/include/freetype2 -I/usr/include/directfb -I/usr/include/libpng12 -I/usr/include/glib-2.0 -I/usr/lib/glib-2.0/include -g -O2 -MT libnghostclutter_la-NClutterActor.moc.lo -MD -MP -MF .deps/libnghostclutter_la-NClutterActor.moc.Tpo -c NClutterActor.moc.cpp  -fPIC -DPIC -o .libs/libnghostclutter_la-NClutterActor.moc.o
    NClutterActor.moc.cpp:13:26: error: qapplication.h: No such file or directory
    NClutterActor.moc.cpp:15:34: error: private/qucomextra_p.h: No such file or directory
    NClutterActor.moc.cpp:17:2: error: #error "This file was generated using the moc from 3.3.8b. It"
    NClutterActor.moc.cpp:18:2: error: #error "cannot be used with the include files from this version of Qt."
    NClutterActor.moc.cpp:19:2: error: #error "(The moc has changed too much.)"
    NClutterActor.moc.cpp:22: error: no ‘const char* nghost::NClutterActor::className() const’ member function declared in class ‘nghost::NClutterActor’
    NClutterActor.moc.cpp:27: error: ‘QMetaObject* nghost::NClutterActor::metaObj’ is not a static member of ‘class nghost::NClutterActor’
    NClutterActor.moc.cpp:28: error: ‘QMetaObjectCleanUp’ does not name a type
    NClutterActor.moc.cpp:31: error: redefinition of ‘static QString nghost::NClutterActor::tr(const char*, const char*)’
    ../../../lib/clutter/NClutterActor.h:13: error: ‘static QString nghost::NClutterActor::tr(const char*, const char*)’ previously defined here
    NClutterActor.moc.cpp:39: error: redefinition of ‘static QString nghost::NClutterActor::trUtf8(const char*, const char*)’
    ../../../lib/clutter/NClutterActor.h:13: error: ‘static QString nghost::NClutterActor::trUtf8(const char*, const char*)’ previously defined here
    NClutterActor.moc.cpp:50: error: no ‘QMetaObject* nghost::NClutterActor::staticMetaObject()’ member function declared in class ‘nghost::NClutterActor’
    NClutterActor.moc.cpp:130: error: no ‘void* nghost::NClutterActor::qt_cast(const char*)’ member function declared in class ‘nghost::NClutterActor’
    NClutterActor.moc.cpp:137: error: ‘QUObject’ has not been declared
    NClutterActor.moc.cpp:137: error: no ‘bool nghost::NClutterActor::qt_invoke(int, int*)’ member function declared in class ‘nghost::NClutterActor’
    NClutterActor.moc.cpp:159: error: ‘QUObject’ has not been declared
    NClutterActor.moc.cpp:159: error: no ‘bool nghost::NClutterActor::qt_emit(int, int*)’ member function declared in class ‘nghost::NClutterActor’
    NClutterActor.moc.cpp:165: error: no ‘bool nghost::NClutterActor::qt_property(int, int, QVariant*)’ member function declared in class ‘nghost::NClutterActor’
    NClutterActor.moc.cpp:170: error: no ‘bool nghost::NClutterActor::qt_static_property(QObject*, int, int, QVariant*)’ member function declared in class ‘nghost::NClutterActor’
    For what I understood is a problem with the qt version, I have qt3 and qt4 installed. Is it possible to compile with qt4? If not how should I force qt3?

    Thank's

  6. #6
    licensed to kill - FKA kev000
    Auto Apps:loading...
    tripzero's Avatar
    Join Date
    Aug 2006
    Location
    16.40618, 120.61106
    Posts
    2,560
    It should only use Qt4. The base directory may not compile, but lib/ should.

    The problem (as discovered by kshots) is that it's compiling with qt4, but using moc from qt3. kshots just committed a fix that should use the proper moc versions. You'll have to reconfigure, but you should be good after that.
    Former author of LinuxICE, nghost, nobdy.
    Current author of Automotive Message Broker (AMB).
    Works on Tizen IVI. Does not represent anyone or anything but himself.

  7. #7
    FLAC hexxamillion's Avatar
    Join Date
    Dec 2007
    Location
    AZ
    Posts
    1,092
    Sounds promising. I do have a question though. The main reason for 'abandoning' my use of nghost was that it was limited how it handled media..of course..maybe I did not give it more of a chance.

    Will nGhost3 be able to perform random playback for music? Is the functionality of media playback limited to configurations of mplayer? Can you configure it to use something like VLC as the backend player? Don't get me wrong mplayer is just fine..Call me spoiled with media handling such as XBMC.

    I know its been a while since I have messed with nGhost and I like the GUI and project...I just wasn't happy with how it handled media..that's all.

    I am definitely going to be giving nGhost3 a whirl.
    "Live Free!!!...It's all about Open Source"
    Current Proj:Android Mount in 2013 Altima
    Old Proj II
    Old Proj I
    YouTube:Project Videos
    Homepage: HexxWorld.net
    Twitter:http://twitter.com/hexxamillion

  8. #8
    licensed to kill - FKA kev000
    Auto Apps:loading...
    tripzero's Avatar
    Join Date
    Aug 2006
    Location
    16.40618, 120.61106
    Posts
    2,560
    Quote Originally Posted by hexxamillion View Post
    Sounds promising. I do have a question though. The main reason for 'abandoning' my use of nghost was that it was limited how it handled media..of course..maybe I did not give it more of a chance.

    Will nGhost3 be able to perform random playback for music? Is the functionality of media playback limited to configurations of mplayer? Can you configure it to use something like VLC as the backend player? Don't get me wrong mplayer is just fine..Call me spoiled with media handling such as XBMC.

    I know its been a while since I have messed with nGhost and I like the GUI and project...I just wasn't happy with how it handled media..that's all.

    I am definitely going to be giving nGhost3 a whirl.
    I'm not sure when you used nGhost last, but nGhost2 supported random music playback. The backend supported it, there hasn't been anyone demanding the feature (until now), and thus the UI control wasn't ever put in. nGhost2's media player is pluggable. The mplayer plugin can be replaced with any media backend if you are willing to do the work. Stubs for phonon, gstreamer, and xine plugins are in repository. Again, there hasn't been much demand for other plugins other than mplayer, so none of the others have been finished.

    nGhost3's media engine will likely be based on phonon. Phonon is an abstraction above multiple media playback backends. Gstreamer, Xine, VLC and mplayer (not to mention DirectShow, and Quicktime on those platforms) are currently supported phonon backends.

    I hope you give nGhost2 a second look when we release 2.1. If not, nGhost3 is sure to please.
    Former author of LinuxICE, nghost, nobdy.
    Current author of Automotive Message Broker (AMB).
    Works on Tizen IVI. Does not represent anyone or anything but himself.

  9. #9
    Newbie
    Join Date
    Feb 2009
    Posts
    43
    Windows 7 supported?

  10. #10
    licensed to kill - FKA kev000
    Auto Apps:loading...
    tripzero's Avatar
    Join Date
    Aug 2006
    Location
    16.40618, 120.61106
    Posts
    2,560
    Quote Originally Posted by DocShay View Post
    Windows 7 supported?
    nGhost3 probably won't run well on windows. This is because while other frontends hide/mask the shell, nGhost IS the shell and windows, well, doesn't play nice with others. Someone with a lot more windows knowledge than me could probably explain why killing the windows shell (iirc explorer.exe) is a bad idea.

    However, as I mentioned in this thread, there is really no reason why someone couldn't write a windows version using the nGhost3 toolkit.

    UPDATE:

    We are looking at using several components being developed for Moblin in nGhost3: http://wiki.openice.org/index.php/Nghost3. This greatly reduces the actual work we need to do to get ng3 up and running.

    cheers,
    -Kev
    Former author of LinuxICE, nghost, nobdy.
    Current author of Automotive Message Broker (AMB).
    Works on Tizen IVI. Does not represent anyone or anything but himself.

Page 1 of 3 123 LastLast

Similar Threads

  1. Replies: 13
    Last Post: 05-28-2009, 03:18 PM
  2. Replies: 63
    Last Post: 03-10-2009, 07:49 PM
  3. pc reboot on sd startup
    By duanes7 in forum StreetDeck
    Replies: 3
    Last Post: 12-14-2007, 08:55 AM
  4. IRMAN plugin
    By knyarko in forum StreetDeck
    Replies: 3
    Last Post: 01-05-2007, 08:26 PM
  5. Replies: 0
    Last Post: 06-11-2006, 05:49 PM

Bookmarks

Posting Permissions

  • You may not post new threads
  • You may not post replies
  • You may not post attachments
  • You may not edit your posts
  •