| ▲ | roger_ 4 hours ago |
| Does installation still require root and a dedicated user account on Linux? That really put me off. |
|
| ▲ | mikemcquaid 3 hours ago | parent | next [-] |
| See the release notes: we now have experimental support for using any prefix shorter than the Linux default. We are aiming to eventually fully support (Tier 1) any prefix under 64 bytes long. |
| |
| ▲ | mort96 2 hours ago | parent [-] | | Wait what? Why prefix length limits? Linux paths can be 4096 bytes long, I can't imagine y'all are hitting that? | | |
| ▲ | akerl_ 2 hours ago | parent | next [-] | | I’d imagine they’re live updating the library paths in the binary headers, so anything shorter or equal to what they’re using is a simple rewrite, but longer is more complex. | | |
| ▲ | mort96 2 hours ago | parent [-] | | Ah. That makes sense. It's so annoying how deeply UNIX packaging philosophy assumes that installation directories are something you hard-code at build time. | | |
| ▲ | akerl_ an hour ago | parent [-] | | The present is built mostly on layers of the long-past :) It makes me think of when Arch merged /usr/bin and sbin with /bin and sbin. Having them split made sense in a ton of scenarios that used to be very common, but increasingly the split was vestigial for most users. | | |
| ▲ | mort96 an hour ago | parent [-] | | Yea, my understanding is that the split between / and /usr used to be more or less: the drive they used for / ran out of space, so they mounted another drive as /usr. As a consequence, / became where you put stuff that was essential during early boot, while /usr was where you put everything else. But these days, "early boot" is handled by initramfs and we've all got drives large enough to not need the split anyway. | | |
|
|
| |
| ▲ | orf 2 hours ago | parent | prev [-] | | Pouring a bottle requires rewriting paths embedded in binaries, which results in a cap. Postgres is an example of this: the various directories are set at build time. |
|
|
|
| ▲ | wscott 4 hours ago | parent | prev | next [-] |
| The dedicated user isn't really required; it just expects that /home/linuxbrew/.linuxbrew exists. That can just be a symlink to your home directory. But yes, creating that symlink requires root on most systems. Brew itself doesn't require root or that pathname; you can put packages anywhere, but then many will have to be built from scratch since the pre-built packages don't work. And you need bubblewrap installed (which requires root) to use the sandbox, but again that is optional. All that said, when you are running without a sandbox installing to a nonstandard location, not everything works consistently. I run this mode all the time. But it has been getting better. |
| |
| ▲ | trallnag 4 hours ago | parent [-] | | Bubblewrap is history starting with 7.0.0 according to the release notes |
|
|
| ▲ | hk1337 3 hours ago | parent | prev | next [-] |
| I always download the install script and change the directory to my user home directory, ~/.brew |
|
| ▲ | dghlsakjg 4 hours ago | parent | prev [-] |
| The dedicated user account is optional. It uses root once to chown its prefix directory /home/linuxbrew/.linuxbrew |