• Stars
    star
    170
  • Rank 215,876 (Top 5 %)
  • Language
    Rust
  • License
    GNU General Publi...
  • Created almost 5 years ago
  • Updated 3 months ago

Reviews

There are no reviews yet. Be the first to send feedback to the community and the maintainers!

Repository Details

Wayland launcher/dashboard

wldash

screenshot

A dashboard/launcher/control-panel thing for Wayland. Requires wlr-layer-shell-unstable-v1.

Consider this alpha-quality: While it works, everything is subject to change with a moments notice. You may end up pulling in the latest changes, and poof, wldash suddenly turns into an artisan espresso machine.

How to use

  1. Checkout: git clone https://github.com/kennylevinsen/wldash
  2. Build: cargo build --release
  3. Put somewhere: cp target/release/wldash /usr/local/bin/wldash
  4. Run: wldash

To see the default configuration, run wldash print-config. To configure, place a file in $XDG_CONFIG_HOME/wldash/config.yaml (or if XDG_CONFIG_HOME is not set, ~/.config/wldash/config.yaml). JSON is also currently supported.

Notable settings: outptuMode can be active or all, scale can be set to 2 to half the buffer size, and the widgets (and their layout) can be configured.

For more info, look in src/config.rs.

System dependencies

dbus. See https://github.com/diwic/dbus-rs#requirements.

How to use launcher

The launcher for wldash is built-in, based on https://github.com/kennylevinsen/dot-desktop. Pluggable systems may come back in the future.

The environment variables XDG_DATA_DIRS and XDG_DATA_HOME are read to find the many applications folders that contain desktop files.

Features

Date and time

In nice, big letters!

3 month calendar

Scroll or click on the months to navigate.

Battery level

Over upower, only visible if upower battery is detected

Audio volume

Over pulseaudio, only visible if pulseaudio connection is successful. Scroll to adjust volume, right-click to toggle mute.

Backlight control

Using backlight sys file, only visible of backlight is detected. Scroll to adjust, right-click to toggle between the extreme values.

Launcher

Loads desktop files from the usual locations.

The launcher also accepts prefix operators to change its mode:

Notable missing features:

  • Scaling of any kind - all sizes are currently hardcoded in pixels
  • Configurability
  • Cleanup and reorganization
  • Proper line editor for the launcher

How to discuss

Go to #kennylevinsen @ irc.libera.chat to discuss, or use ~kennylevinsen/[email protected].

More Repositories

1

sshmuxd

sshmux frontend
Go
809
star
2

serve2d

Protocol detecting server
Go
578
star
3

sshmux

SSH multiplexer
Go
122
star
4

greetd

[mirror] A generic greeter daemon (https://sr.ht/~kennylevinsen/greetd)
Rust
82
star
5

gocnc

CNC tool in Go
Go
64
star
6

serve2

Protocol detecting server library
Go
62
star
7

minihttp

A small HTTP server.
Go
56
star
8

wlsunset

[mirror] Day/night gamma adjustments for Wayland (https://sr.ht/~kennylevinsen/wlsunset)
C
55
star
9

seatd

[mirror] Seat management daemon and library (https://sr.ht/~kennylevinsen/seatd)
C
39
star
10

tunnel

Local transport proxy
Go
20
star
11

jirafs

JIRA 9P fileserver
Go
17
star
12

qp

9P protocol implementation in Go
Go
17
star
13

dot-desktop

Desktop file handler for application launchers
Rust
15
star
14

qptools

Tools for qp, the 9P2000 implementation
Go
11
star
15

gtkgreet

[mirror] Gtk greeter (https://git.sr.ht/~kennylevinsen/gtkgreet)
C
10
star
16

poweralertd

[mirror] UPower-powered power alerter (https://sr.ht/~kennylevinsen/poweralertd/)
C
9
star
17

ecies

Curve25519 ECIES
Go
8
star
18

dotfiles

My precious
Shell
5
star
19

sublime_irc

IRC client for Sublime Text 2
Python
4
star
20

sshfleet

Go
4
star
21

five-proxy

Proxy for five-server
Java
3
star
22

sqnz

Number sequence server
Rust
3
star
23

g9p

9P2000
Go
2
star
24

newui

A Python DOM thing for terminal UI's
Python
2
star
25

platformctl

Rust
2
star
26

g9ptools

9P2000 tools and examples
Go
2
star
27

daemon

Golang daemon handler
Go
1
star
28

gocrypto

Go crypto libraries
Go
1
star
29

pycnc

Shapeoko 2 CNC optimizer/sender
Python
1
star
30

net9p

Plan9 ip(3) implementation in Go
Go
1
star
31

regn

Calculator library for Rust
Rust
1
star