86 comments

[ 4.9 ms ] story [ 271 ms ] thread
I tried to build it using (idiomatic Unix):

    ./configure
    make
    make install
But it didn't work!
What makes you think that this will work?
Well, I assumed it would work because it makes sense that we don't want to impose different build interfaces to people who are just users and want to try out code. To the user, it shouldn't matter what language/tools were used to develop the software.

This gets worse when software depends on other software which may be built using yet different tools. Chasing dependency chains is already painful as it stands.

That ship has long passed.

Edit: shouldn't it matter to the user anyhow, that they need rust? There's no world in which the user can just ./make given the existence of dependencies - the user needs to read the README.

Traditional software your instructions won't work for:

GNU coreutils: https://git.savannah.gnu.org/cgit/coreutils.git/plain/README...

sudo: https://www.sudo.ws/packaging.html

curl (does use configure and make but you need to pass args for your tls lib): https://curl.se/docs/install.html

Once you get into GUI's, all bets are pretty much off, e.g.

Firefox: Custom Python buildscript: https://firefox-source-docs.mozilla.org/setup/linux_build.ht...

KDE anything: Custom build tooling: https://community.kde.org/Get_Involved/development#Applicati...

Blindly running ./configure && make && make install isn't the universal norm you think it is

You can raise an issue and submit a patch or fork the repo if you think it should work according to your personal preference.
Best advice I heard regarding reddit: disable old redirect and embrace the new redesign. Outcome - my reddit browsing has become minimal, focused and no longer enjoyable for procrastination.
Sometimes you want to find an answer to a specific question (e.g. you want to buy something, or trying to figure why something doesn't work as intended) that likely exists somewhere in the deep corners of reddit, in which case embracing the new redesign is signing off on torturing yourself.

It's no longer enjoyable for procrastination though, agreed.

The Apollo app is leagues ahead of even their mobile app, not sure why they don’t just hire that person (probably because the person gives a shit about the user experience, and the suits at Reddit are more interested in ruthlessly monetizing, ipo and all coming up).
Yeah, more likely they buy it to kill it like they did Alien Blue years ago.
Would just be another acqui-hire like Alien Blue
They hired the developer behind Alien Blue and totally, totally destroyed it in a few months, so I would hope they leave Apollo well alone.
I went further. I just do not use it or any other mainstream "social" network. Well that is except watching youtube of course.
The worst aspect of the redesign is having to click 40 times to see all the comments in a 200+ comment thread, due to so many being auto-collapsed. Old reddit lets me see more content with far less work.
The quality of comments has become so poor as the median age of Reddit users has dropped into the teens, that I think that was a deliberate design choice.
I still use old reddit and there’s a setting in Preferences to control comment collapsing. Is that setting not also in new reddit?
I've done this too, I was using alternative clients as a crutch but I imagine they're just going to pull a Twitter at some point and kill off API access to third party clients.
And I wonder how long the apps which make reddit still enjoyable incl. the one being discussed here would last as API blocking/restrictions are likely in the pipeline, Every other Ad based social network/community platform which initially had open API had done so.
The problem with this approach is that although you reduced procrastination you basically eliminated most useful search results. Searching without adding 'reddit' or 'wikipedia' yields 99% spam
Will be nice to also integrate various decentralised reddit clones to this so that people will slowly get weaned off the original (not to mention the discovery of the new ones and your own differentiation from other reddit frontends).
I thought this was a SPA app with WASM and thought it was really cool. Obviously, it is still great work but I think it would've been a tad bit cooler if it were a SPA rust app.
One of the main points of the app is that it does not use any client side JS, so that wouldn't help anything.
If you were building an interface to extract the most value from Reddit-like sites but reduce the chance of addiction what would it look like?

Less pictures, less color, less NSFW, time delays on content, exclude any subreddit that grows beyond a certain size, actively avoid things that are engaging lots of people etc.

There's the ethical qualm that your profiting from other people's addiction to surface your minor addiction, similar to someone who dabbles in hard drugs but is supporting the ecosystem for people using it as an escape from their life and getting trapped in it.

I'd just need it to get rid of the goddamn karma. I like Reddit and I participate judiciously, but I had to write a UserCSS script[0] to hide all karma.

[0] https://paste.sr.ht/~runiq/aebc83743e3b864a681c6a878df4f7cd3...

I think Reddit and other Reddit style forums in general should definitely have the following features to not end up as echo chambers filled with fundamentalists

- don't have karma, it just becomes a popularity contest and popular and positive ideas usually get to the top while criticism usually goes to the bottom, even if it's genuine

- sort all comments randomly on each page load, this would complement the first feature of not having karma

Of course, spam and irrelevant content can simply be reported and removed but these two features would ensure unpopular opinion isn't.

I, for one, would really love this feature on every NeoVim and Linux related posts everywhere on the Internet.

i would get rid of infinite scrolling.
I think using a 'lib' prefix to mean 'libre' is potentially misleading when 'lib' is normally used to denote that the project is a library.
But in this case, we get "Libre"ddit, right in the name. The wordplay is irresistible!
I think it shows how ingrained the pattern is to me that I didn't even spot that.
I always read libreboot as "lib reboot".
The amount of times I've mispronounced a project name in real life...
This is pretty amazing. I don't mind Reddit ads, but the official interface leaves a lot to be desired.

This one is so very smooth, and solves all the issues I have with official reddit.

Very well done, I hope the project continues.

Looking at the code, it seems like the OP pretty much re-implemented a forward proxy but typed to reddit. Why not use a general purpose forward proxy and just configure it to work with reddit but many other websites.
Reddit is horrible to use on mobile devices as well. They're trying to force you to download the app, but I'm not interested to download an app to browse a website. I already have a browser.
i.reddit.com still exists as a really dumb mobile version. I use it when my feed reader takes me to reddit sometimes.
If you're signed in there is also an option to disable the mobile nag in the settings (and set dark mode if that's your thing). Not as lightweight but also a one and done.
This is still my favorite reddit mode! It does seem to hide posts if you click the link, which is super annoying.
Thanks for the tip. This is good enough for me!
I set this up for myself one evening while also installing nitter and invidious. I love it!

