xs-dev 0.31.1 → 0.31.2
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
package/build/commands/setup.js
CHANGED
|
@@ -4,7 +4,6 @@ var __importDefault = (this && this.__importDefault) || function (mod) {
|
|
|
4
4
|
};
|
|
5
5
|
Object.defineProperty(exports, "__esModule", { value: true });
|
|
6
6
|
const os_1 = require("os");
|
|
7
|
-
const fontbm_1 = __importDefault(require("../toolbox/setup/fontbm"));
|
|
8
7
|
const ejectfix_1 = __importDefault(require("../toolbox/setup/ejectfix"));
|
|
9
8
|
const devices_1 = require("../toolbox/prompt/devices");
|
|
10
9
|
const constants_1 = require("../toolbox/setup/constants");
|
|
@@ -41,12 +40,10 @@ const command = {
|
|
|
41
40
|
}
|
|
42
41
|
}
|
|
43
42
|
if (tool !== undefined) {
|
|
44
|
-
if (!['
|
|
43
|
+
if (!['ejectfix'].includes(tool)) {
|
|
45
44
|
print.warning(`Unknown tool ${tool}`);
|
|
46
45
|
process.exit(1);
|
|
47
46
|
}
|
|
48
|
-
if (tool === 'fontbm')
|
|
49
|
-
await (0, fontbm_1.default)();
|
|
50
47
|
if (tool === 'ejectfix')
|
|
51
48
|
await (0, ejectfix_1.default)();
|
|
52
49
|
return;
|
|
@@ -68,4 +65,4 @@ const command = {
|
|
|
68
65
|
},
|
|
69
66
|
};
|
|
70
67
|
exports.default = command;
|
|
71
|
-
//# sourceMappingURL=data:application/json;base64,
|
|
68
|
+
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoic2V0dXAuanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi9zcmMvY29tbWFuZHMvc2V0dXAudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6Ijs7Ozs7QUFDQSwyQkFBeUM7QUFFekMseUVBQXFEO0FBQ3JELHVEQUF3RDtBQUN4RCwwREFBMEQ7QUFXMUQsTUFBTSxPQUFPLEdBQWlDO0lBQzVDLElBQUksRUFBRSxPQUFPO0lBQ2IsV0FBVyxFQUNULGtFQUFrRTtJQUNwRSxHQUFHLEVBQUUsS0FBSyxFQUFFLEVBQUUsVUFBVSxFQUFFLEtBQUssRUFBRSxNQUFNLEVBQUUsS0FBSyxFQUFFLEVBQUUsRUFBRTtRQUNsRCxNQUFNLGVBQWUsR0FBVyxJQUFBLFNBQVksR0FBRSxDQUFDLFdBQVcsRUFBWSxDQUFBO1FBQ3RFLE1BQU0sRUFDSixNQUFNLEVBQ04sV0FBVyxHQUFHLEtBQUssRUFDbkIsSUFBSSxFQUNKLFlBQVksR0FBRyxnQkFBZ0IsRUFDL0IsVUFBVSxHQUFHLHlCQUFhLEdBQzNCLEdBQWlCLFVBQVUsQ0FBQyxPQUFPLENBQUE7UUFDcEMsSUFBSSxNQUFNLEdBQVcsTUFBTSxhQUFOLE1BQU0sY0FBTixNQUFNLEdBQUksZUFBZSxDQUFBO1FBRTlDLElBQUksTUFBTSxLQUFLLFNBQVMsSUFBSSxXQUFXLEVBQUU7WUFDdkMsTUFBTSxPQUFPLEdBQUc7Z0JBQ2QsU0FBUztnQkFDVCxPQUFPO2dCQUNQLE1BQU07Z0JBQ04sTUFBTTtnQkFDTixPQUFPO2dCQUNQLHNCQUFZLENBQUMsZUFBZSxDQUFDO2FBQzlCLENBQUE7WUFDRCxNQUFNLEVBQUUsTUFBTSxFQUFFLGNBQWMsRUFBRSxHQUFHLE1BQU0sTUFBTSxDQUFDLEdBQUcsQ0FBQztnQkFDbEQ7b0JBQ0UsSUFBSSxFQUFFLGNBQWM7b0JBQ3BCLElBQUksRUFBRSxRQUFRO29CQUNkLE9BQU8sRUFBRSx3Q0FBd0M7b0JBQ2pELE9BQU87aUJBQ1I7YUFDRixDQUFDLENBQUE7WUFFRixJQUFJLGNBQWMsS0FBSyxFQUFFLElBQUksY0FBYyxLQUFLLFNBQVMsRUFBRTtnQkFDekQsTUFBTSxHQUFHLGNBQXdCLENBQUE7YUFDbEM7aUJBQU07Z0JBQ0wsS0FBSyxDQUFDLE9BQU8sQ0FBQyxzQ0FBc0MsQ0FBQyxDQUFBO2dCQUNyRCxPQUFPLENBQUMsSUFBSSxDQUFDLENBQUMsQ0FBQyxDQUFBO2FBQ2hCO1NBQ0Y7UUFFRCxJQUFJLElBQUksS0FBSyxTQUFTLEVBQUU7WUFDdEIsSUFBSSxDQUFDLENBQUMsVUFBVSxDQUFDLENBQUMsUUFBUSxDQUFDLElBQUksQ0FBQyxFQUFFO2dCQUNoQyxLQUFLLENBQUMsT0FBTyxDQUFDLGdCQUFnQixJQUFJLEVBQUUsQ0FBQyxDQUFBO2dCQUNyQyxPQUFPLENBQUMsSUFBSSxDQUFDLENBQUMsQ0FBQyxDQUFBO2FBQ2hCO1lBQ0QsSUFBSSxJQUFJLEtBQUssVUFBVTtnQkFBRSxNQUFNLElBQUEsa0JBQWEsR0FBRSxDQUFBO1lBQzlDLE9BQU07U0FDUDtRQUNELE1BQU0sZUFBZSxHQUFhO1lBQ2hDLEtBQUs7WUFDTCxRQUFRO1lBQ1IsWUFBWTtZQUNaLEtBQUs7WUFDTCxLQUFLO1lBQ0wsT0FBTztTQUNSLENBQUE7UUFDRCxJQUFJLGVBQWUsQ0FBQyxRQUFRLENBQUMsTUFBTSxDQUFDLEVBQUU7WUFDcEMsTUFBTSxLQUFLLENBQUMsTUFBTSxDQUFDLENBQUMsRUFBRSxZQUFZLEVBQUUsVUFBVSxFQUFFLENBQUMsQ0FBQTtTQUNsRDthQUFNO1lBQ0wsTUFBTSxLQUFLLENBQUMsTUFBTSxDQUFDLENBQUMsRUFBRSxZQUFZLEVBQUUsQ0FBQyxDQUFBO1NBQ3RDO0lBQ0gsQ0FBQztDQUNGLENBQUE7QUFFRCxrQkFBZSxPQUFPLENBQUEifQ==
|
|
@@ -75,12 +75,6 @@ There are some utilities that are not included in the Moddable SDK or other plat
|
|
|
75
75
|
|
|
76
76
|
**Supported tools:**
|
|
77
77
|
|
|
78
|
-
[`fontbm`](https://github.com/vladimirgamalyan/fontbm): BMFont compatible, cross-platform (Linux/macOS/Windows) command line bitmap font generator (FreeType2 based render)
|
|
79
|
-
|
|
80
|
-
```
|
|
81
|
-
xs-dev setup --tool fontbm
|
|
82
|
-
```
|
|
83
|
-
|
|
84
78
|
`ejectfix`: not a downloadable tool, rather a environment preference to disable the `DISK NOT EJECTED PROPERLY` notification while working with the nrf52 on MacOS. This will automate the process described by [the Adafruit blog](https://blog.adafruit.com/2021/05/11/how-to-tone-down-macos-big-surs-circuitpy-eject-notifications/):
|
|
85
79
|
|
|
86
80
|
```
|
package/package.json
CHANGED
|
@@ -1,97 +0,0 @@
|
|
|
1
|
-
"use strict";
|
|
2
|
-
var __importDefault = (this && this.__importDefault) || function (mod) {
|
|
3
|
-
return (mod && mod.__esModule) ? mod : { "default": mod };
|
|
4
|
-
};
|
|
5
|
-
Object.defineProperty(exports, "__esModule", { value: true });
|
|
6
|
-
const gluegun_1 = require("gluegun");
|
|
7
|
-
const constants_1 = require("./constants");
|
|
8
|
-
const upsert_1 = __importDefault(require("../patching/upsert"));
|
|
9
|
-
const os_1 = require("os");
|
|
10
|
-
const process_1 = require("process");
|
|
11
|
-
const exec_1 = require("../system/exec");
|
|
12
|
-
const homebrew_1 = require("./homebrew");
|
|
13
|
-
async function default_1() {
|
|
14
|
-
const spinner = gluegun_1.print.spin();
|
|
15
|
-
spinner.start('Beginning setup...');
|
|
16
|
-
const OS = (0, os_1.type)().toLowerCase();
|
|
17
|
-
if (OS !== 'darwin' && OS !== 'linux') {
|
|
18
|
-
gluegun_1.print.error(`OS "${OS}" not supported`);
|
|
19
|
-
(0, process_1.exit)(1);
|
|
20
|
-
}
|
|
21
|
-
const FONTBM_REPO = 'https://github.com/vladimirgamalyan/fontbm.git';
|
|
22
|
-
const FONTBM_DIR = gluegun_1.filesystem.resolve(constants_1.INSTALL_DIR, 'fontbm');
|
|
23
|
-
const FONTBM_TAG = 'v0.5.0';
|
|
24
|
-
// 1. install cmake
|
|
25
|
-
if (gluegun_1.system.which('cmake') === null) {
|
|
26
|
-
if (OS === 'darwin') {
|
|
27
|
-
try {
|
|
28
|
-
await (0, homebrew_1.ensureHomebrew)();
|
|
29
|
-
}
|
|
30
|
-
catch (error) {
|
|
31
|
-
if (error instanceof Error) {
|
|
32
|
-
gluegun_1.print.info(`${error.message} cmake`);
|
|
33
|
-
process.exit(1);
|
|
34
|
-
}
|
|
35
|
-
}
|
|
36
|
-
spinner.start('Cmake required, installing with Homebrew');
|
|
37
|
-
await gluegun_1.system.exec('brew install cmake', { shell: process.env.SHELL });
|
|
38
|
-
spinner.succeed();
|
|
39
|
-
}
|
|
40
|
-
if (OS === 'linux') {
|
|
41
|
-
spinner.start('CMake required, installing with apt');
|
|
42
|
-
await (0, exec_1.execWithSudo)('apt-get install --yes build-essential cmake', {
|
|
43
|
-
stdout: process.stdout,
|
|
44
|
-
});
|
|
45
|
-
spinner.succeed();
|
|
46
|
-
}
|
|
47
|
-
}
|
|
48
|
-
// 2. install freetype
|
|
49
|
-
if (OS === 'darwin') {
|
|
50
|
-
if (gluegun_1.system.which('freetype-config') === null) {
|
|
51
|
-
try {
|
|
52
|
-
await (0, homebrew_1.ensureHomebrew)();
|
|
53
|
-
}
|
|
54
|
-
catch (error) {
|
|
55
|
-
if (error instanceof Error) {
|
|
56
|
-
gluegun_1.print.info(`${error.message} freetype-config`);
|
|
57
|
-
process.exit(1);
|
|
58
|
-
}
|
|
59
|
-
}
|
|
60
|
-
spinner.start('FreeType required, installing with Homebrew');
|
|
61
|
-
await gluegun_1.system.exec('brew install freetype', { shell: process.env.SHELL });
|
|
62
|
-
spinner.succeed();
|
|
63
|
-
}
|
|
64
|
-
}
|
|
65
|
-
if (OS === 'linux') {
|
|
66
|
-
spinner.start('Installing libfreetype-dev');
|
|
67
|
-
await (0, exec_1.execWithSudo)('apt-get install --yes libfreetype-dev', {
|
|
68
|
-
stdout: process.stdout,
|
|
69
|
-
});
|
|
70
|
-
spinner.succeed();
|
|
71
|
-
}
|
|
72
|
-
// 3. clone fontbm
|
|
73
|
-
if (gluegun_1.filesystem.exists(FONTBM_DIR) === false) {
|
|
74
|
-
spinner.start(`Cloning fontbm repo (tag "${FONTBM_TAG}")`);
|
|
75
|
-
await gluegun_1.system.spawn(`git clone ${FONTBM_REPO} --depth 1 --single-branch --branch ${FONTBM_TAG} ${FONTBM_DIR}`);
|
|
76
|
-
spinner.succeed();
|
|
77
|
-
}
|
|
78
|
-
// 4. build fontbm
|
|
79
|
-
spinner.start('Building fontbm');
|
|
80
|
-
await gluegun_1.system.exec('cmake .', {
|
|
81
|
-
cwd: FONTBM_DIR,
|
|
82
|
-
stdout: process.stdout,
|
|
83
|
-
});
|
|
84
|
-
await gluegun_1.system.exec('make', {
|
|
85
|
-
cwd: FONTBM_DIR,
|
|
86
|
-
stdout: process.stdout,
|
|
87
|
-
});
|
|
88
|
-
spinner.succeed();
|
|
89
|
-
// 5. set FONTBM environment variable
|
|
90
|
-
if (process.env.FONTBM === undefined) {
|
|
91
|
-
process.env.FONTBM = `${FONTBM_DIR}/fontbm`;
|
|
92
|
-
await (0, upsert_1.default)(constants_1.EXPORTS_FILE_PATH, `export FONTBM=${process.env.FONTBM}`);
|
|
93
|
-
}
|
|
94
|
-
spinner.succeed('fontbm successfully set up!');
|
|
95
|
-
}
|
|
96
|
-
exports.default = default_1;
|
|
97
|
-
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiZm9udGJtLmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vLi4vc3JjL3Rvb2xib3gvc2V0dXAvZm9udGJtLnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiI7Ozs7O0FBQUEscUNBQW1EO0FBQ25ELDJDQUE0RDtBQUM1RCxnRUFBdUM7QUFDdkMsMkJBQXlDO0FBQ3pDLHFDQUE4QjtBQUM5Qix5Q0FBNkM7QUFDN0MseUNBQTJDO0FBRTVCLEtBQUs7SUFDbEIsTUFBTSxPQUFPLEdBQUcsZUFBSyxDQUFDLElBQUksRUFBRSxDQUFBO0lBQzVCLE9BQU8sQ0FBQyxLQUFLLENBQUMsb0JBQW9CLENBQUMsQ0FBQTtJQUVuQyxNQUFNLEVBQUUsR0FBRyxJQUFBLFNBQVksR0FBRSxDQUFDLFdBQVcsRUFBRSxDQUFBO0lBQ3ZDLElBQUksRUFBRSxLQUFLLFFBQVEsSUFBSSxFQUFFLEtBQUssT0FBTyxFQUFFO1FBQ3JDLGVBQUssQ0FBQyxLQUFLLENBQUMsT0FBTyxFQUFFLGlCQUFpQixDQUFDLENBQUE7UUFDdkMsSUFBQSxjQUFJLEVBQUMsQ0FBQyxDQUFDLENBQUE7S0FDUjtJQUVELE1BQU0sV0FBVyxHQUFHLGdEQUFnRCxDQUFBO0lBQ3BFLE1BQU0sVUFBVSxHQUFHLG9CQUFVLENBQUMsT0FBTyxDQUFDLHVCQUFXLEVBQUUsUUFBUSxDQUFDLENBQUE7SUFDNUQsTUFBTSxVQUFVLEdBQUcsUUFBUSxDQUFBO0lBRTNCLG1CQUFtQjtJQUNuQixJQUFJLGdCQUFNLENBQUMsS0FBSyxDQUFDLE9BQU8sQ0FBQyxLQUFLLElBQUksRUFBRTtRQUNsQyxJQUFJLEVBQUUsS0FBSyxRQUFRLEVBQUU7WUFDbkIsSUFBSTtnQkFDRixNQUFNLElBQUEseUJBQWMsR0FBRSxDQUFBO2FBQ3ZCO1lBQUMsT0FBTyxLQUFjLEVBQUU7Z0JBQ3ZCLElBQUksS0FBSyxZQUFZLEtBQUssRUFBRTtvQkFDMUIsZUFBSyxDQUFDLElBQUksQ0FBQyxHQUFHLEtBQUssQ0FBQyxPQUFPLFFB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
|
|
@@ -1 +0,0 @@
|
|
|
1
|
-
export default function (): Promise<void>;
|