Spot has been around for awhile and a few apps require that they are run as the non-root user so Spot has been that user.
Barry introduced Fido due to popular demand. Fido's current status is broken. You can opt to use Fido but many things don't work and it's also difficult to switch between Fido and the root account.
So, let's fix Fido!
Things to consider..
Perhaps we should allow the restricted user to be called anything that the administrator of the machine wants. To enable this would mean that there could be more than one restricted user. This also means that (for sanity's sake we'll stick with Fido as the name of our user) ..Fido needs his own home directory, /home/fido. When fido is logged in this will be the environmental variable $HOME, so in a terminal if you type this (don't do it now, your answer will be "/root")..
Code: Select all
# echo $HOME
Code: Select all
/home/fido
Currently Puppy has many apps hard coded to root. I am an offender too . No app should keep config files in "/root". It should either be "/etc" or $HOME or both, with $HOME automatically overriding "/etc". Exceptions are apps that need root privileges to run, example: PPM. We need to sift through these apps and fix or ban them. yes a big job, but if people want multi-user Puppy then this needs doing.
Another thing is browser packaging. Again, in my opinion, it's bad to have a browser package with a hard coded profile already set up (in /root). The reason Barry does this is to include add ons such as Flashblock. I have found a way (with Firefox and Seamonkey at least) to package them with fontsize and home page set, no profile. That way when Fido opens his browser all settings are as expected. His unique profile will be created.
On setting up Fido, certain files and directories will need to be created in his $HOME, example: bashrc, this brings me to the next point...
Implementation
I think a gtkdialog gui after installation has been performed would be nice to set up users. Initially I only plan to support Full and Frugal installs to fast media (pupmodes 2, 12) with support for others if applicable as we go along.
It could be an option to set up Fido outside the save file in frugal installs. Full installs will be a matter of simply setting up Fido's $HOME.
---------------------------------------------------------------
Anyone with anything to add please do, and if you can code in bash why not dive in and help?
The basic infrastructure is there in any woof built puppy of the last few months.
Have fun!