Do chef or puppet have any slackware support? Are any slackware admins using either of these? What has your experience with them been and which one would you recommend to someone who is maintaining about a dozen slackware machines?


Slackware hasn't been requested for support, and its not one that anyone at Opscode uses, so Chef doesn't currently support Slackware (version 0.9.12). It needs two things for this to happen:

For the former, the platform plugin would need to determine somehow if the system is slackware (e.g., /etc/slackware-release contents).

For the latter, the platform specific support would be mainly for services and packages. It wouldn't be terribly difficult to add support to Chef, if you would like to open a ticket requesting this support, head to the Opscode Open Source Tickets. If you would like to contribute code to do any of this, learn how to contribute to Opscode projects.

  • Thanks! I will try and add support for slackware to Chef.
    – anshul
    Jan 13 '11 at 6:24
  • Thanks, that's awesome. Let me know if you have any questions about Chef in general :).
    – jtimberman
    Jan 13 '11 at 17:18

I felt although this is an older question, it needs another answer. It seems to me Puppet is, out of the box, almost completely capable of managing Slack boxes. The only issue I've seen is package management...namely, there is no support for slackpkg/slapt-get/swaret/etc.

Anyway before I ramble on too long, I think facter (from my understanding, the Puppet equivalent of ohai) has full Slack support, but puppet itself doesn't know what package management system to use. It seems puppet would be easier to get running with Slackware out of the box.

There is a slapt-get patch for puppet which allows you to use "slapt" as a provider: http://projects.puppetlabs.com/attachments/741/puppet-0.25.0-slapt-get.patch

This might also be of some service: http://www.mail-archive.com/puppet-users@googlegroups.com/msg20351.html

Note, with the above slapt-get.patch, you can do something like:

package { "mongodb":
    provider => slapt,
    ensure => latest

It's particularly cool if you run your own slapt-get repo (relatively simple). Then you can rely only on the packages you build yourself, and not someone else on some third-party repo.

  • 1
    If you don't need full package-type support, you can easily define something that can work until support for slapt-get is available: define slappkg() { exec { "/usr/bin/slapt-get $name": creates => '/file/in/the/package/or/maybe/even/a/database/file/of/the/slackware/package/system/that/corresponds/to/the/package' } } and use it like slappkg { ['gnome','kde']: }
    – ptman
    May 2 '11 at 14:47
  • ptman, this is awesome, I didn't know this. As of a few hours ago, I got slapt-get going by just setting the provider as "slapt" in the package definition. The patch I linked above seems to work great, but I'll keep your function in mind of anything goes wrong. Thanks!
    – andrew
    May 2 '11 at 22:36
  • Thanks for this. I will try out puppet with this patch. Ohai too now supports Slackware. Hopefully, both chef and puppet will soon be working perfectly with slack!
    – anshul
    May 10 '11 at 10:05

Your Answer

By clicking “Post Your Answer”, you agree to our terms of service, privacy policy and cookie policy

Not the answer you're looking for? Browse other questions tagged or ask your own question.