SPICE-CLIENT(1)
π SPICE-CLIENT(1) β the Spice-GTK era
okay bestie, so this is a page from the Spice-GTK Documentation manual, and it's literally your cheat sheet to the Spice-GTK library. let's get into it π«Ά
β¨ NAME β¨
Spice-GTK β a client-side library to access remote SPICE displays. that's the whole vibe. π
πΈ DESCRIPTION πΈ
So Spice-GTK is a library that lets you access remote displays over the SPICE protocol. rn it's mainly used to get into remote virtual machines, which honestly is its main character era.
The Spice-GTK library provides a set of command line options you can use to tweak some SPICE-specific option. that's it, that's the deal π
π¦ URI π¦
Wanna start a plain SPICE connection (heads up: that connection will be unencrypted, iykyk) to hostname.example.com on port 5900? use this URI:
spice://hostname.example.com:5900
and if you want to start a TLS connection, you'd use:
spice+tls://hostname.example.com:5900
note bestie:spice+tlsis available since v0.35 β before that you had to use thespice://query string with thetls-portparameter. the way that versioning works π
π URI query string π
the spice URI accepts a query string, and you can specify several parameters at once if they're separated by & or ;
spice://hostname.example.com?port=5900;tls-port=5901
when you're using tls-port, it's recommended to not specify any non-TLS port. and if you give both port and tls-port, make sure you use the --spice-secure-channels options to indicate which channels must be secure. otherwise, Spice-GTK first attempts a connection to the non-TLS port, and then tries to use the TLS port. π and that means a man-in-the-middle could force the whole SPICE session to go in clear text regardless of the TLS settings of the SPICE server. yes, that's as bad as it sounds.
other valid URI parameters are username and password. but be careful β passing a password through a SPICE URI might cause the password to be visible by any local user through ps. π not the password leak.
π OPTIONS π
the following options are accepted when running a SPICE client which makes use of the default Spice-GTK options:
--spice-secure-channels=<main,display,inputs,...,all>β force the specified channels to be secured. this instructs the SPICE client that it must use a TLS connection for these channels. if the server only offers non-TLS connections for these channels, the client will not use these. if the special value"all"is used, that means all SPICE channels must be encrypted. π₯ the current SPICE channels are:main,display,inputs,cursor,playback,record,smartcard,usbredir.--spice-disable-effects=<wallpaper,font-smooth,animation,all>β disable guest display effects. this tells the SPICE client it should attempt to disable some guest features to lower bandwidth usage. it requires guest support, usually through a SPICE agent, and it's currently only supported on Windows guests."wallpaper"will disable the guest wallpaper,"font-smooth"will disable font antialiasing,"animation"will try to disable some of the desktop environment animations, and"all"will attempt to disable everything which can be disabled. slay, less bandwidth for everyone β¨--spice-color-depth=<16,32>β guest display color depth β DEPRECATED. this tells the SPICE client it should attempt to force the guest OS color depth. a lower color depth should lower bandwith usage. requires guest support, usually through a SPICE agent, and it's currently only supported on Windows 7 and older guests. π«--spice-ca-file=<file>β truststore file for secure connections. this option specifies a.crtfile containing the CA certificate with which the SPICE server TLS certificates are signed. it's useful when you're using self-signed TLS certificates rather than certificates signed by an official CA. π--spice-host-subject=<host-subject>β subject of the host certificate (field=value pairs separated by commas). when using self-signed certificates, or when the guest is migrated between different hosts, the subject/altSubject of the TLS certificate the SPICE server provides will not necessarily match the hostname we're connecting to. this option makes it possible to override the expected subject of the TLS certificate. π§ the subject must correspond to the"Subject:"line returned by:
openssl x509 -noout -text -in server-cert.pem
--spice-debugβ enable Spice-GTK debugging. this can also be toggled on with theSPICE_DEBUGenvironment variable, or usingG_MESSAGES_DEBUG=all. π bestie debug era.--spice-disable-audioβ disable audio support. π--spice-disable-usbredirβ disable USB redirection support. π--spice-usbredir-auto-redirect-filter=<filter-string>β filter selecting USB devices to be auto-redirected when plugged in. this filter specifies which USB devices should be automatically redirected when they are plugged in during the lifetime of a SPICE session. a rule has the form of:"class,vendor,product,version,allow".-1can be used instead ofclass,vendor,productorversionin order to accept any value. several rules can be concatenated with'|':"rule1|rule2|rule3"π«--spice-usbredir-redirect-on-connect=<filter-string>β filter selecting USB devices to redirect on connect. this filter specifies which USB devices should be automatically redirected when a SPICE connection to a remote display has been established. π«Ά--spice-gtk-versionβ display Spice-GTK version information. the classic "who am i" moment πββοΈ--spice-smartcardβ enable smartcard support. π³--spice-smartcard-db=<certificate-db>β path to the local certificate database to use for software smartcard certificates. this option is only useful for testing purpose. instead of having a hardware smartcard reader, and a physical smartcard, you can specify a file containing 3 certificates which will be used to emulate a smartcard in software. see"http://www.spice-space.org/page/SmartcardUsage#Using_a_software_smartcard"for more details about how to generate these certificates. π--spice-smartcard-certificates=<certificates>β certificates to use for software smartcards (field=values separated by commas). this option is only useful for testing purpose. it allows you to specify which certificates from the certificate database specified with--spice-smartcard-dbshould be used for smartcard emulation. β¨--spice-cache-size=<bytes>β image cache size β DEPRECATED. this option should only be used for testing/debugging. π§ͺ--spice-glz-window-size=<bytes>β Glz compression history size β DEPRECATED. this option should only be used for testing/debugging. π§ͺ
π BUGS π
found a bug? report bugs to the mailing list "http://lists.freedesktop.org/mailman/listinfo/spice-devel" β the devs wanna hear it, fr fr π
π COPYRIGHT π
Copyright (C) 2011, 2014 Red Hat, Inc., and various contributors. this is free software. you may redistribute copies of it under the terms of the GNU Lesser General Public License "https://www.gnu.org/licenses/old-licenses/lgpl-2.1.html". there is NO WARRANTY, to the extent permitted by law. βοΈ
π SEE ALSO π
"virt-viewer(1)"β the icon, the moment- the project website
"http://spice-space.org"β go snoop π¦
and that's the whole page bestie! π this lil doc was rendered with the help of perl v5.42.2, dated 2025-05-09, on the SPICE-CLIENT(1) page β go forth and spice responsibly π
π¦ where this page comes from
- alpine 3.24: spice-gtk-doc 0.42-r0 Β· LGPL-2.1-or-later
- π girlified by deepseek-ai/DeepSeek-V4.1-Flash-1017 on : a language model's rewrite of the original, under its terms