called RPMLint that make an analysis of the packages and gives you advices about them, sometimes rejecting the packages based on the analysis
(the construction fails).
I've encounter this problems trying to make the package:
- Cobra compiles and installs all in one phase, when Unix has two different phases, build and then install.
- The user must be admin, because it installs files in protected directories /usr/local/cobra or /usr/lib/mono. The creation of the
package in admin mode is not recommended. We fake the installation in a false root directory (BUILDROOT). - Documentation is installed in non standard place
(with exe's and dlls). - The directory Test contains executables and is recommended to
move it to the doc directory under an examples folder. - The files mkJar and mkjarAll under Source/Cobra.Core/Java are scripts
(with #!) but don't have exe permissions. - No man page for cobra.
- Cobra dlls are installed in GAC and under the installation directory. RPMLint complaints about duplicated files that must be symlinked.
My solutions are:
- Points 1 and 2 are patched in InstallFromWorkspace.cobra.
- 3 and 4 can be solved in package spec.
- Point 5, means that I have to change permissions and tarball the code, but it won't be the same tar found in cobra-language.com.
- Point 6, easy can be doit.
- Point 7, what to do? Are dlls needed in install dir?
So is possible to make a package for Cobra, but not easy for me. I still need to polish the package (sign, dependencies, etc).
The package is in https://build.opensuse.org/package/show ... raya/Cobra Someone want to test it?
OBS is an interesting tool. It is supposed to help you doing a package for different distros. I need to learn more.
Reading the code of InstallFromWorkspace.cobra made me think in refactor the code. In the next post I'll show you my ideas.
Good night!