ubopod / ubo-hal

This repo includes code for communicating and interfacing with Ubo hardware peripherals
GNU General Public License v3.0
1 stars 2 forks source link

Installing SDK on new Raspbian Build assumes user is 'pi' #13

Open neoskedar opened 1 year ago

neoskedar commented 1 year ago

Should be noted that the install.sh in the SDK directions is assuming your current user is pi and it looks for /home/pi as a part of the script. When I did my fresh install, I did not leave the username as pi. I was able to manually update the install.sh for my username, but this would be a good thing to note in the SDK directions.

zytegalaxy commented 1 year ago

Hey Aaron, Thanks a lot for opening this issue and your feedback. That has been a pain point for me too. We are in the process of revamping our SDK installation process and this is something we have to rewrite.

Probably it makes more sense to create a ubo user-space and install the SDK under that. Previously all Pis had the pi user by default but more it is gradually becoming a more pronounced issue.

I would appreciate if you have any suggestions on best way to fix this issue.

I am also in the process of setting this repo and thinking about making a discussion group for the people you are currently using it. I would love to have your participation in the discussion as well.

neoskedar commented 1 year ago

I believe I was able to fix the user dependency by making a few changes to the install scripts.

In install.sh I added aline at line 2 of export UBO_USER=$HOME to save the current user's home directory as an ENV variable and then on line 3, I export that variable to sudoers so it can be reference when we run the start_services.sh with the code echo "Defaults env_keep += "UBO_USER"" | (sudo su -c 'EDITOR="tee -a" visudo') and on the now line 4, I changed UBO_HOME=/home/pi/ubo-sdk to UBO_HOME=$UBO_USER/ubo-sdk and finally on line 16, I change . /home/pi/ubo-venv/bin/activate to . $UBO_USER/bin/activate

in start_services.sh on line 1, I changed UBO_HOME=/home/pi/ubo-sdk to UBO_HOME=$UBO_USER/ubo-sdk and line 2, I changed export PATH=$PATH:/home/pi/.local/bin to export PATH=$PATH:$UBO_USER/.local/bin

I have tested this on a fresh install of Raspbian and executed as a user not named 'pi' and it seems to work with no issues except for the running of the services. Exploring ways to make the services more dynamic and will update once I have found a solution.