LockerGnomeFor serious tech professionals with a silly side.
Subscribe

Search

Hacks & Buildsraspberry-pihomelabself-hostingai

Introvert Programmer Built a Raspberry Pi 5 NAS From Two Old Laptop Drives, With an Arabic-Speaking AI Assistant You Can Call

A Jordan-based YouTuber put a Raspberry Pi 5, two spare laptop hard drives, a 3D-printed tower and a touch screen together to replace Google Drive, Google Photos and Google Search at home, and published every part, model and line of code.

Chris sits at a small desk wiring two old laptop drives to a tiny circuit board while a desk phone beside him rings
Illustration: LockerGnome

“What if I told you I replaced most of the services I pay for, like cloud storage and other services, with this device, which is smaller than my calculator?” That’s how the video opens. The device is a Raspberry Pi 5 in a short black tower, and the two hard drives inside it came out of old laptops: a 320 GB WD Blue and a 160 GB WD Scorpio Blue.

The repo’s README puts the whole build in one sentence: “This is my home NAS, built on a Raspberry Pi 5: two old laptop hard drives, CasaOS with Docker apps, my own AI assistant (Nur) that you can chat with or call, a 3D-printed case and a 3.5” touch screen running my own firmware.” And it keeps the promise most build videos only make: “Everything from the video is in this repo: the parts, the 3D models and measurements, and all the software.”

The app list is the subscription hit list. His decision notes say Nextcloud, Jellyfin and Immich “replace the cloud subscriptions most people pay for,” standing in for Google Drive, a streaming service for your own movies, and Google Photos. SearXNG replaces the search box, because “when I search for something in Google Chrome, the first thing I often get is an AI Overview that isn’t useful to me.” CasaOS sits on top so you click Install instead of writing Docker files.

The power supply got real testing. Laptop drives sip power, but two of them spinning up at once is too much for the Pi’s USB ports: “when I ran two drives on the Pi’s USB power alone, the second one froze for 30 s every time they spun up.” So the build feeds them 12 V separately. His hardware notes also flag that the smaller drive came with 255 reallocated sectors, and the instruction is blunt: use it “for copies and backups, never as the only copy of anything.”

The case is a four-part PLA print, “100 x 78 mm and 212 mm tall on its 5 mm legs,” and “I measured every part with a caliper and modelled it in Blender.” He had a local shop print it at 0.12 Jordanian dinars per gram, which came to 19.2 dinars. He also explains why he swears by a digital caliper: “I lost almost three marks on my physics lab midterm and final because I couldn’t read that complicated thing.”

The screen on the front is an ESP32-S3 with its own display and his firmware. It shows CPU temperature, RAM and disk space, starts and stops apps, and switches Wi-Fi with a safety net: “If you switch Wi-Fi from the screen and the new network doesn’t come up within 45 s, the Pi goes back to the old one, so a typo can’t take the NAS offline.”

Then there’s Nur. It’s a Docker app with a phone and desktop client that runs a small language model on the Pi through llama.cpp (“In the video I use llama.cpp with Qwen3.5 2B on a 4 GB Pi 5,” the README says) and can answer questions about the box itself. In the video it reports, out loud, “Hey, your device is doing great. The CPU is only at 51 degrees, so it’s relaxed and not struggling at all.”

Play the video on YouTube

The voice is where the local story stops. Speech comes from Fish Audio, the video’s sponsor, and the repo’s Fish Audio notes say so plainly: “The app talks to api.fish.audio straight from the phone or PC. Nothing goes through the NAS,” and the API is billed to your own Fish Audio credit. The language model stays on the Pi. The voice is a paid cloud service.

The best part of the repo is the record of what didn’t work. A voice call with the local model “took about 6.8 s from the end of my sentence to the first sound,” and “The first version needed 51 s.” Part of the fix was the prompt: the agent’s default “was 17,190 tokens, which alone takes minutes on the Pi.” His small-model notes test each model on real NAS questions, and one 4B model “made up “4096 MB free”, “35 C”, “85% full” and “Debian 12”,” which got it demoted to chat only, never NAS control. Nur Hub also refuses a model download when the file plus 0.9 GB won’t fit in RAM.

The README doesn’t oversell any of it. Small models “can be wrong while sounding sure,” and a reply can take “from a few seconds to more than a minute on a Pi.”

The video is in Arabic, and the README notes are in English. The channel’s pitch for Nur is that both the models and the voice handle Arabic, which is a reason to build your own assistant that most English-language homelab builds never have to think about.

More Hacks & Builds

Every Hacks & Builds story →