site  contact  subhomenews

woofV packages-templates redesigned

January 29, 2024 — BarryK

Continuing the woofV project. Recent relevant blog posts:

Woof, right from the very early days, has a folder 'packages-templates', which, in a nutshell, has hacks to modify a package before and after installation. Back in the early days, the main reason for this mechanism was to reduce the size of packages. Another purpose was that packages could come from different distribution repositories, and might need some massaging -- for example some files kept in unexpected places.

We are not so much concerned about size reduction these days; however, 'packages-templates' is still useful. The format of information in 'packages-templates' has remained the same in WoofQ as the very early Woofs. Same as Woof-CE "legacy" branch:

https://github.com/puppylinux-woof-CE/woof-CE/tree/legacy/woof-code/packages-templates

This old mechanism is extremely cumbersome and slow to process. The Woof-CE developers have, over the years, simplified it. In particular, forum member dimkr has worked on it, see the "testing" branch:

https://github.com/puppylinux-woof-CE/woof-CE/tree/testing/woof-code/packages-templates

The very ambitious plan for easyVoid is to have a new Woof, "woofV", and it will be builtin, available in a running easyVoid. It will be found at /usr/local/woofV. In /usr/local/woofV/pkg-fix is the folder 'packages-templates'.

The time has come for me also to redesign the format in 'packages-templates'. Here it is:

https://github.com/bkauler/woofq/tree/main/easyos/easy-code/rootfs-skeleton/usr/local/woofV/pkg-fix/packages-templates

It took a couple of very intense and tedious days to convert the old format to the new one. Anyway, just now finished and uploaded.

The script that reads the information in 'packages-templates' has not been uploaded, as it is still in a state of flux. What will happen is that each package that has a matching folder name under 'packages-templates', is expanded, processed, then rebuilt into a package and then installed with the XBPS package manager into the rootfs.

easyVoid is also built with a lot of Kirkstone packages, and they will be processed the same way. Whether requiring processing via 'packages-templates' or not, they will always be opened up and rebuilt as .xbps packages, so that the XBPS package manager can install them.    

Tags: easy