Hi shriker. I managed to install Arch Linux on an external USB of the DS
220+.
I'm trying to figure out how to control the fans and the LED at the moment, so by no means is it a completed project yet.
If you're hoping for an easy install process I'm sorry to disappoint you, but I can outline what I did - it's somewhat complicated and involves building a bootloader linux kernel. There may be an easier way, but this is what I did:
1. I built a bootloader linux kernel with an initramfs which contains kexec and libgpiod. The kexec program allows one to boot another linux kernel, and libgpiod allows one to enable GPIO pins (this is needed so that USB and HDD power is enabled). I created an init program in initramfs that enables the external USB, searches for my Arch Linux installation on external USB, then uses kexec to boot to my Arch Linux kernel
2. I copied the bootloader linux kernel and initramfs on to the USB DOM, added a new grub menu entry and configured grub to boot to my bootloader by defaut. I have not installed DSM, so do this I connected a USB->TTY adapter to the DS220+ (the serial connector is at the bottom of the DS220+). The DS220+ runs grub, and the grub menu will appear on the serial connection - after three seconds the DS220+ will boot to the DSM bootloader and will give you a login prompt. I found login information and how to mount the USB DOM by searching the internet.
3. I modified the initramfs on my Arch Linux installation to enable GPIO pins (for USB and HDD access)
For development I bought a Raspberry PI 4B as this has a USB device controller. I configured the USB for USB mass storage mode with VID/PID of F400/F400 (it won't be recognised by Synology otherwise), and this allowed me to load my bootloader linux kernel in grub from the external USB conveniently.