Skip to content

System for patch authors to specify externals dependencies for end users of a patch. #122

Description

@chr15m

This would work like Python's requirements.txt or Ruby's Gemfile or Node's packages.json and allows a patch author to specify exactly which externals their patch depends on.

See also #84.

The patch author should do three things:

  1. Create a pd-dependencies.txt to go with their patch.
  2. In their patch instantiate [declare -path pd-dependencies/zexy] for example.
  3. Instantiate a [deken-dependencies] object in their patch.

(maybe 2 & 3 could be combined)

I suggest a format as follows for pd-dependencies.txt:

# Dependencies for mypatch.pd
freeverb~-v0-0extended
zexy-v0-0extended
http://puredata.info/Members/zmoelnig/software/cyclone/0-0extended/cyclone-v0-0extended-(Darwin-i386-32)(Darwin-PowerPC-32)(Darwin-x86_64-32)-externals.tar.gz

Note in this example the patch author has specified the exact URL for the 'cyclone' externals set.

The end user can now:

  1. Send the message "install" to the [deken-dependencies] object.
  2. This will look for and open pd-dependencies.txt; and
  3. Create a new folder next to the patch called pd-dependencies; and
  4. Download & unpack each listed deken package into the pd-dependencies folder.

Suggest we start with the simplest possible iteration that works and don't try to solve every problem in an automated way.

@millerpuckette @umlaeute

Metadata

Metadata

Assignees

No one assigned

    Labels

    No labels
    No labels

    Type

    No type

    Fields

    No fields configured for issues without a type.

    Projects

    No projects

    Milestone

    No milestone

    Relationships

    None yet

    Development

    No branches or pull requests

    Issue actions