Giter Club home page Giter Club logo

generate-evdev's Introduction

Generate Evdev

v1.0.0

Easily setup a virtual Keyboard-Video-Mouse (KVM) switch for Libvirt/QEMU Virtual Machines (VMs).

Latest release | View develop branch...

Related Projects:

Auto X.Org | Deploy VFIO | Guest Machine Guide | Libvirt Hooks | Power State Virtual Machine Manager

Table of Contents

Contents

Why?

Switch device inputs between Host and VM(s) or Guest(s). Requires devices to remain connected to be seen by Guests (similar to the limitations within the PS/2 cable standard, unlike USB).

How to Use

  1. Press L-CTRL + R-CTRL to switch between Guests.

Download

  • To download this script, you may:

    • Download the ZIP file:

      1. Viewing from the top of the repository's (current) webpage, click the green <> Code drop-down icon.
      2. Click Download ZIP. Save this file.
      3. Open the .zip file, then extract its contents.
    • Clone the repository:

      1. Open a Command Line Interface (CLI).
      • Open a console emulator (for Debian systems: Konsole).
      • Open a existing console: press CTRL + ALT + F2, F3, F4, F5, or F6.
        • To return to the desktop, press CTRL + ALT + F7.
        • F1 is reserved for debug output of the Linux kernel.
        • F7 is reserved for video output of the desktop environment.
        • F8 and above are unused.
      1. Change your directory to your home folder or anywhere safe: cd ~
      2. Clone the repository: git clone https://www.github.com/portellam/generate-evdev
  • To make this script executable, you must:

    1. Open the CLI (see above).
    2. Go to the directory of where the cloned/extracted repository folder is: cd name_of_parent_folder/generate-evdev/
    3. Make the installer script file executable: chmod +x installer.bash
    • Do not make any other script files executable. The installer will perform this action.
    • Do not make any non-script file executable. This is not necessary and potentially dangerous.

Usage

1. installer.bash

  • From within the project folder, execute: sudo bash installer.bash
  -h, --help       Print this help and exit.
  -U, --update     Update qemu.conf source file before install or uninstall.
  -i, --install    Install generate-evdev to system.
  -u, --uninstall  Uninstall generate-evdev from system.

2. generate-evdev

  • From any folder, execute: sudo bash generate-evdev
    • The CLI's shell (bash) should recognize that the script file is located in /usr/local/bin.
-h, --help                Print this help and exit.
    --dump-xml            Dump QEMU commandline (XML) output to file.
    --hugepages           Include Hugepages as device for Libvirt/QEMU.
    --output-event-paths  Output Event device paths only.
    --output-input-paths  Output Input device paths only.
    --restart-service     Restart Libvirtd system service after setup.
    --set-user            Sets user ownership of Libvirt Input devices to current user. Default is root.
    --undo-changes        Undo changes; restore file backups.

Filenames and pathnames modified

1. System configuration files

  • /etc/libvirt/qemu.conf

2. Paths for project binaries and files

  • /usr/local/bin/generate-evdev
  • /usr/local/etc/generate-evdev.d/

Contact

Did you encounter a bug? Do you need help? Notice any dead links? Please contact by raising an issue with the project itself.

generate-evdev's People

Contributors

portellam avatar

Stargazers

 avatar

Watchers

 avatar

Recommend Projects

  • React photo React

    A declarative, efficient, and flexible JavaScript library for building user interfaces.

  • Vue.js photo Vue.js

    ๐Ÿ–– Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.

  • Typescript photo Typescript

    TypeScript is a superset of JavaScript that compiles to clean JavaScript output.

  • TensorFlow photo TensorFlow

    An Open Source Machine Learning Framework for Everyone

  • Django photo Django

    The Web framework for perfectionists with deadlines.

  • D3 photo D3

    Bring data to life with SVG, Canvas and HTML. ๐Ÿ“Š๐Ÿ“ˆ๐ŸŽ‰

Recommend Topics

  • javascript

    JavaScript (JS) is a lightweight interpreted programming language with first-class functions.

  • web

    Some thing interesting about web. New door for the world.

  • server

    A server is a program made to process requests and deliver data to clients.

  • Machine learning

    Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.

  • Game

    Some thing interesting about game, make everyone happy.

Recommend Org

  • Facebook photo Facebook

    We are working to build community through open source technology. NB: members must have two-factor auth.

  • Microsoft photo Microsoft

    Open source projects and samples from Microsoft.

  • Google photo Google

    Google โค๏ธ Open Source for everyone.

  • D3 photo D3

    Data-Driven Documents codes.