Carvera-Community / Carvera_Controller

Community developed version of the Carvera Controller
GNU General Public License v2.0
3 stars 1 forks source link

Carvera Controller

Community developed version of the Makera Carvera Controller software.

Supported OS

The Controller software works on the following systems:

Installation

See the assets section of latest release for installation packages for your system.

Usage: Linux App Images

Linux AppImages are a self-contained binary with all the required dependencies to run the application.

To use it, first make it executable (chmod +x carveracontroller-community-<version>-<arch>.appimage).

Then you will be able to run it.

If you want a shortcut, consider using AppImageLauncher.

Alternative Installation: Python Package

It's best to use one of the pre-built packages as they they have frozen versions of tested dependencies and python interpreter, however if you prefer the software can be installed as a Python package. This might allow you to use a unsupported platform (eg raspi 1) provided that the dependencies can be met.

pip install carvera-controller-community

Once installed it can be run via the module

python3 -m carveracontroller

Contributing

Review this guide for how to contribute to this codebase.

Development Environment Setup

To contribute to this project or set up a local development environment, follow these steps to install dependencies and prepare your environment.

Prerequisites

Installing Poetry

Follow the official installation instructions to install Poetry. The simplest method is via the command line:

curl -sSL https://install.python-poetry.org | python3 -

Once installed, make sure Poetry is in your system's PATH so you can run it from any terminal window. Verify the installation by checking the version:

poetry --version

Setting Up the Development Environment

Once you have Poetry installed, setting up the development environment is straightforward:

  1. Clone the repository:

    git clone https://github.com/Carvera-Community/CarveraController.git
    cd CarveraController
  2. Install the project dependencies:

    poetry install

    This command will create a virtual environment (if one doesn't already exist) and install all required dependencies as specified in the pyproject.toml file.

  3. Activate the virtual environment (optional, but useful for running scripts directly):

    poetry shell

    This step is usually not necessary since poetry run <command> automatically uses the virtual environment, but it can be helpful if you want to run multiple commands without prefixing poetry run.

Running the Project

You can run the Controller software using Poetry's run command without installation. This is handy for iterative development.

poetry run python -m carveracontroller

Local Packaging

The application is packaged using PyInstaller. This tool converts Python applications into a standalone executable, so it can be run on systems without requiring management of a installed Python interpreter or dependent libraries. An build helper script is configured with Poetry and can be run with:

poetry run python scripts/build.py --os os [--no-appimage]

The options for os are windows, macos, or linux. If selecting linux, an appimage is built by default unless --no-appimage is specified.