diff options
| author | nsfisis <nsfisis@gmail.com> | 2023-09-02 09:43:06 +0900 |
|---|---|---|
| committer | nsfisis <nsfisis@gmail.com> | 2023-09-02 09:43:06 +0900 |
| commit | 1311917d3118c3d7dbb6815280f8fe0febbbdc8d (patch) | |
| tree | af576b92959f77332239a1ddc22fa9e943253d89 /home-manager/home.nix | |
| parent | f8d23391c64acfd9db15816aa2522ce0ef4ad1a5 (diff) | |
| download | dotfiles-1311917d3118c3d7dbb6815280f8fe0febbbdc8d.tar.gz dotfiles-1311917d3118c3d7dbb6815280f8fe0febbbdc8d.tar.zst dotfiles-1311917d3118c3d7dbb6815280f8fe0febbbdc8d.zip | |
home-manager: refactor a bit
Diffstat (limited to 'home-manager/home.nix')
| -rw-r--r-- | home-manager/home.nix | 21 |
1 files changed, 9 insertions, 12 deletions
diff --git a/home-manager/home.nix b/home-manager/home.nix index a0eb5cd..3a61227 100644 --- a/home-manager/home.nix +++ b/home-manager/home.nix @@ -1,7 +1,7 @@ -{ pkgs, ... }: - +{ pkgs, specialArgs, ... }: let - isWayland = builtins.getEnv "XDG_SESSION_TYPE" == "wayland"; + clipboardCopyCommand = specialArgs.env.gui.clipboard.copyCommand; + requiresWlClipboard = clipboardCopyCommand == "wl-copy"; in { home.username = "ken"; @@ -39,7 +39,7 @@ in # pkgs.zsh pkgs.nodePackages.typescript-language-server - ] ++ pkgs.lib.optional isWayland pkgs.wl-clipboard; + ] ++ pkgs.lib.optional requiresWlClipboard pkgs.wl-clipboard; home.file = { # "hoge".source = dotfiles/piyo; @@ -68,19 +68,16 @@ in prefix = "C-t"; terminal = "tmux-256color"; - extraConfig = ( + extraConfig = let commonConfig = builtins.readFile ./config/tmux/tmux.conf; - extraConfig = if isWayland then + extraConfig = if clipboardCopyCommand != null then '' - bind-key -T copy-mode-vi y send-keys -X copy-pipe-and-cancel "wl-copy" + bind-key -T copy-mode-vi y send-keys -X copy-pipe-and-cancel "${clipboardCopyCommand}" '' else - '' - bind-key -T copy-mode-vi y send-keys -X copy-pipe-and-cancel "pbcopy" - ''; + ""; in - commonConfig + extraConfig - ); + commonConfig + extraConfig; }; } |
