nokia series60
Nokia::File::NFB 0.01
Nokia::File::NFB is a Perl module to create, read and rrite Nokia nfb/nfc phone backup files. more>>
SYNOPSIS
use Nokia::File::NFB;
my $nfb = new Nokia::File::NFB;
## read in the file phone_backup.nfb.
$nfb->read(phone_backup.nfb);
## print out the phone model the backup file is of.
print "Phone model is ", $nfb->phone(), "n";
## change the phone model to PerlPhone.
$nfb->phone("PerlPhone");
## write out the file as new_phone_backup.nfb.
$nfb->write(new_phone_backup.nfb);
This is used to parse existing or create new files in Nokia NFB or NFC format. NFB is the format used by the Nokia PC Suite Backup and Restore software.
The most interesting part is probably the elements() method. This is used to return each internal file backed up in the NFB file as a Nokia::File::NFB::Element object. These are useful things such as photos, contacts and calendar files.
I dont actually know what the letters NFB or NFC actually stand for, but they are the suffixes used on the backup and copy file created by the Backup and Restore program.
gnokii 0.6.18
gnokii provides tools and a user space driver for use with mobile phones under Linux. more>>
The original Nokia 3810/3110/8110 project originated from discussions between Francois Dessart, Hugh Blemings and others. Its goal was to develop a replacement for Nokias Cellular Data Suite (CDS) software which was to run under Linux. The project began in late October 1998. This project actually produced some preliminary code that ran under Linux.
A similar project was started by Staffan Ulfberg to provide software for the Nokia 6110 and similar phone models. Actual software development had not started yet at the time of the merge of the projects. The project was oriented towards most platforms unsupported by the Nokia Cellular Data Suite.
It is worth mentioning that these phones were quite popular but didnt provide AT layer to make data calls (to connect to Internet). Such layer was provided by NDCS (among other stuff present in this software).
Towards the end of February 1999, the two projects combined to form the current gnokii project. Reasons for this was to avoid duplicate coding efforts, and to have only one mailing list for sharing information about the phones.
Things progressed well until the latter part of 2000 where due to other commitments on the part of the then principal authors, Pavel Janik and Hugh Blemings things stagnated somewhat. Happily some long term contributors to the project stepped in to lend a hand and developement is once again proceeding apace.
Enhancements:
- Fixes for incoming call and SMS notifications support.
- A fix for long SMS splitting.
- The extended phonebook has been updated for series40 phones handling.
- Multi-part SMS support has been added for the SMSD MySQL backend.
Sofia-SIP 1.12.6
Sofia-SIP is an open-source SIP User-Agent library, compliant with the IETF RFC3261 specification. more>>
Sofia-SIP project can be used as a building block for SIP client software for uses such as VoIP, IM, and many other real-time and person-to-person communication services.
The primary target platform for Sofia-SIP is GNU/Linux. Sofia-SIP is based on a SIP stack developed at the Nokia Research Center. Sofia-SIP is licensed under the LGPL.
Main features:
SIP features
- Sofia-SIP implementation follows RFC3261 and related key RFCs. INFO, UPDATE and REFER methods are supported. Also supported is SIMPLE presence and instant messaging, with the MESSAGE, SUBSCRIBE/NOTIFY and PUBLISH methods. Features such as early sessions, provisional responses, early media, caller preferences and session timers are included. Full set of transports, including both TCP and UDP over either IPv4 or IPv6, are supported.
SIP Offer-Answer module
- Sofia-SIP provides an implementation of the SDP offer-answer negotiation as specified in RFC3264. This is an essential component in using SIP to establish media sessions such as VoIP and video conferencing.
NAT traversal support
- Support for STUN as specified in RFC3489. STUN functionality is available via a separate module, so it can also be used independently from the base SIP stack. SIP extensions such as symmetric response routing (RFC3581/rport) are supported as well.
SIP security support
- Signaling can be secured by use of SSL/TLS. Also HTTP basic and digest authentication methods are supported.
GnomerMind 1.0.1
GnomerMind is a puzzle game for Gnome, loosely based on the classic MasterMind game. more>>
Ive always been fascinated by this game, and Ive spent an heap of time playing the version (Logic) implemented on some Nokia cellular phones.
Main features:
- All the fascination of the original game
- Immediate, easy-to-learn gameplay
- Highly customizable: up to 7 game parameters can be configured at your will
- Funny & eye-catching graphics
- Theme support: make GM appear just as you want!
- Sound effects for an even funnier playing action
- Control the game via mouse or keyboard... to be as immediate as you like it!
- Possibility to save your exciting matches and restore them later
- Full documentation: in-game help system & theme building tutorial
- Easy to install, light for the system
It speaks many languages, including:
- English
- Italian
- Russian
- French
- Swedish
- Dutch
- Turkish
- German
- Spanish
- Slovak
- Portuguese (standard)
- Chinese (traditional)
- Japanese
- Conform to the GNOME standards
Mobile::UserAgent 1.05
Mobile::UserAgent is a mobile user agent string parsing class. more>>
SYNOPSIS
### Print the information parsed from a user-agent string:
use Mobile::UserAgent;
my $useragent = Nokia6600/1.0 (4.09.1) SymbianOS/7.0s Series60/2.0 Profile/MIDP-2.0 Configuration/CLDC-1.0;
my $uaobj = new Mobile::UserAgent($useragent);
if ($uaobj->success()) {
print Vendor: . $uaobj->vendor() . "n";
print Model: . $uaobj->model() . "n";
print Version: . $uaobj->version() . "n";
print Series60: . $uaobj->isSeries60() . "n";
print Imode?: . $uaobj->isImode() . "n";
print Mozilla?: . $uaobj->isMozilla() . "n";
print Standard?: . $uaobj->isStandard() . "n";
print Rubbish?: . $uaobj->isRubbish() . "n";
}
else {
print "Not a mobile user-agent: $useragentn";
}
### Determine if the client is a mobile device.
use Mobile::UserAgent ();
use CGI ();
# Check 1: (check if it sends a user-agent profile URL in its headers)
foreach my $name (X_WAP_PROFILE,PROFILE,13_PROFILE,56_PROFILE) {
if (exists($ENV{"HTTP_$name"})) {
print "Client has a user-agent profile header, so its probably a mobile device.n";
last;
}
}
# Check 2: (check if it supports WML):
my $q = new CGI();
if ($q->Accept(text/vnd.wap.wml) == 1) {
print "Client supports WML so its probably a mobile device.n";
}
# Check 3: (check if this class can parse it)
my $uaobj = new Mobile::UserAgent();
if ($uaobj->success()) {
print "Clients user-agent could be parsed, so its a mobile device.n";
}
Parses a mobile user agent string into its basic constituent parts, the most important being vendor and model.
One reason for doing this would be to use this information to lookup vendor-model specific device characteristics in a database. You can use also use user agent profiles to do this (for which Ive developed other classes), but not all mobile phones have these, especially the older types. Another reason would be to detect if the visiting client is a mobile handset.
Only real mobile user-agent strings can be parsed succesfully by this class. Most WAP emulators are not supported because they usually dont use the same user-agent strings as the devices they emulate.
Sheepsort 1.0
Sheepsort project is a MIDlet game similar to Jezzball. more>>
Sheepsort is a MIDlet game where one has to put up some fences on a sheep pasture in order to separate the black sheep from the white sheep.
The problem is that the fences must not be hit by a sheep while they are being built.
The goal of the game is to put up some fences on a sheep pasture so that the black sheep are separated from the white sheep. The challenge is that the fences must not be hit by the sheep while they are being build.
Use the cursor keys of your phone to move, the fire key to start a fence and the GAME_A or GAME_B button to change the direction of the fence. The direction can also be changed by pressing LEFT+RIGHT or UP+DOWN in quick succession.
The program was written for and tested on the Nokia 3650 phone. Though it can be compiled also for other devices since there are sources that depend only on the common J2ME features. But its recommended to play it only on phones with a large color screen.
Convert Video To Nokia 5800 and others 0.1
Easily convert videos to a Nokia 5800XM mobile phone more>>
Convert Video To Nokia 5800 and others 0.1 is created as a simple service menu entry to easily convert videos to a Nokia 5800XM mobile phone using ffmpeg or convert the files to mpeg4 with aac.
Installation note:
- The default folder to put the file is/home/user/.kde/share/kde4/services/ServiceMenus (for user specific)or/usr/share/kde4/services/ServiceMenus (for system wide). If for some reason your folders are different use command kde4-config --path services to find out the right folders.
- You can easily change the ffmpeg command just by opening the file with a text editor. Currently the command is:ffmpeg -i %u -f mp4 -vcodec mpeg4 -r 30 -b 2200k -s 640x360 -acodec libfaac -r 32000 -ab 128k -ac 2 -async 1 %u.mp4
Requirements:
- KDE
Water Kills 1.73
Bemused is a system which allows you to control your music collection from your phone, using Bluetooth. more>>
Main features:
- Browse your music collection on your phone
- Play files in any format supported by Winamp - including MP3s, CDs, MIDIs, etc.
- Control Winamp versions 2, 3 and 5, Windows Media Player and PowerPoint Viewer
- Pause, stop, rewind, fast-forward etc.
- Add songs to the playlist and use shuffle and repeat
- Browse and select songs in your playlist
- Download songs to your phone (supported formats: WAV and MIDI; plus MP3 for UIQ)
- Customise the look of the system with skins
Enhancements:
- Series 60: Added new version of German localisation by Ozan Sambur
- Integrated Joachim von Carons fix for a potential PowerPoint crash
- Added ability to get current volume on startup (Winamp 2 or 5 only)
- Fixed bug where song title would be wrong after a playlist repeating
- Fixed bug with getting current song time with Winamp 5
- Fixed crash when pressing Play when using PowerPoint with no presentation loaded
- Improved handling of comms errors in the Bemused server
Kismet 2007-01-R1
Kismet is an 802.11 wireless network sniffer. more>>
Kismet identifies networks by passively collecting packets and detecting standard named networks, detecting (and given time, decloaking) hidden networks, and infering the presence of nonbeaconing networks via data traffic.
Main features:
- Ethereal/Tcpdump compatible data logging
- Airsnort compatible weak-iv packet logging
- Network IP range detection
- Built-in channel hopping and multicard split channel hopping
- Hidden network SSID decloaking
- Graphical mapping of networks
- Client/Server architecture allows multiple clients to view a single
- Kismet server simultaneously
- Manufacturer and model identification of access points and clients
- Detection of known default access point configurations
- Runtime decoding of WEP packets for known networks
- Named pipe output for integration with other tools, such as a layer3 IDS like Snort
- Multiplexing of multiple simultaneous capture sources on a single Kismet instance
- Distributed remote drone sniffing
- XML output
- Over 20 supported card types
Enhancements:
- Additional IDS alerts, fixes for multiple crashes, better BSD support, Win32 native capture with Cace AirPcap devices, Nokia 770/800 support, and other minor updates.
Sisopen 0.1
Sisopen is a tool to list and extract the content of SIS files. more>>
Sisopen is an ANSI-C program, mainly targetted to Linux and other Unix-like systems it can be compiled almost in every system with a C compiler having zlib.
Defining NOZLIB at compile time makes you able to compile without zlib, but only file listing is available in this mode, files cant be extracted.
EXAMPLE
First example, list the content of a .sis file
$ sisopen sis/torch.sis
sis/torch.sis: SIS header detected
application UID: 0x78F172C
application version: 1.20
Languages
UK English
Files
000 !:systemappsTorchTorch.aif 1941
001 !:systemappsTorchTorch_caption.rsc 32
002 !:systemappsTorchTorch.rsc 70
003 !:systemappsTorchTorch.app 5548
A more interesting example showing the ability of sisopen to fully understand SIS files including conditionals:
$ sisopen sis/Nokia_N70_patch.SIS
sis/Nokia_N70_patch.SIS: SIS header detected
application UID: 0x20000BB0
application version: 1.00
Languages
UK English
Files
[endif]
001 f C:DOCUME~1m1smithLOCALS~1TempMKS0WrongDevice0.txt 122
[else]
003 f C:DOCUME~1m1smithLOCALS~1TempMKS0Finished0.txt 254
004 c C:systemtempNokiaN70Patch1.exe 1552
005 f C:DOCUME~1m1smithLOCALS~1TempMKS0Distribution0.txt 288
[if (0x10200f9a == MachineUID)]
SIS file conditionals must be read upside down, starting from the bottom of the output. This is a patch for the N70 smartphone so the conditional is if MachineUID == 0x... (the N70 UID) install the files, else show a Wrong Device message.
Main features:
- list SIS file content, including conditionals, file type, installation time options
- extract files (try -x)
- the verbose mode gives a lot more information about the sis header and individual files (try -v)
Usage:
sisopen filename.sis (in order to list .sis file content)
sisopen -x filename.sis (extract files)
sisopen -v filename.sis (show a lot of information about the sis file)
sisopen -h (show a little help page)
It is possible to pass more than one file name to sisopen. Every file is processed in the order they are given. Options dont require to be passed in a specific position so
sisopen -x filename.sis
is equivalent to
sisopen filename.sis -x
Dates 0.4.1
Dates project is a small, light-weight calendar that shares data with GNOME Evolution. more>>
Dates is a small, light-weight calendar that shares data with GNOME Evolution. Dates features an innovative, unified, zooming view and is designed for use on hand-held devices, such as the Nokia 770 or the Sharp Zaurus series of PDAs.
OBEX Send to Phone 0.0.0
OBEX Send to Phone service menu allows for sending any file(s) to a mobile phone equipped with OBEX stack. more>>
It is made for Nokia S60 (6630 to be precise) phone with USB connection. There are no settings, no progress indicator. Files are copied to the memory card (E: drive)
Requires openobex and obexftp.
Hope this script might be useful for someone. Please post fixes, comments and suggestions.
Contacts 0.5
Contacts is a Evolution-Data-Server based addressbook. more>>
Contacts is a small, lightweight addressbook that uses libebook. This is the same library that GNOME Evolution uses, so all contact data that exists in your Evolution database is accessible via Contacts.
Contacts features advanced vCard field type handling and is designed for use on hand-held devices, such as the Nokia 770 or the Sharp Zaurus series of PDAs.
Madrigal 0.2
Madrigal is a network-controlled real time music visualization program (i.e. VJing software). more>>

