On 29/08/2019 07:19, Christopher Gregory via blfs-support wrote:
>
>
>> Sent: Thursday, August 29, 2019 at 4:31 PM
>> From: "Christopher Gregory via blfs-support"
>> <[email protected]>
>> To: [email protected]
>> Cc: "Christopher Gregory" <[email protected]>
>> Subject: Re: [blfs-support] Where are gnome settings stored?
>>
>>
>>
>>> Sent: Thursday, August 29, 2019 at 1:52 AM
>>> From: "Pierre Labastie via blfs-support"
>>> <[email protected]>
>>> To: "BLFS Support List" <[email protected]>
>>> Cc: "Pierre Labastie" <[email protected]>
>>> Subject: Re: [blfs-support] Where are gnome settings stored?
>>>
>>> On Wed, 2019-08-28 at 11:44 +0200, Christopher Gregory via blfs-
>>> support
>>> wrote:
>>>>> Sent: Wednesday, August 28, 2019 at 7:10 PM
>>>>> From: "Pierre Labastie via blfs-support" <
>>>>> [email protected]>
>>>>> To: [email protected]
>>>>> Cc: "Pierre Labastie" <[email protected]>
>>>>> Subject: [blfs-support] Where are gnome settings stored?
>>>>>
>>>>> Hi,
>>>>>
>>>>> Can somebody tell me where gnome settings are stored? I thought
>>>>> everything was in user .config dirs (for user settings) and
>>>>> /etc/dconf
>>>>> (for system settings), but it seems there are more, because when I
>>>>> wipe
>>>>> out the user's .config, I do not get back the original settings I
>>>>> had
>>>>> the first time I logged in...
>>>>>
>>>>> I'd appreciate any pointer to an up to date doc, and/or direct
>>>>> explanation. TIA
>>>>>
>>>>>
>>>> Hello Pierre,
>>>>
>>>> Another location is:
>>>>
>>>> /var/lib/AccountsService/users
>>>>
>>>> With that location, it is only populated after said user has logged
>>>> into gnome for the first time, rather than when a new user is added
>>>> to the system.
>>>>
>>>
>>> Thanks Christopher (and not Gregory, as I called you in another
>>> message, sorry). So summary:
>>> - for most gnome user settings, the dconf database
>>> $HOME/.config/dconf/user and the system dconf databases
>>> /etc/dconf/db/<databases> (with mechanism to populate those database as
>>> described in dconf(7)). Presently, on my system, I have only an ibus
>>> database there.
>>> - some applications put their settings at other locations, using either
>>> gconf or text files, see the example of mousepad on the link you
>>> provided.
>>> - user account information is stored in /var/lib/AccountsService/users
>>> (text files). Actually, I see a language field, which is maybe worth
>>> trying.
>>> - there is also this file /usr/share/gdm/greeter-dconf-defaults, which
>>> is a dconf database, but I do not know how to modify it. Normally all
>>> the dconf databases known to a gnome session are either in
>>> $HOME/.config/dconf/user or in /etc/dconf/db, at least according to the
>>> documentation.
>>> - note that gdm has also /etc/gdm/custom.conf as a configuration
>>> file...
>>>
>>> What else?
>>>
>>> Ah, forgot:
>>> - the change in gnome-shell allows to load the
>>> /var/lib/gdm/.config/dconf/user database at start up. Otherwise, gdm
>>> needs localed to load non default settings. So this change makes things
>>> slightly better. But this database cannot be edited. That's why I have
>>> copied the database from $HOME/.config to ~gdm/.config, and how I
>>> obtained a French kb layout in gdm.
>>>
>>> But all this makes me think that it is very hard to know what one is
>>> doing then tweaking gnome configuration. What is used and what not, and
>>> so on... A recipe for setting the gdm keyboard may work on one system
>>> and not on another, maybe depending on the order applications have been
>>> compiled or loaded...
>>>
>>> I've tried to wipe out .config, .local, and .cache in my $HOME, and in
>>> /var/lib/gdm, on two different (Sysv) systems. Starting one gives a
>>> French keyboard in gdm, the other one, no!
>>>
>>> BTW, on a systemd machine, after running "localectl set-x11-keymap fr",
>>> gdm start with an azerty layout, and the screen keyboard shows an
>>> azerty keyboard. That is, everything is working out of the box!
>>>
>>> Oh, also, I've installed no Xorg driver at all (forgotten) on this
>>> machine with only gnome, and nevertheless, I have mouse and keyboard!
>>> Must be because gdm and gnome are using Wayland sessions. glxinfo shows
>>> "Mesa DRI Intel(R) Haswell Desktop" as OpenGL Renderer. So it looks
>>> like Wayland does not need Xorg drivers, which means it cannot see the
>>> configuration in /etc/X11/xorg.d. Ok, let me try to disable Wayland...
>>>
>>> I realize this message is mixing up things, but my problem is that I
>>> can't disentangle them. I'm actually unable to have a plan to test
>>> things in a rational way...
>>>
>>> Pierre
>>>
>>> --
>>> http://lists.linuxfromscratch.org/listinfo/blfs-support
>>> FAQ: http://www.linuxfromscratch.org/blfs/faq.html
>>> Unsubscribe: See the above information page
>>>
>>
>> Hello Pierre,
>>
>> I have not forgotten to come back to this. I am currently working through
>> the internal files for gnome etc following a number of threads over
>> different support sites, and trying to make it into as easy a list as I
>> possibly can. It is going to take quite some time. It is all related to
>> the azerty layout and interaction between gnome, wayland and even apparently
>> the evdev rules. I am not saying that it will solve anything, but it might.
>> I am making a list of files with directory locations and snippets of the
>> code so that it is layed out and perhaps it can then be made to work.
>>
>> I have never dived into all these files from the back end before and I am
>> trying to stop my brain from putting the brakes on things, as it really is
>> lines of code.
AFAICT, I think the relevant code is in gnome-shell (in javascript) and
gnome-desktop (in C). Most of the code in the gdm seems to not be used (!!),
because it is delegated to gnome-shell. For example, I'm almost sure that the
scripts in /etc/gsm/{Init,Xsession,...} are not executed (I may be wrong,
though: it is hard to check for sure, because I have not yet found whrer the
output of those scripts would be going if they were executed).
> Hello Pierre,
>
> I have just had a thought, and hope that you can try it:
>
> In /etc/gdm/PreSession/ edit the Default file and add:
>
> export XKB_DEFAULT_LAYOUT=fr
According to the doc, Pression/Default is run before the user session is
opened, not before gdm is open. But I am not even sure it is run! In any case,
whatever I have put in one of those files (Init/Default, Xseesion.Default)
never showed up at any place...
>
> I have no idea if this will work, but if it does work consistently on both
> your systems, then that with the changes to gnome-shell that you have done
> should be a simple solution.
>
> I am still looking at the other files, but if this works it would mean we
> both could stop.
>
> Also you could look at
> /usr/share/glib-2.0/schemas/org.gnome.desktop.input-sources.gschema.xml
>
> <key name="sources" type="a(ss)">
> <default>[]</default>
> <summary>List of input sources</summary>
> <description>
> List of input source identifiers available. Each source is
> specified as a tuple of 2 strings. The first string is the
> type and can be one of “xkb” or “ibus”. For “xkb” sources the
> second string is “xkb_layout+xkb_variant” or just “xkb_layout”
> if a XKB variant isn’t needed. For “ibus” sources the second
> string is the IBus engine name. An empty list means that the X
> server’s current XKB layout and variant won’t be touched and
> IBus won’t be used.
>
> and try adding the keyboard layout in the currently empty []
That might be an idea, but I fear I have to compile the table settings into a
db after that.
Maybe use glib-compile-schemas /usr/share/glib-2.0/schemas (as after GTK+-3
DESTDIR install). Will have a try...
Pierre
--
http://lists.linuxfromscratch.org/listinfo/blfs-support
FAQ: http://www.linuxfromscratch.org/blfs/faq.html
Unsubscribe: See the above information page