Есть программа. Программа работает с базой данных SQLite, куда в процессе своей работы пишет всякие нужные себе данные. База данных будет в файлике где-нибудь в /var/lib/programname/programname.db, вроде по FHS должно быть так.
Вопрос, как идеологически правильно создавать этот файл с базой:
1) при инсталляции программы (вызываем клиент sqlite3 и скармливаем ему SQL скрипт с командами создания таблиц и инсертами начальных данных)
2) или самой программой при первом запуске, т.е. когда программа обнаруживает, что файл не существует, она его создает и инициализирует его?