Hacker Newsnew | past | comments | ask | show | jobs | submitlogin
Offpunk 1.0: Offline Gemini/Gopher/Web Browsing (tildegit.org)
148 points by todsacerdoti on March 14, 2022 | hide | past | favorite | 17 comments


Nice, this is what I loved about the Web 1.0 before always-on broadband. You would download something and then 'consume' it offline. You could only download so much as you had to find it, and then get offline (every minute cost money). The adrenaline rush whilst online was sweet. Then offline, you would read/watch/listen/use.

You can do the same nowadays. Mirror Wikipedia, download maps for your navigation app, grab a copy of the Bitcoin blockchain (ugh), use Git to clone a plethora of repos, and so on. Great for if you have an airgapped environment. You can even set it up so you never have profiling. The beauty of this specific example is its mostly text, so you can very quickly grab a lot of data, and nobody's gonna figure out which specific you (in this case) read.


> nobody's gonna figure out which specific you (in this case) read.

It also has the downside that you can be accused of reading it all... For example, if there was some illegal content in there (child porn, nuclear bomb plans, extremist material, etc.), then you have now got that content on your computer for when the police are looking for a reason to imprison you.

I say this from a country which has put people in prison for possessing text which could easily be accidentally be downloaded by this 'subscribe-for-offline-reading' feature. [1].

[1]: https://www.bbc.co.uk/news/uk-england-northamptonshire-58926...


I was curious about this case and googled a bit - seems to be this person?

https://www.dailymail.co.uk/news/article-10037721/Terror-sus...


I don't remember the terminology anymore but when dial-up BBSes were a thing, some popular ones limited your connection to 5 minutes. You were supposed to connect just long enough to download a file containing all of the forum threads and replies posted since you last connected (and upload a file with your own posts, if so inclined) and then hang up so someone else could use the line to do the same thing.


> Mirror Wikipedia

The Kiwix app on iOS is good for that. It handles .sim files which consist of offline versions of some major resources.

Then there’s the RACHEL project that creates mini offline internets of edu resources, but I don’t think it’s a free download: https://worldpossible.org/


I plan of adding .zim support to Offpunk if people are interested. I don’t like Kiwix UI and already had a basic zim browser hacked thanks to libzim-python.


Interested, thank you


+1


I'm using Kiwix on Android, very much appreciated this application. I've been using it with Wikipedia for many years. However, it also has other databases, such as Arch Wiki (and I don't even use Arch, the wiki is just a fantastic resource of information).


This reminds me of the good times I had using opera to download all my RSS feeds while in class to read at home where I had no internet. Then I would queue all the links from that as tabs so I could fetch them all via "refresh all" the next day, and on and on with the links from those pages...


Nice to see this here, I've been following Ploum's gemlog as they've developed this. Here's a mirror of their gemlog post where they announce this 1.0 release. It's a little less technical than this README.

https://portal.mozz.us/gemini/rawtext.club/~ploum/2022-03-14...


You know.. this gives me a thought. I've not followed Gemini much, so pardon if this is stupid..

I've (very) slowly working on a knowledge base and planning features. All focused on myself/FOSS. A big desire i recognized early on is being able to store immutable references to the source material. Good for offline usage, but also nice as a "Reader". I would probably ingest direct to some reasonably bare HTML or Markdown format.

Alternatively, i wonder if adhering to Gemini/etc would be a good way to achieve this?

Ie rather than store data in some adhoc format, you just write a "Traditional Web -> Gemini" converter, and then just build the Reader ontop of that. Clearly i'm just speaking of Gemini as a storage format, ignoring transport mechanisms or protocols. Ie the HTML aspect of Gemini. I am unclear if Gemini is just literally a subset HTML - but even if it is, it adds a nice constraint on what HTML this Reader would produce.

Seems neat and general purpose. As long as Clients can markup Gemini content with enough semantic visual meaning as to not detract from the experience in my eyes. Ie i'd want to be able to view Codeblocks with some simple syntax highlighting.. not sure if Gemini prevents that somehow.

Now i need to look into Web -> Gemini scrapers, got me interested


I think what you are thinking about is "Gemtext" which is a restricted thing very similar to markdown: https://gemini.circumlunar.space/docs/gemtext.gmi

In my mind Gemini is like HTTP, and Gemtext is like HTML - closely linked yes, but you can view more with Gemini/HTTP than just Gemtext/HTML.

I am not sure on the value of using Gemtext vs e.g. Markdown for what it is worth - Gemtext has been simplified for the purposes of minimal implementation headaches for client authors and consistency. If you are just writing your stuff for yourself, just pick a Markdown flavour and use that.


I use Offpunk as a knowledge base. Stuff are stored in ~/.cache in their original format (html or gemtext). I add them to list and edit list to add notes.

So for example :

go gemini://rawtext.club/~ploum list create toread add toread list edit toread


This tool seems to bundle an extremely primitive hand-rolled browser along with its archiving tool. This is a weird design decision - if you're a fan of the Unix philosophy, then why not separate the two? And, if you're a fan of the modern web standards, why not use a tool like ArchiveBox[1] so you can actually use a modern browser?

[1] https://github.com/ArchiveBox/ArchiveBox


I'm pretty sure that Gemini users are for the most part not fans of the modern web!


This is real neat.




Guidelines | FAQ | Lists | API | Security | Legal | Apply to YC | Contact

Search: