Skip to content

Ipfs plugin - #1397

Merged
sampsyo merged 56 commits into
beetbox:masterfrom
multikatt:ipfs
Aug 3, 2015
Merged

Ipfs plugin#1397
sampsyo merged 56 commits into
beetbox:masterfrom
multikatt:ipfs

Conversation

@multikatt

Copy link
Copy Markdown
Contributor

http://ipfs.io or https://github.com/ipfs/go-ipfs is a global, versioned, peer-to-peer filesystem.
This plugin is so far extremely rough, but it adds the option to add or get albums from ipfs.
So if i have an album in my library I can do
beets ipfs -a [query]
This will return individual hashes for all the albums files as well as a hash for the whole album.
I can then, in another library without this album, run
beets ipfs -g [hash]
and the album will be downloaded from ipfs and imported to the library.

Again, this is a very rough demo, so it's not merge:able yet. But i'd be interesting to hear what you think.

@sampsyo

sampsyo commented Apr 7, 2015

Copy link
Copy Markdown
Member

Wow! This is a very cool project. It's quite speculative, but that means it's definitely worth exploring.

So I know where you're going: Is there anything else you'd like the plugin to do? Importing from and exporting the music itself to the DFS seems good, but—for example—are you interested in storing indices of music there?

@multikatt

Copy link
Copy Markdown
Contributor Author

Primarily this would be for sharing between friends. Instead of zipping and mailing the album over, then the friend has to import it into beets I can just send them the hash.

@sampsyo

sampsyo commented Apr 7, 2015

Copy link
Copy Markdown
Member

Very cool. I wonder how challenging it would be to be able to beet ls your friend's library from ipfs too.

@multikatt

Copy link
Copy Markdown
Contributor Author

That sounds possible. The hashes could be stored in the beets database and that database could be exported as json or something and added to ipfs. You could then give that json hash to your friend. That database should then be possible to use for ls and similiar.

@multikatt

Copy link
Copy Markdown
Contributor Author

This plugin seems to be working rather well now. Here's the hash for a small three album library (on creative commons licence via Jamendo) QmWgeJoezjo8Y1PP7KXmAkAKVnsiubAydzFWSrgvcrsY76 .
I'd be really happy if someone would try it out.

This pull request has become rather long though, I like making many smaller commits. Maybe I should rebase?

@sampsyo is there any more documentation on the separate libraries you mentioned earlier? The plugin is so far still using the above syntax, which has kinda grown on me and doesn't feel as awkward anymore. But a nice transparent syntax would be cool though.

@sampsyo

sampsyo commented Aug 3, 2015

Copy link
Copy Markdown
Member

This is looking amazing! Thank you so much for your patience while I got caught up with the beets backlog.

I think we should merge this as-is. I'm sure it will continue to evolve, but this is already useful in its current state. And the set of commands is clearly complete. (And I don't mind the long commit history.)

There's not really any documentation on that deal with alternate Library implementations, and it would definitely be a big hacking job. Let's leave it for the future.

@sampsyo
sampsyo merged commit cdef5fd into beetbox:master Aug 3, 2015
sampsyo added a commit that referenced this pull request Aug 3, 2015
@snejus snejus added the ipfs ipfs plugin label Apr 5, 2026
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

ipfs ipfs plugin

Projects

None yet

Development

Successfully merging this pull request may close these issues.

3 participants