- Lux est un nouveau gestionnaire de paquets visant à construire un écosystème adapté à Lua, pour créer, maintenir et déployer du code Lua
- Lux propose une CLI simple et intuitive, inspirée de gestionnaires de paquets bien connus comme
cargo
Fonctionnalités
- Portabilité complète entre systèmes
- Prise en charge des builds et des installations en parallèle 🚀
- Gestion automatique de l’installation des en-têtes Lua
- Exposition possible de l’API Lua via le crate
lux-lib
- Gestion de projet via le fichier
lux.toml
- Génération automatique de rockspec
- Prise en charge robuste des lockfiles
- Builds et environnements de développement entièrement reproductibles
- Intégration du formatage de code et du linting
- Prise en charge de l’exécution des tests avec
busted
- Possibilité d’utiliser Neovim comme interpréteur Lua
- Configuration d’environnements purs
- Compatible avec l’écosystème luarocks
Motivation
Lua
- Luarocks a 20 ans d’histoire et n’est pas adapté au développement Lua moderne
- Lux vise à offrir un nouveau départ
- Utilisation de TOML comme format principal de manifeste pour la gestion des dépendances
- Possibilité de builder et d’installer un projet depuis le répertoire du projet avec la commande
build
- Respect de SemVer imposé
- Prise en charge des builds parallèles
Neovim
- Popularité croissante grâce au gestionnaire de plugins Neovim
rocks.nvim et à la prise en charge de Luarocks par lazy.nvim
- Lux est non destructif et n’interfère pas avec la manière dont les plugins Neovim sont distribués
- Le flag
--nvim permet d’installer les paquets dans une arborescence compatible avec Neovim
Nix
- Lorsque des plugins Neovim existent sous forme de paquets Luarocks,
nixpkgs les utilise
- Le
lux.lock de Lux stocke la source et le hash du rockspec de chaque dépendance
Étapes suivantes
- Se concentrer sur les corrections de bugs et l’amélioration des messages d’erreur
- Réécriture prévue de
rocks.nvim sur la base de Lux
- En cas de réécriture réussie, impact positif attendu sur l’écosystème Neovim
Documentation
- Tutoriels et guides disponibles sur le site de documentation de Lux
- Questions et résolution de problèmes possibles via les discussions GitHub et l’issue tracker
Licence
- Lux est proposé sous licence MIT
- Le logo Lux est proposé sous licence CC BY-NC-SA 4.0
1 commentaires
Commentaire Hacker News