Feed digilinux.ru [copy] http://digilinux.ru/feed/ has loading error: cURL error 22: The requested URL returned error: 403 Forbidden
Feed freepost [copy] https://freepo.st/rss/new has loading error: cURL error 6: Could not resolve host: freepo.st
State of Sway August 2017
Is it already time to write another one of these? Phew, time flies. Sway marches ever forward. Sway 0.14.0 was recently released, adding much asked-after support for tray icons and fixing some long-standing bugs. As usual, we already have some exciting features slated for 0.15.0 as well, notably some cool improvements to clipboard support. Look forward to it!
Today Sway has 24,123 lines of C (and 4,489 lines of header files) written by 94 authors across 2,345 commits. These were written through 689 pull requests and 624 issues. Sway packages are available today in the repos of almost every Linux distribution.
For those who are new to the project,...
Game Engine Black Book ReleaseDate
How was Wolfenstein 3D made and what were the secrets of its speed? How did id Software manage to turn a machine designed to display static images for word processing and spreadsheet applications into the best gaming platform in the world, capable of running games at seventy frames per seconds? If you have ever asked yourself these questions, Game Engine Black Book is for you.
This is an engineering book. You will not find much prose in it (the author’s English is broken anyway.) Instead, this book has only bit of text and plenty of drawings attempting to describe in...
OpenMoko: 10 Years After (Mickey’s Story)
For the 10th anniversary since the legendary OpenMoko announcement at the „Open Source in Mobile“ (7th of November 2006 in Amsterdam), I’ve been meaning to write an anthology or – as Paul Fertser suggested on #openmoko-cdevel – an obituary. I’ve been thinking about objectively describing the motivation, the momentum, how it all began and – sadly – ended. I did even plan to include interviews with Sean, Harald, Werner, and some of the other veterans. But as with oh so many projects of (too) wide scope this would probably never be completed. As November 2016 passed without any progress, I...
2017-07-03
The suckless.org project is now hosted on a new server. All inactive accounts have been removed during the relocation.
Please note that the new ECDSA key fingerprint is SHA256:7DBXcYScmsxbv7rMJUJoJsY5peOrngD4QagiXX6MiQU.
Archive it or you will miss it
Let’s open with some quotes from the Wikipedia article on link rot:
In 2014, bookmarking site Pinboard’s owner Maciej Cegłowski reported a “pretty steady rate” of 5% link rot per year… approximately 50% of the URLs in U.S. Supreme Court opinions no longer link to the original information… (analysis of) more than 180,000 links from references in… three major open access publishers… found that overall 24.5% of links cited were no longer available.
I hate link rot. It’s been common when servers disappeared or domains expired, in the past and still today. Today, link rot is on the rise under the influence of more sinister factors. Abuse of DMCA. Region...
An introduction to Wayland
Wayland is the new hotness on the Linux graphics stack. There are plenty of introductions to Wayland that give you the high level details on how the stack is laid out how applications talk directly to the kernel with EGL and so on, but that doesn’t give you much practical knowledge. I’d like to instead share with you details about how the protocol actually works and how you can use it.
Let’s set aside the idea that Wayland has anything to do with graphics. Instead we’ll treat it like a generic protocol for two parties to share and talk about resources. These resources are at the heart...
Limited "generics" in C without macros or UB
I should start this post off by clarifying that what I have to show you today is not, in fact, generics. However, it’s useful in some situations to solve the same problems that generics might. This is a pattern I’ve started using to reduce the number of void* pointers floating around in my code: multiple definitions of a struct.
Errata: we rolled this approach back in wlroots because it causes problems with LTO. I no longer recommend it.
Let’s take a look at a specific example. In wlroots, wlr_output is a generic type that can be implemented by any number of backends, like DRM (direct rendering manager), wayland windows, X11...
Rotating passwords in bulk in the wake of security events
I’ve been putting this post off for a while. Do you remember the CloudFlare security problem that happened a few months ago? This is the one that disclosed huge amounts of sensitive information for huge numbers websites. When this happened, your accounts on thousands of websites were potentially compromised.
Updating passwords for all of these services at once was a major source of frustration for users. Updating a single password can take 5 minutes, and changing dozens of them might take hours. I decided that I wanted to make this process easier.
$ ./pass-rotate github.com linode.com news.ycombinator.com twitter.com Rotating github.com... Enter your two factor (TOTP) code: OK Rotating linode.com... Enter...Drew DeVault's blog
Building a "real" Linux distro
I recently saw a post on Hacker News: “Build yourself a Linux”, a cool project that guides you through building a simple Linux system. It’s similar to Linux from Scratch in that it helps you build a simple Linux system for personal use. I’d like to supplement this with some insight into my experience with a more difficult task: building a full blown Linux distribution. The result is agunix, the “silver unix” system.
For many years I’ve been frustrated with every distribution I’ve tried. Many of them have compelling features and design, but there’s always a catch. The popular distros are stable and portable, but cons include bloat, frequent...