Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

RPi-Image laundry list of things for a next image #876

Open
tedh-shopbot opened this issue May 3, 2022 · 13 comments
Open

RPi-Image laundry list of things for a next image #876

tedh-shopbot opened this issue May 3, 2022 · 13 comments
Labels
Needs_Grooming This is a batch of requirements that needs to be refined into actionable feature or bug "issues" os Problems at the interface to the underlying operating system

Comments

@tedh-shopbot
Copy link
Contributor

  • This differs from previous image in that if a wifi connection is set up FabMo, if FabMo is not running for some reason, the Pi doe not automatically establish a connection. Not sure how essential that is, but I found it sometimes helpful for the networking to seem to exist outside of FabMo as well as inside.
  • Along those lines, I think adding the Conman gadget to the menu bar might be helpful. If you have a screen you can readily check your connections this way. Or, at least previously, one could.
  • I think I saw somewhere that there is a method autoexpand the file system on an SD card; it is very easy to forget and end up with a crashie system because there is little memory left with the 8g version of the image.
  • We should check the video defaults for the RPi so that the most common HDMI's will work out of the box. (With the older Handibots that use the RPi screen, we need to enable a special video driver and rotate the screen -- maybe something for tech support to know).
  • Might be nice for developers to adjust the system limit for 'number-of-file-watchers' for working with vs-code.
@tedh-shopbot tedh-shopbot added the os Problems at the interface to the underlying operating system label May 3, 2022
@RobMackie
Copy link
Contributor

This differs from previous image in that if a wifi connection is set up FabMo, if FabMo is not running for some reason, the Pi doe not automatically establish a connection. Not sure how essential that is, but I found it sometimes helpful for the networking to seem to exist outside of FabMo as well as inside.

I think there is already an issue open for addressing this. I need to add more descriptive text to it but it is: #837

@RobMackie
Copy link
Contributor

Along those lines, I think adding the Conman gadget to the menu bar might be helpful. If you have a screen you can readily check your connections this way. Or, at least previously, one could.

yes, i agree.

@RobMackie
Copy link
Contributor

I think I saw somewhere that there is a method autoexpand the file system on an SD card; it is very easy to forget and end up with a crashie system because there is little memory left with the 8g version of the image.

I think that we need to expand them before we ship them. For engineering purposes, it might be easier to make that a manual process so we don't have to contract them again before making a new image to share.

What has been your process for "shrinking the image back down" after you expand it? (or have you always flashed a new unexpanded image before playing with the image?

@RobMackie
Copy link
Contributor

We should check the video defaults for the RPi so that the most common HDMI's will work out of the box. (With the older Handibots that use the RPi screen, we need to enable a special video driver and rotate the screen -- maybe something for tech support to know).

Ok - right. we'd so want it to show up on a monitor easily. Have you had any problem with the current image? just curious.

I'm not sure we're supporting the handibot out of the gate? or are we? eventually we will want a way to make that easy, for sure. Not sure we need it in a current image that is aimed only at desktop and only at access from the browser. We know there are significant problems if the user runs the browser on the pi. That will likely be an "unsupported" configuration. A user is welcome to try it but not the recommended or supported way to run it. We don't expect to expose the video ports unless you have the electrical enclosure open. It is there for diagnostics, not use?

Or do you have a different idea of how that goes?

@RobMackie
Copy link
Contributor

Might be nice for developers to adjust the system limit for 'number-of-file-watchers' for working with vs-code.

Worth thinking about. There are some tradeoffs. Need to work out if any of them impact us. We might just document how to change that number and how to change it back rather than doing so, in order to conserve system resources under ordinary use.

@tedh-shopbot
Copy link
Contributor Author

On Shrinking:
All was able to figure out was to make an SD copy on the Pi, but using an 8G sd card. I'm sure there is a better way. But the pi seemed to shrink the size down OK. To that, which I would then ZIP. And, out of laziness, of done 32-ZIPped to 32 several times.

@tedh-shopbot
Copy link
Contributor Author

On Supporting Handibot:
There are relatively few Handibots than can be easily switched. I don't think it is worth worrying much about at the moment. Since I am the one who created the weird (no-prox) homing for Handibots, I figured that when I got a chance, I would work up the special macros needed for existing Handibots. I think they will need their own Macro 2,3, and 9. I can mostly just port those from before using the new Standard Macro Variables.

@RobMackie RobMackie added the Needs_Grooming This is a batch of requirements that needs to be refined into actionable feature or bug "issues" label May 10, 2022
@tedh-shopbot
Copy link
Contributor Author

Hey @RobMackie , I think we covered most of everything here. I'd say we just need to save an issue for making a R-pi handibot profile ... assign to me.

@RobMackie RobMackie changed the title RPi-Image-22: thoughts for next image RPi-Image laundry list of things for a next image Jun 7, 2022
@obra
Copy link
Contributor

obra commented Jun 14, 2022

It looks like most folks building pi images use https://github.com/RPi-Distro/pi-gen to reliably script the build of an image based on the vanilla Rpi images.

Thankfully, it's just a bunch of shell scripts with "stages" of build, so the first 80% of the work to build a custom fabmo version should just be documenting the steps you'd need to take to customize a regular image in the form of a shell script.

One thing that you'd theoretically get for free by doing it this way is support for Raspberry Pi's "imager" tool that lets users configure usernames, passwords and network from their desktops as they write the image to an SD card.

@RobMackie
Copy link
Contributor

Thanks for the reference. I'm hoping to start this in a couple fo weeks. tons of stuff between here and there. :-)

@obra
Copy link
Contributor

obra commented Jun 15, 2022 via email

@obra
Copy link
Contributor

obra commented Jun 16, 2022

@RobMackie, So yeah. I got myself nerd sniped with this one.

It is by no means complete, but if you fork https://github.com/obra/pi-gen-fabmo into the fabmo organization, you'll have a decent basis to start from.

That repo contains a pi-gen config file: https://github.com/obra/pi-gen-fabmo/blob/master/config that builds a rpi image with fabmo installed (cloned from git master) and at least partially configured.

Most importantly, it automatically builds and publishes a new image on every commit using GitHub actions. (Long-term you might want to switch to only building things that get tagged and then keeping those around.)

The GitHub action config is here: https://github.com/obra/pi-gen-fabmo/blob/master/.github/workflows/build.yml

The published rpi images are here: https://github.com/obra/pi-gen-fabmo/releases

All the fabmo-specific bits are here:

https://github.com/obra/pi-gen-fabmo/tree/master/stage5-fabmo

https://github.com/obra/pi-gen-fabmo/blob/master/stage5-fabmo/02-install-fabmo/01-run.sh is the script that "installs" fabmo.

Further configuration is just a shell script away.

I don't understand the updater, so didn't touch it at all.

I'll keep the repo around until you've either forked it or told me you're going another route.

@RobMackie
Copy link
Contributor

revist during or after issue #990

@kyle-kingsbury kyle-kingsbury self-assigned this Jul 25, 2023
@kyle-kingsbury kyle-kingsbury removed their assignment Aug 4, 2023
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
Needs_Grooming This is a batch of requirements that needs to be refined into actionable feature or bug "issues" os Problems at the interface to the underlying operating system
Projects
None yet
Development

No branches or pull requests

4 participants