Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

Develop a pluggable architecture for search & install so that packaging systems can provide hooks. #24

Closed
2 of 4 tasks
umlaeute opened this issue Jun 10, 2015 · 11 comments

Comments

@umlaeute
Copy link
Contributor

it would be great to allow for multiple backends for doing the search/installation of packages.

@umlaeute
Copy link
Contributor Author

i mainly opened this ticket to collect ideas on how to design the framework for such backends

@danomatika
Copy link
Contributor

This makes me think deken should cache downloaded info, like apt.

@umlaeute
Copy link
Contributor Author

doesn't it? at least for me the zip-files in my ~/pd-externals folder are not deleted (but then, for some to-be-investigated reasons, the zip-file doesn't really gets extracted, and instead a xarchiver and EasyTAG [sic!] open up...)

but yeah, the files are re-downloaded, which could be avoided.

@chr15m
Copy link
Contributor

chr15m commented Jun 10, 2015

See #10.

@umlaeute
Copy link
Contributor Author

search

searches for a given library, and returns all matches

arguments:

  • search string (can be empty)

returned data:

  • a set of
    • description of the package (file), so the user knows what they are to install
    • trust establishing description: so the user knows who provided that binary
    • how well does the given package match the host?
    • an ID, that can be passed to the install routine

the host sorts the returned values along the match axis (and probably along the date/version axis)

install

installs a given library

arguments:

  • ID (as returned by search)

returned data:

  • success?
  • installation progress
    • directly write into the deken-window? (requires to pass $mytoplevel.results)

@chr15m
Copy link
Contributor

chr15m commented Jun 10, 2015

Looks good to me. It would be good for the backend interfaces to not have to care if called in the Pd gui or from the command line via tclsh #8.

@danomatika
Copy link
Contributor

By cache, I mean caching the package info from puredata.info, not the zip files. This way you could see whats available even if offline.

@umlaeute
Copy link
Contributor Author

ah i see; should probably go to another ticket.

@chr15m
Copy link
Contributor

chr15m commented Jun 11, 2015

Yep and at this stage I don't see a compelling reason to do the work of caching that information locally since you can't actually download packages without a connection. See #31.

@chr15m chr15m changed the title backend infrastructure Develop a pluggable architecture for search & install so that packaging systems can provide hooks. Jun 13, 2015
@umlaeute
Copy link
Contributor Author

TODO: provide a way to (de)select backends in the gui.

@umlaeute
Copy link
Contributor Author

umlaeute commented Jul 1, 2015

instead of an ID, the search could return a command-to-install directly (something like [deken::download https://example.com/foo-external.zip]

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

No branches or pull requests

3 participants