Wasn't aware it's written in rust though. Shame on me for not reading the code I guess. It speaks for the ease of setup though. Just put a docker behind caddy and forget about it, pretty much. :D

Edit: I should note that I also set up bibliogram the same night but never started using it because facebook blocks instances pretty quickly. Mine wasn't even being used by anyone else. Fuck facebook, really. instagram is pretty much useless for me anyhow, just contentwise, but I am very concerned that twitter and reddit will go down a similar road.

The docker image makes this super easy. Nice work.
Isn't that a violation of reddit's trademarks? There is a reason apps for Reddit have to brand themselves as "XYZ for Reddit".

Also, I don't quite understand why the requests have to be proxied through a server. Wouldn't implementing this in javascript to send requests directly client-side to reddit's apis be faster and more private? It's fast because it's rust is a dumb argument when you are adding an additional network hop to the latency which can't possibly be compensated for by the choice of the stack.

It would certainly be faster, though the idea behind the proxy is that it prevents Reddit correlating browsing habits to a specific source (assuming the one hosting the libreddit instance is deemed trustworthy).
https://reddit.com/.json from an incognito window shows me the exact same posts in the same order as libreddit.
I think the argument made is regarding tracking. If I understand this architecture correctly, the use of a proxy would mean reddit can't correlate your browsing habits, as they'll be correlating all browsing habits of people using the proxy.
I think it's time we drop the "written in Rust" qualifier.
Imagine the chaos at "C compiler written in Rust"
Almost as if the language is enough to define good software.

What are the merits of what was built?

i can make absolutely awful software in rust
(comment deleted)
But at least it will have good memory safety :)
Who is that an issue for? We make simple websites lol.
So you mean a piece of code that is literally hanging on the open net, bare-assed? Yeah, I wonder why memory safety would matter here ;)
It's up to the user to secure their own memory
Memory allocation and garbage collection is a very solved problem unless you are doing highly performant work.

We make websites and mobile apps. Get it?

