1
1
Fork 0

Compare commits

..

No commits in common. "ef1f0b0513ed7cc2fa56636c59cb512f2eb6807e" and "342a3b0012740001835dff5da5fe01bcb90378ad" have entirely different histories.

9 changed files with 5 additions and 96 deletions

View file

@ -135,7 +135,6 @@ in {
(key "O" "Mod" (spawn [loupe "/tmp/wallpaper.png"])) (key "O" "Mod" (spawn [loupe "/tmp/wallpaper.png"]))
(key "P" "Ctrl+Alt" (spawn [pkill "1password"])) (key "P" "Ctrl+Alt" (spawn [pkill "1password"]))
(key "P" "Mod" (spawn _1password)) (key "P" "Mod" (spawn _1password))
(key "P" "Mod+Shift" (spawn [_1password "--quick-access"]))
(key "Q" "Mod" close-window) (key "Q" "Mod" close-window)
(key "R" "Mod" focus-window-or-workspace-down) (key "R" "Mod" focus-window-or-workspace-down)
(key "R" "Mod+Shift" move-window-down-or-to-workspace-down) (key "R" "Mod+Shift" move-window-down-or-to-workspace-down)

View file

@ -35,13 +35,8 @@ in {
}; };
}; };
services = {
# Enable rootless Xwayland # Enable rootless Xwayland
xwayland-satellite.enable = cfg.xwayland; services.xwayland-satellite.enable = cfg.xwayland;
# Enable X11/Wayland clipboard sync
clipsync.enable = true;
};
}; };
# https://github.com/YaLTeR/niri # https://github.com/YaLTeR/niri

View file

@ -53,6 +53,7 @@ in {
home = hm.home.homeDirectory; home = hm.home.homeDirectory;
in in
[ [
{command = [_1password "--silent"];} # Launch password manager in background
{command = [audio "--init"];} # Enforce audio profile state {command = [audio "--init"];} # Enforce audio profile state
{command = [rm "${home}/.cache/walker/clipboard.gob"];} # Clear clipboard history {command = [rm "${home}/.cache/walker/clipboard.gob"];} # Clear clipboard history
{command = [sway-audio-idle-inhibit];} # Inhibit while audio is playing {command = [sway-audio-idle-inhibit];} # Inhibit while audio is playing

View file

@ -203,21 +203,6 @@ in {
} }
### Overrides ### Overrides
# TODO: Remove when switching 1Password to Wayland
(let
height = builtins.floor (config.custom.height / config.custom.scale * 0.4); # 40%
in {
matches = [
{
app-id = "^1Password";
title = "^Quick Access 1Password$";
}
];
max-height = height;
min-height = height;
open-floating = true;
})
]; ];
}; };
} }

View file

@ -6,14 +6,11 @@
}: }:
with lib; let with lib; let
cfg = config.custom.programs._1password; cfg = config.custom.programs._1password;
_1password = getExe config.programs._1password-gui.package;
in { in {
options.custom.programs._1password = { options.custom.programs._1password = {
enable = mkOption {default = false;}; enable = mkOption {default = false;};
agent = mkOption {default = true;}; agent = mkOption {default = true;};
browser = mkOption {default = null;}; browser = mkOption {default = null;};
service = mkOption {default = true;};
}; };
config = mkIf cfg.enable { config = mkIf cfg.enable {
@ -41,26 +38,6 @@ in {
}; };
}; };
systemd.user.services."1password" = mkIf cfg.service {
enable = true;
wantedBy = ["graphical-session.target"];
unitConfig = {
Description = "Launch 1Password in the background";
After =
["graphical-session.target"]
++ optionals config.custom.services.xwayland-satellite.enable ["xwayland-satellite.service"];
};
serviceConfig = {
Type = "simple";
# FIXME: 1password clipboard does not work in wayland
ExecStart = "${_1password} --silent --ozone-platform=x11";
};
};
home-manager.users.${config.custom.username} = { home-manager.users.${config.custom.username} = {
programs.ssh.extraConfig = mkIf cfg.agent '' programs.ssh.extraConfig = mkIf cfg.agent ''
Host * Host *

View file

@ -1,43 +0,0 @@
{
config,
lib,
pkgs,
...
}:
with lib; let
cfg = config.custom.services.clipsync;
clipnotify = getExe pkgs.clipnotify;
wl-copy = getExe' pkgs.wl-clipboard "wl-copy";
xclip = getExe pkgs.xclip;
in {
options.custom.services.clipsync = {
enable = mkOption {default = false;};
};
config = mkIf cfg.enable {
# https://github.com/cdown/clipnotify
systemd.user.services.clipsync = {
enable = true;
wantedBy = ["graphical-session.target"];
unitConfig = {
Description = "Sync clipboard between Wayland and X11";
After =
["graphical-session.target"]
++ optionals config.custom.services.xwayland-satellite.enable ["xwayland-satellite.service"];
};
serviceConfig = {
Type = "simple";
ExecStart = pkgs.writeShellScript "clipsync" ''
while ${clipnotify}; do
${xclip} -selection clipboard -out | ${wl-copy}
done
'';
};
};
};
}

View file

@ -1,7 +1,6 @@
{ {
config, config,
lib, lib,
pkgs,
... ...
}: }:
with lib; let with lib; let
@ -25,7 +24,7 @@ in {
control.esc = "toggle(qwerty)"; # Control+Esc toggles qwerty control.esc = "toggle(qwerty)"; # Control+Esc toggles qwerty
shift.shift = "capslock"; # Both Shifts toggle Capslock shift.shift = "capslock"; # Both Shifts toggle Capslock
"meta+control+shift" = { meta = {
# Mouse repeat macro # Mouse repeat macro
"," = "macro2(300, 100, leftmouse)"; "," = "macro2(300, 100, leftmouse)";
"." = "macro2(300, 100, rightmouse)"; "." = "macro2(300, 100, rightmouse)";
@ -133,7 +132,5 @@ in {
}; };
}; };
}; };
environment.systemPackages = [pkgs.keyd];
}; };
} }

View file

@ -40,7 +40,7 @@ in {
# https://github.com/ErikReider/SwayNotificationCenter/blob/main/src/configSchema.json # https://github.com/ErikReider/SwayNotificationCenter/blob/main/src/configSchema.json
settings = { settings = {
control-center-height = builtins.floor (config.custom.height * 0.5); # 50% control-center-height = builtins.floor (config.custom.height * 0.75); # 75%
control-center-positionY = "bottom"; control-center-positionY = "bottom";
control-center-width = 750; control-center-width = 750;
fit-to-screen = false; fit-to-screen = false;

View file

@ -38,10 +38,8 @@ in {
testdisk # Data recovery tool testdisk # Data recovery tool
trashy # CLI trash trashy # CLI trash
waypipe # Wayland proxy waypipe # Wayland proxy
wev # Wayland keysym tester
wl-clipboard # Wayland clipboard wl-clipboard # Wayland clipboard
xclip # X11 clipboard xclip # X11 clipboard
xorg.xev # X11 keysym tester
### Dependencies ### Dependencies
man-pages man-pages