FyneDesk

使用 Fyne 的 Linux/Unix 完整桌面环境。「A full desktop environment for Linux/Unix using Fyne」

Github星跟踪图

About

FyneDesk is an easy to use Linux/Unix desktop environment following material design.
It is built 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:

  • arandr
  • xbacklight or brightnessctl for laptop brightness
  • connman-gtk is currently used for configuring Wi-Fi network settings

Compositor support currently requires compton to be installed.

Getting Started

Using standard Go tools you can install FyneDesk using:

go get fyne.io/fynedesk/cmd/fynedesk

This will add fynedesk to your $GOPATH (usually ~/go/bin).
You can now run the app in "preview" mode like any other Fyne app.
Doing so is not running a window manager, to do so requires another few steps:

Setting up as a desktop environment

To use this as your main desktop you can run the following commands to set up
fynedesk as a selectable desktop option in your login manager (such as LightDM for example):

git clone https://github.com/fyne-io/fynedesk
cd fynedesk
make
sudo make install

You can now log out and see that it is in your desktop selection list at login.

Debugging a window manager

You can also run the window manager components in an embedded X window for testing.
You will need the Xephyr tool installed for your platform (often installed as part of Xorg).
Once it is present you can use the following command from the same directory as above:

make embed

It should look like this:

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 into 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/fynedesk/cmd/fynedesk_runner

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

Shipping FyneDesk

If you are installing FyneDesk by default on a distribution, or making it available as a standard option, you should consider the following points.
You do not need to ship the library or any dependencies, but it is recommended to add the following apps as well:

app go get description
fin github.com/fyne-io/fin A display manager app that matches the look and feel of FyneDesk

Please do let us know if you package FyneDesk for your system, so we can include a link from here :).

主要指标

概览
名称与所有者FyshOS/fynedesk
主编程语言Go
编程语言Go (语言数: 2)
平台Android, BSD, iOS, Linux, Mac, Raspbian, Windows
许可证Other
所有者活动
创建于2018-07-03 15:47:01
推送于2025-06-11 08:14:58
最后一次提交2024-03-02 21:47:33
发布数10
最新版本名称v0.4.0 (发布于 )
第一版名称v0.1.0-alpha (发布于 )
用户参与
星数1.1k
关注者数26
派生数49
提交数1.3k
已启用问题?
问题数117
打开的问题数36
拉请求数134
打开的拉请求数2
关闭的拉请求数10
项目设置
已启用Wiki?
已存档?
是复刻?
已锁定?
是镜像?
是私有?