J'essaie d'installer ack
via apt
mais il semble qu'il ne soit plus disponible dans les dépôts. Tous les deux:
sudo apt install ack
sudo apt install ack-grep
donner l'erreur suivante:
E: Package 'ack-grep' has no installation candidate
N'est-il plus disponible dans les référentiels 17.10?
sudo apt update
.artful
n'est pas répertorié, n'est-ce pas? packages.ubuntu.com/search?suite=artful&keywords=ackRéponses:
Ack a un échec de test dans Ubuntu 17.10 Artful et il a été exclu d'Ubuntu jusqu'à ce qu'il passe. Perl est mis à niveau sur Artful et l'ancienne version ack n'est pas prise en charge par le nouveau Perl. La nouvelle version ne passe pas tous ses tests. L'échec du test est causé par des problèmes avec le framework de test exécuté sous Ubuntu (même s'il fonctionne correctement dans Debian). Une nouvelle version qui réussira sera bientôt publiée .
En attendant, une solution consiste à l'installer via CPAN comme suggéré sur la page d'accueil ack . Si vous n'avez pas encore installé CPAN, vous devez d'abord l'installer:
Ensuite, vous pouvez l'utiliser pour installer ack:
Il le construira et le testera, donc cela prendra environ 2 minutes, mais une fois terminé, il sera sur votre chemin à
/usr/local/bin/ack
.J'aime cette option d'installation car elle utilise les référentiels apt et cpan standard. Il utilise des bibliothèques Perl qui seront mises à niveau par des outils automatisés. Il peut être facilement implémenté dans des outils automatisés tels que Ansible.
la source
sudo cpanm App::Ack
.Malheureusement, il
ack
n'est pas dans les référentiels 17.10. Une solution de contournement consiste à l'installer manuellement conformément aux instructions sur son site Web .Voici ce que j'ai fait:
la source
sudo su
:ack="/usr/local/bin/ack" && curl -s https://beyondgrep.com/ack-2.18-single-file | sudo tee "$ack" > /dev/null && sudo chmod 0755 "$ack"
Les paquets qui échouent au test automatique des paquets tel qu'installé d'Ubuntu ne sont pas inclus dans une version, du moins ceux qui ne proviennent pas de l'archive de l'univers (qui est importée régulièrement et automatisée depuis Debian Unstable).
En raison d'un changement au cours du cycle de sortie artistique d'Ubuntu 17.10, quelque chose a cassé l'autopkgtest d'ack dans Ubuntu et a donc empêché l'ack d'être inclus dans les versions d'Ubuntu. Vous ne pouvez même pas le trouver dans l'instantané de développement actuel
bionic
, mais vous pouvez l'installer si vous ajoutez une ligne pourbionic-proposed
à votresources.list
.On ne sait toujours pas exactement quel était ce changement, respectivement quelle en était la raison (peut-être un bogue dans l'infrastructure autopkgtest d'Ubuntu) et quel est le déclencheur. (Peut-être que le passage à Perl 5.26 a présenté un problème dans l'infrastructure autopkgtest d'Ubuntu.)
Ce qui est clair cependant, c'est que ce problème est spécifique à ubuntu puisque l'autopkgtest d'ack dans Debian passe sans aucun problème. Et exécuter autopkgtest localement sur un instantané de développement d'Ubuntu 18.04 Bionic ne présente pas non plus ces échecs de test . (Et il semble s'appuyer sur Ubuntu. Et la même suite de tests est également exécutée au moment de la construction, et si elle ne passait pas, le package ne serait pas construit, ce qui est considéré comme un problème beaucoup plus grave.)
Une autre indication que le problème est caché quelque part dans l'infrastructure autopkgtest d'Ubuntu est le fait que la plupart des échecs de test considèrent leur entrée soudainement comme STDIN au lieu des fichiers attendus .
Toute indication sur les raisons sous-jacentes de ces étranges échecs de test spécifiques à ubuntu-autopkgtest est très appréciée dans le rapport de bogue du tableau de bord correspondant ou dans le rapport de bogue en amont correspondant .
la source
Comme @muru l'a indiqué dans les commentaires ci-dessus, le paquet a été supprimé depuis qu'il est cassé en 17.10, donc oui, non
ack
dans les référentiels 17.10 pour l'instant.Je suppose que je devrais garder un œil sur https://packages.ubuntu.com/search?suite=artful&keywords=ack pour savoir quand il sera à nouveau disponible.
la source
J'ai pu installer le paquet Ubuntu 18.04 sur ma boîte Ubuntu 17.10:
Si la
dpkg
commande échoue pour vous, c'est probablement parce qu'il vous manque une dépendance que j'ai déjà. Essayezapt install
toutes les dépendances manquantes, puis réexécutez ladpkg
ligne.J'aime mieux cette approche que d'utiliser CPAN, car APT / dpkg peut toujours voir que ce package est installé et pourra le mettre à niveau plus tard une fois qu'Ubuntu aura réglé sa situation de construction.
(Merci Axel Beckert pour avoir publié un lien vers le rapport de bogue Launchpad, c'est là que j'ai eu cette idée.)
la source