Yes, there is definitely a trade–off between speed of development and speed of the resulting program. Rust isn’t right for everyone, especially when speed of development is the prime consideration. Even a mediocre server can handle many thousands of requests per second if the software is efficient, but there are plenty of worthwhile projects out there that don’t see that level of usage. For them, garbage –collected languages are perfect.
But what is it that I am fighting against here? Why is my tone a certain way? These people are literally trying to build websites in Rust. Acolytes, cultists.
What’s wrong with that? Rust is great for writing websites. People may choose to make different tradeoffs than you.
Although it's becoming tiresome I find myself more bothered by software that feels the need to incorporate the programming language into the app name.

I think Go best lent itself to this and for a while it was starting to grate on me that "Go" had to be jammed into every app's name.

Seems like the app and its purpose should be able to stand on merit alone.

Definitely agree, programming languages are tools. There's different tools for different jobs, but nobody says "Engine, proudly made with Wrench" or "Shed, proudly made with Hammer and Nails" because that would be ridiculous.
The one exception to this is libraries for that language.
Not necessarily, only when memory safety, file size, complexity, and marginal performance over other options aren’t relevant, or are incidental to the main value proposition.

For this particular project, it might not be necessary, but for others it’s useful to know.

> Fast: written in Rust for blazing fast speeds and memory safety

This doesn't matter much for the end user when data is requested from Reddit's API anyhow.

Ugly. Use teddit.net for a clean experience.
Really dislike the "written in Rust" suffix all the time...
Why?
Because it being written in rust is only added to the title to attract the attention of evangelists. The rest of us don't care what its written in.
It's a useful signal though right?

This being written in Rust tells me it's probably going to be fast/lightweight. Go would be a similar expectation. If it's written in Rails I'd have different expectations. Python or Node might fall somewhere in the middle.

This project is a webserver you can host yourself, so having an idea of the resources required is very helpful.

> This being written in Rust tells me it's probably going to be fast/lightweight. Go would be a similar expectation. If it's written in Rails I'd have different expectations. Python or Node might fall somewhere in the middle.

Which is exactly why the language doesn't matter. It being written in rust doesn't tell you anything, and serves only to evoke some predisposition you have for rust. There's nothing in rust that stops users from writing horrible algorithms. This reddit front end could send separate requests for every letter it loads for all you know.

That's why it matters that it's also open source.

It's similar to Big-O notation, seeing that it's in Rust gives me an idea of performance profile to expect. If it's a Rails project I know that the best case scenario is fairly resource intensive, no matter how good the code is. If it's Rust then I know that for an average quality open source project it will be lower resource usage. If a project ends up being terribly inefficient after that, I'll drop it regardless of what stack it's in.

Knowing what tech stack something uses is a valuable first signal.

Hm, I am not so sure about this. After all the site that you browse has a title of Hacker News. For me the information about "being written in rust" is exactly what I expect to read here.
FWIW, I really like knowing that X was written in Y. If I'm learning Y, it gives me another thing I could look at and see if I can pick up something useful. If I already know Y, it might still be interesting to see if there's anything special about writing X in Y, instead of or compared to Z.

It's a bit disheartening to watch gripes like this become more and more common on HN. It used to be a place where people were a lot more interested in sharing points of view and exchanging information, than criticizing anything that can be criticized.

> The rest of us don't care what its written in.

Given that there are a few ecosystems that I actively avoid reading about (e.g. anything nodejs), I appreciate them being stated in the title.

I use this as part of privacy redirect extension.

In general I patiently wait for RSS and Specializes forums to come back. Social-network silos are optimizing UX for engagement in era of shortest attention span known to man kind. The idea of useful and balanced interfaces is long gone.

This is very slow for me, is it just my current internet? My connection is a bit iffy, I just wanted to see if it's slow for anyone else.
(comment deleted)
This looks great but warning, the posts are still by redditors, the shrillest most irritating and juvenile group of people on the internet besides Twitter.
videos are loading incredibly slow for me, but not on main reddit. otherwise, pretty sweet!
I got so sick of Reddit’s web interface pushing me to use their app or preventing me from reading threads on my phone unless I logged in, I registered a 6-character .com for the sole purpose of hosting my own libreddit instance.

So if I am viewing a reddit thread from a search result, for example, I can just double-tap the word “reddit” in the address bar, quickly tap “<mydomain>” then hit go.

Finally I can browse Reddit without VPN!