fixes npm
This commit is contained in:
parent
59d5072b1b
commit
298fcf8f32
2 changed files with 19 additions and 43 deletions
|
|
@ -3,15 +3,6 @@
|
||||||
lib,
|
lib,
|
||||||
...
|
...
|
||||||
}: {
|
}: {
|
||||||
environment.shellInit = ''
|
|
||||||
if [ -d "$HOME/.cargo/bin" ]; then
|
|
||||||
export PATH="$PATH:$HOME/.cargo/bin"
|
|
||||||
fi
|
|
||||||
if [ -d "$HOME/.npm-global/bin" ]; then
|
|
||||||
export PATH="$PATH:$HOME/.npm-global/bin"
|
|
||||||
fi
|
|
||||||
'';
|
|
||||||
|
|
||||||
environment.variables = {
|
environment.variables = {
|
||||||
EDITOR = "nvim";
|
EDITOR = "nvim";
|
||||||
VISUAL = "nvim";
|
VISUAL = "nvim";
|
||||||
|
|
@ -24,7 +15,6 @@
|
||||||
pkgs.openssl.dev
|
pkgs.openssl.dev
|
||||||
pkgs.libxml2.dev
|
pkgs.libxml2.dev
|
||||||
pkgs.zlib.dev
|
pkgs.zlib.dev
|
||||||
pkgs.ffmpeg
|
|
||||||
pkgs.portaudio
|
pkgs.portaudio
|
||||||
pkgs.alsa-lib
|
pkgs.alsa-lib
|
||||||
pkgs.stdenv.cc.cc
|
pkgs.stdenv.cc.cc
|
||||||
|
|
@ -41,14 +31,12 @@
|
||||||
pkgs.mangohud
|
pkgs.mangohud
|
||||||
pkgs.portaudio
|
pkgs.portaudio
|
||||||
pkgs.alsa-lib
|
pkgs.alsa-lib
|
||||||
pkgs.ffmpeg
|
|
||||||
pkgs.stdenv.cc.cc.lib
|
pkgs.stdenv.cc.cc.lib
|
||||||
pkgs.xorg.libX11
|
pkgs.xorg.libX11
|
||||||
pkgs.xorg.libXtst
|
pkgs.xorg.libXtst
|
||||||
pkgs.xorg.libXi
|
pkgs.xorg.libXi
|
||||||
pkgs.glib
|
pkgs.glib
|
||||||
];
|
];
|
||||||
NPM_CONFIG_PREFIX = "$HOME/.npm-global";
|
|
||||||
};
|
};
|
||||||
|
|
||||||
environment.pathsToLink = [
|
environment.pathsToLink = [
|
||||||
|
|
|
||||||
|
|
@ -3,57 +3,45 @@
|
||||||
pkgs,
|
pkgs,
|
||||||
lib,
|
lib,
|
||||||
...
|
...
|
||||||
}:
|
}: let
|
||||||
# TODO:bandaid fix for now
|
|
||||||
let
|
|
||||||
npmGlobalDir = "/home/cobray/.npm-global";
|
|
||||||
npmConf = pkgs.writeText "npmrc" ''
|
npmConf = pkgs.writeText "npmrc" ''
|
||||||
prefix=${npmGlobalDir}
|
prefix=${"$"}{HOME}/.npm-global
|
||||||
cache=/home/cobray/.npm
|
cache=${"$"}{HOME}/.npm
|
||||||
init-module=/home/cobray/.npm-init.js
|
init-module=${"$"}{HOME}/.npm-init.js
|
||||||
'';
|
'';
|
||||||
in {
|
in {
|
||||||
options.npm = {
|
options.npm.enable = lib.mkEnableOption "system-wide npm environment";
|
||||||
enable = lib.mkEnableOption "System NPM Environment";
|
|
||||||
};
|
|
||||||
config = lib.mkIf config.npm.enable {
|
config = lib.mkIf config.npm.enable {
|
||||||
environment.systemPackages = with pkgs; [
|
environment.systemPackages = with pkgs; [
|
||||||
nodejs_22
|
nodejs_22
|
||||||
nodePackages.npm
|
nodePackages.npm
|
||||||
electron
|
|
||||||
yarn
|
yarn
|
||||||
bun
|
bun
|
||||||
deno
|
pnpm
|
||||||
nodePackages.eslint
|
electron
|
||||||
|
nodePackages.typescript
|
||||||
nodePackages.prettier
|
nodePackages.prettier
|
||||||
|
nodePackages.eslint
|
||||||
nodePackages.sql-formatter
|
nodePackages.sql-formatter
|
||||||
nodePackages.markdownlint-cli
|
nodePackages.markdownlint-cli
|
||||||
nodePackages.stylelint
|
nodePackages.stylelint
|
||||||
nodePackages.htmlhint
|
nodePackages.htmlhint
|
||||||
nodePackages.jsonlint
|
nodePackages.jsonlint
|
||||||
nodePackages.pnpm
|
|
||||||
nodePackages.typescript
|
|
||||||
];
|
];
|
||||||
environment.variables = {
|
|
||||||
PATH = [
|
environment.sessionVariables.PATH =
|
||||||
"${pkgs.nodejs_22}/bin"
|
lib.mkAfter ":${"$"}{HOME}/.npm-global/bin";
|
||||||
"${npmGlobalDir}/bin"
|
|
||||||
];
|
|
||||||
};
|
|
||||||
environment.etc."npmrc".source = npmConf;
|
environment.etc."npmrc".source = npmConf;
|
||||||
systemd.user.services.npm-setup = {
|
|
||||||
description = "Set up NPM user configuration";
|
systemd.user.services."npm-setup" = {
|
||||||
|
description = "Install .npmrc";
|
||||||
wantedBy = ["default.target"];
|
wantedBy = ["default.target"];
|
||||||
script = ''
|
script = ''
|
||||||
if [ ! -f ~/.npmrc ]; then
|
install -m600 -D ${npmConf} "$HOME/.npmrc"
|
||||||
cp ${npmConf} ~/.npmrc
|
|
||||||
chmod u+rw ~/.npmrc
|
|
||||||
fi
|
|
||||||
'';
|
'';
|
||||||
serviceConfig = {
|
serviceConfig.Type = "oneshot";
|
||||||
Type = "oneshot";
|
|
||||||
RemainAfterExit = true;
|
|
||||||
};
|
|
||||||
};
|
};
|
||||||
};
|
};
|
||||||
}
|
}
|
||||||
|
|
|
||||||
Loading…
Add table
Add a link
Reference in a new issue