Live data from Hacker News

Nix × IPFS – Milestone 1

blog.ipfs.io

81–90 of 92 posts

Re: Nix × IPFS – Milestone 1

#81
post #2

Interesting use case for IPFS, which has often felt like an (admittedly cool) solution in search of a problem. Can someone enlighten me as to real-world examples where actually reproducible builds are critical?

There are much more real-world use cases for reproducible builds than for IPFS. It saves time and money. It's not just academic.

Reproducible builds (as in bit-for-bit) means I can trust a (secure) checksum of a binary I downloaded somewhere, let's say from IPFS. This is defense-in-depth, adding another layer of security to prevent sabotage.

Reproducibility means the whole system can reliably be built from source and I don't need to manually make sure the system has the correct constellation of implicit dependencies and their version numbers. This saves time and money in deployment and will pay off in a very big way 10 years down the line when that code is still in use somewhere.

Re: Nix × IPFS – Milestone 1

#82

Earlier quoted context omitted.

The floating content-addressed derivations we've worked on as part of this Nix × IPFS work get's us a lot closer to reproducible builds by making non-determinstic builds far more noticiable. See these: https://github.com/NixOS/rfcs/pull/62 https://github.com/NixOS/nix/issues/4087

Making it noticeable isn't going to get you closer to reproducible builds though. There is still a quite a lot of effort that needs to go into patching individual packages and fix the non-determinism introduced by the compilation process which NixOS can't solve by adding tricks. And as an outsider I'm unable to read the RFC and understand what is going on and what tangible issues it solves for Nix.

The Nix approach is any package-specific tricks are left to the plan writer, and Nix's job is to sandbox things. We ought to look things down further and further until build jobs can be deterministic by construction.

Until that ideal is reached, you could call "leaving it to the plan writer" a cop-out, but what else is there to do? It's the stop-gap.

The benefit of the new system is that all store paths can be content-addressed. That means the inputs of all build stems can be content-addressed, whereas before they might also be "input-addressed" paths whose contents are also a matter of trust. This means one takes "small step" rather than "big step" trust steps, and also that upstream non-determinism won't "pollute" downstream builds.

Re: Nix × IPFS – Milestone 1

#83
post #19

IPFS is not censorship resistant. If people start using it to subvert tyranny, politically neutral things like Nix's use of IPFS can get collaterally damaged in its infancy by state power.

I think censorship resistance should be handled at a different abstraction layer. IPFS can focus on peer-to-peer immutable file sharing and some other tool can tunnel your traffic to avoid censorship. You could run IPFS over a VPN or something like that.

Re: Nix × IPFS – Milestone 1

#84
post #80

Earlier quoted context omitted.

3. Bufferbloat. It's still a thing. dslreports has a bufferbloat score, one of my coworkers has been really impacted by it. http://www.dslreports.com/speedtest

I heard about bufferbloat, but I didn't think it was related to bittorrent maximizing throughput

