/desktop

Primary LanguageGoOtherNOASSERTION

GoDoc Reference 0.1.1 release Join us on Slack Support Fyne.io
Code Status Build Status Coverage Status

About

FyneDesk is an easy to use Linux/Unix desktop environment following material design. It is build using the Fyne toolkit and is designed to be easy to use as well as easy to develop. We use the Go language and welcome any contributions or feedback for the project.

Dependencies

For a full desktop experience you will also need the following external tools installed:

  • xbacklight
  • arandr

Getting Started

Using standard go tools you can install Fyne's desktop using:

go get fyne.io/desktop/cmd/fynedesk

Once installed you could set $GOPATH/fynedesk as your window manager (usually using .xinitrc). You can also run it in an embedded X window for testing using:

DISPLAY=:0 Xephyr :1 -screen 1280x720 &
DISPLAY=:1 fynedesk

It should look like this:

Fyne Desktop - Dark

(The default wallpaper is under Creative Commons by dave souza found on Wikipedia.)

If you run the command when there is a window manager running, or on an operating system that does not support window managers (Windows or macOS) then the app will start in UI test mode. When loaded in this way you can run all of the features except the controlling of windows - they will load on your main desktop.

Runner

A desktop needs to be rock solid and, whilst we are working hard to get there, any alpha or beta software can run in to unexpected issues. For that reason we have included a fynedesk_runner utility that can help manage unexpected events. If you start the desktop using the runner then if a crash occurs it will normally recover where it left off with no loss of data in your applications.

Using standard go tools you can install the runner using:

go get fyne.io/desktop/cmd/fynedesk_runner

From then on execute that instead of the fynedesk command for a more resillient desktop when testing out pre-release builds.