76 lines
2 KiB
Nix
76 lines
2 KiB
Nix
{ lib, stdenv, fetchFromGitHub, python3Packages, libspnav, jq }:
|
|
|
|
let
|
|
|
|
self = {
|
|
|
|
octoprint = stdenv.mkDerivation rec {
|
|
pname = "Cura-OctoPrintPlugin";
|
|
version = "3.5.18";
|
|
|
|
src = fetchFromGitHub {
|
|
owner = "fieldOfView";
|
|
repo = pname;
|
|
rev = "7bd73946fbf22d18337dc900a81a011ece26bee0";
|
|
sha256 = "057b2f5f49p96lkh2wsr9w6yh2003x4a85irqsgbzp6igmk8imdn";
|
|
};
|
|
|
|
propagatedBuildInputs = with python3Packages; [
|
|
netifaces
|
|
];
|
|
|
|
installPhase = ''
|
|
mkdir -p $out/lib/cura/plugins/OctoPrintPlugin
|
|
cp -rv . $out/lib/cura/plugins/OctoPrintPlugin/
|
|
'';
|
|
|
|
meta = with lib; {
|
|
description = "Enables printing directly to OctoPrint and monitoring the process";
|
|
homepage = "https://github.com/fieldOfView/Cura-OctoPrintPlugin";
|
|
license = licenses.agpl3Plus;
|
|
maintainers = with maintainers; [ gebner ];
|
|
};
|
|
};
|
|
|
|
rawmouse = stdenv.mkDerivation rec {
|
|
pname = "RawMouse";
|
|
version = "1.1.0";
|
|
|
|
src = fetchFromGitHub {
|
|
owner = "smartavionics";
|
|
repo = pname;
|
|
rev = version;
|
|
sha256 = "0hvi7qwd4xfnqnhbj9dgfjmvv9df7s42asf3fdfxv43n6nx74scw";
|
|
};
|
|
|
|
nativeBuildInputs = [ jq ];
|
|
|
|
propagatedBuildInputs = with python3Packages; [
|
|
hidapi
|
|
];
|
|
|
|
buildPhase = ''
|
|
jq 'del(.devices) | .libspnav="${libspnav}/lib/libspnav.so"' \
|
|
<RawMouse/config.json >RawMouse/config.json.new
|
|
mv RawMouse/config.json.new RawMouse/config.json
|
|
|
|
# remove prebuilt binaries
|
|
rm -r RawMouse/hidapi
|
|
'';
|
|
|
|
installPhase = ''
|
|
mkdir -p $out/lib/cura/plugins/RawMouse
|
|
cp -rv . $out/lib/cura/plugins/RawMouse/
|
|
'';
|
|
|
|
meta = with lib; {
|
|
description = "Cura plugin for HID mice such as 3Dconnexion spacemouse";
|
|
homepage = "https://github.com/smartavionics/RawMouse";
|
|
license = licenses.agpl3Plus;
|
|
maintainers = with maintainers; [ gebner ];
|
|
};
|
|
};
|
|
|
|
};
|
|
|
|
in self
|