Install dependencies in Linux desktop.

This commit is contained in:
Jared Goodwin 2020-04-03 11:58:30 -07:00
parent d04552152e
commit 3b8af4309f
4 changed files with 26 additions and 10 deletions

View File

@ -134,11 +134,20 @@ namespace Remotely.Desktop.Linux.ViewModels
}
public ObservableCollection<Viewer> Viewers { get; } = new ObservableCollection<Viewer>();
public async Task GetSessionID()
{
await Conductor.CasterSocket.SendDeviceInfo(Conductor.ServiceID, Environment.MachineName, Conductor.DeviceID);
await Conductor.CasterSocket.GetSessionID();
}
public async Task Init()
{
try
{
SessionID = "Installing dependencies...";
await Task.Run(InstallDependencies);
SessionID = "Retrieving...";
Host = Config.GetConfig().Host;
@ -185,13 +194,6 @@ namespace Remotely.Desktop.Linux.ViewModels
}
}
public async Task GetSessionID()
{
await Conductor.CasterSocket.SendDeviceInfo(Conductor.ServiceID, Environment.MachineName, Conductor.DeviceID);
await Conductor.CasterSocket.GetSessionID();
}
public async Task PromptForHostName()
{
var prompt = new HostNamePrompt();
@ -236,6 +238,20 @@ namespace Remotely.Desktop.Linux.ViewModels
ServiceContainer.Instance = serviceCollection.BuildServiceProvider();
}
private void InstallDependencies()
{
var psi = new ProcessStartInfo()
{
FileName = "bash",
Arguments = "-c apt-get -y install libc6-dev ; " +
"apt-get -y install libgdiplus ; " +
"apt-get -y install libxtst-dev ; " +
"apt-get -y install xclip",
CreateNoWindow = true,
WindowStyle = ProcessWindowStyle.Hidden
};
Process.Start(psi).WaitForExit();
}
private void ScreenCastRequested(object sender, ScreenCastRequest screenCastRequest)
{
Dispatcher.UIThread.InvokeAsync(async () =>

View File

@ -121,7 +121,7 @@ export class RCBrowserSockets {
PopupMessage("Clipboard updated.");
});
hubConnection.on("ScreenData", (selectedDisplay, displayNames) => {
document.querySelector("#screenSelectBar").innerHTML = "";
UI.ScreenSelectBar.innerHTML = "";
for (let i = 0; i < displayNames.length; i++) {
var button = document.createElement("button");
button.innerHTML = `Monitor ${i}`;

File diff suppressed because one or more lines are too long

View File

@ -135,7 +135,7 @@ export class RCBrowserSockets {
PopupMessage("Clipboard updated.");
});
hubConnection.on("ScreenData", (selectedDisplay: string, displayNames: string[]) => {
document.querySelector("#screenSelectBar").innerHTML = "";
UI.ScreenSelectBar.innerHTML = "";
for (let i = 0; i < displayNames.length; i++) {
var button = document.createElement("button");
button.innerHTML = `Monitor ${i}`;