![如何让pacman注意到rbenv安装的ruby?](https://linux22.com/image/50046/%E5%A6%82%E4%BD%95%E8%AE%A9pacman%E6%B3%A8%E6%84%8F%E5%88%B0rbenv%E5%AE%89%E8%A3%85%E7%9A%84ruby%EF%BC%9F.png)
我用来rbenv
管理ruby
版本。
我想gvim
在我的 ArchLinux 上安装,它的依赖项之一是ruby
.
我已经习惯rbenv
以 root 用户身份安装 2.0.0-p247 版本的 ruby 并进行设置rbenv global 2.0.0-p247
,但是当我尝试时sudo pacman -S gvim
,pacman
仍然安装该软件包ruby-2.0.0_p247-1
。
我怎样才能pacman
注意到ruby
安装者rbenv
?
答案1
你不能。但是,您可以欺骗 pacman,让其认为您已经这样做了(有两种方法可以做到这一点)。
只需传递
--dbonly
选项:pacman -S --dbonly ruby
这会将事务提交到数据库(记录安装),但实际上并不下载或安装任何软件包。
如果需要,您还可以将
--asdeps
其标记为依赖项。另请注意:Ruby 可能会在升级时真正安装。我不知道。您可能需要考虑锁定版本(没关系,因为它没有真正安装或关键,但通常您不应该这样做)。
使
rbenv
提供ruby
。您可以通过将以下行放入rbenv
PKGBUILD 中来完成此操作:provides=('ruby')
执行此操作后,
makepkg
再次运行并使用 重新安装软件包pacman -U foobar.pkg.tar.xz
。你可能不得不搞乱这个版本。请参阅PKGBUILDS 上的 wiki 页面。