dotfiles/users/stitchynyan/home.nix

143 lines
3.2 KiB
Nix

{ config,
nixosConfig,
pkgs,
lib,
inputs,
home-manager,
... }:
let
handheldPkgs = lib.attrVals [
"fluffychat"
] pkgs;
pcPkgs = lib.attrVals [
"activitywatch"
"dunst"
"foot"
"grim"
"imv"
"isync"
"kitty"
"hunspell"
"hyprpaper"
"libreoffice"
"librewolf"
"lynx"
"mpv"
"msmtp"
"mupdf"
"neomutt"
"networkmanagerapplet"
"nheko"
"notmuch"
"okular"
"pavucontrol"
"pass"
"playerctl"
"prismlauncher"
"qt5ct"
"qt6ct"
"slurp"
"swaylock-effects"
"wofi"
] pkgs ++ [ pkgs.hunspellDicts.en_US ];
in
{
options = {
};
config = {
home.packages = with pkgs; [
cider
ngspice
hugo
kicad
#steamvr?
procps
usbutils
(python311.withPackages (lib.attrVals ["sympy" "matplotlib"]))
(octaveFull.withPackages (lib.attrVals ["symbolic"]))
]
++ (lib.optionals (nixosConfig.stitchyconf.form == "handheld") handheldPkgs)
++ (lib.optionals (nixosConfig.stitchyconf.form == "pc") pcPkgs);
dconf.settings = {
"org/virt-manager/virt-manager/connections" = {
autoconnect = ["qemu:///system"];
uris = ["qemu:///system"];
};
};
# To-Do Later
home.sessionVariables = {
FOO = "BAR";
};
home.file = {
".zshrc".source = config.lib.file.mkOutOfStoreSymlink "/etc/nixos/config/zshrc";
};
xdg.configFile = {
"dunst" = {
source = config.lib.file.mkOutOfStoreSymlink "/etc/nixos/config/dunst";
recursive = true;
};
"eww" = {
source = config.lib.file.mkOutOfStoreSymlink "/etc/nixos/config/eww";
recursive = true;
};
"hypr" = {
source = config.lib.file.mkOutOfStoreSymlink "/etc/nixos/config/hypr";
recursive = true;
};
"swaylock" = {
source = config.lib.file.mkOutOfStoreSymlink "/etc/nixos/config/swaylock";
recursive = true;
};
};
systemd.user.services = {
mailsync = {
Unit = {
Description = "Syncs email";
After = [ "network-online.target" ];
};
Service = {
Type = "oneshot";
ExecStart = "${pkgs.mutt-wizard}/bin/mailsync";
Environment = [
"DBUS_SESSION_BUS_ADDRESS=unix:path=/run/user/1000/bus"
"DISPLAY=:0"
"MBSYNCRC=/home/stitchynyan/.config/mbsync/config"
"PATH=$PATH:${lib.makeBinPath (lib.attrVals [ "busybox" "cyrus-sasl-xoauth2" "gnupg" "isync" "notify" "notmuch" "pass" "perl" "python3" ] pkgs)}"
"SASL_PATH=/run/current-system/sw/lib/sasl2"
"WAYLAND_DISPLAY=wayland-1"
];
};
Install.WantedBy = [ "default.target" ];
};
};
systemd.user.timers = {
mailsync = {
Unit.Description = "Syncs email";
Timer = {
OnBootSec = "1min";
OnUnitActiveSec = "10min";
};
Install.WantedBy = [ "timers.target" ];
};
};
home.pointerCursor = {
name = "phinger-cursors";
package = pkgs.phinger-cursors;
gtk.enable = true;
size = 64;
};
# Read the Docs before change
home.stateVersion = "23.05";
home.homeDirectory = "/home/stitchynyan";
};
}