# SPDX-License-Identifier: LGPL-2.1-or-later# Print lastlog2 database as JSON; used in ./login.jsimport jsonimport osimport sqlite3import sysDB = "/var/lib/lastlog/lastlog2.db"if not os.path.exists(DB):sys.exit(f"{DB} does not exist")con = sqlite3.connect(DB)cur = con.cursor()query = "SELECT Name, Time, TTY, RemoteHost FROM Lastlog2"if len(sys.argv) == 2:res = cur.execute(query + " WHERE Name = ?", [sys.argv[1]])else:res = cur.execute(query)users = {}for [name, time, tty, host] in res:users[name] = {"time": time, "tty": tty, "host": host}print(json.dumps(users))