cleanups and move steamdeck to desktop module
This commit is contained in:
@@ -106,7 +106,6 @@
|
||||
|
||||
security = {
|
||||
sudo.execWheelOnly = true;
|
||||
rtkit.enable = true;
|
||||
pki.certificateFiles = [
|
||||
./rootCA.pem
|
||||
];
|
||||
|
||||
@@ -1,60 +0,0 @@
|
||||
#
|
||||
# Desktop/laptop configuration. Imports configuration_common.nix for shared settings.
|
||||
# Host-specific window manager and hardware configs are imported per-host.
|
||||
#
|
||||
|
||||
{ config, lib, pkgs, inputs, user, location, agenix, ... }:
|
||||
|
||||
{
|
||||
imports = [
|
||||
./configuration_common.nix
|
||||
];
|
||||
|
||||
users.users.${user} = {
|
||||
isNormalUser = true;
|
||||
uid = 2000;
|
||||
extraGroups = [ "wheel" "video" "audio" "camera" "networkmanager" "lp" "kvm" "libvirtd" "adb" "dialout" "tss" ];
|
||||
};
|
||||
|
||||
security.pam.services.login.enableGnomeKeyring = true;
|
||||
|
||||
environment.systemPackages = with pkgs; [
|
||||
file
|
||||
powertop
|
||||
cpufrequtils
|
||||
lm_sensors
|
||||
libva-utils
|
||||
at-spi2-core
|
||||
qmk-udev-rules
|
||||
gptfdisk
|
||||
age-plugin-yubikey
|
||||
pwgen
|
||||
sbctl
|
||||
ausweisapp
|
||||
e2fsprogs
|
||||
orca-slicer
|
||||
]);
|
||||
|
||||
nixpkgs.config.permittedInsecurePackages = [
|
||||
"mbedtls-2.28.10"
|
||||
];
|
||||
|
||||
services = {
|
||||
pipewire = {
|
||||
enable = true;
|
||||
alsa.enable = true;
|
||||
pulse.enable = true;
|
||||
wireplumber.enable = true;
|
||||
};
|
||||
pcscd.enable = true;
|
||||
yubikey-agent.enable = true;
|
||||
udev.packages = [ pkgs.yubikey-personalization pkgs.nitrokey-udev-rules ];
|
||||
flatpak.enable = true;
|
||||
gvfs.enable = true;
|
||||
fwupd.enable = true;
|
||||
};
|
||||
|
||||
programs.dconf.enable = true;
|
||||
|
||||
system.autoUpgrade.enable = false;
|
||||
}
|
||||
@@ -86,13 +86,13 @@ in
|
||||
|
||||
steamdeck = nixpkgs-unstable.lib.nixosSystem { # steamdeck profile
|
||||
inherit system;
|
||||
specialArgs = { inherit inputs pkgs user location nixos-hardware agenix jovian-nixos lanzaboote; };
|
||||
specialArgs = { inherit inputs user location nixos-hardware agenix jovian-nixos lanzaboote; };
|
||||
modules = [
|
||||
agenix.nixosModules.default
|
||||
jovian-nixos.nixosModules.default
|
||||
lanzaboote.nixosModules.lanzaboote
|
||||
./steamdeck
|
||||
./configuration_desktop.nix
|
||||
./configuration_common.nix
|
||||
] ++ (mkHM home-manager-unstable [ ./home.nix ./steamdeck/home.nix ]);
|
||||
};
|
||||
|
||||
|
||||
@@ -1,80 +1,50 @@
|
||||
#
|
||||
# Specific system configuration settings for desktop
|
||||
#
|
||||
# flake.nix
|
||||
# ├─ ./hosts
|
||||
# │ └─ ./laptop
|
||||
# │ ├─ default.nix *
|
||||
# │ └─ hardware-configuration.nix
|
||||
# └─ ./modules
|
||||
# ├─ ./desktop
|
||||
# │ └─ ./hyprland
|
||||
# │ └─ hyprland.nix
|
||||
# ├─ ./modules
|
||||
# │ └─ ./programs
|
||||
# │ └─ waybar.nix
|
||||
# └─ ./hardware
|
||||
# └─ default.nix
|
||||
# Steamdeck — system configuration
|
||||
#
|
||||
|
||||
{ config, pkgs, user, jovian-nixos, lib, ... }:
|
||||
{ lib, pkgs, user, jovian-nixos, ... }:
|
||||
|
||||
{
|
||||
imports = [
|
||||
./hardware-configuration.nix
|
||||
../../modules/desktop
|
||||
../../modules/wm/steam
|
||||
];
|
||||
|
||||
# ── Desktop module options ──────────────────────────────────────────────
|
||||
myDesktop.windowManager = "kde";
|
||||
myDesktop.cpu = "amd";
|
||||
myDesktop.virtualisation.enable = true;
|
||||
myDesktop.nitrokey.enable = true;
|
||||
|
||||
specialisation = {
|
||||
sway.configuration = {
|
||||
imports =
|
||||
[(import ../../modules/wm/sway)];
|
||||
|
||||
jovian.steam.enable = lib.mkForce false;
|
||||
services.desktopManager.plasma6.enable = lib.mkForce false;
|
||||
};
|
||||
sway.configuration = {
|
||||
imports = [ (import ../../modules/wm/sway) ];
|
||||
jovian.steam.enable = lib.mkForce false;
|
||||
services.desktopManager.plasma6.enable = lib.mkForce false;
|
||||
};
|
||||
};
|
||||
|
||||
imports = # For now, if applying to other system, swap files
|
||||
[(import ./hardware-configuration.nix)] ++ # Current system hardware config @ /etc/nixos/hardware-configuration.nix
|
||||
(import ../../modules/wm/virtualisation) ++ # libvirt + Docker
|
||||
[(import ../../modules/wm/virtualisation/kvm-amd.nix)] ++ # kvm module options
|
||||
[(import ../../modules/wm/steam)] ++
|
||||
[(import ../../modules/wm/kde)] ++
|
||||
(import ../../modules/hardware); # Hardware devices
|
||||
|
||||
boot = { # Boot options
|
||||
loader = { # EFI Boot
|
||||
systemd-boot.enable = lib.mkForce false;
|
||||
efi = {
|
||||
canTouchEfiVariables = true;
|
||||
efiSysMountPoint = "/boot";
|
||||
};
|
||||
timeout = 1; # Grub auto select time
|
||||
# ── Host-specific settings ──────────────────────────────────────────────
|
||||
boot = {
|
||||
loader = {
|
||||
systemd-boot.enable = lib.mkForce false;
|
||||
efi.canTouchEfiVariables = true;
|
||||
efi.efiSysMountPoint = "/boot";
|
||||
timeout = 1;
|
||||
};
|
||||
|
||||
lanzaboote = {
|
||||
enable = true;
|
||||
pkiBundle = "/etc/secureboot";
|
||||
enable = true;
|
||||
pkiBundle = "/etc/secureboot";
|
||||
};
|
||||
};
|
||||
|
||||
hardware = {
|
||||
nitrokey.enable = true;
|
||||
services.printing = {
|
||||
enable = true;
|
||||
drivers = [ pkgs.gutenprint ];
|
||||
};
|
||||
|
||||
services = {
|
||||
# blueman.enable = true;
|
||||
printing = { # Printing and drivers for TS5300
|
||||
enable = true;
|
||||
drivers = [ pkgs.gutenprint ];
|
||||
};
|
||||
avahi = { # Needed to find wireless printer
|
||||
enable = true;
|
||||
nssmdns4 = true;
|
||||
publish = { # Needed for detecting the scanner
|
||||
enable = true;
|
||||
addresses = true;
|
||||
userServices = true;
|
||||
};
|
||||
};
|
||||
tailscale.enable = true;
|
||||
services.tailscale.enable = true;
|
||||
|
||||
};
|
||||
security.pam.sshAgentAuth.enable = true;
|
||||
}
|
||||
|
||||
@@ -1,52 +1,30 @@
|
||||
#
|
||||
# Home-manager configuration for laptop
|
||||
#
|
||||
# flake.nix
|
||||
# ├─ ./hosts
|
||||
# │ └─ ./laptop
|
||||
# │ └─ home.nix *
|
||||
# └─ ./modules
|
||||
# └─ ./desktop
|
||||
# └─ ./hyprland
|
||||
# └─ hyprland.nix
|
||||
# Home-manager configuration for steamdeck
|
||||
#
|
||||
|
||||
{ pkgs, ... }:
|
||||
|
||||
{
|
||||
specialisation = {
|
||||
sway.configuration = {
|
||||
imports =
|
||||
[(import ../../modules/wm/sway/home.nix)];
|
||||
};
|
||||
sway.configuration = {
|
||||
imports = [ (import ../../modules/wm/sway/home.nix) ];
|
||||
};
|
||||
};
|
||||
|
||||
imports =
|
||||
[(import ../../modules/home.nix)] ++ # Window Manager
|
||||
[(import ../../modules/wm/steam/home.nix)] ++
|
||||
[(import ../../modules/wm/kde/home.nix)];
|
||||
[ (import ../../modules/home.nix) ] ++
|
||||
[ (import ../../modules/wm/steam/home.nix) ];
|
||||
|
||||
home = { # Specific packages for laptop
|
||||
home = {
|
||||
packages = with pkgs; [
|
||||
# Applications
|
||||
libreoffice # Office packages
|
||||
#firefox
|
||||
libreoffice
|
||||
chromium
|
||||
thunderbird
|
||||
streamlink
|
||||
streamlink-twitch-gui-bin
|
||||
pulsemixer
|
||||
#yuzu-early-access
|
||||
|
||||
# Power Management
|
||||
#auto-cpufreq # Power management
|
||||
#tlp # Power management
|
||||
];
|
||||
};
|
||||
|
||||
services = { # Applets
|
||||
};
|
||||
|
||||
xsession.preferStatusNotifierItems = true;
|
||||
|
||||
}
|
||||
|
||||
Reference in New Issue
Block a user