pypackager是一个板载开发工具,用于创建源代码和binarymaemo/harmattan/meego包。
pypackager的Python项目详细描述
pypackager
==
**许可证:**gplv3
**来源:**[github存储库](https://github.com/khertan/pypackager)
**下载(maemo):**[pypackager on maemo存储库](http://maemo.org/packages/view/pypackager/)
**下载(meego):**[pypackager on meego存储库](http://repo.pub.meego.com/home:/khertan/harmattan/armel/)
**错误跟踪器:**[pypackager错误跟踪器](https://github.com/khertan/pypackager/issues)
**平台:**maemo diablo,maemo fremantle
pypackager是一个板载开发工具,用于创建源代码
和二进制maemo包。
![pypackager source截图](http://khertan.net/medias/pypackager.jpg)
\pypackager howto
在maemo平台上,使用debian包
系统分发软件。如果您不在scratchbox中开发,而是直接在设备上开发,则需要一个工具来正确地组合软件以作为
.deb包分发。为了解决这个问题,我创建了pypackager。pypackager 3.x.x与py2deb相同,除了使用相同的脚本,您可以准备要上传到Extras Maemo Builder的包,或者直接在您的设备上为Maemo构建Debian包。
因此,您可以使用应用程序管理器安装它。
然后
添加以下文件和文件夹:*一个子文件夹/src,其中包含所有
源文件,文件夹结构代表应用程序文件
在设备上的安装方式,并且设置了正确的权限(因此不要使用fat分区~/mydocs)!*软件包的图标(例如
myapp.png,48×48像素),在
应用程序管理器中可以看到的图标。*以及make.py文件
可以使用
$python setup.py bdist_dumb
在dist/子目录中编译并生成.tar.gz包。只需在src/文件夹中解包
该包,并在其中添加hildon桌面集成文件
(见下文)。
\example/src folder structure
hildon桌面集成所需的文件:
/src/usr/share/applications/hildon/myapp.desktop
/src/usr/share/dbus-1/services/myapp.service
/src/usr/share/icons/hicolor/48x448/hildon/myapp.png
/src/usr/share/icons/hicolor/48x448/hildon/myapp.png/myapp.png/myapp.png(64x64像素)
~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~/>版本=1.0.0
编码=utf-8
名称=myapp
注释=clock&;日夜地图
exec=/opt/myapp/myapp.py
icon=myapp
x-icon-path=/usr/share/icons
x-window-icon=myapp
type=application
x-osso-service=net.khertan.myapp
x-osso-type=application/x-executable
StartupWMClass=MyApp
~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
*版本*是桌面文件的版本,而不是应用的版本。保持在1.0.0
*name*是菜单中显示的应用程序名称
*description*是指菜单中显示的应用程序说明
mode
*exec*是指向应用程序的链接
*icon*是我们图标文件的名称,没有尾随的.png部分
*x-icon-path*是图标的路径
*x-window-icon*是图标文件的名称,没有尾随的.png部分
*startupWMClass*是唯一需要的,因为如果它的程序使用直接屏幕
呈现类库,就像pygame一样,xlib或opengl。
请注意,只有在实际使用osso
服务时,才需要x-osso-service行。如果不正确处理应用程序中的
osso事件,将该行包含在.desktop文件中,将重新应用程序中的sult在启动后不久即被终止
。
>
> ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~申请文件自身本身也
~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~>/src/opt/myapp/myapp/myapp.py
/src/opt/myapp/myapp/myapp.py/src/opt/myapp/myapp/myapp/myapp/myapp/myapp等一类别的一类。py
~~~~~~~~~~~~~~~~~~~~~~~~.py应该以:
~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
小精灵!/usr/bin/env python
~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
可执行
/>安装build_myapp.py.py安装build_myapp.py的代码
/>/>复制以下代码创建自己的build_myapp.py.py.py,然后根据需要编辑
* -*-编码:UTF-8**BR/>此程序是自由软件;可以根据GNU通用公共许可证的条款重新发布和修改< BR/> >,由自由软件基金会发布。是在希望它有用的情况下分发的,
但没有任何保证;甚至没有对
适销性或特定用途的适用性的暗示保证。有关更多详细信息,请参阅
GNU通用公共许可证。
p=pypackager.pypackager("khteditor")
p.version="0.0.1"
p.buildversion="1"
p.display"khteditor name="khteditor"
p.description="khteditor是专为运行maemo和meego手机的设备设计的源代码编辑器。"
p.author="beno_thervier"
p.mainter="khertan"
p.email="khertan@khertan.net"
p.depends="python2.5-qt4-gui,python2.5-qt4-core,python2.5-qt4-maemo5"
p.suggestions="pylint"
p.section="用户/开发"
p.arch="armel"
p.emergency="low"
p.bugtracker="http://khertan.net/flysray/index.php?项目=7'
p.distribution="fremantle"
p.repository="extras devel"
p.icon="khteditor.png"
p["/usr/bin"]=["khteditor_launch.py",]
p["/usr/share/dbus-1/services"]=["khteditor.service",]
p["/usr/share/pixmaps"]=["khteditor.png",]
p["/usr/share/applications/hildon"]=["khteditor.desktop",]
meego的特定标志
p.maemo_flags='可见'
p.meego_desktop逖entry逖filename='
p.createdigsigsums=true
p.aegismanifest=''<;aegis name="…">;
<;提供>;
<;提供>;
<;限制>;
<;帐户>;
<;帐户>;
<;请求>;
<;域>;
<;docstring>;<;/docstring>;
<;/aegis>;''
文件=[]
src
OS.walk('/home/user/mydocs/projects/khteditor/khteditor'):
FS中的f:
打印OS.path.basename(root),dirs,f
前缀='khteditor/'
如果os.path.basename(根)!='khteditor':
prefix=prefix+os.path.basename(root)+'/'
files.append(prefix+os.path.basename(f))
打印文件
p["/usr/lib/python2.5/site packages"]=文件
chmod+x/usr/bin/khteditor_launch.py
python-m compileall/usr/lib/python2.5/site packages/khteditor"
p.changelog=""第一个版本
""
打印p.generate(build_binary=false,build_src=true)
打印p.generate(build_binary=true,build_src=true)
~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
\py运行make.py代码
打开设备上的"x终端",并将目录更改为文件夹(例如
"cd/home/user/myapp")。然后在xterm中使用"python2.5make.py"运行代码。
pypackager现在将打包您的文件。一旦成功完成,
根据生成选项,您的~/myapp文件夹将包含新文件,这些文件可以上载到maemo auto builder,也可以上载到您自己的存储库
*myapp_0.5.6-1.更改(更改日志)
*myapp_0.5.6-1.dsc(包
说明)
*myapp_0.5.6-1.tar.gz(打包的源文件)
本文是从[http://wiki.maemo.org/py2deb](http://wiki.maemo.org/py2deb)页面派生的。
==
**许可证:**gplv3
**来源:**[github存储库](https://github.com/khertan/pypackager)
**下载(maemo):**[pypackager on maemo存储库](http://maemo.org/packages/view/pypackager/)
**下载(meego):**[pypackager on meego存储库](http://repo.pub.meego.com/home:/khertan/harmattan/armel/)
**错误跟踪器:**[pypackager错误跟踪器](https://github.com/khertan/pypackager/issues)
**平台:**maemo diablo,maemo fremantle
pypackager是一个板载开发工具,用于创建源代码
和二进制maemo包。
![pypackager source截图](http://khertan.net/medias/pypackager.jpg)
\pypackager howto
在maemo平台上,使用debian包
系统分发软件。如果您不在scratchbox中开发,而是直接在设备上开发,则需要一个工具来正确地组合软件以作为
.deb包分发。为了解决这个问题,我创建了pypackager。pypackager 3.x.x与py2deb相同,除了使用相同的脚本,您可以准备要上传到Extras Maemo Builder的包,或者直接在您的设备上为Maemo构建Debian包。
因此,您可以使用应用程序管理器安装它。
然后
添加以下文件和文件夹:*一个子文件夹/src,其中包含所有
源文件,文件夹结构代表应用程序文件
在设备上的安装方式,并且设置了正确的权限(因此不要使用fat分区~/mydocs)!*软件包的图标(例如
myapp.png,48×48像素),在
应用程序管理器中可以看到的图标。*以及make.py文件
可以使用
$python setup.py bdist_dumb
在dist/子目录中编译并生成.tar.gz包。只需在src/文件夹中解包
该包,并在其中添加hildon桌面集成文件
(见下文)。
\example/src folder structure
hildon桌面集成所需的文件:
/src/usr/share/applications/hildon/myapp.desktop
/src/usr/share/dbus-1/services/myapp.service
/src/usr/share/icons/hicolor/48x448/hildon/myapp.png
/src/usr/share/icons/hicolor/48x448/hildon/myapp.png/myapp.png/myapp.png(64x64像素)
~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~/>版本=1.0.0
编码=utf-8
名称=myapp
注释=clock&;日夜地图
exec=/opt/myapp/myapp.py
icon=myapp
x-icon-path=/usr/share/icons
x-window-icon=myapp
type=application
x-osso-service=net.khertan.myapp
x-osso-type=application/x-executable
StartupWMClass=MyApp
~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
*版本*是桌面文件的版本,而不是应用的版本。保持在1.0.0
*name*是菜单中显示的应用程序名称
*description*是指菜单中显示的应用程序说明
mode
*exec*是指向应用程序的链接
*icon*是我们图标文件的名称,没有尾随的.png部分
*x-icon-path*是图标的路径
*x-window-icon*是图标文件的名称,没有尾随的.png部分
*startupWMClass*是唯一需要的,因为如果它的程序使用直接屏幕
呈现类库,就像pygame一样,xlib或opengl。
请注意,只有在实际使用osso
服务时,才需要x-osso-service行。如果不正确处理应用程序中的
osso事件,将该行包含在.desktop文件中,将重新应用程序中的sult在启动后不久即被终止
。
>
>
~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~>/src/opt/myapp/myapp/myapp.py
/src/opt/myapp/myapp/myapp.py/src/opt/myapp/myapp/myapp/myapp/myapp/myapp等一类别的一类。py
~~~~~~~~~~~~~~~~~~~~~~~~.py应该以:
~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
小精灵!/usr/bin/env python
~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
可执行
/>安装build_myapp.py.py安装build_myapp.py的代码
/>/>复制以下代码创建自己的build_myapp.py.py.py,然后根据需要编辑
* -*-编码:UTF-8**BR/>此程序是自由软件;可以根据GNU通用公共许可证的条款重新发布和修改< BR/> >,由自由软件基金会发布。是在希望它有用的情况下分发的,
但没有任何保证;甚至没有对
适销性或特定用途的适用性的暗示保证。有关更多详细信息,请参阅
GNU通用公共许可证。
p=pypackager.pypackager("khteditor")
p.version="0.0.1"
p.buildversion="1"
p.display"khteditor name="khteditor"
p.description="khteditor是专为运行maemo和meego手机的设备设计的源代码编辑器。"
p.author="beno_thervier"
p.mainter="khertan"
p.email="khertan@khertan.net"
p.depends="python2.5-qt4-gui,python2.5-qt4-core,python2.5-qt4-maemo5"
p.suggestions="pylint"
p.section="用户/开发"
p.arch="armel"
p.emergency="low"
p.bugtracker="http://khertan.net/flysray/index.php?项目=7'
p.distribution="fremantle"
p.repository="extras devel"
p.icon="khteditor.png"
p["/usr/bin"]=["khteditor_launch.py",]
p["/usr/share/dbus-1/services"]=["khteditor.service",]
p["/usr/share/pixmaps"]=["khteditor.png",]
p["/usr/share/applications/hildon"]=["khteditor.desktop",]
meego的特定标志
p.maemo_flags='可见'
p.meego_desktop逖entry逖filename='
p.createdigsigsums=true
p.aegismanifest=''<;aegis name="…">;
<;提供>;
<;提供>;
<;限制>;
<;帐户>;
<;帐户>;
<;请求>;
<;域>;
<;docstring>;<;/docstring>;
<;/aegis>;''
文件=[]
src
OS.walk('/home/user/mydocs/projects/khteditor/khteditor'):
FS中的f:
打印OS.path.basename(root),dirs,f
前缀='khteditor/'
如果os.path.basename(根)!='khteditor':
prefix=prefix+os.path.basename(root)+'/'
files.append(prefix+os.path.basename(f))
打印文件
p["/usr/lib/python2.5/site packages"]=文件
python-m compileall/usr/lib/python2.5/site packages/khteditor"
p.changelog=""第一个版本
""
打印p.generate(build_binary=false,build_src=true)
打印p.generate(build_binary=true,build_src=true)
~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
\py运行make.py代码
打开设备上的"x终端",并将目录更改为文件夹(例如
"cd/home/user/myapp")。然后在xterm中使用"python2.5make.py"运行代码。
pypackager现在将打包您的文件。一旦成功完成,
根据生成选项,您的~/myapp文件夹将包含新文件,这些文件可以上载到maemo auto builder,也可以上载到您自己的存储库
*myapp_0.5.6-1.更改(更改日志)
*myapp_0.5.6-1.dsc(包
说明)
*myapp_0.5.6-1.tar.gz(打包的源文件)
本文是从[http://wiki.maemo.org/py2deb](http://wiki.maemo.org/py2deb)页面派生的。