Files
Pierre Kisters 5e7d631e50 Add install.sh and a Home Manager flake template
install.sh installs Nix (nix-installer, steam-deck planner, flakes
enabled) and activates a Home Manager configuration, creating one from
the new flake template if there is none; uninstall stops Home Manager's
user services, runs home-manager uninstall and removes Nix and per-user
leftovers; status shows the current state. Works piped from curl.
2026-09-27 15:36:37 +02:00

35 lines
1.0 KiB
Nix

{
description = "Home Manager configuration for SteamOS (Steam Frame / Steam Deck)";
inputs = {
nixpkgs.url = "github:NixOS/nixpkgs/nixos-unstable";
home-manager = {
url = "github:nix-community/home-manager";
inputs.nixpkgs.follows = "nixpkgs";
};
# Steam Frame fixes (steamFrame.* options).
steam-frame-nix = {
url = "github:lhns/steam-frame-nix";
inputs.nixpkgs.follows = "nixpkgs";
};
};
outputs = { nixpkgs, home-manager, steam-frame-nix, ... }:
let
# Filled in by install.sh; the defaults match the Steam Frame.
username = "steamos";
homeDirectory = "/home/steamos";
# Steam Frame: "aarch64-linux". Steam Deck: "x86_64-linux".
system = "aarch64-linux";
in {
homeConfigurations.${username} = home-manager.lib.homeManagerConfiguration {
pkgs = nixpkgs.legacyPackages.${system};
extraSpecialArgs = { inherit username homeDirectory; };
modules = [
steam-frame-nix.homeManagerModules.default
./home.nix
];
};
};
}