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