An attempt at improving cross-distribution software deployment: The Psys Library
Denis Washington
dwashington at gmx.net
Thu Jun 24 08:10:06 PDT 2010
On 24.06.2010 16:58, seth vidal wrote:
> On Thu, 2010-06-24 at 16:35 +0200, Michal Marek wrote:
>
>
>>> If removing the package just involves removing the package's files (a
>>> common case for a lot of end-user applications), then "rpm -e" will work
>>> flawlessly (the installer informs the package manager about all
>>> installed files with libpsys). The interface does currently not allow
>>> installers to specify uninstall scripts, though this feature could be
>>> trivially added if needed.
>>>
>> I consider this a bit dangerous, if the "official" uninstaller performs
>> other tasks than deleting files, these should be performed by rpm -e as
>> well.
>>
>>
>
> Agreed. Sysadmins like to have everything in the packaging system for a
> number of reasons:
>
> 1. inventory
> 2. monitoring for updates
> 3. one-stop-shop for all info about what is on the system
> 4. ease of removal
> 5. ease of reinstallation/duplication.
>
> My thoughts on psys are something to this effect:
>
> 1. it should definitely add any uninstaller scripts to the %postun of
> the package system
>
Agreed. This can be easily added as I have already stated.
> 2. it should potentially add an option to generate a package in the
> format of the packaging system from the files specified to it - that
> would aid in helping sysadmins deploy the isv software on more systems
> (number 5 above).
>
> so think of it something like:
>
> psys --install-from-files=<fileslist> --name=myisv --version=1.1.1
> --release=1 --generate-package ... ... ..
>
> which puts a pkg entry into the packaging systems' db (rpmdb or deb
> packages list) and generates a package file (.rpm or .deb).
>
Note that psys is a library, not a program (I should probably refer to
it as libpsys to make things clear). The package generation would be
quite doable, however, either by a wrapper program which catches the
psys_register() calls of an installer and generates the package from the
provided metadata, or automatically by the distribution's libpsys
backend (which could put the generated package archive into its
packaging system's cache, for instance, like /var/cache/apt/archives for
Debian; this would have the added benefit that the package could be
easily reinstalled with package management tools such as Synaptic).
Regards,
Denis
More information about the Distributions
mailing list