A Python program that makes it easy to manage modules on a CircuitPython device!

Overview

CircuitPython-Bundle-Manager-v2

A Python program that makes it easy to manage modules on a CircuitPython device!

The CircuitPython Bundle Manager v2 is a program that allows you to easily download bundles and use them to install modules on CircuitPython devices!

As the name implies, it's version 2 of the original CircuitPython-Bundle-Manager with many more fixes and features!

A picture of the CircuitPython Bundle Manager's Modules tab open

Installation

Install from source

Windows

  1. cd to somewhere convenient. (Like a drive where all your projects go`)
  2. Download the repo (git clone https://github.com/UnsignedArduino/CircuitPython-Bundle-Manager-v2)
  3. cd into the downloaded repo.
  4. Create a virtual environment. (python -m venv .venv)
  5. Activate the virtual environment. (".venv/Scripts/activate.bat")
  6. Install the requirements. (pip install -r requirements.txt)
  7. Run! (python main.py)

Linux / macOS

  1. cd to somewhere convenient. (Like your home directory)
  2. Download the repo (git clone https://github.com/UnsignedArduino/CircuitPython-Bundle-Manager-v2)
  3. cd into the downloaded repo.
  4. Create a virtual environment. (python3 -m venv .venv)
  5. Activate the virtual environment. (source .venv/bin/activate)
  6. Install the requirements. (pip3 install -r requirements.txt)
  7. If the installation fails, then follow the instructions to install cryptography on your machine. Then try step 7 again.
  8. Run! (python3 main.py)

Usage

TODO: Finish!

Contributing

TODO: Finish!

License

This project is distributed under the GNU General Public License v3.0 license. See the LICENSE file for the full license.

Comments
  • Support the CircuitPython community bundle

    Support the CircuitPython community bundle

    Maybe two buttons to select either the regular bundle and the community bundle before the release selector pops up, so then we can change it in the GitHubManager easily. And since the naming scheme for both are the exact same, we should probably put (Community) after the title if it's a community bundle.

    enhancement 
    opened by UnsignedArduino 2
  • Make all windows closable with escape key

    Make all windows closable with escape key

    Only some of the dialogs close on escape. We need to make all the Windows close on escape, with the main window asking are you really sure you want to exit.

    bug gui 
    opened by UnsignedArduino 1
  • Release selector dialog takes a bit to pop up

    Release selector dialog takes a bit to pop up

    At least figure out how to get the release selector to pop up as fast as possible with all the widgets, then we can fill in the listbox with the releases after.

    gui 
    opened by UnsignedArduino 0
  • Check for lib/ and make sure it exists

    Check for lib/ and make sure it exists

    Make sure if it exists before installing any module.

    Originally reported here: https://github.com/UnsignedArduino/CircuitPython-Bundle-Manager-v2/discussions/9

    bug 
    opened by UnsignedArduino 0
  • Multiple processes to download and extract zip files

    Multiple processes to download and extract zip files

    Each bundle has 4 (iirc) zips that need to be downloaded and extracted - maybe put them all in processes?

    This should also be a setting in a downloads section or something.

    enhancement performance 
    opened by UnsignedArduino 0
  • Check if there is a new version available

    Check if there is a new version available

    Maybe display a message on start up saying there is a new version available.

    And probably need to put it in a miscellaneous settings section whether or not to check upon application launch.

    enhancement 
    opened by UnsignedArduino 0
  • Auto-detect modules used

    Auto-detect modules used

    Maybe a new tab called "Auto-detection" that looks like something like the GitHub dependency graph but will look for *requirements.txt and in *.py files:

    image

    But with install/reinstall/uninstall buttons next to all of them (if we can find it in the currently selected bundle)

    enhancement 
    opened by UnsignedArduino 0
Releases(v2.0.0)
Owner
Ckyiu
Hmmmm...what should I put here? *keyboard starts clicking...
Ckyiu
Raspberry Pi Pico and LoRaWAN from CircuitPython

Raspberry Pi Pico and LoRaWAN from CircuitPython Enable LoRaWAN communications on your Raspberry Pi Pico or any RP2040-based board using CircuitPython

Alasdair Allan 15 Oct 8, 2022
CircuitPython library for the CH559 USB to Serial chip

CH559 (USB to Serial) CircuitPython Library Why? Because you might want to get keyboard/mouse/gamepad/HID input into your CircuitPython projects witho

Guy Dupont 3 Nov 19, 2022
circuitpython version of PyBasic for microcontrollers

cPyBasic Circuitpython version of PyBasic for microcontrollers Current version work only for Adafruit titano & CardKB for now. The origninal PyBasic w

BeBoXoS 3 Nov 14, 2021
New armachat based on Raspberry Pi PICO an Circuitpython code

Armachat-circuitpython New Armachat based on Raspberry Pi PICO an Circuitpython code Software working features: send message with header and store to

Peter Misenko 44 Dec 24, 2022
Hourglass on the pi pico using circuitpython

hourglass-on-pico "Hourglass" on the raspberry pi pico using circuitpython circuitpython version 7.0.0 Components used: Raspberry Pi Pico ADXL345 acce

null 4 Jul 18, 2022
CircuitPython Driver for Adafruit 24LC32 I2C EEPROM Breakout 32Kbit / 4 KB

Introduction CircuitPython driver for Adafruit 24LC32 I2C EEPROM Breakout Dependencies This driver depends on: Adafruit CircuitPython Bus Device Regis

foamyguy 0 Dec 20, 2021
SPI driven CircuitPython driver for PCA9745B constant current LED driver.

Introduction THIS IS VERY MUCH ALPHA AND IN ACTIVE DEVELOPMENT. THINGS WILL BREAK! THIS MAY ALSO BREAK YOUR THINGS! SPI driven CircuitPython driver fo

Andrew Ferguson 1 Jan 14, 2022
Adafruit IO connected smart thermostat based on CircuitPython.

Adafruit IO Thermostat Adafruit IO connected smart thermostat based on CircuitPython. Background and Motivation I have a 24 V Heat-only system with a

Shubham Chaudhary 1 Jan 18, 2022
This is a collection of python modules that interact with the Ryze Tello drone.

This is a collection of python modules that interact with the Ryze Tello drone.

DJI-SDK 1.2k Jan 3, 2023
Python library to interact with the GCE Electronics IPX800 device

A python library to control a GCE-Electronics IPX800 V4 device through its API.

Marc-Aurèle Brothier 2 Oct 20, 2021
PlatformIO development platform for GSM modules

PlatformIO development platform for GSM modules Supported Modules Quectel M66 OpenCPU Arduino - TODO other - in progress... Supported Boards Comet M66

Georgi Angelov 5 Aug 6, 2022
Provide Unifi device info via api to Home Assistant that will give ap sensors

Unifi AP Device info Provide Unifi device info via api to Home Assistant that will give ap sensors

null 12 Jan 7, 2023
How to configure IOMMU device for nested Proxmox hypervisor (PVE) VM - PCIe Passthrough

Configuring PCIe Passthrough for Nested Virtualization on Proxmox Summary: If you are running bare-metal L0 (level 0) Proxmox (PVE) hypervisor with ne

Travis Johnson 6 Aug 30, 2022
Turns a compatible Raspberry Pi device into a smart USB drive for PS4/PS5.

PSBerry A WIP project for Raspberry Pi, which turns a compatible RPI device into a smart USB drive for PS4/PS5. Allows for save management of PS4 game

Filip Tomaszewski 2 Jan 15, 2022
A DiY holiday project to demonstrate how you can send data from adafruitIO cloud to a balena edge device

holiday-star balena ❤️ adafruitIO Introduction A DiY holiday project to demonstrate how you can send data from adafruitIO cloud to a balena edge devic

Ayan Pahwa 3 Dec 20, 2021
Monitor an EnvisaLink alarm module running Honeywell firmware, and set a Nest device to Home/Away depending on whether the alarm is Disarmed/Away.

Nestalarm Monitor an EnvisaLink alarm module running Honeywell firmware, and set a Nest device to Home/Away depending on whether the alarm is Disarmed

null 1 Dec 30, 2021
This tool emulates an EMV-CAP device, to illustrate the article "Banque en ligne : à la decouverte d'EMV-CAP" published in MISC

About This tool emulates an EMV-CAP device, to illustrate the article "Banque en ligne : à la decouverte d'EMV-CAP" published in MISC, issue #56 and f

Philippe Teuwen 28 Nov 21, 2022
Sticklog2heatmap - Draw a heatmap of RC sticks from OpenTX logs or USB HID device

sticklog2heatmap Draw a heatmap of RC sticks from OpenTX logs or USB HID device

null 2 Feb 2, 2022
Jarvis: a personal assistant which can help you to manage your system

Jarvis Jarvis is personal AI based assistant which can help you to manage stuff in your computer. This is demo but I decided to make it more better so

null 2 Jun 2, 2022