Giter VIP home page Giter VIP logo

Comments (9)

kpete avatar kpete commented on August 23, 2024

Just curious, what was the original reason for recurse => true, in there? It seems like the formula should decide what perms its own files have... adding or removing execute permissions for packages themselves feels like it could mess with their own functionality... I even caught a crazy edge case with this module where 'watchman' (from facebook's tap) was creating a socket file in /usr/local/var/run, which caused a puppet error while trying to apply those perms (ignore => 'sock', fixed that fine though).

My initial impression is that this should only manage perms for folders above what packages might deploy, but maybe I'm missing some context, since it looks like you used to have it that way. Glad to see you're looking at this!!

from puppet-homebrew.

jordigg avatar jordigg commented on August 23, 2024

@kpete The recurse true was set to match this suggestions (http://blog.strug.de/2012/06/my-homebrew-multi-user-setup/) among others on how to make it work on a multi-user system.
Happy to help correct the needed permissions.
@TheKevJames how are you doing on this?

from puppet-homebrew.

kpete avatar kpete commented on August 23, 2024

@kpete The recurse true was set to match this suggestions (http://blog.strug.de/2012/06/my-homebrew-multi-user-setup/) among others on how to make it work on a multi-user system.
Happy to help correct the needed permissions.

Ahh that makes sense. I'll see if I end up with a situation where the package itself breaks from it, (not just puppet). Thanks!

from puppet-homebrew.

TheKevJames avatar TheKevJames commented on August 23, 2024

@jordigg for the most part, I'm blocked on #53 -- the long test cycles and random timeouts have been making this difficult to work on. I think I'll need to look into #53 first, but I've been way too busy lately. Hopefully I'll have some time over the weekend to look into this.

from puppet-homebrew.

kpete avatar kpete commented on August 23, 2024

@jordigg The recursive permissions seem to break logrotate. The default config file placed by the formula is in /usr/local/etc/logrotate.conf, and if logrotate is run as root (necessary to be able to rotate logs owned by root) then it returns: Ignoring /usr/local/etc/logrotate.conf because the file owner is wrong (should be root or user with uid 0).

from puppet-homebrew.

jordigg avatar jordigg commented on August 23, 2024

That makes sense. We should be able to limit the effect of the recurse to a few folders that are really owned by brew.
Want to check if it's possible to leave the chmod intact and just rely on the group to allow those members to manage brew in a multi-user environment.
I'll finish first with #52 and then work on this.

from puppet-homebrew.

kpete avatar kpete commented on August 23, 2024

The change to make the repo location /usr/local/Homebrew in brew 1.0 should help this a lot: Homebrew/install@2182f13

I'm happy to take a look at this too if time permits. Thanks!

from puppet-homebrew.

jordigg avatar jordigg commented on August 23, 2024

If homebrew is contained on it's own folder is going to make things easier for everyone.
Will check if it's already available and how it effects multi-user setup.

from puppet-homebrew.

TheKevJames avatar TheKevJames commented on August 23, 2024

As @kpete remarked, homebrew now installs to /usr/local/Homebrew so this issue was easily solved in #58 . Thanks @kpete and @jordigg for the comments!

from puppet-homebrew.

Related Issues (20)

Recommend Projects

  • React photo React

    A declarative, efficient, and flexible JavaScript library for building user interfaces.

  • Vue.js photo Vue.js

    🖖 Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.

  • Typescript photo Typescript

    TypeScript is a superset of JavaScript that compiles to clean JavaScript output.

  • TensorFlow photo TensorFlow

    An Open Source Machine Learning Framework for Everyone

  • Django photo Django

    The Web framework for perfectionists with deadlines.

  • D3 photo 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.

  • Game

    Some thing interesting about game, make everyone happy.

Recommend Org

  • Facebook photo Facebook

    We are working to build community through open source technology. NB: members must have two-factor auth.

  • Microsoft photo Microsoft

    Open source projects and samples from Microsoft.

  • Google photo Google

    Google ❤️ Open Source for everyone.

  • D3 photo D3

    Data-Driven Documents codes.