updates for steam deck

This commit is contained in:
Tyler Starr 2023-08-30 20:26:55 -07:00
parent 1d26018a1c
commit 20b8f92bb8
3 changed files with 63 additions and 59 deletions

View File

@ -17,7 +17,7 @@
nixpkgs.overlays = import ../../lib/overlays.nix; nixpkgs.overlays = import ../../lib/overlays.nix;
# Use zen kernel # Use zen kernel
boot.kernelPackages = pkgs.linuxPackages_zen; # boot.kernelPackages = pkgs.linuxPackages_zen;
# Hardware options # Hardware options
hardware.bluetooth.enable = true; hardware.bluetooth.enable = true;
@ -77,6 +77,8 @@
unzip unzip
nnn nnn
advcpmv advcpmv
neovim
ungoogled-chromium
]; ];
# Enable user services # Enable user services

View File

@ -5,26 +5,26 @@
{ {
imports = imports =
[ (modulesPath + "/profiles/qemu-guest.nix") [ (modulesPath + "/installer/scan/not-detected.nix")
]; ];
boot.initrd.availableKernelModules = [ "ahci" "xhci_pci" "virtio_pci" "sr_mod" "virtio_blk" ]; boot.initrd.availableKernelModules = [ "nvme" "xhci_pci" "usbhid" "usb_storage" "sd_mod" "sdhci_pci" ];
boot.initrd.kernelModules = [ ]; boot.initrd.kernelModules = [ ];
boot.kernelModules = [ "kvm-amd" ]; boot.kernelModules = [ "kvm-amd" ];
boot.extraModulePackages = [ ]; boot.extraModulePackages = [ ];
fileSystems."/" = fileSystems."/" =
{ device = "/dev/disk/by-uuid/1fddaaed-6ad9-4e7f-b613-3059e2cb019b"; { device = "/dev/disk/by-uuid/ff26006b-37a0-4cfe-901b-6c1fb4d2cbbb";
fsType = "ext4"; fsType = "ext4";
}; };
fileSystems."/boot" = fileSystems."/boot" =
{ device = "/dev/disk/by-uuid/AA59-9D24"; { device = "/dev/disk/by-uuid/80B1-3DF9";
fsType = "vfat"; fsType = "vfat";
}; };
swapDevices = swapDevices =
[ { device = "/dev/disk/by-uuid/a7cd6a07-c564-4056-a1b5-69a71effd237"; } [ { device = "/dev/disk/by-uuid/b11acbe6-69f7-4a03-a79e-c17a5563ed17"; }
]; ];
# Enables DHCP on each ethernet and wireless interface. In case of scripted networking # Enables DHCP on each ethernet and wireless interface. In case of scripted networking
@ -32,7 +32,9 @@
# still possible to use this option, but it's recommended to use it in conjunction # still possible to use this option, but it's recommended to use it in conjunction
# with explicit per-interface declarations with `networking.interfaces.<interface>.useDHCP`. # with explicit per-interface declarations with `networking.interfaces.<interface>.useDHCP`.
networking.useDHCP = lib.mkDefault true; networking.useDHCP = lib.mkDefault true;
# networking.interfaces.enp1s0.useDHCP = lib.mkDefault true; # networking.interfaces.enp4s0f3u1u3.useDHCP = lib.mkDefault true;
# networking.interfaces.wlo1.useDHCP = lib.mkDefault true;
nixpkgs.hostPlatform = lib.mkDefault "x86_64-linux"; nixpkgs.hostPlatform = lib.mkDefault "x86_64-linux";
hardware.cpu.amd.updateMicrocode = lib.mkDefault config.hardware.enableRedistributableFirmware;
} }

View File

@ -12,80 +12,80 @@ in {
jovian = { jovian = {
steam.desktopSession = "gnome-xorg";
steam.enable = true; steam.enable = true;
steam.autoStart = true; steam.autoStart = true;
steam.user = "${user}"; steam.user = "${user}";
devices.steamdeck = { devices.steamdeck = {
enable = false; enable = true;
}; };
}; };
services.xserver.displayManager.gdm.wayland = lib.mkForce true; # lib.mkForce is only required on my setup because I'm using some other NixOS configs that conflict with this value #services.xserver.displayManager.gdm.wayland = lib.mkForce true; # lib.mkForce is only required on my setup because I'm using some other NixOS configs that conflict with this value
services.xserver.displayManager.defaultSession = "steam-wayland"; #services.xserver.displayManager.defaultSession = "steam-wayland";
services.xserver.displayManager.autoLogin.enable = true; #services.xserver.displayManager.autoLogin.enable = true;
services.xserver.displayManager.autoLogin.user = "${user}"; #services.xserver.displayManager.autoLogin.user = "${user}";
services.xserver.enable = true;
services.xserver.displayManager.gdm.enable = false;
services.xserver.desktopManager.gnome.enable = true;
# Enable GNOME # Enable GNOME
sound.enable = true; sound.enable = true;
hardware.pulseaudio.enable = lib.mkForce false; hardware.pulseaudio.enable = lib.mkForce false;
services.xserver.desktopManager.gnome = {
enable = true;
};
# Create user # Create user
users.users.${user} = { users.users.${user} = {
isNormalUser = true; isNormalUser = true;
}; };
systemd.services.gamescope-switcher = { #systemd.services.gamescope-switcher = {
wantedBy = [ "graphical.target" ]; # wantedBy = [ "graphical.target" ];
serviceConfig = { # serviceConfig = {
User = 1000; # User = 1000;
PAMName = "login"; # PAMName = "login";
WorkingDirectory = "~"; # WorkingDirectory = "~";
TTYPath = "/dev/tty7"; # TTYPath = "/dev/tty7";
TTYReset = "yes"; # TTYReset = "yes";
TTYVHangup = "yes"; # TTYVHangup = "yes";
TTYVTDisallocate = "yes"; # TTYVTDisallocate = "yes";
StandardInput = "tty-fail"; # StandardInput = "tty-fail";
StandardOutput = "journal"; # StandardOutput = "journal";
StandardError = "journal"; # StandardError = "journal";
UtmpIdentifier = "tty7"; # UtmpIdentifier = "tty7";
UtmpMode = "user"; # UtmpMode = "user";
Restart = "always"; # Restart = "always";
}; # };
script = '' # script = ''
set-session () { # set-session () {
mkdir -p ~/.local/state # mkdir -p ~/.local/state
>~/.local/state/steamos-session-select echo "$1" # >~/.local/state/steamos-session-select echo "$1"
} # }
consume-session () { # consume-session () {
if [[ -e ~/.local/state/steamos-session-select ]]; then # if [[ -e ~/.local/state/steamos-session-select ]]; then
cat ~/.local/state/steamos-session-select # cat ~/.local/state/steamos-session-select
rm ~/.local/state/steamos-session-select # rm ~/.local/state/steamos-session-select
else58 closure # else58 closure
echo "gamescope" # echo "gamescope"
fi # fi
} # }
while :; do # while :; do
session=$(consume-session) # session=$(consume-session)
case "$session" in # case "$session" in
plasma) # plasma)
dbus-run-session -- gnome-shell --display-server --wayland # dbus-run-session -- gnome-shell --display-server --wayland
;; # ;;
gamescope) # gamescope)
steam-session # steam-session
;; # ;;
esac # esac
done # done
''; # '';
}; #};
environment.systemPackages = with pkgs; [ environment.systemPackages = with pkgs; [
gnome.gnome-terminal gnome.gnome-terminal