Re: Where kde saves user settings ?

2017-03-19 Thread Stephen Dowdy



On 03/19/2017 11:54 AM, John wrote:
Thanks for that Stephen. Having looked at the freedesktop spec that's 
useful and I am rather lost at that level. However I am stuck with 
BASH. I need help at times and it's always BASH. However I have seen 
some info on changing shells on the fly and going back to the default 
again. :-) That still looks pretty cryptic in places to me though. 
However if needs must. I'd prefer something for all xdg* in etc. 
Haven't a clue what the in would be.

John
-

John,

BASH is a superset of POSIX.  pretty much anything that's POSIX shell 
works in BASH.  I try to use the more restrictive POSIX set for 
compatibility and only use BASH extended features if it would be too 
painful to use POSIX only.  (e.g. process substitution is just SO 
convenient)


So, just stick that snippet in a file (e.g. "xdg-vals") add "#!/bin/sh" 
or even "#!/bin/bash" to the top, make it executable (chmod 700 
xdg-vals) and run it with ./xdg-vals.


so, for example:

#!/bin/bash
echo "[XDG Environment]"
while read var default; do
 printf "%24s = %s\n"  "${var}" "$(eval echo \${$var-${default}\(\*\)})"
done<<"EOF"
XDG_DATA_HOME   ${HOME}/.local/share
XDG_CONFIG_HOME ${HOME}/.config
XDG_DATA_DIRS   /usr/local/share/:/usr/share/
XDG_CONFIG_DIRS /etc/xdg
XDG_CACHE_HOME  ${HOME}/.cache
XDG_RUNTIME_DIR /run/user/$(id -u)
XDG_SESSION_ID
XDG_SESSION_COOKIE
XDG_SESSION_TYPE
XDG_SESSION_CLASS
XDG_SESSION_DESKTOP
XDG_CURRENT_DESKTOP
XDG_SEAT
XDG_VTNR
XDG_DESKTOP_DIR $HOME/Desktop
XDG_DOCUMENTS_DIR   $HOME/Documents
XDG_DOWNLOAD_DIR$HOME/Downloads
XDG_MUSIC_DIR   $HOME/Music
XDG_PICTURES_DIR$HOME/Pictures
XDG_PUBLICSHARE_DIR $HOME/Public
XDG_TEMPLATES_DIR   $HOME/Templates
XDG_VIDEOS_DIR  $HOME/Videos
EOF
echo "(*) indicates variable unset and a default value substituted"


--stephen


Re: Where kde saves user settings ?

2017-03-19 Thread John
On Sat, 18 Mar 2017 22:36:22 -0600
Stephen Dowdy  wrote:

> > For plasma5 and frameworks5 based apps, as I said, the freedesktop.org
> > speced locations are normally used.  That's $XDG_CONFIG_HOME for
> > config, and $XDG_DATA_HOME for app data.  If those aren't set... well,
> > let me point you to the freedesktop.org website for the specs and you
> > can read it yourself, but try ~/.config and ~/.local/share .
> >
> > https://www.freedesktop.org/wiki/Specifications/
> >  
> 
> FYI: here's a little POSIX shell snippet i use for diagnostics that can 
> show you current XDG settings:
> 
> echo "[XDG Environment]"
> while read var default; do
>  printf "%24s = %s\n"  "${var}" "$(eval echo \${$var-${default}\(\*\)})"
> done<<"EOF"
> XDG_DATA_HOME   ${HOME}/.local/share
> XDG_CONFIG_HOME ${HOME}/.config
> XDG_DATA_DIRS   /usr/local/share/:/usr/share/
> XDG_CONFIG_DIRS /etc/xdg
> XDG_CACHE_HOME  ${HOME}/.cache
> XDG_RUNTIME_DIR /run/user/$(id -u)
> XDG_SESSION_ID
> XDG_SESSION_COOKIE
> XDG_SESSION_TYPE
> XDG_SESSION_CLASS
> XDG_SESSION_DESKTOP
> XDG_CURRENT_DESKTOP
> XDG_SEAT
> XDG_VTNR
> XDG_DESKTOP_DIR $HOME/Desktop
> XDG_DOCUMENTS_DIR   $HOME/Documents
> XDG_DOWNLOAD_DIR$HOME/Downloads
> XDG_MUSIC_DIR   $HOME/Music
> XDG_PICTURES_DIR$HOME/Pictures
> XDG_PUBLICSHARE_DIR $HOME/Public
> XDG_TEMPLATES_DIR   $HOME/Templates
> XDG_VIDEOS_DIR  $HOME/Videos
> EOF
> echo "(*) indicates variable unset and a default value substituted"
> 
Thanks for that Stephen. Having looked at the freedesktop spec that's useful 
and I am rather lost at that level. However I am stuck with BASH. I need help 
at times and it's always BASH. However I have seen some info on changing shells 
on the fly and going back to the default again. :-) That still looks pretty 
cryptic in places to me though. However if needs must. I'd prefer something for 
all xdg* in etc. Haven't a clue what the in would be.

