Conversation
…g/Signal collision
This file contains hidden or bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Sign up for free
to join this conversation on GitHub.
Already have an account?
Sign in to comment
Add this suggestion to a batch that can be applied as a single commit.This suggestion is invalid because no changes were made to the code.Suggestions cannot be applied while the pull request is closed.Suggestions cannot be applied while viewing a subset of changes.Only one suggestion per line can be applied in a batch.Add this suggestion to a batch that can be applied as a single commit.Applying suggestions on deleted lines is not supported.You must change the existing code in this line in order to create a valid suggestion.Outdated suggestions cannot be applied.This suggestion has been applied or marked resolved.Suggestions cannot be applied from pending reviews.Suggestions cannot be applied on multi-line comments.Suggestions cannot be applied while the pull request is queued to merge.Suggestion cannot be applied right now. Please check back later.
Follow-up to #23. The shared-
~/.config/Signal-directory tradeoff documented in that PR (declined isolation, accepted the risk) broke for real within hours: the multi-account fork's schema cap (1730) is behind official Signal-Desktop's current schema (which reached 1740 once the official package was updated), and a profile touched by the newer app becomes unopenable by the older one. No data was lost — SQLite migrations are additive and Signal's own startup guard refuses to touch a database from a newer schema rather than risk corrupting it — but access was blocked until the official package caught up.Change
do_install()no longer symlinks/usr/bin/signal-desktop-mastraight to the binary. It's now a wrapper that forces--user-data-dir="$HOME/.config/Signal-MA":Verified this is the correct mechanism: Electron's native
--user-data-dirCLI switch is read before any app-level JS runs, and this fork's own config-based override (storagePath/storageProfile, traced inapp/user_config.main.tsduring the original design work) only fires if those config keys are explicitly set — they aren't by default, so nothing in the app overrides the forced path.Test plan
xlint signal-desktop-maclean/usr/lib/signal-desktop-ma/signal-desktop --user-data-dir=<path> --versionconfirmed the flag works against the real binary directly/usr/bin/signal-desktop-ma --version(absolute path, bypassing an unrelated pre-existing/usr/local/bin/signal-desktop-maon this host that shadows it) confirmsuserData: $HOME/.config/Signal-MA