Skip to content

Instantly share code, notes, and snippets.

@phatpaul
Last active July 22, 2024 15:26
Show Gist options
  • Save phatpaul/3cba5f961ba19b923989feb5162bf5a1 to your computer and use it in GitHub Desktop.
Save phatpaul/3cba5f961ba19b923989feb5162bf5a1 to your computer and use it in GitHub Desktop.
Volumio3 Plugin Manual install

How to install a plugin in Volumio3 manually

(i.e. you don't want to create and login with a volumio.com account).

Enable SSH access to volumio3 box

Navigate to http://volumio.local/dev or http://yourvolumioip/dev, where 'yourvolumioip' is the actual IP address of your device eg. 192.168.33.45.

Find the SSH section, and click 'enable'. From now on your SSH will be permanently enabled.

SSH into volumio box. Username volumio, password volumio. ssh [email protected]

Check free space on root partition

Check the filesystems df -h

volumio@volumio:~$ df -h
Filesystem             Size  Used Avail Use% Mounted on
/dev/mmcblk0p2         2.5G  544M  1.8G  24% /imgpart
/dev/loop0             479M  479M     0 100% /static
overlay                131M  128M     0 100% /
tmpfs                  3.9G   36K  3.9G   1% /tmp
/dev/mmcblk0p1          91M   66M   25M  73% /boot
//192.168.33.75/music  233G  218G   15G  94% /mnt/NAS/mymusic
tmpfs                  785M     0  785M   0% /run/user/1000
... # omitted some lines
  • You may notice that there is very little free space on the root. See the Use% is 100%!
  • If you have lots of free space, then skip the rest of this section.

Check the partitions lsblk

volumio@volumio:~$ lsblk
NAME        MAJ:MIN RM   SIZE RO TYPE MOUNTPOINT
loop0         7:0    0 478.1M  0 loop /static
mmcblk0     179:0    0 119.1G  0 disk 
├─mmcblk0p1 179:1    0  91.6M  0 part /boot
├─mmcblk0p2 179:2    0   2.5G  0 part /imgpart
└─mmcblk0p3 179:3    0 116.5G  0 part 
  • You may notice a large unused partition mmcblk0p3.

Check the mount points mount

volumio@volumio:~$ mount
/dev/mmcblk0p2 on /imgpart type ext4 (rw,relatime)
/dev/loop0 on /static type squashfs (ro,relatime,errors=continue)
overlay on / type overlay (rw,relatime,lowerdir=/mnt/static,upperdir=/mnt/ext/dyn,workdir=/mnt/ext/work)
tmpfs on /var/log type tmpfs (rw,nodev,relatime,size=20480k,mode=777,uid=1000,gid=4)
tmpfs on /tmp type tmpfs (rw,noatime,mode=755)
/dev/mmcblk0p1 on /boot type vfat (rw,nosuid,nodev,noexec,relatime,fmask=0111,dmask=0000,allow_utime=0022,codepage=437,iocharset=ascii,shortname=mixed,utf8,errors=remount-ro,user)
//192.168.33.75/music on /mnt/NAS/mymusic type cifs (ro,relatime,vers=3.1.1,cache=strict,username=user,uid=0,noforceuid,gid=0,noforcegid,addr=192.168.33.75,file_mode=0666,dir_mode=0777,iocharset=utf8,soft,nounix,serverino,mapposix,rsize=4194304,wsize=4194304,bsize=1048576,echo_interval=60,actimeo=1,closetimeo=1)
tmpfs on /run/user/1000 type tmpfs (rw,nosuid,nodev,relatime,size=803604k,mode=700,uid=1000,gid=1000)
... # omitted some lines
  • Notice that overlayfs is mounted at the root: overlay on / type overlay (rw,relatime,lowerdir=/mnt/static,upperdir=/mnt/ext/dyn,workdir=/mnt/ext/work) And notice that the overlay is composed by 3 mount points. But the upperdir and workdir don't seem to be mounted. I guess that is what the 3rd unused partition is for.
sudo mkdir -p /mnt/ext
sudo mount /dev/mmcblk0p3 /mnt/ext
volumio@volumio:~$ ll /mnt/ext/
total 19
drwxr-xr-x 6 root root  1024 Dec 31  1969 .
drwxrwxrwx 1 root root  1024 Jul 22 10:31 ..
drwxrwxrwx 9 root root  1024 Dec 31  1969 dyn
drwx------ 2 root root 12288 Jun  4 14:41 lost+found
drwxrwxrwx 2 root root  1024 Dec 31  1969 union
drwxrwxrwx 3 root root  1024 Dec 31  1969 work

There's the missing mount points for the overlay! Let's try to remount the overlay to make use of those dirs. sudo mount -o remount /

volumio@volumio:~$ df -h
Filesystem             Size  Used Avail Use% Mounted on
/dev/mmcblk0p2         2.5G  544M  1.8G  24% /imgpart
/dev/loop0             479M  479M     0 100% /static
overlay                131M  128M     0 100% /
/dev/mmcblk0p1          91M   66M   25M  73% /boot
/dev/mmcblk0p3         131M  128M     0 100% /mnt/ext
... # omitted some lines

Hmm, overlay is still at 100 Use%, and also notice that /dev/mmcblk0p3, which we mounted at /mnt/ext is also at 100%. The total size is only 131M. So the problem isn't that this partition has not been mounted, the actual problem is that the partition has not been expanded to fill the SD card. (I don't know why it doesn't look like it is mounted.)

Enlarge the partition: sudo fdisk -u /dev/mmcblk0

p to print the partition table, take note of the number, start, end, type.

Delete it: d: (3)

Recreate it using command n with same number (3), start and type but with a bigger end. I like to reserve 10% of the SD card space as unallocated for "over-provisioning". E.g. for a 128G SD card, I choose -12G for the size to use all but the last 12G.

Then w to write and quit.

Now resize the filesystem: sudo resize2fs /dev/mmcblk0p3

volumio@volumio:~$ df -h
Filesystem             Size  Used Avail Use% Mounted on
/dev/mmcblk0p2         2.5G  544M  1.8G  24% /imgpart
/dev/loop0             479M  479M     0 100% /static
overlay                102G  128M   97G   1% /
/dev/mmcblk0p1          91M   66M   25M  73% /boot
/dev/mmcblk0p3         102G  128M   97G   1% /mnt/ext
... # omitted some lines

Now / is at 1% Use. Try a reboot to make sure it sticks.

Install plugin manually

In your home dir on the volumio box, clone the git repo of the plugins:

cd ~
git clone https://github.com/volumio/volumio-plugins-sources.git
cd volumio-plugins-sources

Install plugins with the CLI tool:

# pick a plugin to install, i.e.:
cd radio_paradise
volumio plugin install

Note: I also had to enable the plugin via the GUI after installing.

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment