Skip to content
Projects
Groups
Snippets
Help
Loading...
Help
Support
Keyboard shortcuts
?
Submit feedback
Sign in / Register
Toggle navigation
M
mycard
Project overview
Project overview
Details
Activity
Releases
Repository
Repository
Files
Commits
Branches
Tags
Contributors
Graph
Compare
Locked Files
Issues
0
Issues
0
List
Boards
Labels
Service Desk
Milestones
Merge Requests
0
Merge Requests
0
CI / CD
CI / CD
Pipelines
Jobs
Schedules
Security & Compliance
Security & Compliance
Dependency List
License Compliance
Packages
Packages
List
Container Registry
Analytics
Analytics
CI / CD
Code Review
Insights
Issues
Repository
Value Stream
Wiki
Wiki
Snippets
Snippets
Members
Members
Collapse sidebar
Close sidebar
Activity
Graph
Create a new issue
Jobs
Commits
Issue Boards
Open sidebar
syntax_j
mycard
Commits
32ece509
Commit
32ece509
authored
Aug 21, 2021
by
nanahira
Browse files
Options
Browse Files
Download
Email Patches
Plain Diff
tar path
parent
c4768d23
Changes
1
Hide whitespace changes
Inline
Side-by-side
Showing
1 changed file
with
20 additions
and
5 deletions
+20
-5
app/apps.service.ts
app/apps.service.ts
+20
-5
No files found.
app/apps.service.ts
View file @
32ece509
...
...
@@ -58,9 +58,20 @@ export class AppsService {
map
:
Map
<
string
,
string
>
=
new
Map
();
connections
=
new
Map
<
App
,
Connection
>
();
maotama
:
Promise
<
ChildProcess
>
;
readonly
tarPath
=
process
.
platform
===
'
win32
'
?
path
.
join
(
process
.
env
[
'
NODE_ENV
'
]
===
'
production
'
?
process
.
resourcesPath
!
:
''
,
'
bin
'
,
'
bsdtar.exe
'
)
:
'
bsdtar
'
;
private
systemBinPath
(
executableName
:
string
)
{
return
path
.
join
(
process
.
env
[
'
NODE_ENV
'
]
===
'
production
'
?
process
.
resourcesPath
!
:
''
,
'
bin
'
,
executableName
);
}
private
get
tarPath
()
{
if
(
process
.
platform
===
'
linux
'
)
{
return
'
tar
'
;
}
else
if
(
process
.
platform
===
'
win32
'
)
{
return
this
.
systemBinPath
(
'
bsdtar.exe
'
);
}
else
{
return
this
.
systemBinPath
(
'
gtar
'
);
}
}
private
apps
:
Map
<
string
,
App
>
;
constructor
(
private
http
:
Http
,
private
settingsService
:
SettingsService
,
private
ref
:
ApplicationRef
,
...
...
@@ -991,8 +1002,12 @@ export class AppsService {
extract
(
file
:
string
,
dir
:
string
):
Observable
<
string
>
{
return
Observable
.
create
((
observer
:
Observer
<
string
>
)
=>
{
Logger
.
info
(
'
Start to extract... Command Line:
'
+
this
.
tarPath
,
file
,
dir
);
let
tarProcess
=
child_process
.
spawn
(
this
.
tarPath
,
[
'
xvf
'
,
file
,
'
-C
'
,
dir
]);
const
tarArgs
=
[
'
-xvf
'
,
file
,
'
-C
'
,
dir
];
if
(
process
.
platform
===
'
darwin
'
)
{
tarArgs
.
unshift
(
`--use-compress-program=
${
this
.
systemBinPath
(
'
zstd
'
)}
`
)
}
Logger
.
info
(
'
Start to extract... Command Line:
'
+
this
.
tarPath
,
tarArgs
.
join
(
'
'
));
let
tarProcess
=
child_process
.
spawn
(
this
.
tarPath
,
tarArgs
);
let
rl
=
readline
.
createInterface
({
input
:
<
ReadableStream
>
tarProcess
.
stderr
,
});
...
...
Write
Preview
Markdown
is supported
0%
Try again
or
attach a new file
Attach a file
Cancel
You are about to add
0
people
to the discussion. Proceed with caution.
Finish editing this message first!
Cancel
Please
register
or
sign in
to comment