1
0
Fork 0
forked from Bun/nixos-config

Begin testing remote builds

This commit is contained in:
Bun 2025-06-09 15:34:04 -04:00
parent 1a4e5103b2
commit 7aa39a1110
7 changed files with 109 additions and 68 deletions

View file

@ -12,9 +12,10 @@
system = {
nixos.tags = [ "pc" ];
steamdeck.enable = true;
stateVersion = "24.11";
};
deployment.targetHost = "5ce:969c:40d1:9575:f5e:591d:c377:a20b";
jovian.steam.enable = true;
}

View file

@ -1,16 +1,15 @@
{ config, lib, pkgs, jovian, ... }:
{
imports = [ jovian.nixosModules.default ];
imports = [
./gnome
jovian.nixosModules.default
];
options.system.steamdeck.enable = lib.mkEnableOption "Jovian NixOS environment";
config = lib.mkIf config.system.steamdeck.enable {
config = lib.mkIf config.jovian.steam.enable {
jovian = {
steam = {
enable = true;
autoStart = true;
desktopSession = "gnome";
user = config.sysusers.main;
user = config.vars.mainUser;
};
decky-loader = {
enable = true;
@ -30,7 +29,6 @@
programs.steam.extest.enable = true;
services = {
desktopManager.gnome.enable = true;
keyd.enable = lib.mkForce false;
tlp.enable = lib.mkForce false;
};
@ -42,51 +40,10 @@
wireless.enable = lib.mkForce false;
};
environment = {
persistence."/persist".directories = [
environment.persistence."/persist".directories = [
"/etc/NetworkManager/system-connections"
"/var/lib/decky-loader"
];
gnome.excludePackages = with pkgs; [
adwaita-icon-theme
baobab
epiphany
evince
file-roller
geary
gnome-calculator
gnome-calendar
gnome-characters
gnome-clocks
gnome-color-manager
gnome-connections
gnome-console
gnome-contacts
gnome-disk-utility
gnome-font-viewer
gnome-logs
gnome-maps
gnome-music
gnome-remote-desktop
gnome-shell-extensions
gnome-software
gnome-system-monitor
gnome-text-editor
gnome-tour
gnome-user-docs
gnome-weather
loupe
nautilus
orca
seahorse
simple-scan
snapshot
sushi
sysprof
totem
yelp
];
};
nixpkgs.allowUnfreePackages = [
"steam"
@ -96,6 +53,6 @@
"xow_dongle-firmware"
];
specialisation.desktop.configuration.config.system.steamdeck.enable = lib.mkForce false;
specialisation.desktop.configuration.config.jovian.steam.enable = lib.mkForce false;
};
}

View file

@ -0,0 +1,48 @@
{ config, lib, pkgs, ... }:
{
config = lib.mkIf config.jovian.steam.enable {
jovian.steam.desktopSession = "gnome";
services.desktopManager.gnome.enable = true;
environment.gnome.excludePackages = with pkgs; [
adwaita-icon-theme
baobab
epiphany
evince
file-roller
geary
gnome-calculator
gnome-calendar
gnome-characters
gnome-clocks
gnome-color-manager
gnome-connections
gnome-console
gnome-contacts
gnome-disk-utility
gnome-font-viewer
gnome-logs
gnome-maps
gnome-music
gnome-remote-desktop
gnome-shell-extensions
gnome-software
gnome-system-monitor
gnome-text-editor
gnome-tour
gnome-user-docs
gnome-weather
loupe
nautilus
orca
seahorse
simple-scan
snapshot
sushi
sysprof
totem
yelp
];
};
}

View file

@ -1,6 +1,6 @@
{ config, lib, ... }:
{
config = lib.mkIf (!config.system.steamdeck.enable) {
config = lib.mkIf (!config.jovian.steam.enable) {
networking.useNetworkd = lib.mkForce false;
services.globalprotect.enable = true;

View file

@ -1,7 +1,9 @@
{ config, lib, ... }:
{
config = lib.mkIf (lib.elem "nvidia" config.services.xserver.videoDrivers) {
boot.kernelParams = [ "nvidia_drm.fbdev=1" ]; # Framebuffer fixes TTY access
boot.kernelParams = [
"nouveau.config=NvGspRm=1" # Use high power mode for Nouveau
"nvidia_drm.fbdev=1" # Fix framebuffer
];
hardware.nvidia = {
modesetting.enable = true;
@ -11,8 +13,7 @@
nixpkgs.allowUnfreePackages = [ "nvidia-x11" ];
specialisation.nouveau.configuration.config.services.xserver.videoDrivers = lib.mkForce [ "nouveau" ];
} // {
boot.kernelParams = [ "nouveau.config=NvGspRm=1" ];
specialisation = lib.mkIf (lib.elem "nvidia" config.services.xserver.videoDrivers) {
nouveau.configuration.config.services.xserver.videoDrivers = lib.mkForce [ "nouveau" ];
};
}

View file

@ -2,6 +2,7 @@
{
imports = [
./channels
./distributed
./gc
./unfree
];
@ -17,6 +18,6 @@
};
};
# Use nixos-rebuild-ng
# Use a newer implementation of nixos-rebuild
system.rebuild.enableNg = true;
}

View file

@ -0,0 +1,33 @@
{ nodes, ... }:
{
nix = {
settings = {
max-jobs = 0;
trusted-users = [ "root" ];
};
distributedBuilds = true;
buildMachines = with nodes; [
{
hostName = midas.config.deployment.targetHost;
system = midas.config.nixpkgs.localSystem.system;
}
{
hostName = kitty.config.deployment.targetHost;
system = kitty.config.nixpkgs.localSystem.system;
}
{
hostName = prophet.config.deployment.targetHost;
system = prophet.config.nixpkgs.localSystem.system;
}
{
hostName = detritus.config.deployment.targetHost;
system = detritus.config.nixpkgs.localSystem.system;
}
{
hostName = elder.config.deployment.targetHost;
system = elder.config.nixpkgs.localSystem.system;
}
];
};
}