Skip to main content

KMC - Keyboard Mouse Connect - Forward keyboard and mouse input to another machine via a software communication protocol like ethernet.

Project description

KMC - Keyboard Mouse Connect

Forward keyboard and mouse input to another machine via a software communication protocol like ethernet.

Find installation examples below for using KMC. The examples include the installation of KMC itself plus systemd service configurations to enable a seamless integration into the system start. KMC itself does not deal with a secure connection at all. Other applications like ssh tunnels can be used to create encrypted connections.

Running KMC client

With a client configuration file kmc.conf, kmc client could be executed like this:

kmc -c kmc.conf

Example installation via pipx

Using pipx, we can install kmc globally via the following command:

sudo PIPX_HOME=/opt/pipx PIPX_BIN_DIR=/usr/local/bin pipx install kmc

With kmc installed globally, a systemd service could be installed into '~/.config/systemd/user/kmc.service':

# Filename: kmc.service
[Unit]
Description=KMC client
After=network.target

[Service]
Environment=DISPLAY=:0
ExecStart=/usr/local/bin/kmc -c ~/.config/kmc.conf
Restart=always

[Install]
WantedBy=default.target

The systemd service could be enabled to load automatically on boot:

systemctl --user enable kmc

Example client configuration

# Filename: kmc.conf
[display.tcp.kmc-server-host]
host = kmc-server-host-hostname
port = 12345
keymap = <shift>+<ctrl>+<up>

Running KMC server

With a server configuration file kmc-server.conf, kmc server can be executed like this:

kmc-server -c kmc-server.conf

Example installation via pipx

Using pipx, we can install kmc globally via the following command.

sudo PIPX_HOME=/opt/pipx PIPX_BIN_DIR=/usr/local/bin pipx install kmc

With kmc installed globally, a systemd service could be installed.

# Filename: kmc-server.service
[Unit]
Description=KMC server
After=network.target

[Service]
Environment=DISPLAY=:0
ExecStart=/usr/local/bin/kmc-server -c /etc/kmc-server.conf
Restart=always

[Install]
WantedBy=multi-user.target

The systemd service could be enabled to load automatically on boot:

systemctl enable kmc-server

Example server configuration

# Filename: kmc-server.conf
[display.tcp.kmc-server-host]
host = 0.0.0.0
port = 12345

KMC Version 1.0.1


Project details


Download files

Download the file for your platform. If you're not sure which to choose, learn more about installing packages.

Source Distribution

kmc-1.0.1.tar.gz (11.4 kB view details)

Uploaded Source

Built Distribution

If you're not sure about the file name format, learn more about wheel file names.

kmc-1.0.1-py3-none-any.whl (20.9 kB view details)

Uploaded Python 3

File details

Details for the file kmc-1.0.1.tar.gz.

File metadata

  • Download URL: kmc-1.0.1.tar.gz
  • Upload date:
  • Size: 11.4 kB
  • Tags: Source
  • Uploaded using Trusted Publishing? No
  • Uploaded via: twine/6.1.0 CPython/3.13.2

File hashes

Hashes for kmc-1.0.1.tar.gz
Algorithm Hash digest
SHA256 e34e84c7bafdc49d818f7615103abdd679c22b4263c5db6f19990447d6ff1c4d
MD5 3ee208fb1a08b8eb554ac6459030594e
BLAKE2b-256 b994f36800c89aa3078631f2a99d039f8bfe303233241903a354399f3059c64a

See more details on using hashes here.

File details

Details for the file kmc-1.0.1-py3-none-any.whl.

File metadata

  • Download URL: kmc-1.0.1-py3-none-any.whl
  • Upload date:
  • Size: 20.9 kB
  • Tags: Python 3
  • Uploaded using Trusted Publishing? No
  • Uploaded via: twine/6.1.0 CPython/3.13.2

File hashes

Hashes for kmc-1.0.1-py3-none-any.whl
Algorithm Hash digest
SHA256 082b97330f073441c7cb5fcd01602cd94d15df3d4fe59318d0abe944e12f83e4
MD5 8d3a6089003e228a5a57a5412f89bee3
BLAKE2b-256 8c74d049da9a42fb7f8d24eca9341aa352a6d8618a9e8fca3b6bd48fd1cf64e5

See more details on using hashes here.

Supported by

AWS Cloud computing and Security Sponsor Datadog Monitoring Depot Continuous Integration Fastly CDN Google Download Analytics Pingdom Monitoring Sentry Error logging StatusPage Status page