-
Notifications
You must be signed in to change notification settings - Fork 43
For Developers
梅釉酥汁 edited this page Jan 26, 2024
·
6 revisions
// 也许你需要处理下 electron 镜像的位置
pnpm config set electron_mirror=https://repo.huaweicloud.com/electron/
// registry 我用的是
registry=http://mirrors.cloud.tencent.com/npm/
推荐使用 nvm 进行 node 版本管理 nvm-github地址
node >= 16.0.0
我用的 v18.12.1
(推荐版本)
node下载地址
// 这将为你安装 pnpm 包管理器
npm i -g pnpm
// 安装项目依赖
pnpm i
将根目录 和 server目录下的.env.example
文件原地复制一个,并改名为 .env
。
根目录下执行
pnpm dev
// 根目录执行以下命令
pnpm package
首先启用 flake 功能,若已启用 flake . 请直接参考接下来的 flake.nix 文件
在您的 NixOS 配置文件中加入以下内容
{ config, pkgs, ... }:
{
imports = [
xxx.nix
];
# 省略一些配置...
++ nix.settings.experimental-features = [ "nix-command" "flakes" ];
#...
}
对 nix develop
命令使用以下 flake 文件即可进入开发环境
{
description = "R3PLAYX Developement Environment";
inputs.nixpkgs.url = "github:NixOS/nixpkgs/master";
inputs.flake-utils.url = "github:numtide/flake-utils";
outputs = { self, nixpkgs, flake-utils }:
flake-utils.lib.eachDefaultSystem (system: let
pkgs = nixpkgs.legacyPackages.${system};
in {
devShell = pkgs.mkShell {
nativeBuildInputs = [ pkgs.bashInteractive ];
buildInputs = with pkgs; [
nodePackages.prisma
nodePackages.yarn
nodejs_18
corepack_18
];
shellHook = with pkgs; ''
export PRISMA_MIGRATION_ENGINE_BINARY="${prisma-engines}/bin/schema-engine"
export PRISMA_QUERY_ENGINE_BINARY="${prisma-engines}/bin/query-engine"
export PRISMA_QUERY_ENGINE_LIBRARY="${prisma-engines}/lib/libquery_engine.node"
export PRISMA_INTROSPECTION_ENGINE_BINARY="${prisma-engines}/bin/introspection-engine"
export PRISMA_FMT_BINARY="${prisma-engines}/bin/prisma-fmt"
'';
};
});
}