I installed Umbrello and it can neither save or autosave. Looking at the apps permissions it says that it is owned by root with group set to read only and that seems the problem. So my question in general is what SHOULD APPS PERMISSIONS be for general purposes and available to all users?
Except when setuid and setgid bit are set, the permissions of an executable file do not determine the security context of the process based on that file.
/bin/ls is owned by
root; but it doesn't have special permissions because of that. When user
ls process runs with the credentials of user
Applications that are for all users must be installed so that all users have permissions to run the executables, and all the global configuration data is readable to the users. None of that material should be writable. (For instance configuration in
/etc, static data in
/usr/share/<appname> (GNU/Linux convention).
An application should save its local user preferences in some area readable and writable to the user, like a config file in their home directory. If an application is not able to auto-save, that probably isn't a problem with the permission on its installation materials. Rather, it's trying to auto-save to a place where the invoking user doesn't have permission, or to a place that doesn't exist (a path with one or more directory components that don't exist). That could be a matter of something in the local or global configuration.
If you're running into puzzling permission problems in a program and it isn't clear what or where it is trying to access, one way you may be able to discover what is going on is to run the application under a system call tracing utility like
strace on GNU/Linux systems, or
truss on Solaris. (From a terminal console or window, or else with the traces redirected to a file.) When the permission problem reproduces, look for failing file-system-access-related system calls near the end of the trace.