View Single Post
Posts: 474 | Thanked: 2,336 times | Joined on Oct 2009
#4
Here are my thoughts on what to do with the N900 closed packages for the Neo900 (as listed in http://wiki.maemo.org/Fremantle_closed_packages)

Packages where usable open replacements/clones exist (or where the actual N900 source code has been found and is now available) and that we can modify to our needs
bme-rx-51
browser-neteal
osso-graphics-game-chess
osso-sounds-game-chess
osso-sounds-game-mahjong
osso-graphics-game-mahjong
mp-fremantle-generic-pr
libcal-dev
libcal1
initrd-progs
tablet-browser-view-test
calendar-home-applet
libbmeipc0
libtrace-dev
libtrace0
tone-generator
pulseaudio-policy-enforcement
ohm-plugin-prolog
ohm-plugin-resolver
ohm-plugins-misc
libprolog0
prolog-extensions
dsp-manager
gstreamer0.10-dsp
libdres0
libexempi-dev
libexempi3
docpurge
hald-addon-bme
camera-firmware
libmaemosec-certman-applet0
maemosec-certman-applet
status-area-applet-battery
status-menu-applet-profiles
libprofile-dev
libprofile-doc
libprofile0
maemo-applet-profiles
profiled
profile-data
profile-data-dev
bluetooth-sysinfo
libppu0
libwl1251
wl1251-cal
policy-settings-rx51 (assuming that the output of this matches with the original prolog binary file before it was decompiled we should be able to use this package as a base in our new system)
osso-systemui-tklock
osso-systemui-powerkeymenu
osso-systemui-alarm
osso-calculator
osso-calculator-ui
osso-applet-notificationlight
osso-applet-display
connui-home-cellular
maemo-applet-tvout
maemo-statusmenu-fmtx
libmaemosec-certman0
libmaemosec0
maemosec-certman-common-ca
maemosec-certman-tools
hildon-im-fkb
libhildon-im-western-plugin-common3
libhildon-im-vkbrenderer3
getbootstate
feedservice-plugin-fb-common
clock-ui
camera-ui
calendar-backend
calendar-backend-dev
calendar-backend-doc
tablet-browser-daemon

Packages I think we can drop completly as non-essential for a working system: (including things that go away because we are using different hardware to the N900)
amazon-installer
ap-installer
as-config-applet-0
as-daemon-0
as-utils
status-area-applet-activesync-0
ovi-promotion-widget
sharing-service-ovi
sharing-service-facebook
sharing-service-flickr
feedservice-plugin-fb
feedservice-plugin-amazon
feedservice-plugin-ap
facebook-installer
facebook-services
foreca-installer
foreca-weather-applet
cherry
camel-as-provider-0
camelisync
rtcom-accounts-plugin-facebook
nokiamessaging
nokia-maps-core
nokia-maps-maplets
nokiamaps-navigation-provider
nokia-maps-ui
dtg-installer
modest-nokiamessaging-plugin
cmt-firmware-rx51
bt-firmware
wl1251-firmware
nolo
libgles1
libgles1-sgx-img
libgles1-sgx-img-dev
libgles2
libgles2-sgx-img
libgles2-sgx-img-dev
opengles-sgx-img-common
opengles-sgx-img-common-dev
libas-common-ui-0
libas-common-utils-0
libas-protocol-0
libas-storage-0
liblas1
location-daemon
location-proxy
libnavigation-dev
libnavigation0
libmaesync
maesync-backend
maesync-controller
modest-as-plugin-0
osso-maesync-plugin
osso-maesync-ui
testserver
fmtx-middleware
fmtx-middleware-doc
funambol-cpp-api
flasher
sdk-fiasco-gen
softupd
rtcom-accounts-plugin-nokiachat

Packages we can probably keep using as-is without needing to make changes:
adobe-flashplayer
osso-accounts-plugin-skype
rtcom-abook-skype-plugin
rtcom-skype-emoticons-theme
skyhost-bin
skyhost-vengine
telepathy-spirit
cellmo-headers
cellmo-icpr82-headers
hildon-theme-alpha
hildon-theme-beta
hildon-theme-devel
ui-fonts
chinese-font
eff-content-fonts
calendar
calendar-ui
calendar-ui-widgets-0
calendar-ui-widgets-0-dev
applet-datetime
google-search-widget
hildon-control-panel-personalisation
clockd-settings-mr0
hildon-desktop-applet-settings-mr0
hildon-desktop-application-shortcuts-mr0
maemo-ringtones-mr0
tablet-browser-bookmarks-mr0
theme-default-settings-mr0
imageviewer
mediaplayer
mediaplayerhomeapplet
mediaplayer-restore
maemo-input-sounds
osso-sounds-rtc
osso-sounds-ui
osso-filemanager
osso-filemanager-ui
osso-graphics-game-lmarbles
connui-statusbar-bluetooth
connui-btsettings
location-control
location-status
location-ui
location-home-applet
location-settings-default
location-test-gui
locale-resolver-data
libi18n-dev
libi18n-locale-resolver0
libi18n0
libjpeg62
libjpeg62-dev
libjpeg62-dbg
connui-conndlgs
connui-conndlgs-bluetooth
osso-sketch
osso-notes
osso-icons-default
osso-icons-devel
libspeex-dev
libspeexdsp-dev
libspeexdsp1
libspeexdsp1-dbg
libspeex1
libspeex1-dbg
maemo-applet-fmtx
maemo-installer-utils
maemointernal-keyring
maemo-statusmenu-headset
maemo-statusmenu-volume
statusbar-alarm
speex-doc
ezitext-czech
ezitext-danish
ezitext-dutch
ezitext-english-gb
ezitext-english-us
ezitext-essential-plugins
ezitext-finnish
ezitext-french-ca
ezitext-french-fr
ezitext-german
ezitext-greek
ezitext-italian
ezitext-norwegian
ezitext-polish
ezitext-portuguese-pt
ezitext-russian
ezitext-spanish-es
ezitext-spanish-us
ezitext-swedish
imengines-ezitext
libezitext
libcityinfo-dev
libcityinfo-doc
libcityinfo0-0
osso-applet-languageregional
osso-applet-memory
osso-applet-textinput
nokia-apps
nokia-binaries
libimengines-wp4
libimengines4
libimlayouts0
libhildon-time-zone-chooser0-0
libcodelockui1
libcodelockui1-dev
feedservice
feedservice-utils
osso-rss-feed-reader-list
osso-applet-device
osso-applet-devicelock
osso-abook-home-applet
osso-addressbook
libosso-abook
libosso-abook-dev
libosso-abook-doc
rtcom-accounts-plugin-gtalk
rtcom-accounts-plugin-jabber
rtcom-accounts-plugin-sip
rtcom-accounts-ui
rtcom-accounts-voip-support
rtcom-notification-ui
rtcom-presence-ui
wappushd
wappushd-dev
xml2wbxml
osso-startup-wizard
modest-home-applet
modest-providers-data
mafw-iradio-source-bookmarks-default
osso-systemui
osso-systemui-devlock
osso-systemui-splashscreen
osso-systemui-conf
librtcom-accounts-ui-client-dev
librtcom-accounts-ui-client0
librtcom-accounts-ui-dev
librtcom-accounts-widgets-dev
librtcom-accounts-widgets0
libsharing-plugin-dev
libsharing-plugin-doc
libsharing0
sharing-account-manager
sharing-dialog
sharing-dialog-dev
sharing-dialog-doc
sharing-manager
sharing-rtcom
signond-dev
signond0
signond-utils
libsignon-glib-dev
libsignon-glib0
libssoautologin
liblomesa0
libnips0
libosal0
libgpx0
libdevlock-bin
libdevlock1
hildon-im-common-virtual-settings
hildon-im-keyboard-assistant
hildon-im-keyboard-assistant-scv
hildon-im-plugin-base-settings
hildon-im-virtual-keyboard-layouts
hildon-input-method-configurator
hildon-input-method-plugins-western
hildon-input-method-widgets
hildon-application-manager-settings-standard
hildon-plugins-notify-sv
hildon-startup-progress
hildon-welcome-default-logo
libaccounts-dev
libaccounts-doc
libaccounts-glade
libaccounts0
libconbtui0
libclockcore-dev
libclockcore0-0
libtime-dev
libtime-doc
libtime0
gst-nokia-wm
gstreamer0.10-hantro
gstreamer0.10-wma
libcumulus0
libtopos0
immvibe
libimmvibe0
libimmvibe0-dev
libcail-common
libcail-dev

Packages where we need to decide what to do:
tutorial-home-applet (need to figure out whether to write new tutorial, keep existing tutorial or drop altogether)
hildon-status-bar-usb (probably need to clone this and make changes to account for plans for USB improvements in Neo900)
osso-backup (do we drop this completly, write a new backup app that does its own thing, write a backup app that is functionally compatible/output compatible with the N900 app or keep using the existing N900 app as-is)
mce (are we able to use the Fremantle MCE as-is, do we base something off the released Meego/Harmattan MCE source, do we reverse engineer the Fremantle MCE or do we write something totally new to do this job)
clockd (may need to clone and modify this if the way clock works changes e.g. cellular network provided clock)
clockd-doc (may need to clone and modify this if the way clock works changes e.g. cellular network provided clock)
gstreamer0.10-nokia-speech (not sure whether we need this or not and if we do, what to do about it)
alsa-policy-enforcement (not sure if audio stack will change and what to do with this)
libiphb-dev (not sure if we still need iphb going forward and if so whether we need to clone it or whether we can use it as-is)
libiphb0 (not sure if we still need iphb going forward and if so whether we need to clone it or whether we can use it as-is)
iphbd (not sure if we still need iphb going forward and if so whether we need to clone it or whether we can use it as-is)
policy-application-detector (dont know what to do with this)
libplayback-1-dev (not sure if libplayback will need to change due to changes in audio stuff or whether we can keep using it as-is)
libplayback-1-doc (not sure if libplayback will need to change due to changes in audio stuff or whether we can keep using it as-is)
libplayback-1-0 (not sure if libplayback will need to change due to changes in audio stuff or whether we can keep using it as-is)
osso-systemui-actingdead (not sure if this is still needed going forward or not)
osso-systemui-modechange (not sure if this is still needed going forward or not)

For the cellular modem we need to decide whether to A.Reverse engineer the cellular services daemon and its plugins and modify ofono or fsogsmd to export the same interfaces, B.Reverse engineer the things that talk to the cellular modem and replace them with new bits that do the same thing but talk to existing ofono/fsogsmd interfaces C.Some combination of A and B or D.Go lower level and parse the ISI data that's sent to the modem and convert them into whatever we need in order to talk to the modem in the Neo900.
For some bits (e.g. status bar widgets or the ICD GPRS plugin) it may be easier to rewrite. For others (e.g. dialer) rewriting is not an option and we need to make the new low level bits do what those upper level bits need:

Cellular modem low-level bits:
csd-base
csd-call
csd-gprs
csd-info
csd-sat
csd-sms
csd-ss
libcscall2
libcsnet-dev
libcsnet0
libisi-glib0
libisi1
libsimpb0
libsim0
libsms-utils0
libsms0
libss1
libtelcommon0
phonet-at
phonet-utils
ssc-daemon
sms-manager
libphinfo0

Cellular UI bits that talk to the low level bits:
connui-cellular-settings
rtcom-call-ui
rtcom-messaging-ui
connui-conndlgs-cellular
connui-statusbar-cellular
telepathy-ring
evolution-data-server-addressbook-backend-sim
gprs-provisioning
libconnui-cellular
librtcom-call-ui0
osso-mission-control
operator-wizard-settings
ota-settings
osso-systemui-emergency

For the internet connectivity daemon and wlan bits and such we need to figure out whether to keep using the binary blobs below or to replace them (and which ones to replace):
connui-conndlgs-internet
connui-conndlgs-wlan
connui-iapsettings
connui-iapsettings-gprs
connui-iapsettings-wlan
connui-statusbar-internet
osso-wlan-security
icd2
icd2-dev
icd2-network-wlan-config
icd2-settings-default
libicd-network-dummy
libicd-network-eap
libicd-network-gprs
libicd-network-ipv4
libicd-network-wlan
libicd-network-wlan-dev
libicd-network-wps
libicd2
libconnui

For GPS, the way to go is to replace the below packages with drop-in replacements that talk to the GPS chip in the Neo900
liblocation-dev
liblocation0
liblocation0-doc

For pulseaudio packages below, since our hardware is different, we probably dont need to use these, if we do, what do we do about them? Use whatever the various alternate OSs on the N900 are doing? (i.e. whatever the MeeGo-on-N900 work has morphed into these days) Reverse engineer these? Replace them completly?
pulseaudio-module-nokia-common
pulseaudio-module-nokia-music
pulseaudio-module-nokia-record
pulseaudio-module-nokia-voice
pasr

For browser UI and bits, do we A.Keep existing closed UI as-is B.Clone some or all of closed UI and modify it C.Write totally new UI that replaces existing UI but keeps same open backend (browserd etc) or D.Use totally different browser for N900 and ditch microb completly? Browser bits are as below:
osso-bookmark-engine
osso-bookmark-engine-dev
osso-browser
tablet-bookmark-manager
tablet-browser-controls
tablet-browser-default-plugin
tablet-browser-dialogs
tablet-browser-mediaplayer-plugin
tablet-browser-ui
tablet-browser-view
tablet-browser-view-dev
tablet-browser-widgets

For camera, not sure if we need to keep using the below packages, clone them and change for whatever new hardware we have or write something new:
libomap3cam
omap3camd
libhllc0

For the sysinfo libraries we probably need to create drop-in replacements that do the same job but fit our stack:
libsysinfo0
osso-product-info
libossoproductinfo0
sysinfo-common
sysinfod
sysinfo-tool

For the DSP stuff, we may need new bits for whatever chip we have, we may need to replace these things, we may need to drop them completly, I dont know.
libipp-nokia
gstreamer0.10-ipp-nokia
omap3430-dsp-baseimage-ti
omap3430-dsp-libraries-ti
libbridge2
libomxil-ti-components
libomxil-ti0
 

The Following 60 Users Say Thank You to jonwil For This Useful Post: