Ouvrir le menu principal

iGeneration

Recherche

Le terminal iSH peut à nouveau installer des paquets avec apk

Nicolas Furno

Thursday 10 December 2020 à 09:50 • 18

App Store

iSH Shell (gratuit) est un terminal UNIX proposé dans l’App Store qui se distingue de ses prédécesseurs par l’intégration d’une distribution Linux, Alpine. C’est ainsi un « vrai » terminal, sans couche d’émulation et avec toutes les possibilités offertes par cet environnement. Cette liberté a quasiment valu à l’app une exclusion de la boutique, parce que l’on pouvait installer d’autres outils en ligne de commande.

Cette possibilité, proposée dans toutes les distributions GNU/Linux, contrevient à l’une des règles fondamentales de l’App Store qui empêche une app de télécharger du code qui change ses fonctionnalités. La version 1.1 désormais disponible sur la boutique restaure toutefois apk, le gestionnaire de paquets d’Alpine qui posait problème jusque-là. Le développeur d’iSH a trouvé une solution pour offrir cette fonctionnalité tout en respectant les règles de l’App Store.

Processus d’installation d’un paquet avec apk sur iSH 1.1. La barre de progression en haut à droite de l’écran trahit l’origine du téléchargement, depuis les serveurs de l’App Store plutôt que ceux d’origine du paquet.

Traditionnellement, apk télécharge ses paquets depuis un serveur distant qui varie selon les cas. Pour offrir cette fonctionnalité dans l’App Store, le développeur a téléchargé les 12 538 paquets disponibles par défaut avec apk et il les a intégrés à son app. Cela représente 13,3 Go de ressources, alors pour éviter d’avoir un téléchargement aussi gros à effectuer, il a utilisé une fonction proposée par Apple pour les ressources supplémentaires.

Cette fonction a été pensée avant tout pour les jeux, qui peuvent proposer des niveaux au téléchargement et alléger l’app de base. Mais iSH l’utilise pour les paquets : quand vous installez un élément avec la commande apk add, le paquet est téléchargé depuis les serveurs d’Apple, et non plus depuis ceux d’origine. Comme ce n’est pas un cas de figure prévu par Alpine, on peut s’en douter, il a fallu innover. Le téléchargement depuis l’App Store est ainsi signalé par une barre de progression maison qui apparaît en haut à droite de l’écran.

L’expérience reste par ailleurs la même, avec une gestion des dépendances quand c’est nécessaire. On peut aussi mettre à jour les paquets téléchargés avec les deux commandes apk update (mise à jour du catalogue) et apk upgrade (mise à jour des paquets). Tout ne sera pas disponible néanmoins, mais il existe déjà une astuce pour ajouter les paquets « communautaires », qui ne sont pas dans la liste de base.

Si vous aviez installé la version précédente d’iSH, mettre à jour l’app ne suffira pas à basculer sur la nouvelle gestion approuvée par Apple. Des instructions sont disponibles à cette adresse pour mettre à jour votre installation locale. iSH est une app entièrement gratuite et open-source.

Rejoignez le Club iGen

Soutenez le travail d'une rédaction indépendante.

Rejoignez la plus grande communauté Apple francophone !

S'abonner