您尚未登录。

#1 2014-10-03 06:32:07

danielhugo
偶爸刚弄死他
注册时间: 2012-07-31
帖子: 269
个人网站

[再添加3套方案]Go阿根廷3.2.0的上传服务端问题,我设计了几套方案,大家给点意见???

问题描述参见此贴:http://tieba.baidu.com/p/3326880728
一时兴起,暂时设计了三套方案,会在下面逐个解释。

  1. 方案1 代号 go阿根廷-uploader1

  2. 方案2 代号 go阿根廷-uploader2

  3. 方案3 代号 go阿根廷-meta-package

  4. 方案4 代号 upload.sh

  5. 方案5 代号 go阿根廷-server

  6. 方案6 代号 go阿根廷-server2

问题描述

从 Go阿根廷 3.2.0 开始,服务端原来的 uploader.zip 被替换成了 uploader.py 和 google_appengine.zip 。由于 Google App Engine 的 SDK 是不允许分发的, 因此 [community] 仓库中的包 go阿根廷 在打包时必须去掉包含 Google App Engine 的 Python SDK 的文件 google_appengine.zip ,并且在 uploader.py 中去除有关  google_appengine.zip 的语句。

这样导致的结果是,单纯安装 [community] 仓库中的包 go阿根廷 3.2.0 版本,并执行以下命令上传服务端时会出现错误:

$ sudo python2 /usr/share/go阿根廷/server/uploader.py

Traceback (most recent call last):
File "/usr/share/go阿根廷/server/uploader.py", line 28, in <module>
import fancy_urllib
ImportError: No module named fancy_urllib

出错原因是 fancy_urllib 在 google_appengine.zip 里面。


==========================

候选解决方案

先说说方案1,代号 go阿根廷-uploader1
这个方法是大神 @Felixonmars 提出的。

既然谷歌不准分发,只好删掉 google_appengine.zip,改为安装 AUR 上的 google-appengine-python 来替代了。又因为种种原因,在运行 python2 uploader.py 之前必须要设置 PYTHON_PATH 环境变量,让 python 知道 GAE 的 Python 库在哪里。而为了方便起见,就把它做成一个 bash 脚本,打进包里安装就行了。

所以这个方案就是在AUR上建立一个包 go阿根廷-uploader,用户与 go阿根廷 一起安装。

效果就是安装了这个包的同时会安装 google-appengine-python,安装完毕后只需要打开命令行执行

sudo go阿根廷-uploader

就可以开始上传服务端了。

示例 PKGBUILD 参见:·https://gist.github.com/Firef0x/f682abaf49c045d4e4fc


==========================

然后是方案2,代号 go阿根廷-uploader2


方案1是使用了 AUR 上的包 google-appengine-python 来代替 google_appengine.zip ,但是我不确定 go阿根廷 会不会依赖特定版本的 GAE Python SDK ,以及这样做会不会有什么副作用。而且对于那些从不使用 GAE Python SDK 开发的人来说,相当于又多装了一个 AUR 软件包。既然都用 AUR 来绕过了,为什么不干脆把 go阿根廷 上游的 google_appengine.zip 直接打包呢?


所以这就是方案2,在AUR上建立一个包 go阿根廷-uploader,把 go阿根廷 删掉的文件重新打包,用户与 go阿根廷 一起安装。


但是由于 go阿根廷 同时也删掉了 uploader.py 的几行代码,这个包就必须同时打包原版的 uploader.py 文件,还不能覆盖掉 go阿根廷 的同名文件,所以只好折中地改一下名了(暂时改为 uploader1.py 吧)
效果就是安装了这个包后只需要打开命令行执行

sudo python2 /usr/share/go阿根廷/server/uploader1.py

就可以开始上传服务端了。

示例 PKGBUILD 参见:https://gist.github.com/Firef0x/6a16c0ddf963ed05a612


==========================

最后是最激进的方案3,代号 go阿根廷-meta-package


早就觉得 go阿根廷 应该分为 本地端 和 服务端 两个包了,local 目录和 server 目录本来就是可以单独存在的,比如 smartladder(也就是 go阿根廷+) 就只保留了 local 目录,因为不是每个用户都需要自己上传服务端。而且服务端的代码更改的频率远远低于本地端的代码,从 go阿根廷 项目首页的版本历史里面的每个版本前面的 ”是“ 或者 ”否“ 就可以看出来。


