Compare commits

..

2 Commits

6 changed files with 126 additions and 38 deletions

View File

@@ -14,13 +14,20 @@
../../profiles/core.nix
../../profiles/nixos.nix
../../profiles/openssh.nix
../../profiles/remote-desktop.nix
../../profiles/tailscale.nix
../../profiles/wayland-headless.nix
inputs.sops-nix.nixosModules.sops
];
networking.hostName = hostname;
home-manager.users.${user} = {
home.packages = with pkgs; [
ghostty
google-chrome
];
imports = [
../../profiles/atuin.nix
../../profiles/bash.nix
@@ -30,12 +37,14 @@
../../profiles/fish.nix
../../profiles/fzf.nix
../../profiles/git.nix
../../profiles/ghostty.nix
../../profiles/home.nix
../../profiles/jjui.nix
../../profiles/jujutsu.nix
../../profiles/lazygit.nix
../../profiles/lumen.nix
../../profiles/mise.nix
../../profiles/niri.nix
../../profiles/nono.nix
../../profiles/neovim
../../profiles/opencode.nix

View File

@@ -4,6 +4,7 @@
casks = [
"ghostty@tip"
"helium-browser"
"moonlight"
"tidal"
];
};

18
profiles/niri.nix Normal file
View File

@@ -0,0 +1,18 @@
{...}: {
xdg.configFile."niri/config.kdl".text = ''
input {
keyboard {
xkb {
layout "us"
}
}
}
binds {
Mod+Return { spawn "ghostty"; }
Mod+B { spawn "firefox"; }
Mod+Shift+Q { close-window; }
Mod+Shift+E { quit; }
}
'';
}

View File

@@ -0,0 +1,21 @@
{...}: {
services.sunshine = {
enable = true;
openFirewall = false;
capSysAdmin = true;
};
networking.firewall.interfaces.tailscale0 = {
allowedTCPPorts = [
47984
47989
47990
];
allowedUDPPorts = [
47998
47999
48000
48002
];
};
}

View File

@@ -0,0 +1,39 @@
{
pkgs,
user,
...
}: {
services.seatd.enable = true;
services.pipewire = {
enable = true;
wireplumber.enable = true;
};
xdg.portal = {
enable = true;
extraPortals = with pkgs; [
xdg-desktop-portal-wlr
xdg-desktop-portal-gtk
];
};
programs.niri.enable = true;
users.users.${user}.linger = true;
systemd.user.services.niri-headless = {
description = "Niri headless session";
environment = {
WLR_BACKENDS = "headless";
WLR_HEADLESS_OUTPUTS = "1";
WAYLAND_DISPLAY = "wayland-1";
};
serviceConfig = {
ExecStart = "${pkgs.niri}/bin/niri --session";
Restart = "always";
RestartSec = 2;
};
wantedBy = ["default.target"];
};
}