11import "./fill/require" ;
2+ import * as paths from "./fill/paths" ;
23import "./fill/storageDatabase" ;
34import "./fill/windowsService" ;
4- import * as paths from "./fill/paths " ;
5+ import "./fill/environmentService " ;
56import "./fill/dom" ;
67import "./vscode.scss" ;
78
8- import { createConnection } from "net" ;
99import { Client as IDEClient , IURI , IURIFactory } from "@coder/ide" ;
1010
1111import { registerContextMenuListener } from "vs/base/parts/contextmenu/electron-main/contextmenu" ;
@@ -28,41 +28,32 @@ export class Client extends IDEClient {
2828 this . protocolPromise = new Promise ( ( resolve ) : void => {
2929 this . protoResolve = resolve ;
3030 } ) ;
31+ this . sharedProcessData . then ( ( data ) => {
32+ paths . _paths . socketPath = data . socketPath ;
33+ } ) ;
34+ this . initData . then ( ( data ) => {
35+ paths . _paths . appData = data . dataDirectory ;
36+ paths . _paths . defaultUserData = data . dataDirectory ;
37+ } ) ;
3138 }
3239
3340 protected initialize ( ) : Promise < void > {
34- this . task ( "Connect to shared process" , 5 , async ( ) => {
35- await new Promise ( ( resolve , reject ) : void => {
36- const listener = this . onSharedProcessActive ( ( data ) => {
37- listener . dispose ( ) ;
38- const socket = createConnection ( data . socketPath , resolve ) ;
39- socket . once ( "error" , ( ) => {
40- reject ( ) ;
41- } ) ;
42- this . protoResolve ! ( new Protocol ( socket ) ) ;
43- } ) ;
44- } ) ;
45- } ) . catch ( ( ) => undefined ) ;
46-
4741 registerContextMenuListener ( ) ;
4842
49- return this . task ( "Start workbench" , 1000 , async ( initData ) => {
50- paths . paths . appData = initData . dataDirectory ;
51- paths . paths . defaultUserData = initData . dataDirectory ;
52-
43+ return this . task ( "Start workbench" , 1000 , async ( data ) => {
5344 const { startup } = require ( "./startup" ) ;
5445 await startup ( {
5546 machineId : "1" ,
5647 windowId : this . windowId ,
5748 logLevel : LogLevel . Info ,
5849 mainPid : 1 ,
59- appRoot : initData . dataDirectory ,
60- execPath : initData . tmpDirectory ,
50+ appRoot : data . dataDirectory ,
51+ execPath : data . tmpDirectory ,
6152 userEnv : { } ,
62- nodeCachedDataDir : initData . tmpDirectory ,
53+ nodeCachedDataDir : data . tmpDirectory ,
6354 perfEntries : [ ] ,
6455 _ : [ ] ,
65- folderUri : URI . file ( initData . dataDirectory ) ,
56+ folderUri : URI . file ( data . dataDirectory ) ,
6657 } ) ;
6758
6859 // TODO: Set notification service for retrying.
0 commit comments