/palmrs

[WIP] Libraries & tools for interacting with Palm OS devices and their data

Primary LanguageRustApache License 2.0Apache-2.0

palm.rs

A collection of libraries and command-line utilities for interacting with Palm OS devices, and the data stored on them.

Command-line tools

To install the basic set of palm.rs command-line tools:

% cargo install --git https://github.com/u1f408/palmrs.git palmrs

To install everything, including all sync conduits and debugging tools:

% cargo install --git https://github.com/u1f408/palmrs.git --features all palmrs

HotSync

The main HotSync tool is palmrs-sync (NOT YET IMPLEMENTED).

The adaptation of the Palm OS database formats to and from formats that other tools can understand is performed by sync conduits, which are external command-line applications.

The default installation via Cargo only installs the sync conduits that are deemed "essential" - to install all provided sync conduits (even if you don't enable them in your sync configuration), enable the sync-all feature when installing palm.rs (cargo install --features sync-all palmrs, or similar).

Default sync conduits:

  • Tasks (To Do) app <-> todo.txt: palmrs-conduit-todotxt

Other sync conduits: (enabled with the sync-all feature)

  • TODO

Debugging / development tools

To use these tools, enable the cli-debug feature when installing palm.rs (cargo install --features cli-debug palmrs, or similar).

You can run any of the below tools with the --help argument for a summary of their usage, and available command-line options.

Palm OS database tools:

  • Dump a Palm OS database file: palmrs-db-dump

HotSync / sync conduit tools:

  • Call a sync conduit in debugging mode: palmrs-sync-dbgconduit

Library crates

The library crates that make up palm.rs include:


License

Licensed under either of Apache License, Version 2.0 or MIT license, at your option.
Unless you explicitly state otherwise, any contribution intentionally submitted for inclusion in the work by you, as defined in the Apache-2.0 license, shall be dual licensed as above, without any additional terms or conditions.