dev #7

Merged
such-gitea merged 5 commits from github-such-software/hash-wallet:dev into dev 2026-05-16 12:11:33 -04:00
Owner

Issue Number (if Applicable): Fixes #

Description

Please include a summary of the changes and which issue is fixed / feature is added.

Pull Request - Checklist

  • Initial Manual Tests Passed
  • Double check modified code and verify it with the feature/task requirements
  • Format code
  • Look for code duplication
  • Clear naming for variables and methods
  • Manual tests in accessibility mode (TalkBack on Android) passed
Issue Number (if Applicable): Fixes # # Description Please include a summary of the changes and which issue is fixed / feature is added. # Pull Request - Checklist - [ ] Initial Manual Tests Passed - [ ] Double check modified code and verify it with the feature/task requirements - [ ] Format code - [ ] Look for code duplication - [ ] Clear naming for variables and methods - [ ] Manual tests in accessibility mode (TalkBack on Android) passed
such-gitea added 5 commits 2026-05-16 12:11:27 -04:00
- assets/images/cake_logo_{light,dark}.svg replaced with the Hash Wallet
  horizontal lockup variants (03_lockup_horizontal.svg + ..._dark.svg).
  Welcome screen now shows our wordmark instead of the Cake mark.

- assets/images/welcome_dark_theme.svg rewritten as a cyberpunk starry
  night: deep green gradient sky, mint/pink/blue nebula glows, sharp
  4-point stars, and a subtle '#'-shaped constellation made of dots
  connected by mint lines — keeps the night-sky feel but in our palette
  and ties back to the brand mark.

- assets/images/welcome_light_theme.svg rewritten as a sunny morning:
  minty sky gradient, warm yellow sun, soft pink lower-left halo, white
  clouds, plus subtle brand-green sparkles for continuity with the dark
  variant.

- linux/CMakeLists.txt: APPLICATION_ID changed from the default
  com.example.cake_wallet to com.suchsoftware.hashwallet. (BINARY_NAME
  stays cake_wallet — renaming it requires touching every
  package:cake_wallet/... import in the codebase; explicitly deferred.)

- res/values/strings_en.arb: 'payment_made_easy' string changed from
  'Payments made easy' to 'Payments · Privacy · Security · made fun'.
GTK app identifier missed in last commit (Edit failed because Read wasn't
run first; the rest of the welcome-screen batch landed cleanly). Now the
Linux GDBus name + dock entry uses our own reverse-DNS, not the default
'com.example.*' GTK template value.
The big one. Touches 760+ files. Locks in the user's decision to break
import-line compatibility with upstream cake-tech/cake_wallet in exchange
for a binary named hash_wallet on every platform.

Changes:
- pubspec_description.yaml: project name cake_wallet -> hash_wallet
- 762 Dart files: every 'package:cake_wallet/...' import rewritten to
  'package:hash_wallet/...' (lib/, cw_*/lib/, tool/, test/, integration_test/)
- linux/CMakeLists.txt: BINARY_NAME cake_wallet -> hash_wallet
- windows/CMakeLists.txt: project + BINARY_NAME (CakeWallet -> HashWallet)
- windows/runner/Runner.rc: company / file / product strings to Hash Wallet
  + Such Software LLC copyright
- macos/Runner.xcodeproj/project_base.pbxproj: cake_wallet_new.app refs
  -> hash_wallet.app (macOS output bundle name)
- com.suchsoftware.HashWallet.yml (Flatpak): all binary path refs
  cake_wallet -> hash_wallet (e.g. /app/hash_wallet/hash_wallet)
- linux/com.suchsoftware.HashWallet.desktop: Exec=hash_wallet
- scripts/android/copy_monero_deps.sh: CW_DIR target path
- configure_hash_wallet.sh: error message typo (old filename)

INTENTIONALLY UNCHANGED:
- cw_* subpackage names (cw_core, cw_bitcoin, cw_wownero, etc.) — they
  remain as the historical 'cake wallet' naming; renaming them would
  cascade through every sub-package's internal structure
- Method channel name 'com.cake_wallet/native_utils' in iOS/macOS/Android
  AppDelegates and MainActivity — it's a string identifier that has to
  match the Dart side exactly. Renaming requires both-sides change; it's
  internal-only and not user-visible.
- ghcr.io/cake-tech/cake_wallet:debian13-... docker image references in
  build scripts — that's Cake Labs' published image we use as the build
  environment, not ours.

User data directory now follows the new binary name:
  ~/.local/share/hash_wallet/  (was ~/.local/share/cake_wallet/)
  ~/.config/hash_wallet/       (was ~/.config/cake_wallet/)
