-
-
Notifications
You must be signed in to change notification settings - Fork 14.1k
New issue
Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.
By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.
Already on GitHub? Sign in to your account
Tuxedo Control Center #135841
Tuxedo Control Center #135841
Conversation
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
Please integrate the node package into our nodePackages
in pkgs/development/node-packages
set. 12000 lines of code for a single package is too much.
f26c2fe
to
624c767
Compare
@Mic92 So in general I agree. I've updated the PR to do this (not yet fully cleaned up). The problem is that TCC needs its
Other people seem to have this problem when packaging as well (see svanderburg/node2nix#149), without any clear solution. Do you have a pointer? |
7620096
to
84bf29c
Compare
@Mic92 I've tried to integrate TCC into
So unless I'm missing something obvious packaging, TCC apart from
Don't understand me wrong, I would be happy if integrating it into |
I've rebased this and updated Tuxedo Control Center to 1.1.2. |
With this commit, the Nix code in this repo is idential to NixOS/nixpkgs#135841. I'm going to try to keep it in sync from here on until it's merged in nixpkgs.
8f988b1
to
a33a3ec
Compare
Is there a way I can use this while waiting for it to get merged? P.S thanks a lot for the work! |
@blitz has made a module (unfortunately it's not a flake, but I've managed to work around this) |
I'm slowly flakifying my NixOS configs so this repo will also become a flake soon. |
@blitz you the real MVP. Thanks for pointing me to the repo @pgronkievitz |
@MichaelAkvo if you are using the As for myself I have some migration work to do on my tuxedo computer then I'll start using this and come with feedback |
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
There is a merge conflict and the following message
error: Package ‘electron-11.5.0’ in /home/daniel/workspace/projects/nixpkgs/pkgs/development/tools/electron/generic.nix:25 is marked as insecure, refusing to evaluate.
I added the electron package to the exceptions for now and started building.
Edit: build finished and got this result:
/bin/sh: line 1: prime-select: command not found
/bin/sh: line 1: prime-supported: command not found
(node:74258) electron: The default of contextIsolation is deprecated and will be changing from false to true in a future release of Electron. See https://github.com/electron/electron/issues/23506 for more information
(node:74258) UnhandledPromiseRejectionWarning: TypeError: Cannot read property 'on' of undefined
at TccDBusController.onModeReapplyPendingChanged (/nix/store/nd10h9900zy5fvzgsc282n6c5hripn1b-tuxedo-control-center-1.1.2/e-app/common/classes/TccDBusController.js:206:24)
at /nix/store/nd10h9900zy5fvzgsc282n6c5hripn1b-tuxedo-control-center-1.1.2/e-app/e-app/main.js:150:17
at processTicksAndRejections (internal/process/task_queues.js:97:5)
(node:74258) UnhandledPromiseRejectionWarning: Unhandled promise rejection. This error originated either by throwing inside of an async function without a catch block, or by rejecting a promise which was not handled with .catch(). To terminate the node process on unhandled promise rejection, use the CLI flag `--unhandled-rejections=strict` (see https://nodejs.org/api/cli.html#cli_unhandled_rejections_mode). (rejection id: 1)
(node:74258) [DEP0018] DeprecationWarning: Unhandled promise rejections are deprecated. In the future, promise rejections that are not handled will terminate the Node.js process with a non-zero exit code.
This is based off work from: https://github.com/Vodurden/devbox/blob/f06f565286e069ec5c58c222c97e37f0f7c5b551/nix/modules/nixos/tuxedo-control-center.nix Editing has taken place in https://github.com/blitz/tuxedo-nixos/ and can be seen there.
a33a3ec
to
a0e0efe
Compare
@dasj19 Thanks for testing!
I've rebased the PR, so this should be gone. If you actually want to use it while it's not merged, I would suggest you head over to this repo.
Checkout blitz/tuxedo-nixos#troubleshooting and tuxedocomputers/tuxedo-control-center#148.
This is harmless, unless you have a nVidia PRIME system. In this case, please say so. It would be interesting to see whether we get this to work.
These need to be reported upstream. If there is specific broken functionality, we can try to patch it. I would welcome help for this. |
@pgronkievitz If you want to give the flake a shot, there is a flake branch here that exports a module: https://github.com/blitz/tuxedo-nixos/tree/flake |
@blitz Thanks for your response and fix. I tried the new changes and it behaves as follows:
And a blank Tuxedo Control Center shows up. The same happens when I use https://github.com/blitz/tuxedo-nixos/#usage My hardware us this https://www.tuxedocomputers.com/en/Linux-Hardware/Linux-Notebooks/15-16-inch/TUXEDO-Book-XA15-Gen10.tuxedo with max specs. Edit: now it launches successfully using https://github.com/blitz/tuxedo-nixos/#usage I guess I had to kill the previous process Now a review of the app:
|
Ah, I didn't realize that you don't use the module. Without the module, you don't get the TCC daemon and there is some dbus magic missing. So this is not expected to work.
Yes, when you start TCC without the daemon and dbus magic it gets stuck in a weird state. I don't think there is anything we an do about it.
It would be interesting, if the limitations you see also happen on Ubuntu or TuxedoOS. If so, this is an upstream limitation. |
Hi, I figure that the prebuilt binaries for ubuntu 20.04 predates the machine I have and there is no point in trying them. So I tried compiling on ubuntu 22.04 live, but I can't figure out how to get tccd.service as mentioned in step 3. here https://github.com/tuxedocomputers/tuxedo-control-center#development-setup Whithout the service the app crashes right after launch. So if you know of a |
Thanks for trying! See here for the service files: https://github.com/tuxedocomputers/tuxedo-control-center/tree/master/src/dist-data |
@blitz thanks for guiding me so far. I did not succeeded in having a working build from source. The resulted The conclusion is that there is fan control support, and none of the features are unsupported. As I mentioned previously in NixOS there were certain parts of the application that printed "This feature is unsupported". In Ubuntu everything was supported. |
Did you reboot after activating the module on NixOS? The module also loads a kernel module that is required for fan control etc. |
I don't know what happened but after reboot the TCC displays a blank window. When started from terminal I get journalctl says: Edit: Tried with both linux 5.15 and 5.16 Yes, confirmed with
|
@dasj19 Having cpufreq sysfs files only for some CPUs is extremely weird. Do you have an unusual kernel configuration or any other special config? That being said, given that this discussion is not necessarily regarding packaging, I would propose to continue the rootcausing as an issue in https://github.com/blitz/tuxedo-nixos/. |
what's the current status of this PR? anyone currently working on it? Is it only still blocked by the upstream electron issue? |
I'm still interested in getting this into Nixpkgs. But upstream using ancient Electron is still an issue. Otherwise there is the issue of checking in gigantic autogenerated Nix files. |
I'm closing this for now. If someone wants to revive it, feel free to checkout https://github.com/blitz/tuxedo-nixos/ |
Motivation for this change
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.
This PR:
Testing done:
I've been running TCC on a Tuxedo XP14 laptop without issues. Fan control notably improves compared to running it without TCC.
This PR is based to a large degree on work done by @Vodurden.
Fixes #132206.
Things done
sandbox = true
set innix.conf
? (See Nix manual)nix-shell -p nixpkgs-review --run "nixpkgs-review wip"
./result/bin/
)