Skip to content
体验新版
项目
组织
正在加载...
登录
切换导航
打开侧边栏
掘金者说
vscode
提交
5d787e0c
V
vscode
项目概览
掘金者说
/
vscode
与 Fork 源项目一致
从无法访问的项目Fork
通知
1
Star
0
Fork
0
代码
文件
提交
分支
Tags
贡献者
分支图
Diff
Issue
0
列表
看板
标记
里程碑
合并请求
0
DevOps
流水线
流水线任务
计划
Wiki
0
Wiki
分析
仓库
DevOps
项目成员
Pages
V
vscode
项目概览
项目概览
详情
发布
仓库
仓库
文件
提交
分支
标签
贡献者
分支图
比较
Issue
0
Issue
0
列表
看板
标记
里程碑
合并请求
0
合并请求
0
Pages
DevOps
DevOps
流水线
流水线任务
计划
分析
分析
仓库分析
DevOps
Wiki
0
Wiki
成员
成员
收起侧边栏
关闭侧边栏
动态
分支图
创建新Issue
流水线任务
提交
Issue看板
体验新版 GitCode,发现更多精彩内容 >>
提交
5d787e0c
编写于
2月 12, 2016
作者:
J
Joao Moreno
浏览文件
操作
浏览文件
下载
电子邮件补丁
差异文件
count deb package size in stream
上级
94cbf1f8
变更
1
隐藏空白更改
内联
并排
Showing
1 changed file
with
19 addition
and
49 deletion
+19
-49
build/gulpfile.vscode.js
build/gulpfile.vscode.js
+19
-49
未找到文件。
build/gulpfile.vscode.js
浏览文件 @
5d787e0c
...
...
@@ -259,29 +259,8 @@ function packageTask(platform, arch, opts) {
};
}
function
getFolderSize
(
root
)
{
var
size
=
0
;
var
paths
=
[
root
];
while
(
paths
.
length
>
0
)
{
var
current
=
path
.
normalize
(
paths
.
pop
());
var
stat
=
fs
.
statSync
(
current
);
size
+=
stat
.
size
;
if
(
stat
.
isDirectory
())
{
var
newPaths
=
fs
.
readdirSync
(
current
);
newPaths
.
forEach
(
function
(
newPath
)
{
paths
.
push
(
path
.
join
(
current
,
newPath
));
});
}
}
return
size
;
}
function
getDebPackageArch
(
arch
)
{
if
(
arch
===
'
x64
'
)
return
'
amd64
'
if
(
arch
===
'
ia32
'
)
return
'
i386
'
;
return
undefined
;
return
{
x64
:
'
amd64
'
,
ia32
:
'
i386
'
}[
arch
];
}
function
prepareDebPackage
(
arch
)
{
...
...
@@ -292,10 +271,7 @@ function prepareDebPackage(arch) {
return
function
()
{
var
shortcut
=
gulp
.
src
(
'
resources/common/bin/code.sh
'
,
{
base
:
'
.
'
})
.
pipe
(
rename
(
function
(
p
)
{
p
.
extname
=
''
p
.
dirname
=
'
usr/bin
'
;
}));
.
pipe
(
rename
(
function
(
p
)
{
p
.
extname
=
''
;
p
.
dirname
=
'
usr/bin
'
;
}));
var
desktop
=
gulp
.
src
(
'
resources/linux/debian/code.desktop
'
,
{
base
:
'
.
'
})
.
pipe
(
rename
(
function
(
p
)
{
p
.
dirname
=
'
usr/share/applications
'
;
}));
...
...
@@ -303,35 +279,29 @@ function prepareDebPackage(arch) {
var
icon
=
gulp
.
src
(
'
resources/linux/code.png
'
,
{
base
:
'
.
'
})
.
pipe
(
rename
(
function
(
p
)
{
p
.
dirname
=
'
usr/share/pixmaps
'
;
}));
var
installedSize
=
Math
.
ceil
(
getFolderSize
(
root
+
'
/
'
+
binaryDir
)
/
1024
);
var
control
=
gulp
.
src
(
'
resources/linux/debian/control.template
'
,
{
base
:
'
.
'
})
.
pipe
(
replace
(
'
@@VERSION@@
'
,
packageJson
.
version
+
'
-
'
+
packageRevision
))
.
pipe
(
replace
(
'
@@ARCHITECTURE@@
'
,
debArch
))
.
pipe
(
replace
(
'
@@INSTALLEDSIZE@@
'
,
installedSize
))
.
pipe
(
rename
(
function
(
p
)
{
p
.
extname
=
''
;
p
.
dirname
=
'
DEBIAN
'
;
var
code
=
gulp
.
src
(
binaryDir
+
'
/**/*
'
,
{
base
:
binaryDir
})
.
pipe
(
rename
(
function
(
p
)
{
p
.
dirname
=
'
usr/share/code/
'
+
p
.
dirname
;
}));
var
size
=
0
;
var
control
=
code
.
pipe
(
es
.
through
(
function
(
f
)
{
size
+=
f
.
isDirectory
()
?
4096
:
f
.
contents
.
length
;
},
function
()
{
var
that
=
this
;
gulp
.
src
(
'
resources/linux/debian/control.template
'
,
{
base
:
'
.
'
})
.
pipe
(
replace
(
'
@@VERSION@@
'
,
packageJson
.
version
+
'
-
'
+
packageRevision
))
.
pipe
(
replace
(
'
@@ARCHITECTURE@@
'
,
debArch
))
.
pipe
(
replace
(
'
@@INSTALLEDSIZE@@
'
,
Math
.
ceil
(
size
/
1024
)))
.
pipe
(
rename
(
function
(
p
)
{
p
.
extname
=
''
;
p
.
dirname
=
'
DEBIAN
'
;
}))
.
pipe
(
es
.
through
(
function
(
f
)
{
that
.
emit
(
'
data
'
,
f
);
},
function
()
{
that
.
emit
(
'
end
'
);
}));
}));
var
all
=
es
.
merge
(
control
,
desktop
,
icon
,
shortcut
);
all
.
pipe
(
symdest
(
destination
));
var
binaryResult
=
gulp
.
src
(
binaryDir
+
'
/**/*
'
,
{
base
:
binaryDir
})
.
pipe
(
gulp
.
dest
(
destination
+
'
/usr/share/code
'
));
return
es
.
merge
(
all
,
binaryResult
);
return
es
.
merge
(
control
,
desktop
,
icon
,
shortcut
,
code
)
.
pipe
(
symdest
(
destination
));
};
}
function
buildDebPackage
(
arch
)
{
var
debArch
=
getDebPackageArch
(
arch
);
return
shell
.
task
([
'
fakeroot dpkg-deb -b
'
+
path
.
join
(
root
,
'
out-linux
'
,
'
vscode-
'
+
debArch
)]);
return
shell
.
task
([
'
fakeroot dpkg-deb -b
'
+
path
.
join
(
root
,
'
out-linux
'
,
'
vscode-
'
+
getDebPackageArch
(
arch
))]);
}
gulp
.
task
(
'
clean-vscode-win32
'
,
util
.
rimraf
(
path
.
join
(
path
.
dirname
(
root
),
'
VSCode-win32
'
)));
...
...
编辑
预览
Markdown
is supported
0%
请重试
或
添加新附件
.
添加附件
取消
You are about to add
0
people
to the discussion. Proceed with caution.
先完成此消息的编辑!
取消
想要评论请
注册
或
登录