Skip to content

Add retaskable + retaskable-capture#245

Open
jdkruzr wants to merge 14 commits into
vellum-dev:mainfrom
jdkruzr:add-retaskable
Open

Add retaskable + retaskable-capture#245
jdkruzr wants to merge 14 commits into
vellum-dev:mainfrom
jdkruzr:add-retaskable

Conversation

@jdkruzr

@jdkruzr jdkruzr commented Jun 22, 2026

Copy link
Copy Markdown

CalDAV task client for reMarkable tablets, plus its xochitl note-capture/jump-back hooks. The app is source-built from the reTaskable v1.0.2 GitHub tag for both aarch64 and armv7; capture hooks are OS-pinned to 3.27 and depend on the app.

Comment thread packages/retaskable-capture/VELBUILD Outdated
Comment thread packages/retaskable-capture/VELBUILD Outdated
Comment thread packages/retaskable-capture/VELBUILD Outdated
Comment thread packages/retaskable-capture/VELBUILD Outdated
Comment thread packages/retaskable-capture/VELBUILD Outdated
Comment thread packages/retaskable/VELBUILD Outdated
Comment thread packages/retaskable/VELBUILD Outdated
Comment thread packages/retaskable/VELBUILD Outdated
Comment thread packages/retaskable/VELBUILD Outdated
Comment thread packages/retaskable/VELBUILD Outdated
jdkruzr and others added 9 commits June 23, 2026 10:45
Co-authored-by: Nathaniel van Diepen <Eeems@users.noreply.github.com>
Co-authored-by: Nathaniel van Diepen <Eeems@users.noreply.github.com>
Co-authored-by: Nathaniel van Diepen <Eeems@users.noreply.github.com>
Co-authored-by: Nathaniel van Diepen <Eeems@users.noreply.github.com>
Co-authored-by: Nathaniel van Diepen <Eeems@users.noreply.github.com>
Co-authored-by: Nathaniel van Diepen <Eeems@users.noreply.github.com>
Co-authored-by: Nathaniel van Diepen <Eeems@users.noreply.github.com>
Co-authored-by: Nathaniel van Diepen <Eeems@users.noreply.github.com>
Co-authored-by: Nathaniel van Diepen <Eeems@users.noreply.github.com>
@jdkruzr

jdkruzr commented Jun 24, 2026

Copy link
Copy Markdown
Author

Updated in 553a39d:

  • Folded capture into a retaskable-capture subpackage inside the main retaskable VELBUILD.
  • Switched the app package from the prebuilt release zip to a source build from upstream v1.0.1.
  • Added armv7 to the app build path alongside aarch64. I can't personally validate rm1/rm2 hardware, so testing from someone with those devices would still be welcome.
  • Kept capture available without rm1/rm2 exclusions and pinned only to remarkable-os>=3.27; the hooks were developed/verified against xochitl 3.27 QML, but I'm intentionally not adding a <3.28 upper bound unless breakage is reported.
  • Applied the cleanup suggestions: shorter descriptions, multiline deps, no noisy lifecycle messages, no custom unpack, and no checksum comments.

Validation now includes:

  • vbuild -C packages/retaskable checksum
  • vbuild -C packages/retaskable gen
  • ./scripts/build-package.sh retaskable aarch64
  • ./scripts/build-package.sh retaskable armv7

Those produced both retaskable and retaskable-capture APKs for aarch64 and armv7. The upstream Rust tests also pass (138 tests), and the upstream aarch64 SDK build was validated from the reTaskable repo root.

@jdkruzr

jdkruzr commented Jun 24, 2026

Copy link
Copy Markdown
Author

Follow-up correction: I remembered the local reTaskable SDK path and validated the upstream aarch64 build too.

Validation also includes:

  • From the reTaskable repo root: source sdk/environment-setup-cortexa55-remarkable-linux && ./app/build-rmpp.sh
  • Produced app/output-rmpp/backend/entry as an aarch64 ELF plus resources.rcc, manifest.json, and icon.png.
  • Updated upstream v1.0.1 so build-rmpp.sh works with both the local SDK compiler names and the Vellum/Toltec compiler names.
  • Updated this PR source archive checksum to match the final v1.0.1 tag.
  • Validated the Vellum package builds through vbuild/Podman for both aarch64 and armv7.

I still have not personally hardware-tested rm1/rm2.

@jdkruzr

jdkruzr commented Jun 25, 2026

Copy link
Copy Markdown
Author

[@Eeems] anything else you need from me? I actually do need to push up a small bugfix change anyways.

@Eeems

Eeems commented Jun 25, 2026

Copy link
Copy Markdown
Collaborator

Push away, I just haven't had time to test and merge yet.

@jdkruzr

jdkruzr commented Jun 25, 2026

Copy link
Copy Markdown
Author

Pushed 7d63066, bumping retaskable to upstream v1.0.2.

What changed upstream in v1.0.2:

  • Fixes a sync edge case where a full reconciliation could delete a still-pending local create row, leaving the create op to report cache row vanished mid-flush even after the server accepted the task.
  • Adds a Settings sync-error panel that lists errored/retrying pending operations with op id, type, summary, age, attempt count, and full last error for issue reports.

