System/machines/levitation/home.nix

111 lines
2.6 KiB
Nix

{ config, lib, pkgs, inputs, ... }: {
nathan = {
services = { email = { enable = true; }; };
config = { isDesktop = true; };
programs = {
util = {
wine = true;
git = {
gpgSign = false;
sshSign = true;
};
};
games = { launcher = true; };
media.nicotineService = true;
};
};
home.packages = with pkgs; [ gammastep fido2luks ];
# Sway outputs
wayland.windowManager.sway.config = {
output = {
DP-1 = {
scale = "1.4";
subpixel = "rgb";
max_render_time = "6";
adaptive_sync = "on";
render_bit_depth = "10";
};
};
input = { "type:pointer" = { pointer_accel = "-0.3"; }; };
startup = [
# Up the mouse dpi
{ command = "solaar config 1 dpi 4000"; }
];
};
# Sway background
# Spin up glpaper as a user service so we can have it restart on failure (liable due to kvm switch
# disconnecting input)
systemd.user.services.glpaper-dp1 = {
Unit = {
Description = "glpaper (DP-1)";
After = [ "graphical-session.target" ];
};
Service = {
Type = "simple";
ExecStart = ''
/etc/profiles/per-user/nathan/bin/glpaper DP-1 ${
../../custom-files/sway/selen.frag
}
'';
Restart = "always";
};
Install = { WantedBy = [ "graphical-session.target" ]; };
};
# Gammastep
services.gammastep = {
enable = true;
latitude = 38.02972;
longitude = -84.49472;
tray = true;
temperature = {
day = 6300;
night = 4300;
};
settings = { general = { fade = 1; }; };
};
# System specific autoruns
systemd.user.services = {
# Start up solaar in tray icon mode
solaar = {
Unit = {
Description = "Solarr";
After = [ "graphical-session.target" ];
};
Service = {
Type = "simple";
ExecStart = ''
${pkgs.solaar}/bin/solaar -w hide
'';
};
Install = { WantedBy = [ "graphical-session.target" ]; };
};
# Startup noisetorch on our USB mic
noisetorch-startup = {
Unit = {
Description = "noisetorch";
After = [ "graphical-session.target" ];
};
Service = {
Type = "oneshot";
ExecStartPre = "/run/current-system/sw/bin/sleep 5";
ExecStart = ''
/run/wrappers/bin/noisetorch -i alsa_input.usb-18072020_JLAB_TALK_GO_MICROPHONE-00.analog-stereo
'';
};
Install = { WantedBy = [ "graphical-session.target" ]; };
};
};
# Mako output configuration
programs.mako = {
# Lock mako notifs to main display
output = "DP-1";
};
}