Skip to content

Commit

Permalink
Merge pull request #37 from MatrixAI/21.11
Browse files Browse the repository at this point in the history
Upgrading to node 16.x LTS (and pkgs.nix upgrade to 21.11 or later)
  • Loading branch information
CMCDragonkai authored Apr 25, 2022
2 parents 5299b37 + 4b8a0e9 commit 3f889d0
Show file tree
Hide file tree
Showing 39 changed files with 10,412 additions and 5,540 deletions.
2 changes: 1 addition & 1 deletion .eslintrc
Original file line number Diff line number Diff line change
Expand Up @@ -19,7 +19,7 @@
],
"parserOptions": {
"sourceType": "module",
"ecmaVersion": 2020
"ecmaVersion": 2021
},
"rules": {
"linebreak-style": ["error", "unix"],
Expand Down
23 changes: 11 additions & 12 deletions .gitlab-ci.yml
Original file line number Diff line number Diff line change
Expand Up @@ -126,18 +126,17 @@ windows run:
only:
- master

# macos is disabled until this repo has access
# macos run:
# stage: quality
# image: macos-11-xcode-12
# dependencies:
# - nix
# script:
# - for f in ./builds/*-macos-*; do "$f"; done
# only:
# - master
# tags:
# - shared-macos-amd64
macos run:
stage: quality
image: macos-11-xcode-12
dependencies:
- nix
script:
- for f in ./builds/*-macos-*; do "$f"; done
only:
- master
tags:
- shared-macos-amd64

packages:
stage: release
Expand Down
2 changes: 1 addition & 1 deletion README.md
Original file line number Diff line number Diff line change
Expand Up @@ -9,7 +9,7 @@ Note that JavaScript libraries are not packaged in Nix. Only JavaScript applicat
Building the package:

```sh
nix-build -E '(import ./pkgs.nix).callPackage ./default.nix {}'
nix-build -E '(import ./pkgs.nix {}).callPackage ./default.nix {}'
```

Building the releases:
Expand Down
39 changes: 30 additions & 9 deletions default.nix
Original file line number Diff line number Diff line change
@@ -1,5 +1,6 @@
{ runCommandNoCC
, callPackage
, jq
}:

let
Expand All @@ -11,20 +12,40 @@ let
packageName = utils.node2nixDev.packageName;
}
''
mkdir -p $out/lib/node_modules/${utils.node2nixDev.packageName}
mkdir -p "$out/lib/node_modules/${utils.node2nixDev.packageName}"
# copy the package.json
cp ${utils.node2nixDev}/lib/node_modules/${utils.node2nixDev.packageName}/package.json $out/lib/node_modules/${utils.node2nixDev.packageName}/
cp \
"${utils.node2nixDev}/lib/node_modules/${utils.node2nixDev.packageName}/package.json" \
"$out/lib/node_modules/${utils.node2nixDev.packageName}/"
# copy the dist
cp -r ${utils.node2nixDev}/lib/node_modules/${utils.node2nixDev.packageName}/dist $out/lib/node_modules/${utils.node2nixDev.packageName}/
cp -r \
"${utils.node2nixDev}/lib/node_modules/${utils.node2nixDev.packageName}/dist" \
"$out/lib/node_modules/${utils.node2nixDev.packageName}/"
# copy over the production dependencies
if [ -d "${utils.node2nixProd}/lib/node_modules" ]; then
cp -r ${utils.node2nixProd}/lib/node_modules $out/lib/node_modules/${utils.node2nixDev.packageName}/
cp -r \
"${utils.node2nixProd}/lib/node_modules" \
"$out/lib/node_modules/${utils.node2nixDev.packageName}/"
fi
# create symlink to the deployed executable folder, if applicable
if [ -d "${utils.node2nixDev}/lib/node_modules/.bin" ]; then
cp -r ${utils.node2nixDev}/lib/node_modules/.bin $out/lib/node_modules/
ln -s $out/lib/node_modules/.bin $out/bin
# symlink bin executables
if [ \
"$(${jq}/bin/jq 'has("bin")' "$out/lib/node_modules/${utils.node2nixDev.packageName}/package.json")" \
== \
"true" \
]; then
mkdir -p "$out/bin"
while IFS= read -r bin_name && IFS= read -r bin_path; do
# make files executable
chmod a+x "$out/lib/node_modules/${utils.node2nixDev.packageName}/$bin_path"
# create the symlink
ln -s \
"../lib/node_modules/${utils.node2nixDev.packageName}/$bin_path" \
"$out/bin/$bin_name"
done < <(
${jq}/bin/jq -r 'select(.bin != null) | .bin | to_entries[] | (.key, .value)' \
"$out/lib/node_modules/${utils.node2nixDev.packageName}/package.json"
)
fi
'';
'';
in
drv
1 change: 1 addition & 0 deletions docs/.nojekyll
Original file line number Diff line number Diff line change
@@ -0,0 +1 @@
TypeDoc added this file to prevent GitHub Pages from using Jekyll. You can turn off this behavior by setting the `githubPages` option to false.
Loading

0 comments on commit 3f889d0

Please sign in to comment.