Just did a quick attempt to turn voidpup32 into a proper multi-user Puppy, which would be a first as far as I know. Note that I'm still using alpha1 version with manual fixes - internet connection and xbps (vpm) working fine on this one).
To do this I just installed the following using xbps-install (or vpm):
xbps-install -Sy pam shadow sudo
I also installed coreutils, but I don't know if that was required.
Then I used the WeeDog_Arch64 build plugin commands (just noted same in KLV-airedale) to create a new user (weedog):
Code: Select all
# Give wheel group nopasswd sudo rights and create weedog as wheel group member
echo '%wheel ALL=(ALL) NOPASSWD: ALL' | (VISUAL="tee -a" visudo) # wheel group added to sudo no password required
useradd -m -G wheel -s /bin/bash weedog # weedog in wheel group so has elevated sudo permissions
But that didn't quite work because there was no wheel group set up.
Probably daftly I tried to install Void Linux small base-files package (which I think contains /etc/group setup, but I haven't checked that), but interestingly for future issue with xbps that didn't work because of:
Code: Select all
/run must not be a directory, exiting!
It would have been better at this stage for me to try to manually create a 'wheel' group, but didn't know how off the top of my head, so simply created user 'weedog' without putting into any wheel group via command:
then added user weedog to the sudoers file using visudo:
Code: Select all
echo 'weedog ALL=(ALL) NOPASSWD: ALL' | (VISUAL="tee -a" visudo)
and finally checked all was basically working as following transcript shows:
Code: Select all
# whoami
root
# pwd
/root
# su - weedog
# whoami
weedog
# pwd
/home/weedog
# sudo ls -al
total 12
drwx------ 2 weedog weedog 100 Dec 20 10:03 .
drwxr-xr-x 5 root root 80 Dec 20 10:02 ..
-rw------- 1 weedog weedog 213 Dec 20 10:28 .history
-rw-r--r-- 1 weedog weedog 312 Jun 15 2019 .xinitrc
-rw-r--r-- 1 weedog weedog 100 Jun 15 2019 .xsession
# exit
logout
# whoami
root
#
Would be nice to get weedog in proper wheel group however cos then would have Xauthority permissions like root so the likes of: "sudo rox" would also then work properly, but as things stand doesn't.
As a further matter of interest I tried su to spot (who I haven't made a sudoer) and at end tried password spot for spot. I'm not sure if spot will work correctly since wasn't created via PAM/shadow/useradd but by Puppy woof-CE build configs, but I do note it also set up to use /home/spot, which is good:
Code: Select all
# su - spot
# whoami
spot
# pwd
/home/spot
# sudo ls
We trust you have received the usual lecture from the local System
Administrator. It usually boils down to these three things:
#1) Respect the privacy of others.
#2) Think before you type.
#3) With great power comes great responsibility.
Password:
Sorry, try again.
Password:
Finally, I added another user:
and put them in sudoers file:
Code: Select all
echo 'debdog ALL=(ALL) NOPASSWD: ALL' | (VISUAL="tee -a" visudo)
and transcript for that one fine also:
Code: Select all
# whoami
root
# su - debdog
# whoami
debdog
# pwd
/home/debdog
# sudo ls -al
total 12
drwx------ 2 debdog debdog 100 Dec 20 10:41 .
drwxr-xr-x 6 root root 100 Dec 20 10:40 ..
-rw------- 1 debdog debdog 36 Dec 20 10:41 .history
-rw-r--r-- 1 debdog debdog 312 Jun 15 2019 .xinitrc
-rw-r--r-- 1 debdog debdog 100 Jun 15 2019 .xsession
So there it is... a Puppy working as a proper multi-user Linux. Who would have thought?...
Now to see how to set up a proper wheel group so those in that group have better root permission capabilities when used with sudo. Of course you can keep all these multi-users for when useful but still auto-login and work as user root most of the time. Not sure if you can auto-login as user weedog, for example, but maybe could be arranged; I'll have to look into that.
It should be easy for me to simply use xbps to install Wayland and Wayland-capable apps with this. Only worry is that issue noted above that Void Linux itself does not want /run to be a directory - but maybe Wayland will work anyway; it is certainly trivial to install and use Wayland with WDL_Arch64 - I've done that. I'll try with voidpup32 later.
EDIT: Actually I think su - weedog should not allow Xauthority anyway. It is a different matter if logged into the desktop as user weedog, then sudo rox should work I think, so all is well and making a wheel group doesn't really matter. My only concern for future additions to expand system fully via Void xbps is that /run being a directory issue, which may or may not prove to be further problematic.