ido - 0.2 发布
博客专区 > limodou 的博客 > 博客详情
ido - 0.2 发布
limodou 发表于3年前
ido - 0.2 发布
  • 发表于 3年前
  • 阅读 185
  • 收藏 1
  • 点赞 0
  • 评论 0

ido 0.2 发布,主要变化如下:

  • cd 命令进行了优化,可以使用 with cd('/tmp'): 这样的写法,在with之后自动回到原来的目录下

  • index 位置支持链接了,因此可以直接从网上下载package安装脚本来执行

  • 添加 tarx 和 unzip 命令。tarx 相当于执行了 tarx xvfz filename ,而 unzip 相当于执行了 unzip -o filename 。这两个命令在执行后,会猜测解压后的目录,并返回。有时压缩包的目录和文件名其实不一样。所以,可以和 cd 命令连用,实现解压后进入解压目录的功能,如: cd(tarx('a.tar.gz'))

  • 改进 cp 命令,可以传入 wget 参数,当拷贝文件不存在时,自动调用 wget 来下载文件

  • 添加 settings 文件支持,它是一个 python 文件,可以用 -c 参数来指定,如果不指定,则自动从 ~/.ido/settings.py 中查找。你可以在这里设置 : INDEXES, PREFIX, FILES, PRE_LOAD,其中 PRE_LOAD用来实现在执行 ido install package 时,自动导入设定的模块,并从中导入函数或对象,它有三种写法:

      PRE_LOAD = [
          ('package.path', '*'),
          ('package.path', ['a', 'b']),
          ('package.path', 'alias_name')
      ]
    

    分别表示:

    • 导入模块 package.path 中的 __all__ 中定义的对象
    • 导入模块 package.path 中的对象 ’a', 'b'
    • 导入模块 package.path 并改名为 'alias_name',这样你可以在安装脚本中使用 alias_name.xxx 来调用它内部的对象
  • 然后还添加了 nginx, pcre, redis 安装的示例,可以使用:

      ido install nginx --prefix=~/env
    

    这样安把nginx安装到 ~/env 目录下。

  • 调整了package 的结构,原来是每个package需要是一个目录,并且里面有 install.py 文件,现在则保留这种方式的基础上,同时可以简化为在 INDEXES 目录下,每个package是一个 .py 文件,文件主名是 package 的名字,如: nginx.py,安装脚本示例为:

      pcre = cp('pcre*', BUILD)
      zlib = cp('zlib*', BUILD)
      nginx = cp('nginx*', BUILD)
      cd(BUILD)
      tarx(pcre)
      tarx(zlib)
      cd(tarx(nginx))
      sh('./configure --prefix=%s --with-pcre=%s --with-zlib=%s' % (PREFIX, '../pcre-8.33', '../zlib-1.2.8' ))
      sh('make install')
    

    这个示例在我本机的输出结果可能为:

在此输入图片描述

共有 人打赏支持
limodou
粉丝 237
博文 92
码字总数 36993
作品 6
×
limodou
如果觉得我的文章对您有用,请随意打赏。您的支持将鼓励我继续创作!
* 金额(元)
¥1 ¥5 ¥10 ¥20 其他金额
打赏人
留言
* 支付类型
微信扫码支付
打赏金额:
已支付成功
打赏金额: