Skip to content
Open
Show file tree
Hide file tree
Changes from all commits
Commits
File filter

Filter by extension

Filter by extension


Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
2 changes: 1 addition & 1 deletion .github/workflows/test.yaml
Original file line number Diff line number Diff line change
Expand Up @@ -40,7 +40,7 @@ jobs:

- name: Upload Test Log
if: failure()
uses: actions/upload-artifact@v3
uses: actions/upload-artifact@v4
with:
name: Test Log ${{ matrix.image.name }} ${{ matrix.image.tag }}
path: tests/test-suite.log
5 changes: 5 additions & 0 deletions src/lightdm.c
Original file line number Diff line number Diff line change
Expand Up @@ -26,6 +26,7 @@
#include "display-manager-service.h"
#include "xdmcp-server.h"
#include "vnc-server.h"
#include "vt.h"
#include "seat-xdmcp-session.h"
#include "seat-xvnc.h"
#include "x-server.h"
Expand Down Expand Up @@ -918,6 +919,10 @@ main (int argc, char **argv)
{
set_seat_properties (seat, NULL);
seat_set_property (seat, "exit-on-failure", "true");

/* in the absence of login1 we find out this using our own heuristics */
seat_set_can_tty (seat, vt_can_multi_seat ());

if (!display_manager_add_seat (display_manager, seat))
return EXIT_FAILURE;
}
Expand Down
5 changes: 5 additions & 0 deletions tests/src/test-runner.c
Original file line number Diff line number Diff line change
Expand Up @@ -128,6 +128,7 @@ typedef struct
gchar *path;
gboolean can_graphical;
gboolean can_multi_session;
gboolean can_tty;
gchar *active_session;
} Login1Seat;

Expand Down Expand Up @@ -1555,6 +1556,8 @@ handle_login1_seat_get_property (GDBusConnection *connection,
return g_variant_new_boolean (seat->can_graphical);
else if (strcmp (property_name, "CanMultiSession") == 0)
return g_variant_new_boolean (seat->can_multi_session);
else if (strcmp (property_name, "CanTTY") == 0)
return g_variant_new_boolean (seat->can_tty);
else if (strcmp (property_name, "Id") == 0)
return g_variant_new_string (seat->id);
else if (strcmp (property_name, "ActiveSession") == 0)
Expand All @@ -1580,13 +1583,15 @@ add_login1_seat (GDBusConnection *connection, const gchar *id, gboolean emit_sig
seat->path = g_strdup_printf ("/org/freedesktop/login1/seat/%s", seat->id);
seat->can_graphical = TRUE;
seat->can_multi_session = TRUE;
seat->can_tty = TRUE;
seat->active_session = NULL;

const gchar *login1_seat_interface =
"<node>"
" <interface name='org.freedesktop.login1.Seat'>"
" <property name='CanGraphical' type='b' access='read'/>"
" <property name='CanMultiSession' type='b' access='read'/>"
" <property name='CanTTY' type='b' access='read'/>"
" <property name='ActiveSession' type='(so)' access='read'/>"
" <property name='Id' type='s' access='read'/>"
" </interface>"
Expand Down
Loading