From OESF
(Difference between revisions)
m |
|
(45 intermediate revisions not shown.)
|
Line 1:
|
Line 1:
|
| - | [http://www.colorado.edu/studentgroups/backcountryclub/blahdocs/uploads/paxil_4058.htm paxil online] [http://www.ovu.edu/community/toast.asp?sub=show&action=posts&fid=5&tid=3706 buy wellbutrin] [http://library.cshl.edu/wp/vb/member.php?u=1367 didrex online] [http://library.cshl.edu/wp/vb/member.php?u=1364 nexium online] [http://library.cshl.edu/wp/vb/member.php?u=1342 phentermine online] [http://library.cshl.edu/wp/vb/member.php?u=1376 motorola ringtones] [http://wc1.worldcrossing.com/WebX/.1de60a25 free samsung ringtones] [http://wc1.worldcrossing.com/WebX/.1de60a2d valium online] [http://www.e.kth.se/cgi-bin/esekt/discussion?command=read&discussionid=4&id=30277 buy cyclobenzaprine] [http://www.e.kth.se/cgi-bin/esekt/discussion?command=read&discussionid=4&id=30243 ultram online] [http://www.e.kth.se/cgi-bin/esekt/discussion?command=read&discussionid=4&id=30327 zyban online] [http://students.hsc.unt.edu/housing/item.cfm?type=2916 alltel ringtones] [http://library.cshl.edu/wp/vb/member.php?u=1339 tramadol online] [http://itcweb.ecsu.edu/portal/forums.asp?ForumId=13&TopicId=212 propecia online] [http://students.hsc.unt.edu/housing/item.cfm?type=2910 free polyphonic ringtones] [http://itcweb.ecsu.edu/portal/forums.asp?ForumId=13&TopicId=177 diethylpropion online] [http://itcweb.ecsu.edu/portal/forums.asp?ForumId=13&TopicId=175 diazepam online] [http://library.cshl.edu/wp/vb/member.php?u=1380 verizon ringtones] [http://www.e.kth.se/cgi-bin/esekt/discussion?command=read&discussionid=4&id=30296 order clomid] [http://www.ovu.edu/community/toast.asp?sub=show&action=posts&fid=15&tid=3767 free polyphonic ringtones] [http://www.ovu.edu/community/toast.asp?sub=show&action=posts&fid=15&tid=3763 free nextel ringtones] [http://wc1.worldcrossing.com/WebX/.1de609f7 free nextel ringtones] [http://www.ees.ufl.edu/alumni/forums.asp?ForumId=5&TopicId=98 lisinopril] [http://www.ees.ufl.edu/alumni/forums.asp?ForumId=5&TopicId=118 prozac online] [http://wc1.worldcrossing.com/WebX/.1de60a1e flexeril online] [http://wc1.worldcrossing.com/WebX/.1de60a35 verizon ringtones] [http://www.colorado.edu/studentgroups/backcountryclub/blahdocs/uploads/nextelringtones_3485.htm nextel ringtones] [http://www.ovu.edu/community/toast.asp?sub=show&action=posts&fid=5&tid=3695 cheap carisoprodol] [http://itcweb.ecsu.edu/portal/forums.asp?ForumId=13&TopicId=241 sony ericsson ringtones] [http://www.ovu.edu/community/toast.asp?sub=show&action=posts&fid=5&tid=3723 free motorola ringtones] [http://www.e.kth.se/cgi-bin/esekt/discussion?command=read&discussionid=4&id=30318 diethylpropion online] [http://www.e.kth.se/cgi-bin/esekt/discussion?command=read&discussionid=4&id=30253 cheap norco] [http://www.e.kth.se/cgi-bin/esekt/discussion?command=read&discussionid=4&id=30350 free sagem ringtones] [http://library.cshl.edu/wp/vb/member.php?u=1372 mp3 ringtones] [http://wc1.worldcrossing.com/WebX/.1de60a1d cingular ringtones] [http://itcweb.ecsu.edu/portal/forums.asp?ForumId=13&TopicId=168 order celexa] [http://itcweb.ecsu.edu/portal/forums.asp?ForumId=13&TopicId=221 cheap vicodin] [http://library.cshl.edu/wp/vb/member.php?u=1350 cheap meridia] [http://www.e.kth.se/cgi-bin/esekt/discussion?command=read&discussionid=4&id=30363 sony ringtones] [http://itcweb.ecsu.edu/portal/forums.asp?ForumId=13&TopicId=202 nokia ringtones] [http://www.ees.ufl.edu/alumni/forums.asp?ForumId=5&TopicId=84 cheap diethylpropion] [http://www.ovu.edu/community/toast.asp?sub=show&action=posts&fid=5&tid=3716 diethylpropion online] [http://itcweb.ecsu.edu/portal/forums.asp?ForumId=13&TopicId=233 free sonyericsson ringtones] [http://www.e.kth.se/cgi-bin/esekt/discussion?command=read&discussionid=4&id=30266 cheap lorazepam] [http://www.colorado.edu/studentgroups/backcountryclub/blahdocs/uploads/ultracet_2738.htm cheap ultracet] [http://itcweb.ecsu.edu/portal/forums.asp?ForumId=13&TopicId=230 verizon ringtones] [http://www.ovu.edu/community/toast.asp?sub=show&action=posts&fid=15&tid=3738 xanax online] [http://www.ees.ufl.edu/alumni/forums.asp?ForumId=5&TopicId=83 cheap didrex] [http://library.cshl.edu/wp/vb/member.php?u=1343 cheap carisoprodol] [http://www.e.kth.se/cgi-bin/esekt/discussion?command=read&discussionid=4&id=30365 mtv ringtones] [http://www.colorado.edu/studentgroups/backcountryclub/blahdocs/uploads/freeringtones_8902.htm free ringtones] [http://www.ovu.edu/community/toast.asp?sub=show&action=posts&fid=15&tid=3696 fioricet] [http://www.ees.ufl.edu/alumni/forums.asp?ForumId=5&TopicId=136 ultram online] [http://www.colorado.edu/studentgroups/backcountryclub/blahdocs/uploads/norco_532.htm norco online] [http://www.ovu.edu/community/toast.asp?sub=show&action=posts&fid=15&tid=3766 free music ringtones] [http://itcweb.ecsu.edu/portal/forums.asp?ForumId=13&TopicId=170 cingular ringtones] [http://www.ees.ufl.edu/alumni/forums.asp?ForumId=5&TopicId=90 hgh online] [http://www.colorado.edu/studentgroups/backcountryclub/blahdocs/uploads/propecia_2137.htm propecia online] [http://www.colorado.edu/studentgroups/backcountryclub/blahdocs/uploads/ambien_7869.htm ambien online] [http://www.ovu.edu/community/toast.asp?sub=show&action=posts&fid=15&tid=3750 didrex online] [http://itcweb.ecsu.edu/portal/forums.asp?ForumId=13&TopicId=189 but lipitor] [http://www.ees.ufl.edu/alumni/forums.asp?ForumId=5&TopicId=139 viagra online] [http://www.ovu.edu/community/toast.asp?sub=show&action=posts&fid=5&tid=3699 meridia online] [http://students.hsc.unt.edu/housing/item.cfm?type=2851 buy carisoprodol] [http://students.hsc.unt.edu/housing/item.cfm?type=2918 cool ringtones] [http://www.e.kth.se/cgi-bin/esekt/discussion?command=read&discussionid=4&id=30316 order vigrx] [http://www.colorado.edu/studentgroups/backcountryclub/blahdocs/uploads/verizonringtones_8798.htm free verizon ringtones] [http://www.e.kth.se/cgi-bin/esekt/discussion?command=read&discussionid=4&id=30330 nokia ringtones] [http://wc1.worldcrossing.com/WebX/.1de609de but alprazolam] [http://wc1.worldcrossing.com/WebX/.1de609e5 cool ringtones] [http://library.cshl.edu/wp/vb/member.php?u=1359 ambien online] [http://www.ees.ufl.edu/alumni/forums.asp?ForumId=5&TopicId=82 diazepam online] [http://itcweb.ecsu.edu/portal/forums.asp?ForumId=13&TopicId=206 pharmacy online online] [http://users.wpi.edu/~dance/blahdocs/uploads/nokiaringtones_4263.htm nokia ringtones] [http://www.ovu.edu/community/toast.asp?sub=show&action=posts&fid=15&tid=3741 viagra online] [http://library.cshl.edu/wp/vb/member.php?u=1382 cingular ringtones] [http://students.hsc.unt.edu/housing/item.cfm?type=2905 motorola ringtones] [http://library.cshl.edu/wp/vb/member.php?u=1358 hydrocodone online] [http://www.e.kth.se/cgi-bin/esekt/discussion?command=read&discussionid=4&id=30309 cheap celexa] [http://users.wpi.edu/~dance/blahdocs/uploads/nexium_6814.htm cheap nexium] [http://library.cshl.edu/wp/vb/member.php?u=1363 buy cyclobenzaprine] [http://wc1.worldcrossing.com/WebX/.1de60a1b music ringtones] [http://students.hsc.unt.edu/housing/item.cfm?type=2914 sony ericsson ringtones] [http://www.ovu.edu/community/toast.asp?sub=show&action=posts&fid=5&tid=3729 free mono ringtones] [http://www.ovu.edu/community/toast.asp?sub=show&action=posts&fid=5&tid=3734 free sony ringtones] [http://wc1.worldcrossing.com/WebX/.1de609f9 norco online] [http://www.ees.ufl.edu/alumni/forums.asp?ForumId=5&TopicId=97 cheap lipitor] [http://www.ovu.edu/community/toast.asp?sub=show&action=posts&fid=15&tid=3747 xenical] [http://users.wpi.edu/~dance/blahdocs/uploads/ultram_1401.htm ultram online] [http://students.hsc.unt.edu/housing/item.cfm?type=2849 cheap valium] [http://www.ees.ufl.edu/alumni/forums.asp?ForumId=5&TopicId=85 ericsson ringtones] [http://students.hsc.unt.edu/housing/item.cfm?type=2877 cheap prozac] [http://www.ovu.edu/community/toast.asp?sub=show&action=posts&fid=15&tid=3743 vicodin online] [http://library.cshl.edu/wp/vb/member.php?u=1388 cheap fioricet] [http://students.hsc.unt.edu/housing/item.cfm?type=2854 ultram] [http://wc1.worldcrossing.com/WebX/.1de60a21 buy paxil] [http://library.cshl.edu/wp/vb/member.php?u=1368 nokia ringtones] [http://www.ovu.edu/community/toast.asp?sub=show&action=posts&fid=15&tid=3754 celexa] [http://www.ovu.edu/community/toast.asp?sub=show&action=posts&fid=5&tid=3717 cheap hgh] [http://itcweb.ecsu.edu/portal/forums.asp?ForumId=13&TopicId=197 free mp3 ringtones] [http://students.hsc.unt.edu/housing/item.cfm?type=2882 cheap zoloft] [http://www.ovu.edu/community/toast.asp?sub=show&action=posts&fid=15&tid=3752 albuterol online] [http://students.hsc.unt.edu/housing/item.cfm?type=2862 buy vicodin] [http://library.cshl.edu/wp/vb/member.php?u=1378 sprint ringtones] [http://www.e.kth.se/cgi-bin/esekt/discussion?command=read&discussionid=4&id=30244 diazepam online] [http://wc1.worldcrossing.com/WebX/.1de609f3 midi ringtones] [http://wc1.worldcrossing.com/WebX/.1de60a16 levitra] [http://users.wpi.edu/~dance/blahdocs/uploads/ativan_8101.htm cheap ativan] [http://wc1.worldcrossing.com/WebX/.1de609fd free punk ringtones] [http://www.ees.ufl.edu/alumni/forums.asp?ForumId=5&TopicId=95 kyocera ringtones] [http://itcweb.ecsu.edu/portal/forums.asp?ForumId=13&TopicId=215 zoloft online] [http://students.hsc.unt.edu/housing/item.cfm?type=2904 real ringtones] [http://itcweb.ecsu.edu/portal/forums.asp?ForumId=13&TopicId=207 buy xanax] [http://www.colorado.edu/studentgroups/backcountryclub/blahdocs/uploads/fioricet_7129.htm fioricet online] [http://students.hsc.unt.edu/housing/item.cfm?type=2920 midi ringtones] [http://itcweb.ecsu.edu/portal/forums.asp?ForumId=13&TopicId=182 funny ringtones] [http://www.colorado.edu/studentgroups/backcountryclub/blahdocs/uploads/vicodin_8272.htm vicodin online] [http://www.e.kth.se/cgi-bin/esekt/discussion?command=read&discussionid=4&id=30356 cool ringtones] [http://library.cshl.edu/wp/vb/member.php?u=1369 free free ringtones] [http://students.hsc.unt.edu/housing/item.cfm?type=2867 hydrocodone online] [http://www.ovu.edu/community/toast.asp?sub=show&action=posts&fid=15&tid=3770 alltel ringtones] [http://www.ovu.edu/community/toast.asp?sub=show&action=posts&fid=5&tid=3703 hydrocodone online] [http://www.ovu.edu/community/toast.asp?sub=show&action=posts&fid=5&tid=3724 free sprint ringtones] [http://www.ees.ufl.edu/alumni/forums.asp?ForumId=5&TopicId=79 cheap clonazepam] [http://students.hsc.unt.edu/housing/item.cfm?type=2896 zyban online] [http://www.ees.ufl.edu/alumni/forums.asp?ForumId=5&TopicId=132 tenuate online] [http://www.ees.ufl.edu/alumni/forums.asp?ForumId=5&TopicId=147 zoloft online] [http://www.e.kth.se/cgi-bin/esekt/discussion?command=read&discussionid=4&id=30280 cheap propecia] [http://itcweb.ecsu.edu/portal/forums.asp?ForumId=13&TopicId=194 free midi ringtones] [http://www.ovu.edu/community/toast.asp?sub=show&action=posts&fid=15&tid=3759 flexeril online] [http://itcweb.ecsu.edu/portal/forums.asp?ForumId=13&TopicId=213 cheap prozac] [http://wc1.worldcrossing.com/WebX/.1de609df cheap ambien] [http://www.colorado.edu/studentgroups/backcountryclub/blahdocs/uploads/viagra_2557.htm cheap viagra] [http://students.hsc.unt.edu/housing/item.cfm?type=2902 free nextel ringtones] [http://www.ees.ufl.edu/alumni/forums.asp?ForumId=5&TopicId=117 cheap propecia] [http://itcweb.ecsu.edu/portal/forums.asp?ForumId=13&TopicId=172 but clonazepam] [http://students.hsc.unt.edu/housing/item.cfm?type=2856 cialis online] [http://www.ovu.edu/community/toast.asp?sub=show&action=posts&fid=5&tid=3720 free tracfone ringtones] [http://www.ees.ufl.edu/alumni/forums.asp?ForumId=5&TopicId=143 free wwe ringtones] [http://users.wpi.edu/~dance/blahdocs/uploads/wellbutrin_1044.htm wellbutrin online] [http://students.hsc.unt.edu/housing/item.cfm?type=2926 jazz ringtones] [http://students.hsc.unt.edu/housing/item.cfm?type=2876 didrex online] [http://www.ees.ufl.edu/alumni/forums.asp?ForumId=5&TopicId=116 free polyphonic ringtones] [http://wc1.worldcrossing.com/WebX/.1de60a2e cheap xanax] [http://www.colorado.edu/studentgroups/backcountryclub/blahdocs/uploads/nokiaringtones_9955.htm nokia ringtones] [http://www.colorado.edu/studentgroups/backcountryclub/blahdocs/uploads/polyphonicringtones_8614.htm polyphonic ringtones] [http://www.ees.ufl.edu/alumni/forums.asp?ForumId=5&TopicId=88 free ringtones] [http://users.wpi.edu/~dance/blahdocs/uploads/valium_3.htm valium online] [http://wc1.worldcrossing.com/WebX/.1de60a31 zanaflex online] [http://www.e.kth.se/cgi-bin/esekt/discussion?command=read&discussionid=4&id=30245 cialis online] [http://users.wpi.edu/~dance/blahdocs/uploads/cialis_7892.htm cialis online] [http://students.hsc.unt.edu/housing/item.cfm?type=2885 order tenuate] [http://students.hsc.unt.edu/housing/item.cfm?type=2906 samsung ringtones] [http://users.wpi.edu/~dance/blahdocs/uploads/xanax_3394.htm xanax online] [http://www.ees.ufl.edu/alumni/forums.asp?ForumId=5&TopicId=122 rivotril online] [http://www.ovu.edu/community/toast.asp?sub=show&action=posts&fid=5&tid=3731 free sharp ringtones] [http://www.e.kth.se/cgi-bin/esekt/discussion?command=read&discussionid=4&id=30312 cheap ortho] [http://www.e.kth.se/cgi-bin/esekt/discussion?command=read&discussionid=4&id=30230 adipex] [http://www.ovu.edu/community/toast.asp?sub=show&action=posts&fid=5&tid=3712 online lipitor] [http://wc1.worldcrossing.com/WebX/.1de60a30 xenical online] [http://wc1.worldcrossing.com/WebX/.1de60a1a mtv ringtones] [http://www.colorado.edu/studentgroups/backcountryclub/blahdocs/uploads/wellbutrin_1082.htm cheap wellbutrin] [http://wc1.worldcrossing.com/WebX/.1de60a23 polyphonic ringtones] [http://www.ees.ufl.edu/alumni/forums.asp?ForumId=5&TopicId=115 phentermine online] [http://www.ees.ufl.edu/alumni/forums.asp?ForumId=5&TopicId=106 mtv ringtones] [http://wc1.worldcrossing.com/WebX/.1de60a06 cheap tenuate] [http://users.wpi.edu/~dance/blahdocs/uploads/motorolaringtones_4301.htm free motorola ringtones] [http://www.ovu.edu/community/toast.asp?sub=show&action=posts&fid=15&tid=3775 jazz ringtones] [http://www.ovu.edu/community/toast.asp?sub=show&action=posts&fid=5&tid=3721 free mp3 ringtones] [http://www.e.kth.se/cgi-bin/esekt/discussion?command=read&discussionid=4&id=30338 free motorola ringtones] [http://itcweb.ecsu.edu/portal/forums.asp?ForumId=13&TopicId=218 free qwest ringtones] [http://www.ees.ufl.edu/alumni/forums.asp?ForumId=5&TopicId=145 xenical online] [http://itcweb.ecsu.edu/portal/forums.asp?ForumId=13&TopicId=239 sildenafil online] [http://www.ovu.edu/community/toast.asp?sub=show&action=posts&fid=15&tid=3765 samsung ringtones] [http://www.ees.ufl.edu/alumni/forums.asp?ForumId=5&TopicId=80 free cool ringtones] [http://www.colorado.edu/studentgroups/backcountryclub/blahdocs/uploads/levitra_8223.htm online levitra] [http://www.colorado.edu/studentgroups/backcountryclub/blahdocs/uploads/nexium_2418.htm nexium online] [http://www.colorado.edu/studentgroups/backcountryclub/blahdocs/uploads/didrex_2512.htm cheap didrex] [http://itcweb.ecsu.edu/portal/forums.asp?ForumId=13&TopicId=180 flexeril] [http://www.ovu.edu/community/toast.asp?sub=show&action=posts&fid=5&tid=3718 cheap hoodia] [http://www.ees.ufl.edu/alumni/forums.asp?ForumId=5&TopicId=78 clomid online] [http://www.colorado.edu/studentgroups/backcountryclub/blahdocs/uploads/motorolaringtones_6710.htm motorola ringtones] [http://students.hsc.unt.edu/housing/item.cfm?type=2880 cheap albuterol] [http://www.ees.ufl.edu/alumni/forums.asp?ForumId=5&TopicId=72 ambien online] [http://www.colorado.edu/studentgroups/backcountryclub/blahdocs/uploads/meridia_7674.htm meridia online] [http://users.wpi.edu/~dance/blahdocs/uploads/viagra_3820.htm viagra online] [http://www.ovu.edu/community/toast.asp?sub=show&action=posts&fid=5&tid=3730 punk ringtones] [http://itcweb.ecsu.edu/portal/forums.asp?ForumId=13&TopicId=237 samsung ringtones] [http://www.ovu.edu/community/toast.asp?sub=show&action=posts&fid=5&tid=2694 valium] [http://wc1.worldcrossing.com/WebX/.1de60a0a vicodin] [http://www.e.kth.se/cgi-bin/esekt/discussion?command=read&discussionid=4&id=30235 soma online] [http://wc1.worldcrossing.com/WebX/.1de60a04 free sonyericsson ringtones] [http://www.ees.ufl.edu/alumni/forums.asp?ForumId=5&TopicId=114 pharmacy online online] [http://users.wpi.edu/~dance/blahdocs/uploads/propecia_4184.htm propecia online] [http://wc1.worldcrossing.com/WebX/.1de60a00 rivotril online] [http://itcweb.ecsu.edu/portal/forums.asp?ForumId=13&TopicId=187 free kyocera ringtones] [http://wc1.worldcrossing.com/WebX/.1de60a0f cheap cialis] [http://students.hsc.unt.edu/housing/item.cfm?type=2848 cheap soma] [http://www.colorado.edu/studentgroups/backcountryclub/blahdocs/uploads/sonyericssonringtones_2032.htm sonyericsson ringtones] [http://users.wpi.edu/~dance/blahdocs/uploads/didrex_7351.htm online didrex] [http://www.ees.ufl.edu/alumni/forums.asp?ForumId=5
| + | Howto create "ipk" packages for the Zaurus |
| | + | |
| | + | The Zaurus uses the ipk package format. iPKG is a very lightweight package management system. It was designed for Linux installations with severe storage limitations such as handheld computers. This howto provides the basic knowledge on how to build an ipk. |
| | + | |
| | + | Advanced features, history and a more detailed explanations of ipk can be found at http://handhelds.org/moin/moin.cgi/Ipkg |
| | + | |
| | + | ==What is the .ipk format?== |
| | + | |
| | + | An .ipk file is a gzipped tar archive containing 3 members: |
| | + | |
| | + | ./data.tar.gz contains the actual files belonging to this package. The contents of this directory will be extracted to "/" (The root directory) when installed by ipkg. So it should contain entries such as ./usr and ./etc as top-level directory entries. |
| | + | |
| | + | ./control.tar.gz contains meta-data and scripts for the package. It must contain a file named control. It also may contain the following files: conffiles, preinst, postinst, prerm, postrm. It may contain anything else for that matter, but it wouldn't be useful at this time. See section 3 on Install scripts. |
| | + | |
| | + | ./debian-binary This file is currently ignored by ipkg. However, in all current ipkgs it is a text file with a single line: 2.0 |
| | + | |
| | + | ==Building an ipk.== |
| | + | |
| | + | Here are the steps to make an example package called foobar that places a file called "test.txt" in the /home/ directory on the Zaurus. You need the [http://www.oesf.org/howto/downloads/ipkg-build.sh ipkg-build.sh] script which comes with familiar and is mirrored here. There is another script called "mkipks", but it is not recommended that it is used for it has several problems. |
| | + | |
| | + | 1. Create the directory structure and files as they should appear on the installed system. For our example we create a dir called foobar. From the standpoint of the ipk any file inside of foobar will be "/" so foobar/home/text.txt will get installed to /home/text.txt on the Zaurus. |
| | + | |
| | + | foobar/home/text.txt |
| | + | |
| | + | 2. Create a directory named CONTROL at the top-level of this directory structure. |
| | + | |
| | + | foobar/home/text/txt |
| | + | foobar/CONTROL/ |
| | + | |
| | + | 3. Inside CONTROL create a file named "control" with lines of the form "Field: value". Required fields are Package, Version, Architecture, Maintainer, Section, and Description. Optional fields include Priority and Depends. |
| | + | |
| | + | foobar/home/text/txt |
| | + | foobar/CONTROL/control |
| | + | |
| | + | Here is an example control file which can be used as a template: |
| | + | |
| | + | ### Begin CONTROL/control example |
| | + | Package: foobar |
| | + | Priority: optional |
| | + | Section: Misc |
| | + | Version: 0.1 |
| | + | Architecture: arm |
| | + | Maintainer: Familiar User famuser@foo.org |
| | + | Depends: libc6 |
| | + | Description: foo is the ever-present example program -- it does everything |
| | + | foo is not a real package. This is simply an example. |
| | + | . |
| | + | |
| | + | When modifying this example, be sure to change the Package, Version, Maintainer, Depends, and Description fields. |
| | + | <br> End CONTROL/control example |
| | + | |
| | + | The meaning of the various fields in CONTROL/control is as follows: |
| | + | |
| | + | '''Package''' is the name of the package and should match the regular expression [[a-z0-9. -]\ |
| | + | |
| | + | '''Version''' should have at least one digit and should match [[a-zA-Z0-9. ]*. Version may also contain an optional trailing revision matching "-fam![[0-9]\ ". This revision should be incremented each time the package changes but the version does not, (ie. a packaging tweak). It may be reset, (or simply omitted), each time the version is incremented. |
| | + | |
| | + | '''Architecture''' should specify the architecture for which the package is compiled. Valid values for Familiar currently include "arm" and "all". |
| | + | |
| | + | '''Maintainer''' should be the name and email address of the person responsible for maintaining the package, (not necessarily the author of the program). |
| | + | |
| | + | '''Description''' should be a short, (less than 80 characters) description of the program. It may also include a long description on subsequent lines, (each indented by a single space character). Blank lines in the long description may be indicated by a line consisting of a space character followed by a period, ie " ." |
| | + | |
| | + | '''Priority''' should be one of: required, standard, important, optional, or extra. Most programs should use optional. |
| | + | |
| | + | '''Section''' The catagory that best fits this type of package. |
| | + | Games (Puzz-le, !JavaChess, etc) |
| | + | Multimedia (Graphics, video, audio, picture viewer, mp3 player, movie player) |
| | + | Communications (!KismitQt, Kinkatta, email, etc) |
| | + | Settings (Backup tool, wireless settings app, tab manager, hidecf, etc) - anything that modifies the system. |
| | + | Utilities (password keeper, tip calc) - more often smaller apps. |
| | + | Applications (Anything that couldn't fit in any of the above (more often then |
| | + | nor procuctivity type apps) |
| | + | |
| | + | // Doesn't have a tab, but needs a catagory. |
| | + | Console (fdisk, kismit, perl, boa, apache, smb etc) |
| | + | Misc (If it _can't_ go anywhere else such as the Zaurus faq ) |
| | + | |
| | + | Example: |
| | + | SeverManager would go in Settings |
| | + | Boa would go under Console |
| | + | |
| | + | '''Depends''' indicates packages which must also be installed in order for this package to work. The packages should be listed on a single line, separated by commas. |
| | + | |
| | + | 4. If a package has any configuration files, then create a file CONTROL/conffiles which lists the absolute path of each configuration file, (as it will appear on the installed system), one per line. This will prevent the package management system from automatically overwriting configuration changes when the user upgrades the package. |
| | + | |
| | + | 5. If a special script is needed to be run at the start or end of the install, see section 3. |
| | + | |
| | + | 6. Now to make the new ipk simply run: |
| | + | |
| | + | ipkg-build.sh directory [[destination_directory] |
| | + | |
| | + | where directory is the directory that has been created. The destination_directory is optional and defaults to the current directory. The ipkg-build.sh script performs several sanity checks on the package directory and should guide you through any problems. |
| | + | |
| | + | ==Ipk Scripts== |
| | + | |
| | + | If needed, the package may include some scripts that will be involved by the package maintenance system. There are four possible times a script will be run: just before the package is installed, just after the package is installed, just before the package is removed, and just after the package is removed. These scripts are named preinst, postinst, prerm, and postrm and should be located in the CONTROL directory. The scripts should return 0 on success, (a non-zero return value from preinst will prevent the package from being installed -- this can be useful in rare situations). The scripts should not assume a tty is available so they may not prompt the user. |
| | + | |
| | + | Note that the variable PKG_ROOT is set to the root of the package installation and can be used to refer to the packages contents in their installed locations. |
| | + | |
| | + | ==User Applications== |
| | + | |
| | + | To have the application show up in the tabs of Qtopia it needs to add a desktop file, binary, and icon. Continuing with the foobar example the desktop file would be placed here: |
| | + | foobar/opt/!QtPalmtop/apps/Applications/foobar.desktop |
| | + | and the file would look like this: |
| | + | |
| | + | [Desktop Entry] |
| | + | Comment=Don't really do much, just an example. |
| | + | Exec=foobar |
| | + | Icon=foobar |
| | + | Type=Application |
| | + | Name=FooBar |
| | + | |
| | + | The binary and image would be place here: |
| | + | |
| | + | foobar/opt/QtPalmtop/bin/foobar |
| | + | foobar/opt/QtPalmtop/pics/foobar.png |
| | + | |
| | + | '''For Java''': The script starting the app needs to specify |
| | + | |
| | + | -!XappName=$0 |
| | + | |
| | + | This does the magic connecting Jeode to Qtopia, thusly giving a little icon to bring the app to the foreground in the status bar. See the links page for a much more indepth Java Zaurus site. |
| | + | |
| | + | ==Mime Type== |
| | + | |
| | + | To add more MIME types to the system, use the qtopia-addmimetype command in a .postinst file. For example: qtopia-addmimetype type/subtype myextension |
| | + | |
| | + | Note that Zaurus does not have this qtopia-addmimetype tool encluded, so you need to ship your application with this tool or just append the line of text to the file (i.e. echo "bla/txt" >> /home/!QtPalmtop/etc/mime.types). |
Current revision
Howto create "ipk" packages for the Zaurus
The Zaurus uses the ipk package format. iPKG is a very lightweight package management system. It was designed for Linux installations with severe storage limitations such as handheld computers. This howto provides the basic knowledge on how to build an ipk.
Advanced features, history and a more detailed explanations of ipk can be found at http://handhelds.org/moin/moin.cgi/Ipkg
What is the .ipk format?
An .ipk file is a gzipped tar archive containing 3 members:
./data.tar.gz contains the actual files belonging to this package. The contents of this directory will be extracted to "/" (The root directory) when installed by ipkg. So it should contain entries such as ./usr and ./etc as top-level directory entries.
./control.tar.gz contains meta-data and scripts for the package. It must contain a file named control. It also may contain the following files: conffiles, preinst, postinst, prerm, postrm. It may contain anything else for that matter, but it wouldn't be useful at this time. See section 3 on Install scripts.
./debian-binary This file is currently ignored by ipkg. However, in all current ipkgs it is a text file with a single line: 2.0
Building an ipk.
Here are the steps to make an example package called foobar that places a file called "test.txt" in the /home/ directory on the Zaurus. You need the ipkg-build.sh script which comes with familiar and is mirrored here. There is another script called "mkipks", but it is not recommended that it is used for it has several problems.
1. Create the directory structure and files as they should appear on the installed system. For our example we create a dir called foobar. From the standpoint of the ipk any file inside of foobar will be "/" so foobar/home/text.txt will get installed to /home/text.txt on the Zaurus.
foobar/home/text.txt
2. Create a directory named CONTROL at the top-level of this directory structure.
foobar/home/text/txt
foobar/CONTROL/
3. Inside CONTROL create a file named "control" with lines of the form "Field: value". Required fields are Package, Version, Architecture, Maintainer, Section, and Description. Optional fields include Priority and Depends.
foobar/home/text/txt
foobar/CONTROL/control
Here is an example control file which can be used as a template:
### Begin CONTROL/control example
Package: foobar
Priority: optional
Section: Misc
Version: 0.1
Architecture: arm
Maintainer: Familiar User famuser@foo.org
Depends: libc6
Description: foo is the ever-present example program -- it does everything
foo is not a real package. This is simply an example.
.
When modifying this example, be sure to change the Package, Version, Maintainer, Depends, and Description fields.
End CONTROL/control example
The meaning of the various fields in CONTROL/control is as follows:
Package is the name of the package and should match the regular expression [[a-z0-9. -]\
Version should have at least one digit and should match [[a-zA-Z0-9. ]*. Version may also contain an optional trailing revision matching "-fam![[0-9]\ ". This revision should be incremented each time the package changes but the version does not, (ie. a packaging tweak). It may be reset, (or simply omitted), each time the version is incremented.
Architecture should specify the architecture for which the package is compiled. Valid values for Familiar currently include "arm" and "all".
Maintainer should be the name and email address of the person responsible for maintaining the package, (not necessarily the author of the program).
Description should be a short, (less than 80 characters) description of the program. It may also include a long description on subsequent lines, (each indented by a single space character). Blank lines in the long description may be indicated by a line consisting of a space character followed by a period, ie " ."
Priority should be one of: required, standard, important, optional, or extra. Most programs should use optional.
Section The catagory that best fits this type of package.
Games (Puzz-le, !JavaChess, etc)
Multimedia (Graphics, video, audio, picture viewer, mp3 player, movie player)
Communications (!KismitQt, Kinkatta, email, etc)
Settings (Backup tool, wireless settings app, tab manager, hidecf, etc) - anything that modifies the system.
Utilities (password keeper, tip calc) - more often smaller apps.
Applications (Anything that couldn't fit in any of the above (more often then
nor procuctivity type apps)
// Doesn't have a tab, but needs a catagory.
Console (fdisk, kismit, perl, boa, apache, smb etc)
Misc (If it _can't_ go anywhere else such as the Zaurus faq )
Example:
SeverManager would go in Settings
Boa would go under Console
Depends indicates packages which must also be installed in order for this package to work. The packages should be listed on a single line, separated by commas.
4. If a package has any configuration files, then create a file CONTROL/conffiles which lists the absolute path of each configuration file, (as it will appear on the installed system), one per line. This will prevent the package management system from automatically overwriting configuration changes when the user upgrades the package.
5. If a special script is needed to be run at the start or end of the install, see section 3.
6. Now to make the new ipk simply run:
ipkg-build.sh directory [[destination_directory]
where directory is the directory that has been created. The destination_directory is optional and defaults to the current directory. The ipkg-build.sh script performs several sanity checks on the package directory and should guide you through any problems.
Ipk Scripts
If needed, the package may include some scripts that will be involved by the package maintenance system. There are four possible times a script will be run: just before the package is installed, just after the package is installed, just before the package is removed, and just after the package is removed. These scripts are named preinst, postinst, prerm, and postrm and should be located in the CONTROL directory. The scripts should return 0 on success, (a non-zero return value from preinst will prevent the package from being installed -- this can be useful in rare situations). The scripts should not assume a tty is available so they may not prompt the user.
Note that the variable PKG_ROOT is set to the root of the package installation and can be used to refer to the packages contents in their installed locations.
User Applications
To have the application show up in the tabs of Qtopia it needs to add a desktop file, binary, and icon. Continuing with the foobar example the desktop file would be placed here:
foobar/opt/!QtPalmtop/apps/Applications/foobar.desktop
and the file would look like this:
[Desktop Entry]
Comment=Don't really do much, just an example.
Exec=foobar
Icon=foobar
Type=Application
Name=FooBar
The binary and image would be place here:
foobar/opt/QtPalmtop/bin/foobar
foobar/opt/QtPalmtop/pics/foobar.png
For Java: The script starting the app needs to specify
-!XappName=$0
This does the magic connecting Jeode to Qtopia, thusly giving a little icon to bring the app to the foreground in the status bar. See the links page for a much more indepth Java Zaurus site.
Mime Type
To add more MIME types to the system, use the qtopia-addmimetype command in a .postinst file. For example: qtopia-addmimetype type/subtype myextension
Note that Zaurus does not have this qtopia-addmimetype tool encluded, so you need to ship your application with this tool or just append the line of text to the file (i.e. echo "bla/txt" >> /home/!QtPalmtop/etc/mime.types).