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
A python project based on a TV show Wheel of Fortune

Wheel-of-Fortune-using-Python Wheel of Fortune in python this game is the hands-on project in Python 3 Programming Specialization offered By Universit

Eszter Pai 1 Jan 03, 2022
Minimal and clean dashboard to visualize some stats of Pi-Hole with an E-Ink display attached to your Raspberry Pi

Clean Dashboard for Pi-Hole Minimal and clean dashboard to visualize some stats of Pi-Hole with an E-Ink display attached to your Raspberry Pi.

Alessio Santoru 104 Dec 14, 2022
A lightweight script for updating custom components for Home Assistant

Updater for Home Assistant This is a lightweight script for updating custom components for Home Assistant. If for some reason you do not want to use H

Alex X 12 Sep 21, 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
Simple Weather Check base on Hefeng api, Work on raspberry Pi

Simple Weather Check base on Hefeng api, Work on raspberry Pi

Retr0mous 28 Sep 17, 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

2 Feb 02, 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
DongshanPI Seven for STM32MP157DAC.

STM32MP1 Buildroot External Tree

DongshanPI 14 May 06, 2022
Python library to manipulate Ingenico mobile payment device like iCT220 or iWL220 equipped with Telium Manager. RS232/USB.

Python library to manipulate Ingenico mobile payment device like iCT220 or iWL220 equipped with Telium Manager. RS232/USB.

TAHRI Ahmed R. 72 Dec 24, 2022
Home Assistant custom integration to fetch data from Powerpal

Powerpal custom component for Home Assistant Component to integrate with powerpal. This repository and integration is not affiliated with Powerpal. Th

Lawrence 32 Jan 07, 2023
Fener ROS2 package version 2

Fener's ROS2 codes that runs on the vehicle. This node contains basic sensing and actuation nodes for vehicle control. Also example applications will be added.

Muhammed Sezer 1 Jan 18, 2022
Home Assistant custom integration for e-distribuciĆ³n

e-DistribuciĆ³n is an energy distribution company that covers most of South Spain area. If you live in this area, you probably are able to register into their website to get some information about you

VMG 17 Sep 07, 2022
I made this so I can control my Tapo L510 light bulb and Govee H6159 light strip using the PyP100 module and the Govee public API

TAPO-And-Govee-Controller I made this so I can control my Tapo L510 light bulb and Govee H6159 light strip using the PyP100 module and the Govee publi

James Westhead 0 Nov 23, 2021
Port of Uxn to digital hardware in the Logisim simulator

Uxn-Logisim Implements the Uxn instruction set in digital hardware. Very WIP. Contents cpu.circ - The Logisim file microcode.mc - Microcode source fil

DeltaF1 11 Mar 27, 2022
a library for using WS2812b leds (aka neopixels) with Raspberry Pi Pico

pico_ws2812b a library for using WS2812b leds (aka neopixels) with Raspberry Pi Pico You'll first need to save the ws2812b.py file to your device (for

76 Nov 25, 2022
Aqara Camera G3 integration for Home Assistant

Aqara Camera G3 integration for Home Assistant ATTENTION: The component only works after enabled telnet. Only supportd stream. Not support still image

14 Dec 18, 2022
Micro Displays for Raspberry Pi

micro-displays Micro Displays for Raspberry Pi Why? I'm super bored in lockdown. Add a Raspberry Pi 400 and a few tiny displays... The top half of the

ig 291 Jul 06, 2022
Implemented robot inverse kinematics.

robot_inverse_kinematics Project setup # put the package in the workspace $ cd ~/catkin_ws/ $ catkin_make $ source devel/setup.bash Description In thi

Jianming Han 2 Dec 08, 2022
Control the lights of Alienware computers under GNU/Linux systems.

Before requesting support please consider that this software is not actively developed. I created it in 2014 for managing my Alienware M14X-R1 (where

rsm 111 Dec 05, 2022
A python library written for the raspberry pi.

A python package for using certain components on the raspberry pi.

Builder212 1 Nov 09, 2021