Comunidad Gambas-es
Directorio para guardar los datos de la aplicación - Versión para impresión

+- Comunidad Gambas-es (https://gambas-es.org)
+-- Foro: Gambas (https://gambas-es.org/forum-3.html)
+--- Foro: General (https://gambas-es.org/forum-4.html)
+--- Tema: Directorio para guardar los datos de la aplicación (/thread-933.html)



Directorio para guardar los datos de la aplicación - Shell - 26-06-2022

Buenas!.

Estaba viendo una aplicación que hice un tiempo. Guarda los datos en un directorio oculto del usuario, por ejemplo:

/home/miusuario/.juego

En este caso se está guardando la base de datos de esta aplicación.

¿ Es el procedimiento normal ?. O debería usar mejor

/home/miusuario/.config/gambas3/juego

¿ En el caso de settings sera igual supongo ?. Los settings van en este último.
Pero como veo tantos directorios dentro de .config

Que podría ser:

/home/miusuario/.config/juego

Saludos


RE: Directorio para guardar los datos de la aplicación - Shordi - 26-06-2022

Los datos de configuración van a ~/.config/programa. Los datos del programa, como las bases de datos y demás, al ~/.local/share/<programa>
Ese es el estándar.

Saludos.


RE: Directorio para guardar los datos de la aplicación - tercoide - 27-06-2022

(26-06-2022, 15:58)Shell escribió: /home/miusuario/.config/juego

yo los pongo ahi
(26-06-2022, 19:32)Shordi escribió: Los datos del programa, como las bases de datos y demás, al ~/.local/share/<programa>

claro, datos que se alteran pueden ir ahi, pero si nuestro programa tiene imagenes de iconos, por ejemplo, u otras cosas que el end-user no deberia tocar conviene ubicarlas en:
/usr/share/<programa> 
El paquete de instalacion puede tomar lo que esta en /<programa>/.hidden/ y ubicarlos en donde querramos.


RE: Directorio para guardar los datos de la aplicación - Shell - 27-06-2022

Vaya, en ese momento olvide el directorio .local
 
(27-06-2022, 14:57)tercoide escribió: claro, datos que se alteran pueden ir ahi, pero si nuestro programa tiene imagenes de iconos, por ejemplo, u otras cosas que el end-user no deberia tocar conviene ubicarlas en:
/usr/share/<programa> 

Si tienes varios usuarios el ordenador, no parece la mejor forma de repetir archivos por cada uno que tenga.
Siendo /usr/share/programa lo más adecuado. A menos que sea algo propio de cada usuario.

Si que complica la cosa. Y no digamos si fuese algo compartido con todos los usuarios de una misma máquina , que cada uno pudiera leer y modificar un archivo
concreto. (Parece un grupo)

Saludos


RE: Directorio para guardar los datos de la aplicación - tercoide - 28-06-2022

(27-06-2022, 16:02)Shell escribió: Si que complica la cosa.

hay que ver si el programa merece al pena de tener que expandir sus alcances:
-es multiuser?
-se ira actualizando automaticamente?
-tiene archivos temporales?
-genera archivos post-instalacion?
-genera archivos que deben leerse por otros programas?

en el CAD usamos:
/usr/share/gambascad para las imagenes de los ToolButtons y otras cosas fijas que solo se actualizan con una nueva version
~/.config/gambascad para la configuracion y archivos temporales de trabajo (podrian ir en otro lado, pero los deleteo al inicio)
~/Documentos para los dibujos

ademas, el paquete de instalacion genera otras cosas, por ejemplo:
/usr/share/applications/gambascad.desktop para integracion en el sistema (abrir DWG o DXF con doble click)
/usr/share/doc/ cosas de la version instalada
/usr/share/menu/gambascad la entrada en el menu


RE: Directorio para guardar los datos de la aplicación - Shell - 28-06-2022

Pues merece la pena crear un tutorial sobre esto. O documentación.
 
(28-06-2022, 12:08)tercoide escribió: ~/Documentos

Supongo que añadiendo el nombre de la aplicación a este directorio, documentos hay una gran diversidad.
 
(28-06-2022, 12:08)tercoide escribió: /usr/share/menu/gambascad la entrada en el menu

Observo en este directorio /usr/share/menu no se encuentran todas las
del sistema. Solo algunas.
 
Cita:/usr/share/menu
├── aptitude
├── bash
├── bc
├── dash
├── dc
├── gdb
├── google-chrome.menu
├── pix
├── pppconfig
├── pppoeconf
├── procps
├── psmisc
├── redshift-gtk
├── synaptic
├── telnet
├── transmission-gtk
├── x11-apps
├── x11-utils
├── x11-xserver-utils
├── xroar
└── xviewer

Alguna que he añadido como xoar que es un emulador de Dragon32 64 ( En realidad la compilé y la instalé desde fuente).
Probablemente creé manualmente la entrada al menú. Tiene todo la pinta.

Saludos