Set of scripts for some automation during Magic Lantern development

Overview

~kitor Magic Lantern scripts

A few automation scripts I wrote to automate some things in my ML development efforts. Used only on Debian running over WSL1 on Windows 10, however should be mostly generic.

Maybe they will be helpful for others. If not, at least I will have an easy way to backup and keep my env in sync between devices.

Contents

rgb2png, yuv2png

Scripts that convert raw memory dumps into PNG files.

I think I based processing on some existing script, but I can't recall the source now.

ml_deploy, ml_deploy_qemu

Scripts that will deploy ML build ( currently non-zip only ) to card / qemu virtual card

Camera model is required as 1st argument.

ml_card_deploy

Script that will deploy artifacts on card. Called with sudo by ml_deploy, can be called directly.

Camera model is required as 1st argument.

remake

Shell alias that runs make clean and then make, passing all arguments.

gcp

Shell alias to git cherry-pick --no-commit.

I just use it a lot while creating a clean implementation from "dirty" implementation branches.

ml_uart

Shell alias to sudo minicom -D /dev/ttyS${port} -b 115200

Meant to be used with WSL (thus ttyS ).

Port number is optional as 1st argument, defaults to 3.

ml_env

File to be sourced in .bashrc \ .zshrc to expose all the functionality in shell.

Requirements

For ml_deploy_qemu:

  • bootdisk.py by @lorenzo33324 deployed in $ML_DIR\bin
    • TODO: add link when it gets published, atm available only on Discord archives.
  • virt-make-fs

Directory structure

$ML_DIR
 |-- bin
 |   `-- *                 ( files from this repository )
 |
 |-- artifacts             ( work dir for preparing card deployment )
 |-- artifacts_qemu        ( work dir for preparing qemu deployment )
 |
 |-- qemu-eos              ( main qemu dir )
 |-- qemu-eos-some_suffix  ( additional qemu dirs )
 |
 |-- src
 |   `-- ml                ( Magic Lantern source directory )

Configuration

see .config that I shamelessly left in repo.

Usage scenarios

enable all features in shell

source /path/to/checkout/.activate

( or just put it in .zshrc / .bashrc)

for build-and-deploy from platform/* directories

remake && ml_deploy R

for build-and-deploy from minimal/* directories

remake MODEL=750D && ml_deploy_qemu 750D

start UART session on virtual COM5 (WSL)

ml_uart 5

Owner
Kajetan Krykwiński
SCM Engineer and solution architect for LTE/5G User Plane in Nokia Networks. B.Sc. CS.
Kajetan Krykwiński
WindowsDebloat - Windows Debloat with python

Windows Debloat 🗑️ Quickly and easily configure Windows 10. Disclaimer I am NOT

1 Mar 26, 2022
Run async workflows using pytest-fixtures-style dependency injection

Run async workflows using pytest-fixtures-style dependency injection

Simon Willison 26 Jun 26, 2022
A library to easily convert climbing route grades between different grading systems.

pyclimb A library to easily convert climbing route grades between different grading systems. In rock climbing, mountaineering, and other climbing disc

Ilias Antonopoulos 4 Jan 26, 2022
Use generator for range function

Use the generator for the range function! installation method: pip install yrange How to use: First import yrange in your application. You can then wo

1 Oct 28, 2021
NFT-Generator is the best way to generate thousands of NFTs quick and easily with Python.

NFT-Generator is the best way to generate thousands of NFTs quick and easily with Python. Just add your files, set your configuration and run the scri

78 Dec 27, 2022
Helpful functions for use alongside the rich Python library.

🔧 Rich Tools A python package with helpful functions for use alongside with the rich python library. 󠀠󠀠 The current features are: Convert a Pandas

Avi Perl 14 Oct 14, 2022
The git for the Python Story Utility Package library.

SUP The git for the Python Story Utility Package library. Installation: Install SUP by simply running pip install psup in your terminal. Check out our

Enoki 6 Nov 27, 2022
JavaScript to Python Translator & JavaScript interpreter written in 100% pure Python🚀

Pure Python JavaScript Translator/Interpreter Everything is done in 100% pure Python so it's extremely easy to install and use. Supports Python 2 & 3.

Piotr Dabkowski 2.1k Dec 30, 2022
A script copies movie and TV files to your GD drive, or create Hard Link in a seperate dir, in Emby-happy struct.

torcp A script copies movie and TV files to your GD drive, or create Hard Link in a seperate dir, in Emby-happy struct. Usage: python3 torcp.py -h Exa

ccf2012 105 Dec 22, 2022
VerSign: Easy Signature Verification in Python

VerSign: Easy Signature Verification in Python versign is a small Python package which can be used to perform verification of offline signatures. It a

Muhammad Saif Ullah Khan 3 Dec 01, 2022
Casefy (/keɪsfaɪ/) is a lightweight Python package to convert the casing of strings

Casefy (/keɪsfaɪ/) is a lightweight Python package to convert the casing of strings. It has no third-party dependencies and supports Unicode.

Diego Miguel Lozano 12 Jan 08, 2023
kawadi is a versatile tool that used as a form of weapon and is used to cut, shape and split wood.

kawadi kawadi (કવાડિ in Gujarati) (Axe in English) is a versatile tool that used as a form of weapon and is used to cut, shape and split wood. kawadi

Jay Vala 2 Jan 10, 2022
A simple example for calling C++ functions in Python by `ctypes`.

ctypes-example A simple example for calling C++ functions in Python by ctypes. Features call C++ function int bar(int* value, char* msg) with argumene

Yusu Pan 3 Nov 23, 2022
EVE-NG tools, A Utility to make operations with EVE-NG more friendly.

EVE-NG tools, A Utility to make operations with EVE-NG more friendly. Also it support different snapshot operations with same style as Libvirt/KVM

Bassem Aly 8 Jan 05, 2023
A python module for extract domains

A python module for extract domains

Fayas Noushad 4 Aug 10, 2022
A program will generate a eth key pair that has the public key that starts with a defined amount of 0

ETHAdressGenerator This short program will generate a eth key pair that has the public key that starts with a defined amount of 0 Requirements Python

3 Nov 19, 2021
Password generator

Password generator technologies used What is? It is Password generator How to Download? Download on releases Clone repo git clone https://github.com/m

Miek 1 Nov 02, 2021
A Randomizer Oracle

Tezos Randomizer Tezod Randomizer "Oracle". It's a smart contract that you can call to get a random number between X and Y (for now). It uses entropy

Asbjorn Enge 19 Sep 13, 2022
A quick random name generator

Random Profile Generator USAGE & CREDITS Any public or priavte demonstrative usage of this project is strictly prohibited, UNLESS WhineyMonkey10 (http

2 May 05, 2022
Playing with python imports and inducing those pesky errors.

super-duper-python-imports In this repository we are playing with python imports and inducing those pesky ImportErrors. File Organization project │

James Kelsey 2 Oct 14, 2021