Merge branch 'hyprland'
This commit is contained in:
13
home.nix
13
home.nix
@@ -37,12 +37,15 @@ with import <nixpkgs> {};
|
|||||||
# '')
|
# '')
|
||||||
|
|
||||||
pkgs.bitwarden
|
pkgs.bitwarden
|
||||||
|
pkgs.dunst
|
||||||
pkgs.element-desktop
|
pkgs.element-desktop
|
||||||
pkgs.fd
|
pkgs.fd
|
||||||
pkgs.fluffychat
|
pkgs.fluffychat
|
||||||
|
pkgs.gzip
|
||||||
pkgs.htop
|
pkgs.htop
|
||||||
pkgs.jellyfin-media-player
|
pkgs.jellyfin-media-player
|
||||||
pkgs.keepassxc
|
pkgs.keepassxc
|
||||||
|
pkgs.kitty
|
||||||
pkgs.less
|
pkgs.less
|
||||||
pkgs.ncdu
|
pkgs.ncdu
|
||||||
pkgs.pandoc
|
pkgs.pandoc
|
||||||
@@ -50,6 +53,8 @@ with import <nixpkgs> {};
|
|||||||
#pkgs.pytest
|
#pkgs.pytest
|
||||||
pkgs.shellcheck
|
pkgs.shellcheck
|
||||||
pkgs.tmux
|
pkgs.tmux
|
||||||
|
pkgs.waybar
|
||||||
|
pkgs.wofi
|
||||||
pkgs.vlc
|
pkgs.vlc
|
||||||
];
|
];
|
||||||
|
|
||||||
@@ -91,8 +96,12 @@ with import <nixpkgs> {};
|
|||||||
home.sessionPath = [
|
home.sessionPath = [
|
||||||
];
|
];
|
||||||
|
|
||||||
|
nixpkgs.config.allowUnfree = true;
|
||||||
|
|
||||||
imports = [
|
imports = [
|
||||||
./modules/applications/emacs/default.nix
|
./modules/applications/emacs/default.nix
|
||||||
|
./modules/games/lutris/default.nix
|
||||||
|
./modules/window_managers/hyprland/default.nix
|
||||||
];
|
];
|
||||||
|
|
||||||
programs.bash.enable = true;
|
programs.bash.enable = true;
|
||||||
@@ -187,7 +196,5 @@ with import <nixpkgs> {};
|
|||||||
};
|
};
|
||||||
};
|
};
|
||||||
|
|
||||||
xdg = {
|
xdg.enable = true;
|
||||||
enable = true;
|
|
||||||
};
|
|
||||||
}
|
}
|
||||||
|
|||||||
@@ -1,7 +1,7 @@
|
|||||||
{ config, lib, pkgs, ... }:
|
{ config, lib, pkgs, ... }:
|
||||||
|
|
||||||
let
|
let
|
||||||
emacs = pkgs.emacs;
|
emacs = pkgs.emacs29-pgtk;
|
||||||
doomSync = (let
|
doomSync = (let
|
||||||
git = pkgs.git;
|
git = pkgs.git;
|
||||||
in ''
|
in ''
|
||||||
|
|||||||
7
modules/games/lutris/default.nix
Normal file
7
modules/games/lutris/default.nix
Normal file
@@ -0,0 +1,7 @@
|
|||||||
|
{ config, lib, pkgs, ... }:
|
||||||
|
|
||||||
|
{
|
||||||
|
home.packages = [
|
||||||
|
pkgs.lutris
|
||||||
|
];
|
||||||
|
}
|
||||||
75
modules/window_managers/hyprland/default.nix
Normal file
75
modules/window_managers/hyprland/default.nix
Normal file
@@ -0,0 +1,75 @@
|
|||||||
|
{ config, lib, pkgs, ... }:
|
||||||
|
|
||||||
|
{
|
||||||
|
imports = [
|
||||||
|
./hyprpaper.nix
|
||||||
|
];
|
||||||
|
|
||||||
|
|
||||||
|
wayland.windowManager.hyprland = {
|
||||||
|
enable = true;
|
||||||
|
settings = {
|
||||||
|
monitor = ",preferred,auto,1.5";
|
||||||
|
|
||||||
|
"$mod" = "SUPER";
|
||||||
|
"$terminal" = "kitty";
|
||||||
|
"$fileManager" = "dolphin";
|
||||||
|
"$menu" = "wofi --show drun";
|
||||||
|
|
||||||
|
exec-once = [
|
||||||
|
"waybar"
|
||||||
|
"dunst"
|
||||||
|
];
|
||||||
|
|
||||||
|
env = [
|
||||||
|
"XCURSOR_SIZE,24"
|
||||||
|
"HYPRCURSOR_SIZE,24"
|
||||||
|
];
|
||||||
|
|
||||||
|
input = {
|
||||||
|
kb_layout = "us";
|
||||||
|
kb_options = "caps:escape";
|
||||||
|
follow_mouse = 1;
|
||||||
|
touchpad.natural_scroll = false;
|
||||||
|
};
|
||||||
|
|
||||||
|
windowrulev2 = [
|
||||||
|
# I can guess, but I should figure out what this actually does
|
||||||
|
"suppressevent maximize, class:.*"
|
||||||
|
];
|
||||||
|
|
||||||
|
bind =
|
||||||
|
[
|
||||||
|
"SHIFT_$mod, Q, killactive"
|
||||||
|
"SHIFT_$mod, E, exit"
|
||||||
|
"$mod, D, exec, $menu"
|
||||||
|
"$mod, Return, exec, $terminal"
|
||||||
|
"$mod, H, movefocus, l"
|
||||||
|
"$mod, L, movefocus, r"
|
||||||
|
"$mod, K, movefocus, u"
|
||||||
|
"$mod, J, movefocus, d"
|
||||||
|
"SHIFT_$mod, H, swapwindow, l"
|
||||||
|
"SHIFT_$mod, L, swapwindow, r"
|
||||||
|
"SHIFT_$mod, K, swapwindow, u"
|
||||||
|
"SHIFT_$mod, J, swapwindow, d"
|
||||||
|
"$mod, M, fullscreen, 0"
|
||||||
|
]
|
||||||
|
++ (
|
||||||
|
# workspaces
|
||||||
|
# binds $mod + [shift +] {1..10} to [move to] workspace {1..10}
|
||||||
|
builtins.concatLists (builtins.genList (
|
||||||
|
x: let
|
||||||
|
ws = let
|
||||||
|
c = (x + 1) / 10;
|
||||||
|
in
|
||||||
|
builtins.toString (x + 1 - (c * 10));
|
||||||
|
in [
|
||||||
|
"$mod, ${ws}, workspace, ${toString (x + 1)}"
|
||||||
|
"$mod SHIFT, ${ws}, movetoworkspace, ${toString (x + 1)}"
|
||||||
|
]
|
||||||
|
)
|
||||||
|
10)
|
||||||
|
);
|
||||||
|
};
|
||||||
|
};
|
||||||
|
}
|
||||||
21
modules/window_managers/hyprland/hyprpaper.nix
Normal file
21
modules/window_managers/hyprland/hyprpaper.nix
Normal file
@@ -0,0 +1,21 @@
|
|||||||
|
{ config, lib, pkgs, ... }:
|
||||||
|
|
||||||
|
{
|
||||||
|
services.hyprpaper = {
|
||||||
|
enable = true;
|
||||||
|
settings = {
|
||||||
|
ipc = "on";
|
||||||
|
splash = false;
|
||||||
|
preload = [
|
||||||
|
"${config.xdg.dataHome}/wallpaper.jpg"
|
||||||
|
];
|
||||||
|
wallpaper = [
|
||||||
|
",${config.xdg.dataHome}/wallpaper.jpg"
|
||||||
|
];
|
||||||
|
};
|
||||||
|
};
|
||||||
|
|
||||||
|
xdg.dataFile."wallpaper.jpg" = {
|
||||||
|
source = ./wallpaper.jpg;
|
||||||
|
};
|
||||||
|
}
|
||||||
BIN
modules/window_managers/hyprland/wallpaper.jpg
Normal file
BIN
modules/window_managers/hyprland/wallpaper.jpg
Normal file
Binary file not shown.
|
After Width: | Height: | Size: 842 KiB |
Reference in New Issue
Block a user