Python applets and meson

I had a question about the Budgie applets written in python. Despite not being compiled, these applets come with a meson.build file. I notice that some, for example ClockWorks, have extra installation info, like where to install icons, and a post install script to compile the schema.

Does this meson.build file only exist for the benefit of packagers? Or is it possible use this file to install the applet from the command line, like you can with ninja install for the vala applets? I know the python applets can be installed through apt, Budgie Welcome, or manually copied. I was just more curious as to whether meson in this instance was used outside packaging.

1 Like

As a developer I use meson to ensure things are compiled and installed in a way that is completely distro independent.

Bash scripts have to take into account the complexities of different distros e.g. figuring out compile dependencies, install locations that are different.

And yes, it makes packaging very very simple. The package just points to the meson.build file and then the developer instructions in meson is then run.

From a support point of view all you have to ask is to install in the way you specified rather than some random way that can and will go wrong.

2 Likes

Much appreciated. This makes a lot of sense. I was trying to piece together the purpose of this file when in a project that’s not compiled, but that was hard to track down. Web searches turn up endless information about installing python for meson, or launching python scripts from meson, but not the answer to my question, so thank you for the explanation.

1 Like