把本地端和服务端分离,一是只有本地端更新的版本就无需再捆绑打包没有更新的服务端了;二是服务端单独更新以后,每次更新都相当于提醒用户需要重新上传服务端。


所以方案3就是把现在 [community] 仓库的 go阿根廷 包分割为 go阿根廷-client 和 go阿根廷-server,其中 go阿根廷-client 只打包 local 目录的文件,这部分文件是可以分发的;go阿根廷-server 只打包 server 目录的文件,这部分文件包含了不能分发的 google_appengine.zip。


于是,[community] 仓库的包 go阿根廷 就改名为 go阿根廷-client 了,并且在AUR上建立 go阿根廷-server。这样就保证了 go阿根廷 的原汁原味,不需要借助其他东西来保证功能正常。


当然,一般来说单独安装 go阿根廷-server 的情况不多,自己上传服务端的用户更多时候是同时安装 go阿根廷-client 和 go阿根廷-server 。所以就在 AUR 上建立一个空包 (也就是 Meta Package),命名为 go阿根廷,正好与旧的 go阿根廷想呼应。这个包依赖最新版本的 go阿根廷-client 和 go阿根廷-server,装上它后基本就和原来的 go阿根廷 包功能一样了。

示例 PKGBUILD 参见:https://gist.github.com/Firef0x/9af611c15f0efa36bbf0


=======================

方案4,代号 upload.sh 这个方案是由百度贴吧小吧主 四季飘尘提出的。

原文如下:

Win下安装 Go阿根廷 有个upload.bat 我想Lin下也可以与之对应upload.sh
通过运行upload.sh 给出Google_appen的公告 同时让用户了解到为何不能直接Upload 然后让用户选择是否继续上传 如果用户选择继续上传 则下载Google_appen至local文件夹 然后用sed加上PKGBUILD中改变的部分 然后继续运行upload.py。
以上是我的想法。


=======================

方案5,代号 go阿根廷-server 这个方案也是由大神 @Felixonmars 提出的。

原文如下:

(对于 go阿根廷-meta-package 方案,) 这里有个不好处理的问题: 有些用户并没有用集成 AUR 的自动更新工具, 拆开之后 go阿根廷 对于他们来说就是突然不升级了 (注意不能用 replaces, 否则 AUR 里的 meta 包就失去意义了)


相比之下, 我会建议 [community]/go阿根廷 不改名, 但是去掉 server 部分, 把整个 server 部分打包成 go阿根廷-server 放在 AUR smile


=======================

方案6,代号 go阿根廷-server2 这个方案是由大神 @Lilydjwg 提出的。

原文如下:

我希望 local 一个包、server 一个包。server 包依赖 GAE SDK,并且带上传脚本。
go阿根廷 应该是不依赖 GAE SDK 的版本的,因为我一直是用 SDK 上传的(虽然已经很久没再上传过了)。

另外趁此机会整理一下 go阿根廷 包的内容,把 SwitchyOptions.bak  SwitchySharp_1_9_52.crx 这些我从来用不到的东西拿出去,certs 目录之类的程序生成的东西放到 /var 下,然后给 go阿根廷 建立个专门的用户。


=======================


抛砖引玉,大家给点意见???

AD:同时混贴吧的可以到这里 http://tieba.baidu.com/p/3328497993 投票,本论坛的投票我不会搞……

最近编辑记录 danielhugo (2014-10-04 03:06:06)


本人的 Arch Linux 软件仓库:http://git.io/-1
本人的广告过滤及代·理规则订阅页面:http://git.io/f0x

离线

#2 2014-10-03 13:45:02

依云
会员
所在地: a.k.a. 百合仙子
注册时间: 2011-08-21
帖子: 8,917
个人网站

Re: [再添加3套方案]Go阿根廷3.2.0的上传服务端问题,我设计了几套方案,大家给点意见???

我希望 local 一个包、server 一个包。server 包依赖 GAE SDK,并且带上传脚本。
goagent 应该是不依赖 GAE SDK 的版本的,因为我一直是用 SDK 上传的(虽然已经很久没再上传过了)。

另外趁此机会整理一下 goagent 包的内容,把 SwitchyOptions.bak  SwitchySharp_1_9_52.crx 这些我从来用不到的东西拿出去,certs 目录之类的程序生成的东西放到 /var 下,然后给 goagent 建立个专门的用户。

