【ArchSummit】如何通过AIOps推动可量化的业务价值增长和效率提升?>>> 了解详情
写点什么

DebGem:Debian 的 Ruby Gems

  • 2009-01-24
  • 本文字数:956 字

    阅读完需:约 3 分钟

在 Linux 系统中,通常我们需要一个包管理系统来管理所有安装的软件,例如 Debian 和 Ubuntu 的 APT 或者 RedHat 的 RPM 。 另一方面,很多编程语言都有着自己的安装和更新软件的工具,例如 Ruby 的 Gems 和 Python 的 Eggs。如果在那些不提供包管理服务的操作系统上, 编程语言的这种做法看似是合理的。但是在 Linux 上,这样会带来许多不便,因为“它从系统的标准包管理器中抢夺走了控制权”,自由软件开发者 Diego Pettenò详细阐述了这种情况

开发了Ruby 企业版和Phusion Passenger(又名mod_rails)的 Phusion 公司为烦恼的系统管理员给出了一个解决方案,它为大多数的 Gems 提供了一个 APT 仓库。现在安装一个 Gem,例如 RMagick,就如同输入apt-get install librmagick-ruby 这样简单,而且能够自动安装好所有的依赖程序,例如``libmagick10。

DebGem 现在处于免费的公开 Beta 阶段,但是该公司计划一旦软件质量足够的好,将会对这项服务收费。我们采访了 Phusion 的 Hongli Lai 和 Ninh Bui,以期获得更多关于 DebGems 更为细节的信息:

我们能够告诉你的是,这个过程是部分自动化的。听到这个结果请不要惊讶,因为我们是程序员。如果要写一个自动的转换系统,将需要做大量的努力和尝试。但 是,并不是所有的东西都能够自动化处理(并不是所有的 gem 都能够完美地转换),所以我们不得不手动处理一些异常。发现并测试这些异常也是手工完成的。我 们有大量的虚拟机,所以能够在不同的发行版和平台上进行编译和测试。由于 Gem 的数量如此之多(大约 25000 个),即使我们在多台机器上并行处理,一个 完整的转换过程也需要数个小时。上传生成的包也需要数个小时。总之,这个不寻常的软件需要大量的时间、足够的关注和长期的维护。

请问有支持其他包管理工具的计划吗?

现在我们还没有这样的计划,但是如果有足够多的用户表示了这样的需求,我们将会考虑。

DebGem 和 Ruby 企业版有联系吗?

DebGem 和 Ruby 企业版没有任何联系,虽然我们的长期计划之一就是在 Ruby 企业版中集成 DebGem。这并不容易做,原因有很多,而正是基于这些原因,现在还没有完成。

所以尽管 DebGem 不是当前所面临的问题的一个解决方案,但是它仍然是一个精巧的应急方案,让管理员喜笑颜开。了解更多信息,请访问 DebGem 官方网站或者查看FAQ

查看英文原文: DebGem: Ruby Gems for Debian

2009-01-24 01:11769
用户头像

发布了 90 篇内容, 共 33.0 次阅读, 收获喜欢 5 次。

关注

评论

发布
暂无评论
发现更多内容

【web 开发基础】PHP 快速入门(9)-PHP 运算符之位运算符详解

迷彩

位运算 10月月更 PHP基础 PHP位运算

【资损】分布式环境中的幂等性控制设计

小明Java问道之路

架构 微服务 安全 10月月更 资损

应用数据库常见的数据切分方式

乌龟哥哥

数据库 10月月更

用户故事地图——让迭代计划灵动起来

Bruce Talk

Scrum User Story Product Owner User Story Mapping

Spring Boot「13」使用 Actuator

Samson

Java spring 学习笔记 spring-boot 10月月更

算法题学习---链表内指定区间反转

桑榆

算法题 10月月更 C++

OpenCloudOS社区发起的程序员节专属系列活动

B Impact

有没有完全自主的国产化数据库技术

王磊

DDD领域驱动设计的概念解析

乌龟哥哥

微服务 10月月更

高效IO之零拷贝技术

乌龟哥哥

10月月更

观察者模式的基础原理

阿泽🧸

观察者模式 10月月更

数据湖(十):Hive与Iceberg整合

Lansonli

数据湖 10月月更

fastposter v2.9.3 简单易用的海报生成器

物有本末

海报生成器 海报编辑器 海报生成

Jenkins pipeline 如何到子文件中去执行命令

HoneyMoose

JNI中实现类似C++回调方法-结构体操作

中国好公民st

c++ jni 10月月更

C# 快捷菜单ConTextMenustrip控件学习

IC00

C# 学习 程序员 上位机 10月月更

【移动应用安全】移动应用安全概述及超级用户权限获取

w010w

android 移动应用安全 root 10月月更

【web 开发基础】PHP 快速入门(10)-PHP 其他运算符详解

迷彩

web开发 10月月更 PHP基础 三元运算符

一个“简单”的面试题:什么是环回地址127.0.0.1?

wljslmz

10月月更 127.0.0.1 环回地址

Jenkins pipeline Git 检出的 Step

HoneyMoose

一行命令安装docker和docker-compose(CentOS7)

程序员欣宸

Docker Docker-compose 10月月更

MapReduce作业生命周期

穿过生命散发芬芳

mapreduce 10月月更

leetcode 191. Number of 1 Bits 位1的个数(简单)

okokabcd

LeetCode 数据结构与算法

“程”风破浪的开发者|那些优化奇葩代码的方法

慕枫技术笔记

学习方法 代码 “程”风破浪的开发者

【一Go到底】第二十五天---内置函数和Go错误机制

指剑

Go golang 10月月更

探索证券行业智能化升级核心引擎:成就客户价值

易观分析

证券

迷宫最短路径问题

lovevivi

数据结构 C语言 10月月更

力扣刷题训练(二)

lovevivi

数据结构 C语言 10月月更

[极客大挑战 2019]Http 题解

w010w

Web HTTP CTF 10月月更

鸿蒙开发工具 DevEco Studio 3.0 体验与项目介绍

宇宙之一粟

HarmonyOS 鸿蒙应用开发 10月月更

“程”风破浪的开发者|python GUI开发记录

衝鋒壹号

学习方法 个人成长 “程”风破浪的开发者

DebGem:Debian的Ruby Gems_Ruby_Mirko Stocker_InfoQ精选文章