Comments (8)
This one needs an extra attribute $slot in package_* providers, and then a attributes $slot, $slot_{keywords,use,mask,unmask} in portage::package as well (just like $version and $target)
from puppet-portage.
Installing in two or more different slots using portage::package
is not possible yet. We need to patch the upstream package provider to query slots through eix
.
from puppet-portage.
It's not even possible to add to add the same package with different slots in any of the package_* providers yet either. We will need to come up with another solution for that, since puppet will scream for duplicate resource if we do the following:
package_keywords { 'sys-devel/gcc':
slot => '4.4'
}
package_keywords { 'sys-devel/gcc':
slot => '4.5'
}
A solution might be to force the user to add the slot in the resource name, and then make puppet-portage to construct the package name and slot based on that, for example:
package_keywords { 'sys-devel/gcc:4.8'}
# Internally set $name=sys-devel/gcc $slot=4.8
from puppet-portage.
another solution I just though of is to provide values to the slot
argument as a list:
package_keywords { 'sys-devel/gcc':
slot => ['4.4', '4.5']
}
portage::package { 'sys-devel/gcc':
slot => ['4.4', '4.5']
}
In this case, package_keywords
will add two entries in package.keywords
, and portage::package
will install both gcc:4.4
and gcc:4.5
. How about this?
from puppet-portage.
SGTM.
from puppet-portage.
is something like this implemented yet?
from puppet-portage.
This will be a lot easier if the upstream provider supports slots: puppetlabs/puppet#2649
from puppet-portage.
Slots are available since puppet 4.6.0 (puppet-agent 1.6.0), according to https://tickets.puppetlabs.com/browse/PUP-2802 (related to puppetlabs/puppet#2649).
I would be also interested in this feature (there seems to be no way to set USE per slot right now...).
from puppet-portage.
Related Issues (20)
- Implement type/provider for mirrorselect
- Each time I run puppet agent it re-emerges php HOT 4
- eselect no longer support --no-color (it should be --colour=no) HOT 3
- package_keywords and portage::package conflict on declaration
- Ability to install multiple versions of the same package
- Missing support for package.license
- package_env improvements
- Support for repos.conf
- permit multiple package_* definitions for same package
- Facter 3.0.1 Compatability? HOT 1
- package_keywords fails to parse package.keywords comment lines HOT 4
- Layman >=2.3.0
- Package is always rebuilt when flags change
- comment matching pattern HOT 1
- Anyone maintainig this? HOT 1
- Add possibilty to set keyword versions for module maintained packages HOT 2
- Package not rebuild after new flag addition HOT 3
- portage::package doesnt ensure @world presence
- Layman support breaks make.conf HOT 1
- Providers are overly restrictive and confine to operatingsystem rather than osfamily
Recommend Projects
-
React
A declarative, efficient, and flexible JavaScript library for building user interfaces.
-
Vue.js
🖖 Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.
-
Typescript
TypeScript is a superset of JavaScript that compiles to clean JavaScript output.
-
TensorFlow
An Open Source Machine Learning Framework for Everyone
-
Django
The Web framework for perfectionists with deadlines.
-
Laravel
A PHP framework for web artisans
-
D3
Bring data to life with SVG, Canvas and HTML. 📊📈🎉
-
Recommend Topics
-
javascript
JavaScript (JS) is a lightweight interpreted programming language with first-class functions.
-
web
Some thing interesting about web. New door for the world.
-
server
A server is a program made to process requests and deliver data to clients.
-
Machine learning
Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.
-
Visualization
Some thing interesting about visualization, use data art
-
Game
Some thing interesting about game, make everyone happy.
Recommend Org
-
Facebook
We are working to build community through open source technology. NB: members must have two-factor auth.
-
Microsoft
Open source projects and samples from Microsoft.
-
Google
Google ❤️ Open Source for everyone.
-
Alibaba
Alibaba Open Source for everyone
-
D3
Data-Driven Documents codes.
-
Tencent
China tencent open source team.
from puppet-portage.