Aplikasi membutuhkan dua hal untuk membuka jendela pada tampilan X. Perlu mengetahui lokasi tampilan X; yang disampaikan oleh DISPLAYvariabel lingkungan. Ini juga perlu diautentikasi dengan X server. Ini disampaikan melalui cookie, yang merupakan nilai rahasia yang dihasilkan oleh server X saat dijalankan dan disimpan dalam file yang hanya dapat diakses oleh pengguna yang memulai server X. File cookie default adalah ~/.Xauthority.
Atau, menjalankan program sebagai pengguna yang menjalankan X server akan berfungsi, asalkan file cookie berada di lokasi default (jika tidak, Anda harus mencari file cookie, seperti dalam kasus root). Tambahkan Userarahan (misalnya User=dogs).
Tentu saja layanan tidak akan berjalan jika tidak ada tampilan X oleh nomor yang dimiliki oleh pengguna yang Anda tentukan.
Agak aneh memulai program GUI dari Systemd. Itu tidak dirancang untuk ini. Program GUI hidup dalam sesi X, dimulai oleh pengguna. Systemd adalah untuk proses sistem. Anda seharusnya bereksperimen dengan daemon.
systemctl --user
. JugaDISPLAY
variabel bukan masalah kalau begitu. Silahkan lihat di sini .Anda dapat menambahkan
.xinitrc
:Ini bekerja untuk saya!
sumber