mNo edit summary |
mNo edit summary |
||
(10 intermediate revisions by 4 users not shown) | |||
Line 2: | Line 2: | ||
== Summary == | == Summary == | ||
Spice aims to provide a complete open source solution for interaction with virtualized desktops. | Spice aims to provide a complete open source solution for interaction with remote (virtualized) desktops. | ||
This feature brings Spice 0.10 to Fedora 16. | This feature brings Spice 0.10 to Fedora 16. | ||
Line 12: | Line 12: | ||
== Current status == | == Current status == | ||
* Targeted release: [[Releases/16 | Fedora 16 ]] | * Targeted release: [[Releases/16 | Fedora 16 ]] | ||
* Last updated: 2010- | * Last updated: 2010-11-3 | ||
* Percentage of completion: | * Percentage of completion: 100% | ||
<!-- | |||
Changing it to 100% since the features are available. | |||
Spice 0.10 is still to be released. | |||
We will update spice fedora package when that happens. | |||
--> | |||
== Detailed Description == | == Detailed Description == | ||
The Simple Protocol for Independent Computing Environments (SPICE) is used for client-server communication. Spice adds a QXL display device to QEMU and provides drivers for this device for both X and Windows. | |||
drivers for this device for both X and Windows. | |||
Spice was added in Fedora 14 [ https://fedoraproject.org/wiki/Features/Spice ] | |||
Other spice related components were added later (spice-vdagent, spice-gtk) | |||
New features in Release 0.10 are: | New features in Release 0.10 are: | ||
* Usb sharing between guest and client (letting the guest access USB devices on the client) | * Usb sharing between guest and client (letting the guest access USB devices on the client), see: http://fedoraproject.org/wiki/Features/UsbNetworkRedirection | ||
** | * Audio Volume messages between guest and client | ||
* New package xspice (xorg-x11-server-Xspice), this provides a standalone X and Spice server, see: [http://www.spice-space.org/page/Features/XSpice spice-space] | |||
== Benefit to Fedora == | == Benefit to Fedora == | ||
Line 43: | Line 36: | ||
== Scope == | == Scope == | ||
* Spice support was added in Fedora 14 (as well as dependent packages, such as spice-protocol, celt051). | * Spice support was added in Fedora 14 (as well as dependent packages, such as spice-protocol, celt051). | ||
* Upon Spice 0.10 availability, there is some Fedora packaging work to be done | * Upon Spice 0.10 availability, there is some Fedora packaging work to be done: | ||
* Need to update spice-protocol package. | ** Need to update spice-protocol package (done). | ||
* | ** Need to update spice package (done). | ||
* Need to update spice | <!-- | ||
<!-- | |||
* Need to update spice-gtk package (would that be in a different Feature?) | * Need to update spice-gtk package (would that be in a different Feature?) | ||
* Need to update xorg-x11-drv-qxl package (?) | * Need to update xorg-x11-drv-qxl package (?) HDG: nice to have, all changes in upstream are related to xspice, and not to the x11 qxl driver | ||
* Need to update spice-vdagent package (?) | * Need to update spice-vdagent package (?) HDG: no interesting spice-vdagent changes are pending, so I don't think so. | ||
--> | --> | ||
== How To Test == | == How To Test == | ||
The server part of Spice requires a x86-64 machine, and ideally should have hardware virtualization support (kvm) although this is not strictly required. | |||
The client currently works on x86-64 and x86, but we're working on porting it to more architectures. | |||
To test spice: | |||
* Use virt-manager to create a VM with Spice support. | |||
* Run virt-viewer to access it via Spice, Or | |||
* Use vinagre to access your VM. | |||
Alternatively: | |||
Install a qemu and spice-server on the server machine (aka host), then start qemu with options something like this: | |||
qemu <disk-image> -usb -soundhw ac97 -vga qxl -spice port=5930,disable-ticketing -enable-kvm -m 1024 -monitor stdio | qemu <disk-image> -usb -soundhw ac97 -vga qxl -spice port=5930,disable-ticketing -enable-kvm -m 1024 -monitor stdio | ||
or with passwords: | or with passwords: | ||
qemu <disk-image> -usb -soundhw ac97 -vga qxl -spice port=5930,password=<secret> -enable-kvm -m 1024 -monitor stdio | qemu <disk-image> -usb -soundhw ac97 -vga qxl -spice port=5930,password=<secret> -enable-kvm -m 1024 -monitor stdio | ||
On the client, install the spice-client package and start it like: | On the client (can be the same machine), install the spice-client package and start it like: | ||
spicec -h <server> -p <port> [-w <secret>], e.g. | spicec -h <server> -p <port> [-w <secret>], e.g. | ||
spicec -h localhost -p 5930 | spicec -h localhost -p 5930 | ||
Line 86: | Line 69: | ||
This should let you access the machine. You should now install the qxl driver and optionally the agent on the guest. If you do not do this you're running in vga mode which is quite slow and inefficient. | This should let you access the machine. You should now install the qxl driver and optionally the agent on the guest. If you do not do this you're running in vga mode which is quite slow and inefficient. | ||
=== XSpice === | |||
XSpice is a standalone X server. To launch it without any password protection on port 9999 with display :2.0: | |||
xspice --port 9999 --disable-ticketing :2.0 | |||
See xspice --help for other options. | |||
In a seperate terminal you can run X clients under it: | |||
DISPLAY=:2.0 icewm | |||
DISPLAY=:2.0 gnome-terminal | |||
DISPLAY=:2.0 firefox | |||
Connect a standard spice client to the server to get the display, keyboard and mouse: | |||
spicec -h localhost -p 9999 | |||
== User Experience == | == User Experience == | ||
Spice is already available in Fedora 15. | |||
Spice is already available in | |||
The new USB sharing feature enables users to share (simple, usb1) usb devices (such as usb-disk) plugged in the client machine with the guest. | The new USB sharing feature enables users to share (simple, usb1) usb devices (such as usb-disk) plugged in the client machine with the guest. | ||
== Dependencies == | == Dependencies == | ||
* qemu | * qemu | ||
== Contingency Plan == | == Contingency Plan == | ||
Do not update Spice to 0.10, stay with current version (0.8). | Do not update Spice to 0.10, stay with current version (0.8). | ||
Line 116: | Line 101: | ||
== Release Notes == | == Release Notes == | ||
Fedora 16 includes the latest version of the spice remote virtualized desktop protocol stack, compared to | |||
spice-0.8 the following features were added: | |||
* Spice now supports client-guest USB sharing | * Audio volume synchronisation between guest and client | ||
* Spice now supports client-guest USB sharing | |||
* A new XSpice X-server which allows using the spice protocol without a virtual-machine | |||
== Comments and Discussion == | == Comments and Discussion == | ||
* See [[Talk:Features/Spice]] | * See [[Talk:Features/Spice]] | ||
[[Category: FeatureAcceptedF16]] | |||
[[Category: | |||
<!-- | <!-- | ||
[[Category:F16 Virt Features]] | [[Category:F16 Virt Features]] | ||
--> | --> | ||
Latest revision as of 13:47, 6 November 2011
Spice
Summary
Spice aims to provide a complete open source solution for interaction with remote (virtualized) desktops.
This feature brings Spice 0.10 to Fedora 16.
Owner
- Name: Uri Lublin
- Email: uril@redhat.com
Current status
- Targeted release: Fedora 16
- Last updated: 2010-11-3
- Percentage of completion: 100%
Detailed Description
The Simple Protocol for Independent Computing Environments (SPICE) is used for client-server communication. Spice adds a QXL display device to QEMU and provides drivers for this device for both X and Windows.
Spice was added in Fedora 14 [ https://fedoraproject.org/wiki/Features/Spice ] Other spice related components were added later (spice-vdagent, spice-gtk)
New features in Release 0.10 are:
- Usb sharing between guest and client (letting the guest access USB devices on the client), see: http://fedoraproject.org/wiki/Features/UsbNetworkRedirection
- Audio Volume messages between guest and client
- New package xspice (xorg-x11-server-Xspice), this provides a standalone X and Spice server, see: spice-space
Benefit to Fedora
In the long term, Spice will let Fedora provide a better user experience in desktop virtualization. In the short term, Fedora gains an interesting new open-source technology that many people want to try out.
Scope
- Spice support was added in Fedora 14 (as well as dependent packages, such as spice-protocol, celt051).
- Upon Spice 0.10 availability, there is some Fedora packaging work to be done:
- Need to update spice-protocol package (done).
- Need to update spice package (done).
How To Test
The server part of Spice requires a x86-64 machine, and ideally should have hardware virtualization support (kvm) although this is not strictly required.
The client currently works on x86-64 and x86, but we're working on porting it to more architectures.
To test spice:
- Use virt-manager to create a VM with Spice support.
- Run virt-viewer to access it via Spice, Or
- Use vinagre to access your VM.
Alternatively:
Install a qemu and spice-server on the server machine (aka host), then start qemu with options something like this:
qemu <disk-image> -usb -soundhw ac97 -vga qxl -spice port=5930,disable-ticketing -enable-kvm -m 1024 -monitor stdio
or with passwords:
qemu <disk-image> -usb -soundhw ac97 -vga qxl -spice port=5930,password=<secret> -enable-kvm -m 1024 -monitor stdio
On the client (can be the same machine), install the spice-client package and start it like:
spicec -h <server> -p <port> [-w <secret>], e.g. spicec -h localhost -p 5930
This should let you access the machine. You should now install the qxl driver and optionally the agent on the guest. If you do not do this you're running in vga mode which is quite slow and inefficient.
XSpice
XSpice is a standalone X server. To launch it without any password protection on port 9999 with display :2.0:
xspice --port 9999 --disable-ticketing :2.0
See xspice --help for other options.
In a seperate terminal you can run X clients under it:
DISPLAY=:2.0 icewm DISPLAY=:2.0 gnome-terminal DISPLAY=:2.0 firefox
Connect a standard spice client to the server to get the display, keyboard and mouse:
spicec -h localhost -p 9999
User Experience
Spice is already available in Fedora 15.
The new USB sharing feature enables users to share (simple, usb1) usb devices (such as usb-disk) plugged in the client machine with the guest.
Dependencies
- qemu
Contingency Plan
Do not update Spice to 0.10, stay with current version (0.8).
Documentation
Release Notes
Fedora 16 includes the latest version of the spice remote virtualized desktop protocol stack, compared to spice-0.8 the following features were added:
- Audio volume synchronisation between guest and client
- Spice now supports client-guest USB sharing
- A new XSpice X-server which allows using the spice protocol without a virtual-machine