diff --git a/home-manager/linux/programs/desktop/fuzzel.nix b/home-manager/linux/programs/desktop/fuzzel.nix index 47c22f8..104c955 100644 --- a/home-manager/linux/programs/desktop/fuzzel.nix +++ b/home-manager/linux/programs/desktop/fuzzel.nix @@ -7,12 +7,12 @@ let in lib.mkMerge [ (lib.mkIf hyprland { wayland.windowManager.hyprland.extraConfig = '' - bind = $mainMod, R, exec, ${fuzzel-command} --prompt='❯ ' + bind = SUPER, R, exec, ${fuzzel-command} --prompt='❯ ' # Clipboard history management exec-once=wl-paste --watch cliphist store - bind = $mainMod, X, exec, cliphist list | ${fuzzel-command} --prompt=' ❯ ' --dmenu | cliphist decode | wl-copy + bind = SUPER, X, exec, cliphist list | ${fuzzel-command} --prompt=' ❯ ' --dmenu | cliphist decode | wl-copy # Shortcut dispatcher - bind = $mainMod, W, exec, ${shortcuts}/bin/shortcuts ~/.config/shortcuts/shortcuts.toml + bind = SUPER, W, exec, ${shortcuts}/bin/shortcuts ~/.config/shortcuts/shortcuts.toml ''; }) # General configuration diff --git a/home-manager/linux/programs/desktop/general.nix b/home-manager/linux/programs/desktop/general.nix new file mode 100644 index 0000000..83ed88b --- /dev/null +++ b/home-manager/linux/programs/desktop/general.nix @@ -0,0 +1,53 @@ +{ config, lib, pkgs, inputs, ... }: +let + fuzzel-command = config.nathan.config.desktop.fuzzel-command; + hyprland = config.nathan.programs.hyprland.enable; + targets = config.nathan.config.desktop.targets; + shortcuts = inputs.self.packages.${pkgs.system}.shortcuts; +in lib.mkMerge [ + # General configuration + (lib.mkIf hyprland { + home.packages = with pkgs; [ + # General + killall + # Display management + wdisplays + # glib for sound stuff + glib + # For private browsing + tor-browser-bundle-bin + # For non-emacs pdf reading + evince + # Productivity + libreoffice-fresh + font-awesome + # for image viewing + inputs.self.packages.${pkgs.system}.swayimg + # For fancy x11 scaling + sommelier + ]; + + # Bluetooth applet + services.blueman-applet.enable = true; + ######################### + ## EasyEffects + ######################### + services.easyeffects.enable = true; + ######################### + ## Default applications + ######################### + xdg.mimeApps.defaultApplications = { + # Make all supported images open in swayimg + "image/jpeg" = [ "swayimg.desktop" ]; + "image/png" = [ "swayimg.desktop" ]; + "image/gif" = [ "swayimg.desktop" ]; + "image/svg+xml" = [ "swayimg.desktop" ]; + "image/webp" = [ "swayimg.desktop" ]; + "image/avif" = [ "swayimg.desktop" ]; + "image/tiff" = [ "swayimg.desktop" ]; + "image/bmp" = [ "swayimg.desktop" ]; + "application/pdf" = [ "org.gnome.Evince.desktop" ]; + "text/html" = [ "firefox.desktop" ]; + }; + }) +] diff --git a/home-manager/linux/programs/desktop/notifs.nix b/home-manager/linux/programs/desktop/notifs.nix index 5dfe7a9..7f598f8 100644 --- a/home-manager/linux/programs/desktop/notifs.nix +++ b/home-manager/linux/programs/desktop/notifs.nix @@ -11,7 +11,7 @@ in lib.mkMerge [ (lib.mkIf hyprland { wayland.windowManager.hyprland.extraConfig = '' # Notif bind - bind = $mainMod, T, exec, swaync-client -t -sw + bind = SUPER, T, exec, swaync-client -t -sw ''; }) # General configuration diff --git a/home-manager/linux/programs/hyprland.nix b/home-manager/linux/programs/hyprland.nix index 79567de..d3b68be 100644 --- a/home-manager/linux/programs/hyprland.nix +++ b/home-manager/linux/programs/hyprland.nix @@ -6,33 +6,17 @@ in with lib; { ./desktop/locking.nix ./desktop/fuzzel.nix ./desktop/notifs.nix + ./desktop/general.nix ]; config = mkIf nathan.programs.hyprland.enable ({ home.packages = with pkgs; [ - # General - killall - # Display management - wdisplays - # glib for sound stuff - glib # Screenshots (inputs.hyprland-contrib.packages.${pkgs.system}.grimblast.override { hyprland = config.wayland.windowManager.hyprland.package; }) - # for image viewing - inputs.self.packages.${pkgs.system}.swayimg - # For private browsing - tor-browser-bundle-bin - # For non-emacs pdf reading - evince - # Productivity - libreoffice-fresh ## Hyprland addons - font-awesome inputs.nixpkgs-unstable.legacyPackages.${pkgs.system}.hyprpaper inputs.self.packages.${pkgs.system}.pyprland - # For fancy x11 scaling - sommelier # Auto workspace renaming inputs.self.packages.${pkgs.system}.hyprland-autoname-workspaces ]; @@ -289,28 +273,6 @@ in with lib; { ''; onChange = "systemctl --user restart pypr"; }; - # Bluetooth applet - services.blueman-applet.enable = true; - ######################### - ## EasyEffects - ######################### - services.easyeffects.enable = true; - ######################### - ## Default applications - ######################### - xdg.mimeApps.defaultApplications = { - # Make all supported images open in swayimg - "image/jpeg" = [ "swayimg.desktop" ]; - "image/png" = [ "swayimg.desktop" ]; - "image/gif" = [ "swayimg.desktop" ]; - "image/svg+xml" = [ "swayimg.desktop" ]; - "image/webp" = [ "swayimg.desktop" ]; - "image/avif" = [ "swayimg.desktop" ]; - "image/tiff" = [ "swayimg.desktop" ]; - "image/bmp" = [ "swayimg.desktop" ]; - "application/pdf" = [ "org.gnome.Evince.desktop" ]; - "text/html" = [ "firefox.desktop" ]; - }; }); }