mirror of https://github.com/icedream/ts3bot.git
Use custom XDG runtime dirs for better isolation.
parent
ee9bd9c0fc
commit
ce801fecbb
4
app.iced
4
app.iced
|
@ -8,6 +8,7 @@ request = require "request"
|
|||
fs = require("fs")
|
||||
path = require("path")
|
||||
qs = require "querystring"
|
||||
temp = require("temp").track()
|
||||
youtubedl = require "youtube-dl"
|
||||
isValidUrl = (require "valid-url").isWebUri
|
||||
|
||||
|
@ -34,6 +35,9 @@ module.exports =
|
|||
cb?()
|
||||
shutdownSync: => Sync @shutdown
|
||||
|
||||
# Separate our own PulseAudio from any system one by using our own custom XDG directories.
|
||||
process.env.XDG_RUNTIME_DIR = temp.mkdirSync "ts3bot-xdg"
|
||||
|
||||
# PulseAudio daemon
|
||||
await services.find("pulseaudio").start defer err
|
||||
if err
|
||||
|
|
|
@ -38,6 +38,7 @@
|
|||
"stream-splitter": "^0.3.2",
|
||||
"string.prototype.startswith": "^0.2.0",
|
||||
"sync": "^0.2.5",
|
||||
"temp": "^0.8.3",
|
||||
"valid-url": "^1.0.9",
|
||||
"webchimera.js": "^0.1.38",
|
||||
"which": "^1.1.2",
|
||||
|
|
|
@ -22,6 +22,10 @@ module.exports = class TS3ClientService extends services.Service
|
|||
]
|
||||
constructor: -> super "TS3Client",
|
||||
start: (args, cb) =>
|
||||
if not process.env.XDG_RUNTIME_DIR? or process.env.XDG_RUNTIME_DIR.trim() == ""
|
||||
cb? new Error "XDG runtime directory needs to be set."
|
||||
return
|
||||
|
||||
if typeof args == "function"
|
||||
cb = args
|
||||
args = null
|
||||
|
|
Loading…
Reference in New Issue