I love the theoretical idea, but the execution? I wish them luck, but it's useless to me.
My impression is that the active contributors do not want people to use go-libp2p in their own projects.
You can get the CID by following the URL and then clicking on "ContentID"
It does have FUSE: https://github.com/ipfs/go-ipfs/blob/master/docs/fuse.md
For hosting websites, there are quite a few platforms out there that automate the whole deployment lifecycle (including DNSLink), a popular one is Fleek https://fleek.co/hosting/.
The bigger issue is that there is no way to browse IPFS. So even when you have IPFS up and running, there isn't anything obvious to do with it. ipfs-search.com is about as good as it gets, but that's mostly broken links and due to the lack of a way to navigate to the parent directory, you are often left with individual files as search result, not actual webpages.
Also the FUSE daemon is barely usable. Due to the way IPFS works at the moment, it can't show you a directory until it has downloaded the blocks for all the files in that directory, as that's the only way to get the file type. This makes it painfully slow to use and basically impossible for larger directories, e.g. having a Linux distribution mirrored on IPFS could be cool, but was completely unusable last time I tried.
There is a lot of potential in IPFS, but to really shine it needs a lot more work put into it. Once it can mirror Github and I can `cd /ipfs/...` into a git repository, it could be really useful (IPLD should allow that eventually), but so far it barely works well enough to replace an FTP server.
Another elephant in the room is copyright. IPFS only cares about hashes, it doesn't track who owns or uploaded the content. It's like running a torrent for every bit of Internet you browse. I can't see that working out in the long run in today's legal landscape.
Yup, that's what I had to do. Which is also why I've shared my scripts in the post to help others trying to achieve this. It's stil 'cobbled together' (ie no good error handling and stuff) as you said, but (for my blog) it's simple enough to just add the one line to the compile script (Makefile).
(Author here)
Probably what's holding it back the most, in my case, is that it doesn't have FUSE or it's own proper file browser. Things like torrents are easy: download a client, download a torrent, double-click on it and you're nearly there.
IPFS? Download this, go to "http://localhost:3000" (or whatever the port is), find a hash somewhere (where and how?), copy the hash to the browser, browse it, maybe download a certain file from the listing, err... how do I download a directory?
As for DNSlink, nothing official exists (at least to my knowledge) that can automate updating the DNS entry. You have to cobble something together yourself, tailor it to your registrar, put it in a cron, systemd service or whatever, yadda yadda yadda.
They are probably doing a lot of work and IPFS is already useful, but if it isn't easy to use, it'll stay niche.