infinity0 has quit [Remote host closed the connection]
<dsal>
(cache still sucks, though)
<achin>
it's not strictly required, but it helps
<e337>
dsal, I'm not sure I understand what you're saying..
<achin>
if no one on the internet can connect to you, but you can connect to everyone else, then you don't need to open an inbound ports
<dsal>
^
<achin>
but in practice, you won't be able to connect to everyone else (because they might not have an open inbound port)
<achin>
so you'll help out yourself (and everyone else) by having an open inbound port
infinity0 has joined #ipfs
<e337>
Ok, so at least one node needs to have an open port?
<dsal>
I uploaded that stuff on my laptop while at work (behind all the firewalls). Then I ssh'd to a machine at home (through an ssh gateway) and pinned the content. Then shut down ipfs on my laptop. Now you can get it from above.
<dsal>
If no machines have open ports, whom are you talking to?
infinity0 has quit [Remote host closed the connection]
dimitarvp has quit [Read error: Connection reset by peer]
<e337>
Yes, that seems very obvious, but is the effect of closing the port to alter the swarm topology or its overall performance?
infinity0 has joined #ipfs
infinity0 has quit [Remote host closed the connection]
<achin>
it's pretty much the same as bittorrent
<e337>
I was thinking of a video streaming app for, say, the NFL, where you download the software for an ipfs node, and video blocks are distributed from the server but also between consumers.
<e337>
A phone wouldn't be able to have an inbound port open, and its IP address could be constantly changing.
infinity0 has joined #ipfs
infinity0 has quit [Remote host closed the connection]
<achin>
a mobile phone might be less likely to be behind a NAT, which may help things
Jesin has joined #ipfs
<kpcyrd>
depends, those might be behind carrier nat unless you have unfirewalled ipv6 :)
<achin>
true
bingus has quit [Ping timeout: 260 seconds]
<dsal>
How would I go about storing all of my video content in ipfs? e.g., I've got directories full of movies. I can imagine how to do initial import. How would adding a new one work?
asyncsec has quit [Quit: asyncsec]
john4 has joined #ipfs
<achin>
you would just re-add your directory of videos
<achin>
which would give you a new hash
<dsal>
I'm assuming IPFS has the canonical copy.
<dsal>
i.e. I don't want two copies of everything.
fnlintred887 has joined #ipfs
<dsal>
(at least, logically)
john2 has quit [Ping timeout: 260 seconds]
<dsal>
Is it possible to synthesize a directory like in git?
<achin>
well, in the default mode everything gets copied under $IPFS_PATH, so you would end up using twice the storage space
leeola has quit [Quit: Connection closed for inactivity]
<dsal>
I guess I'm just looking to treat it more like git where I can just make a directory as I go.
<dsal>
e.g. I can store blobs. I can make trees and name them.
<achin>
yes, you can do that too, if i understand you correctly. for example, "ipfs object patch"
<dsal>
Oh, yeah. That's probably the path.
brendyn has joined #ipfs
<whyrusleeping>
You can also use the filestore
<whyrusleeping>
as long as you don't move the original files
<whyrusleeping>
ipfs can reference files on disk
<whyrusleeping>
but if you move the original files, some things will error out until you manually fix the issue
<achin>
that was the issue issuecomment linked above
dlight has quit [Ping timeout: 255 seconds]
Guest74377 has joined #ipfs
<dsal>
Yeah, I can understand how that would be helpful, but I'm thinking about "moving in" properly.
<dsal>
All of my storage at home is pretty much dead.
<whyrusleeping>
dsal: check out `ipfs files`
<whyrusleeping>
its a virtual filesystem interface
<whyrusleeping>
might help with management of things in ipfs
SalanderLives has quit [Ping timeout: 255 seconds]
dlight has joined #ipfs
<dsal>
ooh. That makes sense.
reit has quit [Quit: Leaving]
Mateon3 has joined #ipfs
Mateon1 has quit [Ping timeout: 268 seconds]
Mateon3 is now known as Mateon1
fnlintred887 is now known as bingus
jonnycrunch has joined #ipfs
jonnycrunch has quit [Client Quit]
dignifiedquire has quit [Quit: Connection closed for inactivity]
jonnycrunch has joined #ipfs
tilgovi has joined #ipfs
reit has joined #ipfs
Guest74377 has quit [Quit: WeeChat 1.7]
caiogondim has quit [Quit: caiogondim]
john4 has quit [Ping timeout: 255 seconds]
jonnycrunch has quit [Quit: leaving]
jonnycrunch has joined #ipfs
jonnycrunch has quit [Client Quit]
jonnycrunch has joined #ipfs
jonnycrunch has quit [Client Quit]
jonnycrunch has joined #ipfs
tilgovi has quit [Ping timeout: 255 seconds]
jonnycrunch-bot has joined #ipfs
_shizy has quit [Quit: WeeChat 1.7]
Jesin has quit [Quit: Leaving]
_shizy has joined #ipfs
jonnycrunch-bot has quit [Ping timeout: 260 seconds]
fleeky has quit [Remote host closed the connection]
spacebar_ has joined #ipfs
jonnycrunch has quit [Quit: leaving]
jonnycrunch has joined #ipfs
jonnycrunch-bot has joined #ipfs
gully--foyle has joined #ipfs
jonnycrunch-bot has left #ipfs [#ipfs]
jonnycrunch has quit [Read error: Connection timed out]
jonnycrunch has joined #ipfs
jonnycrunch has quit [Quit: leaving]
jonnycrunch has joined #ipfs
tilgovi has joined #ipfs
tilgovi has quit [Ping timeout: 255 seconds]
tilgovi has joined #ipfs
Jesin has joined #ipfs
brianhoffman has quit [Ping timeout: 245 seconds]
Foxcool has joined #ipfs
ljhms has quit [Read error: Connection reset by peer]
gmcabrita has quit [Quit: Connection closed for inactivity]
ljhms has joined #ipfs
chris613 has quit [Quit: Leaving.]
ljhms has quit [Read error: Connection reset by peer]
ljhms has joined #ipfs
jonnycrunch has quit [Quit: leaving]
palkeo has joined #ipfs
palkeo has joined #ipfs
palkeo has quit [Changing host]
tilgovi has quit [Remote host closed the connection]
tilgovi has joined #ipfs
infinity0 has joined #ipfs
ljhms has quit [Read error: Connection reset by peer]
ljhms has joined #ipfs
Foxcool has quit [Ping timeout: 240 seconds]
aeternity has quit [Ping timeout: 276 seconds]
bwerthmann has joined #ipfs
<flyingzumwalt>
Is there a recommended way to validate IPFS content against its hash? ie. is there an optional flag on some command that says "read this content AND validate the content against its hashes"?
<flyingzumwalt>
whyrusleeping?
<whyrusleeping>
hi friend
<whyrusleeping>
ipfs add -n <content>
<whyrusleeping>
We should really have a js-ipfs page that lets you check content
<flyingzumwalt>
yeah. and a tutorial. I want to link to that tutorial but it doesn't exist yet.
<flyingzumwalt>
so there's no --validate option on ipfs cat
<flyingzumwalt>
:-(
<flyingzumwalt>
I have to pull it down and then separately calculate its hash.
<whyrusleeping>
ipfs cat does validate
<whyrusleeping>
ipfs cat won't output anything whose hash doesnt match
<flyingzumwalt>
oh. I thought it skipped that by default because its slow
<whyrusleeping>
no, definitely not
<flyingzumwalt>
oh. phew
<flyingzumwalt>
That makes me happy
<whyrusleeping>
it skips checking the hashes of things when reading them from disk by default
anewuser has quit [Ping timeout: 264 seconds]
<whyrusleeping>
reading from ipfs's internal block storage, i should clarify
<flyingzumwalt>
ok. so if I worry that my local machine has been tampered with, I would have to use ipfs add to check the hashes
<flyingzumwalt>
but if I'm using ipfs cat to read something from the network it gets validated on the fly
<whyrusleeping>
if youre worried your local disk has been tampered with, you should enable the Datastore.HashOnRead option
<flyingzumwalt>
sweet
<whyrusleeping>
but, if your disk has been tampered, you also have to trust your ipfs binary
<flyingzumwalt>
I'm not actually facing that situation ATM. Just considering the scenarios.
<flyingzumwalt>
want to make sure the docs I write are accurate
<whyrusleeping>
👍
spacebar_ has quit [Quit: spacebar_ pressed ESC]
tilgovi has quit [Quit: No Ping reply in 180 seconds.]
tilgovi has joined #ipfs
gully--foyle has quit [Ping timeout: 260 seconds]
Foxcool has joined #ipfs
palkeo has quit [Quit: Konversation terminated!]
archpc has joined #ipfs
Caterpillar has joined #ipfs
sirdancealot has joined #ipfs
rendar has joined #ipfs
Foxcool has quit [Ping timeout: 240 seconds]
tilgovi has quit [Quit: No Ping reply in 180 seconds.]
btmsn has joined #ipfs
tilgovi has joined #ipfs
john4 has joined #ipfs
john4 has quit [Ping timeout: 240 seconds]
mildred has joined #ipfs
sirdancealot has quit [Ping timeout: 264 seconds]
Foxcool has joined #ipfs
espadrine_ has joined #ipfs
espadrine_ has quit [Ping timeout: 264 seconds]
tilgovi has quit [Ping timeout: 255 seconds]
maxlath has joined #ipfs
jungly has joined #ipfs
morantron has joined #ipfs
<morantron>
hiii
asyncsec has joined #ipfs
john4 has joined #ipfs
sirdancealot has joined #ipfs
asyncsec has quit [Quit: asyncsec]
patagonicus has quit [Quit: WeeChat 1.4]
espadrine` has joined #ipfs
patagonicus has joined #ipfs
brendyn has quit [Ping timeout: 255 seconds]
asui has quit [Ping timeout: 255 seconds]
<Mateon1>
Another use for HashOnRead is unreliable storage, like SD cards or old HDDs. I would love however a "ipfs rehash" or something to check all hashes in the blockstore.
<Mateon1>
A rehash would be nice after transfering the IPFS repo, or restoring a backup
<yani[m]>
hey guys, whats the state of ipfs and blockchain integration?
<Mateon1>
yani[m]: I'm not following it closely, but some blockchains were implemented in IPLD, and I think ethereum was demoed
ianopolous has joined #ipfs
<yani[m]>
i heard something of an ipfs browser? seemz to be envogue that every crypto project has its own browser...
<yani[m]>
@mateon for purely storing the blockchain on ipfs?
<yani[m]>
storing is the wrong word... adressing?
<Mateon1>
yani[m]: Yep storing, I'm pretty sure there is something going on with Ethereum contracts and IPFS, but I know nothing about that
ianopolous has quit [Remote host closed the connection]
elkalamar has quit [Quit: Leaving]
sirdancealot has quit [Ping timeout: 260 seconds]
brendyn has joined #ipfs
asui has joined #ipfs
dignifiedquire has joined #ipfs
<morantron>
hi! have you considered using a cancelable fetch polyfill for browser's support of pubsub? just tried with https://github.com/gsathya/cancelable-fetch and looks like it's working :tm:
<morantron>
handler is called on every published event, and when calling unsubscribe, the request is stopped
<dignifiedquire>
morantron: there are some more explanations in the original pr on js-ipfs-api, but the issue with any polyfill is that xhr does not expose the request body, before the request is finished, which is crucial for the current implementation (otherwise you don't get any messages before you cancel your subscription)
<morantron>
dignifiedquire: maybe i'm missing something, but the handler is being called in every publish event
sprint-helper has quit [Remote host closed the connection]
sprint-helper has joined #ipfs
<morantron>
i probably did something wrong, nevermind
<morantron>
i'd like to build a distributed webapp for funz, it's basically a rubik's cube timer with leaderboards and such
<xSkyripper>
morantron did you forked js-ipfs-api, modified it and required it inside your project with webpack ?
<morantron>
xSkyripper: you can use "npm link" to develop locally
<xSkyripper>
so you installed it globally and then linked to your project ?
<morantron>
i did the following
<morantron>
1. forked js-ipfs-api repo
<morantron>
2. cd /path/to/js-ipfs-api-fork && yarn link
<morantron>
3. cd /path/to/your/project && yarn link js-ipfs-api
sirdancealot has joined #ipfs
<xSkyripper>
thanks !
<morantron>
also don't forget to run "yarn install" in your js-ipfs-api fork, and add a console.log somewhere to ensure you are actually using the linked version
<xSkyripper>
npm would also work right ?
<morantron>
ah yes sure
<morantron>
take into account this only makes sense to develop locally
<xSkyripper>
what if I want it to be packed with webpack for real usage ?
<morantron>
theeen
<morantron>
you can add your dependency as github dependency in package.json
<morantron>
"ipfs-api": "xSkyripper/js-ipfsapi"
<morantron>
should work
<xSkyripper>
thanks !
<morantron>
but npm link is pretty neat so you don't have to push and re-run npm install all the time
<xSkyripper>
I see. I learn new things everyday :D still #noideawhatimdoing
<morantron>
that's awesome, me neither! hehehehe
<xSkyripper>
xD
<morantron>
sooo, in a distributed webapp, where the users data is persisted in IPFS with encrypted and signed files ( using tweetnacl as mentioned in that talk ). How would an user manage its public/secret keypair in a friendly way?
<morantron>
basically there is no centralized log/pass to "log-in", and also there is no way to "reset your password" I guess, if you lose your keypair you are kind of screwed, right?
<morantron>
also, persisting a keypair in localstorage sounds really insecure
<morantron>
any ideas?
<kpcyrd[m]>
morantron (IRC): the most secure solution would be if you run your own gateway that whitelists resources, so the localstorage is attached to a secured domain
rcat has joined #ipfs
Foxcool has quit [Read error: Connection reset by peer]
Foxcool has joined #ipfs
Foxcool has quit [Read error: Connection reset by peer]
Foxcool has joined #ipfs
Foxcool has quit [Read error: Connection reset by peer]
Foxcool has joined #ipfs
<emunand[m]>
actually, you could just use security questions in order to "reset your password"
sirdancealot has quit [Ping timeout: 260 seconds]
<emunand[m]>
they would have to be encrypted though, and specific to the client
sirdancealot has joined #ipfs
<emunand[m]>
alternativly, give every client a uuid to use automatically, and store it in a fioe with their local data
<emunand[m]>
if they ever need to backup their uuid, its in an easy place to find, like how zeronet does it