Simplify adduser script, manually set KDE_SESSION_VERSION for xdg-settings

This commit is contained in:
Anthony Wang 2023-01-10 04:19:16 +00:00
parent 4eaef3e931
commit 660e75bff2
Signed by: a
GPG key ID: 42A5B952E6DD8D38

26
adduser
View file

@ -9,19 +9,6 @@ from subprocess import run, call, check_output
from sys import argv
def configure(username):
"""Configure user"""
run(['sudo', 'mkhomedir_helper', username, '077'])
run(['sudo', '-u', username, 'mkdir', '/home/' + username + '/.config'])
# Set up Flatpak
run(['sudo', '-u', username, 'sh', '-c',
'flatpak remote-add flathub https://dl.flathub.org/repo/flathub.flatpakrepo --user'])
# Set default browser
run(['sudo', '-u', username, 'xdg-settings', 'set',
'default-web-browser', 'firefox.desktop'])
def adduser(username, firstname, lastname, email, password):
"""Add a new user"""
@ -67,7 +54,18 @@ gidNumber: {uid}'''
return
# Configure and set up user
configure(username)
# Make home directory
run(['sudo', 'mkhomedir_helper', username, '077'])
run(['sudo', '-u', username, 'mkdir', '/home/' + username + '/.config'])
# Set up Flatpak
# This is a workaround for the error "flatpak refusing to operate under sudo with --user"
run(['sudo', '-u', username, 'sh', '-c',
'flatpak remote-add flathub https://dl.flathub.org/repo/flathub.flatpakrepo --user'])
# Set default browser
# xdg-settings uses KDE_SESSION_VERSION to determine which KDE commands to use
# For instance, kwriteconfig5 instead of kwriteconfig from Plasma 4
run(['sudo', '-u', username, 'env', 'KDE_SESSION_VERSION=5', 'xdg-settings',
'set', 'default-web-browser', 'firefox.desktop'])
# Generate temporary password