Validation rerun:

  • cargo test --bin retaskable-backend in reTaskable: 142 passed.
  • vbuild -C packages/retaskable checksum
  • vbuild -C packages/retaskable gen && vbuild -C packages/retaskable validate
  • CARCH=aarch64 vbuild -C packages/retaskable clean && CARCH=aarch64 vbuild -C packages/retaskable all
  • CARCH=armv7 vbuild -C packages/retaskable clean && CARCH=armv7 vbuild -C packages/retaskable all

Those produced retaskable and retaskable-capture APKs for both aarch64 and armv7 from the pushed v1.0.2 source archive. Same caveat as before: I still have not personally hardware-tested rm1/rm2.

@Eeems

Eeems commented Jun 25, 2026

Copy link
Copy Markdown
Collaborator

/publish-testing

@github-actions

Copy link
Copy Markdown

Packages published to testing repo:

  • retaskable

Install with:

vellum add retaskable@testing

@Eeems Eeems left a comment

Copy link
Copy Markdown
Collaborator

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

  • icon is just the word "example"
  • The title and "not yet synced" text is rather small and hard to read compared to the button text
  • The "no open tasks" text is quite a faint grey, and hard to read.
  • There is no way to show the entered password to make sure it was entered correctly, which is rather painful
  • I can't appear to connect to my nextcloud instance, it's complaining about "step 1: PROPFIND" and "No address associated with hostname". So I can't validate if it's actually working.
  • I can try to create a task and click the create button but nothing is added, which is likely due to the lack of synchronization setup

@jdkruzr

jdkruzr commented Jun 29, 2026

Copy link
Copy Markdown
Author

Pushed c2d2a21, bumping retaskable to upstream v1.0.3.

This addresses the testing feedback:

  • Replaced the placeholder EXAMPLE app icon with a simple check/task mark matching the capture affordance.
  • Increased the app title/status/empty-state readability and darkened the empty-state text.
  • Added a Show/Hide control for the Settings app-password field.
  • Made Create visibly unavailable until Settings + first Sync have established the target calendar; tapping with a draft summary now gives a setup/sync prompt instead of looking like a no-op.
  • Normalized common Server URL inputs (nextcloud.example.com, bare /remote.php/dav) and made DNS / malformed URL / auth discovery errors clearer while preserving the underlying detail.

Validation rerun:

  • Upstream cargo test --bin retaskable-backend: 146 passed.
  • Upstream aarch64 SDK build: source sdk environment && ./app/build-rmpp.sh produced backend/entry, resources.rcc, manifest.json, and the new icon.png.
  • vbuild -C packages/retaskable checksum
  • vbuild -C packages/retaskable gen && vbuild -C packages/retaskable validate
  • CARCH=aarch64 vbuild -C packages/retaskable clean && CARCH=aarch64 vbuild -C packages/retaskable all
  • CARCH=armv7 vbuild -C packages/retaskable clean && CARCH=armv7 vbuild -C packages/retaskable all

Both Vellum builds produced retaskable and retaskable-capture APKs for aarch64 and armv7. Same caveat as before: I still have not personally hardware-tested rm1/rm2.

@jdkruzr

jdkruzr commented Jun 29, 2026

Copy link
Copy Markdown
Author

Pushed 0dbbc55, bumping retaskable to upstream v1.0.4.

This is a small icon-only follow-up after device testing: the app icon is now a strictly two-color 100x100 PNG with no antialiasing/alpha fringe, which avoids rendering artifacts in the AppLoad launcher.

Validation rerun:

  • Upstream icon was installed on-device and verified by checksum against /home/root/xovi/exthome/appload/retaskable/icon.png.
  • vbuild -C packages/retaskable checksum
  • vbuild -C packages/retaskable gen && vbuild -C packages/retaskable validate
  • CARCH=aarch64 vbuild -C packages/retaskable clean && CARCH=aarch64 vbuild -C packages/retaskable all
  • CARCH=armv7 vbuild -C packages/retaskable clean && CARCH=armv7 vbuild -C packages/retaskable all

Both Vellum builds produced retaskable and retaskable-capture APKs for aarch64 and armv7 from the pushed v1.0.4 source archive.

Also noting for testing-repo users: the earlier /publish-testing run happened before the v1.0.3 and v1.0.4 bumps, so it will need to be run again if the testing package should include the latest review fixes and cleaned-up icon.

@Eeems

Eeems commented Jul 1, 2026

Copy link
Copy Markdown
Collaborator

/publish-testing

@github-actions

github-actions Bot commented Jul 1, 2026

Copy link
Copy Markdown

Packages published to testing repo:

  • retaskable

Install with:

vellum add retaskable@testing

@Eeems Eeems left a comment

Copy link
Copy Markdown
Collaborator

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

  • It's now complaining about "No 'Authorization: Basic' header found". When I try to go to the url it mentions, if I use the same credentials requested for basic auth, I do not receive a 401.
  • I still have concerns with how difficult it can be to read much of the text

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Projects

None yet

Development

Successfully merging this pull request may close these issues.

2 participants