| 13 Feb 2025 |
David | Γ una richiesta molto strana, Γ¨ un test concettuale o hai un caso d'uso vero? | 12:17:31 |
Alessandro π€ββοΈπ | no no Γ¨ un caso d'uso vero | 12:18:20 |
Alessandro π€ββοΈπ | error: access to absolute path '/etc' is forbidden in pure evaluation mode (use '--impure' to override) | 12:24:05 |
Alessandro π€ββοΈπ | ovviamente la cosa ideale Γ¨ che riesca ad usare i pacchetti di nix ovunque, ma AFAIR c'erano dei problemi | 12:22:27 |
David | Si lo puoi fare a runtime comunque | 12:24:16 |
David | Credo non si possa a evaluation time, a meno che devenv non lo esponga direttamente. Visto che hai un caso d'uso, ti direi di aprire una issue e vedere se loro hanno idee | 12:21:03 |
Alessandro π€ββοΈπ | in effetti a runtime potrebbe starci | 12:24:34 |
Alessandro π€ββοΈπ | nell'ambiente di sviluppo c'Γ¨ un tool che scarica dei binari (in node_modules). quei binari vanno bene per tutti i sistemi, tranne nixos. solo su nixos devo impostare una certa variabile d'ambiente per fare override | 12:19:06 |
Alessandro π€ββοΈπ | no, Γ¨ prisma | 12:22:40 |
Alessandro π€ββοΈπ | non so cosa sia. uso devenv | 12:24:40 |
Alex0 | e lo metti dentro l'attribute enterShell | 12:25:58 |
Alex0 | OS = grep 'NAME' /etc/os-release | sed 's/NAME=//'
if [ "$OS" = "NIXOS" ]; then
export VAR=VALUE
fi | 12:25:36 |
Alex0 | E usi export? | 12:22:56 |
Alex0 | Nixos ha come id "nixos" | 12:20:47 |
Alex0 | PerΓ² dovresti farlo ad eval time, hmm idk se puΓ² funzionare | 12:22:27 |
Alex0 | enterShell = ''
# copia quello sopra
''; | 12:26:41 |
Alex0 | O name NixOS | 12:20:56 |
Alex0 | Shellhooks? | 12:22:49 |
Alex0 | Tipo | 12:26:43 |
Matteo Joliveau | Scommetto che Γ¨ biome | 12:22:25 |
Matteo Joliveau | Se non Γ¨ zuppa... π | 12:22:59 |
Alex0 | In reply to Alessandro π€ββοΈπ come potrei fare per determinare, tramite nix (linguaggio) se il sistema corrente Γ¨ nixos o meno? mettiamola cosΓ¬: dentro un devenv, voglio settare una variabile d'ambiente a seconda dell'OS su cui sta girando. se Γ¨ nixos allora voglio dipendere da un pacchetto, se Γ¨ un altro sistema linux + nix invece no Leggi da "/etc/os-release" | 12:20:35 |
Alessandro Candido | Pero', se usi devenv, i binari che vanno bene per NixOS dovrebbero andare bene anche per tutti gli altri no?
I.e. se scarichi direttamente il binario forse no, ma se sono distribuiti come pacchetti Nix verranno con le loro runtime dependencies...
| 12:31:59 |
David | Prisma ti entra da "npm install" o da nixpkgs? Puoi anche pensare di fare un wrapper | 12:29:18 |
Alessandro π€ββοΈπ | grazie mille a tutti | 12:27:45 |
Alessandro π€ββοΈπ | sΓ¬ ho fatto cosΓ¬ | 12:27:16 |
Alessandro π€ββοΈπ | bravo, io invece non ho mai avuto un vero caso d'uso (a parte ora) e quindi nemmeno mi ricordavo ci fossero | 12:30:39 |
Alessandro π€ββοΈπ | Alla peggio tiro su un container che fa andare quella roba π | 12:35:23 |
Alessandro π€ββοΈπ | npm install, ma appunto ci sono delle env-var che fanno override di alcune impostazioni (tipo il binario che usano) | 12:30:15 |
Alessandro π€ββοΈπ | In reply to @annib-ale:matrix.org
Pero', se usi devenv, i binari che vanno bene per NixOS dovrebbero andare bene anche per tutti gli altri no?
I.e. se scarichi direttamente il binario forse no, ma se sono distribuiti come pacchetti Nix verranno con le loro runtime dependencies...
Esatto! Solo che avendo fatto due prove su due computer diversi, uno nixos e l'altro no, le cose fallivano male in entrambi i casi. Quindi al momento non voglio inficiare gli altri dev e provo a sistemarmi la cosa solo per me, ma a tendere sì, vorrei andare lì | 12:34:54 |