[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

Re: [gambas-package-config] Automatic generation of OBS configuration


Am 30.11.24 um 20:08 schrieb Benoît Minisini:
Hi,

The 'gambas-package-config' configuration now generates in the '.obs' directory:

- The 'PKGBUILD' file.
- The 'gambas3.spec' file.
- The 'debian.tar.gz' file.

I have now some requirements and questions...

1) Can Paolo, Laurent, Willy, or anyone else, check these files and their corresponding template in the 'gambas-package-config' project to tell me what the errors are, what is missing, and so on...


First notes on 'gambas3.spec':

In '%package ide' the hyphen is missing in 'devtools':
Requires: %{name}-devtools = %{version}

The packages 'gambas3-gb-debug' and 'gambas3-gb-eval' do not exist, not even as virtual packages.
Their files are integrated in 'gambas3-runtime'.
Either you define the above mentioned packages as virtual under 'gambas3-runtime' or you remove the entries in '%package ide':
Requires: %{name}-gb-debug = %{version}
Requires: %{name}-gb-eval = %{version}

The situation is similar for %{name}-gb-gui, %{name}-gb-gui-webview and %{name}-gb-hash: All present in 'gambas3-runtime' - from a maintainability point of view, I would remove such references completely and only insert the following:
Requires: %{name}-runtime = %{version}


If you do not need the variable '%define _desc' in the 'gambas3.spec' file, because you insert the text anyway using 'gambas-package-config', then all references to '%{_desc}' in the 'gambas3.spec' can be removed (and the '%define _desc' itself, of course).


Each package description '%package' needs its own '%description', but this is missing in the generated 'gambas3.spec'.
It should read correctly, e.g:
%package gb-crypt
...
%description gb-crypt
...


You have included the packages gb-compress-bzlib2, -zlib and -zstd again individually, but then you must also remove the virtual definitions in 'gb-compress' again.


If packages offer paths that are not in the official file system, then these paths must either be offered by a common package (e.g. gambas3-filesystem), or the packages themselves must ensure that these paths are made known to the system.

Otherwise, 'dead' directories will remain after uninstalling packages.
E.g:
%files gb-util
%dir %{_datadir}/%{name}
%dir %{_datadir}/%{name}/info
%dir %{_libdir}/%{name}
%{_datadir}/%{name}/info/gb.util.{info,list}
%{_libdir}/%{name}/gb.util.{component,gambas}

%files gb-util-web
%dir %{_datadir}/%{name}
%dir %{_datadir}/%{name}/control
%dir %{_datadir}/%{name}/info
%dir %{_libdir}/%{name}
%{_datadir}/%{name}/control/gb.util.web
%{_datadir}/%{name}/info/gb.util.web.*
%{_libdir}/%{name}/gb.util.web.*

Although this is generally defined, it is not always correct.


More line breaks (72 characters?) in the 'description' would certainly not be wrong either, but this is an optical issue for now.

I will try to offer the mentioned topics as merge-requests, but I will be less available at least until the end of the year.


Regards



Follow-Ups:
Re: [gambas-package-config] Automatic generation of OBS configurationBenoît Minisini <benoit.minisini@xxxxxxxxxxxxxxxx>