mconnect - KDE Connect protocol implementation in Vala/C
You can not select more than 25 topics Topics must start with a letter or number, can include dashes ('-') and can be up to 35 characters long.

60 lines
1.8 KiB

10 years ago
  1. # mconnect
  2. mconnect - KDE Connect protocol implementation in Vala/C
  3. GLib and Gio should be available even on trimmed down systems. Vala is
  4. really needed only at build time. OpenSSL does the packet
  5. encryption/decryption at the protocol level, while Json-glib does
  6. packet parsing. Libnotify is responsible for displaying shell popups.
  7. Since I'm new ot Vala, I'm treating this as a learning execrise, yet
  8. with usable results.
  9. # Building
  10. Build dependencies (using package names as found in Fedora):
  11. - vala
  12. - glib2-devel
  13. - gobject-introspection-devel
  14. - libgee-devel
  15. - json-glib
  16. - openssl-devel
  17. - libnotify-devel
  18. or see `mconnect.spec` in source tree. Once build deps are in place, run:
  19. autoreconf -if
  20. ./configure --prefix=<your favorite prefix>
  21. make
  22. make install
  23. # or make DESTDIR=<somedir> install if you want to inspect what
  24. # gets installed
  25. # Configuration
  26. A sample configuration file is provided in source tree, see
  27. `mconnect.conf`. It will get installed to `${sysconfdir}/mconnect/`
  28. (usually corresponding to `/etc/mconnect/`) by default. Once
  29. `mconnect` starts it will pick the default file and make a copy of it
  30. in user's config directory, specifically `~/.config/mconnect/`.
  31. A device described in it's own group and listed in `main.devices`, has
  32. to match exactly with incoming identity packets. However, since
  33. `deviceId` is not known beforehand, neither shown in KDE Connect
  34. Android application, only `name` and `type` are used for matching.
  35. # Usage
  36. Start it by running:
  37. mconnect -d
  38. # Operation
  39. The daemon starts listening on `0.0.0.0:1714` for incoming UDP
  40. packets. Once an identity packet (a sort of a handshake) is received,
  41. a connection at the sender's address will be made only if the device
  42. is listed as `allowed` in `mconnect.conf` (see the sample config).
  43. Should the device be whitelisted in configuration, pairing will happen
  44. automatically.