红联Linux门户
Linux帮助

帮你加速下载webOS源码

发布时间:2014-12-02 15:16:27来源:linux网站作者:karfield85

WebOS开源了,本文将提供多种方法帮你轻松搞掂WebOS下载.

WebOS源码被公布(hp官方)在:http://opensource.palm.com/packages.html

你可以看到各个版本的WebOS底层源码。这些源码都是被打包的,本文将给出一个脚本,可以自动从该网站上下载源码

非官方的WebOS-Internal也提供了WebOS代码 http://git.webos-internals.org/

这些代码是由git管理,本文将利用Android repo脚本,同时给出一个manifest,你可以简单地下载上面的所有源码


1. 下载hp官网上的源码:

复制以下bash脚本,写进文本(比如get-webos-src-pkg.sh)

#!/bin/bash 

# COPYRIGHT KARFIELD (C) 2011 

# THIS SMALL SCRIPT WAS WRITTEN BY KARFIELD <karfield@live.cn> 
# IT'S FREE TO USE WITHOUT ANY WARRANTY. WITHOUT EVEN THE IMPLIED 
# WARRANTY OF MERCHANTABILITY OR FITNESS FOR A PARTICULAR PURPOSE. 

# BEFORE USE, PLEASE CHECK SOME UTILS THAT INSTALLED IN YOUR SYSTEM: 

# axel - A useful tool to accelerate you downloading 

 
VERSION=3.0.4 
BASEURL=http://opensource.palm.com/ 
HTML=/tmp/page.html 
wget -q $BASEURL/$VERSION/index.html -O $HTML 
URLS=($(sed -n 's/.*href=\"\(.*\)z\".*/\1z/p' < $HTML)) 
for URL in ${URLS[@]}; do 
axel $URL 
done 

保存get-webos-src-pkg.sh,修改权限并执行即可

example instructions:

$ mkdir webos-src-pkg 
$ cd webos-src-pkg 
$ touch get-webos-src-pkg.sh 
$ vim get-webos-src-pkg.sh  (拷贝上述脚本) 
$ chmod u+x get-webos-src-pkg.sh 
$ ./get-webos-src-pkg.sh 
$  

注意,为了加速下载,该脚本使用axel下载工具,这个工具是多线程并且断点续传。在使用脚本之前,确保你安装了axel。木有的话,在debian/unbuntu下可以直接用apt-get install axel安装。

你可以修改axel的并发线程数,具体参考axel --help

脚本中的VERSION是WebOS对应的版本号。你可以修改为想要的版本号,就可以下载对应的代码包了。


2. 下载WebOS-Internals上的源码。

该网站上的源码用了n多个git库来管理,如果手动一个个下就会令人崩溃,假用Android的repo工具就可以轻松下载所有源码了。

在begin之前,确保你下了repo,否则请参考Android网站上的方法下repo:http://source.android.com/source/downloading.html

除此之外,要保证你的网络没有被禁用git端口。因为WebOS-Internals.org只开放了git端口下载,没有用http端口下载源码。不过你在家翘着二郎腿吃着薯片下的话不会碰到此问题。

使用repo来管理很多git库由莫大的好处(略),简而言之你可以用以下两条命令来下载:

$ repo init -u git://git.code.sf.net/p/webosrepo/code 
$ repo sync 

下载是一个漫长的过程,对于像我这样只有实际2M带宽的话(该网站也不给力)。

你可能看到了repo -u后面的参数是sourceforge上的,它其实是个manifest xml配置文件,简而言之就是从git.webos-internals.org上的git库生成的xml文件,下载得到的源码之后你可以发现跟网站上一样的目录。这个manifest是我生成的,如果发现WebOS-Internals.org的git库目录有所变动,欢迎随时mailto me,以便我更改sourceforge上的配置代码。Thx!


OK! That all, Have Fun!