ipkg


 

ipkg

 

A package management utility for embedded devices.

Version: 0.99.163

Status: Done

 



 

Configuration

In order to use remote repositories, ipkg needs to be configured with their respective URLs. To determine which possible version of a package to install, ipkg must know about your preferred architectures. When installing a package, ipkg must also know about your directory structure. All of this information is stored in the 'ipkg.conf' file, by default located in /usr/etc.

 

Here is a good example of an ipkg.conf file:

# Default ipkg.conf for mg35tools project
src mg35tools-default http://mg35tools.svn.sourceforge.net/viewvc/mg35tools/packages
src link-standard http://link.pigsinspace.ca/packages/standard
src link-devel http://link.pigsinspace.ca/packages/development
src link-test http://link.pigsinspace.ca/packages/test

# Linux root is on cramfs, usr is writeable
dest cramroot /

# Architecture match order
arch    mg35     1
arch    mg45     1
arch    armv4l   3
arch    all      5
arch    noarch   5
arch    arm     10

 

 

Usage

 

ipkg version 0.99.163
usage: ipkg [options...] sub-command [arguments...]
where sub-command is one of:

Package Manipulation:
        update                  Update list of available packages
        upgrade                 Upgrade all installed packages to latest version
        install <pkg>           Download and install <pkg> (and dependencies)
        install <file.ipk>      Install package <file.ipk>
        configure [<pkg>]       Configure unpacked packages
        remove <pkg|regexp>     Remove package <pkg|packages following regexp>
        flag <flag> <pkg> ...   Flag package(s) <pkg>
         <flag>=hold|noprune|user|ok|installed|unpacked (one per invocation)    

Informational Commands:
        list                    List available packages and descriptions
        list_installed          List all and only the installed packages and description 
        files <pkg>             List all files belonging to <pkg>
        search <file|regexp>            Search for a package providing <file>
        info [pkg|regexp]               Display all info for <pkg>
        status [pkg|regexp]             Display all status for <pkg>
        download <pkg>          Download <pkg> to current directory.
        compare_versions <v1> <op> <v2>
                                  compare versions using <= < > >= = << >>
        print_architecture      prints the architecture.
        print_installation_architecture
        whatdepends [-A] [pkgname|pat]+
        whatdependsrec [-A] [pkgname|pat]+
        whatprovides [-A] [pkgname|pat]+
        whatconflicts [-A] [pkgname|pat]+
        whatreplaces [-A] [pkgname|pat]+
                                prints the installation architecture.

Options:
        -A                      Query all packages with whatdepends, whatprovides, whatreplaces, whatconflicts
        -V <level>               Set verbosity level to <level>. If no value is
        --verbosity <level>      provided increase verbosity by one. Verbosity levels:
                                 0 errors only
                                 1 normal messages (default)
                                 2 informative messages
                                 3 debug output
        -f <conf_file>          Use <conf_file> as the ipkg configuration file
        -conf <conf_file>       Default configuration file location
                                is /usr/etc/ipkg.conf
        -d <dest_name>          Use <dest_name> as the the root directory for
        -dest <dest_name>       package installation, removal, upgrading.
                                <dest_name> should be a defined dest name from
                                the configuration file, (but can also be a
                                directory name in a pinch).
        -o <offline_root>       Use <offline_root> as the root directory for
        -offline <offline_root> offline installation of packages.
        -verbose_wget           more wget messages
        Force Options (use when ipkg is too smart for its own good):
        -force-depends          Make dependency checks warnings instead of errors
                                        Install/remove package in spite of failed dependences
        -force-defaults         Use default options for questions asked by ipkg.
                                (no prompts). Note that this will not prevent
                                package installation scripts from prompting.
        -force-reinstall        Allow ipkg to reinstall a package.
        -force-overwrite        Allow ipkg to overwrite files from another package during an install.
        -force-downgrade        Allow ipkg to downgrade packages.
        -force_space            Install even if there does not seem to be enough space.
        -noaction               No action -- test only
        -nodeps                 Do not follow dependences
        -force-removal-of-dependent-packages
        -recursive              Allow ipkg to remove package and all that depend on it.
        -test                   No action -- test only
        -t                      Specify tmp-dir.
        --tmp-dir               Specify tmp-dir.

        regexp could be something like 'pkgname*' '*file*' or similar
        eg: ipkg info 'libstd*'  or ipkg search '*libop*' or ipkg remove 'libncur*'

 

Examples

 

 

ipkg update

 

 

 

ipkg list

 

 

 

ipkg install vi

 

 

 

ipkg list_installed

 

Download

Format Location
.ipk SourceForge - packages
.bin SourceForge - utility binaries
.ipk

 

If you do not have ipkg already installed, put the .bin format ipkg (above) into your /usr/bin directory .

 

History

[John, 2008-04]