feat(steamdeck): prepare config for eventual install
All checks were successful
Discord / discord commits (push) Has been skipped
All checks were successful
Discord / discord commits (push) Has been skipped
This commit is contained in:
parent
724ced18f1
commit
2ceaaeff76
5 changed files with 137 additions and 9 deletions
|
@ -5,13 +5,14 @@ This directory encompasses every device's main configuration file.
|
|||
## List of my Devices
|
||||
|
||||
| Name | Description |
|
||||
| ---------- | ------------------------------------------------------------------------------------------------------- |
|
||||
| ----------- | ------------------------------------------------------------------------------------------------------- |
|
||||
| `android` | My [Nix-On-Droid](https://github.com/nix-community/nix-on-droid) configuration for my OnePlus 9 Pro |
|
||||
| `bbsteamie` | My wife's SteamDeck that has a pink case |
|
||||
| `binto` | My desktop PC with a multi-monitor setup and an NVIDIA (cringe) 3070 |
|
||||
| `cluster` | Two Lenovo mini PCs that make use of [NixOS-pcsd](https://github.com/matt1432/nixos-pcsd) to form a cluster |
|
||||
| `nos` | My custom built NAS |
|
||||
| `oksys` | A very old Acer laptop that went from sailing the seas for years to becoming my web server and VPN host. It is now retired indefinitely. |
|
||||
| `servivi` | A gaming PC in a previous life, it is now used to experiment and do heavier stuff |
|
||||
| `servivi` | A gaming PC in a previous life, it is now used as a build farm and hosts game servers |
|
||||
| `wim` | My 2-1 Lenovo Laptop that I use for uni |
|
||||
|
||||
## Global Vars
|
||||
|
|
47
devices/bbsteamie/default.nix
Normal file
47
devices/bbsteamie/default.nix
Normal file
|
@ -0,0 +1,47 @@
|
|||
{
|
||||
config,
|
||||
jovian,
|
||||
...
|
||||
}: let
|
||||
inherit (config.vars) mainUser hostName;
|
||||
in {
|
||||
imports = [
|
||||
jovian.nixosModules.default
|
||||
|
||||
./hardware-configuration.nix
|
||||
|
||||
./modules/desktop.nix
|
||||
];
|
||||
|
||||
vars = {
|
||||
mainUser = "mariah";
|
||||
hostName = "bbsteamie";
|
||||
promptMainColor = "pink";
|
||||
};
|
||||
|
||||
users.users.${mainUser} = {
|
||||
isNormalUser = true;
|
||||
extraGroups = [
|
||||
"wheel"
|
||||
"adm"
|
||||
];
|
||||
};
|
||||
|
||||
networking = {
|
||||
inherit hostName;
|
||||
networkmanager.enable = true;
|
||||
};
|
||||
|
||||
home-manager.users.${mainUser} = {
|
||||
imports = [];
|
||||
|
||||
# No touchy
|
||||
home.stateVersion = "24.11";
|
||||
};
|
||||
|
||||
# Set your time zone.
|
||||
time.timeZone = "America/Montreal";
|
||||
|
||||
# No touchy
|
||||
system.stateVersion = "24.11";
|
||||
}
|
40
devices/bbsteamie/hardware-configuration.nix
Normal file
40
devices/bbsteamie/hardware-configuration.nix
Normal file
|
@ -0,0 +1,40 @@
|
|||
{modulesPath, ...}: {
|
||||
nixpkgs.hostPlatform = "x86_64-linux";
|
||||
imports = [(modulesPath + "/installer/scan/not-detected.nix")];
|
||||
|
||||
jovian = {
|
||||
steamos.useSteamOSConfig = true;
|
||||
|
||||
devices.steamdeck = {
|
||||
enable = true;
|
||||
enableGyroDsuService = true;
|
||||
};
|
||||
hardware.has.amd.gpu = true;
|
||||
};
|
||||
|
||||
boot.loader = {
|
||||
efi.canTouchEfiVariables = true;
|
||||
|
||||
systemd-boot = {
|
||||
enable = true;
|
||||
configurationLimit = 30;
|
||||
};
|
||||
};
|
||||
|
||||
virtualisation.waydroid.enable = true;
|
||||
|
||||
# TODO: add auto-generated stuff
|
||||
|
||||
# Placeholder
|
||||
fileSystems = {
|
||||
"/" = {
|
||||
device = "/dev/disk/by-uuid/6ae4d722-dacf-485a-8d29-b276f540dc91";
|
||||
fsType = "btrfs";
|
||||
};
|
||||
|
||||
"/boot" = {
|
||||
device = "/dev/disk/by-label/NIXBOOT";
|
||||
fsType = "vfat";
|
||||
};
|
||||
};
|
||||
}
|
38
devices/bbsteamie/modules/desktop.nix
Normal file
38
devices/bbsteamie/modules/desktop.nix
Normal file
|
@ -0,0 +1,38 @@
|
|||
{config, ...}: let
|
||||
inherit (config.vars) mainUser;
|
||||
in {
|
||||
# Auto-login to plasma
|
||||
services = {
|
||||
desktopManager.plasma6.enable = true;
|
||||
|
||||
displayManager = {
|
||||
autoLogin = {
|
||||
enable = true;
|
||||
user = mainUser;
|
||||
};
|
||||
|
||||
defaultSession = "plasmawayland";
|
||||
};
|
||||
};
|
||||
|
||||
programs = {
|
||||
xwayland.enable = true;
|
||||
kdeconnect.enable = true;
|
||||
};
|
||||
|
||||
# Enable flatpak support
|
||||
services.flatpak.enable = true;
|
||||
services.packagekit.enable = true;
|
||||
|
||||
jovian.steam = {
|
||||
enable = true;
|
||||
user = mainUser;
|
||||
|
||||
desktopSession = config.services.displayManager.defaultSession;
|
||||
};
|
||||
|
||||
jovian.decky-loader = {
|
||||
enable = true;
|
||||
user = mainUser;
|
||||
};
|
||||
}
|
|
@ -68,6 +68,8 @@
|
|||
];
|
||||
binto = mkNixOS [./devices/binto];
|
||||
|
||||
bbsteamie = mkNixOS [./devices/bbsteamie];
|
||||
|
||||
# NAS
|
||||
nos = mkNixOS [
|
||||
./devices/nos
|
||||
|
|
Loading…
Reference in a new issue