{ 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" ]; }; }) ]