<davidar>
I've encouraged people from the meetup last night to come here to ask questions, so everyone be nice :)
Leer10 has quit [Remote host closed the connection]
ikea has joined #ipfs
patcon has joined #ipfs
notduncansmith has joined #ipfs
notduncansmith has quit [Read error: Connection reset by peer]
<jbenet>
hahaha +1000 to that
<achin>
we will demand that they pin at least 1 hash before asking questions :P
pfraze has joined #ipfs
<_jkh_>
evening guys!
<_jkh_>
just a modest suggestion for the documentation on ipfs.io: Since most users are used to bit torrent already, where the workflow is essentially “go grab the torrent file, fire up your favorite client, then load the torrent file into it and click ``do it’’”
<_jkh_>
it would be nice if there was a quick start guide which described how to add a file, then extract a reference to it, then hand that reference to someone else for fetching
<spikebike>
heh, when I watched the video I was jonsing for the object IDs involved so I could follow along
<_jkh_>
because unless you watch the videos (“TL;DW!”) it’s surprisingly hard to get even that basic information out of the current docs
<jbenet>
we should do more blogposts with asciinemas instead of video
<achin>
_jkh_: what do you think about the current set of examples?
<jbenet>
_jkh_ arghhh yeah.
<spikebike>
jbenet: you did have a pretty slick ascii animation
<jbenet>
_jkh_ did you see the examples tab? it's awfully, sorely sparse
<_jkh_>
achin: well, TBH, they take you from “install” to “ipfs init” to “hey here’s how to write an ipfs client of your very own in Go!"
<_jkh_>
achin: there seems to be a step missing at least. :)
<zignig>
whyrusleeping: can pin bot do "!pin <hash> as <name>" and add it to an ipns record as /<year>/<month>/<day>/<usrname>/<name>/
wopi has quit [Read error: Connection reset by peer]
wopi has joined #ipfs
<davidar>
$ ipfs cat foo
<davidar>
Error: invalid ipfs ref path
Quiark has joined #ipfs
<davidar>
cat should say that ^
<giodamelio>
:)
<giodamelio>
I totally agree
wasabiiii has quit [Quit: Leaving.]
voxelot has joined #ipfs
voxelot has joined #ipfs
<zignig>
Been having fun with ipns , it's still a bit flakey but there is great potential.
<spikebike>
agreed
<fazo>
is something like "ipfs repo gc --keep 300MB" planned? It would keep no more than 300MB (pinned+cached) if pinned stuff is more than 300MB then it deletes all the unpinned stuff
<spikebike>
although it only handles one layer deep
jedahan_ has quit [Quit: My Mac has gone to sleep. ZZZzzz…]
kerozene has quit [Ping timeout: 250 seconds]
<zignig>
fazo: repo gc just cleans out everything not pinned at the moment, having auto gc with high and low water marks would be cool.
<zignig>
also set up two nodes so that it can push pinned things ( with a trust relationship ) to another node; for devices with limited storage.
nessence has quit [Ping timeout: 246 seconds]
<fazo>
zignig: that would be very useful, I think the thing I'm building may be able to do something like that
<fazo>
I'm working on a simple daemon that mirrors the ipns value of a node to the current node
<fazo>
it also works among multiple nodes, and unless conflicts arise (they are not handled) the changes propagate across all the nodes that run the daemon
<fazo>
this way if you have two machines and machine2 is running this daemon, when you publish something to ipns using machine1, machine2 publishes the same hash
<achin>
neat, what's the usecase?
<fazo>
directory synchronization
<zignig>
fazo: i
<zignig>
'm working on a similar thing... ;)
kerozene has joined #ipfs
<fazo>
zignig: cool :) mine is very simple though. I don't plan to develop it too much
<zignig>
fazo: my target usecase it having multiple users publish their stuff and converge it into a single index.
<zignig>
distributed thingiverse is the goal, a HUUUGE maker library on ipfs.
<fazo>
zignig: that's similar but using that you wouldn't be able to modify what the other participant's folder points to
<fazo>
which is good or bad depending on the use case of course :) at least you don't have to handle conflicts.
konubinix has joined #ipfs
<zignig>
yes , but with a block chain or a web of trust you could make a base system.
<ion>
achin: “source -- Where to find the license/legal terms in full” – that could be an IPFS object id!
<davidar>
zignig, very interested, please add thoughts to the aggregation issue :)
<achin>
ion: i think the link should be as authoritative as possible, so that likely means to a HTTP url
<achin>
so while linking to a copy of the license in IPFS could be cool, we should still have the original source
<davidar>
I'd like to see the creative Commons machine readable metadata embedded in ipfs
<ion>
Perhaps source should be an array of URLs one of which should be an IPFS hash.
<achin>
it's already an array, so tacking on something else isn't a proble
<davidar>
I guess all I really want is JSON+types, with the type information represented explicitly (rather than shoved into a random key in a dictionary)
<zignig>
it's more for configs than meta data but it would work too.
simonv3 has quit [Quit: Connection closed for inactivity]
<davidar>
at least in terms of the IPLD data model, obviously the reserved key is the only solution for json encoding
<jbenet>
my general feeling on all these formats is
<jbenet>
"needs work"
<jbenet>
davidar: is escaped directives such a bad solution?
<davidar>
jbenet, I guess I can live with them if I have to, it just feels rather hacky
<jbenet>
yeah agreed. i mean json was a hack, and so on.
<davidar>
json is a bit of a misnomer anyway, since it can't actually represent most JS objects (class instances)
<nicolagreco>
I was looking for that since the time of gitchain
<jbenet>
:)
<nicolagreco>
are you planning on distributing ipfs code that way ?
<jbenet>
note that it doesnt yet have ipns support because ipns is still not finalized.
<jbenet>
yep we will
<nicolagreco>
(ps: i received your email - I haven't replied to it yet)
<jbenet>
and we already backup ipfs in ipfs
<nicolagreco>
do you have any timeline for ipns?
Zajo has quit [Quit: Leaving.]
<jbenet>
O(T) ~ weeks
<nicolagreco>
ha
<nicolagreco>
ok
<nicolagreco>
is there a way we can make it logT ?
<jbenet>
yeah, we're close.
<nicolagreco>
what is missing? code or spec?
legobanana has quit [Ping timeout: 250 seconds]
<jbenet>
we'll have a slightly more robust version probably next week or following. and we'll have the best after 0.4.0 lands
<jbenet>
code
<nicolagreco>
ok, that is great then
<jbenet>
davidar: there's a graph format i wanted to show you. damn i can't find it anymore
<jbenet>
it was extremely simple, i really liked it.
<nicolagreco>
I have in my plans to contribute some time soon - but I changed city recently so I won't be settled down for a couple of days more
<spikebike>
saw a javascript solution for displaying graphcs dynamically that you could interact with in real time. Adding/subtracting nodes and you could stretch it back and forth while it changed.
<davidar>
jbenet: give me a rough description and it might ring a bell :)
<davidar>
i'll let you know if i think of anything else
<jbenet>
awww tinkerpop. i remember them. but no, it's like a super simple format written for data description
Leer10 has joined #ipfs
<davidar>
hmm, i'm not sure
thomasreggi has joined #ipfs
<davidar>
i used to be into graph formats a while ago, but can't recall much now :/
<davidar>
back when freebase was still a thing :)
zmanian has joined #ipfs
notduncansmith has joined #ipfs
notduncansmith has quit [Read error: Connection reset by peer]
nicolagreco has quit [Quit: nicolagreco]
wopi has quit [Read error: Connection reset by peer]
wopi has joined #ipfs
domanic has quit [Ping timeout: 260 seconds]
nicolagreco has joined #ipfs
captain_morgan has quit [Ping timeout: 252 seconds]
notduncansmith has joined #ipfs
notduncansmith has quit [Read error: Connection reset by peer]
domanic has joined #ipfs
amstocker_ has quit [Ping timeout: 244 seconds]
nicolagreco has quit [Quit: nicolagreco]
notduncansmith has joined #ipfs
JasonWoof has quit [Ping timeout: 272 seconds]
notduncansmith has quit [Read error: Connection reset by peer]
domanic has quit [Ping timeout: 260 seconds]
Zajo has joined #ipfs
jamescarlyle has joined #ipfs
notduncansmith has joined #ipfs
notduncansmith has quit [Read error: Connection reset by peer]
mildred has joined #ipfs
brab has joined #ipfs
<ipfsbot>
[go-ipfs] spikebike opened pull request #1723: Make the #foo references absolute instead of relative. (master...patch-1) http://git.io/vnkhb
Zajo has quit [Quit: Leaving.]
wopi has quit [Read error: Connection reset by peer]
wopi has joined #ipfs
rardiol has joined #ipfs
brab has quit [Ping timeout: 240 seconds]
elima has joined #ipfs
Zajo has joined #ipfs
Zajo has quit [Client Quit]
notduncansmith has joined #ipfs
notduncansmith has quit [Read error: Connection reset by peer]
<ipfsbot>
[go-ipfs] jbenet closed pull request #1723: Make the #foo references absolute instead of relative. (master...patch-1) http://git.io/vnkhb
slothbag has joined #ipfs
Zajo has joined #ipfs
Zajo has quit [Client Quit]
amstocker has joined #ipfs
notduncansmith has joined #ipfs
notduncansmith has quit [Read error: Connection reset by peer]
jamescarlyle has quit [Remote host closed the connection]
thomasreggi has quit []
Zajo has joined #ipfs
e-lima has joined #ipfs
rendar has joined #ipfs
elima has quit [Ping timeout: 250 seconds]
notduncansmith has joined #ipfs
notduncansmith has quit [Read error: Connection reset by peer]
Zajo has left #ipfs [#ipfs]
<jbenet>
whyrusleeping: any outstanding CRs for you?
<jbenet>
i think i got them all
<whyrusleeping>
jbenet: i think you may have gotten them all
notduncansmith has joined #ipfs
notduncansmith has quit [Read error: Connection reset by peer]
domanic has joined #ipfs
JasonWoof has joined #ipfs
<whyrusleeping>
github universe looks like fun
<rendar>
ipfs hashes are base64 strings, but does ipfs calculate base64 from the *string* of the sha256 hash (e.g. "AD45B6CE...\0") or from the binary data? i guess the latter..
<jbenet>
base58
<rendar>
oh..
<jbenet>
and binary
<rendar>
why not base64?
<jbenet>
and it's a multihash -- github.com/jbenet/multihash
<jbenet>
double-click + copy paste
<ion>
rendar: 0OIl1
<rendar>
jbenet: yeah i knew the multihash thing, i just omitted that for simplify the question
<ion>
Todo: a disqus alternative on top of IPFS :-P
<whyrusleeping>
would be sweet
<ianopolous>
jbenet: whyrusleeping: Quick question: I've noticed that object.put returns the hash under "Key" whereas everywhere else in the http API it is returned under "Hash". Is this deliberate?
<davidar>
fun fact of the day: 1l and O0 tend to look similar in some fonts because in ye olden days some typewriters used the same key for both
<whyrusleeping>
ianopolous: that is not deliberate
<whyrusleeping>
it probably makes sense to unify the field names
<ianopolous>
ok cool
<rendar>
davidar: yeah in old typewriters there weren't they key for "1", you simply used I
<davidar>
no wonder there's so many issues with unicode support at the moment
<ion>
davidar: Incidentally, IRC nicknames are encoded in ISO 646-FI.
notduncansmith has joined #ipfs
notduncansmith has quit [Read error: Connection reset by peer]
<davidar>
ion: that's just a subset of ascii though, no?
<ion>
davidar: Not quite, see the page you linked.
<cryptix>
gmorning
<davidar>
oh, finnish diacritics and that weird currency symbol
<davidar>
ion: can i actually use those symbols in an irc nick though?
<davidar>
morning cryptix
<spikebike>
˙uʍop ǝpᴉsdn pǝddɐɹʇ ɯ,I 'ou 'ɥO
<davidar>
hehe
<davidar>
captain_morgan has joined #ipfs
<davidar>
hrm, need to install fonts
<ion>
davidar: Yes, most clients will just render them as [\] etc. But servers handle case-insensitive matching according to ISO646-FI. The RFCs actually don't mention the encoding (which just happened to be the one their computers used when they were developing IRC), they provide the lowercase/uppercase map for codepoints in an unspecified encoding.
<davidar>
ion, huh, suddenly unicode seems simple in comparison :)
<ion>
If I ever wrote an IRC client, I'd render nicks in ISO646-FI for fun.
* spikebike
ponders an irc replacement on top of IPFS
<davidar>
spikebike: chat.ipfs.io
<spikebike>
that's just a irc gateway isn't it?
<spikebike>
seems kinda silly to login to matrix.org just so you can connect to IRC, or am I missing somehting?
notduncansmith has joined #ipfs
notduncansmith has quit [Read error: Connection reset by peer]
ygrek has joined #ipfs
dignifiedquire has joined #ipfs
Gaboose has joined #ipfs
jamescarlyle has joined #ipfs
notduncansmith has joined #ipfs
notduncansmith has quit [Read error: Connection reset by peer]
<davidar>
spikebike: no, it bridges irc, but the room still exists independently of irc
<davidar>
e.g. if freenode catches fire, it should still work for everyone on matrix
<spikebike>
ah, and the matrix is distributed so there's no single room to catch fire?
<davidar>
yeah
<spikebike>
worth a try
<spikebike>
but the matrix is a distributed system unrelated to ipfs?
<davidar>
spikebike (IRC): yes, but there are plans for further integration between the two in the future
atomotic has quit [Quit: My Mac has gone to sleep. ZZZzzz…]
samiswellcool has joined #ipfs
ygrek has quit [Ping timeout: 264 seconds]
<spikebike>
grr
jamescarlyle has quit [Remote host closed the connection]
<spikebike>
matrix.org depends on email, but doesn't seem to abide by the SMTP rfc, so if grey listed it never retries
magneto1 has joined #ipfs
notduncansmith has joined #ipfs
notduncansmith has quit [Read error: Connection reset by peer]
<davidar>
spikebike (IRC): providing an email address is optional, iirc
<davidar>
ping Matthew
<M-erikj>
Yeah, providing email should be optional
<M-erikj>
I don't really know much about SMTP but I can raise with our guys that run our email servers
<spikebike>
got it to retry, but now it seems to depend on clicking on a tab that I closed
<spikebike>
"Verification successful! Please return to your Matrix client to continue."
<M-erikj>
spikebike: You should just be able to go back to the client and reenter the details i think
<M-erikj>
Although I've never actually tried registering with an email
<erikj>
Personally, I would just not bother and add an email after the fact
M-spikebike has joined #ipfs
<M-spikebike>
weird
* M-erikj
waves
<spikebike>
ah, that's what the M- is ;-)
jamescarlyle has joined #ipfs
<M-erikj>
Yup, you can change the nick the bridge uses
<M-erikj>
can't remember how (I don't feel like I'm being terribly helpful :/)
<M-erikj>
Aaaanyway, all comments and suggestions are more than welcome :)
wopi has quit [Read error: Connection reset by peer]
<spikebike>
interesting, ack, it seems to ignore middle click for new tab
jamescarlyle has quit [Remote host closed the connection]
wopi has joined #ipfs
<M-erikj>
For opening things like rooms in new tabs?
<spikebike>
like if you are in one channel and you want to open another channel in a new tab
<M-erikj>
(You may also be interested to know that there are mobile clients as well)
<M-spikebike>
Yeah, did see that. Kinda reminds me of qtox
<M-erikj>
Yeah, we don't really support that atm; currently it would just run two independent clients, which would probably be suboptimal
* M-erikj
files a feature request for it
<spikebike>
so it's a chat client, but you can only see one channel at a time?
<spikebike>
well I admit it seems silly to complain, the answer is likely, use a client
<M-erikj>
It's not particularly silly
<M-erikj>
It's a shame we don't have a proper desktop client yet :(
<M-spikebike>
well at least with google chrome it intentionally tried to keep tabs as seperate as possible. So doing anything non-trivial in 2 tabs on the same machine connecting to the same p2p network seems a bit silly
<M-erikj>
It would probably be fiddly to implement, but I *think* its doable. You'd probably end up having a massively stripped down client in the single room tabs
<M-erikj>
although you'd end up with some duplicated traffic
* M-erikj
shrugs
<M-erikj>
Feature requests are cheap either way :D
<M-spikebike>
heh, no idea how light a client can be. Maintaining a DHT per tab for instance would be silly.
<M-spikebike>
I've only got my head wrapped around half of ipfs and didn't hear about matrix until today
<M-erikj>
The arch of matrix is a lot simpler: client <-> server <-> server <-> client
<M-erikj>
you can just about use curl as a client :p
notduncansmith has joined #ipfs
<M-spikebike>
ah, so it's basically 2 tiers? Only the servers maintain a overlaynetwork among other servers?
notduncansmith has quit [Read error: Connection reset by peer]
<M-erikj>
Yeah, very much like email in some ways
<M-erikj>
It makes clients really quite simple, and nice to run on mobiles etc.
<M-erikj>
We do want to investigate allowing clients/users to roam across other servers so that they're not tied to single servers, but that a very long term plan if we ever get tehre
<M-spikebike>
Ah, there's pretty cool actually. With smart phones, tablets, and similar devices that are A) often on fairly closed WAN networks B) have very little CPU/battery C) like to be asleep most of the time and D) often are throttled or have bandwidth caps. Having a "server" like a a raspberry pi in a mason jar that's on the network 24/7 maintaining the network and allowing a client to quickly/cheaply contant a server is ideal
<M-erikj>
Yup :)
<M-erikj>
It's *so* nice to be sitting on the tube in london and have it happily cope with the 30s of signal the phone sometimes gets as it goes through a station
<M-spikebike>
IPFS seems like it could help out there. CAS and replication would allow cheap/thin clients to access storage even if their preferred server is down fo ra bit
<davidar>
spikebike: if you want to change your nick, start a conversation with "@appservice-irc:matrix.org" and say "!nick whatever"
<M-spikebike>
ah, thanksl
<M-erikj>
(At the moment I don't think the bridge remembers it over restart, but that should be fixed at some point)
<davidar>
Erik, yeah, that's kind of a pain, but I guess it's not too much hassle
<davidar>
<up arrow> <enter>
<M-erikj>
spikebike: Yeah, IPFS seems really cool and should help us to do some things. I should really get around to looking more into it (rather than just sitting here talking about matrix :p)
bedeho has joined #ipfs
<M-erikj>
davidar: yeah, though from the matrix side you probably won't notice the bridge restarting
<davidar>
Erik: have you read kyledrake's post? (was #2 on HN recently)
<M-spikebike>
My idle throughts have been to use a raspberry pi to earn a reputation from it's DHT peers (say 30 or so) by trading storage and bandwidth with peers.
<M-spikebike>
That way my phone could load my message logs/inbox/whatever from any of those 30 machines, even if my server was down for a bit.
<davidar>
spikebike, yeah, i think that's the plan for filecoin
<M-spikebike>
yeah, seems like a poor idea. I'd much rather just deal with reputation by direct observation then trying to force something througth a really slow and bandwidth intensive blockchain.
<M-spikebike>
say to each of 30 clients "hey, lets trade 256MB for a week, no more than 64kbit on average, 95% uptime, grace period 72 hours". A month later you start trusting the ones that lived up to their promises and hunt the DHT for new partners to replace any churn.
ikea has quit [Ping timeout: 255 seconds]
notduncansmith has joined #ipfs
notduncansmith has quit [Read error: Connection reset by peer]
<erikj>
So is there an idea that if you serve your website over your IPFS node that you should also store and serve the content that your site links to?
<M-spikebike>
not that I know of
jamescarlyle has quit [Remote host closed the connection]
<M-spikebike>
there's been discussion about using a proxy or browser plugin to slurp everything you visit
<M-spikebike>
but there's obvious serious privacy issues related to that
<M-spikebike>
and just because you link to it, doesn't mean you have copywrite
<M-spikebike>
there is some protection for cachign
<M-spikebike>
but I've never heard anyone propose something like ipfs add -r --recursion-level=3 to crawl external links or something
<ion>
ipfs pin add -r --recursion-level=inf
<M-erikj>
The article was talking about how much it sucks when links in old pages no longer work because the remote server has been shut down, and it doesn't really seem to me that IPFS solves that in and of itself
<M-erikj>
even if it does increase the likelihood of being able to find the content somewhere
<M-spikebike>
agreed
<M-spikebike>
although it does make it dramatically easier for someone in a community to basically slurp a site (almost like the wayback machine),a nd then other people can find it using the same domain/links.
<M-spikebike>
but yeah currently it depends on someone saying "hey, that's cool, I'll donate disk and bandwidth... ipfs add -r ...
<M-erikj>
Forsure, it seems IPFS is a massive step in the right direction
atomotic has joined #ipfs
<ion>
If IPFS becomes significant, The Internet Archive would probably extend its mission to archive the web into IPFS.
<M-spikebike>
it's a hard problem, some of the problems, who pays the bandwidth/storage tax to help out? If you host content you didn't personally add, how do you avoid DMCA or confiscations of hardware?
<ion>
The Internet Archive seems to have a lot of it figured out. Also Google provides cached versions of search results.
<M-spikebike>
ya, totally, neocities jumpign on board is a godo start
<M-spikebike>
Ah, android works.
domanic has quit [Ping timeout: 246 seconds]
ygrek has joined #ipfs
notduncansmith has joined #ipfs
notduncansmith has quit [Read error: Connection reset by peer]
<davidar>
ion, I think brewster kahle has even said they're planning to do something like that in the future
<davidar>
they want to shift from archiving to seeding existing sites
<davidar>
spikebike: yay, android
<davidar>
where were you when i was arguing with ios people the other day :)
<davidar>
Erik: and I believe filecoin is the plan for making sure stuff is stored somewhere
<M-erikj>
heh, haven't heard of them either
* M-erikj
wonders if he's been living under a rock without realising it
<M-erikj>
Also, yay, android!
<M-spikebike>
How does filecoin help?
<M-spikebike>
I get the immutable log thing, I get that they make registering domain names expensive. Not so sure on how it helps with archiving the web though.
<rendar>
what about if i add a bunch of very little files in ipfs? like few bytes each file..can ipfs optimize this?
<rendar>
about some millions of these few bytes files
wopi has quit [Read error: Connection reset by peer]
<M-spikebike>
pretty sure that's a no today
<M-spikebike>
but there's been talk about direct support for git, tar, and torrents.
wopi has joined #ipfs
<rendar>
ok
<M-spikebike>
and I've seen p2p systems before that just ignore files under a certain size and just make the entire dir into an immutable object with an index
<rendar>
right
<rendar>
M-amstocker, so one possible optimization would be set that little data inside the directory metadata
<M-spikebike>
I don't really think of IPFS for replacing /home personally. I wouldn't run say a postgres database on top of IPFS.
<rendar>
replacing /home? i never said that :)
<M-spikebike>
heh, well I think of logins whenever someone mentioned read/writing a zillion tiny files
ei-slackbot-ipfs has quit [Remote host closed the connection]
ei-slackbot-ipfs has joined #ipfs
<rendar>
i don't think ipfs could replace /home btw
<M-spikebike>
I did an strace of a login and was hororified at how many tiny random reeds happened.
<M-spikebike>
I did an strace of a login and was horrorified at how many tiny random reeds happened.
<M-spikebike>
no wonder SSDs can make such a huge improvement
<jbenet>
spikebike: coalescing.
notduncansmith has joined #ipfs
notduncansmith has quit [Read error: Connection reset by peer]
<M-spikebike>
of writes? Sure. Sadly read access for login has nothing to do with write ordering. It was a horror of font/library/config file search in each of a large number of directories, I think it was actually M*N of which 99.9% were file not found.
od1n has quit [Ping timeout: 272 seconds]
e-lima has quit [Ping timeout: 256 seconds]
<deltab>
maybe recording the reads and next time issuing them all at once would help with that
<deltab>
the kernel can sort them into an efficient order and warm the cache
Quiark has quit [Ping timeout: 246 seconds]
od1n has joined #ipfs
notduncansmith has joined #ipfs
notduncansmith has quit [Read error: Connection reset by peer]
voxelot_ has quit [Ping timeout: 255 seconds]
e-lima has joined #ipfs
notduncansmith has joined #ipfs
notduncansmith has quit [Read error: Connection reset by peer]
<davidar>
rendar (IRC): spikebike: jbenet wants to replace root / with ipfs :)
<M-spikebike>
heh, sounds good to me
<M-spikebike>
I've wished for years, decades really, for a from the ground up replacement for AFS (andrew filesystem). It had tons of good ideas, but crypto, rpcs, decent network stacks, etc didn't exist. So they wrote it all from scratch (in a poor language).
<M-spikebike>
IPFS is actually pretty close (or will be when more mature) to AFS. If jbenet hasn't read about NFS he should.
<M-spikebike>
oops AFS
<M-spikebike>
going for a dog walk, but I'm android enabled ;-)
<rendar>
davidar: lol
<davidar>
spikebike: personally I suspect ipfs is jbenet's secret plan to revive plan9 :)
<davidar>
rendar (IRC): I'm not kidding either
<M-spikebike>
heh, those papers are good as well
<rendar>
davidar: i know, but ...i don't know, it seems like an extreme thing
<davidar>
rendar (IRC): evidently you don't know jbenet very well then :p
<rendar>
eheh
<davidar>
you can ask him about it when he regains consciousness
<davidar>
I don't know much about what his plans are
<rendar>
ok
<davidar>
lgierth: pollux is running low on space, you said you could delete the openwrt archive?
<lgierth>
davidar: already did long time ago
<lgierth>
davidar: you also have access to sirius
<lgierth>
and maybe i can break apart the raid on pollux
<lgierth>
make 5.4T out of 2.7T
<M-spikebike>
I really liked as volumes.... seems like the would be useful for ipfs
<davidar>
lgierth (IRC): haha, uh oh
<davidar>
yeah, i think i'd prefer space to redundancy
<davidar>
i can always re-download any corrupted files
notduncansmith has joined #ipfs
<davidar>
related: is ipfs able to fsck the local blockstore? (cc whyrusleeping)
notduncansmith has quit [Read error: Connection reset by peer]
jamescarlyle has joined #ipfs
bedeho has quit [Ping timeout: 256 seconds]
<mafintosh>
daviddias: was offline yesterday. grokking through your mentions now
<daviddias>
No worries and thank you :)
<mafintosh>
daviddias: i'm thinking we can easily make a quick-n-dirty impl of the spdy duplex stream interface but just passing passthroughs to the current impl
<mafintosh>
daviddias: but still make it a pr to the spdy module. then we can iterate the impl later so its a bit nicer
<mafintosh>
jbenet: hey are you in ny late oct? might be heading there again actually
<mafintosh>
jbenet: actually i'm there in nov as well lol
<mafintosh>
looking at my calendar i should probably just have stayed there for a while
<daviddias>
It would be better than nothing, but there will be a bunch of transport proprieties that would be behind the passthrough
<mafintosh>
daviddias: yea for sure
<mafintosh>
daviddias: maybe we should just bite the bullet and do it right hehe
<daviddias>
I want that :D , but I also wonder how much time it will take and if it would break Fedor's multiple sdpy version and http code entirely. Right it is kind of complex
danslo has joined #ipfs
notduncansmith has joined #ipfs
notduncansmith has quit [Read error: Connection reset by peer]
Gaboose has quit [Read error: Connection reset by peer]
wasabiiii has joined #ipfs
jamescarlyle has quit [Remote host closed the connection]
notduncansmith has joined #ipfs
notduncansmith has quit [Read error: Connection reset by peer]
<noffle>
whyrusleeping: are you very up to date with the ipfs-npm discussion? I had some Qs I'm typing onto the issue, but having a live person to bounce things off of would be great!
<whyrusleeping>
noffle: i think i might be up to date
<whyrusleeping>
but that generally changes when i go to sleep
notduncansmith has joined #ipfs
<noffle>
heh
notduncansmith has quit [Read error: Connection reset by peer]
<whyrusleeping>
noffle: so i think that we would use a patched reginabox (or similar)
<whyrusleeping>
and have it pull the data out of ipfs
<whyrusleeping>
that seems to be the 'easy' route to me
<whyrusleeping>
but the more distributed route would be to ship a custom npm client (as you suggest)
<whyrusleeping>
the collation of published entries is the difficult part. Its easy to say we can centralize it (and we can, but thats no fun)
<noffle>
whyrusleeping: so, users use stock npm? how do they get the tarball? are we hosting a server over http that uses ipfs instead of a stored-on-hd registry?
cerianthoid has joined #ipfs
<whyrusleeping>
noffle: i beleive that the reginabox would provide the downloads? (i could be misunderstanding how the registries work)
<noffle>
whyrusleeping: (I think my registry understanding is weak, which may be a detractor here)
<whyrusleeping>
daviddias: ping
<noffle>
but is the endpoint for users an http server 'we' are hosting, that just satisfies the request using ipfs?
<whyrusleeping>
noffle: that would be the quick and dirty way, imo
<whyrusleeping>
thats a more 'decentralized' approach than a distributed one
<noffle>
whyrusleeping: what's the benefit? after enough requests the machine hosting it will have enough blobs that'll basically be the same as storing the whole registry locally, no?
<noffle>
and it's still single-point-of-failure
<whyrusleeping>
noffle: 'we' wouldnt be hosting the registry, the user would host it on their network
<noffle>
ah, I misunderstood that part :D
<noffle>
a drop-in replacement for reginabox, NOT for npm's servers -- got in
<noffle>
got it*
<noffle>
is the only savings to a user running one of these that they don't need to install the massive tarball collection first?
<whyrusleeping>
noffle: yeah, npm is centralized right now, we want to move to distributed, but decentralized is a good middle step:
<whyrusleeping>
the longest a url ever needs to be, lol
<noffle>
if users can host reginabox already, isn't npm already distributed? ;)
nicolagreco has joined #ipfs
<noffle>
we're just letting users build out a local cache using ipfs
<whyrusleeping>
nope, the downloads all come from npm
<whyrusleeping>
they just might get cached by reginabox
<whyrusleeping>
but another reginabox instance still needs to pull from npm
<noffle>
ah, I see. so how would ipfs-reginabox satisfy module name requests?
<whyrusleeping>
yeah, thats the hard part
<whyrusleeping>
easy answer: centralize it
<whyrusleeping>
hard answer: crypto currency?
<rendar>
hmm, i'm doing some hacks with base58 and ipfs, but i have an off topic question about base58: does it store in the encoded string the size of the original buffer? i guess base64 does it, anyone knows that?
<cryptix>
whyrusleeping: how do you feel about the awesome new word you learned today? :)))
<whyrusleeping>
cryptix: i'm going to put it up there with schadenfruede and Freundschaftsbezeigungen
<noffle>
whyrusleeping: global name mapping seems like a recurring problem in the ipfs world I've been seeing
<whyrusleeping>
rendar: base64 doesnt store any sizes of anything
<whyrusleeping>
its just a different encoding
<whyrusleeping>
if you convert a number into its binary representation, you wouldnt expect the ones and zeros to say anything different
nicolagreco has quit [Quit: nicolagreco]
<rendar>
whyrusleeping: ok
<rendar>
whyrusleeping: i initially thought that "Qm" at the start of any address was the fixed size of the hash, then i've realized its the multihash code
<whyrusleeping>
rendar: ah yeah, so multihash does store the type and size of the hash
nicolagreco has joined #ipfs
<rendar>
whyrusleeping: i guess its only 1 byte, so the real hash will be 32 bytes (sha256 is 32 bytes lenght) + 1 (multihash) = 33 bytes
<ion>
“<@whyrusleeping> if you convert a number into its binary representation, you wouldnt expect the ones and zeros to say anything different” That's why my compression algorithm simply removes all the ones.
<noffle>
whyrusleeping: whoops; transposed my decentralized/distributed
nicolagreco has joined #ipfs
wasabiiii1 has joined #ipfs
akhavr has quit [Read error: Connection reset by peer]
<achin>
ion then apply run-length encoding!
<whyrusleeping>
ion: and then you could just write your number by saying how many zeros it has
wasabiiii has quit [Ping timeout: 240 seconds]
dignifiedquire has quit [Quit: dignifiedquire]
dignifiedquire has joined #ipfs
akhavr has joined #ipfs
<rendar>
and you can use the same process to compress the number of the zeros of the original number
e-lima has joined #ipfs
notduncansmith has joined #ipfs
notduncansmith has quit [Read error: Connection reset by peer]
screensaver has joined #ipfs
dpc has quit [Quit: Leaving]
<noffle>
sanity check: if I pipe the output of 'ipfs object get <hash>' into 'ipfs object put', why don't I get back the same hash?
<whyrusleeping>
noffle: quantum mechanics
<whyrusleeping>
also, huh
<noffle>
the hashing is deterministic, right?
<noffle>
I mean, it has to be :P
<noffle>
so what's up?
wopi has quit [Read error: Connection reset by peer]
<whyrusleeping>
i mean, hashing...
<whyrusleeping>
good question
<whyrusleeping>
want to file an issue for us?
wopi has joined #ipfs
<whyrusleeping>
thats probably wrong
<noffle>
sure
nicolagreco has quit [Quit: nicolagreco]
e-lima has quit [Ping timeout: 256 seconds]
Eudaimonstro has joined #ipfs
<voxelot>
in the node api is there a function i can call like ipfs.cat(hash, function(err,res){); but for name resolve and publish, like ipfs.resolve(id, function(err,res){);
notduncansmith has joined #ipfs
notduncansmith has quit [Read error: Connection reset by peer]
<whyrusleeping>
lets try not to use that command if we can avoid it, lol
<noffle>
oh, ha, it blocks? ;)
<lgierth>
no it highlights everyone
* lgierth
crawls back under his stone
<whyrusleeping>
lemme fix that...
pinbot-test has joined #ipfs
pinbot-test has quit [Remote host closed the connection]
<Vyl>
ipfs uses a tree hash, doesn't it?
<Vyl>
Would that mean that a file could be stored many ways, depending how the tree is structured?
<whyrusleeping>
we use a merkletree hash, yeah
<whyrusleeping>
and yes, it could
<Vyl>
Each with their own hash? Which might explain the odd mismatch, if the tree-making behavior has changed between versions.
<Vyl>
Get object stored with old version. Read it out, put it back in using a newer version. Suddenly, mismatch.
<Vyl>
Just a theory.
<whyrusleeping>
Vyl: yeah, that could be. but if youre referring to the bug noffle reported, i was able to repro using newly created hashes
notduncansmith has joined #ipfs
notduncansmith has quit [Read error: Connection reset by peer]
nicolagreco has joined #ipfs
donthi has joined #ipfs
wasabiiii has joined #ipfs
wasabiiii1 has quit [Ping timeout: 265 seconds]
mondkalbantrieb has quit [Remote host closed the connection]
<whyrusleeping>
lgierth: i patched pinbot so the '!friends' command sends a notice to the requester instead of pinging the whole channel
<whyrusleeping>
next time he needs rebooting, you should grab that update
boxxa has quit [Quit: Connection closed for inactivity]
notduncansmith has joined #ipfs
notduncansmith has quit [Read error: Connection reset by peer]
amstocker has joined #ipfs
<ion>
NOTICE is the right thing to do for all bot messages, but one could still make it public, inserting U+200D ZERO WIDTH JOINERs in the middle of the nicks to avoid highlighting.
donthi has quit [Quit: Page closed]
<ion>
A bit of a hack but it works. :-P
<ion>
noffle: I seem to be unable to get QmWFg6qzE2UhyqKNwsQ7hyC93vfiVcukiC79KMSJ3ygorH
jfis has quit [Ping timeout: 264 seconds]
<noffle>
ion: oh, I only pinned the first one, didn't I?
<noffle>
can you not repro locally to that hash?
<whyrusleeping>
unexpected EOF
<whyrusleeping>
thats... odd
<edrex>
is it a known issue that the DAG links in the web UI 404 in the current go-ipfs master? They work fine with the webui master in dev mode.
<Xe>
does IPFS store any metadata about files?
<whyrusleeping>
edrex: yeap
<whyrusleeping>
Xe: not currently
<Xe>
mm
<Xe>
it'd be a nice extension in the future
<whyrusleeping>
Xe: yeah, it would be nice to have
<whyrusleeping>
right now, the tar importer retains all metadata though
<whyrusleeping>
i should do a little writeup on using the tar importer
<rschulman>
dat Motherboard article
<rschulman>
things are about to get interesting. :)
<edrex>
Xe: you can try it: ipfs add SOME_DIR
<rschulman>
Is anyone tracking the size of the network/its stability?
<whyrusleeping>
jesus christ, i need to get udp working fast...
<edrex>
Xe: yeah, mime types would be good
<rschulman>
:D
<rschulman>
whyrusleeping: Too late!
<Xe>
is ipfs 0.3.5 old?
<edrex>
rschulman: uh oh
<rschulman>
I mean, jbenet gave them a quote, so I presume at least he knew it was coming.
<lgierth>
Xe: yeah kinda :)
<lgierth>
Xe: get 0.3.8-dev
<nicolagreco>
jbenet: received my email?
<noffle>
oh cool, I didn't know about neocities going to ipfs :D this is huge!
<rschulman>
Ahhh, I remember when this channel was just like 20 users bsing. :)
<whyrusleeping>
rschulman: get off my lawn!
notduncansmith has joined #ipfs
notduncansmith has quit [Read error: Connection reset by peer]
<rschulman>
whyrusleeping: Dude, YOU'RE on my lawn!
<cryptix>
vice writing about ipfs? now i have another reason to party tonite :))
<whyrusleeping>
alright, whose quote is this "Let's see the fuckers try to burn down this Library of Alexandria."
<whyrusleeping>
kyledrake: was that you?
<cryptix>
iirc kyle?
<whyrusleeping>
ah, yes. it was
<ion>
The article says Kyle Drake.
<cryptix>
althought not in that wording on the blog article
<ion>
The article also says they talked to Drake.
<whyrusleeping>
yeap, just finished the article
<cryptix>
kk
<noffle>
the linked neocities article seems pretty polarized (http as "fundamentally broken"; ipfs as "solving" the problem of cut links), but pretty accurate overall
notduncansmith has quit [Read error: Connection reset by peer]
ygrek has joined #ipfs
underpantz_ has quit [Remote host closed the connection]
devbug has joined #ipfs
thomasreggi has joined #ipfs
voxelot has joined #ipfs
<spikebike>
Vyl for the most part HTTP isn't particularl good at realtime communication and interactivity
devbug has quit [Remote host closed the connection]
notduncansmith has joined #ipfs
notduncansmith has quit [Read error: Connection reset by peer]
nessence has quit [Remote host closed the connection]
<Vyl>
http is realtime enough to do comments that appear in seconds, not hours.
<Vyl>
It's realtime enough to submit a query to a database, and get a swift response.
<spikebike>
ipfs could easily handle comments
wasabiiii has joined #ipfs
wasabiiii1 has quit [Ping timeout: 250 seconds]
domanic has joined #ipfs
jamescarlyle has joined #ipfs
dignifiedquire has quit [Quit: dignifiedquire]
<noffle>
Vyl: the misinformation ends up doing more damage imho
<Vyl>
Misinformation? Promising a revolution, and offering only substantial improvements?
samiswellcool has quit [Quit: Connection closed for inactivity]
atrapado has joined #ipfs
<jbenet>
noffle: i'd agree. i dont think we should be saying "our plan is to completely replace all uses of http with what we have now". however, being able to host websites that are entirely distributed over ipfs (including updates and so on) is not a false claim.
<Vyl>
It could also reduce the hosting costs by combining http and ipfs elements.
screensaver has quit [Remote host closed the connection]
FunkyELF has quit [Ping timeout: 246 seconds]
screensaver has joined #ipfs
wopi has quit [Read error: Connection reset by peer]
wopi has joined #ipfs
<Vyl>
Did anyone take interest in that local-dumping script?
eternaleye has quit [Quit: Quit]
mildred has quit [Ping timeout: 255 seconds]
<jbenet>
Vyl: i haven't put it on github, sorry lots to do.
<jbenet>
if you link me to it again, i can do it now
<Vyl>
I keep discussing IPFS with people. Still having people discuss concerns about the lack of plausible deniability.
<Vyl>
Still, can't be helped now.
<Vyl>
Can always build that on top.
<voxelot>
so you can publish objects to other people's id with ipns atm
<whyrusleeping>
cgo is the worst thing ever
<bengl>
noffle, whyrusleeping: regarding npm and reginabox: you don't want reginabox. you want registry-static. reginabox is just a prepackaged version of registry-static, for a specific use-case.
<bengl>
then you have a read-only mirror of registry.npmjs.org
<noffle>
bengl: how do the modules get served? or is blob-store not used for that? (sorry, I'm super unfamiliar with how the registry works)
<bengl>
in most people's use-cases, nginx
<bengl>
registry-static merely builds the file structure for nginx to serve
<jbenet>
afaiu, we can use the ipfs-blob-store to both store and serve the modules, so instead of nginx, ipfs gateway
<bengl>
well you wouldn't even need ipfs-blob-store, just the gateway :)
rardiol has quit [Ping timeout: 256 seconds]
<bengl>
perhaps with a thin layer on top to override directory listings.
<bengl>
that's pretty much it
<jbenet>
yeah so the tricky part is storing it like a regular fs-- normally `ipfs object patch` can be used to do this.
patcon has joined #ipfs
<jbenet>
whyrusleeping: how might we do mfs-style updating via the API now? (like some of the stuff we were prototyping in the older mfs interface?)
ygrek has quit [Ping timeout: 246 seconds]
<jbenet>
just object-patch, right?
<whyrusleeping>
yeah, just object patch
<whyrusleeping>
go does not know how to use a linker
<jbenet>
what's the problem? are you trying to make it go-gettable?
<whyrusleeping>
no, i'm trying to make it build
wasabiiii1 has joined #ipfs
<jbenet>
lol
<jbenet>
fun
wasabiiii has quit [Ping timeout: 240 seconds]
<whyrusleeping>
so to import go-udtwrapper, i need to have libudt.a built in that package
<whyrusleeping>
and then to build my program using it, i need to also have libudt.a in my package
<whyrusleeping>
if its not in either place, it complains about not being able to find it
rardiol has joined #ipfs
<whyrusleeping>
and when i have it both places I get (big surprised) multiple definitions of everything in the lib
<whyrusleeping>
pretty close to making my makefile just copy all of the source into one directory, and build that way
<noffle>
jbenet: mfs-style?
dignifiedquire has joined #ipfs
screensaver has quit [Remote host closed the connection]
screensaver has joined #ipfs
notduncansmith has joined #ipfs
notduncansmith has quit [Read error: Connection reset by peer]
compleatang has quit [Quit: Leaving.]
<jbenet>
noffle: mfs is an api we're making in go-ipfs that makes it easier to modify file hierarchies, think:
<jbenet>
ipfs mfs put /local/foo/bar/baz <hash> -- so would make /local/foo/bar/baz link to <hash>
edrex has joined #ipfs
thomasreggi has quit [Remote host closed the connection]
<bengl>
^ do want :)
SebastianCB has joined #ipfs
twistedline has quit [Ping timeout: 240 seconds]
thomasreggi has joined #ipfs
twistedline has joined #ipfs
compleatang has joined #ipfs
wopi has quit [Read error: Connection reset by peer]
wopi has joined #ipfs
thomasreggi has quit [Remote host closed the connection]
thomasreggi has joined #ipfs
akhavr has quit [Read error: Connection reset by peer]
akhavr has joined #ipfs
<ianopolous>
jbenet: the java-ipfs-api is nearing functional completion. I am going to add more types, but all the functionality is there except for swarm.(connect/disconnect) and object.(new/patch). As far as I can see, it's the most complete implementation of the http api.
notduncansmith has joined #ipfs
notduncansmith has quit [Read error: Connection reset by peer]
Eudaimonstro has quit [Read error: Connection reset by peer]
<jbenet>
ianopolous: that's really great!!
<jbenet>
hey richardlitt are you working on the API docs? we should sync about that
chriscool has quit [Quit: Leaving.]
* whyrusleeping
rm -rf ~/go && sudo pacman -S ghc
chriscool has joined #ipfs
rardiol has quit [Remote host closed the connection]
<jbenet>
whyrusleeping: nooooooooooo not yet, next yearrrrrrr
* jbenet
wants to dive into the world of haskell and never return.
* jbenet
but cannot yet.
<ianopolous>
:-(
<ianopolous>
likewise, and scala
screensaver has quit [Remote host closed the connection]
screensaver has joined #ipfs
<giodamelio>
whyrusleeping: can you send me those irc logs we were talking about?
<spikebike>
interesting PEP seems to be open to different transports for chat, messaging, and email
<giodamelio>
whyrusleeping: Thanks
<spikebike>
Of course that leads me to thinking about using IPFS
<whyrusleeping>
would have thrown those in ipfs but my irc bouncer only has about 20MB of free ram
notduncansmith has joined #ipfs
notduncansmith has quit [Read error: Connection reset by peer]
wasabiiii has joined #ipfs
wasabiiii1 has quit [Ping timeout: 256 seconds]
jamescarlyle has joined #ipfs
<bengl>
so... would it be possible to have index.json operate the same way as index.html in overriding directory listings on gateways? this would make npm pretty damn easy.
jamescarlyle has quit [Ping timeout: 244 seconds]
<noffle>
bengl: (dumb question) why does that help?
<whyrusleeping>
bengl: i mean, you could write your gateway that way
dignifiedquire has quit [Quit: dignifiedquire]
<whyrusleeping>
we could maybe add a 'default files' option to the config for the gateway
<whyrusleeping>
set to ['index.html'] by default
<bengl>
noffle: it's how registry-static stores npm pacakge metadata
<bengl>
whyrusleeping: if it were in every gateway, then every gateway could be an npm registry mirror ;)
M-spikebike has left #ipfs ["User left"]
<noffle>
oh: index.json the only piece of data needed to fetch any npm package
<bengl>
noffle: well, that and the tarball
<bengl>
npm client reads it as if it were the directory (it's written for an API, not a flat fs)
rendar has quit []
<bengl>
if a custom client is used, then this doesn't matter
amstocker has joined #ipfs
<whyrusleeping>
jbenet: i cant even
<whyrusleeping>
apparently when travis builds the udt code, the types change
<voxelot>
thing is im not using a server at all for this :)
<fazo>
uuuh it's an angular app. I may be able to help with the code :)
<voxelot>
or attempting to, tryin to take first steps into entire site hosted p2p
<noffle>
voxelot: oh durr right, hehe
<noffle>
I'm still wrapping my head around this style of thinking
<voxelot>
fazo: cool! github is on the site, feel free to look, its just CORS i can't figure out now
<fazo>
voxelot: :) would you mind explaining briefly how adding a message works?
<fazo>
does it update an ipns record or something like that?
<voxelot>
yup!
<voxelot>
i have my ipns id hardcoded into the site, so it takes the data from the form, first makes a json, adds it to ipfs (or would if cors wasnt a dick) then publishs the add hash to ipns id
<fazo>
voxelot: I see when something gets posted a json representing the post is added to ipfs
screensaver has quit [Remote host closed the connection]
<M-amstocker>
so you are trying to expose the http api to the web
<M-amstocker>
?
<fazo>
voxelot: wait, it publishes it to the local ipns, not yours
<voxelot>
M-amstocker: yes
<voxelot>
fazo: also yes haha
<voxelot>
kinda scary
<voxelot>
be careful
<M-amstocker>
i think by default it doesn't allow cors, right? So you would have to proxy or use nginx to set the headers manually
<fazo>
but how do other people see it?
<voxelot>
i set the cors headers in the ipfs config to no avail
<voxelot>
fazo: every time the wall loads it resolves the current data hash from the ipns id
<voxelot>
lgierth: yup :(
<fazo>
voxelot: I see, so it's only useful if used from your gateway
notduncansmith has joined #ipfs
notduncansmith has quit [Read error: Connection reset by peer]
<voxelot>
fazo: atm yes, just putting it out there to see if anyone has ideas
<fazo>
voxelot: by the way you can use ipfs.id from the js api to check if the ID is yours, so you can give an error message if it's used from a different gateway or without one :)
<voxelot>
really a browser imp of ipfs will fix all of this.. when we get there
<fazo>
voxelot: I have an idea about how to service discovery but it requires changes to how "name publish" works in go-ipfs
<noffle>
it's going to be amazing once we have a full native js browser impl :D
<voxelot>
yup! back to work on the node impl of ipfs for me haha, that was just a fun little experiment to see what cors would let me do
<fazo>
atm "ipfs name publish" replaces the published hash with the given one. My idea is to instead do "ipns name publish <hash> <name>" then a folder is created containing every <name> published linking to its <hash>
<fazo>
when you remove a published name, it just publishes a new ipfs hash of the same folder as before except without the removed link
<fazo>
this way you can have a file/folder for every service, then you have a daemon on your node that checks all the ipns hashes it finds and updates the list of messages if it finds some
<fazo>
actually you could have the clients look for messages using the js http api wrapper
<fazo>
the problem is posting them without the publishing interface I described before
<fazo>
if it was there, you could have your service working fine even after shutting down your computer forever, as long as someone has the files of the application
<voxelot>
publishing is also slow atm, doesn't make for the best database just yet, but a use case i'm really interested in
<voxelot>
ipdb?
<fazo>
ipdb is already possible
<fazo>
you just need the machine publishing it over ipns to run an extra daemon
<fazo>
actually yesterday I wrote a directory synchronization daemon that uses ipns+ipfs
<M-amstocker>
im kind of confused about how a native browser implementation would work. I am under the impression that webrtc requires a third party server to coordinate connections, right?
devbug has quit [Ping timeout: 240 seconds]
<voxelot>
M-amstocker: yeah, we would have to run something like hybrid nodes that have the daemon but can also speak webrtc for the browsers
<fazo>
M-amstocker: you could have an hardcoded bootstrap server list in the .js and then make all the implementations support talking via webrtc.
<rschulman>
fazo: I think it was you yesterday mentioning NixOS in here so I want to thank you for wasting the next few days of my life while I learn a new distro.
<M-amstocker>
ah i see
<fazo>
rschulman: well, uhm, you're welcome I guess
<M-amstocker>
thats how webtorrent works right?
<M-amstocker>
hybrid nodes?
<rschulman>
fazo: Lol.
<voxelot>
yup
hellertime has quit [Ping timeout: 252 seconds]
<M-amstocker>
well we should get on that, stat.
wopi has quit [Read error: Connection reset by peer]
<M-amstocker>
and by we I mean someone who knows how to do that
od1n has quit [Quit: WeeChat 1.0.1]
<fazo>
we have go-ipfs and the js implementation. I don't think we need any more, maybe on mobile but running js stuff in native apps is becoming common so
<jbenet>
daviddias and i went through the ipfs-blob-store just now on an etherpad
<jbenet>
noffle: refresh if you loaded it more than 40s ago
<fazo>
voxelot: just realised we already have IPDB. my ipfs-sync daemon can act like it, except everyone can read
gues2647 has joined #ipfs
<noffle>
jbenet: I think you meant for 'quux' to come out of bar2 instead of baz?
<jbenet>
noffle: "bar2" and "baz" are links. yeah the "quux" link comes out of the third object.
<noffle>
oh, sorry, "the unnamed object bar2 points to" :)
<noffle>
my err
<jbenet>
(tricky detail!)
<noffle>
jbenet: this makes sense, at first glance. I'll think about this more deeply in a bit when I'm not at work
jamescarlyle has quit [Remote host closed the connection]
<jbenet>
sounds good, yeah just letting you know this was happening
<jbenet>
ideally whyrusleeping could make the "ipfs files" thing i wanted ;P ;P ;P so we could have a nice interface for this.
<noffle>
jbenet: wait, so why does 'foo' become 'foo2'? link names are independent of whatever they point to. or was this just to indicate that these are new hashes (since "world") invalidates the rest of the old dag's hashes?
gues2647 is now known as od1n
<whyrusleeping>
jbenet: you know how to write go too :P
<jbenet>
btw whyrusleeping we need a way for "ipfs cat" and the gateway to understand tar, like not be JUST unixfs, but rather "all the datastructures"
<daviddias>
noffle: it is to indicate that those objs will have new hashes because of the mlink updates
devbug has joined #ipfs
<noffle>
okay, good, just making sure I grok
<jbenet>
whyrusleeping: you make a valid point but i'm drowning in lots of things
<jbenet>
noffle: ahhhh right! we screwed that up. let me label the blocks.