| 5 Nov 2025 |
Alessandro π€ββοΈπ | questo rende tutto molto piΓΉ chiaro | 15:35:57 |
Alessandro π€ββοΈπ | nix-ccache -s
Cacheable calls: 83 / 83 (100.0%)
Hits: 1 / 83 ( 1.20%)
Direct: 1 / 1 (100.0%)
Preprocessed: 0 / 1 ( 0.00%)
Misses: 82 / 83 (98.80%)
Local storage:
Cache size (GiB): 0.0 / 5.0 ( 0.07%)
Hits: 1 / 83 ( 1.20%)
Misses: 82 / 83 (98.80%)
che gioia, alla prossima build ci metterΓ meno :D | 15:24:22 |
Alessandro π€ββοΈπ | ah hai tolto src? perchΓ© dovrebbe cambiare? chiedo perchΓ© non capisco bene cosa sta succedendo, non per critica | 15:23:07 |
Andrea Ciceri | Nix dopo aver buildato la derivazione scannerrizza il binario e si salva da quali path dipende, ed e' qui che si accorge che hai una fixed output derivation che dipende da roba.
Infatti scommetto che se zippi il binario prima di metterlo in $out ti andra' (non e' una soluzione eh, ti perderesti le dipendenze e una volta scompattato punterebbe a path che magari non sono nello store) | 15:35:03 |
Alessandro π€ββοΈπ | btw dovrei essere appena riuscito ad abilitare ccache: serve passare un argomento extra (--bind x x) per bubblewrap quando si fa buildFHSEnv | 15:16:18 |
Andrea Ciceri | credo che non ti andrebbe nemmeno senza fhs | 15:39:03 |
Andrea Ciceri | anche senza fhs il binario dipenderebbe da glibc o simili | 15:39:27 |
Andrea Ciceri | Se il binario e' compilato staticamente probabilmente andra' (improbabile che lo sia) Altrimenti potresti modificare usare removeReferencesTo sul binario per non farlo dipendere da niente. Poi fai un'altra derivazione (normale, input addressed, anche solo con runCommand) che prende questo binario dalla derivazione fixed output e usa patchelf su di lui | 15:38:46 |
Alessandro π€ββοΈπ | 2.5h su un host abbastanza potente | 15:20:57 |
Andrea Ciceri | comunque secondo me cosi' ti andra':
stdenv.mkDerivation {
name = "cef";
# This is a hack that should be fixed by envvar below
GIT_SSL_NO_VERIFY=true;
GIT_SSL_CAINFO = "${cacert}/etc/ssl/certs/ca-bundle.crt";
SSL_CERT_FILE = "${cacert}/etc/ssl/certs/ca-bundle.crt";
CURL_CA_BUNDLE = "${cacert}/etc/ssl/certs/ca-bundle.crt";
buildCommand = ''
cp -r ${cefSrc}/* .
${cefBuildEnv}/bin/cefBuildEnv ${buildScript}
mkdir -p $out
cp -r tmp_download_dir/chromium/src/cef/binary_distrib $out/cef
'';
outputHash = lib.fakeHash;
outputHashAlgo = "sha256";
outputHashMode = "nar"; # nar: recursive Nix Archive
} | 15:17:36 |
Alessandro π€ββοΈπ | ahhh | 15:35:19 |
Alessandro π€ββοΈπ | beh ma cavoli vuol dire che tutte le derivazioni fixed-output non possono dipendere da glibc?? | 15:40:03 |
Alessandro π€ββοΈπ | ahah no prima si chiamava ceffa.nix perchΓ© avevo un altro cef.nix, ma Γ¨ praticamente quel file che vedi nel repo | 15:15:22 |
Alessandro π€ββοΈπ | sicuramente non lo Γ¨ | 15:38:57 |
Alessandro π€ββοΈπ | π€― | 15:40:11 |