Disclaimer: This guide is for newer Linux enthusiasts and those who might be looking to get the best experience out of their Framework Laptop. Some of the content below may feel overly simplified to experienced enthusiasts. If you have suggestions for tweaks and additions, please feel free to comment at the bottom and share your suggestions.
Also, if you're stuck with anything, we do have basic troubleshooting guides for Ubuntu and Fedora available as well.
Note: Please give this page explaining the differences between Officially Supported vs Compatible Community Supported Linux Distributions a quick read.
Once your Framework Laptop DIY Edition is charged and ready for use, you want to install an operating system. For most of you visiting this guide, this will mean installing a Linux distribution. Before creating a Live USB key with your favorite distribution, please read this guide for the best Linux experience possible.
Additionally, it’s important to remember that no Linux distribution will perfectly match Windows and OS X in terms of hardware compatibility (peripherals, for example), software availability, and driver management.
Generally, there are two significant factors to consider when deciding which distribution to put onto your Framework Laptop — a ++Linux distribution++ you enjoy and a ++Linux desktop environment++. This is where selecting the right distribution of Linux comes into play.
Step 1 - Selecting the right distribution.
If you don’t have a Linux distribution in mind already, a good choice would be Ubuntu. For 11th Gen compatible configurations, Ubuntu 22.04 LTS is excellent, while for the 12th Gen compatible configurations, Ubuntu 22.04 LTS with the OEM kernel or 22.10 are recommended. These releases have newer kernels, with compatibility fixes and improvements not found in older kernels.
If you’re a more experienced Linux enthusiast who prefers the latest bug fixes available, then Fedora would be an outstanding option. Once connected to the internet and updates are installed, these distributions will have very recent kernels to ensure that you have the best compatibility with 12th Gen Framework compatible configurations.
1.1 Ubuntu vs Ubuntu LTS (Long Term Support)
Ubuntu LTS releases are are published every two years in April. LTS releases are the 'enterprise grade' releases of Ubuntu and are used the most.
Canonical maintains the Base Packages and provides security updates for LTS releases, including kernel livepatching, for a period of ten years.
Non-LTS releases (interim releases) are supported for 9 months.
With this in mind, if you're needing to stay on the cutting edge of distribution packages, .10 releases with a 9 month support cycle are a good fit. If you want to avoid 9 month upgrade cycles, LTS releases are suggested.
Step 2 - Updates without creating new issues.
Ubuntu and similar distributions are great for updating your computer with timely fixes and security updates. Occasionally, you may find that an update to your favorite distribution breaks something.
This usually happens with non-critical updates. As with other non-Linux operating systems, sometimes OS updates can break an otherwise working environment. There are two different things we can do about this.
(Click images to enlarge)
2.1- Ubuntu users can change their updates from the defaults, which "updates everything", into "installs all updates to security updates, and downloads only", with installation needing to take place manually. This allows you to make sure you’re not in the middle of anything important before your updates are installed.
Linux Mint and Pop OS also allow for changes to the update settings, but it will appear in a different area for those distributions.
Additionally, on the same tab, it’s recommended only to be notified about LTS (++Long Term Support++) releases if you’re currently on an LTS. Leave this notification section alone if you’re on a release ending in .10. For non-Ubuntu-based distributions, skip this step and go to the next step instead.
2.2- The second recommendation is using TimeShift. Think of TimeShift as an “undo button” if your updates go wrong. TimeShift can be used with the ++rsync++ option to provide saved states. These saved states can be set up automatically, or you can create specific restore points. This is useful before running a series of updates, for example. TimeShift is available in the repositories of most major Linux distributions. Ubuntu, for example, has it available from the Ubuntu Software Center. If something goes wrong, you can boot the current Linux installation you’re using, or boot from a Live USB of the same distribution, then install TimeShift onto that Live USB (yes, this is possible). You can then mount the partition that contains the restore point folder and use TimeShift to restore the previous state this way. Then close TimeShift, unmount the partition with the restore point. The above link (TimeShift) will walk you through this process.
Warning: TimeShift restoration will be trickier if you’re using drive encryption. But it is completely doable. ++This guide here++ will help you.
Step 3 - Power savings vs. performance.
Getting the most out of your battery is a goal we all share. However, unlike Windows and OS X, Linux distributions are not dialed into one set of configurations. Linux has countless distributions among a multitude of kernels available. It can be confusing and frustrating if you’re expecting it to behave the same way as it does with other operating systems.
Framework Laptops for example, are unique in that the power used can also be affected by the expansion modules being used. Different modules use different amounts of power. So this is an additional thing to keep in mind as you work to get the most out of your laptop battery.
So what can be done to get the most battery usage out of your Framework Laptop? The best practice is to keep things as simple as possible. Remember, stick to these tips and you’ll see improved battery life without accidentally messing up an otherwise working Linux installation. Beware of random how-to articles using tweaks to udev - if you don’t know what you’re doing, I advise against following these guides.
3.1 - Desktop environment matters. The GNOME desktop environment is awesome, however its battery life is not extraordinary. GNOME does provide a power profile selector located in the upper right under your network/power selector. While it does offer some limited power savings, it’s not going to make a huge difference compared to other desktop environments. This affects distros like Ubuntu and Fedora. On the other hand, KDE desktop environments and lighter desktops like MATE and XFCE often give us better battery usage through less consumption.
Examples:
- Ubuntu/Fedora - Using the power profiles option described above.
- Kubuntu/OpenSUSE/other KDE-centric distributions - The defaults offer better battery life in some instances; your experience may vary.
- Ubuntu MATE/Xubuntu - These two Ubuntu-based distros will often outperform other desktop experiences with battery life. But as always, your experiences may vary. Ubuntu MATE, for example, uses the MATE desktop environment. And Xubuntu uses the XFCE desktop environment. While not as pretty, they’re lighter and use less power to draw out a desktop experience.
3.2 - Radios and your display settings. You will use much more power when your brightness turns on and if the Bluetooth and Wi-Fi radios are on. Using adaptive display settings or simply keeping your display settings dimmed down can make a decent difference in battery life. Additionally, disabling any Wi-Fi or Bluetooth radio that is not needed will increase your battery life.
Bonus tip: When using GNOME (Fedora 37 or Ubuntu 22.10, for example), consider using dark mode. On the upper right side of the screen where you would select your settings/battery/Wi-Fi settings, click there and choose dark mode. You’ll use less power to push your internal display if you’re running dark mode. It’s also better for your eyes. Yes, while some users will disagree with this - I've measured a difference using dark mode on GNOME.
3.3 - TLP. The odds are pretty good you’ve read about various tools to maximize your battery life, including tools like TLP and PowerTOP. The best approach for newer Linux users is to install TLP and allow it to do its job. TLP is an installable tool designed to provide better power management for laptops.
On Ubuntu or Fedora installations, please open a terminal and run:
Ubuntu
sudo apt install tlp
Fedora
sudo dnf install tlp
Ubuntu and Fedora
Now let's get TLP is running and verify it's active:
sudo systemctl enable tlp.service
sudo systemctl start tlp.service
sudo systemctl status tlp.service
TLP should show as loaded and active. So can you use GNOME power profiles and TLP? The best approach is to trust TLP exclusively. GNOME power profiles should be used only if you’re not going to run TLP as a service.
If you’re going to use TLP, please stop, disable and then remove GNOME power profiles to avoid any issues with conflicts.
sudo systemctl stop power-profiles-daemon.service
sudo systemctl disable power-profiles-daemon.service
sudo apt or dnf remove power-profiles-daemon
3.4 - Powertop. PowerTOP is a powerful tool to better understand how your Framework is utilizing power. And while you can use it to calibrate your battery usage further, this delves can introduce new issues of components suspending at inopportune times.
The best recommendation with PowerTOP is to use it as a monitoring tool. You can install it with the following commands:
Ubuntu/Linux Mint
sudo apt install powertop
Fedora
sudo dnf install powertop
Once installed, you can access PowerTOP from the terminal by running:
sudo powertop
Even if you don’t make any changes, having PowerTOP open will give you a glimpse into what is eating up your battery capacity.
There are other things one can do to decrease power consumption, but it’s recommended that you use the suggestions above to prevent accidentally breaking your Linux installation.
Once PowerTOP is running, you can use your tab key to browse over to each section of the application.
To get the most accurate information about your Framework Laptop, it’s best to calibrate PowerTOP. Unplug from power, then run:
sudo powertop --calibrate
This will take some time to complete, so it’s best to let it sit for a while. It’s also worth noting that your Framework will do odd things during this process, flashing the display, backlighting becoming brighter or dimmer, basically several things that do not feel normal to newer Linux users.
Please do not interrupt PowerTOP until it has indicated that it is done working.
3.5 - Pop OS users only. Do not install TLP. Instead, we want users running ++system76-power++, which comes pre-installed on Pop OS. The user can switch modes similarly to GNOME Power Profiles, but it’s better suited for Pop OS installations.
3.6 Any peripheral devices connected will draw power. Expansion cards, external displays and un-powered hubs all draw power and will reduce your battery throughout your workday.
3.7 Videos are battery vampires. Any video you’re watching will use a lot of battery power. Expect a couple of hours at best if watching a lot of videos while on battery. Not to say you can’t do this, but I recommend tempering your expectations on how long your fully charged battery is going to last.
Step 4 - Linux drivers. Linux distributions obtain their drivers “automatically” from the kernel they’re running. The newer the device, the better it works with a more recent kernel. This is usually where older Linux distribution releases fall short. They often use older kernels.
These older kernels often do not have all the bits needed to run some of the newer hardware. For example, 12th Gen Framework Laptops on older Ubuntu LTS kernels may not run that well. Yet on more recent kernels, 12th Gen Framework Laptops have well supported compatibility.
It's better to upgrade to a newer version of your favorite distribution than try to upgrade your kernel manually.
The safest approach is to continue to run your Linux distribution updates and if you need a new kernel, go back to Step 2 above in this document - set the updates back to “All Updates.”
Step 5 - Software. Unless you’re getting software from a trusted source, I recommend sticking to the individual software resources provided by your individual distribution’s repositories. Examples of questionable software include random .deb packages found in a random forum. This is just as dangerous as running random exe files in Windows or dmg packages on OS X.
Step 6 - Docks and power supplies. Using docks to gain access to external displays, USB devices and so forth can be useful. What isn't great finding that the dock in use introduces new issues with your selected Linux distribution.
Framework recommends the following for Linux users:
- Power directly to USB-C expansion card or third party power supplies. When you are charging your Framework laptop through a USB-C dock, you're introducing a new potential point of failure. This simply means we have an additional area where something might not work as expected that is not directly part of the Framework laptop. We'll help however we can, however charging your Framework laptop through a third party supported power source is strictly a community support endeavor. We officially support using Framework provided AC power adapters to your USB-C expansion card.
- HDMI and DisplayPort through a dock. Framework support will help however we can if the issue experienced is that it works with Windows, but not with a specific distribution of Linux. Our recommendation is to use our HDMI and DisplayPort expansion cards as we can actively troubleshoot these if they fail to work for you when using a Linux distribution.
9 Comments
I highly recommend EndeavourOS for Framework users. This distribution is an Arch derivative with a graphical installer, tools like NetworkManager, and sane defaults chosen out of the box. You also get your choice of installing one or more Desktop Environments together at install time. The Arch wiki documentation is second to none in my opinion.
Once upon a time Ubuntu might have been easier to install and use, but now I believe that Endeavour has surpassed them. A friend who has never used Linux before was even able to install it themselves.
D.H - Reply
I have been hearing really good things about EndeavourOS. It and MX Linux have been on my radar for sometime. I will absolutely take a weekend and put it through its paces as soon as I can clear a weekend to really give it a go.
Matt Hartley -
Wow this is great, learned a number of new things! Only a bit confused about your remark about dark mode. Afaik it does not improve battery life on (most) LCDs because of their uniform backlight. On the contrary, I often find myself increasing the brightness a bit in dark mode which obviously consumes more energy.
Jacob - Reply
This is fair feedback and I will re-test this. Historically, I have found that while the back lighting remains in use, the "brightness" factor did seem to make a fair bit of difference. That said, it is worth me re-testing and adjusting this accordingly.
Matt Hartley -
Fantastic, thank you for this guide, Matt! I do have to agree with Eli though, the section on masking
power-profiles-daemon.service
is a little confusing.Philip Mueller - Reply