extracting and creating ipk files

后端 未结 5 799
野的像风
野的像风 2021-02-01 17:10

ipk packages are the intallation packages used by opkg.

I\'m trying to extract the contents of one of them and also create my own ipk.

I\'ve read that I should b

相关标签:
5条回答
  • 2021-02-01 17:36

    I figured it out.

    You can extract the main package with the ar x command, then extract the control.tar.gz with the tar -zxf command.

    0 讨论(0)
  • 2021-02-01 17:36

    Extracting with these commands:

    1. Extract the file by running the command:

        ar -xv   <.ipk file>
      
    2. Extract the control.tar.gz file by running the command:

        tar -zxvf control.tar.gz
      
    3. data.tar.gz : untar by running the command:

           tar –zxvf data.tar.gz
      
    0 讨论(0)
  • 2021-02-01 17:39

    I have tested "ar x package-name.ipk" command but it didn't help

    I found bellow command which worked perfectly

    tar zxpvf package-name.ipk

    This extracts three files:

    debian-binary

    data.tar.gz

    control.tar.gz

    use the same command to open data.tar.gz and control.tar.gz files

    for more information refer to https://cognito.me.uk/computers/manual-extractioninstallation-of-ipk-packages-on-gargoyleopenwrt/

    0 讨论(0)
  • 2021-02-01 17:44

    You need to create a control file, and then do some archiving using tar and ar. In my case, I was distributing just python scripts, so there was no architecture dependency. You should check the control and Makefile into version control, and delete all the other intermediate files.

    Here are the contents of control

    Package: my-thing-python
    Version: 1.0
    Description: python scripts for MyCompany
    Section: extras
    Priority: optional
    Maintainer: John 
    License: CLOSED
    Architecture: all
    OE: my-thing-python
    Homepage: unknown
    Depends: python python-distutils python-pyserial python-curses python-mmap python-ctypes
    Source:  N/A
    

    Here is my Makefile which sits in the same directory as all my python scripts.

    all: my-thing-python.ipk
    
    
    my-thing-python.ipk:
            rm -rf ipk
            mkdir -p ipk/opt/my-thing-python
            cp *.py ipk/opt/my-thing-python
            tar czvf control.tar.gz control
            cd ipk; tar czvf ../data.tar.gz .; cd ..
            echo 2.0 > debian-binary
            ar r my-thing-python.ipk control.tar.gz data.tar.gz  debian-binary
    
    clean: FORCE
            rm -rf ipk
            rm -f control.tar.gz
            rm -f data.tar.gz
            rm -f my-thing-python.ipk
    
    FORCE:
    
    
    0 讨论(0)
  • 2021-02-01 17:46

    If you want a list of files in an ipk, you can do something like:

    #!/bin/sh
    for f
    do
       tar -x -z -f $f ./data.tar.gz -O | tar tvzf -
    done
    

    -O is extract to standard output. ipk files used to be AR (like DPKG), but are now tgz. I feel that some dpkg utility ought to cope with ipkg files, but I haven't found the right one.

    0 讨论(0)
提交回复
热议问题