This page permanently redirects to gemini://gmi.bacardi55.io/blog/2023/01/17/new-laptop-part1-endeavouros-archlinux-on-framework-laptop/.

New laptop part 1: EndeavourOS / Archlinux on the FrameWork laptop (12th gen)

Posted on 2023-01-17

Introduction

Following my previous post in this serie, [New laptop part 0: Discovering the FrameWork laptop], the goal of this post is to explain the steps I had to go through after installing [EndeavourOS] (a gnu/linux distribution based on [Archlinux]) on the [FrameWork laptop] and all the small things I had to tweak. It isn't 100% perfect and finished, but I'll try to update this page (or link a new entry) if I improve the following information.

Before going into all the details, I wanted to thank the [EndeavourOS community], [Archlinux wiki] and [FrameWork communities] where I found all those informations in a way or another.

=> New laptop part 0: Discovering the FrameWork laptop | EndeavourOS | Archlinux | FrameWork laptop | EndeavourOS community | Archlinux wiki | FrameWork communities

Installation

As said in my previous post, I just went through the GUI installer to install EndeavourOS, selected full encryption for the hard drive and let it ran. See the [official documentation] for help.

=> official documentation

Post installation

Let's start by installing vim to edit all the configuration with a real editor :).

sudo pacman -S vim

If you look for a complete out of the box vim config, I suggest [spf13 vim config].

=> spf13 vim config

Brightness

The brightness keys (via fn+F7/8) did not work out of the box (while others do work fine). To fix this, I edited the file `/etc/modprobe.d/framework-als-deactivate.conf' and added:

blacklist hid_sensor_hub

HiDPI

I had to change the default HiDPI setting as the screen resolution is so high (2256x1504). To do so, edit the `~/.Xresources' file, and add:

Xft.dpi: 120

Fixing Old OpenGL driver (i965)

I had issue with software running with openGL driver. Namely chromium and [lagrange] (a gemini browser).

TLDR; from archlinux wiki:

In Mesa 20.0, a new OpenGL driver, Iris, is promoted to be the default for Gen8+. Certain applications run faster with it. You may disable it and revert to use the old i965 driver by setting the MESA_LOADER_DRIVER_OVERRIDE=i965 environment variable before starting any OpenGL application. This setting does not affect Vulkan applications. --

I'm going the per application road, so I need to create a <application>.desktop' file in ~/.local/share/applications/' (and create the directory if doesn't exist).

For Chromium, there is already an existing /usr/share/applications/chromium.desktop' file, so copy it in the ~/.local/share/applications/' directory and then edit it. Change all `exec' lines (3 times in my case) from

Exec=/usr/bin/chromium %U

to

Exec=env MESA_LOADER_DRIVER_OVERRIDE=i965 /usr/bin/chromium %U

For Lagrange, copy /usr/share/applications/fi.skyjake.Lagrange.desktop' to ~/.local/share/applications/fi.skyjake.Lagrange.desktop' and edit the `Exec' line to be:

Exec=env MESA_LOADER_DRIVER_OVERRIDE=i965 /usr/bin/lagrange %U

The complete file for lagrange:

[Desktop Entry]
Name=Lagrange
Comment=A Beautiful Gemini Client
Categories=Network;
Exec=env MESA_LOADER_DRIVER_OVERRIDE=i965 /usr/bin/lagrange %U
Terminal=false
Type=Application
StartupWMClass=lagrange
Icon=fi.skyjake.Lagrange
MimeType=x-scheme-handler/gemini;x-scheme-handler/gopher;x-scheme-handler/spartan;

=> lagrange

fingerprint

To add support for the fingerprint reader, first install fprintd:

pacman -S fprintd

Then, to enable sudo via fingerprint, edit `/etc/pam.d/sudo', and add:

auth      sufficient pam_fprintd.so

above

auth      include   system-login

If you don't want to use the fingerprint for a sudo command, use `ctrl+c' and then enter your password.

For lightdm, edit `/etc/pam.d/lightdm' and add at the top:

auth        sufficient  pam_unix.so try_first_pass likeauth nullok
auth        sufficient  pam_fprintd.so

This allow to use either password or the fingerprint. To activate the fingerprint, enter a empty password, and then use the fingerprint :). Using only the second line will require the fingerprint and won't allow password alternative (which I wanted).

Fan management

So far, I have only followed the archlinux wiki installation steps. I haven't pushed much the CPU yet and the few times the fan went on it was loud but ok. I need more testing on this when I'll daily drive completely this laptop.

Install thermald' and dptfxtract-bin':

pacman -S thermald
yay -S dptfxtract-bin

And then configure thermald and start the service.

sudo dptfxtract-bin
sudo cp /etc/thermald/thermal-conf.xml.auto /etc/thermald/thermal.conf.xml
sudo systemctl enable themarld.service
sudo systemctl start themarld.service

Bluetooth

Install the necessary software:

sudo pacman -S bluez bluez-utils blueman

Add yourself to the lp' group in case you need bluetooth tethering. Connect the external bluetooth device using the GUI blueman-applet'. Sounds from laptop to bluetooth (and inverse) works without any additional configuration.

Autostart bluetooth:

sudo systemctl enable bluetooth.service
---
title: "start if now if you want:"
date:
---
sudo systemctl start bluetooth.service

Autostart blueman applet in the i3 config (or use your own autostart process):

exec --no-startup-id blueman-applet

Bluetooth is disabled by default though and I only activate it on demand via the blueman-applet.

Sound

Sound speaker works out of the box, switching from speaker to jack port works also. Pipewire is really awesome :). Microphone works also out of the box and the kill switch is a nice touch on the framework laptop :).

Switching sound between bluetooth and "local" works also very smoothly and quickly.

Don't care

I didn't even try to use the ambient light sensor. I prefer changing it myself when needed. Could be used with `iio-sensor-proxy' apparently.

Conclusion and next steps

That's it for this post, I still need to manage the hibernation, but hopefully there will be a new post later that fix the missing things :). Next post will be about additional software installation needed to make this laptop a full working workstation :).

=> /gemlog/

=> Send me a gemini mention | send me an email!

Proxy Information
Original URL
gemini://gmi.bacardi55.io/blog/2023/01/17/new-laptop-part1-endeavouros-archlinux-on-framework-laptop
Status Code
Success (20)
Meta
text/gemini; lang=en
Capsule Response Time
379.129002 milliseconds
Gemini-to-HTML Time
1.600198 milliseconds

This content has been proxied by September (3851b).