Close

THinking through the project

A project log for Display Server

Reuse old computer monitors to display static documents or art.

peter-walshPeter Walsh 08/31/2020 at 01:510 Comments

I didn't do any work on the project today (well... only a little) but went hiking instead. This gave me some time to think through some of the project issues.

The goal isn't to make the project simple, it's to make it seamless. I want to have a project that's easy to install and easy to connect to. So for example, every time I add a samba share to any system I'm always fighting with the configuration for a couple of hours because it's completely opaque: something will be wrong and the only way to figure out what is to run the samba daemon in debug mode and sort through reams of log files.

I realized today that I can make a separate user login that allows scp copies but doesn't allow ssh logins. This can exist as a separate user from pi, have no password, and also be the samba user with no password. If the user wants to do other stuff with his RasPi - such as an NAS or something - this will keep all the DisplayServer software out of the way.

This might seem like a security risk, but the login cannot be logged into remotely - the only thing you can do is copy files to it (and also copy out), and the display server only allows a fifo of 10 files (configurable) in the directory anyway. I think I can set it up so that you can't locally log in to it on the RasPi system either, which means to do anything you have to a) have physical access, or b) log in to the RasPi using another login and su to that ID. Both cases will give you complete control of the system without the extra user ID, so it's not any more of a security issue than you started with. But it makes the scp and samba connections almost trivial.

(Just checked online and samba without password is a thing, so it's not completely unreasonable.)

Then the app server that monitors the GPIO and switches to AP mode for configuration should be a separate GitHub project. That might be something people want outside of the Display Server software, so making it a separate project will give them an opportunity to do that.

(Both projects will be bundled up in one file for the .IO project here.)

I'm already bundling the project up as installation scripts to make it easy for people.

Ideally I would just host a configured disk image, but the current Raspbian is just shy of 8GB, and the added extra stuff (mostly apt-get installs that my system needs) pushes it over 8GB.

Anyone know a place where I can host a 10GB file for free?

Discussions