Skip to content

Replace Windows daemon TCP IPC with Qt local server/sockets#8180

Merged
nbolton merged 36 commits intomasterfrom
windows-daemon-ipc
Feb 28, 2025
Merged

Replace Windows daemon TCP IPC with Qt local server/sockets#8180
nbolton merged 36 commits intomasterfrom
windows-daemon-ipc

Conversation

@nbolton
Copy link
Copy Markdown
Member

@nbolton nbolton commented Feb 10, 2025

Fixes: #7804

Blocker:

I had initially planned to not make the daemon a Qt app, but due to Windows permissions, IPC was the best solution--which, I remember now, is the reason why I used IPC in the first place. The Qt implementation of IPC should be much more reliable and easier to maintain than the old version (which re-used the existing TCP code, mostly out of laziness).

Now, instead of sending log data from the daemon over IPC--overkill--the daemon simply tells the GUI the path of the daemon log, which the GUI then tails.

I also disabled the deskflow-server, deskflow-client, and deskflow-daemon binaries in favor of one: deskflow-core (moving this to new PR)

TODO:

  • Remove old IPC code
  • Fix Linux + macOS errors
  • Restore deskflow-daemon with original switches
  • Restore deskflow-server and deskflow-client
  • Test on Linux + macOS
  • Fix unit tests
  • Copyright dates
  • Fix fingerprint dialog bug (extracted: Remove Core stop/start for fingerprint dialog #8251)
  • Test Windows package

@nbolton nbolton force-pushed the windows-daemon-ipc branch 3 times, most recently from b0020e8 to adb5732 Compare February 10, 2025 20:47
@nbolton

This comment was marked as outdated.

@sithlord48 sithlord48 mentioned this pull request Feb 13, 2025
12 tasks
@nbolton nbolton force-pushed the windows-daemon-ipc branch 2 times, most recently from 7e23855 to 67ecd93 Compare February 18, 2025 14:11
@nbolton nbolton force-pushed the windows-daemon-ipc branch 3 times, most recently from b760db7 to cdda4c1 Compare February 24, 2025 11:37
@nbolton nbolton changed the title Refactor Windows dameon IPC to use Qt local server/sockets Refactor Windows daemon IPC to use Qt local server/sockets Feb 24, 2025
@nbolton nbolton force-pushed the windows-daemon-ipc branch 12 times, most recently from b52f9f9 to 7e18c2b Compare February 24, 2025 18:26
Windows file logger and `OutputDebugString` already add new lines, so remove the ones added by the Core.
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

Windows server instance goes to sleep and kills the deskflow daemon Replace TCP IPC with files (config, log, sockets) on Windows

3 participants