You are viewing a plain text version of this content. The canonical link for it is here.
Posted to issues@openoffice.apache.org by bu...@apache.org on 2013/03/24 17:05:57 UTC

[Bug 121949] New: SYSUSERCONFIG should default to $HOME/.config and not to $HOME

https://issues.apache.org/ooo/show_bug.cgi?id=121949

            Bug ID: 121949
        Issue Type: DEFECT
           Summary: SYSUSERCONFIG should default to $HOME/.config and not
                    to $HOME
    Classification: Code
           Product: General
           Version: AOO400-dev
          Hardware: All
                OS: All
            Status: CONFIRMED
          Severity: normal
          Priority: P3
         Component: ui
          Assignee: issues@openoffice.apache.org
          Reporter: pescetti@apache.org
                CC: issues@openoffice.apache.org

As reported by Ariel in
https://issues.apache.org/ooo/show_bug.cgi?id=121914#c4
we have an incorrect (as per Freedesktop specifications) default setting for
SYSUSERCONFIG when XDG_CONFIG_HOME is not set. Full explanation follows, for
convenience.

We would expect $SYSUSERCONFIG to mean $HOME/.config .
http://svn.apache.org/viewvc/incubator/ooo/trunk/main/sal/osl/unx/security.c?revision=1303378&view=markup#l795

795     static sal_Bool SAL_CALL osl_psz_getConfigDir(oslSecurity Security,
sal_Char* pszDirectory, sal_uInt32 nMax)
796     {
797     sal_Char *pStr = getenv("XDG_CONFIG_HOME");
798     
799     if ((pStr == NULL) || (strlen(pStr) == 0) ||
800     (access(pStr, 0) != 0))
801     return (osl_psz_getHomeDir(Security, pszDirectory, nMax));
802     
803     strncpy(pszDirectory, pStr, nMax);
804     return sal_True;
805     }

the code is getting the value from XDG_CONFIG_HOME; if it is unset or empty,
then it resolves to $HOME.

But the freedesktop specification says:
http://standards.freedesktop.org/basedir-spec/basedir-spec-latest.html
"$XDG_CONFIG_HOME defines the base directory relative to which user specific
configuration files should be stored. If $XDG_CONFIG_HOME is either not set or
empty, a default equal to $HOME/.config should be used."

It should resolve to $HOME/.config

-- 
You are receiving this mail because:
You are on the CC list for the bug.
You are the assignee for the bug.

[Bug 121949] SYSUSERCONFIG should default to $HOME/.config and not to $HOME

Posted by bu...@apache.org.
https://issues.apache.org/ooo/show_bug.cgi?id=121949

--- Comment #2 from Ariel Constenla-Haile <ar...@apache.org> ---
(In reply to comment #1)
> I wonder if the 3/user is needed at all. 

Start OpenOffice, then


]$ ls -a ~/.openoffice.org/3/
.  ..  .lock  user

The user profile is locked with a file called .lock
So far this is the only use I've found for having this directory structure.

-- 
You are receiving this mail because:
You are on the CC list for the bug.
You are the assignee for the bug.

[Bug 121949] SYSUSERCONFIG should default to $HOME/.config and not to $HOME

Posted by bu...@apache.org.
https://issues.apache.org/ooo/show_bug.cgi?id=121949

Edwin Sharp <el...@apache.org> changed:

           What    |Removed                     |Added
----------------------------------------------------------------------------
                 CC|                            |ccheney@ubuntu.com

--- Comment #3 from Edwin Sharp <el...@apache.org> ---
*** Bug 87678 has been marked as a duplicate of this bug. ***

-- 
You are receiving this mail because:
You are on the CC list for the bug.
You are the assignee for the bug.
You are watching all bug changes.

[Bug 121949] SYSUSERCONFIG should default to $HOME/.config and not to $HOME

Posted by bu...@apache.org.
https://issues.apache.org/ooo/show_bug.cgi?id=121949

Ariel Constenla-Haile <ar...@apache.org> changed:

           What    |Removed                     |Added
----------------------------------------------------------------------------
                 CC|                            |arielch@apache.org

--- Comment #1 from Ariel Constenla-Haile <ar...@apache.org> ---
If someone wants to play with this, you have to:

- open a terminal
- see if $XDG_CONFIG_HOME is set:

]$ echo $XDG_CONFIG_HOME

if nothing is echoed, then it is unset.

- if unset, export it so that it points to $HOME/.config:

]$ export XDG_CONFIG_HOME=$HOME/.config

- then launch AOO from this terminal:

]$ /opt/openoffice.org3/program/soffice

Go to the menu Tools - Options... - OpenOffice.org - Paths. It should show the
user paths pointing to $HOME/.config

So far everything seems to work.
The problem I see is the naming:

$HOME/.config/.openoffice.org/3/user

a) a hidden folder inside a hidden folder does not make sense
b) too many folders: 
1) .openoffice, 
2) the major version 3, 
3) user

I wonder if the 3/user is needed at all. If you start AOO with the
-env:UserInstallation switch pointing to a folder, it only writes into that
folder; so why this "user" folder inside ".openoffice.org/3/" ?

In short, if we choose this approach, we should simplify it (if possible);
something like

$HOME/.config/openoffice4

-- 
You are receiving this mail because:
You are on the CC list for the bug.
You are the assignee for the bug.