John
-


Re: Where kde saves user settings ?

2017-03-19 Thread John
On Sun, 19 Mar 2017 00:35:26 + (UTC)
Duncan <1i5t5.dun...@cox.net> wrote:

> John_82 posted on Sat, 18 Mar 2017 16:15:50 + as excerpted:
> 
> > On Sat, 18 Mar 2017 07:15:35 + (UTC)
> > Duncan <1i5t5.dun...@cox.net> wrote:
> >   
> >> John_82 posted on Fri, 17 Mar 2017 13:44:58 + as excerpted:
> >>   
> >> > Can anyone tell me where kde stores things like
> >> > 
> >> > Start button menu content.
> >> > Task bar content.
> >> > The state a user left when they logged out so that windows will
> >> > mostly be restored etc.
> >> >   
> >> That's actually a broader question than you likely realize, with an
> >> even broader answer as the locations have changed over the years and
> >> kde versions, and frameworks-5-based apps now use the standard
> >> freedesktop.org specified locations, while kde4-based apps (of which
> >> there are still some around that haven't migrated yet and that might be
> >> dropped in a year or two when kdelibs4 goes EOL if they still haven't
> >> migrated) use the old kde location.  
> 
> >> For plasma5 and frameworks5 based apps, as I said, the freedesktop.org
> >> speced locations are normally used.  That's $XDG_CONFIG_HOME for
> >> config, and $XDG_DATA_HOME for app data.  If those aren't set... well,
> >> let me point you to the freedesktop.org website for the specs and you
> >> can read it yourself, but try ~/.config and ~/.local/share .
> >> 
> >> https://www.freedesktop.org/wiki/Specifications/
> >> 
> >> That has lots of different specs listed, many of which may be
> >> interesting reading (they certainly do here)  
> 
> > I think I have managed to sort out what is going on since asking. I was
> > particulary interested in start button menu's and taskbars.  
> 
> I had answered more the general kde settings angle in the last post, and 
> basically ignored the specific function bit.  This one will try to 
> address that a bit.
> 
> > I can summarise the start button. Desktops have menu catagory trees
> > whose contents may be set by a distro. The one on opensuse contains and
> > amazing number of categories eg all will have utilities. It has history,
> > science and miriads of others. Along side that there is a directory with
> > dot dektop files which also contain category information. These seem to
> > be scaned and and linked somehow into the eventual menu.  
> 
> For modern full-feature desktops (including plasma and I believe lxde as 
> well, but I'm not sure if the *box and similar closer to wm-only style 
> desktops have updated) at least, these are all standardized.
> 
> Take a look at the general freedesktop.org specs link from earlier.  In 
> particular, you'll want to look at the *.desktop file stuff as well as 
> the menu stuff.  Basically, the *.desktop files are the basic building 
> blocks for the menu, but there's a utility that grabs the information 
> from these and assembles (IIRC) *.menu files from them.
> 
> And yes, there's both user and system locations.  The user locations will 
> be under the $XDG_*_HOME dirs (IIRC CONFIG but could be wrong), the 
> system locations under the parallel system $XDG_ dirs.
> 
> The categories are pretty standardized as well.  I think the general idea 
> is that if you have only a few apps in a higher category, they'll be 
> listed directly under it in ordered to avoid lower level categories with 
> only an item or two, while if you're really interested in say science or 
> games and have a whole lot of them, the top-level category will be broken 
> down further into lower level ones.  Additionally, there's often a "more" 
> entry, for the (theoretically) less used apps if the number of entries in 
> a category gets too high and it hasn't been broken down further.  This is 
> all based on usability studies showing that having more than 5-7 choices 
> at once gets confusing for many users.
> 
> > There does seem
> > to be user local taskbar set ups but also something system wide and as
> > you mention some apps look after specific user settings in various ways.
> > A few and the desktops seem to be doing that of ~/.configure. Seems like
> > a good way forwards to me.  
> 
> AFAIK, taskbar stuff hasn't been standardized, so it's each desktop for 
> itself.
> 
> === Meandering a bit... thru the === below...
> 
> FWIW, I don't actually use a "taskbar" in the normal sense (the widget 
> under plasma), preferring alternatives such as alt-tab, the window list 
> with a desktop middle-click, multiple desktops and desktop switching 
> using scroll on the desktop or the cube or grid, etc.
> 
> And I have a /huge/ desktop, a 65-inch 4K monitor for my usual work along 
> with a 48-inch full-hd monitor that's often running full-screen youtube 
> or the like.  I've used kwin window rules to standardize most of my main 
> windows to 1280x1080, letting me do three windows wide and two high, six 
> work-windows displayed at once on the 65" 4k (along with the full-screen 
> video window on the 48" full-hd), so I can get quite 

