Giter VIP home page Giter VIP logo

moolticute's Introduction

Moolticute

License

Build Status

This project aims to be an easy companion to your Mooltipass device and extend the power of the device to more platform/tools. With it you can manage your Mooltipass with a cross-platform app, as well as provide a daemon service that handle all USB communication with the device.

This tool is written with a daemon that runs in background, and a user interface app to control you Mooltipass. Other clients could also connect and talk to the daemon (it uses a websocket connection and simple JSON messages). The official Mooltipass App only works with Chrome as it relies on USB HID library that is only implemented in Chrome. A Firefox (or any other browser) extension could easily be written by using the Moolticute daemon.

It is completely cross platform, and runs on Linux (using libusb), OS X (native IOKit API), and Windows (native HID API).

Downloads

Packages are build and available here: https://github.com/mooltipass/moolticute/releases

Dependencies

Windows, Linux, OSX
  • Requires Qt 5.6 or higher.
  • These Qt5 modules are required:
    • qt-core
    • qt-gui
    • qt-widgets
    • qt-network
    • qt-websockets
Linux
  • Requires the qt-dbus module
  • Requires libusb and a udev rule for it
Ubuntu 16.04
sudo apt install libqt5websockets5-dev libusb-dev libusb-1.0-0-dev qt-sdk qt5-qmake qt5-default
echo 'SUBSYSTEM=="usb", ATTRS{idVendor}=="16d0", ATTRS{idProduct}=="09a0", TAG+="uaccess"' | sudo tee /etc/udev/rules.d/50-mooltipass.rules
sudo udevadm control --reload-rules
Arch Linux
sudo pacman -S --needed qt5-websockets libusb qt5-base
echo 'SUBSYSTEM=="usb", ATTRS{idVendor}=="16d0", ATTRS{idProduct}=="09a0", TAG+="uaccess"' | sudo tee /etc/udev/rules.d/50-mooltipass.rules
sudo udevadm control --reload-rules
Fedora Linux
sudo dnf install libusb libusb-devel gcc-c++ qt5 qt5-qtwebsockets qt5-qtwebsockets-devel qt5-qttools-devel
echo 'SUBSYSTEM=="usb", ATTRS{idVendor}=="16d0", ATTRS{idProduct}=="09a0", TAG+="uaccess"' | sudo tee /etc/udev/rules.d/50-mooltipass.rules
sudo udevadm control --reload-rules

How to build

For now, no binary releases are out yet. You will need to build the software by following the next step.

Two method can be used to build, by using QtCreator IDE, or from command line (typically on Linux). After the build succeeded, two executable are created:

  • moolticuted (the daemon process)
  • moolticute (the main GUI app)
Using Qt SDK
  • Download and install the Qt SDK from their website
  • Start Qt-Creator
  • Open the main Moolticute.pro project file
    • Note for Windows users: make sure that you select a "kit" that uses the MinGW compiler. Moolticute currently won't compile successfully on the Microsoft Visual C++ compiler.
  • Click on the "play" button to build and run
Command line

Qt needs to be installed correctly (see you Linux distribution for that)

mkdir build
cd build
qmake ../Moolticute.pro
make

Be careful to use the Qt5 qmake. You can check if you are using the correct qmake by using the command

โžœ  ~  qmake --version
QMake version 3.0
Using Qt version 5.5.1 in /usr/lib

On Gentoo, a wrapper is created for qmake, so this command should be used:

qmake -qt=5 ../Moolticute.pro

On Fedora, use this qmake command:

qmake-qt5 ../Moolticute.pro

Licensing

Moolticute is free software; you can redistribute it and/or modify it under the terms of the GNU Public License as published by the Free Software Foundation; either version 3 of the License, or (at your option) any later version.

moolticute's People

Contributors

araab avatar arffeh avatar asashnov avatar azubieta avatar bertvandepoel avatar bobsaintcool avatar cor3ntin avatar dexol avatar dirkx avatar flegall2014 avatar gigawatts avatar hbxu avatar kazord avatar limpkin avatar medyakovvit avatar naguirre avatar nemunaire avatar netromdk avatar nicohood avatar noahandrews avatar raoulh avatar sbobykin avatar seemuth avatar sriep avatar therealsoret avatar tomasz-janiczek avatar wirr00 avatar

Watchers

 avatar  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.