initial commit
This commit is contained in:
@@ -0,0 +1,231 @@
|
||||
{ inputs, config, pkgs, ... }:
|
||||
|
||||
{
|
||||
home.username = "snurm";
|
||||
home.homeDirectory = "/home/snurm";
|
||||
home.stateVersion = "25.11";
|
||||
programs.home-manager.enable = true;
|
||||
home.sessionVariables = {
|
||||
NIXOS_OZONE_WL = "1";
|
||||
SUDO_EDITOR = "nvim";
|
||||
GTK_IM_MODULE = "fcitx";
|
||||
QT_IM_MODULE = "fcitx";
|
||||
SDL_IM_MODULE = "fcitx";
|
||||
};
|
||||
xdg.autostart = {
|
||||
enable = true;
|
||||
};
|
||||
|
||||
home.packages = with pkgs; [
|
||||
hyprshutdown
|
||||
grim
|
||||
slurp
|
||||
];
|
||||
i18n.inputMethod = {
|
||||
enable = true;
|
||||
type = "fcitx5";
|
||||
fcitx5.waylandFrontend = true;
|
||||
fcitx5.addons = with pkgs; [
|
||||
fcitx5-mozc
|
||||
fcitx5-gtk
|
||||
];
|
||||
#fcitx5.settings.inputMethod = {
|
||||
# GroupOrder."0" = "Default";
|
||||
# "Groups/0" = {
|
||||
# Name = "Default";
|
||||
# "Default Layout" = "de";
|
||||
# DefaultIM = "mozc";
|
||||
# };
|
||||
# "Groups/0/Items/0".Name = "keyboard-de";
|
||||
# "Groups/0/Items/0".Layout = "";
|
||||
# "Groups/0/Items/1".Name = "mozc";
|
||||
# "Groups/0/Items/1".Layout = "de";
|
||||
#};
|
||||
|
||||
#fcitx5.ignoreUserConfig = true;
|
||||
};
|
||||
|
||||
fonts.fontconfig = {
|
||||
enable = true;
|
||||
};
|
||||
wayland.windowManager.hyprland = {
|
||||
enable = false;
|
||||
systemd.enable = false;
|
||||
#package = inputs.hyprland.packages.${nixpkgs.legacyPackages.x86_64-linux.stdenv.hostPlatform.system}.hyprland;
|
||||
#portalPackage = inputs.hyprland.packages.${nixpkgs.legacyPackages.x86_64-linux.stdenv.hostPlatform.system}.xdg-desktop-portal-hyprland;
|
||||
settings = {
|
||||
"$mainMod" = "SUPER";
|
||||
"$menu" = "wofi --show drun";
|
||||
"$terminal" = "kitty";
|
||||
input = {
|
||||
"kb_layout" = "de";
|
||||
"follow_mouse" = "1";
|
||||
};
|
||||
monitor = [
|
||||
"DP-2, highres@highrr, auto, auto"
|
||||
"DP-3, highres@highrr, auto-left, auto"
|
||||
"HDMI-A-1, highres@highrr, auto-right, auto"
|
||||
];
|
||||
general = {
|
||||
"border_size" = "2";
|
||||
"gaps_in" = "5";
|
||||
"gaps_out" = "5";
|
||||
};
|
||||
bind = [
|
||||
"$mainMod, Q, exec, $terminal"
|
||||
"$mainMod, D, exec, $menu"
|
||||
"$mainMod, C, killactive"
|
||||
"$mainMod, F, fullscreen"
|
||||
"$mainMod, S, exec, grim -g \"$(slurp -d)\" - | wl-copy"
|
||||
"$mainMod, M, exec, hyprshutdown -t 'Shutting Down...' --post-cmd 'shutdown -P 0'"
|
||||
"$mainMod, H, movefocus, l"
|
||||
"$mainMod, L, movefocus, r"
|
||||
"$mainMod, K, movefocus, u"
|
||||
"$mainMod, J, movefocus, d"
|
||||
"$mainMod SHIFT, H, movewindow, l"
|
||||
"$mainMod SHIFT, L, movewindow, r"
|
||||
"$mainMod SHIFT, K, movewindow, u"
|
||||
"$mainMod SHIFT, J, movewindow, d"
|
||||
]
|
||||
++ (
|
||||
builtins.concatLists (builtins.genList (i:
|
||||
let ws = i + 1;
|
||||
in [
|
||||
"$mainMod, code:1${toString i}, workspace, ${toString ws}"
|
||||
"$mainMod SHIFT, code:1${toString i}, movetoworkspace, ${toString ws}"
|
||||
]
|
||||
)
|
||||
10)
|
||||
);
|
||||
bindm = [
|
||||
"$mainMod, mouse:272, movewindow"
|
||||
"$mainMod, mouse:273, resizewindow"
|
||||
];
|
||||
bindl = [
|
||||
",XF86AudioRaiseVolume, exec, wpctl set-volume -l 1 @DEFAULT_AUDIO_SINK@ 5%+"
|
||||
",XF86AudioLowerVolume, exec, wpctl set-volume @DEFAULT_AUDIO_SINK@ 5%-"
|
||||
",XF86AudioMute, exec, wpctl set-mute @DEFAULT_AUDIO_SINK@ toggle"
|
||||
",XF86AudioMicMute, exec, wpctl set-mute @DEFAULT_AUDIO_SOURCE@ toggle"
|
||||
",XF86AudioNext, exec, playerctl next"
|
||||
",XF86AudioPause, exec, playerctl play-pause"
|
||||
",XF86AudioPlay, exec, playerctl play-pause"
|
||||
",XF86AudioPrev, exec, playerctl previous"
|
||||
|
||||
];
|
||||
exec-once = [
|
||||
"hyprpaper"
|
||||
];
|
||||
};
|
||||
};
|
||||
programs.firefox = {
|
||||
enable = true;
|
||||
languagePacks = [
|
||||
"en-US"
|
||||
"ja"
|
||||
];
|
||||
# TODO add extensions/settings/bookmarks
|
||||
};
|
||||
programs.zathura = {
|
||||
enable = true;
|
||||
};
|
||||
programs.btop = {
|
||||
enable = true;
|
||||
};
|
||||
programs.keepassxc = {
|
||||
enable = true;
|
||||
autostart = true;
|
||||
};
|
||||
|
||||
programs.mangohud = {
|
||||
enable = true;
|
||||
enableSessionWide = true;
|
||||
};
|
||||
programs.vesktop = {
|
||||
enable = true;
|
||||
settings = {
|
||||
discordBranch = "stable";
|
||||
arRPC = true;
|
||||
minimizeToTray = true;
|
||||
hardwareVideoAcceleration = true;
|
||||
};
|
||||
};
|
||||
programs.anki = {
|
||||
enable = true;
|
||||
theme = "light";
|
||||
addons = [
|
||||
pkgs.ankiAddons.anki-connect
|
||||
pkgs.ankiAddons.review-heatmap
|
||||
pkgs.ankiAddons.adjust-sound-volume
|
||||
];
|
||||
};
|
||||
programs.quickshell = {
|
||||
enable = true;
|
||||
systemd.enable = true;
|
||||
};
|
||||
|
||||
programs.zsh = {
|
||||
enable = true;
|
||||
shellAliases = {
|
||||
cl = "clear";
|
||||
rb = "sudo nixos-rebuild switch --flake /etc/nixos/";
|
||||
};
|
||||
profileExtra = ''
|
||||
if uwsm check may-start && uwsm select; then
|
||||
exec uwsm start default
|
||||
fi
|
||||
'';
|
||||
};
|
||||
|
||||
programs.git = {
|
||||
enable = true;
|
||||
settings.user = {
|
||||
name = "snurm";
|
||||
email = "user@example.com";
|
||||
};
|
||||
};
|
||||
|
||||
programs.kitty = {
|
||||
enable = true;
|
||||
font = {
|
||||
name = "JetBrains Mono";
|
||||
size = 10;
|
||||
};
|
||||
settings = {
|
||||
confirm_os_window_close = 0;
|
||||
enable_auto_bell = false;
|
||||
mouse_hide_wait = "-1.0";
|
||||
background_opacity = "0.5";
|
||||
background_blur = 5;
|
||||
};
|
||||
};
|
||||
programs.wofi = {
|
||||
enable = true;
|
||||
};
|
||||
services.playerctld = {
|
||||
enable = true;
|
||||
};
|
||||
|
||||
services.hyprpaper = {
|
||||
enable = true;
|
||||
settings = {
|
||||
splash = false;
|
||||
wallpaper = [
|
||||
{
|
||||
monitor = "DP-2";
|
||||
path = "${config.home.homeDirectory}/Pictures/Wallpaper/dawn.jpg";
|
||||
fit_mode = "cover";
|
||||
}
|
||||
{
|
||||
monitor = "DP-3";
|
||||
path = "${config.home.homeDirectory}/Pictures/Wallpaper/dawn.jpg";
|
||||
fit_mode = "cover";
|
||||
}
|
||||
{
|
||||
monitor = "HDMI-A-1";
|
||||
path = "${config.home.homeDirectory}/Pictures/Wallpaper/dawn.jpg";
|
||||
fit_mode = "cover";
|
||||
}
|
||||
];
|
||||
};
|
||||
};
|
||||
}
|
||||
Reference in New Issue
Block a user