Skip to content

Instantly share code, notes, and snippets.

Show Gist options
  • Select an option

  • Save dogweather/8651eb3fdb7b81c501bd6725042e7416 to your computer and use it in GitHub Desktop.

Select an option

Save dogweather/8651eb3fdb7b81c501bd6725042e7416 to your computer and use it in GitHub Desktop.

Copilot Chat Conversation Export:

Getting started with repo contributions

@dogweather

I'd like to get started helping out with this repo. It's bee a while since I've done C++ coding, but I'm up for getting back into it. Please look for opportunities for initial contributions: refactoring, etc.

Copilot

Great! I've gathered information about the mod-audio/mod-plugin-builder repository. Let me help you find good starting points for contribution.

Repository Overview

mod-plugin-builder
==================

This repository contains the toolchain and libraries used in MOD Devices.

It allows developers to locally build plugins for MOD devices and also prepare for Cloud builds.
Currently this builder only supports Linux hosts.
If you're not running Linux see this [HowTo](http://wiki.moddevices.com/wiki/How_To_Use_Docker_Toolbox_With_MPB).

[... Full README content available at the link above]

Key Observations for Contributing

The repository is primarily shell scripts and build configuration rather than C++. However, here are the opportunities I've identified:

1. Long-Standing Pull Requests (Good for review/testing)

There are 8 open PRs that could use attention:

data:
- url: "https://github.com/mod-audio/mod-plugin-builder/pull/164"
  title: "Docker update"

- url: "https://github.com/mod-audio/mod-plugin-builder/pull/155"
  title: "added .mk file for brummer's Vintage AC-30"

- url: "https://github.com/mod-audio/mod-plugin-builder/pull/152"
  title: "Add suloea-labs"

- url: "https://github.com/mod-audio/mod-plugin-builder/pull/151"
  title: "Add batteur labs plugin"

- url: "https://github.com/mod-audio/mod-plugin-builder/pull/90"
  title: "Add LIRA-8 based on Camomile"

- url: "https://github.com/mod-audio/mod-plugin-builder/pull/89"
  title: "Add EP-MK1 based on Camomile"

- url: "https://github.com/mod-audio/mod-plugin-builder/pull/88"
  title: "Fix or add missing premake workaround"

- url: "https://github.com/mod-audio/mod-plugin-builder/pull/64"
  title: "Update setbfree to 0.8.10"

2. Potential Refactoring Areas

The repo has several shell scripts that could use modernization:

  • build (6.8 KB) - Main build script
  • bootstrap.sh (11.8 KB) - Bootstrap script
  • .common (5.5 KB) - Common functions/utilities
  • validate (4.3 KB) - Plugin validation script
  • publish (3.9 KB) - Publishing script

These scripts could benefit from:

  • Improved error handling and validation
  • Better documentation/comments
  • Refactoring common patterns into shared functions
  • Shell script best practices (shellcheck compliance)

3. Recommendations for Getting Started

Given your C++ background but this repo's focus on build tooling:

  1. Review & Test the Long-Standing PRs: Start by reviewing PRs #164 (Docker update) and #88 (premake workaround) - these are more infrastructure-focused and don't require deep plugin development knowledge.

  2. Improve Shell Scripts: Look at refactoring opportunities in the shell scripts above. You could:

    • Run them through shellcheck and fix warnings
    • Add better error handling
    • Improve code organization
  3. Documentation: The repo could use better documentation for contributors. You could:

    • Add inline comments to the build scripts
    • Create troubleshooting guides
    • Document the build process more thoroughly
  4. If You Want C++: The actual plugin code lives in the plugins/ subdirectory (Git submodules). That's where C++ plugin development happens.

Would you like me to look deeper into any specific area, such as examining the existing shell scripts for refactoring opportunities or investigating one of the stalled PRs?

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment