| 9 Mar 2024 |
Qyriad | can't install do this? | 19:50:58 |
Qyriad | I can never remember exactly what intersection of functionality install has, but it can copy and set permissions at the same time at least | 19:51:22 |
Lily Foster | In reply to @qyriad:katesiria.org I can never remember exactly what intersection of functionality install has, but it can copy and set permissions at the same time at least it needs to be able to ignore some perm bits but keep the execute bits the same (rather than setting a static mode). i forget if it supports that, but if so that would definitely be the best idea | 19:52:18 |
Qyriad | I don't see it in the man page 😔 | 19:54:26 |
@kyle:iteratee.net | I think you can use find to locate things by their permissions. You could use that along with `--no-preserve=mode` to add back +x bits. | 19:58:04 |
@kyle:iteratee.net | (find things in source with +x bits and then arrange to chmod the same thing in destination) | 19:59:13 |
Qyriad | we're getting back to "might as well just use rsync" territory though | 19:59:58 |
Qyriad | or like, a python script | 20:00:03 |
| 10 Mar 2024 |
| @kstiehl:matrix.numericas.de left the room. | 08:59:57 |
| 11 Mar 2024 |
szucsitg | In reply to @adis:blad.is https://github.com/NixOS/nixpkgs/pull/289231 Is there any reason behind the missing linkNodeModulesHook in this PR comparing to your source repo? | 20:41:26 |
| 14 Mar 2024 |
| Federico Schonborn left the room. | 02:04:35 |
| countoren changed their display name from oren to countoren. | 14:09:42 |
@janne.hess:helsinki-systems.de | Is there a way to get from a set of .tgz files to a proper npm cache? | 15:13:41 |
@janne.hess:helsinki-systems.de | I tried just mapping them over fetchurl and then npm cache add but that breaks prefetch-npm-deps for some reason (Error: invalid value: integer 1710428006885, expected u8 at line 1 column 223) | 15:14:15 |
Lily Foster | In reply to @janne.hess:helsinki-systems.de I tried just mapping them over fetchurl and then npm cache add but that breaks prefetch-npm-deps for some reason (Error: invalid value: integer 1710428006885, expected u8 at line 1 column 223) can you share code? | 16:21:11 |
@janne.hess:helsinki-systems.de | In reply to @lily:lily.flowers can you share code? Sure:
passthru.frontend = buildNpmPackage rec { # TODO not rec
pname = "elma-frontend";
inherit version;
src = ~/projects/test; #TODO inherit
npmDeps = stdenvNoCC.mkDerivation {
pname = "frontend-npm-cache";
inherit version src;
strictDeps = true;
__structuredAttrs = true;
dontPatch = true;
dontConfigure = true;
tars = lib.mapAttrsToList (_: v: fetchurl {
url = v.resolved;
hash = v.integrity;
}) (lib.filterAttrs (_: v: v ? "resolved" && v ? "integrity")
(builtins.fromJSON (builtins.readFile "${src}/package-lock.json")).packages
);
buildPhase = ''
export HOME=/build
npm config set cache "$out"
for tar in "''${tars[@]}"; do
echo "Adding $(stripHash "$tar") to npm cache"
npm cache add "$tar"
done
cp package-lock.json "$out"
'';
dontInstall = true;
nativeBuildInputs = [ nodePackages.npm cacert nodejs nukeReferences ];
#outputHashMode = "recursive";
#outputHash = "sha256-AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA=";
};
};
}
| 16:36:21 |
@janne.hess:helsinki-systems.de | please don't tell me it's ugly, I already know ;) | 16:36:30 |
@janne.hess:helsinki-systems.de | In reply to @lily:lily.flowers can you share code? * Sure:
passthru.frontend = buildNpmPackage rec { # TODO not rec
pname = "frontend";
inherit version;
src = ~/projects/test; #TODO inherit
npmDeps = stdenvNoCC.mkDerivation {
pname = "frontend-npm-cache";
inherit version src;
strictDeps = true;
__structuredAttrs = true;
dontPatch = true;
dontConfigure = true;
tars = lib.mapAttrsToList (_: v: fetchurl {
url = v.resolved;
hash = v.integrity;
}) (lib.filterAttrs (_: v: v ? "resolved" && v ? "integrity")
(builtins.fromJSON (builtins.readFile "${src}/package-lock.json")).packages
);
buildPhase = ''
export HOME=/build
npm config set cache "$out"
for tar in "''${tars[@]}"; do
echo "Adding $(stripHash "$tar") to npm cache"
npm cache add "$tar"
done
cp package-lock.json "$out"
'';
dontInstall = true;
nativeBuildInputs = [ nodePackages.npm cacert nodejs nukeReferences ];
#outputHashMode = "recursive";
#outputHash = "sha256-AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA=";
};
};
}
| 16:36:34 |
Lily Foster | In reply to @janne.hess:helsinki-systems.de please don't tell me it's ugly, I already know ;) i get it, no worries :) | 16:36:59 |
Lily Foster | i'll take a look when i get a chance. am at nixcon this morning | 16:37:08 |
@janne.hess:helsinki-systems.de | In reply to @lily:lily.flowers i'll take a look when i get a chance. am at nixcon this morning Thank you and enjoy :) | 16:47:24 |
| NixOS Moderation Botchanged room power levels. | 18:45:37 |
| felixfahrbahn joined the room. | 20:08:33 |
felixfahrbahn | Hi, there. QuickQuestion: I package a bash script that uses npm list -g to check whether a module is present (they are loadable with node in nix-shell --pure). I used (nodePackages.node2nix.override { input = "${src}/package.json"; composition = "${src}/node-composition.nix"; }) as a buildInput. I tried with NPM_CONFIG_PREFIX but actually the modules exist only as .tgz in my nixstore. | 20:09:48 |
| 15 Mar 2024 |
| @grahamc:nixos.org joined the room. | 23:27:44 |
| 16 Mar 2024 |
hexa | In reply to @kyle:iteratee.net I have a PR open for pnpm2nix-nzbr that supports multi-component workspaces with pnpm. where? | 04:21:47 |
@kyle:iteratee.net | In reply to @hexa:lossy.network where? https://github.com/nzbr/pnpm2nix-nzbr/pull/35 | 04:24:15 |
hexa | ok, but that will never go into nixpkgs, will it? | 04:24:34 |
@kyle:iteratee.net | 🤷♂️ | 04:24:59 |
| mj joined the room. | 14:00:41 |