Manually installing packages on UnRAID
Update
UnRAID now has a plugin available named NerdTools. It is pretty much a continuation of the now-discontinued NerdPack plugin. Check it out! The original article is as follows, but is now outdated.
I noticed today that there was a new update for our home server, UnRAID 6.11.0. I didn’t think much of it as I clicked on “Update,” then rebooted the server. Well, it failed to come back on to the access panel after a reboot, and I panicked for about half an hour trying to get it to come back up.
Eventually, I figured out what went wrong. Starting from UnRAID 6.11.x, the NerdPack plugin had been deprecated, which meant it was automatically removed from the system during the update. One of the utilities provided by NerdPack was screen
– which, if you don’t know, is a utility that provides persistent terminal sessions (I’m pretty sure screen
has multiple other uses but that’s what I use it for) – and it had been removed alongside NerdPack. Unfortunately, the script that I used to update and run Tailscale (a VPN platform that allows you to link your devices together) relied on screen
, which meant the next time the server rebooted, it couldn’t connect to Tailscale, which is why I couldn’t access it remotely.
After fixing that problem, I wanted to document how to manually install packages on UnRAID, since the solution is strewn across multiple forum posts and comments and I just want one post I can refer back to when I need to install packages again. I will link all the forum posts and comments I referred to at the bottom of this post.
Figure out UnRAID base
UnRAID is built on top of Slackware, which means we need to figure out which Slackware version UnRAID is based off of. To do this, run the following command:
cat /etc/slackware-version
It should spit back something like:
Slackware 15.0+
Find the package you want to install
This page lists all the packages available on Slackware 15.0. (If you’re reading this in the future, change the URL based on the underlying Slackware version you found above.)
https://slackware.pkgs.org/15.0/slackware-x86_64/
Once you find it, click into the link and find the download URL. For example, the screen
package’s URL was https://slackware.pkgs.org/15.0/slackware-x86_64/screen-4.9.0-x86_64-1.txz.html, and once I went inside the download URL was next to the text “Binary Package,” with the following value: https://slackware.uk/slackware/slackware64-15.0/slackware64/ap/screen-4.9.0-x86_64-1.txz . Copy the URL into your clipboard.
Download the package to UnRAID
SSH (or mosh) into your UnRAID server and go into the /boot/extra
directory:
ssh tower
cd /boot/extra
The second part is important, because UnRAID automatically installs all packages found within that directory on first boot.
Then download the package using wget
:
wget <package download URL here>
For example, to download screen
, I ran:
wget https://slackware.uk/slackware/slackware64-15.0/slackware64/ap/screen-4.9.0-x86_64-1.txz
Start using the package without rebooting
At this point the package should be available for use if you reboot your UnRAID server. If you don’t want to reboot and want to start using the package immediately, run:
installpkg <package>
For example, to install screen
, I ran:
installpkg screen-4.9.0-x86_64-1.txz
You need to be in the directory where the package was downloaded!
Sources
Thanks to all of the users and developers on the UnRAID forums! I referenced the following posts and comments while writing this blog:
- https://forums.unraid.net/topic/35866-unraid-6-nerdpack-cli-tools-iftop-iotop-screen-kbd-etc
- https://forums.unraid.net/topic/35866-unraid-6-nerdpack-cli-tools-iftop-iotop-screen-kbd-etc/?do=findComment&comment=1159381
- https://forums.unraid.net/topic/35866-unraid-6-nerdpack-cli-tools-iftop-iotop-screen-kbd-etc/?do=findComment&comment=1172107