Após o build, o banco de dados estava ficando somente leitura, devido a estar ficando em uma pasta que não era adequada para ficar, pois não tinha permissão de escrita.
Banco
Foi ajustado para que o banco fique na pasta app.getPath('userData') - setada na variável de ambiente process.env.databasePath, que é a localidade adequada para gravação de dados da aplicação. Essa localidade varia conforme o OS.
Ao realizar a conexão com o banco de dados, irá buscar pelo banco nessa localidade; caso não exista, irá pegar o banco de /database e copiar para essa localidade (isso acontecerá geralmente somente na primeira vez.)
Após isso, sempre irá buscar o banco nessa localidade, funcionando normalmente para leitura e escrita
Backup
Foi ajustado o processo de backup, para usar a variável process.env.databasePath, assim todos os arquivos temporários(zip) e de persistência de dados ficarão no mesmo lugar.
Build
Ajustado o package.json:
Instalado o electron-builder para o processo de build
Adicionado o target para linux, com build de arquivo .deb
Adicionado o path INICIAL do banco em extra-resources, para ser persistido na build
Descrição
Após o build, o banco de dados estava ficando somente leitura, devido a estar ficando em uma pasta que não era adequada para ficar, pois não tinha permissão de escrita.
Banco
app.getPath('userData')
- setada na variável de ambienteprocess.env.databasePath
, que é a localidade adequada para gravação de dados da aplicação. Essa localidade varia conforme o OS./database
e copiar para essa localidade (isso acontecerá geralmente somente na primeira vez.)Backup
Foi ajustado o processo de backup, para usar a variável
process.env.databasePath
, assim todos os arquivos temporários(zip) e de persistência de dados ficarão no mesmo lugar.Build
Ajustado o
package.json
:electron-builder
para o processo de buildlinux
, com build de arquivo.deb
extra-resources
, para ser persistido na buildIssue: #30