web-dev-qa-db-fra.com

Installer Kotlin en toute sécurité, avec les signatures de paquet, la mise à jour automatique, etc.

Kotlin attire de plus en plus l'attention en tant que grand langage de programmation et est maintenant officiellement supporté, par exemple. pour Android développement. Mais les options que je vois pour l'installer ne sont pas claires en ce qui concerne les problèmes de sécurité. Je ne sais pas si sdkman vérifie (ou même prend en charge) les signatures sur les paquetages, je ne sais pas s'il suit automatiquement les mises à jour de sécurité sur Kotlin et les autres paquets installés (comme apt- get does), je ne sais pas quelle sera la taille de l’installation, etc.

Pour résumer

Existe-t-il une approche d'installation relativement sûre pour Kotlin (avec signatures de paquet, mise à jour automatique, etc.)?

Par exemple, y a-t-il un PPA pour cela? (Quelqu'un est-il même en train de le préparer pour Debian/Ubuntu?).

Ou sdkman a-t-il les propriétés nécessaires?

Ou existe-t-il une autre approche?

Mise à jour: Je vois que ubuntu-make (umake) est une option. Pour IDEA et Kotlin, il semble que la version de leur ppa soit toujours nécessaire, comme expliqué à l'adresse Ubuntu Make 16.03 publiée avec Eclipse JEE et IntelliJ IDEA Prise en charge de l'EAP , Plus

Mais je suis surpris de ne pouvoir trouver facilement aucune information sur les aspects de sécurité d’umake, et il semble qu’ils ne fassent pas encore de mises à jour ( ) · Numéro # 74 ), ma question reste donc ouverte.

9
nealmcb

Le compilateur Kotlin en ligne de commande développé par jetbrains peut être installé comme un paquet logiciel enfichable dans toutes les versions actuellement prises en charge d'Ubuntu. Pour l'installer, ouvrez le terminal et tapez:

Sudo apt install snapd  
Sudo snap install kotlin --classic 

Outils disponibles:

  • kotlinc
  • kotlinc-jvm
  • kotlinc-js
  • kotlin-dce-js

Exemple

  1. Créez une application simple dans Kotlin qui affiche Hello, World!. Créez un nouveau fichier avec une autorisation exécutable appelé hello.kt avec les éléments suivants:

    fun main(args: Array<String>) {
        println("Hello, World!")
    }
    
  2. Compilez l'application à l'aide du compilateur Kotlin.

    kotlinc hello.kt -include-runtime -d hello.jar  
    
  3. Lancer l'application.

    Java -jar hello.jar
    
2
karel

Je ne sais pas pour umake. Je viens d'écrire un petit script bash pour générer un paquet deb minimal à partir de l'archive Zip distribuée.

Créez un nouveau fichier kotlinc-deb:

#!/usr/bin/env bash
if [ -z "$1" ]; then echo "Error: no input Zip file is specified"; exit 1; fi
version=${1#kotlin-compiler-}
version=${version%.Zip}
unzip $1 -d kotlinc_${version}_all/
cd kotlinc_${version}_all/
mkdir -v opt
mv -v kotlinc opt/
rm -rv 'opt/kotlinc/bin/'*.bat
mkdir -vp usr/{bin,share/doc}
mv -v opt/kotlinc/license usr/share/doc/kotlinc
sed -i $'s/\r$//' 'opt/kotlinc/bin/'* #The new 1.2.0 version has Shell scripts in
                                      # CRLF format. That causes issues when running
                                      # them. So I added this CRLF to LF conversion
cd usr/bin
ln -svt . '../../opt/kotlinc/bin/'*
cd ../..
mkdir -v DEBIAN
cat >DEBIAN/control <<EOF
Package: kotlinc
Version: ${version}
Section: Java
Priority: optional
Maintainer: ${LOGNAME} <${LOGNAME}@localhost>
Architecture: all
Description: The Kotlin compiler
 The compiler for the Kotlin programming language.
EOF
dpkg-deb -b ../kotlinc_${version}_all{,.deb}

Et puis courez:

$ chmod +x kotlinc-deb
$ ./kotlinc-deb kotlin-compiler-1.1.51.Zip

Après cela, vous pouvez installer le kotlinc_1.1.51_all.deb généré en tant que paquet deb habituel.

2
Des Nerger