• Software problem: LSP not working with clangd on NixOS

    It took me quite a while to find out how to make Language Server Protocol working with C/C++ on NixOS. clangd couldn’t find any standard header files and complained that “pp file not found”. The trick to make it working is adding clang-tools to nativeBuildInputs in shell.nix. To make clang compiling the programs on the […]

  • The most appreciated piece of code I’ve ever written

    Some people like CamelCase. Some don’t but they still have to deal with it. So I once wrote and posted a utility that displays UnreadableIdentifiers properly, as Unreadable_Identifiers. The reactions were surprising. rms said the utility “is bizarrely creative”. Several people sent me thankful e-mails. And it is pleasing to see that even more than […]

  • File synchronization

    I was looking for a way to synchronize files on my devices. My devices are of different kinds (GNU/Linux, OpenWRT, Android) and I have several folders to be shared with different sets of devices. I could find three basic tools that could be useful for the purpose. Available options One of the obvious choices is […]

  • Moving from KDE to Emacs

    When I started using EXWM, I thought that using it together with KDE would be the best combination. But then my Plasma configuration self-destructed by chance, I had to recover it from backup and I started thinking what and how much I actually need from KDE exactly. The basic principle is simple: Things are easier […]

  • Emacs interface to PipeWire

    I couldn’t find any Emacs interface to PipeWire. So I wrote one.

  • More fun with EXWM

    I have recently started using EXWM, an Emacs window manager. It’s very useful as a window manager itself but it also provides additional functionality and opens new possibilities. Starting EXWM automatically in KDE EXWM allows, similarly to other window managers, replacing an already running window manager. Now I’m confident about it enough and start it […]

  • Using EXWM

    I sometimes miss useful things. For example, many years ago, I missed emerging Org Mode, not recognizing its potential, only to discover some years later how essential tool it is. And the same happened to me with EXWM, an Emacs window manager. I’ve always thought that making a window manager in Emacs is a crazy […]

  • Emacs tabs as workspaces

    I used to use Emacs frames as workspaces. But reading through Emacs 28 NEWS reminded me that tab bars could be probably better used for the purpose. And indeed, using tab bars is simpler and looks like a very good fit. First some initial settings: (tab-bar-mode 1) (tab-bar-history-mode 1) (custom-set-variables ‘(tab-bar-show nil)) (tab-bar-rename-tab “emacs”) They […]

  • Software problem: Deleting Btrfs subvolumes

    Internet is no longer full of Btrfs horror stories so I decided to use Btrfs when I reinstalled my desktop computer with NixOS. It has some nice features, like subvolumes, compression and cooperation with Podman. I still prefer ZFS but due to its weird license it’s not included in Linux and one can fall into […]

  • Software problem: Compiling Emacs vterm module on NixOS

    I started using NixOS again some time ago. The fact that NixOS doesn’t use Filesystem Hierarchy Standard is sometimes a big source of pain and complications. One non-obvious thing for beginners is how to compile a C program. One C program that is very useful and must be compiled locally is emacs-libvterm C module, providing […]