<div dir="ltr"><div dir="ltr"><br></div><br><div class="gmail_quote"><div dir="ltr" class="gmail_attr">Le lun. 20 déc. 2021 à 21:11, J. William Campbell <<a href="mailto:jwilliamcampbell@comcast.net">jwilliamcampbell@comcast.net</a>> a écrit :<br></div><blockquote class="gmail_quote" style="margin:0px 0px 0px 0.8ex;border-left:1px solid rgb(204,204,204);padding-left:1ex">
  
    
  
  <div>
    <div>Hi Jérémy,</div>
    <div>       Thank you for your very prompt
      reply. I will reply in line to your responses.<br>
    </div>
    <div><br>
    </div>
    <div>On 12/20/2021 11:14 AM, Jérémy Lal
      wrote:<br>
    </div>
    <blockquote type="cite">
      
      <div dir="ltr">
        <div>hello,</div>
        <div><br>
        </div>
        <div>NB: i am going to reply below, in chronological order.</div>
        <div>Please adopt the same style in future emails.</div>
        <br>
        <div class="gmail_quote">
          <div dir="ltr" class="gmail_attr">Le lun. 20 déc. 2021
            à 19:48, J. William Campbell <<a href="mailto:jwilliamcampbell@comcast.net" target="_blank">jwilliamcampbell@comcast.net</a>>
            a écrit :<br>
          </div>
          <blockquote class="gmail_quote" style="margin:0px 0px 0px 0.8ex;border-left:1px solid rgb(204,204,204);padding-left:1ex">Package: nodejs<br>
            Version: 12.22.5~dfsg-2~11u1<br>
            Severity: important<br>
            X-Debbugs-Cc: <a href="mailto:jwilliamcampbell@comcast.net" target="_blank">jwilliamcampbell@comcast.net</a><br>
            <br>
            Dear Maintainer,<br>
            <br>
            I attempted to install package nodejs on an Intel processor
            that does not<br>
            support sse2 instructions. The library dependencies for
            nodejs require<br>
            the sse2 support. It is unclear to me why nodejs itself
            would require<br>
            such support, but in any case installing nodejs requires
            package<br>
            sse2-support, which will always fail to install on older
            CPUs. This in<br>
            itself, while disappointing, isn't a problem.</blockquote>
          <div><br>
          </div>
          <div>Indeed, nodejs embeds another software (v8) that needs a
            lot of</div>
          <div>work for each architecture. Authors of v8 decided to
            simplify their</div>
          <div>work by supporting only a subset of available processors.</div>
          <div><br>
          </div>
          <div>To make sure, you can double-check that nodejs as
            distributed by</div>
          <div>their authors, does indeed *not* run on your system, by
            trying their</div>
          <div>own debian package, see instructions at:</div>
          <div><a href="https://github.com/nodesource/distributions" target="_blank">https://github.com/nodesource/distributions</a><br>
          </div>
          <div><br>
          </div>
          <blockquote class="gmail_quote" style="margin:0px 0px 0px 0.8ex;border-left:1px solid rgb(204,204,204);padding-left:1ex">However, this failure
            occurs<br>
            fairly deep in the installation of packages. The result a
            package with<br>
            dependencies that cannot be statisfied. --fix-broken is of
            course unable to<br>
            do so, because sse2-support will never install.<br>
          </blockquote>
          <div><br>
          </div>
          <div>Yes, you cannot install sse2-support  on a system that
            doesn't support sse2.</div>
          <div>This is by design.</div>
        </div>
      </div>
    </blockquote>
    Indeed it is by design. However, that design has serious drawbacks
    😁.
    <blockquote type="cite">
      <div dir="ltr">
        <div class="gmail_quote">
          <div><br>
          </div>
          <blockquote class="gmail_quote" style="margin:0px 0px 0px 0.8ex;border-left:1px solid rgb(204,204,204);padding-left:1ex">I now have a broken apt
            configuration that I have been unable to fix. I<br>
            cannot remove/purge nodejs because of the unmet dependencies
            and I<br>
            cannot meet them because the required package will not ever
            install.<br>
          </blockquote>
          <div><br>
          </div>
          <div>I'm not sure that you have a problem with nodejs debian
            package here.</div>
          <div>It looks, from the description of your problem, that you
            don't know how to</div>
          <div>deal with apt in that case. </div>
          <div>You should seek some help on that front.</div>
        </div>
      </div>
    </blockquote>
    I have, at least in so far as lots of Google searches. Basically, I
    have got nowhere. The "normal" way to correct missing dependencies
    is to find a package that satisfies those dependencies and install
    it. This approach works even when your intention is to subsequently
    purge the package that caused the problem in the first place, but
    ONLY if you find and install such a package. Since sse2-support is
    designed to not install in this case, you can't ever do so. There
    are lots of attempts to solve similar problems by various
    combinations of approaches. None of them seem to work in this case.
    If you have a pointer to a method that will reliably remove packages
    with unmet dependencies, I would appreciate it.<br>
    <blockquote type="cite">
      <div dir="ltr">
        <div class="gmail_quote">
          <div><br>
          </div>
          <blockquote class="gmail_quote" style="margin:0px 0px 0px 0.8ex;border-left:1px solid rgb(204,204,204);padding-left:1ex">
            This is a serious annoyance. The package sse2-support is
            present only to<br>
            cause the install of the package to fail. It provides no
            code. A possible<br>
            fix would be to allow the user to force sse2-support to
            install in order to<br>
            satisfy the dependencies so that the package nodejs will not
            be broken.<br>
            The user can then remove nodejs or go ahead with the
            understanding that if<br>
            sse2 instructions in the library are actually used a fault
            will occur. The<br>
            documentation does not warn that nodejs requires
            sse2-support, but even<br>
            if it did it is probable this fact would be unclear to many
            users.<br>
            <br>
            What I expected is that nodejs would install without
            problems, and that<br>
            if it did not it would not leave the package management on
            my Debian<br>
            system basically inoperative. That is where I am now, and I
            have been unable<br>
            to find a solution.<br>
          </blockquote>
          <div><br>
          </div>
          <div>I repeat here: on a i686 non-sse2 platform, you can't
            install nodejs.</div>
          <div>However, i hear you, there should be a more explicit way
            of failing installation</div>
          <div>of a package that is not available for a given processor.</div>
        </div>
      </div>
    </blockquote>
    <p>Indeed. Right now sse2-support pops up a failure screen informing
      you that your processor doesn't support the required instructions
      and returns an error code indicating the package was not
      installed. IMHO a better approach would be to throw the error but
      allow the user to proceed anyway (return a "success" code) by
      responding to a prompt. The user has been told the software won't
      work, so he has no right to expect it will. However, if the
      package is installed one can remove nodejs without problems. I
      understand that it might be real hard to "walk back" all the
      things that were already installed before the problem was
      detected. For that reason, a "work around" would be appropriate.</p></div></blockquote><div><br></div><div>Now i think the problem you see comes from sse2-support package.</div><div>That bad a user experience is probably a bug somewhere.</div><div>Let's see what their maintainer think about it (cc-ing them).</div><div><br></div><div>Jérémy</div></div></div>