rearrange directory structure

This commit is contained in:
Tristan 2024-01-05 21:53:27 +00:00
parent 2fe0f94a23
commit 67cb4995f9
33 changed files with 213 additions and 219 deletions

View file

@ -1,9 +0,0 @@
xkb_keycodes {
<idk> = 78;
}
xkb_symbols {
key.type = "ALPHABETIC";
key <idk> { [ U0108, U0109 ] };
}

View file

@ -1,4 +1,4 @@
{...}: { {
displays = { displays = {
enable = true; enable = true;
displays = { displays = {

View file

@ -7,7 +7,6 @@
}: { }: {
imports = [ imports = [
(modulesPath + "/installer/scan/not-detected.nix") (modulesPath + "/installer/scan/not-detected.nix")
./displays.nix
]; ];
boot.initrd.availableKernelModules = ["xhci_pci" "thunderbolt" "nvme" "usb_storage" "sd_mod" "sdhci_pci"]; boot.initrd.availableKernelModules = ["xhci_pci" "thunderbolt" "nvme" "usb_storage" "sd_mod" "sdhci_pci"];

View file

@ -7,7 +7,6 @@
}: { }: {
imports = [ imports = [
(modulesPath + "/installer/scan/not-detected.nix") (modulesPath + "/installer/scan/not-detected.nix")
./displays.nix
./ddc.nix ./ddc.nix
(import ./g920.nix {inherit user pkgs;}) (import ./g920.nix {inherit user pkgs;})
]; ];

View file

@ -25,28 +25,26 @@ let
glow = "${pkgs.glow}/bin/glow"; glow = "${pkgs.glow}/bin/glow";
ffmpegthumbnailer = "${pkgs.ffmpegthumbnailer}/bin/ffmpegthumbnailer"; ffmpegthumbnailer = "${pkgs.ffmpegthumbnailer}/bin/ffmpegthumbnailer";
}; };
lf-sixel = pkgs.callPackage ../../custom/lf-sixel/. {}; lf-sixel = pkgs.callPackage ../custom/lf-sixel/. {};
in { in {
imports = [ imports = [
./graphical.nix ./modules/terminal.nix
./modules/scripts.nix
./modules/email.nix
./modules/editor.nix
./modules/mpd.nix
./modules/menu.nix
./modules/scripts.nix
../../lib/scripts.nix ./programs/graphical.nix
./programs/scripts.nix
../../lib/programs/home/neovim/. ./programs/neovim/.
../../lib/programs/home/git.nix ./programs/git.nix
../../lib/modules/home/terminal.nix
../../lib/modules/home/scripts.nix
../../lib/modules/home/email.nix
../../lib/modules/home/editor.nix
../../lib/modules/home/mpd.nix
../../lib/modules/home/menu.nix
]; ];
programs.home-manager.enable = true; programs.home-manager.enable = true;
home.username = "tristan"; home.homeDirectory = "/home/${config.home.username}";
home.homeDirectory = "/home/tristan";
xdg.userDirs.enable = true; xdg.userDirs.enable = true;

160
home/programs/hyprland.nix Normal file
View file

@ -0,0 +1,160 @@
{
lib,
pkgs,
...
}: {
imports = [
(import ./swaylock.nix)
(import ./swayidle.nix)
];
xdg.portal = {
enable = true;
configPackages = [pkgs.hyprland];
extraPortals = [pkgs.xdg-desktop-portal-hyprland pkgs.xdg-desktop-portal-gtk];
};
wayland.windowManager.hyprland = {
enable = true;
systemd.enable = true;
settings = {
input = {
touchpad = {
natural_scroll = true;
scroll_factor = 0.5;
};
};
gestures = {
workspace_swipe = true;
workspace_swipe_numbered = true;
};
decoration = {
rounding = 5;
drop_shadow = false;
};
bezier = [
"overshot, 0.05, 0.9, 0.1, 1.1"
"linear, 0.0, 0.0, 1.0, 1.0"
];
animations = {
enabled = true;
animation = [
"windows, 1, 1, default, popin"
"border, 1, 1, default"
"fade, 1, 1, default"
"workspaces, 1, 3, overshot"
"borderangle,1, 50, linear, loop"
];
};
bind = [
"SUPER, h, movefocus,l"
"SUPER, l, movefocus,r"
"SUPER, j, layoutmsg,cyclenext"
"SUPER, k, layoutmsg,cycleprev"
"SUPER, space, layoutmsg,swapwithmaster master"
"SUPER, F, fullscreen,"
"SUPER, V, togglefloating,"
"SUPER, W, layoutmsg, orientationprev"
"SUPER_SHIFT, W, layoutmsg, orientationnext"
"SUPER_SHIFT, V, togglegroup,"
"SUPER_SHIFT, h, changegroupactive,b"
"SUPER_SHIFT, h, moveintogroup,l"
"SUPER_SHIFT, l, moveintogroup,r"
"SUPER_SHIFT, l, changegroupactive,f"
"SUPER, Y, togglespecialworkspace"
"SUPER_SHIFT, Y, movetoworkspace, special"
"SUPER_SHIFT, X, killactive"
"SUPER, slash, focuswindow, brave-browser"
"SUPER, n, focuswindow, Logseq"
"SUPER, R, submap, resize"
"SUPER,1,workspace,1"
"SUPER,2,workspace,2"
"SUPER,3,workspace,3"
"SUPER,4,workspace,4"
"SUPER,5,workspace,5"
"SUPER,6,workspace,6"
"SUPER,7,workspace,7"
"SUPER,8,workspace,8"
"SUPER,9,workspace,9"
"SUPER,0,workspace,10"
"SUPER,left,workspace,r-1"
"SUPER,right,workspace,r+1"
"SUPER_SHIFT,1,movetoworkspace,1"
"SUPER_SHIFT,2,movetoworkspace,2"
"SUPER_SHIFT,3,movetoworkspace,3"
"SUPER_SHIFT,4,movetoworkspace,4"
"SUPER_SHIFT,5,movetoworkspace,5"
"SUPER_SHIFT,6,movetoworkspace,6"
"SUPER_SHIFT,7,movetoworkspace,7"
"SUPER_SHIFT,8,movetoworkspace,8"
"SUPER_SHIFT,9,movetoworkspace,9"
"SUPER_SHIFT,0,movetoworkspace,10"
];
bindm = [
"SUPER, mouse:272, movewindow"
"SUPER, mouse:273, resizewindow"
];
env = [
"GDK_BACKEND,wayland,x11"
"QT_QPA_PLATFORM,wayland;xcb"
"SDL_VIDEODRIVER,wayland"
"CLUTTER_BACKEND,wayland"
"XDG_CURRENT_DESKTOP,Hyprland"
"XDG_SESSION_TYPE,wayland"
"XDG_SESSION_DESKTOP,Hyprland"
"QT_AUTO_SCREEN_SCALE_FACTOR,1"
"QT_WAYLAND_DISABLE_WINDOWDECORATION,1"
"NIXOS_OZONE_WL,1"
"WLR_NO_HARDWARE_CURSORS,1"
];
windowrule = [
"float, title:wlogout"
"idleinhibit always, vrmonitor"
"idleinhibit focus, steam_app"
];
workspace = [
"11, default:true"
];
general = {
gaps_out = 10;
resize_on_border = true;
layout = "master";
# "col.active_border" = "rgb(FFFF00) rgb(00FFFF) rgb(FF00FF)";
border_size = lib.mkDefault 5;
};
master = {
mfact = 0.7;
new_on_top = true;
};
misc = {
vrr = 2;
focus_on_activate = true;
};
};
# https://wiki.hyprland.org/Configuring/Variables/
extraConfig = ''
submap = resize
binde = ,right,resizeactive,10 0
binde = ,left,resizeactive,-10 0
binde = ,up,resizeactive,0 -10
binde = ,down,resizeactive,0 10
binde = ,k,resizeactive,0 -10
binde = ,j,resizeactive,0 10
binde = ,l,splitratio,0.05
binde = ,h,splitratio,-0.05
binde = SHIFT,l,splitratio,0.3
binde = SHIFT,h,splitratio,-0.3
bind = , escape, submap,reset
bind = , enter, submap,reset
bind = SUPER, R, submap,reset
bind = CONTROL, C, submap,reset
submap = reset
'';
};
services.mako = {
enable = true;
};
programs.waybar.settings.mainBar.modules-left = ["hyprland/workspaces" "hyprland/window"];
}

View file

@ -25,28 +25,19 @@ nixpkgs.lib.nixosSystem {
{ {
home-manager.useGlobalPkgs = true; home-manager.useGlobalPkgs = true;
home-manager.useUserPackages = true; home-manager.useUserPackages = true;
home-manager.users.${user}.imports = [
../home/.
{
options.home.userFullname = nixpkgs.lib.mkOption {default = userName;};
config.home.username = user;
}
];
} }
{ {
imports = [ imports = [
(import ./modules/gamer.nix {inherit user;})
(import ./modules/keyboard.nix {inherit user;})
(import ./modules/display.nix {inherit user;})
(import ./modules/work.nix {inherit user;})
(import ./modules/laptop.nix {inherit user;})
(import ./modules/personal.nix {inherit user;})
(import ./programs/hyprland.nix {inherit user;})
(import ../hardware/${name}.nix {inherit user;}) (import ../hardware/${name}.nix {inherit user;})
(import ../global/system.nix user) (import ../nixos/. user)
]; ];
home-manager.users.${user}.imports = [
../global/home/.
{
options.home.userFullname = nixpkgs.lib.mkOption { default = userName; };
}
];
roles.work.enable = work; roles.work.enable = work;
roles.personal.enable = !work; roles.personal.enable = !work;
} }

View file

@ -1,173 +0,0 @@
{user}: {
lib,
pkgs,
...
}: {
services.greetd = {
enable = true;
settings = rec {
hypr_session = {
command = "Hyprland";
user = user;
};
default_session = hypr_session;
};
};
home-manager.users.${user}.imports = [
(import ./home/swaylock.nix)
(import ./home/swayidle.nix)
{
xdg.portal = {
enable = true;
configPackages = [pkgs.hyprland];
extraPortals = [pkgs.xdg-desktop-portal-hyprland pkgs.xdg-desktop-portal-gtk];
};
wayland.windowManager.hyprland = {
enable = true;
systemd.enable = true;
settings = {
input = {
touchpad = {
natural_scroll = true;
scroll_factor = 0.5;
};
};
gestures = {
workspace_swipe = true;
workspace_swipe_numbered = true;
};
decoration = {
rounding = 5;
drop_shadow = false;
};
bezier = [
"overshot, 0.05, 0.9, 0.1, 1.1"
"linear, 0.0, 0.0, 1.0, 1.0"
];
animations = {
enabled = true;
animation = [
"windows, 1, 1, default, popin"
"border, 1, 1, default"
"fade, 1, 1, default"
"workspaces, 1, 3, overshot"
"borderangle,1, 50, linear, loop"
];
};
bind = [
"SUPER, h, movefocus,l"
"SUPER, l, movefocus,r"
"SUPER, j, layoutmsg,cyclenext"
"SUPER, k, layoutmsg,cycleprev"
"SUPER, space, layoutmsg,swapwithmaster master"
"SUPER, F, fullscreen,"
"SUPER, V, togglefloating,"
"SUPER, W, layoutmsg, orientationprev"
"SUPER_SHIFT, W, layoutmsg, orientationnext"
"SUPER_SHIFT, V, togglegroup,"
"SUPER_SHIFT, h, changegroupactive,b"
"SUPER_SHIFT, h, moveintogroup,l"
"SUPER_SHIFT, l, moveintogroup,r"
"SUPER_SHIFT, l, changegroupactive,f"
"SUPER, Y, togglespecialworkspace"
"SUPER_SHIFT, Y, movetoworkspace, special"
"SUPER_SHIFT, X, killactive"
"SUPER, slash, focuswindow, brave-browser"
"SUPER, n, focuswindow, Logseq"
"SUPER, R, submap, resize"
"SUPER,1,workspace,1"
"SUPER,2,workspace,2"
"SUPER,3,workspace,3"
"SUPER,4,workspace,4"
"SUPER,5,workspace,5"
"SUPER,6,workspace,6"
"SUPER,7,workspace,7"
"SUPER,8,workspace,8"
"SUPER,9,workspace,9"
"SUPER,0,workspace,10"
"SUPER,left,workspace,r-1"
"SUPER,right,workspace,r+1"
"SUPER_SHIFT,1,movetoworkspace,1"
"SUPER_SHIFT,2,movetoworkspace,2"
"SUPER_SHIFT,3,movetoworkspace,3"
"SUPER_SHIFT,4,movetoworkspace,4"
"SUPER_SHIFT,5,movetoworkspace,5"
"SUPER_SHIFT,6,movetoworkspace,6"
"SUPER_SHIFT,7,movetoworkspace,7"
"SUPER_SHIFT,8,movetoworkspace,8"
"SUPER_SHIFT,9,movetoworkspace,9"
"SUPER_SHIFT,0,movetoworkspace,10"
];
bindm = [
"SUPER, mouse:272, movewindow"
"SUPER, mouse:273, resizewindow"
];
env = [
"GDK_BACKEND,wayland,x11"
"QT_QPA_PLATFORM,wayland;xcb"
"SDL_VIDEODRIVER,wayland"
"CLUTTER_BACKEND,wayland"
"XDG_CURRENT_DESKTOP,Hyprland"
"XDG_SESSION_TYPE,wayland"
"XDG_SESSION_DESKTOP,Hyprland"
"QT_AUTO_SCREEN_SCALE_FACTOR,1"
"QT_WAYLAND_DISABLE_WINDOWDECORATION,1"
"NIXOS_OZONE_WL,1"
"WLR_NO_HARDWARE_CURSORS,1"
];
windowrule = [
"float, title:wlogout"
"idleinhibit always, vrmonitor"
"idleinhibit focus, steam_app"
];
workspace = [
"11, default:true"
];
general = {
gaps_out = 10;
resize_on_border = true;
layout = "master";
# "col.active_border" = "rgb(FFFF00) rgb(00FFFF) rgb(FF00FF)";
border_size = lib.mkDefault 5;
};
master = {
mfact = 0.7;
new_on_top = true;
};
misc = {
vrr = 2;
focus_on_activate = true;
};
};
# https://wiki.hyprland.org/Configuring/Variables/
extraConfig = ''
submap = resize
binde = ,right,resizeactive,10 0
binde = ,left,resizeactive,-10 0
binde = ,up,resizeactive,0 -10
binde = ,down,resizeactive,0 10
binde = ,k,resizeactive,0 -10
binde = ,j,resizeactive,0 10
binde = ,l,splitratio,0.05
binde = ,h,splitratio,-0.05
binde = SHIFT,l,splitratio,0.3
binde = SHIFT,h,splitratio,-0.3
bind = , escape, submap,reset
bind = , enter, submap,reset
bind = SUPER, R, submap,reset
bind = CONTROL, C, submap,reset
submap = reset
'';
};
services.mako = {
enable = true;
};
programs.waybar.settings.mainBar.modules-left = ["hyprland/workspaces" "hyprland/window"];
}
];
}

View file

@ -6,6 +6,17 @@ user: {
lib, lib,
... ...
}: { }: {
imports = [
(import ./modules/gamer.nix {inherit user;})
(import ./modules/keyboard.nix {inherit user;})
(import ./modules/display.nix {inherit user;})
(import ./modules/work.nix {inherit user;})
(import ./modules/laptop.nix {inherit user;})
(import ./modules/personal.nix {inherit user;})
(import ./programs/hyprland.nix {inherit user;})
../hardware/displays.nix
];
nix = { nix = {
settings = { settings = {
experimental-features = ["nix-command" "flakes"]; experimental-features = ["nix-command" "flakes"];

View file

@ -30,13 +30,13 @@ with lib; {
minikube minikube
kubernetes-helm kubernetes-helm
thunderbird thunderbird
(import ../mkapp.nix "slack" { (import ../../lib/mkapp.nix "slack" {
inherit pkgs; inherit pkgs;
desktopName = "Slack"; desktopName = "Slack";
app-id = "mpagibdhafmlkgpemeicgogjnhclenoc"; app-id = "mpagibdhafmlkgpemeicgogjnhclenoc";
browser = "${brave}/opt/brave.com/brave/brave-browser"; browser = "${brave}/opt/brave.com/brave/brave-browser";
}) })
(import ../mkapp.nix "teams" { (import ../../lib/mkapp.nix "teams" {
inherit pkgs; inherit pkgs;
browser = "${brave}/opt/brave.com/brave/brave-browser"; browser = "${brave}/opt/brave.com/brave/brave-browser";
app-id = "cifhbcnohmdccbgoicgdjpfamggdegmo"; app-id = "cifhbcnohmdccbgoicgdjpfamggdegmo";

View file

@ -0,0 +1,18 @@
{user}: {
lib,
pkgs,
...
}: {
services.greetd = {
enable = true;
settings = rec {
hypr_session = {
command = "Hyprland";
user = user;
};
default_session = hypr_session;
};
};
home-manager.users.${user}.imports = [../../home/programs/hyprland.nix];
}