Nix Milan | 110 Members | |
| https://milano.nix.pizza/ | 7 Servers |
| Sender | Message | Time |
|---|---|---|
| 5 Oct 2025 | ||
In reply to FrancescoSorry ma coi nomi son pessimo | 20:17:00 | |
| 6 Oct 2025 | ||
In reply to FrancescoSecondo me è chiaramente qualcosa con cui fare il callo. Ma non è così terribile. Se hai poche occorrenze, puoi usare mkBefore/mkAfter. Se ne hai tante, cominci a usare mkOrder 1000, 2000, 3000... che poi è quello che fai tipicamente anche coi file in etc/ quando la configurazione è in una cartella e non in un unico file https://nixos.org/manual/nixos/stable/#sec-option-definitions-ordering | 03:23:10 | |
| si è un workaround 🤷♂️ | 07:36:30 | |
| se non ha un default significa che viene valutata solo nei casi in cui è obbligatorio metterci un valore, in quel caso probabilmente sai che valore vuoi metterci | 07:39:09 | |
| Io quello intendevo per "unsettare" | 07:46:01 | |
| Non funziona sempre pero', se un default non ce l'ha? | 07:37:17 | |
| Non puoi neanche togliere elementi da una lista gia' settati in altri moduli che io sappia (o forse c'era un modo? O un workaround?) | 07:43:32 | |
| Il module system e' veramente versatile, puoi anche creare dei nuovi tipi che "mergiano" come vuoi te. L'unico limite che mi da fastidio con cui spesso mi sono scontrato e' che non puoi "unsettare" un'opzione settata un altro modulo. | 07:35:18 | |
Questo e' vero anche per i freeform module? Tipo se importo un modulo che mi setta app.settings.chiave (che e' un freeform module diciamo) ma io non voglio ce chiave appaia nel json/toml/quello che e' | 07:42:50 | |
| me le segno e controllo, non avevo mai pensato al primo caso | 07:44:22 | |
| non so se si può fare qualche magia facendo un modulo wrapper | 07:47:47 | |
| Puoi forzare il valore a il suo default | 07:36:03 | |
| tecnicamente è vero, non si può fare unset, non c'è un valore per "undefined" | 07:39:46 | |
| nel secondo in non vuoi fare "unset" del valore, vuoi proprio togliere una definition e non si può fare | 07:45:11 | |
| E comunque non lo usi da dentro il modulo stesso, devi prendere il punto fisso gia' computato | 07:53:16 | |
| Ma e' computazionalmente pesante | 07:52:20 | |
| non si può fare il filter perché: - se fai il set alla stessa priorità diventa un infinite recursion - se fai il set a una priorità più alta non hai accesso alla versione calcolata delle altre priorità | 07:51:10 | |
| esatto, stavo per scrivere la prima! Forse puoi usare extendModules | 07:51:58 | |
| o forse si, ma è una cosa così internal che non la userei comunque | 07:51:30 | |
| Anzi il filter non so se sia possibile, ma mkForce sì | 07:50:02 | |
| Nel secondo caso credo che tu possa andare a fare un filter sulla lista. So che se vuoi forzare una lista ad essere vuota puoi usare mkForce tipo environment.defaultPackages = lib.mkForce [] ti toglie tutti i default packages | 07:48:57 | |
| Eh sì hai ragione | 07:51:50 | |
In reply to DavidAlla fine ho sempre trovato un modo eh, pero' sarebbe bello ci fosse un modo meno hacky. C'e' anche l'opzione drastica di usare disableModules e copia/incollare una versione diversa del modulo | 07:50:40 | |
| A questo punto servirebbe un meccanismo tipo gli overlay per le options ma mi sembra un po' eccessivo 😅 | 08:08:34 | |
In reply to Andrea CiceriNon lo conoscevo extendModules, interesting | 08:08:55 | |
| 10 Oct 2025 | ||
| Ah sì questo lo sto provando per fare girare tipo browser in isolamento | 11:22:18 | |
| @gecko4242 mi ero dimenticato di dirlo l'altro giorno ma come alternativa ancora piu' isolata ai NixOS containers (ma che comunque condivide lo store con l'host) c'e' anche questo: https://github.com/microvm-nix/microvm.nix | 11:12:23 | |
Me ne aveva parlato un amico (che sta a Vienna, se no l'avrei aggiunto qui), ma a me l'idea di tirare su VM per niente mi da fastidio :P | 13:44:18 | |
| Signore Iddio c'ha dato i namespace, usiamoli | 13:44:47 | |
| a proposito di namespace e modi per far girare applicazioni in maniera isolata al nixcon ci sono stati due talk rigurdo questi due progetti. https://github.com/gmodena/nix-flatpak?tab=readme-ov-file Questo semplicemente ti fa installare dichiarativamente applicazioni flatpak mi sembra di capire, quindi sempre bubblewrap/namespaces sotto https://sr.ht/~alexdavid/jail.nix/ Questo sempre usa bubblewrap e ti lascia usare nix per impostarlo, pero' questo e' piu' pensato per eseguire output di derivazioni mi sa, mentre l'altro proprio per pacchetti flatpak. | 16:22:13 | |