Re: Where kde saves user settings ?

2017-03-18 Thread Stephen Dowdy

For plasma5 and frameworks5 based apps, as I said, the freedesktop.org
speced locations are normally used.  That's $XDG_CONFIG_HOME for
config, and $XDG_DATA_HOME for app data.  If those aren't set... well,
let me point you to the freedesktop.org website for the specs and you
can read it yourself, but try ~/.config and ~/.local/share .

https://www.freedesktop.org/wiki/Specifications/



FYI: here's a little POSIX shell snippet i use for diagnostics that can 
show you current XDG settings:


echo "[XDG Environment]"
while read var default; do
printf "%24s = %s\n"  "${var}" "$(eval echo \${$var-${default}\(\*\)})"
done<<"EOF"
XDG_DATA_HOME   ${HOME}/.local/share
XDG_CONFIG_HOME ${HOME}/.config
XDG_DATA_DIRS   /usr/local/share/:/usr/share/
XDG_CONFIG_DIRS /etc/xdg
XDG_CACHE_HOME  ${HOME}/.cache
XDG_RUNTIME_DIR /run/user/$(id -u)
XDG_SESSION_ID
XDG_SESSION_COOKIE
XDG_SESSION_TYPE
XDG_SESSION_CLASS
XDG_SESSION_DESKTOP
XDG_CURRENT_DESKTOP
XDG_SEAT
XDG_VTNR
XDG_DESKTOP_DIR $HOME/Desktop
XDG_DOCUMENTS_DIR   $HOME/Documents
XDG_DOWNLOAD_DIR$HOME/Downloads
XDG_MUSIC_DIR   $HOME/Music
XDG_PICTURES_DIR$HOME/Pictures
XDG_PUBLICSHARE_DIR $HOME/Public
XDG_TEMPLATES_DIR   $HOME/Templates
XDG_VIDEOS_DIR  $HOME/Videos
EOF
echo "(*) indicates variable unset and a default value substituted"



Re: Where kde saves user settings ?

2017-03-18 Thread Duncan
John_82 posted on Sat, 18 Mar 2017 16:15:50 + as excerpted:

