mirror of
https://gitee.com/ineo6/homebrew-install.git
synced 2025-04-05 06:12:44 +08:00
feat: 添加站点文档
This commit is contained in:
parent
b6ba2389a7
commit
6cf7c394a8
10
.dumi/theme/builtins/Center.less
Normal file
10
.dumi/theme/builtins/Center.less
Normal file
@ -0,0 +1,10 @@
|
||||
@import (reference) '../style/variables.less';
|
||||
|
||||
.@{prefix}-center {
|
||||
text-align: center;
|
||||
margin: 16px 0;
|
||||
|
||||
h2 > a::after {
|
||||
display: none !important;
|
||||
}
|
||||
}
|
6
.dumi/theme/builtins/Center.tsx
Normal file
6
.dumi/theme/builtins/Center.tsx
Normal file
@ -0,0 +1,6 @@
|
||||
import React from 'react';
|
||||
import './Center.less';
|
||||
|
||||
export default (props: any) => (
|
||||
<div className="__dumi-default-center" {...props} />
|
||||
);
|
128
.dumi/theme/layout.tsx
Normal file
128
.dumi/theme/layout.tsx
Normal file
@ -0,0 +1,128 @@
|
||||
import React, { useContext, useState, useEffect } from 'react';
|
||||
import { IRouteComponentProps } from '@umijs/types';
|
||||
import { context, Link } from 'dumi/theme';
|
||||
import Navbar from 'dumi-theme-default/src/components/Navbar';
|
||||
import SideMenu from 'dumi-theme-default/src/components/SideMenu';
|
||||
import SlugList from 'dumi-theme-default/src/components/SlugList';
|
||||
import SearchBar from 'dumi-theme-default/src/components/SearchBar';
|
||||
import './style/layout.less';
|
||||
|
||||
const Hero = hero => (
|
||||
<>
|
||||
<div className="__dumi-default-layout-hero">
|
||||
{hero.image && <img src={hero.image} />}
|
||||
<h1>{hero.title}</h1>
|
||||
<div dangerouslySetInnerHTML={{ __html: hero.desc }} />
|
||||
{hero.actions &&
|
||||
hero.actions.map(action => (
|
||||
<Link to={action.link} key={action.text}>
|
||||
<button type="button">{action.text}</button>
|
||||
</Link>
|
||||
))}
|
||||
</div>
|
||||
</>
|
||||
);
|
||||
|
||||
const Features = features => (
|
||||
<div className="__dumi-default-layout-features">
|
||||
{features.map(feat => (
|
||||
<dl
|
||||
key={feat.title}
|
||||
style={{ backgroundImage: feat.icon ? `url(${feat.icon})` : undefined }}
|
||||
>
|
||||
{feat.link ? (
|
||||
<Link to={feat.link}>
|
||||
<dt>{feat.title}</dt>
|
||||
</Link>
|
||||
) : (
|
||||
<dt>{feat.title}</dt>
|
||||
)}
|
||||
<dd dangerouslySetInnerHTML={{ __html: feat.desc }} />
|
||||
</dl>
|
||||
))}
|
||||
</div>
|
||||
);
|
||||
|
||||
const Layout: React.FC<IRouteComponentProps> = ({ children, location }) => {
|
||||
const {
|
||||
config: { mode, repository },
|
||||
meta,
|
||||
locale,
|
||||
} = useContext(context);
|
||||
const { url: repoUrl, branch, platform } = repository;
|
||||
const [menuCollapsed, setMenuCollapsed] = useState<boolean>(true);
|
||||
const isSiteMode = mode === 'site';
|
||||
const showHero = isSiteMode && meta.hero;
|
||||
const showFeatures = isSiteMode && meta.features;
|
||||
const showSideMenu =
|
||||
meta.sidemenu !== false && !showHero && !showFeatures && !meta.gapless;
|
||||
const showSlugs =
|
||||
!showHero &&
|
||||
!showFeatures &&
|
||||
Boolean(meta.slugs?.length) &&
|
||||
(meta.toc === 'content' || meta.toc === undefined) &&
|
||||
!meta.gapless;
|
||||
const isCN = /^zh|cn$/i.test(locale);
|
||||
const updatedTime: any = new Date(meta.updatedTime).toLocaleString([], {
|
||||
hour12: false,
|
||||
});
|
||||
const repoPlatform =
|
||||
{ github: 'GitHub', gitlab: 'GitLab' }[
|
||||
(repoUrl || '').match(/(github|gitlab)/)?.[1] || 'nothing'
|
||||
] || platform;
|
||||
|
||||
return (
|
||||
<div
|
||||
className="__dumi-default-layout"
|
||||
data-route={location.pathname}
|
||||
data-show-sidemenu={String(showSideMenu)}
|
||||
data-show-slugs={String(showSlugs)}
|
||||
data-site-mode={isSiteMode}
|
||||
data-gapless={String(!!meta.gapless)}
|
||||
onClick={() => {
|
||||
if (menuCollapsed) return;
|
||||
setMenuCollapsed(true);
|
||||
}}
|
||||
>
|
||||
<Navbar
|
||||
location={location}
|
||||
navPrefix={<SearchBar />}
|
||||
onMobileMenuClick={ev => {
|
||||
setMenuCollapsed(val => !val);
|
||||
ev.stopPropagation();
|
||||
}}
|
||||
/>
|
||||
<SideMenu mobileMenuCollapsed={menuCollapsed} location={location} />
|
||||
{showSlugs && (
|
||||
<SlugList slugs={meta.slugs} className="__dumi-default-layout-toc" />
|
||||
)}
|
||||
{showHero && Hero(meta.hero)}
|
||||
{showFeatures && Features(meta.features)}
|
||||
<div className="__dumi-default-layout-content">
|
||||
{children}
|
||||
{!showHero && !showFeatures && meta.filePath && !meta.gapless && (
|
||||
<div className="__dumi-default-layout-footer-meta">
|
||||
{repoPlatform && (
|
||||
<Link to={`${repoUrl}/edit/${branch}/${meta.filePath}`}>
|
||||
{isCN
|
||||
? `在 ${repoPlatform} 上编辑此页`
|
||||
: `Edit this doc on ${repoPlatform}`}
|
||||
</Link>
|
||||
)}
|
||||
<span data-updated-text={isCN ? '最后更新时间:' : 'Last update: '}>
|
||||
{updatedTime}
|
||||
</span>
|
||||
</div>
|
||||
)}
|
||||
{(showHero || showFeatures) && meta.footer && (
|
||||
<div
|
||||
className="__dumi-default-layout-footer"
|
||||
dangerouslySetInnerHTML={{ __html: meta.footer }}
|
||||
/>
|
||||
)}
|
||||
</div>
|
||||
</div>
|
||||
);
|
||||
};
|
||||
|
||||
export default Layout;
|
316
.dumi/theme/style/layout.less
Normal file
316
.dumi/theme/style/layout.less
Normal file
@ -0,0 +1,316 @@
|
||||
@import './markdown.less';
|
||||
@import './variables.less';
|
||||
|
||||
@s-toc-width: 136px;
|
||||
|
||||
body {
|
||||
margin: 0;
|
||||
font-family: -apple-system, BlinkMacSystemFont, Segoe UI, PingFang SC,
|
||||
Hiragino Sans GB, Microsoft YaHei, Helvetica Neue, Helvetica, Arial,
|
||||
sans-serif, Apple Color Emoji, Segoe UI Emoji, Segoe UI Symbol;
|
||||
font-variant: tabular-nums;
|
||||
font-feature-settings: 'tnum';
|
||||
}
|
||||
|
||||
.@{prefix}-layout {
|
||||
box-sizing: border-box;
|
||||
min-height: 100vh;
|
||||
padding: 16px (@s-content-margin + @s-toc-width) 50px @s-menu-width +
|
||||
@s-content-margin;
|
||||
|
||||
@media @mobile {
|
||||
padding-top: 66px !important;
|
||||
padding-left: 16px !important;
|
||||
padding-right: 16px !important;
|
||||
}
|
||||
|
||||
&[data-gapless='true'] {
|
||||
padding-top: @s-nav-height !important;
|
||||
padding-right: 0 !important;
|
||||
padding-left: 0 !important;
|
||||
padding-bottom: 0;
|
||||
|
||||
@media @mobile {
|
||||
padding-top: @s-mobile-nav-height !important;
|
||||
}
|
||||
}
|
||||
|
||||
&[data-show-sidemenu='false'] {
|
||||
padding-left: @s-content-margin;
|
||||
}
|
||||
|
||||
&[data-show-slugs='false'] {
|
||||
padding-right: @s-content-margin;
|
||||
}
|
||||
|
||||
&[data-site-mode='true'] {
|
||||
padding-top: @s-nav-height + 50px;
|
||||
|
||||
&[data-show-sidemenu='true'] {
|
||||
padding-left: @s-site-menu-width + 50px;
|
||||
}
|
||||
|
||||
&[data-show-slugs='true'] {
|
||||
padding-right: @s-content-margin + @s-toc-width + 14;
|
||||
}
|
||||
|
||||
.@{prefix}-layout-content > .markdown:first-child > *:first-child {
|
||||
margin-top: 0;
|
||||
}
|
||||
|
||||
.@{prefix}-layout-toc {
|
||||
top: 114px;
|
||||
max-height: calc(90vh - 144px);
|
||||
}
|
||||
}
|
||||
|
||||
&-hero {
|
||||
margin: -50px -58px 0;
|
||||
padding: 100px 0;
|
||||
text-align: center;
|
||||
background-color: #f5f6f8;
|
||||
|
||||
@media @mobile {
|
||||
margin: -16px -16px 0;
|
||||
padding: 48px 0;
|
||||
}
|
||||
|
||||
img {
|
||||
max-width: 100%;
|
||||
max-height: 128px;
|
||||
margin-bottom: 1rem;
|
||||
}
|
||||
|
||||
h1 {
|
||||
margin: 0 0 16px;
|
||||
font-size: 48px;
|
||||
font-weight: 600;
|
||||
line-height: 56px;
|
||||
color: #080e29;
|
||||
|
||||
+ div {
|
||||
margin: 16px 0 32px;
|
||||
opacity: 0.78;
|
||||
|
||||
.markdown {
|
||||
font-size: 16px;
|
||||
}
|
||||
}
|
||||
}
|
||||
|
||||
button {
|
||||
margin-right: 16px;
|
||||
padding: 0 32px;
|
||||
height: 44px;
|
||||
color: @c-primary;
|
||||
font-size: 16px;
|
||||
background: transparent;
|
||||
border: 1px solid @c-primary;
|
||||
border-radius: 22px;
|
||||
box-sizing: border-box;
|
||||
cursor: pointer;
|
||||
outline: none;
|
||||
transition: all 0.3s;
|
||||
|
||||
&:hover {
|
||||
opacity: 0.8;
|
||||
}
|
||||
|
||||
&:active {
|
||||
opacity: 0.9;
|
||||
}
|
||||
}
|
||||
|
||||
a:last-child button {
|
||||
margin-right: 0;
|
||||
color: #fff;
|
||||
background: @c-primary;
|
||||
}
|
||||
}
|
||||
|
||||
&-features {
|
||||
display: grid;
|
||||
grid-template-columns: repeat(3, 1fr);
|
||||
grid-column-gap: 96px;
|
||||
grid-row-gap: 56px;
|
||||
padding: 72px 0;
|
||||
|
||||
> dl {
|
||||
flex: 1;
|
||||
margin: 0;
|
||||
text-align: center;
|
||||
background: no-repeat center top / auto 48px;
|
||||
|
||||
&[style*='background-image'] {
|
||||
padding-top: 64px;
|
||||
}
|
||||
|
||||
dt {
|
||||
margin-bottom: 12px;
|
||||
font-size: 20px;
|
||||
line-height: 1;
|
||||
color: @c-heading;
|
||||
}
|
||||
|
||||
a dt {
|
||||
color: @c-link;
|
||||
transition: opacity 0.2s;
|
||||
&:hover {
|
||||
opacity: 0.7;
|
||||
text-decoration: underline;
|
||||
}
|
||||
|
||||
&:active {
|
||||
opacity: 0.9;
|
||||
}
|
||||
}
|
||||
|
||||
dd {
|
||||
margin: 0;
|
||||
|
||||
.markdown {
|
||||
color: @c-secondary;
|
||||
font-size: 14px;
|
||||
line-height: 22px;
|
||||
|
||||
> p:first-child {
|
||||
margin-top: 0;
|
||||
}
|
||||
|
||||
> p:last-child {
|
||||
margin-bottom: 0;
|
||||
}
|
||||
}
|
||||
}
|
||||
}
|
||||
|
||||
@media @mobile {
|
||||
display: block;
|
||||
padding: 40px 0;
|
||||
|
||||
> dl {
|
||||
text-align: left;
|
||||
background-position: left top;
|
||||
|
||||
&[style*='background-image'] {
|
||||
padding: 0 0 0 60px;
|
||||
}
|
||||
|
||||
+ dl {
|
||||
margin-top: 32px;
|
||||
}
|
||||
}
|
||||
}
|
||||
}
|
||||
|
||||
&-features,
|
||||
&-features + &-content,
|
||||
&-hero + &-content {
|
||||
margin-left: auto;
|
||||
margin-right: auto;
|
||||
max-width: 960px;
|
||||
}
|
||||
|
||||
&-toc {
|
||||
list-style: none;
|
||||
position: fixed;
|
||||
z-index: 10;
|
||||
top: 50px;
|
||||
right: 0;
|
||||
width: @s-toc-width;
|
||||
max-height: calc(90vh - 80px);
|
||||
margin: 0;
|
||||
padding: 0 24px 0 0;
|
||||
background-color: #fff;
|
||||
box-shadow: 0 0 16px 16px #fff;
|
||||
box-sizing: content-box;
|
||||
overflow: auto;
|
||||
|
||||
@media @mobile {
|
||||
display: none;
|
||||
}
|
||||
|
||||
li {
|
||||
position: relative;
|
||||
margin: 0;
|
||||
padding: 4px 0 4px 6px;
|
||||
text-indent: 12px;
|
||||
font-size: 13px;
|
||||
line-height: 1.40625;
|
||||
white-space: nowrap;
|
||||
text-overflow: ellipsis;
|
||||
overflow: hidden;
|
||||
|
||||
a {
|
||||
color: @c-text;
|
||||
text-decoration: none;
|
||||
|
||||
&::before {
|
||||
content: '';
|
||||
position: absolute;
|
||||
top: 0;
|
||||
left: 0;
|
||||
bottom: 0;
|
||||
display: inline-block;
|
||||
width: 2px;
|
||||
background: @c-border;
|
||||
}
|
||||
|
||||
&:hover {
|
||||
color: lighten(@c-primary, 5%);
|
||||
}
|
||||
|
||||
&:active {
|
||||
color: lighten(@c-primary, 3%);
|
||||
}
|
||||
|
||||
&.active {
|
||||
color: @c-primary;
|
||||
|
||||
&::before {
|
||||
background: @c-primary;
|
||||
}
|
||||
}
|
||||
}
|
||||
}
|
||||
}
|
||||
|
||||
&-footer-meta {
|
||||
margin-top: 40px;
|
||||
padding-top: 24px;
|
||||
display: flex;
|
||||
color: @c-secondary;
|
||||
font-size: 14px;
|
||||
justify-content: space-between;
|
||||
border-top: 1px solid @c-border;
|
||||
|
||||
@media only screen and (max-width: 960px) {
|
||||
display: block;
|
||||
}
|
||||
|
||||
> a {
|
||||
margin-bottom: 4px;
|
||||
display: block;
|
||||
color: @c-primary;
|
||||
text-decoration: none;
|
||||
}
|
||||
|
||||
> span:last-child {
|
||||
&::before {
|
||||
content: attr(data-updated-text);
|
||||
color: @c-primary;
|
||||
}
|
||||
}
|
||||
}
|
||||
}
|
||||
|
||||
.__dumi-default-layout-footer {
|
||||
margin: 72px 0 -32px;
|
||||
padding-top: 24px;
|
||||
border-top: 1px solid @c-border;
|
||||
text-align: center;
|
||||
|
||||
.markdown {
|
||||
color: #b0b1ba;
|
||||
}
|
||||
}
|
196
.dumi/theme/style/markdown.less
Normal file
196
.dumi/theme/style/markdown.less
Normal file
@ -0,0 +1,196 @@
|
||||
@import (reference) './variables.less';
|
||||
|
||||
.markdown {
|
||||
color: @c-text;
|
||||
font-size: 15px;
|
||||
line-height: 1.60625;
|
||||
|
||||
&:not(:first-child):empty {
|
||||
min-height: 32px;
|
||||
}
|
||||
|
||||
// titles
|
||||
h1,
|
||||
h2,
|
||||
h3,
|
||||
h4,
|
||||
h5,
|
||||
h6 {
|
||||
margin: 42px 0 18px;
|
||||
color: @c-heading;
|
||||
font-weight: 500;
|
||||
line-height: 1.40625;
|
||||
|
||||
// anchor link
|
||||
&:hover > a[aria-hidden] {
|
||||
float: left;
|
||||
margin-top: 0.06em;
|
||||
margin-left: -20px;
|
||||
width: 20px;
|
||||
padding-right: 4px;
|
||||
line-height: 1;
|
||||
box-sizing: border-box;
|
||||
|
||||
@media @mobile {
|
||||
width: 14px;
|
||||
margin-left: -14px;
|
||||
}
|
||||
|
||||
&::after {
|
||||
content: '#';
|
||||
display: inline-block;
|
||||
vertical-align: middle;
|
||||
font-size: 20px;
|
||||
}
|
||||
|
||||
span {
|
||||
display: none;
|
||||
}
|
||||
}
|
||||
|
||||
+ h1,
|
||||
+ h2,
|
||||
+ h3,
|
||||
+ h4,
|
||||
+ h5,
|
||||
+ h6 {
|
||||
margin-top: 16px;
|
||||
}
|
||||
}
|
||||
|
||||
h1 {
|
||||
margin-top: 48px;
|
||||
margin-bottom: 32px;
|
||||
font-size: 32px;
|
||||
}
|
||||
|
||||
h2 {
|
||||
font-size: 24px;
|
||||
}
|
||||
|
||||
h3 {
|
||||
font-size: 20px;
|
||||
}
|
||||
|
||||
h4 {
|
||||
font-size: 18px;
|
||||
}
|
||||
|
||||
h5 {
|
||||
font-size: 16px;
|
||||
}
|
||||
|
||||
h6 {
|
||||
font-size: 14px;
|
||||
}
|
||||
|
||||
// paragraph
|
||||
p {
|
||||
margin: 16px 0;
|
||||
}
|
||||
|
||||
// inline code
|
||||
*:not(pre) code {
|
||||
padding: 2px 5px;
|
||||
color: #d56161;
|
||||
background: darken(@c-light-bg, 1%);
|
||||
}
|
||||
|
||||
code {
|
||||
font-family: Consolas, Monaco, 'Andale Mono', 'Ubuntu Mono', monospace;
|
||||
}
|
||||
|
||||
// code block
|
||||
pre {
|
||||
font-size: 14px;
|
||||
background: darken(@c-light-bg, 1%);
|
||||
|
||||
&:not([class^='language-']) {
|
||||
padding: 1em;
|
||||
}
|
||||
}
|
||||
|
||||
// horizontal line
|
||||
hr {
|
||||
margin: 16px 0;
|
||||
border: 0;
|
||||
border-top: 1px solid @c-border;
|
||||
}
|
||||
|
||||
// blockquote
|
||||
blockquote {
|
||||
margin: 16px 0;
|
||||
padding: 0 24px;
|
||||
color: fadeout(@c-text, 30%);
|
||||
border-left: 4px solid @c-border;
|
||||
overflow: hidden;
|
||||
}
|
||||
|
||||
// list
|
||||
ul,
|
||||
ol {
|
||||
margin: 8px 0 8px 32px;
|
||||
padding: 0;
|
||||
|
||||
li {
|
||||
margin-bottom: 4px;
|
||||
}
|
||||
}
|
||||
|
||||
// table
|
||||
table {
|
||||
width: 100%;
|
||||
border-collapse: collapse;
|
||||
border: 1px solid @c-border;
|
||||
|
||||
th,
|
||||
td {
|
||||
padding: 10px 24px;
|
||||
border: 1px solid @c-border;
|
||||
}
|
||||
|
||||
th {
|
||||
font-weight: 600;
|
||||
background: @c-light-bg;
|
||||
}
|
||||
|
||||
td:first-child {
|
||||
font-weight: 500;
|
||||
}
|
||||
|
||||
a {
|
||||
svg {
|
||||
display: none;
|
||||
}
|
||||
}
|
||||
}
|
||||
|
||||
// links
|
||||
a {
|
||||
color: @c-link;
|
||||
text-decoration: none;
|
||||
transition: opacity 0.2s;
|
||||
outline: none;
|
||||
|
||||
&:hover {
|
||||
opacity: 0.7;
|
||||
text-decoration: underline;
|
||||
}
|
||||
|
||||
&:active {
|
||||
opacity: 0.9;
|
||||
}
|
||||
}
|
||||
|
||||
// images
|
||||
img {
|
||||
max-width: 100%;
|
||||
}
|
||||
}
|
||||
|
||||
.@{prefix} {
|
||||
&-external-link-icon {
|
||||
vertical-align: -0.155em;
|
||||
margin-left: 2px;
|
||||
}
|
||||
}
|
26
.dumi/theme/style/variables.less
Normal file
26
.dumi/theme/style/variables.less
Normal file
@ -0,0 +1,26 @@
|
||||
/* 颜色表 */
|
||||
@c-primary: #4569d4;
|
||||
@c-heading: #454d64;
|
||||
@c-text: #454d64;
|
||||
@c-secondary: #717484;
|
||||
@c-link: @c-primary;
|
||||
@c-border: #ebedf1;
|
||||
@c-light-bg: #f9fafb;
|
||||
|
||||
/* 尺寸表 */
|
||||
@s-nav-height: 64px;
|
||||
@s-mobile-nav-height: 50px;
|
||||
@s-menu-width: 260px;
|
||||
@s-site-menu-width: 300px;
|
||||
@s-menu-mobile-width: 240px;
|
||||
@s-content-margin: 58px;
|
||||
|
||||
@img-logo: 'data:image/png;base64,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';
|
||||
@prefix: __dumi-default;
|
||||
@mobile: ~'only screen and (max-width: 767px)';
|
||||
@desktop: ~'only screen and (min-width: 768px)';
|
||||
@icons: 'data:image/png;base64,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';
|
||||
|
||||
.@{prefix}-icon {
|
||||
background: url(@icons) no-repeat ~'0 0/230px auto';
|
||||
}
|
@ -8,3 +8,9 @@ indent_size = 2
|
||||
indent_style = space
|
||||
insert_final_newline = true
|
||||
trim_trailing_whitespace = true
|
||||
|
||||
[*.md]
|
||||
trim_trailing_whitespace = false
|
||||
|
||||
[Makefile]
|
||||
indent_style = tab
|
||||
|
4
.fatherrc.ts
Normal file
4
.fatherrc.ts
Normal file
@ -0,0 +1,4 @@
|
||||
export default {
|
||||
esm: 'rollup',
|
||||
cjs: 'rollup',
|
||||
};
|
24
.gitignore
vendored
24
.gitignore
vendored
@ -1 +1,23 @@
|
||||
/node_modules/
|
||||
# See https://help.github.com/articles/ignoring-files/ for more about ignoring files.
|
||||
|
||||
# dependencies
|
||||
/node_modules
|
||||
/npm-debug.log*
|
||||
/yarn-error.log
|
||||
/yarn.lock
|
||||
/package-lock.json
|
||||
|
||||
# production
|
||||
/dist
|
||||
|
||||
# misc
|
||||
.DS_Store
|
||||
|
||||
# umi
|
||||
.umi
|
||||
.umi-production
|
||||
.env.local
|
||||
|
||||
# ide
|
||||
/.vscode
|
||||
/.idea
|
||||
|
6
.prettierignore
Normal file
6
.prettierignore
Normal file
@ -0,0 +1,6 @@
|
||||
**/*.svg
|
||||
**/*.ejs
|
||||
**/*.html
|
||||
package.json
|
||||
.umi
|
||||
.umi-production
|
11
.prettierrc
Normal file
11
.prettierrc
Normal file
@ -0,0 +1,11 @@
|
||||
{
|
||||
"singleQuote": true,
|
||||
"trailingComma": "all",
|
||||
"printWidth": 80,
|
||||
"overrides": [
|
||||
{
|
||||
"files": ".prettierrc",
|
||||
"options": { "parser": "json" }
|
||||
}
|
||||
]
|
||||
}
|
46
.umirc.ts
Normal file
46
.umirc.ts
Normal file
@ -0,0 +1,46 @@
|
||||
import { defineConfig } from 'dumi';
|
||||
|
||||
export default defineConfig({
|
||||
title: 'Homebrew',
|
||||
mode: 'site',
|
||||
logo: '/images/homebrew-256x256.png',
|
||||
favicon: '/favicon.ico',
|
||||
locales: [['zh-CN', '中文']],
|
||||
navs: [
|
||||
null,
|
||||
{ title: 'GitHub', path: 'https://github.com/ineo6/homebrew-install' },
|
||||
],
|
||||
menus: {
|
||||
'/guide': [
|
||||
{
|
||||
title: '介 绍',
|
||||
children: ['/guide', '/guide/how-it-works', '/guide/start'],
|
||||
},
|
||||
{
|
||||
title: 'M1芯片 ',
|
||||
path: '/guide/m1/',
|
||||
},
|
||||
{
|
||||
title: 'FAQ',
|
||||
path: '/guide/faq/',
|
||||
},
|
||||
],
|
||||
},
|
||||
analytics: {
|
||||
ga: 'G-K8PPBR74RE',
|
||||
baidu: 'be934bce3f81621badc0bb5b581ab622',
|
||||
},
|
||||
sitemap: {
|
||||
hostname: 'https://brew.idayer.com',
|
||||
},
|
||||
ssr: {
|
||||
// 更多配置
|
||||
// forceInitial: false,
|
||||
// removeWindowInitialProps: false
|
||||
// devServerRender: true,
|
||||
// mode: 'string',
|
||||
// staticMarkup: false,
|
||||
},
|
||||
exportStatic: {},
|
||||
// more config: https://d.umijs.org/config
|
||||
});
|
218
README.md
218
README.md
@ -1,211 +1,25 @@
|
||||
# Homebrew安装、设置镜像教程
|
||||
# Homebrew 安装指南
|
||||
|
||||
[](https://github.com/ineo6/homebrew-install/actions)
|
||||
<a href="https://github.com/ineo6/homebrew-install/actions"><img alt="Gitter" src="https://github.com/ineo6/homebrew-install/workflows/GitHub Actions CI/badge.svg" /></a>
|
||||
|
||||
`Homebrew`是一款包管理工具,目前支持`macOS`和`linux`系统。主要有四个部分组成: `brew`、`homebrew-core` 、`homebrew-cask`、`homebrew-bottles`。
|
||||
## 用法 & 指南
|
||||
|
||||
| 名称 | 说明 |
|
||||
| --- | --- |
|
||||
| brew | Homebrew 源代码仓库 |
|
||||
| homebrew-core | Homebrew 核心源 |
|
||||
| homebrew-cask | 提供 macOS 应用和大型二进制文件的安装 |
|
||||
| homebrew-bottles | 预编译二进制软件包 |
|
||||
```shell
|
||||
/bin/bash -c "$(curl -fsSL https://cdn.jsdelivr.net/gh/ineo6/homebrew-install/install.sh)"
|
||||
```
|
||||
|
||||
### 沟通反馈
|
||||
强烈建议按照教程处理,详情请访问 [文档主页](https://brew.idayer.com/) 。
|
||||
|
||||
如果文档无法访问,请查阅备用地址:
|
||||
|
||||
- [mac 下镜像飞速安装 Homebrew 教程](https://zhuanlan.zhihu.com/p/90508170)
|
||||
- [M1 芯片 Mac 上 Homebrew 安装教程](https://zhuanlan.zhihu.com/p/341831809)
|
||||
|
||||
## 沟通反馈
|
||||
|
||||
欢迎加入微信群,获得最新动态。
|
||||
|
||||

|
||||
|
||||
文章也可以到[知乎](https://zhuanlan.zhihu.com/p/90508170)查阅。
|
||||
|
||||
<h2 id='part1'>1. 脚本说明</h2>
|
||||
|
||||
**2020年12月14日更新:升级到shell脚本安装方式。**
|
||||
|
||||
`Homebrew`默认安装脚本:
|
||||
|
||||
```sh
|
||||
/bin/bash -c "$(curl -fsSL https://raw.githubusercontent.com/Homebrew/install/HEAD/install.sh)"
|
||||
```
|
||||
|
||||
如果你等待一段时间之后遇到下面提示,就说明无法访问官方脚本地址:
|
||||
|
||||
```sh
|
||||
curl: (7) Failed to connect to raw.githubusercontent.com port 443: Operation timed out
|
||||
```
|
||||
|
||||
请按照下面 [安装说明](#part2) 步骤执行。
|
||||
|
||||
安装使用到的脚本源码在此 [homebrew-install](https://github.com/ineo6/homebrew-install) 。
|
||||
|
||||
> 官方脚本无法使用的原因是`raw.githubusercontent.com`访问很不稳定,我上面提供的方案里是采用了`jsdelivr CDN`加速访问。
|
||||
>
|
||||
> 另外也可以采用写入`hosts`的方式,可以一定程度解决`GitHub`资源无法访问的问题,我也写了一篇操作文章,有需要可以阅读下。
|
||||
|
||||
[解决GitHub网页githubusercontent地址无法访问问题
|
||||
](http://idayer.com/speed-github-githubusercontent-page-with-hosts/)
|
||||
|
||||
<h2 id='part2'>2. 安装说明</h2>
|
||||
|
||||
提前设置`homebrew-core`镜像源并执行:
|
||||
|
||||
```sh
|
||||
# 中科大
|
||||
HOMEBREW_CORE_GIT_REMOTE=https://mirrors.ustc.edu.cn/homebrew-core.git
|
||||
|
||||
/bin/bash -c "$(curl -fsSL https://cdn.jsdelivr.net/gh/ineo6/homebrew-install/install.sh)"
|
||||
```
|
||||
|
||||
如果命令执行中卡在下面信息(如提示有差异,请反馈给我):
|
||||
|
||||
```
|
||||
==> Tapping homebrew/core
|
||||
Cloning into '/usr/local/Homebrew/Library/Taps/homebrew/homebrew-core'...
|
||||
```
|
||||
|
||||
请`Control + C`中断脚本执行如下命令:
|
||||
|
||||
```sh
|
||||
cd "$(brew --repo)/Library/Taps/"
|
||||
mkdir homebrew && cd homebrew
|
||||
git clone git://mirrors.ustc.edu.cn/homebrew-core.git
|
||||
```
|
||||
|
||||
**`cask` 同样也有安装失败或者卡住的问题,解决方法也是一样:**
|
||||
|
||||
```shell
|
||||
cd "$(brew --repo)/Library/Taps/"
|
||||
cd homebrew
|
||||
git clone https://mirrors.ustc.edu.cn/homebrew-cask.git
|
||||
```
|
||||
|
||||
成功执行之后继续执行前文的安装命令:
|
||||
|
||||
```sh
|
||||
/bin/bash -c "$(curl -fsSL https://cdn.jsdelivr.net/gh/ineo6/homebrew-install/install.sh)"
|
||||
```
|
||||
|
||||
最后看到`==> Installation successful!`就说明安装成功了。
|
||||
|
||||
最最后更新下:
|
||||
|
||||
```sh
|
||||
brew update
|
||||
```
|
||||
|
||||
<h2 id='part3'>3. 设置镜像</h2>
|
||||
|
||||
`brew`、`homebrew/core`是必备项目,`homebrew/cask`、`homebrew/bottles`按需设置。
|
||||
|
||||
通过 `brew config` 命令可以查看相关配置信息。
|
||||
|
||||
### 3.1 中科大源
|
||||
|
||||
```sh
|
||||
git -C "$(brew --repo)" remote set-url origin https://mirrors.ustc.edu.cn/brew.git
|
||||
|
||||
git -C "$(brew --repo homebrew/core)" remote set-url origin https://mirrors.ustc.edu.cn/homebrew-core.git
|
||||
|
||||
git -C "$(brew --repo homebrew/cask)" remote set-url origin https://mirrors.ustc.edu.cn/homebrew-cask.git
|
||||
|
||||
brew update
|
||||
|
||||
# 长期替换homebrew-bottles
|
||||
echo 'export HOMEBREW_BOTTLE_DOMAIN=https://mirrors.ustc.edu.cn/homebrew-bottles' >> ~/.bash_profile
|
||||
source ~/.bash_profile
|
||||
```
|
||||
|
||||
注意`bottles`可以临时设置,在终端执行下面命令:
|
||||
|
||||
```sh
|
||||
export HOMEBREW_BOTTLE_DOMAIN=https://mirrors.ustc.edu.cn/homebrew-bottles
|
||||
```
|
||||
|
||||
### 3.2 清华大学源
|
||||
|
||||
```sh
|
||||
git -C "$(brew --repo)" remote set-url origin https://mirrors.tuna.tsinghua.edu.cn/git/homebrew/brew.git
|
||||
|
||||
git -C "$(brew --repo homebrew/core)" remote set-url origin https://mirrors.tuna.tsinghua.edu.cn/git/homebrew/homebrew-core.git
|
||||
|
||||
git -C "$(brew --repo homebrew/cask)" remote set-url origin https://mirrors.tuna.tsinghua.edu.cn/git/homebrew/homebrew-cask.git
|
||||
|
||||
brew update
|
||||
|
||||
# 长期替换homebrew-bottles
|
||||
echo 'export HOMEBREW_BOTTLE_DOMAIN=https://mirrors.tuna.tsinghua.edu.cn/homebrew-bottles' >> ~/.bash_profile
|
||||
source ~/.bash_profile
|
||||
```
|
||||
|
||||
### 3.3 恢复默认源
|
||||
|
||||
```sh
|
||||
git -C "$(brew --repo)" remote set-url origin https://github.com/Homebrew/brew.git
|
||||
|
||||
git -C "$(brew --repo homebrew/core)" remote set-url origin https://github.com/Homebrew/homebrew-core.git
|
||||
|
||||
git -C "$(brew --repo homebrew/cask)" remote set-url origin https://github.com/Homebrew/homebrew-cask.git
|
||||
|
||||
brew update
|
||||
```
|
||||
|
||||
`homebrew-bottles`配置只能手动删除,将 `~/.bash_profile` 文件中的 `HOMEBREW_BOTTLE_DOMAIN=https://mirrors.xxx.com`内容删除,并执行 `source ~/.bash_profile`。
|
||||
|
||||
至此,安装和设置操作都完成了。
|
||||
|
||||
## 5. 其他相关
|
||||
|
||||
### 5.1 cask
|
||||
|
||||
目前`cask`是从`GitHub`上读取软件源,而`GitHub Api`对访问有限制,如果使用比较频繁的话,可以申请`Api Token`,然后在环境变量中配置到`HOMEBREW_GITHUB_API_TOKEN`。
|
||||
|
||||
在`.bash_profile`中追加:
|
||||
|
||||
```shell
|
||||
export HOMEBREW_GITHUB_API_TOKEN=yourtoken
|
||||
```
|
||||
|
||||
注意:因为`cask`是从`GitHub`下载软件,所以目前是无法加速的。
|
||||
|
||||
### 5.2 如何卸载Homebrew
|
||||
|
||||
使用官方脚本同样会遇到`uninstall`地址无法访问问题,可以使用下面脚本:
|
||||
|
||||
```sh
|
||||
/bin/bash -c "$(curl -fsSL https://cdn.jsdelivr.net/gh/ineo6/homebrew-install/uninstall.sh)"
|
||||
```
|
||||
|
||||
### 5.3 反馈问题
|
||||
|
||||
|
||||
|
||||
## 6. 总结
|
||||
|
||||
在前面的过程中我们把`brew`和`homebrew-core`的地址都指向到中科大镜像。
|
||||
|
||||
原理是通过修改`install.sh`脚本,在里面预设镜像地址。
|
||||
|
||||
```sh
|
||||
STAT="stat --printf"
|
||||
CHOWN="/bin/chown"
|
||||
CHGRP="/bin/chgrp"
|
||||
GROUP="$(id -gn)"
|
||||
TOUCH="/bin/touch"
|
||||
fi
|
||||
# 这里替换了BREW_REPO
|
||||
BREW_REPO="https://mirrors.ustc.edu.cn/brew.git"
|
||||
```
|
||||
|
||||
更新后的方案使用`HOMEBREW_CORE_GIT_REMOTE`来预设`homebrew-core`源,不过这个设置方法很可能无效,欢迎小伙伴留言反馈你的效果。
|
||||
|
||||
## 如果对您有帮助
|
||||
|
||||
点赞、分享、收藏,能让更多人能发现文章,这也是对我的认可和鼓励,谢谢。
|
||||
|
||||
## 参考文章
|
||||
|
||||
- [清华大学开源软件镜像站](https://mirror.tuna.tsinghua.edu.cn/help/homebrew/)
|
||||
- [中科大源](http://mirrors.ustc.edu.cn/help/brew.git.html)
|
||||
|
||||
|
||||
- 微信群
|
||||
- [Issue](https://github.com/ineo6/homebrew-install)
|
||||
|
99
docs/guide/faq.md
Normal file
99
docs/guide/faq.md
Normal file
@ -0,0 +1,99 @@
|
||||
# FAQ
|
||||
|
||||
## M1 芯片 Mac 如何安装
|
||||
|
||||
`Homebrew`已支持在`arm`上安装,但是一些软件兼容性还有待更新,官方查阅地址可看[说明](https://github.com/Homebrew/brew/issues/7857)。
|
||||
|
||||
你可以考虑安装`x86`版本保持兼容性。
|
||||
|
||||
无论安装哪个版本,强烈建议先参考文档:[M1 芯片 Mac 上 Homebrew 安装](/guide/m1/)。
|
||||
|
||||
大部分问题都是资源不稳定导致的,如果可以的话尽量通过代理加速。
|
||||
|
||||
代理使用可以参考以下文章:
|
||||
|
||||
- [Mac 终端走 ssr 代理](http://onwaier.com/?p=229)
|
||||
- [如何让 macOS 的「终端」走代理?](https://www.xiaodefa.com/digital/121.html)
|
||||
|
||||
## fatal: unable to access xxx
|
||||
|
||||
```
|
||||
HEAD is now at 028e733e7 Merge pull request #10260 from reitermarkus/audit-livecheck
|
||||
|
||||
fatal: unable to access 'https://github.com/Homebrew/homebrew-core/': transfer closed with outstanding read data remaining
|
||||
fatal: ambiguous argument 'refs/remotes/origin/master': unknown revision or path not in the working tree.
|
||||
Use '--' to separate paths from revisions, like this:
|
||||
'git <command> [<revision>...] -- [<file>...]'
|
||||
```
|
||||
|
||||
解决方案:
|
||||
|
||||
- 根据文章[解决 GitHub 网页 githubusercontent 地址无法访问问题][hosts],给`github.com`域名加速
|
||||
- 通过代理访问
|
||||
|
||||
## 设置镜像无效,安装还是很慢
|
||||
|
||||
这里说的安装很慢主要是指`brew`本身安装速度慢(镜像地址没有设置成功)。
|
||||
|
||||
可以执行命令`echo $SHELL`,先查看终端类型。
|
||||
|
||||
- bash: `/bin/bash`
|
||||
- zsh: `/bin/zsh`
|
||||
|
||||
然后根据终端类型设置镜像,参考"设置镜像"。
|
||||
|
||||
## command not found: brew
|
||||
|
||||
一般是环境变量无效,请使用`echo $SHELL`确认终端类型,参考上节。
|
||||
|
||||
如果是`m1`芯片`Mac`则可能是没有把`/opt/homebrew/bin`加入环境变量:
|
||||
|
||||
zsh
|
||||
|
||||
```shell
|
||||
echo export PATH=/opt/homebrew/bin:$PATH >> ~/.zprofile
|
||||
source ~/.zprofile
|
||||
```
|
||||
|
||||
bash
|
||||
|
||||
```shell
|
||||
echo export PATH=/opt/homebrew/bin:$PATH >> ~/.bash_profile
|
||||
source ~/.bash_profile
|
||||
```
|
||||
|
||||
否则可能因为特殊情况需要把`/usr/local/bin`手动加入环境变量:
|
||||
|
||||
zsh
|
||||
|
||||
```shell
|
||||
echo export PATH=/usr/local/bin:$PATH >> ~/.zprofile
|
||||
source ~/.zprofile
|
||||
```
|
||||
|
||||
bash
|
||||
|
||||
```shell
|
||||
echo export PATH=/usr/local/bin:$PATH >> ~/.bash_profile
|
||||
source ~/.bash_profile
|
||||
```
|
||||
|
||||
## SHA256 mismatch
|
||||
|
||||
```
|
||||
Error: An exception occurred within a child process:
|
||||
ChecksumMismatchError: SHA256 mismatch
|
||||
Expected: 01059532335fefc5e0e7a23cc79eeb1dc6fea477606981b89f259aa0e0f9abc1
|
||||
Actual: 641ba394c891cee16dfa45873906edab12edfc9befaa121649bb18e7b7d574bf
|
||||
Archive: /Users/XXX/Library/Caches/Homebrew/downloads/1124b500fc261f6d9be6193eca8c120f4dfb7ecd3470ac7d8edc1d04ecc5b345--jdk13u-jdk-13.0.2+8.tar.bz2
|
||||
To retry an incomplete download, remove the file above.
|
||||
```
|
||||
|
||||
遇到该问题时请尝试该方案:https://blog.csdn.net/lemostic/article/details/107101219
|
||||
|
||||
## 如何判断终端类型
|
||||
|
||||
在终端执行命令`echo $SHELL`,根据显示的结果判断:
|
||||
|
||||
- `/bin/bash` => `bash` => `.bash_profile`
|
||||
- `/bin/zsh` => `zsh` => `.zprofile`
|
38
docs/guide/how-it-works.md
Normal file
38
docs/guide/how-it-works.md
Normal file
@ -0,0 +1,38 @@
|
||||
---
|
||||
order: 1
|
||||
---
|
||||
|
||||
# 如何工作的?
|
||||
|
||||
## 访问脚本
|
||||
|
||||
`raw.githubusercontent.com`地址不稳定,导致无法访问官方安装脚本`install.sh`。
|
||||
|
||||
```shell
|
||||
curl: (7) Failed to connect to raw.githubusercontent.com port 443: Operation timed out
|
||||
```
|
||||
|
||||
解决方案就是托管到`jsdelivr`,通过`CDN`加速访问。
|
||||
|
||||
> 另外也可以采用写入`hosts`的方式,可以一定程度解决`GitHub`资源无法访问的问题。
|
||||
>
|
||||
> 设置方案请阅读 [GitHub 访问加速指南][hosts]
|
||||
|
||||
## 安装加速
|
||||
|
||||
修改脚本内容,把`brew`、`homebrew-core`到仓库地址为 [中科大镜像](http://mirrors.ustc.edu.cn/help/brew.git.html) 提供的地址。
|
||||
|
||||
例如:
|
||||
|
||||
```shell
|
||||
STAT="stat --printf"
|
||||
CHOWN="/bin/chown"
|
||||
CHGRP="/bin/chgrp"
|
||||
GROUP="$(id -gn)"
|
||||
TOUCH="/bin/touch"
|
||||
fi
|
||||
# 这里替换了BREW_REPO
|
||||
BREW_REPO="https://mirrors.ustc.edu.cn/brew.git"
|
||||
```
|
||||
|
||||
[hosts]: https://mp.weixin.qq.com/s/gFNP2Pk81vg7nE1XsDingg
|
40
docs/guide/index.md
Normal file
40
docs/guide/index.md
Normal file
@ -0,0 +1,40 @@
|
||||
---
|
||||
nav:
|
||||
title: 指南
|
||||
order: 1
|
||||
---
|
||||
|
||||
# 介 绍
|
||||
|
||||
`Homebrew`是一款包管理工具,目前支持`macOS`和`Linux`系统。主要有四个部分组成: `brew`、`homebrew-core` 、`homebrew-cask`、`homebrew-bottles`。
|
||||
|
||||
| 名称 | 说明 |
|
||||
| ---------------- | ------------------------------------- |
|
||||
| brew | Homebrew 源代码仓库 |
|
||||
| homebrew-core | Homebrew 核心源 |
|
||||
| homebrew-cask | 提供 macOS 应用和大型二进制文件的安装 |
|
||||
| homebrew-bottles | 预编译二进制软件包 |
|
||||
|
||||
本文主要介绍`Homebrew`安装方式以及如何加速访问。
|
||||
|
||||
另外相关用到的脚本 [homebrew-install][github] 都托管在`GitHub`上。
|
||||
|
||||
希望大家顺利安装上`Homebrew`。
|
||||
|
||||
## 关于单独设置镜像
|
||||
|
||||
如果你已经安装好`Homebrew`,但是想设置镜像也可以 [点此直达](/guide/start/#part3)。
|
||||
|
||||
## 反馈
|
||||
|
||||
非常欢迎你来尝试使用,并提出意见,你可以通过以下方式:
|
||||
|
||||
- 通过 [Issue][issues] 报告 bug 或进行咨询
|
||||
- 微信群(见下图)
|
||||
- 提交 [Pull Request][pulls] 改进文档
|
||||
|
||||
<img src="https://i.loli.net/2021/01/03/sXGryYHa3JhB9QL.png" width="600" alt="湖中剑-homebrew" />
|
||||
|
||||
[github]: https://github.com/ineo6/homebrew-install
|
||||
[issues]: https://github.com/ineo6/homebrew-install/issues
|
||||
[pulls]: https://github.com/ineo6/homebrew-install/pulls
|
116
docs/guide/m1.md
Normal file
116
docs/guide/m1.md
Normal file
@ -0,0 +1,116 @@
|
||||
# M1 芯片 Mac 上 Homebrew 安装
|
||||
|
||||
目前`Homebrew`还没有完成对搭载`Apple Silicon CPU`的`Mac`机型完成适配,安装教程也比较混乱,所以我整理这篇文章,希望能帮到大家。
|
||||
|
||||
关于进度的信息可以浏览`GitHub`上的[说明](https://github.com/Homebrew/brew/issues/7857)。
|
||||
|
||||
本文简单介绍了`M1`芯片`Mac`上安装`Homebrew`的方法,同时建议小伙伴结合 [mac 安装教程](/guide/) 一起阅读并安装。
|
||||
|
||||
## 安装 ARM 版 Homebrew
|
||||
|
||||
`ARM`版`Homebrew`需要安装在`/opt/homebrew`路径下,早期的时候需要手动创建目录执行命令,目前使用最新脚本不需要手动操作。
|
||||
|
||||
直接执行:
|
||||
|
||||
```shell
|
||||
/bin/bash -c "$(curl -fsSL https://raw.githubusercontent.com/Homebrew/install/HEAD/install.sh)"
|
||||
```
|
||||
|
||||
或者使用我提供的脚本安装,好处是安装脚本可稳定访问,安装默认使用中科大镜像:
|
||||
|
||||
```shell
|
||||
/bin/bash -c "$(curl -fsSL https://cdn.jsdelivr.net/gh/ineo6/homebrew-install/install.sh)"
|
||||
```
|
||||
|
||||
然后还需设置环境变量,在`~/.zprofile`或者`~/.bash_profile`文件末尾追加下面代码:
|
||||
|
||||
```shell
|
||||
export PATH=/opt/homebrew/bin:$PATH
|
||||
```
|
||||
|
||||
具体操作步骤如下,一定要仔细阅读。
|
||||
|
||||
PS: 终端类型根据执行命令`echo $SHELL`显示的结果:
|
||||
|
||||
- `/bin/bash` => `bash` => `.bash_profile`
|
||||
- `/bin/zsh` => `zsh` => `.zprofile`
|
||||
|
||||
**如果遇到环境变量无效问题,建议回过头来查看终端类型,再做正确的设置。**
|
||||
|
||||
从`macOS Catalina`(10.15.x) 版开始,`Mac`使用`zsh`作为默认`Shell`,使用`.zprofile`,所以对应命令:
|
||||
|
||||
```shell
|
||||
echo export PATH=/opt/homebrew/bin:$PATH >> ~/.zprofile
|
||||
source ~/.zprofile
|
||||
```
|
||||
|
||||
如果是`macOS Mojave` 及更低版本,并且没有自己配置过`zsh`,使用`.bash_profile`:
|
||||
|
||||
```shell
|
||||
echo export PATH=/opt/homebrew/bin:$PATH >> ~/.bash_profile
|
||||
source ~/.bash_profile
|
||||
```
|
||||
|
||||
扩展阅读:[在 Mac 上将 zsh 用作默认 Shell](https://support.apple.com/zh-cn/HT208050)
|
||||
|
||||
## 安装 X86 版 Homebrew
|
||||
|
||||
因为目前很多软件包没有支持`ARM`架构,我们也可以考虑使用`x86`版的`Homebrew`。
|
||||
|
||||
在命令前面添加`arch -x86_64`,就可以按 X86 模式执行该命令,比如:
|
||||
|
||||
```shell
|
||||
arch -x86_64 /bin/bash -c "$(curl -fsSL https://cdn.jsdelivr.net/gh/ineo6/homebrew-install/install.sh)"
|
||||
```
|
||||
|
||||
## 多版本共存
|
||||
|
||||
如果你同时安装了 ARM 和 X86 两个版本,那你需要设置别名,把命令区分开。
|
||||
|
||||
同样是`.zprofile`或者`.bash_profile`里面添加:
|
||||
|
||||
至于操作哪个文件,请参考前文关于终端类型的描述,下文如有类似文字,保持一样的操作。
|
||||
|
||||
```shell
|
||||
alias abrew='arch -arm64 /opt/homebrew/bin/brew'
|
||||
alias ibrew='arch -x86_64 /usr/local/bin/brew'
|
||||
```
|
||||
|
||||
`abrew`、`ibrew`可以根据你的喜好自定义。
|
||||
|
||||
然后再执行`source ~/.zprofile`或`source ~/.bash_profile`命令更新文件。
|
||||
|
||||
## 设置镜像
|
||||
|
||||
**注意:本文中的安装脚本会设置中科大源镜像,如果你也想设置`cask`和`bottles`的镜像,请按下面注释部分选择执行代码。**
|
||||
|
||||
更详细的教程可以参考前面的文章:[mac 安装教程](/guide/start/#part3)
|
||||
|
||||
执行时根据实际情况修改`"$(brew --repo)"`代码中的`brew`。
|
||||
|
||||
意思是如果你只是使用一个版本`Homebrew`,直接执行命令即可,如果你想多个版本共存或者使用了别名,就把`brew`关键字替换为别名名称,如前面的`abrew`、`ibrew`。
|
||||
|
||||
```shell
|
||||
# brew
|
||||
git -C "$(brew --repo)" remote set-url origin https://mirrors.ustc.edu.cn/brew.git
|
||||
|
||||
# core
|
||||
git -C "$(brew --repo homebrew/core)" remote set-url origin https://mirrors.ustc.edu.cn/homebrew-core.git
|
||||
|
||||
# cask
|
||||
git -C "$(brew --repo homebrew/cask)" remote set-url origin https://mirrors.ustc.edu.cn/homebrew-cask.git
|
||||
|
||||
# bottles for zsh 和下面2选1
|
||||
echo 'export HOMEBREW_BOTTLE_DOMAIN=https://mirrors.ustc.edu.cn/homebrew-bottles' >> ~/.zprofile
|
||||
source ~/.zprofile
|
||||
|
||||
# bottles for bash 和上面2选1
|
||||
echo 'export HOMEBREW_BOTTLE_DOMAIN=https://mirrors.ustc.edu.cn/homebrew-bottles' >> ~/.bash_profile
|
||||
source ~/.bash_profile
|
||||
```
|
||||
|
||||
具体镜像设置参考[mac 安装教程](/guide/start/#part3)=>"设置镜像"一节。
|
||||
|
||||
**如果觉得教程有用,欢迎多多分享宣传~**
|
||||
|
||||
[mac]:[https://zhuanlan.zhihu.com/p/90508170][github]:[https://github.com/ineo6/homebrew-install]
|
169
docs/guide/start.md
Normal file
169
docs/guide/start.md
Normal file
@ -0,0 +1,169 @@
|
||||
---
|
||||
order: 3
|
||||
---
|
||||
|
||||
# 快速开始
|
||||
|
||||
如果你是在`M1`芯片的`Mac`上安装`Homebrew`,请参考 [M1 芯片安装教程](/guide/m1/)。
|
||||
|
||||
## 安装说明
|
||||
|
||||
```shell
|
||||
/bin/bash -c "$(curl -fsSL https://cdn.jsdelivr.net/gh/ineo6/homebrew-install/install.shell)"
|
||||
```
|
||||
|
||||
如果命令执行中卡在下面信息:
|
||||
|
||||
```shell
|
||||
==> Tapping homebrew/core
|
||||
Cloning into '/usr/local/Homebrew/Library/Taps/homebrew/homebrew-core'...
|
||||
```
|
||||
|
||||
请`Control + C`中断脚本执行如下命令:
|
||||
|
||||
```shell
|
||||
cd "$(brew --repo)/Library/Taps/"
|
||||
mkdir homebrew && cd homebrew
|
||||
git clone git://mirrors.ustc.edu.cn/homebrew-core.git
|
||||
```
|
||||
|
||||
**安装`cask` 同样也有安装失败或者卡住的问题,解决方法也是一样:**
|
||||
|
||||
```shell
|
||||
cd "$(brew --repo)/Library/Taps/"
|
||||
cd homebrew
|
||||
git clone https://mirrors.ustc.edu.cn/homebrew-cask.git
|
||||
```
|
||||
|
||||
成功执行之后继续执行安装命令。
|
||||
|
||||
最后看到`==> Installation successful!`就说明安装成功了。
|
||||
|
||||
最最后更新下:
|
||||
|
||||
```shell
|
||||
brew update
|
||||
```
|
||||
|
||||
<h2 id='part3'>设置镜像</h2>
|
||||
|
||||
### 中科大源
|
||||
|
||||
```shell
|
||||
git -C "$(brew --repo)" remote set-url origin https://mirrors.ustc.edu.cn/brew.git
|
||||
|
||||
git -C "$(brew --repo homebrew/core)" remote set-url origin https://mirrors.ustc.edu.cn/homebrew-core.git
|
||||
|
||||
git -C "$(brew --repo homebrew/cask)" remote set-url origin https://mirrors.ustc.edu.cn/homebrew-cask.git
|
||||
|
||||
brew update
|
||||
```
|
||||
|
||||
### 清华大学源
|
||||
|
||||
```shell
|
||||
git -C "$(brew --repo)" remote set-url origin https://mirrors.tuna.tsinghua.edu.cn/git/homebrew/brew.git
|
||||
|
||||
git -C "$(brew --repo homebrew/core)" remote set-url origin https://mirrors.tuna.tsinghua.edu.cn/git/homebrew/homebrew-core.git
|
||||
|
||||
git -C "$(brew --repo homebrew/cask)" remote set-url origin https://mirrors.tuna.tsinghua.edu.cn/git/homebrew/homebrew-cask.git
|
||||
|
||||
brew update
|
||||
```
|
||||
|
||||
### 设置 bottles 镜像
|
||||
|
||||
设置环境变量需要注意终端的类型,可以先通过以下方式获取:
|
||||
|
||||
执行命令`echo $SHELL`,根据结果判断:
|
||||
|
||||
- `/bin/bash` => `bash` => `.bash_profile`
|
||||
- `/bin/zsh` => `zsh` => `.zprofile`
|
||||
|
||||
然后继续正式操作,以**中科大源**为例:
|
||||
|
||||
从`macOS Catalina`(10.15.x) 版开始,`Mac`使用`zsh`作为默认`Shell`,对应文件是`.zprofile`,所以命令为:
|
||||
|
||||
```shell
|
||||
echo 'export HOMEBREW_BOTTLE_DOMAIN=https://mirrors.ustc.edu.cn/homebrew-bottles' >> ~/.zprofile
|
||||
source ~/.zprofile
|
||||
```
|
||||
|
||||
如果是`macOS Mojave` 及更低版本,并且没有自己配置过`zsh`,对应文件则是`.bash_profile`:
|
||||
|
||||
```shell
|
||||
echo 'export HOMEBREW_BOTTLE_DOMAIN=https://mirrors.ustc.edu.cn/homebrew-bottles' >> ~/.bash_profile
|
||||
source ~/.bash_profile
|
||||
```
|
||||
|
||||
> 注意:上述区别仅仅是`.zprofile`和`.bash_profile`不同,上下文如有再次提及编辑`.zprofile`,均按此方法判断具体操作的文件。
|
||||
|
||||
如果想使用清华源:
|
||||
|
||||
```shell
|
||||
把
|
||||
https://mirrors.ustc.edu.cn/homebrew-bottles
|
||||
|
||||
替换为
|
||||
https://mirrors.tuna.tsinghua.edu.cn/homebrew-bottles
|
||||
```
|
||||
|
||||
至此,安装和设置操作都完成了。
|
||||
|
||||
### 恢复默认源
|
||||
|
||||
```shell
|
||||
git -C "$(brew --repo)" remote set-url origin https://github.com/Homebrew/brew.git
|
||||
|
||||
git -C "$(brew --repo homebrew/core)" remote set-url origin https://github.com/Homebrew/homebrew-core.git
|
||||
|
||||
git -C "$(brew --repo homebrew/cask)" remote set-url origin https://github.com/Homebrew/homebrew-cask.git
|
||||
|
||||
brew update
|
||||
```
|
||||
|
||||
`homebrew-bottles`配置只能手动删除,将 `~/.zprofile` 文件中的 `HOMEBREW_BOTTLE_DOMAIN=https://mirrors.xxx.com`内容删除,并执行 `source ~/.zprofile`。
|
||||
|
||||
## 如何卸载 Homebrew
|
||||
|
||||
使用官方脚本同样会遇到`uninstall`地址无法访问问题,可以使用下面脚本:
|
||||
|
||||
```shell
|
||||
/bin/bash -c "$(curl -fsSL https://cdn.jsdelivr.net/gh/ineo6/homebrew-install/uninstall.shell)"
|
||||
```
|
||||
|
||||
## 其他相关
|
||||
|
||||
### cask
|
||||
|
||||
目前`cask`是从`GitHub`上读取软件源,而`GitHub Api`对访问有限制,如果使用比较频繁的话,可以申请`Api Token`,然后在环境变量中配置到`HOMEBREW_GITHUB_API_TOKEN`。
|
||||
|
||||
在`.zprofile`中追加,注意替换`yourtoken`:
|
||||
|
||||
```shell
|
||||
echo 'export HOMEBREW_GITHUB_API_TOKEN=yourtoken' >> ~/.zprofile
|
||||
source ~/.zprofile
|
||||
```
|
||||
|
||||
注意:因为`cask`是从`GitHub`下载软件,所以目前是无法加速的。
|
||||
|
||||
## 反馈
|
||||
|
||||
非常欢迎你来尝试使用,并提出意见,你可以通过以下方式:
|
||||
|
||||
- 通过 [Issue][issues] 报告 bug 或进行咨询
|
||||
- 微信群(见下图)
|
||||
- 提交 [Pull Request][pulls] 改进文档
|
||||
|
||||
<img src="https://i.loli.net/2021/01/03/sXGryYHa3JhB9QL.png" width="600" alt="湖中剑-homebrew" />
|
||||
|
||||
## 如果对您有帮助
|
||||
|
||||
分享、收藏,能让更多人能发现文章,这也是对我的认可和鼓励,谢谢。
|
||||
|
||||
## 参考文章
|
||||
|
||||
- [清华大学开源软件镜像站](https://mirror.tuna.tsinghua.edu.cn/help/homebrew/)
|
||||
- [中科大源](http://mirrors.ustc.edu.cn/help/brew.git.html)
|
||||
|
||||
[issues]: https://github.com/ineo6/homebrew-install/issues
|
21
docs/index.md
Normal file
21
docs/index.md
Normal file
@ -0,0 +1,21 @@
|
||||
---
|
||||
hero:
|
||||
title: Homebrew
|
||||
desc: macOS飞速安装教程
|
||||
image: /images/homebrew-256x256.png
|
||||
actions:
|
||||
- text: 快速开始
|
||||
link: /guide/
|
||||
footer: Open-source MIT Licensed | Copyright © 2021<br />Powered by [Neo](https://github.com/ineo6)
|
||||
---
|
||||
|
||||
<Center><h2>快速安装 Homebrew</h2></Center>
|
||||
|
||||
```shell script
|
||||
/bin/bash -c "$(curl -fsSL https://cdn.jsdelivr.net/gh/ineo6/homebrew-install/install.sh)"
|
||||
```
|
||||
|
||||
<Center>将以上命令粘贴至终端。</Center>
|
||||
<Center>脚本内置<a target="_blank" href="http://mirrors.ustc.edu.cn/help/brew.git.html">中科大镜像</a>,所以让Homebrew安装速度飞快。</Center>
|
||||
|
||||
<Center>如果对安装有疑问,请通过 <a href="/guide/start/">快速开始</a> 安装。</Center>
|
28
package.json
28
package.json
@ -2,10 +2,25 @@
|
||||
"name": "homebrew-install",
|
||||
"version": "1.0.0",
|
||||
"description": "Install Homebrew (on macOS or Linux)",
|
||||
"main": "",
|
||||
"main": "dist/index.js",
|
||||
"module": "dist/index.esm.js",
|
||||
"typings": "dist/index.d.ts",
|
||||
"scripts": {
|
||||
"make": "node ./bin/update.js",
|
||||
"test": "echo \"Error: no test specified\" && exit 1"
|
||||
"start": "dumi dev",
|
||||
"build": "dumi build",
|
||||
"prettier": "prettier --write \"**/*.{js,jsx,tsx,ts,less,md,json}\"",
|
||||
"make": "node ./bin/update.js"
|
||||
},
|
||||
"gitHooks": {
|
||||
"pre-commit": "lint-staged"
|
||||
},
|
||||
"lint-staged": {
|
||||
"*.{js,jsx,less,md,json}": [
|
||||
"prettier --write"
|
||||
],
|
||||
"*.ts?(x)": [
|
||||
"prettier --parser=typescript --write"
|
||||
]
|
||||
},
|
||||
"repository": {
|
||||
"type": "git",
|
||||
@ -20,7 +35,12 @@
|
||||
"devDependencies": {
|
||||
"chalk": "^4.1.0",
|
||||
"download-git-repo": "^3.0.2",
|
||||
"dumi": "^1.0.12",
|
||||
"fs-extra": "^9.0.1",
|
||||
"ora": "^5.2.0"
|
||||
"lint-staged": "^10.0.7",
|
||||
"ora": "^5.3.0",
|
||||
"prettier": "^1.19.1",
|
||||
"sitemap": "^6.3.5",
|
||||
"yorkie": "^2.0.0"
|
||||
}
|
||||
}
|
||||
|
BIN
public/favicon.ico
Normal file
BIN
public/favicon.ico
Normal file
Binary file not shown.
After Width: | Height: | Size: 1.1 KiB |
BIN
public/images/homebrew-256x256.png
Normal file
BIN
public/images/homebrew-256x256.png
Normal file
Binary file not shown.
After Width: | Height: | Size: 14 KiB |
29
tsconfig.json
Normal file
29
tsconfig.json
Normal file
@ -0,0 +1,29 @@
|
||||
{
|
||||
"compilerOptions": {
|
||||
"target": "esnext",
|
||||
"module": "esnext",
|
||||
"moduleResolution": "node",
|
||||
"importHelpers": true,
|
||||
"jsx": "react",
|
||||
"esModuleInterop": true,
|
||||
"sourceMap": true,
|
||||
"baseUrl": "./",
|
||||
"strict": true,
|
||||
"paths": {
|
||||
"@/*": ["src/*"],
|
||||
"@@/*": ["src/.umi/*"]
|
||||
},
|
||||
"allowSyntheticDefaultImports": true
|
||||
},
|
||||
"exclude": [
|
||||
"node_modules",
|
||||
"lib",
|
||||
"es",
|
||||
"dist",
|
||||
"typings",
|
||||
"**/__test__",
|
||||
"test",
|
||||
"docs",
|
||||
"tests"
|
||||
]
|
||||
}
|
2
typings.d.ts
vendored
Normal file
2
typings.d.ts
vendored
Normal file
@ -0,0 +1,2 @@
|
||||
declare module '*.css';
|
||||
declare module '*.less';
|
999
yarn.lock
999
yarn.lock
@ -1,999 +0,0 @@
|
||||
# THIS IS AN AUTOGENERATED FILE. DO NOT EDIT THIS FILE DIRECTLY.
|
||||
# yarn lockfile v1
|
||||
|
||||
|
||||
"@sindresorhus/is@^0.7.0":
|
||||
version "0.7.0"
|
||||
resolved "https://registry.npm.taobao.org/@sindresorhus/is/download/@sindresorhus/is-0.7.0.tgz#9a06f4f137ee84d7df0460c1fdb1135ffa6c50fd"
|
||||
integrity sha1-mgb08TfuhNffBGDB/bETX/psUP0=
|
||||
|
||||
ansi-regex@^5.0.0:
|
||||
version "5.0.0"
|
||||
resolved "https://registry.npm.taobao.org/ansi-regex/download/ansi-regex-5.0.0.tgz#388539f55179bf39339c81af30a654d69f87cb75"
|
||||
integrity sha1-OIU59VF5vzkznIGvMKZU1p+Hy3U=
|
||||
|
||||
ansi-styles@^4.1.0:
|
||||
version "4.3.0"
|
||||
resolved "https://registry.npm.taobao.org/ansi-styles/download/ansi-styles-4.3.0.tgz?cache=0&sync_timestamp=1606792395101&other_urls=https%3A%2F%2Fregistry.npm.taobao.org%2Fansi-styles%2Fdownload%2Fansi-styles-4.3.0.tgz#edd803628ae71c04c85ae7a0906edad34b648937"
|
||||
integrity sha1-7dgDYornHATIWuegkG7a00tkiTc=
|
||||
dependencies:
|
||||
color-convert "^2.0.1"
|
||||
|
||||
archive-type@^4.0.0:
|
||||
version "4.0.0"
|
||||
resolved "https://registry.npm.taobao.org/archive-type/download/archive-type-4.0.0.tgz#f92e72233056dfc6969472749c267bdb046b1d70"
|
||||
integrity sha1-+S5yIzBW38aWlHJ0nCZ72wRrHXA=
|
||||
dependencies:
|
||||
file-type "^4.2.0"
|
||||
|
||||
at-least-node@^1.0.0:
|
||||
version "1.0.0"
|
||||
resolved "https://registry.npm.taobao.org/at-least-node/download/at-least-node-1.0.0.tgz#602cd4b46e844ad4effc92a8011a3c46e0238dc2"
|
||||
integrity sha1-YCzUtG6EStTv/JKoARo8RuAjjcI=
|
||||
|
||||
balanced-match@^1.0.0:
|
||||
version "1.0.0"
|
||||
resolved "https://registry.npm.taobao.org/balanced-match/download/balanced-match-1.0.0.tgz#89b4d199ab2bee49de164ea02b89ce462d71b767"
|
||||
integrity sha1-ibTRmasr7kneFk6gK4nORi1xt2c=
|
||||
|
||||
base64-js@^1.3.1:
|
||||
version "1.5.1"
|
||||
resolved "https://registry.npm.taobao.org/base64-js/download/base64-js-1.5.1.tgz?cache=0&sync_timestamp=1605123644489&other_urls=https%3A%2F%2Fregistry.npm.taobao.org%2Fbase64-js%2Fdownload%2Fbase64-js-1.5.1.tgz#1b1b440160a5bf7ad40b650f095963481903930a"
|
||||
integrity sha1-GxtEAWClv3rUC2UPCVljSBkDkwo=
|
||||
|
||||
bl@^1.0.0:
|
||||
version "1.2.3"
|
||||
resolved "https://registry.npm.taobao.org/bl/download/bl-1.2.3.tgz#1e8dd80142eac80d7158c9dccc047fb620e035e7"
|
||||
integrity sha1-Ho3YAULqyA1xWMnczAR/tiDgNec=
|
||||
dependencies:
|
||||
readable-stream "^2.3.5"
|
||||
safe-buffer "^5.1.1"
|
||||
|
||||
bl@^4.0.3:
|
||||
version "4.0.3"
|
||||
resolved "https://registry.npm.taobao.org/bl/download/bl-4.0.3.tgz#12d6287adc29080e22a705e5764b2a9522cdc489"
|
||||
integrity sha1-EtYoetwpCA4ipwXldksqlSLNxIk=
|
||||
dependencies:
|
||||
buffer "^5.5.0"
|
||||
inherits "^2.0.4"
|
||||
readable-stream "^3.4.0"
|
||||
|
||||
brace-expansion@^1.1.7:
|
||||
version "1.1.11"
|
||||
resolved "https://registry.npm.taobao.org/brace-expansion/download/brace-expansion-1.1.11.tgz?cache=0&sync_timestamp=1601898201980&other_urls=https%3A%2F%2Fregistry.npm.taobao.org%2Fbrace-expansion%2Fdownload%2Fbrace-expansion-1.1.11.tgz#3c7fcbf529d87226f3d2f52b966ff5271eb441dd"
|
||||
integrity sha1-PH/L9SnYcibz0vUrlm/1Jx60Qd0=
|
||||
dependencies:
|
||||
balanced-match "^1.0.0"
|
||||
concat-map "0.0.1"
|
||||
|
||||
buffer-alloc-unsafe@^1.1.0:
|
||||
version "1.1.0"
|
||||
resolved "https://registry.npm.taobao.org/buffer-alloc-unsafe/download/buffer-alloc-unsafe-1.1.0.tgz#bd7dc26ae2972d0eda253be061dba992349c19f0"
|
||||
integrity sha1-vX3CauKXLQ7aJTvgYdupkjScGfA=
|
||||
|
||||
buffer-alloc@^1.2.0:
|
||||
version "1.2.0"
|
||||
resolved "https://registry.npm.taobao.org/buffer-alloc/download/buffer-alloc-1.2.0.tgz#890dd90d923a873e08e10e5fd51a57e5b7cce0ec"
|
||||
integrity sha1-iQ3ZDZI6hz4I4Q5f1RpX5bfM4Ow=
|
||||
dependencies:
|
||||
buffer-alloc-unsafe "^1.1.0"
|
||||
buffer-fill "^1.0.0"
|
||||
|
||||
buffer-crc32@~0.2.3:
|
||||
version "0.2.13"
|
||||
resolved "https://registry.npm.taobao.org/buffer-crc32/download/buffer-crc32-0.2.13.tgz#0d333e3f00eac50aa1454abd30ef8c2a5d9a7242"
|
||||
integrity sha1-DTM+PwDqxQqhRUq9MO+MKl2ackI=
|
||||
|
||||
buffer-fill@^1.0.0:
|
||||
version "1.0.0"
|
||||
resolved "https://registry.npm.taobao.org/buffer-fill/download/buffer-fill-1.0.0.tgz#f8f78b76789888ef39f205cd637f68e702122b2c"
|
||||
integrity sha1-+PeLdniYiO858gXNY39o5wISKyw=
|
||||
|
||||
buffer@^5.2.1, buffer@^5.5.0:
|
||||
version "5.7.1"
|
||||
resolved "https://registry.npm.taobao.org/buffer/download/buffer-5.7.1.tgz?cache=0&sync_timestamp=1606098138997&other_urls=https%3A%2F%2Fregistry.npm.taobao.org%2Fbuffer%2Fdownload%2Fbuffer-5.7.1.tgz#ba62e7c13133053582197160851a8f648e99eed0"
|
||||
integrity sha1-umLnwTEzBTWCGXFghRqPZI6Z7tA=
|
||||
dependencies:
|
||||
base64-js "^1.3.1"
|
||||
ieee754 "^1.1.13"
|
||||
|
||||
cacheable-request@^2.1.1:
|
||||
version "2.1.4"
|
||||
resolved "https://registry.npm.taobao.org/cacheable-request/download/cacheable-request-2.1.4.tgz#0d808801b6342ad33c91df9d0b44dc09b91e5c3d"
|
||||
integrity sha1-DYCIAbY0KtM8kd+dC0TcCbkeXD0=
|
||||
dependencies:
|
||||
clone-response "1.0.2"
|
||||
get-stream "3.0.0"
|
||||
http-cache-semantics "3.8.1"
|
||||
keyv "3.0.0"
|
||||
lowercase-keys "1.0.0"
|
||||
normalize-url "2.0.1"
|
||||
responselike "1.0.2"
|
||||
|
||||
caw@^2.0.1:
|
||||
version "2.0.1"
|
||||
resolved "https://registry.npm.taobao.org/caw/download/caw-2.0.1.tgz#6c3ca071fc194720883c2dc5da9b074bfc7e9e95"
|
||||
integrity sha1-bDygcfwZRyCIPC3F2psHS/x+npU=
|
||||
dependencies:
|
||||
get-proxy "^2.0.0"
|
||||
isurl "^1.0.0-alpha5"
|
||||
tunnel-agent "^0.6.0"
|
||||
url-to-options "^1.0.1"
|
||||
|
||||
chalk@^4.0.0, chalk@^4.1.0:
|
||||
version "4.1.0"
|
||||
resolved "https://registry.npm.taobao.org/chalk/download/chalk-4.1.0.tgz?cache=0&sync_timestamp=1599533182233&other_urls=https%3A%2F%2Fregistry.npm.taobao.org%2Fchalk%2Fdownload%2Fchalk-4.1.0.tgz#4e14870a618d9e2edd97dd8345fd9d9dc315646a"
|
||||
integrity sha1-ThSHCmGNni7dl92DRf2dncMVZGo=
|
||||
dependencies:
|
||||
ansi-styles "^4.1.0"
|
||||
supports-color "^7.1.0"
|
||||
|
||||
cli-cursor@^3.1.0:
|
||||
version "3.1.0"
|
||||
resolved "https://registry.npm.taobao.org/cli-cursor/download/cli-cursor-3.1.0.tgz#264305a7ae490d1d03bf0c9ba7c925d1753af307"
|
||||
integrity sha1-JkMFp65JDR0Dvwybp8kl0XU68wc=
|
||||
dependencies:
|
||||
restore-cursor "^3.1.0"
|
||||
|
||||
cli-spinners@^2.5.0:
|
||||
version "2.5.0"
|
||||
resolved "https://registry.npm.taobao.org/cli-spinners/download/cli-spinners-2.5.0.tgz#12763e47251bf951cb75c201dfa58ff1bcb2d047"
|
||||
integrity sha1-EnY+RyUb+VHLdcIB36WP8byy0Ec=
|
||||
|
||||
clone-response@1.0.2:
|
||||
version "1.0.2"
|
||||
resolved "https://registry.npm.taobao.org/clone-response/download/clone-response-1.0.2.tgz#d1dc973920314df67fbeb94223b4ee350239e96b"
|
||||
integrity sha1-0dyXOSAxTfZ/vrlCI7TuNQI56Ws=
|
||||
dependencies:
|
||||
mimic-response "^1.0.0"
|
||||
|
||||
clone@^1.0.2:
|
||||
version "1.0.4"
|
||||
resolved "https://registry.npm.taobao.org/clone/download/clone-1.0.4.tgz#da309cc263df15994c688ca902179ca3c7cd7c7e"
|
||||
integrity sha1-2jCcwmPfFZlMaIypAheco8fNfH4=
|
||||
|
||||
color-convert@^2.0.1:
|
||||
version "2.0.1"
|
||||
resolved "https://registry.npm.taobao.org/color-convert/download/color-convert-2.0.1.tgz#72d3a68d598c9bdb3af2ad1e84f21d896abd4de3"
|
||||
integrity sha1-ctOmjVmMm9s68q0ehPIdiWq9TeM=
|
||||
dependencies:
|
||||
color-name "~1.1.4"
|
||||
|
||||
color-name@~1.1.4:
|
||||
version "1.1.4"
|
||||
resolved "https://registry.npm.taobao.org/color-name/download/color-name-1.1.4.tgz#c2a09a87acbde69543de6f63fa3995c826c536a2"
|
||||
integrity sha1-wqCah6y95pVD3m9j+jmVyCbFNqI=
|
||||
|
||||
commander@^2.8.1:
|
||||
version "2.20.3"
|
||||
resolved "https://registry.npm.taobao.org/commander/download/commander-2.20.3.tgz?cache=0&sync_timestamp=1607931331670&other_urls=https%3A%2F%2Fregistry.npm.taobao.org%2Fcommander%2Fdownload%2Fcommander-2.20.3.tgz#fd485e84c03eb4881c20722ba48035e8531aeb33"
|
||||
integrity sha1-/UhehMA+tIgcIHIrpIA16FMa6zM=
|
||||
|
||||
concat-map@0.0.1:
|
||||
version "0.0.1"
|
||||
resolved "https://registry.npm.taobao.org/concat-map/download/concat-map-0.0.1.tgz#d8a96bd77fd68df7793a73036a3ba0d5405d477b"
|
||||
integrity sha1-2Klr13/Wjfd5OnMDajug1UBdR3s=
|
||||
|
||||
config-chain@^1.1.11:
|
||||
version "1.1.12"
|
||||
resolved "https://registry.npm.taobao.org/config-chain/download/config-chain-1.1.12.tgz#0fde8d091200eb5e808caf25fe618c02f48e4efa"
|
||||
integrity sha1-D96NCRIA616AjK8l/mGMAvSOTvo=
|
||||
dependencies:
|
||||
ini "^1.3.4"
|
||||
proto-list "~1.2.1"
|
||||
|
||||
content-disposition@^0.5.2:
|
||||
version "0.5.3"
|
||||
resolved "https://registry.npm.taobao.org/content-disposition/download/content-disposition-0.5.3.tgz#e130caf7e7279087c5616c2007d0485698984fbd"
|
||||
integrity sha1-4TDK9+cnkIfFYWwgB9BIVpiYT70=
|
||||
dependencies:
|
||||
safe-buffer "5.1.2"
|
||||
|
||||
core-util-is@~1.0.0:
|
||||
version "1.0.2"
|
||||
resolved "https://registry.npm.taobao.org/core-util-is/download/core-util-is-1.0.2.tgz#b5fd54220aa2bc5ab57aab7140c940754503c1a7"
|
||||
integrity sha1-tf1UIgqivFq1eqtxQMlAdUUDwac=
|
||||
|
||||
decode-uri-component@^0.2.0:
|
||||
version "0.2.0"
|
||||
resolved "https://registry.npm.taobao.org/decode-uri-component/download/decode-uri-component-0.2.0.tgz#eb3913333458775cb84cd1a1fae062106bb87545"
|
||||
integrity sha1-6zkTMzRYd1y4TNGh+uBiEGu4dUU=
|
||||
|
||||
decompress-response@^3.3.0:
|
||||
version "3.3.0"
|
||||
resolved "https://registry.npm.taobao.org/decompress-response/download/decompress-response-3.3.0.tgz#80a4dd323748384bfa248083622aedec982adff3"
|
||||
integrity sha1-gKTdMjdIOEv6JICDYirt7Jgq3/M=
|
||||
dependencies:
|
||||
mimic-response "^1.0.0"
|
||||
|
||||
decompress-tar@^4.0.0, decompress-tar@^4.1.0, decompress-tar@^4.1.1:
|
||||
version "4.1.1"
|
||||
resolved "https://registry.npm.taobao.org/decompress-tar/download/decompress-tar-4.1.1.tgz#718cbd3fcb16209716e70a26b84e7ba4592e5af1"
|
||||
integrity sha1-cYy9P8sWIJcW5womuE57pFkuWvE=
|
||||
dependencies:
|
||||
file-type "^5.2.0"
|
||||
is-stream "^1.1.0"
|
||||
tar-stream "^1.5.2"
|
||||
|
||||
decompress-tarbz2@^4.0.0:
|
||||
version "4.1.1"
|
||||
resolved "https://registry.npm.taobao.org/decompress-tarbz2/download/decompress-tarbz2-4.1.1.tgz#3082a5b880ea4043816349f378b56c516be1a39b"
|
||||
integrity sha1-MIKluIDqQEOBY0nzeLVsUWvho5s=
|
||||
dependencies:
|
||||
decompress-tar "^4.1.0"
|
||||
file-type "^6.1.0"
|
||||
is-stream "^1.1.0"
|
||||
seek-bzip "^1.0.5"
|
||||
unbzip2-stream "^1.0.9"
|
||||
|
||||
decompress-targz@^4.0.0:
|
||||
version "4.1.1"
|
||||
resolved "https://registry.npm.taobao.org/decompress-targz/download/decompress-targz-4.1.1.tgz#c09bc35c4d11f3de09f2d2da53e9de23e7ce1eee"
|
||||
integrity sha1-wJvDXE0R894J8tLaU+neI+fOHu4=
|
||||
dependencies:
|
||||
decompress-tar "^4.1.1"
|
||||
file-type "^5.2.0"
|
||||
is-stream "^1.1.0"
|
||||
|
||||
decompress-unzip@^4.0.1:
|
||||
version "4.0.1"
|
||||
resolved "https://registry.npm.taobao.org/decompress-unzip/download/decompress-unzip-4.0.1.tgz#deaaccdfd14aeaf85578f733ae8210f9b4848f69"
|
||||
integrity sha1-3qrM39FK6vhVePczroIQ+bSEj2k=
|
||||
dependencies:
|
||||
file-type "^3.8.0"
|
||||
get-stream "^2.2.0"
|
||||
pify "^2.3.0"
|
||||
yauzl "^2.4.2"
|
||||
|
||||
decompress@^4.2.0:
|
||||
version "4.2.1"
|
||||
resolved "https://registry.npm.taobao.org/decompress/download/decompress-4.2.1.tgz#007f55cc6a62c055afa37c07eb6a4ee1b773f118"
|
||||
integrity sha1-AH9VzGpiwFWvo3wH62pO4bdz8Rg=
|
||||
dependencies:
|
||||
decompress-tar "^4.0.0"
|
||||
decompress-tarbz2 "^4.0.0"
|
||||
decompress-targz "^4.0.0"
|
||||
decompress-unzip "^4.0.1"
|
||||
graceful-fs "^4.1.10"
|
||||
make-dir "^1.0.0"
|
||||
pify "^2.3.0"
|
||||
strip-dirs "^2.0.0"
|
||||
|
||||
defaults@^1.0.3:
|
||||
version "1.0.3"
|
||||
resolved "https://registry.npm.taobao.org/defaults/download/defaults-1.0.3.tgz#c656051e9817d9ff08ed881477f3fe4019f3ef7d"
|
||||
integrity sha1-xlYFHpgX2f8I7YgUd/P+QBnz730=
|
||||
dependencies:
|
||||
clone "^1.0.2"
|
||||
|
||||
download-git-repo@^3.0.2:
|
||||
version "3.0.2"
|
||||
resolved "https://registry.npm.taobao.org/download-git-repo/download/download-git-repo-3.0.2.tgz#8caae24fb2abd6453172deea5619036024f190f6"
|
||||
integrity sha1-jKriT7Kr1kUxct7qVhkDYCTxkPY=
|
||||
dependencies:
|
||||
download "^7.1.0"
|
||||
git-clone "^0.1.0"
|
||||
rimraf "^3.0.0"
|
||||
|
||||
download@^7.1.0:
|
||||
version "7.1.0"
|
||||
resolved "https://registry.npm.taobao.org/download/download/download-7.1.0.tgz#9059aa9d70b503ee76a132897be6dec8e5587233"
|
||||
integrity sha1-kFmqnXC1A+52oTKJe+beyOVYcjM=
|
||||
dependencies:
|
||||
archive-type "^4.0.0"
|
||||
caw "^2.0.1"
|
||||
content-disposition "^0.5.2"
|
||||
decompress "^4.2.0"
|
||||
ext-name "^5.0.0"
|
||||
file-type "^8.1.0"
|
||||
filenamify "^2.0.0"
|
||||
get-stream "^3.0.0"
|
||||
got "^8.3.1"
|
||||
make-dir "^1.2.0"
|
||||
p-event "^2.1.0"
|
||||
pify "^3.0.0"
|
||||
|
||||
duplexer3@^0.1.4:
|
||||
version "0.1.4"
|
||||
resolved "https://registry.npm.taobao.org/duplexer3/download/duplexer3-0.1.4.tgz#ee01dd1cac0ed3cbc7fdbea37dc0a8f1ce002ce2"
|
||||
integrity sha1-7gHdHKwO08vH/b6jfcCo8c4ALOI=
|
||||
|
||||
end-of-stream@^1.0.0:
|
||||
version "1.4.4"
|
||||
resolved "https://registry.npm.taobao.org/end-of-stream/download/end-of-stream-1.4.4.tgz#5ae64a5f45057baf3626ec14da0ca5e4b2431eb0"
|
||||
integrity sha1-WuZKX0UFe682JuwU2gyl5LJDHrA=
|
||||
dependencies:
|
||||
once "^1.4.0"
|
||||
|
||||
escape-string-regexp@^1.0.2:
|
||||
version "1.0.5"
|
||||
resolved "https://registry.npm.taobao.org/escape-string-regexp/download/escape-string-regexp-1.0.5.tgz?cache=0&sync_timestamp=1587627395453&other_urls=https%3A%2F%2Fregistry.npm.taobao.org%2Fescape-string-regexp%2Fdownload%2Fescape-string-regexp-1.0.5.tgz#1b61c0562190a8dff6ae3bb2cf0200ca130b86d4"
|
||||
integrity sha1-G2HAViGQqN/2rjuyzwIAyhMLhtQ=
|
||||
|
||||
ext-list@^2.0.0:
|
||||
version "2.2.2"
|
||||
resolved "https://registry.npm.taobao.org/ext-list/download/ext-list-2.2.2.tgz#0b98e64ed82f5acf0f2931babf69212ef52ddd37"
|
||||
integrity sha1-C5jmTtgvWs8PKTG6v2khLvUt3Tc=
|
||||
dependencies:
|
||||
mime-db "^1.28.0"
|
||||
|
||||
ext-name@^5.0.0:
|
||||
version "5.0.0"
|
||||
resolved "https://registry.npm.taobao.org/ext-name/download/ext-name-5.0.0.tgz#70781981d183ee15d13993c8822045c506c8f0a6"
|
||||
integrity sha1-cHgZgdGD7hXROZPIgiBFxQbI8KY=
|
||||
dependencies:
|
||||
ext-list "^2.0.0"
|
||||
sort-keys-length "^1.0.0"
|
||||
|
||||
fd-slicer@~1.1.0:
|
||||
version "1.1.0"
|
||||
resolved "https://registry.npm.taobao.org/fd-slicer/download/fd-slicer-1.1.0.tgz#25c7c89cb1f9077f8891bbe61d8f390eae256f1e"
|
||||
integrity sha1-JcfInLH5B3+IkbvmHY85Dq4lbx4=
|
||||
dependencies:
|
||||
pend "~1.2.0"
|
||||
|
||||
file-type@^3.8.0:
|
||||
version "3.9.0"
|
||||
resolved "https://registry.npm.taobao.org/file-type/download/file-type-3.9.0.tgz?cache=0&sync_timestamp=1608546795693&other_urls=https%3A%2F%2Fregistry.npm.taobao.org%2Ffile-type%2Fdownload%2Ffile-type-3.9.0.tgz#257a078384d1db8087bc449d107d52a52672b9e9"
|
||||
integrity sha1-JXoHg4TR24CHvESdEH1SpSZyuek=
|
||||
|
||||
file-type@^4.2.0:
|
||||
version "4.4.0"
|
||||
resolved "https://registry.npm.taobao.org/file-type/download/file-type-4.4.0.tgz?cache=0&sync_timestamp=1608546795693&other_urls=https%3A%2F%2Fregistry.npm.taobao.org%2Ffile-type%2Fdownload%2Ffile-type-4.4.0.tgz#1b600e5fca1fbdc6e80c0a70c71c8dba5f7906c5"
|
||||
integrity sha1-G2AOX8ofvcboDApwxxyNul95BsU=
|
||||
|
||||
file-type@^5.2.0:
|
||||
version "5.2.0"
|
||||
resolved "https://registry.npm.taobao.org/file-type/download/file-type-5.2.0.tgz?cache=0&sync_timestamp=1608546795693&other_urls=https%3A%2F%2Fregistry.npm.taobao.org%2Ffile-type%2Fdownload%2Ffile-type-5.2.0.tgz#2ddbea7c73ffe36368dfae49dc338c058c2b8ad6"
|
||||
integrity sha1-LdvqfHP/42No365J3DOMBYwritY=
|
||||
|
||||
file-type@^6.1.0:
|
||||
version "6.2.0"
|
||||
resolved "https://registry.npm.taobao.org/file-type/download/file-type-6.2.0.tgz?cache=0&sync_timestamp=1608546795693&other_urls=https%3A%2F%2Fregistry.npm.taobao.org%2Ffile-type%2Fdownload%2Ffile-type-6.2.0.tgz#e50cd75d356ffed4e306dc4f5bcf52a79903a919"
|
||||
integrity sha1-5QzXXTVv/tTjBtxPW89Sp5kDqRk=
|
||||
|
||||
file-type@^8.1.0:
|
||||
version "8.1.0"
|
||||
resolved "https://registry.npm.taobao.org/file-type/download/file-type-8.1.0.tgz?cache=0&sync_timestamp=1608546795693&other_urls=https%3A%2F%2Fregistry.npm.taobao.org%2Ffile-type%2Fdownload%2Ffile-type-8.1.0.tgz#244f3b7ef641bbe0cca196c7276e4b332399f68c"
|
||||
integrity sha1-JE87fvZBu+DMoZbHJ25LMyOZ9ow=
|
||||
|
||||
filename-reserved-regex@^2.0.0:
|
||||
version "2.0.0"
|
||||
resolved "https://registry.npm.taobao.org/filename-reserved-regex/download/filename-reserved-regex-2.0.0.tgz#abf73dfab735d045440abfea2d91f389ebbfa229"
|
||||
integrity sha1-q/c9+rc10EVECr/qLZHzieu/oik=
|
||||
|
||||
filenamify@^2.0.0:
|
||||
version "2.1.0"
|
||||
resolved "https://registry.npm.taobao.org/filenamify/download/filenamify-2.1.0.tgz?cache=0&sync_timestamp=1600943022600&other_urls=https%3A%2F%2Fregistry.npm.taobao.org%2Ffilenamify%2Fdownload%2Ffilenamify-2.1.0.tgz#88faf495fb1b47abfd612300002a16228c677ee9"
|
||||
integrity sha1-iPr0lfsbR6v9YSMAACoWIoxnfuk=
|
||||
dependencies:
|
||||
filename-reserved-regex "^2.0.0"
|
||||
strip-outer "^1.0.0"
|
||||
trim-repeated "^1.0.0"
|
||||
|
||||
from2@^2.1.1:
|
||||
version "2.3.0"
|
||||
resolved "https://registry.npm.taobao.org/from2/download/from2-2.3.0.tgz#8bfb5502bde4a4d36cfdeea007fcca21d7e382af"
|
||||
integrity sha1-i/tVAr3kpNNs/e6gB/zKIdfjgq8=
|
||||
dependencies:
|
||||
inherits "^2.0.1"
|
||||
readable-stream "^2.0.0"
|
||||
|
||||
fs-constants@^1.0.0:
|
||||
version "1.0.0"
|
||||
resolved "https://registry.npm.taobao.org/fs-constants/download/fs-constants-1.0.0.tgz#6be0de9be998ce16af8afc24497b9ee9b7ccd9ad"
|
||||
integrity sha1-a+Dem+mYzhavivwkSXue6bfM2a0=
|
||||
|
||||
fs-extra@^9.0.1:
|
||||
version "9.0.1"
|
||||
resolved "https://registry.npm.taobao.org/fs-extra/download/fs-extra-9.0.1.tgz#910da0062437ba4c39fedd863f1675ccfefcb9fc"
|
||||
integrity sha1-kQ2gBiQ3ukw5/t2GPxZ1zP78ufw=
|
||||
dependencies:
|
||||
at-least-node "^1.0.0"
|
||||
graceful-fs "^4.2.0"
|
||||
jsonfile "^6.0.1"
|
||||
universalify "^1.0.0"
|
||||
|
||||
fs.realpath@^1.0.0:
|
||||
version "1.0.0"
|
||||
resolved "https://registry.npm.taobao.org/fs.realpath/download/fs.realpath-1.0.0.tgz#1504ad2523158caa40db4a2787cb01411994ea4f"
|
||||
integrity sha1-FQStJSMVjKpA20onh8sBQRmU6k8=
|
||||
|
||||
get-proxy@^2.0.0:
|
||||
version "2.1.0"
|
||||
resolved "https://registry.npm.taobao.org/get-proxy/download/get-proxy-2.1.0.tgz#349f2b4d91d44c4d4d4e9cba2ad90143fac5ef93"
|
||||
integrity sha1-NJ8rTZHUTE1NTpy6KtkBQ/rF75M=
|
||||
dependencies:
|
||||
npm-conf "^1.1.0"
|
||||
|
||||
get-stream@3.0.0, get-stream@^3.0.0:
|
||||
version "3.0.0"
|
||||
resolved "https://registry.npm.taobao.org/get-stream/download/get-stream-3.0.0.tgz#8e943d1358dc37555054ecbe2edb05aa174ede14"
|
||||
integrity sha1-jpQ9E1jcN1VQVOy+LtsFqhdO3hQ=
|
||||
|
||||
get-stream@^2.2.0:
|
||||
version "2.3.1"
|
||||
resolved "https://registry.npm.taobao.org/get-stream/download/get-stream-2.3.1.tgz#5f38f93f346009666ee0150a054167f91bdd95de"
|
||||
integrity sha1-Xzj5PzRgCWZu4BUKBUFn+Rvdld4=
|
||||
dependencies:
|
||||
object-assign "^4.0.1"
|
||||
pinkie-promise "^2.0.0"
|
||||
|
||||
git-clone@^0.1.0:
|
||||
version "0.1.0"
|
||||
resolved "https://registry.npm.taobao.org/git-clone/download/git-clone-0.1.0.tgz#0d76163778093aef7f1c30238f2a9ef3f07a2eb9"
|
||||
integrity sha1-DXYWN3gJOu9/HDAjjyqe8/B6Lrk=
|
||||
|
||||
glob@^7.1.3:
|
||||
version "7.1.6"
|
||||
resolved "https://registry.npm.taobao.org/glob/download/glob-7.1.6.tgz#141f33b81a7c2492e125594307480c46679278a6"
|
||||
integrity sha1-FB8zuBp8JJLhJVlDB0gMRmeSeKY=
|
||||
dependencies:
|
||||
fs.realpath "^1.0.0"
|
||||
inflight "^1.0.4"
|
||||
inherits "2"
|
||||
minimatch "^3.0.4"
|
||||
once "^1.3.0"
|
||||
path-is-absolute "^1.0.0"
|
||||
|
||||
got@^8.3.1:
|
||||
version "8.3.2"
|
||||
resolved "https://registry.npm.taobao.org/got/download/got-8.3.2.tgz?cache=0&sync_timestamp=1607657999452&other_urls=https%3A%2F%2Fregistry.npm.taobao.org%2Fgot%2Fdownload%2Fgot-8.3.2.tgz#1d23f64390e97f776cac52e5b936e5f514d2e937"
|
||||
integrity sha1-HSP2Q5Dpf3dsrFLluTbl9RTS6Tc=
|
||||
dependencies:
|
||||
"@sindresorhus/is" "^0.7.0"
|
||||
cacheable-request "^2.1.1"
|
||||
decompress-response "^3.3.0"
|
||||
duplexer3 "^0.1.4"
|
||||
get-stream "^3.0.0"
|
||||
into-stream "^3.1.0"
|
||||
is-retry-allowed "^1.1.0"
|
||||
isurl "^1.0.0-alpha5"
|
||||
lowercase-keys "^1.0.0"
|
||||
mimic-response "^1.0.0"
|
||||
p-cancelable "^0.4.0"
|
||||
p-timeout "^2.0.1"
|
||||
pify "^3.0.0"
|
||||
safe-buffer "^5.1.1"
|
||||
timed-out "^4.0.1"
|
||||
url-parse-lax "^3.0.0"
|
||||
url-to-options "^1.0.1"
|
||||
|
||||
graceful-fs@^4.1.10, graceful-fs@^4.1.6, graceful-fs@^4.2.0:
|
||||
version "4.2.4"
|
||||
resolved "https://registry.npm.taobao.org/graceful-fs/download/graceful-fs-4.2.4.tgz#2256bde14d3632958c465ebc96dc467ca07a29fb"
|
||||
integrity sha1-Ila94U02MpWMRl68ltxGfKB6Kfs=
|
||||
|
||||
has-flag@^4.0.0:
|
||||
version "4.0.0"
|
||||
resolved "https://registry.npm.taobao.org/has-flag/download/has-flag-4.0.0.tgz#944771fd9c81c81265c4d6941860da06bb59479b"
|
||||
integrity sha1-lEdx/ZyByBJlxNaUGGDaBrtZR5s=
|
||||
|
||||
has-symbol-support-x@^1.4.1:
|
||||
version "1.4.2"
|
||||
resolved "https://registry.npm.taobao.org/has-symbol-support-x/download/has-symbol-support-x-1.4.2.tgz#1409f98bc00247da45da67cee0a36f282ff26455"
|
||||
integrity sha1-FAn5i8ACR9pF2mfO4KNvKC/yZFU=
|
||||
|
||||
has-to-string-tag-x@^1.2.0:
|
||||
version "1.4.1"
|
||||
resolved "https://registry.npm.taobao.org/has-to-string-tag-x/download/has-to-string-tag-x-1.4.1.tgz#a045ab383d7b4b2012a00148ab0aa5f290044d4d"
|
||||
integrity sha1-oEWrOD17SyASoAFIqwql8pAETU0=
|
||||
dependencies:
|
||||
has-symbol-support-x "^1.4.1"
|
||||
|
||||
http-cache-semantics@3.8.1:
|
||||
version "3.8.1"
|
||||
resolved "https://registry.npm.taobao.org/http-cache-semantics/download/http-cache-semantics-3.8.1.tgz#39b0e16add9b605bf0a9ef3d9daaf4843b4cacd2"
|
||||
integrity sha1-ObDhat2bYFvwqe89nar0hDtMrNI=
|
||||
|
||||
ieee754@^1.1.13:
|
||||
version "1.2.1"
|
||||
resolved "https://registry.npm.taobao.org/ieee754/download/ieee754-1.2.1.tgz#8eb7a10a63fff25d15a57b001586d177d1b0d352"
|
||||
integrity sha1-jrehCmP/8l0VpXsAFYbRd9Gw01I=
|
||||
|
||||
inflight@^1.0.4:
|
||||
version "1.0.6"
|
||||
resolved "https://registry.npm.taobao.org/inflight/download/inflight-1.0.6.tgz#49bd6331d7d02d0c09bc910a1075ba8165b56df9"
|
||||
integrity sha1-Sb1jMdfQLQwJvJEKEHW6gWW1bfk=
|
||||
dependencies:
|
||||
once "^1.3.0"
|
||||
wrappy "1"
|
||||
|
||||
inherits@2, inherits@^2.0.1, inherits@^2.0.3, inherits@^2.0.4, inherits@~2.0.3:
|
||||
version "2.0.4"
|
||||
resolved "https://registry.npm.taobao.org/inherits/download/inherits-2.0.4.tgz#0fa2c64f932917c3433a0ded55363aae37416b7c"
|
||||
integrity sha1-D6LGT5MpF8NDOg3tVTY6rjdBa3w=
|
||||
|
||||
ini@^1.3.4:
|
||||
version "1.3.8"
|
||||
resolved "https://registry.npm.taobao.org/ini/download/ini-1.3.8.tgz#a29da425b48806f34767a4efce397269af28432c"
|
||||
integrity sha1-op2kJbSIBvNHZ6Tvzjlyaa8oQyw=
|
||||
|
||||
into-stream@^3.1.0:
|
||||
version "3.1.0"
|
||||
resolved "https://registry.npm.taobao.org/into-stream/download/into-stream-3.1.0.tgz#96fb0a936c12babd6ff1752a17d05616abd094c6"
|
||||
integrity sha1-lvsKk2wSur1v8XUqF9BWFqvQlMY=
|
||||
dependencies:
|
||||
from2 "^2.1.1"
|
||||
p-is-promise "^1.1.0"
|
||||
|
||||
is-interactive@^1.0.0:
|
||||
version "1.0.0"
|
||||
resolved "https://registry.npm.taobao.org/is-interactive/download/is-interactive-1.0.0.tgz#cea6e6ae5c870a7b0a0004070b7b587e0252912e"
|
||||
integrity sha1-zqbmrlyHCnsKAAQHC3tYfgJSkS4=
|
||||
|
||||
is-natural-number@^4.0.1:
|
||||
version "4.0.1"
|
||||
resolved "https://registry.npm.taobao.org/is-natural-number/download/is-natural-number-4.0.1.tgz#ab9d76e1db4ced51e35de0c72ebecf09f734cde8"
|
||||
integrity sha1-q5124dtM7VHjXeDHLr7PCfc0zeg=
|
||||
|
||||
is-object@^1.0.1:
|
||||
version "1.0.2"
|
||||
resolved "https://registry.npm.taobao.org/is-object/download/is-object-1.0.2.tgz#a56552e1c665c9e950b4a025461da87e72f86fcf"
|
||||
integrity sha1-pWVS4cZlyelQtKAlRh2ofnL4b88=
|
||||
|
||||
is-plain-obj@^1.0.0:
|
||||
version "1.1.0"
|
||||
resolved "https://registry.npm.taobao.org/is-plain-obj/download/is-plain-obj-1.1.0.tgz?cache=0&sync_timestamp=1602542377539&other_urls=https%3A%2F%2Fregistry.npm.taobao.org%2Fis-plain-obj%2Fdownload%2Fis-plain-obj-1.1.0.tgz#71a50c8429dfca773c92a390a4a03b39fcd51d3e"
|
||||
integrity sha1-caUMhCnfync8kqOQpKA7OfzVHT4=
|
||||
|
||||
is-retry-allowed@^1.1.0:
|
||||
version "1.2.0"
|
||||
resolved "https://registry.npm.taobao.org/is-retry-allowed/download/is-retry-allowed-1.2.0.tgz#d778488bd0a4666a3be8a1482b9f2baafedea8b4"
|
||||
integrity sha1-13hIi9CkZmo76KFIK58rqv7eqLQ=
|
||||
|
||||
is-stream@^1.1.0:
|
||||
version "1.1.0"
|
||||
resolved "https://registry.npm.taobao.org/is-stream/download/is-stream-1.1.0.tgz#12d4a3dd4e68e0b79ceb8dbc84173ae80d91ca44"
|
||||
integrity sha1-EtSj3U5o4Lec6428hBc66A2RykQ=
|
||||
|
||||
isarray@~1.0.0:
|
||||
version "1.0.0"
|
||||
resolved "https://registry.npm.taobao.org/isarray/download/isarray-1.0.0.tgz#bb935d48582cba168c06834957a54a3e07124f11"
|
||||
integrity sha1-u5NdSFgsuhaMBoNJV6VKPgcSTxE=
|
||||
|
||||
isurl@^1.0.0-alpha5:
|
||||
version "1.0.0"
|
||||
resolved "https://registry.npm.taobao.org/isurl/download/isurl-1.0.0.tgz#b27f4f49f3cdaa3ea44a0a5b7f3462e6edc39d67"
|
||||
integrity sha1-sn9PSfPNqj6kSgpbfzRi5u3DnWc=
|
||||
dependencies:
|
||||
has-to-string-tag-x "^1.2.0"
|
||||
is-object "^1.0.1"
|
||||
|
||||
json-buffer@3.0.0:
|
||||
version "3.0.0"
|
||||
resolved "https://registry.npm.taobao.org/json-buffer/download/json-buffer-3.0.0.tgz#5b1f397afc75d677bde8bcfc0e47e1f9a3d9a898"
|
||||
integrity sha1-Wx85evx11ne96Lz8Dkfh+aPZqJg=
|
||||
|
||||
jsonfile@^6.0.1:
|
||||
version "6.1.0"
|
||||
resolved "https://registry.npm.taobao.org/jsonfile/download/jsonfile-6.1.0.tgz?cache=0&sync_timestamp=1604162147908&other_urls=https%3A%2F%2Fregistry.npm.taobao.org%2Fjsonfile%2Fdownload%2Fjsonfile-6.1.0.tgz#bc55b2634793c679ec6403094eb13698a6ec0aae"
|
||||
integrity sha1-vFWyY0eTxnnsZAMJTrE2mKbsCq4=
|
||||
dependencies:
|
||||
universalify "^2.0.0"
|
||||
optionalDependencies:
|
||||
graceful-fs "^4.1.6"
|
||||
|
||||
keyv@3.0.0:
|
||||
version "3.0.0"
|
||||
resolved "https://registry.npm.taobao.org/keyv/download/keyv-3.0.0.tgz?cache=0&sync_timestamp=1600337805501&other_urls=https%3A%2F%2Fregistry.npm.taobao.org%2Fkeyv%2Fdownload%2Fkeyv-3.0.0.tgz#44923ba39e68b12a7cec7df6c3268c031f2ef373"
|
||||
integrity sha1-RJI7o55osSp87H32wyaMAx8u83M=
|
||||
dependencies:
|
||||
json-buffer "3.0.0"
|
||||
|
||||
log-symbols@^4.0.0:
|
||||
version "4.0.0"
|
||||
resolved "https://registry.npm.taobao.org/log-symbols/download/log-symbols-4.0.0.tgz?cache=0&sync_timestamp=1587899010652&other_urls=https%3A%2F%2Fregistry.npm.taobao.org%2Flog-symbols%2Fdownload%2Flog-symbols-4.0.0.tgz#69b3cc46d20f448eccdb75ea1fa733d9e821c920"
|
||||
integrity sha1-abPMRtIPRI7M23XqH6cz2eghySA=
|
||||
dependencies:
|
||||
chalk "^4.0.0"
|
||||
|
||||
lowercase-keys@1.0.0:
|
||||
version "1.0.0"
|
||||
resolved "https://registry.npm.taobao.org/lowercase-keys/download/lowercase-keys-1.0.0.tgz#4e3366b39e7f5457e35f1324bdf6f88d0bfc7306"
|
||||
integrity sha1-TjNms55/VFfjXxMkvfb4jQv8cwY=
|
||||
|
||||
lowercase-keys@^1.0.0:
|
||||
version "1.0.1"
|
||||
resolved "https://registry.npm.taobao.org/lowercase-keys/download/lowercase-keys-1.0.1.tgz#6f9e30b47084d971a7c820ff15a6c5167b74c26f"
|
||||
integrity sha1-b54wtHCE2XGnyCD/FabFFnt0wm8=
|
||||
|
||||
make-dir@^1.0.0, make-dir@^1.2.0:
|
||||
version "1.3.0"
|
||||
resolved "https://registry.npm.taobao.org/make-dir/download/make-dir-1.3.0.tgz?cache=0&sync_timestamp=1598277414050&other_urls=https%3A%2F%2Fregistry.npm.taobao.org%2Fmake-dir%2Fdownload%2Fmake-dir-1.3.0.tgz#79c1033b80515bd6d24ec9933e860ca75ee27f0c"
|
||||
integrity sha1-ecEDO4BRW9bSTsmTPoYMp17ifww=
|
||||
dependencies:
|
||||
pify "^3.0.0"
|
||||
|
||||
mime-db@^1.28.0:
|
||||
version "1.45.0"
|
||||
resolved "https://registry.npm.taobao.org/mime-db/download/mime-db-1.45.0.tgz?cache=0&sync_timestamp=1600831152656&other_urls=https%3A%2F%2Fregistry.npm.taobao.org%2Fmime-db%2Fdownload%2Fmime-db-1.45.0.tgz#cceeda21ccd7c3a745eba2decd55d4b73e7879ea"
|
||||
integrity sha1-zO7aIczXw6dF66LezVXUtz54eeo=
|
||||
|
||||
mimic-fn@^2.1.0:
|
||||
version "2.1.0"
|
||||
resolved "https://registry.npm.taobao.org/mimic-fn/download/mimic-fn-2.1.0.tgz?cache=0&sync_timestamp=1596093999622&other_urls=https%3A%2F%2Fregistry.npm.taobao.org%2Fmimic-fn%2Fdownload%2Fmimic-fn-2.1.0.tgz#7ed2c2ccccaf84d3ffcb7a69b57711fc2083401b"
|
||||
integrity sha1-ftLCzMyvhNP/y3pptXcR/CCDQBs=
|
||||
|
||||
mimic-response@^1.0.0:
|
||||
version "1.0.1"
|
||||
resolved "https://registry.npm.taobao.org/mimic-response/download/mimic-response-1.0.1.tgz#4923538878eef42063cb8a3e3b0798781487ab1b"
|
||||
integrity sha1-SSNTiHju9CBjy4o+OweYeBSHqxs=
|
||||
|
||||
minimatch@^3.0.4:
|
||||
version "3.0.4"
|
||||
resolved "https://registry.npm.taobao.org/minimatch/download/minimatch-3.0.4.tgz#5166e286457f03306064be5497e8dbb0c3d32083"
|
||||
integrity sha1-UWbihkV/AzBgZL5Ul+jbsMPTIIM=
|
||||
dependencies:
|
||||
brace-expansion "^1.1.7"
|
||||
|
||||
normalize-url@2.0.1:
|
||||
version "2.0.1"
|
||||
resolved "https://registry.npm.taobao.org/normalize-url/download/normalize-url-2.0.1.tgz#835a9da1551fa26f70e92329069a23aa6574d7e6"
|
||||
integrity sha1-g1qdoVUfom9w6SMpBpojqmV01+Y=
|
||||
dependencies:
|
||||
prepend-http "^2.0.0"
|
||||
query-string "^5.0.1"
|
||||
sort-keys "^2.0.0"
|
||||
|
||||
npm-conf@^1.1.0:
|
||||
version "1.1.3"
|
||||
resolved "https://registry.npm.taobao.org/npm-conf/download/npm-conf-1.1.3.tgz#256cc47bd0e218c259c4e9550bf413bc2192aff9"
|
||||
integrity sha1-JWzEe9DiGMJZxOlVC/QTvCGSr/k=
|
||||
dependencies:
|
||||
config-chain "^1.1.11"
|
||||
pify "^3.0.0"
|
||||
|
||||
object-assign@^4.0.1, object-assign@^4.1.0:
|
||||
version "4.1.1"
|
||||
resolved "https://registry.npm.taobao.org/object-assign/download/object-assign-4.1.1.tgz#2109adc7965887cfc05cbbd442cac8bfbb360863"
|
||||
integrity sha1-IQmtx5ZYh8/AXLvUQsrIv7s2CGM=
|
||||
|
||||
once@^1.3.0, once@^1.4.0:
|
||||
version "1.4.0"
|
||||
resolved "https://registry.npm.taobao.org/once/download/once-1.4.0.tgz#583b1aa775961d4b113ac17d9c50baef9dd76bd1"
|
||||
integrity sha1-WDsap3WWHUsROsF9nFC6753Xa9E=
|
||||
dependencies:
|
||||
wrappy "1"
|
||||
|
||||
onetime@^5.1.0:
|
||||
version "5.1.2"
|
||||
resolved "https://registry.npm.taobao.org/onetime/download/onetime-5.1.2.tgz?cache=0&sync_timestamp=1597003638732&other_urls=https%3A%2F%2Fregistry.npm.taobao.org%2Fonetime%2Fdownload%2Fonetime-5.1.2.tgz#d0e96ebb56b07476df1dd9c4806e5237985ca45e"
|
||||
integrity sha1-0Oluu1awdHbfHdnEgG5SN5hcpF4=
|
||||
dependencies:
|
||||
mimic-fn "^2.1.0"
|
||||
|
||||
ora@^5.2.0:
|
||||
version "5.2.0"
|
||||
resolved "https://registry.npm.taobao.org/ora/download/ora-5.2.0.tgz?cache=0&sync_timestamp=1609228442604&other_urls=https%3A%2F%2Fregistry.npm.taobao.org%2Fora%2Fdownload%2Fora-5.2.0.tgz#de10bfd2d15514384af45f3fa9d9b1aaf344fda1"
|
||||
integrity sha1-3hC/0tFVFDhK9F8/qdmxqvNE/aE=
|
||||
dependencies:
|
||||
bl "^4.0.3"
|
||||
chalk "^4.1.0"
|
||||
cli-cursor "^3.1.0"
|
||||
cli-spinners "^2.5.0"
|
||||
is-interactive "^1.0.0"
|
||||
log-symbols "^4.0.0"
|
||||
strip-ansi "^6.0.0"
|
||||
wcwidth "^1.0.1"
|
||||
|
||||
p-cancelable@^0.4.0:
|
||||
version "0.4.1"
|
||||
resolved "https://registry.npm.taobao.org/p-cancelable/download/p-cancelable-0.4.1.tgz#35f363d67d52081c8d9585e37bcceb7e0bbcb2a0"
|
||||
integrity sha1-NfNj1n1SCByNlYXje8zrfgu8sqA=
|
||||
|
||||
p-event@^2.1.0:
|
||||
version "2.3.1"
|
||||
resolved "https://registry.npm.taobao.org/p-event/download/p-event-2.3.1.tgz#596279ef169ab2c3e0cae88c1cfbb08079993ef6"
|
||||
integrity sha1-WWJ57xaassPgyuiMHPuwgHmZPvY=
|
||||
dependencies:
|
||||
p-timeout "^2.0.1"
|
||||
|
||||
p-finally@^1.0.0:
|
||||
version "1.0.0"
|
||||
resolved "https://registry.npm.taobao.org/p-finally/download/p-finally-1.0.0.tgz#3fbcfb15b899a44123b34b6dcc18b724336a2cae"
|
||||
integrity sha1-P7z7FbiZpEEjs0ttzBi3JDNqLK4=
|
||||
|
||||
p-is-promise@^1.1.0:
|
||||
version "1.1.0"
|
||||
resolved "https://registry.npm.taobao.org/p-is-promise/download/p-is-promise-1.1.0.tgz#9c9456989e9f6588017b0434d56097675c3da05e"
|
||||
integrity sha1-nJRWmJ6fZYgBewQ01WCXZ1w9oF4=
|
||||
|
||||
p-timeout@^2.0.1:
|
||||
version "2.0.1"
|
||||
resolved "https://registry.npm.taobao.org/p-timeout/download/p-timeout-2.0.1.tgz?cache=0&sync_timestamp=1608986761559&other_urls=https%3A%2F%2Fregistry.npm.taobao.org%2Fp-timeout%2Fdownload%2Fp-timeout-2.0.1.tgz#d8dd1979595d2dc0139e1fe46b8b646cb3cdf038"
|
||||
integrity sha1-2N0ZeVldLcATnh/ka4tkbLPN8Dg=
|
||||
dependencies:
|
||||
p-finally "^1.0.0"
|
||||
|
||||
path-is-absolute@^1.0.0:
|
||||
version "1.0.1"
|
||||
resolved "https://registry.npm.taobao.org/path-is-absolute/download/path-is-absolute-1.0.1.tgz#174b9268735534ffbc7ace6bf53a5a9e1b5c5f5f"
|
||||
integrity sha1-F0uSaHNVNP+8es5r9TpanhtcX18=
|
||||
|
||||
pend@~1.2.0:
|
||||
version "1.2.0"
|
||||
resolved "https://registry.npm.taobao.org/pend/download/pend-1.2.0.tgz#7a57eb550a6783f9115331fcf4663d5c8e007a50"
|
||||
integrity sha1-elfrVQpng/kRUzH89GY9XI4AelA=
|
||||
|
||||
pify@^2.3.0:
|
||||
version "2.3.0"
|
||||
resolved "https://registry.npm.taobao.org/pify/download/pify-2.3.0.tgz?cache=0&other_urls=https%3A%2F%2Fregistry.npm.taobao.org%2Fpify%2Fdownload%2Fpify-2.3.0.tgz#ed141a6ac043a849ea588498e7dca8b15330e90c"
|
||||
integrity sha1-7RQaasBDqEnqWISY59yosVMw6Qw=
|
||||
|
||||
pify@^3.0.0:
|
||||
version "3.0.0"
|
||||
resolved "https://registry.npm.taobao.org/pify/download/pify-3.0.0.tgz?cache=0&other_urls=https%3A%2F%2Fregistry.npm.taobao.org%2Fpify%2Fdownload%2Fpify-3.0.0.tgz#e5a4acd2c101fdf3d9a4d07f0dbc4db49dd28176"
|
||||
integrity sha1-5aSs0sEB/fPZpNB/DbxNtJ3SgXY=
|
||||
|
||||
pinkie-promise@^2.0.0:
|
||||
version "2.0.1"
|
||||
resolved "https://registry.npm.taobao.org/pinkie-promise/download/pinkie-promise-2.0.1.tgz#2135d6dfa7a358c069ac9b178776288228450ffa"
|
||||
integrity sha1-ITXW36ejWMBprJsXh3YogihFD/o=
|
||||
dependencies:
|
||||
pinkie "^2.0.0"
|
||||
|
||||
pinkie@^2.0.0:
|
||||
version "2.0.4"
|
||||
resolved "https://registry.npm.taobao.org/pinkie/download/pinkie-2.0.4.tgz#72556b80cfa0d48a974e80e77248e80ed4f7f870"
|
||||
integrity sha1-clVrgM+g1IqXToDnckjoDtT3+HA=
|
||||
|
||||
prepend-http@^2.0.0:
|
||||
version "2.0.0"
|
||||
resolved "https://registry.npm.taobao.org/prepend-http/download/prepend-http-2.0.0.tgz#e92434bfa5ea8c19f41cdfd401d741a3c819d897"
|
||||
integrity sha1-6SQ0v6XqjBn0HN/UAddBo8gZ2Jc=
|
||||
|
||||
process-nextick-args@~2.0.0:
|
||||
version "2.0.1"
|
||||
resolved "https://registry.npm.taobao.org/process-nextick-args/download/process-nextick-args-2.0.1.tgz#7820d9b16120cc55ca9ae7792680ae7dba6d7fe2"
|
||||
integrity sha1-eCDZsWEgzFXKmud5JoCufbptf+I=
|
||||
|
||||
proto-list@~1.2.1:
|
||||
version "1.2.4"
|
||||
resolved "https://registry.npm.taobao.org/proto-list/download/proto-list-1.2.4.tgz#212d5bfe1318306a420f6402b8e26ff39647a849"
|
||||
integrity sha1-IS1b/hMYMGpCD2QCuOJv85ZHqEk=
|
||||
|
||||
query-string@^5.0.1:
|
||||
version "5.1.1"
|
||||
resolved "https://registry.npm.taobao.org/query-string/download/query-string-5.1.1.tgz?cache=0&sync_timestamp=1609310850603&other_urls=https%3A%2F%2Fregistry.npm.taobao.org%2Fquery-string%2Fdownload%2Fquery-string-5.1.1.tgz#a78c012b71c17e05f2e3fa2319dd330682efb3cb"
|
||||
integrity sha1-p4wBK3HBfgXy4/ojGd0zBoLvs8s=
|
||||
dependencies:
|
||||
decode-uri-component "^0.2.0"
|
||||
object-assign "^4.1.0"
|
||||
strict-uri-encode "^1.0.0"
|
||||
|
||||
readable-stream@^2.0.0, readable-stream@^2.3.0, readable-stream@^2.3.5:
|
||||
version "2.3.7"
|
||||
resolved "https://registry.npm.taobao.org/readable-stream/download/readable-stream-2.3.7.tgz#1eca1cf711aef814c04f62252a36a62f6cb23b57"
|
||||
integrity sha1-Hsoc9xGu+BTAT2IlKjamL2yyO1c=
|
||||
dependencies:
|
||||
core-util-is "~1.0.0"
|
||||
inherits "~2.0.3"
|
||||
isarray "~1.0.0"
|
||||
process-nextick-args "~2.0.0"
|
||||
safe-buffer "~5.1.1"
|
||||
string_decoder "~1.1.1"
|
||||
util-deprecate "~1.0.1"
|
||||
|
||||
readable-stream@^3.4.0:
|
||||
version "3.6.0"
|
||||
resolved "https://registry.npm.taobao.org/readable-stream/download/readable-stream-3.6.0.tgz#337bbda3adc0706bd3e024426a286d4b4b2c9198"
|
||||
integrity sha1-M3u9o63AcGvT4CRCaihtS0sskZg=
|
||||
dependencies:
|
||||
inherits "^2.0.3"
|
||||
string_decoder "^1.1.1"
|
||||
util-deprecate "^1.0.1"
|
||||
|
||||
responselike@1.0.2:
|
||||
version "1.0.2"
|
||||
resolved "https://registry.npm.taobao.org/responselike/download/responselike-1.0.2.tgz#918720ef3b631c5642be068f15ade5a46f4ba1e7"
|
||||
integrity sha1-kYcg7ztjHFZCvgaPFa3lpG9Loec=
|
||||
dependencies:
|
||||
lowercase-keys "^1.0.0"
|
||||
|
||||
restore-cursor@^3.1.0:
|
||||
version "3.1.0"
|
||||
resolved "https://registry.npm.taobao.org/restore-cursor/download/restore-cursor-3.1.0.tgz#39f67c54b3a7a58cea5236d95cf0034239631f7e"
|
||||
integrity sha1-OfZ8VLOnpYzqUjbZXPADQjljH34=
|
||||
dependencies:
|
||||
onetime "^5.1.0"
|
||||
signal-exit "^3.0.2"
|
||||
|
||||
rimraf@^3.0.0:
|
||||
version "3.0.2"
|
||||
resolved "https://registry.npm.taobao.org/rimraf/download/rimraf-3.0.2.tgz?cache=0&other_urls=https%3A%2F%2Fregistry.npm.taobao.org%2Frimraf%2Fdownload%2Frimraf-3.0.2.tgz#f1a5402ba6220ad52cc1282bac1ae3aa49fd061a"
|
||||
integrity sha1-8aVAK6YiCtUswSgrrBrjqkn9Bho=
|
||||
dependencies:
|
||||
glob "^7.1.3"
|
||||
|
||||
safe-buffer@5.1.2, safe-buffer@~5.1.0, safe-buffer@~5.1.1:
|
||||
version "5.1.2"
|
||||
resolved "https://registry.npm.taobao.org/safe-buffer/download/safe-buffer-5.1.2.tgz?cache=0&sync_timestamp=1589129611964&other_urls=https%3A%2F%2Fregistry.npm.taobao.org%2Fsafe-buffer%2Fdownload%2Fsafe-buffer-5.1.2.tgz#991ec69d296e0313747d59bdfd2b745c35f8828d"
|
||||
integrity sha1-mR7GnSluAxN0fVm9/St0XDX4go0=
|
||||
|
||||
safe-buffer@^5.0.1, safe-buffer@^5.1.1, safe-buffer@~5.2.0:
|
||||
version "5.2.1"
|
||||
resolved "https://registry.npm.taobao.org/safe-buffer/download/safe-buffer-5.2.1.tgz?cache=0&sync_timestamp=1589129611964&other_urls=https%3A%2F%2Fregistry.npm.taobao.org%2Fsafe-buffer%2Fdownload%2Fsafe-buffer-5.2.1.tgz#1eaf9fa9bdb1fdd4ec75f58f9cdb4e6b7827eec6"
|
||||
integrity sha1-Hq+fqb2x/dTsdfWPnNtOa3gn7sY=
|
||||
|
||||
seek-bzip@^1.0.5:
|
||||
version "1.0.6"
|
||||
resolved "https://registry.npm.taobao.org/seek-bzip/download/seek-bzip-1.0.6.tgz#35c4171f55a680916b52a07859ecf3b5857f21c4"
|
||||
integrity sha1-NcQXH1WmgJFrUqB4WezztYV/IcQ=
|
||||
dependencies:
|
||||
commander "^2.8.1"
|
||||
|
||||
signal-exit@^3.0.2:
|
||||
version "3.0.3"
|
||||
resolved "https://registry.npm.taobao.org/signal-exit/download/signal-exit-3.0.3.tgz#a1410c2edd8f077b08b4e253c8eacfcaf057461c"
|
||||
integrity sha1-oUEMLt2PB3sItOJTyOrPyvBXRhw=
|
||||
|
||||
sort-keys-length@^1.0.0:
|
||||
version "1.0.1"
|
||||
resolved "https://registry.npm.taobao.org/sort-keys-length/download/sort-keys-length-1.0.1.tgz#9cb6f4f4e9e48155a6aa0671edd336ff1479a188"
|
||||
integrity sha1-nLb09OnkgVWmqgZx7dM2/xR5oYg=
|
||||
dependencies:
|
||||
sort-keys "^1.0.0"
|
||||
|
||||
sort-keys@^1.0.0:
|
||||
version "1.1.2"
|
||||
resolved "https://registry.npm.taobao.org/sort-keys/download/sort-keys-1.1.2.tgz?cache=0&sync_timestamp=1609311186022&other_urls=https%3A%2F%2Fregistry.npm.taobao.org%2Fsort-keys%2Fdownload%2Fsort-keys-1.1.2.tgz#441b6d4d346798f1b4e49e8920adfba0e543f9ad"
|
||||
integrity sha1-RBttTTRnmPG05J6JIK37oOVD+a0=
|
||||
dependencies:
|
||||
is-plain-obj "^1.0.0"
|
||||
|
||||
sort-keys@^2.0.0:
|
||||
version "2.0.0"
|
||||
resolved "https://registry.npm.taobao.org/sort-keys/download/sort-keys-2.0.0.tgz?cache=0&sync_timestamp=1609311186022&other_urls=https%3A%2F%2Fregistry.npm.taobao.org%2Fsort-keys%2Fdownload%2Fsort-keys-2.0.0.tgz#658535584861ec97d730d6cf41822e1f56684128"
|
||||
integrity sha1-ZYU1WEhh7JfXMNbPQYIuH1ZoQSg=
|
||||
dependencies:
|
||||
is-plain-obj "^1.0.0"
|
||||
|
||||
strict-uri-encode@^1.0.0:
|
||||
version "1.1.0"
|
||||
resolved "https://registry.npm.taobao.org/strict-uri-encode/download/strict-uri-encode-1.1.0.tgz#279b225df1d582b1f54e65addd4352e18faa0713"
|
||||
integrity sha1-J5siXfHVgrH1TmWt3UNS4Y+qBxM=
|
||||
|
||||
string_decoder@^1.1.1:
|
||||
version "1.3.0"
|
||||
resolved "https://registry.npm.taobao.org/string_decoder/download/string_decoder-1.3.0.tgz#42f114594a46cf1a8e30b0a84f56c78c3edac21e"
|
||||
integrity sha1-QvEUWUpGzxqOMLCoT1bHjD7awh4=
|
||||
dependencies:
|
||||
safe-buffer "~5.2.0"
|
||||
|
||||
string_decoder@~1.1.1:
|
||||
version "1.1.1"
|
||||
resolved "https://registry.npm.taobao.org/string_decoder/download/string_decoder-1.1.1.tgz#9cf1611ba62685d7030ae9e4ba34149c3af03fc8"
|
||||
integrity sha1-nPFhG6YmhdcDCunkujQUnDrwP8g=
|
||||
dependencies:
|
||||
safe-buffer "~5.1.0"
|
||||
|
||||
strip-ansi@^6.0.0:
|
||||
version "6.0.0"
|
||||
resolved "https://registry.npm.taobao.org/strip-ansi/download/strip-ansi-6.0.0.tgz#0b1571dd7669ccd4f3e06e14ef1eed26225ae532"
|
||||
integrity sha1-CxVx3XZpzNTz4G4U7x7tJiJa5TI=
|
||||
dependencies:
|
||||
ansi-regex "^5.0.0"
|
||||
|
||||
strip-dirs@^2.0.0:
|
||||
version "2.1.0"
|
||||
resolved "https://registry.npm.taobao.org/strip-dirs/download/strip-dirs-2.1.0.tgz#4987736264fc344cf20f6c34aca9d13d1d4ed6c5"
|
||||
integrity sha1-SYdzYmT8NEzyD2w0rKnRPR1O1sU=
|
||||
dependencies:
|
||||
is-natural-number "^4.0.1"
|
||||
|
||||
strip-outer@^1.0.0:
|
||||
version "1.0.1"
|
||||
resolved "https://registry.npm.taobao.org/strip-outer/download/strip-outer-1.0.1.tgz#b2fd2abf6604b9d1e6013057195df836b8a9d631"
|
||||
integrity sha1-sv0qv2YEudHmATBXGV34Nrip1jE=
|
||||
dependencies:
|
||||
escape-string-regexp "^1.0.2"
|
||||
|
||||
supports-color@^7.1.0:
|
||||
version "7.2.0"
|
||||
resolved "https://registry.npm.taobao.org/supports-color/download/supports-color-7.2.0.tgz?cache=0&sync_timestamp=1608033330722&other_urls=https%3A%2F%2Fregistry.npm.taobao.org%2Fsupports-color%2Fdownload%2Fsupports-color-7.2.0.tgz#1b7dcdcb32b8138801b3e478ba6a51caa89648da"
|
||||
integrity sha1-G33NyzK4E4gBs+R4umpRyqiWSNo=
|
||||
dependencies:
|
||||
has-flag "^4.0.0"
|
||||
|
||||
tar-stream@^1.5.2:
|
||||
version "1.6.2"
|
||||
resolved "https://registry.npm.taobao.org/tar-stream/download/tar-stream-1.6.2.tgz?cache=0&sync_timestamp=1609239360788&other_urls=https%3A%2F%2Fregistry.npm.taobao.org%2Ftar-stream%2Fdownload%2Ftar-stream-1.6.2.tgz#8ea55dab37972253d9a9af90fdcd559ae435c555"
|
||||
integrity sha1-jqVdqzeXIlPZqa+Q/c1VmuQ1xVU=
|
||||
dependencies:
|
||||
bl "^1.0.0"
|
||||
buffer-alloc "^1.2.0"
|
||||
end-of-stream "^1.0.0"
|
||||
fs-constants "^1.0.0"
|
||||
readable-stream "^2.3.0"
|
||||
to-buffer "^1.1.1"
|
||||
xtend "^4.0.0"
|
||||
|
||||
through@^2.3.8:
|
||||
version "2.3.8"
|
||||
resolved "https://registry.npm.taobao.org/through/download/through-2.3.8.tgz#0dd4c9ffaabc357960b1b724115d7e0e86a2e1f5"
|
||||
integrity sha1-DdTJ/6q8NXlgsbckEV1+Doai4fU=
|
||||
|
||||
timed-out@^4.0.1:
|
||||
version "4.0.1"
|
||||
resolved "https://registry.npm.taobao.org/timed-out/download/timed-out-4.0.1.tgz#f32eacac5a175bea25d7fab565ab3ed8741ef56f"
|
||||
integrity sha1-8y6srFoXW+ol1/q1Zas+2HQe9W8=
|
||||
|
||||
to-buffer@^1.1.1:
|
||||
version "1.1.1"
|
||||
resolved "https://registry.npm.taobao.org/to-buffer/download/to-buffer-1.1.1.tgz#493bd48f62d7c43fcded313a03dcadb2e1213a80"
|
||||
integrity sha1-STvUj2LXxD/N7TE6A9ytsuEhOoA=
|
||||
|
||||
trim-repeated@^1.0.0:
|
||||
version "1.0.0"
|
||||
resolved "https://registry.npm.taobao.org/trim-repeated/download/trim-repeated-1.0.0.tgz#e3646a2ea4e891312bf7eace6cfb05380bc01c21"
|
||||
integrity sha1-42RqLqTokTEr9+rObPsFOAvAHCE=
|
||||
dependencies:
|
||||
escape-string-regexp "^1.0.2"
|
||||
|
||||
tunnel-agent@^0.6.0:
|
||||
version "0.6.0"
|
||||
resolved "https://registry.npm.taobao.org/tunnel-agent/download/tunnel-agent-0.6.0.tgz#27a5dea06b36b04a0a9966774b290868f0fc40fd"
|
||||
integrity sha1-J6XeoGs2sEoKmWZ3SykIaPD8QP0=
|
||||
dependencies:
|
||||
safe-buffer "^5.0.1"
|
||||
|
||||
unbzip2-stream@^1.0.9:
|
||||
version "1.4.3"
|
||||
resolved "https://registry.npm.taobao.org/unbzip2-stream/download/unbzip2-stream-1.4.3.tgz#b0da04c4371311df771cdc215e87f2130991ace7"
|
||||
integrity sha1-sNoExDcTEd93HNwhXofyEwmRrOc=
|
||||
dependencies:
|
||||
buffer "^5.2.1"
|
||||
through "^2.3.8"
|
||||
|
||||
universalify@^1.0.0:
|
||||
version "1.0.0"
|
||||
resolved "https://registry.npm.taobao.org/universalify/download/universalify-1.0.0.tgz?cache=0&sync_timestamp=1603179971960&other_urls=https%3A%2F%2Fregistry.npm.taobao.org%2Funiversalify%2Fdownload%2Funiversalify-1.0.0.tgz#b61a1da173e8435b2fe3c67d29b9adf8594bd16d"
|
||||
integrity sha1-thodoXPoQ1sv48Z9Kbmt+FlL0W0=
|
||||
|
||||
universalify@^2.0.0:
|
||||
version "2.0.0"
|
||||
resolved "https://registry.npm.taobao.org/universalify/download/universalify-2.0.0.tgz?cache=0&sync_timestamp=1603179971960&other_urls=https%3A%2F%2Fregistry.npm.taobao.org%2Funiversalify%2Fdownload%2Funiversalify-2.0.0.tgz#75a4984efedc4b08975c5aeb73f530d02df25717"
|
||||
integrity sha1-daSYTv7cSwiXXFrrc/Uw0C3yVxc=
|
||||
|
||||
url-parse-lax@^3.0.0:
|
||||
version "3.0.0"
|
||||
resolved "https://registry.npm.taobao.org/url-parse-lax/download/url-parse-lax-3.0.0.tgz#16b5cafc07dbe3676c1b1999177823d6503acb0c"
|
||||
integrity sha1-FrXK/Afb42dsGxmZF3gj1lA6yww=
|
||||
dependencies:
|
||||
prepend-http "^2.0.0"
|
||||
|
||||
url-to-options@^1.0.1:
|
||||
version "1.0.1"
|
||||
resolved "https://registry.npm.taobao.org/url-to-options/download/url-to-options-1.0.1.tgz#1505a03a289a48cbd7a434efbaeec5055f5633a9"
|
||||
integrity sha1-FQWgOiiaSMvXpDTvuu7FBV9WM6k=
|
||||
|
||||
util-deprecate@^1.0.1, util-deprecate@~1.0.1:
|
||||
version "1.0.2"
|
||||
resolved "https://registry.npm.taobao.org/util-deprecate/download/util-deprecate-1.0.2.tgz#450d4dc9fa70de732762fbd2d4a28981419a0ccf"
|
||||
integrity sha1-RQ1Nyfpw3nMnYvvS1KKJgUGaDM8=
|
||||
|
||||
wcwidth@^1.0.1:
|
||||
version "1.0.1"
|
||||
resolved "https://registry.npm.taobao.org/wcwidth/download/wcwidth-1.0.1.tgz#f0b0dcf915bc5ff1528afadb2c0e17b532da2fe8"
|
||||
integrity sha1-8LDc+RW8X/FSivrbLA4XtTLaL+g=
|
||||
dependencies:
|
||||
defaults "^1.0.3"
|
||||
|
||||
wrappy@1:
|
||||
version "1.0.2"
|
||||
resolved "https://registry.npm.taobao.org/wrappy/download/wrappy-1.0.2.tgz#b5243d8f3ec1aa35f1364605bc0d1036e30ab69f"
|
||||
integrity sha1-tSQ9jz7BqjXxNkYFvA0QNuMKtp8=
|
||||
|
||||
xtend@^4.0.0:
|
||||
version "4.0.2"
|
||||
resolved "https://registry.npm.taobao.org/xtend/download/xtend-4.0.2.tgz#bb72779f5fa465186b1f438f674fa347fdb5db54"
|
||||
integrity sha1-u3J3n1+kZRhrH0OPZ0+jR/2121Q=
|
||||
|
||||
yauzl@^2.4.2:
|
||||
version "2.10.0"
|
||||
resolved "https://registry.npm.taobao.org/yauzl/download/yauzl-2.10.0.tgz#c7eb17c93e112cb1086fa6d8e51fb0667b79a5f9"
|
||||
integrity sha1-x+sXyT4RLLEIb6bY5R+wZnt5pfk=
|
||||
dependencies:
|
||||
buffer-crc32 "~0.2.3"
|
||||
fd-slicer "~1.1.0"
|
Loading…
x
Reference in New Issue
Block a user