steam and syncthing fixes for desktop
This commit is contained in:
parent
8a70027a84
commit
466d7107eb
@ -1,4 +1,11 @@
|
|||||||
{ config, lib, inputs, pkgs, timeZone, ... }:
|
{
|
||||||
|
config,
|
||||||
|
lib,
|
||||||
|
inputs,
|
||||||
|
pkgs,
|
||||||
|
timeZone,
|
||||||
|
...
|
||||||
|
}:
|
||||||
let
|
let
|
||||||
deskCfg = config.deskCfg;
|
deskCfg = config.deskCfg;
|
||||||
unstable = import inputs.nixpkgs-unstable {
|
unstable = import inputs.nixpkgs-unstable {
|
||||||
@ -74,7 +81,14 @@ in
|
|||||||
services.clamav.scanner.enable = true;
|
services.clamav.scanner.enable = true;
|
||||||
|
|
||||||
# Extra groups
|
# Extra groups
|
||||||
main_user.extraGroups = [ "dialout" "docker" "i2c" "lp" "scanner" "syncthing" ];
|
main_user.extraGroups = [
|
||||||
|
"dialout"
|
||||||
|
"docker"
|
||||||
|
"i2c"
|
||||||
|
"lp"
|
||||||
|
"scanner"
|
||||||
|
"syncthing"
|
||||||
|
];
|
||||||
|
|
||||||
# Sway WM (legacy, disabled)
|
# Sway WM (legacy, disabled)
|
||||||
swaywm = {
|
swaywm = {
|
||||||
@ -156,7 +170,9 @@ in
|
|||||||
];
|
];
|
||||||
|
|
||||||
# NFS support in initrd
|
# NFS support in initrd
|
||||||
boot.initrd.supportedFilesystems = { nfs = true; };
|
boot.initrd.supportedFilesystems = {
|
||||||
|
nfs = true;
|
||||||
|
};
|
||||||
|
|
||||||
# Libvirtd / QEMU
|
# Libvirtd / QEMU
|
||||||
virtualisation = {
|
virtualisation = {
|
||||||
|
|||||||
@ -8,7 +8,6 @@ spawn-at-startup "flatpak" "run" "org.signal.Signal"
|
|||||||
spawn-at-startup "flatpak" "run" "com.slack.Slack"
|
spawn-at-startup "flatpak" "run" "com.slack.Slack"
|
||||||
spawn-at-startup "firefox"
|
spawn-at-startup "firefox"
|
||||||
// shell startup
|
// shell startup
|
||||||
spawn-sh-at-startup "kanshi"
|
|
||||||
spawn-sh-at-startup "sleep 5 && syncthingtray --wait"
|
spawn-sh-at-startup "sleep 5 && syncthingtray --wait"
|
||||||
|
|
||||||
// screenshot-path null // save screenshots just to clipboard
|
// screenshot-path null // save screenshots just to clipboard
|
||||||
|
|||||||
BIN
hosts/nate/bot-wallpaper.jpg
Normal file
BIN
hosts/nate/bot-wallpaper.jpg
Normal file
Binary file not shown.
|
After Width: | Height: | Size: 4.1 MiB |
@ -1,4 +1,11 @@
|
|||||||
{ config, lib, inputs, pkgs, timeZone, ... }:
|
{
|
||||||
|
config,
|
||||||
|
lib,
|
||||||
|
inputs,
|
||||||
|
pkgs,
|
||||||
|
timeZone,
|
||||||
|
...
|
||||||
|
}:
|
||||||
let
|
let
|
||||||
deskCfg = config.deskCfg;
|
deskCfg = config.deskCfg;
|
||||||
in
|
in
|
||||||
@ -28,12 +35,15 @@ in
|
|||||||
};
|
};
|
||||||
|
|
||||||
# Stylix — derive color scheme from wallpaper
|
# Stylix — derive color scheme from wallpaper
|
||||||
stylix.image = ./wallpaper.png;
|
stylix = {
|
||||||
stylix.fonts.sizes = {
|
image = ./bot-wallpaper.jpg;
|
||||||
applications = 12;
|
base16Scheme = "${pkgs.base16-schemes}/share/themes/kimber.yaml";
|
||||||
desktop = 10;
|
fonts.sizes = {
|
||||||
popups = 10;
|
applications = 14;
|
||||||
terminal = 11;
|
desktop = 16;
|
||||||
|
popups = 14;
|
||||||
|
terminal = 14;
|
||||||
|
};
|
||||||
};
|
};
|
||||||
|
|
||||||
# Limit the number of generations to keep
|
# Limit the number of generations to keep
|
||||||
@ -65,14 +75,21 @@ in
|
|||||||
nix.settings.auto-optimise-store = true;
|
nix.settings.auto-optimise-store = true;
|
||||||
|
|
||||||
# Extra groups
|
# Extra groups
|
||||||
main_user.extraGroups = [ "dialout" "docker" "scanner" "lp" ];
|
main_user.extraGroups = [
|
||||||
|
"dialout"
|
||||||
|
"docker"
|
||||||
|
"i2c"
|
||||||
|
"lp"
|
||||||
|
"scanner"
|
||||||
|
"syncthing"
|
||||||
|
];
|
||||||
|
|
||||||
# Sway WM (legacy, kept for fallback)
|
# Sway WM (legacy, kept for fallback)
|
||||||
swaywm = {
|
swaywm = {
|
||||||
enable = deskCfg.de == "sway";
|
enable = deskCfg.de == "sway";
|
||||||
useNonFree = true;
|
useNonFree = true;
|
||||||
installGaming = deskCfg.installGaming;
|
installGaming = deskCfg.installGaming;
|
||||||
systemPackages = [];
|
systemPackages = [ ];
|
||||||
};
|
};
|
||||||
|
|
||||||
# Niri WM config
|
# Niri WM config
|
||||||
@ -80,7 +97,8 @@ in
|
|||||||
enable = deskCfg.de == "niri";
|
enable = deskCfg.de == "niri";
|
||||||
useNonFree = true;
|
useNonFree = true;
|
||||||
user = deskCfg.userName;
|
user = deskCfg.userName;
|
||||||
systemPackages = [];
|
installGaming = deskCfg.installGaming;
|
||||||
|
systemPackages = [ ];
|
||||||
};
|
};
|
||||||
|
|
||||||
# Steam with remote play + gamescope
|
# Steam with remote play + gamescope
|
||||||
@ -112,7 +130,10 @@ in
|
|||||||
# Firewall — allow dev server ports
|
# Firewall — allow dev server ports
|
||||||
networking.firewall = {
|
networking.firewall = {
|
||||||
enable = true;
|
enable = true;
|
||||||
allowedTCPPorts = [ 8080 8081 ];
|
allowedTCPPorts = [
|
||||||
|
8080
|
||||||
|
8081
|
||||||
|
];
|
||||||
};
|
};
|
||||||
|
|
||||||
# Bluetooth
|
# Bluetooth
|
||||||
|
|||||||
@ -75,7 +75,7 @@ input {
|
|||||||
|
|
||||||
disable-power-key-handling
|
disable-power-key-handling
|
||||||
warp-mouse-to-focus mode="center-xy"
|
warp-mouse-to-focus mode="center-xy"
|
||||||
focus-follows-mouse
|
// focus-follows-mouse
|
||||||
}
|
}
|
||||||
|
|
||||||
//
|
//
|
||||||
@ -93,9 +93,11 @@ layout {
|
|||||||
}
|
}
|
||||||
|
|
||||||
preset-column-widths {
|
preset-column-widths {
|
||||||
|
proportion 0.25
|
||||||
proportion 0.33333
|
proportion 0.33333
|
||||||
proportion 0.5
|
proportion 0.5
|
||||||
proportion 0.66667
|
proportion 0.66667
|
||||||
|
proportion 0.75
|
||||||
}
|
}
|
||||||
|
|
||||||
default-column-width {
|
default-column-width {
|
||||||
@ -329,23 +331,19 @@ binds {
|
|||||||
Mod+Shift+Page_Down { move-workspace-down; }
|
Mod+Shift+Page_Down { move-workspace-down; }
|
||||||
Mod+Shift+Page_Up { move-workspace-up; }
|
Mod+Shift+Page_Up { move-workspace-up; }
|
||||||
|
|
||||||
Mod+Minus { focus-workspace "scratch"; }
|
|
||||||
Mod+1 { focus-workspace "term"; }
|
Mod+1 { focus-workspace "term"; }
|
||||||
Mod+2 { focus-workspace "net"; }
|
Mod+2 { focus-workspace "net"; }
|
||||||
Mod+3 { focus-workspace "chat"; }
|
Mod+3 { focus-workspace "chat"; }
|
||||||
// Mod+3 { focus-workspace 3; }
|
Mod+4 { focus-workspace "scratch"; }
|
||||||
// Mod+4 { focus-workspace 4; }
|
|
||||||
Mod+5 { focus-workspace 5; }
|
Mod+5 { focus-workspace 5; }
|
||||||
Mod+6 { focus-workspace 6; }
|
Mod+6 { focus-workspace 6; }
|
||||||
Mod+7 { focus-workspace 7; }
|
Mod+7 { focus-workspace 7; }
|
||||||
Mod+8 { focus-workspace 8; }
|
Mod+8 { focus-workspace 8; }
|
||||||
Mod+9 { focus-workspace 9; }
|
Mod+9 { focus-workspace 9; }
|
||||||
Mod+Shift+Minus { move-column-to-workspace "scratch"; }
|
|
||||||
Mod+Shift+1 { move-column-to-workspace "term"; }
|
Mod+Shift+1 { move-column-to-workspace "term"; }
|
||||||
Mod+Shift+2 { move-column-to-workspace "net"; }
|
Mod+Shift+2 { move-column-to-workspace "net"; }
|
||||||
Mod+Shift+3 { move-column-to-workspace "chat"; }
|
Mod+Shift+3 { move-column-to-workspace "chat"; }
|
||||||
// Mod+Shift+3 { move-column-to-workspace 3; }
|
Mod+Shift+4 { move-column-to-workspace "scratch"; }
|
||||||
// Mod+Shift+4 { move-column-to-workspace 4; }
|
|
||||||
Mod+Shift+5 { move-column-to-workspace 5; }
|
Mod+Shift+5 { move-column-to-workspace 5; }
|
||||||
Mod+Shift+6 { move-column-to-workspace 6; }
|
Mod+Shift+6 { move-column-to-workspace 6; }
|
||||||
Mod+Shift+7 { move-column-to-workspace 7; }
|
Mod+Shift+7 { move-column-to-workspace 7; }
|
||||||
|
|||||||
Binary file not shown.
|
Before Width: | Height: | Size: 68 KiB |
@ -29,7 +29,18 @@ in
|
|||||||
package = inputs.noctalia.packages.${pkgs.stdenv.hostPlatform.system}.default.override {
|
package = inputs.noctalia.packages.${pkgs.stdenv.hostPlatform.system}.default.override {
|
||||||
calendarSupport = true;
|
calendarSupport = true;
|
||||||
};
|
};
|
||||||
settings = cfg.settings;
|
# Defaults merged with per-host settings; per-host wins on conflict.
|
||||||
|
settings = lib.recursiveUpdate {
|
||||||
|
# Detach launched apps into a new session so they don't inherit
|
||||||
|
# noctalia's controlling tty / process group. Fixes Steam silently
|
||||||
|
# failing to launch via the launcher on NixOS while staying light
|
||||||
|
# enough not to interfere with Proton/pressure-vessel child processes
|
||||||
|
# (unlike `systemd-run --user --scope`, which broke Overwatch).
|
||||||
|
appLauncher = {
|
||||||
|
customLaunchPrefixEnabled = true;
|
||||||
|
customLaunchPrefix = "setsid --fork";
|
||||||
|
};
|
||||||
|
} cfg.settings;
|
||||||
};
|
};
|
||||||
|
|
||||||
# Disable conflicting services that Noctalia replaces
|
# Disable conflicting services that Noctalia replaces
|
||||||
|
|||||||
Loading…
Reference in New Issue
Block a user