# Lufi-cli `lufi-cli` est un utilitaire qui permet de téléverser un fichier vers une instance lufi. Les services `lufi` stockent les fichiers sans connaissances de leur contenue. Ces derniers sont chiffrés et la clé de chiffrement n'est pas connue du service lufi utilisé. A noter qu'en revanche le nom du fichier et son poids son connue du service. ARN possède 2 instances: - drop.sans-nuage.fr (pour les fichiers lourds, régulièrement pleine) - small-drop.sans-nuage.fr (pour les petits fichiers) Nous utilisons parfois small-drop pour transférer des informations à nos membres. ## Installer lufi-cli sur debian 12 1. Installer le gestionnaire de paquet npm ``` apt install npm ``` 2. Créer un user system `lufi-cli` (pour éviter de faire tourner le code en root) ``` groupadd lufi-cli useradd -d /opt/lufi-cli/ -g lufi-cli lufi-cli mkdir /opt/lufi-cli/ chown lufi-cli:lufi-cli /opt/lufi-cli/ ``` 3. Installer `lufi-cli` via npm ``` cd /opt/lufi-cli/ sudo -u lufi-cli npm install lufi-cli ``` 4. Faire un essai de téléversement ``` sudo -u lufi-cli /opt/lufi-cli/node_modules/.bin/lufi-cli --upload /opt/lufi-cli/package.json --server https://small-drop.sans-nuage.fr ``` ## Dépannage Si lufi-cli ne renvoie plus les liens, par exemple après que le disque soit remplis, il faut essayer avec l'option `-v` pour obtenir plus de détail. Si l'erreur suivante apparait, il faut supprimer le fichier `/opt/lufi-cli/.local/share/lufi/files.json` ``` undefined:1 SyntaxError: Unexpected end of JSON input at JSON.parse () at addItem (/opt/lufi-cli/node_modules/lufi-cli/bin/lufi.js:226:22) at updateProgressBar (/opt/lufi-cli/node_modules/lufi-cli/bin/lufi.js:543:13) at wsock.onmessage (/opt/lufi-cli/node_modules/lufi-cli/bin/lufi.js:610:9) at Client.dispatchEvent (/opt/lufi-cli/node_modules/faye-websocket/lib/faye/websocket/api/event_target.js:24:30) at Client._receiveMessage (/opt/lufi-cli/node_modules/faye-websocket/lib/faye/websocket/api.js:154:10) at Client. (/opt/lufi-cli/node_modules/faye-websocket/lib/faye/websocket/api.js:36:49) at Client.emit (node:events:529:35) at Client. (/opt/lufi-cli/node_modules/websocket-driver/lib/websocket/driver/hybi.js:460:14) at pipe (/opt/lufi-cli/node_modules/websocket-extensions/lib/pipeline/index.js:37:40) ```