| 27 Oct 2025 |
gecko | Aaaaah sad | 14:52:01 |
gecko | Ma quindi agenix può solo rendere disponibili dei segreti a runtime (e.g., in un servizio systemd su nixos), non li rende disponibili in builder. Corretto? | 14:51:45 |
gecko | Ma perché fare una build impura quando potrei usare agenix 🤔 | 14:49:14 |
Alessandro Candido | (Secondo me) agenix e' solo piu' comodo che doverlo fare a mano e gestirsi i path e le chiavi. Cosi' almeno quella parte rimane tutta dichiarativa, e ti committi i segreti cifrati su un repo | 14:56:45 |
Alessandro Candido | Se non vuoi che la licenza sia world-readable, allora devi avere un input esterno, e quindi diventa impuro | 14:51:32 |
Marco Turchetto | Si ma lo fa a runtime non a build time, non sarebbe tanto diverso da chiamare sops age all'interno del tuo build script | 14:54:30 |
Alessandro Candido | Anche se per il file alla fine usassi agenix | 14:51:42 |
gecko | agenix non mette le cose nello store AFAIU | 14:53:08 |
Alessandro Candido | Credo che la build impura serva a prescindere | 14:50:12 |
David | perché quello che viene passato al builder non è segreto | 14:49:34 |
gecko | Sì, ma il builder mi filtra via le variabili d'ambiente, no? Also, se voglio dare accesso a più persone al compilatore closed mi pare più pulito usare agenix. | 14:46:49 |
Alessandro Candido | Tipicamente, per i servizi che hanno bisogno di un segreto, gli dai il path del file dove trovarlo | 14:52:16 |
gecko | Eh infatti non capivo, ora ha senso | 14:53:42 |
Alessandro Candido | Nel senso che una derivazione pura deve essere completamente riproducibile. Per cui hai bisogno di mettere nello store anche il compilatore e la licenza | 14:51:03 |
Alessandro Candido | Esatto | 14:51:55 |
David | il builder mi filtra via le variabili d'ambiente, no? questo perché vuoi usare il compilatore da nix build? devi fare una build impura in quel caso | 14:48:33 |
David | metti il file con il segreto in chiaro nel nix store. Funziona eh, ma magari non lo vuoi, dipende chi e cosa accede allo stesso store | 14:55:36 |
Alessandro Candido | Secondo me agenix puo' essere comunque utile, per strutturare la gestione del segreto, e la condivisione con altri | 14:53:13 |
Alex0 | Ha senso se è in una repo pubblica | 14:47:39 |
Alex0 | È lo stesso modo in cui tipo mathlab viene installato su nix
Se hai il binario, puoi caricarlo sullo store e poi usarlo nelle tue derivazioni | 14:46:16 |
Alex0 | Isn't this the case? | 14:46:59 |
Alex0 | Dipende dal context su dove viene runnato/buildato | 14:49:28 |
Alex0 | Se è privata fai quello che vuoi | 14:47:46 |
David | si fa per questioni di licenza, non per i segreti però | 14:46:44 |
Alex0 | O come override? Però significa che ogni volta che il file cambia la cache non è più la stessa
Altrimenti impure e va bene lo stesso | 14:55:41 |
Alessandro Candido | agenix alla fine unlocka il segreto solo se hai la chiave SSH giusta | 14:53:46 |
Alessandro Candido | Pero' non e' niente di male. Secondo me si fa impura e va anche bene cosi' | 14:54:48 |
Alessandro Candido | Puo' essere uno strumento utile, ma la realta' e' che per fare quello che interessa a te la build deve essere necessariamente impura | 14:54:29 |
Alex0 | Sisi, soprattutto se qualcuno ha il hash or something e la cache è completamente pubblica | 14:56:07 |
Alessandro Candido | Che e' quello che fa agenix, in pratica | 14:52:42 |