klipperscreen: init at 0.3.2

This commit is contained in:
Benjamin Saunders 2023-04-20 21:09:17 -07:00
parent 8aedbe94c3
commit 9795cee2e6
4 changed files with 63 additions and 0 deletions

View File

@ -0,0 +1,28 @@
{ lib, stdenv, writeText, python3Packages, fetchFromGitHub, gtk3, gobject-introspection, gdk-pixbuf, wrapGAppsHook, librsvg }:
python3Packages.buildPythonPackage rec {
pname = "KlipperScreen";
version = "0.3.2";
src = fetchFromGitHub {
owner = "jordanruthe";
repo = pname;
rev = "v${version}";
hash = "sha256-LweO5EVWr3OxziHrjtQDdWyUBCVUJ17afkw7RCZWgcg=";
};
patches = [ ./fix-paths.diff ];
buildInputs = [ gtk3 librsvg ];
nativeBuildInputs = [ wrapGAppsHook gdk-pixbuf gobject-introspection ];
propagatedBuildInputs = with python3Packages; [ jinja2 netifaces requests websocket-client pycairo pygobject3 mpv six dbus-python numpy pycairo ];
preBuild = ''
ln -s ${./setup.py} setup.py
'';
meta = with lib; {
description = "Touchscreen GUI for the Klipper 3D printer firmware";
homepage = "https://github.com/jordanruthe/${pname}";
license = licenses.agpl3;
};
}

View File

@ -0,0 +1,22 @@
diff --git a/screen.py b/screen.py
index 4fd75cd..a10779a 100755
--- a/screen.py
+++ b/screen.py
@@ -48,7 +48,7 @@ PRINTER_BASE_STATUS_OBJECTS = [
'exclude_object',
]
-klipperscreendir = pathlib.Path(__file__).parent.resolve()
+klipperscreendir = pathlib.Path(functions.__file__).parent.parent.resolve()
def set_text_direction(lang=None):
@@ -254,7 +254,7 @@ class KlipperScreen(Gtk.Window):
def _load_panel(self, panel, *args):
if panel not in self.load_panel:
logging.debug(f"Loading panel: {panel}")
- panel_path = os.path.join(os.path.dirname(__file__), 'panels', f"{panel}.py")
+ panel_path = os.path.join(klipperscreendir, 'panels', f"{panel}.py")
logging.info(f"Panel path: {panel_path}")
if not os.path.exists(panel_path):
logging.error(f"Panel {panel} does not exist")

View File

@ -0,0 +1,11 @@
from setuptools import setup
setup(
name='KlipperScreen',
install_requires=[],
packages=['styles', 'panels', 'ks_includes', 'ks_includes.widgets'],
package_data={'ks_includes': ['defaults.conf', 'locales/**', 'emptyCursor.xbm'], 'styles': ['**']},
entry_points={
'console_scripts': ['KlipperScreen=screen:main']
},
)

View File

@ -5176,6 +5176,8 @@ with pkgs;
inherit (darwin.apple_sdk.frameworks) Security;
};
klipperscreen = callPackage ../applications/misc/klipperscreen { };
klog = qt5.callPackage ../applications/radio/klog { };
komga = callPackage ../servers/komga { };