Loading pkgs/applications/misc/klipperscreen/default.nix 0 → 100644 +28 −0 Original line number Diff line number Diff line { 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; }; } pkgs/applications/misc/klipperscreen/fix-paths.diff 0 → 100644 +22 −0 Original line number Diff line number Diff line 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") pkgs/applications/misc/klipperscreen/setup.py 0 → 100644 +11 −0 Original line number Diff line number Diff line 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'] }, ) pkgs/top-level/all-packages.nix +2 −0 Original line number Diff line number Diff line Loading @@ -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 { }; Loading
pkgs/applications/misc/klipperscreen/default.nix 0 → 100644 +28 −0 Original line number Diff line number Diff line { 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; }; }
pkgs/applications/misc/klipperscreen/fix-paths.diff 0 → 100644 +22 −0 Original line number Diff line number Diff line 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")
pkgs/applications/misc/klipperscreen/setup.py 0 → 100644 +11 −0 Original line number Diff line number Diff line 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'] }, )
pkgs/top-level/all-packages.nix +2 −0 Original line number Diff line number Diff line Loading @@ -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 { };