Building and running 32bit software on Devuan/Debian

August 13, 2023    Article    817 words    4 mins read

Modern 32bit software can be compiled and ran on any low-powered machine (like my Nokia Booklet 3G) with as low as an Intel Atom CPU and 1GB of RAM. Just make sure you have enough swap space (and maybe install a SSD instead of the old HDD) and don’t expect to compile Firefox or Chromium. You could cross-compile stuff on your beefier machine but that would be cheating, right?

IM: Ricochet Refresh πŸ‘

Ricochet Refresh is the new updated version of Ricochet, supported by Blueprint for Free Speech.. We are a non-government, not-for-profit organisation working to safeguard the freedom of expression for whistleblowers, activists, and everybody else, worldwide. Blueprint was the original sponsor of Ricochet, written by developer J. Brooks. source

$ sudo apt install cmake tor build-essential libprotobuf-dev \
	protobuf-compiler libssl-dev libfmt-dev qtbase5-dev qtdeclarative5-dev \
	qml-module-qtquick-layouts qml-module-qtquick-controls \
	qml-module-qtquick-dialogs qttools5-dev \
	qtmultimedia5-dev qtquickcontrols2-5-dev
$ git clone
$ cd ricochet-refresh
$ git submodule update --init src/extern/tor
$ mkdir build
$ cmake -S ./src -B ./build -G"Unix Makefiles" \
$ cmake --build ./build -j$(nproc)
$ sudo cmake --build ./build --target install

Builds and runs perfectly.

Lagrange πŸ‘

Lagrange is a desktop GUI client for browsing Geminispace. It offers modern conveniences familiar from web browsers, such as smooth scrolling, inline image viewing, multiple tabs, visual themes, Unicode fonts, bookmarks, history, and page outlines.

Like Gemini, Lagrange has been designed with minimalism in mind. It depends on a small number of essential libraries. It is written in C and uses SDL for hardware-accelerated graphics. OpenSSL is used for secure communications. source

$ sudo apt install cmake zip libsdl2-dev libssl-dev libpcre3-dev \
	zlib1g-dev libunistring-dev libfribidi-dev libmpg123-dev
$ git clone --recursive --branch release
$ mkdir lagrange-build && cd lagrange-build
$ cmake ../lagrange -DCMAKE_BUILD_TYPE=Release -DCMAKE_INSTALL_PREFIX=/usr
$ cmake --build .
$ cmake --build . --target install

Builds and runs perfectly.

Monero GUI πŸ‘Ž

Monero is a private, secure, untraceable, decentralised digital currency. You are your bank, you control your funds, and nobody can trace your transfers unless you allow them to do so. source

$ sudo apt install build-essential cmake miniupnpc libunbound-dev \
	graphviz doxygen libunwind8-dev pkg-config libssl-dev libzmq3-dev \
	libsodium-dev libhidapi-dev libnorm-dev libusb-1.0-0-dev libpgm-dev \
	libprotobuf-dev protobuf-compiler libgcrypt20-dev libboost-chrono-dev \
	libboost-date-time-dev libboost-filesystem-dev libboost-locale-dev \
	libboost-program-options-dev libboost-regex-dev libboost-serialization-dev \
	libboost-system-dev libboost-thread-dev qtbase5-dev qtdeclarative5-dev \
	qml-module-qtqml-models2 qml-module-qtquick-controls \
	qml-module-qtquick-controls2 qml-module-qtquick-dialogs \
	qml-module-qtquick-xmllistmodel qml-module-qt-labs-settings \
	qml-module-qt-labs-platform qml-module-qt-labs-folderlistmodel \
	qttools5-dev-tools qml-module-qtquick-templates2 libqt5svg5-dev
$ git clone --recursive
$ cd monero-gui
$ make release -j2


I was unable to build Monero GUI, probably because it requires way more than 1GB of RAM and the compiler processes get oom-killed. With ZRAM/ZSWAP it might work. Alternatively, you can compile and run the Monero CLI or just download the 32bit version.

IDE: JetBrains IDEs πŸ‘

The last version with 32bit support is the 2021.1 one, so make sure you download it and never upgrade. As an extra perk, this version can have the trial extended indifinitely, so there’s that.

JetBrains IDEs won’t run on JDK16 or JDK17, you’ll need to add some VM options to your bin/<IDE>.vmoptions file, where <IDE> can be clion, webstorm, phpstorm or whatever JetBrains IDE you are using.


Resetting the IDEs trial status can be done with a simple script (that can be ran when the trial expires):


rm -r ~/.config/JetBains/*/eval/*
sed -i 's/<property name="evlsprt.*>//' ~/.config/JetBrains/*/options/other.xml

Won’t run fast but they are usable. If the update popup is annoying, you can add the line to your /etc/hosts and the update nagging will stop. If you like the IDEs buy them, but it’s not worth if you’re using an expired version from several years ago.

Text editor: Sublime Text πŸ‘

Sublime Text 4 doesn’t work on 32bit CPUs anymore, but Sublime Text 3 does, so download the latest version ( here.

Runs perfectly.

Browser: Koumori πŸ‘

Koumori 蝙蝠 is a lightweight yet powerful web browser which runs just as well on little embedded computers named for delicious pastries as it does on beefy machines with a core temperature exceeding that of planet earth. And it looks good doing that, too. Oh, and of course it’s free software. Koumori is a fork of Midori 9.0 with additional features, mainly because the original Midori is dead. source

$ sudo apt install cmake valac libwebkit2gtk-4.0-dev libgcr-3-dev libpeas-dev \
	libsqlite3-dev libjson-glib-dev libarchive-dev intltool libxml2-utils
$ git clone
$ mkdir koumori/_build && cd koumori/_build
$ cmake -DCMAKE_INSTALL_PREFIX=/usr ..
$ make
$ sudo make install

Builds and runs perfectly.

Of course you can run latest version of Firefox if you can deal with the 2 minutes start-up time, but just in case you want something more minimal, use Koumori. Dillo or Dillo+ just won’t work with modern websites.