> On Sat, 18 Mar 2017 07:15:35 + (UTC)
> Duncan <1i5t5.dun...@cox.net> wrote:
> 
>> John_82 posted on Fri, 17 Mar 2017 13:44:58 + as excerpted:
>> 
>> > Can anyone tell me where kde stores things like
>> > 
>> > Start button menu content.
>> > Task bar content.
>> > The state a user left when they logged out so that windows will
>> > mostly be restored etc.
>> > 
>> That's actually a broader question than you likely realize, with an
>> even broader answer as the locations have changed over the years and
>> kde versions, and frameworks-5-based apps now use the standard
>> freedesktop.org specified locations, while kde4-based apps (of which
>> there are still some around that haven't migrated yet and that might be
>> dropped in a year or two when kdelibs4 goes EOL if they still haven't
>> migrated) use the old kde location.

>> For plasma5 and frameworks5 based apps, as I said, the freedesktop.org
>> speced locations are normally used.  That's $XDG_CONFIG_HOME for
>> config, and $XDG_DATA_HOME for app data.  If those aren't set... well,
>> let me point you to the freedesktop.org website for the specs and you
>> can read it yourself, but try ~/.config and ~/.local/share .
>> 
>> https://www.freedesktop.org/wiki/Specifications/
>> 
>> That has lots of different specs listed, many of which may be
>> interesting reading (they certainly do here)

> I think I have managed to sort out what is going on since asking. I was
> particulary interested in start button menu's and taskbars.

I had answered more the general kde settings angle in the last post, and 
basically ignored the specific function bit.  This one will try to 
address that a bit.

> I can summarise the start button. Desktops have menu catagory trees
> whose contents may be set by a distro. The one on opensuse contains and
> amazing number of categories eg all will have utilities. It has history,
> science and miriads of others. Along side that there is a directory with
> dot dektop files which also contain category information. These seem to
> be scaned and and linked somehow into the eventual menu.

For modern full-feature desktops (including plasma and I believe lxde as 
well, but I'm not sure if the *box and similar closer to wm-only style 
desktops have updated) at least, these are all standardized.

Take a look at the general freedesktop.org specs link from earlier.  In 
particular, you'll want to look at the *.desktop file stuff as well as 
the menu stuff.  Basically, the *.desktop files are the basic building 
blocks for the menu, but there's a utility that grabs the information 
from these and assembles (IIRC) *.menu files from them.

And yes, there's both user and system locations.  The user locations will 
be under the $XDG_*_HOME dirs (IIRC CONFIG but could be wrong), the 
system locations under the parallel system $XDG_ dirs.

The categories are pretty standardized as well.  I think the general idea 
is that if you have only a few apps in a higher category, they'll be 
listed directly under it in ordered to avoid lower level categories with 
only an item or two, while if you're really interested in say science or 
games and have a whole lot of them, the top-level category will be broken 
down further into lower level ones.  Additionally, there's often a "more" 
entry, for the (theoretically) less used apps if the number of entries in 
a category gets too high and it hasn't been broken down further.  This is 
all based on usability studies showing that having more than 5-7 choices 
at once gets confusing for many users.

> There does seem
> to be user local taskbar set ups but also something system wide and as
> you mention some apps look after specific user settings in various ways.
> A few and the desktops seem to be doing that of ~/.configure. Seems like
> a good way forwards to me.

AFAIK, taskbar stuff hasn't been standardized, so it's each desktop for 
itself.

=== Meandering a bit... thru the === below...

FWIW, I don't actually use a "taskbar" in the normal sense (the widget 
under plasma), preferring alternatives such as alt-tab, the window list 
with a desktop middle-click, multiple desktops and desktop switching 
using scroll on the desktop or the cube or grid, etc.

And I have a /huge/ desktop, a 65-inch 4K monitor for my usual work along 
with a 48-inch full-hd monitor that's often running full-screen youtube 
or the like.  I've used kwin window rules to standardize most of my main 
windows to 1280x1080, letting me do three windows wide and two high, six 
work-windows displayed at once on the 65" 4k (along with the full-screen 
video window on the 48" full-hd), so I can get quite a lot on-screen at 
the same time without needing a switcher other than focus-follows-mouse 
and alt-tab, as well, meaning that along with multiple desktops, I only 
rarely need to actually stack windows on top of each other, so I don't 
normally need a switcher for that.

