Skip to content

stefanhoelzl/frameworkd

Folders and files

NameName
Last commit message
Last commit date

Latest commit

 

History

22 Commits
 
 
 
 
 
 
 
 
 
 
 
 
 
 

Repository files navigation

frameworkd

daemon to control system settings of your Framework laptop.

It provides a d-bus service based on FrameworkComputer/framework-system. This service can be used with a gnome-shell extension or from the command line without root permissions.

Features:

  • change battery charge limit
  • change brightness of the fingerprint reader led
  • change keyboard backlight brightness

How it works

Requirements

AMD: a kernel with this patch series is required or disable secure boot.

Installation

The latest binaries and packages can be found here.

# Fedora
$ dnf install frameworkd-${version}.x86_64.rpm

# Fedora Atomic Desktop
$ rpm-ostree install frameworkd-${version}.x86_64.rpm

# Debian
$ dpkg -i frameworkd_${version}_amd64.deb 

# Gnome Shell extension
mkdir -p ~/.local/share/gnome-shell/extensions/frameworkctl@stefanhoelzl
unzip frameworkctl@stefanhoelzl.shell-extension-zip -d ~/.local/share/gnome-shell/extensions/frameworkctl@stefanhoelzl
gnome-extensions enable frameworkctl@stefanhoelzl
# restart gnome-shell
#  Wayland
#   logout and login again
#   or start a new session to test the extension: `dbus-run-session -- gnome-shell --nested --wayland`
#  X11: press Alt+F2 and enter `restart`

Usage

# control keyboard backlight
$ busctl call org.stefanhoelzl.frameworkd /kblight org.stefanhoelzl.framework.KeybLight GetBrightness
$ busctl call org.stefanhoelzl.frameworkd /kblight org.stefanhoelzl.framework.KeybLight SetBrightness y 0
$ busctl call org.stefanhoelzl.frameworkd /kblight org.stefanhoelzl.framework.KeybLight SetBrightness y 100

# control finger print led brightness
$ busctl call org.stefanhoelzl.frameworkd /fprintled org.stefanhoelzl.framework.FprintLed GetBrightnessLevel
$ busctl call org.stefanhoelzl.frameworkd /fprintled org.stefanhoelzl.framework.FprintLed SetBrightnessLevel y 1
$ busctl call org.stefanhoelzl.frameworkd /fprintled org.stefanhoelzl.framework.FprintLed SetBrightnessLevel y 2
$ busctl call org.stefanhoelzl.frameworkd /fprintled org.stefanhoelzl.framework.FprintLed SetBrightnessLevel y 3

# control charge limit
$ busctl call org.stefanhoelzl.frameworkd /battery org.stefanhoelzl.framework.Battery GetChargeLimit
$ busctl call org.stefanhoelzl.frameworkd /battery org.stefanhoelzl.framework.Battery SetChargeLimit y 80

Known Issues

  • GNOME extension supports only certain GNOME versions
    • If you have another version you can try to edit ~/.local/share/gnome-shell/extensions/frameworkctl@stefanhoelzl/metadata.json and add your GNOME version before enabling the extension.
    • If it works on another GNOME version please let me know
  • settings are lost after reboot (see FrameworkComputer/framework-system#25)

About

No description, website, or topics provided.

Resources

Stars

Watchers

Forks

Releases

No releases published

Packages

No packages published