4

I just installed a fresh Waldorf (Crunchbang, Debian Wheezy-based) on a computer which has no Internet access. Previously on a Xubuntu 10.04 VM, what I did when I needed some software was:

  • go to packages.ubuntu.com;
  • find the relevant packages and their dependencies, download the .deb's;
  • run dpkg-scanpackages <download dir> /dev/null | gzip -9c > Packages.gz
  • run apt-get update (<download dir> figures in my /etc/apt/sources.list, i.e. there is an entry which looks like deb file:<download dir> ./);
  • run apt-get install <top-package>;
    • if there were any unmet dependencies, (i.e. package downloaded from packages.ubuntu.com is too recent and depends on a newer version of some package already present on my system), go to launchpad.net, and find an older version of the package;
    • resume installation.

Now with Debian Wheezy, I can find the .deb on packages.debian.org just fine, but problems start when those packages need newer versions of already installed packages. I cannot find an equivalent to launchpad.net for Debian...

I guess since Ubuntu is Debian-based I could still find the old .deb's I need on launchpad.net, but I'm starting to think that maybe I'm doing something wrong. Is that the case? What should actually be done to install packages on a computer which has no Internet access?

For example, I'm trying to install openjdk-6-jre. Going down the dependency tree I found I also need tzdata-java and libnss3-1d, but I can't install those with the .deb found on packages.debian.org, because apt-get chokes on the versions:

tzdata-java : Depends: tzdata (= 2014a-0wheezy1) but 2013b-2 is installed.
libnss3-1d : Depends: libnss3 (= 2:3.14.5-1) but 2:3.14.3-1 is installed.

(In before "just compile from the source")

0

What should actually be done to install packages on a computer which has no Internet access?

Download those packages in a system with internet access, setting up a local cache, etc. seems the way to go.

Now with Debian Wheezy, I can find the .deb on packages.debian.org just fine, but problems start when those packages need newer versions of already installed packages. I cannot find an equivalent to launchpad.net for Debian...

Now, here there is a problem. Firstly, you are using a Debian based distro packages to be installed in another Debian based distro. This would make anyone cry in regret.

When installing software, specifically package, in your system you should make sure they comes from the same source. When you start mixing sources, problems like the one you experience arises and give you headaches.

  • 1
    Well it's not necessarily the source (as in where you get the package from) that's the issue. It's that the packages were built for the same target (same distro and version) which matters. – Patrick May 9 '14 at 22:29
0

In the end, I found two solutions. A simple, risky one, or a second one which should be as simple and less risky (not sure, have not tried it). Many thanks to the folks from the Crunchbang community for helping me on this.

Risky solution

  • Simply download the newer Wheezy packages from pakages.debian.org, add them to local dir;
  • Run apt-get upgrade: apt recognizes the downloaded packages as being newer, no questions asked;
  • Run apt-get install <top-package>.

Now the problem with that, I guess, is that the upgraded packages themselves could depend on upgraded versions of other packages on the system, which means that the list of stuff to download could get arbitrarily long. In my case, just downloading libnss3 and tzdata was enough.

Less risky solution

Use apt-offline. On the disconnected computer, this software builds a signature which represents the dependencies to fetch; on a second computer with access to the Internet, use the signature to actually download the dependencies, transfer back to the first computer, install.

I haven't actually tried this solution, which is why the description above might seem fuzzy (the people from Crunchbang posted links to adequate documentation if anyone is interested).

Your Answer

By clicking “Post Your Answer”, you agree to our terms of service, privacy policy and cookie policy

Not the answer you're looking for? Browse other questions tagged or ask your own question.