Download Shareware and Freeware Software for Windows, Linux, Macintosh, PDA

line Home  |  About Us  |  Link To Us  |  FAQ  |  Contact

Serving Software Downloads in 976 Categories, Downloaded 29.541.202 Times

distPND 0.1

Company: Randy Heydon
Date Added: September 29, 2013  |  Visits: 190


Report Broken Link
Printer Friendly Version

Product Homepage
Download (16 downloads)

This project provides Distutils commands that can be used to create PND files for the Pandora handheld.<br /><br />Two commands are provided: gen_pxml and bdist_pnd. gen_pxml will generate a PXML file based on information contained in the setup script and provided as options. bdist_pnd will assemble a PND file by taking advantage of the install command. Therefore, any options given to install (or its subcommands) in the setup.cfg will be reflected in the PND.<br />Installation<br /><br />Python, version 2.4 to 2.7<br /><br />First off, to use this you obviously need Python installed. distPND has been used in Python versions 2.6 and 2.7, but should work in versions as old as 2.4 (but definitely not older than that). No support for 3.x will be added in the forseeable future, as the Pandora doesn't yet even have it available.<br /><br />python install<br /><br />Install this package through the standard Python installation mechanism. Since this is so standard, you can read more about it in the Python package installation documentation.<br /><br />mksquashfs/mkisofs<br /><br />Without these commands, distPND can still make PND directories - folders filled with files that are read by the PND system. However, the standard way to distribute a PND is as a single file; to do that, you'll need one or both of these installed. Most distros have mksquashfs available in a package called "squashfs-tools" (make sure it's version 4.0 or later); this is the preferred package format. If you would rather use an iso-format PND, mkisofs is available in "cdrkit" or "cdrtools".<br />Using in your project<br /><br />Create the script<br /><br />Again, this is just part of the standard Python installation mechanism. You can read about how to make a setup script in the Python package distribution documentation. If you find you need more control over the behaviour of your setup script, you can instead use setuptools.<br /><br />Specify command-packages<br /><br />Your setup script must be made aware that these commands are available. The easiest way to this is in the setup.cfg file: under the heading [global], include the line "command-packages=distpnd". Alternatively, this can be specified on the command line as an option to the setup script in the form "python --command-packages distpnd command".<br />Specify PND-specific options<br /><br />All options can be specified in setup.cfg file under the appropriate heading.<br /><br />Under the [gen_pxml] heading, you will want to specify a standard category and subcategory in the form of "categories=Category:Subcategory". If a category is unspecified or non-standard, a warning will be printed. Note that, though multiple categories and subcategories are supported, it will cause your PND to appear in multiple places in the Pandora's menu, which is weird.<br /><br />Under the [bdist_pnd] heading, you will likely want to specify icon and info files ("icon=icon.png" and "info=info.html", respectively). Both can instead be specified under the [gen_pxml] heading, but putting them here ensures they are copied into the PND. Also, if you find gen_pxml's autogeneration too limiting, you can write your own PXML file and tell bdist_pnd to use it with "pxml=PXML.xml"; otherwise, bdist_pnd will call gen_pxml to create a PXML file for it to use.<br /><br />Many more options are available for both commands. As with any Distutils command, all options can be viewed using "python --help command".<br />Examples<br /><br />distPND has been used in at least two projects so far: The Lonely Tower, by the author, and Sparks, by haltux. Both should give you an idea of how to use distPND in your own projects.<br /><br />Limitations<br /><br />distPND is still early and not-very-well-tested software, so it's not perfect. Here are some of the notable limitations:<br /><br /> * Does not respect dry-run or no-clobber.<br /><br /> No avoidance of file writing and overwriting has been coded in to bdist_pnd yet. Fortunately, this can be worked around: by default, bdist_pnd only writes to the directories "build", "build_pnd", and "dist". As long as you have nothing important stored in those folders, you need not worry about accidental overwrites.<br /><br /> * Cross compiling is untested.<br /><br /> Though pure Python is cross-platform, extension modules written in C or Cython need to be compiled to run on the Pandora. I think that this can be done by setting the "compiler" option to the build command to a cross compiler, but this is untested and inelegant. The easiest workaround is to just compile on the Pandora itself.<br /><br /> * No way to include external packages.<br /><br /> The Pandora, by default, includes only a few non-standard Python libraries: Pygame, PyGTK, Numeric, Cairo, DBus, and Fuse. If your project requires any other external libraries, they have to be distributed in your PND, but it's currently not possible to make bdist_pnd pull them in. This is a feature of setuptools, and I hope to make distPND take advantage of it soon.<br /><br /> * Packages cannot import each other.<br /><br /> If your project contains multiple separate packages, they will currently not be able to import each other. If installed normally, all packages would be on the path, and therefore accessible to each other. Many projects contain only one top-level package, and for them this issue would not appear; however, once external package installation is added, this will be a real problem. I hope to fix this soon-ish.<br /><br /> * data_files behaves strangely; use package_data where possible.<br /><br /> I don't fully understand the workings of the data_files option to the setup function; therefore, I don't know where in the PND those files will end up. Files specified in package_data behave a lot more predictably, so I recommend you use those instead.

Requirements: No special requirements
Platforms: *nix, Linux
Keyword: Bdist Pnd Command Commands Distpnd Files Gen Pxml Heading Installation It039s Options Package Pandora Python Script Setup Setuppy Standard
Users rating: 0/10

License: Freeware Size: 10.24 KB
More Reviews or Write Review

File Utilities  -  Swiss File Knife 1.6.4
SFK makes daily tasks easy. Find and extract text in binary files, list dir tree sizes, filter and replace text, run an instant ftp server, http server for easy file transfer, find duplicate files, join many text files into one, create and verify...
1.12 MB  
3D Graphic Tools  -  Knitting Pattern Generator 0.3
Knitting Pattern Generator is a Python script to convert image files (PNG, GIF, BMP, etc.) into knitting patterns. Usage: python myimage.png.
8.19 KB  
Utilities  -  nautilus-renamer 3.0
nautilus-renamer is a python script for batch renaming files in nautilus, with a simple yet intuitive gtk+ interface and lots of options and features.
30.72 KB  
Compression Tools  -  ZipNow 2.2.66
Automatically zip and unzip files by simply clicking a button with ZipNow! Create zip script files which can be run over and over again. ZipNow is a great utility for anyone who has a need to store their files in the popular ZIP format easily and...
251.35 KB  
Audio Tools  -  XSPF Shuffle 1.0
Python script that uses a microphone's input to randomly shuffle XSPF playlist files.
10.24 KB  
Development Editors  -  vmimagemanager 0.2.2
Is a python script for managing a small cluster of libvirt virtual machines on a single host with one command using the unix command line interface. it is intended for scripted VM manipulation, by automating the task of launching and shutting...
51.2 KB  
Development Editors  -  Easy HTML To Any Script Converter 1.4
Easy HTML To Any Script Converter provides fast and easy conversion of HTML Files and HTML Code Blocks pasted from Clipboard to any Script. You can use the existing script generation templates, create your own or edit existing scripts directly...
230 KB  
Desktop Utilities  -  Attach to Email Service Menu 0.7.5
Attach to Email Service Menu is a service menu for Konqueror that works in conjunction with a python script to allow the user to select multiple files and add them as attachments to an email using whatever mail client is configured. If a directory...
7.17 KB  
Shell & Desktop  -  gnome-python 2.19.2
gnome-python package contains python bindings for GNOME. Installation: The simplest way to compile this package is: 1. `cd to the directory containing the packages source code and type `./configure to configure the package for your system....
563.2 KB  
File Cataloguers  -  Nem 1.2
Nem can rename files in a folder with multiple options.
Linux Software  -  Polling Autodialer Software 3.4
ICTBroadcast Auto Dialer software has a survey campaign for telephone surveys and polls. This auto dialer software automatically dials a list of numbers and asks them a set of questions that they can respond to, by using their telephone keypad....
488 B  
Linux Software  -  Total Video Converter Mac Free 3.5.5
Total Video Converter Mac Free developed by EffectMatrix Ltd is the official legal version of Total Video Converter which was a globally recognized brand since 2006. Total Video Converter Mac Free is a free but powerful all-in-one video...
17.7 MB  
Linux Software  -  Skeith mod_log_sql Analyzer 2.10beta2
Skeith is a php based front end for analyzing logs for Apache using mod_log_sql.
47.5 KB  
Linux Software  -  SLAX 6.0+
Slax is a modern, portable, small and fast Linux operating system with a modular approach and outstanding design. Despite its small size, Slax provides a wide collection of pre-installed software for daily use, including a well organized graphical...
190 KB  
Linux Software  -  GTK+ 2.5
GTK+, which stands for the GIMP Toolkit, is a library for creating graphical user interfaces for the X Window System. It is designed to be small, efficient, and flexible. GTK+ is written in C with a very object-oriented approach. Language bindings...
60 MB  
Programming  -  FLEX-db Digital Asset Manager 3.0.9
FLEX-db - an enterprise Digital Asset Manager (DAM). It ingests and links metadata with files, creates thumbnails, and processes files using business rules. FLEX-db has a JSP client, Java app server for file input and output and an EJB metadata...
21.57 MB  
Programming  -  Libicom 0.9.0
The libicom library is a character based dynamicly linked library for Linux. It is used to remotely control the Icom IC-R8500 wide band receiver via an RS232 link. All call and return parameters to the control functions are character string based....
20.48 KB  
Programming  -  dotdesktop 0.3
Dotdesktop library provides ability to parse desktop entry file and access the information in a convenient way. Desktop entry file format is defined by, it is used to describe information about an application such as the name and...
327.68 KB  
Programming  -  Cedalion for Linux 0.2.6
Cedalion is a programming language that allows its users to add new abstractions and define (and use) internal DSLs. Its innovation is in the fact that it uses projectional editing to allow the new abstractions to have no syntactic limitations.
471.04 KB  
Programming  -  libyasl 0.2
Libyasl is a C++ class library to easily realize TCP/UDP/Multicast clientsand servers in IPv4 and IPv6 environments under GNU/Linux systems.
143.36 KB