<jbenet>
yo mappum, i'm going to head out for the night. i'll be back tomorrow morning.
<ipfsbot>
[go-ipfs] jbenet force-pushed exposepb from 9cb498c to a33f9c8: http://git.io/vqSJJ
<ipfsbot>
go-ipfs/exposepb a33f9c8 Juan Batiz-Benet: expose internal/pb packages....
goopypanther1 has joined #ipfs
pfraze has quit [Remote host closed the connection]
luca has quit [Changing host]
luca has joined #ipfs
notduncansmith has joined #ipfs
notduncansmith has quit [Read error: Connection reset by peer]
<mappum>
jbenet: damn, sorry I missed you. Was just heading your way. whyrusleeping, daviddias if you guys are still around, want to go rock climbing at Seattle Bouldering Project?
<whyrusleeping>
mappum, I just left town. making dinner tonight
notduncansmith has joined #ipfs
notduncansmith has quit [Read error: Connection reset by peer]
notduncansmith has joined #ipfs
notduncansmith has quit [Read error: Connection reset by peer]
therealplato has quit [Ping timeout: 265 seconds]
notduncansmith has joined #ipfs
notduncansmith has quit [Read error: Connection reset by peer]
domanic has quit [Ping timeout: 240 seconds]
<daviddias>
mappum sorry, I go off the grid when I go out of a wifi bubble, we've arrived home a bit ago. Would tomorrow be good?
<daviddias>
totally want to do Rock climbing
domanic has joined #ipfs
notduncansmith has joined #ipfs
notduncansmith has quit [Read error: Connection reset by peer]
ruby32 has joined #ipfs
ruby32 has quit [Client Quit]
notduncansmith has joined #ipfs
notduncansmith has quit [Read error: Connection reset by peer]
patcon has joined #ipfs
notduncansmith has joined #ipfs
notduncansmith has quit [Read error: Connection reset by peer]
notduncansmith has joined #ipfs
notduncansmith has quit [Read error: Connection reset by peer]
notduncansmith has joined #ipfs
notduncansmith has quit [Read error: Connection reset by peer]
notduncansmith has joined #ipfs
notduncansmith has quit [Read error: Connection reset by peer]
notduncansmith has quit [Read error: Connection reset by peer]
notduncansmith has joined #ipfs
notduncansmith has quit [Read error: Connection reset by peer]
notduncansmith has joined #ipfs
notduncansmith has quit [Read error: Connection reset by peer]
goopypanther has quit [Ping timeout: 246 seconds]
<cryptix>
border: usually you use /ipns/$peerid and then publish entries under that
<cryptix>
but you can use the dns system to alias . you need to publish a DNS TXT record under your domain like this: dnslink=/ipfs/QmXX7YRpU7nNBKfw75VG7Y1c3GwpSAGHRev67XVPgZFv9R or dnslink=/ipns/QmbBHw1Xx9pUpAbrVZUKTPL5Rsph5Q9GQhRvcWVBPFgGtC
<cryptix>
than you can use /ipns/$domain instead of /ipns/$peerid
<cryptix>
we might change it to /dns/... to reduce confusion but i'm not sure on that one right now
<border>
idk i was just loking if it's possible to do stuff like /ipfs/foobar.com/foobarFolder/ instead of having a big hash as url
<border>
where should i set the DNS TXT record ?
notduncansmith has joined #ipfs
notduncansmith has quit [Read error: Connection reset by peer]
<lgierth>
cryptix: do you think we could do dns resolution over that?
reit has joined #ipfs
<lgierth>
i.e. a .ipfs tld or something similar
<lgierth>
$foo.ipfs => /ipns/$foo.ipfs
pfraze has joined #ipfs
<cryptix>
border: with your dns registrar :)
<cryptix>
border: there are other possible solutions we havnt implemented for named records but thats the one that is supported right now
<cryptix>
lgierth: not sure what you mean.. ipfs daemon also running as a dns server? oO
<border>
oh regular dns okok ,
<Blame>
Running a light DNS server on the ipfs daemon is not actually that crazy. (then just point your dns resolver to it). I've done that to create "fake" TLDs before
notduncansmith has joined #ipfs
notduncansmith has quit [Read error: Connection reset by peer]
<lgierth>
cryptix Blame: yeah a dns resolver
<lgierth>
Blame: what did you do?
<Blame>
I did a namecoin variant for a class project
<Blame>
I used a powerDNS backend interface so I could avoid implimenting a DNS server from scratch.
<Blame>
you could either have the resolver proxy dns reuests or set it to fail on non-supported tlds (ie not ".bit") then use a real DNS as the backup resolver in the computer's network settings.
MatrixBridge has quit [Read error: Connection reset by peer]
M-_mis has quit [Read error: Connection reset by peer]
<cryptix>
i like it too :) we just prototyped a dns server in go for another project at the uni - really not that hard (tm)
<lgierth>
maybe a little nsswitch script could already work
<Blame>
an idea I want to start planning a push for is: global multi-service DHT that would let you hinge a "sub-network" on it. Right now, we have a lot of DHT style distributed systems acting as backends for p2p services, and we could improve them all by unioning that backend. so DHT infrastructure as a service (DHTaaS)
<cryptix>
Blame: like it a lot - a lot of people get hung up on that while they just want basic dht functionality
<cryptix>
g2g now - helping ppl to help themselves - l8ters
<Blame>
Right now I'm taking a week (or two) of UrDHT devlopment to focus on my proposal, but In the long term I'd love more eyes and help on it.
<Blame>
s/of/off
atomotic has joined #ipfs
notduncansmith has joined #ipfs
notduncansmith has quit [Read error: Connection reset by peer]
<lgierth>
Blame: kadnode bootstraps off bittorrent
<lgierth>
cjdns has its own dht impl, which is kademlia-based too
<lgierth>
that's about 600 nodes right now i think
<cryptix>
friends and scuttlebutt also come to mind. lots of dhts that cant be too different in the end? </presumption>
<Blame>
nope, DHTs are actually pretty solidly different ways to phrasing the same solution (that is essentially my dissertation in a nutshell)
Xe has joined #ipfs
<Blame>
they are all using it just as a key-value store, (and maybe peer discovery). The nasty assumption to pull this off is that all those systems assume that if a server is a node in thier DHT it also supports all the other things they want to do with it. (the service specific protocols)
<lgierth>
yep at least cjdns assumes that
<lgierth>
bbiab
<Blame>
the fast/dirty fix is to just use the "global" DHT for network-seed discovery then run your own DHT.
<Blame>
I've got some ideas that need testing for a "service layer" approach where nodes maintain a peerlist that fully connects all peers that run a given service. (I could run a key-value store service, a PubSub service, and a cjdns node and be member to 3 "parallel" dhts)
<Blame>
so rather than say "find me the closest server to point x" you would say "find me the closest server to point x that supports y"
notduncansmith has joined #ipfs
notduncansmith has quit [Read error: Connection reset by peer]
notduncansmith has quit [Read error: Connection reset by peer]
domanic has joined #ipfs
tilgovi has joined #ipfs
<whyrusleeping>
g'marnin
<pjz>
Blame: global DHT service discovery
domanic has quit [Ping timeout: 252 seconds]
<whyrusleeping>
dht service discovery is pretty fun :)
<whyrusleeping>
(and not really all that difficult)
<pjz>
Blame: which will also solve the cluster-management service discovery issue as a side effect
<pjz>
clusters could join the DHT and define their own custom service and look for others who offer it (which would only be their own nodes)
border_ has joined #ipfs
border has quit [Ping timeout: 246 seconds]
notduncansmith has joined #ipfs
notduncansmith has quit [Read error: Connection reset by peer]
domanic has joined #ipfs
patcon has quit [Ping timeout: 246 seconds]
<Blame>
I just sat down and worked out an efficent way to do it. We need almost all nodes to support the basic key-value store service. Then we "discover" service specific peers using a similar approach to trackerless-peer-discovery for bittorent using mainline dht.
<Blame>
you would need to maintain a peerlist for every "service" you support, but honestly that is not bad. The peerlists would share a lot of nodes, simplifying maintenance, so it is mostly an increase in memory cost, which we have to spare.
<Blame>
thats one big assumption DHTs make that has ceased to be true in a lot of cases. memory is not scarce, and we can keep a few mb of peerlists.
notduncansmith has joined #ipfs
notduncansmith has quit [Read error: Connection reset by peer]
<Blame>
I'd use the optimized hyperbolic metric dht that I am working on for my degree, but you could use any DHT metric to make this work.
karlwestin has quit [Quit: karlwestin]
notduncansmith has joined #ipfs
notduncansmith has quit [Read error: Connection reset by peer]
domanic has quit [Ping timeout: 264 seconds]
<pjz>
latency-as-distance seems a natural metric
<Blame>
pjz: yeah, im doing a distributed spring embedding of latency as distance in a hyperbolic plane.
<Blame>
the big challenge is that we have really good centralized methods for graph embedding, but not many decentralized methods. The spring model is a hack. Its that or everybody does the centralized embedding on the local neighborhood and we union the results somehow.
notduncansmith has joined #ipfs
notduncansmith has quit [Read error: Connection reset by peer]
domanic has quit [Ping timeout: 248 seconds]
www has quit [Ping timeout: 264 seconds]
www has joined #ipfs
<jbenet>
Blame, the DHTaaS idea is a very good one. i think substack is implementing something like it now, based on other work (mothernet?). to be ubiquitous, it has to consume extremely low bandwidth + storage. it may be better to design for a heterogeneous network where some nodes store more than others.
<pfraze>
jbenet: mobile does seem to push toward heterogeneity
tilgovi has quit [Ping timeout: 265 seconds]
domanic has joined #ipfs
<manu>
hey jbenet would you have some time to chat next week on the Credentials / decentralized identifier work we're doing for Web Payments? I finally have something for you to look at: https://github.com/digitalbazaar/authorization.io
<manu>
jbenet: https://authorization.io/ <--- early alpha, but wait for me to take you through the site.
<manu>
Blame: How far into your PhD are you? I'd be interested in chatting w/ you about the WebDHT stuff we're working for the Web Payments and Web Credentials work at the World Wide Web Consortium (W3C).
notduncansmith has joined #ipfs
notduncansmith has quit [Read error: Connection reset by peer]
tilgovi has joined #ipfs
patcon has joined #ipfs
<jbenet>
hey manu o/ -- yes, let's chat. I also have something interesting to discuss with you. it's early and rough, but if we chat next week maybe i could have a rough demo
<jbenet>
Maybe tue?
<jbenet>
(we can schedule by mail or pm as desired)
Encrypt has joined #ipfs
<Blame>
Manu: I hope I'm on my last year (graduating next may at latest) I'd love to chat.
<manu>
Blame: switching to PM to save the channel from off-topic convos.
notduncansmith has joined #ipfs
notduncansmith has quit [Read error: Connection reset by peer]
<prosodyContext>
ohnos :∫
Tv` has joined #ipfs
notduncansmith has joined #ipfs
notduncansmith has quit [Read error: Connection reset by peer]
Encrypt has quit [Quit: Quitte]
notduncansmith has joined #ipfs
notduncansmith has quit [Read error: Connection reset by peer]
sff has joined #ipfs
<ipfsbot>
[go-ipfs] whyrusleeping pushed 1 new commit to feat/mark-n-sweep: http://git.io/vq56J
<ipfsbot>
go-ipfs/feat/mark-n-sweep aa1be6b Jeromy: addressing comments from CR...
<whyrusleeping>
sprintbot: all aboard the merge train!
<whyrusleeping>
just about got all my pressing PRs merged
<lgierth>
:)
<lgierth>
sprintbot: rabbit-holed myself into (and out of) a refactoring of the nginx-related ansible scripts, messed with promdash's ruby dependencies until (╯°□°)╯︵ ┻━┻, now about to have the first promdash dashboard up. then write a little metrics intro
<jbenet>
sprintbot: reading about cbor, writing ipfsld, and records. also CRing whatever people throw at me.
<Luzifer>
jbenet: FYI just started a test regarding #1226 and wrote a support ticket to my hoster to keep an eye on the monitoring for netscans
<Luzifer>
soon we'll see whether the problem is fixed completely
<Luzifer>
lgierth: maybe a bit late but grafana is imho a way better dashboard without the ruby hell ;)
<lgierth>
Luzifer: the $official docker container seems to run fine though -- any bad experiences with promdash?
<lgierth>
ah interesting!
<lgierth>
i was under the impression its prometheus integration was lacking
<lgierth>
is that grafana 1.x or 2.x?
<Luzifer>
lgierth: I went through the docs until "hey look into the changelog and see whether you need to `rake db:migrate` before upgrading" and then flipped that table far away :D
<lgierth>
heh
<Luzifer>
Grafana Admin v 2.0.2
<lgierth>
that db:migrate task wouldn't be a problem with our current ansible setup
<lgierth>
nice
<jbenet>
Luzifer: thanks! i'd say "great! now we'll finally be done with that!" but i know better than making such claims
<lgierth>
Luzifer: noticed any problems?
<lgierth>
what kind of stuff do you graph? i know kbala likes histograms
<Luzifer>
lgierth: my dashboards are running fine with a quite standard prometheus instance
<Luzifer>
weather, host metrics, some accounting stuff
<lgierth>
This is logged in our internal tracking system as issue #1532
<Luzifer>
I'll bake a container with proper tagging and from scratch
<lgierth>
i think i'll rather build a mashup of your and their dockerfiles
<Luzifer>
if you wait a sec I'll be done with that :D
<lgierth>
or that!
<lgierth>
coolio
<daviddias>
sprintbot: keep pusing on swarm, making the API nicer, tests (figure out why there were socket exceptions that weren't being caught: answer - because for each ECONRESET in a socket, an error is emitted in every single spdy stream generated on top of that socket, "gotta catch them all!")
<kbala>
sprintbot: moved graphing for bssim to sql+matplotlib so can see different types of graphs of like latency vs mean block times for each run
<lgierth>
kbala: prometheus doesn't work out?
<kbala>
lgierth: i asked the guys in the #prometheus chat and they said there wasn't any support for non time series graphs :(
<lgierth>
mh ok :/
<kbala>
lgierth: also i think its more of a monitoring tool than a data analysis tool, so that would make sense
<lgierth>
yeah that's definitely true
domanic has joined #ipfs
<Luzifer>
lgierth: just got it building… now testing upgrade to jessie to have a stable and not deprecated system below
www has joined #ipfs
Encrypt has joined #ipfs
<lgierth>
jessie-minimal i hope :)
<Luzifer>
debian:jessie
<Luzifer>
normally they are stripped down as hell
<lgierth>
coolio
<Luzifer>
tagged build is running
<Luzifer>
(I have to add those tags _manually_ dafuq?
<lgierth>
or docker build -t $tag .
<lgierth>
for ipfs, i use the git commit hash as tag
<Luzifer>
lgierth: tag not for dockerhub
<lgierth>
no docker push img:tag?
notduncansmith has joined #ipfs
<Luzifer>
for automated builds I need to use their webinterface to create tags
<lgierth>
ah :/
<lgierth>
meh
notduncansmith has quit [Read error: Connection reset by peer]
<Luzifer>
docker push is a manual build… nobody wants that… nobody knows what the build system is doing in the background
<lgierth>
cause those are not pushable eh
<lgierth>
yeah same as the hub :P
<Luzifer>
at least they publish the dockerfile
<Luzifer>
a docker build && docker push on my jenkins can modify the dokcerfile before building
<lgierth>
yep but that doesn't add trust if the build isn't reproducible
<Luzifer>
(okay tbh they can too… but jeah…)
<lgierth>
oh word but publishing the dockerfile gives you the option of building yourself
<Luzifer>
thats the reason all my builds are automated builds on DH (except the stuff I'm building just for myself, those are running ob my jenkins because DH is slow as hell… 3min vs. 45min build time)
notduncansmith has quit [Read error: Connection reset by peer]
<Luzifer>
damit. thought about gateway.hamburg for my node but the city of hamburg was quicker than me… xD
<demize>
Ask them to get a subdomain? ;p
<Luzifer>
ahhhhhh I got an idea… :D
<whyrusleeping>
jbenet: breaking up the lazyConn thing, the original constructors name was 'NewLazyHandshakeConn'
<whyrusleeping>
i'm changing that to be just the single protocol negotation thing
<whyrusleeping>
but i want a constructor that behaves like the existing one
<whyrusleeping>
and i'm not sure what to name it
<ipfsbot>
[go-ipfs] whyrusleeping opened pull request #1464: error out swarm filter when no daemon is online (master...fix/filters-offline) http://git.io/vqdDo
deltab has quit [Ping timeout: 250 seconds]
patcon has quit [Ping timeout: 265 seconds]
deltab has joined #ipfs
<jbenet>
whyrusleeping: how about `func NewMultistream(protocol.ID) Multistream {}` and Multistream can be a struct with an io.RWC and the protocol.ID.
<whyrusleeping>
jbenet: alright, that makes sense to me
notduncansmith has joined #ipfs
notduncansmith has quit [Read error: Connection reset by peer]
<lgierth>
this grafana
<lgierth>
2015/07/10 20:32:48 [log.go:75 Fatal()] [E] Unknown config section auth.basic defined in /etc/grafana/grafana.ini
<lgierth>
congratulations, that right from your bloody sample and default configs!
<lgierth>
:)
<Luzifer>
but why auth.basic? it has webbased auth
pfraze has joined #ipfs
<lgierth>
i dunno that's what it's called
<lgierth>
i think that's simple user/pass auth, in contrast to github/google/x auth
<Luzifer>
if you just start without modifying anything it has a web-login
<lgierth>
i wanna disable it, since i'm auth'ing within nginx, based on an ip whitelist
<Luzifer>
ah…
<lgierth>
or mh it's probably enough to give anon the editor role
<Luzifer>
I'm off to the gym… good luck or have fun with grafana ;)
<lgierth>
:)
<lgierth>
i'll cope somehow ;)
pfraze has quit [Remote host closed the connection]
<demize>
Hmm, grafana has fancy graphs.
notduncansmith has joined #ipfs
notduncansmith has quit [Read error: Connection reset by peer]
<Luzifer>
lgierth: it does. I'm quite happy with my dashboards… but for one of them I need more metrics… it's a generic dashboard showing me the state of things when I come to my desk in the morning… quite usefu…
<ipfsbot>
[go-ipfs] whyrusleeping created travis/docker (+1 new commit): http://git.io/vqF2z
<ipfsbot>
go-ipfs/travis/docker 3c7f1a8 Jeromy: use travisCI's docker containers for testing...
<ipfsbot>
[go-ipfs] whyrusleeping opened pull request #1465: use travisCI's docker containers for testing (master...travis/docker) http://git.io/vqF2a
<demize>
Luzifer: Got any real example you could show, either yours or someone elses, that's both representative of how a real use of it might look, and won't possibly get someone fired? ;p