building deno 1.44.0 with rust 1.78 on a raspberry pi 5

Deno built with Rust

Rust 1.78 is available for this platform, so we’ll build Deno from its sources via Rust.

First, if you haven’t already, install Rust following the very simple directions on the Rust website ( https://www.rust-lang.org/learn/get-started ). Be advised that you’ll need to install curl and protobuf-compiler; the first to handle the installation of Rust, and the second to handle the build of deno. You should install these two packages before installing Rust and then using Rust to build deno.

After installing the two packages mentioned earlier and then installing Rust, perform cargo install deno and then go away for about 45 minutes until it’s done.

Why do it this way? First because you should install Rust, and install it locally to your login account, not globally. Second, because once again if you use apt to install rust, you only get version 1.74, not the current 1.78 stable release. When you install rust using the website’s method, you also get rustup, which allows you to keep your copy of Rust up-to-date. And if you want to do any kernel development you’ll need an up-to-date kernel (which you do have) and versions of Rust greater than or equal to version 1.77. Third, when you build deno yourself you get a whole slew of Rust crates that you can tinker with in other projects. Finally, you should use deno over node.js because the same creator of node, Ryan Dahl, is also the creator of deno; deno is far more robust and secure than node.js.

Finally, to learn more about deno and how to use it, go to https://docs.deno.com/runtime/manual and have at it.

building neovim 0.10.0 on raspberry pi 5 ubuntu 24.04

neovim 0.10.0 running on a Raspberry Pi 5 under Ubuntu 24.04 inside the neovim 0.10.0 sources

I’m always vacillating between editors. A lot of times I get lazy and live inside Visual Studio Code. A lot of time I will fire up vim because I just want to do some code editing without the excess baggage, and if I need to do another task while writing in Rust for example I’ll open another console to perform that task, such as executing cargo build or cargo run. Sometimes I’ll even fire up an up-to-date version of Emacs, up-to-date as defined by me pulling the latest sources and building it myself.

For about a year now I’ve been using neovim ( https://github.com/neovim/neovim ) since it hit version 0.8.0. Furthermore I have my neovim configured with AstroNvim ( https://astronvim.com/ ) with no changes. Works fine for what I want and need. I have neovim installed everywhere, from Linux Mint to all my MacBook Pros, and even to my lowly Raspberry Pi 5. The big difference between the Pi and every other system is that there is no prebuilt binary for aarch64 on the Raspberry Pi. So I pulled down the sources and successfully built it.

The directions for building neovim are clear enough that even a retired old trained monkey such as myself can successfully build and deploy a working copy. If you can read and follow directions then you’re golden. I knew this wasn’t going to be a problem because I build neovim 0.9.5 for Ubuntu 23.10 when it was running on my Pi. And before you ask, yes, you can have apt install neovim 0.9.5 and be done with it. But 0.10.0 has been out for a while now, and as I always want the latest stable release, and Ubuntu is notorious for only installing whatever versions it had when it was officially released, I just built it.

Building neovim took all of about five minutes. In the grand scheme of things that’s nothing. And because I built it I now have another up-to-date tool in my toolbox that makes code development, dare I say it, fun.