System/home-manager/linux/programs/desktop/general.nix

54 lines
1.6 KiB
Nix

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