wiki.sine.space | sinespace

Difference between revisions of "For Linux Users"

From wiki.sine.space
Jump to: navigation, search
(Unity/Sinespace Installation:)
(Installing and Using the Sinespace Client)
 
(15 intermediate revisions by the same user not shown)
Line 1: Line 1:
In this brief article we'll examine what's needful to run the Unity Editor and the sinespace client on Linux.
+
== Installing and Using the Sinespace Client ==
 +
* [http://preview.sine.space/download/ Download the Linux Client].
 +
* Unpack the client.
 +
* From inside the client directory, run '''sudo ./install.sh''' to install. Depending on your desktop file manager, you may also try right-clicking this file and running it as root/admin.
 +
* Run '''sinespace''' to launch the client.
  
Lets take a closer look at that statement: essentially, it says we're going to do stuff with linux. What's the problem there? One that's much bigger than mere semantics:
+
The Sinespace client is officially only supported on [http://ubuntu.com Ubuntu Linux].
  
"Linux" is a very broad, general term in practical usage. Very specifically, however, it refers to an low-level operating system kernel, one that just happens to run a boat load of GNU software, much of which is libraries; we'll get back to that though. Somewhat less sweepingly, "Linux" refers to one or more of the many extant "Linux Distributions".
+
Unofficially, other conventional Linux distributions should be able to run the client without additional work. For full media support, you may need to install the '''libavcodec''' and '''libswscale''' libraries. This task is already taken care of by the '''install.sh''' script for Ubuntu users.
  
Linux distributions are essentially each someone's template of a linux installation in installable/installed form, and they typically include farily custom components for doing such things as maintaining the operating system, curating user accounts, managing storage; additionally they will provide custom policies and tools for adding/removing/updating software, including system libraries.
+
== Obtaining the Unity Editor ==
  
When setting up Unity and Sinespace specifically, we are considering some very simple operations; essentially that of launching and guiding some solid installer shells. The real difficulty as such lies in the underlying operating system.
+
The Unity Editor for Linux is currently in beta. It is supported on [http://ubuntu.org Ubuntu Linux].
  
There's a real grey area with respect to where the line is drawn between the canonical 'operating system' and various applications software. To me, it isn't a line so much as an area of overlap comprised principally of libraries. As I'm sure you probably know, libraries support (typically) related high level operations over a set of more general purpose, low-level (possible kernel-provided) operations in support of such things as ease of coding, modularization of code, homegeniety and consistency of operations across different software elements, etc. I digress a little, but it is relevant.
+
As it is currently in beta, it is not officially supported by Sinespace but still may be useful to developers.  
  
To cut to the chase, the libraries are the real focus of getting it right 'on linux'.
+
[https://forum.unity.com/threads/unity-on-linux-release-notes-and-known-issues.350256/ The Unity on Linux Thread] contains links to download the editor, release notes and a list of known issues.  
  
The salient point about the libraries is this: Unity requires certain operations to be supported by the system libraries. These operations follow a defacto standard. It doesn't much matter to unity what library provides the functionality; as long as a proper value is returned when the library calls are made.
+
The same thread also contains a list of dependencies that may be used to unofficially run the editor on other Linux distributions.
  
If you haven't guessed it by now, there are often a few different libraries that might provide such functionality. Different linux distributions might (and usually do) use different combinations of these libraries to provide essentially the same support.
+
In addition to its requirements, the Sinespace SDK needs the '''mono-complete''' package also installed: '''sudo apt install mono-complete'''
  
SO. How do you know which libraries to install? That's a good question. It begins with knowing what functionality unity requires, but that's more difficult than it sounds because it's fairly fine-grained knowledge of unity internals. However, we do know that Unity is 'officially' supported by Unity on the Ubuntu Linux distribution. Does this means we should be running unity -only- on ubuntu? Oh HELL no :)
+
Installation from the command-line is done in two steps:
 
+
It DOES mean, however, that we can use the list of ubuntu library dependencies provided by unity, and cross-reference them to the libraries that are available in the manifests of our distribution's software repositories.
+
 
+
This is hard work, but readily accomplished if you just know what to do :)
+
 
+
 
+
== Ubuntu package dependencies provided by Unity: ==
+
 
+
 
+
gconf-service
+
 
+
lib32gcc1 (>= 1:4.1.1)
+
 
+
lib32stdc++6 (>= 4.6)
+
 
+
libasound2 (>= 1.0.23)
+
 
+
libc6 (>> 2.15)
+
 
+
libc6-i386 (>= 2.15)
+
 
+
libcairo2 (>= 1.6.0)
+
 
+
libcap2 (>= 2.10)
+
 
+
libcups2 (>= 1.4.0)
+
 
+
libdbus-1-3 (>= 1.2.14)
+
 
+
libexpat1 (>= 1.95.8)
+
 
+
libfontconfig1 (>= 2.8.0)
+
 
+
libfreetype6 (>= 2.3.9)
+
 
+
libgcc1 (>= 1:4.1.1)
+
 
+
libgconf-2-4 (>= 2.31.1)
+
 
+
libgdk-pixbuf2.0-0 (>= 2.22.0)
+
 
+
libgl1-mesa-glx | libgl1
+
 
+
libglib2.0-0 (>= 2.31.8)
+
 
+
libglu1-mesa | libglu1
+
 
+
libgtk2.0-0 (>= 2.24.0)
+
 
+
libnspr4 (>= 1.8.0.10)
+
 
+
libnss3 (>= 3.14.3)
+
 
+
libpango1.0-0 (>= 1.22.0)
+
 
+
libstdc++6 (>= 4.6)
+
 
+
libx11-6 (>= 2:1.4.99.1)
+
 
+
libxcomposite1 (>= 1:0.3-1)
+
 
+
libxcursor1 (>> 1.1.2)
+
 
+
libxdamage1 (>= 1:1.1)
+
 
+
libxext6
+
 
+
libxfixes3
+
 
+
libxi6 (>= 2:1.2.99.4)
+
 
+
libxrandr2 (>= 2:1.2.99.2)
+
 
+
libxrender1
+
 
+
libxtst6
+
 
+
zlib1g (>= 1:1.1.4)
+
 
+
debconf (>= 0.5) | debconf-2.0
+
 
+
npm
+
 
+
 
+
a more maintained copy of this list (and the linux installers) can be found here: [https://forum.unity.com/threads/unity-on-linux-release-notes-and-known-issues.350256/]
+
 
+
Note that you'll only need the debconf stuff if you are actually running ubuntu or debian. Also note you'll want to be certain you have the latest stable drivers for your graphics subsystem.
+
 
+
 
+
==Unity/Sinespace Installation:==
+
These follow precisely the same steps as on a windows or mac platform, once you get beyond that point of locating and obtaining the correct package for your linux.
+
 
+
As mentioned earlier, the only 'officially supported' linux distro is Ubuntu, so Unity does actually provide an Ubuntu package from which one can install Unity. What about the rest of us? Well, we want the 'platform agnostic' shell script.
+
 
+
This shell installer harkens back to the days of the manually typed command line-launched programs of yesteryear, from a time of bat files and bash scripts implementing text-based installers. Don't let that scare you, because that's exactly what the platform agnostic installers are, heh.
+
 
+
No matter though, download it and invoke it by opening a bash shell and entering the fully qualified path to the shell script, including the full name of the file. That should get you off and running. Note that Unity will most likely be started from such a shell with a like command too, so get cozy with that bash shell.
+
 
+
Feel free to hit me up on skype or in-world if you need some help :)
+
  
 +
* Download the Unity .deb archive, in this example: unity-editor_amd64-2017.2.1f1.deb
 +
* Install the .deb archive with '''sudo apt install ./unity-editor_amd64-2017.2.1f1.deb'''
  
 
{{Creation Navbox}}
 
{{Creation Navbox}}

Latest revision as of 19:00, 19 May 2018

Installing and Using the Sinespace Client

  • Download the Linux Client.
  • Unpack the client.
  • From inside the client directory, run sudo ./install.sh to install. Depending on your desktop file manager, you may also try right-clicking this file and running it as root/admin.
  • Run sinespace to launch the client.

The Sinespace client is officially only supported on Ubuntu Linux.

Unofficially, other conventional Linux distributions should be able to run the client without additional work. For full media support, you may need to install the libavcodec and libswscale libraries. This task is already taken care of by the install.sh script for Ubuntu users.

Obtaining the Unity Editor

The Unity Editor for Linux is currently in beta. It is supported on Ubuntu Linux.

As it is currently in beta, it is not officially supported by Sinespace but still may be useful to developers.

The Unity on Linux Thread contains links to download the editor, release notes and a list of known issues.

The same thread also contains a list of dependencies that may be used to unofficially run the editor on other Linux distributions.

In addition to its requirements, the Sinespace SDK needs the mono-complete package also installed: sudo apt install mono-complete

Installation from the command-line is done in two steps:

  • Download the Unity .deb archive, in this example: unity-editor_amd64-2017.2.1f1.deb
  • Install the .deb archive with sudo apt install ./unity-editor_amd64-2017.2.1f1.deb