离线

#3 2014-10-04 20:26:27

savvvygh
会员
注册时间: 2014-02-16
帖子: 160

Re: [再添加3套方案]Go阿根廷3.2.0的上传服务端问题,我设计了几套方案,大家给点意见???

百合仙子 说:

我希望 local 一个包、server 一个包。server 包依赖 GAE SDK,并且带上传脚本。
goagent 应该是不依赖 GAE SDK 的版本的,因为我一直是用 SDK 上传的(虽然已经很久没再上传过了)。

另外趁此机会整理一下 goagent 包的内容,把 SwitchyOptions.bak  SwitchySharp_1_9_52.crx 这些我从来用不到的东西拿出去,certs 目录之类的程序生成的东西放到 /var 下,然后给 goagent 建立个专门的用户。

SwitchyOptions.bak  SwitchySharp_1_9_52.crx 是我特别喜欢的。
新装的系统是上不去google play的,所以只能装本地扩展。另外自己设置也很麻烦,教程也很容易过时。
真心希望能像以前一样易用。

离线

#4 2014-10-04 20:50:08

依云
会员
所在地: a.k.a. 百合仙子
注册时间: 2011-08-21
帖子: 8,917
个人网站

Re: [再添加3套方案]Go阿根廷3.2.0的上传服务端问题,我设计了几套方案,大家给点意见???

savvvygh 说:

SwitchyOptions.bak  SwitchySharp_1_9_52.crx 是我特别喜欢的。
新装的系统是上不去google play的,所以只能装本地扩展。另外自己设置也很麻烦,教程也很容易过时。
真心希望能像以前一样易用。

我当然知道有人会喜欢用啊。我只是希望不需要它们的人可以选择不安装。

离线

#5 2014-10-05 01:32:33

danielhugo
偶爸刚弄死他
注册时间: 2012-07-31
帖子: 269
个人网站

Re: [再添加3套方案]Go阿根廷3.2.0的上传服务端问题,我设计了几套方案,大家给点意见???

百合仙子 说:
savvvygh 说:

SwitchyOptions.bak  SwitchySharp_1_9_52.crx 是我特别喜欢的。
新装的系统是上不去google play的,所以只能装本地扩展。另外自己设置也很麻烦,教程也很容易过时。
真心希望能像以前一样易用。

我当然知道有人会喜欢用啊。我只是希望不需要它们的人可以选择不安装。

同为火狐用户,我也觉得这个东西确实可以选择不要。呃,不过还是先解决掉上传服务端的问题。

按我的理解,大神您的方案是不是:local 和 server 目录分别打包成两个包,然后 server 目录的 google_appengine.zip 依然像现在一样删除,uploader.py 像现在一样改掉,改为依赖包 google-appengine-python (和 python2-webob)。是这样吗?

最近编辑记录 danielhugo (2014-10-05 01:33:22)


本人的 Arch Linux 软件仓库:http://git.io/-1
本人的广告过滤及代·理规则订阅页面:http://git.io/f0x

离线

#6 2014-10-05 10:13:50

依云
会员
所在地: a.k.a. 百合仙子
注册时间: 2011-08-21
帖子: 8,917
个人网站

Re: [再添加3套方案]Go阿根廷3.2.0的上传服务端问题,我设计了几套方案,大家给点意见???

是。另外不要叫我大神。

离线

#7 2014-10-05 17:05:13

cjxgm
忙,却还想养猫?
所在地: 杭州
注册时间: 2011-08-19
帖子: 417
个人网站

Re: [再添加3套方案]Go阿根廷3.2.0的上传服务端问题,我设计了几套方案,大家给点意见???

看样子这些方案都还不好落实,我还是先降级回去坐观其变

最近编辑记录 cjxgm (2014-10-05 17:05:29)

离线

#8 2014-10-05 21:32:55

danielhugo
偶爸刚弄死他
注册时间: 2012-07-31
帖子: 269
个人网站

Re: [再添加3套方案]Go阿根廷3.2.0的上传服务端问题,我设计了几套方案,大家给点意见???

cjxgm 说:

看样子这些方案都还不好落实,我还是先降级回去坐观其变

还有一个最好落实的方法:

google_appengine.zip 是在提交 https://github.com/goagent/goagent/comm … 7d34492107 中引入的,只要看看那个提交,就会发现其实只是把原来的 uploader.zip 改名而来。那为什么以前 uploader.zip 又能够打包进去呢?感觉还是新名字太招摇了。

