You can not select more than 25 topics
Topics must start with a letter or number, can include dashes ('-') and can be up to 35 characters long.
137 lines
5.2 KiB
137 lines
5.2 KiB
15 years ago
|
Users can be associated with Profile(s)
|
||
|
=======================================
|
||
|
|
||
|
A user can be associated with one or more profiles. A profile indicates a
|
||
|
configuration set that applies to a group of users. Each profile has a name
|
||
|
to identify it. If a user is associated with more than one profile then the
|
||
|
order of the two profiles is important. Settings associated with one profile
|
||
|
could override the settings in the other profile, depending on the order.
|
||
|
|
||
|
|
||
|
Mapping profiles to users
|
||
|
=========================
|
||
|
|
||
|
A mapping file determines which profile(s) should be used for which user.
|
||
|
The mapping file can be configured in /etc/kderc in the [Directories] group:
|
||
|
|
||
|
[Directories]
|
||
|
userProfileMapFile=/etc/kde-user-profile
|
||
|
|
||
|
Profiles can be mapped to individual users based on username, or profiles can
|
||
|
be mapped to groups of users based on the UNIX group(s) the users are part of.
|
||
|
(See man 1 groups)
|
||
|
|
||
|
|
||
|
Mapping profiles to individual users
|
||
|
====================================
|
||
|
|
||
|
The mapping file can contain a [Users] section for mapping profiles to
|
||
|
an individual user. The [Users] section contains the user's account name
|
||
|
followed by one or more profiles as follow:
|
||
|
|
||
|
[Users]
|
||
|
bastian=developer
|
||
|
adrians=developer,packager
|
||
|
|
||
|
The above example assigns to user "bastian" the profile "developer". To user
|
||
|
"adrians" it assigns the two profiles "developer" and "packager". The order
|
||
|
in which the profiles are listed makes a difference, settings in earlier
|
||
|
profiles overrule settings in profiles that are listed after it. In the above
|
||
|
case of user "adrians", wherever the "developer" and "packager" profiles contain
|
||
|
conflicting settings, the settings of the "developer" profile will take precedent.
|
||
|
|
||
|
If a user has an entry under the [Users] section, this entry will determine all
|
||
|
profiles that are applicable to the user. The user will not be assigned any
|
||
|
additional profiles based on the groups the user is part of.
|
||
|
|
||
|
Mapping profiles to user groups
|
||
|
===============================
|
||
|
|
||
|
If a user has no entry under the [Users] section in the mapping file, the profiles
|
||
|
that are applicable to the user will be based on the UNIX group(s) the user is
|
||
|
part of.
|
||
|
|
||
|
The groups and the order in which the groups are considered is determined by
|
||
|
the following entry in the [General] section of the mapping file:
|
||
|
|
||
|
[General]
|
||
|
groups=pkgs,devel
|
||
|
|
||
|
Each of these groups should have an entry under the [Groups] section that defines
|
||
|
which profile(s) belongs to that group. This looks as follows:
|
||
|
|
||
|
[Groups]
|
||
|
pkgs=packager
|
||
|
devel=developer
|
||
|
bofh=admin,packager,developer
|
||
|
|
||
|
For each group that a user is part of, the corresponding profile(s) are used. The
|
||
|
order in which the groups are listed in the "groups" entry, determines the resulting
|
||
|
order of all the applicable profiles. If multiple profiles are applicable to a
|
||
|
particular user and a profile contains settings that conflict with settings in
|
||
|
another profile then the settings in the earlier listed profile take precedent.
|
||
|
|
||
|
So if, based on the example above, a user is part of the "pkgs" group then the
|
||
|
"packager" profile will be used for that user. If the user is part of the "devel"
|
||
|
group then the "developer" profile will be used. Users that are part of the "bofh"
|
||
|
group will use the "admin", "packager" as well as the "developer" profile. In case
|
||
|
of conflict, settings in the "admin" profile will take precedent over settings
|
||
|
in the "packager" or "developer" profiles.
|
||
|
|
||
|
If the user is part of both the "pkgs" and "devel" groups, then both the "packager"
|
||
|
and "developer" profiles will be used. In case of conflicting settings between the
|
||
|
two profiles, the "packager" profile will take precedent because the "pkgs" group
|
||
|
associated with the profile was listed before the "devel" group.
|
||
|
|
||
|
The "groups" command can be used to see to which groups a user belongs:
|
||
|
|
||
|
> groups coolo
|
||
|
coolo : users uucp dialout audio video cdrecording devel
|
||
|
|
||
|
Note that in general only a few groups will have profiles associated with them.
|
||
|
In the example above only the "devel" group has a profile associated with it,
|
||
|
the other groups do not and will be ignored.
|
||
|
|
||
|
If there is no profile defined for any of the groups that the user is in, the
|
||
|
user will be assigned the "default" profile.
|
||
|
|
||
|
|
||
|
The Profile determines the directory prefixes
|
||
|
=============================================
|
||
|
|
||
|
The global KDE configuration file (e.g. kdeglobals or /etc/kderc) can
|
||
|
contain config-groups that are associated with a certain user profile.
|
||
|
Such a config-group is treated similar as the [Directories] config-group.
|
||
|
|
||
|
The name of a such config-group is [Directories-<ProfileName>]
|
||
|
|
||
|
|
||
|
Integration with KIOSK Admin Tool
|
||
|
=================================
|
||
|
|
||
|
The KIOSK Admin Tool uses /etc/kderc as source for all its profile
|
||
|
information. For this it uses the following keys in the
|
||
|
[Directories-<ProfileName>] config-group:
|
||
|
|
||
|
# Short text describing this profile
|
||
|
ProfileDescription=
|
||
|
|
||
|
# Files will be installed with the uid of this user
|
||
|
ProfileInstallUser=
|
||
|
|
||
|
The KIOSK Admin Tool uses the first directory from the prefixes= entry
|
||
|
as default installation directory for this profile.
|
||
|
|
||
|
|
||
|
Default setting as example
|
||
|
==========================
|
||
|
|
||
|
The following snipped could be added to /etc/kderc to define a "default" profile:
|
||
|
|
||
|
[Directories-default]
|
||
|
ProfileDescription=Default profile
|
||
|
ProfileDescription[de]=Defaultprofiel
|
||
|
ProfileInstallUser=root
|
||
|
prefixes=/var/run/kde-profile/default
|
||
|
|