-
Notifications
You must be signed in to change notification settings - Fork 39
-
Notifications
You must be signed in to change notification settings - Fork 39
new setup.py? #93
Comments
@emfox For packaging, simply treat anything in |
Yes, please. |
mcomix的gtk3移植不是我写的,是上游的一个PR,但一直没合并。因为mcomix(和当时的gnome-terminator)的py3移植需要面对的问题基本上只有GUI,也就是pygtk到pygi/gtk3的改写,只要这部分搞定接下来的事情就简单多了。 一是我并没有打算取代上游,把脚本都放在独立路径和portable mode就是为了让用户(和开发者,包括我自己)能够在完全不更改已有配置文件的情况下测试和使用,所以就不需要install,mcomix3本身并不是binary所以也不需要setup.py处理abi对应的build,不需要build也不需要install,setup.py就没用了。 二是mcomix本来理论上应该可以在win32运行,因为依赖的模块在pypi上都有预编译的文件,但没有pygi,就算有pygi也没有gtk3的gir。我不清楚gir的初衷,只看现况,这东西把后端库在其他语言的binding全都承接下来了。这个思路不错,解释器只需要一个调用gir的模块,后端库也只要做一个外显到gir的模块,大家就可以一起玩,但是这里同时也有问题:谁来解决依赖。pypi当然只管py这边的模块,不可能把所有后端库的gir全部包括进去(当然现状是连pygi都没有,都要靠系统来提供),gtk3官方也没有win32包,唯一up to date的预编译文件好像只有msys提供,但这也是和linux一样自己管理依赖的环境,所以经由pypi处理依赖的setup.py并不能处理依赖。既然setup.py无法正确完成setup时应当处理的步骤,那么留着它不就是误导了么。 还有就是我想尽量减少mcomix3的必需依赖。GUI库是GUI程序的必需依赖,PIL是图像格式的必需依赖,而setuptools/distutils不是mcomix3本身的必需依赖,那么就不要让setup.py多这么一个依赖了。在debian下如果仅打包mcomix3,应该只要debhelper和python3,生成翻译文件机器码的msgfmt也有单文件的pure py。 |
好吧,谢谢分享,很复杂曲折啊,那就先保持原状吧。看将来有没有变化,比如官方合并了gtk3之类的 |
我觉得目前上游合并gtk3的可能性不大。 不过mcomix用gtk做GUI大概也算是历史原因了,如果是自己写跨平台GUI应该会选pyside或者kivy,不会考虑gtk的。 |
嗯,好的,看来目前先只能这样。能用就行了,大不了再fork一次另起炉灶,comix到mcomix又不是没干过…… |
Hello, people! I am studying Meson, and I think I can help putting it in MComix3. |
@AndersonTorres That is complete and utter overkill for a python program. |
Perhaps you can use |
I'm not really sure how having the user install a package manager to install a single package is a good alternative to having a In any case, requiring conda might be especially annoying for windows users (I am not one of those, but I did use comix/mcomix on my last win32 machine quite regularly). |
Hello, as debian is fast pushing the python2 removal work, I have updated mcomix debian package from official to this port.
During the packaging, I just found and wonder why we switch away from setuptools(or distutils) to hand make installer.py? I tested the old setup.py, the main problem is the move of directory mcomix to subdir mcomix/mcomix. Or is there anthing I haven't noticed? If possible, could we get back to setup.py, which is more friendly to enduser, especially distro packagers?
The text was updated successfully, but these errors were encountered: