我安装了 macports,它使用默认/opt/local
位置。有一些软件包不在 macports 中,还有一些我编写的工具放在了 中~/bin
。我发现自己需要在我的计算机上让多个用户使用这些工具,我不想将相同的二进制文件复制到每个用户目录中。
/opt
是针对第三方软件的典型建议,这也是 macports 使用 的原因/opt/local
。但是,将非 macports 软件包放入 中似乎不是一个好主意/opt/local
。/usr
也通常建议这样做,但我可能应该远离它,原因与 macports 决定不使用它的原因相同。
似乎 macports 完全存在于 中/opt/local
,所以我倾向于在 中创建一个新目录/opt
,例如/opt/somename
,并模仿其结构/opt/somename/lib
/opt/somename/bin
等......
也许我有点太过挑剔,但我想不出一个有意义的目录名称。/opt/local
应该是合适的,我希望 macports 可以/opt/macports
代替它。但我宁愿尽可能多地使用默认配置,所以我不想更改 macport 的默认目录。
所以我的问题分为两部分:
- 您将如何称呼您的自定义包目录
/opt
- 如果您不同意将上述内容
/opt/somname
或我的策略中的任何其他内容放入其中,那么您能否建议一个合理、相当独立的替代方案。
我真的很想知道人们在自己的环境中是如何解决这个问题的,但令我惊讶的是,我找不到任何相关信息。另外,我知道一个选择就是创建自己的端口,但我想专门回答上述两个问题。
答案1
我觉得你太强调目录不是“任意的”。在 Mac 上,即使/opt
是随意的,因为它不是操作系统不可分割的一部分,而且/opt
除非你创建目录(或者 macports 创建目录),否则目录并不存在。一旦你接受了这一点,你的新目录就只是一个名称和一些权限,名称并没有什么特别之处。
Fink 使用/sw
。一方面,这可能比 更“随意” /opt
,因为我从未在我使用过的任何 Linux 上注意到过它。另一方面,我的所有 Mac 都有一个/sw
目录,里面有一堆二进制文件(某处)——因为我使用 fink——所以如果您真的想使用别人以前用过的名字(假设您自己不使用 fink),您可以继续使用它。=)
但实际上,任何名字都可以。这真的无关紧要。如果您的主要标准是使用不太可能被其他任何东西使用的目录,请自己想一个名字。