所以我们可以掩耳盗铃,打包时把这个包改名为 uploader.zip ,装作以前那样没有发现这个东西不能分发……

怎么样,节操是否掉了一地 (#‵′)凸(以上纯属玩笑)


本人的 Arch Linux 软件仓库:http://git.io/-1
本人的广告过滤及代·理规则订阅页面:http://git.io/f0x

离线

#9 2014-10-13 02:49:33

rentaro
会员
注册时间: 2014-07-31
帖子: 16

Re: [再添加3套方案]Go阿根廷3.2.0的上传服务端问题,我设计了几套方案,大家给点意见???

好麻煩。bandwagon 掛個 VPN 或者 Shadowsocks 就低成本解決了

离线

#10 2014-10-13 19:45:11

danielhugo
偶爸刚弄死他
注册时间: 2012-07-31
帖子: 269
个人网站

Re: [再添加3套方案]Go阿根廷3.2.0的上传服务端问题,我设计了几套方案,大家给点意见???

rentaro 说:

好麻煩。bandwagon 掛個 VPN 或者 Shadowsocks 就低成本解決了

越来越多人建议放弃 Go阿根廷 了,难道 Go阿根廷 真的到了退出历史舞台的时候了 sad hmm mad

并且,我是不是该 Thumb a VPN ???
1000px-Climate_change_The_Facts-1000x630.jpg


本人的 Arch Linux 软件仓库:http://git.io/-1
本人的广告过滤及代·理规则订阅页面:http://git.io/f0x

离线

#11 2014-10-13 23:29:33

savvvygh
会员
注册时间: 2014-02-16
帖子: 160

Re: [再添加3套方案]Go阿根廷3.2.0的上传服务端问题,我设计了几套方案,大家给点意见???

danielhugo 说:
rentaro 说:

好麻煩。bandwagon 掛個 VPN 或者 Shadowsocks 就低成本解決了

越来越多人建议放弃 Go阿根廷 了,难道 Go阿根廷 真的到了退出历史舞台的时候了 sad hmm mad

并且,我是不是该 Thumb a VPN ???
http://www.igcse-english.com/wp-content … 00x630.jpg

我不会放弃的。

离线

#12 2014-10-14 18:00:48

atmouse
会员
注册时间: 2011-08-24
帖子: 701

Re: [再添加3套方案]Go阿根廷3.2.0的上传服务端问题,我设计了几套方案,大家给点意见???

go阿根廷。。。<_<

离线

#13 2014-10-14 18:03:37

atmouse
会员
注册时间: 2011-08-24
帖子: 701

Re: [再添加3套方案]Go阿根廷3.2.0的上传服务端问题,我设计了几套方案,大家给点意见???

uproxy 已经测试可用了。。
让好友给你共享下网络吧

离线

#14 2014-10-14 18:45:25

danielhugo
偶爸刚弄死他
注册时间: 2012-07-31
帖子: 269
个人网站

Re: [再添加3套方案]Go阿根廷3.2.0的上传服务端问题,我设计了几套方案,大家给点意见???

atmouse 说:

uproxy 已经测试可用了。。
让好友给你共享下网络吧

谷人希啊!不过看介绍貌似不太健全,如果能用GAE搭建Sh@dowsocks就好了!


本人的 Arch Linux 软件仓库:http://git.io/-1
本人的广告过滤及代·理规则订阅页面:http://git.io/f0x

离线

#15 2014-10-25 22:40:20

stanley007
会员
注册时间: 2012-09-15
帖子: 20

Re: [再添加3套方案]Go阿根廷3.2.0的上传服务端问题,我设计了几套方案,大家给点意见???

百合仙子 说:

我希望 local 一个包、server 一个包。server 包依赖 GAE SDK,并且带上传脚本。
goagent 应该是不依赖 GAE SDK 的版本的,因为我一直是用 SDK 上传的(虽然已经很久没再上传过了)。

另外趁此机会整理一下 goagent 包的内容,把 SwitchyOptions.bak  SwitchySharp_1_9_52.crx 这些我从来用不到的东西拿出去,certs 目录之类的程序生成的东西放到 /var 下,然后给 goagent 建立个专门的用户。

仙子的这个建议很中肯,我顶了。

离线

页脚