GithubHelp home page GithubHelp logo

dhn / qubes-thinkpad-x1-extreme-gen3 Goto Github PK

View Code? Open in Web Editor NEW
3.0 4.0 1.0 334.77 MB

Files and notes to install/run Qubes 4.1 on a ThinkPad X1 Extreme Gen3

qubes-os thinkpad-x1-extreme install-guide notes

qubes-thinkpad-x1-extreme-gen3's Introduction

Qubes 4.1 on a ThinkPad X1 Extreme Gen 3

This is my personal repository with files and notes which helps to install/run Qubes 4.1 on a ThinkPad X1 Extreme Gen3

General settings

  • Disable Secure Boot
  • Build Qubes 4.1 via qubes-builder or download Qubes 4.1 alpha ISO

Note: Qube 4.1 alpha comes with kernel 5.4.x

Update to Kernel 5.9.14-1

  1. Copy rpm files to dom0:
qvm-run -p ${VM} 'cat /home/user/kernel-latest-5.9.14-1.qubes.x86_64.rpm' > kernel-latest-5.9.14-1.qubes.x86_64.rpm
  1. Install kernel RPM package:
dnf install kernel-latest-5.9.14-1.qubes.x86_64.rpm
  1. Reboot and load the new kernel

Fix iwlwifi load for AX200 device

Based on issue #5615

  1. Install kernel-latest-qubes-vm >= 5.8.11-3:
dnf install kernel-latest-qubes-vm-5.9.14-1.qubes.x86_64.rpm
  1. Shutdown sys-net:
qvm-shutdown sys-net
  1. Change Qube settings for sys-net to use the new installed kernel
qvm-prefs --set sys-net kernel "5.9.14-1"
  1. Add iwlwifi.disable_rxq=1 to kernel options for sys-net:
opt=$(qvm-prefs --get sys-net kernelopts)
qvm-prefs --set sys-net kernelopts "$opt iwlwifi.disable_rxq=1"
  1. Start sys-net with the new kernel options
qvm-start sys-net

Install NVIDIA driver

Based on issue #2526:

  1. Install necessary tools:
qubes-dom0-update gcc kmod grub2-tools perl-bignum make
  1. Install kernel-devel from RPM file;
dnf install kernel-latest-devel-5.9.14-1.qubes.x86_64.rpm
  1. Download the latest nvidia driver from https://www.nvidia.com/en-us/geforce/drivers/ (In my case "NVIDIA-Linux-x86_64-455.45.01.run)
  2. Copy the downloaded driver to dom0
qvm-run -p ${VM} 'cat /home/user/Downloads/NVIDIA-Linux-x86_64-455.45.01.run' > NVIDIA-Linux-x86_64-455.45.01.run
chmod +x NVIDIA-Linux-x86_64-455.45.01.run
  1. Extract driver sources
./NVIDIA-Linux-x86_64-455.45.01.run --ui=none --no-x-check --keep --extract-only 
  1. Build nvidia.ko kernel driver
cd NVIDIA-*/kernel/; make module IGNORE_XEN_PRESENCE=y CC="gcc -DNV_VMAP_4_PRESENT -DNV_SIGNAL_STRUCT_RLIM"
  1. Copy compiled driver to /lib/modules/$(uname -r)/extra
sudo cp nvidia.ko /lib/modules/$(uname -r)/extra/
  1. Load the driver and check
sudo depmod -a; modinfo nvidia
  1. Edit grub2 entry add rd.driver.blacklist=nouveau to the end of GRUB_CMDLINE_LINUX
sudo vim /etc/sysconfig/grub
  1. Update grub.cfg for UEFI
grub2-mkconfig -o /boot/efi/EFI/qubes/grub.cfg
  1. Disable nouveau driver; add to blacklist
echo "blacklist nouveau" >> /etc/modprobe.d/blacklist.conf
  1. Reboot the system and enjoy the nvidia driver

Fix sound issues

Based on https://bugzilla.opensuse.org/show_bug.cgi?id=1176351

  1. Edit grub2 entry add snd_hda_intel.dmic_detect=0 to the end of GRUB_CMDLINE_LINUX
sudo vim /etc/sysconfig/grub
  1. Update grub.cfg for UEFI
grub2-mkconfig -o /boot/efi/EFI/qubes/grub.cfg

qubes-thinkpad-x1-extreme-gen3's People

Contributors

dhn avatar

Stargazers

 avatar  avatar  avatar

Watchers

 avatar  avatar  avatar  avatar

Forkers

marcus-arcadius

qubes-thinkpad-x1-extreme-gen3's Issues

Kernel source packages

How do I get the new kernel source packages? Iā€™m trying this on kernel 5.15ā€¦

Recommend Projects

  • React photo React

    A declarative, efficient, and flexible JavaScript library for building user interfaces.

  • Vue.js photo Vue.js

    šŸ–– Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.

  • Typescript photo Typescript

    TypeScript is a superset of JavaScript that compiles to clean JavaScript output.

  • TensorFlow photo TensorFlow

    An Open Source Machine Learning Framework for Everyone

  • Django photo Django

    The Web framework for perfectionists with deadlines.

  • D3 photo D3

    Bring data to life with SVG, Canvas and HTML. šŸ“ŠšŸ“ˆšŸŽ‰

Recommend Topics

  • javascript

    JavaScript (JS) is a lightweight interpreted programming language with first-class functions.

  • web

    Some thing interesting about web. New door for the world.

  • server

    A server is a program made to process requests and deliver data to clients.

  • Machine learning

    Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.

  • Game

    Some thing interesting about game, make everyone happy.

Recommend Org

  • Facebook photo Facebook

    We are working to build community through open source technology. NB: members must have two-factor auth.

  • Microsoft photo Microsoft

    Open source projects and samples from Microsoft.

  • Google photo Google

    Google ā¤ļø Open Source for everyone.

  • D3 photo D3

    Data-Driven Documents codes.