From 98827f53939e715feedb49b576b68db4087e3bce Mon Sep 17 00:00:00 2001 From: Jeremy Whiting <jeremy.whiting@collabora.com> Date: Wed, 30 Mar 2022 10:32:53 -0600 Subject: [PATCH] Use getpass.getuser() instead of os.getlogin() since we are a service. os.getlogin() doesn't work when launched by systemd since there's no login terminal to get the password from. https://linux.dio.net/man/3/getlogin --- src/steamos-devkit-service.py | 6 +++++- 1 file changed, 5 insertions(+), 1 deletion(-) diff --git a/src/steamos-devkit-service.py b/src/steamos-devkit-service.py index b103ee2..34eb32f 100644 --- a/src/steamos-devkit-service.py +++ b/src/steamos-devkit-service.py @@ -25,6 +25,7 @@ from http.server import BaseHTTPRequestHandler import configparser +import getpass import json import os import platform @@ -365,7 +366,10 @@ class DevkitService: if 'ShellUsers' in users: DEVICE_USERS = users["ShellUsers"] else: - DEVICE_USERS = [os.getlogin()] + username = getpass.getuser() + print("Username: {username}") + DEVICE_USERS = [] + DEVICE_USERS.append(username) # If only one user, that's the entry point user # Otherwise entry_point_user needs to be root to be able to switch between users -- GitLab