GHC 2017-10-23

4 comments.

, https://git.io/vdxs0 in ustclug/mirrorrequest
原来清华已经有了啊,没发现。

, https://git.io/vdxsE in ustclug/mirrorrequest
没问题,加了Unlicense(相当于public domain):https://gist.github.com/zmwangx/f8e4d66d7e7a3f14e6df9f4c9ba15a69#file-license

, https://git.io/vdxLx in ustclug/mirrorrequest
我建议反向代理是因为反向代理比较容易建,占用空间也少。镜像当然更好(目前一共924MB),不过我不知道多少人需要。

由于这是非常常规的apt库,所以做镜像是非常容易的,比如可以用apt-mirror。设置文件及生成设置文件的脚本我贴在下面(也可以看这个gist:<https://gist.github.com/zmwangx/f8e4d66d7e7a3f14e6df9f4c9ba15a69>)。不过有新的Node.js主要版本或者新的Debian/Ubuntu版本时需要小更新(频率比较低)。

---

`gen-mirror-list`:

```py
#!/usr/bin/env python3

import bs4
import requests


def gen_mirror_list(node_version):
    base_url = 'https://deb.nodesource.com/%s/' % node_version
    dists_url = base_url + 'dists/'
    soup = bs4.BeautifulSoup(requests.get(dists_url).text, 'html.parser')
    for a in soup.find_all('a'):
        dist = a.text.rstrip('/')
        if dist == '..':
            continue
        print('deb %s %s main' % (base_url, dist))
    print()
    print('clean %s' % base_url)
    print()


def main():
    for node_version in ('node_8.x', 'node_7.x', 'node_6.x', 'node_5.x',
                         'node_4.x', 'node_0.12', 'node_0.10',
                         'iojs_3.x', 'iojs_2.x', 'iojs_1.x'):
        gen_mirror_list(node_version)


if __name__ == '__main__':
    main()
```

---

`mirror.list`:

```ini
############# config ##################
#
# set base_path    /var/spool/apt-mirror
#
# set mirror_path  $base_path/mirror
# set skel_path    $base_path/skel
# set var_path     $base_path/var
# set cleanscript $var_path/clean.sh
# set defaultarch  <running host architecture>
# set postmirror_script $var_path/postmirror.sh
# set run_postmirror 0
set nthreads     20
set _tilde 0
#
############# end config ##############

deb https://deb.nodesource.com/node_8.x/ artful main
deb https://deb.nodesource.com/node_8.x/ buster main
deb https://deb.nodesource.com/node_8.x/ jessie main
deb https://deb.nodesource.com/node_8.x/ sid main
deb https://deb.nodesource.com/node_8.x/ stretch main
deb https://deb.nodesource.com/node_8.x/ trusty main
deb https://deb.nodesource.com/node_8.x/ xenial main
deb https://deb.nodesource.com/node_8.x/ yakkety main
deb https://deb.nodesource.com/node_8.x/ zesty main

clean https://deb.nodesource.com/node_8.x/

deb https://deb.nodesource.com/node_7.x/ buster main
deb https://deb.nodesource.com/node_7.x/ jessie main
deb https://deb.nodesource.com/node_7.x/ sid main
deb https://deb.nodesource.com/node_7.x/ stretch main
deb https://deb.nodesource.com/node_7.x/ trusty main
deb https://deb.nodesource.com/node_7.x/ xenial main
deb https://deb.nodesource.com/node_7.x/ yakkety main
deb https://deb.nodesource.com/node_7.x/ zesty main

clean https://deb.nodesource.com/node_7.x/

deb https://deb.nodesource.com/node_6.x/ artful main
deb https://deb.nodesource.com/node_6.x/ buster main
deb https://deb.nodesource.com/node_6.x/ jessie main
deb https://deb.nodesource.com/node_6.x/ precise main
deb https://deb.nodesource.com/node_6.x/ sid main
deb https://deb.nodesource.com/node_6.x/ stretch main
deb https://deb.nodesource.com/node_6.x/ trusty main
deb https://deb.nodesource.com/node_6.x/ wheezy main
deb https://deb.nodesource.com/node_6.x/ wily main
deb https://deb.nodesource.com/node_6.x/ xenial main
deb https://deb.nodesource.com/node_6.x/ yakkety main
deb https://deb.nodesource.com/node_6.x/ zesty main

clean https://deb.nodesource.com/node_6.x/

deb https://deb.nodesource.com/node_5.x/ jessie main
deb https://deb.nodesource.com/node_5.x/ precise main
deb https://deb.nodesource.com/node_5.x/ sid main
deb https://deb.nodesource.com/node_5.x/ trusty main
deb https://deb.nodesource.com/node_5.x/ vivid main
deb https://deb.nodesource.com/node_5.x/ wheezy main
deb https://deb.nodesource.com/node_5.x/ wily main
deb https://deb.nodesource.com/node_5.x/ xenial main

clean https://deb.nodesource.com/node_5.x/

deb https://deb.nodesource.com/node_4.x/ buster main
deb https://deb.nodesource.com/node_4.x/ jessie main
deb https://deb.nodesource.com/node_4.x/ precise main
deb https://deb.nodesource.com/node_4.x/ sid main
deb https://deb.nodesource.com/node_4.x/ stretch main
deb https://deb.nodesource.com/node_4.x/ trusty main
deb https://deb.nodesource.com/node_4.x/ vivid main
deb https://deb.nodesource.com/node_4.x/ wheezy main
deb https://deb.nodesource.com/node_4.x/ wily main
deb https://deb.nodesource.com/node_4.x/ xenial main
deb https://deb.nodesource.com/node_4.x/ yakkety main
deb https://deb.nodesource.com/node_4.x/ zesty main

clean https://deb.nodesource.com/node_4.x/

deb https://deb.nodesource.com/node_0.12/ jessie main
deb https://deb.nodesource.com/node_0.12/ precise main
deb https://deb.nodesource.com/node_0.12/ sid main
deb https://deb.nodesource.com/node_0.12/ trusty main
deb https://deb.nodesource.com/node_0.12/ utopic main
deb https://deb.nodesource.com/node_0.12/ vivid main
deb https://deb.nodesource.com/node_0.12/ wheezy main
deb https://deb.nodesource.com/node_0.12/ wily main
deb https://deb.nodesource.com/node_0.12/ xenial main
deb https://deb.nodesource.com/node_0.12/ yakkety main

clean https://deb.nodesource.com/node_0.12/

deb https://deb.nodesource.com/node_0.10/ jessie main
deb https://deb.nodesource.com/node_0.10/ lucid main
deb https://deb.nodesource.com/node_0.10/ precise main
deb https://deb.nodesource.com/node_0.10/ saucy main
deb https://deb.nodesource.com/node_0.10/ sid main
deb https://deb.nodesource.com/node_0.10/ trusty main
deb https://deb.nodesource.com/node_0.10/ utopic main
deb https://deb.nodesource.com/node_0.10/ vivid main
deb https://deb.nodesource.com/node_0.10/ wheezy main
deb https://deb.nodesource.com/node_0.10/ wily main
deb https://deb.nodesource.com/node_0.10/ xenial main

clean https://deb.nodesource.com/node_0.10/

deb https://deb.nodesource.com/iojs_3.x/ jessie main
deb https://deb.nodesource.com/iojs_3.x/ sid main
deb https://deb.nodesource.com/iojs_3.x/ trusty main
deb https://deb.nodesource.com/iojs_3.x/ vivid main

clean https://deb.nodesource.com/iojs_3.x/

deb https://deb.nodesource.com/iojs_2.x/ jessie main
deb https://deb.nodesource.com/iojs_2.x/ sid main
deb https://deb.nodesource.com/iojs_2.x/ trusty main
deb https://deb.nodesource.com/iojs_2.x/ utopic main
deb https://deb.nodesource.com/iojs_2.x/ vivid main

clean https://deb.nodesource.com/iojs_2.x/

deb https://deb.nodesource.com/iojs_1.x/ jessie main
deb https://deb.nodesource.com/iojs_1.x/ sid main
deb https://deb.nodesource.com/iojs_1.x/ trusty main
deb https://deb.nodesource.com/iojs_1.x/ utopic main
deb https://deb.nodesource.com/iojs_1.x/ vivid main

clean https://deb.nodesource.com/iojs_1.x/
```

, https://git.io/vdxJ4 in ustclug/mirrorrequest
建议增加deb.nodesource.com的反向代理
===========================

由于Debian/Ubuntu官方库中的Node.js版本很古老(Node.js当前版本为8.7.0,而Debian Stretch中当前版本为4.8.2,Ubuntu Xenial为4.2.6,Zesty为4.7.2),所以通过apt安装Node.js时一般会使用Node.js官方推荐的deb.nodesource.com(详见[1][2]),如8.x在https://deb.nodesource.com/node_8.x/.

然而deb.nodesource.com在国内速度很慢;我的阿里云VPS上下载速度仅~20KB/s且不稳定。所以希望能做一下反向代理,谢谢。

[1] https://nodejs.org/en/download/package-manager/#debian-and-ubuntu-based-linux-distributions
[2] https://github.com/nodesource/distributions