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
My self-hosting infrastructure, fully automated from empty disk to operating services

Khue's Homelab Current status: ALPHA This project utilizes Infrastructure as Code to automate provisioning, operating, and updating self-hosted servic

Khue Doan 6.4k Dec 31, 2022
Python information display framework aimed at e-ink devices

My display, using a Raspberry Pi Zero W and Waveshare 6" e-paper hat infodisplay Modular information display framework aimed at e-ink devices. Built u

Niek Blankers 3 Apr 08, 2022
Automate gate/garage door opening via 433.92MHz emitter with Raspberry Pi, Home Assistant and Homekit.

Automate opening your garage door / gate Summary This project sums up how I automated opening my garage door using a Raspberry PI, a 433Mhz emitter, H

Julien Fouilhé 29 Nov 30, 2022
Alarm Control Panel component for Zigbee Keypads using action_transaction field

hass_transaction_alarm_panel Alarm Control Panel component for Zigbee Keypads using action_transaction field. Works together with zigbee2mqtt Supporte

Konstantin 4 Jun 09, 2022
A Fast, Easy, and User Friendly way to control Robotics Actuators.

T-Motor Controller A Fast, Easy, and User Friendly way to control Robotics Actuators. View Demo · Report Bug · Request Feature Table of Contents About

26 Aug 23, 2022
Python script for printing to the Hanshow price-tag

This repository contains Python code for talking to the ATC_TLSR_Paper open-source firmware for the Hanshow e-paper pricetag. Installation # Clone the

12 Oct 06, 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
Volta: A Virtual Assistant which increases your productivity with time as you use it…

Volta Official Documentation Overview & Purpose Volta: A Virtual Assistant which increases your productivity with time as you use it… Volta, developed

Abeer Joshi 1 Jan 14, 2022
Poupool is an overflow swimming pool control software

Poupool - The swimming pool controller Poupool is a swimming pool control software. It is based on Transitions, Pykka and Paho MQTT. The user interfac

Cyril Jaquier 8 Jul 18, 2022
Playing diabolo with two robot arms in ROS + Gazebo

Playing diabolo with robots This repository holds the ROS packages for playing diabolo with two UR5e robot arms on ROS Melodic (Ubuntu 18.04). Read ou

23 Dec 18, 2022
A ch341dll Wrap is for using in Python 32bits windows to access I2C SPI and MDIO (by GPIO), and Demo with display PC sreen on OLED by i2c or SPI .

ch341dll_wrap_typcal_app A ch341dll Wrap is for using in Python 32bits windows to access I2C SPI and MDIO (by GPIO). In addition, I provided 3 Demo. I

13 Jan 02, 2023
A simple Picobot project implemented in Python

Python-Picobot A simple Picobot project implemented in Python About Explanation This is my first programming project. Picobot use rules.txt file which

Shayan Shiravani 0 Apr 03, 2022
DIY split-flap display

The goal is to make a low-cost display that's easy to fabricate at home in small/single quantities (e.g. custom materials can be ordered from Ponoko or similar, and other hardware is generally availa

Scott Bezek 2.5k Jan 05, 2023
SALUS THERMOSTAT Custom component for Home-Assistant

Home-Assistant Custom Components Custom Components for Home-Assistant (http://www.home-assistant.io) Salus Thermostat Climate Component My device is R

21 Dec 18, 2022
A install script for installing qtile and my configs on Raspberry Pi OS

QPI OS - Qtile + Raspberry PI OS Qtile + Raspberry Pi OS :) Installation Run this command in the terminal

RPICoder 3 Dec 19, 2021
A Home Assistant sensor that tells you what holiday is next

Next Holiday Sensor This sensor tells you what holiday is coming up next. You can use it to set holiday light colors or other scenes. The state of the

Nick Touran 20 Dec 04, 2022
Python apps to assist with Gas Blending

Welcome to DiveTools Gas Blending This tool is for testing and educational use. It is not intended to confirm the mix of breathing gases. If this tool

Tucker 7 Sep 18, 2022
A Macropad using the Raspberry Pi Pico, programmed with CircuitPython.

A Macropad using the Raspberry Pi Pico, programmed with CircuitPython.

15 Oct 14, 2022
Event-based hardware simulation framework

An event-based multi-device simulation framework providing configuration and orchestration of complex multi-device simulations.

Diamond Light Source Controls Group 3 Feb 01, 2022
A circle of LEDs

This repository contains all the design files, production files and example code for a simple circular LED display.

Pim de Groot 15 Aug 21, 2022