-
Notifications
You must be signed in to change notification settings - Fork 1
/
Copy pathLinux-groupindex.html
219 lines (148 loc) · 29.9 KB
/
Linux-groupindex.html
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
102
103
104
105
106
107
108
109
110
111
112
113
114
115
116
117
118
119
120
121
122
123
124
125
126
127
128
129
130
131
132
133
134
135
136
137
138
139
140
141
142
143
144
145
146
147
148
149
150
151
152
153
154
155
156
157
158
159
160
161
162
163
164
165
166
167
168
169
170
171
172
173
174
175
176
177
178
179
180
181
182
183
184
185
186
187
188
189
190
191
192
193
194
195
196
197
198
199
200
201
202
203
204
205
206
207
208
209
210
211
212
213
214
215
216
217
<!doctype html>
<html lang="en">
<head>
<meta charset="utf-8">
<title>Kevin Boone: Linux</title>
<link rel="shortcut icon" href="https://kevinboone.me/img/favicon.ico">
<meta name="msvalidate.01" content="894212EEB3A89CC8B4E92780079B68E9"/>
<meta name="google-site-verification" content="DXS4cMAJ8VKUgK84_-dl0J1hJK9HQdYU4HtimSr_zLE" />
<meta name="description" content="%%DESC%%">
<meta name="author" content="Kevin Boone">
<meta name="viewport" content="width=device-width; initial-scale=1; maximum-scale=1">
<link rel="stylesheet" href="css/main.css">
</head>
<body>
<div id="myname">
Kevin Boone
</div>
<div id="menu">
<a class="menu_entry" href="index.html">Home</a>
<a class="menu_entry" href="contact.html">Contact</a>
<a class="menu_entry" href="cv.html">CV</a>
<a class="menu_entry" href="software.html">Software</a>
<a class="menu_entry" href="articles.html">Articles</a>
<form id="search_form" method="get" action="https://duckduckgo.com/" target="_blank"><input type="text" name="q" placeholder="Search" size="5" id="search_input" /><button type="submit" id="search_submit">🔍</button><input type="hidden" name="sites" value="kevinboone.me" /><input type="hidden" name="kn" value="1" /></form>
</div>
<div id="content">
<h1>Linux</h1>
<div class="article-desc"><img class="article-list-image" src="img/notes.gif"/><a href="alsa_bitperfect.html">Can you use ALSA to get 'bit-perfect' audio playback on Linux?</a><p>Regardless of the subjective merits of 'bit-perfect' audio, is it technically possible on Linux?</p><p style="font-size: smaller">Categories: <a href="hifi-groupindex.html">hifi</a>, <a href="Linux-groupindex.html">Linux</a></p>
</div>
<div class="article-desc"><img class="article-list-image" src="img/tux.png"/><a href="artix.html">Adventures with Artix</a><p>Artix is a low-resource Linux that can be configured to run well on old, low-powered computer hardware. In this article, I describe my first attempts at setting it up.</p><p style="font-size: smaller">Categories: <a href="general_computing-groupindex.html">general computing</a>, <a href="Linux-groupindex.html">Linux</a></p>
</div>
<div class="article-desc"><img class="article-list-image" src="img/notes.gif"/><a href="back_to_alsa.html">Going back to ALSA in 2024</a><p>Not everybody likes Pulse audio or PipeWire. But is it practicable to abandon them in favour of traditional ALSA at this point?</p><p style="font-size: smaller">Categories: <a href="hifi-groupindex.html">hifi</a>, <a href="Linux-groupindex.html">Linux</a></p>
</div>
<div class="article-desc"><img class="article-list-image" src="img/tux.png"/><a href="bashcd.html">Extending the bash 'cd' command in Linux</a><p>The built-in cd command in the bash shell is not as smart as it could be; but it's a little fiddly to extend its functionality.</p><p style="font-size: smaller">Categories: <a href="Linux-groupindex.html">Linux</a></p>
</div>
<div class="article-desc"><img class="article-list-image" src="img/terminal.png"/><a href="clh_countdown.html">Command-line hacking: countdown timer</a><p>Using Linux date calculations to displaying a running countdown time in the terminal.</p><p style="font-size: smaller">Categories: <a href="Linux-groupindex.html">Linux</a>, <a href="command-line_hacking-groupindex.html">command-line hacking</a></p>
</div>
<div class="article-desc"><img class="article-list-image" src="img/terminal.png"/><a href="clh_foldericon.html">Command-line hacking: Assigning folder icons to directories</a><p>How to use basic Bash constructs, along with the Gnome gio utility, to assign folder icons to a set of directories.</p><p style="font-size: smaller">Categories: <a href="Linux-groupindex.html">Linux</a>, <a href="command-line_hacking-groupindex.html">command-line hacking</a></p>
</div>
<div class="article-desc"><img class="article-list-image" src="img/terminal.png"/><a href="clh_moonphase.html">Command-line hacking: calculating the phase of the Moon</a><p>How to use Bash shell arithmetic, along with the 'date' utilty, to calculate the phase of the Moon on a particlar day.</p><p style="font-size: smaller">Categories: <a href="Linux-groupindex.html">Linux</a>, <a href="command-line_hacking-groupindex.html">command-line hacking</a></p>
</div>
<div class="article-desc"><img class="article-list-image" src="img/terminal.png"/><a href="clh_newsman.html">Command-line hacking: displaying news headlines in the manual viewer</a><p>How to use tools like curl and xsltproc to retrieve news headlines from the BBC, and display them using the manual viewer</p><p style="font-size: smaller">Categories: <a href="Linux-groupindex.html">Linux</a>, <a href="command-line_hacking-groupindex.html">command-line hacking</a></p>
</div>
<div class="article-desc"><img class="article-list-image" src="img/terminal.png"/><a href="clh_paced_breathing.html">Command-line hacking: paced breathing</a><p>Using a Linux Bash script to generate audio/visual cues for timing paced breathing exercises.</p><p style="font-size: smaller">Categories: <a href="Linux-groupindex.html">Linux</a>, <a href="command-line_hacking-groupindex.html">command-line hacking</a></p>
</div>
<div class="article-desc"><img class="article-list-image" src="img/terminal.png"/><a href="clh_radio.html">Command-line hacking: querying an Internet radio database</a><p>Using Linux command-line utilities to query an on-line database of Internet radio stations.</p><p style="font-size: smaller">Categories: <a href="Linux-groupindex.html">Linux</a>, <a href="command-line_hacking-groupindex.html">command-line hacking</a></p>
</div>
<div class="article-desc"><img class="article-list-image" src="img/terminal.png"/><a href="clh_tags.html">Command-line hacking: extracting audio metadata (tags)</a><p>How to use Bash shell techniques to extract metadata (tags) from various audio file formats.</p><p style="font-size: smaller">Categories: <a href="Linux-groupindex.html">Linux</a>, <a href="command-line_hacking-groupindex.html">command-line hacking</a></p>
</div>
<div class="article-desc"><img class="article-list-image" src="img/terminal.png"/><a href="clh_temp.html">Command-line hacking: displaying system temperature</a><p>Using simple file and string handling techniques in the Bash shell.</p><p style="font-size: smaller">Categories: <a href="Linux-groupindex.html">Linux</a>, <a href="command-line_hacking-groupindex.html">command-line hacking</a></p>
</div>
<div class="article-desc"><img class="article-list-image" src="img/terminal.png"/><a href="clh_tide.html">Command-line hacking: creating a tide table</a><p>How to use Bash shell arithmetic to create a simple tide table</p><p style="font-size: smaller">Categories: <a href="Linux-groupindex.html">Linux</a>, <a href="command-line_hacking-groupindex.html">command-line hacking</a></p>
</div>
<div class="article-desc"><img class="article-list-image" src="img/terminal.png"/><a href="clh_weather.html">Command-line hacking: displaying a weather summary</a><p>How to use tools like curl, sed, and groff to retrieve a weather forecast from the BBC, and format it for the terminal.</p><p style="font-size: smaller">Categories: <a href="Linux-groupindex.html">Linux</a>, <a href="command-line_hacking-groupindex.html">command-line hacking</a></p>
</div>
<div class="article-desc"><img class="article-list-image" src="img/terminal.png"/><a href="clh_worldtime.html">Command-line hacking: timezone conversions</a><p>Using 'date' and 'timedatectl' to build a utility to help with scheduling meetings in different timezones.</p><p style="font-size: smaller">Categories: <a href="Linux-groupindex.html">Linux</a>, <a href="command-line_hacking-groupindex.html">command-line hacking</a></p>
</div>
<div class="article-desc"><img class="article-list-image" src="img/terminal.png"/><a href="console.html">Why the Linux console is so awesome</a><p>We've all gotten so used to graphical desktops that we're losing sight of how much can be accomplished on Linux using only a console. This is a shame, because efficient console-only operation is possible on a computer that would otherwise be fit only for landfill, and on modern high-efficiency devices with limited computing power.</p><p style="font-size: smaller">Categories: <a href="Linux-groupindex.html">Linux</a></p>
</div>
<div class="article-desc"><img class="article-list-image" src="img/terminal.png"/><a href="console_media_keys.html">Using media keys in a Linux console application</a><p>Mapping keyboard keys to key codes on Linux is well-documented for the graphical desktop. But what about console applications on embedded Linux systems? There's not much documentation in this area.</p><p style="font-size: smaller">Categories: <a href="Linux-groupindex.html">Linux</a>, <a href="C-groupindex.html">C</a>, <a href="embedded_computing-groupindex.html">embedded computing</a></p>
</div>
<div class="article-desc"><img class="article-list-image" src="img/container-logo.png"/><a href="containerfromscratch.html">Container from scratch: building a Linux container from the ground up</a><p>Containers have become increasingly important for Linux developers and administrators. A number of frameworks like LXC, Docker, and Podman are now available to automate the management of containers. However, all these frameworks rely on similar kernel features, particularly control groups, namespaces, and virtual networks. This article demonstrates how to build a functional container from first principles, using only simple command-line tools. It's objective is to make clear all the details that the more sophisticated tools conceal.</p><p style="font-size: smaller">Categories: <a href="Linux-groupindex.html">Linux</a>, <a href="containers-groupindex.html">containers</a></p>
</div>
<div class="article-desc"><img class="article-list-image" src="img/container-logo.png"/><a href="containerlimits.html">Why you can't rely on system calls to obtain limits, when running an application in a container</a><p>The notion of resource limits (on memory, CPU, etc) has never been very well-defined, and the use of container-based deployment makes the situation worse. This article describes why, and what can be done about it.</p><p style="font-size: smaller">Categories: <a href="Linux-groupindex.html">Linux</a>, <a href="containers-groupindex.html">containers</a></p>
</div>
<div class="article-desc"><img class="article-list-image" src="img/gtk-logo.png"/><a href="darktable.html">Yet another Darktable/Lightroom comparison</a><p>Darktable isn't supposed to be an alternative to Adobe Lightroom, but many people hope to use it as one. After all, Darktable's (free) pricing is very appealing. Here are my views on whether a move to Darktable makes sense.</p><p style="font-size: smaller">Categories: <a href="general_computing-groupindex.html">general computing</a>, <a href="Linux-groupindex.html">Linux</a></p>
</div>
<div class="article-desc"><img class="article-list-image" src="img/gears.png"/><a href="elfdemo.html">You be the linker -- building Hello, world from scratch, in hexadecimal</a><p>This article describes how to write a trivial program for Linux using no compiler tools at all, but entering machine language directly in hexadecimal. Because we can.</p><p style="font-size: smaller">Categories: <a href="software_development-groupindex.html">software development</a>, <a href="Linux-groupindex.html">Linux</a></p>
</div>
<div class="article-desc"><img class="article-list-image" src="img/java_logo.png"/><a href="execjava.html">Making a Java JAR file self-executing (on Linux)</a><p>A quick-and-dirty way to make it possible to execute Java JAR files at the prompt, without needing to invoke the JVM.</p><p style="font-size: smaller">Categories: <a href="software_development-groupindex.html">software development</a>, <a href="Java-groupindex.html">Java</a>, <a href="Linux-groupindex.html">Linux</a></p>
</div>
<div class="article-desc"><img class="article-list-image" src="img/display.png"/><a href="fbtextdemo.html">Using the FreeType library to render text nicely onto a Linux framebuffer</a><p>Writing graphical applications for minimal and embedded Linux systems can present a challenge. One of the problems is producing nicely-rendered text without the facilities that a graphical desktop would provide. This article describes how to use the FreeType library to render text to the Linux framebuffer.</p><p style="font-size: smaller">Categories: <a href="software_development-groupindex.html">software development</a>, <a href="C-groupindex.html">C</a>, <a href="Linux-groupindex.html">Linux</a>, <a href="embedded_computing-groupindex.html">embedded computing</a>, <a href="Raspberry_Pi-groupindex.html">Raspberry Pi</a></p>
</div>
<div class="article-desc"><img class="article-list-image" src="img/container-logo.png"/><a href="flatpak.html">Are Flatpak, et al., saving or drowning the Linux desktop?</a><p>Desktop Linux will take off next year -- or so people have been saying for years. Do desktop containerization technologies like Flatpak make this more, or less, likely?</p><p style="font-size: smaller">Categories: <a href="Linux-groupindex.html">Linux</a>, <a href="containers-groupindex.html">containers</a></p>
</div>
<div class="article-desc"><img class="article-list-image" src="img/tux.png"/><a href="gentoo_mx.html">Gentoo vs. MX Linux on old-ish laptops</a><p>It isn't easy to run Linux well on ten-year-old laptops -- Linux distribution maintainers no longer see this as a worthwhile endeavour. In this article I compare Gentoo and MX Linux as potential solutions to this problem.</p><p style="font-size: smaller">Categories: <a href="Linux-groupindex.html">Linux</a></p>
</div>
<div class="article-desc"><img class="article-list-image" src="img/tux_win.png"/><a href="gentoo_one_month.html">One month with Gentoo</a><p>Will my Gentoo journey be coming to an end after the first month?</p><p style="font-size: smaller">Categories: <a href="general_computing-groupindex.html">general computing</a>, <a href="Linux-groupindex.html">Linux</a></p>
</div>
<div class="article-desc"><img class="article-list-image" src="img/pia_logo.png"/><a href="gentoo_pia.html">Using Private Internet Access VPN with Gentoo Linux</a><p>It's not that difficult, but there's no built-in support.</p><p style="font-size: smaller">Categories: <a href="Linux-groupindex.html">Linux</a>, <a href="security-groupindex.html">security</a></p>
</div>
<div class="article-desc"><img class="article-list-image" src="img/tux_win.png"/><a href="gentoo_winux.html">Gentoo Linux -- is this the solution to the Winux problem?</a><p>Even seasoned Linux developers speak of Gentoo in hushed tones. It's not for the faint-hearted, that's for sure. But how stout-hearted must you be, for Gentoo to be appropriate?</p><p style="font-size: smaller">Categories: <a href="general_computing-groupindex.html">general computing</a>, <a href="Linux-groupindex.html">Linux</a></p>
</div>
<div class="article-desc"><img class="article-list-image" src="img/pi.png"/><a href="get_deb.html">Extracting software from the Raspbian repository, for assembling a custom Linux image for the Raspberry Pi</a><p>Using the official Raspian repository to assist the construction of a custom Linux for embedded applications is quick and convenient, compared to building everything from source. However, this approach has certain hazards.</p><p style="font-size: smaller">Categories: <a href="Linux-groupindex.html">Linux</a>, <a href="Raspberry_Pi-groupindex.html">Raspberry Pi</a>, <a href="embedded_computing-groupindex.html">embedded computing</a></p>
</div>
<div class="article-desc"><img class="article-list-image" src="img/display.png"/><a href="im-font-test.html">Using ImageMagick to generate anti-aliased bitmap fonts for a microcontroller's LCD display</a><p>This article describes how to generate and use compressed, anti-aliased font data, for use in a microcontroller application.</p><p style="font-size: smaller">Categories: <a href="C-groupindex.html">C</a>, <a href="Linux-groupindex.html">Linux</a>, <a href="embedded_computing-groupindex.html">embedded computing</a>, <a href="Pico-groupindex.html">Pico</a></p>
</div>
<div class="article-desc"><img class="article-list-image" src="img/notes.png"/><a href="langley_hill_blues.html">Creating an animated score for demonstrating musical compositions on YouTube, etc</a><p>Animated musical scores are quite common on YouTube, for educational and promotional purposes. This article explains how to create one, using OpenShot and other Linux tools.</p><p style="font-size: smaller">Categories: <a href="Linux-groupindex.html">Linux</a>, <a href="music-groupindex.html">music</a></p>
</div>
<div class="article-desc"><img class="article-list-image" src="img/life3d_logo.jpg"/><a href="life3d.html">Conway's Game of Life in 3D perspective</a><p>Implementing a program to run Conway's cell population simulation, using a 3D perspective view on the Linux framebuffer.</p><p style="font-size: smaller">Categories: <a href="software_development-groupindex.html">software development</a>, <a href="C-groupindex.html">C</a>, <a href="Linux-groupindex.html">Linux</a></p>
</div>
<div class="article-desc"><img class="article-list-image" src="img/tux_disk.png"/><a href="linux_encrypt_homedir.html">How Linux home directory encryption works</a><p>Encryption of home directories is out of favour in modern Linux distributions, but it offers some compelling advantages over the alternatives, if used with care.</p><p style="font-size: smaller">Categories: <a href="Linux-groupindex.html">Linux</a></p>
</div>
<div class="article-desc"><img class="article-list-image" src="img/tux_disk.png"/><a href="linux_offsite_storage.html">Comparing Dropbox, pCloud, and rsync.net for off-site storage for Linux users</a><p>For a Linux user in particular, which of these popular services is the most effective?</p><p style="font-size: smaller">Categories: <a href="Linux-groupindex.html">Linux</a></p>
</div>
<div class="article-desc"><img class="article-list-image" src="img/tux.png"/><a href="linux_snob.html">Ten steps to becoming a Linux snob</a><p>There was a time when merely being a Linux user set you apart from the common herd. These days, with Linux so ubiquitous, you'll need to take additional steps to make yourself out as one of the elite.</p><p style="font-size: smaller">Categories: <a href="Linux-groupindex.html">Linux</a></p>
</div>
<div class="article-desc"><img class="article-list-image" src="img/tux_disk.png"/><a href="linux_storage_cheatsheet.html">A Linux storage management cheat-sheet</a><p>This article outlines, with step-by-step examples, how to carry out the most fundamental Linux storage management tasks: partitioning a disk, creating a filesystem, setting up swap space, managing a logical volume management (LVM) storage pool, and configuring a RAID mirror.</p><p style="font-size: smaller">Categories: <a href="Linux-groupindex.html">Linux</a></p>
</div>
<div class="article-desc"><img class="article-list-image" src="img/display.png"/><a href="linuxfbc.html">Using the Linux framebuffer in C/C++ -- just the essentials</a><p>The absolute minimum information needed to start using the Linux framebuffer as a graphical display in C/C++ applications.</p><p style="font-size: smaller">Categories: <a href="software_development-groupindex.html">software development</a>, <a href="C-groupindex.html">C</a>, <a href="Linux-groupindex.html">Linux</a>, <a href="embedded_computing-groupindex.html">embedded computing</a></p>
</div>
<div class="article-desc"><img class="article-list-image" src="img/display.png"/><a href="linuxfbc2.html">Using the Linux framebuffer in C/C++ -- just the essentials (part 2)</a><p>This article continues my original framebuffer just the essentials article, by describing how to handle less straightforward framebuffer configurations.</p><p style="font-size: smaller">Categories: <a href="software_development-groupindex.html">software development</a>, <a href="C-groupindex.html">C</a>, <a href="Linux-groupindex.html">Linux</a>, <a href="embedded_computing-groupindex.html">embedded computing</a></p>
</div>
<div class="article-desc"><img class="article-list-image" src="img/tux_win.png"/><a href="morelikewindows.html">More like Windows every day</a><p>The ease of installation and use of modern desktop Linux distributions comes at a price. I review a couple of low-complexity alternatives to mainstream Linux distributions: Alpine and Devuan.</p><p style="font-size: smaller">Categories: <a href="general_computing-groupindex.html">general computing</a>, <a href="Linux-groupindex.html">Linux</a></p>
</div>
<div class="article-desc"><img class="article-list-image" src="img/tux_disk.png"/><a href="no_nvme.html">Fitting an NVMe disk in a computer with no NVMe support</a><p>Can you fit an NVMe solid-state drive into a computer that was made long before NVMe was invented? And should you?</p><p style="font-size: smaller">Categories: <a href="Linux-groupindex.html">Linux</a></p>
</div>
<div class="article-desc"><img class="article-list-image" src="img/pi.png"/><a href="pi-boot-sd.html">Making a Raspberry Pi bootable SD card from a root filesystem</a><p>You've created a custom Linux installation for the Raspberry Pi. How do you turn that into a bootable SD card image that can be distributed?</p><p style="font-size: smaller">Categories: <a href="Linux-groupindex.html">Linux</a>, <a href="Raspberry_Pi-groupindex.html">Raspberry Pi</a></p>
</div>
<div class="article-desc"><img class="article-list-image" src="img/button.png"/><a href="pi-button-to-kbd.html">Converting push-button events to keyboard events in the Raspberry Pi</a><p>The Raspberry Pi has a bunch of GPIO pins we can use to connect push-buttons. But how do we interface push-buttons to an application that expects only keyboard input?</p><p style="font-size: smaller">Categories: <a href="Raspberry_Pi-groupindex.html">Raspberry Pi</a>, <a href="electronics-groupindex.html">electronics</a>, <a href="Linux-groupindex.html">Linux</a></p>
</div>
<div class="article-desc"><img class="article-list-image" src="img/pi.png"/><a href="pi_audio.html">Rolling your own minimal embedded Linux for the Raspberry Pi -- part four: audio</a><p>This article is part of a series on building a customer Linux installation for a Raspberry Pi-based appliance. It explains how to install and set up the minimum software to get audio playback working.</p><p style="font-size: smaller">Categories: <a href="Raspberry_Pi-groupindex.html">Raspberry Pi</a>, <a href="Linux-groupindex.html">Linux</a>, <a href="embedded_computing-groupindex.html">embedded computing</a></p>
</div>
<div class="article-desc"><img class="article-list-image" src="img/pi.png"/><a href="pi_boot_shell.html">Rolling your own minimal embedded Linux for the Raspberry Pi -- part one: booting to a root shell</a><p>This article is part of a series on building a custom Linux installation for a Raspberry Pi-based appliance. It explains how to make a bootable SD card with Pi firmware, a Linux kernel, and a shell. It's about as minimal as a Linux system can be.</p><p style="font-size: smaller">Categories: <a href="Raspberry_Pi-groupindex.html">Raspberry Pi</a>, <a href="Linux-groupindex.html">Linux</a>, <a href="embedded_computing-groupindex.html">embedded computing</a></p>
</div>
<div class="article-desc"><img class="article-list-image" src="img/pi.png"/><a href="pi_early_init.html">Rolling your own minimal embedded Linux for the Raspberry Pi -- part two: early initialization</a><p>This article is part of a series on building a customer Linux installation for a Raspberry Pi-based appliance. It explains how to obtain and install fundamental utilities for use in a system with a read-only filesystem, and no package manager.</p><p style="font-size: smaller">Categories: <a href="Raspberry_Pi-groupindex.html">Raspberry Pi</a>, <a href="Linux-groupindex.html">Linux</a>, <a href="embedded_computing-groupindex.html">embedded computing</a></p>
</div>
<div class="article-desc"><img class="article-list-image" src="img/pi.png"/><a href="pi_minimal.html">Rolling your own minimal embedded Linux for the Raspberry Pi</a><p>Introducing a series of articles on building a custom Linux installation for the Raspberry Pi, for appliance applications.</p><p style="font-size: smaller">Categories: <a href="Raspberry_Pi-groupindex.html">Raspberry Pi</a>, <a href="Linux-groupindex.html">Linux</a>, <a href="embedded_computing-groupindex.html">embedded computing</a></p>
</div>
<div class="article-desc"><img class="article-list-image" src="img/pi.png"/><a href="pi_remote_access.html">Rolling your own minimal embedded Linux for the Raspberry Pi -- part three: services and remote access</a><p>This article is part of a series on building a customer Linux installation for a Raspberry Pi-based appliance. It explains how to set up a system which hitherto only boots to a root shell, to a network-aware installation with service management.</p><p style="font-size: smaller">Categories: <a href="Raspberry_Pi-groupindex.html">Raspberry Pi</a>, <a href="Linux-groupindex.html">Linux</a>, <a href="embedded_computing-groupindex.html">embedded computing</a></p>
</div>
<div class="article-desc"><img class="article-list-image" src="img/pi.png"/><a href="pi_x.html">Rolling your own minimal embedded Linux for the Raspberry Pi -- part five: X</a><p>It's entirely possible to run simple, X-based applications in an appliance-based Linux installation: you just have to dispense with the graphical desktop and all its baggage. This article explains how.</p><p style="font-size: smaller">Categories: <a href="Raspberry_Pi-groupindex.html">Raspberry Pi</a>, <a href="Linux-groupindex.html">Linux</a>, <a href="embedded_computing-groupindex.html">embedded computing</a></p>
</div>
<div class="article-desc"><img class="article-list-image" src="img/chip.png"/><a href="picoflash.html">Using flash memory as non-volatile storage on the Pi Pico microcontroller</a><p>The Pi Pico is an impressive microcontroller for its size and cost, but it lacks specific non-volatile memory. This article explains how to use the program flash ROM for that purpose.</p><p style="font-size: smaller">Categories: <a href="software_development-groupindex.html">software development</a>, <a href="C-groupindex.html">C</a>, <a href="Linux-groupindex.html">Linux</a>, <a href="embedded_computing-groupindex.html">embedded computing</a>, <a href="Pico-groupindex.html">Pico</a></p>
</div>
<div class="article-desc"><img class="article-list-image" src="img/chip.png"/><a href="pro-micro-usb-lcd.html">C-to-parallel IC</a><p>Make an auxiliary LCD display for a computer that displays data sent to it over a USB connection. Ready-made devices of this sort are widely available, but it's more fun to build your own.</p><p style="font-size: smaller">Categories: <a href="software_development-groupindex.html">software development</a>, <a href="C-groupindex.html">C</a>, <a href="Linux-groupindex.html">Linux</a>, <a href="embedded_computing-groupindex.html">embedded computing</a>, <a href="Arduino-groupindex.html">Arduino</a></p>
</div>
<div class="article-desc"><img class="article-list-image" src="img/tux_disk.png"/><a href="sort_fat.html">Sorting files and directories on a FAT-formatted USB memory stick</a><p>Many portable and automotive media players accept USB memory sticks or SD cards containing audio files. Very often, these players have no sorting logic, and display files and directories in the arbitrary order they appear in the filesystem. This article describes how to sort a FAT filesystem using Linux utilities, to make playback more convenient.</p><p style="font-size: smaller">Categories: <a href="hifi-groupindex.html">hifi</a>, <a href="Linux-groupindex.html">Linux</a></p>
</div>
<div class="article-desc"><img class="article-list-image" src="img/movieclip.jpg"/><a href="stopmotionlinux.html">Making simple stop-motion animations using Linux and a DSLR camera</a><p>Creating stop-motion animated movies using a DSLR camera and some basic Linux tools. It won't rival Pixar, but it's something to do with your kids on a rainy Sunday afternoon.</p><p style="font-size: smaller">Categories: <a href="science_and_technology-groupindex.html">science and technology</a>, <a href="Linux-groupindex.html">Linux</a></p>
</div>
<div class="article-desc"><img class="article-list-image" src="img/tux_win.png"/><a href="systemd_embedded.html">Why systemd is a problem for embedded Linux</a><p>I don't want to post yet another anti-systemd rant, but I think the ubiquity of systemd could eventually create real problems for embedded Linux. I just wish I knew what to do about it.</p><p style="font-size: smaller">Categories: <a href="Linux-groupindex.html">Linux</a></p>
</div>
<div class="article-desc"><img class="article-list-image" src="img/terminal.png"/><a href="vim1.html">A few interesting features of Vim, part 1</a><p>The Vim text editor is almost ubiquitous on Linux systems, and for good reasons. This is the first article in a series which seeks to uncover some handy features of Vim, that don't seem to be widely known.</p><p style="font-size: smaller">Categories: <a href="Linux-groupindex.html">Linux</a></p>
</div>
<div class="article-desc"><img class="article-list-image" src="img/tux.png"/><a href="wayland_ground_up.html">Wayland from the ground up</a><p>Wayland isn't new, but many of us have been able to avoid it until recently. With many Linux distributions now pushing Wayland hard -- even for the Raspberry Pi -- it's getting harder to justify ignoring it. This article is for people who have been hoping until now that Wayland will go away, particularly X developers, and don't know much about how it works</p><p style="font-size: smaller">Categories: <a href="Linux-groupindex.html">Linux</a></p>
</div>
<div class="article-desc"><img class="article-list-image" src="img/tux_win.png"/><a href="windows_smoking.html">Using Windows is like smoking (?)</a><p>As the Microsoft Windows user experience continues to worsen, what should Linux advocates do?</p><p style="font-size: smaller">Categories: <a href="general_computing-groupindex.html">general computing</a>, <a href="Linux-groupindex.html">Linux</a></p>
</div>
<p><span class="footer-clearance-para"/></p>
</div>
<div id="footer">
<a href="rss.html"><img src="img/rss.png" width="24px" height="24px"/></a>
<span class="last-updated">Last update Jan 08 2025
</span>
</div>
</body>
</html>