Linux swap over loopback devices


Some Linux filesystems do not natively support swapfiles as they do not implemented to required kernel calls. Notable amongst this list of filesystem is btrfs, whose snapshot functionality I use to streamline my backup system.

Unfortunately, some systems I maintain have a chronic lack of RAM and require a swapfile …

Category: linux Tags:

Gentoo pkg-config and cross-compilation


A note to myself (given that I’ve solved this issue a few times now).

If you’re attempting to cross-compile under Gentoo, and are using pkg-config, certain functionality will be silently disabled. Of particular note for my purposes is PKG_CONFIG_PATH, which I use as part of my autotools sub-package …

Category: code Tags:

Debugging with Library Interposition


At some point when debugging one will encounter a scenario where it is desirable to modify or observe an application’s interaction with an external library (or the system). Various techniques are available, but few are quite as straightforward as ‘library interposition’: the practice of overriding references to symbols from …

Category: code Tags:

KVM and WiFi


When developing cross-platform code, testing is critical. Access to various families of operating systems will allow rapid identification of (some) inadvertent platform specific assumptions. While there are some public testing services, like Travis CI, you will inevitably need to test locally at some point. I use a set of small …

Category: system Tags:

Cross platform unit testing with Wine and Autotools


My current project targets the Windows and Linux operating systems. Development is primarily under Linux and uses the Autotools build system. Windows binaries are generated with the mingw cross compilers. This setup isn’t for everyone, but it suits me quite well.

For my testing needs I use Automake’s …

Category: code Tags:

Coherent Noise Generation: First Principles

Category: misc Tags:

Bitcoin Exchange API Observations


A new project has prompted me to investigate the trading APIs belonging to a number of Bitcoin exchanges. It's been a fun few weeks and I've learned a lot about an area I've never really watched in the past.

Credit has to be given to Vault of Satoshi and justcoin …

Category: code Tags:

Imaging Misconceptions: Resolution


Every few weeks I come across questions on my regular photography forums which indicate a deep misunderstanding of what is actually occuring under the hood of some popular piece of imaging software.

The most common misconception I see is that a photographic image has an inate physical size, or DPI …

Category: imaging Tags:

Comparing Photographic Lens Weights


As part of a current project I have access to (mostly complete) metadata on over 200 lenses across a range of consumer vendors. As part of a test to visualise discrepencies in the collected data I managed to construct a few plots of basic metadata over focal length.

As a …

Category: data Tags:

Improving Linux Font Rendering


After spending the better part of a day reinstalling my operating system (protip: don't uninstall your system compiler if you're running a source based distro), I finally got my system back to the point where I had a browser and email.

Immediately the text rendering in Chromium stood out as …

Category: conf Tags:

© gim 2016

Powered by Pelican