Bazaar Explorer 0.5
desktop application providing an easy-to-use interface to the Bazaar version control system more>>
Bazaar Explorer 0.5 is a simple to use, yet sophisticated desktop application with an easy-to-use interface for the Bazaar version control system. It is designed to be simple enough for casual users of version control, yet powerful enough for experts to be productive. To see BzrExplorer in action, see Bazaar Explorer by Pictures or browse the screenshots.
Unlike many other version control applications, BzrExplorer puts the focus on managing branches and changes, rather than directories and files. (If you prefer the latter, you may find an extension to the File Manager provided as part of the operating system more to your liking, e.g. TortoiseBzr.)
Major Features:
- Cross Platform
- Based on Nokia's Qt technology, BzrExplorer runs on all popular desktops including GNOME, KDE, Windows and Mac OS X. In each environment, it provides a native look-and-feel and adjusts its menu to meet the UI design guidelines for that platform.
- Application Suites
- BzrExplorer provides most of its functionality by calling out to mini-applications provided by "application suites", namely the QBzr and bzr-gtk plugins. QBzr is required while bzr-gtk is optional. If both are installed, you can choose which application suite to use.
- Note: Different application suites provide different amounts of coverage of Bazaar's functionality. If you expect an action to be enabled and it isn't, it's probably because the application suite is yet to provide that feature.
- Location Views:
- BzrExplorer supports 4 kinds of Bazaar locations:
-
- repositories
- branches
- bound branches (also called heavyweight checkouts in Bazaar 1.x)
- checkouts.
- The summary view and actions available depend on the location kind. For example, opening a repository shows the interesting locations nested within it while opening a branch shows the working tree "status" summary.
- Note: Strictly speaking, "repositories" are actually called shared repositories and "checkouts" are actually called lightweight checkouts. Those more-precise terms are avoided in the BzrExplorer user interface to Keep It Simple for casual users.
- Change Management: Here's the most commonly used recipe by BzrExplorer users:
- Open a branch
- Change some files
- Select Refresh on the toolbar (F5), confirming the overall status
- Select Diff on the toolbar (F3), checking the changes
- Select Commit on the toolbar (F4)
- Enter a commit message and select OK
- Select Refresh on the toolbar (F5), confirming there are no outstanding changes
- Remote Locations
- While primarily designed for working on local branches, BzrExplorer lets you open remote locations, e.g. branches on Launchpad. The set of actions available is masked accordingly.
- Settings Management
- BzrExplorer provides easy access to all of Bazaar's configuration files. Custom dialogs are provided by the various application suites for nice editing of some of these. For others, a (configurable) text editor is launched.
- Troubleshooting
- BzrExplorer provides easy access to Bazaar's log file and the Launchpad pages for reporting bugs and asking questions about BzrExplorer. A diagnostic mode can also be enabled in which selecting an action simply shows what Bazaar command would actually be run, together with the options and parameters that would be passed to it.