push up existing set of fixes and wm change
This commit is contained in:
parent
9a77331d21
commit
943fceee2d
7 changed files with 180 additions and 155 deletions
16
common.nix
16
common.nix
|
|
@ -59,14 +59,14 @@ all: {
|
||||||
|
|
||||||
services.openssh = {
|
services.openssh = {
|
||||||
enable = lib.mkDefault true;
|
enable = lib.mkDefault true;
|
||||||
# lol no
|
settings = {
|
||||||
settings.PermitRootLogin = lib.mkDefault "no";
|
StreamLocalBindUnlink = lib.mkDefault "yes";
|
||||||
settings.PasswordAuthentication = lib.mkDefault false;
|
# lol no
|
||||||
# allow reverse ssh port shit to be public sometimes
|
PermitRootLogin = lib.mkDefault "no";
|
||||||
settings.GatewayPorts = lib.mkDefault "clientspecified";
|
PasswordAuthentication = lib.mkDefault false;
|
||||||
extraConfig = ''
|
# allow reverse ssh port shit to be public sometimes
|
||||||
StreamLocalBindUnlink yes
|
GatewayPorts = lib.mkDefault "clientspecified";
|
||||||
'';
|
};
|
||||||
};
|
};
|
||||||
|
|
||||||
# Use a firewall
|
# Use a firewall
|
||||||
|
|
|
||||||
15
flake.nix
15
flake.nix
|
|
@ -26,15 +26,26 @@
|
||||||
noctalia = {
|
noctalia = {
|
||||||
url = "github:noctalia-dev/noctalia-shell";
|
url = "github:noctalia-dev/noctalia-shell";
|
||||||
inputs.nixpkgs.follows = "nixpkgs";
|
inputs.nixpkgs.follows = "nixpkgs";
|
||||||
# inputs.quickshell.follows = "quickshell";
|
|
||||||
};
|
};
|
||||||
|
niri = {
|
||||||
|
url = "github:sodiboo/niri-flake";
|
||||||
|
inputs.nixpkgs.follows = "nixpkgs";
|
||||||
|
};
|
||||||
|
};
|
||||||
|
|
||||||
|
nixConfig = {
|
||||||
|
extra-substituters = [ "https://niri.cachix.org" ];
|
||||||
|
extra-trusted-public-keys = [ "niri.cachix.org-1:Wv0OmO7PsuocRKzfDoJ3mulSl7Z6oezYhGhR+3W2964=" ];
|
||||||
};
|
};
|
||||||
|
|
||||||
outputs = {
|
outputs = {
|
||||||
self,
|
self,
|
||||||
nixpkgs,
|
nixpkgs,
|
||||||
|
niri,
|
||||||
...
|
...
|
||||||
} @ inputs: {
|
} @ inputs: {
|
||||||
|
overlays.niri = niri.overlays.niri;
|
||||||
|
|
||||||
nixosModules = let
|
nixosModules = let
|
||||||
m = {
|
m = {
|
||||||
ezpassthru = import ./modules/ezpassthru.nix;
|
ezpassthru = import ./modules/ezpassthru.nix;
|
||||||
|
|
@ -42,7 +53,7 @@
|
||||||
fuckingprint = import ./modules/fuckingprint.nix;
|
fuckingprint = import ./modules/fuckingprint.nix;
|
||||||
workstation = import ./modules/workstation.nix;
|
workstation = import ./modules/workstation.nix;
|
||||||
ezpw = import ./modules/ezpw.nix;
|
ezpw = import ./modules/ezpw.nix;
|
||||||
ezpc = import ./modules/ezpc.nix;
|
ezpc = import ./modules/ezpc.nix inputs;
|
||||||
};
|
};
|
||||||
in
|
in
|
||||||
m
|
m
|
||||||
|
|
|
||||||
|
|
@ -5,7 +5,6 @@ inputs: all: {
|
||||||
...
|
...
|
||||||
}: {
|
}: {
|
||||||
imports = [
|
imports = [
|
||||||
inputs.noctalia.homeModules.default
|
|
||||||
all
|
all
|
||||||
];
|
];
|
||||||
|
|
||||||
|
|
|
||||||
|
|
@ -7,6 +7,11 @@ inputs: {
|
||||||
with lib; let
|
with lib; let
|
||||||
cfg = config.ezpcusr;
|
cfg = config.ezpcusr;
|
||||||
in {
|
in {
|
||||||
|
imports = [
|
||||||
|
inputs.niri.homeModules.niri
|
||||||
|
|
||||||
|
inputs.noctalia.homeModules.default
|
||||||
|
];
|
||||||
options.ezpcusr = {
|
options.ezpcusr = {
|
||||||
enable = mkEnableOption "Enable simple PC user config";
|
enable = mkEnableOption "Enable simple PC user config";
|
||||||
|
|
||||||
|
|
@ -66,165 +71,165 @@ in {
|
||||||
};
|
};
|
||||||
};
|
};
|
||||||
|
|
||||||
xdg.portal = {
|
services.wpaperd.enable = true;
|
||||||
enable = true;
|
|
||||||
xdgOpenUsePortal = true;
|
|
||||||
extraPortals = [pkgs.xdg-desktop-portal-hyprland pkgs.xdg-desktop-portal-gtk];
|
|
||||||
config = {
|
|
||||||
common.default = ["gtk"];
|
|
||||||
hyprland.default = ["gtk" "hyprland"];
|
|
||||||
};
|
|
||||||
};
|
|
||||||
|
|
||||||
wayland.windowManager.hyprland = {
|
# xdg.portal = {
|
||||||
|
# config.niri = {
|
||||||
|
# default = [ "gnome" "gtk" ];
|
||||||
|
# # "org.freedesktop.impl.portal.Access" = "gtk";
|
||||||
|
# # "org.freedesktop.impl.portal.Notification" = "gtk";
|
||||||
|
# # "org.freedesktop.impl.portal.Secret" = "gnome-keyring";
|
||||||
|
# # "org.freedesktop.impl.portal.FileChooser" = "gtk";
|
||||||
|
# };
|
||||||
|
# extraPortals = [ pkgs.xdg-desktop-portal-gtk ];
|
||||||
|
# };
|
||||||
|
|
||||||
|
programs.niri = {
|
||||||
enable = true;
|
enable = true;
|
||||||
systemd = {
|
package = pkgs.niri-unstable;
|
||||||
enable = true;
|
|
||||||
enableXdgAutostart = true;
|
|
||||||
};
|
|
||||||
# package = inputs.hyprland.packages.${pkgs.stdenv.hostPlatform.system}.hyprland;
|
|
||||||
# portalPackage = inputs.hyprland.packages.${pkgs.stdenv.hostPlatform.system}.xdg-desktop-portal-hyprland;
|
|
||||||
package = pkgs.hyprland;
|
|
||||||
portalPackage = pkgs.xdg-desktop-portal-hyprland;
|
|
||||||
plugins = with pkgs.hyprlandPlugins; [
|
|
||||||
hy3
|
|
||||||
hypr-dynamic-cursors
|
|
||||||
];
|
|
||||||
settings = {
|
settings = {
|
||||||
exec-once = [
|
window-rules = [
|
||||||
"noctalia-shell"
|
{ draw-border-with-background = false; }
|
||||||
];
|
];
|
||||||
"plugin:dynamic-cursors" = {
|
prefer-no-csd = true;
|
||||||
shake.enabled = false;
|
xwayland-satellite = {
|
||||||
|
enable = true;
|
||||||
|
path = lib.getExe pkgs.xwayland-satellite-unstable;
|
||||||
};
|
};
|
||||||
"plugin:hy3" = {
|
# spawn-at-startup = [
|
||||||
no_gaps_when_only = 1;
|
# { argv = ["noctalia-shell"]; }
|
||||||
|
# ];
|
||||||
|
clipboard.disable-primary = true;
|
||||||
|
input = {
|
||||||
|
focus-follows-mouse.enable = true;
|
||||||
|
touchpad = {
|
||||||
|
click-method = "clickfinger";
|
||||||
|
natural-scroll = false;
|
||||||
|
};
|
||||||
};
|
};
|
||||||
ecosystem = {
|
binds = {
|
||||||
no_update_news = true;
|
"Mod+Return".action.spawn = "${config.programs.foot.package}/bin/foot";
|
||||||
no_donation_nag = true;
|
"Mod+q".action = config.lib.niri.actions.close-window;
|
||||||
};
|
# "$mod, F, fullscreen, 0"
|
||||||
animations = {
|
# "$mod SHIFT, F, fullscreen, 1"
|
||||||
enabled = false;
|
# "$mod, Space, togglefloating"
|
||||||
};
|
# "$mod SHIFT, SPACE, exec, hyprctl switchxkblayout all next"
|
||||||
decoration = {
|
"Mod+d".action.spawn = ["noctalia-shell" "ipc" "call" "launcher" "toggle"];
|
||||||
shadow.enabled = false;
|
|
||||||
};
|
|
||||||
misc = {
|
|
||||||
disable_hyprland_logo = true;
|
|
||||||
animate_manual_resizes = true;
|
|
||||||
animate_mouse_windowdragging = true;
|
|
||||||
new_window_takes_over_fullscreen = 2;
|
|
||||||
middle_click_paste = false;
|
|
||||||
};
|
|
||||||
general = {
|
|
||||||
"$mod" = "SUPER";
|
|
||||||
layout = "hy3";
|
|
||||||
|
|
||||||
gaps_in = 6;
|
"Print".action.spawn-sh = "grim - | satty -f -";
|
||||||
gaps_out = 6;
|
|
||||||
resize_on_border = true;
|
|
||||||
};
|
|
||||||
gestures = {
|
|
||||||
};
|
|
||||||
bindm = [
|
|
||||||
"$mod, mouse:272, movewindow"
|
|
||||||
"$mod, mouse:273, resizewindow"
|
|
||||||
];
|
|
||||||
bind =
|
|
||||||
[
|
|
||||||
"$mod, Return, exec, ${config.programs.foot.package}/bin/foot"
|
|
||||||
"$mod, Q, killactive,"
|
|
||||||
"$mod, F, fullscreen, 0"
|
|
||||||
"$mod SHIFT, F, fullscreen, 1"
|
|
||||||
"$mod, Space, togglefloating"
|
|
||||||
"$mod SHIFT, SPACE, exec, hyprctl switchxkblayout all next"
|
|
||||||
"$mod, D, exec, noctalia-shell ipc call launcher toggle"
|
|
||||||
|
|
||||||
", Print, exec, grim - | satty -f -"
|
"Mod+c".action.spawn = ["noctalia-shell" "ipc" "call" "launcher" "clipboard"];
|
||||||
|
|
||||||
"$mod, c, exec, noctalia-shell ipc call launcher clipboard"
|
"Mod+Minus".action.spawn = ["noctalia-shell" "ipc" "call" "volume" "decrease"];
|
||||||
|
"Mod+Equal".action.spawn = ["noctalia-shell" "ipc" "call" "volume" "increase"];
|
||||||
|
"XF86AudioLowerVolume".action.spawn = ["noctalia-shell" "ipc" "call" "volume" "decrease"];
|
||||||
|
"XF86AudioRaiseVolume".action.spawn = ["noctalia-shell" "ipc" "call" "volume" "increase"];
|
||||||
|
|
||||||
"$mod, minus, exec, noctalia-shell ipc call volume decrease"
|
"XF86AudioMute".action.spawn = ["noctalia-shell" "ipc" "call" "volume" "mute"];
|
||||||
"$mod, equal, exec, noctalia-shell ipc call volume increase"
|
"XF86AudioMicMute".action.spawn = ["noctalia-shell" "ipc" "call" "volume" "muteInput"];
|
||||||
", XF86AudioLowerVolume, exec, noctalia-shell ipc call volume decrease"
|
|
||||||
", XF86AudioRaiseVolume, exec, noctalia-shell ipc call volume increase"
|
|
||||||
|
|
||||||
", XF86AudioMute, exec, noctalia-shell ipc call volume mute"
|
"XF86MonBrightnessDown".action.spawn = ["noctalia-shell" "ipc" "call" "brightness" "decrease"];
|
||||||
", XF86AudioMicMute, exec, noctalia-shell ipc call volume muteInput"
|
"XF86MonBrightnessUp".action.spawn = ["noctalia-shell" "ipc" "call" "brightness" "increase"];
|
||||||
|
"Mod+Semicolon".action.spawn = ["noctalia-shell" "ipc" "call" "brightness" "decrease"];
|
||||||
|
"Mod+Apostrophe".action.spawn = ["noctalia-shell" "ipc" "call" "brightness" "increase"];
|
||||||
|
|
||||||
", XF86MonBrightnessDown, exec, noctalia-shell ipc call brightness decrease"
|
# Previous/next but change the shuffle/random state before action (and change back afterwards)
|
||||||
", XF86MonBrightnessUp, exec, noctalia-shell ipc call brightness increase"
|
"Mod+Shift+Bracketright".action.spawn-sh = "${pkgs.playerctl}/bin/playerctl shuffle Toggle && ${pkgs.playerctl}/bin/playerctl next && ${pkgs.playerctl}/bin/playerctl shuffle Toggle";
|
||||||
"$mod, semicolon, exec, noctalia-shell ipc call brightness decrease"
|
"Mod+Shift+bracketleft".action.spawn-sh = "${pkgs.playerctl}/bin/playerctl shuffle Toggle && ${pkgs.playerctl}/bin/playerctl previous && ${pkgs.playerctl}/bin/playerctl shuffle Toggle";
|
||||||
"$mod, apostrophe, exec, noctalia-shell ipc call brightness increase"
|
"Shift+XF86AudioNext".action.spawn-sh = "${pkgs.playerctl}/bin/playerctl shuffle Toggle && ${pkgs.playerctl}/bin/playerctl next && ${pkgs.playerctl}/bin/playerctl shuffle Toggle";
|
||||||
|
"Shift+XF86AudioPrev".action.spawn-sh = "${pkgs.playerctl}/bin/playerctl shuffle Toggle && ${pkgs.playerctl}/bin/playerctl pref && ${pkgs.playerctl}/bin/playerctl shuffle Toggle";
|
||||||
|
|
||||||
# Previous/next but change the shuffle/random state before action (and change back afterwards)
|
# Previous/next
|
||||||
"$mod&SHIFT, bracketright, exec, ${pkgs.playerctl}/bin/playerctl shuffle Toggle && ${pkgs.playerctl}/bin/playerctl next && ${pkgs.playerctl}/bin/playerctl shuffle Toggle"
|
"Mod+Bracketright".action.spawn = ["noctalia-shell" "ipc" "call" "media" "next"];
|
||||||
"$mod&SHIFT, bracketleft, exec, ${pkgs.playerctl}/bin/playerctl shuffle Toggle && ${pkgs.playerctl}/bin/playerctl previous && ${pkgs.playerctl}/bin/playerctl shuffle Toggle"
|
"Mod+Bracketleft".action.spawn = ["noctalia-shell" "ipc" "call" "media" "previous"];
|
||||||
"SHIFT, XF86AudioNext, exec, ${pkgs.playerctl}/bin/playerctl shuffle Toggle && ${pkgs.playerctl}/bin/playerctl next && ${pkgs.playerctl}/bin/playerctl shuffle Toggle"
|
"XF86AudioNext".action.spawn = ["noctalia-shell" "ipc" "call" "media" "next"];
|
||||||
|
"XF86AudioPrev".action.spawn = ["noctalia-shell" "ipc" "call" "media" "previous"];
|
||||||
|
|
||||||
# Previous/next
|
# Seek forward/back
|
||||||
"$mod, bracketright, exec, noctalia-shell ipc call media next"
|
"Mod+Control+bracketleft".action.spawn = ["noctalia-shell" "ipc" "call" "media" "seekRelative" "-5"];
|
||||||
"$mod, bracketleft, exec, noctalia-shell ipc call media previous"
|
"Mod+Control+bracketright".action.spawn = ["noctalia-shell" "ipc" "call" "media" "seekRelative" "5"];
|
||||||
", XF86AudioNext, exec, noctalia-shell ipc call media next"
|
"Control+XF86AudioPrev".action.spawn = ["noctalia-shell" "ipc" "call" "media" "seekRelative" "-5"];
|
||||||
", XF86AudioPrev, exec, noctalia-shell ipc call media previous"
|
"Control+XF86AudioNext".action.spawn = ["noctalia-shell" "ipc" "call" "media" "seekRelative" "5"];
|
||||||
|
|
||||||
# Seek forward/back
|
# Toggle play/pause
|
||||||
"$mod&Control_L, bracketleft, exec, noctalia-shell ipc call media seekRelative -5"
|
"XF86AudioPlay".action.spawn = ["noctalia-shell" "ipc" "call" "media" "playPause"];
|
||||||
"$mod&Control_L, bracketright, exec, noctalia-shell ipc call media seekRelative 5"
|
"XF86AudioPause".action.spawn = ["noctalia-shell" "ipc" "call" "media" "playPause"];
|
||||||
"Control_L, XF86AudioPrev, exec, noctalia-shell ipc call media seekRelative -5"
|
"Mod+Backslash".action.spawn = ["noctalia-shell" "ipc" "call" "media" "playPause"];
|
||||||
"Control_L, XF86AudioNext, exec, noctalia-shell ipc call media seekRelative 5"
|
|
||||||
|
|
||||||
# Toggle play/pause
|
"Control+Alt+l".action.spawn = ["noctalia-shell" "ipc" "call" "lockScreen" "lock"];
|
||||||
", XF86AudioPlay, exec, noctalia-shell ipc call media playPause"
|
|
||||||
", XF86AudioPause, exec, noctalia-shell ipc call media playPause"
|
|
||||||
"$mod, backslash, exec, noctalia-shell ipc call media playPause"
|
|
||||||
|
|
||||||
"Control_L&Alt_L, l, exec, noctalia-shell ipc call lockScreen lock"
|
"Mod+Shift+Slash".action = config.lib.niri.actions.show-hotkey-overlay;
|
||||||
|
|
||||||
"$mod, left, hy3:movefocus, l"
|
"Mod+Left".action = config.lib.niri.actions.focus-column-left;
|
||||||
"$mod, right, hy3:movefocus, r"
|
"Mod+Right".action = config.lib.niri.actions.focus-column-right;
|
||||||
"$mod, up, hy3:movefocus, u"
|
|
||||||
"$mod, down, hy3:movefocus, d"
|
|
||||||
"$mod, h, hy3:movefocus, l"
|
|
||||||
"$mod, j, hy3:movefocus, d"
|
|
||||||
"$mod, k, hy3:movefocus, u"
|
|
||||||
"$mod, l, hy3:movefocus, r"
|
|
||||||
|
|
||||||
"$mod SHIFT, left, hy3:movewindow, l"
|
# "Mod+Shift+Left".action = config.lib.niri.actions.move-column-left;
|
||||||
"$mod SHIFT, right, hy3:movewindow, r"
|
# "Mod+Shift+Right".action = config.lib.niri.actions.move-column-right;
|
||||||
"$mod SHIFT, up, hy3:movewindow, u"
|
"Mod+Shift+Left".action = config.lib.niri.actions.consume-or-expel-window-left;
|
||||||
"$mod SHIFT, down, hy3:movewindow, d"
|
"Mod+Shift+Right".action = config.lib.niri.actions.consume-or-expel-window-right;
|
||||||
"$mod SHIFT, h, hy3:movewindow, l"
|
|
||||||
"$mod SHIFT, j, hy3:movewindow, d"
|
|
||||||
"$mod SHIFT, k, hy3:movewindow, u"
|
|
||||||
"$mod SHIFT, l, hy3:movewindow, r"
|
|
||||||
|
|
||||||
"$mod CTRL, left, resizeactive, -80 0"
|
"Mod+Down".action = config.lib.niri.actions.focus-window-or-workspace-down;
|
||||||
"$mod CTRL, right, resizeactive, 80 0"
|
"Mod+Up".action = config.lib.niri.actions.focus-window-or-workspace-up;
|
||||||
"$mod CTRL, up, resizeactive, 0 -80"
|
|
||||||
"$mod CTRL, down, resizeactive, 0 80"
|
|
||||||
"$mod CTRL, h, resizeactive, -80 0"
|
|
||||||
"$mod CTRL, j, resizeactive, 0 80"
|
|
||||||
"$mod CTRL, k, resizeactive, 0 -80"
|
|
||||||
"$mod CTRL, l, resizeactive, 80 0"
|
|
||||||
|
|
||||||
"$mod, mouse_down, workspace, e-1"
|
"Mod+Shift+Down".action = config.lib.niri.actions.move-window-down-or-to-workspace-down;
|
||||||
"$mod, mouse_up, workspace, e+1"
|
"Mod+Shift+Up".action = config.lib.niri.actions.move-window-up-or-to-workspace-up;
|
||||||
]
|
|
||||||
++ (
|
# "Mod+Control+Left".action = config.lib.niri.actions.consume-or-expel-window-left;
|
||||||
|
# "Mod+Control+Right".action = config.lib.niri.actions.consume-or-expel-window-right;
|
||||||
|
|
||||||
|
"Mod+Space".action = config.lib.niri.actions.toggle-window-floating;
|
||||||
|
|
||||||
|
"Mod+F".action = config.lib.niri.actions.fullscreen-window;
|
||||||
|
|
||||||
|
"Mod+M".action = config.lib.niri.actions.maximize-column;
|
||||||
|
|
||||||
|
"Mod+O".action = config.lib.niri.actions.toggle-overview;
|
||||||
|
|
||||||
|
# "$mod, left, hy3:movefocus, l"
|
||||||
|
# "$mod, right, hy3:movefocus, r"
|
||||||
|
# "$mod, up, hy3:movefocus, u"
|
||||||
|
# "$mod, down, hy3:movefocus, d"
|
||||||
|
# "$mod, h, hy3:movefocus, l"
|
||||||
|
# "$mod, j, hy3:movefocus, d"
|
||||||
|
# "$mod, k, hy3:movefocus, u"
|
||||||
|
# "$mod, l, hy3:movefocus, r"
|
||||||
|
|
||||||
|
# "$mod SHIFT, left, hy3:movewindow, l"
|
||||||
|
# "$mod SHIFT, right, hy3:movewindow, r"
|
||||||
|
# "$mod SHIFT, up, hy3:movewindow, u"
|
||||||
|
# "$mod SHIFT, down, hy3:movewindow, d"
|
||||||
|
# "$mod SHIFT, h, hy3:movewindow, l"
|
||||||
|
# "$mod SHIFT, j, hy3:movewindow, d"
|
||||||
|
# "$mod SHIFT, k, hy3:movewindow, u"
|
||||||
|
# "$mod SHIFT, l, hy3:movewindow, r"
|
||||||
|
|
||||||
|
# "$mod CTRL, left, resizeactive, -80 0"
|
||||||
|
# "$mod CTRL, right, resizeactive, 80 0"
|
||||||
|
# "$mod CTRL, up, resizeactive, 0 -80"
|
||||||
|
# "$mod CTRL, down, resizeactive, 0 80"
|
||||||
|
# "$mod CTRL, h, resizeactive, -80 0"
|
||||||
|
# "$mod CTRL, j, resizeactive, 0 80"
|
||||||
|
# "$mod CTRL, k, resizeactive, 0 -80"
|
||||||
|
# "$mod CTRL, l, resizeactive, 80 0"
|
||||||
|
|
||||||
|
# "$mod, mouse_down, workspace, e-1"
|
||||||
|
# "$mod, mouse_up, workspace, e+1"
|
||||||
|
}
|
||||||
|
// (
|
||||||
# workspaces
|
# workspaces
|
||||||
# binds $mod + [shift +] {1..9} to [move to] workspace {1..9}
|
# binds $mod + [shift +] {1..9} to [move to] workspace {1..9}
|
||||||
builtins.concatLists (builtins.genList (
|
lib.listToAttrs (builtins.concatLists (builtins.genList (
|
||||||
i: let
|
i: let
|
||||||
ws = i + 1;
|
ws = i + 1;
|
||||||
in [
|
in [
|
||||||
"$mod, code:1${toString i}, workspace, ${toString ws}"
|
{ name = "Mod+${toString i}"; value = { action.focus-workspace = i; }; }
|
||||||
"$mod SHIFT, code:1${toString i}, movetoworkspace, ${toString ws}"
|
{ name = "Mod+Shift+${toString i}"; value = { action.move-window-to-workspace = i; }; }
|
||||||
|
# "$mod, code:1${toString i}, workspace, ${toString ws}"
|
||||||
|
# "$mod SHIFT, code:1${toString i}, movetoworkspace, ${toString ws}"
|
||||||
]
|
]
|
||||||
)
|
)
|
||||||
9)
|
9)
|
||||||
);
|
));
|
||||||
};
|
};
|
||||||
};
|
};
|
||||||
|
|
||||||
|
|
@ -365,6 +370,8 @@ in {
|
||||||
fonts.fontconfig.enable = lib.mkDefault true;
|
fonts.fontconfig.enable = lib.mkDefault true;
|
||||||
|
|
||||||
home.packages = with pkgs; [
|
home.packages = with pkgs; [
|
||||||
|
nautilus # gnome portal file chooser
|
||||||
|
|
||||||
wl-clipboard
|
wl-clipboard
|
||||||
wtype
|
wtype
|
||||||
ydotool
|
ydotool
|
||||||
|
|
|
||||||
|
|
@ -1,4 +1,4 @@
|
||||||
{
|
inputs: {
|
||||||
config,
|
config,
|
||||||
lib,
|
lib,
|
||||||
pkgs,
|
pkgs,
|
||||||
|
|
@ -7,21 +7,30 @@
|
||||||
with lib; let
|
with lib; let
|
||||||
cfg = config.ezpc;
|
cfg = config.ezpc;
|
||||||
in {
|
in {
|
||||||
|
imports = [inputs.niri.nixosModules.niri];
|
||||||
options.ezpc.enable = mkEnableOption "Enable ezpc system stuff";
|
options.ezpc.enable = mkEnableOption "Enable ezpc system stuff";
|
||||||
|
|
||||||
config = mkIf cfg.enable {
|
config = mkIf cfg.enable {
|
||||||
programs.hyprland.enable = true;
|
programs.niri = {
|
||||||
|
|
||||||
xdg.portal = {
|
|
||||||
enable = true;
|
enable = true;
|
||||||
xdgOpenUsePortal = true;
|
package = pkgs.niri-unstable;
|
||||||
extraPortals = [ pkgs.xdg-desktop-portal-hyprland pkgs.xdg-desktop-portal-gtk ];
|
|
||||||
config = {
|
|
||||||
common.default = ["gtk"];
|
|
||||||
hyprland.default = ["gtk" "hyprland"];
|
|
||||||
};
|
|
||||||
};
|
};
|
||||||
|
|
||||||
|
niri-flake.cache.enable = false;
|
||||||
|
|
||||||
|
services.gnome.gnome-keyring.enable = lib.mkForce false;
|
||||||
|
|
||||||
|
# xdg.portal = {
|
||||||
|
# config.niri = {
|
||||||
|
# default = [ "gnome" "gtk" ];
|
||||||
|
# # "org.freedesktop.impl.portal.Access" = "gtk";
|
||||||
|
# # "org.freedesktop.impl.portal.Notification" = "gtk";
|
||||||
|
# # "org.freedesktop.impl.portal.Secret" = "gnome-keyring";
|
||||||
|
# # "org.freedesktop.impl.portal.FileChooser" = "gtk";
|
||||||
|
# };
|
||||||
|
# extraPortals = [ pkgs.xdg-desktop-portal-gtk ];
|
||||||
|
# };
|
||||||
|
|
||||||
environment.sessionVariables = {
|
environment.sessionVariables = {
|
||||||
QT_QPA_PLATFORM = "wayland;xcb";
|
QT_QPA_PLATFORM = "wayland;xcb";
|
||||||
MOZ_ENABLE_WAYLAND = "1";
|
MOZ_ENABLE_WAYLAND = "1";
|
||||||
|
|
@ -39,7 +48,7 @@ in {
|
||||||
enable = lib.mkDefault true;
|
enable = lib.mkDefault true;
|
||||||
settings = {
|
settings = {
|
||||||
default_session = {
|
default_session = {
|
||||||
command = lib.mkDefault "${pkgs.tuigreet}/bin/tuigreet --time --user-menu --user-menu-max-uid 30000 --cmd hyprland";
|
command = lib.mkDefault "${pkgs.tuigreet}/bin/tuigreet --time --user-menu --user-menu-max-uid 30000 --cmd niri-session";
|
||||||
};
|
};
|
||||||
};
|
};
|
||||||
};
|
};
|
||||||
|
|
|
||||||
|
|
@ -55,7 +55,7 @@ in {
|
||||||
cups-dymo
|
cups-dymo
|
||||||
|
|
||||||
# cups-kyocera # mirror is down
|
# cups-kyocera # mirror is down
|
||||||
cups-kyocera-ecosys-m552x-p502x
|
# cups-kyocera-ecosys-m552x-p502x # mirror is down
|
||||||
# cups-kyodialog3 # Mirror is down
|
# cups-kyodialog3 # Mirror is down
|
||||||
|
|
||||||
cups-toshiba-estudio
|
cups-toshiba-estudio
|
||||||
|
|
@ -95,7 +95,7 @@ in {
|
||||||
dsseries.enable = true;
|
dsseries.enable = true;
|
||||||
drivers.scanSnap.enable = true;
|
drivers.scanSnap.enable = true;
|
||||||
extraBackends = with pkgs; [
|
extraBackends = with pkgs; [
|
||||||
epkowa
|
# epkowa # borked
|
||||||
hplipWithPlugin
|
hplipWithPlugin
|
||||||
];
|
];
|
||||||
};
|
};
|
||||||
|
|
|
||||||
|
|
@ -159,7 +159,6 @@ in {
|
||||||
"libvirtd" # run VMs through libvirt
|
"libvirtd" # run VMs through libvirt
|
||||||
"kvm" # run KVM VMs
|
"kvm" # run KVM VMs
|
||||||
"lxd" # use LXD containers
|
"lxd" # use LXD containers
|
||||||
"sway" # run sway.. I guess?
|
|
||||||
"wheel" # sudo
|
"wheel" # sudo
|
||||||
"networkmanager" # use networkmanager?
|
"networkmanager" # use networkmanager?
|
||||||
"docker" # docker permission (basically the same as `wheel`)
|
"docker" # docker permission (basically the same as `wheel`)
|
||||||
|
|
|
||||||
Loading…
Add table
Add a link
Reference in a new issue