HOWTO: add items to the image's downloadable plugins

joypad

Inactive User
Joined
Mar 20, 2011
Messages
1
Reaction score
14
Digidude, this one's for you!
You said elsewhere "[...] until i can work out exactly how the blue button downloads are done."

The trick is to create your own package repository.
You already host the packages, for example the HD skins.
To have a package repository, you need a list of packages, and to tell ipkg where to find your repository (bake this into the image).

The package list is a file name "Packages.gz" which should be publicly available and should contain information on the packages you host.
I've just built a repo for the alu skin and for "lsof", by placing the ipk files into a folder on my web server, and writing this simple Packages file (which I later gzipped).

Code:
You don't have permission to view the code content. Log in or register now.

The names are carefully crafted. You must use this format: "enigma2-plugin-<directory>-<package.name>"
The alu skin will show up as "brushed.alu.hd" in the downloads under "skins", while "lsof" will appear under "tools" (new section).

So, on my server, I've created a new directory, called it tm800 (it can be anything), and placed in it the two ipk files and the Packages file with the contents listed above. Then I gzipped the Packages file, so it now looks like this:
Code:
You don't have permission to view the code content. Log in or register now.

The /var/www directory is the root of my apache web server, so the file list and the packages are accessible as "http://server/tm800/Packages.gz", etc.

Now on the box itself, create a new file under /etc/ipkg, for example joypad.conf, with this line inside:
Code:
You don't have permission to view the code content. Log in or register now.

Needless to say, my server is only available from inside the house, I reference it without a domain.
Yours should be public, so, you can do what UR did, create a public URL that can be accessed from TM800s everywhere.
See http://en2.ath.cx/un2/Packages.gz (check out /etc/ipkg/ur-feed.conf).

Run "ipkg update" after you make changes to the Packages.gz file on your server. This command downloads the list to the box and unpacks the package information. It is this package information that gets used to display the list of downloadable packages in the Plugins panel. The Package names must match the format described above. The description is used in the menu (under package name, in the list). The file size and MD5 are used to validate the downloads (generate MD5 for your ipks by running "md5sum filename"). Arch should always be mipsel and maintainer should be you.


I hope this will help you organize your stuff into a package repository, which can easily be added to your image, and then all your users will simply click the blue button to download the goodies.
 
Last edited:
cheers for this m8, i will deffo give it a bash later today

i have tried all of this numerous times, and i can only get half the stuff on the server to list, then i get errorsduring downloading

i even resorted to manually downloading EVERY file from the UR server, hosting, them all myself, and putting my own address in, and still had the same errors.

but, since then, i have moved over to a 500% faster server, so ill try it out, and if it works, will put a small update in my ppanel so people can update their bluebutton location downloads

for the stuff in the Packages.gz file, i copy / pasted the info contained within the control file of the.ipk's
 
Last edited:
I was hoping at least some of this info would be new to you.

Anyway, if you try it again, and encounter errors, maybe you can post them here, so we can have a stab at it together.
 
the md5sum was new info for me :)

for now, ive deleted EVERYTHING i had in a remote folder, and just put 2 files in there

enigma2-skins-brushedalu.hd_experimental-cvs20100606-r0_all.ipk
enigma2-skins-nemesis.blueline_ex-cvs20101207-r0_all.ipk
Packages.gz


Packages

Package: enigma2-plugin-skins-nemesis.blueline
Version: experimental-cvs20101207-r0
Section: base
Architecture: mipsel
Maintainer: digidude @ digitalworldz
MD5Sum: b24eadee0ac916184574794e1e1a780f
Size: 120150
Filename: enigma2-skins-nemesis.blueline_ex-cvs20101207-r0_all.ipk
Source: file://*
Description: Enigma2 Skin: nemesis.blueline

Package: enigma2-skins-brushedalu.hd
Version: experimental-cvs20100606-r0
Section: base
Architecture: mipsel
Maintainer: digidude @ digitalworldz
MD5Sum: bb9a9ec078193d3df1dead38ceb9707d
Size: 1977612
Filename: enigma2-skins-brushedalu.hd_experimental-cvs20100606-r0_all.ipk
Source: file://*
Description: Brushed alu HD skin

the nemesis skin shows in the list, and downloads, and installs, and uninstalls, perfectly, and i also have a boquet list somehow listed

ive spent countless hours on this, and getting this nemesis skin to show and download, is the furthest ive ever got lol
 
Try this with the 4 HD skins you have. It should work smoothly, install/uninstall.
 
hmmmm, now my heads pickled lol

it works, but, i cant for the life of me see what i must be doing wrong then

i need to carefully create the package name, i was aware of that, like the version number, if using the date, must be set backwards, for the way it reads major, minor updates etc

i wasnt aware of the md5sum, so that is a big help

so what youre saying, is i just download any ipk, get the size and md5, then it should work?

im pulling my hair out here lol
 
ahhh, i think ive got it. some of the files (most of them) in my original Packages file, dont have the MD5

im now going to re-check EVERY file lol
 
You can put anything you want for package name, but it helps if it has the format I told you above, as it is parsed by the enigma2, and parts are used for the tree display. If the package name doesn't begin with 'enigma2-plugin-', then it won't be used by the blue button widget.

Then, filename can be anything, just make sure it is downloadable from your repo.

File size and MD5 must match the file. I used md5sum to compute MD5 for the files downloaded from your site.

As for version, maintainer, etc, I took those from the packages themselves, like you said. Just explode the archives, untar the control file and copy/paste the stuff.
While you're doing this, you might want to re-package them. For example, one of the skins has a preinstall script that says "Installation complete", but because it's preinstall and not postinstall, it displays the message before it is installed, and that's confusing.

Code:
You don't have permission to view the code content. Log in or register now.

When I created the section in Packages, I made sure to fill in the form like I saw it on UR site:
Code:
You don't have permission to view the code content. Log in or register now.

That's how I built the file you see, and it works.
 
md5sum was a godsend a few images back when the ftp transfer was corrupting on the box.

I wish everybody would get into the habbit of posting checksums with anything that needs downloading.

Hashtab is great for the Windows side of things
 
Back
Top