Source

Code

TLP’s source code is hosted on GitHub. The repository holds the following branches:

  • main – current development – releases are tagged with VERSION

  • debian/current – Debian/Ubuntu packaging for current releases (not identical with the official distribution packages)

Obtain the current development version with

git clone https://github.com/linrunner/TLP.git
cd TLP

Checkout the main branch

git checkout main

or a release version

git checkout VERSION

Note

Please base your pull requests on the main branch.

The current changelog for the development version is here.

Download release tarballs at the Release page.

Building Packages

Debian / Ubuntu

  1. Install the required package

  • packaging-dev – Metapackage providing common packaging tools

  1. Add a Git worktree for the debian/current branch

    git worktree add worktree/debian-current debian/current
    
  2. Symlink the worktree to debian/

    ln -s worktree/debian-current/debian debian

  3. Edit debian/changelog to your needs (optional).

  1. Build binary packages with

    dpkg-buildpackage -b -tc -i.git
    

Arch Linux

Packages tracking the main branch are available in the AUR:

Installing from Source

  1. If applicable, uninstall any existing TLP packages using your package manager.

  2. Install all dependencies as listed in Dependencies.

  3. Stop and remove conflicting tools such as power-profiles-daemon (refer to Dependencies).

  4. Checkout the main branch and change to the TLP/ directory as described in the Code section above.

  5. Install:

    # Please copy and save the complete output for further reference
    sudo make install install-man
    
  6. Enable the services:

    sudo systemctl enable --now tlp-pd.service
    sudo systemctl enable --now tlp.service
    

Note

Depending on your distribution, make install might not produce a working TLP installation. Check Makefile options to adapt to specific requirements. However, this is not necessary in many cases.

Removing a Source Install

In the TLP/ directory:

sudo make uninstall uninstall-man

Warning

Please do not use to remove a package-based installation!