Skip to content

tuxedocomputers/tuxedo-control-center

master
Switch branches/tags

Name already in use

A tag already exists with the provided branch name. Many Git commands accept both tag and branch names, so creating this branch may cause unexpected behavior. Are you sure you want to create this branch?
Code

Latest commit

 

Git stats

Files

Permalink
Failed to load latest commit information.
Type
Name
Latest commit message
Commit time
 
 
 
 
e2e
 
 
 
 
src
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 

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

About

A tool to help you control performance, energy, fan and comfort settings on TUXEDO laptops.

Resources

License

Stars

Watchers

Forks

Packages

No packages published