Posts

  • Update: MSI Installer for GNU Emacs 29.3 for Windows

    Following the GNU Emacs 29.3 release, my MSI installer for GNU Emacs has been updated! (continue reading)

  • Update: MSI Installer for GNU Emacs 29.1 for Windows

    Following the GNU Emacs 29.1 release, my MSI installer for GNU Emacs has been updated! (continue reading)

  • Update: MSI Installer for GNU Emacs 28.2 for Windows

    Following the GNU Emacs 28.2 release, my MSI installer for GNU Emacs has been updated! (continue reading)

  • Update: MSI Installer for GNU Emacs 28.1 for Windows

    Following the GNU Emacs 28.1 release, my MSI installer for GNU Emacs has been updated! (continue reading)

  • Update: MSI Installer for GNU Emacs 27.2 for Windows

    Following the GNU Emacs 27.2 release, my MSI installer for GNU Emacs has been updated! (continue reading)

  • Installing Entware on an Android-powered device: Entware Installer Module for Magisk

    You may have an old unused Android-powered phone lying around, or you may have a set-top box which remains unused most of the time, so you want to make it to work also as a home WEB-server. Maybe you are geeky enough for an idea of carrying a Linux-powered server in your pocket. Or you would like to improve the functionality of your Android phone to include a package manager which simplifies installation of a large number of server-side software and development tools. These are only the reasons for installing Entware on an Android-powered device I can imagine. Everyone can have his or her reasons for doing so. (continue reading)

  • Update to My 'daemonize' Library

    I have updated my tiny C library for writing Unix daemons. (continue reading)

  • Update: MSI Installer for GNU Emacs 27.1 for Windows

    Following the GNU Emacs 27.1 release, my MSI installer for GNU Emacs has been updated! (continue reading)

  • Finding the Square Root of a Number Without Using the Standard Library (Newton's Method)

    In this short post, I want to show a way to find the square root of a positive number without relying on the standard library using Newton's method. This is the method which seems to be used in many implementations of the C standard library. The example code is in the C programming language. Before going to the implementation, I provide the mathematical formulae used. (continue reading)

  • Facilities for Context Switching and Coroutines on AVR microcontrollers (and AVR-based Arduino boards)

    In this short post, I want to present a small project on which I have been working for the last couple of weeks. It is a small library to control an AVR micro-controller execution context. Additionally, it can be used on AVR-based Arduino boards. (continue reading)

  • High-Quality Video Playback on Linux

    Some programs are so damn good that you start to see them without any relation to the platform on which they run. In this case, you start looking for their substitutes if you are unable to use them on some platforms, often without success. In my opinion, one of the better combinations for video playback is Media Player Classic Home Cinema in combination with MadVR video renderer. It is rather hard to beat this combination, but there is a very good, open-source alternative available on Linux: mpv+SMPlayer. In this post, I am going to describe how I essentially repeated my configuration for high-quality video playback on Linux. (continue reading)

  • Update: MSI Installer for GNU Emacs 26.3 for Windows with Per-User Installation Support

    I have been working on improving Emacs installer for Windows to add support both per-user and per-machine installations. It was made to address the installation issues of users without administrative privileges. This post is a follow up to a post I have made recently. (continue reading)

  • Update: MSI Installer for GNU Emacs 26.3 for Windows

    Following the GNU Emacs 26.3 release, my MSI installer for GNU Emacs has been updated! (continue reading)

  • Integrating Xfce with LightDM Display Manager

    One of the most basic security features of any laptop or workstation is the ability to lock the sscreen. It might be convenient in many other, non-security related, scenarios as well. In most cases, this feature works without user's intervention on most of the Linux distributions, yet it did not work for me in Xfce4 with LightDM on Arch Linux. As I understand, Xfce does not have its display manager, so it relies on third-party solutions, mostly Gnome Display Manager (GDM). As I prefer Xfce as my desktop environment, I did not want to install GDM as it needs many Gnome libraries to work. Because of this, I decided to use LighDM as my display manager, which is more desktop environment agnostic and lightweight. Unfortunately, Xfce lacks proper integration with it (at least in Arch Linux). In this post, I want to provide a solution to this problem. Moreover, I believe that information in this post might give some ideas to the users of the other desktop environments and window managers on how to integrate them with LightDM. (continue reading)

  • Using LightDM with an External Monitor on a Laptop or with the Multi-monitor Setups

    Like many other users, I find it convenient to connect an external monitor to my laptop sometimes. As I often do this, I expect this functionality to work flawlessly but, unfortunately, I experienced some problems when using LightDM on Arch Linux . By default, LightDM tries to mirror data on multiple displays, and it does not work well when you have monitors with different resolutions. In this post, I want to share my solution to this problem. I expect that this solution might be useful not only for laptop users but for the workstation users with multi-monitor setups as well. Moreover, if LightDM's user interface sometimes stops responding to your actions, this post might be useful for you. (continue reading)

  • Update: MSI Installer for GNU Emacs 26.2 for Windows

    Following the GNU Emacs 26.2 release, my MSI installer for GNU Emacs has been updated! (continue reading)

  • Querying Windows Registry from Emacs Lisp

    Recently I needed to query registry values from within Emacs. Emacs, being a cross-platform application mostly tailored to work on UNIX-like operating systems, lacks this functionality. As you can expect, I ended up writing a code which accomplishes the task. (continue reading)

  • Fixing Sleep Mode Issues in Windows 10 (8.1/8) by Disabling InstantGo Mode

    Recently I have encountered a problem while using a new laptop - sleep mode did not work reliably. Sleep mode is an important feature for me, so this state of affairs was not acceptable. The fix was rather illogical and it is impossible to accomplish via settings in the graphical user interface tools provided by the Windows operating systems. If you have newer hardware and ever encountered the issues when your Windows-based laptop will not go into sleep mode or will not wake up reliably, or you would put your laptop into sleep mode only to find two hours later that it is active and hot in your backpack - please, continue reading. Probably I have a solution for you worth investigating. (continue reading)

  • MSI Installer for GNU Emacs

    If you use GNU Emacs on Windows you might have noticed that on the official site the only download option for this platform is a ZIP-archive, no installer is provided. It is, of course, a very compatible option and, probably, most of the GNU Emacs users can integrate it with the operating system manually. Nevertheless, I think that there is no need to make it harder than it should be. It would be great if there was an installer. (continue reading)

  • Personal Notes on Corman Lisp 3.1 Release

    Today, as I announced earlier, the Corman Lisp 3.1 has been released after more than a decade-long break. Somehow it happened that I am one of the active maintainers of the Corman Lisp, so, I think, it might be appropriate to make a post on this site about how I became a maintainer, what motivated me to work on it and why I believe it is important. You will not find the release notes here because I think it is not the right place to post them. If you have at least mild interest in this implementation, I would suggest you to continue reading. (continue reading)

  • A Handmade External Antenna For a Mobile Modem or Router

    Recently I have completed my tiny DIY-project: an external antenna for a 3G modem/router so I decided to make a post to provide some additional details as well as to publish some photographs. You can find them at the end of the post. (continue reading)

  • Daemonize - a Tiny C Library for Programming the UNIX Daemons

    Whatever they say, writing System-V style UNIX daemons is hard. One has to follow many rules to make a daemon process behave correctly on diverse UNIX flavours. Moreover, debugging such a code might be somewhat tricky. On the other hand, the process of daemon initialisation is rigid and well defined so the corresponding code has to be written and debugged once and later can be reused countless number of times. (continue reading)

  • Fixing Emacs's FlySpell Mode for Texts with Multiple Alphabets

    Recently I have encountered a problem in Emacs when using flyspell-buffer command to spell-check a text in Emacs. I tracked down the problem and decided to report the bug. (continue reading)

  • dumpmem() - a Function to Dump an Area in RAM in Hexadecimal Format

    Today I want to share with you some code which helped me to track down a problem in a rather complex networking VoIP application. I believe it might be useful in other scenarios as well. (continue reading)

  • Persistent Remote Terminal Session With TMUX

    The first thing I install on every UNIX machine on which I have enough administrative rights is tmux (terminal multiplexor) - I feel uncomfortable to connect to it via SSH otherwise. For example, you could encounter some problems with your Internet connection - any sudden disconnect might disrupt a lengthy operation like backup which might have been initiated from within the remote terminal session. I want my remote session to be persistent. (continue reading)

  • Launch!

    So, here goes yet another technical blog. The need to make one emerged after the realisation that I miss technical writing a lot since I left a university. Moreover, I hope that it will help me to improve my written English. (continue reading)

subscribe via RSS