Existing users on the old name will need migration if any exist.
URL replacements throughout lib/:
- support_view_model.dart: removed Cake's own support channels (email,
  website, forum, Telegram, Telegram bot). Only GitHub Issues + Releases
  remain. Third-party provider support links (ChangeNow, SideShift,
  SimpleSwap, Exolix, Trocador, Onramper, DFX, MoonPay, Robinhood,
  Kryptonim) kept — genuinely useful when a swap goes sideways.
- transaction_details_view_model.dart + payjoin_details_view_model.dart:
  mempool.cakewallet.com -> mempool.space (canonical free public mempool,
  no affiliate).
- services_updates_widget.dart: status.cakewallet.com -> our GH issues.
- 8 widget/screen files: docs.cakewallet.com / blog / cakewallet.com help
  URLs repointed to github.com/Such-Software/hash-wallet (placeholder
  until we have our own docs; better than dead-linking to Cake's docs).

User-facing text changes:
- walletkit_service.dart: WalletKit metadata (name/description/url/icon/
  redirect) all -> Hash Wallet / Such Software repo / hashwallet:// scheme.
- di.dart: TrezorConnect callback URL + appName -> Hash Wallet.
- vulnerable_seeds_popup.dart + haven_wallet_removal_popup.dart: copy
  rewritten to say 'Hash Wallet' instead of 'Cake Wallet', and point to
  GH issues instead of Cake's support email.
- swap_provider_initial_preference_modal.dart: trailing 'Cake Wallet.'
  -> 'Hash Wallet.'

Deep-link URL scheme cakewallet:// -> hashwallet:// in:
- lib/main.dart, lib/src/screens/root/root.dart, lib/view_model/link_view_model.dart
  Means any cakewallet:// link from a payment QR / Trezor callback /
  shortcut now routes via hashwallet://. No existing user base so no
  migration needed.

SVG asset swaps (content replaced, filenames kept so call-sites compile
without rewriting):
- assets/new-ui/cake_squircle_icon.svg -> hash_wallet/02_app_icon.svg
- assets/new-ui/cakewallet-wordmark-light.svg -> hash_wallet/03_lockup_horizontal.svg
  (dark text for light backgrounds)
- assets/new-ui/cakewallet-wordmark.svg -> hash_wallet/03_lockup_horizontal_dark.svg
  (light text for dark backgrounds)
- apps_widget.dart: the conditional cakelabs-icon render became a SizedBox()
  no-op. The Apps tab is gutted anyway (placeholder content); this widget
  is also used elsewhere where the Cake Labs attribution badge is unwanted.
Nuke buy providers + flip node defaults from Cake to community
Some checks failed
Hash Wallet Linux build / build (pull_request) Failing after 8m29s
6ec755ec2c
Buy providers (Robinhood Connect, DFX, Onramper, MoonPay, Kryptonim, Meld):
- lib/entities/provider_types.dart: getAvailable{Buy,Sell}ProviderTypes()
  both return [] now. Each provider requires a formal partner contract
  with revenue-share — no free integrations exist. Re-add to the list
  once Such Software has registered the partner relationship per provider.
  Buy/Sell UI surfaces (cards_view.dart's onramp button -> Routes.buySellPage)
  still render but the provider list is empty, so the screen shows nothing.
- lib/view_model/support_view_model.dart: removed the third-party support
  LinkListItem entries for the dead buy providers. Kept the swap-provider
  support links (ChangeNow, SideShift, SimpleSwap, Exolix, SwapTrade,
  Trocador) — Trocador is still active and the others are useful for
  legacy users who created swaps before the trim.

Default node flip (per user request — 'someone else top choice, Cake nodes
stay in the list of others'):
- xmr-node.cakewallet.com:18081  -> node.sethforprivacy.com:443
- electrum.cakewallet.com:50002  -> electrum.blockstream.info:50002
- ltc-electrum.cakewallet.com:50002 -> electrum-ltc.bysh.me:50002
- btc-electrum.cakewallet.com:50002 -> electrum.blockstream.info:50002
Cake's nodes remain in the augmented lists (see asset/*_node_list.yml).
Silent-payments Electrs (electrs.cakewallet.com) + zcash default URI
unchanged — no good free alternative for silent payments, and zcash is
removed anyway.
such-gitea merged commit 63534084cb into dev 2026-05-16 12:11:33 -04:00
Sign in to join this conversation.
No Reviewers
No Label
1 Participants
Notifications
Due Date
No due date set.
Dependencies

No dependencies set.

Reference: Builds/hash-wallet#7