A GitHub template for new Qt 4.7 / QML 1.1 apps targeting Symbian Belle
(Nokia C7 class). It boots with storage, logging, networking/TLS, memory
monitoring, and audio already wired, plus build/package/scaffold scripts — so
you start from a running app, not an empty main().
The default app is named Xyz and its landing screen is a subsystem self-test: TLS, SQLite round-trip, live RAM, and audio playback each report pass/fail. Run it first on a fresh device to confirm the platform layers work before you write any app code.
- Click Use this template on GitHub (or clone this repo).
- Personalize the name + Symbian UID:
Pick a UID in the self-signed range
pwsh scripts/init-project.ps1 -AppName "MyApp" -Uid 0xE1234567
0xE0000000–0xEFFFFFFF. - Build and run on the simulator:
pwsh scripts/build-simulator.ps1 -Config Debug -Clean pwsh -File build-simulator\debug\MyApp.run.ps1
One step — build, package, and self-sign into a .sis:
pwsh scripts/build-sis.ps1 -Config Release -Arch armv5Or run the two stages separately:
pwsh scripts/build-symbian.ps1 -Config Release -Arch armv5
pwsh scripts/package-symbian.ps1 -Config Release -Arch armv5Either way you get a self-signed build-symbian\<arch>-<config>\Xyz_selfsigned.sis,
ready to transfer to the device (e.g. over Bluetooth). Add -Clean after editing
QML so rcc regenerates and the .qml changes are baked into the build. See
docs/SYMBIAN_PACKAGING.md for install steps, and docs/DEVICE_NOTES.md for
hard-won device gotchas.
| Path | What |
|---|---|
Xyz.pro |
qmake project |
src/ |
C++ managers (Storage, Audio, Memory, Tls) + bootstrap |
qml/ |
QML UI: AppWindow, SelfTestPage, page-stack shell |
scripts/ |
build / package / inspect / init PowerShell scripts |
docs/ |
packaging guide, storage schema, device log, plan |
- Qt SDK with Qt Simulator (Qt 4.7.4, MinGW), typically under
C:\Symbian\QtSDK. - For device builds: the Symbian SDK (
SymbianSR1Qt474) with RVCT 4.0.
On-device behaviour can't be verified from CI (the legacy toolchain isn't hostable on hosted runners). Always smoke-test the self-test page on hardware.
The now-playing notification uses the Pigler Notifications API (PNA), a separate on-device service. To see notifications, install it on the phone:
- Download and install
Pigler.sisfrom https://nnproject.cc/pna/. - Reboot the phone.
Without Pigler installed the app runs normally — you just won't get the status-panel notification. Tapping the notification opens the app at the currently playing episode. The notification icon is currently a placeholder.
MIT — see LICENSE.