如何让pacman注意到rbenv安装的ruby?

如何让pacman注意到rbenv安装的ruby?

我用来rbenv管理ruby版本。

我想gvim在我的 ArchLinux 上安装,它的依赖项之一是ruby.

我已经习惯rbenv以 root 用户身份安装 2.0.0-p247 版本的 ruby​​ 并进行设置rbenv global 2.0.0-p247,但是当我尝试时sudo pacman -S gvimpacman仍然安装该软件包ruby-2.0.0_p247-1

我怎样才能pacman注意到ruby安装者rbenv

答案1

你不能。但是,您可以欺骗 pacman,让其认为您已经这样做了(有两种方法可以做到这一点)。

  1. 只需传递--dbonly选项:

    pacman -S --dbonly ruby
    

    这会将事务提交到数据库(记录安装),但实际上并不下载或安装任何软件包。

    如果需要,您还可以将--asdeps其标记为依赖项。

    另请注意:Ruby 可能会在升级时真正安装。我不知道。您可能需要考虑锁定版本(没关系,因为它没有真正安装或关键,但通常您不应该这样做)。

  2. 使rbenv提供ruby。您可以通过将以下行放入rbenvPKGBUILD 中来完成此操作:

    provides=('ruby')
    

    执行此操作后,makepkg再次运行并使用 重新安装软件包pacman -U foobar.pkg.tar.xz

    你可能不得不搞乱这个版本。请参阅PKGBUILDS 上的 wiki 页面

相关内容