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
Point Density-Aware Voxels for LiDAR 3D Object Detection (CVPR 2022)

PDV PDV is LiDAR 3D object detection method. This repository is based off [OpenPCDet]. Point Density-Aware Voxels for LiDAR 3D Object Detection Jordan

Toronto Robotics and AI Laboratory 114 Dec 21, 2022
This Home Assistant custom component adding support for controlling Midea dehumidifiers on local network.

This custom component for Home Assistant adds support for Midea air conditioner and dehumidifier appliances via the local area network. homeassistant-

Nenad Bogojevic 92 Dec 31, 2022
hardware design of the 250mm drone

hardware design of the 250mm drone

ZJU FAST Lab 645 Dec 25, 2022
Play a song with a 3D printer.

MIDI to GCODE Play a song with a FDM 3D printer. SLA printers don't have motors, so they cannot play music. Warning: Be ready to turn off the 3D print

Patrick 6 Apr 11, 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
Raspberry Pi Pico support for VS Code

Pico-Go VS Code Extension Pico-Go provides code auto-completion and allows you to communicate with your Raspberry Pi Pico board using the built-in REP

Chris Wood 114 Dec 28, 2022
Example Python code for building RPi-controlled robotic systems

RPi Example Code Example Python code for building RPi-controlled robotic systems These python files have been compiled / developed by the Neurobionics

Elliott Rouse 2 Feb 04, 2022
Projet d'integration SRI 3A ROS

projet-integration-sri-2021-2022 Projet d'intégration ROS SRI 2021 2022 Organization: Planification de tâches Perception Saisie: Cédérick Mouliets Sim

AIP Primeca Occitanie 3 Jan 07, 2022
Modeling and Simulation of Satellite Servicing Manipulators

Modeling and Simulation of Satellite Servicing Manipulators Final Project for the course ENPM662: Introduction to Robot Modeling (Fall 2021). This pro

Adarsh M 1 Jan 24, 2022
This allows you to record keyboard and mouse input, and play it back using pynput.

Record and Play with Python! This allows you to record keyboard and mouse input, and play it back (with looping) using pynput. It allows for automatio

George Jensen 45 Jan 02, 2023
Detic ros - A simple ROS wrapper for Detic instance segmentation using pre-trained dataset

Detic ros - A simple ROS wrapper for Detic instance segmentation using pre-trained dataset

Hirokazu Ishida 12 Nov 19, 2022
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
A DUCO (Duino-Coin) miner for GigaDevice ARM boards.

GD32 Duino-Coin Miner Description Contains the firmware and miner software for mining DUCO (Duino-Coin) on GigaDevice GD32 chips. Supported boards GD3

Maximilian Gerhardt 2 Feb 20, 2022
A python script for macOS to enable scrolling with the 3M ergonomic mouse EM500GPS in any application.

A python script for macOS to enable scrolling with the 3M ergonomic mouse EM500GPS in any application.

3 Feb 19, 2022
Cascade Drone Swarm Physical Demonstration Project

Cascade Drone Swarm Physical Demonstration Project Table of Contents About The Project Built With Getting Started Prerequisites Installation About The

3 Aug 24, 2022
DongshanPI Seven for STM32MP157DAC.

STM32MP1 Buildroot External Tree

DongshanPI 14 May 06, 2022
A dashboard for Raspberry Pi to display environmental weather data, rain radar, weather forecast, etc. written in Python

Weather Clock for Raspberry PI This project is a dashboard for Raspberry Pi to display environmental weather data, rain radar, weather forecast, etc.

Markus Geiger 1 May 01, 2022
A simple portable USB MIDI controller based on Raspberry-PI Pico and a 16-button keypad, written in Circuit Python

RPI-Pico-16-BTn-MIDI-Controller-using-CircuitPython A simple portable USB MIDI controller based on Raspberry-PI Pico, written in Circuit Python. Link

Rounak Dutta 3 Dec 04, 2022
Home assiatant Custom component: Camera Archiver

Camera archiver Archive your ftp camera meadia files on other ftp with files renaming and event creation. Event can be used for send information to el

1 Jan 06, 2022
LedFx is a network based LED effect controller with support for advanced real-time audio effects

Welcome to LedFx ✨ -Making music come alive! LedFx website: https://ledfx.app/ What is LedFx? What LedFx offers is the ability to take audio input, an

786 Jan 02, 2023