budgie-desktop-view
budgie-desktop-view copied to clipboard
Budgie Desktop View is the official Budgie desktop icons application / implementation.
Budgie Desktop View
Budgie Desktop View is the official Budgie desktop icons application / implementation.
Scope
The scope of this project is to provide quick access to the content and applications you consider most important. It is not designed to replace your file manager or to perform typical file manager actions.
Budgie Desktop View provides:
- Options to enable and access "special" folders such as your Home directory and Trash.
- Showing active drive / volume mounts (including mounted removable media).
- An ordered list of Desktop directory contents, prioritizing folders before files while maintaining order of content that respects locales.
- Independently adjustable icon sizing from your file manager
- Right-click menu options for the background canvas to quickly access Budgie Desktop and System Settings, as well right-click menu options for opening a file using the default app, or via the Terminal.
- Drag & Drop support. Copies files and symlink directories (to avoid the need for recursive copy functionality).
- Keyboard-based navigation, including move-to-trash or cancel copy operation on use of delete key.
Budgie Desktop View is designed for the Budgie Desktop. Usage outside of Budgie is not supported and is outside this project's scope.
TODO
As Budgie Desktop View has a rigorous focus and scope of functionality, the TODO is currently limited to the following:
- Ensuring long-press gestures on items work for 2-in-1 devices.
Building
Dependencies
The dependencies provided below are build-time dependencies and named according to the package name on Solus. You may need to look up the equivalent for your own operating system.
Name | Minimum Version | Max. (Tested) Version |
---|---|---|
glib2-devel | 2.64.0 | 2.66.3 |
libgtk-3-devel | 3.24.0 | 3.34.22 |
vala | 0.48.0 | 0.50.2 |
Solus
To install these under Solus, run:
sudo eopkg install -c system.devel libgtk-3-devel vala
Defaults and Configure Options
By default, we will build with:
-
c_std
as11
-
buildtype
asrelease
- Link-time optimization (LTO) enabled as
b_lto
, which reduces executable size. -
-03
GCC optimization level, which optimizes for both code size and execution time - Warning level (
warning_level
) set to max (3). This is the equivalent to-Wall
/-Wpedantic
.
Stateless
Budgie Desktop View supports stateless XDG paths. This is disabled by default. Should you wish to enable this (which will set the XDG application directory for autostart to datadir + xdg/autostart
as opposed to using sysconfdir), you can use -Dwith-stateless=true
Custom XDG Application Directory
By default, Budgie Desktop View will install its autostart file to either datadir + xdg/autostart
or sysconfdir + xdg/autostart
. If you use an operating system that uses a different location for autostart files, you should use -Dxdg-appdir=/full/path/to/directory
and replace the example path with the full path.
Debug
Given the above mentioned defaults, it is highly recommended that you specify -Dbuildtype=debugoptimized
during meson "configure" time in order to get useful debug info, for example:
meson --prefix=/usr --libdir="lib64" --sysconfdir=/etc -Dbuildtype=debugoptimized -Dwith-stateless=true build
Release
A release configure would look something like:
meson --prefix=/usr --libdir="lib64" --sysconfdir=/etc -Dwith-stateless=true build
Obviously change any of the above mentioned defaults or flags as necessary.
Compiling
Once the aforementioned dependencies have been installed and Meson configuration step executed, you can compile sources.
ninja -C build
Installing
Budgie Desktop View can be installed using this command:
sudo ninja -C build install
Uninstalling
Budgie Desktop View can be uninstalled using this command:
sudo ninja -C build uninstall
License
Budgie Desktop View is licensed under the Apache-2.0 license.
Authors
Copyright Buddies of Budgie