DevelopersPython3Environment » History » Revision 10
Revision 9 (Dan Smith, 01/05/2023 02:25 PM) → Revision 10/21 (Dan Smith, 02/15/2023 02:28 AM)
# Python 3 Developer Environment Setup
{{>toc}}
## Windows
### Install Python
1. Download and install from [python.org](https://www.python.org/downloads/windows/). At the time of this writing, "Python 3.10.8" is recommended. During install note these options:
1. Choose *Add python.exe to PATH*
1. Choose *Disable path length limit*
1. In Windows settings, search "Manage app execution aliases" and:
1. Disable *App Installer: python.exe*
1. Disable *App Installer: python3.exe*
1. Disable *App Installer: python3.7.exe*
1. 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](https://git-scm.com/download/win). 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"`
1. `git config --global user.email "MY_NAME@example.com"`
1. 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`
1. `python3 -m pip install tox`
### Optional, but recommended: Install GitHub CLI
Via winget: `winget install --id GitHub.cli` or manually from [github.com](https://cli.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
```shell
$ xcode-select --install
```
### Clone the chirp git repository
```shell
$ git clone https://github.com/kk7ds/chirp
$ cd chirp
```
### Install python requirements
```shell
$ 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
```shell
$ ./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
```shell
$ 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
```shell
$ cd chirp
$ ./chirpwx.py
```
## 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
```