Project

General

Profile

Actions

DevelopersPython3Environment » History » Revision 12

« Previous | Revision 12/21 (diff) | Next »
Dan Smith, 03/09/2023 05:48 PM


Python 3 Developer Environment Setup

Windows

Install Python

  1. Download and install from python.org. At the time of this writing, "Python 3.10.8" is recommended. During install note these options:
    1. Choose Add python.exe to PATH
    2. Choose Disable path length limit
  2. In Windows settings, search "Manage app execution aliases" and:
    1. Disable App Installer: python.exe
    2. Disable App Installer: python3.exe
    3. Disable App Installer: python3.7.exe
  3. Browse in explorer to %AppData%\Local\Programs\Python\Python310 and copy python.exe to python3.exe

Install Git

  1. Download and install from git-scm.org. During installation take the defaults except for:
    1. Configuring the line ending conversions: choose Checkout as-is, commit Unix-style line endings

Configure Git

From a command line:

  1. git config --global user.name "FIRST_NAME LAST_NAME"
  2. git config --global user.email "MY_NAME@example.com"
  3. Optional, if you want to set an editor: git config --global core.editor "PATH TO EDITOR"

Clone the chirp git repository (master branch)

From a command line:

C:\Users\{user}\Documents> git clone https://github.com/kk7ds/chirp
C:\Users\{user}\Documents> cd chirp

Install the python dependencies

  1. python3 -m pip install -r requirements.txt
  2. python3 -m pip install tox

Optional, but recommended: Install GitHub CLI

Via winget: winget install --id GitHub.cli or manually from github.com

Note: {user} as shown in paths above is the logged in Windows user
Note: The steps above were done on Windows 10 Pro, version 22H2

MacOS

Install command-line tools

$ xcode-select --install

Clone the chirp git repository

$ git clone https://github.com/kk7ds/chirp
$ cd chirp

Install python requirements

$ python3 -m pip install -r requirements.txt
$ python3 -m pip install tox

(Note that tox is only needed for running tests, not for running chirp itself)

Run chirp

$ ./chirpwx.py

Linux

These instructions are for Debian/Ubuntu, but should be generally applicable to other distros, possibly with different package names. You can use all distro packages (recommended), or install the python requirements with pip install -r requirements.txt but you probably want to get wxPython from distro packages.

Install packages

$ sudo apt install git python3-wxgtk4.0 python3-serial python3-six python3-future python3-requests python3-pip
$ python3 -m pip install tox

(Note that tox is only needed for running tests, not for running chirp itself)

Clone the chirp git repository

$ git clone https://github.com/kk7ds/chirp

Run chirp

$ cd chirp
$ ./chirpwx.py

Python 3.11 Notes

Python 3.11 breaks a lot of things by removing some compatibility with previous releases. Right now, the main CHIRP builds are done on <= 3.10 and will be until the wxPython team provides pre-built wheels for macOS and Windows.

For attrdict related issues, see this github issue.

Running tests

Below are some examples for running tests using tox. This is required to pass the CI checks on submissions before things can be merged.

Running everything:

$ tox

Running just style checks:

$ tox -e style

Running just driver tests for only drivers with changes since origin/master:

$ tox -e fast-driver

Running just one driver test by module name:

$ tox -e driver -- -k ic2820

Running all driver tests for a given vendor:

$ tox -e driver -- -k Icom

Updated by Dan Smith over 1 year ago · 12 revisions