Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

Needs additional system packages #6

Open
eserte opened this issue Dec 2, 2018 · 3 comments
Open

Needs additional system packages #6

eserte opened this issue Dec 2, 2018 · 3 comments

Comments

@eserte
Copy link

eserte commented Dec 2, 2018

Building Alien::Electron out of the box often does not work, because additional system packages are required. For example, on a debian/buster system I had to install libxss1 and libgconf-2-4 before successfully build & test Alien-Electron-0.200 (and maybe other required system packages were already installed on this system). On a Fedora28 the required packages were called libXScrnSaver and GConf2.

My questions:

  • should Alien-Electron depend on other Alien packages which provide the missing packages (and these Alien modules probably have to be created first)?
  • or should I just add the package dependencies to CPAN::Plugin::Sysdeps, so at least CPAN.pm users who use this plugin (probably very, very few) may install Alien::Electron out of the box?
@eserte
Copy link
Author

eserte commented Dec 2, 2018

Also required: libgtk-3.so.0

@hoytech
Copy link
Owner

hoytech commented Dec 5, 2018

Good questions! I'm not really sure how dependencies should be handledhere. Maybe @plicease has an idea?

@plicease
Copy link

plicease commented Dec 5, 2018

There is some mechanism for specify other Aliens as dependencies with alienfile, I think Alien::Libarchive3 is the only one that uses it, so it may not have been tested as widely as some of the other features of AB (obviously I am eager to improve support here if/when we do find issues).

https://metacpan.org/source/PLICEASE/Alien-Libarchive3-0.29/alienfile#L48-50

There is no mechanism for Alien::Base::ModuleBuild based Aliens to handle it.

Personally I think it is preferable where possible for the Alien to use other Aliens as dependencies, as that will work with cpanm and other installers. On the other hand the complexity of writing a aliens for some dependencies should be taken into account, some packages are difficult to alienize or to resource/time intensive to reasonably be built in cpantesters or end users boxes. So I think this is a judgement call on the part of the individual Alien maintainer.

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
None yet
Projects
None yet
Development

No branches or pull requests

3 participants