mirror of
https://github.com/alyraffauf/nixcfg.git
synced 2024-12-22 06:32:55 -05:00
tree-wide: drop pacifidlog
This commit is contained in:
parent
f41645eaca
commit
f1ec685d11
16
.github/workflows/nix-build.yml
vendored
16
.github/workflows/nix-build.yml
vendored
|
@ -125,22 +125,6 @@ jobs:
|
||||||
authToken: '${{ secrets.CACHIX_AUTH_TOKEN }}'
|
authToken: '${{ secrets.CACHIX_AUTH_TOKEN }}'
|
||||||
- name: Build mauville
|
- name: Build mauville
|
||||||
run: nix build --accept-flake-config .#nixosConfigurations.mauville.config.system.build.toplevel
|
run: nix build --accept-flake-config .#nixosConfigurations.mauville.config.system.build.toplevel
|
||||||
pacifidlog-build:
|
|
||||||
runs-on: ubuntu-latest
|
|
||||||
steps:
|
|
||||||
- name: Free Disk Space (Ubuntu)
|
|
||||||
uses: jlumbroso/free-disk-space@main
|
|
||||||
- uses: actions/checkout@main
|
|
||||||
with:
|
|
||||||
fetch-depth: 1
|
|
||||||
- uses: DeterminateSystems/nix-installer-action@main
|
|
||||||
- uses: DeterminateSystems/magic-nix-cache-action@main
|
|
||||||
- uses: cachix/cachix-action@master
|
|
||||||
with:
|
|
||||||
name: alyraffauf
|
|
||||||
authToken: '${{ secrets.CACHIX_AUTH_TOKEN }}'
|
|
||||||
- name: Build pacifidlog
|
|
||||||
run: nix build --accept-flake-config .#nixosConfigurations.pacifidlog.config.system.build.toplevel
|
|
||||||
petalburg-build:
|
petalburg-build:
|
||||||
runs-on: ubuntu-latest
|
runs-on: ubuntu-latest
|
||||||
steps:
|
steps:
|
||||||
|
|
|
@ -99,7 +99,6 @@
|
||||||
"fallarbor"
|
"fallarbor"
|
||||||
"lavaridge"
|
"lavaridge"
|
||||||
"mauville"
|
"mauville"
|
||||||
"pacifidlog"
|
|
||||||
"petalburg"
|
"petalburg"
|
||||||
"rustboro"
|
"rustboro"
|
||||||
"slateport"
|
"slateport"
|
||||||
|
@ -161,7 +160,6 @@
|
||||||
hw-asus-tuf-a16-amd-7030 = import ./hwModules/asus/tuf/a16/amd-7030/default.nix;
|
hw-asus-tuf-a16-amd-7030 = import ./hwModules/asus/tuf/a16/amd-7030/default.nix;
|
||||||
hw-framework-13-amd-7000 = import ./hwModules/framework/13/amd-7000;
|
hw-framework-13-amd-7000 = import ./hwModules/framework/13/amd-7000;
|
||||||
hw-framework-13-intel-11th = import ./hwModules/framework/13/intel-11th;
|
hw-framework-13-intel-11th = import ./hwModules/framework/13/intel-11th;
|
||||||
hw-lenovo-legion-go = import ./hwModules/lenovo/legion/go;
|
|
||||||
hw-thinkpad-t440p = import ./hwModules/thinkpad/t440p;
|
hw-thinkpad-t440p = import ./hwModules/thinkpad/t440p;
|
||||||
|
|
||||||
nixos = import ./nixosModules self;
|
nixos = import ./nixosModules self;
|
||||||
|
|
|
@ -1,57 +0,0 @@
|
||||||
# pacifidlog
|
|
||||||
|
|
||||||
## Overview
|
|
||||||
|
|
||||||
Lenovo Legion Go with AMD Z1 Extreme. Gaming beast. Uses Jovian for Steam Deck-like interface.
|
|
||||||
|
|
||||||
## Todo
|
|
||||||
|
|
||||||
- \[x\] update hdd-ui and adjustor.
|
|
||||||
- \[ \] upgrade to large SSD.
|
|
||||||
|
|
||||||
## Specs
|
|
||||||
|
|
||||||
| Model | Legion Go |
|
|
||||||
|---------|---------------------------|
|
|
||||||
| Display | 8.8" 1600x2560 144Hz |
|
|
||||||
| CPU | AMD Z1 Extreme |
|
|
||||||
| RAM | 16GB LPDDR5 (soldered) |
|
|
||||||
| GPU | AMD Z1 Extreme |
|
|
||||||
| Disks | 512GB M.2 2242 NVMe |
|
|
||||||
|
|
||||||
## Filesystems
|
|
||||||
|
|
||||||
### /
|
|
||||||
|
|
||||||
Encrypted LUKS btrfs volume.
|
|
||||||
|
|
||||||
## Display
|
|
||||||
|
|
||||||
Vertical-turned-horizontal 1600x2560 display running at 144Hz. Scales perfectly to 2x.
|
|
||||||
|
|
||||||
## Steam / Jovian Docs
|
|
||||||
|
|
||||||
Jovian delivers a Steam Deck-like interface on top of NixOS, with some limitations. This includes performance optimizations, patched versions of Mesa, and other tweaks to be as consistent with the Steam Deck as possible.
|
|
||||||
|
|
||||||
### Features
|
|
||||||
|
|
||||||
#### What works
|
|
||||||
|
|
||||||
- Basic performance settings (frame limits, refresh rates, etc).
|
|
||||||
- Desktop mode with KDE.
|
|
||||||
- Installing GOG and EGS games with Heroic.
|
|
||||||
- Launching and playing games, natively and with Proton.
|
|
||||||
- Plugins and themes with Decky Loader.
|
|
||||||
|
|
||||||
#### What does not work
|
|
||||||
|
|
||||||
- Adaptive Brightness.
|
|
||||||
- EmuDeck.
|
|
||||||
- Formatting microSD cards.
|
|
||||||
- Night light.
|
|
||||||
- System updates.
|
|
||||||
- TDP control and Legion Go specific features (all work with Handheld Daemon).
|
|
||||||
|
|
||||||
### Decky Loader
|
|
||||||
|
|
||||||
Decky loader can be installed and configured through the Jovian modules, but needs CEF Remote Debugging enabled via Deveroper Options for the frontend UI to load.
|
|
|
@ -1,138 +0,0 @@
|
||||||
# Lenovo Legion Go
|
|
||||||
{
|
|
||||||
config,
|
|
||||||
pkgs,
|
|
||||||
lib,
|
|
||||||
self,
|
|
||||||
...
|
|
||||||
}: {
|
|
||||||
imports = [
|
|
||||||
./home.nix
|
|
||||||
./secrets.nix
|
|
||||||
./stylix.nix
|
|
||||||
(import ./../../disko/luks-btrfs-subvolumes.nix {disks = ["/dev/nvme0n1"];})
|
|
||||||
self.inputs.jovian.nixosModules.default
|
|
||||||
self.inputs.nix-gaming.nixosModules.pipewireLowLatency
|
|
||||||
self.inputs.nix-gaming.nixosModules.platformOptimizations
|
|
||||||
self.nixosModules.common-base
|
|
||||||
self.nixosModules.common-locale
|
|
||||||
self.nixosModules.common-mauville-share
|
|
||||||
self.nixosModules.common-nix
|
|
||||||
self.nixosModules.common-pkgs
|
|
||||||
self.nixosModules.common-tailscale
|
|
||||||
self.nixosModules.common-wifi-profiles
|
|
||||||
self.nixosModules.hw-lenovo-legion-go
|
|
||||||
];
|
|
||||||
|
|
||||||
boot = {
|
|
||||||
initrd.systemd.enable = true;
|
|
||||||
|
|
||||||
lanzaboote = {
|
|
||||||
enable = true;
|
|
||||||
pkiBundle = "/etc/secureboot";
|
|
||||||
};
|
|
||||||
|
|
||||||
loader = {
|
|
||||||
efi.canTouchEfiVariables = true;
|
|
||||||
|
|
||||||
systemd-boot = {
|
|
||||||
enable = lib.mkForce false;
|
|
||||||
consoleMode = "1";
|
|
||||||
};
|
|
||||||
};
|
|
||||||
};
|
|
||||||
|
|
||||||
environment = {
|
|
||||||
systemPackages = with pkgs; [
|
|
||||||
heroic
|
|
||||||
hhd-ui
|
|
||||||
lutris
|
|
||||||
];
|
|
||||||
|
|
||||||
variables.GDK_SCALE = "2";
|
|
||||||
};
|
|
||||||
|
|
||||||
hardware.pulseaudio.enable = lib.mkForce false;
|
|
||||||
|
|
||||||
jovian = {
|
|
||||||
decky-loader = {
|
|
||||||
enable = true;
|
|
||||||
user = "aly";
|
|
||||||
};
|
|
||||||
|
|
||||||
hardware.has.amd.gpu = true;
|
|
||||||
|
|
||||||
steam = {
|
|
||||||
enable = true;
|
|
||||||
autoStart = true;
|
|
||||||
desktopSession = "plasma";
|
|
||||||
|
|
||||||
environment = {
|
|
||||||
STEAM_EXTRA_COMPAT_TOOLS_PATHS = lib.makeSearchPathOutput "steamcompattool" "" config.programs.steam.extraCompatPackages;
|
|
||||||
STEAM_GAMESCOPE_COLOR_MANAGED = "0";
|
|
||||||
};
|
|
||||||
|
|
||||||
user = "aly";
|
|
||||||
};
|
|
||||||
|
|
||||||
steamos = {
|
|
||||||
enableAutoMountUdevRules = true;
|
|
||||||
enableBluetoothConfig = true;
|
|
||||||
enableDefaultCmdlineConfig = true;
|
|
||||||
enableProductSerialAccess = true;
|
|
||||||
enableVendorRadv = true;
|
|
||||||
useSteamOSConfig = false;
|
|
||||||
};
|
|
||||||
};
|
|
||||||
|
|
||||||
networking.hostName = "pacifidlog";
|
|
||||||
nixpkgs.overlays = [self.overlays.tablet];
|
|
||||||
programs.steam.platformOptimizations.enable = true;
|
|
||||||
|
|
||||||
services = {
|
|
||||||
handheld-daemon = {
|
|
||||||
enable = true;
|
|
||||||
|
|
||||||
package = with pkgs;
|
|
||||||
handheld-daemon.overrideAttrs (oldAttrs: {
|
|
||||||
propagatedBuildInputs =
|
|
||||||
oldAttrs.propagatedBuildInputs
|
|
||||||
++ [pkgs.adjustor];
|
|
||||||
});
|
|
||||||
|
|
||||||
user = "aly";
|
|
||||||
};
|
|
||||||
|
|
||||||
pipewire.lowLatency = {
|
|
||||||
enable = true;
|
|
||||||
quantum = 256;
|
|
||||||
rate = 48000;
|
|
||||||
};
|
|
||||||
};
|
|
||||||
|
|
||||||
system.stateVersion = "24.11";
|
|
||||||
systemd.services.handheld-daemon.path = with pkgs; [hhd-ui lsof];
|
|
||||||
|
|
||||||
ar = {
|
|
||||||
apps = {
|
|
||||||
firefox.enable = true;
|
|
||||||
steam.enable = true;
|
|
||||||
};
|
|
||||||
|
|
||||||
desktop.kde.enable = true;
|
|
||||||
laptopMode = true;
|
|
||||||
services.flatpak.enable = true;
|
|
||||||
|
|
||||||
users.aly = {
|
|
||||||
enable = true;
|
|
||||||
password = "$y$j9T$CXjk5Z9e2PXbSsWh5CK.81$I9Hm/Oa4KcYMqPi8KMBfsEv5NzoXCgaCK5xhyGeikH7";
|
|
||||||
|
|
||||||
syncthing = {
|
|
||||||
enable = true;
|
|
||||||
certFile = config.age.secrets.syncthingCert.path;
|
|
||||||
keyFile = config.age.secrets.syncthingKey.path;
|
|
||||||
syncMusic = false;
|
|
||||||
};
|
|
||||||
};
|
|
||||||
};
|
|
||||||
}
|
|
|
@ -1,27 +0,0 @@
|
||||||
{self, ...}: {
|
|
||||||
home-manager = {
|
|
||||||
sharedModules = [
|
|
||||||
{
|
|
||||||
wayland.windowManager = {
|
|
||||||
hyprland.settings = {
|
|
||||||
input = {
|
|
||||||
touchdevice = {
|
|
||||||
transform = 1;
|
|
||||||
output = "eDP-1";
|
|
||||||
};
|
|
||||||
};
|
|
||||||
};
|
|
||||||
};
|
|
||||||
|
|
||||||
ar.home = {
|
|
||||||
desktop.hyprland = {
|
|
||||||
laptopMonitors = ["desc:Lenovo Group Limited Go Display 0x00888888, 1600x2560@144, 0x0, 2, transform, 1"];
|
|
||||||
tabletMode.enable = true;
|
|
||||||
};
|
|
||||||
};
|
|
||||||
}
|
|
||||||
];
|
|
||||||
|
|
||||||
users.aly = self.homeManagerModules.aly;
|
|
||||||
};
|
|
||||||
}
|
|
|
@ -1,6 +0,0 @@
|
||||||
{
|
|
||||||
age.secrets = {
|
|
||||||
syncthingCert.file = ../../secrets/aly/syncthing/pacifidlog/cert.age;
|
|
||||||
syncthingKey.file = ../../secrets/aly/syncthing/pacifidlog/key.age;
|
|
||||||
};
|
|
||||||
}
|
|
|
@ -1,50 +0,0 @@
|
||||||
{
|
|
||||||
pkgs,
|
|
||||||
self,
|
|
||||||
...
|
|
||||||
}: {
|
|
||||||
stylix = {
|
|
||||||
enable = true;
|
|
||||||
base16Scheme = "${pkgs.base16-schemes}/share/themes/default-dark.yaml";
|
|
||||||
image = "${self.inputs.wallpapers}/Legion_Go_Meteorite_Wallpaper.jpg";
|
|
||||||
imageScalingMode = "fill";
|
|
||||||
polarity = "dark";
|
|
||||||
|
|
||||||
cursor = {
|
|
||||||
name = "Adwaita";
|
|
||||||
package = pkgs.adwaita-icon-theme;
|
|
||||||
size = 24;
|
|
||||||
};
|
|
||||||
|
|
||||||
fonts = {
|
|
||||||
monospace = {
|
|
||||||
name = "CaskaydiaCove Nerd Font";
|
|
||||||
package = pkgs.nerd-fonts.caskaydia-cove;
|
|
||||||
};
|
|
||||||
|
|
||||||
sansSerif = {
|
|
||||||
name = "UbuntuSans Nerd Font";
|
|
||||||
package = pkgs.nerd-fonts.ubuntu-sans;
|
|
||||||
};
|
|
||||||
|
|
||||||
serif = {
|
|
||||||
name = "Source Serif Pro";
|
|
||||||
package = pkgs.source-serif-pro;
|
|
||||||
};
|
|
||||||
|
|
||||||
sizes = {
|
|
||||||
applications = 12;
|
|
||||||
desktop = 11;
|
|
||||||
popups = 12;
|
|
||||||
terminal = 13;
|
|
||||||
};
|
|
||||||
};
|
|
||||||
|
|
||||||
opacity = {
|
|
||||||
applications = 1.0;
|
|
||||||
desktop = 0.8;
|
|
||||||
terminal = 0.8;
|
|
||||||
popups = 0.8;
|
|
||||||
};
|
|
||||||
};
|
|
||||||
}
|
|
|
@ -1,114 +0,0 @@
|
||||||
{
|
|
||||||
config,
|
|
||||||
lib,
|
|
||||||
pkgs,
|
|
||||||
self,
|
|
||||||
...
|
|
||||||
}: let
|
|
||||||
legion-go-tricks = pkgs.fetchFromGitHub {
|
|
||||||
owner = "aarron-lee";
|
|
||||||
repo = "legion-go-tricks";
|
|
||||||
rev = "773f4dfa217989213ab2678d63a84dc306e8f8d4";
|
|
||||||
sha256 = "sha256-d5TB4kvNR7bwF5VyO1hxe8n9/PubtzWlBgvSmpUgDQc=";
|
|
||||||
};
|
|
||||||
|
|
||||||
convolverPath = "${legion-go-tricks}/experimental_sound_fix/multiwayCor48.wav";
|
|
||||||
in {
|
|
||||||
imports = [
|
|
||||||
self.nixosModules.hw-common
|
|
||||||
self.nixosModules.hw-common-amd-cpu
|
|
||||||
self.nixosModules.hw-common-amd-gpu
|
|
||||||
self.nixosModules.hw-common-bluetooth
|
|
||||||
self.nixosModules.hw-common-gaming
|
|
||||||
self.nixosModules.hw-common-ssd
|
|
||||||
];
|
|
||||||
|
|
||||||
boot = {
|
|
||||||
initrd.availableKernelModules = [
|
|
||||||
"nvme"
|
|
||||||
"rtsx_pci_sdmmc"
|
|
||||||
"sd_mod"
|
|
||||||
"sdhci_pci"
|
|
||||||
"thunderbolt"
|
|
||||||
"usb_storage"
|
|
||||||
"usbhid"
|
|
||||||
"xhci_pci"
|
|
||||||
];
|
|
||||||
|
|
||||||
extraModulePackages = with config.boot.kernelPackages; [acpi_call];
|
|
||||||
|
|
||||||
# Xanmod seems more responsive under load
|
|
||||||
kernelPackages = lib.mkDefault pkgs.linuxPackages_xanmod_latest;
|
|
||||||
};
|
|
||||||
|
|
||||||
hardware.sensor.iio.enable = true;
|
|
||||||
|
|
||||||
services = {
|
|
||||||
logind.killUserProcesses = true;
|
|
||||||
|
|
||||||
pipewire.wireplumber.configPackages = [
|
|
||||||
(pkgs.writeTextDir "share/pipewire/pipewire.conf.d/10-legion-go-convolver.conf" ''
|
|
||||||
# Convolver Configuration for Pipewire
|
|
||||||
#
|
|
||||||
# This configuration applies separate left and right convolver effects using the corresponding impulse response files
|
|
||||||
# to the entire system audio output.
|
|
||||||
|
|
||||||
context.modules = [
|
|
||||||
{ name = libpipewire-module-filter-chain
|
|
||||||
args = {
|
|
||||||
node.description = "Legion Go"
|
|
||||||
media.name = "Legion Go"
|
|
||||||
filter.graph = {
|
|
||||||
nodes = [
|
|
||||||
{
|
|
||||||
type = builtin
|
|
||||||
label = convolver
|
|
||||||
name = convFL
|
|
||||||
config = {
|
|
||||||
filename = "${convolverPath}"
|
|
||||||
channel = 0
|
|
||||||
}
|
|
||||||
}
|
|
||||||
{
|
|
||||||
type = builtin
|
|
||||||
label = convolver
|
|
||||||
name = convFR
|
|
||||||
config = {
|
|
||||||
filename = "${convolverPath}"
|
|
||||||
channel = 1
|
|
||||||
}
|
|
||||||
}
|
|
||||||
]
|
|
||||||
inputs = [ "convFL:In" "convFR:In" ]
|
|
||||||
outputs = [ "convFL:Out" "convFR:Out" ]
|
|
||||||
}
|
|
||||||
capture.props = {
|
|
||||||
node.name = "Legion Go"
|
|
||||||
node.autoconnect = true
|
|
||||||
media.class = "Audio/Sink"
|
|
||||||
priority.driver = 1000
|
|
||||||
priority.session = 2000
|
|
||||||
audio.channels = 2
|
|
||||||
audio.position = [ FL FR ]
|
|
||||||
}
|
|
||||||
playback.props = {
|
|
||||||
node.name = "Legion Go corrected"
|
|
||||||
node.passive = true
|
|
||||||
audio.channels = 2
|
|
||||||
audio.position = [ FL FR ]
|
|
||||||
node.target = "alsa_output.pci-0000_c2_00.6.analog-stereo"
|
|
||||||
}
|
|
||||||
}
|
|
||||||
}
|
|
||||||
]
|
|
||||||
'')
|
|
||||||
];
|
|
||||||
|
|
||||||
udev.extraRules = ''
|
|
||||||
# Lenovo Legion Go Controller
|
|
||||||
ACTION=="add", ATTRS{idVendor}=="17ef", ATTRS{idProduct}=="6182", RUN+="${pkgs.kmod}/bin/modprobe xpad" RUN+="/bin/sh -c 'echo 17ef 6182 > /sys/bus/usb/drivers/xpad/new_id'"
|
|
||||||
'';
|
|
||||||
|
|
||||||
upower.enable = true;
|
|
||||||
};
|
|
||||||
}
|
|
Loading…
Reference in a new issue