Repository navigation
Releases: FunkyNERD/nerd-deck
Release list
nerd-deck app 0.9.1
What's changed
Everything since host-v0.9.0.
Fixes
- stats: stop leaking GPU and mount watchers, and read less often (dd6683d)
Changing a Stats setting built a new collector, which started another GPU
watcher and mount watcher while the old ones kept running; the collector is
now reconfigured in place. Clock speeds, disk space and the CPU's
temperature are read at most once a second, and network counters come from
/proc/net/dev, one file, instead of six files per interface.
Performance
- drop sysinfo's thread pool (2a2f0b7)
Its rayon threads, one per core, were woken on every sample to refresh in
parallel, which cost far more than the refresh itself: about 3.5% of a core
at a 100 ms interval.
Chores
- release: app 0.9.1 (5856da5)
Full diff: host-v0.9.0...host-v0.9.1
nerd-deck app 0.9.0
What's changed
Everything since host-v0.8.3.
Features
- settings: update every 100 ms or 200 ms, with a warning (3aba796)
The settings window offers intervals down to 100 ms and warns that the deck
may not be as responsive under a second. The config rejects anything
shorter than 100 ms. - settings: app update banner with what's new and a download (be23365)
Every page of the settings window shows a newer app release: the features
and fixes since this version, and for an install from a package, the .deb or
.rpm to download and open in the software installer. A source install is
told to update with git pull and install.sh instead. The service now reports
a newer release with no deck connected too.
Fixes
- wait for the stats interval before taking the host for gone (703bcdf)
The app sends its stats interval with the display settings, and the deck
waits that long plus 2 s, at least 3 s, before showing the waiting screen,
so a 5 s interval no longer drops to it between updates.
Performance
- stats: sample in under a millisecond (2cb56ea)
Only the CPU's temperature sensor is refreshed (all of them took ~45 ms on
a laptop), the battery is read every 5 s rather than every sample (~10 ms
each), and a slow sample no longer leaves a backlog to send in a burst.
Documentation
- the stats interval timeout ships in firmware 0.9.0 (04684e7)
Chores
- release: app 0.9.0 (6d45255)
Full diff: host-v0.8.3...host-v0.9.0
nerd-deck app 0.8.3
What's changed
Everything since host-v0.8.2.
Fixes
- stats: leave nerd-deck itself out of the busiest program (c3912c8)
The service, tray and settings window are all nerd-deck, so they're skipped,
and a program replaced while it runs is counted under its own name rather
than as " (deleted)".
Chores
- release: app 0.8.3 (a05b8cb)
Full diff: host-v0.8.2...host-v0.8.3
nerd-deck app 0.11.0
What's changed
Everything since host-v0.10.0.
Features
- start and stop the service from the tray and settings window (e1c2bcb)
Chores
- release: app 0.11.0 (b72c4ab)
Full diff: host-v0.10.0...host-v0.11.0
nerd-deck app 0.10.0
What's changed
Everything since host-v0.9.1.
Features
- keep display settings on each deck (b2b7491)
Each deck reports its own settings when it connects, and the settings
window changes them on the connected deck only, so two decks can be set
up differently. The host no longer pushes [display] from the config, and
firmware installs leave the deck's stored settings alone.
Chores
- release: app 0.10.0 (c073134)
Full diff: host-v0.9.1...host-v0.10.0
nerd-deck firmware 0.9.0
What's changed
Everything since firmware-v0.8.1.
Fixes
- firmware: stay responsive when data floods in (d7eac3c)
Serial is read in chunks for at most 20 ms a pass, so a sender going flat
out can't freeze the screen, and only the newest whole stats each pass are
drawn. A line that starts like a message counts as the host being there,
even when a flood has dropped bytes from the rest of it. - wait for the stats interval before taking the host for gone (703bcdf)
The app sends its stats interval with the display settings, and the deck
waits that long plus 2 s, at least 3 s, before showing the waiting screen,
so a 5 s interval no longer drops to it between updates.
Documentation
- the stats interval timeout ships in firmware 0.9.0 (04684e7)
Chores
- release: firmware 0.9.0 (e6f1f8d)
Full diff: firmware-v0.8.1...firmware-v0.9.0
nerd-deck firmware 0.10.0
What's changed
Everything since firmware-v0.9.0.
Features
- keep display settings on each deck (b2b7491)
Each deck reports its own settings when it connects, and the settings
window changes them on the connected deck only, so two decks can be set
up differently. The host no longer pushes [display] from the config, and
firmware installs leave the deck's stored settings alone.
Full diff: firmware-v0.9.0...firmware-v0.10.0
nerd-deck 0.6.0
What's changed
Everything since v0.5.1.
Features
- GPU and busiest program on System, disk activity on Storage (684777a)
The System tab's RAM and swap share one memory card, and the freed slot
shows the discrete GPU (NVIDIA via nvidia-smi, or AMD): usage, temperature
and VRAM, left alone while it's powered down. PCs without one show the
busiest program instead. Storage cards show each disk's read and write rates. - colour the CPU temperature by configurable thresholds (aa01fc8)
The System tab shows the CPU temperature orange fromdisplay.temp_warm
and red fromdisplay.temp_hot, set on the settings window's Device page.
The clock now sits on the left under the gauge and the temperature on the
right, so neither moves as the other changes width. - preset button actions, URL buttons and coloured tab icons (df33fd2)
The button editor picks what a button does from ready-made actions (the
default buttons' and a few more), opening a URL, or running any program;
it's still saved as the button's command. The image note goes. On the deck
and in settings, the System tab's icon is the logo's bars, and each tab's
icon takes its own colour while open. - choose how long the deck stays on while the PC is away (8344f5b)
display.off_after(minutes, up to an hour, 0 never) replaces the on/off
off_when_away. The settings window also writes[display]as a real
section before the buttons, and turns the inline table an earlier build
wrote into one. - tab order, start tab, brightness and power saving for the deck (a9e354f)
A Deck tabs page in the settings window sets the order of the deck's tabs,
and the Device page's display settings now work: the tab it opens on,
brightness, dimming when idle and turning off while the PC is away. They go
to the deck in a newdisplaymessage (protocol v6), which keeps them in
flash so they apply from power-on.
Chores
- release: 0.6.0 (b043502)
Full diff: v0.5.1...v0.6.0
nerd-deck 0.5.1
What's changed
Everything since v0.5.0.
Fixes
- host: start the tray with the settings window and refresh icon caches (4b772f2)
The tray only started at login, so opening settings after an install showed
no tray icon; the window now starts it when it isn't running. install.sh
tells the desktop about the new icon and menu entry, and skips sudo when the
udev rule is already current.
Chores
- release: 0.5.1 (acf5883)
Full diff: v0.5.0...v0.5.1
nerd-deck 0.5.0
What's changed
Everything since v0.4.1.
Features
-
icon tabs with a Storage tab and the battery as a tab (24de5b9)
The header now has a pill per tab, icon only but for the open one, which
also shows its name. Disks move from Network to their own Storage tab, with
USB drives marked (the host sendsremovable), and the battery screen
becomes a Battery tab, shown only on hosts with a battery. -
full-face image buttons, label colours and a battery screen (75eaa4b)
Image buttons now fill the whole face with the label on a band, every
button can set its label colour (with a picker in the settings window),
and tapping the battery opens a power and battery stats screen. The device
acknowledges each image so lost chunks are resent. Protocol v5. -
host: add a settings window (31b5128)
nerd-deck --settings(the app menu, or a click on the tray icon) edits the
config in place, keeping its comments and layout, and has the service reload
it after each change. Sections for the device, a button editor (the deck's own
icons, images, commands with Run now), stats, notification filters, firmware
and updates, and About. Built with Slint under its royalty-free licence, with
Slint's credit on the About page. Opening it again brings the open window to
the front.The service gains what the window needs: switches for the battery, Do Not
Disturb and low-urgency notifications, a record of apps that send
notifications, a ReinstallFirmware method, and more in its status. -
host: add a tray icon and a D-Bus interface to the service (cc5c013)
The service now owns io.github.FunkyNERD.NerdDeck on the session bus, with
Status, Reload and TestNotification methods and a StatusChanged signal, and
applies a reloaded config without restarting.nerd-deck --trayshows the
deck's state in the system tray and offers test notifications and config
editing and reloading. install.sh and the packages start the tray at login. -
show desktop notifications on the device (f1dfef8)
The host watches the session bus as a monitor and copies freedesktop Notify
and GNOME's org.gtk.Notifications calls to the device, filtered by app, with
low-urgency ones left out and Do Not Disturb respected. Off by default under
[notifications] in the config.The device dims the screen and slides a card down for 8 s; a critical
notification takes over the whole screen until dismissed. Protocol v4 adds the
notificationmessage.
Documentation
- show the deck running in the README (9de3e23)
Chores
- release: 0.5.0 (1d1d3fd)
Full diff: v0.4.1...v0.5.0