So I real

Re: Where kde saves user settings ?

2017-03-18 Thread John_82
On Sat, 18 Mar 2017 07:15:35 + (UTC)
Duncan <1i5t5.dun...@cox.net> wrote:

> John_82 posted on Fri, 17 Mar 2017 13:44:58 + as excerpted:
> 
> > Can anyone tell me where kde stores things like
> > 
> > Start button menu content.
> > Task bar content.
> > The state a user left when they logged out so that windows will mostly
> > be restored etc.
> > 
> > Think I have covered all that would be needed but maybe there are
> > others?
> > 
> > It's pretty obvious where some apps keep their states but I'm having
> > problems finding out where kde stores similar things.
> 
> That's actually a broader question than you likely realize, with an even
> broader answer as the locations have changed over the years and kde
> versions, and frameworks-5-based apps now use the standard freedesktop.org
> specified locations, while kde4-based apps (of which there are still some
> around that haven't migrated yet and that might be dropped in a year or
> two when kdelibs4 goes EOL if they still haven't migrated) use the old kde
> location.
> 
> The legacy kde4 location was in $KDEHOME, $HOME/.kde if $KDEHOME was unset
> (tho some distros changed that to .kde4 or so), ~/.kde if $HOME wasn't set
> either.
> 
> Inside that .kde, share was the major subdir, with the two major subdirs
> under share being config and apps.  The config subdir had individual
> config files.  The apps subdir was for apps with enough data/files to
> justify their own subdir beneath apps.  Generally, that was app-data, not
> specifically config, but sometimes the line isn't exactly clear.
> 
> So for kde4-based apps, try looking in ~/.kde/share/ in both the config
> and apps subdirs.
> 
> For plasma5 and frameworks5 based apps, as I said, the freedesktop.org
> speced locations are normally used.  That's $XDG_CONFIG_HOME for config,
> and $XDG_DATA_HOME for app data.  If those aren't set... well, let me
> point you to the freedesktop.org website for the specs and you can read it
> yourself, but try ~/.config and ~/.local/share .
> 
> https://www.freedesktop.org/wiki/Specifications/
> 
> That has lots of different specs listed, many of which may be interesting
> reading (they certainly do here), but finding the specific one you're
> after might be confusing due to the number of them.  So more specifically
> of interest here, try the basedir spec:
> 
> https://www.freedesktop.org/wiki/Specifications/basedir-spec/
> 
> 
> Meanwhile, the more kde-specific parallels for system administrators and
> more technical users are:
> 
> https://userbase.kde.org/Special:MyLanguage/KDE_System_Administration
> 
> That's the general page, with the topic specific pages:
> 
> https://userbase.kde.org/KDE_System_Administration/KDE_Filesystem_Hierarchy
> 
> https://userbase.kde.org/KDE_System_Administration/XDG_Filesystem_Hierarchy
> 
> https://userbase.kde.org/KDE_System_Administration/Environment_Variables
> 
> 
> As I said, likely a rather more complex question, and answer, than
> you anticipated. =8^0
> 
> 
> -- 
> Duncan - List replies preferred.   No HTML msgs.
> "Every nonfree program has a lord, a master --
> and if you use the program, he is your master."  Richard Stallman
> 
Thanks Duncan. I'll have a read. That sys admin one could be very interesting. 
The system installs do change the windowmanager variable but I'd like more info 
on what goes on there.

I think I have managed to sort out what is going on since asking. I was 
particulary interested in start button menu's and taskbars. I can summarise the 
start button. Desktops have menu catagory trees whose contents may be set by a 
distro. The one on opensuse contains and amazing number of categories eg all 
will have utilities. It has history, science and miriads of others. Along side 
that there is a directory with dot dektop files which also contain category 
information. These seem to be scaned and and linked somehow into the eventual 
menu. There does seem to be user local taskbar set ups but also something 
system wide and as you mention some apps look after specific user settings in 
various ways. A few and the desktops seem to be doing that of ~/.configure. 
Seems like a good way forwards to me.

I started wondering what was going on when I installed lxde as a test to 
another user account. I expectd that to give some isolation. It didn't my kde 
menu was twice the size and full of lxde apps some of which can't even work on 
a kde desktop. I then looked at another kde user ;-) Root. Same there so there 
is no isolation even if all users use the same desktop. Something windows has 
coped with for a very long time. Different desktops is one of linux's 
advantages but not much of one if it works as it does. It's a mess and one kde 
users menu settings changing anothers isn't exactly good either. I mentioned 
this on a forum and it was blamed on window managers. I'd be surprised if that 
was true so became curious. Turns out it's due to where distro's put the 
desktop files and I suspect when I ask kde a

