forked from coolaj86/telebit.js
		
	
		
			
				
	
	
		
			34 lines
		
	
	
		
			1.3 KiB
		
	
	
	
		
			JavaScript
		
	
	
	
	
	
			
		
		
	
	
			34 lines
		
	
	
		
			1.3 KiB
		
	
	
	
		
			JavaScript
		
	
	
	
	
	
| 'use strict';
 | |
| 
 | |
| var path = require('path');
 | |
| var fs = require('fs');
 | |
| var os = require('os');
 | |
| 
 | |
| var files = [
 | |
|   [ (process.env.TELEBIT_SERVICE_TPL || path.join(__dirname, 'dist/etc/systemd/system/telebit.service.tpl'))
 | |
|   , (process.env.TELEBIT_SERVICE || path.join(__dirname, 'dist/etc/systemd/system/telebit.service'))
 | |
|   ]
 | |
| , [ (process.env.TELEBIT_PLIST_TPL || path.join(__dirname, 'dist/Library/LaunchDaemons/cloud.telebit.remote.plist.tpl'))
 | |
|   ,(process.env.TELEBIT_PLIST || path.join(__dirname, 'dist/Library/LaunchDaemons/cloud.telebit.remote.plist'))
 | |
|   ]
 | |
| ];
 | |
| var vars = {
 | |
|   telebitPath: process.env.TELEBIT_PATH || path.resolve(__dirname, '../..')
 | |
| , telebitRwDirs: [
 | |
|     (process.env.TELEBIT_PATH || path.resolve(__dirname, '../..'))
 | |
|   , path.join(os.homedir(), '.config/telebit')
 | |
|   , path.join(os.homedir(), '.local/share/telebit')
 | |
|   , ].join(' ')
 | |
| , telebitUser: process.env.TELEBIT_USER || os.userInfo().username
 | |
| , telebitGroup: process.env.TELEBIT_GROUP || ('darwin' === os.platform() ? 'staff' : os.userInfo().username)
 | |
| };
 | |
| files.forEach(function (f) {
 | |
|   var text = fs.readFileSync(f[0], 'utf8')
 | |
|     .replace(/{TELEBIT_PATH}/g, vars.telebitPath)
 | |
|     .replace(/{TELEBIT_USER}/g, vars.telebitUser)
 | |
|     .replace(/{TELEBIT_GROUP}/g, vars.telebitGroup)
 | |
|     .replace(/{TELEBIT_RW_DIRS}/g, vars.telebitRwDirs)
 | |
|     ;
 | |
|   fs.writeFileSync(f[1], text, 'utf8');
 | |
| });
 |