notduncansmith has quit [Read error: Connection reset by peer]
Pyrotherm_ has quit [Ping timeout: 240 seconds]
<achin>
the files sizes don't match
<achin>
that looks strange indeed
Pyrotherm__ has quit [Ping timeout: 264 seconds]
<achin>
i get the same thing
<achin>
(i reproduce what you see)
<amstocker>
yeah idk
akhavr1 has joined #ipfs
<amstocker>
but if I try the web player with the different hashes
<achin>
so if i had to guess, there is a different chunking between the two
<amstocker>
both versions work
akhavr has quit [Ping timeout: 244 seconds]
akhavr1 is now known as akhavr
<amstocker>
ah that would make sense
<achin>
if you "ipfs get QmP7zbzpmYmMhxLQcYLG9rN53YENYS1HLLzJwD7TC9XcvM" you'll find that the files are infactd identical
<amstocker>
yeah
<amstocker>
exactly
<amstocker>
the example video is a really old hash so that would make sense
<amstocker>
if was from a much older version
<whyrusleeping>
akhavr: ping.
<achin>
yeah, in QmSGkFRyFWS45EFCqD3gRXyV9YpceJynj2u9Nm3RyVCMxW the file is chunked into 3 parts, but in the other it's like 170 parts
<achin>
(comparing the output of 'ipfs object get' for Qmaf2XkCq2em5GqjQJRvXNvFDtmsa5XuxDd91eyGfQo9L1 and QmSGkFRyFWS45EFCqD3gRXyV9YpceJynj2u9Nm3RyVCMxW)
<whyrusleeping>
amstocker: correct, it was chunked and layed out with an old algo
akhavr has quit [Ping timeout: 250 seconds]
akhavr has joined #ipfs
<amstocker>
ok I'm just trying to write this multipart file streaming uploader for python and I thought I was going crazy
<amstocker>
thanks
<achin>
mystery solved; /me -> zZz
akhavr1 has joined #ipfs
akhavr has quit [Ping timeout: 250 seconds]
akhavr1 is now known as akhavr
akhavr1 has joined #ipfs
akhavr has quit [Ping timeout: 240 seconds]
akhavr1 is now known as akhavr
notduncansmith has joined #ipfs
notduncansmith has quit [Read error: Connection reset by peer]
akhavr1 has joined #ipfs
akhavr has quit [Ping timeout: 265 seconds]
akhavr has joined #ipfs
akhavr1 has quit [Ping timeout: 246 seconds]
akhavr1 has joined #ipfs
akhavr has quit [Ping timeout: 244 seconds]
akhavr has joined #ipfs
Guest73396 has quit [Ping timeout: 255 seconds]
akhavr1 has quit [Ping timeout: 240 seconds]
akhavr has quit [Ping timeout: 268 seconds]
akhavr has joined #ipfs
akhavr was kicked from #ipfs by whyrusleeping [please fix your irc client.]
notduncansmith has joined #ipfs
notduncansmith has quit [Read error: Connection reset by peer]
akhavr1 has joined #ipfs
akhavr1 has quit [Ping timeout: 260 seconds]
akhavr has joined #ipfs
voldial has joined #ipfs
akhavr has quit [Ping timeout: 240 seconds]
<whyrusleeping>
anyone have thoughts on user bans on irc? there are no temporary bans that i know of
<sonatagreen>
you could manually unban after a while
<whyrusleeping>
hrm... okay
<sonatagreen>
or nameban akhavr1 while allowing akhavr, perhaps
<clever>
that blocks both
<clever>
where can i find more information on the main protocol that ipfs uses?, ive tried reading the nodejs implementation but it only has the cleartext multiplexer, no sign of the encrypted one
<clever>
and i cant find the stream stuff in the go source
notduncansmith has joined #ipfs
notduncansmith has quit [Read error: Connection reset by peer]
<tsp>
I'm going to the logs in the topic, I can read the current day just fine. How do I go back a page?
<davidar>
afdudley0 (IRC): not yet, but it's been discussed
<whyrusleeping>
clever: the stream multiplexing doesnt live in the main go-ipfs codebase
<whyrusleeping>
its vendored in go-peerstream
<whyrusleeping>
the crypto stuff lives in p2p/crypto
<clever>
i see those in my checkout of the source, any tips on where the first 4 bytes comes from/gets parsed?, the connections seem to start with 00000004
<clever>
is that a handshake from the p2p/crypto code?
f[x] has joined #ipfs
<clever>
or the peerstream handshake right before it asks for a switch to crypto?
<whyrusleeping>
thats the msgio framing i beleive
* clever
reads github.com/jbenet/go-msgio
<clever>
dont see how its doing length prefixing or how it makes a code like 00000004
<clever>
hmmmm, is the lenght prefix including the length itself?
thomasre_ has joined #ipfs
<clever>
ah wait, i think WriteLen writes just the lenght number, and nothing else
<clever>
yeah, now its making more sense, WriteMsg does lenght + msg
<whyrusleeping>
clever: so yeah... in the current code, we have an accidental double layering
notduncansmith has joined #ipfs
notduncansmith has quit [Read error: Connection reset by peer]
<clever>
let me re-open wireshark, i think there is an extra flush making a mess of things
<whyrusleeping>
clever: dont spend too much time analyzing the current wire format, it changes a bunch in dev0.4.0
<clever>
i'm just interested in interfacing to the ipfs network without having to import the go code
<whyrusleeping>
clever: right, and more power to you
<whyrusleeping>
but i would try to interface with dev0.4.0 instead of 0.3.* as the code for 0.3.* is going to be ripped apart later
<whyrusleeping>
and you'll also be able to interop with the node-ipfs code
<clever>
yeah, i'll see if i can fire up a 0.4 node for testing
<whyrusleeping>
just want to make sure you dont waste any effort, because you doing that is incredibly valuable
<clever>
so far, all ive been able to do in the node implementation is open a tcp connection, it appears to entirely lack the crypto and current msgio stuff
<whyrusleeping>
it lacks msgio? thats weird...
<whyrusleeping>
i know that it leads with a 'multistream' header
<clever>
it may be that i just didnt know i had to stick msgio into the mix
Pyrotherm has quit [Quit: Leaving]
<whyrusleeping>
ah, maybe
<clever>
the multiplexer that i did see was purely ascii
<clever>
so something was clearly wrong
<clever>
and wireshark showed binary right from the start
<clever>
nodejs used \n to seperate packets
<whyrusleeping>
yeah, the node impl doesnt have crypto yet
<whyrusleeping>
but if you disable crypto in the go impl, they can interop just fine
<clever>
ah, so a single node cant handle both cleartext and crypted sessions?
<whyrusleeping>
and no, its either crypto or no, and they cant interop (by design)
<clever>
ah, so anybody running with crypto off would be on a fork of the network
<clever>
and would only carry over whatever files they had at the time
<whyrusleeping>
yeap
<whyrusleeping>
so, the layering is [crypto] -> multistream -> (stream muxer you chose)
<whyrusleeping>
then you can open new streams using that stream muxer, and each new stream will hit multistream again (to specify which subsystem youre talking to, dht, bitswap, diagnostics)
<whyrusleeping>
and then youre sending length delimited protobufs over those streams to your chosen service
<clever>
last time i used protobuf for a wire protocol, i had a small lenght prefix for the header, that header then contained the methodid, and argument size
<clever>
i had loosely based it on what i saw with diablo 3 when i was trying to reverse engineer it
<clever>
and git cant seem to find the dev0.4.0 branch, its just absent in 'git branch -a'
sbruce has quit [Read error: Connection reset by peer]
<clever>
i do see the branches on a fresh clone, somethings broken on my end
sbruce has joined #ipfs
<whyrusleeping>
do a fetch?
<whyrusleeping>
your repo might be older than the branch
<clever>
i did both fetch and pull, no new branches
<whyrusleeping>
>.>
<whyrusleeping>
git man
<clever>
yeah, it can be weird sometimes
<whyrusleeping>
git and i have our bad days
notduncansmith has joined #ipfs
notduncansmith has quit [Read error: Connection reset by peer]
<clever>
whyrusleeping: is the new 0.4.0 branch compatible with ~/.ipfs/ ?
<whyrusleeping>
clever: nope, you'll have to back it up
<clever>
ah, or just change HOME
<whyrusleeping>
we havent written the migration code yet
<amstocker>
why wont travis ci update my build badge D:
<amstocker>
the red "failing" is torture
<whyrusleeping>
lol, travis is weird
<whyrusleeping>
circleCI is even weirder
<amstocker>
it got stuck on a PR
<amstocker>
or something
Guest73396 has joined #ipfs
* zignig
is having fun putting rkt .aci files into ipfs
<zignig>
whyrusleeping: will the migration be in place ?
<whyrusleeping>
it will be when we ship 0.4.0, yeah
<whyrusleeping>
we're hoping to make it automatic by that time
<zignig>
some people ( cough davidar ) has some big data.
<zignig>
i'm looking for a way to specify the gateway setting on a fresh init.
<zignig>
im doing an ipfs rocket with ipfs daemon --init , but need to set the gateway to 0.0.0.0:8080 rather than 127.0.0.1
<clever>
daemon.go:14:2: cannot find package "github.com/ipfs/go-ipfs/Godeps/_workspace/src/github.com/codahale/metrics/runtime" in any of:
<clever>
what was the process to populate these paths?, it doesnt seem to be a git submodule
qgnox has quit [Quit: WeeChat 1.3]
<whyrusleeping>
clever: where is your repo?
<whyrusleeping>
to build correctly it needs to be in the right place in your GOPATH
<clever>
~/builds/go-ipfs4
<whyrusleeping>
see the contribute.md file
<clever>
404, file not found
<whyrusleeping>
zignig: you can pass it some parameters to change that I beleive
<whyrusleeping>
we might do that in some tests
notduncansmith has joined #ipfs
<clever>
there is no contribute.md in the root of go-ipfs
notduncansmith has quit [Read error: Connection reset by peer]
<clever>
whyrusleeping: should GOPATH be set to the path of the go binary, or to ~/builds/go-ipfs4 ?
<zignig>
whyrusleeping: sounds hopeful, example ? , or pointer to code ?
<clever>
go install: no install location for directory /home/clever/builds/go-ipfs4 outside GOPATH
<clever>
oh, contribute.md is missing on the dev0.4.0 branch!!
<whyrusleeping>
ooooh... yeah
<whyrusleeping>
i havent rebased dev0.4.0 since adding that file
<whyrusleeping>
zignig: let me look (scatterbrained right now, may take me a minute)
<clever>
Clone ipfs into the path $GOPATH/src/github.com/ipfs/go-ipfs
<clever>
ah, thats the key step i think i'm missing
<zignig>
no need to look , it's not pressing....
<davidar>
zignig (IRC): somebody mentioned the bigness of my data?
<clever>
yep, now it builds, surprisingly fast too
<zignig>
my thinkings with service discovery and name convergence have though....
<zignig>
davidar: multivac was mumbling somthing about that.
<clever>
seems ipfs is having a brainfart moment
<clever>
Error: Unknown Command "init"\nDid you mean this?\n init
kyledrake has quit [Ping timeout: 240 seconds]
<davidar>
whyrusleeping (IRC): oh, will all the archives have to be migrated for 0.4?
<davidar>
Or is it just in place migration
richardlitt has quit [Ping timeout: 246 seconds]
ehd has quit [Ping timeout: 264 seconds]
<clever>
whyrusleeping: the help in dev0.4.0 seems broken, you need --init when it says to use init
kyledrake has joined #ipfs
richardlitt has joined #ipfs
<whyrusleeping>
davidar: you'll have to run the migration on them, but i dont think the data will have to be migrated
ehd has joined #ipfs
<whyrusleeping>
clever: no? you should just be able to run 'ipfs init'
notduncansmith has joined #ipfs
notduncansmith has quit [Read error: Connection reset by peer]
Guest73396 has quit [Ping timeout: 255 seconds]
<clever>
whyrusleeping: strange, because 'ipfs daemon init' says init is an invalid command
<clever>
then says 'did you mean init'
<whyrusleeping>
yeah
<clever>
its both saying init is invalid and valid at the same time
<whyrusleeping>
because the command is 'ipfs init'
<clever>
ah
<clever>
though daemon --init also worked
<whyrusleeping>
right, that initializes and runs the daemon in one step
<whyrusleeping>
for things like docker images where thats useful
<clever>
ah
<zignig>
and configures the gateway..
* zignig
pokes whyrusleeping
<zignig>
;P
* whyrusleeping
groans
<whyrusleeping>
i cant find it
<whyrusleeping>
apparently the magic '--config' flag i thought we had isnt real
<whyrusleeping>
must have been a dream i had
<whyrusleeping>
i thought that we had this flag that you could pass arbitrary json to like that to be applied to the config during init
<clever>
ive been there, i couldnt find the code on ANY system, in any git repo
<clever>
but i was able to write the entire thing from memory
<whyrusleeping>
right? i know this feature!
<whyrusleeping>
i just typed out what i thought was valid syntax
<clever>
the bootstrap nodes form PR 1381 also seem to be down now, but it had no trouble finding peers on the LAN, so i can work with this
<whyrusleeping>
yay mdns!
<clever>
mdns has both helped and hurt things here
<whyrusleeping>
hurt?
<clever>
i once tried to use the mdns built into android from an app, the entire phone crashed
<whyrusleeping>
o.o
<clever>
and when distcc advertises itself over mdns+ipv6, the : in the ip confuses the distcc client
Tv` has quit [Quit: Connection closed for inactivity]
<clever>
the only stable way to use mdns on android is to embed the entire mdns client into your app, which bloats it and causes longer startup, because it cant just use stuff the OS heard while your app was off
<clever>
no avahi-daemon to cache stuff for you
<clever>
yeah, i can see the lenght prefixed stuff on wireshark, and its more clear then the old branch
<clever>
0000 017c, followed by 17c bytes of data, including cipher suites
notduncansmith has joined #ipfs
notduncansmith has quit [Read error: Connection reset by peer]
<nikogonzo>
i need help finding content to host. Is there some kind of directory I can use to seed myself?
<clever>
whyrusleeping: how do you enable .Debugf?
amstocker has joined #ipfs
notduncansmith has joined #ipfs
notduncansmith has quit [Read error: Connection reset by peer]
<clever>
looks like it relies on the argument sent to the Logger constructor
wemeetagain_ has quit [Ping timeout: 240 seconds]
rendar has joined #ipfs
wemeetagain_ has joined #ipfs
<kyledrake>
whyrusleeping are there regular meetings? I feel a little out of tune with what's going on with the development. Trying to figure out the best way to get the pulse
Guest73396 has joined #ipfs
notduncansmith has joined #ipfs
notduncansmith has quit [Read error: Connection reset by peer]
ion has quit [Ping timeout: 244 seconds]
gilgongo has joined #ipfs
ion has joined #ipfs
<davidar>
kyledrake (IRC): the spring meetings are pretty regular
<davidar>
s/spring/sprint
<multivac>
davidar meant to say: kyledrake (IRC): the sprint meetings are pretty regular
<davidar>
kyledrake (IRC): and the end of week sprint updates give a good summary of what people have been doing
f[x] has quit [Ping timeout: 246 seconds]
Stard0g101 has joined #ipfs
notduncansmith has joined #ipfs
notduncansmith has quit [Read error: Connection reset by peer]
<clever>
test?
dysbulic has quit [Ping timeout: 246 seconds]
<clever>
yeah, back online
thomasre_ has quit []
<ipfsbot>
[go-ipfs] jbenet force-pushed fix/too-many-fd from 5e5967e to 1c2223d: http://git.io/vcFSw
notduncansmith has quit [Read error: Connection reset by peer]
<davidar>
jbenet, think they'd go for it?
hugs-bison has quit [Ping timeout: 240 seconds]
<ipfsbot>
[go-ipfs] jbenet pushed 2 new commits to master: http://git.io/vCJpG
<ipfsbot>
go-ipfs/master 6ae0973 rht: Add context to coreunix.Cat argument...
<ipfsbot>
go-ipfs/master b415e06 Juan Benet: Merge pull request #1797 from rht/fix/cat...
notduncansmith has joined #ipfs
notduncansmith has quit [Read error: Connection reset by peer]
hugs-bison has joined #ipfs
Guest73396 has joined #ipfs
voxelot has quit [Ping timeout: 260 seconds]
notduncansmith has joined #ipfs
notduncansmith has quit [Read error: Connection reset by peer]
clever_ is now known as clever
Guest73396_a has joined #ipfs
Stard0g101 has quit [Quit: Leaving.]
Guest73396 has quit [Ping timeout: 268 seconds]
notduncansmith has joined #ipfs
notduncansmith has quit [Read error: Connection reset by peer]
ei-slackbot-ipfs has quit [Remote host closed the connection]
ei-slackbot-ipfs has joined #ipfs
Stard0g101 has joined #ipfs
goregrin1 is now known as goregrind
Stard0g1011 has joined #ipfs
Stard0g101 has quit [Read error: Connection reset by peer]
notduncansmith has joined #ipfs
notduncansmith has quit [Read error: Connection reset by peer]
Guest73396_a has quit [Ping timeout: 255 seconds]
hellertime has joined #ipfs
NeoTeo has quit [Quit: My Mac has gone to sleep. ZZZzzz…]
notduncansmith has joined #ipfs
notduncansmith has quit [Read error: Connection reset by peer]
NeoTeo has joined #ipfs
<shyamsk>
hey are there any simple backend application running on IPFS whose code is open-sourced? maybe on Github? (I know I keep repeating myself)
<ion>
What do you mean by backend application?
<shyamsk>
say something in Java running on IPFS. but not locally, rather distributed.
<shyamsk>
cos I saw the examples for simple front end applications, and wondered how their APIs (if any) would be done.
<shyamsk>
also, unrelated to the above, how would DMCAs be handled? cos iirc this was permanent unless no one was accessing it. Is there some documentation on this?
<ion>
At the moment, go-ipfs only provides data storage and distribution. In the future, it is going to have things like pubsub which will let you implement more things on top of IPFS AFAIK.
<Sargun>
DMCAs are a problem as well, because IPFS allows you to determine who first published a block.
<shyamsk>
Sargun: http://alexandria.media/#/media also seems to be the Alexandria site. Not sure which one is legit or whether both are.
<Bat`O>
Sargun: what tell you that ?
<Bat`O>
Sargun: the original sharer
bedeho has quit [Ping timeout: 244 seconds]
<Sargun>
Bat`O: If you monitor the DHT at enough points, you can sniff that info out
<Bat`O>
that would be hard to do at large scale, no ?
<Sargun>
Dude
<shyamsk>
Sargun: I think there is a command for that too... well piping together some commands would allow you to find it out. And I think it was mentioned in here, but I can't seem to find it
<Sargun>
shyamsk: findprovs - right
<Sargun>
currently doesn't have the "earliest" provider
<Sargun>
shyamsk: but, you can easily find out who has it pinned
notduncansmith has joined #ipfs
notduncansmith has quit [Read error: Connection reset by peer]
edt_ has joined #ipfs
ed_t has quit [Ping timeout: 240 seconds]
tsenart has joined #ipfs
notduncansmith has joined #ipfs
notduncansmith has quit [Read error: Connection reset by peer]
<ion>
Someone could distribute encrypted copies of Big Buck Bunny. You’ll just need to have a legitimate copy of the latest Hollywood feature film and xor it with the file you downloaded to get a significant part of Big Buck Bunny.mp4.
tsenart_ has joined #ipfs
tsenart has quit [Read error: Connection reset by peer]
<shyamsk>
\DDOS on the bootstrap node? thats a central point of failure, no?
<ion>
You’ll need to get just one connection to a peer in the network and you’ll bootstrap from that. Know a friend on IPFS who’s not under DoS?
<ion>
ipfs swarm connect <address>... - Open connection to a given address
notduncansmith has joined #ipfs
notduncansmith has quit [Read error: Connection reset by peer]
<ion>
go-ipfs will also find peers on the same LAN without DHT. And one could implement other ways of finding peers.
tsenart_ has quit [Read error: Connection reset by peer]
tsenart has joined #ipfs
jimbeam has joined #ipfs
tsenart has quit [Read error: Connection reset by peer]
tsenart has joined #ipfs
<shyamsk>
oh cool
<ion>
Just to pull an idea out of my... hat, have it advertise your ID on your favorite social network or chat service and listen to advertisements by your friends. :-P
<shyamsk>
:D
jimbeam has quit [Ping timeout: 272 seconds]
tsenart has quit [Read error: Connection reset by peer]
tsenart_ has joined #ipfs
captain_morgan has quit [Ping timeout: 268 seconds]
konubinix has quit [Read error: Connection reset by peer]
konubinix has joined #ipfs
notduncansmith has joined #ipfs
notduncansmith has quit [Read error: Connection reset by peer]
zz_r04r is now known as r04r
tsenart_ has quit [Read error: Connection reset by peer]
tsenart has joined #ipfs
<davidar>
ion (IRC): I think lgierth is also working on automatic peer discovery over hyperboria
<vanila>
are there any interactive sites with ipfs yet?
<vanila>
what sort of things is ipfs being used for? I heard about the neocities already
mildred has quit [Quit: Leaving.]
<achin>
someone created a neat app for searching some body of law, but i can't find the link anymore
<voxelot>
i've basically built a slow (needs ~ 12 seconds for posts to be indexed in the ethereum blockchain)4chan this week, no mods and no way to delete any posts... not sure i should release it
<__uguu__>
is it normal for ipfs to like sending loads of short tcp segments?
<vvvvvvvvvvvvvvvv>
i want just see world statics
sonatagreen has joined #ipfs
samiswellcool has joined #ipfs
Encrypt has joined #ipfs
<whyrusleeping>
__uguu__: yeah... its going to be better in 0.4.0
<whyrusleeping>
theres some weird little bugs in the protocol that we noticed and fixed
<__uguu__>
sweet
Spinnaker has quit [Ping timeout: 256 seconds]
Spinnaker has joined #ipfs
<shyamsk>
achin: indeed. seems too painful. What I was essentially asking is something that is one-way. Say allow outside access from within, but not the other way around
<shyamsk>
think of some company intranets (where they block facebook, twitter) but allow access to their own intranet sites and the rest of the internet
<shyamsk>
guessing a firewall b/w intranet and the rest would be the solution. or something similar
<achin>
i think you are right
<achin>
a company who wants to run something like IPFS internally will not likely be comfortable in trusting the implementation to not dial outside nodes. so a firewall would be the only solution
f[x] has joined #ipfs
<shyamsk>
why choose Go to develop IPFS? (I have no idea about Golang)
<shyamsk>
there are other language APIs, but Go seems to be the most actively developed
<mhhf>
does ipfs make some compression under the hood? if i push a lot of txt files with slightly different content will my storage size grow linear with the amount of files?
<achin>
at the moment, i do not believe there is any compression. in the worst case, yes your storage will grow linearly with the total size of the files you add
<achin>
but ipfs can be smart about how it chunks your files
<achin>
in todays version of ipfs, i'm not sure if it implemenets any clever rolling hash or anything like that. if not, i am sure it will in the future
<shyamsk>
unless their content is the same, then their hash will be the same, so point to the same thing
<achin>
of course. but the question was about text files with slightly different content
<mhhf>
I'm wondering how one would go for writing a git like vcs. Similar to git: linked list of diffs to previous versions. Or to full states of that file.
<achin>
maybe someone could write a tool that will be able to download a tree of files and do a better job about dedupping similar content
<whyrusleeping>
achin: we have a clever rolling hash, but its not the default
<achin>
ah, do you have something special to the --chunker arg ?
<whyrusleeping>
shyamsk: we chose go because its a great language for building systems in and it prevents entire classes of bugs that other languages have to deal with
<whyrusleeping>
has great tooling, and awesome support for concurrency.
unjust has quit [Ping timeout: 265 seconds]
mhhf has left #ipfs [#ipfs]
__uguu__ has quit [Quit: WeeChat 1.3]
NeoTeo has joined #ipfs
<ion>
achin: ipfs add -s rabin seems to work. I was not aware of that.
<ion>
whyrusleeping: When will it be the default?
<whyrusleeping>
ion: once enough of you guys try it out and tell us you like it
<ion>
Yeah, I didn’t even know we already have it. :-P
<whyrusleeping>
yeahhhh, we should write more blog posts
<whyrusleeping>
actually, i'm waiting for CR. i might just write one now
<ion>
What’s CR?
therealplato has quit [Quit: Leaving.]
<achin>
Code Review?
<ion>
ah
<achin>
in addition to blagposts, consider documenting this option in "ipfs add --help". i new about --chunker, but i didn't know how to use it
<achin>
s/new/knew/
<multivac>
achin meant to say: in addition to blagposts, consider documenting this option in "ipfs add --help". i knew about --chunker, but i didn't know how to use it
<ion>
Thanks, multivac
<M-rschulman1>
blag more!
<M-rschulman1>
(also hi everyone)
<ion>
hi
<M-rschulman1>
pretty handy there, multivac
<achin>
s/handy/noisy/
<achin>
neat, he's smart enough to not say anything if the regex doesn't match at all
<ion>
achin: s/.*/I have a banana/
<ipfsbot>
[go-ipfs] whyrusleeping pushed 1 new commit to fix/too-many-fd: http://git.io/vCkPA
<ipfsbot>
go-ipfs/fix/too-many-fd f1f068d Jeromy Johnson: fix too many FD error on osx
<achin>
s/.*/i have a potato/
<ion>
Hm. Perhaps it filters .*
<ion>
achin: s/potato/banana/
<sonatagreen>
or maybe it's interpreting the . literally? there's different flavors of regex
<ion>
It used to get triggered from that.
<sonatagreen>
s/*/I like potatoes/
<ipfsbot>
[go-ipfs] whyrusleeping force-pushed fix/too-many-fd from f1f068d to c1c9a74: http://git.io/vcFSw
<ipfsbot>
go-ipfs/fix/too-many-fd c1c9a74 Jeromy Johnson: fix too many FD error on osx...
<sonatagreen>
I do not understand how this works at all.
<sonatagreen>
s/not/not really/
<multivac>
sonatagreen meant to say: I do not really understand how this works at all.
<sonatagreen>
ok, that worked
hellertime has quit [Quit: Leaving.]
<sonatagreen>
foo bar foo
<sonatagreen>
s/foo$/xyzzy/
<sonatagreen>
s/foo/xyzzy/
<multivac>
sonatagreen meant to say: xyzzy bar foo
<spikebike>
heh, sha1: This is the first practical break of the full SHA-1, reaching all 80 out of 80 steps, while only 10 days of computation on a 64 GPU cluster were necessary to perform the attack.
<sonatagreen>
looks like it has to be literal, i bet it would match .* as an actual string
<sonatagreen>
s/.*/like this/
<multivac>
sonatagreen meant to say: looks like it has to be literal, i bet it would match like this as an actual string
<achin>
strangebot is strange
<ion>
whyrusleeping: The go equivalent of getrlimit(RLIMIT_NOFILE, _) can probably be used to be used to get the actual FD limit instead of a OS string comparison.
kpcyrd has joined #ipfs
<kpcyrd>
I've tried to open an /ipns/ link on my :8080 gateway but it doesn't resolve. ipfs name resolve works. any pointers?
<achin>
kpcyrd: what's the link, and does it resolve on the public ipfs gateways?
<kpcyrd>
achin: I've published it on my local machine
bedeho has joined #ipfs
<ion>
kpcyrd: Which version of go-ipfs are you running?
reit has quit [Ping timeout: 272 seconds]
<achin>
once you've published it, as long as your daemon is online, anyone can resolve the name (assuming they know your peerID)
<kpcyrd>
oh, it just took a while
<kpcyrd>
retested it, works now
<achin>
cool
<kpcyrd>
nvm
<achin>
though if this ipns name was your own peerID, i'm surprised it timed out at all
dignifiedquire has joined #ipfs
<whyrusleeping>
ion: i try to avoid ever touching syscall, none of the methods in that package are guaranteed to behave the same way across systems
simonv3 has joined #ipfs
<whyrusleeping>
or even exist across systems
<whyrusleeping>
the second you start touching syscall, you need a separate file for each possible system, and build directives, and all that fun hackery
fleeky has quit [Remote host closed the connection]
fleeky has joined #ipfs
f[x] has quit [Ping timeout: 252 seconds]
<ipfsbot>
[go-ipfs] whyrusleeping force-pushed real-trailers from c59631b to be086fa: http://git.io/vZ2dl
<ipfsbot>
go-ipfs/real-trailers be086fa Jeromy: use go1.5 for circleCI (snippet from circle support)...
Pandora_ has joined #ipfs
atrapado has joined #ipfs
<kpcyrd>
peer id means the site is offline when I'm offline?
<achin>
your peerID is the name of your ipfs node
<achin>
(the "ID" field from the output of "ipfs id")
sonatagreen has quit [Ping timeout: 272 seconds]
rendar has quit [Ping timeout: 252 seconds]
<kpcyrd>
is there a way to have multiple peerIDs if I want to publish multiple names?
mildred has joined #ipfs
<ion>
kpcyrd: Not yet. That’s planned.
<kpcyrd>
when resolving /ipns/, do I create a connection to that peer and ask for the value or is it cached by other peers? If the later, how do updates work?
rendar has joined #ipfs
<ion>
IPNS records are stored in the DHT for 24 hours (by default) and your daemon will refresh the record periodically.
Encrypt has quit [Quit: Quitte]
<achin>
it seems like ~/.ipfs/config shouldn't be group-readable, since it contains the node's private key
<ion>
Updates work by just putting a new value for the key. In the latest version of go-ipfs they contain a sequence number so peers will be able to select the newest one they see.
vvvvvvvvvvvvvvvv has quit [Ping timeout: 240 seconds]
<kpcyrd>
what happens if peers start to refuse updates and serve the old value?
chriscool has joined #ipfs
<achin>
why would peers do that?
vvvvvvvvvvvvvvvv has joined #ipfs
tsenart has quit [Quit: My Mac has gone to sleep. ZZZzzz…]
gggthgr has joined #ipfs
vvvvvvvvvvvvvvvv has quit [Read error: Connection reset by peer]
<achin>
(i'm not familiar enough with the internals of ipfs to know what might happen if network members start to misbehave)
<kpcyrd>
I'm condering to replace the deployment of a static website with ipfs, so the webserver proxies to ipfs and I push updates with ipfs name publish.
f[x] has joined #ipfs
<kpcyrd>
When I go offline, the webserver should have cached these files so the site is still up
<kpcyrd>
it's possible I'm not online for some days so I was wondering if it's possible to "pin" the ipns value on a server is it's still possible to look it up.
<whyrusleeping>
when you try to resolve an ipns name, you ask the network for the record
<whyrusleeping>
you receive multiple records back from that call
<whyrusleeping>
from those, you select the most recent, based on a sequence number
<kpcyrd>
But I wasn't sure what happens if somebody does the same for my site, but doesn't update
sonatagreen has joined #ipfs
<whyrusleeping>
if anyone sends you an older record, you will attempt to correct them by sending them the 'best' record
<whyrusleeping>
thus keeping the network more primed with the latest updates
<sonatagreen>
newer records point to older records to prove their newness, i hope?
<kpcyrd>
Is proxying to /ipns/ the recommended way to mirror a website?
<whyrusleeping>
and then theres a trick that combines that with an A record to make it even nicer
<whyrusleeping>
check out the dns records for ipfs.io
<whyrusleeping>
and also for ipfs.git.sexy
<kpcyrd>
I did. Assuming the client doesn't have ipfs installed, the link still works because of the A record. Is the configuration for the daemon behind :80 public?
<kpcyrd>
that seems to be the setup I'm looking for
<whyrusleeping>
its public, we have ansible scripts to set it all up here:
captain_morgan has quit [Ping timeout: 246 seconds]
NeoTeo has quit [Client Quit]
<ion>
whyrusleeping: It would be cool to be able to run a public gateway with a setting that makes it only serve objects it has pinned, and instead of 403ing for the rest, do a temporary redirect to the same object on the ipfs.io gateway.
pfraze has quit [Remote host closed the connection]
<lgierth>
if you don't want to set up cjdns and add your ipv6 to the allowlist, you can use any *.i.ipfs.io host as an ssh proxy: ssh -L 8080:metrics.i.ipfs.io:80 root@earth.i.ipfs.io
<achin>
needs more jellyfish
<lgierth>
that raintank link is just a snapshot shared directly from within grafana
<lgierth>
davidar: cryptix_: rht__: you too ^
<ion>
I see a pattern with the underscores.
<lgierth>
can build your own dashboards too, and the prometheus console is at /prometheus
<lgierth>
heh
therealplato has joined #ipfs
<richardlitt>
Heyo. So... almost no one added their to dos to the etherpad, and the etherpad has now expired. noffle, jbenet, amstocker, mappum, davidar, daviddias, rht__, whyrusleeping, please add your To Dos for this week to https://github.com/ipfs/pm/issues/36!!!
<whyrusleeping>
richardlitt: aye aye captain!
<mappum>
the old etherpad link was giving a weird readonly mode
<mappum>
ok, adding to the new one
<richardlitt>
I don't think anyone else was on this sync? lgierth is off this week, dignifiedquire already posted
<richardlitt>
mappum thanks!
<richardlitt>
whyrusleeping thanks!
<M-amstocker>
will do
<richardlitt>
M-amstocker: thanks!
<mappum>
richardlitt: thank *you*
<richardlitt>
I will be following up in a few hours. :P
<lgierth>
richardlitt: yep i'm out this week and next, the telemetry ^ was recreational coding
<lgierth>
ah wait i have one thing left
<richardlitt>
lgierth: if you have anything, add it.
<M-amstocker>
i posted mine in the github issue
<richardlitt>
Cool.
<richardlitt>
Sorry for being late with the reminder, was AFK past few days
<M-amstocker>
you were climbing a mountain or something right?
vanila has quit [Quit: Leaving]
pfraze has joined #ipfs
gilgongo has joined #ipfs
<richardlitt>
M-amstocker: Yep. Hiked Katahdin, highest peak in Maine. Was accepting PRs via phone on the drive back. :P
<mappum>
richardlitt: very cool, what's the elevation?
<mmuller>
richardlitt: awesome. did you hike the knife's edge?
<achin>
richardlitt: \o/
gamemanj has quit [Ping timeout: 246 seconds]
<richardlitt>
5200 feet. Too windy for Knife's Edge, but still got in 4,100 ft of elevation over our 10.5 mile hike. So sore right now. :P
TheWhisper has joined #ipfs
<richardlitt>
That's my 8th state I've gone to the high point of. Only got my second a month ago, so doing pretty good. :)
TheWhisper is now known as ]
] is now known as TheWhisper
<achin>
come to rhodeisland, it'll be a lot easier than maine :)
<ion>
I’m not sure ease is on the top of his priority list.
<mappum>
richardlitt: you'll have to work your way up for washington, Mt Rainier is 14k feet
<whyrusleeping>
ranier is one hell of a hike
<whyrusleeping>
although in the ~10 mile range, mt baker has a lot of reallllly fun hikes
<whyrusleeping>
did one this summer that was 6 miles up to a glacial lake
<achin>
IMPFS -- Inter Mountain Peak File System
Whispery has joined #ipfs
mildred has quit [Ping timeout: 246 seconds]
TheWhisper has quit [Ping timeout: 255 seconds]
gggthgr has quit [Ping timeout: 244 seconds]
Eudaimonstro has quit [Read error: Connection reset by peer]
Eudaimonstro has joined #ipfs
Whispery is now known as TheWhisper
Encrypt has quit [Quit: Quitte]
<richardlitt>
achin: Just need to find a car. Hoping to do it in the next few weeks, along with CT and NY. mappum, whyrusleeping - Rainier will be there. Denali is the big one.
atrapado has quit [Quit: Leaving]
<richardlitt>
noffle, jbenet, davidar, daviddias, rht__ --- still need your additions to github.com/ipfs/pm/issues/36
<achin>
(lol, the RI highest peak is a "hill")
captain_morgan has quit [Ping timeout: 244 seconds]
HostFat has joined #ipfs
coffeecup has quit [Quit: leaving]
gilgongo has quit [Ping timeout: 256 seconds]
NeoTeo has quit [Quit: My Mac has gone to sleep. ZZZzzz…]
captain_morgan has joined #ipfs
Spinnaker has quit [Quit: sinked]
pfraze has quit [Remote host closed the connection]
pfraze has joined #ipfs
rendar has quit [Quit: std::lower_bound + std::less_equal *works* with a vector without duplicates!]
rendar has joined #ipfs
<ipfsbot>
[go-ipfs] whyrusleeping created update/msgio (+1 new commit): http://git.io/vCLL5
<Sargun>
How does this work: Anyone can publish an object by simply adding its key to the DHT, adding them- selves as a peer, and giving other users the object’s path.
<whyrusleeping>
Sargun: yeah?
Spinnaker has joined #ipfs
<Sargun>
So -- when I want to say I have a block, do I just write my peer ID to a set?
<whyrusleeping>
you add an object to your blockstore, and then advertise you have it to the dht
<Sargun>
Where that set is in the DHT of object_hash -> {peer_id}
<whyrusleeping>
yeah, that set is the 'providers set'
<Sargun>
Doesn't that portion of the DHT become heavily loaded if that object is access often? In addition, what prevents a malicious actor from inserting a bunch of fake providers and causing the set to grow too large?
<Sargun>
or evicting real providers?
<Sargun>
Or is the public key of the peer a form of "security"
<Sargun>
-- where we can use that for reputation management
rendar has quit [Quit: std::lower_bound + std::less_equal *works* with a vector without duplicates!]
devbug has quit [Ping timeout: 256 seconds]
groxx has joined #ipfs
<whyrusleeping>
yeah... right now fake provides is an issue
<whyrusleeping>
you can pretend you provide something
<whyrusleeping>
but you cant pretend someone else has something (so no ddos attacks like that)
<achin>
just regular DOS :)
<whyrusleeping>
lol
<whyrusleeping>
but yeah, a reputation system is probably going to be needed at some point
voxelot has quit [Ping timeout: 246 seconds]
voxelot has joined #ipfs
voxelot has quit [Changing host]
voxelot has joined #ipfs
sonatagreen has joined #ipfs
hummus has quit [Read error: Connection reset by peer]
<ion>
How do other networks handle that? Say, the BitTorrent DHT.
<atgnag>
Can I know how big a site is before pinning it?
<achin>
yeah, try something like "ipfs object get <hash>"
<achin>
then add up the sizes of all the links. maybe there's an ipfs command that does this addition automatically?
<atgnag>
achin: Hmm… sounds like this requires some unix-fu.
<achin>
oh, lol
<achin>
ipfs object stat <hash>
<atgnag>
CumulativeSize: 128563414
<atgnag>
I see.
<atgnag>
Only wish it had an -h option.
<achin>
seems like a good project for someone wanting to dig into the go-ipfs source
pfraze has quit [Remote host closed the connection]
HostFat has quit [Read error: Connection reset by peer]