Prior to that date, a mailing list for discussion was available here: http://lists.openmoko.org/mailman/listinfo/opkg-devel

+

Source code was available in the subversion repository: http://svn.openmoko.org/trunk/src/target/opkg/. The repository could also be [http://svnweb.openmoko.org/trunk/src/target/opkg/ viewed online].

+

}}

+

+

== About Opkg ==

−

Source code is available in the subversion repository: http://svn.openmoko.org/trunk/src/target/opkg/. The repository can also be [http://svnweb.openmoko.org/trunk/src/target/opkg/ viewed online].

+

Opkg is a lightweight [[package management]] system based on [[Ipkg]].

You can learn how to create own [http://handhelds.org/moin/moin.cgi/BuildingIpkgs Opkg packages] on the Ipkg site.

You can learn how to create own [http://handhelds.org/moin/moin.cgi/BuildingIpkgs Opkg packages] on the Ipkg site.

−

Packages should install .desktops very much last. This ensures that icons are present when they are used by the .desktops. [https://docs.openmoko.org/trac/ticket/1524 Reference]

+

Packages should install .desktops at the very end of the installation process. This ensures that the icons referenced in the .desktop file are available. [https://docs.openmoko.org/trac/ticket/1524 Reference]

== New Features ==

== New Features ==

Line 61:

Line 72:

* http proxy works but authentication not tested yet (--[[User:cberger|cberger]] tested version 0.1.4, does not recognize proxy_username and proxy_password for authentication)

* http proxy works but authentication not tested yet (--[[User:cberger|cberger]] tested version 0.1.4, does not recognize proxy_username and proxy_password for authentication)

A. Yes you can define priorities on the architecture field (the second field in a feed definition) in /etc/opkg/arch.conf

A. Yes you can define priorities on the architecture field (the second field in a feed definition) in /etc/opkg/arch.conf

+

+

Q. Does opkg have an auto completion system ?

+

+

A. Yes, it's a contribution script available at the [http://blog.upme.fr/?/Linux/28-Openmoko-Opkg-Autocompletion-With-Packages-Names upme blog]

+

+

Q. How similar is the ipk format, to the deb format? They look very similar; the data and control tar balls are identical as far as i can tell.

+

+

A. Very similar. ipk files are basically deb files with documentation removed, and ipkg is even supposedly able to handle deb files. Opkg can install .deb packages directly, with no change. There may be issues with some packages, concerning preinst and postinst scripts

+

+

+

== Neat Little Tricks ==

+

+

At one point I ended up doing a complete upgrade before i had updated my opkg. As a result i borked a lot af packages. To reinstall them all, you can use this little sed magic.

This is a list of features that have been completed. Mostly this is a list of changes from Ipkg.

Use libcurl to download files

Send download progress updates to libopkg clients

Re-organize and clean up source code into sub directories

Verify package lists with gpg detached signature

Mark packages that were installed to satisfy dependencies (auto installed)

Additional command line option to remove "auto installed" packages

Support for faceted classification (similar to debtags). A "Tags" line has been added to the package information and opkg makes this available to clients, but does not process it in anyway. The command line client also does not use this features yet.

It looks like, in some cases, Opkg will return an error code if something goes wrong. Here's a list that I pulled from the error.h file:

-1: Unknown Error

0: No Error (Success)

Configuration Errors:

1: Could not set default destination

2: Error parsing config file

3: Could not create temporary directory

4: Could not obtain administrative lock

This could be cause by assassin not releasing the lock on the package management. It can be released by killing its manager:

killall packagekitd

Package Errors

5: Unsatisfied Dependencies

6: Is Essential

7: Has Dependents

8: Has No Candidate

9: PackageHas No Available Architecture

Install Errors

10: Not Trusted

11: Download Error

12: Conflicts

13: Already Installed

14: Dependencies

15: No Downgrade

16: Out Of Space

17: Bad Signature

18: MD5 Error

19: Internal Error

NOTE: I had a problem where I was trying to manually install a package that had dependencies. The dependencies had a bad signature (actually, my signature files were bad). Instead of returning 17 because of the bad signature, it returned 14 because of a dependency problem. So if you get a 14, try installing that package by itself and see what you get. --Jtickle 18:16, 23 July 2008 (EST)

Q. How similar is the ipk format, to the deb format? They look very similar; the data and control tar balls are identical as far as i can tell.

A. Very similar. ipk files are basically deb files with documentation removed, and ipkg is even supposedly able to handle deb files. Opkg can install .deb packages directly, with no change. There may be issues with some packages, concerning preinst and postinst scripts

Packages should install .desktops very much last. This ensures that icons are present when they are used by the .desktops. Reference

New Features

This is a list of features that have been completed. Mostly this is a list of changes from Ipkg.

Use libcurl to download files

Send download progress updates to libopkg clients

Re-organize and clean up source code into sub directories

Verify package lists with gpg detached signature

Mark packages that were installed to satisfy dependencies (auto installed)

Additional command line option to remove "auto installed" packages

Support for faceted classification (similar to debtags). A "Tags" line has been added to the package information and opkg makes this available to clients, but does not process it in anyway. The command line client also does not use this features yet.

Possible Issues

http proxy works but authentication not tested yet (--cberger tested version 0.1.4, does not recognize proxy_username and proxy_password for authentication)

autoremove feature only inspects "depends" and not "pre-depends"

Error Codes

It looks like, in some cases, Opkg will return an error code if something goes wrong. Here's a list that I pulled from the error.h file:

-1: Unknown Error

0: No Error (Success)

Configuration Errors:

1: Could not set default destination

2: Error parsing config file

3: Could not create temporary directory

4: Could not obtain administrative lock

This could be cause by assassin not releasing the lock on the package management. It can be released by killing its manager:

killall packagekitd

Package Errors

5: Unsatisfied Dependencies

6: Is Essential

7: Has Dependents

8: Has No Candidate

9: PackageHas No Available Architecture

Install Errors

10: Not Trusted

11: Download Error

12: Conflicts

13: Already Installed

14: Dependencies

15: No Downgrade

16: Out Of Space

17: Bad Signature

18: MD5 Error

19: Internal Error

NOTE: I had a problem where I was trying to manually install a package that had dependencies. The dependencies had a bad signature (actually, my signature files were bad). Instead of returning 17 because of the bad signature, it returned 14 because of a dependency problem. So if you get a 14, try installing that package by itself and see what you get. --Jtickle 18:16, 23 July 2008 (EST)