Many desktop environment work seamlessly with ThinLinc, as long as it supports X11,
and these are shipped with premade profiles ready to use. However not everyone
is bound by the shackles of conventional distros and may therefore be met by the message
Error: No executable profiles could be found – thus requiring a custom profile for ThinLinc!
To begin setting up a custom ThinLinc profile, you need to figure out which
desktop environment to use when setting up our new custom ThinLinc profile.
More information about this can be found here:
Which desktop environment should i use with ThinLinc?.
Find out the desktop environment that is relevant for you run the following
command:
ls /usr/share/xsessions/
or ls /etc/X11/sessions
.
You will get an output such as pop.desktop
, zorin.desktop
and so on.
Once you identify your xsession/desktop environment of choice, you are
ready to create the new custom profile! A few basic premade and working
templates are available in the bottom of this article.
Below you will find two different methods to create a new profile, CLI or using
the Web Administration Interface. After you are done, make sure no one is
locally logged in as the user you’re connecting as through ThinLinc. Then,
connect to ThinLinc and do your important remote work!
Creating a new profile using CLI
Open /opt/thinlinc/etc/conf.d/profiles.hconf
with your favorite text
editor. In this configuration file you will find the profiles shipped with
ThinLinc, squeeze in the following template (or those further below for
Pop!_OS/Zorin):
[/profiles/custom]
xdg_session=custom
name=Custom Distro
description=The Custom Distro desktop environment
screenshot=
cmdline=
testcmd=
description_from_testcmd=false
The most important parts here lies in [/profiles/custom]
and
xdg_session=custom
.
Change the parameter xdg_session=custom
to the one you just found in the
previous step, but leave the .desktop
part out.
Say your desktop environment type is pop.desktop
, just enter pop
.
You can name the profile anything you like by replacing the custom
in
[/profiles/custom]
of the template. This entry is only relevant to this
file in one more place within this file. Add the name to the order=
parameter in the top of the file like so:
order=unity ubuntu gnome gnome-classic kde xfce cinnamon mate lxde custom <--
If you are interested in a more complete explanation of the parameters refer to
the documentation:
Complete!
Creating a new profile using the Web Interface
Open the ThinLinc Web Administration Interface and navigate to Profiles > Profile List
in the sidebar as displayed in the picture below:
Click the Add new profile
button and you will see a prompt to create a
new custom profile. To successfully create a new profile, you need to find out
the relevant desktop environment, as mentioned in the top of this article. The
output should be entered into the XDG session desktop
field.
You are then free to enter any name and description you like into the rest of
the fields. A basic custom profile for Pop!_OS would look something like this:
Complete!
Premade templates
Open /opt/thinlinc/etc/conf.d/profiles.hconf
with your favorite text editor.
In the top of the file, you should add the “Profile identification” to the order=
parameter.
For example, in this case [/profiles/elementary]
the identification is elementary
.
Then, you should paste the template in the file where the other profiles reside,
or simply in the bottom.
Pop!_OS 22.04 profile
order=unity ubuntu gnome gnome-classic kde xfce cinnamon mate lxde pop <-------
[/profiles/pop]
xdg_session=pop
name=Pop
description=The Pop_OS Gnome desktop environment
screenshot=
cmdline=
testcmd=
description_from_testcmd=false
Zorin 17.2 profile
order=unity ubuntu gnome gnome-classic kde xfce cinnamon mate lxde zorin <--
[/profiles/zorin]
xdg_session=zorin
name=Zorin
description=The Zorin desktop environment
screenshot=
cmdline=
testcmd=
description_from_testcmd=false
Pantheon DE profile (Elementary OS 8 and others)
order=unity ubuntu gnome gnome-classic kde xfce cinnamon mate lxde elementary <--
[/profiles/elementary]
xdg_session=pantheon
name=Elementary OS
description=The Pantheon desktop environment
screenshot=
cmdline=
testcmd=
description_from_testcmd=false
Budgie DE 24.04.1 profile (Ubuntu 24.04 and others)
order=unity ubuntu gnome gnome-classic kde xfce cinnamon mate lxde budgie <--
[/profiles/budgie]
xdg_session=budgie-desktop
name=Budgie
description=The Budgie desktop environment
screenshot=
cmdline=
testcmd=
description_from_testcmd=false
i3wm 4.24 profile (Ubuntu 24.04 and others)
order=unity ubuntu gnome gnome-classic kde xfce cinnamon mate lxde i3wm <-------
[/profiles/i3wm]
xdg_session=i3
name=i3 WM
description=The i3 WM desktop environment
screenshot=
cmdline=
testcmd=
description_from_testcmd=false