[Date Prev][Date Next] [Thread Prev][Thread Next] [Date Index] [Thread Index]

How to install lib* packages "locally"?



Hi everyone.

As part of a work-related requirement, I need to install ia32-libs on
my (mostly stable) Debian laptop.

Unfortunately, it turns out that ia32-libs conflicts, indirectly, with
*the one lone package* that I have explicitly installed from a Debian
release other than stable, namely emacs24-lucid from wheezy-backports.

The immediate cause of the conflict is the package libp11-kit0, but
the full dependency chain goes like this:

    emacs24-lucid depends on libgnutls-deb0-28 (>= 3.3.0) depends on
libp11-kit0 (>= 0.20.7)

Here's the relevant part of the dialog following `aptitude install ia32-libs`:

    The following packages have unmet dependencies:
     libp11-kit0 : Breaks: libp11-kit0:i386 (!= 0.20.7-1~bpo70+1) but
0.12-3 is to be installed.
     libp11-kit0:i386 : Breaks: libp11-kit0 (!= 0.12-3) but
0.20.7-1~bpo70+1 is installed.

    The following actions will resolve these dependencies:

         Keep the following packages at their current version:
    1)     ia32-libs [Not Installed]
    2)     ia32-libs-i386:i386 [Not Installed]
    3)     libcups2:i386 [Not Installed]
    4)     libcurl3:i386 [Not Installed]
    5)     libgnutls26:i386 [Not Installed]
    6)     libldap-2.4-2:i386 [Not Installed]
    7)     libp11-kit0:i386 [Not Installed]
    8)     librtmp0:i386 [Not Installed]


    Accept this solution? [Y/n/q/?]

The "solution" offered hardly deserves the name, since it basically
amounts to completely rescinding the original `aptitude install
ia32-libs` command.

Unfortunately, all the other solutions that `aptitude` proposed, and
that I had the patience to entertain, were all massive
reconfigurations of the system, involving deleting literally hundreds
of packages, and leaving even more packages with unmet dependencies.
IOW, they were entirely unacceptable.  (Admittedly, after looking over
a few such "solutions", all similarly cataclysmic, I just hit `q`.)

Is there some way to install ia32-libs (or just 32-bit Java and its
requirements) "locally" (e.g. under `/opt` or under `~/.local`)
without having to install ia32-libs system-wide?

If so, this would be the best workaround I can think of.

Where can I find instructions on such "local" installations of libraries?

TIA!

kj

---

TL;DR (IOW, what follows contains no essential information.)

**Background**
In order to connect to my workplace via VPN, my employer requires me
to install Juniper Network Connect (JNC) on my (mostly stable) Debian
laptop.

According to the [Juniper's
instructions](http://kb.juniper.net/InfoCenter/index?page=content&id=KB25230),
I must install ia32-libs, in order to be able to run the 32-bit
version of the Java JRE on my 64-bit architecture.

**Alternatives**
Of course, there are other ways to resolve this problem besides the
one in the subject line, but all the ones I can think are very
unpalatable to me for one reason or another.

For example, getting rid of `emacs24-lucid` would essentially require
me to discard my current .emacs file, which I spent *a lot* of time
over the last couple of years fine-tuning, always within the context
of Emacs24.  IOW, I expect that it depends on Emacs24+ features in
many places (some of which I know about for a fact).  I really don't
want to replicate all this fine-tuning for an older version of Emacs.

Another possibility would be connecting to work via a VM running
32-bit Debian.  This is also very unpalatable, because my laptop does
not have much memory capacity, so running a VM is a very expensive
proposition, performance-wise.


Reply to: