Hi folks,
For the past couple of months, I've been making Debian.tips - a site all about Linux tips, tricks, troubleshooting, how-to guides and so on, with a particular focus on how things are done on Debian.
I've been wanting to build this site for about a decade, but just haven't gotten round to it until now. But, I got laid off recently and now have enough time on my hands to give it some attention. My main goal for it is to teach myself more about Debian and Linux in general. Back when I bought the domain, I was doing some Debian sysadmin work as part of my job as a software engineer, and although my work has moved away from that over the years, thanks to the rise of cloud platforms and DevOps engineers, I've always maintained a personal interest.
But I'd also like it to be useful to other people too. So, if you have any feedback about the site, I'd love to hear it - what works, what doesn't, what can I do to make it more useful/interesting/accessible/etc?
NB: I'm not trying to sell anything, or serve ads, or collect data (outside of simple aggregated usage metrics). This project will earn me zero revenue. The only personal benefit is that it gives me something to talk about during interviews while I look for my next job. And to teach myself more about Debian, of course!
AI disclosure
I've used AI to help me build the site and author the content. Without it, progress would have been much slower and poorer quality, because, quite frankly, AI knows a lot more than I do about how Linux works. I've gone to great lengths to ensure that what's on the site is accurate with a rather convoluted CI/build pipeline, discussed below.
I'm aware of rule #4, but I sought permission from the mod team before posting. I hope that's ok!
How it works behind the scenes
Each page lists a bunch of example commands and the output you can expect from them. In order to keep it 100% accurate, all of those commands are actually run in a sandbox Debian container as part of the CI/build process, and the outputs are checked against what will appear on the site. If anything differs*, the build fails and any new-but-incorrect content does not make it onto the site.
(* = most output is checked exactly, but there are some less restrictive methods - e.g. some outputs are checked by shape if, e.g., numbers or dates differ slightly, and sometimes line ordering is ignored if it's non-deterministic)
Each page also lists the sample data it works on at the top (if applicable) and links through to GitHub for any setup script and the code behind the page from the footer. Each page also provides the command to run the checks for that page on your own machine.
There's more detail about this on the About page
The build process outputs a bunch of static HTML that's then deployed to GitHub Pages, so the site itself ought to load really fast.
Here's the list of all the dedicated command pages. Here's pages for Troubleshooting, Concepts and Recipes (to name but a few of the page types under the "Guides" menu).
And finally, here's a link to the whole thing on GitHub: https://github.com/Synchronium/Debian.tips/
What's next
I have a bit of a plan I'm following, documented here: https://github.com/Synchronium/Debian.tips/blob/main/docs/plans/PLAN-CONTENT.md
Some interesting open questions at the mo:
- What the hell do I do when Debian 14 is released? Do I re-test everything and update the content for just that version? Or maybe pin the content to specific versions? Maybe I could add a table at the bottom of each page to show which specific versions the content works on?
- Similarly, should I think about similar systems to Debian, e.g. Raspberry Pi OS, or even Ubuntu? Maybe just a "This also works on Ubuntu" badge or something like that?
But any useful feedback you have will be prioritised ahead of this! At the end of the day, I'm building this for people, and you are the first bunch of people I've shown it to. I'd like to make this better for all of us (me included!)
Thanks for reading. I hope you find the site helpful. Please do let me know if you have any feedback - good or bad.