summaryrefslogtreecommitdiff
path: root/home/desktops/default.nix
diff options
context:
space:
mode:
Diffstat (limited to 'home/desktops/default.nix')
-rw-r--r--home/desktops/default.nix81
1 files changed, 81 insertions, 0 deletions
diff --git a/home/desktops/default.nix b/home/desktops/default.nix
new file mode 100644
index 0000000..9c17bb0
--- /dev/null
+++ b/home/desktops/default.nix
@@ -0,0 +1,81 @@
+{
+ lib,
+ config,
+ pkgs,
+ inputs,
+ ...
+}: let
+ inherit (lib) mkEnableOption mkIf optionals;
+ cfg = config.desktops;
+in {
+ imports = [
+ ./hyprland
+ ./sway
+ ];
+
+ config = mkIf cfg.enable {
+ # desktop specific programs
+ home.packages =
+ (with pkgs; [
+ # gtk
+ adwaita-icon-theme
+ # codecs
+ libaacs
+ libavif
+ libbluray
+ libjxl
+ # wayland
+ cage
+ grimblast
+ wl-clipboard
+ wl-clip-persist
+ wl-mirror
+ # xdg
+ libnotify
+ # fonts
+ corefonts
+ dejavu_fonts
+ fira-code
+ fira-code-symbols
+ jetbrains-mono
+ material-icons
+ nerd-fonts.fira-code
+ noto-fonts
+ noto-fonts-cjk-sans
+ noto-fonts-emoji
+ twemoji-color-font
+ vistafonts
+ ])
+ ++ (with inputs.apple-fonts.packages.${pkgs.system}; [
+ # apple fonts
+ sf-pro
+ sf-mono
+ sf-compact
+ ]);
+
+ fonts.fontconfig = {
+ enable = true;
+ defaultFonts = {
+ serif = [
+ "Twemoji"
+ "DejaVu Serif"
+ ];
+ sansSerif = [
+ "Twemoji"
+ "DejaVu Sans"
+ ];
+ monospace = [
+ "Fira Code"
+ "FiraCode Nerd Font Mono"
+ "Font Awesome 6 Pro Regular"
+ "Twemoji"
+ "DejaVu Sans Mono"
+ ];
+ emoji = [
+ "Twemoji"
+ "Noto Color Emoji"
+ ];
+ };
+ };
+ };
+}