feat(deck): configure initial NixOS host for Steam Deck

Renames the 'steam' system to 'deck' in flake.nix and sets up the
initial NixOS profile for the Steam Deck. This includes disk
partitioning with disko, a basic hardware configuration, and
enables the Jovian module for Steam Deck specific optimizations.
The previous 'profiles/steam' configuration has been removed.
This commit is contained in:
2026-09-15 21:41:54 -04:00
parent 091e60b3e5
commit cd9b8391ab
6 changed files with 51 additions and 28 deletions
+2 -2
View File
@@ -146,12 +146,12 @@
];
};
steam = nixpkgs.lib.nixosSystem {
deck = nixpkgs.lib.nixosSystem {
system = "x86_64-linux";
specialArgs = {inherit inputs;};
modules = [
./profiles/common
./profiles/steam/configuration.nix
./profiles/deck/configuration.nix
./services
];
};
+29
View File
@@ -0,0 +1,29 @@
{
disko.devices.disk.main = {
type = "disk";
device = "/dev/nvme0n1"; # SSD interne, ou "/dev/mmcblk0" pour un essai sur microSD
content = {
type = "gpt";
partitions = {
ESP = {
type = "EF00";
size = "1G";
content = {
type = "filesystem";
format = "vfat";
mountpoint = "/boot";
mountOptions = ["umask=0077"];
};
};
root = {
size = "100%";
content = {
type = "filesystem";
format = "ext4";
mountpoint = "/";
};
};
};
};
};
}
+1
View File
@@ -0,0 +1 @@
{}
+4 -4
View File
@@ -15,8 +15,7 @@
# # colorschemes.catppuccin.enable = true;
opts = import ./options.nix;
keymaps = import ./keymaps.nix;
clipboard.register = "unnamedplus"; # yank => presse-papier direct
clipboard.register = "unnamedplus"; # yank => presse-papier direct
filetype = {
extension = {
@@ -25,10 +24,11 @@
};
plugins = {
web-devicons.enable = true;
lsp.servers.nil_ls = {
enable = true;
settings."nil".nix.flake = {
autoArchive = false; # ou true pour fetch en silence
autoArchive = false; # ou true pour fetch en silence
# autoEvalInputs = false;
};
};
@@ -69,7 +69,7 @@
enable = true;
settings = {
ui.border = "rounded";
lightbulb.enable = false; # évite le spam si pas de LSP actif
lightbulb.enable = false; # évite le spam si pas de LSP actif
};
};
treesitter = {
+15
View File
@@ -0,0 +1,15 @@
{lib, ...}: {
imports = [
../../hosts/deck/disko.nix
../../hosts/deck/hardware-configuration.nix
../../modules/nixos/jovian
];
jovian.devices.steamdeck.enable = true;
boot.loader.systemd-boot.enable = true;
boot.loader.efi.canTouchEfiVariables = true;
networking.hostName = "deck";
system.stateVersion = lib.mkForce "26.05"; # install neuve
}
-22
View File
@@ -1,22 +0,0 @@
{
lib,
pkgs,
inputs,
...
}: {
imports = [
../../hosts/tower/disko.nix
../../hosts/laptop/hardware-configuration.nix
];
networking.firewall = {
enable = true;
};
specialisation.gamescope.configuration = {
imports = [../../modules/nixos/jovian];
};
networking.hostName = "tower";
sops.defaultSopsFile = lib.mkForce ../../secrets/tower.yml;
}