Re: Where kde saves user settings ?

2017-03-18 Thread Duncan
John_82 posted on Fri, 17 Mar 2017 13:44:58 + as excerpted:

> Can anyone tell me where kde stores things like
> 
> Start button menu content.
> Task bar content.
> The state a user left when they logged out so that windows will mostly
> be restored etc.
> 
> Think I have covered all that would be needed but maybe there are
> others?
> 
> It's pretty obvious where some apps keep their states but I'm having
> problems finding out where kde stores similar things.

That's actually a broader question than you likely realize, with an even
broader answer as the locations have changed over the years and kde
versions, and frameworks-5-based apps now use the standard freedesktop.org
specified locations, while kde4-based apps (of which there are still some
around that haven't migrated yet and that might be dropped in a year or
two when kdelibs4 goes EOL if they still haven't migrated) use the old kde
location.

The legacy kde4 location was in $KDEHOME, $HOME/.kde if $KDEHOME was unset
(tho some distros changed that to .kde4 or so), ~/.kde if $HOME wasn't set
either.

Inside that .kde, share was the major subdir, with the two major subdirs
under share being config and apps.  The config subdir had individual
config files.  The apps subdir was for apps with enough data/files to
justify their own subdir beneath apps.  Generally, that was app-data, not
specifically config, but sometimes the line isn't exactly clear.

So for kde4-based apps, try looking in ~/.kde/share/ in both the config
and apps subdirs.

For plasma5 and frameworks5 based apps, as I said, the freedesktop.org
speced locations are normally used.  That's $XDG_CONFIG_HOME for config,
and $XDG_DATA_HOME for app data.  If those aren't set... well, let me
point you to the freedesktop.org website for the specs and you can read it
yourself, but try ~/.config and ~/.local/share .

https://www.freedesktop.org/wiki/Specifications/

That has lots of different specs listed, many of which may be interesting
reading (they certainly do here), but finding the specific one you're
after might be confusing due to the number of them.  So more specifically
of interest here, try the basedir spec:

https://www.freedesktop.org/wiki/Specifications/basedir-spec/


Meanwhile, the more kde-specific parallels for system administrators and
more technical users are:

https://userbase.kde.org/Special:MyLanguage/KDE_System_Administration

That's the general page, with the topic specific pages:

https://userbase.kde.org/KDE_System_Administration/KDE_Filesystem_Hierarchy

https://userbase.kde.org/KDE_System_Administration/XDG_Filesystem_Hierarchy

https://userbase.kde.org/KDE_System_Administration/Environment_Variables


As I said, likely a rather more complex question, and answer, than
you anticipated. =8^0


-- 
Duncan - List replies preferred.   No HTML msgs.
"Every nonfree program has a lord, a master --
and if you use the program, he is your master."  Richard Stallman



Where kde saves user settings ?

2017-03-17 Thread John_82
Can anyone tell me where kde stores things like

Start button menu content.
Task bar content.
The state a user left when they logged out so that windows will mostly be 
restored etc.

Think I have covered all that would be needed but maybe there are others?

It's pretty obvious where some apps keep their states but I'm having problems 
finding out where kde stores similar things.

John
-