It depends: packet loss due to bitorrent is a problem, but low loss and high latency makes it dramatically worse, and that is the bufferbloat cast. If you have 1-30 second pings (or I've seen even worse), when doing torrents or other heavy outbound traffic, it falls apart.

Re: Nix × IPFS – Milestone 1

#85
post #60
post #31

Earlier quoted context omitted.

In a lot of the world, upload speeds are very limited and ISPs charge an arm and a leg if you exceed your upstream data caps. On top of that, Bit torrent has a tendency to overwhelm routers and make them slow to a crawl. Those are a lot of downsides to ask your users to accept just so you can cheap out on download servers.

> In a lot of the world, upload speeds are very limited and ISPs charge an arm and a leg if you exceed your upstream data caps. Not all 1st world countries have data caps. I pay ~20$ for month for 37mbps (15 upload) with no data caps (it's literally the cheapest plan I could find, if there was cheaper available, I would take it).

in Russia i have a ~$15 plan 1gbps (~700 realistically)up/down unfortunately it's clear that ISPs are not going to be able to upgrade their hardware nor keep prices low due to government interventions, government controlled ISPs competetion, mandated DPI censorship(paid by ISPs) so very soon internet in Russia will be as shitty as in most western countries that lack competition

P.S. until 2009-2014 russian internet was completely out of government sight. an average internet user in big cities had a choice of 3-10 ISPs competing prices etc

Re: Nix × IPFS – Milestone 1

#86
post #49

Earlier quoted context omitted.

This looks interesting. Why is the payment method based on a crypto coin? How does using a blockchain help make Skynet and Sia work? I am wary of crypto coins as they tend to have wild swings in value over time as they are used primarily for speculation... can I be sure that if I upload something today worth $2/month, in 2 years I will still be paying this much or less?

> Why is the payment method based on a crypto coin? A blockchain gives a way to make a payment and provide identity/ecrypt functions to keep the resource private while it is active. Yes, one could create a system that attaches other authentication (user/pass or oauth), but then one has to create/connect a payment system which then uses that login information in conjunction with credit card information. To sell a prod…

> I may want to deal with 100s of providers to host my resources (blog, images, video, code) and I'd need to use an intermediary if I wanted to be efficient about it

Why multiple providers? With no-features data storage, S3 can easily provide that without an intermediary and in a pretty well automated way.

> Would those prices not go up if the currency was undergoing deflation?

Unless you're in a country with very unstable currency, the exchange rate change will be very slight. Sia changed ~60x over the last 2 years, which is significant.

The price of course won't change during the contract, but what happens after is not trivial to plan for.

Re: Nix × IPFS – Milestone 1

#87
post #31
post #9

Open source plus distributed p2p file sharing is the killer combo. I don't get why public stuff like NPM, DEB or Docker registries haven't switched to use it as primary way of distribution. P2P, such as IPFS and recently BitTorrent 2.0 with its hash tree per file, is the only free (as beer and speech) reliable way to host things online forever - at least as long there is the last of the veterans who keeps a copy and…

In a lot of the world, upload speeds are very limited and ISPs charge an arm and a leg if you exceed your upstream data caps. On top of that, Bit torrent has a tendency to overwhelm routers and make them slow to a crawl. Those are a lot of downsides to ask your users to accept just so you can cheap out on download servers.

But all this can be adjusted with concepts like pining, rate limiting, queuing, connection limits, even geo-fencing. I would gladly share % of my server's unlimited transfer to give back a tiny range of Debian or DockerHub packages which I have dowloaded and use. And I don't want to mirror the entire distros, which is condition to become an official host of distro mirror.

Re: Nix × IPFS – Milestone 1

#88

Earlier quoted context omitted.

BitTorrent 2.0 is not recent, no. The current bittorrent company is interested in chasing ICOs, I don’t think they work on new versions of the protocol anymore? edit: yeah it’s from 2008

People are working on BitTorrent yes! libtorrents blog made a blog post quite recently (September 7th, 2020) - https://blog.libtorrent.org/2020/09/bittorrent-v2/

That is libtorrent, unrelated to bittorrent, no? (organizationally)

Re: Nix × IPFS – Milestone 1

#89
post #59

Earlier quoted context omitted.

> I don't get why public stuff like NPM, DEB or Docker registries haven't switched to use it as primary way of distribution 2 of them are run by commercial entities. I don't think those are all that interested in reducing dependency on them.

>2 of them are run by commercial entities. I don't think those are all that interested in reducing dependency on them. Docker is also removing some old images and putting limits on existing images, it's too expensive for them to host.

or it could be a strategy to move more people to a pay model.

Re: Nix × IPFS – Milestone 1

#90

Earlier quoted context omitted.

People are working on BitTorrent yes! libtorrents blog made a blog post quite recently (September 7th, 2020) - https://blog.libtorrent.org/2020/09/bittorrent-v2/

That is libtorrent, unrelated to bittorrent, no? (organizationally)

Yeah, maybe you were explicitly talking about the company BitTorrent Inc.

"work on new versions of the protocol anymore?" made me think of the BitTorrent protocol in general, sorry for the misunderstanding.

I think you're right that the BitTorrent company aren't directly involved in the protocol work, they seem to be focused on trying to push their plagiarized cryptocurrency project.

Post reply on HN