chrodev/create_ubuntu_user.sh

36 lines
1.5 KiB
Bash
Raw Normal View History

2024-07-23 16:40:12 -04:00
#!/bin/bash
USERNAME=$1
PASSWORD=$2
# Create user
useradd -m -s /bin/bash $USERNAME
# Set password
echo "$USERNAME:$PASSWORD" | chpasswd
# Add user to sudo group
usermod -aG sudo $USERNAME
# Set up VNC for the user
su - $USERNAME -c "mkdir -p ~/.vnc && x11vnc -storepasswd $PASSWORD ~/.vnc/passwd"
# Set up X11 forwarding for the user
echo "export DISPLAY=host.docker.internal:0" >> /home/$USERNAME/.bashrc
2024-07-23 23:25:47 -04:00
# Set up PulseAudio
su - $USERNAME -c "mkdir -p ~/.config/pulse"
su - $USERNAME -c "echo 'autospawn = yes' > ~/.config/pulse/client.conf"
su - $USERNAME -c "echo 'daemon-binary = /usr/bin/pulseaudio' >> ~/.config/pulse/client.conf"
su - $USERNAME -c "echo 'enable-shm = false' >> ~/.config/pulse/client.conf"
su - $USERNAME -c "echo 'enable-memfd = yes' >> ~/.config/pulse/client.conf"
su - $USERNAME -c "echo 'load-module module-native-protocol-unix' > ~/.config/pulse/default.pa"
su - $USERNAME -c "echo 'load-module module-native-protocol-tcp auth-anonymous=1' >> ~/.config/pulse/default.pa"
su - $USERNAME -c "echo 'load-module module-always-sink' >> ~/.config/pulse/default.pa"
# su - $USERNAME -c "echo 'load-module module-null-sink' >> ~/.config/pulse/default.pa"
# su - $USERNAME -c "echo 'load-module module-pipe-sink' >> ~/.config/pulse/default.pa"
su - $USERNAME -c "echo 'load-module module-virtual-sink sink_name=virtual_output' >> ~/.config/pulse/default.pa"
su - $USERNAME -c "echo 'set-default-sink virtual_output' >> ~/.config/pulse/default.pa"
echo "User $USERNAME created with the provided password and PulseAudio configured."