Node.js: Difference between revisions

Added development environment
DHCP (talk | contribs)
m Setup: suggest search.nixos.org instead of cli nix search
 
(One intermediate revision by the same user not shown)
Line 5: Line 5:
== Setup ==
== Setup ==
Adapt or add following line to your system configuration:<syntaxhighlight lang="nix>
Adapt or add following line to your system configuration:<syntaxhighlight lang="nix>
  environment.systemPackages = with pkgs; [ nodejs ];
environment.systemPackages = with pkgs; [ nodejs ];
</syntaxhighlight>
</syntaxhighlight>


See <code>nix search nixpkgs nodejs</code> for additional versions like <code>nodejs-12_x</code>, etc.
See [https://search.nixos.org/packages?&query=nodejs NixOS Package Search] for additional versions like <code>nodejs_20</code>, etc.


== Development environment ==
== Development environment ==
Line 14: Line 14:


=== Nixpkgs example ===
=== Nixpkgs example ===
<syntaxhighlight lang="nix">
{{file|shell.nix|nix|3=
# shell.nix
{ pkgs ? import <nixpkgs> {} }:
{ pkgs ? import <nixpkgs> {} }:
pkgs.mkShell {
pkgs.mkShell {
Line 23: Line 22:
   ];
   ];
}
}
</syntaxhighlight>
}}


=== Corepack example ===
=== Corepack example ===
To use specific/pinned versions of your runtime & package manager, a combination of corepack & steam-run can be used<syntaxhighlight lang="nix">
To use specific/pinned versions of your runtime & package manager, a combination of corepack & steam-run can be used
# shell.nix
{{file|shell.nix|nix|3=
{ pkgs ? import <nixpkgs> {} }:
{ pkgs ? import <nixpkgs> {} }:
    
    
Line 39: Line 38:
   '';
   '';
}
}
}}


</syntaxhighlight><syntaxhighlight lang="json">
{{file|package.json|json|3=
// package.json
{
{
   "packageManager": "pnpm@11.4.0",
   "packageManager": "pnpm@11.4.0",
Line 52: Line 51:
   }
   }
}
}
 
}}
</syntaxhighlight>


== Packaging ==
== Packaging ==