Packaging the Tuxedo Control Center (Electron)

Tuxedo is a German laptop manufacturer that provides Linux-friendly laptops. Their system control is done via an app called “Tuxedo Control Center” (TCC). This open source app provides fan control settings among other things. Without this app, the Tuxedo laptops default to very noisy fan control settings. It lives on Github.

I got my hands on one of these laptops and tried to package TCC for NixOS. TCC is an Electron app and a set of systemd services. I packaged other software for NixOS, but it seems Electron is a very special kind of torture.

I’ve found various instructions on the web, but none seem to apply. My current partial attempt can be seen here:

% git clone
% nix-build ./tcc.nix

This seems to build the node package, but I’m not clear how this is then wrapped with Electron to provide a real app. I’m also not sure where the service binaries are.

Any help is appreciated! If I get the TCC properly built, my plan is to write a proper profile for nixos-hardware.


I’ve also opened a packaging request in nixpkgs: Packaging Request: Tuxedo Control Center · Issue #132206 · NixOS/nixpkgs · GitHub

1 Like