In den Ubuntu 17.10-Repositories konnte keine Bestätigung gefunden werden

13

Ich versuche, ack via apt zu installieren, aber es scheint, dass es nicht mehr in den Repos verfügbar ist. Beides:

sudo apt install ack
sudo apt install ack-grep

Geben Sie den folgenden Fehler ein:

E: Package 'ack-grep' has no installation candidate

Ist es nicht mehr in den 17.10 Repositories verfügbar?

    
Cimm 02.11.2017, 12:24
quelle

5 Antworten

3

Wie @muru in den obigen Kommentaren angegeben hat, wurde das Paket entfernt, da es in 17.10 gebrochen ist, also ja, nein ack in den 17.10 Repositories für jetzt.

Ich denke, ich sollte einen Link im Auge behalten, um zu wissen, wann er wieder verfügbar sein wird.

    
Cimm 02.11.2017, 16:04
quelle
9

Ack hat einen Testfehler in Ubuntu 17.10 Artful und wurde von Ubuntu ausgeschlossen bis es passiert. Perl wird auf Artful aktualisiert und die alte Version wird vom neuen Perl nicht unterstützt. Die neue Version besteht nicht alle Tests. Der Testfehler wird durch Probleme mit dem Test-Framework verursacht, das unter Ubuntu ausgeführt wird (selbst wenn es in Debian gut funktioniert.) Eine neue Version wird bald veröffentlicht .

In der Zwischenzeit besteht die Problemumgehung darin, sie über CPAN zu installieren, wie auf der ack-Startseite empfohlen. Wenn Sie CPAN noch nicht installiert haben, müssen Sie es zuerst installieren:

sudo apt install cpanminus

Dann können Sie es verwenden, um ack zu installieren:

sudo cpanm install App::Ack

Es wird gebaut und getestet, es dauert also ungefähr 2 Minuten, aber nachdem es fertig ist, wird es in deinem Pfad bei /usr/local/bin/ack sein.

Ich mag diese Installationsoption, weil sie standardmäßige apt- und cpan-Repositories verwendet. Es verwendet Perl-Bibliotheken, die von automatisierten Tools aktualisiert werden. Es kann leicht in automatisierten Tools wie Ansible implementiert werden.

    
Stephen Ostermiller 04.12.2017 10:58
quelle
6

Leider ist ack nicht in 17.10 Repositories. Eine Problemumgehung ist die manuelle Installation gemäß den Anweisungen auf der Website .

Folgendes habe ich getan:

$ sudo su
# curl https://beyondgrep.com/ack-2.18-single-file > /usr/local/bin/ack && chmod 0755 /usr/local/bin/ack
    
Pēteris Caune 09.11.2017 13:20
quelle
3

Pakete, bei denen der automatische Pakettest von Ubuntu fehlschlägt, sind nicht in einem Release enthalten, zumindest nicht im Universe-Archiv ( welches regelmäßig von Debian Instable importiert wird).

Aufgrund einer Änderung während des Ubuntu 17.10 Artful Release-Zyklus hat etwas den Autopkgtest von Ack in Ubuntu quittiert und hat damit aufgehört zu sein in Ubuntu-Versionen enthalten. Sie können es nicht einmal im aktuellen Entwicklungs-Snapshot bionic finden, aber Sie können es installieren, wenn Sie eine Zeile für bionic-proposed zu Ihrem sources.list hinzufügen.

Es ist immer noch unklar, was genau diese Änderung war bzw. welcher Grund (vielleicht ein Bug in Ubuntus Autopkgtest-Infrastruktur) und was der Auslöser ist. (Möglicherweise hat der Wechsel zu Perl 5.26 ein Problem in Ubuntus Autopkgtest-Infrastruktur ergeben.)

Was klar ist, ist, dass dieses Problem ubuntu-spezifisch ist, da acks Autopkgtest in Debian ohne das geht Probleme. Und das Ausführen von autopkgttest lokal auf einem Entwicklungs-Snapshot von Ubuntu 18.04 Bionic zeigt diese Tests nicht Ausfälle entweder. (Und es scheint auf Ubuntu zu bauen. Und die gleiche Testsuite wird auch zur Build-Zeit ausgeführt, und wenn es nicht bestanden würde, würde das Paket nicht gebaut werden, was als ein viel schwerwiegenderes Problem angesehen wird.)

Ein weiterer Hinweis darauf, dass das Problem irgendwo in Ubuntus Autopkgtest-Infrastruktur verborgen ist, ist die Tatsache, dass die meisten Testfehler ihre betreffen Eingabe plötzlich als STDIN anstelle der erwarteten Dateien .

Jeder Hinweis auf die zugrunde liegenden Gründe für diese seltsamen ubuntu-autopkgttest-spezifischen Testfehler wird entweder in nach dem Launchpad-Fehlerbericht oder im entsprechend dem Upstream-Fehlerbericht .

    
Axel Beckert 13.12.2017 02:27
quelle
1

Ich konnte das Ubuntu 18.04-Paket auf meiner Ubuntu 17.10-Box installieren:

$ cat /etc/lsb-release 
DISTRIB_ID=Ubuntu
DISTRIB_RELEASE=17.10
DISTRIB_CODENAME=artful
DISTRIB_DESCRIPTION="Ubuntu 17.10"
$ sudo apt install libfile-next-perl
...snip...
$ wget https://launchpad.net/ubuntu/+archive/primary/+files/ack_2.18-2_all.deb
...snip...
$ sudo dpkg -i ack_2.18-2_all.deb
...snip...
$ ack --version
ack 2.18
Running under Perl 5.26.0 at /usr/bin/perl

Copyright 2005-2017 Andy Lester.

This program is free software.  You may modify or distribute it
under the terms of the Artistic License v2.0.

Wenn der Befehl dpkg für Sie fehlschlägt, liegt das wahrscheinlich daran, dass Ihnen einige Abhängigkeiten fehlen, die ich bereits habe. Versuchen Sie apt install alle fehlenden Abhängigkeiten und führen Sie dann die dpkg -Zeile erneut aus.

Ich mag diesen Ansatz besser als CPAN, weil APT / dpkg immer noch sieht, dass dieses Paket installiert ist und es später aktualisieren kann, sobald Ubuntu ihre Build-Situation aussortiert hat.

(Danke an Axel Beckert für den Link zum Launchpad-Fehlerbericht, von dem ich diese Idee habe.)

    
Mark E. Haase 09.01.2018 17:24
quelle

Tags und Links