I recently started packaging up some of my software and publishing it on Launchpad. The installation and removal works fine, but upgrading the package from one version to the next version is problematic.
The problem is that there are some scripts that only need to run during the first installation of the package. These scripts populate the DB, create a user, etc. They are currently called in the package.postinst
configure) section. However this results in them being called during an upgrade as well as shown in the diagram.
Is there a way to include a maintainer script in a .deb package that only executes during the first installation of the package and not during an upgrade? Or what would be an elegant way to include some initial setup scripts in a .deb package?