本文主要讲述如何安装mips版本的electron,和上两篇不同的是,此安装方法只需要用户修改一行代码即可完成。
mips架构用户只需要关注本文章的3.2章节
目前用户可以通过此方法安装mips版本的4.1.3,6.1.7,10.1.0版本有效
通过《electron在龙芯平台上本地安装使用和打包(二)》这篇文章的2.1章节中讲到本地安装方法,以此为展开,进行讲述。
准备工作
$ sha256sum electron-v6.1.7-linux-mips64el.zip > SHASUMS256.txt
$ cat SHASUMS256.txt
c4e341ad21983cbc2d70cfeefe1762c39beb513c7b04289e1debc20768dd9c15 electron-v6.1.7-linux-mips64el.zip
更改SHASUMS256.txt为
c4e341ad21983cbc2d70cfeefe1762c39beb513c7b04289e1debc20768dd9c15 *electron-v6.1.7-linux-mips64el.zip
将electron-v6.1.7-linux-mips64el.zip和SHASUMS256.txt放到ftp相应目录下(os/xxx/releases/download/v6.1.7)
一.更改electron-download模块
通过更改electron-download里面的下载链接,将其指向ftp进行下载。
将electron-quick-start_good/node_modules/electron-download拷贝出来
1.1 修改lib/index.js
$ vim lib/index.js
修改前
return process.env.NPM_CONFIG_ELECTRON_MIRROR ||
process.env.npm_config_electron_mirror ||
process.env.npm_package_config_electron_mirror ||
process.env.ELECTRON_MIRROR ||
this.opts.mirror ||
'https://github.com/electron/electron/releases/download/v'
}
修改后
return process.env.NPM_CONFIG_ELECTRON_MIRROR ||
process.env.npm_config_electron_mirror ||
process.env.npm_package_config_electron_mirror ||
process.env.ELECTRON_MIRROR ||
this.opts.mirror ||
'http://ftp.loongnix.org/os/xxx/releases/download/v'
//'https://github.com/electron/electron/releases/download/v'
}
index.js中链接的修改参考如下:
Anatomy of a download URL, in terms of mirrorOptions
:
https://github.com/electron/electron/releases/download/v4.0.4/electron-v4.0.4-linux-x64.zip
| | | |
------------------------------------------------------- -----------------------------
| |
mirror / nightlyMirror | | customFilename
------
||
customDir
1.2 更改package.json
$ vim package.json
修改前
"license": "BSD-3-Clause",
"main": "lib/index.js",
"name": "electron-download",
"repository": {
修改后
"license": "BSD-3-Clause",
"main": "lib/index.js",
"name": "loongson-mips-electron-dl",
"repository": {
1.3 发布
由于之前已经注册过,现在直接登录
$ npm login
loongson@loongson-pc:tmp$ npm login
Username: xxxx001
Password:
Email: (this IS public) xxxx001@mail.cn
Enter one-time password from your authenticator app: 947567
Logged in as sangmeng on https://registry.npmjs.org/.
发布loongson-mips-electron-dl到自己的npm账户上:
loongson@loongson-pc:electron-download$ npm publish --force
npm WARN using --force I sure hope you know what you are doing.
npm notice
npm notice 📦 loongson-mips-electron-dl@0.0.1
npm notice === Tarball Contents ===
npm notice 1.5kB LICENSE
npm notice 723B lib/arch.js
npm notice 333B lib/cli.js
npm notice 9.5kB lib/index.js
npm notice 2.5kB package.json
npm notice 236B CODE_OF_CONDUCT.md
npm notice 455B collaborators.md
npm notice 4.4kB readme.md
npm notice === Tarball Details ===
npm notice name: loongson-mips-electron-dl
npm notice version: 0.0.1
npm notice package size: 7.0 kB
npm notice unpacked size: 19.5 kB
npm notice shasum: 5f1a78665b7f0acabb36d07687e414a7ff4f27e0
npm notice integrity: sha512-GAui2+ZZkAy6j[...]NqI6G2uhZgqYA==
npm notice total files: 8
npm notice
This operation requires a one-time password.
Enter OTP: 354756
+ loongson-mips-electron-dl@0.0.1
注意
此处的name如果修改不当,比如修改为loongson-mips-electron-download,会有如下错误,目前还不知道名字的详细的命令规则:
npm ERR! code E400
npm ERR! 400 Bad Request - PUT https://registry.npmjs.org/loongson-mips-electron-download - Bad Request
二.更改electron模块
将electron-quick-start_good/node_modules/electron拷贝出来
2.1 修改install.js
$ vim install.js
修改前
var download = require('electron-download')
修改后
var download = require('loongson-mips-electron-dl')
2.2 修改package.json
vim package.json
修改前
"dependencies": {
"@types/node": "^10.12.18",
"ectron-download": "^4.1.0",
"extract-zip": "^1.0.3"
},
修改后
"dependencies": {
"@types/node": "^10.12.18",
"loongson-mips-electron-dl": "^0.0.1",
"extract-zip": "^1.0.3"
},
2.3 发布
由于1.3章节已经登录过npm账户,此处不在登录,直接发布loongson-mips-electron到自己的npm账户上:
$ npm publish
npm notice
npm notice 📦 loongson-mips-electron@6.1.7
npm notice === Tarball Contents ===
npm notice 1.1kB LICENSE
npm notice 481B cli.js
npm notice 591B index.js
npm notice 1.9kB install.js
npm notice 1.9kB package.json
npm notice 4.7kB README.md
npm notice 456.2kB electron.d.ts
npm notice === Tarball Details ===
npm notice name: loongson-mips-electron
npm notice version: 6.1.7
npm notice package size: 85.0 kB
npm notice unpacked size: 466.9 kB
npm notice shasum: 25069d8194da8a4f9407a336ee3f009d5d38617d
npm notice integrity: sha512-6Rjg4G9Rr6w4X[...]a713PhhbgbW+w==
npm notice total files: 7
npm notice
This operation requires a one-time password.
Enter OTP: 007750
+ loongson-mips-electron@6.1.7
发布完成后可以在www.npmjs.com上查看自己发布的包
三.验证
3.1 重新clone一份electron-quick-start
$ git clone https://github.com/electron/electron-quick-start.git
正克隆到 'electron-quick-start'...
remote: Enumerating objects: 5, done.
remote: Counting objects: 100% (5/5), done.
remote: Compressing objects: 100% (5/5), done.
remote: Total 870 (delta 0), reused 0 (delta 0), pack-reused 865
接收对象中: 100% (870/870), 545.27 KiB | 12.00 KiB/s, 完成.
处理 delta 中: 100% (484/484), 完成.
3.2 修改package.json
$ cd electron-quick-start
$ vim package.json
修改前:
"author": "GitHub",
"license": "CC0-1.0",
"devDependencies": {
"electron": "^11.2.1"
}
修改后:
"author": "GitHub",
"license": "CC0-1.0",
"devDependencies": {
"loongson-mips-electron": "^6.1.7"
}
3.3 安装
$ npm install loongson-mips-electron@6.1.7
npm WARN deprecated request@2.88.2: request has been deprecated, see https://github.com/request/request/issues/3142
npm WARN deprecated har-validator@5.1.5: this library is no longer supported
> loongson-mips-electron@6.1.7 postinstall /home/loongson/tmp/electron-quick-start/node_modules/loongson-mips-electron
> node install.js
+ loongson-mips-electron@6.1.7
added 143 packages from 145 contributors and audited 143 packages in 39.845s
4 packages are looking for funding
run `npm fund` for details
found 0 vulnerabilities
安装成功,使用npm start可以弹出hello,world页面
$ npm start
注意
npm install 时候如果报以下错:
npm ERR! Unexpected token < in JSON at position 0 while parsing near ’
npm ERR! <scrip…’
解决方法:
$ npm cache clean --force
$ npm config set registry https://registry.npmjs.org
四.取消自己发布的包
如果对自己发布的包不满意,可以取消
参考npm官方文档
$ npm unpublish electron-mips-loongson -f
npm WARN using --force I sure hope you know what you are doing.
This operation requires a one-time password.
Enter OTP: 279436
- electron-mips-loongson