Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

Add Surface images #48

Open
wants to merge 12 commits into
base: um41
Choose a base branch
from
4 changes: 4 additions & 0 deletions .github/workflows/build-katsu.yml
Original file line number Diff line number Diff line change
Expand Up @@ -135,6 +135,10 @@ jobs:
- gnome/gnome-live
- plasma/plasma-live
- xfce/xfce-live
- ports/surface/flagship-live
- ports/surface/gnome-live
- ports/surface/plasma-live
- ports/surface/xfce-live
runs-on: ${{ matrix.arch == 'x86_64' && 'ubuntu-latest' || 'arm64' }}
container:
image: ghcr.io/terrapkg/builder:f41
Expand Down
10 changes: 10 additions & 0 deletions katsu/modules/base/repodir/linux-surface.repo
Original file line number Diff line number Diff line change
@@ -0,0 +1,10 @@
[linux-surface]
name=Surface Kernel
baseurl=https://pkg.surfacelinux.com/fedora/f40/
nothingneko marked this conversation as resolved.
Show resolved Hide resolved
enabled=1
skip_if_unavailable=1
gpgkey=https://raw.githubusercontent.com/linux-surface/linux-surface/master/pkg/keys/surface.asc
gpgcheck=1
enabled_metadata=1
type=rpm-md
repo_gpgcheck=0
2 changes: 1 addition & 1 deletion katsu/modules/ports/chromebook/mt8183/readme.md
Original file line number Diff line number Diff line change
Expand Up @@ -4,4 +4,4 @@ This is our most complete port. Our reference device is the Lenovo Chromebook Du

## Known Issues

- Krane may loudly beep if the speakers are active within 15 seconds of sleep.
- Devices may loudly beep if the speakers are active within 15 seconds of sleep.
21 changes: 21 additions & 0 deletions katsu/modules/ports/surface/README.MD
Original file line number Diff line number Diff line change
@@ -0,0 +1,21 @@
# Microsoft Surfaces

These are not a new edition, they are simply Ultramarine with the Surface kernel preinstalled.

Special thanks to the Linux Surface team.

## Known Issues

These are issues that the community has experienced personally in Ultramarine, there may be more issues covered in the [Linux Surface Wiki](https://github.com/linux-surface/linux-surface/wiki)

### Surface Laptop Go

- Intel Panel Self Refresh PSR causes screen tearing on Surface Laptop Go
To solve this, simply add `i915.enable_psr=0` to your kernel commandline.
- Touchpad may stop responding after resuming from suspend
You will have to reload the touchpad driver, see instructions on doing this after resume [here](https://github.com/linux-surface/linux-surface/wiki/Surface-Laptop-Go).

### Surface Pro 3

- Type cover causes the system to randomly suspend in GNOME Edition
- Thermal management is less effective under Linux
31 changes: 31 additions & 0 deletions katsu/modules/ports/surface/flagship-live.yaml
Original file line number Diff line number Diff line change
@@ -0,0 +1,31 @@
builder: dnf

import:
- ../../../base/base.yaml
- ../../../live/live.yaml
- ../../flagship/flagship.yaml
- surface.yaml

distro: Ultramarine Linux 41 (Flagship Edition)

out_file: ultramarine-flagship-41-surface.iso

bootloader: grub

kernel_cmdline: "quiet rhgb"

iso:
volume_id: UM-Flagship-Live

scripts:
post:
- id: flagship-live
name: Set up Flagship Live
file: ../../flagship/./flagship-live.sh
- id: surface.sh
name: Enable Surface Watchdog
file: ./surface.sh

dnf:
releasever: 41
exec: dnf4
31 changes: 31 additions & 0 deletions katsu/modules/ports/surface/gnome-live.yaml
Original file line number Diff line number Diff line change
@@ -0,0 +1,31 @@
builder: dnf

import:
- ../../base/base.yaml
- ../../live/live.yaml
- ../../gnome/gnome.yaml
- surface.yaml

distro: Ultramarine GNOME 41

out_file: ultramarine-gnome-41-surface.iso

bootloader: grub

kernel_cmdline: "quiet rhgb"

iso:
volume_id: UM-Gn-Live

scripts:
post:
- id: gnome-live
name: Set up GNOME Live
file: ../../gnome/./gnome-live.sh
- id: surface.sh
name: Enable Surface Watchdog
file: ./surface.sh

dnf:
releasever: 41
exec: dnf4
31 changes: 31 additions & 0 deletions katsu/modules/ports/surface/plasma-live.yaml
Original file line number Diff line number Diff line change
@@ -0,0 +1,31 @@
builder: dnf

import:
- ../../base/base.yaml
- ../../live/live.yaml
- ../../plasma/plasma.yaml
- surface.yaml

distro: Ultramarine Linux 41 (Plasma Edition)

out_file: ultramarine-plasma-41-surface.iso

scripts:
post:
- id: plasma-live
name: Set up Plasma Live
file: ../../plasma/./plasma-live.sh
- id: surface.sh
name: Enable Surface Watchdog
file: ./surface.sh

bootloader: grub

kernel_cmdline: "quiet rhgb"

iso:
volume_id: UM-Kd-Live

dnf:
releasever: 41
exec: dnf4
4 changes: 4 additions & 0 deletions katsu/modules/ports/surface/surface.sh
Original file line number Diff line number Diff line change
@@ -0,0 +1,4 @@
#!/bin/bash -x

# enable the surface kernel watchdog to force grub to highlight it regardless of which entry it is
sudo systemctl enable linux-surface-default-watchdog.path
12 changes: 12 additions & 0 deletions katsu/modules/ports/surface/surface.yaml
Original file line number Diff line number Diff line change
@@ -0,0 +1,12 @@
builder: dnf

dnf:
releasever: 41
exec: dnf4
packages:
- kernel-surface
- iptsd
- libwacom-surface
- kernel-surface-devel
nothingneko marked this conversation as resolved.
Show resolved Hide resolved
- ultramarine-release-surface
- surface-dtx-daemon
31 changes: 31 additions & 0 deletions katsu/modules/ports/surface/xfce-live.yaml
Original file line number Diff line number Diff line change
@@ -0,0 +1,31 @@
builder: dnf

import:
- ../../base/base.yaml
- ../../live/live.yaml
- ../../xfce/xfce.yaml
- surface.yaml

distro: Ultramarine Linux 41 (Xfce Edition)

out_file: ultramarine-xfce-41-surface.iso

bootloader: grub

kernel_cmdline: "quiet rhgb"

iso:
volume_id: UM-Xfce-Live

scripts:
post:
- id: xfce-live
name: Set up XFCE Live
file: ../../xfce/./xfce-live.sh
- id: surface.sh
name: Enable Surface Watchdog
file: ./surface.sh

dnf:
releasever: 41
exec: dnf4
Loading