NI Linux Real-Time Discussions

cancel
Showing results for 
Search instead for 
Did you mean: 

Download all .ipk packages to update offline NI Linux Real-Time targets

Solved!
Go to solution

Hi,

 

We have some cRIOs in which we need to install .ipk packages from repositories. However, we need to do it offline. The plan is to download all the packages and save them into a USB storage. I have tried to download all the packages for a certain distribution, for example all packages from http://download.ni.com/ni-linux-rt/feeds/2014/x64/x64/ . I have tried to do it through wget and HTTrack, nevertheless I have only been able to copy the index.html file from the web site, but not the .ipk files.

 

Has anybody ever faced this problem? My workaround is to develop a parser which reads the package urls from the index.html and then use HTTrack to download all these files. I would prefer to get all the files directly through wget, in fact I'm sure it is possible, but I have not been able to do it.

 

Any idea is welcome.

 

Thanks!

0 Kudos
Message 1 of 4
(5,144 Views)

May not be what you are looking for, but if you download and install SystemLink Server using the NI Package Manager, you can use its Package Repository to clone any NI feed to your own server and then configure your target's feed to install from it instead.

 

You can also use it to build a package for your LVRT application and remotely deploy/update it to the target using SystemLink's web interface.

 

http://ni.com/systemlink

 

https://www.youtube.com/channel/UCJFhOcqtxl-5kDb-tclTggQ

0 Kudos
Message 2 of 4
(5,108 Views)

Hi JoshuaP,

 

Thanks for the tip. I will to try it.

0 Kudos
Message 3 of 4
(5,105 Views)
Solution
Accepted by topic author Sicitronic

wget -np -r -e robots=off http://download.ni.com/ni-linux-rt/feeds/2014/x64/x64

-np means don't download anything above the specified directory (no parent)

-r means recursive

-e robots=off means ignore the robots.txt file, which is what is telling wget not to download anything besides the index

 

you may also desire -nd which means don't create any directories -- otherwise it will create <workingdir>/download.ni.com/...

 

Seemed to work for me.

 

For serving the files up on my local network, I just use https://caddyserver.com/ with a caddyfile something like this:

:8080 {
tls off
}

Then I point opkg at <mycomputerip>:8080 and it works like normal.

Message 4 of 4
(5,080 Views)