diff options
Diffstat (limited to 'home/profiles/sway.nix')
-rw-r--r-- | home/profiles/sway.nix | 175 |
1 files changed, 0 insertions, 175 deletions
diff --git a/home/profiles/sway.nix b/home/profiles/sway.nix deleted file mode 100644 index e86ff48..0000000 --- a/home/profiles/sway.nix +++ /dev/null @@ -1,175 +0,0 @@ -{ config, lib, pkgs, ... }: -let - modifier = "Mod4"; # `Super` key - fonts = { - names = [ "Roboto" "sans-serif" ]; - style = "Bold"; - size = 10.0; - }; - -in -{ - imports = [ - ./gtk.nix - ./mako.nix - ./waybar.nix - ./wofi.nix - ]; - - home.packages = with pkgs; [ - wlogout - brightnessctl - pulseaudio - grim - slurp - polkit_gnome - xsettingsd - swaylock - swayidle - wl-clipboard - ]; - - home.sessionVariables = { - MOZ_ENABLE_WAYLAND = "1"; - XDG_CURRENT_DESKTOP = "sway"; - XDG_SESSION_TYPE = "wayland"; - }; - - programs = { - zsh.loginExtra = '' - if [ $(ps ax | grep "[s]sh-agent" | wc -l) -eq 0 ] ; then - eval $(ssh-agent -s) > /dev/null - fi - if [ "$(tty)" = "/dev/tty1" ]; then - exec sway &> /dev/null - fi - ''; - - zsh.profileExtra = '' - if [ $(ps ax | grep "[s]sh-agent" | wc -l) -eq 0 ] ; then - eval $(ssh-agent -s) > /dev/null - fi - if [ "$(tty)" = "/dev/tty1" ]; then - exec sway &> /dev/null - fi - ''; - }; - - wayland.windowManager.sway = { - enable = true; - # in order to import some variables (e.g. PATH) so that all the - # units that will be started have all the required environment - # variables - extraSessionCommands = "systemctl --user import-environment"; - # this will start sway-session.target and run - # dbus-update-activation-environment - systemdIntegration = true; - config = { - inherit fonts modifier; - # FIXME: this should be a variable - terminal = "alacritty"; - menu = ''${pkgs.wofi}/bin/wofi -S drun -p "app:" -L 10''; - bars = [ ]; - keybindings = lib.mkOptionDefault { - # control the volume - "XF86AudioRaiseVolume" = - "exec ${pkgs.pulseaudio}/bin/pactl set-sink-volume @DEFAULT_SINK@ +5%"; - "XF86AudioLowerVolume" = - "exec ${pkgs.pulseaudio}/bin/pactl set-sink-volume @DEFAULT_SINK@ -5%"; - "XF86AudioMute" = - "exec ${pkgs.pulseaudio}/bin/pactl set-sink-mute @DEFAULT_SINK@ toggle"; - "XF86AudioMicMute" = - "exec ${pkgs.pulseaudio}/bin/pactl set-source-mute @DEFAULT_SOURCE@ toggle"; - - # control brightness - "XF86MonBrightnessDown" = - "exec ${pkgs.brightnessctl}/bin/brightnessctl set 5%-"; - "XF86MonBrightnessUp" = - "exec ${pkgs.brightnessctl}/bin/brightnessctl set +5%"; - - # logout - "${modifier}+Escape" = "exec ${pkgs.wlogout}/bin/wlogout"; - - # screenshot - "${modifier}+s" = - "exec ${pkgs.grim}/bin/grim $(xdg-user-dir DOCUMENTS)/screenshots/$(date +'%Y-%m-%d-%H%M%S_screenshot.png')"; - "${modifier}+Shift+s" = - "exec ${pkgs.slurp}/bin/slurp | ${pkgs.grim}/bin/grim -g - $(xdg-user-dir DOCUMENTS)/screenshots/$(date +'%Y-%m-%d-%H%M%S_screenshot.png')"; - - # File Manager - "${modifier}+p" = "exec ${pkgs.pcmanfm}/bin/pcmanfm"; - }; - - # use `swaymsg -t get_tree' to get the title/name/ID of the applications - window = { - commands = [ - { - criteria.class = ".blueman-manager-wrapped"; - command = "floating enable"; - } - { - criteria.class = "Pavucontrol"; - command = "floating enable"; - } - ]; - }; - - input = { - "*" = { - "xkb_layout" = "us,fr"; - # map capslock to ctrl, and switch layout using shift+caps - "xkb_options" = "ctrl:nocaps,grp:shift_caps_toggle"; - }; - }; - - assigns = { - "1" = [{ app_id = "emacs"; }]; - "2" = [{ app_id = "Alacritty"; }]; - "3" = [{ app_id = "firefox"; }]; - "4" = [{ app_id = "org.gnome.Fractal"; }]; - }; - - output = { - "*" = { - scale = "1.5"; - bg = "#2E3440 solid_color"; - }; - # This is for aptos - "eDP-1" = { scale = "1.3"; }; - }; - }; - }; - - xdg.configFile."swaylock/config".source = pkgs.writeText "config" '' - daemonize - hide-keyboard-layout - indicator-caps-lock - color=2E3440 - font=Roboto - ''; - - services.swayidle = { - enable = true; - events = [ - { - event = "before-sleep"; - command = "${pkgs.swaylock}/bin/swaylock -fF"; - } - { - event = "lock"; - command = "${pkgs.swaylock}/bin/swaylock -fF"; - } - ]; - timeouts = [ - { - timeout = 300; - command = "${pkgs.sway}/bin/swaymsg \"output * dpms off\""; - resumeCommand = "${pkgs.sway}/bin/swaymsg \"output * dpms on\""; - } - { - timeout = 310; - command = "${pkgs.systemd}/bin/loginctl lock-session"; - } - ]; - }; -} |