mips版本electron在龙芯平台上的安装

本文主要讲述如何安装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上查看自己发布的包
npm

三.验证

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 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
  • 0
    点赞
  • 2
    收藏
    觉得还不错? 一键收藏
  • 2
    评论
评论 2
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值