A tool to help you control performance, energy, fan and comfort settings on TUXEDO laptops.
 
 
 
 
 
 
Go to file
Christoffer Sandberg de988b1700
Update version to 2.0.11 + changelog
2023-11-10 17:52:05 +00:00
.vscode Remove old and obsolete tuxedo ec api 2020-08-10 17:11:54 +02:00
build-src Silence disabling of old fan control service 2023-03-07 09:39:26 +01:00
e2e Update to angular 10 2022-04-13 17:33:29 +02:00
screenshots Updated Screenshots 2022-12-23 13:27:13 +01:00
src Update version to 2.0.11 + changelog 2023-11-10 17:52:05 +00:00
.browserslistrc Update to angular 10 2022-04-13 17:33:29 +02:00
.editorconfig add shutdowntimer service and frontend config site 2020-07-20 16:18:44 +02:00
.gitignore Change location of asset changelog 2019-11-11 14:28:15 +01:00
CHANGELOG.md Update version to 2.0.11 + changelog 2023-11-10 17:52:05 +00:00
COPYING Add COPYING licence text 2019-11-28 12:18:28 +01:00
FEATURES.md Update version to 0.8.1 2020-03-17 14:12:53 +01:00
README.md readme: Change dev node version 2022-11-28 11:14:01 +01:00
angular.json Add basic localize config 2022-03-16 13:20:53 +01:00
binding.gyp Basic implementation, untested 2021-05-19 19:57:04 +02:00
karma.conf.js Modify testing to be "headless" 2019-07-23 10:36:57 +02:00
package-lock.json Update version to 2.0.11 + changelog 2023-11-10 17:52:05 +00:00
package.json Update version to 2.0.11 + changelog 2023-11-10 17:52:05 +00:00
tsconfig.app.json Update angular 8 -> 9 2022-02-28 13:43:58 +00:00
tsconfig.json Update to angular 10 2022-04-13 17:33:29 +02:00
tsconfig.spec.json Initial new project structure 2019-07-11 11:49:47 +02:00
tslint.json Update to angular 10 2022-04-13 17:33:29 +02:00

README.md

TUXEDO Control Center

The TUXEDO Control Center (short: TCC) gives TUXEDO laptop users full control over their hardware like CPU cores, fan speed and more.
To get a more detailed description of features, plans and the ideas behind please check our press release (english | german) and info pages (english | german).

Using it

There are pre-build packages for Ubuntu 16.04/18.04/20.04 as well as openSUSE Leap 15.x and Tumbleweed available at our repositories. For details please have a look over here.

Note: TCC depends on the tuxedo-io module from the tuxedo-keyboard package for some core functionality like fan control.

Project structure

tuxedo-control-center
|  README.md
|--src
|  |--ng-app            Angular GUI (aka electron renderer)
|  |--e-app             Electron main
|  |--service-app       Daemon part (Node 12)
|  |--common            Common shared sources
|  |  |--classes
|  |  |--models
|  |--dist-data         Data needed for packaging
|--build-src            Source used for building

Development setup

  1. Install git, gcc, g++, make, nodejs, npm and libudev-dev
    Ex (deb):

    curl -sL https://deb.nodesource.com/setup_14.x | sudo -E bash -
    
    sudo apt install -y git gcc g++ make nodejs libudev-dev
    
  2. Clone & install libraries

    git clone https://github.com/tuxedocomputers/tuxedo-control-center
    
    cd tuxedo-control-center
    
    npm install
    

    Note: Do not continue with npm audit fix. Known to cause various issues.

  3. Install service file that points to development build path (or use installed service from packaged version)

    Manual instructions:

    1. Copy tccd.service and tccd-sleep.service (from src/dist-data) to /etc/systemd/system/
    2. Edit the tccd.service (exec start/stop) to point to <dev path>/dist/tuxedo-control-center/data/service/tccd.
    3. Copy com.tuxedocomputers.tccd.conf to /usr/share/dbus-1/system.d/
    4. Start service systemctl start tccd. (And enable for autostart systemctl enable tccd tccd-sleep)

NPM scripts

npm run <script-name>

Script name Description
build Build all apps service/electron/angular
start Normal start of electron app after build
start-watch Start GUI with automatic reload on changes to angular directory
test-common Test common files (jasmine)
gen-lang Generate base for translation (ng-app/assets/locale/lang.xlf)
pack-prod -- all | deb | rpm Build and package for chosen target(s)
inc-version-patch Patch version increase (updates package.json files)
inc-version-minor Minor version increase (updates package.json files)
inc-version-major Major version increase (updates package.json files)

Debugging

Debugging of electron main and render process is configured for vscode in .vscode/launch.json

Screenshots

English

Systemmonitor Dark Theme Tools Profiles Profile Settings About

German

Systemmonitor Dark Theme Tools Profile Profil Einstellungen